监控健康状况、资源利用率和作业

作为 BigQuery 管理员,您可以使用管理资源图表来监控组织的健康状况、槽用量和 BigQuery 作业性能随时间变化的情况。

如需查看运行健康状况信息中心,您必须至少具有一个通过管理项目访问的预留。 具有适当权限的所有用户都可以使用资源图表和作业浏览器。

所需的角色

如需获得查看管理资源图表中所有数据所需的权限,请让管理员向您授予组织的以下 IAM 角色:

如需详细了解如何授予角色,请参阅管理访问权限

这些预定义角色具有查看管理资源图表中所有数据所需的权限。如需查看所需的确切权限,请展开所需权限部分:

所需权限

查看管理资源图表中的所有数据需要以下权限:

  • 针对组织的 bigquery.jobs.listExecutionMetadata 权限
  • 针对组织的 bigquery.jobs.listAll 权限
  • 针对预留管理项目的 bigquery.reservationAssignments.list 权限
  • 针对预留管理项目的 bigquery.capacityCommitments.list 权限
  • 如需查看运行健康状况的摘要数据: 针对项目的 bigquery.tables.get or bigquery.tables.list 权限
  • 查看预留级层的部分数据:
    • 针对预留管理项目的 bigquery.reservations.list 权限
    • 针对预留管理项目的 bigquery.reservationAssignments.list 权限
  • 如需查看管理资源图表上的预留容量数据: 针对预留管理项目的 bigquery.capacityCommitments.list 权限
  • 如需在项目级层查看数据: 针对项目的 bigquery.jobs.listAll 权限

您也可以使用自定义角色或其他预定义角色来获取这些权限。

监控整个组织的运行健康状况

如需就此功能提供反馈或请求支持,请发送电子邮件至 bq-operational-health+feedback@google.com

运行健康状况信息中心会显示您组织及其所有预留位置中的关键指标及其预留。您可以使用此信息中心来监控以下指标:

  • 槽用量
  • Shuffle 用量
  • 作业并发数
  • 错误
  • 作业时长
  • 处理的字节数
  • 总存储空间

BigQuery 通过查询以下 INFORMATION_SCHEMA 视图来提供此信息:

如需监控运行健康状况,请按照以下步骤操作:

  1. 转到 BigQuery 页面。

    转到 BigQuery

  2. 在项目菜单中,选择用于购买槽和创建预留的管理项目。

  3. 在导航面板中,选择管理 > Monitoring。 默认情况下,操作运行状况图表会显示所有位置和所有预留的摘要指标。

  4. 如需查看更频繁更新的数据,您可以切换实时数据。如果启用了实时数据,则数据每五分钟会自动刷新一次。如果停用实时数据,则最大数据过时大约为一小时。系统会显示数据的上次更新时间。

如需查看详细视图,请选择要查看其详细时间轴图表的值:

  1. 选择位置列表中,选择一个特定区域。
  2. 选择预留列表中,选择预留。
  3. 时间范围列表中,选择一个时间范围。
  4. 如需详细了解其中一个关键指标图表,请点击探索更多。如需在 Jobs Explorer 图表中查看更多信息,请点击顶部活跃查询图表中的探索更多

视图

运行健康状况标签页显示以下视图:

摘要视图

摘要视图可让您查看子系统的健康状况,包括组织过去 30 分钟内的预留和区域。

BigQuery 管理摘要视图。

如需查看摘要视图,请执行以下操作:

  • 运行健康状况图表中,在选择位置列表中,选择所有位置

详细视图

详细视图显示了不同指标在位置或预留级层的详细时间表图。

BigQuery 管理详细信息视图概览。

如需查看详细视图,请执行以下操作:

  • 运行健康状况图表,在选择位置列表中选择区域或版本,或者在选择预留列表中选择预留名称。

图表

运行健康状况标签页显示以下图表配置选项:

摘要表

摘要表显示以下指标:

  • 槽用量。平均槽利用率。总槽容量等于基准容量和自动缩放的最大容量。
  • Shuffle 用量。所有预留 Shuffle 总使用率的最大值。
  • 并发数。同时运行的作业数上限。
  • 处理的字节数。已完成的作业处理的总字节数。
  • 作业时长。 作业完成的平均运行时间,根据创建作业开始到作业结束计算得出。
  • 总存储空间。上次更新时间的总活跃逻辑字节数。

