Aspectos generales

P: ¿Qué es Amazon Managed Service para Apache Flink?
Con Amazon Managed Service para Apache Flink, puede transformar y analizar los datos de streaming en tiempo real con Apache Flink. Apache Flink es un marco de código abierto y un motor para procesar flujos de datos. Amazon Managed Service para Apache Flink reduce la complejidad de desarrollar, administrar e integrar las aplicaciones de Apache Flink con otros servicios de AWS.
 
Amazon Managed Service para Apache Flink se ocupa de todo lo necesario para ejecutar sus aplicaciones de streaming de forma continua y ajusta la escala automáticamente para adaptarse al volumen y rendimiento de los datos de entrada. Con Amazon Managed Service para Apache Flink, no hay servidores para administrar, no hay tarifas mínimas ni costos de instalación, y solo paga por los recursos que consumen sus aplicaciones de streaming.
 
P: ¿Qué es el procesamiento de streaming en tiempo real y por qué lo necesito?
Las empresas consumen datos más rápido que nunca por un crecimiento explosivo de origen de datos en tiempo real. Ya sea que gestione datos de los registros procedentes de aplicaciones móviles y web, datos de compra de plataformas de comercio electrónico o datos de sensores de dispositivos IoT, consumir datos en tiempo real le permite aprender lo que sus clientes, organizaciones y negocios están haciendo ahora mismo.
 
P: ¿Qué puedo hacer con Amazon Managed Service para Apache Flink?
Puede utilizar Amazon Managed Service para Apache Flink para muchos casos de uso con el fin de procesar datos de forma constante y obtener información en segundos o minutos en lugar de esperar días o incluso semanas. Amazon Managed Service para Apache Flink le permite crear con rapidez aplicaciones de procesamiento de secuencias completas para el análisis de los registros, el análisis de secuencias de clics, Internet de las cosas (IoT), la tecnología publicitaria, los videojuegos y más. Los cuatro casos de uso más comunes son el streaming de procesos de extracción, transformación y carga (ETL), la generación continua de métricas, análisis de respuesta en tiempo real y la consulta interactiva de secuencias de datos.
 
Streaming de procesos ETL
Con las aplicaciones de streaming de procesos de ETL, podrá limpiar, enriquecer, organizar y transformar datos sin procesar antes de cargar sus lagos de datos o almacenamiento de datos en tiempo real, y así reducir o eliminar los pasos de ELT por lotes. Estas aplicaciones pueden guardar pequeños registros en archivos más grandes antes de la entrega y realizar cadenas sofisticadas a través de secuencias y tablas. Por ejemplo, puede crear una aplicación que lea continuamente los datos del sensor IoT almacenados en Amazon Managed Streaming para Apache Kafka (Amazon MSK), organizar los datos por tipo de sensor, eliminar datos duplicados, normalizar los datos según un esquema específico y, a continuación, proporcionar los datos a Amazon Simple Storage Service (Amazon S3).
 
Generación continua de métricas
Con la generación continua de métricas, podrá supervisar y comprender las tendencias de los datos con el paso del tiempo. Las aplicaciones pueden incorporar datos de streaming en la información crítica e integrarlos perfectamente con bases de datos de informes y servicios de supervisión para atender a las aplicaciones y a los usuarios en tiempo real. Con Amazon Managed Service para Apache Flink, puede utilizar el código de Apache Flink (en Java, Scala, Python o SQL) para generar análisis de series de tiempo de forma continua a lo largo de las ventanas de tiempo. Por ejemplo, puede crear un marcador en vivo para un videojuego para móviles mediante el procesamiento por minuto de los mejores jugadores y así enviar esta información a Amazon DynamoDB. O puede supervisar el tráfico de su sitio web calculando la cantidad de visitantes únicos cada cinco minutos y enviar los resultados procesados a Amazon Redshift.
 
Análisis de la capacidad de respuesta en tiempo real
Las aplicaciones de análisis de la capacidad de respuesta en tiempo real envían alarmas o notificaciones en tiempo real cuando determinadas métricas alcanzan umbrales predeterminados o, en casos más complejos, cuando su aplicación detecta anomalías mediante algoritmos de aprendizaje automático (ML). Con estas aplicaciones, puede responder de forma inmediata a los cambios de su negocio en tiempo real, como en la predicción de abandono de usuario en aplicaciones móviles y la identificación de sistemas degradados. Por ejemplo, una aplicación puede procesar la disponibilidad o la tasa de éxito de una API de cara al cliente con el tiempo y enviar los resultados a Amazon CloudWatch. Puede crear otra aplicación que busque eventos que cumplan determinados criterios y notificar automáticamente a los clientes correspondientes mediante Amazon Kinesis Data Streams y Amazon Simple Notification Service (Amazon SNS).
 
