排定正式環境執行作業

本快速入門導覽課程會逐步說明如何在 Dataform 中排定正式環境執行作業:

事前準備

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. Enable the BigQuery and Dataform APIs.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the APIs

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  6. Verify that billing is enabled for your Google Cloud project.

  7. Enable the BigQuery and Dataform APIs.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the APIs

  8. 此外,請選取或建立自訂服務帳戶,在 BigQuery 中執行工作流程。

    必要的角色

    如要取得執行本教學課程中所有工作所需的權限,請要求管理員授予您下列 IAM 角色:

    如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。

    您或許也能透過自訂角色或其他預先定義的角色,取得必要權限。

    授予必要角色

    如要在 BigQuery 中執行工作流程,可以使用自訂服務帳戶或 Google 帳戶 (搶先版)。不過,排定執行的作業預設會使用自訂服務帳戶憑證。建議不要在排定執行的作業中使用 Google 帳戶使用者帳戶憑證。

    如要在 BigQuery 中執行工作流程,自訂服務帳戶必須具備下列必要角色:

    • BigQuery 資料編輯者 (roles/bigquery.dataEditor) 在 Dataform 需要讀取和寫入存取權的專案中,通常包括代管 Dataform 存放區的專案。
    • Dataform 需要對專案擁有唯讀存取權,因此請在這些專案中授予「BigQuery 資料檢視者」(roles/bigquery.dataViewer) 角色。
    • BigQuery Job User (roles/bigquery.jobUser) 在代管 Dataform 存放區的專案中。

    如要讓 Dataform 使用自訂服務帳戶,預設的 Dataform 服務代理程式必須具備自訂服務帳戶資源的下列角色:

    如要授予這些角色,請按照下列步驟操作:

    1. 前往 Google Cloud 控制台的「IAM」(身分與存取權管理) 頁面。

      前往「IAM」(身分與存取權管理) 頁面

    2. 按一下「授予存取權」

    3. 在「新增主體」欄位中,輸入自訂服務帳戶 ID。

    4. 在「Select a role」(選取角色) 選單中,使用「Add another role」(新增其他角色) 逐一選取下列角色:

      • BigQuery 資料編輯者
      • BigQuery 資料檢視者
      • BigQuery 工作使用者
    5. 按一下 [儲存]

    6. 前往 Google Cloud 控制台的「Service accounts」(服務帳戶) 頁面。

      前往「Service accounts」(服務帳戶)

    7. 選取自訂服務帳戶。

    8. 前往「具備存取權的主體」,然後點選「授予存取權」

    9. 在「新增主體」欄位中,輸入預設的 Dataform 服務代理程式 ID。

      預設 Dataform 服務代理程式 ID 的格式如下:

      service-PROJECT_NUMBER@gcp-sa-dataform.iam.gserviceaccount.com
      
    10. 在「Select a role」清單中,新增下列角色:

      • 服務帳戶使用者
      • 服務帳戶憑證建立者
    11. 按一下 [儲存]

    建立 Dataform 存放區

    1. 前往 Google Cloud 控制台的「Dataform」頁面。

      前往 Dataform

    2. 按一下 「建立存放區」

    3. 在「建立存放區」頁面中執行下列操作:

      1. 在「Repository ID」(存放區 ID) 欄位中輸入 quickstart-production

      2. 在「Region」(區域) 清單中選取「europe-west4」。

      3. 在「服務帳戶」欄位中,按一下「手動輸入」,然後輸入自訂服務帳戶的名稱。請務必在這個欄位中輸入自訂服務帳戶。

      4. 點選「建立」

    4. 點選「前往存放區」

    建立發布版本設定和工作流程設定

    如要建立 quickstart-production 存放區的正式環境編譯結果,並安排執行 production 資料表,請按照下列步驟操作:

    1. 前往 Google Cloud 控制台的「Dataform」頁面。

      前往 Dataform

    2. 按一下「quickstart-production」。

    3. 依序點選「發布與排程」和「建立正式版本」

    4. 在「Create release configuration」(建立發布設定) 窗格中,進行下列設定:

      1. 在「Release ID」(發布版本 ID) 欄位中輸入 production
      2. 保留「Git commitish」(Git 修訂版本) 欄位的預設值 main
      3. 在「排程頻率」部分,選取「重複」選單中的「自訂」
      4. 在「Custom schedule」(自訂排程) 欄位中輸入 0 16 * * *
      5. 在「Timezone」(時區) 選單中,選取 UTC+1 時區,例如「Central European Standard Time (CET)」(中歐標準時間 (CET))

        每天下午 4 點 (UTC+1),Dataform 會編譯 quickstart-production 存放區,並套用此版本設定中設定的編譯設定,建立 production 編譯結果。

    5. 點選「建立」

      production 版本設定會在每天下午 4:00 (UTC+1) 建立整個 quickstart-production 存放區的編譯結果。

    6. 確認你位於「發行與排程」分頁。前往「Workflow configurations」(工作流程設定) 部分,然後按一下「Create」(建立)

    7. 在「Create workflow configuration」(建立工作流程設定) 窗格中,完成下列設定:

      1. 在「Configuration ID」(設定 ID) 欄位中輸入 production
      2. 在「Release configuration」(版本設定) 選單中,選取 production
      3. 在「排程頻率」部分,選取「重複」選單中的「自訂」
      4. 在「Custom schedule」(自訂排程) 欄位中輸入 0 17 * * *
      5. 在「Timezone」(時區) 選單中,選取 UTC+1 時區,例如「Central European Standard Time (CET)」(中歐標準時間 (CET))

        每天下午 5 點 (UTC+1),Dataform 會執行 quickstart-production 存放區的最新production編譯結果。

      6. 按一下「All actions」(所有動作)

        Dataform 會在 production 編譯結果中執行所有工作流程動作。

    8. 點選「建立」

      production 工作流程設定會在每天下午 5:00 (UTC+1),執行正式版本設定建立的所有最新編譯結果。

    查看過去的 production 編譯結果

    如要查看過去排定的 production 編譯結果,請按照下列步驟操作:

    1. 前往 Google Cloud 控制台的「Dataform」頁面。

      前往 Dataform

    2. 選取 quickstart-production 存放區。

    3. 按一下「發布與排程」

    4. 在「Release configurations」(版本設定) 部分中,按一下 production

    查看過去的 production 工作流程執行作業

    如要查看過去的 production 工作流程執行作業,請按照下列步驟操作:

    1. 前往 Google Cloud 控制台的「Dataform」頁面。

      前往 Dataform

    2. 選取 quickstart-production 存放區。

    3. 按一下「Workflow Execution Logs」(工作流程執行記錄)

    4. 選取工作流程執行作業,即可查看更詳細的資訊,包括每個動作的狀態和任何記錄。

    清除所用資源

    為了避免系統向您的 Google Cloud 帳戶收取本頁面所用資源的費用,請按照下列步驟操作。

    刪除在 BigQuery 中建立的資料集

    如要避免系統依 BigQuery 資產收取費用,請按照下列步驟刪除名為 dataform_production 的資料集:

    1. 前往 Google Cloud 控制台的「BigQuery」頁面。

      前往「BigQuery」

    2. 在「Explorer」面板中展開專案,然後選取 dataform_production

    3. 按一下 「Actions」(動作) 選單,然後選取「Delete」(刪除)。

    4. 在「Delete dataset」(刪除資料集) 對話方塊中輸入「delete」,然後按一下「Delete」(刪除)

    刪除 Dataform 版本設定

    建立 Dataform 版本設定不會產生任何費用。不過,如果您想刪除 production 版本設定,請按照下列步驟操作:

    1. 前往 Google Cloud 控制台的「Dataform」頁面。

      前往 Dataform

    2. 按一下「quickstart-production」。

    3. 按一下「發布與排程」,然後前往「版本設定」部分。

    4. production 發布設定中,按一下 「More」(更多) 選單,然後點選「Delete」(刪除)

    5. 在「刪除發布版本設定」對話方塊中,按一下「刪除」

    刪除 Dataform 工作流程設定

    如要避免系統依 BigQuery 資產收取費用,請按照下列步驟刪除 Dataform production 工作流程設定:

    1. 前往 Google Cloud 控制台的「Dataform」頁面。

      前往 Dataform

    2. 按一下「quickstart-production」。

    3. 按一下「發布與排程」,然後前往「工作流程設定」部分。

    4. production 工作流程設定中,按一下 「More」(更多) 選單,然後按一下「Delete」(刪除)

    5. 在「刪除發布版本設定」對話方塊中,按一下「刪除」

    刪除 Dataform 存放區

    建立 Dataform 存放區不會產生任何費用。不過,如果您想刪除存放區和當中所有內容,可以按照下列步驟操作:

    1. 前往 Google Cloud 控制台的「Dataform」頁面。

      前往 Dataform

    2. quickstart-production 旁邊,按一下 「More」(更多) 選單,然後選取「Delete」(刪除)

    3. 在「Delete repository」(刪除存放區) 視窗中,輸入存放區名稱來確認刪除。

    4. 按一下「Delete」(刪除) 確認操作。

    後續步驟