Lecciones de cinco años operando clústeres ClickHouse a escala petabyte

Fuentes: Lessons from 5 years operating petabyte-scale ClickHouse clusters

Un ingeniero de Tinybird comparte su experiencia de cinco años operando clústeres de ClickHouse a escala petabyte, destacando que la configuración inicial es sencilla, pero el mantenimiento a largo plazo presenta desafíos significativos. El artículo analiza la arquitectura tradicional basada en réplicas y shards, señalando que el enfoque de separación de cómputo y almacenamiento en la nube ofrece ventajas en costes y gestión, aunque ClickHouse open source aún no soporta esta funcionalidad de forma nativa y robusta. El autor detalla los problemas de la replicación local, que incrementa exponencialmente los costes de almacenamiento al duplicar los datos en cada nodo, y critica la dependencia de Zookeeper para la coordinación. Se explica el uso de almacenamiento en la nube (S3) mediante la replicación 'zero-copy', una función contribuida externamente que, pese a tener limitaciones y bugs conocidos, permite reducir costes y escalar de forma independiente. Para optimizar el rendimiento y la latencia, se emplea una arquitectura de almacenamiento caliente/frío que combina SSDs locales para caché con S3 para datos persistentes. El texto también aborda la gestión de tráfico mediante balanceadores de carga HTTP y la separación de réplicas para escrituras y lecturas, así como el aislamiento de cargas de trabajo en tiempo real para garantizar latencias estables. Finalmente, se mencionan las contribuciones de Tinybird al proyecto, incluyendo mejoras en joins distribuidos y nuevos motores de respaldo, subrayando la complejidad técnica de mantener un sistema de analítica en tiempo real a gran escala.