Modified from https://github.com/wangziqi2016/index-microbench
- Python3
- Openjdk
sudo ln -sf /usr/bin/python3 /usr/bin/python
YCSB is already included
-
Download YCSB
curl -O --location https://github.com/brianfrankcooper/YCSB/releases/download/0.11.0/ycsb-0.11.0.tar.gz tar xfvz ycsb-0.11.0.tar.gz mv ycsb-0.11.0 YCSB
-
Create Workload Spec
The default workload a-f are in ./workload_spec
You can of course generate your own spec and put it in this folder.
-
Modify workload_config.inp
1st arg: workload spec file name 2nd arg: key type (randint = random integer; monoint = monotonically increasing integer; email = email keys with host name reversed)
-
Generate
make generate_workload
The generated workload files will be in ./workloads
-
NOTE: To generate email-key workloads, you need an email list (list.txt)# index-microbench
This index benchmarking framework has been used as the experimental environment for the following research papers:
Ziqi Wang, Andrew Pavlo, Hyeontaek Lim, Viktor Leis, Huanchen Zhang, Michael Kaminsky, and David G. Andersen. 2018. Building a Bw-Tree Takes More Than Just Buzz Words. In Proceedings of 2018 International Conference on Management of Data (SIGMOD’18). ACM, New York, NY, USA, 16 pages. https://doi.org/10.1145/3183713.3196895