Solução de problemas em integrações ETL zero do Aurora com o Amazon Redshift
Você pode verificar o estado de uma integração ETL zero consultando a tabela do sistema SVV_INTEGRATION no Amazon Redshift. Se a coluna state
tiver um valor de ErrorState
, isso significa que há algo errado. Para ter mais informações, consulte Monitorar integrações usando tabelas do sistema.
Use as informações a seguir para solucionar problemas comuns em integrações ETL zero do Aurora com o Amazon Redshift.
Tópicos
Não consigo criar uma integração ETL zero.
Se você não conseguir criar uma integração ETL zero, verifique se as seguintes informações estão corretas para o banco de dados de origem:
-
O banco de dados de origem deve estar executando uma versão de mecanismo de banco de dados compatível. Para ver uma lista das versões com suporte, consulte Regiões e mecanismos de banco de dados do Aurora compatíveis com integrações ETL zero com o Amazon Redshift.
-
Você configurou corretamente os parâmetros de banco de dados. Se os parâmetros necessários forem definidos incorretamente ou não estiverem associados ao banco de dados, a criação falhará. Consulte Etapa 1: Criar um grupo de parâmetros de cluster de banco de dados personalizado.
Além disso, confira se o indicado a seguir está correto para seu data warehouse de destino:
-
Ter a diferenciação entre maiúsculas e minúsculas habilitada. Consulte Ativar a diferenciação entre maiúsculas e minúsculas em um data warehouse.
-
Você adicionou a entidade principal autorizada e a origem de integração corretas. Consulte Configurar a autorização para o data warehouse do Amazon Redshift.
-
O data warehouse é criptografado (se for um cluster provisionado). Consulte Criptografia de banco de dados do Amazon Redshift.
Minha integração está travada em um estado de Syncing
.
Sua integração poderá mostrar consistentemente um status de Syncing
se você alterar o valor de um dos parâmetros obrigatórios do banco de dados.
Para corrigir esse problema, confira os valores dos parâmetros no grupo de parâmetros associado ao cluster de banco de dados de origem e verifique se eles correspondem aos valores obrigatórios. Para ter mais informações, consulte Etapa 1: Criar um grupo de parâmetros de cluster de banco de dados personalizado.
Se você modificar algum parâmetro, reinicialize o cluster de banco de dados para aplicar as alterações.
Minhas tabelas não estão sendo replicadas para o Amazon Redshift.
Caso não veja uma ou mais tabelas refletidas no Amazon Redshift, execute um dos seguintes comandos para ressincronizá-las:
ALTER DATABASE
dbname
INTEGRATION REFRESH TABLEStable1
,table2
;
Para ter mais informações, consulte ALTER DATABASE na referência do Amazon Redshift SQL.
Talvez seus dados não estejam sendo replicados porque uma ou mais tabelas de origem não têm uma chave primária. O painel de monitoramento no Amazon Redshift exibe o status dessas tabelas como Failed
, e o status da integração ETL zero geral muda para Needs attention
. Para resolver esse problema, é possível identificar uma chave em sua tabela que pode se tornar uma chave primária ou adicionar uma chave primária sintética. Para conhecer as soluções detalhadas, consulte os seguintes recursos:
Uma ou mais das minhas tabelas do Amazon Redshift exigem ressincronização.
A execução de determinados comandos no banco de dados de origem pode exigir que suas tabelas sejam novamente sincronizadas. Nesses casos, a visualização do sistema SVV_INTEGRATION_TABLE_STATE mostra um table_state
de ResyncRequired
, o que significa que a integração deve recarregar completamente os dados dessa tabela específica do MySQL para o Amazon Redshift.
Quando a tabela começa a ser ressincronizada, ela entra em um estado de Syncing
. Você não precisa realizar nenhuma ação manual para ressincronizar uma tabela. Enquanto os dados da tabela estiverem sendo sincronizados novamente, você não poderá acessá-los no Amazon Redshift.
A seguir estão alguns exemplos de operações que podem colocar uma tabela em um estado ResyncRequired
e possíveis alternativas a serem consideradas.
Operation | Exemplo | Alternativa |
---|---|---|
Adicionar uma coluna em uma posição específica |
|
O Amazon Redshift não oferece suporte à adição de colunas em posições específicas usando as palavras-chave first ou after . Se a ordem das colunas na tabela de destino não for crítica, adicione a coluna no final da tabela usando um comando mais simples:
|
Adicionar uma coluna de carimbo de data/hora com o CURRENT_TIMESTAMP padrão |
|
O valor CURRENT_TIMESTAMP das linhas da tabela é calculado pelo Aurora MySQL e não pode ser simulado no Amazon Redshift sem uma nova sincronização completa dos dados da tabela. Se possível, altere o valor padrão para uma constante literal, como |
Executar várias operações de coluna em um único comando |
|
Considere dividir o comando em duas operações separadas, ADD e RENAME , que não exigirão ressincronização. |