Module structures

Module structures 

Source
Expand description

Core data structures for indexing

Organized into submodules:

  • postings - Posting list compression formats
  • vector - Vector indexing (RaBitQ, IVF-RaBitQ, ScaNN)
  • simd - SIMD utilities
  • sstable - SSTable for term dictionary

Re-exports§

pub use postings::BlockPostingIterator;
pub use postings::BlockPostingList;
pub use postings::BlockSparsePostingIterator;
pub use postings::BlockSparsePostingList;
pub use postings::COMMON_BLOCK_SIZE;
pub use postings::CompressedPostingIterator;
pub use postings::CompressedPostingList;
pub use postings::CompressionStats;
pub use postings::EliasFano;
pub use postings::EliasFanoIterator;
pub use postings::EliasFanoPostingIterator;
pub use postings::EliasFanoPostingList;
pub use postings::HORIZONTAL_BP128_BLOCK_SIZE;
pub use postings::HorizontalBP128Block;
pub use postings::HorizontalBP128Iterator;
pub use postings::HorizontalBP128PostingList;
pub use postings::INLINE_THRESHOLD;
pub use postings::IndexOptimization;
pub use postings::IndexSize;
pub use postings::OPT_P4D_BLOCK_SIZE;
pub use postings::OptP4DBlock;
pub use postings::OptP4DIterator;
pub use postings::OptP4DPostingList;
pub use postings::PARTITIONED_EF_THRESHOLD;
pub use postings::PEF_BLOCK_SIZE;
pub use postings::PEFBlockInfo;
pub use postings::POSTING_BLOCK_SIZE;
pub use postings::PartitionedEFPostingIterator;
pub use postings::PartitionedEFPostingList;
pub use postings::PartitionedEliasFano;
pub use postings::Posting;
pub use postings::PostingFormat;
pub use postings::PostingList;
pub use postings::PostingListIterator;
pub use postings::ROARING_BLOCK_SIZE;
pub use postings::ROARING_THRESHOLD_RATIO;
pub use postings::ROUNDED_BP128_BLOCK_SIZE;
pub use postings::RoaringBitmap;
pub use postings::RoaringBlockInfo;
pub use postings::RoaringIterator;
pub use postings::RoaringPostingIterator;
pub use postings::RoaringPostingList;
pub use postings::RoundedBP128Block;
pub use postings::RoundedBP128Iterator;
pub use postings::RoundedBP128PostingList;
pub use postings::RoundedBitWidth;
pub use postings::SMALL_BLOCK_SIZE;
pub use postings::SMALL_BLOCK_THRESHOLD;
pub use postings::SPARSE_BLOCK_SIZE;
pub use postings::SkipEntry;
pub use postings::SkipList;
pub use postings::SparseEntry;
pub use postings::SparsePosting;
pub use postings::SparsePostingIterator;
pub use postings::SparsePostingList;
pub use postings::SparseSkipEntry;
pub use postings::SparseSkipList;
pub use postings::SparseVector;
pub use postings::SparseVectorConfig;
pub use postings::TERMINATED;
pub use postings::VERTICAL_BP128_BLOCK_SIZE;
pub use postings::VerticalBP128Block;
pub use postings::VerticalBP128Iterator;
pub use postings::VerticalBP128PostingList;
pub use postings::WeightQuantization;
pub use postings::binary_search_block;
pub use postings::pack_block;
pub use postings::pack_deltas_fixed;
pub use postings::pack_vertical;
pub use postings::read_doc_id_block;
pub use postings::read_vint;
pub use postings::unpack_block;
pub use postings::unpack_block_n;
pub use postings::unpack_deltas_fixed;
pub use postings::unpack_vertical;
pub use postings::write_doc_id_block;
pub use postings::write_vint;
pub use vector::ClusterData;
pub use vector::ClusterStorage;
pub use vector::CoarseCentroids;
pub use vector::CoarseConfig;
pub use vector::DistanceTable;
pub use vector::IVFPQConfig;
pub use vector::IVFPQIndex;
pub use vector::IVFRaBitQConfig;
pub use vector::IVFRaBitQIndex;
pub use vector::MultiAssignment;
pub use vector::PQCodebook;
pub use vector::PQConfig;
pub use vector::PQVector;
pub use vector::QuantizedCode;
pub use vector::QuantizedQuery;
pub use vector::QuantizedVector;
pub use vector::Quantizer;
pub use vector::RaBitQCodebook;
pub use vector::RaBitQConfig;
pub use vector::RaBitQIndex;
pub use vector::SoarConfig;
pub use simd::bits_needed;

Modules§

postings
Posting list data structures and compression formats
simd
Shared SIMD-accelerated functions for posting list compression
vector
Vector indexing data structures

Structs§

AsyncSSTableReader
Async SSTable reader - loads blocks on demand via LazyFileSlice
BloomFilter
Simple bloom filter for key existence checks
SSTableStats
SSTable statistics for debugging
SSTableWriter
SSTable writer with optimizations:
SSTableWriterConfig
SSTable writer configuration

Enums§

TermInfo
Term info for posting list references

Constants§

SSTABLE_BLOCK_SIZE
Block size for SSTable (16KB default)
SSTABLE_MAGIC
SSTable magic number - version 3 with optimizations

Traits§

SSTableValue
SSTable value trait