本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Aurora 與亞馬 Amazon Redshift 零ETL集成進行故障排除
您可以在 Amazon Redshift 中查詢 SVV_ INTEGRATION 系統資料表,以檢查零ETL整合的狀態。如果 state
資料欄具有 ErrorState
的值,表示有問題。如需詳細資訊,請參閱使用系統資料表監控整合。
使用下列資訊對 Aurora 零ETL整合的常見問題進行疑難排 Amazon Redshift。
我無法創建零ETL集成
如果您無法建立零ETL整合,請確定下列項目適用於來源資料庫:
-
您的來源資料庫必須執行支援的資料庫引擎版本。如需支援的版本的清單,請參閱支援與 Amazon Redshift 進行零ETL整合的區域和 Aurora 資料庫引擎。
-
您已正確設定資料庫參數。如果必要的參數設定不正確或與資料庫沒有關聯,建立會失敗。請參閱 步驟 1:建立自訂資料庫叢集參數群組。。
此外,請確定下列情況對於您的目標資料倉儲是正確的:
-
已啟用區分大小寫。請參閱開啟資料倉儲的區分大小寫。
-
您已新增正確的授權主體和整合來源。請參閱為您的 Amazon Redshift 資料倉儲設定授權。
-
資料倉儲已加密 (如果是佈建的叢集)。請參閱 Amazon Redshift 資料庫加密。
我的整合停留在一種狀態 Syncing
Syncing
如果您變更其中一個所需資料庫參數的值,您的整合可能會持續顯示狀態。
若要修正此問題,請檢查與來源叢集相關聯之參數群組中的參數值,並確定它們符合所需的值。如需詳細資訊,請參閱步驟 1:建立自訂資料庫叢集參數群組。。
如果您修改任何參數,請務必重新啟動資叢集以套用變更。
我的表沒有複製到 Amazon Redshift
如果 Amazon Redshift 中沒有看到一或多個表格反映出來,您可以執行下列命令來重新同步處理它們:
ALTER DATABASE
dbname
INTEGRATION REFRESH TABLEStable1
,table2
;
如需詳細資訊,請參閱ALTERDATABASE亞 Amazon Redshift SQL 參考資料中的。
您的資料可能無法複寫,因為一或多個來源資料表沒有主索引鍵。Amazon Redshift 中的監控儀表板會將這些表格的狀態顯示為Failed
,而整體零整ETL合的狀態會變更為Needs attention
。若要解決這個問題,您可以識別資料表中可以成為主索引鍵的現有索引鍵,或者您可以新增合成的主索引鍵。有關詳細解決方案,請參閱在不亞馬遜。 以下資源:
我的一個或多個 Amazon Redshift 資料表需要重新同步
在源數據庫上運行某些命令可能需要重新同步您的表。在這些情況下,SVV_ _ INTEGRATION TABLE _ STATE 系統檢視會顯示table_state
的ResyncRequired
,這表示整合必須將該特定資料表的資料從 My 完全重新載入SQL至 Amazon Redshift。
當資料表開始重新同步時,其會進入 Syncing
的狀態。您不需要採取任何手動動作,即可重新同步資料表。資料表資料正在重新同步處理時,您無法在 Amazon Redshift 中存取它。
以下是一些可以將資料表置於 ResyncRequired
狀態的範例操作,以及可以考慮的替代方法。
作業 | 範例 | 備用 |
---|---|---|
將資料欄新增到特定位置 |
|
Amazon Redshift 不支援使用 first 或 after 關鍵字將資料欄新增到特定位置。如果目標資料表中的資料欄順序並不重要,請使用更簡單的命令,將資料欄新增至資料表的尾端:
|
新增具有預設 CURRENT_TIMESTAMP 的時間戳記資料欄 |
|
現有表格列的CURRENT_TIMESTAMP 值是針對我的 SQL Aurora My SQL 果沒有完整的表格資料重新同步,就無法在 Amazon Redshift 中進行模擬。如果可能,請將預設值切換為 |
在單一命令內執行多個資料欄操作 |
|
考慮將命令分成兩個單獨的操作 (ADD 和 RENAME ),這不需要重新同步。 |