Rayforce: un motor open source en C puro que une analítica columnar, grafos y Datalog

Fuentes: Rayforce: an open-source C engine unifying columnar analytics, graphs and Datalog

Rayforce es un motor de datos open source escrito íntegramente en C y sin dependencias externas que integra en una misma pipeline de ejecución la analítica columnar, el procesamiento de grafos y las consultas recursivas tipo Datalog. Está pensado para equipos que trabajan con grandes volúmenes de datos y necesitan latencias muy bajas, desde sistemas de trading hasta análisis de inversión y grafos de contraparte.

En lugar de mover los datos entre motores especializados, Rayforce aplica optimizaciones globales sobre el plan completo y mantiene el camino crítico cerca del hardware. Ofrece filtros, joins, agregaciones, ventanas y tablas pivote vectorizadas; un motor de grafos nativo con CSR, caminos más cortos, centralidad, comunidades y uniones WCO; y un intérprete de Datalog recursivo cuyas reglas se compilan dentro del mismo DAG de ejecución. Incluye además almacenamiento abierto: CSV, tablas splayed y particionadas, memory maps e IPC.

Los usuarios lo pueden invocar de tres formas: mediante el lenguaje declarativo Rayfall (similar a q), a través de una API en C embebible, o conectándose a interfaces cliente que comparten el mismo optimizador. El proyecto lo usan ya en producción Lynx Trading Technologies (infraestructura para mercados de acciones en EE. UU.), Fortitudo Technologies (analítica cuantitativa de carteras) y PeachQ, una implementación abierta en MIT del lenguaje q construida sobre Rayforce. El equipo está preparando además una versión gestionada en la nube (Rayforce Cloud, aún sin fecha), pensada para cubrir el ciclo que va del prototipo local a la carga de producción. Un único repositorio, una cabecera pública y sin runtime externo: el código se clona, se compila y se incrusta en el producto.