LevelDB
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.
Features include:
- 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.
Return
to Key Value Stores Home Page
Last Updated Sunday, April 14 2013 @ 09:38 AM EDT |