針對 Amazon RDS 零 ETL 整合進行疑難排解
您可以在分析目的地中查詢 SVV_INTEGRATION 系統資料表,以檢查零 ETL 整合的狀態。如果 state 資料欄具有 ErrorState 的值,表示有問題。如需詳細資訊,請參閱 使用 Amazon Redshift 的系統資料表監控整合。
使用下列資訊,針對 Amazon RDS 零 ETL 整合的常見問題進行疑難排解。
重要
重新同步和重新整理操作不適用於與 Amazon SageMaker AI 資料湖倉的零 ETL 整合。如果整合發生問題,您必須刪除整合並建立新的整合。您無法重新整理或重新同步現有的整合。
主題
我無法建立零 ETL 整合
如果您無法建立零 ETL 整合,請確定下列情況對於您的來源資料庫是正確的:
-
來源資料庫必須執行支援的資料庫引擎版本。如需支援的版本的清單,請參閱Amazon RDS 零 ETL 整合的支援區域和資料庫引擎。
-
您已正確設定資料庫參數。如果必要參數設定不正確或未與資料庫相關聯,則建立會失敗。請參閱步驟 1:建立自訂資料庫參數群組。。
此外,請確定下列情況對於您的目標資料倉儲是正確的:
-
已啟用區分大小寫。請參閱開啟資料倉儲的區分大小寫。
-
您已新增正確的授權主體和整合來源。請參閱為您的 Amazon Redshift 資料倉儲設定授權。
-
資料倉儲已加密 (如果是佈建叢集)。請參閱 Amazon Redshift 資料庫加密。
我的整合停滯在 Syncing 狀態
如果您變更其中一個必要資料庫參數的值,您的整合可能會持續顯示 Syncing 的狀態。
若要修正此問題,請檢查與來源資料庫相關聯之參數群組中的參數值,並確定其符合必要值。如需詳細資訊,請參閱 步驟 1:建立自訂資料庫參數群組。。
如果您修改任何參數,請務必將資料庫重新開機以套用變更。
我的資料表未複寫至 Amazon Redshift
如果您沒有看到一或多個資料表反映在 Amazon Redshift 中,您可以執行下列命令來重新同步它們:
ALTER DATABASEdbnameINTEGRATION REFRESH TABLEStable1,table2;
如需詳細資訊,請參閱 Amazon Redshift SQL 參考中的 ALTER DATABASE。
您的資料可能不會複寫,因為一或多個來源資料表沒有主索引鍵。Amazon Redshift 中的監控儀表板會將這些資料表的狀態顯示為 Failed,而整體零 ETL 整合的狀態會變更為 Needs attention。若要解決此問題,您可以識別資料表中可成為主索引鍵的現有索引鍵,也可以新增合成主索引鍵。如需詳細解決方案,請參閱在建立與 Amazon Redshift 的 Amazon Aurora MySQL 或 Amazon RDS for MySQL 零 ETL 整合時,在沒有主索引鍵的情況下處理資料表
我的一個或多個 Amazon Redshift 資料表需要重新同步
在來源資料庫上執行某些命令,可能需要重新同步您的資料表。在這些情況下,SVV_INTEGRATION_TABLE_STATE 系統檢視會顯示 ResyncRequired 的 table_state,這表示整合必須將該特定資料表的資料從 MySQL 完全重新載入至 Amazon Redshift。
當資料表開始重新同步時,其會進入 Syncing 的狀態。您不需要採取任何手動動作,即可重新同步資料表。當資料表資料重新同步時,您無法在 Amazon Redshift 中存取該資料。
以下是一些可以將資料表置於 ResyncRequired 狀態的範例操作,以及可以考慮的替代方法。
| 作業 | 範例 | 備用 |
|---|---|---|
| 將資料欄新增到特定位置 |
|
Amazon Redshift 不支援使用 first 或 after 關鍵字將資料欄新增到特定位置。如果目標資料表中的資料欄順序並不重要,請使用更簡單的命令,將資料欄新增至資料表的尾端:
|
新增具有預設 CURRENT_TIMESTAMP 的時間戳記資料欄 |
|
現有資料表資料列的 CURRENT_TIMESTAMP 值是由 RDS for MySQL 計算,若沒有完整的資料表資料重新同步,就無法在 Amazon Redshift 中進行模擬。如果可能,請將預設值切換為 |
| 在單一命令內執行多個資料欄操作 |
|
考慮將命令分成兩個單獨的操作 (ADD 和 RENAME),這不需要重新同步。 |
Amazon SageMaker AI 資料湖倉零 ETL 整合的整合失敗問題
如果您在現有與 Amazon SageMaker AI 資料湖倉的零 ETL 整合遇到問題,唯一的解決方法是刪除整合並建立新的整合。與其他 AWS 服務不同,零 ETL 整合不支援重新整理或重新同步操作。
若要解決整合問題:
-
使用主控台、CLI 或 API 刪除有問題的零 ETL 整合。
-
驗證來源資料庫和目標資料倉儲組態是否正確。
-
使用相同或更新的組態建立新的零 ETL 整合。
此程序將導致資料管道完全重新初始化,這可能需要一些時間,取決於來源資料庫的大小。