

 Amazon Redshift dejará de admitir la creación de nuevas UDF de Python a partir del parche 198. Las UDF de Python existentes seguirán funcionando hasta el 30 de junio de 2026. Para obtener más información, consulte la [publicación del blog](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/). 

# Solución de problemas en cargas de datos
<a name="t_Troubleshooting_load_errors"></a>

Al cargar datos en tablas de Amazon Redshift, es posible que encuentre errores de Amazon S3, datos de entrada no válidos y errores del comando COPY. En las siguientes secciones, se ofrece información acerca de cómo identificar y resolver errores en la carga de datos.

**Topics**
+ [Solución de los errores de la integración de eventos de S3 y COPY JOB](s3-integration-troubleshooting.md)
+ [Errores S3ServiceException](s3serviceexception-error.md)
+ [Tablas de sistema para la solución de problemas de cargas de datos](system-tables-for-troubleshooting-data-loads.md)
+ [Errores de carga de caracteres multibyte](multi-byte-character-load-errors.md)
+ [Referencia de error de carga](r_Load_Error_Reference.md)

# Solución de los errores de la integración de eventos de S3 y COPY JOB
<a name="s3-integration-troubleshooting"></a>

Utilice la siguiente información para solucionar problemas habituales de la integración de eventos de Amazon S3 y COPY JOB con Amazon Redshift.

## Error en la creación de la integración de eventos de S3
<a name="s3-integration-troubleshooting-creation"></a>