Análisis interactivo de flujos de datos
El análisis interactivo le ayuda a transmitir la exploración de datos en tiempo real. Con consultas o programas adecuados, puede inspeccionar flujos de Amazon MSK o Amazon Kinesis Data Streams y observar cómo se ven los datos en esos flujos. Por ejemplo, puede ver cómo se comporta una métrica en tiempo real que calcula el promedio sobre una ventana de tiempo y envía los datos agregados al destino de su elección. El análisis interactivo también ayuda con el desarrollo repetitivo de aplicaciones de procesamiento de flujo. Las consultas que cree se actualizan continuamente conforme lleguen nuevos datos. Con Amazon Managed Service para Apache Flink Studio, puede implementar estas consultas para que se ejecuten de forma continua con escalado automático y copias de seguridad de estado duradero habilitadas. 
 

Introducción

P: ¿Cómo puedo empezar a utilizar las aplicaciones de Apache Flink para Amazon Managed Service para Apache Flink?
Inicie sesión en la consola de Amazon Managed Service para Apache Flink y cree una nueva aplicación de procesamiento de flujos. También puede usar la CLI de AWS y los SDK de AWS. Una vez que se crea una aplicación, vaya a su entorno de desarrollo integrado favorito, conéctese a AWS e instale las bibliotecas de Apache Flink de código abierto y los SDK de AWS en el idioma que prefiera. Apache Flink es un marco de código abierto y un motor para procesar flujos de datos y SDK de AWS. Las bibliotecas ampliables incluyen más de 25 operadores de procesamiento de transmisiones predefinidos, como ventanas y agregados, e integraciones en servicios de AWS, como Amazon MSK, Amazon Kinesis Data Streams, Amazon DynamoDB y Amazon Kinesis Data Firehose. Una vez creado, cargue su código a Amazon Managed Service para Apache Flink. Luego, el servicio se ocupa de todo lo necesario para ejecutar sus aplicaciones en tiempo real de forma continua, incluso ajusta la escala automáticamente para adaptarse al volumen y rendimiento de los datos de entrada. 
 
P: ¿Cómo puedo empezar a utilizar las aplicaciones de Apache Beam para Amazon Managed Service para Apache Flink? 
El uso de Apache Beam para crear su aplicación de Amazon Managed Service para Apache Flink es muy similar a comenzar a usar Apache Flink. Puede seguir las instrucciones de la pregunta anterior. Asegúrese de instalar todos los componentes necesarios para que las aplicaciones se ejecuten en Apache Beam, siguiendo las instrucciones de la Guía para desarrolladores. Tenga en cuenta que Amazon Managed Service para Apache Flink solo es compatible con el SDK de Java cuando se ejecuta en Apache Beam. 
 
P: ¿Cómo puedo empezar a utilizar Amazon Managed Service para Apache Flink Studio?
Puedes empezar desde la consola de Amazon Managed Service para Apache Flink y crear un nuevo bloc de notas de Studio. Una vez que cree el bloc de notas, puede abrirlo en Apache Zeppelin para escribir inmediatamente código en SQL, Python o Scala. Puede desarrollar aplicaciones de forma interactiva mediante la interfaz del bloc de notas para Amazon Kinesis Data Streams, Amazon MSK y Amazon S3 con las integraciones y otras fuentes y destinos diversos compatibles con Apache Flink con conectores personalizados. Puede utilizar todos los operadores compatibles con Apache Flink en Flink SQL y la API de tablas para realizar consultas de secuencias de datos ad hoc y desarrollar su aplicación de procesamiento de flujo. Una vez que esté listo, puede crear y promover fácilmente su código a una aplicación de procesamiento de flujo en ejecución continua con escalado automático y estado duradero en unos pocos pasos. 
 
P: ¿Cuáles son los límites de Amazon Managed Service para Apache Flink? 
Amazon Managed Service para Apache Flink ajusta la escala de la aplicación de manera elástica para adaptarse al procesamiento de datos de su flujo de origen y al nivel de complejidad de su consulta en la mayoría de las situaciones. Si desea obtener información detallada acerca de los límites del servicio de las aplicaciones de Apache Flink, consulte la sección Limits (Límites) en la Guía para desarrolladores de Amazon Managed Service para Apache Flink. 
 
P: ¿Amazon Managed Service para Apache Flink admite el registro de esquemas?
Sí, mediante el uso de los conectores de Apache Flink DataStream, las aplicaciones de Amazon Managed Service para Apache Flink pueden utilizar AWS Glue Schema Registry, una función sin servidor de AWS Glue. Puede integrar Apache Kafka, Amazon MSK y Amazon Kinesis Data Streams, como receptor u origen, con sus cargas de trabajo de Amazon Managed Service para Apache Flink. Consulte la guía para desarrolladores de AWS Glue Schema Registry para empezar y obtener más información. 

