You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@impala.apache.org by ta...@apache.org on 2020/08/27 00:12:25 UTC
[impala] branch master updated: IMPALA-10095: Include query plan
tests for all of TPC-DS
This is an automated email from the ASF dual-hosted git repository.
tarmstrong pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/impala.git
The following commit(s) were added to refs/heads/master by this push:
new 0fcf846 IMPALA-10095: Include query plan tests for all of TPC-DS
0fcf846 is described below
commit 0fcf846592072e35a1d693ee432b8a0216e229ee
Author: Shant Hovsepian <sh...@cloudera.com>
AuthorDate: Wed Aug 19 09:29:01 2020 -0400
IMPALA-10095: Include query plan tests for all of TPC-DS
Added TpcdsPlannerTest to include each TPC-DS query as a separate plan
test file. Removed the previous tpcds-all test file.
This means when running only PlannerTest no TPC-DS plans are checked,
however as part of a full frontend test run the TpcdsPlannerTest will be
included.
Runs with cardinality and resource checks, as well as using parquet
tables to include predicate pushdowns.
Change-Id: Ibaf40d8b783be1dc7b62ba3269feb034cb8047da
Reviewed-on: http://gerrit.cloudera.org:8080/16345
Tested-by: Impala Public Jenkins <im...@cloudera.com>
Reviewed-by: Tim Armstrong <ta...@cloudera.com>
---
.../org/apache/impala/planner/PlannerTest.java | 10 -
.../org/apache/impala/planner/PlannerTestBase.java | 2 +-
.../apache/impala/planner/TpcdsPlannerTest.java | 572 +
.../queries/PlannerTest/tpcds-all.test | 16020 -------------------
.../queries/PlannerTest/tpcds/tpcds-q01.test | 685 +
.../queries/PlannerTest/tpcds/tpcds-q02.test | 787 +
.../queries/PlannerTest/tpcds/tpcds-q03.test | 355 +
.../queries/PlannerTest/tpcds/tpcds-q04.test | 2051 +++
.../queries/PlannerTest/tpcds/tpcds-q05.test | 813 +
.../queries/PlannerTest/tpcds/tpcds-q06.test | 762 +
.../queries/PlannerTest/tpcds/tpcds-q07.test | 501 +
.../queries/PlannerTest/tpcds/tpcds-q08.test | 735 +
.../queries/PlannerTest/tpcds/tpcds-q09.test | 1942 +++
.../queries/PlannerTest/tpcds/tpcds-q10a.test | 843 +
.../queries/PlannerTest/tpcds/tpcds-q11.test | 1399 ++
.../queries/PlannerTest/tpcds/tpcds-q12.test | 381 +
.../queries/PlannerTest/tpcds/tpcds-q13.test | 182 +
.../queries/PlannerTest/tpcds/tpcds-q14a.test | 5151 ++++++
.../queries/PlannerTest/tpcds/tpcds-q14b.test | 3677 +++++
.../queries/PlannerTest/tpcds/tpcds-q15.test | 444 +
.../queries/PlannerTest/tpcds/tpcds-q16.test | 587 +
.../queries/PlannerTest/tpcds/tpcds-q17.test | 792 +
.../queries/PlannerTest/tpcds/tpcds-q18.test | 473 +
.../queries/PlannerTest/tpcds/tpcds-q19.test | 617 +
.../queries/PlannerTest/tpcds/tpcds-q20.test | 383 +
.../queries/PlannerTest/tpcds/tpcds-q21.test | 425 +
.../queries/PlannerTest/tpcds/tpcds-q22.test | 296 +
.../queries/PlannerTest/tpcds/tpcds-q23a.test | 1230 ++
.../queries/PlannerTest/tpcds/tpcds-q23b.test | 2325 +++
.../queries/PlannerTest/tpcds/tpcds-q24a.test | 1254 ++
.../queries/PlannerTest/tpcds/tpcds-q24b.test | 1254 ++
.../queries/PlannerTest/tpcds/tpcds-q25.test | 786 +
.../queries/PlannerTest/tpcds/tpcds-q26.test | 508 +
.../queries/PlannerTest/tpcds/tpcds-q27.test | 336 +
.../queries/PlannerTest/tpcds/tpcds-q28.test | 1071 ++
.../queries/PlannerTest/tpcds/tpcds-q29.test | 786 +
.../queries/PlannerTest/tpcds/tpcds-q30.test | 868 +
.../queries/PlannerTest/tpcds/tpcds-q31.test | 1875 +++
.../queries/PlannerTest/tpcds/tpcds-q32.test | 523 +
.../queries/PlannerTest/tpcds/tpcds-q33.test | 879 +
.../queries/PlannerTest/tpcds/tpcds-q34.test | 540 +
.../queries/PlannerTest/tpcds/tpcds-q35a.test | 833 +
.../queries/PlannerTest/tpcds/tpcds-q36.test | 332 +
.../queries/PlannerTest/tpcds/tpcds-q37.test | 436 +
.../queries/PlannerTest/tpcds/tpcds-q38.test | 536 +
.../queries/PlannerTest/tpcds/tpcds-q39a.test | 832 +
.../queries/PlannerTest/tpcds/tpcds-q39b.test | 834 +
.../queries/PlannerTest/tpcds/tpcds-q40.test | 494 +
.../queries/PlannerTest/tpcds/tpcds-q41.test | 343 +
.../queries/PlannerTest/tpcds/tpcds-q42.test | 343 +
.../queries/PlannerTest/tpcds/tpcds-q43.test | 351 +
.../queries/PlannerTest/tpcds/tpcds-q44.test | 975 ++
.../queries/PlannerTest/tpcds/tpcds-q45.test | 391 +
.../queries/PlannerTest/tpcds/tpcds-q46.test | 696 +
.../queries/PlannerTest/tpcds/tpcds-q47.test | 1354 ++
.../queries/PlannerTest/tpcds/tpcds-q48.test | 499 +
.../queries/PlannerTest/tpcds/tpcds-q49.test | 1341 ++
.../queries/PlannerTest/tpcds/tpcds-q50.test | 533 +
.../queries/PlannerTest/tpcds/tpcds-q51.test | 690 +
.../queries/PlannerTest/tpcds/tpcds-q52.test | 342 +
.../queries/PlannerTest/tpcds/tpcds-q53.test | 418 +
.../queries/PlannerTest/tpcds/tpcds-q54.test | 1257 ++
.../queries/PlannerTest/tpcds/tpcds-q55.test | 339 +
.../queries/PlannerTest/tpcds/tpcds-q56.test | 1484 ++
.../queries/PlannerTest/tpcds/tpcds-q57.test | 1361 ++
.../queries/PlannerTest/tpcds/tpcds-q58.test | 1498 ++
.../queries/PlannerTest/tpcds/tpcds-q59.test | 865 +
.../queries/PlannerTest/tpcds/tpcds-q60.test | 891 ++
.../queries/PlannerTest/tpcds/tpcds-q61.test | 1233 ++
.../queries/PlannerTest/tpcds/tpcds-q62.test | 504 +
.../queries/PlannerTest/tpcds/tpcds-q63.test | 479 +
.../queries/PlannerTest/tpcds/tpcds-q64.test | 3452 ++++
.../queries/PlannerTest/tpcds/tpcds-q65.test | 726 +
.../queries/PlannerTest/tpcds/tpcds-q66.test | 1226 ++
.../queries/PlannerTest/tpcds/tpcds-q67.test | 411 +
.../queries/PlannerTest/tpcds/tpcds-q68.test | 680 +
.../queries/PlannerTest/tpcds/tpcds-q69.test | 859 +
.../queries/PlannerTest/tpcds/tpcds-q70.test | 501 +
.../queries/PlannerTest/tpcds/tpcds-q71.test | 698 +
.../queries/PlannerTest/tpcds/tpcds-q72.test | 994 ++
.../queries/PlannerTest/tpcds/tpcds-q73.test | 525 +
.../queries/PlannerTest/tpcds/tpcds-q74.test | 1381 ++
.../queries/PlannerTest/tpcds/tpcds-q75.test | 2166 +++
.../queries/PlannerTest/tpcds/tpcds-q76.test | 772 +
.../queries/PlannerTest/tpcds/tpcds-q77.test | 1027 ++
.../queries/PlannerTest/tpcds/tpcds-q78.test | 991 ++
.../queries/PlannerTest/tpcds/tpcds-q79.test | 533 +
.../queries/PlannerTest/tpcds/tpcds-q80.test | 1052 ++
.../queries/PlannerTest/tpcds/tpcds-q81.test | 874 +
.../queries/PlannerTest/tpcds/tpcds-q82.test | 426 +
.../queries/PlannerTest/tpcds/tpcds-q83.test | 1375 ++
.../queries/PlannerTest/tpcds/tpcds-q84.test | 442 +
.../queries/PlannerTest/tpcds/tpcds-q85.test | 804 +
.../queries/PlannerTest/tpcds/tpcds-q86.test | 278 +
.../queries/PlannerTest/tpcds/tpcds-q87.test | 530 +
.../queries/PlannerTest/tpcds/tpcds-q88.test | 2966 ++++
.../queries/PlannerTest/tpcds/tpcds-q89.test | 470 +
.../queries/PlannerTest/tpcds/tpcds-q90.test | 776 +
.../queries/PlannerTest/tpcds/tpcds-q91.test | 665 +
.../queries/PlannerTest/tpcds/tpcds-q92.test | 539 +
.../queries/PlannerTest/tpcds/tpcds-q93.test | 326 +
.../queries/PlannerTest/tpcds/tpcds-q94.test | 602 +
.../queries/PlannerTest/tpcds/tpcds-q95.test | 528 +
.../queries/PlannerTest/tpcds/tpcds-q96.test | 376 +
.../queries/PlannerTest/tpcds/tpcds-q97.test | 466 +
.../queries/PlannerTest/tpcds/tpcds-q98.test | 384 +
.../queries/PlannerTest/tpcds/tpcds-q99.test | 506 +
107 files changed, 92900 insertions(+), 16031 deletions(-)
diff --git a/fe/src/test/java/org/apache/impala/planner/PlannerTest.java b/fe/src/test/java/org/apache/impala/planner/PlannerTest.java
index 1d03e98..f30a49f 100644
--- a/fe/src/test/java/org/apache/impala/planner/PlannerTest.java
+++ b/fe/src/test/java/org/apache/impala/planner/PlannerTest.java
@@ -550,16 +550,6 @@ public class PlannerTest extends PlannerTestBase {
}
@Test
- public void testTpcds() {
- // Uses ss_sold_date_sk as the partition key of store_sales to allow static partition
- // pruning. The original predicates were rephrased in terms of the ss_sold_date_sk
- // partition key, with the query semantics identical to the original queries.
- runPlannerTestFile("tpcds-all", "tpcds",
- ImmutableSet.of(PlannerTestOption.INCLUDE_RESOURCE_HEADER,
- PlannerTestOption.VALIDATE_RESOURCES));
- }
-
- @Test
public void testSmallQueryOptimization() {
TQueryOptions options = new TQueryOptions();
options.setExec_single_node_rows_threshold(8);
diff --git a/fe/src/test/java/org/apache/impala/planner/PlannerTestBase.java b/fe/src/test/java/org/apache/impala/planner/PlannerTestBase.java
index afcfa11..bb53d06 100644
--- a/fe/src/test/java/org/apache/impala/planner/PlannerTestBase.java
+++ b/fe/src/test/java/org/apache/impala/planner/PlannerTestBase.java
@@ -89,7 +89,7 @@ public class PlannerTestBase extends FrontendTestBase {
private final static boolean GENERATE_OUTPUT_FILE = true;
private final java.nio.file.Path testDir_ = Paths.get("functional-planner", "queries",
"PlannerTest");
- private static java.nio.file.Path outDir_;
+ protected static java.nio.file.Path outDir_;
private static KuduClient kuduClient_;
// Map from plan ID (TPlanNodeId) to the plan node with that ID.
diff --git a/fe/src/test/java/org/apache/impala/planner/TpcdsPlannerTest.java b/fe/src/test/java/org/apache/impala/planner/TpcdsPlannerTest.java
new file mode 100644
index 0000000..4c94941
--- /dev/null
+++ b/fe/src/test/java/org/apache/impala/planner/TpcdsPlannerTest.java
@@ -0,0 +1,572 @@
+// 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.
+
+package org.apache.impala.planner;
+
+import java.nio.file.Paths;
+import java.util.Set;
+
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+import com.google.common.collect.ImmutableSet;
+
+/**
+ * Plans from the TPC-DS qualification queries at scale factor 1. Single node,
+ * Distributed and Parallel plans are all included. Cardinality and resource checks are
+ * also preformed.
+ */
+public class TpcdsPlannerTest extends PlannerTestBase {
+
+ private static Set<PlannerTestOption> testOptions =
+ ImmutableSet.of(PlannerTestOption.EXTENDED_EXPLAIN,
+ PlannerTestOption.INCLUDE_RESOURCE_HEADER, PlannerTestOption.VALIDATE_RESOURCES,
+ PlannerTestOption.VALIDATE_CARDINALITY);
+
+ @BeforeClass
+ public static void setUp() throws Exception {
+ PlannerTestBase.setUp();
+ Paths.get(outDir_.toString(), "tpcds").toFile().mkdirs();
+ }
+
+ @Test
+ public void testQ1() {
+ runPlannerTestFile("tpcds/tpcds-q01", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ2() {
+ runPlannerTestFile("tpcds/tpcds-q02", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ3() {
+ runPlannerTestFile("tpcds/tpcds-q03", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ4() {
+ runPlannerTestFile("tpcds/tpcds-q04", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ5() {
+ runPlannerTestFile("tpcds/tpcds-q05", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ6() {
+ runPlannerTestFile("tpcds/tpcds-q06", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ7() {
+ runPlannerTestFile("tpcds/tpcds-q07", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ8() {
+ runPlannerTestFile("tpcds/tpcds-q08", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ9() {
+ runPlannerTestFile("tpcds/tpcds-q09", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ10() {
+ // This is an official variant of q10 that uses a rewrite for lack of support for
+ // multiple subqueries in disjunctive predicates.
+ runPlannerTestFile("tpcds/tpcds-q10a", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ11() {
+ runPlannerTestFile("tpcds/tpcds-q11", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ12() {
+ runPlannerTestFile("tpcds/tpcds-q12", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ13() {
+ runPlannerTestFile("tpcds/tpcds-q13", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ14a() {
+ // First of the two query statements from the official q14.
+ runPlannerTestFile("tpcds/tpcds-q14a", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ14b() {
+ // Second of the two query statements from the official q14.
+ runPlannerTestFile("tpcds/tpcds-q14b", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ15() {
+ runPlannerTestFile("tpcds/tpcds-q15", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ16() {
+ runPlannerTestFile("tpcds/tpcds-q16", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ17() {
+ runPlannerTestFile("tpcds/tpcds-q17", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ18() {
+ runPlannerTestFile("tpcds/tpcds-q18", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ19() {
+ runPlannerTestFile("tpcds/tpcds-q19", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ20() {
+ runPlannerTestFile("tpcds/tpcds-q20", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ21() {
+ runPlannerTestFile("tpcds/tpcds-q21", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ22() {
+ runPlannerTestFile("tpcds/tpcds-q22", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ23a() {
+ // First of the two query statements from the official q23.
+ runPlannerTestFile("tpcds/tpcds-q23a", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ23b() {
+ // Second of the two query statements from the official q23.
+ runPlannerTestFile("tpcds/tpcds-q23b", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ24a() {
+ // First of the two query statements from the official q24.
+ runPlannerTestFile("tpcds/tpcds-q24a", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ24b() {
+ // Second of the two query statements from the official q24.
+ runPlannerTestFile("tpcds/tpcds-q24b", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ25() {
+ runPlannerTestFile("tpcds/tpcds-q25", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ26() {
+ runPlannerTestFile("tpcds/tpcds-q26", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ27() {
+ runPlannerTestFile("tpcds/tpcds-q27", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ28() {
+ runPlannerTestFile("tpcds/tpcds-q28", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ29() {
+ runPlannerTestFile("tpcds/tpcds-q29", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ30() {
+ runPlannerTestFile("tpcds/tpcds-q30", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ31() {
+ runPlannerTestFile("tpcds/tpcds-q31", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ32() {
+ runPlannerTestFile("tpcds/tpcds-q32", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ33() {
+ runPlannerTestFile("tpcds/tpcds-q33", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ34() {
+ runPlannerTestFile("tpcds/tpcds-q34", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ35() {
+ // This is an official variant of q35 that uses a rewrite for lack of support for
+ // multiple subqueries in disjunctive predicates.
+ runPlannerTestFile("tpcds/tpcds-q35a", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ36() {
+ runPlannerTestFile("tpcds/tpcds-q36", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ37() {
+ runPlannerTestFile("tpcds/tpcds-q37", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ38() {
+ runPlannerTestFile("tpcds/tpcds-q38", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ39a() {
+ // First of the two query statements from the official q39.
+ runPlannerTestFile("tpcds/tpcds-q39a", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ39b() {
+ // Second of the two query statements from the official q39.
+ runPlannerTestFile("tpcds/tpcds-q39b", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ40() {
+ runPlannerTestFile("tpcds/tpcds-q40", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ41() {
+ runPlannerTestFile("tpcds/tpcds-q41", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ42() {
+ runPlannerTestFile("tpcds/tpcds-q42", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ43() {
+ runPlannerTestFile("tpcds/tpcds-q43", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ44() {
+ runPlannerTestFile("tpcds/tpcds-q44", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ45() {
+ runPlannerTestFile("tpcds/tpcds-q45", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ46() {
+ runPlannerTestFile("tpcds/tpcds-q46", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ47() {
+ runPlannerTestFile("tpcds/tpcds-q47", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ48() {
+ runPlannerTestFile("tpcds/tpcds-q48", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ49() {
+ runPlannerTestFile("tpcds/tpcds-q49", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ50() {
+ runPlannerTestFile("tpcds/tpcds-q50", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ51() {
+ runPlannerTestFile("tpcds/tpcds-q51", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ52() {
+ runPlannerTestFile("tpcds/tpcds-q52", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ53() {
+ runPlannerTestFile("tpcds/tpcds-q53", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ54() {
+ runPlannerTestFile("tpcds/tpcds-q54", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ55() {
+ runPlannerTestFile("tpcds/tpcds-q55", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ56() {
+ runPlannerTestFile("tpcds/tpcds-q56", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ57() {
+ runPlannerTestFile("tpcds/tpcds-q57", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ58() {
+ runPlannerTestFile("tpcds/tpcds-q58", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ59() {
+ runPlannerTestFile("tpcds/tpcds-q59", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ60() {
+ runPlannerTestFile("tpcds/tpcds-q60", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ61() {
+ runPlannerTestFile("tpcds/tpcds-q61", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ62() {
+ runPlannerTestFile("tpcds/tpcds-q62", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ63() {
+ runPlannerTestFile("tpcds/tpcds-q63", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ64() {
+ runPlannerTestFile("tpcds/tpcds-q64", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ65() {
+ runPlannerTestFile("tpcds/tpcds-q65", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ66() {
+ runPlannerTestFile("tpcds/tpcds-q66", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ67() {
+ runPlannerTestFile("tpcds/tpcds-q67", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ68() {
+ runPlannerTestFile("tpcds/tpcds-q68", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ69() {
+ runPlannerTestFile("tpcds/tpcds-q69", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ70() {
+ runPlannerTestFile("tpcds/tpcds-q70", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ71() {
+ runPlannerTestFile("tpcds/tpcds-q71", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ72() {
+ runPlannerTestFile("tpcds/tpcds-q72", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ73() {
+ runPlannerTestFile("tpcds/tpcds-q73", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ74() {
+ runPlannerTestFile("tpcds/tpcds-q74", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ75() {
+ runPlannerTestFile("tpcds/tpcds-q75", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ76() {
+ runPlannerTestFile("tpcds/tpcds-q76", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ77() {
+ runPlannerTestFile("tpcds/tpcds-q77", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ78() {
+ runPlannerTestFile("tpcds/tpcds-q78", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ79() {
+ runPlannerTestFile("tpcds/tpcds-q79", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ80() {
+ runPlannerTestFile("tpcds/tpcds-q80", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ81() {
+ runPlannerTestFile("tpcds/tpcds-q81", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ82() {
+ runPlannerTestFile("tpcds/tpcds-q82", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ83() {
+ runPlannerTestFile("tpcds/tpcds-q83", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ84() {
+ runPlannerTestFile("tpcds/tpcds-q84", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ85() {
+ runPlannerTestFile("tpcds/tpcds-q85", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ86() {
+ runPlannerTestFile("tpcds/tpcds-q86", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ87() {
+ runPlannerTestFile("tpcds/tpcds-q87", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ88() {
+ runPlannerTestFile("tpcds/tpcds-q88", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ89() {
+ runPlannerTestFile("tpcds/tpcds-q89", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ90() {
+ runPlannerTestFile("tpcds/tpcds-q90", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ91() {
+ runPlannerTestFile("tpcds/tpcds-q91", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ92() {
+ runPlannerTestFile("tpcds/tpcds-q92", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ93() {
+ runPlannerTestFile("tpcds/tpcds-q93", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ94() {
+ runPlannerTestFile("tpcds/tpcds-q94", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ95() {
+ runPlannerTestFile("tpcds/tpcds-q95", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ96() {
+ runPlannerTestFile("tpcds/tpcds-q96", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ97() {
+ runPlannerTestFile("tpcds/tpcds-q97", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ98() {
+ runPlannerTestFile("tpcds/tpcds-q98", "tpcds_parquet", testOptions);
+ }
+
+ @Test
+ public void testQ99() {
+ runPlannerTestFile("tpcds/tpcds-q99", "tpcds_parquet", testOptions);
+ }
+}
diff --git a/testdata/workloads/functional-planner/queries/PlannerTest/tpcds-all.test b/testdata/workloads/functional-planner/queries/PlannerTest/tpcds-all.test
deleted file mode 100644
index b5d9a20..0000000
--- a/testdata/workloads/functional-planner/queries/PlannerTest/tpcds-all.test
+++ /dev/null
@@ -1,16020 +0,0 @@
-# TPCDS-Q3
-select
- dt.d_year,
- item.i_brand_id brand_id,
- item.i_brand brand,
- sum(ss_ext_sales_price) sum_agg
-from
- date_dim dt,
- store_sales,
- item
-where
- dt.d_date_sk = store_sales.ss_sold_date_sk
- and store_sales.ss_item_sk = item.i_item_sk
- and item.i_manufact_id = 436
- and dt.d_moy = 12
-group by
- dt.d_year,
- item.i_brand,
- item.i_brand_id
-order by
- dt.d_year,
- sum_agg desc,
- brand_id
-limit 100
----- PLAN
-Max Per-Host Resource Reservation: Memory=29.88MB Threads=4
-Per-Host Resource Estimates: Memory=214MB
-PLAN-ROOT SINK
-|
-06:TOP-N [LIMIT=100]
-| order by: dt.d_year ASC, sum(ss_ext_sales_price) DESC, item.i_brand_id ASC
-| row-size=52B cardinality=100
-|
-05:AGGREGATE [FINALIZE]
-| output: sum(ss_ext_sales_price)
-| group by: dt.d_year, item.i_brand, item.i_brand_id
-| row-size=52B cardinality=3.04K
-|
-04:HASH JOIN [INNER JOIN]
-| hash predicates: store_sales.ss_sold_date_sk = dt.d_date_sk
-| runtime filters: RF000 <- dt.d_date_sk
-| row-size=72B cardinality=3.04K
-|
-|--00:SCAN HDFS [tpcds.date_dim dt]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: dt.d_moy = 12
-| row-size=12B cardinality=6.09K
-|
-03:HASH JOIN [INNER JOIN]
-| hash predicates: store_sales.ss_item_sk = item.i_item_sk
-| runtime filters: RF002 <- item.i_item_sk
-| row-size=60B cardinality=3.04K
-|
-|--02:SCAN HDFS [tpcds.item]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| predicates: item.i_manufact_id = 436
-| row-size=44B cardinality=19
-|
-01:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF000 -> store_sales.ss_sold_date_sk, RF002 -> store_sales.ss_item_sk
- row-size=16B cardinality=2.88M
----- DISTRIBUTEDPLAN
-Max Per-Host Resource Reservation: Memory=34.81MB Threads=9
-Per-Host Resource Estimates: Memory=235MB
-PLAN-ROOT SINK
-|
-12:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: dt.d_year ASC, sum(ss_ext_sales_price) DESC, item.i_brand_id ASC
-| limit: 100
-|
-06:TOP-N [LIMIT=100]
-| order by: dt.d_year ASC, sum(ss_ext_sales_price) DESC, item.i_brand_id ASC
-| row-size=52B cardinality=100
-|
-11:AGGREGATE [FINALIZE]
-| output: sum:merge(ss_ext_sales_price)
-| group by: dt.d_year, item.i_brand, item.i_brand_id
-| row-size=52B cardinality=3.04K
-|
-10:EXCHANGE [HASH(dt.d_year,item.i_brand,item.i_brand_id)]
-|
-05:AGGREGATE [STREAMING]
-| output: sum(ss_ext_sales_price)
-| group by: dt.d_year, item.i_brand, item.i_brand_id
-| row-size=52B cardinality=3.04K
-|
-04:HASH JOIN [INNER JOIN, PARTITIONED]
-| hash predicates: store_sales.ss_sold_date_sk = dt.d_date_sk
-| runtime filters: RF000 <- dt.d_date_sk
-| row-size=72B cardinality=3.04K
-|
-|--09:EXCHANGE [HASH(dt.d_date_sk)]
-| |
-| 00:SCAN HDFS [tpcds.date_dim dt]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: dt.d_moy = 12
-| row-size=12B cardinality=6.09K
-|
-08:EXCHANGE [HASH(store_sales.ss_sold_date_sk)]
-|
-03:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_item_sk = item.i_item_sk
-| runtime filters: RF002 <- item.i_item_sk
-| row-size=60B cardinality=3.04K
-|
-|--07:EXCHANGE [BROADCAST]
-| |
-| 02:SCAN HDFS [tpcds.item]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| predicates: item.i_manufact_id = 436
-| row-size=44B cardinality=19
-|
-01:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF000 -> store_sales.ss_sold_date_sk, RF002 -> store_sales.ss_item_sk
- row-size=16B cardinality=2.88M
----- PARALLELPLANS
-Max Per-Host Resource Reservation: Memory=52.62MB Threads=12
-Per-Host Resource Estimates: Memory=127MB
-PLAN-ROOT SINK
-|
-12:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: dt.d_year ASC, sum(ss_ext_sales_price) DESC, item.i_brand_id ASC
-| limit: 100
-|
-06:TOP-N [LIMIT=100]
-| order by: dt.d_year ASC, sum(ss_ext_sales_price) DESC, item.i_brand_id ASC
-| row-size=52B cardinality=100
-|
-11:AGGREGATE [FINALIZE]
-| output: sum:merge(ss_ext_sales_price)
-| group by: dt.d_year, item.i_brand, item.i_brand_id
-| row-size=52B cardinality=3.04K
-|
-10:EXCHANGE [HASH(dt.d_year,item.i_brand,item.i_brand_id)]
-|
-05:AGGREGATE [STREAMING]
-| output: sum(ss_ext_sales_price)
-| group by: dt.d_year, item.i_brand, item.i_brand_id
-| row-size=52B cardinality=3.04K
-|
-04:HASH JOIN [INNER JOIN, PARTITIONED]
-| hash predicates: store_sales.ss_sold_date_sk = dt.d_date_sk
-| row-size=72B cardinality=3.04K
-|
-|--JOIN BUILD
-| | join-table-id=00 plan-id=01 cohort-id=01
-| | build expressions: dt.d_date_sk
-| | runtime filters: RF000 <- dt.d_date_sk
-| |
-| 09:EXCHANGE [HASH(dt.d_date_sk)]
-| |
-| 00:SCAN HDFS [tpcds.date_dim dt]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: dt.d_moy = 12
-| row-size=12B cardinality=6.09K
-|
-08:EXCHANGE [HASH(store_sales.ss_sold_date_sk)]
-|
-03:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_item_sk = item.i_item_sk
-| row-size=60B cardinality=3.04K
-|
-|--JOIN BUILD
-| | join-table-id=01 plan-id=02 cohort-id=01
-| | build expressions: item.i_item_sk
-| | runtime filters: RF002 <- item.i_item_sk
-| |
-| 07:EXCHANGE [BROADCAST]
-| |
-| 02:SCAN HDFS [tpcds.item]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| predicates: item.i_manufact_id = 436
-| row-size=44B cardinality=19
-|
-01:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF000 -> store_sales.ss_sold_date_sk, RF002 -> store_sales.ss_item_sk
- row-size=16B cardinality=2.88M
-====
-# TPCDS-Q7
-select
- i_item_id,
- avg(ss_quantity) agg1,
- avg(ss_list_price) agg2,
- avg(ss_coupon_amt) agg3,
- avg(ss_sales_price) agg4
-from
- store_sales,
- customer_demographics,
- date_dim,
- item,
- promotion
-where
- ss_sold_date_sk = d_date_sk
- and ss_item_sk = i_item_sk
- and ss_cdemo_sk = cd_demo_sk
- and ss_promo_sk = p_promo_sk
- and cd_gender = 'F'
- and cd_marital_status = 'W'
- and cd_education_status = 'Primary'
- and (p_channel_email = 'N'
- or p_channel_event = 'N')
- and d_year = 1998
-group by
- i_item_id
-order by
- i_item_id
-limit 100
----- PLAN
-Max Per-Host Resource Reservation: Memory=50.38MB Threads=6
-Per-Host Resource Estimates: Memory=434MB
-PLAN-ROOT SINK
-|
-10:TOP-N [LIMIT=100]
-| order by: i_item_id ASC
-| row-size=60B cardinality=100
-|
-09:AGGREGATE [FINALIZE]
-| output: avg(ss_quantity), avg(ss_list_price), avg(ss_coupon_amt), avg(ss_sales_price)
-| group by: i_item_id
-| row-size=60B cardinality=8.85K
-|
-08:HASH JOIN [INNER JOIN]
-| hash predicates: ss_item_sk = i_item_sk
-| runtime filters: RF000 <- i_item_sk
-| row-size=162B cardinality=261.60K
-|
-|--03:SCAN HDFS [tpcds.item]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| row-size=36B cardinality=18.00K
-|
-07:HASH JOIN [INNER JOIN]
-| hash predicates: ss_promo_sk = p_promo_sk
-| runtime filters: RF002 <- p_promo_sk
-| row-size=126B cardinality=261.60K
-|
-|--04:SCAN HDFS [tpcds.promotion]
-| HDFS partitions=1/1 files=1 size=36.36KB
-| predicates: (p_channel_email = 'N' OR p_channel_event = 'N')
-| row-size=30B cardinality=300
-|
-06:HASH JOIN [INNER JOIN]
-| hash predicates: ss_cdemo_sk = cd_demo_sk
-| runtime filters: RF004 <- cd_demo_sk
-| row-size=96B cardinality=263.34K
-|
-|--01:SCAN HDFS [tpcds.customer_demographics]
-| HDFS partitions=1/1 files=1 size=76.92MB
-| predicates: cd_marital_status = 'W', cd_gender = 'F', cd_education_status = 'Primary'
-| row-size=52B cardinality=97.40K
-|
-05:HASH JOIN [INNER JOIN]
-| hash predicates: ss_sold_date_sk = d_date_sk
-| runtime filters: RF006 <- d_date_sk
-| row-size=44B cardinality=589.03K
-|
-|--02:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: d_year = 1998
-| row-size=8B cardinality=373
-|
-00:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF000 -> ss_item_sk, RF002 -> ss_promo_sk, RF004 -> ss_cdemo_sk, RF006 -> ss_sold_date_sk
- row-size=36B cardinality=2.88M
----- DISTRIBUTEDPLAN
-Max Per-Host Resource Reservation: Memory=54.31MB Threads=12
-Per-Host Resource Estimates: Memory=460MB
-PLAN-ROOT SINK
-|
-17:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: i_item_id ASC
-| limit: 100
-|
-10:TOP-N [LIMIT=100]
-| order by: i_item_id ASC
-| row-size=60B cardinality=100
-|
-16:AGGREGATE [FINALIZE]
-| output: avg:merge(ss_quantity), avg:merge(ss_list_price), avg:merge(ss_coupon_amt), avg:merge(ss_sales_price)
-| group by: i_item_id
-| row-size=60B cardinality=8.85K
-|
-15:EXCHANGE [HASH(i_item_id)]
-|
-09:AGGREGATE [STREAMING]
-| output: avg(ss_quantity), avg(ss_list_price), avg(ss_coupon_amt), avg(ss_sales_price)
-| group by: i_item_id
-| row-size=60B cardinality=8.85K
-|
-08:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_item_sk = i_item_sk
-| runtime filters: RF000 <- i_item_sk
-| row-size=162B cardinality=261.60K
-|
-|--14:EXCHANGE [BROADCAST]
-| |
-| 03:SCAN HDFS [tpcds.item]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| row-size=36B cardinality=18.00K
-|
-07:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_promo_sk = p_promo_sk
-| runtime filters: RF002 <- p_promo_sk
-| row-size=126B cardinality=261.60K
-|
-|--13:EXCHANGE [BROADCAST]
-| |
-| 04:SCAN HDFS [tpcds.promotion]
-| HDFS partitions=1/1 files=1 size=36.36KB
-| predicates: (p_channel_email = 'N' OR p_channel_event = 'N')
-| row-size=30B cardinality=300
-|
-06:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_cdemo_sk = cd_demo_sk
-| runtime filters: RF004 <- cd_demo_sk
-| row-size=96B cardinality=263.34K
-|
-|--12:EXCHANGE [BROADCAST]
-| |
-| 01:SCAN HDFS [tpcds.customer_demographics]
-| HDFS partitions=1/1 files=1 size=76.92MB
-| predicates: cd_marital_status = 'W', cd_gender = 'F', cd_education_status = 'Primary'
-| row-size=52B cardinality=97.40K
-|
-05:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_sold_date_sk = d_date_sk
-| runtime filters: RF006 <- d_date_sk
-| row-size=44B cardinality=589.03K
-|
-|--11:EXCHANGE [BROADCAST]
-| |
-| 02:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: d_year = 1998
-| row-size=8B cardinality=373
-|
-00:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF000 -> ss_item_sk, RF002 -> ss_promo_sk, RF004 -> ss_cdemo_sk, RF006 -> ss_sold_date_sk
- row-size=36B cardinality=2.88M
----- PARALLELPLANS
-Max Per-Host Resource Reservation: Memory=84.56MB Threads=13
-Per-Host Resource Estimates: Memory=259MB
-PLAN-ROOT SINK
-|
-17:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: i_item_id ASC
-| limit: 100
-|
-10:TOP-N [LIMIT=100]
-| order by: i_item_id ASC
-| row-size=60B cardinality=100
-|
-16:AGGREGATE [FINALIZE]
-| output: avg:merge(ss_quantity), avg:merge(ss_list_price), avg:merge(ss_coupon_amt), avg:merge(ss_sales_price)
-| group by: i_item_id
-| row-size=60B cardinality=8.85K
-|
-15:EXCHANGE [HASH(i_item_id)]
-|
-09:AGGREGATE [STREAMING]
-| output: avg(ss_quantity), avg(ss_list_price), avg(ss_coupon_amt), avg(ss_sales_price)
-| group by: i_item_id
-| row-size=60B cardinality=8.85K
-|
-08:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_item_sk = i_item_sk
-| row-size=162B cardinality=261.60K
-|
-|--JOIN BUILD
-| | join-table-id=00 plan-id=01 cohort-id=01
-| | build expressions: i_item_sk
-| | runtime filters: RF000 <- i_item_sk
-| |
-| 14:EXCHANGE [BROADCAST]
-| |
-| 03:SCAN HDFS [tpcds.item]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| row-size=36B cardinality=18.00K
-|
-07:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_promo_sk = p_promo_sk
-| row-size=126B cardinality=261.60K
-|
-|--JOIN BUILD
-| | join-table-id=01 plan-id=02 cohort-id=01
-| | build expressions: p_promo_sk
-| | runtime filters: RF002 <- p_promo_sk
-| |
-| 13:EXCHANGE [BROADCAST]
-| |
-| 04:SCAN HDFS [tpcds.promotion]
-| HDFS partitions=1/1 files=1 size=36.36KB
-| predicates: (p_channel_email = 'N' OR p_channel_event = 'N')
-| row-size=30B cardinality=300
-|
-06:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_cdemo_sk = cd_demo_sk
-| row-size=96B cardinality=263.34K
-|
-|--JOIN BUILD
-| | join-table-id=02 plan-id=03 cohort-id=01
-| | build expressions: cd_demo_sk
-| | runtime filters: RF004 <- cd_demo_sk
-| |
-| 12:EXCHANGE [BROADCAST]
-| |
-| 01:SCAN HDFS [tpcds.customer_demographics]
-| HDFS partitions=1/1 files=1 size=76.92MB
-| predicates: cd_marital_status = 'W', cd_gender = 'F', cd_education_status = 'Primary'
-| row-size=52B cardinality=97.40K
-|
-05:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_sold_date_sk = d_date_sk
-| row-size=44B cardinality=589.03K
-|
-|--JOIN BUILD
-| | join-table-id=03 plan-id=04 cohort-id=01
-| | build expressions: d_date_sk
-| | runtime filters: RF006 <- d_date_sk
-| |
-| 11:EXCHANGE [BROADCAST]
-| |
-| 02:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: d_year = 1998
-| row-size=8B cardinality=373
-|
-00:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF000 -> ss_item_sk, RF002 -> ss_promo_sk, RF004 -> ss_cdemo_sk, RF006 -> ss_sold_date_sk
- row-size=36B cardinality=2.88M
-====
-# TPCDS-Q8
-select
- s_store_name,
- sum(ss_net_profit)
-from
- store_sales
- join store on (store_sales.ss_store_sk = store.s_store_sk)
- join
- (select
- a.ca_zip
- from
- (select
- substr(ca_zip, 1, 5) ca_zip,
- count( *) cnt
- from
- customer_address
- join customer on (customer_address.ca_address_sk = customer.c_current_addr_sk)
- where
- c_preferred_cust_flag = 'Y'
- group by
- ca_zip
- having
- count(*) > 10
- ) a
- left semi join
- (select
- substr(ca_zip, 1, 5) ca_zip
- from
- customer_address
- where
- substr(ca_zip, 1, 5) in ('89436', '30868', '65085', '22977', '83927', '77557', '58429', '40697', '80614', '10502', '32779',
- '91137', '61265', '98294', '17921', '18427', '21203', '59362', '87291', '84093', '21505', '17184', '10866', '67898', '25797',
- '28055', '18377', '80332', '74535', '21757', '29742', '90885', '29898', '17819', '40811', '25990', '47513', '89531', '91068',
- '10391', '18846', '99223', '82637', '41368', '83658', '86199', '81625', '26696', '89338', '88425', '32200', '81427', '19053',
- '77471', '36610', '99823', '43276', '41249', '48584', '83550', '82276', '18842', '78890', '14090', '38123', '40936', '34425',
- '19850', '43286', '80072', '79188', '54191', '11395', '50497', '84861', '90733', '21068', '57666', '37119', '25004', '57835',
- '70067', '62878', '95806', '19303', '18840', '19124', '29785', '16737', '16022', '49613', '89977', '68310', '60069', '98360',
- '48649', '39050', '41793', '25002', '27413', '39736', '47208', '16515', '94808', '57648', '15009', '80015', '42961', '63982',
- '21744', '71853', '81087', '67468', '34175', '64008', '20261', '11201', '51799', '48043', '45645', '61163', '48375', '36447',
- '57042', '21218', '41100', '89951', '22745', '35851', '83326', '61125', '78298', '80752', '49858', '52940', '96976', '63792',
- '11376', '53582', '18717', '90226', '50530', '94203', '99447', '27670', '96577', '57856', '56372', '16165', '23427', '54561',
- '28806', '44439', '22926', '30123', '61451', '92397', '56979', '92309', '70873', '13355', '21801', '46346', '37562', '56458',
- '28286', '47306', '99555', '69399', '26234', '47546', '49661', '88601', '35943', '39936', '25632', '24611', '44166', '56648',
- '30379', '59785', '11110', '14329', '93815', '52226', '71381', '13842', '25612', '63294', '14664', '21077', '82626', '18799',
- '60915', '81020', '56447', '76619', '11433', '13414', '42548', '92713', '70467', '30884', '47484', '16072', '38936', '13036',
- '88376', '45539', '35901', '19506', '65690', '73957', '71850', '49231', '14276', '20005', '18384', '76615', '11635', '38177',
- '55607', '41369', '95447', '58581', '58149', '91946', '33790', '76232', '75692', '95464', '22246', '51061', '56692', '53121',
- '77209', '15482', '10688', '14868', '45907', '73520', '72666', '25734', '17959', '24677', '66446', '94627', '53535', '15560',
- '41967', '69297', '11929', '59403', '33283', '52232', '57350', '43933', '40921', '36635', '10827', '71286', '19736', '80619',
- '25251', '95042', '15526', '36496', '55854', '49124', '81980', '35375', '49157', '63512', '28944', '14946', '36503', '54010',
- '18767', '23969', '43905', '66979', '33113', '21286', '58471', '59080', '13395', '79144', '70373', '67031', '38360', '26705',
- '50906', '52406', '26066', '73146', '15884', '31897', '30045', '61068', '45550', '92454', '13376', '14354', '19770', '22928',
- '97790', '50723', '46081', '30202', '14410', '20223', '88500', '67298', '13261', '14172', '81410', '93578', '83583', '46047',
- '94167', '82564', '21156', '15799', '86709', '37931', '74703', '83103', '23054', '70470', '72008', '49247', '91911', '69998',
- '20961', '70070', '63197', '54853', '88191', '91830', '49521', '19454', '81450', '89091', '62378', '25683', '61869', '51744',
- '36580', '85778', '36871', '48121', '28810', '83712', '45486', '67393', '26935', '42393', '20132', '55349', '86057', '21309',
- '80218', '10094', '11357', '48819', '39734', '40758', '30432', '21204', '29467', '30214', '61024', '55307', '74621', '11622',
- '68908', '33032', '52868', '99194', '99900', '84936', '69036', '99149', '45013', '32895', '59004', '32322', '14933', '32936',
- '33562', '72550', '27385', '58049', '58200', '16808', '21360', '32961', '18586', '79307', '15492')
- ) b
- on (a.ca_zip = b.ca_zip)
- ) v1 on (substr(store.s_zip, 1, 2) = substr(v1.ca_zip, 1, 2))
-where
- ss_sold_date_sk between 2452276 and 2452366
-group by
- s_store_name
-order by
- s_store_name
-limit 100
----- PLAN
-Max Per-Host Resource Reservation: Memory=32.38MB Threads=6
-Per-Host Resource Estimates: Memory=280MB
-PLAN-ROOT SINK
-|
-11:TOP-N [LIMIT=100]
-| order by: s_store_name ASC
-| row-size=32B cardinality=8
-|
-10:AGGREGATE [FINALIZE]
-| output: sum(ss_net_profit)
-| group by: s_store_name
-| row-size=32B cardinality=8
-|
-09:HASH JOIN [INNER JOIN]
-| hash predicates: substr(store.s_zip, 1, 2) = substr(substr(ca_zip, 1, 5), 1, 2)
-| runtime filters: RF000 <- substr(substr(ca_zip, 1, 5), 1, 2)
-| row-size=65B cardinality=84.40K
-|
-|--07:HASH JOIN [RIGHT SEMI JOIN]
-| | hash predicates: substr(ca_zip, 1, 5) = substr(ca_zip, 1, 5)
-| | runtime filters: RF004 <- substr(ca_zip, 1, 5)
-| | row-size=20B cardinality=396
-| |
-| |--05:AGGREGATE [FINALIZE]
-| | | output: count(*)
-| | | group by: substr(ca_zip, 1, 5)
-| | | having: count(*) > 10
-| | | row-size=20B cardinality=396
-| | |
-| | 04:HASH JOIN [INNER JOIN]
-| | | hash predicates: customer_address.ca_address_sk = customer.c_current_addr_sk
-| | | runtime filters: RF006 <- customer.c_current_addr_sk
-| | | row-size=38B cardinality=51.30K
-| | |
-| | |--03:SCAN HDFS [tpcds.customer]
-| | | HDFS partitions=1/1 files=1 size=12.60MB
-| | | predicates: c_preferred_cust_flag = 'Y'
-| | | row-size=17B cardinality=50.00K
-| | |
-| | 02:SCAN HDFS [tpcds.customer_address]
-| | HDFS partitions=1/1 files=1 size=5.25MB
-| | runtime filters: RF006 -> customer_address.ca_address_sk
-| | row-size=21B cardinality=50.00K
-| |
-| 06:SCAN HDFS [tpcds.customer_address]
-| HDFS partitions=1/1 files=1 size=5.25MB
-| predicates: substr(ca_zip, 1, 5) IN ('89436', '30868', '65085', '22977', '83927', '77557', '58429', '40697', '80614', '10502', '32779', '91137', '61265', '98294', '17921', '18427', '21203', '59362', '87291', '84093', '21505', '17184', '10866', '67898', '25797', '28055', '18377', '80332', '74535', '21757', '29742', '90885', '29898', '17819', '40811', '25990', '47513', '89531', '91068', '10391', '18846', '99223', '82637', '41368', '83658', '86199', '81625', '26696', '89338', '88425', [...]
-| runtime filters: RF004 -> substr(ca_zip, 1, 5)
-| row-size=17B cardinality=5.00K
-|
-08:HASH JOIN [INNER JOIN]
-| hash predicates: store_sales.ss_store_sk = store.s_store_sk
-| runtime filters: RF002 <- store.s_store_sk
-| row-size=45B cardinality=84.40K
-|
-|--01:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| runtime filters: RF000 -> substr(store.s_zip, 1, 2)
-| row-size=37B cardinality=12
-|
-00:SCAN HDFS [tpcds.store_sales]
- partition predicates: ss_sold_date_sk >= 2452276, ss_sold_date_sk <= 2452366
- HDFS partitions=90/1824 files=90 size=10.32MB
- runtime filters: RF002 -> store_sales.ss_store_sk
- row-size=8B cardinality=84.40K
----- DISTRIBUTEDPLAN
-Max Per-Host Resource Reservation: Memory=46.13MB Threads=13
-Per-Host Resource Estimates: Memory=327MB
-PLAN-ROOT SINK
-|
-20:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: s_store_name ASC
-| limit: 100
-|
-11:TOP-N [LIMIT=100]
-| order by: s_store_name ASC
-| row-size=32B cardinality=8
-|
-19:AGGREGATE [FINALIZE]
-| output: sum:merge(ss_net_profit)
-| group by: s_store_name
-| row-size=32B cardinality=8
-|
-18:EXCHANGE [HASH(s_store_name)]
-|
-10:AGGREGATE [STREAMING]
-| output: sum(ss_net_profit)
-| group by: s_store_name
-| row-size=32B cardinality=8
-|
-09:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: substr(store.s_zip, 1, 2) = substr(substr(ca_zip, 1, 5), 1, 2)
-| runtime filters: RF000 <- substr(substr(ca_zip, 1, 5), 1, 2)
-| row-size=65B cardinality=84.40K
-|
-|--17:EXCHANGE [BROADCAST]
-| |
-| 07:HASH JOIN [RIGHT SEMI JOIN, PARTITIONED]
-| | hash predicates: substr(ca_zip, 1, 5) = substr(ca_zip, 1, 5)
-| | runtime filters: RF004 <- substr(ca_zip, 1, 5)
-| | row-size=20B cardinality=396
-| |
-| |--15:AGGREGATE [FINALIZE]
-| | | output: count:merge(*)
-| | | group by: substr(ca_zip, 1, 5)
-| | | having: count(*) > 10
-| | | row-size=20B cardinality=396
-| | |
-| | 14:EXCHANGE [HASH(substr(ca_zip, 1, 5))]
-| | |
-| | 05:AGGREGATE [STREAMING]
-| | | output: count(*)
-| | | group by: substr(ca_zip, 1, 5)
-| | | row-size=20B cardinality=3.96K
-| | |
-| | 04:HASH JOIN [INNER JOIN, BROADCAST]
-| | | hash predicates: customer_address.ca_address_sk = customer.c_current_addr_sk
-| | | runtime filters: RF006 <- customer.c_current_addr_sk
-| | | row-size=38B cardinality=51.30K
-| | |
-| | |--13:EXCHANGE [BROADCAST]
-| | | |
-| | | 03:SCAN HDFS [tpcds.customer]
-| | | HDFS partitions=1/1 files=1 size=12.60MB
-| | | predicates: c_preferred_cust_flag = 'Y'
-| | | row-size=17B cardinality=50.00K
-| | |
-| | 02:SCAN HDFS [tpcds.customer_address]
-| | HDFS partitions=1/1 files=1 size=5.25MB
-| | runtime filters: RF006 -> customer_address.ca_address_sk
-| | row-size=21B cardinality=50.00K
-| |
-| 16:EXCHANGE [HASH(substr(ca_zip, 1, 5))]
-| |
-| 06:SCAN HDFS [tpcds.customer_address]
-| HDFS partitions=1/1 files=1 size=5.25MB
-| predicates: substr(ca_zip, 1, 5) IN ('89436', '30868', '65085', '22977', '83927', '77557', '58429', '40697', '80614', '10502', '32779', '91137', '61265', '98294', '17921', '18427', '21203', '59362', '87291', '84093', '21505', '17184', '10866', '67898', '25797', '28055', '18377', '80332', '74535', '21757', '29742', '90885', '29898', '17819', '40811', '25990', '47513', '89531', '91068', '10391', '18846', '99223', '82637', '41368', '83658', '86199', '81625', '26696', '89338', '88425', [...]
-| runtime filters: RF004 -> substr(ca_zip, 1, 5)
-| row-size=17B cardinality=5.00K
-|
-08:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_store_sk = store.s_store_sk
-| runtime filters: RF002 <- store.s_store_sk
-| row-size=45B cardinality=84.40K
-|
-|--12:EXCHANGE [BROADCAST]
-| |
-| 01:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| runtime filters: RF000 -> substr(store.s_zip, 1, 2)
-| row-size=37B cardinality=12
-|
-00:SCAN HDFS [tpcds.store_sales]
- partition predicates: ss_sold_date_sk >= 2452276, ss_sold_date_sk <= 2452366
- HDFS partitions=90/1824 files=90 size=10.32MB
- runtime filters: RF002 -> store_sales.ss_store_sk
- row-size=8B cardinality=84.40K
----- PARALLELPLANS
-Max Per-Host Resource Reservation: Memory=58.38MB Threads=14
-Per-Host Resource Estimates: Memory=187MB
-PLAN-ROOT SINK
-|
-20:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: s_store_name ASC
-| limit: 100
-|
-11:TOP-N [LIMIT=100]
-| order by: s_store_name ASC
-| row-size=32B cardinality=8
-|
-19:AGGREGATE [FINALIZE]
-| output: sum:merge(ss_net_profit)
-| group by: s_store_name
-| row-size=32B cardinality=8
-|
-18:EXCHANGE [HASH(s_store_name)]
-|
-10:AGGREGATE [STREAMING]
-| output: sum(ss_net_profit)
-| group by: s_store_name
-| row-size=32B cardinality=8
-|
-09:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: substr(store.s_zip, 1, 2) = substr(substr(ca_zip, 1, 5), 1, 2)
-| row-size=65B cardinality=84.40K
-|
-|--JOIN BUILD
-| | join-table-id=00 plan-id=01 cohort-id=01
-| | build expressions: substr(substr(ca_zip, 1, 5), 1, 2)
-| | runtime filters: RF000 <- substr(substr(ca_zip, 1, 5), 1, 2)
-| |
-| 17:EXCHANGE [BROADCAST]
-| |
-| 07:HASH JOIN [RIGHT SEMI JOIN, PARTITIONED]
-| | hash predicates: substr(ca_zip, 1, 5) = substr(ca_zip, 1, 5)
-| | row-size=20B cardinality=396
-| |
-| |--JOIN BUILD
-| | | join-table-id=01 plan-id=02 cohort-id=02
-| | | build expressions: substr(ca_zip, 1, 5)
-| | | runtime filters: RF004 <- substr(ca_zip, 1, 5)
-| | |
-| | 15:AGGREGATE [FINALIZE]
-| | | output: count:merge(*)
-| | | group by: substr(ca_zip, 1, 5)
-| | | having: count(*) > 10
-| | | row-size=20B cardinality=396
-| | |
-| | 14:EXCHANGE [HASH(substr(ca_zip, 1, 5))]
-| | |
-| | 05:AGGREGATE [STREAMING]
-| | | output: count(*)
-| | | group by: substr(ca_zip, 1, 5)
-| | | row-size=20B cardinality=3.96K
-| | |
-| | 04:HASH JOIN [INNER JOIN, BROADCAST]
-| | | hash predicates: customer_address.ca_address_sk = customer.c_current_addr_sk
-| | | row-size=38B cardinality=51.30K
-| | |
-| | |--JOIN BUILD
-| | | | join-table-id=02 plan-id=03 cohort-id=03
-| | | | build expressions: customer.c_current_addr_sk
-| | | | runtime filters: RF006 <- customer.c_current_addr_sk
-| | | |
-| | | 13:EXCHANGE [BROADCAST]
-| | | |
-| | | 03:SCAN HDFS [tpcds.customer]
-| | | HDFS partitions=1/1 files=1 size=12.60MB
-| | | predicates: c_preferred_cust_flag = 'Y'
-| | | row-size=17B cardinality=50.00K
-| | |
-| | 02:SCAN HDFS [tpcds.customer_address]
-| | HDFS partitions=1/1 files=1 size=5.25MB
-| | runtime filters: RF006 -> customer_address.ca_address_sk
-| | row-size=21B cardinality=50.00K
-| |
-| 16:EXCHANGE [HASH(substr(ca_zip, 1, 5))]
-| |
-| 06:SCAN HDFS [tpcds.customer_address]
-| HDFS partitions=1/1 files=1 size=5.25MB
-| predicates: substr(ca_zip, 1, 5) IN ('89436', '30868', '65085', '22977', '83927', '77557', '58429', '40697', '80614', '10502', '32779', '91137', '61265', '98294', '17921', '18427', '21203', '59362', '87291', '84093', '21505', '17184', '10866', '67898', '25797', '28055', '18377', '80332', '74535', '21757', '29742', '90885', '29898', '17819', '40811', '25990', '47513', '89531', '91068', '10391', '18846', '99223', '82637', '41368', '83658', '86199', '81625', '26696', '89338', '88425', [...]
-| runtime filters: RF004 -> substr(ca_zip, 1, 5)
-| row-size=17B cardinality=5.00K
-|
-08:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_store_sk = store.s_store_sk
-| row-size=45B cardinality=84.40K
-|
-|--JOIN BUILD
-| | join-table-id=03 plan-id=04 cohort-id=01
-| | build expressions: store.s_store_sk
-| | runtime filters: RF002 <- store.s_store_sk
-| |
-| 12:EXCHANGE [BROADCAST]
-| |
-| 01:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| runtime filters: RF000 -> substr(store.s_zip, 1, 2)
-| row-size=37B cardinality=12
-|
-00:SCAN HDFS [tpcds.store_sales]
- partition predicates: ss_sold_date_sk >= 2452276, ss_sold_date_sk <= 2452366
- HDFS partitions=90/1824 files=90 size=10.32MB
- runtime filters: RF002 -> store_sales.ss_store_sk
- row-size=8B cardinality=84.40K
-====
-# TPCDS-Q13
-select avg(ss_quantity)
- ,avg(ss_ext_sales_price)
- ,avg(ss_ext_wholesale_cost)
- ,sum(ss_ext_wholesale_cost)
- from store_sales
- ,store
- ,customer_demographics
- ,household_demographics
- ,customer_address
- ,date_dim
- where s_store_sk = ss_store_sk
- and ss_sold_date_sk = d_date_sk and d_year = 2001
- and((ss_hdemo_sk=hd_demo_sk
- and cd_demo_sk = ss_cdemo_sk
- and cd_marital_status = 'M'
- and cd_education_status = 'Advanced Degree'
- and ss_sales_price between 100.00 and 150.00
- and hd_dep_count = 3
- )or
- (ss_hdemo_sk=hd_demo_sk
- and cd_demo_sk = ss_cdemo_sk
- and cd_marital_status = 'S'
- and cd_education_status = 'College'
- and ss_sales_price between 50.00 and 100.00
- and hd_dep_count = 1
- ) or
- (ss_hdemo_sk=hd_demo_sk
- and cd_demo_sk = ss_cdemo_sk
- and cd_marital_status = 'W'
- and cd_education_status = '2 yr Degree'
- and ss_sales_price between 150.00 and 200.00
- and hd_dep_count = 1
- ))
- and((ss_addr_sk = ca_address_sk
- and ca_country = 'United States'
- and ca_state in ('TX', 'OH', 'TX')
- and ss_net_profit between 100 and 200
- ) or
- (ss_addr_sk = ca_address_sk
- and ca_country = 'United States'
- and ca_state in ('OR', 'NM', 'KY')
- and ss_net_profit between 150 and 300
- ) or
- (ss_addr_sk = ca_address_sk
- and ca_country = 'United States'
- and ca_state in ('VA', 'TX', 'MS')
- and ss_net_profit between 50 and 250
- ))
----- PLAN
-Max Per-Host Resource Reservation: Memory=45.01MB Threads=7
-Per-Host Resource Estimates: Memory=461MB
-PLAN-ROOT SINK
-|
-11:AGGREGATE [FINALIZE]
-| output: avg(ss_quantity), avg(ss_ext_sales_price), avg(ss_ext_wholesale_cost), sum(ss_ext_wholesale_cost)
-| row-size=40B cardinality=1
-|
-10:HASH JOIN [INNER JOIN]
-| hash predicates: ss_store_sk = s_store_sk
-| runtime filters: RF000 <- s_store_sk
-| row-size=142B cardinality=2.55K
-|
-|--01:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| row-size=4B cardinality=12
-|
-09:HASH JOIN [INNER JOIN]
-| hash predicates: cd_demo_sk = ss_cdemo_sk
-| other predicates: cd_education_status = 'Advanced Degree' OR cd_marital_status = 'S' AND cd_education_status = 'College' OR hd_dep_count = 1, cd_marital_status = 'M' OR cd_marital_status = 'S' AND cd_education_status = 'College' OR hd_dep_count = 1, hd_dep_count = 3 OR cd_education_status = 'College' OR hd_dep_count = 1, cd_education_status = 'Advanced Degree' OR hd_dep_count = 1 OR hd_dep_count = 1, hd_dep_count IN (3, 1) OR cd_education_status = '2 yr Degree', hd_dep_count = 3 OR cd [...]
-| runtime filters: RF002 <- ss_cdemo_sk
-| row-size=138B cardinality=2.55K
-|
-|--08:HASH JOIN [INNER JOIN]
-| | hash predicates: ss_hdemo_sk = hd_demo_sk
-| | other predicates: hd_dep_count IN (3, 1) OR ss_sales_price <= 200.00, hd_dep_count IN (3, 1) OR ss_sales_price >= 150.00, hd_dep_count = 3 OR ss_sales_price <= 100.00 OR hd_dep_count = 1, hd_dep_count = 3 OR ss_sales_price <= 100.00 OR ss_sales_price <= 200.00, hd_dep_count = 3 OR ss_sales_price <= 100.00 OR ss_sales_price >= 150.00, hd_dep_count = 3 OR ss_sales_price >= 50.00 OR hd_dep_count = 1, hd_dep_count = 3 OR ss_sales_price >= 50.00 OR ss_sales_price <= 200.00, hd_dep_count [...]
-| | runtime filters: RF004 <- hd_demo_sk
-| | row-size=99B cardinality=3.05K
-| |
-| |--03:SCAN HDFS [tpcds.household_demographics]
-| | HDFS partitions=1/1 files=1 size=148.10KB
-| | predicates: hd_dep_count IN (3, 1, 1)
-| | row-size=8B cardinality=2.16K
-| |
-| 07:HASH JOIN [INNER JOIN]
-| | hash predicates: ss_sold_date_sk = d_date_sk
-| | runtime filters: RF006 <- d_date_sk
-| | row-size=91B cardinality=10.43K
-| |
-| |--05:SCAN HDFS [tpcds.date_dim]
-| | HDFS partitions=1/1 files=1 size=9.84MB
-| | predicates: d_year = 2001
-| | row-size=8B cardinality=373
-| |
-| 06:HASH JOIN [INNER JOIN]
-| | hash predicates: ss_addr_sk = ca_address_sk
-| | other predicates: ca_state IN ('TX', 'OH', 'TX') OR ss_net_profit <= 300 OR ss_net_profit <= 250, ca_state IN ('TX', 'OH', 'TX') OR ss_net_profit <= 300 OR ss_net_profit >= 50, ca_state IN ('TX', 'OH', 'TX') OR ss_net_profit >= 150 OR ss_net_profit <= 250, ca_state IN ('TX', 'OH', 'TX') OR ss_net_profit >= 150 OR ss_net_profit >= 50, ss_net_profit <= 200 OR ca_state IN ('OR', 'NM', 'KY') OR ss_net_profit <= 250, ss_net_profit <= 200 OR ca_state IN ('OR', 'NM', 'KY') OR ss_net_profi [...]
-| | runtime filters: RF008 <- ca_address_sk
-| | row-size=83B cardinality=50.98K
-| |
-| |--04:SCAN HDFS [tpcds.customer_address]
-| | HDFS partitions=1/1 files=1 size=5.25MB
-| | predicates: ca_state IN ('TX', 'OH', 'TX', 'OR', 'NM', 'KY', 'VA', 'TX', 'MS'), ca_country = 'United States'
-| | row-size=43B cardinality=8.82K
-| |
-| 00:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| predicates: ss_net_profit <= 200 OR ss_net_profit <= 300 OR ss_net_profit <= 250, ss_net_profit <= 200 OR ss_net_profit <= 300 OR ss_net_profit >= 50, ss_net_profit <= 200 OR ss_net_profit >= 150 OR ss_net_profit <= 250, ss_net_profit <= 200 OR ss_net_profit >= 150 OR ss_net_profit >= 50, ss_net_profit >= 100 OR ss_net_profit <= 300 OR ss_net_profit <= 250, ss_net_profit >= 100 OR ss_net_profit <= 300 OR ss_net_profit >= 50, ss_net_profit >= 100 OR ss_net_profit >= 150 OR ss_net_pr [...]
-| runtime filters: RF000 -> ss_store_sk, RF004 -> ss_hdemo_sk, RF006 -> ss_sold_date_sk, RF008 -> ss_addr_sk
-| row-size=40B cardinality=288.04K
-|
-02:SCAN HDFS [tpcds.customer_demographics]
- HDFS partitions=1/1 files=1 size=76.92MB
- predicates: cd_marital_status = 'M' OR cd_marital_status = 'S' AND cd_education_status = 'College' OR cd_marital_status = 'W' AND cd_education_status = '2 yr Degree', cd_education_status = 'Advanced Degree' OR cd_marital_status = 'S' AND cd_education_status = 'College' OR cd_marital_status = 'W' AND cd_education_status = '2 yr Degree'
- runtime filters: RF002 -> cd_demo_sk
- row-size=39B cardinality=181.75K
-====
-# TPCDS-Q19
-select
- i_brand_id brand_id,
- i_brand brand,
- i_manufact_id,
- i_manufact,
- sum(ss_ext_sales_price) ext_price
-from
- date_dim,
- store_sales,
- item,
- customer,
- customer_address,
- store
-where
- d_date_sk = ss_sold_date_sk
- and ss_item_sk = i_item_sk
- and i_manager_id = 7
- and d_moy = 11
- and d_year = 1999
- and ss_customer_sk = c_customer_sk
- and c_current_addr_sk = ca_address_sk
- and substr(ca_zip, 1, 5) <> substr(s_zip, 1, 5)
- and ss_store_sk = s_store_sk
- and ss_sold_date_sk between 2451484 and 2451513
-group by
- i_brand,
- i_brand_id,
- i_manufact_id,
- i_manufact
-order by
- ext_price desc,
- i_brand,
- i_brand_id,
- i_manufact_id,
- i_manufact
-limit 100
----- PLAN
-Max Per-Host Resource Reservation: Memory=43.32MB Threads=7
-Per-Host Resource Estimates: Memory=331MB
-PLAN-ROOT SINK
-|
-12:TOP-N [LIMIT=100]
-| order by: sum(ss_ext_sales_price) DESC, i_brand ASC, i_brand_id ASC, i_manufact_id ASC, i_manufact ASC
-| row-size=76B cardinality=24
-|
-11:AGGREGATE [FINALIZE]
-| output: sum(ss_ext_sales_price)
-| group by: i_brand, i_brand_id, i_manufact_id, i_manufact
-| row-size=76B cardinality=24
-|
-10:HASH JOIN [INNER JOIN]
-| hash predicates: ss_store_sk = s_store_sk
-| other predicates: substr(ca_zip, 1, 5) != substr(s_zip, 1, 5)
-| runtime filters: RF000 <- s_store_sk
-| row-size=158B cardinality=24
-|
-|--05:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| row-size=21B cardinality=12
-|
-09:HASH JOIN [INNER JOIN]
-| hash predicates: ca_address_sk = c_current_addr_sk
-| runtime filters: RF002 <- c_current_addr_sk
-| row-size=137B cardinality=24
-|
-|--08:HASH JOIN [INNER JOIN]
-| | hash predicates: c_customer_sk = ss_customer_sk
-| | runtime filters: RF004 <- ss_customer_sk
-| | row-size=116B cardinality=24
-| |
-| |--07:HASH JOIN [INNER JOIN]
-| | | hash predicates: ss_sold_date_sk = d_date_sk
-| | | runtime filters: RF006 <- d_date_sk
-| | | row-size=108B cardinality=24
-| | |
-| | |--00:SCAN HDFS [tpcds.date_dim]
-| | | HDFS partitions=1/1 files=1 size=9.84MB
-| | | predicates: d_year = 1999, d_moy = 11, tpcds.date_dim.d_date_sk <= 2451513, tpcds.date_dim.d_date_sk >= 2451484
-| | | row-size=12B cardinality=50
-| | |
-| | 06:HASH JOIN [INNER JOIN]
-| | | hash predicates: ss_item_sk = i_item_sk
-| | | runtime filters: RF008 <- i_item_sk
-| | | row-size=96B cardinality=873
-| | |
-| | |--02:SCAN HDFS [tpcds.item]
-| | | HDFS partitions=1/1 files=1 size=4.82MB
-| | | predicates: i_manager_id = 7
-| | | row-size=72B cardinality=182
-| | |
-| | 01:SCAN HDFS [tpcds.store_sales]
-| | partition predicates: ss_sold_date_sk >= 2451484, ss_sold_date_sk <= 2451513
-| | HDFS partitions=30/1824 files=30 size=10.55MB
-| | runtime filters: RF000 -> ss_store_sk, RF006 -> ss_sold_date_sk, RF008 -> ss_item_sk
-| | row-size=24B cardinality=86.28K
-| |
-| 03:SCAN HDFS [tpcds.customer]
-| HDFS partitions=1/1 files=1 size=12.60MB
-| runtime filters: RF004 -> c_customer_sk
-| row-size=8B cardinality=100.00K
-|
-04:SCAN HDFS [tpcds.customer_address]
- HDFS partitions=1/1 files=1 size=5.25MB
- runtime filters: RF002 -> ca_address_sk
- row-size=21B cardinality=50.00K
----- DISTRIBUTEDPLAN
-Max Per-Host Resource Reservation: Memory=54.13MB Threads=16
-Per-Host Resource Estimates: Memory=360MB
-PLAN-ROOT SINK
-|
-22:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: sum(ss_ext_sales_price) DESC, i_brand ASC, i_brand_id ASC, i_manufact_id ASC, i_manufact ASC
-| limit: 100
-|
-12:TOP-N [LIMIT=100]
-| order by: sum(ss_ext_sales_price) DESC, i_brand ASC, i_brand_id ASC, i_manufact_id ASC, i_manufact ASC
-| row-size=76B cardinality=24
-|
-21:AGGREGATE [FINALIZE]
-| output: sum:merge(ss_ext_sales_price)
-| group by: i_brand, i_brand_id, i_manufact_id, i_manufact
-| row-size=76B cardinality=24
-|
-20:EXCHANGE [HASH(i_brand,i_brand_id,i_manufact_id,i_manufact)]
-|
-11:AGGREGATE [STREAMING]
-| output: sum(ss_ext_sales_price)
-| group by: i_brand, i_brand_id, i_manufact_id, i_manufact
-| row-size=76B cardinality=24
-|
-10:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_store_sk = s_store_sk
-| other predicates: substr(ca_zip, 1, 5) != substr(s_zip, 1, 5)
-| runtime filters: RF000 <- s_store_sk
-| row-size=158B cardinality=24
-|
-|--19:EXCHANGE [BROADCAST]
-| |
-| 05:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| row-size=21B cardinality=12
-|
-09:HASH JOIN [INNER JOIN, PARTITIONED]
-| hash predicates: c_current_addr_sk = ca_address_sk
-| runtime filters: RF002 <- ca_address_sk
-| row-size=137B cardinality=24
-|
-|--18:EXCHANGE [HASH(ca_address_sk)]
-| |
-| 04:SCAN HDFS [tpcds.customer_address]
-| HDFS partitions=1/1 files=1 size=5.25MB
-| row-size=21B cardinality=50.00K
-|
-17:EXCHANGE [HASH(c_current_addr_sk)]
-|
-08:HASH JOIN [INNER JOIN, PARTITIONED]
-| hash predicates: ss_customer_sk = c_customer_sk
-| runtime filters: RF004 <- c_customer_sk
-| row-size=116B cardinality=24
-|
-|--16:EXCHANGE [HASH(c_customer_sk)]
-| |
-| 03:SCAN HDFS [tpcds.customer]
-| HDFS partitions=1/1 files=1 size=12.60MB
-| runtime filters: RF002 -> c_current_addr_sk
-| row-size=8B cardinality=100.00K
-|
-15:EXCHANGE [HASH(ss_customer_sk)]
-|
-07:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_sold_date_sk = d_date_sk
-| runtime filters: RF006 <- d_date_sk
-| row-size=108B cardinality=24
-|
-|--14:EXCHANGE [BROADCAST]
-| |
-| 00:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: d_year = 1999, d_moy = 11, tpcds.date_dim.d_date_sk <= 2451513, tpcds.date_dim.d_date_sk >= 2451484
-| row-size=12B cardinality=50
-|
-06:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_item_sk = i_item_sk
-| runtime filters: RF008 <- i_item_sk
-| row-size=96B cardinality=873
-|
-|--13:EXCHANGE [BROADCAST]
-| |
-| 02:SCAN HDFS [tpcds.item]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| predicates: i_manager_id = 7
-| row-size=72B cardinality=182
-|
-01:SCAN HDFS [tpcds.store_sales]
- partition predicates: ss_sold_date_sk >= 2451484, ss_sold_date_sk <= 2451513
- HDFS partitions=30/1824 files=30 size=10.55MB
- runtime filters: RF000 -> ss_store_sk, RF004 -> ss_customer_sk, RF006 -> ss_sold_date_sk, RF008 -> ss_item_sk
- row-size=24B cardinality=86.28K
----- PARALLELPLANS
-Max Per-Host Resource Reservation: Memory=72.26MB Threads=21
-Per-Host Resource Estimates: Memory=203MB
-PLAN-ROOT SINK
-|
-22:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: sum(ss_ext_sales_price) DESC, i_brand ASC, i_brand_id ASC, i_manufact_id ASC, i_manufact ASC
-| limit: 100
-|
-12:TOP-N [LIMIT=100]
-| order by: sum(ss_ext_sales_price) DESC, i_brand ASC, i_brand_id ASC, i_manufact_id ASC, i_manufact ASC
-| row-size=76B cardinality=24
-|
-21:AGGREGATE [FINALIZE]
-| output: sum:merge(ss_ext_sales_price)
-| group by: i_brand, i_brand_id, i_manufact_id, i_manufact
-| row-size=76B cardinality=24
-|
-20:EXCHANGE [HASH(i_brand,i_brand_id,i_manufact_id,i_manufact)]
-|
-11:AGGREGATE [STREAMING]
-| output: sum(ss_ext_sales_price)
-| group by: i_brand, i_brand_id, i_manufact_id, i_manufact
-| row-size=76B cardinality=24
-|
-10:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_store_sk = s_store_sk
-| other predicates: substr(ca_zip, 1, 5) != substr(s_zip, 1, 5)
-| row-size=158B cardinality=24
-|
-|--JOIN BUILD
-| | join-table-id=00 plan-id=01 cohort-id=01
-| | build expressions: s_store_sk
-| | runtime filters: RF000 <- s_store_sk
-| |
-| 19:EXCHANGE [BROADCAST]
-| |
-| 05:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| row-size=21B cardinality=12
-|
-09:HASH JOIN [INNER JOIN, PARTITIONED]
-| hash predicates: c_current_addr_sk = ca_address_sk
-| row-size=137B cardinality=24
-|
-|--JOIN BUILD
-| | join-table-id=01 plan-id=02 cohort-id=01
-| | build expressions: ca_address_sk
-| | runtime filters: RF002 <- ca_address_sk
-| |
-| 18:EXCHANGE [HASH(ca_address_sk)]
-| |
-| 04:SCAN HDFS [tpcds.customer_address]
-| HDFS partitions=1/1 files=1 size=5.25MB
-| row-size=21B cardinality=50.00K
-|
-17:EXCHANGE [HASH(c_current_addr_sk)]
-|
-08:HASH JOIN [INNER JOIN, PARTITIONED]
-| hash predicates: ss_customer_sk = c_customer_sk
-| row-size=116B cardinality=24
-|
-|--JOIN BUILD
-| | join-table-id=02 plan-id=03 cohort-id=01
-| | build expressions: c_customer_sk
-| | runtime filters: RF004 <- c_customer_sk
-| |
-| 16:EXCHANGE [HASH(c_customer_sk)]
-| |
-| 03:SCAN HDFS [tpcds.customer]
-| HDFS partitions=1/1 files=1 size=12.60MB
-| runtime filters: RF002 -> c_current_addr_sk
-| row-size=8B cardinality=100.00K
-|
-15:EXCHANGE [HASH(ss_customer_sk)]
-|
-07:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_sold_date_sk = d_date_sk
-| row-size=108B cardinality=24
-|
-|--JOIN BUILD
-| | join-table-id=03 plan-id=04 cohort-id=01
-| | build expressions: d_date_sk
-| | runtime filters: RF006 <- d_date_sk
-| |
-| 14:EXCHANGE [BROADCAST]
-| |
-| 00:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: d_year = 1999, d_moy = 11, tpcds.date_dim.d_date_sk <= 2451513, tpcds.date_dim.d_date_sk >= 2451484
-| row-size=12B cardinality=50
-|
-06:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_item_sk = i_item_sk
-| row-size=96B cardinality=873
-|
-|--JOIN BUILD
-| | join-table-id=04 plan-id=05 cohort-id=01
-| | build expressions: i_item_sk
-| | runtime filters: RF008 <- i_item_sk
-| |
-| 13:EXCHANGE [BROADCAST]
-| |
-| 02:SCAN HDFS [tpcds.item]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| predicates: i_manager_id = 7
-| row-size=72B cardinality=182
-|
-01:SCAN HDFS [tpcds.store_sales]
- partition predicates: ss_sold_date_sk >= 2451484, ss_sold_date_sk <= 2451513
- HDFS partitions=30/1824 files=30 size=10.55MB
- runtime filters: RF000 -> ss_store_sk, RF004 -> ss_customer_sk, RF006 -> ss_sold_date_sk, RF008 -> ss_item_sk
- row-size=24B cardinality=86.28K
-====
-# TPCDS-Q27
-select
- i_item_id,
- s_state,
- avg(ss_quantity) agg1,
- avg(ss_list_price) agg2,
- avg(ss_coupon_amt) agg3,
- avg(ss_sales_price) agg4
-from
- store_sales,
- customer_demographics,
- date_dim,
- store,
- item
-where
- ss_sold_date_sk = d_date_sk
- and ss_item_sk = i_item_sk
- and ss_store_sk = s_store_sk
- and ss_cdemo_sk = cd_demo_sk
- and cd_gender = 'F'
- and cd_marital_status = 'W'
- and cd_education_status = 'Primary'
- and d_year = 1998
- and s_state in ('WI', 'CA', 'TX', 'FL', 'WA', 'TN')
-group by
- i_item_id,
- s_state
-order by
- i_item_id,
- s_state
-limit 100
----- PLAN
-Max Per-Host Resource Reservation: Memory=50.32MB Threads=6
-Per-Host Resource Estimates: Memory=434MB
-PLAN-ROOT SINK
-|
-10:TOP-N [LIMIT=100]
-| order by: i_item_id ASC, s_state ASC
-| row-size=74B cardinality=100
-|
-09:AGGREGATE [FINALIZE]
-| output: avg(ss_quantity), avg(ss_list_price), avg(ss_coupon_amt), avg(ss_sales_price)
-| group by: i_item_id, s_state
-| row-size=74B cardinality=8.85K
-|
-08:HASH JOIN [INNER JOIN]
-| hash predicates: ss_item_sk = i_item_sk
-| runtime filters: RF000 <- i_item_sk
-| row-size=150B cardinality=263.34K
-|
-|--04:SCAN HDFS [tpcds.item]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| row-size=36B cardinality=18.00K
-|
-07:HASH JOIN [INNER JOIN]
-| hash predicates: ss_store_sk = s_store_sk
-| runtime filters: RF002 <- s_store_sk
-| row-size=114B cardinality=263.34K
-|
-|--03:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| predicates: s_state IN ('WI', 'CA', 'TX', 'FL', 'WA', 'TN')
-| row-size=18B cardinality=12
-|
-06:HASH JOIN [INNER JOIN]
-| hash predicates: ss_cdemo_sk = cd_demo_sk
-| runtime filters: RF004 <- cd_demo_sk
-| row-size=96B cardinality=263.34K
-|
-|--01:SCAN HDFS [tpcds.customer_demographics]
-| HDFS partitions=1/1 files=1 size=76.92MB
-| predicates: cd_marital_status = 'W', cd_gender = 'F', cd_education_status = 'Primary'
-| row-size=52B cardinality=97.40K
-|
-05:HASH JOIN [INNER JOIN]
-| hash predicates: ss_sold_date_sk = d_date_sk
-| runtime filters: RF006 <- d_date_sk
-| row-size=44B cardinality=589.03K
-|
-|--02:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: d_year = 1998
-| row-size=8B cardinality=373
-|
-00:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF000 -> ss_item_sk, RF002 -> ss_store_sk, RF004 -> ss_cdemo_sk, RF006 -> ss_sold_date_sk
- row-size=36B cardinality=2.88M
----- DISTRIBUTEDPLAN
-Max Per-Host Resource Reservation: Memory=54.26MB Threads=12
-Per-Host Resource Estimates: Memory=460MB
-PLAN-ROOT SINK
-|
-17:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: i_item_id ASC, s_state ASC
-| limit: 100
-|
-10:TOP-N [LIMIT=100]
-| order by: i_item_id ASC, s_state ASC
-| row-size=74B cardinality=100
-|
-16:AGGREGATE [FINALIZE]
-| output: avg:merge(ss_quantity), avg:merge(ss_list_price), avg:merge(ss_coupon_amt), avg:merge(ss_sales_price)
-| group by: i_item_id, s_state
-| row-size=74B cardinality=8.85K
-|
-15:EXCHANGE [HASH(i_item_id,s_state)]
-|
-09:AGGREGATE [STREAMING]
-| output: avg(ss_quantity), avg(ss_list_price), avg(ss_coupon_amt), avg(ss_sales_price)
-| group by: i_item_id, s_state
-| row-size=74B cardinality=8.85K
-|
-08:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_item_sk = i_item_sk
-| runtime filters: RF000 <- i_item_sk
-| row-size=150B cardinality=263.34K
-|
-|--14:EXCHANGE [BROADCAST]
-| |
-| 04:SCAN HDFS [tpcds.item]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| row-size=36B cardinality=18.00K
-|
-07:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_store_sk = s_store_sk
-| runtime filters: RF002 <- s_store_sk
-| row-size=114B cardinality=263.34K
-|
-|--13:EXCHANGE [BROADCAST]
-| |
-| 03:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| predicates: s_state IN ('WI', 'CA', 'TX', 'FL', 'WA', 'TN')
-| row-size=18B cardinality=12
-|
-06:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_cdemo_sk = cd_demo_sk
-| runtime filters: RF004 <- cd_demo_sk
-| row-size=96B cardinality=263.34K
-|
-|--12:EXCHANGE [BROADCAST]
-| |
-| 01:SCAN HDFS [tpcds.customer_demographics]
-| HDFS partitions=1/1 files=1 size=76.92MB
-| predicates: cd_marital_status = 'W', cd_gender = 'F', cd_education_status = 'Primary'
-| row-size=52B cardinality=97.40K
-|
-05:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_sold_date_sk = d_date_sk
-| runtime filters: RF006 <- d_date_sk
-| row-size=44B cardinality=589.03K
-|
-|--11:EXCHANGE [BROADCAST]
-| |
-| 02:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: d_year = 1998
-| row-size=8B cardinality=373
-|
-00:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF000 -> ss_item_sk, RF002 -> ss_store_sk, RF004 -> ss_cdemo_sk, RF006 -> ss_sold_date_sk
- row-size=36B cardinality=2.88M
----- PARALLELPLANS
-Max Per-Host Resource Reservation: Memory=84.51MB Threads=13
-Per-Host Resource Estimates: Memory=260MB
-PLAN-ROOT SINK
-|
-17:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: i_item_id ASC, s_state ASC
-| limit: 100
-|
-10:TOP-N [LIMIT=100]
-| order by: i_item_id ASC, s_state ASC
-| row-size=74B cardinality=100
-|
-16:AGGREGATE [FINALIZE]
-| output: avg:merge(ss_quantity), avg:merge(ss_list_price), avg:merge(ss_coupon_amt), avg:merge(ss_sales_price)
-| group by: i_item_id, s_state
-| row-size=74B cardinality=8.85K
-|
-15:EXCHANGE [HASH(i_item_id,s_state)]
-|
-09:AGGREGATE [STREAMING]
-| output: avg(ss_quantity), avg(ss_list_price), avg(ss_coupon_amt), avg(ss_sales_price)
-| group by: i_item_id, s_state
-| row-size=74B cardinality=8.85K
-|
-08:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_item_sk = i_item_sk
-| row-size=150B cardinality=263.34K
-|
-|--JOIN BUILD
-| | join-table-id=00 plan-id=01 cohort-id=01
-| | build expressions: i_item_sk
-| | runtime filters: RF000 <- i_item_sk
-| |
-| 14:EXCHANGE [BROADCAST]
-| |
-| 04:SCAN HDFS [tpcds.item]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| row-size=36B cardinality=18.00K
-|
-07:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_store_sk = s_store_sk
-| row-size=114B cardinality=263.34K
-|
-|--JOIN BUILD
-| | join-table-id=01 plan-id=02 cohort-id=01
-| | build expressions: s_store_sk
-| | runtime filters: RF002 <- s_store_sk
-| |
-| 13:EXCHANGE [BROADCAST]
-| |
-| 03:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| predicates: s_state IN ('WI', 'CA', 'TX', 'FL', 'WA', 'TN')
-| row-size=18B cardinality=12
-|
-06:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_cdemo_sk = cd_demo_sk
-| row-size=96B cardinality=263.34K
-|
-|--JOIN BUILD
-| | join-table-id=02 plan-id=03 cohort-id=01
-| | build expressions: cd_demo_sk
-| | runtime filters: RF004 <- cd_demo_sk
-| |
-| 12:EXCHANGE [BROADCAST]
-| |
-| 01:SCAN HDFS [tpcds.customer_demographics]
-| HDFS partitions=1/1 files=1 size=76.92MB
-| predicates: cd_marital_status = 'W', cd_gender = 'F', cd_education_status = 'Primary'
-| row-size=52B cardinality=97.40K
-|
-05:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_sold_date_sk = d_date_sk
-| row-size=44B cardinality=589.03K
-|
-|--JOIN BUILD
-| | join-table-id=03 plan-id=04 cohort-id=01
-| | build expressions: d_date_sk
-| | runtime filters: RF006 <- d_date_sk
-| |
-| 11:EXCHANGE [BROADCAST]
-| |
-| 02:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: d_year = 1998
-| row-size=8B cardinality=373
-|
-00:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF000 -> ss_item_sk, RF002 -> ss_store_sk, RF004 -> ss_cdemo_sk, RF006 -> ss_sold_date_sk
- row-size=36B cardinality=2.88M
-====
-# TPCDS-Q34
-select
- c_last_name,
- c_first_name,
- c_salutation,
- c_preferred_cust_flag,
- ss_ticket_number,
- cnt
-from
- (select
- ss_ticket_number,
- ss_customer_sk,
- count(*) cnt
- from
- store_sales,
- date_dim,
- store,
- household_demographics
- where
- store_sales.ss_sold_date_sk = date_dim.d_date_sk
- and store_sales.ss_store_sk = store.s_store_sk
- and store_sales.ss_hdemo_sk = household_demographics.hd_demo_sk
- and (date_dim.d_dom between 1 and 3
- or date_dim.d_dom between 25 and 28)
- and (household_demographics.hd_buy_potential = '>10000'
- or household_demographics.hd_buy_potential = 'unknown')
- and household_demographics.hd_vehicle_count > 0
- and (case when household_demographics.hd_vehicle_count > 0 then household_demographics.hd_dep_count / household_demographics.hd_vehicle_count else null end) > 1.2
- and date_dim.d_year in (1998, 1998 + 1, 1998 + 2)
- and store.s_county in ('Saginaw County', 'Sumner County', 'Appanoose County', 'Daviess County', 'Fairfield County', 'Raleigh County', 'Ziebach County', 'Williamson County')
- group by
- ss_ticket_number,
- ss_customer_sk
- ) dn,
- customer
-where
- ss_customer_sk = c_customer_sk
- and cnt between 15 and 20
-order by
- c_last_name,
- c_first_name,
- c_salutation,
- c_preferred_cust_flag desc
-limit 100000
----- PLAN
-Max Per-Host Resource Reservation: Memory=34.07MB Threads=6
-Per-Host Resource Estimates: Memory=298MB
-PLAN-ROOT SINK
-|
-10:TOP-N [LIMIT=100000]
-| order by: c_last_name ASC, c_first_name ASC, c_salutation ASC, c_preferred_cust_flag DESC
-| row-size=80B cardinality=3.15K
-|
-09:HASH JOIN [INNER JOIN]
-| hash predicates: c_customer_sk = ss_customer_sk
-| runtime filters: RF000 <- ss_customer_sk
-| row-size=88B cardinality=3.15K
-|
-|--07:AGGREGATE [FINALIZE]
-| | output: count(*)
-| | group by: ss_ticket_number, ss_customer_sk
-| | having: count(*) <= 20, count(*) >= 15
-| | row-size=20B cardinality=3.15K
-| |
-| 06:HASH JOIN [INNER JOIN]
-| | hash predicates: store_sales.ss_store_sk = store.s_store_sk
-| | runtime filters: RF002 <- store.s_store_sk
-| | row-size=101B cardinality=31.53K
-| |
-| |--02:SCAN HDFS [tpcds.store]
-| | HDFS partitions=1/1 files=1 size=3.08KB
-| | predicates: store.s_county IN ('Saginaw County', 'Sumner County', 'Appanoose County', 'Daviess County', 'Fairfield County', 'Raleigh County', 'Ziebach County', 'Williamson County')
-| | row-size=33B cardinality=12
-| |
-| 05:HASH JOIN [INNER JOIN]
-| | hash predicates: store_sales.ss_sold_date_sk = date_dim.d_date_sk
-| | runtime filters: RF004 <- date_dim.d_date_sk
-| | row-size=68B cardinality=31.53K
-| |
-| |--01:SCAN HDFS [tpcds.date_dim]
-| | HDFS partitions=1/1 files=1 size=9.84MB
-| | predicates: date_dim.d_year IN (1998, 1999, 2000), (date_dim.d_dom >= 1 AND date_dim.d_dom <= 3 OR date_dim.d_dom >= 25 AND date_dim.d_dom <= 28)
-| | row-size=12B cardinality=354
-| |
-| 04:HASH JOIN [INNER JOIN]
-| | hash predicates: store_sales.ss_hdemo_sk = household_demographics.hd_demo_sk
-| | runtime filters: RF006 <- household_demographics.hd_demo_sk
-| | row-size=56B cardinality=162.45K
-| |
-| |--03:SCAN HDFS [tpcds.household_demographics]
-| | HDFS partitions=1/1 files=1 size=148.10KB
-| | predicates: household_demographics.hd_vehicle_count > 0, household_demographics.hd_buy_potential IN ('>10000', 'unknown'), (CASE WHEN household_demographics.hd_vehicle_count > 0 THEN household_demographics.hd_dep_count / household_demographics.hd_vehicle_count ELSE NULL END) > 1.2
-| | row-size=32B cardinality=416
-| |
-| 00:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| runtime filters: RF002 -> store_sales.ss_store_sk, RF004 -> store_sales.ss_sold_date_sk, RF006 -> store_sales.ss_hdemo_sk
-| row-size=24B cardinality=2.88M
-|
-08:SCAN HDFS [tpcds.customer]
- HDFS partitions=1/1 files=1 size=12.60MB
- runtime filters: RF000 -> c_customer_sk
- row-size=68B cardinality=100.00K
----- DISTRIBUTEDPLAN
-Max Per-Host Resource Reservation: Memory=47.51MB Threads=13
-Per-Host Resource Estimates: Memory=335MB
-PLAN-ROOT SINK
-|
-18:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: c_last_name ASC, c_first_name ASC, c_salutation ASC, c_preferred_cust_flag DESC
-| limit: 100000
-|
-10:TOP-N [LIMIT=100000]
-| order by: c_last_name ASC, c_first_name ASC, c_salutation ASC, c_preferred_cust_flag DESC
-| row-size=80B cardinality=3.15K
-|
-09:HASH JOIN [INNER JOIN, PARTITIONED]
-| hash predicates: ss_customer_sk = c_customer_sk
-| runtime filters: RF000 <- c_customer_sk
-| row-size=88B cardinality=3.15K
-|
-|--17:EXCHANGE [HASH(c_customer_sk)]
-| |
-| 08:SCAN HDFS [tpcds.customer]
-| HDFS partitions=1/1 files=1 size=12.60MB
-| row-size=68B cardinality=100.00K
-|
-16:EXCHANGE [HASH(ss_customer_sk)]
-|
-15:AGGREGATE [FINALIZE]
-| output: count:merge(*)
-| group by: ss_ticket_number, ss_customer_sk
-| having: count(*) <= 20, count(*) >= 15
-| row-size=20B cardinality=3.15K
-|
-14:EXCHANGE [HASH(ss_ticket_number,ss_customer_sk)]
-|
-07:AGGREGATE [STREAMING]
-| output: count(*)
-| group by: ss_ticket_number, ss_customer_sk
-| row-size=20B cardinality=31.53K
-|
-06:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_store_sk = store.s_store_sk
-| runtime filters: RF002 <- store.s_store_sk
-| row-size=101B cardinality=31.53K
-|
-|--13:EXCHANGE [BROADCAST]
-| |
-| 02:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| predicates: store.s_county IN ('Saginaw County', 'Sumner County', 'Appanoose County', 'Daviess County', 'Fairfield County', 'Raleigh County', 'Ziebach County', 'Williamson County')
-| row-size=33B cardinality=12
-|
-05:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_sold_date_sk = date_dim.d_date_sk
-| runtime filters: RF004 <- date_dim.d_date_sk
-| row-size=68B cardinality=31.53K
-|
-|--12:EXCHANGE [BROADCAST]
-| |
-| 01:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: date_dim.d_year IN (1998, 1999, 2000), (date_dim.d_dom >= 1 AND date_dim.d_dom <= 3 OR date_dim.d_dom >= 25 AND date_dim.d_dom <= 28)
-| row-size=12B cardinality=354
-|
-04:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_hdemo_sk = household_demographics.hd_demo_sk
-| runtime filters: RF006 <- household_demographics.hd_demo_sk
-| row-size=56B cardinality=162.45K
-|
-|--11:EXCHANGE [BROADCAST]
-| |
-| 03:SCAN HDFS [tpcds.household_demographics]
-| HDFS partitions=1/1 files=1 size=148.10KB
-| predicates: household_demographics.hd_vehicle_count > 0, household_demographics.hd_buy_potential IN ('>10000', 'unknown'), (CASE WHEN household_demographics.hd_vehicle_count > 0 THEN household_demographics.hd_dep_count / household_demographics.hd_vehicle_count ELSE NULL END) > 1.2
-| row-size=32B cardinality=416
-|
-00:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF000 -> tpcds.store_sales.ss_customer_sk, RF002 -> store_sales.ss_store_sk, RF004 -> store_sales.ss_sold_date_sk, RF006 -> store_sales.ss_hdemo_sk
- row-size=24B cardinality=2.88M
----- PARALLELPLANS
-Max Per-Host Resource Reservation: Memory=68.26MB Threads=14
-Per-Host Resource Estimates: Memory=188MB
-PLAN-ROOT SINK
-|
-18:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: c_last_name ASC, c_first_name ASC, c_salutation ASC, c_preferred_cust_flag DESC
-| limit: 100000
-|
-10:TOP-N [LIMIT=100000]
-| order by: c_last_name ASC, c_first_name ASC, c_salutation ASC, c_preferred_cust_flag DESC
-| row-size=80B cardinality=3.15K
-|
-09:HASH JOIN [INNER JOIN, PARTITIONED]
-| hash predicates: ss_customer_sk = c_customer_sk
-| row-size=88B cardinality=3.15K
-|
-|--JOIN BUILD
-| | join-table-id=00 plan-id=01 cohort-id=01
-| | build expressions: c_customer_sk
-| | runtime filters: RF000 <- c_customer_sk
-| |
-| 17:EXCHANGE [HASH(c_customer_sk)]
-| |
-| 08:SCAN HDFS [tpcds.customer]
-| HDFS partitions=1/1 files=1 size=12.60MB
-| row-size=68B cardinality=100.00K
-|
-16:EXCHANGE [HASH(ss_customer_sk)]
-|
-15:AGGREGATE [FINALIZE]
-| output: count:merge(*)
-| group by: ss_ticket_number, ss_customer_sk
-| having: count(*) <= 20, count(*) >= 15
-| row-size=20B cardinality=3.15K
-|
-14:EXCHANGE [HASH(ss_ticket_number,ss_customer_sk)]
-|
-07:AGGREGATE [STREAMING]
-| output: count(*)
-| group by: ss_ticket_number, ss_customer_sk
-| row-size=20B cardinality=31.53K
-|
-06:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_store_sk = store.s_store_sk
-| row-size=101B cardinality=31.53K
-|
-|--JOIN BUILD
-| | join-table-id=01 plan-id=02 cohort-id=01
-| | build expressions: store.s_store_sk
-| | runtime filters: RF002 <- store.s_store_sk
-| |
-| 13:EXCHANGE [BROADCAST]
-| |
-| 02:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| predicates: store.s_county IN ('Saginaw County', 'Sumner County', 'Appanoose County', 'Daviess County', 'Fairfield County', 'Raleigh County', 'Ziebach County', 'Williamson County')
-| row-size=33B cardinality=12
-|
-05:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_sold_date_sk = date_dim.d_date_sk
-| row-size=68B cardinality=31.53K
-|
-|--JOIN BUILD
-| | join-table-id=02 plan-id=03 cohort-id=01
-| | build expressions: date_dim.d_date_sk
-| | runtime filters: RF004 <- date_dim.d_date_sk
-| |
-| 12:EXCHANGE [BROADCAST]
-| |
-| 01:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: date_dim.d_year IN (1998, 1999, 2000), (date_dim.d_dom >= 1 AND date_dim.d_dom <= 3 OR date_dim.d_dom >= 25 AND date_dim.d_dom <= 28)
-| row-size=12B cardinality=354
-|
-04:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_hdemo_sk = household_demographics.hd_demo_sk
-| row-size=56B cardinality=162.45K
-|
-|--JOIN BUILD
-| | join-table-id=03 plan-id=04 cohort-id=01
-| | build expressions: household_demographics.hd_demo_sk
-| | runtime filters: RF006 <- household_demographics.hd_demo_sk
-| |
-| 11:EXCHANGE [BROADCAST]
-| |
-| 03:SCAN HDFS [tpcds.household_demographics]
-| HDFS partitions=1/1 files=1 size=148.10KB
-| predicates: household_demographics.hd_vehicle_count > 0, household_demographics.hd_buy_potential IN ('>10000', 'unknown'), (CASE WHEN household_demographics.hd_vehicle_count > 0 THEN household_demographics.hd_dep_count / household_demographics.hd_vehicle_count ELSE NULL END) > 1.2
-| row-size=32B cardinality=416
-|
-00:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF000 -> tpcds.store_sales.ss_customer_sk, RF002 -> store_sales.ss_store_sk, RF004 -> store_sales.ss_sold_date_sk, RF006 -> store_sales.ss_hdemo_sk
- row-size=24B cardinality=2.88M
-====
-# TPCDS-Q42
-select
- dt.d_year,
- item.i_category_id,
- item.i_category,
- sum(ss_ext_sales_price)
-from
- date_dim dt,
- store_sales,
- item
-where
- dt.d_date_sk = store_sales.ss_sold_date_sk
- and store_sales.ss_item_sk = item.i_item_sk
- and item.i_manager_id = 1
- and dt.d_moy = 12
- and dt.d_year = 1998
-group by
- dt.d_year,
- item.i_category_id,
- item.i_category
-order by
- sum(ss_ext_sales_price) desc,
- dt.d_year,
- item.i_category_id,
- item.i_category
-limit 100
----- PLAN
-Max Per-Host Resource Reservation: Memory=29.88MB Threads=4
-Per-Host Resource Estimates: Memory=214MB
-PLAN-ROOT SINK
-|
-06:TOP-N [LIMIT=100]
-| order by: sum(ss_ext_sales_price) DESC, dt.d_year ASC, item.i_category_id ASC, item.i_category ASC
-| row-size=42B cardinality=100
-|
-05:AGGREGATE [FINALIZE]
-| output: sum(ss_ext_sales_price)
-| group by: dt.d_year, item.i_category_id, item.i_category
-| row-size=42B cardinality=1.73K
-|
-04:HASH JOIN [INNER JOIN]
-| hash predicates: store_sales.ss_sold_date_sk = dt.d_date_sk
-| runtime filters: RF000 <- dt.d_date_sk
-| row-size=62B cardinality=1.73K
-|
-|--00:SCAN HDFS [tpcds.date_dim dt]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: dt.d_year = 1998, dt.d_moy = 12
-| row-size=12B cardinality=108
-|
-03:HASH JOIN [INNER JOIN]
-| hash predicates: store_sales.ss_item_sk = item.i_item_sk
-| runtime filters: RF002 <- item.i_item_sk
-| row-size=50B cardinality=29.12K
-|
-|--02:SCAN HDFS [tpcds.item]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| predicates: item.i_manager_id = 1
-| row-size=34B cardinality=182
-|
-01:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF000 -> store_sales.ss_sold_date_sk, RF002 -> store_sales.ss_item_sk
- row-size=16B cardinality=2.88M
----- DISTRIBUTEDPLAN
-Max Per-Host Resource Reservation: Memory=33.81MB Threads=8
-Per-Host Resource Estimates: Memory=234MB
-PLAN-ROOT SINK
-|
-11:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: sum(ss_ext_sales_price) DESC, dt.d_year ASC, item.i_category_id ASC, item.i_category ASC
-| limit: 100
-|
-06:TOP-N [LIMIT=100]
-| order by: sum(ss_ext_sales_price) DESC, dt.d_year ASC, item.i_category_id ASC, item.i_category ASC
-| row-size=42B cardinality=100
-|
-10:AGGREGATE [FINALIZE]
-| output: sum:merge(ss_ext_sales_price)
-| group by: dt.d_year, item.i_category_id, item.i_category
-| row-size=42B cardinality=1.73K
-|
-09:EXCHANGE [HASH(dt.d_year,item.i_category_id,item.i_category)]
-|
-05:AGGREGATE [STREAMING]
-| output: sum(ss_ext_sales_price)
-| group by: dt.d_year, item.i_category_id, item.i_category
-| row-size=42B cardinality=1.73K
-|
-04:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_sold_date_sk = dt.d_date_sk
-| runtime filters: RF000 <- dt.d_date_sk
-| row-size=62B cardinality=1.73K
-|
-|--08:EXCHANGE [BROADCAST]
-| |
-| 00:SCAN HDFS [tpcds.date_dim dt]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: dt.d_year = 1998, dt.d_moy = 12
-| row-size=12B cardinality=108
-|
-03:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_item_sk = item.i_item_sk
-| runtime filters: RF002 <- item.i_item_sk
-| row-size=50B cardinality=29.12K
-|
-|--07:EXCHANGE [BROADCAST]
-| |
-| 02:SCAN HDFS [tpcds.item]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| predicates: item.i_manager_id = 1
-| row-size=34B cardinality=182
-|
-01:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF000 -> store_sales.ss_sold_date_sk, RF002 -> store_sales.ss_item_sk
- row-size=16B cardinality=2.88M
----- PARALLELPLANS
-Max Per-Host Resource Reservation: Memory=51.62MB Threads=9
-Per-Host Resource Estimates: Memory=124MB
-PLAN-ROOT SINK
-|
-11:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: sum(ss_ext_sales_price) DESC, dt.d_year ASC, item.i_category_id ASC, item.i_category ASC
-| limit: 100
-|
-06:TOP-N [LIMIT=100]
-| order by: sum(ss_ext_sales_price) DESC, dt.d_year ASC, item.i_category_id ASC, item.i_category ASC
-| row-size=42B cardinality=100
-|
-10:AGGREGATE [FINALIZE]
-| output: sum:merge(ss_ext_sales_price)
-| group by: dt.d_year, item.i_category_id, item.i_category
-| row-size=42B cardinality=1.73K
-|
-09:EXCHANGE [HASH(dt.d_year,item.i_category_id,item.i_category)]
-|
-05:AGGREGATE [STREAMING]
-| output: sum(ss_ext_sales_price)
-| group by: dt.d_year, item.i_category_id, item.i_category
-| row-size=42B cardinality=1.73K
-|
-04:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_sold_date_sk = dt.d_date_sk
-| row-size=62B cardinality=1.73K
-|
-|--JOIN BUILD
-| | join-table-id=00 plan-id=01 cohort-id=01
-| | build expressions: dt.d_date_sk
-| | runtime filters: RF000 <- dt.d_date_sk
-| |
-| 08:EXCHANGE [BROADCAST]
-| |
-| 00:SCAN HDFS [tpcds.date_dim dt]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: dt.d_year = 1998, dt.d_moy = 12
-| row-size=12B cardinality=108
-|
-03:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_item_sk = item.i_item_sk
-| row-size=50B cardinality=29.12K
-|
-|--JOIN BUILD
-| | join-table-id=01 plan-id=02 cohort-id=01
-| | build expressions: item.i_item_sk
-| | runtime filters: RF002 <- item.i_item_sk
-| |
-| 07:EXCHANGE [BROADCAST]
-| |
-| 02:SCAN HDFS [tpcds.item]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| predicates: item.i_manager_id = 1
-| row-size=34B cardinality=182
-|
-01:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF000 -> store_sales.ss_sold_date_sk, RF002 -> store_sales.ss_item_sk
- row-size=16B cardinality=2.88M
-====
-# TPCDS-Q43
-select
- s_store_name,
- s_store_id,
- sum(case when (d_day_name = 'Sunday') then ss_sales_price else null end) sun_sales,
- sum(case when (d_day_name = 'Monday') then ss_sales_price else null end) mon_sales,
- sum(case when (d_day_name = 'Tuesday') then ss_sales_price else null end) tue_sales,
- sum(case when (d_day_name = 'Wednesday') then ss_sales_price else null end) wed_sales,
- sum(case when (d_day_name = 'Thursday') then ss_sales_price else null end) thu_sales,
- sum(case when (d_day_name = 'Friday') then ss_sales_price else null end) fri_sales,
- sum(case when (d_day_name = 'Saturday') then ss_sales_price else null end) sat_sales
-from
- date_dim,
- store_sales,
- store
-where
- d_date_sk = ss_sold_date_sk
- and s_store_sk = ss_store_sk
- and s_gmt_offset = -5
- and d_year = 1998
-group by
- s_store_name,
- s_store_id
-order by
- s_store_name,
- s_store_id,
- sun_sales,
- mon_sales,
- tue_sales,
- wed_sales,
- thu_sales,
- fri_sales,
- sat_sales
-limit 100
----- PLAN
-Max Per-Host Resource Reservation: Memory=21.88MB Threads=4
-Per-Host Resource Estimates: Memory=214MB
-PLAN-ROOT SINK
-|
-06:TOP-N [LIMIT=100]
-| order by: s_store_name ASC, s_store_id ASC, sum(CASE WHEN (d_day_name = 'Sunday') THEN ss_sales_price ELSE NULL END) ASC, sum(CASE WHEN (d_day_name = 'Monday') THEN ss_sales_price ELSE NULL END) ASC, sum(CASE WHEN (d_day_name = 'Tuesday') THEN ss_sales_price ELSE NULL END) ASC, sum(CASE WHEN (d_day_name = 'Wednesday') THEN ss_sales_price ELSE NULL END) ASC, sum(CASE WHEN (d_day_name = 'Thursday') THEN ss_sales_price ELSE NULL END) ASC, sum(CASE WHEN (d_day_name = 'Friday') THEN ss_sal [...]
-| row-size=156B cardinality=48
-|
-05:AGGREGATE [FINALIZE]
-| output: sum(CASE WHEN (d_day_name = 'Sunday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Monday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Tuesday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Wednesday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Thursday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Friday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Sa [...]
-| group by: s_store_name, s_store_id
-| row-size=156B cardinality=48
-|
-04:HASH JOIN [INNER JOIN]
-| hash predicates: ss_store_sk = s_store_sk
-| runtime filters: RF000 <- s_store_sk
-| row-size=91B cardinality=589.03K
-|
-|--02:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| predicates: s_gmt_offset = -5
-| row-size=52B cardinality=12
-|
-03:HASH JOIN [INNER JOIN]
-| hash predicates: ss_sold_date_sk = d_date_sk
-| runtime filters: RF002 <- d_date_sk
-| row-size=39B cardinality=589.03K
-|
-|--00:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: d_year = 1998
-| row-size=27B cardinality=373
-|
-01:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF000 -> ss_store_sk, RF002 -> ss_sold_date_sk
- row-size=12B cardinality=2.88M
----- DISTRIBUTEDPLAN
-Max Per-Host Resource Reservation: Memory=25.82MB Threads=8
-Per-Host Resource Estimates: Memory=234MB
-PLAN-ROOT SINK
-|
-11:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: s_store_name ASC, s_store_id ASC, sum(CASE WHEN (d_day_name = 'Sunday') THEN ss_sales_price ELSE NULL END) ASC, sum(CASE WHEN (d_day_name = 'Monday') THEN ss_sales_price ELSE NULL END) ASC, sum(CASE WHEN (d_day_name = 'Tuesday') THEN ss_sales_price ELSE NULL END) ASC, sum(CASE WHEN (d_day_name = 'Wednesday') THEN ss_sales_price ELSE NULL END) ASC, sum(CASE WHEN (d_day_name = 'Thursday') THEN ss_sales_price ELSE NULL END) ASC, sum(CASE WHEN (d_day_name = 'Friday') THEN ss_sal [...]
-| limit: 100
-|
-06:TOP-N [LIMIT=100]
-| order by: s_store_name ASC, s_store_id ASC, sum(CASE WHEN (d_day_name = 'Sunday') THEN ss_sales_price ELSE NULL END) ASC, sum(CASE WHEN (d_day_name = 'Monday') THEN ss_sales_price ELSE NULL END) ASC, sum(CASE WHEN (d_day_name = 'Tuesday') THEN ss_sales_price ELSE NULL END) ASC, sum(CASE WHEN (d_day_name = 'Wednesday') THEN ss_sales_price ELSE NULL END) ASC, sum(CASE WHEN (d_day_name = 'Thursday') THEN ss_sales_price ELSE NULL END) ASC, sum(CASE WHEN (d_day_name = 'Friday') THEN ss_sal [...]
-| row-size=156B cardinality=48
-|
-10:AGGREGATE [FINALIZE]
-| output: sum:merge(CASE WHEN (d_day_name = 'Sunday') THEN ss_sales_price ELSE NULL END), sum:merge(CASE WHEN (d_day_name = 'Monday') THEN ss_sales_price ELSE NULL END), sum:merge(CASE WHEN (d_day_name = 'Tuesday') THEN ss_sales_price ELSE NULL END), sum:merge(CASE WHEN (d_day_name = 'Wednesday') THEN ss_sales_price ELSE NULL END), sum:merge(CASE WHEN (d_day_name = 'Thursday') THEN ss_sales_price ELSE NULL END), sum:merge(CASE WHEN (d_day_name = 'Friday') THEN ss_sales_price ELSE NULL E [...]
-| group by: s_store_name, s_store_id
-| row-size=156B cardinality=48
-|
-09:EXCHANGE [HASH(s_store_name,s_store_id)]
-|
-05:AGGREGATE [STREAMING]
-| output: sum(CASE WHEN (d_day_name = 'Sunday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Monday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Tuesday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Wednesday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Thursday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Friday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Sa [...]
-| group by: s_store_name, s_store_id
-| row-size=156B cardinality=48
-|
-04:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_store_sk = s_store_sk
-| runtime filters: RF000 <- s_store_sk
-| row-size=91B cardinality=589.03K
-|
-|--08:EXCHANGE [BROADCAST]
-| |
-| 02:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| predicates: s_gmt_offset = -5
-| row-size=52B cardinality=12
-|
-03:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_sold_date_sk = d_date_sk
-| runtime filters: RF002 <- d_date_sk
-| row-size=39B cardinality=589.03K
-|
-|--07:EXCHANGE [BROADCAST]
-| |
-| 00:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: d_year = 1998
-| row-size=27B cardinality=373
-|
-01:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF000 -> ss_store_sk, RF002 -> ss_sold_date_sk
- row-size=12B cardinality=2.88M
----- PARALLELPLANS
-Max Per-Host Resource Reservation: Memory=43.63MB Threads=9
-Per-Host Resource Estimates: Memory=124MB
-PLAN-ROOT SINK
-|
-11:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: s_store_name ASC, s_store_id ASC, sum(CASE WHEN (d_day_name = 'Sunday') THEN ss_sales_price ELSE NULL END) ASC, sum(CASE WHEN (d_day_name = 'Monday') THEN ss_sales_price ELSE NULL END) ASC, sum(CASE WHEN (d_day_name = 'Tuesday') THEN ss_sales_price ELSE NULL END) ASC, sum(CASE WHEN (d_day_name = 'Wednesday') THEN ss_sales_price ELSE NULL END) ASC, sum(CASE WHEN (d_day_name = 'Thursday') THEN ss_sales_price ELSE NULL END) ASC, sum(CASE WHEN (d_day_name = 'Friday') THEN ss_sal [...]
-| limit: 100
-|
-06:TOP-N [LIMIT=100]
-| order by: s_store_name ASC, s_store_id ASC, sum(CASE WHEN (d_day_name = 'Sunday') THEN ss_sales_price ELSE NULL END) ASC, sum(CASE WHEN (d_day_name = 'Monday') THEN ss_sales_price ELSE NULL END) ASC, sum(CASE WHEN (d_day_name = 'Tuesday') THEN ss_sales_price ELSE NULL END) ASC, sum(CASE WHEN (d_day_name = 'Wednesday') THEN ss_sales_price ELSE NULL END) ASC, sum(CASE WHEN (d_day_name = 'Thursday') THEN ss_sales_price ELSE NULL END) ASC, sum(CASE WHEN (d_day_name = 'Friday') THEN ss_sal [...]
-| row-size=156B cardinality=48
-|
-10:AGGREGATE [FINALIZE]
-| output: sum:merge(CASE WHEN (d_day_name = 'Sunday') THEN ss_sales_price ELSE NULL END), sum:merge(CASE WHEN (d_day_name = 'Monday') THEN ss_sales_price ELSE NULL END), sum:merge(CASE WHEN (d_day_name = 'Tuesday') THEN ss_sales_price ELSE NULL END), sum:merge(CASE WHEN (d_day_name = 'Wednesday') THEN ss_sales_price ELSE NULL END), sum:merge(CASE WHEN (d_day_name = 'Thursday') THEN ss_sales_price ELSE NULL END), sum:merge(CASE WHEN (d_day_name = 'Friday') THEN ss_sales_price ELSE NULL E [...]
-| group by: s_store_name, s_store_id
-| row-size=156B cardinality=48
-|
-09:EXCHANGE [HASH(s_store_name,s_store_id)]
-|
-05:AGGREGATE [STREAMING]
-| output: sum(CASE WHEN (d_day_name = 'Sunday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Monday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Tuesday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Wednesday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Thursday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Friday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Sa [...]
-| group by: s_store_name, s_store_id
-| row-size=156B cardinality=48
-|
-04:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_store_sk = s_store_sk
-| row-size=91B cardinality=589.03K
-|
-|--JOIN BUILD
-| | join-table-id=00 plan-id=01 cohort-id=01
-| | build expressions: s_store_sk
-| | runtime filters: RF000 <- s_store_sk
-| |
-| 08:EXCHANGE [BROADCAST]
-| |
-| 02:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| predicates: s_gmt_offset = -5
-| row-size=52B cardinality=12
-|
-03:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_sold_date_sk = d_date_sk
-| row-size=39B cardinality=589.03K
-|
-|--JOIN BUILD
-| | join-table-id=01 plan-id=02 cohort-id=01
-| | build expressions: d_date_sk
-| | runtime filters: RF002 <- d_date_sk
-| |
-| 07:EXCHANGE [BROADCAST]
-| |
-| 00:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: d_year = 1998
-| row-size=27B cardinality=373
-|
-01:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF000 -> ss_store_sk, RF002 -> ss_sold_date_sk
- row-size=12B cardinality=2.88M
-====
-# TPCDS-Q46
-select
- c_last_name,
- c_first_name,
- ca_city,
- bought_city,
- ss_ticket_number,
- amt,
- profit
-from
- (select
- ss_ticket_number,
- ss_customer_sk,
- ca_city bought_city,
- sum(ss_coupon_amt) amt,
- sum(ss_net_profit) profit
- from
- store_sales,
- date_dim,
- store,
- household_demographics,
- customer_address
- where
- store_sales.ss_sold_date_sk = date_dim.d_date_sk
- and store_sales.ss_store_sk = store.s_store_sk
- and store_sales.ss_hdemo_sk = household_demographics.hd_demo_sk
- and store_sales.ss_addr_sk = customer_address.ca_address_sk
- and (household_demographics.hd_dep_count = 5
- or household_demographics.hd_vehicle_count = 3)
- and date_dim.d_dow in (6, 0)
- and date_dim.d_year in (1999, 1999 + 1, 1999 + 2)
- and store.s_city in ('Midway', 'Concord', 'Spring Hill', 'Brownsville', 'Greenville')
- group by
- ss_ticket_number,
- ss_customer_sk,
- ss_addr_sk,
- ca_city
- ) dn,
- customer,
- customer_address current_addr
-where
- ss_customer_sk = c_customer_sk
- and customer.c_current_addr_sk = current_addr.ca_address_sk
- and current_addr.ca_city <> bought_city
-order by
- c_last_name,
- c_first_name,
- ca_city,
- bought_city,
- ss_ticket_number
-limit 100
----- PLAN
-Max Per-Host Resource Reservation: Memory=67.06MB Threads=8
-Per-Host Resource Estimates: Memory=378MB
-PLAN-ROOT SINK
-|
-14:TOP-N [LIMIT=100]
-| order by: c_last_name ASC, c_first_name ASC, ca_city ASC, bought_city ASC, ss_ticket_number ASC
-| row-size=118B cardinality=100
-|
-13:HASH JOIN [INNER JOIN]
-| hash predicates: customer.c_current_addr_sk = current_addr.ca_address_sk
-| other predicates: current_addr.ca_city != ca_city
-| runtime filters: RF000 <- current_addr.ca_address_sk
-| row-size=138B cardinality=230.45K
-|
-|--11:SCAN HDFS [tpcds.customer_address current_addr]
-| HDFS partitions=1/1 files=1 size=5.25MB
-| row-size=25B cardinality=50.00K
-|
-12:HASH JOIN [INNER JOIN]
-| hash predicates: ss_customer_sk = c_customer_sk
-| runtime filters: RF002 <- c_customer_sk
-| row-size=113B cardinality=230.45K
-|
-|--10:SCAN HDFS [tpcds.customer]
-| HDFS partitions=1/1 files=1 size=12.60MB
-| runtime filters: RF000 -> customer.c_current_addr_sk
-| row-size=44B cardinality=100.00K
-|
-09:AGGREGATE [FINALIZE]
-| output: sum(ss_coupon_amt), sum(ss_net_profit)
-| group by: ss_ticket_number, ss_customer_sk, ss_addr_sk, ca_city
-| row-size=69B cardinality=230.45K
-|
-08:HASH JOIN [INNER JOIN]
-| hash predicates: store_sales.ss_addr_sk = customer_address.ca_address_sk
-| runtime filters: RF004 <- customer_address.ca_address_sk
-| row-size=107B cardinality=230.45K
-|
-|--04:SCAN HDFS [tpcds.customer_address]
-| HDFS partitions=1/1 files=1 size=5.25MB
-| row-size=25B cardinality=50.00K
-|
-07:HASH JOIN [INNER JOIN]
-| hash predicates: store_sales.ss_store_sk = store.s_store_sk
-| runtime filters: RF006 <- store.s_store_sk
-| row-size=83B cardinality=230.45K
-|
-|--02:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| predicates: store.s_city IN ('Midway', 'Concord', 'Spring Hill', 'Brownsville', 'Greenville')
-| row-size=23B cardinality=12
-|
-06:HASH JOIN [INNER JOIN]
-| hash predicates: store_sales.ss_sold_date_sk = date_dim.d_date_sk
-| runtime filters: RF008 <- date_dim.d_date_sk
-| row-size=60B cardinality=230.45K
-|
-|--01:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: date_dim.d_dow IN (6, 0), date_dim.d_year IN (1999, 2000, 2001)
-| row-size=12B cardinality=598
-|
-05:HASH JOIN [INNER JOIN]
-| hash predicates: store_sales.ss_hdemo_sk = household_demographics.hd_demo_sk
-| runtime filters: RF010 <- household_demographics.hd_demo_sk
-| row-size=48B cardinality=702.92K
-|
-|--03:SCAN HDFS [tpcds.household_demographics]
-| HDFS partitions=1/1 files=1 size=148.10KB
-| predicates: (household_demographics.hd_dep_count = 5 OR household_demographics.hd_vehicle_count = 3)
-| row-size=12B cardinality=1.80K
-|
-00:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF002 -> tpcds.store_sales.ss_customer_sk, RF004 -> store_sales.ss_addr_sk, RF006 -> store_sales.ss_store_sk, RF008 -> store_sales.ss_sold_date_sk, RF010 -> store_sales.ss_hdemo_sk
- row-size=36B cardinality=2.88M
----- DISTRIBUTEDPLAN
-Max Per-Host Resource Reservation: Memory=80.20MB Threads=17
-Per-Host Resource Estimates: Memory=412MB
-PLAN-ROOT SINK
-|
-24:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: c_last_name ASC, c_first_name ASC, ca_city ASC, bought_city ASC, ss_ticket_number ASC
-| limit: 100
-|
-14:TOP-N [LIMIT=100]
-| order by: c_last_name ASC, c_first_name ASC, ca_city ASC, bought_city ASC, ss_ticket_number ASC
-| row-size=118B cardinality=100
-|
-13:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: customer.c_current_addr_sk = current_addr.ca_address_sk
-| other predicates: current_addr.ca_city != ca_city
-| runtime filters: RF000 <- current_addr.ca_address_sk
-| row-size=138B cardinality=230.45K
-|
-|--23:EXCHANGE [BROADCAST]
-| |
-| 11:SCAN HDFS [tpcds.customer_address current_addr]
-| HDFS partitions=1/1 files=1 size=5.25MB
-| row-size=25B cardinality=50.00K
-|
-12:HASH JOIN [INNER JOIN, PARTITIONED]
-| hash predicates: ss_customer_sk = c_customer_sk
-| runtime filters: RF002 <- c_customer_sk
-| row-size=113B cardinality=230.45K
-|
-|--22:EXCHANGE [HASH(c_customer_sk)]
-| |
-| 10:SCAN HDFS [tpcds.customer]
-| HDFS partitions=1/1 files=1 size=12.60MB
-| runtime filters: RF000 -> customer.c_current_addr_sk
-| row-size=44B cardinality=100.00K
-|
-21:EXCHANGE [HASH(ss_customer_sk)]
-|
-20:AGGREGATE [FINALIZE]
-| output: sum:merge(ss_coupon_amt), sum:merge(ss_net_profit)
-| group by: ss_ticket_number, ss_customer_sk, ss_addr_sk, ca_city
-| row-size=69B cardinality=230.45K
-|
-19:EXCHANGE [HASH(ss_ticket_number,ss_customer_sk,ss_addr_sk,ca_city)]
-|
-09:AGGREGATE [STREAMING]
-| output: sum(ss_coupon_amt), sum(ss_net_profit)
-| group by: ss_ticket_number, ss_customer_sk, ss_addr_sk, ca_city
-| row-size=69B cardinality=230.45K
-|
-08:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_addr_sk = customer_address.ca_address_sk
-| runtime filters: RF004 <- customer_address.ca_address_sk
-| row-size=107B cardinality=230.45K
-|
-|--18:EXCHANGE [BROADCAST]
-| |
-| 04:SCAN HDFS [tpcds.customer_address]
-| HDFS partitions=1/1 files=1 size=5.25MB
-| row-size=25B cardinality=50.00K
-|
-07:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_store_sk = store.s_store_sk
-| runtime filters: RF006 <- store.s_store_sk
-| row-size=83B cardinality=230.45K
-|
-|--17:EXCHANGE [BROADCAST]
-| |
-| 02:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| predicates: store.s_city IN ('Midway', 'Concord', 'Spring Hill', 'Brownsville', 'Greenville')
-| row-size=23B cardinality=12
-|
-06:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_sold_date_sk = date_dim.d_date_sk
-| runtime filters: RF008 <- date_dim.d_date_sk
-| row-size=60B cardinality=230.45K
-|
-|--16:EXCHANGE [BROADCAST]
-| |
-| 01:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: date_dim.d_dow IN (6, 0), date_dim.d_year IN (1999, 2000, 2001)
-| row-size=12B cardinality=598
-|
-05:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_hdemo_sk = household_demographics.hd_demo_sk
-| runtime filters: RF010 <- household_demographics.hd_demo_sk
-| row-size=48B cardinality=702.92K
-|
-|--15:EXCHANGE [BROADCAST]
-| |
-| 03:SCAN HDFS [tpcds.household_demographics]
-| HDFS partitions=1/1 files=1 size=148.10KB
-| predicates: (household_demographics.hd_dep_count = 5 OR household_demographics.hd_vehicle_count = 3)
-| row-size=12B cardinality=1.80K
-|
-00:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF002 -> tpcds.store_sales.ss_customer_sk, RF004 -> store_sales.ss_addr_sk, RF006 -> store_sales.ss_store_sk, RF008 -> store_sales.ss_sold_date_sk, RF010 -> store_sales.ss_hdemo_sk
- row-size=36B cardinality=2.88M
----- PARALLELPLANS
-Max Per-Host Resource Reservation: Memory=107.76MB Threads=20
-Per-Host Resource Estimates: Memory=257MB
-PLAN-ROOT SINK
-|
-24:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: c_last_name ASC, c_first_name ASC, ca_city ASC, bought_city ASC, ss_ticket_number ASC
-| limit: 100
-|
-14:TOP-N [LIMIT=100]
-| order by: c_last_name ASC, c_first_name ASC, ca_city ASC, bought_city ASC, ss_ticket_number ASC
-| row-size=118B cardinality=100
-|
-13:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: customer.c_current_addr_sk = current_addr.ca_address_sk
-| other predicates: current_addr.ca_city != ca_city
-| row-size=138B cardinality=230.45K
-|
-|--JOIN BUILD
-| | join-table-id=00 plan-id=01 cohort-id=01
-| | build expressions: current_addr.ca_address_sk
-| | runtime filters: RF000 <- current_addr.ca_address_sk
-| |
-| 23:EXCHANGE [BROADCAST]
-| |
-| 11:SCAN HDFS [tpcds.customer_address current_addr]
-| HDFS partitions=1/1 files=1 size=5.25MB
-| row-size=25B cardinality=50.00K
-|
-12:HASH JOIN [INNER JOIN, PARTITIONED]
-| hash predicates: ss_customer_sk = c_customer_sk
-| row-size=113B cardinality=230.45K
-|
-|--JOIN BUILD
-| | join-table-id=01 plan-id=02 cohort-id=01
-| | build expressions: c_customer_sk
-| | runtime filters: RF002 <- c_customer_sk
-| |
-| 22:EXCHANGE [HASH(c_customer_sk)]
-| |
-| 10:SCAN HDFS [tpcds.customer]
-| HDFS partitions=1/1 files=1 size=12.60MB
-| runtime filters: RF000 -> customer.c_current_addr_sk
-| row-size=44B cardinality=100.00K
-|
-21:EXCHANGE [HASH(ss_customer_sk)]
-|
-20:AGGREGATE [FINALIZE]
-| output: sum:merge(ss_coupon_amt), sum:merge(ss_net_profit)
-| group by: ss_ticket_number, ss_customer_sk, ss_addr_sk, ca_city
-| row-size=69B cardinality=230.45K
-|
-19:EXCHANGE [HASH(ss_ticket_number,ss_customer_sk,ss_addr_sk,ca_city)]
-|
-09:AGGREGATE [STREAMING]
-| output: sum(ss_coupon_amt), sum(ss_net_profit)
-| group by: ss_ticket_number, ss_customer_sk, ss_addr_sk, ca_city
-| row-size=69B cardinality=230.45K
-|
-08:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_addr_sk = customer_address.ca_address_sk
-| row-size=107B cardinality=230.45K
-|
-|--JOIN BUILD
-| | join-table-id=02 plan-id=03 cohort-id=01
-| | build expressions: customer_address.ca_address_sk
-| | runtime filters: RF004 <- customer_address.ca_address_sk
-| |
-| 18:EXCHANGE [BROADCAST]
-| |
-| 04:SCAN HDFS [tpcds.customer_address]
-| HDFS partitions=1/1 files=1 size=5.25MB
-| row-size=25B cardinality=50.00K
-|
-07:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_store_sk = store.s_store_sk
-| row-size=83B cardinality=230.45K
-|
-|--JOIN BUILD
-| | join-table-id=03 plan-id=04 cohort-id=01
-| | build expressions: store.s_store_sk
-| | runtime filters: RF006 <- store.s_store_sk
-| |
-| 17:EXCHANGE [BROADCAST]
-| |
-| 02:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| predicates: store.s_city IN ('Midway', 'Concord', 'Spring Hill', 'Brownsville', 'Greenville')
-| row-size=23B cardinality=12
-|
-06:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_sold_date_sk = date_dim.d_date_sk
-| row-size=60B cardinality=230.45K
-|
-|--JOIN BUILD
-| | join-table-id=04 plan-id=05 cohort-id=01
-| | build expressions: date_dim.d_date_sk
-| | runtime filters: RF008 <- date_dim.d_date_sk
-| |
-| 16:EXCHANGE [BROADCAST]
-| |
-| 01:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: date_dim.d_dow IN (6, 0), date_dim.d_year IN (1999, 2000, 2001)
-| row-size=12B cardinality=598
-|
-05:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_hdemo_sk = household_demographics.hd_demo_sk
-| row-size=48B cardinality=702.92K
-|
-|--JOIN BUILD
-| | join-table-id=05 plan-id=06 cohort-id=01
-| | build expressions: household_demographics.hd_demo_sk
-| | runtime filters: RF010 <- household_demographics.hd_demo_sk
-| |
-| 15:EXCHANGE [BROADCAST]
-| |
-| 03:SCAN HDFS [tpcds.household_demographics]
-| HDFS partitions=1/1 files=1 size=148.10KB
-| predicates: (household_demographics.hd_dep_count = 5 OR household_demographics.hd_vehicle_count = 3)
-| row-size=12B cardinality=1.80K
-|
-00:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF002 -> tpcds.store_sales.ss_customer_sk, RF004 -> store_sales.ss_addr_sk, RF006 -> store_sales.ss_store_sk, RF008 -> store_sales.ss_sold_date_sk, RF010 -> store_sales.ss_hdemo_sk
- row-size=36B cardinality=2.88M
-====
-# TPCDS-Q52
-select
- dt.d_year,
- item.i_brand_id brand_id,
- item.i_brand brand,
- sum(ss_ext_sales_price) ext_price
-from
- date_dim dt,
- store_sales,
- item
-where
- dt.d_date_sk = store_sales.ss_sold_date_sk
- and store_sales.ss_item_sk = item.i_item_sk
- and item.i_manager_id = 1
- and dt.d_moy = 12
- and dt.d_year = 1998
-group by
- dt.d_year,
- item.i_brand,
- item.i_brand_id
-order by
- dt.d_year,
- ext_price desc,
- brand_id
-limit 100
----- PLAN
-Max Per-Host Resource Reservation: Memory=29.88MB Threads=4
-Per-Host Resource Estimates: Memory=214MB
-PLAN-ROOT SINK
-|
-06:TOP-N [LIMIT=100]
-| order by: dt.d_year ASC, sum(ss_ext_sales_price) DESC, item.i_brand_id ASC
-| row-size=52B cardinality=100
-|
-05:AGGREGATE [FINALIZE]
-| output: sum(ss_ext_sales_price)
-| group by: dt.d_year, item.i_brand, item.i_brand_id
-| row-size=52B cardinality=1.73K
-|
-04:HASH JOIN [INNER JOIN]
-| hash predicates: store_sales.ss_sold_date_sk = dt.d_date_sk
-| runtime filters: RF000 <- dt.d_date_sk
-| row-size=72B cardinality=1.73K
-|
-|--00:SCAN HDFS [tpcds.date_dim dt]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: dt.d_year = 1998, dt.d_moy = 12
-| row-size=12B cardinality=108
-|
-03:HASH JOIN [INNER JOIN]
-| hash predicates: store_sales.ss_item_sk = item.i_item_sk
-| runtime filters: RF002 <- item.i_item_sk
-| row-size=60B cardinality=29.12K
-|
-|--02:SCAN HDFS [tpcds.item]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| predicates: item.i_manager_id = 1
-| row-size=44B cardinality=182
-|
-01:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF000 -> store_sales.ss_sold_date_sk, RF002 -> store_sales.ss_item_sk
- row-size=16B cardinality=2.88M
----- DISTRIBUTEDPLAN
-Max Per-Host Resource Reservation: Memory=33.81MB Threads=8
-Per-Host Resource Estimates: Memory=234MB
-PLAN-ROOT SINK
-|
-11:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: dt.d_year ASC, sum(ss_ext_sales_price) DESC, item.i_brand_id ASC
-| limit: 100
-|
-06:TOP-N [LIMIT=100]
-| order by: dt.d_year ASC, sum(ss_ext_sales_price) DESC, item.i_brand_id ASC
-| row-size=52B cardinality=100
-|
-10:AGGREGATE [FINALIZE]
-| output: sum:merge(ss_ext_sales_price)
-| group by: dt.d_year, item.i_brand, item.i_brand_id
-| row-size=52B cardinality=1.73K
-|
-09:EXCHANGE [HASH(dt.d_year,item.i_brand,item.i_brand_id)]
-|
-05:AGGREGATE [STREAMING]
-| output: sum(ss_ext_sales_price)
-| group by: dt.d_year, item.i_brand, item.i_brand_id
-| row-size=52B cardinality=1.73K
-|
-04:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_sold_date_sk = dt.d_date_sk
-| runtime filters: RF000 <- dt.d_date_sk
-| row-size=72B cardinality=1.73K
-|
-|--08:EXCHANGE [BROADCAST]
-| |
-| 00:SCAN HDFS [tpcds.date_dim dt]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: dt.d_year = 1998, dt.d_moy = 12
-| row-size=12B cardinality=108
-|
-03:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_item_sk = item.i_item_sk
-| runtime filters: RF002 <- item.i_item_sk
-| row-size=60B cardinality=29.12K
-|
-|--07:EXCHANGE [BROADCAST]
-| |
-| 02:SCAN HDFS [tpcds.item]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| predicates: item.i_manager_id = 1
-| row-size=44B cardinality=182
-|
-01:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF000 -> store_sales.ss_sold_date_sk, RF002 -> store_sales.ss_item_sk
- row-size=16B cardinality=2.88M
----- PARALLELPLANS
-Max Per-Host Resource Reservation: Memory=51.62MB Threads=9
-Per-Host Resource Estimates: Memory=125MB
-PLAN-ROOT SINK
-|
-11:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: dt.d_year ASC, sum(ss_ext_sales_price) DESC, item.i_brand_id ASC
-| limit: 100
-|
-06:TOP-N [LIMIT=100]
-| order by: dt.d_year ASC, sum(ss_ext_sales_price) DESC, item.i_brand_id ASC
-| row-size=52B cardinality=100
-|
-10:AGGREGATE [FINALIZE]
-| output: sum:merge(ss_ext_sales_price)
-| group by: dt.d_year, item.i_brand, item.i_brand_id
-| row-size=52B cardinality=1.73K
-|
-09:EXCHANGE [HASH(dt.d_year,item.i_brand,item.i_brand_id)]
-|
-05:AGGREGATE [STREAMING]
-| output: sum(ss_ext_sales_price)
-| group by: dt.d_year, item.i_brand, item.i_brand_id
-| row-size=52B cardinality=1.73K
-|
-04:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_sold_date_sk = dt.d_date_sk
-| row-size=72B cardinality=1.73K
-|
-|--JOIN BUILD
-| | join-table-id=00 plan-id=01 cohort-id=01
-| | build expressions: dt.d_date_sk
-| | runtime filters: RF000 <- dt.d_date_sk
-| |
-| 08:EXCHANGE [BROADCAST]
-| |
-| 00:SCAN HDFS [tpcds.date_dim dt]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: dt.d_year = 1998, dt.d_moy = 12
-| row-size=12B cardinality=108
-|
-03:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_item_sk = item.i_item_sk
-| row-size=60B cardinality=29.12K
-|
-|--JOIN BUILD
-| | join-table-id=01 plan-id=02 cohort-id=01
-| | build expressions: item.i_item_sk
-| | runtime filters: RF002 <- item.i_item_sk
-| |
-| 07:EXCHANGE [BROADCAST]
-| |
-| 02:SCAN HDFS [tpcds.item]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| predicates: item.i_manager_id = 1
-| row-size=44B cardinality=182
-|
-01:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF000 -> store_sales.ss_sold_date_sk, RF002 -> store_sales.ss_item_sk
- row-size=16B cardinality=2.88M
-====
-# TPCDS-Q53
-select
- *
-from
- (select
- i_manufact_id,
- sum(ss_sales_price) sum_sales
- from
- item,
- store_sales,
- date_dim,
- store
- where
- ss_item_sk = i_item_sk
- and ss_sold_date_sk = d_date_sk
- and ss_store_sk = s_store_sk
- and d_month_seq in (1212, 1212 + 1, 1212 + 2, 1212 + 3, 1212 + 4, 1212 + 5, 1212 + 6, 1212 + 7, 1212 + 8, 1212 + 9, 1212 + 10, 1212 + 11)
- and ((i_category in ('Books', 'Children', 'Electronics')
- and i_class in ('personal', 'portable', 'reference', 'self-help')
- and i_brand in ('scholaramalgamalg #14', 'scholaramalgamalg #7', 'exportiunivamalg #9', 'scholaramalgamalg #9'))
- or (i_category in ('Women', 'Music', 'Men')
- and i_class in ('accessories', 'classical', 'fragrances', 'pants')
- and i_brand in ('amalgimporto #1', 'edu packscholar #1', 'exportiimporto #1', 'importoamalg #1')))
- group by
- i_manufact_id,
- d_qoy
- ) tmp1
-order by
- sum_sales,
- i_manufact_id
-limit 100
----- PLAN
-Max Per-Host Resource Reservation: Memory=32.82MB Threads=5
-Per-Host Resource Estimates: Memory=249MB
-PLAN-ROOT SINK
-|
-08:TOP-N [LIMIT=100]
-| order by: sum_sales ASC, i_manufact_id ASC
-| row-size=20B cardinality=96
-|
-07:AGGREGATE [FINALIZE]
-| output: sum(ss_sales_price)
-| group by: i_manufact_id, d_qoy
-| row-size=24B cardinality=96
-|
-06:HASH JOIN [INNER JOIN]
-| hash predicates: ss_store_sk = s_store_sk
-| runtime filters: RF000 <- s_store_sk
-| row-size=114B cardinality=96
-|
-|--03:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| row-size=4B cardinality=12
-|
-05:HASH JOIN [INNER JOIN]
-| hash predicates: ss_sold_date_sk = d_date_sk
-| runtime filters: RF002 <- d_date_sk
-| row-size=110B cardinality=96
-|
-|--02:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: d_month_seq IN (1212, 1213, 1214, 1215, 1216, 1217, 1218, 1219, 1220, 1221, 1222, 1223)
-| row-size=12B cardinality=362
-|
-04:HASH JOIN [INNER JOIN]
-| hash predicates: ss_item_sk = i_item_sk
-| runtime filters: RF004 <- i_item_sk
-| row-size=98B cardinality=481
-|
-|--00:SCAN HDFS [tpcds.item]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| predicates: ((i_category IN ('Books', 'Children', 'Electronics') AND i_class IN ('personal', 'portable', 'reference', 'self-help') AND i_brand IN ('scholaramalgamalg #14', 'scholaramalgamalg #7', 'exportiunivamalg #9', 'scholaramalgamalg #9')) OR (i_category IN ('Women', 'Music', 'Men') AND i_class IN ('accessories', 'classical', 'fragrances', 'pants') AND i_brand IN ('amalgimporto #1', 'edu packscholar #1', 'exportiimporto #1', 'importoamalg #1')))
-| row-size=78B cardinality=3
-|
-01:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF000 -> ss_store_sk, RF002 -> ss_sold_date_sk, RF004 -> ss_item_sk
- row-size=20B cardinality=2.88M
----- DISTRIBUTEDPLAN
-Max Per-Host Resource Reservation: Memory=36.76MB Threads=10
-Per-Host Resource Estimates: Memory=269MB
-PLAN-ROOT SINK
-|
-14:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: sum_sales ASC, i_manufact_id ASC
-| limit: 100
-|
-08:TOP-N [LIMIT=100]
-| order by: sum_sales ASC, i_manufact_id ASC
-| row-size=20B cardinality=96
-|
-13:AGGREGATE [FINALIZE]
-| output: sum:merge(ss_sales_price)
-| group by: i_manufact_id, d_qoy
-| row-size=24B cardinality=96
-|
-12:EXCHANGE [HASH(i_manufact_id,d_qoy)]
-|
-07:AGGREGATE [STREAMING]
-| output: sum(ss_sales_price)
-| group by: i_manufact_id, d_qoy
-| row-size=24B cardinality=96
-|
-06:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_store_sk = s_store_sk
-| runtime filters: RF000 <- s_store_sk
-| row-size=114B cardinality=96
-|
-|--11:EXCHANGE [BROADCAST]
-| |
-| 03:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| row-size=4B cardinality=12
-|
-05:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_sold_date_sk = d_date_sk
-| runtime filters: RF002 <- d_date_sk
-| row-size=110B cardinality=96
-|
-|--10:EXCHANGE [BROADCAST]
-| |
-| 02:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: d_month_seq IN (1212, 1213, 1214, 1215, 1216, 1217, 1218, 1219, 1220, 1221, 1222, 1223)
-| row-size=12B cardinality=362
-|
-04:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_item_sk = i_item_sk
-| runtime filters: RF004 <- i_item_sk
-| row-size=98B cardinality=481
-|
-|--09:EXCHANGE [BROADCAST]
-| |
-| 00:SCAN HDFS [tpcds.item]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| predicates: ((i_category IN ('Books', 'Children', 'Electronics') AND i_class IN ('personal', 'portable', 'reference', 'self-help') AND i_brand IN ('scholaramalgamalg #14', 'scholaramalgamalg #7', 'exportiunivamalg #9', 'scholaramalgamalg #9')) OR (i_category IN ('Women', 'Music', 'Men') AND i_class IN ('accessories', 'classical', 'fragrances', 'pants') AND i_brand IN ('amalgimporto #1', 'edu packscholar #1', 'exportiimporto #1', 'importoamalg #1')))
-| row-size=78B cardinality=3
-|
-01:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF000 -> ss_store_sk, RF002 -> ss_sold_date_sk, RF004 -> ss_item_sk
- row-size=20B cardinality=2.88M
----- PARALLELPLANS
-Max Per-Host Resource Reservation: Memory=57.51MB Threads=11
-Per-Host Resource Estimates: Memory=146MB
-PLAN-ROOT SINK
-|
-14:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: sum_sales ASC, i_manufact_id ASC
-| limit: 100
-|
-08:TOP-N [LIMIT=100]
-| order by: sum_sales ASC, i_manufact_id ASC
-| row-size=20B cardinality=96
-|
-13:AGGREGATE [FINALIZE]
-| output: sum:merge(ss_sales_price)
-| group by: i_manufact_id, d_qoy
-| row-size=24B cardinality=96
-|
-12:EXCHANGE [HASH(i_manufact_id,d_qoy)]
-|
-07:AGGREGATE [STREAMING]
-| output: sum(ss_sales_price)
-| group by: i_manufact_id, d_qoy
-| row-size=24B cardinality=96
-|
-06:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_store_sk = s_store_sk
-| row-size=114B cardinality=96
-|
-|--JOIN BUILD
-| | join-table-id=00 plan-id=01 cohort-id=01
-| | build expressions: s_store_sk
-| | runtime filters: RF000 <- s_store_sk
-| |
-| 11:EXCHANGE [BROADCAST]
-| |
-| 03:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| row-size=4B cardinality=12
-|
-05:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_sold_date_sk = d_date_sk
-| row-size=110B cardinality=96
-|
-|--JOIN BUILD
-| | join-table-id=01 plan-id=02 cohort-id=01
-| | build expressions: d_date_sk
-| | runtime filters: RF002 <- d_date_sk
-| |
-| 10:EXCHANGE [BROADCAST]
-| |
-| 02:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: d_month_seq IN (1212, 1213, 1214, 1215, 1216, 1217, 1218, 1219, 1220, 1221, 1222, 1223)
-| row-size=12B cardinality=362
-|
-04:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_item_sk = i_item_sk
-| row-size=98B cardinality=481
-|
-|--JOIN BUILD
-| | join-table-id=02 plan-id=03 cohort-id=01
-| | build expressions: i_item_sk
-| | runtime filters: RF004 <- i_item_sk
-| |
-| 09:EXCHANGE [BROADCAST]
-| |
-| 00:SCAN HDFS [tpcds.item]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| predicates: ((i_category IN ('Books', 'Children', 'Electronics') AND i_class IN ('personal', 'portable', 'reference', 'self-help') AND i_brand IN ('scholaramalgamalg #14', 'scholaramalgamalg #7', 'exportiunivamalg #9', 'scholaramalgamalg #9')) OR (i_category IN ('Women', 'Music', 'Men') AND i_class IN ('accessories', 'classical', 'fragrances', 'pants') AND i_brand IN ('amalgimporto #1', 'edu packscholar #1', 'exportiimporto #1', 'importoamalg #1')))
-| row-size=78B cardinality=3
-|
-01:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF000 -> ss_store_sk, RF002 -> ss_sold_date_sk, RF004 -> ss_item_sk
- row-size=20B cardinality=2.88M
-====
-# TPCDS-Q55
-select
- i_brand_id brand_id,
- i_brand brand,
- sum(ss_ext_sales_price) ext_price
-from
- date_dim,
- store_sales,
- item
-where
- d_date_sk = ss_sold_date_sk
- and ss_item_sk = i_item_sk
- and i_manager_id = 36
- and d_moy = 12
- and d_year = 2001
-group by
- i_brand,
- i_brand_id
-order by
- ext_price desc,
- i_brand_id
-limit 100
----- PLAN
-Max Per-Host Resource Reservation: Memory=29.88MB Threads=4
-Per-Host Resource Estimates: Memory=214MB
-PLAN-ROOT SINK
-|
-06:TOP-N [LIMIT=100]
-| order by: sum(ss_ext_sales_price) DESC, i_brand_id ASC
-| row-size=48B cardinality=100
-|
-05:AGGREGATE [FINALIZE]
-| output: sum(ss_ext_sales_price)
-| group by: i_brand, i_brand_id
-| row-size=48B cardinality=1.73K
-|
-04:HASH JOIN [INNER JOIN]
-| hash predicates: ss_sold_date_sk = d_date_sk
-| runtime filters: RF000 <- d_date_sk
-| row-size=72B cardinality=1.73K
-|
-|--00:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: d_year = 2001, d_moy = 12
-| row-size=12B cardinality=108
-|
-03:HASH JOIN [INNER JOIN]
-| hash predicates: ss_item_sk = i_item_sk
-| runtime filters: RF002 <- i_item_sk
-| row-size=60B cardinality=29.12K
-|
-|--02:SCAN HDFS [tpcds.item]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| predicates: i_manager_id = 36
-| row-size=44B cardinality=182
-|
-01:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF000 -> ss_sold_date_sk, RF002 -> ss_item_sk
- row-size=16B cardinality=2.88M
----- DISTRIBUTEDPLAN
-Max Per-Host Resource Reservation: Memory=33.81MB Threads=8
-Per-Host Resource Estimates: Memory=234MB
-PLAN-ROOT SINK
-|
-11:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: sum(ss_ext_sales_price) DESC, i_brand_id ASC
-| limit: 100
-|
-06:TOP-N [LIMIT=100]
-| order by: sum(ss_ext_sales_price) DESC, i_brand_id ASC
-| row-size=48B cardinality=100
-|
-10:AGGREGATE [FINALIZE]
-| output: sum:merge(ss_ext_sales_price)
-| group by: i_brand, i_brand_id
-| row-size=48B cardinality=1.73K
-|
-09:EXCHANGE [HASH(i_brand,i_brand_id)]
-|
-05:AGGREGATE [STREAMING]
-| output: sum(ss_ext_sales_price)
-| group by: i_brand, i_brand_id
-| row-size=48B cardinality=1.73K
-|
-04:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_sold_date_sk = d_date_sk
-| runtime filters: RF000 <- d_date_sk
-| row-size=72B cardinality=1.73K
-|
-|--08:EXCHANGE [BROADCAST]
-| |
-| 00:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: d_year = 2001, d_moy = 12
-| row-size=12B cardinality=108
-|
-03:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_item_sk = i_item_sk
-| runtime filters: RF002 <- i_item_sk
-| row-size=60B cardinality=29.12K
-|
-|--07:EXCHANGE [BROADCAST]
-| |
-| 02:SCAN HDFS [tpcds.item]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| predicates: i_manager_id = 36
-| row-size=44B cardinality=182
-|
-01:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF000 -> ss_sold_date_sk, RF002 -> ss_item_sk
- row-size=16B cardinality=2.88M
----- PARALLELPLANS
-Max Per-Host Resource Reservation: Memory=51.62MB Threads=9
-Per-Host Resource Estimates: Memory=124MB
-PLAN-ROOT SINK
-|
-11:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: sum(ss_ext_sales_price) DESC, i_brand_id ASC
-| limit: 100
-|
-06:TOP-N [LIMIT=100]
-| order by: sum(ss_ext_sales_price) DESC, i_brand_id ASC
-| row-size=48B cardinality=100
-|
-10:AGGREGATE [FINALIZE]
-| output: sum:merge(ss_ext_sales_price)
-| group by: i_brand, i_brand_id
-| row-size=48B cardinality=1.73K
-|
-09:EXCHANGE [HASH(i_brand,i_brand_id)]
-|
-05:AGGREGATE [STREAMING]
-| output: sum(ss_ext_sales_price)
-| group by: i_brand, i_brand_id
-| row-size=48B cardinality=1.73K
-|
-04:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_sold_date_sk = d_date_sk
-| row-size=72B cardinality=1.73K
-|
-|--JOIN BUILD
-| | join-table-id=00 plan-id=01 cohort-id=01
-| | build expressions: d_date_sk
-| | runtime filters: RF000 <- d_date_sk
-| |
-| 08:EXCHANGE [BROADCAST]
-| |
-| 00:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: d_year = 2001, d_moy = 12
-| row-size=12B cardinality=108
-|
-03:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_item_sk = i_item_sk
-| row-size=60B cardinality=29.12K
-|
-|--JOIN BUILD
-| | join-table-id=01 plan-id=02 cohort-id=01
-| | build expressions: i_item_sk
-| | runtime filters: RF002 <- i_item_sk
-| |
-| 07:EXCHANGE [BROADCAST]
-| |
-| 02:SCAN HDFS [tpcds.item]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| predicates: i_manager_id = 36
-| row-size=44B cardinality=182
-|
-01:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF000 -> ss_sold_date_sk, RF002 -> ss_item_sk
- row-size=16B cardinality=2.88M
-====
-# TPCDS-Q59
-with
- wss as
- (select
- d_week_seq,
- ss_store_sk,
- sum(case when (d_day_name = 'Sunday') then ss_sales_price else null end) sun_sales,
- sum(case when (d_day_name = 'Monday') then ss_sales_price else null end) mon_sales,
- sum(case when (d_day_name = 'Tuesday') then ss_sales_price else null end) tue_sales,
- sum(case when (d_day_name = 'Wednesday') then ss_sales_price else null end) wed_sales,
- sum(case when (d_day_name = 'Thursday') then ss_sales_price else null end) thu_sales,
- sum(case when (d_day_name = 'Friday') then ss_sales_price else null end) fri_sales,
- sum(case when (d_day_name = 'Saturday') then ss_sales_price else null end) sat_sales
- from
- store_sales,
- date_dim
- where
- d_date_sk = ss_sold_date_sk
- group by
- d_week_seq,
- ss_store_sk
- )
-select
- s_store_name1,
- s_store_id1,
- d_week_seq1,
- sun_sales1 / sun_sales2,
- mon_sales1 / mon_sales2,
- tue_sales1 / tue_sales2,
- wed_sales1 / wed_sales2,
- thu_sales1 / thu_sales2,
- fri_sales1 / fri_sales2,
- sat_sales1 / sat_sales2
-from
- (select
- s_store_name s_store_name1,
- wss.d_week_seq d_week_seq1,
- s_store_id s_store_id1,
- sun_sales sun_sales1,
- mon_sales mon_sales1,
- tue_sales tue_sales1,
- wed_sales wed_sales1,
- thu_sales thu_sales1,
- fri_sales fri_sales1,
- sat_sales sat_sales1
- from
- wss,
- store,
- date_dim d
- where
- d.d_week_seq = wss.d_week_seq
- and ss_store_sk = s_store_sk
- and d_month_seq between 1185 and 1185 + 11
- ) y,
- (select
- s_store_name s_store_name2,
- wss.d_week_seq d_week_seq2,
- s_store_id s_store_id2,
- sun_sales sun_sales2,
- mon_sales mon_sales2,
- tue_sales tue_sales2,
- wed_sales wed_sales2,
- thu_sales thu_sales2,
- fri_sales fri_sales2,
- sat_sales sat_sales2
- from
- wss,
- store,
- date_dim d
- where
- d.d_week_seq = wss.d_week_seq
- and ss_store_sk = s_store_sk
- and d_month_seq between 1185 + 12 and 1185 + 23
- ) x
-where
- s_store_id1 = s_store_id2
- and d_week_seq1 = d_week_seq2 - 52
-order by
- s_store_name1,
- s_store_id1,
- d_week_seq1
-limit 100
----- PLAN
-Max Per-Host Resource Reservation: Memory=70.52MB Threads=9
-Per-Host Resource Estimates: Memory=534MB
-PLAN-ROOT SINK
-|
-17:TOP-N [LIMIT=100]
-| order by: s_store_name1 ASC, s_store_id1 ASC, d_week_seq1 ASC
-| row-size=272B cardinality=100
-|
-16:HASH JOIN [INNER JOIN]
-| hash predicates: d_week_seq = d_week_seq - 52, s_store_id = s_store_id
-| runtime filters: RF000 <- d_week_seq - 52, RF001 <- s_store_id
-| row-size=336B cardinality=419.05M
-|
-|--15:HASH JOIN [INNER JOIN]
-| | hash predicates: ss_store_sk = s_store_sk
-| | runtime filters: RF010 <- s_store_sk
-| | row-size=160B cardinality=50.14K
-| |
-| |--12:SCAN HDFS [tpcds.store]
-| | HDFS partitions=1/1 files=1 size=3.08KB
-| | row-size=32B cardinality=12
-| |
-| 14:HASH JOIN [INNER JOIN]
-| | hash predicates: d_week_seq = d.d_week_seq
-| | runtime filters: RF012 <- d.d_week_seq
-| | row-size=128B cardinality=50.14K
-| |
-| |--13:SCAN HDFS [tpcds.date_dim d]
-| | HDFS partitions=1/1 files=1 size=9.84MB
-| | predicates: d_month_seq <= 1208, d_month_seq >= 1197
-| | row-size=8B cardinality=7.30K
-| |
-| 11:AGGREGATE [FINALIZE]
-| | output: sum(CASE WHEN (d_day_name = 'Sunday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Monday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Tuesday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Wednesday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Thursday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Friday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = [...]
-| | group by: d_week_seq, ss_store_sk
-| | row-size=120B cardinality=63.85K
-| |
-| 10:HASH JOIN [INNER JOIN]
-| | hash predicates: ss_sold_date_sk = d_date_sk
-| | runtime filters: RF014 <- d_date_sk
-| | row-size=39B cardinality=2.88M
-| |
-| |--09:SCAN HDFS [tpcds.date_dim]
-| | HDFS partitions=1/1 files=1 size=9.84MB
-| | runtime filters: RF012 -> tpcds.date_dim.d_week_seq
-| | row-size=27B cardinality=73.05K
-| |
-| 08:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| runtime filters: RF010 -> tpcds.store_sales.ss_store_sk, RF014 -> ss_sold_date_sk
-| row-size=12B cardinality=2.88M
-|
-07:HASH JOIN [INNER JOIN]
-| hash predicates: ss_store_sk = s_store_sk
-| runtime filters: RF004 <- s_store_sk
-| row-size=176B cardinality=50.14K
-|
-|--04:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| runtime filters: RF001 -> s_store_id
-| row-size=48B cardinality=12
-|
-06:HASH JOIN [INNER JOIN]
-| hash predicates: d_week_seq = d.d_week_seq
-| runtime filters: RF006 <- d.d_week_seq
-| row-size=128B cardinality=50.14K
-|
-|--05:SCAN HDFS [tpcds.date_dim d]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: d_month_seq <= 1196, d_month_seq >= 1185
-| runtime filters: RF000 -> d.d_week_seq
-| row-size=8B cardinality=7.30K
-|
-03:AGGREGATE [FINALIZE]
-| output: sum(CASE WHEN (d_day_name = 'Sunday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Monday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Tuesday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Wednesday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Thursday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Friday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Sa [...]
-| group by: d_week_seq, ss_store_sk
-| row-size=120B cardinality=63.85K
-|
-02:HASH JOIN [INNER JOIN]
-| hash predicates: ss_sold_date_sk = d_date_sk
-| runtime filters: RF008 <- d_date_sk
-| row-size=39B cardinality=2.88M
-|
-|--01:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| runtime filters: RF000 -> tpcds.date_dim.d_week_seq, RF006 -> tpcds.date_dim.d_week_seq
-| row-size=27B cardinality=73.05K
-|
-00:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF004 -> tpcds.store_sales.ss_store_sk, RF008 -> ss_sold_date_sk
- row-size=12B cardinality=2.88M
----- DISTRIBUTEDPLAN
-Max Per-Host Resource Reservation: Memory=103.14MB Threads=20
-Per-Host Resource Estimates: Memory=601MB
-PLAN-ROOT SINK
-|
-30:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: s_store_name1 ASC, s_store_id1 ASC, d_week_seq1 ASC
-| limit: 100
-|
-17:TOP-N [LIMIT=100]
-| order by: s_store_name1 ASC, s_store_id1 ASC, d_week_seq1 ASC
-| row-size=272B cardinality=100
-|
-16:HASH JOIN [INNER JOIN, PARTITIONED]
-| hash predicates: d_week_seq = d_week_seq - 52, s_store_id = s_store_id
-| runtime filters: RF000 <- d_week_seq - 52, RF001 <- s_store_id
-| row-size=336B cardinality=419.05M
-|
-|--29:EXCHANGE [HASH(d_week_seq - 52,s_store_id)]
-| |
-| 15:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_store_sk = s_store_sk
-| | runtime filters: RF010 <- s_store_sk
-| | row-size=160B cardinality=50.14K
-| |
-| |--27:EXCHANGE [BROADCAST]
-| | |
-| | 12:SCAN HDFS [tpcds.store]
-| | HDFS partitions=1/1 files=1 size=3.08KB
-| | row-size=32B cardinality=12
-| |
-| 14:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: d_week_seq = d.d_week_seq
-| | runtime filters: RF012 <- d.d_week_seq
-| | row-size=128B cardinality=50.14K
-| |
-| |--26:EXCHANGE [BROADCAST]
-| | |
-| | 13:SCAN HDFS [tpcds.date_dim d]
-| | HDFS partitions=1/1 files=1 size=9.84MB
-| | predicates: d_month_seq <= 1208, d_month_seq >= 1197
-| | row-size=8B cardinality=7.30K
-| |
-| 25:AGGREGATE [FINALIZE]
-| | output: sum:merge(CASE WHEN (d_day_name = 'Sunday') THEN ss_sales_price ELSE NULL END), sum:merge(CASE WHEN (d_day_name = 'Monday') THEN ss_sales_price ELSE NULL END), sum:merge(CASE WHEN (d_day_name = 'Tuesday') THEN ss_sales_price ELSE NULL END), sum:merge(CASE WHEN (d_day_name = 'Wednesday') THEN ss_sales_price ELSE NULL END), sum:merge(CASE WHEN (d_day_name = 'Thursday') THEN ss_sales_price ELSE NULL END), sum:merge(CASE WHEN (d_day_name = 'Friday') THEN ss_sales_price ELSE NUL [...]
-| | group by: d_week_seq, ss_store_sk
-| | row-size=120B cardinality=63.85K
-| |
-| 24:EXCHANGE [HASH(d_week_seq,ss_store_sk)]
-| |
-| 11:AGGREGATE [STREAMING]
-| | output: sum(CASE WHEN (d_day_name = 'Sunday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Monday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Tuesday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Wednesday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Thursday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Friday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = [...]
-| | group by: d_week_seq, ss_store_sk
-| | row-size=120B cardinality=63.85K
-| |
-| 10:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_sold_date_sk = d_date_sk
-| | runtime filters: RF014 <- d_date_sk
-| | row-size=39B cardinality=2.88M
-| |
-| |--23:EXCHANGE [BROADCAST]
-| | |
-| | 09:SCAN HDFS [tpcds.date_dim]
-| | HDFS partitions=1/1 files=1 size=9.84MB
-| | runtime filters: RF012 -> tpcds.date_dim.d_week_seq
-| | row-size=27B cardinality=73.05K
-| |
-| 08:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| runtime filters: RF010 -> tpcds.store_sales.ss_store_sk, RF014 -> ss_sold_date_sk
-| row-size=12B cardinality=2.88M
-|
-28:EXCHANGE [HASH(d_week_seq,s_store_id)]
-|
-07:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_store_sk = s_store_sk
-| runtime filters: RF004 <- s_store_sk
-| row-size=176B cardinality=50.14K
-|
-|--22:EXCHANGE [BROADCAST]
-| |
-| 04:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| runtime filters: RF001 -> s_store_id
-| row-size=48B cardinality=12
-|
-06:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: d_week_seq = d.d_week_seq
-| runtime filters: RF006 <- d.d_week_seq
-| row-size=128B cardinality=50.14K
-|
-|--21:EXCHANGE [BROADCAST]
-| |
-| 05:SCAN HDFS [tpcds.date_dim d]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: d_month_seq <= 1196, d_month_seq >= 1185
-| runtime filters: RF000 -> d.d_week_seq
-| row-size=8B cardinality=7.30K
-|
-20:AGGREGATE [FINALIZE]
-| output: sum:merge(CASE WHEN (d_day_name = 'Sunday') THEN ss_sales_price ELSE NULL END), sum:merge(CASE WHEN (d_day_name = 'Monday') THEN ss_sales_price ELSE NULL END), sum:merge(CASE WHEN (d_day_name = 'Tuesday') THEN ss_sales_price ELSE NULL END), sum:merge(CASE WHEN (d_day_name = 'Wednesday') THEN ss_sales_price ELSE NULL END), sum:merge(CASE WHEN (d_day_name = 'Thursday') THEN ss_sales_price ELSE NULL END), sum:merge(CASE WHEN (d_day_name = 'Friday') THEN ss_sales_price ELSE NULL E [...]
-| group by: d_week_seq, ss_store_sk
-| row-size=120B cardinality=63.85K
-|
-19:EXCHANGE [HASH(d_week_seq,ss_store_sk)]
-|
-03:AGGREGATE [STREAMING]
-| output: sum(CASE WHEN (d_day_name = 'Sunday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Monday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Tuesday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Wednesday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Thursday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Friday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Sa [...]
-| group by: d_week_seq, ss_store_sk
-| row-size=120B cardinality=63.85K
-|
-02:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_sold_date_sk = d_date_sk
-| runtime filters: RF008 <- d_date_sk
-| row-size=39B cardinality=2.88M
-|
-|--18:EXCHANGE [BROADCAST]
-| |
-| 01:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| runtime filters: RF000 -> tpcds.date_dim.d_week_seq, RF006 -> tpcds.date_dim.d_week_seq
-| row-size=27B cardinality=73.05K
-|
-00:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF004 -> tpcds.store_sales.ss_store_sk, RF008 -> ss_sold_date_sk
- row-size=12B cardinality=2.88M
----- PARALLELPLANS
-Max Per-Host Resource Reservation: Memory=159.52MB Threads=25
-Per-Host Resource Estimates: Memory=356MB
-PLAN-ROOT SINK
-|
-30:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: s_store_name1 ASC, s_store_id1 ASC, d_week_seq1 ASC
-| limit: 100
-|
-17:TOP-N [LIMIT=100]
-| order by: s_store_name1 ASC, s_store_id1 ASC, d_week_seq1 ASC
-| row-size=272B cardinality=100
-|
-16:HASH JOIN [INNER JOIN, PARTITIONED]
-| hash predicates: d_week_seq = d_week_seq - 52, s_store_id = s_store_id
-| row-size=336B cardinality=419.05M
-|
-|--JOIN BUILD
-| | join-table-id=00 plan-id=01 cohort-id=01
-| | build expressions: d_week_seq - 52, s_store_id
-| | runtime filters: RF000 <- d_week_seq - 52, RF001 <- s_store_id
-| |
-| 29:EXCHANGE [HASH(d_week_seq - 52,s_store_id)]
-| |
-| 15:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_store_sk = s_store_sk
-| | row-size=160B cardinality=50.14K
-| |
-| |--JOIN BUILD
-| | | join-table-id=01 plan-id=02 cohort-id=02
-| | | build expressions: s_store_sk
-| | | runtime filters: RF010 <- s_store_sk
-| | |
-| | 27:EXCHANGE [BROADCAST]
-| | |
-| | 12:SCAN HDFS [tpcds.store]
-| | HDFS partitions=1/1 files=1 size=3.08KB
-| | row-size=32B cardinality=12
-| |
-| 14:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: d_week_seq = d.d_week_seq
-| | row-size=128B cardinality=50.14K
-| |
-| |--JOIN BUILD
-| | | join-table-id=02 plan-id=03 cohort-id=02
-| | | build expressions: d.d_week_seq
-| | | runtime filters: RF012 <- d.d_week_seq
-| | |
-| | 26:EXCHANGE [BROADCAST]
-| | |
-| | 13:SCAN HDFS [tpcds.date_dim d]
-| | HDFS partitions=1/1 files=1 size=9.84MB
-| | predicates: d_month_seq <= 1208, d_month_seq >= 1197
-| | row-size=8B cardinality=7.30K
-| |
-| 25:AGGREGATE [FINALIZE]
-| | output: sum:merge(CASE WHEN (d_day_name = 'Sunday') THEN ss_sales_price ELSE NULL END), sum:merge(CASE WHEN (d_day_name = 'Monday') THEN ss_sales_price ELSE NULL END), sum:merge(CASE WHEN (d_day_name = 'Tuesday') THEN ss_sales_price ELSE NULL END), sum:merge(CASE WHEN (d_day_name = 'Wednesday') THEN ss_sales_price ELSE NULL END), sum:merge(CASE WHEN (d_day_name = 'Thursday') THEN ss_sales_price ELSE NULL END), sum:merge(CASE WHEN (d_day_name = 'Friday') THEN ss_sales_price ELSE NUL [...]
-| | group by: d_week_seq, ss_store_sk
-| | row-size=120B cardinality=63.85K
-| |
-| 24:EXCHANGE [HASH(d_week_seq,ss_store_sk)]
-| |
-| 11:AGGREGATE [STREAMING]
-| | output: sum(CASE WHEN (d_day_name = 'Sunday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Monday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Tuesday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Wednesday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Thursday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Friday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = [...]
-| | group by: d_week_seq, ss_store_sk
-| | row-size=120B cardinality=63.85K
-| |
-| 10:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_sold_date_sk = d_date_sk
-| | row-size=39B cardinality=2.88M
-| |
-| |--JOIN BUILD
-| | | join-table-id=03 plan-id=04 cohort-id=02
-| | | build expressions: d_date_sk
-| | | runtime filters: RF014 <- d_date_sk
-| | |
-| | 23:EXCHANGE [BROADCAST]
-| | |
-| | 09:SCAN HDFS [tpcds.date_dim]
-| | HDFS partitions=1/1 files=1 size=9.84MB
-| | runtime filters: RF012 -> tpcds.date_dim.d_week_seq
-| | row-size=27B cardinality=73.05K
-| |
-| 08:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| runtime filters: RF010 -> tpcds.store_sales.ss_store_sk, RF014 -> ss_sold_date_sk
-| row-size=12B cardinality=2.88M
-|
-28:EXCHANGE [HASH(d_week_seq,s_store_id)]
-|
-07:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_store_sk = s_store_sk
-| row-size=176B cardinality=50.14K
-|
-|--JOIN BUILD
-| | join-table-id=04 plan-id=05 cohort-id=01
-| | build expressions: s_store_sk
-| | runtime filters: RF004 <- s_store_sk
-| |
-| 22:EXCHANGE [BROADCAST]
-| |
-| 04:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| runtime filters: RF001 -> s_store_id
-| row-size=48B cardinality=12
-|
-06:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: d_week_seq = d.d_week_seq
-| row-size=128B cardinality=50.14K
-|
-|--JOIN BUILD
-| | join-table-id=05 plan-id=06 cohort-id=01
-| | build expressions: d.d_week_seq
-| | runtime filters: RF006 <- d.d_week_seq
-| |
-| 21:EXCHANGE [BROADCAST]
-| |
-| 05:SCAN HDFS [tpcds.date_dim d]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: d_month_seq <= 1196, d_month_seq >= 1185
-| runtime filters: RF000 -> d.d_week_seq
-| row-size=8B cardinality=7.30K
-|
-20:AGGREGATE [FINALIZE]
-| output: sum:merge(CASE WHEN (d_day_name = 'Sunday') THEN ss_sales_price ELSE NULL END), sum:merge(CASE WHEN (d_day_name = 'Monday') THEN ss_sales_price ELSE NULL END), sum:merge(CASE WHEN (d_day_name = 'Tuesday') THEN ss_sales_price ELSE NULL END), sum:merge(CASE WHEN (d_day_name = 'Wednesday') THEN ss_sales_price ELSE NULL END), sum:merge(CASE WHEN (d_day_name = 'Thursday') THEN ss_sales_price ELSE NULL END), sum:merge(CASE WHEN (d_day_name = 'Friday') THEN ss_sales_price ELSE NULL E [...]
-| group by: d_week_seq, ss_store_sk
-| row-size=120B cardinality=63.85K
-|
-19:EXCHANGE [HASH(d_week_seq,ss_store_sk)]
-|
-03:AGGREGATE [STREAMING]
-| output: sum(CASE WHEN (d_day_name = 'Sunday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Monday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Tuesday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Wednesday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Thursday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Friday') THEN ss_sales_price ELSE NULL END), sum(CASE WHEN (d_day_name = 'Sa [...]
-| group by: d_week_seq, ss_store_sk
-| row-size=120B cardinality=63.85K
-|
-02:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_sold_date_sk = d_date_sk
-| row-size=39B cardinality=2.88M
-|
-|--JOIN BUILD
-| | join-table-id=06 plan-id=07 cohort-id=01
-| | build expressions: d_date_sk
-| | runtime filters: RF008 <- d_date_sk
-| |
-| 18:EXCHANGE [BROADCAST]
-| |
-| 01:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| runtime filters: RF000 -> tpcds.date_dim.d_week_seq, RF006 -> tpcds.date_dim.d_week_seq
-| row-size=27B cardinality=73.05K
-|
-00:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF004 -> tpcds.store_sales.ss_store_sk, RF008 -> ss_sold_date_sk
- row-size=12B cardinality=2.88M
-====
-# TPCDS-Q63
-select
- *
-from
- (select
- i_manager_id,
- sum(ss_sales_price) sum_sales,
- avg(sum(ss_sales_price)) over (partition by i_manager_id) avg_monthly_sales
- from
- item,
- store_sales,
- date_dim,
- store
- where
- ss_item_sk = i_item_sk
- and ss_sold_date_sk = d_date_sk
- and ss_store_sk = s_store_sk
- and d_month_seq in (1212, 1212 + 1, 1212 + 2, 1212 + 3, 1212 + 4, 1212 + 5, 1212 + 6, 1212 + 7, 1212 + 8, 1212 + 9, 1212 + 10, 1212 + 11)
- and ((i_category in ('Books', 'Children', 'Electronics')
- and i_class in ('personal', 'portable', 'refernece', 'self-help')
- and i_brand in ('scholaramalgamalg #14', 'scholaramalgamalg #7', 'exportiunivamalg #9', 'scholaramalgamalg #9'))
- or (i_category in ('Women', 'Music', 'Men')
- and i_class in ('accessories', 'classical', 'fragrances', 'pants')
- and i_brand in ('amalgimporto #1', 'edu packscholar #1', 'exportiimporto #1', 'importoamalg #1')))
- and ss_sold_date_sk between 2451911 and 2452275 -- partition key filter
- group by
- i_manager_id,
- d_moy
- ) tmp1
-where
-case when avg_monthly_sales > 0 then abs (sum_sales - avg_monthly_sales) / avg_monthly_sales else null end > 0.1
-order by
- i_manager_id,
- avg_monthly_sales,
- sum_sales
-limit 100
----- PLAN
-Max Per-Host Resource Reservation: Memory=29.32MB Threads=5
-Per-Host Resource Estimates: Memory=253MB
-PLAN-ROOT SINK
-|
-11:TOP-N [LIMIT=100]
-| order by: i_manager_id ASC, avg_monthly_sales ASC, sum_sales ASC
-| row-size=36B cardinality=1
-|
-10:SELECT
-| predicates: CASE WHEN avg(sum(ss_sales_price)) > 0 THEN abs(sum(ss_sales_price) - avg(sum(ss_sales_price))) / avg(sum(ss_sales_price)) ELSE NULL END > 0.1
-| row-size=40B cardinality=1
-|
-09:ANALYTIC
-| functions: avg(sum(ss_sales_price))
-| partition by: i_manager_id
-| row-size=40B cardinality=6
-|
-08:SORT
-| order by: i_manager_id ASC NULLS LAST
-| row-size=24B cardinality=6
-|
-07:AGGREGATE [FINALIZE]
-| output: sum(ss_sales_price)
-| group by: i_manager_id, d_moy
-| row-size=24B cardinality=6
-|
-06:HASH JOIN [INNER JOIN]
-| hash predicates: ss_store_sk = s_store_sk
-| runtime filters: RF000 <- s_store_sk
-| row-size=114B cardinality=6
-|
-|--03:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| row-size=4B cardinality=12
-|
-05:HASH JOIN [INNER JOIN]
-| hash predicates: ss_sold_date_sk = d_date_sk
-| runtime filters: RF002 <- d_date_sk
-| row-size=110B cardinality=6
-|
-|--02:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: tpcds.date_dim.d_date_sk <= 2452275, tpcds.date_dim.d_date_sk >= 2451911, d_month_seq IN (1212, 1213, 1214, 1215, 1216, 1217, 1218, 1219, 1220, 1221, 1222, 1223)
-| row-size=12B cardinality=114
-|
-04:HASH JOIN [INNER JOIN]
-| hash predicates: ss_item_sk = i_item_sk
-| runtime filters: RF004 <- i_item_sk
-| row-size=98B cardinality=92
-|
-|--00:SCAN HDFS [tpcds.item]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| predicates: ((i_category IN ('Books', 'Children', 'Electronics') AND i_class IN ('personal', 'portable', 'refernece', 'self-help') AND i_brand IN ('scholaramalgamalg #14', 'scholaramalgamalg #7', 'exportiunivamalg #9', 'scholaramalgamalg #9')) OR (i_category IN ('Women', 'Music', 'Men') AND i_class IN ('accessories', 'classical', 'fragrances', 'pants') AND i_brand IN ('amalgimporto #1', 'edu packscholar #1', 'exportiimporto #1', 'importoamalg #1')))
-| row-size=78B cardinality=3
-|
-01:SCAN HDFS [tpcds.store_sales]
- partition predicates: ss_sold_date_sk >= 2451911, ss_sold_date_sk <= 2452275
- HDFS partitions=364/1824 files=364 size=66.85MB
- runtime filters: RF000 -> ss_store_sk, RF002 -> ss_sold_date_sk, RF004 -> ss_item_sk
- row-size=20B cardinality=546.31K
----- DISTRIBUTEDPLAN
-Max Per-Host Resource Reservation: Memory=39.26MB Threads=10
-Per-Host Resource Estimates: Memory=279MB
-PLAN-ROOT SINK
-|
-17:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: i_manager_id ASC, avg_monthly_sales ASC, sum_sales ASC
-| limit: 100
-|
-11:TOP-N [LIMIT=100]
-| order by: i_manager_id ASC, avg_monthly_sales ASC, sum_sales ASC
-| row-size=36B cardinality=1
-|
-10:SELECT
-| predicates: CASE WHEN avg(sum(ss_sales_price)) > 0 THEN abs(sum(ss_sales_price) - avg(sum(ss_sales_price))) / avg(sum(ss_sales_price)) ELSE NULL END > 0.1
-| row-size=40B cardinality=1
-|
-09:ANALYTIC
-| functions: avg(sum(ss_sales_price))
-| partition by: i_manager_id
-| row-size=40B cardinality=6
-|
-08:SORT
-| order by: i_manager_id ASC NULLS LAST
-| row-size=24B cardinality=6
-|
-16:AGGREGATE [FINALIZE]
-| output: sum:merge(ss_sales_price)
-| group by: i_manager_id, d_moy
-| row-size=24B cardinality=6
-|
-15:EXCHANGE [HASH(i_manager_id)]
-|
-07:AGGREGATE [STREAMING]
-| output: sum(ss_sales_price)
-| group by: i_manager_id, d_moy
-| row-size=24B cardinality=6
-|
-06:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_store_sk = s_store_sk
-| runtime filters: RF000 <- s_store_sk
-| row-size=114B cardinality=6
-|
-|--14:EXCHANGE [BROADCAST]
-| |
-| 03:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| row-size=4B cardinality=12
-|
-05:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_sold_date_sk = d_date_sk
-| runtime filters: RF002 <- d_date_sk
-| row-size=110B cardinality=6
-|
-|--13:EXCHANGE [BROADCAST]
-| |
-| 02:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: tpcds.date_dim.d_date_sk <= 2452275, tpcds.date_dim.d_date_sk >= 2451911, d_month_seq IN (1212, 1213, 1214, 1215, 1216, 1217, 1218, 1219, 1220, 1221, 1222, 1223)
-| row-size=12B cardinality=114
-|
-04:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_item_sk = i_item_sk
-| runtime filters: RF004 <- i_item_sk
-| row-size=98B cardinality=92
-|
-|--12:EXCHANGE [BROADCAST]
-| |
-| 00:SCAN HDFS [tpcds.item]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| predicates: ((i_category IN ('Books', 'Children', 'Electronics') AND i_class IN ('personal', 'portable', 'refernece', 'self-help') AND i_brand IN ('scholaramalgamalg #14', 'scholaramalgamalg #7', 'exportiunivamalg #9', 'scholaramalgamalg #9')) OR (i_category IN ('Women', 'Music', 'Men') AND i_class IN ('accessories', 'classical', 'fragrances', 'pants') AND i_brand IN ('amalgimporto #1', 'edu packscholar #1', 'exportiimporto #1', 'importoamalg #1')))
-| row-size=78B cardinality=3
-|
-01:SCAN HDFS [tpcds.store_sales]
- partition predicates: ss_sold_date_sk >= 2451911, ss_sold_date_sk <= 2452275
- HDFS partitions=364/1824 files=364 size=66.85MB
- runtime filters: RF000 -> ss_store_sk, RF002 -> ss_sold_date_sk, RF004 -> ss_item_sk
- row-size=20B cardinality=546.31K
----- PARALLELPLANS
-Max Per-Host Resource Reservation: Memory=62.51MB Threads=11
-Per-Host Resource Estimates: Memory=166MB
-PLAN-ROOT SINK
-|
-17:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: i_manager_id ASC, avg_monthly_sales ASC, sum_sales ASC
-| limit: 100
-|
-11:TOP-N [LIMIT=100]
-| order by: i_manager_id ASC, avg_monthly_sales ASC, sum_sales ASC
-| row-size=36B cardinality=1
-|
-10:SELECT
-| predicates: CASE WHEN avg(sum(ss_sales_price)) > 0 THEN abs(sum(ss_sales_price) - avg(sum(ss_sales_price))) / avg(sum(ss_sales_price)) ELSE NULL END > 0.1
-| row-size=40B cardinality=1
-|
-09:ANALYTIC
-| functions: avg(sum(ss_sales_price))
-| partition by: i_manager_id
-| row-size=40B cardinality=6
-|
-08:SORT
-| order by: i_manager_id ASC NULLS LAST
-| row-size=24B cardinality=6
-|
-16:AGGREGATE [FINALIZE]
-| output: sum:merge(ss_sales_price)
-| group by: i_manager_id, d_moy
-| row-size=24B cardinality=6
-|
-15:EXCHANGE [HASH(i_manager_id)]
-|
-07:AGGREGATE [STREAMING]
-| output: sum(ss_sales_price)
-| group by: i_manager_id, d_moy
-| row-size=24B cardinality=6
-|
-06:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_store_sk = s_store_sk
-| row-size=114B cardinality=6
-|
-|--JOIN BUILD
-| | join-table-id=00 plan-id=01 cohort-id=01
-| | build expressions: s_store_sk
-| | runtime filters: RF000 <- s_store_sk
-| |
-| 14:EXCHANGE [BROADCAST]
-| |
-| 03:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| row-size=4B cardinality=12
-|
-05:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_sold_date_sk = d_date_sk
-| row-size=110B cardinality=6
-|
-|--JOIN BUILD
-| | join-table-id=01 plan-id=02 cohort-id=01
-| | build expressions: d_date_sk
-| | runtime filters: RF002 <- d_date_sk
-| |
-| 13:EXCHANGE [BROADCAST]
-| |
-| 02:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: tpcds.date_dim.d_date_sk <= 2452275, tpcds.date_dim.d_date_sk >= 2451911, d_month_seq IN (1212, 1213, 1214, 1215, 1216, 1217, 1218, 1219, 1220, 1221, 1222, 1223)
-| row-size=12B cardinality=114
-|
-04:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_item_sk = i_item_sk
-| row-size=98B cardinality=92
-|
-|--JOIN BUILD
-| | join-table-id=02 plan-id=03 cohort-id=01
-| | build expressions: i_item_sk
-| | runtime filters: RF004 <- i_item_sk
-| |
-| 12:EXCHANGE [BROADCAST]
-| |
-| 00:SCAN HDFS [tpcds.item]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| predicates: ((i_category IN ('Books', 'Children', 'Electronics') AND i_class IN ('personal', 'portable', 'refernece', 'self-help') AND i_brand IN ('scholaramalgamalg #14', 'scholaramalgamalg #7', 'exportiunivamalg #9', 'scholaramalgamalg #9')) OR (i_category IN ('Women', 'Music', 'Men') AND i_class IN ('accessories', 'classical', 'fragrances', 'pants') AND i_brand IN ('amalgimporto #1', 'edu packscholar #1', 'exportiimporto #1', 'importoamalg #1')))
-| row-size=78B cardinality=3
-|
-01:SCAN HDFS [tpcds.store_sales]
- partition predicates: ss_sold_date_sk >= 2451911, ss_sold_date_sk <= 2452275
- HDFS partitions=364/1824 files=364 size=66.85MB
- runtime filters: RF000 -> ss_store_sk, RF002 -> ss_sold_date_sk, RF004 -> ss_item_sk
- row-size=20B cardinality=546.31K
-====
-# TPCDS-Q65
-select
- s_store_name,
- i_item_desc,
- sc.revenue,
- i_current_price,
- i_wholesale_cost,
- i_brand
-from
- store,
- item,
- (select
- ss_store_sk,
- avg(revenue) as ave
- from
- (select
- ss_store_sk,
- ss_item_sk,
- sum(ss_sales_price) as revenue
- from
- store_sales,
- date_dim
- where
- ss_sold_date_sk = d_date_sk
- and d_month_seq between 1212 and 1212 + 11
- group by
- ss_store_sk,
- ss_item_sk
- ) sa
- group by
- ss_store_sk
- ) sb,
- (select
- ss_store_sk,
- ss_item_sk,
- sum(ss_sales_price) as revenue
- from
- store_sales,
- date_dim
- where
- ss_sold_date_sk = d_date_sk
- and d_month_seq between 1212 and 1212 + 11
- group by
- ss_store_sk,
- ss_item_sk
- ) sc
-where
- sb.ss_store_sk = sc.ss_store_sk
- and sc.revenue <= 0.1 * sb.ave
- and s_store_sk = sc.ss_store_sk
- and i_item_sk = sc.ss_item_sk
-order by
- s_store_name,
- i_item_desc
-limit 100
----- PLAN
-Max Per-Host Resource Reservation: Memory=55.57MB Threads=7
-Per-Host Resource Estimates: Memory=432MB
-PLAN-ROOT SINK
-|
-14:TOP-N [LIMIT=100]
-| order by: s_store_name ASC, i_item_desc ASC
-| row-size=181B cardinality=100
-|
-13:HASH JOIN [INNER JOIN]
-| hash predicates: ss_store_sk = ss_store_sk
-| other predicates: sum(ss_sales_price) <= 0.1 * avg(revenue)
-| runtime filters: RF000 <- ss_store_sk
-| row-size=225B cardinality=647.10K
-|
-|--06:AGGREGATE [FINALIZE]
-| | output: avg(sum(ss_sales_price))
-| | group by: ss_store_sk
-| | row-size=20B cardinality=6
-| |
-| 05:AGGREGATE [FINALIZE]
-| | output: sum(ss_sales_price)
-| | group by: ss_store_sk, ss_item_sk
-| | row-size=28B cardinality=107.85K
-| |
-| 04:HASH JOIN [INNER JOIN]
-| | hash predicates: ss_sold_date_sk = d_date_sk
-| | runtime filters: RF008 <- d_date_sk
-| | row-size=28B cardinality=2.88M
-| |
-| |--03:SCAN HDFS [tpcds.date_dim]
-| | HDFS partitions=1/1 files=1 size=9.84MB
-| | predicates: d_month_seq <= 1223, d_month_seq >= 1212
-| | row-size=8B cardinality=7.30K
-| |
-| 02:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| runtime filters: RF008 -> ss_sold_date_sk
-| row-size=20B cardinality=2.88M
-|
-12:HASH JOIN [INNER JOIN]
-| hash predicates: ss_item_sk = i_item_sk
-| runtime filters: RF002 <- i_item_sk
-| row-size=205B cardinality=107.85K
-|
-|--01:SCAN HDFS [tpcds.item]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| row-size=157B cardinality=18.00K
-|
-11:HASH JOIN [INNER JOIN]
-| hash predicates: ss_store_sk = s_store_sk
-| runtime filters: RF004 <- s_store_sk
-| row-size=48B cardinality=107.85K
-|
-|--00:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| runtime filters: RF000 -> tpcds.store.s_store_sk
-| row-size=20B cardinality=12
-|
-10:AGGREGATE [FINALIZE]
-| output: sum(ss_sales_price)
-| group by: ss_store_sk, ss_item_sk
-| row-size=28B cardinality=107.85K
-|
-09:HASH JOIN [INNER JOIN]
-| hash predicates: ss_sold_date_sk = d_date_sk
-| runtime filters: RF006 <- d_date_sk
-| row-size=28B cardinality=2.88M
-|
-|--08:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: d_month_seq <= 1223, d_month_seq >= 1212
-| row-size=8B cardinality=7.30K
-|
-07:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF000 -> tpcds.store_sales.ss_store_sk, RF002 -> tpcds.store_sales.ss_item_sk, RF004 -> tpcds.store_sales.ss_store_sk, RF006 -> ss_sold_date_sk
- row-size=20B cardinality=2.88M
----- DISTRIBUTEDPLAN
-Max Per-Host Resource Reservation: Memory=76.51MB Threads=17
-Per-Host Resource Estimates: Memory=502MB
-PLAN-ROOT SINK
-|
-27:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: s_store_name ASC, i_item_desc ASC
-| limit: 100
-|
-14:TOP-N [LIMIT=100]
-| order by: s_store_name ASC, i_item_desc ASC
-| row-size=181B cardinality=100
-|
-13:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_store_sk = ss_store_sk
-| other predicates: sum(ss_sales_price) <= 0.1 * avg(revenue)
-| runtime filters: RF000 <- ss_store_sk
-| row-size=225B cardinality=647.10K
-|
-|--26:EXCHANGE [BROADCAST]
-| |
-| 25:AGGREGATE [FINALIZE]
-| | output: avg:merge(revenue)
-| | group by: ss_store_sk
-| | row-size=20B cardinality=6
-| |
-| 24:EXCHANGE [HASH(ss_store_sk)]
-| |
-| 06:AGGREGATE [STREAMING]
-| | output: avg(sum(ss_sales_price))
-| | group by: ss_store_sk
-| | row-size=20B cardinality=6
-| |
-| 23:AGGREGATE [FINALIZE]
-| | output: sum:merge(ss_sales_price)
-| | group by: ss_store_sk, ss_item_sk
-| | row-size=28B cardinality=107.85K
-| |
-| 22:EXCHANGE [HASH(ss_store_sk,ss_item_sk)]
-| |
-| 05:AGGREGATE [STREAMING]
-| | output: sum(ss_sales_price)
-| | group by: ss_store_sk, ss_item_sk
-| | row-size=28B cardinality=107.85K
-| |
-| 04:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_sold_date_sk = d_date_sk
-| | runtime filters: RF008 <- d_date_sk
-| | row-size=28B cardinality=2.88M
-| |
-| |--21:EXCHANGE [BROADCAST]
-| | |
-| | 03:SCAN HDFS [tpcds.date_dim]
-| | HDFS partitions=1/1 files=1 size=9.84MB
-| | predicates: d_month_seq <= 1223, d_month_seq >= 1212
-| | row-size=8B cardinality=7.30K
-| |
-| 02:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| runtime filters: RF008 -> ss_sold_date_sk
-| row-size=20B cardinality=2.88M
-|
-12:HASH JOIN [INNER JOIN, PARTITIONED]
-| hash predicates: ss_item_sk = i_item_sk
-| runtime filters: RF002 <- i_item_sk
-| row-size=205B cardinality=107.85K
-|
-|--20:EXCHANGE [HASH(i_item_sk)]
-| |
-| 01:SCAN HDFS [tpcds.item]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| row-size=157B cardinality=18.00K
-|
-19:EXCHANGE [HASH(ss_item_sk)]
-|
-11:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_store_sk = s_store_sk
-| runtime filters: RF004 <- s_store_sk
-| row-size=48B cardinality=107.85K
-|
-|--18:EXCHANGE [BROADCAST]
-| |
-| 00:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| runtime filters: RF000 -> tpcds.store.s_store_sk
-| row-size=20B cardinality=12
-|
-17:AGGREGATE [FINALIZE]
-| output: sum:merge(ss_sales_price)
-| group by: ss_store_sk, ss_item_sk
-| row-size=28B cardinality=107.85K
-|
-16:EXCHANGE [HASH(ss_store_sk,ss_item_sk)]
-|
-10:AGGREGATE [STREAMING]
-| output: sum(ss_sales_price)
-| group by: ss_store_sk, ss_item_sk
-| row-size=28B cardinality=107.85K
-|
-09:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_sold_date_sk = d_date_sk
-| runtime filters: RF006 <- d_date_sk
-| row-size=28B cardinality=2.88M
-|
-|--15:EXCHANGE [BROADCAST]
-| |
-| 08:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: d_month_seq <= 1223, d_month_seq >= 1212
-| row-size=8B cardinality=7.30K
-|
-07:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF000 -> tpcds.store_sales.ss_store_sk, RF002 -> tpcds.store_sales.ss_item_sk, RF004 -> tpcds.store_sales.ss_store_sk, RF006 -> ss_sold_date_sk
- row-size=20B cardinality=2.88M
----- PARALLELPLANS
-Max Per-Host Resource Reservation: Memory=123.01MB Threads=23
-Per-Host Resource Estimates: Memory=310MB
-PLAN-ROOT SINK
-|
-27:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: s_store_name ASC, i_item_desc ASC
-| limit: 100
-|
-14:TOP-N [LIMIT=100]
-| order by: s_store_name ASC, i_item_desc ASC
-| row-size=181B cardinality=100
-|
-13:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_store_sk = ss_store_sk
-| other predicates: sum(ss_sales_price) <= 0.1 * avg(revenue)
-| row-size=225B cardinality=647.10K
-|
-|--JOIN BUILD
-| | join-table-id=00 plan-id=01 cohort-id=01
-| | build expressions: ss_store_sk
-| | runtime filters: RF000 <- ss_store_sk
-| |
-| 26:EXCHANGE [BROADCAST]
-| |
-| 25:AGGREGATE [FINALIZE]
-| | output: avg:merge(revenue)
-| | group by: ss_store_sk
-| | row-size=20B cardinality=6
-| |
-| 24:EXCHANGE [HASH(ss_store_sk)]
-| |
-| 06:AGGREGATE [STREAMING]
-| | output: avg(sum(ss_sales_price))
-| | group by: ss_store_sk
-| | row-size=20B cardinality=6
-| |
-| 23:AGGREGATE [FINALIZE]
-| | output: sum:merge(ss_sales_price)
-| | group by: ss_store_sk, ss_item_sk
-| | row-size=28B cardinality=107.85K
-| |
-| 22:EXCHANGE [HASH(ss_store_sk,ss_item_sk)]
-| |
-| 05:AGGREGATE [STREAMING]
-| | output: sum(ss_sales_price)
-| | group by: ss_store_sk, ss_item_sk
-| | row-size=28B cardinality=107.85K
-| |
-| 04:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_sold_date_sk = d_date_sk
-| | row-size=28B cardinality=2.88M
-| |
-| |--JOIN BUILD
-| | | join-table-id=01 plan-id=02 cohort-id=02
-| | | build expressions: d_date_sk
-| | | runtime filters: RF008 <- d_date_sk
-| | |
-| | 21:EXCHANGE [BROADCAST]
-| | |
-| | 03:SCAN HDFS [tpcds.date_dim]
-| | HDFS partitions=1/1 files=1 size=9.84MB
-| | predicates: d_month_seq <= 1223, d_month_seq >= 1212
-| | row-size=8B cardinality=7.30K
-| |
-| 02:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| runtime filters: RF008 -> ss_sold_date_sk
-| row-size=20B cardinality=2.88M
-|
-12:HASH JOIN [INNER JOIN, PARTITIONED]
-| hash predicates: ss_item_sk = i_item_sk
-| row-size=205B cardinality=107.85K
-|
-|--JOIN BUILD
-| | join-table-id=02 plan-id=03 cohort-id=01
-| | build expressions: i_item_sk
-| | runtime filters: RF002 <- i_item_sk
-| |
-| 20:EXCHANGE [HASH(i_item_sk)]
-| |
-| 01:SCAN HDFS [tpcds.item]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| row-size=157B cardinality=18.00K
-|
-19:EXCHANGE [HASH(ss_item_sk)]
-|
-11:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_store_sk = s_store_sk
-| row-size=48B cardinality=107.85K
-|
-|--JOIN BUILD
-| | join-table-id=03 plan-id=04 cohort-id=01
-| | build expressions: s_store_sk
-| | runtime filters: RF004 <- s_store_sk
-| |
-| 18:EXCHANGE [BROADCAST]
-| |
-| 00:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| runtime filters: RF000 -> tpcds.store.s_store_sk
-| row-size=20B cardinality=12
-|
-17:AGGREGATE [FINALIZE]
-| output: sum:merge(ss_sales_price)
-| group by: ss_store_sk, ss_item_sk
-| row-size=28B cardinality=107.85K
-|
-16:EXCHANGE [HASH(ss_store_sk,ss_item_sk)]
-|
-10:AGGREGATE [STREAMING]
-| output: sum(ss_sales_price)
-| group by: ss_store_sk, ss_item_sk
-| row-size=28B cardinality=107.85K
-|
-09:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_sold_date_sk = d_date_sk
-| row-size=28B cardinality=2.88M
-|
-|--JOIN BUILD
-| | join-table-id=04 plan-id=05 cohort-id=01
-| | build expressions: d_date_sk
-| | runtime filters: RF006 <- d_date_sk
-| |
-| 15:EXCHANGE [BROADCAST]
-| |
-| 08:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: d_month_seq <= 1223, d_month_seq >= 1212
-| row-size=8B cardinality=7.30K
-|
-07:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF000 -> tpcds.store_sales.ss_store_sk, RF002 -> tpcds.store_sales.ss_item_sk, RF004 -> tpcds.store_sales.ss_store_sk, RF006 -> ss_sold_date_sk
- row-size=20B cardinality=2.88M
-====
-# TPCDS-Q68
-select
- c_last_name,
- c_first_name,
- ca_city,
- bought_city,
- ss_ticket_number,
- extended_price,
- extended_tax,
- list_price
-from
- (select
- ss_ticket_number,
- ss_customer_sk,
- ca_city bought_city,
- sum(ss_ext_sales_price) extended_price,
- sum(ss_ext_list_price) list_price,
- sum(ss_ext_tax) extended_tax
- from
- store_sales,
- date_dim,
- store,
- household_demographics,
- customer_address
- where
- store_sales.ss_sold_date_sk = date_dim.d_date_sk
- and store_sales.ss_store_sk = store.s_store_sk
- and store_sales.ss_hdemo_sk = household_demographics.hd_demo_sk
- and store_sales.ss_addr_sk = customer_address.ca_address_sk
- and (household_demographics.hd_dep_count = 5
- or household_demographics.hd_vehicle_count = 3)
- and store.s_city in ('Midway', 'Fairview')
- and d_date between '1999-01-01' and '1999-03-31'
- group by
- ss_ticket_number,
- ss_customer_sk,
- ss_addr_sk,
- ca_city
- ) dn,
- customer,
- customer_address current_addr
-where
- ss_customer_sk = c_customer_sk
- and customer.c_current_addr_sk = current_addr.ca_address_sk
- and current_addr.ca_city <> bought_city
-order by
- c_last_name,
- ss_ticket_number
-limit 100
----- PLAN
-Max Per-Host Resource Reservation: Memory=84.06MB Threads=8
-Per-Host Resource Estimates: Memory=378MB
-PLAN-ROOT SINK
-|
-14:TOP-N [LIMIT=100]
-| order by: c_last_name ASC, ss_ticket_number ASC
-| row-size=134B cardinality=100
-|
-13:HASH JOIN [INNER JOIN]
-| hash predicates: customer.c_current_addr_sk = current_addr.ca_address_sk
-| other predicates: current_addr.ca_city != ca_city
-| runtime filters: RF000 <- current_addr.ca_address_sk
-| row-size=154B cardinality=702.92K
-|
-|--11:SCAN HDFS [tpcds.customer_address current_addr]
-| HDFS partitions=1/1 files=1 size=5.25MB
-| row-size=25B cardinality=50.00K
-|
-12:HASH JOIN [INNER JOIN]
-| hash predicates: ss_customer_sk = c_customer_sk
-| runtime filters: RF002 <- c_customer_sk
-| row-size=129B cardinality=702.92K
-|
-|--10:SCAN HDFS [tpcds.customer]
-| HDFS partitions=1/1 files=1 size=12.60MB
-| runtime filters: RF000 -> customer.c_current_addr_sk
-| row-size=44B cardinality=100.00K
-|
-09:AGGREGATE [FINALIZE]
-| output: sum(ss_ext_sales_price), sum(ss_ext_list_price), sum(ss_ext_tax)
-| group by: ss_ticket_number, ss_customer_sk, ss_addr_sk, ca_city
-| row-size=85B cardinality=702.92K
-|
-08:HASH JOIN [INNER JOIN]
-| hash predicates: store_sales.ss_addr_sk = customer_address.ca_address_sk
-| runtime filters: RF004 <- customer_address.ca_address_sk
-| row-size=125B cardinality=702.92K
-|
-|--04:SCAN HDFS [tpcds.customer_address]
-| HDFS partitions=1/1 files=1 size=5.25MB
-| row-size=25B cardinality=50.00K
-|
-07:HASH JOIN [INNER JOIN]
-| hash predicates: store_sales.ss_store_sk = store.s_store_sk
-| runtime filters: RF006 <- store.s_store_sk
-| row-size=101B cardinality=702.92K
-|
-|--02:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| predicates: store.s_city IN ('Midway', 'Fairview')
-| row-size=23B cardinality=12
-|
-06:HASH JOIN [INNER JOIN]
-| hash predicates: store_sales.ss_sold_date_sk = date_dim.d_date_sk
-| runtime filters: RF008 <- date_dim.d_date_sk
-| row-size=78B cardinality=702.92K
-|
-|--01:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: d_date <= '1999-03-31', d_date >= '1999-01-01'
-| row-size=26B cardinality=7.30K
-|
-05:HASH JOIN [INNER JOIN]
-| hash predicates: store_sales.ss_hdemo_sk = household_demographics.hd_demo_sk
-| runtime filters: RF010 <- household_demographics.hd_demo_sk
-| row-size=52B cardinality=702.92K
-|
-|--03:SCAN HDFS [tpcds.household_demographics]
-| HDFS partitions=1/1 files=1 size=148.10KB
-| predicates: (household_demographics.hd_dep_count = 5 OR household_demographics.hd_vehicle_count = 3)
-| row-size=12B cardinality=1.80K
-|
-00:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF002 -> tpcds.store_sales.ss_customer_sk, RF004 -> store_sales.ss_addr_sk, RF006 -> store_sales.ss_store_sk, RF008 -> store_sales.ss_sold_date_sk, RF010 -> store_sales.ss_hdemo_sk
- row-size=40B cardinality=2.88M
----- DISTRIBUTEDPLAN
-Max Per-Host Resource Reservation: Memory=136.32MB Threads=16
-Per-Host Resource Estimates: Memory=465MB
-PLAN-ROOT SINK
-|
-23:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: c_last_name ASC, ss_ticket_number ASC
-| limit: 100
-|
-14:TOP-N [LIMIT=100]
-| order by: c_last_name ASC, ss_ticket_number ASC
-| row-size=134B cardinality=100
-|
-13:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: customer.c_current_addr_sk = current_addr.ca_address_sk
-| other predicates: current_addr.ca_city != ca_city
-| runtime filters: RF000 <- current_addr.ca_address_sk
-| row-size=154B cardinality=702.92K
-|
-|--22:EXCHANGE [BROADCAST]
-| |
-| 11:SCAN HDFS [tpcds.customer_address current_addr]
-| HDFS partitions=1/1 files=1 size=5.25MB
-| row-size=25B cardinality=50.00K
-|
-12:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_customer_sk = c_customer_sk
-| runtime filters: RF002 <- c_customer_sk
-| row-size=129B cardinality=702.92K
-|
-|--21:EXCHANGE [BROADCAST]
-| |
-| 10:SCAN HDFS [tpcds.customer]
-| HDFS partitions=1/1 files=1 size=12.60MB
-| runtime filters: RF000 -> customer.c_current_addr_sk
-| row-size=44B cardinality=100.00K
-|
-20:AGGREGATE [FINALIZE]
-| output: sum:merge(ss_ext_sales_price), sum:merge(ss_ext_list_price), sum:merge(ss_ext_tax)
-| group by: ss_ticket_number, ss_customer_sk, ss_addr_sk, ca_city
-| row-size=85B cardinality=702.92K
-|
-19:EXCHANGE [HASH(ss_ticket_number,ss_customer_sk,ss_addr_sk,ca_city)]
-|
-09:AGGREGATE [STREAMING]
-| output: sum(ss_ext_sales_price), sum(ss_ext_list_price), sum(ss_ext_tax)
-| group by: ss_ticket_number, ss_customer_sk, ss_addr_sk, ca_city
-| row-size=85B cardinality=702.92K
-|
-08:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_addr_sk = customer_address.ca_address_sk
-| runtime filters: RF004 <- customer_address.ca_address_sk
-| row-size=125B cardinality=702.92K
-|
-|--18:EXCHANGE [BROADCAST]
-| |
-| 04:SCAN HDFS [tpcds.customer_address]
-| HDFS partitions=1/1 files=1 size=5.25MB
-| row-size=25B cardinality=50.00K
-|
-07:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_store_sk = store.s_store_sk
-| runtime filters: RF006 <- store.s_store_sk
-| row-size=101B cardinality=702.92K
-|
-|--17:EXCHANGE [BROADCAST]
-| |
-| 02:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| predicates: store.s_city IN ('Midway', 'Fairview')
-| row-size=23B cardinality=12
-|
-06:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_sold_date_sk = date_dim.d_date_sk
-| runtime filters: RF008 <- date_dim.d_date_sk
-| row-size=78B cardinality=702.92K
-|
-|--16:EXCHANGE [BROADCAST]
-| |
-| 01:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: d_date <= '1999-03-31', d_date >= '1999-01-01'
-| row-size=26B cardinality=7.30K
-|
-05:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_hdemo_sk = household_demographics.hd_demo_sk
-| runtime filters: RF010 <- household_demographics.hd_demo_sk
-| row-size=52B cardinality=702.92K
-|
-|--15:EXCHANGE [BROADCAST]
-| |
-| 03:SCAN HDFS [tpcds.household_demographics]
-| HDFS partitions=1/1 files=1 size=148.10KB
-| predicates: (household_demographics.hd_dep_count = 5 OR household_demographics.hd_vehicle_count = 3)
-| row-size=12B cardinality=1.80K
-|
-00:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF002 -> tpcds.store_sales.ss_customer_sk, RF004 -> store_sales.ss_addr_sk, RF006 -> store_sales.ss_store_sk, RF008 -> store_sales.ss_sold_date_sk, RF010 -> store_sales.ss_hdemo_sk
- row-size=40B cardinality=2.88M
----- PARALLELPLANS
-Max Per-Host Resource Reservation: Memory=168.38MB Threads=17
-Per-Host Resource Estimates: Memory=292MB
-PLAN-ROOT SINK
-|
-23:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: c_last_name ASC, ss_ticket_number ASC
-| limit: 100
-|
-14:TOP-N [LIMIT=100]
-| order by: c_last_name ASC, ss_ticket_number ASC
-| row-size=134B cardinality=100
-|
-13:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: customer.c_current_addr_sk = current_addr.ca_address_sk
-| other predicates: current_addr.ca_city != ca_city
-| row-size=154B cardinality=702.92K
-|
-|--JOIN BUILD
-| | join-table-id=00 plan-id=01 cohort-id=01
-| | build expressions: current_addr.ca_address_sk
-| | runtime filters: RF000 <- current_addr.ca_address_sk
-| |
-| 22:EXCHANGE [BROADCAST]
-| |
-| 11:SCAN HDFS [tpcds.customer_address current_addr]
-| HDFS partitions=1/1 files=1 size=5.25MB
-| row-size=25B cardinality=50.00K
-|
-12:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_customer_sk = c_customer_sk
-| row-size=129B cardinality=702.92K
-|
-|--JOIN BUILD
-| | join-table-id=01 plan-id=02 cohort-id=01
-| | build expressions: c_customer_sk
-| | runtime filters: RF002 <- c_customer_sk
-| |
-| 21:EXCHANGE [BROADCAST]
-| |
-| 10:SCAN HDFS [tpcds.customer]
-| HDFS partitions=1/1 files=1 size=12.60MB
-| runtime filters: RF000 -> customer.c_current_addr_sk
-| row-size=44B cardinality=100.00K
-|
-20:AGGREGATE [FINALIZE]
-| output: sum:merge(ss_ext_sales_price), sum:merge(ss_ext_list_price), sum:merge(ss_ext_tax)
-| group by: ss_ticket_number, ss_customer_sk, ss_addr_sk, ca_city
-| row-size=85B cardinality=702.92K
-|
-19:EXCHANGE [HASH(ss_ticket_number,ss_customer_sk,ss_addr_sk,ca_city)]
-|
-09:AGGREGATE [STREAMING]
-| output: sum(ss_ext_sales_price), sum(ss_ext_list_price), sum(ss_ext_tax)
-| group by: ss_ticket_number, ss_customer_sk, ss_addr_sk, ca_city
-| row-size=85B cardinality=702.92K
-|
-08:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_addr_sk = customer_address.ca_address_sk
-| row-size=125B cardinality=702.92K
-|
-|--JOIN BUILD
-| | join-table-id=02 plan-id=03 cohort-id=01
-| | build expressions: customer_address.ca_address_sk
-| | runtime filters: RF004 <- customer_address.ca_address_sk
-| |
-| 18:EXCHANGE [BROADCAST]
-| |
-| 04:SCAN HDFS [tpcds.customer_address]
-| HDFS partitions=1/1 files=1 size=5.25MB
-| row-size=25B cardinality=50.00K
-|
-07:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_store_sk = store.s_store_sk
-| row-size=101B cardinality=702.92K
-|
-|--JOIN BUILD
-| | join-table-id=03 plan-id=04 cohort-id=01
-| | build expressions: store.s_store_sk
-| | runtime filters: RF006 <- store.s_store_sk
-| |
-| 17:EXCHANGE [BROADCAST]
-| |
-| 02:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| predicates: store.s_city IN ('Midway', 'Fairview')
-| row-size=23B cardinality=12
-|
-06:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_sold_date_sk = date_dim.d_date_sk
-| row-size=78B cardinality=702.92K
-|
-|--JOIN BUILD
-| | join-table-id=04 plan-id=05 cohort-id=01
-| | build expressions: date_dim.d_date_sk
-| | runtime filters: RF008 <- date_dim.d_date_sk
-| |
-| 16:EXCHANGE [BROADCAST]
-| |
-| 01:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: d_date <= '1999-03-31', d_date >= '1999-01-01'
-| row-size=26B cardinality=7.30K
-|
-05:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_hdemo_sk = household_demographics.hd_demo_sk
-| row-size=52B cardinality=702.92K
-|
-|--JOIN BUILD
-| | join-table-id=05 plan-id=06 cohort-id=01
-| | build expressions: household_demographics.hd_demo_sk
-| | runtime filters: RF010 <- household_demographics.hd_demo_sk
-| |
-| 15:EXCHANGE [BROADCAST]
-| |
-| 03:SCAN HDFS [tpcds.household_demographics]
-| HDFS partitions=1/1 files=1 size=148.10KB
-| predicates: (household_demographics.hd_dep_count = 5 OR household_demographics.hd_vehicle_count = 3)
-| row-size=12B cardinality=1.80K
-|
-00:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF002 -> tpcds.store_sales.ss_customer_sk, RF004 -> store_sales.ss_addr_sk, RF006 -> store_sales.ss_store_sk, RF008 -> store_sales.ss_sold_date_sk, RF010 -> store_sales.ss_hdemo_sk
- row-size=40B cardinality=2.88M
-====
-# TPCDS-Q73
-select
- c_last_name,
- c_first_name,
- c_salutation,
- c_preferred_cust_flag,
- ss_ticket_number,
- cnt
-from
- (select
- ss_ticket_number,
- ss_customer_sk,
- count(*) cnt
- from
- store_sales,
- date_dim,
- store,
- household_demographics
- where
- store_sales.ss_sold_date_sk = date_dim.d_date_sk
- and store_sales.ss_store_sk = store.s_store_sk
- and store_sales.ss_hdemo_sk = household_demographics.hd_demo_sk
- and (household_demographics.hd_buy_potential = '>10000'
- or household_demographics.hd_buy_potential = 'unknown')
- and household_demographics.hd_vehicle_count > 0
- and case when household_demographics.hd_vehicle_count > 0 then household_demographics.hd_dep_count / household_demographics.hd_vehicle_count else null end > 1
- and store.s_county in ('Saginaw County', 'Sumner County', 'Appanoose County', 'Daviess County')
- group by
- ss_ticket_number,
- ss_customer_sk
- ) dj,
- customer
-where
- ss_customer_sk = c_customer_sk
- and cnt between 1 and 5
-order by
- cnt desc
-limit 1000
----- PLAN
-Max Per-Host Resource Reservation: Memory=34.07MB Threads=6
-Per-Host Resource Estimates: Memory=298MB
-PLAN-ROOT SINK
-|
-10:TOP-N [LIMIT=1000]
-| order by: cnt DESC
-| row-size=80B cardinality=1.00K
-|
-09:HASH JOIN [INNER JOIN]
-| hash predicates: c_customer_sk = ss_customer_sk
-| runtime filters: RF000 <- ss_customer_sk
-| row-size=88B cardinality=16.25K
-|
-|--07:AGGREGATE [FINALIZE]
-| | output: count(*)
-| | group by: ss_ticket_number, ss_customer_sk
-| | having: count(*) <= 5, count(*) >= 1
-| | row-size=20B cardinality=16.25K
-| |
-| 06:HASH JOIN [INNER JOIN]
-| | hash predicates: store_sales.ss_store_sk = store.s_store_sk
-| | runtime filters: RF002 <- store.s_store_sk
-| | row-size=93B cardinality=162.45K
-| |
-| |--02:SCAN HDFS [tpcds.store]
-| | HDFS partitions=1/1 files=1 size=3.08KB
-| | predicates: store.s_county IN ('Saginaw County', 'Sumner County', 'Appanoose County', 'Daviess County')
-| | row-size=33B cardinality=12
-| |
-| 05:HASH JOIN [INNER JOIN]
-| | hash predicates: store_sales.ss_sold_date_sk = date_dim.d_date_sk
-| | runtime filters: RF004 <- date_dim.d_date_sk
-| | row-size=60B cardinality=162.45K
-| |
-| |--01:SCAN HDFS [tpcds.date_dim]
-| | HDFS partitions=1/1 files=1 size=9.84MB
-| | row-size=4B cardinality=73.05K
-| |
-| 04:HASH JOIN [INNER JOIN]
-| | hash predicates: store_sales.ss_hdemo_sk = household_demographics.hd_demo_sk
-| | runtime filters: RF006 <- household_demographics.hd_demo_sk
-| | row-size=56B cardinality=162.45K
-| |
-| |--03:SCAN HDFS [tpcds.household_demographics]
-| | HDFS partitions=1/1 files=1 size=148.10KB
-| | predicates: household_demographics.hd_vehicle_count > 0, household_demographics.hd_buy_potential IN ('>10000', 'unknown'), CASE WHEN household_demographics.hd_vehicle_count > 0 THEN household_demographics.hd_dep_count / household_demographics.hd_vehicle_count ELSE NULL END > 1
-| | row-size=32B cardinality=416
-| |
-| 00:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| runtime filters: RF002 -> store_sales.ss_store_sk, RF004 -> store_sales.ss_sold_date_sk, RF006 -> store_sales.ss_hdemo_sk
-| row-size=24B cardinality=2.88M
-|
-08:SCAN HDFS [tpcds.customer]
- HDFS partitions=1/1 files=1 size=12.60MB
- runtime filters: RF000 -> c_customer_sk
- row-size=68B cardinality=100.00K
----- DISTRIBUTEDPLAN
-Max Per-Host Resource Reservation: Memory=49.45MB Threads=13
-Per-Host Resource Estimates: Memory=336MB
-PLAN-ROOT SINK
-|
-18:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: cnt DESC
-| limit: 1000
-|
-10:TOP-N [LIMIT=1000]
-| order by: cnt DESC
-| row-size=80B cardinality=1.00K
-|
-09:HASH JOIN [INNER JOIN, PARTITIONED]
-| hash predicates: ss_customer_sk = c_customer_sk
-| runtime filters: RF000 <- c_customer_sk
-| row-size=88B cardinality=16.25K
-|
-|--17:EXCHANGE [HASH(c_customer_sk)]
-| |
-| 08:SCAN HDFS [tpcds.customer]
-| HDFS partitions=1/1 files=1 size=12.60MB
-| row-size=68B cardinality=100.00K
-|
-16:EXCHANGE [HASH(ss_customer_sk)]
-|
-15:AGGREGATE [FINALIZE]
-| output: count:merge(*)
-| group by: ss_ticket_number, ss_customer_sk
-| having: count(*) <= 5, count(*) >= 1
-| row-size=20B cardinality=16.25K
-|
-14:EXCHANGE [HASH(ss_ticket_number,ss_customer_sk)]
-|
-07:AGGREGATE [STREAMING]
-| output: count(*)
-| group by: ss_ticket_number, ss_customer_sk
-| row-size=20B cardinality=162.45K
-|
-06:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_store_sk = store.s_store_sk
-| runtime filters: RF002 <- store.s_store_sk
-| row-size=93B cardinality=162.45K
-|
-|--13:EXCHANGE [BROADCAST]
-| |
-| 02:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| predicates: store.s_county IN ('Saginaw County', 'Sumner County', 'Appanoose County', 'Daviess County')
-| row-size=33B cardinality=12
-|
-05:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_sold_date_sk = date_dim.d_date_sk
-| runtime filters: RF004 <- date_dim.d_date_sk
-| row-size=60B cardinality=162.45K
-|
-|--12:EXCHANGE [BROADCAST]
-| |
-| 01:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| row-size=4B cardinality=73.05K
-|
-04:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_hdemo_sk = household_demographics.hd_demo_sk
-| runtime filters: RF006 <- household_demographics.hd_demo_sk
-| row-size=56B cardinality=162.45K
-|
-|--11:EXCHANGE [BROADCAST]
-| |
-| 03:SCAN HDFS [tpcds.household_demographics]
-| HDFS partitions=1/1 files=1 size=148.10KB
-| predicates: household_demographics.hd_vehicle_count > 0, household_demographics.hd_buy_potential IN ('>10000', 'unknown'), CASE WHEN household_demographics.hd_vehicle_count > 0 THEN household_demographics.hd_dep_count / household_demographics.hd_vehicle_count ELSE NULL END > 1
-| row-size=32B cardinality=416
-|
-00:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF000 -> tpcds.store_sales.ss_customer_sk, RF002 -> store_sales.ss_store_sk, RF004 -> store_sales.ss_sold_date_sk, RF006 -> store_sales.ss_hdemo_sk
- row-size=24B cardinality=2.88M
----- PARALLELPLANS
-Max Per-Host Resource Reservation: Memory=68.26MB Threads=14
-Per-Host Resource Estimates: Memory=190MB
-PLAN-ROOT SINK
-|
-18:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: cnt DESC
-| limit: 1000
-|
-10:TOP-N [LIMIT=1000]
-| order by: cnt DESC
-| row-size=80B cardinality=1.00K
-|
-09:HASH JOIN [INNER JOIN, PARTITIONED]
-| hash predicates: ss_customer_sk = c_customer_sk
-| row-size=88B cardinality=16.25K
-|
-|--JOIN BUILD
-| | join-table-id=00 plan-id=01 cohort-id=01
-| | build expressions: c_customer_sk
-| | runtime filters: RF000 <- c_customer_sk
-| |
-| 17:EXCHANGE [HASH(c_customer_sk)]
-| |
-| 08:SCAN HDFS [tpcds.customer]
-| HDFS partitions=1/1 files=1 size=12.60MB
-| row-size=68B cardinality=100.00K
-|
-16:EXCHANGE [HASH(ss_customer_sk)]
-|
-15:AGGREGATE [FINALIZE]
-| output: count:merge(*)
-| group by: ss_ticket_number, ss_customer_sk
-| having: count(*) <= 5, count(*) >= 1
-| row-size=20B cardinality=16.25K
-|
-14:EXCHANGE [HASH(ss_ticket_number,ss_customer_sk)]
-|
-07:AGGREGATE [STREAMING]
-| output: count(*)
-| group by: ss_ticket_number, ss_customer_sk
-| row-size=20B cardinality=162.45K
-|
-06:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_store_sk = store.s_store_sk
-| row-size=93B cardinality=162.45K
-|
-|--JOIN BUILD
-| | join-table-id=01 plan-id=02 cohort-id=01
-| | build expressions: store.s_store_sk
-| | runtime filters: RF002 <- store.s_store_sk
-| |
-| 13:EXCHANGE [BROADCAST]
-| |
-| 02:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| predicates: store.s_county IN ('Saginaw County', 'Sumner County', 'Appanoose County', 'Daviess County')
-| row-size=33B cardinality=12
-|
-05:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_sold_date_sk = date_dim.d_date_sk
-| row-size=60B cardinality=162.45K
-|
-|--JOIN BUILD
-| | join-table-id=02 plan-id=03 cohort-id=01
-| | build expressions: date_dim.d_date_sk
-| | runtime filters: RF004 <- date_dim.d_date_sk
-| |
-| 12:EXCHANGE [BROADCAST]
-| |
-| 01:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| row-size=4B cardinality=73.05K
-|
-04:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_hdemo_sk = household_demographics.hd_demo_sk
-| row-size=56B cardinality=162.45K
-|
-|--JOIN BUILD
-| | join-table-id=03 plan-id=04 cohort-id=01
-| | build expressions: household_demographics.hd_demo_sk
-| | runtime filters: RF006 <- household_demographics.hd_demo_sk
-| |
-| 11:EXCHANGE [BROADCAST]
-| |
-| 03:SCAN HDFS [tpcds.household_demographics]
-| HDFS partitions=1/1 files=1 size=148.10KB
-| predicates: household_demographics.hd_vehicle_count > 0, household_demographics.hd_buy_potential IN ('>10000', 'unknown'), CASE WHEN household_demographics.hd_vehicle_count > 0 THEN household_demographics.hd_dep_count / household_demographics.hd_vehicle_count ELSE NULL END > 1
-| row-size=32B cardinality=416
-|
-00:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF000 -> tpcds.store_sales.ss_customer_sk, RF002 -> store_sales.ss_store_sk, RF004 -> store_sales.ss_sold_date_sk, RF006 -> store_sales.ss_hdemo_sk
- row-size=24B cardinality=2.88M
-====
-# TPCDS-Q79
-select
- c_last_name,
- c_first_name,
- substr(s_city, 1, 30),
- ss_ticket_number,
- amt,
- profit
-from
- (select
- ss_ticket_number,
- ss_customer_sk,
- store.s_city,
- sum(ss_coupon_amt) amt,
- sum(ss_net_profit) profit
- from
- store_sales,
- date_dim,
- store,
- household_demographics
- where
- store_sales.ss_sold_date_sk = date_dim.d_date_sk
- and store_sales.ss_store_sk = store.s_store_sk
- and store_sales.ss_hdemo_sk = household_demographics.hd_demo_sk
- and (household_demographics.hd_dep_count = 8
- or household_demographics.hd_vehicle_count > 0)
- and store.s_number_employees between 200 and 295
- and d_date between '1999-01-01' and '1999-03-31'
- group by
- ss_ticket_number,
- ss_customer_sk,
- ss_addr_sk,
- store.s_city
- ) ms,
- customer
-where
- ss_customer_sk = c_customer_sk
-order by
- c_last_name,
- c_first_name,
- substr(s_city, 1, 30),
- profit
-limit 100
----- PLAN
-Max Per-Host Resource Reservation: Memory=34.07MB Threads=6
-Per-Host Resource Estimates: Memory=298MB
-PLAN-ROOT SINK
-|
-10:TOP-N [LIMIT=100]
-| order by: c_last_name ASC, c_first_name ASC, substr(s_city, 1, 30) ASC, profit ASC
-| row-size=88B cardinality=100
-|
-09:HASH JOIN [INNER JOIN]
-| hash predicates: c_customer_sk = ss_customer_sk
-| runtime filters: RF000 <- ss_customer_sk
-| row-size=106B cardinality=46.86K
-|
-|--07:AGGREGATE [FINALIZE]
-| | output: sum(ss_coupon_amt), sum(ss_net_profit)
-| | group by: ss_ticket_number, ss_customer_sk, ss_addr_sk, store.s_city
-| | row-size=67B cardinality=46.86K
-| |
-| 06:HASH JOIN [INNER JOIN]
-| | hash predicates: store_sales.ss_sold_date_sk = date_dim.d_date_sk
-| | runtime filters: RF002 <- date_dim.d_date_sk
-| | row-size=101B cardinality=46.86K
-| |
-| |--01:SCAN HDFS [tpcds.date_dim]
-| | HDFS partitions=1/1 files=1 size=9.84MB
-| | predicates: d_date <= '1999-03-31', d_date >= '1999-01-01'
-| | row-size=26B cardinality=7.30K
-| |
-| 05:HASH JOIN [INNER JOIN]
-| | hash predicates: store_sales.ss_store_sk = store.s_store_sk
-| | runtime filters: RF004 <- store.s_store_sk
-| | row-size=75B cardinality=46.86K
-| |
-| |--02:SCAN HDFS [tpcds.store]
-| | HDFS partitions=1/1 files=1 size=3.08KB
-| | predicates: store.s_number_employees <= 295, store.s_number_employees >= 200
-| | row-size=27B cardinality=1
-| |
-| 04:HASH JOIN [INNER JOIN]
-| | hash predicates: store_sales.ss_hdemo_sk = household_demographics.hd_demo_sk
-| | runtime filters: RF006 <- household_demographics.hd_demo_sk
-| | row-size=48B cardinality=281.17K
-| |
-| |--03:SCAN HDFS [tpcds.household_demographics]
-| | HDFS partitions=1/1 files=1 size=148.10KB
-| | predicates: (household_demographics.hd_dep_count = 8 OR household_demographics.hd_vehicle_count > 0)
-| | row-size=12B cardinality=720
-| |
-| 00:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| runtime filters: RF002 -> store_sales.ss_sold_date_sk, RF004 -> store_sales.ss_store_sk, RF006 -> store_sales.ss_hdemo_sk
-| row-size=36B cardinality=2.88M
-|
-08:SCAN HDFS [tpcds.customer]
- HDFS partitions=1/1 files=1 size=12.60MB
- runtime filters: RF000 -> c_customer_sk
- row-size=40B cardinality=100.00K
----- DISTRIBUTEDPLAN
-Max Per-Host Resource Reservation: Memory=45.70MB Threads=13
-Per-Host Resource Estimates: Memory=330MB
-PLAN-ROOT SINK
-|
-18:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: c_last_name ASC, c_first_name ASC, substr(s_city, 1, 30) ASC, profit ASC
-| limit: 100
-|
-10:TOP-N [LIMIT=100]
-| order by: c_last_name ASC, c_first_name ASC, substr(s_city, 1, 30) ASC, profit ASC
-| row-size=88B cardinality=100
-|
-09:HASH JOIN [INNER JOIN, PARTITIONED]
-| hash predicates: ss_customer_sk = c_customer_sk
-| runtime filters: RF000 <- c_customer_sk
-| row-size=106B cardinality=46.86K
-|
-|--17:EXCHANGE [HASH(c_customer_sk)]
-| |
-| 08:SCAN HDFS [tpcds.customer]
-| HDFS partitions=1/1 files=1 size=12.60MB
-| row-size=40B cardinality=100.00K
-|
-16:EXCHANGE [HASH(ss_customer_sk)]
-|
-15:AGGREGATE [FINALIZE]
-| output: sum:merge(ss_coupon_amt), sum:merge(ss_net_profit)
-| group by: ss_ticket_number, ss_customer_sk, ss_addr_sk, store.s_city
-| row-size=67B cardinality=46.86K
-|
-14:EXCHANGE [HASH(ss_ticket_number,ss_customer_sk,ss_addr_sk,store.s_city)]
-|
-07:AGGREGATE [STREAMING]
-| output: sum(ss_coupon_amt), sum(ss_net_profit)
-| group by: ss_ticket_number, ss_customer_sk, ss_addr_sk, store.s_city
-| row-size=67B cardinality=46.86K
-|
-06:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_sold_date_sk = date_dim.d_date_sk
-| runtime filters: RF002 <- date_dim.d_date_sk
-| row-size=101B cardinality=46.86K
-|
-|--13:EXCHANGE [BROADCAST]
-| |
-| 01:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: d_date <= '1999-03-31', d_date >= '1999-01-01'
-| row-size=26B cardinality=7.30K
-|
-05:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_store_sk = store.s_store_sk
-| runtime filters: RF004 <- store.s_store_sk
-| row-size=75B cardinality=46.86K
-|
-|--12:EXCHANGE [BROADCAST]
-| |
-| 02:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| predicates: store.s_number_employees <= 295, store.s_number_employees >= 200
-| row-size=27B cardinality=1
-|
-04:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_hdemo_sk = household_demographics.hd_demo_sk
-| runtime filters: RF006 <- household_demographics.hd_demo_sk
-| row-size=48B cardinality=281.17K
-|
-|--11:EXCHANGE [BROADCAST]
-| |
-| 03:SCAN HDFS [tpcds.household_demographics]
-| HDFS partitions=1/1 files=1 size=148.10KB
-| predicates: (household_demographics.hd_dep_count = 8 OR household_demographics.hd_vehicle_count > 0)
-| row-size=12B cardinality=720
-|
-00:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF000 -> tpcds.store_sales.ss_customer_sk, RF002 -> store_sales.ss_sold_date_sk, RF004 -> store_sales.ss_store_sk, RF006 -> store_sales.ss_hdemo_sk
- row-size=36B cardinality=2.88M
----- PARALLELPLANS
-Max Per-Host Resource Reservation: Memory=64.51MB Threads=14
-Per-Host Resource Estimates: Memory=185MB
-PLAN-ROOT SINK
-|
-18:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: c_last_name ASC, c_first_name ASC, substr(s_city, 1, 30) ASC, profit ASC
-| limit: 100
-|
-10:TOP-N [LIMIT=100]
-| order by: c_last_name ASC, c_first_name ASC, substr(s_city, 1, 30) ASC, profit ASC
-| row-size=88B cardinality=100
-|
-09:HASH JOIN [INNER JOIN, PARTITIONED]
-| hash predicates: ss_customer_sk = c_customer_sk
-| row-size=106B cardinality=46.86K
-|
-|--JOIN BUILD
-| | join-table-id=00 plan-id=01 cohort-id=01
-| | build expressions: c_customer_sk
-| | runtime filters: RF000 <- c_customer_sk
-| |
-| 17:EXCHANGE [HASH(c_customer_sk)]
-| |
-| 08:SCAN HDFS [tpcds.customer]
-| HDFS partitions=1/1 files=1 size=12.60MB
-| row-size=40B cardinality=100.00K
-|
-16:EXCHANGE [HASH(ss_customer_sk)]
-|
-15:AGGREGATE [FINALIZE]
-| output: sum:merge(ss_coupon_amt), sum:merge(ss_net_profit)
-| group by: ss_ticket_number, ss_customer_sk, ss_addr_sk, store.s_city
-| row-size=67B cardinality=46.86K
-|
-14:EXCHANGE [HASH(ss_ticket_number,ss_customer_sk,ss_addr_sk,store.s_city)]
-|
-07:AGGREGATE [STREAMING]
-| output: sum(ss_coupon_amt), sum(ss_net_profit)
-| group by: ss_ticket_number, ss_customer_sk, ss_addr_sk, store.s_city
-| row-size=67B cardinality=46.86K
-|
-06:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_sold_date_sk = date_dim.d_date_sk
-| row-size=101B cardinality=46.86K
-|
-|--JOIN BUILD
-| | join-table-id=01 plan-id=02 cohort-id=01
-| | build expressions: date_dim.d_date_sk
-| | runtime filters: RF002 <- date_dim.d_date_sk
-| |
-| 13:EXCHANGE [BROADCAST]
-| |
-| 01:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: d_date <= '1999-03-31', d_date >= '1999-01-01'
-| row-size=26B cardinality=7.30K
-|
-05:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_store_sk = store.s_store_sk
-| row-size=75B cardinality=46.86K
-|
-|--JOIN BUILD
-| | join-table-id=02 plan-id=03 cohort-id=01
-| | build expressions: store.s_store_sk
-| | runtime filters: RF004 <- store.s_store_sk
-| |
-| 12:EXCHANGE [BROADCAST]
-| |
-| 02:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| predicates: store.s_number_employees <= 295, store.s_number_employees >= 200
-| row-size=27B cardinality=1
-|
-04:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: store_sales.ss_hdemo_sk = household_demographics.hd_demo_sk
-| row-size=48B cardinality=281.17K
-|
-|--JOIN BUILD
-| | join-table-id=03 plan-id=04 cohort-id=01
-| | build expressions: household_demographics.hd_demo_sk
-| | runtime filters: RF006 <- household_demographics.hd_demo_sk
-| |
-| 11:EXCHANGE [BROADCAST]
-| |
-| 03:SCAN HDFS [tpcds.household_demographics]
-| HDFS partitions=1/1 files=1 size=148.10KB
-| predicates: (household_demographics.hd_dep_count = 8 OR household_demographics.hd_vehicle_count > 0)
-| row-size=12B cardinality=720
-|
-00:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF000 -> tpcds.store_sales.ss_customer_sk, RF002 -> store_sales.ss_sold_date_sk, RF004 -> store_sales.ss_store_sk, RF006 -> store_sales.ss_hdemo_sk
- row-size=36B cardinality=2.88M
-====
-# TPCDS-Q89
-select * from (select *
-from (
-select i_category, i_class, i_brand,
- s_store_name, s_company_name,
- d_moy,
- sum(ss_sales_price) sum_sales,
- avg(sum(ss_sales_price)) over
- (partition by i_category, i_brand, s_store_name, s_company_name)
- avg_monthly_sales
-from item, store_sales, date_dim, store
-where ss_item_sk = i_item_sk and
- ss_sold_date_sk = d_date_sk and
- ss_store_sk = s_store_sk and
- d_year in (2000) and
- ((i_category in ('Children','Music','Home') and
- i_class in ('toddlers','pop','lighting')
- )
- or (i_category in ('Jewelry','Books','Sports') and
- i_class in ('costume','travel','football')
- ))
-group by i_category, i_class, i_brand,
- s_store_name, s_company_name, d_moy) tmp1
-where case when (avg_monthly_sales <> 0) then (abs(sum_sales - avg_monthly_sales) / avg_monthly_sales) else null end > 0.1
-order by sum_sales - avg_monthly_sales, s_store_name
-limit 100) tmp2
----- PLAN
-Max Per-Host Resource Reservation: Memory=36.82MB Threads=5
-Per-Host Resource Estimates: Memory=253MB
-PLAN-ROOT SINK
-|
-11:TOP-N [LIMIT=100]
-| order by: sum_sales - avg_monthly_sales ASC, s_store_name ASC
-| row-size=137B cardinality=100
-|
-10:SELECT
-| predicates: CASE WHEN (avg(sum(ss_sales_price)) != 0) THEN (abs(sum(ss_sales_price) - avg(sum(ss_sales_price))) / avg(sum(ss_sales_price))) ELSE NULL END > 0.1
-| row-size=137B cardinality=1.07K
-|
-09:ANALYTIC
-| functions: avg(sum(ss_sales_price))
-| partition by: i_category, i_brand, s_store_name, s_company_name
-| row-size=137B cardinality=10.67K
-|
-08:SORT
-| order by: i_category ASC NULLS LAST, i_brand ASC NULLS LAST, s_store_name ASC NULLS LAST, s_company_name ASC NULLS LAST
-| row-size=121B cardinality=10.67K
-|
-07:AGGREGATE [FINALIZE]
-| output: sum(ss_sales_price)
-| group by: i_category, i_class, i_brand, s_store_name, s_company_name, d_moy
-| row-size=121B cardinality=10.67K
-|
-06:HASH JOIN [INNER JOIN]
-| hash predicates: ss_store_sk = s_store_sk
-| runtime filters: RF000 <- s_store_sk
-| row-size=145B cardinality=10.67K
-|
-|--03:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| row-size=39B cardinality=12
-|
-05:HASH JOIN [INNER JOIN]
-| hash predicates: ss_sold_date_sk = d_date_sk
-| runtime filters: RF002 <- d_date_sk
-| row-size=106B cardinality=10.67K
-|
-|--02:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: d_year IN (2000)
-| row-size=12B cardinality=373
-|
-04:HASH JOIN [INNER JOIN]
-| hash predicates: ss_item_sk = i_item_sk
-| runtime filters: RF004 <- i_item_sk
-| row-size=94B cardinality=52.17K
-|
-|--00:SCAN HDFS [tpcds.item]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| predicates: ((i_category IN ('Children', 'Music', 'Home') AND i_class IN ('toddlers', 'pop', 'lighting')) OR (i_category IN ('Jewelry', 'Books', 'Sports') AND i_class IN ('costume', 'travel', 'football')))
-| row-size=74B cardinality=326
-|
-01:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF000 -> ss_store_sk, RF002 -> ss_sold_date_sk, RF004 -> ss_item_sk
- row-size=20B cardinality=2.88M
----- DISTRIBUTEDPLAN
-Max Per-Host Resource Reservation: Memory=52.76MB Threads=10
-Per-Host Resource Estimates: Memory=285MB
-PLAN-ROOT SINK
-|
-17:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: sum_sales - avg_monthly_sales ASC, s_store_name ASC
-| limit: 100
-|
-11:TOP-N [LIMIT=100]
-| order by: sum_sales - avg_monthly_sales ASC, s_store_name ASC
-| row-size=137B cardinality=100
-|
-10:SELECT
-| predicates: CASE WHEN (avg(sum(ss_sales_price)) != 0) THEN (abs(sum(ss_sales_price) - avg(sum(ss_sales_price))) / avg(sum(ss_sales_price))) ELSE NULL END > 0.1
-| row-size=137B cardinality=1.07K
-|
-09:ANALYTIC
-| functions: avg(sum(ss_sales_price))
-| partition by: i_category, i_brand, s_store_name, s_company_name
-| row-size=137B cardinality=10.67K
-|
-08:SORT
-| order by: i_category ASC NULLS LAST, i_brand ASC NULLS LAST, s_store_name ASC NULLS LAST, s_company_name ASC NULLS LAST
-| row-size=121B cardinality=10.67K
-|
-16:AGGREGATE [FINALIZE]
-| output: sum:merge(ss_sales_price)
-| group by: i_category, i_class, i_brand, s_store_name, s_company_name, d_moy
-| row-size=121B cardinality=10.67K
-|
-15:EXCHANGE [HASH(i_category,i_brand,s_store_name,s_company_name)]
-|
-07:AGGREGATE [STREAMING]
-| output: sum(ss_sales_price)
-| group by: i_category, i_class, i_brand, s_store_name, s_company_name, d_moy
-| row-size=121B cardinality=10.67K
-|
-06:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_store_sk = s_store_sk
-| runtime filters: RF000 <- s_store_sk
-| row-size=145B cardinality=10.67K
-|
-|--14:EXCHANGE [BROADCAST]
-| |
-| 03:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| row-size=39B cardinality=12
-|
-05:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_sold_date_sk = d_date_sk
-| runtime filters: RF002 <- d_date_sk
-| row-size=106B cardinality=10.67K
-|
-|--13:EXCHANGE [BROADCAST]
-| |
-| 02:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: d_year IN (2000)
-| row-size=12B cardinality=373
-|
-04:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_item_sk = i_item_sk
-| runtime filters: RF004 <- i_item_sk
-| row-size=94B cardinality=52.17K
-|
-|--12:EXCHANGE [BROADCAST]
-| |
-| 00:SCAN HDFS [tpcds.item]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| predicates: ((i_category IN ('Children', 'Music', 'Home') AND i_class IN ('toddlers', 'pop', 'lighting')) OR (i_category IN ('Jewelry', 'Books', 'Sports') AND i_class IN ('costume', 'travel', 'football')))
-| row-size=74B cardinality=326
-|
-01:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF000 -> ss_store_sk, RF002 -> ss_sold_date_sk, RF004 -> ss_item_sk
- row-size=20B cardinality=2.88M
----- PARALLELPLANS
-Max Per-Host Resource Reservation: Memory=89.51MB Threads=11
-Per-Host Resource Estimates: Memory=178MB
-PLAN-ROOT SINK
-|
-17:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: sum_sales - avg_monthly_sales ASC, s_store_name ASC
-| limit: 100
-|
-11:TOP-N [LIMIT=100]
-| order by: sum_sales - avg_monthly_sales ASC, s_store_name ASC
-| row-size=137B cardinality=100
-|
-10:SELECT
-| predicates: CASE WHEN (avg(sum(ss_sales_price)) != 0) THEN (abs(sum(ss_sales_price) - avg(sum(ss_sales_price))) / avg(sum(ss_sales_price))) ELSE NULL END > 0.1
-| row-size=137B cardinality=1.07K
-|
-09:ANALYTIC
-| functions: avg(sum(ss_sales_price))
-| partition by: i_category, i_brand, s_store_name, s_company_name
-| row-size=137B cardinality=10.67K
-|
-08:SORT
-| order by: i_category ASC NULLS LAST, i_brand ASC NULLS LAST, s_store_name ASC NULLS LAST, s_company_name ASC NULLS LAST
-| row-size=121B cardinality=10.67K
-|
-16:AGGREGATE [FINALIZE]
-| output: sum:merge(ss_sales_price)
-| group by: i_category, i_class, i_brand, s_store_name, s_company_name, d_moy
-| row-size=121B cardinality=10.67K
-|
-15:EXCHANGE [HASH(i_category,i_brand,s_store_name,s_company_name)]
-|
-07:AGGREGATE [STREAMING]
-| output: sum(ss_sales_price)
-| group by: i_category, i_class, i_brand, s_store_name, s_company_name, d_moy
-| row-size=121B cardinality=10.67K
-|
-06:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_store_sk = s_store_sk
-| row-size=145B cardinality=10.67K
-|
-|--JOIN BUILD
-| | join-table-id=00 plan-id=01 cohort-id=01
-| | build expressions: s_store_sk
-| | runtime filters: RF000 <- s_store_sk
-| |
-| 14:EXCHANGE [BROADCAST]
-| |
-| 03:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| row-size=39B cardinality=12
-|
-05:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_sold_date_sk = d_date_sk
-| row-size=106B cardinality=10.67K
-|
-|--JOIN BUILD
-| | join-table-id=01 plan-id=02 cohort-id=01
-| | build expressions: d_date_sk
-| | runtime filters: RF002 <- d_date_sk
-| |
-| 13:EXCHANGE [BROADCAST]
-| |
-| 02:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: d_year IN (2000)
-| row-size=12B cardinality=373
-|
-04:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_item_sk = i_item_sk
-| row-size=94B cardinality=52.17K
-|
-|--JOIN BUILD
-| | join-table-id=02 plan-id=03 cohort-id=01
-| | build expressions: i_item_sk
-| | runtime filters: RF004 <- i_item_sk
-| |
-| 12:EXCHANGE [BROADCAST]
-| |
-| 00:SCAN HDFS [tpcds.item]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| predicates: ((i_category IN ('Children', 'Music', 'Home') AND i_class IN ('toddlers', 'pop', 'lighting')) OR (i_category IN ('Jewelry', 'Books', 'Sports') AND i_class IN ('costume', 'travel', 'football')))
-| row-size=74B cardinality=326
-|
-01:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF000 -> ss_store_sk, RF002 -> ss_sold_date_sk, RF004 -> ss_item_sk
- row-size=20B cardinality=2.88M
-====
-# TPCDS-Q96
-SELECT
- COUNT(*) AS total
-FROM store_sales ss
-JOIN time_dim td
- ON (ss.ss_sold_time_sk = td.t_time_sk)
-JOIN household_demographics hd
- ON (ss.ss_hdemo_sk = hd.hd_demo_sk)
-JOIN store s
- ON (ss.ss_store_sk = s.s_store_sk)
-WHERE
- td.t_hour = 8
- AND td.t_minute >= 30
- AND hd.hd_dep_count = 5
- AND s.s_store_name = 'ese'
----- PLAN
-Max Per-Host Resource Reservation: Memory=25.07MB Threads=5
-Per-Host Resource Estimates: Memory=233MB
-PLAN-ROOT SINK
-|
-07:AGGREGATE [FINALIZE]
-| output: count(*)
-| row-size=8B cardinality=1
-|
-06:HASH JOIN [INNER JOIN]
-| hash predicates: ss.ss_store_sk = s.s_store_sk
-| runtime filters: RF000 <- s.s_store_sk
-| row-size=52B cardinality=2.27K
-|
-|--03:SCAN HDFS [tpcds.store s]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| predicates: s.s_store_name = 'ese'
-| row-size=20B cardinality=2
-|
-05:HASH JOIN [INNER JOIN]
-| hash predicates: ss.ss_hdemo_sk = hd.hd_demo_sk
-| runtime filters: RF002 <- hd.hd_demo_sk
-| row-size=32B cardinality=6.82K
-|
-|--02:SCAN HDFS [tpcds.household_demographics hd]
-| HDFS partitions=1/1 files=1 size=148.10KB
-| predicates: hd.hd_dep_count = 5
-| row-size=8B cardinality=720
-|
-04:HASH JOIN [INNER JOIN]
-| hash predicates: ss.ss_sold_time_sk = td.t_time_sk
-| runtime filters: RF004 <- td.t_time_sk
-| row-size=24B cardinality=69.82K
-|
-|--01:SCAN HDFS [tpcds.time_dim td]
-| HDFS partitions=1/1 files=1 size=4.87MB
-| predicates: td.t_hour = 8, td.t_minute >= 30
-| row-size=12B cardinality=1.14K
-|
-00:SCAN HDFS [tpcds.store_sales ss]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF000 -> ss.ss_store_sk, RF002 -> ss.ss_hdemo_sk, RF004 -> ss.ss_sold_time_sk
- row-size=12B cardinality=2.88M
----- DISTRIBUTEDPLAN
-Max Per-Host Resource Reservation: Memory=25.07MB Threads=9
-Per-Host Resource Estimates: Memory=253MB
-PLAN-ROOT SINK
-|
-12:AGGREGATE [FINALIZE]
-| output: count:merge(*)
-| row-size=8B cardinality=1
-|
-11:EXCHANGE [UNPARTITIONED]
-|
-07:AGGREGATE
-| output: count(*)
-| row-size=8B cardinality=1
-|
-06:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss.ss_store_sk = s.s_store_sk
-| runtime filters: RF000 <- s.s_store_sk
-| row-size=52B cardinality=2.27K
-|
-|--10:EXCHANGE [BROADCAST]
-| |
-| 03:SCAN HDFS [tpcds.store s]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| predicates: s.s_store_name = 'ese'
-| row-size=20B cardinality=2
-|
-05:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss.ss_hdemo_sk = hd.hd_demo_sk
-| runtime filters: RF002 <- hd.hd_demo_sk
-| row-size=32B cardinality=6.82K
-|
-|--09:EXCHANGE [BROADCAST]
-| |
-| 02:SCAN HDFS [tpcds.household_demographics hd]
-| HDFS partitions=1/1 files=1 size=148.10KB
-| predicates: hd.hd_dep_count = 5
-| row-size=8B cardinality=720
-|
-04:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss.ss_sold_time_sk = td.t_time_sk
-| runtime filters: RF004 <- td.t_time_sk
-| row-size=24B cardinality=69.82K
-|
-|--08:EXCHANGE [BROADCAST]
-| |
-| 01:SCAN HDFS [tpcds.time_dim td]
-| HDFS partitions=1/1 files=1 size=4.87MB
-| predicates: td.t_hour = 8, td.t_minute >= 30
-| row-size=12B cardinality=1.14K
-|
-00:SCAN HDFS [tpcds.store_sales ss]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF000 -> ss.ss_store_sk, RF002 -> ss.ss_hdemo_sk, RF004 -> ss.ss_sold_time_sk
- row-size=12B cardinality=2.88M
----- PARALLELPLANS
-Max Per-Host Resource Reservation: Memory=41.88MB Threads=9
-Per-Host Resource Estimates: Memory=128MB
-PLAN-ROOT SINK
-|
-12:AGGREGATE [FINALIZE]
-| output: count:merge(*)
-| row-size=8B cardinality=1
-|
-11:EXCHANGE [UNPARTITIONED]
-|
-07:AGGREGATE
-| output: count(*)
-| row-size=8B cardinality=1
-|
-06:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss.ss_store_sk = s.s_store_sk
-| row-size=52B cardinality=2.27K
-|
-|--JOIN BUILD
-| | join-table-id=00 plan-id=01 cohort-id=01
-| | build expressions: s.s_store_sk
-| | runtime filters: RF000 <- s.s_store_sk
-| |
-| 10:EXCHANGE [BROADCAST]
-| |
-| 03:SCAN HDFS [tpcds.store s]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| predicates: s.s_store_name = 'ese'
-| row-size=20B cardinality=2
-|
-05:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss.ss_hdemo_sk = hd.hd_demo_sk
-| row-size=32B cardinality=6.82K
-|
-|--JOIN BUILD
-| | join-table-id=01 plan-id=02 cohort-id=01
-| | build expressions: hd.hd_demo_sk
-| | runtime filters: RF002 <- hd.hd_demo_sk
-| |
-| 09:EXCHANGE [BROADCAST]
-| |
-| 02:SCAN HDFS [tpcds.household_demographics hd]
-| HDFS partitions=1/1 files=1 size=148.10KB
-| predicates: hd.hd_dep_count = 5
-| row-size=8B cardinality=720
-|
-04:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss.ss_sold_time_sk = td.t_time_sk
-| row-size=24B cardinality=69.82K
-|
-|--JOIN BUILD
-| | join-table-id=02 plan-id=03 cohort-id=01
-| | build expressions: td.t_time_sk
-| | runtime filters: RF004 <- td.t_time_sk
-| |
-| 08:EXCHANGE [BROADCAST]
-| |
-| 01:SCAN HDFS [tpcds.time_dim td]
-| HDFS partitions=1/1 files=1 size=4.87MB
-| predicates: td.t_hour = 8, td.t_minute >= 30
-| row-size=12B cardinality=1.14K
-|
-00:SCAN HDFS [tpcds.store_sales ss]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF000 -> ss.ss_store_sk, RF002 -> ss.ss_hdemo_sk, RF004 -> ss.ss_sold_time_sk
- row-size=12B cardinality=2.88M
-====
-# TPCDS-Q98
-select
- i_item_desc,
- i_category,
- i_class,
- i_current_price,
- sum(ss_ext_sales_price) as itemrevenue,
- sum(ss_ext_sales_price)*100/sum(sum(ss_ext_sales_price)) over (partition by i_class) as revenueratio
-from
- store_sales,
- item,
- date_dim
-where
- ss_item_sk = i_item_sk
- and i_category in ('Jewelry', 'Sports', 'Books')
- and ss_sold_date_sk = d_date_sk
- and ss_sold_date_sk between 2451911 and 2451941
- and d_date between '2001-01-01' and '2001-01-31' -- original uses interval and the
-group by
- i_item_id,
- i_item_desc,
- i_category,
- i_class,
- i_current_price
-order by
- i_category,
- i_class,
- i_item_id,
- i_item_desc,
- revenueratio
-limit 1000
----- PLAN
-Max Per-Host Resource Reservation: Memory=26.50MB Threads=4
-Per-Host Resource Estimates: Memory=218MB
-PLAN-ROOT SINK
-|
-08:TOP-N [LIMIT=1000]
-| order by: i_category ASC, i_class ASC, i_item_id ASC, i_item_desc ASC, sum(ss_ext_sales_price) * 100 / sum(sum(ss_ext_sales_price)) ASC
-| row-size=214B cardinality=1.00K
-|
-07:ANALYTIC
-| functions: sum(sum(ss_ext_sales_price))
-| partition by: i_class
-| row-size=214B cardinality=29.80K
-|
-06:SORT
-| order by: i_class ASC NULLS LAST
-| row-size=198B cardinality=29.80K
-|
-05:AGGREGATE [FINALIZE]
-| output: sum(ss_ext_sales_price)
-| group by: i_item_id, i_item_desc, i_category, i_class, i_current_price
-| row-size=198B cardinality=29.80K
-|
-04:HASH JOIN [INNER JOIN]
-| hash predicates: ss_sold_date_sk = d_date_sk
-| runtime filters: RF000 <- d_date_sk
-| row-size=232B cardinality=29.80K
-|
-|--02:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: tpcds.date_dim.d_date_sk <= 2451941, tpcds.date_dim.d_date_sk >= 2451911, d_date <= '2001-01-31', d_date >= '2001-01-01'
-| row-size=26B cardinality=7.30K
-|
-03:HASH JOIN [INNER JOIN]
-| hash predicates: i_item_sk = ss_item_sk
-| runtime filters: RF002 <- ss_item_sk
-| row-size=206B cardinality=29.80K
-|
-|--00:SCAN HDFS [tpcds.store_sales]
-| partition predicates: ss_sold_date_sk >= 2451911, ss_sold_date_sk <= 2451941
-| HDFS partitions=31/1824 files=31 size=3.64MB
-| runtime filters: RF000 -> ss_sold_date_sk
-| row-size=16B cardinality=29.76K
-|
-01:SCAN HDFS [tpcds.item]
- HDFS partitions=1/1 files=1 size=4.82MB
- predicates: i_category IN ('Jewelry', 'Sports', 'Books')
- runtime filters: RF002 -> i_item_sk
- row-size=190B cardinality=5.40K
----- DISTRIBUTEDPLAN
-Max Per-Host Resource Reservation: Memory=57.88MB Threads=9
-Per-Host Resource Estimates: Memory=254MB
-PLAN-ROOT SINK
-|
-14:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: i_category ASC, i_class ASC, i_item_id ASC, i_item_desc ASC, sum(ss_ext_sales_price) * 100 / sum(sum(ss_ext_sales_price)) ASC
-| limit: 1000
-|
-08:TOP-N [LIMIT=1000]
-| order by: i_category ASC, i_class ASC, i_item_id ASC, i_item_desc ASC, sum(ss_ext_sales_price) * 100 / sum(sum(ss_ext_sales_price)) ASC
-| row-size=214B cardinality=1.00K
-|
-07:ANALYTIC
-| functions: sum(sum(ss_ext_sales_price))
-| partition by: i_class
-| row-size=214B cardinality=29.80K
-|
-06:SORT
-| order by: i_class ASC NULLS LAST
-| row-size=198B cardinality=29.80K
-|
-13:AGGREGATE [FINALIZE]
-| output: sum:merge(ss_ext_sales_price)
-| group by: i_item_id, i_item_desc, i_category, i_class, i_current_price
-| row-size=198B cardinality=29.80K
-|
-12:EXCHANGE [HASH(i_class)]
-|
-05:AGGREGATE [STREAMING]
-| output: sum(ss_ext_sales_price)
-| group by: i_item_id, i_item_desc, i_category, i_class, i_current_price
-| row-size=198B cardinality=29.80K
-|
-04:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_sold_date_sk = d_date_sk
-| runtime filters: RF000 <- d_date_sk
-| row-size=232B cardinality=29.80K
-|
-|--11:EXCHANGE [BROADCAST]
-| |
-| 02:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: tpcds.date_dim.d_date_sk <= 2451941, tpcds.date_dim.d_date_sk >= 2451911, d_date <= '2001-01-31', d_date >= '2001-01-01'
-| row-size=26B cardinality=7.30K
-|
-03:HASH JOIN [INNER JOIN, PARTITIONED]
-| hash predicates: ss_item_sk = i_item_sk
-| runtime filters: RF002 <- i_item_sk
-| row-size=206B cardinality=29.80K
-|
-|--10:EXCHANGE [HASH(i_item_sk)]
-| |
-| 01:SCAN HDFS [tpcds.item]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| predicates: i_category IN ('Jewelry', 'Sports', 'Books')
-| row-size=190B cardinality=5.40K
-|
-09:EXCHANGE [HASH(ss_item_sk)]
-|
-00:SCAN HDFS [tpcds.store_sales]
- partition predicates: ss_sold_date_sk >= 2451911, ss_sold_date_sk <= 2451941
- HDFS partitions=31/1824 files=31 size=3.64MB
- runtime filters: RF000 -> ss_sold_date_sk, RF002 -> ss_item_sk
- row-size=16B cardinality=29.76K
----- PARALLELPLANS
-Max Per-Host Resource Reservation: Memory=60.31MB Threads=9
-Per-Host Resource Estimates: Memory=120MB
-PLAN-ROOT SINK
-|
-14:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: i_category ASC, i_class ASC, i_item_id ASC, i_item_desc ASC, sum(ss_ext_sales_price) * 100 / sum(sum(ss_ext_sales_price)) ASC
-| limit: 1000
-|
-08:TOP-N [LIMIT=1000]
-| order by: i_category ASC, i_class ASC, i_item_id ASC, i_item_desc ASC, sum(ss_ext_sales_price) * 100 / sum(sum(ss_ext_sales_price)) ASC
-| row-size=214B cardinality=1.00K
-|
-07:ANALYTIC
-| functions: sum(sum(ss_ext_sales_price))
-| partition by: i_class
-| row-size=214B cardinality=29.80K
-|
-06:SORT
-| order by: i_class ASC NULLS LAST
-| row-size=198B cardinality=29.80K
-|
-13:AGGREGATE [FINALIZE]
-| output: sum:merge(ss_ext_sales_price)
-| group by: i_item_id, i_item_desc, i_category, i_class, i_current_price
-| row-size=198B cardinality=29.80K
-|
-12:EXCHANGE [HASH(i_class)]
-|
-05:AGGREGATE [STREAMING]
-| output: sum(ss_ext_sales_price)
-| group by: i_item_id, i_item_desc, i_category, i_class, i_current_price
-| row-size=198B cardinality=29.80K
-|
-04:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_sold_date_sk = d_date_sk
-| row-size=232B cardinality=29.80K
-|
-|--JOIN BUILD
-| | join-table-id=00 plan-id=01 cohort-id=01
-| | build expressions: d_date_sk
-| | runtime filters: RF000 <- d_date_sk
-| |
-| 11:EXCHANGE [BROADCAST]
-| |
-| 02:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: tpcds.date_dim.d_date_sk <= 2451941, tpcds.date_dim.d_date_sk >= 2451911, d_date <= '2001-01-31', d_date >= '2001-01-01'
-| row-size=26B cardinality=7.30K
-|
-03:HASH JOIN [INNER JOIN, PARTITIONED]
-| hash predicates: ss_item_sk = i_item_sk
-| row-size=206B cardinality=29.80K
-|
-|--JOIN BUILD
-| | join-table-id=01 plan-id=02 cohort-id=01
-| | build expressions: i_item_sk
-| | runtime filters: RF002 <- i_item_sk
-| |
-| 10:EXCHANGE [HASH(i_item_sk)]
-| |
-| 01:SCAN HDFS [tpcds.item]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| predicates: i_category IN ('Jewelry', 'Sports', 'Books')
-| row-size=190B cardinality=5.40K
-|
-09:EXCHANGE [HASH(ss_item_sk)]
-|
-00:SCAN HDFS [tpcds.store_sales]
- partition predicates: ss_sold_date_sk >= 2451911, ss_sold_date_sk <= 2451941
- HDFS partitions=31/1824 files=31 size=3.64MB
- runtime filters: RF000 -> ss_sold_date_sk, RF002 -> ss_item_sk
- row-size=16B cardinality=29.76K
-====
-# TPCD-Q6
-select * from (
- select a.ca_state state, count(*) cnt
- from customer_address a
- ,customer c
- ,store_sales s
- ,date_dim d
- ,item i
- where
- a.ca_address_sk = c.c_current_addr_sk
- and c.c_customer_sk = s.ss_customer_sk
- and s.ss_sold_date_sk = d.d_date_sk
- and s.ss_item_sk = i.i_item_sk
- and d.d_month_seq =
- (select distinct (d_month_seq)
- from date_dim
- where d_year = 1999
- and d_moy = 1
- limit 1)
- and i.i_current_price > 1.2 *
- (select avg(j.i_current_price)
- from item j
- where j.i_category = i.i_category)
- group by a.ca_state
- having count(*) >= 10
- order by cnt limit 100) as t
----- PLAN
-Max Per-Host Resource Reservation: Memory=73.62MB Threads=8
-Per-Host Resource Estimates: Memory=402MB
-PLAN-ROOT SINK
-|
-16:TOP-N [LIMIT=100]
-| order by: count(*) ASC
-| row-size=22B cardinality=5
-|
-15:AGGREGATE [FINALIZE]
-| output: count(*)
-| group by: a.ca_state
-| having: count(*) >= 10
-| row-size=22B cardinality=5
-|
-14:HASH JOIN [LEFT SEMI JOIN]
-| hash predicates: i.i_category = j.i_category
-| other join predicates: i.i_current_price > 1.2 * avg(j.i_current_price)
-| runtime filters: RF000 <- j.i_category
-| row-size=80B cardinality=1.19K
-|
-|--08:AGGREGATE [FINALIZE]
-| | output: avg(j.i_current_price)
-| | group by: j.i_category
-| | row-size=26B cardinality=10
-| |
-| 07:SCAN HDFS [tpcds.item j]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| row-size=22B cardinality=18.00K
-|
-13:HASH JOIN [LEFT SEMI JOIN]
-| hash predicates: d.d_month_seq = (d_month_seq)
-| runtime filters: RF002 <- (d_month_seq)
-| row-size=80B cardinality=1.19K
-|
-|--06:AGGREGATE [FINALIZE]
-| | group by: (d_month_seq)
-| | limit: 1
-| | row-size=4B cardinality=1
-| |
-| 05:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: d_year = 1999, d_moy = 1
-| row-size=12B cardinality=108
-|
-12:HASH JOIN [INNER JOIN]
-| hash predicates: s.ss_item_sk = i.i_item_sk
-| runtime filters: RF004 <- i.i_item_sk
-| row-size=80B cardinality=2.88M
-|
-|--04:SCAN HDFS [tpcds.item i]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| runtime filters: RF000 -> i.i_category
-| row-size=30B cardinality=18.00K
-|
-11:HASH JOIN [INNER JOIN]
-| hash predicates: s.ss_sold_date_sk = d.d_date_sk
-| runtime filters: RF006 <- d.d_date_sk
-| row-size=50B cardinality=2.88M
-|
-|--03:SCAN HDFS [tpcds.date_dim d]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| runtime filters: RF002 -> d.d_month_seq
-| row-size=8B cardinality=73.05K
-|
-10:HASH JOIN [INNER JOIN]
-| hash predicates: c.c_current_addr_sk = a.ca_address_sk
-| runtime filters: RF008 <- a.ca_address_sk
-| row-size=42B cardinality=2.88M
-|
-|--00:SCAN HDFS [tpcds.customer_address a]
-| HDFS partitions=1/1 files=1 size=5.25MB
-| row-size=18B cardinality=50.00K
-|
-09:HASH JOIN [INNER JOIN]
-| hash predicates: s.ss_customer_sk = c.c_customer_sk
-| runtime filters: RF010 <- c.c_customer_sk
-| row-size=24B cardinality=2.88M
-|
-|--01:SCAN HDFS [tpcds.customer c]
-| HDFS partitions=1/1 files=1 size=12.60MB
-| runtime filters: RF008 -> c.c_current_addr_sk
-| row-size=8B cardinality=100.00K
-|
-02:SCAN HDFS [tpcds.store_sales s]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF004 -> s.ss_item_sk, RF006 -> s.ss_sold_date_sk, RF010 -> s.ss_customer_sk
- row-size=16B cardinality=2.88M
----- DISTRIBUTEDPLAN
-Max Per-Host Resource Reservation: Memory=88.44MB Threads=19
-Per-Host Resource Estimates: Memory=452MB
-PLAN-ROOT SINK
-|
-30:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: count(*) ASC
-| limit: 100
-|
-16:TOP-N [LIMIT=100]
-| order by: count(*) ASC
-| row-size=22B cardinality=5
-|
-29:AGGREGATE [FINALIZE]
-| output: count:merge(*)
-| group by: a.ca_state
-| having: count(*) >= 10
-| row-size=22B cardinality=5
-|
-28:EXCHANGE [HASH(a.ca_state)]
-|
-15:AGGREGATE [STREAMING]
-| output: count(*)
-| group by: a.ca_state
-| row-size=22B cardinality=51
-|
-14:HASH JOIN [LEFT SEMI JOIN, BROADCAST]
-| hash predicates: i.i_category = j.i_category
-| other join predicates: i.i_current_price > 1.2 * avg(j.i_current_price)
-| runtime filters: RF000 <- j.i_category
-| row-size=80B cardinality=1.19K
-|
-|--27:EXCHANGE [BROADCAST]
-| |
-| 26:AGGREGATE [FINALIZE]
-| | output: avg:merge(j.i_current_price)
-| | group by: j.i_category
-| | row-size=26B cardinality=10
-| |
-| 25:EXCHANGE [HASH(j.i_category)]
-| |
-| 08:AGGREGATE [STREAMING]
-| | output: avg(j.i_current_price)
-| | group by: j.i_category
-| | row-size=26B cardinality=10
-| |
-| 07:SCAN HDFS [tpcds.item j]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| row-size=22B cardinality=18.00K
-|
-13:HASH JOIN [LEFT SEMI JOIN, BROADCAST]
-| hash predicates: d.d_month_seq = (d_month_seq)
-| runtime filters: RF002 <- (d_month_seq)
-| row-size=80B cardinality=1.19K
-|
-|--24:EXCHANGE [BROADCAST]
-| |
-| 23:EXCHANGE [UNPARTITIONED]
-| | limit: 1
-| |
-| 22:AGGREGATE [FINALIZE]
-| | group by: (d_month_seq)
-| | limit: 1
-| | row-size=4B cardinality=1
-| |
-| 21:EXCHANGE [HASH((d_month_seq))]
-| |
-| 06:AGGREGATE [STREAMING]
-| | group by: (d_month_seq)
-| | row-size=4B cardinality=108
-| |
-| 05:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: d_year = 1999, d_moy = 1
-| row-size=12B cardinality=108
-|
-12:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: s.ss_item_sk = i.i_item_sk
-| runtime filters: RF004 <- i.i_item_sk
-| row-size=80B cardinality=2.88M
-|
-|--20:EXCHANGE [BROADCAST]
-| |
-| 04:SCAN HDFS [tpcds.item i]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| runtime filters: RF000 -> i.i_category
-| row-size=30B cardinality=18.00K
-|
-11:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: s.ss_sold_date_sk = d.d_date_sk
-| runtime filters: RF006 <- d.d_date_sk
-| row-size=50B cardinality=2.88M
-|
-|--19:EXCHANGE [BROADCAST]
-| |
-| 03:SCAN HDFS [tpcds.date_dim d]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| runtime filters: RF002 -> d.d_month_seq
-| row-size=8B cardinality=73.05K
-|
-10:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: c.c_current_addr_sk = a.ca_address_sk
-| runtime filters: RF008 <- a.ca_address_sk
-| row-size=42B cardinality=2.88M
-|
-|--18:EXCHANGE [BROADCAST]
-| |
-| 00:SCAN HDFS [tpcds.customer_address a]
-| HDFS partitions=1/1 files=1 size=5.25MB
-| row-size=18B cardinality=50.00K
-|
-09:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: s.ss_customer_sk = c.c_customer_sk
-| runtime filters: RF010 <- c.c_customer_sk
-| row-size=24B cardinality=2.88M
-|
-|--17:EXCHANGE [BROADCAST]
-| |
-| 01:SCAN HDFS [tpcds.customer c]
-| HDFS partitions=1/1 files=1 size=12.60MB
-| runtime filters: RF008 -> c.c_current_addr_sk
-| row-size=8B cardinality=100.00K
-|
-02:SCAN HDFS [tpcds.store_sales s]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF004 -> s.ss_item_sk, RF006 -> s.ss_sold_date_sk, RF010 -> s.ss_customer_sk
- row-size=16B cardinality=2.88M
----- PARALLELPLANS
-Max Per-Host Resource Reservation: Memory=115.00MB Threads=20
-Per-Host Resource Estimates: Memory=270MB
-PLAN-ROOT SINK
-|
-30:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: count(*) ASC
-| limit: 100
-|
-16:TOP-N [LIMIT=100]
-| order by: count(*) ASC
-| row-size=22B cardinality=5
-|
-29:AGGREGATE [FINALIZE]
-| output: count:merge(*)
-| group by: a.ca_state
-| having: count(*) >= 10
-| row-size=22B cardinality=5
-|
-28:EXCHANGE [HASH(a.ca_state)]
-|
-15:AGGREGATE [STREAMING]
-| output: count(*)
-| group by: a.ca_state
-| row-size=22B cardinality=51
-|
-14:HASH JOIN [LEFT SEMI JOIN, BROADCAST]
-| hash predicates: i.i_category = j.i_category
-| other join predicates: i.i_current_price > 1.2 * avg(j.i_current_price)
-| row-size=80B cardinality=1.19K
-|
-|--JOIN BUILD
-| | join-table-id=00 plan-id=01 cohort-id=01
-| | build expressions: j.i_category
-| | runtime filters: RF000 <- j.i_category
-| |
-| 27:EXCHANGE [BROADCAST]
-| |
-| 26:AGGREGATE [FINALIZE]
-| | output: avg:merge(j.i_current_price)
-| | group by: j.i_category
-| | row-size=26B cardinality=10
-| |
-| 25:EXCHANGE [HASH(j.i_category)]
-| |
-| 08:AGGREGATE [STREAMING]
-| | output: avg(j.i_current_price)
-| | group by: j.i_category
-| | row-size=26B cardinality=10
-| |
-| 07:SCAN HDFS [tpcds.item j]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| row-size=22B cardinality=18.00K
-|
-13:HASH JOIN [LEFT SEMI JOIN, BROADCAST]
-| hash predicates: d.d_month_seq = (d_month_seq)
-| row-size=80B cardinality=1.19K
-|
-|--JOIN BUILD
-| | join-table-id=01 plan-id=02 cohort-id=01
-| | build expressions: (d_month_seq)
-| | runtime filters: RF002 <- (d_month_seq)
-| |
-| 24:EXCHANGE [BROADCAST]
-| |
-| 23:EXCHANGE [UNPARTITIONED]
-| | limit: 1
-| |
-| 22:AGGREGATE [FINALIZE]
-| | group by: (d_month_seq)
-| | limit: 1
-| | row-size=4B cardinality=1
-| |
-| 21:EXCHANGE [HASH((d_month_seq))]
-| |
-| 06:AGGREGATE [STREAMING]
-| | group by: (d_month_seq)
-| | row-size=4B cardinality=108
-| |
-| 05:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: d_year = 1999, d_moy = 1
-| row-size=12B cardinality=108
-|
-12:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: s.ss_item_sk = i.i_item_sk
-| row-size=80B cardinality=2.88M
-|
-|--JOIN BUILD
-| | join-table-id=02 plan-id=03 cohort-id=01
-| | build expressions: i.i_item_sk
-| | runtime filters: RF004 <- i.i_item_sk
-| |
-| 20:EXCHANGE [BROADCAST]
-| |
-| 04:SCAN HDFS [tpcds.item i]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| runtime filters: RF000 -> i.i_category
-| row-size=30B cardinality=18.00K
-|
-11:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: s.ss_sold_date_sk = d.d_date_sk
-| row-size=50B cardinality=2.88M
-|
-|--JOIN BUILD
-| | join-table-id=03 plan-id=04 cohort-id=01
-| | build expressions: d.d_date_sk
-| | runtime filters: RF006 <- d.d_date_sk
-| |
-| 19:EXCHANGE [BROADCAST]
-| |
-| 03:SCAN HDFS [tpcds.date_dim d]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| runtime filters: RF002 -> d.d_month_seq
-| row-size=8B cardinality=73.05K
-|
-10:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: c.c_current_addr_sk = a.ca_address_sk
-| row-size=42B cardinality=2.88M
-|
-|--JOIN BUILD
-| | join-table-id=04 plan-id=05 cohort-id=01
-| | build expressions: a.ca_address_sk
-| | runtime filters: RF008 <- a.ca_address_sk
-| |
-| 18:EXCHANGE [BROADCAST]
-| |
-| 00:SCAN HDFS [tpcds.customer_address a]
-| HDFS partitions=1/1 files=1 size=5.25MB
-| row-size=18B cardinality=50.00K
-|
-09:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: s.ss_customer_sk = c.c_customer_sk
-| row-size=24B cardinality=2.88M
-|
-|--JOIN BUILD
-| | join-table-id=05 plan-id=06 cohort-id=01
-| | build expressions: c.c_customer_sk
-| | runtime filters: RF010 <- c.c_customer_sk
-| |
-| 17:EXCHANGE [BROADCAST]
-| |
-| 01:SCAN HDFS [tpcds.customer c]
-| HDFS partitions=1/1 files=1 size=12.60MB
-| runtime filters: RF008 -> c.c_current_addr_sk
-| row-size=8B cardinality=100.00K
-|
-02:SCAN HDFS [tpcds.store_sales s]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF004 -> s.ss_item_sk, RF006 -> s.ss_sold_date_sk, RF010 -> s.ss_customer_sk
- row-size=16B cardinality=2.88M
-====
-# TPCDS-Q47
-with v1 as (
- select i_category, i_brand,
- s_store_name, s_company_name,
- d_year, d_moy,
- sum(ss_sales_price) sum_sales,
- avg(sum(ss_sales_price)) over
- (partition by i_category, i_brand,
- s_store_name, s_company_name, d_year)
- avg_monthly_sales,
- rank() over
- (partition by i_category, i_brand,
- s_store_name, s_company_name
- order by d_year, d_moy) rn
- from item, store_sales, date_dim, store
- where ss_item_sk = i_item_sk and
- ss_sold_date_sk = d_date_sk and
- ss_store_sk = s_store_sk and
- (
- d_year = 2000 or
- ( d_year = 2000-1 and d_moy =12) or
- ( d_year = 2000+1 and d_moy =1)
- )
- group by i_category, i_brand,
- s_store_name, s_company_name,
- d_year, d_moy),
- v2 as(
- select v1.i_category, v1.i_brand
- ,v1.d_year
- ,v1.avg_monthly_sales
- ,v1.sum_sales, v1_lag.sum_sales psum, v1_lead.sum_sales nsum
- from v1, v1 v1_lag, v1 v1_lead
- where v1.i_category = v1_lag.i_category and
- v1.i_category = v1_lead.i_category and
- v1.i_brand = v1_lag.i_brand and
- v1.i_brand = v1_lead.i_brand and
- v1.s_store_name = v1_lag.s_store_name and
- v1.s_store_name = v1_lead.s_store_name and
- v1.s_company_name = v1_lag.s_company_name and
- v1.s_company_name = v1_lead.s_company_name and
- v1.rn = v1_lag.rn + 1 and
- v1.rn = v1_lead.rn - 1)
- select * from ( select *
- from v2
- where d_year = 2000 and
- avg_monthly_sales > 0 and
- case when avg_monthly_sales > 0 then abs(sum_sales - avg_monthly_sales) / avg_monthly_sales else null end > 0.1
- order by sum_sales - avg_monthly_sales, d_year
- limit 100
- ) as v3
----- PLAN
-Max Per-Host Resource Reservation: Memory=168.44MB Threads=13
-Per-Host Resource Estimates: Memory=762MB
-PLAN-ROOT SINK
-|
-35:TOP-N [LIMIT=100]
-| order by: sum_sales - avg_monthly_sales ASC, d_year ASC
-| row-size=114B cardinality=100
-|
-34:HASH JOIN [INNER JOIN]
-| hash predicates: rank() = rank() - 1, s_store_name = s_store_name, i_category = i_category, s_company_name = s_company_name, i_brand = i_brand
-| row-size=356B cardinality=1.09G
-|
-|--32:ANALYTIC
-| | functions: rank()
-| | partition by: i_category, i_brand, s_store_name, s_company_name
-| | order by: d_year ASC, d_moy ASC
-| | window: RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW
-| | row-size=113B cardinality=685.36K
-| |
-| 31:SORT
-| | order by: i_category ASC NULLS LAST, i_brand ASC NULLS LAST, s_store_name ASC NULLS LAST, s_company_name ASC NULLS LAST, d_year ASC, d_moy ASC
-| | row-size=105B cardinality=685.36K
-| |
-| 30:AGGREGATE [FINALIZE]
-| | output: sum(ss_sales_price)
-| | group by: i_category, i_brand, s_store_name, s_company_name, d_year, d_moy
-| | row-size=105B cardinality=685.36K
-| |
-| 29:HASH JOIN [INNER JOIN]
-| | hash predicates: ss_store_sk = s_store_sk
-| | runtime filters: RF012 <- s_store_sk
-| | row-size=125B cardinality=685.36K
-| |
-| |--26:SCAN HDFS [tpcds.store]
-| | HDFS partitions=1/1 files=1 size=3.08KB
-| | row-size=39B cardinality=12
-| |
-| 28:HASH JOIN [INNER JOIN]
-| | hash predicates: ss_item_sk = i_item_sk
-| | runtime filters: RF014 <- i_item_sk
-| | row-size=86B cardinality=685.36K
-| |
-| |--23:SCAN HDFS [tpcds.item]
-| | HDFS partitions=1/1 files=1 size=4.82MB
-| | row-size=54B cardinality=18.00K
-| |
-| 27:HASH JOIN [INNER JOIN]
-| | hash predicates: ss_sold_date_sk = d_date_sk
-| | runtime filters: RF016 <- d_date_sk
-| | row-size=32B cardinality=685.36K
-| |
-| |--25:SCAN HDFS [tpcds.date_dim]
-| | HDFS partitions=1/1 files=1 size=9.84MB
-| | predicates: (d_year = 2000 OR (d_year = 1999 AND d_moy = 12) OR (d_year = 2001 AND d_moy = 1))
-| | row-size=12B cardinality=434
-| |
-| 24:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| runtime filters: RF012 -> ss_store_sk, RF014 -> ss_item_sk, RF016 -> ss_sold_date_sk
-| row-size=20B cardinality=2.88M
-|
-33:HASH JOIN [INNER JOIN]
-| hash predicates: rank() + 1 = rank(), s_store_name = s_store_name, i_category = i_category, s_company_name = s_company_name, i_brand = i_brand
-| row-size=243B cardinality=1.10M
-|
-|--12:SELECT
-| | predicates: d_year = 2000, avg(sum(ss_sales_price)) > 0, CASE WHEN avg(sum(ss_sales_price)) > 0 THEN abs(sum(ss_sales_price) - avg(sum(ss_sales_price))) / avg(sum(ss_sales_price)) ELSE NULL END > 0.1
-| | row-size=129B cardinality=1.11K
-| |
-| 11:ANALYTIC
-| | functions: avg(sum(ss_sales_price))
-| | partition by: i_category, i_brand, s_store_name, s_company_name, d_year
-| | row-size=129B cardinality=685.36K
-| |
-| 10:SORT
-| | order by: i_category ASC NULLS LAST, i_brand ASC NULLS LAST, s_store_name ASC NULLS LAST, s_company_name ASC NULLS LAST, d_year ASC NULLS LAST
-| | row-size=113B cardinality=685.36K
-| |
-| 09:ANALYTIC
-| | functions: rank()
-| | partition by: i_category, i_brand, s_store_name, s_company_name
-| | order by: d_year ASC, d_moy ASC
-| | window: RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW
-| | row-size=113B cardinality=685.36K
-| |
-| 08:SORT
-| | order by: i_category ASC NULLS LAST, i_brand ASC NULLS LAST, s_store_name ASC NULLS LAST, s_company_name ASC NULLS LAST, d_year ASC, d_moy ASC
-| | row-size=105B cardinality=685.36K
-| |
-| 07:AGGREGATE [FINALIZE]
-| | output: sum(ss_sales_price)
-| | group by: i_category, i_brand, s_store_name, s_company_name, d_year, d_moy
-| | row-size=105B cardinality=685.36K
-| |
-| 06:HASH JOIN [INNER JOIN]
-| | hash predicates: ss_store_sk = s_store_sk
-| | runtime filters: RF006 <- s_store_sk
-| | row-size=125B cardinality=685.36K
-| |
-| |--03:SCAN HDFS [tpcds.store]
-| | HDFS partitions=1/1 files=1 size=3.08KB
-| | row-size=39B cardinality=12
-| |
-| 05:HASH JOIN [INNER JOIN]
-| | hash predicates: ss_item_sk = i_item_sk
-| | runtime filters: RF008 <- i_item_sk
-| | row-size=86B cardinality=685.36K
-| |
-| |--00:SCAN HDFS [tpcds.item]
-| | HDFS partitions=1/1 files=1 size=4.82MB
-| | row-size=54B cardinality=18.00K
-| |
-| 04:HASH JOIN [INNER JOIN]
-| | hash predicates: ss_sold_date_sk = d_date_sk
-| | runtime filters: RF010 <- d_date_sk
-| | row-size=32B cardinality=685.36K
-| |
-| |--02:SCAN HDFS [tpcds.date_dim]
-| | HDFS partitions=1/1 files=1 size=9.84MB
-| | predicates: (d_year = 2000 OR (d_year = 1999 AND d_moy = 12) OR (d_year = 2001 AND d_moy = 1))
-| | row-size=12B cardinality=434
-| |
-| 01:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| runtime filters: RF006 -> ss_store_sk, RF008 -> ss_item_sk, RF010 -> ss_sold_date_sk
-| row-size=20B cardinality=2.88M
-|
-22:ANALYTIC
-| functions: rank()
-| partition by: i_category, i_brand, s_store_name, s_company_name
-| order by: d_year ASC, d_moy ASC
-| window: RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW
-| row-size=113B cardinality=685.36K
-|
-21:SORT
-| order by: i_category ASC NULLS LAST, i_brand ASC NULLS LAST, s_store_name ASC NULLS LAST, s_company_name ASC NULLS LAST, d_year ASC, d_moy ASC
-| row-size=105B cardinality=685.36K
-|
-20:AGGREGATE [FINALIZE]
-| output: sum(ss_sales_price)
-| group by: i_category, i_brand, s_store_name, s_company_name, d_year, d_moy
-| row-size=105B cardinality=685.36K
-|
-19:HASH JOIN [INNER JOIN]
-| hash predicates: ss_store_sk = s_store_sk
-| runtime filters: RF000 <- s_store_sk
-| row-size=125B cardinality=685.36K
-|
-|--16:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| row-size=39B cardinality=12
-|
-18:HASH JOIN [INNER JOIN]
-| hash predicates: ss_item_sk = i_item_sk
-| runtime filters: RF002 <- i_item_sk
-| row-size=86B cardinality=685.36K
-|
-|--13:SCAN HDFS [tpcds.item]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| row-size=54B cardinality=18.00K
-|
-17:HASH JOIN [INNER JOIN]
-| hash predicates: ss_sold_date_sk = d_date_sk
-| runtime filters: RF004 <- d_date_sk
-| row-size=32B cardinality=685.36K
-|
-|--15:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: (d_year = 2000 OR (d_year = 1999 AND d_moy = 12) OR (d_year = 2001 AND d_moy = 1))
-| row-size=12B cardinality=434
-|
-14:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF000 -> ss_store_sk, RF002 -> ss_item_sk, RF004 -> ss_sold_date_sk
- row-size=20B cardinality=2.88M
----- DISTRIBUTEDPLAN
-Max Per-Host Resource Reservation: Memory=390.40MB Threads=29
-Per-Host Resource Estimates: Memory=1.06GB
-PLAN-ROOT SINK
-|
-54:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: sum_sales - avg_monthly_sales ASC, d_year ASC
-| limit: 100
-|
-35:TOP-N [LIMIT=100]
-| order by: sum_sales - avg_monthly_sales ASC, d_year ASC
-| row-size=114B cardinality=100
-|
-34:HASH JOIN [INNER JOIN, PARTITIONED]
-| hash predicates: rank() = rank() - 1, s_store_name = s_store_name, i_category = i_category, s_company_name = s_company_name, i_brand = i_brand
-| row-size=356B cardinality=1.09G
-|
-|--53:EXCHANGE [HASH(rank() - 1,s_store_name,i_category,s_company_name,i_brand)]
-| |
-| 32:ANALYTIC
-| | functions: rank()
-| | partition by: i_category, i_brand, s_store_name, s_company_name
-| | order by: d_year ASC, d_moy ASC
-| | window: RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW
-| | row-size=113B cardinality=685.36K
-| |
-| 31:SORT
-| | order by: i_category ASC NULLS LAST, i_brand ASC NULLS LAST, s_store_name ASC NULLS LAST, s_company_name ASC NULLS LAST, d_year ASC, d_moy ASC
-| | row-size=105B cardinality=685.36K
-| |
-| 51:AGGREGATE [FINALIZE]
-| | output: sum:merge(ss_sales_price)
-| | group by: i_category, i_brand, s_store_name, s_company_name, d_year, d_moy
-| | row-size=105B cardinality=685.36K
-| |
-| 50:EXCHANGE [HASH(i_category,i_brand,s_store_name,s_company_name)]
-| |
-| 30:AGGREGATE [STREAMING]
-| | output: sum(ss_sales_price)
-| | group by: i_category, i_brand, s_store_name, s_company_name, d_year, d_moy
-| | row-size=105B cardinality=685.36K
-| |
-| 29:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_store_sk = s_store_sk
-| | runtime filters: RF012 <- s_store_sk
-| | row-size=125B cardinality=685.36K
-| |
-| |--49:EXCHANGE [BROADCAST]
-| | |
-| | 26:SCAN HDFS [tpcds.store]
-| | HDFS partitions=1/1 files=1 size=3.08KB
-| | row-size=39B cardinality=12
-| |
-| 28:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_item_sk = i_item_sk
-| | runtime filters: RF014 <- i_item_sk
-| | row-size=86B cardinality=685.36K
-| |
-| |--48:EXCHANGE [BROADCAST]
-| | |
-| | 23:SCAN HDFS [tpcds.item]
-| | HDFS partitions=1/1 files=1 size=4.82MB
-| | row-size=54B cardinality=18.00K
-| |
-| 27:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_sold_date_sk = d_date_sk
-| | runtime filters: RF016 <- d_date_sk
-| | row-size=32B cardinality=685.36K
-| |
-| |--47:EXCHANGE [BROADCAST]
-| | |
-| | 25:SCAN HDFS [tpcds.date_dim]
-| | HDFS partitions=1/1 files=1 size=9.84MB
-| | predicates: (d_year = 2000 OR (d_year = 1999 AND d_moy = 12) OR (d_year = 2001 AND d_moy = 1))
-| | row-size=12B cardinality=434
-| |
-| 24:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| runtime filters: RF012 -> ss_store_sk, RF014 -> ss_item_sk, RF016 -> ss_sold_date_sk
-| row-size=20B cardinality=2.88M
-|
-52:EXCHANGE [HASH(rank(),s_store_name,i_category,s_company_name,i_brand)]
-|
-33:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: rank() + 1 = rank(), s_store_name = s_store_name, i_category = i_category, s_company_name = s_company_name, i_brand = i_brand
-| row-size=243B cardinality=1.10M
-|
-|--46:EXCHANGE [BROADCAST]
-| |
-| 12:SELECT
-| | predicates: d_year = 2000, avg(sum(ss_sales_price)) > 0, CASE WHEN avg(sum(ss_sales_price)) > 0 THEN abs(sum(ss_sales_price) - avg(sum(ss_sales_price))) / avg(sum(ss_sales_price)) ELSE NULL END > 0.1
-| | row-size=129B cardinality=1.11K
-| |
-| 11:ANALYTIC
-| | functions: avg(sum(ss_sales_price))
-| | partition by: i_category, i_brand, s_store_name, s_company_name, d_year
-| | row-size=129B cardinality=685.36K
-| |
-| 10:SORT
-| | order by: i_category ASC NULLS LAST, i_brand ASC NULLS LAST, s_store_name ASC NULLS LAST, s_company_name ASC NULLS LAST, d_year ASC NULLS LAST
-| | row-size=113B cardinality=685.36K
-| |
-| 09:ANALYTIC
-| | functions: rank()
-| | partition by: i_category, i_brand, s_store_name, s_company_name
-| | order by: d_year ASC, d_moy ASC
-| | window: RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW
-| | row-size=113B cardinality=685.36K
-| |
-| 08:SORT
-| | order by: i_category ASC NULLS LAST, i_brand ASC NULLS LAST, s_store_name ASC NULLS LAST, s_company_name ASC NULLS LAST, d_year ASC, d_moy ASC
-| | row-size=105B cardinality=685.36K
-| |
-| 45:AGGREGATE [FINALIZE]
-| | output: sum:merge(ss_sales_price)
-| | group by: i_category, i_brand, s_store_name, s_company_name, d_year, d_moy
-| | row-size=105B cardinality=685.36K
-| |
-| 44:EXCHANGE [HASH(i_category,i_brand,s_store_name,s_company_name)]
-| |
-| 07:AGGREGATE [STREAMING]
-| | output: sum(ss_sales_price)
-| | group by: i_category, i_brand, s_store_name, s_company_name, d_year, d_moy
-| | row-size=105B cardinality=685.36K
-| |
-| 06:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_store_sk = s_store_sk
-| | runtime filters: RF006 <- s_store_sk
-| | row-size=125B cardinality=685.36K
-| |
-| |--43:EXCHANGE [BROADCAST]
-| | |
-| | 03:SCAN HDFS [tpcds.store]
-| | HDFS partitions=1/1 files=1 size=3.08KB
-| | row-size=39B cardinality=12
-| |
-| 05:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_item_sk = i_item_sk
-| | runtime filters: RF008 <- i_item_sk
-| | row-size=86B cardinality=685.36K
-| |
-| |--42:EXCHANGE [BROADCAST]
-| | |
-| | 00:SCAN HDFS [tpcds.item]
-| | HDFS partitions=1/1 files=1 size=4.82MB
-| | row-size=54B cardinality=18.00K
-| |
-| 04:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_sold_date_sk = d_date_sk
-| | runtime filters: RF010 <- d_date_sk
-| | row-size=32B cardinality=685.36K
-| |
-| |--41:EXCHANGE [BROADCAST]
-| | |
-| | 02:SCAN HDFS [tpcds.date_dim]
-| | HDFS partitions=1/1 files=1 size=9.84MB
-| | predicates: (d_year = 2000 OR (d_year = 1999 AND d_moy = 12) OR (d_year = 2001 AND d_moy = 1))
-| | row-size=12B cardinality=434
-| |
-| 01:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| runtime filters: RF006 -> ss_store_sk, RF008 -> ss_item_sk, RF010 -> ss_sold_date_sk
-| row-size=20B cardinality=2.88M
-|
-22:ANALYTIC
-| functions: rank()
-| partition by: i_category, i_brand, s_store_name, s_company_name
-| order by: d_year ASC, d_moy ASC
-| window: RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW
-| row-size=113B cardinality=685.36K
-|
-21:SORT
-| order by: i_category ASC NULLS LAST, i_brand ASC NULLS LAST, s_store_name ASC NULLS LAST, s_company_name ASC NULLS LAST, d_year ASC, d_moy ASC
-| row-size=105B cardinality=685.36K
-|
-40:AGGREGATE [FINALIZE]
-| output: sum:merge(ss_sales_price)
-| group by: i_category, i_brand, s_store_name, s_company_name, d_year, d_moy
-| row-size=105B cardinality=685.36K
-|
-39:EXCHANGE [HASH(i_category,i_brand,s_store_name,s_company_name)]
-|
-20:AGGREGATE [STREAMING]
-| output: sum(ss_sales_price)
-| group by: i_category, i_brand, s_store_name, s_company_name, d_year, d_moy
-| row-size=105B cardinality=685.36K
-|
-19:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_store_sk = s_store_sk
-| runtime filters: RF000 <- s_store_sk
-| row-size=125B cardinality=685.36K
-|
-|--38:EXCHANGE [BROADCAST]
-| |
-| 16:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| row-size=39B cardinality=12
-|
-18:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_item_sk = i_item_sk
-| runtime filters: RF002 <- i_item_sk
-| row-size=86B cardinality=685.36K
-|
-|--37:EXCHANGE [BROADCAST]
-| |
-| 13:SCAN HDFS [tpcds.item]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| row-size=54B cardinality=18.00K
-|
-17:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_sold_date_sk = d_date_sk
-| runtime filters: RF004 <- d_date_sk
-| row-size=32B cardinality=685.36K
-|
-|--36:EXCHANGE [BROADCAST]
-| |
-| 15:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: (d_year = 2000 OR (d_year = 1999 AND d_moy = 12) OR (d_year = 2001 AND d_moy = 1))
-| row-size=12B cardinality=434
-|
-14:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF000 -> ss_store_sk, RF002 -> ss_item_sk, RF004 -> ss_sold_date_sk
- row-size=20B cardinality=2.88M
----- PARALLELPLANS
-Max Per-Host Resource Reservation: Memory=698.77MB Threads=36
-Per-Host Resource Estimates: Memory=915MB
-PLAN-ROOT SINK
-|
-54:MERGING-EXCHANGE [UNPARTITIONED]
-| order by: sum_sales - avg_monthly_sales ASC, d_year ASC
-| limit: 100
-|
-35:TOP-N [LIMIT=100]
-| order by: sum_sales - avg_monthly_sales ASC, d_year ASC
-| row-size=114B cardinality=100
-|
-34:HASH JOIN [INNER JOIN, PARTITIONED]
-| hash predicates: rank() = rank() - 1, s_store_name = s_store_name, i_category = i_category, s_company_name = s_company_name, i_brand = i_brand
-| row-size=356B cardinality=1.09G
-|
-|--JOIN BUILD
-| | join-table-id=00 plan-id=01 cohort-id=01
-| | build expressions: rank() - 1, s_store_name, i_category, s_company_name, i_brand
-| |
-| 53:EXCHANGE [HASH(rank() - 1,s_store_name,i_category,s_company_name,i_brand)]
-| |
-| 32:ANALYTIC
-| | functions: rank()
-| | partition by: i_category, i_brand, s_store_name, s_company_name
-| | order by: d_year ASC, d_moy ASC
-| | window: RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW
-| | row-size=113B cardinality=685.36K
-| |
-| 31:SORT
-| | order by: i_category ASC NULLS LAST, i_brand ASC NULLS LAST, s_store_name ASC NULLS LAST, s_company_name ASC NULLS LAST, d_year ASC, d_moy ASC
-| | row-size=105B cardinality=685.36K
-| |
-| 51:AGGREGATE [FINALIZE]
-| | output: sum:merge(ss_sales_price)
-| | group by: i_category, i_brand, s_store_name, s_company_name, d_year, d_moy
-| | row-size=105B cardinality=685.36K
-| |
-| 50:EXCHANGE [HASH(i_category,i_brand,s_store_name,s_company_name)]
-| |
-| 30:AGGREGATE [STREAMING]
-| | output: sum(ss_sales_price)
-| | group by: i_category, i_brand, s_store_name, s_company_name, d_year, d_moy
-| | row-size=105B cardinality=685.36K
-| |
-| 29:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_store_sk = s_store_sk
-| | row-size=125B cardinality=685.36K
-| |
-| |--JOIN BUILD
-| | | join-table-id=01 plan-id=02 cohort-id=02
-| | | build expressions: s_store_sk
-| | | runtime filters: RF012 <- s_store_sk
-| | |
-| | 49:EXCHANGE [BROADCAST]
-| | |
-| | 26:SCAN HDFS [tpcds.store]
-| | HDFS partitions=1/1 files=1 size=3.08KB
-| | row-size=39B cardinality=12
-| |
-| 28:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_item_sk = i_item_sk
-| | row-size=86B cardinality=685.36K
-| |
-| |--JOIN BUILD
-| | | join-table-id=02 plan-id=03 cohort-id=02
-| | | build expressions: i_item_sk
-| | | runtime filters: RF014 <- i_item_sk
-| | |
-| | 48:EXCHANGE [BROADCAST]
-| | |
-| | 23:SCAN HDFS [tpcds.item]
-| | HDFS partitions=1/1 files=1 size=4.82MB
-| | row-size=54B cardinality=18.00K
-| |
-| 27:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_sold_date_sk = d_date_sk
-| | row-size=32B cardinality=685.36K
-| |
-| |--JOIN BUILD
-| | | join-table-id=03 plan-id=04 cohort-id=02
-| | | build expressions: d_date_sk
-| | | runtime filters: RF016 <- d_date_sk
-| | |
-| | 47:EXCHANGE [BROADCAST]
-| | |
-| | 25:SCAN HDFS [tpcds.date_dim]
-| | HDFS partitions=1/1 files=1 size=9.84MB
-| | predicates: (d_year = 2000 OR (d_year = 1999 AND d_moy = 12) OR (d_year = 2001 AND d_moy = 1))
-| | row-size=12B cardinality=434
-| |
-| 24:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| runtime filters: RF012 -> ss_store_sk, RF014 -> ss_item_sk, RF016 -> ss_sold_date_sk
-| row-size=20B cardinality=2.88M
-|
-52:EXCHANGE [HASH(rank(),s_store_name,i_category,s_company_name,i_brand)]
-|
-33:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: rank() + 1 = rank(), s_store_name = s_store_name, i_category = i_category, s_company_name = s_company_name, i_brand = i_brand
-| row-size=243B cardinality=1.10M
-|
-|--JOIN BUILD
-| | join-table-id=04 plan-id=05 cohort-id=01
-| | build expressions: rank(), s_store_name, i_category, s_company_name, i_brand
-| |
-| 46:EXCHANGE [BROADCAST]
-| |
-| 12:SELECT
-| | predicates: d_year = 2000, avg(sum(ss_sales_price)) > 0, CASE WHEN avg(sum(ss_sales_price)) > 0 THEN abs(sum(ss_sales_price) - avg(sum(ss_sales_price))) / avg(sum(ss_sales_price)) ELSE NULL END > 0.1
-| | row-size=129B cardinality=1.11K
-| |
-| 11:ANALYTIC
-| | functions: avg(sum(ss_sales_price))
-| | partition by: i_category, i_brand, s_store_name, s_company_name, d_year
-| | row-size=129B cardinality=685.36K
-| |
-| 10:SORT
-| | order by: i_category ASC NULLS LAST, i_brand ASC NULLS LAST, s_store_name ASC NULLS LAST, s_company_name ASC NULLS LAST, d_year ASC NULLS LAST
-| | row-size=113B cardinality=685.36K
-| |
-| 09:ANALYTIC
-| | functions: rank()
-| | partition by: i_category, i_brand, s_store_name, s_company_name
-| | order by: d_year ASC, d_moy ASC
-| | window: RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW
-| | row-size=113B cardinality=685.36K
-| |
-| 08:SORT
-| | order by: i_category ASC NULLS LAST, i_brand ASC NULLS LAST, s_store_name ASC NULLS LAST, s_company_name ASC NULLS LAST, d_year ASC, d_moy ASC
-| | row-size=105B cardinality=685.36K
-| |
-| 45:AGGREGATE [FINALIZE]
-| | output: sum:merge(ss_sales_price)
-| | group by: i_category, i_brand, s_store_name, s_company_name, d_year, d_moy
-| | row-size=105B cardinality=685.36K
-| |
-| 44:EXCHANGE [HASH(i_category,i_brand,s_store_name,s_company_name)]
-| |
-| 07:AGGREGATE [STREAMING]
-| | output: sum(ss_sales_price)
-| | group by: i_category, i_brand, s_store_name, s_company_name, d_year, d_moy
-| | row-size=105B cardinality=685.36K
-| |
-| 06:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_store_sk = s_store_sk
-| | row-size=125B cardinality=685.36K
-| |
-| |--JOIN BUILD
-| | | join-table-id=05 plan-id=06 cohort-id=03
-| | | build expressions: s_store_sk
-| | | runtime filters: RF006 <- s_store_sk
-| | |
-| | 43:EXCHANGE [BROADCAST]
-| | |
-| | 03:SCAN HDFS [tpcds.store]
-| | HDFS partitions=1/1 files=1 size=3.08KB
-| | row-size=39B cardinality=12
-| |
-| 05:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_item_sk = i_item_sk
-| | row-size=86B cardinality=685.36K
-| |
-| |--JOIN BUILD
-| | | join-table-id=06 plan-id=07 cohort-id=03
-| | | build expressions: i_item_sk
-| | | runtime filters: RF008 <- i_item_sk
-| | |
-| | 42:EXCHANGE [BROADCAST]
-| | |
-| | 00:SCAN HDFS [tpcds.item]
-| | HDFS partitions=1/1 files=1 size=4.82MB
-| | row-size=54B cardinality=18.00K
-| |
-| 04:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_sold_date_sk = d_date_sk
-| | row-size=32B cardinality=685.36K
-| |
-| |--JOIN BUILD
-| | | join-table-id=07 plan-id=08 cohort-id=03
-| | | build expressions: d_date_sk
-| | | runtime filters: RF010 <- d_date_sk
-| | |
-| | 41:EXCHANGE [BROADCAST]
-| | |
-| | 02:SCAN HDFS [tpcds.date_dim]
-| | HDFS partitions=1/1 files=1 size=9.84MB
-| | predicates: (d_year = 2000 OR (d_year = 1999 AND d_moy = 12) OR (d_year = 2001 AND d_moy = 1))
-| | row-size=12B cardinality=434
-| |
-| 01:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| runtime filters: RF006 -> ss_store_sk, RF008 -> ss_item_sk, RF010 -> ss_sold_date_sk
-| row-size=20B cardinality=2.88M
-|
-22:ANALYTIC
-| functions: rank()
-| partition by: i_category, i_brand, s_store_name, s_company_name
-| order by: d_year ASC, d_moy ASC
-| window: RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW
-| row-size=113B cardinality=685.36K
-|
-21:SORT
-| order by: i_category ASC NULLS LAST, i_brand ASC NULLS LAST, s_store_name ASC NULLS LAST, s_company_name ASC NULLS LAST, d_year ASC, d_moy ASC
-| row-size=105B cardinality=685.36K
-|
-40:AGGREGATE [FINALIZE]
-| output: sum:merge(ss_sales_price)
-| group by: i_category, i_brand, s_store_name, s_company_name, d_year, d_moy
-| row-size=105B cardinality=685.36K
-|
-39:EXCHANGE [HASH(i_category,i_brand,s_store_name,s_company_name)]
-|
-20:AGGREGATE [STREAMING]
-| output: sum(ss_sales_price)
-| group by: i_category, i_brand, s_store_name, s_company_name, d_year, d_moy
-| row-size=105B cardinality=685.36K
-|
-19:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_store_sk = s_store_sk
-| row-size=125B cardinality=685.36K
-|
-|--JOIN BUILD
-| | join-table-id=08 plan-id=09 cohort-id=01
-| | build expressions: s_store_sk
-| | runtime filters: RF000 <- s_store_sk
-| |
-| 38:EXCHANGE [BROADCAST]
-| |
-| 16:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| row-size=39B cardinality=12
-|
-18:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_item_sk = i_item_sk
-| row-size=86B cardinality=685.36K
-|
-|--JOIN BUILD
-| | join-table-id=09 plan-id=10 cohort-id=01
-| | build expressions: i_item_sk
-| | runtime filters: RF002 <- i_item_sk
-| |
-| 37:EXCHANGE [BROADCAST]
-| |
-| 13:SCAN HDFS [tpcds.item]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| row-size=54B cardinality=18.00K
-|
-17:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_sold_date_sk = d_date_sk
-| row-size=32B cardinality=685.36K
-|
-|--JOIN BUILD
-| | join-table-id=10 plan-id=11 cohort-id=01
-| | build expressions: d_date_sk
-| | runtime filters: RF004 <- d_date_sk
-| |
-| 36:EXCHANGE [BROADCAST]
-| |
-| 15:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: (d_year = 2000 OR (d_year = 1999 AND d_moy = 12) OR (d_year = 2001 AND d_moy = 1))
-| row-size=12B cardinality=434
-|
-14:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF000 -> ss_store_sk, RF002 -> ss_item_sk, RF004 -> ss_sold_date_sk
- row-size=20B cardinality=2.88M
-====
-# TPCDS-Q66
-select promotions,total,cast(promotions as decimal(15,4))/cast(total as decimal(15,4))*100
-from
- (select sum(ss_ext_sales_price) promotions
- from store_sales
- ,store
- ,promotion
- ,date_dim
- ,customer
- ,customer_address
- ,item
- where ss_sold_date_sk = d_date_sk
- and ss_store_sk = s_store_sk
- and ss_promo_sk = p_promo_sk
- and ss_customer_sk= c_customer_sk
- and ca_address_sk = c_current_addr_sk
- and ss_item_sk = i_item_sk
- and ca_gmt_offset = -5
- and i_category = 'Books'
- and (p_channel_dmail = 'Y' or p_channel_email = 'Y' or p_channel_tv = 'Y')
- and s_gmt_offset = -5
- and d_year = 2000
- and d_moy = 11) promotional_sales,
- (select sum(ss_ext_sales_price) total
- from store_sales
- ,store
- ,date_dim
- ,customer
- ,customer_address
- ,item
- where ss_sold_date_sk = d_date_sk
- and ss_store_sk = s_store_sk
- and ss_customer_sk= c_customer_sk
- and ca_address_sk = c_current_addr_sk
- and ss_item_sk = i_item_sk
- and ca_gmt_offset = -5
- and i_category = 'Books'
- and s_gmt_offset = -5
- and d_year = 2000
- and d_moy = 11) all_sales
-order by promotions, total
----- PLAN
-Max Per-Host Resource Reservation: Memory=111.39MB Threads=14
-Per-Host Resource Estimates: Memory=703MB
-PLAN-ROOT SINK
-|
-27:SORT
-| order by: promotions ASC, total ASC
-| row-size=32B cardinality=1
-|
-26:NESTED LOOP JOIN [CROSS JOIN]
-| row-size=32B cardinality=1
-|
-|--25:AGGREGATE [FINALIZE]
-| | output: sum(ss_ext_sales_price)
-| | row-size=16B cardinality=1
-| |
-| 24:HASH JOIN [INNER JOIN]
-| | hash predicates: c_current_addr_sk = ca_address_sk
-| | runtime filters: RF012 <- ca_address_sk
-| | row-size=86B cardinality=3.30K
-| |
-| |--18:SCAN HDFS [tpcds.customer_address]
-| | HDFS partitions=1/1 files=1 size=5.25MB
-| | predicates: ca_gmt_offset = -5
-| | row-size=8B cardinality=8.33K
-| |
-| 23:HASH JOIN [INNER JOIN]
-| | hash predicates: ss_customer_sk = c_customer_sk
-| | runtime filters: RF014 <- c_customer_sk
-| | row-size=78B cardinality=17.06K
-| |
-| |--17:SCAN HDFS [tpcds.customer]
-| | HDFS partitions=1/1 files=1 size=12.60MB
-| | runtime filters: RF012 -> c_current_addr_sk
-| | row-size=8B cardinality=100.00K
-| |
-| 22:HASH JOIN [INNER JOIN]
-| | hash predicates: ss_store_sk = s_store_sk
-| | row-size=70B cardinality=17.06K
-| |
-| |--15:SCAN HDFS [tpcds.store]
-| | HDFS partitions=1/1 files=1 size=3.08KB
-| | predicates: s_gmt_offset = -5
-| | row-size=8B cardinality=12
-| |
-| 21:HASH JOIN [INNER JOIN]
-| | hash predicates: ss_item_sk = i_item_sk
-| | runtime filters: RF018 <- i_item_sk
-| | row-size=62B cardinality=17.06K
-| |
-| |--19:SCAN HDFS [tpcds.item]
-| | HDFS partitions=1/1 files=1 size=4.82MB
-| | predicates: i_category = 'Books'
-| | row-size=26B cardinality=1.80K
-| |
-| 20:HASH JOIN [INNER JOIN]
-| | hash predicates: ss_sold_date_sk = d_date_sk
-| | runtime filters: RF020 <- d_date_sk
-| | row-size=36B cardinality=170.55K
-| |
-| |--16:SCAN HDFS [tpcds.date_dim]
-| | HDFS partitions=1/1 files=1 size=9.84MB
-| | predicates: d_year = 2000, d_moy = 11
-| | row-size=12B cardinality=108
-| |
-| 14:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| runtime filters: RF020 -> ss_sold_date_sk, RF018 -> ss_item_sk, RF014 -> ss_customer_sk
-| row-size=24B cardinality=2.88M
-|
-13:AGGREGATE [FINALIZE]
-| output: sum(ss_ext_sales_price)
-| row-size=16B cardinality=1
-|
-12:HASH JOIN [INNER JOIN]
-| hash predicates: c_current_addr_sk = ca_address_sk
-| runtime filters: RF000 <- ca_address_sk
-| row-size=133B cardinality=3.28K
-|
-|--05:SCAN HDFS [tpcds.customer_address]
-| HDFS partitions=1/1 files=1 size=5.25MB
-| predicates: ca_gmt_offset = -5
-| row-size=8B cardinality=8.33K
-|
-11:HASH JOIN [INNER JOIN]
-| hash predicates: ss_customer_sk = c_customer_sk
-| runtime filters: RF002 <- c_customer_sk
-| row-size=125B cardinality=16.94K
-|
-|--04:SCAN HDFS [tpcds.customer]
-| HDFS partitions=1/1 files=1 size=12.60MB
-| runtime filters: RF000 -> c_current_addr_sk
-| row-size=8B cardinality=100.00K
-|
-10:HASH JOIN [INNER JOIN]
-| hash predicates: ss_store_sk = s_store_sk
-| runtime filters: RF004 <- s_store_sk
-| row-size=117B cardinality=16.94K
-|
-|--01:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| predicates: s_gmt_offset = -5
-| row-size=8B cardinality=12
-|
-09:HASH JOIN [INNER JOIN]
-| hash predicates: ss_promo_sk = p_promo_sk
-| runtime filters: RF006 <- p_promo_sk
-| row-size=109B cardinality=16.94K
-|
-|--02:SCAN HDFS [tpcds.promotion]
-| HDFS partitions=1/1 files=1 size=36.36KB
-| predicates: (p_channel_dmail = 'Y' OR p_channel_email = 'Y' OR p_channel_tv = 'Y')
-| row-size=43B cardinality=300
-|
-08:HASH JOIN [INNER JOIN]
-| hash predicates: ss_item_sk = i_item_sk
-| runtime filters: RF008 <- i_item_sk
-| row-size=66B cardinality=17.06K
-|
-|--06:SCAN HDFS [tpcds.item]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| predicates: i_category = 'Books'
-| row-size=26B cardinality=1.80K
-|
-07:HASH JOIN [INNER JOIN]
-| hash predicates: ss_sold_date_sk = d_date_sk
-| runtime filters: RF010 <- d_date_sk
-| row-size=40B cardinality=170.55K
-|
-|--03:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: d_year = 2000, d_moy = 11
-| row-size=12B cardinality=108
-|
-00:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF010 -> ss_sold_date_sk, RF008 -> ss_item_sk, RF006 -> ss_promo_sk, RF002 -> ss_customer_sk, RF004 -> ss_store_sk
- row-size=28B cardinality=2.88M
----- DISTRIBUTEDPLAN
-Max Per-Host Resource Reservation: Memory=121.39MB Threads=30
-Per-Host Resource Estimates: Memory=755MB
-PLAN-ROOT SINK
-|
-27:SORT
-| order by: promotions ASC, total ASC
-| row-size=32B cardinality=1
-|
-26:NESTED LOOP JOIN [CROSS JOIN, BROADCAST]
-| row-size=32B cardinality=1
-|
-|--45:EXCHANGE [UNPARTITIONED]
-| |
-| 44:AGGREGATE [FINALIZE]
-| | output: sum:merge(ss_ext_sales_price)
-| | row-size=16B cardinality=1
-| |
-| 43:EXCHANGE [UNPARTITIONED]
-| |
-| 25:AGGREGATE
-| | output: sum(ss_ext_sales_price)
-| | row-size=16B cardinality=1
-| |
-| 24:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: c_current_addr_sk = ca_address_sk
-| | runtime filters: RF012 <- ca_address_sk
-| | row-size=86B cardinality=3.30K
-| |
-| |--42:EXCHANGE [BROADCAST]
-| | |
-| | 18:SCAN HDFS [tpcds.customer_address]
-| | HDFS partitions=1/1 files=1 size=5.25MB
-| | predicates: ca_gmt_offset = -5
-| | row-size=8B cardinality=8.33K
-| |
-| 23:HASH JOIN [INNER JOIN, PARTITIONED]
-| | hash predicates: ss_customer_sk = c_customer_sk
-| | runtime filters: RF014 <- c_customer_sk
-| | row-size=78B cardinality=17.06K
-| |
-| |--41:EXCHANGE [HASH(c_customer_sk)]
-| | |
-| | 17:SCAN HDFS [tpcds.customer]
-| | HDFS partitions=1/1 files=1 size=12.60MB
-| | runtime filters: RF012 -> c_current_addr_sk
-| | row-size=8B cardinality=100.00K
-| |
-| 40:EXCHANGE [HASH(ss_customer_sk)]
-| |
-| 22:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_store_sk = s_store_sk
-| | row-size=70B cardinality=17.06K
-| |
-| |--39:EXCHANGE [BROADCAST]
-| | |
-| | 15:SCAN HDFS [tpcds.store]
-| | HDFS partitions=1/1 files=1 size=3.08KB
-| | predicates: s_gmt_offset = -5
-| | row-size=8B cardinality=12
-| |
-| 21:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_item_sk = i_item_sk
-| | runtime filters: RF018 <- i_item_sk
-| | row-size=62B cardinality=17.06K
-| |
-| |--38:EXCHANGE [BROADCAST]
-| | |
-| | 19:SCAN HDFS [tpcds.item]
-| | HDFS partitions=1/1 files=1 size=4.82MB
-| | predicates: i_category = 'Books'
-| | row-size=26B cardinality=1.80K
-| |
-| 20:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_sold_date_sk = d_date_sk
-| | runtime filters: RF020 <- d_date_sk
-| | row-size=36B cardinality=170.55K
-| |
-| |--37:EXCHANGE [BROADCAST]
-| | |
-| | 16:SCAN HDFS [tpcds.date_dim]
-| | HDFS partitions=1/1 files=1 size=9.84MB
-| | predicates: d_year = 2000, d_moy = 11
-| | row-size=12B cardinality=108
-| |
-| 14:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| runtime filters: RF020 -> ss_sold_date_sk, RF018 -> ss_item_sk, RF014 -> ss_customer_sk
-| row-size=24B cardinality=2.88M
-|
-36:AGGREGATE [FINALIZE]
-| output: sum:merge(ss_ext_sales_price)
-| row-size=16B cardinality=1
-|
-35:EXCHANGE [UNPARTITIONED]
-|
-13:AGGREGATE
-| output: sum(ss_ext_sales_price)
-| row-size=16B cardinality=1
-|
-12:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: c_current_addr_sk = ca_address_sk
-| runtime filters: RF000 <- ca_address_sk
-| row-size=133B cardinality=3.28K
-|
-|--34:EXCHANGE [BROADCAST]
-| |
-| 05:SCAN HDFS [tpcds.customer_address]
-| HDFS partitions=1/1 files=1 size=5.25MB
-| predicates: ca_gmt_offset = -5
-| row-size=8B cardinality=8.33K
-|
-11:HASH JOIN [INNER JOIN, PARTITIONED]
-| hash predicates: ss_customer_sk = c_customer_sk
-| runtime filters: RF002 <- c_customer_sk
-| row-size=125B cardinality=16.94K
-|
-|--33:EXCHANGE [HASH(c_customer_sk)]
-| |
-| 04:SCAN HDFS [tpcds.customer]
-| HDFS partitions=1/1 files=1 size=12.60MB
-| runtime filters: RF000 -> c_current_addr_sk
-| row-size=8B cardinality=100.00K
-|
-32:EXCHANGE [HASH(ss_customer_sk)]
-|
-10:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_store_sk = s_store_sk
-| runtime filters: RF004 <- s_store_sk
-| row-size=117B cardinality=16.94K
-|
-|--31:EXCHANGE [BROADCAST]
-| |
-| 01:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| predicates: s_gmt_offset = -5
-| row-size=8B cardinality=12
-|
-09:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_promo_sk = p_promo_sk
-| runtime filters: RF006 <- p_promo_sk
-| row-size=109B cardinality=16.94K
-|
-|--30:EXCHANGE [BROADCAST]
-| |
-| 02:SCAN HDFS [tpcds.promotion]
-| HDFS partitions=1/1 files=1 size=36.36KB
-| predicates: (p_channel_dmail = 'Y' OR p_channel_email = 'Y' OR p_channel_tv = 'Y')
-| row-size=43B cardinality=300
-|
-08:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_item_sk = i_item_sk
-| runtime filters: RF008 <- i_item_sk
-| row-size=66B cardinality=17.06K
-|
-|--29:EXCHANGE [BROADCAST]
-| |
-| 06:SCAN HDFS [tpcds.item]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| predicates: i_category = 'Books'
-| row-size=26B cardinality=1.80K
-|
-07:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_sold_date_sk = d_date_sk
-| runtime filters: RF010 <- d_date_sk
-| row-size=40B cardinality=170.55K
-|
-|--28:EXCHANGE [BROADCAST]
-| |
-| 03:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: d_year = 2000, d_moy = 11
-| row-size=12B cardinality=108
-|
-00:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF010 -> ss_sold_date_sk, RF008 -> ss_item_sk, RF006 -> ss_promo_sk, RF002 -> ss_customer_sk, RF004 -> ss_store_sk
- row-size=28B cardinality=2.88M
----- PARALLELPLANS
-Max Per-Host Resource Reservation: Memory=166.70MB Threads=35
-Per-Host Resource Estimates: Memory=411MB
-PLAN-ROOT SINK
-|
-27:SORT
-| order by: promotions ASC, total ASC
-| row-size=32B cardinality=1
-|
-26:NESTED LOOP JOIN [CROSS JOIN, BROADCAST]
-| join table id: 00
-| row-size=32B cardinality=1
-|
-|--JOIN BUILD
-| | join-table-id=00 plan-id=01 cohort-id=01
-| |
-| 45:EXCHANGE [UNPARTITIONED]
-| |
-| 44:AGGREGATE [FINALIZE]
-| | output: sum:merge(ss_ext_sales_price)
-| | row-size=16B cardinality=1
-| |
-| 43:EXCHANGE [UNPARTITIONED]
-| |
-| 25:AGGREGATE
-| | output: sum(ss_ext_sales_price)
-| | row-size=16B cardinality=1
-| |
-| 24:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: c_current_addr_sk = ca_address_sk
-| | row-size=86B cardinality=3.30K
-| |
-| |--JOIN BUILD
-| | | join-table-id=01 plan-id=02 cohort-id=02
-| | | build expressions: ca_address_sk
-| | | runtime filters: RF012 <- ca_address_sk
-| | |
-| | 42:EXCHANGE [BROADCAST]
-| | |
-| | 18:SCAN HDFS [tpcds.customer_address]
-| | HDFS partitions=1/1 files=1 size=5.25MB
-| | predicates: ca_gmt_offset = -5
-| | row-size=8B cardinality=8.33K
-| |
-| 23:HASH JOIN [INNER JOIN, PARTITIONED]
-| | hash predicates: ss_customer_sk = c_customer_sk
-| | row-size=78B cardinality=17.06K
-| |
-| |--JOIN BUILD
-| | | join-table-id=02 plan-id=03 cohort-id=02
-| | | build expressions: c_customer_sk
-| | | runtime filters: RF014 <- c_customer_sk
-| | |
-| | 41:EXCHANGE [HASH(c_customer_sk)]
-| | |
-| | 17:SCAN HDFS [tpcds.customer]
-| | HDFS partitions=1/1 files=1 size=12.60MB
-| | runtime filters: RF012 -> c_current_addr_sk
-| | row-size=8B cardinality=100.00K
-| |
-| 40:EXCHANGE [HASH(ss_customer_sk)]
-| |
-| 22:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_store_sk = s_store_sk
-| | row-size=70B cardinality=17.06K
-| |
-| |--JOIN BUILD
-| | | join-table-id=03 plan-id=04 cohort-id=02
-| | | build expressions: s_store_sk
-| | |
-| | 39:EXCHANGE [BROADCAST]
-| | |
-| | 15:SCAN HDFS [tpcds.store]
-| | HDFS partitions=1/1 files=1 size=3.08KB
-| | predicates: s_gmt_offset = -5
-| | row-size=8B cardinality=12
-| |
-| 21:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_item_sk = i_item_sk
-| | row-size=62B cardinality=17.06K
-| |
-| |--JOIN BUILD
-| | | join-table-id=04 plan-id=05 cohort-id=02
-| | | build expressions: i_item_sk
-| | | runtime filters: RF018 <- i_item_sk
-| | |
-| | 38:EXCHANGE [BROADCAST]
-| | |
-| | 19:SCAN HDFS [tpcds.item]
-| | HDFS partitions=1/1 files=1 size=4.82MB
-| | predicates: i_category = 'Books'
-| | row-size=26B cardinality=1.80K
-| |
-| 20:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_sold_date_sk = d_date_sk
-| | row-size=36B cardinality=170.55K
-| |
-| |--JOIN BUILD
-| | | join-table-id=05 plan-id=06 cohort-id=02
-| | | build expressions: d_date_sk
-| | | runtime filters: RF020 <- d_date_sk
-| | |
-| | 37:EXCHANGE [BROADCAST]
-| | |
-| | 16:SCAN HDFS [tpcds.date_dim]
-| | HDFS partitions=1/1 files=1 size=9.84MB
-| | predicates: d_year = 2000, d_moy = 11
-| | row-size=12B cardinality=108
-| |
-| 14:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| runtime filters: RF020 -> ss_sold_date_sk, RF018 -> ss_item_sk, RF014 -> ss_customer_sk
-| row-size=24B cardinality=2.88M
-|
-36:AGGREGATE [FINALIZE]
-| output: sum:merge(ss_ext_sales_price)
-| row-size=16B cardinality=1
-|
-35:EXCHANGE [UNPARTITIONED]
-|
-13:AGGREGATE
-| output: sum(ss_ext_sales_price)
-| row-size=16B cardinality=1
-|
-12:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: c_current_addr_sk = ca_address_sk
-| row-size=133B cardinality=3.28K
-|
-|--JOIN BUILD
-| | join-table-id=06 plan-id=07 cohort-id=01
-| | build expressions: ca_address_sk
-| | runtime filters: RF000 <- ca_address_sk
-| |
-| 34:EXCHANGE [BROADCAST]
-| |
-| 05:SCAN HDFS [tpcds.customer_address]
-| HDFS partitions=1/1 files=1 size=5.25MB
-| predicates: ca_gmt_offset = -5
-| row-size=8B cardinality=8.33K
-|
-11:HASH JOIN [INNER JOIN, PARTITIONED]
-| hash predicates: ss_customer_sk = c_customer_sk
-| row-size=125B cardinality=16.94K
-|
-|--JOIN BUILD
-| | join-table-id=07 plan-id=08 cohort-id=01
-| | build expressions: c_customer_sk
-| | runtime filters: RF002 <- c_customer_sk
-| |
-| 33:EXCHANGE [HASH(c_customer_sk)]
-| |
-| 04:SCAN HDFS [tpcds.customer]
-| HDFS partitions=1/1 files=1 size=12.60MB
-| runtime filters: RF000 -> c_current_addr_sk
-| row-size=8B cardinality=100.00K
-|
-32:EXCHANGE [HASH(ss_customer_sk)]
-|
-10:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_store_sk = s_store_sk
-| row-size=117B cardinality=16.94K
-|
-|--JOIN BUILD
-| | join-table-id=08 plan-id=09 cohort-id=01
-| | build expressions: s_store_sk
-| | runtime filters: RF004 <- s_store_sk
-| |
-| 31:EXCHANGE [BROADCAST]
-| |
-| 01:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| predicates: s_gmt_offset = -5
-| row-size=8B cardinality=12
-|
-09:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_promo_sk = p_promo_sk
-| row-size=109B cardinality=16.94K
-|
-|--JOIN BUILD
-| | join-table-id=09 plan-id=10 cohort-id=01
-| | build expressions: p_promo_sk
-| | runtime filters: RF006 <- p_promo_sk
-| |
-| 30:EXCHANGE [BROADCAST]
-| |
-| 02:SCAN HDFS [tpcds.promotion]
-| HDFS partitions=1/1 files=1 size=36.36KB
-| predicates: (p_channel_dmail = 'Y' OR p_channel_email = 'Y' OR p_channel_tv = 'Y')
-| row-size=43B cardinality=300
-|
-08:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_item_sk = i_item_sk
-| row-size=66B cardinality=17.06K
-|
-|--JOIN BUILD
-| | join-table-id=10 plan-id=11 cohort-id=01
-| | build expressions: i_item_sk
-| | runtime filters: RF008 <- i_item_sk
-| |
-| 29:EXCHANGE [BROADCAST]
-| |
-| 06:SCAN HDFS [tpcds.item]
-| HDFS partitions=1/1 files=1 size=4.82MB
-| predicates: i_category = 'Books'
-| row-size=26B cardinality=1.80K
-|
-07:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_sold_date_sk = d_date_sk
-| row-size=40B cardinality=170.55K
-|
-|--JOIN BUILD
-| | join-table-id=11 plan-id=12 cohort-id=01
-| | build expressions: d_date_sk
-| | runtime filters: RF010 <- d_date_sk
-| |
-| 28:EXCHANGE [BROADCAST]
-| |
-| 03:SCAN HDFS [tpcds.date_dim]
-| HDFS partitions=1/1 files=1 size=9.84MB
-| predicates: d_year = 2000, d_moy = 11
-| row-size=12B cardinality=108
-|
-00:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF010 -> ss_sold_date_sk, RF008 -> ss_item_sk, RF006 -> ss_promo_sk, RF002 -> ss_customer_sk, RF004 -> ss_store_sk
- row-size=28B cardinality=2.88M
-====
-# TPCDS-Q88
-select *
-from
- (select count(*) h8_30_to_9
- from store_sales, household_demographics , time_dim, store
- where ss_sold_time_sk = time_dim.t_time_sk
- and ss_hdemo_sk = household_demographics.hd_demo_sk
- and ss_store_sk = s_store_sk
- and time_dim.t_hour = 8
- and time_dim.t_minute >= 30
- and ((household_demographics.hd_dep_count = 1 and household_demographics.hd_vehicle_count<=1+2) or
- (household_demographics.hd_dep_count = 0 and household_demographics.hd_vehicle_count<=0+2) or
- (household_demographics.hd_dep_count = 2 and household_demographics.hd_vehicle_count<=2+2))
- and store.s_store_name = 'ese') s1,
- (select count(*) h9_to_9_30
- from store_sales, household_demographics , time_dim, store
- where ss_sold_time_sk = time_dim.t_time_sk
- and ss_hdemo_sk = household_demographics.hd_demo_sk
- and ss_store_sk = s_store_sk
- and time_dim.t_hour = 9
- and time_dim.t_minute < 30
- and ((household_demographics.hd_dep_count = 1 and household_demographics.hd_vehicle_count<=1+2) or
- (household_demographics.hd_dep_count = 0 and household_demographics.hd_vehicle_count<=0+2) or
- (household_demographics.hd_dep_count = 2 and household_demographics.hd_vehicle_count<=2+2))
- and store.s_store_name = 'ese') s2,
- (select count(*) h9_30_to_10
- from store_sales, household_demographics , time_dim, store
- where ss_sold_time_sk = time_dim.t_time_sk
- and ss_hdemo_sk = household_demographics.hd_demo_sk
- and ss_store_sk = s_store_sk
- and time_dim.t_hour = 9
- and time_dim.t_minute >= 30
- and ((household_demographics.hd_dep_count = 1 and household_demographics.hd_vehicle_count<=1+2) or
- (household_demographics.hd_dep_count = 0 and household_demographics.hd_vehicle_count<=0+2) or
- (household_demographics.hd_dep_count = 2 and household_demographics.hd_vehicle_count<=2+2))
- and store.s_store_name = 'ese') s3,
- (select count(*) h10_to_10_30
- from store_sales, household_demographics , time_dim, store
- where ss_sold_time_sk = time_dim.t_time_sk
- and ss_hdemo_sk = household_demographics.hd_demo_sk
- and ss_store_sk = s_store_sk
- and time_dim.t_hour = 10
- and time_dim.t_minute < 30
- and ((household_demographics.hd_dep_count = 1 and household_demographics.hd_vehicle_count<=1+2) or
- (household_demographics.hd_dep_count = 0 and household_demographics.hd_vehicle_count<=0+2) or
- (household_demographics.hd_dep_count = 2 and household_demographics.hd_vehicle_count<=2+2))
- and store.s_store_name = 'ese') s4,
- (select count(*) h10_30_to_11
- from store_sales, household_demographics , time_dim, store
- where ss_sold_time_sk = time_dim.t_time_sk
- and ss_hdemo_sk = household_demographics.hd_demo_sk
- and ss_store_sk = s_store_sk
- and time_dim.t_hour = 10
- and time_dim.t_minute >= 30
- and ((household_demographics.hd_dep_count = 1 and household_demographics.hd_vehicle_count<=1+2) or
- (household_demographics.hd_dep_count = 0 and household_demographics.hd_vehicle_count<=0+2) or
- (household_demographics.hd_dep_count = 2 and household_demographics.hd_vehicle_count<=2+2))
- and store.s_store_name = 'ese') s5,
- (select count(*) h11_to_11_30
- from store_sales, household_demographics , time_dim, store
- where ss_sold_time_sk = time_dim.t_time_sk
- and ss_hdemo_sk = household_demographics.hd_demo_sk
- and ss_store_sk = s_store_sk
- and time_dim.t_hour = 11
- and time_dim.t_minute < 30
- and ((household_demographics.hd_dep_count = 1 and household_demographics.hd_vehicle_count<=1+2) or
- (household_demographics.hd_dep_count = 0 and household_demographics.hd_vehicle_count<=0+2) or
- (household_demographics.hd_dep_count = 2 and household_demographics.hd_vehicle_count<=2+2))
- and store.s_store_name = 'ese') s6,
- (select count(*) h11_30_to_12
- from store_sales, household_demographics , time_dim, store
- where ss_sold_time_sk = time_dim.t_time_sk
- and ss_hdemo_sk = household_demographics.hd_demo_sk
- and ss_store_sk = s_store_sk
- and time_dim.t_hour = 11
- and time_dim.t_minute >= 30
- and ((household_demographics.hd_dep_count = 1 and household_demographics.hd_vehicle_count<=1+2) or
- (household_demographics.hd_dep_count = 0 and household_demographics.hd_vehicle_count<=0+2) or
- (household_demographics.hd_dep_count = 2 and household_demographics.hd_vehicle_count<=2+2))
- and store.s_store_name = 'ese') s7,
- (select count(*) h12_to_12_30
- from store_sales, household_demographics , time_dim, store
- where ss_sold_time_sk = time_dim.t_time_sk
- and ss_hdemo_sk = household_demographics.hd_demo_sk
- and ss_store_sk = s_store_sk
- and time_dim.t_hour = 12
- and time_dim.t_minute < 30
- and ((household_demographics.hd_dep_count = 1 and household_demographics.hd_vehicle_count<=1+2) or
- (household_demographics.hd_dep_count = 0 and household_demographics.hd_vehicle_count<=0+2) or
- (household_demographics.hd_dep_count = 2 and household_demographics.hd_vehicle_count<=2+2))
- and store.s_store_name = 'ese') s8
----- PLAN
-Max Per-Host Resource Reservation: Memory=186.56MB Threads=33
-Per-Host Resource Estimates: Memory=1.81GB
-PLAN-ROOT SINK
-|
-70:NESTED LOOP JOIN [CROSS JOIN]
-| row-size=64B cardinality=1
-|
-|--63:AGGREGATE [FINALIZE]
-| | output: count(*)
-| | row-size=8B cardinality=1
-| |
-| 62:HASH JOIN [INNER JOIN]
-| | hash predicates: ss_store_sk = s_store_sk
-| | row-size=56B cardinality=2.27K
-| |
-| |--59:SCAN HDFS [tpcds.store]
-| | HDFS partitions=1/1 files=1 size=3.08KB
-| | predicates: store.s_store_name = 'ese'
-| | row-size=20B cardinality=2
-| |
-| 61:HASH JOIN [INNER JOIN]
-| | hash predicates: ss_hdemo_sk = household_demographics.hd_demo_sk
-| | row-size=36B cardinality=6.82K
-| |
-| |--57:SCAN HDFS [tpcds.household_demographics]
-| | HDFS partitions=1/1 files=1 size=148.10KB
-| | predicates: ((household_demographics.hd_dep_count = 1 AND household_demographics.hd_vehicle_count <= 3) OR (household_demographics.hd_dep_count = 0 AND household_demographics.hd_vehicle_count <= 2) OR (household_demographics.hd_dep_count = 2 AND household_demographics.hd_vehicle_count <= 4))
-| | row-size=12B cardinality=720
-| |
-| 60:HASH JOIN [INNER JOIN]
-| | hash predicates: ss_sold_time_sk = time_dim.t_time_sk
-| | runtime filters: RF046 <- time_dim.t_time_sk
-| | row-size=24B cardinality=69.82K
-| |
-| |--58:SCAN HDFS [tpcds.time_dim]
-| | HDFS partitions=1/1 files=1 size=4.87MB
-| | predicates: time_dim.t_hour = 12, time_dim.t_minute < 30
-| | row-size=12B cardinality=1.14K
-| |
-| 56:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| runtime filters: RF046 -> ss_sold_time_sk
-| row-size=12B cardinality=2.88M
-|
-69:NESTED LOOP JOIN [CROSS JOIN]
-| row-size=56B cardinality=1
-|
-|--55:AGGREGATE [FINALIZE]
-| | output: count(*)
-| | row-size=8B cardinality=1
-| |
-| 54:HASH JOIN [INNER JOIN]
-| | hash predicates: ss_store_sk = s_store_sk
-| | row-size=56B cardinality=2.27K
-| |
-| |--51:SCAN HDFS [tpcds.store]
-| | HDFS partitions=1/1 files=1 size=3.08KB
-| | predicates: store.s_store_name = 'ese'
-| | row-size=20B cardinality=2
-| |
-| 53:HASH JOIN [INNER JOIN]
-| | hash predicates: ss_hdemo_sk = household_demographics.hd_demo_sk
-| | row-size=36B cardinality=6.82K
-| |
-| |--49:SCAN HDFS [tpcds.household_demographics]
-| | HDFS partitions=1/1 files=1 size=148.10KB
-| | predicates: ((household_demographics.hd_dep_count = 1 AND household_demographics.hd_vehicle_count <= 3) OR (household_demographics.hd_dep_count = 0 AND household_demographics.hd_vehicle_count <= 2) OR (household_demographics.hd_dep_count = 2 AND household_demographics.hd_vehicle_count <= 4))
-| | row-size=12B cardinality=720
-| |
-| 52:HASH JOIN [INNER JOIN]
-| | hash predicates: ss_sold_time_sk = time_dim.t_time_sk
-| | runtime filters: RF040 <- time_dim.t_time_sk
-| | row-size=24B cardinality=69.82K
-| |
-| |--50:SCAN HDFS [tpcds.time_dim]
-| | HDFS partitions=1/1 files=1 size=4.87MB
-| | predicates: time_dim.t_hour = 11, time_dim.t_minute >= 30
-| | row-size=12B cardinality=1.14K
-| |
-| 48:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| runtime filters: RF040 -> ss_sold_time_sk
-| row-size=12B cardinality=2.88M
-|
-68:NESTED LOOP JOIN [CROSS JOIN]
-| row-size=48B cardinality=1
-|
-|--47:AGGREGATE [FINALIZE]
-| | output: count(*)
-| | row-size=8B cardinality=1
-| |
-| 46:HASH JOIN [INNER JOIN]
-| | hash predicates: ss_store_sk = s_store_sk
-| | row-size=56B cardinality=2.27K
-| |
-| |--43:SCAN HDFS [tpcds.store]
-| | HDFS partitions=1/1 files=1 size=3.08KB
-| | predicates: store.s_store_name = 'ese'
-| | row-size=20B cardinality=2
-| |
-| 45:HASH JOIN [INNER JOIN]
-| | hash predicates: ss_hdemo_sk = household_demographics.hd_demo_sk
-| | row-size=36B cardinality=6.82K
-| |
-| |--41:SCAN HDFS [tpcds.household_demographics]
-| | HDFS partitions=1/1 files=1 size=148.10KB
-| | predicates: ((household_demographics.hd_dep_count = 1 AND household_demographics.hd_vehicle_count <= 3) OR (household_demographics.hd_dep_count = 0 AND household_demographics.hd_vehicle_count <= 2) OR (household_demographics.hd_dep_count = 2 AND household_demographics.hd_vehicle_count <= 4))
-| | row-size=12B cardinality=720
-| |
-| 44:HASH JOIN [INNER JOIN]
-| | hash predicates: ss_sold_time_sk = time_dim.t_time_sk
-| | runtime filters: RF034 <- time_dim.t_time_sk
-| | row-size=24B cardinality=69.82K
-| |
-| |--42:SCAN HDFS [tpcds.time_dim]
-| | HDFS partitions=1/1 files=1 size=4.87MB
-| | predicates: time_dim.t_hour = 11, time_dim.t_minute < 30
-| | row-size=12B cardinality=1.14K
-| |
-| 40:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| runtime filters: RF034 -> ss_sold_time_sk
-| row-size=12B cardinality=2.88M
-|
-67:NESTED LOOP JOIN [CROSS JOIN]
-| row-size=40B cardinality=1
-|
-|--39:AGGREGATE [FINALIZE]
-| | output: count(*)
-| | row-size=8B cardinality=1
-| |
-| 38:HASH JOIN [INNER JOIN]
-| | hash predicates: ss_store_sk = s_store_sk
-| | row-size=56B cardinality=2.27K
-| |
-| |--35:SCAN HDFS [tpcds.store]
-| | HDFS partitions=1/1 files=1 size=3.08KB
-| | predicates: store.s_store_name = 'ese'
-| | row-size=20B cardinality=2
-| |
-| 37:HASH JOIN [INNER JOIN]
-| | hash predicates: ss_hdemo_sk = household_demographics.hd_demo_sk
-| | row-size=36B cardinality=6.82K
-| |
-| |--33:SCAN HDFS [tpcds.household_demographics]
-| | HDFS partitions=1/1 files=1 size=148.10KB
-| | predicates: ((household_demographics.hd_dep_count = 1 AND household_demographics.hd_vehicle_count <= 3) OR (household_demographics.hd_dep_count = 0 AND household_demographics.hd_vehicle_count <= 2) OR (household_demographics.hd_dep_count = 2 AND household_demographics.hd_vehicle_count <= 4))
-| | row-size=12B cardinality=720
-| |
-| 36:HASH JOIN [INNER JOIN]
-| | hash predicates: ss_sold_time_sk = time_dim.t_time_sk
-| | runtime filters: RF028 <- time_dim.t_time_sk
-| | row-size=24B cardinality=69.82K
-| |
-| |--34:SCAN HDFS [tpcds.time_dim]
-| | HDFS partitions=1/1 files=1 size=4.87MB
-| | predicates: time_dim.t_hour = 10, time_dim.t_minute >= 30
-| | row-size=12B cardinality=1.14K
-| |
-| 32:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| runtime filters: RF028 -> ss_sold_time_sk
-| row-size=12B cardinality=2.88M
-|
-66:NESTED LOOP JOIN [CROSS JOIN]
-| row-size=32B cardinality=1
-|
-|--31:AGGREGATE [FINALIZE]
-| | output: count(*)
-| | row-size=8B cardinality=1
-| |
-| 30:HASH JOIN [INNER JOIN]
-| | hash predicates: ss_store_sk = s_store_sk
-| | row-size=56B cardinality=2.27K
-| |
-| |--27:SCAN HDFS [tpcds.store]
-| | HDFS partitions=1/1 files=1 size=3.08KB
-| | predicates: store.s_store_name = 'ese'
-| | row-size=20B cardinality=2
-| |
-| 29:HASH JOIN [INNER JOIN]
-| | hash predicates: ss_hdemo_sk = household_demographics.hd_demo_sk
-| | row-size=36B cardinality=6.82K
-| |
-| |--25:SCAN HDFS [tpcds.household_demographics]
-| | HDFS partitions=1/1 files=1 size=148.10KB
-| | predicates: ((household_demographics.hd_dep_count = 1 AND household_demographics.hd_vehicle_count <= 3) OR (household_demographics.hd_dep_count = 0 AND household_demographics.hd_vehicle_count <= 2) OR (household_demographics.hd_dep_count = 2 AND household_demographics.hd_vehicle_count <= 4))
-| | row-size=12B cardinality=720
-| |
-| 28:HASH JOIN [INNER JOIN]
-| | hash predicates: ss_sold_time_sk = time_dim.t_time_sk
-| | runtime filters: RF022 <- time_dim.t_time_sk
-| | row-size=24B cardinality=69.82K
-| |
-| |--26:SCAN HDFS [tpcds.time_dim]
-| | HDFS partitions=1/1 files=1 size=4.87MB
-| | predicates: time_dim.t_hour = 10, time_dim.t_minute < 30
-| | row-size=12B cardinality=1.14K
-| |
-| 24:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| runtime filters: RF022 -> ss_sold_time_sk
-| row-size=12B cardinality=2.88M
-|
-65:NESTED LOOP JOIN [CROSS JOIN]
-| row-size=24B cardinality=1
-|
-|--23:AGGREGATE [FINALIZE]
-| | output: count(*)
-| | row-size=8B cardinality=1
-| |
-| 22:HASH JOIN [INNER JOIN]
-| | hash predicates: ss_store_sk = s_store_sk
-| | row-size=56B cardinality=2.27K
-| |
-| |--19:SCAN HDFS [tpcds.store]
-| | HDFS partitions=1/1 files=1 size=3.08KB
-| | predicates: store.s_store_name = 'ese'
-| | row-size=20B cardinality=2
-| |
-| 21:HASH JOIN [INNER JOIN]
-| | hash predicates: ss_hdemo_sk = household_demographics.hd_demo_sk
-| | row-size=36B cardinality=6.82K
-| |
-| |--17:SCAN HDFS [tpcds.household_demographics]
-| | HDFS partitions=1/1 files=1 size=148.10KB
-| | predicates: ((household_demographics.hd_dep_count = 1 AND household_demographics.hd_vehicle_count <= 3) OR (household_demographics.hd_dep_count = 0 AND household_demographics.hd_vehicle_count <= 2) OR (household_demographics.hd_dep_count = 2 AND household_demographics.hd_vehicle_count <= 4))
-| | row-size=12B cardinality=720
-| |
-| 20:HASH JOIN [INNER JOIN]
-| | hash predicates: ss_sold_time_sk = time_dim.t_time_sk
-| | runtime filters: RF016 <- time_dim.t_time_sk
-| | row-size=24B cardinality=69.82K
-| |
-| |--18:SCAN HDFS [tpcds.time_dim]
-| | HDFS partitions=1/1 files=1 size=4.87MB
-| | predicates: time_dim.t_hour = 9, time_dim.t_minute >= 30
-| | row-size=12B cardinality=1.14K
-| |
-| 16:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| runtime filters: RF016 -> ss_sold_time_sk
-| row-size=12B cardinality=2.88M
-|
-64:NESTED LOOP JOIN [CROSS JOIN]
-| row-size=16B cardinality=1
-|
-|--15:AGGREGATE [FINALIZE]
-| | output: count(*)
-| | row-size=8B cardinality=1
-| |
-| 14:HASH JOIN [INNER JOIN]
-| | hash predicates: ss_store_sk = s_store_sk
-| | row-size=56B cardinality=2.27K
-| |
-| |--11:SCAN HDFS [tpcds.store]
-| | HDFS partitions=1/1 files=1 size=3.08KB
-| | predicates: store.s_store_name = 'ese'
-| | row-size=20B cardinality=2
-| |
-| 13:HASH JOIN [INNER JOIN]
-| | hash predicates: ss_hdemo_sk = household_demographics.hd_demo_sk
-| | runtime filters: RF008 <- household_demographics.hd_demo_sk
-| | row-size=36B cardinality=6.82K
-| |
-| |--09:SCAN HDFS [tpcds.household_demographics]
-| | HDFS partitions=1/1 files=1 size=148.10KB
-| | predicates: ((household_demographics.hd_dep_count = 1 AND household_demographics.hd_vehicle_count <= 3) OR (household_demographics.hd_dep_count = 0 AND household_demographics.hd_vehicle_count <= 2) OR (household_demographics.hd_dep_count = 2 AND household_demographics.hd_vehicle_count <= 4))
-| | row-size=12B cardinality=720
-| |
-| 12:HASH JOIN [INNER JOIN]
-| | hash predicates: ss_sold_time_sk = time_dim.t_time_sk
-| | runtime filters: RF010 <- time_dim.t_time_sk
-| | row-size=24B cardinality=69.82K
-| |
-| |--10:SCAN HDFS [tpcds.time_dim]
-| | HDFS partitions=1/1 files=1 size=4.87MB
-| | predicates: time_dim.t_hour = 9, time_dim.t_minute < 30
-| | row-size=12B cardinality=1.14K
-| |
-| 08:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| runtime filters: RF010 -> ss_sold_time_sk, RF008 -> ss_hdemo_sk
-| row-size=12B cardinality=2.88M
-|
-07:AGGREGATE [FINALIZE]
-| output: count(*)
-| row-size=8B cardinality=1
-|
-06:HASH JOIN [INNER JOIN]
-| hash predicates: ss_store_sk = s_store_sk
-| row-size=56B cardinality=2.27K
-|
-|--03:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| predicates: store.s_store_name = 'ese'
-| row-size=20B cardinality=2
-|
-05:HASH JOIN [INNER JOIN]
-| hash predicates: ss_hdemo_sk = household_demographics.hd_demo_sk
-| runtime filters: RF002 <- household_demographics.hd_demo_sk
-| row-size=36B cardinality=6.82K
-|
-|--01:SCAN HDFS [tpcds.household_demographics]
-| HDFS partitions=1/1 files=1 size=148.10KB
-| predicates: ((household_demographics.hd_dep_count = 1 AND household_demographics.hd_vehicle_count <= 3) OR (household_demographics.hd_dep_count = 0 AND household_demographics.hd_vehicle_count <= 2) OR (household_demographics.hd_dep_count = 2 AND household_demographics.hd_vehicle_count <= 4))
-| row-size=12B cardinality=720
-|
-04:HASH JOIN [INNER JOIN]
-| hash predicates: ss_sold_time_sk = time_dim.t_time_sk
-| runtime filters: RF004 <- time_dim.t_time_sk
-| row-size=24B cardinality=69.82K
-|
-|--02:SCAN HDFS [tpcds.time_dim]
-| HDFS partitions=1/1 files=1 size=4.87MB
-| predicates: time_dim.t_hour = 8, time_dim.t_minute >= 30
-| row-size=12B cardinality=1.14K
-|
-00:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF004 -> ss_sold_time_sk, RF002 -> ss_hdemo_sk
- row-size=12B cardinality=2.88M
----- DISTRIBUTEDPLAN
-Max Per-Host Resource Reservation: Memory=186.56MB Threads=72
-Per-Host Resource Estimates: Memory=1.96GB
-PLAN-ROOT SINK
-|
-70:NESTED LOOP JOIN [CROSS JOIN, BROADCAST]
-| row-size=64B cardinality=1
-|
-|--117:EXCHANGE [UNPARTITIONED]
-| |
-| 116:AGGREGATE [FINALIZE]
-| | output: count:merge(*)
-| | row-size=8B cardinality=1
-| |
-| 115:EXCHANGE [UNPARTITIONED]
-| |
-| 63:AGGREGATE
-| | output: count(*)
-| | row-size=8B cardinality=1
-| |
-| 62:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_store_sk = s_store_sk
-| | row-size=56B cardinality=2.27K
-| |
-| |--114:EXCHANGE [BROADCAST]
-| | |
-| | 59:SCAN HDFS [tpcds.store]
-| | HDFS partitions=1/1 files=1 size=3.08KB
-| | predicates: store.s_store_name = 'ese'
-| | row-size=20B cardinality=2
-| |
-| 61:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_hdemo_sk = household_demographics.hd_demo_sk
-| | row-size=36B cardinality=6.82K
-| |
-| |--113:EXCHANGE [BROADCAST]
-| | |
-| | 57:SCAN HDFS [tpcds.household_demographics]
-| | HDFS partitions=1/1 files=1 size=148.10KB
-| | predicates: ((household_demographics.hd_dep_count = 1 AND household_demographics.hd_vehicle_count <= 3) OR (household_demographics.hd_dep_count = 0 AND household_demographics.hd_vehicle_count <= 2) OR (household_demographics.hd_dep_count = 2 AND household_demographics.hd_vehicle_count <= 4))
-| | row-size=12B cardinality=720
-| |
-| 60:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_sold_time_sk = time_dim.t_time_sk
-| | runtime filters: RF046 <- time_dim.t_time_sk
-| | row-size=24B cardinality=69.82K
-| |
-| |--112:EXCHANGE [BROADCAST]
-| | |
-| | 58:SCAN HDFS [tpcds.time_dim]
-| | HDFS partitions=1/1 files=1 size=4.87MB
-| | predicates: time_dim.t_hour = 12, time_dim.t_minute < 30
-| | row-size=12B cardinality=1.14K
-| |
-| 56:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| runtime filters: RF046 -> ss_sold_time_sk
-| row-size=12B cardinality=2.88M
-|
-69:NESTED LOOP JOIN [CROSS JOIN, BROADCAST]
-| row-size=56B cardinality=1
-|
-|--111:EXCHANGE [UNPARTITIONED]
-| |
-| 110:AGGREGATE [FINALIZE]
-| | output: count:merge(*)
-| | row-size=8B cardinality=1
-| |
-| 109:EXCHANGE [UNPARTITIONED]
-| |
-| 55:AGGREGATE
-| | output: count(*)
-| | row-size=8B cardinality=1
-| |
-| 54:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_store_sk = s_store_sk
-| | row-size=56B cardinality=2.27K
-| |
-| |--108:EXCHANGE [BROADCAST]
-| | |
-| | 51:SCAN HDFS [tpcds.store]
-| | HDFS partitions=1/1 files=1 size=3.08KB
-| | predicates: store.s_store_name = 'ese'
-| | row-size=20B cardinality=2
-| |
-| 53:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_hdemo_sk = household_demographics.hd_demo_sk
-| | row-size=36B cardinality=6.82K
-| |
-| |--107:EXCHANGE [BROADCAST]
-| | |
-| | 49:SCAN HDFS [tpcds.household_demographics]
-| | HDFS partitions=1/1 files=1 size=148.10KB
-| | predicates: ((household_demographics.hd_dep_count = 1 AND household_demographics.hd_vehicle_count <= 3) OR (household_demographics.hd_dep_count = 0 AND household_demographics.hd_vehicle_count <= 2) OR (household_demographics.hd_dep_count = 2 AND household_demographics.hd_vehicle_count <= 4))
-| | row-size=12B cardinality=720
-| |
-| 52:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_sold_time_sk = time_dim.t_time_sk
-| | runtime filters: RF040 <- time_dim.t_time_sk
-| | row-size=24B cardinality=69.82K
-| |
-| |--106:EXCHANGE [BROADCAST]
-| | |
-| | 50:SCAN HDFS [tpcds.time_dim]
-| | HDFS partitions=1/1 files=1 size=4.87MB
-| | predicates: time_dim.t_hour = 11, time_dim.t_minute >= 30
-| | row-size=12B cardinality=1.14K
-| |
-| 48:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| runtime filters: RF040 -> ss_sold_time_sk
-| row-size=12B cardinality=2.88M
-|
-68:NESTED LOOP JOIN [CROSS JOIN, BROADCAST]
-| row-size=48B cardinality=1
-|
-|--105:EXCHANGE [UNPARTITIONED]
-| |
-| 104:AGGREGATE [FINALIZE]
-| | output: count:merge(*)
-| | row-size=8B cardinality=1
-| |
-| 103:EXCHANGE [UNPARTITIONED]
-| |
-| 47:AGGREGATE
-| | output: count(*)
-| | row-size=8B cardinality=1
-| |
-| 46:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_store_sk = s_store_sk
-| | row-size=56B cardinality=2.27K
-| |
-| |--102:EXCHANGE [BROADCAST]
-| | |
-| | 43:SCAN HDFS [tpcds.store]
-| | HDFS partitions=1/1 files=1 size=3.08KB
-| | predicates: store.s_store_name = 'ese'
-| | row-size=20B cardinality=2
-| |
-| 45:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_hdemo_sk = household_demographics.hd_demo_sk
-| | row-size=36B cardinality=6.82K
-| |
-| |--101:EXCHANGE [BROADCAST]
-| | |
-| | 41:SCAN HDFS [tpcds.household_demographics]
-| | HDFS partitions=1/1 files=1 size=148.10KB
-| | predicates: ((household_demographics.hd_dep_count = 1 AND household_demographics.hd_vehicle_count <= 3) OR (household_demographics.hd_dep_count = 0 AND household_demographics.hd_vehicle_count <= 2) OR (household_demographics.hd_dep_count = 2 AND household_demographics.hd_vehicle_count <= 4))
-| | row-size=12B cardinality=720
-| |
-| 44:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_sold_time_sk = time_dim.t_time_sk
-| | runtime filters: RF034 <- time_dim.t_time_sk
-| | row-size=24B cardinality=69.82K
-| |
-| |--100:EXCHANGE [BROADCAST]
-| | |
-| | 42:SCAN HDFS [tpcds.time_dim]
-| | HDFS partitions=1/1 files=1 size=4.87MB
-| | predicates: time_dim.t_hour = 11, time_dim.t_minute < 30
-| | row-size=12B cardinality=1.14K
-| |
-| 40:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| runtime filters: RF034 -> ss_sold_time_sk
-| row-size=12B cardinality=2.88M
-|
-67:NESTED LOOP JOIN [CROSS JOIN, BROADCAST]
-| row-size=40B cardinality=1
-|
-|--99:EXCHANGE [UNPARTITIONED]
-| |
-| 98:AGGREGATE [FINALIZE]
-| | output: count:merge(*)
-| | row-size=8B cardinality=1
-| |
-| 97:EXCHANGE [UNPARTITIONED]
-| |
-| 39:AGGREGATE
-| | output: count(*)
-| | row-size=8B cardinality=1
-| |
-| 38:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_store_sk = s_store_sk
-| | row-size=56B cardinality=2.27K
-| |
-| |--96:EXCHANGE [BROADCAST]
-| | |
-| | 35:SCAN HDFS [tpcds.store]
-| | HDFS partitions=1/1 files=1 size=3.08KB
-| | predicates: store.s_store_name = 'ese'
-| | row-size=20B cardinality=2
-| |
-| 37:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_hdemo_sk = household_demographics.hd_demo_sk
-| | row-size=36B cardinality=6.82K
-| |
-| |--95:EXCHANGE [BROADCAST]
-| | |
-| | 33:SCAN HDFS [tpcds.household_demographics]
-| | HDFS partitions=1/1 files=1 size=148.10KB
-| | predicates: ((household_demographics.hd_dep_count = 1 AND household_demographics.hd_vehicle_count <= 3) OR (household_demographics.hd_dep_count = 0 AND household_demographics.hd_vehicle_count <= 2) OR (household_demographics.hd_dep_count = 2 AND household_demographics.hd_vehicle_count <= 4))
-| | row-size=12B cardinality=720
-| |
-| 36:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_sold_time_sk = time_dim.t_time_sk
-| | runtime filters: RF028 <- time_dim.t_time_sk
-| | row-size=24B cardinality=69.82K
-| |
-| |--94:EXCHANGE [BROADCAST]
-| | |
-| | 34:SCAN HDFS [tpcds.time_dim]
-| | HDFS partitions=1/1 files=1 size=4.87MB
-| | predicates: time_dim.t_hour = 10, time_dim.t_minute >= 30
-| | row-size=12B cardinality=1.14K
-| |
-| 32:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| runtime filters: RF028 -> ss_sold_time_sk
-| row-size=12B cardinality=2.88M
-|
-66:NESTED LOOP JOIN [CROSS JOIN, BROADCAST]
-| row-size=32B cardinality=1
-|
-|--93:EXCHANGE [UNPARTITIONED]
-| |
-| 92:AGGREGATE [FINALIZE]
-| | output: count:merge(*)
-| | row-size=8B cardinality=1
-| |
-| 91:EXCHANGE [UNPARTITIONED]
-| |
-| 31:AGGREGATE
-| | output: count(*)
-| | row-size=8B cardinality=1
-| |
-| 30:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_store_sk = s_store_sk
-| | row-size=56B cardinality=2.27K
-| |
-| |--90:EXCHANGE [BROADCAST]
-| | |
-| | 27:SCAN HDFS [tpcds.store]
-| | HDFS partitions=1/1 files=1 size=3.08KB
-| | predicates: store.s_store_name = 'ese'
-| | row-size=20B cardinality=2
-| |
-| 29:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_hdemo_sk = household_demographics.hd_demo_sk
-| | row-size=36B cardinality=6.82K
-| |
-| |--89:EXCHANGE [BROADCAST]
-| | |
-| | 25:SCAN HDFS [tpcds.household_demographics]
-| | HDFS partitions=1/1 files=1 size=148.10KB
-| | predicates: ((household_demographics.hd_dep_count = 1 AND household_demographics.hd_vehicle_count <= 3) OR (household_demographics.hd_dep_count = 0 AND household_demographics.hd_vehicle_count <= 2) OR (household_demographics.hd_dep_count = 2 AND household_demographics.hd_vehicle_count <= 4))
-| | row-size=12B cardinality=720
-| |
-| 28:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_sold_time_sk = time_dim.t_time_sk
-| | runtime filters: RF022 <- time_dim.t_time_sk
-| | row-size=24B cardinality=69.82K
-| |
-| |--88:EXCHANGE [BROADCAST]
-| | |
-| | 26:SCAN HDFS [tpcds.time_dim]
-| | HDFS partitions=1/1 files=1 size=4.87MB
-| | predicates: time_dim.t_hour = 10, time_dim.t_minute < 30
-| | row-size=12B cardinality=1.14K
-| |
-| 24:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| runtime filters: RF022 -> ss_sold_time_sk
-| row-size=12B cardinality=2.88M
-|
-65:NESTED LOOP JOIN [CROSS JOIN, BROADCAST]
-| row-size=24B cardinality=1
-|
-|--87:EXCHANGE [UNPARTITIONED]
-| |
-| 86:AGGREGATE [FINALIZE]
-| | output: count:merge(*)
-| | row-size=8B cardinality=1
-| |
-| 85:EXCHANGE [UNPARTITIONED]
-| |
-| 23:AGGREGATE
-| | output: count(*)
-| | row-size=8B cardinality=1
-| |
-| 22:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_store_sk = s_store_sk
-| | row-size=56B cardinality=2.27K
-| |
-| |--84:EXCHANGE [BROADCAST]
-| | |
-| | 19:SCAN HDFS [tpcds.store]
-| | HDFS partitions=1/1 files=1 size=3.08KB
-| | predicates: store.s_store_name = 'ese'
-| | row-size=20B cardinality=2
-| |
-| 21:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_hdemo_sk = household_demographics.hd_demo_sk
-| | row-size=36B cardinality=6.82K
-| |
-| |--83:EXCHANGE [BROADCAST]
-| | |
-| | 17:SCAN HDFS [tpcds.household_demographics]
-| | HDFS partitions=1/1 files=1 size=148.10KB
-| | predicates: ((household_demographics.hd_dep_count = 1 AND household_demographics.hd_vehicle_count <= 3) OR (household_demographics.hd_dep_count = 0 AND household_demographics.hd_vehicle_count <= 2) OR (household_demographics.hd_dep_count = 2 AND household_demographics.hd_vehicle_count <= 4))
-| | row-size=12B cardinality=720
-| |
-| 20:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_sold_time_sk = time_dim.t_time_sk
-| | runtime filters: RF016 <- time_dim.t_time_sk
-| | row-size=24B cardinality=69.82K
-| |
-| |--82:EXCHANGE [BROADCAST]
-| | |
-| | 18:SCAN HDFS [tpcds.time_dim]
-| | HDFS partitions=1/1 files=1 size=4.87MB
-| | predicates: time_dim.t_hour = 9, time_dim.t_minute >= 30
-| | row-size=12B cardinality=1.14K
-| |
-| 16:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| runtime filters: RF016 -> ss_sold_time_sk
-| row-size=12B cardinality=2.88M
-|
-64:NESTED LOOP JOIN [CROSS JOIN, BROADCAST]
-| row-size=16B cardinality=1
-|
-|--81:EXCHANGE [UNPARTITIONED]
-| |
-| 80:AGGREGATE [FINALIZE]
-| | output: count:merge(*)
-| | row-size=8B cardinality=1
-| |
-| 79:EXCHANGE [UNPARTITIONED]
-| |
-| 15:AGGREGATE
-| | output: count(*)
-| | row-size=8B cardinality=1
-| |
-| 14:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_store_sk = s_store_sk
-| | row-size=56B cardinality=2.27K
-| |
-| |--78:EXCHANGE [BROADCAST]
-| | |
-| | 11:SCAN HDFS [tpcds.store]
-| | HDFS partitions=1/1 files=1 size=3.08KB
-| | predicates: store.s_store_name = 'ese'
-| | row-size=20B cardinality=2
-| |
-| 13:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_hdemo_sk = household_demographics.hd_demo_sk
-| | runtime filters: RF008 <- household_demographics.hd_demo_sk
-| | row-size=36B cardinality=6.82K
-| |
-| |--77:EXCHANGE [BROADCAST]
-| | |
-| | 09:SCAN HDFS [tpcds.household_demographics]
-| | HDFS partitions=1/1 files=1 size=148.10KB
-| | predicates: ((household_demographics.hd_dep_count = 1 AND household_demographics.hd_vehicle_count <= 3) OR (household_demographics.hd_dep_count = 0 AND household_demographics.hd_vehicle_count <= 2) OR (household_demographics.hd_dep_count = 2 AND household_demographics.hd_vehicle_count <= 4))
-| | row-size=12B cardinality=720
-| |
-| 12:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_sold_time_sk = time_dim.t_time_sk
-| | runtime filters: RF010 <- time_dim.t_time_sk
-| | row-size=24B cardinality=69.82K
-| |
-| |--76:EXCHANGE [BROADCAST]
-| | |
-| | 10:SCAN HDFS [tpcds.time_dim]
-| | HDFS partitions=1/1 files=1 size=4.87MB
-| | predicates: time_dim.t_hour = 9, time_dim.t_minute < 30
-| | row-size=12B cardinality=1.14K
-| |
-| 08:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| runtime filters: RF010 -> ss_sold_time_sk, RF008 -> ss_hdemo_sk
-| row-size=12B cardinality=2.88M
-|
-75:AGGREGATE [FINALIZE]
-| output: count:merge(*)
-| row-size=8B cardinality=1
-|
-74:EXCHANGE [UNPARTITIONED]
-|
-07:AGGREGATE
-| output: count(*)
-| row-size=8B cardinality=1
-|
-06:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_store_sk = s_store_sk
-| row-size=56B cardinality=2.27K
-|
-|--73:EXCHANGE [BROADCAST]
-| |
-| 03:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| predicates: store.s_store_name = 'ese'
-| row-size=20B cardinality=2
-|
-05:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_hdemo_sk = household_demographics.hd_demo_sk
-| runtime filters: RF002 <- household_demographics.hd_demo_sk
-| row-size=36B cardinality=6.82K
-|
-|--72:EXCHANGE [BROADCAST]
-| |
-| 01:SCAN HDFS [tpcds.household_demographics]
-| HDFS partitions=1/1 files=1 size=148.10KB
-| predicates: ((household_demographics.hd_dep_count = 1 AND household_demographics.hd_vehicle_count <= 3) OR (household_demographics.hd_dep_count = 0 AND household_demographics.hd_vehicle_count <= 2) OR (household_demographics.hd_dep_count = 2 AND household_demographics.hd_vehicle_count <= 4))
-| row-size=12B cardinality=720
-|
-04:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_sold_time_sk = time_dim.t_time_sk
-| runtime filters: RF004 <- time_dim.t_time_sk
-| row-size=24B cardinality=69.82K
-|
-|--71:EXCHANGE [BROADCAST]
-| |
-| 02:SCAN HDFS [tpcds.time_dim]
-| HDFS partitions=1/1 files=1 size=4.87MB
-| predicates: time_dim.t_hour = 8, time_dim.t_minute >= 30
-| row-size=12B cardinality=1.14K
-|
-00:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF004 -> ss_sold_time_sk, RF002 -> ss_hdemo_sk
- row-size=12B cardinality=2.88M
----- PARALLELPLANS
-Max Per-Host Resource Reservation: Memory=307.06MB Threads=79
-Per-Host Resource Estimates: Memory=994MB
-PLAN-ROOT SINK
-|
-70:NESTED LOOP JOIN [CROSS JOIN, BROADCAST]
-| join table id: 00
-| row-size=64B cardinality=1
-|
-|--JOIN BUILD
-| | join-table-id=00 plan-id=01 cohort-id=01
-| |
-| 117:EXCHANGE [UNPARTITIONED]
-| |
-| 116:AGGREGATE [FINALIZE]
-| | output: count:merge(*)
-| | row-size=8B cardinality=1
-| |
-| 115:EXCHANGE [UNPARTITIONED]
-| |
-| 63:AGGREGATE
-| | output: count(*)
-| | row-size=8B cardinality=1
-| |
-| 62:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_store_sk = s_store_sk
-| | row-size=56B cardinality=2.27K
-| |
-| |--JOIN BUILD
-| | | join-table-id=01 plan-id=02 cohort-id=02
-| | | build expressions: s_store_sk
-| | |
-| | 114:EXCHANGE [BROADCAST]
-| | |
-| | 59:SCAN HDFS [tpcds.store]
-| | HDFS partitions=1/1 files=1 size=3.08KB
-| | predicates: store.s_store_name = 'ese'
-| | row-size=20B cardinality=2
-| |
-| 61:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_hdemo_sk = household_demographics.hd_demo_sk
-| | row-size=36B cardinality=6.82K
-| |
-| |--JOIN BUILD
-| | | join-table-id=02 plan-id=03 cohort-id=02
-| | | build expressions: household_demographics.hd_demo_sk
-| | |
-| | 113:EXCHANGE [BROADCAST]
-| | |
-| | 57:SCAN HDFS [tpcds.household_demographics]
-| | HDFS partitions=1/1 files=1 size=148.10KB
-| | predicates: ((household_demographics.hd_dep_count = 1 AND household_demographics.hd_vehicle_count <= 3) OR (household_demographics.hd_dep_count = 0 AND household_demographics.hd_vehicle_count <= 2) OR (household_demographics.hd_dep_count = 2 AND household_demographics.hd_vehicle_count <= 4))
-| | row-size=12B cardinality=720
-| |
-| 60:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_sold_time_sk = time_dim.t_time_sk
-| | row-size=24B cardinality=69.82K
-| |
-| |--JOIN BUILD
-| | | join-table-id=03 plan-id=04 cohort-id=02
-| | | build expressions: time_dim.t_time_sk
-| | | runtime filters: RF046 <- time_dim.t_time_sk
-| | |
-| | 112:EXCHANGE [BROADCAST]
-| | |
-| | 58:SCAN HDFS [tpcds.time_dim]
-| | HDFS partitions=1/1 files=1 size=4.87MB
-| | predicates: time_dim.t_hour = 12, time_dim.t_minute < 30
-| | row-size=12B cardinality=1.14K
-| |
-| 56:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| runtime filters: RF046 -> ss_sold_time_sk
-| row-size=12B cardinality=2.88M
-|
-69:NESTED LOOP JOIN [CROSS JOIN, BROADCAST]
-| join table id: 04
-| row-size=56B cardinality=1
-|
-|--JOIN BUILD
-| | join-table-id=04 plan-id=05 cohort-id=01
-| |
-| 111:EXCHANGE [UNPARTITIONED]
-| |
-| 110:AGGREGATE [FINALIZE]
-| | output: count:merge(*)
-| | row-size=8B cardinality=1
-| |
-| 109:EXCHANGE [UNPARTITIONED]
-| |
-| 55:AGGREGATE
-| | output: count(*)
-| | row-size=8B cardinality=1
-| |
-| 54:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_store_sk = s_store_sk
-| | row-size=56B cardinality=2.27K
-| |
-| |--JOIN BUILD
-| | | join-table-id=05 plan-id=06 cohort-id=03
-| | | build expressions: s_store_sk
-| | |
-| | 108:EXCHANGE [BROADCAST]
-| | |
-| | 51:SCAN HDFS [tpcds.store]
-| | HDFS partitions=1/1 files=1 size=3.08KB
-| | predicates: store.s_store_name = 'ese'
-| | row-size=20B cardinality=2
-| |
-| 53:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_hdemo_sk = household_demographics.hd_demo_sk
-| | row-size=36B cardinality=6.82K
-| |
-| |--JOIN BUILD
-| | | join-table-id=06 plan-id=07 cohort-id=03
-| | | build expressions: household_demographics.hd_demo_sk
-| | |
-| | 107:EXCHANGE [BROADCAST]
-| | |
-| | 49:SCAN HDFS [tpcds.household_demographics]
-| | HDFS partitions=1/1 files=1 size=148.10KB
-| | predicates: ((household_demographics.hd_dep_count = 1 AND household_demographics.hd_vehicle_count <= 3) OR (household_demographics.hd_dep_count = 0 AND household_demographics.hd_vehicle_count <= 2) OR (household_demographics.hd_dep_count = 2 AND household_demographics.hd_vehicle_count <= 4))
-| | row-size=12B cardinality=720
-| |
-| 52:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_sold_time_sk = time_dim.t_time_sk
-| | row-size=24B cardinality=69.82K
-| |
-| |--JOIN BUILD
-| | | join-table-id=07 plan-id=08 cohort-id=03
-| | | build expressions: time_dim.t_time_sk
-| | | runtime filters: RF040 <- time_dim.t_time_sk
-| | |
-| | 106:EXCHANGE [BROADCAST]
-| | |
-| | 50:SCAN HDFS [tpcds.time_dim]
-| | HDFS partitions=1/1 files=1 size=4.87MB
-| | predicates: time_dim.t_hour = 11, time_dim.t_minute >= 30
-| | row-size=12B cardinality=1.14K
-| |
-| 48:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| runtime filters: RF040 -> ss_sold_time_sk
-| row-size=12B cardinality=2.88M
-|
-68:NESTED LOOP JOIN [CROSS JOIN, BROADCAST]
-| join table id: 08
-| row-size=48B cardinality=1
-|
-|--JOIN BUILD
-| | join-table-id=08 plan-id=09 cohort-id=01
-| |
-| 105:EXCHANGE [UNPARTITIONED]
-| |
-| 104:AGGREGATE [FINALIZE]
-| | output: count:merge(*)
-| | row-size=8B cardinality=1
-| |
-| 103:EXCHANGE [UNPARTITIONED]
-| |
-| 47:AGGREGATE
-| | output: count(*)
-| | row-size=8B cardinality=1
-| |
-| 46:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_store_sk = s_store_sk
-| | row-size=56B cardinality=2.27K
-| |
-| |--JOIN BUILD
-| | | join-table-id=09 plan-id=10 cohort-id=04
-| | | build expressions: s_store_sk
-| | |
-| | 102:EXCHANGE [BROADCAST]
-| | |
-| | 43:SCAN HDFS [tpcds.store]
-| | HDFS partitions=1/1 files=1 size=3.08KB
-| | predicates: store.s_store_name = 'ese'
-| | row-size=20B cardinality=2
-| |
-| 45:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_hdemo_sk = household_demographics.hd_demo_sk
-| | row-size=36B cardinality=6.82K
-| |
-| |--JOIN BUILD
-| | | join-table-id=10 plan-id=11 cohort-id=04
-| | | build expressions: household_demographics.hd_demo_sk
-| | |
-| | 101:EXCHANGE [BROADCAST]
-| | |
-| | 41:SCAN HDFS [tpcds.household_demographics]
-| | HDFS partitions=1/1 files=1 size=148.10KB
-| | predicates: ((household_demographics.hd_dep_count = 1 AND household_demographics.hd_vehicle_count <= 3) OR (household_demographics.hd_dep_count = 0 AND household_demographics.hd_vehicle_count <= 2) OR (household_demographics.hd_dep_count = 2 AND household_demographics.hd_vehicle_count <= 4))
-| | row-size=12B cardinality=720
-| |
-| 44:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_sold_time_sk = time_dim.t_time_sk
-| | row-size=24B cardinality=69.82K
-| |
-| |--JOIN BUILD
-| | | join-table-id=11 plan-id=12 cohort-id=04
-| | | build expressions: time_dim.t_time_sk
-| | | runtime filters: RF034 <- time_dim.t_time_sk
-| | |
-| | 100:EXCHANGE [BROADCAST]
-| | |
-| | 42:SCAN HDFS [tpcds.time_dim]
-| | HDFS partitions=1/1 files=1 size=4.87MB
-| | predicates: time_dim.t_hour = 11, time_dim.t_minute < 30
-| | row-size=12B cardinality=1.14K
-| |
-| 40:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| runtime filters: RF034 -> ss_sold_time_sk
-| row-size=12B cardinality=2.88M
-|
-67:NESTED LOOP JOIN [CROSS JOIN, BROADCAST]
-| join table id: 12
-| row-size=40B cardinality=1
-|
-|--JOIN BUILD
-| | join-table-id=12 plan-id=13 cohort-id=01
-| |
-| 99:EXCHANGE [UNPARTITIONED]
-| |
-| 98:AGGREGATE [FINALIZE]
-| | output: count:merge(*)
-| | row-size=8B cardinality=1
-| |
-| 97:EXCHANGE [UNPARTITIONED]
-| |
-| 39:AGGREGATE
-| | output: count(*)
-| | row-size=8B cardinality=1
-| |
-| 38:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_store_sk = s_store_sk
-| | row-size=56B cardinality=2.27K
-| |
-| |--JOIN BUILD
-| | | join-table-id=13 plan-id=14 cohort-id=05
-| | | build expressions: s_store_sk
-| | |
-| | 96:EXCHANGE [BROADCAST]
-| | |
-| | 35:SCAN HDFS [tpcds.store]
-| | HDFS partitions=1/1 files=1 size=3.08KB
-| | predicates: store.s_store_name = 'ese'
-| | row-size=20B cardinality=2
-| |
-| 37:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_hdemo_sk = household_demographics.hd_demo_sk
-| | row-size=36B cardinality=6.82K
-| |
-| |--JOIN BUILD
-| | | join-table-id=14 plan-id=15 cohort-id=05
-| | | build expressions: household_demographics.hd_demo_sk
-| | |
-| | 95:EXCHANGE [BROADCAST]
-| | |
-| | 33:SCAN HDFS [tpcds.household_demographics]
-| | HDFS partitions=1/1 files=1 size=148.10KB
-| | predicates: ((household_demographics.hd_dep_count = 1 AND household_demographics.hd_vehicle_count <= 3) OR (household_demographics.hd_dep_count = 0 AND household_demographics.hd_vehicle_count <= 2) OR (household_demographics.hd_dep_count = 2 AND household_demographics.hd_vehicle_count <= 4))
-| | row-size=12B cardinality=720
-| |
-| 36:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_sold_time_sk = time_dim.t_time_sk
-| | row-size=24B cardinality=69.82K
-| |
-| |--JOIN BUILD
-| | | join-table-id=15 plan-id=16 cohort-id=05
-| | | build expressions: time_dim.t_time_sk
-| | | runtime filters: RF028 <- time_dim.t_time_sk
-| | |
-| | 94:EXCHANGE [BROADCAST]
-| | |
-| | 34:SCAN HDFS [tpcds.time_dim]
-| | HDFS partitions=1/1 files=1 size=4.87MB
-| | predicates: time_dim.t_hour = 10, time_dim.t_minute >= 30
-| | row-size=12B cardinality=1.14K
-| |
-| 32:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| runtime filters: RF028 -> ss_sold_time_sk
-| row-size=12B cardinality=2.88M
-|
-66:NESTED LOOP JOIN [CROSS JOIN, BROADCAST]
-| join table id: 16
-| row-size=32B cardinality=1
-|
-|--JOIN BUILD
-| | join-table-id=16 plan-id=17 cohort-id=01
-| |
-| 93:EXCHANGE [UNPARTITIONED]
-| |
-| 92:AGGREGATE [FINALIZE]
-| | output: count:merge(*)
-| | row-size=8B cardinality=1
-| |
-| 91:EXCHANGE [UNPARTITIONED]
-| |
-| 31:AGGREGATE
-| | output: count(*)
-| | row-size=8B cardinality=1
-| |
-| 30:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_store_sk = s_store_sk
-| | row-size=56B cardinality=2.27K
-| |
-| |--JOIN BUILD
-| | | join-table-id=17 plan-id=18 cohort-id=06
-| | | build expressions: s_store_sk
-| | |
-| | 90:EXCHANGE [BROADCAST]
-| | |
-| | 27:SCAN HDFS [tpcds.store]
-| | HDFS partitions=1/1 files=1 size=3.08KB
-| | predicates: store.s_store_name = 'ese'
-| | row-size=20B cardinality=2
-| |
-| 29:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_hdemo_sk = household_demographics.hd_demo_sk
-| | row-size=36B cardinality=6.82K
-| |
-| |--JOIN BUILD
-| | | join-table-id=18 plan-id=19 cohort-id=06
-| | | build expressions: household_demographics.hd_demo_sk
-| | |
-| | 89:EXCHANGE [BROADCAST]
-| | |
-| | 25:SCAN HDFS [tpcds.household_demographics]
-| | HDFS partitions=1/1 files=1 size=148.10KB
-| | predicates: ((household_demographics.hd_dep_count = 1 AND household_demographics.hd_vehicle_count <= 3) OR (household_demographics.hd_dep_count = 0 AND household_demographics.hd_vehicle_count <= 2) OR (household_demographics.hd_dep_count = 2 AND household_demographics.hd_vehicle_count <= 4))
-| | row-size=12B cardinality=720
-| |
-| 28:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_sold_time_sk = time_dim.t_time_sk
-| | row-size=24B cardinality=69.82K
-| |
-| |--JOIN BUILD
-| | | join-table-id=19 plan-id=20 cohort-id=06
-| | | build expressions: time_dim.t_time_sk
-| | | runtime filters: RF022 <- time_dim.t_time_sk
-| | |
-| | 88:EXCHANGE [BROADCAST]
-| | |
-| | 26:SCAN HDFS [tpcds.time_dim]
-| | HDFS partitions=1/1 files=1 size=4.87MB
-| | predicates: time_dim.t_hour = 10, time_dim.t_minute < 30
-| | row-size=12B cardinality=1.14K
-| |
-| 24:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| runtime filters: RF022 -> ss_sold_time_sk
-| row-size=12B cardinality=2.88M
-|
-65:NESTED LOOP JOIN [CROSS JOIN, BROADCAST]
-| join table id: 20
-| row-size=24B cardinality=1
-|
-|--JOIN BUILD
-| | join-table-id=20 plan-id=21 cohort-id=01
-| |
-| 87:EXCHANGE [UNPARTITIONED]
-| |
-| 86:AGGREGATE [FINALIZE]
-| | output: count:merge(*)
-| | row-size=8B cardinality=1
-| |
-| 85:EXCHANGE [UNPARTITIONED]
-| |
-| 23:AGGREGATE
-| | output: count(*)
-| | row-size=8B cardinality=1
-| |
-| 22:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_store_sk = s_store_sk
-| | row-size=56B cardinality=2.27K
-| |
-| |--JOIN BUILD
-| | | join-table-id=21 plan-id=22 cohort-id=07
-| | | build expressions: s_store_sk
-| | |
-| | 84:EXCHANGE [BROADCAST]
-| | |
-| | 19:SCAN HDFS [tpcds.store]
-| | HDFS partitions=1/1 files=1 size=3.08KB
-| | predicates: store.s_store_name = 'ese'
-| | row-size=20B cardinality=2
-| |
-| 21:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_hdemo_sk = household_demographics.hd_demo_sk
-| | row-size=36B cardinality=6.82K
-| |
-| |--JOIN BUILD
-| | | join-table-id=22 plan-id=23 cohort-id=07
-| | | build expressions: household_demographics.hd_demo_sk
-| | |
-| | 83:EXCHANGE [BROADCAST]
-| | |
-| | 17:SCAN HDFS [tpcds.household_demographics]
-| | HDFS partitions=1/1 files=1 size=148.10KB
-| | predicates: ((household_demographics.hd_dep_count = 1 AND household_demographics.hd_vehicle_count <= 3) OR (household_demographics.hd_dep_count = 0 AND household_demographics.hd_vehicle_count <= 2) OR (household_demographics.hd_dep_count = 2 AND household_demographics.hd_vehicle_count <= 4))
-| | row-size=12B cardinality=720
-| |
-| 20:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_sold_time_sk = time_dim.t_time_sk
-| | row-size=24B cardinality=69.82K
-| |
-| |--JOIN BUILD
-| | | join-table-id=23 plan-id=24 cohort-id=07
-| | | build expressions: time_dim.t_time_sk
-| | | runtime filters: RF016 <- time_dim.t_time_sk
-| | |
-| | 82:EXCHANGE [BROADCAST]
-| | |
-| | 18:SCAN HDFS [tpcds.time_dim]
-| | HDFS partitions=1/1 files=1 size=4.87MB
-| | predicates: time_dim.t_hour = 9, time_dim.t_minute >= 30
-| | row-size=12B cardinality=1.14K
-| |
-| 16:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| runtime filters: RF016 -> ss_sold_time_sk
-| row-size=12B cardinality=2.88M
-|
-64:NESTED LOOP JOIN [CROSS JOIN, BROADCAST]
-| join table id: 24
-| row-size=16B cardinality=1
-|
-|--JOIN BUILD
-| | join-table-id=24 plan-id=25 cohort-id=01
-| |
-| 81:EXCHANGE [UNPARTITIONED]
-| |
-| 80:AGGREGATE [FINALIZE]
-| | output: count:merge(*)
-| | row-size=8B cardinality=1
-| |
-| 79:EXCHANGE [UNPARTITIONED]
-| |
-| 15:AGGREGATE
-| | output: count(*)
-| | row-size=8B cardinality=1
-| |
-| 14:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_store_sk = s_store_sk
-| | row-size=56B cardinality=2.27K
-| |
-| |--JOIN BUILD
-| | | join-table-id=25 plan-id=26 cohort-id=08
-| | | build expressions: s_store_sk
-| | |
-| | 78:EXCHANGE [BROADCAST]
-| | |
-| | 11:SCAN HDFS [tpcds.store]
-| | HDFS partitions=1/1 files=1 size=3.08KB
-| | predicates: store.s_store_name = 'ese'
-| | row-size=20B cardinality=2
-| |
-| 13:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_hdemo_sk = household_demographics.hd_demo_sk
-| | row-size=36B cardinality=6.82K
-| |
-| |--JOIN BUILD
-| | | join-table-id=26 plan-id=27 cohort-id=08
-| | | build expressions: household_demographics.hd_demo_sk
-| | | runtime filters: RF008 <- household_demographics.hd_demo_sk
-| | |
-| | 77:EXCHANGE [BROADCAST]
-| | |
-| | 09:SCAN HDFS [tpcds.household_demographics]
-| | HDFS partitions=1/1 files=1 size=148.10KB
-| | predicates: ((household_demographics.hd_dep_count = 1 AND household_demographics.hd_vehicle_count <= 3) OR (household_demographics.hd_dep_count = 0 AND household_demographics.hd_vehicle_count <= 2) OR (household_demographics.hd_dep_count = 2 AND household_demographics.hd_vehicle_count <= 4))
-| | row-size=12B cardinality=720
-| |
-| 12:HASH JOIN [INNER JOIN, BROADCAST]
-| | hash predicates: ss_sold_time_sk = time_dim.t_time_sk
-| | row-size=24B cardinality=69.82K
-| |
-| |--JOIN BUILD
-| | | join-table-id=27 plan-id=28 cohort-id=08
-| | | build expressions: time_dim.t_time_sk
-| | | runtime filters: RF010 <- time_dim.t_time_sk
-| | |
-| | 76:EXCHANGE [BROADCAST]
-| | |
-| | 10:SCAN HDFS [tpcds.time_dim]
-| | HDFS partitions=1/1 files=1 size=4.87MB
-| | predicates: time_dim.t_hour = 9, time_dim.t_minute < 30
-| | row-size=12B cardinality=1.14K
-| |
-| 08:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| runtime filters: RF010 -> ss_sold_time_sk, RF008 -> ss_hdemo_sk
-| row-size=12B cardinality=2.88M
-|
-75:AGGREGATE [FINALIZE]
-| output: count:merge(*)
-| row-size=8B cardinality=1
-|
-74:EXCHANGE [UNPARTITIONED]
-|
-07:AGGREGATE
-| output: count(*)
-| row-size=8B cardinality=1
-|
-06:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_store_sk = s_store_sk
-| row-size=56B cardinality=2.27K
-|
-|--JOIN BUILD
-| | join-table-id=28 plan-id=29 cohort-id=01
-| | build expressions: s_store_sk
-| |
-| 73:EXCHANGE [BROADCAST]
-| |
-| 03:SCAN HDFS [tpcds.store]
-| HDFS partitions=1/1 files=1 size=3.08KB
-| predicates: store.s_store_name = 'ese'
-| row-size=20B cardinality=2
-|
-05:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_hdemo_sk = household_demographics.hd_demo_sk
-| row-size=36B cardinality=6.82K
-|
-|--JOIN BUILD
-| | join-table-id=29 plan-id=30 cohort-id=01
-| | build expressions: household_demographics.hd_demo_sk
-| | runtime filters: RF002 <- household_demographics.hd_demo_sk
-| |
-| 72:EXCHANGE [BROADCAST]
-| |
-| 01:SCAN HDFS [tpcds.household_demographics]
-| HDFS partitions=1/1 files=1 size=148.10KB
-| predicates: ((household_demographics.hd_dep_count = 1 AND household_demographics.hd_vehicle_count <= 3) OR (household_demographics.hd_dep_count = 0 AND household_demographics.hd_vehicle_count <= 2) OR (household_demographics.hd_dep_count = 2 AND household_demographics.hd_vehicle_count <= 4))
-| row-size=12B cardinality=720
-|
-04:HASH JOIN [INNER JOIN, BROADCAST]
-| hash predicates: ss_sold_time_sk = time_dim.t_time_sk
-| row-size=24B cardinality=69.82K
-|
-|--JOIN BUILD
-| | join-table-id=30 plan-id=31 cohort-id=01
-| | build expressions: time_dim.t_time_sk
-| | runtime filters: RF004 <- time_dim.t_time_sk
-| |
-| 71:EXCHANGE [BROADCAST]
-| |
-| 02:SCAN HDFS [tpcds.time_dim]
-| HDFS partitions=1/1 files=1 size=4.87MB
-| predicates: time_dim.t_hour = 8, time_dim.t_minute >= 30
-| row-size=12B cardinality=1.14K
-|
-00:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- runtime filters: RF004 -> ss_sold_time_sk, RF002 -> ss_hdemo_sk
- row-size=12B cardinality=2.88M
-====
-# TPCDS-Q9
-select case when (select count(*)
- from store_sales
- where ss_quantity between 1 and 20) > 74129
- then (select avg(ss_ext_discount_amt)
- from store_sales
- where ss_quantity between 1 and 20)
- else (select avg(ss_net_profit)
- from store_sales
- where ss_quantity between 1 and 20) end bucket1,
- case when (select count(*)
- from store_sales
- where ss_quantity between 21 and 40) > 122840
- then (select avg(ss_ext_discount_amt)
- from store_sales
- where ss_quantity between 21 and 40)
- else (select avg(ss_net_profit)
- from store_sales
- where ss_quantity between 21 and 40) end bucket2,
- case when (select count(*)
- from store_sales
- where ss_quantity between 41 and 60) > 56580
- then (select avg(ss_ext_discount_amt)
- from store_sales
- where ss_quantity between 41 and 60)
- else (select avg(ss_net_profit)
- from store_sales
- where ss_quantity between 41 and 60) end bucket3,
- case when (select count(*)
- from store_sales
- where ss_quantity between 61 and 80) > 10097
- then (select avg(ss_ext_discount_amt)
- from store_sales
- where ss_quantity between 61 and 80)
- else (select avg(ss_net_profit)
- from store_sales
- where ss_quantity between 61 and 80) end bucket4,
- case when (select count(*)
- from store_sales
- where ss_quantity between 81 and 100) > 165306
- then (select avg(ss_ext_discount_amt)
- from store_sales
- where ss_quantity between 81 and 100)
- else (select avg(ss_net_profit)
- from store_sales
- where ss_quantity between 81 and 100) end bucket5
-from reason
-where r_reason_sk = 1
----- PLAN
-Max Per-Host Resource Reservation: Memory=120.01MB Threads=17
-Per-Host Resource Estimates: Memory=2.05GB
-PLAN-ROOT SINK
-|
-45:NESTED LOOP JOIN [CROSS JOIN]
-| row-size=124B cardinality=1
-|
-|--30:AGGREGATE [FINALIZE]
-| | output: avg(ss_net_profit)
-| | row-size=8B cardinality=1
-| |
-| 29:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| predicates: ss_quantity <= 100, ss_quantity >= 81
-| row-size=8B cardinality=288.04K
-|
-44:NESTED LOOP JOIN [CROSS JOIN]
-| row-size=116B cardinality=1
-|
-|--28:AGGREGATE [FINALIZE]
-| | output: avg(ss_ext_discount_amt)
-| | row-size=8B cardinality=1
-| |
-| 27:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| predicates: ss_quantity <= 100, ss_quantity >= 81
-| row-size=8B cardinality=288.04K
-|
-43:NESTED LOOP JOIN [CROSS JOIN]
-| row-size=108B cardinality=1
-|
-|--26:AGGREGATE [FINALIZE]
-| | output: count(*)
-| | row-size=8B cardinality=1
-| |
-| 25:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| predicates: ss_quantity <= 100, ss_quantity >= 81
-| row-size=4B cardinality=288.04K
-|
-42:NESTED LOOP JOIN [CROSS JOIN]
-| row-size=100B cardinality=1
-|
-|--24:AGGREGATE [FINALIZE]
-| | output: avg(ss_net_profit)
-| | row-size=8B cardinality=1
-| |
-| 23:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| predicates: ss_quantity <= 80, ss_quantity >= 61
-| row-size=8B cardinality=288.04K
-|
-41:NESTED LOOP JOIN [CROSS JOIN]
-| row-size=92B cardinality=1
-|
-|--22:AGGREGATE [FINALIZE]
-| | output: avg(ss_ext_discount_amt)
-| | row-size=8B cardinality=1
-| |
-| 21:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| predicates: ss_quantity <= 80, ss_quantity >= 61
-| row-size=8B cardinality=288.04K
-|
-40:NESTED LOOP JOIN [CROSS JOIN]
-| row-size=84B cardinality=1
-|
-|--20:AGGREGATE [FINALIZE]
-| | output: count(*)
-| | row-size=8B cardinality=1
-| |
-| 19:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| predicates: ss_quantity <= 80, ss_quantity >= 61
-| row-size=4B cardinality=288.04K
-|
-39:NESTED LOOP JOIN [CROSS JOIN]
-| row-size=76B cardinality=1
-|
-|--18:AGGREGATE [FINALIZE]
-| | output: avg(ss_net_profit)
-| | row-size=8B cardinality=1
-| |
-| 17:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| predicates: ss_quantity <= 60, ss_quantity >= 41
-| row-size=8B cardinality=288.04K
-|
-38:NESTED LOOP JOIN [CROSS JOIN]
-| row-size=68B cardinality=1
-|
-|--16:AGGREGATE [FINALIZE]
-| | output: avg(ss_ext_discount_amt)
-| | row-size=8B cardinality=1
-| |
-| 15:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| predicates: ss_quantity <= 60, ss_quantity >= 41
-| row-size=8B cardinality=288.04K
-|
-37:NESTED LOOP JOIN [CROSS JOIN]
-| row-size=60B cardinality=1
-|
-|--14:AGGREGATE [FINALIZE]
-| | output: count(*)
-| | row-size=8B cardinality=1
-| |
-| 13:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| predicates: ss_quantity <= 60, ss_quantity >= 41
-| row-size=4B cardinality=288.04K
-|
-36:NESTED LOOP JOIN [CROSS JOIN]
-| row-size=52B cardinality=1
-|
-|--12:AGGREGATE [FINALIZE]
-| | output: avg(ss_net_profit)
-| | row-size=8B cardinality=1
-| |
-| 11:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| predicates: ss_quantity <= 40, ss_quantity >= 21
-| row-size=8B cardinality=288.04K
-|
-35:NESTED LOOP JOIN [CROSS JOIN]
-| row-size=44B cardinality=1
-|
-|--10:AGGREGATE [FINALIZE]
-| | output: avg(ss_ext_discount_amt)
-| | row-size=8B cardinality=1
-| |
-| 09:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| predicates: ss_quantity <= 40, ss_quantity >= 21
-| row-size=8B cardinality=288.04K
-|
-34:NESTED LOOP JOIN [CROSS JOIN]
-| row-size=36B cardinality=1
-|
-|--08:AGGREGATE [FINALIZE]
-| | output: count(*)
-| | row-size=8B cardinality=1
-| |
-| 07:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| predicates: ss_quantity <= 40, ss_quantity >= 21
-| row-size=4B cardinality=288.04K
-|
-33:NESTED LOOP JOIN [CROSS JOIN]
-| row-size=28B cardinality=1
-|
-|--06:AGGREGATE [FINALIZE]
-| | output: avg(ss_net_profit)
-| | row-size=8B cardinality=1
-| |
-| 05:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| predicates: ss_quantity <= 20, ss_quantity >= 1
-| row-size=8B cardinality=288.04K
-|
-32:NESTED LOOP JOIN [CROSS JOIN]
-| row-size=20B cardinality=1
-|
-|--04:AGGREGATE [FINALIZE]
-| | output: avg(ss_ext_discount_amt)
-| | row-size=8B cardinality=1
-| |
-| 03:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| predicates: ss_quantity <= 20, ss_quantity >= 1
-| row-size=8B cardinality=288.04K
-|
-31:NESTED LOOP JOIN [CROSS JOIN]
-| row-size=12B cardinality=1
-|
-|--00:SCAN HDFS [tpcds.reason]
-| HDFS partitions=1/1 files=1 size=1.31KB
-| predicates: r_reason_sk = 1
-| row-size=4B cardinality=1
-|
-02:AGGREGATE [FINALIZE]
-| output: count(*)
-| row-size=8B cardinality=1
-|
-01:SCAN HDFS [tpcds.store_sales]
- HDFS partitions=1824/1824 files=1824 size=346.60MB
- predicates: ss_quantity <= 20, ss_quantity >= 1
- row-size=4B cardinality=288.04K
----- DISTRIBUTEDPLAN
-Max Per-Host Resource Reservation: Memory=120.01MB Threads=47
-Per-Host Resource Estimates: Memory=2.20GB
-PLAN-ROOT SINK
-|
-45:NESTED LOOP JOIN [CROSS JOIN, BROADCAST]
-| row-size=124B cardinality=1
-|
-|--90:EXCHANGE [UNPARTITIONED]
-| |
-| 89:AGGREGATE [FINALIZE]
-| | output: avg:merge(ss_net_profit)
-| | row-size=8B cardinality=1
-| |
-| 88:EXCHANGE [UNPARTITIONED]
-| |
-| 30:AGGREGATE
-| | output: avg(ss_net_profit)
-| | row-size=8B cardinality=1
-| |
-| 29:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| predicates: ss_quantity <= 100, ss_quantity >= 81
-| row-size=8B cardinality=288.04K
-|
-44:NESTED LOOP JOIN [CROSS JOIN, BROADCAST]
-| row-size=116B cardinality=1
-|
-|--87:EXCHANGE [UNPARTITIONED]
-| |
-| 86:AGGREGATE [FINALIZE]
-| | output: avg:merge(ss_ext_discount_amt)
-| | row-size=8B cardinality=1
-| |
-| 85:EXCHANGE [UNPARTITIONED]
-| |
-| 28:AGGREGATE
-| | output: avg(ss_ext_discount_amt)
-| | row-size=8B cardinality=1
-| |
-| 27:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| predicates: ss_quantity <= 100, ss_quantity >= 81
-| row-size=8B cardinality=288.04K
-|
-43:NESTED LOOP JOIN [CROSS JOIN, BROADCAST]
-| row-size=108B cardinality=1
-|
-|--84:EXCHANGE [UNPARTITIONED]
-| |
-| 83:AGGREGATE [FINALIZE]
-| | output: count:merge(*)
-| | row-size=8B cardinality=1
-| |
-| 82:EXCHANGE [UNPARTITIONED]
-| |
-| 26:AGGREGATE
-| | output: count(*)
-| | row-size=8B cardinality=1
-| |
-| 25:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| predicates: ss_quantity <= 100, ss_quantity >= 81
-| row-size=4B cardinality=288.04K
-|
-42:NESTED LOOP JOIN [CROSS JOIN, BROADCAST]
-| row-size=100B cardinality=1
-|
-|--81:EXCHANGE [UNPARTITIONED]
-| |
-| 80:AGGREGATE [FINALIZE]
-| | output: avg:merge(ss_net_profit)
-| | row-size=8B cardinality=1
-| |
-| 79:EXCHANGE [UNPARTITIONED]
-| |
-| 24:AGGREGATE
-| | output: avg(ss_net_profit)
-| | row-size=8B cardinality=1
-| |
-| 23:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| predicates: ss_quantity <= 80, ss_quantity >= 61
-| row-size=8B cardinality=288.04K
-|
-41:NESTED LOOP JOIN [CROSS JOIN, BROADCAST]
-| row-size=92B cardinality=1
-|
-|--78:EXCHANGE [UNPARTITIONED]
-| |
-| 77:AGGREGATE [FINALIZE]
-| | output: avg:merge(ss_ext_discount_amt)
-| | row-size=8B cardinality=1
-| |
-| 76:EXCHANGE [UNPARTITIONED]
-| |
-| 22:AGGREGATE
-| | output: avg(ss_ext_discount_amt)
-| | row-size=8B cardinality=1
-| |
-| 21:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| predicates: ss_quantity <= 80, ss_quantity >= 61
-| row-size=8B cardinality=288.04K
-|
-40:NESTED LOOP JOIN [CROSS JOIN, BROADCAST]
-| row-size=84B cardinality=1
-|
-|--75:EXCHANGE [UNPARTITIONED]
-| |
-| 74:AGGREGATE [FINALIZE]
-| | output: count:merge(*)
-| | row-size=8B cardinality=1
-| |
-| 73:EXCHANGE [UNPARTITIONED]
-| |
-| 20:AGGREGATE
-| | output: count(*)
-| | row-size=8B cardinality=1
-| |
-| 19:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| predicates: ss_quantity <= 80, ss_quantity >= 61
-| row-size=4B cardinality=288.04K
-|
-39:NESTED LOOP JOIN [CROSS JOIN, BROADCAST]
-| row-size=76B cardinality=1
-|
-|--72:EXCHANGE [UNPARTITIONED]
-| |
-| 71:AGGREGATE [FINALIZE]
-| | output: avg:merge(ss_net_profit)
-| | row-size=8B cardinality=1
-| |
-| 70:EXCHANGE [UNPARTITIONED]
-| |
-| 18:AGGREGATE
-| | output: avg(ss_net_profit)
-| | row-size=8B cardinality=1
-| |
-| 17:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| predicates: ss_quantity <= 60, ss_quantity >= 41
-| row-size=8B cardinality=288.04K
-|
-38:NESTED LOOP JOIN [CROSS JOIN, BROADCAST]
-| row-size=68B cardinality=1
-|
-|--69:EXCHANGE [UNPARTITIONED]
-| |
-| 68:AGGREGATE [FINALIZE]
-| | output: avg:merge(ss_ext_discount_amt)
-| | row-size=8B cardinality=1
-| |
-| 67:EXCHANGE [UNPARTITIONED]
-| |
-| 16:AGGREGATE
-| | output: avg(ss_ext_discount_amt)
-| | row-size=8B cardinality=1
-| |
-| 15:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| predicates: ss_quantity <= 60, ss_quantity >= 41
-| row-size=8B cardinality=288.04K
-|
-37:NESTED LOOP JOIN [CROSS JOIN, BROADCAST]
-| row-size=60B cardinality=1
-|
-|--66:EXCHANGE [UNPARTITIONED]
-| |
-| 65:AGGREGATE [FINALIZE]
-| | output: count:merge(*)
-| | row-size=8B cardinality=1
-| |
-| 64:EXCHANGE [UNPARTITIONED]
-| |
-| 14:AGGREGATE
-| | output: count(*)
-| | row-size=8B cardinality=1
-| |
-| 13:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| predicates: ss_quantity <= 60, ss_quantity >= 41
-| row-size=4B cardinality=288.04K
-|
-36:NESTED LOOP JOIN [CROSS JOIN, BROADCAST]
-| row-size=52B cardinality=1
-|
-|--63:EXCHANGE [UNPARTITIONED]
-| |
-| 62:AGGREGATE [FINALIZE]
-| | output: avg:merge(ss_net_profit)
-| | row-size=8B cardinality=1
-| |
-| 61:EXCHANGE [UNPARTITIONED]
-| |
-| 12:AGGREGATE
-| | output: avg(ss_net_profit)
-| | row-size=8B cardinality=1
-| |
-| 11:SCAN HDFS [tpcds.store_sales]
-| HDFS partitions=1824/1824 files=1824 size=346.60MB
-| predicates: ss_quantity <= 40, ss_quantity >= 21
-| row-size=8B cardinality=288.04K
-|
-35:NESTED LOOP JOIN [CROSS JOIN, BROADCAST]
-| row-size=44B cardinality=1
-|
-|--60:EXCHANGE [UNPARTITIONED]
-| |
-| 59:AGGREGATE [FINALIZE]
-| | output: avg:merge(ss_ext_discount_amt)
-| | row-size=8B cardinality=1
-| |
-| 58:EXCHANGE [UNPARTITIONED]
-| |
-| 10:AGGREGATE
-| | output: avg(ss_ext_discount_amt)
-| | row-size=8B cardinality=1
-| |
-| 09:SCAN HDFS [tpcds.store_sales]
... 99717 lines suppressed ...