Skip to content
Stanley Feng edited this page May 10, 2016 · 25 revisions

YCSB is a framework for benchmarking systems. By itself, it is not particularly useful; only when you add code to interface with a data serving system is it useful. The current YCSB release (0.9.0) contains code to interface with various DB bindings, here are some examples:

Refer to [here] (https://gist.github.com/stfeng/3b46e4550c046715765d13356c686f58#tested-databases) for a complete list of DBs supported as of version 0.9.0.

It is straightforward to interface with other database systems - see Adding a Database.

1. Obtain YCSB

If you'll be running on Windows, please start by referencing our prerequisites for Windows.

Download the latest version:

curl -O --location https://github.com/brianfrankcooper/YCSB/releases/download/0.9.0/ycsb-0.9.0.tar.gz
tar xfvz ycsb-0.9.0.tar.gz
cd ycsb-0.9.0

Or clone the git repository and build:

git clone git://github.com/brianfrankcooper/YCSB.git
cd YCSB
mvn clean package

Systems may have additional requirements for running clients. For example, HBase requires the client be able to contact Zookeeper. See HBase 0.20.3 Client Package Description for HBase-specific instructions. Some details are listed in Using the Database Libraries.

You will be using the ycsb command to interact with YCSB. Run:

./bin/ycsb

to see the usage.

2. Now, run a workload

See Running a Workload.