Storage Attached Indexes for Cassandra (CEP-7)
summary
Storage Attached Indexes (CEP-7) land in Cassandra 5 as per-sstable and per-memtable index files that attach to Memtable and SSTable so indexes share lifecycle with SSTables and stay consistent; literal columns use a trie for strings and numeric columns use a KD-like numeric tree, with a shared per-SSTable component mapping rowIDs to tokens and primary keys. SAI supports range queries on numerics, multi-index intersections, collections and map keys/values, does synchronous index build on compaction, post-filters tombstone false positives, recommends ~10 indexes per table, shows single-node reads in tens of thousands/sec, ranges in thousands, intersections in hundreds, typical latencies <20ms and ~10% extra heap.
AI-written summary · about
chapters (23)
- 0:00Storage Attached Indexes intro
- 1:47Problems with existing indexes
- 3:57Legacy and SASI limitations
- 4:39Introducing SII Search
- 5:42Querying SII on multiple columns
- 6:45Range queries and collections
- 9:19SII physical implementation
- 10:43SII consistency and lifecycle
- 12:56SII write path and compaction
- 14:20Performance and compaction impact
- 15:46SII read path and retrieval
- 16:32Post-filtering and tombstones
- 17:17Querying columns and merging
- 19:27Skip operations for intersections
- 20:09SII data structures
- 21:55Row ID to primary key
- 22:38SII compression and encoding
- 24:07Storage efficiency gains
- 25:12Benchmarking SII metrics
- 26:17Future SII enhancements
- 28:13Q&A on performance
- 29:16Memory impact and hardware
- 30:55Vector search directions
related talks
34mSASI, Cassandra on the full text search ride!
01h 01mOK S3
36mApplications of Tries in Apache Cassandra
20mCastle-enhanced Cassandra
29mTime Series with Apache Cassandra: the basics
53mApache Cassandra. Inception - all you need to know
57mCassandra for Metadata Storage: Successes and Failures
42mContemporary Approaches to Data at Scale
