BigQuery 中的元数据

Metadata in BigQuery

我想获取我的 Bigquery 表的元数据,为此,我需要获取在上次修改时间戳期间插入的总行数。这也属于元数据吗?

此外,我需要同时拥有批处理和流处理的元数据。如何判断是批处理数据还是流数据?

如果有人在架构方面也能帮助我,那将非常有帮助,因为我需要通过电子邮件发送一些警报。

目前我正在尝试 CloudScheduler --> Cloud Functions --> Pubsub --> Cloud function --> ALerting via email.

期待很多回复。

为了通过监视大查询日志和创建特定接收器来获取 table 的插入计数。当将数据加载到 table 的大型查询作业有 运行 时,我们可以查看下面的日志

突出显示的日志提供有关作为批处理的一部分插入 table 的记录数的详细信息。

以下过滤器可用于获取特定日志

resource.type="bigquery_dataset" resource.labels.dataset_id="demo_dataset"
protoPayload.methodName="google.cloud.bigquery.v2.JobService.InsertJob"
protoPayload.resourceName: "projects/graphical-reach-285218/datasets/demo_dataset/tables/crime"
protoPayload.metadata.tableDataChange.reason="QUERY"

可以为这个特定的日志创建一个接收器,它将被路由到大查询数据集,如下所示

显示的 table 未分区,但可以通过在创建接收器时指定选项进行分区。

每次触发作业并将数据加载到 table 中,如下所示

可以使用标准 SQL 字符串函数提取 insertedRowsCount 的值。