了解查询性能指标

系统活动中的“查询性能指标”探索功能提供了从 Looker 实例中运行的每个查询的详细细分。

例如,您可以使用此“探索”来研究查询中哪些组件的加载时间最长。您还可以使用此“探索”工具来确定查询效果趋势和异常值。

如需详细了解系统活动中提供的探索,请参阅使用系统活动探索创建 Looker 使用情况报告文档页面。

查看查询性能指标

查询性能指标显示在系统活动查询性能指标“探索”中。您必须是 Looker 管理员或拥有 see_system_activity 权限才能查看查询性能指标探索。

了解 Looker 查询生命周期

Looker 发送到数据库的每个查询都会经历几个阶段,其中每个阶段都有几个步骤。在查询性能指标探索中,每个步骤都表示为一个维度。

概括来讲,这些阶段可以概念化,如下所示:

  1. 异步工作器阶段:首先,必须将查询任务分配给可用的异步工作器。如果没有可用的工作器,可能会有排队时间。
  2. 初始化阶段:分配异步工作器后,Looker 实例会运行几个初始化步骤来准备查询。
  3. 连接处理阶段:初始化完成后,Looker 实例将与客户数据库建立连接。
  4. 主查询阶段:Looker 实例在与客户数据库建立连接后,会对客户数据库执行主查询。系统也可以运行其他计算结果查询(例如总计),具体取决于为查询选择的选项。如果查询未进行流式处理,则系统会将查询加载到 Looker 实例上的内存。之后,从 Looker 实例到客户数据库的连接将关闭。
  5. 查询后阶段:最后,Looker 实例运行几个查询后步骤,为下一个目的地准备查询。此时,异步工作器已发布。

查询性能指标

以下部分按时间顺序列出每个查询阶段和查询步骤。

异步工作器阶段指标

查询步骤 指标说明
Queued 查询为等待异步工作器可用于运行查询而花费的时间(以秒为单位)。
Async processing 异步工作器花在查询上的时间(以秒为单位)。工作器将继续处理查询,直到查询后阶段结束,因此此指标将与此网页上的大多数其他指标重叠。

初始化阶段指标

查询步骤 指标说明
Model Init: From Cache 从缓存中提取模型定义所需的时间(以秒为单位)。如果返回 null 值,则表示模型已加载和解析,而不是从缓存中提取。(请查看 Model Init: Computed 步骤)。
Model Init: Computed 加载和解析运行查询所需的模型所需的时间(以秒为单位)。如果返回 null 值,则表示已从缓存中检索模型,而不是从头开始加载和解析。(请查看 Model Init: From Cache 步骤)。
Explore Init: From Cache 从缓存中提取“探索”初始化所花费的时间(以秒为单位)。如果这返回 null 值,则表示已加载和解析“探索”,而不是从缓存中提取。(请查看 Explore Init: Computed 步骤)。
Explore Init: Computed 开始探索之前,prepare 初始化探索所用的时间。如果返回 null 值,则表示已从缓存检索到探索,而不是从头开始加载和解析。(请查看 Explore Init: From Cache 步骤)。
Prepare 从“探索”定义中准备查询所花费的时间(以秒为单位)。

连接处理阶段指标

查询步骤 指标说明
Per User Throttler 用户为建立连接而等待查询可用所花费的时间(以秒为单位)。
Acquire Connection Looker 实例获取与客户数据库的连接所需的时间(以秒为单位)。这包括查询用户凭据、创建连接池(如果还没有连接,以及初始化连接以供使用)的时间。
Connection Held Looker 实例保持与客户数据库的连接的时间(以秒为单位)。这包括客户数据库运行 SQL 查询所花费的时间。

主要查询阶段指标

查询步骤 指标说明
Cache Load 结果集缓存中提取原始结果所需的时间(以秒为单位)。
PDTs 构建查询所需的永久性派生表所需的时间(以秒为单位)。
Execute Main Query 对客户数据库运行 primary 查询所花费的时间(以秒为单位)。这不包括在客户数据库中获取连接所需的时间。对于需要使用允许大型结果功能的查询,系统不会对其进行跟踪。
Execute Totals Query 运行查询在客户数据库中生成总数所需的时间(以秒为单位)。仅适用于已启用总计的查询。
Execute Row Totals Query 运行查询在客户数据库中生成行总计所需的时间(以秒为单位)。仅适用于已启用行总计数的查询。
Execute Grand Totals Query 运行查询在客户数据库中生成总计时间所需的时间(以秒为单位)。仅适用于同时启用了总计行总计的查询。
Load Process and Stream Main Query 加载主查询(从客户数据库)处理(在 Looker 实例上)并将其流式传输(到客户端)所需的时间(以秒为单位)。仅适用于流式查询。
Load Main Query In Memory 从客户端数据库加载主查询结果需要几秒钟的时间。仅适用于非流式查询。
Load Totals Query In Memory 将查询生成总计数据到内存所需的时间(以秒为单位)。仅适用于已启用总计功能的非流式查询。
Load Row Totals Query In Memory 将查询生成行总计到内存所用的时间(以秒为单位)。仅适用于已启用行总计数非流式查询。
Load Grand Totals Query In Memory 将查询生成总数并将其保存到内存中需要几秒钟的时间。仅适用于同时启用了总计行总计非流式查询。

查询后阶段指标

查询步骤 指标说明
Postprocessing 对查询进行后处理所需的时间(以秒为单位)。发生在连接关闭后。
Stream to Cache 处理结果并将其流式传输到渲染缓存所需的时间(以秒为单位)。

BigQuery BI Engine 指标

如果您将 BigQuery BI Engine 与 Looker 搭配使用,则可以使用查询性能指标“探索”功能来查看有关查询的数据库特定信息。对于不使用 BI Engine 的查询以及除 BigQuery 数据库之外的数据库查询,系统将针对这些指标返回 null 值。

指标 指标说明
BigQuery Job ID BigQuery 中查询的作业 ID。
BI Engine Mode 查询是可以部分还是完全加速运行。如需详细了解此字段的可能值,请参阅 BI Engine SQL 接口概览
BI Engine Reason 如果查询无法完全加速,则此字段会显示原因。此消息直接来自 Google BigQuery。

排查查询效果指标问题

分析查询指标有助于提高 Looker 实例的性能。要开始使用,请从系统活动信息中心列表中选择效果建议信息中心