BigQuery 监控

本文档介绍如何使用 Cloud Monitoring 监控 BigQuery 资源,包括为 BigQuery 指标创建图表和提醒。

准备工作

  • 在使用 Cloud Monitoring 之前,请确保您具有以下各项:

    • Google Cloud 帐号。
    • 启用了结算功能的 BigQuery 项目。

    确保满足以上两个条件的一种方法就是完成快速入门:使用网页界面中的操作。

  • 如需使用 Cloud Monitoring,您的项目必须位于工作区中。请按照创建单项目工作区中的步骤执行操作。

查看和创建信息中心、图表与提醒

查看 Cloud Monitoring 信息中心

如需使用 Cloud Monitoring 监控 BigQuery 项目,请执行以下操作:

  1. 在 Google Cloud Console 中,转到 Monitoring 页面。

    转至 Monitoring

  2. 如果尚未在页面顶部选中项目名称,请选择您的项目名称。

  3. 如需查看 BigQuery 资源,请选择信息中心 > BigQuery。 在此页面上,您可以看到用户可配置的表、活动和突发事件报告的列表,以及项目指标或数据集指标的图表。

    BigQuery 信息中心。

直观呈现可用槽和已分配的槽

如需直观呈现可用的槽和已分配给项目的槽,请按照查看 Cloud Monitoring 信息中心中的说明转到 BigQuery 信息中心:

  1. 在 Google Cloud Console 中,转到 Monitoring 页面。

    转至 Monitoring

  2. 选择信息中心 > BigQuery

  3. 在适用于 BigQuery 的 Cloud Monitoring 信息中心上,滚动到名为槽利用率 (Slot Utilization) 的图表。

槽利用率 (Slot Utilization) 图表会同时显示在 Cloud Monitoring 默认的主信息中心以及适用于 BigQuery 的 Cloud Monitoring 信息中心。

创建信息中心和图表

如需在您自己的图表和信息中心内显示由 Cloud Monitoring 收集的指标,请执行以下操作:

  1. 在 Google Cloud Console 中,转到 Monitoring 页面。

    转至 Monitoring

  2. 选择 Dashboards > Create Dashboard

  3. 点击 Add Chart。您会看到“Add Chart”页面:

    “Add chart”页面。

  4. Find resource type and metric 面板字段中:

    • Resource type 下拉列表中,选择 Global。您可能需要展开 Resource types 列表,以便找到 Global 选项。
    • Metric 下拉列表中,选择 Query execution time
  5. Aggregation 窗格字段用于控制执行时间数据的显示方式。您可以修改这些字段的默认设置。

  6. 点击 Save

创建提醒

要创建一项提醒政策,以便 BigQuery 查询的执行时间的第 50 百分位超过用户定义的限制时触发此政策,请使用以下设置:

目标窗格
字段

Resource type Global
Metric Query execution time
Filter
Aggregator none
Advanced Aggregation Aligner50th percentile
Alignment Period1 m
Conditions 窗格
字段

Condition triggers if Any time series violates
Condition is above
Threshold 确定可接受的值。对于此指标,可将第 50 百分位的平均值的两倍设为阈值。
For 1 minute

可用于直观呈现数据的指标

可用指标包括以下各项,时间延迟最多可达数个小时。

资源类型 名称 单位 说明
BigQuery Scanned bytes 每分钟字节数 扫描的字节数
BigQuery Scanned bytes billed 每分钟字节数 收费的已发送字节数

出于多种原因,“Scanned bytes”和“Scanned bytes billed”可能有所不同。

  • 存在最低计费金额。如果您扫描的字节数少于该标准,则不会收取费用。
  • 如果您的帐号享有部分关联赠金,则这些指标可能有所不同。

BigQuery Query time
- 5th percentile
- 50th percentile
- 95th percentile
- 99th percentile
非缓存的查询执行时间(单位为秒)
BigQuery Slots allocated 在任意时刻分配给项目的槽数。您也可以认为,这就是项目所使用的槽数。

槽按结算帐号分配,多个项目可以共用同一预留中的槽。

BigQuery Slots allocated by job type 在任意时刻分配给项目的槽数,按作业类型划分。您也可以认为,这就是项目所使用的槽数。目前,加载和导出作业都属于免费操作,这些操作在资源的公开池中运行。

槽按结算帐号分配,多个项目可以共用同一预留中的槽。

BigQuery Slots available 项目可用的总槽数。

如果项目与其他项目共用预留的槽数,则不会指出其他项目使用的槽数。

BigQuery 数据集 Stored bytes 字节 数据集中存储的字节数;如果数据集中表的数量未超过上限 100 个,则系统将按表名称显示每个表存储的字节数。如果数据集中表的数量超过上限 100 个,则所有超出的表将汇总一并报告,并且汇总的表名称为空字符串。
BigQuery 数据集 Tables 数据集中的表数
BigQuery 数据集 Uploaded billed bytes 每分钟字节数 上传到数据集中任何表的已计费字节数
BigQuery 数据集 Uploaded bytes 每分钟字节数 上传到数据集中任何表的字节数

出于多种原因,“Uploaded billed bytes”和“Uploaded bytes billed”可能有所不同。

  • 存在最低计费金额。如果您扫描的字节数少于该标准,则不会收取费用。
  • 如果您的帐号享有部分关联赠金,则这些指标可能有所不同。
BigQuery 数据集 Uploaded rows 每分钟行数 上传到数据集中任何表的记录数

已知问题

  • 如果没有运行任何查询,则系统不会为“Slots allocated”或“Slots available”返回数据,也不会为任何查询相关变量返回数据。请缩小以查看数据。

  • 如果查询同时在 US 和 EU 运行,则“Slots allocated”和“Slots available”可能不正确。

  • “Slots allocated”报告为时间段(时间段的宽度取决于图表的缩放级别)内的平均值。缩放图表可能会改变“Slots allocated”的值。如果放大到 1 小时或 1 小时以内的时间段,系统就会显示“Slots allocated”的真实值。在此范围内,对于图表上可见的任意时间,avg(slots allocated) = slots allocated

  • Cloud Monitoring 图表中的数据仅适用于所选项目。目前尚不支持多项目监控。