排定管道
本文說明如何排定 BigQuery 管道的執行時間,包括如何排定管道執行時間,以及檢查排定的管道執行作業。
管道是由 Dataform 支援。 每個管道排程都會使用 Google 帳戶使用者憑證或Dataform 服務帳戶執行,您可以在設定排程時選取要使用的帳戶。
您對管道所做的變更會自動儲存,但只有您和專案中獲派 Dataform 管理員角色的使用者可以存取。如要使用新版管道更新排程,請部署管道。 部署後,排程會更新為使用目前的管道版本。排程一律會執行最新部署的版本。
含有 Notebook 的管道排程會使用預設執行階段規格。在排定執行的管道中,如果包含筆記本,BigQuery 會將筆記本輸出內容寫入排程建立期間選取的 Cloud Storage 值區。
事前準備
請先建立管道。
啟用管道排程
如要排定 pipeline 執行時間,請將下列角色授予您打算用於 pipeline 排程的服務帳戶:
- 服務帳戶使用者 (
roles/iam.serviceAccountUser
) - 按照「為服務帳戶授予單一角色」一文的說明,將服務帳戶新增為自身的主體。換句話說,請將服務帳戶新增為相同服務帳戶的主體。然後將「服務帳戶使用者」角色授予這個主體。
如果管道包含 SQL 查詢,您必須將下列角色授予打算用於管道排程的服務帳戶:
- BigQuery 作業使用者 (
roles/bigquery.jobUser
) - 按照「在專案中授予單一角色」一文的說明,在管道讀取資料的專案中,將 BigQuery 工作使用者角色授予服務帳戶。
- BigQuery 資料檢視器 (
roles/bigquery.dataViewer
) - 按照「在專案中授予單一角色」一文的說明,在管道讀取資料的專案中,將 BigQuery 資料檢視者角色授予服務帳戶。
- BigQuery 資料編輯器 (
roles/bigquery.dataEditor
) - 按照「在專案中授予單一角色」一文的說明,在管道寫入資料的專案中,將 BigQuery 資料編輯者角色授予服務帳戶。
如果管道包含筆記本,您必須將下列角色授予打算用於管道排程的服務帳戶:
- Notebook Executor User (
roles/aiplatform.notebookExecutorUser
) - 按照「授予專案的單一角色」一文的說明,在所選專案中,將 Notebook Executor User 角色授予服務帳戶。
- 儲存空間管理員 (
roles/storage.admin
) - 按照「將主體新增至 bucket 層級政策」一文的說明,將服務帳戶新增為主體,加入您打算用來儲存筆記本輸出內容的 Cloud Storage bucket,並將儲存空間管理員角色授予這個主體。
此外,您必須將下列角色授予預設 Dataform 服務帳戶:
- 服務帳戶憑證建立者 (
roles/iam.serviceAccountTokenCreator
) - 按照「授予服務帳戶權限,允許建立權杖」一文的說明,將預設 Dataform 服務帳戶新增為服務帳戶的主體,並將「服務帳戶權杖建立者」角色授予這個主體。
如要進一步瞭解 Dataform 中的服務帳戶,請參閱「關於 Dataform 中的服務帳戶」。
必要的角色
如要取得管理 pipeline 的必要權限,請要求管理員授予下列 IAM 角色:
-
刪除管道:
在管道上點選「Dataform 管理員」 (
roles/dataform.Admin
) -
建立、編輯、執行及刪除管道排程:
Dataform 管理員 (
roles/dataform.Admin
) 在管道上 -
查看及執行 pipeline:
專案的 Dataform 檢視者 (
roles/dataform.Viewer
) -
查看管道排程:
專案的 Dataform 編輯器 (
roles/dataform.Editor
)
如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和機構的存取權」。
如要進一步瞭解 Dataform IAM,請參閱「使用 IAM 控管存取權」。
如要在排定管道時使用 Colab 筆記本執行階段範本,您需要「筆記本執行階段使用者」(roles/aiplatform.notebookRuntimeUser
) 角色。
建立管道排程
如要建立管道排程,請按照下列步驟操作:
「Explorer」窗格
前往 Google Cloud 控制台的「BigQuery」頁面。
在「Explorer」窗格中,展開專案和「Pipelines」資料夾,然後選取管道。
按一下「Schedule」(排程)。
在「排定管道」窗格的「排定名稱」欄位中,輸入排定名稱。
在「Authentication」(驗證) 區段中,使用 Google 帳戶使用者憑證或服務帳戶授權管道。
- 如要使用 Google 帳戶使用者憑證 (預覽),請選取「以我的使用者憑證執行」。
- 如要使用服務帳戶,請選取「以所選服務帳戶執行」,然後選取服務帳戶。
如果管道包含筆記本,請在「筆記本選項」部分,選取「執行階段範本」欄位中的 Colab 筆記本執行階段範本,或預設執行階段規格。如要進一步瞭解如何建立 Colab 筆記本執行階段範本,請參閱「建立執行階段範本」。
如果管道包含筆記本,請在「Notebook options」(筆記本選項) 部分的「Cloud Storage bucket」(Cloud Storage 值區) 欄位中,按一下「Browse」(瀏覽),然後選取或建立 Cloud Storage 值區,用於儲存管道中筆記本的輸出內容。
您選取的服務帳戶必須獲得所選儲存空間的 Storage 管理員 IAM 角色。詳情請參閱「啟用管道排程」。
在「排程頻率」部分執行下列操作:
- 在「Repeats」(重複時間間隔) 選單中,選取排定管道執行的頻率。
- 在「At time」(時間) 欄位中,輸入排定管道執行的時間。
- 在「時區」選單中,選取時間表的時區。
按一下「建立時間表」。如果驗證方法選取「使用我的使用者憑證執行」,您必須授權 Google 帳戶 (預覽)。
建立排程時,系統會自動部署管道的目前版本。如要使用新版 pipeline 更新排程,請部署 pipeline。
系統會以所選時間和頻率,執行最新部署的 pipeline 版本。
「排定時間」頁面
前往 Google Cloud 控制台的「Scheduling」頁面。
按一下「建立」,然後從選單中選取「管線時間表」。
在「Schedule pipeline」(排程 pipeline) 窗格中,選取要排程的 pipeline。
在「排程名稱」欄位中,輸入排程名稱。
在「Authentication」(驗證) 區段中,使用 Google 帳戶使用者憑證或服務帳戶授權管道。
- 如要使用 Google 帳戶使用者憑證 (預覽),請選取「以我的使用者憑證執行」。
- 如要使用服務帳戶,請選取「以所選服務帳戶執行」,然後選取服務帳戶。
如果管道包含筆記本,請在「筆記本選項」部分,選取「執行階段範本」欄位中的 Colab 筆記本執行階段範本,或預設執行階段規格。如要進一步瞭解如何建立 Colab 筆記本執行階段範本,請參閱「建立執行階段範本」。
如果管道包含 Notebook,請在「Cloud Storage bucket」(Cloud Storage 值區) 欄位中,按一下「Browse」(瀏覽),然後選取或建立 Cloud Storage bucket,用於儲存管道中 Notebook 的輸出內容。
您選取的服務帳戶必須獲得所選儲存空間的 Storage 管理員 IAM 角色。詳情請參閱「啟用管道排程」。
在「排程頻率」部分執行下列操作:
- 在「Repeats」(重複時間間隔) 選單中,選取排定管道執行的頻率。
- 在「At time」(時間) 欄位中,輸入排定管道執行的時間。
- 在「時區」選單中,選取時間表的時區。
按一下「建立時間表」。如果驗證方法選取「使用我的使用者憑證執行」,您必須授權 Google 帳戶 (預覽)。
授權給您的 Google 帳戶
如要使用Google 帳戶使用者憑證驗證資源,您必須手動授予 BigQuery 管道權限,才能取得 Google 帳戶的存取權杖,並代表您存取來源資料。您可以使用 OAuth 對話方塊介面手動核准。
您只需要授予 BigQuery 管道一次權限。
如要撤銷授予的權限,請按照下列步驟操作:
- 前往 Google 帳戶頁面。
- 按一下「BigQuery Pipelines」。
- 按一下 [移除存取權]。
如果新的 Google 帳戶擁有者從未建立過時間表,更新憑證以變更管道時間表擁有者時,也需要手動核准。
如果管道包含筆記本,您也必須手動授予 Colab Enterprise 權限,才能取得 Google 帳戶的存取權權杖,並以您的名義存取來源資料。你只需要授予一次權限。您可以在 Google 帳戶頁面撤銷這項權限。
部署管道
部署管道時,系統會使用管道的目前版本更新排程。排程會執行最新部署的 pipeline 版本。
如要部署管道,請按照下列步驟操作:
前往 Google Cloud 控制台的「BigQuery」頁面。
在「Explorer」窗格中,展開專案和「Pipelines」資料夾,然後選取管道。
按一下 [Deploy] (部署)。
系統會使用目前版本的管道更新對應的排程。 系統會在排定的時間執行最新部署的 pipeline 版本。
停用時間表
如要暫停所選 pipeline 的排定執行作業,但不想刪除排程,可以停用排程。
如要停用所選管道的排程,請按照下列步驟操作:
「Explorer」窗格
前往 Google Cloud 控制台的「BigQuery」頁面。
在「Explorer」窗格中,展開專案和「Pipelines」資料夾,然後選取管道。
按一下「查看時間表」。
在「時間表詳細資料」表格的「時間表狀態」列中,按一下「時間表已啟用」切換鈕。
「排定時間」頁面
前往 Google Cloud 控制台的「Scheduling」頁面。
按一下所選管道的名稱。
在「Schedule details」(排程詳細資料) 頁面中,按一下「Disable」(停用)。
啟用時間表
如要繼續執行已停用的管道排程,請按照下列步驟操作:
「Explorer」窗格
前往 Google Cloud 控制台的「BigQuery」頁面。
在「Explorer」窗格中,展開專案和「Pipelines」資料夾,然後選取管道。
按一下「查看時間表」。
在「時間表詳細資料」表格的「時間表狀態」列中,按一下「時間表已停用」切換鈕。
「排定時間」頁面
前往 Google Cloud 控制台的「Scheduling」頁面。
按一下所選管道的名稱。
在「時間表詳細資料」頁面中,按一下「啟用」。
手動執行已部署的管道
手動執行已部署的管道時,BigQuery 會執行一次已部署的管道,與排程無關。
如要手動執行已部署的管道,請按照下列步驟操作:
前往 Google Cloud 控制台的「Scheduling」頁面。
按一下所選管道排程的名稱。
在「排程詳細資料」頁面中,按一下「執行」。
查看所有管道排程
如要查看專案中的所有管道排程,請按照下列步驟操作: Google Cloud
前往 Google Cloud 控制台的「Scheduling」頁面。
選用:如要顯示其他資料欄的管道時間表詳細資料,請按一下「資料欄顯示選項」
,然後選取資料欄並按一下「確定」。
查看管道排程詳細資料
如要查看所選管道排程的詳細資料,請按照下列步驟操作:
「Explorer」窗格
前往 Google Cloud 控制台的「BigQuery」頁面。
在「Explorer」窗格中,展開專案和「Pipelines」資料夾,然後選取管道。
按一下「查看時間表」。
「排定時間」頁面
前往 Google Cloud 控制台的「Scheduling」頁面。
按一下所選管道排程的名稱。
查看過去的排程執行作業
如要查看所選管道排程的過往執行記錄,請按照下列步驟操作:
「Explorer」窗格
前往 Google Cloud 控制台的「BigQuery」頁面。
在「Explorer」窗格中,展開專案和「Pipelines」資料夾,然後選取管道。
按一下「執行」。
選用:如要重新整理過往執行記錄清單,請按一下「重新整理」。
「排定時間」頁面
前往 Google Cloud 控制台的「Scheduling」頁面。
按一下所選管道的名稱。
在「排程詳細資料」頁面的「過去的執行作業」部分,檢查過去的執行作業。
選用:如要重新整理過往執行記錄清單,請按一下「重新整理」。
編輯 pipeline 排程
如要編輯管道排程,請按照下列步驟操作:
「Explorer」窗格
前往 Google Cloud 控制台的「BigQuery」頁面。
在「Explorer」窗格中,展開專案和「Pipelines」資料夾,然後選取管道。
按一下「查看時間表」,然後按一下「編輯」。
在「排定管道」對話方塊中編輯排程,然後按一下「更新排程」。
「排定時間」頁面
前往 Google Cloud 控制台的「Scheduling」頁面。
按一下所選管道的名稱。
在「排程詳細資料」頁面中,按一下「編輯」。
按一下「查看時間表」,然後按一下「編輯」。
在「排定管道」對話方塊中編輯排程,然後按一下「更新排程」。
刪除管道排程
如要永久刪除管道排程,請按照下列步驟操作:
前往 Google Cloud 控制台的「Scheduling」頁面。
執行下列其中一項操作:
按一下所選管道排程的名稱,然後在「排程詳細資料」頁面中,按一下「刪除」。
在包含所選管道排程的資料列中,按一下「Actions」(動作) 欄中的「View actions」(查看動作)
,然後按一下「Delete」(刪除)。
在隨即顯示的對話方塊中,按一下「刪除」。
後續步驟
- 進一步瞭解 BigQuery 中的管道。
- 瞭解如何建立管道。