使用管理作业探索器
作为 BigQuery 管理员,您可以使用管理作业探索器来帮助您监控组织中的作业活动。作业探索器还提供了一系列过滤条件和排序选项,用于排查和识别有问题的作业。作业探索器让您无需深入了解 INFORMATION_SCHEMA,并且可让您快速查看作业信息(例如所有者、项目、槽用量、时长等),而无需编写 INFORMATION_SCHEMA 查询。
您还可以选择单个作业以打开作业详情页面,其中提供了查询详情(例如执行图、SQL 文本和执行历史记录),可帮助您诊断和排查查询问题。 在此页面上,您可以比较两个作业,以突出显示它们之间的显著差异并解决潜在的性能问题。
BigQuery 通过以下 INFORMATION_SCHEMA 视图提供作业详情和分析洞见:
- INFORMATION_SCHEMA.JOBS_BY_PROJECT
- INFORMATION_SCHEMA.JOBS_BY_ORGANIZATION
- INFORMATION_SCHEMA.JOBS_BY_USER
所需的角色
    
      如需获得使用管理作业探索器所需的权限,请让您的管理员为您授予组织或项目的 BigQuery Resource Viewer (roles/bigquery.resourceViewer) IAM 角色。如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。
  
  
此预定义角色可提供使用管理作业探索器所需的权限。如需查看所需的确切权限,请展开所需权限部分:
所需权限
使用管理作业探索器需要以下权限:
- 
                如需在项目级层查看数据:
                  针对项目的 bigquery.jobs.listAll权限
- 
                在项目级层查看数据:针对组织的 bigquery.jobs.listAll权限
- 
                按组织中的预留过滤:针对组织的 bigquery.reservations.list权限
过滤作业
如需根据 INFORMATION_SCHEMA.JOBS* 视图中包含的查询来过滤作业,请执行以下操作:
- 在 Google Cloud 控制台中,前往 BigQuery 页面。 
- 在导航菜单中,点击作业探索器。 
- 从位置列表中,选择您要查看其作业的位置。 
- 根据需要应用可选的过滤条件: - 作业范围。例如,当前项目、组织和作业。
- 状态。例如,已完成、错误、活跃和已加入队列。
- 作业优先级。例如,交互式作业或批量作业。
- 作业 ID。
- 所有者。作业所有者的电子邮件 ID(仅当作业范围为项目或组织时适用)。
- 项目 ID。(仅当作业范围为组织时才适用)
- 预留 ID。(仅当作业范围为组织时才适用)
- 槽时间超过。用时超过指定槽时间的作业。
- 时长超过。用时超过指定时长的作业。
- 处理的字节数超过。处理的字节数超过指定处理字节数的作业。
- 查询数据分析。查询数据分析的类型,例如槽争用、已超出内存 shuffle 容量以及数据输入缩放变化。
- 查询哈希值。查询哈希值包含查询的哈希值。它是一个十六进制字符串哈希值,忽略注释、参数值、UDF 和字面量。系统会对非缓存命中的成功 GoogleSQL 查询显示此字段。
- 标签。可分配给作业的 key:value对。您可以使用键、值或key:value组合进行过滤。
- 作业类别。查询的类型,例如标准查询或持续查询。
 
查看查询执行详情
如需查看作业的查询执行详情,请执行以下操作:
如需了解如何解读数据分析,请参阅解读查询性能数据分析。
获取 BigQuery 作业详情
如需就此功能提供反馈或请求支持,请发送邮件至 bq-performance-troubleshooting+feedback@google.com。
在管理作业探索器中,您可以查看 BigQuery 详情页面。BigQuery 作业详情页面将多个查询详情整合到一个页面中,以帮助诊断和排查查询问题。性能标签页会编译查询信息,包括执行图、SQL 文本和执行历史记录。
性能标签页还支持查询比较,让您可以比较查询的历史使用情况,并分析和解决任何可能的性能下降问题。如需详细了解作业比较,请参阅比较作业。
准备工作
如需获得处理 BigQuery 作业详情和系统级详情所需的权限,请让您的管理员为您授予组织或项目的以下 IAM 角色:
- 
              查看作业详情:BigQuery Resource Viewer (roles/bigquery.resourceViewer) - 运行查询的项目
- 
              查看系统级详情:BigQuery Resource Viewer (roles/bigquery.resourceViewer) - 管理项目
如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。
这些预定义角色可提供处理 BigQuery 作业详情和系统级详情所需的权限。如需查看所需的确切权限,请展开所需权限部分:
所需权限
处理 BigQuery 作业详情和系统级详情需要以下权限:
- 
                如需在项目级层查看数据:
                  针对项目的 bigquery.jobs.listAll权限
- 
                在项目级层查看数据:针对组织的 bigquery.jobs.listAll权限
- 
                按组织中的预留过滤:针对组织的 bigquery.reservations.list权限
