Amazon Managed Service para Apache Flink Amazon se denominaba anteriormente Amazon Kinesis Data Analytics para Apache Flink.
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.
Esta sección presenta una introducción a los conceptos fundamentales de un Managed Service para Apache Flink utilizando Python y la API de tabla. Describe las opciones disponibles para crear y probar sus aplicaciones. También proporciona instrucciones para instalar las herramientas necesarias para completar los tutoriales de esta guía y crear su primera aplicación.
Temas
Revise los componentes de una aplicación de servicio gestionado para Apache Flink
nota
Amazon Managed Service for Apache Flink es compatible con todos los Apache APIs Flink
Para procesar los datos, su aplicación Managed Service for Apache Flink utiliza un script de Python para definir el flujo de datos que procesa la entrada y produce la salida mediante el tiempo de ejecución de Apache Flink.
Una aplicación típica de servicio gestionado para Apache Flink tiene los siguientes componentes:
-
Propiedades de tiempo de ejecución: puede usar las propiedades de tiempo de ejecución para configurar su aplicación sin tener que volver a compilar el código de la aplicación.
-
Fuentes: la aplicación consume datos de una o más fuentes. Una fuente utiliza un conector
para leer datos de un sistema externo, como una transmisión de datos de Kinesis o un tema de Amazon MSK. También puede utilizar conectores especiales para generar datos desde la aplicación. Cuando se utiliza SQL, la aplicación define las fuentes como tablas de fuentes. -
Transformaciones: la aplicación procesa los datos mediante una o más transformaciones que pueden filtrar, enriquecer o agregar datos. Cuando se utiliza SQL, la aplicación define las transformaciones como consultas SQL.
-
Sumideros: la aplicación envía los datos a fuentes externas a través de los sumideros. Un receptor utiliza un conector
para enviar datos a un sistema externo, como una transmisión de datos de Kinesis, un tema de Amazon MSK, un bucket de Amazon S3 o una base de datos relacional. También puede utilizar un conector especial para imprimir la salida con fines de desarrollo. Cuando se utiliza SQL, la aplicación define los receptores como tablas de destino en las que se insertan los resultados. Para obtener más información, consulte Escriba datos mediante sumideros en Managed Service for Apache Flink.
Es posible que tu aplicación Python también requiera dependencias externas, como bibliotecas de Python adicionales o cualquier conector Flink que utilice tu aplicación. Al empaquetar la aplicación, debe incluir todas las dependencias que requiera la aplicación. En este tutorial se muestra cómo incluir las dependencias de los conectores y cómo empaquetar la aplicación para su implementación en Amazon Managed Service for Apache Flink.
Cumpla con los requisitos previos
Para completar este tutorial, necesita tener lo siguiente:
-
Python 3.11, preferiblemente utilizando un entorno independiente como VirtualEnv (venv)
, Conda o Miniconda . -
Cliente Git
: instala el cliente Git si aún no lo has hecho. -
Versión 11 del Java Development Kit (JDK)
: instala un Java JDK 11 y configura la variable de JAVA_HOME
entorno para que apunte a tu ubicación de instalación. Si no tiene un JDK 11, puede utilizar Amazon Correttocualquier JDK estándar de nuestra elección.-
Para comprobar que el JDK está correctamente instalado, ejecute el siguiente comando. El resultado será diferente si utiliza un JDK que no sea Amazon Corretto 11. Asegúrese de que la versión sea 11.x.
$ java --version openjdk 11.0.23 2024-04-16 LTS OpenJDK Runtime Environment Corretto-11.0.23.9.1 (build 11.0.23+9-LTS) OpenJDK 64-Bit Server VM Corretto-11.0.23.9.1 (build 11.0.23+9-LTS, mixed mode)
-
-
Apache Maven
: instale Apache Maven si aún no lo ha hecho. Para obtener más información, consulte Instalación de Apache Maven . -
Para probar la instalación de Apache Maven, utilice el siguiente comando:
$ mvn -version
-
nota
Aunque la aplicación está escrita en Python, Apache Flink se ejecuta en la máquina virtual Java (JVM). Distribuye la mayoría de las dependencias, como el conector de Kinesis, como archivos JAR. Para administrar estas dependencias y empaquetar la aplicación en un archivo ZIP, utilice Apache Maven.
aviso
Le recomendamos que utilice Python 3.11 para el desarrollo local. Se trata de la misma versión de Python que utiliza Amazon Managed Service para Apache Flink con el motor de ejecución de Flink 1.19.
La instalación de la biblioteca Python Flink 1.19 en Python 3.12 podría fallar.
Si tiene otra versión de Python instalada de forma predeterminada en su máquina, le recomendamos que cree un entorno independiente, como VirtualEnv Python 3.11.
IDE para el desarrollo local
Le recomendamos que utilice un entorno de desarrollo como PyCharm
A continuación, complete los dos primeros pasos deComience a utilizar Amazon Managed Service para Apache Flink (DataStream API):
Para empezar, consulte Creación de una aplicación de .