视图中按位置或预留显示两个摘要表。 表中每一行代表一个位置或一个预留使用量。

这些表会显示上次更新之前的 30 分钟的指标。如果启用了实时数据,则数据每五分钟会自动刷新一次。如果停用实时数据,则最大数据过时大约为一小时。

如果指标高于阈值,则表单元格会进行颜色编码。所有阈值都是预定义的,无法自定义。如果过去 30 分钟内的指标值大于前一天用量的 P99 值,则表单元格标有深蓝色背景。如果上次更新之前的 30 分钟内的指标值处于前一天用量的 P95 - P99 值之间,则表单元格标有浅蓝色背景。

BigQuery 管理摘要表。

过滤数据

您可以根据以下值过滤图表中的数据:

BigQuery 管理过滤数据。

  • 位置。提供组织在过去 30 天内有活动的区域。摘要视图显示区域级摘要表,用于跟踪所有有活动的区域中的用量。
  • 预留。选择区域后,此字段将变为可选字段。查看管理项目拥有的所有预留均可以使用。您只能选择一个预留。
  • 时间范围。此字段仅适用于详细视图。 它会影响详细视图中的 Metrics 时间表图错误圆环图指标时间表图中的数据规模会根据所选时间范围自动调整。

热门活跃查询图表

此图表显示了按降序排序的前 10 个具有活跃资源的作业。使用下拉菜单,您可以根据槽用量或作业时长选择排序选项。作业 ID 和相关资源用量编号显示在条形图中。在热门活跃查询图表中选择探索更多以查看作业浏览器。如需详细了解执行详情并诊断 BigQuery 作业的任何性能问题,请参阅查询执行图

BigQuery 管理热门作业列表栏。

错误圆环图

此图表显示了所选时间段内失败的主要原因比例。在摘要视图中,默认值为过去 30 分钟。在详细视图中,时间范围选择器可控制其覆盖率。 您可以按类型、所有者项目或预留对错误进行分组。 失败的作业数显示在圆环图中。

BigQuery 错误圆环图。

指标时间表图

这些图表显示最多 30 天的受支持指标概览。默认时间段为 1 小时。随着所选时间段的变化,图表中每个数据点的精细度会自动扩缩。

这些图表显示某个区域或预留的汇总值。 不支持显示多个区域或多个预留的数据。

BigQuery 指标时间表图。

指标时间表图支持以下指标:

  • 槽用量。所选时间段内的平均槽用量。该页面分别显示所有作业和失败作业的总体槽用量。
  • 作业并发数。在选定时间段内同时运行的作业数上限。这会单独显示正在运行的作业和待处理作业的计数,并显示为堆叠条形图。
  • 扫描的字节数。在选定时间段内已完成作业处理的总字节数。
  • Shuffle。选定时间段内所有预留平均 shuffle 使用率的最大值。
  • 作业时长。 所选时间段内作业的平均运行时间,根据作业创建时间到作业结束时间计算得出。
  • 按类型划分的错误。错误圆环图显示所选时间段内不同失败原因的比例。

除了指标趋势之外,这些图表还显示了前一天用量的 P95 和 P99 指标值的参考线。对于作业并发图表,则会显示待处理作业和运行作业总和的阈值。这些引用值用作摘要表中的颜色编码阈值。

如需详细了解图表,请点击探索更多。 系统会将您重定向至资源利用率标签页。

查看资源利用率

管理资源图表中的数据基于 INFORMATION_SCHEMA.JOBS 视图和实时更新,最多可回溯 30 天。

您可以使用管理资源图表来查看 BigQuery 资源利用率。这些资源图有以下三个主要的交互式组件:

  • 事件时间轴图表最多显示 30 天内的数据概览。默认设置为 1 天。

  • 主图表会显示一段时间内,为组织或预留管理项目选择的指标(槽用量、作业并发数、作业性能、错误或处理的字节数)。该图表包含一个与该图表中数据相关联的表格图例,其中显示了在一段时间内汇总的更详细的统计信息。

  • 用于选择不同图表、细分难度和过滤条件选项的侧边栏。

