tpc-h's Introduction
######################################################################################## TPC-H benchmark scripts for Greenplum and PostgreSQL databases. ######################################################################################## Supported versions: Greenplum 4.3, 5.*, 6.* Open Source Greenplum 5.*, 6.* Beta: PostgreSQL 10.* ######################################################################################## TPC-H Information ######################################################################################## Based on version 2.17.1 of TPC-H. ######################################################################################## Query Options ######################################################################################## You can have the queries execute with "EXPLAIN ANALYZE" in order to see exactly the query plan used, the cost, the memory used, etc. This is done in tpch_variables.sh like this: EXPLAIN_ANALYZE="true" Note: The EXPLAIN ANALYZE option is only available when using the standard TPC-H queries. ######################################################################################## Storage Options ######################################################################################## Table storage is defined in functions.sh and is configured for optimal performance. ######################################################################################## Prerequisites ######################################################################################## 1. Supported Database installed and running 2. Connectivity is possible to the MASTER_HOST and from the Data Nodes / Segment Hosts 3. Root access ######################################################################################## Installation ######################################################################################## 1. ssh to the master host with root ssh root@mdw 2. Download the tpch.sh file curl https://raw.githubusercontent.com/pivotalguru/TPC-H/master/tpch.sh > tpch.sh chmod 755 tpch.sh ######################################################################################## Variables and Configuration ######################################################################################## By default, the installation will create the scripts in /pivotalguru/TPC-H on the Master host. Variables can be changed by editing the dynamically configured /root/tpch_variables.sh file that is created the first time tpch.sh is run. Also by default, TPC-H files are generated on each Segment Host / Data Node in the Segement's PGDATA/pivotalguru directory. If there isn't enough space in this directory in each Segment, you can create a symbolic link to a drive location that does have enough space. ######################################################################################## Execution ######################################################################################## 1. Execute tpch.sh ./tpch.sh ######################################################################################## Notes ######################################################################################## - tpch_variables.sh file will be created with variables you can adjust - Files for the benchmark will be created in a sub-directory named pivotalguru located in each segment directory on each segment host / data node. You can update these directories to be symbolic links to better utilize the disk volumes you have available. - Example of running tpch as root as a background process: nohup ./tpch.sh > tpch.log 2>&1 < tpch.log & ######################################################################################## TPC-H Minor Modifications ######################################################################################## 1. Query alternative 15 was used in favor of the original so it is easier to parse in these scripts. Performance is essentially the same for both versions. 2. Query 1 documentation doesn't match query provided by TPC. Range is supposed to be dynamically set between 60 and 120 days and substitution doesn't seem to be working with qgen. So, hard code 90 days until this can be fixed by TPC.
tpc-h's People
Forkers
amanjeetsingh yydzero aspros-zhong rz1970 joe2hpimn dystudio lianghco frankgh se7enshidb greenplum-db plaidcloud galler-alexander vedanthh edespino ryanwei enchanterblue ivanievlevtpc-h's Issues
Intranet machines do not need to check for the latest version of the code
If the Intranet machine server is not networked, the test cannot be performed。Intranet machines do not need to check for the latest version of the code
Modify the code at the end of the tpch.sh
for j in $(curl google.com 2>&1 | grep "Couldn't resolve host"); do
internet_down="1"
done
if [ "$internet_down" -eq "0" ]; then
yum_installs
repo_init
script_check
else
echo "############################################################################"
echo "Couldn't resolve host,The local code is not checked for the latest version."
echo "############################################################################"
echo ""
fi
Update documentation - GUCs reconfigured at runtime
Hi
Can we please either update the documentation and/or add more verbosity to the script along the lines that this script will turn on PQO (and make it the default optimiser) in case it's switched off on a GP database cluster.
Currently, the script enables PQO at the start of the run but leaves it set as the default optimiser once it's done. PQO is not the default optimiser for previous versions of GP (Example - 4.3.10).
Ideally, it would be good that the script switches off the PQO at the end of the run in case it (the script) turned it (PQO) on at runtime.
The script is great and I used it to collect TPC-H benchmarks before we migrate to new GP environment! Thanks.
-Amanjeet
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.