啟用 BigQuery 遷移作業的 SQL 翻譯功能

從資料倉儲遷移至 BigQuery 時,請使用 BigQuery SQL 翻譯器,將來源方言的 SQL 指令碼和查詢翻譯成 GoogleSQL。

BigQuery 提供下列 SQL 翻譯功能,做為 BigQuery 遷移服務的一部分:

建議您先使用 dwh-migration-dumper 工具從來源資料倉儲擷取 DDL 架構中繼資料,再翻譯來源 SQL。擷取的中繼資料可搭配 SQL 翻譯工具使用,提高 SQL 翻譯準確度。

本文檔向您展示了在使用任何 SQL 轉換器之前需要採取的步驟。本文也會說明 SQL 翻譯工具支援的 SQL 方言,以及支援 SQL 翻譯的區域。

啟用 SQL 翻譯

使用 SQL 轉換器翻譯 SQL 前,請先完成下列步驟。

啟用 BigQuery 遷移 API

如果您的 Google Cloud CLI 專案是在 2022 年 2 月 15 日之前建立的,請依照下列步驟啟用 BigQuery 遷移 API:

  1. 在 Google Cloud 控制台中,前往BigQuery 遷移 API頁面。

    前往 BigQuery Migration API

  2. 按一下「啟用」

新增必要權限

如要取得使用互動式翻譯器、Translation API 或批次 SQL 翻譯器建立翻譯工作所需的權限,請要求管理員在 parent 資源中授予您下列 IAM 角色:

  • 檢視與監控遷移作業:遷移工作流程檢視器 (roles/bigquerymigration.viewer)
  • 提交遷移工作: MigrationWorkflow 編輯者 (roles/bigquerymigration.editor)
  • 存取輸入和檔案的 Cloud Storage 值區: 儲存空間物件管理員 (roles/storage.objectAdmin) - 來源和目標 Cloud Storage 值區。

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

這些預先定義的角色具備使用互動式翻譯器、Translation API 或批次 SQL 翻譯器建立翻譯工作所需的權限。如要查看確切的必要權限,請展開「Required permissions」(必要權限) 部分:

所需權限

如要使用互動式翻譯器、Translation API 或批次 SQL 翻譯器建立翻譯工作,您必須具備下列權限:

  • bigquerymigration.workflows.create
  • bigquerymigration.workflows.get
  • bigquerymigration.workflows.list
  • bigquerymigration.workflows.delete
  • bigquerymigration.subtasks.get
  • bigquerymigration.subtasks.list
  • storage.objects.get
  • storage.objects.list
  • storage.objects.create

您或許還可透過自訂角色或其他預先定義的角色取得這些權限。

支援的 SQL 方言

BigQuery SQL 翻譯工具支援將下列 SQL 方言翻譯成 GoogleSQL:

  • Amazon Redshift SQL (Redshift2BigQuery_Translation)
  • Apache HiveQL 和 Beeline CLI (HiveQL2BigQuery_Translation)
  • IBM Netezza SQL 與 NZPLSQL (Netezza2BigQuery_Translation)
  • Snowflake SQL (Snowflake2BigQuery_Translation)
  • Teradata 和 Teradata Vantage (Teradata2BigQuery_Translation)
    • SQL
    • Basic Teradata Query (BTEQ)
    • Teradata Parallel Transport (TPT)

此外,預覽版也支援翻譯下列 SQL 方言:

  • Apache Impala SQL (Impala2BigQuery_Translation)
  • Apache Spark SQL (SparkSQL2BigQuery_Translation)
  • Azure Synapse T-SQL (AzureSynapse2BigQuery_Translation)
  • GoogleSQL、BigQuery (Bigquery2Bigquery_Translation)
  • Greenplum SQL (Greenplum2BigQuery_Translation)
  • IBM DB2 SQL (Db22BigQuery_Translation)
  • MySQL SQL (MySQL2BigQuery_Translation)
  • Oracle SQL、PL/SQL、Exadata (Oracle2BigQuery_Translation)
  • PostgreSQL SQL (Postgresql2BigQuery_Translation)
  • Trino 或 PrestoSQL (Presto2BigQuery_Translation)
  • SQL Server T-SQL (SQLServer2BigQuery_Translation)
  • SQLite(SQLite2BigQuery_Translation
  • Vertica SQL (Vertica2BigQuery_Translation)

位置

BigQuery SQL 翻譯工具可在下列處理位置使用:

地區說明 區域名稱 詳細資料
亞太地區
曼谷 asia-southeast3
德里 asia-south2
香港 asia-east2
雅加達 asia-southeast2
墨爾本 australia-southeast2
孟買 asia-south1
大阪 asia-northeast2
首爾 asia-northeast3
新加坡 asia-southeast1
雪梨 australia-southeast1
台灣 asia-east1
東京 asia-northeast1
歐洲
比利時 europe-west1 節能綠葉圖示 低二氧化碳排放
柏林 europe-west10
歐洲 (多區域) eu
芬蘭 europe-north1 節能綠葉圖示 低二氧化碳排放
法蘭克福 europe-west3
倫敦 europe-west2 節能綠葉圖示 低二氧化碳排放
馬德里 europe-southwest1 節能綠葉圖示 低二氧化碳排放
米蘭 europe-west8
荷蘭 europe-west4 節能綠葉圖示 低二氧化碳排放
巴黎 europe-west9 節能綠葉圖示 低二氧化碳排放
斯德哥爾摩 europe-north2 節能綠葉圖示 低二氧化碳排放
杜林 europe-west12
華沙 europe-central2
蘇黎世 europe-west6 節能綠葉圖示 低二氧化碳排放
美洲
俄亥俄州哥倫布 us-east5
達拉斯 us-south1 節能綠葉圖示 低二氧化碳排放
愛荷華州 us-central1 節能綠葉圖示 低二氧化碳排放
拉斯維加斯 us-west4
洛杉磯 us-west2
墨西哥 northamerica-south1
北維吉尼亞州 us-east4
奧勒岡州 us-west1 節能綠葉圖示 低二氧化碳排放
魁北克 northamerica-northeast1 節能綠葉圖示 低 CO2 區域
聖保羅 southamerica-east1 節能綠葉圖示 低二氧化碳排放
鹽湖城 us-west3
聖地亞哥 southamerica-west1 節能綠葉圖示 低二氧化碳排放
南卡羅來納州 us-east1
多倫多 northamerica-northeast2 節能綠葉圖示 低二氧化碳排放
美國 (多區域) us
非洲
約翰尼斯堡 africa-south1
MiddleEast
達曼 me-central2
杜哈 me-central1
以色列 me-west1