oltpbench
oltpbench copied to clipboard
Clean up 'config' directory
Our config directory is a mess. People have been adding things in there without any consistent naming scheme or convention:
https://github.com/oltpbenchmark/oltpbench/tree/master/config
I propose the following changes:
- Make two sub-dirs called 'benchmarks' and 'systems':
- The 'benchmarks' directory will contain a sample file for each benchmark that we support. They will be named
sample_<name>_config.xml. - The 'systems' directory will contain sample files for each DBMS that we support. They target benchmark will always be YCSB. They will be named
<system>_ycsb_config.xml
- The 'benchmarks' directory will contain a sample file for each benchmark that we support. They will be named
- Remove the 'traces' directory. No benchmark uses theses anymore.
- Remove the 'extra' directory. The only thing in there now is for LinkBench. These should be moved into the specific benchmark handler code.
- Add a README that describes what the different options mean in the config file.
- Remove 'plugin.xml'. I think that with reflection that we can automatically find these class files now without this file.
I am using oltpbench for my thesis, so I'd like to spend sometime on this issue. What about all the pending PR using the old config style?
btw: Is it possible to add some docker file to test various database locally, it's much easier and cleaner than setup database use package manager during development. Also making testing different version of database easier, for instance, tpcc failed for mysql 8.0 https://github.com/benchhub/forks/issues/2
btw: twitter benchmark is using config/traces/twitter_tweetids.txt ...
actually someone already did something similar long time ago :sweat_smile: (based on git commit) https://github.com/rijalati/docker-oltpbench/tree/master/config-templates