Uso de la función de detección de esquema en datos estáticos - Guía para desarrolladores de Amazon Kinesis Data Analytics SQL para aplicaciones

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

1. A partir del 15 de octubre de 2025, no podrá crear nuevos Kinesis Data Analytics SQL para aplicaciones.

2. Eliminaremos sus aplicaciones a partir del 27 de enero de 2026. No podrá iniciar ni utilizar Amazon Kinesis Data Analytics SQL para aplicaciones. A partir de ese momento, el soporte para Amazon Kinesis Data Analytics dejará SQL de estar disponible. Para obtener más información, consulte Suspensión de Amazon Kinesis Data Analytics SQL for Applications.

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

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.

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 con el parámetro S3Configuration especificado.

Ejecución de la detección de esquemas mediante la consola

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.

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

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

  4. 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.

Ejecución de la detección de esquemas mediante la API

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:

Para generar un esquema a partir de un objeto de Amazon S3 utilizando el API DiscoverInputSchema
  1. Asegúrese de que tiene la AWS CLI configurada. Para obtener más información, consulte Paso 2: Configuración de la AWS Command Line Interface (AWS CLI) en la sección Introducción.

  2. 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
  3. Inicie sesión en la consola de Amazon S3 en https://console.aws.amazon.com/s3/.

  4. 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.

  5. Abra la consola de IAM en 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. Para obtener más información sobre cómo aplicar una política a una función, consulte Modificación de un rol.

  6. Ejecute el siguiente comando DiscoverInputSchema en la AWS CLI sustituyendo los ARN para su bucket de Amazon S3 y el rol 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" }'
  7. 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" ] ] }