awesome-repositories.com
Blog
awesome-repositories.com

Découvrez les meilleurs dépôts open-source grâce à notre recherche par IA.

ExplorerRecherches sélectionnéesAlternatives open sourceLogiciels auto-hébergésBlogPlan du site
ProjetÀ proposNotre méthodologiePresseServeur MCP
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
spacejam avatar

spacejam/sled

0
View on GitHub↗
8,928 stars·417 forks·Rust·apache-2.0·9 vues

Sled

Sled is an embedded key-value store and ACID-compliant database designed for high-performance data persistence. It functions as a log-structured storage engine that organizes data using B+ trees to support efficient range queries and prefix scans.

The engine implements a zero-copy data store model, utilizing epoch-based reclamation to provide direct references to cached values without memory allocations. It distinguishes itself through a combination of write-ahead logging, page cache optimizations to reduce write amplification on flash storage, and serializable transactions for atomic multi-key updates.

The library covers a broad range of capabilities, including crash recovery through checkpointing, disk storage defragmentation, and binary stream replication. It also provides reactive data observation via key-prefix event subscriptions and supports custom merge logic for atomic value transformations.

Features

  • Key-Value - Functions as a high-performance embedded key-value store supporting atomic updates and conditional modifications.
  • ACID Transactional Cores - Provides an ACID-compliant core for atomic and isolated multi-key transaction processing.
  • Database Atomic Batches - Groups multiple database mutations into a single atomic operation to ensure consistency.
  • Write Persistence Guarantees - Guarantees data persistence by flushing dirty IO buffers to disk synchronously or asynchronously.
  • Zero-Copy Memory Mappings - Provides direct references to cached values using epoch-based reclamation to eliminate memory allocations during reads.
  • High-Performance Persistence Layers - Writes structured binary data to stable storage with specific optimizations for flash memory and crash recovery.
  • Key-Value Stores - Provides a high-performance, disk-backed embedded key-value store for byte arrays.
  • B-Tree - Implements a B+ Tree indexing structure to enable efficient range-based scans and fast key lookups.
  • Log-Structured Merge-Trees - Utilizes a log-structured merge-tree architecture to optimize write throughput and read performance.
  • Cursor-based Iterators - Implements cursor-based iterators for memory-efficient record-by-record processing of the database.
  • Strict Serializability - Ensures serializable transaction isolation for atomic multi-key updates across different data trees.
  • Strict Serializability - Ensures absolute consistency through serializable transactions across multiple data trees.
  • Log State Recovery - Reconstructs database state by applying log segments to snapshots for reliable crash recovery.
  • Write-Ahead Logging - Uses write-ahead logging to record every mutation to a persistent log for guaranteed crash recovery.
  • Log-Structured Storage Engines - Implements a log-structured storage engine using write-ahead logging and page caches for high write throughput.
  • Zero-Copy Data Access - Provides zero-copy data access by returning direct references to cached values using epoch-based reclamation.
  • Database Page Caching - Implements database page caching to store data fragments in memory and reduce write amplification on flash storage.
  • Storage Key Observation - Monitors specific key prefixes to trigger reactive events when records are updated.
  • Conditional Updates - Allows modifying or deleting a value only if the current value matches a specific expected state.
  • Keyspace Isolation - Supports creating and removing disk-backed trees to isolate different keyspaces within a single database.
  • Epoch-Based Reclamation - Uses epoch-based reclamation to provide zero-copy reads without immediate memory allocations.
  • Data Replication - Implements binary stream replication to synchronize data and tree updates across distributed nodes.
  • Atomic Key-Value Operations - Supports atomic key-value operations that execute read-modify-write cycles as single, indivisible units.
  • Disk Defragmentation - Reclaims disk space and reduces fragmentation by moving live pages from underutilized segments.
  • Change Notifications - Provides reactive data observation via key-prefix event subscriptions to trigger actions when records are updated.
  • Key Deletion - Provides capabilities for removing values from the database by their unique keys.
  • Custom Value Merging - Provides a custom merge operator to execute read-modify-write logic directly during the write process.
  • Record Compression - Reduces the storage footprint of the database by applying high-efficiency compression to stored records.
  • Storage Space Optimization - Implements disk defragmentation and page cache optimizations to reduce write amplification on flash storage.
  • Bases de données - Embedded database with lock-free concurrency.

