为 BigQuery 创建信息中心和提醒

本文档介绍如何使用 Cloud Monitoring 创建图表和提醒来监控 BigQuery 资源。

准备工作

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

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

确保以上两个条件同时满足的一种方法是完成快速入门:使用控制台

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

查看 Cloud Monitoring 信息中心

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

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

    转至 Resources

  2. 选择您的项目名称(如果尚未在页面顶部选择该名称)。

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

    BigQuery 信息中心。

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

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

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

    转至 Resources

  2. 选择信息中心 > BigQuery

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

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

创建信息中心和图表

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

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

    转至 Resources

  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. 点击保存

创建提醒

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

新建条件
字段

资源和指标 资源菜单中,选择 BigQuery 项目
指标类别菜单中,选择查询
指标菜单中,选择查询执行时间
过滤
跨时间序列
时间序列分组依据
priority
跨时间序列
时间序列聚合
99th percentile
滚动窗口 5 m
滚动窗口函数 sum
配置提醒触发器
字段

条件类型 Threshold
提醒触发器 Any time series violates
阈值位置 Above threshold
阈值 您可确定此值;不过,建议将阈值设为 60 秒。
重新测试窗口 most recent value

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

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

资源类型 名称 单位 说明
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 图表中的数据仅适用于所选项目。目前尚不支持多项目监控。

  • 指标为在某个时间点采样的瞬时值,可能缺少采样间隔之间的数据点。例如,作业计数指标是每分钟采样的。该值是该特定时间点的作业数,而不是整个一分钟内最大的作业数。