本文說明如何使用 Dataform Core 宣告 BigQuery 資料來源。
您可以在 Dataform 中將任何 BigQuery 資料表類型宣告為資料來源。宣告 Dataform 外部的 BigQuery 資料來源後,您就能將這些資料來源視為 Dataform 物件。
聲明資料來源為選用功能,但如果您想執行下列操作,這項功能就很有用:
- 以與 Dataform 中任何其他資料表相同的方式,參照或解析已宣告的來源。
- 在視覺化 Dataform 圖表中查看已宣告的來源。
- 使用 Dataform 管理外部建立資料表的資料表層級和資料欄層級說明。
- 觸發工作流程調用,其中包含外部資料來源的所有依附元件。
您可以使用 JavaScript 或 SQLX 檔案宣告資料來源。在 JavaScript 檔案中,您可以為每個檔案宣告多個資料來源。在 SQLX 檔案中,每個檔案只能宣告一個資料來源。
事前準備
宣告資料來源前,請先在存放區中建立並初始化開發工作區。
必要的角色
如要取得宣告資料來源所需的權限,請要求管理員授予工作區的 Dataform 編輯者 (roles/dataform.editor
) 身分與存取權管理角色。如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和機構的存取權」。
為多個資料來源宣告建立 JavaScript 檔案
將資料來源宣告的 JavaScript 檔案儲存在 definitions/
目錄中。
如要在 definitions/
目錄中建立新的 JavaScript 檔案,請按照下列步驟操作:
前往 Google Cloud 控制台的「Dataform」頁面。
選取存放區。
選取開發工作區。
在「Files」(檔案) 窗格中,點按
definitions/
旁的「更多」選單。點選「建立檔案」。
在「建立新檔案」窗格中,執行下列步驟:
在「Add a file path」(新增檔案路徑) 欄位中,在
definitions/
後方輸入檔案名稱,然後輸入.js
。例如:definitions/declarations.js
。檔名只能包含數字、字母、連字號和底線。
點選「建立檔案」。
在 JavaScript 檔案中新增宣告
每個 JavaScript 檔案可宣告多個資料來源。如要新增聲明,請按照下列步驟操作:
- 在開發工作區的「Files」(檔案) 窗格中,按一下 JavaScript 檔案,宣告資料來源。
在檔案中,為每個資料來源新增下列程式碼片段:
declare({ database: "DATABASE_PROJECT_ID", schema: "BIGQUERY_SCHEMA", name: "RELATION_NAME", });
更改下列內容:
DATABASE_PROJECT_ID
:包含資料來源的專案 ID。BIGQUERY_SCHEMA
:資料來源所在的 BigQuery 資料集。RELATION_NAME
:您要用做資料來源的資料表或檢視區塊名稱。您稍後可以在 Dataform 中使用該名稱參照資料來源。
建立 SQLX 檔案以用於資料來源宣告
將資料來源宣告的 SQLX 檔案儲存在 definitions/
目錄中。
如要在 definitions/
目錄中建立新的 SQLX 檔案,請按照下列步驟操作:
前往 Google Cloud 控制台的「Dataform」頁面。
選取存放區。
選取開發工作區。
在「Files」(檔案) 窗格中,點按
definitions/
旁的「更多」選單。點選「建立檔案」。
在「建立新檔案」窗格中,執行下列步驟:
在「Add a file path」(新增檔案路徑) 欄位中,在
definitions/
後方輸入檔案名稱,然後輸入.sqlx
。例如:definitions/dataset-declaration.sqlx
。檔名只能包含數字、字母、連字號和底線。
點選「建立檔案」。
宣告資料來源
每個 SQLX 宣告檔案可宣告一個資料來源。如要在 SQLX 檔案的設定區塊中宣告資料來源,請按照下列步驟操作:
- 在開發工作區的「Files」(檔案) 窗格中,按一下 SQLX 檔案進行資料來源宣告。
在檔案中輸入下列程式碼片段:
config { type: "declaration", database: "DATABASE", schema: "SCHEMA", name: "NAME", }
更改下列內容:
DATABASE
:包含資料來源的專案 ID。SCHEMA
:資料來源所在的 BigQuery 資料集。NAME
:您要用做資料來源的資料表或檢視區塊名稱。您稍後可以在 Dataform 中使用該名稱參照資料來源。
選用:按一下「格式」。
下列程式碼範例會將 bigquery-public-data
專案的 samples
資料集中的 shakespeare
資料表宣告為資料來源:
config {
type: "declaration",
database: "bigquery-public-data",
schema: "samples",
name: "shakespeare",
}
後續步驟
- 如要瞭解如何使用 JavaScript 宣告資料來源,請參閱「完全使用 JavaScript 建立工作流程」。
- 如要瞭解如何定義資料表,請參閱「建立資料表」。
- 如要瞭解如何設定資料表分區和叢集,請參閱「建立資料表分區和叢集」一文。