As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Migrar do KCL 3.x para o formato de tabela única
Se você executar o KCL 3.x com todas as três tabelas de metadados do DynamoDB (tabela de lease, tabela de métricas do trabalhador e tabela de estado do coordenador), poderá migrar para o formato de tabela única para consolidar todos os metadados na tabela de lease.
Pré-requisitos
-
Seu aplicativo executa o KCL 3.x com todas as três tabelas de metadados.
-
Seu aplicativo é estável e todos os funcionários estão saudáveis.
-
Seu aplicativo concluiu a migração do KCL 3.x e não está configurado.
CoordinatorConfig.clientVersionConfigNão execute a migração da tabela e a migração da versão do cliente de 2.x para 3.x ao mesmo tempo.
Para migrar do KCL 3.x para o formato de tabela única, siga o processo de implantação em duas fases
-
Fase 1: Atualize a dependência do projeto para o KCL 3.5 ou posterior. Implante com
migrateAllEntitiesToLeaseTabledefinido comofalse(o padrão). Essa implantação instala o novo código que oferece suporte ao formato de tabela única, mas não ativa a migração. -
Aguarde até que a implantação seja concluída em todos os trabalhadores. Monitore a entrada estadual do
TableMigration3.5coordenador atéTableMigrationStatuschegarDEPLOYED. Verifique se não há regressões e aguarde um tempo de cozimento suficiente. -
Fase 2: implante novamente com
migrateAllEntitiesToLeaseTabledefinido comotrue. Essa implantação inicia a migração para o formato de tabela única. -
Monitore
TableMigrationStatuso. O trabalhador líder avança no estado por meio de IMPLANTADO, PENDENTE e COMPLETO. -
Depois que o status atingir CONCLUÍDO, verifique se não há regressões e aguarde mais tempo de cozimento para garantir que nenhuma reversão seja necessária.
-
Exclua manualmente as métricas antigas do trabalhador e as tabelas de estado do coordenador. O KCL não exclui essas tabelas automaticamente — ele apenas para de usá-las. Se você configurou
CoordinatorConfig.coordinatorStateTableConfigouLeaseManagementConfig.workerUtilizationAwareAssignmentConfig.workerMetricsTableConfig, você pode remover essas configurações, pois elas estão obsoletas.
Importante
Não reverta seu aplicativo depois que a migração atingir o estado COMPLETO. Depois de CONCLUÍDO, o aplicativo opera exclusivamente no modo de tabela única. Mesmo uma reversão de código para a Fase 1 não retorna para várias tabelas — a configuração é ignorada e o aplicativo continua usando somente a tabela de leasing.
Para obter detalhes sobre estados de migração e opções de reversão, consulte. Formato de tabela única para KCL