I just created a distributed key-value store (written in C++) for a grad research project, and need to test it with some standard db benchmarks. I would like to run the TPC-C and YCSB benchmarks on it. They key-value store provides ACID (transactional) semantics, but does not have a SQL interface. It supports two APIs : read()
and write()
.
My question is the following: what is the quickest way to run TPC-C (or YCSB+T, or any other db benchmark) on my database? Do I create a SQL interface on top of my k-v store (not sure how easy/difficult this will be)? Or do I write the TPC-C queries in terms of reads/writes, from the TPC-C benchmark specification?
Is there a different way to do this, like modifying an existing tool that does most of the heavy lifting to work with my kv-store?