Conceptos clave

P: ¿Qué es una aplicación de Amazon Managed Service para Apache Flink?
Una aplicación es la entidad de Amazon Managed Service para Apache Flink con la que trabaja. Las aplicaciones de Amazon Managed Service para Apache Flink leen y procesan continuamente los datos de streaming en tiempo real. Usted escribe un código de aplicación en un lenguaje compatible con Apache Flink para procesar los datos de streaming entrantes y producir elementos de salida. A continuación, Amazon Managed Service para Apache Flink escribe el resultado en un destino configurado.
 
Cada aplicación posee tres componentes principales:
 
  1. Entrada: la entrada es el origen de streaming de su aplicación. En la configuración de entrada, se asignan las fuentes de streaming a los flujos de datos. Los datos fluyen de sus orígenes de datos a sus flujos de datos. Se procesan los datos de estos flujos de datos al utilizar el código de la aplicación, al enviar datos procesados a sus flujos o destinos de datos posteriores. Las entradas se añaden dentro del código de la aplicación para las aplicaciones de Apache Flink y los bloc de notas de Studio y a través de la API de las aplicaciones de Amazon Managed Service para Apache Flink. 
  2. Código de la aplicación: el código de la aplicación es una serie de operadores de Apache Flink que procesan elementos de entrada y producen elementos de salida. En su forma más simple, el código de la aplicación puede ser un único operador de Apache Flink que lee a partir de un flujo de datos asociado con un origen de streaming y escribe en otro flujo de datos asociado con un elemento de salida. En el caso de un bloc de notas de Studio, podría tratarse de una simple consulta selecta de SQL de Flink, con los resultados mostrados en contexto dentro del bloc de notas. Puede escribir el código de Apache Flink en los idiomas compatibles para las aplicaciones de Amazon Managed Service para Apache Flink o los blocs de notas de Studio.
  3. Salida: luego, si lo desea, puede configurar la salida de una aplicación para conservar los datos en un destino externo. Estos resultados se añaden dentro del código de aplicación para las aplicaciones de Amazon Managed Service para Apache Flink y los blocs de notas de Studio. 

P: ¿Qué código de aplicación admite?

Amazon Managed Service para Apache Flink admite aplicaciones creadas con Java, Scala y Python con las bibliotecas de código abierto de Apache Flink y con su propio código personalizado. Amazon Managed Service para Apache Flink también admite aplicaciones creadas con Java con bibliotecas de código abierto de Apache Beam y con su propio código personalizado. Amazon Managed Service para Apache Flink Studio admite código creado con SQL, Python y Scala compatibles con Apache Flink.

Administración de aplicaciones

P: ¿Cómo puedo supervisar las operaciones y el rendimiento de mis aplicaciones de Amazon Managed Service para Apache Flink?
AWS proporciona varias herramientas que puede utilizar a fin de supervisar sus aplicaciones de Amazon Managed Service para Apache Flink, incluido el acceso al panel de Flink para las aplicaciones de Apache Flink. Puede configurar algunas de estas herramientas para que realicen la supervisión por usted. Para obtener más información sobre cómo supervisar la aplicación, consulte las siguientes guías para desarrolladores: 
 

P: ¿Cómo administro y controlo el acceso a mis aplicaciones de Amazon Managed Service para Apache Flink?

Amazon Managed Service para Apache Flink necesita permisos para leer los registros de los orígenes de datos de streaming que especifique en su aplicación. Amazon Managed Service para Apache Flink también necesita permisos para escribir la salida de su aplicación en destinos específicos en la configuración de salida de su aplicación. Puede conceder estos permisos mediante la creación de funciones de AWS Identity and Access Management (IAM) que Amazon Managed Service para Apache Flink pueda asumir. Los permisos que conceda a esta función determinan lo que Amazon Managed Service para Apache Flink puede hacer cuando el servicio asume la función. Para más información, consulte las siguientes guías para desarrolladores:

P: ¿Cómo escala mi aplicación Amazon Managed Service para Apache Flink?

Amazon Managed Service para Apache Flink ajusta la escala de su aplicación de manera elástica para adaptarse al procesamiento de datos de su flujo de origen y al nivel de complejidad de su consulta en la mayoría de los casos. Amazon Managed Service para Apache Flink aprovisiona la capacidad en forma de KPU de Amazon. Una KPU le proporciona 1 vCPU y 4 GB de memoria. 

