BenchmarkSQL is a GPLv2 fair-use TPC-C like testing tool. By changing the percentage mix of the transactions, you can simulate many different workloads.
This is an early stage modification with a lot of issues to fix
💡 Remember to have a blank database ready with the name of your own choosing, preferably located in a dbspace different than rootdbs. For the purpose of this demo I'm using name bmsql
To run the software follow either original how-to OR steps described below:
-
Clone this repository
-
Enter into benchmarksql directory
-
Run
ant
and wait for it to build. Expected output should look similar to the one below:
$ ant Buildfile: /home/pi/GITHUB/benchmarksql/build.xml init: compile: [javac] Compiling 11 source files to benchmarksql/build dist: [jar] Building jar: benchmarksql/dist/BenchmarkSQL-5.1.jar BUILD SUCCESSFUL Total time: 4 seconds
-
Edit or copy run/sample.informix.properties file and modify it acordingly - change connection string for informix jdbc. Additional Informix environment settings are up to you and those provided in the sample are for demo purpose.
-
Enter run directory and run:
benchmarksql/run $ ./runDatabaseBuild.sh sample.informix.properties
wait for it to finish and then
benchmarksql/run $ ./runBenchmark.sh sample.informix.properties
wait for it ✨
-
Before you run another round do
benchmarksql/run $ ./runDatabaseDestroy.sh sample.informix.properties
TODO
-
tune run/sql.informix content (current version was prepared quickly without much optimization)
-
get rid of (-268) ISAM error probably due to lack of procedures - see below
-
write SPL procedures based on postgres counterpart in run/sql.postgres/storedPRocedureCreates.sql