Block Format: The Next Generation Graph-Native Storage Engine
summary
Block Format replaces separate node/relationship/property files with collocated records: a 128-byte small store (64B labels/properties + 64B relationship state), growable dynamic node store up to 8KB and dynamic relationship blocks (2KB), and per-node multi-root generational B-tree dense stores for very high-degree nodes. Benchmarks show ~50% faster reads when fully in memory, nearly 2x with Cypher optimizations, and still beats legacy by large margins when only a third fits in memory. Shipping in Neo4j 5.17 (default for new DBs) with migration via neo4j-admin.
AI-written summary · about
chapters (9)
- 0:00Introduction to storage
- 1:01Legacy storage limitations
- 3:54Property graph model basics
- 7:45Problems with legacy formats
- 9:36Introduction to block format
- 12:04Data layout and storage
- 16:09Key performance improvements
- 17:47Performance benchmarks
- 20:15Implementation and rollout
related talks
26mHow NEO4J Saved my Relationship
17mA New Radix-Tree Based Memory Storage Engine
26mFuture of FoundationDB Storage Engines
09mEfficient Large Graph Processing with Chunk-Based Graph Representation Model
49mBuild a database from the ground up
21mRedwood Storage Engine Update
45mThe Database: A Sophisticated and Special Data Structure
29mImplementing a Graph Database based on PostSQL