Para las aplicaciones de Apache Flink y los blocs de notas de Studio, Amazon Managed Service para Apache Flink asigna 50 GB de almacenamiento de aplicaciones en ejecución por KPU que utiliza la aplicación para los puntos de control y está disponible para su uso a través de disco temporal. Un punto de control es una copia de seguridad actualizada de una aplicación en ejecución que se utiliza para recuperarse inmediatamente de una interrupción de la aplicación. También puede controlar la ejecución en paralelo de las tareas de la aplicación de Amazon Managed Service para Apache Flink (como la lectura de una fuente o un operador de ejecución) mediante los parámetros Parallelism y ParallelismPerKPU en la API. El parámetro Parallelism define el número de instancias simultáneas de una tarea. Todos los operadores, los orígenes y los receptores se ejecutan con un paralelismo definido, de forma predeterminada. El parámetro parallelismperKPU define la cantidad del número de tareas paralelas que se pueden programar por cada KPU de su aplicación, de forma predeterminada. Para obtener más información, consulte Escalamiento en la Guía para desarrolladores de Amazon Managed Service para Apache Flink. 
 
P: ¿Cuáles son las prácticas recomendadas asociadas a la creación y administración de mis aplicaciones de Amazon Managed Service para Apache Flink?
Para obtener información sobre las prácticas recomendadas para Apache Flink, consulte la sección Prácticas recomendadas de la Guía para desarrolladores de Amazon Managed Service para Apache Flink. La sección cubre las prácticas recomendadas para la tolerancia a errores, rendimiento, registro, codificación y más. 
 
Para obtener información sobre las prácticas recomendadas para Amazon Managed Service para Apache Flink Studio, consulte la sección Best Practices (Mejores prácticas) de la Guía para desarrolladores de Amazon Managed Service para Apache Flink Studio. Además de referirse a las prácticas recomendadas, esta sección cubre los ejemplos para aplicaciones SQL, Python y Scala, los requisitos para implementar su código como una aplicación de procesamiento de flujos en ejecución continua, el rendimiento, el registro y mucho más.
 
P: ¿Puedo acceder a recursos detrás de una VPC de Amazon con una aplicación de Amazon Managed Service para Apache Flink?
Sí. Puede obtener acceso a los recursos que hay detrás de una VPC de Amazon. Puede aprender a configurar su aplicación para acceder a una VPC en la sección Cómo usar una VPC de Amazon de la Guía para desarrolladores de Amazon Managed Service para Apache Flink.
 
P: ¿Puede una única aplicación de Amazon Managed Service para Apache Flink tener acceso a múltiples VPC?
No. Si se especifican varias subredes, todas ellas deben estar en la misma VPC. Puede conectarse a otras VPC si interconecta las VPC.
 
P: ¿Puede una aplicación de Amazon Managed Service para Apache Flink conectada a una VPC acceder a Internet y a los puntos de conexión del servicio de AWS?
Las aplicaciones de Amazon Managed Service para Apache Flink y los blocs de notas de Amazon Managed Service para Apache Flink Studio que están configurados para acceder a los recursos de una VPC determinada no tienen acceso a Internet como configuración predeterminada. Puede aprender a configurar el acceso a Internet para su aplicación en la sección Internet y acceso al servicio de la Guía para desarrolladores de Amazon Managed Service para Apache Flink.

Precios y facturación

P: ¿Cuánto cuesta Amazon Managed Service para Apache Flink?
Con Amazon Managed Service para Apache Flink, solo paga por lo que utiliza. Amazon Managed Service para Apache Flink no conlleva el aprovisionamiento de recursos ni costos iniciales. 

Se le cobra una tarifa por hora en función de la cantidad de KPU de Amazon que utilice para ejecutar su aplicación de streaming. Una sola KPU es una unidad de capacidad de procesamiento de secuencias compuesta de 1 vCPU de capacidad informática y 4 GB de memoria. Amazon Managed Service para Apache Flink escala automáticamente el número de KPU requerido por su aplicación de procesamiento de flujos, tales como las demandas de memoria y cálculo varían en respuesta a la complejidad del procesamiento y la velocidad de datos de streaming procesados. 
 
Para las aplicaciones de Apache Flink y Apache Beam, pagará una KPU adicional única por aplicación para la organización de aplicaciones. En las aplicaciones de Apache Flink y Apache Beam también paga por el almacenamiento de aplicaciones en ejecución y copias de seguridad de aplicaciones duraderas. El almacenamiento de aplicaciones en ejecución se utiliza para capacidades de procesamiento con estado en Amazon Managed Service para Apache Flink.s y se paga por GB al mes. Las copias de seguridad de aplicaciones duraderas son opcionales, se pagan por GB al mes y proporcionan un punto de recuperación a un momento dado para las aplicaciones. 
 
