Amazon Kinesis Data Analytics para aplicaciones SQL: Cómo funciona - Guía para desarrolladores de Amazon Kinesis Data Analytics for SQL 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.

Amazon Kinesis Data Analytics para aplicaciones SQL: Cómo funciona

Un registrorevisiones dees el recurso principal de Amazon Kinesis Data Analytics que puede crear en su cuenta. Puede crear y administrar aplicaciones con laAWS Management Consoleo la API de Kinesis Data Analytics. Kinesis Data Analytics proporciona operaciones de la API para la administración de aplicaciones. Para ver la lista de operaciones de la API, consulte Actions.

Las aplicaciones de Kinesis Data Analytics de leen y procesan datos de streaming en tiempo real de forma constante. Debe escribir el código de la aplicación con SQL para procesar los datos de streaming entrantes y producir la salida. A continuación, Kinesis Data Analytics escribe la salida en un destino configurado. El siguiente diagrama ilustra la arquitectura de una aplicación típica.


            Diagrama que muestra una aplicación de análisis de datos, los orígenes de entrada de streaming, los datos de referencia y la salida de la aplicación.

Cada aplicación tiene un nombre, descripción, ID de versión y estado. Amazon Kinesis Data Analytics la primera vez que crea una aplicación. Se actualiza este ID de versión cuando actualiza la configuración de cualquier aplicación. Por ejemplo, si añade una configuración de entrada, añade o elimina un origen de datos de referencia, añade o elimina una configuración de salida o actualiza el código de la aplicación, Kinesis Data Analytics actualiza el ID de versión de la aplicación actual. Kinesis Data Analytics también mantiene las marcas de tiempo de cuando se creó una aplicación y la última actualización.

Además de estas propiedades básicas, cada aplicación se compone de lo siguiente:

  • Input: es el origen de streaming de la aplicación. Puede seleccionar una secuencia de datos de Kinesis o una secuencia de entrega de datos de Kinesis Data Firehose como origen de streaming. En la configuración de entrada, debe asignar el origen de streaming a una secuencia de entrada en la aplicación. La secuencia en la aplicación se asemeja a una tabla que se actualiza constantemente, en la que puede realizar operaciones SELECT e INSERT SQL. En su código de aplicación, puede crear transmisiones en la aplicación adicionales para almacenar los resultados intermedios de la consulta.

     

    Si lo desea, puede dividir un único origen de streaming en varias secuencias de entrada en la aplicación para mejorar el rendimiento. Para obtener más información, consulte Limits y Configuración de entrada de la aplicación.

     

    Amazon Kinesis Data Analytics proporciona una columna de marca de tiempo llamada para cada secuencia en la aplicación llamadaMarcas temporales y la comuna ROWTIME. Puede utilizar esta columna en las consultas en ventana basadas en el tiempo. Para obtener más información, consulte Consultas en ventana.

     

    Si lo desea, puede configurar un origen de datos de referencia para enriquecer la secuencia de datos de entrada en la aplicación. Se produce una tabla de referencia en la aplicación. Debe almacenar los datos de referencia como un objeto en el bucket S3. Cuando se inicia la aplicación, Amazon Kinesis Data Analytics lee el objeto de Amazon S3 y crea una tabla en la aplicación. Para obtener más información, consulte Configuración de entrada de la aplicación.

     

  • Código de la aplicación: una serie de enunciados SQL que procesan entradas y producen salidas. Puede escribir instrucciones de SQL en a secuencias en la aplicación y con tablas de referencia. También puede escribir consultas JOIN para combinar datos de ambos orígenes.

     

    Para obtener información sobre los elementos del lenguaje SQL compatibles con Kinesis Data Analytics, consulteAmazon Kinesis Data Analytics.

     

    En su forma más sencilla, el código de la aplicación puede ser una única instrucción SQL que selecciona de una entrada de streaming e introduce los resultados en una salida de streaming. También puede ser una serie de instrucciones SQL en las que la salida de una alimenta la salida de la siguiente instrucción SQL. Además, puede escribir el código de aplicación para dividir una secuencia de entrada en varias secuencias. A continuación, puede aplicar consultas adicionales para procesar estas secuencias. Para obtener más información, consulte Código de la aplicación.

     

  • Salida: en el código de la aplicación, los resultados de las consultas van a secuencias en la aplicación. En el código de la aplicación, puede crear una o más secuencias en la aplicación adicionales para conservar resultados intermedios. Además, como opción, puede configurar la salida de la aplicación para que se envíen datos de secuencias en la aplicación, que mantengan la salida de la aplicación (se conocen también como reproducciones de salida en la aplicación), para destinos externos. Los destinos externos pueden ser una secuencia de entrega de Kinesis Data Firehose o una secuencia de datos de Kinesis Data Streams. Tenga en cuenta lo siguiente en relación con estos destinos:

    • Puede configurar una secuencia de entrega de Kinesis Data Firehose para escribir resultados en Amazon S3, Amazon Redshift oAmazon OpenSearch Service(OpenSearch Service).

       

    • También puede escribir la salida de la aplicación en un destino personalizado en lugar de Amazon S3 o Amazon Redshift. Para ello, debe especificar una secuencia de datos de Kinesis de como destino en la configuración de salida. A continuación, configuraAWS Lambdapara sondear la secuencia e invocar la función de Lambda. El código de la función de Lambda recibe datos de secuencia como entrada. En el código de la función de Lambda, puede escribir los datos entrantes en su destino personalizado. Para obtener más información, consulteUso deAWS Lambdacon Amazon Kinesis Data Analytics.

    Para obtener más información, consulte Configuración de salida de la aplicación.

Además, tenga en cuenta lo siguiente:

  • Amazon Kinesis Data Analytics necesita permisos para leer los registros de un origen de streaming y escribir la salida de la aplicación en los destinos externos. Use los roles de IAM para conceder estos permisos.

     

  • Kinesis Data Analytics proporciona automáticamente una secuencia de errores en la aplicación para cada aplicación. Si la aplicación tiene problemas al procesar determinados registros (por ejemplo, por un retraso o porque no coincide el tipo), ese registro se escribe en la secuencia de errores. Puede configurar la salida de la aplicación directamente en Kinesis Data Analytics para que persistan los datos de secuencia de errores en un destino externo para su posterior evaluación. Para obtener más información, consulte Control de errores.

     

  • Amazon Kinesis Data Analytics garantiza que se escriben los registros de salida de la aplicación en el destino configurado. Utiliza "al menos un" modelo de entrega y procesamiento, incluso si se produce una interrupción de la aplicación. Para obtener más información, consulte Modelo de entrega para conservar la salida de las aplicaciones en destinos externos.