本文是 zerobus 系统表的参考,该表用于跟踪您工作区中的 Zerobus 数据导入活动。 这些表包括同一区域中所有工作区中的帐户记录。 若要查看另一个区域中的记录,必须查看该区域中部署的工作区中的表。
要求
- 若要访问这些系统表,用户必须:
- 既是元存储管理员,也是工作区管理员,或者
- 对系统架构具有
USE和SELECT权限。 请参阅 授予对系统表的访问权限。
可用的零总线导入表
所有与 Zerobus Ingest 相关的系统表都位于 system.lakeflow 架构中。 这包括下表:
| Table | Description | 支持流式处理 | 免费保留期 | 包括全局或区域数据 |
|---|---|---|---|---|
| Zerobus_stream (Beta) | 跟踪通过 Zerobus Ingest 创建的所有流 | 是的 | 365 天 | 区域 |
| Zerobus_ingest (Beta) | 使用 Zerobus Ingest 跟踪引入到 Delta 表中的所有数据 | 是的 | 365 天 | 区域 |
零总线流表架构参考
该 zerobus_stream 表存储所有与 Zerobus Ingest 使用过程中产生的流事件相关的数据。 这包括在创建流时、在流生存期内发生错误以及关闭流时发生的事件。
表路径: system.lakeflow.zerobus_stream
| 列名称 | 数据类型 | Description | Example |
|---|---|---|---|
account_id |
字符串 | 负责流的帐户的 ID | 23e22ba4-87b9-4cc2-9770-d10b894bxx |
workspace_id |
字符串 | 与流相关的工作区ID | 1234567890123456 |
stream_id |
字符串 | 流的 ID | ccr4bf53-127a-4487-camr-cab42c2db9b2 |
event_time |
时间戳 | 事件发生时的时间戳 | 2025-12-19T18:20:26.994+00:00 |
producer_id |
字符串 | 负责流创建的生成者的 ID | 目前不支持此列。 |
opened_time |
时间戳 | 打开流的时间戳 | 2025-12-19T18:20:27.209+00:00 |
closed_time |
时间戳 | 关闭流的时间戳 | 2025-12-19T18:20:26.994+00:00 |
table_id |
字符串 | 正在导入数据的表的 ID | 0c5ca387-5v3c-4308-90ad-b91dedb22e32 |
table_name |
字符串 | 要导入的表的完全限定名称 | example_table |
protocol |
字符串 | 用于引入数据的协议。 可能的值为 GRPC 和 HTTP。 |
GRPC |
data_format |
字符串 | 数据流中使用的格式。 可能的值为 PROTOBUF 和 JSON。 |
PROTOBUF |
errors |
数组 | 在流的生命周期内发生的错误数组 | 请参阅 错误参考 |
流表的示例查询
以下查询返回指定表当前打开的流数:
SELECT COUNT(stream.stream_id)
FROM system.lakeflow.zerobus_stream AS stream
WHERE stream.table_id=:table_id AND stream.closed_time IS NULL AND stream.opened_time > CURRENT_TIMESTAMP - INTERVAL '15 minutes'
以下查询返回所有产生错误的流的 ID:
SELECT DISTINCT(stream.stream_id)
FROM system.lakeflow.zerobus_stream AS stream
WHERE size(stream.errors) > 0
Zerobus数据导入表模式参考
该 zerobus_ingest 表存储与使用 Zerobus Ingest 引入的记录相关的所有数据。 此数据没有达到记录级别的精细粒度。 数据通过批量写入 Delta 表来聚合,并使用commit_version作为标识。
表路径: system.lakeflow.zerobus_ingest
| 列名称 | 数据类型 | Description | Example |
|---|---|---|---|
account_id |
字符串 | 拥有给定工作区的帐户的 ID | 23e22ba4-87b9-4cc2-9770-d10b894bxx |
workspace_id |
字符串 | 在其中创建流的工作区的 ID | 1234567890123456 |
stream_id |
字符串 | 执行数据引入的流的 ID | ccr4bf53-127a-4487-camr-cab42c2db9b2 |
commit_version |
bigint | 提交到 Delta 的唯一版本号 | 15104 |
table_id |
字符串 | 要写入的表的 ID | 0c5ca387-5v3c-4308-90ad-b91dedb22e32 |
table_name |
字符串 | 完全限定表名(采用人工可读格式) | example_table |
commit_time |
时间戳 | 提交时间戳 | 2025-12-19T18:20:27.209+00:00 |
committed_bytes |
bigint | 引入的数据的大小(以字节为单位) | 3532498 |
committed_records |
bigint | 已提交的记录数 | 3445 |
tags |
数组 | Zerobus Ingest 提供的自定义标签,可用于跟踪使用来源和其他元数据 | ["DIRECT_WRITE"] |
errors |
数组 | 引入期间发生的错误的数组 | 请参阅 错误参考 |
引入表的示例查询
以下查询获取指定时间范围内每个表的平均插入速率:
SELECT ingest.table_id AS table_id, SUM(ingest.committed_bytes) / (SECONDS(:end_timestamp - :start_timestamp)) AS average_insertion_rate
FROM system.lakeflow.zerobus_ingest AS ingest
WHERE ingest.commit_time >= :start_timestamp AND ingest.commit_time <= :end_timestamp
GROUP BY ingest.table_id
以下查询获取在指定时间范围内引入到表中的数据和记录总数:
SELECT SUM(ingest.committed_bytes) as 'Total data', SUM(ingest.committed_records) as 'Total records'
FROM system.lakeflow.zerobus_ingest AS ingest
WHERE ingest.commit_time >= :start_timestamp AND ingest.commit_time <= :end_timestamp AND ingest.table_name = :table_name
错误参考
流表和引入表都包含一列 errors ,其中包括在流或引入期间发生的错误数组,每个元素都表示单独的错误。 这些数组元素记录为具有以下字段的对象:
| 字段名称 | 数据类型 | Description |
|---|---|---|
error_code |
bigint | 错误代码 |
error_message |
字符串 | 完整错误消息 |
timestamp |
时间戳 | 发生错误的时间戳 |
常见联接模式
以下查询演示如何联接流和引入表以返回已从单个工作区写入的所有表。
SELECT DISTINCT(stream.table_id)
FROM system.lakeflow.zerobus_stream AS stream INNER JOIN system.lakeflow.zerobus_ingest AS ingest ON (stream_id)
WHERE stream.workspace_id=:workspace_id