

Tras considerarlo detenidamente, hemos decidido interrumpir Amazon Kinesis Data Analytics para aplicaciones SQL:

1. A partir del **1 de septiembre de 2025,** no proporcionaremos ninguna corrección de errores para las aplicaciones de Amazon Kinesis Data Analytics for SQL porque tendremos un soporte limitado debido a la próxima discontinuación.

2. A partir del **15 de octubre de 2025,** no podrá crear nuevas aplicaciones de Kinesis Data Analytics for SQL.

3. Eliminaremos sus aplicaciones a partir del **27 de enero de 2026**. No podrá iniciar ni utilizar sus aplicaciones de Amazon Kinesis Data Analytics para SQL. A partir de ese momento, el servicio de soporte de Amazon Kinesis Data Analytics para SQL dejará de estar disponible. Para obtener más información, consulte [Retirada de las aplicaciones de Amazon Kinesis Data Analytics para SQL](discontinuation.md).

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Uso de la función de detección de esquema en datos estáticos
<a name="sch-dis-ref"></a>

**nota**  
Después del 12 de septiembre de 2023, no podrá crear nuevas aplicaciones con Kinesis Data Firehose como origen si aún no utiliza Kinesis Data Analytics para SQL. Para obtener más información, consulte [Límites](https://docs.aws.amazon.com//kinesisanalytics/latest/dev/limits.html).

La característica de detección de esquema puede generar un esquema a partir de los datos de una secuencia o de los datos de un archivo estático almacenado en un bucket de Amazon S3. Supongamos que desea generar un esquema para una aplicación de Kinesis Data Analytics con fines de demostración o si no se dispone de datos de streaming activos. Puede utilizar la característica de detección de esquemas en un archivo estático que contiene una muestra de datos con el formato esperado para los datos de referencia o de streaming. Kinesis Data Analytics puede ejecutar la detección de esquemas en datos de muestra a partir de un archivo JSON o CSV que está almacenado en un bucket de Amazon S3. El uso de la detección de esquemas en un archivo de datos utiliza la consola o la API [DiscoverInputSchema](API_DiscoverInputSchema.md) con el parámetro `S3Configuration` especificado.

## Ejecución de la detección de esquemas mediante la consola
<a name="sch-dis-ref-console"></a>

Para ejecutar la detección en un archivo estático mediante la consola, haga lo siguiente:

1. Añada un objeto de datos de referencia a un bucket de S3.

1. Elija **Conectar datos de referencia** en la página principal de la aplicación en la consola de Kinesis Data Analytics.

1. Proporcione los datos de bucket, ruta y rol de IAM para obtener acceso al objeto de Amazon S3 que contiene los datos de referencia.

1. Elija **Detectar esquema**.

Para obtener más información sobre cómo añadir datos de referencia y descubrir el esquema en la consola, consulte [Ejemplo: Agregar datos de referencia a una aplicación de Kinesis Data Analytics](app-add-reference-data.md).

## Ejecución de la detección de esquemas mediante la API
<a name="sch-dis-ref-api"></a>

Para ejecutar la detección en un archivo estático mediante la API, se debe proporcionar la API con una estructura `S3Configuration` con la siguiente información:
+ `BucketARN`: el nombre de recurso de Amazon (ARN) del bucket de Amazon S3 que contiene el archivo. Para ver el formato del ARN de un bucket de Amazon S3, consulte [Amazon Resource Names (ARNs) y Amazon Service Namespaces: Amazon Simple Storage Service (Amazon](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-s3) S3).
+ `RoleARN`: el ARN de un rol de IAM con la política `AmazonS3ReadOnlyAccess`. Para obtener más información sobre cómo aplicar una política a una función, consulte [Modificación de un rol](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_manage_modify.html).
+ `FileKey`: El nombre de archivo del objeto.

**Para generar un esquema a partir de un objeto de Amazon S3 utilizando el API `DiscoverInputSchema`**

1. Asegúrese de tener la configuración adecuada. AWS CLI Para obtener más información, consulte [Paso 2: Configurar el AWS Command Line Interface (AWS CLI)](setup-awscli.md) en la sección Introducción.

1. Cree un archivo denominado `data.csv` con el siguiente contenido:

   ```
   year,month,state,producer_type,energy_source,units,consumption
   2001,1,AK,TotalElectricPowerIndustry,Coal,ShortTons,47615
   2001,1,AK,ElectricGeneratorsElectricUtilities,Coal,ShortTons,16535
   2001,1,AK,CombinedHeatandPowerElectricPower,Coal,ShortTons,22890
   2001,1,AL,TotalElectricPowerIndustry,Coal,ShortTons,3020601
   2001,1,AL,ElectricGeneratorsElectricUtilities,Coal,ShortTons,2987681
   ```

1. Inicie sesión en la consola de Amazon S3 en [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/).

1. Cree un bucket de Amazon S3 y cargue el archivo `data.csv` que ha creado. Anote el ARN del bucket creado. Para obtener información sobre la creación de un bucket de Amazon S3 y cargar un archivo, consulte [Introducción a Amazon Simple Storage Service](https://docs.aws.amazon.com/AmazonS3/latest/userguide/GetStartedWithS3.html). 

1. Abra la consola de IAM en [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/). Cree una función con la política `AmazonS3ReadOnlyAccess`. Anote el ARN de la nueva función. Para obtener más información acerca de cómo crear una función, consulte [Crear un rol para delegar permisos a un servicio de Amazon](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html). Para obtener más información sobre cómo aplicar una política a una función, consulte [Modificación de un rol](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_manage_modify.html).

1. Ejecute el siguiente `DiscoverInputSchema` comando en el AWS CLI, sustituyéndolo ARNs por su bucket de Amazon S3 y su función de IAM:

   ```
   $aws kinesisanalytics discover-input-schema --s3-configuration '{ "RoleARN": "arn:aws:iam::123456789012:role/service-role/your-IAM-role", "BucketARN": "arn:aws:s3:::your-bucket-name", "FileKey": "data.csv" }' 
   ```

1. La respuesta tiene un aspecto similar a la siguiente:

   ```
   {
       "InputSchema": {
           "RecordEncoding": "UTF-8",
           "RecordColumns": [
               {
                   "SqlType": "INTEGER",
                   "Name": "COL_year"
               },
               {
                   "SqlType": "INTEGER",
                   "Name": "COL_month"
               },
               {
                   "SqlType": "VARCHAR(4)",
                   "Name": "state"
               },
               {
                   "SqlType": "VARCHAR(64)",
                   "Name": "producer_type"
               },
               {
                   "SqlType": "VARCHAR(4)",
                   "Name": "energy_source"
               },
               {
                   "SqlType": "VARCHAR(16)",
                   "Name": "units"
               },
               {
                   "SqlType": "INTEGER",
                   "Name": "consumption"
               }
           ],
           "RecordFormat": {
               "RecordFormatType": "CSV",
               "MappingParameters": {
                   "CSVMappingParameters": {
                       "RecordRowDelimiter": "\r\n",
                       "RecordColumnDelimiter": ","
                   }
               }
           }
       },
       "RawInputRecords": [
           "year,month,state,producer_type,energy_source,units,consumption\r\n2001,1,AK,TotalElectricPowerIndustry,Coal,ShortTons,47615\r\n2001,1,AK,ElectricGeneratorsElectricUtilities,Coal,ShortTons,16535\r\n2001,1,AK,CombinedHeatandPowerElectricPower,Coal,ShortTons,22890\r\n2001,1,AL,TotalElectricPowerIndustry,Coal,ShortTons,3020601\r\n2001,1,AL,ElectricGeneratorsElectricUtilities,Coal,ShortTons,2987681"
       ],
       "ParsedInputRecords": [
           [
               null,
               null,
               "state",
               "producer_type",
               "energy_source",
               "units",
               null
           ],
           [
               "2001",
               "1",
               "AK",
               "TotalElectricPowerIndustry",
               "Coal",
               "ShortTons",
               "47615"
           ],
           [
               "2001",
               "1",
               "AK",
               "ElectricGeneratorsElectricUtilities",
               "Coal",
               "ShortTons",
               "16535"
           ],
           [
               "2001",
               "1",
               "AK",
               "CombinedHeatandPowerElectricPower",
               "Coal",
               "ShortTons",
               "22890"
           ],
           [
               "2001",
               "1",
               "AL",
               "TotalElectricPowerIndustry",
               "Coal",
               "ShortTons",
               "3020601"
           ],
           [
               "2001",
               "1",
               "AL",
               "ElectricGeneratorsElectricUtilities",
               "Coal",
               "ShortTons",
               "2987681"
           ]
       ]
   }
   ```