LevelDB is an open source, fast, key-value storage library written by Google that provides an ordered mapping from string keys to string values. Leveldb is based on LSM (Log-Structured Merge-Tree) and uses SSTable and MemTable for the database implementation.
LevelDB stores keys and values in arbitrary byte arrays, and data is sorted by key. It supports batching writes, forward and backward iteration, and compression of the data via Google’s Snappy compression library.
LevelDB uses Google Snappy data compression by default. This means more CPU usage but less disk space. LevelDB is a C++ library that can be used in many contexts. For example, LevelDB may be used by a web browser to store a cache of recently accessed web pages, or by an operating system to store the list of installed packages and package dependencies, or by an application to store user preference settings.
Key Features
- Keys and values are arbitrary byte arrays.
- Data is stored sorted by key.
- Callers can provide a custom comparison function to override the sort order.
- The basic operations are Put(key,value), Get(key), Delete(key).
- Multiple changes can be made in one atomic batch.
- Users can create a transient snapshot to get a consistent view of data.
- Forward and backward iteration is supported over the data.
- Data is automatically compressed using the Snappy compression library.
- External activity (file system operations etc.) is relayed through a virtual interface so users can customize the operating system interactions.
Website: github.com/google/leveldb
Support:
Developer: Jeffrey Dean, Sanjay Ghemawat
License: New BSD License
LevelDB is written in C++. Learn C++ with our recommended free books and free tutorials.
Related Software
| Key Value Stores | |
|---|---|
| RocksDB | Persistent key-value store for flash and RAM Storage |
| Valkey | High-performance data structure server |
| Apache Cassandra | Distributed database management system |
| ScyllaDB | Real-time big data database |
| Apache Accumulo | Based on Google's BigTable design |
| ArangoDB | Native multi-model database |
| Aerospike CE | Real-time NoSQL database and key-value store |
| Berkeley DB | Family of open source, embeddable databases |
| LevelDB | Fast and lightweight key/value database library by Google |
| Garnet | Remote cache-store |
| KeyDB | High performance fork of Redis |
| Redict | Distributed key/value store |
| Project Voldemort | Distributed data store |
| Scalaris | Distributed transactional key-value store |
Read our verdict in the software roundup.
Explore our comprehensive directory of recommended free and open source software. Our carefully curated collection spans every major software category.This directory is part of our ongoing series of informative articles for Linux enthusiasts. It features hundreds of detailed reviews, along with open source alternatives to proprietary solutions from major corporations such as Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk. You’ll also find interesting projects to try, hardware coverage, free programming books and tutorials, and much more. Know a useful open source Linux program that we haven’t covered yet? Let us know by completing this form. |

