HyperDex is the next-generation key-value store, designed from the ground up to provide a convenient user
interface without sacrificing reliability, robustness, or performance. First and foremost, HyperDex
enables developers to create new applications quickly and with strong correctness guarantees. HyperDex
features:
-
Performance:
- HyperDex achieves lower latency and higher throughput than many other key-value stores.
Deploy fewer machines to support your application, and save on operational costs.
-
Consistency:
- HyperDex provides strongly-consistent reads, writes, and atomic operations, making strong
guarantees to your application. Other key-value stores promise eventual consistency, leaving your
application to pick up the slack. HyperDex solves the tough problems, enabling you to write correct
applications quickly with less effort.
-
Fault Tolerance:
- HyperDex employs a unique, built-in fault-tolerance mechanism to safe-guard your data.
Simply tell HyperDex how many failures your cluster is likely to experience, and HyperDex ensures that
your data is replicated to withstand at least that many failures. Where other systems require you to
fully understand the replication internals to bring fault-tolerance your data, HyperDex’s fault-tolerance
mechanism is simple to understand and straightforward to use.
-
Scalability:
- HyperDex automatically scales as more machines are added to the system. Add additional
servers to your HyperDex cluster to increase storage capacity and achievable throughput.
-
Easy-to-Use:
- HyperDex is easy to use in both development and production environments. Set up a
HyperDex cluster quickly, and scale out to multiple machines without any application-level changes.
Other systems may require that your application know about internals of the deployment, such
as cluster membership, replication options, and sharding configurations. HyperDex internally and
automatically manages your cluster so your application doesn’t have to.
This book is the definitive HyperDex reference manual for users, administrators, and developers. The HyperDex
developers update this manual in tandem with each release to ensure that the book serves as the best reference for
HyperDex.
This book is divided into three parts, each of which is directed to a different audience. Part I, “For Developers”,
provides an introduction to HyperDex suitable for developers looking to build applications on top of HyperDex. The
“For Developers” part of this book is written as a series of tutorials that acquaint you with HyperDex’s API and
describe many of the features available within HyperDex.
Part II, “For Administrators”, describes the day-to-day maintenance of a HyperDex cluster. The “For
Administrators” portion of this book is written as a series of small, isolated recipes that provide instruction for
maintaining and monitoring HyperDex clusters.
Finally, Part III provides an API reference for HyperDex. This section serves primarily as a reference of the
developer-visible, and operations-visible, components of HyperDex and should probably be used for reference rather
than read in its entirety.
This book is a continuous work in progress, and newer versions are available at the HyperDex website. The
book’s sources are maintained alongside the HyperDex source code as the de-facto documentation for HyperDex.
Patches, suggestions, and feedback about this book are welcome and may be submitted using the contact
information in the next section.
If you run into trouble while working with HyperDex, don’t panic! The HyperDex team have put together many
support avenues to assist you with HyperDex. Many of the available resources are freely available online. When you
need more support than that, the HyperDex team is on standby with commercial support options that ensure that
you’re never left in the dark.
The HyperDex team have assembled several free online resources to help you make the most of HyperDex:
- HyperDex Reference Manual: This document is the best avenue for support and assistance. It serves
as the canonical documentation of HyperDex and should be your first stop with any questions or
problems.
- HyperDex Mailing List: This open mailing list is most users’ first resource solving problems. Messages
to the list are archived which makes it easy to search for solutions to your problem. If you don’t find a
solution in the archives, start a new thread with your question and the HyperDex developers will try
to help answer your questions.
- HyperDex IRC Channel: The #hyperdex IRC channel on Freenode is a great place to ask questions
and interact with the HyperDex developers in real-time.
- HyperDex Bug Tracker: If you’ve encountered an error in the code that you think may be a bug, check
the bug tracker to see if other users have reported the same problem. Consider reporting the problem
yourself if it looks like the problem has not yet been reported.
- HyperDex FAQ: If you’ve got a question, check out the FAQ for frequently asked (and answered)
questions. The FAQ contains pointers to other resources to help solve your problems.
- HyperDex Papers: If you’re interested in developing or changing the internals of HyperDex, we’ve
published papers that detail the internal architecture and design principles of HyperDex.
The HyperDex team provides commercial support for HyperDex, which includes around-the-clock email support and
consulting services. If you’re in need of support, you can contact the HyperDex developers directly at
support@hyperdex.org.