Voldemort is an open source distributed data store that is designed as a key-value store used for high-scalability storage.
Voldemort is a big, distributed, fault-tolerant, persistent hash table.
It is used at LinkedIn for certain high-scalability storage problems where simple functional partitioning is not sufficient.
Key Features
- Data is automatically replicated over multiple servers.
- Data is automatically partitioned so each server contains only a subset of the total data.
- Server failure is handled transparently.
- Pluggable serialization is supported to allow rich keys and values including lists and tuples with named fields, as well as to integrate with common serialization frameworks like Protocol Buffers, Thrift, Avro and Java Serialization.
- Data items are versioned to maximize data integrity in failure scenarios without compromising availability of the system.
- Each node is independent of other nodes with no central point of failure or coordination.
- Good single node performance: you can expect 10-20k operations per second depending on the machines, the network, the disk system, and the data replication factor.
- Support for pluggable data placement strategies to support things like distribution across data centers that are geographically far apart.
- Combines in-memory caching with the storage system so that a separate caching tier is not required (instead the storage system itself is just fast).
- Emulate the storage layer, as it is completely mockable. This makes the development and the unit testing easy, as it can be done against a throw-away in-memory storage system without the need for a real cluster or real storage system.
- Unlike MySQL replication, both reads and writes scale horizontally.
- Simple API: The API decides data replication and placement and accommodates a wide range of application-specific strategies.
- Transparent data partitioning: This allows for cluster expansion without rebalancing all data.
- Supports hashtable semantics.
- Embeddable.
- Integrity: Atomicity, Consistency, Durability, Revision Control, Optimistic Locking model.
- Distribution: Horizontal scalable, replication, symmetric replication, and sharing.
- Compression.
- TTL for entries.
- Unicode support.
Website: github.com/voldemort/voldemort
Support:
Developer: LinkedIn
License: Apache License Version 2.0
Voldemort is written in Java. Learn Java 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. |

