Flink OLAP ayuda a ByteHTAP a debutar en VLDB, la principal conferencia sobre bases de datos

Del 5 al 9 de septiembre de 2022, VLDB 2022 se llevará a cabo en Sydney, Australia. El resultado de la investigación de la infraestructura de ByteDance " ByteHTAP : el sistema HTAP de ByteDance con alta frescura de datos y fuerte consistencia de datos" fue aceptado por VLDB 2022 e invitado a dar un informe en el sitio.
El nombre completo de la conferencia VLDB es International Conference on Very Large Data Bases. Es una de las tres principales conferencias (SIGMOD, VLDB, ICDE ) con una larga historia en el campo de las bases de datos . También es un lugar de difusión en tiempo real para destacados logros de investigación y desarrollo en el campo de la base de datos, lo que refleja la investigación actual de la base de datos.La dirección de vanguardia de la industria, la última tecnología en la industria y el nivel de investigación y desarrollo de varios países. Desde su establecimiento en 1975, VLDB atrae a las principales instituciones de investigación mundiales para que envíen manuscritos todos los años y tiene requisitos extremadamente altos para la innovación del sistema, la integridad y el diseño experimental.

La contribución central del artículo

" ByteHTAP : el sistema HTAP de ByteDance con alta frescura de datos y fuerte consistencia de datos" presenta el sistema HTAP con alta frescura de datos y fuerte consistencia de datos creado por ByteDance para escenarios comerciales.
 
  • ByteHTAP adopta un motor independiente y una arquitectura de almacenamiento compartido, y su diseño de sistema modular aprovecha al máximo el sistema OLTP y el sistema OLAP existentes de ByteDance.
  • ByteHTAP puede proporcionar una alta actualización de datos con menos de 1 segundo de latencia, lo que brinda muchas oportunidades comerciales nuevas a los clientes, y los clientes también pueden configurar diferentes umbrales de actualización de datos de acuerdo con las necesidades comerciales.
  • ByteHTAP brinda una sólida consistencia de datos a través de la marca de tiempo global de sus sistemas OLTP y OLAP, lo que libera a los desarrolladores de tener que lidiar con problemas complejos de consistencia de datos en el sistema.
  • ByteHTAP usa Flink como el motor de computación OLAP, introduciendo algunas optimizaciones de rendimiento importantes en computación y almacenamiento, como la refactorización del proceso de programación de trabajos de Flink para mejorar el QPS de consulta, empujando el cómputo a la capa de almacenamiento y usando mapas de bits de eliminación para manejar de manera eficiente las eliminaciones Espere.
  • El artículo finaliza compartiendo las lecciones y las mejores prácticas de ByteDance para desarrollar y ejecutar ByteHTAP en producción, incluidas las capacidades de consulta de bases de datos OLAP cruzadas, la importación eficiente de datos y las mejoras de desarrollo de Flink.

Motor de cómputo central Flink OLAP

Como motor informático OLAP del sistema ByteHTAP, Flink se ha utilizado en múltiples negocios dentro de la empresa. El equipo técnico de ByteDance Flink ha realizado muchas optimizaciones profundas para que el motor Flink sea compatible con la informática OLAP, mejorando de manera efectiva el rendimiento informático de Flink OLAP. En la actualidad, en un clúster de 1600 núcleos, el QPS de 128 consultas simultáneas de programación simple alcanza más de 1000 con una pequeña cantidad de datos, y el QPS de la programación de consultas complejas alcanza más de 100; la latencia de 1000 consultas simultáneas de WordCount es de aproximadamente 100 ms. A continuación, nos centraremos en https://issues.apache.org/jira/browse/FLINK-25318 y contribuiremos gradualmente con optimizaciones internas a la comunidad.
  1. Optimizador de consultas. Admite la inserción de operadores como TopN y Aggregate; admite la construcción paralela de Plan Cache y DAG; admite Cached Catalog. El rendimiento de TPC-DS SF100 se mejora en más del 20 %.
  1. Optimización de la ejecución de consultas. Admite la multiplexación de ClassLoader y la caché Codegen entre trabajos, reduce el uso de CPU y la ocupación de Meta Space en la fase de ejecución; implementa el filtro de tiempo de ejecución para optimizar el rendimiento de la computación conjunta; lectura de datos asincrónicos y optimización de concurrencia, etc.
  1. Gestión de recursos y programación de trabajos. Simplifique la aplicación de recursos de consulta y el proceso de liberación, optimice la interacción entre los nodos JobMaster y ResourceManager/TaskManager, realice la asignación de recursos de trabajo de acuerdo con la granularidad de TaskManager y mejore el rendimiento de la aplicación de recursos; admita la implementación por lotes de tareas informáticas, optimice la estructura de implementación y la serialización/deserialización, y mejorar las tareas informáticas Desempeño de implementación.
  1. Gestión de resultados de consultas. La consulta se envía a través del protocolo Websocket y el resultado del cálculo se optimiza desde el modo Pull hasta el modo Push, lo que evita la espera prolongada del sondeo Pull; a través de la reutilización de la conexión Dispatcher, reduce la conexión innecesaria y la interacción creada por JobMaster y TaskManager cuando se inicializan las tareas de consulta y cálculo, reduce la latencia de consulta.
  1. Optimización de la gestión de la memoria. Optimice la aplicación de memoria y la administración de versiones de MemoryManager y NetworkBufferPool, reduzca la cantidad de interacciones y bloqueos de memoria cuando las tareas informáticas se inician y detienen; reduzca las métricas innecesarias, aumente el GC paralelo y otras optimizaciones para reducir el FGC/YGC de los nodos JobManager/TaskManager, y mejorar el rendimiento de la ejecución de consultas y la estabilidad del clúster de producción.
  1. Optimización de la gestión de la red. Realice la multiplexación de conexiones de red de tareas múltiples de TaskManager, optimice el proceso de interacción de Solicitud de partición de tareas informáticas ascendentes y descendentes, reduzca la pérdida de inicialización frecuente de la capa de red y la cantidad de mensajes de tareas informáticas ascendentes y descendentes, y mejore la inicialización realización de tareas informáticas.
  1. Gestión de aislamiento de recursos. Admite la gestión de grupos de recursos de acuerdo con la dimensión TaskManager y realiza el aislamiento físico de los trabajos de consulta entre múltiples inquilinos; realiza una programación detallada y la ejecución de tareas informáticas en TaskManager y admite la estrategia de prioridad de consultas pequeñas en condiciones de alta carga.

Mejores prácticas de ByteDance

Dentro de ByteDance, ByteHTAP actualmente admite el crecimiento de usuarios, el comercio electrónico, Xingfuli, Feishu y otras empresas, con un total de 11 clústeres con más de 6000 recursos Core AP y más de 50 consultas por día.
Flink OLAP, que es el motor informático central de ByteHTAP, actualmente está lanzando gradualmente el producto comercial de Volcano Engine: la versión Flink de la informática de transmisión . Como un motor de computación unificado de nivel empresarial que integra y optimiza las soluciones internas de big data nativas de la nube de ByteDance, la versión Flink de la computación de transmisión tiene características tales como implementación flexible lista para usar, integración de flujo por lotes y OLAP multi -computación modal.
 
Haga clic para descargar el documento
{{o.nombre}}
{{m.nombre}}

Supongo que te gusta

Origin my.oschina.net/u/5941630/blog/5577578
Recomendado
Clasificación