Secuencias y bombeos en la aplicación - 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.

Secuencias y bombeos en la aplicación

Al configurar la entrada de aplicación, asigna el origen de streaming a una secuencia en la aplicación que se crea. La información fluye desde el origen de streaming en la secuencia en la aplicación. Una secuencia en la aplicación funciona como una tabla que puede consultar a través de instrucciones SQL, pero se denomina una secuencia ya que representa un flujo de datos continuo.

nota

No confunda las transmisiones dentro de la aplicación con las transmisiones de datos de Amazon Kinesis y las transmisiones de entrega de Firehose. Las secuencias en la aplicación existen solo en el contexto de una aplicación de Amazon Kinesis Data Analytics. Los flujos de datos de Kinesis y los flujos de entrega de Firehose existen independientemente de la aplicación. Puede configurarlas como un origen de streaming en la configuración de entrada de su aplicación o como destino en la configuración de salida.

También puede crear más secuencias en la aplicación como se necesite, para almacenar resultados intermedios de consultas. La creación de una secuencia en la aplicación es un proceso de dos pasos. En primer lugar, debe crear una secuencia en la aplicación y, a continuación, se envían datos a ella. Por ejemplo, suponga que la configuración de entrada de la aplicación crea una secuencia en la aplicación llamada INPUTSTREAM. En el siguiente ejemplo, debe crear otra secuencia (TEMPSTREAM) y, a continuación, envíe datos desde INPUTSTREAM a la misma.

  1. Crear una secuencia en la aplicación (TEMPSTREAM) con tres columnas, tal y como se muestra a continuación:

    CREATE OR REPLACE STREAM "TEMPSTREAM" ( "column1" BIGINT NOT NULL, "column2" INTEGER, "column3" VARCHAR(64));

    Los nombres de columna se especifican entre comillas, de manera que distingue entre mayúsculas y minúsculas. Para obtener más información, consulte Identificadores en la Referencia de SQL de Amazon Kinesis Data Analytics.

  2. Insertar datos a la secuencia mediante una bomba. Una bomba es una consulta continua, que inserta información de una secuencia en la aplicación a otra secuencia en la aplicación. La siguiente instrucción crea una bomba (SAMPLEPUMP) e introduce los datos en TEMPSTREAM seleccionando registros de otra secuencia (INPUTSTREAM).

    CREATE OR REPLACE PUMP "SAMPLEPUMP" AS INSERT INTO "TEMPSTREAM" ("column1", "column2", "column3") SELECT STREAM inputcolumn1, inputcolumn2, inputcolumn3 FROM "INPUTSTREAM";

Puede tener varios escritores insertados en una secuencia en la aplicación, y puede haber varios lectores seleccionados de la secuencia. Puede concebir una secuencia en la aplicación como la implementación de un paradigma de mensajería para publicar/suscribir. En este paradigma, la fila de datos, incluida la hora de creación y la hora de la recepción, puede ser procesada, interpretada y reenviada por una cascada de instrucciones SQL de streaming, sin tener que estar almacenada en un RDBMS tradicional.

Una vez creada una secuencia en la aplicación, puede realizar consultas SQL normales.

nota

Cuando se consultan secuencias, la mayoría de las instrucciones SQL se unen usando una ventana basada en filas o en el tiempo. Para obtener más información, consulte Consultas en ventana.

También puede unir secuencias. Para ver ejemplos de cómo unir secuencias, consulte Operaciones de streaming de datos: uniones de secuencias.