En el caso de Amazon Managed Service para Apache Flink Studio, en modo de desarrollo o interactivo, se le cobra una KPU adicional para la orquestación de aplicaciones y una KPU para el desarrollo interactivo. También se le cobra por la ejecución del almacenamiento de la aplicación. No se le cobra por las copias de seguridad duraderas de las aplicaciones.
 
Para obtener más información sobre precios, consulte la página de precios de Amazon Managed Service para Apache Flink.
 
P: ¿Se me cobra por una aplicación de Amazon Managed Service para Apache Flink que se ejecuta pero no procesa ningún dato de la fuente?
Para las aplicaciones de Apache Flink y Apache Beam, si la aplicación de Amazon Managed Service para Apache Flink está en ejecución, se le cobrará un mínimo de dos KPU y 50 GB de almacenamiento de la aplicación en ejecución.
 
En el caso de los blocs de notas de Amazon Managed Service para Apache Flink Studio, se le cobrará un mínimo de 3 KPU y 50 GB de almacenamiento de aplicaciones en ejecución si la aplicación está en ejecución.
 
P: Además de los costos de Amazon Managed Service para Apache Flink, ¿podría incurrir en otros costos?
Amazon Managed Service para Apache Flink es una solución de procesamiento de flujos completamente administrada, independiente del origen de streaming del que lea datos y de los destinos en los que escriba los datos procesados. Se le cobrará por separado por los servicios que lea o escriba en su aplicación.
 
P: ¿Amazon Managed Service para Apache Flink está disponible en la capa gratuita de AWS?
No. Amazon Managed Service para Apache Flink no está disponible actualmente en la capa gratuita de AWS.
P: ¿Qué es Apache Flink?
Apache Flink es un motor y marco de código abierto para el procesamiento de datos por lotes y de secuencias de datos. Esto facilita la creación de aplicaciones de streaming, porque proporciona operadores potentes y resuelve los principales problemas de streaming, tales como el procesamiento duplicado. Apache Flink proporciona distribución de datos, comunicación y tolerancia a fallos para cálculos distribuidos a lo largo de flujos de datos.
 
P: ¿Cómo puedo desarrollar aplicaciones?
Puede comenzar por descargar las bibliotecas de código abierto, incluidos el SDK de AWS, Apache Flink y los conectores para los servicios de AWS. Obtenga instrucciones sobre cómo descargar las bibliotecas y crear su primera aplicación en la Guía para desarrolladores de Amazon Managed Service para Apache Flink.
 
P: ¿Qué aspecto tiene el código de mi aplicación?
Puede escribir su código de Apache Flink con secuencias de datos y operadores de secuencia. Las secuencias de datos de la aplicación son la estructura de datos con la que puede realizar el procesamiento en lugar de utilizar su código. Los datos fluyen de manera continua desde las fuentes hacia las secuencias de datos de aplicaciones. Se utilizan uno o dos operadores de secuencias para definir el procesamiento de secuencias de datos de la aplicación, incluidos la transformación, la partición, el agregado, la cadena y la ventana. Las secuencias de datos y los operadores se pueden conectar en cadenas en serie y en paralelo. A continuación se muestra un breve ejemplo del uso de un pseudocódigo.
DataStream <GameEvent> rawEvents = env.addSource(
 New KinesisStreamSource(“input_events”));
DataStream <UserPerLevel> gameStream =
 rawEvents.map(event - > new UserPerLevel(event.gameMetadata.gameId, 
   event.gameMetadata.levelId,event.userId));
gameStream.keyBy(event -> event.gameId)
            .keyBy(1)
            .window(TumblingProcessingTimeWindows.of(Time.minutes(1)))
            .apply(...) - > {...};
gameStream.addSink(new KinesisStreamSink("myGameStateStream"));
P: ¿Cómo utilizo los operadores de Apache Flink?
Los operadores toman un flujo de datos de la aplicación como entrada y envían los datos procesados a un flujo de datos de la aplicación como salida. Los operadores pueden conectarse para crear aplicaciones con varios pasos y no requieren conocimientos avanzados de sistemas distribuidos para implementar y operar.
 
P: ¿Qué operadores se admiten? 
Amazon Managed Service para Apache Flink es compatible con todos los operadores de Apache Flink que se pueden utilizar para resolver una amplia variedad de casos de uso, como mapas, KeyBy, agregaciones, ventanas, uniones y más. Por ejemplo, el operador de mapas permite realizar procesamiento arbitrario, al tomar un elemento de un flujo de datos de entrada y producir otro elemento. KeyBy organiza lógicamente los datos mediante una clave específica para que usted pueda procesar puntos de datos similares juntos. Aggregations realiza el procesamiento a través de múltiples claves, como SUM, MIN y MAX. Window Join une dos flujos de datos juntos en una clave e intervalo determinados. 