查看作业详情
如需查看作业详情页面,请执行以下操作:
- 前往作业探索器页面。 
- 可选:过滤作业,以缩小显示的可用作业的范围。 
- 点击要查看的作业的 ID。对于不创建作业的查询,系统会显示查询 ID,但链接处于停用状态。对于所有其他查询,点击作业 ID 会显示作业详情页面。 
默认情况下,系统会显示性能标签页。您可以前往其他标签页以查看更多作业信息。
可用的查询信息
下表介绍了性能标签页中提供的信息和指标。
- SQL 查询:创建作业的 SQL 查询的文本。 
- 作业详情:有关作业的信息,包括作业 ID、创建时间、处理的字节数等。如需了解详情,请参阅查看作业详细信息。 
- 性能差异:有关作业与之前执行相同查询时的性能比较信息。BigQuery 会将当前作业与处理的字节数相似 (+/- 5%) 且作业时长最短的过往执行情况(如果存在)进行比较。如果不存在此类过往执行情况,则 BigQuery 会将当前作业与过去 30 天内过往执行情况的平均值进行比较。如果没有过往执行情况,则此部分表示未找到可供比较的类似作业。 
- 执行历史记录:按查询哈希列出的此查询的其他执行情况。 在此面板中,您可以选择要与当前查看的作业进行比较的作业。如需详细了解如何比较作业,请参阅比较作业。 
- 执行期间的系统负载:BigQuery 用于执行作业的资源的说明。这包括有关此作业所用预留设置的信息(如果适用)。 
- 执行图:此作业的执行图。如需了解详情,请参阅获取查询性能数据分析。 
比较作业
如需就此功能提供反馈或请求支持,请发送邮件至 bq-performance-troubleshooting+feedback@google.com。
通过作业性能比较,您可以将基准作业与目标作业进行比较;查询分析会突出显示这两个作业之间存在显著差异的作业详情。这有助于您排查两个查询作业之间可能存在的性能问题。
比较两个查询时,如需优化查询,请务必考虑作业时长、槽时间和处理的字节数等重要详情。
准备工作
如需获得处理 BigQuery 作业详情和系统级详情所需的权限,请让您的管理员为您授予组织或项目的以下 IAM 角色:
- 
              查看作业详情:BigQuery Resource Viewer (roles/bigquery.resourceViewer) - 运行查询的项目
- 
              查看系统级详情:BigQuery Resource Viewer (roles/bigquery.resourceViewer) - 管理项目
如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。
这些预定义角色可提供处理 BigQuery 作业详情和系统级详情所需的权限。如需查看所需的确切权限,请展开所需权限部分:
所需权限
处理 BigQuery 作业详情和系统级详情需要以下权限:
- 
                如需在项目级层查看数据:
                  针对项目的 bigquery.jobs.listAll权限
- 
                在项目级层查看数据:针对组织的 bigquery.jobs.listAll权限
- 
                按组织中的预留过滤:针对组织的 bigquery.reservations.list权限
了解作业性能比较
以下部分介绍了作业性能比较页面及其提供的问题排查信息。
您可以开启仅显示显著差异切换开关,以仅查看此页面上包含的所有指标在两个作业之间的显著差异。
显著差异会以绿色、黄色和红色突出显示:
- 绿色:变化朝着正方向移动。例如,由于查询时长越短越好,因此如果目标作业的运行速度超过基准作业,则会标记为绿色。
- 黄色:变化朝着负方向移动,但差值小于 20%。
- 红色:变化朝着负方向移动,且差值大于 20%。
查询级分析
查询级分析窗格描述了两个作业在查询级别的差异。它包含三个标签页:指标、SQL 文本和执行图标签页。
- 指标标签页描述了两个作业的查询指标。您可以使用此标签页来确定作业时长、未使用的加速器与其他指标之间是否存在差异。 
- SQL 文本标签页显示了创建作业的两个 SQL 语句,并突出显示了它们之间的差异。您可以使用此标签页来确定 SQL 语句中的更改是否影响了作业性能。 
- 执行图标签页比较两个作业的执行图。您可以使用此标签页来确定作业执行期间是否在任何阶段出现差异。 
系统级分析
系统级分析窗格描述了可能在系统级别影响两个作业的因素。它包含三个部分:项目表、预留表和设置表。
系统级分析窗格可以根据两个查询之间的差异,建议需要改进的方面。
例如,如果作业获得的槽数少于之前的执行,则可能是受到了系统中的资源限制条件的影响。如果出现此指示,请检查项目级指标,查看整个项目是否获得的槽数较少。如果项目未收到较少的槽,则可能是项目级层发生了争用,例如作业并发数增加。如果项目确实收到了较少的槽,请检查预留级别以确定任何限制条件。
- 项目表在项目级层比较两个作业。您可以使用此表来确定是否可以在项目级层进行任何优化。 
- 预留表在预留级层比较两个作业。使用此表可找出两个查询之间在预留用量方面的差异,这些差异可能会影响作业性能。 
- 设置表比较两个作业之间的预留设置。您可以使用此表检测预留设置的任何更改,这些更改可能会对性能产生影响。 
比较两个作业
如需比较两个作业,请执行以下操作:
- 前往作业探索器页面。 
- 可选:过滤作业,以缩小显示的可用作业的范围。 
- 点击要查看和比较的初始作业的作业 ID。系统会显示作业详情页面。 
- 点击性能标签页。 
- 点击比较作业。 
- 在作业 1(基准作业)字段中,点击浏览。系统会显示类似的同类作业面板。 
- 确定要与基准作业进行比较的作业,然后点击比较。系统会显示作业性能比较。 
- 如需仅查看这两个作业之间的显著差异,请开启仅显示显著差异切换开关。 
更改要比较的作业
如需更改要比较的作业,请执行以下操作:
- 前往作业性能比较页面。 
- 在作业 1(基准作业)字段中,点击浏览。 
- 在类似的同类作业窗格中,找到要比较的作业,然后点击比较。 
价格
作业探索器无需额外付费。用于填充这些图表的查询不会计费,也不会使用用户拥有的预留中的槽。处理过多数据的查询会超时。
后续步骤
- 了解预留。
- 了解如何购买广告位。
- 了解如何估算槽容量要求。
- 了解如何查看槽建议和数据分析。