diff --git a/itests/src/test/resources/testconfiguration.properties b/itests/src/test/resources/testconfiguration.properties index da2091ac5d..eeca1c9d4e 100644 --- a/itests/src/test/resources/testconfiguration.properties +++ b/itests/src/test/resources/testconfiguration.properties @@ -1731,6 +1731,8 @@ spark.only.query.negative.files=spark_job_max_tasks.q,\ spark_submit_negative_executor_cores.q,\ spark_submit_negative_executor_memory.q +tez.perf.disabled.query.files=mv_query44.q + spark.perf.disabled.query.files=query14.q,\ query64.q,\ cbo_query1.q,\ @@ -1829,7 +1831,8 @@ spark.perf.disabled.query.files=query14.q,\ cbo_query96.q,\ cbo_query97.q,\ cbo_query98.q,\ - cbo_query99.q + cbo_query99.q,\ + mv_query44.q druid.query.files=druidmini_test1.q,\ druidmini_test_ts.q,\ diff --git a/itests/util/src/main/java/org/apache/hadoop/hive/cli/control/CliConfigs.java b/itests/util/src/main/java/org/apache/hadoop/hive/cli/control/CliConfigs.java index afff0df759..df058eaf6d 100644 --- a/itests/util/src/main/java/org/apache/hadoop/hive/cli/control/CliConfigs.java +++ b/itests/util/src/main/java/org/apache/hadoop/hive/cli/control/CliConfigs.java @@ -285,6 +285,12 @@ public TezPerfCliConfig(boolean useConstraints) { try { setQueryDir("ql/src/test/queries/clientpositive/perf"); + if (useConstraints) { + excludesFrom(testConfigProps, "tez.perf.constraints.disabled.query.files"); + } else { + excludesFrom(testConfigProps, "tez.perf.disabled.query.files"); + } + excludesFrom(testConfigProps, "minimr.query.files"); excludesFrom(testConfigProps, "minitez.query.files"); excludesFrom(testConfigProps, "encrypted.query.files"); diff --git a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/rules/HiveProjectJoinTransposeRule.java b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/rules/HiveProjectJoinTransposeRule.java index 43c78968d0..38759c0525 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/rules/HiveProjectJoinTransposeRule.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/rules/HiveProjectJoinTransposeRule.java @@ -17,17 +17,131 @@ */ package org.apache.hadoop.hive.ql.optimizer.calcite.rules; -import org.apache.calcite.rel.rules.ProjectJoinTransposeRule; +import java.util.ArrayList; +import java.util.List; +import org.apache.calcite.plan.RelOptRule; +import org.apache.calcite.plan.RelOptRuleCall; +import org.apache.calcite.rel.RelNode; +import org.apache.calcite.rel.core.Join; +import org.apache.calcite.rel.core.Project; +import org.apache.calcite.rel.core.SemiJoin; +import org.apache.calcite.rel.rules.PushProjector; +import org.apache.calcite.rel.type.RelDataTypeField; +import org.apache.calcite.rex.RexNode; import org.apache.calcite.tools.RelBuilderFactory; import org.apache.hadoop.hive.ql.optimizer.calcite.HiveRelFactories; -public class HiveProjectJoinTransposeRule extends ProjectJoinTransposeRule { +/** + * Planner rule that pushes a {@link org.apache.calcite.rel.core.Project} + * past a {@link org.apache.calcite.rel.core.Join} + * by splitting the projection into a projection on top of each child of + * the join. + * TODO: Use Calcite rule once we can pass the matching operand as a parameter + */ +public class HiveProjectJoinTransposeRule extends RelOptRule { public static final HiveProjectJoinTransposeRule INSTANCE = new HiveProjectJoinTransposeRule(HiveRelFactories.HIVE_BUILDER); + /** + * Condition for expressions that should be preserved in the projection. + */ + private final PushProjector.ExprCondition preserveExprCondition; + private HiveProjectJoinTransposeRule(RelBuilderFactory relBuilderFactory) { - super(expr -> true, relBuilderFactory); + super( + operand(Project.class, + operand(Join.class, + operand(RelNode.class, any()), + operand(RelNode.class, any()))), + relBuilderFactory, "HiveProjectJoinTransposeRule"); + this.preserveExprCondition = expr -> true; + } + + @Override + public boolean matches(RelOptRuleCall call) { + final RelNode leftInput = call.rel(2); + final RelNode rightInput = call.rel(3); + + if (leftInput instanceof Project && rightInput instanceof Project) { + return false; + } + + return true; + } + + //~ Methods ---------------------------------------------------------------- + + // implement RelOptRule + public void onMatch(RelOptRuleCall call) { + Project origProj = call.rel(0); + final Join join = call.rel(1); + + if (join instanceof SemiJoin) { + return; // TODO: support SemiJoin + } + // locate all fields referenced in the projection and join condition; + // determine which inputs are referenced in the projection and + // join condition; if all fields are being referenced and there are no + // special expressions, no point in proceeding any further + PushProjector pushProject = + new PushProjector( + origProj, + join.getCondition(), + join, + preserveExprCondition, + call.builder()); + if (pushProject.locateAllRefs()) { + return; + } + + // create left and right projections, projecting only those + // fields referenced on each side + RelNode leftProjRel = + pushProject.createProjectRefsAndExprs( + join.getLeft(), + true, + false); + RelNode rightProjRel = + pushProject.createProjectRefsAndExprs( + join.getRight(), + true, + true); + + // convert the join condition to reference the projected columns + RexNode newJoinFilter = null; + int[] adjustments = pushProject.getAdjustments(); + if (join.getCondition() != null) { + List projJoinFieldList = new ArrayList<>(); + projJoinFieldList.addAll( + join.getSystemFieldList()); + projJoinFieldList.addAll( + leftProjRel.getRowType().getFieldList()); + projJoinFieldList.addAll( + rightProjRel.getRowType().getFieldList()); + newJoinFilter = + pushProject.convertRefsAndExprs( + join.getCondition(), + projJoinFieldList, + adjustments); + } + + // create a new join with the projected children + Join newJoinRel = + join.copy( + join.getTraitSet(), + newJoinFilter, + leftProjRel, + rightProjRel, + join.getJoinType(), + join.isSemiJoinDone()); + + // put the original project on top of the join, converting it to + // reference the modified projection list + RelNode topProject = + pushProject.createNewProject(newJoinRel, adjustments); + + call.transformTo(topProject); } } diff --git a/ql/src/java/org/apache/hadoop/hive/ql/parse/CalcitePlanner.java b/ql/src/java/org/apache/hadoop/hive/ql/parse/CalcitePlanner.java index ab63ce2bc3..11c8f5f02c 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/parse/CalcitePlanner.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/parse/CalcitePlanner.java @@ -2250,7 +2250,7 @@ private RelNode copyNodeScan(RelNode scan) { perfLogger.PerfLogEnd(this.getClass().getName(), PerfLogger.OPTIMIZER, "Calcite: View-based rewriting"); - if (calcitePreMVRewritingPlan != basePlan) { + if (!RelOptUtil.toString(calcitePreMVRewritingPlan).equals(RelOptUtil.toString(basePlan))) { // A rewriting was produced, we will check whether it was part of an incremental rebuild // to try to replace INSERT OVERWRITE by INSERT if (mvRebuildMode == MaterializationRebuildMode.INSERT_OVERWRITE_REBUILD && diff --git a/ql/src/test/queries/clientpositive/perf/mv_query44.q b/ql/src/test/queries/clientpositive/perf/mv_query44.q new file mode 100644 index 0000000000..7415f5e5e1 --- /dev/null +++ b/ql/src/test/queries/clientpositive/perf/mv_query44.q @@ -0,0 +1,47 @@ +set hive.mapred.mode=nonstrict; +set hive.materializedview.rewriting.time.window=-1; + +-- start query 1 in stream 0 using template query44.tpl and seed 1819994127 + +CREATE MATERIALIZED VIEW mv_store_sales_item_customer PARTITIONED ON (ss_sold_date_sk) +AS + select ss_item_sk, ss_store_sk, ss_customer_sk, ss_sold_date_sk, count(*) cnt, sum(ss_quantity) as ss_quantity, sum(ss_ext_wholesale_cost) as ss_ext_wholesale_cost,sum(ss_net_paid) as ss_net_paid,sum(ss_net_profit) as ss_net_profit, sum(ss_ext_sales_price) as ss_ext_sales_price, sum(ss_coupon_amt) amt, sum(ss_sales_price) ss_sales_price, sum(ss_quantity*ss_sales_price) ssales + from store_sales + group by ss_store_sk, + ss_item_sk, ss_customer_sk, ss_sold_date_sk; + +explain +select asceding.rnk, i1.i_product_name best_performing, i2.i_product_name worst_performing +from(select * + from (select item_sk,rank() over (order by rank_col asc) rnk + from (select ss_item_sk item_sk,avg(ss_net_profit) rank_col + from store_sales ss1 + where ss_store_sk = 410 + group by ss_item_sk + having avg(ss_net_profit) > 0.9*(select avg(ss_net_profit) rank_col + from store_sales + where ss_store_sk = 410 + and ss_hdemo_sk is null + group by ss_store_sk))V1)V11 + where rnk < 11) asceding, + (select * + from (select item_sk,rank() over (order by rank_col desc) rnk + from (select ss_item_sk item_sk,avg(ss_net_profit) rank_col + from store_sales ss1 + where ss_store_sk = 410 + group by ss_item_sk + having avg(ss_net_profit) > 0.9*(select avg(ss_net_profit) rank_col + from store_sales + where ss_store_sk = 410 + and ss_hdemo_sk is null + group by ss_store_sk))V2)V21 + where rnk < 11) descending, +item i1, +item i2 +where asceding.rnk = descending.rnk + and i1.i_item_sk=asceding.item_sk + and i2.i_item_sk=descending.item_sk +order by asceding.rnk +limit 100; + +-- end query 1 in stream 0 using template query44.tpl diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query11.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query11.q.out index cd1eb71e8a..24bd6fdec2 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query11.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query11.q.out @@ -159,7 +159,7 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### CBO PLAN: HiveSortLimit(sort0=[$0], dir0=[ASC], fetch=[100]) HiveProject(c_preferred_cust_flag=[$1]) - HiveJoin(condition=[AND(=($0, $5), CASE($7, CASE($10, >(/($4, $9), /($2, $6)), >(null, /($2, $6))), CASE($10, >(/($4, $9), null), null)))], joinType=[inner], algorithm=[none], cost=[not available]) + HiveJoin(condition=[AND(=($0, $5), CASE(CAST(IS NOT NULL($6)):BOOLEAN, CASE($9, >(/($4, $8), /($2, $6)), >(null, /($2, $6))), CASE($9, >(/($4, $8), null), null)))], joinType=[inner], algorithm=[none], cost=[not available]) HiveProject($f0=[$0], $f4=[$3], $f9=[$7]) HiveAggregate(group=[{1, 2, 3, 4, 5, 6, 7}], agg#0=[sum($10)]) HiveJoin(condition=[=($0, $9)], joinType=[inner], algorithm=[none], cost=[not available]) @@ -172,7 +172,7 @@ HiveSortLimit(sort0=[$0], dir0=[ASC], fetch=[100]) HiveProject(d_date_sk=[$0]) HiveFilter(condition=[=($6, 2002)]) HiveTableScan(table=[[default, date_dim]], table:alias=[date_dim]) - HiveJoin(condition=[=($2, $5)], joinType=[inner], algorithm=[none], cost=[not available]) + HiveJoin(condition=[=($2, $4)], joinType=[inner], algorithm=[none], cost=[not available]) HiveJoin(condition=[=($2, $0)], joinType=[inner], algorithm=[none], cost=[not available]) HiveProject($f0=[$0], $f8=[$7]) HiveAggregate(group=[{1, 2, 3, 4, 5, 6, 7}], agg#0=[sum($10)]) @@ -186,7 +186,7 @@ HiveSortLimit(sort0=[$0], dir0=[ASC], fetch=[100]) HiveProject(d_date_sk=[$0]) HiveFilter(condition=[=($6, 2002)]) HiveTableScan(table=[[default, date_dim]], table:alias=[date_dim]) - HiveProject(customer_id=[$0], year_total=[$7], CAST=[CAST(IS NOT NULL($7)):BOOLEAN]) + HiveProject($f0=[$0], $f9=[$7]) HiveFilter(condition=[>($7, 0)]) HiveAggregate(group=[{1, 2, 3, 4, 5, 6, 7}], agg#0=[sum($10)]) HiveJoin(condition=[=($0, $9)], joinType=[inner], algorithm=[none], cost=[not available]) diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query2.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query2.q.out index c245b9bc4e..07ab7a16e0 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query2.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query2.q.out @@ -126,8 +126,8 @@ POSTHOOK: Input: default@web_sales POSTHOOK: Output: hdfs://### HDFS PATH ### CBO PLAN: HiveSortLimit(sort0=[$0], dir0=[ASC]) - HiveProject(d_week_seq1=[$0], _o__c1=[round(/($1, $9), 2)], _o__c2=[round(/($2, $10), 2)], _o__c3=[round(/($3, $11), 2)], _o__c4=[round(/($4, $12), 2)], _o__c5=[round(/($5, $13), 2)], _o__c6=[round(/($6, $14), 2)], _o__c7=[round(/($7, $15), 2)]) - HiveJoin(condition=[=($0, $16)], joinType=[inner], algorithm=[none], cost=[not available]) + HiveProject(d_week_seq1=[$0], _o__c1=[round(/($1, $10), 2)], _o__c2=[round(/($2, $11), 2)], _o__c3=[round(/($3, $12), 2)], _o__c4=[round(/($4, $13), 2)], _o__c5=[round(/($5, $14), 2)], _o__c6=[round(/($6, $15), 2)], _o__c7=[round(/($7, $16), 2)]) + HiveJoin(condition=[=($0, -($9, 53))], joinType=[inner], algorithm=[none], cost=[not available]) HiveJoin(condition=[=($8, $0)], joinType=[inner], algorithm=[none], cost=[not available]) HiveProject($f0=[$0], $f1=[$1], $f2=[$2], $f3=[$3], $f4=[$4], $f5=[$5], $f6=[$6], $f7=[$7]) HiveAggregate(group=[{0}], agg#0=[sum($1)], agg#1=[sum($2)], agg#2=[sum($3)], agg#3=[sum($4)], agg#4=[sum($5)], agg#5=[sum($6)], agg#6=[sum($7)]) @@ -147,7 +147,7 @@ HiveSortLimit(sort0=[$0], dir0=[ASC]) HiveProject(d_week_seq=[$4]) HiveFilter(condition=[AND(=($6, 2001), IS NOT NULL($4))]) HiveTableScan(table=[[default, date_dim]], table:alias=[date_dim]) - HiveProject(sun_sales2=[$1], mon_sales2=[$2], tue_sales2=[$3], wed_sales2=[$4], thu_sales2=[$5], fri_sales2=[$6], sat_sales2=[$7], -=[-($0, 53)]) + HiveProject(d_week_seq2=[$0], sun_sales2=[$1], mon_sales2=[$2], tue_sales2=[$3], wed_sales2=[$4], thu_sales2=[$5], fri_sales2=[$6], sat_sales2=[$7]) HiveJoin(condition=[=($8, $0)], joinType=[inner], algorithm=[none], cost=[not available]) HiveProject($f0=[$0], $f1=[$1], $f2=[$2], $f3=[$3], $f4=[$4], $f5=[$5], $f6=[$6], $f7=[$7]) HiveAggregate(group=[{0}], agg#0=[sum($1)], agg#1=[sum($2)], agg#2=[sum($3)], agg#3=[sum($4)], agg#4=[sum($5)], agg#5=[sum($6)], agg#6=[sum($7)]) diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query23.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query23.q.out index 9629a7112e..1d2e0df126 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query23.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query23.q.out @@ -1,7 +1,7 @@ -Warning: Shuffle Join MERGEJOIN[445][tables = [$hdt$_1, $hdt$_2]] in Stage 'Reducer 19' is a cross product -Warning: Shuffle Join MERGEJOIN[446][tables = [$hdt$_1, $hdt$_2, $hdt$_0]] in Stage 'Reducer 20' is a cross product -Warning: Shuffle Join MERGEJOIN[448][tables = [$hdt$_2, $hdt$_3]] in Stage 'Reducer 24' is a cross product -Warning: Shuffle Join MERGEJOIN[449][tables = [$hdt$_2, $hdt$_3, $hdt$_1]] in Stage 'Reducer 25' is a cross product +Warning: Shuffle Join MERGEJOIN[437][tables = [$hdt$_1, $hdt$_2]] in Stage 'Reducer 19' is a cross product +Warning: Shuffle Join MERGEJOIN[438][tables = [$hdt$_1, $hdt$_2, $hdt$_0]] in Stage 'Reducer 20' is a cross product +Warning: Shuffle Join MERGEJOIN[440][tables = [$hdt$_2, $hdt$_3]] in Stage 'Reducer 23' is a cross product +Warning: Shuffle Join MERGEJOIN[441][tables = [$hdt$_2, $hdt$_3, $hdt$_1]] in Stage 'Reducer 24' is a cross product PREHOOK: query: explain cbo with frequent_ss_items as (select substr(i_item_desc,1,30) itemdesc,i_item_sk item_sk,d_date solddate,count(*) cnt @@ -127,42 +127,41 @@ HiveSortLimit(fetch=[100]) HiveProject(sales=[*(CAST($4):DECIMAL(10, 0), $5)]) HiveJoin(condition=[=($3, $7)], joinType=[inner], algorithm=[none], cost=[not available]) HiveJoin(condition=[=($2, $0)], joinType=[inner], algorithm=[none], cost=[not available]) - HiveProject(ss_customer_sk=[$0]) - HiveAggregate(group=[{0}]) - HiveJoin(condition=[>($1, $3)], joinType=[inner], algorithm=[none], cost=[not available]) - HiveProject(ss_customer_sk=[$0], $f1=[$1]) - HiveAggregate(group=[{0}], agg#0=[sum($1)]) - HiveProject(ss_customer_sk=[CAST($3):INTEGER NOT NULL], *=[*(CAST($10):DECIMAL(10, 0), $13)]) - HiveFilter(condition=[IS NOT NULL($3)]) - HiveTableScan(table=[[default, store_sales]], table:alias=[store_sales]) - HiveJoin(condition=[true], joinType=[inner], algorithm=[none], cost=[not available]) - HiveProject(cnt=[$0]) - HiveFilter(condition=[<=(sq_count_check($0), 1)]) - HiveProject(cnt=[$0]) - HiveAggregate(group=[{}], cnt=[COUNT()]) - HiveProject - HiveProject($f0=[$0]) - HiveAggregate(group=[{}], agg#0=[count($0)]) - HiveProject(ss_customer_sk=[$0], $f1=[$1]) - HiveAggregate(group=[{1}], agg#0=[sum($2)]) - HiveJoin(condition=[=($0, $3)], joinType=[inner], algorithm=[none], cost=[not available]) - HiveProject(ss_sold_date_sk=[$0], ss_customer_sk=[CAST($3):INTEGER NOT NULL], *=[*(CAST($10):DECIMAL(10, 0), $13)]) - HiveFilter(condition=[AND(IS NOT NULL($3), IS NOT NULL($0))]) - HiveTableScan(table=[[default, store_sales]], table:alias=[store_sales]) - HiveProject(d_date_sk=[$0]) - HiveFilter(condition=[IN($6, 1999, 2000, 2001, 2002)]) - HiveTableScan(table=[[default, date_dim]], table:alias=[date_dim]) - HiveProject(*=[*(0.95, $0)]) - HiveAggregate(group=[{}], agg#0=[max($1)]) - HiveProject(ss_customer_sk=[$0], $f1=[$1]) - HiveAggregate(group=[{1}], agg#0=[sum($2)]) - HiveJoin(condition=[=($0, $3)], joinType=[inner], algorithm=[none], cost=[not available]) - HiveProject(ss_sold_date_sk=[$0], ss_customer_sk=[CAST($3):INTEGER NOT NULL], *=[*(CAST($10):DECIMAL(10, 0), $13)]) - HiveFilter(condition=[AND(IS NOT NULL($3), IS NOT NULL($0))]) - HiveTableScan(table=[[default, store_sales]], table:alias=[store_sales]) - HiveProject(d_date_sk=[$0]) - HiveFilter(condition=[IN($6, 1999, 2000, 2001, 2002)]) - HiveTableScan(table=[[default, date_dim]], table:alias=[date_dim]) + HiveProject($f0=[$0]) + HiveJoin(condition=[>($1, *(0.95, $3))], joinType=[inner], algorithm=[none], cost=[not available]) + HiveProject(ss_customer_sk=[$0], $f1=[$1]) + HiveAggregate(group=[{0}], agg#0=[sum($1)]) + HiveProject(ss_customer_sk=[CAST($3):INTEGER NOT NULL], *=[*(CAST($10):DECIMAL(10, 0), $13)]) + HiveFilter(condition=[IS NOT NULL($3)]) + HiveTableScan(table=[[default, store_sales]], table:alias=[store_sales]) + HiveJoin(condition=[true], joinType=[inner], algorithm=[none], cost=[not available]) + HiveProject(cnt=[$0]) + HiveFilter(condition=[<=(sq_count_check($0), 1)]) + HiveProject(cnt=[$0]) + HiveAggregate(group=[{}], cnt=[COUNT()]) + HiveProject + HiveProject($f0=[$0]) + HiveAggregate(group=[{}], agg#0=[count($0)]) + HiveProject(ss_customer_sk=[$0], $f1=[$1]) + HiveAggregate(group=[{1}], agg#0=[sum($2)]) + HiveJoin(condition=[=($0, $3)], joinType=[inner], algorithm=[none], cost=[not available]) + HiveProject(ss_sold_date_sk=[$0], ss_customer_sk=[CAST($3):INTEGER NOT NULL], *=[*(CAST($10):DECIMAL(10, 0), $13)]) + HiveFilter(condition=[AND(IS NOT NULL($3), IS NOT NULL($0))]) + HiveTableScan(table=[[default, store_sales]], table:alias=[store_sales]) + HiveProject(d_date_sk=[$0]) + HiveFilter(condition=[IN($6, 1999, 2000, 2001, 2002)]) + HiveTableScan(table=[[default, date_dim]], table:alias=[date_dim]) + HiveProject($f0=[$0]) + HiveAggregate(group=[{}], agg#0=[max($1)]) + HiveProject(ss_customer_sk=[$0], $f1=[$1]) + HiveAggregate(group=[{1}], agg#0=[sum($2)]) + HiveJoin(condition=[=($0, $3)], joinType=[inner], algorithm=[none], cost=[not available]) + HiveProject(ss_sold_date_sk=[$0], ss_customer_sk=[CAST($3):INTEGER NOT NULL], *=[*(CAST($10):DECIMAL(10, 0), $13)]) + HiveFilter(condition=[AND(IS NOT NULL($3), IS NOT NULL($0))]) + HiveTableScan(table=[[default, store_sales]], table:alias=[store_sales]) + HiveProject(d_date_sk=[$0]) + HiveFilter(condition=[IN($6, 1999, 2000, 2001, 2002)]) + HiveTableScan(table=[[default, date_dim]], table:alias=[date_dim]) HiveJoin(condition=[=($0, $5)], joinType=[inner], algorithm=[none], cost=[not available]) HiveProject(cs_sold_date_sk=[$0], cs_bill_customer_sk=[$3], cs_item_sk=[$15], cs_quantity=[$18], cs_list_price=[$20]) HiveFilter(condition=[AND(IS NOT NULL($3), IS NOT NULL($0))]) @@ -199,42 +198,41 @@ HiveSortLimit(fetch=[100]) HiveProject(i_item_sk=[$0], substr=[substr($4, 1, 30)]) HiveTableScan(table=[[default, item]], table:alias=[item]) HiveJoin(condition=[=($3, $0)], joinType=[inner], algorithm=[none], cost=[not available]) - HiveProject(ss_customer_sk=[$0]) - HiveAggregate(group=[{0}]) - HiveJoin(condition=[>($1, $3)], joinType=[inner], algorithm=[none], cost=[not available]) - HiveProject(ss_customer_sk=[$0], $f1=[$1]) - HiveAggregate(group=[{0}], agg#0=[sum($1)]) - HiveProject(ss_customer_sk=[CAST($3):INTEGER NOT NULL], *=[*(CAST($10):DECIMAL(10, 0), $13)]) - HiveFilter(condition=[IS NOT NULL($3)]) - HiveTableScan(table=[[default, store_sales]], table:alias=[store_sales]) - HiveJoin(condition=[true], joinType=[inner], algorithm=[none], cost=[not available]) - HiveProject(cnt=[$0]) - HiveFilter(condition=[<=(sq_count_check($0), 1)]) - HiveProject(cnt=[$0]) - HiveAggregate(group=[{}], cnt=[COUNT()]) - HiveProject - HiveProject($f0=[$0]) - HiveAggregate(group=[{}], agg#0=[count($0)]) - HiveProject(ss_customer_sk=[$0], $f1=[$1]) - HiveAggregate(group=[{1}], agg#0=[sum($2)]) - HiveJoin(condition=[=($0, $3)], joinType=[inner], algorithm=[none], cost=[not available]) - HiveProject(ss_sold_date_sk=[$0], ss_customer_sk=[CAST($3):INTEGER NOT NULL], *=[*(CAST($10):DECIMAL(10, 0), $13)]) - HiveFilter(condition=[AND(IS NOT NULL($3), IS NOT NULL($0))]) - HiveTableScan(table=[[default, store_sales]], table:alias=[store_sales]) - HiveProject(d_date_sk=[$0]) - HiveFilter(condition=[IN($6, 1999, 2000, 2001, 2002)]) - HiveTableScan(table=[[default, date_dim]], table:alias=[date_dim]) - HiveProject(*=[*(0.95, $0)]) - HiveAggregate(group=[{}], agg#0=[max($1)]) - HiveProject(ss_customer_sk=[$0], $f1=[$1]) - HiveAggregate(group=[{1}], agg#0=[sum($2)]) - HiveJoin(condition=[=($0, $3)], joinType=[inner], algorithm=[none], cost=[not available]) - HiveProject(ss_sold_date_sk=[$0], ss_customer_sk=[CAST($3):INTEGER NOT NULL], *=[*(CAST($10):DECIMAL(10, 0), $13)]) - HiveFilter(condition=[AND(IS NOT NULL($3), IS NOT NULL($0))]) - HiveTableScan(table=[[default, store_sales]], table:alias=[store_sales]) - HiveProject(d_date_sk=[$0]) - HiveFilter(condition=[IN($6, 1999, 2000, 2001, 2002)]) - HiveTableScan(table=[[default, date_dim]], table:alias=[date_dim]) + HiveProject($f0=[$0]) + HiveJoin(condition=[>($1, *(0.95, $3))], joinType=[inner], algorithm=[none], cost=[not available]) + HiveProject(ss_customer_sk=[$0], $f1=[$1]) + HiveAggregate(group=[{0}], agg#0=[sum($1)]) + HiveProject(ss_customer_sk=[CAST($3):INTEGER NOT NULL], *=[*(CAST($10):DECIMAL(10, 0), $13)]) + HiveFilter(condition=[IS NOT NULL($3)]) + HiveTableScan(table=[[default, store_sales]], table:alias=[store_sales]) + HiveJoin(condition=[true], joinType=[inner], algorithm=[none], cost=[not available]) + HiveProject(cnt=[$0]) + HiveFilter(condition=[<=(sq_count_check($0), 1)]) + HiveProject(cnt=[$0]) + HiveAggregate(group=[{}], cnt=[COUNT()]) + HiveProject + HiveProject($f0=[$0]) + HiveAggregate(group=[{}], agg#0=[count($0)]) + HiveProject(ss_customer_sk=[$0], $f1=[$1]) + HiveAggregate(group=[{1}], agg#0=[sum($2)]) + HiveJoin(condition=[=($0, $3)], joinType=[inner], algorithm=[none], cost=[not available]) + HiveProject(ss_sold_date_sk=[$0], ss_customer_sk=[CAST($3):INTEGER NOT NULL], *=[*(CAST($10):DECIMAL(10, 0), $13)]) + HiveFilter(condition=[AND(IS NOT NULL($3), IS NOT NULL($0))]) + HiveTableScan(table=[[default, store_sales]], table:alias=[store_sales]) + HiveProject(d_date_sk=[$0]) + HiveFilter(condition=[IN($6, 1999, 2000, 2001, 2002)]) + HiveTableScan(table=[[default, date_dim]], table:alias=[date_dim]) + HiveProject($f0=[$0]) + HiveAggregate(group=[{}], agg#0=[max($1)]) + HiveProject(ss_customer_sk=[$0], $f1=[$1]) + HiveAggregate(group=[{1}], agg#0=[sum($2)]) + HiveJoin(condition=[=($0, $3)], joinType=[inner], algorithm=[none], cost=[not available]) + HiveProject(ss_sold_date_sk=[$0], ss_customer_sk=[CAST($3):INTEGER NOT NULL], *=[*(CAST($10):DECIMAL(10, 0), $13)]) + HiveFilter(condition=[AND(IS NOT NULL($3), IS NOT NULL($0))]) + HiveTableScan(table=[[default, store_sales]], table:alias=[store_sales]) + HiveProject(d_date_sk=[$0]) + HiveFilter(condition=[IN($6, 1999, 2000, 2001, 2002)]) + HiveTableScan(table=[[default, date_dim]], table:alias=[date_dim]) HiveJoin(condition=[=($0, $5)], joinType=[inner], algorithm=[none], cost=[not available]) HiveProject(ws_sold_date_sk=[$0], ws_item_sk=[$3], ws_bill_customer_sk=[$4], ws_quantity=[$18], ws_list_price=[$20]) HiveFilter(condition=[AND(IS NOT NULL($4), IS NOT NULL($0))]) diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query31.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query31.q.out index 41321f40bc..f8e31a23aa 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query31.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query31.q.out @@ -111,10 +111,10 @@ POSTHOOK: Input: default@store_sales POSTHOOK: Input: default@web_sales POSTHOOK: Output: hdfs://### HDFS PATH ### CBO PLAN: -HiveProject(ca_county=[$0], d_year=[CAST(2000):INTEGER], web_q1_q2_increase=[/($14, $9)], store_q1_q2_increase=[/($1, $4)], web_q2_q3_increase=[/($12, $14)], store_q2_q3_increase=[/($7, $1)]) - HiveJoin(condition=[AND(AND(=($0, $8), CASE($5, CASE($10, >(/($14, $9), /($1, $4)), >(null, /($1, $4))), CASE($10, >(/($14, $9), null), null))), CASE($2, CASE($15, >(/($12, $14), /($7, $1)), >(null, /($7, $1))), CASE($15, >(/($12, $14), null), null)))], joinType=[inner], algorithm=[none], cost=[not available]) - HiveJoin(condition=[=($0, $6)], joinType=[inner], algorithm=[none], cost=[not available]) - HiveJoin(condition=[=($3, $0)], joinType=[inner], algorithm=[none], cost=[not available]) +HiveProject(ca_county=[$8], d_year=[CAST(2000):INTEGER], web_q1_q2_increase=[/($6, $1)], store_q1_q2_increase=[/($9, $11)], web_q2_q3_increase=[/($4, $6)], store_q2_q3_increase=[/($13, $9)]) + HiveJoin(condition=[AND(AND(=($8, $0), CASE(>($11, 0), CASE($2, >(/($6, $1), /($9, $11)), >(null, /($9, $11))), CASE($2, >(/($6, $1), null), null))), CASE(>($9, 0), CASE($7, >(/($4, $6), /($13, $9)), >(null, /($13, $9))), CASE($7, >(/($4, $6), null), null)))], joinType=[inner], algorithm=[none], cost=[not available]) + HiveJoin(condition=[=($0, $5)], joinType=[inner], algorithm=[none], cost=[not available]) + HiveJoin(condition=[=($0, $3)], joinType=[inner], algorithm=[none], cost=[not available]) HiveProject($f0=[$0], $f3=[$1], >=[>($1, 0)]) HiveAggregate(group=[{1}], agg#0=[sum($4)]) HiveJoin(condition=[=($3, $0)], joinType=[inner], algorithm=[none], cost=[not available]) @@ -122,53 +122,53 @@ HiveProject(ca_county=[$0], d_year=[CAST(2000):INTEGER], web_q1_q2_increase=[/($ HiveFilter(condition=[IS NOT NULL($7)]) HiveTableScan(table=[[default, customer_address]], table:alias=[customer_address]) HiveJoin(condition=[=($0, $3)], joinType=[inner], algorithm=[none], cost=[not available]) - HiveProject(ss_sold_date_sk=[$0], ss_addr_sk=[$6], ss_ext_sales_price=[$15]) - HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($6))]) - HiveTableScan(table=[[default, store_sales]], table:alias=[store_sales]) + HiveProject(ws_sold_date_sk=[$0], ws_bill_addr_sk=[$7], ws_ext_sales_price=[$23]) + HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($7))]) + HiveTableScan(table=[[default, web_sales]], table:alias=[web_sales]) HiveProject(d_date_sk=[$0]) - HiveFilter(condition=[AND(=($10, 2), =($6, 2000))]) + HiveFilter(condition=[AND(=($10, 1), =($6, 2000))]) HiveTableScan(table=[[default, date_dim]], table:alias=[date_dim]) - HiveProject($f0=[$0], $f3=[$1], >=[>($1, 0)]) + HiveProject(ca_county=[$0], $f1=[$1]) HiveAggregate(group=[{1}], agg#0=[sum($4)]) HiveJoin(condition=[=($3, $0)], joinType=[inner], algorithm=[none], cost=[not available]) HiveProject(ca_address_sk=[$0], ca_county=[$7]) HiveFilter(condition=[IS NOT NULL($7)]) HiveTableScan(table=[[default, customer_address]], table:alias=[customer_address]) HiveJoin(condition=[=($0, $3)], joinType=[inner], algorithm=[none], cost=[not available]) - HiveProject(ss_sold_date_sk=[$0], ss_addr_sk=[$6], ss_ext_sales_price=[$15]) - HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($6))]) - HiveTableScan(table=[[default, store_sales]], table:alias=[store_sales]) + HiveProject(ws_sold_date_sk=[$0], ws_bill_addr_sk=[$7], ws_ext_sales_price=[$23]) + HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($7))]) + HiveTableScan(table=[[default, web_sales]], table:alias=[web_sales]) HiveProject(d_date_sk=[$0]) - HiveFilter(condition=[AND(=($10, 1), =($6, 2000))]) + HiveFilter(condition=[AND(=($10, 3), =($6, 2000))]) HiveTableScan(table=[[default, date_dim]], table:alias=[date_dim]) - HiveProject(ca_county=[$0], $f1=[$1]) + HiveProject($f0=[$0], $f3=[$1], >=[>($1, 0)]) HiveAggregate(group=[{1}], agg#0=[sum($4)]) HiveJoin(condition=[=($3, $0)], joinType=[inner], algorithm=[none], cost=[not available]) HiveProject(ca_address_sk=[$0], ca_county=[$7]) HiveFilter(condition=[IS NOT NULL($7)]) HiveTableScan(table=[[default, customer_address]], table:alias=[customer_address]) HiveJoin(condition=[=($0, $3)], joinType=[inner], algorithm=[none], cost=[not available]) - HiveProject(ss_sold_date_sk=[$0], ss_addr_sk=[$6], ss_ext_sales_price=[$15]) - HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($6))]) - HiveTableScan(table=[[default, store_sales]], table:alias=[store_sales]) + HiveProject(ws_sold_date_sk=[$0], ws_bill_addr_sk=[$7], ws_ext_sales_price=[$23]) + HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($7))]) + HiveTableScan(table=[[default, web_sales]], table:alias=[web_sales]) HiveProject(d_date_sk=[$0]) - HiveFilter(condition=[AND(=($10, 3), =($6, 2000))]) + HiveFilter(condition=[AND(=($10, 2), =($6, 2000))]) HiveTableScan(table=[[default, date_dim]], table:alias=[date_dim]) - HiveProject($f0=[$0], $f3=[$1], >=[$2], ca_county=[$3], $f1=[$4], $f00=[$5], $f30=[$6], >0=[$7]) - HiveJoin(condition=[=($0, $5)], joinType=[inner], algorithm=[none], cost=[not available]) - HiveJoin(condition=[=($0, $3)], joinType=[inner], algorithm=[none], cost=[not available]) - HiveProject($f0=[$0], $f3=[$1], >=[>($1, 0)]) + HiveProject(ca_county=[$0], $f1=[$1], ca_county0=[$2], $f10=[$3], ca_county1=[$4], $f11=[$5]) + HiveJoin(condition=[=($0, $4)], joinType=[inner], algorithm=[none], cost=[not available]) + HiveJoin(condition=[=($2, $0)], joinType=[inner], algorithm=[none], cost=[not available]) + HiveProject(ca_county=[$0], $f1=[$1]) HiveAggregate(group=[{1}], agg#0=[sum($4)]) HiveJoin(condition=[=($3, $0)], joinType=[inner], algorithm=[none], cost=[not available]) HiveProject(ca_address_sk=[$0], ca_county=[$7]) HiveFilter(condition=[IS NOT NULL($7)]) HiveTableScan(table=[[default, customer_address]], table:alias=[customer_address]) HiveJoin(condition=[=($0, $3)], joinType=[inner], algorithm=[none], cost=[not available]) - HiveProject(ws_sold_date_sk=[$0], ws_bill_addr_sk=[$7], ws_ext_sales_price=[$23]) - HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($7))]) - HiveTableScan(table=[[default, web_sales]], table:alias=[web_sales]) + HiveProject(ss_sold_date_sk=[$0], ss_addr_sk=[$6], ss_ext_sales_price=[$15]) + HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($6))]) + HiveTableScan(table=[[default, store_sales]], table:alias=[store_sales]) HiveProject(d_date_sk=[$0]) - HiveFilter(condition=[AND(=($10, 1), =($6, 2000))]) + HiveFilter(condition=[AND(=($10, 2), =($6, 2000))]) HiveTableScan(table=[[default, date_dim]], table:alias=[date_dim]) HiveProject(ca_county=[$0], $f1=[$1]) HiveAggregate(group=[{1}], agg#0=[sum($4)]) @@ -177,23 +177,23 @@ HiveProject(ca_county=[$0], d_year=[CAST(2000):INTEGER], web_q1_q2_increase=[/($ HiveFilter(condition=[IS NOT NULL($7)]) HiveTableScan(table=[[default, customer_address]], table:alias=[customer_address]) HiveJoin(condition=[=($0, $3)], joinType=[inner], algorithm=[none], cost=[not available]) - HiveProject(ws_sold_date_sk=[$0], ws_bill_addr_sk=[$7], ws_ext_sales_price=[$23]) - HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($7))]) - HiveTableScan(table=[[default, web_sales]], table:alias=[web_sales]) + HiveProject(ss_sold_date_sk=[$0], ss_addr_sk=[$6], ss_ext_sales_price=[$15]) + HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($6))]) + HiveTableScan(table=[[default, store_sales]], table:alias=[store_sales]) HiveProject(d_date_sk=[$0]) - HiveFilter(condition=[AND(=($10, 3), =($6, 2000))]) + HiveFilter(condition=[AND(=($10, 1), =($6, 2000))]) HiveTableScan(table=[[default, date_dim]], table:alias=[date_dim]) - HiveProject($f0=[$0], $f3=[$1], >=[>($1, 0)]) + HiveProject(ca_county=[$0], $f1=[$1]) HiveAggregate(group=[{1}], agg#0=[sum($4)]) HiveJoin(condition=[=($3, $0)], joinType=[inner], algorithm=[none], cost=[not available]) HiveProject(ca_address_sk=[$0], ca_county=[$7]) HiveFilter(condition=[IS NOT NULL($7)]) HiveTableScan(table=[[default, customer_address]], table:alias=[customer_address]) HiveJoin(condition=[=($0, $3)], joinType=[inner], algorithm=[none], cost=[not available]) - HiveProject(ws_sold_date_sk=[$0], ws_bill_addr_sk=[$7], ws_ext_sales_price=[$23]) - HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($7))]) - HiveTableScan(table=[[default, web_sales]], table:alias=[web_sales]) + HiveProject(ss_sold_date_sk=[$0], ss_addr_sk=[$6], ss_ext_sales_price=[$15]) + HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($6))]) + HiveTableScan(table=[[default, store_sales]], table:alias=[store_sales]) HiveProject(d_date_sk=[$0]) - HiveFilter(condition=[AND(=($10, 2), =($6, 2000))]) + HiveFilter(condition=[AND(=($10, 3), =($6, 2000))]) HiveTableScan(table=[[default, date_dim]], table:alias=[date_dim]) diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query4.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query4.q.out index ccec2f3b00..9fb918eb58 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query4.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query4.q.out @@ -229,7 +229,7 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### CBO PLAN: HiveSortLimit(sort0=[$0], dir0=[ASC], fetch=[100]) HiveProject(customer_preferred_cust_flag=[$1]) - HiveJoin(condition=[AND(=($0, $7), CASE($9, CASE($15, >(/($4, $14), /($2, $8)), >(null, /($2, $8))), CASE($15, >(/($4, $14), null), null)))], joinType=[inner], algorithm=[none], cost=[not available]) + HiveJoin(condition=[AND(=($0, $7), CASE(CAST(IS NOT NULL($8)):BOOLEAN, CASE($14, >(/($4, $13), /($2, $8)), >(null, /($2, $8))), CASE($14, >(/($4, $13), null), null)))], joinType=[inner], algorithm=[none], cost=[not available]) HiveProject($f0=[$0], $f3=[$3], $f8=[$7]) HiveAggregate(group=[{1, 2, 3, 4, 5, 6, 7}], agg#0=[sum($10)]) HiveJoin(condition=[=($0, $9)], joinType=[inner], algorithm=[none], cost=[not available]) @@ -242,7 +242,7 @@ HiveSortLimit(sort0=[$0], dir0=[ASC], fetch=[100]) HiveProject(d_date_sk=[$0]) HiveFilter(condition=[=($6, 2002)]) HiveTableScan(table=[[default, date_dim]], table:alias=[date_dim]) - HiveJoin(condition=[AND(=($4, $0), CASE($9, CASE($12, >(/($1, $11), /($3, $8)), >(null, /($3, $8))), CASE($12, >(/($1, $11), null), null)))], joinType=[inner], algorithm=[none], cost=[not available]) + HiveJoin(condition=[AND(=($4, $0), CASE($8, CASE($11, >(/($1, $10), /($3, $7)), >(null, /($3, $7))), CASE($11, >(/($1, $10), null), null)))], joinType=[inner], algorithm=[none], cost=[not available]) HiveProject($f0=[$0], $f8=[$7]) HiveAggregate(group=[{1, 2, 3, 4, 5, 6, 7}], agg#0=[sum($10)]) HiveJoin(condition=[=($0, $9)], joinType=[inner], algorithm=[none], cost=[not available]) @@ -255,8 +255,8 @@ HiveSortLimit(sort0=[$0], dir0=[ASC], fetch=[100]) HiveProject(d_date_sk=[$0]) HiveFilter(condition=[=($6, 2002)]) HiveTableScan(table=[[default, date_dim]], table:alias=[date_dim]) - HiveJoin(condition=[=($2, $8)], joinType=[inner], algorithm=[none], cost=[not available]) - HiveJoin(condition=[=($2, $5)], joinType=[inner], algorithm=[none], cost=[not available]) + HiveJoin(condition=[=($2, $7)], joinType=[inner], algorithm=[none], cost=[not available]) + HiveJoin(condition=[=($2, $4)], joinType=[inner], algorithm=[none], cost=[not available]) HiveJoin(condition=[=($2, $0)], joinType=[inner], algorithm=[none], cost=[not available]) HiveProject($f0=[$0], $f8=[$7]) HiveAggregate(group=[{1, 2, 3, 4, 5, 6, 7}], agg#0=[sum($10)]) @@ -270,7 +270,7 @@ HiveSortLimit(sort0=[$0], dir0=[ASC], fetch=[100]) HiveProject(d_date_sk=[$0]) HiveFilter(condition=[=($6, 2002)]) HiveTableScan(table=[[default, date_dim]], table:alias=[date_dim]) - HiveProject(customer_id=[$0], year_total=[$7], CAST=[CAST(IS NOT NULL($7)):BOOLEAN]) + HiveProject($f0=[$0], $f8=[$7]) HiveFilter(condition=[>($7, 0)]) HiveAggregate(group=[{1, 2, 3, 4, 5, 6, 7}], agg#0=[sum($10)]) HiveJoin(condition=[=($0, $9)], joinType=[inner], algorithm=[none], cost=[not available]) diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query58.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query58.q.out index df67f6fa48..a362c45780 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query58.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query58.q.out @@ -141,10 +141,10 @@ POSTHOOK: Input: default@web_sales POSTHOOK: Output: hdfs://### HDFS PATH ### CBO PLAN: HiveSortLimit(sort0=[$0], sort1=[$1], dir0=[ASC], dir1=[ASC], fetch=[100]) - HiveProject(item_id=[$0], ss_item_rev=[$5], ss_dev=[*(/(/($5, +(+($5, $1), $9)), CAST(3):DECIMAL(10, 0)), CAST(100):DECIMAL(10, 0))], cs_item_rev=[$1], cs_dev=[*(/(/($1, +(+($5, $1), $9)), CAST(3):DECIMAL(10, 0)), CAST(100):DECIMAL(10, 0))], ws_item_rev=[$9], ws_dev=[*(/(/($9, +(+($5, $1), $9)), CAST(3):DECIMAL(10, 0)), CAST(100):DECIMAL(10, 0))], average=[/(+(+($5, $1), $9), CAST(3):DECIMAL(10, 0))]) - HiveJoin(condition=[AND(AND(AND(AND(=($0, $8), BETWEEN(false, $5, $10, $11)), BETWEEN(false, $1, $10, $11)), BETWEEN(false, $9, $6, $7)), BETWEEN(false, $9, $2, $3))], joinType=[inner], algorithm=[none], cost=[not available]) - HiveJoin(condition=[AND(AND(=($4, $0), BETWEEN(false, $5, $2, $3)), BETWEEN(false, $1, $6, $7))], joinType=[inner], algorithm=[none], cost=[not available]) - HiveProject(item_id=[$0], cs_item_rev=[$1], *=[*(0.9, $1)], *3=[*(1.1, $1)]) + HiveProject(item_id=[$0], ss_item_rev=[$3], ss_dev=[*(/(/($3, +(+($3, $1), $5)), CAST(3):DECIMAL(10, 0)), CAST(100):DECIMAL(10, 0))], cs_item_rev=[$1], cs_dev=[*(/(/($1, +(+($3, $1), $5)), CAST(3):DECIMAL(10, 0)), CAST(100):DECIMAL(10, 0))], ws_item_rev=[$5], ws_dev=[*(/(/($5, +(+($3, $1), $5)), CAST(3):DECIMAL(10, 0)), CAST(100):DECIMAL(10, 0))], average=[/(+(+($3, $1), $5), CAST(3):DECIMAL(10, 0))]) + HiveJoin(condition=[AND(AND(AND(AND(=($0, $4), BETWEEN(false, $3, $6, $7)), BETWEEN(false, $1, $6, $7)), BETWEEN(false, $5, *(0.9, $3), *(1.1, $3))), BETWEEN(false, $5, *(0.9, $1), *(1.1, $1)))], joinType=[inner], algorithm=[none], cost=[not available]) + HiveJoin(condition=[AND(AND(=($2, $0), BETWEEN(false, $3, *(0.9, $1), *(1.1, $1))), BETWEEN(false, $1, *(0.9, $3), *(1.1, $3)))], joinType=[inner], algorithm=[none], cost=[not available]) + HiveProject(i_item_id=[$0], $f1=[$1]) HiveAggregate(group=[{4}], agg#0=[sum($2)]) HiveJoin(condition=[=($0, $5)], joinType=[inner], algorithm=[none], cost=[not available]) HiveJoin(condition=[=($1, $3)], joinType=[inner], algorithm=[none], cost=[not available]) @@ -174,7 +174,7 @@ HiveSortLimit(sort0=[$0], sort1=[$1], dir0=[ASC], dir1=[ASC], fetch=[100]) HiveProject(d_week_seq=[$4]) HiveFilter(condition=[AND(=($2, _UTF-16LE'1998-02-19'), IS NOT NULL($4))]) HiveTableScan(table=[[default, date_dim]], table:alias=[date_dim]) - HiveProject(item_id=[$0], ss_item_rev=[$1], *=[*(0.9, $1)], *3=[*(1.1, $1)]) + HiveProject(i_item_id=[$0], $f1=[$1]) HiveAggregate(group=[{4}], agg#0=[sum($2)]) HiveJoin(condition=[=($0, $5)], joinType=[inner], algorithm=[none], cost=[not available]) HiveJoin(condition=[=($1, $3)], joinType=[inner], algorithm=[none], cost=[not available]) diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query59.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query59.q.out index 989bd78b39..34376d1262 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query59.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query59.q.out @@ -94,8 +94,8 @@ POSTHOOK: Input: default@store_sales POSTHOOK: Output: hdfs://### HDFS PATH ### CBO PLAN: HiveSortLimit(sort0=[$0], sort1=[$1], sort2=[$2], dir0=[ASC], dir1=[ASC], dir2=[ASC], fetch=[100]) - HiveProject(s_store_name1=[$2], s_store_id1=[$1], d_week_seq1=[$3], _o__c3=[/($5, $14)], _o__c4=[/($6, $15)], _o__c5=[/($7, $7)], _o__c6=[/($8, $16)], _o__c7=[/($9, $17)], _o__c8=[/($10, $18)], _o__c9=[/($11, $19)]) - HiveJoin(condition=[AND(=($1, $13), =($3, $20))], joinType=[inner], algorithm=[none], cost=[not available]) + HiveProject(s_store_name1=[$2], s_store_id1=[$1], d_week_seq1=[$3], _o__c3=[/($5, $15)], _o__c4=[/($6, $16)], _o__c5=[/($7, $7)], _o__c6=[/($8, $17)], _o__c7=[/($9, $18)], _o__c8=[/($10, $19)], _o__c9=[/($11, $20)]) + HiveJoin(condition=[AND(=($1, $14), =($3, -($13, 52)))], joinType=[inner], algorithm=[none], cost=[not available]) HiveJoin(condition=[=($4, $0)], joinType=[inner], algorithm=[none], cost=[not available]) HiveProject(s_store_sk=[$0], s_store_id=[$1], s_store_name=[$5]) HiveTableScan(table=[[default, store]], table:alias=[store]) @@ -113,7 +113,7 @@ HiveSortLimit(sort0=[$0], sort1=[$1], sort2=[$2], dir0=[ASC], dir1=[ASC], dir2=[ HiveProject(d_week_seq=[$4]) HiveFilter(condition=[AND(BETWEEN(false, $3, 1185, 1196), IS NOT NULL($4))]) HiveTableScan(table=[[default, date_dim]], table:alias=[d]) - HiveProject(s_store_id2=[$1], sun_sales2=[$4], mon_sales2=[$5], wed_sales2=[$6], thu_sales2=[$7], fri_sales2=[$8], sat_sales2=[$9], -=[-($2, 52)]) + HiveProject(d_week_seq2=[$2], s_store_id2=[$1], sun_sales2=[$4], mon_sales2=[$5], wed_sales2=[$6], thu_sales2=[$7], fri_sales2=[$8], sat_sales2=[$9]) HiveJoin(condition=[=($3, $0)], joinType=[inner], algorithm=[none], cost=[not available]) HiveProject(s_store_sk=[$0], s_store_id=[$1]) HiveTableScan(table=[[default, store]], table:alias=[store]) diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query61.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query61.q.out index 68d03cb9fd..253190d3bc 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query61.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query61.q.out @@ -103,9 +103,9 @@ POSTHOOK: Input: default@store_sales POSTHOOK: Output: hdfs://### HDFS PATH ### CBO PLAN: HiveSortLimit(sort0=[$0], sort1=[$1], dir0=[ASC], dir1=[ASC], fetch=[100]) - HiveProject(promotions=[$0], total=[$2], _o__c2=[*(/($1, $3), CAST(100):DECIMAL(10, 0))]) + HiveProject(promotions=[$0], total=[$1], _o__c2=[*(/(CAST($0):DECIMAL(15, 4), CAST($1):DECIMAL(15, 4)), CAST(100):DECIMAL(10, 0))]) HiveJoin(condition=[true], joinType=[inner], algorithm=[none], cost=[not available]) - HiveProject(promotions=[$0], CAST=[CAST($0):DECIMAL(15, 4)]) + HiveProject($f0=[$0]) HiveAggregate(group=[{}], agg#0=[sum($8)]) HiveJoin(condition=[=($5, $0)], joinType=[inner], algorithm=[none], cost=[not available]) HiveJoin(condition=[=($2, $1)], joinType=[inner], algorithm=[none], cost=[not available]) @@ -135,7 +135,7 @@ HiveSortLimit(sort0=[$0], sort1=[$1], dir0=[ASC], dir1=[ASC], fetch=[100]) HiveProject(p_promo_sk=[$0]) HiveFilter(condition=[OR(=($8, _UTF-16LE'Y'), =($9, _UTF-16LE'Y'), =($11, _UTF-16LE'Y'))]) HiveTableScan(table=[[default, promotion]], table:alias=[promotion]) - HiveProject(total=[$0], CAST=[CAST($0):DECIMAL(15, 4)]) + HiveProject($f0=[$0]) HiveAggregate(group=[{}], agg#0=[sum($7)]) HiveJoin(condition=[=($5, $0)], joinType=[inner], algorithm=[none], cost=[not available]) HiveJoin(condition=[=($2, $1)], joinType=[inner], algorithm=[none], cost=[not available]) diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query74.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query74.q.out index c16cab074d..74a3a3f633 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query74.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query74.q.out @@ -131,7 +131,7 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### CBO PLAN: HiveSortLimit(sort0=[$1], sort1=[$0], sort2=[$2], dir0=[ASC], dir1=[ASC], dir2=[ASC], fetch=[100]) HiveProject(customer_id=[$0], customer_first_name=[$1], customer_last_name=[$2]) - HiveJoin(condition=[AND(=($0, $6), CASE($8, CASE($11, >(/($5, $10), /($3, $7)), >(null, /($3, $7))), CASE($11, >(/($5, $10), null), null)))], joinType=[inner], algorithm=[none], cost=[not available]) + HiveJoin(condition=[AND(=($0, $6), CASE(CAST(IS NOT NULL($7)):BOOLEAN, CASE($10, >(/($5, $9), /($3, $7)), >(null, /($3, $7))), CASE($10, >(/($5, $9), null), null)))], joinType=[inner], algorithm=[none], cost=[not available]) HiveProject(c_customer_id=[$0], c_first_name=[$1], c_last_name=[$2], $f3=[$3]) HiveAggregate(group=[{1, 2, 3}], agg#0=[max($6)]) HiveJoin(condition=[=($0, $5)], joinType=[inner], algorithm=[none], cost=[not available]) @@ -144,7 +144,7 @@ HiveSortLimit(sort0=[$1], sort1=[$0], sort2=[$2], dir0=[ASC], dir1=[ASC], dir2=[ HiveProject(d_date_sk=[$0]) HiveFilter(condition=[AND(IN($6, 2001, 2002), =($6, 2002))]) HiveTableScan(table=[[default, date_dim]], table:alias=[date_dim]) - HiveJoin(condition=[=($2, $5)], joinType=[inner], algorithm=[none], cost=[not available]) + HiveJoin(condition=[=($2, $4)], joinType=[inner], algorithm=[none], cost=[not available]) HiveJoin(condition=[=($2, $0)], joinType=[inner], algorithm=[none], cost=[not available]) HiveProject($f0=[$0], $f4=[$3]) HiveAggregate(group=[{1, 2, 3}], agg#0=[max($6)]) @@ -158,7 +158,7 @@ HiveSortLimit(sort0=[$1], sort1=[$0], sort2=[$2], dir0=[ASC], dir1=[ASC], dir2=[ HiveProject(d_date_sk=[$0]) HiveFilter(condition=[AND(IN($6, 2001, 2002), =($6, 2002))]) HiveTableScan(table=[[default, date_dim]], table:alias=[date_dim]) - HiveProject(customer_id=[$0], year_total=[$3], CAST=[CAST(IS NOT NULL($3)):BOOLEAN]) + HiveProject($f0=[$0], $f4=[$3]) HiveFilter(condition=[>($3, 0)]) HiveAggregate(group=[{1, 2, 3}], agg#0=[max($6)]) HiveJoin(condition=[=($0, $5)], joinType=[inner], algorithm=[none], cost=[not available]) diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query75.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query75.q.out index 50a9dfc755..a95e756dab 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query75.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query75.q.out @@ -157,9 +157,9 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### CBO PLAN: HiveProject(prev_year=[CAST(2001):INTEGER], year=[CAST(2002):INTEGER], i_brand_id=[$0], i_class_id=[$1], i_category_id=[$2], i_manufact_id=[$3], prev_yr_cnt=[$4], curr_yr_cnt=[$5], sales_cnt_diff=[$6], sales_amt_diff=[$7]) HiveSortLimit(sort0=[$6], dir0=[ASC], fetch=[100]) - HiveProject(i_brand_id=[$0], i_class_id=[$1], i_category_id=[$2], i_manufact_id=[$3], prev_yr_cnt=[$4], curr_yr_cnt=[$11], sales_cnt_diff=[-($11, $4)], sales_amt_diff=[-($12, $5)]) - HiveJoin(condition=[AND(AND(AND(AND(=($7, $0), =($8, $1)), =($9, $2)), =($10, $3)), <(/($13, $6), 0.9))], joinType=[inner], algorithm=[none], cost=[not available]) - HiveProject(i_brand_id=[$0], i_class_id=[$1], i_category_id=[$2], i_manufact_id=[$3], $f5=[$4], $f6=[$5], CAST=[CAST($4):DECIMAL(17, 2)]) + HiveProject(i_brand_id=[$0], i_class_id=[$1], i_category_id=[$2], i_manufact_id=[$3], prev_yr_cnt=[$4], curr_yr_cnt=[$10], sales_cnt_diff=[-($10, $4)], sales_amt_diff=[-($11, $5)]) + HiveJoin(condition=[AND(AND(AND(AND(=($6, $0), =($7, $1)), =($8, $2)), =($9, $3)), <(/(CAST($10):DECIMAL(17, 2), CAST($4):DECIMAL(17, 2)), 0.9))], joinType=[inner], algorithm=[none], cost=[not available]) + HiveProject(i_brand_id=[$0], i_class_id=[$1], i_category_id=[$2], i_manufact_id=[$3], $f4=[$4], $f5=[$5]) HiveAggregate(group=[{0, 1, 2, 3}], agg#0=[sum($4)], agg#1=[sum($5)]) HiveProject(i_brand_id=[$0], i_class_id=[$1], i_category_id=[$2], i_manufact_id=[$3], sales_cnt=[$4], sales_amt=[$5]) HiveAggregate(group=[{0, 1, 2, 3, 4, 5}]) @@ -214,7 +214,7 @@ HiveProject(prev_year=[CAST(2001):INTEGER], year=[CAST(2002):INTEGER], i_brand_i HiveProject(i_item_sk=[$0], i_brand_id=[$7], i_class_id=[$9], i_category_id=[$11], i_manufact_id=[$13]) HiveFilter(condition=[AND(=($12, _UTF-16LE'Sports'), IS NOT NULL($7), IS NOT NULL($9), IS NOT NULL($11), IS NOT NULL($13))]) HiveTableScan(table=[[default, item]], table:alias=[item]) - HiveProject(i_brand_id=[$0], i_class_id=[$1], i_category_id=[$2], i_manufact_id=[$3], $f5=[$4], $f6=[$5], CAST=[CAST($4):DECIMAL(17, 2)]) + HiveProject(i_brand_id=[$0], i_class_id=[$1], i_category_id=[$2], i_manufact_id=[$3], $f4=[$4], $f5=[$5]) HiveAggregate(group=[{0, 1, 2, 3}], agg#0=[sum($4)], agg#1=[sum($5)]) HiveProject(i_brand_id=[$0], i_class_id=[$1], i_category_id=[$2], i_manufact_id=[$3], sales_cnt=[$4], sales_amt=[$5]) HiveAggregate(group=[{0, 1, 2, 3, 4, 5}]) diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query83.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query83.q.out index ee94ea3f99..2a5101533f 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query83.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query83.q.out @@ -144,10 +144,10 @@ POSTHOOK: Input: default@web_returns POSTHOOK: Output: hdfs://### HDFS PATH ### CBO PLAN: HiveSortLimit(sort0=[$0], sort1=[$1], dir0=[ASC], dir1=[ASC], fetch=[100]) - HiveProject(item_id=[$0], sr_item_qty=[$4], sr_dev=[*(/(/($5, CAST(+(+($4, $1), $7)):DOUBLE), CAST(3):DOUBLE), CAST(100):DOUBLE)], cr_item_qty=[$1], cr_dev=[*(/(/($2, CAST(+(+($4, $1), $7)):DOUBLE), CAST(3):DOUBLE), CAST(100):DOUBLE)], wr_item_qty=[$7], wr_dev=[*(/(/($8, CAST(+(+($4, $1), $7)):DOUBLE), CAST(3):DOUBLE), CAST(100):DOUBLE)], average=[/(CAST(+(+($4, $1), $7)):DECIMAL(19, 0), 3)]) - HiveJoin(condition=[=($0, $6)], joinType=[inner], algorithm=[none], cost=[not available]) - HiveJoin(condition=[=($3, $0)], joinType=[inner], algorithm=[none], cost=[not available]) - HiveProject(item_id=[$0], cr_item_qty=[$1], CAST=[CAST($1):DOUBLE]) + HiveProject(item_id=[$0], sr_item_qty=[$3], sr_dev=[*(/(/(CAST($3):DOUBLE, CAST(+(+($3, $1), $5)):DOUBLE), CAST(3):DOUBLE), CAST(100):DOUBLE)], cr_item_qty=[$1], cr_dev=[*(/(/(CAST($1):DOUBLE, CAST(+(+($3, $1), $5)):DOUBLE), CAST(3):DOUBLE), CAST(100):DOUBLE)], wr_item_qty=[$5], wr_dev=[*(/(/($6, CAST(+(+($3, $1), $5)):DOUBLE), CAST(3):DOUBLE), CAST(100):DOUBLE)], average=[/(CAST(+(+($3, $1), $5)):DECIMAL(19, 0), 3)]) + HiveJoin(condition=[=($0, $4)], joinType=[inner], algorithm=[none], cost=[not available]) + HiveJoin(condition=[=($2, $0)], joinType=[inner], algorithm=[none], cost=[not available]) + HiveProject(i_item_id=[$0], $f1=[$1]) HiveAggregate(group=[{4}], agg#0=[sum($2)]) HiveJoin(condition=[=($0, $5)], joinType=[inner], algorithm=[none], cost=[not available]) HiveJoin(condition=[=($1, $3)], joinType=[inner], algorithm=[none], cost=[not available]) @@ -170,7 +170,7 @@ HiveSortLimit(sort0=[$0], sort1=[$1], dir0=[ASC], dir1=[ASC], fetch=[100]) HiveProject(d_date_sk=[$0], d_date_id=[$1], d_date=[$2], d_month_seq=[$3], d_week_seq=[$4], d_quarter_seq=[$5], d_year=[$6], d_dow=[$7], d_moy=[$8], d_dom=[$9], d_qoy=[$10], d_fy_year=[$11], d_fy_quarter_seq=[$12], d_fy_week_seq=[$13], d_day_name=[$14], d_quarter_name=[$15], d_holiday=[$16], d_weekend=[$17], d_following_holiday=[$18], d_first_dom=[$19], d_last_dom=[$20], d_same_day_ly=[$21], d_same_day_lq=[$22], d_current_day=[$23], d_current_week=[$24], d_current_month=[$25], d_current_quarter=[$26], d_current_year=[$27], BLOCK__OFFSET__INSIDE__FILE=[$28], INPUT__FILE__NAME=[$29], ROW__ID=[$30]) HiveFilter(condition=[AND(IN($2, _UTF-16LE'1998-01-02', _UTF-16LE'1998-10-15', _UTF-16LE'1998-11-10'), IS NOT NULL($4))]) HiveTableScan(table=[[default, date_dim]], table:alias=[date_dim]) - HiveProject(item_id=[$0], sr_item_qty=[$1], CAST=[CAST($1):DOUBLE]) + HiveProject(i_item_id=[$0], $f1=[$1]) HiveAggregate(group=[{4}], agg#0=[sum($2)]) HiveJoin(condition=[=($0, $5)], joinType=[inner], algorithm=[none], cost=[not available]) HiveJoin(condition=[=($1, $3)], joinType=[inner], algorithm=[none], cost=[not available]) diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query90.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query90.q.out index ff28da1d9b..b5aac32fd1 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query90.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query90.q.out @@ -53,9 +53,9 @@ POSTHOOK: Input: default@web_sales POSTHOOK: Output: hdfs://### HDFS PATH ### CBO PLAN: HiveSortLimit(sort0=[$0], dir0=[ASC], fetch=[100]) - HiveProject(am_pm_ratio=[/($0, $1)]) + HiveProject(am_pm_ratio=[/(CAST($0):DECIMAL(15, 4), CAST($1):DECIMAL(15, 4))]) HiveJoin(condition=[true], joinType=[inner], algorithm=[none], cost=[not available]) - HiveProject(CAST=[CAST($0):DECIMAL(15, 4)]) + HiveProject($f0=[$0]) HiveAggregate(group=[{}], agg#0=[count()]) HiveJoin(condition=[=($1, $5)], joinType=[inner], algorithm=[none], cost=[not available]) HiveJoin(condition=[=($0, $4)], joinType=[inner], algorithm=[none], cost=[not available]) @@ -72,7 +72,7 @@ HiveSortLimit(sort0=[$0], dir0=[ASC], fetch=[100]) HiveProject(hd_demo_sk=[$0]) HiveFilter(condition=[=($3, 8)]) HiveTableScan(table=[[default, household_demographics]], table:alias=[household_demographics]) - HiveProject(CAST=[CAST($0):DECIMAL(15, 4)]) + HiveProject($f0=[$0]) HiveAggregate(group=[{}], agg#0=[count()]) HiveJoin(condition=[=($1, $5)], joinType=[inner], algorithm=[none], cost=[not available]) HiveJoin(condition=[=($0, $4)], joinType=[inner], algorithm=[none], cost=[not available]) diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/mv_query44.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/mv_query44.q.out new file mode 100644 index 0000000000..db9acc93cb --- /dev/null +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/mv_query44.q.out @@ -0,0 +1,214 @@ +PREHOOK: query: CREATE MATERIALIZED VIEW mv_store_sales_item_customer PARTITIONED ON (ss_sold_date_sk) +AS + select ss_item_sk, ss_store_sk, ss_customer_sk, ss_sold_date_sk, count(*) cnt, sum(ss_quantity) as ss_quantity, sum(ss_ext_wholesale_cost) as ss_ext_wholesale_cost,sum(ss_net_paid) as ss_net_paid,sum(ss_net_profit) as ss_net_profit, sum(ss_ext_sales_price) as ss_ext_sales_price, sum(ss_coupon_amt) amt, sum(ss_sales_price) ss_sales_price, sum(ss_quantity*ss_sales_price) ssales + from store_sales + group by ss_store_sk, + ss_item_sk, ss_customer_sk, ss_sold_date_sk +PREHOOK: type: CREATE_MATERIALIZED_VIEW +PREHOOK: Input: default@store_sales +PREHOOK: Output: database:default +PREHOOK: Output: default@mv_store_sales_item_customer +PREHOOK: Output: default@mv_store_sales_item_customer +POSTHOOK: query: CREATE MATERIALIZED VIEW mv_store_sales_item_customer PARTITIONED ON (ss_sold_date_sk) +AS + select ss_item_sk, ss_store_sk, ss_customer_sk, ss_sold_date_sk, count(*) cnt, sum(ss_quantity) as ss_quantity, sum(ss_ext_wholesale_cost) as ss_ext_wholesale_cost,sum(ss_net_paid) as ss_net_paid,sum(ss_net_profit) as ss_net_profit, sum(ss_ext_sales_price) as ss_ext_sales_price, sum(ss_coupon_amt) amt, sum(ss_sales_price) ss_sales_price, sum(ss_quantity*ss_sales_price) ssales + from store_sales + group by ss_store_sk, + ss_item_sk, ss_customer_sk, ss_sold_date_sk +POSTHOOK: type: CREATE_MATERIALIZED_VIEW +POSTHOOK: Input: default@store_sales +POSTHOOK: Output: database:default +POSTHOOK: Output: default@mv_store_sales_item_customer +Warning: Shuffle Join MERGEJOIN[101][tables = [$hdt$_1, $hdt$_2]] in Stage 'Reducer 8' is a cross product +PREHOOK: query: explain +select asceding.rnk, i1.i_product_name best_performing, i2.i_product_name worst_performing +from(select * + from (select item_sk,rank() over (order by rank_col asc) rnk + from (select ss_item_sk item_sk,avg(ss_net_profit) rank_col + from store_sales ss1 + where ss_store_sk = 410 + group by ss_item_sk + having avg(ss_net_profit) > 0.9*(select avg(ss_net_profit) rank_col + from store_sales + where ss_store_sk = 410 + and ss_hdemo_sk is null + group by ss_store_sk))V1)V11 + where rnk < 11) asceding, + (select * + from (select item_sk,rank() over (order by rank_col desc) rnk + from (select ss_item_sk item_sk,avg(ss_net_profit) rank_col + from store_sales ss1 + where ss_store_sk = 410 + group by ss_item_sk + having avg(ss_net_profit) > 0.9*(select avg(ss_net_profit) rank_col + from store_sales + where ss_store_sk = 410 + and ss_hdemo_sk is null + group by ss_store_sk))V2)V21 + where rnk < 11) descending, +item i1, +item i2 +where asceding.rnk = descending.rnk + and i1.i_item_sk=asceding.item_sk + and i2.i_item_sk=descending.item_sk +order by asceding.rnk +limit 100 +PREHOOK: type: QUERY +PREHOOK: Input: default@item +PREHOOK: Input: default@store_sales +PREHOOK: Output: hdfs://### HDFS PATH ### +POSTHOOK: query: explain +select asceding.rnk, i1.i_product_name best_performing, i2.i_product_name worst_performing +from(select * + from (select item_sk,rank() over (order by rank_col asc) rnk + from (select ss_item_sk item_sk,avg(ss_net_profit) rank_col + from store_sales ss1 + where ss_store_sk = 410 + group by ss_item_sk + having avg(ss_net_profit) > 0.9*(select avg(ss_net_profit) rank_col + from store_sales + where ss_store_sk = 410 + and ss_hdemo_sk is null + group by ss_store_sk))V1)V11 + where rnk < 11) asceding, + (select * + from (select item_sk,rank() over (order by rank_col desc) rnk + from (select ss_item_sk item_sk,avg(ss_net_profit) rank_col + from store_sales ss1 + where ss_store_sk = 410 + group by ss_item_sk + having avg(ss_net_profit) > 0.9*(select avg(ss_net_profit) rank_col + from store_sales + where ss_store_sk = 410 + and ss_hdemo_sk is null + group by ss_store_sk))V2)V21 + where rnk < 11) descending, +item i1, +item i2 +where asceding.rnk = descending.rnk + and i1.i_item_sk=asceding.item_sk + and i2.i_item_sk=descending.item_sk +order by asceding.rnk +limit 100 +POSTHOOK: type: QUERY +POSTHOOK: Input: default@item +POSTHOOK: Input: default@store_sales +POSTHOOK: Output: hdfs://### HDFS PATH ### +Plan optimized by CBO. + +Vertex dependency in root stage +Reducer 10 <- Reducer 8 (SIMPLE_EDGE) +Reducer 12 <- Map 11 (SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) +Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) +Reducer 4 <- Reducer 3 (SIMPLE_EDGE) +Reducer 5 <- Map 1 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE) +Reducer 7 <- Map 6 (SIMPLE_EDGE) +Reducer 8 <- Reducer 12 (CUSTOM_SIMPLE_EDGE), Reducer 7 (CUSTOM_SIMPLE_EDGE) +Reducer 9 <- Reducer 8 (SIMPLE_EDGE) + +Stage-0 + Fetch Operator + limit:100 + Stage-1 + Reducer 4 vectorized + File Output Operator [FS_135] + Limit [LIM_134] (rows=100 width=218) + Number of rows:100 + Select Operator [SEL_133] (rows=6951 width=218) + Output:["_col0","_col1","_col2"] + <-Reducer 3 [SIMPLE_EDGE] + SHUFFLE [RS_67] + Select Operator [SEL_66] (rows=6951 width=218) + Output:["_col0","_col1","_col2"] + Merge Join Operator [MERGEJOIN_105] (rows=6951 width=218) + Conds:RS_63._col3=RS_64._col3(Inner),Output:["_col1","_col3","_col5"] + <-Reducer 2 [SIMPLE_EDGE] + SHUFFLE [RS_63] + PartitionCols:_col3 + Merge Join Operator [MERGEJOIN_102] (rows=6951 width=111) + Conds:RS_107._col0=RS_127._col0(Inner),Output:["_col1","_col3"] + <-Map 1 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_107] + PartitionCols:_col0 + Select Operator [SEL_106] (rows=462000 width=111) + Output:["_col0","_col1"] + TableScan [TS_0] (rows=462000 width=111) + default@item,i1,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_product_name"] + <-Reducer 9 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_127] + PartitionCols:_col0 + Select Operator [SEL_126] (rows=6951 width=8) + Output:["_col0","_col1"] + Filter Operator [FIL_125] (rows=6951 width=116) + predicate:(rank_window_0 < 11) + PTF Operator [PTF_124] (rows=20854 width=116) + Function definitions:[{},{"name:":"windowingtablefunction","order by:":"_col1 ASC NULLS FIRST","partition by:":"0"}] + Select Operator [SEL_123] (rows=20854 width=116) + Output:["_col0","_col1"] + <-Reducer 8 [SIMPLE_EDGE] + SHUFFLE [RS_21] + PartitionCols:0 + Filter Operator [FIL_20] (rows=20854 width=228) + predicate:(_col1 > (0.9 * _col2)) + Merge Join Operator [MERGEJOIN_101] (rows=62562 width=228) + Conds:(Inner),Output:["_col0","_col1","_col2"] + <-Reducer 12 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_122] + Select Operator [SEL_121] (rows=1 width=112) + Output:["_col0"] + Group By Operator [GBY_120] (rows=1 width=124) + Output:["_col0","_col1","_col2"],aggregations:["sum(VALUE._col0)","count(VALUE._col1)"],keys:KEY._col0 + <-Map 11 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_119] + PartitionCols:_col0 + Group By Operator [GBY_118] (rows=258 width=124) + Output:["_col0","_col1","_col2"],aggregations:["sum(_col1)","count(_col1)"],keys:true + Select Operator [SEL_117] (rows=287946 width=114) + Output:["_col1"] + Filter Operator [FIL_116] (rows=287946 width=114) + predicate:((ss_store_sk = 410) and ss_hdemo_sk is null) + TableScan [TS_9] (rows=575995635 width=114) + default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_hdemo_sk","ss_store_sk","ss_net_profit"] + <-Reducer 7 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_115] + Select Operator [SEL_114] (rows=62562 width=116) + Output:["_col0","_col1"] + Group By Operator [GBY_113] (rows=62562 width=124) + Output:["_col0","_col1","_col2"],aggregations:["sum(VALUE._col0)","count(VALUE._col1)"],keys:KEY._col0 + <-Map 6 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_112] + PartitionCols:_col0 + Group By Operator [GBY_111] (rows=3199976 width=124) + Output:["_col0","_col1","_col2"],aggregations:["sum(ss_net_profit)","count(ss_net_profit)"],keys:ss_item_sk + Select Operator [SEL_110] (rows=6399952 width=114) + Output:["ss_item_sk","ss_net_profit"] + Filter Operator [FIL_109] (rows=6399952 width=114) + predicate:(ss_store_sk = 410) + TableScan [TS_2] (rows=575995635 width=114) + default@store_sales,ss1,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_item_sk","ss_store_sk","ss_net_profit"] + <-Reducer 5 [SIMPLE_EDGE] + SHUFFLE [RS_64] + PartitionCols:_col3 + Merge Join Operator [MERGEJOIN_104] (rows=6951 width=111) + Conds:RS_108._col0=RS_132._col0(Inner),Output:["_col1","_col3"] + <-Map 1 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_108] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_106] + <-Reducer 10 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_132] + PartitionCols:_col0 + Select Operator [SEL_131] (rows=6951 width=8) + Output:["_col0","_col1"] + Filter Operator [FIL_130] (rows=6951 width=116) + predicate:(rank_window_0 < 11) + PTF Operator [PTF_129] (rows=20854 width=116) + Function definitions:[{},{"name:":"windowingtablefunction","order by:":"_col1 DESC NULLS LAST","partition by:":"0"}] + Select Operator [SEL_128] (rows=20854 width=116) + Output:["_col0","_col1"] + <-Reducer 8 [SIMPLE_EDGE] + SHUFFLE [RS_49] + PartitionCols:0 + Please refer to the previous Filter Operator [FIL_20] + diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query11.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query11.q.out index 658ae27d14..00b6bcbe1a 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query11.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query11.q.out @@ -198,10 +198,10 @@ Stage-0 SHUFFLE [RS_89] Select Operator [SEL_88] (rows=12248093 width=85) Output:["_col0"] - Filter Operator [FIL_87] (rows=12248093 width=541) - predicate:CASE WHEN (_col4) THEN (CASE WHEN (_col7) THEN (((_col1 / _col6) > (_col10 / _col3))) ELSE ((null > (_col10 / _col3))) END) ELSE (CASE WHEN (_col7) THEN (((_col1 / _col6) > null)) ELSE (null) END) END - Merge Join Operator [MERGEJOIN_283] (rows=24496186 width=541) - Conds:RS_84._col2=RS_346._col0(Inner),Output:["_col1","_col3","_col4","_col6","_col7","_col9","_col10"] + Filter Operator [FIL_87] (rows=12248093 width=537) + predicate:CASE WHEN (_col3 is not null) THEN (CASE WHEN (_col6) THEN (((_col1 / _col5) > (_col9 / _col3))) ELSE ((null > (_col9 / _col3))) END) ELSE (CASE WHEN (_col6) THEN (((_col1 / _col5) > null)) ELSE (null) END) END + Merge Join Operator [MERGEJOIN_283] (rows=24496186 width=537) + Conds:RS_84._col2=RS_346._col0(Inner),Output:["_col1","_col3","_col5","_col6","_col8","_col9"] <-Reducer 20 [SIMPLE_EDGE] vectorized SHUFFLE [RS_346] PartitionCols:_col0 @@ -260,8 +260,8 @@ Stage-0 <-Reducer 6 [ONE_TO_ONE_EDGE] FORWARD [RS_84] PartitionCols:_col2 - Merge Join Operator [MERGEJOIN_282] (rows=20485011 width=444) - Conds:RS_81._col2=RS_338._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col6","_col7"] + Merge Join Operator [MERGEJOIN_282] (rows=20485011 width=440) + Conds:RS_81._col2=RS_338._col0(Inner),Output:["_col1","_col2","_col3","_col5","_col6"] <-Reducer 16 [SIMPLE_EDGE] vectorized SHUFFLE [RS_338] PartitionCols:_col0 @@ -320,13 +320,13 @@ Stage-0 <-Reducer 5 [ONE_TO_ONE_EDGE] FORWARD [RS_81] PartitionCols:_col2 - Merge Join Operator [MERGEJOIN_281] (rows=31888273 width=328) - Conds:RS_318._col0=RS_328._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + Merge Join Operator [MERGEJOIN_281] (rows=31888273 width=324) + Conds:RS_318._col0=RS_328._col0(Inner),Output:["_col1","_col2","_col3"] <-Reducer 12 [SIMPLE_EDGE] vectorized SHUFFLE [RS_328] PartitionCols:_col0 - Select Operator [SEL_327] (rows=26666666 width=216) - Output:["_col0","_col1","_col2"] + Select Operator [SEL_327] (rows=26666666 width=212) + Output:["_col0","_col1"] Filter Operator [FIL_326] (rows=26666666 width=212) predicate:(_col7 > 0) Select Operator [SEL_325] (rows=80000000 width=212) diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query2.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query2.q.out index baa714bc95..4d5d255fbf 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query2.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query2.q.out @@ -149,7 +149,7 @@ Stage-0 Select Operator [SEL_56] (rows=12881 width=788) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] Merge Join Operator [MERGEJOIN_146] (rows=12881 width=1572) - Conds:RS_53._col0=RS_54._col7(Inner),Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col9","_col10","_col11","_col12","_col13","_col14","_col15"] + Conds:RS_53._col0=RS_54.(_col0 - 53)(Inner),Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col10","_col11","_col12","_col13","_col14","_col15","_col16"] <-Reducer 5 [ONE_TO_ONE_EDGE] FORWARD [RS_53] PartitionCols:_col0 @@ -208,21 +208,19 @@ Stage-0 Output:["cs_sold_date_sk","cs_ext_sales_price"] <-Reducer 8 [SIMPLE_EDGE] SHUFFLE [RS_54] - PartitionCols:_col7 - Select Operator [SEL_49] (rows=652 width=788) - Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] - Merge Join Operator [MERGEJOIN_145] (rows=652 width=788) - Conds:RS_165._col0=RS_171._col0(Inner),Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] - <-Map 11 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_171] - PartitionCols:_col0 - Select Operator [SEL_169] (rows=652 width=4) - Output:["_col0"] - Filter Operator [FIL_167] (rows=652 width=8) - predicate:((d_year = 2002) and d_week_seq is not null) - Please refer to the previous TableScan [TS_20] - <-Reducer 4 [ONE_TO_ONE_EDGE] vectorized - FORWARD [RS_165] - PartitionCols:_col0 - Please refer to the previous Group By Operator [GBY_163] + PartitionCols:(_col0 - 53) + Merge Join Operator [MERGEJOIN_145] (rows=652 width=788) + Conds:RS_165._col0=RS_171._col0(Inner),Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] + <-Map 11 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_171] + PartitionCols:_col0 + Select Operator [SEL_169] (rows=652 width=4) + Output:["_col0"] + Filter Operator [FIL_167] (rows=652 width=8) + predicate:((d_year = 2002) and d_week_seq is not null) + Please refer to the previous TableScan [TS_20] + <-Reducer 4 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_165] + PartitionCols:_col0 + Please refer to the previous Group By Operator [GBY_163] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query23.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query23.q.out index c7b1c9a6bb..292c920583 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query23.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query23.q.out @@ -1,7 +1,7 @@ -Warning: Shuffle Join MERGEJOIN[445][tables = [$hdt$_1, $hdt$_2]] in Stage 'Reducer 19' is a cross product -Warning: Shuffle Join MERGEJOIN[446][tables = [$hdt$_1, $hdt$_2, $hdt$_0]] in Stage 'Reducer 20' is a cross product -Warning: Shuffle Join MERGEJOIN[448][tables = [$hdt$_2, $hdt$_3]] in Stage 'Reducer 24' is a cross product -Warning: Shuffle Join MERGEJOIN[449][tables = [$hdt$_2, $hdt$_3, $hdt$_1]] in Stage 'Reducer 25' is a cross product +Warning: Shuffle Join MERGEJOIN[437][tables = [$hdt$_1, $hdt$_2]] in Stage 'Reducer 19' is a cross product +Warning: Shuffle Join MERGEJOIN[438][tables = [$hdt$_1, $hdt$_2, $hdt$_0]] in Stage 'Reducer 20' is a cross product +Warning: Shuffle Join MERGEJOIN[440][tables = [$hdt$_2, $hdt$_3]] in Stage 'Reducer 23' is a cross product +Warning: Shuffle Join MERGEJOIN[441][tables = [$hdt$_2, $hdt$_3, $hdt$_1]] in Stage 'Reducer 24' is a cross product PREHOOK: query: explain with frequent_ss_items as (select substr(i_item_desc,1,30) itemdesc,i_item_sk item_sk,d_date solddate,count(*) cnt @@ -121,42 +121,40 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 33 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) -Map 15 <- Reducer 29 (BROADCAST_EDGE) -Map 37 <- Reducer 7 (BROADCAST_EDGE) -Map 39 <- Reducer 36 (BROADCAST_EDGE) -Map 41 <- Reducer 14 (BROADCAST_EDGE), Reducer 35 (BROADCAST_EDGE) -Map 42 <- Reducer 13 (BROADCAST_EDGE) -Reducer 10 <- Map 41 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) -Reducer 11 <- Reducer 10 (SIMPLE_EDGE), Reducer 26 (ONE_TO_ONE_EDGE) -Reducer 12 <- Reducer 11 (SIMPLE_EDGE), Reducer 34 (ONE_TO_ONE_EDGE), Union 5 (CONTAINS) +Map 1 <- Reducer 31 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) +Map 15 <- Reducer 27 (BROADCAST_EDGE) +Map 35 <- Reducer 7 (BROADCAST_EDGE) +Map 37 <- Reducer 34 (BROADCAST_EDGE) +Map 39 <- Reducer 14 (BROADCAST_EDGE), Reducer 33 (BROADCAST_EDGE) +Map 40 <- Reducer 13 (BROADCAST_EDGE) +Reducer 10 <- Map 39 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) +Reducer 11 <- Reducer 10 (SIMPLE_EDGE), Reducer 24 (SIMPLE_EDGE) +Reducer 12 <- Reducer 11 (SIMPLE_EDGE), Reducer 32 (ONE_TO_ONE_EDGE), Union 5 (CONTAINS) Reducer 13 <- Reducer 10 (CUSTOM_SIMPLE_EDGE) Reducer 14 <- Map 8 (CUSTOM_SIMPLE_EDGE) -Reducer 16 <- Map 15 (SIMPLE_EDGE), Map 28 (SIMPLE_EDGE) +Reducer 16 <- Map 15 (SIMPLE_EDGE), Map 26 (SIMPLE_EDGE) Reducer 17 <- Reducer 16 (SIMPLE_EDGE) Reducer 18 <- Reducer 17 (CUSTOM_SIMPLE_EDGE) -Reducer 19 <- Reducer 18 (CUSTOM_SIMPLE_EDGE), Reducer 22 (CUSTOM_SIMPLE_EDGE) +Reducer 19 <- Reducer 18 (CUSTOM_SIMPLE_EDGE), Reducer 21 (CUSTOM_SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) -Reducer 20 <- Reducer 19 (CUSTOM_SIMPLE_EDGE), Reducer 38 (CUSTOM_SIMPLE_EDGE) -Reducer 21 <- Reducer 20 (SIMPLE_EDGE) +Reducer 20 <- Reducer 19 (CUSTOM_SIMPLE_EDGE), Reducer 36 (CUSTOM_SIMPLE_EDGE) +Reducer 21 <- Reducer 17 (CUSTOM_SIMPLE_EDGE) Reducer 22 <- Reducer 17 (CUSTOM_SIMPLE_EDGE) -Reducer 23 <- Reducer 17 (CUSTOM_SIMPLE_EDGE) -Reducer 24 <- Reducer 23 (CUSTOM_SIMPLE_EDGE), Reducer 27 (CUSTOM_SIMPLE_EDGE) -Reducer 25 <- Reducer 24 (CUSTOM_SIMPLE_EDGE), Reducer 43 (CUSTOM_SIMPLE_EDGE) -Reducer 26 <- Reducer 25 (SIMPLE_EDGE) -Reducer 27 <- Reducer 17 (CUSTOM_SIMPLE_EDGE) -Reducer 29 <- Map 28 (CUSTOM_SIMPLE_EDGE) -Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 21 (ONE_TO_ONE_EDGE) -Reducer 30 <- Map 28 (SIMPLE_EDGE), Map 39 (SIMPLE_EDGE) -Reducer 31 <- Map 40 (SIMPLE_EDGE), Reducer 30 (SIMPLE_EDGE) -Reducer 32 <- Reducer 31 (SIMPLE_EDGE) +Reducer 23 <- Reducer 22 (CUSTOM_SIMPLE_EDGE), Reducer 25 (CUSTOM_SIMPLE_EDGE) +Reducer 24 <- Reducer 23 (CUSTOM_SIMPLE_EDGE), Reducer 41 (CUSTOM_SIMPLE_EDGE) +Reducer 25 <- Reducer 17 (CUSTOM_SIMPLE_EDGE) +Reducer 27 <- Map 26 (CUSTOM_SIMPLE_EDGE) +Reducer 28 <- Map 26 (SIMPLE_EDGE), Map 37 (SIMPLE_EDGE) +Reducer 29 <- Map 38 (SIMPLE_EDGE), Reducer 28 (SIMPLE_EDGE) +Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 20 (SIMPLE_EDGE) +Reducer 30 <- Reducer 29 (SIMPLE_EDGE) +Reducer 31 <- Reducer 30 (CUSTOM_SIMPLE_EDGE) +Reducer 32 <- Reducer 29 (SIMPLE_EDGE) Reducer 33 <- Reducer 32 (CUSTOM_SIMPLE_EDGE) -Reducer 34 <- Reducer 31 (SIMPLE_EDGE) -Reducer 35 <- Reducer 34 (CUSTOM_SIMPLE_EDGE) -Reducer 36 <- Map 28 (CUSTOM_SIMPLE_EDGE) -Reducer 38 <- Map 37 (SIMPLE_EDGE) -Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Reducer 32 (ONE_TO_ONE_EDGE), Union 5 (CONTAINS) -Reducer 43 <- Map 42 (SIMPLE_EDGE) +Reducer 34 <- Map 26 (CUSTOM_SIMPLE_EDGE) +Reducer 36 <- Map 35 (SIMPLE_EDGE) +Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Reducer 30 (ONE_TO_ONE_EDGE), Union 5 (CONTAINS) +Reducer 41 <- Map 40 (SIMPLE_EDGE) Reducer 6 <- Union 5 (CUSTOM_SIMPLE_EDGE) Reducer 7 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) Reducer 9 <- Map 8 (CUSTOM_SIMPLE_EDGE) @@ -166,375 +164,357 @@ Stage-0 limit:100 Stage-1 Reducer 6 vectorized - File Output Operator [FS_543] - Limit [LIM_542] (rows=1 width=112) + File Output Operator [FS_532] + Limit [LIM_531] (rows=1 width=112) Number of rows:100 - Group By Operator [GBY_541] (rows=1 width=112) + Group By Operator [GBY_530] (rows=1 width=112) Output:["_col0"],aggregations:["sum(VALUE._col0)"] <-Union 5 [CUSTOM_SIMPLE_EDGE] <-Reducer 12 [CONTAINS] - Reduce Output Operator [RS_462] - Group By Operator [GBY_461] (rows=1 width=112) + Reduce Output Operator [RS_454] + Group By Operator [GBY_453] (rows=1 width=112) Output:["_col0"],aggregations:["sum(_col0)"] - Select Operator [SEL_459] (rows=52 width=112) + Select Operator [SEL_451] (rows=52 width=112) Output:["_col0"] - Merge Join Operator [MERGEJOIN_458] (rows=52 width=2) - Conds:RS_200._col1=RS_549._col0(Inner),Output:["_col3","_col4"] - <-Reducer 34 [ONE_TO_ONE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_549] + Merge Join Operator [MERGEJOIN_450] (rows=52 width=2) + Conds:RS_192._col1=RS_538._col0(Inner),Output:["_col3","_col4"] + <-Reducer 32 [ONE_TO_ONE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_538] PartitionCols:_col0 - Select Operator [SEL_548] (rows=745 width=4) + Select Operator [SEL_537] (rows=745 width=4) Output:["_col0"] - Filter Operator [FIL_547] (rows=745 width=12) + Filter Operator [FIL_536] (rows=745 width=12) predicate:(_col1 > 4L) - Group By Operator [GBY_546] (rows=2235 width=12) + Group By Operator [GBY_535] (rows=2235 width=12) Output:["_col0","_col1"],aggregations:["count(VALUE._col0)"],keys:KEY._col0 - <-Reducer 31 [SIMPLE_EDGE] - SHUFFLE [RS_190] + <-Reducer 29 [SIMPLE_EDGE] + SHUFFLE [RS_182] PartitionCols:_col0 - Group By Operator [GBY_87] (rows=2235 width=12) + Group By Operator [GBY_83] (rows=2235 width=12) Output:["_col0","_col1"],aggregations:["count()"],keys:_col4 - Merge Join Operator [MERGEJOIN_439] (rows=19646398 width=4) - Conds:RS_83._col1=RS_491._col0(Inner),Output:["_col4"] - <-Map 40 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_491] + Merge Join Operator [MERGEJOIN_431] (rows=19646398 width=4) + Conds:RS_79._col1=RS_483._col0(Inner),Output:["_col4"] + <-Map 38 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_483] PartitionCols:_col0 - Select Operator [SEL_490] (rows=462000 width=188) + Select Operator [SEL_482] (rows=462000 width=188) Output:["_col0"] - TableScan [TS_78] (rows=462000 width=4) + TableScan [TS_74] (rows=462000 width=4) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk"] - <-Reducer 30 [SIMPLE_EDGE] - SHUFFLE [RS_83] + <-Reducer 28 [SIMPLE_EDGE] + SHUFFLE [RS_79] PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_438] (rows=19646398 width=4) - Conds:RS_489._col0=RS_479._col0(Inner),Output:["_col1"] - <-Map 28 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_479] + Merge Join Operator [MERGEJOIN_430] (rows=19646398 width=4) + Conds:RS_481._col0=RS_471._col0(Inner),Output:["_col1"] + <-Map 26 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_471] PartitionCols:_col0 - Select Operator [SEL_476] (rows=2609 width=4) + Select Operator [SEL_468] (rows=2609 width=4) Output:["_col0"] - Filter Operator [FIL_475] (rows=2609 width=8) + Filter Operator [FIL_467] (rows=2609 width=8) predicate:(d_year) IN (1999, 2000, 2001, 2002) TableScan [TS_9] (rows=73049 width=8) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year"] - <-Map 39 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_489] + <-Map 37 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_481] PartitionCols:_col0 - Select Operator [SEL_488] (rows=550076554 width=7) + Select Operator [SEL_480] (rows=550076554 width=7) Output:["_col0","_col1"] - Filter Operator [FIL_487] (rows=550076554 width=7) - predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_81_date_dim_d_date_sk_min) AND DynamicValue(RS_81_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_81_date_dim_d_date_sk_bloom_filter))) and ss_sold_date_sk is not null) - TableScan [TS_72] (rows=575995635 width=7) + Filter Operator [FIL_479] (rows=550076554 width=7) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_77_date_dim_d_date_sk_min) AND DynamicValue(RS_77_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_77_date_dim_d_date_sk_bloom_filter))) and ss_sold_date_sk is not null) + TableScan [TS_68] (rows=575995635 width=7) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk"] - <-Reducer 36 [BROADCAST_EDGE] vectorized - BROADCAST [RS_486] - Group By Operator [GBY_485] (rows=1 width=12) + <-Reducer 34 [BROADCAST_EDGE] vectorized + BROADCAST [RS_478] + Group By Operator [GBY_477] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 28 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_484] - Group By Operator [GBY_482] (rows=1 width=12) + <-Map 26 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_476] + Group By Operator [GBY_474] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_480] (rows=2609 width=4) + Select Operator [SEL_472] (rows=2609 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_476] + Please refer to the previous Select Operator [SEL_468] <-Reducer 11 [SIMPLE_EDGE] - SHUFFLE [RS_200] + SHUFFLE [RS_192] PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_450] (rows=3941102 width=118) - Conds:RS_197._col2=RS_576._col0(Inner),Output:["_col1","_col3","_col4"] + Merge Join Operator [MERGEJOIN_442] (rows=3941101 width=118) + Conds:RS_189._col2=RS_190._col0(Inner),Output:["_col1","_col3","_col4"] <-Reducer 10 [SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_197] + PARTITION_ONLY_SHUFFLE [RS_189] PartitionCols:_col2 - Merge Join Operator [MERGEJOIN_440] (rows=3941102 width=122) - Conds:RS_557._col0=RS_467._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + Merge Join Operator [MERGEJOIN_432] (rows=3941102 width=122) + Conds:RS_546._col0=RS_459._col0(Inner),Output:["_col1","_col2","_col3","_col4"] <-Map 8 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_467] + PARTITION_ONLY_SHUFFLE [RS_459] PartitionCols:_col0 - Select Operator [SEL_464] (rows=50 width=4) + Select Operator [SEL_456] (rows=50 width=4) Output:["_col0"] - Filter Operator [FIL_463] (rows=50 width=12) + Filter Operator [FIL_455] (rows=50 width=12) predicate:((d_moy = 1) and (d_year = 1999)) TableScan [TS_3] (rows=73049 width=12) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] - <-Map 41 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_557] + <-Map 39 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_546] PartitionCols:_col0 - Select Operator [SEL_556] (rows=143930993 width=127) + Select Operator [SEL_545] (rows=143930993 width=127) Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_555] (rows=143930993 width=127) - predicate:((ws_item_sk BETWEEN DynamicValue(RS_201_item_i_item_sk_min) AND DynamicValue(RS_201_item_i_item_sk_max) and in_bloom_filter(ws_item_sk, DynamicValue(RS_201_item_i_item_sk_bloom_filter))) and (ws_sold_date_sk BETWEEN DynamicValue(RS_195_date_dim_d_date_sk_min) AND DynamicValue(RS_195_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_195_date_dim_d_date_sk_bloom_filter))) and ws_bill_customer_sk is not null and ws_sold_date_sk is not null) - TableScan [TS_102] (rows=144002668 width=127) + Filter Operator [FIL_544] (rows=143930993 width=127) + predicate:((ws_item_sk BETWEEN DynamicValue(RS_193_item_i_item_sk_min) AND DynamicValue(RS_193_item_i_item_sk_max) and in_bloom_filter(ws_item_sk, DynamicValue(RS_193_item_i_item_sk_bloom_filter))) and (ws_sold_date_sk BETWEEN DynamicValue(RS_187_date_dim_d_date_sk_min) AND DynamicValue(RS_187_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_187_date_dim_d_date_sk_bloom_filter))) and ws_bill_customer_sk is not null and ws_sold_date_sk is not null) + TableScan [TS_98] (rows=144002668 width=127) default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_item_sk","ws_bill_customer_sk","ws_quantity","ws_list_price"] <-Reducer 14 [BROADCAST_EDGE] vectorized - BROADCAST [RS_545] - Group By Operator [GBY_544] (rows=1 width=12) + BROADCAST [RS_534] + Group By Operator [GBY_533] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Map 8 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_472] - Group By Operator [GBY_470] (rows=1 width=12) + PARTITION_ONLY_SHUFFLE [RS_464] + Group By Operator [GBY_462] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_468] (rows=50 width=4) + Select Operator [SEL_460] (rows=50 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_464] - <-Reducer 35 [BROADCAST_EDGE] vectorized - BROADCAST [RS_554] - Group By Operator [GBY_553] (rows=1 width=12) + Please refer to the previous Select Operator [SEL_456] + <-Reducer 33 [BROADCAST_EDGE] vectorized + BROADCAST [RS_543] + Group By Operator [GBY_542] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Reducer 34 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_552] - Group By Operator [GBY_551] (rows=1 width=12) + <-Reducer 32 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_541] + Group By Operator [GBY_540] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_550] (rows=745 width=4) + Select Operator [SEL_539] (rows=745 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_548] - <-Reducer 26 [ONE_TO_ONE_EDGE] vectorized - FORWARD [RS_576] + Please refer to the previous Select Operator [SEL_537] + <-Reducer 24 [SIMPLE_EDGE] + SHUFFLE [RS_190] PartitionCols:_col0 - Group By Operator [GBY_575] (rows=235937 width=3) - Output:["_col0"],keys:KEY._col0 - <-Reducer 25 [SIMPLE_EDGE] - SHUFFLE [RS_171] - PartitionCols:_col0 - Group By Operator [GBY_170] (rows=235937 width=3) - Output:["_col0"],keys:_col2 - Select Operator [SEL_169] (rows=471875 width=227) - Output:["_col2"] - Filter Operator [FIL_168] (rows=471875 width=227) - predicate:(_col3 > _col1) - Merge Join Operator [MERGEJOIN_449] (rows=1415626 width=227) - Conds:(Inner),Output:["_col1","_col2","_col3"] - <-Reducer 24 [CUSTOM_SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_165] - Merge Join Operator [MERGEJOIN_448] (rows=1 width=112) - Conds:(Inner),Output:["_col1"] - <-Reducer 23 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_563] - Select Operator [SEL_562] (rows=1 width=8) - Filter Operator [FIL_561] (rows=1 width=8) - predicate:(sq_count_check(_col0) <= 1) - Group By Operator [GBY_560] (rows=1 width=8) - Output:["_col0"],aggregations:["count()"] - Select Operator [SEL_559] (rows=1 width=8) - Group By Operator [GBY_558] (rows=1 width=8) - Output:["_col0"],aggregations:["count(VALUE._col0)"] - <-Reducer 17 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_520] - Group By Operator [GBY_516] (rows=1 width=8) - Output:["_col0"],aggregations:["count(_col0)"] - Select Operator [SEL_512] (rows=50562 width=112) - Output:["_col0"] - Group By Operator [GBY_509] (rows=50562 width=112) - Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Reducer 16 [SIMPLE_EDGE] - SHUFFLE [RS_17] - PartitionCols:_col0 - Group By Operator [GBY_16] (rows=455058 width=112) - Output:["_col0","_col1"],aggregations:["sum(_col2)"],keys:_col1 - Merge Join Operator [MERGEJOIN_436] (rows=18762463 width=112) - Conds:RS_508._col0=RS_477._col0(Inner),Output:["_col1","_col2"] - <-Map 28 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_477] - PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_476] - <-Map 15 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_508] - PartitionCols:_col0 - Select Operator [SEL_507] (rows=525327388 width=119) - Output:["_col0","_col1","_col2"] - Filter Operator [FIL_506] (rows=525327388 width=118) - predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_13_date_dim_d_date_sk_min) AND DynamicValue(RS_13_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_13_date_dim_d_date_sk_bloom_filter))) and ss_customer_sk is not null and ss_sold_date_sk is not null) - TableScan [TS_6] (rows=575995635 width=118) - default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_customer_sk","ss_quantity","ss_sales_price"] - <-Reducer 29 [BROADCAST_EDGE] vectorized - BROADCAST [RS_505] - Group By Operator [GBY_504] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 28 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_483] - Group By Operator [GBY_481] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_478] (rows=2609 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_476] - <-Reducer 27 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_566] - Select Operator [SEL_565] (rows=1 width=112) - Output:["_col0"] - Group By Operator [GBY_564] (rows=1 width=112) - Output:["_col0"],aggregations:["max(VALUE._col0)"] + Select Operator [SEL_165] (rows=471875 width=3) + Output:["_col0"] + Filter Operator [FIL_164] (rows=471875 width=227) + predicate:(_col3 > (0.95 * _col1)) + Merge Join Operator [MERGEJOIN_441] (rows=1415626 width=227) + Conds:(Inner),Output:["_col1","_col2","_col3"] + <-Reducer 23 [CUSTOM_SIMPLE_EDGE] + PARTITION_ONLY_SHUFFLE [RS_161] + Merge Join Operator [MERGEJOIN_440] (rows=1 width=112) + Conds:(Inner),Output:["_col1"] + <-Reducer 22 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_552] + Select Operator [SEL_551] (rows=1 width=8) + Filter Operator [FIL_550] (rows=1 width=8) + predicate:(sq_count_check(_col0) <= 1) + Group By Operator [GBY_549] (rows=1 width=8) + Output:["_col0"],aggregations:["count()"] + Select Operator [SEL_548] (rows=1 width=8) + Group By Operator [GBY_547] (rows=1 width=8) + Output:["_col0"],aggregations:["count(VALUE._col0)"] <-Reducer 17 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_521] - Group By Operator [GBY_517] (rows=1 width=112) - Output:["_col0"],aggregations:["max(_col1)"] - Select Operator [SEL_513] (rows=50562 width=112) - Output:["_col1"] - Please refer to the previous Group By Operator [GBY_509] - <-Reducer 43 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_574] - Group By Operator [GBY_573] (rows=1415626 width=115) - Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Map 42 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_572] - PartitionCols:_col0 - Group By Operator [GBY_571] (rows=550080312 width=115) - Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0 - Select Operator [SEL_570] (rows=550080312 width=114) - Output:["_col0","_col1"] - Filter Operator [FIL_569] (rows=550080312 width=114) - predicate:((ss_customer_sk BETWEEN DynamicValue(RS_197_web_sales_ws_bill_customer_sk_min) AND DynamicValue(RS_197_web_sales_ws_bill_customer_sk_max) and in_bloom_filter(ss_customer_sk, DynamicValue(RS_197_web_sales_ws_bill_customer_sk_bloom_filter))) and ss_customer_sk is not null) - TableScan [TS_154] (rows=575995635 width=114) - default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_customer_sk","ss_quantity","ss_sales_price"] - <-Reducer 13 [BROADCAST_EDGE] vectorized - BROADCAST [RS_568] - Group By Operator [GBY_567] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Reducer 10 [CUSTOM_SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_414] - Group By Operator [GBY_413] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_412] (rows=3941102 width=7) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_440] + PARTITION_ONLY_SHUFFLE [RS_512] + Group By Operator [GBY_508] (rows=1 width=8) + Output:["_col0"],aggregations:["count(_col0)"] + Select Operator [SEL_504] (rows=50562 width=112) + Output:["_col0"] + Group By Operator [GBY_501] (rows=50562 width=112) + Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 + <-Reducer 16 [SIMPLE_EDGE] + SHUFFLE [RS_17] + PartitionCols:_col0 + Group By Operator [GBY_16] (rows=455058 width=112) + Output:["_col0","_col1"],aggregations:["sum(_col2)"],keys:_col1 + Merge Join Operator [MERGEJOIN_428] (rows=18762463 width=112) + Conds:RS_500._col0=RS_469._col0(Inner),Output:["_col1","_col2"] + <-Map 26 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_469] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_468] + <-Map 15 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_500] + PartitionCols:_col0 + Select Operator [SEL_499] (rows=525327388 width=119) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_498] (rows=525327388 width=118) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_13_date_dim_d_date_sk_min) AND DynamicValue(RS_13_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_13_date_dim_d_date_sk_bloom_filter))) and ss_customer_sk is not null and ss_sold_date_sk is not null) + TableScan [TS_6] (rows=575995635 width=118) + default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_customer_sk","ss_quantity","ss_sales_price"] + <-Reducer 27 [BROADCAST_EDGE] vectorized + BROADCAST [RS_497] + Group By Operator [GBY_496] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 26 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_475] + Group By Operator [GBY_473] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_470] (rows=2609 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_468] + <-Reducer 25 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_554] + Group By Operator [GBY_553] (rows=1 width=112) + Output:["_col0"],aggregations:["max(VALUE._col0)"] + <-Reducer 17 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_513] + Group By Operator [GBY_509] (rows=1 width=112) + Output:["_col0"],aggregations:["max(_col1)"] + Select Operator [SEL_505] (rows=50562 width=112) + Output:["_col1"] + Please refer to the previous Group By Operator [GBY_501] + <-Reducer 41 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_562] + Group By Operator [GBY_561] (rows=1415626 width=115) + Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 + <-Map 40 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_560] + PartitionCols:_col0 + Group By Operator [GBY_559] (rows=550080312 width=115) + Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0 + Select Operator [SEL_558] (rows=550080312 width=114) + Output:["_col0","_col1"] + Filter Operator [FIL_557] (rows=550080312 width=114) + predicate:((ss_customer_sk BETWEEN DynamicValue(RS_189_web_sales_ws_bill_customer_sk_min) AND DynamicValue(RS_189_web_sales_ws_bill_customer_sk_max) and in_bloom_filter(ss_customer_sk, DynamicValue(RS_189_web_sales_ws_bill_customer_sk_bloom_filter))) and ss_customer_sk is not null) + TableScan [TS_150] (rows=575995635 width=114) + default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_customer_sk","ss_quantity","ss_sales_price"] + <-Reducer 13 [BROADCAST_EDGE] vectorized + BROADCAST [RS_556] + Group By Operator [GBY_555] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Reducer 10 [CUSTOM_SIMPLE_EDGE] + PARTITION_ONLY_SHUFFLE [RS_406] + Group By Operator [GBY_405] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_404] (rows=3941102 width=7) + Output:["_col0"] + Please refer to the previous Merge Join Operator [MERGEJOIN_432] <-Reducer 4 [CONTAINS] - Reduce Output Operator [RS_457] - Group By Operator [GBY_456] (rows=1 width=112) + Reduce Output Operator [RS_449] + Group By Operator [GBY_448] (rows=1 width=112) Output:["_col0"],aggregations:["sum(_col0)"] - Select Operator [SEL_454] (rows=102 width=112) + Select Operator [SEL_446] (rows=102 width=112) Output:["_col0"] - Merge Join Operator [MERGEJOIN_453] (rows=102 width=1) - Conds:RS_98._col2=RS_495._col0(Inner),Output:["_col3","_col4"] - <-Reducer 32 [ONE_TO_ONE_EDGE] vectorized - FORWARD [RS_495] + Merge Join Operator [MERGEJOIN_445] (rows=102 width=1) + Conds:RS_94._col2=RS_487._col0(Inner),Output:["_col3","_col4"] + <-Reducer 30 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_487] PartitionCols:_col0 - Select Operator [SEL_494] (rows=745 width=4) + Select Operator [SEL_486] (rows=745 width=4) Output:["_col0"] - Filter Operator [FIL_493] (rows=745 width=12) + Filter Operator [FIL_485] (rows=745 width=12) predicate:(_col1 > 4L) - Group By Operator [GBY_492] (rows=2235 width=12) + Group By Operator [GBY_484] (rows=2235 width=12) Output:["_col0","_col1"],aggregations:["count(VALUE._col0)"],keys:KEY._col0 - <-Reducer 31 [SIMPLE_EDGE] - SHUFFLE [RS_88] + <-Reducer 29 [SIMPLE_EDGE] + SHUFFLE [RS_84] PartitionCols:_col0 - Please refer to the previous Group By Operator [GBY_87] + Please refer to the previous Group By Operator [GBY_83] <-Reducer 3 [SIMPLE_EDGE] - SHUFFLE [RS_98] + SHUFFLE [RS_94] PartitionCols:_col2 - Merge Join Operator [MERGEJOIN_447] (rows=7751875 width=98) - Conds:RS_95._col1=RS_540._col0(Inner),Output:["_col2","_col3","_col4"] + Merge Join Operator [MERGEJOIN_439] (rows=7751875 width=98) + Conds:RS_91._col1=RS_92._col0(Inner),Output:["_col2","_col3","_col4"] <-Reducer 2 [SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_95] + PARTITION_ONLY_SHUFFLE [RS_91] PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_435] (rows=7751875 width=101) - Conds:RS_503._col0=RS_465._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + Merge Join Operator [MERGEJOIN_427] (rows=7751875 width=101) + Conds:RS_495._col0=RS_457._col0(Inner),Output:["_col1","_col2","_col3","_col4"] <-Map 8 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_465] + PARTITION_ONLY_SHUFFLE [RS_457] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_464] + Please refer to the previous Select Operator [SEL_456] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_503] + SHUFFLE [RS_495] PartitionCols:_col0 - Select Operator [SEL_502] (rows=285117831 width=127) + Select Operator [SEL_494] (rows=285117831 width=127) Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_501] (rows=285117831 width=127) - predicate:((cs_item_sk BETWEEN DynamicValue(RS_99_item_i_item_sk_min) AND DynamicValue(RS_99_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_99_item_i_item_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_93_date_dim_d_date_sk_min) AND DynamicValue(RS_93_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_93_date_dim_d_date_sk_bloom_filter))) and cs_bill_customer_sk is not null and cs_sold_date_sk is not null) + Filter Operator [FIL_493] (rows=285117831 width=127) + predicate:((cs_item_sk BETWEEN DynamicValue(RS_95_item_i_item_sk_min) AND DynamicValue(RS_95_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_95_item_i_item_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_89_date_dim_d_date_sk_min) AND DynamicValue(RS_89_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_89_date_dim_d_date_sk_bloom_filter))) and cs_bill_customer_sk is not null and cs_sold_date_sk is not null) TableScan [TS_0] (rows=287989836 width=127) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_bill_customer_sk","cs_item_sk","cs_quantity","cs_list_price"] - <-Reducer 33 [BROADCAST_EDGE] vectorized - BROADCAST [RS_500] - Group By Operator [GBY_499] (rows=1 width=12) + <-Reducer 31 [BROADCAST_EDGE] vectorized + BROADCAST [RS_492] + Group By Operator [GBY_491] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Reducer 32 [CUSTOM_SIMPLE_EDGE] vectorized - FORWARD [RS_498] - Group By Operator [GBY_497] (rows=1 width=12) + <-Reducer 30 [CUSTOM_SIMPLE_EDGE] vectorized + FORWARD [RS_490] + Group By Operator [GBY_489] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_496] (rows=745 width=4) + Select Operator [SEL_488] (rows=745 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_494] + Please refer to the previous Select Operator [SEL_486] <-Reducer 9 [BROADCAST_EDGE] vectorized - BROADCAST [RS_474] - Group By Operator [GBY_473] (rows=1 width=12) + BROADCAST [RS_466] + Group By Operator [GBY_465] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Map 8 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_471] - Group By Operator [GBY_469] (rows=1 width=12) + PARTITION_ONLY_SHUFFLE [RS_463] + Group By Operator [GBY_461] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_466] (rows=50 width=4) + Select Operator [SEL_458] (rows=50 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_464] - <-Reducer 21 [ONE_TO_ONE_EDGE] vectorized - FORWARD [RS_540] + Please refer to the previous Select Operator [SEL_456] + <-Reducer 20 [SIMPLE_EDGE] + SHUFFLE [RS_92] PartitionCols:_col0 - Group By Operator [GBY_539] (rows=235937 width=3) - Output:["_col0"],keys:KEY._col0 - <-Reducer 20 [SIMPLE_EDGE] - SHUFFLE [RS_69] - PartitionCols:_col0 - Group By Operator [GBY_68] (rows=235937 width=3) - Output:["_col0"],keys:_col2 - Select Operator [SEL_67] (rows=471875 width=227) - Output:["_col2"] - Filter Operator [FIL_66] (rows=471875 width=227) - predicate:(_col3 > _col1) - Merge Join Operator [MERGEJOIN_446] (rows=1415626 width=227) - Conds:(Inner),Output:["_col1","_col2","_col3"] - <-Reducer 19 [CUSTOM_SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_63] - Merge Join Operator [MERGEJOIN_445] (rows=1 width=112) - Conds:(Inner),Output:["_col1"] - <-Reducer 18 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_527] - Select Operator [SEL_526] (rows=1 width=8) - Filter Operator [FIL_525] (rows=1 width=8) - predicate:(sq_count_check(_col0) <= 1) - Group By Operator [GBY_524] (rows=1 width=8) - Output:["_col0"],aggregations:["count()"] - Select Operator [SEL_523] (rows=1 width=8) - Group By Operator [GBY_522] (rows=1 width=8) - Output:["_col0"],aggregations:["count(VALUE._col0)"] - <-Reducer 17 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_518] - Group By Operator [GBY_514] (rows=1 width=8) - Output:["_col0"],aggregations:["count(_col0)"] - Select Operator [SEL_510] (rows=50562 width=112) - Output:["_col0"] - Please refer to the previous Group By Operator [GBY_509] - <-Reducer 22 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_530] - Select Operator [SEL_529] (rows=1 width=112) - Output:["_col0"] - Group By Operator [GBY_528] (rows=1 width=112) - Output:["_col0"],aggregations:["max(VALUE._col0)"] + Select Operator [SEL_67] (rows=471875 width=3) + Output:["_col0"] + Filter Operator [FIL_66] (rows=471875 width=227) + predicate:(_col3 > (0.95 * _col1)) + Merge Join Operator [MERGEJOIN_438] (rows=1415626 width=227) + Conds:(Inner),Output:["_col1","_col2","_col3"] + <-Reducer 19 [CUSTOM_SIMPLE_EDGE] + PARTITION_ONLY_SHUFFLE [RS_63] + Merge Join Operator [MERGEJOIN_437] (rows=1 width=112) + Conds:(Inner),Output:["_col1"] + <-Reducer 18 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_519] + Select Operator [SEL_518] (rows=1 width=8) + Filter Operator [FIL_517] (rows=1 width=8) + predicate:(sq_count_check(_col0) <= 1) + Group By Operator [GBY_516] (rows=1 width=8) + Output:["_col0"],aggregations:["count()"] + Select Operator [SEL_515] (rows=1 width=8) + Group By Operator [GBY_514] (rows=1 width=8) + Output:["_col0"],aggregations:["count(VALUE._col0)"] <-Reducer 17 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_519] - Group By Operator [GBY_515] (rows=1 width=112) - Output:["_col0"],aggregations:["max(_col1)"] - Select Operator [SEL_511] (rows=50562 width=112) - Output:["_col1"] - Please refer to the previous Group By Operator [GBY_509] - <-Reducer 38 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_538] - Group By Operator [GBY_537] (rows=1415626 width=115) - Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Map 37 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_536] - PartitionCols:_col0 - Group By Operator [GBY_535] (rows=550080312 width=115) - Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0 - Select Operator [SEL_534] (rows=550080312 width=114) - Output:["_col0","_col1"] - Filter Operator [FIL_533] (rows=550080312 width=114) - predicate:((ss_customer_sk BETWEEN DynamicValue(RS_95_catalog_sales_cs_bill_customer_sk_min) AND DynamicValue(RS_95_catalog_sales_cs_bill_customer_sk_max) and in_bloom_filter(ss_customer_sk, DynamicValue(RS_95_catalog_sales_cs_bill_customer_sk_bloom_filter))) and ss_customer_sk is not null) - TableScan [TS_52] (rows=575995635 width=114) - default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_customer_sk","ss_quantity","ss_sales_price"] - <-Reducer 7 [BROADCAST_EDGE] vectorized - BROADCAST [RS_532] - Group By Operator [GBY_531] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Reducer 2 [CUSTOM_SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_341] - Group By Operator [GBY_340] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_339] (rows=7751875 width=6) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_435] + PARTITION_ONLY_SHUFFLE [RS_510] + Group By Operator [GBY_506] (rows=1 width=8) + Output:["_col0"],aggregations:["count(_col0)"] + Select Operator [SEL_502] (rows=50562 width=112) + Output:["_col0"] + Please refer to the previous Group By Operator [GBY_501] + <-Reducer 21 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_521] + Group By Operator [GBY_520] (rows=1 width=112) + Output:["_col0"],aggregations:["max(VALUE._col0)"] + <-Reducer 17 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_511] + Group By Operator [GBY_507] (rows=1 width=112) + Output:["_col0"],aggregations:["max(_col1)"] + Select Operator [SEL_503] (rows=50562 width=112) + Output:["_col1"] + Please refer to the previous Group By Operator [GBY_501] + <-Reducer 36 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_529] + Group By Operator [GBY_528] (rows=1415626 width=115) + Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 + <-Map 35 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_527] + PartitionCols:_col0 + Group By Operator [GBY_526] (rows=550080312 width=115) + Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0 + Select Operator [SEL_525] (rows=550080312 width=114) + Output:["_col0","_col1"] + Filter Operator [FIL_524] (rows=550080312 width=114) + predicate:((ss_customer_sk BETWEEN DynamicValue(RS_91_catalog_sales_cs_bill_customer_sk_min) AND DynamicValue(RS_91_catalog_sales_cs_bill_customer_sk_max) and in_bloom_filter(ss_customer_sk, DynamicValue(RS_91_catalog_sales_cs_bill_customer_sk_bloom_filter))) and ss_customer_sk is not null) + TableScan [TS_52] (rows=575995635 width=114) + default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_customer_sk","ss_quantity","ss_sales_price"] + <-Reducer 7 [BROADCAST_EDGE] vectorized + BROADCAST [RS_523] + Group By Operator [GBY_522] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Reducer 2 [CUSTOM_SIMPLE_EDGE] + PARTITION_ONLY_SHUFFLE [RS_333] + Group By Operator [GBY_332] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_331] (rows=7751875 width=6) + Output:["_col0"] + Please refer to the previous Merge Join Operator [MERGEJOIN_427] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query31.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query31.q.out index a01919e0fe..8e0de0ffe2 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query31.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query31.q.out @@ -157,88 +157,86 @@ Stage-0 File Output Operator [FS_139] Select Operator [SEL_138] (rows=110 width=550) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] - Filter Operator [FIL_136] (rows=110 width=786) - predicate:(CASE WHEN (_col2) THEN (CASE WHEN (_col15) THEN (((_col12 / _col14) > (_col7 / _col1))) ELSE ((null > (_col7 / _col1))) END) ELSE (CASE WHEN (_col15) THEN (((_col12 / _col14) > null)) ELSE (null) END) END and CASE WHEN (_col5) THEN (CASE WHEN (_col10) THEN (((_col14 / _col9) > (_col1 / _col4))) ELSE ((null > (_col1 / _col4))) END) ELSE (CASE WHEN (_col10) THEN (((_col14 / _col9) > null)) ELSE (null) END) END) - Merge Join Operator [MERGEJOIN_450] (rows=440 width=786) - Conds:RS_133._col0=RS_134._col0(Inner),Output:["_col0","_col1","_col2","_col4","_col5","_col7","_col9","_col10","_col12","_col14","_col15"] + Filter Operator [FIL_136] (rows=110 width=778) + predicate:(CASE WHEN ((_col11 > 0)) THEN (CASE WHEN (_col2) THEN (((_col6 / _col1) > (_col9 / _col11))) ELSE ((null > (_col9 / _col11))) END) ELSE (CASE WHEN (_col2) THEN (((_col6 / _col1) > null)) ELSE (null) END) END and CASE WHEN ((_col9 > 0)) THEN (CASE WHEN (_col7) THEN (((_col4 / _col6) > (_col13 / _col9))) ELSE ((null > (_col13 / _col9))) END) ELSE (CASE WHEN (_col7) THEN (((_col4 / _col6) > null)) ELSE (null) END) END) + Merge Join Operator [MERGEJOIN_450] (rows=440 width=778) + Conds:RS_133._col0=RS_134._col0(Inner),Output:["_col1","_col2","_col4","_col6","_col7","_col8","_col9","_col11","_col13"] <-Reducer 22 [ONE_TO_ONE_EDGE] FORWARD [RS_134] PartitionCols:_col0 - Merge Join Operator [MERGEJOIN_449] (rows=440 width=442) - Conds:RS_123._col0=RS_540._col0(Inner),Output:["_col0","_col1","_col2","_col4","_col6","_col7"] + Merge Join Operator [MERGEJOIN_448] (rows=1605 width=434) + Conds:RS_123._col0=RS_538._col0(Inner),Output:["_col0","_col1","_col3","_col5"] <-Reducer 21 [ONE_TO_ONE_EDGE] FORWARD [RS_123] PartitionCols:_col0 - Merge Join Operator [MERGEJOIN_448] (rows=440 width=326) - Conds:RS_525._col0=RS_532._col0(Inner),Output:["_col0","_col1","_col2","_col4"] + Merge Join Operator [MERGEJOIN_447] (rows=1605 width=322) + Conds:RS_524._col0=RS_531._col0(Inner),Output:["_col0","_col1","_col3"] <-Reducer 20 [ONE_TO_ONE_EDGE] vectorized - FORWARD [RS_525] + FORWARD [RS_524] PartitionCols:_col0 - Select Operator [SEL_524] (rows=440 width=214) - Output:["_col0","_col1","_col2"] - Group By Operator [GBY_523] (rows=440 width=210) - Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Reducer 19 [SIMPLE_EDGE] - SHUFFLE [RS_77] - PartitionCols:_col0 - Group By Operator [GBY_76] (rows=3960 width=210) - Output:["_col0","_col1"],aggregations:["sum(_col2)"],keys:_col5 - Merge Join Operator [MERGEJOIN_441] (rows=10246882 width=209) - Conds:RS_72._col1=RS_497._col0(Inner),Output:["_col2","_col5"] - <-Map 32 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_497] - PartitionCols:_col0 - Select Operator [SEL_493] (rows=40000000 width=102) - Output:["_col0","_col1"] - Filter Operator [FIL_492] (rows=40000000 width=102) - predicate:ca_county is not null - TableScan [TS_6] (rows=40000000 width=102) - default@customer_address,customer_address,Tbl:COMPLETE,Col:COMPLETE,Output:["ca_address_sk","ca_county"] - <-Reducer 18 [SIMPLE_EDGE] - SHUFFLE [RS_72] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_440] (rows=10246882 width=115) - Conds:RS_522._col0=RS_469._col0(Inner),Output:["_col1","_col2"] - <-Map 8 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_469] - PartitionCols:_col0 - Select Operator [SEL_460] (rows=130 width=4) - Output:["_col0"] - Filter Operator [FIL_454] (rows=130 width=12) - predicate:((d_qoy = 1) and (d_year = 2000)) - TableScan [TS_3] (rows=73049 width=12) - default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_qoy"] - <-Map 35 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_522] - PartitionCols:_col0 - Select Operator [SEL_521] (rows=143931246 width=119) - Output:["_col0","_col1","_col2"] - Filter Operator [FIL_520] (rows=143931246 width=119) - predicate:((ws_sold_date_sk BETWEEN DynamicValue(RS_70_date_dim_d_date_sk_min) AND DynamicValue(RS_70_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_70_date_dim_d_date_sk_bloom_filter))) and ws_bill_addr_sk is not null and ws_sold_date_sk is not null) - TableScan [TS_60] (rows=144002668 width=119) - default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_bill_addr_sk","ws_ext_sales_price"] - <-Reducer 23 [BROADCAST_EDGE] vectorized - BROADCAST [RS_519] - Group By Operator [GBY_518] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 8 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_484] - Group By Operator [GBY_478] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_470] (rows=130 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_460] + Group By Operator [GBY_523] (rows=1605 width=210) + Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 + <-Reducer 19 [SIMPLE_EDGE] + SHUFFLE [RS_77] + PartitionCols:_col0 + Group By Operator [GBY_76] (rows=33705 width=210) + Output:["_col0","_col1"],aggregations:["sum(_col2)"],keys:_col5 + Merge Join Operator [MERGEJOIN_441] (rows=37399561 width=139) + Conds:RS_72._col1=RS_497._col0(Inner),Output:["_col2","_col5"] + <-Map 32 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_497] + PartitionCols:_col0 + Select Operator [SEL_493] (rows=40000000 width=102) + Output:["_col0","_col1"] + Filter Operator [FIL_492] (rows=40000000 width=102) + predicate:ca_county is not null + TableScan [TS_6] (rows=40000000 width=102) + default@customer_address,customer_address,Tbl:COMPLETE,Col:COMPLETE,Output:["ca_address_sk","ca_county"] + <-Reducer 18 [SIMPLE_EDGE] + SHUFFLE [RS_72] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_440] (rows=37399561 width=42) + Conds:RS_522._col0=RS_469._col0(Inner),Output:["_col1","_col2"] + <-Map 8 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_469] + PartitionCols:_col0 + Select Operator [SEL_460] (rows=130 width=4) + Output:["_col0"] + Filter Operator [FIL_454] (rows=130 width=12) + predicate:((d_qoy = 2) and (d_year = 2000)) + TableScan [TS_3] (rows=73049 width=12) + default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_qoy"] + <-Map 35 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_522] + PartitionCols:_col0 + Select Operator [SEL_521] (rows=525327191 width=114) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_520] (rows=525327191 width=114) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_70_date_dim_d_date_sk_min) AND DynamicValue(RS_70_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_70_date_dim_d_date_sk_bloom_filter))) and ss_addr_sk is not null and ss_sold_date_sk is not null) + TableScan [TS_60] (rows=575995635 width=114) + default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_addr_sk","ss_ext_sales_price"] + <-Reducer 23 [BROADCAST_EDGE] vectorized + BROADCAST [RS_519] + Group By Operator [GBY_518] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 8 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_484] + Group By Operator [GBY_478] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_470] (rows=130 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_460] <-Reducer 26 [ONE_TO_ONE_EDGE] vectorized - FORWARD [RS_532] + FORWARD [RS_531] PartitionCols:_col0 - Group By Operator [GBY_531] (rows=440 width=210) + Group By Operator [GBY_530] (rows=1605 width=210) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 <-Reducer 25 [SIMPLE_EDGE] SHUFFLE [RS_97] PartitionCols:_col0 - Group By Operator [GBY_96] (rows=3960 width=210) + Group By Operator [GBY_96] (rows=33705 width=210) Output:["_col0","_col1"],aggregations:["sum(_col2)"],keys:_col5 - Merge Join Operator [MERGEJOIN_443] (rows=10246882 width=209) + Merge Join Operator [MERGEJOIN_443] (rows=37399561 width=139) Conds:RS_92._col1=RS_498._col0(Inner),Output:["_col2","_col5"] <-Map 32 [SIMPLE_EDGE] vectorized SHUFFLE [RS_498] @@ -247,28 +245,28 @@ Stage-0 <-Reducer 24 [SIMPLE_EDGE] SHUFFLE [RS_92] PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_442] (rows=10246882 width=115) - Conds:RS_530._col0=RS_471._col0(Inner),Output:["_col1","_col2"] + Merge Join Operator [MERGEJOIN_442] (rows=37399561 width=42) + Conds:RS_529._col0=RS_471._col0(Inner),Output:["_col1","_col2"] <-Map 8 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_471] PartitionCols:_col0 Select Operator [SEL_461] (rows=130 width=4) Output:["_col0"] Filter Operator [FIL_455] (rows=130 width=12) - predicate:((d_qoy = 3) and (d_year = 2000)) + predicate:((d_qoy = 1) and (d_year = 2000)) Please refer to the previous TableScan [TS_3] <-Map 36 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_530] + SHUFFLE [RS_529] PartitionCols:_col0 - Select Operator [SEL_529] (rows=143931246 width=119) + Select Operator [SEL_528] (rows=525327191 width=114) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_528] (rows=143931246 width=119) - predicate:((ws_sold_date_sk BETWEEN DynamicValue(RS_90_date_dim_d_date_sk_min) AND DynamicValue(RS_90_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_90_date_dim_d_date_sk_bloom_filter))) and ws_bill_addr_sk is not null and ws_sold_date_sk is not null) - TableScan [TS_80] (rows=144002668 width=119) - default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_bill_addr_sk","ws_ext_sales_price"] + Filter Operator [FIL_527] (rows=525327191 width=114) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_90_date_dim_d_date_sk_min) AND DynamicValue(RS_90_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_90_date_dim_d_date_sk_bloom_filter))) and ss_addr_sk is not null and ss_sold_date_sk is not null) + TableScan [TS_80] (rows=575995635 width=114) + default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_addr_sk","ss_ext_sales_price"] <-Reducer 27 [BROADCAST_EDGE] vectorized - BROADCAST [RS_527] - Group By Operator [GBY_526] (rows=1 width=12) + BROADCAST [RS_526] + Group By Operator [GBY_525] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Map 8 [CUSTOM_SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_485] @@ -278,179 +276,177 @@ Stage-0 Output:["_col0"] Please refer to the previous Select Operator [SEL_461] <-Reducer 30 [ONE_TO_ONE_EDGE] vectorized - FORWARD [RS_540] + FORWARD [RS_538] + PartitionCols:_col0 + Group By Operator [GBY_537] (rows=1605 width=210) + Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 + <-Reducer 29 [SIMPLE_EDGE] + SHUFFLE [RS_117] + PartitionCols:_col0 + Group By Operator [GBY_116] (rows=33705 width=210) + Output:["_col0","_col1"],aggregations:["sum(_col2)"],keys:_col5 + Merge Join Operator [MERGEJOIN_445] (rows=37399561 width=139) + Conds:RS_112._col1=RS_499._col0(Inner),Output:["_col2","_col5"] + <-Map 32 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_499] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_493] + <-Reducer 28 [SIMPLE_EDGE] + SHUFFLE [RS_112] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_444] (rows=37399561 width=42) + Conds:RS_536._col0=RS_473._col0(Inner),Output:["_col1","_col2"] + <-Map 8 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_473] + PartitionCols:_col0 + Select Operator [SEL_462] (rows=130 width=4) + Output:["_col0"] + Filter Operator [FIL_456] (rows=130 width=12) + predicate:((d_qoy = 3) and (d_year = 2000)) + Please refer to the previous TableScan [TS_3] + <-Map 37 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_536] + PartitionCols:_col0 + Select Operator [SEL_535] (rows=525327191 width=114) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_534] (rows=525327191 width=114) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_110_date_dim_d_date_sk_min) AND DynamicValue(RS_110_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_110_date_dim_d_date_sk_bloom_filter))) and ss_addr_sk is not null and ss_sold_date_sk is not null) + TableScan [TS_100] (rows=575995635 width=114) + default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_addr_sk","ss_ext_sales_price"] + <-Reducer 31 [BROADCAST_EDGE] vectorized + BROADCAST [RS_533] + Group By Operator [GBY_532] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 8 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_486] + Group By Operator [GBY_480] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_474] (rows=130 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_462] + <-Reducer 6 [ONE_TO_ONE_EDGE] + FORWARD [RS_133] + PartitionCols:_col0 + Merge Join Operator [MERGEJOIN_449] (rows=440 width=442) + Conds:RS_130._col0=RS_517._col0(Inner),Output:["_col0","_col1","_col2","_col4","_col6","_col7"] + <-Reducer 16 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_517] PartitionCols:_col0 - Select Operator [SEL_539] (rows=440 width=214) + Select Operator [SEL_516] (rows=440 width=214) Output:["_col0","_col1","_col2"] - Group By Operator [GBY_538] (rows=440 width=210) + Group By Operator [GBY_515] (rows=440 width=210) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Reducer 29 [SIMPLE_EDGE] - SHUFFLE [RS_117] + <-Reducer 15 [SIMPLE_EDGE] + SHUFFLE [RS_57] PartitionCols:_col0 - Group By Operator [GBY_116] (rows=3960 width=210) + Group By Operator [GBY_56] (rows=3960 width=210) Output:["_col0","_col1"],aggregations:["sum(_col2)"],keys:_col5 - Merge Join Operator [MERGEJOIN_445] (rows=10246882 width=209) - Conds:RS_112._col1=RS_499._col0(Inner),Output:["_col2","_col5"] + Merge Join Operator [MERGEJOIN_439] (rows=10246882 width=209) + Conds:RS_52._col1=RS_496._col0(Inner),Output:["_col2","_col5"] <-Map 32 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_499] + SHUFFLE [RS_496] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_493] - <-Reducer 28 [SIMPLE_EDGE] - SHUFFLE [RS_112] + <-Reducer 14 [SIMPLE_EDGE] + SHUFFLE [RS_52] PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_444] (rows=10246882 width=115) - Conds:RS_537._col0=RS_473._col0(Inner),Output:["_col1","_col2"] + Merge Join Operator [MERGEJOIN_438] (rows=10246882 width=115) + Conds:RS_514._col0=RS_467._col0(Inner),Output:["_col1","_col2"] <-Map 8 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_473] + PARTITION_ONLY_SHUFFLE [RS_467] PartitionCols:_col0 - Select Operator [SEL_462] (rows=130 width=4) + Select Operator [SEL_459] (rows=130 width=4) Output:["_col0"] - Filter Operator [FIL_456] (rows=130 width=12) + Filter Operator [FIL_453] (rows=130 width=12) predicate:((d_qoy = 2) and (d_year = 2000)) Please refer to the previous TableScan [TS_3] - <-Map 37 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_537] + <-Map 34 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_514] PartitionCols:_col0 - Select Operator [SEL_536] (rows=143931246 width=119) + Select Operator [SEL_513] (rows=143931246 width=119) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_535] (rows=143931246 width=119) - predicate:((ws_sold_date_sk BETWEEN DynamicValue(RS_110_date_dim_d_date_sk_min) AND DynamicValue(RS_110_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_110_date_dim_d_date_sk_bloom_filter))) and ws_bill_addr_sk is not null and ws_sold_date_sk is not null) - TableScan [TS_100] (rows=144002668 width=119) + Filter Operator [FIL_512] (rows=143931246 width=119) + predicate:((ws_sold_date_sk BETWEEN DynamicValue(RS_50_date_dim_d_date_sk_min) AND DynamicValue(RS_50_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_50_date_dim_d_date_sk_bloom_filter))) and ws_bill_addr_sk is not null and ws_sold_date_sk is not null) + TableScan [TS_40] (rows=144002668 width=119) default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_bill_addr_sk","ws_ext_sales_price"] - <-Reducer 31 [BROADCAST_EDGE] vectorized - BROADCAST [RS_534] - Group By Operator [GBY_533] (rows=1 width=12) + <-Reducer 17 [BROADCAST_EDGE] vectorized + BROADCAST [RS_511] + Group By Operator [GBY_510] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Map 8 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_486] - Group By Operator [GBY_480] (rows=1 width=12) + PARTITION_ONLY_SHUFFLE [RS_483] + Group By Operator [GBY_477] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_474] (rows=130 width=4) + Select Operator [SEL_468] (rows=130 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_462] - <-Reducer 6 [ONE_TO_ONE_EDGE] - FORWARD [RS_133] - PartitionCols:_col0 - Merge Join Operator [MERGEJOIN_447] (rows=1605 width=442) - Conds:RS_130._col0=RS_517._col0(Inner),Output:["_col0","_col1","_col2","_col4","_col5","_col7"] - <-Reducer 16 [ONE_TO_ONE_EDGE] vectorized - FORWARD [RS_517] - PartitionCols:_col0 - Group By Operator [GBY_516] (rows=1605 width=210) - Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Reducer 15 [SIMPLE_EDGE] - SHUFFLE [RS_57] - PartitionCols:_col0 - Group By Operator [GBY_56] (rows=33705 width=210) - Output:["_col0","_col1"],aggregations:["sum(_col2)"],keys:_col5 - Merge Join Operator [MERGEJOIN_439] (rows=37399561 width=139) - Conds:RS_52._col1=RS_496._col0(Inner),Output:["_col2","_col5"] - <-Map 32 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_496] - PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_493] - <-Reducer 14 [SIMPLE_EDGE] - SHUFFLE [RS_52] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_438] (rows=37399561 width=42) - Conds:RS_515._col0=RS_467._col0(Inner),Output:["_col1","_col2"] - <-Map 8 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_467] - PartitionCols:_col0 - Select Operator [SEL_459] (rows=130 width=4) - Output:["_col0"] - Filter Operator [FIL_453] (rows=130 width=12) - predicate:((d_qoy = 3) and (d_year = 2000)) - Please refer to the previous TableScan [TS_3] - <-Map 34 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_515] - PartitionCols:_col0 - Select Operator [SEL_514] (rows=525327191 width=114) - Output:["_col0","_col1","_col2"] - Filter Operator [FIL_513] (rows=525327191 width=114) - predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_50_date_dim_d_date_sk_min) AND DynamicValue(RS_50_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_50_date_dim_d_date_sk_bloom_filter))) and ss_addr_sk is not null and ss_sold_date_sk is not null) - TableScan [TS_40] (rows=575995635 width=114) - default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_addr_sk","ss_ext_sales_price"] - <-Reducer 17 [BROADCAST_EDGE] vectorized - BROADCAST [RS_512] - Group By Operator [GBY_511] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 8 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_483] - Group By Operator [GBY_477] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_468] (rows=130 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_459] + Please refer to the previous Select Operator [SEL_459] <-Reducer 5 [ONE_TO_ONE_EDGE] FORWARD [RS_130] PartitionCols:_col0 - Merge Join Operator [MERGEJOIN_446] (rows=1605 width=330) - Conds:RS_502._col0=RS_510._col0(Inner),Output:["_col0","_col1","_col2","_col4","_col5"] + Merge Join Operator [MERGEJOIN_446] (rows=440 width=326) + Conds:RS_502._col0=RS_509._col0(Inner),Output:["_col0","_col1","_col2","_col4"] <-Reducer 12 [ONE_TO_ONE_EDGE] vectorized - FORWARD [RS_510] + FORWARD [RS_509] PartitionCols:_col0 - Select Operator [SEL_509] (rows=1605 width=214) - Output:["_col0","_col1","_col2"] - Group By Operator [GBY_508] (rows=1605 width=210) - Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Reducer 11 [SIMPLE_EDGE] - SHUFFLE [RS_37] - PartitionCols:_col0 - Group By Operator [GBY_36] (rows=33705 width=210) - Output:["_col0","_col1"],aggregations:["sum(_col2)"],keys:_col5 - Merge Join Operator [MERGEJOIN_437] (rows=37399561 width=139) - Conds:RS_32._col1=RS_495._col0(Inner),Output:["_col2","_col5"] - <-Map 32 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_495] - PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_493] - <-Reducer 10 [SIMPLE_EDGE] - SHUFFLE [RS_32] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_436] (rows=37399561 width=42) - Conds:RS_507._col0=RS_465._col0(Inner),Output:["_col1","_col2"] - <-Map 8 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_465] - PartitionCols:_col0 - Select Operator [SEL_458] (rows=130 width=4) - Output:["_col0"] - Filter Operator [FIL_452] (rows=130 width=12) - predicate:((d_qoy = 1) and (d_year = 2000)) - Please refer to the previous TableScan [TS_3] - <-Map 33 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_507] - PartitionCols:_col0 - Select Operator [SEL_506] (rows=525327191 width=114) - Output:["_col0","_col1","_col2"] - Filter Operator [FIL_505] (rows=525327191 width=114) - predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_30_date_dim_d_date_sk_min) AND DynamicValue(RS_30_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_30_date_dim_d_date_sk_bloom_filter))) and ss_addr_sk is not null and ss_sold_date_sk is not null) - TableScan [TS_20] (rows=575995635 width=114) - default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_addr_sk","ss_ext_sales_price"] - <-Reducer 13 [BROADCAST_EDGE] vectorized - BROADCAST [RS_504] - Group By Operator [GBY_503] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 8 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_482] - Group By Operator [GBY_476] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_466] (rows=130 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_458] + Group By Operator [GBY_508] (rows=440 width=210) + Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 + <-Reducer 11 [SIMPLE_EDGE] + SHUFFLE [RS_37] + PartitionCols:_col0 + Group By Operator [GBY_36] (rows=3960 width=210) + Output:["_col0","_col1"],aggregations:["sum(_col2)"],keys:_col5 + Merge Join Operator [MERGEJOIN_437] (rows=10246882 width=209) + Conds:RS_32._col1=RS_495._col0(Inner),Output:["_col2","_col5"] + <-Map 32 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_495] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_493] + <-Reducer 10 [SIMPLE_EDGE] + SHUFFLE [RS_32] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_436] (rows=10246882 width=115) + Conds:RS_507._col0=RS_465._col0(Inner),Output:["_col1","_col2"] + <-Map 8 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_465] + PartitionCols:_col0 + Select Operator [SEL_458] (rows=130 width=4) + Output:["_col0"] + Filter Operator [FIL_452] (rows=130 width=12) + predicate:((d_qoy = 3) and (d_year = 2000)) + Please refer to the previous TableScan [TS_3] + <-Map 33 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_507] + PartitionCols:_col0 + Select Operator [SEL_506] (rows=143931246 width=119) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_505] (rows=143931246 width=119) + predicate:((ws_sold_date_sk BETWEEN DynamicValue(RS_30_date_dim_d_date_sk_min) AND DynamicValue(RS_30_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_30_date_dim_d_date_sk_bloom_filter))) and ws_bill_addr_sk is not null and ws_sold_date_sk is not null) + TableScan [TS_20] (rows=144002668 width=119) + default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_bill_addr_sk","ws_ext_sales_price"] + <-Reducer 13 [BROADCAST_EDGE] vectorized + BROADCAST [RS_504] + Group By Operator [GBY_503] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 8 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_482] + Group By Operator [GBY_476] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_466] (rows=130 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_458] <-Reducer 4 [ONE_TO_ONE_EDGE] vectorized FORWARD [RS_502] PartitionCols:_col0 - Select Operator [SEL_501] (rows=1605 width=214) + Select Operator [SEL_501] (rows=440 width=214) Output:["_col0","_col1","_col2"] - Group By Operator [GBY_500] (rows=1605 width=210) + Group By Operator [GBY_500] (rows=440 width=210) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_17] PartitionCols:_col0 - Group By Operator [GBY_16] (rows=33705 width=210) + Group By Operator [GBY_16] (rows=3960 width=210) Output:["_col0","_col1"],aggregations:["sum(_col2)"],keys:_col5 - Merge Join Operator [MERGEJOIN_435] (rows=37399561 width=139) + Merge Join Operator [MERGEJOIN_435] (rows=10246882 width=209) Conds:RS_12._col1=RS_494._col0(Inner),Output:["_col2","_col5"] <-Map 32 [SIMPLE_EDGE] vectorized SHUFFLE [RS_494] @@ -459,7 +455,7 @@ Stage-0 <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_12] PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_434] (rows=37399561 width=42) + Merge Join Operator [MERGEJOIN_434] (rows=10246882 width=115) Conds:RS_491._col0=RS_463._col0(Inner),Output:["_col1","_col2"] <-Map 8 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_463] @@ -467,17 +463,17 @@ Stage-0 Select Operator [SEL_457] (rows=130 width=4) Output:["_col0"] Filter Operator [FIL_451] (rows=130 width=12) - predicate:((d_qoy = 2) and (d_year = 2000)) + predicate:((d_qoy = 1) and (d_year = 2000)) Please refer to the previous TableScan [TS_3] <-Map 1 [SIMPLE_EDGE] vectorized SHUFFLE [RS_491] PartitionCols:_col0 - Select Operator [SEL_490] (rows=525327191 width=114) + Select Operator [SEL_490] (rows=143931246 width=119) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_489] (rows=525327191 width=114) - predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_10_date_dim_d_date_sk_min) AND DynamicValue(RS_10_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_10_date_dim_d_date_sk_bloom_filter))) and ss_addr_sk is not null and ss_sold_date_sk is not null) - TableScan [TS_0] (rows=575995635 width=114) - default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_addr_sk","ss_ext_sales_price"] + Filter Operator [FIL_489] (rows=143931246 width=119) + predicate:((ws_sold_date_sk BETWEEN DynamicValue(RS_10_date_dim_d_date_sk_min) AND DynamicValue(RS_10_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_10_date_dim_d_date_sk_bloom_filter))) and ws_bill_addr_sk is not null and ws_sold_date_sk is not null) + TableScan [TS_0] (rows=144002668 width=119) + default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_bill_addr_sk","ws_ext_sales_price"] <-Reducer 9 [BROADCAST_EDGE] vectorized BROADCAST [RS_488] Group By Operator [GBY_487] (rows=1 width=12) diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query4.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query4.q.out index 7291c142c0..2f8ab17bf0 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query4.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query4.q.out @@ -280,10 +280,10 @@ Stage-0 SHUFFLE [RS_135] Select Operator [SEL_134] (rows=7323197 width=85) Output:["_col0"] - Filter Operator [FIL_133] (rows=7323197 width=541) - predicate:CASE WHEN (_col4) THEN (CASE WHEN (_col10) THEN (((_col12 / _col9) > (_col15 / _col3))) ELSE ((null > (_col15 / _col3))) END) ELSE (CASE WHEN (_col10) THEN (((_col12 / _col9) > null)) ELSE (null) END) END - Merge Join Operator [MERGEJOIN_466] (rows=14646395 width=541) - Conds:RS_130._col2=RS_547._col0(Inner),Output:["_col3","_col4","_col9","_col10","_col12","_col14","_col15"] + Filter Operator [FIL_133] (rows=7323197 width=537) + predicate:CASE WHEN (_col3 is not null) THEN (CASE WHEN (_col9) THEN (((_col11 / _col8) > (_col14 / _col3))) ELSE ((null > (_col14 / _col3))) END) ELSE (CASE WHEN (_col9) THEN (((_col11 / _col8) > null)) ELSE (null) END) END + Merge Join Operator [MERGEJOIN_466] (rows=14646395 width=537) + Conds:RS_130._col2=RS_547._col0(Inner),Output:["_col3","_col8","_col9","_col11","_col13","_col14"] <-Reducer 30 [SIMPLE_EDGE] vectorized SHUFFLE [RS_547] PartitionCols:_col0 @@ -342,10 +342,10 @@ Stage-0 <-Reducer 8 [ONE_TO_ONE_EDGE] FORWARD [RS_130] PartitionCols:_col2 - Filter Operator [FIL_129] (rows=12248093 width=672) - predicate:CASE WHEN (_col7) THEN (CASE WHEN (_col10) THEN (((_col12 / _col9) > (_col1 / _col6))) ELSE ((null > (_col1 / _col6))) END) ELSE (CASE WHEN (_col10) THEN (((_col12 / _col9) > null)) ELSE (null) END) END - Merge Join Operator [MERGEJOIN_465] (rows=24496186 width=672) - Conds:RS_126._col2=RS_541._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col6","_col7","_col9","_col10","_col12"] + Filter Operator [FIL_129] (rows=12248093 width=668) + predicate:CASE WHEN (_col6) THEN (CASE WHEN (_col9) THEN (((_col11 / _col8) > (_col1 / _col5))) ELSE ((null > (_col1 / _col5))) END) ELSE (CASE WHEN (_col9) THEN (((_col11 / _col8) > null)) ELSE (null) END) END + Merge Join Operator [MERGEJOIN_465] (rows=24496186 width=668) + Conds:RS_126._col2=RS_541._col0(Inner),Output:["_col1","_col2","_col3","_col5","_col6","_col8","_col9","_col11"] <-Reducer 26 [SIMPLE_EDGE] vectorized SHUFFLE [RS_541] PartitionCols:_col0 @@ -396,8 +396,8 @@ Stage-0 <-Reducer 7 [ONE_TO_ONE_EDGE] FORWARD [RS_126] PartitionCols:_col2 - Merge Join Operator [MERGEJOIN_464] (rows=20485011 width=560) - Conds:RS_123._col2=RS_535._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col6","_col7","_col9","_col10"] + Merge Join Operator [MERGEJOIN_464] (rows=20485011 width=556) + Conds:RS_123._col2=RS_535._col0(Inner),Output:["_col1","_col2","_col3","_col5","_col6","_col8","_col9"] <-Reducer 22 [SIMPLE_EDGE] vectorized SHUFFLE [RS_535] PartitionCols:_col0 @@ -456,8 +456,8 @@ Stage-0 <-Reducer 6 [ONE_TO_ONE_EDGE] FORWARD [RS_123] PartitionCols:_col2 - Merge Join Operator [MERGEJOIN_463] (rows=20485011 width=444) - Conds:RS_120._col2=RS_527._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col6","_col7"] + Merge Join Operator [MERGEJOIN_463] (rows=20485011 width=440) + Conds:RS_120._col2=RS_527._col0(Inner),Output:["_col1","_col2","_col3","_col5","_col6"] <-Reducer 18 [SIMPLE_EDGE] vectorized SHUFFLE [RS_527] PartitionCols:_col0 @@ -516,13 +516,13 @@ Stage-0 <-Reducer 5 [ONE_TO_ONE_EDGE] FORWARD [RS_120] PartitionCols:_col2 - Merge Join Operator [MERGEJOIN_462] (rows=31888273 width=328) - Conds:RS_511._col0=RS_519._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + Merge Join Operator [MERGEJOIN_462] (rows=31888273 width=324) + Conds:RS_511._col0=RS_519._col0(Inner),Output:["_col1","_col2","_col3"] <-Reducer 14 [SIMPLE_EDGE] vectorized SHUFFLE [RS_519] PartitionCols:_col0 - Select Operator [SEL_518] (rows=26666666 width=216) - Output:["_col0","_col1","_col2"] + Select Operator [SEL_518] (rows=26666666 width=212) + Output:["_col0","_col1"] Filter Operator [FIL_517] (rows=26666666 width=212) predicate:(_col7 > 0) Select Operator [SEL_516] (rows=80000000 width=212) diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query44.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query44.q.out index 13b093625c..3fd361a9f9 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query44.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query44.q.out @@ -129,7 +129,7 @@ Stage-0 SHUFFLE [RS_21] PartitionCols:0 Filter Operator [FIL_20] (rows=20854 width=228) - predicate:(_col1 > _col2) + predicate:(_col1 > (0.9 * _col2)) Merge Join Operator [MERGEJOIN_101] (rows=62562 width=228) Conds:(Inner),Output:["_col0","_col1","_col2"] <-Reducer 12 [CUSTOM_SIMPLE_EDGE] vectorized diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query58.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query58.q.out index ac9e4123f5..61342fa356 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query58.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query58.q.out @@ -171,25 +171,25 @@ Stage-0 limit:100 Stage-1 Reducer 7 vectorized - File Output Operator [FS_466] - Limit [LIM_465] (rows=1 width=884) + File Output Operator [FS_464] + Limit [LIM_463] (rows=1 width=884) Number of rows:100 - Select Operator [SEL_464] (rows=1 width=884) + Select Operator [SEL_462] (rows=1 width=884) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] <-Reducer 6 [SIMPLE_EDGE] SHUFFLE [RS_160] Select Operator [SEL_159] (rows=1 width=884) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] - Filter Operator [FIL_155] (rows=1 width=1108) - predicate:(_col1 BETWEEN _col10 AND _col11 and _col5 BETWEEN _col10 AND _col11 and _col9 BETWEEN _col2 AND _col3 and _col9 BETWEEN _col6 AND _col7) - Merge Join Operator [MERGEJOIN_416] (rows=1 width=1108) - Conds:RS_152._col0=RS_463._col0(Inner),Output:["_col0","_col1","_col2","_col3","_col5","_col6","_col7","_col9","_col10","_col11"] + Filter Operator [FIL_155] (rows=1 width=660) + predicate:(_col1 BETWEEN _col6 AND _col7 and _col3 BETWEEN _col6 AND _col7 and _col5 BETWEEN (0.9 * _col1) AND (1.1 * _col1) and _col5 BETWEEN (0.9 * _col3) AND (1.1 * _col3)) + Merge Join Operator [MERGEJOIN_416] (rows=1 width=660) + Conds:RS_152._col0=RS_461._col0(Inner),Output:["_col0","_col1","_col3","_col5","_col6","_col7"] <-Reducer 14 [ONE_TO_ONE_EDGE] vectorized - FORWARD [RS_463] + FORWARD [RS_461] PartitionCols:_col0 - Select Operator [SEL_462] (rows=69 width=436) + Select Operator [SEL_460] (rows=69 width=436) Output:["_col0","_col1","_col2","_col3"] - Group By Operator [GBY_461] (rows=69 width=212) + Group By Operator [GBY_459] (rows=69 width=212) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 <-Reducer 13 [SIMPLE_EDGE] SHUFFLE [RS_144] @@ -265,7 +265,7 @@ Stage-0 SHUFFLE [RS_139] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_408] (rows=143966864 width=215) - Conds:RS_460._col1=RS_444._col0(Inner),Output:["_col0","_col2","_col4"] + Conds:RS_458._col1=RS_444._col0(Inner),Output:["_col0","_col2","_col4"] <-Map 8 [SIMPLE_EDGE] vectorized SHUFFLE [RS_444] PartitionCols:_col0 @@ -274,17 +274,17 @@ Stage-0 TableScan [TS_3] (rows=462000 width=104) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_item_id"] <-Map 27 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_460] + SHUFFLE [RS_458] PartitionCols:_col1 - Select Operator [SEL_459] (rows=143966864 width=119) + Select Operator [SEL_457] (rows=143966864 width=119) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_458] (rows=143966864 width=119) + Filter Operator [FIL_456] (rows=143966864 width=119) predicate:((ws_sold_date_sk BETWEEN DynamicValue(RS_140_date_dim_d_date_sk_min) AND DynamicValue(RS_140_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_140_date_dim_d_date_sk_bloom_filter))) and ws_sold_date_sk is not null) TableScan [TS_98] (rows=144002668 width=119) default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_item_sk","ws_ext_sales_price"] <-Reducer 19 [BROADCAST_EDGE] vectorized - BROADCAST [RS_457] - Group By Operator [GBY_456] (rows=1 width=12) + BROADCAST [RS_455] + Group By Operator [GBY_454] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Reducer 16 [CUSTOM_SIMPLE_EDGE] SHUFFLE [RS_360] @@ -296,102 +296,98 @@ Stage-0 <-Reducer 5 [ONE_TO_ONE_EDGE] FORWARD [RS_152] PartitionCols:_col0 - Filter Operator [FIL_150] (rows=1 width=772) - predicate:(_col1 BETWEEN _col6 AND _col7 and _col5 BETWEEN _col2 AND _col3) - Merge Join Operator [MERGEJOIN_415] (rows=68 width=772) - Conds:RS_447._col0=RS_455._col0(Inner),Output:["_col0","_col1","_col2","_col3","_col5","_col6","_col7"] + Filter Operator [FIL_150] (rows=1 width=324) + predicate:(_col1 BETWEEN (0.9 * _col3) AND (1.1 * _col3) and _col3 BETWEEN (0.9 * _col1) AND (1.1 * _col1)) + Merge Join Operator [MERGEJOIN_415] (rows=68 width=324) + Conds:RS_446._col0=RS_453._col0(Inner),Output:["_col0","_col1","_col3"] <-Reducer 11 [ONE_TO_ONE_EDGE] vectorized - FORWARD [RS_455] + FORWARD [RS_453] PartitionCols:_col0 - Select Operator [SEL_454] (rows=69 width=436) - Output:["_col0","_col1","_col2","_col3"] - Group By Operator [GBY_453] (rows=69 width=212) - Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Reducer 10 [SIMPLE_EDGE] - SHUFFLE [RS_95] - PartitionCols:_col0 - Group By Operator [GBY_94] (rows=69 width=212) - Output:["_col0","_col1"],aggregations:["sum(_col2)"],keys:_col4 - Merge Join Operator [MERGEJOIN_413] (rows=120498 width=100) - Conds:RS_90._col0=RS_91._col0(Inner),Output:["_col2","_col4"] - <-Reducer 16 [SIMPLE_EDGE] - SHUFFLE [RS_91] - PartitionCols:_col0 - Please refer to the previous Merge Join Operator [MERGEJOIN_403] - <-Reducer 9 [SIMPLE_EDGE] - SHUFFLE [RS_90] - PartitionCols:_col0 - Merge Join Operator [MERGEJOIN_404] (rows=550076554 width=210) - Conds:RS_452._col1=RS_443._col0(Inner),Output:["_col0","_col2","_col4"] - <-Map 8 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_443] - PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_441] - <-Map 26 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_452] - PartitionCols:_col1 - Select Operator [SEL_451] (rows=550076554 width=114) - Output:["_col0","_col1","_col2"] - Filter Operator [FIL_450] (rows=550076554 width=114) - predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_91_date_dim_d_date_sk_min) AND DynamicValue(RS_91_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_91_date_dim_d_date_sk_bloom_filter))) and ss_sold_date_sk is not null) - TableScan [TS_49] (rows=575995635 width=114) - default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_ext_sales_price"] - <-Reducer 18 [BROADCAST_EDGE] vectorized - BROADCAST [RS_449] - Group By Operator [GBY_448] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Reducer 16 [CUSTOM_SIMPLE_EDGE] - SHUFFLE [RS_314] - Group By Operator [GBY_313] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_312] (rows=2 width=4) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_403] + Group By Operator [GBY_452] (rows=69 width=212) + Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 + <-Reducer 10 [SIMPLE_EDGE] + SHUFFLE [RS_95] + PartitionCols:_col0 + Group By Operator [GBY_94] (rows=69 width=212) + Output:["_col0","_col1"],aggregations:["sum(_col2)"],keys:_col4 + Merge Join Operator [MERGEJOIN_413] (rows=120498 width=100) + Conds:RS_90._col0=RS_91._col0(Inner),Output:["_col2","_col4"] + <-Reducer 16 [SIMPLE_EDGE] + SHUFFLE [RS_91] + PartitionCols:_col0 + Please refer to the previous Merge Join Operator [MERGEJOIN_403] + <-Reducer 9 [SIMPLE_EDGE] + SHUFFLE [RS_90] + PartitionCols:_col0 + Merge Join Operator [MERGEJOIN_404] (rows=550076554 width=210) + Conds:RS_451._col1=RS_443._col0(Inner),Output:["_col0","_col2","_col4"] + <-Map 8 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_443] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_441] + <-Map 26 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_451] + PartitionCols:_col1 + Select Operator [SEL_450] (rows=550076554 width=114) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_449] (rows=550076554 width=114) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_91_date_dim_d_date_sk_min) AND DynamicValue(RS_91_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_91_date_dim_d_date_sk_bloom_filter))) and ss_sold_date_sk is not null) + TableScan [TS_49] (rows=575995635 width=114) + default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_ext_sales_price"] + <-Reducer 18 [BROADCAST_EDGE] vectorized + BROADCAST [RS_448] + Group By Operator [GBY_447] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Reducer 16 [CUSTOM_SIMPLE_EDGE] + SHUFFLE [RS_314] + Group By Operator [GBY_313] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_312] (rows=2 width=4) + Output:["_col0"] + Please refer to the previous Merge Join Operator [MERGEJOIN_403] <-Reducer 4 [ONE_TO_ONE_EDGE] vectorized - FORWARD [RS_447] + FORWARD [RS_446] PartitionCols:_col0 - Select Operator [SEL_446] (rows=68 width=436) - Output:["_col0","_col1","_col2","_col3"] - Group By Operator [GBY_445] (rows=68 width=212) - Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Reducer 3 [SIMPLE_EDGE] - SHUFFLE [RS_46] - PartitionCols:_col0 - Group By Operator [GBY_45] (rows=68 width=212) - Output:["_col0","_col1"],aggregations:["sum(_col2)"],keys:_col4 - Merge Join Operator [MERGEJOIN_412] (rows=62327 width=100) - Conds:RS_41._col0=RS_42._col0(Inner),Output:["_col2","_col4"] - <-Reducer 16 [SIMPLE_EDGE] - SHUFFLE [RS_42] - PartitionCols:_col0 - Please refer to the previous Merge Join Operator [MERGEJOIN_403] - <-Reducer 2 [SIMPLE_EDGE] - SHUFFLE [RS_41] - PartitionCols:_col0 - Merge Join Operator [MERGEJOIN_400] (rows=286549727 width=215) - Conds:RS_440._col1=RS_442._col0(Inner),Output:["_col0","_col2","_col4"] - <-Map 8 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_442] - PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_441] - <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_440] - PartitionCols:_col1 - Select Operator [SEL_439] (rows=286549727 width=119) - Output:["_col0","_col1","_col2"] - Filter Operator [FIL_438] (rows=286549727 width=119) - predicate:((cs_sold_date_sk BETWEEN DynamicValue(RS_42_date_dim_d_date_sk_min) AND DynamicValue(RS_42_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_42_date_dim_d_date_sk_bloom_filter))) and cs_sold_date_sk is not null) - TableScan [TS_0] (rows=287989836 width=119) - default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_item_sk","cs_ext_sales_price"] - <-Reducer 17 [BROADCAST_EDGE] vectorized - BROADCAST [RS_437] - Group By Operator [GBY_436] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Reducer 16 [CUSTOM_SIMPLE_EDGE] - SHUFFLE [RS_264] - Group By Operator [GBY_263] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_262] (rows=2 width=4) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_403] + Group By Operator [GBY_445] (rows=68 width=212) + Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 + <-Reducer 3 [SIMPLE_EDGE] + SHUFFLE [RS_46] + PartitionCols:_col0 + Group By Operator [GBY_45] (rows=68 width=212) + Output:["_col0","_col1"],aggregations:["sum(_col2)"],keys:_col4 + Merge Join Operator [MERGEJOIN_412] (rows=62327 width=100) + Conds:RS_41._col0=RS_42._col0(Inner),Output:["_col2","_col4"] + <-Reducer 16 [SIMPLE_EDGE] + SHUFFLE [RS_42] + PartitionCols:_col0 + Please refer to the previous Merge Join Operator [MERGEJOIN_403] + <-Reducer 2 [SIMPLE_EDGE] + SHUFFLE [RS_41] + PartitionCols:_col0 + Merge Join Operator [MERGEJOIN_400] (rows=286549727 width=215) + Conds:RS_440._col1=RS_442._col0(Inner),Output:["_col0","_col2","_col4"] + <-Map 8 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_442] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_441] + <-Map 1 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_440] + PartitionCols:_col1 + Select Operator [SEL_439] (rows=286549727 width=119) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_438] (rows=286549727 width=119) + predicate:((cs_sold_date_sk BETWEEN DynamicValue(RS_42_date_dim_d_date_sk_min) AND DynamicValue(RS_42_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_42_date_dim_d_date_sk_bloom_filter))) and cs_sold_date_sk is not null) + TableScan [TS_0] (rows=287989836 width=119) + default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_item_sk","cs_ext_sales_price"] + <-Reducer 17 [BROADCAST_EDGE] vectorized + BROADCAST [RS_437] + Group By Operator [GBY_436] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Reducer 16 [CUSTOM_SIMPLE_EDGE] + SHUFFLE [RS_264] + Group By Operator [GBY_263] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_262] (rows=2 width=4) + Output:["_col0"] + Please refer to the previous Merge Join Operator [MERGEJOIN_403] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query59.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query59.q.out index 4e7c921175..805fce4de7 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query59.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query59.q.out @@ -121,10 +121,10 @@ Stage-0 Select Operator [SEL_56] (rows=1012347 width=976) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9"] Merge Join Operator [MERGEJOIN_181] (rows=1012347 width=1648) - Conds:RS_53._col11, _col0=RS_54._col0, _col7(Inner),Output:["_col0","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col11","_col12","_col14","_col15","_col16","_col17","_col18","_col19"] + Conds:RS_53._col11, _col0=RS_54._col1, (_col0 - 52)(Inner),Output:["_col0","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col11","_col12","_col15","_col16","_col17","_col18","_col19","_col20"] <-Reducer 11 [SIMPLE_EDGE] SHUFFLE [RS_54] - PartitionCols:_col0, _col7 + PartitionCols:_col1, (_col0 - 52) Select Operator [SEL_46] (rows=28847 width=776) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] Merge Join Operator [MERGEJOIN_180] (rows=28847 width=776) diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query61.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query61.q.out index d9543ad617..95a2a747cd 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query61.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query61.q.out @@ -134,255 +134,251 @@ Stage-0 limit:100 Stage-1 Reducer 6 vectorized - File Output Operator [FS_336] - Limit [LIM_335] (rows=1 width=336) + File Output Operator [FS_334] + Limit [LIM_333] (rows=1 width=336) Number of rows:100 - Select Operator [SEL_334] (rows=1 width=336) + Select Operator [SEL_332] (rows=1 width=336) Output:["_col0","_col1","_col2"] <-Reducer 5 [SIMPLE_EDGE] SHUFFLE [RS_88] Select Operator [SEL_87] (rows=1 width=336) Output:["_col0","_col1","_col2"] - Merge Join Operator [MERGEJOIN_266] (rows=1 width=448) - Conds:(Inner),Output:["_col0","_col1","_col2","_col3"] + Merge Join Operator [MERGEJOIN_266] (rows=1 width=224) + Conds:(Inner),Output:["_col0","_col1"] <-Reducer 4 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_319] - Select Operator [SEL_318] (rows=1 width=224) - Output:["_col0","_col1"] - Group By Operator [GBY_317] (rows=1 width=112) - Output:["_col0"],aggregations:["sum(VALUE._col0)"] - <-Reducer 3 [CUSTOM_SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_42] - Group By Operator [GBY_41] (rows=1 width=112) - Output:["_col0"],aggregations:["sum(_col8)"] - Merge Join Operator [MERGEJOIN_264] (rows=505397 width=0) - Conds:RS_37._col0=RS_38._col2(Inner),Output:["_col8"] - <-Reducer 2 [SIMPLE_EDGE] - SHUFFLE [RS_37] - PartitionCols:_col0 - Merge Join Operator [MERGEJOIN_255] (rows=16000001 width=4) - Conds:RS_269._col1=RS_272._col0(Inner),Output:["_col0"] - <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_269] - PartitionCols:_col1 - Select Operator [SEL_268] (rows=80000000 width=8) - Output:["_col0","_col1"] - Filter Operator [FIL_267] (rows=80000000 width=8) - predicate:c_current_addr_sk is not null - TableScan [TS_0] (rows=80000000 width=8) - default@customer,customer,Tbl:COMPLETE,Col:COMPLETE,Output:["c_customer_sk","c_current_addr_sk"] - <-Map 11 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_272] - PartitionCols:_col0 - Select Operator [SEL_271] (rows=8000000 width=4) - Output:["_col0"] - Filter Operator [FIL_270] (rows=8000000 width=112) - predicate:(ca_gmt_offset = -7) - TableScan [TS_3] (rows=40000000 width=112) - default@customer_address,customer_address,Tbl:COMPLETE,Col:COMPLETE,Output:["ca_address_sk","ca_gmt_offset"] - <-Reducer 16 [SIMPLE_EDGE] - SHUFFLE [RS_38] - PartitionCols:_col2 - Merge Join Operator [MERGEJOIN_259] (rows=2526982 width=0) - Conds:RS_30._col4=RS_316._col0(Inner),Output:["_col2","_col5"] - <-Map 29 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_316] - PartitionCols:_col0 - Select Operator [SEL_315] (rows=2300 width=4) - Output:["_col0"] - Filter Operator [FIL_314] (rows=2300 width=259) - predicate:((p_channel_dmail = 'Y') or (p_channel_email = 'Y') or (p_channel_tv = 'Y')) - TableScan [TS_18] (rows=2300 width=259) - default@promotion,promotion,Tbl:COMPLETE,Col:COMPLETE,Output:["p_promo_sk","p_channel_dmail","p_channel_email","p_channel_tv"] - <-Reducer 15 [SIMPLE_EDGE] - SHUFFLE [RS_30] - PartitionCols:_col4 - Merge Join Operator [MERGEJOIN_258] (rows=2526982 width=0) - Conds:RS_27._col3=RS_299._col0(Inner),Output:["_col2","_col4","_col5"] - <-Map 26 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_299] - PartitionCols:_col0 - Select Operator [SEL_298] (rows=341 width=4) - Output:["_col0"] - Filter Operator [FIL_297] (rows=341 width=115) - predicate:(s_gmt_offset = -7) - TableScan [TS_15] (rows=1704 width=115) - default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_gmt_offset"] - <-Reducer 14 [SIMPLE_EDGE] - SHUFFLE [RS_27] - PartitionCols:_col3 - Merge Join Operator [MERGEJOIN_257] (rows=12627499 width=0) - Conds:RS_24._col1=RS_287._col0(Inner),Output:["_col2","_col3","_col4","_col5"] - <-Map 23 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_287] - PartitionCols:_col0 - Select Operator [SEL_286] (rows=46200 width=4) - Output:["_col0"] - Filter Operator [FIL_285] (rows=46200 width=94) - predicate:(i_category = 'Electronics') - TableScan [TS_12] (rows=462000 width=94) - default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_category"] - <-Reducer 13 [SIMPLE_EDGE] - SHUFFLE [RS_24] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_256] (rows=13119234 width=4) - Conds:RS_313._col0=RS_275._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5"] - <-Map 17 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_275] - PartitionCols:_col0 - Select Operator [SEL_274] (rows=50 width=4) - Output:["_col0"] - Filter Operator [FIL_273] (rows=50 width=12) - predicate:((d_moy = 11) and (d_year = 1999)) - TableScan [TS_9] (rows=73049 width=12) - default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] - <-Map 12 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_313] - PartitionCols:_col0 - Select Operator [SEL_312] (rows=479120970 width=126) - Output:["_col0","_col1","_col2","_col3","_col4","_col5"] - Filter Operator [FIL_311] (rows=479120970 width=126) - predicate:((ss_customer_sk BETWEEN DynamicValue(RS_37_customer_c_customer_sk_min) AND DynamicValue(RS_37_customer_c_customer_sk_max) and in_bloom_filter(ss_customer_sk, DynamicValue(RS_37_customer_c_customer_sk_bloom_filter))) and (ss_item_sk BETWEEN DynamicValue(RS_25_item_i_item_sk_min) AND DynamicValue(RS_25_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_25_item_i_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_22_date_dim_d_date_sk_min) AND DynamicValue(RS_22_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_22_date_dim_d_date_sk_bloom_filter))) and (ss_store_sk BETWEEN DynamicValue(RS_28_store_s_store_sk_min) AND DynamicValue(RS_28_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_28_store_s_store_sk_bloom_filter))) and ss_customer_sk is not null and ss_promo_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) - TableScan [TS_6] (rows=575995635 width=126) - default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_customer_sk","ss_store_sk","ss_promo_sk","ss_ext_sales_price"] - <-Reducer 18 [BROADCAST_EDGE] vectorized - BROADCAST [RS_284] - Group By Operator [GBY_283] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 17 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_281] - Group By Operator [GBY_279] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_276] (rows=50 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_274] - <-Reducer 24 [BROADCAST_EDGE] vectorized - BROADCAST [RS_296] - Group By Operator [GBY_295] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 23 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_293] - Group By Operator [GBY_291] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_288] (rows=46200 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_286] - <-Reducer 27 [BROADCAST_EDGE] vectorized - BROADCAST [RS_308] - Group By Operator [GBY_307] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 26 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_305] - Group By Operator [GBY_303] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_300] (rows=341 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_298] - <-Reducer 7 [BROADCAST_EDGE] vectorized - BROADCAST [RS_310] - Group By Operator [GBY_309] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=14591048)"] - <-Reducer 2 [CUSTOM_SIMPLE_EDGE] - SHUFFLE [RS_182] - Group By Operator [GBY_181] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=14591048)"] - Select Operator [SEL_180] (rows=16000001 width=4) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_255] + PARTITION_ONLY_SHUFFLE [RS_318] + Group By Operator [GBY_317] (rows=1 width=112) + Output:["_col0"],aggregations:["sum(VALUE._col0)"] + <-Reducer 3 [CUSTOM_SIMPLE_EDGE] + PARTITION_ONLY_SHUFFLE [RS_42] + Group By Operator [GBY_41] (rows=1 width=112) + Output:["_col0"],aggregations:["sum(_col8)"] + Merge Join Operator [MERGEJOIN_264] (rows=505397 width=0) + Conds:RS_37._col0=RS_38._col2(Inner),Output:["_col8"] + <-Reducer 2 [SIMPLE_EDGE] + SHUFFLE [RS_37] + PartitionCols:_col0 + Merge Join Operator [MERGEJOIN_255] (rows=16000001 width=4) + Conds:RS_269._col1=RS_272._col0(Inner),Output:["_col0"] + <-Map 1 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_269] + PartitionCols:_col1 + Select Operator [SEL_268] (rows=80000000 width=8) + Output:["_col0","_col1"] + Filter Operator [FIL_267] (rows=80000000 width=8) + predicate:c_current_addr_sk is not null + TableScan [TS_0] (rows=80000000 width=8) + default@customer,customer,Tbl:COMPLETE,Col:COMPLETE,Output:["c_customer_sk","c_current_addr_sk"] + <-Map 11 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_272] + PartitionCols:_col0 + Select Operator [SEL_271] (rows=8000000 width=4) + Output:["_col0"] + Filter Operator [FIL_270] (rows=8000000 width=112) + predicate:(ca_gmt_offset = -7) + TableScan [TS_3] (rows=40000000 width=112) + default@customer_address,customer_address,Tbl:COMPLETE,Col:COMPLETE,Output:["ca_address_sk","ca_gmt_offset"] + <-Reducer 16 [SIMPLE_EDGE] + SHUFFLE [RS_38] + PartitionCols:_col2 + Merge Join Operator [MERGEJOIN_259] (rows=2526982 width=0) + Conds:RS_30._col4=RS_316._col0(Inner),Output:["_col2","_col5"] + <-Map 29 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_316] + PartitionCols:_col0 + Select Operator [SEL_315] (rows=2300 width=4) + Output:["_col0"] + Filter Operator [FIL_314] (rows=2300 width=259) + predicate:((p_channel_dmail = 'Y') or (p_channel_email = 'Y') or (p_channel_tv = 'Y')) + TableScan [TS_18] (rows=2300 width=259) + default@promotion,promotion,Tbl:COMPLETE,Col:COMPLETE,Output:["p_promo_sk","p_channel_dmail","p_channel_email","p_channel_tv"] + <-Reducer 15 [SIMPLE_EDGE] + SHUFFLE [RS_30] + PartitionCols:_col4 + Merge Join Operator [MERGEJOIN_258] (rows=2526982 width=0) + Conds:RS_27._col3=RS_299._col0(Inner),Output:["_col2","_col4","_col5"] + <-Map 26 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_299] + PartitionCols:_col0 + Select Operator [SEL_298] (rows=341 width=4) + Output:["_col0"] + Filter Operator [FIL_297] (rows=341 width=115) + predicate:(s_gmt_offset = -7) + TableScan [TS_15] (rows=1704 width=115) + default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_gmt_offset"] + <-Reducer 14 [SIMPLE_EDGE] + SHUFFLE [RS_27] + PartitionCols:_col3 + Merge Join Operator [MERGEJOIN_257] (rows=12627499 width=0) + Conds:RS_24._col1=RS_287._col0(Inner),Output:["_col2","_col3","_col4","_col5"] + <-Map 23 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_287] + PartitionCols:_col0 + Select Operator [SEL_286] (rows=46200 width=4) + Output:["_col0"] + Filter Operator [FIL_285] (rows=46200 width=94) + predicate:(i_category = 'Electronics') + TableScan [TS_12] (rows=462000 width=94) + default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_category"] + <-Reducer 13 [SIMPLE_EDGE] + SHUFFLE [RS_24] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_256] (rows=13119234 width=4) + Conds:RS_313._col0=RS_275._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5"] + <-Map 17 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_275] + PartitionCols:_col0 + Select Operator [SEL_274] (rows=50 width=4) + Output:["_col0"] + Filter Operator [FIL_273] (rows=50 width=12) + predicate:((d_moy = 11) and (d_year = 1999)) + TableScan [TS_9] (rows=73049 width=12) + default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] + <-Map 12 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_313] + PartitionCols:_col0 + Select Operator [SEL_312] (rows=479120970 width=126) + Output:["_col0","_col1","_col2","_col3","_col4","_col5"] + Filter Operator [FIL_311] (rows=479120970 width=126) + predicate:((ss_customer_sk BETWEEN DynamicValue(RS_37_customer_c_customer_sk_min) AND DynamicValue(RS_37_customer_c_customer_sk_max) and in_bloom_filter(ss_customer_sk, DynamicValue(RS_37_customer_c_customer_sk_bloom_filter))) and (ss_item_sk BETWEEN DynamicValue(RS_25_item_i_item_sk_min) AND DynamicValue(RS_25_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_25_item_i_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_22_date_dim_d_date_sk_min) AND DynamicValue(RS_22_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_22_date_dim_d_date_sk_bloom_filter))) and (ss_store_sk BETWEEN DynamicValue(RS_28_store_s_store_sk_min) AND DynamicValue(RS_28_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_28_store_s_store_sk_bloom_filter))) and ss_customer_sk is not null and ss_promo_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) + TableScan [TS_6] (rows=575995635 width=126) + default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_customer_sk","ss_store_sk","ss_promo_sk","ss_ext_sales_price"] + <-Reducer 18 [BROADCAST_EDGE] vectorized + BROADCAST [RS_284] + Group By Operator [GBY_283] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 17 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_281] + Group By Operator [GBY_279] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_276] (rows=50 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_274] + <-Reducer 24 [BROADCAST_EDGE] vectorized + BROADCAST [RS_296] + Group By Operator [GBY_295] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 23 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_293] + Group By Operator [GBY_291] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_288] (rows=46200 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_286] + <-Reducer 27 [BROADCAST_EDGE] vectorized + BROADCAST [RS_308] + Group By Operator [GBY_307] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 26 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_305] + Group By Operator [GBY_303] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_300] (rows=341 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_298] + <-Reducer 7 [BROADCAST_EDGE] vectorized + BROADCAST [RS_310] + Group By Operator [GBY_309] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=14591048)"] + <-Reducer 2 [CUSTOM_SIMPLE_EDGE] + SHUFFLE [RS_182] + Group By Operator [GBY_181] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=14591048)"] + Select Operator [SEL_180] (rows=16000001 width=4) + Output:["_col0"] + Please refer to the previous Merge Join Operator [MERGEJOIN_255] <-Reducer 9 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_333] - Select Operator [SEL_332] (rows=1 width=224) - Output:["_col0","_col1"] - Group By Operator [GBY_331] (rows=1 width=112) - Output:["_col0"],aggregations:["sum(VALUE._col0)"] - <-Reducer 8 [CUSTOM_SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_81] - Group By Operator [GBY_80] (rows=1 width=112) - Output:["_col0"],aggregations:["sum(_col7)"] - Merge Join Operator [MERGEJOIN_265] (rows=529208 width=0) - Conds:RS_76._col0=RS_77._col2(Inner),Output:["_col7"] - <-Reducer 2 [SIMPLE_EDGE] - SHUFFLE [RS_76] - PartitionCols:_col0 - Please refer to the previous Merge Join Operator [MERGEJOIN_255] - <-Reducer 21 [SIMPLE_EDGE] - SHUFFLE [RS_77] - PartitionCols:_col2 - Merge Join Operator [MERGEJOIN_263] (rows=2646038 width=0) - Conds:RS_69._col3=RS_301._col0(Inner),Output:["_col2","_col4"] - <-Map 26 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_301] - PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_298] - <-Reducer 20 [SIMPLE_EDGE] - SHUFFLE [RS_69] - PartitionCols:_col3 - Merge Join Operator [MERGEJOIN_262] (rows=13222427 width=0) - Conds:RS_66._col1=RS_289._col0(Inner),Output:["_col2","_col3","_col4"] - <-Map 23 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_289] - PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_286] - <-Reducer 19 [SIMPLE_EDGE] - SHUFFLE [RS_66] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_261] (rows=13737330 width=4) - Conds:RS_330._col0=RS_277._col0(Inner),Output:["_col1","_col2","_col3","_col4"] - <-Map 17 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_277] - PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_274] - <-Map 30 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_330] - PartitionCols:_col0 - Select Operator [SEL_329] (rows=501694138 width=122) - Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_328] (rows=501694138 width=122) - predicate:((ss_customer_sk BETWEEN DynamicValue(RS_76_customer_c_customer_sk_min) AND DynamicValue(RS_76_customer_c_customer_sk_max) and in_bloom_filter(ss_customer_sk, DynamicValue(RS_76_customer_c_customer_sk_bloom_filter))) and (ss_item_sk BETWEEN DynamicValue(RS_67_item_i_item_sk_min) AND DynamicValue(RS_67_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_67_item_i_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_64_date_dim_d_date_sk_min) AND DynamicValue(RS_64_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_64_date_dim_d_date_sk_bloom_filter))) and (ss_store_sk BETWEEN DynamicValue(RS_70_store_s_store_sk_min) AND DynamicValue(RS_70_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_70_store_s_store_sk_bloom_filter))) and ss_customer_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) - TableScan [TS_51] (rows=575995635 width=122) - default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_customer_sk","ss_store_sk","ss_ext_sales_price"] - <-Reducer 10 [BROADCAST_EDGE] vectorized - BROADCAST [RS_327] - Group By Operator [GBY_326] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=14591048)"] - <-Reducer 2 [CUSTOM_SIMPLE_EDGE] - SHUFFLE [RS_237] - Group By Operator [GBY_236] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=14591048)"] - Select Operator [SEL_235] (rows=16000001 width=4) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_255] - <-Reducer 22 [BROADCAST_EDGE] vectorized - BROADCAST [RS_321] - Group By Operator [GBY_320] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 17 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_282] - Group By Operator [GBY_280] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_278] (rows=50 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_274] - <-Reducer 25 [BROADCAST_EDGE] vectorized - BROADCAST [RS_323] - Group By Operator [GBY_322] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 23 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_294] - Group By Operator [GBY_292] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_290] (rows=46200 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_286] - <-Reducer 28 [BROADCAST_EDGE] vectorized - BROADCAST [RS_325] - Group By Operator [GBY_324] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 26 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_306] - Group By Operator [GBY_304] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_302] (rows=341 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_298] + PARTITION_ONLY_SHUFFLE [RS_331] + Group By Operator [GBY_330] (rows=1 width=112) + Output:["_col0"],aggregations:["sum(VALUE._col0)"] + <-Reducer 8 [CUSTOM_SIMPLE_EDGE] + PARTITION_ONLY_SHUFFLE [RS_81] + Group By Operator [GBY_80] (rows=1 width=112) + Output:["_col0"],aggregations:["sum(_col7)"] + Merge Join Operator [MERGEJOIN_265] (rows=529208 width=0) + Conds:RS_76._col0=RS_77._col2(Inner),Output:["_col7"] + <-Reducer 2 [SIMPLE_EDGE] + SHUFFLE [RS_76] + PartitionCols:_col0 + Please refer to the previous Merge Join Operator [MERGEJOIN_255] + <-Reducer 21 [SIMPLE_EDGE] + SHUFFLE [RS_77] + PartitionCols:_col2 + Merge Join Operator [MERGEJOIN_263] (rows=2646038 width=0) + Conds:RS_69._col3=RS_301._col0(Inner),Output:["_col2","_col4"] + <-Map 26 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_301] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_298] + <-Reducer 20 [SIMPLE_EDGE] + SHUFFLE [RS_69] + PartitionCols:_col3 + Merge Join Operator [MERGEJOIN_262] (rows=13222427 width=0) + Conds:RS_66._col1=RS_289._col0(Inner),Output:["_col2","_col3","_col4"] + <-Map 23 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_289] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_286] + <-Reducer 19 [SIMPLE_EDGE] + SHUFFLE [RS_66] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_261] (rows=13737330 width=4) + Conds:RS_329._col0=RS_277._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + <-Map 17 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_277] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_274] + <-Map 30 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_329] + PartitionCols:_col0 + Select Operator [SEL_328] (rows=501694138 width=122) + Output:["_col0","_col1","_col2","_col3","_col4"] + Filter Operator [FIL_327] (rows=501694138 width=122) + predicate:((ss_customer_sk BETWEEN DynamicValue(RS_76_customer_c_customer_sk_min) AND DynamicValue(RS_76_customer_c_customer_sk_max) and in_bloom_filter(ss_customer_sk, DynamicValue(RS_76_customer_c_customer_sk_bloom_filter))) and (ss_item_sk BETWEEN DynamicValue(RS_67_item_i_item_sk_min) AND DynamicValue(RS_67_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_67_item_i_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_64_date_dim_d_date_sk_min) AND DynamicValue(RS_64_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_64_date_dim_d_date_sk_bloom_filter))) and (ss_store_sk BETWEEN DynamicValue(RS_70_store_s_store_sk_min) AND DynamicValue(RS_70_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_70_store_s_store_sk_bloom_filter))) and ss_customer_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) + TableScan [TS_51] (rows=575995635 width=122) + default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_customer_sk","ss_store_sk","ss_ext_sales_price"] + <-Reducer 10 [BROADCAST_EDGE] vectorized + BROADCAST [RS_326] + Group By Operator [GBY_325] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=14591048)"] + <-Reducer 2 [CUSTOM_SIMPLE_EDGE] + SHUFFLE [RS_237] + Group By Operator [GBY_236] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=14591048)"] + Select Operator [SEL_235] (rows=16000001 width=4) + Output:["_col0"] + Please refer to the previous Merge Join Operator [MERGEJOIN_255] + <-Reducer 22 [BROADCAST_EDGE] vectorized + BROADCAST [RS_320] + Group By Operator [GBY_319] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 17 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_282] + Group By Operator [GBY_280] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_278] (rows=50 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_274] + <-Reducer 25 [BROADCAST_EDGE] vectorized + BROADCAST [RS_322] + Group By Operator [GBY_321] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 23 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_294] + Group By Operator [GBY_292] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_290] (rows=46200 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_286] + <-Reducer 28 [BROADCAST_EDGE] vectorized + BROADCAST [RS_324] + Group By Operator [GBY_323] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 26 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_306] + Group By Operator [GBY_304] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_302] (rows=341 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_298] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query74.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query74.q.out index 39b3f0a715..12ed5c8ecb 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query74.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query74.q.out @@ -170,10 +170,10 @@ Stage-0 SHUFFLE [RS_89] Select Operator [SEL_88] (rows=12248093 width=280) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_87] (rows=12248093 width=736) - predicate:CASE WHEN (_col4) THEN (CASE WHEN (_col7) THEN (((_col1 / _col6) > (_col11 / _col3))) ELSE ((null > (_col11 / _col3))) END) ELSE (CASE WHEN (_col7) THEN (((_col1 / _col6) > null)) ELSE (null) END) END - Merge Join Operator [MERGEJOIN_283] (rows=24496186 width=736) - Conds:RS_84._col2=RS_345._col0(Inner),Output:["_col1","_col3","_col4","_col6","_col7","_col8","_col9","_col10","_col11"] + Filter Operator [FIL_87] (rows=12248093 width=732) + predicate:CASE WHEN (_col3 is not null) THEN (CASE WHEN (_col6) THEN (((_col1 / _col5) > (_col10 / _col3))) ELSE ((null > (_col10 / _col3))) END) ELSE (CASE WHEN (_col6) THEN (((_col1 / _col5) > null)) ELSE (null) END) END + Merge Join Operator [MERGEJOIN_283] (rows=24496186 width=732) + Conds:RS_84._col2=RS_345._col0(Inner),Output:["_col1","_col3","_col5","_col6","_col7","_col8","_col9","_col10"] <-Reducer 20 [SIMPLE_EDGE] vectorized SHUFFLE [RS_345] PartitionCols:_col0 @@ -230,8 +230,8 @@ Stage-0 <-Reducer 6 [ONE_TO_ONE_EDGE] FORWARD [RS_84] PartitionCols:_col2 - Merge Join Operator [MERGEJOIN_282] (rows=20485011 width=444) - Conds:RS_81._col2=RS_338._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col6","_col7"] + Merge Join Operator [MERGEJOIN_282] (rows=20485011 width=440) + Conds:RS_81._col2=RS_338._col0(Inner),Output:["_col1","_col2","_col3","_col5","_col6"] <-Reducer 16 [SIMPLE_EDGE] vectorized SHUFFLE [RS_338] PartitionCols:_col0 @@ -290,13 +290,13 @@ Stage-0 <-Reducer 5 [ONE_TO_ONE_EDGE] FORWARD [RS_81] PartitionCols:_col2 - Merge Join Operator [MERGEJOIN_281] (rows=31888273 width=328) - Conds:RS_318._col0=RS_328._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + Merge Join Operator [MERGEJOIN_281] (rows=31888273 width=324) + Conds:RS_318._col0=RS_328._col0(Inner),Output:["_col1","_col2","_col3"] <-Reducer 12 [SIMPLE_EDGE] vectorized SHUFFLE [RS_328] PartitionCols:_col0 - Select Operator [SEL_327] (rows=26666666 width=216) - Output:["_col0","_col1","_col2"] + Select Operator [SEL_327] (rows=26666666 width=212) + Output:["_col0","_col1"] Filter Operator [FIL_326] (rows=26666666 width=212) predicate:(_col3 > 0) Select Operator [SEL_325] (rows=80000000 width=212) diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query75.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query75.q.out index fee4e83651..f2593995b8 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query75.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query75.q.out @@ -205,458 +205,454 @@ Stage-0 limit:-1 Stage-1 Reducer 10 vectorized - File Output Operator [FS_633] - Select Operator [SEL_632] (rows=100 width=160) + File Output Operator [FS_631] + Select Operator [SEL_630] (rows=100 width=160) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9"] - Limit [LIM_631] (rows=100 width=152) + Limit [LIM_629] (rows=100 width=152) Number of rows:100 - Select Operator [SEL_630] (rows=3422897230256 width=151) + Select Operator [SEL_628] (rows=3422897230256 width=151) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] <-Reducer 9 [SIMPLE_EDGE] SHUFFLE [RS_169] Select Operator [SEL_168] (rows=3422897230256 width=151) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] - Filter Operator [FIL_167] (rows=3422897230256 width=479) - predicate:((_col13 / _col6) < 0.9) - Merge Join Operator [MERGEJOIN_512] (rows=10268691690770 width=479) - Conds:RS_625._col0, _col1, _col2, _col3=RS_629._col0, _col1, _col2, _col3(Inner),Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col11","_col12","_col13"] + Filter Operator [FIL_167] (rows=3422897230256 width=255) + predicate:((CAST( _col10 AS decimal(17,2)) / CAST( _col4 AS decimal(17,2))) < 0.9) + Merge Join Operator [MERGEJOIN_512] (rows=10268691690770 width=255) + Conds:RS_624._col0, _col1, _col2, _col3=RS_627._col0, _col1, _col2, _col3(Inner),Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col10","_col11"] <-Reducer 27 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_629] + SHUFFLE [RS_627] PartitionCols:_col0, _col1, _col2, _col3 - Select Operator [SEL_628] (rows=84235776 width=247) - Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] - Group By Operator [GBY_627] (rows=84235776 width=135) - Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["sum(_col4)","sum(_col5)"],keys:_col0, _col1, _col2, _col3 - Group By Operator [GBY_626] (rows=736356923 width=131) - Output:["_col0","_col1","_col2","_col3","_col4","_col5"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4, KEY._col5 - <-Union 26 [SIMPLE_EDGE] - <-Reducer 25 [CONTAINS] vectorized - Reduce Output Operator [RS_663] - PartitionCols:_col0, _col1, _col2, _col3 - Group By Operator [GBY_662] (rows=736356923 width=131) - Output:["_col0","_col1","_col2","_col3","_col4","_col5"],keys:_col0, _col1, _col2, _col3, _col4, _col5 - Group By Operator [GBY_661] (rows=621178955 width=131) - Output:["_col0","_col1","_col2","_col3","_col4","_col5"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4, KEY._col5 - <-Union 24 [SIMPLE_EDGE] - <-Reducer 23 [CONTAINS] - Reduce Output Operator [RS_536] - PartitionCols:_col0, _col1, _col2, _col3, _col4, _col5 - Group By Operator [GBY_535] (rows=621178955 width=131) - Output:["_col0","_col1","_col2","_col3","_col4","_col5"],keys:_col0, _col1, _col2, _col3, _col4, _col5 - Select Operator [SEL_533] (rows=170474971 width=131) - Output:["_col0","_col1","_col2","_col3","_col4","_col5"] - Merge Join Operator [MERGEJOIN_532] (rows=170474971 width=234) - Conds:RS_99._col1, _col2=RS_618._col0, _col1(Left Outer),Output:["_col3","_col4","_col7","_col8","_col9","_col10","_col13","_col14"] - <-Map 44 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_618] - PartitionCols:_col0, _col1 - Select Operator [SEL_616] (rows=28798881 width=121) - Output:["_col0","_col1","_col2","_col3"] - TableScan [TS_9] (rows=28798881 width=121) - default@catalog_returns,catalog_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["cr_item_sk","cr_order_number","cr_return_quantity","cr_return_amount"] - <-Reducer 22 [SIMPLE_EDGE] - SHUFFLE [RS_99] - PartitionCols:_col1, _col2 - Merge Join Operator [MERGEJOIN_504] (rows=96821196 width=138) - Conds:RS_96._col1=RS_593._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col7","_col8","_col9","_col10"] - <-Map 37 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_593] - PartitionCols:_col0 - Select Operator [SEL_586] (rows=45745 width=19) - Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_585] (rows=45745 width=109) - predicate:((i_category = 'Sports') and i_brand_id is not null and i_category_id is not null and i_class_id is not null and i_manufact_id is not null) - TableScan [TS_6] (rows=462000 width=109) - default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_brand_id","i_class_id","i_category_id","i_category","i_manufact_id"] - <-Reducer 21 [SIMPLE_EDGE] - SHUFFLE [RS_96] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_503] (rows=101592102 width=122) - Conds:RS_660._col0=RS_565._col0(Inner),Output:["_col1","_col2","_col3","_col4"] - <-Map 11 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_565] - PartitionCols:_col0 - Select Operator [SEL_556] (rows=652 width=4) - Output:["_col0"] - Filter Operator [FIL_552] (rows=652 width=8) - predicate:(d_year = 2002) - TableScan [TS_3] (rows=73049 width=8) - default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year"] - <-Map 49 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_660] - PartitionCols:_col0 - Select Operator [SEL_659] (rows=286549727 width=127) - Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_658] (rows=286549727 width=127) - predicate:((cs_item_sk BETWEEN DynamicValue(RS_97_item_i_item_sk_min) AND DynamicValue(RS_97_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_97_item_i_item_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_94_date_dim_d_date_sk_min) AND DynamicValue(RS_94_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_94_date_dim_d_date_sk_bloom_filter))) and cs_sold_date_sk is not null) - TableScan [TS_82] (rows=287989836 width=127) - default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_item_sk","cs_order_number","cs_quantity","cs_ext_sales_price"] - <-Reducer 28 [BROADCAST_EDGE] vectorized - BROADCAST [RS_655] - Group By Operator [GBY_654] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 11 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_580] - Group By Operator [GBY_574] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_566] (rows=652 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_556] - <-Reducer 41 [BROADCAST_EDGE] vectorized - BROADCAST [RS_657] - Group By Operator [GBY_656] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 37 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_608] - Group By Operator [GBY_602] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_594] (rows=45745 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_586] - <-Reducer 31 [CONTAINS] - Reduce Output Operator [RS_545] - PartitionCols:_col0, _col1, _col2, _col3, _col4, _col5 - Group By Operator [GBY_544] (rows=621178955 width=131) - Output:["_col0","_col1","_col2","_col3","_col4","_col5"],keys:_col0, _col1, _col2, _col3, _col4, _col5 - Select Operator [SEL_542] (rows=450703984 width=131) - Output:["_col0","_col1","_col2","_col3","_col4","_col5"] - Merge Join Operator [MERGEJOIN_541] (rows=450703984 width=204) - Conds:RS_120._col1, _col2=RS_643._col0, _col1(Left Outer),Output:["_col3","_col4","_col7","_col8","_col9","_col10","_col13","_col14"] - <-Map 46 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_643] - PartitionCols:_col0, _col1 - Select Operator [SEL_641] (rows=57591150 width=119) - Output:["_col0","_col1","_col2","_col3"] - TableScan [TS_30] (rows=57591150 width=119) - default@store_returns,store_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["sr_item_sk","sr_ticket_number","sr_return_quantity","sr_return_amt"] - <-Reducer 30 [SIMPLE_EDGE] - SHUFFLE [RS_120] - PartitionCols:_col1, _col2 - Merge Join Operator [MERGEJOIN_507] (rows=187186493 width=124) - Conds:RS_117._col1=RS_595._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col7","_col8","_col9","_col10"] - <-Map 37 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_595] - PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_586] - <-Reducer 29 [SIMPLE_EDGE] - SHUFFLE [RS_117] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_506] (rows=196410188 width=109) - Conds:RS_670._col0=RS_567._col0(Inner),Output:["_col1","_col2","_col3","_col4"] - <-Map 11 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_567] - PartitionCols:_col0 - Select Operator [SEL_557] (rows=652 width=4) - Output:["_col0"] - Filter Operator [FIL_553] (rows=652 width=8) - predicate:(d_year = 2002) - Please refer to the previous TableScan [TS_3] - <-Map 50 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_670] - PartitionCols:_col0 - Select Operator [SEL_669] (rows=550076554 width=122) - Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_668] (rows=550076554 width=122) - predicate:((ss_item_sk BETWEEN DynamicValue(RS_118_item_i_item_sk_min) AND DynamicValue(RS_118_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_118_item_i_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_115_date_dim_d_date_sk_min) AND DynamicValue(RS_115_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_115_date_dim_d_date_sk_bloom_filter))) and ss_sold_date_sk is not null) - TableScan [TS_103] (rows=575995635 width=122) - default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_ticket_number","ss_quantity","ss_ext_sales_price"] - <-Reducer 32 [BROADCAST_EDGE] vectorized - BROADCAST [RS_665] - Group By Operator [GBY_664] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 11 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_581] - Group By Operator [GBY_575] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_568] (rows=652 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_557] - <-Reducer 42 [BROADCAST_EDGE] vectorized - BROADCAST [RS_667] - Group By Operator [GBY_666] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 37 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_609] - Group By Operator [GBY_603] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_596] (rows=45745 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_586] - <-Reducer 35 [CONTAINS] - Reduce Output Operator [RS_550] - PartitionCols:_col0, _col1, _col2, _col3 - Group By Operator [GBY_549] (rows=736356923 width=131) - Output:["_col0","_col1","_col2","_col3","_col4","_col5"],keys:_col0, _col1, _col2, _col3, _col4, _col5 - Select Operator [SEL_547] (rows=115177968 width=131) - Output:["_col0","_col1","_col2","_col3","_col4","_col5"] - Merge Join Operator [MERGEJOIN_546] (rows=115177968 width=220) - Conds:RS_148._col1, _col2=RS_653._col0, _col1(Left Outer),Output:["_col3","_col4","_col7","_col8","_col9","_col10","_col13","_col14"] - <-Map 48 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_653] - PartitionCols:_col0, _col1 - Select Operator [SEL_651] (rows=14398467 width=118) - Output:["_col0","_col1","_col2","_col3"] - TableScan [TS_58] (rows=14398467 width=118) - default@web_returns,web_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["wr_item_sk","wr_order_number","wr_return_quantity","wr_return_amt"] - <-Reducer 34 [SIMPLE_EDGE] - SHUFFLE [RS_148] - PartitionCols:_col1, _col2 - Merge Join Operator [MERGEJOIN_510] (rows=48990732 width=139) - Conds:RS_145._col1=RS_597._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col7","_col8","_col9","_col10"] - <-Map 37 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_597] - PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_586] - <-Reducer 33 [SIMPLE_EDGE] - SHUFFLE [RS_145] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_509] (rows=51404771 width=123) - Conds:RS_677._col0=RS_569._col0(Inner),Output:["_col1","_col2","_col3","_col4"] - <-Map 11 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_569] - PartitionCols:_col0 - Select Operator [SEL_558] (rows=652 width=4) - Output:["_col0"] - Filter Operator [FIL_554] (rows=652 width=8) - predicate:(d_year = 2002) - Please refer to the previous TableScan [TS_3] - <-Map 51 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_677] - PartitionCols:_col0 - Select Operator [SEL_676] (rows=143966864 width=127) - Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_675] (rows=143966864 width=127) - predicate:((ws_item_sk BETWEEN DynamicValue(RS_146_item_i_item_sk_min) AND DynamicValue(RS_146_item_i_item_sk_max) and in_bloom_filter(ws_item_sk, DynamicValue(RS_146_item_i_item_sk_bloom_filter))) and (ws_sold_date_sk BETWEEN DynamicValue(RS_143_date_dim_d_date_sk_min) AND DynamicValue(RS_143_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_143_date_dim_d_date_sk_bloom_filter))) and ws_sold_date_sk is not null) - TableScan [TS_131] (rows=144002668 width=127) - default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_item_sk","ws_order_number","ws_quantity","ws_ext_sales_price"] - <-Reducer 36 [BROADCAST_EDGE] vectorized - BROADCAST [RS_672] - Group By Operator [GBY_671] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 11 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_582] - Group By Operator [GBY_576] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_570] (rows=652 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_558] - <-Reducer 43 [BROADCAST_EDGE] vectorized - BROADCAST [RS_674] - Group By Operator [GBY_673] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 37 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_610] - Group By Operator [GBY_604] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_598] (rows=45745 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_586] + Group By Operator [GBY_626] (rows=84235776 width=135) + Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["sum(_col4)","sum(_col5)"],keys:_col0, _col1, _col2, _col3 + Group By Operator [GBY_625] (rows=736356923 width=131) + Output:["_col0","_col1","_col2","_col3","_col4","_col5"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4, KEY._col5 + <-Union 26 [SIMPLE_EDGE] + <-Reducer 25 [CONTAINS] vectorized + Reduce Output Operator [RS_661] + PartitionCols:_col0, _col1, _col2, _col3 + Group By Operator [GBY_660] (rows=736356923 width=131) + Output:["_col0","_col1","_col2","_col3","_col4","_col5"],keys:_col0, _col1, _col2, _col3, _col4, _col5 + Group By Operator [GBY_659] (rows=621178955 width=131) + Output:["_col0","_col1","_col2","_col3","_col4","_col5"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4, KEY._col5 + <-Union 24 [SIMPLE_EDGE] + <-Reducer 23 [CONTAINS] + Reduce Output Operator [RS_536] + PartitionCols:_col0, _col1, _col2, _col3, _col4, _col5 + Group By Operator [GBY_535] (rows=621178955 width=131) + Output:["_col0","_col1","_col2","_col3","_col4","_col5"],keys:_col0, _col1, _col2, _col3, _col4, _col5 + Select Operator [SEL_533] (rows=170474971 width=131) + Output:["_col0","_col1","_col2","_col3","_col4","_col5"] + Merge Join Operator [MERGEJOIN_532] (rows=170474971 width=234) + Conds:RS_99._col1, _col2=RS_618._col0, _col1(Left Outer),Output:["_col3","_col4","_col7","_col8","_col9","_col10","_col13","_col14"] + <-Map 44 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_618] + PartitionCols:_col0, _col1 + Select Operator [SEL_616] (rows=28798881 width=121) + Output:["_col0","_col1","_col2","_col3"] + TableScan [TS_9] (rows=28798881 width=121) + default@catalog_returns,catalog_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["cr_item_sk","cr_order_number","cr_return_quantity","cr_return_amount"] + <-Reducer 22 [SIMPLE_EDGE] + SHUFFLE [RS_99] + PartitionCols:_col1, _col2 + Merge Join Operator [MERGEJOIN_504] (rows=96821196 width=138) + Conds:RS_96._col1=RS_593._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col7","_col8","_col9","_col10"] + <-Map 37 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_593] + PartitionCols:_col0 + Select Operator [SEL_586] (rows=45745 width=19) + Output:["_col0","_col1","_col2","_col3","_col4"] + Filter Operator [FIL_585] (rows=45745 width=109) + predicate:((i_category = 'Sports') and i_brand_id is not null and i_category_id is not null and i_class_id is not null and i_manufact_id is not null) + TableScan [TS_6] (rows=462000 width=109) + default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_brand_id","i_class_id","i_category_id","i_category","i_manufact_id"] + <-Reducer 21 [SIMPLE_EDGE] + SHUFFLE [RS_96] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_503] (rows=101592102 width=122) + Conds:RS_658._col0=RS_565._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + <-Map 11 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_565] + PartitionCols:_col0 + Select Operator [SEL_556] (rows=652 width=4) + Output:["_col0"] + Filter Operator [FIL_552] (rows=652 width=8) + predicate:(d_year = 2002) + TableScan [TS_3] (rows=73049 width=8) + default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year"] + <-Map 49 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_658] + PartitionCols:_col0 + Select Operator [SEL_657] (rows=286549727 width=127) + Output:["_col0","_col1","_col2","_col3","_col4"] + Filter Operator [FIL_656] (rows=286549727 width=127) + predicate:((cs_item_sk BETWEEN DynamicValue(RS_97_item_i_item_sk_min) AND DynamicValue(RS_97_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_97_item_i_item_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_94_date_dim_d_date_sk_min) AND DynamicValue(RS_94_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_94_date_dim_d_date_sk_bloom_filter))) and cs_sold_date_sk is not null) + TableScan [TS_82] (rows=287989836 width=127) + default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_item_sk","cs_order_number","cs_quantity","cs_ext_sales_price"] + <-Reducer 28 [BROADCAST_EDGE] vectorized + BROADCAST [RS_653] + Group By Operator [GBY_652] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 11 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_580] + Group By Operator [GBY_574] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_566] (rows=652 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_556] + <-Reducer 41 [BROADCAST_EDGE] vectorized + BROADCAST [RS_655] + Group By Operator [GBY_654] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 37 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_608] + Group By Operator [GBY_602] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_594] (rows=45745 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_586] + <-Reducer 31 [CONTAINS] + Reduce Output Operator [RS_545] + PartitionCols:_col0, _col1, _col2, _col3, _col4, _col5 + Group By Operator [GBY_544] (rows=621178955 width=131) + Output:["_col0","_col1","_col2","_col3","_col4","_col5"],keys:_col0, _col1, _col2, _col3, _col4, _col5 + Select Operator [SEL_542] (rows=450703984 width=131) + Output:["_col0","_col1","_col2","_col3","_col4","_col5"] + Merge Join Operator [MERGEJOIN_541] (rows=450703984 width=204) + Conds:RS_120._col1, _col2=RS_641._col0, _col1(Left Outer),Output:["_col3","_col4","_col7","_col8","_col9","_col10","_col13","_col14"] + <-Map 46 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_641] + PartitionCols:_col0, _col1 + Select Operator [SEL_639] (rows=57591150 width=119) + Output:["_col0","_col1","_col2","_col3"] + TableScan [TS_30] (rows=57591150 width=119) + default@store_returns,store_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["sr_item_sk","sr_ticket_number","sr_return_quantity","sr_return_amt"] + <-Reducer 30 [SIMPLE_EDGE] + SHUFFLE [RS_120] + PartitionCols:_col1, _col2 + Merge Join Operator [MERGEJOIN_507] (rows=187186493 width=124) + Conds:RS_117._col1=RS_595._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col7","_col8","_col9","_col10"] + <-Map 37 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_595] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_586] + <-Reducer 29 [SIMPLE_EDGE] + SHUFFLE [RS_117] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_506] (rows=196410188 width=109) + Conds:RS_668._col0=RS_567._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + <-Map 11 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_567] + PartitionCols:_col0 + Select Operator [SEL_557] (rows=652 width=4) + Output:["_col0"] + Filter Operator [FIL_553] (rows=652 width=8) + predicate:(d_year = 2002) + Please refer to the previous TableScan [TS_3] + <-Map 50 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_668] + PartitionCols:_col0 + Select Operator [SEL_667] (rows=550076554 width=122) + Output:["_col0","_col1","_col2","_col3","_col4"] + Filter Operator [FIL_666] (rows=550076554 width=122) + predicate:((ss_item_sk BETWEEN DynamicValue(RS_118_item_i_item_sk_min) AND DynamicValue(RS_118_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_118_item_i_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_115_date_dim_d_date_sk_min) AND DynamicValue(RS_115_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_115_date_dim_d_date_sk_bloom_filter))) and ss_sold_date_sk is not null) + TableScan [TS_103] (rows=575995635 width=122) + default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_ticket_number","ss_quantity","ss_ext_sales_price"] + <-Reducer 32 [BROADCAST_EDGE] vectorized + BROADCAST [RS_663] + Group By Operator [GBY_662] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 11 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_581] + Group By Operator [GBY_575] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_568] (rows=652 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_557] + <-Reducer 42 [BROADCAST_EDGE] vectorized + BROADCAST [RS_665] + Group By Operator [GBY_664] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 37 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_609] + Group By Operator [GBY_603] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_596] (rows=45745 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_586] + <-Reducer 35 [CONTAINS] + Reduce Output Operator [RS_550] + PartitionCols:_col0, _col1, _col2, _col3 + Group By Operator [GBY_549] (rows=736356923 width=131) + Output:["_col0","_col1","_col2","_col3","_col4","_col5"],keys:_col0, _col1, _col2, _col3, _col4, _col5 + Select Operator [SEL_547] (rows=115177968 width=131) + Output:["_col0","_col1","_col2","_col3","_col4","_col5"] + Merge Join Operator [MERGEJOIN_546] (rows=115177968 width=220) + Conds:RS_148._col1, _col2=RS_651._col0, _col1(Left Outer),Output:["_col3","_col4","_col7","_col8","_col9","_col10","_col13","_col14"] + <-Map 48 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_651] + PartitionCols:_col0, _col1 + Select Operator [SEL_649] (rows=14398467 width=118) + Output:["_col0","_col1","_col2","_col3"] + TableScan [TS_58] (rows=14398467 width=118) + default@web_returns,web_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["wr_item_sk","wr_order_number","wr_return_quantity","wr_return_amt"] + <-Reducer 34 [SIMPLE_EDGE] + SHUFFLE [RS_148] + PartitionCols:_col1, _col2 + Merge Join Operator [MERGEJOIN_510] (rows=48990732 width=139) + Conds:RS_145._col1=RS_597._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col7","_col8","_col9","_col10"] + <-Map 37 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_597] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_586] + <-Reducer 33 [SIMPLE_EDGE] + SHUFFLE [RS_145] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_509] (rows=51404771 width=123) + Conds:RS_675._col0=RS_569._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + <-Map 11 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_569] + PartitionCols:_col0 + Select Operator [SEL_558] (rows=652 width=4) + Output:["_col0"] + Filter Operator [FIL_554] (rows=652 width=8) + predicate:(d_year = 2002) + Please refer to the previous TableScan [TS_3] + <-Map 51 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_675] + PartitionCols:_col0 + Select Operator [SEL_674] (rows=143966864 width=127) + Output:["_col0","_col1","_col2","_col3","_col4"] + Filter Operator [FIL_673] (rows=143966864 width=127) + predicate:((ws_item_sk BETWEEN DynamicValue(RS_146_item_i_item_sk_min) AND DynamicValue(RS_146_item_i_item_sk_max) and in_bloom_filter(ws_item_sk, DynamicValue(RS_146_item_i_item_sk_bloom_filter))) and (ws_sold_date_sk BETWEEN DynamicValue(RS_143_date_dim_d_date_sk_min) AND DynamicValue(RS_143_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_143_date_dim_d_date_sk_bloom_filter))) and ws_sold_date_sk is not null) + TableScan [TS_131] (rows=144002668 width=127) + default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_item_sk","ws_order_number","ws_quantity","ws_ext_sales_price"] + <-Reducer 36 [BROADCAST_EDGE] vectorized + BROADCAST [RS_670] + Group By Operator [GBY_669] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 11 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_582] + Group By Operator [GBY_576] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_570] (rows=652 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_558] + <-Reducer 43 [BROADCAST_EDGE] vectorized + BROADCAST [RS_672] + Group By Operator [GBY_671] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 37 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_610] + Group By Operator [GBY_604] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_598] (rows=45745 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_586] <-Reducer 8 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_625] + SHUFFLE [RS_624] PartitionCols:_col0, _col1, _col2, _col3 - Select Operator [SEL_624] (rows=84235776 width=247) - Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] - Group By Operator [GBY_623] (rows=84235776 width=135) - Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["sum(_col4)","sum(_col5)"],keys:_col0, _col1, _col2, _col3 - Group By Operator [GBY_622] (rows=736356923 width=131) - Output:["_col0","_col1","_col2","_col3","_col4","_col5"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4, KEY._col5 - <-Union 7 [SIMPLE_EDGE] - <-Reducer 19 [CONTAINS] - Reduce Output Operator [RS_531] - PartitionCols:_col0, _col1, _col2, _col3 - Group By Operator [GBY_530] (rows=736356923 width=131) - Output:["_col0","_col1","_col2","_col3","_col4","_col5"],keys:_col0, _col1, _col2, _col3, _col4, _col5 - Select Operator [SEL_528] (rows=115177968 width=131) - Output:["_col0","_col1","_col2","_col3","_col4","_col5"] - Merge Join Operator [MERGEJOIN_527] (rows=115177968 width=220) - Conds:RS_66._col1, _col2=RS_652._col0, _col1(Left Outer),Output:["_col3","_col4","_col7","_col8","_col9","_col10","_col13","_col14"] - <-Map 48 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_652] - PartitionCols:_col0, _col1 - Please refer to the previous Select Operator [SEL_651] - <-Reducer 18 [SIMPLE_EDGE] - SHUFFLE [RS_66] - PartitionCols:_col1, _col2 - Merge Join Operator [MERGEJOIN_501] (rows=48990732 width=139) - Conds:RS_63._col1=RS_591._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col7","_col8","_col9","_col10"] - <-Map 37 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_591] - PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_586] - <-Reducer 17 [SIMPLE_EDGE] - SHUFFLE [RS_63] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_500] (rows=51404771 width=123) - Conds:RS_650._col0=RS_563._col0(Inner),Output:["_col1","_col2","_col3","_col4"] - <-Map 11 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_563] - PartitionCols:_col0 - Select Operator [SEL_555] (rows=652 width=4) - Output:["_col0"] - Filter Operator [FIL_551] (rows=652 width=8) - predicate:(d_year = 2001) - Please refer to the previous TableScan [TS_3] - <-Map 47 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_650] - PartitionCols:_col0 - Select Operator [SEL_649] (rows=143966864 width=127) - Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_648] (rows=143966864 width=127) - predicate:((ws_item_sk BETWEEN DynamicValue(RS_64_item_i_item_sk_min) AND DynamicValue(RS_64_item_i_item_sk_max) and in_bloom_filter(ws_item_sk, DynamicValue(RS_64_item_i_item_sk_bloom_filter))) and (ws_sold_date_sk BETWEEN DynamicValue(RS_61_date_dim_d_date_sk_min) AND DynamicValue(RS_61_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_61_date_dim_d_date_sk_bloom_filter))) and ws_sold_date_sk is not null) - TableScan [TS_49] (rows=144002668 width=127) - default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_item_sk","ws_order_number","ws_quantity","ws_ext_sales_price"] - <-Reducer 20 [BROADCAST_EDGE] vectorized - BROADCAST [RS_645] - Group By Operator [GBY_644] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 11 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_579] - Group By Operator [GBY_573] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_564] (rows=652 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_555] - <-Reducer 40 [BROADCAST_EDGE] vectorized - BROADCAST [RS_647] - Group By Operator [GBY_646] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 37 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_607] - Group By Operator [GBY_601] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_592] (rows=45745 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_586] - <-Reducer 6 [CONTAINS] vectorized - Reduce Output Operator [RS_621] - PartitionCols:_col0, _col1, _col2, _col3 - Group By Operator [GBY_620] (rows=736356923 width=131) - Output:["_col0","_col1","_col2","_col3","_col4","_col5"],keys:_col0, _col1, _col2, _col3, _col4, _col5 - Group By Operator [GBY_619] (rows=621178955 width=131) - Output:["_col0","_col1","_col2","_col3","_col4","_col5"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4, KEY._col5 - <-Union 5 [SIMPLE_EDGE] - <-Reducer 15 [CONTAINS] - Reduce Output Operator [RS_526] - PartitionCols:_col0, _col1, _col2, _col3, _col4, _col5 - Group By Operator [GBY_525] (rows=621178955 width=131) - Output:["_col0","_col1","_col2","_col3","_col4","_col5"],keys:_col0, _col1, _col2, _col3, _col4, _col5 - Select Operator [SEL_523] (rows=450703984 width=131) - Output:["_col0","_col1","_col2","_col3","_col4","_col5"] - Merge Join Operator [MERGEJOIN_522] (rows=450703984 width=204) - Conds:RS_38._col1, _col2=RS_642._col0, _col1(Left Outer),Output:["_col3","_col4","_col7","_col8","_col9","_col10","_col13","_col14"] - <-Map 46 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_642] - PartitionCols:_col0, _col1 - Please refer to the previous Select Operator [SEL_641] - <-Reducer 14 [SIMPLE_EDGE] - SHUFFLE [RS_38] - PartitionCols:_col1, _col2 - Merge Join Operator [MERGEJOIN_498] (rows=187186493 width=124) - Conds:RS_35._col1=RS_589._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col7","_col8","_col9","_col10"] - <-Map 37 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_589] - PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_586] - <-Reducer 13 [SIMPLE_EDGE] - SHUFFLE [RS_35] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_497] (rows=196410188 width=109) - Conds:RS_640._col0=RS_561._col0(Inner),Output:["_col1","_col2","_col3","_col4"] - <-Map 11 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_561] - PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_555] - <-Map 45 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_640] - PartitionCols:_col0 - Select Operator [SEL_639] (rows=550076554 width=122) - Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_638] (rows=550076554 width=122) - predicate:((ss_item_sk BETWEEN DynamicValue(RS_36_item_i_item_sk_min) AND DynamicValue(RS_36_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_36_item_i_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_33_date_dim_d_date_sk_min) AND DynamicValue(RS_33_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_33_date_dim_d_date_sk_bloom_filter))) and ss_sold_date_sk is not null) - TableScan [TS_21] (rows=575995635 width=122) - default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_ticket_number","ss_quantity","ss_ext_sales_price"] - <-Reducer 16 [BROADCAST_EDGE] vectorized - BROADCAST [RS_635] - Group By Operator [GBY_634] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 11 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_578] - Group By Operator [GBY_572] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_562] (rows=652 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_555] - <-Reducer 39 [BROADCAST_EDGE] vectorized - BROADCAST [RS_637] - Group By Operator [GBY_636] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 37 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_606] - Group By Operator [GBY_600] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_590] (rows=45745 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_586] - <-Reducer 4 [CONTAINS] - Reduce Output Operator [RS_517] - PartitionCols:_col0, _col1, _col2, _col3, _col4, _col5 - Group By Operator [GBY_516] (rows=621178955 width=131) - Output:["_col0","_col1","_col2","_col3","_col4","_col5"],keys:_col0, _col1, _col2, _col3, _col4, _col5 - Select Operator [SEL_514] (rows=170474971 width=131) - Output:["_col0","_col1","_col2","_col3","_col4","_col5"] - Merge Join Operator [MERGEJOIN_513] (rows=170474971 width=234) - Conds:RS_17._col1, _col2=RS_617._col0, _col1(Left Outer),Output:["_col3","_col4","_col7","_col8","_col9","_col10","_col13","_col14"] - <-Map 44 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_617] - PartitionCols:_col0, _col1 - Please refer to the previous Select Operator [SEL_616] - <-Reducer 3 [SIMPLE_EDGE] - SHUFFLE [RS_17] - PartitionCols:_col1, _col2 - Merge Join Operator [MERGEJOIN_495] (rows=96821196 width=138) - Conds:RS_14._col1=RS_587._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col7","_col8","_col9","_col10"] - <-Map 37 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_587] - PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_586] - <-Reducer 2 [SIMPLE_EDGE] - SHUFFLE [RS_14] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_494] (rows=101592102 width=122) - Conds:RS_615._col0=RS_559._col0(Inner),Output:["_col1","_col2","_col3","_col4"] - <-Map 11 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_559] - PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_555] - <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_615] - PartitionCols:_col0 - Select Operator [SEL_614] (rows=286549727 width=127) - Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_613] (rows=286549727 width=127) - predicate:((cs_item_sk BETWEEN DynamicValue(RS_15_item_i_item_sk_min) AND DynamicValue(RS_15_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_15_item_i_item_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_12_date_dim_d_date_sk_min) AND DynamicValue(RS_12_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_12_date_dim_d_date_sk_bloom_filter))) and cs_sold_date_sk is not null) - TableScan [TS_0] (rows=287989836 width=127) - default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_item_sk","cs_order_number","cs_quantity","cs_ext_sales_price"] - <-Reducer 12 [BROADCAST_EDGE] vectorized - BROADCAST [RS_584] - Group By Operator [GBY_583] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 11 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_577] - Group By Operator [GBY_571] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_560] (rows=652 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_555] - <-Reducer 38 [BROADCAST_EDGE] vectorized - BROADCAST [RS_612] - Group By Operator [GBY_611] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 37 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_605] - Group By Operator [GBY_599] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_588] (rows=45745 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_586] + Group By Operator [GBY_623] (rows=84235776 width=135) + Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["sum(_col4)","sum(_col5)"],keys:_col0, _col1, _col2, _col3 + Group By Operator [GBY_622] (rows=736356923 width=131) + Output:["_col0","_col1","_col2","_col3","_col4","_col5"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4, KEY._col5 + <-Union 7 [SIMPLE_EDGE] + <-Reducer 19 [CONTAINS] + Reduce Output Operator [RS_531] + PartitionCols:_col0, _col1, _col2, _col3 + Group By Operator [GBY_530] (rows=736356923 width=131) + Output:["_col0","_col1","_col2","_col3","_col4","_col5"],keys:_col0, _col1, _col2, _col3, _col4, _col5 + Select Operator [SEL_528] (rows=115177968 width=131) + Output:["_col0","_col1","_col2","_col3","_col4","_col5"] + Merge Join Operator [MERGEJOIN_527] (rows=115177968 width=220) + Conds:RS_66._col1, _col2=RS_650._col0, _col1(Left Outer),Output:["_col3","_col4","_col7","_col8","_col9","_col10","_col13","_col14"] + <-Map 48 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_650] + PartitionCols:_col0, _col1 + Please refer to the previous Select Operator [SEL_649] + <-Reducer 18 [SIMPLE_EDGE] + SHUFFLE [RS_66] + PartitionCols:_col1, _col2 + Merge Join Operator [MERGEJOIN_501] (rows=48990732 width=139) + Conds:RS_63._col1=RS_591._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col7","_col8","_col9","_col10"] + <-Map 37 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_591] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_586] + <-Reducer 17 [SIMPLE_EDGE] + SHUFFLE [RS_63] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_500] (rows=51404771 width=123) + Conds:RS_648._col0=RS_563._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + <-Map 11 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_563] + PartitionCols:_col0 + Select Operator [SEL_555] (rows=652 width=4) + Output:["_col0"] + Filter Operator [FIL_551] (rows=652 width=8) + predicate:(d_year = 2001) + Please refer to the previous TableScan [TS_3] + <-Map 47 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_648] + PartitionCols:_col0 + Select Operator [SEL_647] (rows=143966864 width=127) + Output:["_col0","_col1","_col2","_col3","_col4"] + Filter Operator [FIL_646] (rows=143966864 width=127) + predicate:((ws_item_sk BETWEEN DynamicValue(RS_64_item_i_item_sk_min) AND DynamicValue(RS_64_item_i_item_sk_max) and in_bloom_filter(ws_item_sk, DynamicValue(RS_64_item_i_item_sk_bloom_filter))) and (ws_sold_date_sk BETWEEN DynamicValue(RS_61_date_dim_d_date_sk_min) AND DynamicValue(RS_61_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_61_date_dim_d_date_sk_bloom_filter))) and ws_sold_date_sk is not null) + TableScan [TS_49] (rows=144002668 width=127) + default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_item_sk","ws_order_number","ws_quantity","ws_ext_sales_price"] + <-Reducer 20 [BROADCAST_EDGE] vectorized + BROADCAST [RS_643] + Group By Operator [GBY_642] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 11 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_579] + Group By Operator [GBY_573] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_564] (rows=652 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_555] + <-Reducer 40 [BROADCAST_EDGE] vectorized + BROADCAST [RS_645] + Group By Operator [GBY_644] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 37 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_607] + Group By Operator [GBY_601] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_592] (rows=45745 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_586] + <-Reducer 6 [CONTAINS] vectorized + Reduce Output Operator [RS_621] + PartitionCols:_col0, _col1, _col2, _col3 + Group By Operator [GBY_620] (rows=736356923 width=131) + Output:["_col0","_col1","_col2","_col3","_col4","_col5"],keys:_col0, _col1, _col2, _col3, _col4, _col5 + Group By Operator [GBY_619] (rows=621178955 width=131) + Output:["_col0","_col1","_col2","_col3","_col4","_col5"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4, KEY._col5 + <-Union 5 [SIMPLE_EDGE] + <-Reducer 15 [CONTAINS] + Reduce Output Operator [RS_526] + PartitionCols:_col0, _col1, _col2, _col3, _col4, _col5 + Group By Operator [GBY_525] (rows=621178955 width=131) + Output:["_col0","_col1","_col2","_col3","_col4","_col5"],keys:_col0, _col1, _col2, _col3, _col4, _col5 + Select Operator [SEL_523] (rows=450703984 width=131) + Output:["_col0","_col1","_col2","_col3","_col4","_col5"] + Merge Join Operator [MERGEJOIN_522] (rows=450703984 width=204) + Conds:RS_38._col1, _col2=RS_640._col0, _col1(Left Outer),Output:["_col3","_col4","_col7","_col8","_col9","_col10","_col13","_col14"] + <-Map 46 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_640] + PartitionCols:_col0, _col1 + Please refer to the previous Select Operator [SEL_639] + <-Reducer 14 [SIMPLE_EDGE] + SHUFFLE [RS_38] + PartitionCols:_col1, _col2 + Merge Join Operator [MERGEJOIN_498] (rows=187186493 width=124) + Conds:RS_35._col1=RS_589._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col7","_col8","_col9","_col10"] + <-Map 37 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_589] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_586] + <-Reducer 13 [SIMPLE_EDGE] + SHUFFLE [RS_35] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_497] (rows=196410188 width=109) + Conds:RS_638._col0=RS_561._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + <-Map 11 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_561] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_555] + <-Map 45 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_638] + PartitionCols:_col0 + Select Operator [SEL_637] (rows=550076554 width=122) + Output:["_col0","_col1","_col2","_col3","_col4"] + Filter Operator [FIL_636] (rows=550076554 width=122) + predicate:((ss_item_sk BETWEEN DynamicValue(RS_36_item_i_item_sk_min) AND DynamicValue(RS_36_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_36_item_i_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_33_date_dim_d_date_sk_min) AND DynamicValue(RS_33_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_33_date_dim_d_date_sk_bloom_filter))) and ss_sold_date_sk is not null) + TableScan [TS_21] (rows=575995635 width=122) + default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_ticket_number","ss_quantity","ss_ext_sales_price"] + <-Reducer 16 [BROADCAST_EDGE] vectorized + BROADCAST [RS_633] + Group By Operator [GBY_632] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 11 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_578] + Group By Operator [GBY_572] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_562] (rows=652 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_555] + <-Reducer 39 [BROADCAST_EDGE] vectorized + BROADCAST [RS_635] + Group By Operator [GBY_634] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 37 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_606] + Group By Operator [GBY_600] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_590] (rows=45745 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_586] + <-Reducer 4 [CONTAINS] + Reduce Output Operator [RS_517] + PartitionCols:_col0, _col1, _col2, _col3, _col4, _col5 + Group By Operator [GBY_516] (rows=621178955 width=131) + Output:["_col0","_col1","_col2","_col3","_col4","_col5"],keys:_col0, _col1, _col2, _col3, _col4, _col5 + Select Operator [SEL_514] (rows=170474971 width=131) + Output:["_col0","_col1","_col2","_col3","_col4","_col5"] + Merge Join Operator [MERGEJOIN_513] (rows=170474971 width=234) + Conds:RS_17._col1, _col2=RS_617._col0, _col1(Left Outer),Output:["_col3","_col4","_col7","_col8","_col9","_col10","_col13","_col14"] + <-Map 44 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_617] + PartitionCols:_col0, _col1 + Please refer to the previous Select Operator [SEL_616] + <-Reducer 3 [SIMPLE_EDGE] + SHUFFLE [RS_17] + PartitionCols:_col1, _col2 + Merge Join Operator [MERGEJOIN_495] (rows=96821196 width=138) + Conds:RS_14._col1=RS_587._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col7","_col8","_col9","_col10"] + <-Map 37 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_587] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_586] + <-Reducer 2 [SIMPLE_EDGE] + SHUFFLE [RS_14] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_494] (rows=101592102 width=122) + Conds:RS_615._col0=RS_559._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + <-Map 11 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_559] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_555] + <-Map 1 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_615] + PartitionCols:_col0 + Select Operator [SEL_614] (rows=286549727 width=127) + Output:["_col0","_col1","_col2","_col3","_col4"] + Filter Operator [FIL_613] (rows=286549727 width=127) + predicate:((cs_item_sk BETWEEN DynamicValue(RS_15_item_i_item_sk_min) AND DynamicValue(RS_15_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_15_item_i_item_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_12_date_dim_d_date_sk_min) AND DynamicValue(RS_12_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_12_date_dim_d_date_sk_bloom_filter))) and cs_sold_date_sk is not null) + TableScan [TS_0] (rows=287989836 width=127) + default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_item_sk","cs_order_number","cs_quantity","cs_ext_sales_price"] + <-Reducer 12 [BROADCAST_EDGE] vectorized + BROADCAST [RS_584] + Group By Operator [GBY_583] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 11 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_577] + Group By Operator [GBY_571] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_560] (rows=652 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_555] + <-Reducer 38 [BROADCAST_EDGE] vectorized + BROADCAST [RS_612] + Group By Operator [GBY_611] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 37 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_605] + Group By Operator [GBY_599] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_588] (rows=45745 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_586] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query83.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query83.q.out index 4c9fc683d1..0dea786232 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query83.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query83.q.out @@ -166,23 +166,23 @@ Stage-0 limit:100 Stage-1 Reducer 7 vectorized - File Output Operator [FS_397] - Limit [LIM_396] (rows=100 width=260) + File Output Operator [FS_395] + Limit [LIM_394] (rows=100 width=260) Number of rows:100 - Select Operator [SEL_395] (rows=130021 width=260) + Select Operator [SEL_393] (rows=130021 width=260) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] <-Reducer 6 [SIMPLE_EDGE] SHUFFLE [RS_124] Select Operator [SEL_123] (rows=130021 width=260) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] - Merge Join Operator [MERGEJOIN_360] (rows=130021 width=148) - Conds:RS_120._col0=RS_394._col0(Inner),Output:["_col0","_col1","_col2","_col4","_col5","_col7","_col8"] + Merge Join Operator [MERGEJOIN_360] (rows=130021 width=132) + Conds:RS_120._col0=RS_392._col0(Inner),Output:["_col0","_col1","_col3","_col5","_col6"] <-Reducer 14 [ONE_TO_ONE_EDGE] vectorized - FORWARD [RS_394] + FORWARD [RS_392] PartitionCols:_col0 - Select Operator [SEL_393] (rows=130021 width=116) + Select Operator [SEL_391] (rows=130021 width=116) Output:["_col0","_col1","_col2"] - Group By Operator [GBY_392] (rows=130021 width=108) + Group By Operator [GBY_390] (rows=130021 width=108) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 <-Reducer 13 [SIMPLE_EDGE] SHUFFLE [RS_114] @@ -241,7 +241,7 @@ Stage-0 SHUFFLE [RS_109] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_353] (rows=13749816 width=107) - Conds:RS_391._col1=RS_367._col0(Inner),Output:["_col0","_col2","_col4"] + Conds:RS_389._col1=RS_367._col0(Inner),Output:["_col0","_col2","_col4"] <-Map 8 [SIMPLE_EDGE] vectorized SHUFFLE [RS_367] PartitionCols:_col0 @@ -250,89 +250,85 @@ Stage-0 TableScan [TS_3] (rows=462000 width=104) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_item_id"] <-Map 22 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_391] + SHUFFLE [RS_389] PartitionCols:_col1 - Select Operator [SEL_390] (rows=13749816 width=11) + Select Operator [SEL_388] (rows=13749816 width=11) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_389] (rows=13749816 width=11) + Filter Operator [FIL_387] (rows=13749816 width=11) predicate:wr_returned_date_sk is not null TableScan [TS_78] (rows=14398467 width=11) default@web_returns,web_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["wr_returned_date_sk","wr_item_sk","wr_return_quantity"] <-Reducer 5 [ONE_TO_ONE_EDGE] FORWARD [RS_120] PartitionCols:_col0 - Merge Join Operator [MERGEJOIN_359] (rows=134905 width=132) - Conds:RS_382._col0=RS_388._col0(Inner),Output:["_col0","_col1","_col2","_col4","_col5"] + Merge Join Operator [MERGEJOIN_359] (rows=134905 width=116) + Conds:RS_381._col0=RS_386._col0(Inner),Output:["_col0","_col1","_col3"] <-Reducer 11 [ONE_TO_ONE_EDGE] vectorized - FORWARD [RS_388] + FORWARD [RS_386] PartitionCols:_col0 - Select Operator [SEL_387] (rows=141711 width=116) - Output:["_col0","_col1","_col2"] - Group By Operator [GBY_386] (rows=141711 width=108) - Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Reducer 10 [SIMPLE_EDGE] - SHUFFLE [RS_75] - PartitionCols:_col0 - Group By Operator [GBY_74] (rows=462000 width=108) - Output:["_col0","_col1"],aggregations:["sum(_col2)"],keys:_col4 - Merge Join Operator [MERGEJOIN_357] (rows=25343167 width=103) - Conds:RS_70._col0=RS_71._col0(Inner),Output:["_col2","_col4"] - <-Reducer 16 [SIMPLE_EDGE] - SHUFFLE [RS_71] - PartitionCols:_col0 - Please refer to the previous Merge Join Operator [MERGEJOIN_349] - <-Reducer 9 [SIMPLE_EDGE] - SHUFFLE [RS_70] - PartitionCols:_col0 - Merge Join Operator [MERGEJOIN_350] (rows=55578005 width=107) - Conds:RS_385._col1=RS_366._col0(Inner),Output:["_col0","_col2","_col4"] - <-Map 8 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_366] - PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_364] - <-Map 21 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_385] - PartitionCols:_col1 - Select Operator [SEL_384] (rows=55578005 width=11) - Output:["_col0","_col1","_col2"] - Filter Operator [FIL_383] (rows=55578005 width=11) - predicate:sr_returned_date_sk is not null - TableScan [TS_39] (rows=57591150 width=11) - default@store_returns,store_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["sr_returned_date_sk","sr_item_sk","sr_return_quantity"] + Group By Operator [GBY_385] (rows=141711 width=108) + Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 + <-Reducer 10 [SIMPLE_EDGE] + SHUFFLE [RS_75] + PartitionCols:_col0 + Group By Operator [GBY_74] (rows=462000 width=108) + Output:["_col0","_col1"],aggregations:["sum(_col2)"],keys:_col4 + Merge Join Operator [MERGEJOIN_357] (rows=25343167 width=103) + Conds:RS_70._col0=RS_71._col0(Inner),Output:["_col2","_col4"] + <-Reducer 16 [SIMPLE_EDGE] + SHUFFLE [RS_71] + PartitionCols:_col0 + Please refer to the previous Merge Join Operator [MERGEJOIN_349] + <-Reducer 9 [SIMPLE_EDGE] + SHUFFLE [RS_70] + PartitionCols:_col0 + Merge Join Operator [MERGEJOIN_350] (rows=55578005 width=107) + Conds:RS_384._col1=RS_366._col0(Inner),Output:["_col0","_col2","_col4"] + <-Map 8 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_366] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_364] + <-Map 21 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_384] + PartitionCols:_col1 + Select Operator [SEL_383] (rows=55578005 width=11) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_382] (rows=55578005 width=11) + predicate:sr_returned_date_sk is not null + TableScan [TS_39] (rows=57591150 width=11) + default@store_returns,store_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["sr_returned_date_sk","sr_item_sk","sr_return_quantity"] <-Reducer 4 [ONE_TO_ONE_EDGE] vectorized - FORWARD [RS_382] + FORWARD [RS_381] PartitionCols:_col0 - Select Operator [SEL_381] (rows=134905 width=116) - Output:["_col0","_col1","_col2"] - Group By Operator [GBY_380] (rows=134905 width=108) - Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Reducer 3 [SIMPLE_EDGE] - SHUFFLE [RS_36] - PartitionCols:_col0 - Group By Operator [GBY_35] (rows=462000 width=108) - Output:["_col0","_col1"],aggregations:["sum(_col2)"],keys:_col4 - Merge Join Operator [MERGEJOIN_356] (rows=12501392 width=103) - Conds:RS_31._col0=RS_32._col0(Inner),Output:["_col2","_col4"] - <-Reducer 16 [SIMPLE_EDGE] - SHUFFLE [RS_32] - PartitionCols:_col0 - Please refer to the previous Merge Join Operator [MERGEJOIN_349] - <-Reducer 2 [SIMPLE_EDGE] - SHUFFLE [RS_31] - PartitionCols:_col0 - Merge Join Operator [MERGEJOIN_347] (rows=28798881 width=107) - Conds:RS_363._col1=RS_365._col0(Inner),Output:["_col0","_col2","_col4"] - <-Map 8 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_365] - PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_364] - <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_363] - PartitionCols:_col1 - Select Operator [SEL_362] (rows=28798881 width=11) - Output:["_col0","_col1","_col2"] - Filter Operator [FIL_361] (rows=28798881 width=11) - predicate:cr_returned_date_sk is not null - TableScan [TS_0] (rows=28798881 width=11) - default@catalog_returns,catalog_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["cr_returned_date_sk","cr_item_sk","cr_return_quantity"] + Group By Operator [GBY_380] (rows=134905 width=108) + Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 + <-Reducer 3 [SIMPLE_EDGE] + SHUFFLE [RS_36] + PartitionCols:_col0 + Group By Operator [GBY_35] (rows=462000 width=108) + Output:["_col0","_col1"],aggregations:["sum(_col2)"],keys:_col4 + Merge Join Operator [MERGEJOIN_356] (rows=12501392 width=103) + Conds:RS_31._col0=RS_32._col0(Inner),Output:["_col2","_col4"] + <-Reducer 16 [SIMPLE_EDGE] + SHUFFLE [RS_32] + PartitionCols:_col0 + Please refer to the previous Merge Join Operator [MERGEJOIN_349] + <-Reducer 2 [SIMPLE_EDGE] + SHUFFLE [RS_31] + PartitionCols:_col0 + Merge Join Operator [MERGEJOIN_347] (rows=28798881 width=107) + Conds:RS_363._col1=RS_365._col0(Inner),Output:["_col0","_col2","_col4"] + <-Map 8 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_365] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_364] + <-Map 1 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_363] + PartitionCols:_col1 + Select Operator [SEL_362] (rows=28798881 width=11) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_361] (rows=28798881 width=11) + predicate:cr_returned_date_sk is not null + TableScan [TS_0] (rows=28798881 width=11) + default@catalog_returns,catalog_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["cr_returned_date_sk","cr_item_sk","cr_return_quantity"] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query90.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query90.q.out index 3b171da953..f902607983 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query90.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query90.q.out @@ -78,186 +78,182 @@ Stage-0 limit:100 Stage-1 Reducer 7 vectorized - File Output Operator [FS_211] - Limit [LIM_210] (rows=1 width=112) + File Output Operator [FS_209] + Limit [LIM_208] (rows=1 width=112) Number of rows:100 - Select Operator [SEL_209] (rows=1 width=112) + Select Operator [SEL_207] (rows=1 width=112) Output:["_col0"] <-Reducer 6 [SIMPLE_EDGE] SHUFFLE [RS_56] Select Operator [SEL_55] (rows=1 width=112) Output:["_col0"] - Merge Join Operator [MERGEJOIN_152] (rows=1 width=224) + Merge Join Operator [MERGEJOIN_152] (rows=1 width=16) Conds:(Inner),Output:["_col0","_col1"] <-Reducer 13 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_208] - Select Operator [SEL_207] (rows=1 width=112) - Output:["_col0"] - Group By Operator [GBY_206] (rows=1 width=8) - Output:["_col0"],aggregations:["count(VALUE._col0)"] - <-Reducer 12 [CUSTOM_SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_49] - Group By Operator [GBY_48] (rows=1 width=8) - Output:["_col0"],aggregations:["count()"] - Merge Join Operator [MERGEJOIN_151] (rows=153010 width=8) - Conds:RS_44._col1=RS_183._col0(Inner) - <-Map 18 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_183] - PartitionCols:_col0 - Select Operator [SEL_180] (rows=655 width=4) - Output:["_col0"] - Filter Operator [FIL_179] (rows=655 width=8) - predicate:(hd_dep_count = 8) - TableScan [TS_9] (rows=7200 width=8) - default@household_demographics,household_demographics,Tbl:COMPLETE,Col:COMPLETE,Output:["hd_demo_sk","hd_dep_count"] - <-Reducer 11 [SIMPLE_EDGE] - SHUFFLE [RS_44] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_150] (rows=1681936 width=3) - Conds:RS_41._col0=RS_171._col0(Inner),Output:["_col1"] - <-Map 15 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_171] - PartitionCols:_col0 - Select Operator [SEL_168] (rows=9095 width=4) - Output:["_col0"] - Filter Operator [FIL_166] (rows=9095 width=8) - predicate:t_hour BETWEEN 14 AND 15 - TableScan [TS_6] (rows=86400 width=8) - default@time_dim,time_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["t_time_sk","t_hour"] - <-Reducer 10 [SIMPLE_EDGE] - SHUFFLE [RS_41] - PartitionCols:_col0 - Merge Join Operator [MERGEJOIN_149] (rows=15977923 width=7) - Conds:RS_205._col2=RS_157._col0(Inner),Output:["_col0","_col1"] - <-Map 8 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_157] - PartitionCols:_col0 - Select Operator [SEL_154] (rows=511 width=4) - Output:["_col0"] - Filter Operator [FIL_153] (rows=511 width=7) - predicate:wp_char_count BETWEEN 5000 AND 5200 - TableScan [TS_3] (rows=4602 width=7) - default@web_page,web_page,Tbl:COMPLETE,Col:COMPLETE,Output:["wp_web_page_sk","wp_char_count"] - <-Map 21 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_205] - PartitionCols:_col2 - Select Operator [SEL_204] (rows=143895111 width=11) - Output:["_col0","_col1","_col2"] - Filter Operator [FIL_203] (rows=143895111 width=11) - predicate:((ws_ship_hdemo_sk BETWEEN DynamicValue(RS_45_household_demographics_hd_demo_sk_min) AND DynamicValue(RS_45_household_demographics_hd_demo_sk_max) and in_bloom_filter(ws_ship_hdemo_sk, DynamicValue(RS_45_household_demographics_hd_demo_sk_bloom_filter))) and (ws_sold_time_sk BETWEEN DynamicValue(RS_42_time_dim_t_time_sk_min) AND DynamicValue(RS_42_time_dim_t_time_sk_max) and in_bloom_filter(ws_sold_time_sk, DynamicValue(RS_42_time_dim_t_time_sk_bloom_filter))) and (ws_web_page_sk BETWEEN DynamicValue(RS_39_web_page_wp_web_page_sk_min) AND DynamicValue(RS_39_web_page_wp_web_page_sk_max) and in_bloom_filter(ws_web_page_sk, DynamicValue(RS_39_web_page_wp_web_page_sk_bloom_filter))) and ws_ship_hdemo_sk is not null and ws_sold_time_sk is not null and ws_web_page_sk is not null) - TableScan [TS_26] (rows=144002668 width=11) - default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_time_sk","ws_ship_hdemo_sk","ws_web_page_sk"] - <-Reducer 14 [BROADCAST_EDGE] vectorized - BROADCAST [RS_198] - Group By Operator [GBY_197] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 8 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_162] - Group By Operator [GBY_160] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_158] (rows=511 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_154] - <-Reducer 17 [BROADCAST_EDGE] vectorized - BROADCAST [RS_200] - Group By Operator [GBY_199] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 15 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_176] - Group By Operator [GBY_174] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_172] (rows=9095 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_168] - <-Reducer 20 [BROADCAST_EDGE] vectorized - BROADCAST [RS_202] - Group By Operator [GBY_201] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 18 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_188] - Group By Operator [GBY_186] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_184] (rows=655 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_180] + PARTITION_ONLY_SHUFFLE [RS_206] + Group By Operator [GBY_205] (rows=1 width=8) + Output:["_col0"],aggregations:["count(VALUE._col0)"] + <-Reducer 12 [CUSTOM_SIMPLE_EDGE] + PARTITION_ONLY_SHUFFLE [RS_49] + Group By Operator [GBY_48] (rows=1 width=8) + Output:["_col0"],aggregations:["count()"] + Merge Join Operator [MERGEJOIN_151] (rows=153010 width=8) + Conds:RS_44._col1=RS_183._col0(Inner) + <-Map 18 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_183] + PartitionCols:_col0 + Select Operator [SEL_180] (rows=655 width=4) + Output:["_col0"] + Filter Operator [FIL_179] (rows=655 width=8) + predicate:(hd_dep_count = 8) + TableScan [TS_9] (rows=7200 width=8) + default@household_demographics,household_demographics,Tbl:COMPLETE,Col:COMPLETE,Output:["hd_demo_sk","hd_dep_count"] + <-Reducer 11 [SIMPLE_EDGE] + SHUFFLE [RS_44] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_150] (rows=1681936 width=3) + Conds:RS_41._col0=RS_171._col0(Inner),Output:["_col1"] + <-Map 15 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_171] + PartitionCols:_col0 + Select Operator [SEL_168] (rows=9095 width=4) + Output:["_col0"] + Filter Operator [FIL_166] (rows=9095 width=8) + predicate:t_hour BETWEEN 14 AND 15 + TableScan [TS_6] (rows=86400 width=8) + default@time_dim,time_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["t_time_sk","t_hour"] + <-Reducer 10 [SIMPLE_EDGE] + SHUFFLE [RS_41] + PartitionCols:_col0 + Merge Join Operator [MERGEJOIN_149] (rows=15977923 width=7) + Conds:RS_204._col2=RS_157._col0(Inner),Output:["_col0","_col1"] + <-Map 8 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_157] + PartitionCols:_col0 + Select Operator [SEL_154] (rows=511 width=4) + Output:["_col0"] + Filter Operator [FIL_153] (rows=511 width=7) + predicate:wp_char_count BETWEEN 5000 AND 5200 + TableScan [TS_3] (rows=4602 width=7) + default@web_page,web_page,Tbl:COMPLETE,Col:COMPLETE,Output:["wp_web_page_sk","wp_char_count"] + <-Map 21 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_204] + PartitionCols:_col2 + Select Operator [SEL_203] (rows=143895111 width=11) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_202] (rows=143895111 width=11) + predicate:((ws_ship_hdemo_sk BETWEEN DynamicValue(RS_45_household_demographics_hd_demo_sk_min) AND DynamicValue(RS_45_household_demographics_hd_demo_sk_max) and in_bloom_filter(ws_ship_hdemo_sk, DynamicValue(RS_45_household_demographics_hd_demo_sk_bloom_filter))) and (ws_sold_time_sk BETWEEN DynamicValue(RS_42_time_dim_t_time_sk_min) AND DynamicValue(RS_42_time_dim_t_time_sk_max) and in_bloom_filter(ws_sold_time_sk, DynamicValue(RS_42_time_dim_t_time_sk_bloom_filter))) and (ws_web_page_sk BETWEEN DynamicValue(RS_39_web_page_wp_web_page_sk_min) AND DynamicValue(RS_39_web_page_wp_web_page_sk_max) and in_bloom_filter(ws_web_page_sk, DynamicValue(RS_39_web_page_wp_web_page_sk_bloom_filter))) and ws_ship_hdemo_sk is not null and ws_sold_time_sk is not null and ws_web_page_sk is not null) + TableScan [TS_26] (rows=144002668 width=11) + default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_time_sk","ws_ship_hdemo_sk","ws_web_page_sk"] + <-Reducer 14 [BROADCAST_EDGE] vectorized + BROADCAST [RS_197] + Group By Operator [GBY_196] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 8 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_162] + Group By Operator [GBY_160] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_158] (rows=511 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_154] + <-Reducer 17 [BROADCAST_EDGE] vectorized + BROADCAST [RS_199] + Group By Operator [GBY_198] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 15 [CUSTOM_SIMPLE_EDGE] vectorized + SHUFFLE [RS_176] + Group By Operator [GBY_174] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_172] (rows=9095 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_168] + <-Reducer 20 [BROADCAST_EDGE] vectorized + BROADCAST [RS_201] + Group By Operator [GBY_200] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 18 [CUSTOM_SIMPLE_EDGE] vectorized + SHUFFLE [RS_188] + Group By Operator [GBY_186] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_184] (rows=655 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_180] <-Reducer 5 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_196] - Select Operator [SEL_195] (rows=1 width=112) - Output:["_col0"] - Group By Operator [GBY_194] (rows=1 width=8) - Output:["_col0"],aggregations:["count(VALUE._col0)"] - <-Reducer 4 [CUSTOM_SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_23] - Group By Operator [GBY_22] (rows=1 width=8) - Output:["_col0"],aggregations:["count()"] - Merge Join Operator [MERGEJOIN_148] (rows=153010 width=8) - Conds:RS_18._col1=RS_181._col0(Inner) - <-Map 18 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_181] - PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_180] - <-Reducer 3 [SIMPLE_EDGE] - SHUFFLE [RS_18] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_147] (rows=1681936 width=3) - Conds:RS_15._col0=RS_169._col0(Inner),Output:["_col1"] - <-Map 15 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_169] - PartitionCols:_col0 - Select Operator [SEL_167] (rows=9095 width=4) - Output:["_col0"] - Filter Operator [FIL_165] (rows=9095 width=8) - predicate:t_hour BETWEEN 6 AND 7 - Please refer to the previous TableScan [TS_6] - <-Reducer 2 [SIMPLE_EDGE] - SHUFFLE [RS_15] - PartitionCols:_col0 - Merge Join Operator [MERGEJOIN_146] (rows=15977923 width=7) - Conds:RS_193._col2=RS_155._col0(Inner),Output:["_col0","_col1"] - <-Map 8 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_155] - PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_154] - <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_193] - PartitionCols:_col2 - Select Operator [SEL_192] (rows=143895111 width=11) - Output:["_col0","_col1","_col2"] - Filter Operator [FIL_191] (rows=143895111 width=11) - predicate:((ws_ship_hdemo_sk BETWEEN DynamicValue(RS_19_household_demographics_hd_demo_sk_min) AND DynamicValue(RS_19_household_demographics_hd_demo_sk_max) and in_bloom_filter(ws_ship_hdemo_sk, DynamicValue(RS_19_household_demographics_hd_demo_sk_bloom_filter))) and (ws_sold_time_sk BETWEEN DynamicValue(RS_16_time_dim_t_time_sk_min) AND DynamicValue(RS_16_time_dim_t_time_sk_max) and in_bloom_filter(ws_sold_time_sk, DynamicValue(RS_16_time_dim_t_time_sk_bloom_filter))) and (ws_web_page_sk BETWEEN DynamicValue(RS_13_web_page_wp_web_page_sk_min) AND DynamicValue(RS_13_web_page_wp_web_page_sk_max) and in_bloom_filter(ws_web_page_sk, DynamicValue(RS_13_web_page_wp_web_page_sk_bloom_filter))) and ws_ship_hdemo_sk is not null and ws_sold_time_sk is not null and ws_web_page_sk is not null) - TableScan [TS_0] (rows=144002668 width=11) - default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_time_sk","ws_ship_hdemo_sk","ws_web_page_sk"] - <-Reducer 16 [BROADCAST_EDGE] vectorized - BROADCAST [RS_178] - Group By Operator [GBY_177] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 15 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_175] - Group By Operator [GBY_173] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_170] (rows=9095 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_167] - <-Reducer 19 [BROADCAST_EDGE] vectorized - BROADCAST [RS_190] - Group By Operator [GBY_189] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 18 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_187] - Group By Operator [GBY_185] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_182] (rows=655 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_180] - <-Reducer 9 [BROADCAST_EDGE] vectorized - BROADCAST [RS_164] - Group By Operator [GBY_163] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 8 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_161] - Group By Operator [GBY_159] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_156] (rows=511 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_154] + PARTITION_ONLY_SHUFFLE [RS_195] + Group By Operator [GBY_194] (rows=1 width=8) + Output:["_col0"],aggregations:["count(VALUE._col0)"] + <-Reducer 4 [CUSTOM_SIMPLE_EDGE] + PARTITION_ONLY_SHUFFLE [RS_23] + Group By Operator [GBY_22] (rows=1 width=8) + Output:["_col0"],aggregations:["count()"] + Merge Join Operator [MERGEJOIN_148] (rows=153010 width=8) + Conds:RS_18._col1=RS_181._col0(Inner) + <-Map 18 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_181] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_180] + <-Reducer 3 [SIMPLE_EDGE] + SHUFFLE [RS_18] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_147] (rows=1681936 width=3) + Conds:RS_15._col0=RS_169._col0(Inner),Output:["_col1"] + <-Map 15 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_169] + PartitionCols:_col0 + Select Operator [SEL_167] (rows=9095 width=4) + Output:["_col0"] + Filter Operator [FIL_165] (rows=9095 width=8) + predicate:t_hour BETWEEN 6 AND 7 + Please refer to the previous TableScan [TS_6] + <-Reducer 2 [SIMPLE_EDGE] + SHUFFLE [RS_15] + PartitionCols:_col0 + Merge Join Operator [MERGEJOIN_146] (rows=15977923 width=7) + Conds:RS_193._col2=RS_155._col0(Inner),Output:["_col0","_col1"] + <-Map 8 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_155] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_154] + <-Map 1 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_193] + PartitionCols:_col2 + Select Operator [SEL_192] (rows=143895111 width=11) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_191] (rows=143895111 width=11) + predicate:((ws_ship_hdemo_sk BETWEEN DynamicValue(RS_19_household_demographics_hd_demo_sk_min) AND DynamicValue(RS_19_household_demographics_hd_demo_sk_max) and in_bloom_filter(ws_ship_hdemo_sk, DynamicValue(RS_19_household_demographics_hd_demo_sk_bloom_filter))) and (ws_sold_time_sk BETWEEN DynamicValue(RS_16_time_dim_t_time_sk_min) AND DynamicValue(RS_16_time_dim_t_time_sk_max) and in_bloom_filter(ws_sold_time_sk, DynamicValue(RS_16_time_dim_t_time_sk_bloom_filter))) and (ws_web_page_sk BETWEEN DynamicValue(RS_13_web_page_wp_web_page_sk_min) AND DynamicValue(RS_13_web_page_wp_web_page_sk_max) and in_bloom_filter(ws_web_page_sk, DynamicValue(RS_13_web_page_wp_web_page_sk_bloom_filter))) and ws_ship_hdemo_sk is not null and ws_sold_time_sk is not null and ws_web_page_sk is not null) + TableScan [TS_0] (rows=144002668 width=11) + default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_time_sk","ws_ship_hdemo_sk","ws_web_page_sk"] + <-Reducer 16 [BROADCAST_EDGE] vectorized + BROADCAST [RS_178] + Group By Operator [GBY_177] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 15 [CUSTOM_SIMPLE_EDGE] vectorized + SHUFFLE [RS_175] + Group By Operator [GBY_173] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_170] (rows=9095 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_167] + <-Reducer 19 [BROADCAST_EDGE] vectorized + BROADCAST [RS_190] + Group By Operator [GBY_189] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 18 [CUSTOM_SIMPLE_EDGE] vectorized + SHUFFLE [RS_187] + Group By Operator [GBY_185] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_182] (rows=655 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_180] + <-Reducer 9 [BROADCAST_EDGE] vectorized + BROADCAST [RS_164] + Group By Operator [GBY_163] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 8 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_161] + Group By Operator [GBY_159] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_156] (rows=511 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_154]