YouTrackDB: la base de datos de grafos orientada a objetos de JetBrains

Fuentes: YouTrackDB: a general-use object-oriented graph database by JetBrains

YouTrackDB es una base de datos de grafos orientada a objetos de uso general, desarrollada y mantenida por JetBrains, donde ya se utiliza en producción. Su formato de almacenamiento es nativo para relaciones de grafo, lo que permite recorrer enlaces con complejidad O(1) y evita las costosas operaciones JOIN en tiempo de ejecución.

Entre sus características principales destaca una API orientada a objetos que implementa herencia y polimorfismo a nivel de base de datos, así como aislamiento de instantáneas por defecto: cada transacción opera sobre una vista estable del estado de la base de datos, lo que elimina lecturas sucias, lecturas no repetibles y lecturas fantasma. YouTrackDB es compatible con la API TinkerPop y con el lenguaje de consulta Gremlin, y además incorpora YQL (YouTrackDB Query Language), un lenguaje basado en SQL con extensiones para grafos que utiliza notación de puntos para recorrer enlaces, soporte para la cláusula MATCH de coincidencia de patrones y optimización automática mediante índices.

La base de datos admite modos de trabajo sin esquema, con esquema mixto y con esquema completo, e incluye un sistema de seguridad basado en usuarios, roles y políticas sobre predicados, con cifrado opcional de los datos en reposo. Funciona sobre cualquier plataforma sin necesidad de instalación, requiere JDK 21 o superior y se distribuye como artefacto Maven (io.youtrackdb:youtrackdb-embedded:0.5.0-SNAPSHOT), como imagen Docker para servidor y como consola REPL para experimentación. Su hoja de ruta incluye la integración de GQL junto a Gremlin.