blob: 640f54bd5a17b01294cecda7f9a7bbe150bb2f9d [file] [log] [blame]
#
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
#
# Thin JDBC driver benchmarks for select and select with join queries.
#
now0=`date +'%H%M%S'`
# JVM options.
JVM_OPTS=${JVM_OPTS}" -DIGNITE_QUIET=false"
# Uncomment to enable concurrent garbage collection (GC) if you encounter long GC pauses.
JVM_OPTS=${JVM_OPTS}" \
-Xms8g \
-Xmx8g \
-Xloggc:./gc${now0}.log \
-XX:+PrintGCDetails \
-verbose:gc \
-XX:+UseParNewGC \
-XX:+UseConcMarkSweepGC \
-XX:+PrintGCDateStamps \
"
#Ignite version
ver="RELEASE-"
# List of default probes.
# Add DStatProbe or VmStatProbe if your OS supports it (e.g. if running on Linux).
BENCHMARK_DEFAULT_PROBES=ThroughputLatencyProbe,PercentileProbe,DStatProbe
# Packages where the specified benchmark is searched by reflection mechanism.
BENCHMARK_PACKAGES=org.yardstickframework,org.apache.ignite.yardstick
# Flag which indicates to restart the servers before every benchmark execution.
RESTART_SERVERS=true
# Probe point writer class name.
# BENCHMARK_WRITER=
# This benchmark is designed to use only one node.
SERVER_HOSTS=localhost
DRIVER_HOSTS=localhost
# Remote username.
# REMOTE_USER=
# Number of nodes, used to wait for the specified number of nodes to start.
nodesNum=$((`echo ${SERVER_HOSTS} | tr ',' '\n' | wc -l` + `echo ${DRIVER_HOSTS} | tr ',' '\n' | wc -l`))
# Warmup.
w=60
# Duration.
d=300
# Threads count.
t=1
inmemCfg="${SCRIPT_DIR}/../config/vendors/ignite-config-inmemory.xml"
persistCfg="${SCRIPT_DIR}/../config/vendors/ignite-config-persistence.xml"
thinUrl="jdbc:ignite:thin://localhost/"
v2Url="jdbc:ignite:cfg://cache=fakeCache@config/ignite-jdbc-config.xml"
commonParams="\
-nn ${nodesNum} \
-w ${w} -d ${d} \
-cl --clientNodesAfterId -1 \
-t ${t} \
-sn IgniteNode"
# Run configuration which contains all benchmarks.
# Note that each benchmark is set to run for 300 seconds (5 min) with warm-up set to 60 seconds (1 minute).
CONFIGS="\
${commonParams} -cfg ${inmemCfg} -jdbc ${thinUrl} -dn SelectBySalaryBenchmark -ds ${ver}select-idx-field-jdbc-thin-inmemory --sqlRange 1000 --range 1000000, \
${commonParams} -cfg ${inmemCfg} -jdbc ${v2Url} -dn SelectBySalaryBenchmark -ds ${ver}select-idx-field-jdbc-v2-inmemory --sqlRange 1000 --range 1000000, \
${commonParams} -cfg ${persistCfg} -jdbc ${thinUrl} -dn SelectBySalaryBenchmark -ds ${ver}select-idx-field-jdbc-thin-persistence --sqlRange 1000 --range 1000000, \
${commonParams} -cfg ${persistCfg} -jdbc ${v2Url} -dn SelectBySalaryBenchmark -ds ${ver}select-idx-field-jdbc-v2-persistence --sqlRange 1000 --range 1000000, \
\
${commonParams} -cfg ${inmemCfg} -jdbc ${thinUrl} -dn SelectBySalaryWithJoinBenchmark -ds ${ver}select-idx-field-join-jdbc-thin-inmemory --sqlRange 1000 --range 1000000, \
${commonParams} -cfg ${inmemCfg} -jdbc ${v2Url} -dn SelectBySalaryWithJoinBenchmark -ds ${ver}select-idx-field-join-jdbc-v2-inmemory --sqlRange 1000 --range 1000000, \
${commonParams} -cfg ${persistCfg} -jdbc ${thinUrl} -dn SelectBySalaryWithJoinBenchmark -ds ${ver}select-idx-field-join-jdbc-thin-persistence --sqlRange 1000 --range 1000000, \
${commonParams} -cfg ${persistCfg} -jdbc ${v2Url} -dn SelectBySalaryWithJoinBenchmark -ds ${ver}select-idx-field-join-jdbc-v2-persistence --sqlRange 1000 --range 1000000, \
\
${commonParams} -cfg ${inmemCfg} -jdbc ${thinUrl} -dn SelectByPkBenchmark -ds ${ver}select-pk-jdbc-thin-inmemory --range 1000000, \
${commonParams} -cfg ${inmemCfg} -jdbc ${v2Url} -dn SelectByPkBenchmark -ds ${ver}select-pk-jdbc-v2-inmemory --range 1000000, \
${commonParams} -cfg ${persistCfg} -jdbc ${thinUrl} -dn SelectByPkBenchmark -ds ${ver}select-pk-jdbc-thin-persistence --range 1000000, \
${commonParams} -cfg ${persistCfg} -jdbc ${v2Url} -dn SelectByPkBenchmark -ds ${ver}select-pk-jdbc-v2-persistence --range 1000000, \
\
${commonParams} -cfg ${inmemCfg} -jdbc ${thinUrl} -dn SelectByPkWithJoinBenchmark -ds ${ver}select-pk-join-jdbc-thin-inmemory --range 1000000,\
${commonParams} -cfg ${inmemCfg} -jdbc ${v2Url} -dn SelectByPkWithJoinBenchmark -ds ${ver}select-pk-join-jdbc-v2-inmemory --range 1000000,\
${commonParams} -cfg ${persistCfg} -jdbc ${thinUrl} -dn SelectByPkWithJoinBenchmark -ds ${ver}select-pk-join-jdbc-thin-persistence --range 1000000,\
${commonParams} -cfg ${persistCfg} -jdbc ${v2Url} -dn SelectByPkWithJoinBenchmark -ds ${ver}select-pk-join-jdbc-v2-persistence --range 1000000 \
"