Historique des stars

Graphique de l'historique des stars pour spacejam/sledGraphique de l'historique des stars pour spacejam/sled

Recherche par IA

Explorez plus de dépôts awesome

Décrivez vos besoins en langage naturel — l'IA classe des milliers de projets open source sélectionnés par pertinence.

Start searching with AI

Questions fréquentes

Que fait spacejam/sled ?

Sled is an embedded key-value store and ACID-compliant database designed for high-performance data persistence. It functions as a log-structured storage engine that organizes data using B+ trees to support efficient range queries and prefix scans.

Quelles sont les fonctionnalités principales de spacejam/sled ?

Les fonctionnalités principales de spacejam/sled sont : Key-Value, ACID Transactional Cores, Database Atomic Batches, Write Persistence Guarantees, Zero-Copy Memory Mappings, High-Performance Persistence Layers, Key-Value Stores, B-Tree.

Quelles sont les alternatives open-source à spacejam/sled ?

Les alternatives open-source à spacejam/sled incluent : apple/foundationdb — FoundationDB is an ACID-compliant distributed transactional key-value store. It functions as a scalable database… dgraph-io/badger — Badger is an embeddable key-value store written in Go that provides persistent data storage for byte keys and values.… google/leveldb — LevelDB is an embedded database library and persistent storage engine that provides a sorted key-value store. It uses… boltdb/bolt — Bolt is a single-file embedded key-value store for Go applications. It is an ACID transactional database that… redis/go-redis — This project is a feature-rich Go client library designed for interacting with Redis. It serves as a comprehensive… rosedblabs/rosedb — RoseDB is a persistent key-value database and log-structured storage engine. It functions as a lightweight storage…

Alternatives open source à Sled

Projets open source similaires, classés selon le nombre de fonctionnalités partagées avec Sled.
  • apple/foundationdbAvatar de apple

    apple/foundationdb

    16,446Voir sur GitHub↗

    FoundationDB is an ACID-compliant distributed transactional key-value store. It functions as a scalable database engine that ensures strict serializability and data consistency across a cluster of servers using a shared-nothing architecture. The system is distinguished by its multi-region replication capabilities, allowing data to be synchronized across different datacenters for high availability and disaster recovery. It utilizes optimistic concurrency control to manage distributed transactions and employs a majority-based coordination system to maintain cluster state. The platform provides

    C++aciddistributed-databasefoundationdb
    Voir sur GitHub↗16,446
  • dgraph-io/badgerAvatar de dgraph-io

    dgraph-io/badger

    15,666Voir sur GitHub↗

    Badger is an embeddable key-value store written in Go that provides persistent data storage for byte keys and values. It is a persistent database that utilizes a tiered LSM tree storage model to optimize disk storage and retrieval efficiency. The system features an ACID transaction engine that ensures data integrity through serializable snapshot isolation and multi-version concurrency control. It also provides an encrypted key-value store with data-at-rest encryption and a managed encrypted key registry to secure stored information. The engine covers a broad set of capabilities including hig

    Godatabasedocument-databasego
    Voir sur GitHub↗15,666
  • google/leveldbAvatar de google

    google/leveldb

    39,152Voir sur GitHub↗

    LevelDB is an embedded database library and persistent storage engine that provides a sorted key-value store. It uses a log-structured merge-tree architecture to map byte arrays to values, running directly within a process to provide storage without the need for a separate server process. The system is distinguished by its use of custom comparison functions to define key ordering, enabling efficient range scans and sequenced lookups. It ensures data reliability through atomic batch execution, consistent snapshot generation, and log-based recovery after failures. The engine covers broad capab

    C++
    Voir sur GitHub↗39,152
  • boltdb/boltAvatar de boltdb

    boltdb/bolt

    14,642Voir sur GitHub↗

    Bolt is a single-file embedded key-value store for Go applications. It is an ACID transactional database that organizes data in B+trees on disk to provide efficient sorted key retrieval and range scans. The system uses a memory-mapped model to map the database file directly into the process address space for fast random-access reads. The project distinguishes itself through a multi-version concurrency control architecture that allows multiple simultaneous readers to access a consistent snapshot of data without blocking a writer. It employs a single-writer multi-reader locking model and uses a

    Go
    Voir sur GitHub↗14,642
Voir les 30 alternatives à Sled→