awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
syndtr avatar

syndtr/goleveldb

0
View on GitHub↗
6,319 stars·985 forks·Go·BSD-2-Clause·18 views

Goleveldb

goleveldb is an embedded key-value storage database for Go. It provides local data persistence and indexing, allowing applications to store and retrieve information using unique keys without requiring a separate server.

The database organizes data using a log-structured merge-tree and persistent indexing in lexicographical order. This structure supports efficient range scans and prefix-based searches.

The system includes capabilities for atomic batch writes to ensure data consistency and avoid partial updates. Performance is managed through write-ahead logging, memory-based buffering, and bloom filters to reduce unnecessary disk input and output.

Features

  • Log-Structured Merge-Trees - Implements a Log-Structured Merge-Tree architecture to optimize write throughput by turning random writes into sequential I/O.
  • Lexicographical Sorting - Stores keys in a strict byte-order sequence to enable efficient range scans and prefix-based searches.
  • Lexicographical Indexes - Implements a persistent index in lexicographical order to support efficient range scans and prefix-based searches on disk.
  • Embedded Database Integrations - Integrates directly into Go applications as a library to handle local persistence without a separate server.
  • Key-Value Store Iterators - Implements utilities for traversing sorted key-value pairs in lexicographical order via range scans.
  • Range Key Iterators - Provides iterators to traverse key-value pairs over contiguous ranges using specific keys or prefix filters.
  • Embedded Key-Value Stores - Provides an embedded key-value store that persists data on disk using an LSM-tree.
  • Atomic Page Updates - Groups write operations together to prevent partial updates and ensure consistency during system failures.
  • Database Atomic Batches - Provides capabilities to group multiple mutations into a single atomic operation to ensure data consistency.
  • LSM-Tree Batch Writes - Groups multiple put and delete operations into a single commit to reduce write amplification.
  • Disk I/O Optimizations - Reduces disk reads by using specialized structures to verify key existence before accessing physical storage.
  • SSTable Indexes - Persists data in immutable sorted string tables with index blocks for fast binary search retrieval.
  • Key Lookup Operations - Optimizes key lookups by using probabilistic data structures to avoid unnecessary disk I/O.
  • Bloom Filters - Uses Bloom filters as probabilistic membership tests to optimize disk retrieval by skipping irrelevant files.
  • Atomic Index Updates - Ensures database mutations are applied as single atomic units to maintain data consistency.
  • Write-Ahead Logging - Records every mutation to a sequential disk log to ensure data recovery and durability after crashes.
  • Write Buffering - Uses memory buffers and sequential logs to accumulate writes and minimize disk latency.
  • Atomic Write Coordinators - Groups multiple write operations into a single atomic unit to guarantee all-or-nothing execution.
  • LSM Memtables - Buffers recent writes in a sorted in-memory structure before flushing them to disk as immutable SSTables.
  • Database Engines - Go implementation of the LevelDB key/value database.
  • Database Systems - Listed in the “Database Systems” section of the Awesome Go awesome list.
  • Database Tools - LevelDB implementation in Go.
  • Databases - Go implementation of the LevelDB storage engine.
  • Databases and Storage - A Go implementation of the LevelDB key-value store.
  • Databases & Data - Implementation of a key/value store based on LevelDB.
  • Embedded Databases - Go implementation of the LevelDB key-value store.

Star history

Star history chart for syndtr/goleveldbStar history chart for syndtr/goleveldb

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Frequently asked questions

What does syndtr/goleveldb do?

goleveldb is an embedded key-value storage database for Go. It provides local data persistence and indexing, allowing applications to store and retrieve information using unique keys without requiring a separate server.

What are the main features of syndtr/goleveldb?

The main features of syndtr/goleveldb are: Log-Structured Merge-Trees, Lexicographical Sorting, Lexicographical Indexes, Embedded Database Integrations, Key-Value Store Iterators, Range Key Iterators, Embedded Key-Value Stores, Atomic Page Updates.

Which projects share features with syndtr/goleveldb?

Projects with overlapping indexed features include: dgraph-io/badger — Badger is an embeddable key-value store written in Go that provides persistent data storage for byte keys and values.… cockroachdb/pebble — Pebble is an embedded key-value storage engine written in Go, designed as a library that provides durable,… google/leveldb — LevelDB is an embedded database library and persistent storage engine that provides a sorted key-value store. It uses… facebook/rocksdb — RocksDB is a high-performance, embeddable persistent key-value library and storage engine based on Log-Structured… roseduan/rosedb — RoseDB is an embedded key-value database and log-structured storage engine. It functions as a library-based database… etcd-io/bbolt — bbolt is an ACID-compliant embedded key-value store for Go applications. It persists all data in a single…

Projects sharing features with Goleveldb

These projects share indexed features with Goleveldb. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • dgraph-io/badgerdgraph-io avatar

    dgraph-io/badger

    15,666View on 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
    View on GitHub↗15,666
  • cockroachdb/pebblecockroachdb avatar

    cockroachdb/pebble

    5,777View on GitHub↗

    Pebble is an embedded key-value storage engine written in Go, designed as a library that provides durable, write-optimized data persistence directly within applications. It organizes data using a log-structured merge-tree (LSM-tree) structure, where writes are first buffered in an in-memory skiplist memtable and persisted to a write-ahead log before being flushed to block-based SSTable files on disk. The engine supports atomic batch commits, configurable write synchronization, and automatic background compaction that merges and rewrites sorted runs to reclaim space and maintain read performanc

    Go
    View on GitHub↗5,777
  • google/leveldbgoogle avatar

    google/leveldb

    39,152View on 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++
    View on GitHub↗39,152
  • facebook/rocksdbfacebook avatar

    facebook/rocksdb

    31,767View on GitHub↗

    RocksDB is a high-performance, embeddable persistent key-value library and storage engine based on Log-Structured Merge-trees. It is designed to provide durable storage for large-scale datasets, integrating directly into applications to manage data on flash and RAM-based hardware. The engine is distinguished by its focus on minimizing read and write amplification through multi-threaded compaction and custom memory allocators. It features specialized optimizations for flash storage, including support for zoned block devices, and provides the ability to extend store behavior via external plugin

    C++databasestorage-engine
    View on GitHub↗31,767
Compare all 30 related projects→