The Yahoo! Cloud Serving Benchmark (YCSB) is an open-source specification and program suite for evaluating retrieval and maintenance capabilities of computer programs. It is often used to compare relative performance of NoSQL database management systems.

YCSB provides a framework along with several workloads that could be run to evaluate the performance and throughput of the database in respective different scenarios. See here to learn and know more about the workloads.

Each of these workload test runs in two steps:

  1. Load and
  2. Run

Load stage is to load the data and then run stage is where we run the test.

This section, we will go through how to set up the YCSB test bench on your machine and then look into the results of the test as compared with other databases like (MongoDB, Couchbase, YugabyteDB and Redis) vis a vis BangDB.

How to set up and run YCSB benchmark test for BangDB

Step 1

Take BangDB 2.0 and run the server

wget https://bangdb.com/downloads/bangdb_2.0_ubuntu18.tar.gz
tar -xzvf bangdb_2.0_ubuntu18.tar.gz
cd bangdb_2.0_ubuntu18
bash install.sh
cd bin
./bangdb-server-2.0 -d ycsb -b yes

Checkout getting started section or github to install the BangDB

Step 2

Checkout YCSB code from Github

git clone https://github.com/sachin-sinha/YCSB
cd YCSB
git checkout db_bangdb
mvn -pl site.ycsb:bangdb-binding -am clean package

That's it. Now we are ready to run the tests.

Load the data

./bin/ycsb load bangdb -threads 128 -s -P workloads/workloada

Run the workload

./bin/ycsb run bangdb -threads 128 -s -P workloads/workloada

See the README file under bangdb folder to see more details.