Bring the graph. Keep the Cypher.

LightningDB consumes the CSV and JSONL formats that neo4j-admin database import already uses, or streams live graph topologies over Bolt. Graph hop counts on the imported graph match the source directly. Cutover is a URI update.

# One-command migration helper
./build/graphdb cutover \
  --bolt neo4j://neo4j.prod:7687 \
  --dump /backup/neo \
  --host 20.1.2.3

Dump. Migrate. Swap.

graphdb cutover automates migration for your Bolt URI, dump directory, and target host.

  1. Dump on the Neo4j side

    Export nodes and relationships in the format neo4j-admin database import natively consumes. Aura and APOC exports can be JSONL instead.

  2. Compile into contiguous CSR

    Migration parses the dump on CPU and writes a contiguous type-sliced CSR snapshot file:

    ./build/graphdb migrate --from /backup/neo --out data/migrated.gdb
  3. Point clients at the new host

    Declarative Cypher points to /v1/query. High-speed GraphRAG context requests point to /v1/rag:

    ./build/graphdb serve --db data/migrated.gdb --port 7475

Automated cutover script: bash scripts/cutover_from_neo4j.sh neo4j://neo4j.prod:7687 /backup/neo 20.1.2.3. Full details in docs/MIGRATE.md on GitHub.

Native export format support.

LightningDB recognizes and ingests standard industry export layouts out of the box.

FORMAT nodes.csv & rels.csv

The standard layout neo4j-admin database import consumes and graphdb generate --out produces.

FORMAT nodes.csv & relationships.csv

Identical schema columns, recognizing Neo4j’s longer filename variant automatically.

FORMAT nodes.jsonl & rels.jsonl

One JSON object per line, matching the exact shape emitted by APOC and Neo4j Aura tooling.

Or stream live over Bolt.

Point migrate --bolt at a running Neo4j instance. LightningDB streams the graph over the network and compiles the CSR on the fly. The same streaming capability is available in the browser console and from Cypher as LOAD FROM NEO4J.

Streaming ingestion is pure CPU work. CUDA acceleration activates automatically during subsequent vector search passes.

# Stream live from Bolt server
pip install neo4j
./build/graphdb migrate --bolt bolt://127.0.0.1:7687 \
  --user neo4j --password graphdb-bench \
  --out data/migrated.gdb

Migrate a replica. Compare clocks. Then swap.

Verify queries against your existing Neo4j instance before anything in production moves.

# Execute migration helper
bash scripts/cutover_from_neo4j.sh \
  neo4j://neo4j.prod:7687 /backup/neo GRAPHDB_HOST