Expand description
In-memory payload bitmap indexes for vector-primary collections.
Each indexed field stores a HashMap<PayloadKey, RoaringBitmap> mapping
distinct field values to the set of HNSW node ids that carry that value.
Pre-filter queries intersect/union bitmaps to produce a node-id allow-set
that is passed directly into HNSW search, eliminating costly post-filter
passes for high-selectivity predicates.
Ordering invariant: callers must call insert_row after the HNSW
node id is assigned so that the id is stable. Similarly, delete_row
should be called before or after HNSW deletion is attempted — the
bitmap and the HNSW graph are always consistent after a successful pair.
Structs§
- Payload
Index - Bitmap index for a single payload field.
- Payload
Index Set - Set of per-field payload bitmap indexes for a collection.
- Payload
Index SetSnapshot - Serializable snapshot of the full
PayloadIndexSet. - Payload
Index Snapshot - Serializable snapshot of a single
PayloadIndexfor checkpointing.
Enums§
- Filter
Predicate - A structured filter predicate that can be evaluated against the bitmap indexes. Mirrors the SQL WHERE predicates the planner builds.
- Payload
Index Bitmaps - Per-field bitmap storage.
Equalityindexes use a hash map (O(1) point lookup);Rangeindexes use a B-tree (O(log n) point + range scan over keys). - Payload
Index Kind - Re-export the kind enum from
nodedb-typesso the on-disk snapshot and the DDL config wire format share a single definition. Storage kind for a payload bitmap index. Equality fields use aHashMap<key, bitmap>(O(1) lookup); Range fields use aBTreeMapfor sorted range scans; Boolean is a low-cardinality equality variant. - Payload
Key - A deterministic, hashable representation of a
Valueused as a bitmap key.