This is an automated email from the ASF dual-hosted git repository.

github-merge-queue[bot] pushed a commit to branch 
gh-readonly-queue/main/pr-22660-1465d6fa4e580638bb8e0987adc33d8892a31547
in repository https://gitbox.apache.org/repos/asf/datafusion.git

commit 0d3fb77a136d77c8e9aa34aa5db2d6162e256232
Author: Bruce Ritchie <[email protected]>
AuthorDate: Fri Jun 5 15:46:58 2026 -0400

    Add h2o SQL benchmark (#22660)
    
    ## Which issue does this PR close?
    
    Part of #21706
    
    ## Rationale for this change
    
    Continue work on sql benchmark migration.
    
    ## What changes are included in this PR?
    
    h2o sql benchmark
    
    ## Are these changes tested?
    
    Yes
    
    `BENCH_NAME=h2o BENCH_SUBGROUP=groupby H2O_BENCH_SIZE=small
    H2O_FILE_TYPE=csv cargo bench --bench sql`
    `BENCH_NAME=h2o BENCH_SUBGROUP=groupby H2O_BENCH_SIZE=small
    H2O_FILE_TYPE=parquet cargo bench --bench sql`
    `BENCH_NAME=h2o BENCH_SUBGROUP=groupby H2O_BENCH_SIZE=medium
    H2O_FILE_TYPE=csv cargo bench --bench sql`
    `BENCH_NAME=h2o BENCH_SUBGROUP=groupby H2O_BENCH_SIZE=medium
    H2O_FILE_TYPE=parquet cargo bench --bench sql`
    
    `BENCH_NAME=h2o BENCH_SUBGROUP=join H2O_BENCH_SIZE=small
    H2O_FILE_TYPE=csv cargo bench --bench sql`
    `BENCH_NAME=h2o BENCH_SUBGROUP=join H2O_BENCH_SIZE=small
    H2O_FILE_TYPE=parquet cargo bench --bench sql`
    `BENCH_NAME=h2o BENCH_SUBGROUP=join H2O_BENCH_SIZE=medium
    H2O_FILE_TYPE=csv cargo bench --bench sql`
    `BENCH_NAME=h2o BENCH_SUBGROUP=join H2O_BENCH_SIZE=medium
    H2O_FILE_TYPE=parquet cargo bench --bench sql`
    
    `BENCH_NAME=h2o BENCH_SUBGROUP=window H2O_BENCH_SIZE=small
    H2O_FILE_TYPE=csv cargo bench --bench sql`
    `BENCH_NAME=h2o BENCH_SUBGROUP=window H2O_BENCH_SIZE=small
    H2O_FILE_TYPE=parquet cargo bench --bench sql`
    `BENCH_NAME=h2o BENCH_SUBGROUP=window H2O_BENCH_SIZE=medium
    H2O_FILE_TYPE=csv cargo bench --bench sql`
    `BENCH_NAME=h2o BENCH_SUBGROUP=window H2O_BENCH_SIZE=medium
    H2O_FILE_TYPE=parquet cargo bench --bench sql`
    
    I was unable to run the following because of limited memory:
    
    `BENCH_NAME=h2o BENCH_SUBGROUP=groupby H2O_BENCH_SIZE=big
    H2O_FILE_TYPE=csv cargo bench --bench sql`
    `BENCH_NAME=h2o BENCH_SUBGROUP=groupby H2O_BENCH_SIZE=big
    H2O_FILE_TYPE=parquet cargo bench --bench sql`
    `BENCH_NAME=h2o BENCH_SUBGROUP=join H2O_BENCH_SIZE=big H2O_FILE_TYPE=csv
    cargo bench --bench sql`
    `BENCH_NAME=h2o BENCH_SUBGROUP=join H2O_BENCH_SIZE=big
    H2O_FILE_TYPE=parquet cargo bench --bench sql`
    `BENCH_NAME=h2o BENCH_SUBGROUP=window H2O_BENCH_SIZE=big
    H2O_FILE_TYPE=csv cargo bench --bench sql`
    `BENCH_NAME=h2o BENCH_SUBGROUP=window H2O_BENCH_SIZE=big
    H2O_FILE_TYPE=parquet cargo bench --bench sql`
    
    ## Are there any user-facing changes?
    
    No
    
    ---------
    
    Co-authored-by: Andrew Lamb <[email protected]>
---
 .../h2o/benchmarks/groupby/q01.benchmark           | 20 ++++++++++++++
 .../h2o/benchmarks/groupby/q02.benchmark           | 20 ++++++++++++++
 .../h2o/benchmarks/groupby/q03.benchmark           | 20 ++++++++++++++
 .../h2o/benchmarks/groupby/q04.benchmark           | 20 ++++++++++++++
 .../h2o/benchmarks/groupby/q05.benchmark           | 20 ++++++++++++++
 .../h2o/benchmarks/groupby/q06.benchmark           | 20 ++++++++++++++
 .../h2o/benchmarks/groupby/q07.benchmark           | 20 ++++++++++++++
 .../h2o/benchmarks/groupby/q08.benchmark           | 22 +++++++++++++++
 .../h2o/benchmarks/groupby/q09.benchmark           | 20 ++++++++++++++
 .../h2o/benchmarks/groupby/q10.benchmark           | 18 ++++++++++++
 .../h2o/benchmarks/join/q01.benchmark              | 28 +++++++++++++++++++
 .../h2o/benchmarks/join/q02.benchmark              | 30 ++++++++++++++++++++
 .../h2o/benchmarks/join/q03.benchmark              | 30 ++++++++++++++++++++
 .../h2o/benchmarks/join/q04.benchmark              | 30 ++++++++++++++++++++
 .../h2o/benchmarks/join/q05.benchmark              | 32 ++++++++++++++++++++++
 .../h2o/benchmarks/window/q01.benchmark            | 25 +++++++++++++++++
 .../h2o/benchmarks/window/q02.benchmark            | 26 ++++++++++++++++++
 .../h2o/benchmarks/window/q03.benchmark            | 27 ++++++++++++++++++
 .../h2o/benchmarks/window/q04.benchmark            | 25 +++++++++++++++++
 .../h2o/benchmarks/window/q05.benchmark            | 26 ++++++++++++++++++
 .../h2o/benchmarks/window/q06.benchmark            | 25 +++++++++++++++++
 .../h2o/benchmarks/window/q07.benchmark            | 25 +++++++++++++++++
 .../h2o/benchmarks/window/q08.benchmark            | 25 +++++++++++++++++
 .../h2o/benchmarks/window/q09.benchmark            | 26 ++++++++++++++++++
 .../h2o/benchmarks/window/q10.benchmark            | 25 +++++++++++++++++
 .../h2o/benchmarks/window/q11.benchmark            | 25 +++++++++++++++++
 .../h2o/benchmarks/window/q12.benchmark            | 25 +++++++++++++++++
 .../h2o/init/load_groupby_big_csv.sql              |  1 +
 .../h2o/init/load_groupby_big_parquet.sql          |  1 +
 .../h2o/init/load_groupby_medium_csv.sql           |  1 +
 .../h2o/init/load_groupby_medium_parquet.sql       |  1 +
 .../h2o/init/load_groupby_small_csv.sql            |  1 +
 .../h2o/init/load_groupby_small_parquet.sql        |  1 +
 .../sql_benchmarks/h2o/init/load_join_big_csv.sql  |  7 +++++
 .../h2o/init/load_join_big_parquet.sql             |  7 +++++
 .../h2o/init/load_join_medium_csv.sql              |  7 +++++
 .../h2o/init/load_join_medium_parquet.sql          |  7 +++++
 .../h2o/init/load_join_small_csv.sql               |  7 +++++
 .../h2o/init/load_join_small_parquet.sql           |  7 +++++
 .../h2o/init/load_window_big_csv.sql               |  1 +
 .../h2o/init/load_window_big_parquet.sql           |  1 +
 .../h2o/init/load_window_medium_csv.sql            |  1 +
 .../h2o/init/load_window_medium_parquet.sql        |  1 +
 .../h2o/init/load_window_small_csv.sql             |  1 +
 .../h2o/init/load_window_small_parquet.sql         |  1 +
 45 files changed, 709 insertions(+)

diff --git a/benchmarks/sql_benchmarks/h2o/benchmarks/groupby/q01.benchmark 
b/benchmarks/sql_benchmarks/h2o/benchmarks/groupby/q01.benchmark
new file mode 100644
index 0000000000..e499243c55
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/benchmarks/groupby/q01.benchmark
@@ -0,0 +1,20 @@
+subgroup groupby
+
+name Q01
+group h2o
+
+echo Loading ${H2O_BENCH_SIZE:-small} groupby ${H2O_FILE_TYPE:-csv} h2o data
+
+load 
sql_benchmarks/h2o/init/load_groupby_${H2O_BENCH_SIZE:-small}_${H2O_FILE_TYPE:-csv}.sql
+
+assert I
+SELECT COUNT(*) > 0 FROM x
+----
+true
+
+run
+SELECT id1, SUM(v1) AS v1
+FROM x
+GROUP BY id1;
+
+result sql_benchmarks/h2o/results/groupby/${H2O_BENCH_SIZE:-small}/q01.csv
diff --git a/benchmarks/sql_benchmarks/h2o/benchmarks/groupby/q02.benchmark 
b/benchmarks/sql_benchmarks/h2o/benchmarks/groupby/q02.benchmark
new file mode 100644
index 0000000000..a147757438
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/benchmarks/groupby/q02.benchmark
@@ -0,0 +1,20 @@
+subgroup groupby
+
+name Q02
+group h2o
+
+echo Loading ${H2O_BENCH_SIZE:-small} groupby ${H2O_FILE_TYPE:-csv} h2o data
+
+load 
sql_benchmarks/h2o/init/load_groupby_${H2O_BENCH_SIZE:-small}_${H2O_FILE_TYPE:-csv}.sql
+
+assert I
+SELECT COUNT(*) > 0 FROM x
+----
+true
+
+run
+SELECT id1, id2, SUM(v1) AS v1
+FROM x
+GROUP BY id1, id2;
+
+result sql_benchmarks/h2o/results/groupby/${H2O_BENCH_SIZE:-small}/q02.csv
diff --git a/benchmarks/sql_benchmarks/h2o/benchmarks/groupby/q03.benchmark 
b/benchmarks/sql_benchmarks/h2o/benchmarks/groupby/q03.benchmark
new file mode 100644
index 0000000000..4368bc9f46
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/benchmarks/groupby/q03.benchmark
@@ -0,0 +1,20 @@
+subgroup groupby
+
+name Q03
+group h2o
+
+echo Loading ${H2O_BENCH_SIZE:-small} groupby ${H2O_FILE_TYPE:-csv} h2o data
+
+load 
sql_benchmarks/h2o/init/load_groupby_${H2O_BENCH_SIZE:-small}_${H2O_FILE_TYPE:-csv}.sql
+
+assert I
+SELECT COUNT(*) > 0 FROM x
+----
+true
+
+run
+SELECT id3, SUM(v1) AS v1, AVG(v3) AS v3
+FROM x
+GROUP BY id3;
+
+result sql_benchmarks/h2o/results/groupby/${H2O_BENCH_SIZE:-small}/q03.csv
diff --git a/benchmarks/sql_benchmarks/h2o/benchmarks/groupby/q04.benchmark 
b/benchmarks/sql_benchmarks/h2o/benchmarks/groupby/q04.benchmark
new file mode 100644
index 0000000000..1813613e5d
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/benchmarks/groupby/q04.benchmark
@@ -0,0 +1,20 @@
+subgroup groupby
+
+name Q04
+group h2o
+
+echo Loading ${H2O_BENCH_SIZE:-small} groupby ${H2O_FILE_TYPE:-csv} h2o data
+
+load 
sql_benchmarks/h2o/init/load_groupby_${H2O_BENCH_SIZE:-small}_${H2O_FILE_TYPE:-csv}.sql
+
+assert I
+SELECT COUNT(*) > 0 FROM x
+----
+true
+
+run
+SELECT id4, AVG(v1) AS v1, AVG(v2) AS v2, AVG(v3) AS v3
+FROM x
+GROUP BY id4;
+
+result sql_benchmarks/h2o/results/groupby/${H2O_BENCH_SIZE:-small}/q04.csv
diff --git a/benchmarks/sql_benchmarks/h2o/benchmarks/groupby/q05.benchmark 
b/benchmarks/sql_benchmarks/h2o/benchmarks/groupby/q05.benchmark
new file mode 100644
index 0000000000..dc6b4a4fea
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/benchmarks/groupby/q05.benchmark
@@ -0,0 +1,20 @@
+subgroup groupby
+
+name Q05
+group h2o
+
+echo Loading ${H2O_BENCH_SIZE:-small} groupby ${H2O_FILE_TYPE:-csv} h2o data
+
+load 
sql_benchmarks/h2o/init/load_groupby_${H2O_BENCH_SIZE:-small}_${H2O_FILE_TYPE:-csv}.sql
+
+assert I
+SELECT COUNT(*) > 0 FROM x
+----
+true
+
+run
+SELECT id6, SUM(v1) AS v1, SUM(v2) AS v2, SUM(v3) AS v3
+FROM x
+GROUP BY id6;
+
+result sql_benchmarks/h2o/results/groupby/${H2O_BENCH_SIZE:-small}/q05.csv
diff --git a/benchmarks/sql_benchmarks/h2o/benchmarks/groupby/q06.benchmark 
b/benchmarks/sql_benchmarks/h2o/benchmarks/groupby/q06.benchmark
new file mode 100644
index 0000000000..67eaeafaf8
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/benchmarks/groupby/q06.benchmark
@@ -0,0 +1,20 @@
+subgroup groupby
+
+name Q06
+group h2o
+
+echo Loading ${H2O_BENCH_SIZE:-small} groupby ${H2O_FILE_TYPE:-csv} h2o data
+
+load 
sql_benchmarks/h2o/init/load_groupby_${H2O_BENCH_SIZE:-small}_${H2O_FILE_TYPE:-csv}.sql
+
+assert I
+SELECT COUNT(*) > 0 FROM x
+----
+true
+
+run
+SELECT id4, id5, MEDIAN(v3) AS median_v3, STDDEV(v3) AS sd_v3
+FROM x
+GROUP BY id4, id5;
+
+result sql_benchmarks/h2o/results/groupby/${H2O_BENCH_SIZE:-small}/q06.csv
diff --git a/benchmarks/sql_benchmarks/h2o/benchmarks/groupby/q07.benchmark 
b/benchmarks/sql_benchmarks/h2o/benchmarks/groupby/q07.benchmark
new file mode 100644
index 0000000000..faa125eb9e
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/benchmarks/groupby/q07.benchmark
@@ -0,0 +1,20 @@
+subgroup groupby
+
+name Q07
+group h2o
+
+echo Loading ${H2O_BENCH_SIZE:-small} groupby ${H2O_FILE_TYPE:-csv} h2o data
+
+load 
sql_benchmarks/h2o/init/load_groupby_${H2O_BENCH_SIZE:-small}_${H2O_FILE_TYPE:-csv}.sql
+
+assert I
+SELECT COUNT(*) > 0 FROM x
+----
+true
+
+run
+SELECT id3, MAX(v1) - MIN(v2) AS range_v1_v2
+FROM x
+GROUP BY id3;
+
+result sql_benchmarks/h2o/results/groupby/${H2O_BENCH_SIZE:-small}/q07.csv
diff --git a/benchmarks/sql_benchmarks/h2o/benchmarks/groupby/q08.benchmark 
b/benchmarks/sql_benchmarks/h2o/benchmarks/groupby/q08.benchmark
new file mode 100644
index 0000000000..54d46080c6
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/benchmarks/groupby/q08.benchmark
@@ -0,0 +1,22 @@
+subgroup groupby
+
+name Q08
+group h2o
+
+echo Loading ${H2O_BENCH_SIZE:-small} groupby ${H2O_FILE_TYPE:-csv} h2o data
+
+load 
sql_benchmarks/h2o/init/load_groupby_${H2O_BENCH_SIZE:-small}_${H2O_FILE_TYPE:-csv}.sql
+
+assert I
+SELECT COUNT(*) > 0 FROM x
+----
+true
+
+run
+SELECT id6, largest2_v3 FROM 
+   (
+        SELECT id6, v3 AS largest2_v3, ROW_NUMBER() OVER (PARTITION BY id6 
ORDER BY v3 DESC) AS order_v3 
+        FROM x WHERE v3 IS NOT NULL
+   ) sub_query WHERE order_v3 <= 2;
+
+result sql_benchmarks/h2o/results/groupby/${H2O_BENCH_SIZE:-small}/q08.csv
diff --git a/benchmarks/sql_benchmarks/h2o/benchmarks/groupby/q09.benchmark 
b/benchmarks/sql_benchmarks/h2o/benchmarks/groupby/q09.benchmark
new file mode 100644
index 0000000000..133ddef5c2
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/benchmarks/groupby/q09.benchmark
@@ -0,0 +1,20 @@
+subgroup groupby
+
+name Q09
+group h2o
+
+echo Loading ${H2O_BENCH_SIZE:-small} groupby ${H2O_FILE_TYPE:-csv} h2o data
+
+load 
sql_benchmarks/h2o/init/load_groupby_${H2O_BENCH_SIZE:-small}_${H2O_FILE_TYPE:-csv}.sql
+
+assert I
+SELECT COUNT(*) > 0 FROM x
+----
+true
+
+run
+SELECT id2, id4, POWER(CORR(v1, v2), 2) AS r2
+FROM x
+GROUP BY id2, id4;
+
+result sql_benchmarks/h2o/results/groupby/${H2O_BENCH_SIZE:-small}/q09.csv
diff --git a/benchmarks/sql_benchmarks/h2o/benchmarks/groupby/q10.benchmark 
b/benchmarks/sql_benchmarks/h2o/benchmarks/groupby/q10.benchmark
new file mode 100644
index 0000000000..a302ef2408
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/benchmarks/groupby/q10.benchmark
@@ -0,0 +1,18 @@
+subgroup groupby
+
+name Q10
+group h2o
+
+echo Loading ${H2O_BENCH_SIZE:-small} groupby ${H2O_FILE_TYPE:-csv} h2o data
+
+load 
sql_benchmarks/h2o/init/load_groupby_${H2O_BENCH_SIZE:-small}_${H2O_FILE_TYPE:-csv}.sql
+
+assert I
+SELECT COUNT(*) > 0 FROM x
+----
+true
+
+run
+SELECT id1, id2, id3, id4, id5, id6, SUM(v3) AS v3, COUNT(*) AS count FROM x 
GROUP BY id1, id2, id3, id4, id5, id6;
+
+result sql_benchmarks/h2o/results/groupby/${H2O_BENCH_SIZE:-small}/q10.csv
diff --git a/benchmarks/sql_benchmarks/h2o/benchmarks/join/q01.benchmark 
b/benchmarks/sql_benchmarks/h2o/benchmarks/join/q01.benchmark
new file mode 100644
index 0000000000..4271ba8e43
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/benchmarks/join/q01.benchmark
@@ -0,0 +1,28 @@
+subgroup join
+
+name Q01
+group h2o
+
+echo Loading ${H2O_BENCH_SIZE:-small} join ${H2O_FILE_TYPE:-csv} h2o data
+
+load 
sql_benchmarks/h2o/init/load_join_${H2O_BENCH_SIZE:-small}_${H2O_FILE_TYPE:-csv}.sql
+
+assert I
+SELECT COUNT(*) > 0 FROM x
+----
+true
+
+run
+SELECT x.id1,
+       x.id2,
+       x.id3,
+       x.id4     as xid4,
+       small.id4 as smallid4,
+       x.id5,
+       x.id6,
+       x.v1,
+       small.v2
+FROM x
+INNER JOIN small ON x.id1 = small.id1;
+
+result sql_benchmarks/h2o/results/join/${H2O_BENCH_SIZE:-small}/q01.csv
diff --git a/benchmarks/sql_benchmarks/h2o/benchmarks/join/q02.benchmark 
b/benchmarks/sql_benchmarks/h2o/benchmarks/join/q02.benchmark
new file mode 100644
index 0000000000..48369c4a58
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/benchmarks/join/q02.benchmark
@@ -0,0 +1,30 @@
+subgroup join
+
+name Q02
+group h2o
+
+echo Loading ${H2O_BENCH_SIZE:-small} join ${H2O_FILE_TYPE:-csv} h2o data
+
+load 
sql_benchmarks/h2o/init/load_join_${H2O_BENCH_SIZE:-small}_${H2O_FILE_TYPE:-csv}.sql
+
+assert I
+SELECT COUNT(*) > 0 FROM x
+----
+true
+
+run
+SELECT x.id1      as xid1,
+       medium.id1 as mediumid1,
+       x.id2,
+       x.id3,
+       x.id4      as xid4,
+       medium.id4 as mediumid4,
+       x.id5      as xid5,
+       medium.id5 as mediumid5,
+       x.id6,
+       x.v1,
+       medium.v2
+FROM x
+INNER JOIN medium ON x.id2 = medium.id2;
+
+result sql_benchmarks/h2o/results/join/${H2O_BENCH_SIZE:-small}/q02.csv
diff --git a/benchmarks/sql_benchmarks/h2o/benchmarks/join/q03.benchmark 
b/benchmarks/sql_benchmarks/h2o/benchmarks/join/q03.benchmark
new file mode 100644
index 0000000000..abf7296b21
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/benchmarks/join/q03.benchmark
@@ -0,0 +1,30 @@
+subgroup join
+
+name Q03
+group h2o
+
+echo Loading ${H2O_BENCH_SIZE:-small} join ${H2O_FILE_TYPE:-csv} h2o data
+
+load 
sql_benchmarks/h2o/init/load_join_${H2O_BENCH_SIZE:-small}_${H2O_FILE_TYPE:-csv}.sql
+
+assert I
+SELECT COUNT(*) > 0 FROM x
+----
+true
+
+run
+SELECT x.id1      as xid1,
+       medium.id1 as mediumid1,
+       x.id2,
+       x.id3,
+       x.id4      as xid4,
+       medium.id4 as mediumid4,
+       x.id5      as xid5,
+       medium.id5 as mediumid5,
+       x.id6,
+       x.v1,
+       medium.v2
+FROM x
+LEFT JOIN medium ON x.id2 = medium.id2;
+
+result sql_benchmarks/h2o/results/join/${H2O_BENCH_SIZE:-small}/q03.csv
diff --git a/benchmarks/sql_benchmarks/h2o/benchmarks/join/q04.benchmark 
b/benchmarks/sql_benchmarks/h2o/benchmarks/join/q04.benchmark
new file mode 100644
index 0000000000..8884fb38e8
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/benchmarks/join/q04.benchmark
@@ -0,0 +1,30 @@
+subgroup join
+
+name Q04
+group h2o
+
+echo Loading ${H2O_BENCH_SIZE:-small} join ${H2O_FILE_TYPE:-csv} h2o data
+
+load 
sql_benchmarks/h2o/init/load_join_${H2O_BENCH_SIZE:-small}_${H2O_FILE_TYPE:-csv}.sql
+
+assert I
+SELECT COUNT(*) > 0 FROM x
+----
+true
+
+run
+SELECT x.id1      as xid1,
+       medium.id1 as mediumid1,
+       x.id2,
+       x.id3,
+       x.id4      as xid4,
+       medium.id4 as mediumid4,
+       x.id5      as xid5,
+       medium.id5 as mediumid5,
+       x.id6,
+       x.v1,
+       medium.v2
+FROM x
+JOIN medium ON x.id5 = medium.id5;
+
+result sql_benchmarks/h2o/results/join/${H2O_BENCH_SIZE:-small}/q04.csv
diff --git a/benchmarks/sql_benchmarks/h2o/benchmarks/join/q05.benchmark 
b/benchmarks/sql_benchmarks/h2o/benchmarks/join/q05.benchmark
new file mode 100644
index 0000000000..19a5c47bfe
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/benchmarks/join/q05.benchmark
@@ -0,0 +1,32 @@
+subgroup join
+
+name Q05
+group h2o
+
+echo Loading ${H2O_BENCH_SIZE:-small} join ${H2O_FILE_TYPE:-csv} h2o data
+
+load 
sql_benchmarks/h2o/init/load_join_${H2O_BENCH_SIZE:-small}_${H2O_FILE_TYPE:-csv}.sql
+
+assert I
+SELECT COUNT(*) > 0 FROM x
+----
+true
+
+run
+SELECT x.id1     as xid1,
+       large.id1 as largeid1,
+       x.id2     as xid2,
+       large.id2 as largeid2,
+       x.id3,
+       x.id4     as xid4,
+       large.id4 as largeid4,
+       x.id5     as xid5,
+       large.id5 as largeid5,
+       x.id6     as xid6,
+       large.id6 as largeid6,
+       x.v1,
+       large.v2
+FROM x
+JOIN large ON x.id3 = large.id3;
+
+result sql_benchmarks/h2o/results/join/${H2O_BENCH_SIZE:-small}/q05.csv
diff --git a/benchmarks/sql_benchmarks/h2o/benchmarks/window/q01.benchmark 
b/benchmarks/sql_benchmarks/h2o/benchmarks/window/q01.benchmark
new file mode 100644
index 0000000000..4a95f07cc1
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/benchmarks/window/q01.benchmark
@@ -0,0 +1,25 @@
+subgroup window
+
+name Q01
+group h2o
+
+echo Loading ${H2O_BENCH_SIZE:-small} window ${H2O_FILE_TYPE:-csv} h2o data
+
+load 
sql_benchmarks/h2o/init/load_window_${H2O_BENCH_SIZE:-small}_${H2O_FILE_TYPE:-csv}.sql
+
+assert I
+SELECT COUNT(*) > 0 FROM x
+----
+true
+
+run
+-- Basic Window
+SELECT
+    id1,
+    id2,
+    id3,
+    v2,
+    sum(v2) OVER () AS window_basic
+FROM x;
+
+result sql_benchmarks/h2o/results/window/${H2O_BENCH_SIZE:-small}/q01.csv
diff --git a/benchmarks/sql_benchmarks/h2o/benchmarks/window/q02.benchmark 
b/benchmarks/sql_benchmarks/h2o/benchmarks/window/q02.benchmark
new file mode 100644
index 0000000000..8bc4b605b8
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/benchmarks/window/q02.benchmark
@@ -0,0 +1,26 @@
+subgroup window
+
+name Q02
+group h2o
+
+echo Loading ${H2O_BENCH_SIZE:-small} window ${H2O_FILE_TYPE:-csv} h2o data
+
+load 
sql_benchmarks/h2o/init/load_window_${H2O_BENCH_SIZE:-small}_${H2O_FILE_TYPE:-csv}.sql
+
+assert I
+SELECT COUNT(*) > 0 FROM x
+----
+true
+
+run
+-- Sorted Window
+SELECT
+    id1,
+    id2,
+    id3,
+    v2,
+    first_value(v2) OVER (ORDER BY id3) AS first_order_by,
+    row_number() OVER (ORDER BY id3) AS row_number_order_by
+FROM x;
+
+result sql_benchmarks/h2o/results/window/${H2O_BENCH_SIZE:-small}/q02.csv
diff --git a/benchmarks/sql_benchmarks/h2o/benchmarks/window/q03.benchmark 
b/benchmarks/sql_benchmarks/h2o/benchmarks/window/q03.benchmark
new file mode 100644
index 0000000000..53f5cff318
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/benchmarks/window/q03.benchmark
@@ -0,0 +1,27 @@
+subgroup window
+
+name Q03
+group h2o
+
+echo Loading ${H2O_BENCH_SIZE:-small} window ${H2O_FILE_TYPE:-csv} h2o data
+
+load 
sql_benchmarks/h2o/init/load_window_${H2O_BENCH_SIZE:-small}_${H2O_FILE_TYPE:-csv}.sql
+
+assert I
+SELECT COUNT(*) > 0 FROM x
+----
+true
+
+run
+-- PARTITION BY
+SELECT
+    id1,
+    id2,
+    id3,
+    v2,
+    sum(v2) OVER (PARTITION BY id1) AS sum_by_id1,
+    sum(v2) OVER (PARTITION BY id2) AS sum_by_id2,
+    sum(v2) OVER (PARTITION BY id3) AS sum_by_id3
+FROM x;
+
+result sql_benchmarks/h2o/results/window/${H2O_BENCH_SIZE:-small}/q03.csv
diff --git a/benchmarks/sql_benchmarks/h2o/benchmarks/window/q04.benchmark 
b/benchmarks/sql_benchmarks/h2o/benchmarks/window/q04.benchmark
new file mode 100644
index 0000000000..0111235ebb
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/benchmarks/window/q04.benchmark
@@ -0,0 +1,25 @@
+subgroup window
+
+name Q04
+group h2o
+
+echo Loading ${H2O_BENCH_SIZE:-small} window ${H2O_FILE_TYPE:-csv} h2o data
+
+load 
sql_benchmarks/h2o/init/load_window_${H2O_BENCH_SIZE:-small}_${H2O_FILE_TYPE:-csv}.sql
+
+assert I
+SELECT COUNT(*) > 0 FROM x
+----
+true
+
+run
+-- PARTITION BY ORDER BY
+SELECT
+    id1,
+    id2,
+    id3,
+    v2,
+    first_value(v2) OVER (PARTITION BY id2 ORDER BY id3) AS 
first_by_id2_ordered_by_id3
+FROM x;
+
+result sql_benchmarks/h2o/results/window/${H2O_BENCH_SIZE:-small}/q04.csv
diff --git a/benchmarks/sql_benchmarks/h2o/benchmarks/window/q05.benchmark 
b/benchmarks/sql_benchmarks/h2o/benchmarks/window/q05.benchmark
new file mode 100644
index 0000000000..e75827f8aa
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/benchmarks/window/q05.benchmark
@@ -0,0 +1,26 @@
+subgroup window
+
+name Q05
+group h2o
+
+echo Loading ${H2O_BENCH_SIZE:-small} window ${H2O_FILE_TYPE:-csv} h2o data
+
+load 
sql_benchmarks/h2o/init/load_window_${H2O_BENCH_SIZE:-small}_${H2O_FILE_TYPE:-csv}.sql
+
+assert I
+SELECT COUNT(*) > 0 FROM x
+----
+true
+
+run
+-- Lead and Lag
+SELECT
+    id1,
+    id2,
+    id3,
+    v2,
+    first_value(v2) OVER (ORDER BY id3 ROWS BETWEEN 1 PRECEDING AND 1 
PRECEDING) AS my_lag,
+    first_value(v2) OVER (ORDER BY id3 ROWS BETWEEN 1 FOLLOWING AND 1 
FOLLOWING) AS my_lead
+FROM x;
+
+result sql_benchmarks/h2o/results/window/${H2O_BENCH_SIZE:-small}/q05.csv
diff --git a/benchmarks/sql_benchmarks/h2o/benchmarks/window/q06.benchmark 
b/benchmarks/sql_benchmarks/h2o/benchmarks/window/q06.benchmark
new file mode 100644
index 0000000000..8d58e41f4e
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/benchmarks/window/q06.benchmark
@@ -0,0 +1,25 @@
+subgroup window
+
+name Q06
+group h2o
+
+echo Loading ${H2O_BENCH_SIZE:-small} window ${H2O_FILE_TYPE:-csv} h2o data
+
+load 
sql_benchmarks/h2o/init/load_window_${H2O_BENCH_SIZE:-small}_${H2O_FILE_TYPE:-csv}.sql
+
+assert I
+SELECT COUNT(*) > 0 FROM x
+----
+true
+
+run
+-- Moving Averages
+SELECT
+    id1,
+    id2,
+    id3,
+    v2,
+    avg(v2) OVER (ORDER BY id3 ROWS BETWEEN 100 PRECEDING AND CURRENT ROW) AS 
my_moving_average
+FROM x;
+
+result sql_benchmarks/h2o/results/window/${H2O_BENCH_SIZE:-small}/q06.csv
diff --git a/benchmarks/sql_benchmarks/h2o/benchmarks/window/q07.benchmark 
b/benchmarks/sql_benchmarks/h2o/benchmarks/window/q07.benchmark
new file mode 100644
index 0000000000..f0d8abdbc4
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/benchmarks/window/q07.benchmark
@@ -0,0 +1,25 @@
+subgroup window
+
+name Q07
+group h2o
+
+echo Loading ${H2O_BENCH_SIZE:-small} window ${H2O_FILE_TYPE:-csv} h2o data
+
+load 
sql_benchmarks/h2o/init/load_window_${H2O_BENCH_SIZE:-small}_${H2O_FILE_TYPE:-csv}.sql
+
+assert I
+SELECT COUNT(*) > 0 FROM x
+----
+true
+
+run
+-- Rolling Sum
+SELECT
+    id1,
+    id2,
+    id3,
+    v2,
+    sum(v2) OVER (ORDER BY id3 ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT 
ROW) AS my_rolling_sum
+FROM x;
+
+result sql_benchmarks/h2o/results/window/${H2O_BENCH_SIZE:-small}/q07.csv
diff --git a/benchmarks/sql_benchmarks/h2o/benchmarks/window/q08.benchmark 
b/benchmarks/sql_benchmarks/h2o/benchmarks/window/q08.benchmark
new file mode 100644
index 0000000000..599c331d45
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/benchmarks/window/q08.benchmark
@@ -0,0 +1,25 @@
+subgroup window
+
+name Q08
+group h2o
+
+echo Loading ${H2O_BENCH_SIZE:-small} window ${H2O_FILE_TYPE:-csv} h2o data
+
+load 
sql_benchmarks/h2o/init/load_window_${H2O_BENCH_SIZE:-small}_${H2O_FILE_TYPE:-csv}.sql
+
+assert I
+SELECT COUNT(*) > 0 FROM x
+----
+true
+
+run
+-- RANGE BETWEEN
+SELECT
+    id1,
+    id2,
+    id3,
+    v2,
+    sum(v2) OVER (ORDER BY v2 RANGE BETWEEN 3 PRECEDING AND CURRENT ROW) AS 
my_range_between
+FROM x;
+
+result sql_benchmarks/h2o/results/window/${H2O_BENCH_SIZE:-small}/q08.csv
diff --git a/benchmarks/sql_benchmarks/h2o/benchmarks/window/q09.benchmark 
b/benchmarks/sql_benchmarks/h2o/benchmarks/window/q09.benchmark
new file mode 100644
index 0000000000..286e3dfd0f
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/benchmarks/window/q09.benchmark
@@ -0,0 +1,26 @@
+subgroup window
+
+name Q09
+group h2o
+
+echo Loading ${H2O_BENCH_SIZE:-small} window ${H2O_FILE_TYPE:-csv} h2o data
+
+load 
sql_benchmarks/h2o/init/load_window_${H2O_BENCH_SIZE:-small}_${H2O_FILE_TYPE:-csv}.sql
+
+assert I
+SELECT COUNT(*) > 0 FROM x
+----
+true
+
+run
+-- First PARTITION BY ROWS BETWEEN
+SELECT
+    id1,
+    id2,
+    id3,
+    v2,
+    first_value(v2) OVER (PARTITION BY id2 ORDER BY id3 ROWS BETWEEN 1 
PRECEDING AND 1 PRECEDING) AS my_lag_by_id2,
+    first_value(v2) OVER (PARTITION BY id2 ORDER BY id3 ROWS BETWEEN 1 
FOLLOWING AND 1 FOLLOWING) AS my_lead_by_id2
+FROM x;
+
+result sql_benchmarks/h2o/results/window/${H2O_BENCH_SIZE:-small}/q09.csv
diff --git a/benchmarks/sql_benchmarks/h2o/benchmarks/window/q10.benchmark 
b/benchmarks/sql_benchmarks/h2o/benchmarks/window/q10.benchmark
new file mode 100644
index 0000000000..92cfffe233
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/benchmarks/window/q10.benchmark
@@ -0,0 +1,25 @@
+subgroup window
+
+name Q10
+group h2o
+
+echo Loading ${H2O_BENCH_SIZE:-small} window ${H2O_FILE_TYPE:-csv} h2o data
+
+load 
sql_benchmarks/h2o/init/load_window_${H2O_BENCH_SIZE:-small}_${H2O_FILE_TYPE:-csv}.sql
+
+assert I
+SELECT COUNT(*) > 0 FROM x
+----
+true
+
+run
+-- Moving Averages PARTITION BY
+SELECT
+    id1,
+    id2,
+    id3,
+    v2,
+    avg(v2) OVER (PARTITION BY id2 ORDER BY id3 ROWS BETWEEN 100 PRECEDING AND 
CURRENT ROW) AS my_moving_average_by_id2
+FROM x;
+
+result sql_benchmarks/h2o/results/window/${H2O_BENCH_SIZE:-small}/q10.csv
diff --git a/benchmarks/sql_benchmarks/h2o/benchmarks/window/q11.benchmark 
b/benchmarks/sql_benchmarks/h2o/benchmarks/window/q11.benchmark
new file mode 100644
index 0000000000..509b0931d8
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/benchmarks/window/q11.benchmark
@@ -0,0 +1,25 @@
+subgroup window
+
+name Q11
+group h2o
+
+echo Loading ${H2O_BENCH_SIZE:-small} window ${H2O_FILE_TYPE:-csv} h2o data
+
+load 
sql_benchmarks/h2o/init/load_window_${H2O_BENCH_SIZE:-small}_${H2O_FILE_TYPE:-csv}.sql
+
+assert I
+SELECT COUNT(*) > 0 FROM x
+----
+true
+
+run
+-- Rolling Sum PARTITION BY
+SELECT
+    id1,
+    id2,
+    id3,
+    v2,
+    sum(v2) OVER (PARTITION BY id2 ORDER BY id3 ROWS BETWEEN UNBOUNDED 
PRECEDING AND CURRENT ROW) AS my_rolling_sum_by_id2
+FROM x;
+
+result sql_benchmarks/h2o/results/window/${H2O_BENCH_SIZE:-small}/q11.csv
diff --git a/benchmarks/sql_benchmarks/h2o/benchmarks/window/q12.benchmark 
b/benchmarks/sql_benchmarks/h2o/benchmarks/window/q12.benchmark
new file mode 100644
index 0000000000..c63777d704
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/benchmarks/window/q12.benchmark
@@ -0,0 +1,25 @@
+subgroup window
+
+name Q12
+group h2o
+
+echo Loading ${H2O_BENCH_SIZE:-small} window ${H2O_FILE_TYPE:-csv} h2o data
+
+load 
sql_benchmarks/h2o/init/load_window_${H2O_BENCH_SIZE:-small}_${H2O_FILE_TYPE:-csv}.sql
+
+assert I
+SELECT COUNT(*) > 0 FROM x
+----
+true
+
+run
+-- RANGE BETWEEN PARTITION BY
+SELECT
+    id1,
+    id2,
+    id3,
+    v2,
+    sum(v2) OVER (PARTITION BY id2 ORDER BY v2 RANGE BETWEEN 3 PRECEDING AND 
CURRENT ROW) AS my_range_between_by_id2
+FROM x;
+
+result sql_benchmarks/h2o/results/window/${H2O_BENCH_SIZE:-small}/q12.csv
diff --git a/benchmarks/sql_benchmarks/h2o/init/load_groupby_big_csv.sql 
b/benchmarks/sql_benchmarks/h2o/init/load_groupby_big_csv.sql
new file mode 100644
index 0000000000..a930b58aad
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/init/load_groupby_big_csv.sql
@@ -0,0 +1 @@
+CREATE EXTERNAL TABLE x STORED AS CSV LOCATION 
'${DATA_DIR:-data}/h2o/G1_1e9_1e9_100_0.csv';
\ No newline at end of file
diff --git a/benchmarks/sql_benchmarks/h2o/init/load_groupby_big_parquet.sql 
b/benchmarks/sql_benchmarks/h2o/init/load_groupby_big_parquet.sql
new file mode 100644
index 0000000000..16a561ee99
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/init/load_groupby_big_parquet.sql
@@ -0,0 +1 @@
+CREATE EXTERNAL TABLE x STORED AS PARQUET LOCATION 
'${DATA_DIR:-data}/h2o/G1_1e9_1e9_100_0.parquet';
diff --git a/benchmarks/sql_benchmarks/h2o/init/load_groupby_medium_csv.sql 
b/benchmarks/sql_benchmarks/h2o/init/load_groupby_medium_csv.sql
new file mode 100644
index 0000000000..8992ed251f
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/init/load_groupby_medium_csv.sql
@@ -0,0 +1 @@
+CREATE EXTERNAL TABLE x STORED AS CSV LOCATION 
'${DATA_DIR:-data}/h2o/G1_1e8_1e8_100_0.csv';
diff --git a/benchmarks/sql_benchmarks/h2o/init/load_groupby_medium_parquet.sql 
b/benchmarks/sql_benchmarks/h2o/init/load_groupby_medium_parquet.sql
new file mode 100644
index 0000000000..dcf77c6def
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/init/load_groupby_medium_parquet.sql
@@ -0,0 +1 @@
+CREATE EXTERNAL TABLE x STORED AS PARQUET LOCATION 
'${DATA_DIR:-data}/h2o/G1_1e8_1e8_100_0.parquet';
\ No newline at end of file
diff --git a/benchmarks/sql_benchmarks/h2o/init/load_groupby_small_csv.sql 
b/benchmarks/sql_benchmarks/h2o/init/load_groupby_small_csv.sql
new file mode 100644
index 0000000000..9c353b406a
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/init/load_groupby_small_csv.sql
@@ -0,0 +1 @@
+CREATE EXTERNAL TABLE x STORED AS CSV LOCATION 
'${DATA_DIR:-data}/h2o/G1_1e7_1e7_100_0.csv';
diff --git a/benchmarks/sql_benchmarks/h2o/init/load_groupby_small_parquet.sql 
b/benchmarks/sql_benchmarks/h2o/init/load_groupby_small_parquet.sql
new file mode 100644
index 0000000000..4e9eb51f74
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/init/load_groupby_small_parquet.sql
@@ -0,0 +1 @@
+CREATE EXTERNAL TABLE x STORED AS PARQUET LOCATION 
'${DATA_DIR:-data}/h2o/G1_1e7_1e7_100_0.parquet';
\ No newline at end of file
diff --git a/benchmarks/sql_benchmarks/h2o/init/load_join_big_csv.sql 
b/benchmarks/sql_benchmarks/h2o/init/load_join_big_csv.sql
new file mode 100644
index 0000000000..6c67c9fd56
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/init/load_join_big_csv.sql
@@ -0,0 +1,7 @@
+CREATE EXTERNAL TABLE x STORED AS CSV LOCATION 
'${DATA_DIR:-data}/h2o/J1_1e9_NA_0.csv';
+
+CREATE EXTERNAL TABLE small STORED AS CSV LOCATION 
'${DATA_DIR:-data}/h2o/J1_1e9_1e3_0.csv';
+
+CREATE EXTERNAL TABLE medium STORED AS CSV LOCATION 
'${DATA_DIR:-data}/h2o/J1_1e9_1e6_0.csv';
+
+CREATE EXTERNAL TABLE large STORED AS CSV LOCATION 
'${DATA_DIR:-data}/h2o/J1_1e9_1e9_NA.csv';
diff --git a/benchmarks/sql_benchmarks/h2o/init/load_join_big_parquet.sql 
b/benchmarks/sql_benchmarks/h2o/init/load_join_big_parquet.sql
new file mode 100644
index 0000000000..f84f171996
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/init/load_join_big_parquet.sql
@@ -0,0 +1,7 @@
+CREATE EXTERNAL TABLE x STORED AS PARQUET LOCATION 
'${DATA_DIR:-data}/h2o/J1_1e9_NA_0.parquet';
+
+CREATE EXTERNAL TABLE small STORED AS PARQUET LOCATION 
'${DATA_DIR:-data}/h2o/J1_1e9_1e3_0.parquet';
+
+CREATE EXTERNAL TABLE medium STORED AS PARQUET LOCATION 
'${DATA_DIR:-data}/h2o/J1_1e9_1e6_0.parquet';
+
+CREATE EXTERNAL TABLE large STORED AS PARQUET LOCATION 
'${DATA_DIR:-data}/h2o/J1_1e9_1e9_NA.parquet';
diff --git a/benchmarks/sql_benchmarks/h2o/init/load_join_medium_csv.sql 
b/benchmarks/sql_benchmarks/h2o/init/load_join_medium_csv.sql
new file mode 100644
index 0000000000..fcb3916a97
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/init/load_join_medium_csv.sql
@@ -0,0 +1,7 @@
+CREATE EXTERNAL TABLE x STORED AS CSV LOCATION 
'${DATA_DIR:-data}/h2o/J1_1e8_NA_0.csv';
+
+CREATE EXTERNAL TABLE small STORED AS CSV LOCATION 
'${DATA_DIR:-data}/h2o/J1_1e8_1e2_0.csv';
+
+CREATE EXTERNAL TABLE medium STORED AS CSV LOCATION 
'${DATA_DIR:-data}/h2o/J1_1e8_1e5_0.csv';
+
+CREATE EXTERNAL TABLE large STORED AS CSV LOCATION 
'${DATA_DIR:-data}/h2o/J1_1e8_1e8_NA.csv';
diff --git a/benchmarks/sql_benchmarks/h2o/init/load_join_medium_parquet.sql 
b/benchmarks/sql_benchmarks/h2o/init/load_join_medium_parquet.sql
new file mode 100644
index 0000000000..175a38b44a
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/init/load_join_medium_parquet.sql
@@ -0,0 +1,7 @@
+CREATE EXTERNAL TABLE x STORED AS PARQUET LOCATION 
'${DATA_DIR:-data}/h2o/J1_1e8_NA_0.parquet';
+
+CREATE EXTERNAL TABLE small STORED AS PARQUET LOCATION 
'${DATA_DIR:-data}/h2o/J1_1e8_1e2_0.parquet';
+
+CREATE EXTERNAL TABLE medium STORED AS PARQUET LOCATION 
'${DATA_DIR:-data}/h2o/J1_1e8_1e5_0.parquet';
+
+CREATE EXTERNAL TABLE large STORED AS PARQUET LOCATION 
'${DATA_DIR:-data}/h2o/J1_1e8_1e8_NA.parquet';
diff --git a/benchmarks/sql_benchmarks/h2o/init/load_join_small_csv.sql 
b/benchmarks/sql_benchmarks/h2o/init/load_join_small_csv.sql
new file mode 100644
index 0000000000..0867e6c06b
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/init/load_join_small_csv.sql
@@ -0,0 +1,7 @@
+CREATE EXTERNAL TABLE x STORED AS CSV LOCATION 
'${DATA_DIR:-data}/h2o/J1_1e7_NA_0.csv';
+
+CREATE EXTERNAL TABLE small STORED AS CSV LOCATION 
'${DATA_DIR:-data}/h2o/J1_1e7_1e1_0.csv';
+
+CREATE EXTERNAL TABLE medium STORED AS CSV LOCATION 
'${DATA_DIR:-data}/h2o/J1_1e7_1e4_0.csv';
+
+CREATE EXTERNAL TABLE large STORED AS CSV LOCATION 
'${DATA_DIR:-data}/h2o/J1_1e7_1e7_NA.csv';
diff --git a/benchmarks/sql_benchmarks/h2o/init/load_join_small_parquet.sql 
b/benchmarks/sql_benchmarks/h2o/init/load_join_small_parquet.sql
new file mode 100644
index 0000000000..c32a6e24b6
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/init/load_join_small_parquet.sql
@@ -0,0 +1,7 @@
+CREATE EXTERNAL TABLE x STORED AS PARQUET LOCATION 
'${DATA_DIR:-data}/h2o/J1_1e7_NA_0.parquet';
+
+CREATE EXTERNAL TABLE small STORED AS PARQUET LOCATION 
'${DATA_DIR:-data}/h2o/J1_1e7_1e1_0.parquet';
+
+CREATE EXTERNAL TABLE medium STORED AS PARQUET LOCATION 
'${DATA_DIR:-data}/h2o/J1_1e7_1e4_0.parquet';
+
+CREATE EXTERNAL TABLE large STORED AS PARQUET LOCATION 
'${DATA_DIR:-data}/h2o/J1_1e7_1e7_NA.parquet';
diff --git a/benchmarks/sql_benchmarks/h2o/init/load_window_big_csv.sql 
b/benchmarks/sql_benchmarks/h2o/init/load_window_big_csv.sql
new file mode 100644
index 0000000000..e712ef1458
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/init/load_window_big_csv.sql
@@ -0,0 +1 @@
+CREATE EXTERNAL TABLE x STORED AS CSV LOCATION 
'${DATA_DIR:-data}/h2o/J1_1e9_1e9_NA.csv';
diff --git a/benchmarks/sql_benchmarks/h2o/init/load_window_big_parquet.sql 
b/benchmarks/sql_benchmarks/h2o/init/load_window_big_parquet.sql
new file mode 100644
index 0000000000..33d58870a1
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/init/load_window_big_parquet.sql
@@ -0,0 +1 @@
+CREATE EXTERNAL TABLE x STORED AS PARQUET LOCATION 
'${DATA_DIR:-data}/h2o/J1_1e9_1e9_NA.parquet';
diff --git a/benchmarks/sql_benchmarks/h2o/init/load_window_medium_csv.sql 
b/benchmarks/sql_benchmarks/h2o/init/load_window_medium_csv.sql
new file mode 100644
index 0000000000..9331c17a4e
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/init/load_window_medium_csv.sql
@@ -0,0 +1 @@
+CREATE EXTERNAL TABLE x STORED AS CSV LOCATION 
'${DATA_DIR:-data}/h2o/J1_1e8_1e8_NA.csv';
diff --git a/benchmarks/sql_benchmarks/h2o/init/load_window_medium_parquet.sql 
b/benchmarks/sql_benchmarks/h2o/init/load_window_medium_parquet.sql
new file mode 100644
index 0000000000..8d4f290b0c
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/init/load_window_medium_parquet.sql
@@ -0,0 +1 @@
+CREATE EXTERNAL TABLE x STORED AS PARQUET LOCATION 
'${DATA_DIR:-data}/h2o/J1_1e8_1e8_NA.parquet';
diff --git a/benchmarks/sql_benchmarks/h2o/init/load_window_small_csv.sql 
b/benchmarks/sql_benchmarks/h2o/init/load_window_small_csv.sql
new file mode 100644
index 0000000000..1d0ea6992f
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/init/load_window_small_csv.sql
@@ -0,0 +1 @@
+CREATE EXTERNAL TABLE x STORED AS CSV LOCATION 
'${DATA_DIR:-data}/h2o/J1_1e7_1e7_NA.csv';
diff --git a/benchmarks/sql_benchmarks/h2o/init/load_window_small_parquet.sql 
b/benchmarks/sql_benchmarks/h2o/init/load_window_small_parquet.sql
new file mode 100644
index 0000000000..8c16e0b22a
--- /dev/null
+++ b/benchmarks/sql_benchmarks/h2o/init/load_window_small_parquet.sql
@@ -0,0 +1 @@
+CREATE EXTERNAL TABLE x STORED AS PARQUET LOCATION 
'${DATA_DIR:-data}/h2o/J1_1e7_1e7_NA.parquet';


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]


Reply via email to