Project Voldemort – distributed key-value storage system

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.

Features include:

  • 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.

Support: GitHub
Developer: LinkedIn
License: Apache License Version 2.0

Voldemort is written in Java. Learn Java with our recommended free books and free tutorials.

Return to Key Value Stores Home Page

Ongoing series
Linux for StartersNew to Linux? Read our Linux for Starters series.
Free and Open Source SoftwareThe largest compilation of the best free and open source software in the universe. Supplied with our legendary ratings charts.
Linux ReviewsHundreds of in-depth reviews offering our unbiased and expert opinion on software.
Alternatives to GoogleAlternatives to Google's Products and Services examines your options to migrate from the Google ecosystem with open source Linux alternatives.
MicrosoftAlternatives to Microsoft's Products and Services recommends open source Linux software.
Linux System ToolsEssential Linux system tools looks at small, indispensable utilities, useful for system administrators as well as regular users.
Linux ProductivityLinux utilities to maximise your productivity. Small, indispensable tools, useful for anyone running a Linux machine.
Home Computer EmulatorsHome computers became commonplace in the 1980s. Emulate home computers including the Commodore 64, Amiga, Atari ST, ZX81, Amstrad CPC, and ZX Spectrum.
Now and ThenNow and Then examines how promising open source software fared over the years.
Linux at HomeLinux at Home looks at a range of home activities where Linux can play its part, making the most of our time at home, keeping active and engaged.
Linux CandyLinux Candy opens up to the lighter side of Linux. Have some fun!
Best Free Android AppsBest Free Android Apps. There's a strict eligibility criteria for inclusion in this series
Programming BooksThese best free books accelerate your learning of every programming language
Programming TutorialsThese free tutorials offer the perfect tonic to the free programming books series
Stars and StripesStars and Stripes is an occasional series looking at the impact of Linux in the USA
Share this article

Share your Thoughts

This site uses Akismet to reduce spam. Learn how your comment data is processed.