LatticeDB: un solo archivo para grafos, vectores y texto, 0.83 ms en búsqueda vectorial con 1M de vectores
Show HN: LatticeDB – Like SQLite but for graph databases
LatticeDB es una base de datos de grafos embebida y de un solo archivo que unifica recorrido de grafos, búsqueda vectorial HNSW y búsqueda de texto completo BM25 en una sola capa de consulta. Diseñada para cargas de trabajo intensivas en relaciones en una sola máquina, ofrece durabilidad mediante WAL y un modelo de escritor único. Sus benchmarks muestran latencias de 0.13 μs en lookups de nodos, 0.83 ms en búsqueda vectorial a 1M de vectores con 100% de recall, y una ventaja de hasta 2,819x sobre SQLite en recorridos profundos. Ideal para Graph RAG, memoria de agentes y herramientas de conocimiento local.
LatticeDB alcanza 0.83 ms de media con 100% de recall@10 a 1M de vectores, más rápido que FAISS HNSW monohilo y competitivo con sistemas basados en servidor como Weaviate y Qdrant.
- k9294
Soy un gran fan de la naturaleza embebida de SQLite, que permite encadenar múltiples llamadas SQL con latencia casi nula.
Actualmente estoy construyendo un servidor de grafo de conocimiento personal, una mezcla de las entidades personalizadas de Notion mediante esquemas JSON y las referencias de Markdown+backlinks de Obsidian. Funciona bien, pero sospecho que tu producto podría ser un mejor ajuste.
Tengo una pregunta sobre permisos: ¿cómo recomendarías modelar un sistema de acceso jerárquico en una base de datos de grafos? Específicamente, si a un usuario se le concede acceso a un documento, debería tener automáticamente acceso a todos sus documentos hijos dentro de ese espacio de trabajo. ¿Hay una forma estándar de modelar esta lógica de permisos de 'subárbol', o quizás un enfoque más eficiente que sugieras?
Estoy realmente impresionado con el producto, ¡buena suerte con él!
- cjlm
Bien, lo añadiré a gdb-engines.com
- itissid
¿Tiene algo como litestream para respaldarlo para casos de uso de producción específicos (es decir, un solo servidor web es suficiente y se tolera un tiempo de inactividad de unos minutos)?
- petervandijck
Felicidades, esto es realmente genial y me encantan los ejemplos
- vladigtr
Buen trabajo. ¿Cómo manejan los escritores concurrentes en un solo archivo? Ahí es donde las bases de datos embebidas suelen complicarse, y el modelo de grafo hace que el bloqueo sea aún más interesante.