- InfluxDB, la base de datos de series temporales de código abierto, cambió oficialmente de Go a Rust
- El cambio a Rust se debió a sus ventajas en rendimiento, confiabilidad y productividad
- La nueva versión de InfluxDB está construida usando Apache Arrow, Apache Parquet y Apache DataFusion como componentes base
- El cambio a Rust no fue solo un cambio de lenguaje, sino que incluyó una modificación de toda la arquitectura de la base de datos
- La nueva arquitectura permite cardinalidad ilimitada, consultas analíticas sobre series temporales con rendimiento de una base de datos columnar, y el uso de object store como capa de persistencia para datos históricos
- El cambio a Rust trajo mejoras importantes en ingestión de datos, tamaño en disco y rendimiento de consultas
- InfluxDB 3.0 usa Parquet como formato de persistencia y no mantiene índices, lo que mejora el tamaño en disco entre 4 y 6 veces
- La transición de Go a Rust no fue sencilla y requirió un largo proceso de desarrollo, pero como resultado logró menor latencia y menos errores/bugs
- La decisión de cambiar a Rust estuvo influida por el hecho de que planeaban usar mucho código C++, y por la capacidad de Rust de incorporar esas dependencias sin degradación de rendimiento
- El cambio a Rust forma parte de una tendencia más amplia en la que empresas tecnológicas están migrando sus stacks a Rust por sus ventajas en rendimiento y confiabilidad
1 comentarios
Opiniones de Hacker News