From 586ecb730f23d60964be6e580c129f5fff799322 Mon Sep 17 00:00:00 2001 From: Bruce Ritchie Date: Fri, 29 May 2026 14:52:59 -0400 Subject: [PATCH] Add clickbench SQL benchmark --- .../clickbench/benchmarks/q00.benchmark | 17 +++ .../clickbench/benchmarks/q01.benchmark | 18 +++ .../clickbench/benchmarks/q02.benchmark | 17 +++ .../clickbench/benchmarks/q03.benchmark | 17 +++ .../clickbench/benchmarks/q04.benchmark | 17 +++ .../clickbench/benchmarks/q05.benchmark | 17 +++ .../clickbench/benchmarks/q06.benchmark | 17 +++ .../clickbench/benchmarks/q07.benchmark | 20 ++++ .../clickbench/benchmarks/q08.benchmark | 16 +++ .../clickbench/benchmarks/q09.benchmark | 16 +++ .../clickbench/benchmarks/q10.benchmark | 16 +++ .../clickbench/benchmarks/q11.benchmark | 16 +++ .../clickbench/benchmarks/q12.benchmark | 16 +++ .../clickbench/benchmarks/q13.benchmark | 16 +++ .../clickbench/benchmarks/q14.benchmark | 16 +++ .../clickbench/benchmarks/q15.benchmark | 16 +++ .../clickbench/benchmarks/q16.benchmark | 16 +++ .../clickbench/benchmarks/q17.benchmark | 16 +++ .../clickbench/benchmarks/q18.benchmark | 16 +++ .../clickbench/benchmarks/q19.benchmark | 18 +++ .../clickbench/benchmarks/q20.benchmark | 18 +++ .../clickbench/benchmarks/q21.benchmark | 16 +++ .../clickbench/benchmarks/q22.benchmark | 16 +++ .../clickbench/benchmarks/q23.benchmark | 16 +++ .../clickbench/benchmarks/q24.benchmark | 16 +++ .../clickbench/benchmarks/q25.benchmark | 16 +++ .../clickbench/benchmarks/q26.benchmark | 16 +++ .../clickbench/benchmarks/q27.benchmark | 16 +++ .../clickbench/benchmarks/q28.benchmark | 16 +++ .../clickbench/benchmarks/q29.benchmark | 106 ++++++++++++++++++ .../clickbench/benchmarks/q30.benchmark | 16 +++ .../clickbench/benchmarks/q31.benchmark | 16 +++ .../clickbench/benchmarks/q32.benchmark | 16 +++ .../clickbench/benchmarks/q33.benchmark | 16 +++ .../clickbench/benchmarks/q34.benchmark | 16 +++ .../clickbench/benchmarks/q35.benchmark | 16 +++ .../clickbench/benchmarks/q36.benchmark | 16 +++ .../clickbench/benchmarks/q37.benchmark | 16 +++ .../clickbench/benchmarks/q38.benchmark | 16 +++ .../clickbench/benchmarks/q39.benchmark | 16 +++ .../clickbench/benchmarks/q40.benchmark | 16 +++ .../clickbench/benchmarks/q41.benchmark | 16 +++ .../clickbench/benchmarks/q42.benchmark | 16 +++ .../clickbench/init/load-partitioned.sql | 3 + .../clickbench/init/load-single.sql | 3 + .../clickbench/init/set_config.sql | 7 ++ 46 files changed, 807 insertions(+) create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q00.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q01.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q02.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q03.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q04.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q05.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q06.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q07.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q08.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q09.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q10.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q11.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q12.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q13.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q14.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q15.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q16.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q17.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q18.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q19.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q20.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q21.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q22.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q23.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q24.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q25.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q26.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q27.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q28.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q29.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q30.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q31.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q32.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q33.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q34.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q35.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q36.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q37.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q38.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q39.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q40.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q41.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/benchmarks/q42.benchmark create mode 100644 benchmarks/sql_benchmarks/clickbench/init/load-partitioned.sql create mode 100644 benchmarks/sql_benchmarks/clickbench/init/load-single.sql create mode 100644 benchmarks/sql_benchmarks/clickbench/init/set_config.sql diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q00.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q00.benchmark new file mode 100644 index 0000000000000..0ea18a72733b9 --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q00.benchmark @@ -0,0 +1,17 @@ +name Q00 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT COUNT(*) +FROM hits; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q00.csv diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q01.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q01.benchmark new file mode 100644 index 0000000000000..1512ef10b5d7e --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q01.benchmark @@ -0,0 +1,18 @@ +name Q01 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT COUNT(*) +FROM hits +WHERE "AdvEngineID" <> 0; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q01.csv diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q02.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q02.benchmark new file mode 100644 index 0000000000000..3bc1a4ec4acbd --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q02.benchmark @@ -0,0 +1,17 @@ +name Q02 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT SUM("AdvEngineID"), COUNT(*), AVG("ResolutionWidth") +FROM hits; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q02.csv diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q03.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q03.benchmark new file mode 100644 index 0000000000000..c545a27d8c46d --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q03.benchmark @@ -0,0 +1,17 @@ +name Q03 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT AVG("UserID") +FROM hits; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q03.csv diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q04.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q04.benchmark new file mode 100644 index 0000000000000..5ae8ad3b8ffed --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q04.benchmark @@ -0,0 +1,17 @@ +name Q04 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT COUNT(DISTINCT "UserID") +FROM hits; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q04.csv diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q05.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q05.benchmark new file mode 100644 index 0000000000000..dd2f654698d50 --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q05.benchmark @@ -0,0 +1,17 @@ +name Q05 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT COUNT(DISTINCT "SearchPhrase") +FROM hits; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q05.csv diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q06.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q06.benchmark new file mode 100644 index 0000000000000..1b5e105a1acc2 --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q06.benchmark @@ -0,0 +1,17 @@ +name Q06 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT MIN("EventDate"), MAX("EventDate") +FROM hits; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q06.csv diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q07.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q07.benchmark new file mode 100644 index 0000000000000..882f5ad3d8327 --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q07.benchmark @@ -0,0 +1,20 @@ +name Q07 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT "AdvEngineID", COUNT(*) +FROM hits +WHERE "AdvEngineID" <> 0 +GROUP BY "AdvEngineID" +ORDER BY COUNT(*) DESC; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q07.csv diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q08.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q08.benchmark new file mode 100644 index 0000000000000..525a39cf47ad8 --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q08.benchmark @@ -0,0 +1,16 @@ +name Q08 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT "RegionID", COUNT(DISTINCT "UserID") AS u FROM hits GROUP BY "RegionID" ORDER BY u DESC LIMIT 10; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q08.csv diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q09.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q09.benchmark new file mode 100644 index 0000000000000..3f58fc3c95f4b --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q09.benchmark @@ -0,0 +1,16 @@ +name Q09 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT "RegionID", SUM("AdvEngineID"), COUNT(*) AS c, AVG("ResolutionWidth"), COUNT(DISTINCT "UserID") FROM hits GROUP BY "RegionID" ORDER BY c DESC LIMIT 10; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q09.csv diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q10.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q10.benchmark new file mode 100644 index 0000000000000..4a3506d74728d --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q10.benchmark @@ -0,0 +1,16 @@ +name Q10 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT "MobilePhoneModel", COUNT(DISTINCT "UserID") AS u FROM hits WHERE "MobilePhoneModel" <> '' GROUP BY "MobilePhoneModel" ORDER BY u DESC LIMIT 10; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q10.csv diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q11.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q11.benchmark new file mode 100644 index 0000000000000..b18f1946782f0 --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q11.benchmark @@ -0,0 +1,16 @@ +name Q11 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT "MobilePhone", "MobilePhoneModel", COUNT(DISTINCT "UserID") AS u FROM hits WHERE "MobilePhoneModel" <> '' GROUP BY "MobilePhone", "MobilePhoneModel" ORDER BY u DESC LIMIT 10; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q11.csv diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q12.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q12.benchmark new file mode 100644 index 0000000000000..0586305e3d4f0 --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q12.benchmark @@ -0,0 +1,16 @@ +name Q12 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT "SearchPhrase", COUNT(*) AS c FROM hits WHERE "SearchPhrase" <> '' GROUP BY "SearchPhrase" ORDER BY c DESC LIMIT 10; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q12.csv diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q13.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q13.benchmark new file mode 100644 index 0000000000000..b36449e05bd4c --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q13.benchmark @@ -0,0 +1,16 @@ +name Q13 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT "SearchPhrase", COUNT(DISTINCT "UserID") AS u FROM hits WHERE "SearchPhrase" <> '' GROUP BY "SearchPhrase" ORDER BY u DESC LIMIT 10; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q13.csv diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q14.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q14.benchmark new file mode 100644 index 0000000000000..2b7c3b196f22e --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q14.benchmark @@ -0,0 +1,16 @@ +name Q14 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT "SearchEngineID", "SearchPhrase", COUNT(*) AS c FROM hits WHERE "SearchPhrase" <> '' GROUP BY "SearchEngineID", "SearchPhrase" ORDER BY c DESC LIMIT 10; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q14.csv diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q15.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q15.benchmark new file mode 100644 index 0000000000000..8e8be046446a7 --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q15.benchmark @@ -0,0 +1,16 @@ +name Q15 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT "UserID", COUNT(*) FROM hits GROUP BY "UserID" ORDER BY COUNT(*) DESC LIMIT 10; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q15.csv diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q16.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q16.benchmark new file mode 100644 index 0000000000000..93fb630d73699 --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q16.benchmark @@ -0,0 +1,16 @@ +name Q16 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT "UserID", "SearchPhrase", COUNT(*) FROM hits GROUP BY "UserID", "SearchPhrase" ORDER BY COUNT(*) DESC LIMIT 10; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q16.csv diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q17.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q17.benchmark new file mode 100644 index 0000000000000..60725ae005997 --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q17.benchmark @@ -0,0 +1,16 @@ +name Q17 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT "UserID", "SearchPhrase", COUNT(*) FROM hits GROUP BY "UserID", "SearchPhrase" LIMIT 10; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q17.csv diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q18.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q18.benchmark new file mode 100644 index 0000000000000..1f5bad2a029f5 --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q18.benchmark @@ -0,0 +1,16 @@ +name Q18 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT "UserID", extract(minute FROM to_timestamp_seconds("EventTime")) AS m, "SearchPhrase", COUNT(*) FROM hits GROUP BY "UserID", m, "SearchPhrase" ORDER BY COUNT(*) DESC LIMIT 10; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q18.csv diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q19.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q19.benchmark new file mode 100644 index 0000000000000..7bd760aaff9fe --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q19.benchmark @@ -0,0 +1,18 @@ +name Q19 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT "UserID" +FROM hits +WHERE "UserID" = 435090932899640449; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q19.csv diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q20.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q20.benchmark new file mode 100644 index 0000000000000..6ec6c5c0a61ef --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q20.benchmark @@ -0,0 +1,18 @@ +name Q20 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT COUNT(*) +FROM hits +WHERE "URL" LIKE '%google%'; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q20.csv diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q21.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q21.benchmark new file mode 100644 index 0000000000000..a1123e9391983 --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q21.benchmark @@ -0,0 +1,16 @@ +name Q21 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT "SearchPhrase", MIN("URL"), COUNT(*) AS c FROM hits WHERE "URL" LIKE '%google%' AND "SearchPhrase" <> '' GROUP BY "SearchPhrase" ORDER BY c DESC LIMIT 10; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q21.csv diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q22.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q22.benchmark new file mode 100644 index 0000000000000..9df61823b3107 --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q22.benchmark @@ -0,0 +1,16 @@ +name Q22 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT "SearchPhrase", MIN("URL"), MIN("Title"), COUNT(*) AS c, COUNT(DISTINCT "UserID") FROM hits WHERE "Title" LIKE '%Google%' AND "URL" NOT LIKE '%.google.%' AND "SearchPhrase" <> '' GROUP BY "SearchPhrase" ORDER BY c DESC LIMIT 10; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q22.csv diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q23.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q23.benchmark new file mode 100644 index 0000000000000..aa742cb56bfc7 --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q23.benchmark @@ -0,0 +1,16 @@ +name Q23 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT * FROM hits WHERE "URL" LIKE '%google%' ORDER BY "EventTime" LIMIT 10; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q23.csv diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q24.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q24.benchmark new file mode 100644 index 0000000000000..4b30c5fef3c72 --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q24.benchmark @@ -0,0 +1,16 @@ +name Q24 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT "SearchPhrase" FROM hits WHERE "SearchPhrase" <> '' ORDER BY "EventTime" LIMIT 10; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q24.csv diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q25.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q25.benchmark new file mode 100644 index 0000000000000..5a8a425703662 --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q25.benchmark @@ -0,0 +1,16 @@ +name Q25 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT "SearchPhrase" FROM hits WHERE "SearchPhrase" <> '' ORDER BY "SearchPhrase" LIMIT 10; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q25.csv diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q26.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q26.benchmark new file mode 100644 index 0000000000000..b87f59a847adf --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q26.benchmark @@ -0,0 +1,16 @@ +name Q26 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT "SearchPhrase" FROM hits WHERE "SearchPhrase" <> '' ORDER BY "EventTime", "SearchPhrase" LIMIT 10; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q26.csv diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q27.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q27.benchmark new file mode 100644 index 0000000000000..c4531b0d6aa11 --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q27.benchmark @@ -0,0 +1,16 @@ +name Q27 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT "CounterID", AVG(length("URL")) AS l, COUNT(*) AS c FROM hits WHERE "URL" <> '' GROUP BY "CounterID" HAVING COUNT(*) > 100000 ORDER BY l DESC LIMIT 25; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q27.csv diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q28.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q28.benchmark new file mode 100644 index 0000000000000..32599d608cc5e --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q28.benchmark @@ -0,0 +1,16 @@ +name Q28 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT REGEXP_REPLACE("Referer", '^https?://(?:www\.)?([^/]+)/.*$', '\1') AS k, AVG(length("Referer")) AS l, COUNT(*) AS c, MIN("Referer") FROM hits WHERE "Referer" <> '' GROUP BY k HAVING COUNT(*) > 100000 ORDER BY l DESC LIMIT 25; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q28.csv diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q29.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q29.benchmark new file mode 100644 index 0000000000000..a76d6c6f2d4b0 --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q29.benchmark @@ -0,0 +1,106 @@ +name Q29 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT SUM("ResolutionWidth"), + SUM("ResolutionWidth" + 1), + SUM("ResolutionWidth" + 2), + SUM("ResolutionWidth" + 3), + SUM("ResolutionWidth" + 4), + SUM("ResolutionWidth" + 5), + SUM("ResolutionWidth" + 6), + SUM("ResolutionWidth" + 7), + SUM("ResolutionWidth" + 8), + SUM("ResolutionWidth" + 9), + SUM("ResolutionWidth" + 10), + SUM("ResolutionWidth" + 11), + SUM("ResolutionWidth" + 12), + SUM("ResolutionWidth" + 13), + SUM("ResolutionWidth" + 14), + SUM("ResolutionWidth" + 15), + SUM("ResolutionWidth" + 16), + SUM("ResolutionWidth" + 17), + SUM("ResolutionWidth" + 18), + SUM("ResolutionWidth" + 19), + SUM("ResolutionWidth" + 20), + SUM("ResolutionWidth" + 21), + SUM("ResolutionWidth" + 22), + SUM("ResolutionWidth" + 23), + SUM("ResolutionWidth" + 24), + SUM("ResolutionWidth" + 25), + SUM("ResolutionWidth" + 26), + SUM("ResolutionWidth" + 27), + SUM("ResolutionWidth" + 28), + SUM("ResolutionWidth" + 29), + SUM("ResolutionWidth" + 30), + SUM("ResolutionWidth" + 31), + SUM("ResolutionWidth" + 32), + SUM("ResolutionWidth" + 33), + SUM("ResolutionWidth" + 34), + SUM("ResolutionWidth" + 35), + SUM("ResolutionWidth" + 36), + SUM("ResolutionWidth" + 37), + SUM("ResolutionWidth" + 38), + SUM("ResolutionWidth" + 39), + SUM("ResolutionWidth" + 40), + SUM("ResolutionWidth" + 41), + SUM("ResolutionWidth" + 42), + SUM("ResolutionWidth" + 43), + SUM("ResolutionWidth" + 44), + SUM("ResolutionWidth" + 45), + SUM("ResolutionWidth" + 46), + SUM("ResolutionWidth" + 47), + SUM("ResolutionWidth" + 48), + SUM("ResolutionWidth" + 49), + SUM("ResolutionWidth" + 50), + SUM("ResolutionWidth" + 51), + SUM("ResolutionWidth" + 52), + SUM("ResolutionWidth" + 53), + SUM("ResolutionWidth" + 54), + SUM("ResolutionWidth" + 55), + SUM("ResolutionWidth" + 56), + SUM("ResolutionWidth" + 57), + SUM("ResolutionWidth" + 58), + SUM("ResolutionWidth" + 59), + SUM("ResolutionWidth" + 60), + SUM("ResolutionWidth" + 61), + SUM("ResolutionWidth" + 62), + SUM("ResolutionWidth" + 63), + SUM("ResolutionWidth" + 64), + SUM("ResolutionWidth" + 65), + SUM("ResolutionWidth" + 66), + SUM("ResolutionWidth" + 67), + SUM("ResolutionWidth" + 68), + SUM("ResolutionWidth" + 69), + SUM("ResolutionWidth" + 70), + SUM("ResolutionWidth" + 71), + SUM("ResolutionWidth" + 72), + SUM("ResolutionWidth" + 73), + SUM("ResolutionWidth" + 74), + SUM("ResolutionWidth" + 75), + SUM("ResolutionWidth" + 76), + SUM("ResolutionWidth" + 77), + SUM("ResolutionWidth" + 78), + SUM("ResolutionWidth" + 79), + SUM("ResolutionWidth" + 80), + SUM("ResolutionWidth" + 81), + SUM("ResolutionWidth" + 82), + SUM("ResolutionWidth" + 83), + SUM("ResolutionWidth" + 84), + SUM("ResolutionWidth" + 85), + SUM("ResolutionWidth" + 86), + SUM("ResolutionWidth" + 87), + SUM("ResolutionWidth" + 88), + SUM("ResolutionWidth" + 89) +FROM hits; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q29.csv diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q30.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q30.benchmark new file mode 100644 index 0000000000000..740a6724cca38 --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q30.benchmark @@ -0,0 +1,16 @@ +name Q30 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT "SearchEngineID", "ClientIP", COUNT(*) AS c, SUM("IsRefresh"), AVG("ResolutionWidth") FROM hits WHERE "SearchPhrase" <> '' GROUP BY "SearchEngineID", "ClientIP" ORDER BY c DESC LIMIT 10; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q30.csv diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q31.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q31.benchmark new file mode 100644 index 0000000000000..91035bcf6916f --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q31.benchmark @@ -0,0 +1,16 @@ +name Q31 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT "WatchID", "ClientIP", COUNT(*) AS c, SUM("IsRefresh"), AVG("ResolutionWidth") FROM hits WHERE "SearchPhrase" <> '' GROUP BY "WatchID", "ClientIP" ORDER BY c DESC LIMIT 10; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q31.csv diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q32.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q32.benchmark new file mode 100644 index 0000000000000..15a58676098fd --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q32.benchmark @@ -0,0 +1,16 @@ +name Q32 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT "WatchID", "ClientIP", COUNT(*) AS c, SUM("IsRefresh"), AVG("ResolutionWidth") FROM hits GROUP BY "WatchID", "ClientIP" ORDER BY c DESC LIMIT 10; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q32.csv diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q33.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q33.benchmark new file mode 100644 index 0000000000000..2742a609c306f --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q33.benchmark @@ -0,0 +1,16 @@ +name Q33 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT "URL", COUNT(*) AS c FROM hits GROUP BY "URL" ORDER BY c DESC LIMIT 10; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q33.csv diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q34.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q34.benchmark new file mode 100644 index 0000000000000..6b8c2beb9c7aa --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q34.benchmark @@ -0,0 +1,16 @@ +name Q34 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT 1, "URL", COUNT(*) AS c FROM hits GROUP BY 1, "URL" ORDER BY c DESC LIMIT 10; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q34.csv diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q35.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q35.benchmark new file mode 100644 index 0000000000000..75a6b210996ab --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q35.benchmark @@ -0,0 +1,16 @@ +name Q35 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT "ClientIP", "ClientIP" - 1, "ClientIP" - 2, "ClientIP" - 3, COUNT(*) AS c FROM hits GROUP BY "ClientIP", "ClientIP" - 1, "ClientIP" - 2, "ClientIP" - 3 ORDER BY c DESC LIMIT 10; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q35.csv diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q36.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q36.benchmark new file mode 100644 index 0000000000000..95f7c4b03b203 --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q36.benchmark @@ -0,0 +1,16 @@ +name Q36 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT "URL", COUNT(*) AS PageViews FROM hits WHERE "CounterID" = 62 AND "EventDate" >= '2013-07-01' AND "EventDate" <= '2013-07-31' AND "DontCountHits" = 0 AND "IsRefresh" = 0 AND "URL" <> '' GROUP BY "URL" ORDER BY PageViews DESC LIMIT 10; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q36.csv diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q37.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q37.benchmark new file mode 100644 index 0000000000000..dd8ef38bb2ed2 --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q37.benchmark @@ -0,0 +1,16 @@ +name Q37 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT "Title", COUNT(*) AS PageViews FROM hits WHERE "CounterID" = 62 AND "EventDate" >= '2013-07-01' AND "EventDate" <= '2013-07-31' AND "DontCountHits" = 0 AND "IsRefresh" = 0 AND "Title" <> '' GROUP BY "Title" ORDER BY PageViews DESC LIMIT 10; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q37.csv diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q38.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q38.benchmark new file mode 100644 index 0000000000000..93d4d1722d3f2 --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q38.benchmark @@ -0,0 +1,16 @@ +name Q38 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT "URL", COUNT(*) AS PageViews FROM hits WHERE "CounterID" = 62 AND "EventDate" >= '2013-07-01' AND "EventDate" <= '2013-07-31' AND "IsRefresh" = 0 AND "IsLink" <> 0 AND "IsDownload" = 0 GROUP BY "URL" ORDER BY PageViews DESC LIMIT 10 OFFSET 1000; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q38.csv diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q39.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q39.benchmark new file mode 100644 index 0000000000000..443e2120fca92 --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q39.benchmark @@ -0,0 +1,16 @@ +name Q39 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT "TraficSourceID", "SearchEngineID", "AdvEngineID", CASE WHEN ("SearchEngineID" = 0 AND "AdvEngineID" = 0) THEN "Referer" ELSE '' END AS Src, "URL" AS Dst, COUNT(*) AS PageViews FROM hits WHERE "CounterID" = 62 AND "EventDate" >= '2013-07-01' AND "EventDate" <= '2013-07-31' AND "IsRefresh" = 0 GROUP BY "TraficSourceID", "SearchEngineID", "AdvEngineID", Src, Dst ORDER BY PageViews DESC LIMIT 10 OFFSET 1000; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q39.csv diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q40.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q40.benchmark new file mode 100644 index 0000000000000..b3358dc1661d7 --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q40.benchmark @@ -0,0 +1,16 @@ +name Q40 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT "URLHash", "EventDate", COUNT(*) AS PageViews FROM hits WHERE "CounterID" = 62 AND "EventDate" >= '2013-07-01' AND "EventDate" <= '2013-07-31' AND "IsRefresh" = 0 AND "TraficSourceID" IN (-1, 6) AND "RefererHash" = 3594120000172545465 GROUP BY "URLHash", "EventDate" ORDER BY PageViews DESC LIMIT 10 OFFSET 100; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q40.csv diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q41.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q41.benchmark new file mode 100644 index 0000000000000..0cbafea4682ca --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q41.benchmark @@ -0,0 +1,16 @@ +name Q41 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT "WindowClientWidth", "WindowClientHeight", COUNT(*) AS PageViews FROM hits WHERE "CounterID" = 62 AND "EventDate" >= '2013-07-01' AND "EventDate" <= '2013-07-31' AND "IsRefresh" = 0 AND "DontCountHits" = 0 AND "URLHash" = 2868770270353813622 GROUP BY "WindowClientWidth", "WindowClientHeight" ORDER BY PageViews DESC LIMIT 10 OFFSET 10000; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q41.csv diff --git a/benchmarks/sql_benchmarks/clickbench/benchmarks/q42.benchmark b/benchmarks/sql_benchmarks/clickbench/benchmarks/q42.benchmark new file mode 100644 index 0000000000000..7822062fd0150 --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/benchmarks/q42.benchmark @@ -0,0 +1,16 @@ +name Q42 +group clickbench + +init sql_benchmarks/clickbench/init/set_config.sql + +load sql_benchmarks/clickbench/init/load-${CLICKBENCH_TYPE:-single}.sql + +assert I +SELECT COUNT(*) > 0 from hits; +---- +true + +run +SELECT DATE_TRUNC('minute', to_timestamp_seconds("EventTime")) AS M, COUNT(*) AS PageViews FROM hits WHERE "CounterID" = 62 AND "EventDate" >= '2013-07-14' AND "EventDate" <= '2013-07-15' AND "IsRefresh" = 0 AND "DontCountHits" = 0 GROUP BY DATE_TRUNC('minute', to_timestamp_seconds("EventTime")) ORDER BY DATE_TRUNC('minute', M) LIMIT 10 OFFSET 1000; + +result sql_benchmarks/clickbench/results/${CLICKBENCH_TYPE:-single}/q42.csv diff --git a/benchmarks/sql_benchmarks/clickbench/init/load-partitioned.sql b/benchmarks/sql_benchmarks/clickbench/init/load-partitioned.sql new file mode 100644 index 0000000000000..d53522678f7d0 --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/init/load-partitioned.sql @@ -0,0 +1,3 @@ +CREATE EXTERNAL TABLE hits_raw STORED AS PARQUET LOCATION 'data/hits_partitioned/'; + +CREATE VIEW hits AS SELECT * EXCEPT ("EventDate"), CAST(CAST("EventDate" AS INTEGER) AS DATE) AS "EventDate" FROM hits_raw \ No newline at end of file diff --git a/benchmarks/sql_benchmarks/clickbench/init/load-single.sql b/benchmarks/sql_benchmarks/clickbench/init/load-single.sql new file mode 100644 index 0000000000000..9d1fbace340a5 --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/init/load-single.sql @@ -0,0 +1,3 @@ +CREATE EXTERNAL TABLE hits_raw STORED AS PARQUET LOCATION 'data/hits.parquet'; + +CREATE VIEW hits AS SELECT * EXCEPT ("EventDate"), CAST(CAST("EventDate" AS INTEGER) AS DATE) AS "EventDate" FROM hits_raw \ No newline at end of file diff --git a/benchmarks/sql_benchmarks/clickbench/init/set_config.sql b/benchmarks/sql_benchmarks/clickbench/init/set_config.sql new file mode 100644 index 0000000000000..9273427c26e0a --- /dev/null +++ b/benchmarks/sql_benchmarks/clickbench/init/set_config.sql @@ -0,0 +1,7 @@ +# ClickBench partitioned dataset was written by an ancient version of pyarrow that +# that wrote strings with the wrong logical type. To read it correctly, we must +# automatically convert binary to string. + +SET datafusion.execution.parquet.binary_as_string = true; +SET datafusion.execution.parquet.pushdown_filters = ${PUSHDOWN_FILTERS:-false}; +SET datafusion.execution.parquet.reorder_filters = ${REORDER_FILTERS:-false}; \ No newline at end of file