Este tema describe las principales actualizaciones y correcciones de bugs de la versión de Realtime Compute for Apache Flink publicada el 22 de julio de 2024.
Esta actualización se implementa de forma incremental mediante una estrategia de canary release. Las nuevas funciones de esta versión están disponibles solo después de que se complete la actualización en su cuenta. Consulte el calendario de actualización más reciente en el lado derecho de Realtime Compute for Apache Flink console. Para solicitar una actualización anticipada, envíe un ticket.
Descripción general
Esta versión incluye 13 nuevas funciones y 7 correcciones de bugs en las capas de plataforma y motor.
Aspectos destacados de la plataforma: Roles personalizados con permisos detallados, mejoras en la interfaz de usuario para los detalles del trabajo y la configuración de recursos, y creación de catálogos de MaxCompute desde la consola.
Aspectos destacados del motor: Ververica Runtime (VVR) 8.0.8, basado en Apache Flink 1.17.2, con mejoras en conectores para Elasticsearch, Hologres, StarRocks, Simple Log Service (SLS), MySQL y MaxCompute; nuevas funciones integradas de SQL; y mejoras de rendimiento y seguridad.
Una vez que se complete la actualización en su cuenta, actualice el motor VVR a la versión 8.0.8. Para consultar las instrucciones, consulte Upgrade the engine version of a deployment.
Nuevas funciones
|
Función |
Descripción |
Referencias |
|
Roles personalizados |
Cree roles personalizados y asigne permisos detallados según sus requisitos empresariales. Esto le brinda un control preciso sobre quién puede realizar operaciones específicas relacionadas con los trabajos, lo que reduce el riesgo de cuentas con permisos excesivos. |
Autorizar una cuenta para realizar operaciones en un namespace |
|
Optimización de la interfaz: detalles del trabajo |
Consulte la configuración de parámetros utilizada para iniciar un trabajo directamente desde la página de detalles del despliegue: haga clic en la pestaña Status y luego en Job Details dentro de la sección Actions. Esto elimina la necesidad de buscar en el historial de configuraciones al depurar un trabajo en ejecución. |
N/A |
|
Optimización de la interfaz: configuración de recursos |
Los valores máximos permitidos para los parámetros de recursos ahora se muestran en la sección Resources de la pestaña Configuration. Esto evita errores de configuración causados por exceder los límites de los parámetros. |
N/A |
|
Creación de catálogos de MaxCompute en la consola |
Los catálogos de MaxCompute pueden crearse mediante la interfaz gráfica, lo que facilita la configuración y gestión de los trabajos de Flink, además de mejorar la eficiencia en la administración de datos y el desarrollo. |
N/A |
|
Conector de StarRocks: compatibilidad con JSON |
El conector de StarRocks ahora admite el tipo de dato JSON. Esto resuelve la excepción que ocurría al escribir datos JSON desde MySQL hacia StarRocks. |
|
|
Mejoras en el conector de Elasticsearch |
|
|
|
Conector de Simple Log Service (SLS): modos de inicio |
Consuma datos de SLS comenzando from el offset más reciente o el más antiguo. Esto le permite controlar si un nuevo trabajo procesa únicamente datos nuevos o si también reprocesa datos históricos. |
|
|
Actualización de imagen docker de PyFlink |
La imagen base de docker para PyFlink se actualizó para mejorar la compatibilidad con distintas versiones de Python y glibc. Esto reduce los problemas al ejecutar trabajos de PyFlink en entornos contenedorizados. |
N/A |
|
Funciones URL_DECODE y URL_ENCODE |
Se agregaron dos funciones SQL integradas para codificar y decodificar URLs. Estas eliminan la necesidad de crear UDFs personalizadas al procesar cadenas codificadas como URL en sus trabajos SQL. |
|
|
Conector de MySQL: compatibilidad con endpoints de ApsaraDB RDS for MySQL |
Configure endpoints de ApsaraDB RDS for MySQL en el conector de MySQL. MySQL Change Data Capture (CDC) ahora puede leer registros binarios almacenados en el bucket de Object Storage Service (OSS) asociado. |
|
|
Conector de Hologres: políticas de eliminación por columna |
Configure políticas de eliminación de forma independiente para cada columna en una tabla sink de Hologres. Por ejemplo, elimine filas completas o establezca valores nulos en columnas que no sean clave primaria sin afectar otras columnas en escenarios de actualización parcial. |
|
|
Particionador personalizado para uniones de tablas de dimensiones |
Configure la estrategia de shuffle para las operaciones de unión de tablas de dimensiones. Esto le permite optimizar la distribución de datos entre tareas paralelas y mejorar el rendimiento general de las uniones. |
|
|
Conector de MaxCompute: formato Arrow y asignación dinámica de shards |
Lea datos de origen de MaxCompute en formato Arrow con asignación dinámica de shards. Esto mejora significativamente el rendimiento de lectura y reduce la carga de escritura de datos en los clústeres de Flink. |
Mejoras de rendimiento
Uniones de tablas de dimensiones de Apache Paimon: Se mejoró el rendimiento de las uniones para tablas de dimensiones de Apache Paimon.
Escrituras de MySQL CDC en Hologres: Se incrementó la velocidad de escritura de datos completos e incrementales en Hologres mediante MySQL CDC.
Lecturas de tablas de origen de MaxCompute: Se mejoró la velocidad de lectura desde tablas de origen de MaxCompute y se redujo la carga de escritura de datos en los clústeres de Flink.
Mejoras de seguridad
Las contraseñas en la topología del trabajo ahora se cifran, lo que evita que las credenciales sensibles queden expuestas en los gráficos de trabajos.
Problemas corregidos
Se producían conflictos de datos cuando varios flujos escribían en la misma tabla de Apache Paimon durante actualizaciones parciales.
Cuando MySQL CDC encontraba errores de falta de memoria (OOM) al analizar una gran cantidad de registros binarios, el sistema reintentaba la operación silenciosamente sin mostrar el error. A partir de esta versión, el sistema lanza una excepción y desencadena un failover del trabajo.
Cuando GeminiStateBackend encontraba errores OOM, el sistema reintentaba la operación silenciosamente sin mostrar el error. A partir de esta versión, el sistema lanza una excepción y desencadena un failover del trabajo.
El estado de consumo del conector de ApsaraMQ for RocketMQ no se mostraba en la consola de ApsaraMQ for RocketMQ.
Si el esquema de una tabla de origen de Hologres cambiaba (por ejemplo, debido a una operación TRUNCATE) en un trabajo iniciado desde datos de estado, fallaba la restauración de la instantánea.
Podía presentarse el error
java.lang.NoClassDefFoundError: StringUtilsal utilizar el conector de StarRocks.Todos los problemas corregidos en Apache Flink 1.17.2. Para consultar la lista completa, consulte el Anuncio de la versión Apache Flink 1.17.2.