尋找工作階段
本文件說明如何在 BigQuery 中取得工作階段 ID。本文章適用於已對 BigQuery 工作階段有基本瞭解,且已建立工作階段的使用者。
完成這些步驟前,請確認您已取得必要的權限,才能取得工作階段的 ID。
取得有效工作階段的 ID
在某些情況下,您需要參照工作階段,才能繼續在該工作階段中作業。舉例來說,如果您使用 Cloud Shell,每次執行該工作階段的指令時,都必須加入工作階段 ID。
主控台
您不需要提供工作階段 ID,即可在 Google Cloud 控制台的工作階段中執行新的查詢。您可以繼續在包含工作階段的編輯器分頁中工作。不過,如果您想在 Cloud Shell 或 API 呼叫中參照工作階段,就必須知道在控制台中建立的工作階段 ID。
在完成這些步驟之前,請確認您已在有效工作階段中執行至少一個查詢。
前往 Google Cloud 控制台的「BigQuery」頁面。
按一下包含工作階段的編輯器分頁。
在「查詢結果」中,按一下「工作資訊」。
在「Job information」清單中搜尋工作階段 ID:
Session ID: CgwKCmZhbGl1LXRlc3QQARokMDAzYjI0OWQtZ
bq
如要在 Cloud Shell 工作階段中執行查詢指令,請在指令中加入工作階段 ID。您可以在建立工作階段時,或擷取工作階段清單時取得工作階段 ID。
使用 Cloud Shell 建立工作階段時,系統會傳回類似以下的會話 ID:
In session: CgwKCmZhbGl1LXRlc3QQARokMDAzYjI0OWQtZ
API
如要透過 API 呼叫將 SQL 指令傳遞至工作階段,您必須在 API 呼叫中加入工作階段 ID。您可以在建立工作階段時,或擷取工作階段清單時取得工作階段 ID。
使用 API 呼叫建立工作階段時,回應中的工作階段 ID 會如下所示:
sessionId: CgwKCmZhbGl1LXRlc3QQARokMDAzYjI0OWQtZ
取得有效和無效工作階段清單
如要取得有效和無效工作階段的工作階段 ID,請按照下列步驟操作:
主控台
前往 Google Cloud 控制台的「BigQuery」頁面。
選取工作記錄類型:
- 如要顯示近期工作的資訊,請按一下「Personal history」(個人記錄)。
- 如要顯示專案中近期工作的相關資訊,請按一下「Project history」。
您可以在「Session ID」欄中查看工作的工作階段 ID。
SQL
如要取得最近三個工作階段的清單 (包括有效和已終止的工作階段),請在編輯器分頁中執行下列查詢:
前往 Google Cloud 控制台的「BigQuery」頁面。
在查詢編輯器中輸入以下陳述式:
SELECT session_id, MAX(creation_time) AS last_modified_time FROM
region-us
.INFORMATION_SCHEMA.VIEW WHERE session_id IS NOT NULL AND creation_time > TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 20 DAY) GROUP BY session_id ORDER BY last_modified_time DESC;請依指示取代下列項目:
VIEW
:INFORMATION_SCHEMA
檢視畫面:JOBS_BY_USER
:只會傳回目前使用者在目前專案中建立的工作SESSIONS_BY_USER
:只會傳回目前使用者在目前專案中建立的工作階段SESSIONS_BY_PROJECT
:傳回目前專案中的所有工作階段
按一下
「Run」。
如要進一步瞭解如何執行查詢,請參閱「執行互動式查詢」一文。
這項查詢會產生類似下列的結果:
+-------------------------------------------------------------------------+ | session_id | last_modified_time | +-------------------------------------------------------------------------+ | CgwKCmZhbGl1LXRlc3QQARokMGQ5YWWYzZmE0YjhkMDBm | 2021-06-01 23:04:26 | | CgwKCmZhbGl1LXRlc3QQARokMDAzYjI0OWQtZTczwZjA1NDc2 | 2021-05-30 22:43:02 | | CgwKCmZhbGl1LXRlc3QQY2MzLTg4ZDEtYzVhOWZiYmM5NzZk | 2021-04-07 22:31:21 | +-------------------------------------------------------------------------+
取得有效工作階段清單
如要取得過去 24 小時內未終止的有效工作階段清單,請執行下列查詢:
SELECT session_id, MAX(creation_time) AS last_modified_time FROM `region-us`.INFORMATION_SCHEMA.VIEW WHERE session_id IS NOT NULL AND creation_time > TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 1 DAY) AND is_active GROUP BY session_id ORDER BY last_modified_time DESC;
這項查詢會產生類似下列的結果:
+-------------------------------------------------------------------------+
| session_id | last_modified_time |
+-------------------------------------------------------------------------+
| CgwKCmZhbGl1LXRlc3QQARokMGQ5YWWYzZmE0YjhkMDBm | 2021-06-01 23:04:26 |
| CgwKCmZhbGl1LXRlc3QQARokMDAzYjI0OWQtZTczwZjA1NDc2 | 2021-05-30 22:43:02 |
+-------------------------------------------------------------------------+
更改下列內容:
- VIEW:
INFORMATION_SCHEMA
檢視畫面:JOBS_BY_USER
:只會傳回目前使用者在目前專案中建立的工作SESSIONS_BY_USER
:只會傳回目前使用者在目前專案中建立的工作階段SESSIONS_BY_PROJECT
:傳回目前專案中的所有工作階段