Si se ha producido un error en la creación de la integración de eventos de S3, el estado de la integración será `Inactive`. Asegúrese de que lo siguiente sea correcto para el almacenamiento de datos de Amazon Redshift.
+ Ha añadido la entidad principal autorizada y el origen de la integración correctos para su espacio de nombres de destino en Amazon Redshift. Consulte [Requisitos previos para crear una integración de eventos de S3](loading-data-copy-job.md#loading-data-copy-job-prerequisites).
+ Ha añadido la política basada en recursos correcta al bucket de Amazon S3 de origen. Consulte [Requisitos previos para crear una integración de eventos de S3](loading-data-copy-job.md#loading-data-copy-job-prerequisites).

## Los datos de Amazon S3 no aparecen en la base de datos de destino
<a name="s3-integration-troubleshooting-missing-data"></a>

Si no aparecen los datos de un COPY JOB, compruebe lo siguiente.
+ Consulte SYS\$1COPY\$1JOB\$1DETAIL para ver si el archivo de Amazon S3 se ha cargado, si está pendiente de ingesta o si hay algún error. Para obtener más información, consulte [SYS\$1COPY\$1JOB\$1DETAIL](SYS_COPY_JOB_DETAIL.md).
+ Consulte STL\$1ERROR o SYS\$1COPY\$1JOB\$1INFO si el archivo de Amazon S3 no está ahí o si se produce un tiempo de espera inesperado. Busque errores de credenciales o cualquier cosa que sugiera que la integración está inactiva. Para obtener más información, consulte [STL\$1ERROR](r_STL_ERROR.md) y [SYS\$1COPY\$1JOB\$1INFO](SYS_COPY_JOB_INFO.md).

# Errores S3ServiceException
<a name="s3serviceexception-error"></a>

Los errores s3ServiceException más comunes son causados por una cadena de credenciales incorrecta o sin el formato adecuado, la presencia del clúster y el bucket en regiones de AWS diferentes y permisos de Amazon S3 insuficientes.

En esta sección, se proporciona información acerca de cómo solucionar problemas para cada tipo de error.

## Cadena de credenciales no válida
<a name="invalid-credentials-string-error"></a>

Si la cadena de credenciales no tiene el formato adecuado, recibirá el siguiente mensaje de error: 

```
ERROR: Invalid credentials. Must be of the format: credentials 
'aws_access_key_id=<access-key-id>;aws_secret_access_key=<secret-access-key>
[;token=<temporary-session-token>]'
```

Compruebe que la cadena de credenciales no tenga espacios ni saltos de línea y que se encuentre delimitada entre comillas simples. 

## ID de clave de acceso no válida
<a name="invalid-access-key-id-error"></a>

Si el ID de clave de acceso no existe, recibirá el siguiente mensaje de error: 

```
[Amazon](500310) Invalid operation: S3ServiceException:The AWS Access Key Id you provided does not exist in our records.
```

Este suele ser un error de copiado y pegado. Compruebe que el ID de clave de acceso se haya escrito correctamente. Además, si utiliza claves de sesiones temporales, compruebe que esté definido el valor de `token`.

## Clave de acceso secreta no válida
<a name="invalid-secret-access-key-error"></a>

Si su clave de acceso secreta es incorrecta, recibirá el siguiente mensaje de error: 

```
[Amazon](500310) Invalid operation: S3ServiceException:The request signature we calculated does not match the signature you provided. 
Check your key and signing method.,Status 403,Error SignatureDoesNotMatch
```

Este suele ser un error de copiado y pegado. Compruebe que la clave de acceso secreta se haya escrito correctamente y que sea la clave correcta para el ID de clave de acceso.

## El bucket está en una región diferente
<a name="bucket-in-different-region"></a>

El bucket de Amazon S3 especificado en el comando COPY debe estar en la misma región de AWS que el clúster. Si su bucket de Amazon S3 y su clúster están en regiones diferentes, se producirá un error similar al siguiente: 

```
ERROR: S3ServiceException:The bucket you are attempting to access must be addressed using the specified endpoint.
```

Puede crear un bucket de Amazon S3 en una región específica. Para ello, seleccione la región mientras crea el bucket con la consola de administración de Amazon S3 o especifique un punto de conexión mientras crea el bucket con la CLI o la API de Amazon S3. Para obtener más información, consulte [Carga de archivos en Amazon S3 para utilizar con COPY](t_uploading-data-to-S3.md).

Para obtener más información acerca de las regiones de Amazon S3, consulte [Acceso a un bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingBucket.html#access-bucket-intro) en la *Guía del usuario de Amazon Simple Storage Service*.

También puede especificar la región utilizando la opción [REGION](copy-parameters-data-source-s3.md#copy-region) con el comando COPY.

## Acceso denegado
<a name="s3-access-denied-error"></a>

Si el usuario no tiene permisos suficientes, recibirá el siguiente mensaje de error:

```
ERROR: S3ServiceException:Access Denied,Status 403,Error AccessDenied
```

Una causa posible es que el usuario identificado por las credenciales no tiene acceso LIST y GET al bucket de Amazon S3. Para otras causas, consulte [Solucionar errores de acceso denegado (403 Prohibido) en Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/troubleshoot-403-errors.html) en la *Guía del usuario de Amazon Simple Storage Service*.

Para obtener información sobre cómo administrar el acceso de los usuarios a los buckets, consulte [Administración de identidades y accesos en Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html) en la *Guía del usuario de Amazon Simple Storage Service*.

# Tablas de sistema para la solución de problemas de cargas de datos
<a name="system-tables-for-troubleshooting-data-loads"></a>

Las siguientes tablas del sistema de Amazon Redshift pueden ser útiles para solucionar problemas relacionados con la carga de datos:
+ Ejecute la consulta [STL\$1LOAD\$1ERRORS](r_STL_LOAD_ERRORS.md) para encontrar los errores que ocurrieron durante cargas específicas.
+ Ejecute la consulta [STL\$1FILE\$1SCAN](r_STL_FILE_SCAN.md) para ver los tiempos de carga de archivos específicos o para ver si un archivo específico siquiera se leyó.
+ Ejecute la consulta [STL\$1S3CLIENT\$1ERROR](r_STL_S3CLIENT_ERROR.md) para encontrar detalles sobre los errores que surgieron mientras se transferían datos desde Amazon S3.

**Pasos para encontrar y diagnosticar errores de carga**

1. Cree una vista o defina una consulta que devuelve detalles sobre errores de carga. En el siguiente ejemplo, se combina la tabla STL\$1LOAD\$1ERRORS y la tabla STV\$1TBL\$1PERM para hacer coincidir los ID de tabla con los nombres reales de tabla. 

   ```
   create view loadview as
   (select distinct tbl, trim(name) as table_name, query, starttime,
   trim(filename) as input, line_number, colname, err_code,
   trim(err_reason) as reason
   from stl_load_errors sl, stv_tbl_perm sp
   where sl.tbl = sp.id);
   ```

1. Establezca la opción MAXERRORS en el comando COPY en un valor lo suficientemente grande como para permitirle a COPY que devuelva información útil sobre sus datos. Si COPY encuentra errores, un mensaje de error le indica que consulte la tabla STL\$1LOAD\$1ERRORS para obtener detalles.

1. Consulte la vista LOADVIEW para obtener detalles del error. Por ejemplo: 

   ```
   select * from loadview where table_name='venue';
   ```

   ```
     tbl   | table_name | query |         starttime          
   --------+------------+-------+----------------------------
    100551 | venue      | 20974 | 2013-01-29 19:05:58.365391 
   
   |     input      | line_number | colname | err_code |       reason
   +----------------+-------------+---------+----------+--------------------
   | venue_pipe.txt |           1 |       0 |     1214 | Delimiter not found
   ```

1. Corrija el problema en el archivo de entrada o en el script de carga, en función de la información que devuelva la vista. Entre los errores de carga habituales por buscar se incluyen los siguientes: 
   + Discrepancia entre los tipos de datos de la tabla y los valores de los campos de datos de entrada.
   + Discrepancia entre la cantidad de columnas de la tabla y la cantidad de campos de datos de entrada.
   + Discrepancia en las comillas. Amazon Redshift admite comillas simples y dobles; no obstante, las comillas deben equilibrarse de forma adecuada.
   + Formato incorrecto para los datos de fecha/hora en los archivos de entrada.
   + Valores fuera de rango en los archivos de entrada (para las columnas numéricas).
   + La cantidad de valores distintos para una columna supera la limitación para su codificación de compresión.

# Errores de carga de caracteres multibyte
<a name="multi-byte-character-load-errors"></a>

Las columnas con un tipo de datos CHAR aceptan solamente caracteres UTF-8 de un solo byte, hasta un valor de byte 127 o 7F hexadecimal, que también es el conjunto de caracteres ASCII. Las columnas VARCHAR aceptan caracteres multibyte UTF-8 de hasta un máximo de cuatro bytes. Para obtener más información, consulte [Tipos de caracteres](r_Character_types.md). 

Si una línea de los datos cargados contiene un carácter no válido para el tipo de datos de la columna, COPY devuelve un error y registra una fila en la tabla de registro del sistema STL\$1LOAD\$1ERRORS con el número de error 1220. El campo ERR\$1REASON incluye la secuencia de bytes, en hexadecimal, para el carácter no válido. 

Una alternativa a corregir caracteres no válidos en los datos de carga es sustituir los caracteres no válidos durante el proceso de carga. Para reemplazar los caracteres UTF-8 no válidos, especifique la opción ACCEPTINVCHARS del comando COPY. Si se ha configurado la opción ACCEPTINVCHARS, el carácter que especifique sustituye al punto de código. Si la opción ACCEPTINVCHARS no está configurada, Amazon Redshift acepta los caracteres como UTF-8 válido. Para obtener más información, consulte [ACCEPTINVCHARS](copy-parameters-data-conversion.md#acceptinvchars).

La siguiente lista de puntos de código es UTF-8 válida, las operaciones COPY no devuelven un error si la opción ACCEPTINVCHARS no está configurada. No obstante, estos puntos de código son caracteres no válidos. Puede utilizar la opción [ACCEPTINVCHARS](copy-parameters-data-conversion.md#acceptinvchars) para reemplazar un punto de código por un carácter que especifique. Estos puntos de código incluyen el rango de valores de `0xFDD0` a `0xFDEF` y valores hasta `0x10FFFF`, terminando con `FFFE` o `FFFF`:
+ `0xFFFE`, `0x1FFFE`, `0x2FFFE`, …, `0xFFFFE`, `0x10FFFE`
+ `0xFFFF`, `0x1FFFF`, `0x2FFFF`, …, `0xFFFFF`, `0x10FFFF`

En el siguiente ejemplo, se muestra la razón del error cuando COPY intenta cargar el carácter UTF-8 `e0 a1 c7a4` en una columna CHAR.

```
Multibyte character not supported for CHAR 
(Hint: Try using  VARCHAR). Invalid char: e0 a1 c7a4
```

Si el error se relaciona con un tipo de datos VARCHAR, la razón del error incluye un código de error y la secuencia hexadecimal UTF-8 no válida. En el siguiente ejemplo, se muestra la razón del error cuando COPY prueba cargar el carácter UTF-8 `a4` en un campo VARCHAR.

```
String contains invalid or unsupported UTF-8 codepoints. 
Bad UTF-8 hex sequence: a4 (error 3)
```

En la siguiente tabla, se presentan las descripciones y las soluciones a problemas sugeridas para los errores de carga VARCHAR. Si se produce uno de estos errores, reemplace el carácter por una secuencia de código UTF-8 válida o elimínelo.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/redshift/latest/dg/multi-byte-character-load-errors.html)

# Referencia de error de carga
<a name="r_Load_Error_Reference"></a>

Si se producen errores mientras se cargan datos desde un archivo, ejecute una consulta en la tabla [STL\$1LOAD\$1ERRORS](r_STL_LOAD_ERRORS.md) para identificar el error y determinar una explicación posible. La siguiente tabla presenta todos los códigos de error que podrían producirse durante cargas de datos:

## Códigos de error de carga
<a name="r_Load_Error_Reference-load-error-codes"></a>

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/redshift/latest/dg/r_Load_Error_Reference.html)