

# Solução de problemas em Integrações ETL zero do Amazon RDS
<a name="zero-etl.troubleshooting"></a>

Você pode verificar o estado de uma Integração ETL zero consultando a tabela de sistema [SVV\$1INTEGRATION](https://docs.aws.amazon.com/redshift/latest/dg/r_SVV_INTEGRATION.html) no destino de analytics. Se a coluna `state` tiver um valor de `ErrorState`, isso significa que há algo errado. Para obter mais informações, consulte [Monitorar integrações usando tabelas de sistema para o Amazon Redshift](zero-etl.describingmonitoring.md#zero-etl.monitoring).

Use as informações a seguir para solucionar problemas comuns em Integrações ETL zero do Amazon RDS.

**Importante**  
As operações de ressincronização e atualização não estão disponíveis para Integrações ETL zero com um lakehouse do Amazon SageMaker AI. Se houver problemas com uma integração, você deve excluí-la e criar outra. Não é possível atualizar ou ressincronizar uma integração existente.

**Topics**
+ [Não consigo criar uma integração ETL zero.](#zero-etl.troubleshooting.creation)
+ [Minha integração está travada em um estado de `Syncing`.](#zero-etl.troubleshooting.syncing)
+ [Minhas tabelas não estão sendo replicadas para o Amazon Redshift.](#zero-etl.troubleshooting.primarykey)
+ [Uma ou mais das minhas tabelas do Amazon Redshift exigem ressincronização.](#zero-etl.troubleshooting.resync)
+ [Problemas de falha em Integrações ETL zero com um lakehouse do Amazon SageMaker AI](#zero-etl.troubleshooting.integration-issues)

## Não consigo criar uma integração ETL zero.
<a name="zero-etl.troubleshooting.creation"></a>

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 conferir uma lista de versões compatíveis, consulte [Regiões e mecanismos de banco de dados que permitem Integrações ETL zero com o Amazon RDS](Concepts.RDS_Fea_Regions_DB-eng.Feature.ZeroETL.md).
+  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 de banco de dados personalizado](zero-etl.setting-up.md#zero-etl.parameters).

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](https://docs.aws.amazon.com/redshift/latest/mgmt/zero-etl-using.setting-up.html#zero-etl-setting-up.case-sensitivity).
+ 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](https://docs.aws.amazon.com/redshift/latest/mgmt/zero-etl-using.setting-up.html#zero-etl-using.redshift-iam).
+ O data warehouse é criptografado (se for um cluster provisionado). Consulte [Criptografia de banco de dados do Amazon Redshift](https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-db-encryption.html).

## Minha integração está travada em um estado de `Syncing`.
<a name="zero-etl.troubleshooting.syncing"></a>

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 banco de dados de origem e verifique se eles correspondem aos valores obrigatórios. Para obter mais informações, consulte [Etapa 1: criar um grupo de parâmetros de de banco de dados personalizado](zero-etl.setting-up.md#zero-etl.parameters).

Se você modificar algum parâmetro, reinicialize o banco de dados para aplicar as alterações.

## Minhas tabelas não estão sendo replicadas para o Amazon Redshift.
<a name="zero-etl.troubleshooting.primarykey"></a>

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 TABLES table1, table2;
```

Para ter mais informações, consulte [ALTER DATABASE](https://docs.aws.amazon.com/redshift/latest/dg/r_ALTER_DATABASE.html) 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 [Handle tables without primary keys while creating Amazon Aurora MySQL or Amazon RDS for MySQL zero-ETL integrations with Amazon Redshift](https://aws.amazon.com/blogs/database/handle-tables-without-primary-keys-while-creating-amazon-aurora-mysql-or-amazon-rds-for-mysql-zero-etl-integrations-with-amazon-redshift/). 

## Uma ou mais das minhas tabelas do Amazon Redshift exigem ressincronização.
<a name="zero-etl.troubleshooting.resync"></a>

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\$1INTEGRATION\$1TABLE\$1STATE](https://docs.aws.amazon.com/redshift/latest/dg/r_SVV_INTEGRATION_TABLE_STATE.html) 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  |  <pre>ALTER TABLE table_name<br />  ADD COLUMN column_name INTEGER<br />  NOT NULL first;</pre>  | 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:<pre>ALTER TABLE table_name<br />  ADD COLUMN column_name column_type;</pre> | 
| Adicionar uma coluna de carimbo de data/hora com o CURRENT\$1TIMESTAMP padrão |  <pre>ALTER TABLE table_name<br />  ADD COLUMN column_name TIMESTAMP<br />  NOT NULL DEFAULT CURRENT_TIMESTAMP;</pre>  | O valor CURRENT\$1TIMESTAMP das linhas da tabela é calculado pelo RDS para 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 `2023-01-01 00:00:15`, a fim de evitar latência na disponibilidade da tabela. | 
| Executar várias operações de coluna em um único comando |  <pre>ALTER TABLE table_name<br />  ADD COLUMN column_1,<br />  RENAME COLUMN column_2 TO column_3;</pre>  | Considere dividir o comando em duas operações separadas, ADD e RENAME, que não exigirão ressincronização. | 

## Problemas de falha em Integrações ETL zero com um lakehouse do Amazon SageMaker AI
<a name="zero-etl.troubleshooting.integration-issues"></a>

Se você encontrar problemas em uma Integração ETL zero existente com um lakehouse do Amazon SageMaker AI, a única solução é excluir a integração e criar outra. Diferentemente de outros serviços da AWS, as Integrações ETL zero não permitem operações de atualização ou ressincronização.

Para resolver problemas de integração:

1. Exclua a Integração ETL zero que apresenta problemas usando o console, a CLI ou a API.

1. Verifique se as configurações do banco de dados de origem e do data warehouse de destino estão corretas.

1. Crie outra Integração ETL zero com a mesma configuração ou a configuração atualizada.

Esse processo provocará a reinicialização completa do pipeline de dados, o que pode levar algum tempo, dependendo do tamanho do banco de dados de origem.