Fork me on GitHub

Contents

1 Introduction
1.1 Why HyperDex?
1.2 About this Book
1.3 Help and Support
1.3.1 Online and Free Resources
1.3.2 Commercial Support
2 Installing HyperDex
2.1 Installing Binary Packages
2.1.1 Debian
2.1.2 Ubuntu
2.1.3 Fedora
2.1.4 Package Names
2.2 Installing Source Tarballs
2.2.1 Prerequisites
2.2.2 Configuring
2.2.2.1 Java Bindings
2.2.2.2 Python Bindings
2.2.2.3 Yahoo! Cloud Serving Benchmark
2.2.2.4 Changing the Installation Directory
2.2.3 Installing
2.3 Installing from Git
2.4 Verifying Installation
I For Developers
3 Quick Start
3.1 High-Level Overview
3.2 Starting the Coordinator
3.3 Starting HyperDex Daemons
3.4 Creating a new Space
3.5 Interacting with the “phonebook” Space
3.6 Cleaning Up
4 Data Types
4.1 Setup
4.2 Strings
4.3 Integers
4.4 Floats
4.5 Lists
4.6 Sets
4.7 Maps
5 Asynchronous Operations
5.1 Setup
5.2 Asynchronous Operations
5.3 Potential Pitfalls
5.4 A Common Window Pattern
6 Atomic Operations
6.1 Setup
6.2 Atomic Operations
6.3 A Comprehensive Walk
II For Administrators
7 Fault Tolerance
7.1 Coordinator
7.2 HyperDex Daemons
7.3 Fault Tolerance Thresholds
7.4 Shutting Down and Restoring a Cluster
8 Tuning HyperDex
8.1 Filesystem
8.1.1 Access Time
8.1.2 Open Files
9 Cluster Membership
9.1 Tutorial
9.2 State Transitions
9.3 Command Reference
III API Reference
10 C API
10.1 Client Library
10.1.1 Building the HyperDex C Binding
10.1.2 Compiling and Linking Your Application
10.1.3 Hello World
10.1.4 Asynchronous Patterns
10.1.5 Creating a Client
10.1.6 Data Structures
10.1.6.1 enum hyperdatatype
10.1.6.2 Bytestring Format
10.1.6.3 Serialization API
10.1.6.4 Deserialization API
10.1.6.5 Memory Management Utilties
10.1.7 Attributes
10.1.8 Map Attributes
10.1.9 Predicates
10.1.10 Error Handling
10.1.11 Operations
10.1.12 Working with Signals
10.1.13 Working with Threads
11 Ruby API
11.1 Client Library
11.1.1 Building the HyperDex Ruby Binding
11.1.2 Using Ruby Within Your Application
11.1.3 Hello World
11.1.4 Asynchronous Operations
11.1.5 Data Structures
11.1.5.1 Examples
11.1.6 Attributes
11.1.7 Map Attributes
11.1.8 Predicates
11.1.9 Error Handling
11.1.10 Operations
11.1.11 Working with Signals
11.1.12 Working with Threads
Index
References