En memoria
memory://<ns> abre un namespace respaldado por
object_store::memory::InMemory. Nada toca el disco ni ningún bucket.
El grafo vive en el heap del proceso que abrió el cliente y
desaparece cuando el proceso sale.
Cuándo usarlo
- La prueba de 30 segundos. Probar una consulta sin configurar credenciales ni un bucket. Consulta Tu primera consulta.
- Notebooks y exploración. Arrancas, consultas, descartas.
- Fixtures de CI. Grafos determinísticos que se construyen frescos en cada corrida de tests.
No lo uses para nada que necesite sobrevivir a un reinicio del proceso.
Forma de la URI
memory://<namespace><namespace> es el identificador único dentro del store en memoria.
Dos clientes en el mismo proceso apuntando al mismo memory://demo
ven el mismo grafo; dos clientes en procesos distintos no.
Ejemplos
import namidb
client = namidb.Client("memory://demo")client.cypher("CREATE (a:Person {name: 'Alice'})")print(client.cypher("MATCH (p:Person) RETURN p.name").rows())# CLI: el mismo efecto cuando se omite --store.namidb run "CREATE (a:Person {name: 'Alice'})"namidb run --store "memory://demo" "MATCH (p:Person) RETURN p.name"use std::sync::Arc;use namidb::core::id::NamespaceId;use namidb::storage::{NamespacePaths, WriterSession};use object_store::{memory::InMemory, ObjectStore};
let store: Arc<dyn ObjectStore> = Arc::new(InMemory::new());let paths = NamespacePaths::new("tenants", NamespaceId::new("demo")?);let mut writer = WriterSession::open(store, paths).await?;Lifetime
Los namespaces memory://:
- Viven en el heap del proceso que abrió el primer cliente.
- No se comparten entre procesos.
- Se descartan cuando el último cliente que los referencia se descarta (en la práctica: cuando tu proceso sale).
- No pagan ningún costo de I/O — útil cuando quieres medir trabajo puro del motor sin el bucket en el camino crítico.
Siguientes pasos
- Sistema de archivos local — cuando necesitas persistencia.
- MinIO — cuando quieres un bucket local compatible con S3.
- Tu primera consulta — la prueba de 30
segundos construida sobre
memory://.