「系統活動」中的「查詢效能指標」探索會詳細列出從 Looker 執行個體執行的每項查詢。
舉例來說,您可以使用這項「探索」功能,調查查詢的哪些元件載入時間最長。您也可以使用這項探索功能找出查詢成效趨勢和異常情況。
如要進一步瞭解「系統活動」中提供的探索資料,請參閱「使用系統活動探索資料監控 Looker 使用情形」說明文件頁面。
查看查詢成效指標
您可以在「系統活動」的「查詢效能指標」探索中查看查詢效能指標。您必須是 Looker 管理員或具備 see_system_activity
權限,才能查看「查詢效能指標」探索。
瞭解 Looker 查詢生命週期
Looker 傳送至資料庫的每項查詢都會經歷多個階段,每個階段又包含多個步驟。這些步驟在「查詢成效指標」探索中會以維度表示。
大致來說,各階段的概念如下:
- 非同步工作站階段:首先,查詢工作必須指派給可用的非同步工作站。如果沒有工作人員可提供服務,可能需要排隊等候。
- 初始化階段:指派非同步工作站後,Looker 執行個體會執行數個初始化步驟,準備查詢。
- 連線處理階段:初始化完成後,Looker 執行個體會與客戶資料庫建立連線。
- 主要查詢階段:Looker 執行個體與客戶資料庫建立連線後,系統會在客戶資料庫上執行主要查詢。視查詢所選的選項而定,系統也可能會執行其他查詢來計算結果,例如總計。如果查詢並未串流,查詢就會載入 Looker 執行個體的記憶體。之後,Looker 執行個體與客戶資料庫之間的連線就會關閉。
- 查詢後階段:最後,Looker 執行個體會執行多個查詢後步驟,為查詢準備下一個目的地。此時,非同步工作站會釋出。
查詢成效指標
以下各節依時間順序列出每個查詢階段和查詢步驟。
非同步工作站階段指標
查詢步驟 | 指標說明 |
---|---|
Queued |
查詢等待非同步工作站執行查詢的時間 (以秒為單位)。 |
Async processing |
非同步工作站處理查詢所花費的時間 (以秒為單位)。工作人員會持續處理查詢,直到查詢後階段完成為止,因此這項指標會與這個頁面上的大多數其他指標重疊。 |
初始化階段指標
查詢步驟 | 指標說明 |
---|---|
Model Init: From Cache |
從快取提取模型定義所需的時間 (以秒為單位)。如果傳回空值,表示模型已載入並剖析,而非從快取中提取。(請參閱Model Init: Computed 步驟)。 |
Model Init: Computed |
載入及剖析執行查詢所需的模型所花的時間 (以秒為單位)。如果傳回空值,表示模型是從快取擷取,而非從頭載入及剖析。(請參閱Model Init: From Cache 步驟)。 |
Explore Init: From Cache |
從快取提取「探索」初始化作業所需的時間 (以秒為單位)。如果傳回空值,表示系統已載入並剖析探索,而非從快取中提取。(請參閱Explore Init: Computed 步驟)。 |
Explore Init: Computed |
初始化「探索」所需的時間 (以秒為單位),之後才能開始 prepare 。如果傳回空值,表示系統是從快取擷取探索,而非從頭載入及剖析。(請參閱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 資料庫,這些指標會傳回空值。
指標 | 指標說明 |
---|---|
BigQuery Job ID |
查詢的 BigQuery 工作 ID (或 NULL)。 為加快 BigQuery 查詢的回應時間,Looker 會使用 如果 BigQuery 判斷無法立即傳回結果,就會建立工作,而查詢會取得 BigQuery 工作 ID (BigQuery 查詢 ID 則為 NULL)。 |
BigQuery Query ID |
查詢的 BigQuery 查詢 ID (或 NULL)。 為加快 BigQuery 查詢的回應時間,Looker 會使用 如果 BigQuery 判斷無法立即傳回結果,就會建立工作,而查詢會取得 BigQuery 工作 ID (BigQuery 查詢 ID 則為 NULL)。如果這個欄位空白,表示 BigQuery 無法立即執行查詢,而是建立工作來執行查詢。如要取得 BigQuery 工作 ID,請改用 |
BI Engine Mode |
查詢是否能部分或完全加速執行。如要進一步瞭解這個欄位的可能值,請參閱「BI Engine 加速統計資料」。 |
BI Engine Reason |
如果查詢無法以完整加速模式執行,這個欄位會顯示原因。這則訊息直接來自 Google BigQuery。 |
使用查詢效能指標排解問題
分析查詢指標有助於提升 Looker 執行個體的效能。如要開始使用,請從「系統活動資訊主頁」清單中選取「成效建議」資訊主頁。