下图简要介绍了 BigQuery 中的各种管理图表选项:

BigQuery 管理资源图表概览。

须知事项

  1. 在 Google Cloud Console 中的项目选择器页面上,选择或创建一个 Google Cloud 项目

    转到“项目选择器”

    您可以创建一个单独的 Google Cloud 预留管理项目,通过为其提供描述性名称(例如 bq-COMPANY_NAME-admin)来管理预留。
  2. 确保您的 Google Cloud 项目已启用结算功能

  3. 启用 BigQuery Reservation API。

    启用 API

    如需了解详情,请参阅启用 BigQuery Reservation API

  4. 在 Google Cloud 控制台中,查看槽配额:

    查看槽配额

    如需购买槽,您必须为要购买槽的区域提供足够的槽配额。

    如果区域的槽配额小于您要购买的槽数,请参阅申请增加配额

查看管理资源图表

默认情况下,从预留管理项目导航时,您可以访问版本管理资源图表。您可以在按需管理资源图表和预留管理项目(预览版)中的版本管理资源图表之间切换。

如需查看管理资源图表,请按以下步骤操作:

  1. 转到 BigQuery 页面。

    转到 BigQuery

  2. 在项目菜单中,选择用于购买槽和创建预留的管理项目。

  3. 在导航面板中,选择管理 > Monitoring

  4. 图表选项 > 范围部分中,您可以从列表中选择结算模式,其中包括三种类型的版本和按需版本。默认情况下,结算模式设置为企业版。

  5. 图表选项 > 图表配置部分中,执行以下操作:

    1. 图表列表中,选择图表类型。如需了解不同的图表选项,请参阅图表选项
    2. 指标列表中,选择可用的指标类型。
    3. 分组依据列表中,选择要在图表中对数据进行分组的维度。如需了解不同维度,请参阅分组依据选项
    4. 过滤条件列表中,选择可用的过滤条件选项。如需了解不同的过滤条件,请参阅过滤条件和搜索
    5. 设置要在图表中查看数据的时间范围

图表配置

您可以通过更改以下图表配置选项来调整管理资源图表的视图:

图表选项

BigQuery 提供以下指标类型以显示在图表中:

  • 槽用量。所选时间段内的平均槽用量。容量和空闲槽用量适用于以下情况:

    • 分组依据选项为“总体”。
    • 无过滤条件,或按单个预留进行过滤。
  • 作业并发:在所选时间段内同时运行的作业数上限。

  • 作业性能:已完成作业的平均作业运行时间,从作业创建时间到作业结束时间计算得出。

  • 失败的作业:所选时间段内失败作业的平均槽用量。

  • 处理的字节数:在所选时段内已完成作业处理的总字节数。

  • Shuffle 用量:所选时间段内的平均 Shuffle 用量比率(预览版)。

表组件

表格中会显示与您在管理资源图表中选择的时间段和维度相关的指标。

槽用量图表显示在所选时间段内运行的所有作业的平均槽用量。在所选时间段内未完成的作业仅包含该时间段内使用的槽。

对于作业性能图表,表组件会显示以下指标:

  • 作业数:在所选时间段内已完成作业运行或部分运行的数量。

  • 平均作业时长:在所选时间段内至少部分运行的已完成作业的平均作业时长。

  • 中间值作业时长:在所选时间段内至少部分运行的已完成作业的中间值作业时长。

  • 最短作业时长:在所选时间段内至少部分运行的已完成作业的最短作业时长。此列在默认情况下处于隐藏状态,但您可以在列显示选项中启用此列。

  • 最长作业时长:在所选时间段内至少部分运行的已完成作业的最长作业时长。此列在默认情况下处于隐藏状态,但您可以在列显示选项中启用此列。

对于失败的作业数图表,表组件会显示以下数据:

  • 平均槽用量:与槽用量图表相同,但仅适用于失败的作业。

  • 失败的作业总数:在所选时段内失败的作业数量。

按选项分组

