

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# KCL 3.x から単一テーブル形式に移行する
<a name="kcl-migration-from-3-3-5"></a>

3 つのすべての DynamoDB メタデータテーブル (リーステーブル、ワーカーメトリクステーブル、コーディネーター状態テーブル) で KCL 3.x を実行すると、単一のテーブル形式に移行して、すべてのメタデータをリーステーブルに統合できます。

**前提条件**
+ アプリケーションは、3 つのメタデータテーブルすべてを使用して KCL 3.x を実行します。
+ アプリケーションは安定しており、すべてのワーカーは正常です。
+ アプリケーションは KCL 3.x の移行を完了し、 を設定しません`CoordinatorConfig.clientVersionConfig`。テーブルの移行と 2.x から 3.x へのクライアントバージョン移行を同時に実行しないでください。

**KCL 3.x から単一テーブル形式に移行するには、2 フェーズのデプロイプロセスに従います。**  


1. **フェーズ 1:** プロジェクトの依存関係を KCL 3.5 以降に更新します。を `false` (デフォルト) `migrateAllEntitiesToLeaseTable`に設定してデプロイします。このデプロイでは、単一のテーブル形式をサポートする新しいコードがインストールされますが、移行はアクティブ化されません。

1. すべてのワーカーでデプロイが完了するまで待ちます。が `TableMigrationStatus`に達するまで、`TableMigration3.5`コーディネーター状態エントリをモニタリングします`DEPLOYED`。リグレッションがないことを確認し、十分なベイク時間を確保します。

1. **フェーズ 2:** を `migrateAllEntitiesToLeaseTable`に設定して再度デプロイします`true`。このデプロイでは、単一テーブル形式への移行が開始されます。

1. をモニタリングします`TableMigrationStatus`。リーダーワーカーは DEPLOYED、PENDING、COMPLETE を通じて状態を進めます。

1. ステータスが COMPLETE に達したら、リグレッションがないことを確認し、追加のベイク時間を確保して、ロールバックが不要であることを確認します。

1. 古いワーカーメトリクスとコーディネーター状態テーブルを手動で削除します。KCL はこれらのテーブルを自動的に削除せず、使用を停止するだけです。`CoordinatorConfig.coordinatorStateTableConfig` または を設定している場合は`LeaseManagementConfig.workerUtilizationAwareAssignmentConfig.workerMetricsTableConfig`、これらの設定を非推奨として削除できます。

**重要**  
移行が COMPLETE 状態になった後は、アプリケーションをロールバックしないでください。COMPLETE の後、アプリケーションは単一テーブルモードでのみ動作します。フェーズ 1 へのコードロールバックでも、複数のテーブルには切り替えられません。設定は無視され、アプリケーションはリーステーブルのみを使用し続けます。

移行状態とロールバックオプションの詳細については、「」を参照してください[KCL の単一テーブル形式](kcl-single-table-format.md)。