Puede crear operadores personalizados si estos no satisfacen sus necesidades. Puede encontrar más ejemplos en la sección Operators (Operadores) de la Guía para desarrolladores de Amazon Managed Service para Apache Flink. Puede encontrar un listado detallado de los operadores de Apache Flink en la documentación de Apache Flink
 
P: ¿Qué integraciones son compatibles con una aplicación de Amazon Managed Service para Apache Flink?
Puede configurar integraciones predeterminadas proporcionadas por Apache Flink con código mínimo o crear su propia integración para conectarse virtualmente a cualquier origen de datos. Las bibliotecas de código abierto basadas en Apache Flink admiten fuentes y destinos de streaming, o receptores, para procesar la entrega de datos. Esto también incluye compatibilidad con el enriquecimiento de datos a través de conectores de E/S asíncrona. A continuación se detallan algunos de estos conectores:
 
  • Orígenes de datos de streaming: Amazon Managed Streaming para Apache Kafka (Amazon MSK), Destinos de Amazon Kinesis Data Streams o receptores: Amazon Kinesis Data Streams
  • Amazon Kinesis Data Firehose, Amazon DynamoDB, Amazon Elasticsearch Service y Simple Storage Service (Amazon S3) (a través de integraciones de receptores de archivos)

P: ¿Las aplicaciones de Amazon Managed Service para Apache Flink pueden replicar datos en transmisiones y temas?

Sí. Puede usar aplicaciones de Amazon Managed Service para Apache Flink para replicar datos entre Amazon Kinesis Data Streams, Amazon MSK y otros sistemas. Un ejemplo presentado en la documentación demuestra cómo leer de un tema Amazon MSK y escribir en otro.
 
P: ¿Son compatibles las integraciones personalizadas?
Puede agregar un origen o un destino a su aplicación basándose en un conjunto de primitivas que le permiten leer y escribir desde archivos, directorios, sockets o cualquier cosa a la que pueda acceder a través de Internet. Apache Flink proporciona estas primitivas para orígenes de datos y receptores de datos. Las primitivas vienen con configuraciones como la capacidad de leer y escribir datos de forma continua o una vez, de manera asincrónica o sincrónica, y mucho más. Por ejemplo, puede configurar una aplicación para leer de forma continua desde Amazon S3 mediante la ampliación de la actual integración de origen basada en archivos.
 
P: ¿Qué modelo de entrega y procesamiento ofrecen las aplicaciones de Amazon Managed Service para Apache Flink?
Las aplicaciones de Apache Flink en Amazon Managed Service para Apache Flink usan un modelo de entrega del tipo exactamente una vez si una aplicación está construida con operadores idempotentes, incluidas las fuentes y los receptores. Esto significa que los datos procesados afectan a los resultados posteriores una vez y sólo una vez.
 
De forma predeterminada, las aplicaciones de Amazon Managed Service para Apache Flink utilizan la semántica del tipo exactamente una vez de Apache Flink. La aplicación admite la semántica de procesamiento del tipo exactamente una vez si diseña sus aplicaciones con fuentes, operadores y receptores que utilizan la semántica del tipo exactamente una vez de Apache Flink.
 
P: ¿Tengo acceso al almacenamiento local desde el almacenamiento de mi aplicación?
Sí. Las aplicaciones Amazon Managed Service para Apache Flink le proporcionan, a su aplicación, 50 GB de almacenamiento de aplicaciones en ejecución por KPU. Amazon Managed Service para Apache Flink escala el almacenamiento con su aplicación. El almacenamiento de aplicaciones en ejecución se utiliza para guardar el estado de la aplicación mediante puntos de control. También es accesible al código de la aplicación para utilizarlo como disco temporal para el almacenamiento de datos en caché y cualquier otro propósito. Amazon Managed Service para Apache Flink puede eliminar datos del almacenamiento de aplicaciones en ejecución que no se hayan guardado en puntos de control (como operadores, fuentes o receptores) en cualquier momento. Todos los datos almacenados en un almacenamiento de la aplicación en ejecución se cifran en reposo.
 
P: ¿Cómo realiza Amazon Managed Service para Apache Flink una copia de seguridad automática de mi aplicación?
Amazon Managed Service para Apache Flink realiza automáticamente una copia de seguridad del estado de la aplicación en ejecución mediante puntos de control e instantáneas. Los puntos de control guardan el estado actual de la aplicación y permiten que las aplicaciones de Amazon Managed Service para Apache Flink recuperen la posición de la aplicación para proporcionar la misma semántica como una ejecución sin errores. Los puntos de control utilizan almacenamiento de aplicaciones en ejecución. Los puntos de control para las aplicaciones de Apache Flink se proporcionan a través de la funcionalidad de puntos de control de Apache Flink. Las instantáneas guardan un punto de recuperación puntual para las aplicaciones y utilizan copias de seguridad duraderas de las aplicaciones. Las instantáneas son análogas a los puntos de guardado de Flink.
 