根据图表类型,您可以按多个维度在图表视图中对数据进行分组:

  • 整体视图:整体视图简要展示了整个组织在一段时间内的所选指标。对于槽使用情况,容量和用量显示在同一个图表上,方便您了解一段时间内槽总体利用率。

  • 项目。项目视图显示所选指标按项目分组的情况。如果组织的项目超过 10 个,则仅显示所选时间段内槽用量、作业并发性、作业持续时间或作业失败率最高的前 10 个项目。对于槽用量,所有其他项目都会被归入图表底部的其他类别,以方便与总体容量进行比较。

  • 所有其他分组依据视图与项目视图类似,数据按相应的维度进行分组。

时间范围选项

您可以通过以下方式修改时间段:

  • 选择时间段并将其拖动到事件时间轴图表中。

  • 选择时间段并将其拖动到主图表中。

校准时间段会随着所选时间范围的变化而自动更新。校准时间段越小,视图就越详细。为了更好地查看频繁更改的资源(例如槽用量选项),请缩短校准时间段。

要缩小图表数据的范围,请在过滤器面板中应用过滤器。 某些过滤条件仅适用于特定图表。预留文件夹项目用户过滤条件填充了在所选时间范围内消耗槽的相应资源。例如,如果某个项目在过去 30 天内未被使用过,则该项目不会显示在项目过滤条件列表中。

在应用过滤条件后,图表便会刷新,以显示所选参数中的数据。

查看项目级管理图表数据

您可以在图表选项中调整范围,以在项目级层生成管理图表概览。此视图可帮助项目分析师监控自有项目的资源利用率,类似于组织级层的管理图表,但部分图表选项和分组依据选项不适用。此视图显示上下文项目中整体资源利用率,与上下文项目中的结算模式无关。

BigQuery 项目级层管理资源图表概览。

从具有组织级权限的非管理项目导航到管理图表时,管理图表默认切换到项目级层。您可以使用图表选项中的范围下拉列表切换回正确的视图。

查看管理作业探索器

BigQuery 通过查询以下 INFORMATION_SCHEMA 视图来提供查询详细信息和分析洞见:

由于这些 INFORMATION_SCHEMA 视图是区域化的,因此您可以根据所选区域查看相应的作业。

过滤作业

如需过滤 INFORMATION_SCHEMA.JOBS* views 中包含的查询的作业,请按照以下步骤操作:

  1. 转到 BigQuery 页面。

    转到 BigQuery

  2. 在项目菜单中,选择用于购买槽和创建预留的管理项目。

  3. 在导航面板中,选择管理 > Monitoring

  4. 点击 Jobs Explorer 标签页。

  5. 位置列表中,选择您要查看作业的位置。您可以查看该位置的 INFORMATION_SCHEMA.JOBS 视图中包含的所有运行的查询作业的列表。

    您还可以查看活跃的查询和排队的查询,以及过去 1 分钟内的槽总用量。

  6. 使用选项过滤作业。 使用选项过滤作业。

    图 1. 过滤作业。

    在图 1 中,用于过滤作业的选项如下:

    • 运行作业的时间范围。
    • 作业范围,例如项目和组织。
    • 作业状态,例如正在运行、待处理、已完成和错误。
    • 作业 ID。
    • 管理员作业所有者的电子邮件 ID。
    • 用时超过指定槽时间的作业。
    • 作业时长。
    • 处理的字节数超过指定处理字节数的作业。
    • 查询数据分析的类型,例如槽争用、已超出内存 shuffle 容量以及数据输入缩放变化。
    • 查询哈希值包含查询的哈希值。它是一个十六进制字符串哈希值,忽略注释、参数值、UDF 和字面量。系统会对非缓存命中的成功 GoogleSQL 查询显示此字段。

查看查询执行详情

如需查看作业的查询执行详情,请按照以下步骤操作:

  1. 转到监控页面。

    进入 Monitoring

  2. 如需查看作业,请点击作业探索器

  3. 您可以过滤作业以仅查看部分作业。

  4. 点击要查看查询执行详情的作业。

  5. 查询结果窗格中,点击执行图标签页以查看管理员作业的执行详情。

    作业的执行图。

    图 2. 作业的执行图。

如需了解如何解读数据分析,请参阅解读查询性能数据分析

结算

管理资源图表和作业探索器无需额外付费。用于填充这些图表的查询不会计费,也不会使用用户拥有的预留中的槽。处理过多数据的查询会超时。

后续步骤