DiscoverInputSchema - Guía para desarrolladores de aplicaciones de Amazon Kinesis Data Analytics para SQL

Para proyectos nuevos, le recomendamos que utilice el nuevo servicio gestionado para Apache Flink Studio en lugar de aplicaciones de Kinesis Data Analytics para SQL. El servicio gestionado para Apache Flink Studio combina la facilidad de uso con capacidades analíticas avanzadas, lo que le permite crear aplicaciones sofisticadas de procesamiento de flujos en cuestión de minutos.

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.

DiscoverInputSchema

nota

Esta documentación es para la versión 1 de la API de Amazon Kinesis Data Analytics, que solo admite aplicaciones SQL. La versión 2 de la API admite aplicaciones SQL y Java. Para obtener más información acerca de la versión 2, consulte la documentación de la API V2 de Amazon Kinesis Data Analytics.

Infiere un esquema mediante la evaluación de registros de muestra en el origen de flujo especificado (flujo de Amazon Kinesis o flujo de entrega de Amazon Kinesis Firehose) o en el objeto de S3 especificado. En la respuesta, la operación devuelve el esquema inferido y también los registros de muestra que la operación utilizó para deducir el esquema.

Puede usar el esquema inferido al configurar un origen de flujo para su aplicación. Para obtener información conceptual, consulte Configuración de entrada de la aplicación. Tenga en cuenta que cuando crea una aplicación mediante la consola de Amazon Kinesis Analytics, la consola utiliza esta operación para deducir un esquema y mostrarlo en la interfaz de usuario de la consola.

Esto operación requiere permisos para realizar la acción kinesisanalytics:DiscoverInputSchema.

Sintaxis de la solicitud

{ "InputProcessingConfiguration": { "InputLambdaProcessor": { "ResourceARN": "string", "RoleARN": "string" } }, "InputStartingPositionConfiguration": { "InputStartingPosition": "string" }, "ResourceARN": "string", "RoleARN": "string", "S3Configuration": { "BucketARN": "string", "FileKey": "string", "RoleARN": "string" } }

Parámetros de la solicitud

La solicitud acepta los siguientes datos en formato JSON.

InputProcessingConfiguration

La InputProcessingConfiguration que se utilizará para preprocesar los registros antes de descubrir el esquema de los registros.

Tipo: objeto InputProcessingConfiguration

Obligatorio: no

InputStartingPositionConfiguration

Punto en el que desea que Amazon Kinesis Analytics comience a leer los registros con los fines de descubrimiento de orígenes de flujo especificados.

Tipo: objeto InputStartingPositionConfiguration

Obligatorio: no

ResourceARN

El Nombre de recurso de Amazon (ARN) del origen de streaming.

Tipo: cadena

Limitaciones de longitud: longitud mínima de 1. La longitud máxima es de 2048 caracteres.

Patrón: arn:.*

Obligatorio: no

RoleARN

El ARN del rol de IAM que Amazon Kinesis Analytics puede asumir para acceder al flujo en su nombre.

Tipo: cadena

Limitaciones de longitud: longitud mínima de 1. La longitud máxima es de 2048 caracteres.

Patrón: arn:.*

Obligatorio: no

S3Configuration

Especifique este parámetro para detectar un esquema a partir de datos en un objeto de Amazon S3.

Tipo: objeto S3Configuration

Obligatorio: no

Sintaxis de la respuesta

{ "InputSchema": { "RecordColumns": [ { "Mapping": "string", "Name": "string", "SqlType": "string" } ], "RecordEncoding": "string", "RecordFormat": { "MappingParameters": { "CSVMappingParameters": { "RecordColumnDelimiter": "string", "RecordRowDelimiter": "string" }, "JSONMappingParameters": { "RecordRowPath": "string" } }, "RecordFormatType": "string" } }, "ParsedInputRecords": [ [ "string" ] ], "ProcessedInputRecords": [ "string" ], "RawInputRecords": [ "string" ] }

Elementos de respuesta

Si la acción se realiza correctamente, el servicio devuelve una respuesta HTTP 200.

El servicio devuelve los datos siguientes en formato JSON.

InputSchema

Esquema deducido del origen de streaming. Describe el formato de los datos del origen de streaming y cómo se asigna cada elemento de datos a las columnas correspondientes que se crean en la secuencia en la aplicación que puede crear.

Tipo: objeto SourceSchema

ParsedInputRecords

La matriz de elementos, donde cada elemento corresponde a una fila de un registro de flujo (un registro de flujo puede tener más de una fila).

Tipo: Matriz de matrices de cadenas

ProcessedInputRecords

Transmita datos modificados por el procesador especificado en el parámetro InputProcessingConfiguration.

Tipo: matriz de cadenas

RawInputRecords

Datos de flujo sin procesar que se asignaron para deducir el esquema.

Tipo: matriz de cadenas

Errores

InvalidArgumentException

El valor del parámetro de entrada especificado no es válido.

Código de estado HTTP: 400

ResourceProvisionedThroughputExceededException

Discovery no pudo obtener un registro del origen de flujo debido a que Amazon Kinesis Streams ProvisionedThroughputexceededexception. Para obtener más información, consulte GetRecords en la Referencia de la API de Amazon Kinesis.

Código de estado HTTP: 400

ServiceUnavailableException

El servicio no está disponible. Retroceda y vuelva a ejecutar la operación.

Código de estado HTTP: 500

UnableToDetectSchemaException

El formato de la fecha no es válido. Amazon Kinesis Analytics no puede detectar el esquema del origen de flujo determinado.

Código de estado HTTP: 400

UnsupportedOperationException

La solicitud se rechazó porque no se admite un parámetro específico o porque un recurso específico no es válido para esta operación.

Código de estado HTTP: 400

Véase también

Para obtener más información sobre el uso de esta API en un SDK de AWS de un lenguaje específico, consulte: