-
Notifications
You must be signed in to change notification settings - Fork 0
/
all-in-one.sh
executable file
·95 lines (77 loc) · 4.59 KB
/
all-in-one.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
cd runners
mkdir -p /app/results/e1
mkdir -p /app/results/e2
mkdir -p /app/results/e3
mkdir -p /app/results/e4
# SQL equivalence benchmarks
echo [1] SQL equivalence benchmarks:
echo Running SQLSolver on Calcite...
python run-tests-sqlsolver.py -tests calcite -time -tsv /app/results/e1/sqlsolver-calcite.tsv > /app/results/e1/sqlsolver-calcite.log 2>&1
echo Running SQLSolver on Spark...
python run-tests-sqlsolver.py -tests spark -time -tsv /app/results/e1/sqlsolver-spark.tsv > /app/results/e1/sqlsolver-spark.log 2>&1
echo Running SQLSolver on TPC-C...
python run-tests-sqlsolver.py -tests tpcc -time -tsv /app/results/e1/sqlsolver-tpcc.tsv > /app/results/e1/sqlsolver-tpcc.log 2>&1
echo Running SQLSolver on TPC-H...
python run-tests-sqlsolver.py -tests tpch -time -tsv /app/results/e1/sqlsolver-tpch.tsv > /app/results/e1/sqlsolver-tpch.log 2>&1
echo Running SPES on Calcite...
python run-tests-spes.py -tests calcite -time -tsv /app/results/e1/spes-calcite.tsv > /app/results/e1/spes-calcite.log 2>&1
echo Running SPES on Spark...
python run-tests-spes.py -tests spark -time -tsv /app/results/e1/spes-spark.tsv > /app/results/e1/spes-spark.log 2>&1
echo Running SPES on TPC-C...
python run-tests-spes.py -tests tpcc -time -tsv /app/results/e1/spes-tpcc.tsv > /app/results/e1/spes-tpcc.log 2>&1
echo Running SPES on TPC-H...
python run-tests-spes.py -tests tpch -time -tsv /app/results/e1/spes-tpch.tsv > /app/results/e1/spes-tpch.log 2>&1
echo Running UDP on Calcite...
python run-tests-udp.py -tests calcite -time -tsv /app/results/e1/udp-calcite.tsv > /app/results/e1/udp-calcite.log 2>&1
echo Running UDP on Spark...
python run-tests-udp.py -tests spark -time -tsv /app/results/e1/udp-spark.tsv > /app/results/e1/udp-spark.log 2>&1
echo Running UDP on TPC-C...
python run-tests-udp.py -tests tpcc -time -tsv /app/results/e1/udp-tpcc.tsv > /app/results/e1/udp-tpcc.log 2>&1
echo Running UDP on TPC-H...
python run-tests-udp.py -tests tpch -time -tsv /app/results/e1/udp-tpch.tsv > /app/results/e1/udp-tpch.log 2>&1
echo Running WeTune on Calcite...
python run-tests-wetune.py -tests calcite -time -tsv /app/results/e1/wetune-calcite.tsv > /app/results/e1/wetune-calcite.log 2>&1
echo Running WeTune on Spark...
python run-tests-wetune.py -tests spark -time -tsv /app/results/e1/wetune-spark.tsv > /app/results/e1/wetune-spark.log 2>&1
echo Running WeTune on TPC-C...
python run-tests-wetune.py -tests tpcc -time -tsv /app/results/e1/wetune-tpcc.tsv > /app/results/e1/wetune-tpcc.log 2>&1
echo Running WeTune on TPC-H...
python run-tests-wetune.py -tests tpch -time -tsv /app/results/e1/wetune-tpch.tsv > /app/results/e1/wetune-tpch.log 2>&1
# Combine the ORDER BY algorithm with other verifiers
echo [2] Combine the ORDER BY algorithm with other verifiers:
echo Running SPES on Calcite...
python no-order-by-spes.py -tests calcite > /app/results/e2/spes-calcite.log 2>&1
echo Running SPES on Spark...
python no-order-by-spes.py -tests spark > /app/results/e2/spes-spark.log 2>&1
echo Running SPES on TPC-C...
python no-order-by-spes.py -tests tpcc > /app/results/e2/spes-tpcc.log 2>&1
echo Running SPES on TPC-H...
python no-order-by-spes.py -tests tpch > /app/results/e2/spes-tpch.log 2>&1
echo Running UDP on Calcite...
python no-order-by-udp.py -tests calcite > /app/results/e2/udp-calcite.log 2>&1
echo Running UDP on Spark...
python no-order-by-udp.py -tests spark > /app/results/e2/udp-spark.log 2>&1
echo Running UDP on TPC-C...
python no-order-by-udp.py -tests tpcc > /app/results/e2/udp-tpcc.log 2>&1
echo Running UDP on TPC-H...
python no-order-by-udp.py -tests tpch > /app/results/e2/udp-tpch.log 2>&1
echo Running WeTune on Calcite...
python no-order-by-wetune.py -tests calcite > /app/results/e2/wetune-calcite.log 2>&1
echo Running WeTune on Spark...
python no-order-by-wetune.py -tests spark > /app/results/e2/wetune-spark.log 2>&1
echo Running WeTune on TPC-C...
python no-order-by-wetune.py -tests tpcc > /app/results/e2/wetune-tpcc.log 2>&1
echo Running WeTune on TPC-H...
python no-order-by-wetune.py -tests tpch > /app/results/e2/wetune-tpch.log 2>&1
# Discovery of rules
echo [3] Discovery of rules:
echo Running SQLSolver on rules found by WeTune...
python verify-rules-sqlsolver.py -tests wetune > /app/results/e3/wetune.log 2>&1
echo Running SQLSolver on rules found by SQLSolver...
python verify-rules-sqlsolver.py -tests sqlsolver > /app/results/e3/sqlsolver.log 2>&1
# Query latency improvement
echo [4] Query latency improvement:
echo Running the case study on SQL Server...
python run-useful-rewrite-example.py > /app/results/e4/sql-server.log 2>&1
echo Generate the reproduction results
python postprocess.py > /app/results/reproduction.txt 2>&1