Amazon Managed Service para Apache Flink Amazon (Amazon MSF) se denominaba anteriormente Amazon Kinesis Data Analytics para Apache Flink.
Managed Service para Apache Flink: cómo funciona
Managed Service para Apache Flink es un servicio de Amazon completamente administrado, que permite usar una aplicación de Apache Flink para procesar datos de transmisión. Primero, se programa la aplicación Apache Flink y, a continuación, se crea la aplicación Managed Service para Apache Flink.
Programación de la aplicación de Apache Flink
Una aplicación Apache Flink es una aplicación Java o Scala que se crea con el marco Apache Flink. La aplicación Apache Flink se crea y compila de forma local.
Las aplicaciones utilizan principalmente la API DataStream
Las características de las dos API son las siguientes:
API de Datastream
El modelo de programación de la API de DataStream de Apache Flink se basa en dos componentes:
-
Flujo de datos: la representación estructurada de un flujo continuo de registros de datos.
-
Operador de transformación: toma uno o más flujos de datos como entrada y produce uno o más flujos de datos como salida.
Las aplicaciones creadas con la API DataStream hacen lo siguiente:
Leen los datos de un origen de datos (como un flujo de Kinesis o un tema de Amazon MSK).
Aplican transformaciones a los datos, como el filtrado, la agregación o el enriquecimiento.
Escriben los datos transformados en un receptor de datos.
Las aplicaciones que utilizan la API DataStream se pueden escribir en Java o Scala y pueden leer desde un flujo de datos de Kinesis, un tema de Amazon MSK o un origen personalizado.
La aplicación procesa los datos mediante un conector. Apache Flink utiliza los siguientes tipos de conectores:
-
Origen: conector que se utiliza para leer datos externos.
-
Receptor: conector que se utiliza para escribir en ubicaciones externas.
-
Operador: conector que se utiliza para procesar datos dentro de la aplicación.
Una aplicación típica consta de al menos un flujo de datos con un origen, un flujo de datos con uno o más operadores y al menos un receptor de datos.
Para obtener más información sobre el uso de la API de DataStream, consulte Revisión de los componentes de la API de DataStream.
API de tabla
El modelo de programación de la API Apache Flink se basa en los siguientes componentes:
-
Entorno de tablas: una interfaz para los datos subyacentes que se utiliza para crear y alojar una o más tablas.
-
Tabla: objeto que proporciona acceso a una tabla o vista de SQL.
-
Origen de tabla: se utiliza para leer datos de una fuente externa, como un tema de Amazon MSK.
-
Función de tabla: consulta SQL o llamada a la API que se utiliza para transformar datos.
-
Receptor de tabla: se utiliza para escribir datos en una ubicación externa, como un bucket de Amazon S3.
Las aplicaciones creadas con la API de tabla hacen lo siguiente:
Crean un
TableEnvironmentconectándose a unTable Source.Crean una tabla en el
TableEnvironmentmediante consultas SQL o funciones de la API de tablas.Ejecutan una consulta en la tabla mediante la API de tabla o SQL.
Aplican transformaciones a los resultados de la consulta mediante funciones de tabla o consultas SQL.
Escriben los resultados de la consulta o función en un
Table Sink.
Las aplicaciones que utilizan la API de tablas se pueden escribir en Java o Scala, y pueden consultar datos mediante llamadas a la API o consultas SQL.
Para obtener más información sobre el uso de la API de tabla, consulte Revisión de los componentes de la API de la tabla.
Creación de la aplicación de Managed Service para Apache Flink
Managed Service para Apache Flink es un servicio de AWS que crea un entorno para brindar hosting a su aplicación Apache Flink y lo proporciona con las siguientes configuraciones:
-
Uso de propiedades de tiempo de ejecución: parámetros que puede proporcionar a su aplicación. Puede cambiar estos parámetros sin tener que volver a compilar el código de la aplicación.
-
Implementación de tolerancia a errores: cómo se recupera la aplicación de las interrupciones y se reinicia.
-
Registro y supervisión en Amazon Managed Service para Apache Flink: cómo registra su aplicación los eventos en CloudWatch Logs.
-
Implementación del escalado de aplicaciones: cómo aprovisiona su aplicación los recursos informáticos.
Crea una aplicación de Managed Service para Apache Flink mediante la consola o la AWS CLI. Para comenzar a crear una aplicación de Managed Service para Apache Flink, consulte Tutorial: introducción al uso de la API de DataStream en Managed Service para Apache Flink.