P: ¿Qué son las instantáneas de la aplicación?
Con las instantáneas, puede crear y restaurar la aplicación a un punto anterior en el tiempo. Así puede mantener el estado de la aplicación anterior y restaurar su aplicación en cualquier momento. Puede controlar cuántas instantáneas tiene en cualquier momento dado, de cero a miles de instantáneas. Las instantáneas utilizan copias de seguridad de aplicaciones duraderas y Amazon Managed Service para Apache Flink le cobra en función de su tamaño. Amazon Managed Service para Apache Flink cifra los datos guardados en las instantáneas de forma predeterminada. Puede eliminar instantáneas individuales a través de la API o todas las instantáneas mediante la eliminación de su aplicación.
 
P: ¿Cuáles son las versiones compatibles de Apache Flink?
Para obtener más información sobre las versiones compatibles de Apache Flink, consulte la página Notas de lanzamiento de Amazon Managed Service para Apache Flink. Esta página también incluye las versiones de Apache Beam, Java, Scala, Python y SDK de AWS compatibles con Amazon Managed Service para Apache Flink. 
 
P: ¿Las aplicaciones de Amazon Managed Service para Apache Flink pueden ejecutar Apache Beam?
Sí, Amazon Managed Service para Apache Flink admite aplicaciones de streaming creadas con Apache Beam. Puede crear aplicaciones de streaming de Apache Beam en Java y ejecutarlas en diferentes motores y servicios, entre estos, Apache Flink en Amazon Managed Service para Apache Flink. Encontrará información sobre las versiones compatibles de Apache Flink y Apache Beam en la Guía para desarrolladores de Amazon Managed Service para Apache Flink

P: ¿Cómo puedo desarrollar una aplicación de Studio?
Puede comenzar desde las consolas de Amazon Managed Service para Apache Flink Studio, Amazon Kinesis Data Streams o Amazon MSK en unos pocos pasos para lanzar un bloc de notas sin servidor para consultar inmediatamente flujos de datos y llevar a cabo análisis de datos interactivos.
 
Análisis de datos interactivos: puede escribir código en el bloc de notas en SQL, Python o Scala para interactuar con sus datos de streaming, y con tiempos de respuesta de consultas en segundos. Puede utilizar las visualizaciones integradas para explorar los dato, ver la información en tiempo real sobre sus datos de streaming desde su bloc de notas, y desarrollar aplicaciones de procesamiento de flujo con la tecnología de Apache Flink.

Una vez que su código esté listo para ejecutarse como una aplicación de producción, puede hacer la transición con un solo paso a una aplicación de procesamiento de flujo que procesa GB de datos por segundo, sin servidores.

Aplicación de procesamiento de flujo: una vez que esté listo para promover su código a producción, puede crearlo haciendo clic en “Deploy as stream processing application” (Implementar como aplicación de procesamiento de flujo) en la interfaz del bloc de notas o emitir un solo comando en la CLI. Studio se encarga de toda la gestión de la infraestructura necesaria para que pueda ejecutar su aplicación de procesamiento de flujo a escala, con el escalado automático y el estado duradero habilitados, al igual que en una aplicación de Amazon Managed Service para Apache Flink.

P: ¿Qué aspecto tiene el código de mi aplicación?
Puede escribir código en el bloc de notas en su lenguaje preferido de SQL, Python o Scala mediante la API de tablas de Apache Flink. La API de tablas es una abstracción de alto nivel y una API relacional que admite un superconjunto de capacidades de SQL. Ofrece operaciones conocidas, como seleccionar, filtrar, unir, agrupar por, agregar, etc., junto con conceptos específicos del flujo, como la creación de ventanas. Tiene que utilizar % para especificar el idioma que se utilizará en una sección del bloc de notas y puede cambiar fácilmente entre idiomas. Los intérpretes son complementos de Apache Zeppelin que le permiten especificar un idioma o un motor de procesamiento de datos para cada sección del bloc de notas. También puede crear funciones definidas por el usuario y referenciarlas para mejorar la funcionalidad del código.

