Ververica Runtime (VVR) 4.0.13, basado en Apache Flink V1.13, se publicó el 16 de mayo de 2022. Esta versión amplía las capacidades de los conectores (catálogos de Kafka, sincronización completa e incremental de Hologres, MaxCompute Streaming Tunnel), mejora la sincronización de varias tablas desde bases de datos fragmentadas y optimiza la experiencia del desarrollador en la consola.
Nuevas funciones
Resumen
|
Función |
Categoría |
|
Compatibilidad con catálogos de Kafka |
Nuevo conector |
|
Sincronización de varias tablas desde bases de datos fragmentadas mediante CREATE DATABASE AS |
Mejora de SQL |
|
Conector de Hologres: consumo de datos completo e incremental |
Mejora de conector |
|
Tabla de resultados de ApsaraDB for Redis: TTL para claves |
Mejora de conector |
|
MaxCompute Streaming Tunnel y compresión de datos |
Mejora de conector |
|
Conector DataStream de Hologres |
Nuevo conector |
|
Conector de Elasticsearch: parámetro |
Mejora de conector |
|
Compatibilidad con Flink CDC 2.2 para los conectores MySQL CDC y Postgres CDC |
Mejora de conector |
|
Eventos de latido para el seguimiento de la posición del registro binario |
Mejora de conector |
|
Tipos de datos UNSIGNED FLOAT, DOUBLE y DECIMAL para el conector MySQL CDC |
Mejora de conector |
|
Parámetros JDBC para el conector MySQL CDC |
Mejora de conector |
|
Terminación forzada de clústeres de sesión |
Consola |
|
Análisis inteligente de excepciones de JobManager |
Consola |
|
Documentación integrada de Alibaba Cloud |
Consola |
|
Avisos de servicio |
Consola |
|
Optimización de la interfaz de usuario |
Consola |
Compatibilidad con catálogos de Kafka
Los catálogos de Kafka analizan automáticamente los mensajes de Kafka para inferir el esquema de la tabla, lo que permite acceder a los topics de un clúster de Kafka directamente en Flink SQL sin escribir instrucciones DDL. Se admiten mensajes con formato JSON para la inferencia del esquema.
Beneficio: Elimina la necesidad de definir manualmente tablas de origen o de resultados para los topics de Kafka, lo que reduce el código repetitivo y el riesgo de discrepancias en el esquema.
Referencia: Manage Kafka JSON catalogs
Sincronización de varias tablas desde bases de datos fragmentadas mediante CREATE DATABASE AS
La instrucción CREATE DATABASE AS ahora admite expresiones regulares para nombres de bases de datos, lo que permite coincidir con tablas de origen en varios shards de base de datos. Tras fusionar los datos de los shards, Realtime Compute for Apache Flink los sincroniza con una tabla de destino descendente cuyo nombre corresponde a cada tabla de origen, lo que elimina la configuración manual tabla por tabla.
Beneficio: Reduce significativamente el esfuerzo de configuración al sincronizar datos desde grandes bases de datos fragmentadas hacia un único destino, como Hologres.
Referencia: CREATE DATABASE AS statement
Conector de Hologres: consumo de datos completo e incremental
El conector de Hologres ahora admite un modo de sincronización combinada (completa y luego incremental) en un solo trabajo. El trabajo primero realiza una instantánea completa de los datos desde una tabla de origen de Hologres y luego cambia suavemente al consumo incremental del registro binario.
Beneficio: Simplifica la creación de canalizaciones de almacenamiento de datos en tiempo real. Anteriormente, la sincronización completa e incremental requería trabajos separados o una transición manual.
Referencia: Create a Hologres source table
Tabla de resultados de ApsaraDB for Redis: TTL para claves
Al escribir en una tabla de resultados de ApsaraDB for Redis, configure un tiempo de vida (TTL) para las claves directamente en los parámetros del conector. Esto garantiza que los datos caduquen automáticamente según su directiva de retención.
Referencia: Create an ApsaraDB for Redis result table
MaxCompute Streaming Tunnel y compresión de datos
Hay dos mejoras disponibles para los conectores de MaxCompute:
Streaming Tunnel: Escriba datos en MaxCompute en modo streaming. Para los trabajos que no requieren semántica exactly-once, Streaming Tunnel evita los problemas de rendimiento que ocurren cuando los puntos de control se crean a baja velocidad.
Compresión de datos: Tanto Streaming Tunnel como Batch Tunnel ahora admiten la compresión de datos para mejorar la eficiencia de la transmisión.
Referencias:
Conector DataStream de Hologres
Ahora se admite el conector DataStream de Hologres.
Conector de Elasticsearch: parámetro retry_on_conflict
Configure el parámetro retry_on_conflict para especificar el número máximo de reintentos cuando ocurren conflictos de versión durante las actualizaciones de datos en una tabla de resultados de Elasticsearch.
Referencia: Create an Elasticsearch result table
Compatibilidad con Flink CDC 2.2 para los conectores MySQL CDC y Postgres CDC
El conector MySQL Change Data Capture (CDC) y el conector Postgres CDC ahora son totalmente compatibles con Flink CDC 2.2. Se incluyen todas las correcciones de bugs de la versión Flink CDC 2.2.
Eventos de latido para el seguimiento de la posición del registro binario
El conector MySQL CDC ahora utiliza eventos de latido para rastrear la última posición del archivo de registro binario leída desde el origen. En tablas con actualizaciones poco frecuentes, el conector avanza la posición del registro binario basándose en eventos de latido en lugar de esperar eventos de actualización; esto evita que la posición del registro binario caduque cuando las tablas tienen un bajo volumen de escritura.
Referencia: Create a MySQL CDC source table
Tipos de datos UNSIGNED FLOAT, DOUBLE y DECIMAL para el conector MySQL CDC
El conector MySQL CDC y los catálogos de MySQL ahora admiten los tipos de datos UNSIGNED FLOAT, DOUBLE y DECIMAL.
Referencia: Create a MySQL CDC source table
Parámetros JDBC para el conector MySQL CDC
Ahora se pueden configurar parámetros de Java Database Connectivity (JDBC) directamente en el conector MySQL CDC para controlar cómo se conecta a las instancias de MySQL.
Referencia: Create a MySQL CDC source table
Terminación forzada de clústeres de sesión
Ahora es posible terminar forzosamente los clústeres de sesión desde la consola. Dado que los clústeres de sesión comparten recursos entre varios trabajos, un clúster de sesión con errores puede afectar a todos los trabajos que se ejecutan en él.
No ejecute trabajos de producción en clústeres de sesión. Si un trabajo falla debido a una excepción del clúster de sesión, termine forzosamente el clúster de sesión para recuperarlo.
Referencia: Configure a development and test environment (session cluster)
Análisis inteligente de excepciones de JobManager
Cuando un trabajo falla, JobManager registra las excepciones de TaskManager en los registros, los cuales se pueden consultar en la pestaña Logs de la consola de desarrollo de Realtime Compute for Apache Flink. El tiempo de almacenamiento de los registros de excepciones se ha ampliado y ahora los registros se clasifican por tipo, lo que facilita identificar más rápido la causa raíz real cuando un trabajo falla consecutivamente.
Referencia: View the exception logs of a deployment
Documentación integrada de Alibaba Cloud
La documentación del Centro de documentación de Alibaba Cloud ahora es accesible directamente dentro de la consola de Flink totalmente gestionado, lo que elimina la necesidad de cambiar de ventana del navegador durante el desarrollo y la operación y mantenimiento de trabajos.
Avisos de servicio
Los avisos de servicio, incluidas las actualizaciones de productos y los anuncios de mantenimiento, ahora se muestran en la consola de Realtime Compute for Apache Flink. Esto evita el problema de que los avisos no lleguen a los usuarios a través de SMS, mensajes internos o grupos de DingTalk.
Optimización de la interfaz de usuario
El nuevo estilo de tema de Alibaba Cloud se aplica en toda la consola.
Las descripciones del estado de los trabajos se actualizaron para mayor claridad.
Referencias:
Optimización de rendimiento
No hay optimizaciones de rendimiento en esta versión.
Problemas corregidos
Conector de Log Service: la lista de shards no se actualizaba tras cambios en el recuento de shards
Anteriormente, si cambiaba el número de shards, el conector de Log Service no obtenía la lista de shards actualizada, lo que provocaba que se detuviera la lectura de datos. Este problema ya está corregido.
Error de optimización de agregación: [J cannot be cast to [Ljava.lang.Object;
Anteriormente, las funciones de optimización de agregación como miniBatch provocaban un error [J cannot be cast to [Ljava.lang.Object; en ciertos casos. Este problema ya está corregido.
Tabla de resultados de ApsaraDB for HBase: datos desordenados durante escrituras asíncronas
Anteriormente, los datos escritos en una tabla de resultados de ApsaraDB for HBase se desordenaban cuando se habilitaba el procesamiento asíncrono. Este problema ya está corregido.
Puntero nulo en operaciones de unión de dos flujos
Anteriormente, las operaciones de unión entre dos flujos de datos podían provocar una excepción de puntero nulo. Este problema ya está corregido.
Fallo en la creación de puntos de control al usar el conector MySQL CDC con Apache Hudi
Anteriormente, la creación de puntos de control fallaba sistemáticamente cuando un trabajo usaba el conector MySQL CDC para escribir datos en Apache Hudi. Este problema ya está corregido.
Métrica pendingRecords para tablas de origen de Message Queue for Apache Kafka
Se optimizó la lógica de cálculo utilizada para reportar la métrica pendingRecords en las tablas de origen de Message Queue for Apache Kafka.
Nombres de miembros no mostrados en la consola de desarrollo
Anteriormente, ciertos nombres de miembros no se mostraban en la consola de desarrollo de Realtime Compute for Apache Flink. Este problema ya está corregido.
Error de validación de sintaxis DDL para instrucciones válidas
Anteriormente, ciertas instrucciones DDL válidas provocaban un error durante la validación de sintaxis. Este problema ya está corregido.