Skip to main content

Crate edgestore

Crate edgestore 

Source
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

TypeItemDescription
EngineEngineMain KV engine (open, get, put, delete, range, prefix, flush, snapshot, compact)
ConfigEdgestoreConfigDatabase configuration
ErrorEdgestoreErrorAll error variants
TransactionTransactionMulti-record atomic batch
MetricsMetricsSnapshotPoint-in-time metrics snapshot
VectorVectorEngine trait, VectorRecord, Dtype, MetricVector storage & search
TextTextEngine trait, TextSearchResult, SearchOptionsFull-text search
SnapshotSnapshot, SnapshotRegistryPoint-in-time reads
ReplicationReplicationProtocol, HostId, SegmentRefPull-only sync
StorageStorageBackend, DefaultStorageBackend, MemoryStorageBackendPluggable I/O
CompactionCompactor, CompactionStatsDeathtime-cohort compaction
MerkleRangeMerkleTreeAnti-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::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).