CLI
El binario namidb envuelve el motor para trabajo ad-hoc (parse,
explain, run) contra cualquier backend de almacenamiento soportado. Sin
daemon, sin servidor. Cada invocación abre un WriterSession (o un
Snapshot), hace su trabajo y sale.
Consulta Instalación para el comando de instalación.
Subcomandos
namidb parse
Tokeniza, parsea e imprime el round-trip canónico de una consulta Cypher. Útil para detectar errores de sintaxis y verificar que el parser acepta una consulta sin tocar el almacenamiento.
namidb parse "MATCH (a:Person)-[:KNOWS]->(b:Person) RETURN b.name LIMIT 5"namidb explain --verbose
Muestra el plan lógico optimizado con anotaciones de costo y selectividad. Toca el parser, el lowerer y el optimizador, pero no el almacenamiento, así que es seguro ejecutarlo contra un namespace de producción sin I/O.
namidb explain --verbose \ "MATCH (a:Person)-[:KNOWS]->(b) RETURN b ORDER BY b.id LIMIT 20"namidb run
Ejecuta una consulta.
Sin --store, corre contra un namespace en memoria efímero — el
equivalente exacto de memory://default. Cualquier cosa que crees se
pierde cuando el proceso sale.
namidb run "CREATE (a:Person {name: 'Alice'}), (b:Person {name: 'Bob'}), (a)-[:KNOWS]->(b)"namidb run "MATCH (a:Person)-[:KNOWS]->(b) RETURN a.name, b.name"Con --store <uri> abre un namespace persistente sobre cualquier
backend soportado (file://, s3://, gs://, az://, memory://).
Dos ejecuciones contra la misma URI ven los mismos datos.
namidb run --store "file:///var/lib/namidb?ns=prod" \ "CREATE (a:Person {name: 'Alice'}), (b:Person {name: 'Bob'}), (a)-[:KNOWS]->(b)"
namidb run --store "file:///var/lib/namidb?ns=prod" \ "MATCH (a:Person)-[:KNOWS]->(b) RETURN a.name, b.name"Cualquier bucket en la nube funciona igual:
namidb run --store "s3://my-bucket/data?ns=prod®ion=us-east-1" \ "MATCH (p:Person) RETURN count(*) AS n"
namidb run --store "gs://my-bucket?ns=prod" \ "MATCH (p:Person) RETURN count(*) AS n"
namidb run --store "az://acct/container?ns=prod" \ "MATCH (p:Person) RETURN count(*) AS n"Las credenciales vienen de las variables de entorno estándar de cada
nube (AWS_ACCESS_KEY_ID, GOOGLE_APPLICATION_CREDENTIALS,
AZURE_STORAGE_ACCOUNT_NAME, etc.).
Gramática de URI
--store acepta el mismo esquema de URI que el cliente Python y el
servidor HTTP. Consulta Backends de
almacenamiento para la referencia
por backend. Endpoint overrides (R2, MinIO, LocalStack), rutas de
service-account de GCS, y modo emulador de Azure son todos respetados.
Siguientes pasos
- Leer datos — qué poner dentro del string entre comillas de la consulta.
- Servidor HTTP — cuando quieres un proceso persistente en vez de un binario por invocación.
- Backends de almacenamiento —
cada esquema de URI que
--storeacepta.