

# Solución de problemas de integraciones sin ETL de Amazon RDS
<a name="zero-etl.troubleshooting"></a>

Para comprobar el estado de una integración sin ETL, consulte la tabla del sistema [SVV\$1INTEGRATION](https://docs.aws.amazon.com/redshift/latest/dg/r_SVV_INTEGRATION.html) en el destino de análisis. Si la columna `state` tiene un valor de `ErrorState`, significa que algo está mal. Para obtener más información, consulte [Supervisión de las integraciones mediante tablas del sistema para Amazon Redshift](zero-etl.describingmonitoring.md#zero-etl.monitoring).

Utilice la siguiente información para solucionar problemas habituales relacionados con las integraciones sin ETL de Amazon RDS.

**importante**  
Las operaciones de resincronización y actualización no están disponibles para las integraciones sin ETL con un Amazon SageMaker AI Lakehouse. Si hay problemas con una integración, debe eliminarla y crear una nueva. No puede actualizar ni volver a sincronizar una integración existente.

**Topics**
+ [No puedo crear una integración sin ETL](#zero-etl.troubleshooting.creation)
+ [Mi integración está atascada en un estado de `Syncing`](#zero-etl.troubleshooting.syncing)
+ [Mis tablas no se replican en Amazon Redshift](#zero-etl.troubleshooting.primarykey)
+ [Una o más de mis tablas de Amazon Redshift requieren una resincronización](#zero-etl.troubleshooting.resync)
+ [Problemas de integración erróneos para las integraciones sin ETL de Amazon SageMaker AI Lakehouse](#zero-etl.troubleshooting.integration-issues)

## No puedo crear una integración sin ETL
<a name="zero-etl.troubleshooting.creation"></a>

Si no puede crear una integración sin ETL, asegúrese de que los siguientes elementos sean correctos para la base de datos de origen:
+ La base de datos de origen debe ejecutar una versión de motor de base de datos compatible. Para obtener una lista de las versiones compatibles, consulte [Regiones y motores de base de datos admitidos para las integraciones sin ETL de Amazon RDS](Concepts.RDS_Fea_Regions_DB-eng.Feature.ZeroETL.md).
+  Ha configurado correctamente los parámetros de la base de datos. Si los parámetros requeridos están configurados incorrectamente o no están asociados a la base de datos, se producirá un error en la creación. Consulte [Crear un grupo de parámetros de de base de datos personalizado](zero-etl.setting-up.md#zero-etl.parameters).

Además, asegúrese de que lo siguiente sea correcto para su almacenamiento de datos de destino:
+ La distinción entre mayúsculas y minúsculas está activada. Consulte [Turn on case sensitivity for your data warehouse](https://docs.aws.amazon.com/redshift/latest/mgmt/zero-etl-using.setting-up.html#zero-etl-setting-up.case-sensitivity).
+ Ha añadido la entidad principal autorizado y el origen de integración correctos. Consulte [Configuración de la autorización para el almacenamiento de datos de Amazon Redshift](https://docs.aws.amazon.com/redshift/latest/mgmt/zero-etl-using.setting-up.html#zero-etl-using.redshift-iam).
+ El almacenamiento de datos está cifrado (si se trata de un clúster aprovisionado). Consulte [Cifrado de la base de datos de Amazon Redshift](https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-db-encryption.html).

## Mi integración está atascada en un estado de `Syncing`
<a name="zero-etl.troubleshooting.syncing"></a>

Es posible que su integración muestre continuamente el estado `Syncing` si cambia el valor de uno de los parámetros de base de datos necesarios.

Para solucionarlo, compruebe los valores de los parámetros del grupo de parámetros asociado a la base de datos de origen y asegúrese de que coincidan con los valores requeridos. Para obtener más información, consulte [Crear un grupo de parámetros de de base de datos personalizado](zero-etl.setting-up.md#zero-etl.parameters).

Si modifica algún parámetro, asegúrese de reiniciar la base de datos para aplicar los cambios.

## Mis tablas no se replican en Amazon Redshift
<a name="zero-etl.troubleshooting.primarykey"></a>

Si no ve reflejadas una o varias tablas en Amazon Redshift, puede ejecutar el siguiente comando para volver a sincronizarlas:

```
ALTER DATABASE dbname INTEGRATION REFRESH TABLES table1, table2;
```

Para obtener más información, consulte [ALTER DATABASE](https://docs.aws.amazon.com/redshift/latest/dg/r_ALTER_DATABASE.html) en la Referencia de SQL de Amazon Redshift.

Es posible que los datos no se estén replicando porque una o varias de las tablas de origen no tienen una clave principal. El panel de supervisión de Amazon Redshift muestra el estado de estas tablas como `Failed` y el estado de la integración sin ETL global cambia a `Needs attention`. Para resolver este problema, puede identificar una clave existente en la tabla que pueda convertirse en clave principal o puede añadir una clave principal sintética. Para obtener soluciones detalladas, 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/). 

## Una o más de mis tablas de Amazon Redshift requieren una resincronización
<a name="zero-etl.troubleshooting.resync"></a>

La ejecución de algunos comandos en la base de datos de origen puede requerir que las tablas se vuelvan a sincronizar. En estos casos, la vista del sistema [SVV\$1INTEGRATION\$1TABLE\$1STATE](https://docs.aws.amazon.com/redshift/latest/dg/r_SVV_INTEGRATION_TABLE_STATE.html) muestra un `table_state` de `ResyncRequired`, lo que significa que la integración debe volver a cargar por completo los datos de esa tabla de MySQL a Amazon Redshift.

Cuando la tabla comienza a resincronizarse, entra en un estado de  `Syncing`. No es necesario realizar ninguna acción manual para volver a sincronizar una tabla. Mientras se vuelven a sincronizar los datos de la tabla, no puede acceder a ellos en Amazon Redshift.

A continuación se muestran algunos ejemplos de operaciones que pueden poner una tabla en estado `ResyncRequired` y las posibles alternativas que se pueden considerar.


| Operación | Ejemplo | Alternativa | 
| --- | --- | --- | 
| Añadir una columna a una posición específica  |  <pre>ALTER TABLE table_name<br />  ADD COLUMN column_name INTEGER<br />  NOT NULL first;</pre>  | Amazon Redshift no admite la adición de columnas en posiciones específicas mediante las palabras clave first o after. Si el orden de las columnas de la tabla de destino no es crucial, añada la columna al final de la tabla con un comando más sencillo:<pre>ALTER TABLE table_name<br />  ADD COLUMN column_name column_type;</pre> | 
| Añadir una columna de marca temporal con la opción predeterminada CURRENT\$1TIMESTAMP |  <pre>ALTER TABLE table_name<br />  ADD COLUMN column_name TIMESTAMP<br />  NOT NULL DEFAULT CURRENT_TIMESTAMP;</pre>  | RDS para MySQL calcula el valor CURRENT\$1TIMESTAMP de las filas de la tabla existentes y no se puede simular en Amazon Redshift sin una resincronización completa de los datos de la tabla. Si es posible, cambie el valor predeterminado a una constante literal, por ejemplo, `2023-01-01 00:00:15` para evitar la latencia en la disponibilidad de la tabla. | 
| Realizar operaciones en varias columnas con un solo comando |  <pre>ALTER TABLE table_name<br />  ADD COLUMN column_1,<br />  RENAME COLUMN column_2 TO column_3;</pre>  | Considere la posibilidad de dividir el comando en dos operaciones distintas ADD y RENAME lo que no requerirá resincronización. | 

## Problemas de integración erróneos para las integraciones sin ETL de Amazon SageMaker AI Lakehouse
<a name="zero-etl.troubleshooting.integration-issues"></a>

Si tiene problemas con una integración sin ETL existente con un Amazon SageMaker AI Lakehouse, la única solución es eliminar la integración y crear una nueva. A diferencia de otros servicios de AWS, las integraciones sin ETL no admiten operaciones de actualización o resincronización.

Para resolver problemas de integración:

1. Elimine la integración sin ETL problemática mediante la consola, la CLI o la API.

1. Compruebe que las configuraciones de la base de datos de origen y del almacén de datos de destino sean correctas.

1. Cree una nueva integración sin ETL con la misma configuración o una actualizada.

Este proceso resultará en una reinicialización completa de la canalización de datos, lo que puede llevar tiempo en función del tamaño de la base de datos de origen.