Arquitectura
Clustron Zaris es un motor de datos clave-valor distribuido, construido para cargas de trabajo de alto rendimiento y baja latencia en entornos de microservicios. Esta página es un recorrido de alto nivel por el motor — cómo se compone un nodo y cómo los nodos forman un clúster — para que puedas razonar sobre dónde se ejecutan tus operaciones y por qué el sistema se comporta como lo hace.
Esta página recorre el motor a un nivel conceptual. Para una cobertura rica en diagramas y actualizada del clúster — el manager y los nodos, el particionamiento y la replicación, los modelos de despliegue, la seguridad y TLS, el escalado, y la consola web — consulta la sección Arquitectura y operaciones.
Objetivos de diseño
Clustron Zaris es un fundamento de datos distribuido, no una simple caché. Su estructura se deriva de un pequeño conjunto de objetivos que dan forma a cada capa de abajo:
- Escalabilidad horizontal, para que añadas capacidad añadiendo nodos.
- Una separación clara entre las responsabilidades de control y las responsabilidades de datos.
- Componentes internos del motor extensibles que evolucionan sin una reescritura.
- Rendimiento predecible bajo carga.
- Aislamiento a nivel de instancia, para que las instancias no interfieran entre sí.
Arquitectura de Clustron Zaris
Cada nodo se ejecuta como un proceso independiente y participa en la coordinación del clúster. El resto de esta página trabaja de dentro hacia fuera: primero la división entre control y datos, luego los componentes dentro de un nodo, y después cómo los nodos forman un clúster.
Plano de control y plano de datos
Clustron Zaris separa el trabajo de servir datos del trabajo de gestionar el clúster. Mantener estos planos distintos es lo que le da al sistema tanto claridad operativa como espacio para escalar, porque cada plano puede razonarse y ajustarse por su cuenta.
Plano de datos
El plano de datos gestiona cada solicitud que toca tus datos. Es la ruta que tu aplicación ejercita en cada operación, y está ajustada para el rendimiento por encima de todo.
Es responsable de:
- Operaciones clave-valor (Get, Put, Delete)
- Consultas por prefijo
- Suscripciones de watch
- Aplicación del TTL
- Búsquedas en índices
- Ejecución de consultas
- Primitivas de lease y locking
- Operaciones de contadores
Para mantener esa ruta rápida, el plano de datos está optimizado para el rendimiento, la mínima presión sobre el recolector de basura, el networking asíncrono eficiente, y la serialización de bajo coste.
Plano de control
El plano de control gestiona el clúster en sí en lugar de los datos que contiene. Se ejecuta cuando se crean, configuran y desmantelan almacenes e instancias — no en cada solicitud.
Es responsable de:
- Creación de almacenes
- Gestión del ciclo de vida de las instancias
- Configuración del clúster
- Gestión de puertos
- Aislamiento de instancias
- Arranque y apagado de nodos
- Plantillas de configuración
Gracias a esta separación, cada instancia de Zaris se ejecuta de forma independiente, lleva su propia configuración, mantiene logging aislado, y puede desplegarse varias veces por host.
Dentro de un nodo
Un único nodo de Clustron Zaris está construido a partir de un conjunto de componentes de motor enfocados. Cada uno es dueño de una parte distinta del recorrido de una solicitud, que es lo que permite que el motor se mantenga rápido y evolucione pieza a pieza.
Pipeline de solicitudes
El pipeline de solicitudes es la puerta de entrada: recibe las solicitudes de los clientes y las enruta al componente de motor adecuado. Está diseñado para la eficiencia de E/S asíncrona, el mínimo cambio de contexto, la gestión de la contrapresión (backpressure), y la propagación estructurada de errores, de modo que el nodo se mantiene responsivo cuando la carga se dispara.
Segment store
El segment store es el motor de almacenamiento en memoria central — donde tus claves y valores viven realmente. Gestiona el particionamiento de claves, el acceso concurrente, la disposición de los datos, y el uso eficiente de la memoria. Su particionamiento basado en segmentos es la idea clave: el trabajo se divide entre segmentos de modo que muchas operaciones avanzan de forma concurrente sin un único lock global.
Index manager
El index manager acelera las consultas para que no recurran a escanear cada clave. Proporciona indexación por igualdad, indexación por rango, y rutas de búsqueda eficientes, y mantiene esos índices junto al almacenamiento primario para que las operaciones de consulta eviten los escaneos completos.
Motor de expiración
El motor de expiración aplica el TTL. Usa un modelo inspirado en TimeWheel, que programa las expiraciones en tiempo O(1) y mantiene predecible el coste de limpieza en lugar de escalar con el número de claves. Esto evita la sobrecarga de un temporizador por clave y los escaneos costosos, de modo que el rendimiento se mantiene bajo grandes cargas de trabajo de TTL.
Motor de watch
El motor de watch da soporte a las aplicaciones reactivas entregando los cambios a medida que ocurren. Admite suscripciones a prefijos de claves, entrega eventos ante las mutaciones, ofrece una instantánea seguida de eventos en vivo, y propaga los eventos en orden — el fundamento para construir sistemas que reaccionan en lugar de sondear.
Motor de lease y lock
El motor de lease y lock proporciona las primitivas de coordinación distribuida: leases, adquisición de locks, coordinación basada en expiración, y liberación segura. Estos son los bloques de construcción con los que se ensamblan los flujos de trabajo de nivel superior — acceso exclusivo, elección de líder, presencia.
Motor de contadores
El motor de contadores mantiene contadores distribuidos atómicos con soporte de incremento, decremento, lectura, y TTL. Está construido para escenarios de métricas, limitación (throttling), y coordinación donde muchos clientes actualizan el mismo número de forma segura.
El modelo de clúster
Los nodos de Clustron Zaris forman un único clúster lógico. El clúster está diseñado de modo que las operaciones se mantienen consistentes dentro de los límites de propiedad de un nodo mientras el sistema en su conjunto escala horizontalmente.
Sus características definitorias son:
- Coordinación peer-to-peer entre nodos
- Enrutamiento de solicitudes consciente de los nodos
- Detección de fallos
- Rebalanceo a medida que el clúster crece o se reduce, impulsado por el escalado elástico (
Add-ZrServer/Remove-ZrServer) - Comportamiento de reconexión configurable basado en prioridades
Los clientes son participantes activos en este modelo. Cada cliente mantiene una lista de servidores con prioridad, una estrategia de retardo de reconexión, y gestión de failover, de modo que puede seguir funcionando a medida que cambia la disponibilidad de los nodos.
Despliegue multi-instancia
Clustron Zaris admite ejecutar varias instancias en una sola máquina. Cada instancia se ejecuta en su propio puerto, mantiene configuración y logs aislados, y puede arrancarse o detenerse por su cuenta. Esto hace práctico particionar recursos, aislar entornos, y ejecutar despliegues multiinquilino controlados en hardware compartido.
Networking
La capa de networking está construida para operaciones asíncronas de alto rendimiento, uso eficiente de sockets, ciclos de vida de conexión controlados, y failover elegante. Evita deliberadamente las capas de abstracción innecesarias, porque cada capa extra en la ruta de solicitudes añade una sobrecarga que el motor intenta eliminar.
Filosofía de escalabilidad
Clustron Zaris escala hacia fuera en lugar de hacia arriba. Esa elección impulsa el resto del diseño: diseño de cliente sin estado, comportamiento de memoria predecible, sobrecarga de coordinación controlada, y extensibilidad modular. El motor está estructurado de modo que se puede añadir nueva capacidad sin rehacer el núcleo — las direcciones planificadas incluyen capacidades avanzadas de consulta, búsqueda vectorial y por similitud, programación distribuida de trabajos, y primitivas distribuidas adicionales.
Observabilidad
Zaris viene con observabilidad integrada. Las métricas en vivo por almacén y por nodo se transmiten a través de Watch-ZrStoreMetrics, el clúster reporta su propia salud, y el trazado distribuido está disponible por almacén (New-ZrStore -Tracing) o bajo demanda desde un cliente (Enable-ZrTrace). Consulta Monitorización para la imagen operativa completa.
Principios de diseño
La arquitectura sigue un conjunto consistente de principios: el rendimiento primero, la predictibilidad por encima de la abstracción, la extensibilidad sin reescribir el motor central, la separación clara de responsabilidades, la claridad operativa, y la ingeniería práctica de sistemas distribuidos.
Estado actual
Clustron Zaris está en desarrollo activo. La estabilización del motor central y la documentación están en curso. Una publicación pública de código abierto del motor central está planificada para 2026 bajo una Business Source License.