資料轉換簡介
本文說明在 BigQuery 資料表中轉換資料的各種方式。
如要進一步瞭解資料整合,請參閱載入、轉換及匯出資料簡介。
資料轉換方法
您可以使用下列方法轉換 BigQuery 中的資料:
- 使用資料操縱語言 (DML) 轉換 BigQuery 資料表中的資料。
- 使用具體化檢視區塊自動快取查詢結果,提升效能和效率。
- 使用持續查詢功能,即時分析傳入資料,並持續將輸出資料列插入 BigQuery 資料表,或匯出至 Pub/Sub 或 Bigtable。
- 使用 BigQuery 管道或 Dataform,在 BigQuery 中開發、測試、控管版本及排定管道。
- 使用資料準備功能,根據 AI 生成的轉換建議清理資料,以便進行分析。資料準備作業由 Dataform API 支援。
下表列出各轉換方法的不同特徵。
轉換方法 | 變身目標 | 定義方法 | 轉換頻率 |
---|---|---|---|
資料操縱語言 (DML) | 表格 (就地) | SQL DML | 使用者發起或排定時間 |
具體化檢視表 | 具體化檢視表 | SQL 查詢 | 自動或手動重新整理 |
持續查詢 | 資料表、Pub/Sub 主題、Bigtable 資料表 | 使用 EXPORT DATA 的 SQL 查詢 | 連續 |
Dataform | Table | Dataform 核心 (SQLX) | 已排定 (管道) |
BigQuery 管道 | Table | BigQuery 管道 | 已排定 (管道) |
資料準備 | Table | 視覺編輯器 | 已排定 |
您也可以查看 BigQuery 資料表的變更記錄,瞭解指定時間範圍內對資料表所做的轉換。
使用 DML 轉換資料
您可以使用資料操縱語言 (DML) 轉換 BigQuery 資料表中的資料。DML 陳述式是 GoogleSQL 查詢,可操縱現有表格資料,以新增或刪除資料列、修改現有資料列中的資料,或將資料與其他表格的值合併。分區資料表也支援 DML 轉換。
您可以同時執行多個 DML 陳述式,BigQuery 會將多個 DML 陳述式排入佇列,依序轉換資料。BigQuery 會根據轉換類型,管理並行 DML 陳述式的執行方式。
使用具體化檢視表轉換資料
具體化檢視表是預先運算的檢視表,會定期快取 SQL 查詢結果,以提高效能和效率。BigQuery 會運用具體化檢視表預先計算的結果,並盡可能只讀取基礎資料表的變更,以計算最新結果。
基礎資料表變更時,系統會在背景預先運算具體化檢視表。基本資料表中的任何增量資料變更都會自動新增至具體化檢視區塊,使用者無需採取任何動作。
使用持續查詢轉換資料
持續查詢 是會不斷執行的 SQL 陳述式,透過持續查詢,您可以即時分析 BigQuery 中的傳入資料。您可以將連續查詢產生的輸出資料列插入 BigQuery 資料表,或匯出至 Pub/Sub 或 Bigtable。
使用 Dataform 轉換資料
Dataform 可讓您在資料整合的擷取、載入和轉換 (ELT) 程序中,管理資料轉換作業。從來源系統擷取原始資料並載入 BigQuery 後,您可以使用 Dataform 將資料轉換成有條理、經過測試且附有說明文件的資料表套件。在 DML 中,您會採取命令式方法,明確告知 BigQuery 如何轉換資料;而在 Dataform 中,您會編寫宣告式陳述式,由 Dataform 判斷達成該狀態所需的轉換。
在 Dataform 中,您可以開發、測試及版本控管資料轉換的 SQL 工作流程,從資料來源宣告到輸出資料表、檢視區塊或具體化檢視區塊。您可以使用 Dataform Core 或純 JavaScript 開發 SQL 工作流程。Dataform Core 是開放原始碼的元語言,可透過 SQLX 和 JavaScript 擴充 SQL。您可以使用 Dataform Core 管理依附元件、設定自動資料品質測試,以及在程式碼中記錄資料表或資料欄說明。
Dataform 會將 SQL 工作流程程式碼儲存在存放區中,並使用 Git 追蹤檔案變更。Dataform 的開發工作區可讓您處理存放區內容,不會影響在同一存放區作業的其他使用者。您可以將 Dataform 存放區連結至第三方 Git 供應商,包括 Azure DevOps Services、Bitbucket、GitHub 和 GitLab。
您可以使用 Dataform 版本設定和工作流程設定,執行或排定 SQL 工作流程。或者,您也可以使用 Cloud Composer,或使用 Workflows 和 Cloud Scheduler 排定執行作業。執行期間,Dataform 會依據 SQL 工作流程中的物件依附元件順序,在 BigQuery 中執行 SQL 查詢。執行完畢後,您就可以在 BigQuery 中使用定義的資料表和檢視畫面進行分析。
如要進一步瞭解如何在 Dataform 中建立資料轉換 SQL 工作流程,請參閱「Dataform 總覽」和「Dataform 功能」。
使用 BigQuery 管道轉換資料
BigQuery 管道採用 Dataform 技術,可讓您在擷取、載入、轉換 (ELT) 或擷取、轉換、載入 (ETL) 程序中,建立及管理資料轉換。
您可以在 BigQuery Studio 中,以視覺化方式建立及管理 BigQuery pipeline。
如要進一步瞭解如何建立 BigQuery 管道,請參閱「建立管道」。
在 BigQuery 中準備資料
為減少資料準備作業的辛勞,BigQuery 可讓您使用 Gemini 生成的轉換建議來清理資料。BigQuery 的資料準備功能提供下列協助:
- 套用轉換和資料品質規則
- 標準化及豐富資料
- 自動建立結構定義對應
您可以在預覽資料中驗證結果,再對所有資料執行變更。
詳情請參閱 BigQuery 資料準備簡介。
後續步驟
- 如要進一步瞭解 DML,請參閱「使用資料操縱語言 (DML) 轉換資料」。
- 如要進一步瞭解 Dataform,請參閱「Dataform 總覽」。