P: ¿Qué operaciones SQL de archivos se admiten?
Puede realizar operaciones SQL como las siguientes:

  • Escanear y filtrar (SELECT, WHERE [SELECCIONAR, DÓNDE]) 
  • Agregaciones (GROUP BY, GROUP BY WINDOW, HAVING [AGRUPAR POR, AGRUPAR POR VENTANA, TENER]) 
  • Conjunto (UNION, UNIONALL, INTERSECT, IN, EXISTS [UNIÓN, UNIONALL, CRUZAR, ADENTRO, EXISTE]) 
  • Ordenar (ORDER BY, LIMIT [ORDENAR POR, LÍMITE]) 
  • Uniones (INNER, OUTER, Timed Window: BETWEEN, AND, Joining with Temporal Tables – tables that track changes over time [INTERNA, EXTERNA, Ventana de tiempo: ENTRE, Y, Unir con tablas temporales: tablas que rastrean los cambios a lo largo del tiempo)
  • Top-N
  • Deduplicación
  • Reconocimiento de patrones 

Algunas de estas consultas, como GROUP BY (AGRUPAR POR), OUTER JOIN (UNIÓN EXTERNA) y Top N, son de actualización de resultados para datos de streaming, lo que significa que los resultados se actualizan continuamente a medida que se procesan los datos de streaming. También se admiten otras instrucciones DDL, como CREATE (CREAR), ALTER (MODIFICAR) y DROP (ARRASTRAR). Para obtener una lista completa de consultas y ejemplos, consulte la documentación de consultas sobre Apache Flink.

P: ¿De qué manera se admiten Python y Scala?

La API de tablas de Apache Flink es compatible con Python y Scala a través de la integración del lenguaje mediante cadenas de Python y expresiones de Scala. Las operaciones admitidas son muy similares a las operaciones SQL admitidas; entre ellas, seleccionar, ordenar, agrupar, unir, filtrar y crear ventanas. En nuestra Guía para desarrolladores, puede encontrar una lista completa de las operaciones y ejemplos.

P: ¿Cuáles son las versiones compatibles de Apache Flink y Apache Zeppelin?

Para obtener más información sobre las versiones compatibles de Apache Flink, visite la página de Notas de lanzamiento de Amazon Managed Service para Apache Flink. Esta página también incluye las versiones de Apache Zeppelin, Apache Beam, Java, Scala, Python y SDK de AWS compatibles con Amazon Managed Service para Apache Flink.

P: ¿Qué integraciones se admiten de forma predeterminada en una aplicación de Amazon Managed Service para Apache Flink Studio?

  • Origen de datos: Amazon Managed Streaming para Apache Kafka (Amazon MSK), Amazon Kinesis Data Streams, Amazon S3 
  • Destinos o máscaras: Amazon MSK, Amazon Kinesis Data Streams y Amazon S3

P: ¿Son compatibles las integraciones personalizadas?
Puede configurar integraciones adicionales con unos pocos pasos y líneas más de código de Apache Flink (Python, Scala o Java) para definir las conexiones con todas las integraciones compatibles con Apache Flink. Esto incluye destinos como Amazon OpenSearch Service, Amazon ElastiCache para Redis, Amazon Aurora, Amazon Redshift, Amazon DynamoDB, Amazon Keyspaces y más. Puede asociar los ejecutables de estos conectores personalizados cuando cree o configure su aplicación de Amazon Managed Service para Apache Flink Studio.

Acuerdo de nivel de servicios

P: ¿Qué garantiza el SLA de Amazon Managed Service para Apache Flink?

Nuestro acuerdo de nivel de servicio (service level agreement, SLA) garantiza un porcentaje de tiempo de actividad mensual de al menos el 99,9% para Amazon Managed Service para Apache Flink.

P: ¿Cómo sé si reúno los requisitos para recibir un crédito de servicio del SLA?

Puede obtener un crédito de servicio de SLA para Amazon Managed Service para Apache Flink en virtud del SLA de Amazon Managed Service para Apache Flink si más de una zona de disponibilidad en la que ejecuta una tarea, dentro de la misma región de AWS, tiene un porcentaje de tiempo de actividad mensual inferior al 99,9 % durante cualquier ciclo de facturación mensual. Para obtener información completa sobre los términos y las condiciones del SLA, así como detalles sobre cómo enviar una reclamación, consulte la página de información del SLA de Amazon Managed Service para Apache Flink.

Comience a utilizar Amazon Kinesis Data Analytics

Visite la p&aacute;gina de precios de Kinesis Data Analytics
Calcule sus costos

Visite la página de precios de Amazon Kinesis Data Analytics.

Read the documentation
Consulte la guía de introducción

Aprenda a usar Amazon Kinesis Data Analytics con esta guía paso a paso para SQL o Apache Flink.

Comience a crear en la consola
Comience a crear aplicaciones de streaming

Cree su primera aplicación de streaming a partir de la consola de Amazon Kinesis Data Analytics.