Fast and simple storage. A Node.js wrapper for abstract-leveldown compliant stores, which follow the characteristics of LevelDB. LevelDB is a simple key-value store built by Google. It's used in Google Chrome and many other products. LevelDB supports arbitrary byte arrays as both keys and values, singular get, put and delete operations, batched put and delete, bi-directional iterators and simple compression using the very fast Snappy algorithm. LevelDB stores entries sorted lexicographically by keys. This makes the streaming interface of levelup - which exposes LevelDB iterators as Readable Streams, a very powerful query mechanism. The most common store is leveldown which provides a pure C++ binding to LevelDB. Many alternative stores are available such as level.js in the browser or memdown for an in-memory store. They typically support strings and Buffers for both keys and values. For a richer set of data types you can wrap the store with encoding-down.
Features
- We aim to support Active LTS and Current Node.js releases as well as browsers
- All operations are asynchronous
- Calling levelup(db) will also open the underlying store
- Get multiple values from the store by an array of keys
- Stores like LevelDB are thread-safe but they are not suitable for accessing with multiple processes
- You should only ever have a store open from a single Node.js process