View a markdown version of this page

從 KCL 3.x 遷移至單一資料表格式 - Amazon Kinesis Data Streams

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

從 KCL 3.x 遷移至單一資料表格式

如果您使用所有三個 DynamoDB 中繼資料資料表 (租用資料表、工作者指標資料表和協調器狀態資料表) 執行 KCL 3.x,則可以遷移至單一資料表格式,將所有中繼資料合併到租用資料表。

先決條件

  • 您的應用程式會使用所有三個中繼資料表執行 KCL 3.x。

  • 您的應用程式穩定且所有工作者都正常運作。

  • 您的應用程式已完成 KCL 3CoordinatorConfig.clientVersionConfig.x 遷移,且未設定 。請勿同時執行資料表遷移和從 2.x 到 3.x 的用戶端版本遷移。

若要從 KCL 3.x 遷移至單一資料表格式,請遵循兩階段部署程序

  1. 階段 1:將您的專案相依性更新至 KCL 3.5 或更新版本。部署 ,並將 migrateAllEntitiesToLeaseTable 設為 false(預設值)。此部署會安裝支援單一資料表格式但不會啟用遷移的新程式碼。

  2. 等待所有工作者完成部署。監控TableMigration3.5協調器狀態項目,直到 TableMigrationStatus達到 DEPLOYED。確認沒有迴歸,並允許足夠的製作時間。

  3. 階段 2:migrateAllEntitiesToLeaseTable 設為 以再次部署true。此部署會開始遷移至單一資料表格式。

  4. 監控 TableMigrationStatus。領導者工作者透過 DEPLOYED、待定和完成來推進狀態。

  5. 狀態達到 COMPLETE 後,請確認沒有迴歸,並允許額外的製作時間,以確保不需要轉返。

  6. 手動刪除舊的工作者指標和協調器狀態資料表。KCL 不會自動刪除這些資料表,只會停止使用它們。如果您已設定 CoordinatorConfig.coordinatorStateTableConfigLeaseManagementConfig.workerUtilizationAwareAssignmentConfig.workerMetricsTableConfig,您可以在這些組態已棄用時將其移除。

重要

在遷移達到 COMPLETE 狀態之後,請勿復原應用程式。在 COMPLETE 之後,應用程式只會以單一資料表模式運作。即使程式碼轉返至階段 1 也不會切換回多個資料表,也會忽略組態,而且應用程式只會繼續使用租用資料表。

如需遷移狀態和復原選項的詳細資訊,請參閱 KCL 的單一資料表格式