遷移評估
您可以使用 BigQuery 遷移評估功能,規劃及查看將現有資料倉儲遷移至 BigQuery 的作業。您可以執行 BigQuery 遷移評估,產生報表來評估在 BigQuery 中儲存資料的成本,瞭解 BigQuery 如何最佳化現有工作負載以節省成本,並準備遷移計畫,概略說明將資料倉儲遷移至 BigQuery 所需的時間和精力。
本文說明如何使用 BigQuery 遷移評估工具,以及查看評估結果的不同方式。本文件適用於熟悉 Google Cloud 控制台和批次 SQL 翻譯器的使用者。
事前準備
如要準備及執行 BigQuery 遷移評估,請按照下列步驟操作:
使用
dwh-migration-dumper
工具從資料倉儲中擷取中繼資料和查詢記錄。將中繼資料和查詢記錄檔上傳至 Cloud Storage 值區。
選用:查詢評估結果,找出詳細或特定的評估資訊。
從資料倉儲中擷取中繼資料和查詢記錄
您必須提供中繼資料和查詢記錄,才能準備含有最佳化建議的評估報告。
如要擷取執行評估所需的中繼資料和查詢記錄,請選取資料倉儲:
Teradata
需求條件
- 已連結至來源 Teradata 資料倉儲的機器 (支援 Teradata 15 以上版本)
- Google Cloud 具有 Cloud Storage 值區的帳戶,用於儲存資料
- 用於儲存結果的空白 BigQuery 資料集
- 資料集的讀取權限,以便查看結果
- 建議:使用擷取工具存取系統資料表時,應具備來源資料庫的管理員層級存取權
需求:啟用記錄功能
dwh-migration-dumper
工具會擷取三種類型的記錄:查詢記錄、公用程序記錄和資源使用量記錄。您必須為下列記錄類型啟用記錄功能,才能查看更詳盡的洞察資料:
- 查詢記錄:從檢視畫面
dbc.QryLogV
和資料表dbc.DBQLSqlTbl
擷取。指定WITH SQL
選項,即可啟用記錄功能。 - 公用程式記錄:從
dbc.DBQLUtilityTbl
表格中擷取。指定WITH UTILITYINFO
選項,啟用記錄功能。 - 資源使用量記錄:從
dbc.ResUsageScpu
和dbc.ResUsageSpma
表格擷取。為這兩個資料表啟用 RSS 記錄功能。
執行 dwh-migration-dumper
工具
下載 SHA256SUMS.txt
檔案,然後執行下列指令,確認 ZIP 正確無誤:
Bash
sha256sum --check SHA256SUMS.txt
Windows PowerShell
(Get-FileHash RELEASE_ZIP_FILENAME).Hash -eq ((Get-Content SHA256SUMS.txt) -Split " ")[0]
將 RELEASE_ZIP_FILENAME
替換為 dwh-migration-dumper
指令列擷取工具版本的下載 ZIP 檔案名稱,例如 dwh-migration-tools-v1.0.52.zip
True
結果確認總和檢查碼驗證成功。
False
結果表示驗證錯誤。請確認總和檢查碼和 ZIP 檔案是從相同的版本下載,並放在相同的目錄中。
如要進一步瞭解如何設定及使用擷取工具,請參閱「產生翻譯和評估的中繼資料」。
使用擷取工具,從 Teradata 資料倉儲中擷取記錄和中繼資料,並儲存為兩個 ZIP 檔案。請在可存取來源資料倉儲的電腦上執行下列指令,產生檔案。
產生中繼資料 ZIP 檔案:
dwh-migration-dumper \ --connector teradata \ --database DATABASES \ --driver path/terajdbc4.jar \ --host HOST \ --assessment \ --user USER \ --password PASSWORD
產生包含查詢記錄的 ZIP 檔案:
dwh-migration-dumper \ --connector teradata-logs \ --driver path/terajdbc4.jar \ --host HOST \ --assessment \ --user USER \ --password PASSWORD
更改下列內容:
DATABASES
:以逗號分隔的資料庫名稱清單,用於擷取資料庫。如未提供,系統會擷取所有資料庫。PATH
:要用於此連線的驅動程式 JAR 檔案的絕對或相對路徑VERSION
:驅動程式版本HOST
:主機位址USER
:用於資料庫連線的使用者名稱PASSWORD
:用於資料庫連線的密碼如果留空,系統會提示使用者輸入密碼。
teradata
連接器只能使用 --database
旗標。這個標記可讓您擷取一或多個資料庫的中繼資料。使用 teradata-logs
連接器擷取查詢記錄時,無法使用 --database
旗標。系統一律會為所有資料庫擷取查詢記錄。
根據預設,查詢記錄會從檢視表 dbc.QryLogV
和資料表 dbc.DBQLSqlTbl
中擷取。如果您需要從其他位置擷取查詢記錄,可以使用 -Dteradata-logs.query-logs-table
和 -Dteradata-logs.sql-logs-table
標記指定資料表或檢視表的名稱。
根據預設,系統會從資料表 dbc.DBQLUtilityTbl
擷取公用程式記錄。如果您需要從其他位置擷取公用程式記錄,可以使用 -Dteradata-logs.utility-logs-table
標記指定資料表名稱。
根據預設,系統會從 dbc.ResUsageScpu
和 dbc.ResUsageSpma
資料表擷取資源使用量記錄。如果您需要從其他位置擷取資源用量記錄,可以使用 -Dteradata-logs.res-usage-scpu-table
和 -Dteradata-logs.res-usage-spma-table
旗標指定資料表名稱。
例如:
Bash
dwh-migration-dumper \ --connector teradata-logs \ --driver path/terajdbc4.jar \ --host HOST \ --assessment \ --user USER \ --password PASSWORD \ -Dteradata-logs.query-logs-table=pdcrdata.QryLogV_hst \ -Dteradata-logs.sql-logs-table=pdcrdata.DBQLSqlTbl_hst \ -Dteradata-logs.log-date-column=LogDate \ -Dteradata-logs.utility-logs-table=pdcrdata.DBQLUtilityTbl_hst \ -Dteradata-logs.res-usage-scpu-table=pdcrdata.ResUsageScpu_hst \ -Dteradata-logs.res-usage-spma-table=pdcrdata.ResUsageSpma_hst
Windows PowerShell
dwh-migration-dumper ` --connector teradata-logs ` --driver path\terajdbc4.jar ` --host HOST ` --assessment ` --user USER ` --password PASSWORD ` "-Dteradata-logs.query-logs-table=pdcrdata.QryLogV_hst" ` "-Dteradata-logs.sql-logs-table=pdcrdata.DBQLSqlTbl_hst" ` "-Dteradata-logs.log-date-column=LogDate" ` "-Dteradata-logs.utility-logs-table=pdcrdata.DBQLUtilityTbl_hst" ` "-Dteradata-logs.res-usage-scpu-table=pdcrdata.ResUsageScpu_hst" ` "-Dteradata-logs.res-usage-spma-table=pdcrdata.ResUsageSpma_hst"
根據預設,dwh-migration-dumper
工具會擷取過去七天的查詢記錄。Google 建議您提供至少兩週的查詢記錄,以便查看更詳盡的洞察資料。您可以使用 --query-log-start
和 --query-log-end
標記指定自訂時間範圍。例如:
dwh-migration-dumper \ --connector teradata-logs \ --driver path/terajdbc4.jar \ --host HOST \ --assessment \ --user USER \ --password PASSWORD \ --query-log-start "2023-01-01 00:00:00" \ --query-log-end "2023-01-15 00:00:00"
您也可以產生多個 ZIP 檔案,其中包含涵蓋不同期間的查詢記錄,並提供所有檔案供評估。
Redshift
需求條件
- 已連結至來源 Amazon Redshift 資料倉儲的機器
- Google Cloud 具有 Cloud Storage 值區的帳戶,用於儲存資料
- 用於儲存結果的空白 BigQuery 資料集
- 資料集的讀取權限,以便查看結果
- 建議:使用擷取工具存取系統表時,超級使用者可存取資料庫
執行 dwh-migration-dumper
工具
下載 dwh-migration-dumper
指令列擷取工具。
請下載 SHA256SUMS.txt
檔案,然後執行下列指令,確認 ZIP 正確無誤:
Bash
sha256sum --check SHA256SUMS.txt
Windows PowerShell
(Get-FileHash RELEASE_ZIP_FILENAME).Hash -eq ((Get-Content SHA256SUMS.txt) -Split " ")[0]
將 RELEASE_ZIP_FILENAME
替換為 dwh-migration-dumper
指令列擷取工具版本的下載 ZIP 檔案名稱,例如 dwh-migration-tools-v1.0.52.zip
True
結果確認總和檢查碼驗證成功。
False
結果表示驗證錯誤。請確認總和檢查碼和 ZIP 檔案是從相同的版本下載,並放在相同的目錄中。
如要進一步瞭解如何使用 dwh-migration-dumper
工具,請參閱「產生中繼資料」頁面。
使用 dwh-migration-dumper
工具,從 Amazon Redshift 資料倉儲中擷取記錄和中繼資料,並儲存為兩個 ZIP 檔案。請在可存取來源資料倉儲的電腦上執行下列指令,產生檔案。
產生中繼資料 ZIP 檔案:
dwh-migration-dumper \ --connector redshift \ --database DATABASE \ --driver PATH/redshift-jdbc42-VERSION.jar \ --host host.region.redshift.amazonaws.com \ --assessment \ --user USER \ --iam-profile IAM_PROFILE_NAME
產生包含查詢記錄的 ZIP 檔案:
dwh-migration-dumper \ --connector redshift-raw-logs \ --database DATABASE \ --driver PATH/redshift-jdbc42-VERSION.jar \ --host host.region.redshift.amazonaws.com \ --assessment \ --user USER \ --iam-profile IAM_PROFILE_NAME
更改下列內容:
DATABASE
:要連線的資料庫名稱PATH
:要用於此連線的驅動程式 JAR 檔案的絕對或相對路徑VERSION
:驅動程式版本USER
:用於資料庫連線的使用者名稱IAM_PROFILE_NAME
:Amazon Redshift IAM 設定檔名稱。必須提供此值,才能驗證 Amazon Redshift 和存取 AWS API。如要取得 Amazon Redshift 叢集的說明,請使用 AWS API。
根據預設,Amazon Redshift 會儲存三到五天的查詢記錄。
根據預設,dwh-migration-dumper
工具會擷取過去七天的查詢記錄。
Google 建議您提供至少兩週的查詢記錄,以便查看更完整的洞察資料。您可能需要在兩週內執行幾次擷取工具,才能取得最佳結果。您可以使用 --query-log-start
和 --query-log-end
標記指定自訂範圍。例如:
dwh-migration-dumper \ --connector redshift-raw-logs \ --database DATABASE \ --driver PATH/redshift-jdbc42-VERSION.jar \ --host host.region.redshift.amazonaws.com \ --assessment \ --user USER \ --iam-profile IAM_PROFILE_NAME \ --query-log-start "2023-01-01 00:00:00" \ --query-log-end "2023-01-02 00:00:00"
您也可以產生多個 ZIP 檔案,其中包含涵蓋不同期間的查詢記錄,並提供所有檔案供評估。
Redshift Serverless
需求條件
- 已連結至來源 Amazon Redshift 無伺服器資料倉儲的機器
- Google Cloud 具有 Cloud Storage 值區的帳戶,用於儲存資料
- 用於儲存結果的空白 BigQuery 資料集
- 資料集的讀取權限,以便查看結果
- 建議:使用擷取工具存取系統表時,超級使用者可存取資料庫
執行 dwh-migration-dumper
工具
下載 dwh-migration-dumper
指令列擷取工具。
如要進一步瞭解如何使用 dwh-migration-dumper
工具,請參閱「產生中繼資料」頁面。
使用 dwh-migration-dumper
工具,從 Amazon Redshift Serverless 命名空間中擷取用量記錄和中繼資料,並儲存為兩個 ZIP 檔案。請在可存取來源資料倉儲的電腦上執行下列指令,產生檔案。
產生中繼資料 ZIP 檔案:
dwh-migration-dumper \ --connector redshift \ --database DATABASE \ --driver PATH/redshift-jdbc42-VERSION.jar \ --host host.region.redshift-serverless.amazonaws.com \ --assessment \ --user USER \ --iam-profile IAM_PROFILE_NAME
產生包含查詢記錄的 ZIP 檔案:
dwh-migration-dumper \ --connector redshift-serverless-logs \ --database DATABASE \ --driver PATH/redshift-jdbc42-VERSION.jar \ --host host.region.redshift-serverless.amazonaws.com \ --assessment \ --user USER \ --iam-profile IAM_PROFILE_NAME
更改下列內容:
DATABASE
:要連線的資料庫名稱PATH
:要用於此連線的驅動程式 JAR 檔案的絕對或相對路徑VERSION
:驅動程式版本USER
:用於資料庫連線的使用者名稱IAM_PROFILE_NAME
:Amazon Redshift IAM 設定檔名稱。必須提供此值,才能驗證 Amazon Redshift 和存取 AWS API。如要取得 Amazon Redshift 叢集的說明,請使用 AWS API。
Amazon Redshift Serverless 會將用量記錄儲存七天。如果需要更廣泛的範圍,Google 建議您在較長的時間內多次擷取資料。
Snowflake
需求條件
如要從 Snowflake 擷取中繼資料和查詢記錄,您必須符合下列規定:
- 可連線至 Snowflake 執行個體的電腦。
- Google Cloud 帳戶,其中包含用於儲存資料的 Cloud Storage 值區。
- 用於儲存結果的空白 BigQuery 資料集。或者,您也可以在使用 Google Cloud 主控台 UI 建立評估工作時,建立 BigQuery 資料集。
- 在資料庫
Snowflake
上具有IMPORTED PRIVILEGES
存取權的 Snowflake 使用者。建議您使用以金鑰組為基礎的驗證方式建立SERVICE
使用者。這可提供安全的方法存取 Snowflake 資料平台,而無需產生多重驗證權杖。- 如要建立新的服務使用者,請按照官方 Snowflake 指南操作。您必須產生 RSA 金鑰組,並將公開金鑰指派給 Snowflake 使用者。
- 服務使用者應具備
ACCOUNTADMIN
角色,或是由帳戶管理員授予具有資料庫Snowflake
IMPORTED PRIVILEGES
權限的角色。 - 除了金鑰組驗證之外,您也可以使用密碼驗證。不過,自 2025 年 8 月起,Snowflake 將強制要求所有密碼使用者啟用 MFA。因此,使用我們的擷取工具時,您必須核准多重驗證推播通知。
執行 dwh-migration-dumper
工具
下載 dwh-migration-dumper
指令列擷取工具。
請下載 SHA256SUMS.txt
檔案,然後執行下列指令,確認 ZIP 正確無誤:
Bash
sha256sum --check SHA256SUMS.txt
Windows PowerShell
(Get-FileHash RELEASE_ZIP_FILENAME).Hash -eq ((Get-Content SHA256SUMS.txt) -Split " ")[0]
將 RELEASE_ZIP_FILENAME
替換為 dwh-migration-dumper
指令列擷取工具版本的下載 ZIP 檔案名稱,例如 dwh-migration-tools-v1.0.52.zip
True
結果確認總和檢查碼驗證成功。
False
結果表示驗證錯誤。請確認總和檢查碼和 ZIP 檔案是從相同的版本下載,並放在相同的目錄中。
如要進一步瞭解如何使用 dwh-migration-dumper
工具,請參閱「產生中繼資料」頁面。
使用 dwh-migration-dumper
工具,從 Snowflake 資料倉儲中擷取記錄和中繼資料,並儲存為兩個 ZIP 檔案。請在可存取來源資料倉儲的電腦上執行下列指令,產生檔案。
產生中繼資料 ZIP 檔案:
dwh-migration-dumper \ --connector snowflake \ --host HOST_NAME \ --database SNOWFLAKE \ --user USER_NAME \ --role ROLE_NAME \ --warehouse WAREHOUSE \ --assessment \ --private-key-file PRIVATE_KEY_PATH \ --private-key-password PRIVATE_KEY_PASSWORD
產生包含查詢記錄的 ZIP 檔案:
dwh-migration-dumper \ --connector snowflake-logs \ --host HOST_NAME \ --database SNOWFLAKE \ --user USER_NAME \ --role ROLE_NAME \ --warehouse WAREHOUSE \ --query-log-start STARTING_DATE \ --query-log-end ENDING_DATE \ --assessment \ --private-key-file PRIVATE_KEY_PATH \ --private-key-password PRIVATE_KEY_PASSWORD
更改下列內容:
HOST_NAME
:Snowflake 執行個體的主機名稱。USER_NAME
:用於資料庫連線的使用者名稱,使用者必須具備「需求部分」中詳述的存取權限。PRIVATE_KEY_PATH
:用於驗證的 RSA 私密金鑰路徑。PRIVATE_KEY_PASSWORD
:(選用) 建立 RSA 私密金鑰時使用的密碼。只有在私密金鑰已加密時才需要。ROLE_NAME
:(選用) 執行dwh-migration-dumper
工具時的使用者角色,例如ACCOUNTADMIN
。WAREHOUSE
:用於執行轉儲作業的倉庫。如果您有多個虛擬倉庫,可以指定任何倉庫來執行這項查詢。使用「需求部分」中詳述的存取權限執行這項查詢,即可擷取這個帳戶中的所有倉庫構件。STARTING_DATE
:(選用) 用於在查詢記錄的日期範圍中,指出開始日期,格式為YYYY-MM-DD
。ENDING_DATE
:(選用) 用於在查詢記錄的日期範圍中,指出結束日期,格式為YYYY-MM-DD
。
您也可以產生多個 ZIP 檔案,其中包含涵蓋不重疊期間的查詢記錄,並提供所有檔案供評估。
Oracle
如要針對這項功能提供意見回饋或尋求支援,請傳送電子郵件至 [email protected]。
需求條件
您必須符合下列條件,才能從 Oracle 擷取中繼資料和查詢記錄:
- 可連線至 Oracle 執行個體的機器。
- Java 8 以上版本。
- Google Cloud 帳戶,其中包含用於儲存資料的 Cloud Storage 值區。
- 用於儲存結果的空白 BigQuery 資料集。或者,您也可以在使用 Google Cloud 主控台 UI 建立評估工作時,建立 BigQuery 資料集。
- 具備 SYSDBA 權限的 Oracle 一般使用者。
執行 dwh-migration-dumper
工具
下載 dwh-migration-dumper
指令列擷取工具。
請下載 SHA256SUMS.txt
檔案,然後執行下列指令,確認 ZIP 正確無誤:
sha256sum --check SHA256SUMS.txt
如要進一步瞭解如何使用 dwh-migration-dumper
工具,請參閱「產生中繼資料」頁面。
使用 dwh-migration-dumper
工具,將中繼資料和成效統計資料擷取至 ZIP 檔案。根據預設,統計資料會從 Oracle AWR 中擷取,而這需要 Oracle 調校和診斷套件。如果沒有這項資料,dwh-migration-dumper
會改用 STATSPACK。
對於多租用戶資料庫,dwh-migration-dumper
工具必須在根容器中執行。在其中一個可插入式資料庫中執行時,會導致其他可插入式資料庫的效能統計資料和中繼資料遺失。
產生中繼資料 ZIP 檔案:
dwh-migration-dumper \ --connector oracle-stats \ --host HOST_NAME \ --port PORT \ --oracle-service SERVICE_NAME \ --assessment \ --driver JDBC_DRIVER_PATH \ --user USER_NAME \ --password
更改下列內容:
HOST_NAME
:Oracle 執行個體的主機名稱。PORT
:連線埠號。預設值為 1521。SERVICE_NAME
:要用於連線的 Oracle 服務名稱。JDBC_DRIVER_PATH
:驅動程式 JAR 檔案的絕對或相對路徑。您可以從 Oracle JDBC 驅動程式下載頁面下載這份檔案。請選取與資料庫版本相容的驅動程式版本。USER_NAME
:用於連線至 Oracle 執行個體的使用者名稱。使用者必須具備「規定部分」中詳述的存取權限。
Hadoop / Cloudera
如要針對這項功能提供意見回饋或尋求支援,請傳送電子郵件至 [email protected]。
需求條件
您必須具備下列條件,才能從 Cloudera 擷取中繼資料:
- 可連線至 Cloudera Manager API 的電腦。
- Google Cloud 帳戶,其中包含用於儲存資料的 Cloud Storage 值區。
- 用於儲存結果的空白 BigQuery 資料集。或者,您也可以在建立評估工作時建立 BigQuery 資料集。
執行 dwh-migration-dumper
工具
在指令列環境中,驗證 ZIP 正確性:
sha256sum --check SHA256SUMS.txt
如要進一步瞭解如何使用
dwh-migration-dumper
工具,請參閱「為翻譯和評估作業產生中繼資料」。使用
dwh-migration-dumper
工具,將中繼資料和成效統計資料擷取至 ZIP 檔案:dwh-migration-dumper \ --connector cloudera-manager \ --user USER_NAME \ --password PASSWORD \ --url URL_PATH \ --yarn-application-types "APP_TYPES" \ --pagination-page-size PAGE_SIZE \ --start-date START_DATE \ --end-date END_DATE \ --assessment
更改下列內容:
USER_NAME
:要連線至 Cloudera Manager 執行個體的使用者名稱。PASSWORD
:Cloudera Manager 執行個體的密碼。URL_PATH
:Cloudera Manager API 的網址路徑,例如https://localhost:7183/api/v55/
。APP_TYPES
(選用):從叢集傾印的 YARN 應用程式類型,以半形逗號分隔。預設值為MAPREDUCE,SPARK,Oozie Launcher
。PAGE_SIZE
(選用):每個 Cloudera 回應記錄的數量。預設值為1000
。START_DATE
(選用):歷史記錄轉儲作業的開始日期,採用 ISO 8601 格式,例如2025-05-29
。預設值為目前日期的前 90 天。END_DATE
(選用):歷史記錄轉儲作業的結束日期,採用 ISO 8601 格式,例如2025-05-30
。預設值為目前日期。
在 Cloudera 叢集中使用 Oozie
如果您在 Cloudera 叢集中使用 Oozie,可以使用 Oozie 連接器轉儲 Oozie 工作記錄。您可以搭配 Kerberos 驗證或基本驗證使用 Oozie。
如要使用 Kerberos 驗證,請執行下列指令:
kinit dwh-migration-dumper \ --connector oozie \ --url URL_PATH \ --assessment
更改下列內容:
URL_PATH
(選用):Oozie 伺服器網址路徑。如果未指定網址路徑,系統會從OOZIE_URL
環境變數取得網址路徑。
如要執行基本驗證,請執行下列指令:
dwh-migration-dumper \ --connector oozie \ --user USER_NAME \ --password PASSWORD \ --url URL_PATH \ --assessment
更改下列內容:
USER_NAME
:Oozie 使用者的名稱。PASSWORD
:使用者密碼。URL_PATH
(選用):Oozie 伺服器網址路徑。如果未指定網址路徑,系統會從OOZIE_URL
環境變數取得網址路徑。
在 Cloudera 叢集中使用 Airflow
如果您在 Cloudera 叢集中使用 Airflow,可以使用 Airflow 連接器轉儲 DAG 記錄:
dwh-migration-dumper \ --connector airflow \ --user USER_NAME \ --password PASSWORD \ --url URL \ --driver "DRIVER_PATH" \ --start-date START_DATE \ --end-date END_DATE \ --assessment
更改下列內容:
USER_NAME
:Airflow 使用者名稱PASSWORD
:使用者密碼URL
:Airflow 資料庫的 JDBC 字串DRIVER_PATH
:JDBC 驅動程式的路徑START_DATE
(選用):歷史記錄轉儲作業的開始日期,採用 ISO 8601 格式END_DATE
(選用):歷史記錄轉儲作業的結束日期,採用 ISO 8601 格式
在 Cloudera 叢集中使用 Hive
如要使用 Hive 連接器,請參閱 Apache Hive 分頁。
Apache Hive
需求條件
- 與來源 Apache Hive 資料倉儲連線的電腦 (BigQuery 遷移評估支援 Tez 和 MapReduce 上的 Hive,並支援 Apache Hive 2.2 到 3.1 之間的版本)
- Google Cloud 具有 Cloud Storage 值區的帳戶,用於儲存資料
- 用於儲存結果的空白 BigQuery 資料集
- 資料集的讀取權限,以便查看結果
- 存取來源 Apache Hive 資料倉儲,設定查詢記錄擷取作業
- 最新的資料表、分區和欄位統計資料
BigQuery 遷移評估會使用資料表、分區和欄位統計資料,進一步瞭解 Apache Hive 資料倉儲,並提供深入的洞察資料。如果來源 Apache Hive 資料倉儲中的 hive.stats.autogather
設定為 false
,建議您在執行 dwh-migration-dumper
工具前,先啟用該設定或手動更新統計資料。
執行 dwh-migration-dumper
工具
下載 dwh-migration-dumper
指令列擷取工具。
下載 SHA256SUMS.txt
檔案,然後執行下列指令,確認 ZIP 正確無誤:
Bash
sha256sum --check SHA256SUMS.txt
Windows PowerShell
(Get-FileHash RELEASE_ZIP_FILENAME).Hash -eq ((Get-Content SHA256SUMS.txt) -Split " ")[0]
將 RELEASE_ZIP_FILENAME
替換為 dwh-migration-dumper
指令列擷取工具版本的下載 ZIP 檔案名稱,例如 dwh-migration-tools-v1.0.52.zip
True
結果確認總和檢查碼驗證成功。
False
結果表示驗證錯誤。請確認總和檢查碼和 ZIP 檔案是從相同的版本下載,並放在相同的目錄中。
如要進一步瞭解如何使用 dwh-migration-dumper
工具,請參閱「為翻譯和評估作業產生中繼資料」。
使用 dwh-migration-dumper
工具,從 Hive 資料倉儲產生中繼資料,並以 ZIP 檔案格式儲存。
不驗證
如要產生中繼資料 ZIP 檔案,請在可存取來源資料倉儲的機器上執行下列指令:
dwh-migration-dumper \ --connector hiveql \ --database DATABASES \ --host hive.cluster.host \ --port 9083 \ --assessment
使用 Kerberos 驗證
如要對中繼存放區進行驗證,請以有權存取 Apache Hive 中繼存放區的使用者身分登入,並產生 Kerberos 票證。接著,請使用下列指令產生中繼資料 ZIP 檔案:
JAVA_OPTS="-Djavax.security.auth.useSubjectCredsOnly=false" \ dwh-migration-dumper \ --connector hiveql \ --database DATABASES \ --host hive.cluster.host \ --port 9083 \ --hive-kerberos-url PRINCIPAL/HOST \ -Dhiveql.rpc.protection=hadoop.rpc.protection \ --assessment
更改下列內容:
DATABASES
:以逗號分隔的資料庫名稱清單,用於擷取資料庫。如未提供,系統會擷取所有資料庫。PRINCIPAL
:票證核發給的 Kerberos 主體HOST
:票證核發至的 Kerberos 主機名稱hadoop.rpc.protection
:簡易驗證和安全性層 (SASL) 設定層級的保護品質 (QOP),等同於/etc/hadoop/conf/core-site.xml
檔案內hadoop.rpc.protection
參數的值,其中包含下列其中一個值:authentication
integrity
privacy
使用 hadoop-migration-assessment
記錄掛鉤擷取查詢記錄
如要擷取查詢記錄,請按照下列步驟操作:
上傳 hadoop-migration-assessment
記錄鉤子
下載包含 Hive 記錄掛鉤 JAR 檔案的
hadoop-migration-assessment
查詢記錄擷取記錄掛鉤。解壓縮 JAR 檔案。
如果您需要稽核工具,確保其符合法規要求,請查看
hadoop-migration-assessment
記錄掛鉤 GitHub 存放區中的原始碼,並編譯自己的二進位檔。將 JAR 檔案複製到所有叢集的輔助程式庫資料夾中,以便啟用查詢記錄功能。視供應商而定,您需要在叢集設定中找出輔助程式庫資料夾,並將 JAR 檔案轉移至 Hive 叢集中的輔助程式庫資料夾。
設定
hadoop-migration-assessment
記錄掛鉤的設定屬性。視 Hadoop 供應商而定,您需要使用 UI 控制台編輯叢集設定。修改/etc/hive/conf/hive-site.xml
檔案,或透過設定管理員套用設定。
設定屬性
如果您已為下列設定鍵設定其他值,請使用半形逗號 (,
) 附加設定。如要設定 hadoop-migration-assessment
記錄掛鉤,您必須設定下列設定:
hive.exec.failure.hooks
:com.google.cloud.bigquery.dwhassessment.hooks.MigrationAssessmentLoggingHook
hive.exec.post.hooks
:com.google.cloud.bigquery.dwhassessment.hooks.MigrationAssessmentLoggingHook
hive.exec.pre.hooks
:com.google.cloud.bigquery.dwhassessment.hooks.MigrationAssessmentLoggingHook
hive.aux.jars.path
:包含記錄掛鉤 JAR 檔案的路徑,例如file://
。/HiveMigrationAssessmentQueryLogsHooks_deploy.jar dwhassessment.hook.base-directory
:查詢記錄輸出資料夾的路徑。例如:hdfs://tmp/logs/
。您也可以設定下列選用設定:
dwhassessment.hook.queue.capacity
:查詢事件記錄執行緒的佇列容量。預設值為64
。dwhassessment.hook.rollover-interval
:必須執行檔案轉換的頻率。例如:600s
。預設值為 3600 秒 (1 小時)。dwhassessment.hook.rollover-eligibility-check-interval
:在背景觸發檔案轉換資格檢查的頻率。例如,600s
。預設值為 600 秒 (10 分鐘)。
驗證記錄掛鉤
重新啟動 hive-server2
程序後,請執行測試查詢並分析偵錯記錄。您會看到以下訊息:
Logger successfully started, waiting for query events. Log directory is '[dwhassessment.hook.base-directory value]'; rollover interval is '60' minutes; rollover eligibility check is '10' minutes
記錄掛鉤會在已設定的資料夾中建立日期區隔的子資料夾。在 dwhassessment.hook.rollover-interval
間隔或 hive-server2
程序終止後,含有查詢事件的 Avro 檔案就會顯示在該資料夾中。您可以在偵錯記錄中尋找類似的訊息,查看輪替作業的狀態:
Updated rollover time for logger ID 'my_logger_id' to '2023-12-25T10:15:30'
Performed rollover check for logger ID 'my_logger_id'. Expected rollover time is '2023-12-25T10:15:30'
系統會在指定的間隔或日期變更時進行轉移。日期變更時,記錄掛鉤也會為該日期建立新的子資料夾。
Google 建議您提供至少兩週的查詢記錄,以便查看更詳盡的洞察資料。
您也可以產生包含不同 Hive 叢集查詢記錄的資料夾,並提供給單一評估作業。
將中繼資料和查詢記錄上傳至 Cloud Storage
從資料倉儲中擷取中繼資料和查詢記錄後,您可以將檔案上傳至 Cloud Storage 值區,繼續進行遷移評估。
Teradata
將中繼資料和一或多個包含查詢記錄的 ZIP 檔案上傳至 Cloud Storage 值區。如要進一步瞭解如何建立值區及將檔案上傳至 Cloud Storage,請參閱「建立值區」和「從檔案系統上傳物件」。在未壓縮狀態下,媒體資料 ZIP 檔案內所有檔案的總大小上限為 50 GB。
所有包含查詢記錄的 ZIP 檔案中的項目分為以下幾類:
- 使用
query_history_
前置字串查詢記錄檔案。 - 含有
utility_logs_
、dbc.ResUsageScpu_
和dbc.ResUsageSpma_
前置字的時間序列檔案。
所有未壓縮的查詢記錄檔案總大小上限為 5 TB。所有時序資料檔案的總未壓縮大小上限為 1 TB。
如果查詢記錄已封存於其他資料庫,請參閱本節稍早的 -Dteradata-logs.query-logs-table
和 -Dteradata-logs.sql-logs-table
標記說明,瞭解如何為查詢記錄提供其他位置。
Redshift
將中繼資料和一或多個包含查詢記錄的 ZIP 檔案上傳至 Cloud Storage 值區。如要進一步瞭解如何建立值區及將檔案上傳至 Cloud Storage,請參閱「建立值區」和「從檔案系統上傳物件」。在未壓縮狀態下,媒體資料 ZIP 檔案內所有檔案的總大小上限為 50 GB。
所有包含查詢記錄的 ZIP 檔案中的項目分為以下幾類:
- 使用
querytext_
和ddltext_
前置字串查詢記錄檔案。 - 含有
query_queue_info_
、wlm_query_
和querymetrics_
前置字的時間序列檔案。
所有查詢記錄檔案的總未壓縮大小上限為 5 TB。所有時序資料檔案的總未壓縮大小上限為 1 TB。
Redshift Serverless
將中繼資料和一或多個包含查詢記錄的 ZIP 檔案上傳至 Cloud Storage 值區。如要進一步瞭解如何建立值區及將檔案上傳至 Cloud Storage,請參閱「建立值區」和「從檔案系統上傳物件」。
Snowflake
將中繼資料和含有查詢記錄和用量記錄的 ZIP 檔案上傳至 Cloud Storage 值區。將這些檔案上傳至 Cloud Storage 時,必須符合下列規定:
- 在 metadata 壓縮檔案中,所有檔案的總未壓縮大小不得超過 50 GB。
- 中繼資料 ZIP 檔案和包含查詢記錄的 ZIP 檔案必須上傳至 Cloud Storage 資料夾。如果您有多個包含不重疊查詢記錄的 ZIP 檔案,可以全部上傳。
- 您必須將所有檔案上傳至同一個 Cloud Storage 資料夾。
- 您必須上傳所有中繼資料和查詢記錄 ZIP 檔案,且必須與
dwh-migration-dumper
工具輸出的內容完全一致。請勿擷取、合併或以其他方式修改這些資料。 - 所有查詢記錄檔案的未壓縮總大小不得超過 5 TB。
如要進一步瞭解如何建立值區及將檔案上傳至 Cloud Storage,請參閱「建立值區」和「從檔案系統上傳物件」相關說明。
Oracle
如要針對這項功能提供意見回饋或尋求支援,請傳送電子郵件至 [email protected]。
將包含中繼資料和效能統計資料的 ZIP 檔案上傳至 Cloud Storage 值區。根據預設,ZIP 檔案的檔案名稱為 dwh-migration-oracle-stats.zip
,但您可以在 --output
旗標中指定自訂名稱。ZIP 檔案內所有檔案的總未壓縮大小上限為 50 GB。
如要進一步瞭解如何建立值區及將檔案上傳至 Cloud Storage,請參閱「建立值區」和「從檔案系統上傳物件」相關說明。
Hadoop / Cloudera
如要針對這項功能提供意見回饋或尋求支援,請傳送電子郵件至 [email protected]。
將含有中繼資料和效能統計資料的 ZIP 檔案上傳至 Cloud Storage 值區。根據預設,ZIP 檔案的檔案名稱為 dwh-migration-cloudera-manager-RUN_DATE.zip
(例如 dwh-migration-cloudera-manager-20250312T145808.zip
),但您可以使用 --output
標記自訂檔案名稱。ZIP 檔案內所有檔案的總未壓縮大小上限為 50 GB。
如要進一步瞭解如何建立值區及將檔案上傳至 Cloud Storage,請參閱「建立值區」和「從檔案系統上傳物件」相關說明。
Apache Hive
將含有查詢記錄的中繼資料和資料夾從一或多個 Hive 叢集上傳至 Cloud Storage 值區。如要進一步瞭解如何建立值區及將檔案上傳至 Cloud Storage,請參閱「建立值區」和「從檔案系統上傳物件」相關說明。
在未壓縮狀態下,媒體資料 ZIP 檔案內所有檔案的總大小上限為 50 GB。
您可以使用 Cloud Storage 連接器,將查詢記錄直接複製到 Cloud Storage 資料夾。包含查詢記錄子資料夾的資料夾必須上傳至相同的 Cloud Storage 資料夾,也就是中繼資料 ZIP 檔案的上傳資料夾。
查詢記錄資料夾含有前置符號為 dwhassessment_
的查詢記錄檔案。所有查詢記錄檔案的未壓縮總大小上限為 5 TB。
執行 BigQuery 遷移評估
請按照下列步驟執行 BigQuery 遷移評估。這些步驟假設您已按照先前章節所述,將中繼資料檔案上傳至 Cloud Storage 值區。
所需權限
如要啟用 BigQuery 遷移服務,您必須具備下列身分與存取權管理 (IAM) 權限:
resourcemanager.projects.get
resourcemanager.projects.update
serviceusage.services.enable
serviceusage.services.get
如要存取及使用 BigQuery 遷移服務,您必須具備專案的以下權限:
bigquerymigration.workflows.create
bigquerymigration.workflows.get
bigquerymigration.workflows.list
bigquerymigration.workflows.delete
bigquerymigration.subtasks.get
bigquerymigration.subtasks.list
如要執行 BigQuery 遷移服務,您需要具備下列額外權限。
輸入和輸出檔案的 Cloud Storage 值區存取權:
- 來源 Cloud Storage 值區的
storage.objects.get
- 來源 Cloud Storage 值區的
storage.objects.list
- 目標 Cloud Storage 值區的
storage.objects.create
- 目標 Cloud Storage 值區的
storage.objects.delete
- 目標 Cloud Storage 值區的
storage.objects.update
storage.buckets.get
storage.buckets.list
- 來源 Cloud Storage 值區的
具備讀取及更新 BigQuery 資料集的權限,BigQuery Migration Service 會將結果寫入此資料集:
bigquery.datasets.update
bigquery.datasets.get
bigquery.datasets.create
bigquery.datasets.delete
bigquery.jobs.create
bigquery.jobs.delete
bigquery.jobs.list
bigquery.jobs.update
bigquery.tables.create
bigquery.tables.get
bigquery.tables.getData
bigquery.tables.list
bigquery.tables.updateData
如要與使用者共用 Looker Studio 報表,您必須授予下列角色:
roles/bigquery.dataViewer
roles/bigquery.jobUser
如要自訂這份文件,以便在指令中使用您自己的專案和使用者,請編輯下列變數:PROJECT
、USER_EMAIL
。
建立具有 BigQuery 遷移評估所需權限的自訂角色:
gcloud iam roles create BQMSrole \ --project=PROJECT \ --title=BQMSrole \ --permissions=bigquerymigration.subtasks.get,bigquerymigration.subtasks.list,bigquerymigration.workflows.create,bigquerymigration.workflows.get,bigquerymigration.workflows.list,bigquerymigration.workflows.delete,resourcemanager.projects.update,resourcemanager.projects.get,serviceusage.services.enable,serviceusage.services.get,storage.objects.get,storage.objects.list,storage.objects.create,storage.objects.delete,storage.objects.update,bigquery.datasets.get,bigquery.datasets.update,bigquery.datasets.create,bigquery.datasets.delete,bigquery.tables.get,bigquery.tables.create,bigquery.tables.updateData,bigquery.tables.getData,bigquery.tables.list,bigquery.jobs.create,bigquery.jobs.update,bigquery.jobs.list,bigquery.jobs.delete,storage.buckets.list,storage.buckets.get
將自訂角色 BQMSrole
授予使用者:
gcloud projects add-iam-policy-binding \ PROJECT \ --member=user:USER_EMAIL \ --role=projects/PROJECT/roles/BQMSrole
將必要角色授予您要共用報表的使用者:
gcloud projects add-iam-policy-binding \ PROJECT \ --member=user:USER_EMAIL \ --role=roles/bigquery.dataViewer gcloud projects add-iam-policy-binding \ PROJECT \ --member=user:USER_EMAIL \ --role=roles/bigquery.jobUser
支援的地點
BigQuery 遷移評估功能支援兩種位置:
「地區」是特定的地理位置,例如倫敦。
「多區域」是指包含兩個以上區域的大型地理區域,例如美國。多區域位置可提供比單一區域更大的配額。
如要進一步瞭解地區和區域,請參閱「地理位置與地區」。
區域
下表列出美國境內提供 BigQuery 遷移評估服務的地區。區域說明 | 區域名稱 | 詳細資料 |
---|---|---|
俄亥俄州哥倫布 | us-east5 |
|
達拉斯 | us-south1 |
|
愛荷華州 | us-central1 |
|
南卡羅來納州 | us-east1 |
|
北維吉尼亞州 | us-east4 |
|
奧勒岡州 | us-west1 |
|
洛杉磯 | us-west2 |
|
鹽湖城 | us-west3 |
區域說明 | 區域名稱 | 詳細資料 |
---|---|---|
新加坡 | asia-southeast1 |
|
東京 | asia-northeast1 |
區域說明 | 區域名稱 | 詳細資料 |
---|---|---|
比利時 | europe-west1 |
|
芬蘭 | europe-north1 |
|
法蘭克福 | europe-west3 |
|
倫敦 | europe-west2 |
|
馬德里 | europe-southwest1 |
|
荷蘭 | europe-west4 |
|
巴黎 | europe-west9 |
|
杜林 | europe-west12 |
|
華沙 | europe-central2 |
|
蘇黎世 | europe-west6 |
|
多區域
下表列出可使用 BigQuery 遷移評估功能的多個區域。多地區說明 | 多區域名稱 |
---|---|
位於歐盟成員國境內的資料中心 | EU |
美國資料中心 | US |
事前準備
執行評估前,您必須啟用 BigQuery Migration API,並建立 BigQuery 資料集來儲存評估結果。
啟用 BigQuery Migration API
請按照下列步驟啟用 BigQuery Migration API:
前往 Google Cloud 控制台的「BigQuery Migration API」頁面。
按一下「啟用」。
建立評估結果資料集
BigQuery 遷移評估會將評估結果寫入 BigQuery 中的資料表。開始之前,請先建立資料集來容納這些資料表。共用 Looker Studio 報表時,您必須同時授予使用者讀取這組資料集的權限。如需更多資訊,請參閱「為使用者提供報告」。
執行遷移評估
主控台
前往 Google Cloud 控制台的「BigQuery」頁面。
在導覽選單中,按一下「評估」。
按一下「開始評估」。
填寫評估設定對話方塊。
- 在「顯示名稱」中,輸入可包含英文字母、數字或底線的名稱。這個名稱僅供顯示之用,不必是唯一名稱。
在「資料位置」清單中,選擇評估工作的位置。評估工作必須位於與擷取檔案輸入 Cloud Storage 值區和 BigQuery 輸出資料集相同的位置。不過,如果 Cloud Storage 值區或 BigQuery 資料集位於多地區,則評估工作必須位於該多地區內的任何區域。
如果評估位置是
US
或EU
多地區,Cloud Storage 值區和 BigQuery 資料集位置必須位於相同的多地區,或位於該多地區內。如要進一步瞭解位置限制,請參閱「BigQuery 載入資料位置考量事項」。在「Assessment data source」(評估資料來源) 中,選擇資料倉儲。
在「輸入檔案路徑」中,輸入包含已擷取檔案的 Cloud Storage 值區路徑。
如要選擇評估結果的儲存方式,請執行下列任一操作:
- 請勾選「自動建立新的 BigQuery 資料集」核取方塊,讓系統自動建立 BigQuery 資料集。系統會自動產生資料集名稱。
- 取消勾選「自動建立新的 BigQuery 資料集」核取方塊,然後選擇使用
projectId.datasetId
格式的現有空白 BigQuery 資料集,或建立新的資料集名稱。在這個選項中,您可以選擇 BigQuery 資料集名稱。
選項 1:自動產生 BigQuery 資料集 (預設)
選項 2 - 手動建立 BigQuery 資料集:
按一下「建立」,您可以在評估工作清單中查看工作的狀態。
評估作業執行期間,您可以在狀態圖示的工具提示中查看進度和預估完成時間。
評估作業執行期間,您可以點選評估作業清單中的「View report」連結,在 Looker Studio 中查看含有部分資料的評估報表。評估作業執行期間,系統可能需要一些時間才會顯示「查看報表」連結。報表會在新分頁中開啟。
系統會在處理新資料時更新報表。重新整理含有報表的分頁,或再次按一下「查看報表」,即可查看更新後的報表。
評估完成後,請按一下「查看報表」,在 Looker Studio 中查看完整的評估報表。報表會在新分頁中開啟。
API
然後呼叫 start
方法,啟動評估工作流程。
評估作業會在您先前建立的 BigQuery 資料集中建立資料表。您可以查詢這些資料,瞭解現有資料倉儲中使用的資料表和查詢。如要瞭解翻譯作業的輸出檔案,請參閱「批次 SQL 翻譯器」。
可分享的匯總評估結果
針對 Amazon Redshift、Teradata 和 Snowflake 評估,除了先前建立的 BigQuery 資料集,工作流程還會建立另一個同名的輕量資料集,並加上 _shareableRedactedAggregate
後置字串。這個資料集包含從輸出資料集衍生的高度匯總資料,且不含任何個人識別資訊 (PII)。
如要尋找、檢查資料集,並與其他使用者安全共用,請參閱「查詢遷移評估輸出表格」。
這項功能預設為開啟,但您可以使用公開 API選擇停用。
評估作業詳細資料
如要查看「評估詳細資料」頁面,請按一下評估工作清單中的顯示名稱。
評估詳細資料頁面包含「Configuration」分頁,可讓您查看評估工作相關的更多資訊,以及「Errors」分頁,可讓您查看評估處理期間發生的任何錯誤。
查看「Configuration」(設定) 分頁,瞭解評估作業的屬性。
查看「錯誤」分頁,瞭解評估處理期間發生的錯誤。
查看及分享 Looker Studio 報表
評估工作完成後,您可以建立並分享 Looker Studio 報表,瞭解結果。
查看報表
按一下個別評估作業旁的「查看報表」連結。Looker Studio 報表會在新分頁中以預覽模式開啟。您可以使用預覽模式查看報表內容,再進一步分享。
報表看起來會像下圖所示:
如要查看報表包含哪些檢視畫面,請選取資料倉儲:
Teradata
這份報告分為三個部分,開頭是摘要重點頁面。該頁面包含以下各節:
- 現有系統。本節為現有 Teradata 系統和用量的快照,包括資料庫、結構定義、資料表的數量,以及 TB 中的總大小。它也會依大小列出架構,並指出可能的次最佳資源使用率 (沒有寫入或讀取次數很少的表格)。
- BigQuery 穩態轉換 (建議)。本節說明遷移後,系統在 BigQuery 中的樣貌。其中包含 BigQuery 工作負載最佳化建議 (並避免浪費)。
- 遷移計畫:本節將說明遷移作業本身的相關資訊,例如從現有系統遷移至 BigQuery 的穩定狀態。這一節包含自動轉譯的查詢數量,以及將每個資料表移至 BigQuery 的預估時間。
每個部分的詳細資料如下:
現有系統
- 運算與查詢
- CPU 使用率:
- 每小時平均 CPU 使用率的熱圖 (整體系統資源使用率檢視畫面)
- 按小時和天數查詢 CPU 使用率
- 查詢類型 (讀取/寫入) 與 CPU 使用率
- 有 CPU 使用率的應用程式
- 每小時 CPU 使用率與每小時平均查詢效能和每小時平均應用程式效能疊加圖表
- 依類型和查詢時間長度查詢直方圖
- 應用程式詳細資料檢視畫面 (應用程式、使用者、不重複查詢、報表與 ETL 細目)
- CPU 使用率:
- 儲存空間總覽
- 依據資料量、觀看次數和存取率劃分資料庫
- 資料表,其中包含使用者、查詢、寫入和建立暫時性資料表的存取率
- 應用程式:存取率和 IP 位址
BigQuery 穩態轉換 (建議)
- 將轉換為具體化檢視表的索引彙整
- 根據中繼資料和用法,為候選項目進行分群和分區
- 系統已將低延遲查詢視為 BigQuery BI Engine 的候選項目
- 資料欄已設定預設值,並使用資料欄說明功能儲存預設值
- Teradata 中的不重複索引 (可避免資料表中出現具有非不重複鍵的資料列) 會使用階段資料表和
MERGE
陳述式,只將不重複記錄插入目標資料表,然後捨棄重複記錄 - 將其餘查詢和結構定義照原樣翻譯
遷移計畫
- 詳細檢視畫面,顯示自動翻譯的查詢
- 查詢總數,可依使用者、應用程式、受影響的資料表、查詢的資料表和查詢類型篩選
- 將具有類似模式的查詢分組並一起顯示,方便使用者依查詢類型查看翻譯原則
- 需要人為介入的查詢
- 含有 BigQuery 字彙結構違規的查詢
- 使用者定義的函式和程序
- BigQuery 保留關鍵字
- 依寫入和讀取作業排定表格 (以便將這些作業分組)
- 使用 BigQuery 資料移轉服務遷移資料:依資料表估算遷移時間
「現有系統」部分包含下列檢視畫面:
- 系統總覽
- 「系統總覽」檢視畫面會提供現有系統中關鍵元件在指定時間範圍內的概略資料量指標。評估的時間表取決於 BigQuery 遷移評估所分析的記錄。這個檢視畫面可讓您快速瞭解來源資料倉儲的使用情形,並用於遷移規劃。
- 資料表音量
- 「資料表資料量」檢視畫面會提供 BigQuery 遷移評估作業所發現的最大資料表和資料庫統計資料。由於大型資料表從來源資料倉儲系統中擷取資料的時間可能較長,因此這個檢視畫面有助於規劃及安排遷移作業。
- 表格用途
- 「表格用量」檢視畫面會提供統計資料,說明來源資料倉儲系統中哪些表格使用頻繁。您可以透過查看使用頻率最高的資料表,瞭解哪些資料表可能有許多依附元件,並需要在遷移期間進行額外規劃。
- 應用程式
- 「應用程式使用情形」和「應用程式模式」檢視畫面會提供處理記錄時所發現的應用程式統計資料。這些檢視畫面可讓使用者瞭解特定應用程式的使用情形,以及對資源使用情形的影響。在遷移期間,請務必將資料攝入和使用情形視覺化,以便進一步瞭解資料倉儲的依附元件,並分析將各種依附應用程式一併遷移所造成的影響。IP 位址表格可用於指出透過 JDBC 連線使用資料倉儲的確切應用程式。
- 查詢
- 「查詢」檢視畫面會列出執行的 SQL 陳述式類型,以及這些陳述式的使用統計資料。您可以使用查詢類型和時間的直方圖,找出系統使用率偏低的期間,以及傳輸資料的最佳時段。您也可以使用這個檢視畫面,找出經常執行的查詢,以及叫用這些執行作業的使用者。
- 資料庫
- 「資料庫」檢視畫面會提供來源資料倉儲系統中定義的大小、表格、檢視畫面和程序指標。這個檢視畫面可讓您深入瞭解需要遷移的物件數量。
- 資料庫耦合
- 「資料庫耦合」檢視畫面可讓您概略瞭解在單一查詢中一併存取的資料庫和資料表。這個檢視畫面可顯示經常參照的資料表和資料庫,以及可用於遷移規劃的項目。
「BigQuery 穩定狀態」部分包含下列檢視畫面:
- 未使用的資料表
- 「無用量的資料表」檢視畫面會顯示 BigQuery 遷移評估在分析的記錄期間未發現任何用量的資料表。如果使用率偏低,表示您在遷移期間不必將該資料表轉移至 BigQuery,或是在 BigQuery 中儲存資料的成本可能較低。您應驗證未使用的資料表清單,因為這些資料表可能在記錄期間以外使用,例如每三或六個月才使用一次的資料表。
- 不允許寫入的資料表
- 「Tables With No Writes」檢視畫面會顯示 BigQuery 遷移評估在所分析的記錄期間內,無法在其中找到任何更新的資料表。如果寫入作業次數偏低,表示您可能可以降低 BigQuery 的儲存空間費用。
- 低延遲查詢
- 「低延遲查詢」檢視畫面會根據分析的記錄資料,顯示查詢執行時間的分佈情形。如果查詢時間長度分布圖顯示大量的查詢在執行時間內的長度小於 1 秒,建議啟用 BigQuery BI Engine,以便加快 BI 和其他低延遲工作負載。
- 具體化檢視表
- 具體化檢視表會提供進一步的最佳化建議,以提升 BigQuery 的效能。
- 分群和分區
「分區和叢集」檢視畫面會顯示可透過分區或叢集處理來提升效能的資料表。
系統會分析來源資料倉儲結構定義 (例如來源資料表中的分割和主鍵),並找出最接近的 BigQuery 等效項目,以便達到類似的最佳化特性,進而提供中繼資料建議。
系統會分析來源查詢記錄,提供工作負載建議。系統會根據工作負載 (尤其是分析查詢記錄中的
WHERE
或JOIN
子句) 來決定最佳化建議。- 分群建議
「分區」檢視畫面會根據分區限制定義,顯示可能有超過 10,000 個分區的資料表。這些資料表通常是 BigQuery 分群的理想候選項目,可用於精細的資料表分區。
- 不重複限制條件
「Unique Constraints」檢視畫面會顯示來源資料倉儲中定義的
SET
資料表和唯一索引。在 BigQuery 中,建議您使用暫存資料表和MERGE
陳述式,只將不重複的記錄插入目標資料表。請參考這個檢視畫面的內容,判斷遷移期間需要調整 ETL 的資料表。- 預設值 / 檢查限制
這個檢視畫面會顯示使用檢查限制來設定預設欄值的資料表。如要在 BigQuery 中指定預設資料欄值,請參閱這篇文章。
報表的「遷移路徑」部分包含下列檢視畫面:
- SQL 翻譯
- 「SQL 翻譯」檢視畫面會列出 BigQuery 遷移評估工具自動轉換的查詢數量和詳細資料,且不需要手動介入。只要提供中繼資料,自動 SQL 翻譯功能通常就能達到高轉譯率。這個檢視畫面是互動式,可讓您分析常見查詢以及這些查詢的翻譯方式。
- 離線努力
- 「離線工作量」檢視畫面會擷取需要手動介入的部分,包括特定 UDF 和表格或欄位的潛在字彙結構和語法違規。
- BigQuery 保留關鍵字
- 「BigQuery 保留字」檢視畫面會顯示在 GoogleSQL 語言中具有特殊意義的已偵測到的關鍵字用法,這些關鍵字必須以反斜線 (
`
) 字元括號才能用做 ID。 - 表格更新時間表
- 「表格更新時間表」檢視畫面會顯示表格的更新時間和頻率,協助您規劃移動表格的方式和時間。
- 將資料遷移至 BigQuery
- 「資料遷移至 BigQuery」檢視畫面會概略說明遷移路徑,以及使用 BigQuery 資料移轉服務遷移資料的預估時間。詳情請參閱 BigQuery 資料移轉服務 (適用於 Teradata) 指南。
「附錄」部分包含下列檢視畫面:
- 區分大小寫
- 「大小寫敏感度」檢視畫面會顯示來源資料倉儲中的資料表,這些資料表已設定為執行大小寫不敏感的比較。根據預設,BigQuery 中的字串比較會區分大小寫。詳情請參閱「對照」。
Redshift
- 遷移重點
- 「遷移重點」檢視畫面會提供報表的三個部分摘要:
- 「現有系統」面板會提供資料庫、結構定義、資料表的數量,以及現有 Redshift 系統的總大小。並依大小和潛在的次最佳資源使用率列出結構定義。您可以利用這項資訊,移除、分割或叢集資料表,藉此改善資料。
- 「BigQuery 穩定狀態」資訊面板會提供 BigQuery 遷移後資料的相關資訊,包括可使用 BigQuery 遷移服務自動轉譯的查詢數量。本節也會根據您的年度資料攝入率,顯示在 BigQuery 中儲存資料的費用,以及資料表、佈建和空間的最佳化建議。
- 「遷移路徑」面板會提供遷移作業本身的相關資訊。針對每個資料表,它會顯示預期的遷移時間、資料表中的資料列數和資料表大小。
「現有系統」部分包含下列檢視畫面:
- 依類型和排程查詢
- 「查詢類型和排程」檢視畫面會將查詢分類為 ETL/寫入和報表/匯總。查看長期的查詢組合有助於瞭解現有的使用模式,並找出可能影響成本和效能的突發情形和潛在的過度配置。
- 查詢排入佇列
- 「查詢佇列」檢視畫面會提供系統負載的其他詳細資料,包括查詢量、混合內容,以及佇列造成的任何效能影響 (例如資源不足)。
- 查詢和 WLM 資源調度
- 「查詢和 WLM 資源調度」檢視畫面會將並行調度視為額外成本和設定複雜度。這份報告會顯示 Redshift 系統如何根據指定的規則路由查詢,以及排隊、並行擴充和遭到逐出的查詢對效能造成的影響。
- 排隊和等候
- 「佇列和等待」檢視畫面可深入瞭解查詢的佇列和等待時間。
- WLM 類別和效能
- 「WLM 類別和成效」檢視畫面提供可選方法,可將規則對應至 BigQuery。不過,建議您讓 BigQuery 自動將查詢轉送。
- 查詢和資料表查詢量深入分析
- 「查詢與表格」資料量深入分析檢視畫面會依查詢大小、頻率和熱門使用者列出查詢。這有助於您將系統上的負載來源分類,並規劃工作負載的遷移方式。
- 資料庫和結構定義
- 「資料庫和結構定義」檢視畫面會提供來源資料倉儲系統中定義的大小、資料表、檢視畫面和程序的指標。這可讓您瞭解需要遷移的物件數量。
- 資料表音量
- 「資料表使用量」檢視畫面會提供最大資料表和資料庫的統計資料,並顯示這些資料表和資料庫的存取方式。由於大型資料表從來源資料倉儲系統中擷取資料的時間可能較長,因此這個檢視畫面可協助您規劃及安排遷移作業。
- 表格用途
- 「表格用量」檢視畫面會提供統計資料,說明來源資料倉儲系統中哪些表格使用頻繁。您可以利用大量使用中的資料表,瞭解可能有許多依附元件的資料表,並在遷移程序中進行額外規劃。
- 匯入工具和匯出工具
- 「匯入者與匯出者」檢視畫面會提供資料匯入 (使用
COPY
查詢) 和資料匯出 (使用UNLOAD
查詢) 作業中涉及的資料和使用者相關資訊。這個檢視畫面可協助您找出與擷取和匯出相關的暫存層和程序。 - 叢集使用率
- 「叢集使用率」檢視畫面會提供所有可用叢集的一般資訊,並顯示每個叢集的 CPU 使用率。這個檢視畫面可協助您瞭解系統容量預留值。
「BigQuery 穩定狀態」部分包含下列檢視畫面:
- 分群與分區
「分區和叢集」檢視畫面會顯示可透過分區或叢集處理來提升效能的資料表。
系統會分析來源資料倉儲結構定義 (例如來源資料表中的排序鍵和分散鍵),並找出最接近的 BigQuery 等價項目,以便達到類似的最佳化特性,進而提供中繼資料建議。
系統會分析來源查詢記錄,提供工作負載建議。系統會根據工作負載 (尤其是分析查詢記錄中的
WHERE
或JOIN
子句) 來決定最佳化建議。頁面底部會顯示已翻譯的建立資料表陳述式,其中包含所有提供的最佳化項目。所有已翻譯的 DDL 陳述式也可以從資料集中擷取。經過翻譯的 DDL 陳述式會儲存在
CreateTableDDL
欄的SchemaConversion
資料表中。報表中的最佳化建議僅適用於超過 1 GB 的資料表,因為小型資料表無法從叢集和分割作業中受益。不過,所有資料表 (包括小於 1 GB 的資料表) 的 DDL 都會顯示在
SchemaConversion
資料表中。- 未使用的資料表
「無用量的資料表」檢視畫面會顯示 BigQuery 遷移評估工具在分析記錄期間未偵測到任何用量的資料表。如果使用量偏低,表示您在遷移期間不必將該資料表轉移至 BigQuery,或是在 BigQuery 中儲存資料的費用可能較低 (以長期儲存空間計費)。建議您驗證未使用的資料表清單,因為這些資料表可能在記錄期間以外使用,例如每三或六個月只使用一次的資料表。
- 不允許寫入的資料表
「沒有寫入作業的資料表」檢視畫面會顯示 BigQuery 遷移評估作業在分析記錄期間未識別任何更新的資料表。如果寫入作業次數偏低,表示您可能可以降低 BigQuery 的儲存空間費用 (以長期儲存空間計費)。
- BigQuery BI Engine 和具體化檢視表
BigQuery BI Engine 和具體化檢視表會提供進一步的最佳化建議,以提升 BigQuery 的效能。
「Migration path」部分包含下列檢視畫面:
- SQL 翻譯
- 「SQL 翻譯」檢視畫面會列出 BigQuery 遷移評估工具自動轉換的查詢數量和詳細資料,且不需要手動介入。只要提供中繼資料,自動 SQL 翻譯功能通常就能達到高翻譯率。
- SQL 翻譯離線作業
- 「SQL 翻譯離線工作量」檢視畫面會擷取需要手動介入的部分,包括特定的 UDF 和可能含有翻譯歧義的查詢。
- 變更資料表附加支援
- 「Alter Table Append Support」檢視畫面會顯示常見的 Redshift SQL 結構體詳細資料,這些結構體沒有直接的 BigQuery 對應項目。
- 支援複製指令
- 「複製指令支援」檢視畫面會顯示常見的 Redshift SQL 結構體詳細資料,這些結構體沒有直接的 BigQuery 對應項目。
- SQL 警告
- 「SQL 警告」檢視畫面會擷取已成功翻譯但需要審查的區域。
- 詞法結構和語法違規
- 「詞法結構和語法違規」檢視畫面會顯示違反 BigQuery 語法的資料欄、資料表、函式和程序名稱。
- BigQuery 保留關鍵字
- 「BigQuery 保留字」檢視畫面會顯示在 GoogleSQL 語言中具有特殊意義的已偵測到的關鍵字用法,這些關鍵字必須以反引號 (
`
) 字元括號才能用做 ID。 - 結構定義耦合
- 「Schema Coupling」檢視畫面會提供資料庫、結構定義和資料表的概覽,這些項目會在單一查詢中一併存取。這個檢視畫面可顯示經常參照的資料表、結構定義和資料庫,以及可用於遷移規劃的項目。
- 表格更新時間表
- 「表格更新時間表」檢視畫面會顯示表格的更新時間和頻率,協助您規劃移動表格的方式和時間。
- 表格比例
- 「Table Scale」檢視畫面會列出最多欄的資料表。
- 將資料遷移至 BigQuery
- 「資料遷移至 BigQuery」檢視畫面會概略說明遷移路徑,以及使用 BigQuery Migration Service 資料移轉服務遷移資料的預估時間。詳情請參閱 BigQuery 資料移轉服務 (適用於 Redshift) 指南。
- 評估作業執行摘要
評估執行摘要包含報表完整性、進行中的評估進度,以及已處理的檔案和錯誤狀態。
報表完整度代表成功處理資料的百分比,建議您在評估報表中顯示有意義的洞察資料。如果報表的特定部分缺少資料,這項資訊會列在「評估模組」表格中的「報表完整度」指標下方。
「進度」指標會顯示目前已處理的資料百分比,以及處理所有資料所需的預估時間。處理完成後,系統不會顯示進度指標。
Redshift Serverless
- 遷移重點
- 這個報表頁面會顯示現有 Amazon Redshift 無伺服器資料庫的摘要,包括資料表的大小和數量。此外,這項工具還會提供年度合約價值 (ACV) 的概略估算值,也就是 BigQuery 的運算和儲存空間費用。「遷移重點」檢視畫面會提供報表的三個部分摘要。
「現有系統」部分包含下列檢視畫面:
- 資料庫和結構定義
- 提供每個資料庫、結構定義或資料表的總儲存空間大小 (以 GB 為單位)。
- 外部資料庫和結構定義
- 提供每個外部資料庫、結構定義或資料表的總儲存空間大小 (以 GB 為單位)。
- 系統使用率
- 提供系統歷史使用率的一般資訊。這個檢視畫面會顯示 RPU (Amazon Redshift 處理單元) 的歷來用量和每日儲存空間用量。這個檢視畫面可協助您瞭解系統容量預留值。
「BigQuery 穩定狀態」部分會提供 BigQuery 遷移後資料的樣貌,包括可使用 BigQuery 遷移服務自動轉譯的查詢數量。本節也會根據您的年度資料擷取率,顯示在 BigQuery 中儲存資料的費用,並提供資料表、配置和空間的最佳化建議。「穩定狀態」區段包含下列檢視畫面:
- Amazon Redshift Serverless 與 BigQuery 的定價
- 比較 Amazon Redshift Serverless 和 BigQuery 的計價模式,協助您瞭解遷移至 BigQuery 後的效益和潛在節省費用。
- BigQuery 運算成本 (TCO)
- 可讓您估算 BigQuery 的運算成本。計算工具中需要手動輸入四個值:BigQuery 版本、區域、承諾期和基準。根據預設,計算機會提供最理想且符合成本效益的基線承諾,您可以手動覆寫這些承諾。
- 總持有成本
- 可讓您估算年度合約價值 (ACV),也就是 BigQuery 運算和儲存空間的費用。計算工具還可讓您計算儲存空間費用,這項費用會因使用中的儲存空間和長期儲存空間而異,具體取決於分析期間內的資料表修改情形。詳情請參閱「儲存空間定價」。
「附錄」部分包含以下檢視畫面:
- 評估執行摘要
- 提供評估執行詳細資料,包括已處理的檔案清單、錯誤和報告完整性。您可以使用這個頁面調查報表中缺少的資料,進一步瞭解報表的完整性。
Snowflake
報表包含不同的部分,可單獨或一起使用。下圖將這些部分分為三個常見的使用者目標,協助您評估遷移需求:
遷移精選內容檢視畫面
「Migration Highlights」部分包含下列檢視畫面:
- Snowflake 與 BigQuery 的計費模式
- 列出不同等級/版本的價格。也包含插圖,說明 BigQuery 自動調度資源功能如何比 Snowflake 節省更多成本。
- 總持有成本
- 互動式表格,可讓使用者定義:BigQuery 版本、承諾、基準運算單元承諾、有效儲存空間百分比,以及載入或變更的資料百分比。有助於更準確地估算自訂手機殼的費用。
- 自動翻譯重點
- 匯總翻譯比率,依使用者或資料庫分組,並以遞增或遞減順序排序。也包含自動翻譯失敗最常見的錯誤訊息。
現有的系統檢視畫面
「現有系統」部分包含下列檢視畫面:
- 系統總覽
- 「系統總覽」檢視畫面會提供現有系統中主要元件在指定時間範圍內的概略資料量指標。評估的時間表取決於 BigQuery 遷移評估所分析的記錄。這個檢視畫面可讓您快速瞭解來源資料倉儲的使用情形,並用於遷移規劃。
- 虛擬倉庫總覽
- 顯示 Snowflake 按倉儲計算的費用,以及在期間內以節點為基礎的重新調整規模。
- 資料表音量
- 「資料表資料量」檢視畫面會提供 BigQuery 遷移評估作業所發現的最大資料表和資料庫統計資料。由於大型資料表從來源資料倉儲系統中擷取資料的時間可能較長,因此這個檢視畫面有助於規劃及安排遷移順序。
- 表格用途
- 「表格用量」檢視畫面會提供統計資料,說明來源資料倉儲系統中哪些表格使用頻繁。您可以透過這項資訊,瞭解哪些資料表可能有許多依附元件,並在遷移程序中進行額外規劃。
- 查詢
- 「查詢」檢視畫面會列出執行的 SQL 陳述式類型,以及使用統計資料。您可以使用查詢類型和時間的直方圖,找出系統使用率偏低的期間,以及傳輸資料的最佳時間。您也可以使用這個檢視畫面,找出經常執行的查詢,以及叫用這些執行作業的使用者。
- 資料庫
- 「資料庫」檢視畫面會提供來源資料倉儲系統中定義的大小、資料表、檢視畫面和程序的指標。這個檢視畫面可讓您深入瞭解需要遷移的物件數量。
BigQuery 穩態檢視畫面
「BigQuery 穩定狀態」部分包含下列檢視畫面:
- 未使用的資料表
- 「無用量的資料表」檢視畫面會顯示 BigQuery 遷移評估在分析的記錄期間內,未發現任何用量的資料表。這可能表示在遷移期間,哪些資料表可能不需要轉移至 BigQuery,或是在 BigQuery 中儲存資料的成本可能較低。您必須驗證未使用的資料表清單,因為這些資料表可能在分析的記錄期間以外有使用情形,例如每季或每半週只使用一次的資料表。
- 不允許寫入的資料表
- 「Tables With No Writes」檢視畫面會顯示 BigQuery 遷移評估在所分析的記錄期間內,無法在其中找到任何更新的資料表。這可能表示在 BigQuery 中儲存資料的費用可能會降低。
遷移計畫檢視畫面
報表的「遷移計畫」部分包含下列檢視畫面:
- SQL 翻譯
- 「SQL 翻譯」檢視畫面會列出 BigQuery 遷移評估工具自動轉換的查詢數量和詳細資料,且不需要手動介入。只要提供中繼資料,自動 SQL 翻譯功能通常就能達到高轉譯率。這個檢視畫面是互動式,可讓您分析常見查詢以及這些查詢的翻譯方式。
- SQL 翻譯離線作業
- 「離線工作量」檢視畫面會擷取需要手動介入的部分,包括特定 UDF 和表格或欄位的潛在字彙結構和語法違規。
- SQL 警告 - 待查看
- 「待審查的警告」檢視畫面會擷取已完成大部分翻譯,但仍需要人工檢查的部分。
- BigQuery 保留關鍵字
- 「BigQuery 保留字」檢視畫面會顯示在 GoogleSQL 語言中具有特殊意義的已偵測到的關鍵字用法,這些關鍵字必須以反引號 (
`
) 字元括號才能用做 ID。 - 資料庫和資料表耦合
- 「資料庫耦合」檢視畫面可讓您概略瞭解在單一查詢中一併存取的資料庫和資料表。這個檢視畫面可顯示經常參照的資料表和資料庫,以及可用於遷移規劃的項目。
- 表格更新時間表
- 「表格更新時間表」檢視畫面會顯示表格的更新時間和頻率,協助您規劃移動表格的方式和時間。
概念驗證檢視
「概念驗證」PoC部分包含下列檢視畫面:
- 用於展示 BigQuery 穩定狀態節省費用的概念驗證
- 包括最常見的查詢、讀取最多資料的查詢、速度最慢的查詢,以及上述查詢影響的資料表。
- 用於展示 BigQuery 遷移計畫的概念驗證
- 展示 BigQuery 如何轉譯最複雜的查詢,以及這些查詢對資料表的影響。
Oracle
如要針對這項功能提供意見回饋或尋求支援,請傳送電子郵件至 [email protected]。
遷移重點
「Migration Highlights」部分包含下列檢視畫面:
- 現有系統:現有 Oracle 系統和用量的快照,包括資料庫、結構定義、資料表的數量,以及 GB 的總大小。它還會提供每個資料庫的工作負載分類摘要,協助您判斷 BigQuery 是否適合作為遷移目標。
- 相容性:提供遷移作業本身的相關資訊。系統會針對每個已分析的資料庫,顯示預估的遷移時間,以及可使用 Google 提供的工具自動遷移的資料庫物件數量。
- BigQuery 穩定狀態:提供 BigQuery 遷移後的資料資訊,包括根據年度資料擷取率和估算的運算成本,在 BigQuery 中儲存資料的費用。此外,這項工具還可針對未充分利用的資料表提供深入分析。
現有系統
「現有系統」部分包含下列檢視畫面:
- 工作負載特性:根據分析的效能指標,說明每個資料庫的工作負載類型。每個資料庫都會歸類為 OLAP、混合或 OLTP。這項資訊可協助您決定哪些資料庫可遷移至 BigQuery。
- 資料庫和結構定義:提供每個資料庫、結構定義或資料表的總儲存空間大小 (以 GB 為單位)。此外,您也可以使用這個檢視畫面來識別具體化檢視表和外部資料表。
- 資料庫功能和連結:顯示資料庫中使用的 Oracle 功能清單,以及遷移後可使用的 BigQuery 等同功能或服務。此外,您也可以探索資料庫連結,進一步瞭解資料庫之間的連結。
- 資料庫連線:提供使用者或應用程式啟動的資料庫工作階段洞察資料。分析這類資料有助於您找出在遷移期間可能需要額外付出努力的外部應用程式。
- 查詢類型:提供執行的 SQL 陳述式類型和使用統計資料的細目。您可以使用查詢執行作業或查詢 CPU 時間的每小時直方圖,找出系統使用率偏低的期間,以及傳輸資料的最佳時段。
- PL/SQL 原始碼:提供 PL/SQL 物件 (例如函式或程序) 的深入分析,以及每個資料庫和結構定義的大小。此外,您也可以使用每小時執行次數的直方圖,找出 PL/SQL 執行次數最多的尖峰時段。
- 系統使用率:提供系統使用率的歷史資料。這個檢視畫面會顯示 CPU 的每小時使用量和每日儲存空間用量。這個檢視畫面可協助您瞭解系統容量預留空間。
BigQuery 穩定狀態
「BigQuery 穩定狀態」部分包含下列檢視畫面:
- Exadata 與 BigQuery 定價:提供 Exadata 和 BigQuery 定價模式的一般比較,協助您瞭解遷移至 BigQuery 後的效益和潛在節省成本。
- BigQuery 資料庫讀取/寫入:提供資料庫的實體磁碟作業洞察資料。分析這類資料有助於找出從 Oracle 遷移資料至 BigQuery 的最佳時機。
- BigQuery 運算成本:可讓您估算 BigQuery 中的運算成本。計算機中需要手動輸入四個值:BigQuery 版本、區域、承諾期和基準值。根據預設,計算機會提供最經濟實惠的基準承諾,您可以手動覆寫。「年度自動調度運算單元時數」值會提供在承諾使用量以外使用的運算單元時數數量。這個值是根據系統使用率計算得出。本頁面結尾處提供基準值、自動調整資源和使用率之間關係的圖解說明。每項預估值都會顯示可能的數字和預估範圍。
- 總持有成本 (TCO):可讓您估算年度合約價值 (ACV),也就是 BigQuery 中的運算和儲存空間成本。您也可以使用計算機計算儲存空間費用。您也可以使用計算工具計算儲存費用,這項費用會因動態儲存和長期儲存而異,具體取決於分析期間內的資料表修改次數。如要進一步瞭解儲存空間價格,請參閱「儲存空間價格」。
- 未充分利用的資料表:根據分析期間的用量指標,提供未使用和唯讀資料表的相關資訊。如果使用率偏低,表示您在遷移期間不需要將資料表轉移至 BigQuery,或是在 BigQuery 中儲存資料的費用可能較低 (以長期儲存空間計費)。建議您驗證未使用的資料表清單,以免這些資料表在分析期間以外有使用情形。
遷移提示
「遷移提示」部分包含下列檢視畫面:
- 資料庫物件相容性:提供資料庫物件與 BigQuery 的相容性概覽,包括可透過 Google 提供的工具自動遷移或需要手動操作的物件數量。系統會針對每個資料庫、結構定義和資料庫物件類型顯示這項資訊。
- 資料庫物件遷移工作量:顯示每個資料庫、結構定義或資料庫物件類型的遷移工作量估計值 (以小時為單位)。此外,系統會根據遷移作業量,顯示小型、中型和大型物件的百分比。
- 資料庫結構定義遷移作業:提供所有偵測到的資料庫物件類型清單、物件數量、與 BigQuery 的相容性,以及預估的遷移作業時間 (以小時為單位)。
- 資料庫結構定義遷移工作詳細資料:提供更深入的資料庫結構定義遷移工作洞察資料,包括每個個別物件的相關資訊。
概念驗證檢視
「概念驗證檢視畫面」部分包含下列檢視畫面:
- 概念驗證遷移作業:顯示建議的資料庫清單,其中列出初步遷移作業的最佳候選資料庫,且遷移工作量最少。此外,這份報告會顯示可透過概念驗證,展示 BigQuery 可節省的時間和費用,以及帶來的價值的熱門查詢。
附錄
「附錄」部分包含下列檢視畫面:
- 評估執行摘要:提供評估執行詳細資料,包括已處理的檔案清單、錯誤和報告完整性。您可以使用這個頁面調查報表中缺少的資料,進而更瞭解整體報表的完整性。
Apache Hive
這份報告由三個部分的敘述組成,開頭是摘要重點頁面,其中包含下列部分:
現有系統 - Apache Hive本節包含現有 Apache Hive 系統和用量的快照,包括資料庫和資料表的數量、以 GB 為單位的總大小,以及已處理的查詢記錄數。本節也會依大小列出資料庫,並指出可能未達最佳狀態的資源使用情形 (沒有寫入或讀取次數很少的表格) 和佈建作業。這個部分的詳細資料包括:
- 運算和查詢
- CPU 使用率:
- 以 CPU 使用率查詢每小時和每日資料
- 按類型查詢 (讀取/寫入)
- 佇列和應用程式
- 每小時 CPU 使用率與每小時平均查詢效能和每小時平均應用程式效能疊加圖表
- 依類型和查詢時間長度查詢直方圖
- 排隊和等候頁面
- 佇列詳細檢視畫面 (佇列、使用者、不重複查詢、報表與 ETL 細目,按指標分類)
- CPU 使用率:
- 儲存空間總覽
- 依據資料量、觀看次數和存取率劃分資料庫
- 資料表,其中包含使用者、查詢、寫入和建立暫時性資料表的存取率
- 佇列和應用程式:存取率和用戶端 IP 位址
- 運算和查詢
BigQuery 穩定狀態本節說明遷移後,系統在 BigQuery 中的樣貌。其中包含針對 BigQuery 工作負載最佳化 (並避免浪費) 的建議。這個部分的詳細資料包括:
- 系統判定為具體化檢視表候選項的資料表。
- 根據中繼資料和用法,將候選項目分群和分區。
- 系統已將低延遲查詢視為 BigQuery BI Engine 的候選項目。
- 沒有讀取或寫入用途的資料表。
- 資料偏移的分區資料表。
遷移計畫:本節將說明遷移作業本身。例如從現有系統取得 BigQuery 穩定狀態。本節包含每個資料表的已識別儲存空間目標、系統判定為遷移重點的資料表,以及自動轉譯的查詢數量。這個部分的詳細資料包括:
- 詳細檢視畫面,顯示自動翻譯的查詢
- 查詢總數,可依使用者、應用程式、受影響的資料表、查詢的資料表和查詢類型篩選。
- 將具有相似模式的查詢桶歸類在一起,方便使用者依查詢類型查看翻譯原則。
- 需要人為介入的查詢
- 含有 BigQuery 字彙結構違規的查詢
- 使用者定義的函式和程序
- BigQuery 保留關鍵字
- 需要審查的查詢
- 依寫入和讀取作業排定表格 (以便將這些作業分組)
- 外部和受管理資料表的已識別儲存空間目標
- 詳細檢視畫面,顯示自動翻譯的查詢
「現有系統 - Hive」部分包含下列檢視畫面:
- 系統總覽
- 這個檢視畫面會提供現有系統中主要元件在指定時間範圍內的概略量值指標。評估的時間表取決於 BigQuery 遷移評估所分析的記錄。這個檢視畫面可讓您快速瞭解來源資料倉儲的使用情形,並用於遷移規劃。
- 資料表音量
- 這個檢視畫面會提供 BigQuery 遷移評估作業所發現的最大資料表和資料庫統計資料。由於大型資料表從來源資料倉儲系統中擷取資料的時間可能較長,因此這個檢視畫面有助於規劃及安排遷移順序。
- 表格用途
- 這個檢視畫面會提供統計資料,說明來源資料倉儲系統中哪些資料表使用頻繁。您可以透過查看使用頻率高的資料表,瞭解哪些資料表可能有許多依附元件,並需要在遷移過程中進行額外規劃。
- 佇列使用率
- 這個檢視畫面會提供在處理記錄時發現的 YARN 佇列用量統計資料。這些檢視畫面可讓使用者瞭解特定佇列和應用程式的使用情形,以及對資源使用情形的影響。這些檢視畫面也有助於找出遷移工作負載的優先順序。在遷移期間,請務必將資料攝取和使用情形視覺化,以便進一步瞭解資料倉儲的依附元件,並分析將各種依附應用程式一併遷移所造成的影響。IP 位址表格可用於指出透過 JDBC 連線使用資料倉儲的確切應用程式。
- 佇列指標
- 這個檢視畫面會提供記錄處理期間在 YARN 佇列中發現的各項指標細目。這個檢視畫面可讓使用者瞭解特定佇列的使用模式,以及對遷移作業的影響。您也可以使用這個檢視畫面,找出在查詢中存取的資料表與執行查詢的佇列之間的連結。
- 排隊和等候
- 這個檢視畫面可提供來源資料倉儲中查詢排隊時間的洞察資料。排隊時間表示效能因未充分配置而降低,而額外配置需要增加硬體和維護成本。
- 查詢
- 這個檢視畫面會列出執行的 SQL 陳述式類型,以及使用統計資料。您可以使用查詢類型和時間的直方圖,找出系統使用率偏低的期間,以及傳輸資料的最佳時段。您也可以使用這個檢視畫面,找出最常用的 Hive 執行引擎和經常執行的查詢,以及使用者詳細資料。
- 資料庫
- 這個檢視畫面會提供來源資料倉儲系統中定義的大小、資料表、檢視畫面和程序的指標。這個檢視畫面可讓您深入瞭解需要遷移的物件數量。
- 資料庫與資料表耦合
- 這個檢視畫面會提供資料庫和資料表的概覽,這些資料庫和資料表會在單一查詢中一併存取。這個檢視畫面可顯示經常參照的資料表和資料庫,以及可用於遷移規劃的項目。
「BigQuery 穩定狀態」部分包含下列檢視畫面:
- 未使用的資料表
- 「無用量的資料表」檢視畫面會顯示 BigQuery 遷移評估在分析的記錄期間未發現任何用量的資料表。如果使用率偏低,表示您在遷移期間不必將該資料表轉移至 BigQuery,或是在 BigQuery 中儲存資料的成本可能較低。您必須驗證未使用的資料表清單,因為這些資料表可能在記錄期間以外使用,例如每三或六個月才使用一次的資料表。
- 不允許寫入的資料表
- 「Tables With No Writes」檢視畫面會顯示 BigQuery 遷移評估在分析的記錄期間內,找不到任何更新的資料表。如果寫入作業次數偏低,表示您可能可以降低 BigQuery 的儲存空間費用。
- 分群和分區建議
這個檢視畫面會顯示可透過分區或叢集處理來提升效能的資料表。
我們會分析來源資料倉儲結構定義 (例如來源資料表中的 Partitioning 和 Primary Key),並找出最接近的 BigQuery 等效項目,以便達成類似的最佳化特性,進而提供中繼資料建議。
系統會分析來源查詢記錄,提供工作負載建議。系統會根據工作負載 (尤其是分析查詢記錄中的
WHERE
或JOIN
子句) 來決定最佳化建議。- 已轉換為叢集的分區
這個檢視畫面會根據分區限制定義,顯示超過 10,000 個分區的資料表。這些資料表通常是 BigQuery 分群的理想候選項目,可用於精細的資料表分區。
- 偏斜分區
「資料分區偏差」檢視畫面會顯示根據結構描述資料分析結果,且在一個或多個分區中出現資料偏差的資料表。這些資料表是結構定義變更的理想候選項目,因為對偏移分區的查詢可能效能不佳。
- BI Engine 和具體化檢視表
「低延遲查詢和具體化檢視表」檢視畫面會根據分析的記錄資料,顯示查詢執行時間的分布情形,並提供進一步最佳化建議,以提升 BigQuery 的效能。如果查詢時間分布圖顯示大量的查詢,且執行時間不到 1 秒,建議您啟用 BI Engine,以便加快 BI 和其他低延遲的工作負載。
報表的「遷移計畫」部分包含下列檢視畫面:
- SQL 翻譯
- 「SQL 翻譯」檢視畫面會列出 BigQuery 遷移評估工具自動轉換的查詢數量和詳細資料,且不需要手動介入。只要提供中繼資料,自動 SQL 翻譯功能通常就能達到高轉譯率。這個檢視畫面是互動式,可讓您分析常見查詢以及這些查詢的翻譯方式。
- SQL 翻譯離線作業
- 「離線工作量」檢視畫面會擷取需要手動介入的部分,包括特定 UDF 和表格或欄位的潛在字彙結構和語法違規。
- SQL 警告
- 「SQL 警告」檢視畫面會擷取已成功翻譯但需要審查的區域。
- BigQuery 保留關鍵字
- 「BigQuery 保留關鍵字」檢視畫面會顯示在 GoogleSQL 語言中具有特殊意義的關鍵字使用情形。這些關鍵字只有在以倒引號 (
`
) 字元括住時才能當成 ID 使用。 - 表格更新時間表
- 「表格更新時間表」檢視畫面會顯示表格的更新時間和頻率,協助您規劃移動表格的方式和時間。
- BigLake 外部資料表
- 「BigLake 外部資料表」檢視畫面會列出已識別為遷移至 BigLake 而非 BigQuery 的目標資料表。
報表的「附錄」部分包含下列檢視畫面:
- 詳細 SQL 翻譯離線工作量分析
- 「詳細離線工作量分析」檢視畫面會針對需要手動介入的 SQL 區域提供額外洞察資料。
- 詳細 SQL 警告分析
- 「詳細警告分析」檢視畫面會針對已成功翻譯但需要審查的 SQL 區域提供額外洞察資料。
分享報告
Looker Studio 報表是遷移評估的前端資訊主頁。這項權限取決於基礎資料集的存取權限。如要分享報表,收件者必須能存取 Looker Studio 報表本身,以及包含評估結果的 BigQuery 資料集。
從 Google Cloud 控制台開啟報表時,您會以預覽模式查看報表。如要建立報表並與其他使用者共用,請執行下列步驟:
- 按一下「編輯並分享」。Looker Studio 會提示您將新建立的 Looker Studio 連接器附加至新報表。
- 按一下「加入報表」。報表會收到個別報表 ID,您可以使用這組 ID 存取報表。
- 如要與其他使用者共用 Looker Studio 報表,請按照「與檢視者和編輯者共用報表」中的步驟操作。
- 授予使用者查看用於執行評估作業的 BigQuery 資料集權限。詳情請參閱「授予資料集存取權」。
查詢遷移評估輸出表格
雖然 Looker Studio 報表是查看評估結果最方便的方式,但您也可以在 BigQuery 資料集中查看及查詢基礎資料。
查詢範例
以下範例會取得不重複查詢總數、失敗的查詢數量,以及失敗的查詢百分比。
SELECT QueryCount.v AS QueryCount, ErrorCount.v as ErrorCount, (ErrorCount.v * 100) / QueryCount.v AS FailurePercentage FROM ( SELECT COUNT(*) AS v FROM `your_project.your_dataset.TranslationErrors` WHERE Severity = "ERROR" ) AS ErrorCount, ( SELECT COUNT(DISTINCT(QueryHash)) AS v FROM `your_project.your_dataset.Queries` ) AS QueryCount;
與其他專案中的使用者共用資料集
檢查資料集後,如果您想與不在專案中的使用者共用資料集,可以利用 BigQuery sharing (舊稱 Analytics Hub) 的發布者工作流程。
前往 Google Cloud 控制台的「BigQuery」頁面。
按一下資料集即可查看詳細資料。
依序按一下「分享」>「發布為商家資訊」。
在隨即開啟的對話方塊中,按照提示建立商家資訊。
如果您已建立資料交換,請略過步驟 5。
建立資料交換並設定權限。如要讓使用者在這個交換平台中查看你的產品資訊,請將他們加入「訂閱者」清單。
輸入商家資訊詳細資料。
「顯示名稱」是這項產品的名稱,為必填欄位;其他欄位則為選填欄位。
按一下 [發布]。
系統會建立私人產品資訊。
針對你的商店資訊,選取「動作」下方的「
」更多動作。按一下「複製分享連結」。
您可以將連結提供給訂閱您的交換平台或商家資訊的使用者。
評估表格結構定義
如要查看 BigQuery 遷移評估工具寫入 BigQuery 的資料表和結構定義,請選取資料倉儲:
Teradata
AllRIChildren
這個資料表提供資料表子項的參照完整性資訊。
欄 | 類型 | 說明 |
---|---|---|
IndexId |
INTEGER |
參考索引編號。 |
IndexName |
STRING |
索引的名稱。 |
ChildDB |
STRING |
已轉換為小寫的參照資料庫名稱。 |
ChildDBOriginal |
STRING |
以原始大小寫形式顯示的參照資料庫名稱。 |
ChildTable |
STRING |
已轉換為小寫的參照資料表名稱。 |
ChildTableOriginal |
STRING |
參照資料表的名稱 (保留大小寫)。 |
ChildKeyColumn |
STRING |
參照鍵中資料欄的名稱,已轉換為小寫。 |
ChildKeyColumnOriginal |
STRING |
參照鍵中資料欄的名稱,並保留大小寫。 |
ParentDB |
STRING |
已轉換為小寫的參照資料庫名稱。 |
ParentDBOriginal |
STRING |
參照資料庫的名稱,並保留大小寫。 |
ParentTable |
STRING |
已轉換為小寫的參照資料表名稱。 |
ParentTableOriginal |
STRING |
參照資料表的名稱,並保留大小寫。 |
ParentKeyColumn |
STRING |
已轉換為小寫的參照鍵中資料欄名稱。 |
ParentKeyColumnOriginal |
STRING |
參照鍵中列的名稱,並保留大小寫。 |
AllRIParents
這個表格提供資料表父項的參照完整性資訊。
欄 | 類型 | 說明 |
---|---|---|
IndexId |
INTEGER |
參考索引編號。 |
IndexName |
STRING |
索引的名稱。 |
ChildDB |
STRING |
已轉換為小寫的參照資料庫名稱。 |
ChildDBOriginal |
STRING |
以原始大小寫形式顯示的參照資料庫名稱。 |
ChildTable |
STRING |
已轉換為小寫的參照資料表名稱。 |
ChildTableOriginal |
STRING |
參照資料表的名稱 (保留大小寫)。 |
ChildKeyColumn |
STRING |
參照鍵中資料欄的名稱,已轉換為小寫。 |
ChildKeyColumnOriginal |
STRING |
參照鍵中資料欄的名稱,並保留大小寫。 |
ParentDB |
STRING |
已轉換為小寫的參照資料庫名稱。 |
ParentDBOriginal |
STRING |
參照資料庫的名稱,並保留大小寫。 |
ParentTable |
STRING |
已轉換為小寫的參照資料表名稱。 |
ParentTableOriginal |
STRING |
參照資料表的名稱,並保留大小寫。 |
ParentKeyColumn |
STRING |
已轉換為小寫的參照鍵中資料欄名稱。 |
ParentKeyColumnOriginal |
STRING |
參照鍵中列出的資料欄名稱,並保留大小寫。 |
Columns
下表提供資料欄的相關資訊。
欄 | 類型 | 說明 |
---|---|---|
DatabaseName |
STRING |
資料庫名稱,已轉換為小寫。 |
DatabaseNameOriginal |
STRING |
保留大小寫的資料庫名稱。 |
TableName |
STRING |
資料表名稱,已轉換為小寫。 |
TableNameOriginal |
STRING |
保留大小寫的資料表名稱。 |
ColumnName |
STRING |
資料欄名稱,已轉換為小寫。 |
ColumnNameOriginal |
STRING |
資料欄的名稱 (大小寫相同)。 |
ColumnType |
STRING |
資料欄的 BigQuery 類型,例如 STRING 。 |
OriginalColumnType |
STRING |
資料欄的原始類型,例如 VARCHAR 。 |
ColumnLength |
INTEGER |
資料欄的位元組數上限,例如 VARCHAR(30) 的位元組數上限為 30。 |
DefaultValue |
STRING |
預設值 (如有)。 |
Nullable |
BOOLEAN |
資料欄是否可為空值。 |
DiskSpace
下表提供每個資料庫的磁碟空間使用量資訊。
欄 | 類型 | 說明 |
---|---|---|
DatabaseName |
STRING |
資料庫名稱,已轉換為小寫。 |
DatabaseNameOriginal |
STRING |
保留大小寫的資料庫名稱。 |
MaxPerm |
INTEGER |
分配給永久空間的位元組數量上限。 |
MaxSpool |
INTEGER |
分配給暫存區空間的位元組數量上限。 |
MaxTemp |
INTEGER |
分配給暫時性空間的位元組數量上限。 |
CurrentPerm |
INTEGER |
分配給永久空間的位元組數。 |
CurrentSpool |
INTEGER |
分配給暫存區空間的位元組數。 |
CurrentTemp |
INTEGER |
分配給暫存空間的位元組數。 |
PeakPerm |
INTEGER |
永久空間上次重設後,使用量最高的位元組數。 |
PeakSpool |
INTEGER |
自上次重設後,用於暫存區空間的位元組數峰值。 |
PeakPersistentSpool |
INTEGER |
自上次重設永久空間以來,使用過的位元組數峰值。 |
PeakTemp |
INTEGER |
自上次重設臨時空間以來,用量最高的位元組數。 |
MaxProfileSpool |
INTEGER |
使用者暫存區空間的上限。 |
MaxProfileTemp |
INTEGER |
使用者的臨時空間限制。 |
AllocatedPerm |
INTEGER |
目前的永久空間分配。 |
AllocatedSpool |
INTEGER |
目前的暫存空間分配。 |
AllocatedTemp |
INTEGER |
目前的臨時空間分配。 |
Functions
下表提供這些函式的相關資訊。
欄 | 類型 | 說明 |
---|---|---|
DatabaseName |
STRING |
資料庫名稱,已轉換為小寫。 |
DatabaseNameOriginal |
STRING |
保留大小寫的資料庫名稱。 |
FunctionName |
STRING |
函式的名稱。 |
LanguageName |
STRING |
語言名稱。 |
Indices
下表提供索引相關資訊。
欄 | 類型 | 說明 |
---|---|---|
DatabaseName |
STRING |
資料庫名稱,已轉換為小寫。 |
DatabaseNameOriginal |
STRING |
保留大小寫的資料庫名稱。 |
TableName |
STRING |
資料表名稱,已轉換為小寫。 |
TableNameOriginal |
STRING |
保留大小寫的資料表名稱。 |
IndexName |
STRING |
索引的名稱。 |
ColumnName |
STRING |
資料欄名稱,已轉換為小寫。 |
ColumnNameOriginal |
STRING |
資料欄的名稱 (大小寫相同)。 |
OrdinalPosition |
INTEGER |
資料欄的位置。 |
UniqueFlag |
BOOLEAN |
指出索引是否強制執行唯一性。 |
Queries
下表提供擷取的查詢相關資訊。
欄 | 類型 | 說明 |
---|---|---|
QueryHash |
STRING |
查詢的雜湊。 |
QueryText |
STRING |
查詢的文字。 |
QueryLogs
這個表格提供一些已擷取查詢的執行統計資料。
欄 | 類型 | 說明 |
---|---|---|
QueryText |
STRING |
查詢的文字。 |
QueryHash |
STRING |
查詢的雜湊。 |
QueryId |
STRING |
查詢的 ID。 |
QueryType |
STRING |
查詢類型,可選查詢或 DDL。 |
UserId |
BYTES |
執行查詢的使用者 ID。 |
UserName |
STRING |
執行查詢的使用者名稱。 |
StartTime |
TIMESTAMP |
提交查詢時的時間戳記。 |
Duration |
STRING |
查詢的時間長度 (以毫秒為單位)。 |
AppId |
STRING |
執行查詢的應用程式 ID。 |
ProxyUser |
STRING |
透過中介層使用時的 Proxy 使用者。 |
ProxyRole |
STRING |
透過中介層使用的 Proxy 角色。 |
QueryTypeStatistics
這份表格提供查詢類型的統計資料。
欄 | 類型 | 說明 |
---|---|---|
QueryHash |
STRING |
查詢的雜湊。 |
QueryType |
STRING |
查詢的類型。 |
UpdatedTable |
STRING |
查詢更新的資料表 (如果有的話)。 |
QueriedTables |
ARRAY<STRING> |
已查詢的資料表清單。 |
ResUsageScpu
本表提供 CPU 資源使用率資訊。
欄 | 類型 | 說明 |
---|---|---|
EventTime |
TIMESTAMP |
事件的時間。 |
NodeId |
INTEGER |
節點 ID |
CabinetId |
INTEGER |
節點的實體機櫃編號。 |
ModuleId |
INTEGER |
節點的實體模組編號。 |
NodeType |
STRING |
節點類型。 |
CpuId |
INTEGER |
這個節點中的 CPU ID。 |
MeasurementPeriod |
INTEGER |
測量時間長度,以百毫秒為單位。 |
SummaryFlag |
STRING |
S - 摘要列,N - 非摘要列 |
CpuFrequency |
FLOAT |
CPU 頻率 (以 MHz 為單位)。 |
CpuIdle |
FLOAT |
CPU 閒置的時間,以百毫秒為單位。 |
CpuIoWait |
FLOAT |
CPU 等待 I/O 的時間,以百毫秒為單位。 |
CpuUServ |
FLOAT |
CPU 執行使用者程式碼的時間,以百毫秒為單位。 |
CpuUExec |
FLOAT |
CPU 執行服務程式碼的時間,以百毫秒為單位。 |
Roles
下表提供角色相關資訊。
欄 | 類型 | 說明 |
---|---|---|
RoleName |
STRING |
角色名稱。 |
Grantor |
STRING |
授予角色的資料庫名稱。 |
Grantee |
STRING |
獲授角色的使用者。 |
WhenGranted |
TIMESTAMP |
授予角色的時間。 |
WithAdmin |
BOOLEAN |
是否已為授予的角色設定「管理員」選項。 |
SchemaConversion
本表提供與叢集和分區相關的結構定義轉換資訊。
資料欄名稱 | 欄型別 | 說明 |
---|---|---|
DatabaseName |
STRING |
提供建議的來源資料庫名稱。資料庫會對應至 BigQuery 中的資料集。 |
TableName |
STRING |
建議適用的資料表名稱。 |
PartitioningColumnName |
STRING |
BigQuery 中建議的分區欄位名稱。 |
ClusteringColumnNames |
ARRAY |
BigQuery 中建議的分群欄位名稱。 |
CreateTableDDL |
STRING |
CREATE TABLE statement
在 BigQuery 中建立資料表。 |
TableInfo
下表提供資料表相關資訊。
欄 | 類型 | 說明 |
---|---|---|
DatabaseName |
STRING |
資料庫名稱,已轉換為小寫。 |
DatabaseNameOriginal |
STRING |
保留大小寫的資料庫名稱。 |
TableName |
STRING |
資料表名稱,已轉換為小寫。 |
TableNameOriginal |
STRING |
保留大小寫的資料表名稱。 |
LastAccessTimestamp |
TIMESTAMP |
上次存取資料表的時間。 |
LastAlterTimestamp |
TIMESTAMP |
上次變更資料表的時間。 |
TableKind |
STRING |
資料表類型。 |
TableRelations
下表提供資料表相關資訊。
欄 | 類型 | 說明 |
---|---|---|
QueryHash |
STRING |
建立關聯的查詢雜湊。 |
DatabaseName1 |
STRING |
第一個資料庫的名稱。 |
TableName1 |
STRING |
第一個資料表的名稱。 |
DatabaseName2 |
STRING |
第二個資料庫的名稱。 |
TableName2 |
STRING |
第二個資料表的名稱。 |
Relation |
STRING |
兩個資料表之間的關係類型。 |
TableSizes
下表提供資料表大小的相關資訊。
欄 | 類型 | 說明 |
---|---|---|
DatabaseName |
STRING |
資料庫名稱,已轉換為小寫。 |
DatabaseNameOriginal |
STRING |
保留大小寫的資料庫名稱。 |
TableName |
STRING |
資料表名稱,已轉換為小寫。 |
TableNameOriginal |
STRING |
保留大小寫的資料表名稱。 |
TableSizeInBytes |
INTEGER |
資料表的大小 (以位元組為單位)。 |
Users
這個表格提供使用者相關資訊。
欄 | 類型 | 說明 |
---|---|---|
UserName |
STRING |
使用者名稱。 |
CreatorName |
STRING |
建立此使用者的實體名稱。 |
CreateTimestamp |
TIMESTAMP |
建立此使用者的時間戳記。 |
LastAccessTimestamp |
TIMESTAMP |
這位使用者上次存取資料庫的時間戳記。 |
Redshift
Columns
Columns
資料表來自下列任一資料表:SVV_COLUMNS、INFORMATION_SCHEMA.COLUMNS 或 PG_TABLE_DEF,依優先順序排列。工具會嘗試優先載入最高優先順序的表格資料。如果失敗,則會嘗試從下一個最高優先順序的資料表載入資料。如要進一步瞭解結構定義和用法,請參閱 Amazon Redshift 或 PostgreSQL 說明文件。
欄 | 類型 | 說明 |
---|---|---|
DatabaseName |
STRING |
資料庫名稱。 |
SchemaName |
STRING |
結構定義的名稱。 |
TableName |
STRING |
資料表的名稱。 |
ColumnName |
STRING |
資料欄的名稱。 |
DefaultValue |
STRING |
預設值 (如果有的話)。 |
Nullable |
BOOLEAN |
資料欄是否可含有空值。 |
ColumnType |
STRING |
資料欄的類型,例如 VARCHAR 。 |
ColumnLength |
INTEGER |
欄的大小,例如 VARCHAR(30) 的大小為 30。 |
CreateAndDropStatistic
本表提供建立及刪除資料表的相關資訊。
欄 | 類型 | 說明 |
---|---|---|
QueryHash |
STRING |
查詢的雜湊。 |
DefaultDatabase |
STRING |
預設資料庫。 |
EntityType |
STRING |
實體的類型,例如 TABLE。 |
EntityName |
STRING |
實體名稱。 |
Operation |
STRING |
作業:CREATE 或 DROP。 |
Databases
這個資料表直接來自 Amazon Redshift 的 PG_DATABASE_INFO 資料表。說明會附上 PG 資料表的原始欄位名稱。如要進一步瞭解結構定義和用法,請參閱 Amazon Redshift 和 PostgreSQL 說明文件。
欄 | 類型 | 說明 |
---|---|---|
DatabaseName |
STRING |
資料庫名稱。來源名稱:datname |
Owner |
STRING |
資料庫擁有者。例如建立資料庫的使用者。來源名稱:datdba |
ExternalColumns
這個資料表直接包含 Amazon Redshift 的 SVV_EXTERNAL_COLUMNS 資料表資訊。如要進一步瞭解結構定義和用法,請參閱 Amazon Redshift 說明文件。
欄 | 類型 | 說明 |
---|---|---|
SchemaName |
STRING |
外部結構定義名稱。 |
TableName |
STRING |
外部資料表名稱。 |
ColumnName |
STRING |
外部資料欄名稱。 |
ColumnType |
STRING |
資料欄的類型。 |
Nullable |
BOOLEAN |
資料欄是否可含有空值。 |
ExternalDatabases
這個資料表直接包含 Amazon Redshift 的 SVV_EXTERNAL_DATABASES 資料表資訊。如要進一步瞭解結構定義和用法,請參閱 Amazon Redshift 說明文件。
欄 | 類型 | 說明 |
---|---|---|
DatabaseName |
STRING |
外部資料庫名稱。 |
Location |
STRING |
資料庫的位置。 |
ExternalPartitions
這個資料表直接包含 Amazon Redshift 的 SVV_EXTERNAL_PARTITIONS 資料表資訊。如要進一步瞭解結構定義和用法,請參閱 Amazon Redshift 說明文件。
欄 | 類型 | 說明 |
---|---|---|
SchemaName |
STRING |
外部結構定義名稱。 |
TableName |
STRING |
外部資料表名稱。 |
Location |
STRING |
分區的位置。欄長度上限為 128 個半形字元。較長的值會遭到截斷。 |
ExternalSchemas
這個資料表直接包含 Amazon Redshift 的 SVV_EXTERNAL_SCHEMAS 資料表資訊。如要進一步瞭解結構定義和用法,請參閱 Amazon Redshift 說明文件。
欄 | 類型 | 說明 |
---|---|---|
SchemaName |
STRING |
外部結構定義名稱。 |
DatabaseName |
STRING |
外部資料庫名稱。 |
ExternalTables
這個資料表直接包含 Amazon Redshift 的 SVV_EXTERNAL_TABLES 資料表資訊。如要進一步瞭解結構定義和用法,請參閱 Amazon Redshift 說明文件。
欄 | 類型 | 說明 |
---|---|---|
SchemaName |
STRING |
外部結構定義名稱。 |
TableName |
STRING |
外部資料表名稱。 |
Functions
這個資料表直接包含 Amazon Redshift 的 PG_PROC 資料表資訊。如要進一步瞭解結構定義和用法,請參閱 Amazon Redshift 和 PostgreSQL 說明文件。
欄 | 類型 | 說明 |
---|---|---|
SchemaName |
STRING |
結構定義的名稱。 |
FunctionName |
STRING |
函式的名稱。 |
LanguageName |
STRING |
這個函式的實作語言或呼叫介面。 |
Queries
這個表格是使用 QueryLogs
資料表中的資訊產生。與 QueryLogs
資料表不同,查詢資料表中的每個資料列只包含一個查詢陳述式,且儲存在「QueryText」欄中。這個表格會提供來源資料,以產生統計資料表和翻譯輸出內容。
欄 | 類型 | 說明 |
---|---|---|
QueryText |
STRING |
查詢的文字。 |
QueryHash |
STRING |
查詢的雜湊。 |
QueryLogs
下表提供查詢執行作業的相關資訊。
欄 | 類型 | 說明 |
---|---|---|
QueryText |
STRING |
查詢的文字。 |
QueryHash |
STRING |
查詢的雜湊。 |
QueryID |
STRING |
查詢的 ID。 |
UserID |
STRING |
使用者的 ID。 |
StartTime |
TIMESTAMP |
開始時間。 |
Duration |
INTEGER |
時間長度 (以毫秒為單位)。 |
QueryTypeStatistics
欄 | 類型 | 說明 |
---|---|---|
QueryHash |
STRING |
查詢的雜湊。 |
DefaultDatabase |
STRING |
預設資料庫。 |
QueryType |
STRING |
查詢的類型。 |
UpdatedTable |
STRING |
更新後的表格。 |
QueriedTables |
ARRAY<STRING> |
查詢的資料表。 |
TableInfo
這個表格包含從 Amazon Redshift 的 SVV_TABLE_INFO 資料表擷取的資訊。
欄 | 類型 | 說明 |
---|---|---|
DatabaseName |
STRING |
資料庫名稱。 |
SchemaName |
STRING |
結構定義的名稱。 |
TableId |
INTEGER |
資料表 ID。 |
TableName |
STRING |
資料表的名稱。 |
SortKey1 |
STRING |
排序鍵的第一欄。 |
SortKeyNum |
INTEGER |
定義為排序鍵的欄數。 |
MaxVarchar |
INTEGER |
使用 VARCHAR 資料類型的最大欄大小。 |
Size |
INTEGER |
資料表的大小 (以 1 MB 資料區塊為單位)。 |
TblRows |
INTEGER |
資料表中的資料列總數。 |
TableRelations
欄 | 類型 | 說明 |
---|---|---|
QueryHash |
STRING |
建立關聯的查詢 (例如 JOIN 查詢) 的雜湊值。 |
DefaultDatabase |
STRING |
預設資料庫。 |
TableName1 |
STRING |
關係的第一個資料表。 |
TableName2 |
STRING |
關係的第二個資料表。 |
Relation |
STRING |
關係類型。可使用下列任一值:COMMA_JOIN 、CROSS_JOIN 、FULL_OUTER_JOIN 、INNER_JOIN 、LEFT_OUTER_JOIN 、RIGHT_OUTER_JOIN 、CREATED_FROM 或 INSERT_INTO 。 |
Count |
INTEGER |
觀察到這項關係的頻率。 |
TableSizes
本表提供表格大小相關資訊。
欄 | 類型 | 說明 |
---|---|---|
DatabaseName |
STRING |
資料庫名稱。 |
SchemaName |
STRING |
結構定義的名稱。 |
TableName |
STRING |
資料表的名稱。 |
TableSizeInBytes |
INTEGER |
資料表的大小 (以位元組為單位)。 |
Tables
這個表格包含從 Amazon Redshift 的 SVV_TABLES 資料表擷取的資訊。如要進一步瞭解結構定義和用法,請參閱 Amazon Redshift 說明文件。
欄 | 類型 | 說明 |
---|---|---|
DatabaseName |
STRING |
資料庫名稱。 |
SchemaName |
STRING |
結構定義的名稱。 |
TableName |
STRING |
資料表的名稱。 |
TableType |
STRING |
資料表類型。 |
TranslatedQueries
本表提供查詢翻譯。
欄 | 類型 | 說明 |
---|---|---|
QueryHash |
STRING |
查詢的雜湊。 |
TranslatedQueryText |
STRING |
從來源方言翻譯成 GoogleSQL 的結果。 |
TranslationErrors
本表提供查詢轉譯錯誤的相關資訊。
欄 | 類型 | 說明 |
---|---|---|
QueryHash |
STRING |
查詢的雜湊。 |
Severity |
STRING |
錯誤的嚴重程度,例如 ERROR 。 |
Category |
STRING |
錯誤的類別,例如 AttributeNotFound 。 |
Message |
STRING |
包含錯誤詳細資料的訊息。 |
LocationOffset |
INTEGER |
錯誤位置的字元位置。 |
LocationLine |
INTEGER |
錯誤的行號。 |
LocationColumn |
INTEGER |
錯誤的資料欄編號。 |
LocationLength |
INTEGER |
錯誤位置的字元長度。 |
UserTableRelations
欄 | 類型 | 說明 |
---|---|---|
UserID |
STRING |
使用者 ID。 |
TableName |
STRING |
資料表的名稱。 |
Relation |
STRING |
關係。 |
Count |
INTEGER |
計數。 |
Users
這個資料表包含從 Amazon Redshift 的 PG_USER 資料表中擷取的資訊。如要進一步瞭解結構定義和用法,請參閱 PostgreSQL 說明文件。
欄 | 類型 | 說明 | |
---|---|---|---|
UserName |
STRING |
使用者名稱。 | |
UserId |
STRING |
使用者 ID。 |
Snowflake
Warehouses
欄 | 類型 | 說明 | 存在必要性 |
---|---|---|---|
WarehouseName |
STRING |
倉庫名稱。 | 一律 |
State |
STRING |
倉庫的狀態。可能的值:STARTED 、SUSPENDED 、RESIZING 。 |
一律 |
Type |
STRING |
倉儲類型。可能的值:STANDARD 、SNOWPARK-OPTIMIZED 。 |
一律 |
Size |
STRING |
倉庫大小。可能的值:X-Small 、Small 、Medium 、Large 、X-Large 、2X-Large ... 6X-Large 。 |
一律 |
Databases
欄 | 類型 | 說明 | 存在必要性 |
---|---|---|---|
DatabaseNameOriginal |
STRING |
資料庫名稱,大小寫不變。 | 一律 |
DatabaseName |
STRING |
資料庫名稱,已轉換為小寫。 | 一律 |
Schemata
欄 | 類型 | 說明 | 存在必要性 |
---|---|---|---|
DatabaseNameOriginal |
STRING |
結構定義所屬資料庫的名稱,並保留大小寫。 | 一律 |
DatabaseName |
STRING |
結構定義所屬資料庫的名稱,已轉換為小寫。 | 一律 |
SchemaNameOriginal |
STRING |
結構定義的名稱,並保留大小寫。 | 一律 |
SchemaName |
STRING |
已轉換為小寫的結構定義名稱。 | 一律 |
Tables
欄 | 類型 | 說明 | 存在必要性 |
---|---|---|---|
DatabaseNameOriginal |
STRING |
資料表所屬資料庫的名稱,並保留大小寫。 | 一律 |
DatabaseName |
STRING |
資料表所屬資料庫的名稱,已轉換為小寫。 | 一律 |
SchemaNameOriginal |
STRING |
資料表所屬結構定義的名稱,並保留大小寫。 | 一律 |
SchemaName |
STRING |
資料表所屬結構定義的名稱,已轉換為小寫。 | 一律 |
TableNameOriginal |
STRING |
資料表的名稱,並保留大小寫。 | 一律 |
TableName |
STRING |
資料表名稱,已轉換為小寫。 | 一律 |
TableType |
STRING |
資料表類型 (視圖 / 物化視圖 / 基礎資料表)。 | 一律 |
RowCount |
BIGNUMERIC |
資料表中的資料列數。 | 一律 |
Columns
欄 | 類型 | 說明 | 存在必要性 |
---|---|---|---|
DatabaseName |
STRING |
資料庫名稱,已轉換為小寫。 | 一律 |
DatabaseNameOriginal |
STRING |
資料庫名稱,大小寫不變。 | 一律 |
SchemaName |
STRING |
已轉換為小寫的結構定義名稱。 | 一律 |
SchemaNameOriginal |
STRING |
結構定義的名稱,並保留大小寫。 | 一律 |
TableName |
STRING |
資料表名稱,已轉換為小寫。 | 一律 |
TableNameOriginal |
STRING |
保留大小寫的資料表名稱。 | 一律 |
ColumnName |
STRING |
資料欄名稱,已轉換為小寫。 | 一律 |
ColumnNameOriginal |
STRING |
資料欄的名稱 (大小寫相同)。 | 一律 |
ColumnType |
STRING |
資料欄的類型。 | 一律 |
CreateAndDropStatistics
欄 | 類型 | 說明 | 在家狀態 |
---|---|---|---|
QueryHash |
STRING |
查詢的雜湊。 | 一律 |
DefaultDatabase |
STRING |
預設資料庫。 | 一律 |
EntityType |
STRING |
實體的類型,例如 TABLE 。 |
一律 |
EntityName |
STRING |
實體名稱。 | 一律 |
Operation |
STRING |
作業:CREATE 或 DROP 。 |
一律 |
Queries
欄 | 類型 | 說明 | 在家狀態 |
---|---|---|---|
QueryText |
STRING |
查詢的文字。 | 一律 |
QueryHash |
STRING |
查詢的雜湊。 | 一律 |
QueryLogs
欄 | 類型 | 說明 | 在家狀態 |
---|---|---|---|
QueryText |
STRING |
查詢的文字。 | 一律 |
QueryHash |
STRING |
查詢的雜湊。 | 一律 |
QueryID |
STRING |
查詢的 ID。 | 一律 |
UserID |
STRING |
使用者的 ID。 | 一律 |
StartTime |
TIMESTAMP |
開始時間。 | 一律 |
Duration |
INTEGER |
時間長度 (以毫秒為單位)。 | 一律 |
QueryTypeStatistics
欄 | 類型 | 說明 | 在家狀態 |
---|---|---|---|
QueryHash |
STRING |
查詢的雜湊。 | 一律 |
DefaultDatabase |
STRING |
預設資料庫。 | 一律 |
QueryType |
STRING |
查詢的類型。 | 一律 |
UpdatedTable |
STRING |
更新後的表格。 | 一律 |
QueriedTables |
REPEATED STRING |
查詢的資料表。 | 一律 |
TableRelations
欄 | 類型 | 說明 | 在家狀態 |
---|---|---|---|
QueryHash |
STRING |
建立關聯的查詢雜湊 (例如 JOIN 查詢)。 |
一律 |
DefaultDatabase |
STRING |
預設資料庫。 | 一律 |
TableName1 |
STRING |
關係的第一個資料表。 | 一律 |
TableName2 |
STRING |
關係的第二個資料表。 | 一律 |
Relation |
STRING |
關係類型。 | 一律 |
Count |
INTEGER |
觀察到這項關係的頻率。 | 一律 |
TranslatedQueries
欄 | 類型 | 說明 | 在家狀態 |
---|---|---|---|
QueryHash |
STRING |
查詢的雜湊。 | 一律 |
TranslatedQueryText |
STRING |
從來源方言翻譯成 BigQuery SQL 的結果。 | 一律 |
TranslationErrors
欄 | 類型 | 說明 | 在家狀態 |
---|---|---|---|
QueryHash |
STRING |
查詢的雜湊。 | 一律 |
Severity |
STRING |
錯誤的嚴重程度,例如 ERROR 。 |
一律 |
Category |
STRING |
錯誤類別,例如 AttributeNotFound 。 |
一律 |
Message |
STRING |
包含錯誤詳細資料的訊息。 | 一律 |
LocationOffset |
INTEGER |
錯誤位置的字元位置。 | 一律 |
LocationLine |
INTEGER |
錯誤的行號。 | 一律 |
LocationColumn |
INTEGER |
錯誤的資料欄編號。 | 一律 |
LocationLength |
INTEGER |
錯誤位置的字元長度。 | 一律 |
UserTableRelations
欄 | 類型 | 說明 | 在家狀態 |
---|---|---|---|
UserID |
STRING |
User ID。 | 一律 |
TableName |
STRING |
資料表的名稱。 | 一律 |
Relation |
STRING |
關係。 | 一律 |
Count |
INTEGER |
計數。 | 一律 |
Apache Hive
Columns
下表提供資料欄的相關資訊:
欄 | 類型 | 說明 |
---|---|---|
DatabaseName |
STRING |
保留大小寫的資料庫名稱。 |
TableName |
STRING |
保留大小寫的資料表名稱。 |
ColumnName |
STRING |
資料欄的名稱 (大小寫相同)。 |
ColumnType |
STRING |
資料欄的 BigQuery 類型,例如 STRING 。 |
OriginalColumnType |
STRING |
資料欄的原始類型,例如 VARCHAR 。 |
CreateAndDropStatistic
本表提供資料表建立和刪除作業的相關資訊:
欄 | 類型 | 說明 |
---|---|---|
QueryHash |
STRING |
查詢的雜湊。 |
DefaultDatabase |
STRING |
預設資料庫。 |
EntityType |
STRING |
實體的類型,例如 TABLE 。 |
EntityName |
STRING |
實體名稱。 |
Operation |
STRING |
在資料表上執行的作業 (CREATE 或 DROP )。 |
Databases
下表提供資料庫相關資訊:
欄 | 類型 | 說明 |
---|---|---|
DatabaseName |
STRING |
保留大小寫的資料庫名稱。 |
Owner |
STRING |
資料庫擁有者。例如建立資料庫的使用者。 |
Location |
STRING |
資料庫在檔案系統中的位置。 |
Functions
下表提供函式的相關資訊:
欄 | 類型 | 說明 |
---|---|---|
DatabaseName |
STRING |
保留大小寫的資料庫名稱。 |
FunctionName |
STRING |
函式的名稱。 |
LanguageName |
STRING |
語言名稱。 |
ClassName |
STRING |
函式的類別名稱。 |
ObjectReferences
下表提供查詢中參照的物件相關資訊:
欄 | 類型 | 說明 |
---|---|---|
QueryHash |
STRING |
查詢的雜湊。 |
DefaultDatabase |
STRING |
預設資料庫。 |
Clause |
STRING |
物件出現的子句。例如 SELECT 。 |
ObjectName |
STRING |
物件名稱。 |
Type |
STRING |
物件的類型。 |
Subtype |
STRING |
物件的子類型。 |
ParititionKeys
下表提供分區鍵的相關資訊:
欄 | 類型 | 說明 |
---|---|---|
DatabaseName |
STRING |
保留大小寫的資料庫名稱。 |
TableName |
STRING |
保留大小寫的資料表名稱。 |
ColumnName |
STRING |
資料欄的名稱 (大小寫相同)。 |
ColumnType |
STRING |
資料欄的 BigQuery 類型,例如 STRING 。 |
Parititions
下表提供資料表分區的相關資訊:
欄 | 類型 | 說明 |
---|---|---|
DatabaseName |
STRING |
保留大小寫的資料庫名稱。 |
TableName |
STRING |
保留大小寫的資料表名稱。 |
PartitionName |
STRING |
分區名稱。 |
CreateTimestamp |
TIMESTAMP |
建立此區隔的時間戳記。 |
LastAccessTimestamp |
TIMESTAMP |
上次存取此分區的時間戳記。 |
LastDdlTimestamp |
TIMESTAMP |
上次變更此分區的時間戳記。 |
TotalSize |
INTEGER |
分區的壓縮大小 (以位元組為單位)。 |
Queries
這個表格是使用 QueryLogs
資料表中的資訊產生。與 QueryLogs
表格不同,查詢表中的每個資料列只包含一個查詢陳述式,且儲存在 QueryText
資料欄中。這個表格提供用於產生統計資料表和翻譯輸出的來源資料:
欄 | 類型 | 說明 |
---|---|---|
QueryHash |
STRING |
查詢的雜湊。 |
QueryText |
STRING |
查詢的文字。 |
QueryLogs
下表提供擷取的查詢執行統計資料:
欄 | 類型 | 說明 |
---|---|---|
QueryText |
STRING |
查詢的文字。 |
QueryHash |
STRING |
查詢的雜湊。 |
QueryId |
STRING |
查詢的 ID。 |
QueryType |
STRING |
查詢的類型,可能是 Query 或 DDL 。 |
UserName |
STRING |
執行查詢的使用者名稱。 |
StartTime |
TIMESTAMP |
提交查詢時的時間戳記。 |
Duration |
STRING |
查詢的時間長度 (以毫秒為單位)。 |
QueryTypeStatistics
下表提供查詢類型的統計資料:
欄 | 類型 | 說明 |
---|---|---|
QueryHash |
STRING |
查詢的雜湊。 |
QueryType |
STRING |
查詢的類型。 |
UpdatedTable |
STRING |
查詢更新的資料表 (如果有的話)。 |
QueriedTables |
ARRAY<STRING> |
已查詢的資料表清單。 |
QueryTypes
下表提供查詢類型的統計資料:
欄 | 類型 | 說明 |
---|---|---|
QueryHash |
STRING |
查詢的雜湊。 |
Category |
STRING |
查詢的類別。 |
Type |
STRING |
查詢的類型。 |
Subtype |
STRING |
查詢的子類型。 |
SchemaConversion
下表提供與叢集和分區相關的結構定義轉換資訊:
資料欄名稱 | 欄型別 | 說明 |
---|---|---|
DatabaseName |
STRING |
提供建議的來源資料庫名稱。資料庫會對應至 BigQuery 中的資料集。 |
TableName |
STRING |
建議適用的資料表名稱。 |
PartitioningColumnName |
STRING |
BigQuery 中建議的分區欄位名稱。 |
ClusteringColumnNames |
ARRAY |
BigQuery 中建議的分群欄位名稱。 |
CreateTableDDL |
STRING |
CREATE TABLE statement
在 BigQuery 中建立資料表。 |
TableRelations
下表提供資料表相關資訊:
欄 | 類型 | 說明 |
---|---|---|
QueryHash |
STRING |
建立關聯的查詢雜湊。 |
DatabaseName1 |
STRING |
第一個資料庫的名稱。 |
TableName1 |
STRING |
第一個資料表的名稱。 |
DatabaseName2 |
STRING |
第二個資料庫的名稱。 |
TableName2 |
STRING |
第二個資料表的名稱。 |
Relation |
STRING |
兩個資料表之間的關係類型。 |
TableSizes
下表提供表格大小的相關資訊:
欄 | 類型 | 說明 |
---|---|---|
DatabaseName |
STRING |
保留大小寫的資料庫名稱。 |
TableName |
STRING |
保留大小寫的資料表名稱。 |
TotalSize |
INTEGER |
資料表的大小 (以位元組為單位)。 |
Tables
下表提供資料表相關資訊:
欄 | 類型 | 說明 |
---|---|---|
DatabaseName |
STRING |
保留大小寫的資料庫名稱。 |
TableName |
STRING |
保留大小寫的資料表名稱。 |
Type |
STRING |
資料表類型。 |
TranslatedQueries
下表提供查詢翻譯:
欄 | 類型 | 說明 |
---|---|---|
QueryHash |
STRING |
查詢的雜湊。 |
TranslatedQueryText |
STRING |
從來源方言轉換為 GoogleSQL 的結果。 |
TranslationErrors
下表提供查詢轉譯錯誤的相關資訊:
欄 | 類型 | 說明 |
---|---|---|
QueryHash |
STRING |
查詢的雜湊。 |
Severity |
STRING |
錯誤的嚴重程度,例如 ERROR 。 |
Category |
STRING |
錯誤的類別,例如 AttributeNotFound 。 |
Message |
STRING |
包含錯誤詳細資料的訊息。 |
LocationOffset |
INTEGER |
錯誤位置的字元位置。 |
LocationLine |
INTEGER |
錯誤的行號。 |
LocationColumn |
INTEGER |
錯誤的資料欄編號。 |
LocationLength |
INTEGER |
錯誤位置的字元長度。 |
UserTableRelations
欄 | 類型 | 說明 |
---|---|---|
UserID |
STRING |
使用者 ID。 |
TableName |
STRING |
資料表的名稱。 |
Relation |
STRING |
關係。 |
Count |
INTEGER |
計數。 |
疑難排解
本節將說明將資料倉儲遷移至 BigQuery 時可能遇到的常見問題和排解技巧。
dwh-migration-dumper
工具錯誤
如要排解在擷取中繼資料或查詢記錄時,在 dwh-migration-dumper
工具終端機輸出內容中發生的錯誤和警告,請參閱產生中繼資料的疑難排解。
Hive 遷移錯誤
本節說明在規劃將資料倉儲從 Hive 遷移至 BigQuery 時,可能會遇到的常見問題。
記錄鉤子會在 hive-server2
記錄檔中寫入偵錯記錄訊息。如果遇到任何問題,請查看記錄掛鉤偵錯記錄,其中包含 MigrationAssessmentLoggingHook
字串。
處理 ClassNotFoundException
錯誤
這個錯誤可能是因為記錄掛鉤 JAR 檔案放錯位置所致。請確認您已將 JAR 檔案新增至 Hive 叢集中的 auxlib 資料夾。或者,您也可以在 hive.aux.jars.path
屬性中指定 JAR 檔案的完整路徑,例如 file://
。
子資料夾未顯示在已設定的資料夾中
這個問題可能是因為設定錯誤,或是在記錄掛鉤初始化期間發生問題。
請在 hive-server2
偵錯記錄中搜尋下列記錄鉤子訊息:
Unable to initialize logger, logging disabled
Log dir configuration key 'dwhassessment.hook.base-directory' is not set, logging disabled.
Error while trying to set permission
請查看問題詳細資料,看看是否有任何需要修正的項目來解決問題。
檔案未顯示在資料夾中
這個問題可能是在事件處理期間或寫入檔案時遇到的問題所造成。
在 hive-server2
偵錯記錄中搜尋下列記錄掛鉤訊息:
Failed to close writer for file
Got exception while processing event
Error writing record for query
請查看問題詳細資料,看看是否有任何需要修正的項目來解決問題。
部分查詢事件未偵測到
這個問題可能是因為記錄掛鉤程式序列佇列溢位。
在 hive-server2
偵錯記錄中搜尋下列記錄鉤子訊息:
Writer queue is full. Ignoring event
如果有這類訊息,請考慮提高 dwhassessment.hook.queue.capacity
參數。
後續步驟
如要進一步瞭解 dwh-migration-dumper
工具,請參閱 dwh-migration-tools。
您也可以進一步瞭解資料倉儲遷移作業的下列步驟: