diff --git a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/stats/annotation/StatsRulesProcFactory.java b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/stats/annotation/StatsRulesProcFactory.java index 32fba6c8ff..20571130e8 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/stats/annotation/StatsRulesProcFactory.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/stats/annotation/StatsRulesProcFactory.java @@ -113,7 +113,6 @@ import com.google.common.collect.Lists; import com.google.common.collect.Maps; import com.google.common.collect.Sets; -import scala.math.Numeric; public class StatsRulesProcFactory { @@ -297,7 +296,7 @@ public Object process(Node nd, Stack stack, NodeProcessorCtx procCtx, // result in number of rows getting more than the input rows in // which case stats need not be updated if (newNumRows <= parentStats.getNumRows()) { - updateStats(st, newNumRows, true, fop, aspCtx.getAffectedColumns()); + StatsUtils.updateStats(st, newNumRows, true, fop, aspCtx.getAffectedColumns()); } if (LOG.isDebugEnabled()) { @@ -307,7 +306,7 @@ public Object process(Node nd, Stack stack, NodeProcessorCtx procCtx, // update only the basic statistics in the absence of column statistics if (newNumRows <= parentStats.getNumRows()) { - updateStats(st, newNumRows, false, fop); + StatsUtils.updateStats(st, newNumRows, false, fop); } if (LOG.isDebugEnabled()) { @@ -358,9 +357,9 @@ protected long evaluateExpression(Statistics stats, ExprNodeDesc pred, // Ndv is reduced in a conservative manner - only taking affected columns // (which might be a subset of the actual *real* affected columns due to current limitation) // Goal is to not let a situation in which ndv-s asre underestimated happen. - updateStats(aspCtx.getAndExprStats(), newNumRows, true, op, aspCtx.getAffectedColumns()); + StatsUtils.updateStats(aspCtx.getAndExprStats(), newNumRows, true, op, aspCtx.getAffectedColumns()); } else { - updateStats(aspCtx.getAndExprStats(), newNumRows, false, op); + StatsUtils.updateStats(aspCtx.getAndExprStats(), newNumRows, false, op); } } } else if (udf instanceof GenericUDFOPOr) { @@ -1434,7 +1433,7 @@ public Object process(Node nd, Stack stack, NodeProcessorCtx procCtx, } // update stats, but don't update NDV as it will not change - updateStats(stats, cardinality, true, gop); + StatsUtils.updateStats(stats, cardinality, true, gop); } else { // NO COLUMN STATS @@ -1471,7 +1470,7 @@ public Object process(Node nd, Stack stack, NodeProcessorCtx procCtx, } } - updateStats(stats, cardinality, false, gop); + StatsUtils.updateStats(stats, cardinality, false, gop); } } @@ -1502,7 +1501,7 @@ public Object process(Node nd, Stack stack, NodeProcessorCtx procCtx, // only if the column stats is available, update the data size from // the column stats if (!stats.getColumnStatsState().equals(Statistics.State.NONE)) { - updateStats(stats, stats.getNumRows(), true, gop); + StatsUtils.updateStats(stats, stats.getNumRows(), true, gop); } } @@ -1510,7 +1509,7 @@ public Object process(Node nd, Stack stack, NodeProcessorCtx procCtx, // be full aggregation query like count(*) in which case number of // rows will be 1 if (colExprMap.isEmpty()) { - updateStats(stats, 1, true, gop); + StatsUtils.updateStats(stats, 1, true, gop); } } @@ -1870,7 +1869,7 @@ public Object process(Node nd, Stack stack, NodeProcessorCtx procCtx, // result in number of rows getting more than the input rows in // which case stats need not be updated if (newNumRows <= joinRowCount) { - updateStats(stats, newNumRows, true, jop); + StatsUtils.updateStats(stats, newNumRows, true, jop); } } @@ -1960,7 +1959,7 @@ public Object process(Node nd, Stack stack, NodeProcessorCtx procCtx, aspCtx, jop.getSchema().getColumnNames(), jop, wcStats.getNumRows()); // update only the basic statistics in the absence of column statistics if (newNumRows <= joinRowCount) { - updateStats(wcStats, newNumRows, false, jop); + StatsUtils.updateStats(wcStats, newNumRows, false, jop); } } @@ -2582,7 +2581,7 @@ public Object process(Node nd, Stack stack, NodeProcessorCtx procCtx, // if limit is greater than available rows then do not update // statistics if (limit <= parentStats.getNumRows()) { - updateStats(stats, limit, true, lop); + StatsUtils.updateStats(stats, limit, true, lop); } stats = applyRuntimeStats(aspCtx.getParseContext().getContext(), stats, lop); lop.setStatistics(stats); @@ -2809,72 +2808,6 @@ public static NodeProcessor getDefaultRule() { return new DefaultStatsRule(); } - /** - * Update the basic statistics of the statistics object based on the row number - * @param stats - * - statistics to be updated - * @param newNumRows - * - new number of rows - * @param useColStats - * - use column statistics to compute data size - */ - static void updateStats(Statistics stats, long newNumRows, - boolean useColStats, Operator op) { - updateStats(stats, newNumRows, useColStats, op, Collections.EMPTY_SET); - } - - static void updateStats(Statistics stats, long newNumRows, - boolean useColStats, Operator op, - Set affectedColumns) { - - if (newNumRows < 0) { - LOG.debug("STATS-" + op.toString() + ": Overflow in number of rows. " - + newNumRows + " rows will be set to Long.MAX_VALUE"); - newNumRows = StatsUtils.getMaxIfOverflow(newNumRows); - } - if (newNumRows == 0) { - LOG.debug("STATS-" + op.toString() + ": Equals 0 in number of rows. " - + newNumRows + " rows will be set to 1"); - newNumRows = 1; - } - - long oldRowCount = stats.getNumRows(); - double ratio = (double) newNumRows / (double) oldRowCount; - stats.setNumRows(newNumRows); - - if (useColStats) { - List colStats = stats.getColumnStats(); - for (ColStatistics cs : colStats) { - long oldNumNulls = cs.getNumNulls(); - long oldDV = cs.getCountDistint(); - long newNumNulls = Math.round(ratio * oldNumNulls); - cs.setNumNulls(newNumNulls); - if (affectedColumns.contains(cs.getColumnName())) { - long newDV = oldDV; - - // if ratio is greater than 1, then number of rows increases. This can happen - // when some operators like GROUPBY duplicates the input rows in which case - // number of distincts should not change. Update the distinct count only when - // the output number of rows is less than input number of rows. - if (ratio <= 1.0) { - newDV = (long) Math.ceil(ratio * oldDV); - } - cs.setCountDistint(newDV); - oldDV = newDV; - } - if (oldDV > newNumRows) { - cs.setCountDistint(newNumRows); - } - } - stats.setColumnStats(colStats); - long newDataSize = StatsUtils.getDataSizeFromColumnStats(newNumRows, colStats); - stats.setDataSize(StatsUtils.getMaxIfOverflow(newDataSize)); - } else { - long newDataSize = (long) (ratio * stats.getDataSize()); - stats.setDataSize(StatsUtils.getMaxIfOverflow(newDataSize)); - } - } - static boolean satisfyPrecondition(Statistics stats) { return stats != null && stats.getBasicStatsState().equals(Statistics.State.COMPLETE) && !stats.getColumnStatsState().equals(Statistics.State.NONE); diff --git a/ql/src/java/org/apache/hadoop/hive/ql/parse/TezCompiler.java b/ql/src/java/org/apache/hadoop/hive/ql/parse/TezCompiler.java index 91d2f1f091..f689b28fed 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/parse/TezCompiler.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/parse/TezCompiler.java @@ -17,8 +17,11 @@ */ package org.apache.hadoop.hive.ql.parse; +import com.google.common.collect.Lists; +import com.google.common.collect.Sets; import java.io.Serializable; import java.util.ArrayList; +import java.util.Collection; import java.util.Deque; import java.util.HashMap; import java.util.HashSet; @@ -1368,8 +1371,7 @@ private static boolean canUseNDV(ColStatistics colStats) { } private static double getBloomFilterCost( - SelectOperator sel, - FilterOperator fil) { + SelectOperator sel) { double cost = -1; Statistics selStats = sel.getStatistics(); if (selStats != null) { @@ -1435,10 +1437,9 @@ private static long getCombinedKeyDomainCardinality( private static double getBloomFilterBenefit( SelectOperator sel, ExprNodeDesc selExpr, - FilterOperator fil, ExprNodeDesc tsExpr) { + Statistics filStats, ExprNodeDesc tsExpr) { double benefit = -1; Statistics selStats = sel.getStatistics(); - Statistics filStats = fil.getStatistics(); if (selStats == null || filStats == null) { LOG.debug("No stats available to compute BloomFilter benefit"); return benefit; @@ -1501,12 +1502,11 @@ private static double getBloomFilterBenefit( private static double computeBloomFilterNetBenefit( SelectOperator sel, ExprNodeDesc selExpr, - FilterOperator fil, ExprNodeDesc tsExpr) { + Statistics filStats, ExprNodeDesc tsExpr) { double netBenefit = -1; - double benefit = getBloomFilterBenefit(sel, selExpr, fil, tsExpr); - Statistics filStats = fil.getStatistics(); + double benefit = getBloomFilterBenefit(sel, selExpr, filStats, tsExpr); if (benefit > 0 && filStats != null) { - double cost = getBloomFilterCost(sel, fil); + double cost = getBloomFilterCost(sel); if (cost > 0) { long filDataSize = filStats.getNumRows(); netBenefit = (benefit - cost) / filDataSize; @@ -1522,47 +1522,152 @@ private static double computeBloomFilterNetBenefit( private void removeSemijoinOptimizationByBenefit(OptimizeTezProcContext procCtx) throws SemanticException { - List semijoinRsToRemove = new ArrayList<>(); Map map = procCtx.parseContext.getRsToSemiJoinBranchInfo(); + if (map.isEmpty()) { + // Nothing to do + return; + } + + // Scale down stats for tables with DPP + Map adjustedStatsMap = new HashMap<>(); + Map topOps = procCtx.parseContext.getTopOps(); + Collection> tableScanOps = + Lists.newArrayList(topOps.values()); + Set s = + OperatorUtils.findOperators(tableScanOps, AppMasterEventOperator.class); + for (AppMasterEventOperator eventOp : s) { + TableScanOperator tsOp = ((DynamicPruningEventDesc) eventOp.getConf()).getTableScan(); + if (tsOp.getChildOperators().get(0) instanceof FilterOperator) { + // If it was not a Filter operator, we do not have to scale them down, since we know + // that there will not be SJ edges targeting this TS operator + FilterOperator filterOperator = (FilterOperator) tsOp.getChildOperators().get(0); + Statistics filterStats = adjustedStatsMap.get(filterOperator); + if (filterStats == null && filterOperator.getStatistics() != null) { + filterStats = filterOperator.getStatistics().clone(); + } + if (filterStats != null) { + List partCols = tsOp.getConf().getTableMetadata().getPartColNames(); + for (String colName : partCols) { + ColStatistics partColStats = tsOp.getStatistics().getColumnStatisticsFromColName(colName); + long totalNumberParts = -1L; + if (canUseNDV(partColStats)) { + totalNumberParts = partColStats.getCountDistint(); + } + if (totalNumberParts == -1L) { + // Missing stats for column, move on + continue; + } + long numberPartsSelected = eventOp.getStatistics().getNumRows(); + long newNumRows = StatsUtils.safeMult(filterStats.getNumRows() / totalNumberParts, numberPartsSelected); + if (LOG.isDebugEnabled()) { + LOG.debug("Old stats for {}: {}", filterOperator, filterStats); + LOG.debug("Number of partitions selected: {}/{}", numberPartsSelected, totalNumberParts); + LOG.debug("Number of rows reduction: {}/{}", newNumRows, filterStats.getNumRows()); + } + StatsUtils.updateStats(filterStats, newNumRows, true, filterOperator, Sets.newHashSet(partCols)); + if (LOG.isDebugEnabled()) { + LOG.debug("New stats for {}: {}", filterOperator, filterStats); + } + adjustedStatsMap.put(filterOperator, filterStats); + } + } + } + } + + List semijoinRsToRemove = new ArrayList<>(); double semijoinReductionThreshold = procCtx.conf.getFloatVar( HiveConf.ConfVars.TEZ_DYNAMIC_SEMIJOIN_REDUCTION_THRESHOLD); - for (ReduceSinkOperator rs : map.keySet()) { - SemiJoinBranchInfo sjInfo = map.get(rs); - if (sjInfo.getIsHint() || !sjInfo.getShouldRemove()) { - // Semijoin created using hint or marked useful, skip it - continue; - } - // rs is semijoin optimization branch, which should look like -SEL-GB1-RS1-GB2-RS2 - // Get to the SelectOperator ancestor - SelectOperator sel = null; - for (Operator currOp = rs; currOp.getParentOperators().size() > 0; currOp = currOp.getParentOperators().get(0)) { - if (currOp instanceof SelectOperator) { - sel = (SelectOperator) currOp; - break; + List semiJoinRsOps = Lists.newArrayList(map.keySet()); + while (!semiJoinRsOps.isEmpty()) { + Map reductionFactorMap = new HashMap<>(); + List semiJoinRsOpsNewIter = new ArrayList<>(); + for (ReduceSinkOperator rs : semiJoinRsOps) { + SemiJoinBranchInfo sjInfo = map.get(rs); + if (sjInfo.getIsHint() || !sjInfo.getShouldRemove()) { + // Semijoin created using hint or marked useful, skip it + continue; + } + // rs is semijoin optimization branch, which should look like -SEL-GB1-RS1-GB2-RS2 + // Get to the SelectOperator ancestor + SelectOperator sel = null; + for (Operator currOp = rs; currOp.getParentOperators().size() > 0; currOp = currOp.getParentOperators().get(0)) { + if (currOp instanceof SelectOperator) { + sel = (SelectOperator) currOp; + break; + } + } + if (sel == null) { + throw new SemanticException("Unexpected error - could not find SEL ancestor from semijoin branch of " + rs); } - } - if (sel == null) { - throw new SemanticException("Unexpected error - could not find SEL ancestor from semijoin branch of " + rs); - } - // Check the ndv/rows from the SEL vs the destination tablescan the semijoin opt is going to. - TableScanOperator ts = sjInfo.getTsOp(); - RuntimeValuesInfo rti = procCtx.parseContext.getRsToRuntimeValuesInfoMap().get(rs); - ExprNodeDesc tsExpr = rti.getTsColExpr(); - // In the SEL operator of the semijoin branch, there should be only one column in the operator - ExprNodeDesc selExpr = sel.getConf().getColList().get(0); + // Check the ndv/rows from the SEL vs the destination tablescan the semijoin opt is going to. + TableScanOperator ts = sjInfo.getTsOp(); + RuntimeValuesInfo rti = procCtx.parseContext.getRsToRuntimeValuesInfoMap().get(rs); + ExprNodeDesc tsExpr = rti.getTsColExpr(); + // In the SEL operator of the semijoin branch, there should be only one column in the operator + ExprNodeDesc selExpr = sel.getConf().getColList().get(0); - if (LOG.isDebugEnabled()) { - LOG.debug("Computing BloomFilter cost/benefit for " + OperatorUtils.getOpNamePretty(rs) - + " - " + OperatorUtils.getOpNamePretty(ts) + " (" + tsExpr + ")"); + if (LOG.isDebugEnabled()) { + LOG.debug("Computing BloomFilter cost/benefit for " + OperatorUtils.getOpNamePretty(rs) + + " - " + OperatorUtils.getOpNamePretty(ts) + " (" + tsExpr + ")"); + } + + FilterOperator filterOperator = (FilterOperator) ts.getChildOperators().get(0); + Statistics filterStats = adjustedStatsMap.get(filterOperator); + if (filterStats == null && filterOperator.getStatistics() != null) { + filterStats = filterOperator.getStatistics().clone(); + adjustedStatsMap.put(filterOperator, filterStats); + } + double reductionFactor = computeBloomFilterNetBenefit( + sel, selExpr, filterStats, tsExpr); + if (reductionFactor < semijoinReductionThreshold) { + // This semijoin optimization should be removed. Do it after we're done iterating + semijoinRsToRemove.add(rs); + } else { + // This semijoin qualifies, add it to the result set + if (filterStats != null) { + String colName = ExprNodeDescUtils.getColumnExpr(tsExpr).getColumn(); + SemijoinOperatorInfo prevResult = reductionFactorMap.get(filterOperator); + if (prevResult != null) { + if (prevResult.reductionFactor < reductionFactor) { + reductionFactorMap.put(filterOperator, new SemijoinOperatorInfo(rs, filterOperator, + filterStats, colName, reductionFactor)); + semiJoinRsOpsNewIter.add(prevResult.rsOperator); + if (LOG.isDebugEnabled()) { + LOG.debug("Adding " + OperatorUtils.getOpNamePretty(prevResult.rsOperator) + + " for re-iteration"); + } + } else { + semiJoinRsOpsNewIter.add(rs); + if (LOG.isDebugEnabled()) { + LOG.debug("Adding " + OperatorUtils.getOpNamePretty(rs) + " for re-iteration"); + } + } + } else { + reductionFactorMap.put(filterOperator, new SemijoinOperatorInfo(rs, filterOperator, + filterStats, colName, reductionFactor)); + } + } + } } - double reductionFactor = computeBloomFilterNetBenefit(sel, selExpr, - (FilterOperator)ts.getChildOperators().get(0), tsExpr); - if (reductionFactor < semijoinReductionThreshold) { - // This semijoin optimization should be removed. Do it after we're done iterating - semijoinRsToRemove.add(rs); + for (SemijoinOperatorInfo roi : reductionFactorMap.values()) { + // This semijoin will be kept + // We are going to adjust the filter statistics + long newNumRows = (long) (1.0 - roi.reductionFactor) * roi.filterStats.getNumRows(); + if (LOG.isDebugEnabled()) { + LOG.debug("Old stats for {}: {}", roi.filterOperator, roi.filterStats); + LOG.debug("Number of rows reduction: {}/{}", newNumRows, roi.filterStats.getNumRows()); + } + StatsUtils.updateStats(roi.filterStats, newNumRows, + true, roi.filterOperator, Sets.newHashSet(roi.colName)); + if (LOG.isDebugEnabled()) { + LOG.debug("New stats for {}: {}", roi.filterOperator, roi.filterStats); + } + adjustedStatsMap.put(roi.filterOperator, roi.filterStats); } + + semiJoinRsOps = semiJoinRsOpsNewIter; } for (ReduceSinkOperator rs : semijoinRsToRemove) { @@ -1576,6 +1681,27 @@ private void removeSemijoinOptimizationByBenefit(OptimizeTezProcContext procCtx) } } + /** + * Internal class to encapsulate information needed to evaluate stats + * about a SJ that will be kept in the tree. + */ + private class SemijoinOperatorInfo { + final ReduceSinkOperator rsOperator; + final FilterOperator filterOperator; + final String colName; + final Statistics filterStats; + final double reductionFactor; + + private SemijoinOperatorInfo(ReduceSinkOperator rsOperator, FilterOperator filterOperator, + Statistics filterStats, String colName, double reductionFactor) { + this.rsOperator = rsOperator; + this.filterOperator = filterOperator; + this.colName = colName; + this.filterStats = filterStats; + this.reductionFactor = reductionFactor; + } + } + private void markSemiJoinForDPP(OptimizeTezProcContext procCtx) throws SemanticException { // Stores the Tablescan operators processed to avoid redoing them. diff --git a/ql/src/java/org/apache/hadoop/hive/ql/stats/StatsUtils.java b/ql/src/java/org/apache/hadoop/hive/ql/stats/StatsUtils.java index b7adc485a7..3d8e67b936 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/stats/StatsUtils.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/stats/StatsUtils.java @@ -49,6 +49,7 @@ import org.apache.hadoop.hive.metastore.utils.MetaStoreUtils; import org.apache.hadoop.hive.ql.exec.ColumnInfo; import org.apache.hadoop.hive.ql.exec.FunctionRegistry; +import org.apache.hadoop.hive.ql.exec.Operator; import org.apache.hadoop.hive.ql.exec.RowSchema; import org.apache.hadoop.hive.ql.exec.TableScanOperator; import org.apache.hadoop.hive.ql.exec.Utilities; @@ -68,6 +69,7 @@ import org.apache.hadoop.hive.ql.plan.ExprNodeDesc; import org.apache.hadoop.hive.ql.plan.ExprNodeFieldDesc; import org.apache.hadoop.hive.ql.plan.ExprNodeGenericFuncDesc; +import org.apache.hadoop.hive.ql.plan.OperatorDesc; import org.apache.hadoop.hive.ql.plan.Statistics; import org.apache.hadoop.hive.ql.plan.Statistics.State; import org.apache.hadoop.hive.ql.stats.BasicStats.Factory; @@ -1928,4 +1930,70 @@ public static boolean areColumnStatsUptoDateForQueryAnswering(Table table, Map op) { + updateStats(stats, newNumRows, useColStats, op, Collections.EMPTY_SET); + } + + public static void updateStats(Statistics stats, long newNumRows, + boolean useColStats, Operator op, + Set affectedColumns) { + + if (newNumRows < 0) { + LOG.debug("STATS-" + op.toString() + ": Overflow in number of rows. " + + newNumRows + " rows will be set to Long.MAX_VALUE"); + newNumRows = StatsUtils.getMaxIfOverflow(newNumRows); + } + if (newNumRows == 0) { + LOG.debug("STATS-" + op.toString() + ": Equals 0 in number of rows. " + + newNumRows + " rows will be set to 1"); + newNumRows = 1; + } + + long oldRowCount = stats.getNumRows(); + double ratio = (double) newNumRows / (double) oldRowCount; + stats.setNumRows(newNumRows); + + if (useColStats) { + List colStats = stats.getColumnStats(); + for (ColStatistics cs : colStats) { + long oldNumNulls = cs.getNumNulls(); + long oldDV = cs.getCountDistint(); + long newNumNulls = Math.round(ratio * oldNumNulls); + cs.setNumNulls(newNumNulls); + if (affectedColumns.contains(cs.getColumnName())) { + long newDV = oldDV; + + // if ratio is greater than 1, then number of rows increases. This can happen + // when some operators like GROUPBY duplicates the input rows in which case + // number of distincts should not change. Update the distinct count only when + // the output number of rows is less than input number of rows. + if (ratio <= 1.0) { + newDV = (long) Math.ceil(ratio * oldDV); + } + cs.setCountDistint(newDV); + oldDV = newDV; + } + if (oldDV > newNumRows) { + cs.setCountDistint(newNumRows); + } + } + stats.setColumnStats(colStats); + long newDataSize = StatsUtils.getDataSizeFromColumnStats(newNumRows, colStats); + stats.setDataSize(StatsUtils.getMaxIfOverflow(newDataSize)); + } else { + long newDataSize = (long) (ratio * stats.getDataSize()); + stats.setDataSize(StatsUtils.getMaxIfOverflow(newDataSize)); + } + } } diff --git a/ql/src/test/results/clientpositive/llap/dynamic_semijoin_reduction.q.out b/ql/src/test/results/clientpositive/llap/dynamic_semijoin_reduction.q.out index ff9d98c63e..940c03655b 100644 --- a/ql/src/test/results/clientpositive/llap/dynamic_semijoin_reduction.q.out +++ b/ql/src/test/results/clientpositive/llap/dynamic_semijoin_reduction.q.out @@ -766,12 +766,11 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Map 1 <- Reducer 6 (BROADCAST_EDGE) - Map 7 <- Reducer 4 (BROADCAST_EDGE), Reducer 6 (BROADCAST_EDGE) - Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 5 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) + Map 1 <- Reducer 5 (BROADCAST_EDGE) + Map 6 <- Reducer 5 (BROADCAST_EDGE) + Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 4 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) - Reducer 4 <- Map 1 (CUSTOM_SIMPLE_EDGE) - Reducer 6 <- Map 5 (CUSTOM_SIMPLE_EDGE) + Reducer 5 <- Map 4 (CUSTOM_SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -792,22 +791,9 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 2000 Data size: 174000 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: _col0 (type: string) - outputColumnNames: _col0 - Statistics: Num rows: 2000 Data size: 174000 Basic stats: COMPLETE Column stats: COMPLETE - Group By Operator - aggregations: min(_col0), max(_col0), bloom_filter(_col0, expectedEntries=316) - mode: hash - outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 1 Data size: 552 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - sort order: - Statistics: Num rows: 1 Data size: 552 Basic stats: COMPLETE Column stats: COMPLETE - value expressions: _col0 (type: string), _col1 (type: string), _col2 (type: binary) Execution mode: vectorized, llap LLAP IO: all inputs - Map 5 + Map 4 Map Operator Tree: TableScan alias: srcpart_small_n3 @@ -840,14 +826,14 @@ STAGE PLANS: value expressions: _col0 (type: string), _col1 (type: string), _col2 (type: binary) Execution mode: vectorized, llap LLAP IO: all inputs - Map 7 + Map 6 Map Operator Tree: TableScan alias: alltypesorc_int_n1 - filterExpr: (cstring is not null and (cstring BETWEEN DynamicValue(RS_9_srcpart_date_n7_key_min) AND DynamicValue(RS_9_srcpart_date_n7_key_max) and in_bloom_filter(cstring, DynamicValue(RS_9_srcpart_date_n7_key_bloom_filter))) and (cstring BETWEEN DynamicValue(RS_10_srcpart_small_n3_key1_min) AND DynamicValue(RS_10_srcpart_small_n3_key1_max) and in_bloom_filter(cstring, DynamicValue(RS_10_srcpart_small_n3_key1_bloom_filter)))) (type: boolean) + filterExpr: (cstring is not null and (cstring BETWEEN DynamicValue(RS_10_srcpart_small_n3_key1_min) AND DynamicValue(RS_10_srcpart_small_n3_key1_max) and in_bloom_filter(cstring, DynamicValue(RS_10_srcpart_small_n3_key1_bloom_filter)))) (type: boolean) Statistics: Num rows: 12288 Data size: 862450 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator - predicate: ((cstring BETWEEN DynamicValue(RS_10_srcpart_small_n3_key1_min) AND DynamicValue(RS_10_srcpart_small_n3_key1_max) and in_bloom_filter(cstring, DynamicValue(RS_10_srcpart_small_n3_key1_bloom_filter))) and (cstring BETWEEN DynamicValue(RS_9_srcpart_date_n7_key_min) AND DynamicValue(RS_9_srcpart_date_n7_key_max) and in_bloom_filter(cstring, DynamicValue(RS_9_srcpart_date_n7_key_bloom_filter))) and cstring is not null) (type: boolean) + predicate: ((cstring BETWEEN DynamicValue(RS_10_srcpart_small_n3_key1_min) AND DynamicValue(RS_10_srcpart_small_n3_key1_max) and in_bloom_filter(cstring, DynamicValue(RS_10_srcpart_small_n3_key1_bloom_filter))) and cstring is not null) (type: boolean) Statistics: Num rows: 9174 Data size: 643900 Basic stats: COMPLETE Column stats: COMPLETE Select Operator expressions: cstring (type: string) @@ -896,19 +882,7 @@ STAGE PLANS: input format: org.apache.hadoop.mapred.SequenceFileInputFormat output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe - Reducer 4 - Execution mode: vectorized, llap - Reduce Operator Tree: - Group By Operator - aggregations: min(VALUE._col0), max(VALUE._col1), bloom_filter(VALUE._col2, expectedEntries=316) - mode: final - outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 1 Data size: 552 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - sort order: - Statistics: Num rows: 1 Data size: 552 Basic stats: COMPLETE Column stats: COMPLETE - value expressions: _col0 (type: string), _col1 (type: string), _col2 (type: binary) - Reducer 6 + Reducer 5 Execution mode: vectorized, llap Reduce Operator Tree: Group By Operator @@ -1110,21 +1084,20 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Map 1 <- Reducer 5 (BROADCAST_EDGE), Reducer 6 (BROADCAST_EDGE) + Map 1 <- Reducer 5 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 4 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) Reducer 5 <- Map 4 (CUSTOM_SIMPLE_EDGE) - Reducer 6 <- Map 4 (CUSTOM_SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 Map Operator Tree: TableScan alias: srcpart_date_n7 - filterExpr: (key is not null and value is not null and (key BETWEEN DynamicValue(RS_7_srcpart_small_n3_key1_min) AND DynamicValue(RS_7_srcpart_small_n3_key1_max) and in_bloom_filter(key, DynamicValue(RS_7_srcpart_small_n3_key1_bloom_filter))) and (value BETWEEN DynamicValue(RS_7_srcpart_small_n3_value1_min) AND DynamicValue(RS_7_srcpart_small_n3_value1_max) and in_bloom_filter(value, DynamicValue(RS_7_srcpart_small_n3_value1_bloom_filter)))) (type: boolean) + filterExpr: (key is not null and value is not null and (key BETWEEN DynamicValue(RS_7_srcpart_small_n3_key1_min) AND DynamicValue(RS_7_srcpart_small_n3_key1_max) and in_bloom_filter(key, DynamicValue(RS_7_srcpart_small_n3_key1_bloom_filter)))) (type: boolean) Statistics: Num rows: 2000 Data size: 356000 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator - predicate: ((key BETWEEN DynamicValue(RS_7_srcpart_small_n3_key1_min) AND DynamicValue(RS_7_srcpart_small_n3_key1_max) and in_bloom_filter(key, DynamicValue(RS_7_srcpart_small_n3_key1_bloom_filter))) and (value BETWEEN DynamicValue(RS_7_srcpart_small_n3_value1_min) AND DynamicValue(RS_7_srcpart_small_n3_value1_max) and in_bloom_filter(value, DynamicValue(RS_7_srcpart_small_n3_value1_bloom_filter))) and key is not null and value is not null) (type: boolean) + predicate: ((key BETWEEN DynamicValue(RS_7_srcpart_small_n3_key1_min) AND DynamicValue(RS_7_srcpart_small_n3_key1_max) and in_bloom_filter(key, DynamicValue(RS_7_srcpart_small_n3_key1_bloom_filter))) and key is not null and value is not null) (type: boolean) Statistics: Num rows: 2000 Data size: 356000 Basic stats: COMPLETE Column stats: COMPLETE Select Operator expressions: key (type: string), value (type: string) @@ -1168,19 +1141,6 @@ STAGE PLANS: sort order: Statistics: Num rows: 1 Data size: 730 Basic stats: PARTIAL Column stats: PARTIAL value expressions: _col0 (type: string), _col1 (type: string), _col2 (type: binary) - Select Operator - expressions: _col1 (type: string) - outputColumnNames: _col0 - Statistics: Num rows: 20 Data size: 3560 Basic stats: PARTIAL Column stats: PARTIAL - Group By Operator - aggregations: min(_col0), max(_col0), bloom_filter(_col0, expectedEntries=20) - mode: hash - outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 1 Data size: 730 Basic stats: PARTIAL Column stats: PARTIAL - Reduce Output Operator - sort order: - Statistics: Num rows: 1 Data size: 730 Basic stats: PARTIAL Column stats: PARTIAL - value expressions: _col0 (type: string), _col1 (type: string), _col2 (type: binary) Execution mode: vectorized, llap LLAP IO: all inputs Reducer 2 @@ -1229,18 +1189,6 @@ STAGE PLANS: sort order: Statistics: Num rows: 1 Data size: 730 Basic stats: PARTIAL Column stats: PARTIAL value expressions: _col0 (type: string), _col1 (type: string), _col2 (type: binary) - Reducer 6 - Execution mode: vectorized, llap - Reduce Operator Tree: - Group By Operator - aggregations: min(VALUE._col0), max(VALUE._col1), bloom_filter(VALUE._col2, expectedEntries=20) - mode: final - outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 1 Data size: 730 Basic stats: PARTIAL Column stats: PARTIAL - Reduce Output Operator - sort order: - Statistics: Num rows: 1 Data size: 730 Basic stats: PARTIAL Column stats: PARTIAL - value expressions: _col0 (type: string), _col1 (type: string), _col2 (type: binary) Stage: Stage-0 Fetch Operator diff --git a/ql/src/test/results/clientpositive/llap/dynamic_semijoin_reduction_4.q.out b/ql/src/test/results/clientpositive/llap/dynamic_semijoin_reduction_4.q.out index cc1c06da63..2f58017df8 100644 --- a/ql/src/test/results/clientpositive/llap/dynamic_semijoin_reduction_4.q.out +++ b/ql/src/test/results/clientpositive/llap/dynamic_semijoin_reduction_4.q.out @@ -456,21 +456,20 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Map 1 <- Reducer 5 (BROADCAST_EDGE), Reducer 7 (BROADCAST_EDGE) - Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 4 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) + Map 1 <- Reducer 6 (BROADCAST_EDGE) + Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 4 (SIMPLE_EDGE), Map 5 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) - Reducer 5 <- Map 4 (CUSTOM_SIMPLE_EDGE) - Reducer 7 <- Map 6 (CUSTOM_SIMPLE_EDGE) + Reducer 6 <- Map 5 (CUSTOM_SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 Map Operator Tree: TableScan alias: srcpart_date_n1 - filterExpr: (key is not null and (key BETWEEN DynamicValue(RS_10_srcpart_medium_n0_key2_min) AND DynamicValue(RS_10_srcpart_medium_n0_key2_max) and in_bloom_filter(key, DynamicValue(RS_10_srcpart_medium_n0_key2_bloom_filter))) and (key BETWEEN DynamicValue(RS_11_srcpart_small_n0_key1_min) AND DynamicValue(RS_11_srcpart_small_n0_key1_max) and in_bloom_filter(key, DynamicValue(RS_11_srcpart_small_n0_key1_bloom_filter)))) (type: boolean) + filterExpr: (key is not null and (key BETWEEN DynamicValue(RS_11_srcpart_small_n0_key1_min) AND DynamicValue(RS_11_srcpart_small_n0_key1_max) and in_bloom_filter(key, DynamicValue(RS_11_srcpart_small_n0_key1_bloom_filter)))) (type: boolean) Statistics: Num rows: 2000 Data size: 174000 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator - predicate: ((key BETWEEN DynamicValue(RS_10_srcpart_medium_n0_key2_min) AND DynamicValue(RS_10_srcpart_medium_n0_key2_max) and in_bloom_filter(key, DynamicValue(RS_10_srcpart_medium_n0_key2_bloom_filter))) and (key BETWEEN DynamicValue(RS_11_srcpart_small_n0_key1_min) AND DynamicValue(RS_11_srcpart_small_n0_key1_max) and in_bloom_filter(key, DynamicValue(RS_11_srcpart_small_n0_key1_bloom_filter))) and key is not null) (type: boolean) + predicate: ((key BETWEEN DynamicValue(RS_11_srcpart_small_n0_key1_min) AND DynamicValue(RS_11_srcpart_small_n0_key1_max) and in_bloom_filter(key, DynamicValue(RS_11_srcpart_small_n0_key1_bloom_filter))) and key is not null) (type: boolean) Statistics: Num rows: 2000 Data size: 174000 Basic stats: COMPLETE Column stats: COMPLETE Select Operator expressions: key (type: string) @@ -501,22 +500,9 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 50 Data size: 4350 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: _col0 (type: string) - outputColumnNames: _col0 - Statistics: Num rows: 50 Data size: 4350 Basic stats: COMPLETE Column stats: COMPLETE - Group By Operator - aggregations: min(_col0), max(_col0), bloom_filter(_col0, expectedEntries=49) - mode: hash - outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 1 Data size: 552 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - sort order: - Statistics: Num rows: 1 Data size: 552 Basic stats: COMPLETE Column stats: COMPLETE - value expressions: _col0 (type: string), _col1 (type: string), _col2 (type: binary) Execution mode: vectorized, llap LLAP IO: all inputs - Map 6 + Map 5 Map Operator Tree: TableScan alias: srcpart_small_n0 @@ -585,19 +571,7 @@ STAGE PLANS: input format: org.apache.hadoop.mapred.SequenceFileInputFormat output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe - Reducer 5 - Execution mode: vectorized, llap - Reduce Operator Tree: - Group By Operator - aggregations: min(VALUE._col0), max(VALUE._col1), bloom_filter(VALUE._col2, expectedEntries=49) - mode: final - outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 1 Data size: 552 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - sort order: - Statistics: Num rows: 1 Data size: 552 Basic stats: COMPLETE Column stats: COMPLETE - value expressions: _col0 (type: string), _col1 (type: string), _col2 (type: binary) - Reducer 7 + Reducer 6 Execution mode: vectorized, llap Reduce Operator Tree: Group By Operator diff --git a/ql/src/test/results/clientpositive/llap/dynamic_semijoin_reduction_sw.q.out b/ql/src/test/results/clientpositive/llap/dynamic_semijoin_reduction_sw.q.out index bd7fcbd795..3abf9bfcca 100644 --- a/ql/src/test/results/clientpositive/llap/dynamic_semijoin_reduction_sw.q.out +++ b/ql/src/test/results/clientpositive/llap/dynamic_semijoin_reduction_sw.q.out @@ -208,18 +208,15 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Map 1 <- Reducer 7 (BROADCAST_EDGE) - Map 10 <- Reducer 5 (BROADCAST_EDGE), Reducer 7 (BROADCAST_EDGE) - Map 11 <- Reducer 9 (BROADCAST_EDGE) - Map 13 <- Reducer 12 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) - Reducer 12 <- Map 11 (CUSTOM_SIMPLE_EDGE) - Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 10 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (XPROD_EDGE), Reducer 8 (XPROD_EDGE) + Map 1 <- Reducer 6 (BROADCAST_EDGE) + Map 10 <- Reducer 8 (BROADCAST_EDGE) + Map 9 <- Reducer 6 (BROADCAST_EDGE) + Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 5 (SIMPLE_EDGE), Map 9 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (XPROD_EDGE), Reducer 7 (XPROD_EDGE) Reducer 4 <- Reducer 3 (CUSTOM_SIMPLE_EDGE) - Reducer 5 <- Map 1 (CUSTOM_SIMPLE_EDGE) - Reducer 7 <- Map 6 (CUSTOM_SIMPLE_EDGE) - Reducer 8 <- Map 11 (SIMPLE_EDGE), Map 13 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) - Reducer 9 <- Map 6 (CUSTOM_SIMPLE_EDGE) + Reducer 6 <- Map 5 (CUSTOM_SIMPLE_EDGE) + Reducer 7 <- Map 10 (SIMPLE_EDGE), Map 5 (SIMPLE_EDGE), Map 9 (SIMPLE_EDGE) + Reducer 8 <- Map 5 (CUSTOM_SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -240,42 +237,9 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 1000 Data size: 87000 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: _col0 (type: string) - outputColumnNames: _col0 - Statistics: Num rows: 1000 Data size: 87000 Basic stats: COMPLETE Column stats: COMPLETE - Group By Operator - aggregations: min(_col0), max(_col0), bloom_filter(_col0, expectedEntries=316) - mode: hash - outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 1 Data size: 552 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - sort order: - Statistics: Num rows: 1 Data size: 552 Basic stats: COMPLETE Column stats: COMPLETE - value expressions: _col0 (type: string), _col1 (type: string), _col2 (type: binary) Execution mode: vectorized, llap LLAP IO: all inputs Map 10 - Map Operator Tree: - TableScan - alias: alltypesorc_int_n0 - filterExpr: (cstring is not null and (cstring BETWEEN DynamicValue(RS_23_srcpart_date_n6_key_min) AND DynamicValue(RS_23_srcpart_date_n6_key_max) and in_bloom_filter(cstring, DynamicValue(RS_23_srcpart_date_n6_key_bloom_filter))) and (cstring BETWEEN DynamicValue(RS_24_srcpart_small_n2_key1_min) AND DynamicValue(RS_24_srcpart_small_n2_key1_max) and in_bloom_filter(cstring, DynamicValue(RS_24_srcpart_small_n2_key1_bloom_filter)))) (type: boolean) - Statistics: Num rows: 12288 Data size: 862450 Basic stats: COMPLETE Column stats: COMPLETE - Filter Operator - predicate: ((cstring BETWEEN DynamicValue(RS_23_srcpart_date_n6_key_min) AND DynamicValue(RS_23_srcpart_date_n6_key_max) and in_bloom_filter(cstring, DynamicValue(RS_23_srcpart_date_n6_key_bloom_filter))) and (cstring BETWEEN DynamicValue(RS_24_srcpart_small_n2_key1_min) AND DynamicValue(RS_24_srcpart_small_n2_key1_max) and in_bloom_filter(cstring, DynamicValue(RS_24_srcpart_small_n2_key1_bloom_filter))) and cstring is not null) (type: boolean) - Statistics: Num rows: 9174 Data size: 643900 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: cstring (type: string) - outputColumnNames: _col0 - Statistics: Num rows: 9174 Data size: 643900 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - key expressions: _col0 (type: string) - sort order: + - Map-reduce partition columns: _col0 (type: string) - Statistics: Num rows: 9174 Data size: 643900 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: vectorized, llap - LLAP IO: all inputs - Map 11 Map Operator Tree: TableScan alias: srcpart_date_n6 @@ -293,42 +257,9 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 1000 Data size: 87000 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: _col0 (type: string) - outputColumnNames: _col0 - Statistics: Num rows: 1000 Data size: 87000 Basic stats: COMPLETE Column stats: COMPLETE - Group By Operator - aggregations: min(_col0), max(_col0), bloom_filter(_col0, expectedEntries=316) - mode: hash - outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 1 Data size: 552 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - sort order: - Statistics: Num rows: 1 Data size: 552 Basic stats: COMPLETE Column stats: COMPLETE - value expressions: _col0 (type: string), _col1 (type: string), _col2 (type: binary) - Execution mode: vectorized, llap - LLAP IO: all inputs - Map 13 - Map Operator Tree: - TableScan - alias: alltypesorc_int_n0 - filterExpr: (cstring is not null and (cstring BETWEEN DynamicValue(RS_18_srcpart_date_n6_key_min) AND DynamicValue(RS_18_srcpart_date_n6_key_max) and in_bloom_filter(cstring, DynamicValue(RS_18_srcpart_date_n6_key_bloom_filter))) and (cstring BETWEEN DynamicValue(RS_19_srcpart_small_n2_key1_min) AND DynamicValue(RS_19_srcpart_small_n2_key1_max) and in_bloom_filter(cstring, DynamicValue(RS_19_srcpart_small_n2_key1_bloom_filter)))) (type: boolean) - Statistics: Num rows: 12288 Data size: 862450 Basic stats: COMPLETE Column stats: COMPLETE - Filter Operator - predicate: ((cstring BETWEEN DynamicValue(RS_18_srcpart_date_n6_key_min) AND DynamicValue(RS_18_srcpart_date_n6_key_max) and in_bloom_filter(cstring, DynamicValue(RS_18_srcpart_date_n6_key_bloom_filter))) and (cstring BETWEEN DynamicValue(RS_19_srcpart_small_n2_key1_min) AND DynamicValue(RS_19_srcpart_small_n2_key1_max) and in_bloom_filter(cstring, DynamicValue(RS_19_srcpart_small_n2_key1_bloom_filter))) and cstring is not null) (type: boolean) - Statistics: Num rows: 9174 Data size: 643900 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: cstring (type: string) - outputColumnNames: _col0 - Statistics: Num rows: 9174 Data size: 643900 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - key expressions: _col0 (type: string) - sort order: + - Map-reduce partition columns: _col0 (type: string) - Statistics: Num rows: 9174 Data size: 643900 Basic stats: COMPLETE Column stats: COMPLETE Execution mode: vectorized, llap LLAP IO: all inputs - Map 6 + Map 5 Map Operator Tree: TableScan alias: srcpart_small_n2 @@ -379,18 +310,31 @@ STAGE PLANS: value expressions: _col0 (type: string), _col1 (type: string), _col2 (type: binary) Execution mode: vectorized, llap LLAP IO: all inputs - Reducer 12 + Map 9 + Map Operator Tree: + TableScan + alias: alltypesorc_int_n0 + filterExpr: (cstring is not null and (cstring BETWEEN DynamicValue(RS_24_srcpart_small_n2_key1_min) AND DynamicValue(RS_24_srcpart_small_n2_key1_max) and in_bloom_filter(cstring, DynamicValue(RS_24_srcpart_small_n2_key1_bloom_filter)))) (type: boolean) + Statistics: Num rows: 12288 Data size: 862450 Basic stats: COMPLETE Column stats: COMPLETE + Filter Operator + predicate: ((cstring BETWEEN DynamicValue(RS_24_srcpart_small_n2_key1_min) AND DynamicValue(RS_24_srcpart_small_n2_key1_max) and in_bloom_filter(cstring, DynamicValue(RS_24_srcpart_small_n2_key1_bloom_filter))) and cstring is not null) (type: boolean) + Statistics: Num rows: 9174 Data size: 643900 Basic stats: COMPLETE Column stats: COMPLETE + Select Operator + expressions: cstring (type: string) + outputColumnNames: _col0 + Statistics: Num rows: 9174 Data size: 643900 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + key expressions: _col0 (type: string) + sort order: + + Map-reduce partition columns: _col0 (type: string) + Statistics: Num rows: 9174 Data size: 643900 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + key expressions: _col0 (type: string) + sort order: + + Map-reduce partition columns: _col0 (type: string) + Statistics: Num rows: 9174 Data size: 643900 Basic stats: COMPLETE Column stats: COMPLETE Execution mode: vectorized, llap - Reduce Operator Tree: - Group By Operator - aggregations: min(VALUE._col0), max(VALUE._col1), bloom_filter(VALUE._col2, expectedEntries=316) - mode: final - outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 1 Data size: 552 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - sort order: - Statistics: Num rows: 1 Data size: 552 Basic stats: COMPLETE Column stats: COMPLETE - value expressions: _col0 (type: string), _col1 (type: string), _col2 (type: binary) + LLAP IO: all inputs Reducer 2 Execution mode: llap Reduce Operator Tree: @@ -440,19 +384,7 @@ STAGE PLANS: input format: org.apache.hadoop.mapred.SequenceFileInputFormat output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe - Reducer 5 - Execution mode: vectorized, llap - Reduce Operator Tree: - Group By Operator - aggregations: min(VALUE._col0), max(VALUE._col1), bloom_filter(VALUE._col2, expectedEntries=316) - mode: final - outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 1 Data size: 552 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - sort order: - Statistics: Num rows: 1 Data size: 552 Basic stats: COMPLETE Column stats: COMPLETE - value expressions: _col0 (type: string), _col1 (type: string), _col2 (type: binary) - Reducer 7 + Reducer 6 Execution mode: vectorized, llap Reduce Operator Tree: Group By Operator @@ -468,7 +400,7 @@ STAGE PLANS: sort order: Statistics: Num rows: 1 Data size: 639 Basic stats: PARTIAL Column stats: COMPLETE value expressions: _col0 (type: string), _col1 (type: string), _col2 (type: binary) - Reducer 8 + Reducer 7 Execution mode: llap Reduce Operator Tree: Merge Join Operator @@ -483,7 +415,7 @@ STAGE PLANS: Reduce Output Operator sort order: Statistics: Num rows: 20182 Data size: 1416580 Basic stats: PARTIAL Column stats: NONE - Reducer 9 + Reducer 8 Execution mode: vectorized, llap Reduce Operator Tree: Group By Operator @@ -495,10 +427,6 @@ STAGE PLANS: sort order: Statistics: Num rows: 1 Data size: 639 Basic stats: PARTIAL Column stats: COMPLETE value expressions: _col0 (type: string), _col1 (type: string), _col2 (type: binary) - Reduce Output Operator - sort order: - Statistics: Num rows: 1 Data size: 639 Basic stats: PARTIAL Column stats: COMPLETE - value expressions: _col0 (type: string), _col1 (type: string), _col2 (type: binary) Stage: Stage-0 Fetch Operator diff --git a/ql/src/test/results/clientpositive/llap/dynamic_semijoin_reduction_sw2.q.out b/ql/src/test/results/clientpositive/llap/dynamic_semijoin_reduction_sw2.q.out index abcbd9727a..6e2ee32ddd 100644 --- a/ql/src/test/results/clientpositive/llap/dynamic_semijoin_reduction_sw2.q.out +++ b/ql/src/test/results/clientpositive/llap/dynamic_semijoin_reduction_sw2.q.out @@ -195,25 +195,23 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Map 1 <- Reducer 6 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) - Map 11 <- Reducer 10 (BROADCAST_EDGE), Reducer 6 (BROADCAST_EDGE) - Reducer 10 <- Map 7 (CUSTOM_SIMPLE_EDGE) + Map 1 <- Reducer 8 (BROADCAST_EDGE) + Map 9 <- Reducer 8 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 5 (SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (ONE_TO_ONE_EDGE), Reducer 8 (ONE_TO_ONE_EDGE) + Reducer 3 <- Reducer 2 (ONE_TO_ONE_EDGE), Reducer 7 (ONE_TO_ONE_EDGE) Reducer 4 <- Reducer 3 (CUSTOM_SIMPLE_EDGE) - Reducer 6 <- Map 5 (CUSTOM_SIMPLE_EDGE) - Reducer 8 <- Map 11 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) - Reducer 9 <- Reducer 8 (CUSTOM_SIMPLE_EDGE) + Reducer 7 <- Map 6 (SIMPLE_EDGE), Map 9 (SIMPLE_EDGE) + Reducer 8 <- Map 6 (CUSTOM_SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 Map Operator Tree: TableScan alias: srcpart_date_n6 - filterExpr: (key is not null and (key BETWEEN DynamicValue(RS_20_srcpart_small_n2_key1_min) AND DynamicValue(RS_20_srcpart_small_n2_key1_max) and in_bloom_filter(key, DynamicValue(RS_20_srcpart_small_n2_key1_bloom_filter))) and (key BETWEEN DynamicValue(RS_25_alltypesorc_int_n0_cstring_min) AND DynamicValue(RS_25_alltypesorc_int_n0_cstring_max) and in_bloom_filter(key, DynamicValue(RS_25_alltypesorc_int_n0_cstring_bloom_filter)))) (type: boolean) + filterExpr: (key is not null and (key BETWEEN DynamicValue(RS_12_alltypesorc_int_n0_cstring_min) AND DynamicValue(RS_12_alltypesorc_int_n0_cstring_max) and in_bloom_filter(key, DynamicValue(RS_12_alltypesorc_int_n0_cstring_bloom_filter)))) (type: boolean) Statistics: Num rows: 1000 Data size: 87000 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator - predicate: ((key BETWEEN DynamicValue(RS_20_srcpart_small_n2_key1_min) AND DynamicValue(RS_20_srcpart_small_n2_key1_max) and in_bloom_filter(key, DynamicValue(RS_20_srcpart_small_n2_key1_bloom_filter))) and (key BETWEEN DynamicValue(RS_25_alltypesorc_int_n0_cstring_min) AND DynamicValue(RS_25_alltypesorc_int_n0_cstring_max) and in_bloom_filter(key, DynamicValue(RS_25_alltypesorc_int_n0_cstring_bloom_filter))) and key is not null) (type: boolean) + predicate: ((key BETWEEN DynamicValue(RS_12_alltypesorc_int_n0_cstring_min) AND DynamicValue(RS_12_alltypesorc_int_n0_cstring_max) and in_bloom_filter(key, DynamicValue(RS_12_alltypesorc_int_n0_cstring_bloom_filter))) and key is not null) (type: boolean) Statistics: Num rows: 1000 Data size: 87000 Basic stats: COMPLETE Column stats: COMPLETE Select Operator expressions: key (type: string) @@ -226,26 +224,6 @@ STAGE PLANS: Statistics: Num rows: 1000 Data size: 87000 Basic stats: COMPLETE Column stats: COMPLETE Execution mode: vectorized, llap LLAP IO: all inputs - Map 11 - Map Operator Tree: - TableScan - alias: srcpart_small_n2 - filterExpr: (key1 is not null and (key1 BETWEEN DynamicValue(RS_12_alltypesorc_int_n0_cstring_min) AND DynamicValue(RS_12_alltypesorc_int_n0_cstring_max) and in_bloom_filter(key1, DynamicValue(RS_12_alltypesorc_int_n0_cstring_bloom_filter))) and (key1 BETWEEN DynamicValue(RS_20_srcpart_small_n2_key1_min) AND DynamicValue(RS_20_srcpart_small_n2_key1_max) and in_bloom_filter(key1, DynamicValue(RS_20_srcpart_small_n2_key1_bloom_filter)))) (type: boolean) - Statistics: Num rows: 20 Data size: 1740 Basic stats: PARTIAL Column stats: PARTIAL - Filter Operator - predicate: ((key1 BETWEEN DynamicValue(RS_12_alltypesorc_int_n0_cstring_min) AND DynamicValue(RS_12_alltypesorc_int_n0_cstring_max) and in_bloom_filter(key1, DynamicValue(RS_12_alltypesorc_int_n0_cstring_bloom_filter))) and (key1 BETWEEN DynamicValue(RS_20_srcpart_small_n2_key1_min) AND DynamicValue(RS_20_srcpart_small_n2_key1_max) and in_bloom_filter(key1, DynamicValue(RS_20_srcpart_small_n2_key1_bloom_filter))) and key1 is not null) (type: boolean) - Statistics: Num rows: 20 Data size: 1740 Basic stats: PARTIAL Column stats: PARTIAL - Select Operator - expressions: key1 (type: string) - outputColumnNames: _col0 - Statistics: Num rows: 20 Data size: 1740 Basic stats: PARTIAL Column stats: PARTIAL - Reduce Output Operator - key expressions: _col0 (type: string) - sort order: + - Map-reduce partition columns: _col0 (type: string) - Statistics: Num rows: 20 Data size: 1740 Basic stats: PARTIAL Column stats: PARTIAL - Execution mode: vectorized, llap - LLAP IO: all inputs Map 5 Map Operator Tree: TableScan @@ -264,22 +242,9 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 1 Data size: 87 Basic stats: PARTIAL Column stats: COMPLETE - Select Operator - expressions: _col0 (type: string) - outputColumnNames: _col0 - Statistics: Num rows: 1 Data size: 87 Basic stats: PARTIAL Column stats: COMPLETE - Group By Operator - aggregations: min(_col0), max(_col0), bloom_filter(_col0, expectedEntries=1) - mode: hash - outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 1 Data size: 639 Basic stats: PARTIAL Column stats: COMPLETE - Reduce Output Operator - sort order: - Statistics: Num rows: 1 Data size: 639 Basic stats: PARTIAL Column stats: COMPLETE - value expressions: _col0 (type: string), _col1 (type: string), _col2 (type: binary) Execution mode: vectorized, llap LLAP IO: all inputs - Map 7 + Map 6 Map Operator Tree: TableScan alias: alltypesorc_int_n0 @@ -312,18 +277,26 @@ STAGE PLANS: value expressions: _col0 (type: string), _col1 (type: string), _col2 (type: binary) Execution mode: vectorized, llap LLAP IO: all inputs - Reducer 10 + Map 9 + Map Operator Tree: + TableScan + alias: srcpart_small_n2 + filterExpr: (key1 is not null and (key1 BETWEEN DynamicValue(RS_12_alltypesorc_int_n0_cstring_min) AND DynamicValue(RS_12_alltypesorc_int_n0_cstring_max) and in_bloom_filter(key1, DynamicValue(RS_12_alltypesorc_int_n0_cstring_bloom_filter)))) (type: boolean) + Statistics: Num rows: 20 Data size: 1740 Basic stats: PARTIAL Column stats: PARTIAL + Filter Operator + predicate: ((key1 BETWEEN DynamicValue(RS_12_alltypesorc_int_n0_cstring_min) AND DynamicValue(RS_12_alltypesorc_int_n0_cstring_max) and in_bloom_filter(key1, DynamicValue(RS_12_alltypesorc_int_n0_cstring_bloom_filter))) and key1 is not null) (type: boolean) + Statistics: Num rows: 20 Data size: 1740 Basic stats: PARTIAL Column stats: PARTIAL + Select Operator + expressions: key1 (type: string) + outputColumnNames: _col0 + Statistics: Num rows: 20 Data size: 1740 Basic stats: PARTIAL Column stats: PARTIAL + Reduce Output Operator + key expressions: _col0 (type: string) + sort order: + + Map-reduce partition columns: _col0 (type: string) + Statistics: Num rows: 20 Data size: 1740 Basic stats: PARTIAL Column stats: PARTIAL Execution mode: vectorized, llap - Reduce Operator Tree: - Group By Operator - aggregations: min(VALUE._col0), max(VALUE._col1), bloom_filter(VALUE._col2, expectedEntries=1) - mode: final - outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 1 Data size: 552 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - sort order: - Statistics: Num rows: 1 Data size: 552 Basic stats: COMPLETE Column stats: COMPLETE - value expressions: _col0 (type: string), _col1 (type: string), _col2 (type: binary) + LLAP IO: all inputs Reducer 2 Execution mode: llap Reduce Operator Tree: @@ -374,23 +347,7 @@ STAGE PLANS: input format: org.apache.hadoop.mapred.SequenceFileInputFormat output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe - Reducer 6 - Execution mode: vectorized, llap - Reduce Operator Tree: - Group By Operator - aggregations: min(VALUE._col0), max(VALUE._col1), bloom_filter(VALUE._col2, expectedEntries=1) - mode: final - outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 1 Data size: 639 Basic stats: PARTIAL Column stats: COMPLETE - Reduce Output Operator - sort order: - Statistics: Num rows: 1 Data size: 639 Basic stats: PARTIAL Column stats: COMPLETE - value expressions: _col0 (type: string), _col1 (type: string), _col2 (type: binary) - Reduce Output Operator - sort order: - Statistics: Num rows: 1 Data size: 639 Basic stats: PARTIAL Column stats: COMPLETE - value expressions: _col0 (type: string), _col1 (type: string), _col2 (type: binary) - Reducer 8 + Reducer 7 Execution mode: llap Reduce Operator Tree: Merge Join Operator @@ -406,30 +363,21 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col1 (type: string) Statistics: Num rows: 22 Data size: 1914 Basic stats: PARTIAL Column stats: NONE - Select Operator - expressions: _col1 (type: string) - outputColumnNames: _col0 - Statistics: Num rows: 22 Data size: 1914 Basic stats: PARTIAL Column stats: NONE - Group By Operator - aggregations: min(_col0), max(_col0), bloom_filter(_col0, expectedEntries=22) - mode: hash - outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 1 Data size: 552 Basic stats: PARTIAL Column stats: NONE - Reduce Output Operator - sort order: - Statistics: Num rows: 1 Data size: 552 Basic stats: PARTIAL Column stats: NONE - value expressions: _col0 (type: string), _col1 (type: string), _col2 (type: binary) - Reducer 9 + Reducer 8 Execution mode: vectorized, llap Reduce Operator Tree: Group By Operator - aggregations: min(VALUE._col0), max(VALUE._col1), bloom_filter(VALUE._col2, expectedEntries=22) + aggregations: min(VALUE._col0), max(VALUE._col1), bloom_filter(VALUE._col2, expectedEntries=1) mode: final outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 1 Data size: 552 Basic stats: PARTIAL Column stats: NONE + Statistics: Num rows: 1 Data size: 552 Basic stats: COMPLETE Column stats: COMPLETE Reduce Output Operator sort order: - Statistics: Num rows: 1 Data size: 552 Basic stats: PARTIAL Column stats: NONE + Statistics: Num rows: 1 Data size: 552 Basic stats: COMPLETE Column stats: COMPLETE + value expressions: _col0 (type: string), _col1 (type: string), _col2 (type: binary) + Reduce Output Operator + sort order: + Statistics: Num rows: 1 Data size: 552 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col0 (type: string), _col1 (type: string), _col2 (type: binary) Stage: Stage-0 diff --git a/ql/src/test/results/clientpositive/llap/dynamic_semijoin_user_level.q.out b/ql/src/test/results/clientpositive/llap/dynamic_semijoin_user_level.q.out index bc9e6fb083..19e57d2ee8 100644 --- a/ql/src/test/results/clientpositive/llap/dynamic_semijoin_user_level.q.out +++ b/ql/src/test/results/clientpositive/llap/dynamic_semijoin_user_level.q.out @@ -429,12 +429,11 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 6 (BROADCAST_EDGE) -Map 7 <- Reducer 4 (BROADCAST_EDGE), Reducer 6 (BROADCAST_EDGE) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 5 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) +Map 1 <- Reducer 5 (BROADCAST_EDGE) +Map 6 <- Reducer 5 (BROADCAST_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 4 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) -Reducer 4 <- Map 1 (CUSTOM_SIMPLE_EDGE) -Reducer 6 <- Map 5 (CUSTOM_SIMPLE_EDGE) +Reducer 5 <- Map 4 (CUSTOM_SIMPLE_EDGE) Stage-0 Fetch Operator @@ -450,8 +449,17 @@ Stage-0 Output:["_col0"],aggregations:["count()"] Merge Join Operator [MERGEJOIN_46] (rows=20182 width=70) Conds:RS_9._col0=RS_10._col0(Inner),RS_10._col0=RS_11._col0(Inner) + <-Map 4 [SIMPLE_EDGE] llap + PARTITION_ONLY_SHUFFLE [RS_10] + PartitionCols:_col0 + Select Operator [SEL_5] (rows=20 width=87) + Output:["_col0"] + Filter Operator [FIL_26] (rows=20 width=87) + predicate:key1 is not null + TableScan [TS_3] (rows=20 width=87) + default@srcpart_small_n4,srcpart_small_n4,Tbl:PARTIAL,Col:PARTIAL,Output:["key1"] <-Map 1 [SIMPLE_EDGE] llap - PARTITION_ONLY_SHUFFLE [RS_9] + SHUFFLE [RS_9] PartitionCols:_col0 Select Operator [SEL_2] (rows=2000 width=87) Output:["_col0"] @@ -459,49 +467,29 @@ Stage-0 predicate:((key BETWEEN DynamicValue(RS_10_srcpart_small_n4_key1_min) AND DynamicValue(RS_10_srcpart_small_n4_key1_max) and in_bloom_filter(key, DynamicValue(RS_10_srcpart_small_n4_key1_bloom_filter))) and key is not null) TableScan [TS_0] (rows=2000 width=87) default@srcpart_date_n9,srcpart_date_n9,Tbl:COMPLETE,Col:COMPLETE,Output:["key"] - <-Reducer 6 [BROADCAST_EDGE] llap + <-Reducer 5 [BROADCAST_EDGE] llap BROADCAST [RS_32] Group By Operator [GBY_31] (rows=1 width=639) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=20)"] - <-Map 5 [CUSTOM_SIMPLE_EDGE] llap + <-Map 4 [CUSTOM_SIMPLE_EDGE] llap PARTITION_ONLY_SHUFFLE [RS_30] Group By Operator [GBY_29] (rows=1 width=639) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=20)"] Select Operator [SEL_28] (rows=20 width=87) Output:["_col0"] - Select Operator [SEL_5] (rows=20 width=87) - Output:["_col0"] - Filter Operator [FIL_26] (rows=20 width=87) - predicate:key1 is not null - TableScan [TS_3] (rows=20 width=87) - default@srcpart_small_n4,srcpart_small_n4,Tbl:PARTIAL,Col:PARTIAL,Output:["key1"] - <-Map 5 [SIMPLE_EDGE] llap - PARTITION_ONLY_SHUFFLE [RS_10] - PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_5] - <-Map 7 [SIMPLE_EDGE] llap + Please refer to the previous Select Operator [SEL_5] + <-Map 6 [SIMPLE_EDGE] llap SHUFFLE [RS_11] PartitionCols:_col0 Select Operator [SEL_8] (rows=9174 width=70) Output:["_col0"] Filter Operator [FIL_27] (rows=9174 width=70) - predicate:((cstring BETWEEN DynamicValue(RS_10_srcpart_small_n4_key1_min) AND DynamicValue(RS_10_srcpart_small_n4_key1_max) and in_bloom_filter(cstring, DynamicValue(RS_10_srcpart_small_n4_key1_bloom_filter))) and (cstring BETWEEN DynamicValue(RS_9_srcpart_date_n9_key_min) AND DynamicValue(RS_9_srcpart_date_n9_key_max) and in_bloom_filter(cstring, DynamicValue(RS_9_srcpart_date_n9_key_bloom_filter))) and cstring is not null) + predicate:((cstring BETWEEN DynamicValue(RS_10_srcpart_small_n4_key1_min) AND DynamicValue(RS_10_srcpart_small_n4_key1_max) and in_bloom_filter(cstring, DynamicValue(RS_10_srcpart_small_n4_key1_bloom_filter))) and cstring is not null) TableScan [TS_6] (rows=12288 width=70) default@alltypesorc_int_n2,alltypesorc_int_n2,Tbl:COMPLETE,Col:COMPLETE,Output:["cstring"] - <-Reducer 6 [BROADCAST_EDGE] llap + <-Reducer 5 [BROADCAST_EDGE] llap BROADCAST [RS_45] Please refer to the previous Group By Operator [GBY_31] - <-Reducer 4 [BROADCAST_EDGE] llap - BROADCAST [RS_44] - Group By Operator [GBY_41] (rows=1 width=552) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=316)"] - <-Map 1 [CUSTOM_SIMPLE_EDGE] llap - PARTITION_ONLY_SHUFFLE [RS_40] - Group By Operator [GBY_39] (rows=1 width=552) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=316)"] - Select Operator [SEL_38] (rows=2000 width=87) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_2] PREHOOK: query: select count(*) from srcpart_date_n9 join srcpart_small_n4 on (srcpart_date_n9.key = srcpart_small_n4.key1) join alltypesorc_int_n2 on (srcpart_small_n4.key1 = alltypesorc_int_n2.cstring) PREHOOK: type: QUERY @@ -621,11 +609,10 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 5 (BROADCAST_EDGE), Reducer 6 (BROADCAST_EDGE) +Map 1 <- Reducer 5 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 4 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) Reducer 5 <- Map 4 (CUSTOM_SIMPLE_EDGE) -Reducer 6 <- Map 4 (CUSTOM_SIMPLE_EDGE) Stage-0 Fetch Operator @@ -656,21 +643,10 @@ Stage-0 Select Operator [SEL_2] (rows=2000 width=178) Output:["_col0","_col1"] Filter Operator [FIL_17] (rows=2000 width=178) - predicate:((key BETWEEN DynamicValue(RS_7_srcpart_small_n4_key1_min) AND DynamicValue(RS_7_srcpart_small_n4_key1_max) and in_bloom_filter(key, DynamicValue(RS_7_srcpart_small_n4_key1_bloom_filter))) and (value BETWEEN DynamicValue(RS_7_srcpart_small_n4_value1_min) AND DynamicValue(RS_7_srcpart_small_n4_value1_max) and in_bloom_filter(value, DynamicValue(RS_7_srcpart_small_n4_value1_bloom_filter))) and key is not null and value is not null) + predicate:((value BETWEEN DynamicValue(RS_7_srcpart_small_n4_value1_min) AND DynamicValue(RS_7_srcpart_small_n4_value1_max) and in_bloom_filter(value, DynamicValue(RS_7_srcpart_small_n4_value1_bloom_filter))) and key is not null and value is not null) TableScan [TS_0] (rows=2000 width=178) default@srcpart_date_n9,srcpart_date_n9,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] <-Reducer 5 [BROADCAST_EDGE] llap - BROADCAST [RS_23] - Group By Operator [GBY_22] (rows=1 width=730) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=20)"] - <-Map 4 [CUSTOM_SIMPLE_EDGE] llap - PARTITION_ONLY_SHUFFLE [RS_21] - Group By Operator [GBY_20] (rows=1 width=730) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=20)"] - Select Operator [SEL_19] (rows=20 width=178) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_5] - <-Reducer 6 [BROADCAST_EDGE] llap BROADCAST [RS_28] Group By Operator [GBY_27] (rows=1 width=730) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=20)"] diff --git a/ql/src/test/results/clientpositive/llap/vectorized_dynamic_semijoin_reduction.q.out b/ql/src/test/results/clientpositive/llap/vectorized_dynamic_semijoin_reduction.q.out index 89986fbb30..3b4fc6ce3e 100644 --- a/ql/src/test/results/clientpositive/llap/vectorized_dynamic_semijoin_reduction.q.out +++ b/ql/src/test/results/clientpositive/llap/vectorized_dynamic_semijoin_reduction.q.out @@ -776,18 +776,17 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Map 1 <- Reducer 5 (BROADCAST_EDGE), Reducer 7 (BROADCAST_EDGE) - Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 4 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) + Map 1 <- Reducer 6 (BROADCAST_EDGE) + Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 4 (SIMPLE_EDGE), Map 5 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) - Reducer 5 <- Map 4 (CUSTOM_SIMPLE_EDGE) - Reducer 7 <- Map 6 (CUSTOM_SIMPLE_EDGE) + Reducer 6 <- Map 5 (CUSTOM_SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 Map Operator Tree: TableScan alias: a - filterExpr: (key_int is not null and (key_int BETWEEN DynamicValue(RS_10_b_key_int_min) AND DynamicValue(RS_10_b_key_int_max) and in_bloom_filter(key_int, DynamicValue(RS_10_b_key_int_bloom_filter))) and (key_int BETWEEN DynamicValue(RS_11_c_key_int_min) AND DynamicValue(RS_11_c_key_int_max) and in_bloom_filter(key_int, DynamicValue(RS_11_c_key_int_bloom_filter)))) (type: boolean) + filterExpr: (key_int is not null and (key_int BETWEEN DynamicValue(RS_11_c_key_int_min) AND DynamicValue(RS_11_c_key_int_max) and in_bloom_filter(key_int, DynamicValue(RS_11_c_key_int_bloom_filter)))) (type: boolean) Statistics: Num rows: 500 Data size: 1904 Basic stats: COMPLETE Column stats: NONE TableScan Vectorization: native: true @@ -795,8 +794,8 @@ STAGE PLANS: Filter Vectorization: className: VectorFilterOperator native: true - predicateExpression: FilterExprAndExpr(children: SelectColumnIsNotNull(col 1:int), FilterExprAndExpr(children: FilterLongColumnBetweenDynamicValue(col 1:int, left 0, right 0), VectorInBloomFilterColDynamicValue), FilterExprAndExpr(children: FilterLongColumnBetweenDynamicValue(col 1:int, left 0, right 0), VectorInBloomFilterColDynamicValue)) - predicate: ((key_int BETWEEN DynamicValue(RS_10_b_key_int_min) AND DynamicValue(RS_10_b_key_int_max) and in_bloom_filter(key_int, DynamicValue(RS_10_b_key_int_bloom_filter))) and (key_int BETWEEN DynamicValue(RS_11_c_key_int_min) AND DynamicValue(RS_11_c_key_int_max) and in_bloom_filter(key_int, DynamicValue(RS_11_c_key_int_bloom_filter))) and key_int is not null) (type: boolean) + predicateExpression: FilterExprAndExpr(children: SelectColumnIsNotNull(col 1:int), FilterExprAndExpr(children: FilterLongColumnBetweenDynamicValue(col 1:int, left 0, right 0), VectorInBloomFilterColDynamicValue)) + predicate: ((key_int BETWEEN DynamicValue(RS_11_c_key_int_min) AND DynamicValue(RS_11_c_key_int_max) and in_bloom_filter(key_int, DynamicValue(RS_11_c_key_int_bloom_filter))) and key_int is not null) (type: boolean) Statistics: Num rows: 475 Data size: 1808 Basic stats: COMPLETE Column stats: NONE Select Operator expressions: key_int (type: int) @@ -858,34 +857,6 @@ STAGE PLANS: native: true nativeConditionsMet: hive.vectorized.execution.reducesink.new.enabled IS true, hive.execution.engine tez IN [tez, spark] IS true, No PTF TopN IS true, No DISTINCT columns IS true, BinarySortableSerDe for keys IS true, LazyBinarySerDe for values IS true Statistics: Num rows: 55 Data size: 216 Basic stats: COMPLETE Column stats: NONE - Select Operator - expressions: _col0 (type: int) - outputColumnNames: _col0 - Select Vectorization: - className: VectorSelectOperator - native: true - projectedOutputColumnNums: [1] - Statistics: Num rows: 55 Data size: 216 Basic stats: COMPLETE Column stats: NONE - Group By Operator - aggregations: min(_col0), max(_col0), bloom_filter(_col0, expectedEntries=55) - Group By Vectorization: - aggregators: VectorUDAFMinLong(col 1:int) -> int, VectorUDAFMaxLong(col 1:int) -> int, VectorUDAFBloomFilter(col 1:int) -> binary - className: VectorGroupByOperator - groupByMode: HASH - native: false - vectorProcessingMode: HASH - projectedOutputColumnNums: [0, 1, 2] - mode: hash - outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 1 Data size: 16 Basic stats: COMPLETE Column stats: NONE - Reduce Output Operator - sort order: - Reduce Sink Vectorization: - className: VectorReduceSinkEmptyKeyOperator - native: true - nativeConditionsMet: hive.vectorized.execution.reducesink.new.enabled IS true, hive.execution.engine tez IN [tez, spark] IS true, No PTF TopN IS true, No DISTINCT columns IS true, BinarySortableSerDe for keys IS true, LazyBinarySerDe for values IS true - Statistics: Num rows: 1 Data size: 16 Basic stats: COMPLETE Column stats: NONE - value expressions: _col0 (type: int), _col1 (type: int), _col2 (type: binary) Execution mode: vectorized, llap LLAP IO: all inputs Map Vectorization: @@ -894,10 +865,10 @@ STAGE PLANS: inputFormatFeatureSupport: [DECIMAL_64] featureSupportInUse: [DECIMAL_64] inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat - allNative: false + allNative: true usesVectorUDFAdaptor: false vectorized: true - Map 6 + Map 5 Map Operator Tree: TableScan alias: c @@ -1023,36 +994,7 @@ STAGE PLANS: input format: org.apache.hadoop.mapred.SequenceFileInputFormat output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe - Reducer 5 - Execution mode: vectorized, llap - Reduce Vectorization: - enabled: true - enableConditionsMet: hive.vectorized.execution.reduce.enabled IS true, hive.execution.engine tez IN [tez, spark] IS true - allNative: false - usesVectorUDFAdaptor: false - vectorized: true - Reduce Operator Tree: - Group By Operator - aggregations: min(VALUE._col0), max(VALUE._col1), bloom_filter(VALUE._col2, expectedEntries=55) - Group By Vectorization: - aggregators: VectorUDAFMinLong(col 0:int) -> int, VectorUDAFMaxLong(col 1:int) -> int, VectorUDAFBloomFilterMerge(col 2:binary) -> binary - className: VectorGroupByOperator - groupByMode: FINAL - native: false - vectorProcessingMode: STREAMING - projectedOutputColumnNums: [0, 1, 2] - mode: final - outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 1 Data size: 16 Basic stats: COMPLETE Column stats: NONE - Reduce Output Operator - sort order: - Reduce Sink Vectorization: - className: VectorReduceSinkEmptyKeyOperator - native: true - nativeConditionsMet: hive.vectorized.execution.reducesink.new.enabled IS true, hive.execution.engine tez IN [tez, spark] IS true, No PTF TopN IS true, No DISTINCT columns IS true, BinarySortableSerDe for keys IS true, LazyBinarySerDe for values IS true - Statistics: Num rows: 1 Data size: 16 Basic stats: COMPLETE Column stats: NONE - value expressions: _col0 (type: int), _col1 (type: int), _col2 (type: binary) - Reducer 7 + Reducer 6 Execution mode: vectorized, llap Reduce Vectorization: enabled: true @@ -1122,18 +1064,17 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Map 1 <- Reducer 5 (BROADCAST_EDGE), Reducer 6 (BROADCAST_EDGE) + Map 1 <- Reducer 5 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 4 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) Reducer 5 <- Map 4 (CUSTOM_SIMPLE_EDGE) - Reducer 6 <- Map 4 (CUSTOM_SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 Map Operator Tree: TableScan alias: a - filterExpr: (key_str is not null and key_int is not null and (key_str BETWEEN DynamicValue(RS_7_b_key_str_min) AND DynamicValue(RS_7_b_key_str_max) and in_bloom_filter(key_str, DynamicValue(RS_7_b_key_str_bloom_filter))) and (key_int BETWEEN DynamicValue(RS_7_b_key_int_min) AND DynamicValue(RS_7_b_key_int_max) and in_bloom_filter(key_int, DynamicValue(RS_7_b_key_int_bloom_filter)))) (type: boolean) + filterExpr: (key_str is not null and key_int is not null and (key_int BETWEEN DynamicValue(RS_7_b_key_int_min) AND DynamicValue(RS_7_b_key_int_max) and in_bloom_filter(key_int, DynamicValue(RS_7_b_key_int_bloom_filter)))) (type: boolean) Statistics: Num rows: 500 Data size: 89488 Basic stats: COMPLETE Column stats: NONE TableScan Vectorization: native: true @@ -1141,8 +1082,8 @@ STAGE PLANS: Filter Vectorization: className: VectorFilterOperator native: true - predicateExpression: FilterExprAndExpr(children: SelectColumnIsNotNull(col 0:string), SelectColumnIsNotNull(col 1:int), FilterExprAndExpr(children: FilterStringColumnBetweenDynamicValue(col 0:string, left NULL, right NULL), VectorInBloomFilterColDynamicValue), FilterExprAndExpr(children: FilterLongColumnBetweenDynamicValue(col 1:int, left 0, right 0), VectorInBloomFilterColDynamicValue)) - predicate: ((key_int BETWEEN DynamicValue(RS_7_b_key_int_min) AND DynamicValue(RS_7_b_key_int_max) and in_bloom_filter(key_int, DynamicValue(RS_7_b_key_int_bloom_filter))) and (key_str BETWEEN DynamicValue(RS_7_b_key_str_min) AND DynamicValue(RS_7_b_key_str_max) and in_bloom_filter(key_str, DynamicValue(RS_7_b_key_str_bloom_filter))) and key_int is not null and key_str is not null) (type: boolean) + predicateExpression: FilterExprAndExpr(children: SelectColumnIsNotNull(col 0:string), SelectColumnIsNotNull(col 1:int), FilterExprAndExpr(children: FilterLongColumnBetweenDynamicValue(col 1:int, left 0, right 0), VectorInBloomFilterColDynamicValue)) + predicate: ((key_int BETWEEN DynamicValue(RS_7_b_key_int_min) AND DynamicValue(RS_7_b_key_int_max) and in_bloom_filter(key_int, DynamicValue(RS_7_b_key_int_bloom_filter))) and key_int is not null and key_str is not null) (type: boolean) Statistics: Num rows: 450 Data size: 80539 Basic stats: COMPLETE Column stats: NONE Select Operator expressions: key_str (type: string), key_int (type: int) @@ -1204,34 +1145,6 @@ STAGE PLANS: native: true nativeConditionsMet: hive.vectorized.execution.reducesink.new.enabled IS true, hive.execution.engine tez IN [tez, spark] IS true, No PTF TopN IS true, No DISTINCT columns IS true, BinarySortableSerDe for keys IS true, LazyBinarySerDe for values IS true Statistics: Num rows: 53 Data size: 9789 Basic stats: COMPLETE Column stats: NONE - Select Operator - expressions: _col0 (type: string) - outputColumnNames: _col0 - Select Vectorization: - className: VectorSelectOperator - native: true - projectedOutputColumnNums: [0] - Statistics: Num rows: 53 Data size: 9789 Basic stats: COMPLETE Column stats: NONE - Group By Operator - aggregations: min(_col0), max(_col0), bloom_filter(_col0, expectedEntries=53) - Group By Vectorization: - aggregators: VectorUDAFMinString(col 0:string) -> string, VectorUDAFMaxString(col 0:string) -> string, VectorUDAFBloomFilter(col 0:string) -> binary - className: VectorGroupByOperator - groupByMode: HASH - native: false - vectorProcessingMode: HASH - projectedOutputColumnNums: [0, 1, 2] - mode: hash - outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 1 Data size: 740 Basic stats: COMPLETE Column stats: NONE - Reduce Output Operator - sort order: - Reduce Sink Vectorization: - className: VectorReduceSinkEmptyKeyOperator - native: true - nativeConditionsMet: hive.vectorized.execution.reducesink.new.enabled IS true, hive.execution.engine tez IN [tez, spark] IS true, No PTF TopN IS true, No DISTINCT columns IS true, BinarySortableSerDe for keys IS true, LazyBinarySerDe for values IS true - Statistics: Num rows: 1 Data size: 740 Basic stats: COMPLETE Column stats: NONE - value expressions: _col0 (type: string), _col1 (type: string), _col2 (type: binary) Select Operator expressions: _col1 (type: int) outputColumnNames: _col0 @@ -1325,35 +1238,6 @@ STAGE PLANS: output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe Reducer 5 - Execution mode: vectorized, llap - Reduce Vectorization: - enabled: true - enableConditionsMet: hive.vectorized.execution.reduce.enabled IS true, hive.execution.engine tez IN [tez, spark] IS true - allNative: false - usesVectorUDFAdaptor: false - vectorized: true - Reduce Operator Tree: - Group By Operator - aggregations: min(VALUE._col0), max(VALUE._col1), bloom_filter(VALUE._col2, expectedEntries=53) - Group By Vectorization: - aggregators: VectorUDAFMinString(col 0:string) -> string, VectorUDAFMaxString(col 1:string) -> string, VectorUDAFBloomFilterMerge(col 2:binary) -> binary - className: VectorGroupByOperator - groupByMode: FINAL - native: false - vectorProcessingMode: STREAMING - projectedOutputColumnNums: [0, 1, 2] - mode: final - outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 1 Data size: 740 Basic stats: COMPLETE Column stats: NONE - Reduce Output Operator - sort order: - Reduce Sink Vectorization: - className: VectorReduceSinkEmptyKeyOperator - native: true - nativeConditionsMet: hive.vectorized.execution.reducesink.new.enabled IS true, hive.execution.engine tez IN [tez, spark] IS true, No PTF TopN IS true, No DISTINCT columns IS true, BinarySortableSerDe for keys IS true, LazyBinarySerDe for values IS true - Statistics: Num rows: 1 Data size: 740 Basic stats: COMPLETE Column stats: NONE - value expressions: _col0 (type: string), _col1 (type: string), _col2 (type: binary) - Reducer 6 Execution mode: vectorized, llap Reduce Vectorization: enabled: true diff --git a/ql/src/test/results/clientpositive/perf/tez/cbo_query23.q.out b/ql/src/test/results/clientpositive/perf/tez/cbo_query23.q.out index ace7cf5b79..2faffdcc13 100644 --- a/ql/src/test/results/clientpositive/perf/tez/cbo_query23.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/cbo_query23.q.out @@ -1,7 +1,7 @@ -Warning: Shuffle Join MERGEJOIN[593][tables = [$hdt$_1, $hdt$_2]] in Stage 'Reducer 29' is a cross product -Warning: Shuffle Join MERGEJOIN[594][tables = [$hdt$_1, $hdt$_2, $hdt$_0]] in Stage 'Reducer 30' is a cross product -Warning: Shuffle Join MERGEJOIN[596][tables = [$hdt$_1, $hdt$_2]] in Stage 'Reducer 33' is a cross product -Warning: Shuffle Join MERGEJOIN[597][tables = [$hdt$_1, $hdt$_2, $hdt$_0]] in Stage 'Reducer 34' is a cross product +Warning: Shuffle Join MERGEJOIN[593][tables = [$hdt$_1, $hdt$_2]] in Stage 'Reducer 27' is a cross product +Warning: Shuffle Join MERGEJOIN[594][tables = [$hdt$_1, $hdt$_2, $hdt$_0]] in Stage 'Reducer 28' is a cross product +Warning: Shuffle Join MERGEJOIN[596][tables = [$hdt$_1, $hdt$_2]] in Stage 'Reducer 31' is a cross product +Warning: Shuffle Join MERGEJOIN[597][tables = [$hdt$_1, $hdt$_2, $hdt$_0]] in Stage 'Reducer 32' 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 diff --git a/ql/src/test/results/clientpositive/perf/tez/cbo_query54.q.out b/ql/src/test/results/clientpositive/perf/tez/cbo_query54.q.out index eaf25363b1..6ba189b2f5 100644 --- a/ql/src/test/results/clientpositive/perf/tez/cbo_query54.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/cbo_query54.q.out @@ -1,6 +1,6 @@ Warning: Shuffle Join MERGEJOIN[271][tables = [$hdt$_0, $hdt$_1, $hdt$_2, $hdt$_3]] in Stage 'Reducer 4' is a cross product Warning: Shuffle Join MERGEJOIN[272][tables = [$hdt$_0, $hdt$_1, $hdt$_2, $hdt$_3, $hdt$_4]] in Stage 'Reducer 5' is a cross product -Warning: Shuffle Join MERGEJOIN[270][tables = [$hdt$_1, $hdt$_2]] in Stage 'Reducer 32' is a cross product +Warning: Shuffle Join MERGEJOIN[270][tables = [$hdt$_1, $hdt$_2]] in Stage 'Reducer 31' is a cross product Warning: Shuffle Join MERGEJOIN[273][tables = [$hdt$_1, $hdt$_2, $hdt$_0]] in Stage 'Reducer 6' is a cross product PREHOOK: query: explain cbo with my_customers as ( diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query54.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query54.q.out index 1cf3ce4074..1ed200a96c 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query54.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/cbo_query54.q.out @@ -1,6 +1,6 @@ Warning: Shuffle Join MERGEJOIN[270][tables = [$hdt$_0, $hdt$_1, $hdt$_2, $hdt$_3]] in Stage 'Reducer 4' is a cross product Warning: Shuffle Join MERGEJOIN[271][tables = [$hdt$_0, $hdt$_1, $hdt$_2, $hdt$_3, $hdt$_4]] in Stage 'Reducer 5' is a cross product -Warning: Shuffle Join MERGEJOIN[269][tables = [$hdt$_1, $hdt$_2]] in Stage 'Reducer 32' is a cross product +Warning: Shuffle Join MERGEJOIN[269][tables = [$hdt$_1, $hdt$_2]] in Stage 'Reducer 31' is a cross product Warning: Shuffle Join MERGEJOIN[272][tables = [$hdt$_1, $hdt$_2, $hdt$_0]] in Stage 'Reducer 6' is a cross product PREHOOK: query: explain cbo with my_customers as ( diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query10.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query10.q.out index 3fbd92878e..bdd5a8024f 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query10.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query10.q.out @@ -133,24 +133,21 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 14 <- Reducer 11 (BROADCAST_EDGE), Reducer 17 (BROADCAST_EDGE) -Map 24 <- Reducer 10 (BROADCAST_EDGE), Reducer 20 (BROADCAST_EDGE) -Map 25 <- Reducer 23 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) +Map 13 <- Reducer 16 (BROADCAST_EDGE) +Map 21 <- Reducer 10 (BROADCAST_EDGE) +Map 22 <- Reducer 9 (BROADCAST_EDGE) Reducer 10 <- Reducer 4 (CUSTOM_SIMPLE_EDGE) -Reducer 11 <- Reducer 3 (CUSTOM_SIMPLE_EDGE) -Reducer 15 <- Map 14 (SIMPLE_EDGE), Map 16 (SIMPLE_EDGE) -Reducer 17 <- Map 16 (CUSTOM_SIMPLE_EDGE) -Reducer 18 <- Map 16 (SIMPLE_EDGE), Map 24 (SIMPLE_EDGE) -Reducer 19 <- Reducer 18 (SIMPLE_EDGE) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 12 (SIMPLE_EDGE) -Reducer 20 <- Map 16 (CUSTOM_SIMPLE_EDGE) -Reducer 21 <- Map 16 (SIMPLE_EDGE), Map 25 (SIMPLE_EDGE) -Reducer 22 <- Reducer 21 (SIMPLE_EDGE) -Reducer 23 <- Map 16 (CUSTOM_SIMPLE_EDGE) -Reducer 3 <- Map 13 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Reducer 15 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Reducer 19 (ONE_TO_ONE_EDGE), Reducer 4 (ONE_TO_ONE_EDGE) -Reducer 6 <- Reducer 22 (ONE_TO_ONE_EDGE), Reducer 5 (ONE_TO_ONE_EDGE) +Reducer 14 <- Map 13 (SIMPLE_EDGE), Map 15 (SIMPLE_EDGE) +Reducer 16 <- Map 15 (CUSTOM_SIMPLE_EDGE) +Reducer 17 <- Map 15 (SIMPLE_EDGE), Map 21 (SIMPLE_EDGE) +Reducer 18 <- Reducer 17 (SIMPLE_EDGE) +Reducer 19 <- Map 15 (SIMPLE_EDGE), Map 22 (SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 11 (SIMPLE_EDGE) +Reducer 20 <- Reducer 19 (SIMPLE_EDGE) +Reducer 3 <- Map 12 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 4 <- Reducer 14 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 5 <- Reducer 18 (ONE_TO_ONE_EDGE), Reducer 4 (ONE_TO_ONE_EDGE) +Reducer 6 <- Reducer 20 (ONE_TO_ONE_EDGE), Reducer 5 (ONE_TO_ONE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) Reducer 8 <- Reducer 7 (SIMPLE_EDGE) Reducer 9 <- Reducer 5 (CUSTOM_SIMPLE_EDGE) @@ -160,16 +157,16 @@ Stage-0 limit:100 Stage-1 Reducer 8 vectorized - File Output Operator [FS_235] - Limit [LIM_234] (rows=1 width=419) + File Output Operator [FS_223] + Limit [LIM_222] (rows=1 width=419) Number of rows:100 - Select Operator [SEL_233] (rows=1 width=419) + Select Operator [SEL_221] (rows=1 width=419) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13"] <-Reducer 7 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_232] - Select Operator [SEL_231] (rows=1 width=419) + SHUFFLE [RS_220] + Select Operator [SEL_219] (rows=1 width=419) Output:["_col0","_col1","_col2","_col3","_col4","_col6","_col8","_col10","_col12"] - Group By Operator [GBY_230] (rows=1 width=379) + Group By Operator [GBY_218] (rows=1 width=379) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4, KEY._col5, KEY._col6, KEY._col7 <-Reducer 6 [SIMPLE_EDGE] SHUFFLE [RS_66] @@ -183,23 +180,61 @@ Stage-0 Filter Operator [FIL_63] (rows=58 width=379) predicate:(_col15 is not null or _col17 is not null) Merge Join Operator [MERGEJOIN_180] (rows=58 width=379) - Conds:RS_60._col0=RS_229._col0(Left Outer),Output:["_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col15","_col17"] + Conds:RS_60._col0=RS_217._col0(Left Outer),Output:["_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col15","_col17"] <-Reducer 5 [ONE_TO_ONE_EDGE] PARTITION_ONLY_SHUFFLE [RS_60] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_179] (rows=58 width=379) - Conds:RS_57._col0=RS_219._col0(Left Outer),Output:["_col0","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col15"] + Conds:RS_57._col0=RS_209._col0(Left Outer),Output:["_col0","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col15"] <-Reducer 4 [ONE_TO_ONE_EDGE] FORWARD [RS_57] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_178] (rows=7792 width=375) Conds:RS_54._col0=RS_55._col0(Left Semi),Output:["_col0","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13"] + <-Reducer 14 [SIMPLE_EDGE] + SHUFFLE [RS_55] + PartitionCols:_col0 + Group By Operator [GBY_53] (rows=155827 width=2) + Output:["_col0"],keys:_col0 + Select Operator [SEL_17] (rows=57825495 width=2) + Output:["_col0"] + Merge Join Operator [MERGEJOIN_175] (rows=57825495 width=2) + Conds:RS_201._col0=RS_191._col0(Inner),Output:["_col1"] + <-Map 15 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_191] + PartitionCols:_col0 + Select Operator [SEL_190] (rows=201 width=4) + Output:["_col0"] + Filter Operator [FIL_189] (rows=201 width=12) + predicate:((d_year = 2002) and d_moy BETWEEN 4 AND 7) + TableScan [TS_11] (rows=73049 width=12) + default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] + <-Map 13 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_201] + PartitionCols:_col0 + Select Operator [SEL_200] (rows=525327388 width=7) + Output:["_col0","_col1"] + Filter Operator [FIL_199] (rows=525327388 width=7) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_15_date_dim_d_date_sk_min) AND DynamicValue(RS_15_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_15_date_dim_d_date_sk_bloom_filter))) and ss_customer_sk is not null and ss_sold_date_sk is not null) + TableScan [TS_8] (rows=575995635 width=7) + default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_customer_sk"] + <-Reducer 16 [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 15 [CUSTOM_SIMPLE_EDGE] vectorized + SHUFFLE [RS_196] + Group By Operator [GBY_195] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_192] (rows=201 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_190] <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_54] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_174] (rows=3914656 width=375) Conds:RS_49._col1=RS_188._col0(Inner),Output:["_col0","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13"] - <-Map 13 [SIMPLE_EDGE] vectorized + <-Map 12 [SIMPLE_EDGE] vectorized SHUFFLE [RS_188] PartitionCols:_col0 Select Operator [SEL_187] (rows=1861800 width=375) @@ -220,7 +255,7 @@ Stage-0 predicate:(c_current_addr_sk is not null and c_current_cdemo_sk is not null) TableScan [TS_0] (rows=80000000 width=11) default@customer,c,Tbl:COMPLETE,Col:COMPLETE,Output:["c_customer_sk","c_current_cdemo_sk","c_current_addr_sk"] - <-Map 12 [SIMPLE_EDGE] vectorized + <-Map 11 [SIMPLE_EDGE] vectorized SHUFFLE [RS_186] PartitionCols:_col0 Select Operator [SEL_185] (rows=2000000 width=102) @@ -229,85 +264,36 @@ Stage-0 predicate:(ca_county) IN ('Walker County', 'Richland County', 'Gaines County', 'Douglas County', 'Dona Ana County') TableScan [TS_3] (rows=40000000 width=102) default@customer_address,ca,Tbl:COMPLETE,Col:COMPLETE,Output:["ca_address_sk","ca_county"] - <-Reducer 15 [SIMPLE_EDGE] - SHUFFLE [RS_55] - PartitionCols:_col0 - Group By Operator [GBY_53] (rows=155827 width=2) - Output:["_col0"],keys:_col0 - Select Operator [SEL_17] (rows=57825495 width=2) - Output:["_col0"] - Merge Join Operator [MERGEJOIN_175] (rows=57825495 width=2) - Conds:RS_209._col0=RS_191._col0(Inner),Output:["_col1"] - <-Map 16 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_191] - PartitionCols:_col0 - Select Operator [SEL_190] (rows=201 width=4) - Output:["_col0"] - Filter Operator [FIL_189] (rows=201 width=12) - predicate:((d_year = 2002) and d_moy BETWEEN 4 AND 7) - TableScan [TS_11] (rows=73049 width=12) - default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] - <-Map 14 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_209] - PartitionCols:_col0 - Select Operator [SEL_208] (rows=525327388 width=7) - Output:["_col0","_col1"] - Filter Operator [FIL_207] (rows=525327388 width=7) - predicate:((ss_customer_sk BETWEEN DynamicValue(RS_54_c_c_customer_sk_min) AND DynamicValue(RS_54_c_c_customer_sk_max) and in_bloom_filter(ss_customer_sk, DynamicValue(RS_54_c_c_customer_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_15_date_dim_d_date_sk_min) AND DynamicValue(RS_15_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_15_date_dim_d_date_sk_bloom_filter))) and ss_customer_sk is not null and ss_sold_date_sk is not null) - TableScan [TS_8] (rows=575995635 width=7) - default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_customer_sk"] - <-Reducer 11 [BROADCAST_EDGE] vectorized - BROADCAST [RS_206] - Group By Operator [GBY_205] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=3647763)"] - <-Reducer 3 [CUSTOM_SIMPLE_EDGE] - SHUFFLE [RS_135] - Group By Operator [GBY_134] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=3647763)"] - Select Operator [SEL_133] (rows=3914656 width=4) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_174] - <-Reducer 17 [BROADCAST_EDGE] vectorized - BROADCAST [RS_204] - Group By Operator [GBY_203] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 16 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_200] - Group By Operator [GBY_197] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_192] (rows=201 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_190] - <-Reducer 19 [ONE_TO_ONE_EDGE] vectorized - FORWARD [RS_219] + <-Reducer 18 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_209] PartitionCols:_col0 - Select Operator [SEL_218] (rows=155827 width=7) + Select Operator [SEL_208] (rows=155827 width=7) Output:["_col0","_col1"] - Group By Operator [GBY_217] (rows=155827 width=3) + Group By Operator [GBY_207] (rows=155827 width=3) Output:["_col0"],keys:KEY._col0 - <-Reducer 18 [SIMPLE_EDGE] + <-Reducer 17 [SIMPLE_EDGE] SHUFFLE [RS_29] PartitionCols:_col0 Group By Operator [GBY_28] (rows=155827 width=3) Output:["_col0"],keys:_col1 Merge Join Operator [MERGEJOIN_176] (rows=15843227 width=3) - Conds:RS_216._col0=RS_193._col0(Inner),Output:["_col1"] - <-Map 16 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_193] + Conds:RS_206._col0=RS_193._col0(Inner),Output:["_col1"] + <-Map 15 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_193] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_190] - <-Map 24 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_216] + <-Map 21 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_206] PartitionCols:_col0 - Select Operator [SEL_215] (rows=143930993 width=7) + Select Operator [SEL_205] (rows=143930993 width=7) Output:["_col0","_col1"] - Filter Operator [FIL_214] (rows=143930993 width=7) - predicate:((ws_bill_customer_sk BETWEEN DynamicValue(RS_57_c_c_customer_sk_min) AND DynamicValue(RS_57_c_c_customer_sk_max) and in_bloom_filter(ws_bill_customer_sk, DynamicValue(RS_57_c_c_customer_sk_bloom_filter))) and (ws_sold_date_sk BETWEEN DynamicValue(RS_25_date_dim_d_date_sk_min) AND DynamicValue(RS_25_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_25_date_dim_d_date_sk_bloom_filter))) and ws_bill_customer_sk is not null and ws_sold_date_sk is not null) + Filter Operator [FIL_204] (rows=143930993 width=7) + predicate:((ws_bill_customer_sk BETWEEN DynamicValue(RS_57_c_c_customer_sk_min) AND DynamicValue(RS_57_c_c_customer_sk_max) and in_bloom_filter(ws_bill_customer_sk, DynamicValue(RS_57_c_c_customer_sk_bloom_filter))) and ws_bill_customer_sk is not null and ws_sold_date_sk is not null) TableScan [TS_18] (rows=144002668 width=7) default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_bill_customer_sk"] <-Reducer 10 [BROADCAST_EDGE] vectorized - BROADCAST [RS_213] - Group By Operator [GBY_212] (rows=1 width=12) + BROADCAST [RS_203] + Group By Operator [GBY_202] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Reducer 4 [CUSTOM_SIMPLE_EDGE] FORWARD [RS_150] @@ -316,58 +302,36 @@ Stage-0 Select Operator [SEL_148] (rows=7792 width=4) Output:["_col0"] Please refer to the previous Merge Join Operator [MERGEJOIN_178] - <-Reducer 20 [BROADCAST_EDGE] vectorized - BROADCAST [RS_211] - Group By Operator [GBY_210] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 16 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_201] - Group By Operator [GBY_198] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_194] (rows=201 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_190] - <-Reducer 22 [ONE_TO_ONE_EDGE] vectorized - FORWARD [RS_229] + <-Reducer 20 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_217] PartitionCols:_col0 - Select Operator [SEL_228] (rows=154725 width=7) + Select Operator [SEL_216] (rows=154725 width=7) Output:["_col0","_col1"] - Group By Operator [GBY_227] (rows=154725 width=3) + Group By Operator [GBY_215] (rows=154725 width=3) Output:["_col0"],keys:KEY._col0 - <-Reducer 21 [SIMPLE_EDGE] + <-Reducer 19 [SIMPLE_EDGE] SHUFFLE [RS_43] PartitionCols:_col0 Group By Operator [GBY_42] (rows=154725 width=3) Output:["_col0"],keys:_col1 Merge Join Operator [MERGEJOIN_177] (rows=31162251 width=3) - Conds:RS_226._col0=RS_195._col0(Inner),Output:["_col1"] - <-Map 16 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_195] + Conds:RS_214._col0=RS_194._col0(Inner),Output:["_col1"] + <-Map 15 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_194] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_190] - <-Map 25 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_226] + <-Map 22 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_214] PartitionCols:_col0 - Select Operator [SEL_225] (rows=285115246 width=7) + Select Operator [SEL_213] (rows=285115246 width=7) Output:["_col0","_col1"] - Filter Operator [FIL_224] (rows=285115246 width=7) - predicate:((cs_ship_customer_sk BETWEEN DynamicValue(RS_60_c_c_customer_sk_min) AND DynamicValue(RS_60_c_c_customer_sk_max) and in_bloom_filter(cs_ship_customer_sk, DynamicValue(RS_60_c_c_customer_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_39_date_dim_d_date_sk_min) AND DynamicValue(RS_39_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_39_date_dim_d_date_sk_bloom_filter))) and cs_ship_customer_sk is not null and cs_sold_date_sk is not null) + Filter Operator [FIL_212] (rows=285115246 width=7) + predicate:((cs_ship_customer_sk BETWEEN DynamicValue(RS_60_c_c_customer_sk_min) AND DynamicValue(RS_60_c_c_customer_sk_max) and in_bloom_filter(cs_ship_customer_sk, DynamicValue(RS_60_c_c_customer_sk_bloom_filter))) and cs_ship_customer_sk is not null and cs_sold_date_sk is not null) TableScan [TS_32] (rows=287989836 width=7) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_ship_customer_sk"] - <-Reducer 23 [BROADCAST_EDGE] vectorized - BROADCAST [RS_221] - Group By Operator [GBY_220] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 16 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_202] - Group By Operator [GBY_199] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_196] (rows=201 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_190] <-Reducer 9 [BROADCAST_EDGE] vectorized - BROADCAST [RS_223] - Group By Operator [GBY_222] (rows=1 width=12) + BROADCAST [RS_211] + Group By Operator [GBY_210] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Reducer 5 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_165] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query12.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query12.q.out index 741bd90666..8b7c09b36d 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query12.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query12.q.out @@ -73,8 +73,7 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 10 (BROADCAST_EDGE), Reducer 8 (BROADCAST_EDGE) -Reducer 10 <- Map 9 (CUSTOM_SIMPLE_EDGE) +Map 1 <- Reducer 8 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) Reducer 3 <- Map 9 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) @@ -87,23 +86,23 @@ Stage-0 limit:-1 Stage-1 Reducer 6 vectorized - File Output Operator [FS_86] - Limit [LIM_85] (rows=100 width=802) + File Output Operator [FS_81] + Limit [LIM_80] (rows=100 width=802) Number of rows:100 - Select Operator [SEL_84] (rows=138600 width=801) + Select Operator [SEL_79] (rows=138600 width=801) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] <-Reducer 5 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_83] - Select Operator [SEL_82] (rows=138600 width=801) + SHUFFLE [RS_78] + Select Operator [SEL_77] (rows=138600 width=801) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] - PTF Operator [PTF_81] (rows=138600 width=689) + PTF Operator [PTF_76] (rows=138600 width=689) Function definitions:[{},{"name:":"windowingtablefunction","order by:":"_col1 ASC NULLS FIRST","partition by:":"_col1"}] - Select Operator [SEL_80] (rows=138600 width=689) + Select Operator [SEL_75] (rows=138600 width=689) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] <-Reducer 4 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_79] + SHUFFLE [RS_74] PartitionCols:_col1 - Group By Operator [GBY_78] (rows=138600 width=689) + Group By Operator [GBY_73] (rows=138600 width=689) Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4 <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_17] @@ -111,13 +110,13 @@ Stage-0 Group By Operator [GBY_16] (rows=138600 width=689) Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["sum(_col2)"],keys:_col9, _col8, _col5, _col6, _col7 Merge Join Operator [MERGEJOIN_58] (rows=4798568 width=689) - Conds:RS_12._col1=RS_69._col0(Inner),Output:["_col2","_col5","_col6","_col7","_col8","_col9"] + Conds:RS_12._col1=RS_72._col0(Inner),Output:["_col2","_col5","_col6","_col7","_col8","_col9"] <-Map 9 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_69] + SHUFFLE [RS_72] PartitionCols:_col0 - Select Operator [SEL_68] (rows=138600 width=581) + Select Operator [SEL_71] (rows=138600 width=581) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] - Filter Operator [FIL_67] (rows=138600 width=581) + Filter Operator [FIL_70] (rows=138600 width=581) predicate:(i_category) IN ('Jewelry', 'Sports', 'Books') TableScan [TS_6] (rows=462000 width=581) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_item_id","i_item_desc","i_current_price","i_class","i_category"] @@ -125,7 +124,7 @@ Stage-0 SHUFFLE [RS_12] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_57] (rows=15995224 width=115) - Conds:RS_77._col0=RS_61._col0(Inner),Output:["_col1","_col2"] + Conds:RS_69._col0=RS_61._col0(Inner),Output:["_col1","_col2"] <-Map 7 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_61] PartitionCols:_col0 @@ -136,25 +135,14 @@ Stage-0 TableScan [TS_3] (rows=73049 width=98) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_77] + SHUFFLE [RS_69] PartitionCols:_col0 - Select Operator [SEL_76] (rows=143966864 width=119) + Select Operator [SEL_68] (rows=143966864 width=119) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_75] (rows=143966864 width=119) - predicate:((ws_item_sk BETWEEN DynamicValue(RS_13_item_i_item_sk_min) AND DynamicValue(RS_13_item_i_item_sk_max) and in_bloom_filter(ws_item_sk, DynamicValue(RS_13_item_i_item_sk_bloom_filter))) and (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_sold_date_sk is not null) + Filter Operator [FIL_67] (rows=143966864 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_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_item_sk","ws_ext_sales_price"] - <-Reducer 10 [BROADCAST_EDGE] vectorized - BROADCAST [RS_74] - Group By Operator [GBY_73] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 9 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_72] - Group By Operator [GBY_71] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_70] (rows=138600 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_68] <-Reducer 8 [BROADCAST_EDGE] vectorized BROADCAST [RS_66] Group By Operator [GBY_65] (rows=1 width=12) diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query13.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query13.q.out index 02966e4f47..ac81e3794c 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query13.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query13.q.out @@ -115,14 +115,11 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 8 <- Reducer 10 (BROADCAST_EDGE), Reducer 12 (BROADCAST_EDGE), Reducer 14 (BROADCAST_EDGE), Reducer 7 (BROADCAST_EDGE) -Reducer 10 <- Map 9 (CUSTOM_SIMPLE_EDGE) -Reducer 12 <- Map 11 (CUSTOM_SIMPLE_EDGE) -Reducer 14 <- Map 13 (CUSTOM_SIMPLE_EDGE) +Map 8 <- Reducer 7 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) Reducer 3 <- Map 9 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 11 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Map 13 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) +Reducer 4 <- Map 10 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 5 <- Map 11 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (CUSTOM_SIMPLE_EDGE) Reducer 7 <- Map 1 (CUSTOM_SIMPLE_EDGE) @@ -131,10 +128,10 @@ Stage-0 limit:-1 Stage-1 Reducer 6 vectorized - File Output Operator [FS_135] - Select Operator [SEL_134] (rows=1 width=344) + File Output Operator [FS_120] + Select Operator [SEL_119] (rows=1 width=344) Output:["_col0","_col1","_col2","_col3"] - Group By Operator [GBY_133] (rows=1 width=256) + Group By Operator [GBY_118] (rows=1 width=256) Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["sum(VALUE._col0)","count(VALUE._col1)","sum(VALUE._col2)","count(VALUE._col3)","sum(VALUE._col4)","count(VALUE._col5)"] <-Reducer 5 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_31] @@ -145,13 +142,13 @@ Stage-0 Filter Operator [FIL_28] (rows=40950 width=44) predicate:((_col22 and _col23 and _col11 and _col15) or (_col24 and _col25 and _col12 and _col16) or (_col26 and _col27 and _col13 and _col16)) Merge Join Operator [MERGEJOIN_97] (rows=218403 width=44) - Conds:RS_25._col2=RS_124._col0(Inner),Output:["_col5","_col6","_col7","_col11","_col12","_col13","_col15","_col16","_col22","_col23","_col24","_col25","_col26","_col27"] - <-Map 13 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_124] + Conds:RS_25._col2=RS_117._col0(Inner),Output:["_col5","_col6","_col7","_col11","_col12","_col13","_col15","_col16","_col22","_col23","_col24","_col25","_col26","_col27"] + <-Map 11 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_117] PartitionCols:_col0 - Select Operator [SEL_123] (rows=265971 width=28) + Select Operator [SEL_116] (rows=265971 width=28) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] - Filter Operator [FIL_122] (rows=265971 width=183) + Filter Operator [FIL_115] (rows=265971 width=183) predicate:((cd_education_status) IN ('4 yr Degree', 'Primary', 'Advanced Degree') and (cd_marital_status) IN ('M', 'D', 'U')) TableScan [TS_12] (rows=1861800 width=183) default@customer_demographics,customer_demographics,Tbl:COMPLETE,Col:COMPLETE,Output:["cd_demo_sk","cd_marital_status","cd_education_status"] @@ -161,13 +158,13 @@ Stage-0 Filter Operator [FIL_24] (rows=218403 width=44) predicate:((_col18 and _col8) or (_col19 and _col9) or (_col20 and _col10)) Merge Join Operator [MERGEJOIN_96] (rows=291204 width=44) - Conds:RS_21._col4=RS_116._col0(Inner),Output:["_col2","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col15","_col16","_col18","_col19","_col20"] - <-Map 11 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_116] + Conds:RS_21._col4=RS_114._col0(Inner),Output:["_col2","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col15","_col16","_col18","_col19","_col20"] + <-Map 10 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_114] PartitionCols:_col0 - Select Operator [SEL_115] (rows=3529412 width=16) + Select Operator [SEL_113] (rows=3529412 width=16) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_114] (rows=3529412 width=187) + Filter Operator [FIL_112] (rows=3529412 width=187) predicate:((ca_country = 'United States') and (ca_state) IN ('KY', 'GA', 'NM', 'MT', 'OR', 'IN', 'WI', 'MO', 'WV')) TableScan [TS_9] (rows=40000000 width=187) default@customer_address,customer_address,Tbl:COMPLETE,Col:COMPLETE,Output:["ca_address_sk","ca_state","ca_country"] @@ -175,13 +172,13 @@ Stage-0 SHUFFLE [RS_21] PartitionCols:_col4 Merge Join Operator [MERGEJOIN_95] (rows=3300311 width=104) - Conds:RS_18._col3=RS_108._col0(Inner),Output:["_col2","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col15","_col16"] + Conds:RS_18._col3=RS_111._col0(Inner),Output:["_col2","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col15","_col16"] <-Map 9 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_108] + SHUFFLE [RS_111] PartitionCols:_col0 - Select Operator [SEL_107] (rows=1309 width=12) + Select Operator [SEL_110] (rows=1309 width=12) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_106] (rows=1309 width=8) + Filter Operator [FIL_109] (rows=1309 width=8) predicate:(hd_dep_count) IN (3, 1) TableScan [TS_6] (rows=7200 width=8) default@household_demographics,household_demographics,Tbl:COMPLETE,Col:COMPLETE,Output:["hd_demo_sk","hd_dep_count"] @@ -189,7 +186,7 @@ Stage-0 SHUFFLE [RS_18] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_94] (rows=18152968 width=233) - Conds:RS_100._col0=RS_132._col0(Inner),Output:["_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13"] + Conds:RS_100._col0=RS_108._col0(Inner),Output:["_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13"] <-Map 1 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_100] PartitionCols:_col0 @@ -200,47 +197,14 @@ Stage-0 TableScan [TS_0] (rows=73049 width=8) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year"] <-Map 8 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_132] + SHUFFLE [RS_108] PartitionCols:_col0 - Select Operator [SEL_131] (rows=50840141 width=257) + Select Operator [SEL_107] (rows=50840141 width=257) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12"] - Filter Operator [FIL_130] (rows=50840141 width=450) - predicate:((ss_addr_sk BETWEEN DynamicValue(RS_22_customer_address_ca_address_sk_min) AND DynamicValue(RS_22_customer_address_ca_address_sk_max) and in_bloom_filter(ss_addr_sk, DynamicValue(RS_22_customer_address_ca_address_sk_bloom_filter))) and (ss_cdemo_sk BETWEEN DynamicValue(RS_26_customer_demographics_cd_demo_sk_min) AND DynamicValue(RS_26_customer_demographics_cd_demo_sk_max) and in_bloom_filter(ss_cdemo_sk, DynamicValue(RS_26_customer_demographics_cd_demo_sk_bloom_filter))) and (ss_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(ss_hdemo_sk, DynamicValue(RS_19_household_demographics_hd_demo_sk_bloom_filter))) and (ss_net_profit BETWEEN 100 AND 200 or ss_net_profit BETWEEN 150 AND 300 or ss_net_profit BETWEEN 50 AND 250) and (ss_sales_price BETWEEN 100 AND 150 or ss_sales_price BETWEEN 50 AND 100 or ss_sales_price BETWEEN 150 AND 200) and (ss_sold_date_sk BETWEEN DynamicValue(RS_15_date_dim_d_date_sk_min) AND DynamicValue(RS_15_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_15_date_dim_d_date_sk_bloom_filter))) and ss_addr_sk is not null and ss_cdemo_sk is not null and ss_hdemo_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_106] (rows=50840141 width=450) + predicate:((ss_net_profit BETWEEN 100 AND 200 or ss_net_profit BETWEEN 150 AND 300 or ss_net_profit BETWEEN 50 AND 250) and (ss_sales_price BETWEEN 100 AND 150 or ss_sales_price BETWEEN 50 AND 100 or ss_sales_price BETWEEN 150 AND 200) and (ss_sold_date_sk BETWEEN DynamicValue(RS_15_date_dim_d_date_sk_min) AND DynamicValue(RS_15_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_15_date_dim_d_date_sk_bloom_filter))) and ss_addr_sk is not null and ss_cdemo_sk is not null and ss_hdemo_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) TableScan [TS_3] (rows=575995635 width=450) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_cdemo_sk","ss_hdemo_sk","ss_addr_sk","ss_store_sk","ss_quantity","ss_sales_price","ss_ext_sales_price","ss_ext_wholesale_cost","ss_net_profit"] - <-Reducer 10 [BROADCAST_EDGE] vectorized - BROADCAST [RS_113] - Group By Operator [GBY_112] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 9 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_111] - Group By Operator [GBY_110] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_109] (rows=1309 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_107] - <-Reducer 12 [BROADCAST_EDGE] vectorized - BROADCAST [RS_121] - Group By Operator [GBY_120] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=3529412)"] - <-Map 11 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_119] - Group By Operator [GBY_118] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=3529412)"] - Select Operator [SEL_117] (rows=3529412 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_115] - <-Reducer 14 [BROADCAST_EDGE] vectorized - BROADCAST [RS_129] - Group By Operator [GBY_128] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 13 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_127] - Group By Operator [GBY_126] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_125] (rows=265971 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_123] <-Reducer 7 [BROADCAST_EDGE] vectorized BROADCAST [RS_105] Group By Operator [GBY_104] (rows=1 width=12) diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query14.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query14.q.out index e8a6eaa464..ecd0e140bd 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query14.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query14.q.out @@ -225,34 +225,31 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 105 (BROADCAST_EDGE) -Map 107 <- Reducer 102 (BROADCAST_EDGE) -Map 108 <- Reducer 104 (BROADCAST_EDGE) -Map 109 <- Reducer 63 (BROADCAST_EDGE), Reducer 81 (BROADCAST_EDGE) -Map 110 <- Reducer 68 (BROADCAST_EDGE), Reducer 90 (BROADCAST_EDGE) +Map 1 <- Reducer 102 (BROADCAST_EDGE) +Map 104 <- Reducer 99 (BROADCAST_EDGE) +Map 105 <- Reducer 101 (BROADCAST_EDGE) +Map 106 <- Reducer 63 (BROADCAST_EDGE) +Map 107 <- Reducer 68 (BROADCAST_EDGE) Map 20 <- Reducer 25 (BROADCAST_EDGE) Map 36 <- Reducer 41 (BROADCAST_EDGE) -Map 46 <- Reducer 106 (BROADCAST_EDGE) +Map 46 <- Reducer 103 (BROADCAST_EDGE) Map 50 <- Reducer 29 (BROADCAST_EDGE) Map 51 <- Reducer 43 (BROADCAST_EDGE) -Map 52 <- Reducer 58 (BROADCAST_EDGE), Reducer 71 (BROADCAST_EDGE) -Map 97 <- Reducer 100 (BROADCAST_EDGE) -Reducer 10 <- Map 1 (SIMPLE_EDGE), Map 99 (SIMPLE_EDGE), Union 11 (CONTAINS) -Reducer 100 <- Map 99 (CUSTOM_SIMPLE_EDGE) -Reducer 101 <- Map 107 (SIMPLE_EDGE), Map 99 (SIMPLE_EDGE) -Reducer 102 <- Map 99 (CUSTOM_SIMPLE_EDGE) -Reducer 103 <- Map 108 (SIMPLE_EDGE), Map 99 (SIMPLE_EDGE) -Reducer 104 <- Map 99 (CUSTOM_SIMPLE_EDGE) -Reducer 105 <- Map 99 (CUSTOM_SIMPLE_EDGE) -Reducer 106 <- Map 99 (CUSTOM_SIMPLE_EDGE) +Map 52 <- Reducer 58 (BROADCAST_EDGE) +Map 94 <- Reducer 97 (BROADCAST_EDGE) +Reducer 10 <- Map 1 (SIMPLE_EDGE), Map 96 (SIMPLE_EDGE), Union 11 (CONTAINS) +Reducer 100 <- Map 105 (SIMPLE_EDGE), Map 96 (SIMPLE_EDGE) +Reducer 101 <- Map 96 (CUSTOM_SIMPLE_EDGE) +Reducer 102 <- Map 96 (CUSTOM_SIMPLE_EDGE) +Reducer 103 <- Map 96 (CUSTOM_SIMPLE_EDGE) Reducer 12 <- Union 11 (CUSTOM_SIMPLE_EDGE) Reducer 13 <- Reducer 12 (CUSTOM_SIMPLE_EDGE), Reducer 32 (CUSTOM_SIMPLE_EDGE) Reducer 14 <- Reducer 13 (CUSTOM_SIMPLE_EDGE), Reducer 62 (CUSTOM_SIMPLE_EDGE), Union 7 (CONTAINS) -Reducer 15 <- Map 1 (SIMPLE_EDGE), Map 99 (SIMPLE_EDGE), Union 16 (CONTAINS) +Reducer 15 <- Map 1 (SIMPLE_EDGE), Map 96 (SIMPLE_EDGE), Union 16 (CONTAINS) Reducer 17 <- Union 16 (CUSTOM_SIMPLE_EDGE) Reducer 18 <- Reducer 17 (CUSTOM_SIMPLE_EDGE), Reducer 35 (CUSTOM_SIMPLE_EDGE) Reducer 19 <- Reducer 18 (CUSTOM_SIMPLE_EDGE), Reducer 67 (CUSTOM_SIMPLE_EDGE), Union 7 (CONTAINS) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 99 (SIMPLE_EDGE), Union 3 (CONTAINS) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 96 (SIMPLE_EDGE), Union 3 (CONTAINS) Reducer 21 <- Map 20 (SIMPLE_EDGE), Map 24 (SIMPLE_EDGE), Union 3 (CONTAINS) Reducer 22 <- Map 20 (SIMPLE_EDGE), Map 24 (SIMPLE_EDGE), Union 11 (CONTAINS) Reducer 23 <- Map 20 (SIMPLE_EDGE), Map 24 (SIMPLE_EDGE), Union 16 (CONTAINS) @@ -273,69 +270,69 @@ Reducer 42 <- Map 40 (SIMPLE_EDGE), Map 51 (SIMPLE_EDGE), Union 27 (CONTAINS) Reducer 43 <- Map 40 (CUSTOM_SIMPLE_EDGE) Reducer 44 <- Map 40 (SIMPLE_EDGE), Map 51 (SIMPLE_EDGE), Union 31 (CONTAINS) Reducer 45 <- Map 40 (SIMPLE_EDGE), Map 51 (SIMPLE_EDGE), Union 34 (CONTAINS) -Reducer 47 <- Map 46 (SIMPLE_EDGE), Map 99 (SIMPLE_EDGE), Union 27 (CONTAINS) -Reducer 48 <- Map 46 (SIMPLE_EDGE), Map 99 (SIMPLE_EDGE), Union 31 (CONTAINS) -Reducer 49 <- Map 46 (SIMPLE_EDGE), Map 99 (SIMPLE_EDGE), Union 34 (CONTAINS) +Reducer 47 <- Map 46 (SIMPLE_EDGE), Map 96 (SIMPLE_EDGE), Union 27 (CONTAINS) +Reducer 48 <- Map 46 (SIMPLE_EDGE), Map 96 (SIMPLE_EDGE), Union 31 (CONTAINS) +Reducer 49 <- Map 46 (SIMPLE_EDGE), Map 96 (SIMPLE_EDGE), Union 34 (CONTAINS) Reducer 5 <- Reducer 28 (CUSTOM_SIMPLE_EDGE), Reducer 4 (CUSTOM_SIMPLE_EDGE) Reducer 53 <- Map 52 (SIMPLE_EDGE), Map 57 (SIMPLE_EDGE) Reducer 54 <- Map 69 (SIMPLE_EDGE), Reducer 53 (SIMPLE_EDGE) Reducer 55 <- Reducer 54 (ONE_TO_ONE_EDGE), Reducer 70 (SIMPLE_EDGE) Reducer 56 <- Reducer 55 (SIMPLE_EDGE) Reducer 58 <- Map 57 (CUSTOM_SIMPLE_EDGE) -Reducer 59 <- Map 109 (SIMPLE_EDGE), Map 57 (SIMPLE_EDGE) +Reducer 59 <- Map 106 (SIMPLE_EDGE), Map 57 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (CUSTOM_SIMPLE_EDGE), Reducer 56 (CUSTOM_SIMPLE_EDGE), Union 7 (CONTAINS) Reducer 60 <- Map 69 (SIMPLE_EDGE), Reducer 59 (SIMPLE_EDGE) -Reducer 61 <- Reducer 60 (ONE_TO_ONE_EDGE), Reducer 80 (SIMPLE_EDGE) +Reducer 61 <- Reducer 60 (ONE_TO_ONE_EDGE), Reducer 79 (SIMPLE_EDGE) Reducer 62 <- Reducer 61 (SIMPLE_EDGE) Reducer 63 <- Map 57 (CUSTOM_SIMPLE_EDGE) -Reducer 64 <- Map 110 (SIMPLE_EDGE), Map 57 (SIMPLE_EDGE) +Reducer 64 <- Map 107 (SIMPLE_EDGE), Map 57 (SIMPLE_EDGE) Reducer 65 <- Map 69 (SIMPLE_EDGE), Reducer 64 (SIMPLE_EDGE) -Reducer 66 <- Reducer 65 (ONE_TO_ONE_EDGE), Reducer 89 (SIMPLE_EDGE) +Reducer 66 <- Reducer 65 (ONE_TO_ONE_EDGE), Reducer 87 (SIMPLE_EDGE) Reducer 67 <- Reducer 66 (SIMPLE_EDGE) Reducer 68 <- Map 57 (CUSTOM_SIMPLE_EDGE) -Reducer 70 <- Map 69 (SIMPLE_EDGE), Reducer 75 (ONE_TO_ONE_EDGE) -Reducer 71 <- Reducer 70 (CUSTOM_SIMPLE_EDGE) -Reducer 72 <- Map 69 (SIMPLE_EDGE), Reducer 98 (SIMPLE_EDGE) -Reducer 73 <- Reducer 72 (SIMPLE_EDGE), Union 74 (CONTAINS) -Reducer 75 <- Union 74 (SIMPLE_EDGE) -Reducer 76 <- Map 69 (SIMPLE_EDGE), Reducer 101 (SIMPLE_EDGE) -Reducer 77 <- Reducer 76 (SIMPLE_EDGE), Union 74 (CONTAINS) -Reducer 78 <- Map 69 (SIMPLE_EDGE), Reducer 103 (SIMPLE_EDGE) -Reducer 79 <- Reducer 78 (SIMPLE_EDGE), Union 74 (CONTAINS) +Reducer 70 <- Map 69 (SIMPLE_EDGE), Reducer 74 (ONE_TO_ONE_EDGE) +Reducer 71 <- Map 69 (SIMPLE_EDGE), Reducer 95 (SIMPLE_EDGE) +Reducer 72 <- Reducer 71 (SIMPLE_EDGE), Union 73 (CONTAINS) +Reducer 74 <- Union 73 (SIMPLE_EDGE) +Reducer 75 <- Map 69 (SIMPLE_EDGE), Reducer 98 (SIMPLE_EDGE) +Reducer 76 <- Reducer 75 (SIMPLE_EDGE), Union 73 (CONTAINS) +Reducer 77 <- Map 69 (SIMPLE_EDGE), Reducer 100 (SIMPLE_EDGE) +Reducer 78 <- Reducer 77 (SIMPLE_EDGE), Union 73 (CONTAINS) +Reducer 79 <- Map 69 (SIMPLE_EDGE), Reducer 83 (ONE_TO_ONE_EDGE) Reducer 8 <- Union 7 (SIMPLE_EDGE) -Reducer 80 <- Map 69 (SIMPLE_EDGE), Reducer 85 (ONE_TO_ONE_EDGE) -Reducer 81 <- Reducer 80 (CUSTOM_SIMPLE_EDGE) -Reducer 82 <- Map 69 (SIMPLE_EDGE), Reducer 98 (SIMPLE_EDGE) -Reducer 83 <- Reducer 82 (SIMPLE_EDGE), Union 84 (CONTAINS) -Reducer 85 <- Union 84 (SIMPLE_EDGE) -Reducer 86 <- Reducer 82 (SIMPLE_EDGE), Union 87 (CONTAINS) -Reducer 88 <- Union 87 (SIMPLE_EDGE) -Reducer 89 <- Map 69 (SIMPLE_EDGE), Reducer 88 (ONE_TO_ONE_EDGE) +Reducer 80 <- Map 69 (SIMPLE_EDGE), Reducer 95 (SIMPLE_EDGE) +Reducer 81 <- Reducer 80 (SIMPLE_EDGE), Union 82 (CONTAINS) +Reducer 83 <- Union 82 (SIMPLE_EDGE) +Reducer 84 <- Reducer 80 (SIMPLE_EDGE), Union 85 (CONTAINS) +Reducer 86 <- Union 85 (SIMPLE_EDGE) +Reducer 87 <- Map 69 (SIMPLE_EDGE), Reducer 86 (ONE_TO_ONE_EDGE) +Reducer 88 <- Map 69 (SIMPLE_EDGE), Reducer 98 (SIMPLE_EDGE) +Reducer 89 <- Reducer 88 (SIMPLE_EDGE), Union 82 (CONTAINS) Reducer 9 <- Reducer 8 (SIMPLE_EDGE) -Reducer 90 <- Reducer 89 (CUSTOM_SIMPLE_EDGE) -Reducer 91 <- Map 69 (SIMPLE_EDGE), Reducer 101 (SIMPLE_EDGE) -Reducer 92 <- Reducer 91 (SIMPLE_EDGE), Union 84 (CONTAINS) -Reducer 93 <- Reducer 91 (SIMPLE_EDGE), Union 87 (CONTAINS) -Reducer 94 <- Map 69 (SIMPLE_EDGE), Reducer 103 (SIMPLE_EDGE) -Reducer 95 <- Reducer 94 (SIMPLE_EDGE), Union 84 (CONTAINS) -Reducer 96 <- Reducer 94 (SIMPLE_EDGE), Union 87 (CONTAINS) -Reducer 98 <- Map 97 (SIMPLE_EDGE), Map 99 (SIMPLE_EDGE) +Reducer 90 <- Reducer 88 (SIMPLE_EDGE), Union 85 (CONTAINS) +Reducer 91 <- Map 69 (SIMPLE_EDGE), Reducer 100 (SIMPLE_EDGE) +Reducer 92 <- Reducer 91 (SIMPLE_EDGE), Union 82 (CONTAINS) +Reducer 93 <- Reducer 91 (SIMPLE_EDGE), Union 85 (CONTAINS) +Reducer 95 <- Map 94 (SIMPLE_EDGE), Map 96 (SIMPLE_EDGE) +Reducer 97 <- Map 96 (CUSTOM_SIMPLE_EDGE) +Reducer 98 <- Map 104 (SIMPLE_EDGE), Map 96 (SIMPLE_EDGE) +Reducer 99 <- Map 96 (CUSTOM_SIMPLE_EDGE) Stage-0 Fetch Operator limit:100 Stage-1 Reducer 9 vectorized - File Output Operator [FS_1703] - Limit [LIM_1702] (rows=7 width=192) + File Output Operator [FS_1701] + Limit [LIM_1700] (rows=7 width=192) Number of rows:100 - Select Operator [SEL_1701] (rows=7 width=192) + Select Operator [SEL_1699] (rows=7 width=192) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] <-Reducer 8 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1700] - Select Operator [SEL_1699] (rows=7 width=192) + SHUFFLE [RS_1698] + Select Operator [SEL_1697] (rows=7 width=192) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] - Group By Operator [GBY_1698] (rows=7 width=200) + Group By Operator [GBY_1696] (rows=7 width=200) Output:["_col0","_col1","_col2","_col3","_col5","_col6"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4 <-Union 7 [SIMPLE_EDGE] <-Reducer 14 [CONTAINS] @@ -356,14 +353,14 @@ Stage-0 Merge Join Operator [MERGEJOIN_1433] (rows=1 width=112) Conds:(Inner),Output:["_col1"] <-Reducer 12 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1709] - Select Operator [SEL_1708] (rows=1 width=8) - Filter Operator [FIL_1707] (rows=1 width=8) + PARTITION_ONLY_SHUFFLE [RS_1707] + Select Operator [SEL_1706] (rows=1 width=8) + Filter Operator [FIL_1705] (rows=1 width=8) predicate:(sq_count_check(_col0) <= 1) - Group By Operator [GBY_1706] (rows=1 width=8) + Group By Operator [GBY_1704] (rows=1 width=8) Output:["_col0"],aggregations:["count()"] - Select Operator [SEL_1705] (rows=1 width=8) - Group By Operator [GBY_1704] (rows=1 width=8) + Select Operator [SEL_1703] (rows=1 width=8) + Group By Operator [GBY_1702] (rows=1 width=8) Output:["_col0"],aggregations:["count(VALUE._col0)"] <-Union 11 [CUSTOM_SIMPLE_EDGE] <-Reducer 10 [CONTAINS] @@ -376,8 +373,8 @@ Stage-0 Output:["_col0"] Merge Join Operator [MERGEJOIN_1450] (rows=14736682 width=0) Conds:RS_1633._col0=RS_1614._col0(Inner),Output:["_col1"] - <-Map 99 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1614] + <-Map 96 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_1614] PartitionCols:_col0 Select Operator [SEL_1603] (rows=1957 width=4) Output:["_col0"] @@ -394,12 +391,12 @@ Stage-0 predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_7_date_dim_d_date_sk_min) AND DynamicValue(RS_7_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_7_date_dim_d_date_sk_bloom_filter))) and ss_sold_date_sk is not null) TableScan [TS_0] (rows=575995635 width=7) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_quantity"] - <-Reducer 105 [BROADCAST_EDGE] vectorized + <-Reducer 102 [BROADCAST_EDGE] vectorized BROADCAST [RS_1629] Group By Operator [GBY_1628] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 99 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_1626] + <-Map 96 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_1626] Group By Operator [GBY_1621] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] Select Operator [SEL_1611] (rows=1957 width=4) @@ -414,36 +411,36 @@ Stage-0 Select Operator [SEL_1483] (rows=7676736 width=3) Output:["_col0"] Merge Join Operator [MERGEJOIN_1482] (rows=7676736 width=3) - Conds:RS_1767._col0=RS_1754._col0(Inner),Output:["_col1"] + Conds:RS_1761._col0=RS_1748._col0(Inner),Output:["_col1"] <-Map 24 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1754] + SHUFFLE [RS_1748] PartitionCols:_col0 - Select Operator [SEL_1749] (rows=1957 width=4) + Select Operator [SEL_1743] (rows=1957 width=4) Output:["_col0"] - Filter Operator [FIL_1748] (rows=1957 width=8) + Filter Operator [FIL_1742] (rows=1957 width=8) predicate:d_year BETWEEN 1998 AND 2000 TableScan [TS_13] (rows=73049 width=8) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year"] <-Map 20 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1767] + SHUFFLE [RS_1761] PartitionCols:_col0 - Select Operator [SEL_1765] (rows=286549727 width=7) + Select Operator [SEL_1759] (rows=286549727 width=7) Output:["_col0","_col1"] - Filter Operator [FIL_1764] (rows=286549727 width=7) + Filter Operator [FIL_1758] (rows=286549727 width=7) predicate:((cs_sold_date_sk BETWEEN DynamicValue(RS_17_date_dim_d_date_sk_min) AND DynamicValue(RS_17_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_17_date_dim_d_date_sk_bloom_filter))) and cs_sold_date_sk is not null) TableScan [TS_10] (rows=287989836 width=7) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_quantity"] <-Reducer 25 [BROADCAST_EDGE] vectorized - BROADCAST [RS_1763] - Group By Operator [GBY_1762] (rows=1 width=12) + BROADCAST [RS_1757] + Group By Operator [GBY_1756] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Map 24 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_1760] - Group By Operator [GBY_1758] (rows=1 width=12) + SHUFFLE [RS_1754] + Group By Operator [GBY_1752] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_1751] (rows=1957 width=4) + Select Operator [SEL_1745] (rows=1957 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_1749] + Please refer to the previous Select Operator [SEL_1743] <-Reducer 38 [CONTAINS] Reduce Output Operator [RS_1523] Group By Operator [GBY_1522] (rows=1 width=8) @@ -453,41 +450,41 @@ Stage-0 Select Operator [SEL_1519] (rows=3856907 width=3) Output:["_col0"] Merge Join Operator [MERGEJOIN_1518] (rows=3856907 width=3) - Conds:RS_1795._col0=RS_1782._col0(Inner),Output:["_col1"] + Conds:RS_1789._col0=RS_1776._col0(Inner),Output:["_col1"] <-Map 40 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1782] + SHUFFLE [RS_1776] PartitionCols:_col0 - Select Operator [SEL_1777] (rows=1957 width=4) + Select Operator [SEL_1771] (rows=1957 width=4) Output:["_col0"] - Filter Operator [FIL_1776] (rows=1957 width=8) + Filter Operator [FIL_1770] (rows=1957 width=8) predicate:d_year BETWEEN 1998 AND 2000 TableScan [TS_24] (rows=73049 width=8) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year"] <-Map 36 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1795] + SHUFFLE [RS_1789] PartitionCols:_col0 - Select Operator [SEL_1793] (rows=143966864 width=7) + Select Operator [SEL_1787] (rows=143966864 width=7) Output:["_col0","_col1"] - Filter Operator [FIL_1792] (rows=143966864 width=7) + Filter Operator [FIL_1786] (rows=143966864 width=7) predicate:((ws_sold_date_sk BETWEEN DynamicValue(RS_28_date_dim_d_date_sk_min) AND DynamicValue(RS_28_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_28_date_dim_d_date_sk_bloom_filter))) and ws_sold_date_sk is not null) TableScan [TS_21] (rows=144002668 width=7) default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_quantity"] <-Reducer 41 [BROADCAST_EDGE] vectorized - BROADCAST [RS_1791] - Group By Operator [GBY_1790] (rows=1 width=12) + BROADCAST [RS_1785] + Group By Operator [GBY_1784] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Map 40 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_1788] - Group By Operator [GBY_1786] (rows=1 width=12) + SHUFFLE [RS_1782] + Group By Operator [GBY_1780] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_1779] (rows=1957 width=4) + Select Operator [SEL_1773] (rows=1957 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_1777] + Please refer to the previous Select Operator [SEL_1771] <-Reducer 32 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1712] - Select Operator [SEL_1711] (rows=1 width=112) + PARTITION_ONLY_SHUFFLE [RS_1710] + Select Operator [SEL_1709] (rows=1 width=112) Output:["_col0"] - Group By Operator [GBY_1710] (rows=1 width=120) + Group By Operator [GBY_1708] (rows=1 width=120) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)","count(VALUE._col1)"] <-Union 31 [CUSTOM_SIMPLE_EDGE] <-Reducer 30 [CONTAINS] @@ -499,31 +496,31 @@ Stage-0 Select Operator [SEL_1501] (rows=7676736 width=94) Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_1500] (rows=7676736 width=94) - Conds:RS_1774._col0=RS_1755._col0(Inner),Output:["_col1","_col2"] + Conds:RS_1768._col0=RS_1749._col0(Inner),Output:["_col1","_col2"] <-Map 24 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1755] + SHUFFLE [RS_1749] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1749] + Please refer to the previous Select Operator [SEL_1743] <-Map 50 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1774] + SHUFFLE [RS_1768] PartitionCols:_col0 - Select Operator [SEL_1772] (rows=286549727 width=119) + Select Operator [SEL_1766] (rows=286549727 width=119) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_1771] (rows=286549727 width=119) + Filter Operator [FIL_1765] (rows=286549727 width=119) predicate:((cs_sold_date_sk BETWEEN DynamicValue(RS_62_date_dim_d_date_sk_min) AND DynamicValue(RS_62_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_62_date_dim_d_date_sk_bloom_filter))) and cs_sold_date_sk is not null) TableScan [TS_55] (rows=287989836 width=119) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_quantity","cs_list_price"] <-Reducer 29 [BROADCAST_EDGE] vectorized - BROADCAST [RS_1770] - Group By Operator [GBY_1769] (rows=1 width=12) + BROADCAST [RS_1764] + Group By Operator [GBY_1763] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Map 24 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_1761] - Group By Operator [GBY_1759] (rows=1 width=12) + SHUFFLE [RS_1755] + Group By Operator [GBY_1753] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_1753] (rows=1957 width=4) + Select Operator [SEL_1747] (rows=1957 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_1749] + Please refer to the previous Select Operator [SEL_1743] <-Reducer 44 [CONTAINS] Reduce Output Operator [RS_1541] Group By Operator [GBY_1540] (rows=1 width=120) @@ -533,31 +530,31 @@ Stage-0 Select Operator [SEL_1537] (rows=3856907 width=114) Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_1536] (rows=3856907 width=114) - Conds:RS_1802._col0=RS_1783._col0(Inner),Output:["_col1","_col2"] + Conds:RS_1796._col0=RS_1777._col0(Inner),Output:["_col1","_col2"] <-Map 40 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1783] + SHUFFLE [RS_1777] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1777] + Please refer to the previous Select Operator [SEL_1771] <-Map 51 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1802] + SHUFFLE [RS_1796] PartitionCols:_col0 - Select Operator [SEL_1800] (rows=143966864 width=119) + Select Operator [SEL_1794] (rows=143966864 width=119) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_1799] (rows=143966864 width=119) + Filter Operator [FIL_1793] (rows=143966864 width=119) predicate:((ws_sold_date_sk BETWEEN DynamicValue(RS_73_date_dim_d_date_sk_min) AND DynamicValue(RS_73_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_73_date_dim_d_date_sk_bloom_filter))) and ws_sold_date_sk is not null) TableScan [TS_66] (rows=144002668 width=119) default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_quantity","ws_list_price"] <-Reducer 43 [BROADCAST_EDGE] vectorized - BROADCAST [RS_1798] - Group By Operator [GBY_1797] (rows=1 width=12) + BROADCAST [RS_1792] + Group By Operator [GBY_1791] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Map 40 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_1789] - Group By Operator [GBY_1787] (rows=1 width=12) + SHUFFLE [RS_1783] + Group By Operator [GBY_1781] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_1781] (rows=1957 width=4) + Select Operator [SEL_1775] (rows=1957 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_1777] + Please refer to the previous Select Operator [SEL_1771] <-Reducer 48 [CONTAINS] Reduce Output Operator [RS_1559] Group By Operator [GBY_1558] (rows=1 width=120) @@ -567,34 +564,34 @@ Stage-0 Select Operator [SEL_1555] (rows=14736682 width=0) Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_1554] (rows=14736682 width=0) - Conds:RS_1809._col0=RS_1615._col0(Inner),Output:["_col1","_col2"] - <-Map 99 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1615] + Conds:RS_1803._col0=RS_1615._col0(Inner),Output:["_col1","_col2"] + <-Map 96 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_1615] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_1603] <-Map 46 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1809] + SHUFFLE [RS_1803] PartitionCols:_col0 - Select Operator [SEL_1807] (rows=550076554 width=114) + Select Operator [SEL_1801] (rows=550076554 width=114) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_1806] (rows=550076554 width=114) + Filter Operator [FIL_1800] (rows=550076554 width=114) predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_52_date_dim_d_date_sk_min) AND DynamicValue(RS_52_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_52_date_dim_d_date_sk_bloom_filter))) and ss_sold_date_sk is not null) TableScan [TS_45] (rows=575995635 width=114) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_quantity","ss_list_price"] - <-Reducer 106 [BROADCAST_EDGE] vectorized - BROADCAST [RS_1805] - Group By Operator [GBY_1804] (rows=1 width=12) + <-Reducer 103 [BROADCAST_EDGE] vectorized + BROADCAST [RS_1799] + Group By Operator [GBY_1798] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 99 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_1627] + <-Map 96 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_1627] Group By Operator [GBY_1622] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] Select Operator [SEL_1613] (rows=1957 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_1603] <-Reducer 62 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1725] - Group By Operator [GBY_1724] (rows=1 width=132) + PARTITION_ONLY_SHUFFLE [RS_1721] + Group By Operator [GBY_1720] (rows=1 width=132) Output:["_col0","_col1","_col2","_col3","_col4"],aggregations:["sum(VALUE._col0)","count(VALUE._col1)"],keys:KEY._col0, KEY._col1, KEY._col2 <-Reducer 61 [SIMPLE_EDGE] SHUFFLE [RS_365] @@ -605,239 +602,228 @@ Stage-0 Output:["_col0","_col1","_col2","_col3"] Merge Join Operator [MERGEJOIN_1429] (rows=1 width=128) Conds:RS_359._col1=RS_360._col0(Inner),Output:["_col2","_col3","_col6","_col7","_col8"] - <-Reducer 80 [SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_360] + <-Reducer 60 [ONE_TO_ONE_EDGE] + FORWARD [RS_359] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_1405] (rows=7790806 width=110) + Conds:RS_356._col1=RS_1678._col0(Inner),Output:["_col1","_col2","_col3","_col6","_col7","_col8"] + <-Map 69 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1678] + PartitionCols:_col0 + Select Operator [SEL_1669] (rows=462000 width=15) + Output:["_col0","_col1","_col2","_col3"] + TableScan [TS_90] (rows=462000 width=15) + default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_brand_id","i_class_id","i_category_id"] + <-Reducer 59 [SIMPLE_EDGE] + SHUFFLE [RS_356] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_1404] (rows=7790806 width=98) + Conds:RS_1715._col0=RS_1648._col0(Inner),Output:["_col1","_col2","_col3"] + <-Map 57 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_1648] + PartitionCols:_col0 + Select Operator [SEL_1645] (rows=50 width=4) + Output:["_col0"] + Filter Operator [FIL_1644] (rows=50 width=12) + predicate:((d_moy = 11) and (d_year = 2000)) + TableScan [TS_85] (rows=73049 width=12) + default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] + <-Map 106 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1715] + PartitionCols:_col0 + Select Operator [SEL_1714] (rows=286549727 width=123) + Output:["_col0","_col1","_col2","_col3"] + Filter Operator [FIL_1713] (rows=286549727 width=123) + predicate:((cs_sold_date_sk BETWEEN DynamicValue(RS_354_date_dim_d_date_sk_min) AND DynamicValue(RS_354_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_354_date_dim_d_date_sk_bloom_filter))) and cs_sold_date_sk is not null) + TableScan [TS_270] (rows=287989836 width=123) + default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_item_sk","cs_quantity","cs_list_price"] + <-Reducer 63 [BROADCAST_EDGE] vectorized + BROADCAST [RS_1712] + Group By Operator [GBY_1711] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 57 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_1656] + Group By Operator [GBY_1653] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_1649] (rows=50 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_1645] + <-Reducer 79 [SIMPLE_EDGE] + SHUFFLE [RS_360] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_1412] (rows=724 width=4) - Conds:RS_1682._col1, _col2, _col3=RS_1718._col0, _col1, _col2(Inner),Output:["_col0"] + Conds:RS_1685._col1, _col2, _col3=RS_1719._col0, _col1, _col2(Inner),Output:["_col0"] <-Map 69 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1682] + SHUFFLE [RS_1685] PartitionCols:_col1, _col2, _col3 - Select Operator [SEL_1671] (rows=458612 width=15) + Select Operator [SEL_1674] (rows=458612 width=15) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_1662] (rows=458612 width=15) + Filter Operator [FIL_1665] (rows=458612 width=15) predicate:(i_brand_id is not null and i_category_id is not null and i_class_id is not null) - TableScan [TS_90] (rows=462000 width=15) - default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_brand_id","i_class_id","i_category_id"] - <-Reducer 85 [ONE_TO_ONE_EDGE] vectorized - FORWARD [RS_1718] + Please refer to the previous TableScan [TS_90] + <-Reducer 83 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_1719] PartitionCols:_col0, _col1, _col2 - Select Operator [SEL_1717] (rows=1 width=12) + Select Operator [SEL_1718] (rows=1 width=12) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_1716] (rows=1 width=20) + Filter Operator [FIL_1717] (rows=1 width=20) predicate:(_col3 = 3L) - Group By Operator [GBY_1715] (rows=121728 width=19) + Group By Operator [GBY_1716] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Union 84 [SIMPLE_EDGE] - <-Reducer 83 [CONTAINS] vectorized - Reduce Output Operator [RS_1837] + <-Union 82 [SIMPLE_EDGE] + <-Reducer 81 [CONTAINS] vectorized + Reduce Output Operator [RS_1831] PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_1836] (rows=121728 width=19) + Group By Operator [GBY_1830] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(_col3)"],keys:_col0, _col1, _col2 - Group By Operator [GBY_1835] (rows=121728 width=19) + Group By Operator [GBY_1829] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Reducer 82 [SIMPLE_EDGE] + <-Reducer 80 [SIMPLE_EDGE] SHUFFLE [RS_298] PartitionCols:_col0, _col1, _col2 Group By Operator [GBY_297] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count()"],keys:_col4, _col5, _col6 Merge Join Operator [MERGEJOIN_1407] (rows=14628613 width=11) - Conds:RS_293._col1=RS_1683._col0(Inner),Output:["_col4","_col5","_col6"] + Conds:RS_293._col1=RS_1686._col0(Inner),Output:["_col4","_col5","_col6"] <-Map 69 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1683] + SHUFFLE [RS_1686] PartitionCols:_col0 - Select Operator [SEL_1672] (rows=458612 width=15) + Select Operator [SEL_1675] (rows=458612 width=15) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_1663] (rows=458612 width=15) + Filter Operator [FIL_1666] (rows=458612 width=15) predicate:(i_brand_id is not null and i_category_id is not null and i_class_id is not null) Please refer to the previous TableScan [TS_90] - <-Reducer 98 [SIMPLE_EDGE] + <-Reducer 95 [SIMPLE_EDGE] SHUFFLE [RS_293] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_1391] (rows=14736682 width=4) - Conds:RS_1815._col0=RS_1604._col0(Inner),Output:["_col1"] - <-Map 99 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1604] + Conds:RS_1809._col0=RS_1604._col0(Inner),Output:["_col1"] + <-Map 96 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_1604] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_1603] - <-Map 97 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1815] + <-Map 94 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1809] PartitionCols:_col0 - Select Operator [SEL_1814] (rows=550076554 width=7) + Select Operator [SEL_1808] (rows=550076554 width=7) Output:["_col0","_col1"] - Filter Operator [FIL_1813] (rows=550076554 width=7) + Filter Operator [FIL_1807] (rows=550076554 width=7) predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_103_d1_d_date_sk_min) AND DynamicValue(RS_103_d1_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_103_d1_d_date_sk_bloom_filter))) and ss_sold_date_sk is not null) TableScan [TS_93] (rows=575995635 width=7) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk"] - <-Reducer 100 [BROADCAST_EDGE] vectorized - BROADCAST [RS_1812] - Group By Operator [GBY_1811] (rows=1 width=12) + <-Reducer 97 [BROADCAST_EDGE] vectorized + BROADCAST [RS_1806] + Group By Operator [GBY_1805] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 99 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_1623] + <-Map 96 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_1623] Group By Operator [GBY_1618] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] Select Operator [SEL_1605] (rows=1957 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_1603] - <-Reducer 92 [CONTAINS] vectorized - Reduce Output Operator [RS_1843] + <-Reducer 89 [CONTAINS] vectorized + Reduce Output Operator [RS_1837] PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_1842] (rows=121728 width=19) + Group By Operator [GBY_1836] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(_col3)"],keys:_col0, _col1, _col2 - Group By Operator [GBY_1841] (rows=121728 width=19) + Group By Operator [GBY_1835] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Reducer 91 [SIMPLE_EDGE] + <-Reducer 88 [SIMPLE_EDGE] SHUFFLE [RS_318] PartitionCols:_col0, _col1, _col2 Group By Operator [GBY_317] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count()"],keys:_col4, _col5, _col6 Merge Join Operator [MERGEJOIN_1409] (rows=7620440 width=11) - Conds:RS_313._col1=RS_1684._col0(Inner),Output:["_col4","_col5","_col6"] + Conds:RS_313._col1=RS_1687._col0(Inner),Output:["_col4","_col5","_col6"] <-Map 69 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1684] + SHUFFLE [RS_1687] PartitionCols:_col0 - Select Operator [SEL_1673] (rows=458612 width=15) + Select Operator [SEL_1676] (rows=458612 width=15) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_1664] (rows=458612 width=15) + Filter Operator [FIL_1667] (rows=458612 width=15) predicate:(i_brand_id is not null and i_category_id is not null and i_class_id is not null) Please refer to the previous TableScan [TS_90] - <-Reducer 101 [SIMPLE_EDGE] + <-Reducer 98 [SIMPLE_EDGE] SHUFFLE [RS_313] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_1393] (rows=7676736 width=4) - Conds:RS_1823._col0=RS_1606._col0(Inner),Output:["_col1"] - <-Map 99 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1606] + Conds:RS_1817._col0=RS_1606._col0(Inner),Output:["_col1"] + <-Map 96 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_1606] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_1603] - <-Map 107 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1823] + <-Map 104 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1817] PartitionCols:_col0 - Select Operator [SEL_1822] (rows=286549727 width=7) + Select Operator [SEL_1816] (rows=286549727 width=7) Output:["_col0","_col1"] - Filter Operator [FIL_1821] (rows=286549727 width=7) + Filter Operator [FIL_1815] (rows=286549727 width=7) predicate:((cs_sold_date_sk BETWEEN DynamicValue(RS_123_d2_d_date_sk_min) AND DynamicValue(RS_123_d2_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_123_d2_d_date_sk_bloom_filter))) and cs_sold_date_sk is not null) TableScan [TS_113] (rows=287989836 width=7) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_item_sk"] - <-Reducer 102 [BROADCAST_EDGE] vectorized - BROADCAST [RS_1820] - Group By Operator [GBY_1819] (rows=1 width=12) + <-Reducer 99 [BROADCAST_EDGE] vectorized + BROADCAST [RS_1814] + Group By Operator [GBY_1813] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 99 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_1624] + <-Map 96 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_1624] Group By Operator [GBY_1619] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] Select Operator [SEL_1607] (rows=1957 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_1603] - <-Reducer 95 [CONTAINS] vectorized - Reduce Output Operator [RS_1849] + <-Reducer 92 [CONTAINS] vectorized + Reduce Output Operator [RS_1843] PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_1848] (rows=121728 width=19) + Group By Operator [GBY_1842] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(_col3)"],keys:_col0, _col1, _col2 - Group By Operator [GBY_1847] (rows=121728 width=19) + Group By Operator [GBY_1841] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Reducer 94 [SIMPLE_EDGE] + <-Reducer 91 [SIMPLE_EDGE] SHUFFLE [RS_339] PartitionCols:_col0, _col1, _col2 Group By Operator [GBY_338] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count()"],keys:_col4, _col5, _col6 Merge Join Operator [MERGEJOIN_1411] (rows=3828623 width=11) - Conds:RS_334._col1=RS_1685._col0(Inner),Output:["_col4","_col5","_col6"] + Conds:RS_334._col1=RS_1688._col0(Inner),Output:["_col4","_col5","_col6"] <-Map 69 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1685] + SHUFFLE [RS_1688] PartitionCols:_col0 - Select Operator [SEL_1674] (rows=458612 width=15) + Select Operator [SEL_1677] (rows=458612 width=15) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_1665] (rows=458612 width=15) + Filter Operator [FIL_1668] (rows=458612 width=15) predicate:(i_brand_id is not null and i_category_id is not null and i_class_id is not null) Please refer to the previous TableScan [TS_90] - <-Reducer 103 [SIMPLE_EDGE] + <-Reducer 100 [SIMPLE_EDGE] SHUFFLE [RS_334] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_1395] (rows=3856907 width=4) - Conds:RS_1831._col0=RS_1608._col0(Inner),Output:["_col1"] - <-Map 99 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1608] + Conds:RS_1825._col0=RS_1608._col0(Inner),Output:["_col1"] + <-Map 96 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_1608] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_1603] - <-Map 108 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1831] + <-Map 105 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1825] PartitionCols:_col0 - Select Operator [SEL_1830] (rows=143966864 width=7) + Select Operator [SEL_1824] (rows=143966864 width=7) Output:["_col0","_col1"] - Filter Operator [FIL_1829] (rows=143966864 width=7) + Filter Operator [FIL_1823] (rows=143966864 width=7) predicate:((ws_sold_date_sk BETWEEN DynamicValue(RS_144_d3_d_date_sk_min) AND DynamicValue(RS_144_d3_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_144_d3_d_date_sk_bloom_filter))) and ws_sold_date_sk is not null) TableScan [TS_134] (rows=144002668 width=7) default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_item_sk"] - <-Reducer 104 [BROADCAST_EDGE] vectorized - BROADCAST [RS_1828] - Group By Operator [GBY_1827] (rows=1 width=12) + <-Reducer 101 [BROADCAST_EDGE] vectorized + BROADCAST [RS_1822] + Group By Operator [GBY_1821] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 99 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_1625] + <-Map 96 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_1625] Group By Operator [GBY_1620] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] Select Operator [SEL_1609] (rows=1957 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_1603] - <-Reducer 60 [ONE_TO_ONE_EDGE] - FORWARD [RS_359] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_1405] (rows=7790806 width=110) - Conds:RS_356._col1=RS_1675._col0(Inner),Output:["_col1","_col2","_col3","_col6","_col7","_col8"] - <-Map 69 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1675] - PartitionCols:_col0 - Select Operator [SEL_1666] (rows=462000 width=15) - Output:["_col0","_col1","_col2","_col3"] - Please refer to the previous TableScan [TS_90] - <-Reducer 59 [SIMPLE_EDGE] - SHUFFLE [RS_356] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_1404] (rows=7790806 width=98) - Conds:RS_1723._col0=RS_1648._col0(Inner),Output:["_col1","_col2","_col3"] - <-Map 57 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1648] - PartitionCols:_col0 - Select Operator [SEL_1645] (rows=50 width=4) - Output:["_col0"] - Filter Operator [FIL_1644] (rows=50 width=12) - predicate:((d_moy = 11) and (d_year = 2000)) - TableScan [TS_85] (rows=73049 width=12) - default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] - <-Map 109 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1723] - PartitionCols:_col0 - Select Operator [SEL_1722] (rows=286549727 width=123) - Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_1721] (rows=286549727 width=123) - predicate:((cs_item_sk BETWEEN DynamicValue(RS_360_item_i_item_sk_min) AND DynamicValue(RS_360_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_360_item_i_item_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_354_date_dim_d_date_sk_min) AND DynamicValue(RS_354_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_354_date_dim_d_date_sk_bloom_filter))) and cs_sold_date_sk is not null) - TableScan [TS_270] (rows=287989836 width=123) - default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_item_sk","cs_quantity","cs_list_price"] - <-Reducer 63 [BROADCAST_EDGE] vectorized - BROADCAST [RS_1714] - Group By Operator [GBY_1713] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 57 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1656] - Group By Operator [GBY_1653] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_1649] (rows=50 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_1645] - <-Reducer 81 [BROADCAST_EDGE] vectorized - BROADCAST [RS_1720] - Group By Operator [GBY_1719] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Reducer 80 [CUSTOM_SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_1077] - Group By Operator [GBY_1076] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_1075] (rows=724 width=4) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_1412] <-Reducer 19 [CONTAINS] Reduce Output Operator [RS_1475] PartitionCols:_col0, _col1, _col2, _col3, _col4 @@ -856,14 +842,14 @@ Stage-0 Merge Join Operator [MERGEJOIN_1435] (rows=1 width=112) Conds:(Inner),Output:["_col1"] <-Reducer 17 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1731] - Select Operator [SEL_1730] (rows=1 width=8) - Filter Operator [FIL_1729] (rows=1 width=8) + PARTITION_ONLY_SHUFFLE [RS_1727] + Select Operator [SEL_1726] (rows=1 width=8) + Filter Operator [FIL_1725] (rows=1 width=8) predicate:(sq_count_check(_col0) <= 1) - Group By Operator [GBY_1728] (rows=1 width=8) + Group By Operator [GBY_1724] (rows=1 width=8) Output:["_col0"],aggregations:["count()"] - Select Operator [SEL_1727] (rows=1 width=8) - Group By Operator [GBY_1726] (rows=1 width=8) + Select Operator [SEL_1723] (rows=1 width=8) + Group By Operator [GBY_1722] (rows=1 width=8) Output:["_col0"],aggregations:["count(VALUE._col0)"] <-Union 16 [CUSTOM_SIMPLE_EDGE] <-Reducer 15 [CONTAINS] @@ -876,8 +862,8 @@ Stage-0 Output:["_col0"] Merge Join Operator [MERGEJOIN_1463] (rows=14736682 width=0) Conds:RS_1634._col0=RS_1616._col0(Inner),Output:["_col1"] - <-Map 99 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1616] + <-Map 96 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_1616] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_1603] <-Map 1 [SIMPLE_EDGE] vectorized @@ -893,15 +879,15 @@ Stage-0 Select Operator [SEL_1489] (rows=7676736 width=3) Output:["_col0"] Merge Join Operator [MERGEJOIN_1488] (rows=7676736 width=3) - Conds:RS_1768._col0=RS_1756._col0(Inner),Output:["_col1"] + Conds:RS_1762._col0=RS_1750._col0(Inner),Output:["_col1"] <-Map 24 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1756] + SHUFFLE [RS_1750] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1749] + Please refer to the previous Select Operator [SEL_1743] <-Map 20 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1768] + SHUFFLE [RS_1762] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1765] + Please refer to the previous Select Operator [SEL_1759] <-Reducer 39 [CONTAINS] Reduce Output Operator [RS_1529] Group By Operator [GBY_1528] (rows=1 width=8) @@ -911,20 +897,20 @@ Stage-0 Select Operator [SEL_1525] (rows=3856907 width=3) Output:["_col0"] Merge Join Operator [MERGEJOIN_1524] (rows=3856907 width=3) - Conds:RS_1796._col0=RS_1784._col0(Inner),Output:["_col1"] + Conds:RS_1790._col0=RS_1778._col0(Inner),Output:["_col1"] <-Map 40 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1784] + SHUFFLE [RS_1778] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1777] + Please refer to the previous Select Operator [SEL_1771] <-Map 36 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1796] + SHUFFLE [RS_1790] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1793] + Please refer to the previous Select Operator [SEL_1787] <-Reducer 35 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1734] - Select Operator [SEL_1733] (rows=1 width=112) + PARTITION_ONLY_SHUFFLE [RS_1730] + Select Operator [SEL_1729] (rows=1 width=112) Output:["_col0"] - Group By Operator [GBY_1732] (rows=1 width=120) + Group By Operator [GBY_1728] (rows=1 width=120) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)","count(VALUE._col1)"] <-Union 34 [CUSTOM_SIMPLE_EDGE] <-Reducer 33 [CONTAINS] @@ -936,15 +922,15 @@ Stage-0 Select Operator [SEL_1507] (rows=7676736 width=94) Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_1506] (rows=7676736 width=94) - Conds:RS_1775._col0=RS_1757._col0(Inner),Output:["_col1","_col2"] + Conds:RS_1769._col0=RS_1751._col0(Inner),Output:["_col1","_col2"] <-Map 24 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1757] + SHUFFLE [RS_1751] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1749] + Please refer to the previous Select Operator [SEL_1743] <-Map 50 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1775] + SHUFFLE [RS_1769] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1772] + Please refer to the previous Select Operator [SEL_1766] <-Reducer 45 [CONTAINS] Reduce Output Operator [RS_1547] Group By Operator [GBY_1546] (rows=1 width=120) @@ -954,15 +940,15 @@ Stage-0 Select Operator [SEL_1543] (rows=3856907 width=114) Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_1542] (rows=3856907 width=114) - Conds:RS_1803._col0=RS_1785._col0(Inner),Output:["_col1","_col2"] + Conds:RS_1797._col0=RS_1779._col0(Inner),Output:["_col1","_col2"] <-Map 40 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1785] + SHUFFLE [RS_1779] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1777] + Please refer to the previous Select Operator [SEL_1771] <-Map 51 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1803] + SHUFFLE [RS_1797] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1800] + Please refer to the previous Select Operator [SEL_1794] <-Reducer 49 [CONTAINS] Reduce Output Operator [RS_1565] Group By Operator [GBY_1564] (rows=1 width=120) @@ -972,18 +958,18 @@ Stage-0 Select Operator [SEL_1561] (rows=14736682 width=0) Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_1560] (rows=14736682 width=0) - Conds:RS_1810._col0=RS_1617._col0(Inner),Output:["_col1","_col2"] - <-Map 99 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1617] + Conds:RS_1804._col0=RS_1617._col0(Inner),Output:["_col1","_col2"] + <-Map 96 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_1617] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_1603] <-Map 46 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1810] + SHUFFLE [RS_1804] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1807] + Please refer to the previous Select Operator [SEL_1801] <-Reducer 67 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1747] - Group By Operator [GBY_1746] (rows=1 width=132) + PARTITION_ONLY_SHUFFLE [RS_1741] + Group By Operator [GBY_1740] (rows=1 width=132) Output:["_col0","_col1","_col2","_col3","_col4"],aggregations:["sum(VALUE._col0)","count(VALUE._col1)"],keys:KEY._col0, KEY._col1, KEY._col2 <-Reducer 66 [SIMPLE_EDGE] SHUFFLE [RS_554] @@ -994,94 +980,38 @@ Stage-0 Output:["_col0","_col1","_col2","_col3"] Merge Join Operator [MERGEJOIN_1430] (rows=1 width=128) Conds:RS_548._col1=RS_549._col0(Inner),Output:["_col2","_col3","_col6","_col7","_col8"] - <-Reducer 89 [SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_549] - PartitionCols:_col0 - Merge Join Operator [MERGEJOIN_1427] (rows=724 width=4) - Conds:RS_1686._col1, _col2, _col3=RS_1740._col0, _col1, _col2(Inner),Output:["_col0"] - <-Map 69 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1686] - PartitionCols:_col1, _col2, _col3 - Select Operator [SEL_1676] (rows=458612 width=15) - Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_1667] (rows=458612 width=15) - predicate:(i_brand_id is not null and i_category_id is not null and i_class_id is not null) - Please refer to the previous TableScan [TS_90] - <-Reducer 88 [ONE_TO_ONE_EDGE] vectorized - FORWARD [RS_1740] - PartitionCols:_col0, _col1, _col2 - Select Operator [SEL_1739] (rows=1 width=12) - Output:["_col0","_col1","_col2"] - Filter Operator [FIL_1738] (rows=1 width=20) - predicate:(_col3 = 3L) - Group By Operator [GBY_1737] (rows=121728 width=19) - Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Union 87 [SIMPLE_EDGE] - <-Reducer 86 [CONTAINS] vectorized - Reduce Output Operator [RS_1840] - PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_1839] (rows=121728 width=19) - Output:["_col0","_col1","_col2","_col3"],aggregations:["count(_col3)"],keys:_col0, _col1, _col2 - Group By Operator [GBY_1838] (rows=121728 width=19) - Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Reducer 82 [SIMPLE_EDGE] - SHUFFLE [RS_487] - PartitionCols:_col0, _col1, _col2 - Please refer to the previous Group By Operator [GBY_297] - <-Reducer 93 [CONTAINS] vectorized - Reduce Output Operator [RS_1846] - PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_1845] (rows=121728 width=19) - Output:["_col0","_col1","_col2","_col3"],aggregations:["count(_col3)"],keys:_col0, _col1, _col2 - Group By Operator [GBY_1844] (rows=121728 width=19) - Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Reducer 91 [SIMPLE_EDGE] - SHUFFLE [RS_507] - PartitionCols:_col0, _col1, _col2 - Please refer to the previous Group By Operator [GBY_317] - <-Reducer 96 [CONTAINS] vectorized - Reduce Output Operator [RS_1852] - PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_1851] (rows=121728 width=19) - Output:["_col0","_col1","_col2","_col3"],aggregations:["count(_col3)"],keys:_col0, _col1, _col2 - Group By Operator [GBY_1850] (rows=121728 width=19) - Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Reducer 94 [SIMPLE_EDGE] - SHUFFLE [RS_528] - PartitionCols:_col0, _col1, _col2 - Please refer to the previous Group By Operator [GBY_338] <-Reducer 65 [ONE_TO_ONE_EDGE] FORWARD [RS_548] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_1420] (rows=3942084 width=130) - Conds:RS_545._col1=RS_1677._col0(Inner),Output:["_col1","_col2","_col3","_col6","_col7","_col8"] + Conds:RS_545._col1=RS_1680._col0(Inner),Output:["_col1","_col2","_col3","_col6","_col7","_col8"] <-Map 69 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1677] + SHUFFLE [RS_1680] PartitionCols:_col0 - Select Operator [SEL_1668] (rows=462000 width=15) + Select Operator [SEL_1671] (rows=462000 width=15) Output:["_col0","_col1","_col2","_col3"] Please refer to the previous TableScan [TS_90] <-Reducer 64 [SIMPLE_EDGE] SHUFFLE [RS_545] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_1419] (rows=3942084 width=118) - Conds:RS_1745._col0=RS_1650._col0(Inner),Output:["_col1","_col2","_col3"] + Conds:RS_1735._col0=RS_1650._col0(Inner),Output:["_col1","_col2","_col3"] <-Map 57 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_1650] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_1645] - <-Map 110 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1745] + <-Map 107 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1735] PartitionCols:_col0 - Select Operator [SEL_1744] (rows=143966864 width=123) + Select Operator [SEL_1734] (rows=143966864 width=123) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_1743] (rows=143966864 width=123) - predicate:((ws_item_sk BETWEEN DynamicValue(RS_549_item_i_item_sk_min) AND DynamicValue(RS_549_item_i_item_sk_max) and in_bloom_filter(ws_item_sk, DynamicValue(RS_549_item_i_item_sk_bloom_filter))) and (ws_sold_date_sk BETWEEN DynamicValue(RS_543_date_dim_d_date_sk_min) AND DynamicValue(RS_543_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_543_date_dim_d_date_sk_bloom_filter))) and ws_sold_date_sk is not null) + Filter Operator [FIL_1733] (rows=143966864 width=123) + predicate:((ws_sold_date_sk BETWEEN DynamicValue(RS_543_date_dim_d_date_sk_min) AND DynamicValue(RS_543_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_543_date_dim_d_date_sk_bloom_filter))) and ws_sold_date_sk is not null) TableScan [TS_459] (rows=144002668 width=123) default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_item_sk","ws_quantity","ws_list_price"] <-Reducer 68 [BROADCAST_EDGE] vectorized - BROADCAST [RS_1736] - Group By Operator [GBY_1735] (rows=1 width=12) + BROADCAST [RS_1732] + Group By Operator [GBY_1731] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Map 57 [CUSTOM_SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_1657] @@ -1090,17 +1020,62 @@ Stage-0 Select Operator [SEL_1651] (rows=50 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_1645] - <-Reducer 90 [BROADCAST_EDGE] vectorized - BROADCAST [RS_1742] - Group By Operator [GBY_1741] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Reducer 89 [CUSTOM_SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_1266] - Group By Operator [GBY_1265] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_1264] (rows=724 width=4) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_1427] + <-Reducer 87 [SIMPLE_EDGE] + SHUFFLE [RS_549] + PartitionCols:_col0 + Merge Join Operator [MERGEJOIN_1427] (rows=724 width=4) + Conds:RS_1689._col1, _col2, _col3=RS_1739._col0, _col1, _col2(Inner),Output:["_col0"] + <-Map 69 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1689] + PartitionCols:_col1, _col2, _col3 + Select Operator [SEL_1679] (rows=458612 width=15) + Output:["_col0","_col1","_col2","_col3"] + Filter Operator [FIL_1670] (rows=458612 width=15) + predicate:(i_brand_id is not null and i_category_id is not null and i_class_id is not null) + Please refer to the previous TableScan [TS_90] + <-Reducer 86 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_1739] + PartitionCols:_col0, _col1, _col2 + Select Operator [SEL_1738] (rows=1 width=12) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_1737] (rows=1 width=20) + predicate:(_col3 = 3L) + Group By Operator [GBY_1736] (rows=121728 width=19) + Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 + <-Union 85 [SIMPLE_EDGE] + <-Reducer 84 [CONTAINS] vectorized + Reduce Output Operator [RS_1834] + PartitionCols:_col0, _col1, _col2 + Group By Operator [GBY_1833] (rows=121728 width=19) + Output:["_col0","_col1","_col2","_col3"],aggregations:["count(_col3)"],keys:_col0, _col1, _col2 + Group By Operator [GBY_1832] (rows=121728 width=19) + Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 + <-Reducer 80 [SIMPLE_EDGE] + SHUFFLE [RS_487] + PartitionCols:_col0, _col1, _col2 + Please refer to the previous Group By Operator [GBY_297] + <-Reducer 90 [CONTAINS] vectorized + Reduce Output Operator [RS_1840] + PartitionCols:_col0, _col1, _col2 + Group By Operator [GBY_1839] (rows=121728 width=19) + Output:["_col0","_col1","_col2","_col3"],aggregations:["count(_col3)"],keys:_col0, _col1, _col2 + Group By Operator [GBY_1838] (rows=121728 width=19) + Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 + <-Reducer 88 [SIMPLE_EDGE] + SHUFFLE [RS_507] + PartitionCols:_col0, _col1, _col2 + Please refer to the previous Group By Operator [GBY_317] + <-Reducer 93 [CONTAINS] vectorized + Reduce Output Operator [RS_1846] + PartitionCols:_col0, _col1, _col2 + Group By Operator [GBY_1845] (rows=121728 width=19) + Output:["_col0","_col1","_col2","_col3"],aggregations:["count(_col3)"],keys:_col0, _col1, _col2 + Group By Operator [GBY_1844] (rows=121728 width=19) + Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 + <-Reducer 91 [SIMPLE_EDGE] + SHUFFLE [RS_528] + PartitionCols:_col0, _col1, _col2 + Please refer to the previous Group By Operator [GBY_338] <-Reducer 6 [CONTAINS] Reduce Output Operator [RS_1449] PartitionCols:_col0, _col1, _col2, _col3, _col4 @@ -1134,15 +1109,15 @@ Stage-0 Select Operator [SEL_1495] (rows=7676736 width=94) Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_1494] (rows=7676736 width=94) - Conds:RS_1773._col0=RS_1752._col0(Inner),Output:["_col1","_col2"] + Conds:RS_1767._col0=RS_1746._col0(Inner),Output:["_col1","_col2"] <-Map 24 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1752] + SHUFFLE [RS_1746] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1749] + Please refer to the previous Select Operator [SEL_1743] <-Map 50 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1773] + SHUFFLE [RS_1767] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1772] + Please refer to the previous Select Operator [SEL_1766] <-Reducer 42 [CONTAINS] Reduce Output Operator [RS_1535] Group By Operator [GBY_1534] (rows=1 width=120) @@ -1152,15 +1127,15 @@ Stage-0 Select Operator [SEL_1531] (rows=3856907 width=114) Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_1530] (rows=3856907 width=114) - Conds:RS_1801._col0=RS_1780._col0(Inner),Output:["_col1","_col2"] + Conds:RS_1795._col0=RS_1774._col0(Inner),Output:["_col1","_col2"] <-Map 40 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1780] + SHUFFLE [RS_1774] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1777] + Please refer to the previous Select Operator [SEL_1771] <-Map 51 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1801] + SHUFFLE [RS_1795] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1800] + Please refer to the previous Select Operator [SEL_1794] <-Reducer 47 [CONTAINS] Reduce Output Operator [RS_1553] Group By Operator [GBY_1552] (rows=1 width=120) @@ -1170,15 +1145,15 @@ Stage-0 Select Operator [SEL_1549] (rows=14736682 width=0) Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_1548] (rows=14736682 width=0) - Conds:RS_1808._col0=RS_1612._col0(Inner),Output:["_col1","_col2"] - <-Map 99 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1612] + Conds:RS_1802._col0=RS_1612._col0(Inner),Output:["_col1","_col2"] + <-Map 96 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_1612] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_1603] <-Map 46 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1808] + SHUFFLE [RS_1802] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1807] + Please refer to the previous Select Operator [SEL_1801] <-Reducer 4 [CUSTOM_SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_1640] Select Operator [SEL_1639] (rows=1 width=8) @@ -1200,8 +1175,8 @@ Stage-0 Output:["_col0"] Merge Join Operator [MERGEJOIN_1437] (rows=14736682 width=0) Conds:RS_1632._col0=RS_1610._col0(Inner),Output:["_col1"] - <-Map 99 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1610] + <-Map 96 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_1610] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_1603] <-Map 1 [SIMPLE_EDGE] vectorized @@ -1217,15 +1192,15 @@ Stage-0 Select Operator [SEL_1477] (rows=7676736 width=3) Output:["_col0"] Merge Join Operator [MERGEJOIN_1476] (rows=7676736 width=3) - Conds:RS_1766._col0=RS_1750._col0(Inner),Output:["_col1"] + Conds:RS_1760._col0=RS_1744._col0(Inner),Output:["_col1"] <-Map 24 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1750] + SHUFFLE [RS_1744] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1749] + Please refer to the previous Select Operator [SEL_1743] <-Map 20 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1766] + SHUFFLE [RS_1760] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1765] + Please refer to the previous Select Operator [SEL_1759] <-Reducer 37 [CONTAINS] Reduce Output Operator [RS_1517] Group By Operator [GBY_1516] (rows=1 width=8) @@ -1235,18 +1210,18 @@ Stage-0 Select Operator [SEL_1513] (rows=3856907 width=3) Output:["_col0"] Merge Join Operator [MERGEJOIN_1512] (rows=3856907 width=3) - Conds:RS_1794._col0=RS_1778._col0(Inner),Output:["_col1"] + Conds:RS_1788._col0=RS_1772._col0(Inner),Output:["_col1"] <-Map 40 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1778] + SHUFFLE [RS_1772] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1777] + Please refer to the previous Select Operator [SEL_1771] <-Map 36 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1794] + SHUFFLE [RS_1788] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1793] + Please refer to the previous Select Operator [SEL_1787] <-Reducer 56 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1697] - Group By Operator [GBY_1696] (rows=1 width=132) + PARTITION_ONLY_SHUFFLE [RS_1695] + Group By Operator [GBY_1694] (rows=1 width=132) Output:["_col0","_col1","_col2","_col3","_col4"],aggregations:["sum(VALUE._col0)","count(VALUE._col1)"],keys:KEY._col0, KEY._col1, KEY._col2 <-Reducer 55 [SIMPLE_EDGE] SHUFFLE [RS_177] @@ -1257,144 +1232,133 @@ Stage-0 Output:["_col0","_col1","_col2","_col3"] Merge Join Operator [MERGEJOIN_1428] (rows=1 width=128) Conds:RS_171._col1=RS_172._col0(Inner),Output:["_col2","_col3","_col6","_col7","_col8"] + <-Reducer 54 [ONE_TO_ONE_EDGE] + FORWARD [RS_171] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_1390] (rows=15062131 width=15) + Conds:RS_168._col1=RS_1673._col0(Inner),Output:["_col1","_col2","_col3","_col6","_col7","_col8"] + <-Map 69 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1673] + PartitionCols:_col0 + Select Operator [SEL_1664] (rows=462000 width=15) + Output:["_col0","_col1","_col2","_col3"] + Please refer to the previous TableScan [TS_90] + <-Reducer 53 [SIMPLE_EDGE] + SHUFFLE [RS_168] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_1389] (rows=15062131 width=4) + Conds:RS_1662._col0=RS_1646._col0(Inner),Output:["_col1","_col2","_col3"] + <-Map 57 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_1646] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_1645] + <-Map 52 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1662] + PartitionCols:_col0 + Select Operator [SEL_1661] (rows=550076554 width=118) + Output:["_col0","_col1","_col2","_col3"] + Filter Operator [FIL_1660] (rows=550076554 width=118) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_166_date_dim_d_date_sk_min) AND DynamicValue(RS_166_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_166_date_dim_d_date_sk_bloom_filter))) and ss_sold_date_sk is not null) + TableScan [TS_82] (rows=575995635 width=118) + default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_quantity","ss_list_price"] + <-Reducer 58 [BROADCAST_EDGE] vectorized + BROADCAST [RS_1659] + Group By Operator [GBY_1658] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 57 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_1655] + Group By Operator [GBY_1652] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_1647] (rows=50 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_1645] <-Reducer 70 [SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_172] + SHUFFLE [RS_172] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_1397] (rows=724 width=4) - Conds:RS_1678._col1, _col2, _col3=RS_1690._col0, _col1, _col2(Inner),Output:["_col0"] + Conds:RS_1681._col1, _col2, _col3=RS_1693._col0, _col1, _col2(Inner),Output:["_col0"] <-Map 69 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1678] + SHUFFLE [RS_1681] PartitionCols:_col1, _col2, _col3 - Select Operator [SEL_1669] (rows=458612 width=15) + Select Operator [SEL_1672] (rows=458612 width=15) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_1660] (rows=458612 width=15) + Filter Operator [FIL_1663] (rows=458612 width=15) predicate:(i_brand_id is not null and i_category_id is not null and i_class_id is not null) Please refer to the previous TableScan [TS_90] - <-Reducer 75 [ONE_TO_ONE_EDGE] vectorized - FORWARD [RS_1690] + <-Reducer 74 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_1693] PartitionCols:_col0, _col1, _col2 - Select Operator [SEL_1689] (rows=1 width=12) + Select Operator [SEL_1692] (rows=1 width=12) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_1688] (rows=1 width=20) + Filter Operator [FIL_1691] (rows=1 width=20) predicate:(_col3 = 3L) - Group By Operator [GBY_1687] (rows=121728 width=19) + Group By Operator [GBY_1690] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Union 74 [SIMPLE_EDGE] - <-Reducer 73 [CONTAINS] vectorized - Reduce Output Operator [RS_1818] + <-Union 73 [SIMPLE_EDGE] + <-Reducer 72 [CONTAINS] vectorized + Reduce Output Operator [RS_1812] PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_1817] (rows=121728 width=19) + Group By Operator [GBY_1811] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(_col3)"],keys:_col0, _col1, _col2 - Group By Operator [GBY_1816] (rows=121728 width=19) + Group By Operator [GBY_1810] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Reducer 72 [SIMPLE_EDGE] + <-Reducer 71 [SIMPLE_EDGE] SHUFFLE [RS_110] PartitionCols:_col0, _col1, _col2 Group By Operator [GBY_109] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count()"],keys:_col4, _col5, _col6 Merge Join Operator [MERGEJOIN_1392] (rows=14628613 width=11) - Conds:RS_105._col1=RS_1679._col0(Inner),Output:["_col4","_col5","_col6"] + Conds:RS_105._col1=RS_1682._col0(Inner),Output:["_col4","_col5","_col6"] <-Map 69 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1679] + SHUFFLE [RS_1682] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1669] - <-Reducer 98 [SIMPLE_EDGE] + Please refer to the previous Select Operator [SEL_1672] + <-Reducer 95 [SIMPLE_EDGE] SHUFFLE [RS_105] PartitionCols:_col1 Please refer to the previous Merge Join Operator [MERGEJOIN_1391] - <-Reducer 77 [CONTAINS] vectorized - Reduce Output Operator [RS_1826] + <-Reducer 76 [CONTAINS] vectorized + Reduce Output Operator [RS_1820] PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_1825] (rows=121728 width=19) + Group By Operator [GBY_1819] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(_col3)"],keys:_col0, _col1, _col2 - Group By Operator [GBY_1824] (rows=121728 width=19) + Group By Operator [GBY_1818] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Reducer 76 [SIMPLE_EDGE] + <-Reducer 75 [SIMPLE_EDGE] SHUFFLE [RS_130] PartitionCols:_col0, _col1, _col2 Group By Operator [GBY_129] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count()"],keys:_col4, _col5, _col6 Merge Join Operator [MERGEJOIN_1394] (rows=7620440 width=11) - Conds:RS_125._col1=RS_1680._col0(Inner),Output:["_col4","_col5","_col6"] + Conds:RS_125._col1=RS_1683._col0(Inner),Output:["_col4","_col5","_col6"] <-Map 69 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1680] + SHUFFLE [RS_1683] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1669] - <-Reducer 101 [SIMPLE_EDGE] + Please refer to the previous Select Operator [SEL_1672] + <-Reducer 98 [SIMPLE_EDGE] SHUFFLE [RS_125] PartitionCols:_col1 Please refer to the previous Merge Join Operator [MERGEJOIN_1393] - <-Reducer 79 [CONTAINS] vectorized - Reduce Output Operator [RS_1834] + <-Reducer 78 [CONTAINS] vectorized + Reduce Output Operator [RS_1828] PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_1833] (rows=121728 width=19) + Group By Operator [GBY_1827] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(_col3)"],keys:_col0, _col1, _col2 - Group By Operator [GBY_1832] (rows=121728 width=19) + Group By Operator [GBY_1826] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Reducer 78 [SIMPLE_EDGE] + <-Reducer 77 [SIMPLE_EDGE] SHUFFLE [RS_151] PartitionCols:_col0, _col1, _col2 Group By Operator [GBY_150] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count()"],keys:_col4, _col5, _col6 Merge Join Operator [MERGEJOIN_1396] (rows=3828623 width=11) - Conds:RS_146._col1=RS_1681._col0(Inner),Output:["_col4","_col5","_col6"] + Conds:RS_146._col1=RS_1684._col0(Inner),Output:["_col4","_col5","_col6"] <-Map 69 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1681] + SHUFFLE [RS_1684] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1669] - <-Reducer 103 [SIMPLE_EDGE] + Please refer to the previous Select Operator [SEL_1672] + <-Reducer 100 [SIMPLE_EDGE] SHUFFLE [RS_146] PartitionCols:_col1 Please refer to the previous Merge Join Operator [MERGEJOIN_1395] - <-Reducer 54 [ONE_TO_ONE_EDGE] - FORWARD [RS_171] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_1390] (rows=15062131 width=15) - Conds:RS_168._col1=RS_1670._col0(Inner),Output:["_col1","_col2","_col3","_col6","_col7","_col8"] - <-Map 69 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1670] - PartitionCols:_col0 - Select Operator [SEL_1661] (rows=462000 width=15) - Output:["_col0","_col1","_col2","_col3"] - Please refer to the previous TableScan [TS_90] - <-Reducer 53 [SIMPLE_EDGE] - SHUFFLE [RS_168] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_1389] (rows=15062131 width=4) - Conds:RS_1695._col0=RS_1646._col0(Inner),Output:["_col1","_col2","_col3"] - <-Map 57 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1646] - PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1645] - <-Map 52 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1695] - PartitionCols:_col0 - Select Operator [SEL_1694] (rows=550076554 width=118) - Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_1693] (rows=550076554 width=118) - predicate:((ss_item_sk BETWEEN DynamicValue(RS_172_item_i_item_sk_min) AND DynamicValue(RS_172_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_172_item_i_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_166_date_dim_d_date_sk_min) AND DynamicValue(RS_166_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_166_date_dim_d_date_sk_bloom_filter))) and ss_sold_date_sk is not null) - TableScan [TS_82] (rows=575995635 width=118) - default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_quantity","ss_list_price"] - <-Reducer 58 [BROADCAST_EDGE] vectorized - BROADCAST [RS_1659] - Group By Operator [GBY_1658] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 57 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1655] - Group By Operator [GBY_1652] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_1647] (rows=50 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_1645] - <-Reducer 71 [BROADCAST_EDGE] vectorized - BROADCAST [RS_1692] - Group By Operator [GBY_1691] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Reducer 70 [CUSTOM_SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_888] - Group By Operator [GBY_887] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_886] (rows=724 width=4) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_1397] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query16.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query16.q.out index 3143be8480..d09484758f 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query16.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query16.q.out @@ -73,17 +73,15 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 12 (BROADCAST_EDGE), Reducer 14 (BROADCAST_EDGE), Reducer 16 (BROADCAST_EDGE) -Map 17 <- Reducer 10 (BROADCAST_EDGE) +Map 1 <- Reducer 13 (BROADCAST_EDGE) +Map 15 <- Reducer 10 (BROADCAST_EDGE) Reducer 10 <- Reducer 4 (CUSTOM_SIMPLE_EDGE) -Reducer 12 <- Map 11 (CUSTOM_SIMPLE_EDGE) -Reducer 14 <- Map 13 (CUSTOM_SIMPLE_EDGE) -Reducer 16 <- Map 15 (CUSTOM_SIMPLE_EDGE) +Reducer 13 <- Map 12 (CUSTOM_SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 11 (SIMPLE_EDGE) -Reducer 3 <- Map 13 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 15 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Map 17 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) -Reducer 6 <- Map 18 (SIMPLE_EDGE), Reducer 5 (ONE_TO_ONE_EDGE) +Reducer 3 <- Map 12 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 4 <- Map 14 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 5 <- Map 15 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) +Reducer 6 <- Map 16 (SIMPLE_EDGE), Reducer 5 (ONE_TO_ONE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) Reducer 8 <- Reducer 7 (CUSTOM_SIMPLE_EDGE) Reducer 9 <- Reducer 8 (SIMPLE_EDGE) @@ -93,22 +91,22 @@ Stage-0 limit:-1 Stage-1 Reducer 9 vectorized - File Output Operator [FS_169] - Limit [LIM_168] (rows=1 width=240) + File Output Operator [FS_159] + Limit [LIM_158] (rows=1 width=240) Number of rows:100 - Select Operator [SEL_167] (rows=1 width=240) + Select Operator [SEL_157] (rows=1 width=240) Output:["_col0","_col1","_col2"] <-Reducer 8 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_166] - Select Operator [SEL_165] (rows=1 width=240) + SHUFFLE [RS_156] + Select Operator [SEL_155] (rows=1 width=240) Output:["_col1","_col2","_col3"] - Group By Operator [GBY_164] (rows=1 width=232) + Group By Operator [GBY_154] (rows=1 width=232) Output:["_col0","_col1","_col2"],aggregations:["count(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)"] <-Reducer 7 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_163] - Group By Operator [GBY_162] (rows=1 width=232) + PARTITION_ONLY_SHUFFLE [RS_153] + Group By Operator [GBY_152] (rows=1 width=232) Output:["_col0","_col1","_col2"],aggregations:["count(_col0)","sum(_col1)","sum(_col2)"] - Group By Operator [GBY_161] (rows=5150256 width=228) + Group By Operator [GBY_151] (rows=5150256 width=228) Output:["_col0","_col1","_col2"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)"],keys:KEY._col0 <-Reducer 6 [SIMPLE_EDGE] SHUFFLE [RS_69] @@ -120,11 +118,11 @@ Stage-0 Filter Operator [FIL_36] (rows=5150256 width=218) predicate:_col14 is null Merge Join Operator [MERGEJOIN_125] (rows=13282454 width=218) - Conds:RS_33._col4=RS_160._col0(Left Outer),Output:["_col4","_col5","_col6","_col14"] - <-Map 18 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_160] + Conds:RS_33._col4=RS_150._col0(Left Outer),Output:["_col4","_col5","_col6","_col14"] + <-Map 16 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_150] PartitionCols:_col0 - Select Operator [SEL_159] (rows=28798881 width=8) + Select Operator [SEL_149] (rows=28798881 width=8) Output:["_col0","_col1"] TableScan [TS_25] (rows=28798881 width=4) default@catalog_returns,cr1,Tbl:COMPLETE,Col:COMPLETE,Output:["cr_order_number"] @@ -134,18 +132,18 @@ Stage-0 Select Operator [SEL_32] (rows=5150256 width=200) Output:["_col4","_col5","_col6"] Merge Join Operator [MERGEJOIN_124] (rows=5150256 width=202) - Conds:RS_29._col4=RS_158._col0(Left Semi),Output:["_col3","_col4","_col5","_col6","_col14"],residual filter predicates:{(_col3 <> _col14)} + Conds:RS_29._col4=RS_148._col0(Left Semi),Output:["_col3","_col4","_col5","_col6","_col14"],residual filter predicates:{(_col3 <> _col14)} <-Reducer 4 [SIMPLE_EDGE] SHUFFLE [RS_29] PartitionCols:_col4 Merge Join Operator [MERGEJOIN_123] (rows=5150256 width=200) - Conds:RS_18._col2=RS_144._col0(Inner),Output:["_col3","_col4","_col5","_col6"] - <-Map 15 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_144] + Conds:RS_18._col2=RS_142._col0(Inner),Output:["_col3","_col4","_col5","_col6"] + <-Map 14 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_142] PartitionCols:_col0 - Select Operator [SEL_143] (rows=10 width=102) + Select Operator [SEL_141] (rows=10 width=102) Output:["_col0"] - Filter Operator [FIL_142] (rows=10 width=102) + Filter Operator [FIL_140] (rows=10 width=102) predicate:(cc_county) IN ('Ziebach County', 'Levy County', 'Huron County', 'Franklin Parish', 'Daviess County') TableScan [TS_9] (rows=60 width=102) default@call_center,call_center,Tbl:COMPLETE,Col:COMPLETE,Output:["cc_call_center_sk","cc_county"] @@ -153,13 +151,13 @@ Stage-0 SHUFFLE [RS_18] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_122] (rows=30901534 width=230) - Conds:RS_15._col1=RS_136._col0(Inner),Output:["_col2","_col3","_col4","_col5","_col6"] - <-Map 13 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_136] + Conds:RS_15._col1=RS_128._col0(Inner),Output:["_col2","_col3","_col4","_col5","_col6"] + <-Map 12 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_128] PartitionCols:_col0 - Select Operator [SEL_135] (rows=784314 width=90) + Select Operator [SEL_127] (rows=784314 width=90) Output:["_col0"] - Filter Operator [FIL_134] (rows=784314 width=90) + Filter Operator [FIL_126] (rows=784314 width=90) predicate:(ca_state = 'NY') TableScan [TS_6] (rows=40000000 width=90) default@customer_address,customer_address,Tbl:COMPLETE,Col:COMPLETE,Output:["ca_address_sk","ca_state"] @@ -167,72 +165,50 @@ Stage-0 SHUFFLE [RS_15] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_121] (rows=31519516 width=234) - Conds:RS_152._col0=RS_128._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6"] - <-Map 11 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_128] - PartitionCols:_col0 - Select Operator [SEL_127] (rows=8116 width=98) - Output:["_col0"] - Filter Operator [FIL_126] (rows=8116 width=98) - predicate:CAST( d_date AS TIMESTAMP) BETWEEN TIMESTAMP'2001-04-01 00:00:00' AND TIMESTAMP'2001-05-31 00:00:00' - TableScan [TS_3] (rows=73049 width=98) - default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"] + Conds:RS_136._col0=RS_139._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_152] + SHUFFLE [RS_136] PartitionCols:_col0 - Select Operator [SEL_151] (rows=283695062 width=243) + Select Operator [SEL_135] (rows=283695062 width=243) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] - Filter Operator [FIL_150] (rows=283695062 width=243) - predicate:((cs_call_center_sk BETWEEN DynamicValue(RS_19_call_center_cc_call_center_sk_min) AND DynamicValue(RS_19_call_center_cc_call_center_sk_max) and in_bloom_filter(cs_call_center_sk, DynamicValue(RS_19_call_center_cc_call_center_sk_bloom_filter))) and (cs_ship_addr_sk BETWEEN DynamicValue(RS_16_customer_address_ca_address_sk_min) AND DynamicValue(RS_16_customer_address_ca_address_sk_max) and in_bloom_filter(cs_ship_addr_sk, DynamicValue(RS_16_customer_address_ca_address_sk_bloom_filter))) and (cs_ship_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(cs_ship_date_sk, DynamicValue(RS_13_date_dim_d_date_sk_bloom_filter))) and cs_call_center_sk is not null and cs_ship_addr_sk is not null and cs_ship_date_sk is not null) + Filter Operator [FIL_134] (rows=283695062 width=243) + predicate:((cs_ship_addr_sk BETWEEN DynamicValue(RS_16_customer_address_ca_address_sk_min) AND DynamicValue(RS_16_customer_address_ca_address_sk_max) and in_bloom_filter(cs_ship_addr_sk, DynamicValue(RS_16_customer_address_ca_address_sk_bloom_filter))) and cs_call_center_sk is not null and cs_ship_addr_sk is not null and cs_ship_date_sk is not null) TableScan [TS_0] (rows=287989836 width=243) default@catalog_sales,cs1,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_ship_date_sk","cs_ship_addr_sk","cs_call_center_sk","cs_warehouse_sk","cs_order_number","cs_ext_ship_cost","cs_net_profit"] - <-Reducer 12 [BROADCAST_EDGE] vectorized + <-Reducer 13 [BROADCAST_EDGE] vectorized BROADCAST [RS_133] Group By Operator [GBY_132] (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 + <-Map 12 [CUSTOM_SIMPLE_EDGE] vectorized SHUFFLE [RS_131] Group By Operator [GBY_130] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_129] (rows=8116 width=4) + Select Operator [SEL_129] (rows=784314 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_127] - <-Reducer 14 [BROADCAST_EDGE] vectorized - BROADCAST [RS_141] - Group By Operator [GBY_140] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 13 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_139] - Group By Operator [GBY_138] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_137] (rows=784314 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_135] - <-Reducer 16 [BROADCAST_EDGE] vectorized - BROADCAST [RS_149] - Group By Operator [GBY_148] (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_147] - Group By Operator [GBY_146] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_145] (rows=10 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_143] - <-Map 17 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_158] + <-Map 11 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_139] + PartitionCols:_col0 + Select Operator [SEL_138] (rows=8116 width=98) + Output:["_col0"] + Filter Operator [FIL_137] (rows=8116 width=98) + predicate:CAST( d_date AS TIMESTAMP) BETWEEN TIMESTAMP'2001-04-01 00:00:00' AND TIMESTAMP'2001-05-31 00:00:00' + TableScan [TS_3] (rows=73049 width=98) + default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"] + <-Map 15 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_148] PartitionCols:_col0 - Group By Operator [GBY_157] (rows=286548719 width=7) + Group By Operator [GBY_147] (rows=286548719 width=7) Output:["_col0","_col1"],keys:_col0, _col1 - Select Operator [SEL_156] (rows=286548719 width=7) + Select Operator [SEL_146] (rows=286548719 width=7) Output:["_col0","_col1"] - Filter Operator [FIL_155] (rows=286548719 width=7) + Filter Operator [FIL_145] (rows=286548719 width=7) predicate:((cs_order_number BETWEEN DynamicValue(RS_29_cs1_cs_order_number_min) AND DynamicValue(RS_29_cs1_cs_order_number_max) and in_bloom_filter(cs_order_number, DynamicValue(RS_29_cs1_cs_order_number_bloom_filter))) and cs_warehouse_sk is not null) TableScan [TS_22] (rows=287989836 width=7) default@catalog_sales,cs2,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_warehouse_sk","cs_order_number"] <-Reducer 10 [BROADCAST_EDGE] vectorized - BROADCAST [RS_154] - Group By Operator [GBY_153] (rows=1 width=12) + BROADCAST [RS_144] + Group By Operator [GBY_143] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Reducer 4 [CUSTOM_SIMPLE_EDGE] SHUFFLE [RS_111] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query17.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query17.q.out index e796101e45..1ccf250b7c 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query17.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query17.q.out @@ -103,20 +103,16 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 12 (BROADCAST_EDGE), Reducer 13 (BROADCAST_EDGE), Reducer 16 (BROADCAST_EDGE), Reducer 17 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) -Map 19 <- Reducer 14 (BROADCAST_EDGE), Reducer 16 (BROADCAST_EDGE), Reducer 17 (BROADCAST_EDGE) -Reducer 10 <- Map 19 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) -Reducer 11 <- Reducer 10 (SIMPLE_EDGE), Reducer 15 (SIMPLE_EDGE) -Reducer 12 <- Reducer 10 (CUSTOM_SIMPLE_EDGE) -Reducer 13 <- Reducer 10 (CUSTOM_SIMPLE_EDGE) -Reducer 14 <- Map 8 (CUSTOM_SIMPLE_EDGE) -Reducer 15 <- Map 20 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) -Reducer 16 <- Reducer 15 (CUSTOM_SIMPLE_EDGE) -Reducer 17 <- Reducer 15 (CUSTOM_SIMPLE_EDGE) +Map 1 <- Reducer 9 (BROADCAST_EDGE) +Map 15 <- Reducer 13 (BROADCAST_EDGE) +Reducer 10 <- Map 15 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) +Reducer 11 <- Reducer 10 (SIMPLE_EDGE), Reducer 12 (SIMPLE_EDGE) +Reducer 12 <- Map 16 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) +Reducer 13 <- Reducer 12 (CUSTOM_SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) -Reducer 3 <- Map 18 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 3 <- Map 14 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 11 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Map 21 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) +Reducer 5 <- Map 17 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) Reducer 9 <- Map 8 (CUSTOM_SIMPLE_EDGE) @@ -126,16 +122,16 @@ Stage-0 limit:100 Stage-1 Reducer 7 vectorized - File Output Operator [FS_259] - Limit [LIM_258] (rows=100 width=466) + File Output Operator [FS_246] + Limit [LIM_245] (rows=100 width=466) Number of rows:100 - Select Operator [SEL_257] (rows=4815969644 width=466) + Select Operator [SEL_244] (rows=4815969644 width=466) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14"] <-Reducer 6 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_256] - Select Operator [SEL_255] (rows=4815969644 width=466) + SHUFFLE [RS_243] + Select Operator [SEL_242] (rows=4815969644 width=466) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13"] - Group By Operator [GBY_254] (rows=4815969644 width=466) + Group By Operator [GBY_241] (rows=4815969644 width=466) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14"],aggregations:["count(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)","sum(VALUE._col3)","count(VALUE._col4)","sum(VALUE._col5)","sum(VALUE._col6)","sum(VALUE._col7)","count(VALUE._col8)","sum(VALUE._col9)","sum(VALUE._col10)","sum(VALUE._col11)"],keys:KEY._col0, KEY._col1, KEY._col2 <-Reducer 5 [SIMPLE_EDGE] SHUFFLE [RS_48] @@ -147,11 +143,11 @@ Stage-0 Select Operator [SEL_45] (rows=4815969644 width=381) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11"] Merge Join Operator [MERGEJOIN_211] (rows=4815969644 width=381) - Conds:RS_42._col3=RS_253._col0(Inner),Output:["_col5","_col8","_col9","_col13","_col19","_col22"] - <-Map 21 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_253] + Conds:RS_42._col3=RS_240._col0(Inner),Output:["_col5","_col8","_col9","_col13","_col19","_col22"] + <-Map 17 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_240] PartitionCols:_col0 - Select Operator [SEL_252] (rows=1704 width=90) + Select Operator [SEL_239] (rows=1704 width=90) Output:["_col0","_col1"] TableScan [TS_31] (rows=1704 width=90) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_state"] @@ -165,11 +161,34 @@ Stage-0 PartitionCols:_col6, _col7, _col8 Merge Join Operator [MERGEJOIN_209] (rows=540026342 width=19) Conds:RS_27._col2, _col1=RS_28._col1, _col2(Inner),Output:["_col3","_col6","_col7","_col8","_col9"] + <-Reducer 12 [SIMPLE_EDGE] + PARTITION_ONLY_SHUFFLE [RS_28] + PartitionCols:_col1, _col2 + Merge Join Operator [MERGEJOIN_208] (rows=2681277 width=10) + Conds:RS_233._col0=RS_221._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + <-Map 8 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_221] + PartitionCols:_col0 + Select Operator [SEL_217] (rows=3652 width=4) + Output:["_col0"] + Filter Operator [FIL_214] (rows=3652 width=94) + predicate:(d_quarter_name) IN ('2000Q1', '2000Q2', '2000Q3') + TableScan [TS_3] (rows=73049 width=94) + default@date_dim,d1,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_quarter_name"] + <-Map 16 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_233] + PartitionCols:_col0 + Select Operator [SEL_232] (rows=53632139 width=19) + Output:["_col0","_col1","_col2","_col3","_col4"] + Filter Operator [FIL_231] (rows=53632139 width=19) + predicate:(sr_customer_sk is not null and sr_returned_date_sk is not null) + TableScan [TS_14] (rows=57591150 width=19) + default@store_returns,store_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["sr_returned_date_sk","sr_item_sk","sr_customer_sk","sr_ticket_number","sr_return_quantity"] <-Reducer 10 [SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_27] + SHUFFLE [RS_27] PartitionCols:_col2, _col1 Merge Join Operator [MERGEJOIN_207] (rows=14254135 width=11) - Conds:RS_242._col0=RS_220._col0(Inner),Output:["_col1","_col2","_col3"] + Conds:RS_238._col0=RS_220._col0(Inner),Output:["_col1","_col2","_col3"] <-Map 8 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_220] PartitionCols:_col0 @@ -177,81 +196,36 @@ Stage-0 Output:["_col0"] Filter Operator [FIL_213] (rows=3652 width=94) predicate:(d_quarter_name) IN ('2000Q1', '2000Q2', '2000Q3') - TableScan [TS_3] (rows=73049 width=94) - default@date_dim,d1,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_quarter_name"] - <-Map 19 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_242] + Please refer to the previous TableScan [TS_3] + <-Map 15 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_238] PartitionCols:_col0 - Select Operator [SEL_241] (rows=285117831 width=15) + Select Operator [SEL_237] (rows=285117831 width=15) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_240] (rows=285117831 width=15) - predicate:((cs_bill_customer_sk BETWEEN DynamicValue(RS_28_store_returns_sr_customer_sk_min) AND DynamicValue(RS_28_store_returns_sr_customer_sk_max) and in_bloom_filter(cs_bill_customer_sk, DynamicValue(RS_28_store_returns_sr_customer_sk_bloom_filter))) and (cs_item_sk BETWEEN DynamicValue(RS_28_store_returns_sr_item_sk_min) AND DynamicValue(RS_28_store_returns_sr_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_28_store_returns_sr_item_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_25_d3_d_date_sk_min) AND DynamicValue(RS_25_d3_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_25_d3_d_date_sk_bloom_filter))) and cs_bill_customer_sk is not null and cs_sold_date_sk is not null) + Filter Operator [FIL_236] (rows=285117831 width=15) + predicate:((cs_bill_customer_sk BETWEEN DynamicValue(RS_28_store_returns_sr_customer_sk_min) AND DynamicValue(RS_28_store_returns_sr_customer_sk_max) and in_bloom_filter(cs_bill_customer_sk, DynamicValue(RS_28_store_returns_sr_customer_sk_bloom_filter))) and cs_bill_customer_sk is not null and cs_sold_date_sk is not null) TableScan [TS_8] (rows=287989836 width=15) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_bill_customer_sk","cs_item_sk","cs_quantity"] - <-Reducer 16 [BROADCAST_EDGE] vectorized - BROADCAST [RS_234] - Group By Operator [GBY_232] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Reducer 15 [CUSTOM_SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_109] - Group By Operator [GBY_108] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_107] (rows=2681277 width=8) - Output:["_col0"] - Merge Join Operator [MERGEJOIN_208] (rows=2681277 width=10) - Conds:RS_231._col0=RS_222._col0(Inner),Output:["_col1","_col2","_col3","_col4"] - <-Map 8 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_222] - PartitionCols:_col0 - Select Operator [SEL_217] (rows=3652 width=4) - Output:["_col0"] - Filter Operator [FIL_214] (rows=3652 width=94) - predicate:(d_quarter_name) IN ('2000Q1', '2000Q2', '2000Q3') - Please refer to the previous TableScan [TS_3] - <-Map 20 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_231] - PartitionCols:_col0 - Select Operator [SEL_230] (rows=53632139 width=19) - Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_229] (rows=53632139 width=19) - predicate:(sr_customer_sk is not null and sr_returned_date_sk is not null) - TableScan [TS_14] (rows=57591150 width=19) - default@store_returns,store_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["sr_returned_date_sk","sr_item_sk","sr_customer_sk","sr_ticket_number","sr_return_quantity"] - <-Reducer 17 [BROADCAST_EDGE] vectorized - BROADCAST [RS_239] - Group By Operator [GBY_237] (rows=1 width=12) + <-Reducer 13 [BROADCAST_EDGE] vectorized + BROADCAST [RS_235] + Group By Operator [GBY_234] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Reducer 15 [CUSTOM_SIMPLE_EDGE] + <-Reducer 12 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_124] Group By Operator [GBY_123] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] Select Operator [SEL_122] (rows=2681277 width=2) Output:["_col0"] Please refer to the previous Merge Join Operator [MERGEJOIN_208] - <-Reducer 14 [BROADCAST_EDGE] vectorized - BROADCAST [RS_236] - Group By Operator [GBY_235] (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_226] - Group By Operator [GBY_224] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_221] (rows=3652 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_216] - <-Reducer 15 [SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_28] - PartitionCols:_col1, _col2 - Please refer to the previous Merge Join Operator [MERGEJOIN_208] <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_39] PartitionCols:_col1, _col2, _col4 Merge Join Operator [MERGEJOIN_206] (rows=27749405 width=294) - Conds:RS_36._col1=RS_251._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col8","_col9"] - <-Map 18 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_251] + Conds:RS_36._col1=RS_230._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col8","_col9"] + <-Map 14 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_230] PartitionCols:_col0 - Select Operator [SEL_250] (rows=462000 width=288) + Select Operator [SEL_229] (rows=462000 width=288) Output:["_col0","_col1","_col2"] TableScan [TS_6] (rows=462000 width=288) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_item_id","i_item_desc"] @@ -259,7 +233,7 @@ Stage-0 SHUFFLE [RS_36] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_205] (rows=27749405 width=10) - Conds:RS_249._col0=RS_218._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5"] + Conds:RS_228._col0=RS_218._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5"] <-Map 8 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_218] PartitionCols:_col0 @@ -269,49 +243,21 @@ Stage-0 predicate:(d_quarter_name = '2000Q1') Please refer to the previous TableScan [TS_3] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_249] + SHUFFLE [RS_228] PartitionCols:_col0 - Select Operator [SEL_248] (rows=501694138 width=23) + Select Operator [SEL_227] (rows=501694138 width=23) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] - Filter Operator [FIL_247] (rows=501694138 width=23) - predicate:((ss_customer_sk BETWEEN DynamicValue(RS_27_catalog_sales_cs_bill_customer_sk_min) AND DynamicValue(RS_27_catalog_sales_cs_bill_customer_sk_max) and in_bloom_filter(ss_customer_sk, DynamicValue(RS_27_catalog_sales_cs_bill_customer_sk_bloom_filter))) and (ss_customer_sk BETWEEN DynamicValue(RS_28_store_returns_sr_customer_sk_min) AND DynamicValue(RS_28_store_returns_sr_customer_sk_max) and in_bloom_filter(ss_customer_sk, DynamicValue(RS_28_store_returns_sr_customer_sk_bloom_filter))) and (ss_item_sk BETWEEN DynamicValue(RS_27_catalog_sales_cs_item_sk_min) AND DynamicValue(RS_27_catalog_sales_cs_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_27_catalog_sales_cs_item_sk_bloom_filter))) and (ss_item_sk BETWEEN DynamicValue(RS_28_store_returns_sr_item_sk_min) AND DynamicValue(RS_28_store_returns_sr_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_28_store_returns_sr_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_34_d1_d_date_sk_min) AND DynamicValue(RS_34_d1_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_34_d1_d_date_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) + Filter Operator [FIL_226] (rows=501694138 width=23) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_34_d1_d_date_sk_min) AND DynamicValue(RS_34_d1_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_34_d1_d_date_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_0] (rows=575995635 width=23) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_customer_sk","ss_store_sk","ss_ticket_number","ss_quantity"] - <-Reducer 16 [BROADCAST_EDGE] vectorized - BROADCAST [RS_233] - Please refer to the previous Group By Operator [GBY_232] - <-Reducer 17 [BROADCAST_EDGE] vectorized - BROADCAST [RS_238] - Please refer to the previous Group By Operator [GBY_237] - <-Reducer 12 [BROADCAST_EDGE] vectorized - BROADCAST [RS_244] - Group By Operator [GBY_243] (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_114] - Group By Operator [GBY_113] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_112] (rows=14254135 width=8) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_207] - <-Reducer 13 [BROADCAST_EDGE] vectorized - BROADCAST [RS_246] - Group By Operator [GBY_245] (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_129] - Group By Operator [GBY_128] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_127] (rows=14254135 width=7) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_207] <-Reducer 9 [BROADCAST_EDGE] vectorized - BROADCAST [RS_228] - Group By Operator [GBY_227] (rows=1 width=12) + BROADCAST [RS_225] + Group By Operator [GBY_224] (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_225] - Group By Operator [GBY_223] (rows=1 width=12) + PARTITION_ONLY_SHUFFLE [RS_223] + Group By Operator [GBY_222] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] Select Operator [SEL_219] (rows=101 width=4) Output:["_col0"] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query18.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query18.q.out index b7f97780c7..3f503e1740 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query18.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query18.q.out @@ -81,34 +81,32 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 10 <- Reducer 15 (BROADCAST_EDGE), Reducer 17 (BROADCAST_EDGE), Reducer 7 (BROADCAST_EDGE) -Reducer 11 <- Map 10 (SIMPLE_EDGE), Map 14 (SIMPLE_EDGE) +Map 9 <- Reducer 14 (BROADCAST_EDGE) +Reducer 10 <- Map 13 (SIMPLE_EDGE), Map 9 (SIMPLE_EDGE) +Reducer 11 <- Map 15 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE) Reducer 12 <- Map 16 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE) -Reducer 13 <- Map 18 (SIMPLE_EDGE), Reducer 12 (SIMPLE_EDGE) -Reducer 15 <- Map 14 (CUSTOM_SIMPLE_EDGE) -Reducer 17 <- Map 16 (CUSTOM_SIMPLE_EDGE) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) -Reducer 3 <- Map 9 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Reducer 13 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 14 <- Map 13 (CUSTOM_SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) +Reducer 3 <- Map 8 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 4 <- Reducer 12 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) -Reducer 7 <- Reducer 3 (CUSTOM_SIMPLE_EDGE) Stage-0 Fetch Operator limit:100 Stage-1 Reducer 6 vectorized - File Output Operator [FS_177] - Limit [LIM_176] (rows=100 width=1165) + File Output Operator [FS_170] + Limit [LIM_169] (rows=100 width=1165) Number of rows:100 - Select Operator [SEL_175] (rows=10969055 width=1165) + Select Operator [SEL_168] (rows=10969055 width=1165) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10"] <-Reducer 5 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_174] - Select Operator [SEL_173] (rows=10969055 width=1165) + SHUFFLE [RS_167] + Select Operator [SEL_166] (rows=10969055 width=1165) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10"] - Group By Operator [GBY_172] (rows=10969055 width=1229) + Group By Operator [GBY_165] (rows=10969055 width=1229) Output:["_col0","_col1","_col2","_col3","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17","_col18"],aggregations:["sum(VALUE._col0)","count(VALUE._col1)","sum(VALUE._col2)","count(VALUE._col3)","sum(VALUE._col4)","count(VALUE._col5)","sum(VALUE._col6)","count(VALUE._col7)","sum(VALUE._col8)","count(VALUE._col9)","sum(VALUE._col10)","count(VALUE._col11)","sum(VALUE._col12)","count(VALUE._col13)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4 <-Reducer 4 [SIMPLE_EDGE] SHUFFLE [RS_40] @@ -117,75 +115,40 @@ Stage-0 Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17","_col18"],aggregations:["sum(_col15)","count(_col15)","sum(_col16)","count(_col16)","sum(_col17)","count(_col17)","sum(_col18)","count(_col18)","sum(_col19)","count(_col19)","sum(_col3)","count(_col3)","sum(_col22)","count(_col22)"],keys:_col5, _col6, _col7, _col10, 0L Merge Join Operator [MERGEJOIN_140] (rows=2193811 width=811) Conds:RS_35._col0=RS_36._col3(Inner),Output:["_col3","_col5","_col6","_col7","_col10","_col15","_col16","_col17","_col18","_col19","_col22"] - <-Reducer 3 [SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_35] - PartitionCols:_col0 - Merge Join Operator [MERGEJOIN_136] (rows=4959744 width=368) - Conds:RS_32._col1=RS_148._col0(Inner),Output:["_col0","_col3","_col5","_col6","_col7"] - <-Map 9 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_148] - PartitionCols:_col0 - Select Operator [SEL_147] (rows=1861800 width=4) - Output:["_col0"] - TableScan [TS_6] (rows=1861800 width=4) - default@customer_demographics,cd2,Tbl:COMPLETE,Col:COMPLETE,Output:["cd_demo_sk"] - <-Reducer 2 [SIMPLE_EDGE] - SHUFFLE [RS_32] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_135] (rows=4890586 width=371) - Conds:RS_143._col2=RS_146._col0(Inner),Output:["_col0","_col1","_col3","_col5","_col6","_col7"] - <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_143] - PartitionCols:_col2 - Select Operator [SEL_142] (rows=35631408 width=119) - Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_141] (rows=35631408 width=19) - predicate:((c_birth_month) IN (9, 5, 12, 4, 1, 10) and c_current_addr_sk is not null and c_current_cdemo_sk is not null) - TableScan [TS_0] (rows=80000000 width=19) - default@customer,customer,Tbl:COMPLETE,Col:COMPLETE,Output:["c_customer_sk","c_current_cdemo_sk","c_current_addr_sk","c_birth_month","c_birth_year"] - <-Map 8 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_146] - PartitionCols:_col0 - Select Operator [SEL_145] (rows=5490196 width=285) - Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_144] (rows=5490196 width=285) - predicate:(ca_state) IN ('ND', 'WI', 'AL', 'NC', 'OK', 'MS', 'TN') - TableScan [TS_3] (rows=40000000 width=285) - default@customer_address,customer_address,Tbl:COMPLETE,Col:COMPLETE,Output:["ca_address_sk","ca_county","ca_state","ca_country"] - <-Reducer 13 [SIMPLE_EDGE] + <-Reducer 12 [SIMPLE_EDGE] SHUFFLE [RS_36] PartitionCols:_col3 Select Operator [SEL_28] (rows=15983481 width=735) Output:["_col1","_col3","_col6","_col7","_col8","_col9","_col10","_col13"] Merge Join Operator [MERGEJOIN_139] (rows=15983481 width=735) - Conds:RS_25._col3=RS_171._col0(Inner),Output:["_col1","_col4","_col5","_col6","_col7","_col8","_col11","_col13"] - <-Map 18 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_171] + Conds:RS_25._col3=RS_164._col0(Inner),Output:["_col1","_col4","_col5","_col6","_col7","_col8","_col11","_col13"] + <-Map 16 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_164] PartitionCols:_col0 - Select Operator [SEL_170] (rows=462000 width=104) + Select Operator [SEL_163] (rows=462000 width=104) Output:["_col0","_col1"] TableScan [TS_17] (rows=462000 width=104) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_item_id"] - <-Reducer 12 [SIMPLE_EDGE] + <-Reducer 11 [SIMPLE_EDGE] SHUFFLE [RS_25] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_138] (rows=15983481 width=639) - Conds:RS_22._col2=RS_159._col0(Inner),Output:["_col1","_col3","_col4","_col5","_col6","_col7","_col8","_col11"] - <-Map 16 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_159] + Conds:RS_22._col2=RS_162._col0(Inner),Output:["_col1","_col3","_col4","_col5","_col6","_col7","_col8","_col11"] + <-Map 15 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_162] PartitionCols:_col0 - Select Operator [SEL_158] (rows=103433 width=116) + Select Operator [SEL_161] (rows=103433 width=116) Output:["_col0","_col1"] - Filter Operator [FIL_157] (rows=103433 width=187) + Filter Operator [FIL_160] (rows=103433 width=187) predicate:((cd_education_status = 'College') and (cd_gender = 'M')) TableScan [TS_14] (rows=1861800 width=187) default@customer_demographics,cd1,Tbl:COMPLETE,Col:COMPLETE,Output:["cd_demo_sk","cd_gender","cd_education_status","cd_dep_count"] - <-Reducer 11 [SIMPLE_EDGE] + <-Reducer 10 [SIMPLE_EDGE] SHUFFLE [RS_22] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_137] (rows=100578970 width=565) - Conds:RS_169._col0=RS_151._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8"] - <-Map 14 [SIMPLE_EDGE] vectorized + Conds:RS_159._col0=RS_151._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8"] + <-Map 13 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_151] PartitionCols:_col0 Select Operator [SEL_150] (rows=652 width=4) @@ -194,46 +157,59 @@ Stage-0 predicate:(d_year = 2001) TableScan [TS_11] (rows=73049 width=8) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year"] - <-Map 10 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_169] + <-Map 9 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_159] PartitionCols:_col0 - Select Operator [SEL_168] (rows=283692098 width=573) + Select Operator [SEL_158] (rows=283692098 width=573) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8"] - Filter Operator [FIL_167] (rows=283692098 width=466) - predicate:((cs_bill_cdemo_sk BETWEEN DynamicValue(RS_23_cd1_cd_demo_sk_min) AND DynamicValue(RS_23_cd1_cd_demo_sk_max) and in_bloom_filter(cs_bill_cdemo_sk, DynamicValue(RS_23_cd1_cd_demo_sk_bloom_filter))) and (cs_bill_customer_sk BETWEEN DynamicValue(RS_35_customer_c_customer_sk_min) AND DynamicValue(RS_35_customer_c_customer_sk_max) and in_bloom_filter(cs_bill_customer_sk, DynamicValue(RS_35_customer_c_customer_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_20_date_dim_d_date_sk_min) AND DynamicValue(RS_20_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_20_date_dim_d_date_sk_bloom_filter))) and cs_bill_cdemo_sk is not null and cs_bill_customer_sk is not null and cs_sold_date_sk is not null) + Filter Operator [FIL_157] (rows=283692098 width=466) + predicate:((cs_sold_date_sk BETWEEN DynamicValue(RS_20_date_dim_d_date_sk_min) AND DynamicValue(RS_20_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_20_date_dim_d_date_sk_bloom_filter))) and cs_bill_cdemo_sk is not null and cs_bill_customer_sk is not null and cs_sold_date_sk is not null) TableScan [TS_8] (rows=287989836 width=466) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_bill_customer_sk","cs_bill_cdemo_sk","cs_item_sk","cs_quantity","cs_list_price","cs_sales_price","cs_coupon_amt","cs_net_profit"] - <-Reducer 15 [BROADCAST_EDGE] vectorized + <-Reducer 14 [BROADCAST_EDGE] vectorized BROADCAST [RS_156] Group By Operator [GBY_155] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 14 [CUSTOM_SIMPLE_EDGE] vectorized + <-Map 13 [CUSTOM_SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_154] Group By Operator [GBY_153] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] Select Operator [SEL_152] (rows=652 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_150] - <-Reducer 17 [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 16 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_162] - Group By Operator [GBY_161] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_160] (rows=103433 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_158] - <-Reducer 7 [BROADCAST_EDGE] vectorized - BROADCAST [RS_166] - Group By Operator [GBY_165] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=4890586)"] - <-Reducer 3 [CUSTOM_SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_117] - Group By Operator [GBY_116] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=4890586)"] - Select Operator [SEL_115] (rows=4959744 width=4) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_136] + <-Reducer 3 [SIMPLE_EDGE] + SHUFFLE [RS_35] + PartitionCols:_col0 + Merge Join Operator [MERGEJOIN_136] (rows=4959744 width=368) + Conds:RS_32._col1=RS_148._col0(Inner),Output:["_col0","_col3","_col5","_col6","_col7"] + <-Map 8 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_148] + PartitionCols:_col0 + Select Operator [SEL_147] (rows=1861800 width=4) + Output:["_col0"] + TableScan [TS_6] (rows=1861800 width=4) + default@customer_demographics,cd2,Tbl:COMPLETE,Col:COMPLETE,Output:["cd_demo_sk"] + <-Reducer 2 [SIMPLE_EDGE] + SHUFFLE [RS_32] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_135] (rows=4890586 width=371) + Conds:RS_143._col2=RS_146._col0(Inner),Output:["_col0","_col1","_col3","_col5","_col6","_col7"] + <-Map 1 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_143] + PartitionCols:_col2 + Select Operator [SEL_142] (rows=35631408 width=119) + Output:["_col0","_col1","_col2","_col3"] + Filter Operator [FIL_141] (rows=35631408 width=19) + predicate:((c_birth_month) IN (9, 5, 12, 4, 1, 10) and c_current_addr_sk is not null and c_current_cdemo_sk is not null) + TableScan [TS_0] (rows=80000000 width=19) + default@customer,customer,Tbl:COMPLETE,Col:COMPLETE,Output:["c_customer_sk","c_current_cdemo_sk","c_current_addr_sk","c_birth_month","c_birth_year"] + <-Map 7 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_146] + PartitionCols:_col0 + Select Operator [SEL_145] (rows=5490196 width=285) + Output:["_col0","_col1","_col2","_col3"] + Filter Operator [FIL_144] (rows=5490196 width=285) + predicate:(ca_state) IN ('ND', 'WI', 'AL', 'NC', 'OK', 'MS', 'TN') + TableScan [TS_3] (rows=40000000 width=285) + default@customer_address,customer_address,Tbl:COMPLETE,Col:COMPLETE,Output:["ca_address_sk","ca_county","ca_state","ca_country"] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query19.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query19.q.out index 7eb52efbf4..0d32740f04 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query19.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query19.q.out @@ -63,13 +63,12 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 8 <- Reducer 12 (BROADCAST_EDGE), Reducer 14 (BROADCAST_EDGE) +Map 8 <- Reducer 12 (BROADCAST_EDGE) Reducer 10 <- Map 13 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) Reducer 12 <- Map 11 (CUSTOM_SIMPLE_EDGE) -Reducer 14 <- Map 13 (CUSTOM_SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) Reducer 3 <- Reducer 10 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 15 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 4 <- Map 14 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) Reducer 9 <- Map 11 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) @@ -79,16 +78,16 @@ Stage-0 limit:-1 Stage-1 Reducer 6 vectorized - File Output Operator [FS_153] - Limit [LIM_152] (rows=100 width=419) + File Output Operator [FS_148] + Limit [LIM_147] (rows=100 width=419) Number of rows:100 - Select Operator [SEL_151] (rows=2098703 width=418) + Select Operator [SEL_146] (rows=2098703 width=418) Output:["_col0","_col1","_col2","_col3","_col4"] <-Reducer 5 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_150] - Select Operator [SEL_149] (rows=2098703 width=418) + SHUFFLE [RS_145] + Select Operator [SEL_144] (rows=2098703 width=418) Output:["_col2","_col3","_col4","_col5","_col6"] - Group By Operator [GBY_148] (rows=2098703 width=314) + Group By Operator [GBY_143] (rows=2098703 width=314) Output:["_col0","_col1","_col2","_col3","_col4"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3 <-Reducer 4 [SIMPLE_EDGE] SHUFFLE [RS_35] @@ -100,11 +99,11 @@ Stage-0 Filter Operator [FIL_32] (rows=2098703 width=570) predicate:(_col3 <> _col16) Merge Join Operator [MERGEJOIN_121] (rows=2098703 width=570) - Conds:RS_29._col7=RS_147._col0(Inner),Output:["_col3","_col8","_col11","_col12","_col13","_col14","_col16"] - <-Map 15 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_147] + Conds:RS_29._col7=RS_142._col0(Inner),Output:["_col3","_col8","_col11","_col12","_col13","_col14","_col16"] + <-Map 14 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_142] PartitionCols:_col0 - Select Operator [SEL_146] (rows=1704 width=188) + Select Operator [SEL_141] (rows=1704 width=188) Output:["_col0","_col1"] TableScan [TS_21] (rows=1704 width=93) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_zip"] @@ -117,13 +116,13 @@ Stage-0 SHUFFLE [RS_27] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_119] (rows=2098703 width=202) - Conds:RS_17._col1=RS_137._col0(Inner),Output:["_col2","_col3","_col4","_col7","_col8","_col9","_col10"] + Conds:RS_17._col1=RS_140._col0(Inner),Output:["_col2","_col3","_col4","_col7","_col8","_col9","_col10"] <-Map 13 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_137] + SHUFFLE [RS_140] PartitionCols:_col0 - Select Operator [SEL_136] (rows=7333 width=206) + Select Operator [SEL_139] (rows=7333 width=206) Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_135] (rows=7333 width=210) + Filter Operator [FIL_138] (rows=7333 width=210) predicate:(i_manager_id = 7) TableScan [TS_11] (rows=462000 width=210) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_brand_id","i_brand","i_manufact_id","i_manufact","i_manager_id"] @@ -131,7 +130,7 @@ Stage-0 SHUFFLE [RS_17] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_118] (rows=13737330 width=4) - Conds:RS_145._col0=RS_129._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + Conds:RS_137._col0=RS_129._col0(Inner),Output:["_col1","_col2","_col3","_col4"] <-Map 11 [SIMPLE_EDGE] vectorized SHUFFLE [RS_129] PartitionCols:_col0 @@ -142,12 +141,12 @@ Stage-0 TableScan [TS_8] (rows=73049 width=12) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] <-Map 8 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_145] + SHUFFLE [RS_137] PartitionCols:_col0 - Select Operator [SEL_144] (rows=501694138 width=122) + Select Operator [SEL_136] (rows=501694138 width=122) Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_143] (rows=501694138 width=122) - predicate:((ss_item_sk BETWEEN DynamicValue(RS_18_item_i_item_sk_min) AND DynamicValue(RS_18_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_18_item_i_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_15_date_dim_d_date_sk_min) AND DynamicValue(RS_15_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_15_date_dim_d_date_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) + Filter Operator [FIL_135] (rows=501694138 width=122) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_15_date_dim_d_date_sk_min) AND DynamicValue(RS_15_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_15_date_dim_d_date_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_5] (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 12 [BROADCAST_EDGE] vectorized @@ -161,17 +160,6 @@ Stage-0 Select Operator [SEL_130] (rows=50 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_128] - <-Reducer 14 [BROADCAST_EDGE] vectorized - BROADCAST [RS_142] - Group By Operator [GBY_141] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 13 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_140] - Group By Operator [GBY_139] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_138] (rows=7333 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_136] <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_26] PartitionCols:_col0 diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query20.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query20.q.out index da3e262352..d3ecdacc9c 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query20.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query20.q.out @@ -65,8 +65,7 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 10 (BROADCAST_EDGE), Reducer 8 (BROADCAST_EDGE) -Reducer 10 <- Map 9 (CUSTOM_SIMPLE_EDGE) +Map 1 <- Reducer 8 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) Reducer 3 <- Map 9 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) @@ -79,23 +78,23 @@ Stage-0 limit:-1 Stage-1 Reducer 6 vectorized - File Output Operator [FS_86] - Limit [LIM_85] (rows=100 width=802) + File Output Operator [FS_81] + Limit [LIM_80] (rows=100 width=802) Number of rows:100 - Select Operator [SEL_84] (rows=138600 width=801) + Select Operator [SEL_79] (rows=138600 width=801) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] <-Reducer 5 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_83] - Select Operator [SEL_82] (rows=138600 width=801) + SHUFFLE [RS_78] + Select Operator [SEL_77] (rows=138600 width=801) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] - PTF Operator [PTF_81] (rows=138600 width=689) + PTF Operator [PTF_76] (rows=138600 width=689) Function definitions:[{},{"name:":"windowingtablefunction","order by:":"_col1 ASC NULLS FIRST","partition by:":"_col1"}] - Select Operator [SEL_80] (rows=138600 width=689) + Select Operator [SEL_75] (rows=138600 width=689) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] <-Reducer 4 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_79] + SHUFFLE [RS_74] PartitionCols:_col1 - Group By Operator [GBY_78] (rows=138600 width=689) + Group By Operator [GBY_73] (rows=138600 width=689) Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4 <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_17] @@ -103,13 +102,13 @@ Stage-0 Group By Operator [GBY_16] (rows=138600 width=689) Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["sum(_col2)"],keys:_col9, _col8, _col5, _col6, _col7 Merge Join Operator [MERGEJOIN_58] (rows=9551005 width=673) - Conds:RS_12._col1=RS_69._col0(Inner),Output:["_col2","_col5","_col6","_col7","_col8","_col9"] + Conds:RS_12._col1=RS_72._col0(Inner),Output:["_col2","_col5","_col6","_col7","_col8","_col9"] <-Map 9 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_69] + SHUFFLE [RS_72] PartitionCols:_col0 - Select Operator [SEL_68] (rows=138600 width=581) + Select Operator [SEL_71] (rows=138600 width=581) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] - Filter Operator [FIL_67] (rows=138600 width=581) + Filter Operator [FIL_70] (rows=138600 width=581) predicate:(i_category) IN ('Jewelry', 'Sports', 'Books') TableScan [TS_6] (rows=462000 width=581) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_item_id","i_item_desc","i_current_price","i_class","i_category"] @@ -117,7 +116,7 @@ Stage-0 SHUFFLE [RS_12] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_57] (rows=31836679 width=110) - Conds:RS_77._col0=RS_61._col0(Inner),Output:["_col1","_col2"] + Conds:RS_69._col0=RS_61._col0(Inner),Output:["_col1","_col2"] <-Map 7 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_61] PartitionCols:_col0 @@ -128,25 +127,14 @@ Stage-0 TableScan [TS_3] (rows=73049 width=98) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_77] + SHUFFLE [RS_69] PartitionCols:_col0 - Select Operator [SEL_76] (rows=286549727 width=119) + Select Operator [SEL_68] (rows=286549727 width=119) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_75] (rows=286549727 width=119) - predicate:((cs_item_sk BETWEEN DynamicValue(RS_13_item_i_item_sk_min) AND DynamicValue(RS_13_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_13_item_i_item_sk_bloom_filter))) and (cs_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(cs_sold_date_sk, DynamicValue(RS_10_date_dim_d_date_sk_bloom_filter))) and cs_sold_date_sk is not null) + Filter Operator [FIL_67] (rows=286549727 width=119) + predicate:((cs_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(cs_sold_date_sk, DynamicValue(RS_10_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 10 [BROADCAST_EDGE] vectorized - BROADCAST [RS_74] - Group By Operator [GBY_73] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 9 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_72] - Group By Operator [GBY_71] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_70] (rows=138600 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_68] <-Reducer 8 [BROADCAST_EDGE] vectorized BROADCAST [RS_66] Group By Operator [GBY_65] (rows=1 width=12) 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 292c920583..7678363a3d 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 @@ -121,15 +121,15 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 31 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) +Map 1 <- 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) +Map 33 <- Reducer 7 (BROADCAST_EDGE) +Map 35 <- Reducer 32 (BROADCAST_EDGE) +Map 37 <- Reducer 14 (BROADCAST_EDGE) +Map 38 <- Reducer 13 (BROADCAST_EDGE) +Reducer 10 <- Map 37 (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 12 <- Reducer 11 (SIMPLE_EDGE), Reducer 31 (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 26 (SIMPLE_EDGE) @@ -137,24 +137,22 @@ Reducer 17 <- Reducer 16 (SIMPLE_EDGE) Reducer 18 <- Reducer 17 (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 36 (CUSTOM_SIMPLE_EDGE) +Reducer 20 <- Reducer 19 (CUSTOM_SIMPLE_EDGE), Reducer 34 (CUSTOM_SIMPLE_EDGE) Reducer 21 <- Reducer 17 (CUSTOM_SIMPLE_EDGE) Reducer 22 <- Reducer 17 (CUSTOM_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 24 <- Reducer 23 (CUSTOM_SIMPLE_EDGE), Reducer 39 (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 28 <- Map 26 (SIMPLE_EDGE), Map 35 (SIMPLE_EDGE) +Reducer 29 <- Map 36 (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 <- Map 26 (CUSTOM_SIMPLE_EDGE) -Reducer 36 <- Map 35 (SIMPLE_EDGE) +Reducer 31 <- Reducer 29 (SIMPLE_EDGE) +Reducer 32 <- Map 26 (CUSTOM_SIMPLE_EDGE) +Reducer 34 <- Map 33 (SIMPLE_EDGE) +Reducer 39 <- Map 38 (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) @@ -164,10 +162,10 @@ Stage-0 limit:100 Stage-1 Reducer 6 vectorized - File Output Operator [FS_532] - Limit [LIM_531] (rows=1 width=112) + File Output Operator [FS_527] + Limit [LIM_526] (rows=1 width=112) Number of rows:100 - Group By Operator [GBY_530] (rows=1 width=112) + Group By Operator [GBY_525] (rows=1 width=112) Output:["_col0"],aggregations:["sum(VALUE._col0)"] <-Union 5 [CUSTOM_SIMPLE_EDGE] <-Reducer 12 [CONTAINS] @@ -177,64 +175,7 @@ Stage-0 Select Operator [SEL_451] (rows=52 width=112) Output:["_col0"] 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_537] (rows=745 width=4) - Output:["_col0"] - Filter Operator [FIL_536] (rows=745 width=12) - predicate:(_col1 > 4L) - Group By Operator [GBY_535] (rows=2235 width=12) - Output:["_col0","_col1"],aggregations:["count(VALUE._col0)"],keys:KEY._col0 - <-Reducer 29 [SIMPLE_EDGE] - SHUFFLE [RS_182] - PartitionCols:_col0 - Group By Operator [GBY_83] (rows=2235 width=12) - Output:["_col0","_col1"],aggregations:["count()"],keys:_col4 - 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_482] (rows=462000 width=188) - Output:["_col0"] - TableScan [TS_74] (rows=462000 width=4) - default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk"] - <-Reducer 28 [SIMPLE_EDGE] - SHUFFLE [RS_79] - PartitionCols:_col1 - 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_468] (rows=2609 width=4) - Output:["_col0"] - 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 37 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_481] - PartitionCols:_col0 - Select Operator [SEL_480] (rows=550076554 width=7) - Output:["_col0","_col1"] - 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 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 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_472] (rows=2609 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_468] + Conds:RS_192._col1=RS_552._col0(Inner),Output:["_col3","_col4"] <-Reducer 11 [SIMPLE_EDGE] SHUFFLE [RS_192] PartitionCols:_col1 @@ -244,7 +185,7 @@ Stage-0 PARTITION_ONLY_SHUFFLE [RS_189] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_432] (rows=3941102 width=122) - Conds:RS_546._col0=RS_459._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + Conds:RS_532._col0=RS_459._col0(Inner),Output:["_col1","_col2","_col3","_col4"] <-Map 8 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_459] PartitionCols:_col0 @@ -254,18 +195,18 @@ Stage-0 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 39 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_546] + <-Map 37 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_532] PartitionCols:_col0 - Select Operator [SEL_545] (rows=143930993 width=127) + Select Operator [SEL_531] (rows=143930993 width=127) Output:["_col0","_col1","_col2","_col3","_col4"] - 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) + Filter Operator [FIL_530] (rows=143930993 width=127) + predicate:((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_534] - Group By Operator [GBY_533] (rows=1 width=12) + BROADCAST [RS_529] + Group By Operator [GBY_528] (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_464] @@ -274,17 +215,6 @@ Stage-0 Select Operator [SEL_460] (rows=50 width=4) Output:["_col0"] 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 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_539] (rows=745 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_537] <-Reducer 24 [SIMPLE_EDGE] SHUFFLE [RS_190] PartitionCols:_col0 @@ -299,22 +229,22 @@ Stage-0 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) + PARTITION_ONLY_SHUFFLE [RS_538] + Select Operator [SEL_537] (rows=1 width=8) + Filter Operator [FIL_536] (rows=1 width=8) predicate:(sq_count_check(_col0) <= 1) - Group By Operator [GBY_549] (rows=1 width=8) + Group By Operator [GBY_535] (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) + Select Operator [SEL_534] (rows=1 width=8) + Group By Operator [GBY_533] (rows=1 width=8) Output:["_col0"],aggregations:["count(VALUE._col0)"] <-Reducer 17 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_512] - Group By Operator [GBY_508] (rows=1 width=8) + PARTITION_ONLY_SHUFFLE [RS_496] + Group By Operator [GBY_492] (rows=1 width=8) Output:["_col0"],aggregations:["count(_col0)"] - Select Operator [SEL_504] (rows=50562 width=112) + Select Operator [SEL_488] (rows=50562 width=112) Output:["_col0"] - Group By Operator [GBY_501] (rows=50562 width=112) + Group By Operator [GBY_485] (rows=50562 width=112) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 <-Reducer 16 [SIMPLE_EDGE] SHUFFLE [RS_17] @@ -322,60 +252,65 @@ Stage-0 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"] + Conds:RS_484._col0=RS_472._col0(Inner),Output:["_col1","_col2"] <-Map 26 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_469] + PARTITION_ONLY_SHUFFLE [RS_472] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_468] + Select Operator [SEL_471] (rows=2609 width=4) + Output:["_col0"] + Filter Operator [FIL_470] (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 15 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_500] + SHUFFLE [RS_484] PartitionCols:_col0 - Select Operator [SEL_499] (rows=525327388 width=119) + Select Operator [SEL_483] (rows=525327388 width=119) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_498] (rows=525327388 width=118) + Filter Operator [FIL_482] (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) + BROADCAST [RS_481] + Group By Operator [GBY_480] (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) + PARTITION_ONLY_SHUFFLE [RS_478] + 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_470] (rows=2609 width=4) + Select Operator [SEL_473] (rows=2609 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_468] + Please refer to the previous Select Operator [SEL_471] <-Reducer 25 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_554] - Group By Operator [GBY_553] (rows=1 width=112) + PARTITION_ONLY_SHUFFLE [RS_540] + Group By Operator [GBY_539] (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) + PARTITION_ONLY_SHUFFLE [RS_497] + Group By Operator [GBY_493] (rows=1 width=112) Output:["_col0"],aggregations:["max(_col1)"] - Select Operator [SEL_505] (rows=50562 width=112) + Select Operator [SEL_489] (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) + Please refer to the previous Group By Operator [GBY_485] + <-Reducer 39 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_548] + Group By Operator [GBY_547] (rows=1415626 width=115) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Map 40 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_560] + <-Map 38 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_546] PartitionCols:_col0 - Group By Operator [GBY_559] (rows=550080312 width=115) + Group By Operator [GBY_545] (rows=550080312 width=115) Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0 - Select Operator [SEL_558] (rows=550080312 width=114) + Select Operator [SEL_544] (rows=550080312 width=114) Output:["_col0","_col1"] - Filter Operator [FIL_557] (rows=550080312 width=114) + Filter Operator [FIL_543] (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) + BROADCAST [RS_542] + Group By Operator [GBY_541] (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] @@ -384,6 +319,58 @@ Stage-0 Select Operator [SEL_404] (rows=3941102 width=7) Output:["_col0"] Please refer to the previous Merge Join Operator [MERGEJOIN_432] + <-Reducer 31 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_552] + PartitionCols:_col0 + Select Operator [SEL_551] (rows=745 width=4) + Output:["_col0"] + Filter Operator [FIL_550] (rows=745 width=12) + predicate:(_col1 > 4L) + Group By Operator [GBY_549] (rows=2235 width=12) + Output:["_col0","_col1"],aggregations:["count(VALUE._col0)"],keys:KEY._col0 + <-Reducer 29 [SIMPLE_EDGE] + SHUFFLE [RS_182] + PartitionCols:_col0 + Group By Operator [GBY_83] (rows=2235 width=12) + Output:["_col0","_col1"],aggregations:["count()"],keys:_col4 + Merge Join Operator [MERGEJOIN_431] (rows=19646398 width=4) + Conds:RS_79._col1=RS_520._col0(Inner),Output:["_col4"] + <-Map 36 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_520] + PartitionCols:_col0 + Select Operator [SEL_519] (rows=462000 width=188) + Output:["_col0"] + TableScan [TS_74] (rows=462000 width=4) + default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk"] + <-Reducer 28 [SIMPLE_EDGE] + SHUFFLE [RS_79] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_430] (rows=19646398 width=4) + Conds:RS_518._col0=RS_474._col0(Inner),Output:["_col1"] + <-Map 26 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_474] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_471] + <-Map 35 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_518] + PartitionCols:_col0 + Select Operator [SEL_517] (rows=550076554 width=7) + Output:["_col0","_col1"] + Filter Operator [FIL_516] (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 32 [BROADCAST_EDGE] vectorized + BROADCAST [RS_515] + Group By Operator [GBY_514] (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_479] + 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_475] (rows=2609 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_471] <-Reducer 4 [CONTAINS] Reduce Output Operator [RS_449] Group By Operator [GBY_448] (rows=1 width=112) @@ -391,20 +378,7 @@ Stage-0 Select Operator [SEL_446] (rows=102 width=112) Output:["_col0"] 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_486] (rows=745 width=4) - Output:["_col0"] - Filter Operator [FIL_485] (rows=745 width=12) - predicate:(_col1 > 4L) - Group By Operator [GBY_484] (rows=2235 width=12) - Output:["_col0","_col1"],aggregations:["count(VALUE._col0)"],keys:KEY._col0 - <-Reducer 29 [SIMPLE_EDGE] - SHUFFLE [RS_84] - PartitionCols:_col0 - Please refer to the previous Group By Operator [GBY_83] + Conds:RS_94._col2=RS_524._col0(Inner),Output:["_col3","_col4"] <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_94] PartitionCols:_col2 @@ -414,31 +388,20 @@ Stage-0 PARTITION_ONLY_SHUFFLE [RS_91] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_427] (rows=7751875 width=101) - Conds:RS_495._col0=RS_457._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + Conds:RS_469._col0=RS_457._col0(Inner),Output:["_col1","_col2","_col3","_col4"] <-Map 8 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_457] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_456] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_495] + SHUFFLE [RS_469] PartitionCols:_col0 - Select Operator [SEL_494] (rows=285117831 width=127) + Select Operator [SEL_468] (rows=285117831 width=127) Output:["_col0","_col1","_col2","_col3","_col4"] - 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) + Filter Operator [FIL_467] (rows=285117831 width=127) + predicate:((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 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 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_488] (rows=745 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_486] <-Reducer 9 [BROADCAST_EDGE] vectorized BROADCAST [RS_466] Group By Operator [GBY_465] (rows=1 width=12) @@ -464,51 +427,51 @@ Stage-0 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) + PARTITION_ONLY_SHUFFLE [RS_503] + Select Operator [SEL_502] (rows=1 width=8) + Filter Operator [FIL_501] (rows=1 width=8) predicate:(sq_count_check(_col0) <= 1) - Group By Operator [GBY_516] (rows=1 width=8) + Group By Operator [GBY_500] (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) + Select Operator [SEL_499] (rows=1 width=8) + Group By Operator [GBY_498] (rows=1 width=8) Output:["_col0"],aggregations:["count(VALUE._col0)"] <-Reducer 17 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_510] - Group By Operator [GBY_506] (rows=1 width=8) + PARTITION_ONLY_SHUFFLE [RS_494] + Group By Operator [GBY_490] (rows=1 width=8) Output:["_col0"],aggregations:["count(_col0)"] - Select Operator [SEL_502] (rows=50562 width=112) + Select Operator [SEL_486] (rows=50562 width=112) Output:["_col0"] - Please refer to the previous Group By Operator [GBY_501] + Please refer to the previous Group By Operator [GBY_485] <-Reducer 21 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_521] - Group By Operator [GBY_520] (rows=1 width=112) + PARTITION_ONLY_SHUFFLE [RS_505] + Group By Operator [GBY_504] (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) + PARTITION_ONLY_SHUFFLE [RS_495] + Group By Operator [GBY_491] (rows=1 width=112) Output:["_col0"],aggregations:["max(_col1)"] - Select Operator [SEL_503] (rows=50562 width=112) + Select Operator [SEL_487] (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) + Please refer to the previous Group By Operator [GBY_485] + <-Reducer 34 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_513] + Group By Operator [GBY_512] (rows=1415626 width=115) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Map 35 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_527] + <-Map 33 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_511] PartitionCols:_col0 - Group By Operator [GBY_526] (rows=550080312 width=115) + Group By Operator [GBY_510] (rows=550080312 width=115) Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0 - Select Operator [SEL_525] (rows=550080312 width=114) + Select Operator [SEL_509] (rows=550080312 width=114) Output:["_col0","_col1"] - Filter Operator [FIL_524] (rows=550080312 width=114) + Filter Operator [FIL_508] (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) + BROADCAST [RS_507] + Group By Operator [GBY_506] (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] @@ -517,4 +480,17 @@ Stage-0 Select Operator [SEL_331] (rows=7751875 width=6) Output:["_col0"] Please refer to the previous Merge Join Operator [MERGEJOIN_427] + <-Reducer 30 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_524] + PartitionCols:_col0 + Select Operator [SEL_523] (rows=745 width=4) + Output:["_col0"] + Filter Operator [FIL_522] (rows=745 width=12) + predicate:(_col1 > 4L) + Group By Operator [GBY_521] (rows=2235 width=12) + Output:["_col0","_col1"],aggregations:["count(VALUE._col0)"],keys:KEY._col0 + <-Reducer 29 [SIMPLE_EDGE] + SHUFFLE [RS_84] + PartitionCols:_col0 + Please refer to the previous Group By Operator [GBY_83] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query24.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query24.q.out index fb77386d6e..513d1851d8 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query24.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query24.q.out @@ -116,26 +116,24 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 16 (BROADCAST_EDGE), Reducer 17 (BROADCAST_EDGE), Reducer 8 (BROADCAST_EDGE) -Map 25 <- Reducer 22 (BROADCAST_EDGE) -Reducer 10 <- Map 24 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) +Map 1 <- Reducer 8 (BROADCAST_EDGE) +Map 23 <- Reducer 20 (BROADCAST_EDGE) +Reducer 10 <- Map 22 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) Reducer 11 <- Reducer 10 (SIMPLE_EDGE) Reducer 12 <- Reducer 11 (CUSTOM_SIMPLE_EDGE) -Reducer 14 <- Map 13 (SIMPLE_EDGE), Map 21 (SIMPLE_EDGE) -Reducer 15 <- Map 23 (SIMPLE_EDGE), Reducer 14 (SIMPLE_EDGE) -Reducer 16 <- Reducer 15 (CUSTOM_SIMPLE_EDGE) -Reducer 17 <- Reducer 15 (CUSTOM_SIMPLE_EDGE) -Reducer 18 <- Map 13 (SIMPLE_EDGE), Map 23 (SIMPLE_EDGE) -Reducer 19 <- Map 25 (SIMPLE_EDGE), Reducer 18 (SIMPLE_EDGE) +Reducer 14 <- Map 13 (SIMPLE_EDGE), Map 19 (SIMPLE_EDGE) +Reducer 15 <- Map 21 (SIMPLE_EDGE), Reducer 14 (SIMPLE_EDGE) +Reducer 16 <- Map 13 (SIMPLE_EDGE), Map 21 (SIMPLE_EDGE) +Reducer 17 <- Map 23 (SIMPLE_EDGE), Reducer 16 (SIMPLE_EDGE) +Reducer 18 <- Map 19 (SIMPLE_EDGE), Reducer 17 (SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) -Reducer 20 <- Map 21 (SIMPLE_EDGE), Reducer 19 (SIMPLE_EDGE) -Reducer 22 <- Map 21 (CUSTOM_SIMPLE_EDGE) +Reducer 20 <- Map 19 (CUSTOM_SIMPLE_EDGE) Reducer 3 <- Reducer 15 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 24 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 4 <- Map 22 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 12 (CUSTOM_SIMPLE_EDGE), Reducer 5 (CUSTOM_SIMPLE_EDGE) Reducer 8 <- Map 7 (CUSTOM_SIMPLE_EDGE) -Reducer 9 <- Map 7 (SIMPLE_EDGE), Reducer 20 (SIMPLE_EDGE) +Reducer 9 <- Map 7 (SIMPLE_EDGE), Reducer 18 (SIMPLE_EDGE) Stage-0 Fetch Operator @@ -150,18 +148,18 @@ Stage-0 Merge Join Operator [MERGEJOIN_298] (rows=3939496 width=492) Conds:(Inner),Output:["_col0","_col1","_col2","_col3","_col4"] <-Reducer 12 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_350] - Select Operator [SEL_349] (rows=1 width=112) + PARTITION_ONLY_SHUFFLE [RS_346] + Select Operator [SEL_345] (rows=1 width=112) Output:["_col0"] - Group By Operator [GBY_348] (rows=1 width=120) + Group By Operator [GBY_344] (rows=1 width=120) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)","count(VALUE._col1)"] <-Reducer 11 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_347] - Group By Operator [GBY_346] (rows=1 width=120) + PARTITION_ONLY_SHUFFLE [RS_343] + Group By Operator [GBY_342] (rows=1 width=120) Output:["_col0","_col1"],aggregations:["sum(_col10)","count(_col10)"] - Select Operator [SEL_345] (rows=8029453 width=932) + Select Operator [SEL_341] (rows=8029453 width=932) Output:["_col10"] - Group By Operator [GBY_344] (rows=8029453 width=932) + Group By Operator [GBY_340] (rows=8029453 width=932) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4, KEY._col5, KEY._col6, KEY._col7, KEY._col8, KEY._col9 <-Reducer 10 [SIMPLE_EDGE] SHUFFLE [RS_78] @@ -169,11 +167,11 @@ Stage-0 Group By Operator [GBY_77] (rows=8029453 width=932) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10"],aggregations:["sum(_col13)"],keys:_col2, _col3, _col6, _col15, _col16, _col19, _col20, _col21, _col22, _col23 Merge Join Operator [MERGEJOIN_297] (rows=13238221 width=865) - Conds:RS_73._col9, _col12=RS_333._col0, _col1(Inner),Output:["_col2","_col3","_col6","_col13","_col15","_col16","_col19","_col20","_col21","_col22","_col23"] - <-Map 24 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_333] + Conds:RS_73._col9, _col12=RS_329._col0, _col1(Inner),Output:["_col2","_col3","_col6","_col13","_col15","_col16","_col19","_col20","_col21","_col22","_col23"] + <-Map 22 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_329] PartitionCols:_col0, _col1 - Select Operator [SEL_331] (rows=57591150 width=8) + Select Operator [SEL_327] (rows=57591150 width=8) Output:["_col0","_col1"] TableScan [TS_23] (rows=57591150 width=8) default@store_returns,store_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["sr_item_sk","sr_ticket_number"] @@ -189,79 +187,79 @@ Stage-0 Output:["_col0","_col1","_col2","_col3","_col4","_col5"] TableScan [TS_3] (rows=462000 width=384) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_current_price","i_size","i_color","i_units","i_manager_id"] - <-Reducer 20 [SIMPLE_EDGE] + <-Reducer 18 [SIMPLE_EDGE] SHUFFLE [RS_70] PartitionCols:_col9 Merge Join Operator [MERGEJOIN_295] (rows=8029453 width=448) - Conds:RS_67._col7, _col11=RS_316._col3, _col0(Inner),Output:["_col2","_col3","_col6","_col9","_col12","_col13","_col15","_col16"] - <-Map 21 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_316] + Conds:RS_67._col7, _col11=RS_319._col3, _col0(Inner),Output:["_col2","_col3","_col6","_col9","_col12","_col13","_col15","_col16"] + <-Map 19 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_319] PartitionCols:_col3, _col0 - Select Operator [SEL_314] (rows=155 width=267) + Select Operator [SEL_317] (rows=155 width=267) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_313] (rows=155 width=271) + Filter Operator [FIL_316] (rows=155 width=271) predicate:((s_market_id = 7) and s_zip is not null) TableScan [TS_9] (rows=1704 width=270) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_store_name","s_market_id","s_state","s_zip"] - <-Reducer 19 [SIMPLE_EDGE] + <-Reducer 17 [SIMPLE_EDGE] SHUFFLE [RS_67] PartitionCols:_col7, _col11 Merge Join Operator [MERGEJOIN_294] (rows=525333486 width=473) - Conds:RS_64._col0=RS_343._col1(Inner),Output:["_col2","_col3","_col6","_col7","_col9","_col11","_col12","_col13"] - <-Map 25 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_343] + Conds:RS_64._col0=RS_339._col1(Inner),Output:["_col2","_col3","_col6","_col7","_col9","_col11","_col12","_col13"] + <-Map 23 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_339] PartitionCols:_col1 - Select Operator [SEL_342] (rows=525333486 width=122) + Select Operator [SEL_338] (rows=525333486 width=122) Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_341] (rows=525333486 width=122) + Filter Operator [FIL_337] (rows=525333486 width=122) predicate:((ss_store_sk BETWEEN DynamicValue(RS_68_store_s_store_sk_min) AND DynamicValue(RS_68_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_68_store_s_store_sk_bloom_filter))) and ss_customer_sk is not null and ss_store_sk is not null) TableScan [TS_50] (rows=575995635 width=122) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_item_sk","ss_customer_sk","ss_store_sk","ss_ticket_number","ss_sales_price"] - <-Reducer 22 [BROADCAST_EDGE] vectorized - BROADCAST [RS_340] - Group By Operator [GBY_339] (rows=1 width=12) + <-Reducer 20 [BROADCAST_EDGE] vectorized + BROADCAST [RS_336] + Group By Operator [GBY_335] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 21 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_319] - Group By Operator [GBY_318] (rows=1 width=12) + <-Map 19 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_322] + Group By Operator [GBY_321] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_317] (rows=155 width=4) + Select Operator [SEL_320] (rows=155 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_314] - <-Reducer 18 [SIMPLE_EDGE] + Please refer to the previous Select Operator [SEL_317] + <-Reducer 16 [SIMPLE_EDGE] SHUFFLE [RS_64] PartitionCols:_col0 Filter Operator [FIL_63] (rows=80000000 width=635) predicate:(_col4 <> _col8) Merge Join Operator [MERGEJOIN_293] (rows=80000000 width=635) - Conds:RS_323._col1=RS_312._col0(Inner),Output:["_col0","_col2","_col3","_col4","_col6","_col7","_col8"] + Conds:RS_326._col1=RS_315._col0(Inner),Output:["_col0","_col2","_col3","_col4","_col6","_col7","_col8"] <-Map 13 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_312] + SHUFFLE [RS_315] PartitionCols:_col0 - Select Operator [SEL_310] (rows=40000000 width=363) + Select Operator [SEL_313] (rows=40000000 width=363) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_309] (rows=40000000 width=276) + Filter Operator [FIL_312] (rows=40000000 width=276) predicate:ca_zip is not null TableScan [TS_6] (rows=40000000 width=276) default@customer_address,customer_address,Tbl:COMPLETE,Col:COMPLETE,Output:["ca_address_sk","ca_state","ca_zip","ca_country"] - <-Map 23 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_323] + <-Map 21 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_326] PartitionCols:_col1 - Select Operator [SEL_321] (rows=80000000 width=280) + Select Operator [SEL_324] (rows=80000000 width=280) Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_320] (rows=80000000 width=280) + Filter Operator [FIL_323] (rows=80000000 width=280) predicate:c_current_addr_sk is not null TableScan [TS_12] (rows=80000000 width=280) default@customer,customer,Tbl:COMPLETE,Col:COMPLETE,Output:["c_customer_sk","c_current_addr_sk","c_first_name","c_last_name","c_birth_country"] <-Reducer 5 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_338] - Select Operator [SEL_337] (rows=3939496 width=380) + PARTITION_ONLY_SHUFFLE [RS_334] + Select Operator [SEL_333] (rows=3939496 width=380) Output:["_col0","_col1","_col2","_col3"] - Group By Operator [GBY_336] (rows=3939496 width=380) + Group By Operator [GBY_332] (rows=3939496 width=380) Output:["_col0","_col1","_col2","_col3"],aggregations:["sum(_col9)"],keys:_col4, _col5, _col7 - Select Operator [SEL_335] (rows=84010488 width=843) + Select Operator [SEL_331] (rows=84010488 width=843) Output:["_col4","_col5","_col7","_col9"] - Group By Operator [GBY_334] (rows=84010488 width=843) + Group By Operator [GBY_330] (rows=84010488 width=843) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4, KEY._col5, KEY._col6, KEY._col7, KEY._col8 <-Reducer 4 [SIMPLE_EDGE] SHUFFLE [RS_36] @@ -269,11 +267,11 @@ Stage-0 Group By Operator [GBY_35] (rows=84010488 width=843) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9"],aggregations:["sum(_col4)"],keys:_col12, _col13, _col20, _col6, _col7, _col8, _col9, _col16, _col21 Merge Join Operator [MERGEJOIN_292] (rows=138508741 width=824) - Conds:RS_31._col0, _col3=RS_332._col0, _col1(Inner),Output:["_col4","_col6","_col7","_col8","_col9","_col12","_col13","_col16","_col20","_col21"] - <-Map 24 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_332] + Conds:RS_31._col0, _col3=RS_328._col0, _col1(Inner),Output:["_col4","_col6","_col7","_col8","_col9","_col12","_col13","_col16","_col20","_col21"] + <-Map 22 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_328] PartitionCols:_col0, _col1 - Please refer to the previous Select Operator [SEL_331] + Please refer to the previous Select Operator [SEL_327] <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_31] PartitionCols:_col0, _col3 @@ -287,29 +285,29 @@ Stage-0 Filter Operator [FIL_21] (rows=7276996 width=724) predicate:(_col12 <> _col3) Merge Join Operator [MERGEJOIN_290] (rows=7276996 width=724) - Conds:RS_18._col0=RS_322._col1(Inner),Output:["_col1","_col3","_col4","_col5","_col6","_col8","_col10","_col11","_col12"] - <-Map 23 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_322] + Conds:RS_18._col0=RS_325._col1(Inner),Output:["_col1","_col3","_col4","_col5","_col6","_col8","_col10","_col11","_col12"] + <-Map 21 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_325] PartitionCols:_col1 - Please refer to the previous Select Operator [SEL_321] + Please refer to the previous Select Operator [SEL_324] <-Reducer 14 [SIMPLE_EDGE] SHUFFLE [RS_18] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_289] (rows=611379 width=452) - Conds:RS_311._col2=RS_315._col3(Inner),Output:["_col0","_col1","_col3","_col4","_col5","_col6"] - <-Map 21 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_315] + Conds:RS_314._col2=RS_318._col3(Inner),Output:["_col0","_col1","_col3","_col4","_col5","_col6"] + <-Map 19 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_318] PartitionCols:_col3 - Please refer to the previous Select Operator [SEL_314] + Please refer to the previous Select Operator [SEL_317] <-Map 13 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_311] + SHUFFLE [RS_314] PartitionCols:_col2 - Please refer to the previous Select Operator [SEL_310] + Please refer to the previous Select Operator [SEL_313] <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_28] PartitionCols:_col1, _col2 Merge Join Operator [MERGEJOIN_288] (rows=76612563 width=382) - Conds:RS_330._col0=RS_303._col0(Inner),Output:["_col0","_col1","_col2","_col3","_col4","_col6","_col7","_col8","_col9"] + Conds:RS_311._col0=RS_303._col0(Inner),Output:["_col0","_col1","_col2","_col3","_col4","_col6","_col7","_col8","_col9"] <-Map 7 [SIMPLE_EDGE] vectorized SHUFFLE [RS_303] PartitionCols:_col0 @@ -319,36 +317,14 @@ Stage-0 predicate:(i_color = 'orchid') Please refer to the previous TableScan [TS_3] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_330] + SHUFFLE [RS_311] PartitionCols:_col0 - Select Operator [SEL_329] (rows=525333486 width=122) + Select Operator [SEL_310] (rows=525333486 width=122) Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_328] (rows=525333486 width=122) - predicate:((ss_customer_sk BETWEEN DynamicValue(RS_29_customer_c_customer_sk_min) AND DynamicValue(RS_29_customer_c_customer_sk_max) and in_bloom_filter(ss_customer_sk, DynamicValue(RS_29_customer_c_customer_sk_bloom_filter))) and (ss_item_sk BETWEEN DynamicValue(RS_26_item_i_item_sk_min) AND DynamicValue(RS_26_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_26_item_i_item_sk_bloom_filter))) and (ss_store_sk BETWEEN DynamicValue(RS_29_store_s_store_sk_min) AND DynamicValue(RS_29_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_29_store_s_store_sk_bloom_filter))) and ss_customer_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_309] (rows=525333486 width=122) + predicate:((ss_item_sk BETWEEN DynamicValue(RS_26_item_i_item_sk_min) AND DynamicValue(RS_26_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_26_item_i_item_sk_bloom_filter))) and ss_customer_sk is not null and ss_store_sk is not null) TableScan [TS_0] (rows=575995635 width=122) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_item_sk","ss_customer_sk","ss_store_sk","ss_ticket_number","ss_sales_price"] - <-Reducer 16 [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=6636187)"] - <-Reducer 15 [CUSTOM_SIMPLE_EDGE] - SHUFFLE [RS_149] - Group By Operator [GBY_148] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=6636187)"] - Select Operator [SEL_147] (rows=7276996 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_22] - <-Reducer 17 [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=1000000)"] - <-Reducer 15 [CUSTOM_SIMPLE_EDGE] - SHUFFLE [RS_154] - Group By Operator [GBY_153] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_152] (rows=7276996 width=8) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_22] <-Reducer 8 [BROADCAST_EDGE] vectorized BROADCAST [RS_308] Group By Operator [GBY_307] (rows=1 width=12) diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query25.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query25.q.out index a353c6a128..355f6edced 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query25.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query25.q.out @@ -109,20 +109,16 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 12 (BROADCAST_EDGE), Reducer 13 (BROADCAST_EDGE), Reducer 16 (BROADCAST_EDGE), Reducer 17 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) -Map 18 <- Reducer 14 (BROADCAST_EDGE), Reducer 16 (BROADCAST_EDGE), Reducer 17 (BROADCAST_EDGE) -Reducer 10 <- Map 18 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) -Reducer 11 <- Reducer 10 (SIMPLE_EDGE), Reducer 15 (SIMPLE_EDGE) -Reducer 12 <- Reducer 10 (CUSTOM_SIMPLE_EDGE) -Reducer 13 <- Reducer 10 (CUSTOM_SIMPLE_EDGE) -Reducer 14 <- Map 8 (CUSTOM_SIMPLE_EDGE) -Reducer 15 <- Map 19 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) -Reducer 16 <- Reducer 15 (CUSTOM_SIMPLE_EDGE) -Reducer 17 <- Reducer 15 (CUSTOM_SIMPLE_EDGE) +Map 1 <- Reducer 9 (BROADCAST_EDGE) +Map 14 <- Reducer 12 (BROADCAST_EDGE) +Reducer 10 <- Map 14 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) +Reducer 11 <- Reducer 10 (SIMPLE_EDGE), Reducer 13 (SIMPLE_EDGE) +Reducer 12 <- Map 8 (CUSTOM_SIMPLE_EDGE) +Reducer 13 <- Map 15 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) Reducer 3 <- Reducer 11 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 20 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Map 21 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) +Reducer 4 <- Map 16 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 5 <- Map 17 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) Reducer 9 <- Map 8 (CUSTOM_SIMPLE_EDGE) @@ -132,14 +128,14 @@ Stage-0 limit:100 Stage-1 Reducer 7 vectorized - File Output Operator [FS_259] - Limit [LIM_258] (rows=100 width=808) + File Output Operator [FS_249] + Limit [LIM_248] (rows=100 width=808) Number of rows:100 - Select Operator [SEL_257] (rows=4248052806 width=808) + Select Operator [SEL_247] (rows=4248052806 width=808) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] <-Reducer 6 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_256] - Group By Operator [GBY_255] (rows=4248052806 width=808) + SHUFFLE [RS_246] + Group By Operator [GBY_245] (rows=4248052806 width=808) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3 <-Reducer 5 [SIMPLE_EDGE] SHUFFLE [RS_47] @@ -149,11 +145,11 @@ Stage-0 Top N Key Operator [TNK_93] (rows=4248052806 width=807) keys:_col19, _col20, _col22, _col23,sort order:++++,top n:100 Merge Join Operator [MERGEJOIN_212] (rows=4248052806 width=807) - Conds:RS_42._col3=RS_254._col0(Inner),Output:["_col5","_col10","_col16","_col19","_col20","_col22","_col23"] - <-Map 21 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_254] + Conds:RS_42._col3=RS_244._col0(Inner),Output:["_col5","_col10","_col16","_col19","_col20","_col22","_col23"] + <-Map 17 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_244] PartitionCols:_col0 - Select Operator [SEL_253] (rows=1704 width=192) + Select Operator [SEL_243] (rows=1704 width=192) Output:["_col0","_col1","_col2"] TableScan [TS_31] (rows=1704 width=192) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_store_id","s_store_name"] @@ -161,11 +157,11 @@ Stage-0 SHUFFLE [RS_42] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_211] (rows=4248052806 width=623) - Conds:RS_39._col1=RS_252._col0(Inner),Output:["_col3","_col5","_col10","_col16","_col19","_col20"] - <-Map 20 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_252] + Conds:RS_39._col1=RS_242._col0(Inner),Output:["_col3","_col5","_col10","_col16","_col19","_col20"] + <-Map 16 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_242] PartitionCols:_col0 - Select Operator [SEL_251] (rows=462000 width=288) + Select Operator [SEL_241] (rows=462000 width=288) Output:["_col0","_col1","_col2"] TableScan [TS_29] (rows=462000 width=288) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_item_id","i_item_desc"] @@ -180,10 +176,10 @@ Stage-0 Merge Join Operator [MERGEJOIN_209] (rows=1893811716 width=235) Conds:RS_25._col2, _col1=RS_26._col1, _col2(Inner),Output:["_col3","_col6","_col7","_col8","_col9"] <-Reducer 10 [SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_25] + SHUFFLE [RS_25] PartitionCols:_col2, _col1 Merge Join Operator [MERGEJOIN_207] (rows=54418158 width=119) - Conds:RS_243._col0=RS_221._col0(Inner),Output:["_col1","_col2","_col3"] + Conds:RS_237._col0=RS_221._col0(Inner),Output:["_col1","_col2","_col3"] <-Map 8 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_221] PartitionCols:_col0 @@ -193,59 +189,19 @@ Stage-0 predicate:((d_year = 2000) and d_moy BETWEEN 4 AND 10) TableScan [TS_3] (rows=73049 width=12) default@date_dim,d1,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] - <-Map 18 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_243] + <-Map 14 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_237] PartitionCols:_col0 - Select Operator [SEL_242] (rows=285117831 width=123) + Select Operator [SEL_236] (rows=285117831 width=123) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_241] (rows=285117831 width=123) - predicate:((cs_bill_customer_sk BETWEEN DynamicValue(RS_26_store_returns_sr_customer_sk_min) AND DynamicValue(RS_26_store_returns_sr_customer_sk_max) and in_bloom_filter(cs_bill_customer_sk, DynamicValue(RS_26_store_returns_sr_customer_sk_bloom_filter))) and (cs_item_sk BETWEEN DynamicValue(RS_26_store_returns_sr_item_sk_min) AND DynamicValue(RS_26_store_returns_sr_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_26_store_returns_sr_item_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_23_d3_d_date_sk_min) AND DynamicValue(RS_23_d3_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_23_d3_d_date_sk_bloom_filter))) and cs_bill_customer_sk is not null and cs_sold_date_sk is not null) + Filter Operator [FIL_235] (rows=285117831 width=123) + predicate:((cs_sold_date_sk BETWEEN DynamicValue(RS_23_d3_d_date_sk_min) AND DynamicValue(RS_23_d3_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_23_d3_d_date_sk_bloom_filter))) and cs_bill_customer_sk is not null and cs_sold_date_sk is not null) TableScan [TS_6] (rows=287989836 width=123) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_bill_customer_sk","cs_item_sk","cs_net_profit"] - <-Reducer 16 [BROADCAST_EDGE] vectorized - BROADCAST [RS_235] + <-Reducer 12 [BROADCAST_EDGE] vectorized + BROADCAST [RS_234] Group By Operator [GBY_233] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Reducer 15 [CUSTOM_SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_106] - Group By Operator [GBY_105] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_104] (rows=9402909 width=8) - Output:["_col0"] - Merge Join Operator [MERGEJOIN_208] (rows=9402909 width=100) - Conds:RS_232._col0=RS_223._col0(Inner),Output:["_col1","_col2","_col3","_col4"] - <-Map 8 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_223] - PartitionCols:_col0 - Select Operator [SEL_218] (rows=351 width=4) - Output:["_col0"] - Filter Operator [FIL_215] (rows=351 width=12) - predicate:((d_year = 2000) and d_moy BETWEEN 4 AND 10) - Please refer to the previous TableScan [TS_3] - <-Map 19 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_232] - PartitionCols:_col0 - Select Operator [SEL_231] (rows=53632139 width=123) - Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_230] (rows=53632139 width=123) - predicate:(sr_customer_sk is not null and sr_returned_date_sk is not null) - TableScan [TS_12] (rows=57591150 width=123) - default@store_returns,store_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["sr_returned_date_sk","sr_item_sk","sr_customer_sk","sr_ticket_number","sr_net_loss"] - <-Reducer 17 [BROADCAST_EDGE] vectorized - BROADCAST [RS_240] - Group By Operator [GBY_238] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Reducer 15 [CUSTOM_SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_121] - Group By Operator [GBY_120] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_119] (rows=9402909 width=6) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_208] - <-Reducer 14 [BROADCAST_EDGE] vectorized - BROADCAST [RS_237] - Group By Operator [GBY_236] (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_227] Group By Operator [GBY_225] (rows=1 width=12) @@ -253,15 +209,33 @@ Stage-0 Select Operator [SEL_222] (rows=351 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_217] - <-Reducer 15 [SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_26] + <-Reducer 13 [SIMPLE_EDGE] + SHUFFLE [RS_26] PartitionCols:_col1, _col2 - Please refer to the previous Merge Join Operator [MERGEJOIN_208] + Merge Join Operator [MERGEJOIN_208] (rows=9402909 width=100) + Conds:RS_240._col0=RS_223._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + <-Map 8 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_223] + PartitionCols:_col0 + Select Operator [SEL_218] (rows=351 width=4) + Output:["_col0"] + Filter Operator [FIL_215] (rows=351 width=12) + predicate:((d_year = 2000) and d_moy BETWEEN 4 AND 10) + Please refer to the previous TableScan [TS_3] + <-Map 15 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_240] + PartitionCols:_col0 + Select Operator [SEL_239] (rows=53632139 width=123) + Output:["_col0","_col1","_col2","_col3","_col4"] + Filter Operator [FIL_238] (rows=53632139 width=123) + predicate:(sr_customer_sk is not null and sr_returned_date_sk is not null) + TableScan [TS_12] (rows=57591150 width=123) + default@store_returns,store_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["sr_returned_date_sk","sr_item_sk","sr_customer_sk","sr_ticket_number","sr_net_loss"] <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_36] PartitionCols:_col1, _col2, _col4 Merge Join Operator [MERGEJOIN_206] (rows=13737330 width=8) - Conds:RS_250._col0=RS_219._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5"] + Conds:RS_232._col0=RS_219._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5"] <-Map 8 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_219] PartitionCols:_col0 @@ -271,42 +245,14 @@ Stage-0 predicate:((d_moy = 4) and (d_year = 2000)) Please refer to the previous TableScan [TS_3] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_250] + SHUFFLE [RS_232] PartitionCols:_col0 - Select Operator [SEL_249] (rows=501694138 width=126) + Select Operator [SEL_231] (rows=501694138 width=126) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] - Filter Operator [FIL_248] (rows=501694138 width=126) - predicate:((ss_customer_sk BETWEEN DynamicValue(RS_25_catalog_sales_cs_bill_customer_sk_min) AND DynamicValue(RS_25_catalog_sales_cs_bill_customer_sk_max) and in_bloom_filter(ss_customer_sk, DynamicValue(RS_25_catalog_sales_cs_bill_customer_sk_bloom_filter))) and (ss_customer_sk BETWEEN DynamicValue(RS_26_store_returns_sr_customer_sk_min) AND DynamicValue(RS_26_store_returns_sr_customer_sk_max) and in_bloom_filter(ss_customer_sk, DynamicValue(RS_26_store_returns_sr_customer_sk_bloom_filter))) and (ss_item_sk BETWEEN DynamicValue(RS_25_catalog_sales_cs_item_sk_min) AND DynamicValue(RS_25_catalog_sales_cs_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_25_catalog_sales_cs_item_sk_bloom_filter))) and (ss_item_sk BETWEEN DynamicValue(RS_26_store_returns_sr_item_sk_min) AND DynamicValue(RS_26_store_returns_sr_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_26_store_returns_sr_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_34_d1_d_date_sk_min) AND DynamicValue(RS_34_d1_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_34_d1_d_date_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) + Filter Operator [FIL_230] (rows=501694138 width=126) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_34_d1_d_date_sk_min) AND DynamicValue(RS_34_d1_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_34_d1_d_date_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_0] (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_ticket_number","ss_net_profit"] - <-Reducer 16 [BROADCAST_EDGE] vectorized - BROADCAST [RS_234] - Please refer to the previous Group By Operator [GBY_233] - <-Reducer 17 [BROADCAST_EDGE] vectorized - BROADCAST [RS_239] - Please refer to the previous Group By Operator [GBY_238] - <-Reducer 12 [BROADCAST_EDGE] vectorized - BROADCAST [RS_245] - Group By Operator [GBY_244] (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_111] - Group By Operator [GBY_110] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_109] (rows=54418158 width=8) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_207] - <-Reducer 13 [BROADCAST_EDGE] vectorized - BROADCAST [RS_247] - Group By Operator [GBY_246] (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_126] - Group By Operator [GBY_125] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_124] (rows=54418158 width=7) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_207] <-Reducer 9 [BROADCAST_EDGE] vectorized BROADCAST [RS_229] Group By Operator [GBY_228] (rows=1 width=12) diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query26.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query26.q.out index ed032b1b66..d1774f1562 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query26.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query26.q.out @@ -53,12 +53,11 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 11 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) -Reducer 11 <- Map 10 (CUSTOM_SIMPLE_EDGE) +Map 1 <- Reducer 9 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) Reducer 3 <- Map 10 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 12 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Map 13 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) +Reducer 4 <- Map 11 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 5 <- Map 12 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) Reducer 9 <- Map 8 (CUSTOM_SIMPLE_EDGE) @@ -68,16 +67,16 @@ Stage-0 limit:100 Stage-1 Reducer 7 vectorized - File Output Operator [FS_128] - Limit [LIM_127] (rows=100 width=444) + File Output Operator [FS_123] + Limit [LIM_122] (rows=100 width=444) Number of rows:100 - Select Operator [SEL_126] (rows=310774 width=444) + Select Operator [SEL_121] (rows=310774 width=444) Output:["_col0","_col1","_col2","_col3","_col4"] <-Reducer 6 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_125] - Select Operator [SEL_124] (rows=310774 width=444) + SHUFFLE [RS_120] + Select Operator [SEL_119] (rows=310774 width=444) Output:["_col0","_col1","_col2","_col3","_col4"] - Group By Operator [GBY_123] (rows=310774 width=476) + Group By Operator [GBY_118] (rows=310774 width=476) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8"],aggregations:["sum(VALUE._col0)","count(VALUE._col1)","sum(VALUE._col2)","count(VALUE._col3)","sum(VALUE._col4)","count(VALUE._col5)","sum(VALUE._col6)","count(VALUE._col7)"],keys:KEY._col0 <-Reducer 5 [SIMPLE_EDGE] SHUFFLE [RS_28] @@ -87,11 +86,11 @@ Stage-0 Top N Key Operator [TNK_54] (rows=809521 width=100) keys:_col12,sort order:+,top n:100 Merge Join Operator [MERGEJOIN_98] (rows=809521 width=100) - Conds:RS_23._col2=RS_122._col0(Inner),Output:["_col4","_col5","_col6","_col7","_col12"] - <-Map 13 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_122] + Conds:RS_23._col2=RS_117._col0(Inner),Output:["_col4","_col5","_col6","_col7","_col12"] + <-Map 12 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_117] PartitionCols:_col0 - Select Operator [SEL_121] (rows=462000 width=104) + Select Operator [SEL_116] (rows=462000 width=104) Output:["_col0","_col1"] TableScan [TS_12] (rows=462000 width=104) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_item_id"] @@ -99,13 +98,13 @@ Stage-0 SHUFFLE [RS_23] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_97] (rows=809521 width=4) - Conds:RS_20._col3=RS_120._col0(Inner),Output:["_col2","_col4","_col5","_col6","_col7"] - <-Map 12 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_120] + Conds:RS_20._col3=RS_115._col0(Inner),Output:["_col2","_col4","_col5","_col6","_col7"] + <-Map 11 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_115] PartitionCols:_col0 - Select Operator [SEL_119] (rows=2300 width=4) + Select Operator [SEL_114] (rows=2300 width=4) Output:["_col0"] - Filter Operator [FIL_118] (rows=2300 width=174) + Filter Operator [FIL_113] (rows=2300 width=174) predicate:((p_channel_email = 'N') or (p_channel_event = 'N')) TableScan [TS_9] (rows=2300 width=174) default@promotion,promotion,Tbl:COMPLETE,Col:COMPLETE,Output:["p_promo_sk","p_channel_email","p_channel_event"] @@ -113,13 +112,13 @@ Stage-0 SHUFFLE [RS_20] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_96] (rows=809521 width=4) - Conds:RS_17._col0=RS_109._col0(Inner),Output:["_col2","_col3","_col4","_col5","_col6","_col7"] + Conds:RS_17._col0=RS_112._col0(Inner),Output:["_col2","_col3","_col4","_col5","_col6","_col7"] <-Map 10 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_109] + SHUFFLE [RS_112] PartitionCols:_col0 - Select Operator [SEL_108] (rows=652 width=4) + Select Operator [SEL_111] (rows=652 width=4) Output:["_col0"] - Filter Operator [FIL_107] (rows=652 width=8) + Filter Operator [FIL_110] (rows=652 width=8) predicate:(d_year = 1998) TableScan [TS_6] (rows=73049 width=8) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year"] @@ -127,7 +126,7 @@ Stage-0 SHUFFLE [RS_17] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_95] (rows=2283326 width=135) - Conds:RS_117._col1=RS_101._col0(Inner),Output:["_col0","_col2","_col3","_col4","_col5","_col6","_col7"] + Conds:RS_109._col1=RS_101._col0(Inner),Output:["_col0","_col2","_col3","_col4","_col5","_col6","_col7"] <-Map 8 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_101] PartitionCols:_col0 @@ -138,25 +137,14 @@ Stage-0 TableScan [TS_3] (rows=1861800 width=268) default@customer_demographics,customer_demographics,Tbl:COMPLETE,Col:COMPLETE,Output:["cd_demo_sk","cd_gender","cd_marital_status","cd_education_status"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_117] + SHUFFLE [RS_109] PartitionCols:_col1 - Select Operator [SEL_116] (rows=283691050 width=354) + Select Operator [SEL_108] (rows=283691050 width=354) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] - Filter Operator [FIL_115] (rows=283691050 width=354) - predicate:((cs_bill_cdemo_sk BETWEEN DynamicValue(RS_15_customer_demographics_cd_demo_sk_min) AND DynamicValue(RS_15_customer_demographics_cd_demo_sk_max) and in_bloom_filter(cs_bill_cdemo_sk, DynamicValue(RS_15_customer_demographics_cd_demo_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_18_date_dim_d_date_sk_min) AND DynamicValue(RS_18_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_18_date_dim_d_date_sk_bloom_filter))) and cs_bill_cdemo_sk is not null and cs_promo_sk is not null and cs_sold_date_sk is not null) + Filter Operator [FIL_107] (rows=283691050 width=354) + predicate:((cs_bill_cdemo_sk BETWEEN DynamicValue(RS_15_customer_demographics_cd_demo_sk_min) AND DynamicValue(RS_15_customer_demographics_cd_demo_sk_max) and in_bloom_filter(cs_bill_cdemo_sk, DynamicValue(RS_15_customer_demographics_cd_demo_sk_bloom_filter))) and cs_bill_cdemo_sk is not null and cs_promo_sk is not null and cs_sold_date_sk is not null) TableScan [TS_0] (rows=287989836 width=354) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_bill_cdemo_sk","cs_item_sk","cs_promo_sk","cs_quantity","cs_list_price","cs_sales_price","cs_coupon_amt"] - <-Reducer 11 [BROADCAST_EDGE] vectorized - BROADCAST [RS_114] - Group By Operator [GBY_113] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 10 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_112] - Group By Operator [GBY_111] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_110] (rows=652 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_108] <-Reducer 9 [BROADCAST_EDGE] vectorized BROADCAST [RS_106] Group By Operator [GBY_105] (rows=1 width=12) diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query27.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query27.q.out index fdc1791a13..5bb760f24d 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query27.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query27.q.out @@ -57,13 +57,11 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 11 (BROADCAST_EDGE), Reducer 13 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) -Reducer 11 <- Map 10 (CUSTOM_SIMPLE_EDGE) -Reducer 13 <- Map 12 (CUSTOM_SIMPLE_EDGE) +Map 1 <- Reducer 9 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) Reducer 3 <- Map 10 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 12 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Map 14 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) +Reducer 4 <- Map 11 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 5 <- Map 12 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) Reducer 9 <- Map 8 (CUSTOM_SIMPLE_EDGE) @@ -73,16 +71,16 @@ Stage-0 limit:100 Stage-1 Reducer 7 vectorized - File Output Operator [FS_134] - Limit [LIM_133] (rows=100 width=538) + File Output Operator [FS_124] + Limit [LIM_123] (rows=100 width=538) Number of rows:100 - Select Operator [SEL_132] (rows=4281825 width=538) + Select Operator [SEL_122] (rows=4281825 width=538) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] <-Reducer 6 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_131] - Select Operator [SEL_130] (rows=4281825 width=538) + SHUFFLE [RS_121] + Select Operator [SEL_120] (rows=4281825 width=538) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] - Group By Operator [GBY_129] (rows=4281825 width=570) + Group By Operator [GBY_119] (rows=4281825 width=570) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10"],aggregations:["sum(VALUE._col0)","count(VALUE._col1)","sum(VALUE._col2)","count(VALUE._col3)","sum(VALUE._col4)","count(VALUE._col5)","sum(VALUE._col6)","count(VALUE._col7)"],keys:KEY._col0, KEY._col1, KEY._col2 <-Reducer 5 [SIMPLE_EDGE] SHUFFLE [RS_29] @@ -94,11 +92,11 @@ Stage-0 Select Operator [SEL_26] (rows=1427275 width=186) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] Merge Join Operator [MERGEJOIN_99] (rows=1427275 width=186) - Conds:RS_23._col1=RS_128._col0(Inner),Output:["_col4","_col5","_col6","_col7","_col11","_col13"] - <-Map 14 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_128] + Conds:RS_23._col1=RS_118._col0(Inner),Output:["_col4","_col5","_col6","_col7","_col11","_col13"] + <-Map 12 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_118] PartitionCols:_col0 - Select Operator [SEL_127] (rows=462000 width=104) + Select Operator [SEL_117] (rows=462000 width=104) Output:["_col0","_col1"] TableScan [TS_12] (rows=462000 width=104) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_item_id"] @@ -106,13 +104,13 @@ Stage-0 SHUFFLE [RS_23] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_98] (rows=1427275 width=90) - Conds:RS_20._col3=RS_118._col0(Inner),Output:["_col1","_col4","_col5","_col6","_col7","_col11"] - <-Map 12 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_118] + Conds:RS_20._col3=RS_116._col0(Inner),Output:["_col1","_col4","_col5","_col6","_col7","_col11"] + <-Map 11 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_116] PartitionCols:_col0 - Select Operator [SEL_117] (rows=209 width=90) + Select Operator [SEL_115] (rows=209 width=90) Output:["_col0","_col1"] - Filter Operator [FIL_116] (rows=209 width=90) + Filter Operator [FIL_114] (rows=209 width=90) predicate:(s_state) IN ('SD', 'FL', 'MI', 'LA', 'MO', 'SC') TableScan [TS_9] (rows=1704 width=90) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_state"] @@ -120,13 +118,13 @@ Stage-0 SHUFFLE [RS_20] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_97] (rows=1441779 width=4) - Conds:RS_17._col0=RS_110._col0(Inner),Output:["_col1","_col3","_col4","_col5","_col6","_col7"] + Conds:RS_17._col0=RS_113._col0(Inner),Output:["_col1","_col3","_col4","_col5","_col6","_col7"] <-Map 10 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_110] + SHUFFLE [RS_113] PartitionCols:_col0 - Select Operator [SEL_109] (rows=652 width=4) + Select Operator [SEL_112] (rows=652 width=4) Output:["_col0"] - Filter Operator [FIL_108] (rows=652 width=8) + Filter Operator [FIL_111] (rows=652 width=8) predicate:(d_year = 2001) TableScan [TS_6] (rows=73049 width=8) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year"] @@ -134,7 +132,7 @@ Stage-0 SHUFFLE [RS_17] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_96] (rows=4037920 width=4) - Conds:RS_126._col2=RS_102._col0(Inner),Output:["_col0","_col1","_col3","_col4","_col5","_col6","_col7"] + Conds:RS_110._col2=RS_102._col0(Inner),Output:["_col0","_col1","_col3","_col4","_col5","_col6","_col7"] <-Map 8 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_102] PartitionCols:_col0 @@ -145,36 +143,14 @@ Stage-0 TableScan [TS_3] (rows=1861800 width=268) default@customer_demographics,customer_demographics,Tbl:COMPLETE,Col:COMPLETE,Output:["cd_demo_sk","cd_gender","cd_marital_status","cd_education_status"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_126] + SHUFFLE [RS_110] PartitionCols:_col2 - Select Operator [SEL_125] (rows=501690006 width=340) + Select Operator [SEL_109] (rows=501690006 width=340) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] - Filter Operator [FIL_124] (rows=501690006 width=340) - predicate:((ss_cdemo_sk BETWEEN DynamicValue(RS_15_customer_demographics_cd_demo_sk_min) AND DynamicValue(RS_15_customer_demographics_cd_demo_sk_max) and in_bloom_filter(ss_cdemo_sk, DynamicValue(RS_15_customer_demographics_cd_demo_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_18_date_dim_d_date_sk_min) AND DynamicValue(RS_18_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_18_date_dim_d_date_sk_bloom_filter))) and (ss_store_sk BETWEEN DynamicValue(RS_21_store_s_store_sk_min) AND DynamicValue(RS_21_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_21_store_s_store_sk_bloom_filter))) and ss_cdemo_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_108] (rows=501690006 width=340) + predicate:((ss_cdemo_sk BETWEEN DynamicValue(RS_15_customer_demographics_cd_demo_sk_min) AND DynamicValue(RS_15_customer_demographics_cd_demo_sk_max) and in_bloom_filter(ss_cdemo_sk, DynamicValue(RS_15_customer_demographics_cd_demo_sk_bloom_filter))) and ss_cdemo_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) TableScan [TS_0] (rows=575995635 width=340) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_cdemo_sk","ss_store_sk","ss_quantity","ss_list_price","ss_sales_price","ss_coupon_amt"] - <-Reducer 11 [BROADCAST_EDGE] vectorized - BROADCAST [RS_115] - Group By Operator [GBY_114] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 10 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_113] - Group By Operator [GBY_112] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_111] (rows=652 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_109] - <-Reducer 13 [BROADCAST_EDGE] vectorized - BROADCAST [RS_123] - Group By Operator [GBY_122] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 12 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_121] - Group By Operator [GBY_120] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_119] (rows=209 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_117] <-Reducer 9 [BROADCAST_EDGE] vectorized BROADCAST [RS_107] Group By Operator [GBY_106] (rows=1 width=12) diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query29.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query29.q.out index 715f1cef53..17fc1bfbf3 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query29.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query29.q.out @@ -107,38 +107,33 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 9 (BROADCAST_EDGE) -Map 10 <- Reducer 16 (BROADCAST_EDGE), Reducer 18 (BROADCAST_EDGE), Reducer 19 (BROADCAST_EDGE), Reducer 20 (BROADCAST_EDGE), Reducer 6 (BROADCAST_EDGE), Reducer 7 (BROADCAST_EDGE) -Reducer 11 <- Map 10 (SIMPLE_EDGE), Map 15 (SIMPLE_EDGE) -Reducer 12 <- Reducer 11 (SIMPLE_EDGE), Reducer 17 (SIMPLE_EDGE) -Reducer 13 <- Map 22 (SIMPLE_EDGE), Reducer 12 (SIMPLE_EDGE) -Reducer 14 <- Map 23 (SIMPLE_EDGE), Reducer 13 (SIMPLE_EDGE) -Reducer 16 <- Map 15 (CUSTOM_SIMPLE_EDGE) -Reducer 17 <- Map 15 (SIMPLE_EDGE), Map 21 (SIMPLE_EDGE) -Reducer 18 <- Reducer 17 (CUSTOM_SIMPLE_EDGE) -Reducer 19 <- Reducer 17 (CUSTOM_SIMPLE_EDGE) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) -Reducer 20 <- Reducer 17 (CUSTOM_SIMPLE_EDGE) -Reducer 3 <- Reducer 14 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Map 1 <- Reducer 7 (BROADCAST_EDGE) +Map 8 <- Reducer 14 (BROADCAST_EDGE) +Reducer 10 <- Reducer 15 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) +Reducer 11 <- Map 17 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE) +Reducer 12 <- Map 18 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE) +Reducer 14 <- Map 13 (CUSTOM_SIMPLE_EDGE) +Reducer 15 <- Map 13 (SIMPLE_EDGE), Map 16 (SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) +Reducer 3 <- Reducer 12 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) -Reducer 6 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) -Reducer 7 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) -Reducer 9 <- Map 8 (CUSTOM_SIMPLE_EDGE) +Reducer 7 <- Map 6 (CUSTOM_SIMPLE_EDGE) +Reducer 9 <- Map 13 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) Stage-0 Fetch Operator limit:100 Stage-1 Reducer 5 vectorized - File Output Operator [FS_250] - Limit [LIM_249] (rows=100 width=496) + File Output Operator [FS_240] + Limit [LIM_239] (rows=100 width=496) Number of rows:100 - Select Operator [SEL_248] (rows=21091879 width=496) + Select Operator [SEL_238] (rows=21091879 width=496) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] <-Reducer 4 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_247] - Group By Operator [GBY_246] (rows=21091879 width=496) + SHUFFLE [RS_237] + Group By Operator [GBY_236] (rows=21091879 width=496) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3 <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_47] @@ -149,77 +144,43 @@ Stage-0 keys:_col6, _col7, _col22, _col23,sort order:++++,top n:100 Merge Join Operator [MERGEJOIN_203] (rows=4156223234 width=483) Conds:RS_42._col2, _col1=RS_43._col11, _col12(Inner),Output:["_col3","_col6","_col7","_col13","_col19","_col22","_col23"] - <-Reducer 2 [SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_42] - PartitionCols:_col2, _col1 - Merge Join Operator [MERGEJOIN_197] (rows=7638375 width=10) - Conds:RS_214._col0=RS_206._col0(Inner),Output:["_col1","_col2","_col3"] - <-Map 8 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_206] - PartitionCols:_col0 - Select Operator [SEL_205] (rows=1957 width=4) - Output:["_col0"] - Filter Operator [FIL_204] (rows=1957 width=8) - predicate:(d_year) IN (1999, 2000, 2001) - TableScan [TS_3] (rows=73049 width=8) - default@date_dim,d3,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year"] - <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_214] - PartitionCols:_col0 - Select Operator [SEL_213] (rows=285117831 width=15) - Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_212] (rows=285117831 width=15) - predicate:((cs_sold_date_sk BETWEEN DynamicValue(RS_40_d3_d_date_sk_min) AND DynamicValue(RS_40_d3_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_40_d3_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=15) - default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_bill_customer_sk","cs_item_sk","cs_quantity"] - <-Reducer 9 [BROADCAST_EDGE] vectorized - BROADCAST [RS_211] - Group By Operator [GBY_210] (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_209] - Group By Operator [GBY_208] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_207] (rows=1957 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_205] - <-Reducer 14 [SIMPLE_EDGE] + <-Reducer 12 [SIMPLE_EDGE] SHUFFLE [RS_43] PartitionCols:_col11, _col12 Select Operator [SEL_38] (rows=21091879 width=484) Output:["_col1","_col2","_col8","_col11","_col12","_col14","_col17","_col18"] Merge Join Operator [MERGEJOIN_202] (rows=21091879 width=484) - Conds:RS_35._col3=RS_245._col0(Inner),Output:["_col5","_col8","_col9","_col11","_col14","_col15","_col17","_col18"] - <-Map 23 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_245] + Conds:RS_35._col3=RS_235._col0(Inner),Output:["_col5","_col8","_col9","_col11","_col14","_col15","_col17","_col18"] + <-Map 18 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_235] PartitionCols:_col0 - Select Operator [SEL_244] (rows=1704 width=192) + Select Operator [SEL_234] (rows=1704 width=192) Output:["_col0","_col1","_col2"] TableScan [TS_24] (rows=1704 width=192) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_store_id","s_store_name"] - <-Reducer 13 [SIMPLE_EDGE] + <-Reducer 11 [SIMPLE_EDGE] SHUFFLE [RS_35] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_201] (rows=21091879 width=298) - Conds:RS_32._col1=RS_243._col0(Inner),Output:["_col3","_col5","_col8","_col9","_col11","_col14","_col15"] - <-Map 22 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_243] + Conds:RS_32._col1=RS_233._col0(Inner),Output:["_col3","_col5","_col8","_col9","_col11","_col14","_col15"] + <-Map 17 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_233] PartitionCols:_col0 - Select Operator [SEL_242] (rows=462000 width=288) + Select Operator [SEL_232] (rows=462000 width=288) Output:["_col0","_col1","_col2"] TableScan [TS_22] (rows=462000 width=288) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_item_id","i_item_desc"] - <-Reducer 12 [SIMPLE_EDGE] + <-Reducer 10 [SIMPLE_EDGE] SHUFFLE [RS_32] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_200] (rows=21091879 width=18) Conds:RS_29._col1, _col2, _col4=RS_30._col1, _col2, _col3(Inner),Output:["_col1","_col3","_col5","_col8","_col9","_col11"] - <-Reducer 17 [SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_30] + <-Reducer 15 [SIMPLE_EDGE] + SHUFFLE [RS_30] PartitionCols:_col1, _col2, _col3 Merge Join Operator [MERGEJOIN_199] (rows=5384572 width=13) - Conds:RS_228._col0=RS_221._col0(Inner),Output:["_col1","_col2","_col3","_col4"] - <-Map 15 [SIMPLE_EDGE] vectorized + Conds:RS_231._col0=RS_221._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + <-Map 13 [SIMPLE_EDGE] vectorized SHUFFLE [RS_221] PartitionCols:_col0 Select Operator [SEL_218] (rows=201 width=4) @@ -228,21 +189,21 @@ Stage-0 predicate:((d_year = 1999) and d_moy BETWEEN 4 AND 7) TableScan [TS_9] (rows=73049 width=12) default@date_dim,d1,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] - <-Map 21 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_228] + <-Map 16 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_231] PartitionCols:_col0 - Select Operator [SEL_227] (rows=53632139 width=19) + Select Operator [SEL_230] (rows=53632139 width=19) Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_226] (rows=53632139 width=19) + Filter Operator [FIL_229] (rows=53632139 width=19) predicate:(sr_customer_sk is not null and sr_returned_date_sk is not null) TableScan [TS_12] (rows=57591150 width=19) default@store_returns,store_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["sr_returned_date_sk","sr_item_sk","sr_customer_sk","sr_ticket_number","sr_return_quantity"] - <-Reducer 11 [SIMPLE_EDGE] + <-Reducer 9 [SIMPLE_EDGE] SHUFFLE [RS_29] PartitionCols:_col1, _col2, _col4 Merge Join Operator [MERGEJOIN_198] (rows=13737330 width=8) - Conds:RS_241._col0=RS_219._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5"] - <-Map 15 [SIMPLE_EDGE] vectorized + Conds:RS_228._col0=RS_219._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5"] + <-Map 13 [SIMPLE_EDGE] vectorized SHUFFLE [RS_219] PartitionCols:_col0 Select Operator [SEL_217] (rows=50 width=4) @@ -250,79 +211,58 @@ Stage-0 Filter Operator [FIL_215] (rows=50 width=12) predicate:((d_moy = 4) and (d_year = 1999)) Please refer to the previous TableScan [TS_9] - <-Map 10 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_241] + <-Map 8 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_228] PartitionCols:_col0 - Select Operator [SEL_240] (rows=501694138 width=23) + Select Operator [SEL_227] (rows=501694138 width=23) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] - Filter Operator [FIL_239] (rows=501694138 width=23) - predicate:((ss_customer_sk BETWEEN DynamicValue(RS_30_store_returns_sr_customer_sk_min) AND DynamicValue(RS_30_store_returns_sr_customer_sk_max) and in_bloom_filter(ss_customer_sk, DynamicValue(RS_30_store_returns_sr_customer_sk_bloom_filter))) and (ss_customer_sk BETWEEN DynamicValue(RS_42_catalog_sales_cs_bill_customer_sk_min) AND DynamicValue(RS_42_catalog_sales_cs_bill_customer_sk_max) and in_bloom_filter(ss_customer_sk, DynamicValue(RS_42_catalog_sales_cs_bill_customer_sk_bloom_filter))) and (ss_item_sk BETWEEN DynamicValue(RS_30_store_returns_sr_item_sk_min) AND DynamicValue(RS_30_store_returns_sr_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_30_store_returns_sr_item_sk_bloom_filter))) and (ss_item_sk BETWEEN DynamicValue(RS_42_catalog_sales_cs_item_sk_min) AND DynamicValue(RS_42_catalog_sales_cs_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_42_catalog_sales_cs_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_27_d1_d_date_sk_min) AND DynamicValue(RS_27_d1_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_27_d1_d_date_sk_bloom_filter))) and (ss_ticket_number BETWEEN DynamicValue(RS_30_store_returns_sr_ticket_number_min) AND DynamicValue(RS_30_store_returns_sr_ticket_number_max) and in_bloom_filter(ss_ticket_number, DynamicValue(RS_30_store_returns_sr_ticket_number_bloom_filter))) and ss_customer_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_226] (rows=501694138 width=23) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_27_d1_d_date_sk_min) AND DynamicValue(RS_27_d1_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_27_d1_d_date_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_6] (rows=575995635 width=23) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_customer_sk","ss_store_sk","ss_ticket_number","ss_quantity"] - <-Reducer 16 [BROADCAST_EDGE] vectorized + <-Reducer 14 [BROADCAST_EDGE] vectorized BROADCAST [RS_225] Group By Operator [GBY_224] (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 + <-Map 13 [CUSTOM_SIMPLE_EDGE] vectorized SHUFFLE [RS_223] Group By Operator [GBY_222] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] Select Operator [SEL_220] (rows=50 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_217] - <-Reducer 18 [BROADCAST_EDGE] vectorized - BROADCAST [RS_230] - Group By Operator [GBY_229] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Reducer 17 [CUSTOM_SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_119] - Group By Operator [GBY_118] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_117] (rows=5384572 width=8) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_199] - <-Reducer 19 [BROADCAST_EDGE] vectorized - BROADCAST [RS_232] - Group By Operator [GBY_231] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Reducer 17 [CUSTOM_SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_124] - Group By Operator [GBY_123] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_122] (rows=5384572 width=5) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_199] - <-Reducer 20 [BROADCAST_EDGE] vectorized - BROADCAST [RS_234] - Group By Operator [GBY_233] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=3507020)"] - <-Reducer 17 [CUSTOM_SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_129] - Group By Operator [GBY_128] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=3507020)"] - Select Operator [SEL_127] (rows=5384572 width=8) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_199] - <-Reducer 6 [BROADCAST_EDGE] vectorized - BROADCAST [RS_236] - Group By Operator [GBY_235] (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_144] - Group By Operator [GBY_143] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_142] (rows=7638375 width=8) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_197] - <-Reducer 7 [BROADCAST_EDGE] vectorized - BROADCAST [RS_238] - Group By Operator [GBY_237] (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_149] - Group By Operator [GBY_148] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_147] (rows=7638375 width=6) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_197] + <-Reducer 2 [SIMPLE_EDGE] + SHUFFLE [RS_42] + PartitionCols:_col2, _col1 + Merge Join Operator [MERGEJOIN_197] (rows=7638375 width=10) + Conds:RS_214._col0=RS_206._col0(Inner),Output:["_col1","_col2","_col3"] + <-Map 6 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_206] + PartitionCols:_col0 + Select Operator [SEL_205] (rows=1957 width=4) + Output:["_col0"] + Filter Operator [FIL_204] (rows=1957 width=8) + predicate:(d_year) IN (1999, 2000, 2001) + TableScan [TS_3] (rows=73049 width=8) + default@date_dim,d3,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year"] + <-Map 1 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_214] + PartitionCols:_col0 + Select Operator [SEL_213] (rows=285117831 width=15) + Output:["_col0","_col1","_col2","_col3"] + Filter Operator [FIL_212] (rows=285117831 width=15) + predicate:((cs_sold_date_sk BETWEEN DynamicValue(RS_40_d3_d_date_sk_min) AND DynamicValue(RS_40_d3_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_40_d3_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=15) + default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_bill_customer_sk","cs_item_sk","cs_quantity"] + <-Reducer 7 [BROADCAST_EDGE] vectorized + BROADCAST [RS_211] + Group By Operator [GBY_210] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 6 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_209] + Group By Operator [GBY_208] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_207] (rows=1957 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_205] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query3.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query3.q.out index 0cca24c23c..b45cdf0821 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query3.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query3.q.out @@ -49,27 +49,26 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 7 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) +Map 1 <- Reducer 7 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) Reducer 3 <- Map 8 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) Reducer 7 <- Map 6 (CUSTOM_SIMPLE_EDGE) -Reducer 9 <- Map 8 (CUSTOM_SIMPLE_EDGE) Stage-0 Fetch Operator limit:100 Stage-1 Reducer 5 vectorized - File Output Operator [FS_77] - Limit [LIM_76] (rows=100 width=220) + File Output Operator [FS_72] + Limit [LIM_71] (rows=100 width=220) Number of rows:100 - Select Operator [SEL_75] (rows=274400 width=220) + Select Operator [SEL_70] (rows=274400 width=220) Output:["_col0","_col1","_col2","_col3"] <-Reducer 4 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_74] - Group By Operator [GBY_73] (rows=274400 width=220) + SHUFFLE [RS_69] + Group By Operator [GBY_68] (rows=274400 width=220) Output:["_col0","_col1","_col2","_col3"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_17] @@ -77,13 +76,13 @@ Stage-0 Group By Operator [GBY_16] (rows=274400 width=220) Output:["_col0","_col1","_col2","_col3"],aggregations:["sum(_col2)"],keys:_col7, _col4, _col5 Merge Join Operator [MERGEJOIN_53] (rows=589741 width=108) - Conds:RS_12._col0=RS_64._col0(Inner),Output:["_col2","_col4","_col5","_col7"] + Conds:RS_12._col0=RS_67._col0(Inner),Output:["_col2","_col4","_col5","_col7"] <-Map 8 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_64] + SHUFFLE [RS_67] PartitionCols:_col0 - Select Operator [SEL_63] (rows=5619 width=8) + Select Operator [SEL_66] (rows=5619 width=8) Output:["_col0","_col1"] - Filter Operator [FIL_62] (rows=5619 width=12) + Filter Operator [FIL_65] (rows=5619 width=12) predicate:(d_moy = 12) TableScan [TS_6] (rows=73049 width=12) default@date_dim,dt,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] @@ -91,7 +90,7 @@ Stage-0 SHUFFLE [RS_12] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_52] (rows=7666836 width=104) - Conds:RS_72._col1=RS_56._col0(Inner),Output:["_col0","_col2","_col4","_col5"] + Conds:RS_64._col1=RS_56._col0(Inner),Output:["_col0","_col2","_col4","_col5"] <-Map 6 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_56] PartitionCols:_col0 @@ -102,12 +101,12 @@ Stage-0 TableScan [TS_3] (rows=462000 width=111) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_brand_id","i_brand","i_manufact_id"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_72] + SHUFFLE [RS_64] PartitionCols:_col1 - Select Operator [SEL_71] (rows=550076554 width=114) + Select Operator [SEL_63] (rows=550076554 width=114) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_70] (rows=550076554 width=114) - predicate:((ss_item_sk BETWEEN DynamicValue(RS_10_item_i_item_sk_min) AND DynamicValue(RS_10_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_10_item_i_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_13_dt_d_date_sk_min) AND DynamicValue(RS_13_dt_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_13_dt_d_date_sk_bloom_filter))) and ss_sold_date_sk is not null) + Filter Operator [FIL_62] (rows=550076554 width=114) + predicate:((ss_item_sk BETWEEN DynamicValue(RS_10_item_i_item_sk_min) AND DynamicValue(RS_10_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_10_item_i_item_sk_bloom_filter))) 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_item_sk","ss_ext_sales_price"] <-Reducer 7 [BROADCAST_EDGE] vectorized @@ -121,15 +120,4 @@ Stage-0 Select Operator [SEL_57] (rows=669 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_55] - <-Reducer 9 [BROADCAST_EDGE] vectorized - BROADCAST [RS_69] - Group By Operator [GBY_68] (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_67] - Group By Operator [GBY_66] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_65] (rows=5619 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_63] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query32.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query32.q.out index d909c0254d..2156b9cb32 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query32.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query32.q.out @@ -63,28 +63,26 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 14 (BROADCAST_EDGE), Reducer 7 (BROADCAST_EDGE) -Map 12 <- Reducer 11 (BROADCAST_EDGE), Reducer 14 (BROADCAST_EDGE), Reducer 5 (BROADCAST_EDGE) -Reducer 10 <- Map 13 (SIMPLE_EDGE), Reducer 9 (ONE_TO_ONE_EDGE) -Reducer 11 <- Map 6 (CUSTOM_SIMPLE_EDGE) -Reducer 14 <- Map 13 (CUSTOM_SIMPLE_EDGE) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) -Reducer 3 <- Reducer 10 (ONE_TO_ONE_EDGE), Reducer 2 (SIMPLE_EDGE) +Map 1 <- Reducer 9 (BROADCAST_EDGE) +Map 10 <- Reducer 12 (BROADCAST_EDGE) +Reducer 12 <- Map 11 (CUSTOM_SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 5 (SIMPLE_EDGE) +Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 8 (ONE_TO_ONE_EDGE) Reducer 4 <- Reducer 3 (CUSTOM_SIMPLE_EDGE) -Reducer 5 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) -Reducer 7 <- Map 6 (CUSTOM_SIMPLE_EDGE) -Reducer 8 <- Map 12 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) -Reducer 9 <- Reducer 8 (SIMPLE_EDGE) +Reducer 6 <- Map 10 (SIMPLE_EDGE), Map 5 (SIMPLE_EDGE) +Reducer 7 <- Reducer 6 (SIMPLE_EDGE) +Reducer 8 <- Map 11 (SIMPLE_EDGE), Reducer 7 (ONE_TO_ONE_EDGE) +Reducer 9 <- Reducer 8 (CUSTOM_SIMPLE_EDGE) Stage-0 Fetch Operator limit:100 Stage-1 Reducer 4 vectorized - File Output Operator [FS_141] - Limit [LIM_140] (rows=1 width=112) + File Output Operator [FS_130] + Limit [LIM_129] (rows=1 width=112) Number of rows:100 - Group By Operator [GBY_139] (rows=1 width=112) + Group By Operator [GBY_128] (rows=1 width=112) Output:["_col0"],aggregations:["sum(VALUE._col0)"] <-Reducer 3 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_36] @@ -96,115 +94,90 @@ Stage-0 predicate:(_col2 > _col5) Merge Join Operator [MERGEJOIN_104] (rows=7434 width=112) Conds:RS_30._col1=RS_31._col2(Inner),Output:["_col2","_col5"] - <-Reducer 2 [SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_30] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_101] (rows=31836679 width=110) - Conds:RS_128._col0=RS_107._col0(Inner),Output:["_col1","_col2"] - <-Map 6 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_107] - PartitionCols:_col0 - Select Operator [SEL_106] (rows=8116 width=4) - Output:["_col0"] - Filter Operator [FIL_105] (rows=8116 width=98) - predicate:CAST( d_date AS TIMESTAMP) BETWEEN TIMESTAMP'1998-03-18 00:00:00' AND TIMESTAMP'1998-06-16 00:00:00' - TableScan [TS_3] (rows=73049 width=98) - default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"] - <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_128] - PartitionCols:_col0 - Select Operator [SEL_127] (rows=286549727 width=119) - Output:["_col0","_col1","_col2"] - Filter Operator [FIL_126] (rows=286549727 width=119) - predicate:((cs_item_sk BETWEEN DynamicValue(RS_24_item_i_item_sk_min) AND DynamicValue(RS_24_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_24_item_i_item_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_28_date_dim_d_date_sk_min) AND DynamicValue(RS_28_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_28_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_discount_amt"] - <-Reducer 14 [BROADCAST_EDGE] vectorized - BROADCAST [RS_124] - Group By Operator [GBY_123] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 13 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_122] - Group By Operator [GBY_121] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_120] (rows=669 width=4) - Output:["_col0"] - Select Operator [SEL_118] (rows=669 width=4) - Output:["_col0"] - Filter Operator [FIL_117] (rows=669 width=7) - predicate:(i_manufact_id = 269) - TableScan [TS_20] (rows=462000 width=7) - default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_manufact_id"] - <-Reducer 7 [BROADCAST_EDGE] vectorized - BROADCAST [RS_116] - Group By Operator [GBY_115] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 6 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_113] - Group By Operator [GBY_111] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_108] (rows=8116 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_106] - <-Reducer 10 [ONE_TO_ONE_EDGE] - FORWARD [RS_31] + <-Reducer 8 [ONE_TO_ONE_EDGE] + PARTITION_ONLY_SHUFFLE [RS_31] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_103] (rows=97 width=116) - Conds:RS_138._col0=RS_119._col0(Inner),Output:["_col1","_col2"] - <-Map 13 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_119] + Conds:RS_122._col0=RS_111._col0(Inner),Output:["_col1","_col2"] + <-Map 11 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_111] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_118] - <-Reducer 9 [ONE_TO_ONE_EDGE] vectorized - FORWARD [RS_138] + Select Operator [SEL_110] (rows=669 width=4) + Output:["_col0"] + Filter Operator [FIL_109] (rows=669 width=7) + predicate:(i_manufact_id = 269) + TableScan [TS_20] (rows=462000 width=7) + default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_manufact_id"] + <-Reducer 7 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_122] PartitionCols:_col0 - Select Operator [SEL_137] (rows=6951 width=116) + Select Operator [SEL_121] (rows=6951 width=116) Output:["_col0","_col1"] - Group By Operator [GBY_136] (rows=6951 width=124) + Group By Operator [GBY_120] (rows=6951 width=124) Output:["_col0","_col1","_col2"],aggregations:["sum(VALUE._col0)","count(VALUE._col1)"],keys:KEY._col0 - <-Reducer 8 [SIMPLE_EDGE] + <-Reducer 6 [SIMPLE_EDGE] SHUFFLE [RS_17] PartitionCols:_col0 Group By Operator [GBY_16] (rows=97314 width=124) Output:["_col0","_col1","_col2"],aggregations:["sum(_col2)","count(_col2)"],keys:_col1 Merge Join Operator [MERGEJOIN_102] (rows=31836679 width=110) - Conds:RS_135._col0=RS_109._col0(Inner),Output:["_col1","_col2"] - <-Map 6 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_109] + Conds:RS_119._col0=RS_108._col0(Inner),Output:["_col1","_col2"] + <-Map 5 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_108] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_106] - <-Map 12 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_135] + Select Operator [SEL_106] (rows=8116 width=4) + Output:["_col0"] + Filter Operator [FIL_105] (rows=8116 width=98) + predicate:CAST( d_date AS TIMESTAMP) BETWEEN TIMESTAMP'1998-03-18 00:00:00' AND TIMESTAMP'1998-06-16 00:00:00' + TableScan [TS_3] (rows=73049 width=98) + default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"] + <-Map 10 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_119] PartitionCols:_col0 - Select Operator [SEL_134] (rows=286549727 width=119) + Select Operator [SEL_118] (rows=286549727 width=119) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_133] (rows=286549727 width=119) - predicate:((cs_item_sk BETWEEN DynamicValue(RS_24_item_i_item_sk_min) AND DynamicValue(RS_24_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_24_item_i_item_sk_bloom_filter))) and (cs_item_sk BETWEEN DynamicValue(RS_30_catalog_sales_cs_item_sk_min) AND DynamicValue(RS_30_catalog_sales_cs_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_30_catalog_sales_cs_item_sk_bloom_filter))) and (cs_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(cs_sold_date_sk, DynamicValue(RS_13_date_dim_d_date_sk_bloom_filter))) and cs_sold_date_sk is not null) + Filter Operator [FIL_117] (rows=286549727 width=119) + predicate:((cs_item_sk BETWEEN DynamicValue(RS_24_item_i_item_sk_min) AND DynamicValue(RS_24_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_24_item_i_item_sk_bloom_filter))) and cs_sold_date_sk is not null) TableScan [TS_6] (rows=287989836 width=119) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_item_sk","cs_ext_discount_amt"] - <-Reducer 14 [BROADCAST_EDGE] vectorized - BROADCAST [RS_125] - Please refer to the previous Group By Operator [GBY_123] - <-Reducer 11 [BROADCAST_EDGE] vectorized - BROADCAST [RS_130] - Group By Operator [GBY_129] (rows=1 width=12) + <-Reducer 12 [BROADCAST_EDGE] vectorized + BROADCAST [RS_116] + Group By Operator [GBY_115] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 6 [CUSTOM_SIMPLE_EDGE] vectorized + <-Map 11 [CUSTOM_SIMPLE_EDGE] vectorized SHUFFLE [RS_114] - Group By Operator [GBY_112] (rows=1 width=12) + Group By Operator [GBY_113] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_110] (rows=8116 width=4) + Select Operator [SEL_112] (rows=669 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_106] - <-Reducer 5 [BROADCAST_EDGE] vectorized - BROADCAST [RS_132] - Group By Operator [GBY_131] (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_91] - Group By Operator [GBY_90] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_89] (rows=31836679 width=8) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_101] + Please refer to the previous Select Operator [SEL_110] + <-Reducer 2 [SIMPLE_EDGE] + SHUFFLE [RS_30] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_101] (rows=31836679 width=110) + Conds:RS_127._col0=RS_107._col0(Inner),Output:["_col1","_col2"] + <-Map 5 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_107] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_106] + <-Map 1 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_127] + PartitionCols:_col0 + Select Operator [SEL_126] (rows=286549727 width=119) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_125] (rows=286549727 width=119) + predicate:((cs_item_sk BETWEEN DynamicValue(RS_31_item_i_item_sk_min) AND DynamicValue(RS_31_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_31_item_i_item_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_discount_amt"] + <-Reducer 9 [BROADCAST_EDGE] vectorized + BROADCAST [RS_124] + Group By Operator [GBY_123] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Reducer 8 [CUSTOM_SIMPLE_EDGE] + PARTITION_ONLY_SHUFFLE [RS_65] + Group By Operator [GBY_64] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_63] (rows=97 width=8) + Output:["_col0"] + Please refer to the previous Merge Join Operator [MERGEJOIN_103] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query33.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query33.q.out index 6d7c620dea..3a6c89518e 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query33.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query33.q.out @@ -163,25 +163,22 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 14 <- Reducer 18 (BROADCAST_EDGE), Reducer 26 (BROADCAST_EDGE) -Map 29 <- Reducer 21 (BROADCAST_EDGE), Reducer 27 (BROADCAST_EDGE) -Map 30 <- Reducer 24 (BROADCAST_EDGE), Reducer 28 (BROADCAST_EDGE) +Map 14 <- Reducer 18 (BROADCAST_EDGE) +Map 26 <- Reducer 21 (BROADCAST_EDGE) +Map 27 <- Reducer 24 (BROADCAST_EDGE) Reducer 10 <- Reducer 2 (SIMPLE_EDGE), Reducer 23 (SIMPLE_EDGE) Reducer 11 <- Reducer 10 (SIMPLE_EDGE), Union 5 (CONTAINS) Reducer 13 <- Map 12 (SIMPLE_EDGE) Reducer 15 <- Map 14 (SIMPLE_EDGE), Map 17 (SIMPLE_EDGE) Reducer 16 <- Map 25 (SIMPLE_EDGE), Reducer 15 (SIMPLE_EDGE) Reducer 18 <- Map 17 (CUSTOM_SIMPLE_EDGE) -Reducer 19 <- Map 17 (SIMPLE_EDGE), Map 29 (SIMPLE_EDGE) +Reducer 19 <- Map 17 (SIMPLE_EDGE), Map 26 (SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 13 (ONE_TO_ONE_EDGE) Reducer 20 <- Map 25 (SIMPLE_EDGE), Reducer 19 (SIMPLE_EDGE) Reducer 21 <- Map 17 (CUSTOM_SIMPLE_EDGE) -Reducer 22 <- Map 17 (SIMPLE_EDGE), Map 30 (SIMPLE_EDGE) +Reducer 22 <- Map 17 (SIMPLE_EDGE), Map 27 (SIMPLE_EDGE) Reducer 23 <- Map 25 (SIMPLE_EDGE), Reducer 22 (SIMPLE_EDGE) Reducer 24 <- Map 17 (CUSTOM_SIMPLE_EDGE) -Reducer 26 <- Map 25 (CUSTOM_SIMPLE_EDGE) -Reducer 27 <- Map 25 (CUSTOM_SIMPLE_EDGE) -Reducer 28 <- Map 25 (CUSTOM_SIMPLE_EDGE) Reducer 3 <- Reducer 16 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Union 5 (CONTAINS) Reducer 6 <- Union 5 (SIMPLE_EDGE) @@ -194,22 +191,22 @@ Stage-0 limit:100 Stage-1 Reducer 7 vectorized - File Output Operator [FS_368] - Limit [LIM_367] (rows=59 width=115) + File Output Operator [FS_357] + Limit [LIM_356] (rows=59 width=115) Number of rows:100 - Select Operator [SEL_366] (rows=59 width=115) + Select Operator [SEL_355] (rows=59 width=115) Output:["_col0","_col1"] <-Reducer 6 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_365] - Group By Operator [GBY_364] (rows=59 width=115) + SHUFFLE [RS_354] + Group By Operator [GBY_353] (rows=59 width=115) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 <-Union 5 [SIMPLE_EDGE] <-Reducer 11 [CONTAINS] vectorized - Reduce Output Operator [RS_388] + Reduce Output Operator [RS_373] PartitionCols:_col0 - Group By Operator [GBY_387] (rows=59 width=115) + Group By Operator [GBY_372] (rows=59 width=115) Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0 - Group By Operator [GBY_386] (rows=19 width=115) + Group By Operator [GBY_371] (rows=19 width=115) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 <-Reducer 10 [SIMPLE_EDGE] SHUFFLE [RS_109] @@ -254,13 +251,13 @@ Stage-0 Select Operator [SEL_100] (rows=788222 width=110) Output:["_col2","_col4"] Merge Join Operator [MERGEJOIN_301] (rows=788222 width=110) - Conds:RS_97._col2=RS_348._col0(Inner),Output:["_col1","_col3"] + Conds:RS_97._col2=RS_349._col0(Inner),Output:["_col1","_col3"] <-Map 25 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_348] + SHUFFLE [RS_349] PartitionCols:_col0 - Select Operator [SEL_343] (rows=8000000 width=4) + Select Operator [SEL_346] (rows=8000000 width=4) Output:["_col0"] - Filter Operator [FIL_342] (rows=8000000 width=112) + Filter Operator [FIL_345] (rows=8000000 width=112) predicate:(ca_gmt_offset = -6) TableScan [TS_16] (rows=40000000 width=112) default@customer_address,customer_address,Tbl:COMPLETE,Col:COMPLETE,Output:["ca_address_sk","ca_gmt_offset"] @@ -268,7 +265,7 @@ Stage-0 SHUFFLE [RS_97] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_300] (rows=3941109 width=118) - Conds:RS_385._col0=RS_332._col0(Inner),Output:["_col1","_col2","_col3"] + Conds:RS_370._col0=RS_332._col0(Inner),Output:["_col1","_col2","_col3"] <-Map 17 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_332] PartitionCols:_col0 @@ -278,18 +275,18 @@ Stage-0 predicate:((d_moy = 3) and (d_year = 1999)) TableScan [TS_13] (rows=73049 width=12) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] - <-Map 30 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_385] + <-Map 27 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_370] PartitionCols:_col0 - Select Operator [SEL_384] (rows=143931246 width=123) + Select Operator [SEL_369] (rows=143931246 width=123) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_383] (rows=143931246 width=123) - predicate:((ws_bill_addr_sk BETWEEN DynamicValue(RS_98_customer_address_ca_address_sk_min) AND DynamicValue(RS_98_customer_address_ca_address_sk_max) and in_bloom_filter(ws_bill_addr_sk, DynamicValue(RS_98_customer_address_ca_address_sk_bloom_filter))) and (ws_sold_date_sk BETWEEN DynamicValue(RS_95_date_dim_d_date_sk_min) AND DynamicValue(RS_95_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_95_date_dim_d_date_sk_bloom_filter))) and ws_bill_addr_sk is not null and ws_sold_date_sk is not null) + Filter Operator [FIL_368] (rows=143931246 width=123) + predicate:((ws_sold_date_sk BETWEEN DynamicValue(RS_95_date_dim_d_date_sk_min) AND DynamicValue(RS_95_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_95_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_85] (rows=144002668 width=123) default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_item_sk","ws_bill_addr_sk","ws_ext_sales_price"] <-Reducer 24 [BROADCAST_EDGE] vectorized - BROADCAST [RS_380] - Group By Operator [GBY_379] (rows=1 width=12) + BROADCAST [RS_367] + Group By Operator [GBY_366] (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_339] @@ -298,23 +295,12 @@ Stage-0 Select Operator [SEL_333] (rows=50 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_327] - <-Reducer 28 [BROADCAST_EDGE] vectorized - BROADCAST [RS_382] - Group By Operator [GBY_381] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=8000000)"] - <-Map 25 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_355] - Group By Operator [GBY_352] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=8000000)"] - Select Operator [SEL_349] (rows=8000000 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_343] <-Reducer 4 [CONTAINS] vectorized - Reduce Output Operator [RS_363] + Reduce Output Operator [RS_352] PartitionCols:_col0 - Group By Operator [GBY_362] (rows=59 width=115) + Group By Operator [GBY_351] (rows=59 width=115) Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0 - Group By Operator [GBY_361] (rows=64 width=115) + Group By Operator [GBY_350] (rows=64 width=115) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_34] @@ -333,27 +319,27 @@ Stage-0 Select Operator [SEL_25] (rows=2876890 width=4) Output:["_col2","_col4"] Merge Join Operator [MERGEJOIN_295] (rows=2876890 width=4) - Conds:RS_22._col2=RS_344._col0(Inner),Output:["_col1","_col3"] + Conds:RS_22._col2=RS_347._col0(Inner),Output:["_col1","_col3"] <-Map 25 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_344] + SHUFFLE [RS_347] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_343] + Please refer to the previous Select Operator [SEL_346] <-Reducer 15 [SIMPLE_EDGE] SHUFFLE [RS_22] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_294] (rows=14384447 width=4) - Conds:RS_360._col0=RS_328._col0(Inner),Output:["_col1","_col2","_col3"] + Conds:RS_344._col0=RS_328._col0(Inner),Output:["_col1","_col2","_col3"] <-Map 17 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_328] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_327] <-Map 14 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_360] + SHUFFLE [RS_344] PartitionCols:_col0 - Select Operator [SEL_359] (rows=525327191 width=118) + Select Operator [SEL_343] (rows=525327191 width=118) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_358] (rows=525327191 width=118) - predicate:((ss_addr_sk BETWEEN DynamicValue(RS_23_customer_address_ca_address_sk_min) AND DynamicValue(RS_23_customer_address_ca_address_sk_max) and in_bloom_filter(ss_addr_sk, DynamicValue(RS_23_customer_address_ca_address_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_20_date_dim_d_date_sk_min) AND DynamicValue(RS_20_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_20_date_dim_d_date_sk_bloom_filter))) and ss_addr_sk is not null and ss_sold_date_sk is not null) + Filter Operator [FIL_342] (rows=525327191 width=118) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_20_date_dim_d_date_sk_min) AND DynamicValue(RS_20_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_20_date_dim_d_date_sk_bloom_filter))) and ss_addr_sk is not null and ss_sold_date_sk is not null) TableScan [TS_10] (rows=575995635 width=118) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_addr_sk","ss_ext_sales_price"] <-Reducer 18 [BROADCAST_EDGE] vectorized @@ -367,23 +353,12 @@ Stage-0 Select Operator [SEL_329] (rows=50 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_327] - <-Reducer 26 [BROADCAST_EDGE] vectorized - BROADCAST [RS_357] - Group By Operator [GBY_356] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=8000000)"] - <-Map 25 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_353] - Group By Operator [GBY_350] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=8000000)"] - Select Operator [SEL_345] (rows=8000000 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_343] <-Reducer 9 [CONTAINS] vectorized - Reduce Output Operator [RS_378] + Reduce Output Operator [RS_365] PartitionCols:_col0 - Group By Operator [GBY_377] (rows=59 width=115) + Group By Operator [GBY_364] (rows=59 width=115) Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0 - Group By Operator [GBY_376] (rows=35 width=115) + Group By Operator [GBY_363] (rows=35 width=115) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 <-Reducer 8 [SIMPLE_EDGE] SHUFFLE [RS_71] @@ -402,32 +377,32 @@ Stage-0 Select Operator [SEL_62] (rows=1550375 width=13) Output:["_col3","_col4"] Merge Join Operator [MERGEJOIN_298] (rows=1550375 width=13) - Conds:RS_59._col1=RS_346._col0(Inner),Output:["_col2","_col3"] + Conds:RS_59._col1=RS_348._col0(Inner),Output:["_col2","_col3"] <-Map 25 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_346] + SHUFFLE [RS_348] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_343] + Please refer to the previous Select Operator [SEL_346] <-Reducer 19 [SIMPLE_EDGE] SHUFFLE [RS_59] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_297] (rows=7751872 width=98) - Conds:RS_375._col0=RS_330._col0(Inner),Output:["_col1","_col2","_col3"] + Conds:RS_362._col0=RS_330._col0(Inner),Output:["_col1","_col2","_col3"] <-Map 17 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_330] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_327] - <-Map 29 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_375] + <-Map 26 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_362] PartitionCols:_col0 - Select Operator [SEL_374] (rows=285117733 width=123) + Select Operator [SEL_361] (rows=285117733 width=123) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_373] (rows=285117733 width=123) - predicate:((cs_bill_addr_sk BETWEEN DynamicValue(RS_60_customer_address_ca_address_sk_min) AND DynamicValue(RS_60_customer_address_ca_address_sk_max) and in_bloom_filter(cs_bill_addr_sk, DynamicValue(RS_60_customer_address_ca_address_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_57_date_dim_d_date_sk_min) AND DynamicValue(RS_57_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_57_date_dim_d_date_sk_bloom_filter))) and cs_bill_addr_sk is not null and cs_sold_date_sk is not null) + Filter Operator [FIL_360] (rows=285117733 width=123) + predicate:((cs_sold_date_sk BETWEEN DynamicValue(RS_57_date_dim_d_date_sk_min) AND DynamicValue(RS_57_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_57_date_dim_d_date_sk_bloom_filter))) and cs_bill_addr_sk is not null and cs_sold_date_sk is not null) TableScan [TS_47] (rows=287989836 width=123) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_bill_addr_sk","cs_item_sk","cs_ext_sales_price"] <-Reducer 21 [BROADCAST_EDGE] vectorized - BROADCAST [RS_370] - Group By Operator [GBY_369] (rows=1 width=12) + BROADCAST [RS_359] + Group By Operator [GBY_358] (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_338] @@ -436,15 +411,4 @@ Stage-0 Select Operator [SEL_331] (rows=50 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_327] - <-Reducer 27 [BROADCAST_EDGE] vectorized - BROADCAST [RS_372] - Group By Operator [GBY_371] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=8000000)"] - <-Map 25 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_354] - Group By Operator [GBY_351] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=8000000)"] - Select Operator [SEL_347] (rows=8000000 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_343] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query34.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query34.q.out index f4e6a73942..3bc8a3083b 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query34.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query34.q.out @@ -73,15 +73,13 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 4 <- Reducer 10 (BROADCAST_EDGE), Reducer 12 (BROADCAST_EDGE), Reducer 14 (BROADCAST_EDGE) +Map 4 <- Reducer 10 (BROADCAST_EDGE) Reducer 10 <- Map 9 (CUSTOM_SIMPLE_EDGE) -Reducer 12 <- Map 11 (CUSTOM_SIMPLE_EDGE) -Reducer 14 <- Map 13 (CUSTOM_SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (SIMPLE_EDGE) Reducer 5 <- Map 4 (SIMPLE_EDGE), Map 9 (SIMPLE_EDGE) Reducer 6 <- Map 11 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) -Reducer 7 <- Map 13 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) +Reducer 7 <- Map 12 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) Reducer 8 <- Reducer 7 (SIMPLE_EDGE) Stage-0 @@ -89,15 +87,15 @@ Stage-0 limit:-1 Stage-1 Reducer 3 vectorized - File Output Operator [FS_134] - Select Operator [SEL_133] (rows=276068 width=364) + File Output Operator [FS_124] + Select Operator [SEL_123] (rows=276068 width=364) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_34] Select Operator [SEL_33] (rows=276068 width=364) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] Merge Join Operator [MERGEJOIN_99] (rows=276068 width=364) - Conds:RS_101._col0=RS_132._col1(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col7"] + Conds:RS_101._col0=RS_122._col1(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col7"] <-Map 1 [SIMPLE_EDGE] vectorized SHUFFLE [RS_101] PartitionCols:_col0 @@ -106,13 +104,13 @@ Stage-0 TableScan [TS_0] (rows=80000000 width=356) default@customer,customer,Tbl:COMPLETE,Col:COMPLETE,Output:["c_customer_sk","c_salutation","c_first_name","c_last_name","c_preferred_cust_flag"] <-Reducer 8 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_132] + SHUFFLE [RS_122] PartitionCols:_col1 - Filter Operator [FIL_131] (rows=276068 width=12) + Filter Operator [FIL_121] (rows=276068 width=12) predicate:_col2 BETWEEN 15 AND 20 - Select Operator [SEL_130] (rows=5521356 width=12) + Select Operator [SEL_120] (rows=5521356 width=12) Output:["_col0","_col1","_col2"] - Group By Operator [GBY_129] (rows=5521356 width=12) + Group By Operator [GBY_119] (rows=5521356 width=12) Output:["_col0","_col1","_col2"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1 <-Reducer 7 [SIMPLE_EDGE] SHUFFLE [RS_25] @@ -120,13 +118,13 @@ Stage-0 Group By Operator [GBY_24] (rows=5521356 width=12) Output:["_col0","_col1","_col2"],aggregations:["count()"],keys:_col1, _col4 Merge Join Operator [MERGEJOIN_98] (rows=5521356 width=4) - Conds:RS_20._col3=RS_120._col0(Inner),Output:["_col1","_col4"] - <-Map 13 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_120] + Conds:RS_20._col3=RS_118._col0(Inner),Output:["_col1","_col4"] + <-Map 12 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_118] PartitionCols:_col0 - Select Operator [SEL_119] (rows=112 width=4) + Select Operator [SEL_117] (rows=112 width=4) Output:["_col0"] - Filter Operator [FIL_118] (rows=112 width=102) + Filter Operator [FIL_116] (rows=112 width=102) predicate:(s_county) IN ('Mobile County', 'Maverick County', 'Huron County', 'Kittitas County', 'Fairfield County', 'Jackson County', 'Barrow County', 'Pennington County') TableScan [TS_11] (rows=1704 width=102) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_county"] @@ -134,13 +132,13 @@ Stage-0 SHUFFLE [RS_20] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_97] (rows=10407948 width=4) - Conds:RS_17._col2=RS_112._col0(Inner),Output:["_col1","_col3","_col4"] + Conds:RS_17._col2=RS_115._col0(Inner),Output:["_col1","_col3","_col4"] <-Map 11 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_112] + SHUFFLE [RS_115] PartitionCols:_col0 - Select Operator [SEL_111] (rows=480 width=4) + Select Operator [SEL_114] (rows=480 width=4) Output:["_col0"] - Filter Operator [FIL_110] (rows=480 width=104) + Filter Operator [FIL_113] (rows=480 width=104) predicate:((hd_buy_potential) IN ('>10000', 'unknown') and (hd_vehicle_count > 0) and CASE WHEN ((hd_vehicle_count > 0)) THEN (((UDFToDouble(hd_dep_count) / UDFToDouble(hd_vehicle_count)) > 1.2D)) ELSE (null) END) TableScan [TS_8] (rows=7200 width=104) default@household_demographics,household_demographics,Tbl:COMPLETE,Col:COMPLETE,Output:["hd_demo_sk","hd_buy_potential","hd_dep_count","hd_vehicle_count"] @@ -148,7 +146,7 @@ Stage-0 SHUFFLE [RS_17] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_96] (rows=156119211 width=14) - Conds:RS_128._col0=RS_104._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + Conds:RS_112._col0=RS_104._col0(Inner),Output:["_col1","_col2","_col3","_col4"] <-Map 9 [SIMPLE_EDGE] vectorized SHUFFLE [RS_104] PartitionCols:_col0 @@ -159,12 +157,12 @@ Stage-0 TableScan [TS_5] (rows=73049 width=12) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_dom"] <-Map 4 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_128] + SHUFFLE [RS_112] PartitionCols:_col0 - Select Operator [SEL_127] (rows=479121995 width=19) + Select Operator [SEL_111] (rows=479121995 width=19) Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_126] (rows=479121995 width=19) - predicate:((ss_hdemo_sk BETWEEN DynamicValue(RS_18_household_demographics_hd_demo_sk_min) AND DynamicValue(RS_18_household_demographics_hd_demo_sk_max) and in_bloom_filter(ss_hdemo_sk, DynamicValue(RS_18_household_demographics_hd_demo_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_15_date_dim_d_date_sk_min) AND DynamicValue(RS_15_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_15_date_dim_d_date_sk_bloom_filter))) and (ss_store_sk BETWEEN DynamicValue(RS_21_store_s_store_sk_min) AND DynamicValue(RS_21_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_21_store_s_store_sk_bloom_filter))) and ss_customer_sk is not null and ss_hdemo_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_110] (rows=479121995 width=19) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_15_date_dim_d_date_sk_min) AND DynamicValue(RS_15_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_15_date_dim_d_date_sk_bloom_filter))) and ss_customer_sk is not null and ss_hdemo_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) TableScan [TS_2] (rows=575995635 width=19) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_customer_sk","ss_hdemo_sk","ss_store_sk","ss_ticket_number"] <-Reducer 10 [BROADCAST_EDGE] vectorized @@ -178,26 +176,4 @@ Stage-0 Select Operator [SEL_105] (rows=595 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_103] - <-Reducer 12 [BROADCAST_EDGE] vectorized - BROADCAST [RS_117] - Group By Operator [GBY_116] (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 - SHUFFLE [RS_115] - Group By Operator [GBY_114] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_113] (rows=480 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_111] - <-Reducer 14 [BROADCAST_EDGE] vectorized - BROADCAST [RS_125] - Group By Operator [GBY_124] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 13 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_123] - Group By Operator [GBY_122] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_121] (rows=112 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_119] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query35.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query35.q.out index 2501199e89..036b5953d7 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query35.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query35.q.out @@ -130,22 +130,20 @@ Plan optimized by CBO. Vertex dependency in root stage Map 13 <- Reducer 16 (BROADCAST_EDGE) -Map 23 <- Reducer 10 (BROADCAST_EDGE), Reducer 19 (BROADCAST_EDGE) -Map 24 <- Reducer 22 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) +Map 21 <- Reducer 10 (BROADCAST_EDGE) +Map 22 <- Reducer 9 (BROADCAST_EDGE) Reducer 10 <- Reducer 4 (CUSTOM_SIMPLE_EDGE) Reducer 14 <- Map 13 (SIMPLE_EDGE), Map 15 (SIMPLE_EDGE) Reducer 16 <- Map 15 (CUSTOM_SIMPLE_EDGE) -Reducer 17 <- Map 15 (SIMPLE_EDGE), Map 23 (SIMPLE_EDGE) +Reducer 17 <- Map 15 (SIMPLE_EDGE), Map 21 (SIMPLE_EDGE) Reducer 18 <- Reducer 17 (SIMPLE_EDGE) -Reducer 19 <- Map 15 (CUSTOM_SIMPLE_EDGE) +Reducer 19 <- Map 15 (SIMPLE_EDGE), Map 22 (SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 11 (SIMPLE_EDGE) -Reducer 20 <- Map 15 (SIMPLE_EDGE), Map 24 (SIMPLE_EDGE) -Reducer 21 <- Reducer 20 (SIMPLE_EDGE) -Reducer 22 <- Map 15 (CUSTOM_SIMPLE_EDGE) +Reducer 20 <- Reducer 19 (SIMPLE_EDGE) Reducer 3 <- Map 12 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 14 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 18 (ONE_TO_ONE_EDGE), Reducer 4 (ONE_TO_ONE_EDGE) -Reducer 6 <- Reducer 21 (ONE_TO_ONE_EDGE), Reducer 5 (ONE_TO_ONE_EDGE) +Reducer 6 <- Reducer 20 (ONE_TO_ONE_EDGE), Reducer 5 (ONE_TO_ONE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) Reducer 8 <- Reducer 7 (SIMPLE_EDGE) Reducer 9 <- Reducer 5 (CUSTOM_SIMPLE_EDGE) @@ -155,16 +153,16 @@ Stage-0 limit:-1 Stage-1 Reducer 8 vectorized - File Output Operator [FS_232] - Limit [LIM_231] (rows=1 width=352) + File Output Operator [FS_222] + Limit [LIM_221] (rows=1 width=352) Number of rows:100 - Select Operator [SEL_230] (rows=1 width=352) + Select Operator [SEL_220] (rows=1 width=352) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16"] <-Reducer 7 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_229] - Select Operator [SEL_228] (rows=1 width=352) + SHUFFLE [RS_219] + Select Operator [SEL_218] (rows=1 width=352) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col9","_col10","_col11","_col12","_col14","_col15","_col16","_col17"] - Group By Operator [GBY_227] (rows=1 width=336) + Group By Operator [GBY_217] (rows=1 width=336) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15"],aggregations:["count(VALUE._col0)","sum(VALUE._col1)","count(VALUE._col2)","max(VALUE._col3)","sum(VALUE._col4)","count(VALUE._col5)","max(VALUE._col6)","sum(VALUE._col7)","count(VALUE._col8)","max(VALUE._col9)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4, KEY._col5 <-Reducer 6 [SIMPLE_EDGE] SHUFFLE [RS_65] @@ -178,12 +176,12 @@ Stage-0 Filter Operator [FIL_62] (rows=67 width=276) predicate:(_col12 is not null or _col14 is not null) Merge Join Operator [MERGEJOIN_180] (rows=67 width=276) - Conds:RS_59._col0=RS_226._col0(Left Outer),Output:["_col4","_col6","_col7","_col8","_col9","_col10","_col12","_col14"] + Conds:RS_59._col0=RS_216._col0(Left Outer),Output:["_col4","_col6","_col7","_col8","_col9","_col10","_col12","_col14"] <-Reducer 5 [ONE_TO_ONE_EDGE] PARTITION_ONLY_SHUFFLE [RS_59] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_179] (rows=68 width=276) - Conds:RS_56._col0=RS_216._col0(Left Outer),Output:["_col0","_col4","_col6","_col7","_col8","_col9","_col10","_col12"] + Conds:RS_56._col0=RS_208._col0(Left Outer),Output:["_col0","_col4","_col6","_col7","_col8","_col9","_col10","_col12"] <-Reducer 4 [ONE_TO_ONE_EDGE] FORWARD [RS_56] PartitionCols:_col0 @@ -197,9 +195,9 @@ Stage-0 Select Operator [SEL_16] (rows=62428523 width=2) Output:["_col0"] Merge Join Operator [MERGEJOIN_175] (rows=62428523 width=2) - Conds:RS_206._col0=RS_190._col0(Inner),Output:["_col1"] + Conds:RS_200._col0=RS_190._col0(Inner),Output:["_col1"] <-Map 15 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_190] + SHUFFLE [RS_190] PartitionCols:_col0 Select Operator [SEL_189] (rows=217 width=4) Output:["_col0"] @@ -208,21 +206,21 @@ Stage-0 TableScan [TS_10] (rows=73049 width=12) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_qoy"] <-Map 13 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_206] + SHUFFLE [RS_200] PartitionCols:_col0 - Select Operator [SEL_205] (rows=525327388 width=7) + Select Operator [SEL_199] (rows=525327388 width=7) Output:["_col0","_col1"] - Filter Operator [FIL_204] (rows=525327388 width=7) + Filter Operator [FIL_198] (rows=525327388 width=7) predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_14_date_dim_d_date_sk_min) AND DynamicValue(RS_14_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_14_date_dim_d_date_sk_bloom_filter))) and ss_customer_sk is not null and ss_sold_date_sk is not null) TableScan [TS_7] (rows=575995635 width=7) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_customer_sk"] <-Reducer 16 [BROADCAST_EDGE] vectorized - BROADCAST [RS_203] - Group By Operator [GBY_202] (rows=1 width=12) + 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 15 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_199] - Group By Operator [GBY_196] (rows=1 width=12) + SHUFFLE [RS_195] + Group By Operator [GBY_194] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] Select Operator [SEL_191] (rows=217 width=4) Output:["_col0"] @@ -261,11 +259,11 @@ Stage-0 TableScan [TS_3] (rows=40000000 width=90) default@customer_address,ca,Tbl:COMPLETE,Col:COMPLETE,Output:["ca_address_sk","ca_state"] <-Reducer 18 [ONE_TO_ONE_EDGE] vectorized - FORWARD [RS_216] + FORWARD [RS_208] PartitionCols:_col0 - Select Operator [SEL_215] (rows=168231 width=7) + Select Operator [SEL_207] (rows=168231 width=7) Output:["_col0","_col1"] - Group By Operator [GBY_214] (rows=168231 width=3) + Group By Operator [GBY_206] (rows=168231 width=3) Output:["_col0"],keys:KEY._col0 <-Reducer 17 [SIMPLE_EDGE] SHUFFLE [RS_28] @@ -273,23 +271,23 @@ Stage-0 Group By Operator [GBY_27] (rows=168231 width=3) Output:["_col0"],keys:_col1 Merge Join Operator [MERGEJOIN_176] (rows=17104380 width=3) - Conds:RS_213._col0=RS_192._col0(Inner),Output:["_col1"] + Conds:RS_205._col0=RS_192._col0(Inner),Output:["_col1"] <-Map 15 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_192] + SHUFFLE [RS_192] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_189] - <-Map 23 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_213] + <-Map 21 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_205] PartitionCols:_col0 - Select Operator [SEL_212] (rows=143930993 width=7) + Select Operator [SEL_204] (rows=143930993 width=7) Output:["_col0","_col1"] - Filter Operator [FIL_211] (rows=143930993 width=7) - predicate:((ws_bill_customer_sk BETWEEN DynamicValue(RS_56_c_c_customer_sk_min) AND DynamicValue(RS_56_c_c_customer_sk_max) and in_bloom_filter(ws_bill_customer_sk, DynamicValue(RS_56_c_c_customer_sk_bloom_filter))) and (ws_sold_date_sk BETWEEN DynamicValue(RS_24_date_dim_d_date_sk_min) AND DynamicValue(RS_24_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_24_date_dim_d_date_sk_bloom_filter))) and ws_bill_customer_sk is not null and ws_sold_date_sk is not null) + Filter Operator [FIL_203] (rows=143930993 width=7) + predicate:((ws_bill_customer_sk BETWEEN DynamicValue(RS_56_c_c_customer_sk_min) AND DynamicValue(RS_56_c_c_customer_sk_max) and in_bloom_filter(ws_bill_customer_sk, DynamicValue(RS_56_c_c_customer_sk_bloom_filter))) and ws_bill_customer_sk is not null and ws_sold_date_sk is not null) TableScan [TS_17] (rows=144002668 width=7) default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_bill_customer_sk"] <-Reducer 10 [BROADCAST_EDGE] vectorized - BROADCAST [RS_210] - Group By Operator [GBY_209] (rows=1 width=12) + 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)"] <-Reducer 4 [CUSTOM_SIMPLE_EDGE] FORWARD [RS_150] @@ -298,58 +296,36 @@ Stage-0 Select Operator [SEL_148] (rows=162346 width=4) Output:["_col0"] Please refer to the previous Merge Join Operator [MERGEJOIN_178] - <-Reducer 19 [BROADCAST_EDGE] vectorized - BROADCAST [RS_208] - Group By Operator [GBY_207] (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 - PARTITION_ONLY_SHUFFLE [RS_200] - Group By Operator [GBY_197] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_193] (rows=217 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_189] - <-Reducer 21 [ONE_TO_ONE_EDGE] vectorized - FORWARD [RS_226] + <-Reducer 20 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_216] PartitionCols:_col0 - Select Operator [SEL_225] (rows=167041 width=7) + Select Operator [SEL_215] (rows=167041 width=7) Output:["_col0","_col1"] - Group By Operator [GBY_224] (rows=167041 width=3) + Group By Operator [GBY_214] (rows=167041 width=3) Output:["_col0"],keys:KEY._col0 - <-Reducer 20 [SIMPLE_EDGE] + <-Reducer 19 [SIMPLE_EDGE] SHUFFLE [RS_42] PartitionCols:_col0 Group By Operator [GBY_41] (rows=167041 width=3) Output:["_col0"],keys:_col1 Merge Join Operator [MERGEJOIN_177] (rows=33642830 width=3) - Conds:RS_223._col0=RS_194._col0(Inner),Output:["_col1"] + Conds:RS_213._col0=RS_193._col0(Inner),Output:["_col1"] <-Map 15 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_194] + SHUFFLE [RS_193] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_189] - <-Map 24 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_223] + <-Map 22 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_213] PartitionCols:_col0 - Select Operator [SEL_222] (rows=285115246 width=7) + Select Operator [SEL_212] (rows=285115246 width=7) Output:["_col0","_col1"] - Filter Operator [FIL_221] (rows=285115246 width=7) - predicate:((cs_ship_customer_sk BETWEEN DynamicValue(RS_59_c_c_customer_sk_min) AND DynamicValue(RS_59_c_c_customer_sk_max) and in_bloom_filter(cs_ship_customer_sk, DynamicValue(RS_59_c_c_customer_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_38_date_dim_d_date_sk_min) AND DynamicValue(RS_38_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_38_date_dim_d_date_sk_bloom_filter))) and cs_ship_customer_sk is not null and cs_sold_date_sk is not null) + Filter Operator [FIL_211] (rows=285115246 width=7) + predicate:((cs_ship_customer_sk BETWEEN DynamicValue(RS_59_c_c_customer_sk_min) AND DynamicValue(RS_59_c_c_customer_sk_max) and in_bloom_filter(cs_ship_customer_sk, DynamicValue(RS_59_c_c_customer_sk_bloom_filter))) and cs_ship_customer_sk is not null and cs_sold_date_sk is not null) TableScan [TS_31] (rows=287989836 width=7) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_ship_customer_sk"] - <-Reducer 22 [BROADCAST_EDGE] vectorized - BROADCAST [RS_218] - Group By Operator [GBY_217] (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 - PARTITION_ONLY_SHUFFLE [RS_201] - Group By Operator [GBY_198] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_195] (rows=217 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_189] <-Reducer 9 [BROADCAST_EDGE] vectorized - BROADCAST [RS_220] - Group By Operator [GBY_219] (rows=1 width=12) + BROADCAST [RS_210] + Group By Operator [GBY_209] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Reducer 5 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_165] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query36.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query36.q.out index f2c0b4b0ee..8158608354 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query36.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query36.q.out @@ -69,11 +69,10 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 11 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) -Reducer 11 <- Map 10 (CUSTOM_SIMPLE_EDGE) +Map 1 <- Reducer 9 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) Reducer 3 <- Map 10 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 12 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 4 <- Map 11 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) @@ -84,25 +83,25 @@ Stage-0 limit:-1 Stage-1 Reducer 7 vectorized - File Output Operator [FS_112] - Limit [LIM_111] (rows=100 width=490) + File Output Operator [FS_107] + Limit [LIM_106] (rows=100 width=490) Number of rows:100 - Select Operator [SEL_110] (rows=3060 width=490) + Select Operator [SEL_105] (rows=3060 width=490) Output:["_col0","_col1","_col2","_col3","_col4"] <-Reducer 6 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_109] - Select Operator [SEL_108] (rows=3060 width=490) + SHUFFLE [RS_104] + Select Operator [SEL_103] (rows=3060 width=490) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] - PTF Operator [PTF_107] (rows=3060 width=414) + PTF Operator [PTF_102] (rows=3060 width=414) Function definitions:[{},{"name:":"windowingtablefunction","order by:":"(_col2 / _col3) ASC NULLS FIRST","partition by:":"(grouping(_col4, 1) + grouping(_col4, 0)), CASE WHEN ((grouping(_col4, 0) = 0)) THEN (_col0) ELSE (CAST( null AS STRING)) END"}] - Select Operator [SEL_106] (rows=3060 width=414) + Select Operator [SEL_101] (rows=3060 width=414) Output:["_col0","_col1","_col2","_col3","_col4"] <-Reducer 5 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_105] + SHUFFLE [RS_100] PartitionCols:(grouping(_col4, 1) + grouping(_col4, 0)), CASE WHEN ((grouping(_col4, 0) = 0)) THEN (_col0) ELSE (CAST( null AS STRING)) END - Select Operator [SEL_104] (rows=3060 width=414) + Select Operator [SEL_99] (rows=3060 width=414) Output:["_col0","_col1","_col2","_col3","_col4"] - Group By Operator [GBY_103] (rows=3060 width=414) + Group By Operator [GBY_98] (rows=3060 width=414) Output:["_col0","_col1","_col2","_col3","_col4"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)"],keys:KEY._col0, KEY._col1, KEY._col2 <-Reducer 4 [SIMPLE_EDGE] SHUFFLE [RS_23] @@ -112,11 +111,11 @@ Stage-0 Select Operator [SEL_20] (rows=30601888 width=232) Output:["_col0","_col1","_col2","_col3"] Merge Join Operator [MERGEJOIN_81] (rows=30601888 width=232) - Conds:RS_17._col1=RS_102._col0(Inner),Output:["_col3","_col4","_col8","_col9"] - <-Map 12 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_102] + Conds:RS_17._col1=RS_97._col0(Inner),Output:["_col3","_col4","_col8","_col9"] + <-Map 11 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_97] PartitionCols:_col0 - Select Operator [SEL_101] (rows=462000 width=186) + Select Operator [SEL_96] (rows=462000 width=186) Output:["_col0","_col1","_col2"] TableScan [TS_9] (rows=462000 width=186) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_class","i_category"] @@ -124,13 +123,13 @@ Stage-0 SHUFFLE [RS_17] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_80] (rows=30601888 width=54) - Conds:RS_14._col2=RS_92._col0(Inner),Output:["_col1","_col3","_col4"] + Conds:RS_14._col2=RS_95._col0(Inner),Output:["_col1","_col3","_col4"] <-Map 10 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_92] + SHUFFLE [RS_95] PartitionCols:_col0 - Select Operator [SEL_91] (rows=278 width=4) + Select Operator [SEL_94] (rows=278 width=4) Output:["_col0"] - Filter Operator [FIL_90] (rows=278 width=90) + Filter Operator [FIL_93] (rows=278 width=90) predicate:(s_state) IN ('SD', 'FL', 'MI', 'LA', 'MO', 'SC', 'AL', 'GA') TableScan [TS_6] (rows=1704 width=90) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_state"] @@ -138,7 +137,7 @@ Stage-0 SHUFFLE [RS_14] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_79] (rows=187574154 width=203) - Conds:RS_100._col0=RS_84._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + Conds:RS_92._col0=RS_84._col0(Inner),Output:["_col1","_col2","_col3","_col4"] <-Map 8 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_84] PartitionCols:_col0 @@ -149,25 +148,14 @@ Stage-0 TableScan [TS_3] (rows=73049 width=8) default@date_dim,d1,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_100] + SHUFFLE [RS_92] PartitionCols:_col0 - Select Operator [SEL_99] (rows=525329897 width=225) + Select Operator [SEL_91] (rows=525329897 width=225) Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_98] (rows=525329897 width=225) - predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_12_d1_d_date_sk_min) AND DynamicValue(RS_12_d1_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_12_d1_d_date_sk_bloom_filter))) and (ss_store_sk BETWEEN DynamicValue(RS_15_store_s_store_sk_min) AND DynamicValue(RS_15_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_15_store_s_store_sk_bloom_filter))) and ss_sold_date_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_90] (rows=525329897 width=225) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_12_d1_d_date_sk_min) AND DynamicValue(RS_12_d1_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_12_d1_d_date_sk_bloom_filter))) and ss_sold_date_sk is not null and ss_store_sk is not null) TableScan [TS_0] (rows=575995635 width=225) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_store_sk","ss_ext_sales_price","ss_net_profit"] - <-Reducer 11 [BROADCAST_EDGE] vectorized - BROADCAST [RS_97] - Group By Operator [GBY_96] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 10 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_95] - Group By Operator [GBY_94] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_93] (rows=278 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_91] <-Reducer 9 [BROADCAST_EDGE] vectorized BROADCAST [RS_89] Group By Operator [GBY_88] (rows=1 width=12) diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query37.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query37.q.out index fb4cbf4e98..9ecd2bd756 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query37.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query37.q.out @@ -43,28 +43,27 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 10 (BROADCAST_EDGE), Reducer 7 (BROADCAST_EDGE) -Reducer 10 <- Reducer 9 (CUSTOM_SIMPLE_EDGE) +Map 1 <- Reducer 7 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (ONE_TO_ONE_EDGE), Reducer 9 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) Reducer 7 <- Map 6 (CUSTOM_SIMPLE_EDGE) -Reducer 9 <- Map 11 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) +Reducer 9 <- Map 10 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) Stage-0 Fetch Operator limit:100 Stage-1 Reducer 5 vectorized - File Output Operator [FS_102] - Limit [LIM_101] (rows=1 width=396) + File Output Operator [FS_100] + Limit [LIM_99] (rows=1 width=396) Number of rows:100 - Select Operator [SEL_100] (rows=1 width=396) + Select Operator [SEL_98] (rows=1 width=396) Output:["_col0","_col1","_col2"] <-Reducer 4 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_99] - Group By Operator [GBY_98] (rows=1 width=396) + SHUFFLE [RS_97] + Group By Operator [GBY_96] (rows=1 width=396) Output:["_col0","_col1","_col2"],keys:KEY._col0, KEY._col1, KEY._col2 <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_23] @@ -75,34 +74,11 @@ Stage-0 keys:_col2, _col3, _col4,sort order:+++,top n:100 Merge Join Operator [MERGEJOIN_78] (rows=2871 width=396) Conds:RS_18._col1=RS_19._col1(Inner),Output:["_col2","_col3","_col4"] - <-Reducer 9 [SIMPLE_EDGE] - SHUFFLE [RS_19] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_77] (rows=463969 width=4) - Conds:RS_89._col0=RS_92._col0(Inner),Output:["_col1"] - <-Map 11 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_92] - PartitionCols:_col0 - Select Operator [SEL_91] (rows=8116 width=4) - Output:["_col0"] - Filter Operator [FIL_90] (rows=8116 width=98) - predicate:CAST( d_date AS TIMESTAMP) BETWEEN TIMESTAMP'2001-06-02 00:00:00' AND TIMESTAMP'2001-08-01 00:00:00' - TableScan [TS_8] (rows=73049 width=98) - default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"] - <-Map 8 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_89] - PartitionCols:_col0 - Select Operator [SEL_88] (rows=4176000 width=8) - Output:["_col0","_col1"] - Filter Operator [FIL_87] (rows=4176000 width=11) - predicate:inv_quantity_on_hand BETWEEN 100 AND 500 - TableScan [TS_5] (rows=37584000 width=11) - default@inventory,inventory,Tbl:COMPLETE,Col:COMPLETE,Output:["inv_date_sk","inv_item_sk","inv_quantity_on_hand"] <-Reducer 2 [ONE_TO_ONE_EDGE] FORWARD [RS_18] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_76] (rows=1781971 width=400) - Conds:RS_97._col0=RS_81._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + Conds:RS_89._col0=RS_81._col0(Inner),Output:["_col1","_col2","_col3","_col4"] <-Map 6 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_81] PartitionCols:_col0 @@ -113,25 +89,14 @@ Stage-0 TableScan [TS_2] (rows=462000 width=403) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_item_id","i_item_desc","i_current_price","i_manufact_id"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_97] + SHUFFLE [RS_89] PartitionCols:_col0 - Select Operator [SEL_96] (rows=287989836 width=4) + Select Operator [SEL_88] (rows=287989836 width=4) Output:["_col0"] - Filter Operator [FIL_95] (rows=287989836 width=4) - predicate:((cs_item_sk BETWEEN DynamicValue(RS_16_item_i_item_sk_min) AND DynamicValue(RS_16_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_16_item_i_item_sk_bloom_filter))) and (cs_item_sk BETWEEN DynamicValue(RS_19_inventory_inv_item_sk_min) AND DynamicValue(RS_19_inventory_inv_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_19_inventory_inv_item_sk_bloom_filter)))) + Filter Operator [FIL_87] (rows=287989836 width=4) + predicate:(cs_item_sk BETWEEN DynamicValue(RS_16_item_i_item_sk_min) AND DynamicValue(RS_16_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_16_item_i_item_sk_bloom_filter))) TableScan [TS_0] (rows=287989836 width=4) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_item_sk"] - <-Reducer 10 [BROADCAST_EDGE] vectorized - BROADCAST [RS_94] - Group By Operator [GBY_93] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Reducer 9 [CUSTOM_SIMPLE_EDGE] - SHUFFLE [RS_50] - Group By Operator [GBY_49] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_48] (rows=463969 width=8) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_77] <-Reducer 7 [BROADCAST_EDGE] vectorized BROADCAST [RS_86] Group By Operator [GBY_85] (rows=1 width=12) @@ -143,4 +108,27 @@ Stage-0 Select Operator [SEL_82] (rows=297 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_80] + <-Reducer 9 [SIMPLE_EDGE] + SHUFFLE [RS_19] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_77] (rows=463969 width=4) + Conds:RS_92._col0=RS_95._col0(Inner),Output:["_col1"] + <-Map 10 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_95] + PartitionCols:_col0 + Select Operator [SEL_94] (rows=8116 width=4) + Output:["_col0"] + Filter Operator [FIL_93] (rows=8116 width=98) + predicate:CAST( d_date AS TIMESTAMP) BETWEEN TIMESTAMP'2001-06-02 00:00:00' AND TIMESTAMP'2001-08-01 00:00:00' + TableScan [TS_8] (rows=73049 width=98) + default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"] + <-Map 8 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_92] + PartitionCols:_col0 + Select Operator [SEL_91] (rows=4176000 width=8) + Output:["_col0","_col1"] + Filter Operator [FIL_90] (rows=4176000 width=11) + predicate:inv_quantity_on_hand BETWEEN 100 AND 500 + TableScan [TS_5] (rows=37584000 width=11) + default@inventory,inventory,Tbl:COMPLETE,Col:COMPLETE,Output:["inv_date_sk","inv_item_sk","inv_quantity_on_hand"] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query40.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query40.q.out index c05256fbd9..fceed07d6f 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query40.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query40.q.out @@ -67,13 +67,12 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 10 (BROADCAST_EDGE), Reducer 12 (BROADCAST_EDGE) -Reducer 10 <- Map 9 (CUSTOM_SIMPLE_EDGE) -Reducer 12 <- Map 11 (CUSTOM_SIMPLE_EDGE) +Map 1 <- Reducer 11 (BROADCAST_EDGE) +Reducer 11 <- Map 10 (CUSTOM_SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) Reducer 3 <- Map 9 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 11 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Map 13 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) +Reducer 4 <- Map 10 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 5 <- Map 12 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) @@ -82,14 +81,14 @@ Stage-0 limit:100 Stage-1 Reducer 7 vectorized - File Output Operator [FS_127] - Limit [LIM_126] (rows=100 width=410) + File Output Operator [FS_122] + Limit [LIM_121] (rows=100 width=410) Number of rows:100 - Select Operator [SEL_125] (rows=769995 width=410) + Select Operator [SEL_120] (rows=769995 width=410) Output:["_col0","_col1","_col2","_col3"] <-Reducer 6 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_124] - Group By Operator [GBY_123] (rows=769995 width=410) + SHUFFLE [RS_119] + Group By Operator [GBY_118] (rows=769995 width=410) Output:["_col0","_col1","_col2","_col3"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)"],keys:KEY._col0, KEY._col1 <-Reducer 5 [SIMPLE_EDGE] SHUFFLE [RS_28] @@ -101,11 +100,11 @@ Stage-0 Select Operator [SEL_25] (rows=5757278 width=278) Output:["_col0","_col1","_col2","_col3"] Merge Join Operator [MERGEJOIN_99] (rows=5757278 width=278) - Conds:RS_22._col1=RS_122._col0(Inner),Output:["_col4","_col7","_col9","_col10","_col12","_col14"] - <-Map 13 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_122] + Conds:RS_22._col1=RS_117._col0(Inner),Output:["_col4","_col7","_col9","_col10","_col12","_col14"] + <-Map 12 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_117] PartitionCols:_col0 - Select Operator [SEL_121] (rows=27 width=90) + Select Operator [SEL_116] (rows=27 width=90) Output:["_col0","_col1"] TableScan [TS_11] (rows=27 width=90) default@warehouse,warehouse,Tbl:COMPLETE,Col:COMPLETE,Output:["w_warehouse_sk","w_state"] @@ -113,13 +112,13 @@ Stage-0 SHUFFLE [RS_22] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_98] (rows=5757278 width=195) - Conds:RS_19._col2=RS_110._col0(Inner),Output:["_col1","_col4","_col7","_col9","_col10","_col12"] - <-Map 11 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_110] + Conds:RS_19._col2=RS_102._col0(Inner),Output:["_col1","_col4","_col7","_col9","_col10","_col12"] + <-Map 10 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_102] PartitionCols:_col0 - Select Operator [SEL_109] (rows=51333 width=104) + Select Operator [SEL_101] (rows=51333 width=104) Output:["_col0","_col1"] - Filter Operator [FIL_108] (rows=51333 width=215) + Filter Operator [FIL_100] (rows=51333 width=215) predicate:i_current_price BETWEEN 0.99 AND 1.49 TableScan [TS_8] (rows=462000 width=215) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_item_id","i_current_price"] @@ -127,13 +126,13 @@ Stage-0 SHUFFLE [RS_19] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_97] (rows=51815831 width=124) - Conds:RS_16._col0=RS_102._col0(Inner),Output:["_col1","_col2","_col4","_col7","_col9","_col10"] + Conds:RS_16._col0=RS_115._col0(Inner),Output:["_col1","_col2","_col4","_col7","_col9","_col10"] <-Map 9 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_102] + SHUFFLE [RS_115] PartitionCols:_col0 - Select Operator [SEL_101] (rows=8116 width=12) + Select Operator [SEL_114] (rows=8116 width=12) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_100] (rows=8116 width=98) + Filter Operator [FIL_113] (rows=8116 width=98) predicate:CAST( d_date AS TIMESTAMP) BETWEEN TIMESTAMP'1998-03-09 00:00:00' AND TIMESTAMP'1998-05-08 00:00:00' TableScan [TS_5] (rows=73049 width=98) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"] @@ -141,42 +140,31 @@ Stage-0 SHUFFLE [RS_16] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_96] (rows=466374405 width=167) - Conds:RS_118._col2, _col3=RS_120._col0, _col1(Left Outer),Output:["_col0","_col1","_col2","_col4","_col7"] + Conds:RS_110._col2, _col3=RS_112._col0, _col1(Left Outer),Output:["_col0","_col1","_col2","_col4","_col7"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_118] + SHUFFLE [RS_110] PartitionCols:_col2, _col3 - Select Operator [SEL_117] (rows=285115816 width=127) + Select Operator [SEL_109] (rows=285115816 width=127) Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_116] (rows=285115816 width=127) - predicate:((cs_item_sk BETWEEN DynamicValue(RS_20_item_i_item_sk_min) AND DynamicValue(RS_20_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_20_item_i_item_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_17_date_dim_d_date_sk_min) AND DynamicValue(RS_17_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_17_date_dim_d_date_sk_bloom_filter))) and cs_sold_date_sk is not null and cs_warehouse_sk is not null) + Filter Operator [FIL_108] (rows=285115816 width=127) + predicate:((cs_item_sk BETWEEN DynamicValue(RS_20_item_i_item_sk_min) AND DynamicValue(RS_20_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_20_item_i_item_sk_bloom_filter))) and cs_sold_date_sk is not null and cs_warehouse_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_warehouse_sk","cs_item_sk","cs_order_number","cs_sales_price"] - <-Reducer 10 [BROADCAST_EDGE] vectorized + <-Reducer 11 [BROADCAST_EDGE] vectorized BROADCAST [RS_107] Group By Operator [GBY_106] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 9 [CUSTOM_SIMPLE_EDGE] vectorized + <-Map 10 [CUSTOM_SIMPLE_EDGE] vectorized SHUFFLE [RS_105] Group By Operator [GBY_104] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_103] (rows=8116 width=4) + Select Operator [SEL_103] (rows=51333 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_101] - <-Reducer 12 [BROADCAST_EDGE] vectorized - BROADCAST [RS_115] - Group By Operator [GBY_114] (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 - SHUFFLE [RS_113] - Group By Operator [GBY_112] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_111] (rows=51333 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_109] <-Map 8 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_120] + SHUFFLE [RS_112] PartitionCols:_col0, _col1 - Select Operator [SEL_119] (rows=28798881 width=117) + Select Operator [SEL_111] (rows=28798881 width=117) Output:["_col0","_col1","_col2"] TableScan [TS_3] (rows=28798881 width=117) default@catalog_returns,catalog_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["cr_item_sk","cr_order_number","cr_refunded_cash"] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query42.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query42.q.out index 02b9f7c074..66fe357562 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query42.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query42.q.out @@ -51,29 +51,28 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 7 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) +Map 1 <- Reducer 7 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) Reducer 3 <- Map 8 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) Reducer 7 <- Map 6 (CUSTOM_SIMPLE_EDGE) -Reducer 9 <- Map 8 (CUSTOM_SIMPLE_EDGE) Stage-0 Fetch Operator limit:100 Stage-1 Reducer 5 vectorized - File Output Operator [FS_79] - Limit [LIM_78] (rows=100 width=210) + File Output Operator [FS_74] + Limit [LIM_73] (rows=100 width=210) Number of rows:100 - Select Operator [SEL_77] (rows=110 width=210) + Select Operator [SEL_72] (rows=110 width=210) Output:["_col0","_col1","_col2","_col3"] <-Reducer 4 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_76] - Select Operator [SEL_75] (rows=110 width=318) + SHUFFLE [RS_71] + Select Operator [SEL_70] (rows=110 width=318) Output:["_col0","_col1","_col3"] - Group By Operator [GBY_74] (rows=110 width=206) + Group By Operator [GBY_69] (rows=110 width=206) Output:["_col0","_col1","_col2"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0, KEY._col1 <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_17] @@ -81,13 +80,13 @@ Stage-0 Group By Operator [GBY_16] (rows=120 width=206) Output:["_col0","_col1","_col2"],aggregations:["sum(_col2)"],keys:_col5, _col6 Merge Join Operator [MERGEJOIN_54] (rows=2301098 width=94) - Conds:RS_12._col1=RS_65._col0(Inner),Output:["_col2","_col5","_col6"] + Conds:RS_12._col1=RS_68._col0(Inner),Output:["_col2","_col5","_col6"] <-Map 8 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_65] + SHUFFLE [RS_68] PartitionCols:_col0 - Select Operator [SEL_64] (rows=7333 width=97) + Select Operator [SEL_67] (rows=7333 width=97) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_63] (rows=7333 width=101) + Filter Operator [FIL_66] (rows=7333 width=101) predicate:(i_manager_id = 1) TableScan [TS_6] (rows=462000 width=101) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_category_id","i_category","i_manager_id"] @@ -95,7 +94,7 @@ Stage-0 SHUFFLE [RS_12] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_53] (rows=15062131 width=4) - Conds:RS_73._col0=RS_57._col0(Inner),Output:["_col1","_col2"] + Conds:RS_65._col0=RS_57._col0(Inner),Output:["_col1","_col2"] <-Map 6 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_57] PartitionCols:_col0 @@ -106,12 +105,12 @@ Stage-0 TableScan [TS_3] (rows=73049 width=12) default@date_dim,dt,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_73] + SHUFFLE [RS_65] PartitionCols:_col0 - Select Operator [SEL_72] (rows=550076554 width=114) + Select Operator [SEL_64] (rows=550076554 width=114) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_71] (rows=550076554 width=114) - predicate:((ss_item_sk BETWEEN DynamicValue(RS_13_item_i_item_sk_min) AND DynamicValue(RS_13_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_13_item_i_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_10_dt_d_date_sk_min) AND DynamicValue(RS_10_dt_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_10_dt_d_date_sk_bloom_filter))) and ss_sold_date_sk is not null) + Filter Operator [FIL_63] (rows=550076554 width=114) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_10_dt_d_date_sk_min) AND DynamicValue(RS_10_dt_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_10_dt_d_date_sk_bloom_filter))) 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_item_sk","ss_ext_sales_price"] <-Reducer 7 [BROADCAST_EDGE] vectorized @@ -125,15 +124,4 @@ Stage-0 Select Operator [SEL_58] (rows=50 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_56] - <-Reducer 9 [BROADCAST_EDGE] vectorized - BROADCAST [RS_70] - Group By Operator [GBY_69] (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_68] - Group By Operator [GBY_67] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_66] (rows=7333 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_64] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query43.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query43.q.out index 495b6bd626..d467fd6968 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query43.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query43.q.out @@ -45,27 +45,26 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 7 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) +Map 1 <- Reducer 7 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) Reducer 3 <- Map 8 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) Reducer 7 <- Map 6 (CUSTOM_SIMPLE_EDGE) -Reducer 9 <- Map 8 (CUSTOM_SIMPLE_EDGE) Stage-0 Fetch Operator limit:100 Stage-1 Reducer 5 vectorized - File Output Operator [FS_79] - Limit [LIM_78] (rows=100 width=972) + File Output Operator [FS_74] + Limit [LIM_73] (rows=100 width=972) Number of rows:100 - Select Operator [SEL_77] (rows=3751 width=972) + Select Operator [SEL_72] (rows=3751 width=972) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8"] <-Reducer 4 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_76] - Group By Operator [GBY_75] (rows=3751 width=972) + SHUFFLE [RS_71] + Group By Operator [GBY_70] (rows=3751 width=972) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)","sum(VALUE._col3)","sum(VALUE._col4)","sum(VALUE._col5)","sum(VALUE._col6)"],keys:KEY._col0, KEY._col1 <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_18] @@ -77,13 +76,13 @@ Stage-0 Select Operator [SEL_15] (rows=37536846 width=257) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8"] Merge Join Operator [MERGEJOIN_55] (rows=37536846 width=257) - Conds:RS_12._col1=RS_66._col0(Inner),Output:["_col2","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col12","_col13"] + Conds:RS_12._col1=RS_69._col0(Inner),Output:["_col2","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col12","_col13"] <-Map 8 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_66] + SHUFFLE [RS_69] PartitionCols:_col0 - Select Operator [SEL_65] (rows=341 width=192) + Select Operator [SEL_68] (rows=341 width=192) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_64] (rows=341 width=303) + Filter Operator [FIL_67] (rows=341 width=303) predicate:(s_gmt_offset = -6) TableScan [TS_6] (rows=1704 width=303) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_store_id","s_store_name","s_gmt_offset"] @@ -91,7 +90,7 @@ Stage-0 SHUFFLE [RS_12] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_54] (rows=187574154 width=129) - Conds:RS_74._col0=RS_58._col0(Inner),Output:["_col1","_col2","_col4","_col5","_col6","_col7","_col8","_col9","_col10"] + Conds:RS_66._col0=RS_58._col0(Inner),Output:["_col1","_col2","_col4","_col5","_col6","_col7","_col8","_col9","_col10"] <-Map 6 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_58] PartitionCols:_col0 @@ -102,12 +101,12 @@ Stage-0 TableScan [TS_3] (rows=73049 width=99) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_day_name"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_74] + SHUFFLE [RS_66] PartitionCols:_col0 - Select Operator [SEL_73] (rows=525329897 width=114) + Select Operator [SEL_65] (rows=525329897 width=114) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_72] (rows=525329897 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_store_sk BETWEEN DynamicValue(RS_13_store_s_store_sk_min) AND DynamicValue(RS_13_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_13_store_s_store_sk_bloom_filter))) and ss_sold_date_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_64] (rows=525329897 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_sold_date_sk is not null and ss_store_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_store_sk","ss_sales_price"] <-Reducer 7 [BROADCAST_EDGE] vectorized @@ -121,15 +120,4 @@ Stage-0 Select Operator [SEL_59] (rows=652 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_57] - <-Reducer 9 [BROADCAST_EDGE] vectorized - BROADCAST [RS_71] - Group By Operator [GBY_70] (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_69] - Group By Operator [GBY_68] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_67] (rows=341 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_65] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query46.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query46.q.out index b7a6bd626c..e8de9f4b44 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query46.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query46.q.out @@ -83,12 +83,10 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 8 <- Reducer 13 (BROADCAST_EDGE), Reducer 15 (BROADCAST_EDGE), Reducer 17 (BROADCAST_EDGE) +Map 8 <- Reducer 13 (BROADCAST_EDGE) Reducer 10 <- Map 14 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) -Reducer 11 <- Map 16 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE) +Reducer 11 <- Map 15 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE) Reducer 13 <- Map 12 (CUSTOM_SIMPLE_EDGE) -Reducer 15 <- Map 14 (CUSTOM_SIMPLE_EDGE) -Reducer 17 <- Map 16 (CUSTOM_SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 5 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) @@ -101,10 +99,10 @@ Stage-0 limit:100 Stage-1 Reducer 4 vectorized - File Output Operator [FS_182] - Limit [LIM_181] (rows=100 width=594) + File Output Operator [FS_172] + Limit [LIM_171] (rows=100 width=594) Number of rows:100 - Select Operator [SEL_180] (rows=20351707 width=594) + Select Operator [SEL_170] (rows=20351707 width=594) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_44] @@ -113,7 +111,7 @@ Stage-0 Filter Operator [FIL_42] (rows=20351707 width=594) predicate:(_col5 <> _col8) Merge Join Operator [MERGEJOIN_143] (rows=20351707 width=594) - Conds:RS_39._col0=RS_179._col1(Inner),Output:["_col2","_col3","_col5","_col6","_col8","_col9","_col10"] + Conds:RS_39._col0=RS_169._col1(Inner),Output:["_col2","_col3","_col5","_col6","_col8","_col9","_col10"] <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_39] PartitionCols:_col0 @@ -136,11 +134,11 @@ Stage-0 TableScan [TS_0] (rows=80000000 width=188) default@customer,customer,Tbl:COMPLETE,Col:COMPLETE,Output:["c_customer_sk","c_current_addr_sk","c_first_name","c_last_name"] <-Reducer 7 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_179] + SHUFFLE [RS_169] PartitionCols:_col1 - Select Operator [SEL_178] (rows=20351707 width=321) + Select Operator [SEL_168] (rows=20351707 width=321) Output:["_col0","_col1","_col2","_col3","_col4"] - Group By Operator [GBY_177] (rows=20351707 width=321) + Group By Operator [GBY_167] (rows=20351707 width=321) Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3 <-Reducer 6 [SIMPLE_EDGE] SHUFFLE [RS_33] @@ -157,13 +155,13 @@ Stage-0 SHUFFLE [RS_28] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_141] (rows=20351707 width=4) - Conds:RS_25._col2=RS_168._col0(Inner),Output:["_col1","_col3","_col5","_col6","_col7"] - <-Map 16 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_168] + Conds:RS_25._col2=RS_166._col0(Inner),Output:["_col1","_col3","_col5","_col6","_col7"] + <-Map 15 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_166] PartitionCols:_col0 - Select Operator [SEL_167] (rows=1855 width=4) + Select Operator [SEL_165] (rows=1855 width=4) Output:["_col0"] - Filter Operator [FIL_166] (rows=1855 width=12) + Filter Operator [FIL_164] (rows=1855 width=12) predicate:((hd_dep_count = 2) or (hd_vehicle_count = 1)) TableScan [TS_14] (rows=7200 width=12) default@household_demographics,household_demographics,Tbl:COMPLETE,Col:COMPLETE,Output:["hd_demo_sk","hd_dep_count","hd_vehicle_count"] @@ -171,13 +169,13 @@ Stage-0 SHUFFLE [RS_25] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_140] (rows=78993142 width=178) - Conds:RS_22._col4=RS_160._col0(Inner),Output:["_col1","_col2","_col3","_col5","_col6","_col7"] + Conds:RS_22._col4=RS_163._col0(Inner),Output:["_col1","_col2","_col3","_col5","_col6","_col7"] <-Map 14 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_160] + SHUFFLE [RS_163] PartitionCols:_col0 - Select Operator [SEL_159] (rows=85 width=4) + Select Operator [SEL_162] (rows=85 width=4) Output:["_col0"] - Filter Operator [FIL_158] (rows=85 width=97) + Filter Operator [FIL_161] (rows=85 width=97) predicate:(s_city) IN ('Cedar Grove', 'Wildwood', 'Union', 'Salem', 'Highland Park') TableScan [TS_11] (rows=1704 width=97) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_city"] @@ -185,7 +183,7 @@ Stage-0 SHUFFLE [RS_22] PartitionCols:_col4 Merge Join Operator [MERGEJOIN_139] (rows=196204013 width=218) - Conds:RS_176._col0=RS_152._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col7"] + Conds:RS_160._col0=RS_152._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col7"] <-Map 12 [SIMPLE_EDGE] vectorized SHUFFLE [RS_152] PartitionCols:_col0 @@ -196,12 +194,12 @@ Stage-0 TableScan [TS_8] (rows=73049 width=12) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_dow"] <-Map 8 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_176] + SHUFFLE [RS_160] PartitionCols:_col0 - Select Operator [SEL_175] (rows=457565061 width=237) + Select Operator [SEL_159] (rows=457565061 width=237) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] - Filter Operator [FIL_174] (rows=457565061 width=237) - predicate:((ss_hdemo_sk BETWEEN DynamicValue(RS_26_household_demographics_hd_demo_sk_min) AND DynamicValue(RS_26_household_demographics_hd_demo_sk_max) and in_bloom_filter(ss_hdemo_sk, DynamicValue(RS_26_household_demographics_hd_demo_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_20_date_dim_d_date_sk_min) AND DynamicValue(RS_20_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_20_date_dim_d_date_sk_bloom_filter))) and (ss_store_sk BETWEEN DynamicValue(RS_23_store_s_store_sk_min) AND DynamicValue(RS_23_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_23_store_s_store_sk_bloom_filter))) and ss_addr_sk is not null and ss_customer_sk is not null and ss_hdemo_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_158] (rows=457565061 width=237) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_20_date_dim_d_date_sk_min) AND DynamicValue(RS_20_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_20_date_dim_d_date_sk_bloom_filter))) and ss_addr_sk is not null and ss_customer_sk is not null and ss_hdemo_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) TableScan [TS_5] (rows=575995635 width=237) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_customer_sk","ss_hdemo_sk","ss_addr_sk","ss_store_sk","ss_ticket_number","ss_coupon_amt","ss_net_profit"] <-Reducer 13 [BROADCAST_EDGE] vectorized @@ -215,26 +213,4 @@ Stage-0 Select Operator [SEL_153] (rows=783 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_151] - <-Reducer 15 [BROADCAST_EDGE] vectorized - BROADCAST [RS_165] - Group By Operator [GBY_164] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 14 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_163] - Group By Operator [GBY_162] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_161] (rows=85 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_159] - <-Reducer 17 [BROADCAST_EDGE] vectorized - BROADCAST [RS_173] - Group By Operator [GBY_172] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 16 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_171] - Group By Operator [GBY_170] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_169] (rows=1855 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_167] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query48.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query48.q.out index b84dfce073..af9d44207d 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query48.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query48.q.out @@ -143,22 +143,20 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 7 <- Reducer 11 (BROADCAST_EDGE), Reducer 6 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) -Reducer 11 <- Map 10 (CUSTOM_SIMPLE_EDGE) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) -Reducer 3 <- Map 8 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 10 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Map 6 <- Reducer 8 (BROADCAST_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) +Reducer 3 <- Map 7 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 4 <- Map 9 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (CUSTOM_SIMPLE_EDGE) -Reducer 6 <- Map 1 (CUSTOM_SIMPLE_EDGE) -Reducer 9 <- Map 8 (CUSTOM_SIMPLE_EDGE) +Reducer 8 <- Map 7 (CUSTOM_SIMPLE_EDGE) Stage-0 Fetch Operator limit:-1 Stage-1 Reducer 5 vectorized - File Output Operator [FS_102] - Group By Operator [GBY_101] (rows=1 width=8) + File Output Operator [FS_92] + Group By Operator [GBY_91] (rows=1 width=8) Output:["_col0"],aggregations:["sum(VALUE._col0)"] <-Reducer 4 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_24] @@ -169,13 +167,13 @@ Stage-0 Filter Operator [FIL_21] (rows=20247 width=24) predicate:((_col10 and _col5) or (_col11 and _col6) or (_col12 and _col7)) Merge Join Operator [MERGEJOIN_73] (rows=26999 width=24) - Conds:RS_18._col3=RS_92._col0(Inner),Output:["_col4","_col5","_col6","_col7","_col10","_col11","_col12"] - <-Map 10 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_92] + Conds:RS_18._col3=RS_90._col0(Inner),Output:["_col4","_col5","_col6","_col7","_col10","_col11","_col12"] + <-Map 9 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_90] PartitionCols:_col0 - Select Operator [SEL_91] (rows=3529412 width=16) + Select Operator [SEL_89] (rows=3529412 width=16) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_90] (rows=3529412 width=187) + Filter Operator [FIL_88] (rows=3529412 width=187) predicate:((ca_country = 'United States') and (ca_state) IN ('KY', 'GA', 'NM', 'MT', 'OR', 'IN', 'WI', 'MO', 'WV')) TableScan [TS_9] (rows=40000000 width=187) default@customer_address,customer_address,Tbl:COMPLETE,Col:COMPLETE,Output:["ca_address_sk","ca_state","ca_country"] @@ -183,13 +181,13 @@ Stage-0 SHUFFLE [RS_18] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_72] (rows=305980 width=12) - Conds:RS_15._col1=RS_84._col0(Inner),Output:["_col3","_col4","_col5","_col6","_col7"] - <-Map 8 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_84] + Conds:RS_15._col1=RS_79._col0(Inner),Output:["_col3","_col4","_col5","_col6","_col7"] + <-Map 7 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_79] PartitionCols:_col0 - Select Operator [SEL_83] (rows=652 width=4) + Select Operator [SEL_78] (rows=652 width=4) Output:["_col0"] - Filter Operator [FIL_82] (rows=652 width=8) + Filter Operator [FIL_77] (rows=652 width=8) predicate:(d_year = 1998) TableScan [TS_6] (rows=73049 width=8) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year"] @@ -197,9 +195,9 @@ Stage-0 SHUFFLE [RS_15] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_71] (rows=856943 width=12) - Conds:RS_76._col0=RS_100._col1(Inner),Output:["_col1","_col3","_col4","_col5","_col6","_col7"] + Conds:RS_76._col0=RS_87._col1(Inner),Output:["_col1","_col3","_col4","_col5","_col6","_col7"] <-Map 1 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_76] + SHUFFLE [RS_76] PartitionCols:_col0 Select Operator [SEL_75] (rows=29552 width=4) Output:["_col0"] @@ -207,46 +205,24 @@ Stage-0 predicate:((cd_education_status = '4 yr Degree') and (cd_marital_status = 'M')) TableScan [TS_0] (rows=1861800 width=183) default@customer_demographics,customer_demographics,Tbl:COMPLETE,Col:COMPLETE,Output:["cd_demo_sk","cd_marital_status","cd_education_status"] - <-Map 7 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_100] + <-Map 6 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_87] PartitionCols:_col1 - Select Operator [SEL_99] (rows=53235296 width=27) + Select Operator [SEL_86] (rows=53235296 width=27) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] - Filter Operator [FIL_98] (rows=53235296 width=233) - predicate:((ss_addr_sk BETWEEN DynamicValue(RS_19_customer_address_ca_address_sk_min) AND DynamicValue(RS_19_customer_address_ca_address_sk_max) and in_bloom_filter(ss_addr_sk, DynamicValue(RS_19_customer_address_ca_address_sk_bloom_filter))) and (ss_cdemo_sk BETWEEN DynamicValue(RS_12_customer_demographics_cd_demo_sk_min) AND DynamicValue(RS_12_customer_demographics_cd_demo_sk_max) and in_bloom_filter(ss_cdemo_sk, DynamicValue(RS_12_customer_demographics_cd_demo_sk_bloom_filter))) and (ss_net_profit BETWEEN 0 AND 2000 or ss_net_profit BETWEEN 150 AND 3000 or ss_net_profit BETWEEN 50 AND 25000) and (ss_sales_price BETWEEN 100 AND 150 or ss_sales_price BETWEEN 50 AND 100 or ss_sales_price BETWEEN 150 AND 200) and (ss_sold_date_sk BETWEEN DynamicValue(RS_16_date_dim_d_date_sk_min) AND DynamicValue(RS_16_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_16_date_dim_d_date_sk_bloom_filter))) and ss_addr_sk is not null and ss_cdemo_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_85] (rows=53235296 width=233) + predicate:((ss_net_profit BETWEEN 0 AND 2000 or ss_net_profit BETWEEN 150 AND 3000 or ss_net_profit BETWEEN 50 AND 25000) and (ss_sales_price BETWEEN 100 AND 150 or ss_sales_price BETWEEN 50 AND 100 or ss_sales_price BETWEEN 150 AND 200) and (ss_sold_date_sk BETWEEN DynamicValue(RS_16_date_dim_d_date_sk_min) AND DynamicValue(RS_16_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_16_date_dim_d_date_sk_bloom_filter))) and ss_addr_sk is not null and ss_cdemo_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) TableScan [TS_3] (rows=575995635 width=233) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_cdemo_sk","ss_addr_sk","ss_store_sk","ss_quantity","ss_sales_price","ss_net_profit"] - <-Reducer 11 [BROADCAST_EDGE] vectorized - BROADCAST [RS_97] - Group By Operator [GBY_96] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=3529412)"] - <-Map 10 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_95] - Group By Operator [GBY_94] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=3529412)"] - Select Operator [SEL_93] (rows=3529412 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_91] - <-Reducer 6 [BROADCAST_EDGE] vectorized - BROADCAST [RS_81] - Group By Operator [GBY_80] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 1 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_79] - Group By Operator [GBY_78] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_77] (rows=29552 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_75] - <-Reducer 9 [BROADCAST_EDGE] vectorized - BROADCAST [RS_89] - Group By Operator [GBY_88] (rows=1 width=12) + <-Reducer 8 [BROADCAST_EDGE] vectorized + BROADCAST [RS_84] + Group By Operator [GBY_83] (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_87] - Group By Operator [GBY_86] (rows=1 width=12) + <-Map 7 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_82] + Group By Operator [GBY_81] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_85] (rows=652 width=4) + Select Operator [SEL_80] (rows=652 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_83] + Please refer to the previous Select Operator [SEL_78] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query50.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query50.q.out index 05d84d8621..9eebd05c54 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query50.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query50.q.out @@ -127,29 +127,27 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 11 <- Reducer 7 (BROADCAST_EDGE), Reducer 8 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 10 (SIMPLE_EDGE) -Reducer 3 <- Map 11 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 12 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Map 9 <- Reducer 7 (BROADCAST_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) +Reducer 3 <- Map 9 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 4 <- Map 10 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) -Reducer 8 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) -Reducer 9 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) Stage-0 Fetch Operator limit:100 Stage-1 Reducer 6 vectorized - File Output Operator [FS_118] - Limit [LIM_117] (rows=100 width=858) + File Output Operator [FS_114] + Limit [LIM_113] (rows=100 width=858) Number of rows:100 - Select Operator [SEL_116] (rows=11945216 width=857) + Select Operator [SEL_112] (rows=11945216 width=857) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14"] <-Reducer 5 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_115] - Group By Operator [GBY_114] (rows=11945216 width=857) + SHUFFLE [RS_111] + Group By Operator [GBY_110] (rows=11945216 width=857) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)","sum(VALUE._col3)","sum(VALUE._col4)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4, KEY._col5, KEY._col6, KEY._col7, KEY._col8, KEY._col9 <-Reducer 4 [SIMPLE_EDGE] SHUFFLE [RS_23] @@ -161,11 +159,11 @@ Stage-0 Select Operator [SEL_20] (rows=11945216 width=821) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14"] Merge Join Operator [MERGEJOIN_96] (rows=11945216 width=821) - Conds:RS_17._col8=RS_113._col0(Inner),Output:["_col0","_col5","_col11","_col12","_col13","_col14","_col15","_col16","_col17","_col18","_col19","_col20"] - <-Map 12 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_113] + Conds:RS_17._col8=RS_109._col0(Inner),Output:["_col0","_col5","_col11","_col12","_col13","_col14","_col15","_col16","_col17","_col18","_col19","_col20"] + <-Map 10 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_109] PartitionCols:_col0 - Select Operator [SEL_112] (rows=1704 width=821) + Select Operator [SEL_108] (rows=1704 width=821) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10"] TableScan [TS_9] (rows=1704 width=821) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_store_name","s_company_id","s_street_number","s_street_name","s_street_type","s_suite_number","s_city","s_county","s_state","s_zip"] @@ -173,7 +171,7 @@ Stage-0 SHUFFLE [RS_17] PartitionCols:_col8 Merge Join Operator [MERGEJOIN_95] (rows=11945216 width=3) - Conds:RS_14._col1, _col2, _col3=RS_111._col1, _col2, _col4(Inner),Output:["_col0","_col5","_col8"] + Conds:RS_14._col1, _col2, _col3=RS_107._col1, _col2, _col4(Inner),Output:["_col0","_col5","_col8"] <-Reducer 2 [SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_14] PartitionCols:_col1, _col2, _col3 @@ -188,7 +186,7 @@ Stage-0 predicate:(sr_customer_sk is not null and sr_returned_date_sk is not null) TableScan [TS_0] (rows=57591150 width=15) default@store_returns,store_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["sr_returned_date_sk","sr_item_sk","sr_customer_sk","sr_ticket_number"] - <-Map 10 [SIMPLE_EDGE] vectorized + <-Map 8 [SIMPLE_EDGE] vectorized SHUFFLE [RS_102] PartitionCols:_col0 Select Operator [SEL_101] (rows=50 width=4) @@ -197,41 +195,19 @@ Stage-0 predicate:((d_moy = 9) and (d_year = 2000)) TableScan [TS_3] (rows=73049 width=12) default@date_dim,d2,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] - <-Map 11 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_111] + <-Map 9 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_107] PartitionCols:_col1, _col2, _col4 - Select Operator [SEL_110] (rows=501694138 width=19) + Select Operator [SEL_106] (rows=501694138 width=19) Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_109] (rows=501694138 width=19) - predicate:((ss_customer_sk BETWEEN DynamicValue(RS_14_store_returns_sr_customer_sk_min) AND DynamicValue(RS_14_store_returns_sr_customer_sk_max) and in_bloom_filter(ss_customer_sk, DynamicValue(RS_14_store_returns_sr_customer_sk_bloom_filter))) and (ss_item_sk BETWEEN DynamicValue(RS_14_store_returns_sr_item_sk_min) AND DynamicValue(RS_14_store_returns_sr_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_14_store_returns_sr_item_sk_bloom_filter))) and (ss_ticket_number BETWEEN DynamicValue(RS_14_store_returns_sr_ticket_number_min) AND DynamicValue(RS_14_store_returns_sr_ticket_number_max) and in_bloom_filter(ss_ticket_number, DynamicValue(RS_14_store_returns_sr_ticket_number_bloom_filter))) and ss_customer_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_105] (rows=501694138 width=19) + predicate:((ss_ticket_number BETWEEN DynamicValue(RS_14_store_returns_sr_ticket_number_min) AND DynamicValue(RS_14_store_returns_sr_ticket_number_max) and in_bloom_filter(ss_ticket_number, DynamicValue(RS_14_store_returns_sr_ticket_number_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_6] (rows=575995635 width=19) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_customer_sk","ss_store_sk","ss_ticket_number"] <-Reducer 7 [BROADCAST_EDGE] vectorized BROADCAST [RS_104] Group By Operator [GBY_103] (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_71] - Group By Operator [GBY_70] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_69] (rows=1339446 width=8) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_94] - <-Reducer 8 [BROADCAST_EDGE] vectorized - BROADCAST [RS_106] - Group By Operator [GBY_105] (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_76] - Group By Operator [GBY_75] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_74] (rows=1339446 width=0) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_94] - <-Reducer 9 [BROADCAST_EDGE] vectorized - BROADCAST [RS_108] - Group By Operator [GBY_107] (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_81] Group By Operator [GBY_80] (rows=1 width=12) diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query52.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query52.q.out index 72f91517ec..47b94752c1 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query52.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query52.q.out @@ -51,29 +51,28 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 7 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) +Map 1 <- Reducer 7 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) Reducer 3 <- Map 8 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) Reducer 7 <- Map 6 (CUSTOM_SIMPLE_EDGE) -Reducer 9 <- Map 8 (CUSTOM_SIMPLE_EDGE) Stage-0 Fetch Operator limit:-1 Stage-1 Reducer 5 vectorized - File Output Operator [FS_79] - Select Operator [SEL_78] (rows=100 width=220) + File Output Operator [FS_74] + Select Operator [SEL_73] (rows=100 width=220) Output:["_col0","_col1","_col2","_col3"] - Limit [LIM_77] (rows=100 width=216) + Limit [LIM_72] (rows=100 width=216) Number of rows:100 - Select Operator [SEL_76] (rows=7333 width=216) + Select Operator [SEL_71] (rows=7333 width=216) Output:["_col0","_col1","_col2"] <-Reducer 4 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_75] - Group By Operator [GBY_74] (rows=7333 width=216) + SHUFFLE [RS_70] + Group By Operator [GBY_69] (rows=7333 width=216) Output:["_col0","_col1","_col2"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0, KEY._col1 <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_17] @@ -81,13 +80,13 @@ Stage-0 Group By Operator [GBY_16] (rows=7333 width=216) Output:["_col0","_col1","_col2"],aggregations:["sum(_col2)"],keys:_col5, _col6 Merge Join Operator [MERGEJOIN_54] (rows=2301098 width=104) - Conds:RS_12._col1=RS_65._col0(Inner),Output:["_col2","_col5","_col6"] + Conds:RS_12._col1=RS_68._col0(Inner),Output:["_col2","_col5","_col6"] <-Map 8 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_65] + SHUFFLE [RS_68] PartitionCols:_col0 - Select Operator [SEL_64] (rows=7333 width=107) + Select Operator [SEL_67] (rows=7333 width=107) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_63] (rows=7333 width=111) + Filter Operator [FIL_66] (rows=7333 width=111) predicate:(i_manager_id = 1) TableScan [TS_6] (rows=462000 width=111) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_brand_id","i_brand","i_manager_id"] @@ -95,7 +94,7 @@ Stage-0 SHUFFLE [RS_12] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_53] (rows=15062131 width=4) - Conds:RS_73._col0=RS_57._col0(Inner),Output:["_col1","_col2"] + Conds:RS_65._col0=RS_57._col0(Inner),Output:["_col1","_col2"] <-Map 6 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_57] PartitionCols:_col0 @@ -106,12 +105,12 @@ Stage-0 TableScan [TS_3] (rows=73049 width=12) default@date_dim,dt,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_73] + SHUFFLE [RS_65] PartitionCols:_col0 - Select Operator [SEL_72] (rows=550076554 width=114) + Select Operator [SEL_64] (rows=550076554 width=114) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_71] (rows=550076554 width=114) - predicate:((ss_item_sk BETWEEN DynamicValue(RS_13_item_i_item_sk_min) AND DynamicValue(RS_13_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_13_item_i_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_10_dt_d_date_sk_min) AND DynamicValue(RS_10_dt_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_10_dt_d_date_sk_bloom_filter))) and ss_sold_date_sk is not null) + Filter Operator [FIL_63] (rows=550076554 width=114) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_10_dt_d_date_sk_min) AND DynamicValue(RS_10_dt_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_10_dt_d_date_sk_bloom_filter))) 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_item_sk","ss_ext_sales_price"] <-Reducer 7 [BROADCAST_EDGE] vectorized @@ -125,15 +124,4 @@ Stage-0 Select Operator [SEL_58] (rows=50 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_56] - <-Reducer 9 [BROADCAST_EDGE] vectorized - BROADCAST [RS_70] - Group By Operator [GBY_69] (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_68] - Group By Operator [GBY_67] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_66] (rows=7333 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_64] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query53.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query53.q.out index 27adc6ec66..98a93fec57 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query53.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query53.q.out @@ -65,23 +65,22 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 7 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) +Map 1 <- Reducer 7 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) Reducer 3 <- Map 8 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) Reducer 7 <- Map 6 (CUSTOM_SIMPLE_EDGE) -Reducer 9 <- Map 8 (CUSTOM_SIMPLE_EDGE) Stage-0 Fetch Operator limit:100 Stage-1 Reducer 5 vectorized - File Output Operator [FS_86] - Limit [LIM_85] (rows=30 width=228) + File Output Operator [FS_81] + Limit [LIM_80] (rows=30 width=228) Number of rows:100 - Select Operator [SEL_84] (rows=30 width=228) + Select Operator [SEL_79] (rows=30 width=228) Output:["_col0","_col1","_col2"] <-Reducer 4 [SIMPLE_EDGE] SHUFFLE [RS_27] @@ -103,13 +102,13 @@ Stage-0 Group By Operator [GBY_16] (rows=60 width=120) Output:["_col0","_col1","_col2"],aggregations:["sum(_col2)"],keys:_col4, _col6 Merge Join Operator [MERGEJOIN_62] (rows=129200 width=8) - Conds:RS_12._col0=RS_73._col0(Inner),Output:["_col2","_col4","_col6"] + Conds:RS_12._col0=RS_76._col0(Inner),Output:["_col2","_col4","_col6"] <-Map 8 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_73] + SHUFFLE [RS_76] PartitionCols:_col0 - Select Operator [SEL_72] (rows=317 width=8) + Select Operator [SEL_75] (rows=317 width=8) Output:["_col0","_col1"] - Filter Operator [FIL_71] (rows=317 width=12) + Filter Operator [FIL_74] (rows=317 width=12) predicate:(d_month_seq) IN (1212, 1213, 1214, 1215, 1216, 1217, 1218, 1219, 1220, 1221, 1222, 1223) TableScan [TS_6] (rows=73049 width=12) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_month_seq","d_qoy"] @@ -117,7 +116,7 @@ Stage-0 SHUFFLE [RS_12] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_61] (rows=744232 width=4) - Conds:RS_81._col1=RS_65._col0(Inner),Output:["_col0","_col2","_col4"] + Conds:RS_73._col1=RS_65._col0(Inner),Output:["_col0","_col2","_col4"] <-Map 6 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_65] PartitionCols:_col0 @@ -128,12 +127,12 @@ Stage-0 TableScan [TS_3] (rows=462000 width=289) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_brand","i_class","i_category","i_manufact_id"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_81] + SHUFFLE [RS_73] PartitionCols:_col1 - Select Operator [SEL_80] (rows=525329897 width=114) + Select Operator [SEL_72] (rows=525329897 width=114) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_79] (rows=525329897 width=118) - predicate:((ss_item_sk BETWEEN DynamicValue(RS_10_item_i_item_sk_min) AND DynamicValue(RS_10_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_10_item_i_item_sk_bloom_filter))) and (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_sold_date_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_71] (rows=525329897 width=118) + predicate:((ss_item_sk BETWEEN DynamicValue(RS_10_item_i_item_sk_min) AND DynamicValue(RS_10_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_10_item_i_item_sk_bloom_filter))) and ss_sold_date_sk is not null and ss_store_sk is not null) TableScan [TS_0] (rows=575995635 width=118) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_store_sk","ss_sales_price"] <-Reducer 7 [BROADCAST_EDGE] vectorized @@ -147,15 +146,4 @@ Stage-0 Select Operator [SEL_66] (rows=68 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_64] - <-Reducer 9 [BROADCAST_EDGE] vectorized - BROADCAST [RS_78] - Group By Operator [GBY_77] (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_76] - Group By Operator [GBY_75] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_74] (rows=317 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_72] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query54.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query54.q.out index 0210163c8a..fcde652ee1 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query54.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query54.q.out @@ -1,6 +1,6 @@ Warning: Shuffle Join MERGEJOIN[270][tables = [$hdt$_0, $hdt$_1, $hdt$_2, $hdt$_3]] in Stage 'Reducer 4' is a cross product Warning: Shuffle Join MERGEJOIN[271][tables = [$hdt$_0, $hdt$_1, $hdt$_2, $hdt$_3, $hdt$_4]] in Stage 'Reducer 5' is a cross product -Warning: Shuffle Join MERGEJOIN[269][tables = [$hdt$_1, $hdt$_2]] in Stage 'Reducer 32' is a cross product +Warning: Shuffle Join MERGEJOIN[269][tables = [$hdt$_1, $hdt$_2]] in Stage 'Reducer 31' is a cross product Warning: Shuffle Join MERGEJOIN[272][tables = [$hdt$_1, $hdt$_2, $hdt$_0]] in Stage 'Reducer 6' is a cross product PREHOOK: query: explain with my_customers as ( @@ -134,28 +134,27 @@ Plan optimized by CBO. Vertex dependency in root stage Map 1 <- Reducer 14 (BROADCAST_EDGE) -Map 16 <- Reducer 24 (BROADCAST_EDGE), Reducer 26 (BROADCAST_EDGE), Union 17 (CONTAINS) -Map 22 <- Reducer 24 (BROADCAST_EDGE), Reducer 26 (BROADCAST_EDGE), Union 17 (CONTAINS) +Map 16 <- Reducer 24 (BROADCAST_EDGE), Union 17 (CONTAINS) +Map 22 <- Reducer 24 (BROADCAST_EDGE), Union 17 (CONTAINS) Reducer 12 <- Map 11 (SIMPLE_EDGE), Map 15 (SIMPLE_EDGE) Reducer 13 <- Reducer 12 (SIMPLE_EDGE), Reducer 21 (SIMPLE_EDGE) Reducer 14 <- Reducer 13 (CUSTOM_SIMPLE_EDGE) Reducer 18 <- Map 23 (SIMPLE_EDGE), Union 17 (SIMPLE_EDGE) Reducer 19 <- Map 25 (SIMPLE_EDGE), Reducer 18 (SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 10 (SIMPLE_EDGE) -Reducer 20 <- Map 27 (SIMPLE_EDGE), Reducer 19 (SIMPLE_EDGE) +Reducer 20 <- Map 26 (SIMPLE_EDGE), Reducer 19 (SIMPLE_EDGE) Reducer 21 <- Reducer 20 (SIMPLE_EDGE) Reducer 24 <- Map 23 (CUSTOM_SIMPLE_EDGE) -Reducer 26 <- Map 25 (CUSTOM_SIMPLE_EDGE) -Reducer 29 <- Map 28 (SIMPLE_EDGE) +Reducer 28 <- Map 27 (SIMPLE_EDGE) +Reducer 29 <- Reducer 28 (CUSTOM_SIMPLE_EDGE) Reducer 3 <- Reducer 13 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 30 <- Reducer 29 (CUSTOM_SIMPLE_EDGE) -Reducer 31 <- Map 28 (SIMPLE_EDGE) -Reducer 32 <- Reducer 31 (CUSTOM_SIMPLE_EDGE), Reducer 34 (CUSTOM_SIMPLE_EDGE) -Reducer 33 <- Map 28 (SIMPLE_EDGE) -Reducer 34 <- Reducer 33 (CUSTOM_SIMPLE_EDGE) -Reducer 4 <- Reducer 3 (CUSTOM_SIMPLE_EDGE), Reducer 30 (CUSTOM_SIMPLE_EDGE) -Reducer 5 <- Reducer 29 (CUSTOM_SIMPLE_EDGE), Reducer 4 (CUSTOM_SIMPLE_EDGE) -Reducer 6 <- Reducer 32 (CUSTOM_SIMPLE_EDGE), Reducer 5 (CUSTOM_SIMPLE_EDGE) +Reducer 30 <- Map 27 (SIMPLE_EDGE) +Reducer 31 <- Reducer 30 (CUSTOM_SIMPLE_EDGE), Reducer 33 (CUSTOM_SIMPLE_EDGE) +Reducer 32 <- Map 27 (SIMPLE_EDGE) +Reducer 33 <- Reducer 32 (CUSTOM_SIMPLE_EDGE) +Reducer 4 <- Reducer 29 (CUSTOM_SIMPLE_EDGE), Reducer 3 (CUSTOM_SIMPLE_EDGE) +Reducer 5 <- Reducer 28 (CUSTOM_SIMPLE_EDGE), Reducer 4 (CUSTOM_SIMPLE_EDGE) +Reducer 6 <- Reducer 31 (CUSTOM_SIMPLE_EDGE), Reducer 5 (CUSTOM_SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) Reducer 8 <- Reducer 7 (SIMPLE_EDGE) Reducer 9 <- Reducer 8 (SIMPLE_EDGE) @@ -165,25 +164,25 @@ Stage-0 limit:100 Stage-1 Reducer 9 vectorized - File Output Operator [FS_352] - Limit [LIM_351] (rows=1 width=16) + File Output Operator [FS_349] + Limit [LIM_348] (rows=1 width=16) Number of rows:100 - Select Operator [SEL_350] (rows=1 width=16) + Select Operator [SEL_347] (rows=1 width=16) Output:["_col0","_col1","_col2"] <-Reducer 8 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_349] - Select Operator [SEL_348] (rows=1 width=16) + SHUFFLE [RS_346] + Select Operator [SEL_345] (rows=1 width=16) Output:["_col0","_col1","_col2"] - Group By Operator [GBY_347] (rows=1 width=12) + Group By Operator [GBY_344] (rows=1 width=12) Output:["_col0","_col1"],aggregations:["count(VALUE._col0)"],keys:KEY._col0 <-Reducer 7 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_346] + SHUFFLE [RS_343] PartitionCols:_col0 - Group By Operator [GBY_345] (rows=1 width=12) + Group By Operator [GBY_342] (rows=1 width=12) Output:["_col0","_col1"],aggregations:["count()"],keys:_col0 - Select Operator [SEL_344] (rows=1 width=116) + Select Operator [SEL_341] (rows=1 width=116) Output:["_col0"] - Group By Operator [GBY_343] (rows=1 width=116) + Group By Operator [GBY_340] (rows=1 width=116) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 <-Reducer 6 [SIMPLE_EDGE] SHUFFLE [RS_118] @@ -198,69 +197,82 @@ Stage-0 Output:["_col0","_col1","_col2","_col3","_col4"] Merge Join Operator [MERGEJOIN_272] (rows=5618315000 width=127) Conds:(Inner),Output:["_col0","_col2","_col6","_col13","_col15"] - <-Reducer 32 [CUSTOM_SIMPLE_EDGE] + <-Reducer 31 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_111] Merge Join Operator [MERGEJOIN_269] (rows=25 width=4) Conds:(Right Outer),Output:["_col0"] - <-Reducer 31 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_334] - Group By Operator [GBY_333] (rows=25 width=4) + <-Reducer 30 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_331] + Group By Operator [GBY_330] (rows=25 width=4) Output:["_col0"],keys:KEY._col0 - <-Map 28 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_322] + <-Map 27 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_319] PartitionCols:_col0 - Group By Operator [GBY_319] (rows=25 width=4) + Group By Operator [GBY_316] (rows=25 width=4) Output:["_col0"],keys:_col0 - Select Operator [SEL_316] (rows=50 width=12) + Select Operator [SEL_313] (rows=50 width=12) Output:["_col0"] - Filter Operator [FIL_314] (rows=50 width=12) + Filter Operator [FIL_311] (rows=50 width=12) predicate:((d_moy = 3) and (d_year = 1999)) TableScan [TS_72] (rows=73049 width=12) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_month_seq","d_year","d_moy"] - <-Reducer 34 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_342] - Select Operator [SEL_341] (rows=1 width=8) - Filter Operator [FIL_340] (rows=1 width=8) + <-Reducer 33 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_339] + Select Operator [SEL_338] (rows=1 width=8) + Filter Operator [FIL_337] (rows=1 width=8) predicate:(sq_count_check(_col0) <= 1) - Group By Operator [GBY_339] (rows=1 width=8) + Group By Operator [GBY_336] (rows=1 width=8) Output:["_col0"],aggregations:["count(VALUE._col0)"] - <-Reducer 33 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_338] - Group By Operator [GBY_337] (rows=1 width=8) + <-Reducer 32 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_335] + Group By Operator [GBY_334] (rows=1 width=8) Output:["_col0"],aggregations:["count()"] - Select Operator [SEL_336] (rows=25 width=4) - Group By Operator [GBY_335] (rows=25 width=4) + Select Operator [SEL_333] (rows=25 width=4) + Group By Operator [GBY_332] (rows=25 width=4) Output:["_col0"],keys:KEY._col0 - <-Map 28 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_323] + <-Map 27 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_320] PartitionCols:_col0 - Group By Operator [GBY_320] (rows=25 width=4) + Group By Operator [GBY_317] (rows=25 width=4) Output:["_col0"],keys:_col0 - Select Operator [SEL_317] (rows=50 width=12) + Select Operator [SEL_314] (rows=50 width=12) Output:["_col0"] - Please refer to the previous Filter Operator [FIL_314] + Please refer to the previous Filter Operator [FIL_311] <-Reducer 5 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_112] Select Operator [SEL_107] (rows=224732600 width=119) Output:["_col0","_col4","_col11","_col13"] Merge Join Operator [MERGEJOIN_271] (rows=224732600 width=119) Conds:(Left Outer),Output:["_col2","_col4","_col10","_col13"] - <-Reducer 29 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_326] - Group By Operator [GBY_324] (rows=25 width=4) + <-Reducer 28 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_323] + Group By Operator [GBY_321] (rows=25 width=4) Output:["_col0"],keys:KEY._col0 - <-Map 28 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_321] + <-Map 27 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_318] PartitionCols:_col0 - Group By Operator [GBY_318] (rows=25 width=4) + Group By Operator [GBY_315] (rows=25 width=4) Output:["_col0"],keys:_col0 - Select Operator [SEL_315] (rows=50 width=12) + Select Operator [SEL_312] (rows=50 width=12) Output:["_col0"] - Please refer to the previous Filter Operator [FIL_314] + Please refer to the previous Filter Operator [FIL_311] <-Reducer 4 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_104] Merge Join Operator [MERGEJOIN_270] (rows=8989304 width=8) Conds:(Inner),Output:["_col2","_col4","_col10"] + <-Reducer 29 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_329] + Select Operator [SEL_328] (rows=1 width=8) + Filter Operator [FIL_327] (rows=1 width=8) + predicate:(sq_count_check(_col0) <= 1) + Group By Operator [GBY_326] (rows=1 width=8) + Output:["_col0"],aggregations:["count(VALUE._col0)"] + <-Reducer 28 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_325] + Group By Operator [GBY_324] (rows=1 width=8) + Output:["_col0"],aggregations:["count()"] + Select Operator [SEL_322] (rows=25 width=4) + Please refer to the previous Group By Operator [GBY_321] <-Reducer 3 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_101] Merge Join Operator [MERGEJOIN_268] (rows=8989304 width=8) @@ -269,7 +281,7 @@ Stage-0 SHUFFLE [RS_99] PartitionCols:_col5 Merge Join Operator [MERGEJOIN_267] (rows=55046 width=4) - Conds:RS_68._col0=RS_306._col1(Inner),Output:["_col5"] + Conds:RS_68._col0=RS_303._col1(Inner),Output:["_col5"] <-Reducer 12 [SIMPLE_EDGE] SHUFFLE [RS_68] PartitionCols:_col0 @@ -294,11 +306,11 @@ Stage-0 TableScan [TS_31] (rows=1704 width=184) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_county","s_state"] <-Reducer 21 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_306] + SHUFFLE [RS_303] PartitionCols:_col1 - Select Operator [SEL_305] (rows=55046 width=8) + Select Operator [SEL_302] (rows=55046 width=8) Output:["_col0","_col1"] - Group By Operator [GBY_304] (rows=55046 width=8) + Group By Operator [GBY_301] (rows=55046 width=8) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 <-Reducer 20 [SIMPLE_EDGE] SHUFFLE [RS_62] @@ -306,13 +318,13 @@ Stage-0 Group By Operator [GBY_61] (rows=55046 width=8) Output:["_col0","_col1"],keys:_col6, _col5 Merge Join Operator [MERGEJOIN_266] (rows=110092 width=8) - Conds:RS_57._col1=RS_303._col0(Inner),Output:["_col5","_col6"] - <-Map 27 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_303] + Conds:RS_57._col1=RS_300._col0(Inner),Output:["_col5","_col6"] + <-Map 26 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_300] PartitionCols:_col0 - Select Operator [SEL_302] (rows=80000000 width=8) + Select Operator [SEL_299] (rows=80000000 width=8) Output:["_col0","_col1"] - Filter Operator [FIL_301] (rows=80000000 width=8) + Filter Operator [FIL_298] (rows=80000000 width=8) predicate:c_current_addr_sk is not null TableScan [TS_48] (rows=80000000 width=8) default@customer,customer,Tbl:COMPLETE,Col:COMPLETE,Output:["c_customer_sk","c_current_addr_sk"] @@ -322,7 +334,7 @@ Stage-0 Merge Join Operator [MERGEJOIN_265] (rows=110092 width=0) Conds:RS_54._col2=RS_297._col0(Inner),Output:["_col1"] <-Map 25 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_297] + SHUFFLE [RS_297] PartitionCols:_col0 Select Operator [SEL_296] (rows=453 width=4) Output:["_col0"] @@ -346,17 +358,17 @@ Stage-0 default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] <-Union 17 [SIMPLE_EDGE] <-Map 16 [CONTAINS] vectorized - Reduce Output Operator [RS_361] + Reduce Output Operator [RS_355] PartitionCols:_col0 - Select Operator [SEL_360] (rows=285117831 width=11) + Select Operator [SEL_354] (rows=285117831 width=11) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_359] (rows=285117831 width=11) - predicate:((cs_item_sk BETWEEN DynamicValue(RS_55_item_i_item_sk_min) AND DynamicValue(RS_55_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_55_item_i_item_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_52_date_dim_d_date_sk_min) AND DynamicValue(RS_52_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_52_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_353] (rows=285117831 width=11) + predicate:((cs_sold_date_sk BETWEEN DynamicValue(RS_52_date_dim_d_date_sk_min) AND DynamicValue(RS_52_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_52_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_273] (rows=287989836 width=11) Output:["cs_sold_date_sk","cs_bill_customer_sk","cs_item_sk"] <-Reducer 24 [BROADCAST_EDGE] vectorized - BROADCAST [RS_354] - Group By Operator [GBY_353] (rows=1 width=12) + BROADCAST [RS_351] + Group By Operator [GBY_350] (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] @@ -365,49 +377,35 @@ Stage-0 Select Operator [SEL_292] (rows=50 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_290] - <-Reducer 26 [BROADCAST_EDGE] vectorized - BROADCAST [RS_357] - Group By Operator [GBY_356] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 25 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_300] - Group By Operator [GBY_299] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_298] (rows=453 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_296] <-Map 22 [CONTAINS] vectorized - Reduce Output Operator [RS_364] + Reduce Output Operator [RS_358] PartitionCols:_col0 - Select Operator [SEL_363] (rows=143930993 width=11) + Select Operator [SEL_357] (rows=143930993 width=11) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_362] (rows=143930993 width=11) - predicate:((ws_item_sk BETWEEN DynamicValue(RS_55_item_i_item_sk_min) AND DynamicValue(RS_55_item_i_item_sk_max) and in_bloom_filter(ws_item_sk, DynamicValue(RS_55_item_i_item_sk_bloom_filter))) and (ws_sold_date_sk BETWEEN DynamicValue(RS_52_date_dim_d_date_sk_min) AND DynamicValue(RS_52_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_52_date_dim_d_date_sk_bloom_filter))) and ws_bill_customer_sk is not null and ws_sold_date_sk is not null) + Filter Operator [FIL_356] (rows=143930993 width=11) + predicate:((ws_sold_date_sk BETWEEN DynamicValue(RS_52_date_dim_d_date_sk_min) AND DynamicValue(RS_52_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_52_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_278] (rows=144002668 width=11) Output:["ws_sold_date_sk","ws_item_sk","ws_bill_customer_sk"] <-Reducer 24 [BROADCAST_EDGE] vectorized - BROADCAST [RS_355] - Please refer to the previous Group By Operator [GBY_353] - <-Reducer 26 [BROADCAST_EDGE] vectorized - BROADCAST [RS_358] - Please refer to the previous Group By Operator [GBY_356] + BROADCAST [RS_352] + Please refer to the previous Group By Operator [GBY_350] <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_98] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_262] (rows=525327388 width=114) - Conds:RS_311._col0=RS_313._col0(Inner),Output:["_col1","_col2","_col4"] + Conds:RS_308._col0=RS_310._col0(Inner),Output:["_col1","_col2","_col4"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_311] + SHUFFLE [RS_308] PartitionCols:_col0 - Select Operator [SEL_310] (rows=525327388 width=114) + Select Operator [SEL_307] (rows=525327388 width=114) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_309] (rows=525327388 width=114) + Filter Operator [FIL_306] (rows=525327388 width=114) predicate:((ss_customer_sk BETWEEN DynamicValue(RS_99_customer_c_customer_sk_min) AND DynamicValue(RS_99_customer_c_customer_sk_max) and in_bloom_filter(ss_customer_sk, DynamicValue(RS_99_customer_c_customer_sk_bloom_filter))) and ss_customer_sk is not null and ss_sold_date_sk is not null) TableScan [TS_23] (rows=575995635 width=114) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_customer_sk","ss_ext_sales_price"] <-Reducer 14 [BROADCAST_EDGE] vectorized - BROADCAST [RS_308] - Group By Operator [GBY_307] (rows=1 width=12) + BROADCAST [RS_305] + Group By Operator [GBY_304] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Reducer 13 [CUSTOM_SIMPLE_EDGE] SHUFFLE [RS_182] @@ -417,23 +415,10 @@ Stage-0 Output:["_col0"] Please refer to the previous Merge Join Operator [MERGEJOIN_267] <-Map 10 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_313] + SHUFFLE [RS_310] PartitionCols:_col0 - Select Operator [SEL_312] (rows=73049 width=8) + Select Operator [SEL_309] (rows=73049 width=8) Output:["_col0","_col1"] TableScan [TS_26] (rows=73049 width=8) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_month_seq"] - <-Reducer 30 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_332] - Select Operator [SEL_331] (rows=1 width=8) - Filter Operator [FIL_330] (rows=1 width=8) - predicate:(sq_count_check(_col0) <= 1) - Group By Operator [GBY_329] (rows=1 width=8) - Output:["_col0"],aggregations:["count(VALUE._col0)"] - <-Reducer 29 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_328] - Group By Operator [GBY_327] (rows=1 width=8) - Output:["_col0"],aggregations:["count()"] - Select Operator [SEL_325] (rows=25 width=4) - Please refer to the previous Group By Operator [GBY_324] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query55.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query55.q.out index eb6b84fd09..6ccb65ab1c 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query55.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query55.q.out @@ -35,29 +35,28 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 7 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) +Map 1 <- Reducer 7 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) Reducer 3 <- Map 8 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) Reducer 7 <- Map 6 (CUSTOM_SIMPLE_EDGE) -Reducer 9 <- Map 8 (CUSTOM_SIMPLE_EDGE) Stage-0 Fetch Operator limit:-1 Stage-1 Reducer 5 vectorized - File Output Operator [FS_79] - Limit [LIM_78] (rows=100 width=220) + File Output Operator [FS_74] + Limit [LIM_73] (rows=100 width=220) Number of rows:100 - Select Operator [SEL_77] (rows=7333 width=220) + Select Operator [SEL_72] (rows=7333 width=220) Output:["_col0","_col1","_col2"] <-Reducer 4 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_76] - Select Operator [SEL_75] (rows=7333 width=220) + SHUFFLE [RS_71] + Select Operator [SEL_70] (rows=7333 width=220) Output:["_col1","_col2","_col3"] - Group By Operator [GBY_74] (rows=7333 width=216) + Group By Operator [GBY_69] (rows=7333 width=216) Output:["_col0","_col1","_col2"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0, KEY._col1 <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_17] @@ -65,13 +64,13 @@ Stage-0 Group By Operator [GBY_16] (rows=7333 width=216) Output:["_col0","_col1","_col2"],aggregations:["sum(_col2)"],keys:_col5, _col6 Merge Join Operator [MERGEJOIN_54] (rows=2301098 width=104) - Conds:RS_12._col1=RS_65._col0(Inner),Output:["_col2","_col5","_col6"] + Conds:RS_12._col1=RS_68._col0(Inner),Output:["_col2","_col5","_col6"] <-Map 8 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_65] + SHUFFLE [RS_68] PartitionCols:_col0 - Select Operator [SEL_64] (rows=7333 width=107) + Select Operator [SEL_67] (rows=7333 width=107) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_63] (rows=7333 width=111) + Filter Operator [FIL_66] (rows=7333 width=111) predicate:(i_manager_id = 36) TableScan [TS_6] (rows=462000 width=111) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_brand_id","i_brand","i_manager_id"] @@ -79,7 +78,7 @@ Stage-0 SHUFFLE [RS_12] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_53] (rows=15062131 width=4) - Conds:RS_73._col0=RS_57._col0(Inner),Output:["_col1","_col2"] + Conds:RS_65._col0=RS_57._col0(Inner),Output:["_col1","_col2"] <-Map 6 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_57] PartitionCols:_col0 @@ -90,12 +89,12 @@ Stage-0 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 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_73] + SHUFFLE [RS_65] PartitionCols:_col0 - Select Operator [SEL_72] (rows=550076554 width=114) + Select Operator [SEL_64] (rows=550076554 width=114) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_71] (rows=550076554 width=114) - predicate:((ss_item_sk BETWEEN DynamicValue(RS_13_item_i_item_sk_min) AND DynamicValue(RS_13_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_13_item_i_item_sk_bloom_filter))) and (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_sold_date_sk is not null) + Filter Operator [FIL_63] (rows=550076554 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_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_item_sk","ss_ext_sales_price"] <-Reducer 7 [BROADCAST_EDGE] vectorized @@ -109,15 +108,4 @@ Stage-0 Select Operator [SEL_58] (rows=50 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_56] - <-Reducer 9 [BROADCAST_EDGE] vectorized - BROADCAST [RS_70] - Group By Operator [GBY_69] (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_68] - Group By Operator [GBY_67] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_66] (rows=7333 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_64] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query56.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query56.q.out index cac7668b88..9f5f12d475 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query56.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query56.q.out @@ -149,66 +149,60 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 17 <- Reducer 21 (BROADCAST_EDGE), Reducer 29 (BROADCAST_EDGE), Reducer 8 (BROADCAST_EDGE) -Map 32 <- Reducer 11 (BROADCAST_EDGE), Reducer 24 (BROADCAST_EDGE), Reducer 30 (BROADCAST_EDGE) -Map 33 <- Reducer 14 (BROADCAST_EDGE), Reducer 27 (BROADCAST_EDGE), Reducer 31 (BROADCAST_EDGE) -Reducer 10 <- Reducer 9 (SIMPLE_EDGE), Union 5 (CONTAINS) -Reducer 11 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) -Reducer 12 <- Reducer 2 (SIMPLE_EDGE), Reducer 26 (SIMPLE_EDGE) -Reducer 13 <- Reducer 12 (SIMPLE_EDGE), Union 5 (CONTAINS) -Reducer 14 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) -Reducer 16 <- Map 15 (SIMPLE_EDGE) -Reducer 18 <- Map 17 (SIMPLE_EDGE), Map 20 (SIMPLE_EDGE) -Reducer 19 <- Map 28 (SIMPLE_EDGE), Reducer 18 (SIMPLE_EDGE) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 16 (ONE_TO_ONE_EDGE) -Reducer 21 <- Map 20 (CUSTOM_SIMPLE_EDGE) -Reducer 22 <- Map 20 (SIMPLE_EDGE), Map 32 (SIMPLE_EDGE) -Reducer 23 <- Map 28 (SIMPLE_EDGE), Reducer 22 (SIMPLE_EDGE) -Reducer 24 <- Map 20 (CUSTOM_SIMPLE_EDGE) -Reducer 25 <- Map 20 (SIMPLE_EDGE), Map 33 (SIMPLE_EDGE) -Reducer 26 <- Map 28 (SIMPLE_EDGE), Reducer 25 (SIMPLE_EDGE) -Reducer 27 <- Map 20 (CUSTOM_SIMPLE_EDGE) -Reducer 29 <- Map 28 (CUSTOM_SIMPLE_EDGE) -Reducer 3 <- Reducer 19 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 30 <- Map 28 (CUSTOM_SIMPLE_EDGE) -Reducer 31 <- Map 28 (CUSTOM_SIMPLE_EDGE) +Map 14 <- Reducer 18 (BROADCAST_EDGE) +Map 26 <- Reducer 21 (BROADCAST_EDGE) +Map 27 <- Reducer 24 (BROADCAST_EDGE) +Reducer 10 <- Reducer 2 (SIMPLE_EDGE), Reducer 23 (SIMPLE_EDGE) +Reducer 11 <- Reducer 10 (SIMPLE_EDGE), Union 5 (CONTAINS) +Reducer 13 <- Map 12 (SIMPLE_EDGE) +Reducer 15 <- Map 14 (SIMPLE_EDGE), Map 17 (SIMPLE_EDGE) +Reducer 16 <- Map 25 (SIMPLE_EDGE), Reducer 15 (SIMPLE_EDGE) +Reducer 18 <- Map 17 (CUSTOM_SIMPLE_EDGE) +Reducer 19 <- Map 17 (SIMPLE_EDGE), Map 26 (SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 13 (ONE_TO_ONE_EDGE) +Reducer 20 <- Map 25 (SIMPLE_EDGE), Reducer 19 (SIMPLE_EDGE) +Reducer 21 <- Map 17 (CUSTOM_SIMPLE_EDGE) +Reducer 22 <- Map 17 (SIMPLE_EDGE), Map 27 (SIMPLE_EDGE) +Reducer 23 <- Map 25 (SIMPLE_EDGE), Reducer 22 (SIMPLE_EDGE) +Reducer 24 <- Map 17 (CUSTOM_SIMPLE_EDGE) +Reducer 3 <- Reducer 16 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Union 5 (CONTAINS) Reducer 6 <- Union 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) -Reducer 8 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) -Reducer 9 <- Reducer 2 (SIMPLE_EDGE), Reducer 23 (SIMPLE_EDGE) +Reducer 8 <- Reducer 2 (SIMPLE_EDGE), Reducer 20 (SIMPLE_EDGE) +Reducer 9 <- Reducer 8 (SIMPLE_EDGE), Union 5 (CONTAINS) Stage-0 Fetch Operator limit:100 Stage-1 Reducer 7 vectorized - File Output Operator [FS_366] - Limit [LIM_365] (rows=100 width=212) + File Output Operator [FS_353] + Limit [LIM_352] (rows=100 width=212) Number of rows:100 - Select Operator [SEL_364] (rows=430 width=212) + Select Operator [SEL_351] (rows=430 width=212) Output:["_col0","_col1"] <-Reducer 6 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_363] - Group By Operator [GBY_362] (rows=430 width=212) + SHUFFLE [RS_350] + Group By Operator [GBY_349] (rows=430 width=212) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 <-Union 5 [SIMPLE_EDGE] - <-Reducer 10 [CONTAINS] vectorized - Reduce Output Operator [RS_378] + <-Reducer 11 [CONTAINS] vectorized + Reduce Output Operator [RS_369] PartitionCols:_col0 - Group By Operator [GBY_377] (rows=430 width=212) + Group By Operator [GBY_368] (rows=430 width=212) Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0 - Group By Operator [GBY_376] (rows=430 width=212) + Group By Operator [GBY_367] (rows=430 width=212) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Reducer 9 [SIMPLE_EDGE] - SHUFFLE [RS_69] + <-Reducer 10 [SIMPLE_EDGE] + SHUFFLE [RS_106] PartitionCols:_col0 - Group By Operator [GBY_68] (rows=430 width=212) + Group By Operator [GBY_105] (rows=430 width=212) Output:["_col0","_col1"],aggregations:["sum(_col7)"],keys:_col1 - Merge Join Operator [MERGEJOIN_300] (rows=373066 width=100) - Conds:RS_64._col0=RS_65._col3(Inner),Output:["_col1","_col7"] + Merge Join Operator [MERGEJOIN_301] (rows=189670 width=190) + Conds:RS_101._col0=RS_102._col2(Inner),Output:["_col1","_col7"] <-Reducer 2 [SIMPLE_EDGE] - SHUFFLE [RS_64] + SHUFFLE [RS_101] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_290] (rows=17170 width=104) Conds:RS_315._col1=RS_321._col0(Inner),Output:["_col0","_col1"] @@ -219,12 +213,12 @@ Stage-0 Output:["_col0","_col1"] TableScan [TS_0] (rows=462000 width=104) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_item_id"] - <-Reducer 16 [ONE_TO_ONE_EDGE] vectorized + <-Reducer 13 [ONE_TO_ONE_EDGE] vectorized FORWARD [RS_321] PartitionCols:_col0 Group By Operator [GBY_320] (rows=11550 width=100) Output:["_col0"],keys:KEY._col0 - <-Map 15 [SIMPLE_EDGE] vectorized + <-Map 12 [SIMPLE_EDGE] vectorized SHUFFLE [RS_319] PartitionCols:_col0 Group By Operator [GBY_318] (rows=11550 width=100) @@ -236,28 +230,28 @@ Stage-0 TableScan [TS_2] (rows=462000 width=189) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_id","i_color"] <-Reducer 23 [SIMPLE_EDGE] - SHUFFLE [RS_65] - PartitionCols:_col3 - Select Operator [SEL_60] (rows=1550375 width=13) - Output:["_col3","_col4"] - Merge Join Operator [MERGEJOIN_295] (rows=1550375 width=13) - Conds:RS_57._col1=RS_342._col0(Inner),Output:["_col2","_col3"] - <-Map 28 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_342] + SHUFFLE [RS_102] + PartitionCols:_col2 + Select Operator [SEL_97] (rows=788222 width=110) + Output:["_col2","_col4"] + Merge Join Operator [MERGEJOIN_298] (rows=788222 width=110) + Conds:RS_94._col2=RS_345._col0(Inner),Output:["_col1","_col3"] + <-Map 25 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_345] PartitionCols:_col0 - Select Operator [SEL_339] (rows=8000000 width=4) + Select Operator [SEL_342] (rows=8000000 width=4) Output:["_col0"] - Filter Operator [FIL_338] (rows=8000000 width=112) + Filter Operator [FIL_341] (rows=8000000 width=112) predicate:(ca_gmt_offset = -8) TableScan [TS_15] (rows=40000000 width=112) default@customer_address,customer_address,Tbl:COMPLETE,Col:COMPLETE,Output:["ca_address_sk","ca_gmt_offset"] <-Reducer 22 [SIMPLE_EDGE] - SHUFFLE [RS_57] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_294] (rows=7751872 width=98) - Conds:RS_375._col0=RS_326._col0(Inner),Output:["_col1","_col2","_col3"] - <-Map 20 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_326] + SHUFFLE [RS_94] + PartitionCols:_col2 + Merge Join Operator [MERGEJOIN_297] (rows=3941109 width=118) + Conds:RS_366._col0=RS_328._col0(Inner),Output:["_col1","_col2","_col3"] + <-Map 17 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_328] PartitionCols:_col0 Select Operator [SEL_323] (rows=50 width=4) Output:["_col0"] @@ -265,134 +259,32 @@ Stage-0 predicate:((d_moy = 1) and (d_year = 2000)) TableScan [TS_12] (rows=73049 width=12) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] - <-Map 32 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_375] - PartitionCols:_col0 - Select Operator [SEL_374] (rows=285117733 width=123) - Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_373] (rows=285117733 width=123) - predicate:((cs_bill_addr_sk BETWEEN DynamicValue(RS_58_customer_address_ca_address_sk_min) AND DynamicValue(RS_58_customer_address_ca_address_sk_max) and in_bloom_filter(cs_bill_addr_sk, DynamicValue(RS_58_customer_address_ca_address_sk_bloom_filter))) and (cs_item_sk BETWEEN DynamicValue(RS_64_item_i_item_sk_min) AND DynamicValue(RS_64_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_64_item_i_item_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_55_date_dim_d_date_sk_min) AND DynamicValue(RS_55_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_55_date_dim_d_date_sk_bloom_filter))) and cs_bill_addr_sk is not null and cs_sold_date_sk is not null) - TableScan [TS_45] (rows=287989836 width=123) - default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_bill_addr_sk","cs_item_sk","cs_ext_sales_price"] - <-Reducer 11 [BROADCAST_EDGE] vectorized - BROADCAST [RS_372] - Group By Operator [GBY_371] (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] - 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=1000000)"] - Select Operator [SEL_235] (rows=17170 width=4) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_290] - <-Reducer 24 [BROADCAST_EDGE] vectorized - BROADCAST [RS_368] - Group By Operator [GBY_367] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 20 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_334] - Group By Operator [GBY_331] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_327] (rows=50 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_323] - <-Reducer 30 [BROADCAST_EDGE] vectorized - BROADCAST [RS_370] - Group By Operator [GBY_369] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=8000000)"] - <-Map 28 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_350] - Group By Operator [GBY_347] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=8000000)"] - Select Operator [SEL_343] (rows=8000000 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_339] - <-Reducer 13 [CONTAINS] vectorized - Reduce Output Operator [RS_390] - PartitionCols:_col0 - Group By Operator [GBY_389] (rows=430 width=212) - Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0 - Group By Operator [GBY_388] (rows=430 width=212) - Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Reducer 12 [SIMPLE_EDGE] - SHUFFLE [RS_106] - PartitionCols:_col0 - Group By Operator [GBY_105] (rows=430 width=212) - Output:["_col0","_col1"],aggregations:["sum(_col7)"],keys:_col1 - Merge Join Operator [MERGEJOIN_301] (rows=189670 width=190) - Conds:RS_101._col0=RS_102._col2(Inner),Output:["_col1","_col7"] - <-Reducer 2 [SIMPLE_EDGE] - SHUFFLE [RS_101] - PartitionCols:_col0 - Please refer to the previous Merge Join Operator [MERGEJOIN_290] - <-Reducer 26 [SIMPLE_EDGE] - SHUFFLE [RS_102] - PartitionCols:_col2 - Select Operator [SEL_97] (rows=788222 width=110) - Output:["_col2","_col4"] - Merge Join Operator [MERGEJOIN_298] (rows=788222 width=110) - Conds:RS_94._col2=RS_344._col0(Inner),Output:["_col1","_col3"] - <-Map 28 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_344] - PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_339] - <-Reducer 25 [SIMPLE_EDGE] - SHUFFLE [RS_94] - PartitionCols:_col2 - Merge Join Operator [MERGEJOIN_297] (rows=3941109 width=118) - Conds:RS_387._col0=RS_328._col0(Inner),Output:["_col1","_col2","_col3"] - <-Map 20 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_328] - PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_323] - <-Map 33 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_387] + <-Map 27 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_366] PartitionCols:_col0 - Select Operator [SEL_386] (rows=143931246 width=123) + Select Operator [SEL_365] (rows=143931246 width=123) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_385] (rows=143931246 width=123) - predicate:((ws_bill_addr_sk BETWEEN DynamicValue(RS_95_customer_address_ca_address_sk_min) AND DynamicValue(RS_95_customer_address_ca_address_sk_max) and in_bloom_filter(ws_bill_addr_sk, DynamicValue(RS_95_customer_address_ca_address_sk_bloom_filter))) and (ws_item_sk BETWEEN DynamicValue(RS_101_item_i_item_sk_min) AND DynamicValue(RS_101_item_i_item_sk_max) and in_bloom_filter(ws_item_sk, DynamicValue(RS_101_item_i_item_sk_bloom_filter))) and (ws_sold_date_sk BETWEEN DynamicValue(RS_92_date_dim_d_date_sk_min) AND DynamicValue(RS_92_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_92_date_dim_d_date_sk_bloom_filter))) and ws_bill_addr_sk is not null and ws_sold_date_sk is not null) + Filter Operator [FIL_364] (rows=143931246 width=123) + predicate:((ws_sold_date_sk BETWEEN DynamicValue(RS_92_date_dim_d_date_sk_min) AND DynamicValue(RS_92_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_92_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_82] (rows=144002668 width=123) default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_item_sk","ws_bill_addr_sk","ws_ext_sales_price"] - <-Reducer 14 [BROADCAST_EDGE] vectorized - BROADCAST [RS_384] - Group By Operator [GBY_383] (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] - SHUFFLE [RS_277] - Group By Operator [GBY_276] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_275] (rows=17170 width=4) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_290] - <-Reducer 27 [BROADCAST_EDGE] vectorized - BROADCAST [RS_380] - Group By Operator [GBY_379] (rows=1 width=12) + <-Reducer 24 [BROADCAST_EDGE] vectorized + BROADCAST [RS_363] + Group By Operator [GBY_362] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 20 [CUSTOM_SIMPLE_EDGE] vectorized + <-Map 17 [CUSTOM_SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_335] 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_329] (rows=50 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_323] - <-Reducer 31 [BROADCAST_EDGE] vectorized - BROADCAST [RS_382] - Group By Operator [GBY_381] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=8000000)"] - <-Map 28 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_351] - Group By Operator [GBY_348] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=8000000)"] - Select Operator [SEL_345] (rows=8000000 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_339] <-Reducer 4 [CONTAINS] vectorized - Reduce Output Operator [RS_361] + Reduce Output Operator [RS_348] PartitionCols:_col0 - Group By Operator [GBY_360] (rows=430 width=212) + Group By Operator [GBY_347] (rows=430 width=212) Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0 - Group By Operator [GBY_359] (rows=430 width=212) + Group By Operator [GBY_346] (rows=430 width=212) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_33] @@ -405,66 +297,102 @@ Stage-0 SHUFFLE [RS_28] PartitionCols:_col0 Please refer to the previous Merge Join Operator [MERGEJOIN_290] - <-Reducer 19 [SIMPLE_EDGE] + <-Reducer 16 [SIMPLE_EDGE] SHUFFLE [RS_29] PartitionCols:_col2 Select Operator [SEL_24] (rows=2876890 width=4) Output:["_col2","_col4"] Merge Join Operator [MERGEJOIN_292] (rows=2876890 width=4) - Conds:RS_21._col2=RS_340._col0(Inner),Output:["_col1","_col3"] - <-Map 28 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_340] + Conds:RS_21._col2=RS_343._col0(Inner),Output:["_col1","_col3"] + <-Map 25 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_343] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_339] - <-Reducer 18 [SIMPLE_EDGE] + Please refer to the previous Select Operator [SEL_342] + <-Reducer 15 [SIMPLE_EDGE] SHUFFLE [RS_21] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_291] (rows=14384447 width=4) - Conds:RS_358._col0=RS_324._col0(Inner),Output:["_col1","_col2","_col3"] - <-Map 20 [SIMPLE_EDGE] vectorized + Conds:RS_340._col0=RS_324._col0(Inner),Output:["_col1","_col2","_col3"] + <-Map 17 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_324] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_323] - <-Map 17 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_358] + <-Map 14 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_340] PartitionCols:_col0 - Select Operator [SEL_357] (rows=525327191 width=118) + Select Operator [SEL_339] (rows=525327191 width=118) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_356] (rows=525327191 width=118) - predicate:((ss_addr_sk BETWEEN DynamicValue(RS_22_customer_address_ca_address_sk_min) AND DynamicValue(RS_22_customer_address_ca_address_sk_max) and in_bloom_filter(ss_addr_sk, DynamicValue(RS_22_customer_address_ca_address_sk_bloom_filter))) and (ss_item_sk BETWEEN DynamicValue(RS_28_item_i_item_sk_min) AND DynamicValue(RS_28_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_28_item_i_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_19_date_dim_d_date_sk_min) AND DynamicValue(RS_19_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_19_date_dim_d_date_sk_bloom_filter))) and ss_addr_sk is not null and ss_sold_date_sk is not null) + Filter Operator [FIL_338] (rows=525327191 width=118) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_19_date_dim_d_date_sk_min) AND DynamicValue(RS_19_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_19_date_dim_d_date_sk_bloom_filter))) and ss_addr_sk is not null and ss_sold_date_sk is not null) TableScan [TS_9] (rows=575995635 width=118) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_addr_sk","ss_ext_sales_price"] - <-Reducer 21 [BROADCAST_EDGE] vectorized + <-Reducer 18 [BROADCAST_EDGE] vectorized BROADCAST [RS_337] Group By Operator [GBY_336] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 20 [CUSTOM_SIMPLE_EDGE] vectorized + <-Map 17 [CUSTOM_SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_333] Group By Operator [GBY_330] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] Select Operator [SEL_325] (rows=50 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_323] - <-Reducer 29 [BROADCAST_EDGE] vectorized - BROADCAST [RS_353] - Group By Operator [GBY_352] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=8000000)"] - <-Map 28 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_349] - Group By Operator [GBY_346] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=8000000)"] - Select Operator [SEL_341] (rows=8000000 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_339] - <-Reducer 8 [BROADCAST_EDGE] vectorized + <-Reducer 9 [CONTAINS] vectorized + Reduce Output Operator [RS_361] + PartitionCols:_col0 + Group By Operator [GBY_360] (rows=430 width=212) + Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0 + Group By Operator [GBY_359] (rows=430 width=212) + Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 + <-Reducer 8 [SIMPLE_EDGE] + SHUFFLE [RS_69] + PartitionCols:_col0 + Group By Operator [GBY_68] (rows=430 width=212) + Output:["_col0","_col1"],aggregations:["sum(_col7)"],keys:_col1 + Merge Join Operator [MERGEJOIN_300] (rows=373066 width=100) + Conds:RS_64._col0=RS_65._col3(Inner),Output:["_col1","_col7"] + <-Reducer 2 [SIMPLE_EDGE] + SHUFFLE [RS_64] + PartitionCols:_col0 + Please refer to the previous Merge Join Operator [MERGEJOIN_290] + <-Reducer 20 [SIMPLE_EDGE] + SHUFFLE [RS_65] + PartitionCols:_col3 + Select Operator [SEL_60] (rows=1550375 width=13) + Output:["_col3","_col4"] + Merge Join Operator [MERGEJOIN_295] (rows=1550375 width=13) + Conds:RS_57._col1=RS_344._col0(Inner),Output:["_col2","_col3"] + <-Map 25 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_344] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_342] + <-Reducer 19 [SIMPLE_EDGE] + SHUFFLE [RS_57] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_294] (rows=7751872 width=98) + Conds:RS_358._col0=RS_326._col0(Inner),Output:["_col1","_col2","_col3"] + <-Map 17 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_326] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_323] + <-Map 26 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_358] + PartitionCols:_col0 + Select Operator [SEL_357] (rows=285117733 width=123) + Output:["_col0","_col1","_col2","_col3"] + Filter Operator [FIL_356] (rows=285117733 width=123) + predicate:((cs_sold_date_sk BETWEEN DynamicValue(RS_55_date_dim_d_date_sk_min) AND DynamicValue(RS_55_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_55_date_dim_d_date_sk_bloom_filter))) and cs_bill_addr_sk is not null and cs_sold_date_sk is not null) + TableScan [TS_45] (rows=287989836 width=123) + default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_bill_addr_sk","cs_item_sk","cs_ext_sales_price"] + <-Reducer 21 [BROADCAST_EDGE] vectorized BROADCAST [RS_355] Group By Operator [GBY_354] (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] - SHUFFLE [RS_197] - Group By Operator [GBY_196] (rows=1 width=12) + <-Map 17 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_334] + Group By Operator [GBY_331] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_195] (rows=17170 width=4) + Select Operator [SEL_327] (rows=50 width=4) Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_290] + Please refer to the previous Select Operator [SEL_323] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query60.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query60.q.out index 5ba912a105..4e68dcafbd 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query60.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query60.q.out @@ -169,68 +169,62 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 17 <- Reducer 21 (BROADCAST_EDGE), Reducer 29 (BROADCAST_EDGE), Reducer 8 (BROADCAST_EDGE) -Map 32 <- Reducer 11 (BROADCAST_EDGE), Reducer 24 (BROADCAST_EDGE), Reducer 30 (BROADCAST_EDGE) -Map 33 <- Reducer 14 (BROADCAST_EDGE), Reducer 27 (BROADCAST_EDGE), Reducer 31 (BROADCAST_EDGE) -Reducer 10 <- Reducer 9 (SIMPLE_EDGE), Union 5 (CONTAINS) -Reducer 11 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) -Reducer 12 <- Reducer 2 (SIMPLE_EDGE), Reducer 26 (SIMPLE_EDGE) -Reducer 13 <- Reducer 12 (SIMPLE_EDGE), Union 5 (CONTAINS) -Reducer 14 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) -Reducer 16 <- Map 15 (SIMPLE_EDGE) -Reducer 18 <- Map 17 (SIMPLE_EDGE), Map 20 (SIMPLE_EDGE) -Reducer 19 <- Map 28 (SIMPLE_EDGE), Reducer 18 (SIMPLE_EDGE) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 16 (ONE_TO_ONE_EDGE) -Reducer 21 <- Map 20 (CUSTOM_SIMPLE_EDGE) -Reducer 22 <- Map 20 (SIMPLE_EDGE), Map 32 (SIMPLE_EDGE) -Reducer 23 <- Map 28 (SIMPLE_EDGE), Reducer 22 (SIMPLE_EDGE) -Reducer 24 <- Map 20 (CUSTOM_SIMPLE_EDGE) -Reducer 25 <- Map 20 (SIMPLE_EDGE), Map 33 (SIMPLE_EDGE) -Reducer 26 <- Map 28 (SIMPLE_EDGE), Reducer 25 (SIMPLE_EDGE) -Reducer 27 <- Map 20 (CUSTOM_SIMPLE_EDGE) -Reducer 29 <- Map 28 (CUSTOM_SIMPLE_EDGE) -Reducer 3 <- Reducer 19 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 30 <- Map 28 (CUSTOM_SIMPLE_EDGE) -Reducer 31 <- Map 28 (CUSTOM_SIMPLE_EDGE) +Map 14 <- Reducer 18 (BROADCAST_EDGE) +Map 26 <- Reducer 21 (BROADCAST_EDGE) +Map 27 <- Reducer 24 (BROADCAST_EDGE) +Reducer 10 <- Reducer 2 (SIMPLE_EDGE), Reducer 23 (SIMPLE_EDGE) +Reducer 11 <- Reducer 10 (SIMPLE_EDGE), Union 5 (CONTAINS) +Reducer 13 <- Map 12 (SIMPLE_EDGE) +Reducer 15 <- Map 14 (SIMPLE_EDGE), Map 17 (SIMPLE_EDGE) +Reducer 16 <- Map 25 (SIMPLE_EDGE), Reducer 15 (SIMPLE_EDGE) +Reducer 18 <- Map 17 (CUSTOM_SIMPLE_EDGE) +Reducer 19 <- Map 17 (SIMPLE_EDGE), Map 26 (SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 13 (ONE_TO_ONE_EDGE) +Reducer 20 <- Map 25 (SIMPLE_EDGE), Reducer 19 (SIMPLE_EDGE) +Reducer 21 <- Map 17 (CUSTOM_SIMPLE_EDGE) +Reducer 22 <- Map 17 (SIMPLE_EDGE), Map 27 (SIMPLE_EDGE) +Reducer 23 <- Map 25 (SIMPLE_EDGE), Reducer 22 (SIMPLE_EDGE) +Reducer 24 <- Map 17 (CUSTOM_SIMPLE_EDGE) +Reducer 3 <- Reducer 16 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Union 5 (CONTAINS) Reducer 6 <- Union 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) -Reducer 8 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) -Reducer 9 <- Reducer 2 (SIMPLE_EDGE), Reducer 23 (SIMPLE_EDGE) +Reducer 8 <- Reducer 2 (SIMPLE_EDGE), Reducer 20 (SIMPLE_EDGE) +Reducer 9 <- Reducer 8 (SIMPLE_EDGE), Union 5 (CONTAINS) Stage-0 Fetch Operator limit:100 Stage-1 Reducer 7 vectorized - File Output Operator [FS_371] - Limit [LIM_370] (rows=100 width=212) + File Output Operator [FS_358] + Limit [LIM_357] (rows=100 width=212) Number of rows:100 - Select Operator [SEL_369] (rows=1717 width=212) + Select Operator [SEL_356] (rows=1717 width=212) Output:["_col0","_col1"] <-Reducer 6 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_368] - Group By Operator [GBY_367] (rows=1717 width=212) + SHUFFLE [RS_355] + Group By Operator [GBY_354] (rows=1717 width=212) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 <-Union 5 [SIMPLE_EDGE] - <-Reducer 10 [CONTAINS] vectorized - Reduce Output Operator [RS_384] + <-Reducer 11 [CONTAINS] vectorized + Reduce Output Operator [RS_376] PartitionCols:_col0 - Group By Operator [GBY_383] (rows=1717 width=212) + Group By Operator [GBY_375] (rows=1717 width=212) Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0 - Top N Key Operator [TNK_382] (rows=5151 width=212) + Top N Key Operator [TNK_374] (rows=5151 width=212) keys:_col0,sort order:+,top n:100 - Group By Operator [GBY_381] (rows=1717 width=212) + Group By Operator [GBY_373] (rows=1717 width=212) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Reducer 9 [SIMPLE_EDGE] - SHUFFLE [RS_69] + <-Reducer 10 [SIMPLE_EDGE] + SHUFFLE [RS_106] PartitionCols:_col0 - Group By Operator [GBY_68] (rows=1717 width=212) + Group By Operator [GBY_105] (rows=1717 width=212) Output:["_col0","_col1"],aggregations:["sum(_col7)"],keys:_col1 - Merge Join Operator [MERGEJOIN_301] (rows=746132 width=100) - Conds:RS_64._col0=RS_65._col3(Inner),Output:["_col1","_col7"] + Merge Join Operator [MERGEJOIN_302] (rows=379339 width=201) + Conds:RS_101._col0=RS_102._col2(Inner),Output:["_col1","_col7"] <-Reducer 2 [SIMPLE_EDGE] - SHUFFLE [RS_64] + SHUFFLE [RS_101] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_291] (rows=34340 width=104) Conds:RS_319._col1=RS_325._col0(Inner),Output:["_col0","_col1"] @@ -241,12 +235,12 @@ Stage-0 Output:["_col0","_col1"] TableScan [TS_0] (rows=462000 width=104) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_item_id"] - <-Reducer 16 [ONE_TO_ONE_EDGE] vectorized + <-Reducer 13 [ONE_TO_ONE_EDGE] vectorized FORWARD [RS_325] PartitionCols:_col0 Group By Operator [GBY_324] (rows=23100 width=100) Output:["_col0"],keys:KEY._col0 - <-Map 15 [SIMPLE_EDGE] vectorized + <-Map 12 [SIMPLE_EDGE] vectorized SHUFFLE [RS_323] PartitionCols:_col0 Group By Operator [GBY_322] (rows=23100 width=100) @@ -258,28 +252,28 @@ Stage-0 TableScan [TS_2] (rows=462000 width=190) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_id","i_category"] <-Reducer 23 [SIMPLE_EDGE] - SHUFFLE [RS_65] - PartitionCols:_col3 - Select Operator [SEL_60] (rows=1550375 width=13) - Output:["_col3","_col4"] - Merge Join Operator [MERGEJOIN_296] (rows=1550375 width=13) - Conds:RS_57._col1=RS_346._col0(Inner),Output:["_col2","_col3"] - <-Map 28 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_346] + SHUFFLE [RS_102] + PartitionCols:_col2 + Select Operator [SEL_97] (rows=788222 width=110) + Output:["_col2","_col4"] + Merge Join Operator [MERGEJOIN_299] (rows=788222 width=110) + Conds:RS_94._col2=RS_349._col0(Inner),Output:["_col1","_col3"] + <-Map 25 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_349] PartitionCols:_col0 - Select Operator [SEL_343] (rows=8000000 width=4) + Select Operator [SEL_346] (rows=8000000 width=4) Output:["_col0"] - Filter Operator [FIL_342] (rows=8000000 width=112) + Filter Operator [FIL_345] (rows=8000000 width=112) predicate:(ca_gmt_offset = -6) TableScan [TS_15] (rows=40000000 width=112) default@customer_address,customer_address,Tbl:COMPLETE,Col:COMPLETE,Output:["ca_address_sk","ca_gmt_offset"] <-Reducer 22 [SIMPLE_EDGE] - SHUFFLE [RS_57] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_295] (rows=7751872 width=98) - Conds:RS_380._col0=RS_330._col0(Inner),Output:["_col1","_col2","_col3"] - <-Map 20 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_330] + SHUFFLE [RS_94] + PartitionCols:_col2 + Merge Join Operator [MERGEJOIN_298] (rows=3941109 width=118) + Conds:RS_372._col0=RS_332._col0(Inner),Output:["_col1","_col2","_col3"] + <-Map 17 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_332] PartitionCols:_col0 Select Operator [SEL_327] (rows=50 width=4) Output:["_col0"] @@ -287,138 +281,34 @@ Stage-0 predicate:((d_moy = 9) and (d_year = 1999)) TableScan [TS_12] (rows=73049 width=12) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] - <-Map 32 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_380] - PartitionCols:_col0 - Select Operator [SEL_379] (rows=285117733 width=123) - Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_378] (rows=285117733 width=123) - predicate:((cs_bill_addr_sk BETWEEN DynamicValue(RS_58_customer_address_ca_address_sk_min) AND DynamicValue(RS_58_customer_address_ca_address_sk_max) and in_bloom_filter(cs_bill_addr_sk, DynamicValue(RS_58_customer_address_ca_address_sk_bloom_filter))) and (cs_item_sk BETWEEN DynamicValue(RS_64_item_i_item_sk_min) AND DynamicValue(RS_64_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_64_item_i_item_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_55_date_dim_d_date_sk_min) AND DynamicValue(RS_55_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_55_date_dim_d_date_sk_bloom_filter))) and cs_bill_addr_sk is not null and cs_sold_date_sk is not null) - TableScan [TS_45] (rows=287989836 width=123) - default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_bill_addr_sk","cs_item_sk","cs_ext_sales_price"] - <-Reducer 11 [BROADCAST_EDGE] vectorized - BROADCAST [RS_377] - Group By Operator [GBY_376] (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] - SHUFFLE [RS_238] - Group By Operator [GBY_237] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_236] (rows=34340 width=4) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_291] - <-Reducer 24 [BROADCAST_EDGE] vectorized - BROADCAST [RS_373] - Group By Operator [GBY_372] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 20 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_338] - Group By Operator [GBY_335] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_331] (rows=50 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_327] - <-Reducer 30 [BROADCAST_EDGE] vectorized - BROADCAST [RS_375] - Group By Operator [GBY_374] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=8000000)"] - <-Map 28 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_354] - Group By Operator [GBY_351] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=8000000)"] - Select Operator [SEL_347] (rows=8000000 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_343] - <-Reducer 13 [CONTAINS] vectorized - Reduce Output Operator [RS_397] - PartitionCols:_col0 - Group By Operator [GBY_396] (rows=1717 width=212) - Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0 - Top N Key Operator [TNK_395] (rows=5151 width=212) - keys:_col0,sort order:+,top n:100 - Group By Operator [GBY_394] (rows=1717 width=212) - Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Reducer 12 [SIMPLE_EDGE] - SHUFFLE [RS_106] - PartitionCols:_col0 - Group By Operator [GBY_105] (rows=1717 width=212) - Output:["_col0","_col1"],aggregations:["sum(_col7)"],keys:_col1 - Merge Join Operator [MERGEJOIN_302] (rows=379339 width=201) - Conds:RS_101._col0=RS_102._col2(Inner),Output:["_col1","_col7"] - <-Reducer 2 [SIMPLE_EDGE] - SHUFFLE [RS_101] - PartitionCols:_col0 - Please refer to the previous Merge Join Operator [MERGEJOIN_291] - <-Reducer 26 [SIMPLE_EDGE] - SHUFFLE [RS_102] - PartitionCols:_col2 - Select Operator [SEL_97] (rows=788222 width=110) - Output:["_col2","_col4"] - Merge Join Operator [MERGEJOIN_299] (rows=788222 width=110) - Conds:RS_94._col2=RS_348._col0(Inner),Output:["_col1","_col3"] - <-Map 28 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_348] - PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_343] - <-Reducer 25 [SIMPLE_EDGE] - SHUFFLE [RS_94] - PartitionCols:_col2 - Merge Join Operator [MERGEJOIN_298] (rows=3941109 width=118) - Conds:RS_393._col0=RS_332._col0(Inner),Output:["_col1","_col2","_col3"] - <-Map 20 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_332] + <-Map 27 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_372] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_327] - <-Map 33 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_393] - PartitionCols:_col0 - Select Operator [SEL_392] (rows=143931246 width=123) + Select Operator [SEL_371] (rows=143931246 width=123) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_391] (rows=143931246 width=123) - predicate:((ws_bill_addr_sk BETWEEN DynamicValue(RS_95_customer_address_ca_address_sk_min) AND DynamicValue(RS_95_customer_address_ca_address_sk_max) and in_bloom_filter(ws_bill_addr_sk, DynamicValue(RS_95_customer_address_ca_address_sk_bloom_filter))) and (ws_item_sk BETWEEN DynamicValue(RS_101_item_i_item_sk_min) AND DynamicValue(RS_101_item_i_item_sk_max) and in_bloom_filter(ws_item_sk, DynamicValue(RS_101_item_i_item_sk_bloom_filter))) and (ws_sold_date_sk BETWEEN DynamicValue(RS_92_date_dim_d_date_sk_min) AND DynamicValue(RS_92_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_92_date_dim_d_date_sk_bloom_filter))) and ws_bill_addr_sk is not null and ws_sold_date_sk is not null) + Filter Operator [FIL_370] (rows=143931246 width=123) + predicate:((ws_sold_date_sk BETWEEN DynamicValue(RS_92_date_dim_d_date_sk_min) AND DynamicValue(RS_92_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_92_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_82] (rows=144002668 width=123) default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_item_sk","ws_bill_addr_sk","ws_ext_sales_price"] - <-Reducer 14 [BROADCAST_EDGE] vectorized - BROADCAST [RS_390] - Group By Operator [GBY_389] (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] - SHUFFLE [RS_278] - Group By Operator [GBY_277] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_276] (rows=34340 width=4) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_291] - <-Reducer 27 [BROADCAST_EDGE] vectorized - BROADCAST [RS_386] - Group By Operator [GBY_385] (rows=1 width=12) + <-Reducer 24 [BROADCAST_EDGE] vectorized + BROADCAST [RS_369] + Group By Operator [GBY_368] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 20 [CUSTOM_SIMPLE_EDGE] vectorized + <-Map 17 [CUSTOM_SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_339] Group By Operator [GBY_336] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] Select Operator [SEL_333] (rows=50 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_327] - <-Reducer 31 [BROADCAST_EDGE] vectorized - BROADCAST [RS_388] - Group By Operator [GBY_387] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=8000000)"] - <-Map 28 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_355] - Group By Operator [GBY_352] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=8000000)"] - Select Operator [SEL_349] (rows=8000000 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_343] <-Reducer 4 [CONTAINS] vectorized - Reduce Output Operator [RS_366] + Reduce Output Operator [RS_353] PartitionCols:_col0 - Group By Operator [GBY_365] (rows=1717 width=212) + Group By Operator [GBY_352] (rows=1717 width=212) Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0 - Top N Key Operator [TNK_364] (rows=5151 width=212) + Top N Key Operator [TNK_351] (rows=5151 width=212) keys:_col0,sort order:+,top n:100 - Group By Operator [GBY_363] (rows=1717 width=212) + Group By Operator [GBY_350] (rows=1717 width=212) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_33] @@ -431,66 +321,104 @@ Stage-0 SHUFFLE [RS_28] PartitionCols:_col0 Please refer to the previous Merge Join Operator [MERGEJOIN_291] - <-Reducer 19 [SIMPLE_EDGE] + <-Reducer 16 [SIMPLE_EDGE] SHUFFLE [RS_29] PartitionCols:_col2 Select Operator [SEL_24] (rows=2876890 width=4) Output:["_col2","_col4"] Merge Join Operator [MERGEJOIN_293] (rows=2876890 width=4) - Conds:RS_21._col2=RS_344._col0(Inner),Output:["_col1","_col3"] - <-Map 28 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_344] + Conds:RS_21._col2=RS_347._col0(Inner),Output:["_col1","_col3"] + <-Map 25 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_347] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_343] - <-Reducer 18 [SIMPLE_EDGE] + Please refer to the previous Select Operator [SEL_346] + <-Reducer 15 [SIMPLE_EDGE] SHUFFLE [RS_21] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_292] (rows=14384447 width=4) - Conds:RS_362._col0=RS_328._col0(Inner),Output:["_col1","_col2","_col3"] - <-Map 20 [SIMPLE_EDGE] vectorized + Conds:RS_344._col0=RS_328._col0(Inner),Output:["_col1","_col2","_col3"] + <-Map 17 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_328] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_327] - <-Map 17 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_362] + <-Map 14 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_344] PartitionCols:_col0 - Select Operator [SEL_361] (rows=525327191 width=118) + Select Operator [SEL_343] (rows=525327191 width=118) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_360] (rows=525327191 width=118) - predicate:((ss_addr_sk BETWEEN DynamicValue(RS_22_customer_address_ca_address_sk_min) AND DynamicValue(RS_22_customer_address_ca_address_sk_max) and in_bloom_filter(ss_addr_sk, DynamicValue(RS_22_customer_address_ca_address_sk_bloom_filter))) and (ss_item_sk BETWEEN DynamicValue(RS_28_item_i_item_sk_min) AND DynamicValue(RS_28_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_28_item_i_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_19_date_dim_d_date_sk_min) AND DynamicValue(RS_19_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_19_date_dim_d_date_sk_bloom_filter))) and ss_addr_sk is not null and ss_sold_date_sk is not null) + Filter Operator [FIL_342] (rows=525327191 width=118) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_19_date_dim_d_date_sk_min) AND DynamicValue(RS_19_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_19_date_dim_d_date_sk_bloom_filter))) and ss_addr_sk is not null and ss_sold_date_sk is not null) TableScan [TS_9] (rows=575995635 width=118) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_addr_sk","ss_ext_sales_price"] - <-Reducer 21 [BROADCAST_EDGE] vectorized + <-Reducer 18 [BROADCAST_EDGE] vectorized BROADCAST [RS_341] Group By Operator [GBY_340] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 20 [CUSTOM_SIMPLE_EDGE] vectorized + <-Map 17 [CUSTOM_SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_337] Group By Operator [GBY_334] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] Select Operator [SEL_329] (rows=50 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_327] - <-Reducer 29 [BROADCAST_EDGE] vectorized - BROADCAST [RS_357] - Group By Operator [GBY_356] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=8000000)"] - <-Map 28 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_353] - Group By Operator [GBY_350] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=8000000)"] - Select Operator [SEL_345] (rows=8000000 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_343] - <-Reducer 8 [BROADCAST_EDGE] vectorized - BROADCAST [RS_359] - Group By Operator [GBY_358] (rows=1 width=12) + <-Reducer 9 [CONTAINS] vectorized + Reduce Output Operator [RS_367] + PartitionCols:_col0 + Group By Operator [GBY_366] (rows=1717 width=212) + Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0 + Top N Key Operator [TNK_365] (rows=5151 width=212) + keys:_col0,sort order:+,top n:100 + Group By Operator [GBY_364] (rows=1717 width=212) + Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 + <-Reducer 8 [SIMPLE_EDGE] + SHUFFLE [RS_69] + PartitionCols:_col0 + Group By Operator [GBY_68] (rows=1717 width=212) + Output:["_col0","_col1"],aggregations:["sum(_col7)"],keys:_col1 + Merge Join Operator [MERGEJOIN_301] (rows=746132 width=100) + Conds:RS_64._col0=RS_65._col3(Inner),Output:["_col1","_col7"] + <-Reducer 2 [SIMPLE_EDGE] + SHUFFLE [RS_64] + PartitionCols:_col0 + Please refer to the previous Merge Join Operator [MERGEJOIN_291] + <-Reducer 20 [SIMPLE_EDGE] + SHUFFLE [RS_65] + PartitionCols:_col3 + Select Operator [SEL_60] (rows=1550375 width=13) + Output:["_col3","_col4"] + Merge Join Operator [MERGEJOIN_296] (rows=1550375 width=13) + Conds:RS_57._col1=RS_348._col0(Inner),Output:["_col2","_col3"] + <-Map 25 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_348] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_346] + <-Reducer 19 [SIMPLE_EDGE] + SHUFFLE [RS_57] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_295] (rows=7751872 width=98) + Conds:RS_363._col0=RS_330._col0(Inner),Output:["_col1","_col2","_col3"] + <-Map 17 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_330] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_327] + <-Map 26 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_363] + PartitionCols:_col0 + Select Operator [SEL_362] (rows=285117733 width=123) + Output:["_col0","_col1","_col2","_col3"] + Filter Operator [FIL_361] (rows=285117733 width=123) + predicate:((cs_sold_date_sk BETWEEN DynamicValue(RS_55_date_dim_d_date_sk_min) AND DynamicValue(RS_55_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_55_date_dim_d_date_sk_bloom_filter))) and cs_bill_addr_sk is not null and cs_sold_date_sk is not null) + TableScan [TS_45] (rows=287989836 width=123) + default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_bill_addr_sk","cs_item_sk","cs_ext_sales_price"] + <-Reducer 21 [BROADCAST_EDGE] vectorized + BROADCAST [RS_360] + Group By Operator [GBY_359] (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] - SHUFFLE [RS_198] - Group By Operator [GBY_197] (rows=1 width=12) + <-Map 17 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_338] + Group By Operator [GBY_335] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_196] (rows=34340 width=4) + Select Operator [SEL_331] (rows=50 width=4) Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_291] + Please refer to the previous Select Operator [SEL_327] 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 95a2a747cd..5625306682 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 @@ -104,40 +104,34 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 12 <- Reducer 18 (BROADCAST_EDGE), Reducer 24 (BROADCAST_EDGE), Reducer 27 (BROADCAST_EDGE), Reducer 7 (BROADCAST_EDGE) -Map 30 <- Reducer 10 (BROADCAST_EDGE), Reducer 22 (BROADCAST_EDGE), Reducer 25 (BROADCAST_EDGE), Reducer 28 (BROADCAST_EDGE) -Reducer 10 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) -Reducer 13 <- Map 12 (SIMPLE_EDGE), Map 17 (SIMPLE_EDGE) +Map 10 <- Reducer 16 (BROADCAST_EDGE) +Map 24 <- Reducer 20 (BROADCAST_EDGE) +Reducer 11 <- Map 10 (SIMPLE_EDGE), Map 15 (SIMPLE_EDGE) +Reducer 12 <- Map 21 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE) +Reducer 13 <- Map 22 (SIMPLE_EDGE), Reducer 12 (SIMPLE_EDGE) Reducer 14 <- Map 23 (SIMPLE_EDGE), Reducer 13 (SIMPLE_EDGE) -Reducer 15 <- Map 26 (SIMPLE_EDGE), Reducer 14 (SIMPLE_EDGE) -Reducer 16 <- Map 29 (SIMPLE_EDGE), Reducer 15 (SIMPLE_EDGE) -Reducer 18 <- Map 17 (CUSTOM_SIMPLE_EDGE) -Reducer 19 <- Map 17 (SIMPLE_EDGE), Map 30 (SIMPLE_EDGE) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 11 (SIMPLE_EDGE) -Reducer 20 <- Map 23 (SIMPLE_EDGE), Reducer 19 (SIMPLE_EDGE) -Reducer 21 <- Map 26 (SIMPLE_EDGE), Reducer 20 (SIMPLE_EDGE) -Reducer 22 <- Map 17 (CUSTOM_SIMPLE_EDGE) -Reducer 24 <- Map 23 (CUSTOM_SIMPLE_EDGE) -Reducer 25 <- Map 23 (CUSTOM_SIMPLE_EDGE) -Reducer 27 <- Map 26 (CUSTOM_SIMPLE_EDGE) -Reducer 28 <- Map 26 (CUSTOM_SIMPLE_EDGE) -Reducer 3 <- Reducer 16 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 16 <- Map 15 (CUSTOM_SIMPLE_EDGE) +Reducer 17 <- Map 15 (SIMPLE_EDGE), Map 24 (SIMPLE_EDGE) +Reducer 18 <- Map 21 (SIMPLE_EDGE), Reducer 17 (SIMPLE_EDGE) +Reducer 19 <- Map 22 (SIMPLE_EDGE), Reducer 18 (SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 9 (SIMPLE_EDGE) +Reducer 20 <- Map 15 (CUSTOM_SIMPLE_EDGE) +Reducer 3 <- Reducer 14 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (CUSTOM_SIMPLE_EDGE) -Reducer 5 <- Reducer 4 (CUSTOM_SIMPLE_EDGE), Reducer 9 (CUSTOM_SIMPLE_EDGE) +Reducer 5 <- Reducer 4 (CUSTOM_SIMPLE_EDGE), Reducer 8 (CUSTOM_SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) -Reducer 7 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) -Reducer 8 <- Reducer 2 (SIMPLE_EDGE), Reducer 21 (SIMPLE_EDGE) -Reducer 9 <- Reducer 8 (CUSTOM_SIMPLE_EDGE) +Reducer 7 <- Reducer 19 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 8 <- Reducer 7 (CUSTOM_SIMPLE_EDGE) Stage-0 Fetch Operator limit:100 Stage-1 Reducer 6 vectorized - File Output Operator [FS_334] - Limit [LIM_333] (rows=1 width=336) + File Output Operator [FS_310] + Limit [LIM_309] (rows=1 width=336) Number of rows:100 - Select Operator [SEL_332] (rows=1 width=336) + Select Operator [SEL_308] (rows=1 width=336) Output:["_col0","_col1","_col2"] <-Reducer 5 [SIMPLE_EDGE] SHUFFLE [RS_88] @@ -146,8 +140,8 @@ Stage-0 Merge Join Operator [MERGEJOIN_266] (rows=1 width=224) Conds:(Inner),Output:["_col0","_col1"] <-Reducer 4 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_318] - Group By Operator [GBY_317] (rows=1 width=112) + PARTITION_ONLY_SHUFFLE [RS_300] + Group By Operator [GBY_299] (rows=1 width=112) Output:["_col0"],aggregations:["sum(VALUE._col0)"] <-Reducer 3 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_42] @@ -169,7 +163,7 @@ Stage-0 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 + <-Map 9 [SIMPLE_EDGE] vectorized SHUFFLE [RS_272] PartitionCols:_col0 Select Operator [SEL_271] (rows=8000000 width=4) @@ -178,54 +172,54 @@ Stage-0 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] + <-Reducer 14 [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] + Conds:RS_30._col4=RS_298._col0(Inner),Output:["_col2","_col5"] + <-Map 23 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_298] PartitionCols:_col0 - Select Operator [SEL_315] (rows=2300 width=4) + Select Operator [SEL_297] (rows=2300 width=4) Output:["_col0"] - Filter Operator [FIL_314] (rows=2300 width=259) + Filter Operator [FIL_296] (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] + <-Reducer 13 [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] + Conds:RS_27._col3=RS_294._col0(Inner),Output:["_col2","_col4","_col5"] + <-Map 22 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_294] PartitionCols:_col0 - Select Operator [SEL_298] (rows=341 width=4) + Select Operator [SEL_293] (rows=341 width=4) Output:["_col0"] - Filter Operator [FIL_297] (rows=341 width=115) + Filter Operator [FIL_292] (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] + <-Reducer 12 [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] + Conds:RS_24._col1=RS_290._col0(Inner),Output:["_col2","_col3","_col4","_col5"] + <-Map 21 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_290] PartitionCols:_col0 - Select Operator [SEL_286] (rows=46200 width=4) + Select Operator [SEL_289] (rows=46200 width=4) Output:["_col0"] - Filter Operator [FIL_285] (rows=46200 width=94) + Filter Operator [FIL_288] (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] + <-Reducer 11 [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 + Conds:RS_287._col0=RS_275._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5"] + <-Map 15 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_275] PartitionCols:_col0 Select Operator [SEL_274] (rows=50 width=4) @@ -234,64 +228,31 @@ Stage-0 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] + <-Map 10 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_287] PartitionCols:_col0 - Select Operator [SEL_312] (rows=479120970 width=126) + Select Operator [SEL_286] (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) + Filter Operator [FIL_285] (rows=479120970 width=126) + predicate:((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_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 + <-Reducer 16 [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 + <-Map 15 [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_331] - Group By Operator [GBY_330] (rows=1 width=112) + <-Reducer 8 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_307] + Group By Operator [GBY_306] (rows=1 width=112) Output:["_col0"],aggregations:["sum(VALUE._col0)"] - <-Reducer 8 [CUSTOM_SIMPLE_EDGE] + <-Reducer 7 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_81] Group By Operator [GBY_80] (rows=1 width=112) Output:["_col0"],aggregations:["sum(_col7)"] @@ -301,84 +262,51 @@ Stage-0 SHUFFLE [RS_76] PartitionCols:_col0 Please refer to the previous Merge Join Operator [MERGEJOIN_255] - <-Reducer 21 [SIMPLE_EDGE] + <-Reducer 19 [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] + Conds:RS_69._col3=RS_295._col0(Inner),Output:["_col2","_col4"] + <-Map 22 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_295] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_298] - <-Reducer 20 [SIMPLE_EDGE] + Please refer to the previous Select Operator [SEL_293] + <-Reducer 18 [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] + Conds:RS_66._col1=RS_291._col0(Inner),Output:["_col2","_col3","_col4"] + <-Map 21 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_291] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_286] - <-Reducer 19 [SIMPLE_EDGE] + Please refer to the previous Select Operator [SEL_289] + <-Reducer 17 [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 + Conds:RS_305._col0=RS_277._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + <-Map 15 [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] + <-Map 24 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_305] PartitionCols:_col0 - Select Operator [SEL_328] (rows=501694138 width=122) + Select Operator [SEL_304] (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) + Filter Operator [FIL_303] (rows=501694138 width=122) + predicate:((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_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) + <-Reducer 20 [BROADCAST_EDGE] vectorized + BROADCAST [RS_302] + Group By Operator [GBY_301] (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 + <-Map 15 [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/query63.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query63.q.out index a1f8413eb0..cb2029e34c 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query63.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query63.q.out @@ -67,23 +67,22 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 7 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) +Map 1 <- Reducer 7 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) Reducer 3 <- Map 8 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) Reducer 7 <- Map 6 (CUSTOM_SIMPLE_EDGE) -Reducer 9 <- Map 8 (CUSTOM_SIMPLE_EDGE) Stage-0 Fetch Operator limit:100 Stage-1 Reducer 5 vectorized - File Output Operator [FS_86] - Limit [LIM_85] (rows=71 width=228) + File Output Operator [FS_81] + Limit [LIM_80] (rows=71 width=228) Number of rows:100 - Select Operator [SEL_84] (rows=71 width=228) + Select Operator [SEL_79] (rows=71 width=228) Output:["_col0","_col1","_col2"] <-Reducer 4 [SIMPLE_EDGE] SHUFFLE [RS_27] @@ -105,13 +104,13 @@ Stage-0 Group By Operator [GBY_16] (rows=143 width=120) Output:["_col0","_col1","_col2"],aggregations:["sum(_col2)"],keys:_col4, _col6 Merge Join Operator [MERGEJOIN_62] (rows=129200 width=8) - Conds:RS_12._col0=RS_73._col0(Inner),Output:["_col2","_col4","_col6"] + Conds:RS_12._col0=RS_76._col0(Inner),Output:["_col2","_col4","_col6"] <-Map 8 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_73] + SHUFFLE [RS_76] PartitionCols:_col0 - Select Operator [SEL_72] (rows=317 width=8) + Select Operator [SEL_75] (rows=317 width=8) Output:["_col0","_col1"] - Filter Operator [FIL_71] (rows=317 width=12) + Filter Operator [FIL_74] (rows=317 width=12) predicate:(d_month_seq) IN (1212, 1213, 1214, 1215, 1216, 1217, 1218, 1219, 1220, 1221, 1222, 1223) TableScan [TS_6] (rows=73049 width=12) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_month_seq","d_moy"] @@ -119,7 +118,7 @@ Stage-0 SHUFFLE [RS_12] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_61] (rows=744232 width=4) - Conds:RS_81._col1=RS_65._col0(Inner),Output:["_col0","_col2","_col4"] + Conds:RS_73._col1=RS_65._col0(Inner),Output:["_col0","_col2","_col4"] <-Map 6 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_65] PartitionCols:_col0 @@ -130,12 +129,12 @@ Stage-0 TableScan [TS_3] (rows=462000 width=289) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_brand","i_class","i_category","i_manager_id"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_81] + SHUFFLE [RS_73] PartitionCols:_col1 - Select Operator [SEL_80] (rows=525329897 width=114) + Select Operator [SEL_72] (rows=525329897 width=114) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_79] (rows=525329897 width=118) - predicate:((ss_item_sk BETWEEN DynamicValue(RS_10_item_i_item_sk_min) AND DynamicValue(RS_10_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_10_item_i_item_sk_bloom_filter))) and (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_sold_date_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_71] (rows=525329897 width=118) + predicate:((ss_item_sk BETWEEN DynamicValue(RS_10_item_i_item_sk_min) AND DynamicValue(RS_10_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_10_item_i_item_sk_bloom_filter))) and ss_sold_date_sk is not null and ss_store_sk is not null) TableScan [TS_0] (rows=575995635 width=118) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_store_sk","ss_sales_price"] <-Reducer 7 [BROADCAST_EDGE] vectorized @@ -149,15 +148,4 @@ Stage-0 Select Operator [SEL_66] (rows=68 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_64] - <-Reducer 9 [BROADCAST_EDGE] vectorized - BROADCAST [RS_78] - Group By Operator [GBY_77] (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_76] - Group By Operator [GBY_75] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_74] (rows=317 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_72] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query64.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query64.q.out index aebd6b4137..af514601b4 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query64.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query64.q.out @@ -265,47 +265,40 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 33 <- Reducer 29 (BROADCAST_EDGE), Reducer 36 (BROADCAST_EDGE), Reducer 42 (BROADCAST_EDGE) -Map 39 <- Reducer 36 (BROADCAST_EDGE) -Map 50 <- Reducer 12 (BROADCAST_EDGE), Reducer 32 (BROADCAST_EDGE), Reducer 38 (BROADCAST_EDGE), Reducer 46 (BROADCAST_EDGE) -Map 51 <- Reducer 38 (BROADCAST_EDGE) -Reducer 10 <- Reducer 15 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) +Map 30 <- Reducer 33 (BROADCAST_EDGE) +Map 35 <- Reducer 33 (BROADCAST_EDGE) +Map 44 <- Reducer 34 (BROADCAST_EDGE) +Reducer 10 <- Reducer 14 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) Reducer 11 <- Reducer 10 (SIMPLE_EDGE) -Reducer 12 <- Reducer 9 (CUSTOM_SIMPLE_EDGE) -Reducer 13 <- Reducer 20 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) -Reducer 14 <- Map 49 (SIMPLE_EDGE), Reducer 13 (SIMPLE_EDGE) -Reducer 15 <- Reducer 14 (SIMPLE_EDGE) -Reducer 17 <- Map 16 (SIMPLE_EDGE), Reducer 23 (SIMPLE_EDGE) -Reducer 18 <- Map 48 (SIMPLE_EDGE), Reducer 17 (SIMPLE_EDGE) -Reducer 19 <- Map 16 (SIMPLE_EDGE), Reducer 25 (SIMPLE_EDGE) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 16 (SIMPLE_EDGE) -Reducer 20 <- Map 48 (SIMPLE_EDGE), Reducer 19 (SIMPLE_EDGE) -Reducer 22 <- Map 21 (SIMPLE_EDGE), Reducer 28 (SIMPLE_EDGE) -Reducer 23 <- Map 47 (SIMPLE_EDGE), Reducer 22 (SIMPLE_EDGE) -Reducer 24 <- Map 21 (SIMPLE_EDGE), Reducer 31 (SIMPLE_EDGE) -Reducer 25 <- Map 47 (SIMPLE_EDGE), Reducer 24 (SIMPLE_EDGE) -Reducer 27 <- Map 26 (SIMPLE_EDGE), Reducer 34 (SIMPLE_EDGE) -Reducer 28 <- Reducer 27 (SIMPLE_EDGE), Reducer 41 (ONE_TO_ONE_EDGE) -Reducer 29 <- Map 26 (CUSTOM_SIMPLE_EDGE) -Reducer 3 <- Map 21 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 30 <- Map 26 (SIMPLE_EDGE), Reducer 37 (SIMPLE_EDGE) -Reducer 31 <- Reducer 30 (SIMPLE_EDGE), Reducer 45 (ONE_TO_ONE_EDGE) -Reducer 32 <- Map 26 (CUSTOM_SIMPLE_EDGE) -Reducer 34 <- Map 33 (SIMPLE_EDGE), Map 35 (SIMPLE_EDGE) -Reducer 36 <- Map 35 (CUSTOM_SIMPLE_EDGE) -Reducer 37 <- Map 35 (SIMPLE_EDGE), Map 50 (SIMPLE_EDGE) -Reducer 38 <- Map 35 (CUSTOM_SIMPLE_EDGE) -Reducer 4 <- Map 26 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 40 <- Map 39 (SIMPLE_EDGE), Map 43 (SIMPLE_EDGE) -Reducer 41 <- Reducer 40 (SIMPLE_EDGE) -Reducer 42 <- Reducer 41 (CUSTOM_SIMPLE_EDGE) -Reducer 44 <- Map 43 (SIMPLE_EDGE), Map 51 (SIMPLE_EDGE) -Reducer 45 <- Reducer 44 (SIMPLE_EDGE) -Reducer 46 <- Reducer 45 (CUSTOM_SIMPLE_EDGE) -Reducer 5 <- Map 26 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) -Reducer 6 <- Map 49 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) -Reducer 7 <- Reducer 18 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) -Reducer 8 <- Map 49 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) +Reducer 12 <- Reducer 19 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) +Reducer 13 <- Map 43 (SIMPLE_EDGE), Reducer 12 (SIMPLE_EDGE) +Reducer 14 <- Reducer 13 (SIMPLE_EDGE) +Reducer 16 <- Map 15 (SIMPLE_EDGE), Reducer 22 (SIMPLE_EDGE) +Reducer 17 <- Map 42 (SIMPLE_EDGE), Reducer 16 (SIMPLE_EDGE) +Reducer 18 <- Map 15 (SIMPLE_EDGE), Reducer 24 (SIMPLE_EDGE) +Reducer 19 <- Map 42 (SIMPLE_EDGE), Reducer 18 (SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 15 (SIMPLE_EDGE) +Reducer 21 <- Map 20 (SIMPLE_EDGE), Reducer 27 (SIMPLE_EDGE) +Reducer 22 <- Map 41 (SIMPLE_EDGE), Reducer 21 (SIMPLE_EDGE) +Reducer 23 <- Map 20 (SIMPLE_EDGE), Reducer 29 (SIMPLE_EDGE) +Reducer 24 <- Map 41 (SIMPLE_EDGE), Reducer 23 (SIMPLE_EDGE) +Reducer 26 <- Map 25 (SIMPLE_EDGE), Reducer 31 (SIMPLE_EDGE) +Reducer 27 <- Reducer 26 (SIMPLE_EDGE), Reducer 37 (ONE_TO_ONE_EDGE) +Reducer 28 <- Map 25 (SIMPLE_EDGE), Reducer 31 (SIMPLE_EDGE) +Reducer 29 <- Reducer 28 (SIMPLE_EDGE), Reducer 40 (ONE_TO_ONE_EDGE) +Reducer 3 <- Map 20 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 31 <- Map 30 (SIMPLE_EDGE), Map 32 (SIMPLE_EDGE) +Reducer 33 <- Map 32 (CUSTOM_SIMPLE_EDGE) +Reducer 34 <- Map 32 (CUSTOM_SIMPLE_EDGE) +Reducer 36 <- Map 35 (SIMPLE_EDGE), Map 38 (SIMPLE_EDGE) +Reducer 37 <- Reducer 36 (SIMPLE_EDGE) +Reducer 39 <- Map 38 (SIMPLE_EDGE), Map 44 (SIMPLE_EDGE) +Reducer 4 <- Map 25 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 40 <- Reducer 39 (SIMPLE_EDGE) +Reducer 5 <- Map 25 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) +Reducer 6 <- Map 43 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) +Reducer 7 <- Reducer 17 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) +Reducer 8 <- Map 43 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) Reducer 9 <- Reducer 8 (SIMPLE_EDGE) Stage-0 @@ -313,8 +306,8 @@ Stage-0 limit:-1 Stage-1 Reducer 11 vectorized - File Output Operator [FS_1001] - Select Operator [SEL_1000] (rows=2169965329 width=1702) + File Output Operator [FS_971] + Select Operator [SEL_970] (rows=2169965329 width=1702) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17","_col18","_col19","_col20"] <-Reducer 10 [SIMPLE_EDGE] SHUFFLE [RS_199] @@ -323,52 +316,52 @@ Stage-0 Filter Operator [FIL_197] (rows=2169965329 width=1694) predicate:(_col19 <= _col12) Merge Join Operator [MERGEJOIN_897] (rows=6509895988 width=1694) - Conds:RS_971._col2, _col1, _col3=RS_999._col1, _col0, _col2(Inner),Output:["_col0","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col19","_col20","_col21","_col22"] - <-Reducer 9 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_971] - PartitionCols:_col2, _col1, _col3 - Select Operator [SEL_970] (rows=2299138 width=1354) - Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15"] - Group By Operator [GBY_969] (rows=2299138 width=1362) + Conds:RS_957._col2, _col1, _col3=RS_969._col1, _col0, _col2(Inner),Output:["_col0","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col19","_col20","_col21","_col22"] + <-Reducer 14 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_969] + PartitionCols:_col1, _col0, _col2 + Select Operator [SEL_968] (rows=2299138 width=525) + Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] + Group By Operator [GBY_967] (rows=2299138 width=1362) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17"],aggregations:["count(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)","sum(VALUE._col3)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4, KEY._col5, KEY._col6, KEY._col7, KEY._col8, KEY._col9, KEY._col10, KEY._col11, KEY._col12, KEY._col13 - <-Reducer 8 [SIMPLE_EDGE] - SHUFFLE [RS_94] + <-Reducer 13 [SIMPLE_EDGE] + SHUFFLE [RS_191] PartitionCols:_col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7, _col8, _col9, _col10, _col11, _col12, _col13 - Group By Operator [GBY_93] (rows=2299138 width=1362) + Group By Operator [GBY_190] (rows=2299138 width=1362) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17"],aggregations:["count()","sum(_col37)","sum(_col38)","sum(_col39)"],keys:_col26, _col40, _col27, _col7, _col8, _col9, _col10, _col13, _col15, _col21, _col22, _col23, _col24, _col41 - Select Operator [SEL_92] (rows=2331650 width=1292) + Select Operator [SEL_189] (rows=2331650 width=1292) Output:["_col7","_col8","_col9","_col10","_col13","_col15","_col21","_col22","_col23","_col24","_col26","_col27","_col37","_col38","_col39","_col40","_col41"] - Filter Operator [FIL_91] (rows=2331650 width=1292) + Filter Operator [FIL_188] (rows=2331650 width=1292) predicate:(_col45 <> _col17) - Merge Join Operator [MERGEJOIN_881] (rows=2331650 width=1292) - Conds:RS_88._col32=RS_926._col0(Inner),Output:["_col7","_col8","_col9","_col10","_col13","_col15","_col17","_col21","_col22","_col23","_col24","_col26","_col27","_col37","_col38","_col39","_col40","_col41","_col45"] - <-Map 49 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_926] + Merge Join Operator [MERGEJOIN_896] (rows=2331650 width=1292) + Conds:RS_185._col32=RS_922._col0(Inner),Output:["_col7","_col8","_col9","_col10","_col13","_col15","_col17","_col21","_col22","_col23","_col24","_col26","_col27","_col37","_col38","_col39","_col40","_col41","_col45"] + <-Map 43 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_922] PartitionCols:_col0 - Select Operator [SEL_925] (rows=1861800 width=89) + Select Operator [SEL_919] (rows=1861800 width=89) Output:["_col0","_col1"] TableScan [TS_68] (rows=1861800 width=89) default@customer_demographics,cd1,Tbl:COMPLETE,Col:COMPLETE,Output:["cd_demo_sk","cd_marital_status"] - <-Reducer 7 [SIMPLE_EDGE] - SHUFFLE [RS_88] + <-Reducer 12 [SIMPLE_EDGE] + SHUFFLE [RS_185] PartitionCols:_col32 - Merge Join Operator [MERGEJOIN_880] (rows=2299138 width=1205) - Conds:RS_85._col0=RS_86._col13(Inner),Output:["_col7","_col8","_col9","_col10","_col13","_col15","_col17","_col21","_col22","_col23","_col24","_col26","_col27","_col32","_col37","_col38","_col39","_col40","_col41"] + Merge Join Operator [MERGEJOIN_895] (rows=2299138 width=1205) + Conds:RS_182._col0=RS_183._col13(Inner),Output:["_col7","_col8","_col9","_col10","_col13","_col15","_col17","_col21","_col22","_col23","_col24","_col26","_col27","_col32","_col37","_col38","_col39","_col40","_col41"] <-Reducer 6 [SIMPLE_EDGE] - SHUFFLE [RS_85] + SHUFFLE [RS_182] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_871] (rows=70357394 width=458) - Conds:RS_82._col1=RS_927._col0(Inner),Output:["_col0","_col7","_col8","_col9","_col10","_col13","_col15","_col17"] - <-Map 49 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_927] + Conds:RS_82._col1=RS_921._col0(Inner),Output:["_col0","_col7","_col8","_col9","_col10","_col13","_col15","_col17"] + <-Map 43 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_921] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_925] + Please refer to the previous Select Operator [SEL_919] <-Reducer 5 [SIMPLE_EDGE] SHUFFLE [RS_82] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_870] (rows=69376329 width=376) Conds:RS_79._col4=RS_914._col0(Inner),Output:["_col0","_col1","_col7","_col8","_col9","_col10","_col13","_col15"] - <-Map 26 [SIMPLE_EDGE] vectorized + <-Map 25 [SIMPLE_EDGE] vectorized SHUFFLE [RS_914] PartitionCols:_col0 Select Operator [SEL_910] (rows=73049 width=8) @@ -380,7 +373,7 @@ Stage-0 PartitionCols:_col4 Merge Join Operator [MERGEJOIN_869] (rows=69376329 width=376) Conds:RS_76._col5=RS_913._col0(Inner),Output:["_col0","_col1","_col4","_col7","_col8","_col9","_col10","_col13"] - <-Map 26 [SIMPLE_EDGE] vectorized + <-Map 25 [SIMPLE_EDGE] vectorized SHUFFLE [RS_913] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_910] @@ -389,7 +382,7 @@ Stage-0 PartitionCols:_col5 Merge Join Operator [MERGEJOIN_868] (rows=69376329 width=376) Conds:RS_73._col2=RS_907._col0(Inner),Output:["_col0","_col1","_col4","_col5","_col7","_col8","_col9","_col10"] - <-Map 21 [SIMPLE_EDGE] vectorized + <-Map 20 [SIMPLE_EDGE] vectorized SHUFFLE [RS_907] PartitionCols:_col0 Select Operator [SEL_906] (rows=7200 width=4) @@ -403,7 +396,7 @@ Stage-0 PartitionCols:_col2 Merge Join Operator [MERGEJOIN_867] (rows=69376329 width=380) Conds:RS_900._col3=RS_902._col0(Inner),Output:["_col0","_col1","_col2","_col4","_col5","_col7","_col8","_col9","_col10"] - <-Map 16 [SIMPLE_EDGE] vectorized + <-Map 15 [SIMPLE_EDGE] vectorized SHUFFLE [RS_902] PartitionCols:_col0 Select Operator [SEL_901] (rows=40000000 width=365) @@ -419,340 +412,268 @@ Stage-0 predicate:(c_current_addr_sk is not null and c_current_cdemo_sk is not null and c_current_hdemo_sk is not null and c_first_sales_date_sk is not null and c_first_shipto_date_sk is not null) TableScan [TS_0] (rows=80000000 width=23) default@customer,customer,Tbl:COMPLETE,Col:COMPLETE,Output:["c_customer_sk","c_current_cdemo_sk","c_current_hdemo_sk","c_current_addr_sk","c_first_shipto_date_sk","c_first_sales_date_sk"] - <-Reducer 18 [SIMPLE_EDGE] - SHUFFLE [RS_86] + <-Reducer 19 [SIMPLE_EDGE] + SHUFFLE [RS_183] PartitionCols:_col13 - Select Operator [SEL_67] (rows=2651207 width=784) + Select Operator [SEL_164] (rows=2651207 width=784) Output:["_col3","_col4","_col5","_col6","_col8","_col9","_col13","_col14","_col19","_col20","_col21","_col22","_col23"] - Merge Join Operator [MERGEJOIN_879] (rows=2651207 width=784) - Conds:RS_64._col1, _col7=RS_967._col0, _col1(Inner),Output:["_col2","_col3","_col8","_col9","_col10","_col11","_col12","_col17","_col18","_col20","_col21","_col22","_col23"] - <-Map 48 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_967] + Merge Join Operator [MERGEJOIN_894] (rows=2651207 width=784) + Conds:RS_161._col1, _col7=RS_954._col0, _col1(Inner),Output:["_col2","_col3","_col8","_col9","_col10","_col11","_col12","_col17","_col18","_col20","_col21","_col22","_col23"] + <-Map 42 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_954] PartitionCols:_col0, _col1 - Select Operator [SEL_966] (rows=57591150 width=8) + Select Operator [SEL_952] (rows=57591150 width=8) Output:["_col0","_col1"] TableScan [TS_44] (rows=57591150 width=8) default@store_returns,store_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["sr_item_sk","sr_ticket_number"] - <-Reducer 17 [SIMPLE_EDGE] - SHUFFLE [RS_64] + <-Reducer 18 [SIMPLE_EDGE] + SHUFFLE [RS_161] PartitionCols:_col1, _col7 - Merge Join Operator [MERGEJOIN_878] (rows=1608052 width=657) - Conds:RS_61._col5=RS_903._col0(Inner),Output:["_col1","_col2","_col3","_col7","_col8","_col9","_col10","_col11","_col12","_col17","_col18","_col20","_col21","_col22","_col23"] - <-Map 16 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_903] + Merge Join Operator [MERGEJOIN_893] (rows=1608052 width=657) + Conds:RS_158._col5=RS_904._col0(Inner),Output:["_col1","_col2","_col3","_col7","_col8","_col9","_col10","_col11","_col12","_col17","_col18","_col20","_col21","_col22","_col23"] + <-Map 15 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_904] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_901] - <-Reducer 23 [SIMPLE_EDGE] - SHUFFLE [RS_61] + <-Reducer 24 [SIMPLE_EDGE] + SHUFFLE [RS_158] PartitionCols:_col5 - Merge Join Operator [MERGEJOIN_877] (rows=1608052 width=296) - Conds:RS_58._col6=RS_964._col0(Inner),Output:["_col1","_col2","_col3","_col5","_col7","_col8","_col9","_col10","_col11","_col12","_col17","_col18"] - <-Map 47 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_964] + Merge Join Operator [MERGEJOIN_892] (rows=1608052 width=296) + Conds:RS_155._col6=RS_951._col0(Inner),Output:["_col1","_col2","_col3","_col5","_col7","_col8","_col9","_col10","_col11","_col12","_col17","_col18"] + <-Map 41 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_951] PartitionCols:_col0 - Select Operator [SEL_963] (rows=1704 width=181) + Select Operator [SEL_949] (rows=1704 width=181) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_962] (rows=1704 width=181) + Filter Operator [FIL_948] (rows=1704 width=181) predicate:(s_store_name is not null and s_zip is not null) TableScan [TS_39] (rows=1704 width=181) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_store_name","s_zip"] - <-Reducer 22 [SIMPLE_EDGE] - SHUFFLE [RS_58] + <-Reducer 23 [SIMPLE_EDGE] + SHUFFLE [RS_155] PartitionCols:_col6 - Merge Join Operator [MERGEJOIN_876] (rows=1608052 width=119) - Conds:RS_55._col4=RS_908._col0(Inner),Output:["_col1","_col2","_col3","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12"] - <-Map 21 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_908] + Merge Join Operator [MERGEJOIN_891] (rows=1608052 width=119) + Conds:RS_152._col4=RS_909._col0(Inner),Output:["_col1","_col2","_col3","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12"] + <-Map 20 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_909] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_906] - <-Reducer 28 [SIMPLE_EDGE] - SHUFFLE [RS_55] + <-Reducer 29 [SIMPLE_EDGE] + SHUFFLE [RS_152] PartitionCols:_col4 - Merge Join Operator [MERGEJOIN_875] (rows=1608052 width=119) - Conds:RS_52._col1=RS_953._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12"] - <-Reducer 41 [ONE_TO_ONE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_953] + Merge Join Operator [MERGEJOIN_890] (rows=1608052 width=119) + Conds:RS_149._col1=RS_966._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12"] + <-Reducer 28 [SIMPLE_EDGE] + SHUFFLE [RS_149] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_888] (rows=1608052 width=119) + Conds:RS_146._col0=RS_918._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12"] + <-Map 25 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_918] + PartitionCols:_col0 + Select Operator [SEL_916] (rows=652 width=4) + Output:["_col0"] + Filter Operator [FIL_912] (rows=652 width=8) + predicate:(d_year = 2001) + Please refer to the previous TableScan [TS_8] + <-Reducer 31 [SIMPLE_EDGE] + SHUFFLE [RS_146] + PartitionCols:_col0 + Merge Join Operator [MERGEJOIN_872] (rows=4503592 width=119) + Conds:RS_937._col1=RS_925._col0(Inner),Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12"] + <-Map 32 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_925] + PartitionCols:_col0 + Select Operator [SEL_924] (rows=518 width=111) + Output:["_col0","_col1"] + Filter Operator [FIL_923] (rows=518 width=312) + predicate:((i_color) IN ('maroon', 'burnished', 'dim', 'steel', 'navajo', 'chocolate') and i_current_price BETWEEN 35 AND 45 and i_current_price BETWEEN 36 AND 50) + TableScan [TS_17] (rows=462000 width=311) + default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_current_price","i_color","i_product_name"] + <-Map 30 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_937] + PartitionCols:_col1 + Select Operator [SEL_936] (rows=417313408 width=351) + Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10"] + Filter Operator [FIL_935] (rows=417313408 width=355) + predicate:((ss_item_sk BETWEEN DynamicValue(RS_47_item_i_item_sk_min) AND DynamicValue(RS_47_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_47_item_i_item_sk_bloom_filter))) and ss_addr_sk is not null and ss_cdemo_sk is not null and ss_customer_sk is not null and ss_hdemo_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_14] (rows=575995635 width=355) + default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_customer_sk","ss_cdemo_sk","ss_hdemo_sk","ss_addr_sk","ss_store_sk","ss_promo_sk","ss_ticket_number","ss_wholesale_cost","ss_list_price","ss_coupon_amt"] + <-Reducer 33 [BROADCAST_EDGE] vectorized + BROADCAST [RS_933] + Group By Operator [GBY_932] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 32 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_930] + Group By Operator [GBY_928] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_926] (rows=518 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_924] + <-Reducer 40 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_966] PartitionCols:_col0 - Select Operator [SEL_952] (rows=13257 width=4) + Select Operator [SEL_965] (rows=13257 width=4) Output:["_col0"] - Filter Operator [FIL_951] (rows=13257 width=228) + Filter Operator [FIL_964] (rows=13257 width=228) predicate:(_col1 > (2 * _col2)) - Group By Operator [GBY_950] (rows=39773 width=228) + Group By Operator [GBY_963] (rows=39773 width=228) Output:["_col0","_col1","_col2"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)"],keys:KEY._col0 - <-Reducer 40 [SIMPLE_EDGE] - SHUFFLE [RS_32] + <-Reducer 39 [SIMPLE_EDGE] + SHUFFLE [RS_129] PartitionCols:_col0 - Group By Operator [GBY_31] (rows=6482999 width=228) + Group By Operator [GBY_128] (rows=6482999 width=228) Output:["_col0","_col1","_col2"],aggregations:["sum(_col2)","sum(_col5)"],keys:_col0 - Merge Join Operator [MERGEJOIN_874] (rows=183085709 width=227) - Conds:RS_946._col0, _col1=RS_948._col0, _col1(Inner),Output:["_col0","_col2","_col5"] - <-Map 43 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_948] + Merge Join Operator [MERGEJOIN_889] (rows=183085709 width=227) + Conds:RS_962._col0, _col1=RS_943._col0, _col1(Inner),Output:["_col0","_col2","_col5"] + <-Map 38 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_943] PartitionCols:_col0, _col1 - Select Operator [SEL_947] (rows=28798881 width=120) + Select Operator [SEL_941] (rows=28798881 width=120) Output:["_col0","_col1","_col2"] TableScan [TS_25] (rows=28798881 width=337) default@catalog_returns,catalog_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["cr_item_sk","cr_order_number","cr_refunded_cash","cr_reversed_charge","cr_store_credit"] - <-Map 39 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_946] + <-Map 44 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_962] PartitionCols:_col0, _col1 - Select Operator [SEL_945] (rows=287989836 width=119) + Select Operator [SEL_961] (rows=287989836 width=119) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_944] (rows=287989836 width=119) - predicate:(cs_item_sk BETWEEN DynamicValue(RS_47_item_i_item_sk_min) AND DynamicValue(RS_47_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_47_item_i_item_sk_bloom_filter))) - TableScan [TS_23] (rows=287989836 width=119) + Filter Operator [FIL_960] (rows=287989836 width=119) + predicate:(cs_item_sk BETWEEN DynamicValue(RS_144_item_i_item_sk_min) AND DynamicValue(RS_144_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_144_item_i_item_sk_bloom_filter))) + TableScan [TS_120] (rows=287989836 width=119) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_item_sk","cs_order_number","cs_ext_list_price"] - <-Reducer 36 [BROADCAST_EDGE] vectorized - BROADCAST [RS_941] - Group By Operator [GBY_939] (rows=1 width=12) + <-Reducer 34 [BROADCAST_EDGE] vectorized + BROADCAST [RS_959] + Group By Operator [GBY_958] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 35 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_937] - Group By Operator [GBY_935] (rows=1 width=12) + <-Map 32 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_931] + Group By Operator [GBY_929] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_932] (rows=518 width=4) + Select Operator [SEL_927] (rows=518 width=4) Output:["_col0"] - Select Operator [SEL_930] (rows=518 width=111) - Output:["_col0","_col1"] - Filter Operator [FIL_929] (rows=518 width=312) - predicate:((i_color) IN ('maroon', 'burnished', 'dim', 'steel', 'navajo', 'chocolate') and i_current_price BETWEEN 35 AND 45 and i_current_price BETWEEN 36 AND 50) - TableScan [TS_17] (rows=462000 width=311) - default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_current_price","i_color","i_product_name"] - <-Reducer 27 [SIMPLE_EDGE] - SHUFFLE [RS_52] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_873] (rows=1608052 width=119) - Conds:RS_49._col0=RS_917._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12"] - <-Map 26 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_917] - PartitionCols:_col0 - Select Operator [SEL_915] (rows=652 width=4) - Output:["_col0"] - Filter Operator [FIL_911] (rows=652 width=8) - predicate:(d_year = 2000) - Please refer to the previous TableScan [TS_8] - <-Reducer 34 [SIMPLE_EDGE] - SHUFFLE [RS_49] - PartitionCols:_col0 - Merge Join Operator [MERGEJOIN_872] (rows=4503592 width=119) - Conds:RS_961._col1=RS_931._col0(Inner),Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12"] - <-Map 35 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_931] - PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_930] - <-Map 33 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_961] - PartitionCols:_col1 - Select Operator [SEL_960] (rows=417313408 width=351) - Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10"] - Filter Operator [FIL_959] (rows=417313408 width=355) - predicate:((ss_item_sk BETWEEN DynamicValue(RS_47_item_i_item_sk_min) AND DynamicValue(RS_47_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_47_item_i_item_sk_bloom_filter))) and (ss_item_sk BETWEEN DynamicValue(RS_53_catalog_sales_cs_item_sk_min) AND DynamicValue(RS_53_catalog_sales_cs_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_53_catalog_sales_cs_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_50_d1_d_date_sk_min) AND DynamicValue(RS_50_d1_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_50_d1_d_date_sk_bloom_filter))) and ss_addr_sk is not null and ss_cdemo_sk is not null and ss_customer_sk is not null and ss_hdemo_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_14] (rows=575995635 width=355) - default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_customer_sk","ss_cdemo_sk","ss_hdemo_sk","ss_addr_sk","ss_store_sk","ss_promo_sk","ss_ticket_number","ss_wholesale_cost","ss_list_price","ss_coupon_amt"] - <-Reducer 36 [BROADCAST_EDGE] vectorized - BROADCAST [RS_940] - Please refer to the previous Group By Operator [GBY_939] - <-Reducer 29 [BROADCAST_EDGE] vectorized - BROADCAST [RS_943] - Group By Operator [GBY_942] (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 - SHUFFLE [RS_923] - Group By Operator [GBY_921] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_918] (rows=652 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_915] - <-Reducer 42 [BROADCAST_EDGE] vectorized - BROADCAST [RS_958] - Group By Operator [GBY_957] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Reducer 41 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_956] - Group By Operator [GBY_955] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_954] (rows=13257 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_952] - <-Reducer 15 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_999] - PartitionCols:_col1, _col0, _col2 - Select Operator [SEL_998] (rows=2299138 width=525) - Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] - Group By Operator [GBY_997] (rows=2299138 width=1362) + Please refer to the previous Select Operator [SEL_924] + <-Reducer 9 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_957] + PartitionCols:_col2, _col1, _col3 + Select Operator [SEL_956] (rows=2299138 width=1354) + Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15"] + Group By Operator [GBY_955] (rows=2299138 width=1362) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17"],aggregations:["count(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)","sum(VALUE._col3)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4, KEY._col5, KEY._col6, KEY._col7, KEY._col8, KEY._col9, KEY._col10, KEY._col11, KEY._col12, KEY._col13 - <-Reducer 14 [SIMPLE_EDGE] - SHUFFLE [RS_191] + <-Reducer 8 [SIMPLE_EDGE] + SHUFFLE [RS_94] PartitionCols:_col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7, _col8, _col9, _col10, _col11, _col12, _col13 - Group By Operator [GBY_190] (rows=2299138 width=1362) + Group By Operator [GBY_93] (rows=2299138 width=1362) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17"],aggregations:["count()","sum(_col37)","sum(_col38)","sum(_col39)"],keys:_col26, _col40, _col27, _col7, _col8, _col9, _col10, _col13, _col15, _col21, _col22, _col23, _col24, _col41 - Select Operator [SEL_189] (rows=2331650 width=1292) + Select Operator [SEL_92] (rows=2331650 width=1292) Output:["_col7","_col8","_col9","_col10","_col13","_col15","_col21","_col22","_col23","_col24","_col26","_col27","_col37","_col38","_col39","_col40","_col41"] - Filter Operator [FIL_188] (rows=2331650 width=1292) + Filter Operator [FIL_91] (rows=2331650 width=1292) predicate:(_col45 <> _col17) - Merge Join Operator [MERGEJOIN_896] (rows=2331650 width=1292) - Conds:RS_185._col32=RS_928._col0(Inner),Output:["_col7","_col8","_col9","_col10","_col13","_col15","_col17","_col21","_col22","_col23","_col24","_col26","_col27","_col37","_col38","_col39","_col40","_col41","_col45"] - <-Map 49 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_928] + Merge Join Operator [MERGEJOIN_881] (rows=2331650 width=1292) + Conds:RS_88._col32=RS_920._col0(Inner),Output:["_col7","_col8","_col9","_col10","_col13","_col15","_col17","_col21","_col22","_col23","_col24","_col26","_col27","_col37","_col38","_col39","_col40","_col41","_col45"] + <-Map 43 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_920] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_925] - <-Reducer 13 [SIMPLE_EDGE] - SHUFFLE [RS_185] + Please refer to the previous Select Operator [SEL_919] + <-Reducer 7 [SIMPLE_EDGE] + SHUFFLE [RS_88] PartitionCols:_col32 - Merge Join Operator [MERGEJOIN_895] (rows=2299138 width=1205) - Conds:RS_182._col0=RS_183._col13(Inner),Output:["_col7","_col8","_col9","_col10","_col13","_col15","_col17","_col21","_col22","_col23","_col24","_col26","_col27","_col32","_col37","_col38","_col39","_col40","_col41"] + Merge Join Operator [MERGEJOIN_880] (rows=2299138 width=1205) + Conds:RS_85._col0=RS_86._col13(Inner),Output:["_col7","_col8","_col9","_col10","_col13","_col15","_col17","_col21","_col22","_col23","_col24","_col26","_col27","_col32","_col37","_col38","_col39","_col40","_col41"] <-Reducer 6 [SIMPLE_EDGE] - SHUFFLE [RS_182] + SHUFFLE [RS_85] PartitionCols:_col0 Please refer to the previous Merge Join Operator [MERGEJOIN_871] - <-Reducer 20 [SIMPLE_EDGE] - SHUFFLE [RS_183] + <-Reducer 17 [SIMPLE_EDGE] + SHUFFLE [RS_86] PartitionCols:_col13 - Select Operator [SEL_164] (rows=2651207 width=784) + Select Operator [SEL_67] (rows=2651207 width=784) Output:["_col3","_col4","_col5","_col6","_col8","_col9","_col13","_col14","_col19","_col20","_col21","_col22","_col23"] - Merge Join Operator [MERGEJOIN_894] (rows=2651207 width=784) - Conds:RS_161._col1, _col7=RS_968._col0, _col1(Inner),Output:["_col2","_col3","_col8","_col9","_col10","_col11","_col12","_col17","_col18","_col20","_col21","_col22","_col23"] - <-Map 48 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_968] + Merge Join Operator [MERGEJOIN_879] (rows=2651207 width=784) + Conds:RS_64._col1, _col7=RS_953._col0, _col1(Inner),Output:["_col2","_col3","_col8","_col9","_col10","_col11","_col12","_col17","_col18","_col20","_col21","_col22","_col23"] + <-Map 42 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_953] PartitionCols:_col0, _col1 - Please refer to the previous Select Operator [SEL_966] - <-Reducer 19 [SIMPLE_EDGE] - SHUFFLE [RS_161] + Please refer to the previous Select Operator [SEL_952] + <-Reducer 16 [SIMPLE_EDGE] + SHUFFLE [RS_64] PartitionCols:_col1, _col7 - Merge Join Operator [MERGEJOIN_893] (rows=1608052 width=657) - Conds:RS_158._col5=RS_904._col0(Inner),Output:["_col1","_col2","_col3","_col7","_col8","_col9","_col10","_col11","_col12","_col17","_col18","_col20","_col21","_col22","_col23"] - <-Map 16 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_904] + Merge Join Operator [MERGEJOIN_878] (rows=1608052 width=657) + Conds:RS_61._col5=RS_903._col0(Inner),Output:["_col1","_col2","_col3","_col7","_col8","_col9","_col10","_col11","_col12","_col17","_col18","_col20","_col21","_col22","_col23"] + <-Map 15 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_903] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_901] - <-Reducer 25 [SIMPLE_EDGE] - SHUFFLE [RS_158] + <-Reducer 22 [SIMPLE_EDGE] + SHUFFLE [RS_61] PartitionCols:_col5 - Merge Join Operator [MERGEJOIN_892] (rows=1608052 width=296) - Conds:RS_155._col6=RS_965._col0(Inner),Output:["_col1","_col2","_col3","_col5","_col7","_col8","_col9","_col10","_col11","_col12","_col17","_col18"] - <-Map 47 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_965] + Merge Join Operator [MERGEJOIN_877] (rows=1608052 width=296) + Conds:RS_58._col6=RS_950._col0(Inner),Output:["_col1","_col2","_col3","_col5","_col7","_col8","_col9","_col10","_col11","_col12","_col17","_col18"] + <-Map 41 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_950] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_963] - <-Reducer 24 [SIMPLE_EDGE] - SHUFFLE [RS_155] + Please refer to the previous Select Operator [SEL_949] + <-Reducer 21 [SIMPLE_EDGE] + SHUFFLE [RS_58] PartitionCols:_col6 - Merge Join Operator [MERGEJOIN_891] (rows=1608052 width=119) - Conds:RS_152._col4=RS_909._col0(Inner),Output:["_col1","_col2","_col3","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12"] - <-Map 21 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_909] + Merge Join Operator [MERGEJOIN_876] (rows=1608052 width=119) + Conds:RS_55._col4=RS_908._col0(Inner),Output:["_col1","_col2","_col3","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12"] + <-Map 20 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_908] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_906] - <-Reducer 31 [SIMPLE_EDGE] - SHUFFLE [RS_152] + <-Reducer 27 [SIMPLE_EDGE] + SHUFFLE [RS_55] PartitionCols:_col4 - Merge Join Operator [MERGEJOIN_890] (rows=1608052 width=119) - Conds:RS_149._col1=RS_986._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12"] - <-Reducer 45 [ONE_TO_ONE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_986] + Merge Join Operator [MERGEJOIN_875] (rows=1608052 width=119) + Conds:RS_52._col1=RS_947._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12"] + <-Reducer 26 [SIMPLE_EDGE] + SHUFFLE [RS_52] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_873] (rows=1608052 width=119) + Conds:RS_49._col0=RS_917._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12"] + <-Map 25 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_917] + PartitionCols:_col0 + Select Operator [SEL_915] (rows=652 width=4) + Output:["_col0"] + Filter Operator [FIL_911] (rows=652 width=8) + predicate:(d_year = 2000) + Please refer to the previous TableScan [TS_8] + <-Reducer 31 [SIMPLE_EDGE] + SHUFFLE [RS_49] + PartitionCols:_col0 + Please refer to the previous Merge Join Operator [MERGEJOIN_872] + <-Reducer 37 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_947] PartitionCols:_col0 - Select Operator [SEL_985] (rows=13257 width=4) + Select Operator [SEL_946] (rows=13257 width=4) Output:["_col0"] - Filter Operator [FIL_984] (rows=13257 width=228) + Filter Operator [FIL_945] (rows=13257 width=228) predicate:(_col1 > (2 * _col2)) - Group By Operator [GBY_983] (rows=39773 width=228) + Group By Operator [GBY_944] (rows=39773 width=228) Output:["_col0","_col1","_col2"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)"],keys:KEY._col0 - <-Reducer 44 [SIMPLE_EDGE] - SHUFFLE [RS_129] + <-Reducer 36 [SIMPLE_EDGE] + SHUFFLE [RS_32] PartitionCols:_col0 - Group By Operator [GBY_128] (rows=6482999 width=228) + Group By Operator [GBY_31] (rows=6482999 width=228) Output:["_col0","_col1","_col2"],aggregations:["sum(_col2)","sum(_col5)"],keys:_col0 - Merge Join Operator [MERGEJOIN_889] (rows=183085709 width=227) - Conds:RS_982._col0, _col1=RS_949._col0, _col1(Inner),Output:["_col0","_col2","_col5"] - <-Map 43 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_949] + Merge Join Operator [MERGEJOIN_874] (rows=183085709 width=227) + Conds:RS_940._col0, _col1=RS_942._col0, _col1(Inner),Output:["_col0","_col2","_col5"] + <-Map 38 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_942] PartitionCols:_col0, _col1 - Please refer to the previous Select Operator [SEL_947] - <-Map 51 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_982] + Please refer to the previous Select Operator [SEL_941] + <-Map 35 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_940] PartitionCols:_col0, _col1 - Select Operator [SEL_981] (rows=287989836 width=119) + Select Operator [SEL_939] (rows=287989836 width=119) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_980] (rows=287989836 width=119) - predicate:(cs_item_sk BETWEEN DynamicValue(RS_144_item_i_item_sk_min) AND DynamicValue(RS_144_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_144_item_i_item_sk_bloom_filter))) - TableScan [TS_120] (rows=287989836 width=119) + Filter Operator [FIL_938] (rows=287989836 width=119) + predicate:(cs_item_sk BETWEEN DynamicValue(RS_47_item_i_item_sk_min) AND DynamicValue(RS_47_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_47_item_i_item_sk_bloom_filter))) + TableScan [TS_23] (rows=287989836 width=119) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_item_sk","cs_order_number","cs_ext_list_price"] - <-Reducer 38 [BROADCAST_EDGE] vectorized - BROADCAST [RS_977] - Group By Operator [GBY_975] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 35 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_938] - Group By Operator [GBY_936] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_934] (rows=518 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_930] - <-Reducer 30 [SIMPLE_EDGE] - SHUFFLE [RS_149] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_888] (rows=1608052 width=119) - Conds:RS_146._col0=RS_919._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12"] - <-Map 26 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_919] - PartitionCols:_col0 - Select Operator [SEL_916] (rows=652 width=4) - Output:["_col0"] - Filter Operator [FIL_912] (rows=652 width=8) - predicate:(d_year = 2001) - Please refer to the previous TableScan [TS_8] - <-Reducer 37 [SIMPLE_EDGE] - SHUFFLE [RS_146] - PartitionCols:_col0 - Merge Join Operator [MERGEJOIN_887] (rows=4503592 width=119) - Conds:RS_996._col1=RS_933._col0(Inner),Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12"] - <-Map 35 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_933] - PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_930] - <-Map 50 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_996] - PartitionCols:_col1 - Select Operator [SEL_995] (rows=417313408 width=351) - Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10"] - Filter Operator [FIL_994] (rows=417313408 width=355) - predicate:((ss_item_sk BETWEEN DynamicValue(RS_144_item_i_item_sk_min) AND DynamicValue(RS_144_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_144_item_i_item_sk_bloom_filter))) and (ss_item_sk BETWEEN DynamicValue(RS_150_catalog_sales_cs_item_sk_min) AND DynamicValue(RS_150_catalog_sales_cs_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_150_catalog_sales_cs_item_sk_bloom_filter))) and (ss_item_sk BETWEEN DynamicValue(RS_194_item_i_item_sk_min) AND DynamicValue(RS_194_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_194_item_i_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_147_d1_d_date_sk_min) AND DynamicValue(RS_147_d1_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_147_d1_d_date_sk_bloom_filter))) and ss_addr_sk is not null and ss_cdemo_sk is not null and ss_customer_sk is not null and ss_hdemo_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_111] (rows=575995635 width=355) - default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_customer_sk","ss_cdemo_sk","ss_hdemo_sk","ss_addr_sk","ss_store_sk","ss_promo_sk","ss_ticket_number","ss_wholesale_cost","ss_list_price","ss_coupon_amt"] - <-Reducer 38 [BROADCAST_EDGE] vectorized - BROADCAST [RS_976] - Please refer to the previous Group By Operator [GBY_975] - <-Reducer 12 [BROADCAST_EDGE] vectorized - BROADCAST [RS_993] - Group By Operator [GBY_992] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Reducer 9 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_974] - Group By Operator [GBY_973] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_972] (rows=2299138 width=8) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_970] - <-Reducer 32 [BROADCAST_EDGE] vectorized - BROADCAST [RS_979] - Group By Operator [GBY_978] (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 - SHUFFLE [RS_924] - Group By Operator [GBY_922] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_920] (rows=652 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_916] - <-Reducer 46 [BROADCAST_EDGE] vectorized - BROADCAST [RS_991] - Group By Operator [GBY_990] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Reducer 45 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_989] - Group By Operator [GBY_988] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_987] (rows=13257 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_985] + <-Reducer 33 [BROADCAST_EDGE] vectorized + BROADCAST [RS_934] + Please refer to the previous Group By Operator [GBY_932] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query65.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query65.q.out index 87d0f6fc87..84a2334e25 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query65.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query65.q.out @@ -68,39 +68,35 @@ Plan optimized by CBO. Vertex dependency in root stage Map 1 <- Reducer 10 (BROADCAST_EDGE) -Map 14 <- Reducer 13 (BROADCAST_EDGE), Reducer 8 (BROADCAST_EDGE) Reducer 10 <- Map 9 (CUSTOM_SIMPLE_EDGE) -Reducer 11 <- Map 14 (SIMPLE_EDGE), Map 9 (SIMPLE_EDGE) -Reducer 12 <- Reducer 11 (SIMPLE_EDGE) -Reducer 13 <- Map 9 (CUSTOM_SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 9 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Reducer 12 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Map 15 (SIMPLE_EDGE), Reducer 4 (ONE_TO_ONE_EDGE) -Reducer 6 <- Map 16 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) +Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) +Reducer 5 <- Map 11 (SIMPLE_EDGE), Reducer 4 (ONE_TO_ONE_EDGE) +Reducer 6 <- Map 12 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) -Reducer 8 <- Reducer 3 (CUSTOM_SIMPLE_EDGE) +Reducer 8 <- Reducer 2 (SIMPLE_EDGE) Stage-0 Fetch Operator limit:100 Stage-1 Reducer 7 vectorized - File Output Operator [FS_173] - Limit [LIM_172] (rows=100 width=705) + File Output Operator [FS_159] + Limit [LIM_158] (rows=100 width=705) Number of rows:100 - Select Operator [SEL_171] (rows=65392 width=704) + Select Operator [SEL_157] (rows=65392 width=704) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] <-Reducer 6 [SIMPLE_EDGE] SHUFFLE [RS_48] Select Operator [SEL_47] (rows=65392 width=704) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] Merge Join Operator [MERGEJOIN_134] (rows=65392 width=704) - Conds:RS_44._col1=RS_170._col0(Inner),Output:["_col2","_col6","_col8","_col9","_col10","_col11"] - <-Map 16 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_170] + Conds:RS_44._col1=RS_156._col0(Inner),Output:["_col2","_col6","_col8","_col9","_col10","_col11"] + <-Map 12 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_156] PartitionCols:_col0 - Select Operator [SEL_169] (rows=462000 width=511) + Select Operator [SEL_155] (rows=462000 width=511) Output:["_col0","_col1","_col2","_col3","_col4"] TableScan [TS_35] (rows=462000 width=511) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_item_desc","i_current_price","i_wholesale_cost","i_brand"] @@ -108,11 +104,11 @@ Stage-0 SHUFFLE [RS_44] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_133] (rows=65392 width=204) - Conds:RS_41._col0=RS_168._col0(Inner),Output:["_col1","_col2","_col6"] - <-Map 15 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_168] + Conds:RS_41._col0=RS_154._col0(Inner),Output:["_col1","_col2","_col6"] + <-Map 11 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_154] PartitionCols:_col0 - Select Operator [SEL_167] (rows=1704 width=92) + Select Operator [SEL_153] (rows=1704 width=92) Output:["_col0","_col1"] TableScan [TS_33] (rows=1704 width=92) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_store_name"] @@ -122,11 +118,11 @@ Stage-0 Filter Operator [FIL_40] (rows=65392 width=231) predicate:(_col2 <= _col4) Merge Join Operator [MERGEJOIN_132] (rows=196176 width=231) - Conds:RS_151._col0=RS_166._col0(Inner),Output:["_col0","_col1","_col2","_col4"] + Conds:RS_147._col0=RS_152._col0(Inner),Output:["_col0","_col1","_col2","_col4"] <-Reducer 3 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_151] + SHUFFLE [RS_147] PartitionCols:_col0 - Group By Operator [GBY_150] (rows=184637 width=118) + Group By Operator [GBY_146] (rows=184637 width=118) Output:["_col0","_col1","_col2"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0, KEY._col1 <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_11] @@ -134,7 +130,7 @@ Stage-0 Group By Operator [GBY_10] (rows=6093021 width=118) Output:["_col0","_col1","_col2"],aggregations:["sum(_col3)"],keys:_col2, _col1 Merge Join Operator [MERGEJOIN_130] (rows=91197860 width=89) - Conds:RS_149._col0=RS_137._col0(Inner),Output:["_col1","_col2","_col3"] + Conds:RS_145._col0=RS_137._col0(Inner),Output:["_col1","_col2","_col3"] <-Map 9 [SIMPLE_EDGE] vectorized SHUFFLE [RS_137] PartitionCols:_col0 @@ -145,76 +141,38 @@ Stage-0 TableScan [TS_3] (rows=73049 width=8) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_month_seq"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_149] + SHUFFLE [RS_145] PartitionCols:_col0 - Select Operator [SEL_148] (rows=525329897 width=118) + Select Operator [SEL_144] (rows=525329897 width=118) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_147] (rows=525329897 width=118) + Filter Operator [FIL_143] (rows=525329897 width=118) predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_7_date_dim_d_date_sk_min) AND DynamicValue(RS_7_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_7_date_dim_d_date_sk_bloom_filter))) and ss_sold_date_sk is not null and ss_store_sk is not null) TableScan [TS_0] (rows=575995635 width=118) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_store_sk","ss_sales_price"] <-Reducer 10 [BROADCAST_EDGE] vectorized - BROADCAST [RS_146] - Group By Operator [GBY_145] (rows=1 width=12) + BROADCAST [RS_142] + Group By Operator [GBY_141] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Map 9 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_143] - Group By Operator [GBY_141] (rows=1 width=12) + SHUFFLE [RS_140] + Group By Operator [GBY_139] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] Select Operator [SEL_138] (rows=317 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_136] - <-Reducer 12 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_166] + <-Reducer 8 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_152] PartitionCols:_col0 - Select Operator [SEL_165] (rows=17 width=115) + Select Operator [SEL_151] (rows=17 width=115) Output:["_col0","_col1"] - Group By Operator [GBY_164] (rows=17 width=123) + Group By Operator [GBY_150] (rows=17 width=123) Output:["_col0","_col1","_col2"],aggregations:["sum(_col2)","count(_col2)"],keys:_col1 - Select Operator [SEL_163] (rows=184637 width=118) + Select Operator [SEL_149] (rows=184637 width=118) Output:["_col1","_col2"] - Group By Operator [GBY_162] (rows=184637 width=118) + Group By Operator [GBY_148] (rows=184637 width=118) Output:["_col0","_col1","_col2"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0, KEY._col1 - <-Reducer 11 [SIMPLE_EDGE] + <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_25] PartitionCols:_col0 - Group By Operator [GBY_24] (rows=6093021 width=118) - Output:["_col0","_col1","_col2"],aggregations:["sum(_col3)"],keys:_col2, _col1 - Merge Join Operator [MERGEJOIN_131] (rows=91197860 width=89) - Conds:RS_161._col0=RS_139._col0(Inner),Output:["_col1","_col2","_col3"] - <-Map 9 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_139] - PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_136] - <-Map 14 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_161] - PartitionCols:_col0 - Select Operator [SEL_160] (rows=525329897 width=118) - Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_159] (rows=525329897 width=118) - predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_21_date_dim_d_date_sk_min) AND DynamicValue(RS_21_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_21_date_dim_d_date_sk_bloom_filter))) and (ss_store_sk BETWEEN DynamicValue(RS_37_store_sales_ss_store_sk_min) AND DynamicValue(RS_37_store_sales_ss_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_37_store_sales_ss_store_sk_bloom_filter))) and ss_sold_date_sk is not null and ss_store_sk is not null) - TableScan [TS_14] (rows=575995635 width=118) - default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_store_sk","ss_sales_price"] - <-Reducer 13 [BROADCAST_EDGE] vectorized - BROADCAST [RS_156] - Group By Operator [GBY_155] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 9 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_144] - Group By Operator [GBY_142] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_140] (rows=317 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_136] - <-Reducer 8 [BROADCAST_EDGE] vectorized - BROADCAST [RS_158] - Group By Operator [GBY_157] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Reducer 3 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_154] - Group By Operator [GBY_153] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_152] (rows=184637 width=2) - Output:["_col0"] - Please refer to the previous Group By Operator [GBY_150] + Please refer to the previous Group By Operator [GBY_10] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query66.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query66.q.out index f82272c3f2..91def71cd3 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query66.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query66.q.out @@ -457,23 +457,19 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 11 (BROADCAST_EDGE), Reducer 19 (BROADCAST_EDGE), Reducer 22 (BROADCAST_EDGE) -Map 25 <- Reducer 17 (BROADCAST_EDGE), Reducer 20 (BROADCAST_EDGE), Reducer 23 (BROADCAST_EDGE) -Reducer 11 <- Map 10 (CUSTOM_SIMPLE_EDGE) -Reducer 12 <- Map 10 (SIMPLE_EDGE), Map 25 (SIMPLE_EDGE) -Reducer 13 <- Map 18 (SIMPLE_EDGE), Reducer 12 (SIMPLE_EDGE) -Reducer 14 <- Map 21 (SIMPLE_EDGE), Reducer 13 (SIMPLE_EDGE) -Reducer 15 <- Map 24 (SIMPLE_EDGE), Reducer 14 (SIMPLE_EDGE) -Reducer 16 <- Reducer 15 (SIMPLE_EDGE), Union 7 (CONTAINS) -Reducer 17 <- Map 10 (CUSTOM_SIMPLE_EDGE) -Reducer 19 <- Map 18 (CUSTOM_SIMPLE_EDGE) +Map 1 <- Reducer 18 (BROADCAST_EDGE) +Map 21 <- Reducer 19 (BROADCAST_EDGE) +Reducer 11 <- Map 10 (SIMPLE_EDGE), Map 21 (SIMPLE_EDGE) +Reducer 12 <- Map 16 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE) +Reducer 13 <- Map 17 (SIMPLE_EDGE), Reducer 12 (SIMPLE_EDGE) +Reducer 14 <- Map 20 (SIMPLE_EDGE), Reducer 13 (SIMPLE_EDGE) +Reducer 15 <- Reducer 14 (SIMPLE_EDGE), Union 7 (CONTAINS) +Reducer 18 <- Map 17 (CUSTOM_SIMPLE_EDGE) +Reducer 19 <- Map 17 (CUSTOM_SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 10 (SIMPLE_EDGE) -Reducer 20 <- Map 18 (CUSTOM_SIMPLE_EDGE) -Reducer 22 <- Map 21 (CUSTOM_SIMPLE_EDGE) -Reducer 23 <- Map 21 (CUSTOM_SIMPLE_EDGE) -Reducer 3 <- Map 18 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 21 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Map 24 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) +Reducer 3 <- Map 16 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 4 <- Map 17 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 5 <- Map 20 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE), Union 7 (CONTAINS) Reducer 8 <- Union 7 (SIMPLE_EDGE) Reducer 9 <- Reducer 8 (SIMPLE_EDGE) @@ -483,30 +479,30 @@ Stage-0 limit:-1 Stage-1 Reducer 9 vectorized - File Output Operator [FS_267] - Select Operator [SEL_266] (rows=100 width=4614) + File Output Operator [FS_251] + Select Operator [SEL_250] (rows=100 width=4614) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17","_col18","_col19","_col20","_col21","_col22","_col23","_col24","_col25","_col26","_col27","_col28","_col29","_col30","_col31","_col32","_col33","_col34","_col35","_col36","_col37","_col38","_col39","_col40","_col41","_col42","_col43"] - Limit [LIM_265] (rows=100 width=4510) + Limit [LIM_249] (rows=100 width=4510) Number of rows:100 - Select Operator [SEL_264] (rows=2423925 width=4510) + Select Operator [SEL_248] (rows=2423925 width=4510) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17","_col18","_col19","_col20","_col21","_col22","_col23","_col24","_col25","_col26","_col27","_col28","_col29","_col30","_col31","_col32","_col33","_col34","_col35","_col36","_col37","_col38","_col39","_col40","_col41"] <-Reducer 8 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_263] - Group By Operator [GBY_262] (rows=2423925 width=4510) + SHUFFLE [RS_247] + Group By Operator [GBY_246] (rows=2423925 width=4510) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17","_col18","_col19","_col20","_col21","_col22","_col23","_col24","_col25","_col26","_col27","_col28","_col29","_col30","_col31","_col32","_col33","_col34","_col35","_col36","_col37","_col38","_col39","_col40","_col41"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)","sum(VALUE._col3)","sum(VALUE._col4)","sum(VALUE._col5)","sum(VALUE._col6)","sum(VALUE._col7)","sum(VALUE._col8)","sum(VALUE._col9)","sum(VALUE._col10)","sum(VALUE._col11)","sum(VALUE._col12)","sum(VALUE._col13)","sum(VALUE._col14)","sum(VALUE._col15)","sum(VALUE._col16)","sum(VALUE._col17)","sum(VALUE._col18)","sum(VALUE._col19)","sum(VALUE._col20)","sum(VALUE._col21)","sum(VALUE._col22)","sum(VALUE._col23)","sum(VALUE._col24)","sum(VALUE._col25)","sum(VALUE._col26)","sum(VALUE._col27)","sum(VALUE._col28)","sum(VALUE._col29)","sum(VALUE._col30)","sum(VALUE._col31)","sum(VALUE._col32)","sum(VALUE._col33)","sum(VALUE._col34)","sum(VALUE._col35)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4, KEY._col5 <-Union 7 [SIMPLE_EDGE] - <-Reducer 16 [CONTAINS] vectorized - Reduce Output Operator [RS_281] + <-Reducer 15 [CONTAINS] vectorized + Reduce Output Operator [RS_261] PartitionCols:_col0, _col1, _col2, _col3, _col4, _col5 - Group By Operator [GBY_280] (rows=2513727 width=4510) + Group By Operator [GBY_260] (rows=2513727 width=4510) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17","_col18","_col19","_col20","_col21","_col22","_col23","_col24","_col25","_col26","_col27","_col28","_col29","_col30","_col31","_col32","_col33","_col34","_col35","_col36","_col37","_col38","_col39","_col40","_col41"],aggregations:["sum(_col6)","sum(_col7)","sum(_col8)","sum(_col9)","sum(_col10)","sum(_col11)","sum(_col12)","sum(_col13)","sum(_col14)","sum(_col15)","sum(_col16)","sum(_col17)","sum(_col18)","sum(_col19)","sum(_col20)","sum(_col21)","sum(_col22)","sum(_col23)","sum(_col24)","sum(_col25)","sum(_col26)","sum(_col27)","sum(_col28)","sum(_col29)","sum(_col30)","sum(_col31)","sum(_col32)","sum(_col33)","sum(_col34)","sum(_col35)","sum(_col36)","sum(_col37)","sum(_col38)","sum(_col39)","sum(_col40)","sum(_col41)"],keys:_col0, _col1, _col2, _col3, _col4, _col5 - Top N Key Operator [TNK_279] (rows=2513727 width=3166) + Top N Key Operator [TNK_259] (rows=2513727 width=3166) keys:_col0, _col1, _col2, _col3, _col4, _col5,sort order:++++++,top n:100 - Select Operator [SEL_278] (rows=2513727 width=3166) + Select Operator [SEL_258] (rows=2513727 width=3166) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17","_col18","_col19","_col20","_col21","_col22","_col23","_col24","_col25","_col26","_col27","_col28","_col29","_col30","_col31","_col32","_col33","_col34","_col35","_col36","_col37","_col38","_col39","_col40","_col41"] - Group By Operator [GBY_277] (rows=2513700 width=3166) + Group By Operator [GBY_257] (rows=2513700 width=3166) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17","_col18","_col19","_col20","_col21","_col22","_col23","_col24","_col25","_col26","_col27","_col28","_col29"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)","sum(VALUE._col3)","sum(VALUE._col4)","sum(VALUE._col5)","sum(VALUE._col6)","sum(VALUE._col7)","sum(VALUE._col8)","sum(VALUE._col9)","sum(VALUE._col10)","sum(VALUE._col11)","sum(VALUE._col12)","sum(VALUE._col13)","sum(VALUE._col14)","sum(VALUE._col15)","sum(VALUE._col16)","sum(VALUE._col17)","sum(VALUE._col18)","sum(VALUE._col19)","sum(VALUE._col20)","sum(VALUE._col21)","sum(VALUE._col22)","sum(VALUE._col23)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4, KEY._col5 - <-Reducer 15 [SIMPLE_EDGE] + <-Reducer 14 [SIMPLE_EDGE] SHUFFLE [RS_61] PartitionCols:_col0, _col1, _col2, _col3, _col4, _col5 Group By Operator [GBY_60] (rows=5559759 width=3166) @@ -514,108 +510,86 @@ Stage-0 Select Operator [SEL_58] (rows=5559759 width=750) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17","_col18","_col19","_col20","_col21","_col22","_col23","_col24","_col25","_col26","_col27","_col28","_col29"] Merge Join Operator [MERGEJOIN_202] (rows=5559759 width=750) - Conds:RS_55._col3=RS_256._col0(Inner),Output:["_col4","_col5","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17","_col18","_col19","_col22","_col23","_col24","_col25","_col26","_col27"] - <-Map 24 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_256] + Conds:RS_55._col3=RS_240._col0(Inner),Output:["_col4","_col5","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17","_col18","_col19","_col22","_col23","_col24","_col25","_col26","_col27"] + <-Map 20 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_240] PartitionCols:_col0 - Select Operator [SEL_254] (rows=27 width=482) + Select Operator [SEL_238] (rows=27 width=482) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] TableScan [TS_12] (rows=27 width=482) default@warehouse,warehouse,Tbl:COMPLETE,Col:COMPLETE,Output:["w_warehouse_sk","w_warehouse_name","w_warehouse_sq_ft","w_city","w_county","w_state","w_country"] - <-Reducer 14 [SIMPLE_EDGE] + <-Reducer 13 [SIMPLE_EDGE] SHUFFLE [RS_55] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_201] (rows=5559759 width=274) - Conds:RS_52._col2=RS_243._col0(Inner),Output:["_col3","_col4","_col5","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17","_col18","_col19"] - <-Map 21 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_243] + Conds:RS_52._col2=RS_219._col0(Inner),Output:["_col3","_col4","_col5","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17","_col18","_col19"] + <-Map 17 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_219] PartitionCols:_col0 - Select Operator [SEL_240] (rows=1 width=4) + Select Operator [SEL_216] (rows=1 width=4) Output:["_col0"] - Filter Operator [FIL_239] (rows=1 width=88) + Filter Operator [FIL_215] (rows=1 width=88) predicate:(sm_carrier) IN ('DIAMOND', 'AIRBORNE') TableScan [TS_9] (rows=1 width=88) default@ship_mode,ship_mode,Tbl:COMPLETE,Col:COMPLETE,Output:["sm_ship_mode_sk","sm_carrier"] - <-Reducer 13 [SIMPLE_EDGE] + <-Reducer 12 [SIMPLE_EDGE] SHUFFLE [RS_52] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_200] (rows=11119518 width=278) - Conds:RS_49._col0=RS_231._col0(Inner),Output:["_col2","_col3","_col4","_col5","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17","_col18","_col19"] - <-Map 18 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_231] + Conds:RS_49._col0=RS_237._col0(Inner),Output:["_col2","_col3","_col4","_col5","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17","_col18","_col19"] + <-Map 16 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_237] PartitionCols:_col0 - Select Operator [SEL_228] (rows=652 width=52) + Select Operator [SEL_235] (rows=652 width=52) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12"] - Filter Operator [FIL_227] (rows=652 width=12) + Filter Operator [FIL_234] (rows=652 width=12) predicate:(d_year = 2002) TableScan [TS_6] (rows=73049 width=12) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] - <-Reducer 12 [SIMPLE_EDGE] + <-Reducer 11 [SIMPLE_EDGE] SHUFFLE [RS_49] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_199] (rows=31363607 width=235) - Conds:RS_276._col1=RS_219._col0(Inner),Output:["_col0","_col2","_col3","_col4","_col5"] + Conds:RS_256._col1=RS_233._col0(Inner),Output:["_col0","_col2","_col3","_col4","_col5"] <-Map 10 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_219] + SHUFFLE [RS_233] PartitionCols:_col0 - Select Operator [SEL_216] (rows=9600 width=4) + Select Operator [SEL_231] (rows=9600 width=4) Output:["_col0"] - Filter Operator [FIL_215] (rows=9600 width=8) + Filter Operator [FIL_230] (rows=9600 width=8) predicate:t_time BETWEEN 49530 AND 78330 TableScan [TS_3] (rows=86400 width=8) default@time_dim,time_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["t_time_sk","t_time"] - <-Map 25 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_276] + <-Map 21 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_256] PartitionCols:_col1 - Select Operator [SEL_275] (rows=282272460 width=239) + Select Operator [SEL_255] (rows=282272460 width=239) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] - Filter Operator [FIL_274] (rows=282272460 width=243) - predicate:((cs_ship_mode_sk BETWEEN DynamicValue(RS_53_ship_mode_sm_ship_mode_sk_min) AND DynamicValue(RS_53_ship_mode_sm_ship_mode_sk_max) and in_bloom_filter(cs_ship_mode_sk, DynamicValue(RS_53_ship_mode_sm_ship_mode_sk_bloom_filter))) and (cs_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(cs_sold_date_sk, DynamicValue(RS_50_date_dim_d_date_sk_bloom_filter))) and (cs_sold_time_sk BETWEEN DynamicValue(RS_47_time_dim_t_time_sk_min) AND DynamicValue(RS_47_time_dim_t_time_sk_max) and in_bloom_filter(cs_sold_time_sk, DynamicValue(RS_47_time_dim_t_time_sk_bloom_filter))) and cs_ship_mode_sk is not null and cs_sold_date_sk is not null and cs_sold_time_sk is not null and cs_warehouse_sk is not null) + Filter Operator [FIL_254] (rows=282272460 width=243) + predicate:((cs_ship_mode_sk BETWEEN DynamicValue(RS_53_ship_mode_sm_ship_mode_sk_min) AND DynamicValue(RS_53_ship_mode_sm_ship_mode_sk_max) and in_bloom_filter(cs_ship_mode_sk, DynamicValue(RS_53_ship_mode_sm_ship_mode_sk_bloom_filter))) and cs_ship_mode_sk is not null and cs_sold_date_sk is not null and cs_sold_time_sk is not null and cs_warehouse_sk is not null) TableScan [TS_32] (rows=287989836 width=243) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_sold_time_sk","cs_ship_mode_sk","cs_warehouse_sk","cs_quantity","cs_ext_sales_price","cs_net_paid_inc_ship_tax"] - <-Reducer 17 [BROADCAST_EDGE] vectorized - BROADCAST [RS_269] - Group By Operator [GBY_268] (rows=1 width=12) + <-Reducer 19 [BROADCAST_EDGE] vectorized + BROADCAST [RS_253] + Group By Operator [GBY_252] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 10 [CUSTOM_SIMPLE_EDGE] vectorized + <-Map 17 [CUSTOM_SIMPLE_EDGE] vectorized SHUFFLE [RS_224] Group By Operator [GBY_222] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_220] (rows=9600 width=4) + Select Operator [SEL_220] (rows=1 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_216] - <-Reducer 20 [BROADCAST_EDGE] vectorized - BROADCAST [RS_271] - Group By Operator [GBY_270] (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_236] - Group By Operator [GBY_234] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_232] (rows=652 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_228] - <-Reducer 23 [BROADCAST_EDGE] vectorized - BROADCAST [RS_273] - Group By Operator [GBY_272] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 21 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_248] - Group By Operator [GBY_246] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_244] (rows=1 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_240] <-Reducer 6 [CONTAINS] vectorized - Reduce Output Operator [RS_261] + Reduce Output Operator [RS_245] PartitionCols:_col0, _col1, _col2, _col3, _col4, _col5 - Group By Operator [GBY_260] (rows=2513727 width=4510) + Group By Operator [GBY_244] (rows=2513727 width=4510) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17","_col18","_col19","_col20","_col21","_col22","_col23","_col24","_col25","_col26","_col27","_col28","_col29","_col30","_col31","_col32","_col33","_col34","_col35","_col36","_col37","_col38","_col39","_col40","_col41"],aggregations:["sum(_col6)","sum(_col7)","sum(_col8)","sum(_col9)","sum(_col10)","sum(_col11)","sum(_col12)","sum(_col13)","sum(_col14)","sum(_col15)","sum(_col16)","sum(_col17)","sum(_col18)","sum(_col19)","sum(_col20)","sum(_col21)","sum(_col22)","sum(_col23)","sum(_col24)","sum(_col25)","sum(_col26)","sum(_col27)","sum(_col28)","sum(_col29)","sum(_col30)","sum(_col31)","sum(_col32)","sum(_col33)","sum(_col34)","sum(_col35)","sum(_col36)","sum(_col37)","sum(_col38)","sum(_col39)","sum(_col40)","sum(_col41)"],keys:_col0, _col1, _col2, _col3, _col4, _col5 - Top N Key Operator [TNK_259] (rows=2513727 width=3166) + Top N Key Operator [TNK_243] (rows=2513727 width=3166) keys:_col0, _col1, _col2, _col3, _col4, _col5,sort order:++++++,top n:100 - Select Operator [SEL_258] (rows=2513727 width=3166) + Select Operator [SEL_242] (rows=2513727 width=3166) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17","_col18","_col19","_col20","_col21","_col22","_col23","_col24","_col25","_col26","_col27","_col28","_col29","_col30","_col31","_col32","_col33","_col34","_col35","_col36","_col37","_col38","_col39","_col40","_col41"] - Group By Operator [GBY_257] (rows=27 width=3166) + Group By Operator [GBY_241] (rows=27 width=3166) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17","_col18","_col19","_col20","_col21","_col22","_col23","_col24","_col25","_col26","_col27","_col28","_col29"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)","sum(VALUE._col3)","sum(VALUE._col4)","sum(VALUE._col5)","sum(VALUE._col6)","sum(VALUE._col7)","sum(VALUE._col8)","sum(VALUE._col9)","sum(VALUE._col10)","sum(VALUE._col11)","sum(VALUE._col12)","sum(VALUE._col13)","sum(VALUE._col14)","sum(VALUE._col15)","sum(VALUE._col16)","sum(VALUE._col17)","sum(VALUE._col18)","sum(VALUE._col19)","sum(VALUE._col20)","sum(VALUE._col21)","sum(VALUE._col22)","sum(VALUE._col23)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4, KEY._col5 <-Reducer 5 [SIMPLE_EDGE] SHUFFLE [RS_29] @@ -625,78 +599,56 @@ Stage-0 Select Operator [SEL_26] (rows=2853684 width=750) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17","_col18","_col19","_col20","_col21","_col22","_col23","_col24","_col25","_col26","_col27","_col28","_col29"] Merge Join Operator [MERGEJOIN_198] (rows=2853684 width=750) - Conds:RS_23._col3=RS_255._col0(Inner),Output:["_col4","_col5","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17","_col18","_col19","_col22","_col23","_col24","_col25","_col26","_col27"] - <-Map 24 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_255] + Conds:RS_23._col3=RS_239._col0(Inner),Output:["_col4","_col5","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17","_col18","_col19","_col22","_col23","_col24","_col25","_col26","_col27"] + <-Map 20 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_239] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_254] + Please refer to the previous Select Operator [SEL_238] <-Reducer 4 [SIMPLE_EDGE] SHUFFLE [RS_23] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_197] (rows=2853684 width=275) - Conds:RS_20._col2=RS_241._col0(Inner),Output:["_col3","_col4","_col5","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17","_col18","_col19"] - <-Map 21 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_241] + Conds:RS_20._col2=RS_217._col0(Inner),Output:["_col3","_col4","_col5","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17","_col18","_col19"] + <-Map 17 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_217] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_240] + Please refer to the previous Select Operator [SEL_216] <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_20] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_196] (rows=5707369 width=279) - Conds:RS_17._col0=RS_229._col0(Inner),Output:["_col2","_col3","_col4","_col5","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17","_col18","_col19"] - <-Map 18 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_229] + Conds:RS_17._col0=RS_236._col0(Inner),Output:["_col2","_col3","_col4","_col5","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17","_col18","_col19"] + <-Map 16 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_236] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_228] + Please refer to the previous Select Operator [SEL_235] <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_17] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_195] (rows=15984351 width=235) - Conds:RS_253._col1=RS_217._col0(Inner),Output:["_col0","_col2","_col3","_col4","_col5"] + Conds:RS_229._col1=RS_232._col0(Inner),Output:["_col0","_col2","_col3","_col4","_col5"] <-Map 10 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_217] + SHUFFLE [RS_232] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_216] + Please refer to the previous Select Operator [SEL_231] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_253] + SHUFFLE [RS_229] PartitionCols:_col1 - Select Operator [SEL_252] (rows=143859154 width=239) + Select Operator [SEL_228] (rows=143859154 width=239) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] - Filter Operator [FIL_251] (rows=143859154 width=243) - predicate:((ws_ship_mode_sk BETWEEN DynamicValue(RS_21_ship_mode_sm_ship_mode_sk_min) AND DynamicValue(RS_21_ship_mode_sm_ship_mode_sk_max) and in_bloom_filter(ws_ship_mode_sk, DynamicValue(RS_21_ship_mode_sm_ship_mode_sk_bloom_filter))) and (ws_sold_date_sk BETWEEN DynamicValue(RS_18_date_dim_d_date_sk_min) AND DynamicValue(RS_18_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_18_date_dim_d_date_sk_bloom_filter))) and (ws_sold_time_sk BETWEEN DynamicValue(RS_15_time_dim_t_time_sk_min) AND DynamicValue(RS_15_time_dim_t_time_sk_max) and in_bloom_filter(ws_sold_time_sk, DynamicValue(RS_15_time_dim_t_time_sk_bloom_filter))) and ws_ship_mode_sk is not null and ws_sold_date_sk is not null and ws_sold_time_sk is not null and ws_warehouse_sk is not null) + Filter Operator [FIL_227] (rows=143859154 width=243) + predicate:((ws_ship_mode_sk BETWEEN DynamicValue(RS_21_ship_mode_sm_ship_mode_sk_min) AND DynamicValue(RS_21_ship_mode_sm_ship_mode_sk_max) and in_bloom_filter(ws_ship_mode_sk, DynamicValue(RS_21_ship_mode_sm_ship_mode_sk_bloom_filter))) and ws_ship_mode_sk is not null and ws_sold_date_sk is not null and ws_sold_time_sk is not null and ws_warehouse_sk is not null) TableScan [TS_0] (rows=144002668 width=243) default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_sold_time_sk","ws_ship_mode_sk","ws_warehouse_sk","ws_quantity","ws_sales_price","ws_net_paid_inc_tax"] - <-Reducer 11 [BROADCAST_EDGE] vectorized + <-Reducer 18 [BROADCAST_EDGE] vectorized BROADCAST [RS_226] Group By Operator [GBY_225] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 10 [CUSTOM_SIMPLE_EDGE] vectorized + <-Map 17 [CUSTOM_SIMPLE_EDGE] vectorized SHUFFLE [RS_223] Group By Operator [GBY_221] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_218] (rows=9600 width=4) + Select Operator [SEL_218] (rows=1 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_216] - <-Reducer 19 [BROADCAST_EDGE] vectorized - BROADCAST [RS_238] - Group By Operator [GBY_237] (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_235] - Group By Operator [GBY_233] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_230] (rows=652 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_228] - <-Reducer 22 [BROADCAST_EDGE] vectorized - BROADCAST [RS_250] - Group By Operator [GBY_249] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 21 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_247] - Group By Operator [GBY_245] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_242] (rows=1 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_240] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query68.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query68.q.out index 2188af561e..8de9fee920 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query68.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query68.q.out @@ -97,12 +97,10 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 8 <- Reducer 13 (BROADCAST_EDGE), Reducer 15 (BROADCAST_EDGE), Reducer 17 (BROADCAST_EDGE) +Map 8 <- Reducer 13 (BROADCAST_EDGE) Reducer 10 <- Map 14 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) -Reducer 11 <- Map 16 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE) +Reducer 11 <- Map 15 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE) Reducer 13 <- Map 12 (CUSTOM_SIMPLE_EDGE) -Reducer 15 <- Map 14 (CUSTOM_SIMPLE_EDGE) -Reducer 17 <- Map 16 (CUSTOM_SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 5 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) @@ -115,10 +113,10 @@ Stage-0 limit:100 Stage-1 Reducer 4 vectorized - File Output Operator [FS_182] - Limit [LIM_181] (rows=100 width=706) + File Output Operator [FS_172] + Limit [LIM_171] (rows=100 width=706) Number of rows:100 - Select Operator [SEL_180] (rows=4418634 width=706) + Select Operator [SEL_170] (rows=4418634 width=706) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_44] @@ -127,7 +125,7 @@ Stage-0 Filter Operator [FIL_42] (rows=4418634 width=706) predicate:(_col5 <> _col8) Merge Join Operator [MERGEJOIN_143] (rows=4418634 width=706) - Conds:RS_39._col0=RS_179._col1(Inner),Output:["_col2","_col3","_col5","_col6","_col8","_col9","_col10","_col11"] + Conds:RS_39._col0=RS_169._col1(Inner),Output:["_col2","_col3","_col5","_col6","_col8","_col9","_col10","_col11"] <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_39] PartitionCols:_col0 @@ -150,11 +148,11 @@ Stage-0 TableScan [TS_0] (rows=80000000 width=188) default@customer,customer,Tbl:COMPLETE,Col:COMPLETE,Output:["c_customer_sk","c_current_addr_sk","c_first_name","c_last_name"] <-Reducer 7 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_179] + SHUFFLE [RS_169] PartitionCols:_col1 - Select Operator [SEL_178] (rows=4418634 width=433) + Select Operator [SEL_168] (rows=4418634 width=433) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] - Group By Operator [GBY_177] (rows=4418634 width=433) + Group By Operator [GBY_167] (rows=4418634 width=433) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3 <-Reducer 6 [SIMPLE_EDGE] SHUFFLE [RS_33] @@ -171,13 +169,13 @@ Stage-0 SHUFFLE [RS_28] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_141] (rows=4418634 width=4) - Conds:RS_25._col2=RS_168._col0(Inner),Output:["_col1","_col3","_col5","_col6","_col7","_col8"] - <-Map 16 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_168] + Conds:RS_25._col2=RS_166._col0(Inner),Output:["_col1","_col3","_col5","_col6","_col7","_col8"] + <-Map 15 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_166] PartitionCols:_col0 - Select Operator [SEL_167] (rows=1855 width=4) + Select Operator [SEL_165] (rows=1855 width=4) Output:["_col0"] - Filter Operator [FIL_166] (rows=1855 width=12) + Filter Operator [FIL_164] (rows=1855 width=12) predicate:((hd_dep_count = 2) or (hd_vehicle_count = 1)) TableScan [TS_14] (rows=7200 width=12) default@household_demographics,household_demographics,Tbl:COMPLETE,Col:COMPLETE,Output:["hd_demo_sk","hd_dep_count","hd_vehicle_count"] @@ -185,13 +183,13 @@ Stage-0 SHUFFLE [RS_25] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_140] (rows=17150490 width=4) - Conds:RS_22._col4=RS_160._col0(Inner),Output:["_col1","_col2","_col3","_col5","_col6","_col7","_col8"] + Conds:RS_22._col4=RS_163._col0(Inner),Output:["_col1","_col2","_col3","_col5","_col6","_col7","_col8"] <-Map 14 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_160] + SHUFFLE [RS_163] PartitionCols:_col0 - Select Operator [SEL_159] (rows=85 width=4) + Select Operator [SEL_162] (rows=85 width=4) Output:["_col0"] - Filter Operator [FIL_158] (rows=85 width=97) + Filter Operator [FIL_161] (rows=85 width=97) predicate:(s_city) IN ('Cedar Grove', 'Wildwood') TableScan [TS_11] (rows=1704 width=97) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_city"] @@ -199,7 +197,7 @@ Stage-0 SHUFFLE [RS_22] PartitionCols:_col4 Merge Join Operator [MERGEJOIN_139] (rows=42598570 width=185) - Conds:RS_176._col0=RS_152._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8"] + Conds:RS_160._col0=RS_152._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8"] <-Map 12 [SIMPLE_EDGE] vectorized SHUFFLE [RS_152] PartitionCols:_col0 @@ -210,12 +208,12 @@ Stage-0 TableScan [TS_8] (rows=73049 width=12) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_dom"] <-Map 8 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_176] + SHUFFLE [RS_160] PartitionCols:_col0 - Select Operator [SEL_175] (rows=457565061 width=343) + Select Operator [SEL_159] (rows=457565061 width=343) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8"] - Filter Operator [FIL_174] (rows=457565061 width=343) - predicate:((ss_hdemo_sk BETWEEN DynamicValue(RS_26_household_demographics_hd_demo_sk_min) AND DynamicValue(RS_26_household_demographics_hd_demo_sk_max) and in_bloom_filter(ss_hdemo_sk, DynamicValue(RS_26_household_demographics_hd_demo_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_20_date_dim_d_date_sk_min) AND DynamicValue(RS_20_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_20_date_dim_d_date_sk_bloom_filter))) and (ss_store_sk BETWEEN DynamicValue(RS_23_store_s_store_sk_min) AND DynamicValue(RS_23_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_23_store_s_store_sk_bloom_filter))) and ss_addr_sk is not null and ss_customer_sk is not null and ss_hdemo_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_158] (rows=457565061 width=343) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_20_date_dim_d_date_sk_min) AND DynamicValue(RS_20_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_20_date_dim_d_date_sk_bloom_filter))) and ss_addr_sk is not null and ss_customer_sk is not null and ss_hdemo_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) TableScan [TS_5] (rows=575995635 width=343) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_customer_sk","ss_hdemo_sk","ss_addr_sk","ss_store_sk","ss_ticket_number","ss_ext_sales_price","ss_ext_list_price","ss_ext_tax"] <-Reducer 13 [BROADCAST_EDGE] vectorized @@ -229,26 +227,4 @@ Stage-0 Select Operator [SEL_153] (rows=170 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_151] - <-Reducer 15 [BROADCAST_EDGE] vectorized - BROADCAST [RS_165] - Group By Operator [GBY_164] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 14 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_163] - Group By Operator [GBY_162] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_161] (rows=85 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_159] - <-Reducer 17 [BROADCAST_EDGE] vectorized - BROADCAST [RS_173] - Group By Operator [GBY_172] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 16 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_171] - Group By Operator [GBY_170] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_169] (rows=1855 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_167] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query69.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query69.q.out index 8fe313495f..3cf67ee76d 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query69.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query69.q.out @@ -109,24 +109,21 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 14 <- Reducer 11 (BROADCAST_EDGE), Reducer 17 (BROADCAST_EDGE) -Map 24 <- Reducer 10 (BROADCAST_EDGE), Reducer 20 (BROADCAST_EDGE) -Map 25 <- Reducer 23 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) +Map 13 <- Reducer 16 (BROADCAST_EDGE) +Map 21 <- Reducer 10 (BROADCAST_EDGE) +Map 22 <- Reducer 9 (BROADCAST_EDGE) Reducer 10 <- Reducer 4 (CUSTOM_SIMPLE_EDGE) -Reducer 11 <- Reducer 3 (CUSTOM_SIMPLE_EDGE) -Reducer 15 <- Map 14 (SIMPLE_EDGE), Map 16 (SIMPLE_EDGE) -Reducer 17 <- Map 16 (CUSTOM_SIMPLE_EDGE) -Reducer 18 <- Map 16 (SIMPLE_EDGE), Map 24 (SIMPLE_EDGE) -Reducer 19 <- Reducer 18 (SIMPLE_EDGE) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 12 (SIMPLE_EDGE) -Reducer 20 <- Map 16 (CUSTOM_SIMPLE_EDGE) -Reducer 21 <- Map 16 (SIMPLE_EDGE), Map 25 (SIMPLE_EDGE) -Reducer 22 <- Reducer 21 (SIMPLE_EDGE) -Reducer 23 <- Map 16 (CUSTOM_SIMPLE_EDGE) -Reducer 3 <- Map 13 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Reducer 15 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Reducer 19 (ONE_TO_ONE_EDGE), Reducer 4 (ONE_TO_ONE_EDGE) -Reducer 6 <- Reducer 22 (ONE_TO_ONE_EDGE), Reducer 5 (ONE_TO_ONE_EDGE) +Reducer 14 <- Map 13 (SIMPLE_EDGE), Map 15 (SIMPLE_EDGE) +Reducer 16 <- Map 15 (CUSTOM_SIMPLE_EDGE) +Reducer 17 <- Map 15 (SIMPLE_EDGE), Map 21 (SIMPLE_EDGE) +Reducer 18 <- Reducer 17 (SIMPLE_EDGE) +Reducer 19 <- Map 15 (SIMPLE_EDGE), Map 22 (SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 11 (SIMPLE_EDGE) +Reducer 20 <- Reducer 19 (SIMPLE_EDGE) +Reducer 3 <- Map 12 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 4 <- Reducer 14 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 5 <- Reducer 18 (ONE_TO_ONE_EDGE), Reducer 4 (ONE_TO_ONE_EDGE) +Reducer 6 <- Reducer 20 (ONE_TO_ONE_EDGE), Reducer 5 (ONE_TO_ONE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) Reducer 8 <- Reducer 7 (SIMPLE_EDGE) Reducer 9 <- Reducer 5 (CUSTOM_SIMPLE_EDGE) @@ -136,16 +133,16 @@ Stage-0 limit:100 Stage-1 Reducer 8 vectorized - File Output Operator [FS_238] - Limit [LIM_237] (rows=1 width=383) + File Output Operator [FS_226] + Limit [LIM_225] (rows=1 width=383) Number of rows:100 - Select Operator [SEL_236] (rows=1 width=383) + Select Operator [SEL_224] (rows=1 width=383) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] <-Reducer 7 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_235] - Select Operator [SEL_234] (rows=1 width=383) + SHUFFLE [RS_223] + Select Operator [SEL_222] (rows=1 width=383) Output:["_col0","_col1","_col2","_col3","_col4","_col6"] - Group By Operator [GBY_233] (rows=1 width=367) + Group By Operator [GBY_221] (rows=1 width=367) Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4 <-Reducer 6 [SIMPLE_EDGE] SHUFFLE [RS_68] @@ -159,7 +156,7 @@ Stage-0 Filter Operator [FIL_65] (rows=1 width=363) predicate:_col14 is null Merge Join Operator [MERGEJOIN_183] (rows=1 width=363) - Conds:RS_62._col0=RS_232._col0(Left Outer),Output:["_col6","_col7","_col8","_col9","_col10","_col14"] + Conds:RS_62._col0=RS_220._col0(Left Outer),Output:["_col6","_col7","_col8","_col9","_col10","_col14"] <-Reducer 5 [ONE_TO_ONE_EDGE] PARTITION_ONLY_SHUFFLE [RS_62] PartitionCols:_col0 @@ -168,18 +165,56 @@ Stage-0 Filter Operator [FIL_46] (rows=1 width=367) predicate:_col12 is null Merge Join Operator [MERGEJOIN_182] (rows=33 width=367) - Conds:RS_43._col0=RS_222._col0(Left Outer),Output:["_col0","_col6","_col7","_col8","_col9","_col10","_col12"] + Conds:RS_43._col0=RS_212._col0(Left Outer),Output:["_col0","_col6","_col7","_col8","_col9","_col10","_col12"] <-Reducer 4 [ONE_TO_ONE_EDGE] FORWARD [RS_43] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_181] (rows=6841 width=363) Conds:RS_40._col0=RS_41._col0(Left Semi),Output:["_col0","_col6","_col7","_col8","_col9","_col10"] + <-Reducer 14 [SIMPLE_EDGE] + SHUFFLE [RS_41] + PartitionCols:_col0 + Group By Operator [GBY_39] (rows=116289 width=1) + Output:["_col0"],keys:_col0 + Select Operator [SEL_17] (rows=43153353 width=1) + Output:["_col0"] + Merge Join Operator [MERGEJOIN_178] (rows=43153353 width=1) + Conds:RS_204._col0=RS_194._col0(Inner),Output:["_col1"] + <-Map 15 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_194] + PartitionCols:_col0 + Select Operator [SEL_193] (rows=150 width=4) + Output:["_col0"] + Filter Operator [FIL_192] (rows=150 width=12) + predicate:((d_year = 1999) and d_moy BETWEEN 1 AND 3) + TableScan [TS_11] (rows=73049 width=12) + default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] + <-Map 13 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_204] + PartitionCols:_col0 + Select Operator [SEL_203] (rows=525327388 width=7) + Output:["_col0","_col1"] + Filter Operator [FIL_202] (rows=525327388 width=7) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_15_date_dim_d_date_sk_min) AND DynamicValue(RS_15_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_15_date_dim_d_date_sk_bloom_filter))) and ss_customer_sk is not null and ss_sold_date_sk is not null) + TableScan [TS_8] (rows=575995635 width=7) + default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_customer_sk"] + <-Reducer 16 [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 15 [CUSTOM_SIMPLE_EDGE] vectorized + SHUFFLE [RS_199] + Group By Operator [GBY_198] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_195] (rows=150 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_193] <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_40] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_177] (rows=4605476 width=363) Conds:RS_35._col1=RS_191._col0(Inner),Output:["_col0","_col6","_col7","_col8","_col9","_col10"] - <-Map 13 [SIMPLE_EDGE] vectorized + <-Map 12 [SIMPLE_EDGE] vectorized SHUFFLE [RS_191] PartitionCols:_col0 Select Operator [SEL_190] (rows=1861800 width=363) @@ -200,7 +235,7 @@ Stage-0 predicate:(c_current_addr_sk is not null and c_current_cdemo_sk is not null) TableScan [TS_0] (rows=80000000 width=11) default@customer,c,Tbl:COMPLETE,Col:COMPLETE,Output:["c_customer_sk","c_current_cdemo_sk","c_current_addr_sk"] - <-Map 12 [SIMPLE_EDGE] vectorized + <-Map 11 [SIMPLE_EDGE] vectorized SHUFFLE [RS_189] PartitionCols:_col0 Select Operator [SEL_188] (rows=2352941 width=90) @@ -209,85 +244,36 @@ Stage-0 predicate:(ca_state) IN ('CO', 'IL', 'MN') TableScan [TS_3] (rows=40000000 width=90) default@customer_address,ca,Tbl:COMPLETE,Col:COMPLETE,Output:["ca_address_sk","ca_state"] - <-Reducer 15 [SIMPLE_EDGE] - SHUFFLE [RS_41] - PartitionCols:_col0 - Group By Operator [GBY_39] (rows=116289 width=1) - Output:["_col0"],keys:_col0 - Select Operator [SEL_17] (rows=43153353 width=1) - Output:["_col0"] - Merge Join Operator [MERGEJOIN_178] (rows=43153353 width=1) - Conds:RS_212._col0=RS_194._col0(Inner),Output:["_col1"] - <-Map 16 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_194] - PartitionCols:_col0 - Select Operator [SEL_193] (rows=150 width=4) - Output:["_col0"] - Filter Operator [FIL_192] (rows=150 width=12) - predicate:((d_year = 1999) and d_moy BETWEEN 1 AND 3) - TableScan [TS_11] (rows=73049 width=12) - default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] - <-Map 14 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_212] - PartitionCols:_col0 - Select Operator [SEL_211] (rows=525327388 width=7) - Output:["_col0","_col1"] - Filter Operator [FIL_210] (rows=525327388 width=7) - predicate:((ss_customer_sk BETWEEN DynamicValue(RS_40_c_c_customer_sk_min) AND DynamicValue(RS_40_c_c_customer_sk_max) and in_bloom_filter(ss_customer_sk, DynamicValue(RS_40_c_c_customer_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_15_date_dim_d_date_sk_min) AND DynamicValue(RS_15_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_15_date_dim_d_date_sk_bloom_filter))) and ss_customer_sk is not null and ss_sold_date_sk is not null) - TableScan [TS_8] (rows=575995635 width=7) - default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_customer_sk"] - <-Reducer 11 [BROADCAST_EDGE] vectorized - BROADCAST [RS_209] - Group By Operator [GBY_208] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=4291485)"] - <-Reducer 3 [CUSTOM_SIMPLE_EDGE] - SHUFFLE [RS_137] - Group By Operator [GBY_136] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=4291485)"] - Select Operator [SEL_135] (rows=4605476 width=4) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_177] - <-Reducer 17 [BROADCAST_EDGE] vectorized - BROADCAST [RS_207] - Group By Operator [GBY_206] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 16 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_203] - Group By Operator [GBY_200] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_195] (rows=150 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_193] - <-Reducer 19 [ONE_TO_ONE_EDGE] vectorized - FORWARD [RS_222] + <-Reducer 18 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_212] PartitionCols:_col0 - Select Operator [SEL_221] (rows=116289 width=7) + Select Operator [SEL_211] (rows=116289 width=7) Output:["_col0","_col1"] - Group By Operator [GBY_220] (rows=116289 width=3) + Group By Operator [GBY_210] (rows=116289 width=3) Output:["_col0"],keys:KEY._col0 - <-Reducer 18 [SIMPLE_EDGE] + <-Reducer 17 [SIMPLE_EDGE] SHUFFLE [RS_29] PartitionCols:_col0 Group By Operator [GBY_28] (rows=116289 width=3) Output:["_col0"],keys:_col1 Merge Join Operator [MERGEJOIN_179] (rows=11823304 width=3) - Conds:RS_219._col0=RS_196._col0(Inner),Output:["_col1"] - <-Map 16 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_196] + Conds:RS_209._col0=RS_196._col0(Inner),Output:["_col1"] + <-Map 15 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_196] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_193] - <-Map 24 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_219] + <-Map 21 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_209] PartitionCols:_col0 - Select Operator [SEL_218] (rows=143930993 width=7) + Select Operator [SEL_208] (rows=143930993 width=7) Output:["_col0","_col1"] - Filter Operator [FIL_217] (rows=143930993 width=7) - predicate:((ws_bill_customer_sk BETWEEN DynamicValue(RS_43_c_c_customer_sk_min) AND DynamicValue(RS_43_c_c_customer_sk_max) and in_bloom_filter(ws_bill_customer_sk, DynamicValue(RS_43_c_c_customer_sk_bloom_filter))) and (ws_sold_date_sk BETWEEN DynamicValue(RS_25_date_dim_d_date_sk_min) AND DynamicValue(RS_25_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_25_date_dim_d_date_sk_bloom_filter))) and ws_bill_customer_sk is not null and ws_sold_date_sk is not null) + Filter Operator [FIL_207] (rows=143930993 width=7) + predicate:((ws_bill_customer_sk BETWEEN DynamicValue(RS_43_c_c_customer_sk_min) AND DynamicValue(RS_43_c_c_customer_sk_max) and in_bloom_filter(ws_bill_customer_sk, DynamicValue(RS_43_c_c_customer_sk_bloom_filter))) and ws_bill_customer_sk is not null and ws_sold_date_sk is not null) TableScan [TS_18] (rows=144002668 width=7) default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_bill_customer_sk"] <-Reducer 10 [BROADCAST_EDGE] vectorized - BROADCAST [RS_216] - Group By Operator [GBY_215] (rows=1 width=12) + BROADCAST [RS_206] + Group By Operator [GBY_205] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Reducer 4 [CUSTOM_SIMPLE_EDGE] FORWARD [RS_152] @@ -296,58 +282,36 @@ Stage-0 Select Operator [SEL_150] (rows=6841 width=4) Output:["_col0"] Please refer to the previous Merge Join Operator [MERGEJOIN_181] - <-Reducer 20 [BROADCAST_EDGE] vectorized - BROADCAST [RS_214] - Group By Operator [GBY_213] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 16 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_204] - Group By Operator [GBY_201] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_197] (rows=150 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_193] - <-Reducer 22 [ONE_TO_ONE_EDGE] vectorized - FORWARD [RS_232] + <-Reducer 20 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_220] PartitionCols:_col0 - Select Operator [SEL_231] (rows=115467 width=7) + Select Operator [SEL_219] (rows=115467 width=7) Output:["_col0","_col1"] - Group By Operator [GBY_230] (rows=115467 width=3) + Group By Operator [GBY_218] (rows=115467 width=3) Output:["_col0"],keys:KEY._col0 - <-Reducer 21 [SIMPLE_EDGE] + <-Reducer 19 [SIMPLE_EDGE] SHUFFLE [RS_59] PartitionCols:_col0 Group By Operator [GBY_58] (rows=115467 width=3) Output:["_col0"],keys:_col1 Merge Join Operator [MERGEJOIN_180] (rows=23255411 width=3) - Conds:RS_229._col0=RS_198._col0(Inner),Output:["_col1"] - <-Map 16 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_198] + Conds:RS_217._col0=RS_197._col0(Inner),Output:["_col1"] + <-Map 15 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_197] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_193] - <-Map 25 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_229] + <-Map 22 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_217] PartitionCols:_col0 - Select Operator [SEL_228] (rows=285115246 width=7) + Select Operator [SEL_216] (rows=285115246 width=7) Output:["_col0","_col1"] - Filter Operator [FIL_227] (rows=285115246 width=7) - predicate:((cs_ship_customer_sk BETWEEN DynamicValue(RS_62_c_c_customer_sk_min) AND DynamicValue(RS_62_c_c_customer_sk_max) and in_bloom_filter(cs_ship_customer_sk, DynamicValue(RS_62_c_c_customer_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_55_date_dim_d_date_sk_min) AND DynamicValue(RS_55_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_55_date_dim_d_date_sk_bloom_filter))) and cs_ship_customer_sk is not null and cs_sold_date_sk is not null) + Filter Operator [FIL_215] (rows=285115246 width=7) + predicate:((cs_ship_customer_sk BETWEEN DynamicValue(RS_62_c_c_customer_sk_min) AND DynamicValue(RS_62_c_c_customer_sk_max) and in_bloom_filter(cs_ship_customer_sk, DynamicValue(RS_62_c_c_customer_sk_bloom_filter))) and cs_ship_customer_sk is not null and cs_sold_date_sk is not null) TableScan [TS_48] (rows=287989836 width=7) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_ship_customer_sk"] - <-Reducer 23 [BROADCAST_EDGE] vectorized - BROADCAST [RS_224] - Group By Operator [GBY_223] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 16 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_205] - Group By Operator [GBY_202] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_199] (rows=150 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_193] <-Reducer 9 [BROADCAST_EDGE] vectorized - BROADCAST [RS_226] - Group By Operator [GBY_225] (rows=1 width=12) + BROADCAST [RS_214] + Group By Operator [GBY_213] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Reducer 5 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_167] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query7.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query7.q.out index 6cfaac639f..ed7f029a0e 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query7.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query7.q.out @@ -53,12 +53,11 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 11 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) -Reducer 11 <- Map 10 (CUSTOM_SIMPLE_EDGE) +Map 1 <- Reducer 9 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) Reducer 3 <- Map 10 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 12 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Map 13 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) +Reducer 4 <- Map 11 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 5 <- Map 12 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) Reducer 9 <- Map 8 (CUSTOM_SIMPLE_EDGE) @@ -68,16 +67,16 @@ Stage-0 limit:100 Stage-1 Reducer 7 vectorized - File Output Operator [FS_128] - Limit [LIM_127] (rows=100 width=444) + File Output Operator [FS_123] + Limit [LIM_122] (rows=100 width=444) Number of rows:100 - Select Operator [SEL_126] (rows=310774 width=444) + Select Operator [SEL_121] (rows=310774 width=444) Output:["_col0","_col1","_col2","_col3","_col4"] <-Reducer 6 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_125] - Select Operator [SEL_124] (rows=310774 width=444) + SHUFFLE [RS_120] + Select Operator [SEL_119] (rows=310774 width=444) Output:["_col0","_col1","_col2","_col3","_col4"] - Group By Operator [GBY_123] (rows=310774 width=476) + Group By Operator [GBY_118] (rows=310774 width=476) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8"],aggregations:["sum(VALUE._col0)","count(VALUE._col1)","sum(VALUE._col2)","count(VALUE._col3)","sum(VALUE._col4)","count(VALUE._col5)","sum(VALUE._col6)","count(VALUE._col7)"],keys:KEY._col0 <-Reducer 5 [SIMPLE_EDGE] SHUFFLE [RS_28] @@ -87,11 +86,11 @@ Stage-0 Top N Key Operator [TNK_54] (rows=1441769 width=100) keys:_col12,sort order:+,top n:100 Merge Join Operator [MERGEJOIN_98] (rows=1441769 width=100) - Conds:RS_23._col1=RS_122._col0(Inner),Output:["_col4","_col5","_col6","_col7","_col12"] - <-Map 13 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_122] + Conds:RS_23._col1=RS_117._col0(Inner),Output:["_col4","_col5","_col6","_col7","_col12"] + <-Map 12 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_117] PartitionCols:_col0 - Select Operator [SEL_121] (rows=462000 width=104) + Select Operator [SEL_116] (rows=462000 width=104) Output:["_col0","_col1"] TableScan [TS_12] (rows=462000 width=104) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_item_id"] @@ -99,13 +98,13 @@ Stage-0 SHUFFLE [RS_23] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_97] (rows=1441769 width=4) - Conds:RS_20._col3=RS_120._col0(Inner),Output:["_col1","_col4","_col5","_col6","_col7"] - <-Map 12 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_120] + Conds:RS_20._col3=RS_115._col0(Inner),Output:["_col1","_col4","_col5","_col6","_col7"] + <-Map 11 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_115] PartitionCols:_col0 - Select Operator [SEL_119] (rows=2300 width=4) + Select Operator [SEL_114] (rows=2300 width=4) Output:["_col0"] - Filter Operator [FIL_118] (rows=2300 width=174) + Filter Operator [FIL_113] (rows=2300 width=174) predicate:((p_channel_email = 'N') or (p_channel_event = 'N')) TableScan [TS_9] (rows=2300 width=174) default@promotion,promotion,Tbl:COMPLETE,Col:COMPLETE,Output:["p_promo_sk","p_channel_email","p_channel_event"] @@ -113,13 +112,13 @@ Stage-0 SHUFFLE [RS_20] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_96] (rows=1441769 width=4) - Conds:RS_17._col0=RS_109._col0(Inner),Output:["_col1","_col3","_col4","_col5","_col6","_col7"] + Conds:RS_17._col0=RS_112._col0(Inner),Output:["_col1","_col3","_col4","_col5","_col6","_col7"] <-Map 10 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_109] + SHUFFLE [RS_112] PartitionCols:_col0 - Select Operator [SEL_108] (rows=652 width=4) + Select Operator [SEL_111] (rows=652 width=4) Output:["_col0"] - Filter Operator [FIL_107] (rows=652 width=8) + Filter Operator [FIL_110] (rows=652 width=8) predicate:(d_year = 1998) TableScan [TS_6] (rows=73049 width=8) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year"] @@ -127,7 +126,7 @@ Stage-0 SHUFFLE [RS_17] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_95] (rows=4037893 width=4) - Conds:RS_117._col2=RS_101._col0(Inner),Output:["_col0","_col1","_col3","_col4","_col5","_col6","_col7"] + Conds:RS_109._col2=RS_101._col0(Inner),Output:["_col0","_col1","_col3","_col4","_col5","_col6","_col7"] <-Map 8 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_101] PartitionCols:_col0 @@ -138,25 +137,14 @@ Stage-0 TableScan [TS_3] (rows=1861800 width=268) default@customer_demographics,customer_demographics,Tbl:COMPLETE,Col:COMPLETE,Output:["cd_demo_sk","cd_gender","cd_marital_status","cd_education_status"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_117] + SHUFFLE [RS_109] PartitionCols:_col2 - Select Operator [SEL_116] (rows=501686735 width=340) + Select Operator [SEL_108] (rows=501686735 width=340) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] - Filter Operator [FIL_115] (rows=501686735 width=340) - predicate:((ss_cdemo_sk BETWEEN DynamicValue(RS_15_customer_demographics_cd_demo_sk_min) AND DynamicValue(RS_15_customer_demographics_cd_demo_sk_max) and in_bloom_filter(ss_cdemo_sk, DynamicValue(RS_15_customer_demographics_cd_demo_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_18_date_dim_d_date_sk_min) AND DynamicValue(RS_18_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_18_date_dim_d_date_sk_bloom_filter))) and ss_cdemo_sk is not null and ss_promo_sk is not null and ss_sold_date_sk is not null) + Filter Operator [FIL_107] (rows=501686735 width=340) + predicate:((ss_cdemo_sk BETWEEN DynamicValue(RS_15_customer_demographics_cd_demo_sk_min) AND DynamicValue(RS_15_customer_demographics_cd_demo_sk_max) and in_bloom_filter(ss_cdemo_sk, DynamicValue(RS_15_customer_demographics_cd_demo_sk_bloom_filter))) and ss_cdemo_sk is not null and ss_promo_sk is not null and ss_sold_date_sk is not null) TableScan [TS_0] (rows=575995635 width=340) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_cdemo_sk","ss_promo_sk","ss_quantity","ss_list_price","ss_sales_price","ss_coupon_amt"] - <-Reducer 11 [BROADCAST_EDGE] vectorized - BROADCAST [RS_114] - Group By Operator [GBY_113] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 10 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_112] - Group By Operator [GBY_111] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_110] (rows=652 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_108] <-Reducer 9 [BROADCAST_EDGE] vectorized BROADCAST [RS_106] Group By Operator [GBY_105] (rows=1 width=12) diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query71.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query71.q.out index 81f7961df9..8c60eeaf48 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query71.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query71.q.out @@ -91,18 +91,16 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 19 (BROADCAST_EDGE), Reducer 21 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) -Map 10 <- Reducer 13 (BROADCAST_EDGE), Reducer 19 (BROADCAST_EDGE), Reducer 21 (BROADCAST_EDGE) -Map 14 <- Reducer 17 (BROADCAST_EDGE), Reducer 19 (BROADCAST_EDGE), Reducer 21 (BROADCAST_EDGE) +Map 1 <- Reducer 9 (BROADCAST_EDGE) +Map 10 <- Reducer 13 (BROADCAST_EDGE) +Map 14 <- Reducer 17 (BROADCAST_EDGE) Reducer 11 <- Map 10 (SIMPLE_EDGE), Map 12 (SIMPLE_EDGE), Union 3 (CONTAINS) Reducer 13 <- Map 12 (CUSTOM_SIMPLE_EDGE) Reducer 15 <- Map 14 (SIMPLE_EDGE), Map 16 (SIMPLE_EDGE), Union 3 (CONTAINS) Reducer 17 <- Map 16 (CUSTOM_SIMPLE_EDGE) -Reducer 19 <- Map 18 (CUSTOM_SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE), Union 3 (CONTAINS) -Reducer 21 <- Map 20 (CUSTOM_SIMPLE_EDGE) Reducer 4 <- Map 18 (SIMPLE_EDGE), Union 3 (SIMPLE_EDGE) -Reducer 5 <- Map 20 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) +Reducer 5 <- Map 19 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) Reducer 9 <- Map 8 (CUSTOM_SIMPLE_EDGE) @@ -112,14 +110,14 @@ Stage-0 limit:-1 Stage-1 Reducer 7 vectorized - File Output Operator [FS_188] - Select Operator [SEL_187] (rows=1991967 width=223) + File Output Operator [FS_174] + Select Operator [SEL_173] (rows=1991967 width=223) Output:["_col0","_col1","_col2","_col3","_col4"] <-Reducer 6 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_186] - Select Operator [SEL_185] (rows=1991967 width=227) + SHUFFLE [RS_172] + Select Operator [SEL_171] (rows=1991967 width=227) Output:["_col1","_col2","_col3","_col4","_col5"] - Group By Operator [GBY_184] (rows=1991967 width=223) + Group By Operator [GBY_170] (rows=1991967 width=223) Output:["_col0","_col1","_col2","_col3","_col4"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3 <-Reducer 5 [SIMPLE_EDGE] SHUFFLE [RS_46] @@ -127,13 +125,13 @@ Stage-0 Group By Operator [GBY_45] (rows=1991967 width=223) Output:["_col0","_col1","_col2","_col3","_col4"],aggregations:["sum(_col0)"],keys:_col4, _col7, _col8, _col5 Merge Join Operator [MERGEJOIN_140] (rows=1991967 width=112) - Conds:RS_41._col2=RS_173._col0(Inner),Output:["_col0","_col4","_col5","_col7","_col8"] - <-Map 20 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_173] + Conds:RS_41._col2=RS_169._col0(Inner),Output:["_col0","_col4","_col5","_col7","_col8"] + <-Map 19 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_169] PartitionCols:_col0 - Select Operator [SEL_172] (rows=43200 width=12) + Select Operator [SEL_168] (rows=43200 width=12) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_171] (rows=43200 width=99) + Filter Operator [FIL_167] (rows=43200 width=99) predicate:(t_meal_time) IN ('breakfast', 'dinner') TableScan [TS_35] (rows=86400 width=99) default@time_dim,time_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["t_time_sk","t_hour","t_minute","t_meal_time"] @@ -141,13 +139,13 @@ Stage-0 SHUFFLE [RS_41] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_139] (rows=3983933 width=104) - Conds:Union 3._col1=RS_163._col0(Inner),Output:["_col0","_col2","_col4","_col5"] + Conds:Union 3._col1=RS_166._col0(Inner),Output:["_col0","_col2","_col4","_col5"] <-Map 18 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_163] + SHUFFLE [RS_166] PartitionCols:_col0 - Select Operator [SEL_162] (rows=7333 width=107) + Select Operator [SEL_165] (rows=7333 width=107) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_161] (rows=7333 width=111) + Filter Operator [FIL_164] (rows=7333 width=111) predicate:(i_manager_id = 1) TableScan [TS_32] (rows=462000 width=111) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_brand_id","i_brand","i_manager_id"] @@ -158,107 +156,79 @@ Stage-0 Select Operator [SEL_146] (rows=7751851 width=98) Output:["_col0","_col1","_col2"] Merge Join Operator [MERGEJOIN_145] (rows=7751851 width=98) - Conds:RS_199._col0=RS_191._col0(Inner),Output:["_col1","_col2","_col3"] + Conds:RS_185._col0=RS_177._col0(Inner),Output:["_col1","_col2","_col3"] <-Map 12 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_191] + PARTITION_ONLY_SHUFFLE [RS_177] PartitionCols:_col0 - Select Operator [SEL_190] (rows=50 width=4) + Select Operator [SEL_176] (rows=50 width=4) Output:["_col0"] - Filter Operator [FIL_189] (rows=50 width=12) + Filter Operator [FIL_175] (rows=50 width=12) predicate:((d_moy = 12) and (d_year = 2001)) TableScan [TS_13] (rows=73049 width=12) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] <-Map 10 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_199] + SHUFFLE [RS_185] PartitionCols:_col0 - Select Operator [SEL_198] (rows=285116947 width=123) + Select Operator [SEL_184] (rows=285116947 width=123) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_197] (rows=285116947 width=123) - predicate:((cs_item_sk BETWEEN DynamicValue(RS_39_item_i_item_sk_min) AND DynamicValue(RS_39_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_39_item_i_item_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_17_date_dim_d_date_sk_min) AND DynamicValue(RS_17_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_17_date_dim_d_date_sk_bloom_filter))) and (cs_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(cs_sold_time_sk, DynamicValue(RS_42_time_dim_t_time_sk_bloom_filter))) and cs_sold_date_sk is not null and cs_sold_time_sk is not null) + Filter Operator [FIL_183] (rows=285116947 width=123) + predicate:((cs_sold_date_sk BETWEEN DynamicValue(RS_17_date_dim_d_date_sk_min) AND DynamicValue(RS_17_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_17_date_dim_d_date_sk_bloom_filter))) and cs_sold_date_sk is not null and cs_sold_time_sk is not null) TableScan [TS_10] (rows=287989836 width=123) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_sold_time_sk","cs_item_sk","cs_ext_sales_price"] - <-Reducer 19 [BROADCAST_EDGE] vectorized - BROADCAST [RS_169] - Group By Operator [GBY_167] (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_166] - Group By Operator [GBY_165] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_164] (rows=7333 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_162] - <-Reducer 21 [BROADCAST_EDGE] vectorized - BROADCAST [RS_179] - 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 20 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_176] - Group By Operator [GBY_175] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_174] (rows=43200 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_172] <-Reducer 13 [BROADCAST_EDGE] vectorized - BROADCAST [RS_196] - Group By Operator [GBY_195] (rows=1 width=12) + BROADCAST [RS_182] + Group By Operator [GBY_181] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Map 12 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_194] - Group By Operator [GBY_193] (rows=1 width=12) + PARTITION_ONLY_SHUFFLE [RS_180] + Group By Operator [GBY_179] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_192] (rows=50 width=4) + Select Operator [SEL_178] (rows=50 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_190] + Please refer to the previous Select Operator [SEL_176] <-Reducer 15 [CONTAINS] Reduce Output Operator [RS_152] PartitionCols:_col1 Select Operator [SEL_150] (rows=14384397 width=4) Output:["_col0","_col1","_col2"] Merge Join Operator [MERGEJOIN_149] (rows=14384397 width=4) - Conds:RS_210._col0=RS_202._col0(Inner),Output:["_col1","_col2","_col3"] + Conds:RS_196._col0=RS_188._col0(Inner),Output:["_col1","_col2","_col3"] <-Map 16 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_202] + PARTITION_ONLY_SHUFFLE [RS_188] PartitionCols:_col0 - Select Operator [SEL_201] (rows=50 width=4) + Select Operator [SEL_187] (rows=50 width=4) Output:["_col0"] - Filter Operator [FIL_200] (rows=50 width=12) + Filter Operator [FIL_186] (rows=50 width=12) predicate:((d_moy = 12) and (d_year = 2001)) TableScan [TS_24] (rows=73049 width=12) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] <-Map 14 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_210] + SHUFFLE [RS_196] PartitionCols:_col0 - Select Operator [SEL_209] (rows=525325345 width=118) + Select Operator [SEL_195] (rows=525325345 width=118) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_208] (rows=525325345 width=118) - predicate:((ss_item_sk BETWEEN DynamicValue(RS_39_item_i_item_sk_min) AND DynamicValue(RS_39_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_39_item_i_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_28_date_dim_d_date_sk_min) AND DynamicValue(RS_28_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_28_date_dim_d_date_sk_bloom_filter))) and (ss_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(ss_sold_time_sk, DynamicValue(RS_42_time_dim_t_time_sk_bloom_filter))) and ss_sold_date_sk is not null and ss_sold_time_sk is not null) + Filter Operator [FIL_194] (rows=525325345 width=118) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_28_date_dim_d_date_sk_min) AND DynamicValue(RS_28_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_28_date_dim_d_date_sk_bloom_filter))) and ss_sold_date_sk is not null and ss_sold_time_sk is not null) TableScan [TS_21] (rows=575995635 width=118) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_sold_time_sk","ss_item_sk","ss_ext_sales_price"] - <-Reducer 19 [BROADCAST_EDGE] vectorized - BROADCAST [RS_170] - Please refer to the previous Group By Operator [GBY_167] - <-Reducer 21 [BROADCAST_EDGE] vectorized - BROADCAST [RS_180] - Please refer to the previous Group By Operator [GBY_177] <-Reducer 17 [BROADCAST_EDGE] vectorized - BROADCAST [RS_207] - Group By Operator [GBY_206] (rows=1 width=12) + BROADCAST [RS_193] + Group By Operator [GBY_192] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Map 16 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_205] - Group By Operator [GBY_204] (rows=1 width=12) + PARTITION_ONLY_SHUFFLE [RS_191] + Group By Operator [GBY_190] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_203] (rows=50 width=4) + Select Operator [SEL_189] (rows=50 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_201] + Please refer to the previous Select Operator [SEL_187] <-Reducer 2 [CONTAINS] Reduce Output Operator [RS_144] PartitionCols:_col1 Select Operator [SEL_142] (rows=3941098 width=118) Output:["_col0","_col1","_col2"] Merge Join Operator [MERGEJOIN_141] (rows=3941098 width=118) - Conds:RS_183._col0=RS_155._col0(Inner),Output:["_col1","_col2","_col3"] + Conds:RS_163._col0=RS_155._col0(Inner),Output:["_col1","_col2","_col3"] <-Map 8 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_155] PartitionCols:_col0 @@ -269,20 +239,14 @@ Stage-0 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 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_183] + SHUFFLE [RS_163] PartitionCols:_col0 - Select Operator [SEL_182] (rows=143930836 width=123) + Select Operator [SEL_162] (rows=143930836 width=123) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_181] (rows=143930836 width=123) - predicate:((ws_item_sk BETWEEN DynamicValue(RS_39_item_i_item_sk_min) AND DynamicValue(RS_39_item_i_item_sk_max) and in_bloom_filter(ws_item_sk, DynamicValue(RS_39_item_i_item_sk_bloom_filter))) and (ws_sold_date_sk BETWEEN DynamicValue(RS_7_date_dim_d_date_sk_min) AND DynamicValue(RS_7_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_7_date_dim_d_date_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_sold_date_sk is not null and ws_sold_time_sk is not null) + Filter Operator [FIL_161] (rows=143930836 width=123) + predicate:((ws_sold_date_sk BETWEEN DynamicValue(RS_7_date_dim_d_date_sk_min) AND DynamicValue(RS_7_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_7_date_dim_d_date_sk_bloom_filter))) and ws_sold_date_sk is not null and ws_sold_time_sk is not null) TableScan [TS_0] (rows=144002668 width=123) default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_sold_time_sk","ws_item_sk","ws_ext_sales_price"] - <-Reducer 19 [BROADCAST_EDGE] vectorized - BROADCAST [RS_168] - Please refer to the previous Group By Operator [GBY_167] - <-Reducer 21 [BROADCAST_EDGE] vectorized - BROADCAST [RS_178] - Please refer to the previous Group By Operator [GBY_177] <-Reducer 9 [BROADCAST_EDGE] vectorized BROADCAST [RS_160] Group By Operator [GBY_159] (rows=1 width=12) diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query72.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query72.q.out index f27fbc9273..4ea30b76a6 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query72.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query72.q.out @@ -81,20 +81,18 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 9 <- Reducer 17 (BROADCAST_EDGE), Reducer 19 (BROADCAST_EDGE), Reducer 21 (BROADCAST_EDGE) +Map 9 <- Reducer 17 (BROADCAST_EDGE) Reducer 10 <- Map 16 (SIMPLE_EDGE), Map 9 (SIMPLE_EDGE) Reducer 11 <- Map 18 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE) -Reducer 12 <- Map 20 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE) -Reducer 13 <- Map 22 (SIMPLE_EDGE), Reducer 12 (SIMPLE_EDGE) -Reducer 14 <- Map 23 (SIMPLE_EDGE), Reducer 13 (SIMPLE_EDGE) -Reducer 15 <- Map 24 (SIMPLE_EDGE), Reducer 14 (SIMPLE_EDGE) +Reducer 12 <- Map 19 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE) +Reducer 13 <- Map 20 (SIMPLE_EDGE), Reducer 12 (SIMPLE_EDGE) +Reducer 14 <- Map 21 (SIMPLE_EDGE), Reducer 13 (SIMPLE_EDGE) +Reducer 15 <- Map 22 (SIMPLE_EDGE), Reducer 14 (SIMPLE_EDGE) Reducer 17 <- Map 16 (CUSTOM_SIMPLE_EDGE) -Reducer 19 <- Map 18 (CUSTOM_SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) -Reducer 21 <- Map 20 (CUSTOM_SIMPLE_EDGE) Reducer 3 <- Reducer 15 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 25 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Map 26 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) +Reducer 4 <- Map 23 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 5 <- Map 24 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) @@ -103,14 +101,14 @@ Stage-0 limit:100 Stage-1 Reducer 7 vectorized - File Output Operator [FS_293] - Limit [LIM_292] (rows=100 width=312) + File Output Operator [FS_283] + Limit [LIM_282] (rows=100 width=312) Number of rows:100 - Select Operator [SEL_291] (rows=384313734 width=312) + Select Operator [SEL_281] (rows=384313734 width=312) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] <-Reducer 6 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_290] - Group By Operator [GBY_289] (rows=384313734 width=312) + SHUFFLE [RS_280] + Group By Operator [GBY_279] (rows=384313734 width=312) Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["count(VALUE._col0)","count(VALUE._col1)","count(VALUE._col2)"],keys:KEY._col0, KEY._col1, KEY._col2 <-Reducer 5 [SIMPLE_EDGE] SHUFFLE [RS_64] @@ -120,11 +118,11 @@ Stage-0 Select Operator [SEL_61] (rows=1574305390 width=292) Output:["_col0","_col1","_col2","_col3","_col4"] Merge Join Operator [MERGEJOIN_246] (rows=1574305390 width=292) - Conds:RS_58._col4, _col6=RS_288._col0, _col1(Left Outer),Output:["_col13","_col15","_col19","_col25"] - <-Map 26 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_288] + Conds:RS_58._col4, _col6=RS_278._col0, _col1(Left Outer),Output:["_col13","_col15","_col19","_col25"] + <-Map 24 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_278] PartitionCols:_col0, _col1 - Select Operator [SEL_287] (rows=28798881 width=8) + Select Operator [SEL_277] (rows=28798881 width=8) Output:["_col0","_col1"] TableScan [TS_56] (rows=28798881 width=8) default@catalog_returns,catalog_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["cr_item_sk","cr_order_number"] @@ -134,13 +132,13 @@ Stage-0 Select Operator [SEL_55] (rows=610435044 width=300) Output:["_col4","_col6","_col13","_col15","_col19","_col25"] Merge Join Operator [MERGEJOIN_245] (rows=610435044 width=300) - Conds:RS_52._col0, _col19=RS_286._col0, _col1(Inner),Output:["_col5","_col9","_col14","_col16","_col19","_col23"] - <-Map 25 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_286] + Conds:RS_52._col0, _col19=RS_276._col0, _col1(Inner),Output:["_col5","_col9","_col14","_col16","_col19","_col23"] + <-Map 23 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_276] PartitionCols:_col0, _col1 - Select Operator [SEL_285] (rows=73049 width=8) + Select Operator [SEL_275] (rows=73049 width=8) Output:["_col0","_col1"] - Filter Operator [FIL_284] (rows=73049 width=8) + Filter Operator [FIL_274] (rows=73049 width=8) predicate:d_week_seq is not null TableScan [TS_42] (rows=73049 width=8) default@date_dim,d2,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_week_seq"] @@ -159,11 +157,11 @@ Stage-0 Filter Operator [FIL_40] (rows=2726340 width=219) predicate:(_col17 > _col10) Merge Join Operator [MERGEJOIN_243] (rows=8179022 width=219) - Conds:RS_37._col1=RS_283._col0(Inner),Output:["_col4","_col6","_col7","_col9","_col10","_col13","_col15","_col17"] - <-Map 24 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_283] + Conds:RS_37._col1=RS_273._col0(Inner),Output:["_col4","_col6","_col7","_col9","_col10","_col13","_col15","_col17"] + <-Map 22 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_273] PartitionCols:_col0 - Select Operator [SEL_282] (rows=73049 width=12) + Select Operator [SEL_272] (rows=73049 width=12) Output:["_col0","_col1"] TableScan [TS_20] (rows=73049 width=98) default@date_dim,d3,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"] @@ -171,11 +169,11 @@ Stage-0 SHUFFLE [RS_37] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_242] (rows=8179022 width=214) - Conds:RS_34._col4=RS_281._col0(Inner),Output:["_col1","_col4","_col6","_col7","_col9","_col10","_col13","_col15"] - <-Map 23 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_281] + Conds:RS_34._col4=RS_271._col0(Inner),Output:["_col1","_col4","_col6","_col7","_col9","_col10","_col13","_col15"] + <-Map 21 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_271] PartitionCols:_col0 - Select Operator [SEL_280] (rows=462000 width=188) + Select Operator [SEL_270] (rows=462000 width=188) Output:["_col0","_col1"] TableScan [TS_18] (rows=462000 width=188) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_item_desc"] @@ -183,11 +181,11 @@ Stage-0 SHUFFLE [RS_34] PartitionCols:_col4 Merge Join Operator [MERGEJOIN_241] (rows=8179022 width=30) - Conds:RS_31._col5=RS_279._col0(Left Outer),Output:["_col1","_col4","_col6","_col7","_col9","_col10","_col13"] - <-Map 22 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_279] + Conds:RS_31._col5=RS_269._col0(Left Outer),Output:["_col1","_col4","_col6","_col7","_col9","_col10","_col13"] + <-Map 20 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_269] PartitionCols:_col0 - Select Operator [SEL_278] (rows=2300 width=4) + Select Operator [SEL_268] (rows=2300 width=4) Output:["_col0"] TableScan [TS_16] (rows=2300 width=4) default@promotion,promotion,Tbl:COMPLETE,Col:COMPLETE,Output:["p_promo_sk"] @@ -195,13 +193,13 @@ Stage-0 SHUFFLE [RS_31] PartitionCols:_col5 Merge Join Operator [MERGEJOIN_240] (rows=8179022 width=29) - Conds:RS_28._col3=RS_269._col0(Inner),Output:["_col1","_col4","_col5","_col6","_col7","_col9","_col10"] - <-Map 20 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_269] + Conds:RS_28._col3=RS_267._col0(Inner),Output:["_col1","_col4","_col5","_col6","_col7","_col9","_col10"] + <-Map 19 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_267] PartitionCols:_col0 - Select Operator [SEL_268] (rows=1440 width=4) + Select Operator [SEL_266] (rows=1440 width=4) Output:["_col0"] - Filter Operator [FIL_267] (rows=1440 width=96) + Filter Operator [FIL_265] (rows=1440 width=96) predicate:(hd_buy_potential = '1001-5000') TableScan [TS_13] (rows=7200 width=96) default@household_demographics,household_demographics,Tbl:COMPLETE,Col:COMPLETE,Output:["hd_demo_sk","hd_buy_potential"] @@ -209,13 +207,13 @@ Stage-0 SHUFFLE [RS_28] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_239] (rows=40895108 width=35) - Conds:RS_25._col2=RS_261._col0(Inner),Output:["_col1","_col3","_col4","_col5","_col6","_col7","_col9","_col10"] + Conds:RS_25._col2=RS_264._col0(Inner),Output:["_col1","_col3","_col4","_col5","_col6","_col7","_col9","_col10"] <-Map 18 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_261] + SHUFFLE [RS_264] PartitionCols:_col0 - Select Operator [SEL_260] (rows=265971 width=4) + Select Operator [SEL_263] (rows=265971 width=4) Output:["_col0"] - Filter Operator [FIL_259] (rows=265971 width=89) + Filter Operator [FIL_262] (rows=265971 width=89) predicate:(cd_marital_status = 'M') TableScan [TS_10] (rows=1861800 width=89) default@customer_demographics,customer_demographics,Tbl:COMPLETE,Col:COMPLETE,Output:["cd_demo_sk","cd_marital_status"] @@ -223,7 +221,7 @@ Stage-0 SHUFFLE [RS_25] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_238] (rows=100076475 width=39) - Conds:RS_277._col0=RS_253._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col9","_col10"] + Conds:RS_261._col0=RS_253._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col9","_col10"] <-Map 16 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_253] PartitionCols:_col0 @@ -234,12 +232,12 @@ Stage-0 TableScan [TS_7] (rows=73049 width=106) default@date_dim,d1,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date","d_week_seq","d_year"] <-Map 9 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_277] + SHUFFLE [RS_261] PartitionCols:_col0 - Select Operator [SEL_276] (rows=282274763 width=31) + Select Operator [SEL_260] (rows=282274763 width=31) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] - Filter Operator [FIL_275] (rows=282274763 width=31) - predicate:((cs_bill_cdemo_sk BETWEEN DynamicValue(RS_26_customer_demographics_cd_demo_sk_min) AND DynamicValue(RS_26_customer_demographics_cd_demo_sk_max) and in_bloom_filter(cs_bill_cdemo_sk, DynamicValue(RS_26_customer_demographics_cd_demo_sk_bloom_filter))) and (cs_bill_hdemo_sk BETWEEN DynamicValue(RS_29_household_demographics_hd_demo_sk_min) AND DynamicValue(RS_29_household_demographics_hd_demo_sk_max) and in_bloom_filter(cs_bill_hdemo_sk, DynamicValue(RS_29_household_demographics_hd_demo_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_23_d1_d_date_sk_min) AND DynamicValue(RS_23_d1_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_23_d1_d_date_sk_bloom_filter))) and cs_bill_cdemo_sk is not null and cs_bill_hdemo_sk is not null and cs_ship_date_sk is not null and cs_sold_date_sk is not null) + Filter Operator [FIL_259] (rows=282274763 width=31) + predicate:((cs_sold_date_sk BETWEEN DynamicValue(RS_23_d1_d_date_sk_min) AND DynamicValue(RS_23_d1_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_23_d1_d_date_sk_bloom_filter))) and cs_bill_cdemo_sk is not null and cs_bill_hdemo_sk is not null and cs_ship_date_sk is not null and cs_sold_date_sk is not null) TableScan [TS_4] (rows=287989836 width=31) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_ship_date_sk","cs_bill_cdemo_sk","cs_bill_hdemo_sk","cs_item_sk","cs_promo_sk","cs_order_number","cs_quantity"] <-Reducer 17 [BROADCAST_EDGE] vectorized @@ -253,28 +251,6 @@ Stage-0 Select Operator [SEL_254] (rows=652 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_252] - <-Reducer 19 [BROADCAST_EDGE] vectorized - BROADCAST [RS_266] - Group By Operator [GBY_265] (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 - PARTITION_ONLY_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=265971 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_260] - <-Reducer 21 [BROADCAST_EDGE] vectorized - BROADCAST [RS_274] - Group By Operator [GBY_273] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 20 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_272] - Group By Operator [GBY_271] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_270] (rows=1440 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_268] <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_48] PartitionCols:_col1 diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query73.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query73.q.out index 45ddfd5a4a..6f28fee93d 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query73.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query73.q.out @@ -67,15 +67,13 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 4 <- Reducer 10 (BROADCAST_EDGE), Reducer 12 (BROADCAST_EDGE), Reducer 14 (BROADCAST_EDGE) +Map 4 <- Reducer 10 (BROADCAST_EDGE) Reducer 10 <- Map 9 (CUSTOM_SIMPLE_EDGE) -Reducer 12 <- Map 11 (CUSTOM_SIMPLE_EDGE) -Reducer 14 <- Map 13 (CUSTOM_SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (SIMPLE_EDGE) Reducer 5 <- Map 4 (SIMPLE_EDGE), Map 9 (SIMPLE_EDGE) Reducer 6 <- Map 11 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) -Reducer 7 <- Map 13 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) +Reducer 7 <- Map 12 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) Reducer 8 <- Reducer 7 (SIMPLE_EDGE) Stage-0 @@ -83,15 +81,15 @@ Stage-0 limit:-1 Stage-1 Reducer 3 vectorized - File Output Operator [FS_134] - Select Operator [SEL_133] (rows=59862 width=364) + File Output Operator [FS_124] + Select Operator [SEL_123] (rows=59862 width=364) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_34] Select Operator [SEL_33] (rows=59862 width=364) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] Merge Join Operator [MERGEJOIN_99] (rows=59862 width=364) - Conds:RS_101._col0=RS_132._col1(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col7"] + Conds:RS_101._col0=RS_122._col1(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col7"] <-Map 1 [SIMPLE_EDGE] vectorized SHUFFLE [RS_101] PartitionCols:_col0 @@ -100,13 +98,13 @@ Stage-0 TableScan [TS_0] (rows=80000000 width=356) default@customer,customer,Tbl:COMPLETE,Col:COMPLETE,Output:["c_customer_sk","c_salutation","c_first_name","c_last_name","c_preferred_cust_flag"] <-Reducer 8 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_132] + SHUFFLE [RS_122] PartitionCols:_col1 - Filter Operator [FIL_131] (rows=59862 width=12) + Filter Operator [FIL_121] (rows=59862 width=12) predicate:_col2 BETWEEN 1 AND 5 - Select Operator [SEL_130] (rows=1197233 width=12) + Select Operator [SEL_120] (rows=1197233 width=12) Output:["_col0","_col1","_col2"] - Group By Operator [GBY_129] (rows=1197233 width=12) + Group By Operator [GBY_119] (rows=1197233 width=12) Output:["_col0","_col1","_col2"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1 <-Reducer 7 [SIMPLE_EDGE] SHUFFLE [RS_25] @@ -114,13 +112,13 @@ Stage-0 Group By Operator [GBY_24] (rows=1197233 width=12) Output:["_col0","_col1","_col2"],aggregations:["count()"],keys:_col1, _col4 Merge Join Operator [MERGEJOIN_98] (rows=1197233 width=4) - Conds:RS_20._col3=RS_120._col0(Inner),Output:["_col1","_col4"] - <-Map 13 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_120] + Conds:RS_20._col3=RS_118._col0(Inner),Output:["_col1","_col4"] + <-Map 12 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_118] PartitionCols:_col0 - Select Operator [SEL_119] (rows=85 width=4) + Select Operator [SEL_117] (rows=85 width=4) Output:["_col0"] - Filter Operator [FIL_118] (rows=85 width=102) + Filter Operator [FIL_116] (rows=85 width=102) predicate:(s_county) IN ('Mobile County', 'Maverick County', 'Huron County', 'Kittitas County') TableScan [TS_11] (rows=1704 width=102) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_county"] @@ -128,13 +126,13 @@ Stage-0 SHUFFLE [RS_20] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_97] (rows=2973700 width=4) - Conds:RS_17._col2=RS_112._col0(Inner),Output:["_col1","_col3","_col4"] + Conds:RS_17._col2=RS_115._col0(Inner),Output:["_col1","_col3","_col4"] <-Map 11 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_112] + SHUFFLE [RS_115] PartitionCols:_col0 - Select Operator [SEL_111] (rows=480 width=4) + Select Operator [SEL_114] (rows=480 width=4) Output:["_col0"] - Filter Operator [FIL_110] (rows=480 width=104) + Filter Operator [FIL_113] (rows=480 width=104) predicate:((hd_buy_potential) IN ('>10000', 'unknown') and (hd_vehicle_count > 0) and CASE WHEN ((hd_vehicle_count > 0)) THEN (((UDFToDouble(hd_dep_count) / UDFToDouble(hd_vehicle_count)) > 1.0D)) ELSE (null) END) TableScan [TS_8] (rows=7200 width=104) default@household_demographics,household_demographics,Tbl:COMPLETE,Col:COMPLETE,Output:["hd_demo_sk","hd_buy_potential","hd_dep_count","hd_vehicle_count"] @@ -142,7 +140,7 @@ Stage-0 SHUFFLE [RS_17] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_96] (rows=44605486 width=10) - Conds:RS_128._col0=RS_104._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + Conds:RS_112._col0=RS_104._col0(Inner),Output:["_col1","_col2","_col3","_col4"] <-Map 9 [SIMPLE_EDGE] vectorized SHUFFLE [RS_104] PartitionCols:_col0 @@ -153,12 +151,12 @@ Stage-0 TableScan [TS_5] (rows=73049 width=12) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_dom"] <-Map 4 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_128] + SHUFFLE [RS_112] PartitionCols:_col0 - Select Operator [SEL_127] (rows=479121995 width=19) + Select Operator [SEL_111] (rows=479121995 width=19) Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_126] (rows=479121995 width=19) - predicate:((ss_hdemo_sk BETWEEN DynamicValue(RS_18_household_demographics_hd_demo_sk_min) AND DynamicValue(RS_18_household_demographics_hd_demo_sk_max) and in_bloom_filter(ss_hdemo_sk, DynamicValue(RS_18_household_demographics_hd_demo_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_15_date_dim_d_date_sk_min) AND DynamicValue(RS_15_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_15_date_dim_d_date_sk_bloom_filter))) and (ss_store_sk BETWEEN DynamicValue(RS_21_store_s_store_sk_min) AND DynamicValue(RS_21_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_21_store_s_store_sk_bloom_filter))) and ss_customer_sk is not null and ss_hdemo_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_110] (rows=479121995 width=19) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_15_date_dim_d_date_sk_min) AND DynamicValue(RS_15_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_15_date_dim_d_date_sk_bloom_filter))) and ss_customer_sk is not null and ss_hdemo_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) TableScan [TS_2] (rows=575995635 width=19) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_customer_sk","ss_hdemo_sk","ss_store_sk","ss_ticket_number"] <-Reducer 10 [BROADCAST_EDGE] vectorized @@ -172,26 +170,4 @@ Stage-0 Select Operator [SEL_105] (rows=170 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_103] - <-Reducer 12 [BROADCAST_EDGE] vectorized - BROADCAST [RS_117] - Group By Operator [GBY_116] (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 - SHUFFLE [RS_115] - Group By Operator [GBY_114] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_113] (rows=480 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_111] - <-Reducer 14 [BROADCAST_EDGE] vectorized - BROADCAST [RS_125] - Group By Operator [GBY_124] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 13 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_123] - Group By Operator [GBY_122] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_121] (rows=85 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_119] 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 f2593995b8..d3e036be14 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 @@ -157,45 +157,39 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 12 (BROADCAST_EDGE), Reducer 38 (BROADCAST_EDGE) -Map 45 <- Reducer 16 (BROADCAST_EDGE), Reducer 39 (BROADCAST_EDGE) -Map 47 <- Reducer 20 (BROADCAST_EDGE), Reducer 40 (BROADCAST_EDGE) -Map 49 <- Reducer 28 (BROADCAST_EDGE), Reducer 41 (BROADCAST_EDGE) -Map 50 <- Reducer 32 (BROADCAST_EDGE), Reducer 42 (BROADCAST_EDGE) -Map 51 <- Reducer 36 (BROADCAST_EDGE), Reducer 43 (BROADCAST_EDGE) +Map 1 <- Reducer 12 (BROADCAST_EDGE) +Map 39 <- Reducer 16 (BROADCAST_EDGE) +Map 41 <- Reducer 20 (BROADCAST_EDGE) +Map 43 <- Reducer 28 (BROADCAST_EDGE) +Map 44 <- Reducer 32 (BROADCAST_EDGE) +Map 45 <- Reducer 36 (BROADCAST_EDGE) Reducer 10 <- Reducer 9 (SIMPLE_EDGE) Reducer 12 <- Map 11 (CUSTOM_SIMPLE_EDGE) -Reducer 13 <- Map 11 (SIMPLE_EDGE), Map 45 (SIMPLE_EDGE) +Reducer 13 <- Map 11 (SIMPLE_EDGE), Map 39 (SIMPLE_EDGE) Reducer 14 <- Map 37 (SIMPLE_EDGE), Reducer 13 (SIMPLE_EDGE) -Reducer 15 <- Map 46 (SIMPLE_EDGE), Reducer 14 (SIMPLE_EDGE), Union 5 (CONTAINS) +Reducer 15 <- Map 40 (SIMPLE_EDGE), Reducer 14 (SIMPLE_EDGE), Union 5 (CONTAINS) Reducer 16 <- Map 11 (CUSTOM_SIMPLE_EDGE) -Reducer 17 <- Map 11 (SIMPLE_EDGE), Map 47 (SIMPLE_EDGE) +Reducer 17 <- Map 11 (SIMPLE_EDGE), Map 41 (SIMPLE_EDGE) Reducer 18 <- Map 37 (SIMPLE_EDGE), Reducer 17 (SIMPLE_EDGE) -Reducer 19 <- Map 48 (SIMPLE_EDGE), Reducer 18 (SIMPLE_EDGE), Union 7 (CONTAINS) +Reducer 19 <- Map 42 (SIMPLE_EDGE), Reducer 18 (SIMPLE_EDGE), Union 7 (CONTAINS) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 11 (SIMPLE_EDGE) Reducer 20 <- Map 11 (CUSTOM_SIMPLE_EDGE) -Reducer 21 <- Map 11 (SIMPLE_EDGE), Map 49 (SIMPLE_EDGE) +Reducer 21 <- Map 11 (SIMPLE_EDGE), Map 43 (SIMPLE_EDGE) Reducer 22 <- Map 37 (SIMPLE_EDGE), Reducer 21 (SIMPLE_EDGE) -Reducer 23 <- Map 44 (SIMPLE_EDGE), Reducer 22 (SIMPLE_EDGE), Union 24 (CONTAINS) +Reducer 23 <- Map 38 (SIMPLE_EDGE), Reducer 22 (SIMPLE_EDGE), Union 24 (CONTAINS) Reducer 25 <- Union 24 (SIMPLE_EDGE), Union 26 (CONTAINS) Reducer 27 <- Union 26 (SIMPLE_EDGE) Reducer 28 <- Map 11 (CUSTOM_SIMPLE_EDGE) -Reducer 29 <- Map 11 (SIMPLE_EDGE), Map 50 (SIMPLE_EDGE) +Reducer 29 <- Map 11 (SIMPLE_EDGE), Map 44 (SIMPLE_EDGE) Reducer 3 <- Map 37 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 30 <- Map 37 (SIMPLE_EDGE), Reducer 29 (SIMPLE_EDGE) -Reducer 31 <- Map 46 (SIMPLE_EDGE), Reducer 30 (SIMPLE_EDGE), Union 24 (CONTAINS) +Reducer 31 <- Map 40 (SIMPLE_EDGE), Reducer 30 (SIMPLE_EDGE), Union 24 (CONTAINS) Reducer 32 <- Map 11 (CUSTOM_SIMPLE_EDGE) -Reducer 33 <- Map 11 (SIMPLE_EDGE), Map 51 (SIMPLE_EDGE) +Reducer 33 <- Map 11 (SIMPLE_EDGE), Map 45 (SIMPLE_EDGE) Reducer 34 <- Map 37 (SIMPLE_EDGE), Reducer 33 (SIMPLE_EDGE) -Reducer 35 <- Map 48 (SIMPLE_EDGE), Reducer 34 (SIMPLE_EDGE), Union 26 (CONTAINS) +Reducer 35 <- Map 42 (SIMPLE_EDGE), Reducer 34 (SIMPLE_EDGE), Union 26 (CONTAINS) Reducer 36 <- Map 11 (CUSTOM_SIMPLE_EDGE) -Reducer 38 <- Map 37 (CUSTOM_SIMPLE_EDGE) -Reducer 39 <- Map 37 (CUSTOM_SIMPLE_EDGE) -Reducer 4 <- Map 44 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE), Union 5 (CONTAINS) -Reducer 40 <- Map 37 (CUSTOM_SIMPLE_EDGE) -Reducer 41 <- Map 37 (CUSTOM_SIMPLE_EDGE) -Reducer 42 <- Map 37 (CUSTOM_SIMPLE_EDGE) -Reducer 43 <- Map 37 (CUSTOM_SIMPLE_EDGE) +Reducer 4 <- Map 38 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE), Union 5 (CONTAINS) Reducer 6 <- Union 5 (SIMPLE_EDGE), Union 7 (CONTAINS) Reducer 8 <- Union 7 (SIMPLE_EDGE) Reducer 9 <- Reducer 27 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) @@ -205,12 +199,12 @@ Stage-0 limit:-1 Stage-1 Reducer 10 vectorized - File Output Operator [FS_631] - Select Operator [SEL_630] (rows=100 width=160) + File Output Operator [FS_611] + Select Operator [SEL_610] (rows=100 width=160) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9"] - Limit [LIM_629] (rows=100 width=152) + Limit [LIM_609] (rows=100 width=152) Number of rows:100 - Select Operator [SEL_628] (rows=3422897230256 width=151) + Select Operator [SEL_608] (rows=3422897230256 width=151) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] <-Reducer 9 [SIMPLE_EDGE] SHUFFLE [RS_169] @@ -219,21 +213,21 @@ Stage-0 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"] + Conds:RS_604._col0, _col1, _col2, _col3=RS_607._col0, _col1, _col2, _col3(Inner),Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col10","_col11"] <-Reducer 27 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_627] + SHUFFLE [RS_607] PartitionCols:_col0, _col1, _col2, _col3 - Group By Operator [GBY_626] (rows=84235776 width=135) + Group By Operator [GBY_606] (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) + Group By Operator [GBY_605] (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] + Reduce Output Operator [RS_635] PartitionCols:_col0, _col1, _col2, _col3 - Group By Operator [GBY_660] (rows=736356923 width=131) + Group By Operator [GBY_634] (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) + Group By Operator [GBY_633] (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] @@ -244,11 +238,11 @@ Stage-0 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] + Conds:RS_99._col1, _col2=RS_598._col0, _col1(Left Outer),Output:["_col3","_col4","_col7","_col8","_col9","_col10","_col13","_col14"] + <-Map 38 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_598] PartitionCols:_col0, _col1 - Select Operator [SEL_616] (rows=28798881 width=121) + Select Operator [SEL_596] (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"] @@ -258,11 +252,11 @@ Stage-0 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] + SHUFFLE [RS_593] PartitionCols:_col0 - Select Operator [SEL_586] (rows=45745 width=19) + Select Operator [SEL_589] (rows=45745 width=19) Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_585] (rows=45745 width=109) + Filter Operator [FIL_588] (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"] @@ -270,7 +264,7 @@ Stage-0 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"] + Conds:RS_632._col0=RS_565._col0(Inner),Output:["_col1","_col2","_col3","_col4"] <-Map 11 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_565] PartitionCols:_col0 @@ -280,18 +274,18 @@ Stage-0 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] + <-Map 43 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_632] PartitionCols:_col0 - Select Operator [SEL_657] (rows=286549727 width=127) + Select Operator [SEL_631] (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) + Filter Operator [FIL_630] (rows=286549727 width=127) + predicate:((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) + BROADCAST [RS_629] + Group By Operator [GBY_628] (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] @@ -300,17 +294,6 @@ Stage-0 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 @@ -319,11 +302,11 @@ Stage-0 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] + Conds:RS_120._col1, _col2=RS_619._col0, _col1(Left Outer),Output:["_col3","_col4","_col7","_col8","_col9","_col10","_col13","_col14"] + <-Map 40 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_619] PartitionCols:_col0, _col1 - Select Operator [SEL_639] (rows=57591150 width=119) + Select Operator [SEL_617] (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"] @@ -331,16 +314,16 @@ Stage-0 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"] + Conds:RS_117._col1=RS_594._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col7","_col8","_col9","_col10"] <-Map 37 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_595] + SHUFFLE [RS_594] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_586] + Please refer to the previous Select Operator [SEL_589] <-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"] + Conds:RS_640._col0=RS_567._col0(Inner),Output:["_col1","_col2","_col3","_col4"] <-Map 11 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_567] PartitionCols:_col0 @@ -349,18 +332,18 @@ Stage-0 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] + <-Map 44 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_640] PartitionCols:_col0 - Select Operator [SEL_667] (rows=550076554 width=122) + Select Operator [SEL_639] (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) + Filter Operator [FIL_638] (rows=550076554 width=122) + predicate:((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) + 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 11 [CUSTOM_SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_581] @@ -369,17 +352,6 @@ Stage-0 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 @@ -388,11 +360,11 @@ Stage-0 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] + Conds:RS_148._col1, _col2=RS_627._col0, _col1(Left Outer),Output:["_col3","_col4","_col7","_col8","_col9","_col10","_col13","_col14"] + <-Map 42 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_627] PartitionCols:_col0, _col1 - Select Operator [SEL_649] (rows=14398467 width=118) + Select Operator [SEL_625] (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"] @@ -400,16 +372,16 @@ Stage-0 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"] + Conds:RS_145._col1=RS_595._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col7","_col8","_col9","_col10"] <-Map 37 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_597] + SHUFFLE [RS_595] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_586] + Please refer to the previous Select Operator [SEL_589] <-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"] + Conds:RS_645._col0=RS_569._col0(Inner),Output:["_col1","_col2","_col3","_col4"] <-Map 11 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_569] PartitionCols:_col0 @@ -418,18 +390,18 @@ Stage-0 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] + <-Map 45 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_645] PartitionCols:_col0 - Select Operator [SEL_674] (rows=143966864 width=127) + Select Operator [SEL_644] (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) + Filter Operator [FIL_643] (rows=143966864 width=127) + predicate:((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) + BROADCAST [RS_642] + Group By Operator [GBY_641] (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] @@ -438,23 +410,12 @@ Stage-0 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_624] + SHUFFLE [RS_604] PartitionCols:_col0, _col1, _col2, _col3 - Group By Operator [GBY_623] (rows=84235776 width=135) + Group By Operator [GBY_603] (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) + Group By Operator [GBY_602] (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] @@ -465,25 +426,25 @@ Stage-0 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] + Conds:RS_66._col1, _col2=RS_626._col0, _col1(Left Outer),Output:["_col3","_col4","_col7","_col8","_col9","_col10","_col13","_col14"] + <-Map 42 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_626] PartitionCols:_col0, _col1 - Please refer to the previous Select Operator [SEL_649] + Please refer to the previous Select Operator [SEL_625] <-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"] + Conds:RS_63._col1=RS_592._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col7","_col8","_col9","_col10"] <-Map 37 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_591] + SHUFFLE [RS_592] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_586] + Please refer to the previous Select Operator [SEL_589] <-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"] + Conds:RS_624._col0=RS_563._col0(Inner),Output:["_col1","_col2","_col3","_col4"] <-Map 11 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_563] PartitionCols:_col0 @@ -492,18 +453,18 @@ Stage-0 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] + <-Map 41 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_624] PartitionCols:_col0 - Select Operator [SEL_647] (rows=143966864 width=127) + Select Operator [SEL_623] (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) + Filter Operator [FIL_622] (rows=143966864 width=127) + predicate:((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) + BROADCAST [RS_621] + Group By Operator [GBY_620] (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] @@ -512,23 +473,12 @@ Stage-0 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] + Reduce Output Operator [RS_601] PartitionCols:_col0, _col1, _col2, _col3 - Group By Operator [GBY_620] (rows=736356923 width=131) + Group By Operator [GBY_600] (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) + Group By Operator [GBY_599] (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] @@ -539,41 +489,41 @@ Stage-0 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] + Conds:RS_38._col1, _col2=RS_618._col0, _col1(Left Outer),Output:["_col3","_col4","_col7","_col8","_col9","_col10","_col13","_col14"] + <-Map 40 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_618] PartitionCols:_col0, _col1 - Please refer to the previous Select Operator [SEL_639] + Please refer to the previous Select Operator [SEL_617] <-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"] + Conds:RS_35._col1=RS_591._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col7","_col8","_col9","_col10"] <-Map 37 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_589] + SHUFFLE [RS_591] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_586] + Please refer to the previous Select Operator [SEL_589] <-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"] + Conds:RS_616._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] + <-Map 39 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_616] PartitionCols:_col0 - Select Operator [SEL_637] (rows=550076554 width=122) + Select Operator [SEL_615] (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) + Filter Operator [FIL_614] (rows=550076554 width=122) + predicate:((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) + BROADCAST [RS_613] + Group By Operator [GBY_612] (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] @@ -582,17 +532,6 @@ Stage-0 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 @@ -601,36 +540,36 @@ Stage-0 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] + Conds:RS_17._col1, _col2=RS_597._col0, _col1(Left Outer),Output:["_col3","_col4","_col7","_col8","_col9","_col10","_col13","_col14"] + <-Map 38 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_597] PartitionCols:_col0, _col1 - Please refer to the previous Select Operator [SEL_616] + Please refer to the previous Select Operator [SEL_596] <-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"] + Conds:RS_14._col1=RS_590._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col7","_col8","_col9","_col10"] <-Map 37 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_587] + SHUFFLE [RS_590] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_586] + Please refer to the previous Select Operator [SEL_589] <-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"] + Conds:RS_587._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] + SHUFFLE [RS_587] PartitionCols:_col0 - Select Operator [SEL_614] (rows=286549727 width=127) + Select Operator [SEL_586] (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) + Filter Operator [FIL_585] (rows=286549727 width=127) + predicate:((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 @@ -644,15 +583,4 @@ Stage-0 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/query79.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query79.q.out index fb94428c03..4406bbcbf1 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query79.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query79.q.out @@ -57,9 +57,8 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 4 <- Reducer 10 (BROADCAST_EDGE), Reducer 13 (BROADCAST_EDGE) +Map 4 <- Reducer 10 (BROADCAST_EDGE) Reducer 10 <- Map 9 (CUSTOM_SIMPLE_EDGE) -Reducer 13 <- Map 12 (CUSTOM_SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (SIMPLE_EDGE) Reducer 5 <- Map 4 (SIMPLE_EDGE), Map 9 (SIMPLE_EDGE) @@ -72,17 +71,17 @@ Stage-0 limit:-1 Stage-1 Reducer 3 vectorized - File Output Operator [FS_129] - Limit [LIM_128] (rows=100 width=776) + File Output Operator [FS_124] + Limit [LIM_123] (rows=100 width=776) Number of rows:100 - Select Operator [SEL_127] (rows=43530621 width=776) + Select Operator [SEL_122] (rows=43530621 width=776) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_32] Select Operator [SEL_31] (rows=43530621 width=776) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] Merge Join Operator [MERGEJOIN_99] (rows=43530621 width=685) - Conds:RS_101._col0=RS_126._col1(Inner),Output:["_col1","_col2","_col3","_col5","_col6","_col7","_col8"] + Conds:RS_101._col0=RS_121._col1(Inner),Output:["_col1","_col2","_col3","_col5","_col6","_col7","_col8"] <-Map 1 [SIMPLE_EDGE] vectorized SHUFFLE [RS_101] PartitionCols:_col0 @@ -91,11 +90,11 @@ Stage-0 TableScan [TS_0] (rows=80000000 width=184) default@customer,customer,Tbl:COMPLETE,Col:COMPLETE,Output:["c_customer_sk","c_first_name","c_last_name"] <-Reducer 8 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_126] + SHUFFLE [RS_121] PartitionCols:_col1 - Select Operator [SEL_125] (rows=43530621 width=507) + Select Operator [SEL_120] (rows=43530621 width=507) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] - Group By Operator [GBY_124] (rows=43530621 width=325) + Group By Operator [GBY_119] (rows=43530621 width=325) Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3 <-Reducer 7 [SIMPLE_EDGE] SHUFFLE [RS_25] @@ -103,13 +102,13 @@ Stage-0 Group By Operator [GBY_24] (rows=43530621 width=325) Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["sum(_col6)","sum(_col7)"],keys:_col1, _col3, _col5, _col10 Merge Join Operator [MERGEJOIN_98] (rows=43530621 width=214) - Conds:RS_20._col2=RS_112._col0(Inner),Output:["_col1","_col3","_col5","_col6","_col7","_col10"] + Conds:RS_20._col2=RS_118._col0(Inner),Output:["_col1","_col3","_col5","_col6","_col7","_col10"] <-Map 12 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_112] + SHUFFLE [RS_118] PartitionCols:_col0 - Select Operator [SEL_111] (rows=3055 width=4) + Select Operator [SEL_117] (rows=3055 width=4) Output:["_col0"] - Filter Operator [FIL_110] (rows=3055 width=12) + Filter Operator [FIL_116] (rows=3055 width=12) predicate:((hd_dep_count = 8) or (hd_vehicle_count > 0)) TableScan [TS_11] (rows=7200 width=12) default@household_demographics,household_demographics,Tbl:COMPLETE,Col:COMPLETE,Output:["hd_demo_sk","hd_dep_count","hd_vehicle_count"] @@ -117,13 +116,13 @@ Stage-0 SHUFFLE [RS_20] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_97] (rows=102592623 width=283) - Conds:RS_17._col4=RS_123._col0(Inner),Output:["_col1","_col2","_col3","_col5","_col6","_col7","_col10"] + Conds:RS_17._col4=RS_115._col0(Inner),Output:["_col1","_col2","_col3","_col5","_col6","_col7","_col10"] <-Map 11 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_123] + SHUFFLE [RS_115] PartitionCols:_col0 - Select Operator [SEL_122] (rows=1704 width=97) + Select Operator [SEL_114] (rows=1704 width=97) Output:["_col0","_col1"] - Filter Operator [FIL_121] (rows=1704 width=100) + Filter Operator [FIL_113] (rows=1704 width=100) predicate:s_number_employees BETWEEN 200 AND 295 TableScan [TS_8] (rows=1704 width=100) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_number_employees","s_city"] @@ -131,7 +130,7 @@ Stage-0 SHUFFLE [RS_17] PartitionCols:_col4 Merge Join Operator [MERGEJOIN_96] (rows=102592623 width=193) - Conds:RS_120._col0=RS_104._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col7"] + Conds:RS_112._col0=RS_104._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col7"] <-Map 9 [SIMPLE_EDGE] vectorized SHUFFLE [RS_104] PartitionCols:_col0 @@ -142,12 +141,12 @@ Stage-0 TableScan [TS_5] (rows=73049 width=12) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_dow"] <-Map 4 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_120] + SHUFFLE [RS_112] PartitionCols:_col0 - Select Operator [SEL_119] (rows=479121995 width=237) + Select Operator [SEL_111] (rows=479121995 width=237) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] - Filter Operator [FIL_118] (rows=479121995 width=237) - predicate:((ss_hdemo_sk BETWEEN DynamicValue(RS_21_household_demographics_hd_demo_sk_min) AND DynamicValue(RS_21_household_demographics_hd_demo_sk_max) and in_bloom_filter(ss_hdemo_sk, DynamicValue(RS_21_household_demographics_hd_demo_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_15_date_dim_d_date_sk_min) AND DynamicValue(RS_15_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_15_date_dim_d_date_sk_bloom_filter))) and ss_customer_sk is not null and ss_hdemo_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_110] (rows=479121995 width=237) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_15_date_dim_d_date_sk_min) AND DynamicValue(RS_15_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_15_date_dim_d_date_sk_bloom_filter))) and ss_customer_sk is not null and ss_hdemo_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) TableScan [TS_2] (rows=575995635 width=237) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_customer_sk","ss_hdemo_sk","ss_addr_sk","ss_store_sk","ss_ticket_number","ss_coupon_amt","ss_net_profit"] <-Reducer 10 [BROADCAST_EDGE] vectorized @@ -161,15 +160,4 @@ Stage-0 Select Operator [SEL_105] (rows=391 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_103] - <-Reducer 13 [BROADCAST_EDGE] vectorized - BROADCAST [RS_117] - Group By Operator [GBY_116] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 12 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_115] - Group By Operator [GBY_114] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_113] (rows=3055 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_111] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query8.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query8.q.out index 93bce2e059..d97f9df397 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query8.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query8.q.out @@ -227,33 +227,32 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 13 (BROADCAST_EDGE), Reducer 7 (BROADCAST_EDGE) -Reducer 11 <- Union 10 (SIMPLE_EDGE) -Reducer 12 <- Map 19 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE) -Reducer 13 <- Reducer 12 (CUSTOM_SIMPLE_EDGE) -Reducer 15 <- Map 14 (SIMPLE_EDGE), Map 18 (SIMPLE_EDGE) -Reducer 16 <- Reducer 15 (SIMPLE_EDGE) -Reducer 17 <- Reducer 16 (SIMPLE_EDGE), Union 10 (CONTAINS) +Map 1 <- Reducer 12 (BROADCAST_EDGE) +Reducer 10 <- Union 9 (SIMPLE_EDGE) +Reducer 11 <- Map 18 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE) +Reducer 12 <- Reducer 11 (CUSTOM_SIMPLE_EDGE) +Reducer 14 <- Map 13 (SIMPLE_EDGE), Map 17 (SIMPLE_EDGE) +Reducer 15 <- Reducer 14 (SIMPLE_EDGE) +Reducer 16 <- Reducer 15 (SIMPLE_EDGE), Union 9 (CONTAINS) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) -Reducer 3 <- Reducer 12 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 3 <- Reducer 11 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) -Reducer 7 <- Map 6 (CUSTOM_SIMPLE_EDGE) -Reducer 9 <- Map 8 (SIMPLE_EDGE), Union 10 (CONTAINS) +Reducer 8 <- Map 7 (SIMPLE_EDGE), Union 9 (CONTAINS) Stage-0 Fetch Operator limit:100 Stage-1 Reducer 5 vectorized - File Output Operator [FS_151] - Limit [LIM_150] (rows=1 width=200) + File Output Operator [FS_146] + Limit [LIM_145] (rows=1 width=200) Number of rows:100 - Select Operator [SEL_149] (rows=1 width=200) + Select Operator [SEL_144] (rows=1 width=200) Output:["_col0","_col1"] <-Reducer 4 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_148] - Group By Operator [GBY_147] (rows=1 width=200) + SHUFFLE [RS_143] + Group By Operator [GBY_142] (rows=1 width=200) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_57] @@ -264,88 +263,88 @@ Stage-0 keys:_col6,sort order:+,top n:100 Merge Join Operator [MERGEJOIN_118] (rows=1 width=200) Conds:RS_52._col1=RS_53._col1(Inner),Output:["_col2","_col6"] - <-Reducer 12 [SIMPLE_EDGE] + <-Reducer 11 [SIMPLE_EDGE] SHUFFLE [RS_53] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_117] (rows=1 width=92) - Conds:RS_138._col0=RS_141._col2(Inner),Output:["_col1","_col2"] - <-Map 19 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_141] + Conds:RS_130._col0=RS_133._col2(Inner),Output:["_col1","_col2"] + <-Map 18 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_133] PartitionCols:_col2 - Select Operator [SEL_140] (rows=1704 width=276) + Select Operator [SEL_132] (rows=1704 width=276) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_139] (rows=1704 width=181) + Filter Operator [FIL_131] (rows=1704 width=181) predicate:substr(s_zip, 1, 2) is not null TableScan [TS_42] (rows=1704 width=181) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_store_name","s_zip"] - <-Reducer 11 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_138] + <-Reducer 10 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_130] PartitionCols:_col0 - Select Operator [SEL_137] (rows=1 width=184) + Select Operator [SEL_129] (rows=1 width=184) Output:["_col0"] - Filter Operator [FIL_136] (rows=1 width=192) + Filter Operator [FIL_128] (rows=1 width=192) predicate:(_col1 = 2L) - Group By Operator [GBY_135] (rows=3098 width=192) + Group By Operator [GBY_127] (rows=3098 width=192) Output:["_col0","_col1"],aggregations:["count(VALUE._col0)"],keys:KEY._col0 - <-Union 10 [SIMPLE_EDGE] - <-Reducer 17 [CONTAINS] vectorized - Reduce Output Operator [RS_172] + <-Union 9 [SIMPLE_EDGE] + <-Reducer 16 [CONTAINS] vectorized + Reduce Output Operator [RS_167] PartitionCols:_col0 - Group By Operator [GBY_171] (rows=3098 width=192) + Group By Operator [GBY_166] (rows=3098 width=192) Output:["_col0","_col1"],aggregations:["count(_col1)"],keys:_col0 - Group By Operator [GBY_170] (rows=1126 width=192) + Group By Operator [GBY_165] (rows=1126 width=192) Output:["_col0","_col1"],aggregations:["count(VALUE._col0)"],keys:KEY._col0 - <-Reducer 16 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_169] + <-Reducer 15 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_164] PartitionCols:_col0 - Group By Operator [GBY_168] (rows=1126 width=192) + Group By Operator [GBY_163] (rows=1126 width=192) Output:["_col0","_col1"],aggregations:["count()"],keys:_col0 - Select Operator [SEL_167] (rows=2253 width=97) + Select Operator [SEL_162] (rows=2253 width=97) Output:["_col0"] - Filter Operator [FIL_166] (rows=2253 width=97) + Filter Operator [FIL_161] (rows=2253 width=97) predicate:(_col1 > 10L) - Group By Operator [GBY_165] (rows=6761 width=97) + Group By Operator [GBY_160] (rows=6761 width=97) Output:["_col0","_col1"],aggregations:["count(VALUE._col0)"],keys:KEY._col0 - <-Reducer 15 [SIMPLE_EDGE] + <-Reducer 14 [SIMPLE_EDGE] SHUFFLE [RS_25] PartitionCols:_col0 Group By Operator [GBY_24] (rows=67610 width=97) Output:["_col0","_col1"],aggregations:["count()"],keys:_col1 Merge Join Operator [MERGEJOIN_116] (rows=26666667 width=89) - Conds:RS_161._col0=RS_164._col0(Inner),Output:["_col1"] - <-Map 14 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_161] + Conds:RS_156._col0=RS_159._col0(Inner),Output:["_col1"] + <-Map 13 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_156] PartitionCols:_col0 - Select Operator [SEL_160] (rows=40000000 width=93) + Select Operator [SEL_155] (rows=40000000 width=93) Output:["_col0","_col1"] - Filter Operator [FIL_159] (rows=40000000 width=93) + Filter Operator [FIL_154] (rows=40000000 width=93) predicate:substr(substr(ca_zip, 1, 5), 1, 2) is not null TableScan [TS_14] (rows=40000000 width=93) default@customer_address,customer_address,Tbl:COMPLETE,Col:COMPLETE,Output:["ca_address_sk","ca_zip"] - <-Map 18 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_164] + <-Map 17 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_159] PartitionCols:_col0 - Select Operator [SEL_163] (rows=26666667 width=4) + Select Operator [SEL_158] (rows=26666667 width=4) Output:["_col0"] - Filter Operator [FIL_162] (rows=26666667 width=89) + Filter Operator [FIL_157] (rows=26666667 width=89) predicate:((c_preferred_cust_flag = 'Y') and c_current_addr_sk is not null) TableScan [TS_17] (rows=80000000 width=89) default@customer,customer,Tbl:COMPLETE,Col:COMPLETE,Output:["c_current_addr_sk","c_preferred_cust_flag"] - <-Reducer 9 [CONTAINS] vectorized - Reduce Output Operator [RS_158] + <-Reducer 8 [CONTAINS] vectorized + Reduce Output Operator [RS_153] PartitionCols:_col0 - Group By Operator [GBY_157] (rows=3098 width=192) + Group By Operator [GBY_152] (rows=3098 width=192) Output:["_col0","_col1"],aggregations:["count(_col1)"],keys:_col0 - Group By Operator [GBY_156] (rows=5071 width=192) + Group By Operator [GBY_151] (rows=5071 width=192) Output:["_col0","_col1"],aggregations:["count(VALUE._col0)"],keys:KEY._col0 - <-Map 8 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_155] + <-Map 7 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_150] PartitionCols:_col0 - Group By Operator [GBY_154] (rows=70994 width=192) + Group By Operator [GBY_149] (rows=70994 width=192) Output:["_col0","_col1"],aggregations:["count()"],keys:_col0 - Select Operator [SEL_153] (rows=20000000 width=89) + Select Operator [SEL_148] (rows=20000000 width=89) Output:["_col0"] - Filter Operator [FIL_152] (rows=20000000 width=89) + Filter Operator [FIL_147] (rows=20000000 width=89) predicate:((substr(ca_zip, 1, 5)) IN ('89436', '30868', '65085', '22977', '83927', '77557', '58429', '40697', '80614', '10502', '32779', '91137', '61265', '98294', '17921', '18427', '21203', '59362', '87291', '84093', '21505', '17184', '10866', '67898', '25797', '28055', '18377', '80332', '74535', '21757', '29742', '90885', '29898', '17819', '40811', '25990', '47513', '89531', '91068', '10391', '18846', '99223', '82637', '41368', '83658', '86199', '81625', '26696', '89338', '88425', '32200', '81427', '19053', '77471', '36610', '99823', '43276', '41249', '48584', '83550', '82276', '18842', '78890', '14090', '38123', '40936', '34425', '19850', '43286', '80072', '79188', '54191', '11395', '50497', '84861', '90733', '21068', '57666', '37119', '25004', '57835', '70067', '62878', '95806', '19303', '18840', '19124', '29785', '16737', '16022', '49613', '89977', '68310', '60069', '98360', '48649', '39050', '41793', '25002', '27413', '39736', '47208', '16515', '94808', '57648', '15009', '80015', '42961', '63982', '21744', '71853', '81087', '67468', '34175', '64008', '20261', '11201', '51799', '48043', '45645', '61163', '48375', '36447', '57042', '21218', '41100', '89951', '22745', '35851', '83326', '61125', '78298', '80752', '49858', '52940', '96976', '63792', '11376', '53582', '18717', '90226', '50530', '94203', '99447', '27670', '96577', '57856', '56372', '16165', '23427', '54561', '28806', '44439', '22926', '30123', '61451', '92397', '56979', '92309', '70873', '13355', '21801', '46346', '37562', '56458', '28286', '47306', '99555', '69399', '26234', '47546', '49661', '88601', '35943', '39936', '25632', '24611', '44166', '56648', '30379', '59785', '11110', '14329', '93815', '52226', '71381', '13842', '25612', '63294', '14664', '21077', '82626', '18799', '60915', '81020', '56447', '76619', '11433', '13414', '42548', '92713', '70467', '30884', '47484', '16072', '38936', '13036', '88376', '45539', '35901', '19506', '65690', '73957', '71850', '49231', '14276', '20005', '18384', '76615', '11635', '38177', '55607', '41369', '95447', '58581', '58149', '91946', '33790', '76232', '75692', '95464', '22246', '51061', '56692', '53121', '77209', '15482', '10688', '14868', '45907', '73520', '72666', '25734', '17959', '24677', '66446', '94627', '53535', '15560', '41967', '69297', '11929', '59403', '33283', '52232', '57350', '43933', '40921', '36635', '10827', '71286', '19736', '80619', '25251', '95042', '15526', '36496', '55854', '49124', '81980', '35375', '49157', '63512', '28944', '14946', '36503', '54010', '18767', '23969', '43905', '66979', '33113', '21286', '58471', '59080', '13395', '79144', '70373', '67031', '38360', '26705', '50906', '52406', '26066', '73146', '15884', '31897', '30045', '61068', '45550', '92454', '13376', '14354', '19770', '22928', '97790', '50723', '46081', '30202', '14410', '20223', '88500', '67298', '13261', '14172', '81410', '93578', '83583', '46047', '94167', '82564', '21156', '15799', '86709', '37931', '74703', '83103', '23054', '70470', '72008', '49247', '91911', '69998', '20961', '70070', '63197', '54853', '88191', '91830', '49521', '19454', '81450', '89091', '62378', '25683', '61869', '51744', '36580', '85778', '36871', '48121', '28810', '83712', '45486', '67393', '26935', '42393', '20132', '55349', '86057', '21309', '80218', '10094', '11357', '48819', '39734', '40758', '30432', '21204', '29467', '30214', '61024', '55307', '74621', '11622', '68908', '33032', '52868', '99194', '99900', '84936', '69036', '99149', '45013', '32895', '59004', '32322', '14933', '32936', '33562', '72550', '27385', '58049', '58200', '16808', '21360', '32961', '18586', '79307', '15492') and substr(substr(ca_zip, 1, 5), 1, 2) is not null) TableScan [TS_6] (rows=40000000 width=89) default@customer_address,customer_address,Tbl:COMPLETE,Col:COMPLETE,Output:["ca_zip"] @@ -353,45 +352,34 @@ Stage-0 SHUFFLE [RS_52] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_115] (rows=37399754 width=42) - Conds:RS_146._col0=RS_129._col0(Inner),Output:["_col1","_col2"] - <-Map 6 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_129] - PartitionCols:_col0 - Select Operator [SEL_128] (rows=130 width=4) - Output:["_col0"] - Filter Operator [FIL_127] (rows=130 width=12) - predicate:((d_qoy = 1) and (d_year = 2002)) - TableScan [TS_3] (rows=73049 width=12) - default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_qoy"] + Conds:RS_138._col0=RS_141._col0(Inner),Output:["_col1","_col2"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_146] + SHUFFLE [RS_138] PartitionCols:_col0 - Select Operator [SEL_145] (rows=525329897 width=114) + Select Operator [SEL_137] (rows=525329897 width=114) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_144] (rows=525329897 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_store_sk BETWEEN DynamicValue(RS_53_store_s_store_sk_min) AND DynamicValue(RS_53_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_53_store_s_store_sk_bloom_filter))) and ss_sold_date_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_136] (rows=525329897 width=114) + predicate:((ss_store_sk BETWEEN DynamicValue(RS_53_store_s_store_sk_min) AND DynamicValue(RS_53_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_53_store_s_store_sk_bloom_filter))) and ss_sold_date_sk is not null and ss_store_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_store_sk","ss_net_profit"] - <-Reducer 13 [BROADCAST_EDGE] vectorized - BROADCAST [RS_143] - Group By Operator [GBY_142] (rows=1 width=12) + <-Reducer 12 [BROADCAST_EDGE] vectorized + BROADCAST [RS_135] + Group By Operator [GBY_134] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Reducer 12 [CUSTOM_SIMPLE_EDGE] + <-Reducer 11 [CUSTOM_SIMPLE_EDGE] SHUFFLE [RS_92] Group By Operator [GBY_91] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] Select Operator [SEL_90] (rows=1 width=8) Output:["_col0"] Please refer to the previous Merge Join Operator [MERGEJOIN_117] - <-Reducer 7 [BROADCAST_EDGE] vectorized - BROADCAST [RS_134] - Group By Operator [GBY_133] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 6 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_132] - Group By Operator [GBY_131] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_130] (rows=130 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_128] + <-Map 6 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_141] + PartitionCols:_col0 + Select Operator [SEL_140] (rows=130 width=4) + Output:["_col0"] + Filter Operator [FIL_139] (rows=130 width=12) + predicate:((d_qoy = 1) and (d_year = 2002)) + TableScan [TS_3] (rows=73049 width=12) + default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_qoy"] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query80.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query80.q.out index dbaecf8fe8..cb88a0dcea 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query80.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query80.q.out @@ -217,36 +217,30 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 13 (BROADCAST_EDGE), Reducer 27 (BROADCAST_EDGE), Reducer 31 (BROADCAST_EDGE) -Map 35 <- Reducer 19 (BROADCAST_EDGE), Reducer 28 (BROADCAST_EDGE), Reducer 32 (BROADCAST_EDGE) -Map 39 <- Reducer 25 (BROADCAST_EDGE), Reducer 29 (BROADCAST_EDGE), Reducer 33 (BROADCAST_EDGE) +Map 1 <- Reducer 13 (BROADCAST_EDGE) +Map 29 <- Reducer 19 (BROADCAST_EDGE) +Map 33 <- Reducer 25 (BROADCAST_EDGE) Reducer 10 <- Reducer 9 (SIMPLE_EDGE) Reducer 13 <- Map 12 (CUSTOM_SIMPLE_EDGE) -Reducer 14 <- Map 12 (SIMPLE_EDGE), Reducer 36 (SIMPLE_EDGE) +Reducer 14 <- Map 12 (SIMPLE_EDGE), Reducer 30 (SIMPLE_EDGE) Reducer 15 <- Map 26 (SIMPLE_EDGE), Reducer 14 (SIMPLE_EDGE) -Reducer 16 <- Map 30 (SIMPLE_EDGE), Reducer 15 (SIMPLE_EDGE) -Reducer 17 <- Map 38 (SIMPLE_EDGE), Reducer 16 (SIMPLE_EDGE) +Reducer 16 <- Map 27 (SIMPLE_EDGE), Reducer 15 (SIMPLE_EDGE) +Reducer 17 <- Map 32 (SIMPLE_EDGE), Reducer 16 (SIMPLE_EDGE) Reducer 18 <- Reducer 17 (SIMPLE_EDGE), Union 8 (CONTAINS) Reducer 19 <- Map 12 (CUSTOM_SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 11 (SIMPLE_EDGE) -Reducer 20 <- Map 12 (SIMPLE_EDGE), Reducer 40 (SIMPLE_EDGE) +Reducer 20 <- Map 12 (SIMPLE_EDGE), Reducer 34 (SIMPLE_EDGE) Reducer 21 <- Map 26 (SIMPLE_EDGE), Reducer 20 (SIMPLE_EDGE) -Reducer 22 <- Map 30 (SIMPLE_EDGE), Reducer 21 (SIMPLE_EDGE) -Reducer 23 <- Map 42 (SIMPLE_EDGE), Reducer 22 (SIMPLE_EDGE) +Reducer 22 <- Map 27 (SIMPLE_EDGE), Reducer 21 (SIMPLE_EDGE) +Reducer 23 <- Map 36 (SIMPLE_EDGE), Reducer 22 (SIMPLE_EDGE) Reducer 24 <- Reducer 23 (SIMPLE_EDGE), Union 8 (CONTAINS) Reducer 25 <- Map 12 (CUSTOM_SIMPLE_EDGE) -Reducer 27 <- Map 26 (CUSTOM_SIMPLE_EDGE) -Reducer 28 <- Map 26 (CUSTOM_SIMPLE_EDGE) -Reducer 29 <- Map 26 (CUSTOM_SIMPLE_EDGE) Reducer 3 <- Map 12 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 31 <- Map 30 (CUSTOM_SIMPLE_EDGE) -Reducer 32 <- Map 30 (CUSTOM_SIMPLE_EDGE) -Reducer 33 <- Map 30 (CUSTOM_SIMPLE_EDGE) -Reducer 36 <- Map 35 (SIMPLE_EDGE), Map 37 (SIMPLE_EDGE) +Reducer 30 <- Map 29 (SIMPLE_EDGE), Map 31 (SIMPLE_EDGE) +Reducer 34 <- Map 33 (SIMPLE_EDGE), Map 35 (SIMPLE_EDGE) Reducer 4 <- Map 26 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 40 <- Map 39 (SIMPLE_EDGE), Map 41 (SIMPLE_EDGE) -Reducer 5 <- Map 30 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) -Reducer 6 <- Map 34 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) +Reducer 5 <- Map 27 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) +Reducer 6 <- Map 28 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE), Union 8 (CONTAINS) Reducer 9 <- Union 8 (SIMPLE_EDGE) @@ -255,28 +249,28 @@ Stage-0 limit:100 Stage-1 Reducer 10 vectorized - File Output Operator [FS_452] - Limit [LIM_451] (rows=100 width=619) + File Output Operator [FS_430] + Limit [LIM_429] (rows=100 width=619) Number of rows:100 - Select Operator [SEL_450] (rows=38846 width=619) + Select Operator [SEL_428] (rows=38846 width=619) Output:["_col0","_col1","_col2","_col3","_col4"] <-Reducer 9 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_449] - Select Operator [SEL_448] (rows=38846 width=619) + SHUFFLE [RS_427] + Select Operator [SEL_426] (rows=38846 width=619) Output:["_col0","_col1","_col2","_col3","_col4"] - Group By Operator [GBY_447] (rows=38846 width=627) + Group By Operator [GBY_425] (rows=38846 width=627) Output:["_col0","_col1","_col3","_col4","_col5"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)"],keys:KEY._col0, KEY._col1, KEY._col2 <-Union 8 [SIMPLE_EDGE] <-Reducer 18 [CONTAINS] vectorized - Reduce Output Operator [RS_470] + Reduce Output Operator [RS_444] PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_469] (rows=59581 width=627) + Group By Operator [GBY_443] (rows=59581 width=627) Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["sum(_col2)","sum(_col3)","sum(_col4)"],keys:_col0, _col1, 0L - Top N Key Operator [TNK_468] (rows=39721 width=618) + Top N Key Operator [TNK_442] (rows=39721 width=618) keys:_col0, _col1, 0L,sort order:+++,top n:100 - Select Operator [SEL_467] (rows=38846 width=619) + Select Operator [SEL_441] (rows=38846 width=619) Output:["_col0","_col1","_col2","_col3","_col4"] - Group By Operator [GBY_466] (rows=38846 width=436) + Group By Operator [GBY_440] (rows=38846 width=436) Output:["_col0","_col1","_col2","_col3"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)"],keys:KEY._col0 <-Reducer 17 [SIMPLE_EDGE] SHUFFLE [RS_71] @@ -286,11 +280,11 @@ Stage-0 Select Operator [SEL_68] (rows=8592843 width=305) Output:["_col0","_col1","_col2","_col3"] Merge Join Operator [MERGEJOIN_363] (rows=8592843 width=305) - Conds:RS_65._col1=RS_465._col0(Inner),Output:["_col5","_col6","_col9","_col10","_col15"] - <-Map 38 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_465] + Conds:RS_65._col1=RS_439._col0(Inner),Output:["_col5","_col6","_col9","_col10","_col15"] + <-Map 32 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_439] PartitionCols:_col0 - Select Operator [SEL_464] (rows=46000 width=104) + Select Operator [SEL_438] (rows=46000 width=104) Output:["_col0","_col1"] TableScan [TS_51] (rows=46000 width=104) default@catalog_page,catalog_page,Tbl:COMPLETE,Col:COMPLETE,Output:["cp_catalog_page_sk","cp_catalog_page_id"] @@ -298,13 +292,13 @@ Stage-0 SHUFFLE [RS_65] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_362] (rows=8592843 width=208) - Conds:RS_62._col3=RS_423._col0(Inner),Output:["_col1","_col5","_col6","_col9","_col10"] - <-Map 30 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_423] + Conds:RS_62._col3=RS_416._col0(Inner),Output:["_col1","_col5","_col6","_col9","_col10"] + <-Map 27 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_416] PartitionCols:_col0 - Select Operator [SEL_420] (rows=1150 width=4) + Select Operator [SEL_414] (rows=1150 width=4) Output:["_col0"] - Filter Operator [FIL_419] (rows=1150 width=89) + Filter Operator [FIL_413] (rows=1150 width=89) predicate:(p_channel_tv = 'N') TableScan [TS_11] (rows=2300 width=89) default@promotion,promotion,Tbl:COMPLETE,Col:COMPLETE,Output:["p_promo_sk","p_channel_tv"] @@ -312,13 +306,13 @@ Stage-0 SHUFFLE [RS_62] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_361] (rows=17185686 width=222) - Conds:RS_59._col2=RS_407._col0(Inner),Output:["_col1","_col3","_col5","_col6","_col9","_col10"] + Conds:RS_59._col2=RS_411._col0(Inner),Output:["_col1","_col3","_col5","_col6","_col9","_col10"] <-Map 26 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_407] + SHUFFLE [RS_411] PartitionCols:_col0 - Select Operator [SEL_404] (rows=154000 width=4) + Select Operator [SEL_409] (rows=154000 width=4) Output:["_col0"] - Filter Operator [FIL_403] (rows=154000 width=115) + Filter Operator [FIL_408] (rows=154000 width=115) predicate:(i_current_price > 50) TableScan [TS_8] (rows=462000 width=115) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_current_price"] @@ -336,23 +330,23 @@ Stage-0 predicate:CAST( d_date AS TIMESTAMP) BETWEEN TIMESTAMP'1998-08-04 00:00:00' AND TIMESTAMP'1998-09-03 00:00:00' TableScan [TS_5] (rows=73049 width=98) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"] - <-Reducer 36 [SIMPLE_EDGE] + <-Reducer 30 [SIMPLE_EDGE] SHUFFLE [RS_56] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_359] (rows=464045263 width=326) - Conds:RS_461._col2, _col4=RS_463._col0, _col1(Left Outer),Output:["_col0","_col1","_col2","_col3","_col5","_col6","_col9","_col10"] - <-Map 35 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_461] + Conds:RS_435._col2, _col4=RS_437._col0, _col1(Left Outer),Output:["_col0","_col1","_col2","_col3","_col5","_col6","_col9","_col10"] + <-Map 29 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_435] PartitionCols:_col2, _col4 - Select Operator [SEL_460] (rows=283691906 width=243) + Select Operator [SEL_434] (rows=283691906 width=243) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] - Filter Operator [FIL_459] (rows=283691906 width=243) - predicate:((cs_item_sk BETWEEN DynamicValue(RS_60_item_i_item_sk_min) AND DynamicValue(RS_60_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_60_item_i_item_sk_bloom_filter))) and (cs_promo_sk BETWEEN DynamicValue(RS_63_promotion_p_promo_sk_min) AND DynamicValue(RS_63_promotion_p_promo_sk_max) and in_bloom_filter(cs_promo_sk, DynamicValue(RS_63_promotion_p_promo_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_57_date_dim_d_date_sk_min) AND DynamicValue(RS_57_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_57_date_dim_d_date_sk_bloom_filter))) and cs_catalog_page_sk is not null and cs_promo_sk is not null and cs_sold_date_sk is not null) + Filter Operator [FIL_433] (rows=283691906 width=243) + predicate:((cs_sold_date_sk BETWEEN DynamicValue(RS_57_date_dim_d_date_sk_min) AND DynamicValue(RS_57_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_57_date_dim_d_date_sk_bloom_filter))) and cs_catalog_page_sk is not null and cs_promo_sk is not null and cs_sold_date_sk is not null) TableScan [TS_37] (rows=287989836 width=243) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_catalog_page_sk","cs_item_sk","cs_promo_sk","cs_order_number","cs_ext_sales_price","cs_net_profit"] <-Reducer 19 [BROADCAST_EDGE] vectorized - BROADCAST [RS_454] - Group By Operator [GBY_453] (rows=1 width=12) + BROADCAST [RS_432] + Group By Operator [GBY_431] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Map 12 [CUSTOM_SIMPLE_EDGE] vectorized SHUFFLE [RS_399] @@ -361,45 +355,23 @@ Stage-0 Select Operator [SEL_392] (rows=8116 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_388] - <-Reducer 28 [BROADCAST_EDGE] vectorized - BROADCAST [RS_456] - Group By Operator [GBY_455] (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 - SHUFFLE [RS_415] - Group By Operator [GBY_412] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_408] (rows=154000 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_404] - <-Reducer 32 [BROADCAST_EDGE] vectorized - BROADCAST [RS_458] - Group By Operator [GBY_457] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 30 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_431] - Group By Operator [GBY_428] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_424] (rows=1150 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_420] - <-Map 37 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_463] + <-Map 31 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_437] PartitionCols:_col0, _col1 - Select Operator [SEL_462] (rows=28798881 width=227) + Select Operator [SEL_436] (rows=28798881 width=227) Output:["_col0","_col1","_col2","_col3"] TableScan [TS_40] (rows=28798881 width=227) default@catalog_returns,catalog_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["cr_item_sk","cr_order_number","cr_return_amount","cr_net_loss"] <-Reducer 24 [CONTAINS] vectorized - Reduce Output Operator [RS_488] + Reduce Output Operator [RS_458] PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_487] (rows=59581 width=627) + Group By Operator [GBY_457] (rows=59581 width=627) Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["sum(_col2)","sum(_col3)","sum(_col4)"],keys:_col0, _col1, 0L - Top N Key Operator [TNK_486] (rows=39721 width=618) + Top N Key Operator [TNK_456] (rows=39721 width=618) keys:_col0, _col1, 0L,sort order:+++,top n:100 - Select Operator [SEL_485] (rows=53 width=615) + Select Operator [SEL_455] (rows=53 width=615) Output:["_col0","_col1","_col2","_col3","_col4"] - Group By Operator [GBY_484] (rows=53 width=436) + Group By Operator [GBY_454] (rows=53 width=436) Output:["_col0","_col1","_col2","_col3"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)"],keys:KEY._col0 <-Reducer 23 [SIMPLE_EDGE] SHUFFLE [RS_109] @@ -409,11 +381,11 @@ Stage-0 Select Operator [SEL_106] (rows=4714659 width=323) Output:["_col0","_col1","_col2","_col3"] Merge Join Operator [MERGEJOIN_368] (rows=4714659 width=323) - Conds:RS_103._col2=RS_483._col0(Inner),Output:["_col5","_col6","_col9","_col10","_col15"] - <-Map 42 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_483] + Conds:RS_103._col2=RS_453._col0(Inner),Output:["_col5","_col6","_col9","_col10","_col15"] + <-Map 36 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_453] PartitionCols:_col0 - Select Operator [SEL_482] (rows=84 width=104) + Select Operator [SEL_452] (rows=84 width=104) Output:["_col0","_col1"] TableScan [TS_89] (rows=84 width=104) default@web_site,web_site,Tbl:COMPLETE,Col:COMPLETE,Output:["web_site_sk","web_site_id"] @@ -421,20 +393,20 @@ Stage-0 SHUFFLE [RS_103] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_367] (rows=4714659 width=227) - Conds:RS_100._col3=RS_425._col0(Inner),Output:["_col2","_col5","_col6","_col9","_col10"] - <-Map 30 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_425] + Conds:RS_100._col3=RS_417._col0(Inner),Output:["_col2","_col5","_col6","_col9","_col10"] + <-Map 27 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_417] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_420] + Please refer to the previous Select Operator [SEL_414] <-Reducer 21 [SIMPLE_EDGE] SHUFFLE [RS_100] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_366] (rows=9429318 width=231) - Conds:RS_97._col1=RS_409._col0(Inner),Output:["_col2","_col3","_col5","_col6","_col9","_col10"] + Conds:RS_97._col1=RS_412._col0(Inner),Output:["_col2","_col3","_col5","_col6","_col9","_col10"] <-Map 26 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_409] + SHUFFLE [RS_412] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_404] + Please refer to the previous Select Operator [SEL_409] <-Reducer 20 [SIMPLE_EDGE] SHUFFLE [RS_97] PartitionCols:_col1 @@ -444,23 +416,23 @@ Stage-0 SHUFFLE [RS_393] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_388] - <-Reducer 40 [SIMPLE_EDGE] + <-Reducer 34 [SIMPLE_EDGE] SHUFFLE [RS_94] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_364] (rows=254608997 width=363) - Conds:RS_479._col1, _col4=RS_481._col0, _col1(Left Outer),Output:["_col0","_col1","_col2","_col3","_col5","_col6","_col9","_col10"] - <-Map 39 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_479] + Conds:RS_449._col1, _col4=RS_451._col0, _col1(Left Outer),Output:["_col0","_col1","_col2","_col3","_col5","_col6","_col9","_col10"] + <-Map 33 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_449] PartitionCols:_col1, _col4 - Select Operator [SEL_478] (rows=143894769 width=243) + Select Operator [SEL_448] (rows=143894769 width=243) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] - Filter Operator [FIL_477] (rows=143894769 width=243) - predicate:((ws_item_sk BETWEEN DynamicValue(RS_98_item_i_item_sk_min) AND DynamicValue(RS_98_item_i_item_sk_max) and in_bloom_filter(ws_item_sk, DynamicValue(RS_98_item_i_item_sk_bloom_filter))) and (ws_promo_sk BETWEEN DynamicValue(RS_101_promotion_p_promo_sk_min) AND DynamicValue(RS_101_promotion_p_promo_sk_max) and in_bloom_filter(ws_promo_sk, DynamicValue(RS_101_promotion_p_promo_sk_bloom_filter))) and (ws_sold_date_sk BETWEEN DynamicValue(RS_95_date_dim_d_date_sk_min) AND DynamicValue(RS_95_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_95_date_dim_d_date_sk_bloom_filter))) and ws_promo_sk is not null and ws_sold_date_sk is not null and ws_web_site_sk is not null) + Filter Operator [FIL_447] (rows=143894769 width=243) + predicate:((ws_sold_date_sk BETWEEN DynamicValue(RS_95_date_dim_d_date_sk_min) AND DynamicValue(RS_95_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_95_date_dim_d_date_sk_bloom_filter))) and ws_promo_sk is not null and ws_sold_date_sk is not null and ws_web_site_sk is not null) TableScan [TS_75] (rows=144002668 width=243) default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_item_sk","ws_web_site_sk","ws_promo_sk","ws_order_number","ws_ext_sales_price","ws_net_profit"] <-Reducer 25 [BROADCAST_EDGE] vectorized - BROADCAST [RS_472] - Group By Operator [GBY_471] (rows=1 width=12) + BROADCAST [RS_446] + Group By Operator [GBY_445] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Map 12 [CUSTOM_SIMPLE_EDGE] vectorized SHUFFLE [RS_400] @@ -469,45 +441,23 @@ Stage-0 Select Operator [SEL_394] (rows=8116 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_388] - <-Reducer 29 [BROADCAST_EDGE] vectorized - BROADCAST [RS_474] - Group By Operator [GBY_473] (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 - SHUFFLE [RS_416] - 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_410] (rows=154000 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_404] - <-Reducer 33 [BROADCAST_EDGE] vectorized - BROADCAST [RS_476] - Group By Operator [GBY_475] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 30 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_432] - Group By Operator [GBY_429] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_426] (rows=1150 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_420] - <-Map 41 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_481] + <-Map 35 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_451] PartitionCols:_col0, _col1 - Select Operator [SEL_480] (rows=14398467 width=221) + Select Operator [SEL_450] (rows=14398467 width=221) Output:["_col0","_col1","_col2","_col3"] TableScan [TS_78] (rows=14398467 width=221) default@web_returns,web_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["wr_item_sk","wr_order_number","wr_return_amt","wr_net_loss"] <-Reducer 7 [CONTAINS] vectorized - Reduce Output Operator [RS_446] + Reduce Output Operator [RS_424] PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_445] (rows=59581 width=627) + Group By Operator [GBY_423] (rows=59581 width=627) Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["sum(_col2)","sum(_col3)","sum(_col4)"],keys:_col0, _col1, 0L - Top N Key Operator [TNK_444] (rows=39721 width=618) + Top N Key Operator [TNK_422] (rows=39721 width=618) keys:_col0, _col1, 0L,sort order:+++,top n:100 - Select Operator [SEL_443] (rows=822 width=617) + Select Operator [SEL_421] (rows=822 width=617) Output:["_col0","_col1","_col2","_col3","_col4"] - Group By Operator [GBY_442] (rows=822 width=436) + Group By Operator [GBY_420] (rows=822 width=436) Output:["_col0","_col1","_col2","_col3"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)"],keys:KEY._col0 <-Reducer 6 [SIMPLE_EDGE] SHUFFLE [RS_34] @@ -517,11 +467,11 @@ Stage-0 Select Operator [SEL_31] (rows=15038783 width=100) Output:["_col0","_col1","_col2","_col3"] Merge Join Operator [MERGEJOIN_358] (rows=15038783 width=100) - Conds:RS_28._col2=RS_441._col0(Inner),Output:["_col5","_col6","_col9","_col10","_col15"] - <-Map 34 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_441] + Conds:RS_28._col2=RS_419._col0(Inner),Output:["_col5","_col6","_col9","_col10","_col15"] + <-Map 28 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_419] PartitionCols:_col0 - Select Operator [SEL_440] (rows=1704 width=104) + Select Operator [SEL_418] (rows=1704 width=104) Output:["_col0","_col1"] TableScan [TS_14] (rows=1704 width=104) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_store_id"] @@ -529,20 +479,20 @@ Stage-0 SHUFFLE [RS_28] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_357] (rows=15038783 width=0) - Conds:RS_25._col3=RS_421._col0(Inner),Output:["_col2","_col5","_col6","_col9","_col10"] - <-Map 30 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_421] + Conds:RS_25._col3=RS_415._col0(Inner),Output:["_col2","_col5","_col6","_col9","_col10"] + <-Map 27 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_415] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_420] + Please refer to the previous Select Operator [SEL_414] <-Reducer 4 [SIMPLE_EDGE] SHUFFLE [RS_25] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_356] (rows=30077566 width=57) - Conds:RS_22._col1=RS_405._col0(Inner),Output:["_col2","_col3","_col5","_col6","_col9","_col10"] + Conds:RS_22._col1=RS_410._col0(Inner),Output:["_col2","_col3","_col5","_col6","_col9","_col10"] <-Map 26 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_405] + SHUFFLE [RS_410] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_404] + Please refer to the previous Select Operator [SEL_409] <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_22] PartitionCols:_col1 @@ -556,14 +506,14 @@ Stage-0 SHUFFLE [RS_19] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_354] (rows=812149846 width=374) - Conds:RS_437._col1, _col4=RS_439._col0, _col1(Left Outer),Output:["_col0","_col1","_col2","_col3","_col5","_col6","_col9","_col10"] + Conds:RS_405._col1, _col4=RS_407._col0, _col1(Left Outer),Output:["_col0","_col1","_col2","_col3","_col5","_col6","_col9","_col10"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_437] + SHUFFLE [RS_405] PartitionCols:_col1, _col4 - Select Operator [SEL_436] (rows=501693263 width=233) + Select Operator [SEL_404] (rows=501693263 width=233) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] - Filter Operator [FIL_435] (rows=501693263 width=233) - predicate:((ss_item_sk BETWEEN DynamicValue(RS_23_item_i_item_sk_min) AND DynamicValue(RS_23_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_23_item_i_item_sk_bloom_filter))) and (ss_promo_sk BETWEEN DynamicValue(RS_26_promotion_p_promo_sk_min) AND DynamicValue(RS_26_promotion_p_promo_sk_max) and in_bloom_filter(ss_promo_sk, DynamicValue(RS_26_promotion_p_promo_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_20_date_dim_d_date_sk_min) AND DynamicValue(RS_20_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_20_date_dim_d_date_sk_bloom_filter))) and ss_promo_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_403] (rows=501693263 width=233) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_20_date_dim_d_date_sk_min) AND DynamicValue(RS_20_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_20_date_dim_d_date_sk_bloom_filter))) and ss_promo_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) TableScan [TS_0] (rows=575995635 width=233) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_store_sk","ss_promo_sk","ss_ticket_number","ss_ext_sales_price","ss_net_profit"] <-Reducer 13 [BROADCAST_EDGE] vectorized @@ -577,32 +527,10 @@ Stage-0 Select Operator [SEL_390] (rows=8116 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_388] - <-Reducer 27 [BROADCAST_EDGE] vectorized - BROADCAST [RS_418] - Group By Operator [GBY_417] (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 - SHUFFLE [RS_414] - Group By Operator [GBY_411] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_406] (rows=154000 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_404] - <-Reducer 31 [BROADCAST_EDGE] vectorized - BROADCAST [RS_434] - Group By Operator [GBY_433] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 30 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_430] - Group By Operator [GBY_427] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_422] (rows=1150 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_420] <-Map 11 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_439] + SHUFFLE [RS_407] PartitionCols:_col0, _col1 - Select Operator [SEL_438] (rows=57591150 width=224) + Select Operator [SEL_406] (rows=57591150 width=224) Output:["_col0","_col1","_col2","_col3"] TableScan [TS_3] (rows=57591150 width=224) default@store_returns,store_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["sr_item_sk","sr_ticket_number","sr_return_amt","sr_net_loss"] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query82.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query82.q.out index 1344b9422a..ffeb3b70d5 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query82.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query82.q.out @@ -43,28 +43,27 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 10 (BROADCAST_EDGE), Reducer 7 (BROADCAST_EDGE) -Reducer 10 <- Reducer 9 (CUSTOM_SIMPLE_EDGE) +Map 1 <- Reducer 7 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (ONE_TO_ONE_EDGE), Reducer 9 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) Reducer 7 <- Map 6 (CUSTOM_SIMPLE_EDGE) -Reducer 9 <- Map 11 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) +Reducer 9 <- Map 10 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) Stage-0 Fetch Operator limit:100 Stage-1 Reducer 5 vectorized - File Output Operator [FS_102] - Limit [LIM_101] (rows=1 width=396) + File Output Operator [FS_100] + Limit [LIM_99] (rows=1 width=396) Number of rows:100 - Select Operator [SEL_100] (rows=1 width=396) + Select Operator [SEL_98] (rows=1 width=396) Output:["_col0","_col1","_col2"] <-Reducer 4 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_99] - Group By Operator [GBY_98] (rows=1 width=396) + SHUFFLE [RS_97] + Group By Operator [GBY_96] (rows=1 width=396) Output:["_col0","_col1","_col2"],keys:KEY._col0, KEY._col1, KEY._col2 <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_23] @@ -75,34 +74,11 @@ Stage-0 keys:_col2, _col3, _col4,sort order:+++,top n:100 Merge Join Operator [MERGEJOIN_78] (rows=2871 width=396) Conds:RS_18._col1=RS_19._col1(Inner),Output:["_col2","_col3","_col4"] - <-Reducer 9 [SIMPLE_EDGE] - SHUFFLE [RS_19] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_77] (rows=463969 width=4) - Conds:RS_89._col0=RS_92._col0(Inner),Output:["_col1"] - <-Map 11 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_92] - PartitionCols:_col0 - Select Operator [SEL_91] (rows=8116 width=4) - Output:["_col0"] - Filter Operator [FIL_90] (rows=8116 width=98) - predicate:CAST( d_date AS TIMESTAMP) BETWEEN TIMESTAMP'2002-05-30 00:00:00' AND TIMESTAMP'2002-07-29 00:00:00' - TableScan [TS_8] (rows=73049 width=98) - default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"] - <-Map 8 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_89] - PartitionCols:_col0 - Select Operator [SEL_88] (rows=4176000 width=8) - Output:["_col0","_col1"] - Filter Operator [FIL_87] (rows=4176000 width=11) - predicate:inv_quantity_on_hand BETWEEN 100 AND 500 - TableScan [TS_5] (rows=37584000 width=11) - default@inventory,inventory,Tbl:COMPLETE,Col:COMPLETE,Output:["inv_date_sk","inv_item_sk","inv_quantity_on_hand"] <-Reducer 2 [ONE_TO_ONE_EDGE] FORWARD [RS_18] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_76] (rows=3564040 width=400) - Conds:RS_97._col0=RS_81._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + Conds:RS_89._col0=RS_81._col0(Inner),Output:["_col1","_col2","_col3","_col4"] <-Map 6 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_81] PartitionCols:_col0 @@ -113,25 +89,14 @@ Stage-0 TableScan [TS_2] (rows=462000 width=403) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_item_id","i_item_desc","i_current_price","i_manufact_id"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_97] + SHUFFLE [RS_89] PartitionCols:_col0 - Select Operator [SEL_96] (rows=575995635 width=4) + Select Operator [SEL_88] (rows=575995635 width=4) Output:["_col0"] - Filter Operator [FIL_95] (rows=575995635 width=4) - predicate:((ss_item_sk BETWEEN DynamicValue(RS_16_item_i_item_sk_min) AND DynamicValue(RS_16_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_16_item_i_item_sk_bloom_filter))) and (ss_item_sk BETWEEN DynamicValue(RS_19_inventory_inv_item_sk_min) AND DynamicValue(RS_19_inventory_inv_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_19_inventory_inv_item_sk_bloom_filter)))) + Filter Operator [FIL_87] (rows=575995635 width=4) + predicate:(in_bloom_filter(ss_item_sk, DynamicValue(RS_16_item_i_item_sk_bloom_filter)) and ss_item_sk BETWEEN DynamicValue(RS_16_item_i_item_sk_min) AND DynamicValue(RS_16_item_i_item_sk_max)) TableScan [TS_0] (rows=575995635 width=4) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_item_sk"] - <-Reducer 10 [BROADCAST_EDGE] vectorized - BROADCAST [RS_94] - Group By Operator [GBY_93] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Reducer 9 [CUSTOM_SIMPLE_EDGE] - SHUFFLE [RS_50] - Group By Operator [GBY_49] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_48] (rows=463969 width=8) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_77] <-Reducer 7 [BROADCAST_EDGE] vectorized BROADCAST [RS_86] Group By Operator [GBY_85] (rows=1 width=12) @@ -143,4 +108,27 @@ Stage-0 Select Operator [SEL_82] (rows=297 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_80] + <-Reducer 9 [SIMPLE_EDGE] + SHUFFLE [RS_19] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_77] (rows=463969 width=4) + Conds:RS_92._col0=RS_95._col0(Inner),Output:["_col1"] + <-Map 10 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_95] + PartitionCols:_col0 + Select Operator [SEL_94] (rows=8116 width=4) + Output:["_col0"] + Filter Operator [FIL_93] (rows=8116 width=98) + predicate:CAST( d_date AS TIMESTAMP) BETWEEN TIMESTAMP'2002-05-30 00:00:00' AND TIMESTAMP'2002-07-29 00:00:00' + TableScan [TS_8] (rows=73049 width=98) + default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"] + <-Map 8 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_92] + PartitionCols:_col0 + Select Operator [SEL_91] (rows=4176000 width=8) + Output:["_col0","_col1"] + Filter Operator [FIL_90] (rows=4176000 width=11) + predicate:inv_quantity_on_hand BETWEEN 100 AND 500 + TableScan [TS_5] (rows=37584000 width=11) + default@inventory,inventory,Tbl:COMPLETE,Col:COMPLETE,Output:["inv_date_sk","inv_item_sk","inv_quantity_on_hand"] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query88.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query88.q.out index 08079cd244..64919cafe7 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query88.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query88.q.out @@ -202,77 +202,61 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 14 (BROADCAST_EDGE), Reducer 51 (BROADCAST_EDGE), Reducer 60 (BROADCAST_EDGE) -Map 68 <- Reducer 19 (BROADCAST_EDGE), Reducer 52 (BROADCAST_EDGE), Reducer 61 (BROADCAST_EDGE) -Map 69 <- Reducer 24 (BROADCAST_EDGE), Reducer 53 (BROADCAST_EDGE), Reducer 62 (BROADCAST_EDGE) -Map 70 <- Reducer 29 (BROADCAST_EDGE), Reducer 54 (BROADCAST_EDGE), Reducer 63 (BROADCAST_EDGE) -Map 71 <- Reducer 34 (BROADCAST_EDGE), Reducer 55 (BROADCAST_EDGE), Reducer 64 (BROADCAST_EDGE) -Map 72 <- Reducer 39 (BROADCAST_EDGE), Reducer 56 (BROADCAST_EDGE), Reducer 65 (BROADCAST_EDGE) -Map 73 <- Reducer 44 (BROADCAST_EDGE), Reducer 57 (BROADCAST_EDGE), Reducer 66 (BROADCAST_EDGE) -Map 74 <- Reducer 49 (BROADCAST_EDGE), Reducer 58 (BROADCAST_EDGE), Reducer 67 (BROADCAST_EDGE) -Reducer 10 <- Reducer 38 (CUSTOM_SIMPLE_EDGE), Reducer 9 (CUSTOM_SIMPLE_EDGE) -Reducer 11 <- Reducer 10 (CUSTOM_SIMPLE_EDGE), Reducer 43 (CUSTOM_SIMPLE_EDGE) -Reducer 12 <- Reducer 11 (CUSTOM_SIMPLE_EDGE), Reducer 48 (CUSTOM_SIMPLE_EDGE) -Reducer 14 <- Map 13 (CUSTOM_SIMPLE_EDGE) -Reducer 15 <- Map 13 (SIMPLE_EDGE), Map 68 (SIMPLE_EDGE) -Reducer 16 <- Map 50 (SIMPLE_EDGE), Reducer 15 (SIMPLE_EDGE) -Reducer 17 <- Map 59 (SIMPLE_EDGE), Reducer 16 (SIMPLE_EDGE) -Reducer 18 <- Reducer 17 (CUSTOM_SIMPLE_EDGE) -Reducer 19 <- Map 13 (CUSTOM_SIMPLE_EDGE) +Map 1 <- Reducer 43 (BROADCAST_EDGE) +Map 52 <- Reducer 44 (BROADCAST_EDGE) +Map 53 <- Reducer 45 (BROADCAST_EDGE) +Map 54 <- Reducer 46 (BROADCAST_EDGE) +Map 55 <- Reducer 47 (BROADCAST_EDGE) +Map 56 <- Reducer 48 (BROADCAST_EDGE) +Map 57 <- Reducer 49 (BROADCAST_EDGE) +Map 58 <- Reducer 50 (BROADCAST_EDGE) +Reducer 10 <- Reducer 33 (CUSTOM_SIMPLE_EDGE), Reducer 9 (CUSTOM_SIMPLE_EDGE) +Reducer 11 <- Reducer 10 (CUSTOM_SIMPLE_EDGE), Reducer 37 (CUSTOM_SIMPLE_EDGE) +Reducer 12 <- Reducer 11 (CUSTOM_SIMPLE_EDGE), Reducer 41 (CUSTOM_SIMPLE_EDGE) +Reducer 14 <- Map 13 (SIMPLE_EDGE), Map 52 (SIMPLE_EDGE) +Reducer 15 <- Map 42 (SIMPLE_EDGE), Reducer 14 (SIMPLE_EDGE) +Reducer 16 <- Map 51 (SIMPLE_EDGE), Reducer 15 (SIMPLE_EDGE) +Reducer 17 <- Reducer 16 (CUSTOM_SIMPLE_EDGE) +Reducer 18 <- Map 13 (SIMPLE_EDGE), Map 53 (SIMPLE_EDGE) +Reducer 19 <- Map 42 (SIMPLE_EDGE), Reducer 18 (SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 13 (SIMPLE_EDGE) -Reducer 20 <- Map 13 (SIMPLE_EDGE), Map 69 (SIMPLE_EDGE) -Reducer 21 <- Map 50 (SIMPLE_EDGE), Reducer 20 (SIMPLE_EDGE) -Reducer 22 <- Map 59 (SIMPLE_EDGE), Reducer 21 (SIMPLE_EDGE) -Reducer 23 <- Reducer 22 (CUSTOM_SIMPLE_EDGE) -Reducer 24 <- Map 13 (CUSTOM_SIMPLE_EDGE) -Reducer 25 <- Map 13 (SIMPLE_EDGE), Map 70 (SIMPLE_EDGE) -Reducer 26 <- Map 50 (SIMPLE_EDGE), Reducer 25 (SIMPLE_EDGE) -Reducer 27 <- Map 59 (SIMPLE_EDGE), Reducer 26 (SIMPLE_EDGE) -Reducer 28 <- Reducer 27 (CUSTOM_SIMPLE_EDGE) -Reducer 29 <- Map 13 (CUSTOM_SIMPLE_EDGE) -Reducer 3 <- Map 50 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 30 <- Map 13 (SIMPLE_EDGE), Map 71 (SIMPLE_EDGE) -Reducer 31 <- Map 50 (SIMPLE_EDGE), Reducer 30 (SIMPLE_EDGE) -Reducer 32 <- Map 59 (SIMPLE_EDGE), Reducer 31 (SIMPLE_EDGE) +Reducer 20 <- Map 51 (SIMPLE_EDGE), Reducer 19 (SIMPLE_EDGE) +Reducer 21 <- Reducer 20 (CUSTOM_SIMPLE_EDGE) +Reducer 22 <- Map 13 (SIMPLE_EDGE), Map 54 (SIMPLE_EDGE) +Reducer 23 <- Map 42 (SIMPLE_EDGE), Reducer 22 (SIMPLE_EDGE) +Reducer 24 <- Map 51 (SIMPLE_EDGE), Reducer 23 (SIMPLE_EDGE) +Reducer 25 <- Reducer 24 (CUSTOM_SIMPLE_EDGE) +Reducer 26 <- Map 13 (SIMPLE_EDGE), Map 55 (SIMPLE_EDGE) +Reducer 27 <- Map 42 (SIMPLE_EDGE), Reducer 26 (SIMPLE_EDGE) +Reducer 28 <- Map 51 (SIMPLE_EDGE), Reducer 27 (SIMPLE_EDGE) +Reducer 29 <- Reducer 28 (CUSTOM_SIMPLE_EDGE) +Reducer 3 <- Map 42 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 30 <- Map 13 (SIMPLE_EDGE), Map 56 (SIMPLE_EDGE) +Reducer 31 <- Map 42 (SIMPLE_EDGE), Reducer 30 (SIMPLE_EDGE) +Reducer 32 <- Map 51 (SIMPLE_EDGE), Reducer 31 (SIMPLE_EDGE) Reducer 33 <- Reducer 32 (CUSTOM_SIMPLE_EDGE) -Reducer 34 <- Map 13 (CUSTOM_SIMPLE_EDGE) -Reducer 35 <- Map 13 (SIMPLE_EDGE), Map 72 (SIMPLE_EDGE) -Reducer 36 <- Map 50 (SIMPLE_EDGE), Reducer 35 (SIMPLE_EDGE) -Reducer 37 <- Map 59 (SIMPLE_EDGE), Reducer 36 (SIMPLE_EDGE) -Reducer 38 <- Reducer 37 (CUSTOM_SIMPLE_EDGE) -Reducer 39 <- Map 13 (CUSTOM_SIMPLE_EDGE) -Reducer 4 <- Map 59 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 40 <- Map 13 (SIMPLE_EDGE), Map 73 (SIMPLE_EDGE) -Reducer 41 <- Map 50 (SIMPLE_EDGE), Reducer 40 (SIMPLE_EDGE) -Reducer 42 <- Map 59 (SIMPLE_EDGE), Reducer 41 (SIMPLE_EDGE) -Reducer 43 <- Reducer 42 (CUSTOM_SIMPLE_EDGE) -Reducer 44 <- Map 13 (CUSTOM_SIMPLE_EDGE) -Reducer 45 <- Map 13 (SIMPLE_EDGE), Map 74 (SIMPLE_EDGE) -Reducer 46 <- Map 50 (SIMPLE_EDGE), Reducer 45 (SIMPLE_EDGE) -Reducer 47 <- Map 59 (SIMPLE_EDGE), Reducer 46 (SIMPLE_EDGE) -Reducer 48 <- Reducer 47 (CUSTOM_SIMPLE_EDGE) -Reducer 49 <- Map 13 (CUSTOM_SIMPLE_EDGE) +Reducer 34 <- Map 13 (SIMPLE_EDGE), Map 57 (SIMPLE_EDGE) +Reducer 35 <- Map 42 (SIMPLE_EDGE), Reducer 34 (SIMPLE_EDGE) +Reducer 36 <- Map 51 (SIMPLE_EDGE), Reducer 35 (SIMPLE_EDGE) +Reducer 37 <- Reducer 36 (CUSTOM_SIMPLE_EDGE) +Reducer 38 <- Map 13 (SIMPLE_EDGE), Map 58 (SIMPLE_EDGE) +Reducer 39 <- Map 42 (SIMPLE_EDGE), Reducer 38 (SIMPLE_EDGE) +Reducer 4 <- Map 51 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 40 <- Map 51 (SIMPLE_EDGE), Reducer 39 (SIMPLE_EDGE) +Reducer 41 <- Reducer 40 (CUSTOM_SIMPLE_EDGE) +Reducer 43 <- Map 42 (CUSTOM_SIMPLE_EDGE) +Reducer 44 <- Map 42 (CUSTOM_SIMPLE_EDGE) +Reducer 45 <- Map 42 (CUSTOM_SIMPLE_EDGE) +Reducer 46 <- Map 42 (CUSTOM_SIMPLE_EDGE) +Reducer 47 <- Map 42 (CUSTOM_SIMPLE_EDGE) +Reducer 48 <- Map 42 (CUSTOM_SIMPLE_EDGE) +Reducer 49 <- Map 42 (CUSTOM_SIMPLE_EDGE) Reducer 5 <- Reducer 4 (CUSTOM_SIMPLE_EDGE) -Reducer 51 <- Map 50 (CUSTOM_SIMPLE_EDGE) -Reducer 52 <- Map 50 (CUSTOM_SIMPLE_EDGE) -Reducer 53 <- Map 50 (CUSTOM_SIMPLE_EDGE) -Reducer 54 <- Map 50 (CUSTOM_SIMPLE_EDGE) -Reducer 55 <- Map 50 (CUSTOM_SIMPLE_EDGE) -Reducer 56 <- Map 50 (CUSTOM_SIMPLE_EDGE) -Reducer 57 <- Map 50 (CUSTOM_SIMPLE_EDGE) -Reducer 58 <- Map 50 (CUSTOM_SIMPLE_EDGE) -Reducer 6 <- Reducer 18 (CUSTOM_SIMPLE_EDGE), Reducer 5 (CUSTOM_SIMPLE_EDGE) -Reducer 60 <- Map 59 (CUSTOM_SIMPLE_EDGE) -Reducer 61 <- Map 59 (CUSTOM_SIMPLE_EDGE) -Reducer 62 <- Map 59 (CUSTOM_SIMPLE_EDGE) -Reducer 63 <- Map 59 (CUSTOM_SIMPLE_EDGE) -Reducer 64 <- Map 59 (CUSTOM_SIMPLE_EDGE) -Reducer 65 <- Map 59 (CUSTOM_SIMPLE_EDGE) -Reducer 66 <- Map 59 (CUSTOM_SIMPLE_EDGE) -Reducer 67 <- Map 59 (CUSTOM_SIMPLE_EDGE) -Reducer 7 <- Reducer 23 (CUSTOM_SIMPLE_EDGE), Reducer 6 (CUSTOM_SIMPLE_EDGE) -Reducer 8 <- Reducer 28 (CUSTOM_SIMPLE_EDGE), Reducer 7 (CUSTOM_SIMPLE_EDGE) -Reducer 9 <- Reducer 33 (CUSTOM_SIMPLE_EDGE), Reducer 8 (CUSTOM_SIMPLE_EDGE) +Reducer 50 <- Map 42 (CUSTOM_SIMPLE_EDGE) +Reducer 6 <- Reducer 17 (CUSTOM_SIMPLE_EDGE), Reducer 5 (CUSTOM_SIMPLE_EDGE) +Reducer 7 <- Reducer 21 (CUSTOM_SIMPLE_EDGE), Reducer 6 (CUSTOM_SIMPLE_EDGE) +Reducer 8 <- Reducer 25 (CUSTOM_SIMPLE_EDGE), Reducer 7 (CUSTOM_SIMPLE_EDGE) +Reducer 9 <- Reducer 29 (CUSTOM_SIMPLE_EDGE), Reducer 8 (CUSTOM_SIMPLE_EDGE) Stage-0 Fetch Operator @@ -292,655 +276,479 @@ Stage-0 PARTITION_ONLY_SHUFFLE [RS_223] Merge Join Operator [MERGEJOIN_603] (rows=1 width=48) Conds:(Inner),Output:["_col0","_col1","_col2","_col3","_col4","_col5"] - <-Reducer 38 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_787] - Group By Operator [GBY_786] (rows=1 width=8) + <-Reducer 33 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_715] + Group By Operator [GBY_714] (rows=1 width=8) Output:["_col0"],aggregations:["count(VALUE._col0)"] - <-Reducer 37 [CUSTOM_SIMPLE_EDGE] + <-Reducer 32 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_153] Group By Operator [GBY_152] (rows=1 width=8) Output:["_col0"],aggregations:["count()"] Merge Join Operator [MERGEJOIN_592] (rows=1352994 width=8) - Conds:RS_148._col2=RS_704._col0(Inner) - <-Map 59 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_704] + Conds:RS_148._col2=RS_676._col0(Inner) + <-Map 51 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_676] PartitionCols:_col0 - Select Operator [SEL_693] (rows=155 width=4) + Select Operator [SEL_670] (rows=155 width=4) Output:["_col0"] - Filter Operator [FIL_692] (rows=155 width=92) + Filter Operator [FIL_669] (rows=155 width=92) predicate:(s_store_name = 'ese') TableScan [TS_9] (rows=1704 width=92) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_store_name"] - <-Reducer 36 [SIMPLE_EDGE] + <-Reducer 31 [SIMPLE_EDGE] SHUFFLE [RS_148] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_591] (rows=1842898 width=0) - Conds:RS_145._col0=RS_668._col0(Inner),Output:["_col2"] - <-Map 50 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_668] + Conds:RS_145._col0=RS_632._col0(Inner),Output:["_col2"] + <-Map 42 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_632] PartitionCols:_col0 - Select Operator [SEL_655] (rows=1515 width=4) + Select Operator [SEL_619] (rows=1515 width=4) Output:["_col0"] - Filter Operator [FIL_647] (rows=1515 width=12) + Filter Operator [FIL_611] (rows=1515 width=12) predicate:((t_hour = 10) and (t_minute < 30)) TableScan [TS_6] (rows=86400 width=12) default@time_dim,time_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["t_time_sk","t_hour","t_minute"] - <-Reducer 35 [SIMPLE_EDGE] + <-Reducer 30 [SIMPLE_EDGE] SHUFFLE [RS_145] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_590] (rows=56928540 width=4) - Conds:RS_785._col1=RS_618._col0(Inner),Output:["_col0","_col2"] + Conds:RS_713._col1=RS_666._col0(Inner),Output:["_col0","_col2"] <-Map 13 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_618] + SHUFFLE [RS_666] PartitionCols:_col0 - Select Operator [SEL_607] (rows=817 width=4) + Select Operator [SEL_660] (rows=817 width=4) Output:["_col0"] - Filter Operator [FIL_606] (rows=817 width=12) + Filter Operator [FIL_659] (rows=817 width=12) predicate:((((hd_dep_count = 3) and hd_vehicle_count is not null) or ((hd_dep_count = 0) and (hd_vehicle_count <= 2)) or ((hd_dep_count = 1) and (hd_vehicle_count <= 3))) and (hd_dep_count) IN (3, 0, 1) and (hd_vehicle_count <= 5)) TableScan [TS_3] (rows=7200 width=12) default@household_demographics,household_demographics,Tbl:COMPLETE,Col:COMPLETE,Output:["hd_demo_sk","hd_dep_count","hd_vehicle_count"] - <-Map 72 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_785] + <-Map 56 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_713] PartitionCols:_col1 - Select Operator [SEL_784] (rows=501695814 width=11) + Select Operator [SEL_712] (rows=501695814 width=11) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_783] (rows=501695814 width=11) - predicate:((ss_hdemo_sk BETWEEN DynamicValue(RS_143_household_demographics_hd_demo_sk_min) AND DynamicValue(RS_143_household_demographics_hd_demo_sk_max) and in_bloom_filter(ss_hdemo_sk, DynamicValue(RS_143_household_demographics_hd_demo_sk_bloom_filter))) and (ss_sold_time_sk BETWEEN DynamicValue(RS_146_time_dim_t_time_sk_min) AND DynamicValue(RS_146_time_dim_t_time_sk_max) and in_bloom_filter(ss_sold_time_sk, DynamicValue(RS_146_time_dim_t_time_sk_bloom_filter))) and (ss_store_sk BETWEEN DynamicValue(RS_149_store_s_store_sk_min) AND DynamicValue(RS_149_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_149_store_s_store_sk_bloom_filter))) and ss_hdemo_sk is not null and ss_sold_time_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_711] (rows=501695814 width=11) + predicate:((ss_sold_time_sk BETWEEN DynamicValue(RS_146_time_dim_t_time_sk_min) AND DynamicValue(RS_146_time_dim_t_time_sk_max) and in_bloom_filter(ss_sold_time_sk, DynamicValue(RS_146_time_dim_t_time_sk_bloom_filter))) and ss_hdemo_sk is not null and ss_sold_time_sk is not null and ss_store_sk is not null) TableScan [TS_130] (rows=575995635 width=11) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_time_sk","ss_hdemo_sk","ss_store_sk"] - <-Reducer 39 [BROADCAST_EDGE] vectorized - BROADCAST [RS_778] - Group By Operator [GBY_777] (rows=1 width=12) + <-Reducer 48 [BROADCAST_EDGE] vectorized + BROADCAST [RS_710] + Group By Operator [GBY_709] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 13 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_637] - Group By Operator [GBY_629] (rows=1 width=12) + <-Map 42 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_651] + Group By Operator [GBY_643] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_619] (rows=817 width=4) + Select Operator [SEL_633] (rows=1515 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_607] - <-Reducer 56 [BROADCAST_EDGE] vectorized - BROADCAST [RS_780] - Group By Operator [GBY_779] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 50 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_687] - Group By Operator [GBY_679] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_669] (rows=1515 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_655] - <-Reducer 65 [BROADCAST_EDGE] vectorized - BROADCAST [RS_782] - Group By Operator [GBY_781] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 59 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_723] - Group By Operator [GBY_715] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_705] (rows=155 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_693] + Please refer to the previous Select Operator [SEL_619] <-Reducer 9 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_220] Merge Join Operator [MERGEJOIN_602] (rows=1 width=40) Conds:(Inner),Output:["_col0","_col1","_col2","_col3","_col4"] - <-Reducer 33 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_776] - Group By Operator [GBY_775] (rows=1 width=8) + <-Reducer 29 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_708] + Group By Operator [GBY_707] (rows=1 width=8) Output:["_col0"],aggregations:["count(VALUE._col0)"] - <-Reducer 32 [CUSTOM_SIMPLE_EDGE] + <-Reducer 28 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_127] Group By Operator [GBY_126] (rows=1 width=8) Output:["_col0"],aggregations:["count()"] Merge Join Operator [MERGEJOIN_589] (rows=1352994 width=8) - Conds:RS_122._col2=RS_702._col0(Inner) - <-Map 59 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_702] + Conds:RS_122._col2=RS_675._col0(Inner) + <-Map 51 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_675] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_693] - <-Reducer 31 [SIMPLE_EDGE] + Please refer to the previous Select Operator [SEL_670] + <-Reducer 27 [SIMPLE_EDGE] SHUFFLE [RS_122] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_588] (rows=1842898 width=0) - Conds:RS_119._col0=RS_666._col0(Inner),Output:["_col2"] - <-Map 50 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_666] + Conds:RS_119._col0=RS_630._col0(Inner),Output:["_col2"] + <-Map 42 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_630] PartitionCols:_col0 - Select Operator [SEL_654] (rows=1515 width=4) + Select Operator [SEL_618] (rows=1515 width=4) Output:["_col0"] - Filter Operator [FIL_646] (rows=1515 width=12) + Filter Operator [FIL_610] (rows=1515 width=12) predicate:((t_hour = 10) and (t_minute >= 30)) Please refer to the previous TableScan [TS_6] - <-Reducer 30 [SIMPLE_EDGE] + <-Reducer 26 [SIMPLE_EDGE] SHUFFLE [RS_119] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_587] (rows=56928540 width=4) - Conds:RS_774._col1=RS_616._col0(Inner),Output:["_col0","_col2"] + Conds:RS_706._col1=RS_665._col0(Inner),Output:["_col0","_col2"] <-Map 13 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_616] + SHUFFLE [RS_665] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_607] - <-Map 71 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_774] + Please refer to the previous Select Operator [SEL_660] + <-Map 55 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_706] PartitionCols:_col1 - Select Operator [SEL_773] (rows=501695814 width=11) + Select Operator [SEL_705] (rows=501695814 width=11) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_772] (rows=501695814 width=11) - predicate:((ss_hdemo_sk BETWEEN DynamicValue(RS_117_household_demographics_hd_demo_sk_min) AND DynamicValue(RS_117_household_demographics_hd_demo_sk_max) and in_bloom_filter(ss_hdemo_sk, DynamicValue(RS_117_household_demographics_hd_demo_sk_bloom_filter))) and (ss_sold_time_sk BETWEEN DynamicValue(RS_120_time_dim_t_time_sk_min) AND DynamicValue(RS_120_time_dim_t_time_sk_max) and in_bloom_filter(ss_sold_time_sk, DynamicValue(RS_120_time_dim_t_time_sk_bloom_filter))) and (ss_store_sk BETWEEN DynamicValue(RS_123_store_s_store_sk_min) AND DynamicValue(RS_123_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_123_store_s_store_sk_bloom_filter))) and ss_hdemo_sk is not null and ss_sold_time_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_704] (rows=501695814 width=11) + predicate:((ss_sold_time_sk BETWEEN DynamicValue(RS_120_time_dim_t_time_sk_min) AND DynamicValue(RS_120_time_dim_t_time_sk_max) and in_bloom_filter(ss_sold_time_sk, DynamicValue(RS_120_time_dim_t_time_sk_bloom_filter))) and ss_hdemo_sk is not null and ss_sold_time_sk is not null and ss_store_sk is not null) TableScan [TS_104] (rows=575995635 width=11) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_time_sk","ss_hdemo_sk","ss_store_sk"] - <-Reducer 34 [BROADCAST_EDGE] vectorized - BROADCAST [RS_767] - Group By Operator [GBY_766] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 13 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_636] - Group By Operator [GBY_628] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_617] (rows=817 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_607] - <-Reducer 55 [BROADCAST_EDGE] vectorized - BROADCAST [RS_769] - Group By Operator [GBY_768] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 50 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_686] - Group By Operator [GBY_678] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_667] (rows=1515 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_654] - <-Reducer 64 [BROADCAST_EDGE] vectorized - BROADCAST [RS_771] - Group By Operator [GBY_770] (rows=1 width=12) + <-Reducer 47 [BROADCAST_EDGE] vectorized + BROADCAST [RS_703] + Group By Operator [GBY_702] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 59 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_722] - Group By Operator [GBY_714] (rows=1 width=12) + <-Map 42 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_650] + Group By Operator [GBY_642] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_703] (rows=155 width=4) + Select Operator [SEL_631] (rows=1515 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_693] + Please refer to the previous Select Operator [SEL_618] <-Reducer 8 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_217] Merge Join Operator [MERGEJOIN_601] (rows=1 width=32) Conds:(Inner),Output:["_col0","_col1","_col2","_col3"] - <-Reducer 28 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_765] - Group By Operator [GBY_764] (rows=1 width=8) + <-Reducer 25 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_701] + Group By Operator [GBY_700] (rows=1 width=8) Output:["_col0"],aggregations:["count(VALUE._col0)"] - <-Reducer 27 [CUSTOM_SIMPLE_EDGE] + <-Reducer 24 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_101] Group By Operator [GBY_100] (rows=1 width=8) Output:["_col0"],aggregations:["count()"] Merge Join Operator [MERGEJOIN_586] (rows=1352994 width=8) - Conds:RS_96._col2=RS_700._col0(Inner) - <-Map 59 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_700] + Conds:RS_96._col2=RS_674._col0(Inner) + <-Map 51 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_674] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_693] - <-Reducer 26 [SIMPLE_EDGE] + Please refer to the previous Select Operator [SEL_670] + <-Reducer 23 [SIMPLE_EDGE] SHUFFLE [RS_96] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_585] (rows=1842898 width=0) - Conds:RS_93._col0=RS_664._col0(Inner),Output:["_col2"] - <-Map 50 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_664] + Conds:RS_93._col0=RS_628._col0(Inner),Output:["_col2"] + <-Map 42 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_628] PartitionCols:_col0 - Select Operator [SEL_653] (rows=1515 width=4) + Select Operator [SEL_617] (rows=1515 width=4) Output:["_col0"] - Filter Operator [FIL_645] (rows=1515 width=12) + Filter Operator [FIL_609] (rows=1515 width=12) predicate:((t_hour = 11) and (t_minute < 30)) Please refer to the previous TableScan [TS_6] - <-Reducer 25 [SIMPLE_EDGE] + <-Reducer 22 [SIMPLE_EDGE] SHUFFLE [RS_93] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_584] (rows=56928540 width=4) - Conds:RS_763._col1=RS_614._col0(Inner),Output:["_col0","_col2"] + Conds:RS_699._col1=RS_664._col0(Inner),Output:["_col0","_col2"] <-Map 13 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_614] + SHUFFLE [RS_664] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_607] - <-Map 70 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_763] + Please refer to the previous Select Operator [SEL_660] + <-Map 54 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_699] PartitionCols:_col1 - Select Operator [SEL_762] (rows=501695814 width=11) + Select Operator [SEL_698] (rows=501695814 width=11) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_761] (rows=501695814 width=11) - predicate:((ss_hdemo_sk BETWEEN DynamicValue(RS_91_household_demographics_hd_demo_sk_min) AND DynamicValue(RS_91_household_demographics_hd_demo_sk_max) and in_bloom_filter(ss_hdemo_sk, DynamicValue(RS_91_household_demographics_hd_demo_sk_bloom_filter))) and (ss_sold_time_sk BETWEEN DynamicValue(RS_94_time_dim_t_time_sk_min) AND DynamicValue(RS_94_time_dim_t_time_sk_max) and in_bloom_filter(ss_sold_time_sk, DynamicValue(RS_94_time_dim_t_time_sk_bloom_filter))) and (ss_store_sk BETWEEN DynamicValue(RS_97_store_s_store_sk_min) AND DynamicValue(RS_97_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_97_store_s_store_sk_bloom_filter))) and ss_hdemo_sk is not null and ss_sold_time_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_697] (rows=501695814 width=11) + predicate:((ss_sold_time_sk BETWEEN DynamicValue(RS_94_time_dim_t_time_sk_min) AND DynamicValue(RS_94_time_dim_t_time_sk_max) and in_bloom_filter(ss_sold_time_sk, DynamicValue(RS_94_time_dim_t_time_sk_bloom_filter))) and ss_hdemo_sk is not null and ss_sold_time_sk is not null and ss_store_sk is not null) TableScan [TS_78] (rows=575995635 width=11) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_time_sk","ss_hdemo_sk","ss_store_sk"] - <-Reducer 29 [BROADCAST_EDGE] vectorized - BROADCAST [RS_756] - Group By Operator [GBY_755] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 13 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_635] - Group By Operator [GBY_627] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_615] (rows=817 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_607] - <-Reducer 54 [BROADCAST_EDGE] vectorized - BROADCAST [RS_758] - Group By Operator [GBY_757] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 50 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_685] - Group By Operator [GBY_677] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_665] (rows=1515 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_653] - <-Reducer 63 [BROADCAST_EDGE] vectorized - BROADCAST [RS_760] - Group By Operator [GBY_759] (rows=1 width=12) + <-Reducer 46 [BROADCAST_EDGE] vectorized + BROADCAST [RS_696] + Group By Operator [GBY_695] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 59 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_721] - Group By Operator [GBY_713] (rows=1 width=12) + <-Map 42 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_649] + Group By Operator [GBY_641] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_701] (rows=155 width=4) + Select Operator [SEL_629] (rows=1515 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_693] + Please refer to the previous Select Operator [SEL_617] <-Reducer 7 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_214] Merge Join Operator [MERGEJOIN_600] (rows=1 width=24) Conds:(Inner),Output:["_col0","_col1","_col2"] - <-Reducer 23 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_754] - Group By Operator [GBY_753] (rows=1 width=8) + <-Reducer 21 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_694] + Group By Operator [GBY_693] (rows=1 width=8) Output:["_col0"],aggregations:["count(VALUE._col0)"] - <-Reducer 22 [CUSTOM_SIMPLE_EDGE] + <-Reducer 20 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_75] Group By Operator [GBY_74] (rows=1 width=8) Output:["_col0"],aggregations:["count()"] Merge Join Operator [MERGEJOIN_583] (rows=1352994 width=8) - Conds:RS_70._col2=RS_698._col0(Inner) - <-Map 59 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_698] + Conds:RS_70._col2=RS_673._col0(Inner) + <-Map 51 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_673] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_693] - <-Reducer 21 [SIMPLE_EDGE] + Please refer to the previous Select Operator [SEL_670] + <-Reducer 19 [SIMPLE_EDGE] SHUFFLE [RS_70] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_582] (rows=1842898 width=0) - Conds:RS_67._col0=RS_662._col0(Inner),Output:["_col2"] - <-Map 50 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_662] + Conds:RS_67._col0=RS_626._col0(Inner),Output:["_col2"] + <-Map 42 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_626] PartitionCols:_col0 - Select Operator [SEL_652] (rows=1515 width=4) + Select Operator [SEL_616] (rows=1515 width=4) Output:["_col0"] - Filter Operator [FIL_644] (rows=1515 width=12) + Filter Operator [FIL_608] (rows=1515 width=12) predicate:((t_hour = 11) and (t_minute >= 30)) Please refer to the previous TableScan [TS_6] - <-Reducer 20 [SIMPLE_EDGE] + <-Reducer 18 [SIMPLE_EDGE] SHUFFLE [RS_67] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_581] (rows=56928540 width=4) - Conds:RS_752._col1=RS_612._col0(Inner),Output:["_col0","_col2"] + Conds:RS_692._col1=RS_663._col0(Inner),Output:["_col0","_col2"] <-Map 13 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_612] + SHUFFLE [RS_663] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_607] - <-Map 69 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_752] + Please refer to the previous Select Operator [SEL_660] + <-Map 53 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_692] PartitionCols:_col1 - Select Operator [SEL_751] (rows=501695814 width=11) + Select Operator [SEL_691] (rows=501695814 width=11) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_750] (rows=501695814 width=11) - predicate:((ss_hdemo_sk BETWEEN DynamicValue(RS_65_household_demographics_hd_demo_sk_min) AND DynamicValue(RS_65_household_demographics_hd_demo_sk_max) and in_bloom_filter(ss_hdemo_sk, DynamicValue(RS_65_household_demographics_hd_demo_sk_bloom_filter))) and (ss_sold_time_sk BETWEEN DynamicValue(RS_68_time_dim_t_time_sk_min) AND DynamicValue(RS_68_time_dim_t_time_sk_max) and in_bloom_filter(ss_sold_time_sk, DynamicValue(RS_68_time_dim_t_time_sk_bloom_filter))) and (ss_store_sk BETWEEN DynamicValue(RS_71_store_s_store_sk_min) AND DynamicValue(RS_71_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_71_store_s_store_sk_bloom_filter))) and ss_hdemo_sk is not null and ss_sold_time_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_690] (rows=501695814 width=11) + predicate:((ss_sold_time_sk BETWEEN DynamicValue(RS_68_time_dim_t_time_sk_min) AND DynamicValue(RS_68_time_dim_t_time_sk_max) and in_bloom_filter(ss_sold_time_sk, DynamicValue(RS_68_time_dim_t_time_sk_bloom_filter))) and ss_hdemo_sk is not null and ss_sold_time_sk is not null and ss_store_sk is not null) TableScan [TS_52] (rows=575995635 width=11) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_time_sk","ss_hdemo_sk","ss_store_sk"] - <-Reducer 24 [BROADCAST_EDGE] vectorized - BROADCAST [RS_745] - Group By Operator [GBY_744] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 13 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_634] - Group By Operator [GBY_626] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_613] (rows=817 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_607] - <-Reducer 53 [BROADCAST_EDGE] vectorized - BROADCAST [RS_747] - Group By Operator [GBY_746] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 50 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_684] - Group By Operator [GBY_676] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_663] (rows=1515 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_652] - <-Reducer 62 [BROADCAST_EDGE] vectorized - BROADCAST [RS_749] - Group By Operator [GBY_748] (rows=1 width=12) + <-Reducer 45 [BROADCAST_EDGE] vectorized + BROADCAST [RS_689] + Group By Operator [GBY_688] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 59 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_720] - Group By Operator [GBY_712] (rows=1 width=12) + <-Map 42 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_648] + Group By Operator [GBY_640] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_699] (rows=155 width=4) + Select Operator [SEL_627] (rows=1515 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_693] + Please refer to the previous Select Operator [SEL_616] <-Reducer 6 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_211] Merge Join Operator [MERGEJOIN_599] (rows=1 width=16) Conds:(Inner),Output:["_col0","_col1"] - <-Reducer 18 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_743] - Group By Operator [GBY_742] (rows=1 width=8) + <-Reducer 17 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_687] + Group By Operator [GBY_686] (rows=1 width=8) Output:["_col0"],aggregations:["count(VALUE._col0)"] - <-Reducer 17 [CUSTOM_SIMPLE_EDGE] + <-Reducer 16 [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_580] (rows=1352994 width=8) - Conds:RS_44._col2=RS_696._col0(Inner) - <-Map 59 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_696] + Conds:RS_44._col2=RS_672._col0(Inner) + <-Map 51 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_672] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_693] - <-Reducer 16 [SIMPLE_EDGE] + Please refer to the previous Select Operator [SEL_670] + <-Reducer 15 [SIMPLE_EDGE] SHUFFLE [RS_44] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_579] (rows=1842898 width=0) - Conds:RS_41._col0=RS_660._col0(Inner),Output:["_col2"] - <-Map 50 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_660] + Conds:RS_41._col0=RS_624._col0(Inner),Output:["_col2"] + <-Map 42 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_624] PartitionCols:_col0 - Select Operator [SEL_651] (rows=1515 width=4) + Select Operator [SEL_615] (rows=1515 width=4) Output:["_col0"] - Filter Operator [FIL_643] (rows=1515 width=12) + Filter Operator [FIL_607] (rows=1515 width=12) predicate:((t_hour = 12) and (t_minute < 30)) Please refer to the previous TableScan [TS_6] - <-Reducer 15 [SIMPLE_EDGE] + <-Reducer 14 [SIMPLE_EDGE] SHUFFLE [RS_41] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_578] (rows=56928540 width=4) - Conds:RS_741._col1=RS_610._col0(Inner),Output:["_col0","_col2"] + Conds:RS_685._col1=RS_662._col0(Inner),Output:["_col0","_col2"] <-Map 13 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_610] + SHUFFLE [RS_662] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_607] - <-Map 68 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_741] + Please refer to the previous Select Operator [SEL_660] + <-Map 52 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_685] PartitionCols:_col1 - Select Operator [SEL_740] (rows=501695814 width=11) + Select Operator [SEL_684] (rows=501695814 width=11) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_739] (rows=501695814 width=11) - predicate:((ss_hdemo_sk BETWEEN DynamicValue(RS_39_household_demographics_hd_demo_sk_min) AND DynamicValue(RS_39_household_demographics_hd_demo_sk_max) and in_bloom_filter(ss_hdemo_sk, DynamicValue(RS_39_household_demographics_hd_demo_sk_bloom_filter))) and (ss_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(ss_sold_time_sk, DynamicValue(RS_42_time_dim_t_time_sk_bloom_filter))) and (ss_store_sk BETWEEN DynamicValue(RS_45_store_s_store_sk_min) AND DynamicValue(RS_45_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_45_store_s_store_sk_bloom_filter))) and ss_hdemo_sk is not null and ss_sold_time_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_683] (rows=501695814 width=11) + predicate:((ss_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(ss_sold_time_sk, DynamicValue(RS_42_time_dim_t_time_sk_bloom_filter))) and ss_hdemo_sk is not null and ss_sold_time_sk is not null and ss_store_sk is not null) TableScan [TS_26] (rows=575995635 width=11) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_time_sk","ss_hdemo_sk","ss_store_sk"] - <-Reducer 19 [BROADCAST_EDGE] vectorized - BROADCAST [RS_734] - Group By Operator [GBY_733] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 13 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_633] - Group By Operator [GBY_625] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_611] (rows=817 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_607] - <-Reducer 52 [BROADCAST_EDGE] vectorized - BROADCAST [RS_736] - Group By Operator [GBY_735] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 50 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_683] - Group By Operator [GBY_675] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_661] (rows=1515 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_651] - <-Reducer 61 [BROADCAST_EDGE] vectorized - BROADCAST [RS_738] - Group By Operator [GBY_737] (rows=1 width=12) + <-Reducer 44 [BROADCAST_EDGE] vectorized + BROADCAST [RS_682] + Group By Operator [GBY_681] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 59 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_719] - Group By Operator [GBY_711] (rows=1 width=12) + <-Map 42 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_647] + Group By Operator [GBY_639] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_697] (rows=155 width=4) + Select Operator [SEL_625] (rows=1515 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_693] + Please refer to the previous Select Operator [SEL_615] <-Reducer 5 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_732] - Group By Operator [GBY_731] (rows=1 width=8) + PARTITION_ONLY_SHUFFLE [RS_680] + Group By Operator [GBY_679] (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_577] (rows=1352994 width=8) - Conds:RS_18._col2=RS_694._col0(Inner) - <-Map 59 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_694] + Conds:RS_18._col2=RS_671._col0(Inner) + <-Map 51 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_671] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_693] + Please refer to the previous Select Operator [SEL_670] <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_18] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_576] (rows=1842898 width=0) - Conds:RS_15._col0=RS_658._col0(Inner),Output:["_col2"] - <-Map 50 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_658] + Conds:RS_15._col0=RS_622._col0(Inner),Output:["_col2"] + <-Map 42 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_622] PartitionCols:_col0 - Select Operator [SEL_650] (rows=1515 width=4) + Select Operator [SEL_614] (rows=1515 width=4) Output:["_col0"] - Filter Operator [FIL_642] (rows=1515 width=12) + Filter Operator [FIL_606] (rows=1515 width=12) predicate:((t_hour = 8) and (t_minute >= 30)) Please refer to the previous TableScan [TS_6] <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_15] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_575] (rows=56928540 width=4) - Conds:RS_730._col1=RS_608._col0(Inner),Output:["_col0","_col2"] + Conds:RS_658._col1=RS_661._col0(Inner),Output:["_col0","_col2"] <-Map 13 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_608] + SHUFFLE [RS_661] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_607] + Please refer to the previous Select Operator [SEL_660] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_730] + SHUFFLE [RS_658] PartitionCols:_col1 - Select Operator [SEL_729] (rows=501695814 width=11) + Select Operator [SEL_657] (rows=501695814 width=11) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_728] (rows=501695814 width=11) - predicate:((ss_hdemo_sk BETWEEN DynamicValue(RS_13_household_demographics_hd_demo_sk_min) AND DynamicValue(RS_13_household_demographics_hd_demo_sk_max) and in_bloom_filter(ss_hdemo_sk, DynamicValue(RS_13_household_demographics_hd_demo_sk_bloom_filter))) and (ss_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(ss_sold_time_sk, DynamicValue(RS_16_time_dim_t_time_sk_bloom_filter))) and (ss_store_sk BETWEEN DynamicValue(RS_19_store_s_store_sk_min) AND DynamicValue(RS_19_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_19_store_s_store_sk_bloom_filter))) and ss_hdemo_sk is not null and ss_sold_time_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_656] (rows=501695814 width=11) + predicate:((ss_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(ss_sold_time_sk, DynamicValue(RS_16_time_dim_t_time_sk_bloom_filter))) and ss_hdemo_sk is not null and ss_sold_time_sk is not null and ss_store_sk is not null) TableScan [TS_0] (rows=575995635 width=11) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_time_sk","ss_hdemo_sk","ss_store_sk"] - <-Reducer 14 [BROADCAST_EDGE] vectorized - BROADCAST [RS_641] - Group By Operator [GBY_640] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 13 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_632] - Group By Operator [GBY_624] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_609] (rows=817 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_607] - <-Reducer 51 [BROADCAST_EDGE] vectorized - BROADCAST [RS_691] - Group By Operator [GBY_690] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 50 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_682] - Group By Operator [GBY_674] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_659] (rows=1515 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_650] - <-Reducer 60 [BROADCAST_EDGE] vectorized - BROADCAST [RS_727] - Group By Operator [GBY_726] (rows=1 width=12) + <-Reducer 43 [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 59 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_718] - Group By Operator [GBY_710] (rows=1 width=12) + <-Map 42 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_646] + Group By Operator [GBY_638] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_695] (rows=155 width=4) + Select Operator [SEL_623] (rows=1515 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_693] - <-Reducer 43 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_798] - Group By Operator [GBY_797] (rows=1 width=8) + Please refer to the previous Select Operator [SEL_614] + <-Reducer 37 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_722] + Group By Operator [GBY_721] (rows=1 width=8) Output:["_col0"],aggregations:["count(VALUE._col0)"] - <-Reducer 42 [CUSTOM_SIMPLE_EDGE] + <-Reducer 36 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_179] Group By Operator [GBY_178] (rows=1 width=8) Output:["_col0"],aggregations:["count()"] Merge Join Operator [MERGEJOIN_595] (rows=1352994 width=8) - Conds:RS_174._col2=RS_706._col0(Inner) - <-Map 59 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_706] + Conds:RS_174._col2=RS_677._col0(Inner) + <-Map 51 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_677] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_693] - <-Reducer 41 [SIMPLE_EDGE] + Please refer to the previous Select Operator [SEL_670] + <-Reducer 35 [SIMPLE_EDGE] SHUFFLE [RS_174] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_594] (rows=1842898 width=0) - Conds:RS_171._col0=RS_670._col0(Inner),Output:["_col2"] - <-Map 50 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_670] + Conds:RS_171._col0=RS_634._col0(Inner),Output:["_col2"] + <-Map 42 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_634] PartitionCols:_col0 - Select Operator [SEL_656] (rows=1515 width=4) + Select Operator [SEL_620] (rows=1515 width=4) Output:["_col0"] - Filter Operator [FIL_648] (rows=1515 width=12) + Filter Operator [FIL_612] (rows=1515 width=12) predicate:((t_hour = 9) and (t_minute >= 30)) Please refer to the previous TableScan [TS_6] - <-Reducer 40 [SIMPLE_EDGE] + <-Reducer 34 [SIMPLE_EDGE] SHUFFLE [RS_171] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_593] (rows=56928540 width=4) - Conds:RS_796._col1=RS_620._col0(Inner),Output:["_col0","_col2"] + Conds:RS_720._col1=RS_667._col0(Inner),Output:["_col0","_col2"] <-Map 13 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_620] + SHUFFLE [RS_667] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_607] - <-Map 73 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_796] + Please refer to the previous Select Operator [SEL_660] + <-Map 57 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_720] PartitionCols:_col1 - Select Operator [SEL_795] (rows=501695814 width=11) + Select Operator [SEL_719] (rows=501695814 width=11) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_794] (rows=501695814 width=11) - predicate:((ss_hdemo_sk BETWEEN DynamicValue(RS_169_household_demographics_hd_demo_sk_min) AND DynamicValue(RS_169_household_demographics_hd_demo_sk_max) and in_bloom_filter(ss_hdemo_sk, DynamicValue(RS_169_household_demographics_hd_demo_sk_bloom_filter))) and (ss_sold_time_sk BETWEEN DynamicValue(RS_172_time_dim_t_time_sk_min) AND DynamicValue(RS_172_time_dim_t_time_sk_max) and in_bloom_filter(ss_sold_time_sk, DynamicValue(RS_172_time_dim_t_time_sk_bloom_filter))) and (ss_store_sk BETWEEN DynamicValue(RS_175_store_s_store_sk_min) AND DynamicValue(RS_175_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_175_store_s_store_sk_bloom_filter))) and ss_hdemo_sk is not null and ss_sold_time_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_718] (rows=501695814 width=11) + predicate:((ss_sold_time_sk BETWEEN DynamicValue(RS_172_time_dim_t_time_sk_min) AND DynamicValue(RS_172_time_dim_t_time_sk_max) and in_bloom_filter(ss_sold_time_sk, DynamicValue(RS_172_time_dim_t_time_sk_bloom_filter))) and ss_hdemo_sk is not null and ss_sold_time_sk is not null and ss_store_sk is not null) TableScan [TS_156] (rows=575995635 width=11) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_time_sk","ss_hdemo_sk","ss_store_sk"] - <-Reducer 44 [BROADCAST_EDGE] vectorized - BROADCAST [RS_789] - Group By Operator [GBY_788] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 13 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_638] - Group By Operator [GBY_630] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_621] (rows=817 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_607] - <-Reducer 57 [BROADCAST_EDGE] vectorized - BROADCAST [RS_791] - Group By Operator [GBY_790] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 50 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_688] - Group By Operator [GBY_680] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_671] (rows=1515 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_656] - <-Reducer 66 [BROADCAST_EDGE] vectorized - BROADCAST [RS_793] - Group By Operator [GBY_792] (rows=1 width=12) + <-Reducer 49 [BROADCAST_EDGE] vectorized + BROADCAST [RS_717] + Group By Operator [GBY_716] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 59 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_724] - Group By Operator [GBY_716] (rows=1 width=12) + <-Map 42 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_652] + Group By Operator [GBY_644] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_707] (rows=155 width=4) + Select Operator [SEL_635] (rows=1515 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_693] - <-Reducer 48 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_809] - Group By Operator [GBY_808] (rows=1 width=8) + Please refer to the previous Select Operator [SEL_620] + <-Reducer 41 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_729] + Group By Operator [GBY_728] (rows=1 width=8) Output:["_col0"],aggregations:["count(VALUE._col0)"] - <-Reducer 47 [CUSTOM_SIMPLE_EDGE] + <-Reducer 40 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_205] Group By Operator [GBY_204] (rows=1 width=8) Output:["_col0"],aggregations:["count()"] Merge Join Operator [MERGEJOIN_598] (rows=1352994 width=8) - Conds:RS_200._col2=RS_708._col0(Inner) - <-Map 59 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_708] + Conds:RS_200._col2=RS_678._col0(Inner) + <-Map 51 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_678] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_693] - <-Reducer 46 [SIMPLE_EDGE] + Please refer to the previous Select Operator [SEL_670] + <-Reducer 39 [SIMPLE_EDGE] SHUFFLE [RS_200] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_597] (rows=1842898 width=0) - Conds:RS_197._col0=RS_672._col0(Inner),Output:["_col2"] - <-Map 50 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_672] + Conds:RS_197._col0=RS_636._col0(Inner),Output:["_col2"] + <-Map 42 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_636] PartitionCols:_col0 - Select Operator [SEL_657] (rows=1515 width=4) + Select Operator [SEL_621] (rows=1515 width=4) Output:["_col0"] - Filter Operator [FIL_649] (rows=1515 width=12) + Filter Operator [FIL_613] (rows=1515 width=12) predicate:((t_hour = 9) and (t_minute < 30)) Please refer to the previous TableScan [TS_6] - <-Reducer 45 [SIMPLE_EDGE] + <-Reducer 38 [SIMPLE_EDGE] SHUFFLE [RS_197] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_596] (rows=56928540 width=4) - Conds:RS_807._col1=RS_622._col0(Inner),Output:["_col0","_col2"] + Conds:RS_727._col1=RS_668._col0(Inner),Output:["_col0","_col2"] <-Map 13 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_622] + SHUFFLE [RS_668] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_607] - <-Map 74 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_807] + Please refer to the previous Select Operator [SEL_660] + <-Map 58 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_727] PartitionCols:_col1 - Select Operator [SEL_806] (rows=501695814 width=11) + Select Operator [SEL_726] (rows=501695814 width=11) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_805] (rows=501695814 width=11) - predicate:((ss_hdemo_sk BETWEEN DynamicValue(RS_195_household_demographics_hd_demo_sk_min) AND DynamicValue(RS_195_household_demographics_hd_demo_sk_max) and in_bloom_filter(ss_hdemo_sk, DynamicValue(RS_195_household_demographics_hd_demo_sk_bloom_filter))) and (ss_sold_time_sk BETWEEN DynamicValue(RS_198_time_dim_t_time_sk_min) AND DynamicValue(RS_198_time_dim_t_time_sk_max) and in_bloom_filter(ss_sold_time_sk, DynamicValue(RS_198_time_dim_t_time_sk_bloom_filter))) and (ss_store_sk BETWEEN DynamicValue(RS_201_store_s_store_sk_min) AND DynamicValue(RS_201_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_201_store_s_store_sk_bloom_filter))) and ss_hdemo_sk is not null and ss_sold_time_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_725] (rows=501695814 width=11) + predicate:((ss_sold_time_sk BETWEEN DynamicValue(RS_198_time_dim_t_time_sk_min) AND DynamicValue(RS_198_time_dim_t_time_sk_max) and in_bloom_filter(ss_sold_time_sk, DynamicValue(RS_198_time_dim_t_time_sk_bloom_filter))) and ss_hdemo_sk is not null and ss_sold_time_sk is not null and ss_store_sk is not null) TableScan [TS_182] (rows=575995635 width=11) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_time_sk","ss_hdemo_sk","ss_store_sk"] - <-Reducer 49 [BROADCAST_EDGE] vectorized - BROADCAST [RS_800] - Group By Operator [GBY_799] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 13 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_639] - Group By Operator [GBY_631] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_623] (rows=817 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_607] - <-Reducer 58 [BROADCAST_EDGE] vectorized - BROADCAST [RS_802] - Group By Operator [GBY_801] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 50 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_689] - Group By Operator [GBY_681] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_673] (rows=1515 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_657] - <-Reducer 67 [BROADCAST_EDGE] vectorized - BROADCAST [RS_804] - Group By Operator [GBY_803] (rows=1 width=12) + <-Reducer 50 [BROADCAST_EDGE] vectorized + BROADCAST [RS_724] + Group By Operator [GBY_723] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 59 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_725] - Group By Operator [GBY_717] (rows=1 width=12) + <-Map 42 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_653] + Group By Operator [GBY_645] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_709] (rows=155 width=4) + Select Operator [SEL_637] (rows=1515 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_693] + Please refer to the previous Select Operator [SEL_621] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query89.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query89.q.out index 673050eee7..3049fec95c 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query89.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query89.q.out @@ -65,42 +65,41 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 11 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) -Reducer 11 <- Map 10 (CUSTOM_SIMPLE_EDGE) +Map 1 <- Reducer 10 (BROADCAST_EDGE) +Reducer 10 <- Map 9 (CUSTOM_SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) -Reducer 3 <- Map 10 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 12 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 3 <- Map 9 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 4 <- Map 11 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) -Reducer 9 <- Map 8 (CUSTOM_SIMPLE_EDGE) Stage-0 Fetch Operator limit:-1 Stage-1 Reducer 7 vectorized - File Output Operator [FS_115] - Limit [LIM_114] (rows=100 width=801) + File Output Operator [FS_110] + Limit [LIM_109] (rows=100 width=801) Number of rows:100 - Select Operator [SEL_113] (rows=4804228 width=801) + Select Operator [SEL_108] (rows=4804228 width=801) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] <-Reducer 6 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_112] - Select Operator [SEL_111] (rows=4804228 width=801) + SHUFFLE [RS_107] + Select Operator [SEL_106] (rows=4804228 width=801) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8"] - Filter Operator [FIL_110] (rows=4804228 width=689) + Filter Operator [FIL_105] (rows=4804228 width=689) predicate:CASE WHEN ((avg_window_0 <> 0)) THEN (((abs((_col6 - avg_window_0)) / avg_window_0) > 0.1)) ELSE (null) END - Select Operator [SEL_109] (rows=9608456 width=577) + Select Operator [SEL_104] (rows=9608456 width=577) Output:["avg_window_0","_col0","_col1","_col2","_col3","_col4","_col5","_col6"] - PTF Operator [PTF_108] (rows=9608456 width=577) + PTF Operator [PTF_103] (rows=9608456 width=577) Function definitions:[{},{"name:":"windowingtablefunction","order by:":"_col2 ASC NULLS FIRST, _col0 ASC NULLS FIRST, _col4 ASC NULLS FIRST, _col5 ASC NULLS FIRST","partition by:":"_col2, _col0, _col4, _col5"}] - Select Operator [SEL_107] (rows=9608456 width=577) + Select Operator [SEL_102] (rows=9608456 width=577) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] <-Reducer 5 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_106] + SHUFFLE [RS_101] PartitionCols:_col2, _col0, _col4, _col5 - Group By Operator [GBY_105] (rows=9608456 width=577) + Group By Operator [GBY_100] (rows=9608456 width=577) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4, KEY._col5 <-Reducer 4 [SIMPLE_EDGE] SHUFFLE [RS_22] @@ -108,11 +107,11 @@ Stage-0 Group By Operator [GBY_21] (rows=27308180 width=577) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"],aggregations:["sum(_col3)"],keys:_col5, _col6, _col7, _col9, _col11, _col12 Merge Join Operator [MERGEJOIN_83] (rows=27308180 width=480) - Conds:RS_17._col2=RS_104._col0(Inner),Output:["_col3","_col5","_col6","_col7","_col9","_col11","_col12"] - <-Map 12 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_104] + Conds:RS_17._col2=RS_99._col0(Inner),Output:["_col3","_col5","_col6","_col7","_col9","_col11","_col12"] + <-Map 11 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_99] PartitionCols:_col0 - Select Operator [SEL_103] (rows=1704 width=183) + Select Operator [SEL_98] (rows=1704 width=183) Output:["_col0","_col1","_col2"] TableScan [TS_9] (rows=1704 width=183) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_store_name","s_company_name"] @@ -120,13 +119,13 @@ Stage-0 SHUFFLE [RS_17] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_82] (rows=27308180 width=301) - Conds:RS_14._col0=RS_94._col0(Inner),Output:["_col2","_col3","_col5","_col6","_col7","_col9"] - <-Map 10 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_94] + Conds:RS_14._col0=RS_86._col0(Inner),Output:["_col2","_col3","_col5","_col6","_col7","_col9"] + <-Map 9 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_86] PartitionCols:_col0 - Select Operator [SEL_93] (rows=652 width=8) + Select Operator [SEL_85] (rows=652 width=8) Output:["_col0","_col1"] - Filter Operator [FIL_92] (rows=652 width=12) + Filter Operator [FIL_84] (rows=652 width=12) predicate:(d_year = 2000) TableScan [TS_6] (rows=73049 width=12) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] @@ -134,45 +133,34 @@ Stage-0 SHUFFLE [RS_14] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_81] (rows=76480702 width=364) - Conds:RS_102._col1=RS_86._col0(Inner),Output:["_col0","_col2","_col3","_col5","_col6","_col7"] - <-Map 8 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_86] - PartitionCols:_col0 - Select Operator [SEL_85] (rows=6988 width=286) - Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_84] (rows=6988 width=286) - predicate:((((i_category) IN ('Home', 'Books', 'Electronics') and (i_class) IN ('wallpaper', 'parenting', 'musical')) or ((i_category) IN ('Shoes', 'Jewelry', 'Men') and (i_class) IN ('womens', 'birdal', 'pants'))) and (i_category) IN ('Home', 'Books', 'Electronics', 'Shoes', 'Jewelry', 'Men') and (i_class) IN ('wallpaper', 'parenting', 'musical', 'womens', 'birdal', 'pants')) - TableScan [TS_3] (rows=462000 width=286) - default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_brand","i_class","i_category"] + Conds:RS_94._col1=RS_97._col0(Inner),Output:["_col0","_col2","_col3","_col5","_col6","_col7"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_102] + SHUFFLE [RS_94] PartitionCols:_col1 - Select Operator [SEL_101] (rows=525329897 width=118) + Select Operator [SEL_93] (rows=525329897 width=118) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_100] (rows=525329897 width=118) - predicate:((ss_item_sk BETWEEN DynamicValue(RS_12_item_i_item_sk_min) AND DynamicValue(RS_12_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_12_item_i_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_15_date_dim_d_date_sk_min) AND DynamicValue(RS_15_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_15_date_dim_d_date_sk_bloom_filter))) and ss_sold_date_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_92] (rows=525329897 width=118) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_15_date_dim_d_date_sk_min) AND DynamicValue(RS_15_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_15_date_dim_d_date_sk_bloom_filter))) and ss_sold_date_sk is not null and ss_store_sk is not null) TableScan [TS_0] (rows=575995635 width=118) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_store_sk","ss_sales_price"] - <-Reducer 11 [BROADCAST_EDGE] vectorized - BROADCAST [RS_99] - Group By Operator [GBY_98] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 10 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_97] - Group By Operator [GBY_96] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_95] (rows=652 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_93] - <-Reducer 9 [BROADCAST_EDGE] vectorized + <-Reducer 10 [BROADCAST_EDGE] vectorized BROADCAST [RS_91] Group By Operator [GBY_90] (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_89] + <-Map 9 [CUSTOM_SIMPLE_EDGE] vectorized + SHUFFLE [RS_89] Group By Operator [GBY_88] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_87] (rows=6988 width=4) + Select Operator [SEL_87] (rows=652 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_85] + <-Map 8 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_97] + PartitionCols:_col0 + Select Operator [SEL_96] (rows=6988 width=286) + Output:["_col0","_col1","_col2","_col3"] + Filter Operator [FIL_95] (rows=6988 width=286) + predicate:((((i_category) IN ('Home', 'Books', 'Electronics') and (i_class) IN ('wallpaper', 'parenting', 'musical')) or ((i_category) IN ('Shoes', 'Jewelry', 'Men') and (i_class) IN ('womens', 'birdal', 'pants'))) and (i_category) IN ('Home', 'Books', 'Electronics', 'Shoes', 'Jewelry', 'Men') and (i_class) IN ('wallpaper', 'parenting', 'musical', 'womens', 'birdal', 'pants')) + TableScan [TS_3] (rows=462000 width=286) + default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_brand","i_class","i_category"] 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 f902607983..7be103d67b 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 @@ -54,34 +54,27 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 16 (BROADCAST_EDGE), Reducer 19 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) -Map 21 <- Reducer 14 (BROADCAST_EDGE), Reducer 17 (BROADCAST_EDGE), Reducer 20 (BROADCAST_EDGE) -Reducer 10 <- Map 21 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) -Reducer 11 <- Map 15 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE) -Reducer 12 <- Map 18 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE) -Reducer 13 <- Reducer 12 (CUSTOM_SIMPLE_EDGE) -Reducer 14 <- Map 8 (CUSTOM_SIMPLE_EDGE) -Reducer 16 <- Map 15 (CUSTOM_SIMPLE_EDGE) -Reducer 17 <- Map 15 (CUSTOM_SIMPLE_EDGE) -Reducer 19 <- Map 18 (CUSTOM_SIMPLE_EDGE) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) -Reducer 20 <- Map 18 (CUSTOM_SIMPLE_EDGE) -Reducer 3 <- Map 15 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 18 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Map 1 <- Reducer 14 (BROADCAST_EDGE) +Reducer 10 <- Reducer 9 (CUSTOM_SIMPLE_EDGE) +Reducer 14 <- Map 13 (CUSTOM_SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 11 (SIMPLE_EDGE) +Reducer 3 <- Map 12 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 4 <- Map 13 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (CUSTOM_SIMPLE_EDGE) -Reducer 6 <- Reducer 13 (CUSTOM_SIMPLE_EDGE), Reducer 5 (CUSTOM_SIMPLE_EDGE) +Reducer 6 <- Reducer 10 (CUSTOM_SIMPLE_EDGE), Reducer 5 (CUSTOM_SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) -Reducer 9 <- Map 8 (CUSTOM_SIMPLE_EDGE) +Reducer 8 <- Map 12 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 9 <- Map 13 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) Stage-0 Fetch Operator limit:100 Stage-1 Reducer 7 vectorized - File Output Operator [FS_209] - Limit [LIM_208] (rows=1 width=112) + File Output Operator [FS_180] + Limit [LIM_179] (rows=1 width=112) Number of rows:100 - Select Operator [SEL_207] (rows=1 width=112) + Select Operator [SEL_178] (rows=1 width=112) Output:["_col0"] <-Reducer 6 [SIMPLE_EDGE] SHUFFLE [RS_56] @@ -89,171 +82,102 @@ Stage-0 Output:["_col0"] Merge Join Operator [MERGEJOIN_152] (rows=1 width=16) Conds:(Inner),Output:["_col0","_col1"] - <-Reducer 13 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_206] - Group By Operator [GBY_205] (rows=1 width=8) + <-Reducer 10 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_177] + Group By Operator [GBY_176] (rows=1 width=8) Output:["_col0"],aggregations:["count(VALUE._col0)"] - <-Reducer 12 [CUSTOM_SIMPLE_EDGE] + <-Reducer 9 [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] + Conds:RS_44._col1=RS_157._col0(Inner) + <-Map 13 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_157] PartitionCols:_col0 - Select Operator [SEL_180] (rows=655 width=4) + Select Operator [SEL_154] (rows=655 width=4) Output:["_col0"] - Filter Operator [FIL_179] (rows=655 width=8) + Filter Operator [FIL_153] (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] + <-Reducer 8 [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] + Conds:RS_41._col0=RS_173._col0(Inner),Output:["_col1"] + <-Map 12 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_173] PartitionCols:_col0 - Select Operator [SEL_168] (rows=9095 width=4) + Select Operator [SEL_171] (rows=9095 width=4) Output:["_col0"] - Filter Operator [FIL_166] (rows=9095 width=8) + Filter Operator [FIL_169] (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] + <-Reducer 2 [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] + Merge Join Operator [MERGEJOIN_146] (rows=15977923 width=7) + Conds:RS_164._col2=RS_167._col0(Inner),Output:["_col0","_col1"] + <-Map 1 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_164] PartitionCols:_col2 - Select Operator [SEL_203] (rows=143895111 width=11) + Select Operator [SEL_163] (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) + Filter Operator [FIL_162] (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_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 14 [BROADCAST_EDGE] vectorized - BROADCAST [RS_197] - Group By Operator [GBY_196] (rows=1 width=12) + BROADCAST [RS_161] + Group By Operator [GBY_160] (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) + <-Map 13 [CUSTOM_SIMPLE_EDGE] vectorized + SHUFFLE [RS_159] + Group By Operator [GBY_158] (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) + Select Operator [SEL_156] (rows=655 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] + <-Map 11 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_167] + PartitionCols:_col0 + Select Operator [SEL_166] (rows=511 width=4) + Output:["_col0"] + Filter Operator [FIL_165] (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"] <-Reducer 5 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_195] - Group By Operator [GBY_194] (rows=1 width=8) + PARTITION_ONLY_SHUFFLE [RS_175] + Group By Operator [GBY_174] (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] + Conds:RS_18._col1=RS_155._col0(Inner) + <-Map 13 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_155] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_180] + Please refer to the previous Select Operator [SEL_154] <-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] + Conds:RS_15._col0=RS_172._col0(Inner),Output:["_col1"] + <-Map 12 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_172] PartitionCols:_col0 - Select Operator [SEL_167] (rows=9095 width=4) + Select Operator [SEL_170] (rows=9095 width=4) Output:["_col0"] - Filter Operator [FIL_165] (rows=9095 width=8) + Filter Operator [FIL_168] (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] + Please refer to the previous Merge Join Operator [MERGEJOIN_146] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query92.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query92.q.out index da5a94e126..4cf1a7fc22 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query92.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query92.q.out @@ -67,35 +67,33 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 15 (BROADCAST_EDGE), Reducer 8 (BROADCAST_EDGE) -Map 13 <- Reducer 12 (BROADCAST_EDGE), Reducer 15 (BROADCAST_EDGE), Reducer 6 (BROADCAST_EDGE) -Reducer 10 <- Reducer 9 (SIMPLE_EDGE) -Reducer 11 <- Map 14 (SIMPLE_EDGE), Reducer 10 (ONE_TO_ONE_EDGE) -Reducer 12 <- Map 7 (CUSTOM_SIMPLE_EDGE) -Reducer 15 <- Map 14 (CUSTOM_SIMPLE_EDGE) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) -Reducer 3 <- Reducer 11 (ONE_TO_ONE_EDGE), Reducer 2 (SIMPLE_EDGE) +Map 1 <- Reducer 10 (BROADCAST_EDGE) +Map 11 <- Reducer 13 (BROADCAST_EDGE) +Reducer 10 <- Reducer 9 (CUSTOM_SIMPLE_EDGE) +Reducer 13 <- Map 12 (CUSTOM_SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) +Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 9 (ONE_TO_ONE_EDGE) Reducer 4 <- Reducer 3 (CUSTOM_SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) -Reducer 6 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) -Reducer 8 <- Map 7 (CUSTOM_SIMPLE_EDGE) -Reducer 9 <- Map 13 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) +Reducer 7 <- Map 11 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) +Reducer 8 <- Reducer 7 (SIMPLE_EDGE) +Reducer 9 <- Map 12 (SIMPLE_EDGE), Reducer 8 (ONE_TO_ONE_EDGE) Stage-0 Fetch Operator limit:-1 Stage-1 Reducer 5 vectorized - File Output Operator [FS_147] - Limit [LIM_146] (rows=1 width=224) + File Output Operator [FS_136] + Limit [LIM_135] (rows=1 width=224) Number of rows:100 - Select Operator [SEL_145] (rows=1 width=224) + Select Operator [SEL_134] (rows=1 width=224) Output:["_col0"] <-Reducer 4 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_144] - Select Operator [SEL_143] (rows=1 width=224) + SHUFFLE [RS_133] + Select Operator [SEL_132] (rows=1 width=224) Output:["_col1"] - Group By Operator [GBY_142] (rows=1 width=112) + Group By Operator [GBY_131] (rows=1 width=112) Output:["_col0"],aggregations:["sum(VALUE._col0)"] <-Reducer 3 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_36] @@ -107,115 +105,90 @@ Stage-0 predicate:(_col2 > _col5) Merge Join Operator [MERGEJOIN_107] (rows=7434 width=112) Conds:RS_30._col1=RS_31._col2(Inner),Output:["_col2","_col5"] - <-Reducer 2 [SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_30] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_104] (rows=15995224 width=115) - Conds:RS_131._col0=RS_110._col0(Inner),Output:["_col1","_col2"] - <-Map 7 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_110] - PartitionCols:_col0 - Select Operator [SEL_109] (rows=8116 width=4) - Output:["_col0"] - Filter Operator [FIL_108] (rows=8116 width=98) - predicate:CAST( d_date AS TIMESTAMP) BETWEEN TIMESTAMP'1998-03-18 00:00:00' AND TIMESTAMP'1998-06-16 00:00:00' - TableScan [TS_3] (rows=73049 width=98) - default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"] - <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_131] - PartitionCols:_col0 - Select Operator [SEL_130] (rows=143966864 width=119) - Output:["_col0","_col1","_col2"] - Filter Operator [FIL_129] (rows=143966864 width=119) - predicate:((ws_item_sk BETWEEN DynamicValue(RS_24_item_i_item_sk_min) AND DynamicValue(RS_24_item_i_item_sk_max) and in_bloom_filter(ws_item_sk, DynamicValue(RS_24_item_i_item_sk_bloom_filter))) and (ws_sold_date_sk BETWEEN DynamicValue(RS_28_date_dim_d_date_sk_min) AND DynamicValue(RS_28_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_28_date_dim_d_date_sk_bloom_filter))) 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_item_sk","ws_ext_discount_amt"] - <-Reducer 15 [BROADCAST_EDGE] vectorized - BROADCAST [RS_127] - Group By Operator [GBY_126] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 14 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_125] - Group By Operator [GBY_124] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_123] (rows=669 width=4) - Output:["_col0"] - Select Operator [SEL_121] (rows=669 width=4) - Output:["_col0"] - Filter Operator [FIL_120] (rows=669 width=7) - predicate:(i_manufact_id = 269) - TableScan [TS_20] (rows=462000 width=7) - default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_manufact_id"] - <-Reducer 8 [BROADCAST_EDGE] vectorized - BROADCAST [RS_119] - Group By Operator [GBY_118] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 7 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_116] - Group By Operator [GBY_114] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_111] (rows=8116 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_109] - <-Reducer 11 [ONE_TO_ONE_EDGE] + <-Reducer 9 [ONE_TO_ONE_EDGE] FORWARD [RS_31] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_106] (rows=97 width=116) - Conds:RS_141._col0=RS_122._col0(Inner),Output:["_col1","_col2"] - <-Map 14 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_122] + Conds:RS_125._col0=RS_114._col0(Inner),Output:["_col1","_col2"] + <-Map 12 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_114] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_121] - <-Reducer 10 [ONE_TO_ONE_EDGE] vectorized - FORWARD [RS_141] + Select Operator [SEL_113] (rows=669 width=4) + Output:["_col0"] + Filter Operator [FIL_112] (rows=669 width=7) + predicate:(i_manufact_id = 269) + TableScan [TS_20] (rows=462000 width=7) + default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_manufact_id"] + <-Reducer 8 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_125] PartitionCols:_col0 - Select Operator [SEL_140] (rows=6951 width=116) + Select Operator [SEL_124] (rows=6951 width=116) Output:["_col0","_col1"] - Group By Operator [GBY_139] (rows=6951 width=124) + Group By Operator [GBY_123] (rows=6951 width=124) Output:["_col0","_col1","_col2"],aggregations:["sum(VALUE._col0)","count(VALUE._col1)"],keys:KEY._col0 - <-Reducer 9 [SIMPLE_EDGE] + <-Reducer 7 [SIMPLE_EDGE] SHUFFLE [RS_17] PartitionCols:_col0 Group By Operator [GBY_16] (rows=55608 width=124) Output:["_col0","_col1","_col2"],aggregations:["sum(_col2)","count(_col2)"],keys:_col1 Merge Join Operator [MERGEJOIN_105] (rows=15995224 width=115) - Conds:RS_138._col0=RS_112._col0(Inner),Output:["_col1","_col2"] - <-Map 7 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_112] + Conds:RS_122._col0=RS_111._col0(Inner),Output:["_col1","_col2"] + <-Map 6 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_111] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_109] - <-Map 13 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_138] + Select Operator [SEL_109] (rows=8116 width=4) + Output:["_col0"] + Filter Operator [FIL_108] (rows=8116 width=98) + predicate:CAST( d_date AS TIMESTAMP) BETWEEN TIMESTAMP'1998-03-18 00:00:00' AND TIMESTAMP'1998-06-16 00:00:00' + TableScan [TS_3] (rows=73049 width=98) + default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"] + <-Map 11 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_122] PartitionCols:_col0 - Select Operator [SEL_137] (rows=143966864 width=119) + Select Operator [SEL_121] (rows=143966864 width=119) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_136] (rows=143966864 width=119) - predicate:((ws_item_sk BETWEEN DynamicValue(RS_24_item_i_item_sk_min) AND DynamicValue(RS_24_item_i_item_sk_max) and in_bloom_filter(ws_item_sk, DynamicValue(RS_24_item_i_item_sk_bloom_filter))) and (ws_item_sk BETWEEN DynamicValue(RS_30_web_sales_ws_item_sk_min) AND DynamicValue(RS_30_web_sales_ws_item_sk_max) and in_bloom_filter(ws_item_sk, DynamicValue(RS_30_web_sales_ws_item_sk_bloom_filter))) and (ws_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(ws_sold_date_sk, DynamicValue(RS_13_date_dim_d_date_sk_bloom_filter))) and ws_sold_date_sk is not null) + Filter Operator [FIL_120] (rows=143966864 width=119) + predicate:((ws_item_sk BETWEEN DynamicValue(RS_24_item_i_item_sk_min) AND DynamicValue(RS_24_item_i_item_sk_max) and in_bloom_filter(ws_item_sk, DynamicValue(RS_24_item_i_item_sk_bloom_filter))) and ws_sold_date_sk is not null) TableScan [TS_6] (rows=144002668 width=119) default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_item_sk","ws_ext_discount_amt"] - <-Reducer 15 [BROADCAST_EDGE] vectorized - BROADCAST [RS_128] - Please refer to the previous Group By Operator [GBY_126] - <-Reducer 12 [BROADCAST_EDGE] vectorized - BROADCAST [RS_133] - Group By Operator [GBY_132] (rows=1 width=12) + <-Reducer 13 [BROADCAST_EDGE] vectorized + BROADCAST [RS_119] + Group By Operator [GBY_118] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 7 [CUSTOM_SIMPLE_EDGE] vectorized + <-Map 12 [CUSTOM_SIMPLE_EDGE] vectorized SHUFFLE [RS_117] - Group By Operator [GBY_115] (rows=1 width=12) + Group By Operator [GBY_116] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_113] (rows=8116 width=4) + Select Operator [SEL_115] (rows=669 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_109] - <-Reducer 6 [BROADCAST_EDGE] vectorized - BROADCAST [RS_135] - Group By Operator [GBY_134] (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_94] - Group By Operator [GBY_93] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_92] (rows=15995224 width=8) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_104] + Please refer to the previous Select Operator [SEL_113] + <-Reducer 2 [SIMPLE_EDGE] + SHUFFLE [RS_30] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_104] (rows=15995224 width=115) + Conds:RS_130._col0=RS_110._col0(Inner),Output:["_col1","_col2"] + <-Map 6 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_110] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_109] + <-Map 1 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_130] + PartitionCols:_col0 + Select Operator [SEL_129] (rows=143966864 width=119) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_128] (rows=143966864 width=119) + predicate:((ws_item_sk BETWEEN DynamicValue(RS_31_item_i_item_sk_min) AND DynamicValue(RS_31_item_i_item_sk_max) and in_bloom_filter(ws_item_sk, DynamicValue(RS_31_item_i_item_sk_bloom_filter))) 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_item_sk","ws_ext_discount_amt"] + <-Reducer 10 [BROADCAST_EDGE] vectorized + BROADCAST [RS_127] + Group By Operator [GBY_126] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Reducer 9 [CUSTOM_SIMPLE_EDGE] + FORWARD [RS_68] + Group By Operator [GBY_67] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_66] (rows=97 width=8) + Output:["_col0"] + Please refer to the previous Merge Join Operator [MERGEJOIN_106] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query93.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query93.q.out index 2d9ea2eb76..3c45d4389c 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query93.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query93.q.out @@ -43,27 +43,26 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 9 <- Reducer 6 (BROADCAST_EDGE), Reducer 7 (BROADCAST_EDGE) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) -Reducer 3 <- Map 9 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Map 8 <- Reducer 6 (BROADCAST_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) +Reducer 3 <- Map 8 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) -Reducer 7 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) Stage-0 Fetch Operator limit:100 Stage-1 Reducer 5 vectorized - File Output Operator [FS_81] - Limit [LIM_80] (rows=100 width=112) + File Output Operator [FS_79] + Limit [LIM_78] (rows=100 width=112) Number of rows:100 - Select Operator [SEL_79] (rows=38308 width=112) + Select Operator [SEL_77] (rows=38308 width=112) Output:["_col0","_col1"] <-Reducer 4 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_78] - Group By Operator [GBY_77] (rows=38308 width=112) + SHUFFLE [RS_76] + Group By Operator [GBY_75] (rows=38308 width=112) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_17] @@ -73,7 +72,7 @@ Stage-0 Select Operator [SEL_14] (rows=15586502 width=3) Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_63] (rows=15586502 width=3) - Conds:RS_11._col0, _col2=RS_76._col0, _col2(Inner),Output:["_col3","_col6","_col8","_col9"] + Conds:RS_11._col0, _col2=RS_74._col0, _col2(Inner),Output:["_col3","_col6","_col8","_col9"] <-Reducer 2 [SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_11] PartitionCols:_col0, _col2 @@ -88,7 +87,7 @@ Stage-0 predicate:sr_reason_sk is not null TableScan [TS_0] (rows=57591150 width=15) default@store_returns,store_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["sr_item_sk","sr_reason_sk","sr_ticket_number","sr_return_quantity"] - <-Map 8 [SIMPLE_EDGE] vectorized + <-Map 7 [SIMPLE_EDGE] vectorized SHUFFLE [RS_69] PartitionCols:_col0 Select Operator [SEL_68] (rows=1 width=4) @@ -97,30 +96,19 @@ Stage-0 predicate:(r_reason_desc = 'Did not like the warranty') TableScan [TS_3] (rows=72 width=101) default@reason,reason,Tbl:COMPLETE,Col:COMPLETE,Output:["r_reason_sk","r_reason_desc"] - <-Map 9 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_76] + <-Map 8 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_74] PartitionCols:_col0, _col2 - Select Operator [SEL_75] (rows=575995635 width=122) + Select Operator [SEL_73] (rows=575995635 width=122) Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_74] (rows=575995635 width=122) - predicate:((ss_item_sk BETWEEN DynamicValue(RS_11_store_returns_sr_item_sk_min) AND DynamicValue(RS_11_store_returns_sr_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_11_store_returns_sr_item_sk_bloom_filter))) and (ss_ticket_number BETWEEN DynamicValue(RS_11_store_returns_sr_ticket_number_min) AND DynamicValue(RS_11_store_returns_sr_ticket_number_max) and in_bloom_filter(ss_ticket_number, DynamicValue(RS_11_store_returns_sr_ticket_number_bloom_filter)))) + Filter Operator [FIL_72] (rows=575995635 width=122) + predicate:(in_bloom_filter(ss_ticket_number, DynamicValue(RS_11_store_returns_sr_ticket_number_bloom_filter)) and ss_ticket_number BETWEEN DynamicValue(RS_11_store_returns_sr_ticket_number_min) AND DynamicValue(RS_11_store_returns_sr_ticket_number_max)) TableScan [TS_6] (rows=575995635 width=122) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_item_sk","ss_customer_sk","ss_ticket_number","ss_quantity","ss_sales_price"] <-Reducer 6 [BROADCAST_EDGE] vectorized BROADCAST [RS_71] Group By Operator [GBY_70] (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_54] - Group By Operator [GBY_53] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_52] (rows=1522298 width=4) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_62] - <-Reducer 7 [BROADCAST_EDGE] vectorized - BROADCAST [RS_73] - Group By Operator [GBY_72] (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_59] Group By Operator [GBY_58] (rows=1 width=12) diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query94.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query94.q.out index 8c813d84ee..7290441713 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query94.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query94.q.out @@ -69,17 +69,15 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 12 (BROADCAST_EDGE), Reducer 14 (BROADCAST_EDGE), Reducer 16 (BROADCAST_EDGE) -Map 17 <- Reducer 10 (BROADCAST_EDGE) +Map 1 <- Reducer 13 (BROADCAST_EDGE) +Map 15 <- Reducer 10 (BROADCAST_EDGE) Reducer 10 <- Reducer 4 (CUSTOM_SIMPLE_EDGE) -Reducer 12 <- Map 11 (CUSTOM_SIMPLE_EDGE) -Reducer 14 <- Map 13 (CUSTOM_SIMPLE_EDGE) -Reducer 16 <- Map 15 (CUSTOM_SIMPLE_EDGE) +Reducer 13 <- Map 12 (CUSTOM_SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 11 (SIMPLE_EDGE) -Reducer 3 <- Map 13 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 15 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Map 17 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) -Reducer 6 <- Map 18 (SIMPLE_EDGE), Reducer 5 (ONE_TO_ONE_EDGE) +Reducer 3 <- Map 12 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 4 <- Map 14 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 5 <- Map 15 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) +Reducer 6 <- Map 16 (SIMPLE_EDGE), Reducer 5 (ONE_TO_ONE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) Reducer 8 <- Reducer 7 (CUSTOM_SIMPLE_EDGE) Reducer 9 <- Reducer 8 (SIMPLE_EDGE) @@ -89,22 +87,22 @@ Stage-0 limit:-1 Stage-1 Reducer 9 vectorized - File Output Operator [FS_169] - Limit [LIM_168] (rows=1 width=240) + File Output Operator [FS_159] + Limit [LIM_158] (rows=1 width=240) Number of rows:100 - Select Operator [SEL_167] (rows=1 width=240) + Select Operator [SEL_157] (rows=1 width=240) Output:["_col0","_col1","_col2"] <-Reducer 8 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_166] - Select Operator [SEL_165] (rows=1 width=240) + SHUFFLE [RS_156] + Select Operator [SEL_155] (rows=1 width=240) Output:["_col1","_col2","_col3"] - Group By Operator [GBY_164] (rows=1 width=232) + Group By Operator [GBY_154] (rows=1 width=232) Output:["_col0","_col1","_col2"],aggregations:["count(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)"] <-Reducer 7 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_163] - Group By Operator [GBY_162] (rows=1 width=232) + PARTITION_ONLY_SHUFFLE [RS_153] + Group By Operator [GBY_152] (rows=1 width=232) Output:["_col0","_col1","_col2"],aggregations:["count(_col0)","sum(_col1)","sum(_col2)"] - Group By Operator [GBY_161] (rows=2511437 width=228) + Group By Operator [GBY_151] (rows=2511437 width=228) Output:["_col0","_col1","_col2"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)"],keys:KEY._col0 <-Reducer 6 [SIMPLE_EDGE] SHUFFLE [RS_69] @@ -116,11 +114,11 @@ Stage-0 Filter Operator [FIL_36] (rows=5022875 width=230) predicate:_col14 is null Merge Join Operator [MERGEJOIN_125] (rows=14054072 width=230) - Conds:RS_33._col4=RS_160._col0(Left Outer),Output:["_col4","_col5","_col6","_col14"] - <-Map 18 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_160] + Conds:RS_33._col4=RS_150._col0(Left Outer),Output:["_col4","_col5","_col6","_col14"] + <-Map 16 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_150] PartitionCols:_col0 - Select Operator [SEL_159] (rows=14398467 width=8) + Select Operator [SEL_149] (rows=14398467 width=8) Output:["_col0","_col1"] TableScan [TS_25] (rows=14398467 width=4) default@web_returns,wr1,Tbl:COMPLETE,Col:COMPLETE,Output:["wr_order_number"] @@ -130,18 +128,18 @@ Stage-0 Select Operator [SEL_32] (rows=5022875 width=231) Output:["_col4","_col5","_col6"] Merge Join Operator [MERGEJOIN_124] (rows=5022875 width=235) - Conds:RS_29._col4=RS_158._col0(Left Semi),Output:["_col3","_col4","_col5","_col6","_col14"],residual filter predicates:{(_col3 <> _col14)} + Conds:RS_29._col4=RS_148._col0(Left Semi),Output:["_col3","_col4","_col5","_col6","_col14"],residual filter predicates:{(_col3 <> _col14)} <-Reducer 4 [SIMPLE_EDGE] SHUFFLE [RS_29] PartitionCols:_col4 Merge Join Operator [MERGEJOIN_123] (rows=5022875 width=231) - Conds:RS_18._col2=RS_144._col0(Inner),Output:["_col3","_col4","_col5","_col6"] - <-Map 15 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_144] + Conds:RS_18._col2=RS_142._col0(Inner),Output:["_col3","_col4","_col5","_col6"] + <-Map 14 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_142] PartitionCols:_col0 - Select Operator [SEL_143] (rows=12 width=91) + Select Operator [SEL_141] (rows=12 width=91) Output:["_col0"] - Filter Operator [FIL_142] (rows=12 width=92) + Filter Operator [FIL_140] (rows=12 width=92) predicate:(web_company_name = 'pri') TableScan [TS_9] (rows=84 width=92) default@web_site,web_site,Tbl:COMPLETE,Col:COMPLETE,Output:["web_site_sk","web_company_name"] @@ -149,13 +147,13 @@ Stage-0 SHUFFLE [RS_18] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_122] (rows=15673790 width=235) - Conds:RS_15._col1=RS_136._col0(Inner),Output:["_col2","_col3","_col4","_col5","_col6"] - <-Map 13 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_136] + Conds:RS_15._col1=RS_128._col0(Inner),Output:["_col2","_col3","_col4","_col5","_col6"] + <-Map 12 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_128] PartitionCols:_col0 - Select Operator [SEL_135] (rows=784314 width=90) + Select Operator [SEL_127] (rows=784314 width=90) Output:["_col0"] - Filter Operator [FIL_134] (rows=784314 width=90) + Filter Operator [FIL_126] (rows=784314 width=90) predicate:(ca_state = 'TX') TableScan [TS_6] (rows=40000000 width=90) default@customer_address,customer_address,Tbl:COMPLETE,Col:COMPLETE,Output:["ca_address_sk","ca_state"] @@ -163,72 +161,50 @@ Stage-0 SHUFFLE [RS_15] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_121] (rows=15987241 width=239) - Conds:RS_152._col0=RS_128._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6"] - <-Map 11 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_128] - PartitionCols:_col0 - Select Operator [SEL_127] (rows=8116 width=98) - Output:["_col0"] - Filter Operator [FIL_126] (rows=8116 width=98) - predicate:CAST( d_date AS TIMESTAMP) BETWEEN TIMESTAMP'1999-05-01 00:00:00' AND TIMESTAMP'1999-06-30 00:00:00' - TableScan [TS_3] (rows=73049 width=98) - default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"] + Conds:RS_136._col0=RS_139._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_152] + SHUFFLE [RS_136] PartitionCols:_col0 - Select Operator [SEL_151] (rows=143895019 width=243) + Select Operator [SEL_135] (rows=143895019 width=243) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] - Filter Operator [FIL_150] (rows=143895019 width=243) - predicate:((ws_ship_addr_sk BETWEEN DynamicValue(RS_16_customer_address_ca_address_sk_min) AND DynamicValue(RS_16_customer_address_ca_address_sk_max) and in_bloom_filter(ws_ship_addr_sk, DynamicValue(RS_16_customer_address_ca_address_sk_bloom_filter))) and (ws_ship_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(ws_ship_date_sk, DynamicValue(RS_13_date_dim_d_date_sk_bloom_filter))) and (ws_web_site_sk BETWEEN DynamicValue(RS_19_web_site_web_site_sk_min) AND DynamicValue(RS_19_web_site_web_site_sk_max) and in_bloom_filter(ws_web_site_sk, DynamicValue(RS_19_web_site_web_site_sk_bloom_filter))) and ws_ship_addr_sk is not null and ws_ship_date_sk is not null and ws_web_site_sk is not null) + Filter Operator [FIL_134] (rows=143895019 width=243) + predicate:((ws_ship_addr_sk BETWEEN DynamicValue(RS_16_customer_address_ca_address_sk_min) AND DynamicValue(RS_16_customer_address_ca_address_sk_max) and in_bloom_filter(ws_ship_addr_sk, DynamicValue(RS_16_customer_address_ca_address_sk_bloom_filter))) and ws_ship_addr_sk is not null and ws_ship_date_sk is not null and ws_web_site_sk is not null) TableScan [TS_0] (rows=144002668 width=243) default@web_sales,ws1,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_ship_date_sk","ws_ship_addr_sk","ws_web_site_sk","ws_warehouse_sk","ws_order_number","ws_ext_ship_cost","ws_net_profit"] - <-Reducer 12 [BROADCAST_EDGE] vectorized + <-Reducer 13 [BROADCAST_EDGE] vectorized BROADCAST [RS_133] Group By Operator [GBY_132] (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 + <-Map 12 [CUSTOM_SIMPLE_EDGE] vectorized SHUFFLE [RS_131] Group By Operator [GBY_130] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_129] (rows=8116 width=4) + Select Operator [SEL_129] (rows=784314 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_127] - <-Reducer 14 [BROADCAST_EDGE] vectorized - BROADCAST [RS_141] - Group By Operator [GBY_140] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 13 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_139] - Group By Operator [GBY_138] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_137] (rows=784314 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_135] - <-Reducer 16 [BROADCAST_EDGE] vectorized - BROADCAST [RS_149] - Group By Operator [GBY_148] (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_147] - Group By Operator [GBY_146] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_145] (rows=12 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_143] - <-Map 17 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_158] + <-Map 11 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_139] + PartitionCols:_col0 + Select Operator [SEL_138] (rows=8116 width=98) + Output:["_col0"] + Filter Operator [FIL_137] (rows=8116 width=98) + predicate:CAST( d_date AS TIMESTAMP) BETWEEN TIMESTAMP'1999-05-01 00:00:00' AND TIMESTAMP'1999-06-30 00:00:00' + TableScan [TS_3] (rows=73049 width=98) + default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"] + <-Map 15 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_148] PartitionCols:_col0 - Group By Operator [GBY_157] (rows=143966743 width=7) + Group By Operator [GBY_147] (rows=143966743 width=7) Output:["_col0","_col1"],keys:_col0, _col1 - Select Operator [SEL_156] (rows=143966743 width=7) + Select Operator [SEL_146] (rows=143966743 width=7) Output:["_col0","_col1"] - Filter Operator [FIL_155] (rows=143966743 width=7) + Filter Operator [FIL_145] (rows=143966743 width=7) predicate:((ws_order_number BETWEEN DynamicValue(RS_29_ws1_ws_order_number_min) AND DynamicValue(RS_29_ws1_ws_order_number_max) and in_bloom_filter(ws_order_number, DynamicValue(RS_29_ws1_ws_order_number_bloom_filter))) and ws_warehouse_sk is not null) TableScan [TS_22] (rows=144002668 width=7) default@web_sales,ws2,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_warehouse_sk","ws_order_number"] <-Reducer 10 [BROADCAST_EDGE] vectorized - BROADCAST [RS_154] - Group By Operator [GBY_153] (rows=1 width=12) + BROADCAST [RS_144] + Group By Operator [GBY_143] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Reducer 4 [CUSTOM_SIMPLE_EDGE] SHUFFLE [RS_111] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query95.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query95.q.out index fd709f99dd..d8afc72d7b 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query95.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query95.q.out @@ -75,20 +75,18 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 12 (BROADCAST_EDGE), Reducer 14 (BROADCAST_EDGE), Reducer 16 (BROADCAST_EDGE) -Map 17 <- Reducer 10 (BROADCAST_EDGE) -Map 20 <- Reducer 10 (BROADCAST_EDGE) +Map 1 <- Reducer 13 (BROADCAST_EDGE) +Map 15 <- Reducer 10 (BROADCAST_EDGE) +Map 18 <- Reducer 10 (BROADCAST_EDGE) Reducer 10 <- Reducer 4 (CUSTOM_SIMPLE_EDGE) -Reducer 12 <- Map 11 (CUSTOM_SIMPLE_EDGE) -Reducer 14 <- Map 13 (CUSTOM_SIMPLE_EDGE) -Reducer 16 <- Map 15 (CUSTOM_SIMPLE_EDGE) -Reducer 18 <- Map 17 (SIMPLE_EDGE), Map 20 (SIMPLE_EDGE) -Reducer 19 <- Map 21 (SIMPLE_EDGE), Reducer 18 (ONE_TO_ONE_EDGE) +Reducer 13 <- Map 12 (CUSTOM_SIMPLE_EDGE) +Reducer 16 <- Map 15 (SIMPLE_EDGE), Map 18 (SIMPLE_EDGE) +Reducer 17 <- Map 19 (SIMPLE_EDGE), Reducer 16 (ONE_TO_ONE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 11 (SIMPLE_EDGE) -Reducer 3 <- Map 13 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 15 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Reducer 18 (ONE_TO_ONE_EDGE), Reducer 4 (SIMPLE_EDGE) -Reducer 6 <- Reducer 19 (ONE_TO_ONE_EDGE), Reducer 5 (ONE_TO_ONE_EDGE) +Reducer 3 <- Map 12 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 4 <- Map 14 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 5 <- Reducer 16 (ONE_TO_ONE_EDGE), Reducer 4 (SIMPLE_EDGE) +Reducer 6 <- Reducer 17 (ONE_TO_ONE_EDGE), Reducer 5 (ONE_TO_ONE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) Reducer 8 <- Reducer 7 (CUSTOM_SIMPLE_EDGE) Reducer 9 <- Reducer 8 (SIMPLE_EDGE) @@ -98,22 +96,22 @@ Stage-0 limit:-1 Stage-1 Reducer 9 vectorized - File Output Operator [FS_273] - Limit [LIM_272] (rows=1 width=240) + File Output Operator [FS_263] + Limit [LIM_262] (rows=1 width=240) Number of rows:100 - Select Operator [SEL_271] (rows=1 width=240) + Select Operator [SEL_261] (rows=1 width=240) Output:["_col0","_col1","_col2"] <-Reducer 8 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_270] - Select Operator [SEL_269] (rows=1 width=240) + SHUFFLE [RS_260] + Select Operator [SEL_259] (rows=1 width=240) Output:["_col1","_col2","_col3"] - Group By Operator [GBY_268] (rows=1 width=232) + Group By Operator [GBY_258] (rows=1 width=232) Output:["_col0","_col1","_col2"],aggregations:["count(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)"] <-Reducer 7 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_267] - Group By Operator [GBY_266] (rows=1 width=232) + PARTITION_ONLY_SHUFFLE [RS_257] + Group By Operator [GBY_256] (rows=1 width=232) Output:["_col0","_col1","_col2"],aggregations:["count(_col0)","sum(_col1)","sum(_col2)"] - Group By Operator [GBY_265] (rows=143895019 width=228) + Group By Operator [GBY_255] (rows=143895019 width=228) Output:["_col0","_col1","_col2"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)"],keys:KEY._col0 <-Reducer 6 [SIMPLE_EDGE] SHUFFLE [RS_101] @@ -122,14 +120,14 @@ Stage-0 Output:["_col0","_col2","_col3"],aggregations:["sum(_col4)","sum(_col5)"],keys:_col3 Merge Join Operator [MERGEJOIN_227] (rows=83469759007 width=227) Conds:RS_47._col3=RS_48._col0(Inner),Output:["_col3","_col4","_col5"] - <-Reducer 19 [ONE_TO_ONE_EDGE] + <-Reducer 17 [ONE_TO_ONE_EDGE] FORWARD [RS_48] PartitionCols:_col0 Select Operator [SEL_34] (rows=1384229738 width=4) Output:["_col0"] Merge Join Operator [MERGEJOIN_221] (rows=1384229738 width=4) - Conds:RS_31._col0=RS_264.wr_order_number(Inner),Output:["_col14"] - <-Reducer 18 [ONE_TO_ONE_EDGE] + Conds:RS_31._col0=RS_254.wr_order_number(Inner),Output:["_col14"] + <-Reducer 16 [ONE_TO_ONE_EDGE] FORWARD [RS_31] PartitionCols:_col0 Select Operator [SEL_29] (rows=1411940834 width=4) @@ -137,19 +135,19 @@ Stage-0 Filter Operator [FIL_28] (rows=1411940834 width=11) predicate:(_col0 <> _col2) Merge Join Operator [MERGEJOIN_220] (rows=1411940834 width=11) - Conds:RS_260._col1=RS_263._col1(Inner),Output:["_col0","_col1","_col2"] - <-Map 17 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_260] + Conds:RS_250._col1=RS_253._col1(Inner),Output:["_col0","_col1","_col2"] + <-Map 15 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_250] PartitionCols:_col1 - Select Operator [SEL_259] (rows=144002668 width=7) + Select Operator [SEL_249] (rows=144002668 width=7) Output:["_col0","_col1"] - Filter Operator [FIL_258] (rows=144002668 width=7) + Filter Operator [FIL_248] (rows=144002668 width=7) predicate:(in_bloom_filter(ws_order_number, DynamicValue(RS_44_ws1_ws_order_number_bloom_filter)) and ws_order_number BETWEEN DynamicValue(RS_44_ws1_ws_order_number_min) AND DynamicValue(RS_44_ws1_ws_order_number_max)) TableScan [TS_21] (rows=144002668 width=7) default@web_sales,ws1,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_warehouse_sk","ws_order_number"] <-Reducer 10 [BROADCAST_EDGE] vectorized - BROADCAST [RS_256] - Group By Operator [GBY_255] (rows=1 width=12) + BROADCAST [RS_246] + Group By Operator [GBY_245] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Reducer 4 [CUSTOM_SIMPLE_EDGE] SHUFFLE [RS_179] @@ -158,13 +156,13 @@ Stage-0 Select Operator [SEL_177] (rows=5022875 width=8) Output:["_col0"] Merge Join Operator [MERGEJOIN_224] (rows=5022875 width=227) - Conds:RS_41._col2=RS_246._col0(Inner),Output:["_col3","_col4","_col5"] - <-Map 15 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_246] + Conds:RS_41._col2=RS_244._col0(Inner),Output:["_col3","_col4","_col5"] + <-Map 14 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_244] PartitionCols:_col0 - Select Operator [SEL_245] (rows=12 width=4) + Select Operator [SEL_243] (rows=12 width=4) Output:["_col0"] - Filter Operator [FIL_244] (rows=12 width=92) + Filter Operator [FIL_242] (rows=12 width=92) predicate:(web_company_name = 'pri') TableScan [TS_9] (rows=84 width=92) default@web_site,web_site,Tbl:COMPLETE,Col:COMPLETE,Output:["web_site_sk","web_company_name"] @@ -172,13 +170,13 @@ Stage-0 SHUFFLE [RS_41] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_223] (rows=15673790 width=231) - Conds:RS_38._col1=RS_238._col0(Inner),Output:["_col2","_col3","_col4","_col5"] - <-Map 13 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_238] + Conds:RS_38._col1=RS_230._col0(Inner),Output:["_col2","_col3","_col4","_col5"] + <-Map 12 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_230] PartitionCols:_col0 - Select Operator [SEL_237] (rows=784314 width=4) + Select Operator [SEL_229] (rows=784314 width=4) Output:["_col0"] - Filter Operator [FIL_236] (rows=784314 width=90) + Filter Operator [FIL_228] (rows=784314 width=90) predicate:(ca_state = 'TX') TableScan [TS_6] (rows=40000000 width=90) default@customer_address,customer_address,Tbl:COMPLETE,Col:COMPLETE,Output:["ca_address_sk","ca_state"] @@ -186,72 +184,50 @@ Stage-0 SHUFFLE [RS_38] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_222] (rows=15987241 width=235) - Conds:RS_254._col0=RS_230._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5"] - <-Map 11 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_230] - PartitionCols:_col0 - Select Operator [SEL_229] (rows=8116 width=98) - Output:["_col0"] - Filter Operator [FIL_228] (rows=8116 width=98) - predicate:CAST( d_date AS TIMESTAMP) BETWEEN TIMESTAMP'1999-05-01 00:00:00' AND TIMESTAMP'1999-06-30 00:00:00' - TableScan [TS_3] (rows=73049 width=98) - default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"] + Conds:RS_238._col0=RS_241._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_254] + SHUFFLE [RS_238] PartitionCols:_col0 - Select Operator [SEL_253] (rows=143895019 width=239) + Select Operator [SEL_237] (rows=143895019 width=239) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] - Filter Operator [FIL_252] (rows=143895019 width=239) - predicate:((ws_ship_addr_sk BETWEEN DynamicValue(RS_39_customer_address_ca_address_sk_min) AND DynamicValue(RS_39_customer_address_ca_address_sk_max) and in_bloom_filter(ws_ship_addr_sk, DynamicValue(RS_39_customer_address_ca_address_sk_bloom_filter))) and (ws_ship_date_sk BETWEEN DynamicValue(RS_36_date_dim_d_date_sk_min) AND DynamicValue(RS_36_date_dim_d_date_sk_max) and in_bloom_filter(ws_ship_date_sk, DynamicValue(RS_36_date_dim_d_date_sk_bloom_filter))) and (ws_web_site_sk BETWEEN DynamicValue(RS_42_web_site_web_site_sk_min) AND DynamicValue(RS_42_web_site_web_site_sk_max) and in_bloom_filter(ws_web_site_sk, DynamicValue(RS_42_web_site_web_site_sk_bloom_filter))) and ws_ship_addr_sk is not null and ws_ship_date_sk is not null and ws_web_site_sk is not null) + Filter Operator [FIL_236] (rows=143895019 width=239) + predicate:((ws_ship_addr_sk BETWEEN DynamicValue(RS_39_customer_address_ca_address_sk_min) AND DynamicValue(RS_39_customer_address_ca_address_sk_max) and in_bloom_filter(ws_ship_addr_sk, DynamicValue(RS_39_customer_address_ca_address_sk_bloom_filter))) and ws_ship_addr_sk is not null and ws_ship_date_sk is not null and ws_web_site_sk is not null) TableScan [TS_0] (rows=144002668 width=239) default@web_sales,ws1,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_ship_date_sk","ws_ship_addr_sk","ws_web_site_sk","ws_order_number","ws_ext_ship_cost","ws_net_profit"] - <-Reducer 12 [BROADCAST_EDGE] vectorized + <-Reducer 13 [BROADCAST_EDGE] vectorized BROADCAST [RS_235] Group By Operator [GBY_234] (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 + <-Map 12 [CUSTOM_SIMPLE_EDGE] vectorized SHUFFLE [RS_233] Group By Operator [GBY_232] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_231] (rows=8116 width=4) + Select Operator [SEL_231] (rows=784314 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_229] - <-Reducer 14 [BROADCAST_EDGE] vectorized - BROADCAST [RS_243] - Group By Operator [GBY_242] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 13 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_241] - Group By Operator [GBY_240] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_239] (rows=784314 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_237] - <-Reducer 16 [BROADCAST_EDGE] vectorized - BROADCAST [RS_251] - Group By Operator [GBY_250] (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_249] - Group By Operator [GBY_248] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_247] (rows=12 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_245] - <-Map 20 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_263] + <-Map 11 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_241] + PartitionCols:_col0 + Select Operator [SEL_240] (rows=8116 width=98) + Output:["_col0"] + Filter Operator [FIL_239] (rows=8116 width=98) + predicate:CAST( d_date AS TIMESTAMP) BETWEEN TIMESTAMP'1999-05-01 00:00:00' AND TIMESTAMP'1999-06-30 00:00:00' + TableScan [TS_3] (rows=73049 width=98) + default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"] + <-Map 18 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_253] PartitionCols:_col1 - Select Operator [SEL_262] (rows=144002668 width=7) + Select Operator [SEL_252] (rows=144002668 width=7) Output:["_col0","_col1"] - Filter Operator [FIL_261] (rows=144002668 width=7) + Filter Operator [FIL_251] (rows=144002668 width=7) predicate:(in_bloom_filter(ws_order_number, DynamicValue(RS_44_ws1_ws_order_number_bloom_filter)) and ws_order_number BETWEEN DynamicValue(RS_44_ws1_ws_order_number_min) AND DynamicValue(RS_44_ws1_ws_order_number_max)) TableScan [TS_23] (rows=144002668 width=7) default@web_sales,ws2,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_warehouse_sk","ws_order_number"] <-Reducer 10 [BROADCAST_EDGE] vectorized - BROADCAST [RS_257] - Please refer to the previous Group By Operator [GBY_255] - <-Map 21 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_264] + BROADCAST [RS_247] + Please refer to the previous Group By Operator [GBY_245] + <-Map 19 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_254] PartitionCols:wr_order_number TableScan [TS_30] (rows=14398467 width=4) default@web_returns,web_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["wr_order_number"] @@ -260,7 +236,7 @@ Stage-0 PartitionCols:_col3 Merge Join Operator [MERGEJOIN_226] (rows=482885639 width=227) Conds:RS_44._col3=RS_45._col0(Inner),Output:["_col3","_col4","_col5"] - <-Reducer 18 [ONE_TO_ONE_EDGE] + <-Reducer 16 [ONE_TO_ONE_EDGE] FORWARD [RS_45] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_29] diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query96.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query96.q.out index 8942a90185..27c26aa886 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query96.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query96.q.out @@ -41,12 +41,10 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 10 (BROADCAST_EDGE), Reducer 12 (BROADCAST_EDGE), Reducer 8 (BROADCAST_EDGE) -Reducer 10 <- Map 9 (CUSTOM_SIMPLE_EDGE) -Reducer 12 <- Map 11 (CUSTOM_SIMPLE_EDGE) +Map 1 <- Reducer 8 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) Reducer 3 <- Map 9 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 11 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 4 <- Map 10 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (CUSTOM_SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) Reducer 8 <- Map 7 (CUSTOM_SIMPLE_EDGE) @@ -56,29 +54,29 @@ Stage-0 limit:-1 Stage-1 Reducer 6 vectorized - File Output Operator [FS_109] - Limit [LIM_108] (rows=1 width=16) + File Output Operator [FS_99] + Limit [LIM_98] (rows=1 width=16) Number of rows:100 - Select Operator [SEL_107] (rows=1 width=16) + Select Operator [SEL_97] (rows=1 width=16) Output:["_col0"] <-Reducer 5 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_106] - Select Operator [SEL_105] (rows=1 width=16) + SHUFFLE [RS_96] + Select Operator [SEL_95] (rows=1 width=16) Output:["_col1"] - Group By Operator [GBY_104] (rows=1 width=8) + Group By Operator [GBY_94] (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_76] (rows=1084713 width=8) - Conds:RS_18._col2=RS_95._col0(Inner) - <-Map 11 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_95] + Conds:RS_18._col2=RS_93._col0(Inner) + <-Map 10 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_93] PartitionCols:_col0 - Select Operator [SEL_94] (rows=155 width=4) + Select Operator [SEL_92] (rows=155 width=4) Output:["_col0"] - Filter Operator [FIL_93] (rows=155 width=92) + Filter Operator [FIL_91] (rows=155 width=92) predicate:(s_store_name = 'ese') TableScan [TS_9] (rows=1704 width=92) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_store_name"] @@ -86,13 +84,13 @@ Stage-0 SHUFFLE [RS_18] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_75] (rows=1477476 width=0) - Conds:RS_15._col1=RS_87._col0(Inner),Output:["_col2"] + Conds:RS_15._col1=RS_90._col0(Inner),Output:["_col2"] <-Map 9 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_87] + SHUFFLE [RS_90] PartitionCols:_col0 - Select Operator [SEL_86] (rows=655 width=4) + Select Operator [SEL_89] (rows=655 width=4) Output:["_col0"] - Filter Operator [FIL_85] (rows=655 width=8) + Filter Operator [FIL_88] (rows=655 width=8) predicate:(hd_dep_count = 5) TableScan [TS_6] (rows=7200 width=8) default@household_demographics,household_demographics,Tbl:COMPLETE,Col:COMPLETE,Output:["hd_demo_sk","hd_dep_count"] @@ -100,7 +98,7 @@ Stage-0 SHUFFLE [RS_15] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_74] (rows=16240953 width=0) - Conds:RS_103._col0=RS_79._col0(Inner),Output:["_col1","_col2"] + Conds:RS_87._col0=RS_79._col0(Inner),Output:["_col1","_col2"] <-Map 7 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_79] PartitionCols:_col0 @@ -111,36 +109,14 @@ Stage-0 TableScan [TS_3] (rows=86400 width=12) default@time_dim,time_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["t_time_sk","t_hour","t_minute"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_103] + SHUFFLE [RS_87] PartitionCols:_col0 - Select Operator [SEL_102] (rows=501695814 width=11) + Select Operator [SEL_86] (rows=501695814 width=11) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_101] (rows=501695814 width=11) - predicate:((ss_hdemo_sk BETWEEN DynamicValue(RS_16_household_demographics_hd_demo_sk_min) AND DynamicValue(RS_16_household_demographics_hd_demo_sk_max) and in_bloom_filter(ss_hdemo_sk, DynamicValue(RS_16_household_demographics_hd_demo_sk_bloom_filter))) and (ss_sold_time_sk BETWEEN DynamicValue(RS_13_time_dim_t_time_sk_min) AND DynamicValue(RS_13_time_dim_t_time_sk_max) and in_bloom_filter(ss_sold_time_sk, DynamicValue(RS_13_time_dim_t_time_sk_bloom_filter))) and (ss_store_sk BETWEEN DynamicValue(RS_19_store_s_store_sk_min) AND DynamicValue(RS_19_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_19_store_s_store_sk_bloom_filter))) and ss_hdemo_sk is not null and ss_sold_time_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_85] (rows=501695814 width=11) + predicate:((ss_sold_time_sk BETWEEN DynamicValue(RS_13_time_dim_t_time_sk_min) AND DynamicValue(RS_13_time_dim_t_time_sk_max) and in_bloom_filter(ss_sold_time_sk, DynamicValue(RS_13_time_dim_t_time_sk_bloom_filter))) and ss_hdemo_sk is not null and ss_sold_time_sk is not null and ss_store_sk is not null) TableScan [TS_0] (rows=575995635 width=11) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_time_sk","ss_hdemo_sk","ss_store_sk"] - <-Reducer 10 [BROADCAST_EDGE] vectorized - BROADCAST [RS_92] - Group By Operator [GBY_91] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 9 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_90] - Group By Operator [GBY_89] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_88] (rows=655 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_86] - <-Reducer 12 [BROADCAST_EDGE] vectorized - BROADCAST [RS_100] - Group By Operator [GBY_99] (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 - SHUFFLE [RS_98] - Group By Operator [GBY_97] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_96] (rows=155 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_94] <-Reducer 8 [BROADCAST_EDGE] vectorized BROADCAST [RS_84] Group By Operator [GBY_83] (rows=1 width=12) diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query98.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query98.q.out index 3ffc379cd9..d1e7d20e27 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query98.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query98.q.out @@ -71,8 +71,7 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 10 (BROADCAST_EDGE), Reducer 8 (BROADCAST_EDGE) -Reducer 10 <- Map 9 (CUSTOM_SIMPLE_EDGE) +Map 1 <- Reducer 8 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) Reducer 3 <- Map 9 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) @@ -85,21 +84,21 @@ Stage-0 limit:-1 Stage-1 Reducer 6 vectorized - File Output Operator [FS_84] - Select Operator [SEL_83] (rows=138600 width=701) + File Output Operator [FS_79] + Select Operator [SEL_78] (rows=138600 width=701) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] <-Reducer 5 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_82] - Select Operator [SEL_81] (rows=138600 width=801) + SHUFFLE [RS_77] + Select Operator [SEL_76] (rows=138600 width=801) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] - PTF Operator [PTF_80] (rows=138600 width=689) + PTF Operator [PTF_75] (rows=138600 width=689) Function definitions:[{},{"name:":"windowingtablefunction","order by:":"_col1 ASC NULLS FIRST","partition by:":"_col1"}] - Select Operator [SEL_79] (rows=138600 width=689) + Select Operator [SEL_74] (rows=138600 width=689) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] <-Reducer 4 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_78] + SHUFFLE [RS_73] PartitionCols:_col1 - Group By Operator [GBY_77] (rows=138600 width=689) + Group By Operator [GBY_72] (rows=138600 width=689) Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4 <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_17] @@ -107,13 +106,13 @@ Stage-0 Group By Operator [GBY_16] (rows=138600 width=689) Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["sum(_col2)"],keys:_col9, _col8, _col5, _col6, _col7 Merge Join Operator [MERGEJOIN_57] (rows=18334631 width=577) - Conds:RS_12._col1=RS_68._col0(Inner),Output:["_col2","_col5","_col6","_col7","_col8","_col9"] + Conds:RS_12._col1=RS_71._col0(Inner),Output:["_col2","_col5","_col6","_col7","_col8","_col9"] <-Map 9 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_68] + SHUFFLE [RS_71] PartitionCols:_col0 - Select Operator [SEL_67] (rows=138600 width=581) + Select Operator [SEL_70] (rows=138600 width=581) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] - Filter Operator [FIL_66] (rows=138600 width=581) + Filter Operator [FIL_69] (rows=138600 width=581) predicate:(i_category) IN ('Jewelry', 'Sports', 'Books') TableScan [TS_6] (rows=462000 width=581) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_item_id","i_item_desc","i_current_price","i_class","i_category"] @@ -121,7 +120,7 @@ Stage-0 SHUFFLE [RS_12] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_56] (rows=61115434 width=70) - Conds:RS_76._col0=RS_60._col0(Inner),Output:["_col1","_col2"] + Conds:RS_68._col0=RS_60._col0(Inner),Output:["_col1","_col2"] <-Map 7 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_60] PartitionCols:_col0 @@ -132,25 +131,14 @@ Stage-0 TableScan [TS_3] (rows=73049 width=98) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_76] + SHUFFLE [RS_68] PartitionCols:_col0 - Select Operator [SEL_75] (rows=550076554 width=114) + Select Operator [SEL_67] (rows=550076554 width=114) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_74] (rows=550076554 width=114) - predicate:((ss_item_sk BETWEEN DynamicValue(RS_13_item_i_item_sk_min) AND DynamicValue(RS_13_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_13_item_i_item_sk_bloom_filter))) and (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_sold_date_sk is not null) + Filter Operator [FIL_66] (rows=550076554 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_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_item_sk","ss_ext_sales_price"] - <-Reducer 10 [BROADCAST_EDGE] vectorized - BROADCAST [RS_73] - Group By Operator [GBY_72] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 9 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_71] - Group By Operator [GBY_70] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_69] (rows=138600 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_67] <-Reducer 8 [BROADCAST_EDGE] vectorized BROADCAST [RS_65] Group By Operator [GBY_64] (rows=1 width=12) diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query99.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query99.q.out index 9b8ebd20b2..7366b847e6 100644 --- a/ql/src/test/results/clientpositive/perf/tez/constraints/query99.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query99.q.out @@ -81,31 +81,30 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 11 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) -Reducer 11 <- Map 10 (CUSTOM_SIMPLE_EDGE) +Map 1 <- Reducer 10 (BROADCAST_EDGE) +Reducer 10 <- Map 9 (CUSTOM_SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) -Reducer 3 <- Map 10 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 12 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Map 13 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) +Reducer 3 <- Map 9 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 4 <- Map 11 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 5 <- Map 12 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) -Reducer 9 <- Map 8 (CUSTOM_SIMPLE_EDGE) Stage-0 Fetch Operator limit:-1 Stage-1 Reducer 7 vectorized - File Output Operator [FS_125] - Limit [LIM_124] (rows=100 width=590) + File Output Operator [FS_120] + Limit [LIM_119] (rows=100 width=590) Number of rows:100 - Select Operator [SEL_123] (rows=3869553 width=590) + Select Operator [SEL_118] (rows=3869553 width=590) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] <-Reducer 6 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_122] - Select Operator [SEL_121] (rows=3869553 width=590) + SHUFFLE [RS_117] + Select Operator [SEL_116] (rows=3869553 width=590) Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8"] - Group By Operator [GBY_120] (rows=3869553 width=406) + Group By Operator [GBY_115] (rows=3869553 width=406) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)","sum(VALUE._col3)","sum(VALUE._col4)"],keys:KEY._col0, KEY._col1, KEY._col2 <-Reducer 5 [SIMPLE_EDGE] SHUFFLE [RS_26] @@ -115,11 +114,11 @@ Stage-0 Top N Key Operator [TNK_53] (rows=15478212 width=386) keys:_col15, _col11, _col13,sort order:+++,top n:100 Merge Join Operator [MERGEJOIN_97] (rows=15478212 width=386) - Conds:RS_21._col3=RS_119._col0(Inner),Output:["_col4","_col5","_col6","_col7","_col8","_col11","_col13","_col15"] - <-Map 13 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_119] + Conds:RS_21._col3=RS_114._col0(Inner),Output:["_col4","_col5","_col6","_col7","_col8","_col11","_col13","_col15"] + <-Map 12 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_114] PartitionCols:_col0 - Select Operator [SEL_118] (rows=27 width=188) + Select Operator [SEL_113] (rows=27 width=188) Output:["_col0","_col1"] TableScan [TS_10] (rows=27 width=104) default@warehouse,warehouse,Tbl:COMPLETE,Col:COMPLETE,Output:["w_warehouse_sk","w_warehouse_name"] @@ -127,11 +126,11 @@ Stage-0 SHUFFLE [RS_21] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_96] (rows=15478212 width=205) - Conds:RS_18._col1=RS_117._col0(Inner),Output:["_col3","_col4","_col5","_col6","_col7","_col8","_col11","_col13"] - <-Map 12 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_117] + Conds:RS_18._col1=RS_112._col0(Inner),Output:["_col3","_col4","_col5","_col6","_col7","_col8","_col11","_col13"] + <-Map 11 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_112] PartitionCols:_col0 - Select Operator [SEL_116] (rows=60 width=102) + Select Operator [SEL_111] (rows=60 width=102) Output:["_col0","_col1"] TableScan [TS_8] (rows=60 width=102) default@call_center,call_center,Tbl:COMPLETE,Col:COMPLETE,Output:["cc_call_center_sk","cc_name"] @@ -139,11 +138,11 @@ Stage-0 SHUFFLE [RS_18] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_95] (rows=15478212 width=111) - Conds:RS_15._col2=RS_107._col0(Inner),Output:["_col1","_col3","_col4","_col5","_col6","_col7","_col8","_col11"] - <-Map 10 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_107] + Conds:RS_15._col2=RS_99._col0(Inner),Output:["_col1","_col3","_col4","_col5","_col6","_col7","_col8","_col11"] + <-Map 9 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_99] PartitionCols:_col0 - Select Operator [SEL_106] (rows=1 width=88) + Select Operator [SEL_98] (rows=1 width=88) Output:["_col0","_col1"] TableScan [TS_6] (rows=1 width=88) default@ship_mode,ship_mode,Tbl:COMPLETE,Col:COMPLETE,Output:["sm_ship_mode_sk","sm_type"] @@ -151,45 +150,34 @@ Stage-0 SHUFFLE [RS_15] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_94] (rows=46434637 width=31) - Conds:RS_115._col0=RS_100._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8"] - <-Map 8 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_100] - PartitionCols:_col0 - Select Operator [SEL_99] (rows=317 width=4) - Output:["_col0"] - Filter Operator [FIL_98] (rows=317 width=8) - predicate:d_month_seq BETWEEN 1212 AND 1223 - TableScan [TS_3] (rows=73049 width=8) - default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_month_seq"] + Conds:RS_107._col0=RS_110._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_115] + SHUFFLE [RS_107] PartitionCols:_col0 - Select Operator [SEL_114] (rows=282273729 width=35) + Select Operator [SEL_106] (rows=282273729 width=35) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8"] - Filter Operator [FIL_113] (rows=282273729 width=19) - predicate:((cs_ship_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(cs_ship_date_sk, DynamicValue(RS_13_date_dim_d_date_sk_bloom_filter))) and (cs_ship_mode_sk BETWEEN DynamicValue(RS_16_ship_mode_sm_ship_mode_sk_min) AND DynamicValue(RS_16_ship_mode_sm_ship_mode_sk_max) and in_bloom_filter(cs_ship_mode_sk, DynamicValue(RS_16_ship_mode_sm_ship_mode_sk_bloom_filter))) and cs_call_center_sk is not null and cs_ship_date_sk is not null and cs_ship_mode_sk is not null and cs_warehouse_sk is not null) + Filter Operator [FIL_105] (rows=282273729 width=19) + predicate:((cs_ship_mode_sk BETWEEN DynamicValue(RS_16_ship_mode_sm_ship_mode_sk_min) AND DynamicValue(RS_16_ship_mode_sm_ship_mode_sk_max) and in_bloom_filter(cs_ship_mode_sk, DynamicValue(RS_16_ship_mode_sm_ship_mode_sk_bloom_filter))) and cs_call_center_sk is not null and cs_ship_date_sk is not null and cs_ship_mode_sk is not null and cs_warehouse_sk is not null) TableScan [TS_0] (rows=287989836 width=19) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_ship_date_sk","cs_call_center_sk","cs_ship_mode_sk","cs_warehouse_sk"] - <-Reducer 11 [BROADCAST_EDGE] vectorized - BROADCAST [RS_112] - Group By Operator [GBY_111] (rows=1 width=12) + <-Reducer 10 [BROADCAST_EDGE] vectorized + BROADCAST [RS_104] + Group By Operator [GBY_103] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 10 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_110] - Group By Operator [GBY_109] (rows=1 width=12) + <-Map 9 [CUSTOM_SIMPLE_EDGE] vectorized + SHUFFLE [RS_102] + Group By Operator [GBY_101] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_108] (rows=1 width=4) + Select Operator [SEL_100] (rows=1 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_106] - <-Reducer 9 [BROADCAST_EDGE] vectorized - BROADCAST [RS_105] - Group By Operator [GBY_104] (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_103] - Group By Operator [GBY_102] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_101] (rows=317 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_99] + Please refer to the previous Select Operator [SEL_98] + <-Map 8 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_110] + PartitionCols:_col0 + Select Operator [SEL_109] (rows=317 width=4) + Output:["_col0"] + Filter Operator [FIL_108] (rows=317 width=8) + predicate:d_month_seq BETWEEN 1212 AND 1223 + TableScan [TS_3] (rows=73049 width=8) + default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_month_seq"] diff --git a/ql/src/test/results/clientpositive/perf/tez/query10.q.out b/ql/src/test/results/clientpositive/perf/tez/query10.q.out index d049b2f28b..bf5da6e21e 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query10.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query10.q.out @@ -133,24 +133,21 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 14 <- Reducer 11 (BROADCAST_EDGE), Reducer 17 (BROADCAST_EDGE) -Map 24 <- Reducer 10 (BROADCAST_EDGE), Reducer 20 (BROADCAST_EDGE) -Map 25 <- Reducer 23 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) +Map 13 <- Reducer 16 (BROADCAST_EDGE) +Map 21 <- Reducer 10 (BROADCAST_EDGE) +Map 22 <- Reducer 9 (BROADCAST_EDGE) Reducer 10 <- Reducer 4 (CUSTOM_SIMPLE_EDGE) -Reducer 11 <- Reducer 3 (CUSTOM_SIMPLE_EDGE) -Reducer 15 <- Map 14 (SIMPLE_EDGE), Map 16 (SIMPLE_EDGE) -Reducer 17 <- Map 16 (CUSTOM_SIMPLE_EDGE) -Reducer 18 <- Map 16 (SIMPLE_EDGE), Map 24 (SIMPLE_EDGE) -Reducer 19 <- Reducer 18 (SIMPLE_EDGE) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 12 (SIMPLE_EDGE) -Reducer 20 <- Map 16 (CUSTOM_SIMPLE_EDGE) -Reducer 21 <- Map 16 (SIMPLE_EDGE), Map 25 (SIMPLE_EDGE) -Reducer 22 <- Reducer 21 (SIMPLE_EDGE) -Reducer 23 <- Map 16 (CUSTOM_SIMPLE_EDGE) -Reducer 3 <- Map 13 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Reducer 15 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Reducer 19 (ONE_TO_ONE_EDGE), Reducer 4 (ONE_TO_ONE_EDGE) -Reducer 6 <- Reducer 22 (ONE_TO_ONE_EDGE), Reducer 5 (ONE_TO_ONE_EDGE) +Reducer 14 <- Map 13 (SIMPLE_EDGE), Map 15 (SIMPLE_EDGE) +Reducer 16 <- Map 15 (CUSTOM_SIMPLE_EDGE) +Reducer 17 <- Map 15 (SIMPLE_EDGE), Map 21 (SIMPLE_EDGE) +Reducer 18 <- Reducer 17 (SIMPLE_EDGE) +Reducer 19 <- Map 15 (SIMPLE_EDGE), Map 22 (SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 11 (SIMPLE_EDGE) +Reducer 20 <- Reducer 19 (SIMPLE_EDGE) +Reducer 3 <- Map 12 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 4 <- Reducer 14 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 5 <- Reducer 18 (ONE_TO_ONE_EDGE), Reducer 4 (ONE_TO_ONE_EDGE) +Reducer 6 <- Reducer 20 (ONE_TO_ONE_EDGE), Reducer 5 (ONE_TO_ONE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) Reducer 8 <- Reducer 7 (SIMPLE_EDGE) Reducer 9 <- Reducer 5 (CUSTOM_SIMPLE_EDGE) @@ -160,16 +157,16 @@ Stage-0 limit:100 Stage-1 Reducer 8 vectorized - File Output Operator [FS_237] - Limit [LIM_236] (rows=1 width=419) + File Output Operator [FS_225] + Limit [LIM_224] (rows=1 width=419) Number of rows:100 - Select Operator [SEL_235] (rows=1 width=419) + Select Operator [SEL_223] (rows=1 width=419) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13"] <-Reducer 7 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_234] - Select Operator [SEL_233] (rows=1 width=419) + SHUFFLE [RS_222] + Select Operator [SEL_221] (rows=1 width=419) Output:["_col0","_col1","_col2","_col3","_col4","_col6","_col8","_col10","_col12"] - Group By Operator [GBY_232] (rows=1 width=379) + Group By Operator [GBY_220] (rows=1 width=379) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4, KEY._col5, KEY._col6, KEY._col7 <-Reducer 6 [SIMPLE_EDGE] SHUFFLE [RS_67] @@ -183,23 +180,61 @@ Stage-0 Filter Operator [FIL_64] (rows=58 width=379) predicate:(_col15 is not null or _col17 is not null) Merge Join Operator [MERGEJOIN_181] (rows=58 width=379) - Conds:RS_61._col0=RS_231._col0(Left Outer),Output:["_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col15","_col17"] + Conds:RS_61._col0=RS_219._col0(Left Outer),Output:["_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col15","_col17"] <-Reducer 5 [ONE_TO_ONE_EDGE] PARTITION_ONLY_SHUFFLE [RS_61] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_180] (rows=58 width=379) - Conds:RS_58._col0=RS_221._col0(Left Outer),Output:["_col0","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col15"] + Conds:RS_58._col0=RS_211._col0(Left Outer),Output:["_col0","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col15"] <-Reducer 4 [ONE_TO_ONE_EDGE] FORWARD [RS_58] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_179] (rows=7792 width=375) Conds:RS_55._col0=RS_56._col0(Left Semi),Output:["_col0","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13"] + <-Reducer 14 [SIMPLE_EDGE] + SHUFFLE [RS_56] + PartitionCols:_col0 + Group By Operator [GBY_54] (rows=155827 width=2) + Output:["_col0"],keys:_col0 + Select Operator [SEL_18] (rows=57825495 width=2) + Output:["_col0"] + Merge Join Operator [MERGEJOIN_176] (rows=57825495 width=2) + Conds:RS_203._col0=RS_193._col0(Inner),Output:["_col1"] + <-Map 15 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_193] + PartitionCols:_col0 + Select Operator [SEL_192] (rows=201 width=12) + Output:["_col0"] + Filter Operator [FIL_191] (rows=201 width=12) + predicate:((d_year = 2002) and d_date_sk is not null and d_moy BETWEEN 4 AND 7) + TableScan [TS_12] (rows=73049 width=12) + default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] + <-Map 13 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_203] + PartitionCols:_col0 + Select Operator [SEL_202] (rows=525327388 width=7) + Output:["_col0","_col1"] + Filter Operator [FIL_201] (rows=525327388 width=7) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_16_date_dim_d_date_sk_min) AND DynamicValue(RS_16_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_16_date_dim_d_date_sk_bloom_filter))) and ss_customer_sk is not null and ss_sold_date_sk is not null) + TableScan [TS_9] (rows=575995635 width=7) + default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_customer_sk"] + <-Reducer 16 [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_198] + Group By Operator [GBY_197] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_194] (rows=201 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_192] <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_55] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_175] (rows=3914656 width=375) Conds:RS_50._col1=RS_190._col0(Inner),Output:["_col0","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13"] - <-Map 13 [SIMPLE_EDGE] vectorized + <-Map 12 [SIMPLE_EDGE] vectorized SHUFFLE [RS_190] PartitionCols:_col0 Select Operator [SEL_189] (rows=1861800 width=375) @@ -222,7 +257,7 @@ Stage-0 predicate:(c_current_addr_sk is not null and c_current_cdemo_sk is not null and c_customer_sk is not null) TableScan [TS_0] (rows=80000000 width=11) default@customer,c,Tbl:COMPLETE,Col:COMPLETE,Output:["c_customer_sk","c_current_cdemo_sk","c_current_addr_sk"] - <-Map 12 [SIMPLE_EDGE] vectorized + <-Map 11 [SIMPLE_EDGE] vectorized SHUFFLE [RS_187] PartitionCols:_col0 Select Operator [SEL_186] (rows=2000000 width=102) @@ -231,85 +266,36 @@ Stage-0 predicate:((ca_county) IN ('Walker County', 'Richland County', 'Gaines County', 'Douglas County', 'Dona Ana County') and ca_address_sk is not null) TableScan [TS_3] (rows=40000000 width=102) default@customer_address,ca,Tbl:COMPLETE,Col:COMPLETE,Output:["ca_address_sk","ca_county"] - <-Reducer 15 [SIMPLE_EDGE] - SHUFFLE [RS_56] - PartitionCols:_col0 - Group By Operator [GBY_54] (rows=155827 width=2) - Output:["_col0"],keys:_col0 - Select Operator [SEL_18] (rows=57825495 width=2) - Output:["_col0"] - Merge Join Operator [MERGEJOIN_176] (rows=57825495 width=2) - Conds:RS_211._col0=RS_193._col0(Inner),Output:["_col1"] - <-Map 16 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_193] - PartitionCols:_col0 - Select Operator [SEL_192] (rows=201 width=12) - Output:["_col0"] - Filter Operator [FIL_191] (rows=201 width=12) - predicate:((d_year = 2002) and d_date_sk is not null and d_moy BETWEEN 4 AND 7) - TableScan [TS_12] (rows=73049 width=12) - default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] - <-Map 14 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_211] - PartitionCols:_col0 - Select Operator [SEL_210] (rows=525327388 width=7) - Output:["_col0","_col1"] - Filter Operator [FIL_209] (rows=525327388 width=7) - predicate:((ss_customer_sk BETWEEN DynamicValue(RS_55_c_c_customer_sk_min) AND DynamicValue(RS_55_c_c_customer_sk_max) and in_bloom_filter(ss_customer_sk, DynamicValue(RS_55_c_c_customer_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_16_date_dim_d_date_sk_min) AND DynamicValue(RS_16_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_16_date_dim_d_date_sk_bloom_filter))) and ss_customer_sk is not null and ss_sold_date_sk is not null) - TableScan [TS_9] (rows=575995635 width=7) - default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_customer_sk"] - <-Reducer 11 [BROADCAST_EDGE] vectorized - BROADCAST [RS_208] - Group By Operator [GBY_207] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=3647763)"] - <-Reducer 3 [CUSTOM_SIMPLE_EDGE] - SHUFFLE [RS_136] - Group By Operator [GBY_135] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=3647763)"] - Select Operator [SEL_134] (rows=3914656 width=4) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_175] - <-Reducer 17 [BROADCAST_EDGE] vectorized - BROADCAST [RS_206] - Group By Operator [GBY_205] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 16 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_202] - Group By Operator [GBY_199] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_194] (rows=201 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_192] - <-Reducer 19 [ONE_TO_ONE_EDGE] vectorized - FORWARD [RS_221] + <-Reducer 18 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_211] PartitionCols:_col0 - Select Operator [SEL_220] (rows=155827 width=7) + Select Operator [SEL_210] (rows=155827 width=7) Output:["_col0","_col1"] - Group By Operator [GBY_219] (rows=155827 width=3) + Group By Operator [GBY_209] (rows=155827 width=3) Output:["_col0"],keys:KEY._col0 - <-Reducer 18 [SIMPLE_EDGE] + <-Reducer 17 [SIMPLE_EDGE] SHUFFLE [RS_30] PartitionCols:_col0 Group By Operator [GBY_29] (rows=155827 width=3) Output:["_col0"],keys:_col1 Merge Join Operator [MERGEJOIN_177] (rows=15843227 width=3) - Conds:RS_218._col0=RS_195._col0(Inner),Output:["_col1"] - <-Map 16 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_195] + Conds:RS_208._col0=RS_195._col0(Inner),Output:["_col1"] + <-Map 15 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_195] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_192] - <-Map 24 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_218] + <-Map 21 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_208] PartitionCols:_col0 - Select Operator [SEL_217] (rows=143930993 width=7) + Select Operator [SEL_207] (rows=143930993 width=7) Output:["_col0","_col1"] - Filter Operator [FIL_216] (rows=143930993 width=7) - predicate:((ws_bill_customer_sk BETWEEN DynamicValue(RS_58_c_c_customer_sk_min) AND DynamicValue(RS_58_c_c_customer_sk_max) and in_bloom_filter(ws_bill_customer_sk, DynamicValue(RS_58_c_c_customer_sk_bloom_filter))) and (ws_sold_date_sk BETWEEN DynamicValue(RS_26_date_dim_d_date_sk_min) AND DynamicValue(RS_26_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_26_date_dim_d_date_sk_bloom_filter))) and ws_bill_customer_sk is not null and ws_sold_date_sk is not null) + Filter Operator [FIL_206] (rows=143930993 width=7) + predicate:((ws_bill_customer_sk BETWEEN DynamicValue(RS_58_c_c_customer_sk_min) AND DynamicValue(RS_58_c_c_customer_sk_max) and in_bloom_filter(ws_bill_customer_sk, DynamicValue(RS_58_c_c_customer_sk_bloom_filter))) and ws_bill_customer_sk is not null and ws_sold_date_sk is not null) TableScan [TS_19] (rows=144002668 width=7) default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_bill_customer_sk"] <-Reducer 10 [BROADCAST_EDGE] vectorized - BROADCAST [RS_215] - Group By Operator [GBY_214] (rows=1 width=12) + BROADCAST [RS_205] + Group By Operator [GBY_204] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Reducer 4 [CUSTOM_SIMPLE_EDGE] FORWARD [RS_151] @@ -318,58 +304,36 @@ Stage-0 Select Operator [SEL_149] (rows=7792 width=4) Output:["_col0"] Please refer to the previous Merge Join Operator [MERGEJOIN_179] - <-Reducer 20 [BROADCAST_EDGE] vectorized - BROADCAST [RS_213] - Group By Operator [GBY_212] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 16 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_203] - Group By Operator [GBY_200] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_196] (rows=201 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_192] - <-Reducer 22 [ONE_TO_ONE_EDGE] vectorized - FORWARD [RS_231] + <-Reducer 20 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_219] PartitionCols:_col0 - Select Operator [SEL_230] (rows=154725 width=7) + Select Operator [SEL_218] (rows=154725 width=7) Output:["_col0","_col1"] - Group By Operator [GBY_229] (rows=154725 width=3) + Group By Operator [GBY_217] (rows=154725 width=3) Output:["_col0"],keys:KEY._col0 - <-Reducer 21 [SIMPLE_EDGE] + <-Reducer 19 [SIMPLE_EDGE] SHUFFLE [RS_44] PartitionCols:_col0 Group By Operator [GBY_43] (rows=154725 width=3) Output:["_col0"],keys:_col1 Merge Join Operator [MERGEJOIN_178] (rows=31162251 width=3) - Conds:RS_228._col0=RS_197._col0(Inner),Output:["_col1"] - <-Map 16 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_197] + Conds:RS_216._col0=RS_196._col0(Inner),Output:["_col1"] + <-Map 15 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_196] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_192] - <-Map 25 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_228] + <-Map 22 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_216] PartitionCols:_col0 - Select Operator [SEL_227] (rows=285115246 width=7) + Select Operator [SEL_215] (rows=285115246 width=7) Output:["_col0","_col1"] - Filter Operator [FIL_226] (rows=285115246 width=7) - predicate:((cs_ship_customer_sk BETWEEN DynamicValue(RS_61_c_c_customer_sk_min) AND DynamicValue(RS_61_c_c_customer_sk_max) and in_bloom_filter(cs_ship_customer_sk, DynamicValue(RS_61_c_c_customer_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_40_date_dim_d_date_sk_min) AND DynamicValue(RS_40_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_40_date_dim_d_date_sk_bloom_filter))) and cs_ship_customer_sk is not null and cs_sold_date_sk is not null) + Filter Operator [FIL_214] (rows=285115246 width=7) + predicate:((cs_ship_customer_sk BETWEEN DynamicValue(RS_61_c_c_customer_sk_min) AND DynamicValue(RS_61_c_c_customer_sk_max) and in_bloom_filter(cs_ship_customer_sk, DynamicValue(RS_61_c_c_customer_sk_bloom_filter))) and cs_ship_customer_sk is not null and cs_sold_date_sk is not null) TableScan [TS_33] (rows=287989836 width=7) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_ship_customer_sk"] - <-Reducer 23 [BROADCAST_EDGE] vectorized - BROADCAST [RS_223] - Group By Operator [GBY_222] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 16 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_204] - Group By Operator [GBY_201] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_198] (rows=201 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_192] <-Reducer 9 [BROADCAST_EDGE] vectorized - BROADCAST [RS_225] - Group By Operator [GBY_224] (rows=1 width=12) + BROADCAST [RS_213] + Group By Operator [GBY_212] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Reducer 5 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_166] diff --git a/ql/src/test/results/clientpositive/perf/tez/query12.q.out b/ql/src/test/results/clientpositive/perf/tez/query12.q.out index 75156be9fd..ccbd8c8b5c 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query12.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query12.q.out @@ -73,8 +73,7 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 10 (BROADCAST_EDGE), Reducer 8 (BROADCAST_EDGE) -Reducer 10 <- Map 9 (CUSTOM_SIMPLE_EDGE) +Map 1 <- Reducer 8 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) Reducer 3 <- Map 9 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) @@ -87,23 +86,23 @@ Stage-0 limit:-1 Stage-1 Reducer 6 vectorized - File Output Operator [FS_86] - Limit [LIM_85] (rows=100 width=802) + File Output Operator [FS_81] + Limit [LIM_80] (rows=100 width=802) Number of rows:100 - Select Operator [SEL_84] (rows=138600 width=801) + Select Operator [SEL_79] (rows=138600 width=801) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] <-Reducer 5 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_83] - Select Operator [SEL_82] (rows=138600 width=801) + SHUFFLE [RS_78] + Select Operator [SEL_77] (rows=138600 width=801) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] - PTF Operator [PTF_81] (rows=138600 width=689) + PTF Operator [PTF_76] (rows=138600 width=689) Function definitions:[{},{"name:":"windowingtablefunction","order by:":"_col1 ASC NULLS FIRST","partition by:":"_col1"}] - Select Operator [SEL_80] (rows=138600 width=689) + Select Operator [SEL_75] (rows=138600 width=689) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] <-Reducer 4 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_79] + SHUFFLE [RS_74] PartitionCols:_col1 - Group By Operator [GBY_78] (rows=138600 width=689) + Group By Operator [GBY_73] (rows=138600 width=689) Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4 <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_17] @@ -111,13 +110,13 @@ Stage-0 Group By Operator [GBY_16] (rows=138600 width=689) Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["sum(_col2)"],keys:_col10, _col9, _col6, _col7, _col8 Merge Join Operator [MERGEJOIN_58] (rows=4798568 width=689) - Conds:RS_12._col1=RS_69._col0(Inner),Output:["_col2","_col6","_col7","_col8","_col9","_col10"] + Conds:RS_12._col1=RS_72._col0(Inner),Output:["_col2","_col6","_col7","_col8","_col9","_col10"] <-Map 9 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_69] + SHUFFLE [RS_72] PartitionCols:_col0 - Select Operator [SEL_68] (rows=138600 width=581) + Select Operator [SEL_71] (rows=138600 width=581) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] - Filter Operator [FIL_67] (rows=138600 width=581) + Filter Operator [FIL_70] (rows=138600 width=581) predicate:((i_category) IN ('Jewelry', 'Sports', 'Books') and i_item_sk is not null) TableScan [TS_6] (rows=462000 width=581) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_item_id","i_item_desc","i_current_price","i_class","i_category"] @@ -125,7 +124,7 @@ Stage-0 SHUFFLE [RS_12] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_57] (rows=15995224 width=115) - Conds:RS_77._col0=RS_61._col0(Inner),Output:["_col1","_col2"] + Conds:RS_69._col0=RS_61._col0(Inner),Output:["_col1","_col2"] <-Map 7 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_61] PartitionCols:_col0 @@ -136,25 +135,14 @@ Stage-0 TableScan [TS_3] (rows=73049 width=98) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_77] + SHUFFLE [RS_69] PartitionCols:_col0 - Select Operator [SEL_76] (rows=143966864 width=119) + Select Operator [SEL_68] (rows=143966864 width=119) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_75] (rows=143966864 width=119) - predicate:((ws_item_sk BETWEEN DynamicValue(RS_13_item_i_item_sk_min) AND DynamicValue(RS_13_item_i_item_sk_max) and in_bloom_filter(ws_item_sk, DynamicValue(RS_13_item_i_item_sk_bloom_filter))) and (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_item_sk is not null and ws_sold_date_sk is not null) + Filter Operator [FIL_67] (rows=143966864 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_item_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_item_sk","ws_ext_sales_price"] - <-Reducer 10 [BROADCAST_EDGE] vectorized - BROADCAST [RS_74] - Group By Operator [GBY_73] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 9 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_72] - Group By Operator [GBY_71] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_70] (rows=138600 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_68] <-Reducer 8 [BROADCAST_EDGE] vectorized BROADCAST [RS_66] Group By Operator [GBY_65] (rows=1 width=12) diff --git a/ql/src/test/results/clientpositive/perf/tez/query13.q.out b/ql/src/test/results/clientpositive/perf/tez/query13.q.out index 0e02e9aaa1..08c9a75905 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query13.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query13.q.out @@ -115,16 +115,13 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 8 <- Reducer 10 (BROADCAST_EDGE), Reducer 12 (BROADCAST_EDGE), Reducer 14 (BROADCAST_EDGE), Reducer 16 (BROADCAST_EDGE) +Map 8 <- Reducer 10 (BROADCAST_EDGE) Reducer 10 <- Map 9 (CUSTOM_SIMPLE_EDGE) -Reducer 12 <- Map 11 (CUSTOM_SIMPLE_EDGE) -Reducer 14 <- Map 13 (CUSTOM_SIMPLE_EDGE) -Reducer 16 <- Map 15 (CUSTOM_SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) Reducer 3 <- Map 9 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Map 11 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Map 13 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) -Reducer 6 <- Map 15 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) +Reducer 5 <- Map 12 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) +Reducer 6 <- Map 13 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 6 (CUSTOM_SIMPLE_EDGE) Stage-0 @@ -132,10 +129,10 @@ Stage-0 limit:-1 Stage-1 Reducer 7 vectorized - File Output Operator [FS_162] - Select Operator [SEL_161] (rows=1 width=344) + File Output Operator [FS_147] + Select Operator [SEL_146] (rows=1 width=344) Output:["_col0","_col1","_col2","_col3"] - Group By Operator [GBY_160] (rows=1 width=256) + Group By Operator [GBY_145] (rows=1 width=256) Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["sum(VALUE._col0)","count(VALUE._col1)","sum(VALUE._col2)","count(VALUE._col3)","sum(VALUE._col4)","count(VALUE._col5)"] <-Reducer 6 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_37] @@ -146,13 +143,13 @@ Stage-0 Filter Operator [FIL_34] (rows=4851 width=183) predicate:(((_col19 = 'D') and (_col20 = 'Primary') and _col7 BETWEEN 50 AND 100 and (_col14 = 1)) or ((_col19 = 'M') and (_col20 = '4 yr Degree') and _col7 BETWEEN 100 AND 150 and (_col14 = 3)) or ((_col19 = 'U') and (_col20 = 'Advanced Degree') and _col7 BETWEEN 150 AND 200 and (_col14 = 1))) Merge Join Operator [MERGEJOIN_121] (rows=58239 width=183) - Conds:RS_31._col2=RS_151._col0(Inner),Output:["_col6","_col7","_col8","_col9","_col14","_col19","_col20"] - <-Map 15 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_151] + Conds:RS_31._col2=RS_144._col0(Inner),Output:["_col6","_col7","_col8","_col9","_col14","_col19","_col20"] + <-Map 13 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_144] PartitionCols:_col0 - Select Operator [SEL_150] (rows=265971 width=183) + Select Operator [SEL_143] (rows=265971 width=183) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_149] (rows=265971 width=183) + Filter Operator [FIL_142] (rows=265971 width=183) predicate:((cd_education_status) IN ('4 yr Degree', 'Primary', 'Advanced Degree') and (cd_marital_status) IN ('M', 'D', 'U') and cd_demo_sk is not null) TableScan [TS_15] (rows=1861800 width=183) default@customer_demographics,customer_demographics,Tbl:COMPLETE,Col:COMPLETE,Output:["cd_demo_sk","cd_marital_status","cd_education_status"] @@ -162,13 +159,13 @@ Stage-0 Filter Operator [FIL_30] (rows=58239 width=90) predicate:(((_col16) IN ('KY', 'GA', 'NM') and _col10 BETWEEN 100 AND 200) or ((_col16) IN ('MT', 'OR', 'IN') and _col10 BETWEEN 150 AND 300) or ((_col16) IN ('WI', 'MO', 'WV') and _col10 BETWEEN 50 AND 250)) Merge Join Operator [MERGEJOIN_120] (rows=291204 width=90) - Conds:RS_27._col4=RS_143._col0(Inner),Output:["_col2","_col6","_col7","_col8","_col9","_col10","_col14","_col16"] - <-Map 13 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_143] + Conds:RS_27._col4=RS_141._col0(Inner),Output:["_col2","_col6","_col7","_col8","_col9","_col10","_col14","_col16"] + <-Map 12 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_141] PartitionCols:_col0 - Select Operator [SEL_142] (rows=3529412 width=187) + Select Operator [SEL_140] (rows=3529412 width=187) Output:["_col0","_col1"] - Filter Operator [FIL_141] (rows=3529412 width=187) + Filter Operator [FIL_139] (rows=3529412 width=187) predicate:((ca_country = 'United States') and (ca_state) IN ('KY', 'GA', 'NM', 'MT', 'OR', 'IN', 'WI', 'MO', 'WV') and ca_address_sk is not null) TableScan [TS_12] (rows=40000000 width=187) default@customer_address,customer_address,Tbl:COMPLETE,Col:COMPLETE,Output:["ca_address_sk","ca_state","ca_country"] @@ -176,13 +173,13 @@ Stage-0 SHUFFLE [RS_27] PartitionCols:_col4 Merge Join Operator [MERGEJOIN_119] (rows=3300311 width=145) - Conds:RS_24._col3=RS_135._col0(Inner),Output:["_col2","_col4","_col6","_col7","_col8","_col9","_col10","_col14"] + Conds:RS_24._col3=RS_138._col0(Inner),Output:["_col2","_col4","_col6","_col7","_col8","_col9","_col10","_col14"] <-Map 11 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_135] + SHUFFLE [RS_138] PartitionCols:_col0 - Select Operator [SEL_134] (rows=1309 width=8) + Select Operator [SEL_137] (rows=1309 width=8) Output:["_col0","_col1"] - Filter Operator [FIL_133] (rows=1309 width=8) + Filter Operator [FIL_136] (rows=1309 width=8) predicate:((hd_dep_count) IN (3, 1) and hd_demo_sk is not null) TableScan [TS_9] (rows=7200 width=8) default@household_demographics,household_demographics,Tbl:COMPLETE,Col:COMPLETE,Output:["hd_demo_sk","hd_dep_count"] @@ -204,7 +201,7 @@ Stage-0 SHUFFLE [RS_21] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_117] (rows=50840141 width=446) - Conds:RS_124._col0=RS_159._col4(Inner),Output:["_col1","_col2","_col3","_col4","_col6","_col7","_col8","_col9","_col10"] + Conds:RS_124._col0=RS_135._col4(Inner),Output:["_col1","_col2","_col3","_col4","_col6","_col7","_col8","_col9","_col10"] <-Map 1 [SIMPLE_EDGE] vectorized SHUFFLE [RS_124] PartitionCols:_col0 @@ -215,12 +212,12 @@ Stage-0 TableScan [TS_0] (rows=1704 width=4) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk"] <-Map 8 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_159] + SHUFFLE [RS_135] PartitionCols:_col4 - Select Operator [SEL_158] (rows=50840141 width=450) + Select Operator [SEL_134] (rows=50840141 width=450) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9"] - Filter Operator [FIL_157] (rows=50840141 width=450) - predicate:((ss_addr_sk BETWEEN DynamicValue(RS_28_customer_address_ca_address_sk_min) AND DynamicValue(RS_28_customer_address_ca_address_sk_max) and in_bloom_filter(ss_addr_sk, DynamicValue(RS_28_customer_address_ca_address_sk_bloom_filter))) and (ss_cdemo_sk BETWEEN DynamicValue(RS_32_customer_demographics_cd_demo_sk_min) AND DynamicValue(RS_32_customer_demographics_cd_demo_sk_max) and in_bloom_filter(ss_cdemo_sk, DynamicValue(RS_32_customer_demographics_cd_demo_sk_bloom_filter))) and (ss_hdemo_sk BETWEEN DynamicValue(RS_25_household_demographics_hd_demo_sk_min) AND DynamicValue(RS_25_household_demographics_hd_demo_sk_max) and in_bloom_filter(ss_hdemo_sk, DynamicValue(RS_25_household_demographics_hd_demo_sk_bloom_filter))) and (ss_net_profit BETWEEN 100 AND 200 or ss_net_profit BETWEEN 150 AND 300 or ss_net_profit BETWEEN 50 AND 250) and (ss_sales_price BETWEEN 100 AND 150 or ss_sales_price BETWEEN 50 AND 100 or ss_sales_price BETWEEN 150 AND 200) 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_addr_sk is not null and ss_cdemo_sk is not null and ss_hdemo_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_133] (rows=50840141 width=450) + predicate:((ss_net_profit BETWEEN 100 AND 200 or ss_net_profit BETWEEN 150 AND 300 or ss_net_profit BETWEEN 50 AND 250) and (ss_sales_price BETWEEN 100 AND 150 or ss_sales_price BETWEEN 50 AND 100 or ss_sales_price BETWEEN 150 AND 200) 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_addr_sk is not null and ss_cdemo_sk is not null and ss_hdemo_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) TableScan [TS_3] (rows=575995635 width=450) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_cdemo_sk","ss_hdemo_sk","ss_addr_sk","ss_store_sk","ss_quantity","ss_sales_price","ss_ext_sales_price","ss_ext_wholesale_cost","ss_net_profit"] <-Reducer 10 [BROADCAST_EDGE] vectorized @@ -234,37 +231,4 @@ Stage-0 Select Operator [SEL_128] (rows=652 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_126] - <-Reducer 12 [BROADCAST_EDGE] vectorized - BROADCAST [RS_140] - Group By Operator [GBY_139] (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 - SHUFFLE [RS_138] - Group By Operator [GBY_137] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_136] (rows=1309 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_134] - <-Reducer 14 [BROADCAST_EDGE] vectorized - BROADCAST [RS_148] - Group By Operator [GBY_147] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=3529412)"] - <-Map 13 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_146] - Group By Operator [GBY_145] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=3529412)"] - Select Operator [SEL_144] (rows=3529412 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_142] - <-Reducer 16 [BROADCAST_EDGE] vectorized - BROADCAST [RS_156] - Group By Operator [GBY_155] (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_154] - Group By Operator [GBY_153] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_152] (rows=265971 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_150] diff --git a/ql/src/test/results/clientpositive/perf/tez/query14.q.out b/ql/src/test/results/clientpositive/perf/tez/query14.q.out index c078c271ec..fc8f8b651e 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query14.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query14.q.out @@ -225,35 +225,34 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 108 (BROADCAST_EDGE) -Map 100 <- Reducer 103 (BROADCAST_EDGE) -Map 110 <- Reducer 105 (BROADCAST_EDGE) -Map 111 <- Reducer 107 (BROADCAST_EDGE) -Map 112 <- Reducer 63 (BROADCAST_EDGE), Reducer 83 (BROADCAST_EDGE) -Map 113 <- Reducer 68 (BROADCAST_EDGE), Reducer 93 (BROADCAST_EDGE) +Map 1 <- Reducer 105 (BROADCAST_EDGE) +Map 107 <- Reducer 102 (BROADCAST_EDGE) +Map 108 <- Reducer 104 (BROADCAST_EDGE) +Map 109 <- Reducer 63 (BROADCAST_EDGE) +Map 110 <- Reducer 68 (BROADCAST_EDGE) Map 20 <- Reducer 25 (BROADCAST_EDGE) Map 36 <- Reducer 41 (BROADCAST_EDGE) -Map 46 <- Reducer 109 (BROADCAST_EDGE) +Map 46 <- Reducer 106 (BROADCAST_EDGE) Map 50 <- Reducer 29 (BROADCAST_EDGE) Map 51 <- Reducer 43 (BROADCAST_EDGE) -Map 52 <- Reducer 58 (BROADCAST_EDGE), Reducer 72 (BROADCAST_EDGE) -Reducer 10 <- Map 1 (SIMPLE_EDGE), Map 102 (SIMPLE_EDGE), Union 11 (CONTAINS) -Reducer 101 <- Map 100 (SIMPLE_EDGE), Map 102 (SIMPLE_EDGE) -Reducer 103 <- Map 102 (CUSTOM_SIMPLE_EDGE) -Reducer 104 <- Map 102 (SIMPLE_EDGE), Map 110 (SIMPLE_EDGE) -Reducer 105 <- Map 102 (CUSTOM_SIMPLE_EDGE) -Reducer 106 <- Map 102 (SIMPLE_EDGE), Map 111 (SIMPLE_EDGE) -Reducer 107 <- Map 102 (CUSTOM_SIMPLE_EDGE) -Reducer 108 <- Map 102 (CUSTOM_SIMPLE_EDGE) -Reducer 109 <- Map 102 (CUSTOM_SIMPLE_EDGE) +Map 52 <- Reducer 58 (BROADCAST_EDGE) +Map 97 <- Reducer 100 (BROADCAST_EDGE) +Reducer 10 <- Map 1 (SIMPLE_EDGE), Map 99 (SIMPLE_EDGE), Union 11 (CONTAINS) +Reducer 100 <- Map 99 (CUSTOM_SIMPLE_EDGE) +Reducer 101 <- Map 107 (SIMPLE_EDGE), Map 99 (SIMPLE_EDGE) +Reducer 102 <- Map 99 (CUSTOM_SIMPLE_EDGE) +Reducer 103 <- Map 108 (SIMPLE_EDGE), Map 99 (SIMPLE_EDGE) +Reducer 104 <- Map 99 (CUSTOM_SIMPLE_EDGE) +Reducer 105 <- Map 99 (CUSTOM_SIMPLE_EDGE) +Reducer 106 <- Map 99 (CUSTOM_SIMPLE_EDGE) Reducer 12 <- Union 11 (CUSTOM_SIMPLE_EDGE) Reducer 13 <- Reducer 12 (CUSTOM_SIMPLE_EDGE), Reducer 32 (CUSTOM_SIMPLE_EDGE) Reducer 14 <- Reducer 13 (CUSTOM_SIMPLE_EDGE), Reducer 62 (CUSTOM_SIMPLE_EDGE), Union 7 (CONTAINS) -Reducer 15 <- Map 1 (SIMPLE_EDGE), Map 102 (SIMPLE_EDGE), Union 16 (CONTAINS) +Reducer 15 <- Map 1 (SIMPLE_EDGE), Map 99 (SIMPLE_EDGE), Union 16 (CONTAINS) Reducer 17 <- Union 16 (CUSTOM_SIMPLE_EDGE) Reducer 18 <- Reducer 17 (CUSTOM_SIMPLE_EDGE), Reducer 35 (CUSTOM_SIMPLE_EDGE) Reducer 19 <- Reducer 18 (CUSTOM_SIMPLE_EDGE), Reducer 67 (CUSTOM_SIMPLE_EDGE), Union 7 (CONTAINS) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 102 (SIMPLE_EDGE), Union 3 (CONTAINS) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 99 (SIMPLE_EDGE), Union 3 (CONTAINS) Reducer 21 <- Map 20 (SIMPLE_EDGE), Map 24 (SIMPLE_EDGE), Union 3 (CONTAINS) Reducer 22 <- Map 20 (SIMPLE_EDGE), Map 24 (SIMPLE_EDGE), Union 11 (CONTAINS) Reducer 23 <- Map 20 (SIMPLE_EDGE), Map 24 (SIMPLE_EDGE), Union 16 (CONTAINS) @@ -274,71 +273,69 @@ Reducer 42 <- Map 40 (SIMPLE_EDGE), Map 51 (SIMPLE_EDGE), Union 27 (CONTAINS) Reducer 43 <- Map 40 (CUSTOM_SIMPLE_EDGE) Reducer 44 <- Map 40 (SIMPLE_EDGE), Map 51 (SIMPLE_EDGE), Union 31 (CONTAINS) Reducer 45 <- Map 40 (SIMPLE_EDGE), Map 51 (SIMPLE_EDGE), Union 34 (CONTAINS) -Reducer 47 <- Map 102 (SIMPLE_EDGE), Map 46 (SIMPLE_EDGE), Union 27 (CONTAINS) -Reducer 48 <- Map 102 (SIMPLE_EDGE), Map 46 (SIMPLE_EDGE), Union 31 (CONTAINS) -Reducer 49 <- Map 102 (SIMPLE_EDGE), Map 46 (SIMPLE_EDGE), Union 34 (CONTAINS) +Reducer 47 <- Map 46 (SIMPLE_EDGE), Map 99 (SIMPLE_EDGE), Union 27 (CONTAINS) +Reducer 48 <- Map 46 (SIMPLE_EDGE), Map 99 (SIMPLE_EDGE), Union 31 (CONTAINS) +Reducer 49 <- Map 46 (SIMPLE_EDGE), Map 99 (SIMPLE_EDGE), Union 34 (CONTAINS) Reducer 5 <- Reducer 28 (CUSTOM_SIMPLE_EDGE), Reducer 4 (CUSTOM_SIMPLE_EDGE) Reducer 53 <- Map 52 (SIMPLE_EDGE), Map 57 (SIMPLE_EDGE) Reducer 54 <- Map 69 (SIMPLE_EDGE), Reducer 53 (SIMPLE_EDGE) Reducer 55 <- Reducer 54 (ONE_TO_ONE_EDGE), Reducer 71 (ONE_TO_ONE_EDGE) Reducer 56 <- Reducer 55 (SIMPLE_EDGE) Reducer 58 <- Map 57 (CUSTOM_SIMPLE_EDGE) -Reducer 59 <- Map 112 (SIMPLE_EDGE), Map 57 (SIMPLE_EDGE) +Reducer 59 <- Map 109 (SIMPLE_EDGE), Map 57 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (CUSTOM_SIMPLE_EDGE), Reducer 56 (CUSTOM_SIMPLE_EDGE), Union 7 (CONTAINS) Reducer 60 <- Map 69 (SIMPLE_EDGE), Reducer 59 (SIMPLE_EDGE) -Reducer 61 <- Reducer 60 (ONE_TO_ONE_EDGE), Reducer 82 (ONE_TO_ONE_EDGE) +Reducer 61 <- Reducer 60 (ONE_TO_ONE_EDGE), Reducer 81 (ONE_TO_ONE_EDGE) Reducer 62 <- Reducer 61 (SIMPLE_EDGE) Reducer 63 <- Map 57 (CUSTOM_SIMPLE_EDGE) -Reducer 64 <- Map 113 (SIMPLE_EDGE), Map 57 (SIMPLE_EDGE) +Reducer 64 <- Map 110 (SIMPLE_EDGE), Map 57 (SIMPLE_EDGE) Reducer 65 <- Map 69 (SIMPLE_EDGE), Reducer 64 (SIMPLE_EDGE) -Reducer 66 <- Reducer 65 (ONE_TO_ONE_EDGE), Reducer 92 (ONE_TO_ONE_EDGE) +Reducer 66 <- Reducer 65 (ONE_TO_ONE_EDGE), Reducer 90 (ONE_TO_ONE_EDGE) Reducer 67 <- Reducer 66 (SIMPLE_EDGE) Reducer 68 <- Map 57 (CUSTOM_SIMPLE_EDGE) -Reducer 70 <- Map 69 (SIMPLE_EDGE), Reducer 76 (ONE_TO_ONE_EDGE) +Reducer 70 <- Map 69 (SIMPLE_EDGE), Reducer 75 (ONE_TO_ONE_EDGE) Reducer 71 <- Reducer 70 (SIMPLE_EDGE) -Reducer 72 <- Reducer 71 (CUSTOM_SIMPLE_EDGE) -Reducer 73 <- Map 69 (SIMPLE_EDGE), Reducer 101 (SIMPLE_EDGE) -Reducer 74 <- Reducer 73 (SIMPLE_EDGE), Union 75 (CONTAINS) -Reducer 76 <- Union 75 (SIMPLE_EDGE) -Reducer 77 <- Map 69 (SIMPLE_EDGE), Reducer 104 (SIMPLE_EDGE) -Reducer 78 <- Reducer 77 (SIMPLE_EDGE), Union 75 (CONTAINS) -Reducer 79 <- Map 69 (SIMPLE_EDGE), Reducer 106 (SIMPLE_EDGE) +Reducer 72 <- Map 69 (SIMPLE_EDGE), Reducer 98 (SIMPLE_EDGE) +Reducer 73 <- Reducer 72 (SIMPLE_EDGE), Union 74 (CONTAINS) +Reducer 75 <- Union 74 (SIMPLE_EDGE) +Reducer 76 <- Map 69 (SIMPLE_EDGE), Reducer 101 (SIMPLE_EDGE) +Reducer 77 <- Reducer 76 (SIMPLE_EDGE), Union 74 (CONTAINS) +Reducer 78 <- Map 69 (SIMPLE_EDGE), Reducer 103 (SIMPLE_EDGE) +Reducer 79 <- Reducer 78 (SIMPLE_EDGE), Union 74 (CONTAINS) Reducer 8 <- Union 7 (SIMPLE_EDGE) -Reducer 80 <- Reducer 79 (SIMPLE_EDGE), Union 75 (CONTAINS) -Reducer 81 <- Map 69 (SIMPLE_EDGE), Reducer 87 (ONE_TO_ONE_EDGE) -Reducer 82 <- Reducer 81 (SIMPLE_EDGE) -Reducer 83 <- Reducer 82 (CUSTOM_SIMPLE_EDGE) -Reducer 84 <- Map 69 (SIMPLE_EDGE), Reducer 101 (SIMPLE_EDGE) -Reducer 85 <- Reducer 84 (SIMPLE_EDGE), Union 86 (CONTAINS) -Reducer 87 <- Union 86 (SIMPLE_EDGE) -Reducer 88 <- Reducer 84 (SIMPLE_EDGE), Union 89 (CONTAINS) +Reducer 80 <- Map 69 (SIMPLE_EDGE), Reducer 85 (ONE_TO_ONE_EDGE) +Reducer 81 <- Reducer 80 (SIMPLE_EDGE) +Reducer 82 <- Map 69 (SIMPLE_EDGE), Reducer 98 (SIMPLE_EDGE) +Reducer 83 <- Reducer 82 (SIMPLE_EDGE), Union 84 (CONTAINS) +Reducer 85 <- Union 84 (SIMPLE_EDGE) +Reducer 86 <- Reducer 82 (SIMPLE_EDGE), Union 87 (CONTAINS) +Reducer 88 <- Union 87 (SIMPLE_EDGE) +Reducer 89 <- Map 69 (SIMPLE_EDGE), Reducer 88 (ONE_TO_ONE_EDGE) Reducer 9 <- Reducer 8 (SIMPLE_EDGE) -Reducer 90 <- Union 89 (SIMPLE_EDGE) -Reducer 91 <- Map 69 (SIMPLE_EDGE), Reducer 90 (ONE_TO_ONE_EDGE) -Reducer 92 <- Reducer 91 (SIMPLE_EDGE) -Reducer 93 <- Reducer 92 (CUSTOM_SIMPLE_EDGE) -Reducer 94 <- Map 69 (SIMPLE_EDGE), Reducer 104 (SIMPLE_EDGE) -Reducer 95 <- Reducer 94 (SIMPLE_EDGE), Union 86 (CONTAINS) -Reducer 96 <- Reducer 94 (SIMPLE_EDGE), Union 89 (CONTAINS) -Reducer 97 <- Map 69 (SIMPLE_EDGE), Reducer 106 (SIMPLE_EDGE) -Reducer 98 <- Reducer 97 (SIMPLE_EDGE), Union 86 (CONTAINS) -Reducer 99 <- Reducer 97 (SIMPLE_EDGE), Union 89 (CONTAINS) +Reducer 90 <- Reducer 89 (SIMPLE_EDGE) +Reducer 91 <- Map 69 (SIMPLE_EDGE), Reducer 101 (SIMPLE_EDGE) +Reducer 92 <- Reducer 91 (SIMPLE_EDGE), Union 84 (CONTAINS) +Reducer 93 <- Reducer 91 (SIMPLE_EDGE), Union 87 (CONTAINS) +Reducer 94 <- Map 69 (SIMPLE_EDGE), Reducer 103 (SIMPLE_EDGE) +Reducer 95 <- Reducer 94 (SIMPLE_EDGE), Union 84 (CONTAINS) +Reducer 96 <- Reducer 94 (SIMPLE_EDGE), Union 87 (CONTAINS) +Reducer 98 <- Map 97 (SIMPLE_EDGE), Map 99 (SIMPLE_EDGE) Stage-0 Fetch Operator limit:100 Stage-1 Reducer 9 vectorized - File Output Operator [FS_1726] - Limit [LIM_1725] (rows=7 width=192) + File Output Operator [FS_1721] + Limit [LIM_1720] (rows=7 width=192) Number of rows:100 - Select Operator [SEL_1724] (rows=7 width=192) + Select Operator [SEL_1719] (rows=7 width=192) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] <-Reducer 8 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1723] - Select Operator [SEL_1722] (rows=7 width=192) + SHUFFLE [RS_1718] + Select Operator [SEL_1717] (rows=7 width=192) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] - Group By Operator [GBY_1721] (rows=7 width=200) + Group By Operator [GBY_1716] (rows=7 width=200) Output:["_col0","_col1","_col2","_col3","_col5","_col6"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4 <-Union 7 [SIMPLE_EDGE] <-Reducer 14 [CONTAINS] @@ -359,14 +356,14 @@ Stage-0 Merge Join Operator [MERGEJOIN_1448] (rows=1 width=112) Conds:(Inner),Output:["_col1"] <-Reducer 12 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1732] - Select Operator [SEL_1731] (rows=1 width=8) - Filter Operator [FIL_1730] (rows=1 width=8) + PARTITION_ONLY_SHUFFLE [RS_1727] + Select Operator [SEL_1726] (rows=1 width=8) + Filter Operator [FIL_1725] (rows=1 width=8) predicate:(sq_count_check(_col0) <= 1) - Group By Operator [GBY_1729] (rows=1 width=8) + Group By Operator [GBY_1724] (rows=1 width=8) Output:["_col0"],aggregations:["count()"] - Select Operator [SEL_1728] (rows=1 width=8) - Group By Operator [GBY_1727] (rows=1 width=8) + Select Operator [SEL_1723] (rows=1 width=8) + Group By Operator [GBY_1722] (rows=1 width=8) Output:["_col0"],aggregations:["count(VALUE._col0)"] <-Union 11 [CUSTOM_SIMPLE_EDGE] <-Reducer 10 [CONTAINS] @@ -379,7 +376,7 @@ Stage-0 Output:["_col0"] Merge Join Operator [MERGEJOIN_1465] (rows=14736682 width=0) Conds:RS_1648._col0=RS_1629._col0(Inner),Output:["_col1"] - <-Map 102 [SIMPLE_EDGE] vectorized + <-Map 99 [SIMPLE_EDGE] vectorized SHUFFLE [RS_1629] PartitionCols:_col0 Select Operator [SEL_1618] (rows=1957 width=8) @@ -397,11 +394,11 @@ Stage-0 predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_7_date_dim_d_date_sk_min) AND DynamicValue(RS_7_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_7_date_dim_d_date_sk_bloom_filter))) and ss_sold_date_sk is not null) TableScan [TS_0] (rows=575995635 width=7) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_quantity"] - <-Reducer 108 [BROADCAST_EDGE] vectorized + <-Reducer 105 [BROADCAST_EDGE] vectorized BROADCAST [RS_1644] Group By Operator [GBY_1643] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 102 [CUSTOM_SIMPLE_EDGE] vectorized + <-Map 99 [CUSTOM_SIMPLE_EDGE] vectorized SHUFFLE [RS_1641] Group By Operator [GBY_1636] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] @@ -417,36 +414,36 @@ Stage-0 Select Operator [SEL_1498] (rows=7676736 width=3) Output:["_col0"] Merge Join Operator [MERGEJOIN_1497] (rows=7676736 width=3) - Conds:RS_1800._col0=RS_1787._col0(Inner),Output:["_col1"] + Conds:RS_1785._col0=RS_1772._col0(Inner),Output:["_col1"] <-Map 24 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1787] + SHUFFLE [RS_1772] PartitionCols:_col0 - Select Operator [SEL_1782] (rows=1957 width=8) + Select Operator [SEL_1767] (rows=1957 width=8) Output:["_col0"] - Filter Operator [FIL_1781] (rows=1957 width=8) + Filter Operator [FIL_1766] (rows=1957 width=8) predicate:(d_date_sk is not null and d_year BETWEEN 1998 AND 2000) TableScan [TS_13] (rows=73049 width=8) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year"] <-Map 20 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1800] + SHUFFLE [RS_1785] PartitionCols:_col0 - Select Operator [SEL_1798] (rows=286549727 width=7) + Select Operator [SEL_1783] (rows=286549727 width=7) Output:["_col0","_col1"] - Filter Operator [FIL_1797] (rows=286549727 width=7) + Filter Operator [FIL_1782] (rows=286549727 width=7) predicate:((cs_sold_date_sk BETWEEN DynamicValue(RS_17_date_dim_d_date_sk_min) AND DynamicValue(RS_17_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_17_date_dim_d_date_sk_bloom_filter))) and cs_sold_date_sk is not null) TableScan [TS_10] (rows=287989836 width=7) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_quantity"] <-Reducer 25 [BROADCAST_EDGE] vectorized - BROADCAST [RS_1796] - Group By Operator [GBY_1795] (rows=1 width=12) + BROADCAST [RS_1781] + Group By Operator [GBY_1780] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Map 24 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_1793] - Group By Operator [GBY_1791] (rows=1 width=12) + SHUFFLE [RS_1778] + Group By Operator [GBY_1776] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_1784] (rows=1957 width=4) + Select Operator [SEL_1769] (rows=1957 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_1782] + Please refer to the previous Select Operator [SEL_1767] <-Reducer 38 [CONTAINS] Reduce Output Operator [RS_1538] Group By Operator [GBY_1537] (rows=1 width=8) @@ -456,41 +453,41 @@ Stage-0 Select Operator [SEL_1534] (rows=3856907 width=3) Output:["_col0"] Merge Join Operator [MERGEJOIN_1533] (rows=3856907 width=3) - Conds:RS_1828._col0=RS_1815._col0(Inner),Output:["_col1"] + Conds:RS_1813._col0=RS_1800._col0(Inner),Output:["_col1"] <-Map 40 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1815] + SHUFFLE [RS_1800] PartitionCols:_col0 - Select Operator [SEL_1810] (rows=1957 width=8) + Select Operator [SEL_1795] (rows=1957 width=8) Output:["_col0"] - Filter Operator [FIL_1809] (rows=1957 width=8) + Filter Operator [FIL_1794] (rows=1957 width=8) predicate:(d_date_sk is not null and d_year BETWEEN 1998 AND 2000) TableScan [TS_24] (rows=73049 width=8) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year"] <-Map 36 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1828] + SHUFFLE [RS_1813] PartitionCols:_col0 - Select Operator [SEL_1826] (rows=143966864 width=7) + Select Operator [SEL_1811] (rows=143966864 width=7) Output:["_col0","_col1"] - Filter Operator [FIL_1825] (rows=143966864 width=7) + Filter Operator [FIL_1810] (rows=143966864 width=7) predicate:((ws_sold_date_sk BETWEEN DynamicValue(RS_28_date_dim_d_date_sk_min) AND DynamicValue(RS_28_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_28_date_dim_d_date_sk_bloom_filter))) and ws_sold_date_sk is not null) TableScan [TS_21] (rows=144002668 width=7) default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_quantity"] <-Reducer 41 [BROADCAST_EDGE] vectorized - BROADCAST [RS_1824] - Group By Operator [GBY_1823] (rows=1 width=12) + BROADCAST [RS_1809] + Group By Operator [GBY_1808] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Map 40 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_1821] - Group By Operator [GBY_1819] (rows=1 width=12) + SHUFFLE [RS_1806] + Group By Operator [GBY_1804] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_1812] (rows=1957 width=4) + Select Operator [SEL_1797] (rows=1957 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_1810] + Please refer to the previous Select Operator [SEL_1795] <-Reducer 32 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1735] - Select Operator [SEL_1734] (rows=1 width=112) + PARTITION_ONLY_SHUFFLE [RS_1730] + Select Operator [SEL_1729] (rows=1 width=112) Output:["_col0"] - Group By Operator [GBY_1733] (rows=1 width=120) + Group By Operator [GBY_1728] (rows=1 width=120) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)","count(VALUE._col1)"] <-Union 31 [CUSTOM_SIMPLE_EDGE] <-Reducer 30 [CONTAINS] @@ -502,31 +499,31 @@ Stage-0 Select Operator [SEL_1516] (rows=7676736 width=94) Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_1515] (rows=7676736 width=94) - Conds:RS_1807._col0=RS_1788._col0(Inner),Output:["_col1","_col2"] + Conds:RS_1792._col0=RS_1773._col0(Inner),Output:["_col1","_col2"] <-Map 24 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1788] + SHUFFLE [RS_1773] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1782] + Please refer to the previous Select Operator [SEL_1767] <-Map 50 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1807] + SHUFFLE [RS_1792] PartitionCols:_col0 - Select Operator [SEL_1805] (rows=286549727 width=119) + Select Operator [SEL_1790] (rows=286549727 width=119) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_1804] (rows=286549727 width=119) + Filter Operator [FIL_1789] (rows=286549727 width=119) predicate:((cs_sold_date_sk BETWEEN DynamicValue(RS_62_date_dim_d_date_sk_min) AND DynamicValue(RS_62_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_62_date_dim_d_date_sk_bloom_filter))) and cs_sold_date_sk is not null) TableScan [TS_55] (rows=287989836 width=119) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_quantity","cs_list_price"] <-Reducer 29 [BROADCAST_EDGE] vectorized - BROADCAST [RS_1803] - Group By Operator [GBY_1802] (rows=1 width=12) + BROADCAST [RS_1788] + Group By Operator [GBY_1787] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Map 24 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_1794] - Group By Operator [GBY_1792] (rows=1 width=12) + SHUFFLE [RS_1779] + Group By Operator [GBY_1777] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_1786] (rows=1957 width=4) + Select Operator [SEL_1771] (rows=1957 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_1782] + Please refer to the previous Select Operator [SEL_1767] <-Reducer 44 [CONTAINS] Reduce Output Operator [RS_1556] Group By Operator [GBY_1555] (rows=1 width=120) @@ -536,31 +533,31 @@ Stage-0 Select Operator [SEL_1552] (rows=3856907 width=114) Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_1551] (rows=3856907 width=114) - Conds:RS_1835._col0=RS_1816._col0(Inner),Output:["_col1","_col2"] + Conds:RS_1820._col0=RS_1801._col0(Inner),Output:["_col1","_col2"] <-Map 40 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1816] + SHUFFLE [RS_1801] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1810] + Please refer to the previous Select Operator [SEL_1795] <-Map 51 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1835] + SHUFFLE [RS_1820] PartitionCols:_col0 - Select Operator [SEL_1833] (rows=143966864 width=119) + Select Operator [SEL_1818] (rows=143966864 width=119) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_1832] (rows=143966864 width=119) + Filter Operator [FIL_1817] (rows=143966864 width=119) predicate:((ws_sold_date_sk BETWEEN DynamicValue(RS_73_date_dim_d_date_sk_min) AND DynamicValue(RS_73_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_73_date_dim_d_date_sk_bloom_filter))) and ws_sold_date_sk is not null) TableScan [TS_66] (rows=144002668 width=119) default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_quantity","ws_list_price"] <-Reducer 43 [BROADCAST_EDGE] vectorized - BROADCAST [RS_1831] - Group By Operator [GBY_1830] (rows=1 width=12) + BROADCAST [RS_1816] + Group By Operator [GBY_1815] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Map 40 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_1822] - Group By Operator [GBY_1820] (rows=1 width=12) + SHUFFLE [RS_1807] + Group By Operator [GBY_1805] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_1814] (rows=1957 width=4) + Select Operator [SEL_1799] (rows=1957 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_1810] + Please refer to the previous Select Operator [SEL_1795] <-Reducer 48 [CONTAINS] Reduce Output Operator [RS_1574] Group By Operator [GBY_1573] (rows=1 width=120) @@ -570,25 +567,25 @@ Stage-0 Select Operator [SEL_1570] (rows=14736682 width=0) Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_1569] (rows=14736682 width=0) - Conds:RS_1842._col0=RS_1630._col0(Inner),Output:["_col1","_col2"] - <-Map 102 [SIMPLE_EDGE] vectorized + Conds:RS_1827._col0=RS_1630._col0(Inner),Output:["_col1","_col2"] + <-Map 99 [SIMPLE_EDGE] vectorized SHUFFLE [RS_1630] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_1618] <-Map 46 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1842] + SHUFFLE [RS_1827] PartitionCols:_col0 - Select Operator [SEL_1840] (rows=550076554 width=114) + Select Operator [SEL_1825] (rows=550076554 width=114) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_1839] (rows=550076554 width=114) + Filter Operator [FIL_1824] (rows=550076554 width=114) predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_52_date_dim_d_date_sk_min) AND DynamicValue(RS_52_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_52_date_dim_d_date_sk_bloom_filter))) and ss_sold_date_sk is not null) TableScan [TS_45] (rows=575995635 width=114) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_quantity","ss_list_price"] - <-Reducer 109 [BROADCAST_EDGE] vectorized - BROADCAST [RS_1838] - Group By Operator [GBY_1837] (rows=1 width=12) + <-Reducer 106 [BROADCAST_EDGE] vectorized + BROADCAST [RS_1823] + Group By Operator [GBY_1822] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 102 [CUSTOM_SIMPLE_EDGE] vectorized + <-Map 99 [CUSTOM_SIMPLE_EDGE] vectorized SHUFFLE [RS_1642] Group By Operator [GBY_1637] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] @@ -596,8 +593,8 @@ Stage-0 Output:["_col0"] Please refer to the previous Select Operator [SEL_1618] <-Reducer 62 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1753] - Group By Operator [GBY_1752] (rows=1 width=132) + PARTITION_ONLY_SHUFFLE [RS_1743] + Group By Operator [GBY_1742] (rows=1 width=132) Output:["_col0","_col1","_col2","_col3","_col4"],aggregations:["sum(VALUE._col0)","count(VALUE._col1)"],keys:KEY._col0, KEY._col1, KEY._col2 <-Reducer 61 [SIMPLE_EDGE] SHUFFLE [RS_375] @@ -607,249 +604,238 @@ Stage-0 Select Operator [SEL_372] (rows=1 width=128) Output:["_col0","_col1","_col2","_col3"] Merge Join Operator [MERGEJOIN_1444] (rows=1 width=128) - Conds:RS_369._col1=RS_1743._col0(Inner),Output:["_col2","_col3","_col8","_col9","_col10"] - <-Reducer 82 [ONE_TO_ONE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1743] + Conds:RS_369._col1=RS_1741._col0(Inner),Output:["_col2","_col3","_col8","_col9","_col10"] + <-Reducer 60 [ONE_TO_ONE_EDGE] + FORWARD [RS_369] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_1420] (rows=7790806 width=110) + Conds:RS_366._col1=RS_1705._col0(Inner),Output:["_col1","_col2","_col3","_col8","_col9","_col10"] + <-Map 69 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1705] + PartitionCols:_col0 + Select Operator [SEL_1693] (rows=462000 width=15) + Output:["_col0","_col1","_col2","_col3"] + Filter Operator [FIL_1684] (rows=462000 width=15) + predicate:i_item_sk is not null + TableScan [TS_91] (rows=462000 width=15) + default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_brand_id","i_class_id","i_category_id"] + <-Reducer 59 [SIMPLE_EDGE] + SHUFFLE [RS_366] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_1419] (rows=7790806 width=98) + Conds:RS_1735._col0=RS_1663._col0(Inner),Output:["_col1","_col2","_col3"] + <-Map 57 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_1663] + PartitionCols:_col0 + Select Operator [SEL_1660] (rows=50 width=12) + Output:["_col0"] + Filter Operator [FIL_1659] (rows=50 width=12) + predicate:((d_moy = 11) and (d_year = 2000) and d_date_sk is not null) + TableScan [TS_85] (rows=73049 width=12) + default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] + <-Map 109 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1735] + PartitionCols:_col0 + Select Operator [SEL_1734] (rows=286549727 width=123) + Output:["_col0","_col1","_col2","_col3"] + Filter Operator [FIL_1733] (rows=286549727 width=123) + predicate:((cs_sold_date_sk BETWEEN DynamicValue(RS_364_date_dim_d_date_sk_min) AND DynamicValue(RS_364_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_364_date_dim_d_date_sk_bloom_filter))) and cs_item_sk is not null and cs_sold_date_sk is not null) + TableScan [TS_275] (rows=287989836 width=123) + default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_item_sk","cs_quantity","cs_list_price"] + <-Reducer 63 [BROADCAST_EDGE] vectorized + BROADCAST [RS_1732] + Group By Operator [GBY_1731] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 57 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_1671] + Group By Operator [GBY_1668] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_1664] (rows=50 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_1660] + <-Reducer 81 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_1741] PartitionCols:_col0 - Group By Operator [GBY_1742] (rows=362 width=4) + Group By Operator [GBY_1740] (rows=362 width=4) Output:["_col0"],keys:KEY._col0 - <-Reducer 81 [SIMPLE_EDGE] + <-Reducer 80 [SIMPLE_EDGE] SHUFFLE [RS_360] PartitionCols:_col0 Group By Operator [GBY_359] (rows=362 width=4) Output:["_col0"],keys:_col0 Merge Join Operator [MERGEJOIN_1427] (rows=724 width=4) - Conds:RS_1698._col1, _col2, _col3=RS_1741._col0, _col1, _col2(Inner),Output:["_col0"] + Conds:RS_1701._col1, _col2, _col3=RS_1739._col0, _col1, _col2(Inner),Output:["_col0"] <-Map 69 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1698] + SHUFFLE [RS_1701] PartitionCols:_col1, _col2, _col3 - Select Operator [SEL_1686] (rows=458612 width=15) + Select Operator [SEL_1689] (rows=458612 width=15) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_1677] (rows=458612 width=15) + Filter Operator [FIL_1680] (rows=458612 width=15) predicate:(i_brand_id is not null and i_category_id is not null and i_class_id is not null and i_item_sk is not null) - TableScan [TS_91] (rows=462000 width=15) - default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_brand_id","i_class_id","i_category_id"] - <-Reducer 87 [ONE_TO_ONE_EDGE] vectorized - FORWARD [RS_1741] + Please refer to the previous TableScan [TS_91] + <-Reducer 85 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_1739] PartitionCols:_col0, _col1, _col2 - Select Operator [SEL_1740] (rows=1 width=12) + Select Operator [SEL_1738] (rows=1 width=12) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_1739] (rows=1 width=20) + Filter Operator [FIL_1737] (rows=1 width=20) predicate:(_col3 = 3L) - Group By Operator [GBY_1738] (rows=121728 width=19) + Group By Operator [GBY_1736] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Union 86 [SIMPLE_EDGE] - <-Reducer 85 [CONTAINS] vectorized - Reduce Output Operator [RS_1870] + <-Union 84 [SIMPLE_EDGE] + <-Reducer 83 [CONTAINS] vectorized + Reduce Output Operator [RS_1855] PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_1869] (rows=121728 width=19) + Group By Operator [GBY_1854] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(_col3)"],keys:_col0, _col1, _col2 - Group By Operator [GBY_1868] (rows=121728 width=19) + Group By Operator [GBY_1853] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Reducer 84 [SIMPLE_EDGE] + <-Reducer 82 [SIMPLE_EDGE] SHUFFLE [RS_304] PartitionCols:_col0, _col1, _col2 Group By Operator [GBY_303] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count()"],keys:_col5, _col6, _col7 Merge Join Operator [MERGEJOIN_1422] (rows=14628613 width=11) - Conds:RS_299._col1=RS_1699._col0(Inner),Output:["_col5","_col6","_col7"] + Conds:RS_299._col1=RS_1702._col0(Inner),Output:["_col5","_col6","_col7"] <-Map 69 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1699] + SHUFFLE [RS_1702] PartitionCols:_col0 - Select Operator [SEL_1687] (rows=458612 width=15) + Select Operator [SEL_1690] (rows=458612 width=15) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_1678] (rows=458612 width=15) + Filter Operator [FIL_1681] (rows=458612 width=15) predicate:(i_brand_id is not null and i_category_id is not null and i_class_id is not null and i_item_sk is not null) Please refer to the previous TableScan [TS_91] - <-Reducer 101 [SIMPLE_EDGE] + <-Reducer 98 [SIMPLE_EDGE] SHUFFLE [RS_299] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_1406] (rows=14736682 width=4) - Conds:RS_1848._col0=RS_1619._col0(Inner),Output:["_col1"] - <-Map 102 [SIMPLE_EDGE] vectorized + Conds:RS_1833._col0=RS_1619._col0(Inner),Output:["_col1"] + <-Map 99 [SIMPLE_EDGE] vectorized SHUFFLE [RS_1619] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_1618] - <-Map 100 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1848] + <-Map 97 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1833] PartitionCols:_col0 - Select Operator [SEL_1847] (rows=550076554 width=7) + Select Operator [SEL_1832] (rows=550076554 width=7) Output:["_col0","_col1"] - Filter Operator [FIL_1846] (rows=550076554 width=7) + Filter Operator [FIL_1831] (rows=550076554 width=7) predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_104_d1_d_date_sk_min) AND DynamicValue(RS_104_d1_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_104_d1_d_date_sk_bloom_filter))) and ss_item_sk is not null and ss_sold_date_sk is not null) TableScan [TS_94] (rows=575995635 width=7) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk"] - <-Reducer 103 [BROADCAST_EDGE] vectorized - BROADCAST [RS_1845] - Group By Operator [GBY_1844] (rows=1 width=12) + <-Reducer 100 [BROADCAST_EDGE] vectorized + BROADCAST [RS_1830] + Group By Operator [GBY_1829] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 102 [CUSTOM_SIMPLE_EDGE] vectorized + <-Map 99 [CUSTOM_SIMPLE_EDGE] vectorized SHUFFLE [RS_1638] Group By Operator [GBY_1633] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] Select Operator [SEL_1620] (rows=1957 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_1618] - <-Reducer 95 [CONTAINS] vectorized - Reduce Output Operator [RS_1876] + <-Reducer 92 [CONTAINS] vectorized + Reduce Output Operator [RS_1861] PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_1875] (rows=121728 width=19) + Group By Operator [GBY_1860] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(_col3)"],keys:_col0, _col1, _col2 - Group By Operator [GBY_1874] (rows=121728 width=19) + Group By Operator [GBY_1859] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Reducer 94 [SIMPLE_EDGE] + <-Reducer 91 [SIMPLE_EDGE] SHUFFLE [RS_324] PartitionCols:_col0, _col1, _col2 Group By Operator [GBY_323] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count()"],keys:_col5, _col6, _col7 Merge Join Operator [MERGEJOIN_1424] (rows=7620440 width=11) - Conds:RS_319._col1=RS_1700._col0(Inner),Output:["_col5","_col6","_col7"] + Conds:RS_319._col1=RS_1703._col0(Inner),Output:["_col5","_col6","_col7"] <-Map 69 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1700] + SHUFFLE [RS_1703] PartitionCols:_col0 - Select Operator [SEL_1688] (rows=458612 width=15) + Select Operator [SEL_1691] (rows=458612 width=15) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_1679] (rows=458612 width=15) + Filter Operator [FIL_1682] (rows=458612 width=15) predicate:(i_brand_id is not null and i_category_id is not null and i_class_id is not null and i_item_sk is not null) Please refer to the previous TableScan [TS_91] - <-Reducer 104 [SIMPLE_EDGE] + <-Reducer 101 [SIMPLE_EDGE] SHUFFLE [RS_319] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_1408] (rows=7676736 width=4) - Conds:RS_1856._col0=RS_1621._col0(Inner),Output:["_col1"] - <-Map 102 [SIMPLE_EDGE] vectorized + Conds:RS_1841._col0=RS_1621._col0(Inner),Output:["_col1"] + <-Map 99 [SIMPLE_EDGE] vectorized SHUFFLE [RS_1621] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_1618] - <-Map 110 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1856] + <-Map 107 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1841] PartitionCols:_col0 - Select Operator [SEL_1855] (rows=286549727 width=7) + Select Operator [SEL_1840] (rows=286549727 width=7) Output:["_col0","_col1"] - Filter Operator [FIL_1854] (rows=286549727 width=7) + Filter Operator [FIL_1839] (rows=286549727 width=7) predicate:((cs_sold_date_sk BETWEEN DynamicValue(RS_124_d2_d_date_sk_min) AND DynamicValue(RS_124_d2_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_124_d2_d_date_sk_bloom_filter))) and cs_item_sk is not null and cs_sold_date_sk is not null) TableScan [TS_114] (rows=287989836 width=7) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_item_sk"] - <-Reducer 105 [BROADCAST_EDGE] vectorized - BROADCAST [RS_1853] - Group By Operator [GBY_1852] (rows=1 width=12) + <-Reducer 102 [BROADCAST_EDGE] vectorized + BROADCAST [RS_1838] + Group By Operator [GBY_1837] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 102 [CUSTOM_SIMPLE_EDGE] vectorized + <-Map 99 [CUSTOM_SIMPLE_EDGE] vectorized SHUFFLE [RS_1639] Group By Operator [GBY_1634] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] Select Operator [SEL_1622] (rows=1957 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_1618] - <-Reducer 98 [CONTAINS] vectorized - Reduce Output Operator [RS_1882] + <-Reducer 95 [CONTAINS] vectorized + Reduce Output Operator [RS_1867] PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_1881] (rows=121728 width=19) + Group By Operator [GBY_1866] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(_col3)"],keys:_col0, _col1, _col2 - Group By Operator [GBY_1880] (rows=121728 width=19) + Group By Operator [GBY_1865] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Reducer 97 [SIMPLE_EDGE] + <-Reducer 94 [SIMPLE_EDGE] SHUFFLE [RS_345] PartitionCols:_col0, _col1, _col2 Group By Operator [GBY_344] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count()"],keys:_col5, _col6, _col7 Merge Join Operator [MERGEJOIN_1426] (rows=3828623 width=11) - Conds:RS_340._col1=RS_1701._col0(Inner),Output:["_col5","_col6","_col7"] + Conds:RS_340._col1=RS_1704._col0(Inner),Output:["_col5","_col6","_col7"] <-Map 69 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1701] + SHUFFLE [RS_1704] PartitionCols:_col0 - Select Operator [SEL_1689] (rows=458612 width=15) + Select Operator [SEL_1692] (rows=458612 width=15) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_1680] (rows=458612 width=15) + Filter Operator [FIL_1683] (rows=458612 width=15) predicate:(i_brand_id is not null and i_category_id is not null and i_class_id is not null and i_item_sk is not null) Please refer to the previous TableScan [TS_91] - <-Reducer 106 [SIMPLE_EDGE] + <-Reducer 103 [SIMPLE_EDGE] SHUFFLE [RS_340] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_1410] (rows=3856907 width=4) - Conds:RS_1864._col0=RS_1623._col0(Inner),Output:["_col1"] - <-Map 102 [SIMPLE_EDGE] vectorized + Conds:RS_1849._col0=RS_1623._col0(Inner),Output:["_col1"] + <-Map 99 [SIMPLE_EDGE] vectorized SHUFFLE [RS_1623] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_1618] - <-Map 111 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1864] + <-Map 108 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1849] PartitionCols:_col0 - Select Operator [SEL_1863] (rows=143966864 width=7) + Select Operator [SEL_1848] (rows=143966864 width=7) Output:["_col0","_col1"] - Filter Operator [FIL_1862] (rows=143966864 width=7) + Filter Operator [FIL_1847] (rows=143966864 width=7) predicate:((ws_sold_date_sk BETWEEN DynamicValue(RS_145_d3_d_date_sk_min) AND DynamicValue(RS_145_d3_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_145_d3_d_date_sk_bloom_filter))) and ws_item_sk is not null and ws_sold_date_sk is not null) TableScan [TS_135] (rows=144002668 width=7) default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_item_sk"] - <-Reducer 107 [BROADCAST_EDGE] vectorized - BROADCAST [RS_1861] - Group By Operator [GBY_1860] (rows=1 width=12) + <-Reducer 104 [BROADCAST_EDGE] vectorized + BROADCAST [RS_1846] + Group By Operator [GBY_1845] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 102 [CUSTOM_SIMPLE_EDGE] vectorized + <-Map 99 [CUSTOM_SIMPLE_EDGE] vectorized SHUFFLE [RS_1640] Group By Operator [GBY_1635] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] Select Operator [SEL_1624] (rows=1957 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_1618] - <-Reducer 60 [ONE_TO_ONE_EDGE] - FORWARD [RS_369] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_1420] (rows=7790806 width=110) - Conds:RS_366._col1=RS_1702._col0(Inner),Output:["_col1","_col2","_col3","_col8","_col9","_col10"] - <-Map 69 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1702] - PartitionCols:_col0 - Select Operator [SEL_1690] (rows=462000 width=15) - Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_1681] (rows=462000 width=15) - predicate:i_item_sk is not null - Please refer to the previous TableScan [TS_91] - <-Reducer 59 [SIMPLE_EDGE] - SHUFFLE [RS_366] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_1419] (rows=7790806 width=98) - Conds:RS_1751._col0=RS_1663._col0(Inner),Output:["_col1","_col2","_col3"] - <-Map 57 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1663] - PartitionCols:_col0 - Select Operator [SEL_1660] (rows=50 width=12) - Output:["_col0"] - Filter Operator [FIL_1659] (rows=50 width=12) - predicate:((d_moy = 11) and (d_year = 2000) and d_date_sk is not null) - TableScan [TS_85] (rows=73049 width=12) - default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] - <-Map 112 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1751] - PartitionCols:_col0 - Select Operator [SEL_1750] (rows=286549727 width=123) - Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_1749] (rows=286549727 width=123) - predicate:((cs_item_sk BETWEEN DynamicValue(RS_370_item_i_item_sk_min) AND DynamicValue(RS_370_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_370_item_i_item_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_364_date_dim_d_date_sk_min) AND DynamicValue(RS_364_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_364_date_dim_d_date_sk_bloom_filter))) and cs_item_sk is not null and cs_sold_date_sk is not null) - TableScan [TS_275] (rows=287989836 width=123) - default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_item_sk","cs_quantity","cs_list_price"] - <-Reducer 63 [BROADCAST_EDGE] vectorized - BROADCAST [RS_1737] - Group By Operator [GBY_1736] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 57 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1671] - Group By Operator [GBY_1668] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_1664] (rows=50 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_1660] - <-Reducer 83 [BROADCAST_EDGE] vectorized - BROADCAST [RS_1748] - Group By Operator [GBY_1747] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Reducer 82 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1746] - Group By Operator [GBY_1745] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_1744] (rows=362 width=4) - Output:["_col0"] - Please refer to the previous Group By Operator [GBY_1742] <-Reducer 19 [CONTAINS] Reduce Output Operator [RS_1490] PartitionCols:_col0, _col1, _col2, _col3, _col4 @@ -868,14 +854,14 @@ Stage-0 Merge Join Operator [MERGEJOIN_1450] (rows=1 width=112) Conds:(Inner),Output:["_col1"] <-Reducer 17 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1759] - Select Operator [SEL_1758] (rows=1 width=8) - Filter Operator [FIL_1757] (rows=1 width=8) + PARTITION_ONLY_SHUFFLE [RS_1749] + Select Operator [SEL_1748] (rows=1 width=8) + Filter Operator [FIL_1747] (rows=1 width=8) predicate:(sq_count_check(_col0) <= 1) - Group By Operator [GBY_1756] (rows=1 width=8) + Group By Operator [GBY_1746] (rows=1 width=8) Output:["_col0"],aggregations:["count()"] - Select Operator [SEL_1755] (rows=1 width=8) - Group By Operator [GBY_1754] (rows=1 width=8) + Select Operator [SEL_1745] (rows=1 width=8) + Group By Operator [GBY_1744] (rows=1 width=8) Output:["_col0"],aggregations:["count(VALUE._col0)"] <-Union 16 [CUSTOM_SIMPLE_EDGE] <-Reducer 15 [CONTAINS] @@ -888,7 +874,7 @@ Stage-0 Output:["_col0"] Merge Join Operator [MERGEJOIN_1478] (rows=14736682 width=0) Conds:RS_1649._col0=RS_1631._col0(Inner),Output:["_col1"] - <-Map 102 [SIMPLE_EDGE] vectorized + <-Map 99 [SIMPLE_EDGE] vectorized SHUFFLE [RS_1631] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_1618] @@ -905,15 +891,15 @@ Stage-0 Select Operator [SEL_1504] (rows=7676736 width=3) Output:["_col0"] Merge Join Operator [MERGEJOIN_1503] (rows=7676736 width=3) - Conds:RS_1801._col0=RS_1789._col0(Inner),Output:["_col1"] + Conds:RS_1786._col0=RS_1774._col0(Inner),Output:["_col1"] <-Map 24 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1789] + SHUFFLE [RS_1774] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1782] + Please refer to the previous Select Operator [SEL_1767] <-Map 20 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1801] + SHUFFLE [RS_1786] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1798] + Please refer to the previous Select Operator [SEL_1783] <-Reducer 39 [CONTAINS] Reduce Output Operator [RS_1544] Group By Operator [GBY_1543] (rows=1 width=8) @@ -923,20 +909,20 @@ Stage-0 Select Operator [SEL_1540] (rows=3856907 width=3) Output:["_col0"] Merge Join Operator [MERGEJOIN_1539] (rows=3856907 width=3) - Conds:RS_1829._col0=RS_1817._col0(Inner),Output:["_col1"] + Conds:RS_1814._col0=RS_1802._col0(Inner),Output:["_col1"] <-Map 40 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1817] + SHUFFLE [RS_1802] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1810] + Please refer to the previous Select Operator [SEL_1795] <-Map 36 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1829] + SHUFFLE [RS_1814] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1826] + Please refer to the previous Select Operator [SEL_1811] <-Reducer 35 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1762] - Select Operator [SEL_1761] (rows=1 width=112) + PARTITION_ONLY_SHUFFLE [RS_1752] + Select Operator [SEL_1751] (rows=1 width=112) Output:["_col0"] - Group By Operator [GBY_1760] (rows=1 width=120) + Group By Operator [GBY_1750] (rows=1 width=120) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)","count(VALUE._col1)"] <-Union 34 [CUSTOM_SIMPLE_EDGE] <-Reducer 33 [CONTAINS] @@ -948,15 +934,15 @@ Stage-0 Select Operator [SEL_1522] (rows=7676736 width=94) Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_1521] (rows=7676736 width=94) - Conds:RS_1808._col0=RS_1790._col0(Inner),Output:["_col1","_col2"] + Conds:RS_1793._col0=RS_1775._col0(Inner),Output:["_col1","_col2"] <-Map 24 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1790] + SHUFFLE [RS_1775] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1782] + Please refer to the previous Select Operator [SEL_1767] <-Map 50 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1808] + SHUFFLE [RS_1793] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1805] + Please refer to the previous Select Operator [SEL_1790] <-Reducer 45 [CONTAINS] Reduce Output Operator [RS_1562] Group By Operator [GBY_1561] (rows=1 width=120) @@ -966,15 +952,15 @@ Stage-0 Select Operator [SEL_1558] (rows=3856907 width=114) Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_1557] (rows=3856907 width=114) - Conds:RS_1836._col0=RS_1818._col0(Inner),Output:["_col1","_col2"] + Conds:RS_1821._col0=RS_1803._col0(Inner),Output:["_col1","_col2"] <-Map 40 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1818] + SHUFFLE [RS_1803] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1810] + Please refer to the previous Select Operator [SEL_1795] <-Map 51 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1836] + SHUFFLE [RS_1821] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1833] + Please refer to the previous Select Operator [SEL_1818] <-Reducer 49 [CONTAINS] Reduce Output Operator [RS_1580] Group By Operator [GBY_1579] (rows=1 width=120) @@ -984,18 +970,18 @@ Stage-0 Select Operator [SEL_1576] (rows=14736682 width=0) Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_1575] (rows=14736682 width=0) - Conds:RS_1843._col0=RS_1632._col0(Inner),Output:["_col1","_col2"] - <-Map 102 [SIMPLE_EDGE] vectorized + Conds:RS_1828._col0=RS_1632._col0(Inner),Output:["_col1","_col2"] + <-Map 99 [SIMPLE_EDGE] vectorized SHUFFLE [RS_1632] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_1618] <-Map 46 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1843] + SHUFFLE [RS_1828] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1840] + Please refer to the previous Select Operator [SEL_1825] <-Reducer 67 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1780] - Group By Operator [GBY_1779] (rows=1 width=132) + PARTITION_ONLY_SHUFFLE [RS_1765] + Group By Operator [GBY_1764] (rows=1 width=132) Output:["_col0","_col1","_col2","_col3","_col4"],aggregations:["sum(VALUE._col0)","count(VALUE._col1)"],keys:KEY._col0, KEY._col1, KEY._col2 <-Reducer 66 [SIMPLE_EDGE] SHUFFLE [RS_569] @@ -1005,123 +991,112 @@ Stage-0 Select Operator [SEL_566] (rows=1 width=128) Output:["_col0","_col1","_col2","_col3"] Merge Join Operator [MERGEJOIN_1445] (rows=1 width=128) - Conds:RS_563._col1=RS_1770._col0(Inner),Output:["_col2","_col3","_col8","_col9","_col10"] - <-Reducer 92 [ONE_TO_ONE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1770] + Conds:RS_563._col1=RS_1763._col0(Inner),Output:["_col2","_col3","_col8","_col9","_col10"] + <-Reducer 65 [ONE_TO_ONE_EDGE] + FORWARD [RS_563] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_1435] (rows=3942084 width=130) + Conds:RS_560._col1=RS_1707._col0(Inner),Output:["_col1","_col2","_col3","_col8","_col9","_col10"] + <-Map 69 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1707] + PartitionCols:_col0 + Select Operator [SEL_1695] (rows=462000 width=15) + Output:["_col0","_col1","_col2","_col3"] + Filter Operator [FIL_1686] (rows=462000 width=15) + predicate:i_item_sk is not null + Please refer to the previous TableScan [TS_91] + <-Reducer 64 [SIMPLE_EDGE] + SHUFFLE [RS_560] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_1434] (rows=3942084 width=118) + Conds:RS_1757._col0=RS_1665._col0(Inner),Output:["_col1","_col2","_col3"] + <-Map 57 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_1665] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_1660] + <-Map 110 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1757] + PartitionCols:_col0 + Select Operator [SEL_1756] (rows=143966864 width=123) + Output:["_col0","_col1","_col2","_col3"] + Filter Operator [FIL_1755] (rows=143966864 width=123) + predicate:((ws_sold_date_sk BETWEEN DynamicValue(RS_558_date_dim_d_date_sk_min) AND DynamicValue(RS_558_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_558_date_dim_d_date_sk_bloom_filter))) and ws_item_sk is not null and ws_sold_date_sk is not null) + TableScan [TS_469] (rows=144002668 width=123) + default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_item_sk","ws_quantity","ws_list_price"] + <-Reducer 68 [BROADCAST_EDGE] vectorized + BROADCAST [RS_1754] + Group By Operator [GBY_1753] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 57 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_1672] + Group By Operator [GBY_1669] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_1666] (rows=50 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_1660] + <-Reducer 90 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_1763] PartitionCols:_col0 - Group By Operator [GBY_1769] (rows=362 width=4) + Group By Operator [GBY_1762] (rows=362 width=4) Output:["_col0"],keys:KEY._col0 - <-Reducer 91 [SIMPLE_EDGE] + <-Reducer 89 [SIMPLE_EDGE] SHUFFLE [RS_554] PartitionCols:_col0 Group By Operator [GBY_553] (rows=362 width=4) Output:["_col0"],keys:_col0 Merge Join Operator [MERGEJOIN_1442] (rows=724 width=4) - Conds:RS_1703._col1, _col2, _col3=RS_1768._col0, _col1, _col2(Inner),Output:["_col0"] + Conds:RS_1706._col1, _col2, _col3=RS_1761._col0, _col1, _col2(Inner),Output:["_col0"] <-Map 69 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1703] + SHUFFLE [RS_1706] PartitionCols:_col1, _col2, _col3 - Select Operator [SEL_1691] (rows=458612 width=15) + Select Operator [SEL_1694] (rows=458612 width=15) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_1682] (rows=458612 width=15) + Filter Operator [FIL_1685] (rows=458612 width=15) predicate:(i_brand_id is not null and i_category_id is not null and i_class_id is not null and i_item_sk is not null) Please refer to the previous TableScan [TS_91] - <-Reducer 90 [ONE_TO_ONE_EDGE] vectorized - FORWARD [RS_1768] + <-Reducer 88 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_1761] PartitionCols:_col0, _col1, _col2 - Select Operator [SEL_1767] (rows=1 width=12) + Select Operator [SEL_1760] (rows=1 width=12) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_1766] (rows=1 width=20) + Filter Operator [FIL_1759] (rows=1 width=20) predicate:(_col3 = 3L) - Group By Operator [GBY_1765] (rows=121728 width=19) + Group By Operator [GBY_1758] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Union 89 [SIMPLE_EDGE] - <-Reducer 88 [CONTAINS] vectorized - Reduce Output Operator [RS_1873] + <-Union 87 [SIMPLE_EDGE] + <-Reducer 86 [CONTAINS] vectorized + Reduce Output Operator [RS_1858] PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_1872] (rows=121728 width=19) + Group By Operator [GBY_1857] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(_col3)"],keys:_col0, _col1, _col2 - Group By Operator [GBY_1871] (rows=121728 width=19) + Group By Operator [GBY_1856] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Reducer 84 [SIMPLE_EDGE] + <-Reducer 82 [SIMPLE_EDGE] SHUFFLE [RS_498] PartitionCols:_col0, _col1, _col2 Please refer to the previous Group By Operator [GBY_303] - <-Reducer 96 [CONTAINS] vectorized - Reduce Output Operator [RS_1879] + <-Reducer 93 [CONTAINS] vectorized + Reduce Output Operator [RS_1864] PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_1878] (rows=121728 width=19) + Group By Operator [GBY_1863] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(_col3)"],keys:_col0, _col1, _col2 - Group By Operator [GBY_1877] (rows=121728 width=19) + Group By Operator [GBY_1862] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Reducer 94 [SIMPLE_EDGE] + <-Reducer 91 [SIMPLE_EDGE] SHUFFLE [RS_518] PartitionCols:_col0, _col1, _col2 Please refer to the previous Group By Operator [GBY_323] - <-Reducer 99 [CONTAINS] vectorized - Reduce Output Operator [RS_1885] + <-Reducer 96 [CONTAINS] vectorized + Reduce Output Operator [RS_1870] PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_1884] (rows=121728 width=19) + Group By Operator [GBY_1869] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(_col3)"],keys:_col0, _col1, _col2 - Group By Operator [GBY_1883] (rows=121728 width=19) + Group By Operator [GBY_1868] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Reducer 97 [SIMPLE_EDGE] + <-Reducer 94 [SIMPLE_EDGE] SHUFFLE [RS_539] PartitionCols:_col0, _col1, _col2 Please refer to the previous Group By Operator [GBY_344] - <-Reducer 65 [ONE_TO_ONE_EDGE] - FORWARD [RS_563] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_1435] (rows=3942084 width=130) - Conds:RS_560._col1=RS_1704._col0(Inner),Output:["_col1","_col2","_col3","_col8","_col9","_col10"] - <-Map 69 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1704] - PartitionCols:_col0 - Select Operator [SEL_1692] (rows=462000 width=15) - Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_1683] (rows=462000 width=15) - predicate:i_item_sk is not null - Please refer to the previous TableScan [TS_91] - <-Reducer 64 [SIMPLE_EDGE] - SHUFFLE [RS_560] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_1434] (rows=3942084 width=118) - Conds:RS_1778._col0=RS_1665._col0(Inner),Output:["_col1","_col2","_col3"] - <-Map 57 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1665] - PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1660] - <-Map 113 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1778] - PartitionCols:_col0 - Select Operator [SEL_1777] (rows=143966864 width=123) - Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_1776] (rows=143966864 width=123) - predicate:((ws_item_sk BETWEEN DynamicValue(RS_564_item_i_item_sk_min) AND DynamicValue(RS_564_item_i_item_sk_max) and in_bloom_filter(ws_item_sk, DynamicValue(RS_564_item_i_item_sk_bloom_filter))) and (ws_sold_date_sk BETWEEN DynamicValue(RS_558_date_dim_d_date_sk_min) AND DynamicValue(RS_558_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_558_date_dim_d_date_sk_bloom_filter))) and ws_item_sk is not null and ws_sold_date_sk is not null) - TableScan [TS_469] (rows=144002668 width=123) - default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_item_sk","ws_quantity","ws_list_price"] - <-Reducer 68 [BROADCAST_EDGE] vectorized - BROADCAST [RS_1764] - Group By Operator [GBY_1763] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 57 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1672] - Group By Operator [GBY_1669] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_1666] (rows=50 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_1660] - <-Reducer 93 [BROADCAST_EDGE] vectorized - BROADCAST [RS_1775] - Group By Operator [GBY_1774] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Reducer 92 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1773] - Group By Operator [GBY_1772] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_1771] (rows=362 width=4) - Output:["_col0"] - Please refer to the previous Group By Operator [GBY_1769] <-Reducer 6 [CONTAINS] Reduce Output Operator [RS_1464] PartitionCols:_col0, _col1, _col2, _col3, _col4 @@ -1155,15 +1130,15 @@ Stage-0 Select Operator [SEL_1510] (rows=7676736 width=94) Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_1509] (rows=7676736 width=94) - Conds:RS_1806._col0=RS_1785._col0(Inner),Output:["_col1","_col2"] + Conds:RS_1791._col0=RS_1770._col0(Inner),Output:["_col1","_col2"] <-Map 24 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1785] + SHUFFLE [RS_1770] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1782] + Please refer to the previous Select Operator [SEL_1767] <-Map 50 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1806] + SHUFFLE [RS_1791] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1805] + Please refer to the previous Select Operator [SEL_1790] <-Reducer 42 [CONTAINS] Reduce Output Operator [RS_1550] Group By Operator [GBY_1549] (rows=1 width=120) @@ -1173,15 +1148,15 @@ Stage-0 Select Operator [SEL_1546] (rows=3856907 width=114) Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_1545] (rows=3856907 width=114) - Conds:RS_1834._col0=RS_1813._col0(Inner),Output:["_col1","_col2"] + Conds:RS_1819._col0=RS_1798._col0(Inner),Output:["_col1","_col2"] <-Map 40 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1813] + SHUFFLE [RS_1798] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1810] + Please refer to the previous Select Operator [SEL_1795] <-Map 51 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1834] + SHUFFLE [RS_1819] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1833] + Please refer to the previous Select Operator [SEL_1818] <-Reducer 47 [CONTAINS] Reduce Output Operator [RS_1568] Group By Operator [GBY_1567] (rows=1 width=120) @@ -1191,15 +1166,15 @@ Stage-0 Select Operator [SEL_1564] (rows=14736682 width=0) Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_1563] (rows=14736682 width=0) - Conds:RS_1841._col0=RS_1627._col0(Inner),Output:["_col1","_col2"] - <-Map 102 [SIMPLE_EDGE] vectorized + Conds:RS_1826._col0=RS_1627._col0(Inner),Output:["_col1","_col2"] + <-Map 99 [SIMPLE_EDGE] vectorized SHUFFLE [RS_1627] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_1618] <-Map 46 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1841] + SHUFFLE [RS_1826] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1840] + Please refer to the previous Select Operator [SEL_1825] <-Reducer 4 [CUSTOM_SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_1655] Select Operator [SEL_1654] (rows=1 width=8) @@ -1221,7 +1196,7 @@ Stage-0 Output:["_col0"] Merge Join Operator [MERGEJOIN_1452] (rows=14736682 width=0) Conds:RS_1647._col0=RS_1625._col0(Inner),Output:["_col1"] - <-Map 102 [SIMPLE_EDGE] vectorized + <-Map 99 [SIMPLE_EDGE] vectorized SHUFFLE [RS_1625] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_1618] @@ -1238,15 +1213,15 @@ Stage-0 Select Operator [SEL_1492] (rows=7676736 width=3) Output:["_col0"] Merge Join Operator [MERGEJOIN_1491] (rows=7676736 width=3) - Conds:RS_1799._col0=RS_1783._col0(Inner),Output:["_col1"] + Conds:RS_1784._col0=RS_1768._col0(Inner),Output:["_col1"] <-Map 24 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1783] + SHUFFLE [RS_1768] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1782] + Please refer to the previous Select Operator [SEL_1767] <-Map 20 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1799] + SHUFFLE [RS_1784] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1798] + Please refer to the previous Select Operator [SEL_1783] <-Reducer 37 [CONTAINS] Reduce Output Operator [RS_1532] Group By Operator [GBY_1531] (rows=1 width=8) @@ -1256,18 +1231,18 @@ Stage-0 Select Operator [SEL_1528] (rows=3856907 width=3) Output:["_col0"] Merge Join Operator [MERGEJOIN_1527] (rows=3856907 width=3) - Conds:RS_1827._col0=RS_1811._col0(Inner),Output:["_col1"] + Conds:RS_1812._col0=RS_1796._col0(Inner),Output:["_col1"] <-Map 40 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1811] + SHUFFLE [RS_1796] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1810] + Please refer to the previous Select Operator [SEL_1795] <-Map 36 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1827] + SHUFFLE [RS_1812] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1826] + Please refer to the previous Select Operator [SEL_1811] <-Reducer 56 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1720] - Group By Operator [GBY_1719] (rows=1 width=132) + PARTITION_ONLY_SHUFFLE [RS_1715] + Group By Operator [GBY_1714] (rows=1 width=132) Output:["_col0","_col1","_col2","_col3","_col4"],aggregations:["sum(VALUE._col0)","count(VALUE._col1)"],keys:KEY._col0, KEY._col1, KEY._col2 <-Reducer 55 [SIMPLE_EDGE] SHUFFLE [RS_182] @@ -1277,11 +1252,53 @@ Stage-0 Select Operator [SEL_179] (rows=1 width=128) Output:["_col0","_col1","_col2","_col3"] Merge Join Operator [MERGEJOIN_1443] (rows=1 width=128) - Conds:RS_176._col1=RS_1710._col0(Inner),Output:["_col2","_col3","_col8","_col9","_col10"] + Conds:RS_176._col1=RS_1713._col0(Inner),Output:["_col2","_col3","_col8","_col9","_col10"] + <-Reducer 54 [ONE_TO_ONE_EDGE] + FORWARD [RS_176] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_1405] (rows=15062131 width=15) + Conds:RS_173._col1=RS_1700._col0(Inner),Output:["_col1","_col2","_col3","_col8","_col9","_col10"] + <-Map 69 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1700] + PartitionCols:_col0 + Select Operator [SEL_1688] (rows=462000 width=15) + Output:["_col0","_col1","_col2","_col3"] + Filter Operator [FIL_1679] (rows=462000 width=15) + predicate:i_item_sk is not null + Please refer to the previous TableScan [TS_91] + <-Reducer 53 [SIMPLE_EDGE] + SHUFFLE [RS_173] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_1404] (rows=15062131 width=4) + Conds:RS_1677._col0=RS_1661._col0(Inner),Output:["_col1","_col2","_col3"] + <-Map 57 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_1661] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_1660] + <-Map 52 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1677] + PartitionCols:_col0 + Select Operator [SEL_1676] (rows=550076554 width=118) + Output:["_col0","_col1","_col2","_col3"] + Filter Operator [FIL_1675] (rows=550076554 width=118) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_171_date_dim_d_date_sk_min) AND DynamicValue(RS_171_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_171_date_dim_d_date_sk_bloom_filter))) and ss_item_sk is not null and ss_sold_date_sk is not null) + TableScan [TS_82] (rows=575995635 width=118) + default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_quantity","ss_list_price"] + <-Reducer 58 [BROADCAST_EDGE] vectorized + BROADCAST [RS_1674] + Group By Operator [GBY_1673] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 57 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_1670] + Group By Operator [GBY_1667] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_1662] (rows=50 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_1660] <-Reducer 71 [ONE_TO_ONE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1710] + FORWARD [RS_1713] PartitionCols:_col0 - Group By Operator [GBY_1709] (rows=362 width=4) + Group By Operator [GBY_1712] (rows=362 width=4) Output:["_col0"],keys:KEY._col0 <-Reducer 70 [SIMPLE_EDGE] SHUFFLE [RS_167] @@ -1289,142 +1306,89 @@ Stage-0 Group By Operator [GBY_166] (rows=362 width=4) Output:["_col0"],keys:_col0 Merge Join Operator [MERGEJOIN_1412] (rows=724 width=4) - Conds:RS_1693._col1, _col2, _col3=RS_1708._col0, _col1, _col2(Inner),Output:["_col0"] + Conds:RS_1696._col1, _col2, _col3=RS_1711._col0, _col1, _col2(Inner),Output:["_col0"] <-Map 69 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1693] + SHUFFLE [RS_1696] PartitionCols:_col1, _col2, _col3 - Select Operator [SEL_1684] (rows=458612 width=15) + Select Operator [SEL_1687] (rows=458612 width=15) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_1675] (rows=458612 width=15) + Filter Operator [FIL_1678] (rows=458612 width=15) predicate:(i_brand_id is not null and i_category_id is not null and i_class_id is not null and i_item_sk is not null) Please refer to the previous TableScan [TS_91] - <-Reducer 76 [ONE_TO_ONE_EDGE] vectorized - FORWARD [RS_1708] + <-Reducer 75 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_1711] PartitionCols:_col0, _col1, _col2 - Select Operator [SEL_1707] (rows=1 width=12) + Select Operator [SEL_1710] (rows=1 width=12) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_1706] (rows=1 width=20) + Filter Operator [FIL_1709] (rows=1 width=20) predicate:(_col3 = 3L) - Group By Operator [GBY_1705] (rows=121728 width=19) + Group By Operator [GBY_1708] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Union 75 [SIMPLE_EDGE] - <-Reducer 74 [CONTAINS] vectorized - Reduce Output Operator [RS_1851] + <-Union 74 [SIMPLE_EDGE] + <-Reducer 73 [CONTAINS] vectorized + Reduce Output Operator [RS_1836] PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_1850] (rows=121728 width=19) + Group By Operator [GBY_1835] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(_col3)"],keys:_col0, _col1, _col2 - Group By Operator [GBY_1849] (rows=121728 width=19) + Group By Operator [GBY_1834] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Reducer 73 [SIMPLE_EDGE] + <-Reducer 72 [SIMPLE_EDGE] SHUFFLE [RS_111] PartitionCols:_col0, _col1, _col2 Group By Operator [GBY_110] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count()"],keys:_col5, _col6, _col7 Merge Join Operator [MERGEJOIN_1407] (rows=14628613 width=11) - Conds:RS_106._col1=RS_1694._col0(Inner),Output:["_col5","_col6","_col7"] + Conds:RS_106._col1=RS_1697._col0(Inner),Output:["_col5","_col6","_col7"] <-Map 69 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1694] + SHUFFLE [RS_1697] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1684] - <-Reducer 101 [SIMPLE_EDGE] + Please refer to the previous Select Operator [SEL_1687] + <-Reducer 98 [SIMPLE_EDGE] SHUFFLE [RS_106] PartitionCols:_col1 Please refer to the previous Merge Join Operator [MERGEJOIN_1406] - <-Reducer 78 [CONTAINS] vectorized - Reduce Output Operator [RS_1859] + <-Reducer 77 [CONTAINS] vectorized + Reduce Output Operator [RS_1844] PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_1858] (rows=121728 width=19) + Group By Operator [GBY_1843] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(_col3)"],keys:_col0, _col1, _col2 - Group By Operator [GBY_1857] (rows=121728 width=19) + Group By Operator [GBY_1842] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Reducer 77 [SIMPLE_EDGE] + <-Reducer 76 [SIMPLE_EDGE] SHUFFLE [RS_131] PartitionCols:_col0, _col1, _col2 Group By Operator [GBY_130] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count()"],keys:_col5, _col6, _col7 Merge Join Operator [MERGEJOIN_1409] (rows=7620440 width=11) - Conds:RS_126._col1=RS_1695._col0(Inner),Output:["_col5","_col6","_col7"] + Conds:RS_126._col1=RS_1698._col0(Inner),Output:["_col5","_col6","_col7"] <-Map 69 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1695] + SHUFFLE [RS_1698] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1684] - <-Reducer 104 [SIMPLE_EDGE] + Please refer to the previous Select Operator [SEL_1687] + <-Reducer 101 [SIMPLE_EDGE] SHUFFLE [RS_126] PartitionCols:_col1 Please refer to the previous Merge Join Operator [MERGEJOIN_1408] - <-Reducer 80 [CONTAINS] vectorized - Reduce Output Operator [RS_1867] + <-Reducer 79 [CONTAINS] vectorized + Reduce Output Operator [RS_1852] PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_1866] (rows=121728 width=19) + Group By Operator [GBY_1851] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(_col3)"],keys:_col0, _col1, _col2 - Group By Operator [GBY_1865] (rows=121728 width=19) + Group By Operator [GBY_1850] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Reducer 79 [SIMPLE_EDGE] + <-Reducer 78 [SIMPLE_EDGE] SHUFFLE [RS_152] PartitionCols:_col0, _col1, _col2 Group By Operator [GBY_151] (rows=121728 width=19) Output:["_col0","_col1","_col2","_col3"],aggregations:["count()"],keys:_col5, _col6, _col7 Merge Join Operator [MERGEJOIN_1411] (rows=3828623 width=11) - Conds:RS_147._col1=RS_1696._col0(Inner),Output:["_col5","_col6","_col7"] + Conds:RS_147._col1=RS_1699._col0(Inner),Output:["_col5","_col6","_col7"] <-Map 69 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1696] + SHUFFLE [RS_1699] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1684] - <-Reducer 106 [SIMPLE_EDGE] + Please refer to the previous Select Operator [SEL_1687] + <-Reducer 103 [SIMPLE_EDGE] SHUFFLE [RS_147] PartitionCols:_col1 Please refer to the previous Merge Join Operator [MERGEJOIN_1410] - <-Reducer 54 [ONE_TO_ONE_EDGE] - FORWARD [RS_176] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_1405] (rows=15062131 width=15) - Conds:RS_173._col1=RS_1697._col0(Inner),Output:["_col1","_col2","_col3","_col8","_col9","_col10"] - <-Map 69 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1697] - PartitionCols:_col0 - Select Operator [SEL_1685] (rows=462000 width=15) - Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_1676] (rows=462000 width=15) - predicate:i_item_sk is not null - Please refer to the previous TableScan [TS_91] - <-Reducer 53 [SIMPLE_EDGE] - SHUFFLE [RS_173] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_1404] (rows=15062131 width=4) - Conds:RS_1718._col0=RS_1661._col0(Inner),Output:["_col1","_col2","_col3"] - <-Map 57 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1661] - PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1660] - <-Map 52 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1718] - PartitionCols:_col0 - Select Operator [SEL_1717] (rows=550076554 width=118) - Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_1716] (rows=550076554 width=118) - predicate:((ss_item_sk BETWEEN DynamicValue(RS_177_item_i_item_sk_min) AND DynamicValue(RS_177_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_177_item_i_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_171_date_dim_d_date_sk_min) AND DynamicValue(RS_171_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_171_date_dim_d_date_sk_bloom_filter))) and ss_item_sk is not null and ss_sold_date_sk is not null) - TableScan [TS_82] (rows=575995635 width=118) - default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_quantity","ss_list_price"] - <-Reducer 58 [BROADCAST_EDGE] vectorized - BROADCAST [RS_1674] - Group By Operator [GBY_1673] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 57 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1670] - Group By Operator [GBY_1667] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_1662] (rows=50 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_1660] - <-Reducer 72 [BROADCAST_EDGE] vectorized - BROADCAST [RS_1715] - Group By Operator [GBY_1714] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Reducer 71 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1713] - Group By Operator [GBY_1712] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_1711] (rows=362 width=4) - Output:["_col0"] - Please refer to the previous Group By Operator [GBY_1709] diff --git a/ql/src/test/results/clientpositive/perf/tez/query16.q.out b/ql/src/test/results/clientpositive/perf/tez/query16.q.out index b09d953c4b..9c9c85f702 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query16.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query16.q.out @@ -73,18 +73,16 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 12 (BROADCAST_EDGE), Reducer 14 (BROADCAST_EDGE), Reducer 16 (BROADCAST_EDGE) -Map 17 <- Reducer 10 (BROADCAST_EDGE) +Map 1 <- Reducer 13 (BROADCAST_EDGE) +Map 15 <- Reducer 10 (BROADCAST_EDGE) Reducer 10 <- Reducer 4 (CUSTOM_SIMPLE_EDGE) -Reducer 12 <- Map 11 (CUSTOM_SIMPLE_EDGE) -Reducer 14 <- Map 13 (CUSTOM_SIMPLE_EDGE) -Reducer 16 <- Map 15 (CUSTOM_SIMPLE_EDGE) -Reducer 19 <- Map 18 (SIMPLE_EDGE) +Reducer 13 <- Map 12 (CUSTOM_SIMPLE_EDGE) +Reducer 17 <- Map 16 (SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 11 (SIMPLE_EDGE) -Reducer 3 <- Map 13 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 15 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Map 17 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) -Reducer 6 <- Reducer 19 (ONE_TO_ONE_EDGE), Reducer 5 (ONE_TO_ONE_EDGE) +Reducer 3 <- Map 12 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 4 <- Map 14 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 5 <- Map 15 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) +Reducer 6 <- Reducer 17 (ONE_TO_ONE_EDGE), Reducer 5 (ONE_TO_ONE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) Reducer 8 <- Reducer 7 (CUSTOM_SIMPLE_EDGE) Reducer 9 <- Reducer 8 (SIMPLE_EDGE) @@ -94,22 +92,22 @@ Stage-0 limit:-1 Stage-1 Reducer 9 vectorized - File Output Operator [FS_178] - Limit [LIM_177] (rows=1 width=240) + File Output Operator [FS_168] + Limit [LIM_167] (rows=1 width=240) Number of rows:100 - Select Operator [SEL_176] (rows=1 width=240) + Select Operator [SEL_166] (rows=1 width=240) Output:["_col0","_col1","_col2"] <-Reducer 8 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_175] - Select Operator [SEL_174] (rows=1 width=240) + SHUFFLE [RS_165] + Select Operator [SEL_164] (rows=1 width=240) Output:["_col1","_col2","_col3"] - Group By Operator [GBY_173] (rows=1 width=232) + Group By Operator [GBY_163] (rows=1 width=232) Output:["_col0","_col1","_col2"],aggregations:["count(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)"] <-Reducer 7 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_172] - Group By Operator [GBY_171] (rows=1 width=232) + PARTITION_ONLY_SHUFFLE [RS_162] + Group By Operator [GBY_161] (rows=1 width=232) Output:["_col0","_col1","_col2"],aggregations:["count(_col0)","sum(_col1)","sum(_col2)"] - Group By Operator [GBY_170] (rows=5150256 width=228) + Group By Operator [GBY_160] (rows=5150256 width=228) Output:["_col0","_col1","_col2"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)"],keys:KEY._col0 <-Reducer 6 [SIMPLE_EDGE] SHUFFLE [RS_74] @@ -121,20 +119,20 @@ Stage-0 Filter Operator [FIL_41] (rows=5150256 width=214) predicate:_col14 is null Merge Join Operator [MERGEJOIN_130] (rows=10300512 width=214) - Conds:RS_38._col4=RS_169._col0(Left Outer),Output:["_col4","_col5","_col6","_col14"] - <-Reducer 19 [ONE_TO_ONE_EDGE] vectorized - FORWARD [RS_169] + Conds:RS_38._col4=RS_159._col0(Left Outer),Output:["_col4","_col5","_col6","_col14"] + <-Reducer 17 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_159] PartitionCols:_col0 - Select Operator [SEL_168] (rows=18238808 width=8) + Select Operator [SEL_158] (rows=18238808 width=8) Output:["_col0","_col1"] - Group By Operator [GBY_167] (rows=18238808 width=4) + Group By Operator [GBY_157] (rows=18238808 width=4) Output:["_col0"],keys:KEY._col0 - <-Map 18 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_166] + <-Map 16 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_156] PartitionCols:_col0 - Group By Operator [GBY_165] (rows=28798881 width=4) + Group By Operator [GBY_155] (rows=28798881 width=4) Output:["_col0"],keys:cr_order_number - Filter Operator [FIL_164] (rows=28798881 width=4) + Filter Operator [FIL_154] (rows=28798881 width=4) predicate:cr_order_number is not null TableScan [TS_25] (rows=28798881 width=4) default@catalog_returns,cr1,Tbl:COMPLETE,Col:COMPLETE,Output:["cr_order_number"] @@ -144,18 +142,18 @@ Stage-0 Select Operator [SEL_37] (rows=5150256 width=200) Output:["_col4","_col5","_col6"] Merge Join Operator [MERGEJOIN_129] (rows=5150256 width=202) - Conds:RS_34._col4=RS_163._col0(Left Semi),Output:["_col3","_col4","_col5","_col6","_col14"],residual filter predicates:{(_col3 <> _col14)} + Conds:RS_34._col4=RS_153._col0(Left Semi),Output:["_col3","_col4","_col5","_col6","_col14"],residual filter predicates:{(_col3 <> _col14)} <-Reducer 4 [SIMPLE_EDGE] SHUFFLE [RS_34] PartitionCols:_col4 Merge Join Operator [MERGEJOIN_128] (rows=5150256 width=200) - Conds:RS_18._col2=RS_149._col0(Inner),Output:["_col3","_col4","_col5","_col6"] - <-Map 15 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_149] + Conds:RS_18._col2=RS_147._col0(Inner),Output:["_col3","_col4","_col5","_col6"] + <-Map 14 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_147] PartitionCols:_col0 - Select Operator [SEL_148] (rows=10 width=102) + Select Operator [SEL_146] (rows=10 width=102) Output:["_col0"] - Filter Operator [FIL_147] (rows=10 width=102) + Filter Operator [FIL_145] (rows=10 width=102) predicate:((cc_county) IN ('Ziebach County', 'Levy County', 'Huron County', 'Franklin Parish', 'Daviess County') and cc_call_center_sk is not null) TableScan [TS_9] (rows=60 width=102) default@call_center,call_center,Tbl:COMPLETE,Col:COMPLETE,Output:["cc_call_center_sk","cc_county"] @@ -163,13 +161,13 @@ Stage-0 SHUFFLE [RS_18] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_127] (rows=30901534 width=230) - Conds:RS_15._col1=RS_141._col0(Inner),Output:["_col2","_col3","_col4","_col5","_col6"] - <-Map 13 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_141] + Conds:RS_15._col1=RS_133._col0(Inner),Output:["_col2","_col3","_col4","_col5","_col6"] + <-Map 12 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_133] PartitionCols:_col0 - Select Operator [SEL_140] (rows=784314 width=90) + Select Operator [SEL_132] (rows=784314 width=90) Output:["_col0"] - Filter Operator [FIL_139] (rows=784314 width=90) + Filter Operator [FIL_131] (rows=784314 width=90) predicate:((ca_state = 'NY') and ca_address_sk is not null) TableScan [TS_6] (rows=40000000 width=90) default@customer_address,customer_address,Tbl:COMPLETE,Col:COMPLETE,Output:["ca_address_sk","ca_state"] @@ -177,72 +175,50 @@ Stage-0 SHUFFLE [RS_15] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_126] (rows=31519516 width=234) - Conds:RS_157._col0=RS_133._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6"] - <-Map 11 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_133] - PartitionCols:_col0 - Select Operator [SEL_132] (rows=8116 width=98) - Output:["_col0"] - Filter Operator [FIL_131] (rows=8116 width=98) - predicate:(CAST( d_date AS TIMESTAMP) BETWEEN TIMESTAMP'2001-04-01 00:00:00' AND TIMESTAMP'2001-05-31 00:00:00' and d_date_sk is not null) - TableScan [TS_3] (rows=73049 width=98) - default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"] + Conds:RS_141._col0=RS_144._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_157] + SHUFFLE [RS_141] PartitionCols:_col0 - Select Operator [SEL_156] (rows=283695062 width=243) + Select Operator [SEL_140] (rows=283695062 width=243) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] - Filter Operator [FIL_155] (rows=283695062 width=243) - predicate:((cs_call_center_sk BETWEEN DynamicValue(RS_19_call_center_cc_call_center_sk_min) AND DynamicValue(RS_19_call_center_cc_call_center_sk_max) and in_bloom_filter(cs_call_center_sk, DynamicValue(RS_19_call_center_cc_call_center_sk_bloom_filter))) and (cs_ship_addr_sk BETWEEN DynamicValue(RS_16_customer_address_ca_address_sk_min) AND DynamicValue(RS_16_customer_address_ca_address_sk_max) and in_bloom_filter(cs_ship_addr_sk, DynamicValue(RS_16_customer_address_ca_address_sk_bloom_filter))) and (cs_ship_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(cs_ship_date_sk, DynamicValue(RS_13_date_dim_d_date_sk_bloom_filter))) and cs_call_center_sk is not null and cs_order_number is not null and cs_ship_addr_sk is not null and cs_ship_date_sk is not null) + Filter Operator [FIL_139] (rows=283695062 width=243) + predicate:((cs_ship_addr_sk BETWEEN DynamicValue(RS_16_customer_address_ca_address_sk_min) AND DynamicValue(RS_16_customer_address_ca_address_sk_max) and in_bloom_filter(cs_ship_addr_sk, DynamicValue(RS_16_customer_address_ca_address_sk_bloom_filter))) and cs_call_center_sk is not null and cs_order_number is not null and cs_ship_addr_sk is not null and cs_ship_date_sk is not null) TableScan [TS_0] (rows=287989836 width=243) default@catalog_sales,cs1,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_ship_date_sk","cs_ship_addr_sk","cs_call_center_sk","cs_warehouse_sk","cs_order_number","cs_ext_ship_cost","cs_net_profit"] - <-Reducer 12 [BROADCAST_EDGE] vectorized + <-Reducer 13 [BROADCAST_EDGE] vectorized BROADCAST [RS_138] Group By Operator [GBY_137] (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 + <-Map 12 [CUSTOM_SIMPLE_EDGE] vectorized SHUFFLE [RS_136] Group By Operator [GBY_135] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_134] (rows=8116 width=4) + Select Operator [SEL_134] (rows=784314 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_132] - <-Reducer 14 [BROADCAST_EDGE] vectorized - BROADCAST [RS_146] - Group By Operator [GBY_145] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 13 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_144] - Group By Operator [GBY_143] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_142] (rows=784314 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_140] - <-Reducer 16 [BROADCAST_EDGE] vectorized - BROADCAST [RS_154] - Group By Operator [GBY_153] (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_152] - Group By Operator [GBY_151] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_150] (rows=10 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_148] - <-Map 17 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_163] + <-Map 11 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_144] + PartitionCols:_col0 + Select Operator [SEL_143] (rows=8116 width=98) + Output:["_col0"] + Filter Operator [FIL_142] (rows=8116 width=98) + predicate:(CAST( d_date AS TIMESTAMP) BETWEEN TIMESTAMP'2001-04-01 00:00:00' AND TIMESTAMP'2001-05-31 00:00:00' and d_date_sk is not null) + TableScan [TS_3] (rows=73049 width=98) + default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"] + <-Map 15 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_153] PartitionCols:_col0 - Group By Operator [GBY_162] (rows=286548719 width=7) + Group By Operator [GBY_152] (rows=286548719 width=7) Output:["_col0","_col1"],keys:_col0, _col1 - Select Operator [SEL_161] (rows=286548719 width=7) + Select Operator [SEL_151] (rows=286548719 width=7) Output:["_col0","_col1"] - Filter Operator [FIL_160] (rows=286548719 width=7) + Filter Operator [FIL_150] (rows=286548719 width=7) predicate:((cs_order_number BETWEEN DynamicValue(RS_34_cs1_cs_order_number_min) AND DynamicValue(RS_34_cs1_cs_order_number_max) and in_bloom_filter(cs_order_number, DynamicValue(RS_34_cs1_cs_order_number_bloom_filter))) and cs_order_number is not null and cs_warehouse_sk is not null) TableScan [TS_22] (rows=287989836 width=7) default@catalog_sales,cs2,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_warehouse_sk","cs_order_number"] <-Reducer 10 [BROADCAST_EDGE] vectorized - BROADCAST [RS_159] - Group By Operator [GBY_158] (rows=1 width=12) + BROADCAST [RS_149] + Group By Operator [GBY_148] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Reducer 4 [CUSTOM_SIMPLE_EDGE] SHUFFLE [RS_116] diff --git a/ql/src/test/results/clientpositive/perf/tez/query17.q.out b/ql/src/test/results/clientpositive/perf/tez/query17.q.out index fa576c3479..0abd617bcd 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query17.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query17.q.out @@ -103,20 +103,16 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 12 (BROADCAST_EDGE), Reducer 13 (BROADCAST_EDGE), Reducer 16 (BROADCAST_EDGE), Reducer 17 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) -Map 19 <- Reducer 14 (BROADCAST_EDGE), Reducer 16 (BROADCAST_EDGE), Reducer 17 (BROADCAST_EDGE) -Reducer 10 <- Map 19 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) -Reducer 11 <- Reducer 10 (SIMPLE_EDGE), Reducer 15 (SIMPLE_EDGE) -Reducer 12 <- Reducer 10 (CUSTOM_SIMPLE_EDGE) -Reducer 13 <- Reducer 10 (CUSTOM_SIMPLE_EDGE) -Reducer 14 <- Map 8 (CUSTOM_SIMPLE_EDGE) -Reducer 15 <- Map 20 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) -Reducer 16 <- Reducer 15 (CUSTOM_SIMPLE_EDGE) -Reducer 17 <- Reducer 15 (CUSTOM_SIMPLE_EDGE) +Map 1 <- Reducer 9 (BROADCAST_EDGE) +Map 15 <- Reducer 13 (BROADCAST_EDGE) +Reducer 10 <- Map 15 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) +Reducer 11 <- Reducer 10 (SIMPLE_EDGE), Reducer 12 (SIMPLE_EDGE) +Reducer 12 <- Map 16 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) +Reducer 13 <- Reducer 12 (CUSTOM_SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) -Reducer 3 <- Map 18 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 3 <- Map 14 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 11 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Map 21 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) +Reducer 5 <- Map 17 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) Reducer 9 <- Map 8 (CUSTOM_SIMPLE_EDGE) @@ -126,16 +122,16 @@ Stage-0 limit:100 Stage-1 Reducer 7 vectorized - File Output Operator [FS_263] - Limit [LIM_262] (rows=100 width=466) + File Output Operator [FS_250] + Limit [LIM_249] (rows=100 width=466) Number of rows:100 - Select Operator [SEL_261] (rows=4815969644 width=466) + Select Operator [SEL_248] (rows=4815969644 width=466) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14"] <-Reducer 6 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_260] - Select Operator [SEL_259] (rows=4815969644 width=466) + SHUFFLE [RS_247] + Select Operator [SEL_246] (rows=4815969644 width=466) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13"] - Group By Operator [GBY_258] (rows=4815969644 width=466) + Group By Operator [GBY_245] (rows=4815969644 width=466) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14"],aggregations:["count(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)","sum(VALUE._col3)","count(VALUE._col4)","sum(VALUE._col5)","sum(VALUE._col6)","sum(VALUE._col7)","count(VALUE._col8)","sum(VALUE._col9)","sum(VALUE._col10)","sum(VALUE._col11)"],keys:KEY._col0, KEY._col1, KEY._col2 <-Reducer 5 [SIMPLE_EDGE] SHUFFLE [RS_50] @@ -147,13 +143,13 @@ Stage-0 Select Operator [SEL_47] (rows=4815969644 width=381) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11"] Merge Join Operator [MERGEJOIN_213] (rows=4815969644 width=381) - Conds:RS_44._col3=RS_257._col0(Inner),Output:["_col5","_col9","_col10","_col14","_col21","_col25"] - <-Map 21 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_257] + Conds:RS_44._col3=RS_244._col0(Inner),Output:["_col5","_col9","_col10","_col14","_col21","_col25"] + <-Map 17 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_244] PartitionCols:_col0 - Select Operator [SEL_256] (rows=1704 width=90) + Select Operator [SEL_243] (rows=1704 width=90) Output:["_col0","_col1"] - Filter Operator [FIL_255] (rows=1704 width=90) + Filter Operator [FIL_242] (rows=1704 width=90) predicate:s_store_sk is not null TableScan [TS_32] (rows=1704 width=90) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_state"] @@ -167,11 +163,34 @@ Stage-0 PartitionCols:_col7, _col8, _col9 Merge Join Operator [MERGEJOIN_211] (rows=540026342 width=19) Conds:RS_28._col2, _col1=RS_29._col1, _col2(Inner),Output:["_col3","_col7","_col8","_col9","_col10"] + <-Reducer 12 [SIMPLE_EDGE] + PARTITION_ONLY_SHUFFLE [RS_29] + PartitionCols:_col1, _col2 + Merge Join Operator [MERGEJOIN_210] (rows=2681277 width=10) + Conds:RS_236._col0=RS_223._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + <-Map 8 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_223] + PartitionCols:_col0 + Select Operator [SEL_219] (rows=3652 width=94) + Output:["_col0"] + Filter Operator [FIL_216] (rows=3652 width=94) + predicate:((d_quarter_name) IN ('2000Q1', '2000Q2', '2000Q3') and d_date_sk is not null) + TableScan [TS_3] (rows=73049 width=94) + default@date_dim,d1,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_quarter_name"] + <-Map 16 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_236] + PartitionCols:_col0 + Select Operator [SEL_235] (rows=53632139 width=19) + Output:["_col0","_col1","_col2","_col3","_col4"] + Filter Operator [FIL_234] (rows=53632139 width=19) + predicate:(sr_customer_sk is not null and sr_item_sk is not null and sr_returned_date_sk is not null and sr_ticket_number is not null) + TableScan [TS_15] (rows=57591150 width=19) + default@store_returns,store_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["sr_returned_date_sk","sr_item_sk","sr_customer_sk","sr_ticket_number","sr_return_quantity"] <-Reducer 10 [SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_28] + SHUFFLE [RS_28] PartitionCols:_col2, _col1 Merge Join Operator [MERGEJOIN_209] (rows=14254135 width=11) - Conds:RS_244._col0=RS_222._col0(Inner),Output:["_col1","_col2","_col3"] + Conds:RS_241._col0=RS_222._col0(Inner),Output:["_col1","_col2","_col3"] <-Map 8 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_222] PartitionCols:_col0 @@ -179,83 +198,38 @@ Stage-0 Output:["_col0"] Filter Operator [FIL_215] (rows=3652 width=94) predicate:((d_quarter_name) IN ('2000Q1', '2000Q2', '2000Q3') and d_date_sk is not null) - TableScan [TS_3] (rows=73049 width=94) - default@date_dim,d1,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_quarter_name"] - <-Map 19 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_244] + Please refer to the previous TableScan [TS_3] + <-Map 15 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_241] PartitionCols:_col0 - Select Operator [SEL_243] (rows=285117831 width=15) + Select Operator [SEL_240] (rows=285117831 width=15) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_242] (rows=285117831 width=15) - predicate:((cs_bill_customer_sk BETWEEN DynamicValue(RS_29_store_returns_sr_customer_sk_min) AND DynamicValue(RS_29_store_returns_sr_customer_sk_max) and in_bloom_filter(cs_bill_customer_sk, DynamicValue(RS_29_store_returns_sr_customer_sk_bloom_filter))) and (cs_item_sk BETWEEN DynamicValue(RS_29_store_returns_sr_item_sk_min) AND DynamicValue(RS_29_store_returns_sr_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_29_store_returns_sr_item_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_26_d3_d_date_sk_min) AND DynamicValue(RS_26_d3_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_26_d3_d_date_sk_bloom_filter))) and cs_bill_customer_sk is not null and cs_item_sk is not null and cs_sold_date_sk is not null) + Filter Operator [FIL_239] (rows=285117831 width=15) + predicate:((cs_bill_customer_sk BETWEEN DynamicValue(RS_29_store_returns_sr_customer_sk_min) AND DynamicValue(RS_29_store_returns_sr_customer_sk_max) and in_bloom_filter(cs_bill_customer_sk, DynamicValue(RS_29_store_returns_sr_customer_sk_bloom_filter))) and cs_bill_customer_sk is not null and cs_item_sk is not null and cs_sold_date_sk is not null) TableScan [TS_9] (rows=287989836 width=15) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_bill_customer_sk","cs_item_sk","cs_quantity"] - <-Reducer 16 [BROADCAST_EDGE] vectorized - BROADCAST [RS_236] - Group By Operator [GBY_234] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Reducer 15 [CUSTOM_SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_111] - Group By Operator [GBY_110] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_109] (rows=2681277 width=8) - Output:["_col0"] - Merge Join Operator [MERGEJOIN_210] (rows=2681277 width=10) - Conds:RS_233._col0=RS_224._col0(Inner),Output:["_col1","_col2","_col3","_col4"] - <-Map 8 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_224] - PartitionCols:_col0 - Select Operator [SEL_219] (rows=3652 width=94) - Output:["_col0"] - Filter Operator [FIL_216] (rows=3652 width=94) - predicate:((d_quarter_name) IN ('2000Q1', '2000Q2', '2000Q3') and d_date_sk is not null) - Please refer to the previous TableScan [TS_3] - <-Map 20 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_233] - PartitionCols:_col0 - Select Operator [SEL_232] (rows=53632139 width=19) - Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_231] (rows=53632139 width=19) - predicate:(sr_customer_sk is not null and sr_item_sk is not null and sr_returned_date_sk is not null and sr_ticket_number is not null) - TableScan [TS_15] (rows=57591150 width=19) - default@store_returns,store_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["sr_returned_date_sk","sr_item_sk","sr_customer_sk","sr_ticket_number","sr_return_quantity"] - <-Reducer 17 [BROADCAST_EDGE] vectorized - BROADCAST [RS_241] - Group By Operator [GBY_239] (rows=1 width=12) + <-Reducer 13 [BROADCAST_EDGE] vectorized + BROADCAST [RS_238] + Group By Operator [GBY_237] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Reducer 15 [CUSTOM_SIMPLE_EDGE] + <-Reducer 12 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_126] Group By Operator [GBY_125] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] Select Operator [SEL_124] (rows=2681277 width=2) Output:["_col0"] Please refer to the previous Merge Join Operator [MERGEJOIN_210] - <-Reducer 14 [BROADCAST_EDGE] vectorized - BROADCAST [RS_238] - Group By Operator [GBY_237] (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_228] - Group By Operator [GBY_226] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_223] (rows=3652 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_218] - <-Reducer 15 [SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_29] - PartitionCols:_col1, _col2 - Please refer to the previous Merge Join Operator [MERGEJOIN_210] <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_41] PartitionCols:_col1, _col2, _col4 Merge Join Operator [MERGEJOIN_208] (rows=27749405 width=294) - Conds:RS_38._col1=RS_254._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col9","_col10"] - <-Map 18 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_254] + Conds:RS_38._col1=RS_233._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col9","_col10"] + <-Map 14 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_233] PartitionCols:_col0 - Select Operator [SEL_253] (rows=462000 width=288) + Select Operator [SEL_232] (rows=462000 width=288) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_252] (rows=462000 width=288) + Filter Operator [FIL_231] (rows=462000 width=288) predicate:i_item_sk is not null TableScan [TS_6] (rows=462000 width=288) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_item_id","i_item_desc"] @@ -263,7 +237,7 @@ Stage-0 SHUFFLE [RS_38] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_207] (rows=27749405 width=10) - Conds:RS_251._col0=RS_220._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5"] + Conds:RS_230._col0=RS_220._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5"] <-Map 8 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_220] PartitionCols:_col0 @@ -273,49 +247,21 @@ Stage-0 predicate:((d_quarter_name = '2000Q1') and d_date_sk is not null) Please refer to the previous TableScan [TS_3] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_251] + SHUFFLE [RS_230] PartitionCols:_col0 - Select Operator [SEL_250] (rows=501694138 width=23) + Select Operator [SEL_229] (rows=501694138 width=23) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] - Filter Operator [FIL_249] (rows=501694138 width=23) - predicate:((ss_customer_sk BETWEEN DynamicValue(RS_28_catalog_sales_cs_bill_customer_sk_min) AND DynamicValue(RS_28_catalog_sales_cs_bill_customer_sk_max) and in_bloom_filter(ss_customer_sk, DynamicValue(RS_28_catalog_sales_cs_bill_customer_sk_bloom_filter))) and (ss_customer_sk BETWEEN DynamicValue(RS_29_store_returns_sr_customer_sk_min) AND DynamicValue(RS_29_store_returns_sr_customer_sk_max) and in_bloom_filter(ss_customer_sk, DynamicValue(RS_29_store_returns_sr_customer_sk_bloom_filter))) and (ss_item_sk BETWEEN DynamicValue(RS_28_catalog_sales_cs_item_sk_min) AND DynamicValue(RS_28_catalog_sales_cs_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_28_catalog_sales_cs_item_sk_bloom_filter))) and (ss_item_sk BETWEEN DynamicValue(RS_29_store_returns_sr_item_sk_min) AND DynamicValue(RS_29_store_returns_sr_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_29_store_returns_sr_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_36_d1_d_date_sk_min) AND DynamicValue(RS_36_d1_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_36_d1_d_date_sk_bloom_filter))) and ss_customer_sk is not null and ss_item_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null and ss_ticket_number is not null) + Filter Operator [FIL_228] (rows=501694138 width=23) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_36_d1_d_date_sk_min) AND DynamicValue(RS_36_d1_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_36_d1_d_date_sk_bloom_filter))) and ss_customer_sk is not null and ss_item_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null and ss_ticket_number is not null) TableScan [TS_0] (rows=575995635 width=23) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_customer_sk","ss_store_sk","ss_ticket_number","ss_quantity"] - <-Reducer 16 [BROADCAST_EDGE] vectorized - BROADCAST [RS_235] - Please refer to the previous Group By Operator [GBY_234] - <-Reducer 17 [BROADCAST_EDGE] vectorized - BROADCAST [RS_240] - Please refer to the previous Group By Operator [GBY_239] - <-Reducer 12 [BROADCAST_EDGE] vectorized - BROADCAST [RS_246] - Group By Operator [GBY_245] (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_116] - Group By Operator [GBY_115] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_114] (rows=14254135 width=8) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_209] - <-Reducer 13 [BROADCAST_EDGE] vectorized - BROADCAST [RS_248] - Group By Operator [GBY_247] (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_131] - Group By Operator [GBY_130] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_129] (rows=14254135 width=7) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_209] <-Reducer 9 [BROADCAST_EDGE] vectorized - BROADCAST [RS_230] - Group By Operator [GBY_229] (rows=1 width=12) + BROADCAST [RS_227] + Group By Operator [GBY_226] (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_227] - Group By Operator [GBY_225] (rows=1 width=12) + PARTITION_ONLY_SHUFFLE [RS_225] + Group By Operator [GBY_224] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] Select Operator [SEL_221] (rows=101 width=4) Output:["_col0"] diff --git a/ql/src/test/results/clientpositive/perf/tez/query18.q.out b/ql/src/test/results/clientpositive/perf/tez/query18.q.out index 58fb7a79f5..dce76d29bb 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query18.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query18.q.out @@ -81,34 +81,32 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 10 <- Reducer 15 (BROADCAST_EDGE), Reducer 17 (BROADCAST_EDGE), Reducer 7 (BROADCAST_EDGE) -Reducer 11 <- Map 10 (SIMPLE_EDGE), Map 14 (SIMPLE_EDGE) +Map 9 <- Reducer 14 (BROADCAST_EDGE) +Reducer 10 <- Map 13 (SIMPLE_EDGE), Map 9 (SIMPLE_EDGE) +Reducer 11 <- Map 15 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE) Reducer 12 <- Map 16 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE) -Reducer 13 <- Map 18 (SIMPLE_EDGE), Reducer 12 (SIMPLE_EDGE) -Reducer 15 <- Map 14 (CUSTOM_SIMPLE_EDGE) -Reducer 17 <- Map 16 (CUSTOM_SIMPLE_EDGE) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) -Reducer 3 <- Map 9 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Reducer 13 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 14 <- Map 13 (CUSTOM_SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) +Reducer 3 <- Map 8 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 4 <- Reducer 12 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) -Reducer 7 <- Reducer 3 (CUSTOM_SIMPLE_EDGE) Stage-0 Fetch Operator limit:100 Stage-1 Reducer 6 vectorized - File Output Operator [FS_182] - Limit [LIM_181] (rows=100 width=1165) + File Output Operator [FS_175] + Limit [LIM_174] (rows=100 width=1165) Number of rows:100 - Select Operator [SEL_180] (rows=10969055 width=1165) + Select Operator [SEL_173] (rows=10969055 width=1165) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10"] <-Reducer 5 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_179] - Select Operator [SEL_178] (rows=10969055 width=1165) + SHUFFLE [RS_172] + Select Operator [SEL_171] (rows=10969055 width=1165) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10"] - Group By Operator [GBY_177] (rows=10969055 width=1229) + Group By Operator [GBY_170] (rows=10969055 width=1229) Output:["_col0","_col1","_col2","_col3","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17","_col18"],aggregations:["sum(VALUE._col0)","count(VALUE._col1)","sum(VALUE._col2)","count(VALUE._col3)","sum(VALUE._col4)","count(VALUE._col5)","sum(VALUE._col6)","count(VALUE._col7)","sum(VALUE._col8)","count(VALUE._col9)","sum(VALUE._col10)","count(VALUE._col11)","sum(VALUE._col12)","count(VALUE._col13)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4 <-Reducer 4 [SIMPLE_EDGE] SHUFFLE [RS_43] @@ -119,79 +117,42 @@ Stage-0 Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10"] Merge Join Operator [MERGEJOIN_143] (rows=2193811 width=618) Conds:RS_37._col0=RS_38._col3(Inner),Output:["_col4","_col6","_col7","_col8","_col11","_col16","_col17","_col18","_col19","_col20","_col26"] - <-Reducer 3 [SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_37] - PartitionCols:_col0 - Merge Join Operator [MERGEJOIN_139] (rows=4959744 width=287) - Conds:RS_34._col1=RS_152._col0(Inner),Output:["_col0","_col4","_col6","_col7","_col8"] - <-Map 9 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_152] - PartitionCols:_col0 - Select Operator [SEL_151] (rows=1861800 width=4) - Output:["_col0"] - Filter Operator [FIL_150] (rows=1861800 width=4) - predicate:cd_demo_sk is not null - TableScan [TS_6] (rows=1861800 width=4) - default@customer_demographics,cd2,Tbl:COMPLETE,Col:COMPLETE,Output:["cd_demo_sk"] - <-Reducer 2 [SIMPLE_EDGE] - SHUFFLE [RS_34] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_138] (rows=4890586 width=290) - Conds:RS_146._col2=RS_149._col0(Inner),Output:["_col0","_col1","_col4","_col6","_col7","_col8"] - <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_146] - PartitionCols:_col2 - Select Operator [SEL_145] (rows=35631408 width=19) - Output:["_col0","_col1","_col2","_col4"] - Filter Operator [FIL_144] (rows=35631408 width=19) - predicate:((c_birth_month) IN (9, 5, 12, 4, 1, 10) and c_current_addr_sk is not null and c_current_cdemo_sk is not null and c_customer_sk is not null) - TableScan [TS_0] (rows=80000000 width=19) - default@customer,customer,Tbl:COMPLETE,Col:COMPLETE,Output:["c_customer_sk","c_current_cdemo_sk","c_current_addr_sk","c_birth_month","c_birth_year"] - <-Map 8 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_149] - PartitionCols:_col0 - Select Operator [SEL_148] (rows=5490196 width=285) - Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_147] (rows=5490196 width=285) - predicate:((ca_state) IN ('ND', 'WI', 'AL', 'NC', 'OK', 'MS', 'TN') and ca_address_sk is not null) - TableScan [TS_3] (rows=40000000 width=285) - default@customer_address,customer_address,Tbl:COMPLETE,Col:COMPLETE,Output:["ca_address_sk","ca_county","ca_state","ca_country"] - <-Reducer 13 [SIMPLE_EDGE] + <-Reducer 12 [SIMPLE_EDGE] SHUFFLE [RS_38] PartitionCols:_col3 Select Operator [SEL_30] (rows=15983481 width=529) Output:["_col1","_col3","_col6","_col7","_col8","_col9","_col10","_col16"] Merge Join Operator [MERGEJOIN_142] (rows=15983481 width=529) - Conds:RS_27._col3=RS_176._col0(Inner),Output:["_col1","_col4","_col5","_col6","_col7","_col8","_col14","_col16"] - <-Map 18 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_176] + Conds:RS_27._col3=RS_169._col0(Inner),Output:["_col1","_col4","_col5","_col6","_col7","_col8","_col14","_col16"] + <-Map 16 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_169] PartitionCols:_col0 - Select Operator [SEL_175] (rows=462000 width=104) + Select Operator [SEL_168] (rows=462000 width=104) Output:["_col0","_col1"] - Filter Operator [FIL_174] (rows=462000 width=104) + Filter Operator [FIL_167] (rows=462000 width=104) predicate:i_item_sk is not null TableScan [TS_18] (rows=462000 width=104) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_item_id"] - <-Reducer 12 [SIMPLE_EDGE] + <-Reducer 11 [SIMPLE_EDGE] SHUFFLE [RS_27] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_141] (rows=15983481 width=433) - Conds:RS_24._col2=RS_163._col0(Inner),Output:["_col1","_col3","_col4","_col5","_col6","_col7","_col8","_col14"] - <-Map 16 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_163] + Conds:RS_24._col2=RS_166._col0(Inner),Output:["_col1","_col3","_col4","_col5","_col6","_col7","_col8","_col14"] + <-Map 15 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_166] PartitionCols:_col0 - Select Operator [SEL_162] (rows=103433 width=184) + Select Operator [SEL_165] (rows=103433 width=184) Output:["_col0","_col3"] - Filter Operator [FIL_161] (rows=103433 width=187) + Filter Operator [FIL_164] (rows=103433 width=187) predicate:((cd_education_status = 'College') and (cd_gender = 'M') and cd_demo_sk is not null) TableScan [TS_15] (rows=1861800 width=187) default@customer_demographics,cd1,Tbl:COMPLETE,Col:COMPLETE,Output:["cd_demo_sk","cd_gender","cd_education_status","cd_dep_count"] - <-Reducer 11 [SIMPLE_EDGE] + <-Reducer 10 [SIMPLE_EDGE] SHUFFLE [RS_24] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_140] (rows=100578970 width=459) - Conds:RS_173._col0=RS_155._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8"] - <-Map 14 [SIMPLE_EDGE] vectorized + Conds:RS_163._col0=RS_155._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8"] + <-Map 13 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_155] PartitionCols:_col0 Select Operator [SEL_154] (rows=652 width=8) @@ -200,46 +161,61 @@ Stage-0 predicate:((d_year = 2001) and d_date_sk is not null) TableScan [TS_12] (rows=73049 width=8) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year"] - <-Map 10 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_173] + <-Map 9 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_163] PartitionCols:_col0 - Select Operator [SEL_172] (rows=283692098 width=466) + Select Operator [SEL_162] (rows=283692098 width=466) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8"] - Filter Operator [FIL_171] (rows=283692098 width=466) - predicate:((cs_bill_cdemo_sk BETWEEN DynamicValue(RS_25_cd1_cd_demo_sk_min) AND DynamicValue(RS_25_cd1_cd_demo_sk_max) and in_bloom_filter(cs_bill_cdemo_sk, DynamicValue(RS_25_cd1_cd_demo_sk_bloom_filter))) and (cs_bill_customer_sk BETWEEN DynamicValue(RS_37_customer_c_customer_sk_min) AND DynamicValue(RS_37_customer_c_customer_sk_max) and in_bloom_filter(cs_bill_customer_sk, DynamicValue(RS_37_customer_c_customer_sk_bloom_filter))) and (cs_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(cs_sold_date_sk, DynamicValue(RS_22_date_dim_d_date_sk_bloom_filter))) and cs_bill_cdemo_sk is not null and cs_bill_customer_sk is not null and cs_item_sk is not null and cs_sold_date_sk is not null) + Filter Operator [FIL_161] (rows=283692098 width=466) + predicate:((cs_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(cs_sold_date_sk, DynamicValue(RS_22_date_dim_d_date_sk_bloom_filter))) and cs_bill_cdemo_sk is not null and cs_bill_customer_sk is not null and cs_item_sk is not null and cs_sold_date_sk is not null) TableScan [TS_9] (rows=287989836 width=466) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_bill_customer_sk","cs_bill_cdemo_sk","cs_item_sk","cs_quantity","cs_list_price","cs_sales_price","cs_coupon_amt","cs_net_profit"] - <-Reducer 15 [BROADCAST_EDGE] vectorized + <-Reducer 14 [BROADCAST_EDGE] vectorized BROADCAST [RS_160] Group By Operator [GBY_159] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 14 [CUSTOM_SIMPLE_EDGE] vectorized + <-Map 13 [CUSTOM_SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_158] Group By Operator [GBY_157] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] Select Operator [SEL_156] (rows=652 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_154] - <-Reducer 17 [BROADCAST_EDGE] vectorized - BROADCAST [RS_168] - Group By Operator [GBY_167] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 16 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_166] - Group By Operator [GBY_165] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_164] (rows=103433 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_162] - <-Reducer 7 [BROADCAST_EDGE] vectorized - BROADCAST [RS_170] - Group By Operator [GBY_169] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=4890586)"] - <-Reducer 3 [CUSTOM_SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_120] - Group By Operator [GBY_119] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=4890586)"] - Select Operator [SEL_118] (rows=4959744 width=4) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_139] + <-Reducer 3 [SIMPLE_EDGE] + SHUFFLE [RS_37] + PartitionCols:_col0 + Merge Join Operator [MERGEJOIN_139] (rows=4959744 width=287) + Conds:RS_34._col1=RS_152._col0(Inner),Output:["_col0","_col4","_col6","_col7","_col8"] + <-Map 8 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_152] + PartitionCols:_col0 + Select Operator [SEL_151] (rows=1861800 width=4) + Output:["_col0"] + Filter Operator [FIL_150] (rows=1861800 width=4) + predicate:cd_demo_sk is not null + TableScan [TS_6] (rows=1861800 width=4) + default@customer_demographics,cd2,Tbl:COMPLETE,Col:COMPLETE,Output:["cd_demo_sk"] + <-Reducer 2 [SIMPLE_EDGE] + SHUFFLE [RS_34] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_138] (rows=4890586 width=290) + Conds:RS_146._col2=RS_149._col0(Inner),Output:["_col0","_col1","_col4","_col6","_col7","_col8"] + <-Map 1 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_146] + PartitionCols:_col2 + Select Operator [SEL_145] (rows=35631408 width=19) + Output:["_col0","_col1","_col2","_col4"] + Filter Operator [FIL_144] (rows=35631408 width=19) + predicate:((c_birth_month) IN (9, 5, 12, 4, 1, 10) and c_current_addr_sk is not null and c_current_cdemo_sk is not null and c_customer_sk is not null) + TableScan [TS_0] (rows=80000000 width=19) + default@customer,customer,Tbl:COMPLETE,Col:COMPLETE,Output:["c_customer_sk","c_current_cdemo_sk","c_current_addr_sk","c_birth_month","c_birth_year"] + <-Map 7 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_149] + PartitionCols:_col0 + Select Operator [SEL_148] (rows=5490196 width=285) + Output:["_col0","_col1","_col2","_col3"] + Filter Operator [FIL_147] (rows=5490196 width=285) + predicate:((ca_state) IN ('ND', 'WI', 'AL', 'NC', 'OK', 'MS', 'TN') and ca_address_sk is not null) + TableScan [TS_3] (rows=40000000 width=285) + default@customer_address,customer_address,Tbl:COMPLETE,Col:COMPLETE,Output:["ca_address_sk","ca_county","ca_state","ca_country"] diff --git a/ql/src/test/results/clientpositive/perf/tez/query19.q.out b/ql/src/test/results/clientpositive/perf/tez/query19.q.out index fd8578f402..68e88ddf10 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query19.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query19.q.out @@ -63,13 +63,12 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 8 <- Reducer 12 (BROADCAST_EDGE), Reducer 14 (BROADCAST_EDGE) +Map 8 <- Reducer 12 (BROADCAST_EDGE) Reducer 10 <- Map 13 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) Reducer 12 <- Map 11 (CUSTOM_SIMPLE_EDGE) -Reducer 14 <- Map 13 (CUSTOM_SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) Reducer 3 <- Reducer 10 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 15 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 4 <- Map 14 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) Reducer 9 <- Map 11 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) @@ -79,16 +78,16 @@ Stage-0 limit:-1 Stage-1 Reducer 6 vectorized - File Output Operator [FS_157] - Limit [LIM_156] (rows=100 width=419) + File Output Operator [FS_152] + Limit [LIM_151] (rows=100 width=419) Number of rows:100 - Select Operator [SEL_155] (rows=2098703 width=418) + Select Operator [SEL_150] (rows=2098703 width=418) Output:["_col0","_col1","_col2","_col3","_col4"] <-Reducer 5 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_154] - Select Operator [SEL_153] (rows=2098703 width=418) + SHUFFLE [RS_149] + Select Operator [SEL_148] (rows=2098703 width=418) Output:["_col2","_col3","_col4","_col5","_col6"] - Group By Operator [GBY_152] (rows=2098703 width=314) + Group By Operator [GBY_147] (rows=2098703 width=314) Output:["_col0","_col1","_col2","_col3","_col4"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3 <-Reducer 4 [SIMPLE_EDGE] SHUFFLE [RS_37] @@ -100,13 +99,13 @@ Stage-0 Filter Operator [FIL_34] (rows=2098703 width=380) predicate:(substr(_col3, 1, 5) <> substr(_col19, 1, 5)) Merge Join Operator [MERGEJOIN_123] (rows=2098703 width=380) - Conds:RS_31._col7=RS_151._col0(Inner),Output:["_col3","_col8","_col13","_col14","_col15","_col16","_col19"] - <-Map 15 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_151] + Conds:RS_31._col7=RS_146._col0(Inner),Output:["_col3","_col8","_col13","_col14","_col15","_col16","_col19"] + <-Map 14 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_146] PartitionCols:_col0 - Select Operator [SEL_150] (rows=1704 width=93) + Select Operator [SEL_145] (rows=1704 width=93) Output:["_col0","_col1"] - Filter Operator [FIL_149] (rows=1704 width=93) + Filter Operator [FIL_144] (rows=1704 width=93) predicate:s_store_sk is not null TableScan [TS_22] (rows=1704 width=93) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_zip"] @@ -119,13 +118,13 @@ Stage-0 SHUFFLE [RS_29] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_121] (rows=2098703 width=202) - Conds:RS_18._col1=RS_140._col0(Inner),Output:["_col2","_col3","_col4","_col9","_col10","_col11","_col12"] + Conds:RS_18._col1=RS_143._col0(Inner),Output:["_col2","_col3","_col4","_col9","_col10","_col11","_col12"] <-Map 13 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_140] + SHUFFLE [RS_143] PartitionCols:_col0 - Select Operator [SEL_139] (rows=7333 width=210) + Select Operator [SEL_142] (rows=7333 width=210) Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_138] (rows=7333 width=210) + Filter Operator [FIL_141] (rows=7333 width=210) predicate:((i_manager_id = 7) and i_item_sk is not null) TableScan [TS_12] (rows=462000 width=210) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_brand_id","i_brand","i_manufact_id","i_manufact","i_manager_id"] @@ -133,7 +132,7 @@ Stage-0 SHUFFLE [RS_18] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_120] (rows=13737330 width=4) - Conds:RS_148._col0=RS_132._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + Conds:RS_140._col0=RS_132._col0(Inner),Output:["_col1","_col2","_col3","_col4"] <-Map 11 [SIMPLE_EDGE] vectorized SHUFFLE [RS_132] PartitionCols:_col0 @@ -144,12 +143,12 @@ Stage-0 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 8 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_148] + SHUFFLE [RS_140] PartitionCols:_col0 - Select Operator [SEL_147] (rows=501694138 width=122) + Select Operator [SEL_139] (rows=501694138 width=122) Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_146] (rows=501694138 width=122) - predicate:((ss_item_sk BETWEEN DynamicValue(RS_19_item_i_item_sk_min) AND DynamicValue(RS_19_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_19_item_i_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_16_date_dim_d_date_sk_min) AND DynamicValue(RS_16_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_16_date_dim_d_date_sk_bloom_filter))) and ss_customer_sk is not null and ss_item_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_138] (rows=501694138 width=122) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_16_date_dim_d_date_sk_min) AND DynamicValue(RS_16_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_16_date_dim_d_date_sk_bloom_filter))) and ss_customer_sk is not null and ss_item_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=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 12 [BROADCAST_EDGE] vectorized @@ -163,17 +162,6 @@ Stage-0 Select Operator [SEL_133] (rows=50 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_131] - <-Reducer 14 [BROADCAST_EDGE] vectorized - BROADCAST [RS_145] - Group By Operator [GBY_144] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 13 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_143] - Group By Operator [GBY_142] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_141] (rows=7333 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_139] <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_28] PartitionCols:_col0 diff --git a/ql/src/test/results/clientpositive/perf/tez/query20.q.out b/ql/src/test/results/clientpositive/perf/tez/query20.q.out index 892beb37cb..e471c0f0a2 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query20.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query20.q.out @@ -65,8 +65,7 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 10 (BROADCAST_EDGE), Reducer 8 (BROADCAST_EDGE) -Reducer 10 <- Map 9 (CUSTOM_SIMPLE_EDGE) +Map 1 <- Reducer 8 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) Reducer 3 <- Map 9 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) @@ -79,23 +78,23 @@ Stage-0 limit:-1 Stage-1 Reducer 6 vectorized - File Output Operator [FS_86] - Limit [LIM_85] (rows=100 width=802) + File Output Operator [FS_81] + Limit [LIM_80] (rows=100 width=802) Number of rows:100 - Select Operator [SEL_84] (rows=138600 width=801) + Select Operator [SEL_79] (rows=138600 width=801) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] <-Reducer 5 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_83] - Select Operator [SEL_82] (rows=138600 width=801) + SHUFFLE [RS_78] + Select Operator [SEL_77] (rows=138600 width=801) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] - PTF Operator [PTF_81] (rows=138600 width=689) + PTF Operator [PTF_76] (rows=138600 width=689) Function definitions:[{},{"name:":"windowingtablefunction","order by:":"_col1 ASC NULLS FIRST","partition by:":"_col1"}] - Select Operator [SEL_80] (rows=138600 width=689) + Select Operator [SEL_75] (rows=138600 width=689) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] <-Reducer 4 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_79] + SHUFFLE [RS_74] PartitionCols:_col1 - Group By Operator [GBY_78] (rows=138600 width=689) + Group By Operator [GBY_73] (rows=138600 width=689) Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4 <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_17] @@ -103,13 +102,13 @@ Stage-0 Group By Operator [GBY_16] (rows=138600 width=689) Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["sum(_col2)"],keys:_col10, _col9, _col6, _col7, _col8 Merge Join Operator [MERGEJOIN_58] (rows=9551005 width=673) - Conds:RS_12._col1=RS_69._col0(Inner),Output:["_col2","_col6","_col7","_col8","_col9","_col10"] + Conds:RS_12._col1=RS_72._col0(Inner),Output:["_col2","_col6","_col7","_col8","_col9","_col10"] <-Map 9 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_69] + SHUFFLE [RS_72] PartitionCols:_col0 - Select Operator [SEL_68] (rows=138600 width=581) + Select Operator [SEL_71] (rows=138600 width=581) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] - Filter Operator [FIL_67] (rows=138600 width=581) + Filter Operator [FIL_70] (rows=138600 width=581) predicate:((i_category) IN ('Jewelry', 'Sports', 'Books') and i_item_sk is not null) TableScan [TS_6] (rows=462000 width=581) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_item_id","i_item_desc","i_current_price","i_class","i_category"] @@ -117,7 +116,7 @@ Stage-0 SHUFFLE [RS_12] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_57] (rows=31836679 width=110) - Conds:RS_77._col0=RS_61._col0(Inner),Output:["_col1","_col2"] + Conds:RS_69._col0=RS_61._col0(Inner),Output:["_col1","_col2"] <-Map 7 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_61] PartitionCols:_col0 @@ -128,25 +127,14 @@ Stage-0 TableScan [TS_3] (rows=73049 width=98) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_77] + SHUFFLE [RS_69] PartitionCols:_col0 - Select Operator [SEL_76] (rows=286549727 width=119) + Select Operator [SEL_68] (rows=286549727 width=119) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_75] (rows=286549727 width=119) - predicate:((cs_item_sk BETWEEN DynamicValue(RS_13_item_i_item_sk_min) AND DynamicValue(RS_13_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_13_item_i_item_sk_bloom_filter))) and (cs_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(cs_sold_date_sk, DynamicValue(RS_10_date_dim_d_date_sk_bloom_filter))) and cs_item_sk is not null and cs_sold_date_sk is not null) + Filter Operator [FIL_67] (rows=286549727 width=119) + predicate:((cs_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(cs_sold_date_sk, DynamicValue(RS_10_date_dim_d_date_sk_bloom_filter))) and cs_item_sk is not null 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 10 [BROADCAST_EDGE] vectorized - BROADCAST [RS_74] - Group By Operator [GBY_73] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 9 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_72] - Group By Operator [GBY_71] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_70] (rows=138600 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_68] <-Reducer 8 [BROADCAST_EDGE] vectorized BROADCAST [RS_66] Group By Operator [GBY_65] (rows=1 width=12) diff --git a/ql/src/test/results/clientpositive/perf/tez/query23.q.out b/ql/src/test/results/clientpositive/perf/tez/query23.q.out index 77847929b4..f0a4af9299 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query23.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query23.q.out @@ -1,7 +1,7 @@ -Warning: Shuffle Join MERGEJOIN[593][tables = [$hdt$_1, $hdt$_2]] in Stage 'Reducer 29' is a cross product -Warning: Shuffle Join MERGEJOIN[594][tables = [$hdt$_1, $hdt$_2, $hdt$_0]] in Stage 'Reducer 30' is a cross product -Warning: Shuffle Join MERGEJOIN[596][tables = [$hdt$_1, $hdt$_2]] in Stage 'Reducer 33' is a cross product -Warning: Shuffle Join MERGEJOIN[597][tables = [$hdt$_1, $hdt$_2, $hdt$_0]] in Stage 'Reducer 34' is a cross product +Warning: Shuffle Join MERGEJOIN[593][tables = [$hdt$_1, $hdt$_2]] in Stage 'Reducer 27' is a cross product +Warning: Shuffle Join MERGEJOIN[594][tables = [$hdt$_1, $hdt$_2, $hdt$_0]] in Stage 'Reducer 28' is a cross product +Warning: Shuffle Join MERGEJOIN[596][tables = [$hdt$_1, $hdt$_2]] in Stage 'Reducer 31' is a cross product +Warning: Shuffle Join MERGEJOIN[597][tables = [$hdt$_1, $hdt$_2, $hdt$_0]] in Stage 'Reducer 32' 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 19 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) -Map 15 <- Reducer 22 (BROADCAST_EDGE) -Map 24 <- Reducer 37 (BROADCAST_EDGE) -Map 38 <- Reducer 7 (BROADCAST_EDGE) -Map 44 <- Reducer 14 (BROADCAST_EDGE), Reducer 20 (BROADCAST_EDGE) -Map 45 <- Reducer 13 (BROADCAST_EDGE) -Reducer 10 <- Map 44 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) +Map 1 <- Reducer 9 (BROADCAST_EDGE) +Map 15 <- Reducer 20 (BROADCAST_EDGE) +Map 22 <- Reducer 35 (BROADCAST_EDGE) +Map 36 <- Reducer 7 (BROADCAST_EDGE) +Map 42 <- Reducer 14 (BROADCAST_EDGE) +Map 43 <- Reducer 13 (BROADCAST_EDGE) +Reducer 10 <- Map 42 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) Reducer 11 <- Reducer 10 (SIMPLE_EDGE), Reducer 18 (SIMPLE_EDGE) -Reducer 12 <- Reducer 11 (SIMPLE_EDGE), Reducer 34 (SIMPLE_EDGE), Union 5 (CONTAINS) +Reducer 12 <- Reducer 11 (SIMPLE_EDGE), Reducer 32 (SIMPLE_EDGE), Union 5 (CONTAINS) Reducer 13 <- Reducer 11 (CUSTOM_SIMPLE_EDGE) Reducer 14 <- Map 8 (CUSTOM_SIMPLE_EDGE) -Reducer 16 <- Map 15 (SIMPLE_EDGE), Map 21 (SIMPLE_EDGE) -Reducer 17 <- Map 23 (SIMPLE_EDGE), Reducer 16 (SIMPLE_EDGE) +Reducer 16 <- Map 15 (SIMPLE_EDGE), Map 19 (SIMPLE_EDGE) +Reducer 17 <- Map 21 (SIMPLE_EDGE), Reducer 16 (SIMPLE_EDGE) Reducer 18 <- Reducer 17 (SIMPLE_EDGE) -Reducer 19 <- Reducer 18 (CUSTOM_SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) -Reducer 20 <- Reducer 18 (CUSTOM_SIMPLE_EDGE) -Reducer 22 <- Map 21 (CUSTOM_SIMPLE_EDGE) -Reducer 25 <- Map 24 (SIMPLE_EDGE), Map 36 (SIMPLE_EDGE) -Reducer 26 <- Map 41 (SIMPLE_EDGE), Reducer 25 (SIMPLE_EDGE) -Reducer 27 <- Reducer 26 (SIMPLE_EDGE) -Reducer 28 <- Reducer 27 (CUSTOM_SIMPLE_EDGE) -Reducer 29 <- Reducer 28 (CUSTOM_SIMPLE_EDGE), Reducer 31 (CUSTOM_SIMPLE_EDGE) +Reducer 20 <- Map 19 (CUSTOM_SIMPLE_EDGE) +Reducer 23 <- Map 22 (SIMPLE_EDGE), Map 34 (SIMPLE_EDGE) +Reducer 24 <- Map 39 (SIMPLE_EDGE), Reducer 23 (SIMPLE_EDGE) +Reducer 25 <- Reducer 24 (SIMPLE_EDGE) +Reducer 26 <- Reducer 25 (CUSTOM_SIMPLE_EDGE) +Reducer 27 <- Reducer 26 (CUSTOM_SIMPLE_EDGE), Reducer 29 (CUSTOM_SIMPLE_EDGE) +Reducer 28 <- Reducer 27 (CUSTOM_SIMPLE_EDGE), Reducer 38 (CUSTOM_SIMPLE_EDGE) +Reducer 29 <- Reducer 25 (CUSTOM_SIMPLE_EDGE) Reducer 3 <- Reducer 18 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 30 <- Reducer 29 (CUSTOM_SIMPLE_EDGE), Reducer 40 (CUSTOM_SIMPLE_EDGE) -Reducer 31 <- Reducer 27 (CUSTOM_SIMPLE_EDGE) -Reducer 32 <- Reducer 27 (CUSTOM_SIMPLE_EDGE) -Reducer 33 <- Reducer 32 (CUSTOM_SIMPLE_EDGE), Reducer 35 (CUSTOM_SIMPLE_EDGE) -Reducer 34 <- Reducer 33 (CUSTOM_SIMPLE_EDGE), Reducer 43 (CUSTOM_SIMPLE_EDGE) -Reducer 35 <- Reducer 27 (CUSTOM_SIMPLE_EDGE) -Reducer 37 <- Map 36 (CUSTOM_SIMPLE_EDGE) -Reducer 39 <- Map 38 (SIMPLE_EDGE), Map 41 (SIMPLE_EDGE) -Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Reducer 30 (SIMPLE_EDGE), Union 5 (CONTAINS) -Reducer 40 <- Reducer 39 (SIMPLE_EDGE) -Reducer 42 <- Map 41 (SIMPLE_EDGE), Map 45 (SIMPLE_EDGE) -Reducer 43 <- Reducer 42 (SIMPLE_EDGE) +Reducer 30 <- Reducer 25 (CUSTOM_SIMPLE_EDGE) +Reducer 31 <- Reducer 30 (CUSTOM_SIMPLE_EDGE), Reducer 33 (CUSTOM_SIMPLE_EDGE) +Reducer 32 <- Reducer 31 (CUSTOM_SIMPLE_EDGE), Reducer 41 (CUSTOM_SIMPLE_EDGE) +Reducer 33 <- Reducer 25 (CUSTOM_SIMPLE_EDGE) +Reducer 35 <- Map 34 (CUSTOM_SIMPLE_EDGE) +Reducer 37 <- Map 36 (SIMPLE_EDGE), Map 39 (SIMPLE_EDGE) +Reducer 38 <- Reducer 37 (SIMPLE_EDGE) +Reducer 4 <- Reducer 28 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE), Union 5 (CONTAINS) +Reducer 40 <- Map 39 (SIMPLE_EDGE), Map 43 (SIMPLE_EDGE) +Reducer 41 <- Reducer 40 (SIMPLE_EDGE) Reducer 6 <- Union 5 (CUSTOM_SIMPLE_EDGE) Reducer 7 <- Reducer 3 (CUSTOM_SIMPLE_EDGE) Reducer 9 <- Map 8 (CUSTOM_SIMPLE_EDGE) @@ -166,10 +164,10 @@ Stage-0 limit:100 Stage-1 Reducer 6 vectorized - File Output Operator [FS_699] - Limit [LIM_698] (rows=1 width=112) + File Output Operator [FS_691] + Limit [LIM_690] (rows=1 width=112) Number of rows:100 - Group By Operator [GBY_697] (rows=1 width=112) + Group By Operator [GBY_689] (rows=1 width=112) Output:["_col0"],aggregations:["sum(VALUE._col0)"] <-Union 5 [CUSTOM_SIMPLE_EDGE] <-Reducer 12 [CONTAINS] @@ -184,19 +182,19 @@ Stage-0 PARTITION_ONLY_SHUFFLE [RS_248] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_592] (rows=155 width=0) - Conds:RS_245._col1=RS_642._col0(Inner),Output:["_col2","_col3","_col4"] + Conds:RS_245._col1=RS_644._col0(Inner),Output:["_col2","_col3","_col4"] <-Reducer 18 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_642] + SHUFFLE [RS_644] PartitionCols:_col0 - Group By Operator [GBY_639] (rows=2235 width=4) + Group By Operator [GBY_642] (rows=2235 width=4) Output:["_col0"],keys:_col1 - Select Operator [SEL_638] (rows=6548799 width=12) + Select Operator [SEL_641] (rows=6548799 width=12) Output:["_col1"] - Filter Operator [FIL_637] (rows=6548799 width=12) + Filter Operator [FIL_640] (rows=6548799 width=12) predicate:(_col3 > 4L) - Select Operator [SEL_636] (rows=19646398 width=12) + Select Operator [SEL_639] (rows=19646398 width=12) Output:["_col0","_col3"] - Group By Operator [GBY_635] (rows=19646398 width=290) + Group By Operator [GBY_638] (rows=19646398 width=290) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 <-Reducer 17 [SIMPLE_EDGE] SHUFFLE [RS_24] @@ -206,13 +204,13 @@ Stage-0 Select Operator [SEL_21] (rows=19646398 width=282) Output:["_col0","_col1","_col2"] Merge Join Operator [MERGEJOIN_577] (rows=19646398 width=282) - Conds:RS_18._col1=RS_634._col0(Inner),Output:["_col3","_col5","_col6"] - <-Map 23 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_634] + Conds:RS_18._col1=RS_637._col0(Inner),Output:["_col3","_col5","_col6"] + <-Map 21 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_637] PartitionCols:_col0 - Select Operator [SEL_633] (rows=462000 width=188) + Select Operator [SEL_636] (rows=462000 width=188) Output:["_col0","_col1"] - Filter Operator [FIL_632] (rows=462000 width=188) + Filter Operator [FIL_635] (rows=462000 width=188) predicate:i_item_sk is not null TableScan [TS_12] (rows=462000 width=188) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_item_desc"] @@ -220,41 +218,41 @@ Stage-0 SHUFFLE [RS_18] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_576] (rows=19646398 width=98) - Conds:RS_631._col0=RS_623._col0(Inner),Output:["_col1","_col3"] - <-Map 21 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_623] + Conds:RS_634._col0=RS_626._col0(Inner),Output:["_col1","_col3"] + <-Map 19 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_626] PartitionCols:_col0 - Select Operator [SEL_622] (rows=2609 width=102) + Select Operator [SEL_625] (rows=2609 width=102) Output:["_col0","_col1"] - Filter Operator [FIL_621] (rows=2609 width=102) + Filter Operator [FIL_624] (rows=2609 width=102) predicate:((d_year) IN (1999, 2000, 2001, 2002) and d_date_sk is not null) TableScan [TS_9] (rows=73049 width=102) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date","d_year"] <-Map 15 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_631] + SHUFFLE [RS_634] PartitionCols:_col0 - Select Operator [SEL_630] (rows=550076554 width=7) + Select Operator [SEL_633] (rows=550076554 width=7) Output:["_col0","_col1"] - Filter Operator [FIL_629] (rows=550076554 width=7) + Filter Operator [FIL_632] (rows=550076554 width=7) predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_16_date_dim_d_date_sk_min) AND DynamicValue(RS_16_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_16_date_dim_d_date_sk_bloom_filter))) and ss_item_sk is not null and ss_sold_date_sk is not null) TableScan [TS_6] (rows=575995635 width=7) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk"] - <-Reducer 22 [BROADCAST_EDGE] vectorized - BROADCAST [RS_628] - Group By Operator [GBY_627] (rows=1 width=12) + <-Reducer 20 [BROADCAST_EDGE] vectorized + BROADCAST [RS_631] + Group By Operator [GBY_630] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 21 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_626] - Group By Operator [GBY_625] (rows=1 width=12) + <-Map 19 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_629] + Group By Operator [GBY_628] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_624] (rows=2609 width=4) + Select Operator [SEL_627] (rows=2609 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_622] + Please refer to the previous Select Operator [SEL_625] <-Reducer 10 [SIMPLE_EDGE] SHUFFLE [RS_245] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_583] (rows=3941102 width=122) - Conds:RS_706._col0=RS_613._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + Conds:RS_696._col0=RS_613._col0(Inner),Output:["_col1","_col2","_col3","_col4"] <-Map 8 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_613] PartitionCols:_col0 @@ -264,18 +262,18 @@ Stage-0 predicate:((d_moy = 1) and (d_year = 1999) and d_date_sk is not null) 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 44 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_706] + <-Map 42 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_696] PartitionCols:_col0 - Select Operator [SEL_705] (rows=143930993 width=127) + Select Operator [SEL_695] (rows=143930993 width=127) Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_704] (rows=143930993 width=127) - predicate:((ws_item_sk BETWEEN DynamicValue(RS_246_item_i_item_sk_min) AND DynamicValue(RS_246_item_i_item_sk_max) and in_bloom_filter(ws_item_sk, DynamicValue(RS_246_item_i_item_sk_bloom_filter))) and (ws_sold_date_sk BETWEEN DynamicValue(RS_243_date_dim_d_date_sk_min) AND DynamicValue(RS_243_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_243_date_dim_d_date_sk_bloom_filter))) and ws_bill_customer_sk is not null and ws_item_sk is not null and ws_sold_date_sk is not null) + Filter Operator [FIL_694] (rows=143930993 width=127) + predicate:((ws_sold_date_sk BETWEEN DynamicValue(RS_243_date_dim_d_date_sk_min) AND DynamicValue(RS_243_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_243_date_dim_d_date_sk_bloom_filter))) and ws_bill_customer_sk is not null and ws_item_sk is not null and ws_sold_date_sk is not null) TableScan [TS_126] (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_701] - Group By Operator [GBY_700] (rows=1 width=12) + BROADCAST [RS_693] + Group By Operator [GBY_692] (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_618] @@ -284,18 +282,7 @@ Stage-0 Select Operator [SEL_614] (rows=50 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_610] - <-Reducer 20 [BROADCAST_EDGE] vectorized - BROADCAST [RS_703] - Group By Operator [GBY_702] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Reducer 18 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_647] - Group By Operator [GBY_645] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_643] (rows=2235 width=4) - Output:["_col0"] - Please refer to the previous Group By Operator [GBY_639] - <-Reducer 34 [SIMPLE_EDGE] + <-Reducer 32 [SIMPLE_EDGE] SHUFFLE [RS_249] PartitionCols:_col0 Select Operator [SEL_241] (rows=471875 width=4) @@ -304,29 +291,29 @@ Stage-0 predicate:(_col3 > (0.95 * _col1)) Merge Join Operator [MERGEJOIN_597] (rows=1415625 width=228) Conds:(Inner),Output:["_col1","_col2","_col3"] - <-Reducer 33 [CUSTOM_SIMPLE_EDGE] + <-Reducer 31 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_237] Merge Join Operator [MERGEJOIN_596] (rows=1 width=112) Conds:(Inner),Output:["_col1"] - <-Reducer 32 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_712] - Select Operator [SEL_711] (rows=1 width=8) - Filter Operator [FIL_710] (rows=1 width=8) + <-Reducer 30 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_702] + Select Operator [SEL_701] (rows=1 width=8) + Filter Operator [FIL_700] (rows=1 width=8) predicate:(sq_count_check(_col0) <= 1) - Group By Operator [GBY_709] (rows=1 width=8) + Group By Operator [GBY_699] (rows=1 width=8) Output:["_col0"],aggregations:["count()"] - Select Operator [SEL_708] (rows=1 width=8) - Group By Operator [GBY_707] (rows=1 width=8) + Select Operator [SEL_698] (rows=1 width=8) + Group By Operator [GBY_697] (rows=1 width=8) Output:["_col0"],aggregations:["count(VALUE._col0)"] - <-Reducer 27 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_680] - Group By Operator [GBY_676] (rows=1 width=8) + <-Reducer 25 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_672] + Group By Operator [GBY_668] (rows=1 width=8) Output:["_col0"],aggregations:["count(_col0)"] - Select Operator [SEL_672] (rows=11859 width=116) + Select Operator [SEL_664] (rows=11859 width=116) Output:["_col0"] - Group By Operator [GBY_669] (rows=11859 width=116) + Group By Operator [GBY_661] (rows=11859 width=116) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Reducer 26 [SIMPLE_EDGE] + <-Reducer 24 [SIMPLE_EDGE] SHUFFLE [RS_51] PartitionCols:_col0 Group By Operator [GBY_50] (rows=11859 width=116) @@ -334,66 +321,66 @@ Stage-0 Select Operator [SEL_48] (rows=18762463 width=4) Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_579] (rows=18762463 width=4) - Conds:RS_45._col1=RS_667._col0(Inner),Output:["_col2","_col3","_col6"] - <-Map 41 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_667] + Conds:RS_45._col1=RS_659._col0(Inner),Output:["_col2","_col3","_col6"] + <-Map 39 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_659] PartitionCols:_col0 - Select Operator [SEL_665] (rows=80000000 width=4) + Select Operator [SEL_657] (rows=80000000 width=4) Output:["_col0"] - Filter Operator [FIL_664] (rows=80000000 width=4) + Filter Operator [FIL_656] (rows=80000000 width=4) predicate:c_customer_sk is not null TableScan [TS_96] (rows=80000000 width=4) default@customer,customer,Tbl:COMPLETE,Col:COMPLETE,Output:["c_customer_sk"] - <-Reducer 25 [SIMPLE_EDGE] + <-Reducer 23 [SIMPLE_EDGE] SHUFFLE [RS_45] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_578] (rows=18762463 width=0) - Conds:RS_663._col0=RS_655._col0(Inner),Output:["_col1","_col2","_col3"] - <-Map 36 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_655] + Conds:RS_655._col0=RS_647._col0(Inner),Output:["_col1","_col2","_col3"] + <-Map 34 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_647] PartitionCols:_col0 - Select Operator [SEL_654] (rows=2609 width=8) + Select Operator [SEL_646] (rows=2609 width=8) Output:["_col0"] - Filter Operator [FIL_653] (rows=2609 width=8) + Filter Operator [FIL_645] (rows=2609 width=8) predicate:((d_year) IN (1999, 2000, 2001, 2002) and d_date_sk is not null) TableScan [TS_36] (rows=73049 width=8) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year"] - <-Map 24 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_663] + <-Map 22 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_655] PartitionCols:_col0 - Select Operator [SEL_662] (rows=525327388 width=118) + Select Operator [SEL_654] (rows=525327388 width=118) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_661] (rows=525327388 width=118) + Filter Operator [FIL_653] (rows=525327388 width=118) predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_43_date_dim_d_date_sk_min) AND DynamicValue(RS_43_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_43_date_dim_d_date_sk_bloom_filter))) and ss_customer_sk is not null and ss_sold_date_sk is not null) TableScan [TS_33] (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 37 [BROADCAST_EDGE] vectorized - BROADCAST [RS_660] - Group By Operator [GBY_659] (rows=1 width=12) + <-Reducer 35 [BROADCAST_EDGE] vectorized + BROADCAST [RS_652] + Group By Operator [GBY_651] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 36 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_658] - Group By Operator [GBY_657] (rows=1 width=12) + <-Map 34 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_650] + Group By Operator [GBY_649] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_656] (rows=2609 width=4) + Select Operator [SEL_648] (rows=2609 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_654] - <-Reducer 35 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_714] - Group By Operator [GBY_713] (rows=1 width=112) + Please refer to the previous Select Operator [SEL_646] + <-Reducer 33 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_704] + Group By Operator [GBY_703] (rows=1 width=112) Output:["_col0"],aggregations:["max(VALUE._col0)"] - <-Reducer 27 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_681] - Group By Operator [GBY_677] (rows=1 width=112) + <-Reducer 25 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_673] + Group By Operator [GBY_669] (rows=1 width=112) Output:["_col0"],aggregations:["max(_col1)"] - Select Operator [SEL_673] (rows=11859 width=116) + Select Operator [SEL_665] (rows=11859 width=116) Output:["_col1"] - Please refer to the previous Group By Operator [GBY_669] - <-Reducer 43 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_721] - Group By Operator [GBY_720] (rows=1415625 width=116) + Please refer to the previous Group By Operator [GBY_661] + <-Reducer 41 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_711] + Group By Operator [GBY_710] (rows=1415625 width=116) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Reducer 42 [SIMPLE_EDGE] + <-Reducer 40 [SIMPLE_EDGE] SHUFFLE [RS_231] PartitionCols:_col0 Group By Operator [GBY_230] (rows=550080312 width=116) @@ -401,23 +388,23 @@ Stage-0 Select Operator [SEL_228] (rows=550080312 width=114) Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_590] (rows=550080312 width=114) - Conds:RS_719._col0=RS_668._col0(Inner),Output:["_col1","_col2","_col3"] - <-Map 41 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_668] + Conds:RS_709._col0=RS_660._col0(Inner),Output:["_col1","_col2","_col3"] + <-Map 39 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_660] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_665] - <-Map 45 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_719] + Please refer to the previous Select Operator [SEL_657] + <-Map 43 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_709] PartitionCols:_col0 - Select Operator [SEL_718] (rows=550080312 width=114) + Select Operator [SEL_708] (rows=550080312 width=114) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_717] (rows=550080312 width=114) + Filter Operator [FIL_707] (rows=550080312 width=114) predicate:((ss_customer_sk BETWEEN DynamicValue(RS_248_web_sales_ws_bill_customer_sk_min) AND DynamicValue(RS_248_web_sales_ws_bill_customer_sk_max) and in_bloom_filter(ss_customer_sk, DynamicValue(RS_248_web_sales_ws_bill_customer_sk_bloom_filter))) and ss_customer_sk is not null) TableScan [TS_219] (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_716] - Group By Operator [GBY_715] (rows=1 width=12) + BROADCAST [RS_706] + Group By Operator [GBY_705] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Reducer 11 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_570] @@ -438,40 +425,29 @@ Stage-0 PARTITION_ONLY_SHUFFLE [RS_122] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_591] (rows=304 width=0) - Conds:RS_119._col2=RS_640._col0(Inner),Output:["_col1","_col3","_col4"] + Conds:RS_119._col2=RS_643._col0(Inner),Output:["_col1","_col3","_col4"] <-Reducer 18 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_640] + SHUFFLE [RS_643] PartitionCols:_col0 - Please refer to the previous Group By Operator [GBY_639] + Please refer to the previous Group By Operator [GBY_642] <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_119] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_575] (rows=7751875 width=101) - Conds:RS_652._col0=RS_611._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + Conds:RS_623._col0=RS_611._col0(Inner),Output:["_col1","_col2","_col3","_col4"] <-Map 8 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_611] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_610] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_652] + SHUFFLE [RS_623] PartitionCols:_col0 - Select Operator [SEL_651] (rows=285117831 width=127) + Select Operator [SEL_622] (rows=285117831 width=127) Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_650] (rows=285117831 width=127) - predicate:((cs_item_sk BETWEEN DynamicValue(RS_120_item_i_item_sk_min) AND DynamicValue(RS_120_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_120_item_i_item_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_117_date_dim_d_date_sk_min) AND DynamicValue(RS_117_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_117_date_dim_d_date_sk_bloom_filter))) and cs_bill_customer_sk is not null and cs_item_sk is not null and cs_sold_date_sk is not null) + Filter Operator [FIL_621] (rows=285117831 width=127) + predicate:((cs_sold_date_sk BETWEEN DynamicValue(RS_117_date_dim_d_date_sk_min) AND DynamicValue(RS_117_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_117_date_dim_d_date_sk_bloom_filter))) and cs_bill_customer_sk is not null and cs_item_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 19 [BROADCAST_EDGE] vectorized - BROADCAST [RS_649] - Group By Operator [GBY_648] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Reducer 18 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_646] - Group By Operator [GBY_644] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_641] (rows=2235 width=4) - Output:["_col0"] - Please refer to the previous Group By Operator [GBY_639] <-Reducer 9 [BROADCAST_EDGE] vectorized BROADCAST [RS_620] Group By Operator [GBY_619] (rows=1 width=12) @@ -483,7 +459,7 @@ Stage-0 Select Operator [SEL_612] (rows=50 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_610] - <-Reducer 30 [SIMPLE_EDGE] + <-Reducer 28 [SIMPLE_EDGE] SHUFFLE [RS_123] PartitionCols:_col0 Select Operator [SEL_115] (rows=471875 width=4) @@ -492,43 +468,43 @@ Stage-0 predicate:(_col3 > (0.95 * _col1)) Merge Join Operator [MERGEJOIN_594] (rows=1415625 width=228) Conds:(Inner),Output:["_col1","_col2","_col3"] - <-Reducer 29 [CUSTOM_SIMPLE_EDGE] + <-Reducer 27 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_111] Merge Join Operator [MERGEJOIN_593] (rows=1 width=112) Conds:(Inner),Output:["_col1"] - <-Reducer 28 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_687] - Select Operator [SEL_686] (rows=1 width=8) - Filter Operator [FIL_685] (rows=1 width=8) + <-Reducer 26 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_679] + Select Operator [SEL_678] (rows=1 width=8) + Filter Operator [FIL_677] (rows=1 width=8) predicate:(sq_count_check(_col0) <= 1) - Group By Operator [GBY_684] (rows=1 width=8) + Group By Operator [GBY_676] (rows=1 width=8) Output:["_col0"],aggregations:["count()"] - Select Operator [SEL_683] (rows=1 width=8) - Group By Operator [GBY_682] (rows=1 width=8) + Select Operator [SEL_675] (rows=1 width=8) + Group By Operator [GBY_674] (rows=1 width=8) Output:["_col0"],aggregations:["count(VALUE._col0)"] - <-Reducer 27 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_678] - Group By Operator [GBY_674] (rows=1 width=8) + <-Reducer 25 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_670] + Group By Operator [GBY_666] (rows=1 width=8) Output:["_col0"],aggregations:["count(_col0)"] - Select Operator [SEL_670] (rows=11859 width=116) + Select Operator [SEL_662] (rows=11859 width=116) Output:["_col0"] - Please refer to the previous Group By Operator [GBY_669] - <-Reducer 31 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_689] - Group By Operator [GBY_688] (rows=1 width=112) + Please refer to the previous Group By Operator [GBY_661] + <-Reducer 29 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_681] + Group By Operator [GBY_680] (rows=1 width=112) Output:["_col0"],aggregations:["max(VALUE._col0)"] - <-Reducer 27 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_679] - Group By Operator [GBY_675] (rows=1 width=112) + <-Reducer 25 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_671] + Group By Operator [GBY_667] (rows=1 width=112) Output:["_col0"],aggregations:["max(_col1)"] - Select Operator [SEL_671] (rows=11859 width=116) + Select Operator [SEL_663] (rows=11859 width=116) Output:["_col1"] - Please refer to the previous Group By Operator [GBY_669] - <-Reducer 40 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_696] - Group By Operator [GBY_695] (rows=1415625 width=116) + Please refer to the previous Group By Operator [GBY_661] + <-Reducer 38 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_688] + Group By Operator [GBY_687] (rows=1415625 width=116) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Reducer 39 [SIMPLE_EDGE] + <-Reducer 37 [SIMPLE_EDGE] SHUFFLE [RS_105] PartitionCols:_col0 Group By Operator [GBY_104] (rows=550080312 width=116) @@ -536,23 +512,23 @@ Stage-0 Select Operator [SEL_102] (rows=550080312 width=114) Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_582] (rows=550080312 width=114) - Conds:RS_694._col0=RS_666._col0(Inner),Output:["_col1","_col2","_col3"] - <-Map 41 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_666] + Conds:RS_686._col0=RS_658._col0(Inner),Output:["_col1","_col2","_col3"] + <-Map 39 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_658] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_665] - <-Map 38 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_694] + Please refer to the previous Select Operator [SEL_657] + <-Map 36 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_686] PartitionCols:_col0 - Select Operator [SEL_693] (rows=550080312 width=114) + Select Operator [SEL_685] (rows=550080312 width=114) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_692] (rows=550080312 width=114) + Filter Operator [FIL_684] (rows=550080312 width=114) predicate:((ss_customer_sk BETWEEN DynamicValue(RS_122_catalog_sales_cs_bill_customer_sk_min) AND DynamicValue(RS_122_catalog_sales_cs_bill_customer_sk_max) and in_bloom_filter(ss_customer_sk, DynamicValue(RS_122_catalog_sales_cs_bill_customer_sk_bloom_filter))) and ss_customer_sk is not null) TableScan [TS_93] (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_691] - Group By Operator [GBY_690] (rows=1 width=12) + BROADCAST [RS_683] + Group By Operator [GBY_682] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Reducer 3 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_464] diff --git a/ql/src/test/results/clientpositive/perf/tez/query24.q.out b/ql/src/test/results/clientpositive/perf/tez/query24.q.out index 43ece85275..9234be6797 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query24.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query24.q.out @@ -116,25 +116,22 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 16 (BROADCAST_EDGE), Reducer 17 (BROADCAST_EDGE), Reducer 8 (BROADCAST_EDGE) -Map 24 <- Reducer 19 (BROADCAST_EDGE), Reducer 20 (BROADCAST_EDGE) -Reducer 10 <- Map 23 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) +Map 1 <- Reducer 8 (BROADCAST_EDGE) +Map 21 <- Reducer 17 (BROADCAST_EDGE) +Reducer 10 <- Map 20 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) Reducer 11 <- Reducer 10 (SIMPLE_EDGE) Reducer 12 <- Reducer 11 (CUSTOM_SIMPLE_EDGE) -Reducer 14 <- Map 13 (SIMPLE_EDGE), Map 21 (SIMPLE_EDGE) -Reducer 15 <- Map 22 (SIMPLE_EDGE), Reducer 14 (SIMPLE_EDGE) -Reducer 16 <- Reducer 15 (CUSTOM_SIMPLE_EDGE) +Reducer 14 <- Map 13 (SIMPLE_EDGE), Map 18 (SIMPLE_EDGE) +Reducer 15 <- Map 19 (SIMPLE_EDGE), Reducer 14 (SIMPLE_EDGE) +Reducer 16 <- Map 21 (SIMPLE_EDGE), Reducer 15 (SIMPLE_EDGE) Reducer 17 <- Reducer 15 (CUSTOM_SIMPLE_EDGE) -Reducer 18 <- Map 24 (SIMPLE_EDGE), Reducer 15 (SIMPLE_EDGE) -Reducer 19 <- Reducer 15 (CUSTOM_SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) -Reducer 20 <- Reducer 15 (CUSTOM_SIMPLE_EDGE) Reducer 3 <- Reducer 15 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 23 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 4 <- Map 20 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 12 (CUSTOM_SIMPLE_EDGE), Reducer 5 (CUSTOM_SIMPLE_EDGE) Reducer 8 <- Map 7 (CUSTOM_SIMPLE_EDGE) -Reducer 9 <- Map 7 (SIMPLE_EDGE), Reducer 18 (SIMPLE_EDGE) +Reducer 9 <- Map 7 (SIMPLE_EDGE), Reducer 16 (SIMPLE_EDGE) Stage-0 Fetch Operator @@ -149,18 +146,18 @@ Stage-0 Merge Join Operator [MERGEJOIN_301] (rows=3939496 width=492) Conds:(Inner),Output:["_col0","_col1","_col2","_col3","_col4"] <-Reducer 12 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_351] - Select Operator [SEL_350] (rows=1 width=112) + PARTITION_ONLY_SHUFFLE [RS_345] + Select Operator [SEL_344] (rows=1 width=112) Output:["_col0"] - Group By Operator [GBY_349] (rows=1 width=120) + Group By Operator [GBY_343] (rows=1 width=120) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)","count(VALUE._col1)"] <-Reducer 11 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_348] - Group By Operator [GBY_347] (rows=1 width=120) + PARTITION_ONLY_SHUFFLE [RS_342] + Group By Operator [GBY_341] (rows=1 width=120) Output:["_col0","_col1"],aggregations:["sum(_col10)","count(_col10)"] - Select Operator [SEL_346] (rows=576061174 width=932) + Select Operator [SEL_340] (rows=576061174 width=932) Output:["_col10"] - Group By Operator [GBY_345] (rows=576061174 width=932) + Group By Operator [GBY_339] (rows=576061174 width=932) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4, KEY._col5, KEY._col6, KEY._col7, KEY._col8, KEY._col9 <-Reducer 10 [SIMPLE_EDGE] SHUFFLE [RS_81] @@ -168,13 +165,13 @@ Stage-0 Group By Operator [GBY_80] (rows=576061174 width=932) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10"],aggregations:["sum(_col18)"],keys:_col11, _col12, _col1, _col5, _col7, _col20, _col21, _col22, _col23, _col24 Merge Join Operator [MERGEJOIN_300] (rows=589731269 width=928) - Conds:RS_76._col14, _col17=RS_332._col0, _col1(Inner),Output:["_col1","_col5","_col7","_col11","_col12","_col18","_col20","_col21","_col22","_col23","_col24"] - <-Map 23 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_332] + Conds:RS_76._col14, _col17=RS_328._col0, _col1(Inner),Output:["_col1","_col5","_col7","_col11","_col12","_col18","_col20","_col21","_col22","_col23","_col24"] + <-Map 20 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_328] PartitionCols:_col0, _col1 - Select Operator [SEL_330] (rows=57591150 width=8) + Select Operator [SEL_326] (rows=57591150 width=8) Output:["_col0","_col1"] - Filter Operator [FIL_329] (rows=57591150 width=8) + Filter Operator [FIL_325] (rows=57591150 width=8) predicate:(sr_item_sk is not null and sr_ticket_number is not null) TableScan [TS_23] (rows=57591150 width=8) default@store_returns,store_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["sr_item_sk","sr_ticket_number"] @@ -192,24 +189,24 @@ Stage-0 predicate:i_item_sk is not null TableScan [TS_3] (rows=462000 width=384) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_current_price","i_size","i_color","i_units","i_manager_id"] - <-Reducer 18 [SIMPLE_EDGE] + <-Reducer 16 [SIMPLE_EDGE] SHUFFLE [RS_73] PartitionCols:_col14 Merge Join Operator [MERGEJOIN_298] (rows=576061174 width=555) - Conds:RS_70._col9, _col4=RS_344._col1, _col2(Inner),Output:["_col1","_col5","_col7","_col11","_col12","_col14","_col17","_col18"] + Conds:RS_70._col9, _col4=RS_338._col1, _col2(Inner),Output:["_col1","_col5","_col7","_col11","_col12","_col14","_col17","_col18"] <-Reducer 15 [SIMPLE_EDGE] SHUFFLE [RS_70] PartitionCols:_col9, _col4 Filter Operator [FIL_21] (rows=7276996 width=637) predicate:(_col13 <> upper(_col3)) Merge Join Operator [MERGEJOIN_293] (rows=7276996 width=637) - Conds:RS_18._col0=RS_321._col1(Inner),Output:["_col1","_col3","_col4","_col5","_col7","_col9","_col11","_col12","_col13"] - <-Map 22 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_321] + Conds:RS_18._col0=RS_324._col1(Inner),Output:["_col1","_col3","_col4","_col5","_col7","_col9","_col11","_col12","_col13"] + <-Map 19 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_324] PartitionCols:_col1 - Select Operator [SEL_320] (rows=80000000 width=280) + Select Operator [SEL_323] (rows=80000000 width=280) Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_319] (rows=80000000 width=280) + Filter Operator [FIL_322] (rows=80000000 width=280) predicate:(c_current_addr_sk is not null and c_customer_sk is not null) TableScan [TS_12] (rows=80000000 width=280) default@customer,customer,Tbl:COMPLETE,Col:COMPLETE,Output:["c_customer_sk","c_current_addr_sk","c_first_name","c_last_name","c_birth_country"] @@ -217,37 +214,37 @@ Stage-0 SHUFFLE [RS_18] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_292] (rows=611379 width=365) - Conds:RS_315._col2=RS_318._col4(Inner),Output:["_col0","_col1","_col3","_col4","_col5","_col7"] + Conds:RS_318._col2=RS_321._col4(Inner),Output:["_col0","_col1","_col3","_col4","_col5","_col7"] <-Map 13 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_315] + SHUFFLE [RS_318] PartitionCols:_col2 - Select Operator [SEL_314] (rows=40000000 width=276) + Select Operator [SEL_317] (rows=40000000 width=276) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_313] (rows=40000000 width=276) + Filter Operator [FIL_316] (rows=40000000 width=276) predicate:(ca_address_sk is not null and ca_zip is not null) TableScan [TS_6] (rows=40000000 width=276) default@customer_address,customer_address,Tbl:COMPLETE,Col:COMPLETE,Output:["ca_address_sk","ca_state","ca_zip","ca_country"] - <-Map 21 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_318] + <-Map 18 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_321] PartitionCols:_col4 - Select Operator [SEL_317] (rows=155 width=271) + Select Operator [SEL_320] (rows=155 width=271) Output:["_col0","_col1","_col3","_col4"] - Filter Operator [FIL_316] (rows=155 width=271) + Filter Operator [FIL_319] (rows=155 width=271) predicate:((s_market_id = 7) and s_store_sk is not null and s_zip is not null) TableScan [TS_9] (rows=1704 width=270) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_store_name","s_market_id","s_state","s_zip"] - <-Map 24 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_344] + <-Map 21 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_338] PartitionCols:_col1, _col2 - Select Operator [SEL_343] (rows=525333486 width=122) + Select Operator [SEL_337] (rows=525333486 width=122) Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_342] (rows=525333486 width=122) - predicate:((ss_customer_sk BETWEEN DynamicValue(RS_70_customer_c_customer_sk_min) AND DynamicValue(RS_70_customer_c_customer_sk_max) and in_bloom_filter(ss_customer_sk, DynamicValue(RS_70_customer_c_customer_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_item_sk is not null and ss_store_sk is not null and ss_ticket_number is not null) + Filter Operator [FIL_336] (rows=525333486 width=122) + predicate:((ss_customer_sk BETWEEN DynamicValue(RS_70_customer_c_customer_sk_min) AND DynamicValue(RS_70_customer_c_customer_sk_max) and in_bloom_filter(ss_customer_sk, DynamicValue(RS_70_customer_c_customer_sk_bloom_filter))) and ss_customer_sk is not null and ss_item_sk is not null and ss_store_sk is not null and ss_ticket_number is not null) TableScan [TS_54] (rows=575995635 width=122) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_item_sk","ss_customer_sk","ss_store_sk","ss_ticket_number","ss_sales_price"] - <-Reducer 19 [BROADCAST_EDGE] vectorized - BROADCAST [RS_339] - Group By Operator [GBY_338] (rows=1 width=12) + <-Reducer 17 [BROADCAST_EDGE] vectorized + BROADCAST [RS_335] + Group By Operator [GBY_334] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=6636187)"] <-Reducer 15 [CUSTOM_SIMPLE_EDGE] SHUFFLE [RS_250] @@ -256,26 +253,15 @@ Stage-0 Select Operator [SEL_248] (rows=7276996 width=8) Output:["_col0"] Please refer to the previous Filter Operator [FIL_21] - <-Reducer 20 [BROADCAST_EDGE] vectorized - BROADCAST [RS_341] - Group By Operator [GBY_340] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Reducer 15 [CUSTOM_SIMPLE_EDGE] - SHUFFLE [RS_255] - Group By Operator [GBY_254] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_253] (rows=7276996 width=8) - Output:["_col0"] - Please refer to the previous Filter Operator [FIL_21] <-Reducer 5 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_337] - Select Operator [SEL_336] (rows=3939496 width=380) + PARTITION_ONLY_SHUFFLE [RS_333] + Select Operator [SEL_332] (rows=3939496 width=380) Output:["_col0","_col1","_col2","_col3"] - Group By Operator [GBY_335] (rows=3939496 width=380) + Group By Operator [GBY_331] (rows=3939496 width=380) Output:["_col0","_col1","_col2","_col3"],aggregations:["sum(_col9)"],keys:_col4, _col5, _col7 - Select Operator [SEL_334] (rows=84010488 width=843) + Select Operator [SEL_330] (rows=84010488 width=843) Output:["_col4","_col5","_col7","_col9"] - Group By Operator [GBY_333] (rows=84010488 width=843) + Group By Operator [GBY_329] (rows=84010488 width=843) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4, KEY._col5, KEY._col6, KEY._col7, KEY._col8 <-Reducer 4 [SIMPLE_EDGE] SHUFFLE [RS_37] @@ -283,11 +269,11 @@ Stage-0 Group By Operator [GBY_36] (rows=84010488 width=843) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9"],aggregations:["sum(_col4)"],keys:_col13, _col14, _col21, _col6, _col7, _col9, _col10, _col17, _col23 Merge Join Operator [MERGEJOIN_295] (rows=138508741 width=824) - Conds:RS_32._col0, _col3=RS_331._col0, _col1(Inner),Output:["_col4","_col6","_col7","_col9","_col10","_col13","_col14","_col17","_col21","_col23"] - <-Map 23 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_331] + Conds:RS_32._col0, _col3=RS_327._col0, _col1(Inner),Output:["_col4","_col6","_col7","_col9","_col10","_col13","_col14","_col17","_col21","_col23"] + <-Map 20 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_327] PartitionCols:_col0, _col1 - Please refer to the previous Select Operator [SEL_330] + Please refer to the previous Select Operator [SEL_326] <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_32] PartitionCols:_col0, _col3 @@ -303,7 +289,7 @@ Stage-0 SHUFFLE [RS_29] PartitionCols:_col1, _col2 Merge Join Operator [MERGEJOIN_291] (rows=76612563 width=382) - Conds:RS_328._col0=RS_306._col0(Inner),Output:["_col0","_col1","_col2","_col3","_col4","_col6","_col7","_col9","_col10"] + Conds:RS_315._col0=RS_306._col0(Inner),Output:["_col0","_col1","_col2","_col3","_col4","_col6","_col7","_col9","_col10"] <-Map 7 [SIMPLE_EDGE] vectorized SHUFFLE [RS_306] PartitionCols:_col0 @@ -313,36 +299,14 @@ Stage-0 predicate:((i_color = 'orchid') and i_item_sk is not null) Please refer to the previous TableScan [TS_3] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_328] + SHUFFLE [RS_315] PartitionCols:_col0 - Select Operator [SEL_327] (rows=525333486 width=122) + Select Operator [SEL_314] (rows=525333486 width=122) Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_326] (rows=525333486 width=122) - predicate:((ss_customer_sk BETWEEN DynamicValue(RS_30_customer_c_customer_sk_min) AND DynamicValue(RS_30_customer_c_customer_sk_max) and in_bloom_filter(ss_customer_sk, DynamicValue(RS_30_customer_c_customer_sk_bloom_filter))) and (ss_item_sk BETWEEN DynamicValue(RS_27_item_i_item_sk_min) AND DynamicValue(RS_27_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_27_item_i_item_sk_bloom_filter))) and (ss_store_sk BETWEEN DynamicValue(RS_30_store_s_store_sk_min) AND DynamicValue(RS_30_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_30_store_s_store_sk_bloom_filter))) and ss_customer_sk is not null and ss_item_sk is not null and ss_store_sk is not null and ss_ticket_number is not null) + Filter Operator [FIL_313] (rows=525333486 width=122) + predicate:((ss_item_sk BETWEEN DynamicValue(RS_27_item_i_item_sk_min) AND DynamicValue(RS_27_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_27_item_i_item_sk_bloom_filter))) and ss_customer_sk is not null and ss_item_sk is not null and ss_store_sk is not null and ss_ticket_number is not null) TableScan [TS_0] (rows=575995635 width=122) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_item_sk","ss_customer_sk","ss_store_sk","ss_ticket_number","ss_sales_price"] - <-Reducer 16 [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=6636187)"] - <-Reducer 15 [CUSTOM_SIMPLE_EDGE] - SHUFFLE [RS_152] - Group By Operator [GBY_151] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=6636187)"] - Select Operator [SEL_150] (rows=7276996 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_22] - <-Reducer 17 [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)"] - <-Reducer 15 [CUSTOM_SIMPLE_EDGE] - SHUFFLE [RS_157] - Group By Operator [GBY_156] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_155] (rows=7276996 width=8) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_22] <-Reducer 8 [BROADCAST_EDGE] vectorized BROADCAST [RS_312] Group By Operator [GBY_311] (rows=1 width=12) diff --git a/ql/src/test/results/clientpositive/perf/tez/query25.q.out b/ql/src/test/results/clientpositive/perf/tez/query25.q.out index 5d1c9fc1df..4bc3392efc 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query25.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query25.q.out @@ -109,20 +109,16 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 12 (BROADCAST_EDGE), Reducer 13 (BROADCAST_EDGE), Reducer 16 (BROADCAST_EDGE), Reducer 17 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) -Map 18 <- Reducer 14 (BROADCAST_EDGE), Reducer 16 (BROADCAST_EDGE), Reducer 17 (BROADCAST_EDGE) -Reducer 10 <- Map 18 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) -Reducer 11 <- Reducer 10 (SIMPLE_EDGE), Reducer 15 (SIMPLE_EDGE) -Reducer 12 <- Reducer 10 (CUSTOM_SIMPLE_EDGE) -Reducer 13 <- Reducer 10 (CUSTOM_SIMPLE_EDGE) -Reducer 14 <- Map 8 (CUSTOM_SIMPLE_EDGE) -Reducer 15 <- Map 19 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) -Reducer 16 <- Reducer 15 (CUSTOM_SIMPLE_EDGE) -Reducer 17 <- Reducer 15 (CUSTOM_SIMPLE_EDGE) +Map 1 <- Reducer 9 (BROADCAST_EDGE) +Map 14 <- Reducer 12 (BROADCAST_EDGE) +Reducer 10 <- Map 14 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) +Reducer 11 <- Reducer 10 (SIMPLE_EDGE), Reducer 13 (SIMPLE_EDGE) +Reducer 12 <- Map 8 (CUSTOM_SIMPLE_EDGE) +Reducer 13 <- Map 15 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) Reducer 3 <- Reducer 11 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 20 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Map 21 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) +Reducer 4 <- Map 16 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 5 <- Map 17 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) Reducer 9 <- Map 8 (CUSTOM_SIMPLE_EDGE) @@ -132,14 +128,14 @@ Stage-0 limit:100 Stage-1 Reducer 7 vectorized - File Output Operator [FS_263] - Limit [LIM_262] (rows=100 width=808) + File Output Operator [FS_253] + Limit [LIM_252] (rows=100 width=808) Number of rows:100 - Select Operator [SEL_261] (rows=4248052806 width=808) + Select Operator [SEL_251] (rows=4248052806 width=808) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] <-Reducer 6 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_260] - Group By Operator [GBY_259] (rows=4248052806 width=808) + SHUFFLE [RS_250] + Group By Operator [GBY_249] (rows=4248052806 width=808) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3 <-Reducer 5 [SIMPLE_EDGE] SHUFFLE [RS_49] @@ -149,13 +145,13 @@ Stage-0 Top N Key Operator [TNK_95] (rows=4248052806 width=807) keys:_col25, _col26, _col28, _col29,sort order:++++,top n:100 Merge Join Operator [MERGEJOIN_214] (rows=4248052806 width=807) - Conds:RS_44._col3=RS_258._col0(Inner),Output:["_col5","_col12","_col20","_col25","_col26","_col28","_col29"] - <-Map 21 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_258] + Conds:RS_44._col3=RS_248._col0(Inner),Output:["_col5","_col12","_col20","_col25","_col26","_col28","_col29"] + <-Map 17 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_248] PartitionCols:_col0 - Select Operator [SEL_257] (rows=1704 width=192) + Select Operator [SEL_247] (rows=1704 width=192) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_256] (rows=1704 width=192) + Filter Operator [FIL_246] (rows=1704 width=192) predicate:s_store_sk is not null TableScan [TS_32] (rows=1704 width=192) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_store_id","s_store_name"] @@ -163,13 +159,13 @@ Stage-0 SHUFFLE [RS_44] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_213] (rows=4248052806 width=623) - Conds:RS_41._col1=RS_255._col0(Inner),Output:["_col3","_col5","_col12","_col20","_col25","_col26"] - <-Map 20 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_255] + Conds:RS_41._col1=RS_245._col0(Inner),Output:["_col3","_col5","_col12","_col20","_col25","_col26"] + <-Map 16 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_245] PartitionCols:_col0 - Select Operator [SEL_254] (rows=462000 width=288) + Select Operator [SEL_244] (rows=462000 width=288) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_253] (rows=462000 width=288) + Filter Operator [FIL_243] (rows=462000 width=288) predicate:i_item_sk is not null TableScan [TS_29] (rows=462000 width=288) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_item_id","i_item_desc"] @@ -184,10 +180,10 @@ Stage-0 Merge Join Operator [MERGEJOIN_211] (rows=1893811716 width=235) Conds:RS_25._col2, _col1=RS_26._col1, _col2(Inner),Output:["_col3","_col8","_col9","_col10","_col11"] <-Reducer 10 [SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_25] + SHUFFLE [RS_25] PartitionCols:_col2, _col1 Merge Join Operator [MERGEJOIN_209] (rows=54418158 width=119) - Conds:RS_245._col0=RS_223._col0(Inner),Output:["_col1","_col2","_col3"] + Conds:RS_239._col0=RS_223._col0(Inner),Output:["_col1","_col2","_col3"] <-Map 8 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_223] PartitionCols:_col0 @@ -197,59 +193,19 @@ Stage-0 predicate:((d_year = 2000) and d_date_sk is not null and d_moy BETWEEN 4 AND 10) TableScan [TS_3] (rows=73049 width=12) default@date_dim,d1,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] - <-Map 18 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_245] + <-Map 14 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_239] PartitionCols:_col0 - Select Operator [SEL_244] (rows=285117831 width=123) + Select Operator [SEL_238] (rows=285117831 width=123) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_243] (rows=285117831 width=123) - predicate:((cs_bill_customer_sk BETWEEN DynamicValue(RS_26_store_returns_sr_customer_sk_min) AND DynamicValue(RS_26_store_returns_sr_customer_sk_max) and in_bloom_filter(cs_bill_customer_sk, DynamicValue(RS_26_store_returns_sr_customer_sk_bloom_filter))) and (cs_item_sk BETWEEN DynamicValue(RS_26_store_returns_sr_item_sk_min) AND DynamicValue(RS_26_store_returns_sr_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_26_store_returns_sr_item_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_23_d3_d_date_sk_min) AND DynamicValue(RS_23_d3_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_23_d3_d_date_sk_bloom_filter))) and cs_bill_customer_sk is not null and cs_item_sk is not null and cs_sold_date_sk is not null) + Filter Operator [FIL_237] (rows=285117831 width=123) + predicate:((cs_sold_date_sk BETWEEN DynamicValue(RS_23_d3_d_date_sk_min) AND DynamicValue(RS_23_d3_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_23_d3_d_date_sk_bloom_filter))) and cs_bill_customer_sk is not null and cs_item_sk is not null and cs_sold_date_sk is not null) TableScan [TS_6] (rows=287989836 width=123) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_bill_customer_sk","cs_item_sk","cs_net_profit"] - <-Reducer 16 [BROADCAST_EDGE] vectorized - BROADCAST [RS_237] + <-Reducer 12 [BROADCAST_EDGE] vectorized + BROADCAST [RS_236] Group By Operator [GBY_235] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Reducer 15 [CUSTOM_SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_108] - Group By Operator [GBY_107] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_106] (rows=9402909 width=8) - Output:["_col0"] - Merge Join Operator [MERGEJOIN_210] (rows=9402909 width=100) - Conds:RS_234._col0=RS_225._col0(Inner),Output:["_col1","_col2","_col3","_col4"] - <-Map 8 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_225] - PartitionCols:_col0 - Select Operator [SEL_220] (rows=351 width=12) - Output:["_col0"] - Filter Operator [FIL_217] (rows=351 width=12) - predicate:((d_year = 2000) and d_date_sk is not null and d_moy BETWEEN 4 AND 10) - Please refer to the previous TableScan [TS_3] - <-Map 19 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_234] - PartitionCols:_col0 - Select Operator [SEL_233] (rows=53632139 width=123) - Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_232] (rows=53632139 width=123) - predicate:(sr_customer_sk is not null and sr_item_sk is not null and sr_returned_date_sk is not null and sr_ticket_number is not null) - TableScan [TS_12] (rows=57591150 width=123) - default@store_returns,store_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["sr_returned_date_sk","sr_item_sk","sr_customer_sk","sr_ticket_number","sr_net_loss"] - <-Reducer 17 [BROADCAST_EDGE] vectorized - BROADCAST [RS_242] - Group By Operator [GBY_240] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Reducer 15 [CUSTOM_SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_123] - Group By Operator [GBY_122] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_121] (rows=9402909 width=6) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_210] - <-Reducer 14 [BROADCAST_EDGE] vectorized - BROADCAST [RS_239] - Group By Operator [GBY_238] (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_229] Group By Operator [GBY_227] (rows=1 width=12) @@ -257,15 +213,33 @@ Stage-0 Select Operator [SEL_224] (rows=351 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_219] - <-Reducer 15 [SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_26] + <-Reducer 13 [SIMPLE_EDGE] + SHUFFLE [RS_26] PartitionCols:_col1, _col2 - Please refer to the previous Merge Join Operator [MERGEJOIN_210] + Merge Join Operator [MERGEJOIN_210] (rows=9402909 width=100) + Conds:RS_242._col0=RS_225._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + <-Map 8 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_225] + PartitionCols:_col0 + Select Operator [SEL_220] (rows=351 width=12) + Output:["_col0"] + Filter Operator [FIL_217] (rows=351 width=12) + predicate:((d_year = 2000) and d_date_sk is not null and d_moy BETWEEN 4 AND 10) + Please refer to the previous TableScan [TS_3] + <-Map 15 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_242] + PartitionCols:_col0 + Select Operator [SEL_241] (rows=53632139 width=123) + Output:["_col0","_col1","_col2","_col3","_col4"] + Filter Operator [FIL_240] (rows=53632139 width=123) + predicate:(sr_customer_sk is not null and sr_item_sk is not null and sr_returned_date_sk is not null and sr_ticket_number is not null) + TableScan [TS_12] (rows=57591150 width=123) + default@store_returns,store_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["sr_returned_date_sk","sr_item_sk","sr_customer_sk","sr_ticket_number","sr_net_loss"] <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_38] PartitionCols:_col1, _col2, _col4 Merge Join Operator [MERGEJOIN_208] (rows=13737330 width=8) - Conds:RS_252._col0=RS_221._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5"] + Conds:RS_234._col0=RS_221._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5"] <-Map 8 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_221] PartitionCols:_col0 @@ -275,42 +249,14 @@ Stage-0 predicate:((d_moy = 4) and (d_year = 2000) and d_date_sk is not null) Please refer to the previous TableScan [TS_3] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_252] + SHUFFLE [RS_234] PartitionCols:_col0 - Select Operator [SEL_251] (rows=501694138 width=126) + Select Operator [SEL_233] (rows=501694138 width=126) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] - Filter Operator [FIL_250] (rows=501694138 width=126) - predicate:((ss_customer_sk BETWEEN DynamicValue(RS_25_catalog_sales_cs_bill_customer_sk_min) AND DynamicValue(RS_25_catalog_sales_cs_bill_customer_sk_max) and in_bloom_filter(ss_customer_sk, DynamicValue(RS_25_catalog_sales_cs_bill_customer_sk_bloom_filter))) and (ss_customer_sk BETWEEN DynamicValue(RS_26_store_returns_sr_customer_sk_min) AND DynamicValue(RS_26_store_returns_sr_customer_sk_max) and in_bloom_filter(ss_customer_sk, DynamicValue(RS_26_store_returns_sr_customer_sk_bloom_filter))) and (ss_item_sk BETWEEN DynamicValue(RS_25_catalog_sales_cs_item_sk_min) AND DynamicValue(RS_25_catalog_sales_cs_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_25_catalog_sales_cs_item_sk_bloom_filter))) and (ss_item_sk BETWEEN DynamicValue(RS_26_store_returns_sr_item_sk_min) AND DynamicValue(RS_26_store_returns_sr_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_26_store_returns_sr_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_36_d1_d_date_sk_min) AND DynamicValue(RS_36_d1_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_36_d1_d_date_sk_bloom_filter))) and ss_customer_sk is not null and ss_item_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null and ss_ticket_number is not null) + Filter Operator [FIL_232] (rows=501694138 width=126) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_36_d1_d_date_sk_min) AND DynamicValue(RS_36_d1_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_36_d1_d_date_sk_bloom_filter))) and ss_customer_sk is not null and ss_item_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null and ss_ticket_number is not null) TableScan [TS_0] (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_ticket_number","ss_net_profit"] - <-Reducer 16 [BROADCAST_EDGE] vectorized - BROADCAST [RS_236] - Please refer to the previous Group By Operator [GBY_235] - <-Reducer 17 [BROADCAST_EDGE] vectorized - BROADCAST [RS_241] - Please refer to the previous Group By Operator [GBY_240] - <-Reducer 12 [BROADCAST_EDGE] vectorized - BROADCAST [RS_247] - Group By Operator [GBY_246] (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_113] - Group By Operator [GBY_112] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_111] (rows=54418158 width=8) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_209] - <-Reducer 13 [BROADCAST_EDGE] vectorized - BROADCAST [RS_249] - Group By Operator [GBY_248] (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_128] - Group By Operator [GBY_127] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_126] (rows=54418158 width=7) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_209] <-Reducer 9 [BROADCAST_EDGE] vectorized BROADCAST [RS_231] Group By Operator [GBY_230] (rows=1 width=12) diff --git a/ql/src/test/results/clientpositive/perf/tez/query26.q.out b/ql/src/test/results/clientpositive/perf/tez/query26.q.out index 7c42069758..a605684b35 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query26.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query26.q.out @@ -53,12 +53,11 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 11 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) -Reducer 11 <- Map 10 (CUSTOM_SIMPLE_EDGE) +Map 1 <- Reducer 9 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) Reducer 3 <- Map 10 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 12 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Map 13 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) +Reducer 4 <- Map 11 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 5 <- Map 12 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) Reducer 9 <- Map 8 (CUSTOM_SIMPLE_EDGE) @@ -68,16 +67,16 @@ Stage-0 limit:100 Stage-1 Reducer 7 vectorized - File Output Operator [FS_130] - Limit [LIM_129] (rows=100 width=444) + File Output Operator [FS_125] + Limit [LIM_124] (rows=100 width=444) Number of rows:100 - Select Operator [SEL_128] (rows=310774 width=444) + Select Operator [SEL_123] (rows=310774 width=444) Output:["_col0","_col1","_col2","_col3","_col4"] <-Reducer 6 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_127] - Select Operator [SEL_126] (rows=310774 width=444) + SHUFFLE [RS_122] + Select Operator [SEL_121] (rows=310774 width=444) Output:["_col0","_col1","_col2","_col3","_col4"] - Group By Operator [GBY_125] (rows=310774 width=476) + Group By Operator [GBY_120] (rows=310774 width=476) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8"],aggregations:["sum(VALUE._col0)","count(VALUE._col1)","sum(VALUE._col2)","count(VALUE._col3)","sum(VALUE._col4)","count(VALUE._col5)","sum(VALUE._col6)","count(VALUE._col7)"],keys:KEY._col0 <-Reducer 5 [SIMPLE_EDGE] SHUFFLE [RS_29] @@ -87,13 +86,13 @@ Stage-0 Top N Key Operator [TNK_55] (rows=809521 width=100) keys:_col18,sort order:+,top n:100 Merge Join Operator [MERGEJOIN_99] (rows=809521 width=100) - Conds:RS_24._col2=RS_124._col0(Inner),Output:["_col4","_col5","_col6","_col7","_col18"] - <-Map 13 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_124] + Conds:RS_24._col2=RS_119._col0(Inner),Output:["_col4","_col5","_col6","_col7","_col18"] + <-Map 12 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_119] PartitionCols:_col0 - Select Operator [SEL_123] (rows=462000 width=104) + Select Operator [SEL_118] (rows=462000 width=104) Output:["_col0","_col1"] - Filter Operator [FIL_122] (rows=462000 width=104) + Filter Operator [FIL_117] (rows=462000 width=104) predicate:i_item_sk is not null TableScan [TS_12] (rows=462000 width=104) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_item_id"] @@ -101,13 +100,13 @@ Stage-0 SHUFFLE [RS_24] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_98] (rows=809521 width=4) - Conds:RS_21._col3=RS_121._col0(Inner),Output:["_col2","_col4","_col5","_col6","_col7"] - <-Map 12 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_121] + Conds:RS_21._col3=RS_116._col0(Inner),Output:["_col2","_col4","_col5","_col6","_col7"] + <-Map 11 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_116] PartitionCols:_col0 - Select Operator [SEL_120] (rows=2300 width=174) + Select Operator [SEL_115] (rows=2300 width=174) Output:["_col0"] - Filter Operator [FIL_119] (rows=2300 width=174) + Filter Operator [FIL_114] (rows=2300 width=174) predicate:(((p_channel_email = 'N') or (p_channel_event = 'N')) and p_promo_sk is not null) TableScan [TS_9] (rows=2300 width=174) default@promotion,promotion,Tbl:COMPLETE,Col:COMPLETE,Output:["p_promo_sk","p_channel_email","p_channel_event"] @@ -115,13 +114,13 @@ Stage-0 SHUFFLE [RS_21] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_97] (rows=809521 width=4) - Conds:RS_18._col0=RS_110._col0(Inner),Output:["_col2","_col3","_col4","_col5","_col6","_col7"] + Conds:RS_18._col0=RS_113._col0(Inner),Output:["_col2","_col3","_col4","_col5","_col6","_col7"] <-Map 10 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_110] + SHUFFLE [RS_113] PartitionCols:_col0 - Select Operator [SEL_109] (rows=652 width=8) + Select Operator [SEL_112] (rows=652 width=8) Output:["_col0"] - Filter Operator [FIL_108] (rows=652 width=8) + Filter Operator [FIL_111] (rows=652 width=8) predicate:((d_year = 1998) and d_date_sk is not null) TableScan [TS_6] (rows=73049 width=8) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year"] @@ -129,7 +128,7 @@ Stage-0 SHUFFLE [RS_18] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_96] (rows=2283326 width=135) - Conds:RS_118._col1=RS_102._col0(Inner),Output:["_col0","_col2","_col3","_col4","_col5","_col6","_col7"] + Conds:RS_110._col1=RS_102._col0(Inner),Output:["_col0","_col2","_col3","_col4","_col5","_col6","_col7"] <-Map 8 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_102] PartitionCols:_col0 @@ -140,25 +139,14 @@ Stage-0 TableScan [TS_3] (rows=1861800 width=268) default@customer_demographics,customer_demographics,Tbl:COMPLETE,Col:COMPLETE,Output:["cd_demo_sk","cd_gender","cd_marital_status","cd_education_status"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_118] + SHUFFLE [RS_110] PartitionCols:_col1 - Select Operator [SEL_117] (rows=283691050 width=354) + Select Operator [SEL_109] (rows=283691050 width=354) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] - Filter Operator [FIL_116] (rows=283691050 width=354) - predicate:((cs_bill_cdemo_sk BETWEEN DynamicValue(RS_16_customer_demographics_cd_demo_sk_min) AND DynamicValue(RS_16_customer_demographics_cd_demo_sk_max) and in_bloom_filter(cs_bill_cdemo_sk, DynamicValue(RS_16_customer_demographics_cd_demo_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_19_date_dim_d_date_sk_min) AND DynamicValue(RS_19_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_19_date_dim_d_date_sk_bloom_filter))) and cs_bill_cdemo_sk is not null and cs_item_sk is not null and cs_promo_sk is not null and cs_sold_date_sk is not null) + Filter Operator [FIL_108] (rows=283691050 width=354) + predicate:((cs_bill_cdemo_sk BETWEEN DynamicValue(RS_16_customer_demographics_cd_demo_sk_min) AND DynamicValue(RS_16_customer_demographics_cd_demo_sk_max) and in_bloom_filter(cs_bill_cdemo_sk, DynamicValue(RS_16_customer_demographics_cd_demo_sk_bloom_filter))) and cs_bill_cdemo_sk is not null and cs_item_sk is not null and cs_promo_sk is not null and cs_sold_date_sk is not null) TableScan [TS_0] (rows=287989836 width=354) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_bill_cdemo_sk","cs_item_sk","cs_promo_sk","cs_quantity","cs_list_price","cs_sales_price","cs_coupon_amt"] - <-Reducer 11 [BROADCAST_EDGE] vectorized - BROADCAST [RS_115] - Group By Operator [GBY_114] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 10 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_113] - Group By Operator [GBY_112] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_111] (rows=652 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_109] <-Reducer 9 [BROADCAST_EDGE] vectorized BROADCAST [RS_107] Group By Operator [GBY_106] (rows=1 width=12) diff --git a/ql/src/test/results/clientpositive/perf/tez/query27.q.out b/ql/src/test/results/clientpositive/perf/tez/query27.q.out index 59cca4f94f..9b2926af64 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query27.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query27.q.out @@ -57,13 +57,11 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 11 (BROADCAST_EDGE), Reducer 13 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) -Reducer 11 <- Map 10 (CUSTOM_SIMPLE_EDGE) -Reducer 13 <- Map 12 (CUSTOM_SIMPLE_EDGE) +Map 1 <- Reducer 9 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) Reducer 3 <- Map 10 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 12 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Map 14 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) +Reducer 4 <- Map 11 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 5 <- Map 12 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) Reducer 9 <- Map 8 (CUSTOM_SIMPLE_EDGE) @@ -73,16 +71,16 @@ Stage-0 limit:100 Stage-1 Reducer 7 vectorized - File Output Operator [FS_136] - Limit [LIM_135] (rows=100 width=538) + File Output Operator [FS_126] + Limit [LIM_125] (rows=100 width=538) Number of rows:100 - Select Operator [SEL_134] (rows=4281825 width=538) + Select Operator [SEL_124] (rows=4281825 width=538) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] <-Reducer 6 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_133] - Select Operator [SEL_132] (rows=4281825 width=538) + SHUFFLE [RS_123] + Select Operator [SEL_122] (rows=4281825 width=538) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] - Group By Operator [GBY_131] (rows=4281825 width=570) + Group By Operator [GBY_121] (rows=4281825 width=570) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10"],aggregations:["sum(VALUE._col0)","count(VALUE._col1)","sum(VALUE._col2)","count(VALUE._col3)","sum(VALUE._col4)","count(VALUE._col5)","sum(VALUE._col6)","count(VALUE._col7)"],keys:KEY._col0, KEY._col1, KEY._col2 <-Reducer 5 [SIMPLE_EDGE] SHUFFLE [RS_30] @@ -94,13 +92,13 @@ Stage-0 Select Operator [SEL_27] (rows=1427275 width=186) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] Merge Join Operator [MERGEJOIN_100] (rows=1427275 width=186) - Conds:RS_24._col1=RS_130._col0(Inner),Output:["_col4","_col5","_col6","_col7","_col15","_col17"] - <-Map 14 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_130] + Conds:RS_24._col1=RS_120._col0(Inner),Output:["_col4","_col5","_col6","_col7","_col15","_col17"] + <-Map 12 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_120] PartitionCols:_col0 - Select Operator [SEL_129] (rows=462000 width=104) + Select Operator [SEL_119] (rows=462000 width=104) Output:["_col0","_col1"] - Filter Operator [FIL_128] (rows=462000 width=104) + Filter Operator [FIL_118] (rows=462000 width=104) predicate:i_item_sk is not null TableScan [TS_12] (rows=462000 width=104) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_item_id"] @@ -108,13 +106,13 @@ Stage-0 SHUFFLE [RS_24] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_99] (rows=1427275 width=90) - Conds:RS_21._col3=RS_119._col0(Inner),Output:["_col1","_col4","_col5","_col6","_col7","_col15"] - <-Map 12 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_119] + Conds:RS_21._col3=RS_117._col0(Inner),Output:["_col1","_col4","_col5","_col6","_col7","_col15"] + <-Map 11 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_117] PartitionCols:_col0 - Select Operator [SEL_118] (rows=209 width=90) + Select Operator [SEL_116] (rows=209 width=90) Output:["_col0","_col1"] - Filter Operator [FIL_117] (rows=209 width=90) + Filter Operator [FIL_115] (rows=209 width=90) predicate:((s_state) IN ('SD', 'FL', 'MI', 'LA', 'MO', 'SC') and s_store_sk is not null) TableScan [TS_9] (rows=1704 width=90) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_state"] @@ -122,13 +120,13 @@ Stage-0 SHUFFLE [RS_21] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_98] (rows=1441779 width=4) - Conds:RS_18._col0=RS_111._col0(Inner),Output:["_col1","_col3","_col4","_col5","_col6","_col7"] + Conds:RS_18._col0=RS_114._col0(Inner),Output:["_col1","_col3","_col4","_col5","_col6","_col7"] <-Map 10 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_111] + SHUFFLE [RS_114] PartitionCols:_col0 - Select Operator [SEL_110] (rows=652 width=8) + Select Operator [SEL_113] (rows=652 width=8) Output:["_col0"] - Filter Operator [FIL_109] (rows=652 width=8) + Filter Operator [FIL_112] (rows=652 width=8) predicate:((d_year = 2001) and d_date_sk is not null) TableScan [TS_6] (rows=73049 width=8) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year"] @@ -136,7 +134,7 @@ Stage-0 SHUFFLE [RS_18] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_97] (rows=4037920 width=4) - Conds:RS_127._col2=RS_103._col0(Inner),Output:["_col0","_col1","_col3","_col4","_col5","_col6","_col7"] + Conds:RS_111._col2=RS_103._col0(Inner),Output:["_col0","_col1","_col3","_col4","_col5","_col6","_col7"] <-Map 8 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_103] PartitionCols:_col0 @@ -147,36 +145,14 @@ Stage-0 TableScan [TS_3] (rows=1861800 width=268) default@customer_demographics,customer_demographics,Tbl:COMPLETE,Col:COMPLETE,Output:["cd_demo_sk","cd_gender","cd_marital_status","cd_education_status"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_127] + SHUFFLE [RS_111] PartitionCols:_col2 - Select Operator [SEL_126] (rows=501690006 width=340) + Select Operator [SEL_110] (rows=501690006 width=340) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] - Filter Operator [FIL_125] (rows=501690006 width=340) - predicate:((ss_cdemo_sk BETWEEN DynamicValue(RS_16_customer_demographics_cd_demo_sk_min) AND DynamicValue(RS_16_customer_demographics_cd_demo_sk_max) and in_bloom_filter(ss_cdemo_sk, DynamicValue(RS_16_customer_demographics_cd_demo_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_19_date_dim_d_date_sk_min) AND DynamicValue(RS_19_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_19_date_dim_d_date_sk_bloom_filter))) and (ss_store_sk BETWEEN DynamicValue(RS_22_store_s_store_sk_min) AND DynamicValue(RS_22_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_22_store_s_store_sk_bloom_filter))) and ss_cdemo_sk is not null and ss_item_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_109] (rows=501690006 width=340) + predicate:((ss_cdemo_sk BETWEEN DynamicValue(RS_16_customer_demographics_cd_demo_sk_min) AND DynamicValue(RS_16_customer_demographics_cd_demo_sk_max) and in_bloom_filter(ss_cdemo_sk, DynamicValue(RS_16_customer_demographics_cd_demo_sk_bloom_filter))) and ss_cdemo_sk is not null and ss_item_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) TableScan [TS_0] (rows=575995635 width=340) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_cdemo_sk","ss_store_sk","ss_quantity","ss_list_price","ss_sales_price","ss_coupon_amt"] - <-Reducer 11 [BROADCAST_EDGE] vectorized - BROADCAST [RS_116] - Group By Operator [GBY_115] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 10 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_114] - Group By Operator [GBY_113] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_112] (rows=652 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_110] - <-Reducer 13 [BROADCAST_EDGE] vectorized - BROADCAST [RS_124] - Group By Operator [GBY_123] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 12 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_122] - Group By Operator [GBY_121] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_120] (rows=209 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_118] <-Reducer 9 [BROADCAST_EDGE] vectorized BROADCAST [RS_108] Group By Operator [GBY_107] (rows=1 width=12) diff --git a/ql/src/test/results/clientpositive/perf/tez/query29.q.out b/ql/src/test/results/clientpositive/perf/tez/query29.q.out index a21c3c789e..209844adc7 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query29.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query29.q.out @@ -107,38 +107,33 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 9 (BROADCAST_EDGE) -Map 10 <- Reducer 16 (BROADCAST_EDGE), Reducer 18 (BROADCAST_EDGE), Reducer 19 (BROADCAST_EDGE), Reducer 20 (BROADCAST_EDGE), Reducer 6 (BROADCAST_EDGE), Reducer 7 (BROADCAST_EDGE) -Reducer 11 <- Map 10 (SIMPLE_EDGE), Map 15 (SIMPLE_EDGE) -Reducer 12 <- Reducer 11 (SIMPLE_EDGE), Reducer 17 (SIMPLE_EDGE) -Reducer 13 <- Map 22 (SIMPLE_EDGE), Reducer 12 (SIMPLE_EDGE) -Reducer 14 <- Map 23 (SIMPLE_EDGE), Reducer 13 (SIMPLE_EDGE) -Reducer 16 <- Map 15 (CUSTOM_SIMPLE_EDGE) -Reducer 17 <- Map 15 (SIMPLE_EDGE), Map 21 (SIMPLE_EDGE) -Reducer 18 <- Reducer 17 (CUSTOM_SIMPLE_EDGE) -Reducer 19 <- Reducer 17 (CUSTOM_SIMPLE_EDGE) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) -Reducer 20 <- Reducer 17 (CUSTOM_SIMPLE_EDGE) -Reducer 3 <- Reducer 14 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Map 1 <- Reducer 7 (BROADCAST_EDGE) +Map 8 <- Reducer 14 (BROADCAST_EDGE) +Reducer 10 <- Reducer 15 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) +Reducer 11 <- Map 17 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE) +Reducer 12 <- Map 18 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE) +Reducer 14 <- Map 13 (CUSTOM_SIMPLE_EDGE) +Reducer 15 <- Map 13 (SIMPLE_EDGE), Map 16 (SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) +Reducer 3 <- Reducer 12 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) -Reducer 6 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) -Reducer 7 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) -Reducer 9 <- Map 8 (CUSTOM_SIMPLE_EDGE) +Reducer 7 <- Map 6 (CUSTOM_SIMPLE_EDGE) +Reducer 9 <- Map 13 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) Stage-0 Fetch Operator limit:100 Stage-1 Reducer 5 vectorized - File Output Operator [FS_254] - Limit [LIM_253] (rows=100 width=496) + File Output Operator [FS_244] + Limit [LIM_243] (rows=100 width=496) Number of rows:100 - Select Operator [SEL_252] (rows=21091879 width=496) + Select Operator [SEL_242] (rows=21091879 width=496) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] <-Reducer 4 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_251] - Group By Operator [GBY_250] (rows=21091879 width=496) + SHUFFLE [RS_241] + Group By Operator [GBY_240] (rows=21091879 width=496) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3 <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_49] @@ -149,81 +144,47 @@ Stage-0 keys:_col7, _col8, _col27, _col28,sort order:++++,top n:100 Merge Join Operator [MERGEJOIN_205] (rows=4156223234 width=483) Conds:RS_44._col1, _col2=RS_45._col14, _col13(Inner),Output:["_col3","_col7","_col8","_col14","_col22","_col27","_col28"] - <-Reducer 2 [SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_44] - PartitionCols:_col1, _col2 - Merge Join Operator [MERGEJOIN_199] (rows=7638375 width=10) - Conds:RS_216._col0=RS_208._col0(Inner),Output:["_col1","_col2","_col3"] - <-Map 8 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_208] - PartitionCols:_col0 - Select Operator [SEL_207] (rows=1957 width=8) - Output:["_col0"] - Filter Operator [FIL_206] (rows=1957 width=8) - predicate:((d_year) IN (1999, 2000, 2001) and d_date_sk is not null) - TableScan [TS_3] (rows=73049 width=8) - default@date_dim,d3,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year"] - <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_216] - PartitionCols:_col0 - Select Operator [SEL_215] (rows=285117831 width=15) - Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_214] (rows=285117831 width=15) - predicate:((cs_sold_date_sk BETWEEN DynamicValue(RS_42_d3_d_date_sk_min) AND DynamicValue(RS_42_d3_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_42_d3_d_date_sk_bloom_filter))) and cs_bill_customer_sk is not null and cs_item_sk is not null and cs_sold_date_sk is not null) - TableScan [TS_0] (rows=287989836 width=15) - default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_bill_customer_sk","cs_item_sk","cs_quantity"] - <-Reducer 9 [BROADCAST_EDGE] vectorized - BROADCAST [RS_213] - Group By Operator [GBY_212] (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_211] - Group By Operator [GBY_210] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_209] (rows=1957 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_207] - <-Reducer 14 [SIMPLE_EDGE] + <-Reducer 12 [SIMPLE_EDGE] SHUFFLE [RS_45] PartitionCols:_col14, _col13 Select Operator [SEL_40] (rows=21091879 width=484) Output:["_col1","_col2","_col8","_col13","_col14","_col16","_col21","_col22"] Merge Join Operator [MERGEJOIN_204] (rows=21091879 width=484) - Conds:RS_37._col3=RS_249._col0(Inner),Output:["_col5","_col10","_col11","_col13","_col18","_col19","_col21","_col22"] - <-Map 23 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_249] + Conds:RS_37._col3=RS_239._col0(Inner),Output:["_col5","_col10","_col11","_col13","_col18","_col19","_col21","_col22"] + <-Map 18 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_239] PartitionCols:_col0 - Select Operator [SEL_248] (rows=1704 width=192) + Select Operator [SEL_238] (rows=1704 width=192) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_247] (rows=1704 width=192) + Filter Operator [FIL_237] (rows=1704 width=192) predicate:s_store_sk is not null TableScan [TS_25] (rows=1704 width=192) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_store_id","s_store_name"] - <-Reducer 13 [SIMPLE_EDGE] + <-Reducer 11 [SIMPLE_EDGE] SHUFFLE [RS_37] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_203] (rows=21091879 width=298) - Conds:RS_34._col1=RS_246._col0(Inner),Output:["_col3","_col5","_col10","_col11","_col13","_col18","_col19"] - <-Map 22 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_246] + Conds:RS_34._col1=RS_236._col0(Inner),Output:["_col3","_col5","_col10","_col11","_col13","_col18","_col19"] + <-Map 17 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_236] PartitionCols:_col0 - Select Operator [SEL_245] (rows=462000 width=288) + Select Operator [SEL_235] (rows=462000 width=288) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_244] (rows=462000 width=288) + Filter Operator [FIL_234] (rows=462000 width=288) predicate:i_item_sk is not null TableScan [TS_22] (rows=462000 width=288) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_item_id","i_item_desc"] - <-Reducer 12 [SIMPLE_EDGE] + <-Reducer 10 [SIMPLE_EDGE] SHUFFLE [RS_34] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_202] (rows=21091879 width=18) Conds:RS_31._col1, _col2, _col4=RS_32._col1, _col2, _col3(Inner),Output:["_col1","_col3","_col5","_col10","_col11","_col13"] - <-Reducer 17 [SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_32] + <-Reducer 15 [SIMPLE_EDGE] + SHUFFLE [RS_32] PartitionCols:_col1, _col2, _col3 Merge Join Operator [MERGEJOIN_201] (rows=5384572 width=13) - Conds:RS_230._col0=RS_223._col0(Inner),Output:["_col1","_col2","_col3","_col4"] - <-Map 15 [SIMPLE_EDGE] vectorized + Conds:RS_233._col0=RS_223._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + <-Map 13 [SIMPLE_EDGE] vectorized SHUFFLE [RS_223] PartitionCols:_col0 Select Operator [SEL_220] (rows=201 width=12) @@ -232,21 +193,21 @@ Stage-0 predicate:((d_year = 1999) and d_date_sk is not null and d_moy BETWEEN 4 AND 7) TableScan [TS_9] (rows=73049 width=12) default@date_dim,d1,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] - <-Map 21 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_230] + <-Map 16 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_233] PartitionCols:_col0 - Select Operator [SEL_229] (rows=53632139 width=19) + Select Operator [SEL_232] (rows=53632139 width=19) Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_228] (rows=53632139 width=19) + Filter Operator [FIL_231] (rows=53632139 width=19) predicate:(sr_customer_sk is not null and sr_item_sk is not null and sr_returned_date_sk is not null and sr_ticket_number is not null) TableScan [TS_12] (rows=57591150 width=19) default@store_returns,store_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["sr_returned_date_sk","sr_item_sk","sr_customer_sk","sr_ticket_number","sr_return_quantity"] - <-Reducer 11 [SIMPLE_EDGE] + <-Reducer 9 [SIMPLE_EDGE] SHUFFLE [RS_31] PartitionCols:_col1, _col2, _col4 Merge Join Operator [MERGEJOIN_200] (rows=13737330 width=8) - Conds:RS_243._col0=RS_221._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5"] - <-Map 15 [SIMPLE_EDGE] vectorized + Conds:RS_230._col0=RS_221._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5"] + <-Map 13 [SIMPLE_EDGE] vectorized SHUFFLE [RS_221] PartitionCols:_col0 Select Operator [SEL_219] (rows=50 width=12) @@ -254,79 +215,58 @@ Stage-0 Filter Operator [FIL_217] (rows=50 width=12) predicate:((d_moy = 4) and (d_year = 1999) and d_date_sk is not null) Please refer to the previous TableScan [TS_9] - <-Map 10 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_243] + <-Map 8 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_230] PartitionCols:_col0 - Select Operator [SEL_242] (rows=501694138 width=23) + Select Operator [SEL_229] (rows=501694138 width=23) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] - Filter Operator [FIL_241] (rows=501694138 width=23) - predicate:((ss_customer_sk BETWEEN DynamicValue(RS_32_store_returns_sr_customer_sk_min) AND DynamicValue(RS_32_store_returns_sr_customer_sk_max) and in_bloom_filter(ss_customer_sk, DynamicValue(RS_32_store_returns_sr_customer_sk_bloom_filter))) and (ss_customer_sk BETWEEN DynamicValue(RS_44_catalog_sales_cs_bill_customer_sk_min) AND DynamicValue(RS_44_catalog_sales_cs_bill_customer_sk_max) and in_bloom_filter(ss_customer_sk, DynamicValue(RS_44_catalog_sales_cs_bill_customer_sk_bloom_filter))) and (ss_item_sk BETWEEN DynamicValue(RS_32_store_returns_sr_item_sk_min) AND DynamicValue(RS_32_store_returns_sr_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_32_store_returns_sr_item_sk_bloom_filter))) and (ss_item_sk BETWEEN DynamicValue(RS_44_catalog_sales_cs_item_sk_min) AND DynamicValue(RS_44_catalog_sales_cs_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_44_catalog_sales_cs_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_29_d1_d_date_sk_min) AND DynamicValue(RS_29_d1_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_29_d1_d_date_sk_bloom_filter))) and (ss_ticket_number BETWEEN DynamicValue(RS_32_store_returns_sr_ticket_number_min) AND DynamicValue(RS_32_store_returns_sr_ticket_number_max) and in_bloom_filter(ss_ticket_number, DynamicValue(RS_32_store_returns_sr_ticket_number_bloom_filter))) and ss_customer_sk is not null and ss_item_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null and ss_ticket_number is not null) + Filter Operator [FIL_228] (rows=501694138 width=23) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_29_d1_d_date_sk_min) AND DynamicValue(RS_29_d1_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_29_d1_d_date_sk_bloom_filter))) and ss_customer_sk is not null and ss_item_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null and ss_ticket_number is not null) TableScan [TS_6] (rows=575995635 width=23) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_customer_sk","ss_store_sk","ss_ticket_number","ss_quantity"] - <-Reducer 16 [BROADCAST_EDGE] vectorized + <-Reducer 14 [BROADCAST_EDGE] vectorized BROADCAST [RS_227] Group By Operator [GBY_226] (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 + <-Map 13 [CUSTOM_SIMPLE_EDGE] vectorized SHUFFLE [RS_225] Group By Operator [GBY_224] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] Select Operator [SEL_222] (rows=50 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_219] - <-Reducer 18 [BROADCAST_EDGE] vectorized - BROADCAST [RS_232] - Group By Operator [GBY_231] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Reducer 17 [CUSTOM_SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_121] - Group By Operator [GBY_120] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_119] (rows=5384572 width=8) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_201] - <-Reducer 19 [BROADCAST_EDGE] vectorized - BROADCAST [RS_234] - Group By Operator [GBY_233] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Reducer 17 [CUSTOM_SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_126] - Group By Operator [GBY_125] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_124] (rows=5384572 width=5) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_201] - <-Reducer 20 [BROADCAST_EDGE] vectorized - BROADCAST [RS_236] - Group By Operator [GBY_235] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=3507020)"] - <-Reducer 17 [CUSTOM_SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_131] - Group By Operator [GBY_130] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=3507020)"] - Select Operator [SEL_129] (rows=5384572 width=8) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_201] - <-Reducer 6 [BROADCAST_EDGE] vectorized - BROADCAST [RS_238] - Group By Operator [GBY_237] (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_146] - Group By Operator [GBY_145] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_144] (rows=7638375 width=6) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_199] - <-Reducer 7 [BROADCAST_EDGE] vectorized - BROADCAST [RS_240] - Group By Operator [GBY_239] (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_151] - Group By Operator [GBY_150] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_149] (rows=7638375 width=8) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_199] + <-Reducer 2 [SIMPLE_EDGE] + SHUFFLE [RS_44] + PartitionCols:_col1, _col2 + Merge Join Operator [MERGEJOIN_199] (rows=7638375 width=10) + Conds:RS_216._col0=RS_208._col0(Inner),Output:["_col1","_col2","_col3"] + <-Map 6 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_208] + PartitionCols:_col0 + Select Operator [SEL_207] (rows=1957 width=8) + Output:["_col0"] + Filter Operator [FIL_206] (rows=1957 width=8) + predicate:((d_year) IN (1999, 2000, 2001) and d_date_sk is not null) + TableScan [TS_3] (rows=73049 width=8) + default@date_dim,d3,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year"] + <-Map 1 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_216] + PartitionCols:_col0 + Select Operator [SEL_215] (rows=285117831 width=15) + Output:["_col0","_col1","_col2","_col3"] + Filter Operator [FIL_214] (rows=285117831 width=15) + predicate:((cs_sold_date_sk BETWEEN DynamicValue(RS_42_d3_d_date_sk_min) AND DynamicValue(RS_42_d3_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_42_d3_d_date_sk_bloom_filter))) and cs_bill_customer_sk is not null and cs_item_sk is not null and cs_sold_date_sk is not null) + TableScan [TS_0] (rows=287989836 width=15) + default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_bill_customer_sk","cs_item_sk","cs_quantity"] + <-Reducer 7 [BROADCAST_EDGE] vectorized + BROADCAST [RS_213] + Group By Operator [GBY_212] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 6 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_211] + Group By Operator [GBY_210] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_209] (rows=1957 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_207] diff --git a/ql/src/test/results/clientpositive/perf/tez/query3.q.out b/ql/src/test/results/clientpositive/perf/tez/query3.q.out index d4296cf3b2..c39a1719cb 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query3.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query3.q.out @@ -49,27 +49,26 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 7 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) +Map 1 <- Reducer 7 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) Reducer 3 <- Map 8 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) Reducer 7 <- Map 6 (CUSTOM_SIMPLE_EDGE) -Reducer 9 <- Map 8 (CUSTOM_SIMPLE_EDGE) Stage-0 Fetch Operator limit:100 Stage-1 Reducer 5 vectorized - File Output Operator [FS_77] - Limit [LIM_76] (rows=100 width=220) + File Output Operator [FS_72] + Limit [LIM_71] (rows=100 width=220) Number of rows:100 - Select Operator [SEL_75] (rows=274400 width=220) + Select Operator [SEL_70] (rows=274400 width=220) Output:["_col0","_col1","_col2","_col3"] <-Reducer 4 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_74] - Group By Operator [GBY_73] (rows=274400 width=220) + SHUFFLE [RS_69] + Group By Operator [GBY_68] (rows=274400 width=220) Output:["_col0","_col1","_col2","_col3"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_17] @@ -77,13 +76,13 @@ Stage-0 Group By Operator [GBY_16] (rows=274400 width=220) Output:["_col0","_col1","_col2","_col3"],aggregations:["sum(_col2)"],keys:_col8, _col4, _col5 Merge Join Operator [MERGEJOIN_53] (rows=589741 width=108) - Conds:RS_12._col0=RS_64._col0(Inner),Output:["_col2","_col4","_col5","_col8"] + Conds:RS_12._col0=RS_67._col0(Inner),Output:["_col2","_col4","_col5","_col8"] <-Map 8 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_64] + SHUFFLE [RS_67] PartitionCols:_col0 - Select Operator [SEL_63] (rows=5619 width=12) + Select Operator [SEL_66] (rows=5619 width=12) Output:["_col0","_col1"] - Filter Operator [FIL_62] (rows=5619 width=12) + Filter Operator [FIL_65] (rows=5619 width=12) predicate:((d_moy = 12) and d_date_sk is not null) TableScan [TS_6] (rows=73049 width=12) default@date_dim,dt,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] @@ -91,7 +90,7 @@ Stage-0 SHUFFLE [RS_12] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_52] (rows=7666836 width=104) - Conds:RS_72._col1=RS_56._col0(Inner),Output:["_col0","_col2","_col4","_col5"] + Conds:RS_64._col1=RS_56._col0(Inner),Output:["_col0","_col2","_col4","_col5"] <-Map 6 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_56] PartitionCols:_col0 @@ -102,12 +101,12 @@ Stage-0 TableScan [TS_3] (rows=462000 width=111) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_brand_id","i_brand","i_manufact_id"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_72] + SHUFFLE [RS_64] PartitionCols:_col1 - Select Operator [SEL_71] (rows=550076554 width=114) + Select Operator [SEL_63] (rows=550076554 width=114) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_70] (rows=550076554 width=114) - predicate:((ss_item_sk BETWEEN DynamicValue(RS_10_item_i_item_sk_min) AND DynamicValue(RS_10_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_10_item_i_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_13_dt_d_date_sk_min) AND DynamicValue(RS_13_dt_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_13_dt_d_date_sk_bloom_filter))) and ss_item_sk is not null and ss_sold_date_sk is not null) + Filter Operator [FIL_62] (rows=550076554 width=114) + predicate:((ss_item_sk BETWEEN DynamicValue(RS_10_item_i_item_sk_min) AND DynamicValue(RS_10_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_10_item_i_item_sk_bloom_filter))) and ss_item_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_item_sk","ss_ext_sales_price"] <-Reducer 7 [BROADCAST_EDGE] vectorized @@ -121,15 +120,4 @@ Stage-0 Select Operator [SEL_57] (rows=669 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_55] - <-Reducer 9 [BROADCAST_EDGE] vectorized - BROADCAST [RS_69] - Group By Operator [GBY_68] (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_67] - Group By Operator [GBY_66] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_65] (rows=5619 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_63] diff --git a/ql/src/test/results/clientpositive/perf/tez/query32.q.out b/ql/src/test/results/clientpositive/perf/tez/query32.q.out index 1c1a2e7b5e..ae7416a599 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query32.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query32.q.out @@ -63,28 +63,26 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 14 (BROADCAST_EDGE), Reducer 7 (BROADCAST_EDGE) -Map 12 <- Reducer 11 (BROADCAST_EDGE), Reducer 14 (BROADCAST_EDGE), Reducer 5 (BROADCAST_EDGE) -Reducer 10 <- Map 13 (SIMPLE_EDGE), Reducer 9 (ONE_TO_ONE_EDGE) -Reducer 11 <- Map 6 (CUSTOM_SIMPLE_EDGE) -Reducer 14 <- Map 13 (CUSTOM_SIMPLE_EDGE) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) -Reducer 3 <- Reducer 10 (ONE_TO_ONE_EDGE), Reducer 2 (SIMPLE_EDGE) +Map 1 <- Reducer 9 (BROADCAST_EDGE) +Map 10 <- Reducer 12 (BROADCAST_EDGE) +Reducer 12 <- Map 11 (CUSTOM_SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 5 (SIMPLE_EDGE) +Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 8 (ONE_TO_ONE_EDGE) Reducer 4 <- Reducer 3 (CUSTOM_SIMPLE_EDGE) -Reducer 5 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) -Reducer 7 <- Map 6 (CUSTOM_SIMPLE_EDGE) -Reducer 8 <- Map 12 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) -Reducer 9 <- Reducer 8 (SIMPLE_EDGE) +Reducer 6 <- Map 10 (SIMPLE_EDGE), Map 5 (SIMPLE_EDGE) +Reducer 7 <- Reducer 6 (SIMPLE_EDGE) +Reducer 8 <- Map 11 (SIMPLE_EDGE), Reducer 7 (ONE_TO_ONE_EDGE) +Reducer 9 <- Reducer 8 (CUSTOM_SIMPLE_EDGE) Stage-0 Fetch Operator limit:100 Stage-1 Reducer 4 vectorized - File Output Operator [FS_141] - Limit [LIM_140] (rows=1 width=112) + File Output Operator [FS_130] + Limit [LIM_129] (rows=1 width=112) Number of rows:100 - Group By Operator [GBY_139] (rows=1 width=112) + Group By Operator [GBY_128] (rows=1 width=112) Output:["_col0"],aggregations:["sum(VALUE._col0)"] <-Reducer 3 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_36] @@ -96,115 +94,90 @@ Stage-0 predicate:(_col2 > CAST( (1.3 * _col6) AS decimal(14,7))) Merge Join Operator [MERGEJOIN_104] (rows=7434 width=112) Conds:RS_30._col1=RS_31._col2(Inner),Output:["_col2","_col6"] - <-Reducer 2 [SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_30] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_101] (rows=31836679 width=110) - Conds:RS_128._col0=RS_107._col0(Inner),Output:["_col1","_col2"] - <-Map 6 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_107] - PartitionCols:_col0 - Select Operator [SEL_106] (rows=8116 width=98) - Output:["_col0"] - Filter Operator [FIL_105] (rows=8116 width=98) - predicate:(CAST( d_date AS TIMESTAMP) BETWEEN TIMESTAMP'1998-03-18 00:00:00' AND TIMESTAMP'1998-06-16 00:00:00' and d_date_sk is not null) - TableScan [TS_3] (rows=73049 width=98) - default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"] - <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_128] - PartitionCols:_col0 - Select Operator [SEL_127] (rows=286549727 width=119) - Output:["_col0","_col1","_col2"] - Filter Operator [FIL_126] (rows=286549727 width=119) - predicate:((cs_item_sk BETWEEN DynamicValue(RS_24_item_i_item_sk_min) AND DynamicValue(RS_24_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_24_item_i_item_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_28_date_dim_d_date_sk_min) AND DynamicValue(RS_28_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_28_date_dim_d_date_sk_bloom_filter))) and cs_item_sk is not null 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_discount_amt"] - <-Reducer 14 [BROADCAST_EDGE] vectorized - BROADCAST [RS_124] - Group By Operator [GBY_123] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 13 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_122] - Group By Operator [GBY_121] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_120] (rows=669 width=4) - Output:["_col0"] - Select Operator [SEL_118] (rows=669 width=8) - Output:["_col0"] - Filter Operator [FIL_117] (rows=669 width=7) - predicate:((i_manufact_id = 269) and i_item_sk is not null) - TableScan [TS_20] (rows=462000 width=7) - default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_manufact_id"] - <-Reducer 7 [BROADCAST_EDGE] vectorized - BROADCAST [RS_116] - Group By Operator [GBY_115] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 6 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_113] - Group By Operator [GBY_111] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_108] (rows=8116 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_106] - <-Reducer 10 [ONE_TO_ONE_EDGE] - FORWARD [RS_31] + <-Reducer 8 [ONE_TO_ONE_EDGE] + PARTITION_ONLY_SHUFFLE [RS_31] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_103] (rows=97 width=116) - Conds:RS_138._col0=RS_119._col0(Inner),Output:["_col1","_col2"] - <-Map 13 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_119] + Conds:RS_122._col0=RS_111._col0(Inner),Output:["_col1","_col2"] + <-Map 11 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_111] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_118] - <-Reducer 9 [ONE_TO_ONE_EDGE] vectorized - FORWARD [RS_138] + Select Operator [SEL_110] (rows=669 width=8) + Output:["_col0"] + Filter Operator [FIL_109] (rows=669 width=7) + predicate:((i_manufact_id = 269) and i_item_sk is not null) + TableScan [TS_20] (rows=462000 width=7) + default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_manufact_id"] + <-Reducer 7 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_122] PartitionCols:_col0 - Select Operator [SEL_137] (rows=6951 width=116) + Select Operator [SEL_121] (rows=6951 width=116) Output:["_col0","_col1"] - Group By Operator [GBY_136] (rows=6951 width=124) + Group By Operator [GBY_120] (rows=6951 width=124) Output:["_col0","_col1","_col2"],aggregations:["sum(VALUE._col0)","count(VALUE._col1)"],keys:KEY._col0 - <-Reducer 8 [SIMPLE_EDGE] + <-Reducer 6 [SIMPLE_EDGE] SHUFFLE [RS_17] PartitionCols:_col0 Group By Operator [GBY_16] (rows=97314 width=124) Output:["_col0","_col1","_col2"],aggregations:["sum(_col2)","count(_col2)"],keys:_col1 Merge Join Operator [MERGEJOIN_102] (rows=31836679 width=110) - Conds:RS_135._col0=RS_109._col0(Inner),Output:["_col1","_col2"] - <-Map 6 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_109] + Conds:RS_119._col0=RS_108._col0(Inner),Output:["_col1","_col2"] + <-Map 5 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_108] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_106] - <-Map 12 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_135] + Select Operator [SEL_106] (rows=8116 width=98) + Output:["_col0"] + Filter Operator [FIL_105] (rows=8116 width=98) + predicate:(CAST( d_date AS TIMESTAMP) BETWEEN TIMESTAMP'1998-03-18 00:00:00' AND TIMESTAMP'1998-06-16 00:00:00' and d_date_sk is not null) + TableScan [TS_3] (rows=73049 width=98) + default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"] + <-Map 10 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_119] PartitionCols:_col0 - Select Operator [SEL_134] (rows=286549727 width=119) + Select Operator [SEL_118] (rows=286549727 width=119) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_133] (rows=286549727 width=119) - predicate:((cs_item_sk BETWEEN DynamicValue(RS_24_item_i_item_sk_min) AND DynamicValue(RS_24_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_24_item_i_item_sk_bloom_filter))) and (cs_item_sk BETWEEN DynamicValue(RS_30_catalog_sales_cs_item_sk_min) AND DynamicValue(RS_30_catalog_sales_cs_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_30_catalog_sales_cs_item_sk_bloom_filter))) and (cs_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(cs_sold_date_sk, DynamicValue(RS_13_date_dim_d_date_sk_bloom_filter))) and cs_item_sk is not null and cs_sold_date_sk is not null) + Filter Operator [FIL_117] (rows=286549727 width=119) + predicate:((cs_item_sk BETWEEN DynamicValue(RS_24_item_i_item_sk_min) AND DynamicValue(RS_24_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_24_item_i_item_sk_bloom_filter))) and cs_item_sk is not null and cs_sold_date_sk is not null) TableScan [TS_6] (rows=287989836 width=119) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_item_sk","cs_ext_discount_amt"] - <-Reducer 14 [BROADCAST_EDGE] vectorized - BROADCAST [RS_125] - Please refer to the previous Group By Operator [GBY_123] - <-Reducer 11 [BROADCAST_EDGE] vectorized - BROADCAST [RS_130] - Group By Operator [GBY_129] (rows=1 width=12) + <-Reducer 12 [BROADCAST_EDGE] vectorized + BROADCAST [RS_116] + Group By Operator [GBY_115] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 6 [CUSTOM_SIMPLE_EDGE] vectorized + <-Map 11 [CUSTOM_SIMPLE_EDGE] vectorized SHUFFLE [RS_114] - Group By Operator [GBY_112] (rows=1 width=12) + Group By Operator [GBY_113] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_110] (rows=8116 width=4) + Select Operator [SEL_112] (rows=669 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_106] - <-Reducer 5 [BROADCAST_EDGE] vectorized - BROADCAST [RS_132] - Group By Operator [GBY_131] (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_91] - Group By Operator [GBY_90] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_89] (rows=31836679 width=8) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_101] + Please refer to the previous Select Operator [SEL_110] + <-Reducer 2 [SIMPLE_EDGE] + SHUFFLE [RS_30] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_101] (rows=31836679 width=110) + Conds:RS_127._col0=RS_107._col0(Inner),Output:["_col1","_col2"] + <-Map 5 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_107] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_106] + <-Map 1 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_127] + PartitionCols:_col0 + Select Operator [SEL_126] (rows=286549727 width=119) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_125] (rows=286549727 width=119) + predicate:((cs_item_sk BETWEEN DynamicValue(RS_31_item_i_item_sk_min) AND DynamicValue(RS_31_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_31_item_i_item_sk_bloom_filter))) and cs_item_sk is not null 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_discount_amt"] + <-Reducer 9 [BROADCAST_EDGE] vectorized + BROADCAST [RS_124] + Group By Operator [GBY_123] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Reducer 8 [CUSTOM_SIMPLE_EDGE] + PARTITION_ONLY_SHUFFLE [RS_65] + Group By Operator [GBY_64] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_63] (rows=97 width=8) + Output:["_col0"] + Please refer to the previous Merge Join Operator [MERGEJOIN_103] diff --git a/ql/src/test/results/clientpositive/perf/tez/query33.q.out b/ql/src/test/results/clientpositive/perf/tez/query33.q.out index a76122c4ed..b53a8eca62 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query33.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query33.q.out @@ -163,25 +163,22 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 14 <- Reducer 18 (BROADCAST_EDGE), Reducer 26 (BROADCAST_EDGE) -Map 29 <- Reducer 21 (BROADCAST_EDGE), Reducer 27 (BROADCAST_EDGE) -Map 30 <- Reducer 24 (BROADCAST_EDGE), Reducer 28 (BROADCAST_EDGE) +Map 14 <- Reducer 18 (BROADCAST_EDGE) +Map 26 <- Reducer 21 (BROADCAST_EDGE) +Map 27 <- Reducer 24 (BROADCAST_EDGE) Reducer 10 <- Reducer 2 (SIMPLE_EDGE), Reducer 23 (SIMPLE_EDGE) Reducer 11 <- Reducer 10 (SIMPLE_EDGE), Union 5 (CONTAINS) Reducer 13 <- Map 12 (SIMPLE_EDGE) Reducer 15 <- Map 14 (SIMPLE_EDGE), Map 17 (SIMPLE_EDGE) Reducer 16 <- Map 25 (SIMPLE_EDGE), Reducer 15 (SIMPLE_EDGE) Reducer 18 <- Map 17 (CUSTOM_SIMPLE_EDGE) -Reducer 19 <- Map 17 (SIMPLE_EDGE), Map 29 (SIMPLE_EDGE) +Reducer 19 <- Map 17 (SIMPLE_EDGE), Map 26 (SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 13 (ONE_TO_ONE_EDGE) Reducer 20 <- Map 25 (SIMPLE_EDGE), Reducer 19 (SIMPLE_EDGE) Reducer 21 <- Map 17 (CUSTOM_SIMPLE_EDGE) -Reducer 22 <- Map 17 (SIMPLE_EDGE), Map 30 (SIMPLE_EDGE) +Reducer 22 <- Map 17 (SIMPLE_EDGE), Map 27 (SIMPLE_EDGE) Reducer 23 <- Map 25 (SIMPLE_EDGE), Reducer 22 (SIMPLE_EDGE) Reducer 24 <- Map 17 (CUSTOM_SIMPLE_EDGE) -Reducer 26 <- Map 25 (CUSTOM_SIMPLE_EDGE) -Reducer 27 <- Map 25 (CUSTOM_SIMPLE_EDGE) -Reducer 28 <- Map 25 (CUSTOM_SIMPLE_EDGE) Reducer 3 <- Reducer 16 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Union 5 (CONTAINS) Reducer 6 <- Union 5 (SIMPLE_EDGE) @@ -194,22 +191,22 @@ Stage-0 limit:100 Stage-1 Reducer 7 vectorized - File Output Operator [FS_368] - Limit [LIM_367] (rows=59 width=115) + File Output Operator [FS_357] + Limit [LIM_356] (rows=59 width=115) Number of rows:100 - Select Operator [SEL_366] (rows=59 width=115) + Select Operator [SEL_355] (rows=59 width=115) Output:["_col0","_col1"] <-Reducer 6 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_365] - Group By Operator [GBY_364] (rows=59 width=115) + SHUFFLE [RS_354] + Group By Operator [GBY_353] (rows=59 width=115) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 <-Union 5 [SIMPLE_EDGE] <-Reducer 11 [CONTAINS] vectorized - Reduce Output Operator [RS_388] + Reduce Output Operator [RS_373] PartitionCols:_col0 - Group By Operator [GBY_387] (rows=59 width=115) + Group By Operator [GBY_372] (rows=59 width=115) Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0 - Group By Operator [GBY_386] (rows=19 width=115) + Group By Operator [GBY_371] (rows=19 width=115) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 <-Reducer 10 [SIMPLE_EDGE] SHUFFLE [RS_109] @@ -254,13 +251,13 @@ Stage-0 Select Operator [SEL_100] (rows=788222 width=110) Output:["_col3","_col5"] Merge Join Operator [MERGEJOIN_301] (rows=788222 width=110) - Conds:RS_97._col2=RS_348._col0(Inner),Output:["_col1","_col3"] + Conds:RS_97._col2=RS_349._col0(Inner),Output:["_col1","_col3"] <-Map 25 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_348] + SHUFFLE [RS_349] PartitionCols:_col0 - Select Operator [SEL_343] (rows=8000000 width=116) + Select Operator [SEL_346] (rows=8000000 width=116) Output:["_col0"] - Filter Operator [FIL_342] (rows=8000000 width=112) + Filter Operator [FIL_345] (rows=8000000 width=112) predicate:((ca_gmt_offset = -6) and ca_address_sk is not null) TableScan [TS_16] (rows=40000000 width=112) default@customer_address,customer_address,Tbl:COMPLETE,Col:COMPLETE,Output:["ca_address_sk","ca_gmt_offset"] @@ -268,7 +265,7 @@ Stage-0 SHUFFLE [RS_97] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_300] (rows=3941109 width=118) - Conds:RS_385._col0=RS_332._col0(Inner),Output:["_col1","_col2","_col3"] + Conds:RS_370._col0=RS_332._col0(Inner),Output:["_col1","_col2","_col3"] <-Map 17 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_332] PartitionCols:_col0 @@ -278,18 +275,18 @@ Stage-0 predicate:((d_moy = 3) and (d_year = 1999) and d_date_sk is not null) TableScan [TS_13] (rows=73049 width=12) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] - <-Map 30 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_385] + <-Map 27 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_370] PartitionCols:_col0 - Select Operator [SEL_384] (rows=143931246 width=123) + Select Operator [SEL_369] (rows=143931246 width=123) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_383] (rows=143931246 width=123) - predicate:((ws_bill_addr_sk BETWEEN DynamicValue(RS_98_customer_address_ca_address_sk_min) AND DynamicValue(RS_98_customer_address_ca_address_sk_max) and in_bloom_filter(ws_bill_addr_sk, DynamicValue(RS_98_customer_address_ca_address_sk_bloom_filter))) and (ws_sold_date_sk BETWEEN DynamicValue(RS_95_date_dim_d_date_sk_min) AND DynamicValue(RS_95_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_95_date_dim_d_date_sk_bloom_filter))) and ws_bill_addr_sk is not null and ws_item_sk is not null and ws_sold_date_sk is not null) + Filter Operator [FIL_368] (rows=143931246 width=123) + predicate:((ws_sold_date_sk BETWEEN DynamicValue(RS_95_date_dim_d_date_sk_min) AND DynamicValue(RS_95_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_95_date_dim_d_date_sk_bloom_filter))) and ws_bill_addr_sk is not null and ws_item_sk is not null and ws_sold_date_sk is not null) TableScan [TS_85] (rows=144002668 width=123) default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_item_sk","ws_bill_addr_sk","ws_ext_sales_price"] <-Reducer 24 [BROADCAST_EDGE] vectorized - BROADCAST [RS_380] - Group By Operator [GBY_379] (rows=1 width=12) + BROADCAST [RS_367] + Group By Operator [GBY_366] (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_339] @@ -298,23 +295,12 @@ Stage-0 Select Operator [SEL_333] (rows=50 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_327] - <-Reducer 28 [BROADCAST_EDGE] vectorized - BROADCAST [RS_382] - Group By Operator [GBY_381] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=8000000)"] - <-Map 25 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_355] - Group By Operator [GBY_352] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=8000000)"] - Select Operator [SEL_349] (rows=8000000 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_343] <-Reducer 4 [CONTAINS] vectorized - Reduce Output Operator [RS_363] + Reduce Output Operator [RS_352] PartitionCols:_col0 - Group By Operator [GBY_362] (rows=59 width=115) + Group By Operator [GBY_351] (rows=59 width=115) Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0 - Group By Operator [GBY_361] (rows=64 width=115) + Group By Operator [GBY_350] (rows=64 width=115) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_34] @@ -333,27 +319,27 @@ Stage-0 Select Operator [SEL_25] (rows=2876890 width=4) Output:["_col3","_col5"] Merge Join Operator [MERGEJOIN_295] (rows=2876890 width=4) - Conds:RS_22._col2=RS_344._col0(Inner),Output:["_col1","_col3"] + Conds:RS_22._col2=RS_347._col0(Inner),Output:["_col1","_col3"] <-Map 25 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_344] + SHUFFLE [RS_347] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_343] + Please refer to the previous Select Operator [SEL_346] <-Reducer 15 [SIMPLE_EDGE] SHUFFLE [RS_22] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_294] (rows=14384447 width=4) - Conds:RS_360._col0=RS_328._col0(Inner),Output:["_col1","_col2","_col3"] + Conds:RS_344._col0=RS_328._col0(Inner),Output:["_col1","_col2","_col3"] <-Map 17 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_328] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_327] <-Map 14 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_360] + SHUFFLE [RS_344] PartitionCols:_col0 - Select Operator [SEL_359] (rows=525327191 width=118) + Select Operator [SEL_343] (rows=525327191 width=118) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_358] (rows=525327191 width=118) - predicate:((ss_addr_sk BETWEEN DynamicValue(RS_23_customer_address_ca_address_sk_min) AND DynamicValue(RS_23_customer_address_ca_address_sk_max) and in_bloom_filter(ss_addr_sk, DynamicValue(RS_23_customer_address_ca_address_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_20_date_dim_d_date_sk_min) AND DynamicValue(RS_20_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_20_date_dim_d_date_sk_bloom_filter))) and ss_addr_sk is not null and ss_item_sk is not null and ss_sold_date_sk is not null) + Filter Operator [FIL_342] (rows=525327191 width=118) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_20_date_dim_d_date_sk_min) AND DynamicValue(RS_20_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_20_date_dim_d_date_sk_bloom_filter))) and ss_addr_sk is not null and ss_item_sk is not null and ss_sold_date_sk is not null) TableScan [TS_10] (rows=575995635 width=118) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_addr_sk","ss_ext_sales_price"] <-Reducer 18 [BROADCAST_EDGE] vectorized @@ -367,23 +353,12 @@ Stage-0 Select Operator [SEL_329] (rows=50 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_327] - <-Reducer 26 [BROADCAST_EDGE] vectorized - BROADCAST [RS_357] - Group By Operator [GBY_356] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=8000000)"] - <-Map 25 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_353] - Group By Operator [GBY_350] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=8000000)"] - Select Operator [SEL_345] (rows=8000000 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_343] <-Reducer 9 [CONTAINS] vectorized - Reduce Output Operator [RS_378] + Reduce Output Operator [RS_365] PartitionCols:_col0 - Group By Operator [GBY_377] (rows=59 width=115) + Group By Operator [GBY_364] (rows=59 width=115) Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0 - Group By Operator [GBY_376] (rows=35 width=115) + Group By Operator [GBY_363] (rows=35 width=115) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 <-Reducer 8 [SIMPLE_EDGE] SHUFFLE [RS_71] @@ -402,32 +377,32 @@ Stage-0 Select Operator [SEL_62] (rows=1550375 width=13) Output:["_col4","_col5"] Merge Join Operator [MERGEJOIN_298] (rows=1550375 width=13) - Conds:RS_59._col1=RS_346._col0(Inner),Output:["_col2","_col3"] + Conds:RS_59._col1=RS_348._col0(Inner),Output:["_col2","_col3"] <-Map 25 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_346] + SHUFFLE [RS_348] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_343] + Please refer to the previous Select Operator [SEL_346] <-Reducer 19 [SIMPLE_EDGE] SHUFFLE [RS_59] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_297] (rows=7751872 width=98) - Conds:RS_375._col0=RS_330._col0(Inner),Output:["_col1","_col2","_col3"] + Conds:RS_362._col0=RS_330._col0(Inner),Output:["_col1","_col2","_col3"] <-Map 17 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_330] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_327] - <-Map 29 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_375] + <-Map 26 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_362] PartitionCols:_col0 - Select Operator [SEL_374] (rows=285117733 width=123) + Select Operator [SEL_361] (rows=285117733 width=123) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_373] (rows=285117733 width=123) - predicate:((cs_bill_addr_sk BETWEEN DynamicValue(RS_60_customer_address_ca_address_sk_min) AND DynamicValue(RS_60_customer_address_ca_address_sk_max) and in_bloom_filter(cs_bill_addr_sk, DynamicValue(RS_60_customer_address_ca_address_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_57_date_dim_d_date_sk_min) AND DynamicValue(RS_57_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_57_date_dim_d_date_sk_bloom_filter))) and cs_bill_addr_sk is not null and cs_item_sk is not null and cs_sold_date_sk is not null) + Filter Operator [FIL_360] (rows=285117733 width=123) + predicate:((cs_sold_date_sk BETWEEN DynamicValue(RS_57_date_dim_d_date_sk_min) AND DynamicValue(RS_57_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_57_date_dim_d_date_sk_bloom_filter))) and cs_bill_addr_sk is not null and cs_item_sk is not null and cs_sold_date_sk is not null) TableScan [TS_47] (rows=287989836 width=123) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_bill_addr_sk","cs_item_sk","cs_ext_sales_price"] <-Reducer 21 [BROADCAST_EDGE] vectorized - BROADCAST [RS_370] - Group By Operator [GBY_369] (rows=1 width=12) + BROADCAST [RS_359] + Group By Operator [GBY_358] (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_338] @@ -436,15 +411,4 @@ Stage-0 Select Operator [SEL_331] (rows=50 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_327] - <-Reducer 27 [BROADCAST_EDGE] vectorized - BROADCAST [RS_372] - Group By Operator [GBY_371] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=8000000)"] - <-Map 25 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_354] - Group By Operator [GBY_351] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=8000000)"] - Select Operator [SEL_347] (rows=8000000 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_343] diff --git a/ql/src/test/results/clientpositive/perf/tez/query34.q.out b/ql/src/test/results/clientpositive/perf/tez/query34.q.out index fa40be9bb9..721f9bb400 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query34.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query34.q.out @@ -73,15 +73,13 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 4 <- Reducer 10 (BROADCAST_EDGE), Reducer 12 (BROADCAST_EDGE), Reducer 14 (BROADCAST_EDGE) +Map 4 <- Reducer 10 (BROADCAST_EDGE) Reducer 10 <- Map 9 (CUSTOM_SIMPLE_EDGE) -Reducer 12 <- Map 11 (CUSTOM_SIMPLE_EDGE) -Reducer 14 <- Map 13 (CUSTOM_SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (SIMPLE_EDGE) Reducer 5 <- Map 4 (SIMPLE_EDGE), Map 9 (SIMPLE_EDGE) Reducer 6 <- Map 11 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) -Reducer 7 <- Map 13 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) +Reducer 7 <- Map 12 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) Reducer 8 <- Reducer 7 (SIMPLE_EDGE) Stage-0 @@ -89,15 +87,15 @@ Stage-0 limit:-1 Stage-1 Reducer 3 vectorized - File Output Operator [FS_136] - Select Operator [SEL_135] (rows=276068 width=364) + File Output Operator [FS_126] + Select Operator [SEL_125] (rows=276068 width=364) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_35] Select Operator [SEL_34] (rows=276068 width=364) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] Merge Join Operator [MERGEJOIN_100] (rows=276068 width=364) - Conds:RS_103._col0=RS_134._col1(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col7"] + Conds:RS_103._col0=RS_124._col1(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col7"] <-Map 1 [SIMPLE_EDGE] vectorized SHUFFLE [RS_103] PartitionCols:_col0 @@ -108,13 +106,13 @@ Stage-0 TableScan [TS_0] (rows=80000000 width=356) default@customer,customer,Tbl:COMPLETE,Col:COMPLETE,Output:["c_customer_sk","c_salutation","c_first_name","c_last_name","c_preferred_cust_flag"] <-Reducer 8 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_134] + SHUFFLE [RS_124] PartitionCols:_col1 - Filter Operator [FIL_133] (rows=276068 width=12) + Filter Operator [FIL_123] (rows=276068 width=12) predicate:_col2 BETWEEN 15 AND 20 - Select Operator [SEL_132] (rows=5521356 width=12) + Select Operator [SEL_122] (rows=5521356 width=12) Output:["_col0","_col1","_col2"] - Group By Operator [GBY_131] (rows=5521356 width=12) + Group By Operator [GBY_121] (rows=5521356 width=12) Output:["_col0","_col1","_col2"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1 <-Reducer 7 [SIMPLE_EDGE] SHUFFLE [RS_26] @@ -122,13 +120,13 @@ Stage-0 Group By Operator [GBY_25] (rows=5521356 width=12) Output:["_col0","_col1","_col2"],aggregations:["count()"],keys:_col1, _col4 Merge Join Operator [MERGEJOIN_99] (rows=5521356 width=4) - Conds:RS_21._col3=RS_122._col0(Inner),Output:["_col1","_col4"] - <-Map 13 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_122] + Conds:RS_21._col3=RS_120._col0(Inner),Output:["_col1","_col4"] + <-Map 12 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_120] PartitionCols:_col0 - Select Operator [SEL_121] (rows=112 width=102) + Select Operator [SEL_119] (rows=112 width=102) Output:["_col0"] - Filter Operator [FIL_120] (rows=112 width=102) + Filter Operator [FIL_118] (rows=112 width=102) predicate:((s_county) IN ('Mobile County', 'Maverick County', 'Huron County', 'Kittitas County', 'Fairfield County', 'Jackson County', 'Barrow County', 'Pennington County') and s_store_sk is not null) TableScan [TS_12] (rows=1704 width=102) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_county"] @@ -136,13 +134,13 @@ Stage-0 SHUFFLE [RS_21] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_98] (rows=10407948 width=4) - Conds:RS_18._col2=RS_114._col0(Inner),Output:["_col1","_col3","_col4"] + Conds:RS_18._col2=RS_117._col0(Inner),Output:["_col1","_col3","_col4"] <-Map 11 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_114] + SHUFFLE [RS_117] PartitionCols:_col0 - Select Operator [SEL_113] (rows=480 width=104) + Select Operator [SEL_116] (rows=480 width=104) Output:["_col0"] - Filter Operator [FIL_112] (rows=480 width=104) + Filter Operator [FIL_115] (rows=480 width=104) predicate:((hd_buy_potential) IN ('>10000', 'unknown') and (hd_vehicle_count > 0) and CASE WHEN ((hd_vehicle_count > 0)) THEN (((UDFToDouble(hd_dep_count) / UDFToDouble(hd_vehicle_count)) > 1.2D)) ELSE (null) END and hd_demo_sk is not null) TableScan [TS_9] (rows=7200 width=104) default@household_demographics,household_demographics,Tbl:COMPLETE,Col:COMPLETE,Output:["hd_demo_sk","hd_buy_potential","hd_dep_count","hd_vehicle_count"] @@ -150,7 +148,7 @@ Stage-0 SHUFFLE [RS_18] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_97] (rows=156119211 width=14) - Conds:RS_130._col0=RS_106._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + Conds:RS_114._col0=RS_106._col0(Inner),Output:["_col1","_col2","_col3","_col4"] <-Map 9 [SIMPLE_EDGE] vectorized SHUFFLE [RS_106] PartitionCols:_col0 @@ -161,12 +159,12 @@ Stage-0 TableScan [TS_6] (rows=73049 width=12) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_dom"] <-Map 4 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_130] + SHUFFLE [RS_114] PartitionCols:_col0 - Select Operator [SEL_129] (rows=479121995 width=19) + Select Operator [SEL_113] (rows=479121995 width=19) Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_128] (rows=479121995 width=19) - predicate:((ss_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(ss_hdemo_sk, DynamicValue(RS_19_household_demographics_hd_demo_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_16_date_dim_d_date_sk_min) AND DynamicValue(RS_16_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_16_date_dim_d_date_sk_bloom_filter))) and (ss_store_sk BETWEEN DynamicValue(RS_22_store_s_store_sk_min) AND DynamicValue(RS_22_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_22_store_s_store_sk_bloom_filter))) and ss_customer_sk is not null and ss_hdemo_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_112] (rows=479121995 width=19) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_16_date_dim_d_date_sk_min) AND DynamicValue(RS_16_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_16_date_dim_d_date_sk_bloom_filter))) and ss_customer_sk is not null and ss_hdemo_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) TableScan [TS_3] (rows=575995635 width=19) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_customer_sk","ss_hdemo_sk","ss_store_sk","ss_ticket_number"] <-Reducer 10 [BROADCAST_EDGE] vectorized @@ -180,26 +178,4 @@ Stage-0 Select Operator [SEL_107] (rows=595 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_105] - <-Reducer 12 [BROADCAST_EDGE] vectorized - BROADCAST [RS_119] - Group By Operator [GBY_118] (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 - SHUFFLE [RS_117] - Group By Operator [GBY_116] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_115] (rows=480 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_113] - <-Reducer 14 [BROADCAST_EDGE] vectorized - BROADCAST [RS_127] - Group By Operator [GBY_126] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 13 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_125] - Group By Operator [GBY_124] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_123] (rows=112 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_121] diff --git a/ql/src/test/results/clientpositive/perf/tez/query35.q.out b/ql/src/test/results/clientpositive/perf/tez/query35.q.out index 44993831f4..6b76209f8b 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query35.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query35.q.out @@ -130,22 +130,20 @@ Plan optimized by CBO. Vertex dependency in root stage Map 13 <- Reducer 16 (BROADCAST_EDGE) -Map 23 <- Reducer 10 (BROADCAST_EDGE), Reducer 19 (BROADCAST_EDGE) -Map 24 <- Reducer 22 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) +Map 21 <- Reducer 10 (BROADCAST_EDGE) +Map 22 <- Reducer 9 (BROADCAST_EDGE) Reducer 10 <- Reducer 4 (CUSTOM_SIMPLE_EDGE) Reducer 14 <- Map 13 (SIMPLE_EDGE), Map 15 (SIMPLE_EDGE) Reducer 16 <- Map 15 (CUSTOM_SIMPLE_EDGE) -Reducer 17 <- Map 15 (SIMPLE_EDGE), Map 23 (SIMPLE_EDGE) +Reducer 17 <- Map 15 (SIMPLE_EDGE), Map 21 (SIMPLE_EDGE) Reducer 18 <- Reducer 17 (SIMPLE_EDGE) -Reducer 19 <- Map 15 (CUSTOM_SIMPLE_EDGE) +Reducer 19 <- Map 15 (SIMPLE_EDGE), Map 22 (SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 11 (SIMPLE_EDGE) -Reducer 20 <- Map 15 (SIMPLE_EDGE), Map 24 (SIMPLE_EDGE) -Reducer 21 <- Reducer 20 (SIMPLE_EDGE) -Reducer 22 <- Map 15 (CUSTOM_SIMPLE_EDGE) +Reducer 20 <- Reducer 19 (SIMPLE_EDGE) Reducer 3 <- Map 12 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 14 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 18 (ONE_TO_ONE_EDGE), Reducer 4 (ONE_TO_ONE_EDGE) -Reducer 6 <- Reducer 21 (ONE_TO_ONE_EDGE), Reducer 5 (ONE_TO_ONE_EDGE) +Reducer 6 <- Reducer 20 (ONE_TO_ONE_EDGE), Reducer 5 (ONE_TO_ONE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) Reducer 8 <- Reducer 7 (SIMPLE_EDGE) Reducer 9 <- Reducer 5 (CUSTOM_SIMPLE_EDGE) @@ -155,16 +153,16 @@ Stage-0 limit:-1 Stage-1 Reducer 8 vectorized - File Output Operator [FS_236] - Limit [LIM_235] (rows=1 width=352) + File Output Operator [FS_226] + Limit [LIM_225] (rows=1 width=352) Number of rows:100 - Select Operator [SEL_234] (rows=1 width=352) + Select Operator [SEL_224] (rows=1 width=352) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16"] <-Reducer 7 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_233] - Select Operator [SEL_232] (rows=1 width=352) + SHUFFLE [RS_223] + Select Operator [SEL_222] (rows=1 width=352) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col9","_col10","_col11","_col12","_col14","_col15","_col16","_col17"] - Group By Operator [GBY_231] (rows=1 width=336) + Group By Operator [GBY_221] (rows=1 width=336) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15"],aggregations:["count(VALUE._col0)","sum(VALUE._col1)","count(VALUE._col2)","max(VALUE._col3)","sum(VALUE._col4)","count(VALUE._col5)","max(VALUE._col6)","sum(VALUE._col7)","count(VALUE._col8)","max(VALUE._col9)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4, KEY._col5 <-Reducer 6 [SIMPLE_EDGE] SHUFFLE [RS_67] @@ -178,12 +176,12 @@ Stage-0 Filter Operator [FIL_64] (rows=67 width=276) predicate:(_col12 is not null or _col14 is not null) Merge Join Operator [MERGEJOIN_182] (rows=67 width=276) - Conds:RS_61._col0=RS_230._col0(Left Outer),Output:["_col4","_col6","_col7","_col8","_col9","_col10","_col12","_col14"] + Conds:RS_61._col0=RS_220._col0(Left Outer),Output:["_col4","_col6","_col7","_col8","_col9","_col10","_col12","_col14"] <-Reducer 5 [ONE_TO_ONE_EDGE] PARTITION_ONLY_SHUFFLE [RS_61] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_181] (rows=68 width=276) - Conds:RS_58._col0=RS_220._col0(Left Outer),Output:["_col0","_col4","_col6","_col7","_col8","_col9","_col10","_col12"] + Conds:RS_58._col0=RS_212._col0(Left Outer),Output:["_col0","_col4","_col6","_col7","_col8","_col9","_col10","_col12"] <-Reducer 4 [ONE_TO_ONE_EDGE] FORWARD [RS_58] PartitionCols:_col0 @@ -197,9 +195,9 @@ Stage-0 Select Operator [SEL_18] (rows=62428523 width=2) Output:["_col0"] Merge Join Operator [MERGEJOIN_177] (rows=62428523 width=2) - Conds:RS_210._col0=RS_194._col0(Inner),Output:["_col1"] + Conds:RS_204._col0=RS_194._col0(Inner),Output:["_col1"] <-Map 15 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_194] + SHUFFLE [RS_194] PartitionCols:_col0 Select Operator [SEL_193] (rows=217 width=12) Output:["_col0"] @@ -208,21 +206,21 @@ Stage-0 TableScan [TS_12] (rows=73049 width=12) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_qoy"] <-Map 13 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_210] + SHUFFLE [RS_204] PartitionCols:_col0 - Select Operator [SEL_209] (rows=525327388 width=7) + Select Operator [SEL_203] (rows=525327388 width=7) Output:["_col0","_col1"] - Filter Operator [FIL_208] (rows=525327388 width=7) + Filter Operator [FIL_202] (rows=525327388 width=7) predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_16_date_dim_d_date_sk_min) AND DynamicValue(RS_16_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_16_date_dim_d_date_sk_bloom_filter))) and ss_customer_sk is not null and ss_sold_date_sk is not null) TableScan [TS_9] (rows=575995635 width=7) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_customer_sk"] <-Reducer 16 [BROADCAST_EDGE] vectorized - BROADCAST [RS_207] - Group By Operator [GBY_206] (rows=1 width=12) + 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 15 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_203] - Group By Operator [GBY_200] (rows=1 width=12) + SHUFFLE [RS_199] + Group By Operator [GBY_198] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] Select Operator [SEL_195] (rows=217 width=4) Output:["_col0"] @@ -265,11 +263,11 @@ Stage-0 TableScan [TS_3] (rows=40000000 width=90) default@customer_address,ca,Tbl:COMPLETE,Col:COMPLETE,Output:["ca_address_sk","ca_state"] <-Reducer 18 [ONE_TO_ONE_EDGE] vectorized - FORWARD [RS_220] + FORWARD [RS_212] PartitionCols:_col0 - Select Operator [SEL_219] (rows=168231 width=7) + Select Operator [SEL_211] (rows=168231 width=7) Output:["_col0","_col1"] - Group By Operator [GBY_218] (rows=168231 width=3) + Group By Operator [GBY_210] (rows=168231 width=3) Output:["_col0"],keys:KEY._col0 <-Reducer 17 [SIMPLE_EDGE] SHUFFLE [RS_30] @@ -277,23 +275,23 @@ Stage-0 Group By Operator [GBY_29] (rows=168231 width=3) Output:["_col0"],keys:_col1 Merge Join Operator [MERGEJOIN_178] (rows=17104380 width=3) - Conds:RS_217._col0=RS_196._col0(Inner),Output:["_col1"] + Conds:RS_209._col0=RS_196._col0(Inner),Output:["_col1"] <-Map 15 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_196] + SHUFFLE [RS_196] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_193] - <-Map 23 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_217] + <-Map 21 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_209] PartitionCols:_col0 - Select Operator [SEL_216] (rows=143930993 width=7) + Select Operator [SEL_208] (rows=143930993 width=7) Output:["_col0","_col1"] - Filter Operator [FIL_215] (rows=143930993 width=7) - predicate:((ws_bill_customer_sk BETWEEN DynamicValue(RS_58_c_c_customer_sk_min) AND DynamicValue(RS_58_c_c_customer_sk_max) and in_bloom_filter(ws_bill_customer_sk, DynamicValue(RS_58_c_c_customer_sk_bloom_filter))) and (ws_sold_date_sk BETWEEN DynamicValue(RS_26_date_dim_d_date_sk_min) AND DynamicValue(RS_26_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_26_date_dim_d_date_sk_bloom_filter))) and ws_bill_customer_sk is not null and ws_sold_date_sk is not null) + Filter Operator [FIL_207] (rows=143930993 width=7) + predicate:((ws_bill_customer_sk BETWEEN DynamicValue(RS_58_c_c_customer_sk_min) AND DynamicValue(RS_58_c_c_customer_sk_max) and in_bloom_filter(ws_bill_customer_sk, DynamicValue(RS_58_c_c_customer_sk_bloom_filter))) and ws_bill_customer_sk is not null and ws_sold_date_sk is not null) TableScan [TS_19] (rows=144002668 width=7) default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_bill_customer_sk"] <-Reducer 10 [BROADCAST_EDGE] vectorized - BROADCAST [RS_214] - Group By Operator [GBY_213] (rows=1 width=12) + BROADCAST [RS_206] + Group By Operator [GBY_205] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Reducer 4 [CUSTOM_SIMPLE_EDGE] FORWARD [RS_152] @@ -302,58 +300,36 @@ Stage-0 Select Operator [SEL_150] (rows=162346 width=4) Output:["_col0"] Please refer to the previous Merge Join Operator [MERGEJOIN_180] - <-Reducer 19 [BROADCAST_EDGE] vectorized - BROADCAST [RS_212] - Group By Operator [GBY_211] (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 - PARTITION_ONLY_SHUFFLE [RS_204] - Group By Operator [GBY_201] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_197] (rows=217 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_193] - <-Reducer 21 [ONE_TO_ONE_EDGE] vectorized - FORWARD [RS_230] + <-Reducer 20 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_220] PartitionCols:_col0 - Select Operator [SEL_229] (rows=167041 width=7) + Select Operator [SEL_219] (rows=167041 width=7) Output:["_col0","_col1"] - Group By Operator [GBY_228] (rows=167041 width=3) + Group By Operator [GBY_218] (rows=167041 width=3) Output:["_col0"],keys:KEY._col0 - <-Reducer 20 [SIMPLE_EDGE] + <-Reducer 19 [SIMPLE_EDGE] SHUFFLE [RS_44] PartitionCols:_col0 Group By Operator [GBY_43] (rows=167041 width=3) Output:["_col0"],keys:_col1 Merge Join Operator [MERGEJOIN_179] (rows=33642830 width=3) - Conds:RS_227._col0=RS_198._col0(Inner),Output:["_col1"] + Conds:RS_217._col0=RS_197._col0(Inner),Output:["_col1"] <-Map 15 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_198] + SHUFFLE [RS_197] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_193] - <-Map 24 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_227] + <-Map 22 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_217] PartitionCols:_col0 - Select Operator [SEL_226] (rows=285115246 width=7) + Select Operator [SEL_216] (rows=285115246 width=7) Output:["_col0","_col1"] - Filter Operator [FIL_225] (rows=285115246 width=7) - predicate:((cs_ship_customer_sk BETWEEN DynamicValue(RS_61_c_c_customer_sk_min) AND DynamicValue(RS_61_c_c_customer_sk_max) and in_bloom_filter(cs_ship_customer_sk, DynamicValue(RS_61_c_c_customer_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_40_date_dim_d_date_sk_min) AND DynamicValue(RS_40_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_40_date_dim_d_date_sk_bloom_filter))) and cs_ship_customer_sk is not null and cs_sold_date_sk is not null) + Filter Operator [FIL_215] (rows=285115246 width=7) + predicate:((cs_ship_customer_sk BETWEEN DynamicValue(RS_61_c_c_customer_sk_min) AND DynamicValue(RS_61_c_c_customer_sk_max) and in_bloom_filter(cs_ship_customer_sk, DynamicValue(RS_61_c_c_customer_sk_bloom_filter))) and cs_ship_customer_sk is not null and cs_sold_date_sk is not null) TableScan [TS_33] (rows=287989836 width=7) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_ship_customer_sk"] - <-Reducer 22 [BROADCAST_EDGE] vectorized - BROADCAST [RS_222] - Group By Operator [GBY_221] (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 - PARTITION_ONLY_SHUFFLE [RS_205] - Group By Operator [GBY_202] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_199] (rows=217 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_193] <-Reducer 9 [BROADCAST_EDGE] vectorized - BROADCAST [RS_224] - Group By Operator [GBY_223] (rows=1 width=12) + BROADCAST [RS_214] + Group By Operator [GBY_213] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Reducer 5 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_167] diff --git a/ql/src/test/results/clientpositive/perf/tez/query36.q.out b/ql/src/test/results/clientpositive/perf/tez/query36.q.out index 4f4ce8a518..e5394d059f 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query36.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query36.q.out @@ -69,11 +69,10 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 11 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) -Reducer 11 <- Map 10 (CUSTOM_SIMPLE_EDGE) +Map 1 <- Reducer 9 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) Reducer 3 <- Map 10 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 12 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 4 <- Map 11 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) @@ -84,25 +83,25 @@ Stage-0 limit:-1 Stage-1 Reducer 7 vectorized - File Output Operator [FS_114] - Limit [LIM_113] (rows=100 width=490) + File Output Operator [FS_109] + Limit [LIM_108] (rows=100 width=490) Number of rows:100 - Select Operator [SEL_112] (rows=3060 width=490) + Select Operator [SEL_107] (rows=3060 width=490) Output:["_col0","_col1","_col2","_col3","_col4"] <-Reducer 6 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_111] - Select Operator [SEL_110] (rows=3060 width=490) + SHUFFLE [RS_106] + Select Operator [SEL_105] (rows=3060 width=490) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] - PTF Operator [PTF_109] (rows=3060 width=414) + PTF Operator [PTF_104] (rows=3060 width=414) Function definitions:[{},{"name:":"windowingtablefunction","order by:":"(_col2 / _col3) ASC NULLS FIRST","partition by:":"(grouping(_col4, 1) + grouping(_col4, 0)), CASE WHEN ((grouping(_col4, 0) = 0)) THEN (_col0) ELSE (CAST( null AS STRING)) END"}] - Select Operator [SEL_108] (rows=3060 width=414) + Select Operator [SEL_103] (rows=3060 width=414) Output:["_col0","_col1","_col2","_col3","_col4"] <-Reducer 5 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_107] + SHUFFLE [RS_102] PartitionCols:(grouping(_col4, 1) + grouping(_col4, 0)), CASE WHEN ((grouping(_col4, 0) = 0)) THEN (_col0) ELSE (CAST( null AS STRING)) END - Select Operator [SEL_106] (rows=3060 width=414) + Select Operator [SEL_101] (rows=3060 width=414) Output:["_col0","_col1","_col2","_col3","_col4"] - Group By Operator [GBY_105] (rows=3060 width=414) + Group By Operator [GBY_100] (rows=3060 width=414) Output:["_col0","_col1","_col2","_col3","_col4"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)"],keys:KEY._col0, KEY._col1, KEY._col2 <-Reducer 4 [SIMPLE_EDGE] SHUFFLE [RS_24] @@ -112,13 +111,13 @@ Stage-0 Select Operator [SEL_21] (rows=30601888 width=232) Output:["_col0","_col1","_col2","_col3"] Merge Join Operator [MERGEJOIN_82] (rows=30601888 width=232) - Conds:RS_18._col1=RS_104._col0(Inner),Output:["_col3","_col4","_col10","_col11"] - <-Map 12 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_104] + Conds:RS_18._col1=RS_99._col0(Inner),Output:["_col3","_col4","_col10","_col11"] + <-Map 11 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_99] PartitionCols:_col0 - Select Operator [SEL_103] (rows=462000 width=186) + Select Operator [SEL_98] (rows=462000 width=186) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_102] (rows=462000 width=186) + Filter Operator [FIL_97] (rows=462000 width=186) predicate:i_item_sk is not null TableScan [TS_9] (rows=462000 width=186) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_class","i_category"] @@ -126,13 +125,13 @@ Stage-0 SHUFFLE [RS_18] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_81] (rows=30601888 width=54) - Conds:RS_15._col2=RS_93._col0(Inner),Output:["_col1","_col3","_col4"] + Conds:RS_15._col2=RS_96._col0(Inner),Output:["_col1","_col3","_col4"] <-Map 10 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_93] + SHUFFLE [RS_96] PartitionCols:_col0 - Select Operator [SEL_92] (rows=278 width=90) + Select Operator [SEL_95] (rows=278 width=90) Output:["_col0"] - Filter Operator [FIL_91] (rows=278 width=90) + Filter Operator [FIL_94] (rows=278 width=90) predicate:((s_state) IN ('SD', 'FL', 'MI', 'LA', 'MO', 'SC', 'AL', 'GA') and s_store_sk is not null) TableScan [TS_6] (rows=1704 width=90) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_state"] @@ -140,7 +139,7 @@ Stage-0 SHUFFLE [RS_15] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_80] (rows=187574154 width=203) - Conds:RS_101._col0=RS_85._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + Conds:RS_93._col0=RS_85._col0(Inner),Output:["_col1","_col2","_col3","_col4"] <-Map 8 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_85] PartitionCols:_col0 @@ -151,25 +150,14 @@ Stage-0 TableScan [TS_3] (rows=73049 width=8) default@date_dim,d1,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_101] + SHUFFLE [RS_93] PartitionCols:_col0 - Select Operator [SEL_100] (rows=525329897 width=225) + Select Operator [SEL_92] (rows=525329897 width=225) Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_99] (rows=525329897 width=225) - predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_13_d1_d_date_sk_min) AND DynamicValue(RS_13_d1_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_13_d1_d_date_sk_bloom_filter))) and (ss_store_sk BETWEEN DynamicValue(RS_16_store_s_store_sk_min) AND DynamicValue(RS_16_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_16_store_s_store_sk_bloom_filter))) and ss_item_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_91] (rows=525329897 width=225) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_13_d1_d_date_sk_min) AND DynamicValue(RS_13_d1_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_13_d1_d_date_sk_bloom_filter))) and ss_item_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) TableScan [TS_0] (rows=575995635 width=225) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_store_sk","ss_ext_sales_price","ss_net_profit"] - <-Reducer 11 [BROADCAST_EDGE] vectorized - BROADCAST [RS_98] - Group By Operator [GBY_97] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 10 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_96] - Group By Operator [GBY_95] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_94] (rows=278 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_92] <-Reducer 9 [BROADCAST_EDGE] vectorized BROADCAST [RS_90] Group By Operator [GBY_89] (rows=1 width=12) diff --git a/ql/src/test/results/clientpositive/perf/tez/query37.q.out b/ql/src/test/results/clientpositive/perf/tez/query37.q.out index 4407a48931..523cc4cfac 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query37.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query37.q.out @@ -43,28 +43,27 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 10 (BROADCAST_EDGE), Reducer 7 (BROADCAST_EDGE) -Reducer 10 <- Reducer 9 (CUSTOM_SIMPLE_EDGE) +Map 1 <- Reducer 7 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (ONE_TO_ONE_EDGE), Reducer 9 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) Reducer 7 <- Map 6 (CUSTOM_SIMPLE_EDGE) -Reducer 9 <- Map 11 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) +Reducer 9 <- Map 10 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) Stage-0 Fetch Operator limit:100 Stage-1 Reducer 5 vectorized - File Output Operator [FS_103] - Limit [LIM_102] (rows=1 width=396) + File Output Operator [FS_101] + Limit [LIM_100] (rows=1 width=396) Number of rows:100 - Select Operator [SEL_101] (rows=1 width=396) + Select Operator [SEL_99] (rows=1 width=396) Output:["_col0","_col1","_col2"] <-Reducer 4 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_100] - Group By Operator [GBY_99] (rows=1 width=396) + SHUFFLE [RS_98] + Group By Operator [GBY_97] (rows=1 width=396) Output:["_col0","_col1","_col2"],keys:KEY._col0, KEY._col1, KEY._col2 <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_24] @@ -75,34 +74,11 @@ Stage-0 keys:_col2, _col3, _col4,sort order:+++,top n:100 Merge Join Operator [MERGEJOIN_79] (rows=2871 width=396) Conds:RS_19._col1=RS_20._col1(Inner),Output:["_col2","_col3","_col4"] - <-Reducer 9 [SIMPLE_EDGE] - SHUFFLE [RS_20] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_78] (rows=463969 width=4) - Conds:RS_90._col0=RS_93._col0(Inner),Output:["_col1"] - <-Map 11 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_93] - PartitionCols:_col0 - Select Operator [SEL_92] (rows=8116 width=98) - Output:["_col0"] - Filter Operator [FIL_91] (rows=8116 width=98) - predicate:(CAST( d_date AS TIMESTAMP) BETWEEN TIMESTAMP'2001-06-02 00:00:00' AND TIMESTAMP'2001-08-01 00:00:00' and d_date_sk is not null) - TableScan [TS_9] (rows=73049 width=98) - default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"] - <-Map 8 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_90] - PartitionCols:_col0 - Select Operator [SEL_89] (rows=4176000 width=11) - Output:["_col0","_col1"] - Filter Operator [FIL_88] (rows=4176000 width=11) - predicate:(inv_date_sk is not null and inv_item_sk is not null and inv_quantity_on_hand BETWEEN 100 AND 500) - TableScan [TS_6] (rows=37584000 width=11) - default@inventory,inventory,Tbl:COMPLETE,Col:COMPLETE,Output:["inv_date_sk","inv_item_sk","inv_quantity_on_hand"] <-Reducer 2 [ONE_TO_ONE_EDGE] FORWARD [RS_19] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_77] (rows=1781971 width=400) - Conds:RS_98._col0=RS_82._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + Conds:RS_90._col0=RS_82._col0(Inner),Output:["_col1","_col2","_col3","_col4"] <-Map 6 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_82] PartitionCols:_col0 @@ -113,25 +89,14 @@ Stage-0 TableScan [TS_3] (rows=462000 width=403) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_item_id","i_item_desc","i_current_price","i_manufact_id"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_98] + SHUFFLE [RS_90] PartitionCols:_col0 - Select Operator [SEL_97] (rows=287989836 width=4) + Select Operator [SEL_89] (rows=287989836 width=4) Output:["_col0"] - Filter Operator [FIL_96] (rows=287989836 width=4) - predicate:((cs_item_sk BETWEEN DynamicValue(RS_17_item_i_item_sk_min) AND DynamicValue(RS_17_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_17_item_i_item_sk_bloom_filter))) and (cs_item_sk BETWEEN DynamicValue(RS_20_inventory_inv_item_sk_min) AND DynamicValue(RS_20_inventory_inv_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_20_inventory_inv_item_sk_bloom_filter))) and cs_item_sk is not null) + Filter Operator [FIL_88] (rows=287989836 width=4) + predicate:((cs_item_sk BETWEEN DynamicValue(RS_17_item_i_item_sk_min) AND DynamicValue(RS_17_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_17_item_i_item_sk_bloom_filter))) and cs_item_sk is not null) TableScan [TS_0] (rows=287989836 width=4) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_item_sk"] - <-Reducer 10 [BROADCAST_EDGE] vectorized - BROADCAST [RS_95] - Group By Operator [GBY_94] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Reducer 9 [CUSTOM_SIMPLE_EDGE] - SHUFFLE [RS_51] - Group By Operator [GBY_50] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_49] (rows=463969 width=8) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_78] <-Reducer 7 [BROADCAST_EDGE] vectorized BROADCAST [RS_87] Group By Operator [GBY_86] (rows=1 width=12) @@ -143,4 +108,27 @@ Stage-0 Select Operator [SEL_83] (rows=297 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_81] + <-Reducer 9 [SIMPLE_EDGE] + SHUFFLE [RS_20] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_78] (rows=463969 width=4) + Conds:RS_93._col0=RS_96._col0(Inner),Output:["_col1"] + <-Map 10 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_96] + PartitionCols:_col0 + Select Operator [SEL_95] (rows=8116 width=98) + Output:["_col0"] + Filter Operator [FIL_94] (rows=8116 width=98) + predicate:(CAST( d_date AS TIMESTAMP) BETWEEN TIMESTAMP'2001-06-02 00:00:00' AND TIMESTAMP'2001-08-01 00:00:00' and d_date_sk is not null) + TableScan [TS_9] (rows=73049 width=98) + default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"] + <-Map 8 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_93] + PartitionCols:_col0 + Select Operator [SEL_92] (rows=4176000 width=11) + Output:["_col0","_col1"] + Filter Operator [FIL_91] (rows=4176000 width=11) + predicate:(inv_date_sk is not null and inv_item_sk is not null and inv_quantity_on_hand BETWEEN 100 AND 500) + TableScan [TS_6] (rows=37584000 width=11) + default@inventory,inventory,Tbl:COMPLETE,Col:COMPLETE,Output:["inv_date_sk","inv_item_sk","inv_quantity_on_hand"] diff --git a/ql/src/test/results/clientpositive/perf/tez/query40.q.out b/ql/src/test/results/clientpositive/perf/tez/query40.q.out index 1cca18d306..d04d7fe357 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query40.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query40.q.out @@ -67,13 +67,12 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 10 (BROADCAST_EDGE), Reducer 12 (BROADCAST_EDGE) -Reducer 10 <- Map 9 (CUSTOM_SIMPLE_EDGE) -Reducer 12 <- Map 11 (CUSTOM_SIMPLE_EDGE) +Map 1 <- Reducer 11 (BROADCAST_EDGE) +Reducer 11 <- Map 10 (CUSTOM_SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) Reducer 3 <- Map 9 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 11 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Map 13 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) +Reducer 4 <- Map 10 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 5 <- Map 12 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) @@ -82,14 +81,14 @@ Stage-0 limit:100 Stage-1 Reducer 7 vectorized - File Output Operator [FS_131] - Limit [LIM_130] (rows=100 width=410) + File Output Operator [FS_126] + Limit [LIM_125] (rows=100 width=410) Number of rows:100 - Select Operator [SEL_129] (rows=769995 width=410) + Select Operator [SEL_124] (rows=769995 width=410) Output:["_col0","_col1","_col2","_col3"] <-Reducer 6 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_128] - Group By Operator [GBY_127] (rows=769995 width=410) + SHUFFLE [RS_123] + Group By Operator [GBY_122] (rows=769995 width=410) Output:["_col0","_col1","_col2","_col3"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)"],keys:KEY._col0, KEY._col1 <-Reducer 5 [SIMPLE_EDGE] SHUFFLE [RS_30] @@ -101,13 +100,13 @@ Stage-0 Select Operator [SEL_27] (rows=5757278 width=364) Output:["_col0","_col1","_col2","_col3"] Merge Join Operator [MERGEJOIN_101] (rows=5757278 width=364) - Conds:RS_24._col1=RS_126._col0(Inner),Output:["_col4","_col7","_col9","_col11","_col14"] - <-Map 13 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_126] + Conds:RS_24._col1=RS_121._col0(Inner),Output:["_col4","_col7","_col9","_col11","_col14"] + <-Map 12 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_121] PartitionCols:_col0 - Select Operator [SEL_125] (rows=27 width=90) + Select Operator [SEL_120] (rows=27 width=90) Output:["_col0","_col1"] - Filter Operator [FIL_124] (rows=27 width=90) + Filter Operator [FIL_119] (rows=27 width=90) predicate:w_warehouse_sk is not null TableScan [TS_12] (rows=27 width=90) default@warehouse,warehouse,Tbl:COMPLETE,Col:COMPLETE,Output:["w_warehouse_sk","w_state"] @@ -115,13 +114,13 @@ Stage-0 SHUFFLE [RS_24] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_100] (rows=5757278 width=281) - Conds:RS_21._col2=RS_112._col0(Inner),Output:["_col1","_col4","_col7","_col9","_col11"] - <-Map 11 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_112] + Conds:RS_21._col2=RS_104._col0(Inner),Output:["_col1","_col4","_col7","_col9","_col11"] + <-Map 10 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_104] PartitionCols:_col0 - Select Operator [SEL_111] (rows=51333 width=215) + Select Operator [SEL_103] (rows=51333 width=215) Output:["_col0","_col1"] - Filter Operator [FIL_110] (rows=51333 width=215) + Filter Operator [FIL_102] (rows=51333 width=215) predicate:(i_current_price BETWEEN 0.99 AND 1.49 and i_item_sk is not null) TableScan [TS_9] (rows=462000 width=215) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_item_id","i_current_price"] @@ -129,13 +128,13 @@ Stage-0 SHUFFLE [RS_21] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_99] (rows=51815831 width=210) - Conds:RS_18._col0=RS_104._col0(Inner),Output:["_col1","_col2","_col4","_col7","_col9"] + Conds:RS_18._col0=RS_118._col0(Inner),Output:["_col1","_col2","_col4","_col7","_col9"] <-Map 9 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_104] + SHUFFLE [RS_118] PartitionCols:_col0 - Select Operator [SEL_103] (rows=8116 width=98) + Select Operator [SEL_117] (rows=8116 width=98) Output:["_col0","_col1"] - Filter Operator [FIL_102] (rows=8116 width=98) + Filter Operator [FIL_116] (rows=8116 width=98) predicate:(CAST( d_date AS TIMESTAMP) BETWEEN TIMESTAMP'1998-03-09 00:00:00' AND TIMESTAMP'1998-05-08 00:00:00' and d_date_sk is not null) TableScan [TS_6] (rows=73049 width=98) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"] @@ -143,44 +142,33 @@ Stage-0 SHUFFLE [RS_18] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_98] (rows=466374405 width=167) - Conds:RS_120._col2, _col3=RS_123._col0, _col1(Left Outer),Output:["_col0","_col1","_col2","_col4","_col7"] + Conds:RS_112._col2, _col3=RS_115._col0, _col1(Left Outer),Output:["_col0","_col1","_col2","_col4","_col7"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_120] + SHUFFLE [RS_112] PartitionCols:_col2, _col3 - Select Operator [SEL_119] (rows=285115816 width=127) + Select Operator [SEL_111] (rows=285115816 width=127) Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_118] (rows=285115816 width=127) - predicate:((cs_item_sk BETWEEN DynamicValue(RS_22_item_i_item_sk_min) AND DynamicValue(RS_22_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_22_item_i_item_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_19_date_dim_d_date_sk_min) AND DynamicValue(RS_19_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_19_date_dim_d_date_sk_bloom_filter))) and cs_item_sk is not null and cs_sold_date_sk is not null and cs_warehouse_sk is not null) + Filter Operator [FIL_110] (rows=285115816 width=127) + predicate:((cs_item_sk BETWEEN DynamicValue(RS_22_item_i_item_sk_min) AND DynamicValue(RS_22_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_22_item_i_item_sk_bloom_filter))) and cs_item_sk is not null and cs_sold_date_sk is not null and cs_warehouse_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_warehouse_sk","cs_item_sk","cs_order_number","cs_sales_price"] - <-Reducer 10 [BROADCAST_EDGE] vectorized + <-Reducer 11 [BROADCAST_EDGE] vectorized BROADCAST [RS_109] Group By Operator [GBY_108] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 9 [CUSTOM_SIMPLE_EDGE] vectorized + <-Map 10 [CUSTOM_SIMPLE_EDGE] vectorized SHUFFLE [RS_107] Group By Operator [GBY_106] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_105] (rows=8116 width=4) + Select Operator [SEL_105] (rows=51333 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_103] - <-Reducer 12 [BROADCAST_EDGE] vectorized - BROADCAST [RS_117] - Group By Operator [GBY_116] (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 - SHUFFLE [RS_115] - Group By Operator [GBY_114] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_113] (rows=51333 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_111] <-Map 8 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_123] + SHUFFLE [RS_115] PartitionCols:_col0, _col1 - Select Operator [SEL_122] (rows=28798881 width=117) + Select Operator [SEL_114] (rows=28798881 width=117) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_121] (rows=28798881 width=117) + Filter Operator [FIL_113] (rows=28798881 width=117) predicate:cr_item_sk is not null TableScan [TS_3] (rows=28798881 width=117) default@catalog_returns,catalog_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["cr_item_sk","cr_order_number","cr_refunded_cash"] diff --git a/ql/src/test/results/clientpositive/perf/tez/query42.q.out b/ql/src/test/results/clientpositive/perf/tez/query42.q.out index a458f5e095..e8b194e7a1 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query42.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query42.q.out @@ -51,29 +51,28 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 7 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) +Map 1 <- Reducer 7 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) Reducer 3 <- Map 8 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) Reducer 7 <- Map 6 (CUSTOM_SIMPLE_EDGE) -Reducer 9 <- Map 8 (CUSTOM_SIMPLE_EDGE) Stage-0 Fetch Operator limit:100 Stage-1 Reducer 5 vectorized - File Output Operator [FS_79] - Limit [LIM_78] (rows=100 width=210) + File Output Operator [FS_74] + Limit [LIM_73] (rows=100 width=210) Number of rows:100 - Select Operator [SEL_77] (rows=110 width=210) + Select Operator [SEL_72] (rows=110 width=210) Output:["_col0","_col1","_col2","_col3"] <-Reducer 4 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_76] - Select Operator [SEL_75] (rows=110 width=318) + SHUFFLE [RS_71] + Select Operator [SEL_70] (rows=110 width=318) Output:["_col0","_col1","_col3"] - Group By Operator [GBY_74] (rows=110 width=206) + Group By Operator [GBY_69] (rows=110 width=206) Output:["_col0","_col1","_col2"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0, KEY._col1 <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_17] @@ -81,13 +80,13 @@ Stage-0 Group By Operator [GBY_16] (rows=120 width=206) Output:["_col0","_col1","_col2"],aggregations:["sum(_col2)"],keys:_col7, _col8 Merge Join Operator [MERGEJOIN_54] (rows=2301098 width=94) - Conds:RS_12._col1=RS_65._col0(Inner),Output:["_col2","_col7","_col8"] + Conds:RS_12._col1=RS_68._col0(Inner),Output:["_col2","_col7","_col8"] <-Map 8 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_65] + SHUFFLE [RS_68] PartitionCols:_col0 - Select Operator [SEL_64] (rows=7333 width=101) + Select Operator [SEL_67] (rows=7333 width=101) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_63] (rows=7333 width=101) + Filter Operator [FIL_66] (rows=7333 width=101) predicate:((i_manager_id = 1) and i_item_sk is not null) TableScan [TS_6] (rows=462000 width=101) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_category_id","i_category","i_manager_id"] @@ -95,7 +94,7 @@ Stage-0 SHUFFLE [RS_12] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_53] (rows=15062131 width=4) - Conds:RS_73._col0=RS_57._col0(Inner),Output:["_col1","_col2"] + Conds:RS_65._col0=RS_57._col0(Inner),Output:["_col1","_col2"] <-Map 6 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_57] PartitionCols:_col0 @@ -106,12 +105,12 @@ Stage-0 TableScan [TS_3] (rows=73049 width=12) default@date_dim,dt,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_73] + SHUFFLE [RS_65] PartitionCols:_col0 - Select Operator [SEL_72] (rows=550076554 width=114) + Select Operator [SEL_64] (rows=550076554 width=114) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_71] (rows=550076554 width=114) - predicate:((ss_item_sk BETWEEN DynamicValue(RS_13_item_i_item_sk_min) AND DynamicValue(RS_13_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_13_item_i_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_10_dt_d_date_sk_min) AND DynamicValue(RS_10_dt_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_10_dt_d_date_sk_bloom_filter))) and ss_item_sk is not null and ss_sold_date_sk is not null) + Filter Operator [FIL_63] (rows=550076554 width=114) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_10_dt_d_date_sk_min) AND DynamicValue(RS_10_dt_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_10_dt_d_date_sk_bloom_filter))) and ss_item_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_item_sk","ss_ext_sales_price"] <-Reducer 7 [BROADCAST_EDGE] vectorized @@ -125,15 +124,4 @@ Stage-0 Select Operator [SEL_58] (rows=50 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_56] - <-Reducer 9 [BROADCAST_EDGE] vectorized - BROADCAST [RS_70] - Group By Operator [GBY_69] (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_68] - Group By Operator [GBY_67] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_66] (rows=7333 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_64] diff --git a/ql/src/test/results/clientpositive/perf/tez/query43.q.out b/ql/src/test/results/clientpositive/perf/tez/query43.q.out index f75929bbb7..9a66dc73f1 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query43.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query43.q.out @@ -45,27 +45,26 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 7 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) +Map 1 <- Reducer 7 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) Reducer 3 <- Map 8 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) Reducer 7 <- Map 6 (CUSTOM_SIMPLE_EDGE) -Reducer 9 <- Map 8 (CUSTOM_SIMPLE_EDGE) Stage-0 Fetch Operator limit:100 Stage-1 Reducer 5 vectorized - File Output Operator [FS_79] - Limit [LIM_78] (rows=100 width=972) + File Output Operator [FS_74] + Limit [LIM_73] (rows=100 width=972) Number of rows:100 - Select Operator [SEL_77] (rows=3751 width=972) + Select Operator [SEL_72] (rows=3751 width=972) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8"] <-Reducer 4 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_76] - Group By Operator [GBY_75] (rows=3751 width=972) + SHUFFLE [RS_71] + Group By Operator [GBY_70] (rows=3751 width=972) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)","sum(VALUE._col3)","sum(VALUE._col4)","sum(VALUE._col5)","sum(VALUE._col6)"],keys:KEY._col0, KEY._col1 <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_18] @@ -77,13 +76,13 @@ Stage-0 Select Operator [SEL_15] (rows=37536846 width=320) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8"] Merge Join Operator [MERGEJOIN_55] (rows=37536846 width=320) - Conds:RS_12._col1=RS_66._col0(Inner),Output:["_col2","_col5","_col7","_col8"] + Conds:RS_12._col1=RS_69._col0(Inner),Output:["_col2","_col5","_col7","_col8"] <-Map 8 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_66] + SHUFFLE [RS_69] PartitionCols:_col0 - Select Operator [SEL_65] (rows=341 width=304) + Select Operator [SEL_68] (rows=341 width=304) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_64] (rows=341 width=303) + Filter Operator [FIL_67] (rows=341 width=303) predicate:((s_gmt_offset = -6) and s_store_sk is not null) TableScan [TS_6] (rows=1704 width=303) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_store_id","s_store_name","s_gmt_offset"] @@ -91,7 +90,7 @@ Stage-0 SHUFFLE [RS_12] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_54] (rows=187574154 width=192) - Conds:RS_74._col0=RS_58._col0(Inner),Output:["_col1","_col2","_col5"] + Conds:RS_66._col0=RS_58._col0(Inner),Output:["_col1","_col2","_col5"] <-Map 6 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_58] PartitionCols:_col0 @@ -102,12 +101,12 @@ Stage-0 TableScan [TS_3] (rows=73049 width=99) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_day_name"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_74] + SHUFFLE [RS_66] PartitionCols:_col0 - Select Operator [SEL_73] (rows=525329897 width=114) + Select Operator [SEL_65] (rows=525329897 width=114) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_72] (rows=525329897 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_store_sk BETWEEN DynamicValue(RS_13_store_s_store_sk_min) AND DynamicValue(RS_13_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_13_store_s_store_sk_bloom_filter))) and ss_sold_date_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_64] (rows=525329897 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_sold_date_sk is not null and ss_store_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_store_sk","ss_sales_price"] <-Reducer 7 [BROADCAST_EDGE] vectorized @@ -121,15 +120,4 @@ Stage-0 Select Operator [SEL_59] (rows=652 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_57] - <-Reducer 9 [BROADCAST_EDGE] vectorized - BROADCAST [RS_71] - Group By Operator [GBY_70] (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_69] - Group By Operator [GBY_68] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_67] (rows=341 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_65] diff --git a/ql/src/test/results/clientpositive/perf/tez/query46.q.out b/ql/src/test/results/clientpositive/perf/tez/query46.q.out index 6d394e7317..98935d3f46 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query46.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query46.q.out @@ -83,12 +83,10 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 8 <- Reducer 13 (BROADCAST_EDGE), Reducer 15 (BROADCAST_EDGE), Reducer 17 (BROADCAST_EDGE) +Map 8 <- Reducer 13 (BROADCAST_EDGE) Reducer 10 <- Map 14 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) -Reducer 11 <- Map 16 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE) +Reducer 11 <- Map 15 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE) Reducer 13 <- Map 12 (CUSTOM_SIMPLE_EDGE) -Reducer 15 <- Map 14 (CUSTOM_SIMPLE_EDGE) -Reducer 17 <- Map 16 (CUSTOM_SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 5 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) @@ -101,10 +99,10 @@ Stage-0 limit:100 Stage-1 Reducer 4 vectorized - File Output Operator [FS_185] - Limit [LIM_184] (rows=100 width=594) + File Output Operator [FS_175] + Limit [LIM_174] (rows=100 width=594) Number of rows:100 - Select Operator [SEL_183] (rows=20351707 width=594) + Select Operator [SEL_173] (rows=20351707 width=594) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_46] @@ -113,7 +111,7 @@ Stage-0 Filter Operator [FIL_44] (rows=20351707 width=594) predicate:(_col5 <> _col8) Merge Join Operator [MERGEJOIN_145] (rows=20351707 width=594) - Conds:RS_41._col0=RS_182._col1(Inner),Output:["_col2","_col3","_col5","_col6","_col8","_col9","_col10"] + Conds:RS_41._col0=RS_172._col1(Inner),Output:["_col2","_col3","_col5","_col6","_col8","_col9","_col10"] <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_41] PartitionCols:_col0 @@ -138,11 +136,11 @@ Stage-0 TableScan [TS_0] (rows=80000000 width=188) default@customer,customer,Tbl:COMPLETE,Col:COMPLETE,Output:["c_customer_sk","c_current_addr_sk","c_first_name","c_last_name"] <-Reducer 7 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_182] + SHUFFLE [RS_172] PartitionCols:_col1 - Select Operator [SEL_181] (rows=20351707 width=321) + Select Operator [SEL_171] (rows=20351707 width=321) Output:["_col0","_col1","_col2","_col3","_col4"] - Group By Operator [GBY_180] (rows=20351707 width=321) + Group By Operator [GBY_170] (rows=20351707 width=321) Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3 <-Reducer 6 [SIMPLE_EDGE] SHUFFLE [RS_35] @@ -159,13 +157,13 @@ Stage-0 SHUFFLE [RS_30] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_143] (rows=20351707 width=4) - Conds:RS_27._col2=RS_171._col0(Inner),Output:["_col1","_col3","_col5","_col6","_col7"] - <-Map 16 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_171] + Conds:RS_27._col2=RS_169._col0(Inner),Output:["_col1","_col3","_col5","_col6","_col7"] + <-Map 15 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_169] PartitionCols:_col0 - Select Operator [SEL_170] (rows=1855 width=12) + Select Operator [SEL_168] (rows=1855 width=12) Output:["_col0"] - Filter Operator [FIL_169] (rows=1855 width=12) + Filter Operator [FIL_167] (rows=1855 width=12) predicate:(((hd_dep_count = 2) or (hd_vehicle_count = 1)) and hd_demo_sk is not null) TableScan [TS_15] (rows=7200 width=12) default@household_demographics,household_demographics,Tbl:COMPLETE,Col:COMPLETE,Output:["hd_demo_sk","hd_dep_count","hd_vehicle_count"] @@ -173,13 +171,13 @@ Stage-0 SHUFFLE [RS_27] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_142] (rows=78993142 width=178) - Conds:RS_24._col4=RS_163._col0(Inner),Output:["_col1","_col2","_col3","_col5","_col6","_col7"] + Conds:RS_24._col4=RS_166._col0(Inner),Output:["_col1","_col2","_col3","_col5","_col6","_col7"] <-Map 14 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_163] + SHUFFLE [RS_166] PartitionCols:_col0 - Select Operator [SEL_162] (rows=85 width=97) + Select Operator [SEL_165] (rows=85 width=97) Output:["_col0"] - Filter Operator [FIL_161] (rows=85 width=97) + Filter Operator [FIL_164] (rows=85 width=97) predicate:((s_city) IN ('Cedar Grove', 'Wildwood', 'Union', 'Salem', 'Highland Park') and s_store_sk is not null) TableScan [TS_12] (rows=1704 width=97) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_city"] @@ -187,7 +185,7 @@ Stage-0 SHUFFLE [RS_24] PartitionCols:_col4 Merge Join Operator [MERGEJOIN_141] (rows=196204013 width=218) - Conds:RS_179._col0=RS_155._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col7"] + Conds:RS_163._col0=RS_155._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col7"] <-Map 12 [SIMPLE_EDGE] vectorized SHUFFLE [RS_155] PartitionCols:_col0 @@ -198,12 +196,12 @@ Stage-0 TableScan [TS_9] (rows=73049 width=12) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_dow"] <-Map 8 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_179] + SHUFFLE [RS_163] PartitionCols:_col0 - Select Operator [SEL_178] (rows=457565061 width=237) + Select Operator [SEL_162] (rows=457565061 width=237) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] - Filter Operator [FIL_177] (rows=457565061 width=237) - predicate:((ss_hdemo_sk BETWEEN DynamicValue(RS_28_household_demographics_hd_demo_sk_min) AND DynamicValue(RS_28_household_demographics_hd_demo_sk_max) and in_bloom_filter(ss_hdemo_sk, DynamicValue(RS_28_household_demographics_hd_demo_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_25_store_s_store_sk_min) AND DynamicValue(RS_25_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_25_store_s_store_sk_bloom_filter))) and ss_addr_sk is not null and ss_customer_sk is not null and ss_hdemo_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_161] (rows=457565061 width=237) + predicate:((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_addr_sk is not null and ss_customer_sk is not null and ss_hdemo_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=237) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_customer_sk","ss_hdemo_sk","ss_addr_sk","ss_store_sk","ss_ticket_number","ss_coupon_amt","ss_net_profit"] <-Reducer 13 [BROADCAST_EDGE] vectorized @@ -217,26 +215,4 @@ Stage-0 Select Operator [SEL_156] (rows=783 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_154] - <-Reducer 15 [BROADCAST_EDGE] vectorized - BROADCAST [RS_168] - Group By Operator [GBY_167] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 14 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_166] - Group By Operator [GBY_165] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_164] (rows=85 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_162] - <-Reducer 17 [BROADCAST_EDGE] vectorized - BROADCAST [RS_176] - Group By Operator [GBY_175] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 16 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_174] - 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_172] (rows=1855 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_170] diff --git a/ql/src/test/results/clientpositive/perf/tez/query48.q.out b/ql/src/test/results/clientpositive/perf/tez/query48.q.out index 76b4ce1fe1..1d3c23c563 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query48.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query48.q.out @@ -143,13 +143,11 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 7 <- Reducer 11 (BROADCAST_EDGE), Reducer 13 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) -Reducer 11 <- Map 10 (CUSTOM_SIMPLE_EDGE) -Reducer 13 <- Map 12 (CUSTOM_SIMPLE_EDGE) +Map 7 <- Reducer 9 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) Reducer 3 <- Map 8 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Map 10 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Map 12 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) +Reducer 5 <- Map 11 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (CUSTOM_SIMPLE_EDGE) Reducer 9 <- Map 8 (CUSTOM_SIMPLE_EDGE) @@ -158,8 +156,8 @@ Stage-0 limit:-1 Stage-1 Reducer 6 vectorized - File Output Operator [FS_128] - Group By Operator [GBY_127] (rows=1 width=8) + File Output Operator [FS_118] + Group By Operator [GBY_117] (rows=1 width=8) Output:["_col0"],aggregations:["sum(VALUE._col0)"] <-Reducer 5 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_30] @@ -170,13 +168,13 @@ Stage-0 Filter Operator [FIL_27] (rows=25203 width=86) predicate:(((_col14) IN ('KY', 'GA', 'NM') and _col7 BETWEEN 0 AND 2000) or ((_col14) IN ('MT', 'OR', 'IN') and _col7 BETWEEN 150 AND 3000) or ((_col14) IN ('WI', 'MO', 'WV') and _col7 BETWEEN 50 AND 25000)) Merge Join Operator [MERGEJOIN_96] (rows=75613 width=86) - Conds:RS_24._col3=RS_118._col0(Inner),Output:["_col5","_col7","_col14"] - <-Map 12 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_118] + Conds:RS_24._col3=RS_116._col0(Inner),Output:["_col5","_col7","_col14"] + <-Map 11 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_116] PartitionCols:_col0 - Select Operator [SEL_117] (rows=3529412 width=187) + Select Operator [SEL_115] (rows=3529412 width=187) Output:["_col0","_col1"] - Filter Operator [FIL_116] (rows=3529412 width=187) + Filter Operator [FIL_114] (rows=3529412 width=187) predicate:((ca_country = 'United States') and (ca_state) IN ('KY', 'GA', 'NM', 'MT', 'OR', 'IN', 'WI', 'MO', 'WV') and ca_address_sk is not null) TableScan [TS_12] (rows=40000000 width=187) default@customer_address,customer_address,Tbl:COMPLETE,Col:COMPLETE,Output:["ca_address_sk","ca_state","ca_country"] @@ -184,13 +182,13 @@ Stage-0 SHUFFLE [RS_24] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_95] (rows=856941 width=0) - Conds:RS_21._col2=RS_110._col0(Inner),Output:["_col3","_col5","_col7"] + Conds:RS_21._col2=RS_113._col0(Inner),Output:["_col3","_col5","_col7"] <-Map 10 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_110] + SHUFFLE [RS_113] PartitionCols:_col0 - Select Operator [SEL_109] (rows=29552 width=184) + Select Operator [SEL_112] (rows=29552 width=184) Output:["_col0"] - Filter Operator [FIL_108] (rows=29552 width=183) + Filter Operator [FIL_111] (rows=29552 width=183) predicate:((cd_education_status = '4 yr Degree') and (cd_marital_status = 'M') and cd_demo_sk is not null) TableScan [TS_9] (rows=1861800 width=183) default@customer_demographics,customer_demographics,Tbl:COMPLETE,Col:COMPLETE,Output:["cd_demo_sk","cd_marital_status","cd_education_status"] @@ -212,7 +210,7 @@ Stage-0 SHUFFLE [RS_18] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_93] (rows=53235296 width=122) - Conds:RS_99._col0=RS_126._col3(Inner),Output:["_col1","_col2","_col3","_col5","_col7"] + Conds:RS_99._col0=RS_110._col3(Inner),Output:["_col1","_col2","_col3","_col5","_col7"] <-Map 1 [SIMPLE_EDGE] vectorized SHUFFLE [RS_99] PartitionCols:_col0 @@ -223,36 +221,14 @@ Stage-0 TableScan [TS_0] (rows=1704 width=4) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk"] <-Map 7 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_126] + SHUFFLE [RS_110] PartitionCols:_col3 - Select Operator [SEL_125] (rows=53235296 width=233) + Select Operator [SEL_109] (rows=53235296 width=233) Output:["_col0","_col1","_col2","_col3","_col4","_col6"] - Filter Operator [FIL_124] (rows=53235296 width=233) - predicate:((ss_addr_sk BETWEEN DynamicValue(RS_25_customer_address_ca_address_sk_min) AND DynamicValue(RS_25_customer_address_ca_address_sk_max) and in_bloom_filter(ss_addr_sk, DynamicValue(RS_25_customer_address_ca_address_sk_bloom_filter))) and (ss_cdemo_sk BETWEEN DynamicValue(RS_22_customer_demographics_cd_demo_sk_min) AND DynamicValue(RS_22_customer_demographics_cd_demo_sk_max) and in_bloom_filter(ss_cdemo_sk, DynamicValue(RS_22_customer_demographics_cd_demo_sk_bloom_filter))) and (ss_net_profit BETWEEN 0 AND 2000 or ss_net_profit BETWEEN 150 AND 3000 or ss_net_profit BETWEEN 50 AND 25000) and (ss_sales_price BETWEEN 100 AND 150 or ss_sales_price BETWEEN 50 AND 100 or ss_sales_price BETWEEN 150 AND 200) and (ss_sold_date_sk BETWEEN DynamicValue(RS_19_date_dim_d_date_sk_min) AND DynamicValue(RS_19_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_19_date_dim_d_date_sk_bloom_filter))) and ss_addr_sk is not null and ss_cdemo_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_108] (rows=53235296 width=233) + predicate:((ss_net_profit BETWEEN 0 AND 2000 or ss_net_profit BETWEEN 150 AND 3000 or ss_net_profit BETWEEN 50 AND 25000) and (ss_sales_price BETWEEN 100 AND 150 or ss_sales_price BETWEEN 50 AND 100 or ss_sales_price BETWEEN 150 AND 200) and (ss_sold_date_sk BETWEEN DynamicValue(RS_19_date_dim_d_date_sk_min) AND DynamicValue(RS_19_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_19_date_dim_d_date_sk_bloom_filter))) and ss_addr_sk is not null and ss_cdemo_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) TableScan [TS_3] (rows=575995635 width=233) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_cdemo_sk","ss_addr_sk","ss_store_sk","ss_quantity","ss_sales_price","ss_net_profit"] - <-Reducer 11 [BROADCAST_EDGE] vectorized - BROADCAST [RS_115] - Group By Operator [GBY_114] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 10 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_113] - Group By Operator [GBY_112] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_111] (rows=29552 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_109] - <-Reducer 13 [BROADCAST_EDGE] vectorized - BROADCAST [RS_123] - Group By Operator [GBY_122] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=3529412)"] - <-Map 12 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_121] - Group By Operator [GBY_120] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=3529412)"] - Select Operator [SEL_119] (rows=3529412 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_117] <-Reducer 9 [BROADCAST_EDGE] vectorized BROADCAST [RS_107] Group By Operator [GBY_106] (rows=1 width=12) diff --git a/ql/src/test/results/clientpositive/perf/tez/query50.q.out b/ql/src/test/results/clientpositive/perf/tez/query50.q.out index ae6781ba58..985f07319e 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query50.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query50.q.out @@ -127,30 +127,28 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 12 <- Reducer 10 (BROADCAST_EDGE), Reducer 8 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) -Reducer 10 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 11 (SIMPLE_EDGE) -Reducer 3 <- Map 12 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 13 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Map 14 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) +Map 10 <- Reducer 8 (BROADCAST_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 9 (SIMPLE_EDGE) +Reducer 3 <- Map 10 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 4 <- Map 11 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 5 <- Map 12 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) Reducer 8 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) -Reducer 9 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) Stage-0 Fetch Operator limit:100 Stage-1 Reducer 7 vectorized - File Output Operator [FS_146] - Limit [LIM_145] (rows=100 width=858) + File Output Operator [FS_142] + Limit [LIM_141] (rows=100 width=858) Number of rows:100 - Select Operator [SEL_144] (rows=11945216 width=857) + Select Operator [SEL_140] (rows=11945216 width=857) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14"] <-Reducer 6 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_143] - Group By Operator [GBY_142] (rows=11945216 width=857) + SHUFFLE [RS_139] + Group By Operator [GBY_138] (rows=11945216 width=857) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)","sum(VALUE._col3)","sum(VALUE._col4)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4, KEY._col5, KEY._col6, KEY._col7, KEY._col8, KEY._col9 <-Reducer 5 [SIMPLE_EDGE] SHUFFLE [RS_30] @@ -162,13 +160,13 @@ Stage-0 Select Operator [SEL_27] (rows=11945216 width=821) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14"] Merge Join Operator [MERGEJOIN_120] (rows=11945216 width=821) - Conds:RS_24._col10=RS_141._col0(Inner),Output:["_col0","_col7","_col14","_col15","_col16","_col17","_col18","_col19","_col20","_col21","_col22","_col23"] - <-Map 14 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_141] + Conds:RS_24._col10=RS_137._col0(Inner),Output:["_col0","_col7","_col14","_col15","_col16","_col17","_col18","_col19","_col20","_col21","_col22","_col23"] + <-Map 12 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_137] PartitionCols:_col0 - Select Operator [SEL_140] (rows=1704 width=821) + Select Operator [SEL_136] (rows=1704 width=821) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10"] - Filter Operator [FIL_139] (rows=1704 width=821) + Filter Operator [FIL_135] (rows=1704 width=821) predicate:s_store_sk is not null TableScan [TS_12] (rows=1704 width=821) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_store_name","s_company_id","s_street_number","s_street_name","s_street_type","s_suite_number","s_city","s_county","s_state","s_zip"] @@ -176,13 +174,13 @@ Stage-0 SHUFFLE [RS_24] PartitionCols:_col10 Merge Join Operator [MERGEJOIN_119] (rows=11945216 width=3) - Conds:RS_21._col7=RS_138._col0(Inner),Output:["_col0","_col7","_col10"] - <-Map 13 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_138] + Conds:RS_21._col7=RS_134._col0(Inner),Output:["_col0","_col7","_col10"] + <-Map 11 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_134] PartitionCols:_col0 - Select Operator [SEL_137] (rows=73049 width=4) + Select Operator [SEL_133] (rows=73049 width=4) Output:["_col0"] - Filter Operator [FIL_136] (rows=73049 width=4) + Filter Operator [FIL_132] (rows=73049 width=4) predicate:d_date_sk is not null TableScan [TS_9] (rows=73049 width=4) default@date_dim,d1,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk"] @@ -190,7 +188,7 @@ Stage-0 SHUFFLE [RS_21] PartitionCols:_col7 Merge Join Operator [MERGEJOIN_118] (rows=11945216 width=3) - Conds:RS_18._col1, _col2, _col3=RS_135._col1, _col2, _col4(Inner),Output:["_col0","_col7","_col10"] + Conds:RS_18._col1, _col2, _col3=RS_131._col1, _col2, _col4(Inner),Output:["_col0","_col7","_col10"] <-Reducer 2 [SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_18] PartitionCols:_col1, _col2, _col3 @@ -205,7 +203,7 @@ Stage-0 predicate:(sr_customer_sk is not null and sr_item_sk is not null and sr_returned_date_sk is not null and sr_ticket_number is not null) TableScan [TS_0] (rows=57591150 width=15) default@store_returns,store_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["sr_returned_date_sk","sr_item_sk","sr_customer_sk","sr_ticket_number"] - <-Map 11 [SIMPLE_EDGE] vectorized + <-Map 9 [SIMPLE_EDGE] vectorized SHUFFLE [RS_126] PartitionCols:_col0 Select Operator [SEL_125] (rows=50 width=12) @@ -214,46 +212,24 @@ Stage-0 predicate:((d_moy = 9) and (d_year = 2000) and d_date_sk is not null) TableScan [TS_3] (rows=73049 width=12) default@date_dim,d2,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] - <-Map 12 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_135] + <-Map 10 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_131] PartitionCols:_col1, _col2, _col4 - Select Operator [SEL_134] (rows=501694138 width=19) + Select Operator [SEL_130] (rows=501694138 width=19) Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_133] (rows=501694138 width=19) - predicate:((ss_customer_sk BETWEEN DynamicValue(RS_18_store_returns_sr_customer_sk_min) AND DynamicValue(RS_18_store_returns_sr_customer_sk_max) and in_bloom_filter(ss_customer_sk, DynamicValue(RS_18_store_returns_sr_customer_sk_bloom_filter))) and (ss_item_sk BETWEEN DynamicValue(RS_18_store_returns_sr_item_sk_min) AND DynamicValue(RS_18_store_returns_sr_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_18_store_returns_sr_item_sk_bloom_filter))) and (ss_ticket_number BETWEEN DynamicValue(RS_18_store_returns_sr_ticket_number_min) AND DynamicValue(RS_18_store_returns_sr_ticket_number_max) and in_bloom_filter(ss_ticket_number, DynamicValue(RS_18_store_returns_sr_ticket_number_bloom_filter))) and ss_customer_sk is not null and ss_item_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null and ss_ticket_number is not null) + Filter Operator [FIL_129] (rows=501694138 width=19) + predicate:((ss_ticket_number BETWEEN DynamicValue(RS_18_store_returns_sr_ticket_number_min) AND DynamicValue(RS_18_store_returns_sr_ticket_number_max) and in_bloom_filter(ss_ticket_number, DynamicValue(RS_18_store_returns_sr_ticket_number_bloom_filter))) and ss_customer_sk is not null and ss_item_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null and ss_ticket_number is not null) TableScan [TS_6] (rows=575995635 width=19) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_customer_sk","ss_store_sk","ss_ticket_number"] - <-Reducer 10 [BROADCAST_EDGE] vectorized - BROADCAST [RS_132] - Group By Operator [GBY_131] (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_94] - Group By Operator [GBY_93] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_92] (rows=1339446 width=8) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_117] <-Reducer 8 [BROADCAST_EDGE] vectorized BROADCAST [RS_128] Group By Operator [GBY_127] (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_84] - Group By Operator [GBY_83] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_82] (rows=1339446 width=8) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_117] - <-Reducer 9 [BROADCAST_EDGE] vectorized - BROADCAST [RS_130] - Group By Operator [GBY_129] (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_89] - Group By Operator [GBY_88] (rows=1 width=12) + PARTITION_ONLY_SHUFFLE [RS_94] + Group By Operator [GBY_93] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_87] (rows=1339446 width=0) + Select Operator [SEL_92] (rows=1339446 width=8) Output:["_col0"] Please refer to the previous Merge Join Operator [MERGEJOIN_117] diff --git a/ql/src/test/results/clientpositive/perf/tez/query52.q.out b/ql/src/test/results/clientpositive/perf/tez/query52.q.out index bc932b2dec..53f3fc3f07 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query52.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query52.q.out @@ -51,29 +51,28 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 7 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) +Map 1 <- Reducer 7 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) Reducer 3 <- Map 8 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) Reducer 7 <- Map 6 (CUSTOM_SIMPLE_EDGE) -Reducer 9 <- Map 8 (CUSTOM_SIMPLE_EDGE) Stage-0 Fetch Operator limit:-1 Stage-1 Reducer 5 vectorized - File Output Operator [FS_79] - Select Operator [SEL_78] (rows=100 width=220) + File Output Operator [FS_74] + Select Operator [SEL_73] (rows=100 width=220) Output:["_col0","_col1","_col2","_col3"] - Limit [LIM_77] (rows=100 width=216) + Limit [LIM_72] (rows=100 width=216) Number of rows:100 - Select Operator [SEL_76] (rows=7333 width=216) + Select Operator [SEL_71] (rows=7333 width=216) Output:["_col0","_col1","_col2"] <-Reducer 4 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_75] - Group By Operator [GBY_74] (rows=7333 width=216) + SHUFFLE [RS_70] + Group By Operator [GBY_69] (rows=7333 width=216) Output:["_col0","_col1","_col2"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0, KEY._col1 <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_17] @@ -81,13 +80,13 @@ Stage-0 Group By Operator [GBY_16] (rows=7333 width=216) Output:["_col0","_col1","_col2"],aggregations:["sum(_col2)"],keys:_col7, _col8 Merge Join Operator [MERGEJOIN_54] (rows=2301098 width=104) - Conds:RS_12._col1=RS_65._col0(Inner),Output:["_col2","_col7","_col8"] + Conds:RS_12._col1=RS_68._col0(Inner),Output:["_col2","_col7","_col8"] <-Map 8 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_65] + SHUFFLE [RS_68] PartitionCols:_col0 - Select Operator [SEL_64] (rows=7333 width=111) + Select Operator [SEL_67] (rows=7333 width=111) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_63] (rows=7333 width=111) + Filter Operator [FIL_66] (rows=7333 width=111) predicate:((i_manager_id = 1) and i_item_sk is not null) TableScan [TS_6] (rows=462000 width=111) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_brand_id","i_brand","i_manager_id"] @@ -95,7 +94,7 @@ Stage-0 SHUFFLE [RS_12] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_53] (rows=15062131 width=4) - Conds:RS_73._col0=RS_57._col0(Inner),Output:["_col1","_col2"] + Conds:RS_65._col0=RS_57._col0(Inner),Output:["_col1","_col2"] <-Map 6 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_57] PartitionCols:_col0 @@ -106,12 +105,12 @@ Stage-0 TableScan [TS_3] (rows=73049 width=12) default@date_dim,dt,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_73] + SHUFFLE [RS_65] PartitionCols:_col0 - Select Operator [SEL_72] (rows=550076554 width=114) + Select Operator [SEL_64] (rows=550076554 width=114) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_71] (rows=550076554 width=114) - predicate:((ss_item_sk BETWEEN DynamicValue(RS_13_item_i_item_sk_min) AND DynamicValue(RS_13_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_13_item_i_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_10_dt_d_date_sk_min) AND DynamicValue(RS_10_dt_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_10_dt_d_date_sk_bloom_filter))) and ss_item_sk is not null and ss_sold_date_sk is not null) + Filter Operator [FIL_63] (rows=550076554 width=114) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_10_dt_d_date_sk_min) AND DynamicValue(RS_10_dt_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_10_dt_d_date_sk_bloom_filter))) and ss_item_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_item_sk","ss_ext_sales_price"] <-Reducer 7 [BROADCAST_EDGE] vectorized @@ -125,15 +124,4 @@ Stage-0 Select Operator [SEL_58] (rows=50 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_56] - <-Reducer 9 [BROADCAST_EDGE] vectorized - BROADCAST [RS_70] - Group By Operator [GBY_69] (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_68] - Group By Operator [GBY_67] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_66] (rows=7333 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_64] diff --git a/ql/src/test/results/clientpositive/perf/tez/query53.q.out b/ql/src/test/results/clientpositive/perf/tez/query53.q.out index d99529f1a5..b3796cadd0 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query53.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query53.q.out @@ -65,11 +65,10 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 10 (BROADCAST_EDGE), Reducer 8 (BROADCAST_EDGE) -Reducer 10 <- Map 9 (CUSTOM_SIMPLE_EDGE) +Map 1 <- Reducer 8 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) Reducer 3 <- Map 9 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 11 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 4 <- Map 10 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) Reducer 8 <- Map 7 (CUSTOM_SIMPLE_EDGE) @@ -79,10 +78,10 @@ Stage-0 limit:100 Stage-1 Reducer 6 vectorized - File Output Operator [FS_111] - Limit [LIM_110] (rows=30 width=228) + File Output Operator [FS_106] + Limit [LIM_105] (rows=30 width=228) Number of rows:100 - Select Operator [SEL_109] (rows=30 width=228) + Select Operator [SEL_104] (rows=30 width=228) Output:["_col0","_col1","_col2"] <-Reducer 5 [SIMPLE_EDGE] SHUFFLE [RS_33] @@ -104,13 +103,13 @@ Stage-0 Group By Operator [GBY_22] (rows=60 width=120) Output:["_col0","_col1","_col2"],aggregations:["sum(_col3)"],keys:_col8, _col11 Merge Join Operator [MERGEJOIN_84] (rows=129200 width=8) - Conds:RS_18._col2=RS_106._col0(Inner),Output:["_col3","_col8","_col11"] - <-Map 11 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_106] + Conds:RS_18._col2=RS_101._col0(Inner),Output:["_col3","_col8","_col11"] + <-Map 10 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_101] PartitionCols:_col0 - Select Operator [SEL_105] (rows=1704 width=4) + Select Operator [SEL_100] (rows=1704 width=4) Output:["_col0"] - Filter Operator [FIL_104] (rows=1704 width=4) + Filter Operator [FIL_99] (rows=1704 width=4) predicate:s_store_sk is not null TableScan [TS_9] (rows=1704 width=4) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk"] @@ -118,13 +117,13 @@ Stage-0 SHUFFLE [RS_18] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_83] (rows=129200 width=8) - Conds:RS_15._col0=RS_95._col0(Inner),Output:["_col2","_col3","_col8","_col11"] + Conds:RS_15._col0=RS_98._col0(Inner),Output:["_col2","_col3","_col8","_col11"] <-Map 9 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_95] + SHUFFLE [RS_98] PartitionCols:_col0 - Select Operator [SEL_94] (rows=317 width=12) + Select Operator [SEL_97] (rows=317 width=12) Output:["_col0","_col2"] - Filter Operator [FIL_93] (rows=317 width=12) + Filter Operator [FIL_96] (rows=317 width=12) predicate:((d_month_seq) IN (1212, 1213, 1214, 1215, 1216, 1217, 1218, 1219, 1220, 1221, 1222, 1223) and d_date_sk is not null) TableScan [TS_6] (rows=73049 width=12) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_month_seq","d_qoy"] @@ -132,7 +131,7 @@ Stage-0 SHUFFLE [RS_15] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_82] (rows=744232 width=4) - Conds:RS_103._col1=RS_87._col0(Inner),Output:["_col0","_col2","_col3","_col8"] + Conds:RS_95._col1=RS_87._col0(Inner),Output:["_col0","_col2","_col3","_col8"] <-Map 7 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_87] PartitionCols:_col0 @@ -143,25 +142,14 @@ Stage-0 TableScan [TS_3] (rows=462000 width=289) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_brand","i_class","i_category","i_manufact_id"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_103] + SHUFFLE [RS_95] PartitionCols:_col1 - Select Operator [SEL_102] (rows=525329897 width=118) + Select Operator [SEL_94] (rows=525329897 width=118) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_101] (rows=525329897 width=118) - predicate:((ss_item_sk BETWEEN DynamicValue(RS_13_item_i_item_sk_min) AND DynamicValue(RS_13_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_13_item_i_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_16_date_dim_d_date_sk_min) AND DynamicValue(RS_16_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_16_date_dim_d_date_sk_bloom_filter))) and ss_item_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_93] (rows=525329897 width=118) + predicate:((ss_item_sk BETWEEN DynamicValue(RS_13_item_i_item_sk_min) AND DynamicValue(RS_13_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_13_item_i_item_sk_bloom_filter))) and ss_item_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) TableScan [TS_0] (rows=575995635 width=118) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_store_sk","ss_sales_price"] - <-Reducer 10 [BROADCAST_EDGE] vectorized - BROADCAST [RS_100] - Group By Operator [GBY_99] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 9 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_98] - Group By Operator [GBY_97] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_96] (rows=317 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_94] <-Reducer 8 [BROADCAST_EDGE] vectorized BROADCAST [RS_92] Group By Operator [GBY_91] (rows=1 width=12) diff --git a/ql/src/test/results/clientpositive/perf/tez/query54.q.out b/ql/src/test/results/clientpositive/perf/tez/query54.q.out index a32f264d8b..b17aa6195c 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query54.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query54.q.out @@ -1,6 +1,6 @@ Warning: Shuffle Join MERGEJOIN[271][tables = [$hdt$_0, $hdt$_1, $hdt$_2, $hdt$_3]] in Stage 'Reducer 4' is a cross product Warning: Shuffle Join MERGEJOIN[272][tables = [$hdt$_0, $hdt$_1, $hdt$_2, $hdt$_3, $hdt$_4]] in Stage 'Reducer 5' is a cross product -Warning: Shuffle Join MERGEJOIN[270][tables = [$hdt$_1, $hdt$_2]] in Stage 'Reducer 32' is a cross product +Warning: Shuffle Join MERGEJOIN[270][tables = [$hdt$_1, $hdt$_2]] in Stage 'Reducer 31' is a cross product Warning: Shuffle Join MERGEJOIN[273][tables = [$hdt$_1, $hdt$_2, $hdt$_0]] in Stage 'Reducer 6' is a cross product PREHOOK: query: explain with my_customers as ( @@ -134,28 +134,27 @@ Plan optimized by CBO. Vertex dependency in root stage Map 1 <- Reducer 14 (BROADCAST_EDGE) -Map 16 <- Reducer 24 (BROADCAST_EDGE), Reducer 26 (BROADCAST_EDGE), Union 17 (CONTAINS) -Map 22 <- Reducer 24 (BROADCAST_EDGE), Reducer 26 (BROADCAST_EDGE), Union 17 (CONTAINS) +Map 16 <- Reducer 24 (BROADCAST_EDGE), Union 17 (CONTAINS) +Map 22 <- Reducer 24 (BROADCAST_EDGE), Union 17 (CONTAINS) Reducer 12 <- Map 11 (SIMPLE_EDGE), Map 15 (SIMPLE_EDGE) Reducer 13 <- Reducer 12 (SIMPLE_EDGE), Reducer 21 (SIMPLE_EDGE) Reducer 14 <- Reducer 13 (CUSTOM_SIMPLE_EDGE) Reducer 18 <- Map 23 (SIMPLE_EDGE), Union 17 (SIMPLE_EDGE) Reducer 19 <- Map 25 (SIMPLE_EDGE), Reducer 18 (SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 10 (SIMPLE_EDGE) -Reducer 20 <- Map 27 (SIMPLE_EDGE), Reducer 19 (SIMPLE_EDGE) +Reducer 20 <- Map 26 (SIMPLE_EDGE), Reducer 19 (SIMPLE_EDGE) Reducer 21 <- Reducer 20 (SIMPLE_EDGE) Reducer 24 <- Map 23 (CUSTOM_SIMPLE_EDGE) -Reducer 26 <- Map 25 (CUSTOM_SIMPLE_EDGE) -Reducer 29 <- Map 28 (SIMPLE_EDGE) +Reducer 28 <- Map 27 (SIMPLE_EDGE) +Reducer 29 <- Reducer 28 (CUSTOM_SIMPLE_EDGE) Reducer 3 <- Reducer 13 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 30 <- Reducer 29 (CUSTOM_SIMPLE_EDGE) -Reducer 31 <- Map 28 (SIMPLE_EDGE) -Reducer 32 <- Reducer 31 (CUSTOM_SIMPLE_EDGE), Reducer 34 (CUSTOM_SIMPLE_EDGE) -Reducer 33 <- Map 28 (SIMPLE_EDGE) -Reducer 34 <- Reducer 33 (CUSTOM_SIMPLE_EDGE) -Reducer 4 <- Reducer 3 (CUSTOM_SIMPLE_EDGE), Reducer 30 (CUSTOM_SIMPLE_EDGE) -Reducer 5 <- Reducer 29 (CUSTOM_SIMPLE_EDGE), Reducer 4 (CUSTOM_SIMPLE_EDGE) -Reducer 6 <- Reducer 32 (CUSTOM_SIMPLE_EDGE), Reducer 5 (CUSTOM_SIMPLE_EDGE) +Reducer 30 <- Map 27 (SIMPLE_EDGE) +Reducer 31 <- Reducer 30 (CUSTOM_SIMPLE_EDGE), Reducer 33 (CUSTOM_SIMPLE_EDGE) +Reducer 32 <- Map 27 (SIMPLE_EDGE) +Reducer 33 <- Reducer 32 (CUSTOM_SIMPLE_EDGE) +Reducer 4 <- Reducer 29 (CUSTOM_SIMPLE_EDGE), Reducer 3 (CUSTOM_SIMPLE_EDGE) +Reducer 5 <- Reducer 28 (CUSTOM_SIMPLE_EDGE), Reducer 4 (CUSTOM_SIMPLE_EDGE) +Reducer 6 <- Reducer 31 (CUSTOM_SIMPLE_EDGE), Reducer 5 (CUSTOM_SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) Reducer 8 <- Reducer 7 (SIMPLE_EDGE) Reducer 9 <- Reducer 8 (SIMPLE_EDGE) @@ -165,25 +164,25 @@ Stage-0 limit:100 Stage-1 Reducer 9 vectorized - File Output Operator [FS_354] - Limit [LIM_353] (rows=1 width=16) + File Output Operator [FS_351] + Limit [LIM_350] (rows=1 width=16) Number of rows:100 - Select Operator [SEL_352] (rows=1 width=16) + Select Operator [SEL_349] (rows=1 width=16) Output:["_col0","_col1","_col2"] <-Reducer 8 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_351] - Select Operator [SEL_350] (rows=1 width=16) + SHUFFLE [RS_348] + Select Operator [SEL_347] (rows=1 width=16) Output:["_col0","_col1","_col2"] - Group By Operator [GBY_349] (rows=1 width=12) + Group By Operator [GBY_346] (rows=1 width=12) Output:["_col0","_col1"],aggregations:["count(VALUE._col0)"],keys:KEY._col0 <-Reducer 7 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_348] + SHUFFLE [RS_345] PartitionCols:_col0 - Group By Operator [GBY_347] (rows=1 width=12) + Group By Operator [GBY_344] (rows=1 width=12) Output:["_col0","_col1"],aggregations:["count()"],keys:_col0 - Select Operator [SEL_346] (rows=1 width=116) + Select Operator [SEL_343] (rows=1 width=116) Output:["_col0"] - Group By Operator [GBY_345] (rows=1 width=116) + Group By Operator [GBY_342] (rows=1 width=116) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 <-Reducer 6 [SIMPLE_EDGE] SHUFFLE [RS_119] @@ -198,69 +197,82 @@ Stage-0 Output:["_col0","_col1","_col2","_col3","_col4"] Merge Join Operator [MERGEJOIN_273] (rows=5618315000 width=127) Conds:(Inner),Output:["_col0","_col2","_col6","_col13","_col15"] - <-Reducer 32 [CUSTOM_SIMPLE_EDGE] + <-Reducer 31 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_112] Merge Join Operator [MERGEJOIN_270] (rows=25 width=4) Conds:(Right Outer),Output:["_col0"] - <-Reducer 31 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_336] - Group By Operator [GBY_335] (rows=25 width=4) + <-Reducer 30 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_333] + Group By Operator [GBY_332] (rows=25 width=4) Output:["_col0"],keys:KEY._col0 - <-Map 28 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_324] + <-Map 27 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_321] PartitionCols:_col0 - Group By Operator [GBY_321] (rows=25 width=4) + Group By Operator [GBY_318] (rows=25 width=4) Output:["_col0"],keys:_col0 - Select Operator [SEL_318] (rows=50 width=12) + Select Operator [SEL_315] (rows=50 width=12) Output:["_col0"] - Filter Operator [FIL_316] (rows=50 width=12) + Filter Operator [FIL_313] (rows=50 width=12) predicate:((d_moy = 3) and (d_year = 1999)) TableScan [TS_73] (rows=73049 width=12) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_month_seq","d_year","d_moy"] - <-Reducer 34 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_344] - Select Operator [SEL_343] (rows=1 width=8) - Filter Operator [FIL_342] (rows=1 width=8) + <-Reducer 33 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_341] + Select Operator [SEL_340] (rows=1 width=8) + Filter Operator [FIL_339] (rows=1 width=8) predicate:(sq_count_check(_col0) <= 1) - Group By Operator [GBY_341] (rows=1 width=8) + Group By Operator [GBY_338] (rows=1 width=8) Output:["_col0"],aggregations:["count(VALUE._col0)"] - <-Reducer 33 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_340] - Group By Operator [GBY_339] (rows=1 width=8) + <-Reducer 32 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_337] + Group By Operator [GBY_336] (rows=1 width=8) Output:["_col0"],aggregations:["count()"] - Select Operator [SEL_338] (rows=25 width=4) - Group By Operator [GBY_337] (rows=25 width=4) + Select Operator [SEL_335] (rows=25 width=4) + Group By Operator [GBY_334] (rows=25 width=4) Output:["_col0"],keys:KEY._col0 - <-Map 28 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_325] + <-Map 27 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_322] PartitionCols:_col0 - Group By Operator [GBY_322] (rows=25 width=4) + Group By Operator [GBY_319] (rows=25 width=4) Output:["_col0"],keys:_col0 - Select Operator [SEL_319] (rows=50 width=12) + Select Operator [SEL_316] (rows=50 width=12) Output:["_col0"] - Please refer to the previous Filter Operator [FIL_316] + Please refer to the previous Filter Operator [FIL_313] <-Reducer 5 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_113] Select Operator [SEL_108] (rows=224732600 width=119) Output:["_col0","_col4","_col11","_col13"] Merge Join Operator [MERGEJOIN_272] (rows=224732600 width=119) Conds:(Left Outer),Output:["_col2","_col4","_col10","_col13"] - <-Reducer 29 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_328] - Group By Operator [GBY_326] (rows=25 width=4) + <-Reducer 28 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_325] + Group By Operator [GBY_323] (rows=25 width=4) Output:["_col0"],keys:KEY._col0 - <-Map 28 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_323] + <-Map 27 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_320] PartitionCols:_col0 - Group By Operator [GBY_320] (rows=25 width=4) + Group By Operator [GBY_317] (rows=25 width=4) Output:["_col0"],keys:_col0 - Select Operator [SEL_317] (rows=50 width=12) + Select Operator [SEL_314] (rows=50 width=12) Output:["_col0"] - Please refer to the previous Filter Operator [FIL_316] + Please refer to the previous Filter Operator [FIL_313] <-Reducer 4 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_105] Merge Join Operator [MERGEJOIN_271] (rows=8989304 width=8) Conds:(Inner),Output:["_col2","_col4","_col10"] + <-Reducer 29 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_331] + Select Operator [SEL_330] (rows=1 width=8) + Filter Operator [FIL_329] (rows=1 width=8) + predicate:(sq_count_check(_col0) <= 1) + Group By Operator [GBY_328] (rows=1 width=8) + Output:["_col0"],aggregations:["count(VALUE._col0)"] + <-Reducer 28 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_327] + Group By Operator [GBY_326] (rows=1 width=8) + Output:["_col0"],aggregations:["count()"] + Select Operator [SEL_324] (rows=25 width=4) + Please refer to the previous Group By Operator [GBY_323] <-Reducer 3 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_102] Merge Join Operator [MERGEJOIN_269] (rows=8989304 width=8) @@ -269,7 +281,7 @@ Stage-0 SHUFFLE [RS_100] PartitionCols:_col5 Merge Join Operator [MERGEJOIN_268] (rows=55046 width=4) - Conds:RS_69._col0=RS_307._col1(Inner),Output:["_col5"] + Conds:RS_69._col0=RS_304._col1(Inner),Output:["_col5"] <-Reducer 12 [SIMPLE_EDGE] SHUFFLE [RS_69] PartitionCols:_col0 @@ -294,11 +306,11 @@ Stage-0 TableScan [TS_32] (rows=1704 width=184) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_county","s_state"] <-Reducer 21 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_307] + SHUFFLE [RS_304] PartitionCols:_col1 - Select Operator [SEL_306] (rows=55046 width=8) + Select Operator [SEL_303] (rows=55046 width=8) Output:["_col0","_col1"] - Group By Operator [GBY_305] (rows=55046 width=8) + Group By Operator [GBY_302] (rows=55046 width=8) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 <-Reducer 20 [SIMPLE_EDGE] SHUFFLE [RS_63] @@ -306,13 +318,13 @@ Stage-0 Group By Operator [GBY_62] (rows=55046 width=8) Output:["_col0","_col1"],keys:_col10, _col9 Merge Join Operator [MERGEJOIN_267] (rows=110092 width=8) - Conds:RS_58._col1=RS_304._col0(Inner),Output:["_col9","_col10"] - <-Map 27 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_304] + Conds:RS_58._col1=RS_301._col0(Inner),Output:["_col9","_col10"] + <-Map 26 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_301] PartitionCols:_col0 - Select Operator [SEL_303] (rows=80000000 width=8) + Select Operator [SEL_300] (rows=80000000 width=8) Output:["_col0","_col1"] - Filter Operator [FIL_302] (rows=80000000 width=8) + Filter Operator [FIL_299] (rows=80000000 width=8) predicate:(c_current_addr_sk is not null and c_customer_sk is not null) TableScan [TS_49] (rows=80000000 width=8) default@customer,customer,Tbl:COMPLETE,Col:COMPLETE,Output:["c_customer_sk","c_current_addr_sk"] @@ -322,7 +334,7 @@ Stage-0 Merge Join Operator [MERGEJOIN_266] (rows=110092 width=0) Conds:RS_55._col2=RS_298._col0(Inner),Output:["_col1"] <-Map 25 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_298] + SHUFFLE [RS_298] PartitionCols:_col0 Select Operator [SEL_297] (rows=453 width=190) Output:["_col0"] @@ -346,17 +358,17 @@ Stage-0 default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] <-Union 17 [SIMPLE_EDGE] <-Map 16 [CONTAINS] vectorized - Reduce Output Operator [RS_363] + Reduce Output Operator [RS_357] PartitionCols:_col0 - Select Operator [SEL_362] (rows=285117831 width=11) + Select Operator [SEL_356] (rows=285117831 width=11) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_361] (rows=285117831 width=11) - predicate:((cs_item_sk BETWEEN DynamicValue(RS_56_item_i_item_sk_min) AND DynamicValue(RS_56_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_56_item_i_item_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_53_date_dim_d_date_sk_min) AND DynamicValue(RS_53_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_53_date_dim_d_date_sk_bloom_filter))) and cs_bill_customer_sk is not null and cs_item_sk is not null and cs_sold_date_sk is not null) + Filter Operator [FIL_355] (rows=285117831 width=11) + predicate:((cs_sold_date_sk BETWEEN DynamicValue(RS_53_date_dim_d_date_sk_min) AND DynamicValue(RS_53_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_53_date_dim_d_date_sk_bloom_filter))) and cs_bill_customer_sk is not null and cs_item_sk is not null and cs_sold_date_sk is not null) TableScan [TS_274] (rows=287989836 width=11) Output:["cs_sold_date_sk","cs_bill_customer_sk","cs_item_sk"] <-Reducer 24 [BROADCAST_EDGE] vectorized - BROADCAST [RS_356] - Group By Operator [GBY_355] (rows=1 width=12) + BROADCAST [RS_353] + Group By Operator [GBY_352] (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_295] @@ -365,49 +377,35 @@ Stage-0 Select Operator [SEL_293] (rows=50 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_291] - <-Reducer 26 [BROADCAST_EDGE] vectorized - BROADCAST [RS_359] - Group By Operator [GBY_358] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 25 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_301] - Group By Operator [GBY_300] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_299] (rows=453 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_297] <-Map 22 [CONTAINS] vectorized - Reduce Output Operator [RS_366] + Reduce Output Operator [RS_360] PartitionCols:_col0 - Select Operator [SEL_365] (rows=143930993 width=11) + Select Operator [SEL_359] (rows=143930993 width=11) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_364] (rows=143930993 width=11) - predicate:((ws_item_sk BETWEEN DynamicValue(RS_56_item_i_item_sk_min) AND DynamicValue(RS_56_item_i_item_sk_max) and in_bloom_filter(ws_item_sk, DynamicValue(RS_56_item_i_item_sk_bloom_filter))) and (ws_sold_date_sk BETWEEN DynamicValue(RS_53_date_dim_d_date_sk_min) AND DynamicValue(RS_53_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_53_date_dim_d_date_sk_bloom_filter))) and ws_bill_customer_sk is not null and ws_item_sk is not null and ws_sold_date_sk is not null) + Filter Operator [FIL_358] (rows=143930993 width=11) + predicate:((ws_sold_date_sk BETWEEN DynamicValue(RS_53_date_dim_d_date_sk_min) AND DynamicValue(RS_53_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_53_date_dim_d_date_sk_bloom_filter))) and ws_bill_customer_sk is not null and ws_item_sk is not null and ws_sold_date_sk is not null) TableScan [TS_279] (rows=144002668 width=11) Output:["ws_sold_date_sk","ws_item_sk","ws_bill_customer_sk"] <-Reducer 24 [BROADCAST_EDGE] vectorized - BROADCAST [RS_357] - Please refer to the previous Group By Operator [GBY_355] - <-Reducer 26 [BROADCAST_EDGE] vectorized - BROADCAST [RS_360] - Please refer to the previous Group By Operator [GBY_358] + BROADCAST [RS_354] + Please refer to the previous Group By Operator [GBY_352] <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_99] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_263] (rows=525327388 width=114) - Conds:RS_312._col0=RS_315._col0(Inner),Output:["_col1","_col2","_col4"] + Conds:RS_309._col0=RS_312._col0(Inner),Output:["_col1","_col2","_col4"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_312] + SHUFFLE [RS_309] PartitionCols:_col0 - Select Operator [SEL_311] (rows=525327388 width=114) + Select Operator [SEL_308] (rows=525327388 width=114) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_310] (rows=525327388 width=114) + Filter Operator [FIL_307] (rows=525327388 width=114) predicate:((ss_customer_sk BETWEEN DynamicValue(RS_100_customer_c_customer_sk_min) AND DynamicValue(RS_100_customer_c_customer_sk_max) and in_bloom_filter(ss_customer_sk, DynamicValue(RS_100_customer_c_customer_sk_bloom_filter))) and ss_customer_sk is not null and ss_sold_date_sk is not null) TableScan [TS_23] (rows=575995635 width=114) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_customer_sk","ss_ext_sales_price"] <-Reducer 14 [BROADCAST_EDGE] vectorized - BROADCAST [RS_309] - Group By Operator [GBY_308] (rows=1 width=12) + BROADCAST [RS_306] + Group By Operator [GBY_305] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Reducer 13 [CUSTOM_SIMPLE_EDGE] SHUFFLE [RS_183] @@ -417,25 +415,12 @@ Stage-0 Output:["_col0"] Please refer to the previous Merge Join Operator [MERGEJOIN_268] <-Map 10 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_315] + SHUFFLE [RS_312] PartitionCols:_col0 - Select Operator [SEL_314] (rows=73049 width=8) + Select Operator [SEL_311] (rows=73049 width=8) Output:["_col0","_col1"] - Filter Operator [FIL_313] (rows=73049 width=8) + Filter Operator [FIL_310] (rows=73049 width=8) predicate:d_date_sk is not null TableScan [TS_26] (rows=73049 width=8) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_month_seq"] - <-Reducer 30 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_334] - Select Operator [SEL_333] (rows=1 width=8) - Filter Operator [FIL_332] (rows=1 width=8) - predicate:(sq_count_check(_col0) <= 1) - Group By Operator [GBY_331] (rows=1 width=8) - Output:["_col0"],aggregations:["count(VALUE._col0)"] - <-Reducer 29 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_330] - Group By Operator [GBY_329] (rows=1 width=8) - Output:["_col0"],aggregations:["count()"] - Select Operator [SEL_327] (rows=25 width=4) - Please refer to the previous Group By Operator [GBY_326] diff --git a/ql/src/test/results/clientpositive/perf/tez/query55.q.out b/ql/src/test/results/clientpositive/perf/tez/query55.q.out index ec30b92cc6..734981f295 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query55.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query55.q.out @@ -35,29 +35,28 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 7 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) +Map 1 <- Reducer 7 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) Reducer 3 <- Map 8 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) Reducer 7 <- Map 6 (CUSTOM_SIMPLE_EDGE) -Reducer 9 <- Map 8 (CUSTOM_SIMPLE_EDGE) Stage-0 Fetch Operator limit:-1 Stage-1 Reducer 5 vectorized - File Output Operator [FS_79] - Limit [LIM_78] (rows=100 width=220) + File Output Operator [FS_74] + Limit [LIM_73] (rows=100 width=220) Number of rows:100 - Select Operator [SEL_77] (rows=7333 width=220) + Select Operator [SEL_72] (rows=7333 width=220) Output:["_col0","_col1","_col2"] <-Reducer 4 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_76] - Select Operator [SEL_75] (rows=7333 width=220) + SHUFFLE [RS_71] + Select Operator [SEL_70] (rows=7333 width=220) Output:["_col1","_col2","_col3"] - Group By Operator [GBY_74] (rows=7333 width=216) + Group By Operator [GBY_69] (rows=7333 width=216) Output:["_col0","_col1","_col2"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0, KEY._col1 <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_17] @@ -65,13 +64,13 @@ Stage-0 Group By Operator [GBY_16] (rows=7333 width=216) Output:["_col0","_col1","_col2"],aggregations:["sum(_col2)"],keys:_col7, _col8 Merge Join Operator [MERGEJOIN_54] (rows=2301098 width=104) - Conds:RS_12._col1=RS_65._col0(Inner),Output:["_col2","_col7","_col8"] + Conds:RS_12._col1=RS_68._col0(Inner),Output:["_col2","_col7","_col8"] <-Map 8 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_65] + SHUFFLE [RS_68] PartitionCols:_col0 - Select Operator [SEL_64] (rows=7333 width=111) + Select Operator [SEL_67] (rows=7333 width=111) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_63] (rows=7333 width=111) + Filter Operator [FIL_66] (rows=7333 width=111) predicate:((i_manager_id = 36) and i_item_sk is not null) TableScan [TS_6] (rows=462000 width=111) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_brand_id","i_brand","i_manager_id"] @@ -79,7 +78,7 @@ Stage-0 SHUFFLE [RS_12] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_53] (rows=15062131 width=4) - Conds:RS_73._col0=RS_57._col0(Inner),Output:["_col1","_col2"] + Conds:RS_65._col0=RS_57._col0(Inner),Output:["_col1","_col2"] <-Map 6 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_57] PartitionCols:_col0 @@ -90,12 +89,12 @@ Stage-0 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 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_73] + SHUFFLE [RS_65] PartitionCols:_col0 - Select Operator [SEL_72] (rows=550076554 width=114) + Select Operator [SEL_64] (rows=550076554 width=114) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_71] (rows=550076554 width=114) - predicate:((ss_item_sk BETWEEN DynamicValue(RS_13_item_i_item_sk_min) AND DynamicValue(RS_13_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_13_item_i_item_sk_bloom_filter))) and (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_item_sk is not null and ss_sold_date_sk is not null) + Filter Operator [FIL_63] (rows=550076554 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_item_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_item_sk","ss_ext_sales_price"] <-Reducer 7 [BROADCAST_EDGE] vectorized @@ -109,15 +108,4 @@ Stage-0 Select Operator [SEL_58] (rows=50 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_56] - <-Reducer 9 [BROADCAST_EDGE] vectorized - BROADCAST [RS_70] - Group By Operator [GBY_69] (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_68] - Group By Operator [GBY_67] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_66] (rows=7333 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_64] diff --git a/ql/src/test/results/clientpositive/perf/tez/query56.q.out b/ql/src/test/results/clientpositive/perf/tez/query56.q.out index a6d3090c08..02a4c2cf8d 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query56.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query56.q.out @@ -149,66 +149,60 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 17 <- Reducer 21 (BROADCAST_EDGE), Reducer 29 (BROADCAST_EDGE), Reducer 8 (BROADCAST_EDGE) -Map 32 <- Reducer 11 (BROADCAST_EDGE), Reducer 24 (BROADCAST_EDGE), Reducer 30 (BROADCAST_EDGE) -Map 33 <- Reducer 14 (BROADCAST_EDGE), Reducer 27 (BROADCAST_EDGE), Reducer 31 (BROADCAST_EDGE) -Reducer 10 <- Reducer 9 (SIMPLE_EDGE), Union 5 (CONTAINS) -Reducer 11 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) -Reducer 12 <- Reducer 2 (SIMPLE_EDGE), Reducer 26 (SIMPLE_EDGE) -Reducer 13 <- Reducer 12 (SIMPLE_EDGE), Union 5 (CONTAINS) -Reducer 14 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) -Reducer 16 <- Map 15 (SIMPLE_EDGE) -Reducer 18 <- Map 17 (SIMPLE_EDGE), Map 20 (SIMPLE_EDGE) -Reducer 19 <- Map 28 (SIMPLE_EDGE), Reducer 18 (SIMPLE_EDGE) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 16 (ONE_TO_ONE_EDGE) -Reducer 21 <- Map 20 (CUSTOM_SIMPLE_EDGE) -Reducer 22 <- Map 20 (SIMPLE_EDGE), Map 32 (SIMPLE_EDGE) -Reducer 23 <- Map 28 (SIMPLE_EDGE), Reducer 22 (SIMPLE_EDGE) -Reducer 24 <- Map 20 (CUSTOM_SIMPLE_EDGE) -Reducer 25 <- Map 20 (SIMPLE_EDGE), Map 33 (SIMPLE_EDGE) -Reducer 26 <- Map 28 (SIMPLE_EDGE), Reducer 25 (SIMPLE_EDGE) -Reducer 27 <- Map 20 (CUSTOM_SIMPLE_EDGE) -Reducer 29 <- Map 28 (CUSTOM_SIMPLE_EDGE) -Reducer 3 <- Reducer 19 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 30 <- Map 28 (CUSTOM_SIMPLE_EDGE) -Reducer 31 <- Map 28 (CUSTOM_SIMPLE_EDGE) +Map 14 <- Reducer 18 (BROADCAST_EDGE) +Map 26 <- Reducer 21 (BROADCAST_EDGE) +Map 27 <- Reducer 24 (BROADCAST_EDGE) +Reducer 10 <- Reducer 2 (SIMPLE_EDGE), Reducer 23 (SIMPLE_EDGE) +Reducer 11 <- Reducer 10 (SIMPLE_EDGE), Union 5 (CONTAINS) +Reducer 13 <- Map 12 (SIMPLE_EDGE) +Reducer 15 <- Map 14 (SIMPLE_EDGE), Map 17 (SIMPLE_EDGE) +Reducer 16 <- Map 25 (SIMPLE_EDGE), Reducer 15 (SIMPLE_EDGE) +Reducer 18 <- Map 17 (CUSTOM_SIMPLE_EDGE) +Reducer 19 <- Map 17 (SIMPLE_EDGE), Map 26 (SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 13 (ONE_TO_ONE_EDGE) +Reducer 20 <- Map 25 (SIMPLE_EDGE), Reducer 19 (SIMPLE_EDGE) +Reducer 21 <- Map 17 (CUSTOM_SIMPLE_EDGE) +Reducer 22 <- Map 17 (SIMPLE_EDGE), Map 27 (SIMPLE_EDGE) +Reducer 23 <- Map 25 (SIMPLE_EDGE), Reducer 22 (SIMPLE_EDGE) +Reducer 24 <- Map 17 (CUSTOM_SIMPLE_EDGE) +Reducer 3 <- Reducer 16 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Union 5 (CONTAINS) Reducer 6 <- Union 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) -Reducer 8 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) -Reducer 9 <- Reducer 2 (SIMPLE_EDGE), Reducer 23 (SIMPLE_EDGE) +Reducer 8 <- Reducer 2 (SIMPLE_EDGE), Reducer 20 (SIMPLE_EDGE) +Reducer 9 <- Reducer 8 (SIMPLE_EDGE), Union 5 (CONTAINS) Stage-0 Fetch Operator limit:100 Stage-1 Reducer 7 vectorized - File Output Operator [FS_370] - Limit [LIM_369] (rows=100 width=212) + File Output Operator [FS_357] + Limit [LIM_356] (rows=100 width=212) Number of rows:100 - Select Operator [SEL_368] (rows=430 width=212) + Select Operator [SEL_355] (rows=430 width=212) Output:["_col0","_col1"] <-Reducer 6 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_367] - Group By Operator [GBY_366] (rows=430 width=212) + SHUFFLE [RS_354] + Group By Operator [GBY_353] (rows=430 width=212) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 <-Union 5 [SIMPLE_EDGE] - <-Reducer 10 [CONTAINS] vectorized - Reduce Output Operator [RS_382] + <-Reducer 11 [CONTAINS] vectorized + Reduce Output Operator [RS_373] PartitionCols:_col0 - Group By Operator [GBY_381] (rows=430 width=212) + Group By Operator [GBY_372] (rows=430 width=212) Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0 - Group By Operator [GBY_380] (rows=430 width=212) + Group By Operator [GBY_371] (rows=430 width=212) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Reducer 9 [SIMPLE_EDGE] - SHUFFLE [RS_71] + <-Reducer 10 [SIMPLE_EDGE] + SHUFFLE [RS_109] PartitionCols:_col0 - Group By Operator [GBY_70] (rows=430 width=212) + Group By Operator [GBY_108] (rows=430 width=212) Output:["_col0","_col1"],aggregations:["sum(_col8)"],keys:_col1 - Merge Join Operator [MERGEJOIN_303] (rows=373066 width=100) - Conds:RS_66._col0=RS_67._col4(Inner),Output:["_col1","_col8"] + Merge Join Operator [MERGEJOIN_304] (rows=189670 width=190) + Conds:RS_104._col0=RS_105._col3(Inner),Output:["_col1","_col8"] <-Reducer 2 [SIMPLE_EDGE] - SHUFFLE [RS_66] + SHUFFLE [RS_104] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_293] (rows=17170 width=104) Conds:RS_319._col1=RS_325._col0(Inner),Output:["_col0","_col1"] @@ -221,12 +215,12 @@ Stage-0 predicate:(i_item_id is not null and i_item_sk is not null) TableScan [TS_0] (rows=462000 width=104) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_item_id"] - <-Reducer 16 [ONE_TO_ONE_EDGE] vectorized + <-Reducer 13 [ONE_TO_ONE_EDGE] vectorized FORWARD [RS_325] PartitionCols:_col0 Group By Operator [GBY_324] (rows=11550 width=100) Output:["_col0"],keys:KEY._col0 - <-Map 15 [SIMPLE_EDGE] vectorized + <-Map 12 [SIMPLE_EDGE] vectorized SHUFFLE [RS_323] PartitionCols:_col0 Group By Operator [GBY_322] (rows=11550 width=100) @@ -238,28 +232,28 @@ Stage-0 TableScan [TS_3] (rows=462000 width=189) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_id","i_color"] <-Reducer 23 [SIMPLE_EDGE] - SHUFFLE [RS_67] - PartitionCols:_col4 - Select Operator [SEL_62] (rows=1550375 width=13) - Output:["_col4","_col5"] - Merge Join Operator [MERGEJOIN_298] (rows=1550375 width=13) - Conds:RS_59._col1=RS_346._col0(Inner),Output:["_col2","_col3"] - <-Map 28 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_346] + SHUFFLE [RS_105] + PartitionCols:_col3 + Select Operator [SEL_100] (rows=788222 width=110) + Output:["_col3","_col5"] + Merge Join Operator [MERGEJOIN_301] (rows=788222 width=110) + Conds:RS_97._col2=RS_349._col0(Inner),Output:["_col1","_col3"] + <-Map 25 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_349] PartitionCols:_col0 - Select Operator [SEL_343] (rows=8000000 width=116) + Select Operator [SEL_346] (rows=8000000 width=116) Output:["_col0"] - Filter Operator [FIL_342] (rows=8000000 width=112) + Filter Operator [FIL_345] (rows=8000000 width=112) predicate:((ca_gmt_offset = -8) and ca_address_sk is not null) TableScan [TS_16] (rows=40000000 width=112) default@customer_address,customer_address,Tbl:COMPLETE,Col:COMPLETE,Output:["ca_address_sk","ca_gmt_offset"] <-Reducer 22 [SIMPLE_EDGE] - SHUFFLE [RS_59] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_297] (rows=7751872 width=98) - Conds:RS_379._col0=RS_330._col0(Inner),Output:["_col1","_col2","_col3"] - <-Map 20 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_330] + SHUFFLE [RS_97] + PartitionCols:_col2 + Merge Join Operator [MERGEJOIN_300] (rows=3941109 width=118) + Conds:RS_370._col0=RS_332._col0(Inner),Output:["_col1","_col2","_col3"] + <-Map 17 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_332] PartitionCols:_col0 Select Operator [SEL_327] (rows=50 width=12) Output:["_col0"] @@ -267,134 +261,32 @@ Stage-0 predicate:((d_moy = 1) and (d_year = 2000) and d_date_sk is not null) TableScan [TS_13] (rows=73049 width=12) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] - <-Map 32 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_379] - PartitionCols:_col0 - Select Operator [SEL_378] (rows=285117733 width=123) - Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_377] (rows=285117733 width=123) - predicate:((cs_bill_addr_sk BETWEEN DynamicValue(RS_60_customer_address_ca_address_sk_min) AND DynamicValue(RS_60_customer_address_ca_address_sk_max) and in_bloom_filter(cs_bill_addr_sk, DynamicValue(RS_60_customer_address_ca_address_sk_bloom_filter))) and (cs_item_sk BETWEEN DynamicValue(RS_66_item_i_item_sk_min) AND DynamicValue(RS_66_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_66_item_i_item_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_57_date_dim_d_date_sk_min) AND DynamicValue(RS_57_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_57_date_dim_d_date_sk_bloom_filter))) and cs_bill_addr_sk is not null and cs_item_sk is not null and cs_sold_date_sk is not null) - TableScan [TS_47] (rows=287989836 width=123) - default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_bill_addr_sk","cs_item_sk","cs_ext_sales_price"] - <-Reducer 11 [BROADCAST_EDGE] vectorized - BROADCAST [RS_376] - Group By Operator [GBY_375] (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] - SHUFFLE [RS_240] - Group By Operator [GBY_239] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_238] (rows=17170 width=4) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_293] - <-Reducer 24 [BROADCAST_EDGE] vectorized - BROADCAST [RS_372] - Group By Operator [GBY_371] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 20 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_338] - Group By Operator [GBY_335] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_331] (rows=50 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_327] - <-Reducer 30 [BROADCAST_EDGE] vectorized - BROADCAST [RS_374] - Group By Operator [GBY_373] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=8000000)"] - <-Map 28 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_354] - Group By Operator [GBY_351] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=8000000)"] - Select Operator [SEL_347] (rows=8000000 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_343] - <-Reducer 13 [CONTAINS] vectorized - Reduce Output Operator [RS_394] - PartitionCols:_col0 - Group By Operator [GBY_393] (rows=430 width=212) - Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0 - Group By Operator [GBY_392] (rows=430 width=212) - Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Reducer 12 [SIMPLE_EDGE] - SHUFFLE [RS_109] - PartitionCols:_col0 - Group By Operator [GBY_108] (rows=430 width=212) - Output:["_col0","_col1"],aggregations:["sum(_col8)"],keys:_col1 - Merge Join Operator [MERGEJOIN_304] (rows=189670 width=190) - Conds:RS_104._col0=RS_105._col3(Inner),Output:["_col1","_col8"] - <-Reducer 2 [SIMPLE_EDGE] - SHUFFLE [RS_104] - PartitionCols:_col0 - Please refer to the previous Merge Join Operator [MERGEJOIN_293] - <-Reducer 26 [SIMPLE_EDGE] - SHUFFLE [RS_105] - PartitionCols:_col3 - Select Operator [SEL_100] (rows=788222 width=110) - Output:["_col3","_col5"] - Merge Join Operator [MERGEJOIN_301] (rows=788222 width=110) - Conds:RS_97._col2=RS_348._col0(Inner),Output:["_col1","_col3"] - <-Map 28 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_348] - PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_343] - <-Reducer 25 [SIMPLE_EDGE] - SHUFFLE [RS_97] - PartitionCols:_col2 - Merge Join Operator [MERGEJOIN_300] (rows=3941109 width=118) - Conds:RS_391._col0=RS_332._col0(Inner),Output:["_col1","_col2","_col3"] - <-Map 20 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_332] - PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_327] - <-Map 33 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_391] + <-Map 27 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_370] PartitionCols:_col0 - Select Operator [SEL_390] (rows=143931246 width=123) + Select Operator [SEL_369] (rows=143931246 width=123) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_389] (rows=143931246 width=123) - predicate:((ws_bill_addr_sk BETWEEN DynamicValue(RS_98_customer_address_ca_address_sk_min) AND DynamicValue(RS_98_customer_address_ca_address_sk_max) and in_bloom_filter(ws_bill_addr_sk, DynamicValue(RS_98_customer_address_ca_address_sk_bloom_filter))) and (ws_item_sk BETWEEN DynamicValue(RS_104_item_i_item_sk_min) AND DynamicValue(RS_104_item_i_item_sk_max) and in_bloom_filter(ws_item_sk, DynamicValue(RS_104_item_i_item_sk_bloom_filter))) and (ws_sold_date_sk BETWEEN DynamicValue(RS_95_date_dim_d_date_sk_min) AND DynamicValue(RS_95_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_95_date_dim_d_date_sk_bloom_filter))) and ws_bill_addr_sk is not null and ws_item_sk is not null and ws_sold_date_sk is not null) + Filter Operator [FIL_368] (rows=143931246 width=123) + predicate:((ws_sold_date_sk BETWEEN DynamicValue(RS_95_date_dim_d_date_sk_min) AND DynamicValue(RS_95_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_95_date_dim_d_date_sk_bloom_filter))) and ws_bill_addr_sk is not null and ws_item_sk is not null and ws_sold_date_sk is not null) TableScan [TS_85] (rows=144002668 width=123) default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_item_sk","ws_bill_addr_sk","ws_ext_sales_price"] - <-Reducer 14 [BROADCAST_EDGE] vectorized - BROADCAST [RS_388] - Group By Operator [GBY_387] (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] - SHUFFLE [RS_280] - 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_278] (rows=17170 width=4) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_293] - <-Reducer 27 [BROADCAST_EDGE] vectorized - BROADCAST [RS_384] - Group By Operator [GBY_383] (rows=1 width=12) + <-Reducer 24 [BROADCAST_EDGE] vectorized + BROADCAST [RS_367] + Group By Operator [GBY_366] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 20 [CUSTOM_SIMPLE_EDGE] vectorized + <-Map 17 [CUSTOM_SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_339] Group By Operator [GBY_336] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] Select Operator [SEL_333] (rows=50 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_327] - <-Reducer 31 [BROADCAST_EDGE] vectorized - BROADCAST [RS_386] - Group By Operator [GBY_385] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=8000000)"] - <-Map 28 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_355] - Group By Operator [GBY_352] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=8000000)"] - Select Operator [SEL_349] (rows=8000000 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_343] <-Reducer 4 [CONTAINS] vectorized - Reduce Output Operator [RS_365] + Reduce Output Operator [RS_352] PartitionCols:_col0 - Group By Operator [GBY_364] (rows=430 width=212) + Group By Operator [GBY_351] (rows=430 width=212) Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0 - Group By Operator [GBY_363] (rows=430 width=212) + Group By Operator [GBY_350] (rows=430 width=212) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_34] @@ -407,66 +299,102 @@ Stage-0 SHUFFLE [RS_29] PartitionCols:_col0 Please refer to the previous Merge Join Operator [MERGEJOIN_293] - <-Reducer 19 [SIMPLE_EDGE] + <-Reducer 16 [SIMPLE_EDGE] SHUFFLE [RS_30] PartitionCols:_col3 Select Operator [SEL_25] (rows=2876890 width=4) Output:["_col3","_col5"] Merge Join Operator [MERGEJOIN_295] (rows=2876890 width=4) - Conds:RS_22._col2=RS_344._col0(Inner),Output:["_col1","_col3"] - <-Map 28 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_344] + Conds:RS_22._col2=RS_347._col0(Inner),Output:["_col1","_col3"] + <-Map 25 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_347] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_343] - <-Reducer 18 [SIMPLE_EDGE] + Please refer to the previous Select Operator [SEL_346] + <-Reducer 15 [SIMPLE_EDGE] SHUFFLE [RS_22] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_294] (rows=14384447 width=4) - Conds:RS_362._col0=RS_328._col0(Inner),Output:["_col1","_col2","_col3"] - <-Map 20 [SIMPLE_EDGE] vectorized + Conds:RS_344._col0=RS_328._col0(Inner),Output:["_col1","_col2","_col3"] + <-Map 17 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_328] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_327] - <-Map 17 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_362] + <-Map 14 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_344] PartitionCols:_col0 - Select Operator [SEL_361] (rows=525327191 width=118) + Select Operator [SEL_343] (rows=525327191 width=118) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_360] (rows=525327191 width=118) - predicate:((ss_addr_sk BETWEEN DynamicValue(RS_23_customer_address_ca_address_sk_min) AND DynamicValue(RS_23_customer_address_ca_address_sk_max) and in_bloom_filter(ss_addr_sk, DynamicValue(RS_23_customer_address_ca_address_sk_bloom_filter))) and (ss_item_sk BETWEEN DynamicValue(RS_29_item_i_item_sk_min) AND DynamicValue(RS_29_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_29_item_i_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_20_date_dim_d_date_sk_min) AND DynamicValue(RS_20_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_20_date_dim_d_date_sk_bloom_filter))) and ss_addr_sk is not null and ss_item_sk is not null and ss_sold_date_sk is not null) + Filter Operator [FIL_342] (rows=525327191 width=118) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_20_date_dim_d_date_sk_min) AND DynamicValue(RS_20_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_20_date_dim_d_date_sk_bloom_filter))) and ss_addr_sk is not null and ss_item_sk is not null and ss_sold_date_sk is not null) TableScan [TS_10] (rows=575995635 width=118) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_addr_sk","ss_ext_sales_price"] - <-Reducer 21 [BROADCAST_EDGE] vectorized + <-Reducer 18 [BROADCAST_EDGE] vectorized BROADCAST [RS_341] Group By Operator [GBY_340] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 20 [CUSTOM_SIMPLE_EDGE] vectorized + <-Map 17 [CUSTOM_SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_337] Group By Operator [GBY_334] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] Select Operator [SEL_329] (rows=50 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_327] - <-Reducer 29 [BROADCAST_EDGE] vectorized - BROADCAST [RS_357] - Group By Operator [GBY_356] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=8000000)"] - <-Map 28 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_353] - Group By Operator [GBY_350] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=8000000)"] - Select Operator [SEL_345] (rows=8000000 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_343] - <-Reducer 8 [BROADCAST_EDGE] vectorized + <-Reducer 9 [CONTAINS] vectorized + Reduce Output Operator [RS_365] + PartitionCols:_col0 + Group By Operator [GBY_364] (rows=430 width=212) + Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0 + Group By Operator [GBY_363] (rows=430 width=212) + Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 + <-Reducer 8 [SIMPLE_EDGE] + SHUFFLE [RS_71] + PartitionCols:_col0 + Group By Operator [GBY_70] (rows=430 width=212) + Output:["_col0","_col1"],aggregations:["sum(_col8)"],keys:_col1 + Merge Join Operator [MERGEJOIN_303] (rows=373066 width=100) + Conds:RS_66._col0=RS_67._col4(Inner),Output:["_col1","_col8"] + <-Reducer 2 [SIMPLE_EDGE] + SHUFFLE [RS_66] + PartitionCols:_col0 + Please refer to the previous Merge Join Operator [MERGEJOIN_293] + <-Reducer 20 [SIMPLE_EDGE] + SHUFFLE [RS_67] + PartitionCols:_col4 + Select Operator [SEL_62] (rows=1550375 width=13) + Output:["_col4","_col5"] + Merge Join Operator [MERGEJOIN_298] (rows=1550375 width=13) + Conds:RS_59._col1=RS_348._col0(Inner),Output:["_col2","_col3"] + <-Map 25 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_348] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_346] + <-Reducer 19 [SIMPLE_EDGE] + SHUFFLE [RS_59] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_297] (rows=7751872 width=98) + Conds:RS_362._col0=RS_330._col0(Inner),Output:["_col1","_col2","_col3"] + <-Map 17 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_330] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_327] + <-Map 26 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_362] + PartitionCols:_col0 + Select Operator [SEL_361] (rows=285117733 width=123) + Output:["_col0","_col1","_col2","_col3"] + Filter Operator [FIL_360] (rows=285117733 width=123) + predicate:((cs_sold_date_sk BETWEEN DynamicValue(RS_57_date_dim_d_date_sk_min) AND DynamicValue(RS_57_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_57_date_dim_d_date_sk_bloom_filter))) and cs_bill_addr_sk is not null and cs_item_sk is not null and cs_sold_date_sk is not null) + TableScan [TS_47] (rows=287989836 width=123) + default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_bill_addr_sk","cs_item_sk","cs_ext_sales_price"] + <-Reducer 21 [BROADCAST_EDGE] vectorized BROADCAST [RS_359] Group By Operator [GBY_358] (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] - SHUFFLE [RS_200] - Group By Operator [GBY_199] (rows=1 width=12) + <-Map 17 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_338] + Group By Operator [GBY_335] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_198] (rows=17170 width=4) + Select Operator [SEL_331] (rows=50 width=4) Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_293] + Please refer to the previous Select Operator [SEL_327] diff --git a/ql/src/test/results/clientpositive/perf/tez/query60.q.out b/ql/src/test/results/clientpositive/perf/tez/query60.q.out index f94101a4c7..015cafb42a 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query60.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query60.q.out @@ -169,68 +169,62 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 17 <- Reducer 21 (BROADCAST_EDGE), Reducer 29 (BROADCAST_EDGE), Reducer 8 (BROADCAST_EDGE) -Map 32 <- Reducer 11 (BROADCAST_EDGE), Reducer 24 (BROADCAST_EDGE), Reducer 30 (BROADCAST_EDGE) -Map 33 <- Reducer 14 (BROADCAST_EDGE), Reducer 27 (BROADCAST_EDGE), Reducer 31 (BROADCAST_EDGE) -Reducer 10 <- Reducer 9 (SIMPLE_EDGE), Union 5 (CONTAINS) -Reducer 11 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) -Reducer 12 <- Reducer 2 (SIMPLE_EDGE), Reducer 26 (SIMPLE_EDGE) -Reducer 13 <- Reducer 12 (SIMPLE_EDGE), Union 5 (CONTAINS) -Reducer 14 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) -Reducer 16 <- Map 15 (SIMPLE_EDGE) -Reducer 18 <- Map 17 (SIMPLE_EDGE), Map 20 (SIMPLE_EDGE) -Reducer 19 <- Map 28 (SIMPLE_EDGE), Reducer 18 (SIMPLE_EDGE) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 16 (ONE_TO_ONE_EDGE) -Reducer 21 <- Map 20 (CUSTOM_SIMPLE_EDGE) -Reducer 22 <- Map 20 (SIMPLE_EDGE), Map 32 (SIMPLE_EDGE) -Reducer 23 <- Map 28 (SIMPLE_EDGE), Reducer 22 (SIMPLE_EDGE) -Reducer 24 <- Map 20 (CUSTOM_SIMPLE_EDGE) -Reducer 25 <- Map 20 (SIMPLE_EDGE), Map 33 (SIMPLE_EDGE) -Reducer 26 <- Map 28 (SIMPLE_EDGE), Reducer 25 (SIMPLE_EDGE) -Reducer 27 <- Map 20 (CUSTOM_SIMPLE_EDGE) -Reducer 29 <- Map 28 (CUSTOM_SIMPLE_EDGE) -Reducer 3 <- Reducer 19 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 30 <- Map 28 (CUSTOM_SIMPLE_EDGE) -Reducer 31 <- Map 28 (CUSTOM_SIMPLE_EDGE) +Map 14 <- Reducer 18 (BROADCAST_EDGE) +Map 26 <- Reducer 21 (BROADCAST_EDGE) +Map 27 <- Reducer 24 (BROADCAST_EDGE) +Reducer 10 <- Reducer 2 (SIMPLE_EDGE), Reducer 23 (SIMPLE_EDGE) +Reducer 11 <- Reducer 10 (SIMPLE_EDGE), Union 5 (CONTAINS) +Reducer 13 <- Map 12 (SIMPLE_EDGE) +Reducer 15 <- Map 14 (SIMPLE_EDGE), Map 17 (SIMPLE_EDGE) +Reducer 16 <- Map 25 (SIMPLE_EDGE), Reducer 15 (SIMPLE_EDGE) +Reducer 18 <- Map 17 (CUSTOM_SIMPLE_EDGE) +Reducer 19 <- Map 17 (SIMPLE_EDGE), Map 26 (SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 13 (ONE_TO_ONE_EDGE) +Reducer 20 <- Map 25 (SIMPLE_EDGE), Reducer 19 (SIMPLE_EDGE) +Reducer 21 <- Map 17 (CUSTOM_SIMPLE_EDGE) +Reducer 22 <- Map 17 (SIMPLE_EDGE), Map 27 (SIMPLE_EDGE) +Reducer 23 <- Map 25 (SIMPLE_EDGE), Reducer 22 (SIMPLE_EDGE) +Reducer 24 <- Map 17 (CUSTOM_SIMPLE_EDGE) +Reducer 3 <- Reducer 16 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Union 5 (CONTAINS) Reducer 6 <- Union 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) -Reducer 8 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) -Reducer 9 <- Reducer 2 (SIMPLE_EDGE), Reducer 23 (SIMPLE_EDGE) +Reducer 8 <- Reducer 2 (SIMPLE_EDGE), Reducer 20 (SIMPLE_EDGE) +Reducer 9 <- Reducer 8 (SIMPLE_EDGE), Union 5 (CONTAINS) Stage-0 Fetch Operator limit:100 Stage-1 Reducer 7 vectorized - File Output Operator [FS_375] - Limit [LIM_374] (rows=100 width=212) + File Output Operator [FS_362] + Limit [LIM_361] (rows=100 width=212) Number of rows:100 - Select Operator [SEL_373] (rows=1717 width=212) + Select Operator [SEL_360] (rows=1717 width=212) Output:["_col0","_col1"] <-Reducer 6 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_372] - Group By Operator [GBY_371] (rows=1717 width=212) + SHUFFLE [RS_359] + Group By Operator [GBY_358] (rows=1717 width=212) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 <-Union 5 [SIMPLE_EDGE] - <-Reducer 10 [CONTAINS] vectorized - Reduce Output Operator [RS_388] + <-Reducer 11 [CONTAINS] vectorized + Reduce Output Operator [RS_380] PartitionCols:_col0 - Group By Operator [GBY_387] (rows=1717 width=212) + Group By Operator [GBY_379] (rows=1717 width=212) Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0 - Top N Key Operator [TNK_386] (rows=5151 width=212) + Top N Key Operator [TNK_378] (rows=5151 width=212) keys:_col0,sort order:+,top n:100 - Group By Operator [GBY_385] (rows=1717 width=212) + Group By Operator [GBY_377] (rows=1717 width=212) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Reducer 9 [SIMPLE_EDGE] - SHUFFLE [RS_71] + <-Reducer 10 [SIMPLE_EDGE] + SHUFFLE [RS_109] PartitionCols:_col0 - Group By Operator [GBY_70] (rows=1717 width=212) + Group By Operator [GBY_108] (rows=1717 width=212) Output:["_col0","_col1"],aggregations:["sum(_col8)"],keys:_col1 - Merge Join Operator [MERGEJOIN_304] (rows=746132 width=100) - Conds:RS_66._col0=RS_67._col4(Inner),Output:["_col1","_col8"] + Merge Join Operator [MERGEJOIN_305] (rows=379339 width=201) + Conds:RS_104._col0=RS_105._col3(Inner),Output:["_col1","_col8"] <-Reducer 2 [SIMPLE_EDGE] - SHUFFLE [RS_66] + SHUFFLE [RS_104] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_294] (rows=34340 width=104) Conds:RS_323._col1=RS_329._col0(Inner),Output:["_col0","_col1"] @@ -243,12 +237,12 @@ Stage-0 predicate:(i_item_id is not null and i_item_sk is not null) TableScan [TS_0] (rows=462000 width=104) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_item_id"] - <-Reducer 16 [ONE_TO_ONE_EDGE] vectorized + <-Reducer 13 [ONE_TO_ONE_EDGE] vectorized FORWARD [RS_329] PartitionCols:_col0 Group By Operator [GBY_328] (rows=23100 width=100) Output:["_col0"],keys:KEY._col0 - <-Map 15 [SIMPLE_EDGE] vectorized + <-Map 12 [SIMPLE_EDGE] vectorized SHUFFLE [RS_327] PartitionCols:_col0 Group By Operator [GBY_326] (rows=23100 width=100) @@ -260,28 +254,28 @@ Stage-0 TableScan [TS_3] (rows=462000 width=190) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_id","i_category"] <-Reducer 23 [SIMPLE_EDGE] - SHUFFLE [RS_67] - PartitionCols:_col4 - Select Operator [SEL_62] (rows=1550375 width=13) - Output:["_col4","_col5"] - Merge Join Operator [MERGEJOIN_299] (rows=1550375 width=13) - Conds:RS_59._col1=RS_350._col0(Inner),Output:["_col2","_col3"] - <-Map 28 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_350] + SHUFFLE [RS_105] + PartitionCols:_col3 + Select Operator [SEL_100] (rows=788222 width=110) + Output:["_col3","_col5"] + Merge Join Operator [MERGEJOIN_302] (rows=788222 width=110) + Conds:RS_97._col2=RS_353._col0(Inner),Output:["_col1","_col3"] + <-Map 25 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_353] PartitionCols:_col0 - Select Operator [SEL_347] (rows=8000000 width=116) + Select Operator [SEL_350] (rows=8000000 width=116) Output:["_col0"] - Filter Operator [FIL_346] (rows=8000000 width=112) + Filter Operator [FIL_349] (rows=8000000 width=112) predicate:((ca_gmt_offset = -6) and ca_address_sk is not null) TableScan [TS_16] (rows=40000000 width=112) default@customer_address,customer_address,Tbl:COMPLETE,Col:COMPLETE,Output:["ca_address_sk","ca_gmt_offset"] <-Reducer 22 [SIMPLE_EDGE] - SHUFFLE [RS_59] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_298] (rows=7751872 width=98) - Conds:RS_384._col0=RS_334._col0(Inner),Output:["_col1","_col2","_col3"] - <-Map 20 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_334] + SHUFFLE [RS_97] + PartitionCols:_col2 + Merge Join Operator [MERGEJOIN_301] (rows=3941109 width=118) + Conds:RS_376._col0=RS_336._col0(Inner),Output:["_col1","_col2","_col3"] + <-Map 17 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_336] PartitionCols:_col0 Select Operator [SEL_331] (rows=50 width=12) Output:["_col0"] @@ -289,138 +283,34 @@ Stage-0 predicate:((d_moy = 9) and (d_year = 1999) and d_date_sk is not null) TableScan [TS_13] (rows=73049 width=12) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] - <-Map 32 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_384] - PartitionCols:_col0 - Select Operator [SEL_383] (rows=285117733 width=123) - Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_382] (rows=285117733 width=123) - predicate:((cs_bill_addr_sk BETWEEN DynamicValue(RS_60_customer_address_ca_address_sk_min) AND DynamicValue(RS_60_customer_address_ca_address_sk_max) and in_bloom_filter(cs_bill_addr_sk, DynamicValue(RS_60_customer_address_ca_address_sk_bloom_filter))) and (cs_item_sk BETWEEN DynamicValue(RS_66_item_i_item_sk_min) AND DynamicValue(RS_66_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_66_item_i_item_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_57_date_dim_d_date_sk_min) AND DynamicValue(RS_57_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_57_date_dim_d_date_sk_bloom_filter))) and cs_bill_addr_sk is not null and cs_item_sk is not null and cs_sold_date_sk is not null) - TableScan [TS_47] (rows=287989836 width=123) - default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_bill_addr_sk","cs_item_sk","cs_ext_sales_price"] - <-Reducer 11 [BROADCAST_EDGE] vectorized - BROADCAST [RS_381] - Group By Operator [GBY_380] (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] - SHUFFLE [RS_241] - Group By Operator [GBY_240] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_239] (rows=34340 width=4) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_294] - <-Reducer 24 [BROADCAST_EDGE] vectorized - BROADCAST [RS_377] - Group By Operator [GBY_376] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 20 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_342] - Group By Operator [GBY_339] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_335] (rows=50 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_331] - <-Reducer 30 [BROADCAST_EDGE] vectorized - BROADCAST [RS_379] - Group By Operator [GBY_378] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=8000000)"] - <-Map 28 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_358] - Group By Operator [GBY_355] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=8000000)"] - Select Operator [SEL_351] (rows=8000000 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_347] - <-Reducer 13 [CONTAINS] vectorized - Reduce Output Operator [RS_401] - PartitionCols:_col0 - Group By Operator [GBY_400] (rows=1717 width=212) - Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0 - Top N Key Operator [TNK_399] (rows=5151 width=212) - keys:_col0,sort order:+,top n:100 - Group By Operator [GBY_398] (rows=1717 width=212) - Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Reducer 12 [SIMPLE_EDGE] - SHUFFLE [RS_109] - PartitionCols:_col0 - Group By Operator [GBY_108] (rows=1717 width=212) - Output:["_col0","_col1"],aggregations:["sum(_col8)"],keys:_col1 - Merge Join Operator [MERGEJOIN_305] (rows=379339 width=201) - Conds:RS_104._col0=RS_105._col3(Inner),Output:["_col1","_col8"] - <-Reducer 2 [SIMPLE_EDGE] - SHUFFLE [RS_104] - PartitionCols:_col0 - Please refer to the previous Merge Join Operator [MERGEJOIN_294] - <-Reducer 26 [SIMPLE_EDGE] - SHUFFLE [RS_105] - PartitionCols:_col3 - Select Operator [SEL_100] (rows=788222 width=110) - Output:["_col3","_col5"] - Merge Join Operator [MERGEJOIN_302] (rows=788222 width=110) - Conds:RS_97._col2=RS_352._col0(Inner),Output:["_col1","_col3"] - <-Map 28 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_352] - PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_347] - <-Reducer 25 [SIMPLE_EDGE] - SHUFFLE [RS_97] - PartitionCols:_col2 - Merge Join Operator [MERGEJOIN_301] (rows=3941109 width=118) - Conds:RS_397._col0=RS_336._col0(Inner),Output:["_col1","_col2","_col3"] - <-Map 20 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_336] + <-Map 27 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_376] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_331] - <-Map 33 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_397] - PartitionCols:_col0 - Select Operator [SEL_396] (rows=143931246 width=123) + Select Operator [SEL_375] (rows=143931246 width=123) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_395] (rows=143931246 width=123) - predicate:((ws_bill_addr_sk BETWEEN DynamicValue(RS_98_customer_address_ca_address_sk_min) AND DynamicValue(RS_98_customer_address_ca_address_sk_max) and in_bloom_filter(ws_bill_addr_sk, DynamicValue(RS_98_customer_address_ca_address_sk_bloom_filter))) and (ws_item_sk BETWEEN DynamicValue(RS_104_item_i_item_sk_min) AND DynamicValue(RS_104_item_i_item_sk_max) and in_bloom_filter(ws_item_sk, DynamicValue(RS_104_item_i_item_sk_bloom_filter))) and (ws_sold_date_sk BETWEEN DynamicValue(RS_95_date_dim_d_date_sk_min) AND DynamicValue(RS_95_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_95_date_dim_d_date_sk_bloom_filter))) and ws_bill_addr_sk is not null and ws_item_sk is not null and ws_sold_date_sk is not null) + Filter Operator [FIL_374] (rows=143931246 width=123) + predicate:((ws_sold_date_sk BETWEEN DynamicValue(RS_95_date_dim_d_date_sk_min) AND DynamicValue(RS_95_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_95_date_dim_d_date_sk_bloom_filter))) and ws_bill_addr_sk is not null and ws_item_sk is not null and ws_sold_date_sk is not null) TableScan [TS_85] (rows=144002668 width=123) default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_item_sk","ws_bill_addr_sk","ws_ext_sales_price"] - <-Reducer 14 [BROADCAST_EDGE] vectorized - BROADCAST [RS_394] - Group By Operator [GBY_393] (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] - SHUFFLE [RS_281] - 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_279] (rows=34340 width=4) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_294] - <-Reducer 27 [BROADCAST_EDGE] vectorized - BROADCAST [RS_390] - Group By Operator [GBY_389] (rows=1 width=12) + <-Reducer 24 [BROADCAST_EDGE] vectorized + BROADCAST [RS_373] + Group By Operator [GBY_372] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 20 [CUSTOM_SIMPLE_EDGE] vectorized + <-Map 17 [CUSTOM_SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_343] 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_337] (rows=50 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_331] - <-Reducer 31 [BROADCAST_EDGE] vectorized - BROADCAST [RS_392] - Group By Operator [GBY_391] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=8000000)"] - <-Map 28 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_359] - Group By Operator [GBY_356] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=8000000)"] - Select Operator [SEL_353] (rows=8000000 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_347] <-Reducer 4 [CONTAINS] vectorized - Reduce Output Operator [RS_370] + Reduce Output Operator [RS_357] PartitionCols:_col0 - Group By Operator [GBY_369] (rows=1717 width=212) + Group By Operator [GBY_356] (rows=1717 width=212) Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0 - Top N Key Operator [TNK_368] (rows=5151 width=212) + Top N Key Operator [TNK_355] (rows=5151 width=212) keys:_col0,sort order:+,top n:100 - Group By Operator [GBY_367] (rows=1717 width=212) + Group By Operator [GBY_354] (rows=1717 width=212) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_34] @@ -433,66 +323,104 @@ Stage-0 SHUFFLE [RS_29] PartitionCols:_col0 Please refer to the previous Merge Join Operator [MERGEJOIN_294] - <-Reducer 19 [SIMPLE_EDGE] + <-Reducer 16 [SIMPLE_EDGE] SHUFFLE [RS_30] PartitionCols:_col3 Select Operator [SEL_25] (rows=2876890 width=4) Output:["_col3","_col5"] Merge Join Operator [MERGEJOIN_296] (rows=2876890 width=4) - Conds:RS_22._col2=RS_348._col0(Inner),Output:["_col1","_col3"] - <-Map 28 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_348] + Conds:RS_22._col2=RS_351._col0(Inner),Output:["_col1","_col3"] + <-Map 25 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_351] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_347] - <-Reducer 18 [SIMPLE_EDGE] + Please refer to the previous Select Operator [SEL_350] + <-Reducer 15 [SIMPLE_EDGE] SHUFFLE [RS_22] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_295] (rows=14384447 width=4) - Conds:RS_366._col0=RS_332._col0(Inner),Output:["_col1","_col2","_col3"] - <-Map 20 [SIMPLE_EDGE] vectorized + Conds:RS_348._col0=RS_332._col0(Inner),Output:["_col1","_col2","_col3"] + <-Map 17 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_332] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_331] - <-Map 17 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_366] + <-Map 14 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_348] PartitionCols:_col0 - Select Operator [SEL_365] (rows=525327191 width=118) + Select Operator [SEL_347] (rows=525327191 width=118) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_364] (rows=525327191 width=118) - predicate:((ss_addr_sk BETWEEN DynamicValue(RS_23_customer_address_ca_address_sk_min) AND DynamicValue(RS_23_customer_address_ca_address_sk_max) and in_bloom_filter(ss_addr_sk, DynamicValue(RS_23_customer_address_ca_address_sk_bloom_filter))) and (ss_item_sk BETWEEN DynamicValue(RS_29_item_i_item_sk_min) AND DynamicValue(RS_29_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_29_item_i_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_20_date_dim_d_date_sk_min) AND DynamicValue(RS_20_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_20_date_dim_d_date_sk_bloom_filter))) and ss_addr_sk is not null and ss_item_sk is not null and ss_sold_date_sk is not null) + Filter Operator [FIL_346] (rows=525327191 width=118) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_20_date_dim_d_date_sk_min) AND DynamicValue(RS_20_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_20_date_dim_d_date_sk_bloom_filter))) and ss_addr_sk is not null and ss_item_sk is not null and ss_sold_date_sk is not null) TableScan [TS_10] (rows=575995635 width=118) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_addr_sk","ss_ext_sales_price"] - <-Reducer 21 [BROADCAST_EDGE] vectorized + <-Reducer 18 [BROADCAST_EDGE] vectorized BROADCAST [RS_345] Group By Operator [GBY_344] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 20 [CUSTOM_SIMPLE_EDGE] vectorized + <-Map 17 [CUSTOM_SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_341] Group By Operator [GBY_338] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] Select Operator [SEL_333] (rows=50 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_331] - <-Reducer 29 [BROADCAST_EDGE] vectorized - BROADCAST [RS_361] - Group By Operator [GBY_360] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=8000000)"] - <-Map 28 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_357] - Group By Operator [GBY_354] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=8000000)"] - Select Operator [SEL_349] (rows=8000000 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_347] - <-Reducer 8 [BROADCAST_EDGE] vectorized - BROADCAST [RS_363] - Group By Operator [GBY_362] (rows=1 width=12) + <-Reducer 9 [CONTAINS] vectorized + Reduce Output Operator [RS_371] + PartitionCols:_col0 + Group By Operator [GBY_370] (rows=1717 width=212) + Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0 + Top N Key Operator [TNK_369] (rows=5151 width=212) + keys:_col0,sort order:+,top n:100 + Group By Operator [GBY_368] (rows=1717 width=212) + Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 + <-Reducer 8 [SIMPLE_EDGE] + SHUFFLE [RS_71] + PartitionCols:_col0 + Group By Operator [GBY_70] (rows=1717 width=212) + Output:["_col0","_col1"],aggregations:["sum(_col8)"],keys:_col1 + Merge Join Operator [MERGEJOIN_304] (rows=746132 width=100) + Conds:RS_66._col0=RS_67._col4(Inner),Output:["_col1","_col8"] + <-Reducer 2 [SIMPLE_EDGE] + SHUFFLE [RS_66] + PartitionCols:_col0 + Please refer to the previous Merge Join Operator [MERGEJOIN_294] + <-Reducer 20 [SIMPLE_EDGE] + SHUFFLE [RS_67] + PartitionCols:_col4 + Select Operator [SEL_62] (rows=1550375 width=13) + Output:["_col4","_col5"] + Merge Join Operator [MERGEJOIN_299] (rows=1550375 width=13) + Conds:RS_59._col1=RS_352._col0(Inner),Output:["_col2","_col3"] + <-Map 25 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_352] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_350] + <-Reducer 19 [SIMPLE_EDGE] + SHUFFLE [RS_59] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_298] (rows=7751872 width=98) + Conds:RS_367._col0=RS_334._col0(Inner),Output:["_col1","_col2","_col3"] + <-Map 17 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_334] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_331] + <-Map 26 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_367] + PartitionCols:_col0 + Select Operator [SEL_366] (rows=285117733 width=123) + Output:["_col0","_col1","_col2","_col3"] + Filter Operator [FIL_365] (rows=285117733 width=123) + predicate:((cs_sold_date_sk BETWEEN DynamicValue(RS_57_date_dim_d_date_sk_min) AND DynamicValue(RS_57_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_57_date_dim_d_date_sk_bloom_filter))) and cs_bill_addr_sk is not null and cs_item_sk is not null and cs_sold_date_sk is not null) + TableScan [TS_47] (rows=287989836 width=123) + default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_bill_addr_sk","cs_item_sk","cs_ext_sales_price"] + <-Reducer 21 [BROADCAST_EDGE] vectorized + BROADCAST [RS_364] + Group By Operator [GBY_363] (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] - SHUFFLE [RS_201] - Group By Operator [GBY_200] (rows=1 width=12) + <-Map 17 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_342] + Group By Operator [GBY_339] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_199] (rows=34340 width=4) + Select Operator [SEL_335] (rows=50 width=4) Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_294] + Please refer to the previous Select Operator [SEL_331] diff --git a/ql/src/test/results/clientpositive/perf/tez/query61.q.out b/ql/src/test/results/clientpositive/perf/tez/query61.q.out index dc18d84d46..1a01008e8d 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query61.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query61.q.out @@ -104,40 +104,34 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 12 <- Reducer 18 (BROADCAST_EDGE), Reducer 24 (BROADCAST_EDGE), Reducer 27 (BROADCAST_EDGE), Reducer 7 (BROADCAST_EDGE) -Map 30 <- Reducer 10 (BROADCAST_EDGE), Reducer 22 (BROADCAST_EDGE), Reducer 25 (BROADCAST_EDGE), Reducer 28 (BROADCAST_EDGE) -Reducer 10 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) -Reducer 13 <- Map 12 (SIMPLE_EDGE), Map 17 (SIMPLE_EDGE) +Map 10 <- Reducer 16 (BROADCAST_EDGE) +Map 24 <- Reducer 20 (BROADCAST_EDGE) +Reducer 11 <- Map 10 (SIMPLE_EDGE), Map 15 (SIMPLE_EDGE) +Reducer 12 <- Map 21 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE) +Reducer 13 <- Map 22 (SIMPLE_EDGE), Reducer 12 (SIMPLE_EDGE) Reducer 14 <- Map 23 (SIMPLE_EDGE), Reducer 13 (SIMPLE_EDGE) -Reducer 15 <- Map 26 (SIMPLE_EDGE), Reducer 14 (SIMPLE_EDGE) -Reducer 16 <- Map 29 (SIMPLE_EDGE), Reducer 15 (SIMPLE_EDGE) -Reducer 18 <- Map 17 (CUSTOM_SIMPLE_EDGE) -Reducer 19 <- Map 17 (SIMPLE_EDGE), Map 30 (SIMPLE_EDGE) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 11 (SIMPLE_EDGE) -Reducer 20 <- Map 23 (SIMPLE_EDGE), Reducer 19 (SIMPLE_EDGE) -Reducer 21 <- Map 26 (SIMPLE_EDGE), Reducer 20 (SIMPLE_EDGE) -Reducer 22 <- Map 17 (CUSTOM_SIMPLE_EDGE) -Reducer 24 <- Map 23 (CUSTOM_SIMPLE_EDGE) -Reducer 25 <- Map 23 (CUSTOM_SIMPLE_EDGE) -Reducer 27 <- Map 26 (CUSTOM_SIMPLE_EDGE) -Reducer 28 <- Map 26 (CUSTOM_SIMPLE_EDGE) -Reducer 3 <- Reducer 16 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 16 <- Map 15 (CUSTOM_SIMPLE_EDGE) +Reducer 17 <- Map 15 (SIMPLE_EDGE), Map 24 (SIMPLE_EDGE) +Reducer 18 <- Map 21 (SIMPLE_EDGE), Reducer 17 (SIMPLE_EDGE) +Reducer 19 <- Map 22 (SIMPLE_EDGE), Reducer 18 (SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 9 (SIMPLE_EDGE) +Reducer 20 <- Map 15 (CUSTOM_SIMPLE_EDGE) +Reducer 3 <- Reducer 14 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (CUSTOM_SIMPLE_EDGE) -Reducer 5 <- Reducer 4 (CUSTOM_SIMPLE_EDGE), Reducer 9 (CUSTOM_SIMPLE_EDGE) +Reducer 5 <- Reducer 4 (CUSTOM_SIMPLE_EDGE), Reducer 8 (CUSTOM_SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) -Reducer 7 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) -Reducer 8 <- Reducer 2 (SIMPLE_EDGE), Reducer 21 (SIMPLE_EDGE) -Reducer 9 <- Reducer 8 (CUSTOM_SIMPLE_EDGE) +Reducer 7 <- Reducer 19 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 8 <- Reducer 7 (CUSTOM_SIMPLE_EDGE) Stage-0 Fetch Operator limit:100 Stage-1 Reducer 6 vectorized - File Output Operator [FS_334] - Limit [LIM_333] (rows=1 width=336) + File Output Operator [FS_310] + Limit [LIM_309] (rows=1 width=336) Number of rows:100 - Select Operator [SEL_332] (rows=1 width=336) + Select Operator [SEL_308] (rows=1 width=336) Output:["_col0","_col1","_col2"] <-Reducer 5 [SIMPLE_EDGE] SHUFFLE [RS_88] @@ -146,8 +140,8 @@ Stage-0 Merge Join Operator [MERGEJOIN_266] (rows=1 width=224) Conds:(Inner),Output:["_col0","_col1"] <-Reducer 4 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_318] - Group By Operator [GBY_317] (rows=1 width=112) + PARTITION_ONLY_SHUFFLE [RS_300] + Group By Operator [GBY_299] (rows=1 width=112) Output:["_col0"],aggregations:["sum(VALUE._col0)"] <-Reducer 3 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_42] @@ -169,7 +163,7 @@ Stage-0 predicate:(c_current_addr_sk is not null and c_customer_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 + <-Map 9 [SIMPLE_EDGE] vectorized SHUFFLE [RS_272] PartitionCols:_col0 Select Operator [SEL_271] (rows=8000000 width=116) @@ -178,54 +172,54 @@ Stage-0 predicate:((ca_gmt_offset = -7) and ca_address_sk is not null) 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] + <-Reducer 14 [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] + Conds:RS_30._col4=RS_298._col0(Inner),Output:["_col2","_col5"] + <-Map 23 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_298] PartitionCols:_col0 - Select Operator [SEL_315] (rows=2300 width=259) + Select Operator [SEL_297] (rows=2300 width=259) Output:["_col0"] - Filter Operator [FIL_314] (rows=2300 width=259) + Filter Operator [FIL_296] (rows=2300 width=259) predicate:(((p_channel_dmail = 'Y') or (p_channel_email = 'Y') or (p_channel_tv = 'Y')) and p_promo_sk is not null) 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] + <-Reducer 13 [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] + Conds:RS_27._col3=RS_294._col0(Inner),Output:["_col2","_col4","_col5"] + <-Map 22 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_294] PartitionCols:_col0 - Select Operator [SEL_298] (rows=341 width=116) + Select Operator [SEL_293] (rows=341 width=116) Output:["_col0"] - Filter Operator [FIL_297] (rows=341 width=115) + Filter Operator [FIL_292] (rows=341 width=115) predicate:((s_gmt_offset = -7) and s_store_sk is not null) 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] + <-Reducer 12 [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] + Conds:RS_24._col1=RS_290._col0(Inner),Output:["_col2","_col3","_col4","_col5"] + <-Map 21 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_290] PartitionCols:_col0 - Select Operator [SEL_286] (rows=46200 width=99) + Select Operator [SEL_289] (rows=46200 width=99) Output:["_col0"] - Filter Operator [FIL_285] (rows=46200 width=94) + Filter Operator [FIL_288] (rows=46200 width=94) predicate:((i_category = 'Electronics') and i_item_sk is not null) TableScan [TS_12] (rows=462000 width=94) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_category"] - <-Reducer 13 [SIMPLE_EDGE] + <-Reducer 11 [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 + Conds:RS_287._col0=RS_275._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5"] + <-Map 15 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_275] PartitionCols:_col0 Select Operator [SEL_274] (rows=50 width=12) @@ -234,64 +228,31 @@ Stage-0 predicate:((d_moy = 11) and (d_year = 1999) and d_date_sk is not null) 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] + <-Map 10 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_287] PartitionCols:_col0 - Select Operator [SEL_312] (rows=479120970 width=126) + Select Operator [SEL_286] (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_item_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) + Filter Operator [FIL_285] (rows=479120970 width=126) + predicate:((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_customer_sk is not null and ss_item_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 + <-Reducer 16 [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 + <-Map 15 [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_331] - Group By Operator [GBY_330] (rows=1 width=112) + <-Reducer 8 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_307] + Group By Operator [GBY_306] (rows=1 width=112) Output:["_col0"],aggregations:["sum(VALUE._col0)"] - <-Reducer 8 [CUSTOM_SIMPLE_EDGE] + <-Reducer 7 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_81] Group By Operator [GBY_80] (rows=1 width=112) Output:["_col0"],aggregations:["sum(_col8)"] @@ -301,84 +262,51 @@ Stage-0 SHUFFLE [RS_76] PartitionCols:_col0 Please refer to the previous Merge Join Operator [MERGEJOIN_255] - <-Reducer 21 [SIMPLE_EDGE] + <-Reducer 19 [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] + Conds:RS_69._col3=RS_295._col0(Inner),Output:["_col2","_col4"] + <-Map 22 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_295] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_298] - <-Reducer 20 [SIMPLE_EDGE] + Please refer to the previous Select Operator [SEL_293] + <-Reducer 18 [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] + Conds:RS_66._col1=RS_291._col0(Inner),Output:["_col2","_col3","_col4"] + <-Map 21 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_291] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_286] - <-Reducer 19 [SIMPLE_EDGE] + Please refer to the previous Select Operator [SEL_289] + <-Reducer 17 [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 + Conds:RS_305._col0=RS_277._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + <-Map 15 [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] + <-Map 24 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_305] PartitionCols:_col0 - Select Operator [SEL_328] (rows=501694138 width=122) + Select Operator [SEL_304] (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_item_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_303] (rows=501694138 width=122) + predicate:((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_customer_sk is not null and ss_item_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) + <-Reducer 20 [BROADCAST_EDGE] vectorized + BROADCAST [RS_302] + Group By Operator [GBY_301] (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 + <-Map 15 [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/query63.q.out b/ql/src/test/results/clientpositive/perf/tez/query63.q.out index 6a6ffb7e3d..d92421c5f7 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query63.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query63.q.out @@ -67,11 +67,10 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 10 (BROADCAST_EDGE), Reducer 8 (BROADCAST_EDGE) -Reducer 10 <- Map 9 (CUSTOM_SIMPLE_EDGE) +Map 1 <- Reducer 8 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) Reducer 3 <- Map 9 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 11 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 4 <- Map 10 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) Reducer 8 <- Map 7 (CUSTOM_SIMPLE_EDGE) @@ -81,10 +80,10 @@ Stage-0 limit:100 Stage-1 Reducer 6 vectorized - File Output Operator [FS_111] - Limit [LIM_110] (rows=71 width=228) + File Output Operator [FS_106] + Limit [LIM_105] (rows=71 width=228) Number of rows:100 - Select Operator [SEL_109] (rows=71 width=228) + Select Operator [SEL_104] (rows=71 width=228) Output:["_col0","_col1","_col2"] <-Reducer 5 [SIMPLE_EDGE] SHUFFLE [RS_33] @@ -106,13 +105,13 @@ Stage-0 Group By Operator [GBY_22] (rows=143 width=120) Output:["_col0","_col1","_col2"],aggregations:["sum(_col3)"],keys:_col8, _col11 Merge Join Operator [MERGEJOIN_84] (rows=129200 width=8) - Conds:RS_18._col2=RS_106._col0(Inner),Output:["_col3","_col8","_col11"] - <-Map 11 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_106] + Conds:RS_18._col2=RS_101._col0(Inner),Output:["_col3","_col8","_col11"] + <-Map 10 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_101] PartitionCols:_col0 - Select Operator [SEL_105] (rows=1704 width=4) + Select Operator [SEL_100] (rows=1704 width=4) Output:["_col0"] - Filter Operator [FIL_104] (rows=1704 width=4) + Filter Operator [FIL_99] (rows=1704 width=4) predicate:s_store_sk is not null TableScan [TS_9] (rows=1704 width=4) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk"] @@ -120,13 +119,13 @@ Stage-0 SHUFFLE [RS_18] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_83] (rows=129200 width=8) - Conds:RS_15._col0=RS_95._col0(Inner),Output:["_col2","_col3","_col8","_col11"] + Conds:RS_15._col0=RS_98._col0(Inner),Output:["_col2","_col3","_col8","_col11"] <-Map 9 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_95] + SHUFFLE [RS_98] PartitionCols:_col0 - Select Operator [SEL_94] (rows=317 width=12) + Select Operator [SEL_97] (rows=317 width=12) Output:["_col0","_col2"] - Filter Operator [FIL_93] (rows=317 width=12) + Filter Operator [FIL_96] (rows=317 width=12) predicate:((d_month_seq) IN (1212, 1213, 1214, 1215, 1216, 1217, 1218, 1219, 1220, 1221, 1222, 1223) and d_date_sk is not null) TableScan [TS_6] (rows=73049 width=12) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_month_seq","d_moy"] @@ -134,7 +133,7 @@ Stage-0 SHUFFLE [RS_15] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_82] (rows=744232 width=4) - Conds:RS_103._col1=RS_87._col0(Inner),Output:["_col0","_col2","_col3","_col8"] + Conds:RS_95._col1=RS_87._col0(Inner),Output:["_col0","_col2","_col3","_col8"] <-Map 7 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_87] PartitionCols:_col0 @@ -145,25 +144,14 @@ Stage-0 TableScan [TS_3] (rows=462000 width=289) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_brand","i_class","i_category","i_manager_id"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_103] + SHUFFLE [RS_95] PartitionCols:_col1 - Select Operator [SEL_102] (rows=525329897 width=118) + Select Operator [SEL_94] (rows=525329897 width=118) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_101] (rows=525329897 width=118) - predicate:((ss_item_sk BETWEEN DynamicValue(RS_13_item_i_item_sk_min) AND DynamicValue(RS_13_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_13_item_i_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_16_date_dim_d_date_sk_min) AND DynamicValue(RS_16_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_16_date_dim_d_date_sk_bloom_filter))) and ss_item_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_93] (rows=525329897 width=118) + predicate:((ss_item_sk BETWEEN DynamicValue(RS_13_item_i_item_sk_min) AND DynamicValue(RS_13_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_13_item_i_item_sk_bloom_filter))) and ss_item_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) TableScan [TS_0] (rows=575995635 width=118) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_store_sk","ss_sales_price"] - <-Reducer 10 [BROADCAST_EDGE] vectorized - BROADCAST [RS_100] - Group By Operator [GBY_99] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 9 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_98] - Group By Operator [GBY_97] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_96] (rows=317 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_94] <-Reducer 8 [BROADCAST_EDGE] vectorized BROADCAST [RS_92] Group By Operator [GBY_91] (rows=1 width=12) diff --git a/ql/src/test/results/clientpositive/perf/tez/query64.q.out b/ql/src/test/results/clientpositive/perf/tez/query64.q.out index f670c4f4e2..19c25cf362 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query64.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query64.q.out @@ -265,50 +265,43 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 37 <- Reducer 24 (BROADCAST_EDGE), Reducer 40 (BROADCAST_EDGE), Reducer 47 (BROADCAST_EDGE) -Map 44 <- Reducer 40 (BROADCAST_EDGE) -Map 55 <- Reducer 12 (BROADCAST_EDGE), Reducer 32 (BROADCAST_EDGE), Reducer 42 (BROADCAST_EDGE), Reducer 51 (BROADCAST_EDGE) -Map 56 <- Reducer 42 (BROADCAST_EDGE) -Reducer 10 <- Reducer 15 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) +Map 34 <- Reducer 37 (BROADCAST_EDGE) +Map 40 <- Reducer 37 (BROADCAST_EDGE) +Map 49 <- Reducer 38 (BROADCAST_EDGE) +Reducer 10 <- Reducer 14 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) Reducer 11 <- Reducer 10 (SIMPLE_EDGE) -Reducer 12 <- Reducer 9 (CUSTOM_SIMPLE_EDGE) -Reducer 13 <- Reducer 31 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) -Reducer 14 <- Map 54 (SIMPLE_EDGE), Reducer 13 (SIMPLE_EDGE) -Reducer 15 <- Reducer 14 (SIMPLE_EDGE) -Reducer 17 <- Map 16 (SIMPLE_EDGE), Reducer 38 (SIMPLE_EDGE) -Reducer 18 <- Map 43 (SIMPLE_EDGE), Reducer 17 (SIMPLE_EDGE) -Reducer 19 <- Reducer 18 (SIMPLE_EDGE), Reducer 34 (SIMPLE_EDGE) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 16 (SIMPLE_EDGE) -Reducer 20 <- Reducer 19 (SIMPLE_EDGE), Reducer 46 (ONE_TO_ONE_EDGE) -Reducer 21 <- Map 52 (SIMPLE_EDGE), Reducer 20 (SIMPLE_EDGE) -Reducer 22 <- Map 36 (SIMPLE_EDGE), Reducer 21 (SIMPLE_EDGE) -Reducer 23 <- Map 53 (SIMPLE_EDGE), Reducer 22 (SIMPLE_EDGE) -Reducer 24 <- Map 16 (CUSTOM_SIMPLE_EDGE) -Reducer 25 <- Map 16 (SIMPLE_EDGE), Reducer 41 (SIMPLE_EDGE) -Reducer 26 <- Map 43 (SIMPLE_EDGE), Reducer 25 (SIMPLE_EDGE) -Reducer 27 <- Reducer 26 (SIMPLE_EDGE), Reducer 34 (SIMPLE_EDGE) -Reducer 28 <- Reducer 27 (SIMPLE_EDGE), Reducer 50 (ONE_TO_ONE_EDGE) -Reducer 29 <- Map 52 (SIMPLE_EDGE), Reducer 28 (SIMPLE_EDGE) -Reducer 3 <- Map 16 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 30 <- Map 36 (SIMPLE_EDGE), Reducer 29 (SIMPLE_EDGE) -Reducer 31 <- Map 53 (SIMPLE_EDGE), Reducer 30 (SIMPLE_EDGE) -Reducer 32 <- Map 16 (CUSTOM_SIMPLE_EDGE) -Reducer 34 <- Map 33 (SIMPLE_EDGE), Map 35 (SIMPLE_EDGE) -Reducer 38 <- Map 37 (SIMPLE_EDGE), Map 39 (SIMPLE_EDGE) -Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Reducer 34 (SIMPLE_EDGE) -Reducer 40 <- Map 39 (CUSTOM_SIMPLE_EDGE) -Reducer 41 <- Map 39 (SIMPLE_EDGE), Map 55 (SIMPLE_EDGE) -Reducer 42 <- Map 39 (CUSTOM_SIMPLE_EDGE) -Reducer 45 <- Map 44 (SIMPLE_EDGE), Map 48 (SIMPLE_EDGE) -Reducer 46 <- Reducer 45 (SIMPLE_EDGE) -Reducer 47 <- Reducer 46 (CUSTOM_SIMPLE_EDGE) -Reducer 49 <- Map 48 (SIMPLE_EDGE), Map 56 (SIMPLE_EDGE) -Reducer 5 <- Map 36 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) -Reducer 50 <- Reducer 49 (SIMPLE_EDGE) -Reducer 51 <- Reducer 50 (CUSTOM_SIMPLE_EDGE) -Reducer 6 <- Map 54 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) -Reducer 7 <- Reducer 23 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) -Reducer 8 <- Map 54 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) +Reducer 12 <- Reducer 29 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) +Reducer 13 <- Map 48 (SIMPLE_EDGE), Reducer 12 (SIMPLE_EDGE) +Reducer 14 <- Reducer 13 (SIMPLE_EDGE) +Reducer 16 <- Map 15 (SIMPLE_EDGE), Reducer 35 (SIMPLE_EDGE) +Reducer 17 <- Map 39 (SIMPLE_EDGE), Reducer 16 (SIMPLE_EDGE) +Reducer 18 <- Reducer 17 (SIMPLE_EDGE), Reducer 31 (SIMPLE_EDGE) +Reducer 19 <- Reducer 18 (SIMPLE_EDGE), Reducer 42 (ONE_TO_ONE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 15 (SIMPLE_EDGE) +Reducer 20 <- Map 46 (SIMPLE_EDGE), Reducer 19 (SIMPLE_EDGE) +Reducer 21 <- Map 33 (SIMPLE_EDGE), Reducer 20 (SIMPLE_EDGE) +Reducer 22 <- Map 47 (SIMPLE_EDGE), Reducer 21 (SIMPLE_EDGE) +Reducer 23 <- Map 15 (SIMPLE_EDGE), Reducer 35 (SIMPLE_EDGE) +Reducer 24 <- Map 39 (SIMPLE_EDGE), Reducer 23 (SIMPLE_EDGE) +Reducer 25 <- Reducer 24 (SIMPLE_EDGE), Reducer 31 (SIMPLE_EDGE) +Reducer 26 <- Reducer 25 (SIMPLE_EDGE), Reducer 45 (ONE_TO_ONE_EDGE) +Reducer 27 <- Map 46 (SIMPLE_EDGE), Reducer 26 (SIMPLE_EDGE) +Reducer 28 <- Map 33 (SIMPLE_EDGE), Reducer 27 (SIMPLE_EDGE) +Reducer 29 <- Map 47 (SIMPLE_EDGE), Reducer 28 (SIMPLE_EDGE) +Reducer 3 <- Map 15 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 31 <- Map 30 (SIMPLE_EDGE), Map 32 (SIMPLE_EDGE) +Reducer 35 <- Map 34 (SIMPLE_EDGE), Map 36 (SIMPLE_EDGE) +Reducer 37 <- Map 36 (CUSTOM_SIMPLE_EDGE) +Reducer 38 <- Map 36 (CUSTOM_SIMPLE_EDGE) +Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Reducer 31 (SIMPLE_EDGE) +Reducer 41 <- Map 40 (SIMPLE_EDGE), Map 43 (SIMPLE_EDGE) +Reducer 42 <- Reducer 41 (SIMPLE_EDGE) +Reducer 44 <- Map 43 (SIMPLE_EDGE), Map 49 (SIMPLE_EDGE) +Reducer 45 <- Reducer 44 (SIMPLE_EDGE) +Reducer 5 <- Map 33 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) +Reducer 6 <- Map 48 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) +Reducer 7 <- Reducer 22 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) +Reducer 8 <- Map 48 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) Reducer 9 <- Reducer 8 (SIMPLE_EDGE) Stage-0 @@ -316,8 +309,8 @@ Stage-0 limit:-1 Stage-1 Reducer 11 vectorized - File Output Operator [FS_1201] - Select Operator [SEL_1200] (rows=2169965329 width=1702) + File Output Operator [FS_1171] + Select Operator [SEL_1170] (rows=2169965329 width=1702) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17","_col18","_col19","_col20"] <-Reducer 10 [SIMPLE_EDGE] SHUFFLE [RS_259] @@ -326,59 +319,59 @@ Stage-0 Filter Operator [FIL_257] (rows=2169965329 width=1694) predicate:(_col19 <= _col12) Merge Join Operator [MERGEJOIN_1087] (rows=6509895988 width=1694) - Conds:RS_1171._col2, _col1, _col3=RS_1199._col1, _col0, _col2(Inner),Output:["_col0","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col19","_col20","_col21","_col22"] - <-Reducer 9 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1171] - PartitionCols:_col2, _col1, _col3 - Select Operator [SEL_1170] (rows=2299138 width=1354) - Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15"] - Group By Operator [GBY_1169] (rows=2299138 width=1362) + Conds:RS_1157._col2, _col1, _col3=RS_1169._col1, _col0, _col2(Inner),Output:["_col0","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col19","_col20","_col21","_col22"] + <-Reducer 14 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1169] + PartitionCols:_col1, _col0, _col2 + Select Operator [SEL_1168] (rows=2299138 width=525) + Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] + Group By Operator [GBY_1167] (rows=2299138 width=1362) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17"],aggregations:["count(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)","sum(VALUE._col3)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4, KEY._col5, KEY._col6, KEY._col7, KEY._col8, KEY._col9, KEY._col10, KEY._col11, KEY._col12, KEY._col13 - <-Reducer 8 [SIMPLE_EDGE] - SHUFFLE [RS_124] + <-Reducer 13 [SIMPLE_EDGE] + SHUFFLE [RS_251] PartitionCols:_col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7, _col8, _col9, _col10, _col11, _col12, _col13 - Group By Operator [GBY_123] (rows=2299138 width=1362) + Group By Operator [GBY_250] (rows=2299138 width=1362) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17"],aggregations:["count()","sum(_col43)","sum(_col44)","sum(_col45)"],keys:_col28, _col46, _col29, _col7, _col9, _col14, _col15, _col16, _col17, _col23, _col24, _col25, _col26, _col49 - Select Operator [SEL_122] (rows=2331650 width=1292) + Select Operator [SEL_249] (rows=2331650 width=1292) Output:["_col7","_col9","_col14","_col15","_col16","_col17","_col23","_col24","_col25","_col26","_col28","_col29","_col43","_col44","_col45","_col46","_col49"] - Filter Operator [FIL_121] (rows=2331650 width=1292) + Filter Operator [FIL_248] (rows=2331650 width=1292) predicate:(_col56 <> _col19) - Merge Join Operator [MERGEJOIN_1068] (rows=2331650 width=1292) - Conds:RS_118._col37=RS_1120._col0(Inner),Output:["_col7","_col9","_col14","_col15","_col16","_col17","_col19","_col23","_col24","_col25","_col26","_col28","_col29","_col43","_col44","_col45","_col46","_col49","_col56"] - <-Map 54 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1120] + Merge Join Operator [MERGEJOIN_1086] (rows=2331650 width=1292) + Conds:RS_245._col37=RS_1116._col0(Inner),Output:["_col7","_col9","_col14","_col15","_col16","_col17","_col19","_col23","_col24","_col25","_col26","_col28","_col29","_col43","_col44","_col45","_col46","_col49","_col56"] + <-Map 48 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1116] PartitionCols:_col0 - Select Operator [SEL_1119] (rows=1861800 width=89) + Select Operator [SEL_1113] (rows=1861800 width=89) Output:["_col0","_col1"] - Filter Operator [FIL_1118] (rows=1861800 width=89) + Filter Operator [FIL_1112] (rows=1861800 width=89) predicate:cd_demo_sk is not null TableScan [TS_97] (rows=1861800 width=89) default@customer_demographics,cd1,Tbl:COMPLETE,Col:COMPLETE,Output:["cd_demo_sk","cd_marital_status"] - <-Reducer 7 [SIMPLE_EDGE] - SHUFFLE [RS_118] + <-Reducer 12 [SIMPLE_EDGE] + SHUFFLE [RS_245] PartitionCols:_col37 - Merge Join Operator [MERGEJOIN_1067] (rows=2299138 width=1205) - Conds:RS_115._col0=RS_116._col16(Inner),Output:["_col7","_col9","_col14","_col15","_col16","_col17","_col19","_col23","_col24","_col25","_col26","_col28","_col29","_col37","_col43","_col44","_col45","_col46","_col49"] + Merge Join Operator [MERGEJOIN_1085] (rows=2299138 width=1205) + Conds:RS_242._col0=RS_243._col16(Inner),Output:["_col7","_col9","_col14","_col15","_col16","_col17","_col19","_col23","_col24","_col25","_col26","_col28","_col29","_col37","_col43","_col44","_col45","_col46","_col49"] <-Reducer 6 [SIMPLE_EDGE] - SHUFFLE [RS_115] + SHUFFLE [RS_242] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_1056] (rows=70357394 width=458) - Conds:RS_112._col1=RS_1121._col0(Inner),Output:["_col0","_col7","_col9","_col14","_col15","_col16","_col17","_col19"] - <-Map 54 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1121] + Conds:RS_112._col1=RS_1115._col0(Inner),Output:["_col0","_col7","_col9","_col14","_col15","_col16","_col17","_col19"] + <-Map 48 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1115] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1119] + Please refer to the previous Select Operator [SEL_1113] <-Reducer 5 [SIMPLE_EDGE] SHUFFLE [RS_112] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_1055] (rows=69376329 width=376) - Conds:RS_109._col3=RS_1115._col0(Inner),Output:["_col0","_col1","_col7","_col9","_col14","_col15","_col16","_col17"] - <-Map 36 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1115] + Conds:RS_109._col3=RS_1109._col0(Inner),Output:["_col0","_col1","_col7","_col9","_col14","_col15","_col16","_col17"] + <-Map 33 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1109] PartitionCols:_col0 - Select Operator [SEL_1114] (rows=40000000 width=365) + Select Operator [SEL_1108] (rows=40000000 width=365) Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_1113] (rows=40000000 width=365) + Filter Operator [FIL_1107] (rows=40000000 width=365) predicate:ca_address_sk is not null TableScan [TS_19] (rows=40000000 width=365) default@customer_address,ad2,Tbl:COMPLETE,Col:COMPLETE,Output:["ca_address_sk","ca_street_number","ca_street_name","ca_city","ca_zip"] @@ -387,26 +380,26 @@ Stage-0 PartitionCols:_col3 Merge Join Operator [MERGEJOIN_1054] (rows=69376329 width=19) Conds:RS_106._col2=RS_107._col0(Inner),Output:["_col0","_col1","_col3","_col7","_col9"] - <-Reducer 34 [SIMPLE_EDGE] + <-Reducer 31 [SIMPLE_EDGE] SHUFFLE [RS_107] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_1053] (rows=7200 width=4) - Conds:RS_1109._col1=RS_1112._col0(Inner),Output:["_col0"] - <-Map 33 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1109] + Conds:RS_1103._col1=RS_1106._col0(Inner),Output:["_col0"] + <-Map 30 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1103] PartitionCols:_col1 - Select Operator [SEL_1108] (rows=7200 width=8) + Select Operator [SEL_1102] (rows=7200 width=8) Output:["_col0","_col1"] - Filter Operator [FIL_1107] (rows=7200 width=8) + Filter Operator [FIL_1101] (rows=7200 width=8) predicate:(hd_demo_sk is not null and hd_income_band_sk is not null) TableScan [TS_9] (rows=7200 width=8) default@household_demographics,hd2,Tbl:COMPLETE,Col:COMPLETE,Output:["hd_demo_sk","hd_income_band_sk"] - <-Map 35 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1112] + <-Map 32 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1106] PartitionCols:_col0 - Select Operator [SEL_1111] (rows=20 width=4) + Select Operator [SEL_1105] (rows=20 width=4) Output:["_col0"] - Filter Operator [FIL_1110] (rows=20 width=4) + Filter Operator [FIL_1104] (rows=20 width=4) predicate:ib_income_band_sk is not null TableScan [TS_12] (rows=20 width=4) default@income_band,ib2,Tbl:COMPLETE,Col:COMPLETE,Output:["ib_income_band_sk"] @@ -415,8 +408,8 @@ Stage-0 PartitionCols:_col2 Merge Join Operator [MERGEJOIN_1052] (rows=69376329 width=23) Conds:RS_103._col4=RS_1098._col0(Inner),Output:["_col0","_col1","_col2","_col3","_col7","_col9"] - <-Map 16 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1098] + <-Map 15 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1098] PartitionCols:_col0 Select Operator [SEL_1094] (rows=73049 width=8) Output:["_col0","_col1"] @@ -429,8 +422,8 @@ Stage-0 PartitionCols:_col4 Merge Join Operator [MERGEJOIN_1051] (rows=69376329 width=23) Conds:RS_1090._col5=RS_1097._col0(Inner),Output:["_col0","_col1","_col2","_col3","_col4","_col7"] - <-Map 16 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1097] + <-Map 15 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1097] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_1094] <-Map 1 [SIMPLE_EDGE] vectorized @@ -442,258 +435,132 @@ Stage-0 predicate:(c_current_addr_sk is not null and c_current_cdemo_sk is not null and c_current_hdemo_sk is not null and c_customer_sk is not null and c_first_sales_date_sk is not null and c_first_shipto_date_sk is not null) TableScan [TS_0] (rows=80000000 width=23) default@customer,customer,Tbl:COMPLETE,Col:COMPLETE,Output:["c_customer_sk","c_current_cdemo_sk","c_current_hdemo_sk","c_current_addr_sk","c_first_shipto_date_sk","c_first_sales_date_sk"] - <-Reducer 23 [SIMPLE_EDGE] - SHUFFLE [RS_116] + <-Reducer 29 [SIMPLE_EDGE] + SHUFFLE [RS_243] PartitionCols:_col16 - Select Operator [SEL_96] (rows=2651207 width=784) + Select Operator [SEL_223] (rows=2651207 width=784) Output:["_col3","_col4","_col5","_col6","_col8","_col9","_col16","_col17","_col23","_col24","_col25","_col26","_col29"] - Merge Join Operator [MERGEJOIN_1066] (rows=2651207 width=784) - Conds:RS_93._col5, _col12=RS_1167._col0, _col1(Inner),Output:["_col6","_col7","_col13","_col14","_col15","_col16","_col19","_col26","_col27","_col29","_col30","_col31","_col32"] - <-Map 53 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1167] + Merge Join Operator [MERGEJOIN_1084] (rows=2651207 width=784) + Conds:RS_220._col5, _col12=RS_1154._col0, _col1(Inner),Output:["_col6","_col7","_col13","_col14","_col15","_col16","_col19","_col26","_col27","_col29","_col30","_col31","_col32"] + <-Map 47 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1154] PartitionCols:_col0, _col1 - Select Operator [SEL_1166] (rows=57591150 width=8) + Select Operator [SEL_1152] (rows=57591150 width=8) Output:["_col0","_col1"] - Filter Operator [FIL_1165] (rows=57591150 width=8) + Filter Operator [FIL_1151] (rows=57591150 width=8) predicate:(sr_item_sk is not null and sr_ticket_number is not null) TableScan [TS_75] (rows=57591150 width=8) default@store_returns,store_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["sr_item_sk","sr_ticket_number"] - <-Reducer 22 [SIMPLE_EDGE] - SHUFFLE [RS_93] + <-Reducer 28 [SIMPLE_EDGE] + SHUFFLE [RS_220] PartitionCols:_col5, _col12 - Merge Join Operator [MERGEJOIN_1065] (rows=1608052 width=657) - Conds:RS_90._col9=RS_1116._col0(Inner),Output:["_col5","_col6","_col7","_col12","_col13","_col14","_col15","_col16","_col19","_col26","_col27","_col29","_col30","_col31","_col32"] - <-Map 36 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1116] + Merge Join Operator [MERGEJOIN_1083] (rows=1608052 width=657) + Conds:RS_217._col9=RS_1111._col0(Inner),Output:["_col5","_col6","_col7","_col12","_col13","_col14","_col15","_col16","_col19","_col26","_col27","_col29","_col30","_col31","_col32"] + <-Map 33 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1111] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1114] - <-Reducer 21 [SIMPLE_EDGE] - SHUFFLE [RS_90] + Please refer to the previous Select Operator [SEL_1108] + <-Reducer 27 [SIMPLE_EDGE] + SHUFFLE [RS_217] PartitionCols:_col9 - Merge Join Operator [MERGEJOIN_1064] (rows=1608052 width=296) - Conds:RS_87._col10=RS_1163._col0(Inner),Output:["_col5","_col6","_col7","_col9","_col12","_col13","_col14","_col15","_col16","_col19","_col26","_col27"] - <-Map 52 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1163] + Merge Join Operator [MERGEJOIN_1082] (rows=1608052 width=296) + Conds:RS_214._col10=RS_1150._col0(Inner),Output:["_col5","_col6","_col7","_col9","_col12","_col13","_col14","_col15","_col16","_col19","_col26","_col27"] + <-Map 46 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1150] PartitionCols:_col0 - Select Operator [SEL_1162] (rows=1704 width=181) + Select Operator [SEL_1148] (rows=1704 width=181) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_1161] (rows=1704 width=181) + Filter Operator [FIL_1147] (rows=1704 width=181) predicate:(s_store_name is not null and s_store_sk is not null and s_zip is not null) TableScan [TS_69] (rows=1704 width=181) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_store_name","s_zip"] - <-Reducer 20 [SIMPLE_EDGE] - SHUFFLE [RS_87] + <-Reducer 26 [SIMPLE_EDGE] + SHUFFLE [RS_214] PartitionCols:_col10 - Merge Join Operator [MERGEJOIN_1063] (rows=1608052 width=119) - Conds:RS_84._col5=RS_1148._col0(Inner),Output:["_col5","_col6","_col7","_col9","_col10","_col12","_col13","_col14","_col15","_col16","_col19"] - <-Reducer 46 [ONE_TO_ONE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1148] - PartitionCols:_col0 - Select Operator [SEL_1147] (rows=13257 width=228) - Output:["_col0"] - Filter Operator [FIL_1146] (rows=13257 width=228) - predicate:(_col1 > (2 * _col2)) - Group By Operator [GBY_1145] (rows=39773 width=228) - Output:["_col0","_col1","_col2"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)"],keys:KEY._col0 - <-Reducer 45 [SIMPLE_EDGE] - SHUFFLE [RS_65] - PartitionCols:_col0 - Group By Operator [GBY_64] (rows=12806906 width=228) - Output:["_col0","_col1","_col2"],aggregations:["sum(_col1)","sum(_col2)"],keys:_col0 - Select Operator [SEL_62] (rows=183085709 width=450) - Output:["_col0","_col1","_col2"] - Merge Join Operator [MERGEJOIN_1061] (rows=183085709 width=450) - Conds:RS_1140._col0, _col1=RS_1143._col0, _col1(Inner),Output:["_col0","_col2","_col5","_col6","_col7"] - <-Map 48 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1143] - PartitionCols:_col0, _col1 - Select Operator [SEL_1142] (rows=28798881 width=337) - Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_1141] (rows=28798881 width=337) - predicate:(cr_item_sk is not null and cr_order_number is not null) - TableScan [TS_56] (rows=28798881 width=337) - default@catalog_returns,catalog_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["cr_item_sk","cr_order_number","cr_refunded_cash","cr_reversed_charge","cr_store_credit"] - <-Map 44 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1140] - PartitionCols:_col0, _col1 - Select Operator [SEL_1139] (rows=287989836 width=119) - Output:["_col0","_col1","_col2"] - Filter Operator [FIL_1138] (rows=287989836 width=119) - predicate:((cs_item_sk BETWEEN DynamicValue(RS_44_item_i_item_sk_min) AND DynamicValue(RS_44_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_44_item_i_item_sk_bloom_filter))) and cs_item_sk is not null and cs_order_number is not null) - TableScan [TS_53] (rows=287989836 width=119) - default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_item_sk","cs_order_number","cs_ext_list_price"] - <-Reducer 40 [BROADCAST_EDGE] vectorized - BROADCAST [RS_1135] - Group By Operator [GBY_1133] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 39 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1131] - Group By Operator [GBY_1129] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_1126] (rows=518 width=4) - Output:["_col0"] - Select Operator [SEL_1124] (rows=518 width=312) - Output:["_col0","_col3"] - Filter Operator [FIL_1123] (rows=518 width=312) - predicate:((i_color) IN ('maroon', 'burnished', 'dim', 'steel', 'navajo', 'chocolate') and i_current_price BETWEEN 35 AND 45 and i_current_price BETWEEN 36 AND 50 and i_item_sk is not null) - TableScan [TS_34] (rows=462000 width=311) - default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_current_price","i_color","i_product_name"] - <-Reducer 19 [SIMPLE_EDGE] - SHUFFLE [RS_84] + Merge Join Operator [MERGEJOIN_1081] (rows=1608052 width=119) + Conds:RS_211._col5=RS_1166._col0(Inner),Output:["_col5","_col6","_col7","_col9","_col10","_col12","_col13","_col14","_col15","_col16","_col19"] + <-Reducer 25 [SIMPLE_EDGE] + SHUFFLE [RS_211] PartitionCols:_col5 - Merge Join Operator [MERGEJOIN_1062] (rows=1608052 width=119) - Conds:RS_81._col0=RS_82._col5(Inner),Output:["_col5","_col6","_col7","_col9","_col10","_col12","_col13","_col14","_col15","_col16","_col19"] - <-Reducer 34 [SIMPLE_EDGE] - SHUFFLE [RS_81] + Merge Join Operator [MERGEJOIN_1080] (rows=1608052 width=119) + Conds:RS_208._col0=RS_209._col5(Inner),Output:["_col5","_col6","_col7","_col9","_col10","_col12","_col13","_col14","_col15","_col16","_col19"] + <-Reducer 31 [SIMPLE_EDGE] + SHUFFLE [RS_208] PartitionCols:_col0 Please refer to the previous Merge Join Operator [MERGEJOIN_1053] - <-Reducer 18 [SIMPLE_EDGE] - SHUFFLE [RS_82] + <-Reducer 24 [SIMPLE_EDGE] + SHUFFLE [RS_209] PartitionCols:_col5 - Select Operator [SEL_52] (rows=1608052 width=119) + Select Operator [SEL_179] (rows=1608052 width=119) Output:["_col2","_col3","_col4","_col5","_col6","_col7","_col9","_col10","_col11","_col12","_col13","_col16"] - Merge Join Operator [MERGEJOIN_1060] (rows=1608052 width=119) - Conds:RS_49._col7=RS_1159._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col8","_col9","_col10","_col11","_col12","_col15"] - <-Map 43 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1159] + Merge Join Operator [MERGEJOIN_1078] (rows=1608052 width=119) + Conds:RS_176._col7=RS_1135._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col8","_col9","_col10","_col11","_col12","_col15"] + <-Map 39 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1135] PartitionCols:_col0 - Select Operator [SEL_1158] (rows=2300 width=4) + Select Operator [SEL_1133] (rows=2300 width=4) Output:["_col0"] - Filter Operator [FIL_1157] (rows=2300 width=4) + Filter Operator [FIL_1132] (rows=2300 width=4) predicate:p_promo_sk is not null TableScan [TS_40] (rows=2300 width=4) default@promotion,promotion,Tbl:COMPLETE,Col:COMPLETE,Output:["p_promo_sk"] - <-Reducer 17 [SIMPLE_EDGE] - SHUFFLE [RS_49] + <-Reducer 23 [SIMPLE_EDGE] + SHUFFLE [RS_176] PartitionCols:_col7 - Merge Join Operator [MERGEJOIN_1059] (rows=1608052 width=119) - Conds:RS_46._col0=RS_1099._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col15"] - <-Map 16 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1099] + Merge Join Operator [MERGEJOIN_1077] (rows=1608052 width=119) + Conds:RS_173._col0=RS_1100._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col15"] + <-Map 15 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1100] PartitionCols:_col0 - Select Operator [SEL_1095] (rows=652 width=8) + Select Operator [SEL_1096] (rows=652 width=8) Output:["_col0"] - Filter Operator [FIL_1092] (rows=652 width=8) - predicate:((d_year = 2000) and d_date_sk is not null) + Filter Operator [FIL_1093] (rows=652 width=8) + predicate:((d_year = 2001) and d_date_sk is not null) Please refer to the previous TableScan [TS_3] - <-Reducer 38 [SIMPLE_EDGE] - SHUFFLE [RS_46] + <-Reducer 35 [SIMPLE_EDGE] + SHUFFLE [RS_173] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_1058] (rows=4503592 width=119) - Conds:RS_1156._col1=RS_1125._col0(Inner),Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col15"] - <-Map 39 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1125] + Conds:RS_1131._col1=RS_1119._col0(Inner),Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col15"] + <-Map 36 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_1119] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1124] - <-Map 37 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1156] + Select Operator [SEL_1118] (rows=518 width=312) + Output:["_col0","_col3"] + Filter Operator [FIL_1117] (rows=518 width=312) + predicate:((i_color) IN ('maroon', 'burnished', 'dim', 'steel', 'navajo', 'chocolate') and i_current_price BETWEEN 35 AND 45 and i_current_price BETWEEN 36 AND 50 and i_item_sk is not null) + TableScan [TS_34] (rows=462000 width=311) + default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_current_price","i_color","i_product_name"] + <-Map 34 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1131] PartitionCols:_col1 - Select Operator [SEL_1155] (rows=417313408 width=355) + Select Operator [SEL_1130] (rows=417313408 width=355) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11"] - Filter Operator [FIL_1154] (rows=417313408 width=355) - predicate:((ss_item_sk BETWEEN DynamicValue(RS_44_item_i_item_sk_min) AND DynamicValue(RS_44_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_44_item_i_item_sk_bloom_filter))) and (ss_item_sk BETWEEN DynamicValue(RS_85_catalog_sales_cs_item_sk_min) AND DynamicValue(RS_85_catalog_sales_cs_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_85_catalog_sales_cs_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_47_d1_d_date_sk_min) AND DynamicValue(RS_47_d1_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_47_d1_d_date_sk_bloom_filter))) and ss_addr_sk is not null and ss_cdemo_sk is not null and ss_customer_sk is not null and ss_hdemo_sk is not null and ss_item_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 and ss_ticket_number is not null) + Filter Operator [FIL_1129] (rows=417313408 width=355) + predicate:((ss_item_sk BETWEEN DynamicValue(RS_44_item_i_item_sk_min) AND DynamicValue(RS_44_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_44_item_i_item_sk_bloom_filter))) and ss_addr_sk is not null and ss_cdemo_sk is not null and ss_customer_sk is not null and ss_hdemo_sk is not null and ss_item_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 and ss_ticket_number is not null) TableScan [TS_31] (rows=575995635 width=355) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_customer_sk","ss_cdemo_sk","ss_hdemo_sk","ss_addr_sk","ss_store_sk","ss_promo_sk","ss_ticket_number","ss_wholesale_cost","ss_list_price","ss_coupon_amt"] - <-Reducer 40 [BROADCAST_EDGE] vectorized - BROADCAST [RS_1134] - Please refer to the previous Group By Operator [GBY_1133] - <-Reducer 24 [BROADCAST_EDGE] vectorized - BROADCAST [RS_1137] - Group By Operator [GBY_1136] (rows=1 width=12) + <-Reducer 37 [BROADCAST_EDGE] vectorized + BROADCAST [RS_1127] + Group By Operator [GBY_1126] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 16 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1105] - Group By Operator [GBY_1103] (rows=1 width=12) + <-Map 36 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_1124] + Group By Operator [GBY_1122] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_1100] (rows=652 width=4) + Select Operator [SEL_1120] (rows=518 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_1095] - <-Reducer 47 [BROADCAST_EDGE] vectorized - BROADCAST [RS_1153] - Group By Operator [GBY_1152] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Reducer 46 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1151] - Group By Operator [GBY_1150] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_1149] (rows=13257 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_1147] - <-Reducer 15 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1199] - PartitionCols:_col1, _col0, _col2 - Select Operator [SEL_1198] (rows=2299138 width=525) - Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] - Group By Operator [GBY_1197] (rows=2299138 width=1362) - Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17"],aggregations:["count(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)","sum(VALUE._col3)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4, KEY._col5, KEY._col6, KEY._col7, KEY._col8, KEY._col9, KEY._col10, KEY._col11, KEY._col12, KEY._col13 - <-Reducer 14 [SIMPLE_EDGE] - SHUFFLE [RS_251] - PartitionCols:_col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7, _col8, _col9, _col10, _col11, _col12, _col13 - Group By Operator [GBY_250] (rows=2299138 width=1362) - Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17"],aggregations:["count()","sum(_col43)","sum(_col44)","sum(_col45)"],keys:_col28, _col46, _col29, _col7, _col9, _col14, _col15, _col16, _col17, _col23, _col24, _col25, _col26, _col49 - Select Operator [SEL_249] (rows=2331650 width=1292) - Output:["_col7","_col9","_col14","_col15","_col16","_col17","_col23","_col24","_col25","_col26","_col28","_col29","_col43","_col44","_col45","_col46","_col49"] - Filter Operator [FIL_248] (rows=2331650 width=1292) - predicate:(_col56 <> _col19) - Merge Join Operator [MERGEJOIN_1086] (rows=2331650 width=1292) - Conds:RS_245._col37=RS_1122._col0(Inner),Output:["_col7","_col9","_col14","_col15","_col16","_col17","_col19","_col23","_col24","_col25","_col26","_col28","_col29","_col43","_col44","_col45","_col46","_col49","_col56"] - <-Map 54 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1122] - PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1119] - <-Reducer 13 [SIMPLE_EDGE] - SHUFFLE [RS_245] - PartitionCols:_col37 - Merge Join Operator [MERGEJOIN_1085] (rows=2299138 width=1205) - Conds:RS_242._col0=RS_243._col16(Inner),Output:["_col7","_col9","_col14","_col15","_col16","_col17","_col19","_col23","_col24","_col25","_col26","_col28","_col29","_col37","_col43","_col44","_col45","_col46","_col49"] - <-Reducer 6 [SIMPLE_EDGE] - SHUFFLE [RS_242] - PartitionCols:_col0 - Please refer to the previous Merge Join Operator [MERGEJOIN_1056] - <-Reducer 31 [SIMPLE_EDGE] - SHUFFLE [RS_243] - PartitionCols:_col16 - Select Operator [SEL_223] (rows=2651207 width=784) - Output:["_col3","_col4","_col5","_col6","_col8","_col9","_col16","_col17","_col23","_col24","_col25","_col26","_col29"] - Merge Join Operator [MERGEJOIN_1084] (rows=2651207 width=784) - Conds:RS_220._col5, _col12=RS_1168._col0, _col1(Inner),Output:["_col6","_col7","_col13","_col14","_col15","_col16","_col19","_col26","_col27","_col29","_col30","_col31","_col32"] - <-Map 53 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1168] - PartitionCols:_col0, _col1 - Please refer to the previous Select Operator [SEL_1166] - <-Reducer 30 [SIMPLE_EDGE] - SHUFFLE [RS_220] - PartitionCols:_col5, _col12 - Merge Join Operator [MERGEJOIN_1083] (rows=1608052 width=657) - Conds:RS_217._col9=RS_1117._col0(Inner),Output:["_col5","_col6","_col7","_col12","_col13","_col14","_col15","_col16","_col19","_col26","_col27","_col29","_col30","_col31","_col32"] - <-Map 36 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1117] - PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1114] - <-Reducer 29 [SIMPLE_EDGE] - SHUFFLE [RS_217] - PartitionCols:_col9 - Merge Join Operator [MERGEJOIN_1082] (rows=1608052 width=296) - Conds:RS_214._col10=RS_1164._col0(Inner),Output:["_col5","_col6","_col7","_col9","_col12","_col13","_col14","_col15","_col16","_col19","_col26","_col27"] - <-Map 52 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1164] - PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1162] - <-Reducer 28 [SIMPLE_EDGE] - SHUFFLE [RS_214] - PartitionCols:_col10 - Merge Join Operator [MERGEJOIN_1081] (rows=1608052 width=119) - Conds:RS_211._col5=RS_1186._col0(Inner),Output:["_col5","_col6","_col7","_col9","_col10","_col12","_col13","_col14","_col15","_col16","_col19"] - <-Reducer 50 [ONE_TO_ONE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1186] + Please refer to the previous Select Operator [SEL_1118] + <-Reducer 45 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_1166] PartitionCols:_col0 - Select Operator [SEL_1185] (rows=13257 width=228) + Select Operator [SEL_1165] (rows=13257 width=228) Output:["_col0"] - Filter Operator [FIL_1184] (rows=13257 width=228) + Filter Operator [FIL_1164] (rows=13257 width=228) predicate:(_col1 > (2 * _col2)) - Group By Operator [GBY_1183] (rows=39773 width=228) + Group By Operator [GBY_1163] (rows=39773 width=228) Output:["_col0","_col1","_col2"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)"],keys:KEY._col0 - <-Reducer 49 [SIMPLE_EDGE] + <-Reducer 44 [SIMPLE_EDGE] SHUFFLE [RS_192] PartitionCols:_col0 Group By Operator [GBY_191] (rows=12806906 width=228) @@ -701,116 +568,170 @@ Stage-0 Select Operator [SEL_189] (rows=183085709 width=450) Output:["_col0","_col1","_col2"] Merge Join Operator [MERGEJOIN_1079] (rows=183085709 width=450) - Conds:RS_1182._col0, _col1=RS_1144._col0, _col1(Inner),Output:["_col0","_col2","_col5","_col6","_col7"] - <-Map 48 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1144] + Conds:RS_1162._col0, _col1=RS_1142._col0, _col1(Inner),Output:["_col0","_col2","_col5","_col6","_col7"] + <-Map 43 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1142] PartitionCols:_col0, _col1 - Please refer to the previous Select Operator [SEL_1142] - <-Map 56 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1182] + Select Operator [SEL_1140] (rows=28798881 width=337) + Output:["_col0","_col1","_col2","_col3","_col4"] + Filter Operator [FIL_1139] (rows=28798881 width=337) + predicate:(cr_item_sk is not null and cr_order_number is not null) + TableScan [TS_56] (rows=28798881 width=337) + default@catalog_returns,catalog_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["cr_item_sk","cr_order_number","cr_refunded_cash","cr_reversed_charge","cr_store_credit"] + <-Map 49 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1162] PartitionCols:_col0, _col1 - Select Operator [SEL_1181] (rows=287989836 width=119) + Select Operator [SEL_1161] (rows=287989836 width=119) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_1180] (rows=287989836 width=119) + Filter Operator [FIL_1160] (rows=287989836 width=119) predicate:((cs_item_sk BETWEEN DynamicValue(RS_171_item_i_item_sk_min) AND DynamicValue(RS_171_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_171_item_i_item_sk_bloom_filter))) and cs_item_sk is not null and cs_order_number is not null) TableScan [TS_180] (rows=287989836 width=119) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_item_sk","cs_order_number","cs_ext_list_price"] - <-Reducer 42 [BROADCAST_EDGE] vectorized - BROADCAST [RS_1177] - Group By Operator [GBY_1175] (rows=1 width=12) + <-Reducer 38 [BROADCAST_EDGE] vectorized + BROADCAST [RS_1159] + Group By Operator [GBY_1158] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 39 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1132] - Group By Operator [GBY_1130] (rows=1 width=12) + <-Map 36 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_1125] + Group By Operator [GBY_1123] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_1128] (rows=518 width=4) + Select Operator [SEL_1121] (rows=518 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_1124] - <-Reducer 27 [SIMPLE_EDGE] - SHUFFLE [RS_211] + Please refer to the previous Select Operator [SEL_1118] + <-Reducer 9 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1157] + PartitionCols:_col2, _col1, _col3 + Select Operator [SEL_1156] (rows=2299138 width=1354) + Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15"] + Group By Operator [GBY_1155] (rows=2299138 width=1362) + Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17"],aggregations:["count(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)","sum(VALUE._col3)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4, KEY._col5, KEY._col6, KEY._col7, KEY._col8, KEY._col9, KEY._col10, KEY._col11, KEY._col12, KEY._col13 + <-Reducer 8 [SIMPLE_EDGE] + SHUFFLE [RS_124] + PartitionCols:_col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7, _col8, _col9, _col10, _col11, _col12, _col13 + Group By Operator [GBY_123] (rows=2299138 width=1362) + Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17"],aggregations:["count()","sum(_col43)","sum(_col44)","sum(_col45)"],keys:_col28, _col46, _col29, _col7, _col9, _col14, _col15, _col16, _col17, _col23, _col24, _col25, _col26, _col49 + Select Operator [SEL_122] (rows=2331650 width=1292) + Output:["_col7","_col9","_col14","_col15","_col16","_col17","_col23","_col24","_col25","_col26","_col28","_col29","_col43","_col44","_col45","_col46","_col49"] + Filter Operator [FIL_121] (rows=2331650 width=1292) + predicate:(_col56 <> _col19) + Merge Join Operator [MERGEJOIN_1068] (rows=2331650 width=1292) + Conds:RS_118._col37=RS_1114._col0(Inner),Output:["_col7","_col9","_col14","_col15","_col16","_col17","_col19","_col23","_col24","_col25","_col26","_col28","_col29","_col43","_col44","_col45","_col46","_col49","_col56"] + <-Map 48 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1114] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_1113] + <-Reducer 7 [SIMPLE_EDGE] + SHUFFLE [RS_118] + PartitionCols:_col37 + Merge Join Operator [MERGEJOIN_1067] (rows=2299138 width=1205) + Conds:RS_115._col0=RS_116._col16(Inner),Output:["_col7","_col9","_col14","_col15","_col16","_col17","_col19","_col23","_col24","_col25","_col26","_col28","_col29","_col37","_col43","_col44","_col45","_col46","_col49"] + <-Reducer 6 [SIMPLE_EDGE] + SHUFFLE [RS_115] + PartitionCols:_col0 + Please refer to the previous Merge Join Operator [MERGEJOIN_1056] + <-Reducer 22 [SIMPLE_EDGE] + SHUFFLE [RS_116] + PartitionCols:_col16 + Select Operator [SEL_96] (rows=2651207 width=784) + Output:["_col3","_col4","_col5","_col6","_col8","_col9","_col16","_col17","_col23","_col24","_col25","_col26","_col29"] + Merge Join Operator [MERGEJOIN_1066] (rows=2651207 width=784) + Conds:RS_93._col5, _col12=RS_1153._col0, _col1(Inner),Output:["_col6","_col7","_col13","_col14","_col15","_col16","_col19","_col26","_col27","_col29","_col30","_col31","_col32"] + <-Map 47 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1153] + PartitionCols:_col0, _col1 + Please refer to the previous Select Operator [SEL_1152] + <-Reducer 21 [SIMPLE_EDGE] + SHUFFLE [RS_93] + PartitionCols:_col5, _col12 + Merge Join Operator [MERGEJOIN_1065] (rows=1608052 width=657) + Conds:RS_90._col9=RS_1110._col0(Inner),Output:["_col5","_col6","_col7","_col12","_col13","_col14","_col15","_col16","_col19","_col26","_col27","_col29","_col30","_col31","_col32"] + <-Map 33 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1110] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_1108] + <-Reducer 20 [SIMPLE_EDGE] + SHUFFLE [RS_90] + PartitionCols:_col9 + Merge Join Operator [MERGEJOIN_1064] (rows=1608052 width=296) + Conds:RS_87._col10=RS_1149._col0(Inner),Output:["_col5","_col6","_col7","_col9","_col12","_col13","_col14","_col15","_col16","_col19","_col26","_col27"] + <-Map 46 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1149] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_1148] + <-Reducer 19 [SIMPLE_EDGE] + SHUFFLE [RS_87] + PartitionCols:_col10 + Merge Join Operator [MERGEJOIN_1063] (rows=1608052 width=119) + Conds:RS_84._col5=RS_1146._col0(Inner),Output:["_col5","_col6","_col7","_col9","_col10","_col12","_col13","_col14","_col15","_col16","_col19"] + <-Reducer 18 [SIMPLE_EDGE] + SHUFFLE [RS_84] PartitionCols:_col5 - Merge Join Operator [MERGEJOIN_1080] (rows=1608052 width=119) - Conds:RS_208._col0=RS_209._col5(Inner),Output:["_col5","_col6","_col7","_col9","_col10","_col12","_col13","_col14","_col15","_col16","_col19"] - <-Reducer 34 [SIMPLE_EDGE] - SHUFFLE [RS_208] + Merge Join Operator [MERGEJOIN_1062] (rows=1608052 width=119) + Conds:RS_81._col0=RS_82._col5(Inner),Output:["_col5","_col6","_col7","_col9","_col10","_col12","_col13","_col14","_col15","_col16","_col19"] + <-Reducer 31 [SIMPLE_EDGE] + SHUFFLE [RS_81] PartitionCols:_col0 Please refer to the previous Merge Join Operator [MERGEJOIN_1053] - <-Reducer 26 [SIMPLE_EDGE] - SHUFFLE [RS_209] + <-Reducer 17 [SIMPLE_EDGE] + SHUFFLE [RS_82] PartitionCols:_col5 - Select Operator [SEL_179] (rows=1608052 width=119) + Select Operator [SEL_52] (rows=1608052 width=119) Output:["_col2","_col3","_col4","_col5","_col6","_col7","_col9","_col10","_col11","_col12","_col13","_col16"] - Merge Join Operator [MERGEJOIN_1078] (rows=1608052 width=119) - Conds:RS_176._col7=RS_1160._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col8","_col9","_col10","_col11","_col12","_col15"] - <-Map 43 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1160] + Merge Join Operator [MERGEJOIN_1060] (rows=1608052 width=119) + Conds:RS_49._col7=RS_1134._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col8","_col9","_col10","_col11","_col12","_col15"] + <-Map 39 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1134] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1158] - <-Reducer 25 [SIMPLE_EDGE] - SHUFFLE [RS_176] + Please refer to the previous Select Operator [SEL_1133] + <-Reducer 16 [SIMPLE_EDGE] + SHUFFLE [RS_49] PartitionCols:_col7 - Merge Join Operator [MERGEJOIN_1077] (rows=1608052 width=119) - Conds:RS_173._col0=RS_1101._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col15"] - <-Map 16 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1101] + Merge Join Operator [MERGEJOIN_1059] (rows=1608052 width=119) + Conds:RS_46._col0=RS_1099._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col15"] + <-Map 15 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1099] PartitionCols:_col0 - Select Operator [SEL_1096] (rows=652 width=8) + Select Operator [SEL_1095] (rows=652 width=8) Output:["_col0"] - Filter Operator [FIL_1093] (rows=652 width=8) - predicate:((d_year = 2001) and d_date_sk is not null) + Filter Operator [FIL_1092] (rows=652 width=8) + predicate:((d_year = 2000) and d_date_sk is not null) Please refer to the previous TableScan [TS_3] - <-Reducer 41 [SIMPLE_EDGE] - SHUFFLE [RS_173] + <-Reducer 35 [SIMPLE_EDGE] + SHUFFLE [RS_46] PartitionCols:_col0 - Merge Join Operator [MERGEJOIN_1076] (rows=4503592 width=119) - Conds:RS_1196._col1=RS_1127._col0(Inner),Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col15"] - <-Map 39 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1127] - PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_1124] - <-Map 55 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_1196] - PartitionCols:_col1 - Select Operator [SEL_1195] (rows=417313408 width=355) - Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11"] - Filter Operator [FIL_1194] (rows=417313408 width=355) - predicate:((ss_item_sk BETWEEN DynamicValue(RS_171_item_i_item_sk_min) AND DynamicValue(RS_171_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_171_item_i_item_sk_bloom_filter))) and (ss_item_sk BETWEEN DynamicValue(RS_212_catalog_sales_cs_item_sk_min) AND DynamicValue(RS_212_catalog_sales_cs_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_212_catalog_sales_cs_item_sk_bloom_filter))) and (ss_item_sk BETWEEN DynamicValue(RS_254_item_i_item_sk_min) AND DynamicValue(RS_254_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_254_item_i_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_174_d1_d_date_sk_min) AND DynamicValue(RS_174_d1_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_174_d1_d_date_sk_bloom_filter))) and ss_addr_sk is not null and ss_cdemo_sk is not null and ss_customer_sk is not null and ss_hdemo_sk is not null and ss_item_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 and ss_ticket_number is not null) - TableScan [TS_158] (rows=575995635 width=355) - default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_customer_sk","ss_cdemo_sk","ss_hdemo_sk","ss_addr_sk","ss_store_sk","ss_promo_sk","ss_ticket_number","ss_wholesale_cost","ss_list_price","ss_coupon_amt"] - <-Reducer 42 [BROADCAST_EDGE] vectorized - BROADCAST [RS_1176] - Please refer to the previous Group By Operator [GBY_1175] - <-Reducer 12 [BROADCAST_EDGE] vectorized - BROADCAST [RS_1193] - Group By Operator [GBY_1192] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Reducer 9 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1174] - Group By Operator [GBY_1173] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_1172] (rows=2299138 width=8) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_1170] - <-Reducer 32 [BROADCAST_EDGE] vectorized - BROADCAST [RS_1179] - Group By Operator [GBY_1178] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 16 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1106] - Group By Operator [GBY_1104] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_1102] (rows=652 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_1096] - <-Reducer 51 [BROADCAST_EDGE] vectorized - BROADCAST [RS_1191] - Group By Operator [GBY_1190] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Reducer 50 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_1189] - Group By Operator [GBY_1188] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_1187] (rows=13257 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_1185] + Please refer to the previous Merge Join Operator [MERGEJOIN_1058] + <-Reducer 42 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_1146] + PartitionCols:_col0 + Select Operator [SEL_1145] (rows=13257 width=228) + Output:["_col0"] + Filter Operator [FIL_1144] (rows=13257 width=228) + predicate:(_col1 > (2 * _col2)) + Group By Operator [GBY_1143] (rows=39773 width=228) + Output:["_col0","_col1","_col2"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)"],keys:KEY._col0 + <-Reducer 41 [SIMPLE_EDGE] + SHUFFLE [RS_65] + PartitionCols:_col0 + Group By Operator [GBY_64] (rows=12806906 width=228) + Output:["_col0","_col1","_col2"],aggregations:["sum(_col1)","sum(_col2)"],keys:_col0 + Select Operator [SEL_62] (rows=183085709 width=450) + Output:["_col0","_col1","_col2"] + Merge Join Operator [MERGEJOIN_1061] (rows=183085709 width=450) + Conds:RS_1138._col0, _col1=RS_1141._col0, _col1(Inner),Output:["_col0","_col2","_col5","_col6","_col7"] + <-Map 43 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1141] + PartitionCols:_col0, _col1 + Please refer to the previous Select Operator [SEL_1140] + <-Map 40 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_1138] + PartitionCols:_col0, _col1 + Select Operator [SEL_1137] (rows=287989836 width=119) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_1136] (rows=287989836 width=119) + predicate:((cs_item_sk BETWEEN DynamicValue(RS_44_item_i_item_sk_min) AND DynamicValue(RS_44_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_44_item_i_item_sk_bloom_filter))) and cs_item_sk is not null and cs_order_number is not null) + TableScan [TS_53] (rows=287989836 width=119) + default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_item_sk","cs_order_number","cs_ext_list_price"] + <-Reducer 37 [BROADCAST_EDGE] vectorized + BROADCAST [RS_1128] + Please refer to the previous Group By Operator [GBY_1126] diff --git a/ql/src/test/results/clientpositive/perf/tez/query65.q.out b/ql/src/test/results/clientpositive/perf/tez/query65.q.out index 4c3644b16a..5fb4c01522 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query65.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query65.q.out @@ -67,42 +67,39 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 10 (BROADCAST_EDGE) -Map 14 <- Reducer 13 (BROADCAST_EDGE), Reducer 8 (BROADCAST_EDGE) -Reducer 10 <- Map 9 (CUSTOM_SIMPLE_EDGE) -Reducer 11 <- Map 14 (SIMPLE_EDGE), Map 9 (SIMPLE_EDGE) -Reducer 12 <- Reducer 11 (SIMPLE_EDGE) -Reducer 13 <- Map 9 (CUSTOM_SIMPLE_EDGE) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 9 (SIMPLE_EDGE) +Map 1 <- Reducer 11 (BROADCAST_EDGE) +Reducer 11 <- Map 10 (CUSTOM_SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 10 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Reducer 12 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Map 15 (SIMPLE_EDGE), Reducer 4 (ONE_TO_ONE_EDGE) -Reducer 6 <- Map 16 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) +Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) +Reducer 5 <- Map 12 (SIMPLE_EDGE), Reducer 4 (ONE_TO_ONE_EDGE) +Reducer 6 <- Map 13 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) -Reducer 8 <- Reducer 3 (CUSTOM_SIMPLE_EDGE) +Reducer 8 <- Map 1 (SIMPLE_EDGE), Map 10 (SIMPLE_EDGE) +Reducer 9 <- Reducer 8 (SIMPLE_EDGE) Stage-0 Fetch Operator limit:100 Stage-1 Reducer 7 vectorized - File Output Operator [FS_177] - Limit [LIM_176] (rows=100 width=705) + File Output Operator [FS_167] + Limit [LIM_166] (rows=100 width=705) Number of rows:100 - Select Operator [SEL_175] (rows=65392 width=704) + Select Operator [SEL_165] (rows=65392 width=704) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] <-Reducer 6 [SIMPLE_EDGE] SHUFFLE [RS_50] Select Operator [SEL_49] (rows=65392 width=704) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] Merge Join Operator [MERGEJOIN_136] (rows=65392 width=704) - Conds:RS_46._col1=RS_174._col0(Inner),Output:["_col2","_col6","_col8","_col9","_col10","_col11"] - <-Map 16 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_174] + Conds:RS_46._col1=RS_164._col0(Inner),Output:["_col2","_col6","_col8","_col9","_col10","_col11"] + <-Map 13 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_164] PartitionCols:_col0 - Select Operator [SEL_173] (rows=462000 width=511) + Select Operator [SEL_163] (rows=462000 width=511) Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_172] (rows=462000 width=511) + Filter Operator [FIL_162] (rows=462000 width=511) predicate:i_item_sk is not null TableScan [TS_36] (rows=462000 width=511) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_item_desc","i_current_price","i_wholesale_cost","i_brand"] @@ -110,13 +107,13 @@ Stage-0 SHUFFLE [RS_46] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_135] (rows=65392 width=204) - Conds:RS_43._col0=RS_171._col0(Inner),Output:["_col1","_col2","_col6"] - <-Map 15 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_171] + Conds:RS_43._col0=RS_161._col0(Inner),Output:["_col1","_col2","_col6"] + <-Map 12 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_161] PartitionCols:_col0 - Select Operator [SEL_170] (rows=1704 width=92) + Select Operator [SEL_160] (rows=1704 width=92) Output:["_col0","_col1"] - Filter Operator [FIL_169] (rows=1704 width=92) + Filter Operator [FIL_159] (rows=1704 width=92) predicate:s_store_sk is not null TableScan [TS_33] (rows=1704 width=92) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_store_name"] @@ -126,9 +123,9 @@ Stage-0 Filter Operator [FIL_42] (rows=65392 width=231) predicate:(_col2 <= (0.1 * _col4)) Merge Join Operator [MERGEJOIN_134] (rows=196176 width=231) - Conds:RS_153._col0=RS_168._col0(Inner),Output:["_col0","_col1","_col2","_col4"] + Conds:RS_153._col0=RS_158._col0(Inner),Output:["_col0","_col1","_col2","_col4"] <-Reducer 3 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_153] + SHUFFLE [RS_153] PartitionCols:_col0 Group By Operator [GBY_152] (rows=184637 width=118) Output:["_col0","_col1","_col2"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0, KEY._col1 @@ -138,8 +135,8 @@ Stage-0 Group By Operator [GBY_10] (rows=6093021 width=118) Output:["_col0","_col1","_col2"],aggregations:["sum(_col3)"],keys:_col2, _col1 Merge Join Operator [MERGEJOIN_132] (rows=91197860 width=89) - Conds:RS_151._col0=RS_139._col0(Inner),Output:["_col1","_col2","_col3"] - <-Map 9 [SIMPLE_EDGE] vectorized + Conds:RS_150._col0=RS_139._col0(Inner),Output:["_col1","_col2","_col3"] + <-Map 10 [SIMPLE_EDGE] vectorized SHUFFLE [RS_139] PartitionCols:_col0 Select Operator [SEL_138] (rows=317 width=8) @@ -149,76 +146,53 @@ Stage-0 TableScan [TS_3] (rows=73049 width=8) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_month_seq"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_151] + SHUFFLE [RS_150] PartitionCols:_col0 - Select Operator [SEL_150] (rows=525329897 width=118) + Select Operator [SEL_148] (rows=525329897 width=118) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_149] (rows=525329897 width=118) + Filter Operator [FIL_146] (rows=525329897 width=118) predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_7_date_dim_d_date_sk_min) AND DynamicValue(RS_7_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_7_date_dim_d_date_sk_bloom_filter))) and ss_item_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) TableScan [TS_0] (rows=575995635 width=118) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_store_sk","ss_sales_price"] - <-Reducer 10 [BROADCAST_EDGE] vectorized - BROADCAST [RS_148] - Group By Operator [GBY_147] (rows=1 width=12) + <-Reducer 11 [BROADCAST_EDGE] vectorized + BROADCAST [RS_145] + Group By Operator [GBY_144] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 9 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_145] - Group By Operator [GBY_143] (rows=1 width=12) + <-Map 10 [CUSTOM_SIMPLE_EDGE] vectorized + SHUFFLE [RS_143] + Group By Operator [GBY_142] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] Select Operator [SEL_140] (rows=317 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_138] - <-Reducer 12 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_168] + <-Reducer 9 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_158] PartitionCols:_col0 - Select Operator [SEL_167] (rows=17 width=115) + Select Operator [SEL_157] (rows=17 width=115) Output:["_col0","_col1"] - Group By Operator [GBY_166] (rows=17 width=123) + Group By Operator [GBY_156] (rows=17 width=123) Output:["_col0","_col1","_col2"],aggregations:["sum(_col2)","count(_col2)"],keys:_col1 - Select Operator [SEL_165] (rows=184637 width=118) + Select Operator [SEL_155] (rows=184637 width=118) Output:["_col1","_col2"] - Group By Operator [GBY_164] (rows=184637 width=118) + Group By Operator [GBY_154] (rows=184637 width=118) Output:["_col0","_col1","_col2"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0, KEY._col1 - <-Reducer 11 [SIMPLE_EDGE] + <-Reducer 8 [SIMPLE_EDGE] SHUFFLE [RS_25] PartitionCols:_col0 Group By Operator [GBY_24] (rows=6093021 width=118) Output:["_col0","_col1","_col2"],aggregations:["sum(_col3)"],keys:_col2, _col1 Merge Join Operator [MERGEJOIN_133] (rows=91197860 width=89) - Conds:RS_163._col0=RS_141._col0(Inner),Output:["_col1","_col2","_col3"] - <-Map 9 [SIMPLE_EDGE] vectorized + Conds:RS_151._col0=RS_141._col0(Inner),Output:["_col1","_col2","_col3"] + <-Map 10 [SIMPLE_EDGE] vectorized SHUFFLE [RS_141] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_138] - <-Map 14 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_163] + <-Map 1 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_151] PartitionCols:_col0 - Select Operator [SEL_162] (rows=525329897 width=118) + Select Operator [SEL_149] (rows=525329897 width=118) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_161] (rows=525329897 width=118) - predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_21_date_dim_d_date_sk_min) AND DynamicValue(RS_21_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_21_date_dim_d_date_sk_bloom_filter))) and (ss_store_sk BETWEEN DynamicValue(RS_39_store_sales_ss_store_sk_min) AND DynamicValue(RS_39_store_sales_ss_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_39_store_sales_ss_store_sk_bloom_filter))) and ss_sold_date_sk is not null and ss_store_sk is not null) - TableScan [TS_14] (rows=575995635 width=118) - default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_store_sk","ss_sales_price"] - <-Reducer 13 [BROADCAST_EDGE] vectorized - BROADCAST [RS_158] - Group By Operator [GBY_157] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 9 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_146] - Group By Operator [GBY_144] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_142] (rows=317 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_138] - <-Reducer 8 [BROADCAST_EDGE] vectorized - BROADCAST [RS_160] - Group By Operator [GBY_159] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Reducer 3 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_156] - Group By Operator [GBY_155] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_154] (rows=184637 width=2) - Output:["_col0"] - Please refer to the previous Group By Operator [GBY_152] + Filter Operator [FIL_147] (rows=525329897 width=118) + predicate:(ss_sold_date_sk is not null and ss_store_sk is not null) + Please refer to the previous TableScan [TS_0] diff --git a/ql/src/test/results/clientpositive/perf/tez/query66.q.out b/ql/src/test/results/clientpositive/perf/tez/query66.q.out index 225b62f7e2..888c6f8c9d 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query66.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query66.q.out @@ -457,23 +457,19 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 11 (BROADCAST_EDGE), Reducer 19 (BROADCAST_EDGE), Reducer 22 (BROADCAST_EDGE) -Map 25 <- Reducer 17 (BROADCAST_EDGE), Reducer 20 (BROADCAST_EDGE), Reducer 23 (BROADCAST_EDGE) -Reducer 11 <- Map 10 (CUSTOM_SIMPLE_EDGE) -Reducer 12 <- Map 10 (SIMPLE_EDGE), Map 25 (SIMPLE_EDGE) -Reducer 13 <- Map 18 (SIMPLE_EDGE), Reducer 12 (SIMPLE_EDGE) -Reducer 14 <- Map 21 (SIMPLE_EDGE), Reducer 13 (SIMPLE_EDGE) -Reducer 15 <- Map 24 (SIMPLE_EDGE), Reducer 14 (SIMPLE_EDGE) -Reducer 16 <- Reducer 15 (SIMPLE_EDGE), Union 7 (CONTAINS) -Reducer 17 <- Map 10 (CUSTOM_SIMPLE_EDGE) -Reducer 19 <- Map 18 (CUSTOM_SIMPLE_EDGE) +Map 1 <- Reducer 18 (BROADCAST_EDGE) +Map 21 <- Reducer 19 (BROADCAST_EDGE) +Reducer 11 <- Map 10 (SIMPLE_EDGE), Map 21 (SIMPLE_EDGE) +Reducer 12 <- Map 16 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE) +Reducer 13 <- Map 17 (SIMPLE_EDGE), Reducer 12 (SIMPLE_EDGE) +Reducer 14 <- Map 20 (SIMPLE_EDGE), Reducer 13 (SIMPLE_EDGE) +Reducer 15 <- Reducer 14 (SIMPLE_EDGE), Union 7 (CONTAINS) +Reducer 18 <- Map 17 (CUSTOM_SIMPLE_EDGE) +Reducer 19 <- Map 17 (CUSTOM_SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 10 (SIMPLE_EDGE) -Reducer 20 <- Map 18 (CUSTOM_SIMPLE_EDGE) -Reducer 22 <- Map 21 (CUSTOM_SIMPLE_EDGE) -Reducer 23 <- Map 21 (CUSTOM_SIMPLE_EDGE) -Reducer 3 <- Map 18 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 21 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Map 24 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) +Reducer 3 <- Map 16 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 4 <- Map 17 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 5 <- Map 20 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE), Union 7 (CONTAINS) Reducer 8 <- Union 7 (SIMPLE_EDGE) Reducer 9 <- Reducer 8 (SIMPLE_EDGE) @@ -483,30 +479,30 @@ Stage-0 limit:-1 Stage-1 Reducer 9 vectorized - File Output Operator [FS_270] - Select Operator [SEL_269] (rows=100 width=4614) + File Output Operator [FS_254] + Select Operator [SEL_253] (rows=100 width=4614) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17","_col18","_col19","_col20","_col21","_col22","_col23","_col24","_col25","_col26","_col27","_col28","_col29","_col30","_col31","_col32","_col33","_col34","_col35","_col36","_col37","_col38","_col39","_col40","_col41","_col42","_col43"] - Limit [LIM_268] (rows=100 width=4510) + Limit [LIM_252] (rows=100 width=4510) Number of rows:100 - Select Operator [SEL_267] (rows=2423925 width=4510) + Select Operator [SEL_251] (rows=2423925 width=4510) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17","_col18","_col19","_col20","_col21","_col22","_col23","_col24","_col25","_col26","_col27","_col28","_col29","_col30","_col31","_col32","_col33","_col34","_col35","_col36","_col37","_col38","_col39","_col40","_col41"] <-Reducer 8 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_266] - Group By Operator [GBY_265] (rows=2423925 width=4510) + SHUFFLE [RS_250] + Group By Operator [GBY_249] (rows=2423925 width=4510) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17","_col18","_col19","_col20","_col21","_col22","_col23","_col24","_col25","_col26","_col27","_col28","_col29","_col30","_col31","_col32","_col33","_col34","_col35","_col36","_col37","_col38","_col39","_col40","_col41"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)","sum(VALUE._col3)","sum(VALUE._col4)","sum(VALUE._col5)","sum(VALUE._col6)","sum(VALUE._col7)","sum(VALUE._col8)","sum(VALUE._col9)","sum(VALUE._col10)","sum(VALUE._col11)","sum(VALUE._col12)","sum(VALUE._col13)","sum(VALUE._col14)","sum(VALUE._col15)","sum(VALUE._col16)","sum(VALUE._col17)","sum(VALUE._col18)","sum(VALUE._col19)","sum(VALUE._col20)","sum(VALUE._col21)","sum(VALUE._col22)","sum(VALUE._col23)","sum(VALUE._col24)","sum(VALUE._col25)","sum(VALUE._col26)","sum(VALUE._col27)","sum(VALUE._col28)","sum(VALUE._col29)","sum(VALUE._col30)","sum(VALUE._col31)","sum(VALUE._col32)","sum(VALUE._col33)","sum(VALUE._col34)","sum(VALUE._col35)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4, KEY._col5 <-Union 7 [SIMPLE_EDGE] - <-Reducer 16 [CONTAINS] vectorized - Reduce Output Operator [RS_284] + <-Reducer 15 [CONTAINS] vectorized + Reduce Output Operator [RS_264] PartitionCols:_col0, _col1, _col2, _col3, _col4, _col5 - Group By Operator [GBY_283] (rows=2513727 width=4510) + Group By Operator [GBY_263] (rows=2513727 width=4510) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17","_col18","_col19","_col20","_col21","_col22","_col23","_col24","_col25","_col26","_col27","_col28","_col29","_col30","_col31","_col32","_col33","_col34","_col35","_col36","_col37","_col38","_col39","_col40","_col41"],aggregations:["sum(_col6)","sum(_col7)","sum(_col8)","sum(_col9)","sum(_col10)","sum(_col11)","sum(_col12)","sum(_col13)","sum(_col14)","sum(_col15)","sum(_col16)","sum(_col17)","sum(_col18)","sum(_col19)","sum(_col20)","sum(_col21)","sum(_col22)","sum(_col23)","sum(_col24)","sum(_col25)","sum(_col26)","sum(_col27)","sum(_col28)","sum(_col29)","sum(_col30)","sum(_col31)","sum(_col32)","sum(_col33)","sum(_col34)","sum(_col35)","sum(_col36)","sum(_col37)","sum(_col38)","sum(_col39)","sum(_col40)","sum(_col41)"],keys:_col0, _col1, _col2, _col3, _col4, _col5 - Top N Key Operator [TNK_282] (rows=2513727 width=3166) + Top N Key Operator [TNK_262] (rows=2513727 width=3166) keys:_col0, _col1, _col2, _col3, _col4, _col5,sort order:++++++,top n:100 - Select Operator [SEL_281] (rows=2513727 width=3166) + Select Operator [SEL_261] (rows=2513727 width=3166) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17","_col18","_col19","_col20","_col21","_col22","_col23","_col24","_col25","_col26","_col27","_col28","_col29","_col30","_col31","_col32","_col33","_col34","_col35","_col36","_col37","_col38","_col39","_col40","_col41"] - Group By Operator [GBY_280] (rows=2513700 width=3166) + Group By Operator [GBY_260] (rows=2513700 width=3166) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17","_col18","_col19","_col20","_col21","_col22","_col23","_col24","_col25","_col26","_col27","_col28","_col29"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)","sum(VALUE._col3)","sum(VALUE._col4)","sum(VALUE._col5)","sum(VALUE._col6)","sum(VALUE._col7)","sum(VALUE._col8)","sum(VALUE._col9)","sum(VALUE._col10)","sum(VALUE._col11)","sum(VALUE._col12)","sum(VALUE._col13)","sum(VALUE._col14)","sum(VALUE._col15)","sum(VALUE._col16)","sum(VALUE._col17)","sum(VALUE._col18)","sum(VALUE._col19)","sum(VALUE._col20)","sum(VALUE._col21)","sum(VALUE._col22)","sum(VALUE._col23)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4, KEY._col5 - <-Reducer 15 [SIMPLE_EDGE] + <-Reducer 14 [SIMPLE_EDGE] SHUFFLE [RS_63] PartitionCols:_col0, _col1, _col2, _col3, _col4, _col5 Group By Operator [GBY_62] (rows=5559759 width=3166) @@ -514,110 +510,88 @@ Stage-0 Select Operator [SEL_60] (rows=5559759 width=680) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17","_col18","_col19","_col20","_col21","_col22","_col23","_col24","_col25","_col26","_col27","_col28","_col29"] Merge Join Operator [MERGEJOIN_204] (rows=5559759 width=680) - Conds:RS_57._col3=RS_259._col0(Inner),Output:["_col4","_col5","_col6","_col11","_col15","_col16","_col17","_col18","_col19","_col20"] - <-Map 24 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_259] + Conds:RS_57._col3=RS_243._col0(Inner),Output:["_col4","_col5","_col6","_col11","_col15","_col16","_col17","_col18","_col19","_col20"] + <-Map 20 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_243] PartitionCols:_col0 - Select Operator [SEL_257] (rows=27 width=482) + Select Operator [SEL_241] (rows=27 width=482) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] - Filter Operator [FIL_256] (rows=27 width=482) + Filter Operator [FIL_240] (rows=27 width=482) predicate:w_warehouse_sk is not null TableScan [TS_12] (rows=27 width=482) default@warehouse,warehouse,Tbl:COMPLETE,Col:COMPLETE,Output:["w_warehouse_sk","w_warehouse_name","w_warehouse_sq_ft","w_city","w_county","w_state","w_country"] - <-Reducer 14 [SIMPLE_EDGE] + <-Reducer 13 [SIMPLE_EDGE] SHUFFLE [RS_57] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_203] (rows=5559759 width=205) - Conds:RS_54._col2=RS_245._col0(Inner),Output:["_col3","_col4","_col5","_col6","_col11"] - <-Map 21 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_245] + Conds:RS_54._col2=RS_221._col0(Inner),Output:["_col3","_col4","_col5","_col6","_col11"] + <-Map 17 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_221] PartitionCols:_col0 - Select Operator [SEL_242] (rows=1 width=88) + Select Operator [SEL_218] (rows=1 width=88) Output:["_col0"] - Filter Operator [FIL_241] (rows=1 width=88) + Filter Operator [FIL_217] (rows=1 width=88) predicate:((sm_carrier) IN ('DIAMOND', 'AIRBORNE') and sm_ship_mode_sk is not null) TableScan [TS_9] (rows=1 width=88) default@ship_mode,ship_mode,Tbl:COMPLETE,Col:COMPLETE,Output:["sm_ship_mode_sk","sm_carrier"] - <-Reducer 13 [SIMPLE_EDGE] + <-Reducer 12 [SIMPLE_EDGE] SHUFFLE [RS_54] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_202] (rows=11119518 width=224) - Conds:RS_51._col0=RS_233._col0(Inner),Output:["_col2","_col3","_col4","_col5","_col6","_col11"] - <-Map 18 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_233] + Conds:RS_51._col0=RS_239._col0(Inner),Output:["_col2","_col3","_col4","_col5","_col6","_col11"] + <-Map 16 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_239] PartitionCols:_col0 - Select Operator [SEL_230] (rows=652 width=12) + Select Operator [SEL_237] (rows=652 width=12) Output:["_col0","_col2"] - Filter Operator [FIL_229] (rows=652 width=12) + Filter Operator [FIL_236] (rows=652 width=12) predicate:((d_year = 2002) and d_date_sk is not null) TableScan [TS_6] (rows=73049 width=12) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] - <-Reducer 12 [SIMPLE_EDGE] + <-Reducer 11 [SIMPLE_EDGE] SHUFFLE [RS_51] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_201] (rows=31363607 width=234) - Conds:RS_279._col1=RS_221._col0(Inner),Output:["_col0","_col2","_col3","_col4","_col5","_col6"] + Conds:RS_259._col1=RS_235._col0(Inner),Output:["_col0","_col2","_col3","_col4","_col5","_col6"] <-Map 10 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_221] + SHUFFLE [RS_235] PartitionCols:_col0 - Select Operator [SEL_218] (rows=9600 width=8) + Select Operator [SEL_233] (rows=9600 width=8) Output:["_col0"] - Filter Operator [FIL_217] (rows=9600 width=8) + Filter Operator [FIL_232] (rows=9600 width=8) predicate:(t_time BETWEEN 49530 AND 78330 and t_time_sk is not null) TableScan [TS_3] (rows=86400 width=8) default@time_dim,time_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["t_time_sk","t_time"] - <-Map 25 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_279] + <-Map 21 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_259] PartitionCols:_col1 - Select Operator [SEL_278] (rows=282272460 width=243) + Select Operator [SEL_258] (rows=282272460 width=243) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] - Filter Operator [FIL_277] (rows=282272460 width=243) - predicate:((cs_ship_mode_sk BETWEEN DynamicValue(RS_55_ship_mode_sm_ship_mode_sk_min) AND DynamicValue(RS_55_ship_mode_sm_ship_mode_sk_max) and in_bloom_filter(cs_ship_mode_sk, DynamicValue(RS_55_ship_mode_sm_ship_mode_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_52_date_dim_d_date_sk_min) AND DynamicValue(RS_52_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_52_date_dim_d_date_sk_bloom_filter))) and (cs_sold_time_sk BETWEEN DynamicValue(RS_49_time_dim_t_time_sk_min) AND DynamicValue(RS_49_time_dim_t_time_sk_max) and in_bloom_filter(cs_sold_time_sk, DynamicValue(RS_49_time_dim_t_time_sk_bloom_filter))) and cs_ship_mode_sk is not null and cs_sold_date_sk is not null and cs_sold_time_sk is not null and cs_warehouse_sk is not null) + Filter Operator [FIL_257] (rows=282272460 width=243) + predicate:((cs_ship_mode_sk BETWEEN DynamicValue(RS_55_ship_mode_sm_ship_mode_sk_min) AND DynamicValue(RS_55_ship_mode_sm_ship_mode_sk_max) and in_bloom_filter(cs_ship_mode_sk, DynamicValue(RS_55_ship_mode_sm_ship_mode_sk_bloom_filter))) and cs_ship_mode_sk is not null and cs_sold_date_sk is not null and cs_sold_time_sk is not null and cs_warehouse_sk is not null) TableScan [TS_33] (rows=287989836 width=243) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_sold_time_sk","cs_ship_mode_sk","cs_warehouse_sk","cs_quantity","cs_ext_sales_price","cs_net_paid_inc_ship_tax"] - <-Reducer 17 [BROADCAST_EDGE] vectorized - BROADCAST [RS_272] - Group By Operator [GBY_271] (rows=1 width=12) + <-Reducer 19 [BROADCAST_EDGE] vectorized + BROADCAST [RS_256] + Group By Operator [GBY_255] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 10 [CUSTOM_SIMPLE_EDGE] vectorized + <-Map 17 [CUSTOM_SIMPLE_EDGE] vectorized SHUFFLE [RS_226] Group By Operator [GBY_224] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_222] (rows=9600 width=4) + Select Operator [SEL_222] (rows=1 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_218] - <-Reducer 20 [BROADCAST_EDGE] vectorized - BROADCAST [RS_274] - Group By Operator [GBY_273] (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_238] - Group By Operator [GBY_236] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_234] (rows=652 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_230] - <-Reducer 23 [BROADCAST_EDGE] vectorized - BROADCAST [RS_276] - Group By Operator [GBY_275] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 21 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_250] - Group By Operator [GBY_248] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_246] (rows=1 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_242] <-Reducer 6 [CONTAINS] vectorized - Reduce Output Operator [RS_264] + Reduce Output Operator [RS_248] PartitionCols:_col0, _col1, _col2, _col3, _col4, _col5 - Group By Operator [GBY_263] (rows=2513727 width=4510) + Group By Operator [GBY_247] (rows=2513727 width=4510) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17","_col18","_col19","_col20","_col21","_col22","_col23","_col24","_col25","_col26","_col27","_col28","_col29","_col30","_col31","_col32","_col33","_col34","_col35","_col36","_col37","_col38","_col39","_col40","_col41"],aggregations:["sum(_col6)","sum(_col7)","sum(_col8)","sum(_col9)","sum(_col10)","sum(_col11)","sum(_col12)","sum(_col13)","sum(_col14)","sum(_col15)","sum(_col16)","sum(_col17)","sum(_col18)","sum(_col19)","sum(_col20)","sum(_col21)","sum(_col22)","sum(_col23)","sum(_col24)","sum(_col25)","sum(_col26)","sum(_col27)","sum(_col28)","sum(_col29)","sum(_col30)","sum(_col31)","sum(_col32)","sum(_col33)","sum(_col34)","sum(_col35)","sum(_col36)","sum(_col37)","sum(_col38)","sum(_col39)","sum(_col40)","sum(_col41)"],keys:_col0, _col1, _col2, _col3, _col4, _col5 - Top N Key Operator [TNK_262] (rows=2513727 width=3166) + Top N Key Operator [TNK_246] (rows=2513727 width=3166) keys:_col0, _col1, _col2, _col3, _col4, _col5,sort order:++++++,top n:100 - Select Operator [SEL_261] (rows=2513727 width=3166) + Select Operator [SEL_245] (rows=2513727 width=3166) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17","_col18","_col19","_col20","_col21","_col22","_col23","_col24","_col25","_col26","_col27","_col28","_col29","_col30","_col31","_col32","_col33","_col34","_col35","_col36","_col37","_col38","_col39","_col40","_col41"] - Group By Operator [GBY_260] (rows=27 width=3166) + Group By Operator [GBY_244] (rows=27 width=3166) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17","_col18","_col19","_col20","_col21","_col22","_col23","_col24","_col25","_col26","_col27","_col28","_col29"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)","sum(VALUE._col3)","sum(VALUE._col4)","sum(VALUE._col5)","sum(VALUE._col6)","sum(VALUE._col7)","sum(VALUE._col8)","sum(VALUE._col9)","sum(VALUE._col10)","sum(VALUE._col11)","sum(VALUE._col12)","sum(VALUE._col13)","sum(VALUE._col14)","sum(VALUE._col15)","sum(VALUE._col16)","sum(VALUE._col17)","sum(VALUE._col18)","sum(VALUE._col19)","sum(VALUE._col20)","sum(VALUE._col21)","sum(VALUE._col22)","sum(VALUE._col23)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4, KEY._col5 <-Reducer 5 [SIMPLE_EDGE] SHUFFLE [RS_30] @@ -627,78 +601,56 @@ Stage-0 Select Operator [SEL_27] (rows=2853684 width=707) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17","_col18","_col19","_col20","_col21","_col22","_col23","_col24","_col25","_col26","_col27","_col28","_col29"] Merge Join Operator [MERGEJOIN_200] (rows=2853684 width=707) - Conds:RS_24._col3=RS_258._col0(Inner),Output:["_col4","_col5","_col6","_col11","_col15","_col16","_col17","_col18","_col19","_col20"] - <-Map 24 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_258] + Conds:RS_24._col3=RS_242._col0(Inner),Output:["_col4","_col5","_col6","_col11","_col15","_col16","_col17","_col18","_col19","_col20"] + <-Map 20 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_242] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_257] + Please refer to the previous Select Operator [SEL_241] <-Reducer 4 [SIMPLE_EDGE] SHUFFLE [RS_24] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_199] (rows=2853684 width=233) - Conds:RS_21._col2=RS_243._col0(Inner),Output:["_col3","_col4","_col5","_col6","_col11"] - <-Map 21 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_243] + Conds:RS_21._col2=RS_219._col0(Inner),Output:["_col3","_col4","_col5","_col6","_col11"] + <-Map 17 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_219] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_242] + Please refer to the previous Select Operator [SEL_218] <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_21] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_198] (rows=5707369 width=238) - Conds:RS_18._col0=RS_231._col0(Inner),Output:["_col2","_col3","_col4","_col5","_col6","_col11"] - <-Map 18 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_231] + Conds:RS_18._col0=RS_238._col0(Inner),Output:["_col2","_col3","_col4","_col5","_col6","_col11"] + <-Map 16 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_238] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_230] + Please refer to the previous Select Operator [SEL_237] <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_18] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_197] (rows=15984351 width=239) - Conds:RS_255._col1=RS_219._col0(Inner),Output:["_col0","_col2","_col3","_col4","_col5","_col6"] + Conds:RS_231._col1=RS_234._col0(Inner),Output:["_col0","_col2","_col3","_col4","_col5","_col6"] <-Map 10 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_219] + SHUFFLE [RS_234] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_218] + Please refer to the previous Select Operator [SEL_233] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_255] + SHUFFLE [RS_231] PartitionCols:_col1 - Select Operator [SEL_254] (rows=143859154 width=243) + Select Operator [SEL_230] (rows=143859154 width=243) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] - Filter Operator [FIL_253] (rows=143859154 width=243) - predicate:((ws_ship_mode_sk BETWEEN DynamicValue(RS_22_ship_mode_sm_ship_mode_sk_min) AND DynamicValue(RS_22_ship_mode_sm_ship_mode_sk_max) and in_bloom_filter(ws_ship_mode_sk, DynamicValue(RS_22_ship_mode_sm_ship_mode_sk_bloom_filter))) and (ws_sold_date_sk BETWEEN DynamicValue(RS_19_date_dim_d_date_sk_min) AND DynamicValue(RS_19_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_19_date_dim_d_date_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_ship_mode_sk is not null and ws_sold_date_sk is not null and ws_sold_time_sk is not null and ws_warehouse_sk is not null) + Filter Operator [FIL_229] (rows=143859154 width=243) + predicate:((ws_ship_mode_sk BETWEEN DynamicValue(RS_22_ship_mode_sm_ship_mode_sk_min) AND DynamicValue(RS_22_ship_mode_sm_ship_mode_sk_max) and in_bloom_filter(ws_ship_mode_sk, DynamicValue(RS_22_ship_mode_sm_ship_mode_sk_bloom_filter))) and ws_ship_mode_sk is not null and ws_sold_date_sk is not null and ws_sold_time_sk is not null and ws_warehouse_sk is not null) TableScan [TS_0] (rows=144002668 width=243) default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_sold_time_sk","ws_ship_mode_sk","ws_warehouse_sk","ws_quantity","ws_sales_price","ws_net_paid_inc_tax"] - <-Reducer 11 [BROADCAST_EDGE] vectorized + <-Reducer 18 [BROADCAST_EDGE] vectorized BROADCAST [RS_228] Group By Operator [GBY_227] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 10 [CUSTOM_SIMPLE_EDGE] vectorized + <-Map 17 [CUSTOM_SIMPLE_EDGE] vectorized SHUFFLE [RS_225] Group By Operator [GBY_223] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_220] (rows=9600 width=4) + Select Operator [SEL_220] (rows=1 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_218] - <-Reducer 19 [BROADCAST_EDGE] vectorized - BROADCAST [RS_240] - Group By Operator [GBY_239] (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_237] - Group By Operator [GBY_235] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_232] (rows=652 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_230] - <-Reducer 22 [BROADCAST_EDGE] vectorized - BROADCAST [RS_252] - Group By Operator [GBY_251] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 21 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_249] - Group By Operator [GBY_247] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_244] (rows=1 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_242] diff --git a/ql/src/test/results/clientpositive/perf/tez/query68.q.out b/ql/src/test/results/clientpositive/perf/tez/query68.q.out index 7c94381d40..4d2f64ef07 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query68.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query68.q.out @@ -97,12 +97,10 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 8 <- Reducer 13 (BROADCAST_EDGE), Reducer 15 (BROADCAST_EDGE), Reducer 17 (BROADCAST_EDGE) +Map 8 <- Reducer 13 (BROADCAST_EDGE) Reducer 10 <- Map 14 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) -Reducer 11 <- Map 16 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE) +Reducer 11 <- Map 15 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE) Reducer 13 <- Map 12 (CUSTOM_SIMPLE_EDGE) -Reducer 15 <- Map 14 (CUSTOM_SIMPLE_EDGE) -Reducer 17 <- Map 16 (CUSTOM_SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 5 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) @@ -115,10 +113,10 @@ Stage-0 limit:100 Stage-1 Reducer 4 vectorized - File Output Operator [FS_185] - Limit [LIM_184] (rows=100 width=706) + File Output Operator [FS_175] + Limit [LIM_174] (rows=100 width=706) Number of rows:100 - Select Operator [SEL_183] (rows=4418634 width=706) + Select Operator [SEL_173] (rows=4418634 width=706) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_46] @@ -127,7 +125,7 @@ Stage-0 Filter Operator [FIL_44] (rows=4418634 width=706) predicate:(_col5 <> _col8) Merge Join Operator [MERGEJOIN_145] (rows=4418634 width=706) - Conds:RS_41._col0=RS_182._col1(Inner),Output:["_col2","_col3","_col5","_col6","_col8","_col9","_col10","_col11"] + Conds:RS_41._col0=RS_172._col1(Inner),Output:["_col2","_col3","_col5","_col6","_col8","_col9","_col10","_col11"] <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_41] PartitionCols:_col0 @@ -152,11 +150,11 @@ Stage-0 TableScan [TS_0] (rows=80000000 width=188) default@customer,customer,Tbl:COMPLETE,Col:COMPLETE,Output:["c_customer_sk","c_current_addr_sk","c_first_name","c_last_name"] <-Reducer 7 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_182] + SHUFFLE [RS_172] PartitionCols:_col1 - Select Operator [SEL_181] (rows=4418634 width=433) + Select Operator [SEL_171] (rows=4418634 width=433) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] - Group By Operator [GBY_180] (rows=4418634 width=433) + Group By Operator [GBY_170] (rows=4418634 width=433) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3 <-Reducer 6 [SIMPLE_EDGE] SHUFFLE [RS_35] @@ -173,13 +171,13 @@ Stage-0 SHUFFLE [RS_30] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_143] (rows=4418634 width=4) - Conds:RS_27._col2=RS_171._col0(Inner),Output:["_col1","_col3","_col5","_col6","_col7","_col8"] - <-Map 16 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_171] + Conds:RS_27._col2=RS_169._col0(Inner),Output:["_col1","_col3","_col5","_col6","_col7","_col8"] + <-Map 15 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_169] PartitionCols:_col0 - Select Operator [SEL_170] (rows=1855 width=12) + Select Operator [SEL_168] (rows=1855 width=12) Output:["_col0"] - Filter Operator [FIL_169] (rows=1855 width=12) + Filter Operator [FIL_167] (rows=1855 width=12) predicate:(((hd_dep_count = 2) or (hd_vehicle_count = 1)) and hd_demo_sk is not null) TableScan [TS_15] (rows=7200 width=12) default@household_demographics,household_demographics,Tbl:COMPLETE,Col:COMPLETE,Output:["hd_demo_sk","hd_dep_count","hd_vehicle_count"] @@ -187,13 +185,13 @@ Stage-0 SHUFFLE [RS_27] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_142] (rows=17150490 width=4) - Conds:RS_24._col4=RS_163._col0(Inner),Output:["_col1","_col2","_col3","_col5","_col6","_col7","_col8"] + Conds:RS_24._col4=RS_166._col0(Inner),Output:["_col1","_col2","_col3","_col5","_col6","_col7","_col8"] <-Map 14 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_163] + SHUFFLE [RS_166] PartitionCols:_col0 - Select Operator [SEL_162] (rows=85 width=97) + Select Operator [SEL_165] (rows=85 width=97) Output:["_col0"] - Filter Operator [FIL_161] (rows=85 width=97) + Filter Operator [FIL_164] (rows=85 width=97) predicate:((s_city) IN ('Cedar Grove', 'Wildwood') and s_store_sk is not null) TableScan [TS_12] (rows=1704 width=97) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_city"] @@ -201,7 +199,7 @@ Stage-0 SHUFFLE [RS_24] PartitionCols:_col4 Merge Join Operator [MERGEJOIN_141] (rows=42598570 width=185) - Conds:RS_179._col0=RS_155._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8"] + Conds:RS_163._col0=RS_155._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8"] <-Map 12 [SIMPLE_EDGE] vectorized SHUFFLE [RS_155] PartitionCols:_col0 @@ -212,12 +210,12 @@ Stage-0 TableScan [TS_9] (rows=73049 width=12) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_dom"] <-Map 8 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_179] + SHUFFLE [RS_163] PartitionCols:_col0 - Select Operator [SEL_178] (rows=457565061 width=343) + Select Operator [SEL_162] (rows=457565061 width=343) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8"] - Filter Operator [FIL_177] (rows=457565061 width=343) - predicate:((ss_hdemo_sk BETWEEN DynamicValue(RS_28_household_demographics_hd_demo_sk_min) AND DynamicValue(RS_28_household_demographics_hd_demo_sk_max) and in_bloom_filter(ss_hdemo_sk, DynamicValue(RS_28_household_demographics_hd_demo_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_25_store_s_store_sk_min) AND DynamicValue(RS_25_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_25_store_s_store_sk_bloom_filter))) and ss_addr_sk is not null and ss_customer_sk is not null and ss_hdemo_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_161] (rows=457565061 width=343) + predicate:((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_addr_sk is not null and ss_customer_sk is not null and ss_hdemo_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=343) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_customer_sk","ss_hdemo_sk","ss_addr_sk","ss_store_sk","ss_ticket_number","ss_ext_sales_price","ss_ext_list_price","ss_ext_tax"] <-Reducer 13 [BROADCAST_EDGE] vectorized @@ -231,26 +229,4 @@ Stage-0 Select Operator [SEL_156] (rows=170 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_154] - <-Reducer 15 [BROADCAST_EDGE] vectorized - BROADCAST [RS_168] - Group By Operator [GBY_167] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 14 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_166] - Group By Operator [GBY_165] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_164] (rows=85 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_162] - <-Reducer 17 [BROADCAST_EDGE] vectorized - BROADCAST [RS_176] - Group By Operator [GBY_175] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 16 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_174] - 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_172] (rows=1855 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_170] diff --git a/ql/src/test/results/clientpositive/perf/tez/query69.q.out b/ql/src/test/results/clientpositive/perf/tez/query69.q.out index 65601d745c..bfb4177280 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query69.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query69.q.out @@ -109,24 +109,21 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 14 <- Reducer 11 (BROADCAST_EDGE), Reducer 17 (BROADCAST_EDGE) -Map 24 <- Reducer 10 (BROADCAST_EDGE), Reducer 20 (BROADCAST_EDGE) -Map 25 <- Reducer 23 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) +Map 13 <- Reducer 16 (BROADCAST_EDGE) +Map 21 <- Reducer 10 (BROADCAST_EDGE) +Map 22 <- Reducer 9 (BROADCAST_EDGE) Reducer 10 <- Reducer 4 (CUSTOM_SIMPLE_EDGE) -Reducer 11 <- Reducer 3 (CUSTOM_SIMPLE_EDGE) -Reducer 15 <- Map 14 (SIMPLE_EDGE), Map 16 (SIMPLE_EDGE) -Reducer 17 <- Map 16 (CUSTOM_SIMPLE_EDGE) -Reducer 18 <- Map 16 (SIMPLE_EDGE), Map 24 (SIMPLE_EDGE) -Reducer 19 <- Reducer 18 (SIMPLE_EDGE) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 12 (SIMPLE_EDGE) -Reducer 20 <- Map 16 (CUSTOM_SIMPLE_EDGE) -Reducer 21 <- Map 16 (SIMPLE_EDGE), Map 25 (SIMPLE_EDGE) -Reducer 22 <- Reducer 21 (SIMPLE_EDGE) -Reducer 23 <- Map 16 (CUSTOM_SIMPLE_EDGE) -Reducer 3 <- Map 13 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Reducer 15 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Reducer 19 (ONE_TO_ONE_EDGE), Reducer 4 (ONE_TO_ONE_EDGE) -Reducer 6 <- Reducer 22 (ONE_TO_ONE_EDGE), Reducer 5 (ONE_TO_ONE_EDGE) +Reducer 14 <- Map 13 (SIMPLE_EDGE), Map 15 (SIMPLE_EDGE) +Reducer 16 <- Map 15 (CUSTOM_SIMPLE_EDGE) +Reducer 17 <- Map 15 (SIMPLE_EDGE), Map 21 (SIMPLE_EDGE) +Reducer 18 <- Reducer 17 (SIMPLE_EDGE) +Reducer 19 <- Map 15 (SIMPLE_EDGE), Map 22 (SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 11 (SIMPLE_EDGE) +Reducer 20 <- Reducer 19 (SIMPLE_EDGE) +Reducer 3 <- Map 12 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 4 <- Reducer 14 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 5 <- Reducer 18 (ONE_TO_ONE_EDGE), Reducer 4 (ONE_TO_ONE_EDGE) +Reducer 6 <- Reducer 20 (ONE_TO_ONE_EDGE), Reducer 5 (ONE_TO_ONE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) Reducer 8 <- Reducer 7 (SIMPLE_EDGE) Reducer 9 <- Reducer 5 (CUSTOM_SIMPLE_EDGE) @@ -136,16 +133,16 @@ Stage-0 limit:100 Stage-1 Reducer 8 vectorized - File Output Operator [FS_240] - Limit [LIM_239] (rows=1 width=383) + File Output Operator [FS_228] + Limit [LIM_227] (rows=1 width=383) Number of rows:100 - Select Operator [SEL_238] (rows=1 width=383) + Select Operator [SEL_226] (rows=1 width=383) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] <-Reducer 7 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_237] - Select Operator [SEL_236] (rows=1 width=383) + SHUFFLE [RS_225] + Select Operator [SEL_224] (rows=1 width=383) Output:["_col0","_col1","_col2","_col3","_col4","_col6"] - Group By Operator [GBY_235] (rows=1 width=367) + Group By Operator [GBY_223] (rows=1 width=367) Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4 <-Reducer 6 [SIMPLE_EDGE] SHUFFLE [RS_69] @@ -159,7 +156,7 @@ Stage-0 Filter Operator [FIL_66] (rows=1 width=363) predicate:_col14 is null Merge Join Operator [MERGEJOIN_184] (rows=1 width=363) - Conds:RS_63._col0=RS_234._col0(Left Outer),Output:["_col6","_col7","_col8","_col9","_col10","_col14"] + Conds:RS_63._col0=RS_222._col0(Left Outer),Output:["_col6","_col7","_col8","_col9","_col10","_col14"] <-Reducer 5 [ONE_TO_ONE_EDGE] PARTITION_ONLY_SHUFFLE [RS_63] PartitionCols:_col0 @@ -168,18 +165,56 @@ Stage-0 Filter Operator [FIL_47] (rows=1 width=367) predicate:_col12 is null Merge Join Operator [MERGEJOIN_183] (rows=33 width=367) - Conds:RS_44._col0=RS_224._col0(Left Outer),Output:["_col0","_col6","_col7","_col8","_col9","_col10","_col12"] + Conds:RS_44._col0=RS_214._col0(Left Outer),Output:["_col0","_col6","_col7","_col8","_col9","_col10","_col12"] <-Reducer 4 [ONE_TO_ONE_EDGE] FORWARD [RS_44] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_182] (rows=6841 width=363) Conds:RS_41._col0=RS_42._col0(Left Semi),Output:["_col0","_col6","_col7","_col8","_col9","_col10"] + <-Reducer 14 [SIMPLE_EDGE] + SHUFFLE [RS_42] + PartitionCols:_col0 + Group By Operator [GBY_40] (rows=116289 width=1) + Output:["_col0"],keys:_col0 + Select Operator [SEL_18] (rows=43153353 width=1) + Output:["_col0"] + Merge Join Operator [MERGEJOIN_179] (rows=43153353 width=1) + Conds:RS_206._col0=RS_196._col0(Inner),Output:["_col1"] + <-Map 15 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_196] + PartitionCols:_col0 + Select Operator [SEL_195] (rows=150 width=12) + Output:["_col0"] + Filter Operator [FIL_194] (rows=150 width=12) + predicate:((d_year = 1999) and d_date_sk is not null and d_moy BETWEEN 1 AND 3) + TableScan [TS_12] (rows=73049 width=12) + default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] + <-Map 13 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_206] + PartitionCols:_col0 + Select Operator [SEL_205] (rows=525327388 width=7) + Output:["_col0","_col1"] + Filter Operator [FIL_204] (rows=525327388 width=7) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_16_date_dim_d_date_sk_min) AND DynamicValue(RS_16_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_16_date_dim_d_date_sk_bloom_filter))) and ss_customer_sk is not null and ss_sold_date_sk is not null) + TableScan [TS_9] (rows=575995635 width=7) + default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_customer_sk"] + <-Reducer 16 [BROADCAST_EDGE] vectorized + BROADCAST [RS_203] + Group By Operator [GBY_202] (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_201] + Group By Operator [GBY_200] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_197] (rows=150 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_195] <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_41] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_178] (rows=4605476 width=363) Conds:RS_36._col1=RS_193._col0(Inner),Output:["_col0","_col6","_col7","_col8","_col9","_col10"] - <-Map 13 [SIMPLE_EDGE] vectorized + <-Map 12 [SIMPLE_EDGE] vectorized SHUFFLE [RS_193] PartitionCols:_col0 Select Operator [SEL_192] (rows=1861800 width=363) @@ -202,7 +237,7 @@ Stage-0 predicate:(c_current_addr_sk is not null and c_current_cdemo_sk is not null and c_customer_sk is not null) TableScan [TS_0] (rows=80000000 width=11) default@customer,c,Tbl:COMPLETE,Col:COMPLETE,Output:["c_customer_sk","c_current_cdemo_sk","c_current_addr_sk"] - <-Map 12 [SIMPLE_EDGE] vectorized + <-Map 11 [SIMPLE_EDGE] vectorized SHUFFLE [RS_190] PartitionCols:_col0 Select Operator [SEL_189] (rows=2352941 width=90) @@ -211,85 +246,36 @@ Stage-0 predicate:((ca_state) IN ('CO', 'IL', 'MN') and ca_address_sk is not null) TableScan [TS_3] (rows=40000000 width=90) default@customer_address,ca,Tbl:COMPLETE,Col:COMPLETE,Output:["ca_address_sk","ca_state"] - <-Reducer 15 [SIMPLE_EDGE] - SHUFFLE [RS_42] - PartitionCols:_col0 - Group By Operator [GBY_40] (rows=116289 width=1) - Output:["_col0"],keys:_col0 - Select Operator [SEL_18] (rows=43153353 width=1) - Output:["_col0"] - Merge Join Operator [MERGEJOIN_179] (rows=43153353 width=1) - Conds:RS_214._col0=RS_196._col0(Inner),Output:["_col1"] - <-Map 16 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_196] - PartitionCols:_col0 - Select Operator [SEL_195] (rows=150 width=12) - Output:["_col0"] - Filter Operator [FIL_194] (rows=150 width=12) - predicate:((d_year = 1999) and d_date_sk is not null and d_moy BETWEEN 1 AND 3) - TableScan [TS_12] (rows=73049 width=12) - default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] - <-Map 14 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_214] - PartitionCols:_col0 - Select Operator [SEL_213] (rows=525327388 width=7) - Output:["_col0","_col1"] - Filter Operator [FIL_212] (rows=525327388 width=7) - predicate:((ss_customer_sk BETWEEN DynamicValue(RS_41_c_c_customer_sk_min) AND DynamicValue(RS_41_c_c_customer_sk_max) and in_bloom_filter(ss_customer_sk, DynamicValue(RS_41_c_c_customer_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_16_date_dim_d_date_sk_min) AND DynamicValue(RS_16_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_16_date_dim_d_date_sk_bloom_filter))) and ss_customer_sk is not null and ss_sold_date_sk is not null) - TableScan [TS_9] (rows=575995635 width=7) - default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_customer_sk"] - <-Reducer 11 [BROADCAST_EDGE] vectorized - BROADCAST [RS_211] - Group By Operator [GBY_210] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=4291485)"] - <-Reducer 3 [CUSTOM_SIMPLE_EDGE] - SHUFFLE [RS_138] - Group By Operator [GBY_137] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=4291485)"] - Select Operator [SEL_136] (rows=4605476 width=4) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_178] - <-Reducer 17 [BROADCAST_EDGE] vectorized - BROADCAST [RS_209] - Group By Operator [GBY_208] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 16 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_205] - Group By Operator [GBY_202] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_197] (rows=150 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_195] - <-Reducer 19 [ONE_TO_ONE_EDGE] vectorized - FORWARD [RS_224] + <-Reducer 18 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_214] PartitionCols:_col0 - Select Operator [SEL_223] (rows=116289 width=7) + Select Operator [SEL_213] (rows=116289 width=7) Output:["_col0","_col1"] - Group By Operator [GBY_222] (rows=116289 width=3) + Group By Operator [GBY_212] (rows=116289 width=3) Output:["_col0"],keys:KEY._col0 - <-Reducer 18 [SIMPLE_EDGE] + <-Reducer 17 [SIMPLE_EDGE] SHUFFLE [RS_30] PartitionCols:_col0 Group By Operator [GBY_29] (rows=116289 width=3) Output:["_col0"],keys:_col1 Merge Join Operator [MERGEJOIN_180] (rows=11823304 width=3) - Conds:RS_221._col0=RS_198._col0(Inner),Output:["_col1"] - <-Map 16 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_198] + Conds:RS_211._col0=RS_198._col0(Inner),Output:["_col1"] + <-Map 15 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_198] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_195] - <-Map 24 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_221] + <-Map 21 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_211] PartitionCols:_col0 - Select Operator [SEL_220] (rows=143930993 width=7) + Select Operator [SEL_210] (rows=143930993 width=7) Output:["_col0","_col1"] - Filter Operator [FIL_219] (rows=143930993 width=7) - predicate:((ws_bill_customer_sk BETWEEN DynamicValue(RS_44_c_c_customer_sk_min) AND DynamicValue(RS_44_c_c_customer_sk_max) and in_bloom_filter(ws_bill_customer_sk, DynamicValue(RS_44_c_c_customer_sk_bloom_filter))) and (ws_sold_date_sk BETWEEN DynamicValue(RS_26_date_dim_d_date_sk_min) AND DynamicValue(RS_26_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_26_date_dim_d_date_sk_bloom_filter))) and ws_bill_customer_sk is not null and ws_sold_date_sk is not null) + Filter Operator [FIL_209] (rows=143930993 width=7) + predicate:((ws_bill_customer_sk BETWEEN DynamicValue(RS_44_c_c_customer_sk_min) AND DynamicValue(RS_44_c_c_customer_sk_max) and in_bloom_filter(ws_bill_customer_sk, DynamicValue(RS_44_c_c_customer_sk_bloom_filter))) and ws_bill_customer_sk is not null and ws_sold_date_sk is not null) TableScan [TS_19] (rows=144002668 width=7) default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_bill_customer_sk"] <-Reducer 10 [BROADCAST_EDGE] vectorized - BROADCAST [RS_218] - Group By Operator [GBY_217] (rows=1 width=12) + BROADCAST [RS_208] + Group By Operator [GBY_207] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Reducer 4 [CUSTOM_SIMPLE_EDGE] FORWARD [RS_153] @@ -298,58 +284,36 @@ Stage-0 Select Operator [SEL_151] (rows=6841 width=4) Output:["_col0"] Please refer to the previous Merge Join Operator [MERGEJOIN_182] - <-Reducer 20 [BROADCAST_EDGE] vectorized - BROADCAST [RS_216] - Group By Operator [GBY_215] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 16 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_206] - Group By Operator [GBY_203] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_199] (rows=150 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_195] - <-Reducer 22 [ONE_TO_ONE_EDGE] vectorized - FORWARD [RS_234] + <-Reducer 20 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_222] PartitionCols:_col0 - Select Operator [SEL_233] (rows=115467 width=7) + Select Operator [SEL_221] (rows=115467 width=7) Output:["_col0","_col1"] - Group By Operator [GBY_232] (rows=115467 width=3) + Group By Operator [GBY_220] (rows=115467 width=3) Output:["_col0"],keys:KEY._col0 - <-Reducer 21 [SIMPLE_EDGE] + <-Reducer 19 [SIMPLE_EDGE] SHUFFLE [RS_60] PartitionCols:_col0 Group By Operator [GBY_59] (rows=115467 width=3) Output:["_col0"],keys:_col1 Merge Join Operator [MERGEJOIN_181] (rows=23255411 width=3) - Conds:RS_231._col0=RS_200._col0(Inner),Output:["_col1"] - <-Map 16 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_200] + Conds:RS_219._col0=RS_199._col0(Inner),Output:["_col1"] + <-Map 15 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_199] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_195] - <-Map 25 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_231] + <-Map 22 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_219] PartitionCols:_col0 - Select Operator [SEL_230] (rows=285115246 width=7) + Select Operator [SEL_218] (rows=285115246 width=7) Output:["_col0","_col1"] - Filter Operator [FIL_229] (rows=285115246 width=7) - predicate:((cs_ship_customer_sk BETWEEN DynamicValue(RS_63_c_c_customer_sk_min) AND DynamicValue(RS_63_c_c_customer_sk_max) and in_bloom_filter(cs_ship_customer_sk, DynamicValue(RS_63_c_c_customer_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_56_date_dim_d_date_sk_min) AND DynamicValue(RS_56_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_56_date_dim_d_date_sk_bloom_filter))) and cs_ship_customer_sk is not null and cs_sold_date_sk is not null) + Filter Operator [FIL_217] (rows=285115246 width=7) + predicate:((cs_ship_customer_sk BETWEEN DynamicValue(RS_63_c_c_customer_sk_min) AND DynamicValue(RS_63_c_c_customer_sk_max) and in_bloom_filter(cs_ship_customer_sk, DynamicValue(RS_63_c_c_customer_sk_bloom_filter))) and cs_ship_customer_sk is not null and cs_sold_date_sk is not null) TableScan [TS_49] (rows=287989836 width=7) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_ship_customer_sk"] - <-Reducer 23 [BROADCAST_EDGE] vectorized - BROADCAST [RS_226] - Group By Operator [GBY_225] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 16 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_207] - Group By Operator [GBY_204] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_201] (rows=150 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_195] <-Reducer 9 [BROADCAST_EDGE] vectorized - BROADCAST [RS_228] - Group By Operator [GBY_227] (rows=1 width=12) + BROADCAST [RS_216] + Group By Operator [GBY_215] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Reducer 5 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_168] diff --git a/ql/src/test/results/clientpositive/perf/tez/query7.q.out b/ql/src/test/results/clientpositive/perf/tez/query7.q.out index 6cd8fb58f4..2208393129 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query7.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query7.q.out @@ -53,12 +53,11 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 11 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) -Reducer 11 <- Map 10 (CUSTOM_SIMPLE_EDGE) +Map 1 <- Reducer 9 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) Reducer 3 <- Map 10 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 12 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Map 13 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) +Reducer 4 <- Map 11 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 5 <- Map 12 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) Reducer 9 <- Map 8 (CUSTOM_SIMPLE_EDGE) @@ -68,16 +67,16 @@ Stage-0 limit:100 Stage-1 Reducer 7 vectorized - File Output Operator [FS_130] - Limit [LIM_129] (rows=100 width=444) + File Output Operator [FS_125] + Limit [LIM_124] (rows=100 width=444) Number of rows:100 - Select Operator [SEL_128] (rows=310774 width=444) + Select Operator [SEL_123] (rows=310774 width=444) Output:["_col0","_col1","_col2","_col3","_col4"] <-Reducer 6 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_127] - Select Operator [SEL_126] (rows=310774 width=444) + SHUFFLE [RS_122] + Select Operator [SEL_121] (rows=310774 width=444) Output:["_col0","_col1","_col2","_col3","_col4"] - Group By Operator [GBY_125] (rows=310774 width=476) + Group By Operator [GBY_120] (rows=310774 width=476) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8"],aggregations:["sum(VALUE._col0)","count(VALUE._col1)","sum(VALUE._col2)","count(VALUE._col3)","sum(VALUE._col4)","count(VALUE._col5)","sum(VALUE._col6)","count(VALUE._col7)"],keys:KEY._col0 <-Reducer 5 [SIMPLE_EDGE] SHUFFLE [RS_29] @@ -87,13 +86,13 @@ Stage-0 Top N Key Operator [TNK_55] (rows=1441769 width=100) keys:_col18,sort order:+,top n:100 Merge Join Operator [MERGEJOIN_99] (rows=1441769 width=100) - Conds:RS_24._col1=RS_124._col0(Inner),Output:["_col4","_col5","_col6","_col7","_col18"] - <-Map 13 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_124] + Conds:RS_24._col1=RS_119._col0(Inner),Output:["_col4","_col5","_col6","_col7","_col18"] + <-Map 12 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_119] PartitionCols:_col0 - Select Operator [SEL_123] (rows=462000 width=104) + Select Operator [SEL_118] (rows=462000 width=104) Output:["_col0","_col1"] - Filter Operator [FIL_122] (rows=462000 width=104) + Filter Operator [FIL_117] (rows=462000 width=104) predicate:i_item_sk is not null TableScan [TS_12] (rows=462000 width=104) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_item_id"] @@ -101,13 +100,13 @@ Stage-0 SHUFFLE [RS_24] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_98] (rows=1441769 width=4) - Conds:RS_21._col3=RS_121._col0(Inner),Output:["_col1","_col4","_col5","_col6","_col7"] - <-Map 12 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_121] + Conds:RS_21._col3=RS_116._col0(Inner),Output:["_col1","_col4","_col5","_col6","_col7"] + <-Map 11 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_116] PartitionCols:_col0 - Select Operator [SEL_120] (rows=2300 width=174) + Select Operator [SEL_115] (rows=2300 width=174) Output:["_col0"] - Filter Operator [FIL_119] (rows=2300 width=174) + Filter Operator [FIL_114] (rows=2300 width=174) predicate:(((p_channel_email = 'N') or (p_channel_event = 'N')) and p_promo_sk is not null) TableScan [TS_9] (rows=2300 width=174) default@promotion,promotion,Tbl:COMPLETE,Col:COMPLETE,Output:["p_promo_sk","p_channel_email","p_channel_event"] @@ -115,13 +114,13 @@ Stage-0 SHUFFLE [RS_21] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_97] (rows=1441769 width=4) - Conds:RS_18._col0=RS_110._col0(Inner),Output:["_col1","_col3","_col4","_col5","_col6","_col7"] + Conds:RS_18._col0=RS_113._col0(Inner),Output:["_col1","_col3","_col4","_col5","_col6","_col7"] <-Map 10 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_110] + SHUFFLE [RS_113] PartitionCols:_col0 - Select Operator [SEL_109] (rows=652 width=8) + Select Operator [SEL_112] (rows=652 width=8) Output:["_col0"] - Filter Operator [FIL_108] (rows=652 width=8) + Filter Operator [FIL_111] (rows=652 width=8) predicate:((d_year = 1998) and d_date_sk is not null) TableScan [TS_6] (rows=73049 width=8) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year"] @@ -129,7 +128,7 @@ Stage-0 SHUFFLE [RS_18] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_96] (rows=4037893 width=4) - Conds:RS_118._col2=RS_102._col0(Inner),Output:["_col0","_col1","_col3","_col4","_col5","_col6","_col7"] + Conds:RS_110._col2=RS_102._col0(Inner),Output:["_col0","_col1","_col3","_col4","_col5","_col6","_col7"] <-Map 8 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_102] PartitionCols:_col0 @@ -140,25 +139,14 @@ Stage-0 TableScan [TS_3] (rows=1861800 width=268) default@customer_demographics,customer_demographics,Tbl:COMPLETE,Col:COMPLETE,Output:["cd_demo_sk","cd_gender","cd_marital_status","cd_education_status"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_118] + SHUFFLE [RS_110] PartitionCols:_col2 - Select Operator [SEL_117] (rows=501686735 width=340) + Select Operator [SEL_109] (rows=501686735 width=340) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] - Filter Operator [FIL_116] (rows=501686735 width=340) - predicate:((ss_cdemo_sk BETWEEN DynamicValue(RS_16_customer_demographics_cd_demo_sk_min) AND DynamicValue(RS_16_customer_demographics_cd_demo_sk_max) and in_bloom_filter(ss_cdemo_sk, DynamicValue(RS_16_customer_demographics_cd_demo_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_19_date_dim_d_date_sk_min) AND DynamicValue(RS_19_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_19_date_dim_d_date_sk_bloom_filter))) and ss_cdemo_sk is not null and ss_item_sk is not null and ss_promo_sk is not null and ss_sold_date_sk is not null) + Filter Operator [FIL_108] (rows=501686735 width=340) + predicate:((ss_cdemo_sk BETWEEN DynamicValue(RS_16_customer_demographics_cd_demo_sk_min) AND DynamicValue(RS_16_customer_demographics_cd_demo_sk_max) and in_bloom_filter(ss_cdemo_sk, DynamicValue(RS_16_customer_demographics_cd_demo_sk_bloom_filter))) and ss_cdemo_sk is not null and ss_item_sk is not null and ss_promo_sk is not null and ss_sold_date_sk is not null) TableScan [TS_0] (rows=575995635 width=340) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_cdemo_sk","ss_promo_sk","ss_quantity","ss_list_price","ss_sales_price","ss_coupon_amt"] - <-Reducer 11 [BROADCAST_EDGE] vectorized - BROADCAST [RS_115] - Group By Operator [GBY_114] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 10 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_113] - Group By Operator [GBY_112] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_111] (rows=652 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_109] <-Reducer 9 [BROADCAST_EDGE] vectorized BROADCAST [RS_107] Group By Operator [GBY_106] (rows=1 width=12) diff --git a/ql/src/test/results/clientpositive/perf/tez/query71.q.out b/ql/src/test/results/clientpositive/perf/tez/query71.q.out index e031c3aa05..61252375f0 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query71.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query71.q.out @@ -91,18 +91,16 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 19 (BROADCAST_EDGE), Reducer 21 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) -Map 10 <- Reducer 13 (BROADCAST_EDGE), Reducer 19 (BROADCAST_EDGE), Reducer 21 (BROADCAST_EDGE) -Map 14 <- Reducer 17 (BROADCAST_EDGE), Reducer 19 (BROADCAST_EDGE), Reducer 21 (BROADCAST_EDGE) +Map 1 <- Reducer 9 (BROADCAST_EDGE) +Map 10 <- Reducer 13 (BROADCAST_EDGE) +Map 14 <- Reducer 17 (BROADCAST_EDGE) Reducer 11 <- Map 10 (SIMPLE_EDGE), Map 12 (SIMPLE_EDGE), Union 3 (CONTAINS) Reducer 13 <- Map 12 (CUSTOM_SIMPLE_EDGE) Reducer 15 <- Map 14 (SIMPLE_EDGE), Map 16 (SIMPLE_EDGE), Union 3 (CONTAINS) Reducer 17 <- Map 16 (CUSTOM_SIMPLE_EDGE) -Reducer 19 <- Map 18 (CUSTOM_SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE), Union 3 (CONTAINS) -Reducer 21 <- Map 20 (CUSTOM_SIMPLE_EDGE) Reducer 4 <- Map 18 (SIMPLE_EDGE), Union 3 (SIMPLE_EDGE) -Reducer 5 <- Map 20 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) +Reducer 5 <- Map 19 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) Reducer 9 <- Map 8 (CUSTOM_SIMPLE_EDGE) @@ -112,14 +110,14 @@ Stage-0 limit:-1 Stage-1 Reducer 7 vectorized - File Output Operator [FS_188] - Select Operator [SEL_187] (rows=1991967 width=223) + File Output Operator [FS_174] + Select Operator [SEL_173] (rows=1991967 width=223) Output:["_col0","_col1","_col2","_col3","_col4"] <-Reducer 6 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_186] - Select Operator [SEL_185] (rows=1991967 width=227) + SHUFFLE [RS_172] + Select Operator [SEL_171] (rows=1991967 width=227) Output:["_col1","_col2","_col3","_col4","_col5"] - Group By Operator [GBY_184] (rows=1991967 width=223) + Group By Operator [GBY_170] (rows=1991967 width=223) Output:["_col0","_col1","_col2","_col3","_col4"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3 <-Reducer 5 [SIMPLE_EDGE] SHUFFLE [RS_46] @@ -127,13 +125,13 @@ Stage-0 Group By Operator [GBY_45] (rows=1991967 width=223) Output:["_col0","_col1","_col2","_col3","_col4"],aggregations:["sum(_col0)"],keys:_col4, _col8, _col9, _col5 Merge Join Operator [MERGEJOIN_140] (rows=1991967 width=112) - Conds:RS_41._col2=RS_173._col0(Inner),Output:["_col0","_col4","_col5","_col8","_col9"] - <-Map 20 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_173] + Conds:RS_41._col2=RS_169._col0(Inner),Output:["_col0","_col4","_col5","_col8","_col9"] + <-Map 19 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_169] PartitionCols:_col0 - Select Operator [SEL_172] (rows=43200 width=99) + Select Operator [SEL_168] (rows=43200 width=99) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_171] (rows=43200 width=99) + Filter Operator [FIL_167] (rows=43200 width=99) predicate:((t_meal_time) IN ('breakfast', 'dinner') and t_time_sk is not null) TableScan [TS_35] (rows=86400 width=99) default@time_dim,time_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["t_time_sk","t_hour","t_minute","t_meal_time"] @@ -141,13 +139,13 @@ Stage-0 SHUFFLE [RS_41] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_139] (rows=3983933 width=104) - Conds:Union 3._col1=RS_163._col0(Inner),Output:["_col0","_col2","_col4","_col5"] + Conds:Union 3._col1=RS_166._col0(Inner),Output:["_col0","_col2","_col4","_col5"] <-Map 18 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_163] + SHUFFLE [RS_166] PartitionCols:_col0 - Select Operator [SEL_162] (rows=7333 width=111) + Select Operator [SEL_165] (rows=7333 width=111) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_161] (rows=7333 width=111) + Filter Operator [FIL_164] (rows=7333 width=111) predicate:((i_manager_id = 1) and i_item_sk is not null) TableScan [TS_32] (rows=462000 width=111) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_brand_id","i_brand","i_manager_id"] @@ -158,107 +156,79 @@ Stage-0 Select Operator [SEL_146] (rows=7751851 width=98) Output:["_col0","_col1","_col2"] Merge Join Operator [MERGEJOIN_145] (rows=7751851 width=98) - Conds:RS_199._col0=RS_191._col0(Inner),Output:["_col1","_col2","_col3"] + Conds:RS_185._col0=RS_177._col0(Inner),Output:["_col1","_col2","_col3"] <-Map 12 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_191] + PARTITION_ONLY_SHUFFLE [RS_177] PartitionCols:_col0 - Select Operator [SEL_190] (rows=50 width=12) + Select Operator [SEL_176] (rows=50 width=12) Output:["_col0"] - Filter Operator [FIL_189] (rows=50 width=12) + Filter Operator [FIL_175] (rows=50 width=12) predicate:((d_moy = 12) and (d_year = 2001) and d_date_sk is not null) TableScan [TS_13] (rows=73049 width=12) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] <-Map 10 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_199] + SHUFFLE [RS_185] PartitionCols:_col0 - Select Operator [SEL_198] (rows=285116947 width=123) + Select Operator [SEL_184] (rows=285116947 width=123) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_197] (rows=285116947 width=123) - predicate:((cs_item_sk BETWEEN DynamicValue(RS_39_item_i_item_sk_min) AND DynamicValue(RS_39_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_39_item_i_item_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_17_date_dim_d_date_sk_min) AND DynamicValue(RS_17_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_17_date_dim_d_date_sk_bloom_filter))) and (cs_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(cs_sold_time_sk, DynamicValue(RS_42_time_dim_t_time_sk_bloom_filter))) and cs_item_sk is not null and cs_sold_date_sk is not null and cs_sold_time_sk is not null) + Filter Operator [FIL_183] (rows=285116947 width=123) + predicate:((cs_sold_date_sk BETWEEN DynamicValue(RS_17_date_dim_d_date_sk_min) AND DynamicValue(RS_17_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_17_date_dim_d_date_sk_bloom_filter))) and cs_item_sk is not null and cs_sold_date_sk is not null and cs_sold_time_sk is not null) TableScan [TS_10] (rows=287989836 width=123) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_sold_time_sk","cs_item_sk","cs_ext_sales_price"] - <-Reducer 19 [BROADCAST_EDGE] vectorized - BROADCAST [RS_169] - Group By Operator [GBY_167] (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_166] - Group By Operator [GBY_165] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_164] (rows=7333 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_162] - <-Reducer 21 [BROADCAST_EDGE] vectorized - BROADCAST [RS_179] - 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 20 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_176] - Group By Operator [GBY_175] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_174] (rows=43200 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_172] <-Reducer 13 [BROADCAST_EDGE] vectorized - BROADCAST [RS_196] - Group By Operator [GBY_195] (rows=1 width=12) + BROADCAST [RS_182] + Group By Operator [GBY_181] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Map 12 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_194] - Group By Operator [GBY_193] (rows=1 width=12) + PARTITION_ONLY_SHUFFLE [RS_180] + Group By Operator [GBY_179] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_192] (rows=50 width=4) + Select Operator [SEL_178] (rows=50 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_190] + Please refer to the previous Select Operator [SEL_176] <-Reducer 15 [CONTAINS] Reduce Output Operator [RS_152] PartitionCols:_col1 Select Operator [SEL_150] (rows=14384397 width=4) Output:["_col0","_col1","_col2"] Merge Join Operator [MERGEJOIN_149] (rows=14384397 width=4) - Conds:RS_210._col0=RS_202._col0(Inner),Output:["_col1","_col2","_col3"] + Conds:RS_196._col0=RS_188._col0(Inner),Output:["_col1","_col2","_col3"] <-Map 16 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_202] + PARTITION_ONLY_SHUFFLE [RS_188] PartitionCols:_col0 - Select Operator [SEL_201] (rows=50 width=12) + Select Operator [SEL_187] (rows=50 width=12) Output:["_col0"] - Filter Operator [FIL_200] (rows=50 width=12) + Filter Operator [FIL_186] (rows=50 width=12) predicate:((d_moy = 12) and (d_year = 2001) and d_date_sk is not null) TableScan [TS_24] (rows=73049 width=12) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] <-Map 14 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_210] + SHUFFLE [RS_196] PartitionCols:_col0 - Select Operator [SEL_209] (rows=525325345 width=118) + Select Operator [SEL_195] (rows=525325345 width=118) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_208] (rows=525325345 width=118) - predicate:((ss_item_sk BETWEEN DynamicValue(RS_39_item_i_item_sk_min) AND DynamicValue(RS_39_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_39_item_i_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_28_date_dim_d_date_sk_min) AND DynamicValue(RS_28_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_28_date_dim_d_date_sk_bloom_filter))) and (ss_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(ss_sold_time_sk, DynamicValue(RS_42_time_dim_t_time_sk_bloom_filter))) and ss_item_sk is not null and ss_sold_date_sk is not null and ss_sold_time_sk is not null) + Filter Operator [FIL_194] (rows=525325345 width=118) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_28_date_dim_d_date_sk_min) AND DynamicValue(RS_28_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_28_date_dim_d_date_sk_bloom_filter))) and ss_item_sk is not null and ss_sold_date_sk is not null and ss_sold_time_sk is not null) TableScan [TS_21] (rows=575995635 width=118) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_sold_time_sk","ss_item_sk","ss_ext_sales_price"] - <-Reducer 19 [BROADCAST_EDGE] vectorized - BROADCAST [RS_170] - Please refer to the previous Group By Operator [GBY_167] - <-Reducer 21 [BROADCAST_EDGE] vectorized - BROADCAST [RS_180] - Please refer to the previous Group By Operator [GBY_177] <-Reducer 17 [BROADCAST_EDGE] vectorized - BROADCAST [RS_207] - Group By Operator [GBY_206] (rows=1 width=12) + BROADCAST [RS_193] + Group By Operator [GBY_192] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Map 16 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_205] - Group By Operator [GBY_204] (rows=1 width=12) + PARTITION_ONLY_SHUFFLE [RS_191] + Group By Operator [GBY_190] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_203] (rows=50 width=4) + Select Operator [SEL_189] (rows=50 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_201] + Please refer to the previous Select Operator [SEL_187] <-Reducer 2 [CONTAINS] Reduce Output Operator [RS_144] PartitionCols:_col1 Select Operator [SEL_142] (rows=3941098 width=118) Output:["_col0","_col1","_col2"] Merge Join Operator [MERGEJOIN_141] (rows=3941098 width=118) - Conds:RS_183._col0=RS_155._col0(Inner),Output:["_col1","_col2","_col3"] + Conds:RS_163._col0=RS_155._col0(Inner),Output:["_col1","_col2","_col3"] <-Map 8 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_155] PartitionCols:_col0 @@ -269,20 +239,14 @@ Stage-0 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 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_183] + SHUFFLE [RS_163] PartitionCols:_col0 - Select Operator [SEL_182] (rows=143930836 width=123) + Select Operator [SEL_162] (rows=143930836 width=123) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_181] (rows=143930836 width=123) - predicate:((ws_item_sk BETWEEN DynamicValue(RS_39_item_i_item_sk_min) AND DynamicValue(RS_39_item_i_item_sk_max) and in_bloom_filter(ws_item_sk, DynamicValue(RS_39_item_i_item_sk_bloom_filter))) and (ws_sold_date_sk BETWEEN DynamicValue(RS_7_date_dim_d_date_sk_min) AND DynamicValue(RS_7_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_7_date_dim_d_date_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_item_sk is not null and ws_sold_date_sk is not null and ws_sold_time_sk is not null) + Filter Operator [FIL_161] (rows=143930836 width=123) + predicate:((ws_sold_date_sk BETWEEN DynamicValue(RS_7_date_dim_d_date_sk_min) AND DynamicValue(RS_7_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_7_date_dim_d_date_sk_bloom_filter))) and ws_item_sk is not null and ws_sold_date_sk is not null and ws_sold_time_sk is not null) TableScan [TS_0] (rows=144002668 width=123) default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_sold_time_sk","ws_item_sk","ws_ext_sales_price"] - <-Reducer 19 [BROADCAST_EDGE] vectorized - BROADCAST [RS_168] - Please refer to the previous Group By Operator [GBY_167] - <-Reducer 21 [BROADCAST_EDGE] vectorized - BROADCAST [RS_178] - Please refer to the previous Group By Operator [GBY_177] <-Reducer 9 [BROADCAST_EDGE] vectorized BROADCAST [RS_160] Group By Operator [GBY_159] (rows=1 width=12) diff --git a/ql/src/test/results/clientpositive/perf/tez/query72.q.out b/ql/src/test/results/clientpositive/perf/tez/query72.q.out index 700a8769a2..c9e4244da7 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query72.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query72.q.out @@ -81,20 +81,18 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 9 <- Reducer 17 (BROADCAST_EDGE), Reducer 19 (BROADCAST_EDGE), Reducer 21 (BROADCAST_EDGE) +Map 9 <- Reducer 17 (BROADCAST_EDGE) Reducer 10 <- Map 16 (SIMPLE_EDGE), Map 9 (SIMPLE_EDGE) Reducer 11 <- Map 18 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE) -Reducer 12 <- Map 20 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE) -Reducer 13 <- Map 22 (SIMPLE_EDGE), Reducer 12 (SIMPLE_EDGE) -Reducer 14 <- Map 23 (SIMPLE_EDGE), Reducer 13 (SIMPLE_EDGE) -Reducer 15 <- Map 24 (SIMPLE_EDGE), Reducer 14 (SIMPLE_EDGE) +Reducer 12 <- Map 19 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE) +Reducer 13 <- Map 20 (SIMPLE_EDGE), Reducer 12 (SIMPLE_EDGE) +Reducer 14 <- Map 21 (SIMPLE_EDGE), Reducer 13 (SIMPLE_EDGE) +Reducer 15 <- Map 22 (SIMPLE_EDGE), Reducer 14 (SIMPLE_EDGE) Reducer 17 <- Map 16 (CUSTOM_SIMPLE_EDGE) -Reducer 19 <- Map 18 (CUSTOM_SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) -Reducer 21 <- Map 20 (CUSTOM_SIMPLE_EDGE) Reducer 3 <- Reducer 15 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 25 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Map 26 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) +Reducer 4 <- Map 23 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 5 <- Map 24 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) @@ -103,14 +101,14 @@ Stage-0 limit:100 Stage-1 Reducer 7 vectorized - File Output Operator [FS_303] - Limit [LIM_302] (rows=100 width=312) + File Output Operator [FS_293] + Limit [LIM_292] (rows=100 width=312) Number of rows:100 - Select Operator [SEL_301] (rows=384313734 width=312) + Select Operator [SEL_291] (rows=384313734 width=312) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] <-Reducer 6 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_300] - Group By Operator [GBY_299] (rows=384313734 width=312) + SHUFFLE [RS_290] + Group By Operator [GBY_289] (rows=384313734 width=312) Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["count(VALUE._col0)","count(VALUE._col1)","count(VALUE._col2)"],keys:KEY._col0, KEY._col1, KEY._col2 <-Reducer 5 [SIMPLE_EDGE] SHUFFLE [RS_69] @@ -120,13 +118,13 @@ Stage-0 Select Operator [SEL_66] (rows=1574305390 width=292) Output:["_col0","_col1","_col2","_col3","_col4"] Merge Join Operator [MERGEJOIN_251] (rows=1574305390 width=292) - Conds:RS_63._col4, _col6=RS_298._col0, _col1(Left Outer),Output:["_col13","_col15","_col22","_col28"] - <-Map 26 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_298] + Conds:RS_63._col4, _col6=RS_288._col0, _col1(Left Outer),Output:["_col13","_col15","_col22","_col28"] + <-Map 24 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_288] PartitionCols:_col0, _col1 - Select Operator [SEL_297] (rows=28798881 width=8) + Select Operator [SEL_287] (rows=28798881 width=8) Output:["_col0","_col1"] - Filter Operator [FIL_296] (rows=28798881 width=8) + Filter Operator [FIL_286] (rows=28798881 width=8) predicate:cr_item_sk is not null TableScan [TS_60] (rows=28798881 width=8) default@catalog_returns,catalog_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["cr_item_sk","cr_order_number"] @@ -136,13 +134,13 @@ Stage-0 Select Operator [SEL_59] (rows=610435044 width=300) Output:["_col4","_col6","_col13","_col15","_col22","_col28"] Merge Join Operator [MERGEJOIN_250] (rows=610435044 width=300) - Conds:RS_56._col0, _col20=RS_295._col0, _col1(Inner),Output:["_col5","_col9","_col14","_col16","_col20","_col26"] - <-Map 25 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_295] + Conds:RS_56._col0, _col20=RS_285._col0, _col1(Inner),Output:["_col5","_col9","_col14","_col16","_col20","_col26"] + <-Map 23 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_285] PartitionCols:_col0, _col1 - Select Operator [SEL_294] (rows=73049 width=8) + Select Operator [SEL_284] (rows=73049 width=8) Output:["_col0","_col1"] - Filter Operator [FIL_293] (rows=73049 width=8) + Filter Operator [FIL_283] (rows=73049 width=8) predicate:(d_date_sk is not null and d_week_seq is not null) TableScan [TS_46] (rows=73049 width=8) default@date_dim,d2,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_week_seq"] @@ -161,13 +159,13 @@ Stage-0 Filter Operator [FIL_44] (rows=2726340 width=391) predicate:(UDFToDouble(_col20) > (UDFToDouble(_col9) + 5.0D)) Merge Join Operator [MERGEJOIN_248] (rows=8179022 width=391) - Conds:RS_41._col1=RS_292._col0(Inner),Output:["_col4","_col6","_col7","_col9","_col10","_col16","_col18","_col20"] - <-Map 24 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_292] + Conds:RS_41._col1=RS_282._col0(Inner),Output:["_col4","_col6","_col7","_col9","_col10","_col16","_col18","_col20"] + <-Map 22 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_282] PartitionCols:_col0 - Select Operator [SEL_291] (rows=73049 width=98) + Select Operator [SEL_281] (rows=73049 width=98) Output:["_col0","_col1"] - Filter Operator [FIL_290] (rows=73049 width=98) + Filter Operator [FIL_280] (rows=73049 width=98) predicate:d_date_sk is not null TableScan [TS_23] (rows=73049 width=98) default@date_dim,d3,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"] @@ -175,13 +173,13 @@ Stage-0 SHUFFLE [RS_41] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_247] (rows=8179022 width=300) - Conds:RS_38._col4=RS_289._col0(Inner),Output:["_col1","_col4","_col6","_col7","_col9","_col10","_col16","_col18"] - <-Map 23 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_289] + Conds:RS_38._col4=RS_279._col0(Inner),Output:["_col1","_col4","_col6","_col7","_col9","_col10","_col16","_col18"] + <-Map 21 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_279] PartitionCols:_col0 - Select Operator [SEL_288] (rows=462000 width=188) + Select Operator [SEL_278] (rows=462000 width=188) Output:["_col0","_col1"] - Filter Operator [FIL_287] (rows=462000 width=188) + Filter Operator [FIL_277] (rows=462000 width=188) predicate:i_item_sk is not null TableScan [TS_20] (rows=462000 width=188) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_item_desc"] @@ -189,11 +187,11 @@ Stage-0 SHUFFLE [RS_38] PartitionCols:_col4 Merge Join Operator [MERGEJOIN_246] (rows=8179022 width=116) - Conds:RS_35._col5=RS_286._col0(Left Outer),Output:["_col1","_col4","_col6","_col7","_col9","_col10","_col16"] - <-Map 22 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_286] + Conds:RS_35._col5=RS_276._col0(Left Outer),Output:["_col1","_col4","_col6","_col7","_col9","_col10","_col16"] + <-Map 20 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_276] PartitionCols:_col0 - Select Operator [SEL_285] (rows=2300 width=4) + Select Operator [SEL_275] (rows=2300 width=4) Output:["_col0"] TableScan [TS_18] (rows=2300 width=4) default@promotion,promotion,Tbl:COMPLETE,Col:COMPLETE,Output:["p_promo_sk"] @@ -201,13 +199,13 @@ Stage-0 SHUFFLE [RS_35] PartitionCols:_col5 Merge Join Operator [MERGEJOIN_245] (rows=8179022 width=115) - Conds:RS_32._col3=RS_276._col0(Inner),Output:["_col1","_col4","_col5","_col6","_col7","_col9","_col10"] - <-Map 20 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_276] + Conds:RS_32._col3=RS_274._col0(Inner),Output:["_col1","_col4","_col5","_col6","_col7","_col9","_col10"] + <-Map 19 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_274] PartitionCols:_col0 - Select Operator [SEL_275] (rows=1440 width=97) + Select Operator [SEL_273] (rows=1440 width=97) Output:["_col0"] - Filter Operator [FIL_274] (rows=1440 width=96) + Filter Operator [FIL_272] (rows=1440 width=96) predicate:((hd_buy_potential = '1001-5000') and hd_demo_sk is not null) TableScan [TS_15] (rows=7200 width=96) default@household_demographics,household_demographics,Tbl:COMPLETE,Col:COMPLETE,Output:["hd_demo_sk","hd_buy_potential"] @@ -215,13 +213,13 @@ Stage-0 SHUFFLE [RS_32] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_244] (rows=40895108 width=121) - Conds:RS_29._col2=RS_268._col0(Inner),Output:["_col1","_col3","_col4","_col5","_col6","_col7","_col9","_col10"] + Conds:RS_29._col2=RS_271._col0(Inner),Output:["_col1","_col3","_col4","_col5","_col6","_col7","_col9","_col10"] <-Map 18 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_268] + SHUFFLE [RS_271] PartitionCols:_col0 - Select Operator [SEL_267] (rows=265971 width=89) + Select Operator [SEL_270] (rows=265971 width=89) Output:["_col0"] - Filter Operator [FIL_266] (rows=265971 width=89) + Filter Operator [FIL_269] (rows=265971 width=89) predicate:((cd_marital_status = 'M') and cd_demo_sk is not null) TableScan [TS_12] (rows=1861800 width=89) default@customer_demographics,customer_demographics,Tbl:COMPLETE,Col:COMPLETE,Output:["cd_demo_sk","cd_marital_status"] @@ -229,7 +227,7 @@ Stage-0 SHUFFLE [RS_29] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_243] (rows=100076475 width=125) - Conds:RS_284._col0=RS_260._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col9","_col10"] + Conds:RS_268._col0=RS_260._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col9","_col10"] <-Map 16 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_260] PartitionCols:_col0 @@ -240,12 +238,12 @@ Stage-0 TableScan [TS_9] (rows=73049 width=106) default@date_dim,d1,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date","d_week_seq","d_year"] <-Map 9 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_284] + SHUFFLE [RS_268] PartitionCols:_col0 - Select Operator [SEL_283] (rows=282274763 width=31) + Select Operator [SEL_267] (rows=282274763 width=31) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] - Filter Operator [FIL_282] (rows=282274763 width=31) - predicate:((cs_bill_cdemo_sk BETWEEN DynamicValue(RS_30_customer_demographics_cd_demo_sk_min) AND DynamicValue(RS_30_customer_demographics_cd_demo_sk_max) and in_bloom_filter(cs_bill_cdemo_sk, DynamicValue(RS_30_customer_demographics_cd_demo_sk_bloom_filter))) and (cs_bill_hdemo_sk BETWEEN DynamicValue(RS_33_household_demographics_hd_demo_sk_min) AND DynamicValue(RS_33_household_demographics_hd_demo_sk_max) and in_bloom_filter(cs_bill_hdemo_sk, DynamicValue(RS_33_household_demographics_hd_demo_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_27_d1_d_date_sk_min) AND DynamicValue(RS_27_d1_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_27_d1_d_date_sk_bloom_filter))) and cs_bill_cdemo_sk is not null and cs_bill_hdemo_sk is not null and cs_item_sk is not null and cs_ship_date_sk is not null and cs_sold_date_sk is not null) + Filter Operator [FIL_266] (rows=282274763 width=31) + predicate:((cs_sold_date_sk BETWEEN DynamicValue(RS_27_d1_d_date_sk_min) AND DynamicValue(RS_27_d1_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_27_d1_d_date_sk_bloom_filter))) and cs_bill_cdemo_sk is not null and cs_bill_hdemo_sk is not null and cs_item_sk is not null and cs_ship_date_sk is not null and cs_sold_date_sk is not null) TableScan [TS_6] (rows=287989836 width=31) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_ship_date_sk","cs_bill_cdemo_sk","cs_bill_hdemo_sk","cs_item_sk","cs_promo_sk","cs_order_number","cs_quantity"] <-Reducer 17 [BROADCAST_EDGE] vectorized @@ -259,28 +257,6 @@ Stage-0 Select Operator [SEL_261] (rows=652 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_259] - <-Reducer 19 [BROADCAST_EDGE] vectorized - BROADCAST [RS_273] - Group By Operator [GBY_272] (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 - PARTITION_ONLY_SHUFFLE [RS_271] - Group By Operator [GBY_270] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_269] (rows=265971 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_267] - <-Reducer 21 [BROADCAST_EDGE] vectorized - BROADCAST [RS_281] - Group By Operator [GBY_280] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 20 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_279] - Group By Operator [GBY_278] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_277] (rows=1440 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_275] <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_52] PartitionCols:_col1 diff --git a/ql/src/test/results/clientpositive/perf/tez/query73.q.out b/ql/src/test/results/clientpositive/perf/tez/query73.q.out index 7aafbcf61c..076916e9b3 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query73.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query73.q.out @@ -67,15 +67,13 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 4 <- Reducer 10 (BROADCAST_EDGE), Reducer 12 (BROADCAST_EDGE), Reducer 14 (BROADCAST_EDGE) +Map 4 <- Reducer 10 (BROADCAST_EDGE) Reducer 10 <- Map 9 (CUSTOM_SIMPLE_EDGE) -Reducer 12 <- Map 11 (CUSTOM_SIMPLE_EDGE) -Reducer 14 <- Map 13 (CUSTOM_SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (SIMPLE_EDGE) Reducer 5 <- Map 4 (SIMPLE_EDGE), Map 9 (SIMPLE_EDGE) Reducer 6 <- Map 11 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) -Reducer 7 <- Map 13 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) +Reducer 7 <- Map 12 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) Reducer 8 <- Reducer 7 (SIMPLE_EDGE) Stage-0 @@ -83,15 +81,15 @@ Stage-0 limit:-1 Stage-1 Reducer 3 vectorized - File Output Operator [FS_136] - Select Operator [SEL_135] (rows=59862 width=364) + File Output Operator [FS_126] + Select Operator [SEL_125] (rows=59862 width=364) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_35] Select Operator [SEL_34] (rows=59862 width=364) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] Merge Join Operator [MERGEJOIN_100] (rows=59862 width=364) - Conds:RS_103._col0=RS_134._col1(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col7"] + Conds:RS_103._col0=RS_124._col1(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col7"] <-Map 1 [SIMPLE_EDGE] vectorized SHUFFLE [RS_103] PartitionCols:_col0 @@ -102,13 +100,13 @@ Stage-0 TableScan [TS_0] (rows=80000000 width=356) default@customer,customer,Tbl:COMPLETE,Col:COMPLETE,Output:["c_customer_sk","c_salutation","c_first_name","c_last_name","c_preferred_cust_flag"] <-Reducer 8 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_134] + SHUFFLE [RS_124] PartitionCols:_col1 - Filter Operator [FIL_133] (rows=59862 width=12) + Filter Operator [FIL_123] (rows=59862 width=12) predicate:_col2 BETWEEN 1 AND 5 - Select Operator [SEL_132] (rows=1197233 width=12) + Select Operator [SEL_122] (rows=1197233 width=12) Output:["_col0","_col1","_col2"] - Group By Operator [GBY_131] (rows=1197233 width=12) + Group By Operator [GBY_121] (rows=1197233 width=12) Output:["_col0","_col1","_col2"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1 <-Reducer 7 [SIMPLE_EDGE] SHUFFLE [RS_26] @@ -116,13 +114,13 @@ Stage-0 Group By Operator [GBY_25] (rows=1197233 width=12) Output:["_col0","_col1","_col2"],aggregations:["count()"],keys:_col1, _col4 Merge Join Operator [MERGEJOIN_99] (rows=1197233 width=4) - Conds:RS_21._col3=RS_122._col0(Inner),Output:["_col1","_col4"] - <-Map 13 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_122] + Conds:RS_21._col3=RS_120._col0(Inner),Output:["_col1","_col4"] + <-Map 12 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_120] PartitionCols:_col0 - Select Operator [SEL_121] (rows=85 width=102) + Select Operator [SEL_119] (rows=85 width=102) Output:["_col0"] - Filter Operator [FIL_120] (rows=85 width=102) + Filter Operator [FIL_118] (rows=85 width=102) predicate:((s_county) IN ('Mobile County', 'Maverick County', 'Huron County', 'Kittitas County') and s_store_sk is not null) TableScan [TS_12] (rows=1704 width=102) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_county"] @@ -130,13 +128,13 @@ Stage-0 SHUFFLE [RS_21] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_98] (rows=2973700 width=4) - Conds:RS_18._col2=RS_114._col0(Inner),Output:["_col1","_col3","_col4"] + Conds:RS_18._col2=RS_117._col0(Inner),Output:["_col1","_col3","_col4"] <-Map 11 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_114] + SHUFFLE [RS_117] PartitionCols:_col0 - Select Operator [SEL_113] (rows=480 width=104) + Select Operator [SEL_116] (rows=480 width=104) Output:["_col0"] - Filter Operator [FIL_112] (rows=480 width=104) + Filter Operator [FIL_115] (rows=480 width=104) predicate:((hd_buy_potential) IN ('>10000', 'unknown') and (hd_vehicle_count > 0) and CASE WHEN ((hd_vehicle_count > 0)) THEN (((UDFToDouble(hd_dep_count) / UDFToDouble(hd_vehicle_count)) > 1.0D)) ELSE (null) END and hd_demo_sk is not null) TableScan [TS_9] (rows=7200 width=104) default@household_demographics,household_demographics,Tbl:COMPLETE,Col:COMPLETE,Output:["hd_demo_sk","hd_buy_potential","hd_dep_count","hd_vehicle_count"] @@ -144,7 +142,7 @@ Stage-0 SHUFFLE [RS_18] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_97] (rows=44605486 width=10) - Conds:RS_130._col0=RS_106._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + Conds:RS_114._col0=RS_106._col0(Inner),Output:["_col1","_col2","_col3","_col4"] <-Map 9 [SIMPLE_EDGE] vectorized SHUFFLE [RS_106] PartitionCols:_col0 @@ -155,12 +153,12 @@ Stage-0 TableScan [TS_6] (rows=73049 width=12) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_dom"] <-Map 4 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_130] + SHUFFLE [RS_114] PartitionCols:_col0 - Select Operator [SEL_129] (rows=479121995 width=19) + Select Operator [SEL_113] (rows=479121995 width=19) Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_128] (rows=479121995 width=19) - predicate:((ss_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(ss_hdemo_sk, DynamicValue(RS_19_household_demographics_hd_demo_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_16_date_dim_d_date_sk_min) AND DynamicValue(RS_16_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_16_date_dim_d_date_sk_bloom_filter))) and (ss_store_sk BETWEEN DynamicValue(RS_22_store_s_store_sk_min) AND DynamicValue(RS_22_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_22_store_s_store_sk_bloom_filter))) and ss_customer_sk is not null and ss_hdemo_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_112] (rows=479121995 width=19) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_16_date_dim_d_date_sk_min) AND DynamicValue(RS_16_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_16_date_dim_d_date_sk_bloom_filter))) and ss_customer_sk is not null and ss_hdemo_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) TableScan [TS_3] (rows=575995635 width=19) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_customer_sk","ss_hdemo_sk","ss_store_sk","ss_ticket_number"] <-Reducer 10 [BROADCAST_EDGE] vectorized @@ -174,26 +172,4 @@ Stage-0 Select Operator [SEL_107] (rows=170 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_105] - <-Reducer 12 [BROADCAST_EDGE] vectorized - BROADCAST [RS_119] - Group By Operator [GBY_118] (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 - SHUFFLE [RS_117] - Group By Operator [GBY_116] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_115] (rows=480 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_113] - <-Reducer 14 [BROADCAST_EDGE] vectorized - BROADCAST [RS_127] - Group By Operator [GBY_126] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 13 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_125] - Group By Operator [GBY_124] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_123] (rows=85 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_121] diff --git a/ql/src/test/results/clientpositive/perf/tez/query75.q.out b/ql/src/test/results/clientpositive/perf/tez/query75.q.out index 9968adef41..c0d4e061b3 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query75.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query75.q.out @@ -157,45 +157,39 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 12 (BROADCAST_EDGE), Reducer 38 (BROADCAST_EDGE) -Map 45 <- Reducer 16 (BROADCAST_EDGE), Reducer 39 (BROADCAST_EDGE) -Map 47 <- Reducer 20 (BROADCAST_EDGE), Reducer 40 (BROADCAST_EDGE) -Map 49 <- Reducer 28 (BROADCAST_EDGE), Reducer 41 (BROADCAST_EDGE) -Map 50 <- Reducer 32 (BROADCAST_EDGE), Reducer 42 (BROADCAST_EDGE) -Map 51 <- Reducer 36 (BROADCAST_EDGE), Reducer 43 (BROADCAST_EDGE) +Map 1 <- Reducer 12 (BROADCAST_EDGE) +Map 39 <- Reducer 16 (BROADCAST_EDGE) +Map 41 <- Reducer 20 (BROADCAST_EDGE) +Map 43 <- Reducer 28 (BROADCAST_EDGE) +Map 44 <- Reducer 32 (BROADCAST_EDGE) +Map 45 <- Reducer 36 (BROADCAST_EDGE) Reducer 10 <- Reducer 9 (SIMPLE_EDGE) Reducer 12 <- Map 11 (CUSTOM_SIMPLE_EDGE) -Reducer 13 <- Map 11 (SIMPLE_EDGE), Map 45 (SIMPLE_EDGE) +Reducer 13 <- Map 11 (SIMPLE_EDGE), Map 39 (SIMPLE_EDGE) Reducer 14 <- Map 37 (SIMPLE_EDGE), Reducer 13 (SIMPLE_EDGE) -Reducer 15 <- Map 46 (SIMPLE_EDGE), Reducer 14 (SIMPLE_EDGE), Union 5 (CONTAINS) +Reducer 15 <- Map 40 (SIMPLE_EDGE), Reducer 14 (SIMPLE_EDGE), Union 5 (CONTAINS) Reducer 16 <- Map 11 (CUSTOM_SIMPLE_EDGE) -Reducer 17 <- Map 11 (SIMPLE_EDGE), Map 47 (SIMPLE_EDGE) +Reducer 17 <- Map 11 (SIMPLE_EDGE), Map 41 (SIMPLE_EDGE) Reducer 18 <- Map 37 (SIMPLE_EDGE), Reducer 17 (SIMPLE_EDGE) -Reducer 19 <- Map 48 (SIMPLE_EDGE), Reducer 18 (SIMPLE_EDGE), Union 7 (CONTAINS) +Reducer 19 <- Map 42 (SIMPLE_EDGE), Reducer 18 (SIMPLE_EDGE), Union 7 (CONTAINS) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 11 (SIMPLE_EDGE) Reducer 20 <- Map 11 (CUSTOM_SIMPLE_EDGE) -Reducer 21 <- Map 11 (SIMPLE_EDGE), Map 49 (SIMPLE_EDGE) +Reducer 21 <- Map 11 (SIMPLE_EDGE), Map 43 (SIMPLE_EDGE) Reducer 22 <- Map 37 (SIMPLE_EDGE), Reducer 21 (SIMPLE_EDGE) -Reducer 23 <- Map 44 (SIMPLE_EDGE), Reducer 22 (SIMPLE_EDGE), Union 24 (CONTAINS) +Reducer 23 <- Map 38 (SIMPLE_EDGE), Reducer 22 (SIMPLE_EDGE), Union 24 (CONTAINS) Reducer 25 <- Union 24 (SIMPLE_EDGE), Union 26 (CONTAINS) Reducer 27 <- Union 26 (SIMPLE_EDGE) Reducer 28 <- Map 11 (CUSTOM_SIMPLE_EDGE) -Reducer 29 <- Map 11 (SIMPLE_EDGE), Map 50 (SIMPLE_EDGE) +Reducer 29 <- Map 11 (SIMPLE_EDGE), Map 44 (SIMPLE_EDGE) Reducer 3 <- Map 37 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 30 <- Map 37 (SIMPLE_EDGE), Reducer 29 (SIMPLE_EDGE) -Reducer 31 <- Map 46 (SIMPLE_EDGE), Reducer 30 (SIMPLE_EDGE), Union 24 (CONTAINS) +Reducer 31 <- Map 40 (SIMPLE_EDGE), Reducer 30 (SIMPLE_EDGE), Union 24 (CONTAINS) Reducer 32 <- Map 11 (CUSTOM_SIMPLE_EDGE) -Reducer 33 <- Map 11 (SIMPLE_EDGE), Map 51 (SIMPLE_EDGE) +Reducer 33 <- Map 11 (SIMPLE_EDGE), Map 45 (SIMPLE_EDGE) Reducer 34 <- Map 37 (SIMPLE_EDGE), Reducer 33 (SIMPLE_EDGE) -Reducer 35 <- Map 48 (SIMPLE_EDGE), Reducer 34 (SIMPLE_EDGE), Union 26 (CONTAINS) +Reducer 35 <- Map 42 (SIMPLE_EDGE), Reducer 34 (SIMPLE_EDGE), Union 26 (CONTAINS) Reducer 36 <- Map 11 (CUSTOM_SIMPLE_EDGE) -Reducer 38 <- Map 37 (CUSTOM_SIMPLE_EDGE) -Reducer 39 <- Map 37 (CUSTOM_SIMPLE_EDGE) -Reducer 4 <- Map 44 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE), Union 5 (CONTAINS) -Reducer 40 <- Map 37 (CUSTOM_SIMPLE_EDGE) -Reducer 41 <- Map 37 (CUSTOM_SIMPLE_EDGE) -Reducer 42 <- Map 37 (CUSTOM_SIMPLE_EDGE) -Reducer 43 <- Map 37 (CUSTOM_SIMPLE_EDGE) +Reducer 4 <- Map 38 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE), Union 5 (CONTAINS) Reducer 6 <- Union 5 (SIMPLE_EDGE), Union 7 (CONTAINS) Reducer 8 <- Union 7 (SIMPLE_EDGE) Reducer 9 <- Reducer 27 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) @@ -205,12 +199,12 @@ Stage-0 limit:-1 Stage-1 Reducer 10 vectorized - File Output Operator [FS_638] - Select Operator [SEL_637] (rows=100 width=160) + File Output Operator [FS_618] + Select Operator [SEL_617] (rows=100 width=160) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9"] - Limit [LIM_636] (rows=100 width=152) + Limit [LIM_616] (rows=100 width=152) Number of rows:100 - Select Operator [SEL_635] (rows=3422897230256 width=151) + Select Operator [SEL_615] (rows=3422897230256 width=151) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] <-Reducer 9 [SIMPLE_EDGE] SHUFFLE [RS_175] @@ -219,21 +213,21 @@ Stage-0 Filter Operator [FIL_173] (rows=3422897230256 width=255) predicate:((CAST( _col10 AS decimal(17,2)) / CAST( _col4 AS decimal(17,2))) < 0.9) Merge Join Operator [MERGEJOIN_518] (rows=10268691690770 width=255) - Conds:RS_631._col0, _col1, _col2, _col3=RS_634._col0, _col1, _col2, _col3(Inner),Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col10","_col11"] + Conds:RS_611._col0, _col1, _col2, _col3=RS_614._col0, _col1, _col2, _col3(Inner),Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col10","_col11"] <-Reducer 27 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_634] + SHUFFLE [RS_614] PartitionCols:_col0, _col1, _col2, _col3 - Group By Operator [GBY_633] (rows=84235776 width=135) + Group By Operator [GBY_613] (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_632] (rows=736356923 width=131) + Group By Operator [GBY_612] (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_670] + Reduce Output Operator [RS_644] PartitionCols:_col0, _col1, _col2, _col3 - Group By Operator [GBY_669] (rows=736356923 width=131) + Group By Operator [GBY_643] (rows=736356923 width=131) Output:["_col0","_col1","_col2","_col3","_col4","_col5"],keys:_col0, _col1, _col2, _col3, _col4, _col5 - Group By Operator [GBY_668] (rows=621178955 width=131) + Group By Operator [GBY_642] (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] @@ -244,13 +238,13 @@ Stage-0 Select Operator [SEL_539] (rows=170474971 width=131) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] Merge Join Operator [MERGEJOIN_538] (rows=170474971 width=234) - Conds:RS_103._col1, _col2=RS_625._col0, _col1(Left Outer),Output:["_col3","_col4","_col8","_col9","_col10","_col12","_col15","_col16"] - <-Map 44 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_625] + Conds:RS_103._col1, _col2=RS_605._col0, _col1(Left Outer),Output:["_col3","_col4","_col8","_col9","_col10","_col12","_col15","_col16"] + <-Map 38 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_605] PartitionCols:_col0, _col1 - Select Operator [SEL_623] (rows=28798881 width=121) + Select Operator [SEL_603] (rows=28798881 width=121) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_622] (rows=28798881 width=121) + Filter Operator [FIL_602] (rows=28798881 width=121) predicate:cr_item_sk is not null 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"] @@ -260,11 +254,11 @@ Stage-0 Merge Join Operator [MERGEJOIN_510] (rows=96821196 width=138) Conds:RS_100._col1=RS_599._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col8","_col9","_col10","_col12"] <-Map 37 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_599] + SHUFFLE [RS_599] PartitionCols:_col0 - Select Operator [SEL_592] (rows=45745 width=109) + Select Operator [SEL_595] (rows=45745 width=109) Output:["_col0","_col1","_col2","_col3","_col5"] - Filter Operator [FIL_591] (rows=45745 width=109) + Filter Operator [FIL_594] (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_item_sk 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"] @@ -272,7 +266,7 @@ Stage-0 SHUFFLE [RS_100] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_509] (rows=101592102 width=122) - Conds:RS_667._col0=RS_571._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + Conds:RS_641._col0=RS_571._col0(Inner),Output:["_col1","_col2","_col3","_col4"] <-Map 11 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_571] PartitionCols:_col0 @@ -282,18 +276,18 @@ Stage-0 predicate:((d_year = 2002) and d_date_sk is not null) 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_667] + <-Map 43 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_641] PartitionCols:_col0 - Select Operator [SEL_666] (rows=286549727 width=127) + Select Operator [SEL_640] (rows=286549727 width=127) Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_665] (rows=286549727 width=127) - predicate:((cs_item_sk BETWEEN DynamicValue(RS_101_item_i_item_sk_min) AND DynamicValue(RS_101_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_101_item_i_item_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_98_date_dim_d_date_sk_min) AND DynamicValue(RS_98_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_98_date_dim_d_date_sk_bloom_filter))) and cs_item_sk is not null and cs_sold_date_sk is not null) + Filter Operator [FIL_639] (rows=286549727 width=127) + predicate:((cs_sold_date_sk BETWEEN DynamicValue(RS_98_date_dim_d_date_sk_min) AND DynamicValue(RS_98_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_98_date_dim_d_date_sk_bloom_filter))) and cs_item_sk is not null and cs_sold_date_sk is not null) TableScan [TS_85] (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_662] - Group By Operator [GBY_661] (rows=1 width=12) + BROADCAST [RS_638] + Group By Operator [GBY_637] (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_586] @@ -302,17 +296,6 @@ Stage-0 Select Operator [SEL_572] (rows=652 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_562] - <-Reducer 41 [BROADCAST_EDGE] vectorized - BROADCAST [RS_664] - Group By Operator [GBY_663] (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_614] - Group By Operator [GBY_608] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_600] (rows=45745 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_592] <-Reducer 31 [CONTAINS] Reduce Output Operator [RS_551] PartitionCols:_col0, _col1, _col2, _col3, _col4, _col5 @@ -321,13 +304,13 @@ Stage-0 Select Operator [SEL_548] (rows=450703984 width=131) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] Merge Join Operator [MERGEJOIN_547] (rows=450703984 width=204) - Conds:RS_125._col1, _col2=RS_649._col0, _col1(Left Outer),Output:["_col3","_col4","_col8","_col9","_col10","_col12","_col15","_col16"] - <-Map 46 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_649] + Conds:RS_125._col1, _col2=RS_627._col0, _col1(Left Outer),Output:["_col3","_col4","_col8","_col9","_col10","_col12","_col15","_col16"] + <-Map 40 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_627] PartitionCols:_col0, _col1 - Select Operator [SEL_647] (rows=57591150 width=119) + Select Operator [SEL_625] (rows=57591150 width=119) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_646] (rows=57591150 width=119) + Filter Operator [FIL_624] (rows=57591150 width=119) predicate:sr_item_sk is not null TableScan [TS_31] (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"] @@ -335,16 +318,16 @@ Stage-0 SHUFFLE [RS_125] PartitionCols:_col1, _col2 Merge Join Operator [MERGEJOIN_513] (rows=187186493 width=124) - Conds:RS_122._col1=RS_601._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col8","_col9","_col10","_col12"] + Conds:RS_122._col1=RS_600._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col8","_col9","_col10","_col12"] <-Map 37 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_601] + SHUFFLE [RS_600] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_592] + Please refer to the previous Select Operator [SEL_595] <-Reducer 29 [SIMPLE_EDGE] SHUFFLE [RS_122] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_512] (rows=196410188 width=109) - Conds:RS_677._col0=RS_573._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + Conds:RS_649._col0=RS_573._col0(Inner),Output:["_col1","_col2","_col3","_col4"] <-Map 11 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_573] PartitionCols:_col0 @@ -353,18 +336,18 @@ Stage-0 Filter Operator [FIL_559] (rows=652 width=8) predicate:((d_year = 2002) and d_date_sk is not null) Please refer to the previous TableScan [TS_3] - <-Map 50 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_677] + <-Map 44 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_649] PartitionCols:_col0 - Select Operator [SEL_676] (rows=550076554 width=122) + Select Operator [SEL_648] (rows=550076554 width=122) Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_675] (rows=550076554 width=122) - predicate:((ss_item_sk BETWEEN DynamicValue(RS_123_item_i_item_sk_min) AND DynamicValue(RS_123_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_123_item_i_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_120_date_dim_d_date_sk_min) AND DynamicValue(RS_120_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_120_date_dim_d_date_sk_bloom_filter))) and ss_item_sk is not null and ss_sold_date_sk is not null) + Filter Operator [FIL_647] (rows=550076554 width=122) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_120_date_dim_d_date_sk_min) AND DynamicValue(RS_120_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_120_date_dim_d_date_sk_bloom_filter))) and ss_item_sk is not null and ss_sold_date_sk is not null) TableScan [TS_107] (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_672] - Group By Operator [GBY_671] (rows=1 width=12) + BROADCAST [RS_646] + Group By Operator [GBY_645] (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_587] @@ -373,17 +356,6 @@ Stage-0 Select Operator [SEL_574] (rows=652 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_563] - <-Reducer 42 [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_615] - Group By Operator [GBY_609] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_602] (rows=45745 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_592] <-Reducer 35 [CONTAINS] Reduce Output Operator [RS_556] PartitionCols:_col0, _col1, _col2, _col3 @@ -392,13 +364,13 @@ Stage-0 Select Operator [SEL_553] (rows=115177968 width=131) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] Merge Join Operator [MERGEJOIN_552] (rows=115177968 width=220) - Conds:RS_154._col1, _col2=RS_660._col0, _col1(Left Outer),Output:["_col3","_col4","_col8","_col9","_col10","_col12","_col15","_col16"] - <-Map 48 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_660] + Conds:RS_154._col1, _col2=RS_636._col0, _col1(Left Outer),Output:["_col3","_col4","_col8","_col9","_col10","_col12","_col15","_col16"] + <-Map 42 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_636] PartitionCols:_col0, _col1 - Select Operator [SEL_658] (rows=14398467 width=118) + Select Operator [SEL_634] (rows=14398467 width=118) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_657] (rows=14398467 width=118) + Filter Operator [FIL_633] (rows=14398467 width=118) predicate:wr_item_sk is not null TableScan [TS_60] (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"] @@ -406,16 +378,16 @@ Stage-0 SHUFFLE [RS_154] PartitionCols:_col1, _col2 Merge Join Operator [MERGEJOIN_516] (rows=48990732 width=139) - Conds:RS_151._col1=RS_603._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col8","_col9","_col10","_col12"] + Conds:RS_151._col1=RS_601._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col8","_col9","_col10","_col12"] <-Map 37 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_603] + SHUFFLE [RS_601] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_592] + Please refer to the previous Select Operator [SEL_595] <-Reducer 33 [SIMPLE_EDGE] SHUFFLE [RS_151] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_515] (rows=51404771 width=123) - Conds:RS_684._col0=RS_575._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + Conds:RS_654._col0=RS_575._col0(Inner),Output:["_col1","_col2","_col3","_col4"] <-Map 11 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_575] PartitionCols:_col0 @@ -424,18 +396,18 @@ Stage-0 Filter Operator [FIL_560] (rows=652 width=8) predicate:((d_year = 2002) and d_date_sk is not null) Please refer to the previous TableScan [TS_3] - <-Map 51 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_684] + <-Map 45 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_654] PartitionCols:_col0 - Select Operator [SEL_683] (rows=143966864 width=127) + Select Operator [SEL_653] (rows=143966864 width=127) Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_682] (rows=143966864 width=127) - predicate:((ws_item_sk BETWEEN DynamicValue(RS_152_item_i_item_sk_min) AND DynamicValue(RS_152_item_i_item_sk_max) and in_bloom_filter(ws_item_sk, DynamicValue(RS_152_item_i_item_sk_bloom_filter))) and (ws_sold_date_sk BETWEEN DynamicValue(RS_149_date_dim_d_date_sk_min) AND DynamicValue(RS_149_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_149_date_dim_d_date_sk_bloom_filter))) and ws_item_sk is not null and ws_sold_date_sk is not null) + Filter Operator [FIL_652] (rows=143966864 width=127) + predicate:((ws_sold_date_sk BETWEEN DynamicValue(RS_149_date_dim_d_date_sk_min) AND DynamicValue(RS_149_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_149_date_dim_d_date_sk_bloom_filter))) and ws_item_sk is not null and ws_sold_date_sk is not null) TableScan [TS_136] (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_679] - Group By Operator [GBY_678] (rows=1 width=12) + BROADCAST [RS_651] + Group By Operator [GBY_650] (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_588] @@ -444,23 +416,12 @@ Stage-0 Select Operator [SEL_576] (rows=652 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_564] - <-Reducer 43 [BROADCAST_EDGE] vectorized - BROADCAST [RS_681] - Group By Operator [GBY_680] (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_616] - Group By Operator [GBY_610] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_604] (rows=45745 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_592] <-Reducer 8 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_631] + SHUFFLE [RS_611] PartitionCols:_col0, _col1, _col2, _col3 - Group By Operator [GBY_630] (rows=84235776 width=135) + Group By Operator [GBY_610] (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_629] (rows=736356923 width=131) + Group By Operator [GBY_609] (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] @@ -471,25 +432,25 @@ Stage-0 Select Operator [SEL_534] (rows=115177968 width=131) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] Merge Join Operator [MERGEJOIN_533] (rows=115177968 width=220) - Conds:RS_69._col1, _col2=RS_659._col0, _col1(Left Outer),Output:["_col3","_col4","_col8","_col9","_col10","_col12","_col15","_col16"] - <-Map 48 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_659] + Conds:RS_69._col1, _col2=RS_635._col0, _col1(Left Outer),Output:["_col3","_col4","_col8","_col9","_col10","_col12","_col15","_col16"] + <-Map 42 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_635] PartitionCols:_col0, _col1 - Please refer to the previous Select Operator [SEL_658] + Please refer to the previous Select Operator [SEL_634] <-Reducer 18 [SIMPLE_EDGE] SHUFFLE [RS_69] PartitionCols:_col1, _col2 Merge Join Operator [MERGEJOIN_507] (rows=48990732 width=139) - Conds:RS_66._col1=RS_597._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col8","_col9","_col10","_col12"] + Conds:RS_66._col1=RS_598._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col8","_col9","_col10","_col12"] <-Map 37 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_597] + SHUFFLE [RS_598] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_592] + Please refer to the previous Select Operator [SEL_595] <-Reducer 17 [SIMPLE_EDGE] SHUFFLE [RS_66] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_506] (rows=51404771 width=123) - Conds:RS_656._col0=RS_569._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + Conds:RS_632._col0=RS_569._col0(Inner),Output:["_col1","_col2","_col3","_col4"] <-Map 11 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_569] PartitionCols:_col0 @@ -498,18 +459,18 @@ Stage-0 Filter Operator [FIL_557] (rows=652 width=8) predicate:((d_year = 2001) and d_date_sk is not null) Please refer to the previous TableScan [TS_3] - <-Map 47 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_656] + <-Map 41 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_632] PartitionCols:_col0 - Select Operator [SEL_655] (rows=143966864 width=127) + Select Operator [SEL_631] (rows=143966864 width=127) Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_654] (rows=143966864 width=127) - predicate:((ws_item_sk BETWEEN DynamicValue(RS_67_item_i_item_sk_min) AND DynamicValue(RS_67_item_i_item_sk_max) and in_bloom_filter(ws_item_sk, DynamicValue(RS_67_item_i_item_sk_bloom_filter))) and (ws_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(ws_sold_date_sk, DynamicValue(RS_64_date_dim_d_date_sk_bloom_filter))) and ws_item_sk is not null and ws_sold_date_sk is not null) + Filter Operator [FIL_630] (rows=143966864 width=127) + predicate:((ws_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(ws_sold_date_sk, DynamicValue(RS_64_date_dim_d_date_sk_bloom_filter))) and ws_item_sk is not null and ws_sold_date_sk is not null) TableScan [TS_51] (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_651] - Group By Operator [GBY_650] (rows=1 width=12) + BROADCAST [RS_629] + Group By Operator [GBY_628] (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_585] @@ -518,23 +479,12 @@ Stage-0 Select Operator [SEL_570] (rows=652 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_561] - <-Reducer 40 [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 37 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_613] - Group By Operator [GBY_607] (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_592] <-Reducer 6 [CONTAINS] vectorized - Reduce Output Operator [RS_628] + Reduce Output Operator [RS_608] PartitionCols:_col0, _col1, _col2, _col3 - Group By Operator [GBY_627] (rows=736356923 width=131) + Group By Operator [GBY_607] (rows=736356923 width=131) Output:["_col0","_col1","_col2","_col3","_col4","_col5"],keys:_col0, _col1, _col2, _col3, _col4, _col5 - Group By Operator [GBY_626] (rows=621178955 width=131) + Group By Operator [GBY_606] (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] @@ -545,41 +495,41 @@ Stage-0 Select Operator [SEL_529] (rows=450703984 width=131) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] Merge Join Operator [MERGEJOIN_528] (rows=450703984 width=204) - Conds:RS_40._col1, _col2=RS_648._col0, _col1(Left Outer),Output:["_col3","_col4","_col8","_col9","_col10","_col12","_col15","_col16"] - <-Map 46 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_648] + Conds:RS_40._col1, _col2=RS_626._col0, _col1(Left Outer),Output:["_col3","_col4","_col8","_col9","_col10","_col12","_col15","_col16"] + <-Map 40 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_626] PartitionCols:_col0, _col1 - Please refer to the previous Select Operator [SEL_647] + Please refer to the previous Select Operator [SEL_625] <-Reducer 14 [SIMPLE_EDGE] SHUFFLE [RS_40] PartitionCols:_col1, _col2 Merge Join Operator [MERGEJOIN_504] (rows=187186493 width=124) - Conds:RS_37._col1=RS_595._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col8","_col9","_col10","_col12"] + Conds:RS_37._col1=RS_597._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col8","_col9","_col10","_col12"] <-Map 37 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_595] + SHUFFLE [RS_597] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_592] + Please refer to the previous Select Operator [SEL_595] <-Reducer 13 [SIMPLE_EDGE] SHUFFLE [RS_37] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_503] (rows=196410188 width=109) - Conds:RS_645._col0=RS_567._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + Conds:RS_623._col0=RS_567._col0(Inner),Output:["_col1","_col2","_col3","_col4"] <-Map 11 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_567] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_561] - <-Map 45 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_645] + <-Map 39 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_623] PartitionCols:_col0 - Select Operator [SEL_644] (rows=550076554 width=122) + Select Operator [SEL_622] (rows=550076554 width=122) Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_643] (rows=550076554 width=122) - predicate:((ss_item_sk BETWEEN DynamicValue(RS_38_item_i_item_sk_min) AND DynamicValue(RS_38_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_38_item_i_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_35_date_dim_d_date_sk_min) AND DynamicValue(RS_35_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_35_date_dim_d_date_sk_bloom_filter))) and ss_item_sk is not null and ss_sold_date_sk is not null) + Filter Operator [FIL_621] (rows=550076554 width=122) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_35_date_dim_d_date_sk_min) AND DynamicValue(RS_35_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_35_date_dim_d_date_sk_bloom_filter))) and ss_item_sk is not null and ss_sold_date_sk is not null) TableScan [TS_22] (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_640] - Group By Operator [GBY_639] (rows=1 width=12) + BROADCAST [RS_620] + Group By Operator [GBY_619] (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_584] @@ -588,17 +538,6 @@ Stage-0 Select Operator [SEL_568] (rows=652 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_561] - <-Reducer 39 [BROADCAST_EDGE] vectorized - BROADCAST [RS_642] - Group By Operator [GBY_641] (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_612] - Group By Operator [GBY_606] (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_592] <-Reducer 4 [CONTAINS] Reduce Output Operator [RS_523] PartitionCols:_col0, _col1, _col2, _col3, _col4, _col5 @@ -607,36 +546,36 @@ Stage-0 Select Operator [SEL_520] (rows=170474971 width=131) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] Merge Join Operator [MERGEJOIN_519] (rows=170474971 width=234) - Conds:RS_18._col1, _col2=RS_624._col0, _col1(Left Outer),Output:["_col3","_col4","_col8","_col9","_col10","_col12","_col15","_col16"] - <-Map 44 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_624] + Conds:RS_18._col1, _col2=RS_604._col0, _col1(Left Outer),Output:["_col3","_col4","_col8","_col9","_col10","_col12","_col15","_col16"] + <-Map 38 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_604] PartitionCols:_col0, _col1 - Please refer to the previous Select Operator [SEL_623] + Please refer to the previous Select Operator [SEL_603] <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_18] PartitionCols:_col1, _col2 Merge Join Operator [MERGEJOIN_501] (rows=96821196 width=138) - Conds:RS_15._col1=RS_593._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col8","_col9","_col10","_col12"] + Conds:RS_15._col1=RS_596._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col8","_col9","_col10","_col12"] <-Map 37 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_593] + SHUFFLE [RS_596] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_592] + Please refer to the previous Select Operator [SEL_595] <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_15] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_500] (rows=101592102 width=122) - Conds:RS_621._col0=RS_565._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + Conds:RS_593._col0=RS_565._col0(Inner),Output:["_col1","_col2","_col3","_col4"] <-Map 11 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_565] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_561] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_621] + SHUFFLE [RS_593] PartitionCols:_col0 - Select Operator [SEL_620] (rows=286549727 width=127) + Select Operator [SEL_592] (rows=286549727 width=127) Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_619] (rows=286549727 width=127) - predicate:((cs_item_sk BETWEEN DynamicValue(RS_16_item_i_item_sk_min) AND DynamicValue(RS_16_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_16_item_i_item_sk_bloom_filter))) and (cs_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(cs_sold_date_sk, DynamicValue(RS_13_date_dim_d_date_sk_bloom_filter))) and cs_item_sk is not null and cs_sold_date_sk is not null) + Filter Operator [FIL_591] (rows=286549727 width=127) + predicate:((cs_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(cs_sold_date_sk, DynamicValue(RS_13_date_dim_d_date_sk_bloom_filter))) and cs_item_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_item_sk","cs_order_number","cs_quantity","cs_ext_sales_price"] <-Reducer 12 [BROADCAST_EDGE] vectorized @@ -650,15 +589,4 @@ Stage-0 Select Operator [SEL_566] (rows=652 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_561] - <-Reducer 38 [BROADCAST_EDGE] vectorized - BROADCAST [RS_618] - Group By Operator [GBY_617] (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_611] - Group By Operator [GBY_605] (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_592] diff --git a/ql/src/test/results/clientpositive/perf/tez/query79.q.out b/ql/src/test/results/clientpositive/perf/tez/query79.q.out index f1538371a9..066223c0ed 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query79.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query79.q.out @@ -57,9 +57,8 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 4 <- Reducer 10 (BROADCAST_EDGE), Reducer 13 (BROADCAST_EDGE) +Map 4 <- Reducer 10 (BROADCAST_EDGE) Reducer 10 <- Map 9 (CUSTOM_SIMPLE_EDGE) -Reducer 13 <- Map 12 (CUSTOM_SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (SIMPLE_EDGE) Reducer 5 <- Map 4 (SIMPLE_EDGE), Map 9 (SIMPLE_EDGE) @@ -72,17 +71,17 @@ Stage-0 limit:-1 Stage-1 Reducer 3 vectorized - File Output Operator [FS_131] - Limit [LIM_130] (rows=100 width=776) + File Output Operator [FS_126] + Limit [LIM_125] (rows=100 width=776) Number of rows:100 - Select Operator [SEL_129] (rows=43530621 width=776) + Select Operator [SEL_124] (rows=43530621 width=776) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_33] Select Operator [SEL_32] (rows=43530621 width=776) Output:["_col0","_col1","_col3","_col4","_col5","_col6"] Merge Join Operator [MERGEJOIN_100] (rows=43530621 width=501) - Conds:RS_103._col0=RS_128._col1(Inner),Output:["_col1","_col2","_col3","_col5","_col6","_col7"] + Conds:RS_103._col0=RS_123._col1(Inner),Output:["_col1","_col2","_col3","_col5","_col6","_col7"] <-Map 1 [SIMPLE_EDGE] vectorized SHUFFLE [RS_103] PartitionCols:_col0 @@ -93,11 +92,11 @@ Stage-0 TableScan [TS_0] (rows=80000000 width=184) default@customer,customer,Tbl:COMPLETE,Col:COMPLETE,Output:["c_customer_sk","c_first_name","c_last_name"] <-Reducer 8 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_128] + SHUFFLE [RS_123] PartitionCols:_col1 - Select Operator [SEL_127] (rows=43530621 width=323) + Select Operator [SEL_122] (rows=43530621 width=323) Output:["_col0","_col1","_col2","_col3","_col4"] - Group By Operator [GBY_126] (rows=43530621 width=325) + Group By Operator [GBY_121] (rows=43530621 width=325) Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3 <-Reducer 7 [SIMPLE_EDGE] SHUFFLE [RS_26] @@ -105,13 +104,13 @@ Stage-0 Group By Operator [GBY_25] (rows=43530621 width=325) Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["sum(_col6)","sum(_col7)"],keys:_col1, _col3, _col5, _col13 Merge Join Operator [MERGEJOIN_99] (rows=43530621 width=214) - Conds:RS_21._col2=RS_114._col0(Inner),Output:["_col1","_col3","_col5","_col6","_col7","_col13"] + Conds:RS_21._col2=RS_120._col0(Inner),Output:["_col1","_col3","_col5","_col6","_col7","_col13"] <-Map 12 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_114] + SHUFFLE [RS_120] PartitionCols:_col0 - Select Operator [SEL_113] (rows=3055 width=12) + Select Operator [SEL_119] (rows=3055 width=12) Output:["_col0"] - Filter Operator [FIL_112] (rows=3055 width=12) + Filter Operator [FIL_118] (rows=3055 width=12) predicate:(((hd_dep_count = 8) or (hd_vehicle_count > 0)) and hd_demo_sk is not null) TableScan [TS_12] (rows=7200 width=12) default@household_demographics,household_demographics,Tbl:COMPLETE,Col:COMPLETE,Output:["hd_demo_sk","hd_dep_count","hd_vehicle_count"] @@ -119,13 +118,13 @@ Stage-0 SHUFFLE [RS_21] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_98] (rows=102592623 width=283) - Conds:RS_18._col4=RS_125._col0(Inner),Output:["_col1","_col2","_col3","_col5","_col6","_col7","_col13"] + Conds:RS_18._col4=RS_117._col0(Inner),Output:["_col1","_col2","_col3","_col5","_col6","_col7","_col13"] <-Map 11 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_125] + SHUFFLE [RS_117] PartitionCols:_col0 - Select Operator [SEL_124] (rows=1704 width=100) + Select Operator [SEL_116] (rows=1704 width=100) Output:["_col0","_col2"] - Filter Operator [FIL_123] (rows=1704 width=100) + Filter Operator [FIL_115] (rows=1704 width=100) predicate:(s_number_employees BETWEEN 200 AND 295 and s_store_sk is not null) TableScan [TS_9] (rows=1704 width=100) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_number_employees","s_city"] @@ -133,7 +132,7 @@ Stage-0 SHUFFLE [RS_18] PartitionCols:_col4 Merge Join Operator [MERGEJOIN_97] (rows=102592623 width=193) - Conds:RS_122._col0=RS_106._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col7"] + Conds:RS_114._col0=RS_106._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col7"] <-Map 9 [SIMPLE_EDGE] vectorized SHUFFLE [RS_106] PartitionCols:_col0 @@ -144,12 +143,12 @@ Stage-0 TableScan [TS_6] (rows=73049 width=12) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_dow"] <-Map 4 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_122] + SHUFFLE [RS_114] PartitionCols:_col0 - Select Operator [SEL_121] (rows=479121995 width=237) + Select Operator [SEL_113] (rows=479121995 width=237) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] - Filter Operator [FIL_120] (rows=479121995 width=237) - predicate:((ss_hdemo_sk BETWEEN DynamicValue(RS_22_household_demographics_hd_demo_sk_min) AND DynamicValue(RS_22_household_demographics_hd_demo_sk_max) and in_bloom_filter(ss_hdemo_sk, DynamicValue(RS_22_household_demographics_hd_demo_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_16_date_dim_d_date_sk_min) AND DynamicValue(RS_16_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_16_date_dim_d_date_sk_bloom_filter))) and ss_customer_sk is not null and ss_hdemo_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_112] (rows=479121995 width=237) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_16_date_dim_d_date_sk_min) AND DynamicValue(RS_16_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_16_date_dim_d_date_sk_bloom_filter))) and ss_customer_sk is not null and ss_hdemo_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) TableScan [TS_3] (rows=575995635 width=237) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_customer_sk","ss_hdemo_sk","ss_addr_sk","ss_store_sk","ss_ticket_number","ss_coupon_amt","ss_net_profit"] <-Reducer 10 [BROADCAST_EDGE] vectorized @@ -163,15 +162,4 @@ Stage-0 Select Operator [SEL_107] (rows=391 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_105] - <-Reducer 13 [BROADCAST_EDGE] vectorized - BROADCAST [RS_119] - Group By Operator [GBY_118] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 12 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_117] - Group By Operator [GBY_116] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_115] (rows=3055 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_113] diff --git a/ql/src/test/results/clientpositive/perf/tez/query8.q.out b/ql/src/test/results/clientpositive/perf/tez/query8.q.out index 8c245509ca..7b4c1b8755 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query8.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query8.q.out @@ -227,33 +227,32 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 13 (BROADCAST_EDGE), Reducer 7 (BROADCAST_EDGE) -Reducer 11 <- Union 10 (SIMPLE_EDGE) -Reducer 12 <- Map 19 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE) -Reducer 13 <- Reducer 12 (CUSTOM_SIMPLE_EDGE) -Reducer 15 <- Map 14 (SIMPLE_EDGE), Map 18 (SIMPLE_EDGE) -Reducer 16 <- Reducer 15 (SIMPLE_EDGE) -Reducer 17 <- Reducer 16 (SIMPLE_EDGE), Union 10 (CONTAINS) +Map 1 <- Reducer 12 (BROADCAST_EDGE) +Reducer 10 <- Union 9 (SIMPLE_EDGE) +Reducer 11 <- Map 18 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE) +Reducer 12 <- Reducer 11 (CUSTOM_SIMPLE_EDGE) +Reducer 14 <- Map 13 (SIMPLE_EDGE), Map 17 (SIMPLE_EDGE) +Reducer 15 <- Reducer 14 (SIMPLE_EDGE) +Reducer 16 <- Reducer 15 (SIMPLE_EDGE), Union 9 (CONTAINS) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) -Reducer 3 <- Reducer 12 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 3 <- Reducer 11 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) -Reducer 7 <- Map 6 (CUSTOM_SIMPLE_EDGE) -Reducer 9 <- Map 8 (SIMPLE_EDGE), Union 10 (CONTAINS) +Reducer 8 <- Map 7 (SIMPLE_EDGE), Union 9 (CONTAINS) Stage-0 Fetch Operator limit:100 Stage-1 Reducer 5 vectorized - File Output Operator [FS_151] - Limit [LIM_150] (rows=1 width=200) + File Output Operator [FS_146] + Limit [LIM_145] (rows=1 width=200) Number of rows:100 - Select Operator [SEL_149] (rows=1 width=200) + Select Operator [SEL_144] (rows=1 width=200) Output:["_col0","_col1"] <-Reducer 4 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_148] - Group By Operator [GBY_147] (rows=1 width=200) + SHUFFLE [RS_143] + Group By Operator [GBY_142] (rows=1 width=200) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_57] @@ -264,88 +263,88 @@ Stage-0 keys:_col8,sort order:+,top n:100 Merge Join Operator [MERGEJOIN_118] (rows=1 width=200) Conds:RS_52._col1=RS_53._col1(Inner),Output:["_col2","_col8"] - <-Reducer 12 [SIMPLE_EDGE] + <-Reducer 11 [SIMPLE_EDGE] SHUFFLE [RS_53] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_117] (rows=1 width=92) - Conds:RS_138.substr(_col0, 1, 2)=RS_141.substr(_col2, 1, 2)(Inner),Output:["_col1","_col2"] - <-Map 19 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_141] + Conds:RS_130.substr(_col0, 1, 2)=RS_133.substr(_col2, 1, 2)(Inner),Output:["_col1","_col2"] + <-Map 18 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_133] PartitionCols:substr(_col2, 1, 2) - Select Operator [SEL_140] (rows=1704 width=181) + Select Operator [SEL_132] (rows=1704 width=181) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_139] (rows=1704 width=181) + Filter Operator [FIL_131] (rows=1704 width=181) predicate:(s_store_sk is not null and substr(s_zip, 1, 2) is not null) TableScan [TS_42] (rows=1704 width=181) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_store_name","s_zip"] - <-Reducer 11 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_138] + <-Reducer 10 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_130] PartitionCols:substr(_col0, 1, 2) - Select Operator [SEL_137] (rows=1 width=184) + Select Operator [SEL_129] (rows=1 width=184) Output:["_col0"] - Filter Operator [FIL_136] (rows=1 width=192) + Filter Operator [FIL_128] (rows=1 width=192) predicate:(_col1 = 2L) - Group By Operator [GBY_135] (rows=3098 width=192) + Group By Operator [GBY_127] (rows=3098 width=192) Output:["_col0","_col1"],aggregations:["count(VALUE._col0)"],keys:KEY._col0 - <-Union 10 [SIMPLE_EDGE] - <-Reducer 17 [CONTAINS] vectorized - Reduce Output Operator [RS_172] + <-Union 9 [SIMPLE_EDGE] + <-Reducer 16 [CONTAINS] vectorized + Reduce Output Operator [RS_167] PartitionCols:_col0 - Group By Operator [GBY_171] (rows=3098 width=192) + Group By Operator [GBY_166] (rows=3098 width=192) Output:["_col0","_col1"],aggregations:["count(_col1)"],keys:_col0 - Group By Operator [GBY_170] (rows=1126 width=192) + Group By Operator [GBY_165] (rows=1126 width=192) Output:["_col0","_col1"],aggregations:["count(VALUE._col0)"],keys:KEY._col0 - <-Reducer 16 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_169] + <-Reducer 15 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_164] PartitionCols:_col0 - Group By Operator [GBY_168] (rows=1126 width=192) + Group By Operator [GBY_163] (rows=1126 width=192) Output:["_col0","_col1"],aggregations:["count()"],keys:_col0 - Select Operator [SEL_167] (rows=2253 width=97) + Select Operator [SEL_162] (rows=2253 width=97) Output:["_col0"] - Filter Operator [FIL_166] (rows=2253 width=97) + Filter Operator [FIL_161] (rows=2253 width=97) predicate:(_col1 > 10L) - Group By Operator [GBY_165] (rows=6761 width=97) + Group By Operator [GBY_160] (rows=6761 width=97) Output:["_col0","_col1"],aggregations:["count(VALUE._col0)"],keys:KEY._col0 - <-Reducer 15 [SIMPLE_EDGE] + <-Reducer 14 [SIMPLE_EDGE] SHUFFLE [RS_25] PartitionCols:_col0 Group By Operator [GBY_24] (rows=67610 width=97) Output:["_col0","_col1"],aggregations:["count()"],keys:_col1 Merge Join Operator [MERGEJOIN_116] (rows=26666667 width=89) - Conds:RS_161._col0=RS_164._col0(Inner),Output:["_col1"] - <-Map 14 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_161] + Conds:RS_156._col0=RS_159._col0(Inner),Output:["_col1"] + <-Map 13 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_156] PartitionCols:_col0 - Select Operator [SEL_160] (rows=40000000 width=93) + Select Operator [SEL_155] (rows=40000000 width=93) Output:["_col0","_col1"] - Filter Operator [FIL_159] (rows=40000000 width=93) + Filter Operator [FIL_154] (rows=40000000 width=93) predicate:(ca_address_sk is not null and substr(substr(ca_zip, 1, 5), 1, 2) is not null) TableScan [TS_14] (rows=40000000 width=93) default@customer_address,customer_address,Tbl:COMPLETE,Col:COMPLETE,Output:["ca_address_sk","ca_zip"] - <-Map 18 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_164] + <-Map 17 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_159] PartitionCols:_col0 - Select Operator [SEL_163] (rows=26666667 width=89) + Select Operator [SEL_158] (rows=26666667 width=89) Output:["_col0"] - Filter Operator [FIL_162] (rows=26666667 width=89) + Filter Operator [FIL_157] (rows=26666667 width=89) predicate:((c_preferred_cust_flag = 'Y') and c_current_addr_sk is not null) TableScan [TS_17] (rows=80000000 width=89) default@customer,customer,Tbl:COMPLETE,Col:COMPLETE,Output:["c_current_addr_sk","c_preferred_cust_flag"] - <-Reducer 9 [CONTAINS] vectorized - Reduce Output Operator [RS_158] + <-Reducer 8 [CONTAINS] vectorized + Reduce Output Operator [RS_153] PartitionCols:_col0 - Group By Operator [GBY_157] (rows=3098 width=192) + Group By Operator [GBY_152] (rows=3098 width=192) Output:["_col0","_col1"],aggregations:["count(_col1)"],keys:_col0 - Group By Operator [GBY_156] (rows=5071 width=192) + Group By Operator [GBY_151] (rows=5071 width=192) Output:["_col0","_col1"],aggregations:["count(VALUE._col0)"],keys:KEY._col0 - <-Map 8 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_155] + <-Map 7 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_150] PartitionCols:_col0 - Group By Operator [GBY_154] (rows=70994 width=192) + Group By Operator [GBY_149] (rows=70994 width=192) Output:["_col0","_col1"],aggregations:["count()"],keys:_col0 - Select Operator [SEL_153] (rows=20000000 width=89) + Select Operator [SEL_148] (rows=20000000 width=89) Output:["_col0"] - Filter Operator [FIL_152] (rows=20000000 width=89) + Filter Operator [FIL_147] (rows=20000000 width=89) predicate:((substr(ca_zip, 1, 5)) IN ('89436', '30868', '65085', '22977', '83927', '77557', '58429', '40697', '80614', '10502', '32779', '91137', '61265', '98294', '17921', '18427', '21203', '59362', '87291', '84093', '21505', '17184', '10866', '67898', '25797', '28055', '18377', '80332', '74535', '21757', '29742', '90885', '29898', '17819', '40811', '25990', '47513', '89531', '91068', '10391', '18846', '99223', '82637', '41368', '83658', '86199', '81625', '26696', '89338', '88425', '32200', '81427', '19053', '77471', '36610', '99823', '43276', '41249', '48584', '83550', '82276', '18842', '78890', '14090', '38123', '40936', '34425', '19850', '43286', '80072', '79188', '54191', '11395', '50497', '84861', '90733', '21068', '57666', '37119', '25004', '57835', '70067', '62878', '95806', '19303', '18840', '19124', '29785', '16737', '16022', '49613', '89977', '68310', '60069', '98360', '48649', '39050', '41793', '25002', '27413', '39736', '47208', '16515', '94808', '57648', '15009', '80015', '42961', '63982', '21744', '71853', '81087', '67468', '34175', '64008', '20261', '11201', '51799', '48043', '45645', '61163', '48375', '36447', '57042', '21218', '41100', '89951', '22745', '35851', '83326', '61125', '78298', '80752', '49858', '52940', '96976', '63792', '11376', '53582', '18717', '90226', '50530', '94203', '99447', '27670', '96577', '57856', '56372', '16165', '23427', '54561', '28806', '44439', '22926', '30123', '61451', '92397', '56979', '92309', '70873', '13355', '21801', '46346', '37562', '56458', '28286', '47306', '99555', '69399', '26234', '47546', '49661', '88601', '35943', '39936', '25632', '24611', '44166', '56648', '30379', '59785', '11110', '14329', '93815', '52226', '71381', '13842', '25612', '63294', '14664', '21077', '82626', '18799', '60915', '81020', '56447', '76619', '11433', '13414', '42548', '92713', '70467', '30884', '47484', '16072', '38936', '13036', '88376', '45539', '35901', '19506', '65690', '73957', '71850', '49231', '14276', '20005', '18384', '76615', '11635', '38177', '55607', '41369', '95447', '58581', '58149', '91946', '33790', '76232', '75692', '95464', '22246', '51061', '56692', '53121', '77209', '15482', '10688', '14868', '45907', '73520', '72666', '25734', '17959', '24677', '66446', '94627', '53535', '15560', '41967', '69297', '11929', '59403', '33283', '52232', '57350', '43933', '40921', '36635', '10827', '71286', '19736', '80619', '25251', '95042', '15526', '36496', '55854', '49124', '81980', '35375', '49157', '63512', '28944', '14946', '36503', '54010', '18767', '23969', '43905', '66979', '33113', '21286', '58471', '59080', '13395', '79144', '70373', '67031', '38360', '26705', '50906', '52406', '26066', '73146', '15884', '31897', '30045', '61068', '45550', '92454', '13376', '14354', '19770', '22928', '97790', '50723', '46081', '30202', '14410', '20223', '88500', '67298', '13261', '14172', '81410', '93578', '83583', '46047', '94167', '82564', '21156', '15799', '86709', '37931', '74703', '83103', '23054', '70470', '72008', '49247', '91911', '69998', '20961', '70070', '63197', '54853', '88191', '91830', '49521', '19454', '81450', '89091', '62378', '25683', '61869', '51744', '36580', '85778', '36871', '48121', '28810', '83712', '45486', '67393', '26935', '42393', '20132', '55349', '86057', '21309', '80218', '10094', '11357', '48819', '39734', '40758', '30432', '21204', '29467', '30214', '61024', '55307', '74621', '11622', '68908', '33032', '52868', '99194', '99900', '84936', '69036', '99149', '45013', '32895', '59004', '32322', '14933', '32936', '33562', '72550', '27385', '58049', '58200', '16808', '21360', '32961', '18586', '79307', '15492') and substr(substr(ca_zip, 1, 5), 1, 2) is not null) TableScan [TS_6] (rows=40000000 width=89) default@customer_address,customer_address,Tbl:COMPLETE,Col:COMPLETE,Output:["ca_zip"] @@ -353,45 +352,34 @@ Stage-0 SHUFFLE [RS_52] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_115] (rows=37399754 width=42) - Conds:RS_146._col0=RS_129._col0(Inner),Output:["_col1","_col2"] - <-Map 6 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_129] - PartitionCols:_col0 - Select Operator [SEL_128] (rows=130 width=12) - Output:["_col0"] - Filter Operator [FIL_127] (rows=130 width=12) - predicate:((d_qoy = 1) and (d_year = 2002) and d_date_sk is not null) - TableScan [TS_3] (rows=73049 width=12) - default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_qoy"] + Conds:RS_138._col0=RS_141._col0(Inner),Output:["_col1","_col2"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_146] + SHUFFLE [RS_138] PartitionCols:_col0 - Select Operator [SEL_145] (rows=525329897 width=114) + Select Operator [SEL_137] (rows=525329897 width=114) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_144] (rows=525329897 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_store_sk BETWEEN DynamicValue(RS_53_store_s_store_sk_min) AND DynamicValue(RS_53_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_53_store_s_store_sk_bloom_filter))) and ss_sold_date_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_136] (rows=525329897 width=114) + predicate:((ss_store_sk BETWEEN DynamicValue(RS_53_store_s_store_sk_min) AND DynamicValue(RS_53_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_53_store_s_store_sk_bloom_filter))) and ss_sold_date_sk is not null and ss_store_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_store_sk","ss_net_profit"] - <-Reducer 13 [BROADCAST_EDGE] vectorized - BROADCAST [RS_143] - Group By Operator [GBY_142] (rows=1 width=12) + <-Reducer 12 [BROADCAST_EDGE] vectorized + BROADCAST [RS_135] + Group By Operator [GBY_134] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Reducer 12 [CUSTOM_SIMPLE_EDGE] + <-Reducer 11 [CUSTOM_SIMPLE_EDGE] SHUFFLE [RS_92] Group By Operator [GBY_91] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] Select Operator [SEL_90] (rows=1 width=8) Output:["_col0"] Please refer to the previous Merge Join Operator [MERGEJOIN_117] - <-Reducer 7 [BROADCAST_EDGE] vectorized - BROADCAST [RS_134] - Group By Operator [GBY_133] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 6 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_132] - Group By Operator [GBY_131] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_130] (rows=130 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_128] + <-Map 6 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_141] + PartitionCols:_col0 + Select Operator [SEL_140] (rows=130 width=12) + Output:["_col0"] + Filter Operator [FIL_139] (rows=130 width=12) + predicate:((d_qoy = 1) and (d_year = 2002) and d_date_sk is not null) + TableScan [TS_3] (rows=73049 width=12) + default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_qoy"] diff --git a/ql/src/test/results/clientpositive/perf/tez/query80.q.out b/ql/src/test/results/clientpositive/perf/tez/query80.q.out index ff26befbd4..4cd21d880f 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query80.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query80.q.out @@ -217,36 +217,30 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 13 (BROADCAST_EDGE), Reducer 27 (BROADCAST_EDGE), Reducer 31 (BROADCAST_EDGE) -Map 35 <- Reducer 19 (BROADCAST_EDGE), Reducer 28 (BROADCAST_EDGE), Reducer 32 (BROADCAST_EDGE) -Map 39 <- Reducer 25 (BROADCAST_EDGE), Reducer 29 (BROADCAST_EDGE), Reducer 33 (BROADCAST_EDGE) +Map 1 <- Reducer 13 (BROADCAST_EDGE) +Map 29 <- Reducer 19 (BROADCAST_EDGE) +Map 33 <- Reducer 25 (BROADCAST_EDGE) Reducer 10 <- Reducer 9 (SIMPLE_EDGE) Reducer 13 <- Map 12 (CUSTOM_SIMPLE_EDGE) -Reducer 14 <- Map 12 (SIMPLE_EDGE), Reducer 36 (SIMPLE_EDGE) +Reducer 14 <- Map 12 (SIMPLE_EDGE), Reducer 30 (SIMPLE_EDGE) Reducer 15 <- Map 26 (SIMPLE_EDGE), Reducer 14 (SIMPLE_EDGE) -Reducer 16 <- Map 30 (SIMPLE_EDGE), Reducer 15 (SIMPLE_EDGE) -Reducer 17 <- Map 38 (SIMPLE_EDGE), Reducer 16 (SIMPLE_EDGE) +Reducer 16 <- Map 27 (SIMPLE_EDGE), Reducer 15 (SIMPLE_EDGE) +Reducer 17 <- Map 32 (SIMPLE_EDGE), Reducer 16 (SIMPLE_EDGE) Reducer 18 <- Reducer 17 (SIMPLE_EDGE), Union 8 (CONTAINS) Reducer 19 <- Map 12 (CUSTOM_SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 11 (SIMPLE_EDGE) -Reducer 20 <- Map 12 (SIMPLE_EDGE), Reducer 40 (SIMPLE_EDGE) +Reducer 20 <- Map 12 (SIMPLE_EDGE), Reducer 34 (SIMPLE_EDGE) Reducer 21 <- Map 26 (SIMPLE_EDGE), Reducer 20 (SIMPLE_EDGE) -Reducer 22 <- Map 30 (SIMPLE_EDGE), Reducer 21 (SIMPLE_EDGE) -Reducer 23 <- Map 42 (SIMPLE_EDGE), Reducer 22 (SIMPLE_EDGE) +Reducer 22 <- Map 27 (SIMPLE_EDGE), Reducer 21 (SIMPLE_EDGE) +Reducer 23 <- Map 36 (SIMPLE_EDGE), Reducer 22 (SIMPLE_EDGE) Reducer 24 <- Reducer 23 (SIMPLE_EDGE), Union 8 (CONTAINS) Reducer 25 <- Map 12 (CUSTOM_SIMPLE_EDGE) -Reducer 27 <- Map 26 (CUSTOM_SIMPLE_EDGE) -Reducer 28 <- Map 26 (CUSTOM_SIMPLE_EDGE) -Reducer 29 <- Map 26 (CUSTOM_SIMPLE_EDGE) Reducer 3 <- Map 12 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 31 <- Map 30 (CUSTOM_SIMPLE_EDGE) -Reducer 32 <- Map 30 (CUSTOM_SIMPLE_EDGE) -Reducer 33 <- Map 30 (CUSTOM_SIMPLE_EDGE) -Reducer 36 <- Map 35 (SIMPLE_EDGE), Map 37 (SIMPLE_EDGE) +Reducer 30 <- Map 29 (SIMPLE_EDGE), Map 31 (SIMPLE_EDGE) +Reducer 34 <- Map 33 (SIMPLE_EDGE), Map 35 (SIMPLE_EDGE) Reducer 4 <- Map 26 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 40 <- Map 39 (SIMPLE_EDGE), Map 41 (SIMPLE_EDGE) -Reducer 5 <- Map 30 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) -Reducer 6 <- Map 34 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) +Reducer 5 <- Map 27 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) +Reducer 6 <- Map 28 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE), Union 8 (CONTAINS) Reducer 9 <- Union 8 (SIMPLE_EDGE) @@ -255,28 +249,28 @@ Stage-0 limit:100 Stage-1 Reducer 10 vectorized - File Output Operator [FS_460] - Limit [LIM_459] (rows=100 width=619) + File Output Operator [FS_438] + Limit [LIM_437] (rows=100 width=619) Number of rows:100 - Select Operator [SEL_458] (rows=38846 width=619) + Select Operator [SEL_436] (rows=38846 width=619) Output:["_col0","_col1","_col2","_col3","_col4"] <-Reducer 9 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_457] - Select Operator [SEL_456] (rows=38846 width=619) + SHUFFLE [RS_435] + Select Operator [SEL_434] (rows=38846 width=619) Output:["_col0","_col1","_col2","_col3","_col4"] - Group By Operator [GBY_455] (rows=38846 width=627) + Group By Operator [GBY_433] (rows=38846 width=627) Output:["_col0","_col1","_col3","_col4","_col5"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)"],keys:KEY._col0, KEY._col1, KEY._col2 <-Union 8 [SIMPLE_EDGE] <-Reducer 18 [CONTAINS] vectorized - Reduce Output Operator [RS_480] + Reduce Output Operator [RS_454] PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_479] (rows=59581 width=627) + Group By Operator [GBY_453] (rows=59581 width=627) Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["sum(_col2)","sum(_col3)","sum(_col4)"],keys:_col0, _col1, 0L - Top N Key Operator [TNK_478] (rows=39721 width=618) + Top N Key Operator [TNK_452] (rows=39721 width=618) keys:_col0, _col1, 0L,sort order:+++,top n:100 - Select Operator [SEL_477] (rows=38846 width=619) + Select Operator [SEL_451] (rows=38846 width=619) Output:["_col0","_col1","_col2","_col3","_col4"] - Group By Operator [GBY_476] (rows=38846 width=436) + Group By Operator [GBY_450] (rows=38846 width=436) Output:["_col0","_col1","_col2","_col3"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)"],keys:KEY._col0 <-Reducer 17 [SIMPLE_EDGE] SHUFFLE [RS_75] @@ -286,13 +280,13 @@ Stage-0 Select Operator [SEL_72] (rows=8592843 width=305) Output:["_col0","_col1","_col2","_col3"] Merge Join Operator [MERGEJOIN_369] (rows=8592843 width=305) - Conds:RS_69._col1=RS_475._col0(Inner),Output:["_col5","_col6","_col9","_col10","_col18"] - <-Map 38 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_475] + Conds:RS_69._col1=RS_449._col0(Inner),Output:["_col5","_col6","_col9","_col10","_col18"] + <-Map 32 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_449] PartitionCols:_col0 - Select Operator [SEL_474] (rows=46000 width=104) + Select Operator [SEL_448] (rows=46000 width=104) Output:["_col0","_col1"] - Filter Operator [FIL_473] (rows=46000 width=104) + Filter Operator [FIL_447] (rows=46000 width=104) predicate:cp_catalog_page_sk is not null TableScan [TS_54] (rows=46000 width=104) default@catalog_page,catalog_page,Tbl:COMPLETE,Col:COMPLETE,Output:["cp_catalog_page_sk","cp_catalog_page_id"] @@ -300,13 +294,13 @@ Stage-0 SHUFFLE [RS_69] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_368] (rows=8592843 width=208) - Conds:RS_66._col3=RS_429._col0(Inner),Output:["_col1","_col5","_col6","_col9","_col10"] - <-Map 30 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_429] + Conds:RS_66._col3=RS_423._col0(Inner),Output:["_col1","_col5","_col6","_col9","_col10"] + <-Map 27 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_423] PartitionCols:_col0 - Select Operator [SEL_426] (rows=1150 width=89) + Select Operator [SEL_421] (rows=1150 width=89) Output:["_col0"] - Filter Operator [FIL_425] (rows=1150 width=89) + Filter Operator [FIL_420] (rows=1150 width=89) predicate:((p_channel_tv = 'N') and p_promo_sk is not null) TableScan [TS_12] (rows=2300 width=89) default@promotion,promotion,Tbl:COMPLETE,Col:COMPLETE,Output:["p_promo_sk","p_channel_tv"] @@ -314,13 +308,13 @@ Stage-0 SHUFFLE [RS_66] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_367] (rows=17185686 width=222) - Conds:RS_63._col2=RS_413._col0(Inner),Output:["_col1","_col3","_col5","_col6","_col9","_col10"] + Conds:RS_63._col2=RS_418._col0(Inner),Output:["_col1","_col3","_col5","_col6","_col9","_col10"] <-Map 26 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_413] + SHUFFLE [RS_418] PartitionCols:_col0 - Select Operator [SEL_410] (rows=154000 width=115) + Select Operator [SEL_416] (rows=154000 width=115) Output:["_col0"] - Filter Operator [FIL_409] (rows=154000 width=115) + Filter Operator [FIL_415] (rows=154000 width=115) predicate:((i_current_price > 50) and i_item_sk is not null) TableScan [TS_9] (rows=462000 width=115) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_current_price"] @@ -338,23 +332,23 @@ Stage-0 predicate:(CAST( d_date AS TIMESTAMP) BETWEEN TIMESTAMP'1998-08-04 00:00:00' AND TIMESTAMP'1998-09-03 00:00:00' and d_date_sk is not null) TableScan [TS_6] (rows=73049 width=98) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"] - <-Reducer 36 [SIMPLE_EDGE] + <-Reducer 30 [SIMPLE_EDGE] SHUFFLE [RS_60] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_365] (rows=464045263 width=326) - Conds:RS_469._col2, _col4=RS_472._col0, _col1(Left Outer),Output:["_col0","_col1","_col2","_col3","_col5","_col6","_col9","_col10"] - <-Map 35 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_469] + Conds:RS_443._col2, _col4=RS_446._col0, _col1(Left Outer),Output:["_col0","_col1","_col2","_col3","_col5","_col6","_col9","_col10"] + <-Map 29 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_443] PartitionCols:_col2, _col4 - Select Operator [SEL_468] (rows=283691906 width=243) + Select Operator [SEL_442] (rows=283691906 width=243) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] - Filter Operator [FIL_467] (rows=283691906 width=243) - predicate:((cs_item_sk BETWEEN DynamicValue(RS_64_item_i_item_sk_min) AND DynamicValue(RS_64_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_64_item_i_item_sk_bloom_filter))) and (cs_promo_sk BETWEEN DynamicValue(RS_67_promotion_p_promo_sk_min) AND DynamicValue(RS_67_promotion_p_promo_sk_max) and in_bloom_filter(cs_promo_sk, DynamicValue(RS_67_promotion_p_promo_sk_bloom_filter))) and (cs_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(cs_sold_date_sk, DynamicValue(RS_61_date_dim_d_date_sk_bloom_filter))) and cs_catalog_page_sk is not null and cs_item_sk is not null and cs_promo_sk is not null and cs_sold_date_sk is not null) + Filter Operator [FIL_441] (rows=283691906 width=243) + predicate:((cs_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(cs_sold_date_sk, DynamicValue(RS_61_date_dim_d_date_sk_bloom_filter))) and cs_catalog_page_sk is not null and cs_item_sk is not null and cs_promo_sk is not null and cs_sold_date_sk is not null) TableScan [TS_39] (rows=287989836 width=243) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_catalog_page_sk","cs_item_sk","cs_promo_sk","cs_order_number","cs_ext_sales_price","cs_net_profit"] <-Reducer 19 [BROADCAST_EDGE] vectorized - BROADCAST [RS_462] - Group By Operator [GBY_461] (rows=1 width=12) + BROADCAST [RS_440] + Group By Operator [GBY_439] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Map 12 [CUSTOM_SIMPLE_EDGE] vectorized SHUFFLE [RS_405] @@ -363,47 +357,25 @@ Stage-0 Select Operator [SEL_398] (rows=8116 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_394] - <-Reducer 28 [BROADCAST_EDGE] vectorized - BROADCAST [RS_464] - Group By Operator [GBY_463] (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 - SHUFFLE [RS_421] - Group By Operator [GBY_418] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_414] (rows=154000 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_410] - <-Reducer 32 [BROADCAST_EDGE] vectorized - 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 30 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_437] - Group By Operator [GBY_434] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_430] (rows=1150 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_426] - <-Map 37 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_472] + <-Map 31 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_446] PartitionCols:_col0, _col1 - Select Operator [SEL_471] (rows=28798881 width=227) + Select Operator [SEL_445] (rows=28798881 width=227) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_470] (rows=28798881 width=227) + Filter Operator [FIL_444] (rows=28798881 width=227) predicate:cr_item_sk is not null TableScan [TS_42] (rows=28798881 width=227) default@catalog_returns,catalog_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["cr_item_sk","cr_order_number","cr_return_amount","cr_net_loss"] <-Reducer 24 [CONTAINS] vectorized - Reduce Output Operator [RS_500] + Reduce Output Operator [RS_470] PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_499] (rows=59581 width=627) + Group By Operator [GBY_469] (rows=59581 width=627) Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["sum(_col2)","sum(_col3)","sum(_col4)"],keys:_col0, _col1, 0L - Top N Key Operator [TNK_498] (rows=39721 width=618) + Top N Key Operator [TNK_468] (rows=39721 width=618) keys:_col0, _col1, 0L,sort order:+++,top n:100 - Select Operator [SEL_497] (rows=53 width=615) + Select Operator [SEL_467] (rows=53 width=615) Output:["_col0","_col1","_col2","_col3","_col4"] - Group By Operator [GBY_496] (rows=53 width=436) + Group By Operator [GBY_466] (rows=53 width=436) Output:["_col0","_col1","_col2","_col3"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)"],keys:KEY._col0 <-Reducer 23 [SIMPLE_EDGE] SHUFFLE [RS_115] @@ -413,13 +385,13 @@ Stage-0 Select Operator [SEL_112] (rows=4714659 width=323) Output:["_col0","_col1","_col2","_col3"] Merge Join Operator [MERGEJOIN_374] (rows=4714659 width=323) - Conds:RS_109._col2=RS_495._col0(Inner),Output:["_col5","_col6","_col9","_col10","_col18"] - <-Map 42 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_495] + Conds:RS_109._col2=RS_465._col0(Inner),Output:["_col5","_col6","_col9","_col10","_col18"] + <-Map 36 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_465] PartitionCols:_col0 - Select Operator [SEL_494] (rows=84 width=104) + Select Operator [SEL_464] (rows=84 width=104) Output:["_col0","_col1"] - Filter Operator [FIL_493] (rows=84 width=104) + Filter Operator [FIL_463] (rows=84 width=104) predicate:web_site_sk is not null TableScan [TS_94] (rows=84 width=104) default@web_site,web_site,Tbl:COMPLETE,Col:COMPLETE,Output:["web_site_sk","web_site_id"] @@ -427,20 +399,20 @@ Stage-0 SHUFFLE [RS_109] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_373] (rows=4714659 width=227) - Conds:RS_106._col3=RS_431._col0(Inner),Output:["_col2","_col5","_col6","_col9","_col10"] - <-Map 30 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_431] + Conds:RS_106._col3=RS_424._col0(Inner),Output:["_col2","_col5","_col6","_col9","_col10"] + <-Map 27 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_424] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_426] + Please refer to the previous Select Operator [SEL_421] <-Reducer 21 [SIMPLE_EDGE] SHUFFLE [RS_106] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_372] (rows=9429318 width=231) - Conds:RS_103._col1=RS_415._col0(Inner),Output:["_col2","_col3","_col5","_col6","_col9","_col10"] + Conds:RS_103._col1=RS_419._col0(Inner),Output:["_col2","_col3","_col5","_col6","_col9","_col10"] <-Map 26 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_415] + SHUFFLE [RS_419] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_410] + Please refer to the previous Select Operator [SEL_416] <-Reducer 20 [SIMPLE_EDGE] SHUFFLE [RS_103] PartitionCols:_col1 @@ -450,23 +422,23 @@ Stage-0 SHUFFLE [RS_399] PartitionCols:_col0 Please refer to the previous Select Operator [SEL_394] - <-Reducer 40 [SIMPLE_EDGE] + <-Reducer 34 [SIMPLE_EDGE] SHUFFLE [RS_100] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_370] (rows=254608997 width=363) - Conds:RS_489._col1, _col4=RS_492._col0, _col1(Left Outer),Output:["_col0","_col1","_col2","_col3","_col5","_col6","_col9","_col10"] - <-Map 39 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_489] + Conds:RS_459._col1, _col4=RS_462._col0, _col1(Left Outer),Output:["_col0","_col1","_col2","_col3","_col5","_col6","_col9","_col10"] + <-Map 33 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_459] PartitionCols:_col1, _col4 - Select Operator [SEL_488] (rows=143894769 width=243) + Select Operator [SEL_458] (rows=143894769 width=243) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] - Filter Operator [FIL_487] (rows=143894769 width=243) - predicate:((ws_item_sk BETWEEN DynamicValue(RS_104_item_i_item_sk_min) AND DynamicValue(RS_104_item_i_item_sk_max) and in_bloom_filter(ws_item_sk, DynamicValue(RS_104_item_i_item_sk_bloom_filter))) and (ws_promo_sk BETWEEN DynamicValue(RS_107_promotion_p_promo_sk_min) AND DynamicValue(RS_107_promotion_p_promo_sk_max) and in_bloom_filter(ws_promo_sk, DynamicValue(RS_107_promotion_p_promo_sk_bloom_filter))) and (ws_sold_date_sk BETWEEN DynamicValue(RS_101_date_dim_d_date_sk_min) AND DynamicValue(RS_101_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_101_date_dim_d_date_sk_bloom_filter))) and ws_item_sk is not null and ws_promo_sk is not null and ws_sold_date_sk is not null and ws_web_site_sk is not null) + Filter Operator [FIL_457] (rows=143894769 width=243) + predicate:((ws_sold_date_sk BETWEEN DynamicValue(RS_101_date_dim_d_date_sk_min) AND DynamicValue(RS_101_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_101_date_dim_d_date_sk_bloom_filter))) and ws_item_sk is not null and ws_promo_sk is not null and ws_sold_date_sk is not null and ws_web_site_sk is not null) TableScan [TS_79] (rows=144002668 width=243) default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_item_sk","ws_web_site_sk","ws_promo_sk","ws_order_number","ws_ext_sales_price","ws_net_profit"] <-Reducer 25 [BROADCAST_EDGE] vectorized - BROADCAST [RS_482] - Group By Operator [GBY_481] (rows=1 width=12) + BROADCAST [RS_456] + Group By Operator [GBY_455] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Map 12 [CUSTOM_SIMPLE_EDGE] vectorized SHUFFLE [RS_406] @@ -475,47 +447,25 @@ Stage-0 Select Operator [SEL_400] (rows=8116 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_394] - <-Reducer 29 [BROADCAST_EDGE] vectorized - BROADCAST [RS_484] - Group By Operator [GBY_483] (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 - SHUFFLE [RS_422] - Group By Operator [GBY_419] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_416] (rows=154000 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_410] - <-Reducer 33 [BROADCAST_EDGE] vectorized - BROADCAST [RS_486] - Group By Operator [GBY_485] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 30 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_438] - Group By Operator [GBY_435] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_432] (rows=1150 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_426] - <-Map 41 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_492] + <-Map 35 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_462] PartitionCols:_col0, _col1 - Select Operator [SEL_491] (rows=14398467 width=221) + Select Operator [SEL_461] (rows=14398467 width=221) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_490] (rows=14398467 width=221) + Filter Operator [FIL_460] (rows=14398467 width=221) predicate:wr_item_sk is not null TableScan [TS_82] (rows=14398467 width=221) default@web_returns,web_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["wr_item_sk","wr_order_number","wr_return_amt","wr_net_loss"] <-Reducer 7 [CONTAINS] vectorized - Reduce Output Operator [RS_454] + Reduce Output Operator [RS_432] PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_453] (rows=59581 width=627) + Group By Operator [GBY_431] (rows=59581 width=627) Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["sum(_col2)","sum(_col3)","sum(_col4)"],keys:_col0, _col1, 0L - Top N Key Operator [TNK_452] (rows=39721 width=618) + Top N Key Operator [TNK_430] (rows=39721 width=618) keys:_col0, _col1, 0L,sort order:+++,top n:100 - Select Operator [SEL_451] (rows=822 width=617) + Select Operator [SEL_429] (rows=822 width=617) Output:["_col0","_col1","_col2","_col3","_col4"] - Group By Operator [GBY_450] (rows=822 width=436) + Group By Operator [GBY_428] (rows=822 width=436) Output:["_col0","_col1","_col2","_col3"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)"],keys:KEY._col0 <-Reducer 6 [SIMPLE_EDGE] SHUFFLE [RS_36] @@ -525,13 +475,13 @@ Stage-0 Select Operator [SEL_33] (rows=15038783 width=100) Output:["_col0","_col1","_col2","_col3"] Merge Join Operator [MERGEJOIN_364] (rows=15038783 width=100) - Conds:RS_30._col2=RS_449._col0(Inner),Output:["_col5","_col6","_col9","_col10","_col18"] - <-Map 34 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_449] + Conds:RS_30._col2=RS_427._col0(Inner),Output:["_col5","_col6","_col9","_col10","_col18"] + <-Map 28 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_427] PartitionCols:_col0 - Select Operator [SEL_448] (rows=1704 width=104) + Select Operator [SEL_426] (rows=1704 width=104) Output:["_col0","_col1"] - Filter Operator [FIL_447] (rows=1704 width=104) + Filter Operator [FIL_425] (rows=1704 width=104) predicate:s_store_sk is not null TableScan [TS_15] (rows=1704 width=104) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_store_id"] @@ -539,20 +489,20 @@ Stage-0 SHUFFLE [RS_30] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_363] (rows=15038783 width=0) - Conds:RS_27._col3=RS_427._col0(Inner),Output:["_col2","_col5","_col6","_col9","_col10"] - <-Map 30 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_427] + Conds:RS_27._col3=RS_422._col0(Inner),Output:["_col2","_col5","_col6","_col9","_col10"] + <-Map 27 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_422] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_426] + Please refer to the previous Select Operator [SEL_421] <-Reducer 4 [SIMPLE_EDGE] SHUFFLE [RS_27] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_362] (rows=30077566 width=57) - Conds:RS_24._col1=RS_411._col0(Inner),Output:["_col2","_col3","_col5","_col6","_col9","_col10"] + Conds:RS_24._col1=RS_417._col0(Inner),Output:["_col2","_col3","_col5","_col6","_col9","_col10"] <-Map 26 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_411] + SHUFFLE [RS_417] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_410] + Please refer to the previous Select Operator [SEL_416] <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_24] PartitionCols:_col1 @@ -566,14 +516,14 @@ Stage-0 SHUFFLE [RS_21] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_360] (rows=812149846 width=374) - Conds:RS_443._col1, _col4=RS_446._col0, _col1(Left Outer),Output:["_col0","_col1","_col2","_col3","_col5","_col6","_col9","_col10"] + Conds:RS_411._col1, _col4=RS_414._col0, _col1(Left Outer),Output:["_col0","_col1","_col2","_col3","_col5","_col6","_col9","_col10"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_443] + SHUFFLE [RS_411] PartitionCols:_col1, _col4 - Select Operator [SEL_442] (rows=501693263 width=233) + Select Operator [SEL_410] (rows=501693263 width=233) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] - Filter Operator [FIL_441] (rows=501693263 width=233) - predicate:((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_promo_sk BETWEEN DynamicValue(RS_28_promotion_p_promo_sk_min) AND DynamicValue(RS_28_promotion_p_promo_sk_max) and in_bloom_filter(ss_promo_sk, DynamicValue(RS_28_promotion_p_promo_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_item_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) + Filter Operator [FIL_409] (rows=501693263 width=233) + predicate:((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_item_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_0] (rows=575995635 width=233) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_store_sk","ss_promo_sk","ss_ticket_number","ss_ext_sales_price","ss_net_profit"] <-Reducer 13 [BROADCAST_EDGE] vectorized @@ -587,34 +537,12 @@ Stage-0 Select Operator [SEL_396] (rows=8116 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_394] - <-Reducer 27 [BROADCAST_EDGE] vectorized - BROADCAST [RS_424] - Group By Operator [GBY_423] (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 - SHUFFLE [RS_420] - Group By Operator [GBY_417] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_412] (rows=154000 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_410] - <-Reducer 31 [BROADCAST_EDGE] vectorized - BROADCAST [RS_440] - Group By Operator [GBY_439] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 30 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_436] - Group By Operator [GBY_433] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_428] (rows=1150 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_426] <-Map 11 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_446] + SHUFFLE [RS_414] PartitionCols:_col0, _col1 - Select Operator [SEL_445] (rows=57591150 width=224) + Select Operator [SEL_413] (rows=57591150 width=224) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_444] (rows=57591150 width=224) + Filter Operator [FIL_412] (rows=57591150 width=224) predicate:sr_item_sk is not null TableScan [TS_3] (rows=57591150 width=224) default@store_returns,store_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["sr_item_sk","sr_ticket_number","sr_return_amt","sr_net_loss"] diff --git a/ql/src/test/results/clientpositive/perf/tez/query82.q.out b/ql/src/test/results/clientpositive/perf/tez/query82.q.out index 6bc9666784..81f81f6a0d 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query82.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query82.q.out @@ -43,28 +43,27 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 10 (BROADCAST_EDGE), Reducer 7 (BROADCAST_EDGE) -Reducer 10 <- Reducer 9 (CUSTOM_SIMPLE_EDGE) +Map 1 <- Reducer 7 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (ONE_TO_ONE_EDGE), Reducer 9 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) Reducer 7 <- Map 6 (CUSTOM_SIMPLE_EDGE) -Reducer 9 <- Map 11 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) +Reducer 9 <- Map 10 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) Stage-0 Fetch Operator limit:100 Stage-1 Reducer 5 vectorized - File Output Operator [FS_103] - Limit [LIM_102] (rows=1 width=396) + File Output Operator [FS_101] + Limit [LIM_100] (rows=1 width=396) Number of rows:100 - Select Operator [SEL_101] (rows=1 width=396) + Select Operator [SEL_99] (rows=1 width=396) Output:["_col0","_col1","_col2"] <-Reducer 4 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_100] - Group By Operator [GBY_99] (rows=1 width=396) + SHUFFLE [RS_98] + Group By Operator [GBY_97] (rows=1 width=396) Output:["_col0","_col1","_col2"],keys:KEY._col0, KEY._col1, KEY._col2 <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_24] @@ -75,34 +74,11 @@ Stage-0 keys:_col2, _col3, _col4,sort order:+++,top n:100 Merge Join Operator [MERGEJOIN_79] (rows=2871 width=396) Conds:RS_19._col1=RS_20._col1(Inner),Output:["_col2","_col3","_col4"] - <-Reducer 9 [SIMPLE_EDGE] - SHUFFLE [RS_20] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_78] (rows=463969 width=4) - Conds:RS_90._col0=RS_93._col0(Inner),Output:["_col1"] - <-Map 11 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_93] - PartitionCols:_col0 - Select Operator [SEL_92] (rows=8116 width=98) - Output:["_col0"] - Filter Operator [FIL_91] (rows=8116 width=98) - predicate:(CAST( d_date AS TIMESTAMP) BETWEEN TIMESTAMP'2002-05-30 00:00:00' AND TIMESTAMP'2002-07-29 00:00:00' and d_date_sk is not null) - TableScan [TS_9] (rows=73049 width=98) - default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"] - <-Map 8 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_90] - PartitionCols:_col0 - Select Operator [SEL_89] (rows=4176000 width=11) - Output:["_col0","_col1"] - Filter Operator [FIL_88] (rows=4176000 width=11) - predicate:(inv_date_sk is not null and inv_item_sk is not null and inv_quantity_on_hand BETWEEN 100 AND 500) - TableScan [TS_6] (rows=37584000 width=11) - default@inventory,inventory,Tbl:COMPLETE,Col:COMPLETE,Output:["inv_date_sk","inv_item_sk","inv_quantity_on_hand"] <-Reducer 2 [ONE_TO_ONE_EDGE] FORWARD [RS_19] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_77] (rows=3564040 width=400) - Conds:RS_98._col0=RS_82._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + Conds:RS_90._col0=RS_82._col0(Inner),Output:["_col1","_col2","_col3","_col4"] <-Map 6 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_82] PartitionCols:_col0 @@ -113,25 +89,14 @@ Stage-0 TableScan [TS_3] (rows=462000 width=403) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_item_id","i_item_desc","i_current_price","i_manufact_id"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_98] + SHUFFLE [RS_90] PartitionCols:_col0 - Select Operator [SEL_97] (rows=575995635 width=4) + Select Operator [SEL_89] (rows=575995635 width=4) Output:["_col0"] - Filter Operator [FIL_96] (rows=575995635 width=4) - predicate:((ss_item_sk BETWEEN DynamicValue(RS_17_item_i_item_sk_min) AND DynamicValue(RS_17_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_17_item_i_item_sk_bloom_filter))) and (ss_item_sk BETWEEN DynamicValue(RS_20_inventory_inv_item_sk_min) AND DynamicValue(RS_20_inventory_inv_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_20_inventory_inv_item_sk_bloom_filter))) and ss_item_sk is not null) + Filter Operator [FIL_88] (rows=575995635 width=4) + predicate:((ss_item_sk BETWEEN DynamicValue(RS_17_item_i_item_sk_min) AND DynamicValue(RS_17_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_17_item_i_item_sk_bloom_filter))) and ss_item_sk is not null) TableScan [TS_0] (rows=575995635 width=4) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_item_sk"] - <-Reducer 10 [BROADCAST_EDGE] vectorized - BROADCAST [RS_95] - Group By Operator [GBY_94] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Reducer 9 [CUSTOM_SIMPLE_EDGE] - SHUFFLE [RS_51] - Group By Operator [GBY_50] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_49] (rows=463969 width=8) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_78] <-Reducer 7 [BROADCAST_EDGE] vectorized BROADCAST [RS_87] Group By Operator [GBY_86] (rows=1 width=12) @@ -143,4 +108,27 @@ Stage-0 Select Operator [SEL_83] (rows=297 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_81] + <-Reducer 9 [SIMPLE_EDGE] + SHUFFLE [RS_20] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_78] (rows=463969 width=4) + Conds:RS_93._col0=RS_96._col0(Inner),Output:["_col1"] + <-Map 10 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_96] + PartitionCols:_col0 + Select Operator [SEL_95] (rows=8116 width=98) + Output:["_col0"] + Filter Operator [FIL_94] (rows=8116 width=98) + predicate:(CAST( d_date AS TIMESTAMP) BETWEEN TIMESTAMP'2002-05-30 00:00:00' AND TIMESTAMP'2002-07-29 00:00:00' and d_date_sk is not null) + TableScan [TS_9] (rows=73049 width=98) + default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"] + <-Map 8 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_93] + PartitionCols:_col0 + Select Operator [SEL_92] (rows=4176000 width=11) + Output:["_col0","_col1"] + Filter Operator [FIL_91] (rows=4176000 width=11) + predicate:(inv_date_sk is not null and inv_item_sk is not null and inv_quantity_on_hand BETWEEN 100 AND 500) + TableScan [TS_6] (rows=37584000 width=11) + default@inventory,inventory,Tbl:COMPLETE,Col:COMPLETE,Output:["inv_date_sk","inv_item_sk","inv_quantity_on_hand"] diff --git a/ql/src/test/results/clientpositive/perf/tez/query88.q.out b/ql/src/test/results/clientpositive/perf/tez/query88.q.out index 28a970755c..b24d97195f 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query88.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query88.q.out @@ -202,77 +202,61 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 14 (BROADCAST_EDGE), Reducer 51 (BROADCAST_EDGE), Reducer 60 (BROADCAST_EDGE) -Map 68 <- Reducer 19 (BROADCAST_EDGE), Reducer 52 (BROADCAST_EDGE), Reducer 61 (BROADCAST_EDGE) -Map 69 <- Reducer 24 (BROADCAST_EDGE), Reducer 53 (BROADCAST_EDGE), Reducer 62 (BROADCAST_EDGE) -Map 70 <- Reducer 29 (BROADCAST_EDGE), Reducer 54 (BROADCAST_EDGE), Reducer 63 (BROADCAST_EDGE) -Map 71 <- Reducer 34 (BROADCAST_EDGE), Reducer 55 (BROADCAST_EDGE), Reducer 64 (BROADCAST_EDGE) -Map 72 <- Reducer 39 (BROADCAST_EDGE), Reducer 56 (BROADCAST_EDGE), Reducer 65 (BROADCAST_EDGE) -Map 73 <- Reducer 44 (BROADCAST_EDGE), Reducer 57 (BROADCAST_EDGE), Reducer 66 (BROADCAST_EDGE) -Map 74 <- Reducer 49 (BROADCAST_EDGE), Reducer 58 (BROADCAST_EDGE), Reducer 67 (BROADCAST_EDGE) -Reducer 10 <- Reducer 38 (CUSTOM_SIMPLE_EDGE), Reducer 9 (CUSTOM_SIMPLE_EDGE) -Reducer 11 <- Reducer 10 (CUSTOM_SIMPLE_EDGE), Reducer 43 (CUSTOM_SIMPLE_EDGE) -Reducer 12 <- Reducer 11 (CUSTOM_SIMPLE_EDGE), Reducer 48 (CUSTOM_SIMPLE_EDGE) -Reducer 14 <- Map 13 (CUSTOM_SIMPLE_EDGE) -Reducer 15 <- Map 13 (SIMPLE_EDGE), Map 68 (SIMPLE_EDGE) -Reducer 16 <- Map 50 (SIMPLE_EDGE), Reducer 15 (SIMPLE_EDGE) -Reducer 17 <- Map 59 (SIMPLE_EDGE), Reducer 16 (SIMPLE_EDGE) -Reducer 18 <- Reducer 17 (CUSTOM_SIMPLE_EDGE) -Reducer 19 <- Map 13 (CUSTOM_SIMPLE_EDGE) +Map 1 <- Reducer 43 (BROADCAST_EDGE) +Map 52 <- Reducer 44 (BROADCAST_EDGE) +Map 53 <- Reducer 45 (BROADCAST_EDGE) +Map 54 <- Reducer 46 (BROADCAST_EDGE) +Map 55 <- Reducer 47 (BROADCAST_EDGE) +Map 56 <- Reducer 48 (BROADCAST_EDGE) +Map 57 <- Reducer 49 (BROADCAST_EDGE) +Map 58 <- Reducer 50 (BROADCAST_EDGE) +Reducer 10 <- Reducer 33 (CUSTOM_SIMPLE_EDGE), Reducer 9 (CUSTOM_SIMPLE_EDGE) +Reducer 11 <- Reducer 10 (CUSTOM_SIMPLE_EDGE), Reducer 37 (CUSTOM_SIMPLE_EDGE) +Reducer 12 <- Reducer 11 (CUSTOM_SIMPLE_EDGE), Reducer 41 (CUSTOM_SIMPLE_EDGE) +Reducer 14 <- Map 13 (SIMPLE_EDGE), Map 52 (SIMPLE_EDGE) +Reducer 15 <- Map 42 (SIMPLE_EDGE), Reducer 14 (SIMPLE_EDGE) +Reducer 16 <- Map 51 (SIMPLE_EDGE), Reducer 15 (SIMPLE_EDGE) +Reducer 17 <- Reducer 16 (CUSTOM_SIMPLE_EDGE) +Reducer 18 <- Map 13 (SIMPLE_EDGE), Map 53 (SIMPLE_EDGE) +Reducer 19 <- Map 42 (SIMPLE_EDGE), Reducer 18 (SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 13 (SIMPLE_EDGE) -Reducer 20 <- Map 13 (SIMPLE_EDGE), Map 69 (SIMPLE_EDGE) -Reducer 21 <- Map 50 (SIMPLE_EDGE), Reducer 20 (SIMPLE_EDGE) -Reducer 22 <- Map 59 (SIMPLE_EDGE), Reducer 21 (SIMPLE_EDGE) -Reducer 23 <- Reducer 22 (CUSTOM_SIMPLE_EDGE) -Reducer 24 <- Map 13 (CUSTOM_SIMPLE_EDGE) -Reducer 25 <- Map 13 (SIMPLE_EDGE), Map 70 (SIMPLE_EDGE) -Reducer 26 <- Map 50 (SIMPLE_EDGE), Reducer 25 (SIMPLE_EDGE) -Reducer 27 <- Map 59 (SIMPLE_EDGE), Reducer 26 (SIMPLE_EDGE) -Reducer 28 <- Reducer 27 (CUSTOM_SIMPLE_EDGE) -Reducer 29 <- Map 13 (CUSTOM_SIMPLE_EDGE) -Reducer 3 <- Map 50 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 30 <- Map 13 (SIMPLE_EDGE), Map 71 (SIMPLE_EDGE) -Reducer 31 <- Map 50 (SIMPLE_EDGE), Reducer 30 (SIMPLE_EDGE) -Reducer 32 <- Map 59 (SIMPLE_EDGE), Reducer 31 (SIMPLE_EDGE) +Reducer 20 <- Map 51 (SIMPLE_EDGE), Reducer 19 (SIMPLE_EDGE) +Reducer 21 <- Reducer 20 (CUSTOM_SIMPLE_EDGE) +Reducer 22 <- Map 13 (SIMPLE_EDGE), Map 54 (SIMPLE_EDGE) +Reducer 23 <- Map 42 (SIMPLE_EDGE), Reducer 22 (SIMPLE_EDGE) +Reducer 24 <- Map 51 (SIMPLE_EDGE), Reducer 23 (SIMPLE_EDGE) +Reducer 25 <- Reducer 24 (CUSTOM_SIMPLE_EDGE) +Reducer 26 <- Map 13 (SIMPLE_EDGE), Map 55 (SIMPLE_EDGE) +Reducer 27 <- Map 42 (SIMPLE_EDGE), Reducer 26 (SIMPLE_EDGE) +Reducer 28 <- Map 51 (SIMPLE_EDGE), Reducer 27 (SIMPLE_EDGE) +Reducer 29 <- Reducer 28 (CUSTOM_SIMPLE_EDGE) +Reducer 3 <- Map 42 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 30 <- Map 13 (SIMPLE_EDGE), Map 56 (SIMPLE_EDGE) +Reducer 31 <- Map 42 (SIMPLE_EDGE), Reducer 30 (SIMPLE_EDGE) +Reducer 32 <- Map 51 (SIMPLE_EDGE), Reducer 31 (SIMPLE_EDGE) Reducer 33 <- Reducer 32 (CUSTOM_SIMPLE_EDGE) -Reducer 34 <- Map 13 (CUSTOM_SIMPLE_EDGE) -Reducer 35 <- Map 13 (SIMPLE_EDGE), Map 72 (SIMPLE_EDGE) -Reducer 36 <- Map 50 (SIMPLE_EDGE), Reducer 35 (SIMPLE_EDGE) -Reducer 37 <- Map 59 (SIMPLE_EDGE), Reducer 36 (SIMPLE_EDGE) -Reducer 38 <- Reducer 37 (CUSTOM_SIMPLE_EDGE) -Reducer 39 <- Map 13 (CUSTOM_SIMPLE_EDGE) -Reducer 4 <- Map 59 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 40 <- Map 13 (SIMPLE_EDGE), Map 73 (SIMPLE_EDGE) -Reducer 41 <- Map 50 (SIMPLE_EDGE), Reducer 40 (SIMPLE_EDGE) -Reducer 42 <- Map 59 (SIMPLE_EDGE), Reducer 41 (SIMPLE_EDGE) -Reducer 43 <- Reducer 42 (CUSTOM_SIMPLE_EDGE) -Reducer 44 <- Map 13 (CUSTOM_SIMPLE_EDGE) -Reducer 45 <- Map 13 (SIMPLE_EDGE), Map 74 (SIMPLE_EDGE) -Reducer 46 <- Map 50 (SIMPLE_EDGE), Reducer 45 (SIMPLE_EDGE) -Reducer 47 <- Map 59 (SIMPLE_EDGE), Reducer 46 (SIMPLE_EDGE) -Reducer 48 <- Reducer 47 (CUSTOM_SIMPLE_EDGE) -Reducer 49 <- Map 13 (CUSTOM_SIMPLE_EDGE) +Reducer 34 <- Map 13 (SIMPLE_EDGE), Map 57 (SIMPLE_EDGE) +Reducer 35 <- Map 42 (SIMPLE_EDGE), Reducer 34 (SIMPLE_EDGE) +Reducer 36 <- Map 51 (SIMPLE_EDGE), Reducer 35 (SIMPLE_EDGE) +Reducer 37 <- Reducer 36 (CUSTOM_SIMPLE_EDGE) +Reducer 38 <- Map 13 (SIMPLE_EDGE), Map 58 (SIMPLE_EDGE) +Reducer 39 <- Map 42 (SIMPLE_EDGE), Reducer 38 (SIMPLE_EDGE) +Reducer 4 <- Map 51 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 40 <- Map 51 (SIMPLE_EDGE), Reducer 39 (SIMPLE_EDGE) +Reducer 41 <- Reducer 40 (CUSTOM_SIMPLE_EDGE) +Reducer 43 <- Map 42 (CUSTOM_SIMPLE_EDGE) +Reducer 44 <- Map 42 (CUSTOM_SIMPLE_EDGE) +Reducer 45 <- Map 42 (CUSTOM_SIMPLE_EDGE) +Reducer 46 <- Map 42 (CUSTOM_SIMPLE_EDGE) +Reducer 47 <- Map 42 (CUSTOM_SIMPLE_EDGE) +Reducer 48 <- Map 42 (CUSTOM_SIMPLE_EDGE) +Reducer 49 <- Map 42 (CUSTOM_SIMPLE_EDGE) Reducer 5 <- Reducer 4 (CUSTOM_SIMPLE_EDGE) -Reducer 51 <- Map 50 (CUSTOM_SIMPLE_EDGE) -Reducer 52 <- Map 50 (CUSTOM_SIMPLE_EDGE) -Reducer 53 <- Map 50 (CUSTOM_SIMPLE_EDGE) -Reducer 54 <- Map 50 (CUSTOM_SIMPLE_EDGE) -Reducer 55 <- Map 50 (CUSTOM_SIMPLE_EDGE) -Reducer 56 <- Map 50 (CUSTOM_SIMPLE_EDGE) -Reducer 57 <- Map 50 (CUSTOM_SIMPLE_EDGE) -Reducer 58 <- Map 50 (CUSTOM_SIMPLE_EDGE) -Reducer 6 <- Reducer 18 (CUSTOM_SIMPLE_EDGE), Reducer 5 (CUSTOM_SIMPLE_EDGE) -Reducer 60 <- Map 59 (CUSTOM_SIMPLE_EDGE) -Reducer 61 <- Map 59 (CUSTOM_SIMPLE_EDGE) -Reducer 62 <- Map 59 (CUSTOM_SIMPLE_EDGE) -Reducer 63 <- Map 59 (CUSTOM_SIMPLE_EDGE) -Reducer 64 <- Map 59 (CUSTOM_SIMPLE_EDGE) -Reducer 65 <- Map 59 (CUSTOM_SIMPLE_EDGE) -Reducer 66 <- Map 59 (CUSTOM_SIMPLE_EDGE) -Reducer 67 <- Map 59 (CUSTOM_SIMPLE_EDGE) -Reducer 7 <- Reducer 23 (CUSTOM_SIMPLE_EDGE), Reducer 6 (CUSTOM_SIMPLE_EDGE) -Reducer 8 <- Reducer 28 (CUSTOM_SIMPLE_EDGE), Reducer 7 (CUSTOM_SIMPLE_EDGE) -Reducer 9 <- Reducer 33 (CUSTOM_SIMPLE_EDGE), Reducer 8 (CUSTOM_SIMPLE_EDGE) +Reducer 50 <- Map 42 (CUSTOM_SIMPLE_EDGE) +Reducer 6 <- Reducer 17 (CUSTOM_SIMPLE_EDGE), Reducer 5 (CUSTOM_SIMPLE_EDGE) +Reducer 7 <- Reducer 21 (CUSTOM_SIMPLE_EDGE), Reducer 6 (CUSTOM_SIMPLE_EDGE) +Reducer 8 <- Reducer 25 (CUSTOM_SIMPLE_EDGE), Reducer 7 (CUSTOM_SIMPLE_EDGE) +Reducer 9 <- Reducer 29 (CUSTOM_SIMPLE_EDGE), Reducer 8 (CUSTOM_SIMPLE_EDGE) Stage-0 Fetch Operator @@ -292,655 +276,479 @@ Stage-0 PARTITION_ONLY_SHUFFLE [RS_223] Merge Join Operator [MERGEJOIN_603] (rows=1 width=48) Conds:(Inner),Output:["_col0","_col1","_col2","_col3","_col4","_col5"] - <-Reducer 38 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_787] - Group By Operator [GBY_786] (rows=1 width=8) + <-Reducer 33 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_715] + Group By Operator [GBY_714] (rows=1 width=8) Output:["_col0"],aggregations:["count(VALUE._col0)"] - <-Reducer 37 [CUSTOM_SIMPLE_EDGE] + <-Reducer 32 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_153] Group By Operator [GBY_152] (rows=1 width=8) Output:["_col0"],aggregations:["count()"] Merge Join Operator [MERGEJOIN_592] (rows=1352994 width=8) - Conds:RS_148._col2=RS_704._col0(Inner) - <-Map 59 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_704] + Conds:RS_148._col2=RS_676._col0(Inner) + <-Map 51 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_676] PartitionCols:_col0 - Select Operator [SEL_693] (rows=155 width=91) + Select Operator [SEL_670] (rows=155 width=91) Output:["_col0"] - Filter Operator [FIL_692] (rows=155 width=92) + Filter Operator [FIL_669] (rows=155 width=92) predicate:((s_store_name = 'ese') and s_store_sk is not null) TableScan [TS_9] (rows=1704 width=92) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_store_name"] - <-Reducer 36 [SIMPLE_EDGE] + <-Reducer 31 [SIMPLE_EDGE] SHUFFLE [RS_148] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_591] (rows=1842898 width=0) - Conds:RS_145._col0=RS_668._col0(Inner),Output:["_col2"] - <-Map 50 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_668] + Conds:RS_145._col0=RS_632._col0(Inner),Output:["_col2"] + <-Map 42 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_632] PartitionCols:_col0 - Select Operator [SEL_655] (rows=1515 width=12) + Select Operator [SEL_619] (rows=1515 width=12) Output:["_col0"] - Filter Operator [FIL_647] (rows=1515 width=12) + Filter Operator [FIL_611] (rows=1515 width=12) predicate:((t_hour = 10) and (t_minute < 30) and t_time_sk is not null) TableScan [TS_6] (rows=86400 width=12) default@time_dim,time_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["t_time_sk","t_hour","t_minute"] - <-Reducer 35 [SIMPLE_EDGE] + <-Reducer 30 [SIMPLE_EDGE] SHUFFLE [RS_145] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_590] (rows=56928540 width=4) - Conds:RS_785._col1=RS_618._col0(Inner),Output:["_col0","_col2"] + Conds:RS_713._col1=RS_666._col0(Inner),Output:["_col0","_col2"] <-Map 13 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_618] + SHUFFLE [RS_666] PartitionCols:_col0 - Select Operator [SEL_607] (rows=817 width=12) + Select Operator [SEL_660] (rows=817 width=12) Output:["_col0"] - Filter Operator [FIL_606] (rows=817 width=12) + Filter Operator [FIL_659] (rows=817 width=12) predicate:((((hd_dep_count = 3) and hd_vehicle_count is not null) or ((hd_dep_count = 0) and (hd_vehicle_count <= 2)) or ((hd_dep_count = 1) and (hd_vehicle_count <= 3))) and (hd_dep_count) IN (3, 0, 1) and (hd_vehicle_count <= 5) and hd_demo_sk is not null) TableScan [TS_3] (rows=7200 width=12) default@household_demographics,household_demographics,Tbl:COMPLETE,Col:COMPLETE,Output:["hd_demo_sk","hd_dep_count","hd_vehicle_count"] - <-Map 72 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_785] + <-Map 56 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_713] PartitionCols:_col1 - Select Operator [SEL_784] (rows=501695814 width=11) + Select Operator [SEL_712] (rows=501695814 width=11) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_783] (rows=501695814 width=11) - predicate:((ss_hdemo_sk BETWEEN DynamicValue(RS_143_household_demographics_hd_demo_sk_min) AND DynamicValue(RS_143_household_demographics_hd_demo_sk_max) and in_bloom_filter(ss_hdemo_sk, DynamicValue(RS_143_household_demographics_hd_demo_sk_bloom_filter))) and (ss_sold_time_sk BETWEEN DynamicValue(RS_146_time_dim_t_time_sk_min) AND DynamicValue(RS_146_time_dim_t_time_sk_max) and in_bloom_filter(ss_sold_time_sk, DynamicValue(RS_146_time_dim_t_time_sk_bloom_filter))) and (ss_store_sk BETWEEN DynamicValue(RS_149_store_s_store_sk_min) AND DynamicValue(RS_149_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_149_store_s_store_sk_bloom_filter))) and ss_hdemo_sk is not null and ss_sold_time_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_711] (rows=501695814 width=11) + predicate:((ss_sold_time_sk BETWEEN DynamicValue(RS_146_time_dim_t_time_sk_min) AND DynamicValue(RS_146_time_dim_t_time_sk_max) and in_bloom_filter(ss_sold_time_sk, DynamicValue(RS_146_time_dim_t_time_sk_bloom_filter))) and ss_hdemo_sk is not null and ss_sold_time_sk is not null and ss_store_sk is not null) TableScan [TS_130] (rows=575995635 width=11) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_time_sk","ss_hdemo_sk","ss_store_sk"] - <-Reducer 39 [BROADCAST_EDGE] vectorized - BROADCAST [RS_778] - Group By Operator [GBY_777] (rows=1 width=12) + <-Reducer 48 [BROADCAST_EDGE] vectorized + BROADCAST [RS_710] + Group By Operator [GBY_709] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 13 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_637] - Group By Operator [GBY_629] (rows=1 width=12) + <-Map 42 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_651] + Group By Operator [GBY_643] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_619] (rows=817 width=4) + Select Operator [SEL_633] (rows=1515 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_607] - <-Reducer 56 [BROADCAST_EDGE] vectorized - BROADCAST [RS_780] - Group By Operator [GBY_779] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 50 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_687] - Group By Operator [GBY_679] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_669] (rows=1515 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_655] - <-Reducer 65 [BROADCAST_EDGE] vectorized - BROADCAST [RS_782] - Group By Operator [GBY_781] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 59 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_723] - Group By Operator [GBY_715] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_705] (rows=155 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_693] + Please refer to the previous Select Operator [SEL_619] <-Reducer 9 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_220] Merge Join Operator [MERGEJOIN_602] (rows=1 width=40) Conds:(Inner),Output:["_col0","_col1","_col2","_col3","_col4"] - <-Reducer 33 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_776] - Group By Operator [GBY_775] (rows=1 width=8) + <-Reducer 29 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_708] + Group By Operator [GBY_707] (rows=1 width=8) Output:["_col0"],aggregations:["count(VALUE._col0)"] - <-Reducer 32 [CUSTOM_SIMPLE_EDGE] + <-Reducer 28 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_127] Group By Operator [GBY_126] (rows=1 width=8) Output:["_col0"],aggregations:["count()"] Merge Join Operator [MERGEJOIN_589] (rows=1352994 width=8) - Conds:RS_122._col2=RS_702._col0(Inner) - <-Map 59 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_702] + Conds:RS_122._col2=RS_675._col0(Inner) + <-Map 51 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_675] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_693] - <-Reducer 31 [SIMPLE_EDGE] + Please refer to the previous Select Operator [SEL_670] + <-Reducer 27 [SIMPLE_EDGE] SHUFFLE [RS_122] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_588] (rows=1842898 width=0) - Conds:RS_119._col0=RS_666._col0(Inner),Output:["_col2"] - <-Map 50 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_666] + Conds:RS_119._col0=RS_630._col0(Inner),Output:["_col2"] + <-Map 42 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_630] PartitionCols:_col0 - Select Operator [SEL_654] (rows=1515 width=12) + Select Operator [SEL_618] (rows=1515 width=12) Output:["_col0"] - Filter Operator [FIL_646] (rows=1515 width=12) + Filter Operator [FIL_610] (rows=1515 width=12) predicate:((t_hour = 10) and (t_minute >= 30) and t_time_sk is not null) Please refer to the previous TableScan [TS_6] - <-Reducer 30 [SIMPLE_EDGE] + <-Reducer 26 [SIMPLE_EDGE] SHUFFLE [RS_119] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_587] (rows=56928540 width=4) - Conds:RS_774._col1=RS_616._col0(Inner),Output:["_col0","_col2"] + Conds:RS_706._col1=RS_665._col0(Inner),Output:["_col0","_col2"] <-Map 13 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_616] + SHUFFLE [RS_665] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_607] - <-Map 71 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_774] + Please refer to the previous Select Operator [SEL_660] + <-Map 55 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_706] PartitionCols:_col1 - Select Operator [SEL_773] (rows=501695814 width=11) + Select Operator [SEL_705] (rows=501695814 width=11) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_772] (rows=501695814 width=11) - predicate:((ss_hdemo_sk BETWEEN DynamicValue(RS_117_household_demographics_hd_demo_sk_min) AND DynamicValue(RS_117_household_demographics_hd_demo_sk_max) and in_bloom_filter(ss_hdemo_sk, DynamicValue(RS_117_household_demographics_hd_demo_sk_bloom_filter))) and (ss_sold_time_sk BETWEEN DynamicValue(RS_120_time_dim_t_time_sk_min) AND DynamicValue(RS_120_time_dim_t_time_sk_max) and in_bloom_filter(ss_sold_time_sk, DynamicValue(RS_120_time_dim_t_time_sk_bloom_filter))) and (ss_store_sk BETWEEN DynamicValue(RS_123_store_s_store_sk_min) AND DynamicValue(RS_123_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_123_store_s_store_sk_bloom_filter))) and ss_hdemo_sk is not null and ss_sold_time_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_704] (rows=501695814 width=11) + predicate:((ss_sold_time_sk BETWEEN DynamicValue(RS_120_time_dim_t_time_sk_min) AND DynamicValue(RS_120_time_dim_t_time_sk_max) and in_bloom_filter(ss_sold_time_sk, DynamicValue(RS_120_time_dim_t_time_sk_bloom_filter))) and ss_hdemo_sk is not null and ss_sold_time_sk is not null and ss_store_sk is not null) TableScan [TS_104] (rows=575995635 width=11) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_time_sk","ss_hdemo_sk","ss_store_sk"] - <-Reducer 34 [BROADCAST_EDGE] vectorized - BROADCAST [RS_767] - Group By Operator [GBY_766] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 13 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_636] - Group By Operator [GBY_628] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_617] (rows=817 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_607] - <-Reducer 55 [BROADCAST_EDGE] vectorized - BROADCAST [RS_769] - Group By Operator [GBY_768] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 50 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_686] - Group By Operator [GBY_678] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_667] (rows=1515 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_654] - <-Reducer 64 [BROADCAST_EDGE] vectorized - BROADCAST [RS_771] - Group By Operator [GBY_770] (rows=1 width=12) + <-Reducer 47 [BROADCAST_EDGE] vectorized + BROADCAST [RS_703] + Group By Operator [GBY_702] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 59 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_722] - Group By Operator [GBY_714] (rows=1 width=12) + <-Map 42 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_650] + Group By Operator [GBY_642] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_703] (rows=155 width=4) + Select Operator [SEL_631] (rows=1515 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_693] + Please refer to the previous Select Operator [SEL_618] <-Reducer 8 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_217] Merge Join Operator [MERGEJOIN_601] (rows=1 width=32) Conds:(Inner),Output:["_col0","_col1","_col2","_col3"] - <-Reducer 28 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_765] - Group By Operator [GBY_764] (rows=1 width=8) + <-Reducer 25 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_701] + Group By Operator [GBY_700] (rows=1 width=8) Output:["_col0"],aggregations:["count(VALUE._col0)"] - <-Reducer 27 [CUSTOM_SIMPLE_EDGE] + <-Reducer 24 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_101] Group By Operator [GBY_100] (rows=1 width=8) Output:["_col0"],aggregations:["count()"] Merge Join Operator [MERGEJOIN_586] (rows=1352994 width=8) - Conds:RS_96._col2=RS_700._col0(Inner) - <-Map 59 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_700] + Conds:RS_96._col2=RS_674._col0(Inner) + <-Map 51 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_674] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_693] - <-Reducer 26 [SIMPLE_EDGE] + Please refer to the previous Select Operator [SEL_670] + <-Reducer 23 [SIMPLE_EDGE] SHUFFLE [RS_96] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_585] (rows=1842898 width=0) - Conds:RS_93._col0=RS_664._col0(Inner),Output:["_col2"] - <-Map 50 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_664] + Conds:RS_93._col0=RS_628._col0(Inner),Output:["_col2"] + <-Map 42 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_628] PartitionCols:_col0 - Select Operator [SEL_653] (rows=1515 width=12) + Select Operator [SEL_617] (rows=1515 width=12) Output:["_col0"] - Filter Operator [FIL_645] (rows=1515 width=12) + Filter Operator [FIL_609] (rows=1515 width=12) predicate:((t_hour = 11) and (t_minute < 30) and t_time_sk is not null) Please refer to the previous TableScan [TS_6] - <-Reducer 25 [SIMPLE_EDGE] + <-Reducer 22 [SIMPLE_EDGE] SHUFFLE [RS_93] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_584] (rows=56928540 width=4) - Conds:RS_763._col1=RS_614._col0(Inner),Output:["_col0","_col2"] + Conds:RS_699._col1=RS_664._col0(Inner),Output:["_col0","_col2"] <-Map 13 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_614] + SHUFFLE [RS_664] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_607] - <-Map 70 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_763] + Please refer to the previous Select Operator [SEL_660] + <-Map 54 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_699] PartitionCols:_col1 - Select Operator [SEL_762] (rows=501695814 width=11) + Select Operator [SEL_698] (rows=501695814 width=11) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_761] (rows=501695814 width=11) - predicate:((ss_hdemo_sk BETWEEN DynamicValue(RS_91_household_demographics_hd_demo_sk_min) AND DynamicValue(RS_91_household_demographics_hd_demo_sk_max) and in_bloom_filter(ss_hdemo_sk, DynamicValue(RS_91_household_demographics_hd_demo_sk_bloom_filter))) and (ss_sold_time_sk BETWEEN DynamicValue(RS_94_time_dim_t_time_sk_min) AND DynamicValue(RS_94_time_dim_t_time_sk_max) and in_bloom_filter(ss_sold_time_sk, DynamicValue(RS_94_time_dim_t_time_sk_bloom_filter))) and (ss_store_sk BETWEEN DynamicValue(RS_97_store_s_store_sk_min) AND DynamicValue(RS_97_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_97_store_s_store_sk_bloom_filter))) and ss_hdemo_sk is not null and ss_sold_time_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_697] (rows=501695814 width=11) + predicate:((ss_sold_time_sk BETWEEN DynamicValue(RS_94_time_dim_t_time_sk_min) AND DynamicValue(RS_94_time_dim_t_time_sk_max) and in_bloom_filter(ss_sold_time_sk, DynamicValue(RS_94_time_dim_t_time_sk_bloom_filter))) and ss_hdemo_sk is not null and ss_sold_time_sk is not null and ss_store_sk is not null) TableScan [TS_78] (rows=575995635 width=11) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_time_sk","ss_hdemo_sk","ss_store_sk"] - <-Reducer 29 [BROADCAST_EDGE] vectorized - BROADCAST [RS_756] - Group By Operator [GBY_755] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 13 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_635] - Group By Operator [GBY_627] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_615] (rows=817 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_607] - <-Reducer 54 [BROADCAST_EDGE] vectorized - BROADCAST [RS_758] - Group By Operator [GBY_757] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 50 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_685] - Group By Operator [GBY_677] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_665] (rows=1515 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_653] - <-Reducer 63 [BROADCAST_EDGE] vectorized - BROADCAST [RS_760] - Group By Operator [GBY_759] (rows=1 width=12) + <-Reducer 46 [BROADCAST_EDGE] vectorized + BROADCAST [RS_696] + Group By Operator [GBY_695] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 59 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_721] - Group By Operator [GBY_713] (rows=1 width=12) + <-Map 42 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_649] + Group By Operator [GBY_641] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_701] (rows=155 width=4) + Select Operator [SEL_629] (rows=1515 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_693] + Please refer to the previous Select Operator [SEL_617] <-Reducer 7 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_214] Merge Join Operator [MERGEJOIN_600] (rows=1 width=24) Conds:(Inner),Output:["_col0","_col1","_col2"] - <-Reducer 23 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_754] - Group By Operator [GBY_753] (rows=1 width=8) + <-Reducer 21 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_694] + Group By Operator [GBY_693] (rows=1 width=8) Output:["_col0"],aggregations:["count(VALUE._col0)"] - <-Reducer 22 [CUSTOM_SIMPLE_EDGE] + <-Reducer 20 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_75] Group By Operator [GBY_74] (rows=1 width=8) Output:["_col0"],aggregations:["count()"] Merge Join Operator [MERGEJOIN_583] (rows=1352994 width=8) - Conds:RS_70._col2=RS_698._col0(Inner) - <-Map 59 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_698] + Conds:RS_70._col2=RS_673._col0(Inner) + <-Map 51 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_673] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_693] - <-Reducer 21 [SIMPLE_EDGE] + Please refer to the previous Select Operator [SEL_670] + <-Reducer 19 [SIMPLE_EDGE] SHUFFLE [RS_70] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_582] (rows=1842898 width=0) - Conds:RS_67._col0=RS_662._col0(Inner),Output:["_col2"] - <-Map 50 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_662] + Conds:RS_67._col0=RS_626._col0(Inner),Output:["_col2"] + <-Map 42 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_626] PartitionCols:_col0 - Select Operator [SEL_652] (rows=1515 width=12) + Select Operator [SEL_616] (rows=1515 width=12) Output:["_col0"] - Filter Operator [FIL_644] (rows=1515 width=12) + Filter Operator [FIL_608] (rows=1515 width=12) predicate:((t_hour = 11) and (t_minute >= 30) and t_time_sk is not null) Please refer to the previous TableScan [TS_6] - <-Reducer 20 [SIMPLE_EDGE] + <-Reducer 18 [SIMPLE_EDGE] SHUFFLE [RS_67] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_581] (rows=56928540 width=4) - Conds:RS_752._col1=RS_612._col0(Inner),Output:["_col0","_col2"] + Conds:RS_692._col1=RS_663._col0(Inner),Output:["_col0","_col2"] <-Map 13 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_612] + SHUFFLE [RS_663] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_607] - <-Map 69 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_752] + Please refer to the previous Select Operator [SEL_660] + <-Map 53 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_692] PartitionCols:_col1 - Select Operator [SEL_751] (rows=501695814 width=11) + Select Operator [SEL_691] (rows=501695814 width=11) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_750] (rows=501695814 width=11) - predicate:((ss_hdemo_sk BETWEEN DynamicValue(RS_65_household_demographics_hd_demo_sk_min) AND DynamicValue(RS_65_household_demographics_hd_demo_sk_max) and in_bloom_filter(ss_hdemo_sk, DynamicValue(RS_65_household_demographics_hd_demo_sk_bloom_filter))) and (ss_sold_time_sk BETWEEN DynamicValue(RS_68_time_dim_t_time_sk_min) AND DynamicValue(RS_68_time_dim_t_time_sk_max) and in_bloom_filter(ss_sold_time_sk, DynamicValue(RS_68_time_dim_t_time_sk_bloom_filter))) and (ss_store_sk BETWEEN DynamicValue(RS_71_store_s_store_sk_min) AND DynamicValue(RS_71_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_71_store_s_store_sk_bloom_filter))) and ss_hdemo_sk is not null and ss_sold_time_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_690] (rows=501695814 width=11) + predicate:((ss_sold_time_sk BETWEEN DynamicValue(RS_68_time_dim_t_time_sk_min) AND DynamicValue(RS_68_time_dim_t_time_sk_max) and in_bloom_filter(ss_sold_time_sk, DynamicValue(RS_68_time_dim_t_time_sk_bloom_filter))) and ss_hdemo_sk is not null and ss_sold_time_sk is not null and ss_store_sk is not null) TableScan [TS_52] (rows=575995635 width=11) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_time_sk","ss_hdemo_sk","ss_store_sk"] - <-Reducer 24 [BROADCAST_EDGE] vectorized - BROADCAST [RS_745] - Group By Operator [GBY_744] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 13 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_634] - Group By Operator [GBY_626] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_613] (rows=817 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_607] - <-Reducer 53 [BROADCAST_EDGE] vectorized - BROADCAST [RS_747] - Group By Operator [GBY_746] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 50 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_684] - Group By Operator [GBY_676] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_663] (rows=1515 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_652] - <-Reducer 62 [BROADCAST_EDGE] vectorized - BROADCAST [RS_749] - Group By Operator [GBY_748] (rows=1 width=12) + <-Reducer 45 [BROADCAST_EDGE] vectorized + BROADCAST [RS_689] + Group By Operator [GBY_688] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 59 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_720] - Group By Operator [GBY_712] (rows=1 width=12) + <-Map 42 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_648] + Group By Operator [GBY_640] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_699] (rows=155 width=4) + Select Operator [SEL_627] (rows=1515 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_693] + Please refer to the previous Select Operator [SEL_616] <-Reducer 6 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_211] Merge Join Operator [MERGEJOIN_599] (rows=1 width=16) Conds:(Inner),Output:["_col0","_col1"] - <-Reducer 18 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_743] - Group By Operator [GBY_742] (rows=1 width=8) + <-Reducer 17 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_687] + Group By Operator [GBY_686] (rows=1 width=8) Output:["_col0"],aggregations:["count(VALUE._col0)"] - <-Reducer 17 [CUSTOM_SIMPLE_EDGE] + <-Reducer 16 [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_580] (rows=1352994 width=8) - Conds:RS_44._col2=RS_696._col0(Inner) - <-Map 59 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_696] + Conds:RS_44._col2=RS_672._col0(Inner) + <-Map 51 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_672] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_693] - <-Reducer 16 [SIMPLE_EDGE] + Please refer to the previous Select Operator [SEL_670] + <-Reducer 15 [SIMPLE_EDGE] SHUFFLE [RS_44] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_579] (rows=1842898 width=0) - Conds:RS_41._col0=RS_660._col0(Inner),Output:["_col2"] - <-Map 50 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_660] + Conds:RS_41._col0=RS_624._col0(Inner),Output:["_col2"] + <-Map 42 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_624] PartitionCols:_col0 - Select Operator [SEL_651] (rows=1515 width=12) + Select Operator [SEL_615] (rows=1515 width=12) Output:["_col0"] - Filter Operator [FIL_643] (rows=1515 width=12) + Filter Operator [FIL_607] (rows=1515 width=12) predicate:((t_hour = 12) and (t_minute < 30) and t_time_sk is not null) Please refer to the previous TableScan [TS_6] - <-Reducer 15 [SIMPLE_EDGE] + <-Reducer 14 [SIMPLE_EDGE] SHUFFLE [RS_41] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_578] (rows=56928540 width=4) - Conds:RS_741._col1=RS_610._col0(Inner),Output:["_col0","_col2"] + Conds:RS_685._col1=RS_662._col0(Inner),Output:["_col0","_col2"] <-Map 13 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_610] + SHUFFLE [RS_662] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_607] - <-Map 68 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_741] + Please refer to the previous Select Operator [SEL_660] + <-Map 52 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_685] PartitionCols:_col1 - Select Operator [SEL_740] (rows=501695814 width=11) + Select Operator [SEL_684] (rows=501695814 width=11) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_739] (rows=501695814 width=11) - predicate:((ss_hdemo_sk BETWEEN DynamicValue(RS_39_household_demographics_hd_demo_sk_min) AND DynamicValue(RS_39_household_demographics_hd_demo_sk_max) and in_bloom_filter(ss_hdemo_sk, DynamicValue(RS_39_household_demographics_hd_demo_sk_bloom_filter))) and (ss_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(ss_sold_time_sk, DynamicValue(RS_42_time_dim_t_time_sk_bloom_filter))) and (ss_store_sk BETWEEN DynamicValue(RS_45_store_s_store_sk_min) AND DynamicValue(RS_45_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_45_store_s_store_sk_bloom_filter))) and ss_hdemo_sk is not null and ss_sold_time_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_683] (rows=501695814 width=11) + predicate:((ss_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(ss_sold_time_sk, DynamicValue(RS_42_time_dim_t_time_sk_bloom_filter))) and ss_hdemo_sk is not null and ss_sold_time_sk is not null and ss_store_sk is not null) TableScan [TS_26] (rows=575995635 width=11) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_time_sk","ss_hdemo_sk","ss_store_sk"] - <-Reducer 19 [BROADCAST_EDGE] vectorized - BROADCAST [RS_734] - Group By Operator [GBY_733] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 13 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_633] - Group By Operator [GBY_625] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_611] (rows=817 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_607] - <-Reducer 52 [BROADCAST_EDGE] vectorized - BROADCAST [RS_736] - Group By Operator [GBY_735] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 50 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_683] - Group By Operator [GBY_675] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_661] (rows=1515 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_651] - <-Reducer 61 [BROADCAST_EDGE] vectorized - BROADCAST [RS_738] - Group By Operator [GBY_737] (rows=1 width=12) + <-Reducer 44 [BROADCAST_EDGE] vectorized + BROADCAST [RS_682] + Group By Operator [GBY_681] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 59 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_719] - Group By Operator [GBY_711] (rows=1 width=12) + <-Map 42 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_647] + Group By Operator [GBY_639] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_697] (rows=155 width=4) + Select Operator [SEL_625] (rows=1515 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_693] + Please refer to the previous Select Operator [SEL_615] <-Reducer 5 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_732] - Group By Operator [GBY_731] (rows=1 width=8) + PARTITION_ONLY_SHUFFLE [RS_680] + Group By Operator [GBY_679] (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_577] (rows=1352994 width=8) - Conds:RS_18._col2=RS_694._col0(Inner) - <-Map 59 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_694] + Conds:RS_18._col2=RS_671._col0(Inner) + <-Map 51 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_671] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_693] + Please refer to the previous Select Operator [SEL_670] <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_18] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_576] (rows=1842898 width=0) - Conds:RS_15._col0=RS_658._col0(Inner),Output:["_col2"] - <-Map 50 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_658] + Conds:RS_15._col0=RS_622._col0(Inner),Output:["_col2"] + <-Map 42 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_622] PartitionCols:_col0 - Select Operator [SEL_650] (rows=1515 width=12) + Select Operator [SEL_614] (rows=1515 width=12) Output:["_col0"] - Filter Operator [FIL_642] (rows=1515 width=12) + Filter Operator [FIL_606] (rows=1515 width=12) predicate:((t_hour = 8) and (t_minute >= 30) and t_time_sk is not null) Please refer to the previous TableScan [TS_6] <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_15] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_575] (rows=56928540 width=4) - Conds:RS_730._col1=RS_608._col0(Inner),Output:["_col0","_col2"] + Conds:RS_658._col1=RS_661._col0(Inner),Output:["_col0","_col2"] <-Map 13 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_608] + SHUFFLE [RS_661] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_607] + Please refer to the previous Select Operator [SEL_660] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_730] + SHUFFLE [RS_658] PartitionCols:_col1 - Select Operator [SEL_729] (rows=501695814 width=11) + Select Operator [SEL_657] (rows=501695814 width=11) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_728] (rows=501695814 width=11) - predicate:((ss_hdemo_sk BETWEEN DynamicValue(RS_13_household_demographics_hd_demo_sk_min) AND DynamicValue(RS_13_household_demographics_hd_demo_sk_max) and in_bloom_filter(ss_hdemo_sk, DynamicValue(RS_13_household_demographics_hd_demo_sk_bloom_filter))) and (ss_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(ss_sold_time_sk, DynamicValue(RS_16_time_dim_t_time_sk_bloom_filter))) and (ss_store_sk BETWEEN DynamicValue(RS_19_store_s_store_sk_min) AND DynamicValue(RS_19_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_19_store_s_store_sk_bloom_filter))) and ss_hdemo_sk is not null and ss_sold_time_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_656] (rows=501695814 width=11) + predicate:((ss_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(ss_sold_time_sk, DynamicValue(RS_16_time_dim_t_time_sk_bloom_filter))) and ss_hdemo_sk is not null and ss_sold_time_sk is not null and ss_store_sk is not null) TableScan [TS_0] (rows=575995635 width=11) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_time_sk","ss_hdemo_sk","ss_store_sk"] - <-Reducer 14 [BROADCAST_EDGE] vectorized - BROADCAST [RS_641] - Group By Operator [GBY_640] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 13 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_632] - Group By Operator [GBY_624] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_609] (rows=817 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_607] - <-Reducer 51 [BROADCAST_EDGE] vectorized - BROADCAST [RS_691] - Group By Operator [GBY_690] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 50 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_682] - Group By Operator [GBY_674] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_659] (rows=1515 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_650] - <-Reducer 60 [BROADCAST_EDGE] vectorized - BROADCAST [RS_727] - Group By Operator [GBY_726] (rows=1 width=12) + <-Reducer 43 [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 59 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_718] - Group By Operator [GBY_710] (rows=1 width=12) + <-Map 42 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_646] + Group By Operator [GBY_638] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_695] (rows=155 width=4) + Select Operator [SEL_623] (rows=1515 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_693] - <-Reducer 43 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_798] - Group By Operator [GBY_797] (rows=1 width=8) + Please refer to the previous Select Operator [SEL_614] + <-Reducer 37 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_722] + Group By Operator [GBY_721] (rows=1 width=8) Output:["_col0"],aggregations:["count(VALUE._col0)"] - <-Reducer 42 [CUSTOM_SIMPLE_EDGE] + <-Reducer 36 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_179] Group By Operator [GBY_178] (rows=1 width=8) Output:["_col0"],aggregations:["count()"] Merge Join Operator [MERGEJOIN_595] (rows=1352994 width=8) - Conds:RS_174._col2=RS_706._col0(Inner) - <-Map 59 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_706] + Conds:RS_174._col2=RS_677._col0(Inner) + <-Map 51 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_677] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_693] - <-Reducer 41 [SIMPLE_EDGE] + Please refer to the previous Select Operator [SEL_670] + <-Reducer 35 [SIMPLE_EDGE] SHUFFLE [RS_174] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_594] (rows=1842898 width=0) - Conds:RS_171._col0=RS_670._col0(Inner),Output:["_col2"] - <-Map 50 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_670] + Conds:RS_171._col0=RS_634._col0(Inner),Output:["_col2"] + <-Map 42 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_634] PartitionCols:_col0 - Select Operator [SEL_656] (rows=1515 width=12) + Select Operator [SEL_620] (rows=1515 width=12) Output:["_col0"] - Filter Operator [FIL_648] (rows=1515 width=12) + Filter Operator [FIL_612] (rows=1515 width=12) predicate:((t_hour = 9) and (t_minute >= 30) and t_time_sk is not null) Please refer to the previous TableScan [TS_6] - <-Reducer 40 [SIMPLE_EDGE] + <-Reducer 34 [SIMPLE_EDGE] SHUFFLE [RS_171] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_593] (rows=56928540 width=4) - Conds:RS_796._col1=RS_620._col0(Inner),Output:["_col0","_col2"] + Conds:RS_720._col1=RS_667._col0(Inner),Output:["_col0","_col2"] <-Map 13 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_620] + SHUFFLE [RS_667] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_607] - <-Map 73 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_796] + Please refer to the previous Select Operator [SEL_660] + <-Map 57 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_720] PartitionCols:_col1 - Select Operator [SEL_795] (rows=501695814 width=11) + Select Operator [SEL_719] (rows=501695814 width=11) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_794] (rows=501695814 width=11) - predicate:((ss_hdemo_sk BETWEEN DynamicValue(RS_169_household_demographics_hd_demo_sk_min) AND DynamicValue(RS_169_household_demographics_hd_demo_sk_max) and in_bloom_filter(ss_hdemo_sk, DynamicValue(RS_169_household_demographics_hd_demo_sk_bloom_filter))) and (ss_sold_time_sk BETWEEN DynamicValue(RS_172_time_dim_t_time_sk_min) AND DynamicValue(RS_172_time_dim_t_time_sk_max) and in_bloom_filter(ss_sold_time_sk, DynamicValue(RS_172_time_dim_t_time_sk_bloom_filter))) and (ss_store_sk BETWEEN DynamicValue(RS_175_store_s_store_sk_min) AND DynamicValue(RS_175_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_175_store_s_store_sk_bloom_filter))) and ss_hdemo_sk is not null and ss_sold_time_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_718] (rows=501695814 width=11) + predicate:((ss_sold_time_sk BETWEEN DynamicValue(RS_172_time_dim_t_time_sk_min) AND DynamicValue(RS_172_time_dim_t_time_sk_max) and in_bloom_filter(ss_sold_time_sk, DynamicValue(RS_172_time_dim_t_time_sk_bloom_filter))) and ss_hdemo_sk is not null and ss_sold_time_sk is not null and ss_store_sk is not null) TableScan [TS_156] (rows=575995635 width=11) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_time_sk","ss_hdemo_sk","ss_store_sk"] - <-Reducer 44 [BROADCAST_EDGE] vectorized - BROADCAST [RS_789] - Group By Operator [GBY_788] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 13 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_638] - Group By Operator [GBY_630] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_621] (rows=817 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_607] - <-Reducer 57 [BROADCAST_EDGE] vectorized - BROADCAST [RS_791] - Group By Operator [GBY_790] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 50 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_688] - Group By Operator [GBY_680] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_671] (rows=1515 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_656] - <-Reducer 66 [BROADCAST_EDGE] vectorized - BROADCAST [RS_793] - Group By Operator [GBY_792] (rows=1 width=12) + <-Reducer 49 [BROADCAST_EDGE] vectorized + BROADCAST [RS_717] + Group By Operator [GBY_716] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 59 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_724] - Group By Operator [GBY_716] (rows=1 width=12) + <-Map 42 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_652] + Group By Operator [GBY_644] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_707] (rows=155 width=4) + Select Operator [SEL_635] (rows=1515 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_693] - <-Reducer 48 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_809] - Group By Operator [GBY_808] (rows=1 width=8) + Please refer to the previous Select Operator [SEL_620] + <-Reducer 41 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_729] + Group By Operator [GBY_728] (rows=1 width=8) Output:["_col0"],aggregations:["count(VALUE._col0)"] - <-Reducer 47 [CUSTOM_SIMPLE_EDGE] + <-Reducer 40 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_205] Group By Operator [GBY_204] (rows=1 width=8) Output:["_col0"],aggregations:["count()"] Merge Join Operator [MERGEJOIN_598] (rows=1352994 width=8) - Conds:RS_200._col2=RS_708._col0(Inner) - <-Map 59 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_708] + Conds:RS_200._col2=RS_678._col0(Inner) + <-Map 51 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_678] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_693] - <-Reducer 46 [SIMPLE_EDGE] + Please refer to the previous Select Operator [SEL_670] + <-Reducer 39 [SIMPLE_EDGE] SHUFFLE [RS_200] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_597] (rows=1842898 width=0) - Conds:RS_197._col0=RS_672._col0(Inner),Output:["_col2"] - <-Map 50 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_672] + Conds:RS_197._col0=RS_636._col0(Inner),Output:["_col2"] + <-Map 42 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_636] PartitionCols:_col0 - Select Operator [SEL_657] (rows=1515 width=12) + Select Operator [SEL_621] (rows=1515 width=12) Output:["_col0"] - Filter Operator [FIL_649] (rows=1515 width=12) + Filter Operator [FIL_613] (rows=1515 width=12) predicate:((t_hour = 9) and (t_minute < 30) and t_time_sk is not null) Please refer to the previous TableScan [TS_6] - <-Reducer 45 [SIMPLE_EDGE] + <-Reducer 38 [SIMPLE_EDGE] SHUFFLE [RS_197] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_596] (rows=56928540 width=4) - Conds:RS_807._col1=RS_622._col0(Inner),Output:["_col0","_col2"] + Conds:RS_727._col1=RS_668._col0(Inner),Output:["_col0","_col2"] <-Map 13 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_622] + SHUFFLE [RS_668] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_607] - <-Map 74 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_807] + Please refer to the previous Select Operator [SEL_660] + <-Map 58 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_727] PartitionCols:_col1 - Select Operator [SEL_806] (rows=501695814 width=11) + Select Operator [SEL_726] (rows=501695814 width=11) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_805] (rows=501695814 width=11) - predicate:((ss_hdemo_sk BETWEEN DynamicValue(RS_195_household_demographics_hd_demo_sk_min) AND DynamicValue(RS_195_household_demographics_hd_demo_sk_max) and in_bloom_filter(ss_hdemo_sk, DynamicValue(RS_195_household_demographics_hd_demo_sk_bloom_filter))) and (ss_sold_time_sk BETWEEN DynamicValue(RS_198_time_dim_t_time_sk_min) AND DynamicValue(RS_198_time_dim_t_time_sk_max) and in_bloom_filter(ss_sold_time_sk, DynamicValue(RS_198_time_dim_t_time_sk_bloom_filter))) and (ss_store_sk BETWEEN DynamicValue(RS_201_store_s_store_sk_min) AND DynamicValue(RS_201_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_201_store_s_store_sk_bloom_filter))) and ss_hdemo_sk is not null and ss_sold_time_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_725] (rows=501695814 width=11) + predicate:((ss_sold_time_sk BETWEEN DynamicValue(RS_198_time_dim_t_time_sk_min) AND DynamicValue(RS_198_time_dim_t_time_sk_max) and in_bloom_filter(ss_sold_time_sk, DynamicValue(RS_198_time_dim_t_time_sk_bloom_filter))) and ss_hdemo_sk is not null and ss_sold_time_sk is not null and ss_store_sk is not null) TableScan [TS_182] (rows=575995635 width=11) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_time_sk","ss_hdemo_sk","ss_store_sk"] - <-Reducer 49 [BROADCAST_EDGE] vectorized - BROADCAST [RS_800] - Group By Operator [GBY_799] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 13 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_639] - Group By Operator [GBY_631] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_623] (rows=817 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_607] - <-Reducer 58 [BROADCAST_EDGE] vectorized - BROADCAST [RS_802] - Group By Operator [GBY_801] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 50 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_689] - Group By Operator [GBY_681] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_673] (rows=1515 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_657] - <-Reducer 67 [BROADCAST_EDGE] vectorized - BROADCAST [RS_804] - Group By Operator [GBY_803] (rows=1 width=12) + <-Reducer 50 [BROADCAST_EDGE] vectorized + BROADCAST [RS_724] + Group By Operator [GBY_723] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 59 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_725] - Group By Operator [GBY_717] (rows=1 width=12) + <-Map 42 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_653] + Group By Operator [GBY_645] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_709] (rows=155 width=4) + Select Operator [SEL_637] (rows=1515 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_693] + Please refer to the previous Select Operator [SEL_621] diff --git a/ql/src/test/results/clientpositive/perf/tez/query89.q.out b/ql/src/test/results/clientpositive/perf/tez/query89.q.out index 0844ca79a8..daf2a72351 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query89.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query89.q.out @@ -65,42 +65,41 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 11 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) -Reducer 11 <- Map 10 (CUSTOM_SIMPLE_EDGE) +Map 1 <- Reducer 10 (BROADCAST_EDGE) +Reducer 10 <- Map 9 (CUSTOM_SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) -Reducer 3 <- Map 10 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 12 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 3 <- Map 9 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 4 <- Map 11 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) -Reducer 9 <- Map 8 (CUSTOM_SIMPLE_EDGE) Stage-0 Fetch Operator limit:-1 Stage-1 Reducer 7 vectorized - File Output Operator [FS_117] - Limit [LIM_116] (rows=100 width=801) + File Output Operator [FS_112] + Limit [LIM_111] (rows=100 width=801) Number of rows:100 - Select Operator [SEL_115] (rows=4804228 width=801) + Select Operator [SEL_110] (rows=4804228 width=801) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] <-Reducer 6 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_114] - Select Operator [SEL_113] (rows=4804228 width=801) + SHUFFLE [RS_109] + Select Operator [SEL_108] (rows=4804228 width=801) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8"] - Filter Operator [FIL_112] (rows=4804228 width=689) + Filter Operator [FIL_107] (rows=4804228 width=689) predicate:CASE WHEN ((avg_window_0 <> 0)) THEN (((abs((_col6 - avg_window_0)) / avg_window_0) > 0.1)) ELSE (null) END - Select Operator [SEL_111] (rows=9608456 width=577) + Select Operator [SEL_106] (rows=9608456 width=577) Output:["avg_window_0","_col0","_col1","_col2","_col3","_col4","_col5","_col6"] - PTF Operator [PTF_110] (rows=9608456 width=577) + PTF Operator [PTF_105] (rows=9608456 width=577) Function definitions:[{},{"name:":"windowingtablefunction","order by:":"_col2 ASC NULLS FIRST, _col0 ASC NULLS FIRST, _col4 ASC NULLS FIRST, _col5 ASC NULLS FIRST","partition by:":"_col2, _col0, _col4, _col5"}] - Select Operator [SEL_109] (rows=9608456 width=577) + Select Operator [SEL_104] (rows=9608456 width=577) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] <-Reducer 5 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_108] + SHUFFLE [RS_103] PartitionCols:_col2, _col0, _col4, _col5 - Group By Operator [GBY_107] (rows=9608456 width=577) + Group By Operator [GBY_102] (rows=9608456 width=577) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4, KEY._col5 <-Reducer 4 [SIMPLE_EDGE] SHUFFLE [RS_23] @@ -108,13 +107,13 @@ Stage-0 Group By Operator [GBY_22] (rows=27308180 width=577) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"],aggregations:["sum(_col3)"],keys:_col5, _col6, _col7, _col10, _col12, _col13 Merge Join Operator [MERGEJOIN_84] (rows=27308180 width=480) - Conds:RS_18._col2=RS_106._col0(Inner),Output:["_col3","_col5","_col6","_col7","_col10","_col12","_col13"] - <-Map 12 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_106] + Conds:RS_18._col2=RS_101._col0(Inner),Output:["_col3","_col5","_col6","_col7","_col10","_col12","_col13"] + <-Map 11 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_101] PartitionCols:_col0 - Select Operator [SEL_105] (rows=1704 width=183) + Select Operator [SEL_100] (rows=1704 width=183) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_104] (rows=1704 width=183) + Filter Operator [FIL_99] (rows=1704 width=183) predicate:s_store_sk is not null TableScan [TS_9] (rows=1704 width=183) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_store_name","s_company_name"] @@ -122,13 +121,13 @@ Stage-0 SHUFFLE [RS_18] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_83] (rows=27308180 width=301) - Conds:RS_15._col0=RS_95._col0(Inner),Output:["_col2","_col3","_col5","_col6","_col7","_col10"] - <-Map 10 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_95] + Conds:RS_15._col0=RS_87._col0(Inner),Output:["_col2","_col3","_col5","_col6","_col7","_col10"] + <-Map 9 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_87] PartitionCols:_col0 - Select Operator [SEL_94] (rows=652 width=12) + Select Operator [SEL_86] (rows=652 width=12) Output:["_col0","_col2"] - Filter Operator [FIL_93] (rows=652 width=12) + Filter Operator [FIL_85] (rows=652 width=12) predicate:((d_year = 2000) and d_date_sk is not null) TableScan [TS_6] (rows=73049 width=12) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] @@ -136,45 +135,34 @@ Stage-0 SHUFFLE [RS_15] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_82] (rows=76480702 width=364) - Conds:RS_103._col1=RS_87._col0(Inner),Output:["_col0","_col2","_col3","_col5","_col6","_col7"] - <-Map 8 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_87] - PartitionCols:_col0 - Select Operator [SEL_86] (rows=6988 width=286) - Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_85] (rows=6988 width=286) - predicate:((((i_category) IN ('Home', 'Books', 'Electronics') and (i_class) IN ('wallpaper', 'parenting', 'musical')) or ((i_category) IN ('Shoes', 'Jewelry', 'Men') and (i_class) IN ('womens', 'birdal', 'pants'))) and (i_category) IN ('Home', 'Books', 'Electronics', 'Shoes', 'Jewelry', 'Men') and (i_class) IN ('wallpaper', 'parenting', 'musical', 'womens', 'birdal', 'pants') and i_item_sk is not null) - TableScan [TS_3] (rows=462000 width=286) - default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_brand","i_class","i_category"] + Conds:RS_95._col1=RS_98._col0(Inner),Output:["_col0","_col2","_col3","_col5","_col6","_col7"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_103] + SHUFFLE [RS_95] PartitionCols:_col1 - Select Operator [SEL_102] (rows=525329897 width=118) + Select Operator [SEL_94] (rows=525329897 width=118) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_101] (rows=525329897 width=118) - predicate:((ss_item_sk BETWEEN DynamicValue(RS_13_item_i_item_sk_min) AND DynamicValue(RS_13_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_13_item_i_item_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_16_date_dim_d_date_sk_min) AND DynamicValue(RS_16_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_16_date_dim_d_date_sk_bloom_filter))) and ss_item_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_93] (rows=525329897 width=118) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_16_date_dim_d_date_sk_min) AND DynamicValue(RS_16_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_16_date_dim_d_date_sk_bloom_filter))) and ss_item_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null) TableScan [TS_0] (rows=575995635 width=118) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_store_sk","ss_sales_price"] - <-Reducer 11 [BROADCAST_EDGE] vectorized - BROADCAST [RS_100] - Group By Operator [GBY_99] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 10 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_98] - Group By Operator [GBY_97] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_96] (rows=652 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_94] - <-Reducer 9 [BROADCAST_EDGE] vectorized + <-Reducer 10 [BROADCAST_EDGE] vectorized BROADCAST [RS_92] Group By Operator [GBY_91] (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_90] + <-Map 9 [CUSTOM_SIMPLE_EDGE] vectorized + SHUFFLE [RS_90] Group By Operator [GBY_89] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_88] (rows=6988 width=4) + Select Operator [SEL_88] (rows=652 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_86] + <-Map 8 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_98] + PartitionCols:_col0 + Select Operator [SEL_97] (rows=6988 width=286) + Output:["_col0","_col1","_col2","_col3"] + Filter Operator [FIL_96] (rows=6988 width=286) + predicate:((((i_category) IN ('Home', 'Books', 'Electronics') and (i_class) IN ('wallpaper', 'parenting', 'musical')) or ((i_category) IN ('Shoes', 'Jewelry', 'Men') and (i_class) IN ('womens', 'birdal', 'pants'))) and (i_category) IN ('Home', 'Books', 'Electronics', 'Shoes', 'Jewelry', 'Men') and (i_class) IN ('wallpaper', 'parenting', 'musical', 'womens', 'birdal', 'pants') and i_item_sk is not null) + TableScan [TS_3] (rows=462000 width=286) + default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_brand","i_class","i_category"] diff --git a/ql/src/test/results/clientpositive/perf/tez/query90.q.out b/ql/src/test/results/clientpositive/perf/tez/query90.q.out index 653ce1a912..ce65db971b 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query90.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query90.q.out @@ -54,34 +54,27 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 16 (BROADCAST_EDGE), Reducer 19 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) -Map 21 <- Reducer 14 (BROADCAST_EDGE), Reducer 17 (BROADCAST_EDGE), Reducer 20 (BROADCAST_EDGE) -Reducer 10 <- Map 21 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) -Reducer 11 <- Map 15 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE) -Reducer 12 <- Map 18 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE) -Reducer 13 <- Reducer 12 (CUSTOM_SIMPLE_EDGE) -Reducer 14 <- Map 8 (CUSTOM_SIMPLE_EDGE) -Reducer 16 <- Map 15 (CUSTOM_SIMPLE_EDGE) -Reducer 17 <- Map 15 (CUSTOM_SIMPLE_EDGE) -Reducer 19 <- Map 18 (CUSTOM_SIMPLE_EDGE) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) -Reducer 20 <- Map 18 (CUSTOM_SIMPLE_EDGE) -Reducer 3 <- Map 15 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 18 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Map 1 <- Reducer 14 (BROADCAST_EDGE) +Reducer 10 <- Reducer 9 (CUSTOM_SIMPLE_EDGE) +Reducer 14 <- Map 13 (CUSTOM_SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 11 (SIMPLE_EDGE) +Reducer 3 <- Map 12 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 4 <- Map 13 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (CUSTOM_SIMPLE_EDGE) -Reducer 6 <- Reducer 13 (CUSTOM_SIMPLE_EDGE), Reducer 5 (CUSTOM_SIMPLE_EDGE) +Reducer 6 <- Reducer 10 (CUSTOM_SIMPLE_EDGE), Reducer 5 (CUSTOM_SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) -Reducer 9 <- Map 8 (CUSTOM_SIMPLE_EDGE) +Reducer 8 <- Map 12 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 9 <- Map 13 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) Stage-0 Fetch Operator limit:100 Stage-1 Reducer 7 vectorized - File Output Operator [FS_209] - Limit [LIM_208] (rows=1 width=112) + File Output Operator [FS_180] + Limit [LIM_179] (rows=1 width=112) Number of rows:100 - Select Operator [SEL_207] (rows=1 width=112) + Select Operator [SEL_178] (rows=1 width=112) Output:["_col0"] <-Reducer 6 [SIMPLE_EDGE] SHUFFLE [RS_56] @@ -89,171 +82,102 @@ Stage-0 Output:["_col0"] Merge Join Operator [MERGEJOIN_152] (rows=1 width=16) Conds:(Inner),Output:["_col0","_col1"] - <-Reducer 13 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_206] - Group By Operator [GBY_205] (rows=1 width=8) + <-Reducer 10 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_177] + Group By Operator [GBY_176] (rows=1 width=8) Output:["_col0"],aggregations:["count(VALUE._col0)"] - <-Reducer 12 [CUSTOM_SIMPLE_EDGE] + <-Reducer 9 [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] + Conds:RS_44._col1=RS_157._col0(Inner) + <-Map 13 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_157] PartitionCols:_col0 - Select Operator [SEL_180] (rows=655 width=8) + Select Operator [SEL_154] (rows=655 width=8) Output:["_col0"] - Filter Operator [FIL_179] (rows=655 width=8) + Filter Operator [FIL_153] (rows=655 width=8) predicate:((hd_dep_count = 8) and hd_demo_sk is not null) 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] + <-Reducer 8 [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] + Conds:RS_41._col0=RS_173._col0(Inner),Output:["_col1"] + <-Map 12 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_173] PartitionCols:_col0 - Select Operator [SEL_168] (rows=9095 width=8) + Select Operator [SEL_171] (rows=9095 width=8) Output:["_col0"] - Filter Operator [FIL_166] (rows=9095 width=8) + Filter Operator [FIL_169] (rows=9095 width=8) predicate:(t_hour BETWEEN 14 AND 15 and t_time_sk is not null) 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] + <-Reducer 2 [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=7) - Output:["_col0"] - Filter Operator [FIL_153] (rows=511 width=7) - predicate:(wp_char_count BETWEEN 5000 AND 5200 and wp_web_page_sk is not null) - 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] + Merge Join Operator [MERGEJOIN_146] (rows=15977923 width=7) + Conds:RS_164._col2=RS_167._col0(Inner),Output:["_col0","_col1"] + <-Map 1 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_164] PartitionCols:_col2 - Select Operator [SEL_203] (rows=143895111 width=11) + Select Operator [SEL_163] (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) + Filter Operator [FIL_162] (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_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 14 [BROADCAST_EDGE] vectorized - BROADCAST [RS_197] - Group By Operator [GBY_196] (rows=1 width=12) + BROADCAST [RS_161] + Group By Operator [GBY_160] (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) + <-Map 13 [CUSTOM_SIMPLE_EDGE] vectorized + SHUFFLE [RS_159] + Group By Operator [GBY_158] (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) + Select Operator [SEL_156] (rows=655 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] + <-Map 11 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_167] + PartitionCols:_col0 + Select Operator [SEL_166] (rows=511 width=7) + Output:["_col0"] + Filter Operator [FIL_165] (rows=511 width=7) + predicate:(wp_char_count BETWEEN 5000 AND 5200 and wp_web_page_sk is not null) + TableScan [TS_3] (rows=4602 width=7) + default@web_page,web_page,Tbl:COMPLETE,Col:COMPLETE,Output:["wp_web_page_sk","wp_char_count"] <-Reducer 5 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_195] - Group By Operator [GBY_194] (rows=1 width=8) + PARTITION_ONLY_SHUFFLE [RS_175] + Group By Operator [GBY_174] (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] + Conds:RS_18._col1=RS_155._col0(Inner) + <-Map 13 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_155] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_180] + Please refer to the previous Select Operator [SEL_154] <-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] + Conds:RS_15._col0=RS_172._col0(Inner),Output:["_col1"] + <-Map 12 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_172] PartitionCols:_col0 - Select Operator [SEL_167] (rows=9095 width=8) + Select Operator [SEL_170] (rows=9095 width=8) Output:["_col0"] - Filter Operator [FIL_165] (rows=9095 width=8) + Filter Operator [FIL_168] (rows=9095 width=8) predicate:(t_hour BETWEEN 6 AND 7 and t_time_sk is not null) 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] + Please refer to the previous Merge Join Operator [MERGEJOIN_146] diff --git a/ql/src/test/results/clientpositive/perf/tez/query92.q.out b/ql/src/test/results/clientpositive/perf/tez/query92.q.out index 50918f0966..1ec49b2697 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query92.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query92.q.out @@ -67,35 +67,33 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 15 (BROADCAST_EDGE), Reducer 8 (BROADCAST_EDGE) -Map 13 <- Reducer 12 (BROADCAST_EDGE), Reducer 15 (BROADCAST_EDGE), Reducer 6 (BROADCAST_EDGE) -Reducer 10 <- Reducer 9 (SIMPLE_EDGE) -Reducer 11 <- Map 14 (SIMPLE_EDGE), Reducer 10 (ONE_TO_ONE_EDGE) -Reducer 12 <- Map 7 (CUSTOM_SIMPLE_EDGE) -Reducer 15 <- Map 14 (CUSTOM_SIMPLE_EDGE) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) -Reducer 3 <- Reducer 11 (ONE_TO_ONE_EDGE), Reducer 2 (SIMPLE_EDGE) +Map 1 <- Reducer 10 (BROADCAST_EDGE) +Map 11 <- Reducer 13 (BROADCAST_EDGE) +Reducer 10 <- Reducer 9 (CUSTOM_SIMPLE_EDGE) +Reducer 13 <- Map 12 (CUSTOM_SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) +Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 9 (ONE_TO_ONE_EDGE) Reducer 4 <- Reducer 3 (CUSTOM_SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) -Reducer 6 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) -Reducer 8 <- Map 7 (CUSTOM_SIMPLE_EDGE) -Reducer 9 <- Map 13 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) +Reducer 7 <- Map 11 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) +Reducer 8 <- Reducer 7 (SIMPLE_EDGE) +Reducer 9 <- Map 12 (SIMPLE_EDGE), Reducer 8 (ONE_TO_ONE_EDGE) Stage-0 Fetch Operator limit:-1 Stage-1 Reducer 5 vectorized - File Output Operator [FS_147] - Limit [LIM_146] (rows=1 width=224) + File Output Operator [FS_136] + Limit [LIM_135] (rows=1 width=224) Number of rows:100 - Select Operator [SEL_145] (rows=1 width=224) + Select Operator [SEL_134] (rows=1 width=224) Output:["_col0"] <-Reducer 4 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_144] - Select Operator [SEL_143] (rows=1 width=224) + SHUFFLE [RS_133] + Select Operator [SEL_132] (rows=1 width=224) Output:["_col1"] - Group By Operator [GBY_142] (rows=1 width=112) + Group By Operator [GBY_131] (rows=1 width=112) Output:["_col0"],aggregations:["sum(VALUE._col0)"] <-Reducer 3 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_36] @@ -107,115 +105,90 @@ Stage-0 predicate:(_col2 > CAST( (1.3 * _col6) AS decimal(14,7))) Merge Join Operator [MERGEJOIN_107] (rows=7434 width=112) Conds:RS_30._col1=RS_31._col2(Inner),Output:["_col2","_col6"] - <-Reducer 2 [SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_30] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_104] (rows=15995224 width=115) - Conds:RS_131._col0=RS_110._col0(Inner),Output:["_col1","_col2"] - <-Map 7 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_110] - PartitionCols:_col0 - Select Operator [SEL_109] (rows=8116 width=98) - Output:["_col0"] - Filter Operator [FIL_108] (rows=8116 width=98) - predicate:(CAST( d_date AS TIMESTAMP) BETWEEN TIMESTAMP'1998-03-18 00:00:00' AND TIMESTAMP'1998-06-16 00:00:00' and d_date_sk is not null) - TableScan [TS_3] (rows=73049 width=98) - default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"] - <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_131] - PartitionCols:_col0 - Select Operator [SEL_130] (rows=143966864 width=119) - Output:["_col0","_col1","_col2"] - Filter Operator [FIL_129] (rows=143966864 width=119) - predicate:((ws_item_sk BETWEEN DynamicValue(RS_24_item_i_item_sk_min) AND DynamicValue(RS_24_item_i_item_sk_max) and in_bloom_filter(ws_item_sk, DynamicValue(RS_24_item_i_item_sk_bloom_filter))) and (ws_sold_date_sk BETWEEN DynamicValue(RS_28_date_dim_d_date_sk_min) AND DynamicValue(RS_28_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_28_date_dim_d_date_sk_bloom_filter))) and ws_item_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_item_sk","ws_ext_discount_amt"] - <-Reducer 15 [BROADCAST_EDGE] vectorized - BROADCAST [RS_127] - Group By Operator [GBY_126] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 14 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_125] - Group By Operator [GBY_124] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_123] (rows=669 width=4) - Output:["_col0"] - Select Operator [SEL_121] (rows=669 width=8) - Output:["_col0"] - Filter Operator [FIL_120] (rows=669 width=7) - predicate:((i_manufact_id = 269) and i_item_sk is not null) - TableScan [TS_20] (rows=462000 width=7) - default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_manufact_id"] - <-Reducer 8 [BROADCAST_EDGE] vectorized - BROADCAST [RS_119] - Group By Operator [GBY_118] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 7 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_116] - Group By Operator [GBY_114] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_111] (rows=8116 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_109] - <-Reducer 11 [ONE_TO_ONE_EDGE] + <-Reducer 9 [ONE_TO_ONE_EDGE] FORWARD [RS_31] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_106] (rows=97 width=116) - Conds:RS_141._col0=RS_122._col0(Inner),Output:["_col1","_col2"] - <-Map 14 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_122] + Conds:RS_125._col0=RS_114._col0(Inner),Output:["_col1","_col2"] + <-Map 12 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_114] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_121] - <-Reducer 10 [ONE_TO_ONE_EDGE] vectorized - FORWARD [RS_141] + Select Operator [SEL_113] (rows=669 width=8) + Output:["_col0"] + Filter Operator [FIL_112] (rows=669 width=7) + predicate:((i_manufact_id = 269) and i_item_sk is not null) + TableScan [TS_20] (rows=462000 width=7) + default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_manufact_id"] + <-Reducer 8 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_125] PartitionCols:_col0 - Select Operator [SEL_140] (rows=6951 width=116) + Select Operator [SEL_124] (rows=6951 width=116) Output:["_col0","_col1"] - Group By Operator [GBY_139] (rows=6951 width=124) + Group By Operator [GBY_123] (rows=6951 width=124) Output:["_col0","_col1","_col2"],aggregations:["sum(VALUE._col0)","count(VALUE._col1)"],keys:KEY._col0 - <-Reducer 9 [SIMPLE_EDGE] + <-Reducer 7 [SIMPLE_EDGE] SHUFFLE [RS_17] PartitionCols:_col0 Group By Operator [GBY_16] (rows=55608 width=124) Output:["_col0","_col1","_col2"],aggregations:["sum(_col2)","count(_col2)"],keys:_col1 Merge Join Operator [MERGEJOIN_105] (rows=15995224 width=115) - Conds:RS_138._col0=RS_112._col0(Inner),Output:["_col1","_col2"] - <-Map 7 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_112] + Conds:RS_122._col0=RS_111._col0(Inner),Output:["_col1","_col2"] + <-Map 6 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_111] PartitionCols:_col0 - Please refer to the previous Select Operator [SEL_109] - <-Map 13 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_138] + Select Operator [SEL_109] (rows=8116 width=98) + Output:["_col0"] + Filter Operator [FIL_108] (rows=8116 width=98) + predicate:(CAST( d_date AS TIMESTAMP) BETWEEN TIMESTAMP'1998-03-18 00:00:00' AND TIMESTAMP'1998-06-16 00:00:00' and d_date_sk is not null) + TableScan [TS_3] (rows=73049 width=98) + default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"] + <-Map 11 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_122] PartitionCols:_col0 - Select Operator [SEL_137] (rows=143966864 width=119) + Select Operator [SEL_121] (rows=143966864 width=119) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_136] (rows=143966864 width=119) - predicate:((ws_item_sk BETWEEN DynamicValue(RS_24_item_i_item_sk_min) AND DynamicValue(RS_24_item_i_item_sk_max) and in_bloom_filter(ws_item_sk, DynamicValue(RS_24_item_i_item_sk_bloom_filter))) and (ws_item_sk BETWEEN DynamicValue(RS_30_web_sales_ws_item_sk_min) AND DynamicValue(RS_30_web_sales_ws_item_sk_max) and in_bloom_filter(ws_item_sk, DynamicValue(RS_30_web_sales_ws_item_sk_bloom_filter))) and (ws_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(ws_sold_date_sk, DynamicValue(RS_13_date_dim_d_date_sk_bloom_filter))) and ws_item_sk is not null and ws_sold_date_sk is not null) + Filter Operator [FIL_120] (rows=143966864 width=119) + predicate:((ws_item_sk BETWEEN DynamicValue(RS_24_item_i_item_sk_min) AND DynamicValue(RS_24_item_i_item_sk_max) and in_bloom_filter(ws_item_sk, DynamicValue(RS_24_item_i_item_sk_bloom_filter))) and ws_item_sk is not null and ws_sold_date_sk is not null) TableScan [TS_6] (rows=144002668 width=119) default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_item_sk","ws_ext_discount_amt"] - <-Reducer 15 [BROADCAST_EDGE] vectorized - BROADCAST [RS_128] - Please refer to the previous Group By Operator [GBY_126] - <-Reducer 12 [BROADCAST_EDGE] vectorized - BROADCAST [RS_133] - Group By Operator [GBY_132] (rows=1 width=12) + <-Reducer 13 [BROADCAST_EDGE] vectorized + BROADCAST [RS_119] + Group By Operator [GBY_118] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 7 [CUSTOM_SIMPLE_EDGE] vectorized + <-Map 12 [CUSTOM_SIMPLE_EDGE] vectorized SHUFFLE [RS_117] - Group By Operator [GBY_115] (rows=1 width=12) + Group By Operator [GBY_116] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_113] (rows=8116 width=4) + Select Operator [SEL_115] (rows=669 width=4) Output:["_col0"] - Please refer to the previous Select Operator [SEL_109] - <-Reducer 6 [BROADCAST_EDGE] vectorized - BROADCAST [RS_135] - Group By Operator [GBY_134] (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_94] - Group By Operator [GBY_93] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_92] (rows=15995224 width=8) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_104] + Please refer to the previous Select Operator [SEL_113] + <-Reducer 2 [SIMPLE_EDGE] + SHUFFLE [RS_30] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_104] (rows=15995224 width=115) + Conds:RS_130._col0=RS_110._col0(Inner),Output:["_col1","_col2"] + <-Map 6 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_110] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_109] + <-Map 1 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_130] + PartitionCols:_col0 + Select Operator [SEL_129] (rows=143966864 width=119) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_128] (rows=143966864 width=119) + predicate:((ws_item_sk BETWEEN DynamicValue(RS_31_item_i_item_sk_min) AND DynamicValue(RS_31_item_i_item_sk_max) and in_bloom_filter(ws_item_sk, DynamicValue(RS_31_item_i_item_sk_bloom_filter))) and ws_item_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_item_sk","ws_ext_discount_amt"] + <-Reducer 10 [BROADCAST_EDGE] vectorized + BROADCAST [RS_127] + Group By Operator [GBY_126] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Reducer 9 [CUSTOM_SIMPLE_EDGE] + FORWARD [RS_68] + Group By Operator [GBY_67] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_66] (rows=97 width=8) + Output:["_col0"] + Please refer to the previous Merge Join Operator [MERGEJOIN_106] diff --git a/ql/src/test/results/clientpositive/perf/tez/query93.q.out b/ql/src/test/results/clientpositive/perf/tez/query93.q.out index 2891fccb3f..ee7e6527b4 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query93.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query93.q.out @@ -43,27 +43,26 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 9 <- Reducer 6 (BROADCAST_EDGE), Reducer 7 (BROADCAST_EDGE) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) -Reducer 3 <- Map 9 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Map 8 <- Reducer 6 (BROADCAST_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) +Reducer 3 <- Map 8 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) -Reducer 7 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) Stage-0 Fetch Operator limit:100 Stage-1 Reducer 5 vectorized - File Output Operator [FS_82] - Limit [LIM_81] (rows=100 width=112) + File Output Operator [FS_80] + Limit [LIM_79] (rows=100 width=112) Number of rows:100 - Select Operator [SEL_80] (rows=38308 width=112) + Select Operator [SEL_78] (rows=38308 width=112) Output:["_col0","_col1"] <-Reducer 4 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_79] - Group By Operator [GBY_78] (rows=38308 width=112) + SHUFFLE [RS_77] + Group By Operator [GBY_76] (rows=38308 width=112) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_18] @@ -73,7 +72,7 @@ Stage-0 Select Operator [SEL_15] (rows=15586502 width=3) Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_64] (rows=15586502 width=3) - Conds:RS_12._col0, _col2=RS_77._col0, _col2(Inner),Output:["_col3","_col7","_col9","_col10"] + Conds:RS_12._col0, _col2=RS_75._col0, _col2(Inner),Output:["_col3","_col7","_col9","_col10"] <-Reducer 2 [SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_12] PartitionCols:_col0, _col2 @@ -88,7 +87,7 @@ Stage-0 predicate:(sr_item_sk is not null and sr_reason_sk is not null and sr_ticket_number is not null) TableScan [TS_0] (rows=57591150 width=15) default@store_returns,store_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["sr_item_sk","sr_reason_sk","sr_ticket_number","sr_return_quantity"] - <-Map 8 [SIMPLE_EDGE] vectorized + <-Map 7 [SIMPLE_EDGE] vectorized SHUFFLE [RS_70] PartitionCols:_col0 Select Operator [SEL_69] (rows=1 width=113) @@ -97,30 +96,19 @@ Stage-0 predicate:((r_reason_desc = 'Did not like the warranty') and r_reason_sk is not null) TableScan [TS_3] (rows=72 width=101) default@reason,reason,Tbl:COMPLETE,Col:COMPLETE,Output:["r_reason_sk","r_reason_desc"] - <-Map 9 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_77] + <-Map 8 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_75] PartitionCols:_col0, _col2 - Select Operator [SEL_76] (rows=575995635 width=122) + Select Operator [SEL_74] (rows=575995635 width=122) Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_75] (rows=575995635 width=122) - predicate:((ss_item_sk BETWEEN DynamicValue(RS_12_store_returns_sr_item_sk_min) AND DynamicValue(RS_12_store_returns_sr_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_12_store_returns_sr_item_sk_bloom_filter))) and (ss_ticket_number BETWEEN DynamicValue(RS_12_store_returns_sr_ticket_number_min) AND DynamicValue(RS_12_store_returns_sr_ticket_number_max) and in_bloom_filter(ss_ticket_number, DynamicValue(RS_12_store_returns_sr_ticket_number_bloom_filter))) and ss_item_sk is not null and ss_ticket_number is not null) + Filter Operator [FIL_73] (rows=575995635 width=122) + predicate:((ss_ticket_number BETWEEN DynamicValue(RS_12_store_returns_sr_ticket_number_min) AND DynamicValue(RS_12_store_returns_sr_ticket_number_max) and in_bloom_filter(ss_ticket_number, DynamicValue(RS_12_store_returns_sr_ticket_number_bloom_filter))) and ss_item_sk is not null and ss_ticket_number is not null) TableScan [TS_6] (rows=575995635 width=122) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_item_sk","ss_customer_sk","ss_ticket_number","ss_quantity","ss_sales_price"] <-Reducer 6 [BROADCAST_EDGE] vectorized BROADCAST [RS_72] Group By Operator [GBY_71] (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_55] - Group By Operator [GBY_54] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_53] (rows=1522298 width=4) - Output:["_col0"] - Please refer to the previous Merge Join Operator [MERGEJOIN_63] - <-Reducer 7 [BROADCAST_EDGE] vectorized - BROADCAST [RS_74] - Group By Operator [GBY_73] (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_60] Group By Operator [GBY_59] (rows=1 width=12) diff --git a/ql/src/test/results/clientpositive/perf/tez/query94.q.out b/ql/src/test/results/clientpositive/perf/tez/query94.q.out index ada9f3b86b..e6ac653a35 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query94.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query94.q.out @@ -69,18 +69,16 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 12 (BROADCAST_EDGE), Reducer 14 (BROADCAST_EDGE), Reducer 16 (BROADCAST_EDGE) -Map 17 <- Reducer 10 (BROADCAST_EDGE) +Map 1 <- Reducer 13 (BROADCAST_EDGE) +Map 15 <- Reducer 10 (BROADCAST_EDGE) Reducer 10 <- Reducer 4 (CUSTOM_SIMPLE_EDGE) -Reducer 12 <- Map 11 (CUSTOM_SIMPLE_EDGE) -Reducer 14 <- Map 13 (CUSTOM_SIMPLE_EDGE) -Reducer 16 <- Map 15 (CUSTOM_SIMPLE_EDGE) -Reducer 19 <- Map 18 (SIMPLE_EDGE) +Reducer 13 <- Map 12 (CUSTOM_SIMPLE_EDGE) +Reducer 17 <- Map 16 (SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 11 (SIMPLE_EDGE) -Reducer 3 <- Map 13 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 15 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Map 17 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) -Reducer 6 <- Reducer 19 (ONE_TO_ONE_EDGE), Reducer 5 (ONE_TO_ONE_EDGE) +Reducer 3 <- Map 12 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 4 <- Map 14 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 5 <- Map 15 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) +Reducer 6 <- Reducer 17 (ONE_TO_ONE_EDGE), Reducer 5 (ONE_TO_ONE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) Reducer 8 <- Reducer 7 (CUSTOM_SIMPLE_EDGE) Reducer 9 <- Reducer 8 (SIMPLE_EDGE) @@ -90,22 +88,22 @@ Stage-0 limit:-1 Stage-1 Reducer 9 vectorized - File Output Operator [FS_178] - Limit [LIM_177] (rows=1 width=240) + File Output Operator [FS_168] + Limit [LIM_167] (rows=1 width=240) Number of rows:100 - Select Operator [SEL_176] (rows=1 width=240) + Select Operator [SEL_166] (rows=1 width=240) Output:["_col0","_col1","_col2"] <-Reducer 8 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_175] - Select Operator [SEL_174] (rows=1 width=240) + SHUFFLE [RS_165] + Select Operator [SEL_164] (rows=1 width=240) Output:["_col1","_col2","_col3"] - Group By Operator [GBY_173] (rows=1 width=232) + Group By Operator [GBY_163] (rows=1 width=232) Output:["_col0","_col1","_col2"],aggregations:["count(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)"] <-Reducer 7 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_172] - Group By Operator [GBY_171] (rows=1 width=232) + PARTITION_ONLY_SHUFFLE [RS_162] + Group By Operator [GBY_161] (rows=1 width=232) Output:["_col0","_col1","_col2"],aggregations:["count(_col0)","sum(_col1)","sum(_col2)"] - Group By Operator [GBY_170] (rows=2511437 width=228) + Group By Operator [GBY_160] (rows=2511437 width=228) Output:["_col0","_col1","_col2"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)"],keys:KEY._col0 <-Reducer 6 [SIMPLE_EDGE] SHUFFLE [RS_74] @@ -117,20 +115,20 @@ Stage-0 Filter Operator [FIL_41] (rows=5022875 width=229) predicate:_col14 is null Merge Join Operator [MERGEJOIN_130] (rows=10045750 width=229) - Conds:RS_38._col4=RS_169._col0(Left Outer),Output:["_col4","_col5","_col6","_col14"] - <-Reducer 19 [ONE_TO_ONE_EDGE] vectorized - FORWARD [RS_169] + Conds:RS_38._col4=RS_159._col0(Left Outer),Output:["_col4","_col5","_col6","_col14"] + <-Reducer 17 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_159] PartitionCols:_col0 - Select Operator [SEL_168] (rows=8007986 width=8) + Select Operator [SEL_158] (rows=8007986 width=8) Output:["_col0","_col1"] - Group By Operator [GBY_167] (rows=8007986 width=4) + Group By Operator [GBY_157] (rows=8007986 width=4) Output:["_col0"],keys:KEY._col0 - <-Map 18 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_166] + <-Map 16 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_156] PartitionCols:_col0 - Group By Operator [GBY_165] (rows=14398467 width=4) + Group By Operator [GBY_155] (rows=14398467 width=4) Output:["_col0"],keys:wr_order_number - Filter Operator [FIL_164] (rows=14398467 width=4) + Filter Operator [FIL_154] (rows=14398467 width=4) predicate:wr_order_number is not null TableScan [TS_25] (rows=14398467 width=4) default@web_returns,wr1,Tbl:COMPLETE,Col:COMPLETE,Output:["wr_order_number"] @@ -140,18 +138,18 @@ Stage-0 Select Operator [SEL_37] (rows=5022875 width=231) Output:["_col4","_col5","_col6"] Merge Join Operator [MERGEJOIN_129] (rows=5022875 width=235) - Conds:RS_34._col4=RS_163._col0(Left Semi),Output:["_col3","_col4","_col5","_col6","_col14"],residual filter predicates:{(_col3 <> _col14)} + Conds:RS_34._col4=RS_153._col0(Left Semi),Output:["_col3","_col4","_col5","_col6","_col14"],residual filter predicates:{(_col3 <> _col14)} <-Reducer 4 [SIMPLE_EDGE] SHUFFLE [RS_34] PartitionCols:_col4 Merge Join Operator [MERGEJOIN_128] (rows=5022875 width=231) - Conds:RS_18._col2=RS_149._col0(Inner),Output:["_col3","_col4","_col5","_col6"] - <-Map 15 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_149] + Conds:RS_18._col2=RS_147._col0(Inner),Output:["_col3","_col4","_col5","_col6"] + <-Map 14 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_147] PartitionCols:_col0 - Select Operator [SEL_148] (rows=12 width=91) + Select Operator [SEL_146] (rows=12 width=91) Output:["_col0"] - Filter Operator [FIL_147] (rows=12 width=92) + Filter Operator [FIL_145] (rows=12 width=92) predicate:((web_company_name = 'pri') and web_site_sk is not null) TableScan [TS_9] (rows=84 width=92) default@web_site,web_site,Tbl:COMPLETE,Col:COMPLETE,Output:["web_site_sk","web_company_name"] @@ -159,13 +157,13 @@ Stage-0 SHUFFLE [RS_18] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_127] (rows=15673790 width=235) - Conds:RS_15._col1=RS_141._col0(Inner),Output:["_col2","_col3","_col4","_col5","_col6"] - <-Map 13 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_141] + Conds:RS_15._col1=RS_133._col0(Inner),Output:["_col2","_col3","_col4","_col5","_col6"] + <-Map 12 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_133] PartitionCols:_col0 - Select Operator [SEL_140] (rows=784314 width=90) + Select Operator [SEL_132] (rows=784314 width=90) Output:["_col0"] - Filter Operator [FIL_139] (rows=784314 width=90) + Filter Operator [FIL_131] (rows=784314 width=90) predicate:((ca_state = 'TX') and ca_address_sk is not null) TableScan [TS_6] (rows=40000000 width=90) default@customer_address,customer_address,Tbl:COMPLETE,Col:COMPLETE,Output:["ca_address_sk","ca_state"] @@ -173,72 +171,50 @@ Stage-0 SHUFFLE [RS_15] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_126] (rows=15987241 width=239) - Conds:RS_157._col0=RS_133._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6"] - <-Map 11 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_133] - PartitionCols:_col0 - Select Operator [SEL_132] (rows=8116 width=98) - Output:["_col0"] - Filter Operator [FIL_131] (rows=8116 width=98) - predicate:(CAST( d_date AS TIMESTAMP) BETWEEN TIMESTAMP'1999-05-01 00:00:00' AND TIMESTAMP'1999-06-30 00:00:00' and d_date_sk is not null) - TableScan [TS_3] (rows=73049 width=98) - default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"] + Conds:RS_141._col0=RS_144._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_157] + SHUFFLE [RS_141] PartitionCols:_col0 - Select Operator [SEL_156] (rows=143895019 width=243) + Select Operator [SEL_140] (rows=143895019 width=243) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] - Filter Operator [FIL_155] (rows=143895019 width=243) - predicate:((ws_ship_addr_sk BETWEEN DynamicValue(RS_16_customer_address_ca_address_sk_min) AND DynamicValue(RS_16_customer_address_ca_address_sk_max) and in_bloom_filter(ws_ship_addr_sk, DynamicValue(RS_16_customer_address_ca_address_sk_bloom_filter))) and (ws_ship_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(ws_ship_date_sk, DynamicValue(RS_13_date_dim_d_date_sk_bloom_filter))) and (ws_web_site_sk BETWEEN DynamicValue(RS_19_web_site_web_site_sk_min) AND DynamicValue(RS_19_web_site_web_site_sk_max) and in_bloom_filter(ws_web_site_sk, DynamicValue(RS_19_web_site_web_site_sk_bloom_filter))) and ws_order_number is not null and ws_ship_addr_sk is not null and ws_ship_date_sk is not null and ws_web_site_sk is not null) + Filter Operator [FIL_139] (rows=143895019 width=243) + predicate:((ws_ship_addr_sk BETWEEN DynamicValue(RS_16_customer_address_ca_address_sk_min) AND DynamicValue(RS_16_customer_address_ca_address_sk_max) and in_bloom_filter(ws_ship_addr_sk, DynamicValue(RS_16_customer_address_ca_address_sk_bloom_filter))) and ws_order_number is not null and ws_ship_addr_sk is not null and ws_ship_date_sk is not null and ws_web_site_sk is not null) TableScan [TS_0] (rows=144002668 width=243) default@web_sales,ws1,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_ship_date_sk","ws_ship_addr_sk","ws_web_site_sk","ws_warehouse_sk","ws_order_number","ws_ext_ship_cost","ws_net_profit"] - <-Reducer 12 [BROADCAST_EDGE] vectorized + <-Reducer 13 [BROADCAST_EDGE] vectorized BROADCAST [RS_138] Group By Operator [GBY_137] (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 + <-Map 12 [CUSTOM_SIMPLE_EDGE] vectorized SHUFFLE [RS_136] Group By Operator [GBY_135] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_134] (rows=8116 width=4) + Select Operator [SEL_134] (rows=784314 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_132] - <-Reducer 14 [BROADCAST_EDGE] vectorized - BROADCAST [RS_146] - Group By Operator [GBY_145] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 13 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_144] - Group By Operator [GBY_143] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_142] (rows=784314 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_140] - <-Reducer 16 [BROADCAST_EDGE] vectorized - BROADCAST [RS_154] - Group By Operator [GBY_153] (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_152] - Group By Operator [GBY_151] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_150] (rows=12 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_148] - <-Map 17 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_163] + <-Map 11 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_144] + PartitionCols:_col0 + Select Operator [SEL_143] (rows=8116 width=98) + Output:["_col0"] + Filter Operator [FIL_142] (rows=8116 width=98) + predicate:(CAST( d_date AS TIMESTAMP) BETWEEN TIMESTAMP'1999-05-01 00:00:00' AND TIMESTAMP'1999-06-30 00:00:00' and d_date_sk is not null) + TableScan [TS_3] (rows=73049 width=98) + default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"] + <-Map 15 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_153] PartitionCols:_col0 - Group By Operator [GBY_162] (rows=143966743 width=7) + Group By Operator [GBY_152] (rows=143966743 width=7) Output:["_col0","_col1"],keys:_col0, _col1 - Select Operator [SEL_161] (rows=143966743 width=7) + Select Operator [SEL_151] (rows=143966743 width=7) Output:["_col0","_col1"] - Filter Operator [FIL_160] (rows=143966743 width=7) + Filter Operator [FIL_150] (rows=143966743 width=7) predicate:((ws_order_number BETWEEN DynamicValue(RS_34_ws1_ws_order_number_min) AND DynamicValue(RS_34_ws1_ws_order_number_max) and in_bloom_filter(ws_order_number, DynamicValue(RS_34_ws1_ws_order_number_bloom_filter))) and ws_order_number is not null and ws_warehouse_sk is not null) TableScan [TS_22] (rows=144002668 width=7) default@web_sales,ws2,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_warehouse_sk","ws_order_number"] <-Reducer 10 [BROADCAST_EDGE] vectorized - BROADCAST [RS_159] - Group By Operator [GBY_158] (rows=1 width=12) + BROADCAST [RS_149] + Group By Operator [GBY_148] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Reducer 4 [CUSTOM_SIMPLE_EDGE] SHUFFLE [RS_116] diff --git a/ql/src/test/results/clientpositive/perf/tez/query95.q.out b/ql/src/test/results/clientpositive/perf/tez/query95.q.out index 49e8e868c6..df1d83d5e7 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query95.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query95.q.out @@ -75,26 +75,23 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 13 (BROADCAST_EDGE), Reducer 15 (BROADCAST_EDGE), Reducer 17 (BROADCAST_EDGE) -Map 18 <- Reducer 11 (BROADCAST_EDGE) -Map 21 <- Reducer 11 (BROADCAST_EDGE) -Map 22 <- Reducer 10 (BROADCAST_EDGE) -Map 26 <- Reducer 10 (BROADCAST_EDGE) +Map 1 <- Reducer 14 (BROADCAST_EDGE) +Map 16 <- Reducer 11 (BROADCAST_EDGE) +Map 19 <- Reducer 10 (BROADCAST_EDGE) +Map 23 <- Reducer 11 (BROADCAST_EDGE) Reducer 10 <- Reducer 5 (CUSTOM_SIMPLE_EDGE) Reducer 11 <- Reducer 4 (CUSTOM_SIMPLE_EDGE) -Reducer 13 <- Map 12 (CUSTOM_SIMPLE_EDGE) -Reducer 15 <- Map 14 (CUSTOM_SIMPLE_EDGE) -Reducer 17 <- Map 16 (CUSTOM_SIMPLE_EDGE) -Reducer 19 <- Map 18 (SIMPLE_EDGE), Map 21 (SIMPLE_EDGE) +Reducer 14 <- Map 13 (CUSTOM_SIMPLE_EDGE) +Reducer 17 <- Map 16 (SIMPLE_EDGE), Map 23 (SIMPLE_EDGE) +Reducer 18 <- Reducer 17 (SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 12 (SIMPLE_EDGE) -Reducer 20 <- Reducer 19 (SIMPLE_EDGE) -Reducer 23 <- Map 22 (SIMPLE_EDGE), Map 26 (SIMPLE_EDGE) -Reducer 24 <- Map 27 (SIMPLE_EDGE), Reducer 23 (ONE_TO_ONE_EDGE) -Reducer 25 <- Reducer 24 (SIMPLE_EDGE) -Reducer 3 <- Map 14 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 16 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Reducer 20 (ONE_TO_ONE_EDGE), Reducer 4 (SIMPLE_EDGE) -Reducer 6 <- Reducer 25 (ONE_TO_ONE_EDGE), Reducer 5 (ONE_TO_ONE_EDGE) +Reducer 20 <- Map 19 (SIMPLE_EDGE), Map 23 (SIMPLE_EDGE) +Reducer 21 <- Map 24 (SIMPLE_EDGE), Reducer 20 (ONE_TO_ONE_EDGE) +Reducer 22 <- Reducer 21 (SIMPLE_EDGE) +Reducer 3 <- Map 13 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 4 <- Map 15 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 5 <- Reducer 18 (ONE_TO_ONE_EDGE), Reducer 4 (SIMPLE_EDGE) +Reducer 6 <- Reducer 22 (ONE_TO_ONE_EDGE), Reducer 5 (ONE_TO_ONE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) Reducer 8 <- Reducer 7 (CUSTOM_SIMPLE_EDGE) Reducer 9 <- Reducer 8 (SIMPLE_EDGE) @@ -104,22 +101,22 @@ Stage-0 limit:-1 Stage-1 Reducer 9 vectorized - File Output Operator [FS_302] - Limit [LIM_301] (rows=1 width=240) + File Output Operator [FS_289] + Limit [LIM_288] (rows=1 width=240) Number of rows:100 - Select Operator [SEL_300] (rows=1 width=240) + Select Operator [SEL_287] (rows=1 width=240) Output:["_col0","_col1","_col2"] <-Reducer 8 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_299] - Select Operator [SEL_298] (rows=1 width=240) + SHUFFLE [RS_286] + Select Operator [SEL_285] (rows=1 width=240) Output:["_col1","_col2","_col3"] - Group By Operator [GBY_297] (rows=1 width=232) + Group By Operator [GBY_284] (rows=1 width=232) Output:["_col0","_col1","_col2"],aggregations:["count(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)"] <-Reducer 7 [CUSTOM_SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_296] - Group By Operator [GBY_295] (rows=1 width=232) + PARTITION_ONLY_SHUFFLE [RS_283] + Group By Operator [GBY_282] (rows=1 width=232) Output:["_col0","_col1","_col2"],aggregations:["count(_col0)","sum(_col1)","sum(_col2)"] - Group By Operator [GBY_294] (rows=2511437 width=228) + Group By Operator [GBY_281] (rows=2511437 width=228) Output:["_col0","_col1","_col2"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)"],keys:KEY._col0 <-Reducer 6 [SIMPLE_EDGE] SHUFFLE [RS_115] @@ -127,23 +124,23 @@ Stage-0 Group By Operator [GBY_114] (rows=2511437 width=228) Output:["_col0","_col2","_col3"],aggregations:["sum(_col4)","sum(_col5)"],keys:_col3 Merge Join Operator [MERGEJOIN_241] (rows=5022875 width=227) - Conds:RS_61._col3=RS_293._col0(Inner),Output:["_col3","_col4","_col5"] + Conds:RS_61._col3=RS_280._col0(Inner),Output:["_col3","_col4","_col5"] <-Reducer 5 [ONE_TO_ONE_EDGE] FORWARD [RS_61] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_240] (rows=5022875 width=227) - Conds:RS_58._col3=RS_279._col0(Inner),Output:["_col3","_col4","_col5"] + Conds:RS_58._col3=RS_270._col0(Inner),Output:["_col3","_col4","_col5"] <-Reducer 4 [SIMPLE_EDGE] SHUFFLE [RS_58] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_236] (rows=5022875 width=227) - Conds:RS_55._col2=RS_260._col0(Inner),Output:["_col3","_col4","_col5"] - <-Map 16 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_260] + Conds:RS_55._col2=RS_258._col0(Inner),Output:["_col3","_col4","_col5"] + <-Map 15 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_258] PartitionCols:_col0 - Select Operator [SEL_259] (rows=12 width=91) + Select Operator [SEL_257] (rows=12 width=91) Output:["_col0"] - Filter Operator [FIL_258] (rows=12 width=92) + Filter Operator [FIL_256] (rows=12 width=92) predicate:((web_company_name = 'pri') and web_site_sk is not null) TableScan [TS_9] (rows=84 width=92) default@web_site,web_site,Tbl:COMPLETE,Col:COMPLETE,Output:["web_site_sk","web_company_name"] @@ -151,13 +148,13 @@ Stage-0 SHUFFLE [RS_55] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_235] (rows=15673790 width=231) - Conds:RS_52._col1=RS_252._col0(Inner),Output:["_col2","_col3","_col4","_col5"] - <-Map 14 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_252] + Conds:RS_52._col1=RS_244._col0(Inner),Output:["_col2","_col3","_col4","_col5"] + <-Map 13 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_244] PartitionCols:_col0 - Select Operator [SEL_251] (rows=784314 width=90) + Select Operator [SEL_243] (rows=784314 width=90) Output:["_col0"] - Filter Operator [FIL_250] (rows=784314 width=90) + Filter Operator [FIL_242] (rows=784314 width=90) predicate:((ca_state = 'TX') and ca_address_sk is not null) TableScan [TS_6] (rows=40000000 width=90) default@customer_address,customer_address,Tbl:COMPLETE,Col:COMPLETE,Output:["ca_address_sk","ca_state"] @@ -165,64 +162,42 @@ Stage-0 SHUFFLE [RS_52] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_234] (rows=15987241 width=235) - Conds:RS_268._col0=RS_244._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5"] - <-Map 12 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_244] - PartitionCols:_col0 - Select Operator [SEL_243] (rows=8116 width=98) - Output:["_col0"] - Filter Operator [FIL_242] (rows=8116 width=98) - predicate:(CAST( d_date AS TIMESTAMP) BETWEEN TIMESTAMP'1999-05-01 00:00:00' AND TIMESTAMP'1999-06-30 00:00:00' and d_date_sk is not null) - TableScan [TS_3] (rows=73049 width=98) - default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"] + Conds:RS_252._col0=RS_255._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_268] + SHUFFLE [RS_252] PartitionCols:_col0 - Select Operator [SEL_267] (rows=143895019 width=239) + Select Operator [SEL_251] (rows=143895019 width=239) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] - Filter Operator [FIL_266] (rows=143895019 width=239) - predicate:((ws_ship_addr_sk BETWEEN DynamicValue(RS_53_customer_address_ca_address_sk_min) AND DynamicValue(RS_53_customer_address_ca_address_sk_max) and in_bloom_filter(ws_ship_addr_sk, DynamicValue(RS_53_customer_address_ca_address_sk_bloom_filter))) and (ws_ship_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_ship_date_sk, DynamicValue(RS_50_date_dim_d_date_sk_bloom_filter))) and (ws_web_site_sk BETWEEN DynamicValue(RS_56_web_site_web_site_sk_min) AND DynamicValue(RS_56_web_site_web_site_sk_max) and in_bloom_filter(ws_web_site_sk, DynamicValue(RS_56_web_site_web_site_sk_bloom_filter))) and ws_order_number is not null and ws_ship_addr_sk is not null and ws_ship_date_sk is not null and ws_web_site_sk is not null) + Filter Operator [FIL_250] (rows=143895019 width=239) + predicate:((ws_ship_addr_sk BETWEEN DynamicValue(RS_53_customer_address_ca_address_sk_min) AND DynamicValue(RS_53_customer_address_ca_address_sk_max) and in_bloom_filter(ws_ship_addr_sk, DynamicValue(RS_53_customer_address_ca_address_sk_bloom_filter))) and ws_order_number is not null and ws_ship_addr_sk is not null and ws_ship_date_sk is not null and ws_web_site_sk is not null) TableScan [TS_0] (rows=144002668 width=239) default@web_sales,ws1,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_ship_date_sk","ws_ship_addr_sk","ws_web_site_sk","ws_order_number","ws_ext_ship_cost","ws_net_profit"] - <-Reducer 13 [BROADCAST_EDGE] vectorized + <-Reducer 14 [BROADCAST_EDGE] vectorized BROADCAST [RS_249] Group By Operator [GBY_248] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 12 [CUSTOM_SIMPLE_EDGE] vectorized + <-Map 13 [CUSTOM_SIMPLE_EDGE] vectorized SHUFFLE [RS_247] Group By Operator [GBY_246] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_245] (rows=8116 width=4) + Select Operator [SEL_245] (rows=784314 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_243] - <-Reducer 15 [BROADCAST_EDGE] vectorized - BROADCAST [RS_257] - Group By Operator [GBY_256] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 14 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_255] - Group By Operator [GBY_254] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_253] (rows=784314 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_251] - <-Reducer 17 [BROADCAST_EDGE] vectorized - BROADCAST [RS_265] - Group By Operator [GBY_264] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 16 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_263] - Group By Operator [GBY_262] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_261] (rows=12 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_259] - <-Reducer 20 [ONE_TO_ONE_EDGE] vectorized - FORWARD [RS_279] + <-Map 12 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_255] + PartitionCols:_col0 + Select Operator [SEL_254] (rows=8116 width=98) + Output:["_col0"] + Filter Operator [FIL_253] (rows=8116 width=98) + predicate:(CAST( d_date AS TIMESTAMP) BETWEEN TIMESTAMP'1999-05-01 00:00:00' AND TIMESTAMP'1999-06-30 00:00:00' and d_date_sk is not null) + TableScan [TS_3] (rows=73049 width=98) + default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"] + <-Reducer 18 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_270] PartitionCols:_col0 - Group By Operator [GBY_278] (rows=14686712 width=4) + Group By Operator [GBY_269] (rows=14686712 width=4) Output:["_col0"],keys:KEY._col0 - <-Reducer 19 [SIMPLE_EDGE] + <-Reducer 17 [SIMPLE_EDGE] SHUFFLE [RS_24] PartitionCols:_col0 Group By Operator [GBY_23] (rows=144002668 width=4) @@ -232,19 +207,19 @@ Stage-0 Filter Operator [FIL_21] (rows=1411940834 width=11) predicate:(_col0 <> _col2) Merge Join Operator [MERGEJOIN_237] (rows=1411940834 width=11) - Conds:RS_274._col1=RS_277._col1(Inner),Output:["_col0","_col1","_col2"] - <-Map 18 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_274] + Conds:RS_268._col1=RS_264._col1(Inner),Output:["_col0","_col1","_col2"] + <-Map 23 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_268] PartitionCols:_col1 - Select Operator [SEL_273] (rows=144002668 width=7) + Select Operator [SEL_266] (rows=144002668 width=7) Output:["_col0","_col1"] - Filter Operator [FIL_272] (rows=144002668 width=7) + Filter Operator [FIL_265] (rows=144002668 width=7) predicate:((ws_order_number BETWEEN DynamicValue(RS_58_ws1_ws_order_number_min) AND DynamicValue(RS_58_ws1_ws_order_number_max) and in_bloom_filter(ws_order_number, DynamicValue(RS_58_ws1_ws_order_number_bloom_filter))) and ws_order_number is not null) - TableScan [TS_12] (rows=144002668 width=7) - default@web_sales,ws1,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_warehouse_sk","ws_order_number"] + TableScan [TS_30] (rows=144002668 width=7) + default@web_sales,ws2,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_warehouse_sk","ws_order_number"] <-Reducer 11 [BROADCAST_EDGE] vectorized - BROADCAST [RS_270] - Group By Operator [GBY_269] (rows=1 width=12) + BROADCAST [RS_261] + Group By Operator [GBY_259] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Reducer 4 [CUSTOM_SIMPLE_EDGE] SHUFFLE [RS_193] @@ -253,40 +228,40 @@ Stage-0 Select Operator [SEL_191] (rows=5022875 width=8) Output:["_col0"] Please refer to the previous Merge Join Operator [MERGEJOIN_236] - <-Map 21 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_277] + <-Map 16 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_264] PartitionCols:_col1 - Select Operator [SEL_276] (rows=144002668 width=7) + Select Operator [SEL_263] (rows=144002668 width=7) Output:["_col0","_col1"] - Filter Operator [FIL_275] (rows=144002668 width=7) + Filter Operator [FIL_262] (rows=144002668 width=7) predicate:((ws_order_number BETWEEN DynamicValue(RS_58_ws1_ws_order_number_min) AND DynamicValue(RS_58_ws1_ws_order_number_max) and in_bloom_filter(ws_order_number, DynamicValue(RS_58_ws1_ws_order_number_bloom_filter))) and ws_order_number is not null) TableScan [TS_15] (rows=144002668 width=7) default@web_sales,ws2,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_warehouse_sk","ws_order_number"] <-Reducer 11 [BROADCAST_EDGE] vectorized - BROADCAST [RS_271] - Please refer to the previous Group By Operator [GBY_269] - <-Reducer 25 [ONE_TO_ONE_EDGE] vectorized - FORWARD [RS_293] + BROADCAST [RS_260] + Please refer to the previous Group By Operator [GBY_259] + <-Reducer 22 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_280] PartitionCols:_col0 - Group By Operator [GBY_292] (rows=8007986 width=4) + Group By Operator [GBY_279] (rows=8007986 width=4) Output:["_col0"],keys:KEY._col0 - <-Reducer 24 [SIMPLE_EDGE] + <-Reducer 21 [SIMPLE_EDGE] SHUFFLE [RS_46] PartitionCols:_col0 Group By Operator [GBY_45] (rows=14398467 width=4) Output:["_col0"],keys:_col14 Merge Join Operator [MERGEJOIN_239] (rows=1384229738 width=4) - Conds:RS_41._col0=RS_291._col13(Inner),Output:["_col14"] - <-Map 27 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_291] + Conds:RS_41._col0=RS_278._col13(Inner),Output:["_col14"] + <-Map 24 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_278] PartitionCols:_col13 - Select Operator [SEL_290] (rows=14398467 width=272) + Select Operator [SEL_277] (rows=14398467 width=272) Output:["_col13"] - Filter Operator [FIL_289] (rows=14398467 width=4) + Filter Operator [FIL_276] (rows=14398467 width=4) predicate:wr_order_number is not null TableScan [TS_38] (rows=14398467 width=4) default@web_returns,web_returns,Tbl:COMPLETE,Col:COMPLETE,Output:["wr_order_number"] - <-Reducer 23 [ONE_TO_ONE_EDGE] + <-Reducer 20 [ONE_TO_ONE_EDGE] FORWARD [RS_41] PartitionCols:_col0 Select Operator [SEL_37] (rows=1411940834 width=4) @@ -294,19 +269,23 @@ Stage-0 Filter Operator [FIL_36] (rows=1411940834 width=11) predicate:(_col0 <> _col2) Merge Join Operator [MERGEJOIN_238] (rows=1411940834 width=11) - Conds:RS_285._col1=RS_288._col1(Inner),Output:["_col0","_col1","_col2"] - <-Map 22 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_285] + Conds:RS_275._col1=RS_267._col1(Inner),Output:["_col0","_col1","_col2"] + <-Map 23 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_267] PartitionCols:_col1 - Select Operator [SEL_284] (rows=144002668 width=7) + Please refer to the previous Select Operator [SEL_266] + <-Map 19 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_275] + PartitionCols:_col1 + Select Operator [SEL_274] (rows=144002668 width=7) Output:["_col0","_col1"] - Filter Operator [FIL_283] (rows=144002668 width=7) + Filter Operator [FIL_273] (rows=144002668 width=7) predicate:((ws_order_number BETWEEN DynamicValue(RS_61_ws1_ws_order_number_min) AND DynamicValue(RS_61_ws1_ws_order_number_max) and in_bloom_filter(ws_order_number, DynamicValue(RS_61_ws1_ws_order_number_bloom_filter))) and ws_order_number is not null) TableScan [TS_27] (rows=144002668 width=7) default@web_sales,ws1,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_warehouse_sk","ws_order_number"] <-Reducer 10 [BROADCAST_EDGE] vectorized - BROADCAST [RS_281] - Group By Operator [GBY_280] (rows=1 width=12) + BROADCAST [RS_272] + Group By Operator [GBY_271] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] <-Reducer 5 [CUSTOM_SIMPLE_EDGE] FORWARD [RS_212] @@ -315,16 +294,4 @@ Stage-0 Select Operator [SEL_210] (rows=5022875 width=8) Output:["_col0"] Please refer to the previous Merge Join Operator [MERGEJOIN_240] - <-Map 26 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_288] - PartitionCols:_col1 - Select Operator [SEL_287] (rows=144002668 width=7) - Output:["_col0","_col1"] - Filter Operator [FIL_286] (rows=144002668 width=7) - predicate:((ws_order_number BETWEEN DynamicValue(RS_61_ws1_ws_order_number_min) AND DynamicValue(RS_61_ws1_ws_order_number_max) and in_bloom_filter(ws_order_number, DynamicValue(RS_61_ws1_ws_order_number_bloom_filter))) and ws_order_number is not null) - TableScan [TS_30] (rows=144002668 width=7) - default@web_sales,ws2,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_warehouse_sk","ws_order_number"] - <-Reducer 10 [BROADCAST_EDGE] vectorized - BROADCAST [RS_282] - Please refer to the previous Group By Operator [GBY_280] diff --git a/ql/src/test/results/clientpositive/perf/tez/query96.q.out b/ql/src/test/results/clientpositive/perf/tez/query96.q.out index d06ad6a611..3bfc578037 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query96.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query96.q.out @@ -41,12 +41,10 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 10 (BROADCAST_EDGE), Reducer 12 (BROADCAST_EDGE), Reducer 8 (BROADCAST_EDGE) -Reducer 10 <- Map 9 (CUSTOM_SIMPLE_EDGE) -Reducer 12 <- Map 11 (CUSTOM_SIMPLE_EDGE) +Map 1 <- Reducer 8 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) Reducer 3 <- Map 9 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 11 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 4 <- Map 10 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (CUSTOM_SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) Reducer 8 <- Map 7 (CUSTOM_SIMPLE_EDGE) @@ -56,29 +54,29 @@ Stage-0 limit:-1 Stage-1 Reducer 6 vectorized - File Output Operator [FS_109] - Limit [LIM_108] (rows=1 width=16) + File Output Operator [FS_99] + Limit [LIM_98] (rows=1 width=16) Number of rows:100 - Select Operator [SEL_107] (rows=1 width=16) + Select Operator [SEL_97] (rows=1 width=16) Output:["_col0"] <-Reducer 5 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_106] - Select Operator [SEL_105] (rows=1 width=16) + SHUFFLE [RS_96] + Select Operator [SEL_95] (rows=1 width=16) Output:["_col1"] - Group By Operator [GBY_104] (rows=1 width=8) + Group By Operator [GBY_94] (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_76] (rows=1084713 width=8) - Conds:RS_18._col2=RS_95._col0(Inner) - <-Map 11 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_95] + Conds:RS_18._col2=RS_93._col0(Inner) + <-Map 10 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_93] PartitionCols:_col0 - Select Operator [SEL_94] (rows=155 width=91) + Select Operator [SEL_92] (rows=155 width=91) Output:["_col0"] - Filter Operator [FIL_93] (rows=155 width=92) + Filter Operator [FIL_91] (rows=155 width=92) predicate:((s_store_name = 'ese') and s_store_sk is not null) TableScan [TS_9] (rows=1704 width=92) default@store,store,Tbl:COMPLETE,Col:COMPLETE,Output:["s_store_sk","s_store_name"] @@ -86,13 +84,13 @@ Stage-0 SHUFFLE [RS_18] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_75] (rows=1477476 width=0) - Conds:RS_15._col1=RS_87._col0(Inner),Output:["_col2"] + Conds:RS_15._col1=RS_90._col0(Inner),Output:["_col2"] <-Map 9 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_87] + SHUFFLE [RS_90] PartitionCols:_col0 - Select Operator [SEL_86] (rows=655 width=8) + Select Operator [SEL_89] (rows=655 width=8) Output:["_col0"] - Filter Operator [FIL_85] (rows=655 width=8) + Filter Operator [FIL_88] (rows=655 width=8) predicate:((hd_dep_count = 5) and hd_demo_sk is not null) TableScan [TS_6] (rows=7200 width=8) default@household_demographics,household_demographics,Tbl:COMPLETE,Col:COMPLETE,Output:["hd_demo_sk","hd_dep_count"] @@ -100,7 +98,7 @@ Stage-0 SHUFFLE [RS_15] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_74] (rows=16240953 width=0) - Conds:RS_103._col0=RS_79._col0(Inner),Output:["_col1","_col2"] + Conds:RS_87._col0=RS_79._col0(Inner),Output:["_col1","_col2"] <-Map 7 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_79] PartitionCols:_col0 @@ -111,36 +109,14 @@ Stage-0 TableScan [TS_3] (rows=86400 width=12) default@time_dim,time_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["t_time_sk","t_hour","t_minute"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_103] + SHUFFLE [RS_87] PartitionCols:_col0 - Select Operator [SEL_102] (rows=501695814 width=11) + Select Operator [SEL_86] (rows=501695814 width=11) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_101] (rows=501695814 width=11) - predicate:((ss_hdemo_sk BETWEEN DynamicValue(RS_16_household_demographics_hd_demo_sk_min) AND DynamicValue(RS_16_household_demographics_hd_demo_sk_max) and in_bloom_filter(ss_hdemo_sk, DynamicValue(RS_16_household_demographics_hd_demo_sk_bloom_filter))) and (ss_sold_time_sk BETWEEN DynamicValue(RS_13_time_dim_t_time_sk_min) AND DynamicValue(RS_13_time_dim_t_time_sk_max) and in_bloom_filter(ss_sold_time_sk, DynamicValue(RS_13_time_dim_t_time_sk_bloom_filter))) and (ss_store_sk BETWEEN DynamicValue(RS_19_store_s_store_sk_min) AND DynamicValue(RS_19_store_s_store_sk_max) and in_bloom_filter(ss_store_sk, DynamicValue(RS_19_store_s_store_sk_bloom_filter))) and ss_hdemo_sk is not null and ss_sold_time_sk is not null and ss_store_sk is not null) + Filter Operator [FIL_85] (rows=501695814 width=11) + predicate:((ss_sold_time_sk BETWEEN DynamicValue(RS_13_time_dim_t_time_sk_min) AND DynamicValue(RS_13_time_dim_t_time_sk_max) and in_bloom_filter(ss_sold_time_sk, DynamicValue(RS_13_time_dim_t_time_sk_bloom_filter))) and ss_hdemo_sk is not null and ss_sold_time_sk is not null and ss_store_sk is not null) TableScan [TS_0] (rows=575995635 width=11) default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_time_sk","ss_hdemo_sk","ss_store_sk"] - <-Reducer 10 [BROADCAST_EDGE] vectorized - BROADCAST [RS_92] - Group By Operator [GBY_91] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 9 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_90] - Group By Operator [GBY_89] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_88] (rows=655 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_86] - <-Reducer 12 [BROADCAST_EDGE] vectorized - BROADCAST [RS_100] - Group By Operator [GBY_99] (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 - SHUFFLE [RS_98] - Group By Operator [GBY_97] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_96] (rows=155 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_94] <-Reducer 8 [BROADCAST_EDGE] vectorized BROADCAST [RS_84] Group By Operator [GBY_83] (rows=1 width=12) diff --git a/ql/src/test/results/clientpositive/perf/tez/query98.q.out b/ql/src/test/results/clientpositive/perf/tez/query98.q.out index 8403d20e70..159163cebc 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query98.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query98.q.out @@ -71,8 +71,7 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 10 (BROADCAST_EDGE), Reducer 8 (BROADCAST_EDGE) -Reducer 10 <- Map 9 (CUSTOM_SIMPLE_EDGE) +Map 1 <- Reducer 8 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) Reducer 3 <- Map 9 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) @@ -85,21 +84,21 @@ Stage-0 limit:-1 Stage-1 Reducer 6 vectorized - File Output Operator [FS_84] - Select Operator [SEL_83] (rows=138600 width=701) + File Output Operator [FS_79] + Select Operator [SEL_78] (rows=138600 width=701) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] <-Reducer 5 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_82] - Select Operator [SEL_81] (rows=138600 width=801) + SHUFFLE [RS_77] + Select Operator [SEL_76] (rows=138600 width=801) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] - PTF Operator [PTF_80] (rows=138600 width=689) + PTF Operator [PTF_75] (rows=138600 width=689) Function definitions:[{},{"name:":"windowingtablefunction","order by:":"_col1 ASC NULLS FIRST","partition by:":"_col1"}] - Select Operator [SEL_79] (rows=138600 width=689) + Select Operator [SEL_74] (rows=138600 width=689) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] <-Reducer 4 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_78] + SHUFFLE [RS_73] PartitionCols:_col1 - Group By Operator [GBY_77] (rows=138600 width=689) + Group By Operator [GBY_72] (rows=138600 width=689) Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4 <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_17] @@ -107,13 +106,13 @@ Stage-0 Group By Operator [GBY_16] (rows=138600 width=689) Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["sum(_col2)"],keys:_col10, _col9, _col6, _col7, _col8 Merge Join Operator [MERGEJOIN_57] (rows=18334631 width=577) - Conds:RS_12._col1=RS_68._col0(Inner),Output:["_col2","_col6","_col7","_col8","_col9","_col10"] + Conds:RS_12._col1=RS_71._col0(Inner),Output:["_col2","_col6","_col7","_col8","_col9","_col10"] <-Map 9 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_68] + SHUFFLE [RS_71] PartitionCols:_col0 - Select Operator [SEL_67] (rows=138600 width=581) + Select Operator [SEL_70] (rows=138600 width=581) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] - Filter Operator [FIL_66] (rows=138600 width=581) + Filter Operator [FIL_69] (rows=138600 width=581) predicate:((i_category) IN ('Jewelry', 'Sports', 'Books') and i_item_sk is not null) TableScan [TS_6] (rows=462000 width=581) default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_item_id","i_item_desc","i_current_price","i_class","i_category"] @@ -121,7 +120,7 @@ Stage-0 SHUFFLE [RS_12] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_56] (rows=61115434 width=70) - Conds:RS_76._col0=RS_60._col0(Inner),Output:["_col1","_col2"] + Conds:RS_68._col0=RS_60._col0(Inner),Output:["_col1","_col2"] <-Map 7 [SIMPLE_EDGE] vectorized PARTITION_ONLY_SHUFFLE [RS_60] PartitionCols:_col0 @@ -132,25 +131,14 @@ Stage-0 TableScan [TS_3] (rows=73049 width=98) default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_76] + SHUFFLE [RS_68] PartitionCols:_col0 - Select Operator [SEL_75] (rows=550076554 width=114) + Select Operator [SEL_67] (rows=550076554 width=114) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_74] (rows=550076554 width=114) - predicate:((ss_item_sk BETWEEN DynamicValue(RS_13_item_i_item_sk_min) AND DynamicValue(RS_13_item_i_item_sk_max) and in_bloom_filter(ss_item_sk, DynamicValue(RS_13_item_i_item_sk_bloom_filter))) and (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_item_sk is not null and ss_sold_date_sk is not null) + Filter Operator [FIL_66] (rows=550076554 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_item_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_item_sk","ss_ext_sales_price"] - <-Reducer 10 [BROADCAST_EDGE] vectorized - BROADCAST [RS_73] - Group By Operator [GBY_72] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 9 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_71] - Group By Operator [GBY_70] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_69] (rows=138600 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_67] <-Reducer 8 [BROADCAST_EDGE] vectorized BROADCAST [RS_65] Group By Operator [GBY_64] (rows=1 width=12) diff --git a/ql/src/test/results/clientpositive/perf/tez/query99.q.out b/ql/src/test/results/clientpositive/perf/tez/query99.q.out index 745c5a9c4b..6c0616fca3 100644 --- a/ql/src/test/results/clientpositive/perf/tez/query99.q.out +++ b/ql/src/test/results/clientpositive/perf/tez/query99.q.out @@ -81,31 +81,30 @@ POSTHOOK: Output: hdfs://### HDFS PATH ### Plan optimized by CBO. Vertex dependency in root stage -Map 1 <- Reducer 13 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) -Reducer 13 <- Map 12 (CUSTOM_SIMPLE_EDGE) +Map 1 <- Reducer 12 (BROADCAST_EDGE) +Reducer 12 <- Map 11 (CUSTOM_SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) -Reducer 3 <- Map 10 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 11 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Map 12 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) +Reducer 3 <- Map 9 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 4 <- Map 10 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 5 <- Map 11 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) -Reducer 9 <- Map 8 (CUSTOM_SIMPLE_EDGE) Stage-0 Fetch Operator limit:-1 Stage-1 Reducer 7 vectorized - File Output Operator [FS_132] - Limit [LIM_131] (rows=100 width=590) + File Output Operator [FS_127] + Limit [LIM_126] (rows=100 width=590) Number of rows:100 - Select Operator [SEL_130] (rows=3869553 width=590) + Select Operator [SEL_125] (rows=3869553 width=590) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] <-Reducer 6 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_129] - Select Operator [SEL_128] (rows=3869553 width=590) + SHUFFLE [RS_124] + Select Operator [SEL_123] (rows=3869553 width=590) Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8"] - Group By Operator [GBY_127] (rows=3869553 width=406) + Group By Operator [GBY_122] (rows=3869553 width=406) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)","sum(VALUE._col3)","sum(VALUE._col4)"],keys:KEY._col0, KEY._col1, KEY._col2 <-Reducer 5 [SIMPLE_EDGE] SHUFFLE [RS_30] @@ -117,13 +116,13 @@ Stage-0 Select Operator [SEL_27] (rows=15478212 width=289) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] Merge Join Operator [MERGEJOIN_101] (rows=15478212 width=289) - Conds:RS_24._col3=RS_112._col0(Inner),Output:["_col0","_col1","_col8","_col10","_col12"] - <-Map 12 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_112] + Conds:RS_24._col3=RS_104._col0(Inner),Output:["_col0","_col1","_col8","_col10","_col12"] + <-Map 11 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_104] PartitionCols:_col0 - Select Operator [SEL_111] (rows=1 width=88) + Select Operator [SEL_103] (rows=1 width=88) Output:["_col0","_col1"] - Filter Operator [FIL_110] (rows=1 width=88) + Filter Operator [FIL_102] (rows=1 width=88) predicate:sm_ship_mode_sk is not null TableScan [TS_12] (rows=1 width=88) default@ship_mode,ship_mode,Tbl:COMPLETE,Col:COMPLETE,Output:["sm_ship_mode_sk","sm_type"] @@ -131,13 +130,13 @@ Stage-0 SHUFFLE [RS_24] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_100] (rows=46434637 width=209) - Conds:RS_21._col4=RS_126._col0(Inner),Output:["_col0","_col1","_col3","_col8","_col10"] - <-Map 11 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_126] + Conds:RS_21._col4=RS_121._col0(Inner),Output:["_col0","_col1","_col3","_col8","_col10"] + <-Map 10 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_121] PartitionCols:_col0 - Select Operator [SEL_125] (rows=27 width=104) + Select Operator [SEL_120] (rows=27 width=104) Output:["_col0","_col1"] - Filter Operator [FIL_124] (rows=27 width=104) + Filter Operator [FIL_119] (rows=27 width=104) predicate:w_warehouse_sk is not null TableScan [TS_9] (rows=27 width=104) default@warehouse,warehouse,Tbl:COMPLETE,Col:COMPLETE,Output:["w_warehouse_sk","w_warehouse_name"] @@ -145,13 +144,13 @@ Stage-0 SHUFFLE [RS_21] PartitionCols:_col4 Merge Join Operator [MERGEJOIN_99] (rows=46434637 width=113) - Conds:RS_18._col2=RS_123._col0(Inner),Output:["_col0","_col1","_col3","_col4","_col8"] - <-Map 10 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_123] + Conds:RS_18._col2=RS_118._col0(Inner),Output:["_col0","_col1","_col3","_col4","_col8"] + <-Map 9 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_118] PartitionCols:_col0 - Select Operator [SEL_122] (rows=60 width=102) + Select Operator [SEL_117] (rows=60 width=102) Output:["_col0","_col1"] - Filter Operator [FIL_121] (rows=60 width=102) + Filter Operator [FIL_116] (rows=60 width=102) predicate:cc_call_center_sk is not null TableScan [TS_6] (rows=60 width=102) default@call_center,call_center,Tbl:COMPLETE,Col:COMPLETE,Output:["cc_call_center_sk","cc_name"] @@ -159,45 +158,34 @@ Stage-0 SHUFFLE [RS_18] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_98] (rows=46434637 width=19) - Conds:RS_120._col1=RS_104._col0(Inner),Output:["_col0","_col1","_col2","_col3","_col4"] - <-Map 8 [SIMPLE_EDGE] vectorized - PARTITION_ONLY_SHUFFLE [RS_104] - PartitionCols:_col0 - Select Operator [SEL_103] (rows=317 width=8) - Output:["_col0"] - Filter Operator [FIL_102] (rows=317 width=8) - predicate:(d_date_sk is not null and d_month_seq BETWEEN 1212 AND 1223) - TableScan [TS_3] (rows=73049 width=8) - default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_month_seq"] + Conds:RS_112._col1=RS_115._col0(Inner),Output:["_col0","_col1","_col2","_col3","_col4"] <-Map 1 [SIMPLE_EDGE] vectorized - SHUFFLE [RS_120] + SHUFFLE [RS_112] PartitionCols:_col1 - Select Operator [SEL_119] (rows=282273729 width=19) + Select Operator [SEL_111] (rows=282273729 width=19) Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_118] (rows=282273729 width=19) - predicate:((cs_ship_date_sk BETWEEN DynamicValue(RS_16_date_dim_d_date_sk_min) AND DynamicValue(RS_16_date_dim_d_date_sk_max) and in_bloom_filter(cs_ship_date_sk, DynamicValue(RS_16_date_dim_d_date_sk_bloom_filter))) and (cs_ship_mode_sk BETWEEN DynamicValue(RS_25_ship_mode_sm_ship_mode_sk_min) AND DynamicValue(RS_25_ship_mode_sm_ship_mode_sk_max) and in_bloom_filter(cs_ship_mode_sk, DynamicValue(RS_25_ship_mode_sm_ship_mode_sk_bloom_filter))) and cs_call_center_sk is not null and cs_ship_date_sk is not null and cs_ship_mode_sk is not null and cs_warehouse_sk is not null) + Filter Operator [FIL_110] (rows=282273729 width=19) + predicate:((cs_ship_mode_sk BETWEEN DynamicValue(RS_25_ship_mode_sm_ship_mode_sk_min) AND DynamicValue(RS_25_ship_mode_sm_ship_mode_sk_max) and in_bloom_filter(cs_ship_mode_sk, DynamicValue(RS_25_ship_mode_sm_ship_mode_sk_bloom_filter))) and cs_call_center_sk is not null and cs_ship_date_sk is not null and cs_ship_mode_sk is not null and cs_warehouse_sk is not null) TableScan [TS_0] (rows=287989836 width=19) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_ship_date_sk","cs_call_center_sk","cs_ship_mode_sk","cs_warehouse_sk"] - <-Reducer 13 [BROADCAST_EDGE] vectorized - BROADCAST [RS_117] - Group By Operator [GBY_116] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] - <-Map 12 [CUSTOM_SIMPLE_EDGE] vectorized - SHUFFLE [RS_115] - Group By Operator [GBY_114] (rows=1 width=12) - Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_113] (rows=1 width=4) - Output:["_col0"] - Please refer to the previous Select Operator [SEL_111] - <-Reducer 9 [BROADCAST_EDGE] vectorized + <-Reducer 12 [BROADCAST_EDGE] vectorized BROADCAST [RS_109] Group By Operator [GBY_108] (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_107] + <-Map 11 [CUSTOM_SIMPLE_EDGE] vectorized + SHUFFLE [RS_107] Group By Operator [GBY_106] (rows=1 width=12) Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] - Select Operator [SEL_105] (rows=317 width=4) + Select Operator [SEL_105] (rows=1 width=4) Output:["_col0"] Please refer to the previous Select Operator [SEL_103] + <-Map 8 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_115] + PartitionCols:_col0 + Select Operator [SEL_114] (rows=317 width=8) + Output:["_col0"] + Filter Operator [FIL_113] (rows=317 width=8) + predicate:(d_date_sk is not null and d_month_seq BETWEEN 1212 AND 1223) + TableScan [TS_3] (rows=73049 width=8) + default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_month_seq"]