osdldbt / dbt3 Goto Github PK
View Code? Open in Web Editor NEWDatabase Test 3: Fair Use TPC Benchmark(TM) H kit
Home Page: https://osdldbt.github.io/dbt3/
License: Artistic License 2.0
Database Test 3: Fair Use TPC Benchmark(TM) H kit
Home Page: https://osdldbt.github.io/dbt3/
License: Artistic License 2.0
Hello, I met some problems while building TPC-H Tools for MySQL. I refered to the INSTALL.rst and user's guide. The user's guide says dbt3 supports MySQL but it didn't work when I want to use dbt3-build-dbgen
.
The command line is following:
./dbt3-build-dbgen --patch-dir=/home/czhang/mysql-dbt3/share/dbt3/patches --query-dir=/home/czhang/mysql-dbt3/share/dbt3/queries mysql /home/czhang/mysql-tpch
But the ERROR is reported: ERROR: Unhandled DBMS: mysql
dbt3 doesn't seem to natively support MySQL, so I have two questions I'd like to get help:
Thank you for your help very much!
Hi,
Thanks for maintaining dbt3!
I've been using it to benchmark PostgreSQL over the past few weeks and I just noticed that the generated statistics in summary.rst
don't make sense. As an example:
======== ======== ======== ======== ======== ======== ======== ========
Stream Q1 Q2 Q3 Q4 Q5 Q6 Q7
======== ======== ======== ======== ======== ======== ======== ========
1 1.73 0.26 0.41 0.13 0.79 0.35 1.00
2 1.74 0.25 0.40 0.14 0.79 0.36 0.97
Min 1.74 0.25 0.40 0.14 0.79 0.36 0.97
Max 1.74 0.25 0.40 0.14 0.79 0.36 0.97
Avg 0.87 0.12 0.20 0.07 0.39 0.18 0.48
======== ======== ======== ======== ======== ======== ======== ========
As you can see, both Min and Max are simply the value of the last stream, whilst Avg is the last stream divided by the number of streams. As an example, Q1 here is reported to have an average of 0.87 instead of the correct 1.74. (The same type of errors can be seen in the example in doc/dbt3.rst
.)
If we take a look at what the script does, the error is evident:
dbt3/scripts/dbt3-post-process.in
Lines 199 to 218 in a668b1d
STREAM
is set in a for loop further up in the script, but this section is not contained within it. Thus, STREAM
just retains its latest value (in this case 2) and the basis of the calculation becomes just the final stream instead of all streams.
Looking at the history for scripts/dbt3-post-process.in
, I believe this error was introduced when the post-processing was converted from R to shell in a1719d7.
I think a solution would be to not use the STREAM
variable in the STRING
regex for the aggregations, e.g.
STRING="^PERF\.THRUPUT\.QS[[:digit:]]\+\.Q${Q},"
Happy to make a PR if you agree!
All the best,
Ole
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.