Expand description
EdgeStore — local-first embedded KV + vector database.
This crate provides the core synchronous engine. Async wrappers live in
edgestore-tokio. HTTP transport lives in edgestore-repl.
§Public API Surface
| Type | Item | Description |
|---|---|---|
| Engine | Engine | Main KV engine (open, get, put, delete, range, prefix, flush, snapshot, compact) |
| Config | EdgestoreConfig | Database configuration |
| Error | EdgestoreError | All error variants |
| Transaction | Transaction | Multi-record atomic batch |
| Metrics | MetricsSnapshot | Point-in-time metrics snapshot |
| Vector | VectorEngine trait, VectorRecord, Dtype, Metric | Vector storage & search |
| Text | TextEngine trait, TextSearchResult, SearchOptions | Full-text search |
| Snapshot | Snapshot, SnapshotRegistry | Point-in-time reads |
| Replication | ReplicationProtocol, HostId, SegmentRef | Pull-only sync |
| Storage | StorageBackend, DefaultStorageBackend, MemoryStorageBackend | Pluggable I/O |
| Compaction | Compactor, CompactionStats | Deathtime-cohort compaction |
| Merkle | RangeMerkleTree | Anti-entropy probe |
Re-exports§
pub use compactor::CompactionStats;pub use compactor::Compactor;pub use config::EdgestoreConfig;pub use engine::Engine;pub use engine::ImportResult;pub use error::EdgestoreError;pub use merkle::RangeMerkleTree;pub use metrics::MetricsSnapshot;pub use remote_store::RemoteStore;pub use replication::HostId;pub use replication::ReplicationProtocol;pub use replication::SegmentRef;pub use snapshot::Snapshot;pub use snapshot::SnapshotRegistry;pub use fdp_backend::FdpStorageBackend;pub use fdp_backend::MockFdpBackend;pub use storage_backend::DefaultStorageBackend;pub use storage_backend::MemoryStorageBackend;pub use storage_backend::PlacementHint;pub use storage_backend::StorageBackend;pub use transaction::Transaction;pub use text::engine::text_namespace;pub use text::engine::SearchOptions;pub use text::engine::TextEngine;pub use text::engine::TextSearchResult;pub use text::facet::filter_by_facets;pub use text::facet::FacetFilter;pub use text::index::bm25_score;pub use text::index::score_document;pub use text::index::InvertedIndex;pub use text::index::Posting;pub use text::tokenizer::tokenize;pub use text::tokenizer::Token;pub use text::typo::is_one_edit_away;pub use text::typo::levenshtein;pub use text::types::decode_text_record;pub use text::types::FacetValue;pub use vector::api::vector_namespace;pub use vector::api::VectorEngine;pub use vector::distance::distance;pub use vector::distance::distance_scalar;pub use vector::distance::Metric;pub use vector::distance::total_cmp_f32;pub use vector::hnsw::HnswIndex;pub use vector::search::vector_search;pub use vector::search::VectorSearchResult;pub use vector::types::Dtype;pub use vector::types::VectorRecord;
Modules§
- compactor
- Deathtime-cohort compaction engine.
- config
- Database configuration.
- engine
- Main KV engine.
- error
- Error types.
- fdp_
backend - FDP (Flexible Data Placement) storage backends.
- manifest
- Segment manifest (internal).
- memtable
- In-memory table trait and BTree implementation.
- merkle
- Range-level Merkle tree for anti-entropy probes. Range-level Merkle tree over 16 key-range buckets.
- metrics
- Engine metrics and snapshots.
- recovery
- WAL replay recovery (internal).
- remote_
store - Remote segment store abstraction. Trait for durable segment backends.
- replication
- Pull-only replication protocol. Pull-only replication protocol.
- segment
- Segment format, reader, writer, and store (internal).
- snapshot
- Point-in-time snapshot reads.
- storage_
backend - Pluggable storage backend trait.
- text
- Full-text search index and engine.
- transaction
- Multi-record transaction batch.
- types
- Core types (Lsn, SegmentMeta, Compression, etc.).
- vector
- Vector storage, distance, and search (internal modules with public re-exports). Vector search API layer.
- wal
- Write-ahead log format and I/O (internal).