diff --git common/src/java/org/apache/hadoop/hive/conf/HiveConf.java common/src/java/org/apache/hadoop/hive/conf/HiveConf.java index 73e0290..98e1a49 100644 --- common/src/java/org/apache/hadoop/hive/conf/HiveConf.java +++ common/src/java/org/apache/hadoop/hive/conf/HiveConf.java @@ -1645,6 +1645,9 @@ private static void populateLlapDaemonVarsSet(Set llapDaemonVarsSetLocal "If the skew information is correctly stored in the metadata, hive.optimize.skewjoin.compiletime\n" + "would change the query plan to take care of it, and hive.optimize.skewjoin will be a no-op."), + HIVE_SHARED_SCAN_OPTIMIZATION("hive.optimize.shared.scan", true, + "Whether to enable shared scan optimizer"), + // CTE HIVE_CTE_MATERIALIZE_THRESHOLD("hive.optimize.cte.materialize.threshold", -1, "If the number of references to a CTE clause exceeds this threshold, Hive will materialize it\n" + diff --git ql/src/java/org/apache/hadoop/hive/ql/optimizer/ConvertJoinMapJoin.java ql/src/java/org/apache/hadoop/hive/ql/optimizer/ConvertJoinMapJoin.java index d0fdb52..59b8799 100644 --- ql/src/java/org/apache/hadoop/hive/ql/optimizer/ConvertJoinMapJoin.java +++ ql/src/java/org/apache/hadoop/hive/ql/optimizer/ConvertJoinMapJoin.java @@ -281,7 +281,8 @@ private void convertJoinSMBJoin(JoinOperator joinOp, OptimizeTezProcContext cont joinOp.getConf().getBaseSrc(), joinOp).getSecond(), null, joinDesc.getExprs(), null, null, joinDesc.getOutputColumnNames(), mapJoinConversionPos, joinDesc.getConds(), - joinDesc.getFilters(), joinDesc.getNoOuterJoin(), null, joinDesc.getNoConditionalTaskSize()); + joinDesc.getFilters(), joinDesc.getNoOuterJoin(), null, + joinDesc.getNoConditionalTaskSize(), joinDesc.getInMemoryDataSize()); mapJoinDesc.setNullSafes(joinDesc.getNullSafes()); mapJoinDesc.setFilterMap(joinDesc.getFilterMap()); mapJoinDesc.setResidualFilterExprs(joinDesc.getResidualFilterExprs()); @@ -419,7 +420,6 @@ private boolean checkConvertJoinSMBJoin(JoinOperator joinOp, OptimizeTezProcCont // each side better have 0 or more RS. if either side is unbalanced, cannot convert. // This is a workaround for now. Right fix would be to refactor code in the // MapRecordProcessor and ReduceRecordProcessor with respect to the sources. - @SuppressWarnings({"rawtypes","unchecked"}) Set set = OperatorUtils.findOperatorsUpstream(parentOp.getParentOperators(), ReduceSinkOperator.class); @@ -719,6 +719,8 @@ public int getMapJoinConversionPos(JoinOperator joinOp, OptimizeTezProcContext c } + joinOp.getConf().setInMemoryDataSize(totalSize/buckets); + return bigTablePosition; } diff --git ql/src/java/org/apache/hadoop/hive/ql/optimizer/MapJoinProcessor.java ql/src/java/org/apache/hadoop/hive/ql/optimizer/MapJoinProcessor.java index 85d46f3..f01fb9c 100644 --- ql/src/java/org/apache/hadoop/hive/ql/optimizer/MapJoinProcessor.java +++ ql/src/java/org/apache/hadoop/hive/ql/optimizer/MapJoinProcessor.java @@ -29,8 +29,6 @@ import java.util.Set; import java.util.Stack; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; import org.apache.hadoop.fs.Path; import org.apache.hadoop.hive.common.ObjectPair; import org.apache.hadoop.hive.conf.HiveConf; @@ -78,6 +76,8 @@ import org.apache.hadoop.hive.ql.plan.TableDesc; import org.apache.hadoop.hive.serde.serdeConstants; import org.apache.hadoop.hive.serde2.typeinfo.TypeInfoFactory; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; /** * Implementation of one of the rule-based map join optimization. User passes hints to specify @@ -432,7 +432,7 @@ public static MapJoinOperator convertSMBJoinToMapJoin(HiveConf hconf, smbJoinDesc.getOutputColumnNames(), bigTablePos, smbJoinDesc.getConds(), smbJoinDesc.getFilters(), smbJoinDesc.isNoOuterJoin(), smbJoinDesc.getDumpFilePrefix(), - smbJoinDesc.getNoConditionalTaskSize()); + smbJoinDesc.getNoConditionalTaskSize(), smbJoinDesc.getInMemoryDataSize()); mapJoinDesc.setStatistics(smbJoinDesc.getStatistics()); @@ -1184,8 +1184,9 @@ public static MapJoinDesc getMapJoinDesc(HiveConf hconf, JoinCondDesc[] joinCondns = op.getConf().getConds(); MapJoinDesc mapJoinDescriptor = new MapJoinDesc(keyExprMap, keyTableDesc, newValueExprs, valueTableDescs, - valueFilteredTableDescs, outputColumnNames, mapJoinPos, joinCondns, filters, op - .getConf().getNoOuterJoin(), dumpFilePrefix, op.getConf().getNoConditionalTaskSize()); + valueFilteredTableDescs, outputColumnNames, mapJoinPos, joinCondns, filters, + op.getConf().getNoOuterJoin(), dumpFilePrefix, + op.getConf().getNoConditionalTaskSize(), op.getConf().getInMemoryDataSize()); mapJoinDescriptor.setStatistics(op.getConf().getStatistics()); mapJoinDescriptor.setTagOrder(tagOrder); mapJoinDescriptor.setNullSafes(desc.getNullSafes()); diff --git ql/src/java/org/apache/hadoop/hive/ql/optimizer/ReduceSinkMapJoinProc.java ql/src/java/org/apache/hadoop/hive/ql/optimizer/ReduceSinkMapJoinProc.java index 3a6baca..ac234d0 100644 --- ql/src/java/org/apache/hadoop/hive/ql/optimizer/ReduceSinkMapJoinProc.java +++ ql/src/java/org/apache/hadoop/hive/ql/optimizer/ReduceSinkMapJoinProc.java @@ -219,8 +219,8 @@ public static Object processReduceSinkToHashJoin(ReduceSinkOperator parentRS, Ma if (tableSize == 0) { tableSize = 1; } - LOG.info("Mapjoin " + mapJoinOp + "(bucket map join = )" + joinConf.isBucketMapJoin() - + ", pos: " + pos + " --> " + parentWork.getName() + " (" + keyCount + LOG.info("Mapjoin " + mapJoinOp + "(bucket map join = " + joinConf.isBucketMapJoin() + + "), pos: " + pos + " --> " + parentWork.getName() + " (" + keyCount + " keys estimated from " + rowCount + " rows, " + bucketCount + " buckets)"); joinConf.getParentToInput().put(pos, parentWork.getName()); if (keyCount != Long.MAX_VALUE) { @@ -290,7 +290,7 @@ public static Object processReduceSinkToHashJoin(ReduceSinkOperator parentRS, Ma ReduceSinkOperator r = null; if (context.connectedReduceSinks.contains(parentRS)) { - LOG.debug("Cloning reduce sink for multi-child broadcast edge"); + LOG.debug("Cloning reduce sink " + parentRS + " for multi-child broadcast edge"); // we've already set this one up. Need to clone for the next work. r = (ReduceSinkOperator) OperatorFactory.getAndMakeChild( parentRS.getCompilationOpContext(), diff --git ql/src/java/org/apache/hadoop/hive/ql/optimizer/SharedScanOptimizer.java ql/src/java/org/apache/hadoop/hive/ql/optimizer/SharedScanOptimizer.java new file mode 100644 index 0000000..dd59aa5 --- /dev/null +++ ql/src/java/org/apache/hadoop/hive/ql/optimizer/SharedScanOptimizer.java @@ -0,0 +1,497 @@ +/** + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.hadoop.hive.ql.optimizer; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collection; +import java.util.Collections; +import java.util.Comparator; +import java.util.HashMap; +import java.util.HashSet; +import java.util.LinkedList; +import java.util.List; +import java.util.Map; +import java.util.Map.Entry; +import java.util.Set; + +import org.apache.hadoop.hive.ql.exec.AppMasterEventOperator; +import org.apache.hadoop.hive.ql.exec.DummyStoreOperator; +import org.apache.hadoop.hive.ql.exec.FilterOperator; +import org.apache.hadoop.hive.ql.exec.MapJoinOperator; +import org.apache.hadoop.hive.ql.exec.Operator; +import org.apache.hadoop.hive.ql.exec.OperatorFactory; +import org.apache.hadoop.hive.ql.exec.OperatorUtils; +import org.apache.hadoop.hive.ql.exec.ReduceSinkOperator; +import org.apache.hadoop.hive.ql.exec.TableScanOperator; +import org.apache.hadoop.hive.ql.exec.UDFArgumentException; +import org.apache.hadoop.hive.ql.exec.UnionOperator; +import org.apache.hadoop.hive.ql.parse.ParseContext; +import org.apache.hadoop.hive.ql.parse.SemanticException; +import org.apache.hadoop.hive.ql.parse.SemiJoinBranchInfo; +import org.apache.hadoop.hive.ql.plan.DynamicPruningEventDesc; +import org.apache.hadoop.hive.ql.plan.ExprNodeDesc; +import org.apache.hadoop.hive.ql.plan.ExprNodeGenericFuncDesc; +import org.apache.hadoop.hive.ql.plan.FilterDesc; +import org.apache.hadoop.hive.ql.plan.OperatorDesc; +import org.apache.hadoop.hive.ql.stats.StatsUtils; +import org.apache.hadoop.hive.ql.udf.generic.GenericUDFOPAnd; +import org.apache.hadoop.hive.ql.udf.generic.GenericUDFOPOr; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import com.google.common.collect.ArrayListMultimap; +import com.google.common.collect.Lists; +import com.google.common.collect.Multimap; + +/** + * Shared scan optimizer. This rule finds scan operator over the same table + * in the query plan and merges them if they meet some preconditions. + * + *

Currently it only works with the Tez execution engine. + */ +public class SharedScanOptimizer extends Transform { + + private final static Logger LOG = LoggerFactory.getLogger(SharedScanOptimizer.class); + + @Override + public ParseContext transform(ParseContext pctx) throws SemanticException { + + final Map topOps = pctx.getTopOps(); + if (topOps.size() < 2) { + // Nothing to do, bail out + return pctx; + } + + if (LOG.isDebugEnabled()) { + LOG.debug("Plan before shared scan optimizer:\n" + Operator.toString(pctx.getTopOps().values())); + } + + // We will not apply this optimization on some table scan operators. + Set excludeTableScanOps = gatherNotValidTableScanOps(pctx); + LOG.debug("Exclude TableScan ops: {}", excludeTableScanOps); + + Multimap> tableNameToOps = splitTableScanOpsByTable(pctx); + + // We enforce a certain order when we do the reutilization. + // In particular, we use size of table x number of reads to + // rank the tables. + List> sortedTables = rankTablesByAccumulatedSize(pctx, excludeTableScanOps); + LOG.debug("Sorted tables by size: {}", sortedTables); + + // Execute optimization + Multimap existingOps = ArrayListMultimap.create(); + Set entriesToRemove = new HashSet<>(); + for (Entry tablePair : sortedTables) { + for (Entry tableScanOpPair : tableNameToOps.get(tablePair.getKey())) { + TableScanOperator tsOp = tableScanOpPair.getValue(); + if (excludeTableScanOps.contains(tsOp)) { + // Skip operator, currently we do not merge + continue; + } + String tableName = tsOp.getConf().getTableMetadata().getDbName() + "." + + tsOp.getConf().getTableMetadata().getTableName(); + Collection prevTsOps = existingOps.get(tableName); + if (!prevTsOps.isEmpty()) { + for (TableScanOperator prevTsOp : prevTsOps) { + + // First we check if the two table scan operators can actually be merged + // If schemas do not match, we currently do not merge + List prevTsOpNeededColumns = prevTsOp.getNeededColumns(); + List tsOpNeededColumns = tsOp.getNeededColumns(); + if (prevTsOpNeededColumns.size() != tsOpNeededColumns.size()) { + // Skip + continue; + } + boolean notEqual = false; + for (int i = 0; i < prevTsOpNeededColumns.size(); i++) { + if (!prevTsOpNeededColumns.get(i).equals(tsOpNeededColumns.get(i))) { + notEqual = true; + break; + } + } + if (notEqual) { + // Skip + continue; + } + // If row limit does not match, we currently do not merge + if (prevTsOp.getConf().getRowLimit() != tsOp.getConf().getRowLimit()) { + // Skip + continue; + } + + // It seems these two operators can be merged. + // Check that plan meets some preconditions before doing it. + // In particular, in the presence of map joins in the upstream plan: + // - we cannot exceed the noconditional task size, and + // - if we already merged the big table, we cannot merge the broadcast + // tables. + if (!validPreConditions(pctx, prevTsOp, tsOp)) { + // Skip + LOG.debug("{} does not meet preconditions", tsOp); + continue; + } + + // We can merge + ExprNodeGenericFuncDesc exprNode = null; + if (prevTsOp.getConf().getFilterExpr() != null) { + // Push filter on top of children + pushFilterToTopOfTableScan(prevTsOp); + // Clone to push to table scan + exprNode = (ExprNodeGenericFuncDesc) prevTsOp.getConf().getFilterExpr(); + } + if (tsOp.getConf().getFilterExpr() != null) { + // Push filter on top + pushFilterToTopOfTableScan(tsOp); + ExprNodeGenericFuncDesc tsExprNode = tsOp.getConf().getFilterExpr(); + if (exprNode != null && !exprNode.isSame(tsExprNode)) { + if (exprNode.getGenericUDF() instanceof GenericUDFOPOr) { + List newChildren = new ArrayList<>(exprNode.getChildren().size() + 1); + for (ExprNodeDesc childExprNode : exprNode.getChildren()) { + if (childExprNode.isSame(tsExprNode)) { + // We do not need to do anything, it is in the OR expression + break; + } + newChildren.add(childExprNode); + } + if (exprNode.getChildren().size() == newChildren.size()) { + newChildren.add(tsExprNode); + exprNode = ExprNodeGenericFuncDesc.newInstance( + new GenericUDFOPOr(), + newChildren); + } + } else { + exprNode = ExprNodeGenericFuncDesc.newInstance( + new GenericUDFOPOr(), + Arrays.asList(exprNode, tsExprNode)); + } + } + } + // Replace filter + prevTsOp.getConf().setFilterExpr(exprNode); + // Replace table scan operator + List> allChildren = + Lists.newArrayList(tsOp.getChildOperators()); + for (Operator op : allChildren) { + tsOp.removeChild(op); + op.getParentOperators().remove(tsOp); + prevTsOp.getChildOperators().add(op); + op.getParentOperators().add(prevTsOp); + } + entriesToRemove.add(tableScanOpPair.getKey()); + break; + } + if (!entriesToRemove.contains(tableScanOpPair.getKey())) { + existingOps.put(tableName, tsOp); + } + } else { + // Add to existing ops + existingOps.put(tableName, tsOp); + } + } + } + // Remove unused operators + for (String key : entriesToRemove) { + topOps.remove(key); + } + + if (LOG.isDebugEnabled()) { + LOG.debug("Plan after shared scan optimizer:\n" + Operator.toString(pctx.getTopOps().values())); + } + + return pctx; + } + + private static Set gatherNotValidTableScanOps(ParseContext pctx) { + // Find table scan operators with partition pruning enabled in plan. + // These can be: + // 1) TS with static partitioning. + // 2) TS with DPP. + // 3) TS with semijoin DPP. + Set notValidTableScanOps = new HashSet<>(); + // 1) TS with static partitioning. + Map topOps = pctx.getTopOps(); + for (TableScanOperator tsOp : topOps.values()) { + if (tsOp.getConf().getPartColumns() != null && + !tsOp.getConf().getPartColumns().isEmpty()) { + notValidTableScanOps.add(tsOp); + } + } + // 2) TS with DPP. + Collection> tableScanOps = + Lists.>newArrayList(topOps.values()); + Set s = + OperatorUtils.findOperators(tableScanOps, AppMasterEventOperator.class); + for (AppMasterEventOperator a : s) { + if (a.getConf() instanceof DynamicPruningEventDesc) { + notValidTableScanOps.add(((DynamicPruningEventDesc) a.getConf()).getTableScan()); + } + } + // 3) TS with semijoin DPP. + for (SemiJoinBranchInfo sjbi : pctx.getRsToSemiJoinBranchInfo().values()) { + notValidTableScanOps.add(sjbi.getTsOp()); + } + return notValidTableScanOps; + } + + private static Multimap> splitTableScanOpsByTable( + ParseContext pctx) { + Multimap> tableNameToOps = ArrayListMultimap.create(); + for (Entry e : pctx.getTopOps().entrySet()) { + TableScanOperator tsOp = e.getValue(); + tableNameToOps.put( + tsOp.getConf().getTableMetadata().getDbName() + "." + + tsOp.getConf().getTableMetadata().getTableName(), e); + } + return tableNameToOps; + } + + private static List> rankTablesByAccumulatedSize(ParseContext pctx, + Set excludeTables) { + Map tableToTotalSize = new HashMap<>(); + for (Entry e : pctx.getTopOps().entrySet()) { + TableScanOperator tsOp = e.getValue(); + if (excludeTables.contains(tsOp)) { + // Skip operator, currently we do not merge + continue; + } + String tableName = tsOp.getConf().getTableMetadata().getDbName() + "." + + tsOp.getConf().getTableMetadata().getTableName(); + long tableSize = tsOp.getStatistics() != null ? + tsOp.getStatistics().getDataSize() : 0L; + Long totalSize = tableToTotalSize.get(tableName); + if (totalSize != null) { + tableToTotalSize.put(tableName, + StatsUtils.safeAdd(totalSize, tableSize)); + } else { + tableToTotalSize.put(tableName, tableSize); + } + } + List> sortedTables = + new LinkedList<>(tableToTotalSize.entrySet()); + Collections.sort(sortedTables, Collections.reverseOrder( + new Comparator>() { + public int compare(Map.Entry o1, Map.Entry o2) { + return (o1.getValue()).compareTo(o2.getValue()); + } + })); + return sortedTables; + } + + private static boolean validPreConditions(ParseContext pctx, + TableScanOperator prevTsOp, TableScanOperator tsOp) { + // First we check whether output works when we merge the operators + // will collide. + // If we do, we cannot merge. + final Set> outputWorksOps1 = findOutputWorksOperators(prevTsOp); + final Set> outputWorksOps2 = findOutputWorksOperators(tsOp); + if (!Collections.disjoint(outputWorksOps1, outputWorksOps2)) { + // We cannot merge + return false; + } + // Secondly, we check whether we will end up with same operators + // inputing on same work. + // If we do, we cannot merge. + final Set> inputWorksOps1 = findInputWorksOperators(prevTsOp); + final Set> inputWorksOps2 = findInputWorksOperators(tsOp); + if (!Collections.disjoint(inputWorksOps1, inputWorksOps2)) { + // We cannot merge + return false; + } + // Third, we check that sets of operators in the works do not contain + // a Union operator (not supported yet as we might end up with cycles + // in the DAG) or more than one DummyStore operator (assumption in + // MergeJoinProc that needs to be further explored). + // If we do, we cannot merge. + // TODO: Extend rule so it can be apply for these cases. + final Set> workOps1 = findWorkOperators(prevTsOp); + final Set> workOps2 = findWorkOperators(tsOp); + boolean foundDummyStoreOp = false; + for (Operator op : workOps1) { + if (op instanceof UnionOperator || op instanceof MapJoinOperator) { + // We cannot merge + return false; + } + if (op instanceof DummyStoreOperator) { + foundDummyStoreOp = true; + } + } + for (Operator op : workOps2) { + if (op instanceof UnionOperator || op instanceof MapJoinOperator) { + // We cannot merge + return false; + } + if (foundDummyStoreOp && op instanceof DummyStoreOperator) { + // We cannot merge + return false; + } + } + // Fourth, we check whether one of the operators is part of a work + // that is an input for the work of the other operator. + // If we do, we cannot merge. + final Set> allOutputWorksOps1 = findAllOutputWorksOperators(prevTsOp); + final Set> allOutputWorksOps2 = findAllOutputWorksOperators(tsOp); + if (!Collections.disjoint(workOps1, allOutputWorksOps2) + || !Collections.disjoint(allOutputWorksOps1, workOps2)) { + return false; + } + // Finally, we check whether merging the works would cause the size of + // the data in memory grow too large. + final Set> newWorkOps = workOps1; + newWorkOps.addAll(workOps2); + long dataSize = 0L; + for (Operator op : newWorkOps) { + if (op instanceof MapJoinOperator) { + MapJoinOperator mop = (MapJoinOperator) op; + dataSize = StatsUtils.safeAdd(dataSize, mop.getConf().getInMemoryDataSize()); + if (dataSize > mop.getConf().getNoConditionalTaskSize()) { + // Size surpasses limit, we cannot convert + LOG.debug("accumulated data size: {} / max size: {}", + dataSize, mop.getConf().getNoConditionalTaskSize()); + return false; + } + } + } + return true; + } + + private static Set> findInputWorksOperators(Operator start) { + // Find operators in work + Set> workOps = findWorkOperators(start); + // Gather input works operators + Set> set = new HashSet>(); + for (Operator op : workOps) { + if (op.getParentOperators() != null) { + for (Operator parent : op.getParentOperators()) { + if (parent instanceof ReduceSinkOperator) { + findWorkOperators(parent, set); + } + } + } + } + return set; + } + + private static Set> findOutputWorksOperators(Operator start) { + // Find operators in work + Set> workOps = findWorkOperators(start); + // Gather output works operators + Set> set = new HashSet>(); + for (Operator op : workOps) { + if (op instanceof ReduceSinkOperator) { + if (op.getChildOperators() != null) { + for (Operator child : op.getChildOperators()) { + findWorkOperators(child, set); + } + } + } + } + return set; + } + + private static Set> findAllOutputWorksOperators(Operator start) { + // Find operators in work + Set> workOps = findWorkOperators(start); + // Gather output works operators + Set> result = new HashSet>(); + Set> set; + while (!workOps.isEmpty()) { + set = new HashSet>(); + for (Operator op : workOps) { + if (op instanceof ReduceSinkOperator) { + if (op.getChildOperators() != null) { + for (Operator child : op.getChildOperators()) { + findWorkOperators(child, set); + } + } + } + } + workOps = set; + result.addAll(set); + } + return result; + } + + private static Set> findWorkOperators(Operator start) { + return findWorkOperators(start, new HashSet>()); + } + + private static Set> findWorkOperators(Operator start, Set> found) { + found.add(start); + if (start.getParentOperators() != null) { + for (Operator parent : start.getParentOperators()) { + if (parent instanceof ReduceSinkOperator) { + continue; + } + if (!found.contains(parent)) { + findWorkOperators(parent, found); + } + } + } + if (start instanceof ReduceSinkOperator) { + return found; + } + if (start.getChildOperators() != null) { + for (Operator child : start.getChildOperators()) { + if (!found.contains(child)) { + findWorkOperators(child, found); + } + } + } + return found; + } + + private static void pushFilterToTopOfTableScan(TableScanOperator tsOp) throws UDFArgumentException { + ExprNodeGenericFuncDesc tableScanExprNode = tsOp.getConf().getFilterExpr(); + List> allChildren = + Lists.newArrayList(tsOp.getChildOperators()); + for (Operator op : allChildren) { + if (op instanceof FilterOperator) { + FilterOperator filterOp = (FilterOperator) op; + ExprNodeDesc filterExprNode = filterOp.getConf().getPredicate(); + if (tableScanExprNode.isSame(filterExprNode)) { + // We do not need to do anything + return; + } + if (tableScanExprNode.getGenericUDF() instanceof GenericUDFOPOr) { + for (ExprNodeDesc childExprNode : tableScanExprNode.getChildren()) { + if (childExprNode.isSame(filterExprNode)) { + // We do not need to do anything, it is in the OR expression + // so probably we pushed previously + return; + } + } + } + ExprNodeGenericFuncDesc newPred = ExprNodeGenericFuncDesc.newInstance( + new GenericUDFOPAnd(), + Arrays.asList(tableScanExprNode.clone(), filterExprNode)); + filterOp.getConf().setPredicate(newPred); + } else { + Operator newOp = OperatorFactory.getAndMakeChild( + new FilterDesc(tableScanExprNode.clone(), false), + tsOp); + tsOp.removeChild(op); + op.getParentOperators().remove(tsOp); + newOp.getChildOperators().add(op); + op.getParentOperators().add(newOp); + } + } + } + +} diff --git ql/src/java/org/apache/hadoop/hive/ql/optimizer/physical/GenMRSkewJoinProcessor.java ql/src/java/org/apache/hadoop/hive/ql/optimizer/physical/GenMRSkewJoinProcessor.java index f78bd7c..53abb21 100644 --- ql/src/java/org/apache/hadoop/hive/ql/optimizer/physical/GenMRSkewJoinProcessor.java +++ ql/src/java/org/apache/hadoop/hive/ql/optimizer/physical/GenMRSkewJoinProcessor.java @@ -282,7 +282,7 @@ public static void processSkewJoin(JoinOperator joinOp, newJoinValues, newJoinValueTblDesc, newJoinValueTblDesc,joinDescriptor .getOutputColumnNames(), i, joinDescriptor.getConds(), joinDescriptor.getFilters(), joinDescriptor.getNoOuterJoin(), dumpFilePrefix, - joinDescriptor.getNoConditionalTaskSize()); + joinDescriptor.getNoConditionalTaskSize(), joinDescriptor.getInMemoryDataSize()); mapJoinDescriptor.setTagOrder(tags); mapJoinDescriptor.setHandleSkewJoin(false); mapJoinDescriptor.setNullSafes(joinDescriptor.getNullSafes()); diff --git ql/src/java/org/apache/hadoop/hive/ql/optimizer/physical/GenSparkSkewJoinProcessor.java ql/src/java/org/apache/hadoop/hive/ql/optimizer/physical/GenSparkSkewJoinProcessor.java index c970611..a5f0b2a 100644 --- ql/src/java/org/apache/hadoop/hive/ql/optimizer/physical/GenSparkSkewJoinProcessor.java +++ ql/src/java/org/apache/hadoop/hive/ql/optimizer/physical/GenSparkSkewJoinProcessor.java @@ -241,7 +241,7 @@ public static void processSkewJoin(JoinOperator joinOp, Task stack, // of the downstream work for (ReduceSinkOperator r: context.linkWorkWithReduceSinkMap.get(parentWork)) { + if (!context.mapJoinParentMap.get(mj).contains(r)) { + // We might be visiting twice because of reutilization of intermediary results. + // If that is the case, we do not need to do anything. + continue; + } if (r.getConf().getOutputName() != null) { - LOG.debug("Cloning reduce sink for multi-child broadcast edge"); + LOG.debug("Cloning reduce sink " + r + " for multi-child broadcast edge"); // we've already set this one up. Need to clone for the next work. r = (ReduceSinkOperator) OperatorFactory.getAndMakeChild( r.getCompilationOpContext(), (ReduceSinkDesc)r.getConf().clone(), diff --git ql/src/java/org/apache/hadoop/hive/ql/parse/TezCompiler.java ql/src/java/org/apache/hadoop/hive/ql/parse/TezCompiler.java index f469cd2..7e156f6 100644 --- ql/src/java/org/apache/hadoop/hive/ql/parse/TezCompiler.java +++ ql/src/java/org/apache/hadoop/hive/ql/parse/TezCompiler.java @@ -17,26 +17,55 @@ */ package org.apache.hadoop.hive.ql.parse; -import org.apache.hadoop.hive.ql.optimizer.physical.LlapClusterStateForCompile; - -import com.google.common.base.Preconditions; import java.io.Serializable; -import java.util.*; +import java.util.ArrayList; +import java.util.Deque; +import java.util.HashMap; +import java.util.HashSet; +import java.util.LinkedHashMap; +import java.util.LinkedHashSet; +import java.util.LinkedList; +import java.util.List; +import java.util.Map; +import java.util.Set; +import java.util.Stack; import java.util.concurrent.atomic.AtomicInteger; -import org.apache.hadoop.hive.ql.exec.*; -import org.apache.hadoop.hive.ql.lib.*; -import org.apache.hadoop.hive.ql.plan.*; -import org.apache.hadoop.hive.ql.udf.generic.GenericUDAFBloomFilter.GenericUDAFBloomFilterEvaluator; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; import org.apache.hadoop.hive.conf.HiveConf; import org.apache.hadoop.hive.conf.HiveConf.ConfVars; import org.apache.hadoop.hive.ql.Context; import org.apache.hadoop.hive.ql.QueryState; +import org.apache.hadoop.hive.ql.exec.AppMasterEventOperator; +import org.apache.hadoop.hive.ql.exec.CommonMergeJoinOperator; +import org.apache.hadoop.hive.ql.exec.ConditionalTask; +import org.apache.hadoop.hive.ql.exec.DummyStoreOperator; +import org.apache.hadoop.hive.ql.exec.FileSinkOperator; +import org.apache.hadoop.hive.ql.exec.FilterOperator; +import org.apache.hadoop.hive.ql.exec.GroupByOperator; +import org.apache.hadoop.hive.ql.exec.JoinOperator; +import org.apache.hadoop.hive.ql.exec.MapJoinOperator; +import org.apache.hadoop.hive.ql.exec.Operator; +import org.apache.hadoop.hive.ql.exec.OperatorUtils; +import org.apache.hadoop.hive.ql.exec.ReduceSinkOperator; +import org.apache.hadoop.hive.ql.exec.SelectOperator; +import org.apache.hadoop.hive.ql.exec.TableScanOperator; +import org.apache.hadoop.hive.ql.exec.Task; +import org.apache.hadoop.hive.ql.exec.TezDummyStoreOperator; +import org.apache.hadoop.hive.ql.exec.UnionOperator; import org.apache.hadoop.hive.ql.exec.tez.TezTask; import org.apache.hadoop.hive.ql.hooks.ReadEntity; import org.apache.hadoop.hive.ql.hooks.WriteEntity; +import org.apache.hadoop.hive.ql.lib.CompositeProcessor; +import org.apache.hadoop.hive.ql.lib.DefaultRuleDispatcher; +import org.apache.hadoop.hive.ql.lib.Dispatcher; +import org.apache.hadoop.hive.ql.lib.ForwardWalker; +import org.apache.hadoop.hive.ql.lib.GraphWalker; +import org.apache.hadoop.hive.ql.lib.Node; +import org.apache.hadoop.hive.ql.lib.NodeProcessor; +import org.apache.hadoop.hive.ql.lib.NodeProcessorCtx; +import org.apache.hadoop.hive.ql.lib.PreOrderOnceWalker; +import org.apache.hadoop.hive.ql.lib.Rule; +import org.apache.hadoop.hive.ql.lib.RuleRegExp; import org.apache.hadoop.hive.ql.log.PerfLogger; import org.apache.hadoop.hive.ql.metadata.Hive; import org.apache.hadoop.hive.ql.optimizer.ConstantPropagate; @@ -47,9 +76,11 @@ import org.apache.hadoop.hive.ql.optimizer.ReduceSinkMapJoinProc; import org.apache.hadoop.hive.ql.optimizer.RemoveDynamicPruningBySize; import org.apache.hadoop.hive.ql.optimizer.SetReducerParallelism; +import org.apache.hadoop.hive.ql.optimizer.SharedScanOptimizer; import org.apache.hadoop.hive.ql.optimizer.metainfo.annotation.AnnotateWithOpTraits; import org.apache.hadoop.hive.ql.optimizer.physical.AnnotateRunTimeStatsOptimizer; import org.apache.hadoop.hive.ql.optimizer.physical.CrossProductCheck; +import org.apache.hadoop.hive.ql.optimizer.physical.LlapClusterStateForCompile; import org.apache.hadoop.hive.ql.optimizer.physical.LlapDecider; import org.apache.hadoop.hive.ql.optimizer.physical.LlapPreVectorizationPass; import org.apache.hadoop.hive.ql.optimizer.physical.MemoryDecider; @@ -60,10 +91,25 @@ import org.apache.hadoop.hive.ql.optimizer.physical.StageIDsRearranger; import org.apache.hadoop.hive.ql.optimizer.physical.Vectorizer; import org.apache.hadoop.hive.ql.optimizer.stats.annotation.AnnotateWithStatistics; +import org.apache.hadoop.hive.ql.plan.AggregationDesc; +import org.apache.hadoop.hive.ql.plan.BaseWork; +import org.apache.hadoop.hive.ql.plan.ColStatistics; +import org.apache.hadoop.hive.ql.plan.DynamicPruningEventDesc; +import org.apache.hadoop.hive.ql.plan.ExprNodeColumnDesc; +import org.apache.hadoop.hive.ql.plan.ExprNodeDesc; +import org.apache.hadoop.hive.ql.plan.ExprNodeDescUtils; +import org.apache.hadoop.hive.ql.plan.GroupByDesc; +import org.apache.hadoop.hive.ql.plan.MapWork; +import org.apache.hadoop.hive.ql.plan.MoveWork; +import org.apache.hadoop.hive.ql.plan.OperatorDesc; +import org.apache.hadoop.hive.ql.plan.Statistics; +import org.apache.hadoop.hive.ql.plan.TezWork; import org.apache.hadoop.hive.ql.session.SessionState; import org.apache.hadoop.hive.ql.session.SessionState.LogHelper; -import org.apache.hadoop.hive.ql.exec.SelectOperator; import org.apache.hadoop.hive.ql.stats.StatsUtils; +import org.apache.hadoop.hive.ql.udf.generic.GenericUDAFBloomFilter.GenericUDAFBloomFilterEvaluator; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; /** * TezCompiler translates the operator plan into TezTasks. @@ -92,6 +138,7 @@ protected void optimizeOperatorPlan(ParseContext pCtx, Set inputs, PerfLogger perfLogger = SessionState.getPerfLogger(); // Create the context for the walker OptimizeTezProcContext procCtx = new OptimizeTezProcContext(conf, pCtx, inputs, outputs); + perfLogger.PerfLogBegin(this.getClass().getName(), PerfLogger.TEZ_COMPILER); // setup dynamic partition pruning where possible runDynamicPartitionPruning(procCtx, inputs, outputs); @@ -136,6 +183,12 @@ protected void optimizeOperatorPlan(ParseContext pCtx, Set inputs, runCycleAnalysisForPartitionPruning(procCtx, inputs, outputs); perfLogger.PerfLogEnd(this.getClass().getName(), PerfLogger.TEZ_COMPILER, "Run cycle analysis for partition pruning"); + perfLogger.PerfLogBegin(this.getClass().getName(), PerfLogger.TEZ_COMPILER); + if(procCtx.conf.getBoolVar(ConfVars.HIVE_SHARED_SCAN_OPTIMIZATION)) { + new SharedScanOptimizer().transform(procCtx.parseContext); + } + perfLogger.PerfLogEnd(this.getClass().getName(), PerfLogger.TEZ_COMPILER, "Shared scans optimization"); + // need a new run of the constant folding because we might have created lots // of "and true and true" conditions. // Rather than run the full constant folding just need to shortcut AND/OR expressions diff --git ql/src/java/org/apache/hadoop/hive/ql/plan/JoinDesc.java ql/src/java/org/apache/hadoop/hive/ql/plan/JoinDesc.java index c4fb3f3..a975c01 100644 --- ql/src/java/org/apache/hadoop/hive/ql/plan/JoinDesc.java +++ ql/src/java/org/apache/hadoop/hive/ql/plan/JoinDesc.java @@ -106,6 +106,7 @@ private transient Map> aliasToOpInfo; private transient boolean leftInputJoin; private transient List streamAliases; + protected transient long inMemoryDataSize; // non-transient field, used at runtime to kill a task if it exceeded memory limits when running in LLAP protected long noConditionalTaskSize; @@ -202,6 +203,7 @@ public JoinDesc(JoinDesc clone) { this.residualFilterExprs = clone.residualFilterExprs; this.statistics = clone.statistics; this.noConditionalTaskSize = clone.noConditionalTaskSize; + this.inMemoryDataSize = clone.inMemoryDataSize; } public Map> getExprs() { @@ -696,4 +698,12 @@ public long getNoConditionalTaskSize() { public void setNoConditionalTaskSize(final long noConditionalTaskSize) { this.noConditionalTaskSize = noConditionalTaskSize; } + + public long getInMemoryDataSize() { + return inMemoryDataSize; + } + + public void setInMemoryDataSize(final long inMemoryDataSize) { + this.inMemoryDataSize = inMemoryDataSize; + } } diff --git ql/src/java/org/apache/hadoop/hive/ql/plan/MapJoinDesc.java ql/src/java/org/apache/hadoop/hive/ql/plan/MapJoinDesc.java index 8da85d2..f387e6a 100644 --- ql/src/java/org/apache/hadoop/hive/ql/plan/MapJoinDesc.java +++ ql/src/java/org/apache/hadoop/hive/ql/plan/MapJoinDesc.java @@ -113,7 +113,7 @@ public MapJoinDesc(final Map> keys, final List valueTblDescs, final List valueFilteredTblDescs, List outputColumnNames, final int posBigTable, final JoinCondDesc[] conds, final Map> filters, boolean noOuterJoin, String dumpFilePrefix, - final long noConditionalTaskSize) { + final long noConditionalTaskSize, final long inMemoryDataSize) { super(values, outputColumnNames, noOuterJoin, conds, filters, null, noConditionalTaskSize); vectorDesc = null; this.keys = keys; @@ -123,6 +123,7 @@ public MapJoinDesc(final Map> keys, this.posBigTable = posBigTable; this.bigTableBucketNumMapping = new LinkedHashMap(); this.dumpFilePrefix = dumpFilePrefix; + this.inMemoryDataSize = inMemoryDataSize; initRetainExprList(); } diff --git ql/src/test/queries/clientpositive/perf/query88.q ql/src/test/queries/clientpositive/perf/query88.q index 2be814e..bb6ef6d 100644 --- ql/src/test/queries/clientpositive/perf/query88.q +++ ql/src/test/queries/clientpositive/perf/query88.q @@ -1,3 +1,5 @@ +set hive.strict.checks.cartesian.product=false; + explain select * from diff --git ql/src/test/results/clientpositive/llap/auto_join0.q.out ql/src/test/results/clientpositive/llap/auto_join0.q.out index cba6001..6d051ea 100644 --- ql/src/test/results/clientpositive/llap/auto_join0.q.out +++ ql/src/test/results/clientpositive/llap/auto_join0.q.out @@ -30,10 +30,10 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 6 (BROADCAST_EDGE) + Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 5 (BROADCAST_EDGE) Reducer 3 <- Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (CUSTOM_SIMPLE_EDGE) - Reducer 6 <- Map 5 (SIMPLE_EDGE) + Reducer 5 <- Map 1 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -52,13 +52,6 @@ STAGE PLANS: key expressions: _col0 (type: string), _col1 (type: string) sort order: ++ Statistics: Num rows: 166 Data size: 29548 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs - Map 5 - Map Operator Tree: - TableScan - alias: src - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: (key < 10) (type: boolean) Statistics: Num rows: 166 Data size: 29548 Basic stats: COMPLETE Column stats: COMPLETE @@ -87,7 +80,7 @@ STAGE PLANS: 1 outputColumnNames: _col0, _col1, _col2, _col3 input vertices: - 1 Reducer 6 + 1 Reducer 5 Statistics: Num rows: 27556 Data size: 9809936 Basic stats: COMPLETE Column stats: COMPLETE Reduce Output Operator key expressions: _col0 (type: string), _col1 (type: string), _col2 (type: string), _col3 (type: string) @@ -124,7 +117,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 + Reducer 5 Execution mode: llap Reduce Operator Tree: Select Operator diff --git ql/src/test/results/clientpositive/llap/auto_join30.q.out ql/src/test/results/clientpositive/llap/auto_join30.q.out index a26db55..cc59c5c 100644 --- ql/src/test/results/clientpositive/llap/auto_join30.q.out +++ ql/src/test/results/clientpositive/llap/auto_join30.q.out @@ -457,9 +457,9 @@ STAGE PLANS: #### A masked pattern was here #### Edges: Reducer 2 <- Map 1 (SIMPLE_EDGE) - Reducer 4 <- Map 3 (SIMPLE_EDGE), Reducer 2 (BROADCAST_EDGE), Reducer 7 (BROADCAST_EDGE) + Reducer 4 <- Map 3 (SIMPLE_EDGE), Reducer 2 (BROADCAST_EDGE), Reducer 6 (BROADCAST_EDGE) Reducer 5 <- Reducer 4 (CUSTOM_SIMPLE_EDGE) - Reducer 7 <- Map 6 (SIMPLE_EDGE) + Reducer 6 <- Map 3 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -497,13 +497,6 @@ STAGE PLANS: sort order: + Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col0 (type: string) - Execution mode: llap - LLAP IO: no inputs - Map 6 - Map Operator Tree: - TableScan - alias: src - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: key is not null (type: boolean) Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE @@ -548,7 +541,7 @@ STAGE PLANS: outputColumnNames: _col2, _col3 input vertices: 0 Reducer 2 - 2 Reducer 7 + 2 Reducer 6 Statistics: Num rows: 2974 Data size: 529372 Basic stats: COMPLETE Column stats: COMPLETE Group By Operator aggregations: sum(hash(_col2,_col3)) @@ -574,7 +567,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 7 + Reducer 6 Execution mode: llap Reduce Operator Tree: Select Operator @@ -650,10 +643,10 @@ STAGE PLANS: #### A masked pattern was here #### Edges: Reducer 2 <- Map 1 (SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (CUSTOM_SIMPLE_EDGE) Reducer 6 <- Map 5 (SIMPLE_EDGE) - Reducer 8 <- Map 7 (SIMPLE_EDGE) + Reducer 7 <- Map 5 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -685,13 +678,6 @@ STAGE PLANS: sort order: + Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col0 (type: string) - Execution mode: llap - LLAP IO: no inputs - Map 7 - Map Operator Tree: - TableScan - alias: src - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE Select Operator expressions: key (type: string), value (type: string) outputColumnNames: _col0, _col1 @@ -765,7 +751,7 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: string) - Reducer 8 + Reducer 7 Execution mode: llap Reduce Operator Tree: Select Operator @@ -841,10 +827,10 @@ STAGE PLANS: #### A masked pattern was here #### Edges: Reducer 2 <- Map 1 (SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (CUSTOM_SIMPLE_EDGE) Reducer 6 <- Map 5 (SIMPLE_EDGE) - Reducer 8 <- Map 7 (SIMPLE_EDGE) + Reducer 7 <- Map 5 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -876,13 +862,6 @@ STAGE PLANS: sort order: + Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col0 (type: string) - Execution mode: llap - LLAP IO: no inputs - Map 7 - Map Operator Tree: - TableScan - alias: src - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE Select Operator expressions: key (type: string), value (type: string) outputColumnNames: _col0, _col1 @@ -956,7 +935,7 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: string) - Reducer 8 + Reducer 7 Execution mode: llap Reduce Operator Tree: Select Operator @@ -1032,10 +1011,10 @@ STAGE PLANS: #### A masked pattern was here #### Edges: Reducer 2 <- Map 1 (SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (CUSTOM_SIMPLE_EDGE) Reducer 6 <- Map 5 (SIMPLE_EDGE) - Reducer 8 <- Map 7 (SIMPLE_EDGE) + Reducer 7 <- Map 5 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -1067,13 +1046,6 @@ STAGE PLANS: sort order: + Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col0 (type: string) - Execution mode: llap - LLAP IO: no inputs - Map 7 - Map Operator Tree: - TableScan - alias: src - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE Select Operator expressions: key (type: string), value (type: string) outputColumnNames: _col0, _col1 @@ -1147,7 +1119,7 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: string) - Reducer 8 + Reducer 7 Execution mode: llap Reduce Operator Tree: Select Operator @@ -1223,10 +1195,10 @@ STAGE PLANS: #### A masked pattern was here #### Edges: Reducer 2 <- Map 1 (SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (CUSTOM_SIMPLE_EDGE) Reducer 6 <- Map 5 (SIMPLE_EDGE) - Reducer 8 <- Map 7 (SIMPLE_EDGE) + Reducer 7 <- Map 5 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -1258,13 +1230,6 @@ STAGE PLANS: sort order: + Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col0 (type: string) - Execution mode: llap - LLAP IO: no inputs - Map 7 - Map Operator Tree: - TableScan - alias: src - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE Select Operator expressions: key (type: string), value (type: string) outputColumnNames: _col0, _col1 @@ -1338,7 +1303,7 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: string) - Reducer 8 + Reducer 7 Execution mode: llap Reduce Operator Tree: Select Operator diff --git ql/src/test/results/clientpositive/llap/auto_sortmerge_join_9.q.out ql/src/test/results/clientpositive/llap/auto_sortmerge_join_9.q.out index b69d0bd..bdb30d7 100644 --- ql/src/test/results/clientpositive/llap/auto_sortmerge_join_9.q.out +++ ql/src/test/results/clientpositive/llap/auto_sortmerge_join_9.q.out @@ -475,7 +475,7 @@ STAGE PLANS: #### A masked pattern was here #### Edges: Map 1 <- Map 3 (BROADCAST_EDGE) - Map 4 <- Map 6 (BROADCAST_EDGE) + Map 4 <- Map 3 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 5 (BROADCAST_EDGE) Reducer 5 <- Map 4 (SIMPLE_EDGE) #### A masked pattern was here #### @@ -533,6 +533,18 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: int) Statistics: Num rows: 10 Data size: 70 Basic stats: COMPLETE Column stats: NONE + Filter Operator + predicate: key is not null (type: boolean) + Statistics: Num rows: 10 Data size: 70 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: key (type: int) + outputColumnNames: _col0 + Statistics: Num rows: 10 Data size: 70 Basic stats: COMPLETE Column stats: NONE + Reduce Output Operator + key expressions: _col0 (type: int) + sort order: + + Map-reduce partition columns: _col0 (type: int) + Statistics: Num rows: 10 Data size: 70 Basic stats: COMPLETE Column stats: NONE Execution mode: llap LLAP IO: no inputs Map 4 @@ -555,7 +567,7 @@ STAGE PLANS: 1 _col0 (type: int) outputColumnNames: _col0 input vertices: - 1 Map 6 + 1 Map 3 Statistics: Num rows: 11 Data size: 77 Basic stats: COMPLETE Column stats: NONE Group By Operator aggregations: count() @@ -571,25 +583,6 @@ STAGE PLANS: value expressions: _col1 (type: bigint) Execution mode: llap LLAP IO: no inputs - Map 6 - Map Operator Tree: - TableScan - alias: b - Statistics: Num rows: 10 Data size: 70 Basic stats: COMPLETE Column stats: NONE - Filter Operator - predicate: key is not null (type: boolean) - Statistics: Num rows: 10 Data size: 70 Basic stats: COMPLETE Column stats: NONE - Select Operator - expressions: key (type: int) - outputColumnNames: _col0 - Statistics: Num rows: 10 Data size: 70 Basic stats: COMPLETE Column stats: NONE - Reduce Output Operator - key expressions: _col0 (type: int) - sort order: + - Map-reduce partition columns: _col0 (type: int) - Statistics: Num rows: 10 Data size: 70 Basic stats: COMPLETE Column stats: NONE - Execution mode: llap - LLAP IO: no inputs Reducer 2 Execution mode: llap Reduce Operator Tree: @@ -2306,7 +2299,7 @@ STAGE PLANS: #### A masked pattern was here #### Edges: Map 1 <- Map 3 (BROADCAST_EDGE) - Map 4 <- Map 6 (BROADCAST_EDGE) + Map 4 <- Map 3 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 5 (BROADCAST_EDGE) Reducer 5 <- Map 4 (SIMPLE_EDGE) #### A masked pattern was here #### @@ -2364,6 +2357,18 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: int) Statistics: Num rows: 10 Data size: 70 Basic stats: COMPLETE Column stats: NONE + Filter Operator + predicate: key is not null (type: boolean) + Statistics: Num rows: 10 Data size: 70 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: key (type: int) + outputColumnNames: _col0 + Statistics: Num rows: 10 Data size: 70 Basic stats: COMPLETE Column stats: NONE + Reduce Output Operator + key expressions: _col0 (type: int) + sort order: + + Map-reduce partition columns: _col0 (type: int) + Statistics: Num rows: 10 Data size: 70 Basic stats: COMPLETE Column stats: NONE Execution mode: llap LLAP IO: no inputs Map 4 @@ -2386,7 +2391,7 @@ STAGE PLANS: 1 _col0 (type: int) outputColumnNames: _col0 input vertices: - 1 Map 6 + 1 Map 3 Statistics: Num rows: 11 Data size: 77 Basic stats: COMPLETE Column stats: NONE Group By Operator aggregations: count() @@ -2402,25 +2407,6 @@ STAGE PLANS: value expressions: _col1 (type: bigint) Execution mode: llap LLAP IO: no inputs - Map 6 - Map Operator Tree: - TableScan - alias: b - Statistics: Num rows: 10 Data size: 70 Basic stats: COMPLETE Column stats: NONE - Filter Operator - predicate: key is not null (type: boolean) - Statistics: Num rows: 10 Data size: 70 Basic stats: COMPLETE Column stats: NONE - Select Operator - expressions: key (type: int) - outputColumnNames: _col0 - Statistics: Num rows: 10 Data size: 70 Basic stats: COMPLETE Column stats: NONE - Reduce Output Operator - key expressions: _col0 (type: int) - sort order: + - Map-reduce partition columns: _col0 (type: int) - Statistics: Num rows: 10 Data size: 70 Basic stats: COMPLETE Column stats: NONE - Execution mode: llap - LLAP IO: no inputs Reducer 2 Execution mode: llap Reduce Operator Tree: diff --git ql/src/test/results/clientpositive/llap/bucket_map_join_tez1.q.out ql/src/test/results/clientpositive/llap/bucket_map_join_tez1.q.out index 964d058..042c60b 100644 --- ql/src/test/results/clientpositive/llap/bucket_map_join_tez1.q.out +++ ql/src/test/results/clientpositive/llap/bucket_map_join_tez1.q.out @@ -757,7 +757,7 @@ STAGE PLANS: #### A masked pattern was here #### Edges: Map 1 <- Map 3 (CUSTOM_EDGE) - Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 4 (CUSTOM_SIMPLE_EDGE) + Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 3 (CUSTOM_SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -818,13 +818,6 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: int) Statistics: Num rows: 242 Data size: 4502 Basic stats: COMPLETE Column stats: NONE value expressions: _col1 (type: string) - Execution mode: llap - LLAP IO: no inputs - Map 4 - Map Operator Tree: - TableScan - alias: b - Statistics: Num rows: 242 Data size: 4502 Basic stats: COMPLETE Column stats: NONE Filter Operator predicate: key is not null (type: boolean) Statistics: Num rows: 242 Data size: 4502 Basic stats: COMPLETE Column stats: NONE @@ -861,7 +854,7 @@ STAGE PLANS: 1 _col0 (type: int) outputColumnNames: _col0, _col1, _col3 input vertices: - 1 Map 4 + 1 Map 3 Statistics: Num rows: 302 Data size: 5633 Basic stats: COMPLETE Column stats: NONE Select Operator expressions: _col1 (type: int), _col0 (type: double), _col3 (type: string) diff --git ql/src/test/results/clientpositive/llap/correlationoptimizer2.q.out ql/src/test/results/clientpositive/llap/correlationoptimizer2.q.out index b628cb1..291a1f2 100644 --- ql/src/test/results/clientpositive/llap/correlationoptimizer2.q.out +++ ql/src/test/results/clientpositive/llap/correlationoptimizer2.q.out @@ -1738,9 +1738,9 @@ STAGE PLANS: #### A masked pattern was here #### Edges: Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 5 (SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (CUSTOM_SIMPLE_EDGE) - Reducer 7 <- Map 6 (SIMPLE_EDGE) + Reducer 6 <- Map 5 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -1780,13 +1780,6 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 25 Data size: 4375 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: string) - Execution mode: llap - LLAP IO: no inputs - Map 6 - Map Operator Tree: - TableScan - alias: z - Statistics: Num rows: 25 Data size: 4375 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: key is not null (type: boolean) Statistics: Num rows: 25 Data size: 4375 Basic stats: COMPLETE Column stats: COMPLETE @@ -1864,7 +1857,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 7 + Reducer 6 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -1929,9 +1922,9 @@ STAGE PLANS: #### A masked pattern was here #### Edges: Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 5 (SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (CUSTOM_SIMPLE_EDGE) - Reducer 7 <- Map 6 (SIMPLE_EDGE) + Reducer 6 <- Map 5 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -1971,13 +1964,6 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 25 Data size: 4375 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: string) - Execution mode: llap - LLAP IO: no inputs - Map 6 - Map Operator Tree: - TableScan - alias: z - Statistics: Num rows: 25 Data size: 4375 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: key is not null (type: boolean) Statistics: Num rows: 25 Data size: 4375 Basic stats: COMPLETE Column stats: COMPLETE @@ -2055,7 +2041,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 7 + Reducer 6 Execution mode: llap Reduce Operator Tree: Group By Operator diff --git ql/src/test/results/clientpositive/llap/correlationoptimizer3.q.out ql/src/test/results/clientpositive/llap/correlationoptimizer3.q.out index d3cfce8..3e71546 100644 --- ql/src/test/results/clientpositive/llap/correlationoptimizer3.q.out +++ ql/src/test/results/clientpositive/llap/correlationoptimizer3.q.out @@ -21,11 +21,11 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 5 (SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) + Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (CUSTOM_SIMPLE_EDGE) - Reducer 7 <- Map 6 (SIMPLE_EDGE), Map 9 (SIMPLE_EDGE) - Reducer 8 <- Reducer 7 (SIMPLE_EDGE) + Reducer 5 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) + Reducer 6 <- Reducer 5 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -45,9 +45,21 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE + Filter Operator + predicate: key is not null (type: boolean) + Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE + Select Operator + expressions: key (type: string) + outputColumnNames: _col0 + Statistics: Num rows: 500 Data size: 43500 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: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE Execution mode: llap LLAP IO: no inputs - Map 5 + Map 7 Map Operator Tree: TableScan alias: x @@ -67,26 +79,7 @@ STAGE PLANS: value expressions: _col1 (type: string) Execution mode: llap LLAP IO: no inputs - Map 6 - Map Operator Tree: - TableScan - alias: y - Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE - Filter Operator - predicate: key is not null (type: boolean) - Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: key (type: string) - outputColumnNames: _col0 - Statistics: Num rows: 500 Data size: 43500 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: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs - Map 9 + Map 8 Map Operator Tree: TableScan alias: x @@ -165,7 +158,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 7 + Reducer 5 Execution mode: llap Reduce Operator Tree: Merge Join Operator @@ -192,7 +185,7 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 14 Data size: 1316 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: bigint) - Reducer 8 + Reducer 6 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -256,11 +249,11 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 5 (SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) + Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (CUSTOM_SIMPLE_EDGE) - Reducer 7 <- Map 6 (SIMPLE_EDGE), Map 9 (SIMPLE_EDGE) - Reducer 8 <- Reducer 7 (SIMPLE_EDGE) + Reducer 5 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) + Reducer 6 <- Reducer 5 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -280,9 +273,21 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE + Filter Operator + predicate: key is not null (type: boolean) + Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE + Select Operator + expressions: key (type: string) + outputColumnNames: _col0 + Statistics: Num rows: 500 Data size: 43500 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: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE Execution mode: llap LLAP IO: no inputs - Map 5 + Map 7 Map Operator Tree: TableScan alias: x @@ -302,26 +307,7 @@ STAGE PLANS: value expressions: _col1 (type: string) Execution mode: llap LLAP IO: no inputs - Map 6 - Map Operator Tree: - TableScan - alias: y - Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE - Filter Operator - predicate: key is not null (type: boolean) - Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: key (type: string) - outputColumnNames: _col0 - Statistics: Num rows: 500 Data size: 43500 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: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs - Map 9 + Map 8 Map Operator Tree: TableScan alias: x @@ -400,7 +386,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 7 + Reducer 5 Execution mode: llap Reduce Operator Tree: Merge Join Operator @@ -427,7 +413,7 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 14 Data size: 1316 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: bigint) - Reducer 8 + Reducer 6 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -706,11 +692,11 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 5 (SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) + Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (CUSTOM_SIMPLE_EDGE) - Reducer 7 <- Map 6 (SIMPLE_EDGE), Map 9 (SIMPLE_EDGE) - Reducer 8 <- Reducer 7 (SIMPLE_EDGE) + Reducer 5 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) + Reducer 6 <- Reducer 5 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -730,9 +716,21 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE + Filter Operator + predicate: key is not null (type: boolean) + Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE + Select Operator + expressions: key (type: string) + outputColumnNames: _col0 + Statistics: Num rows: 500 Data size: 43500 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: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE Execution mode: llap LLAP IO: no inputs - Map 5 + Map 7 Map Operator Tree: TableScan alias: x @@ -752,26 +750,7 @@ STAGE PLANS: value expressions: _col1 (type: string) Execution mode: llap LLAP IO: no inputs - Map 6 - Map Operator Tree: - TableScan - alias: y - Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE - Filter Operator - predicate: key is not null (type: boolean) - Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: key (type: string) - outputColumnNames: _col0 - Statistics: Num rows: 500 Data size: 43500 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: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs - Map 9 + Map 8 Map Operator Tree: TableScan alias: x @@ -850,7 +829,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 7 + Reducer 5 Execution mode: llap Reduce Operator Tree: Merge Join Operator @@ -877,7 +856,7 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 14 Data size: 1316 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: bigint) - Reducer 8 + Reducer 6 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -941,11 +920,11 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 5 (SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) + Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (CUSTOM_SIMPLE_EDGE) - Reducer 7 <- Map 6 (SIMPLE_EDGE), Map 9 (SIMPLE_EDGE) - Reducer 8 <- Reducer 7 (SIMPLE_EDGE) + Reducer 5 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) + Reducer 6 <- Reducer 5 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -965,9 +944,21 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE + Filter Operator + predicate: key is not null (type: boolean) + Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE + Select Operator + expressions: key (type: string) + outputColumnNames: _col0 + Statistics: Num rows: 500 Data size: 43500 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: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE Execution mode: llap LLAP IO: no inputs - Map 5 + Map 7 Map Operator Tree: TableScan alias: x @@ -987,26 +978,7 @@ STAGE PLANS: value expressions: _col1 (type: string) Execution mode: llap LLAP IO: no inputs - Map 6 - Map Operator Tree: - TableScan - alias: y - Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE - Filter Operator - predicate: key is not null (type: boolean) - Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: key (type: string) - outputColumnNames: _col0 - Statistics: Num rows: 500 Data size: 43500 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: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs - Map 9 + Map 8 Map Operator Tree: TableScan alias: x @@ -1085,7 +1057,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 7 + Reducer 5 Execution mode: llap Reduce Operator Tree: Merge Join Operator @@ -1112,7 +1084,7 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 14 Data size: 1316 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: bigint) - Reducer 8 + Reducer 6 Execution mode: llap Reduce Operator Tree: Group By Operator diff --git ql/src/test/results/clientpositive/llap/correlationoptimizer6.q.out ql/src/test/results/clientpositive/llap/correlationoptimizer6.q.out index 4fec286..82dae9a 100644 --- ql/src/test/results/clientpositive/llap/correlationoptimizer6.q.out +++ ql/src/test/results/clientpositive/llap/correlationoptimizer6.q.out @@ -1793,9 +1793,9 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 3 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) - Reducer 5 <- Map 4 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) - Reducer 6 <- Reducer 5 (SIMPLE_EDGE) + Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 5 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) + Reducer 3 <- Map 1 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) + Reducer 4 <- Reducer 3 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -1815,47 +1815,40 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs - Map 3 - Map Operator Tree: - TableScan - alias: xx - Statistics: Num rows: 25 Data size: 2150 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: key is not null (type: boolean) - Statistics: Num rows: 25 Data size: 2150 Basic stats: COMPLETE Column stats: COMPLETE + Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE Select Operator expressions: key (type: string) outputColumnNames: _col0 - Statistics: Num rows: 25 Data size: 2150 Basic stats: COMPLETE Column stats: COMPLETE + Statistics: Num rows: 500 Data size: 43500 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: 25 Data size: 2150 Basic stats: COMPLETE Column stats: COMPLETE + Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE Execution mode: llap LLAP IO: no inputs - Map 4 + Map 5 Map Operator Tree: TableScan - alias: x - Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE + alias: xx + Statistics: Num rows: 25 Data size: 2150 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: key is not null (type: boolean) - Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE + Statistics: Num rows: 25 Data size: 2150 Basic stats: COMPLETE Column stats: COMPLETE Select Operator expressions: key (type: string) outputColumnNames: _col0 - Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE + Statistics: Num rows: 25 Data size: 2150 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: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE + Statistics: Num rows: 25 Data size: 2150 Basic stats: COMPLETE Column stats: COMPLETE Execution mode: llap LLAP IO: no inputs - Map 7 + Map 6 Map Operator Tree: TableScan alias: y @@ -1898,7 +1891,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 + Reducer 3 Execution mode: llap Reduce Operator Tree: Merge Join Operator @@ -1921,7 +1914,7 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 205 Data size: 19475 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: bigint) - Reducer 6 + Reducer 4 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -2025,9 +2018,9 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 3 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) - Reducer 5 <- Map 4 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) - Reducer 6 <- Reducer 5 (SIMPLE_EDGE) + Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 5 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) + Reducer 3 <- Map 1 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) + Reducer 4 <- Reducer 3 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -2047,47 +2040,40 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs - Map 3 - Map Operator Tree: - TableScan - alias: xx - Statistics: Num rows: 25 Data size: 2150 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: key is not null (type: boolean) - Statistics: Num rows: 25 Data size: 2150 Basic stats: COMPLETE Column stats: COMPLETE + Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE Select Operator expressions: key (type: string) outputColumnNames: _col0 - Statistics: Num rows: 25 Data size: 2150 Basic stats: COMPLETE Column stats: COMPLETE + Statistics: Num rows: 500 Data size: 43500 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: 25 Data size: 2150 Basic stats: COMPLETE Column stats: COMPLETE + Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE Execution mode: llap LLAP IO: no inputs - Map 4 + Map 5 Map Operator Tree: TableScan - alias: x - Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE + alias: xx + Statistics: Num rows: 25 Data size: 2150 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: key is not null (type: boolean) - Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE + Statistics: Num rows: 25 Data size: 2150 Basic stats: COMPLETE Column stats: COMPLETE Select Operator expressions: key (type: string) outputColumnNames: _col0 - Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE + Statistics: Num rows: 25 Data size: 2150 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: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE + Statistics: Num rows: 25 Data size: 2150 Basic stats: COMPLETE Column stats: COMPLETE Execution mode: llap LLAP IO: no inputs - Map 7 + Map 6 Map Operator Tree: TableScan alias: y @@ -2130,7 +2116,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 + Reducer 3 Execution mode: llap Reduce Operator Tree: Merge Join Operator @@ -2153,7 +2139,7 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 205 Data size: 19475 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: bigint) - Reducer 6 + Reducer 4 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -2259,7 +2245,7 @@ STAGE PLANS: Edges: Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 5 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (SIMPLE_EDGE) - Reducer 4 <- Map 6 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) + Reducer 4 <- Map 1 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -2279,13 +2265,6 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs - Map 5 - Map Operator Tree: - TableScan - alias: y - Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: key is not null (type: boolean) Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE @@ -2300,10 +2279,10 @@ STAGE PLANS: Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE Execution mode: llap LLAP IO: no inputs - Map 6 + Map 5 Map Operator Tree: TableScan - alias: zz + alias: y Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: key is not null (type: boolean) @@ -2319,7 +2298,7 @@ STAGE PLANS: Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE Execution mode: llap LLAP IO: no inputs - Map 7 + Map 6 Map Operator Tree: TableScan alias: xx @@ -2491,7 +2470,7 @@ STAGE PLANS: Edges: Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 5 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (SIMPLE_EDGE) - Reducer 4 <- Map 6 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) + Reducer 4 <- Map 1 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -2511,13 +2490,6 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs - Map 5 - Map Operator Tree: - TableScan - alias: y - Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: key is not null (type: boolean) Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE @@ -2532,10 +2504,10 @@ STAGE PLANS: Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE Execution mode: llap LLAP IO: no inputs - Map 6 + Map 5 Map Operator Tree: TableScan - alias: zz + alias: y Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: key is not null (type: boolean) @@ -2551,7 +2523,7 @@ STAGE PLANS: Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE Execution mode: llap LLAP IO: no inputs - Map 7 + Map 6 Map Operator Tree: TableScan alias: xx diff --git ql/src/test/results/clientpositive/llap/dynamic_partition_pruning.q.out ql/src/test/results/clientpositive/llap/dynamic_partition_pruning.q.out index 35dde96..91edcdc 100644 --- ql/src/test/results/clientpositive/llap/dynamic_partition_pruning.q.out +++ ql/src/test/results/clientpositive/llap/dynamic_partition_pruning.q.out @@ -2228,9 +2228,9 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 2 <- Map 1 (CUSTOM_SIMPLE_EDGE), Reducer 5 (CUSTOM_SIMPLE_EDGE) + Reducer 2 <- Map 1 (CUSTOM_SIMPLE_EDGE), Reducer 4 (CUSTOM_SIMPLE_EDGE) Reducer 3 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) - Reducer 5 <- Map 4 (SIMPLE_EDGE) + Reducer 4 <- Map 1 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -2239,31 +2239,27 @@ STAGE PLANS: alias: srcpart filterExpr: (ds = '2008-04-08') (type: boolean) Statistics: Num rows: 1000 Data size: 18624 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - Statistics: Num rows: 1000 Data size: 94000 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - sort order: + Filter Operator + predicate: (ds = '2008-04-08') (type: boolean) + Select Operator Statistics: Num rows: 1000 Data size: 94000 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs - Map 4 - Map Operator Tree: - TableScan - alias: srcpart - filterExpr: (ds = '2008-04-08') (type: boolean) - Statistics: Num rows: 1000 Data size: 18624 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - Statistics: Num rows: 1000 Data size: 18624 Basic stats: COMPLETE Column stats: COMPLETE - Group By Operator - keys: '2008-04-08' (type: string) - mode: hash - outputColumnNames: _col0 - Statistics: Num rows: 1 Data size: 94 Basic stats: COMPLETE Column stats: COMPLETE Reduce Output Operator - key expressions: _col0 (type: string) - sort order: + - Map-reduce partition columns: _col0 (type: string) + sort order: + Statistics: Num rows: 1000 Data size: 94000 Basic stats: COMPLETE Column stats: COMPLETE + Filter Operator + predicate: (ds = '2008-04-08') (type: boolean) + Select Operator + Statistics: Num rows: 1000 Data size: 18624 Basic stats: COMPLETE Column stats: COMPLETE + Group By Operator + keys: '2008-04-08' (type: string) + mode: hash + outputColumnNames: _col0 Statistics: Num rows: 1 Data size: 94 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: 1 Data size: 94 Basic stats: COMPLETE Column stats: COMPLETE Execution mode: llap LLAP IO: no inputs Reducer 2 @@ -2300,7 +2296,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 + Reducer 4 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -5666,10 +5662,10 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 3 <- Map 2 (CUSTOM_SIMPLE_EDGE), Union 4 (CONTAINS) - Reducer 5 <- Map 1 (BROADCAST_EDGE), Union 4 (SIMPLE_EDGE) - Reducer 6 <- Reducer 5 (SIMPLE_EDGE) - Reducer 8 <- Map 7 (CUSTOM_SIMPLE_EDGE), Union 4 (CONTAINS) + Reducer 2 <- Map 1 (CUSTOM_SIMPLE_EDGE), Union 3 (CONTAINS) + Reducer 4 <- Map 1 (BROADCAST_EDGE), Union 3 (SIMPLE_EDGE) + Reducer 5 <- Reducer 4 (SIMPLE_EDGE) + Reducer 7 <- Map 6 (CUSTOM_SIMPLE_EDGE), Union 3 (CONTAINS) #### A masked pattern was here #### Vertices: Map 1 @@ -5678,22 +5674,18 @@ STAGE PLANS: alias: srcpart filterExpr: ds is not null (type: boolean) Statistics: Num rows: 2000 Data size: 389248 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: ds (type: string) - outputColumnNames: _col0 + Filter Operator + predicate: ds is not null (type: boolean) Statistics: Num rows: 2000 Data size: 368000 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - key expressions: _col0 (type: string) - sort order: + - Map-reduce partition columns: _col0 (type: string) + Select Operator + expressions: ds (type: string) + outputColumnNames: _col0 Statistics: Num rows: 2000 Data size: 368000 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs - Map 2 - Map Operator Tree: - TableScan - alias: srcpart - Statistics: Num rows: 2000 Data size: 389248 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: 2000 Data size: 368000 Basic stats: COMPLETE Column stats: COMPLETE Select Operator expressions: ds (type: string) outputColumnNames: ds @@ -5709,7 +5701,7 @@ STAGE PLANS: value expressions: _col0 (type: string) Execution mode: llap LLAP IO: no inputs - Map 7 + Map 6 Map Operator Tree: TableScan alias: srcpart @@ -5729,7 +5721,7 @@ STAGE PLANS: value expressions: _col0 (type: string) Execution mode: llap LLAP IO: no inputs - Reducer 3 + Reducer 2 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -5750,7 +5742,7 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 1 Data size: 184 Basic stats: COMPLETE Column stats: COMPLETE - Reducer 5 + Reducer 4 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -5778,7 +5770,7 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 1 Data size: 184 Basic stats: COMPLETE Column stats: COMPLETE - Reducer 6 + Reducer 5 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -5793,7 +5785,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 8 + Reducer 7 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -5814,8 +5806,8 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 1 Data size: 184 Basic stats: COMPLETE Column stats: COMPLETE - Union 4 - Vertex: Union 4 + Union 3 + Vertex: Union 3 Stage: Stage-0 Fetch Operator diff --git ql/src/test/results/clientpositive/llap/except_distinct.q.out ql/src/test/results/clientpositive/llap/except_distinct.q.out index 4c32ebc..e4c2941 100644 --- ql/src/test/results/clientpositive/llap/except_distinct.q.out +++ ql/src/test/results/clientpositive/llap/except_distinct.q.out @@ -368,13 +368,13 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 10 <- Map 9 (SIMPLE_EDGE), Union 3 (CONTAINS) - Reducer 12 <- Map 11 (SIMPLE_EDGE), Union 5 (CONTAINS) - Reducer 14 <- Map 13 (SIMPLE_EDGE), Union 7 (CONTAINS) + Reducer 10 <- Map 1 (SIMPLE_EDGE), Union 7 (CONTAINS) + Reducer 12 <- Map 11 (SIMPLE_EDGE), Union 3 (CONTAINS) Reducer 2 <- Map 1 (SIMPLE_EDGE), Union 3 (CONTAINS) Reducer 4 <- Union 3 (SIMPLE_EDGE), Union 5 (CONTAINS) Reducer 6 <- Union 5 (SIMPLE_EDGE), Union 7 (CONTAINS) Reducer 8 <- Union 7 (SIMPLE_EDGE) + Reducer 9 <- Map 1 (SIMPLE_EDGE), Union 5 (CONTAINS) #### A masked pattern was here #### Vertices: Map 1 @@ -398,13 +398,6 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string), _col1 (type: string) Statistics: Num rows: 250 Data size: 46500 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col2 (type: bigint) - Execution mode: llap - LLAP IO: no inputs - Map 11 - Map Operator Tree: - TableScan - alias: src - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE Select Operator expressions: key (type: string), value (type: string) outputColumnNames: _col0, _col1 @@ -421,13 +414,6 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string), _col1 (type: string) Statistics: Num rows: 250 Data size: 46500 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col2 (type: bigint) - Execution mode: llap - LLAP IO: no inputs - Map 13 - Map Operator Tree: - TableScan - alias: src - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE Select Operator expressions: key (type: string), value (type: string) outputColumnNames: _col0, _col1 @@ -446,7 +432,7 @@ STAGE PLANS: value expressions: _col2 (type: bigint) Execution mode: llap LLAP IO: no inputs - Map 9 + Map 11 Map Operator Tree: TableScan alias: src @@ -485,18 +471,18 @@ STAGE PLANS: Select Operator expressions: _col0 (type: string), _col1 (type: string), _col3 (type: bigint), (_col2 * _col3) (type: bigint) outputColumnNames: _col0, _col1, _col2, _col3 - Statistics: Num rows: 500 Data size: 97000 Basic stats: COMPLETE Column stats: COMPLETE + Statistics: Num rows: 274 Data size: 53156 Basic stats: COMPLETE Column stats: COMPLETE Group By Operator aggregations: sum(_col2), sum(_col3) keys: _col0 (type: string), _col1 (type: string) mode: hash outputColumnNames: _col0, _col1, _col2, _col3 - Statistics: Num rows: 250 Data size: 48500 Basic stats: COMPLETE Column stats: COMPLETE + Statistics: Num rows: 137 Data size: 26578 Basic stats: COMPLETE Column stats: COMPLETE Reduce Output Operator key expressions: _col0 (type: string), _col1 (type: string) sort order: ++ Map-reduce partition columns: _col0 (type: string), _col1 (type: string) - Statistics: Num rows: 250 Data size: 48500 Basic stats: COMPLETE Column stats: COMPLETE + Statistics: Num rows: 137 Data size: 26578 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col2 (type: bigint), _col3 (type: bigint) Reducer 12 Execution mode: llap @@ -514,47 +500,18 @@ STAGE PLANS: Select Operator expressions: _col0 (type: string), _col1 (type: string), _col3 (type: bigint), (_col2 * _col3) (type: bigint) outputColumnNames: _col0, _col1, _col2, _col3 - Statistics: Num rows: 291 Data size: 56454 Basic stats: COMPLETE Column stats: COMPLETE - Group By Operator - aggregations: sum(_col2), sum(_col3) - keys: _col0 (type: string), _col1 (type: string) - mode: hash - outputColumnNames: _col0, _col1, _col2, _col3 - Statistics: Num rows: 145 Data size: 28130 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - key expressions: _col0 (type: string), _col1 (type: string) - sort order: ++ - Map-reduce partition columns: _col0 (type: string), _col1 (type: string) - Statistics: Num rows: 145 Data size: 28130 Basic stats: COMPLETE Column stats: COMPLETE - value expressions: _col2 (type: bigint), _col3 (type: bigint) - Reducer 14 - Execution mode: llap - Reduce Operator Tree: - Group By Operator - aggregations: count(VALUE._col0) - keys: KEY._col0 (type: string), KEY._col1 (type: string) - mode: mergepartial - outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 250 Data size: 46500 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: _col0 (type: string), _col1 (type: string), 1 (type: bigint), _col2 (type: bigint) - outputColumnNames: _col0, _col1, _col2, _col3 - Statistics: Num rows: 250 Data size: 48500 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: _col0 (type: string), _col1 (type: string), _col3 (type: bigint), (_col2 * _col3) (type: bigint) - outputColumnNames: _col0, _col1, _col2, _col3 - Statistics: Num rows: 274 Data size: 53156 Basic stats: COMPLETE Column stats: COMPLETE + Statistics: Num rows: 500 Data size: 97000 Basic stats: COMPLETE Column stats: COMPLETE Group By Operator aggregations: sum(_col2), sum(_col3) keys: _col0 (type: string), _col1 (type: string) mode: hash outputColumnNames: _col0, _col1, _col2, _col3 - Statistics: Num rows: 137 Data size: 26578 Basic stats: COMPLETE Column stats: COMPLETE + Statistics: Num rows: 250 Data size: 48500 Basic stats: COMPLETE Column stats: COMPLETE Reduce Output Operator key expressions: _col0 (type: string), _col1 (type: string) sort order: ++ Map-reduce partition columns: _col0 (type: string), _col1 (type: string) - Statistics: Num rows: 137 Data size: 26578 Basic stats: COMPLETE Column stats: COMPLETE + Statistics: Num rows: 250 Data size: 48500 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col2 (type: bigint), _col3 (type: bigint) Reducer 2 Execution mode: llap @@ -692,6 +649,35 @@ 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 9 + Execution mode: llap + Reduce Operator Tree: + Group By Operator + aggregations: count(VALUE._col0) + keys: KEY._col0 (type: string), KEY._col1 (type: string) + mode: mergepartial + outputColumnNames: _col0, _col1, _col2 + Statistics: Num rows: 250 Data size: 46500 Basic stats: COMPLETE Column stats: COMPLETE + Select Operator + expressions: _col0 (type: string), _col1 (type: string), 1 (type: bigint), _col2 (type: bigint) + outputColumnNames: _col0, _col1, _col2, _col3 + Statistics: Num rows: 250 Data size: 48500 Basic stats: COMPLETE Column stats: COMPLETE + Select Operator + expressions: _col0 (type: string), _col1 (type: string), _col3 (type: bigint), (_col2 * _col3) (type: bigint) + outputColumnNames: _col0, _col1, _col2, _col3 + Statistics: Num rows: 291 Data size: 56454 Basic stats: COMPLETE Column stats: COMPLETE + Group By Operator + aggregations: sum(_col2), sum(_col3) + keys: _col0 (type: string), _col1 (type: string) + mode: hash + outputColumnNames: _col0, _col1, _col2, _col3 + Statistics: Num rows: 145 Data size: 28130 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + key expressions: _col0 (type: string), _col1 (type: string) + sort order: ++ + Map-reduce partition columns: _col0 (type: string), _col1 (type: string) + Statistics: Num rows: 145 Data size: 28130 Basic stats: COMPLETE Column stats: COMPLETE + value expressions: _col2 (type: bigint), _col3 (type: bigint) Union 3 Vertex: Union 3 Union 5 diff --git ql/src/test/results/clientpositive/llap/explainuser_1.q.out ql/src/test/results/clientpositive/llap/explainuser_1.q.out index 584c3b5..f701cab 100644 --- ql/src/test/results/clientpositive/llap/explainuser_1.q.out +++ ql/src/test/results/clientpositive/llap/explainuser_1.q.out @@ -1755,8 +1755,8 @@ POSTHOOK: type: QUERY Plan optimized by CBO. Vertex dependency in root stage -Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) -Reducer 4 <- Map 3 (SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 3 <- Map 1 (SIMPLE_EDGE) Stage-0 Fetch Operator @@ -1777,7 +1777,7 @@ Stage-0 Output:["_col0","_col1"] TableScan [TS_0] (rows=500 width=178) default@src_cbo,b,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] - <-Reducer 4 [SIMPLE_EDGE] llap + <-Reducer 3 [SIMPLE_EDGE] llap SHUFFLE [RS_15] PartitionCols:_col0 Select Operator [SEL_13] (rows=36 width=95) @@ -1788,15 +1788,14 @@ Stage-0 Output:["_col1"] Group By Operator [GBY_7] (rows=41 width=178) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Map 3 [SIMPLE_EDGE] llap + <-Map 1 [SIMPLE_EDGE] llap SHUFFLE [RS_6] PartitionCols:_col0 Group By Operator [GBY_5] (rows=41 width=178) Output:["_col0","_col1"],keys:value, key Filter Operator [FIL_21] (rows=83 width=178) predicate:((value = value) and (value > 'val_2')) - TableScan [TS_2] (rows=500 width=178) - default@src_cbo,a,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] + Please refer to the previous TableScan [TS_0] PREHOOK: query: explain select * from src_cbo b @@ -1820,8 +1819,8 @@ Plan optimized by CBO. Vertex dependency in root stage Reducer 2 <- Map 1 (SIMPLE_EDGE) -Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) -Reducer 5 <- Map 4 (SIMPLE_EDGE) +Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) +Reducer 4 <- Map 1 (SIMPLE_EDGE) Stage-0 Fetch Operator @@ -1849,22 +1848,21 @@ Stage-0 Output:["key","value"] TableScan [TS_0] (rows=500 width=178) default@src_cbo,b,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] - <-Reducer 5 [SIMPLE_EDGE] llap + <-Reducer 4 [SIMPLE_EDGE] llap SHUFFLE [RS_14] PartitionCols:_col0, _col1 Select Operator [SEL_12] (rows=20 width=182) Output:["_col0","_col1","_col2"] Group By Operator [GBY_11] (rows=20 width=178) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Map 4 [SIMPLE_EDGE] llap + <-Map 1 [SIMPLE_EDGE] llap SHUFFLE [RS_10] PartitionCols:_col0, _col1 Group By Operator [GBY_9] (rows=20 width=178) Output:["_col0","_col1"],keys:key, value Filter Operator [FIL_20] (rows=41 width=178) predicate:((value = value) and (key = key) and (value > 'val_12')) - TableScan [TS_6] (rows=500 width=178) - default@src_cbo,a,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] + Please refer to the previous TableScan [TS_0] PREHOOK: query: create view cv1 as select * @@ -2102,9 +2100,9 @@ Plan optimized by CBO. Vertex dependency in root stage Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) +Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) Reducer 6 <- Map 5 (SIMPLE_EDGE) -Reducer 8 <- Map 7 (SIMPLE_EDGE) +Reducer 7 <- Map 5 (SIMPLE_EDGE) Stage-0 Fetch Operator @@ -2151,7 +2149,7 @@ Stage-0 predicate:(key > '8') TableScan [TS_3] (rows=500 width=87) default@src_cbo,src_cbo,Tbl:COMPLETE,Col:COMPLETE,Output:["key"] - <-Reducer 8 [SIMPLE_EDGE] llap + <-Reducer 7 [SIMPLE_EDGE] llap SHUFFLE [RS_30] PartitionCols:_col0 Group By Operator [GBY_28] (rows=34 width=8) @@ -2164,15 +2162,14 @@ Stage-0 Output:["_col1"] Group By Operator [GBY_24] (rows=69 width=95) Output:["_col0","_col1"],aggregations:["count(VALUE._col0)"],keys:KEY._col0 - <-Map 7 [SIMPLE_EDGE] llap + <-Map 5 [SIMPLE_EDGE] llap SHUFFLE [RS_23] PartitionCols:_col0 Group By Operator [GBY_22] (rows=69 width=95) Output:["_col0","_col1"],aggregations:["count()"],keys:key Filter Operator [FIL_43] (rows=166 width=87) predicate:(key > '9') - TableScan [TS_19] (rows=500 width=87) - default@src_cbo,s1,Tbl:COMPLETE,Col:COMPLETE,Output:["key"] + Please refer to the previous TableScan [TS_3] PREHOOK: query: explain select p_mfgr, p_name, avg(p_size) from part @@ -2254,10 +2251,10 @@ Plan optimized by CBO. Vertex dependency in root stage Reducer 2 <- Map 1 (CUSTOM_SIMPLE_EDGE), Reducer 6 (CUSTOM_SIMPLE_EDGE) -Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) +Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) Reducer 6 <- Map 5 (CUSTOM_SIMPLE_EDGE) -Reducer 8 <- Map 7 (SIMPLE_EDGE) +Reducer 7 <- Map 5 (SIMPLE_EDGE) Stage-0 Fetch Operator @@ -2291,29 +2288,28 @@ Stage-0 Group By Operator [GBY_7] (rows=1 width=16) Output:["_col0","_col1"],aggregations:["count(VALUE._col0)","count(VALUE._col1)"] <-Map 5 [CUSTOM_SIMPLE_EDGE] llap - PARTITION_ONLY_SHUFFLE [RS_6] + SHUFFLE [RS_6] Group By Operator [GBY_5] (rows=1 width=16) Output:["_col0","_col1"],aggregations:["count()","count(key)"] Filter Operator [FIL_28] (rows=166 width=87) predicate:(key > '2') TableScan [TS_2] (rows=500 width=87) default@src_cbo,s1,Tbl:COMPLETE,Col:COMPLETE,Output:["key"] - <-Reducer 8 [SIMPLE_EDGE] llap + <-Reducer 7 [SIMPLE_EDGE] llap SHUFFLE [RS_20] PartitionCols:_col0 Select Operator [SEL_15] (rows=69 width=91) Output:["_col0","_col1"] Group By Operator [GBY_14] (rows=69 width=87) Output:["_col0"],keys:KEY._col0 - <-Map 7 [SIMPLE_EDGE] llap + <-Map 5 [SIMPLE_EDGE] llap SHUFFLE [RS_13] PartitionCols:_col0 Group By Operator [GBY_12] (rows=69 width=87) Output:["_col0"],keys:key Filter Operator [FIL_29] (rows=166 width=87) predicate:(key > '2') - TableScan [TS_9] (rows=500 width=87) - default@src_cbo,s1,Tbl:COMPLETE,Col:COMPLETE,Output:["key"] + Please refer to the previous TableScan [TS_2] PREHOOK: query: explain select p_mfgr, b.p_name, p_size from part b @@ -2334,10 +2330,10 @@ POSTHOOK: type: QUERY Plan optimized by CBO. Vertex dependency in root stage -Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) -Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) -Reducer 5 <- Map 4 (SIMPLE_EDGE) -Reducer 7 <- Map 6 (SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) +Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) +Reducer 4 <- Map 1 (SIMPLE_EDGE) +Reducer 5 <- Map 1 (SIMPLE_EDGE) Stage-0 Fetch Operator @@ -2363,12 +2359,12 @@ Stage-0 Output:["_col0","_col1","_col2"] TableScan [TS_0] (rows=26 width=223) default@part,b,Tbl:COMPLETE,Col:COMPLETE,Output:["p_name","p_mfgr","p_size"] - <-Reducer 5 [SIMPLE_EDGE] llap + <-Reducer 4 [SIMPLE_EDGE] llap SHUFFLE [RS_19] PartitionCols:_col0 Group By Operator [GBY_7] (rows=1 width=114) Output:["_col0","_col1","_col2"],aggregations:["count(VALUE._col0)","count(VALUE._col1)"],keys:KEY._col0 - <-Map 4 [SIMPLE_EDGE] llap + <-Map 1 [SIMPLE_EDGE] llap SHUFFLE [RS_6] PartitionCols:_col0 Group By Operator [GBY_5] (rows=1 width=114) @@ -2377,9 +2373,8 @@ Stage-0 Output:["p_name","p_mfgr"] Filter Operator [FIL_29] (rows=4 width=223) predicate:((p_size < 10) and (p_mfgr = p_mfgr)) - TableScan [TS_2] (rows=26 width=223) - default@part,part,Tbl:COMPLETE,Col:COMPLETE,Output:["p_name","p_mfgr","p_size"] - <-Reducer 7 [SIMPLE_EDGE] llap + Please refer to the previous TableScan [TS_0] + <-Reducer 5 [SIMPLE_EDGE] llap SHUFFLE [RS_22] PartitionCols:_col0, _col1 Select Operator [SEL_17] (rows=2 width=223) @@ -2388,7 +2383,7 @@ Stage-0 predicate:_col0 is not null Group By Operator [GBY_14] (rows=2 width=219) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Map 6 [SIMPLE_EDGE] llap + <-Map 1 [SIMPLE_EDGE] llap SHUFFLE [RS_13] PartitionCols:_col0, _col1 Group By Operator [GBY_12] (rows=2 width=219) @@ -2397,8 +2392,7 @@ Stage-0 Output:["p_name","p_mfgr"] Filter Operator [FIL_30] (rows=4 width=223) predicate:((p_size < 10) and (p_mfgr = p_mfgr)) - TableScan [TS_9] (rows=26 width=223) - default@part,part,Tbl:COMPLETE,Col:COMPLETE,Output:["p_name","p_mfgr","p_size"] + Please refer to the previous TableScan [TS_0] PREHOOK: query: explain select p_name, p_size from @@ -2420,10 +2414,10 @@ Plan optimized by CBO. Vertex dependency in root stage Reducer 2 <- Map 1 (CUSTOM_SIMPLE_EDGE), Reducer 6 (CUSTOM_SIMPLE_EDGE) -Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) +Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) Reducer 6 <- Map 5 (CUSTOM_SIMPLE_EDGE) -Reducer 8 <- Map 7 (CUSTOM_SIMPLE_EDGE) +Reducer 7 <- Map 5 (CUSTOM_SIMPLE_EDGE) Stage-0 Fetch Operator @@ -2466,21 +2460,20 @@ Stage-0 predicate:(p_size < 10) TableScan [TS_2] (rows=26 width=4) default@part,part,Tbl:COMPLETE,Col:COMPLETE,Output:["p_size"] - <-Reducer 8 [SIMPLE_EDGE] llap + <-Reducer 7 [SIMPLE_EDGE] llap SHUFFLE [RS_25] PartitionCols:_col0 Select Operator [SEL_20] (rows=1 width=12) Output:["_col0","_col1"] Group By Operator [GBY_19] (rows=1 width=8) Output:["_col0"],aggregations:["avg(VALUE._col0)"] - <-Map 7 [CUSTOM_SIMPLE_EDGE] llap + <-Map 5 [CUSTOM_SIMPLE_EDGE] llap PARTITION_ONLY_SHUFFLE [RS_18] Group By Operator [GBY_17] (rows=1 width=76) Output:["_col0"],aggregations:["avg(p_size)"] Filter Operator [FIL_35] (rows=8 width=4) predicate:(p_size < 10) - TableScan [TS_14] (rows=26 width=4) - default@part,part,Tbl:COMPLETE,Col:COMPLETE,Output:["p_size"] + Please refer to the previous TableScan [TS_2] PREHOOK: query: explain select b.p_mfgr, min(p_retailprice) from part b @@ -2505,13 +2498,13 @@ POSTHOOK: type: QUERY Plan optimized by CBO. Vertex dependency in root stage -Reducer 10 <- Map 9 (SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE) -Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) -Reducer 4 <- Reducer 10 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) +Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) -Reducer 7 <- Map 6 (SIMPLE_EDGE) -Reducer 8 <- Reducer 7 (SIMPLE_EDGE) +Reducer 6 <- Map 1 (SIMPLE_EDGE) +Reducer 7 <- Reducer 6 (SIMPLE_EDGE) +Reducer 8 <- Map 1 (SIMPLE_EDGE) Stage-0 Fetch Operator @@ -2529,26 +2522,6 @@ Stage-0 predicate:(not CASE WHEN ((_col3 = 0)) THEN (false) WHEN (_col3 is null) THEN (false) WHEN (_col7 is not null) THEN (true) WHEN (_col0 is null) THEN (null) WHEN ((_col4 < _col3)) THEN (true) ELSE (false) END) Merge Join Operator [MERGEJOIN_44] (rows=5 width=126) Conds:RS_30._col0, _col1=RS_31._col0, _col1(Left Outer),Output:["_col0","_col1","_col3","_col4","_col7"] - <-Reducer 10 [SIMPLE_EDGE] llap - SHUFFLE [RS_31] - PartitionCols:_col0, _col1 - Select Operator [SEL_26] (rows=1 width=110) - Output:["_col0","_col1","_col2"] - Filter Operator [FIL_25] (rows=1 width=110) - predicate:_col0 is not null - Select Operator [SEL_24] (rows=1 width=110) - Output:["_col0","_col1"] - Filter Operator [FIL_41] (rows=1 width=114) - predicate:((_col1 = _col1) and ((_col2 - _col1) > 600.0)) - Group By Operator [GBY_22] (rows=5 width=114) - Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)"],keys:KEY._col0 - <-Map 9 [SIMPLE_EDGE] llap - SHUFFLE [RS_21] - PartitionCols:_col0 - Group By Operator [GBY_20] (rows=5 width=114) - Output:["_col0","_col1","_col2"],aggregations:["min(p_retailprice)","max(p_retailprice)"],keys:p_mfgr - TableScan [TS_18] (rows=26 width=106) - default@part,part,Tbl:COMPLETE,Col:COMPLETE,Output:["p_mfgr","p_retailprice"] <-Reducer 3 [SIMPLE_EDGE] llap SHUFFLE [RS_30] PartitionCols:_col0, _col1 @@ -2568,12 +2541,12 @@ Stage-0 Output:["p_mfgr","p_retailprice"] TableScan [TS_0] (rows=26 width=106) default@part,b,Tbl:COMPLETE,Col:COMPLETE,Output:["p_mfgr","p_retailprice"] - <-Reducer 8 [SIMPLE_EDGE] llap + <-Reducer 7 [SIMPLE_EDGE] llap SHUFFLE [RS_28] PartitionCols:_col0 Group By Operator [GBY_16] (rows=1 width=24) Output:["_col0","_col1","_col2"],aggregations:["count(VALUE._col0)","count(VALUE._col1)"],keys:KEY._col0 - <-Reducer 7 [SIMPLE_EDGE] llap + <-Reducer 6 [SIMPLE_EDGE] llap SHUFFLE [RS_15] PartitionCols:_col0 Group By Operator [GBY_14] (rows=1 width=24) @@ -2584,15 +2557,33 @@ Stage-0 predicate:((_col1 = _col1) and ((_col2 - _col1) > 600.0)) Group By Operator [GBY_10] (rows=5 width=114) Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)"],keys:KEY._col0 - <-Map 6 [SIMPLE_EDGE] llap + <-Map 1 [SIMPLE_EDGE] llap SHUFFLE [RS_9] PartitionCols:_col0 Group By Operator [GBY_8] (rows=5 width=114) Output:["_col0","_col1","_col2"],aggregations:["min(p_retailprice)","max(p_retailprice)"],keys:p_mfgr Select Operator [SEL_7] (rows=26 width=106) Output:["p_mfgr","p_retailprice"] - TableScan [TS_6] (rows=26 width=106) - default@part,part,Tbl:COMPLETE,Col:COMPLETE,Output:["p_mfgr","p_retailprice"] + Please refer to the previous TableScan [TS_0] + <-Reducer 8 [SIMPLE_EDGE] llap + SHUFFLE [RS_31] + PartitionCols:_col0, _col1 + Select Operator [SEL_26] (rows=1 width=110) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_25] (rows=1 width=110) + predicate:_col0 is not null + Select Operator [SEL_24] (rows=1 width=110) + Output:["_col0","_col1"] + Filter Operator [FIL_41] (rows=1 width=114) + predicate:((_col1 = _col1) and ((_col2 - _col1) > 600.0)) + Group By Operator [GBY_22] (rows=5 width=114) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)"],keys:KEY._col0 + <-Map 1 [SIMPLE_EDGE] llap + SHUFFLE [RS_21] + PartitionCols:_col0 + Group By Operator [GBY_20] (rows=5 width=114) + Output:["_col0","_col1","_col2"],aggregations:["min(p_retailprice)","max(p_retailprice)"],keys:p_mfgr + Please refer to the previous TableScan [TS_0] PREHOOK: query: explain select count(c_int) over(), sum(c_float) over(), max(c_int) over(), min(c_int) over(), row_number() over(), rank() over(), dense_rank() over(), percent_rank() over(), lead(c_int, 2, c_int) over(), lag(c_float, 2, c_float) over() from cbo_t1 PREHOOK: type: QUERY diff --git ql/src/test/results/clientpositive/llap/explainuser_2.q.out ql/src/test/results/clientpositive/llap/explainuser_2.q.out index 2a27479..e3f70b0 100644 --- ql/src/test/results/clientpositive/llap/explainuser_2.q.out +++ ql/src/test/results/clientpositive/llap/explainuser_2.q.out @@ -288,15 +288,15 @@ POSTHOOK: type: QUERY Plan optimized by CBO. Vertex dependency in root stage -Reducer 10 <- Map 14 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) -Reducer 11 <- Reducer 10 (SIMPLE_EDGE), Reducer 16 (SIMPLE_EDGE) -Reducer 16 <- Map 15 (SIMPLE_EDGE), Map 17 (SIMPLE_EDGE) +Reducer 10 <- Map 15 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) +Reducer 12 <- Map 11 (SIMPLE_EDGE), Map 13 (SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) -Reducer 3 <- Reducer 11 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) -Reducer 8 <- Map 12 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) -Reducer 9 <- Map 13 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) +Reducer 7 <- Map 6 (SIMPLE_EDGE), Reducer 12 (SIMPLE_EDGE) +Reducer 8 <- Map 14 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) +Reducer 9 <- Reducer 10 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) Stage-0 Fetch Operator @@ -319,7 +319,30 @@ Stage-0 Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["count(_col13)","count(_col21)","count(_col3)"],keys:_col12, _col20, _col2 Merge Join Operator [MERGEJOIN_97] (rows=363 width=534) Conds:RS_44._col1, _col3=RS_45._col15, _col17(Inner),Output:["_col2","_col3","_col12","_col13","_col20","_col21"] - <-Reducer 11 [SIMPLE_EDGE] llap + <-Reducer 2 [SIMPLE_EDGE] llap + SHUFFLE [RS_44] + PartitionCols:_col1, _col3 + Merge Join Operator [MERGEJOIN_91] (rows=99 width=269) + Conds:RS_41._col0=RS_42._col0(Inner),Output:["_col1","_col2","_col3"] + <-Map 6 [SIMPLE_EDGE] llap + SHUFFLE [RS_42] + PartitionCols:_col0 + Select Operator [SEL_5] (rows=7 width=178) + Output:["_col0"] + Filter Operator [FIL_84] (rows=7 width=178) + predicate:((value) IN ('2000Q1', '2000Q2', '2000Q3') and key is not null) + TableScan [TS_3] (rows=500 width=178) + default@src,d3,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] + <-Map 1 [SIMPLE_EDGE] llap + SHUFFLE [RS_41] + PartitionCols:_col0 + Select Operator [SEL_2] (rows=170 width=356) + Output:["_col0","_col1","_col2","_col3"] + Filter Operator [FIL_83] (rows=170 width=356) + predicate:(v2 is not null and v3 is not null and k1 is not null) + TableScan [TS_0] (rows=170 width=356) + default@cs,cs,Tbl:COMPLETE,Col:COMPLETE,Output:["k1","v2","k3","v3"] + <-Reducer 9 [SIMPLE_EDGE] llap SHUFFLE [RS_45] PartitionCols:_col15, _col17 Select Operator [SEL_40] (rows=180 width=447) @@ -327,6 +350,28 @@ Stage-0 Merge Join Operator [MERGEJOIN_96] (rows=180 width=447) Conds:RS_37._col6, _col4=RS_38._col4, _col2(Inner),Output:["_col2","_col3","_col14","_col15","_col17"] <-Reducer 10 [SIMPLE_EDGE] llap + SHUFFLE [RS_38] + PartitionCols:_col4, _col2 + Merge Join Operator [MERGEJOIN_95] (rows=18 width=356) + Conds:RS_24._col0=RS_25._col0(Inner),Output:["_col2","_col3","_col4","_col5"] + <-Map 6 [SIMPLE_EDGE] llap + SHUFFLE [RS_25] + PartitionCols:_col0 + Select Operator [SEL_23] (rows=7 width=178) + Output:["_col0"] + Filter Operator [FIL_90] (rows=7 width=178) + predicate:((value) IN ('2000Q1', '2000Q2', '2000Q3') and key is not null) + Please refer to the previous TableScan [TS_3] + <-Map 15 [SIMPLE_EDGE] llap + SHUFFLE [RS_24] + PartitionCols:_col0 + Select Operator [SEL_20] (rows=8 width=531) + Output:["_col0","_col2","_col3","_col4","_col5"] + Filter Operator [FIL_89] (rows=8 width=534) + predicate:((v1 = 'srv1') and k2 is not null and k3 is not null and v2 is not null and v3 is not null and k1 is not null) + TableScan [TS_18] (rows=85 width=534) + default@sr,sr,Tbl:COMPLETE,Col:COMPLETE,Output:["k1","v1","k2","v2","k3","v3"] + <-Reducer 8 [SIMPLE_EDGE] llap SHUFFLE [RS_37] PartitionCols:_col6, _col4 Merge Join Operator [MERGEJOIN_94] (rows=40 width=352) @@ -340,35 +385,25 @@ Stage-0 predicate:((key = 'src1key') and value is not null) TableScan [TS_15] (rows=25 width=175) default@src1,src1,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] - <-Reducer 9 [SIMPLE_EDGE] llap + <-Reducer 7 [SIMPLE_EDGE] llap SHUFFLE [RS_34] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_93] (rows=40 width=352) Conds:RS_31._col2=RS_32._col0(Inner),Output:["_col2","_col3","_col4","_col6"] - <-Map 13 [SIMPLE_EDGE] llap + <-Map 6 [SIMPLE_EDGE] llap SHUFFLE [RS_32] PartitionCols:_col0 Select Operator [SEL_14] (rows=2 width=178) Output:["_col0"] Filter Operator [FIL_87] (rows=2 width=178) predicate:((value = 'd1value') and key is not null) - TableScan [TS_12] (rows=500 width=178) - default@src,d1,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] - <-Reducer 8 [SIMPLE_EDGE] llap + Please refer to the previous TableScan [TS_3] + <-Reducer 12 [SIMPLE_EDGE] llap SHUFFLE [RS_31] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_92] (rows=40 width=352) Conds:RS_28._col1=RS_29._col3(Inner),Output:["_col2","_col3","_col4","_col6"] - <-Map 12 [SIMPLE_EDGE] llap - SHUFFLE [RS_29] - PartitionCols:_col3 - Select Operator [SEL_11] (rows=8 width=531) - Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_86] (rows=8 width=534) - predicate:((v3 = 'ssv3') and k2 is not null and k3 is not null and k1 is not null and v1 is not null and v2 is not null) - TableScan [TS_9] (rows=85 width=534) - default@ss,ss,Tbl:COMPLETE,Col:COMPLETE,Output:["k1","v1","k2","v2","k3","v3"] - <-Map 7 [SIMPLE_EDGE] llap + <-Map 11 [SIMPLE_EDGE] llap SHUFFLE [RS_28] PartitionCols:_col1 Select Operator [SEL_8] (rows=10 width=185) @@ -377,52 +412,15 @@ Stage-0 predicate:((key = 'srcpartkey') and value is not null) TableScan [TS_6] (rows=2000 width=178) default@srcpart,srcpart,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] - <-Reducer 16 [SIMPLE_EDGE] llap - SHUFFLE [RS_38] - PartitionCols:_col4, _col2 - Merge Join Operator [MERGEJOIN_95] (rows=18 width=356) - Conds:RS_24._col0=RS_25._col0(Inner),Output:["_col2","_col3","_col4","_col5"] - <-Map 15 [SIMPLE_EDGE] llap - SHUFFLE [RS_24] - PartitionCols:_col0 - Select Operator [SEL_20] (rows=8 width=531) - Output:["_col0","_col2","_col3","_col4","_col5"] - Filter Operator [FIL_89] (rows=8 width=534) - predicate:((v1 = 'srv1') and k2 is not null and k3 is not null and v2 is not null and v3 is not null and k1 is not null) - TableScan [TS_18] (rows=85 width=534) - default@sr,sr,Tbl:COMPLETE,Col:COMPLETE,Output:["k1","v1","k2","v2","k3","v3"] - <-Map 17 [SIMPLE_EDGE] llap - SHUFFLE [RS_25] - PartitionCols:_col0 - Select Operator [SEL_23] (rows=7 width=178) - Output:["_col0"] - Filter Operator [FIL_90] (rows=7 width=178) - predicate:((value) IN ('2000Q1', '2000Q2', '2000Q3') and key is not null) - TableScan [TS_21] (rows=500 width=178) - default@src,d2,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] - <-Reducer 2 [SIMPLE_EDGE] llap - SHUFFLE [RS_44] - PartitionCols:_col1, _col3 - Merge Join Operator [MERGEJOIN_91] (rows=99 width=269) - Conds:RS_41._col0=RS_42._col0(Inner),Output:["_col1","_col2","_col3"] - <-Map 1 [SIMPLE_EDGE] llap - SHUFFLE [RS_41] - PartitionCols:_col0 - Select Operator [SEL_2] (rows=170 width=356) - Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_83] (rows=170 width=356) - predicate:(v2 is not null and v3 is not null and k1 is not null) - TableScan [TS_0] (rows=170 width=356) - default@cs,cs,Tbl:COMPLETE,Col:COMPLETE,Output:["k1","v2","k3","v3"] - <-Map 6 [SIMPLE_EDGE] llap - SHUFFLE [RS_42] - PartitionCols:_col0 - Select Operator [SEL_5] (rows=7 width=178) - Output:["_col0"] - Filter Operator [FIL_84] (rows=7 width=178) - predicate:((value) IN ('2000Q1', '2000Q2', '2000Q3') and key is not null) - TableScan [TS_3] (rows=500 width=178) - default@src,d3,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] + <-Map 13 [SIMPLE_EDGE] llap + SHUFFLE [RS_29] + PartitionCols:_col3 + Select Operator [SEL_11] (rows=8 width=531) + Output:["_col0","_col1","_col2","_col3","_col4"] + Filter Operator [FIL_86] (rows=8 width=534) + predicate:((v3 = 'ssv3') and k2 is not null and k3 is not null and k1 is not null and v1 is not null and v2 is not null) + TableScan [TS_9] (rows=85 width=534) + default@ss,ss,Tbl:COMPLETE,Col:COMPLETE,Output:["k1","v1","k2","v2","k3","v3"] PREHOOK: query: explain SELECT x.key, z.value, y.value @@ -446,15 +444,15 @@ Plan optimized by CBO. Vertex dependency in root stage Map 1 <- Union 2 (CONTAINS) -Map 11 <- Union 12 (CONTAINS) -Map 16 <- Union 12 (CONTAINS) +Map 13 <- Union 14 (CONTAINS) +Map 16 <- Union 14 (CONTAINS) Map 8 <- Union 2 (CONTAINS) -Reducer 13 <- Union 12 (SIMPLE_EDGE) -Reducer 14 <- Map 17 (SIMPLE_EDGE), Reducer 13 (SIMPLE_EDGE) -Reducer 15 <- Map 18 (SIMPLE_EDGE), Reducer 14 (SIMPLE_EDGE), Union 6 (CONTAINS) +Reducer 10 <- Map 9 (SIMPLE_EDGE), Reducer 15 (SIMPLE_EDGE) +Reducer 11 <- Map 17 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE), Union 6 (CONTAINS) +Reducer 15 <- Union 14 (SIMPLE_EDGE) Reducer 3 <- Union 2 (SIMPLE_EDGE) Reducer 4 <- Map 9 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Map 10 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE), Union 6 (CONTAINS) +Reducer 5 <- Map 12 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE), Union 6 (CONTAINS) Reducer 7 <- Union 6 (SIMPLE_EDGE) Stage-0 @@ -466,7 +464,7 @@ Stage-0 Group By Operator [GBY_57] (rows=28 width=177) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 <-Union 6 [SIMPLE_EDGE] - <-Reducer 15 [CONTAINS] llap + <-Reducer 11 [CONTAINS] llap Reduce Output Operator [RS_56] PartitionCols:_col0, _col1 Group By Operator [GBY_55] (rows=28 width=177) @@ -475,7 +473,7 @@ Stage-0 Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_85] (rows=73 width=177) Conds:RS_48._col2=RS_49._col0(Inner),Output:["_col1","_col2"] - <-Map 18 [SIMPLE_EDGE] llap + <-Map 17 [SIMPLE_EDGE] llap SHUFFLE [RS_49] PartitionCols:_col0 Select Operator [SEL_44] (rows=500 width=87) @@ -484,29 +482,29 @@ Stage-0 predicate:key is not null TableScan [TS_42] (rows=500 width=87) default@src,y,Tbl:COMPLETE,Col:COMPLETE,Output:["key"] - <-Reducer 14 [SIMPLE_EDGE] llap + <-Reducer 10 [SIMPLE_EDGE] llap SHUFFLE [RS_48] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_84] (rows=30 width=177) Conds:RS_45._col1=RS_46._col1(Inner),Output:["_col1","_col2"] - <-Map 17 [SIMPLE_EDGE] llap + <-Map 9 [SIMPLE_EDGE] llap SHUFFLE [RS_46] PartitionCols:_col1 Select Operator [SEL_41] (rows=25 width=175) Output:["_col0","_col1"] Filter Operator [FIL_80] (rows=25 width=175) predicate:(key is not null and value is not null) - TableScan [TS_39] (rows=25 width=175) + TableScan [TS_13] (rows=25 width=175) default@src1,x,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] - <-Reducer 13 [SIMPLE_EDGE] llap + <-Reducer 15 [SIMPLE_EDGE] llap SHUFFLE [RS_45] PartitionCols:_col1 Select Operator [SEL_38] (rows=262 width=178) Output:["_col1"] Group By Operator [GBY_37] (rows=262 width=178) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 12 [SIMPLE_EDGE] - <-Map 11 [CONTAINS] llap + <-Union 14 [SIMPLE_EDGE] + <-Map 13 [CONTAINS] llap Reduce Output Operator [RS_36] PartitionCols:_col0, _col1 Group By Operator [GBY_35] (rows=262 width=178) @@ -537,7 +535,7 @@ Stage-0 Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_83] (rows=73 width=177) Conds:RS_22._col2=RS_23._col0(Inner),Output:["_col1","_col2"] - <-Map 10 [SIMPLE_EDGE] llap + <-Map 12 [SIMPLE_EDGE] llap SHUFFLE [RS_23] PartitionCols:_col0 Select Operator [SEL_18] (rows=500 width=87) @@ -558,8 +556,7 @@ Stage-0 Output:["_col0","_col1"] Filter Operator [FIL_76] (rows=25 width=175) predicate:(key is not null and value is not null) - TableScan [TS_13] (rows=25 width=175) - default@src1,x,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] + Please refer to the previous TableScan [TS_13] <-Reducer 3 [SIMPLE_EDGE] llap SHUFFLE [RS_19] PartitionCols:_col1 @@ -622,25 +619,25 @@ Plan optimized by CBO. Vertex dependency in root stage Map 1 <- Union 2 (CONTAINS) Map 10 <- Union 2 (CONTAINS) -Map 13 <- Union 14 (CONTAINS) -Map 20 <- Union 14 (CONTAINS) -Map 21 <- Union 16 (CONTAINS) -Map 24 <- Union 25 (CONTAINS) -Map 33 <- Union 25 (CONTAINS) -Map 34 <- Union 27 (CONTAINS) -Map 35 <- Union 29 (CONTAINS) -Reducer 15 <- Union 14 (SIMPLE_EDGE), Union 16 (CONTAINS) -Reducer 17 <- Union 16 (SIMPLE_EDGE) -Reducer 18 <- Map 22 (SIMPLE_EDGE), Reducer 17 (SIMPLE_EDGE) -Reducer 19 <- Map 23 (SIMPLE_EDGE), Reducer 18 (SIMPLE_EDGE), Union 6 (CONTAINS) -Reducer 26 <- Union 25 (SIMPLE_EDGE), Union 27 (CONTAINS) -Reducer 28 <- Union 27 (SIMPLE_EDGE), Union 29 (CONTAINS) +Map 17 <- Union 18 (CONTAINS) +Map 22 <- Union 18 (CONTAINS) +Map 23 <- Union 20 (CONTAINS) +Map 25 <- Union 26 (CONTAINS) +Map 32 <- Union 26 (CONTAINS) +Map 33 <- Union 28 (CONTAINS) +Map 34 <- Union 30 (CONTAINS) +Reducer 12 <- Map 11 (SIMPLE_EDGE), Reducer 21 (SIMPLE_EDGE) +Reducer 13 <- Map 24 (SIMPLE_EDGE), Reducer 12 (SIMPLE_EDGE), Union 6 (CONTAINS) +Reducer 14 <- Map 11 (SIMPLE_EDGE), Reducer 31 (SIMPLE_EDGE) +Reducer 15 <- Map 16 (SIMPLE_EDGE), Reducer 14 (SIMPLE_EDGE), Union 8 (CONTAINS) +Reducer 19 <- Union 18 (SIMPLE_EDGE), Union 20 (CONTAINS) +Reducer 21 <- Union 20 (SIMPLE_EDGE) +Reducer 27 <- Union 26 (SIMPLE_EDGE), Union 28 (CONTAINS) +Reducer 29 <- Union 28 (SIMPLE_EDGE), Union 30 (CONTAINS) Reducer 3 <- Union 2 (SIMPLE_EDGE) -Reducer 30 <- Union 29 (SIMPLE_EDGE) -Reducer 31 <- Map 36 (SIMPLE_EDGE), Reducer 30 (SIMPLE_EDGE) -Reducer 32 <- Map 37 (SIMPLE_EDGE), Reducer 31 (SIMPLE_EDGE), Union 8 (CONTAINS) +Reducer 31 <- Union 30 (SIMPLE_EDGE) Reducer 4 <- Map 11 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Map 12 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE), Union 6 (CONTAINS) +Reducer 5 <- Map 16 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE), Union 6 (CONTAINS) Reducer 7 <- Union 6 (SIMPLE_EDGE), Union 8 (CONTAINS) Reducer 9 <- Union 8 (SIMPLE_EDGE) @@ -653,7 +650,7 @@ Stage-0 Group By Operator [GBY_120] (rows=107 width=177) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 <-Union 8 [SIMPLE_EDGE] - <-Reducer 32 [CONTAINS] llap + <-Reducer 15 [CONTAINS] llap Reduce Output Operator [RS_119] PartitionCols:_col0, _col1 Group By Operator [GBY_118] (rows=107 width=177) @@ -662,38 +659,38 @@ Stage-0 Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_170] (rows=124 width=177) Conds:RS_111._col2=RS_112._col0(Inner),Output:["_col2","_col5"] - <-Map 37 [SIMPLE_EDGE] llap + <-Map 16 [SIMPLE_EDGE] llap SHUFFLE [RS_112] PartitionCols:_col0 Select Operator [SEL_107] (rows=500 width=178) Output:["_col0","_col1"] Filter Operator [FIL_164] (rows=500 width=178) predicate:key is not null - TableScan [TS_105] (rows=500 width=178) + TableScan [TS_16] (rows=500 width=178) default@src,y,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] - <-Reducer 31 [SIMPLE_EDGE] llap + <-Reducer 14 [SIMPLE_EDGE] llap SHUFFLE [RS_111] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_169] (rows=51 width=86) Conds:RS_108._col1=RS_109._col1(Inner),Output:["_col2"] - <-Map 36 [SIMPLE_EDGE] llap + <-Map 11 [SIMPLE_EDGE] llap SHUFFLE [RS_109] PartitionCols:_col1 Select Operator [SEL_104] (rows=25 width=175) Output:["_col0","_col1"] Filter Operator [FIL_163] (rows=25 width=175) predicate:(key is not null and value is not null) - TableScan [TS_102] (rows=25 width=175) + TableScan [TS_13] (rows=25 width=175) default@src1,x,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] - <-Reducer 30 [SIMPLE_EDGE] llap + <-Reducer 31 [SIMPLE_EDGE] llap SHUFFLE [RS_108] PartitionCols:_col1 Select Operator [SEL_101] (rows=440 width=178) Output:["_col1"] Group By Operator [GBY_100] (rows=440 width=178) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 29 [SIMPLE_EDGE] - <-Map 35 [CONTAINS] llap + <-Union 30 [SIMPLE_EDGE] + <-Map 34 [CONTAINS] llap Reduce Output Operator [RS_99] PartitionCols:_col0, _col1 Group By Operator [GBY_98] (rows=440 width=178) @@ -704,7 +701,7 @@ Stage-0 predicate:value is not null TableScan [TS_92] (rows=500 width=178) Output:["key","value"] - <-Reducer 28 [CONTAINS] llap + <-Reducer 29 [CONTAINS] llap Reduce Output Operator [RS_99] PartitionCols:_col0, _col1 Group By Operator [GBY_98] (rows=440 width=178) @@ -713,8 +710,8 @@ Stage-0 Output:["_col0","_col1"] Group By Operator [GBY_90] (rows=381 width=178) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 27 [SIMPLE_EDGE] - <-Map 34 [CONTAINS] llap + <-Union 28 [SIMPLE_EDGE] + <-Map 33 [CONTAINS] llap Reduce Output Operator [RS_89] PartitionCols:_col0, _col1 Group By Operator [GBY_88] (rows=381 width=178) @@ -725,7 +722,7 @@ Stage-0 predicate:value is not null TableScan [TS_82] (rows=500 width=178) Output:["key","value"] - <-Reducer 26 [CONTAINS] llap + <-Reducer 27 [CONTAINS] llap Reduce Output Operator [RS_89] PartitionCols:_col0, _col1 Group By Operator [GBY_88] (rows=381 width=178) @@ -734,8 +731,8 @@ Stage-0 Output:["_col0","_col1"] Group By Operator [GBY_80] (rows=262 width=178) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 25 [SIMPLE_EDGE] - <-Map 24 [CONTAINS] llap + <-Union 26 [SIMPLE_EDGE] + <-Map 25 [CONTAINS] llap Reduce Output Operator [RS_79] PartitionCols:_col0, _col1 Group By Operator [GBY_78] (rows=262 width=178) @@ -746,7 +743,7 @@ Stage-0 predicate:value is not null TableScan [TS_69] (rows=25 width=175) Output:["key","value"] - <-Map 33 [CONTAINS] llap + <-Map 32 [CONTAINS] llap Reduce Output Operator [RS_79] PartitionCols:_col0, _col1 Group By Operator [GBY_78] (rows=262 width=178) @@ -765,7 +762,7 @@ Stage-0 Group By Operator [GBY_67] (rows=90 width=177) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 <-Union 6 [SIMPLE_EDGE] - <-Reducer 19 [CONTAINS] llap + <-Reducer 13 [CONTAINS] llap Reduce Output Operator [RS_66] PartitionCols:_col0, _col1 Group By Operator [GBY_65] (rows=90 width=177) @@ -774,7 +771,7 @@ Stage-0 Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_168] (rows=107 width=177) Conds:RS_58._col2=RS_59._col0(Inner),Output:["_col2","_col5"] - <-Map 23 [SIMPLE_EDGE] llap + <-Map 24 [SIMPLE_EDGE] llap SHUFFLE [RS_59] PartitionCols:_col0 Select Operator [SEL_54] (rows=500 width=178) @@ -783,29 +780,28 @@ Stage-0 predicate:key is not null TableScan [TS_52] (rows=500 width=178) default@src,y,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] - <-Reducer 18 [SIMPLE_EDGE] llap + <-Reducer 12 [SIMPLE_EDGE] llap SHUFFLE [RS_58] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_167] (rows=44 width=86) Conds:RS_55._col1=RS_56._col1(Inner),Output:["_col2"] - <-Map 22 [SIMPLE_EDGE] llap + <-Map 11 [SIMPLE_EDGE] llap SHUFFLE [RS_56] PartitionCols:_col1 Select Operator [SEL_51] (rows=25 width=175) Output:["_col0","_col1"] Filter Operator [FIL_157] (rows=25 width=175) predicate:(key is not null and value is not null) - TableScan [TS_49] (rows=25 width=175) - default@src1,x,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] - <-Reducer 17 [SIMPLE_EDGE] llap + Please refer to the previous TableScan [TS_13] + <-Reducer 21 [SIMPLE_EDGE] llap SHUFFLE [RS_55] PartitionCols:_col1 Select Operator [SEL_48] (rows=381 width=178) Output:["_col1"] Group By Operator [GBY_47] (rows=381 width=178) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 16 [SIMPLE_EDGE] - <-Map 21 [CONTAINS] llap + <-Union 20 [SIMPLE_EDGE] + <-Map 23 [CONTAINS] llap Reduce Output Operator [RS_46] PartitionCols:_col0, _col1 Group By Operator [GBY_45] (rows=381 width=178) @@ -816,7 +812,7 @@ Stage-0 predicate:value is not null TableScan [TS_39] (rows=500 width=178) Output:["key","value"] - <-Reducer 15 [CONTAINS] llap + <-Reducer 19 [CONTAINS] llap Reduce Output Operator [RS_46] PartitionCols:_col0, _col1 Group By Operator [GBY_45] (rows=381 width=178) @@ -825,8 +821,8 @@ Stage-0 Output:["_col0","_col1"] Group By Operator [GBY_37] (rows=262 width=178) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 14 [SIMPLE_EDGE] - <-Map 13 [CONTAINS] llap + <-Union 18 [SIMPLE_EDGE] + <-Map 17 [CONTAINS] llap Reduce Output Operator [RS_36] PartitionCols:_col0, _col1 Group By Operator [GBY_35] (rows=262 width=178) @@ -837,7 +833,7 @@ Stage-0 predicate:value is not null TableScan [TS_26] (rows=25 width=175) Output:["key","value"] - <-Map 20 [CONTAINS] llap + <-Map 22 [CONTAINS] llap Reduce Output Operator [RS_36] PartitionCols:_col0, _col1 Group By Operator [GBY_35] (rows=262 width=178) @@ -857,15 +853,14 @@ Stage-0 Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_166] (rows=73 width=177) Conds:RS_22._col2=RS_23._col0(Inner),Output:["_col2","_col5"] - <-Map 12 [SIMPLE_EDGE] llap + <-Map 16 [SIMPLE_EDGE] llap SHUFFLE [RS_23] PartitionCols:_col0 Select Operator [SEL_18] (rows=500 width=178) Output:["_col0","_col1"] Filter Operator [FIL_153] (rows=500 width=178) predicate:key is not null - TableScan [TS_16] (rows=500 width=178) - default@src,y,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] + Please refer to the previous TableScan [TS_16] <-Reducer 4 [SIMPLE_EDGE] llap SHUFFLE [RS_22] PartitionCols:_col2 @@ -878,8 +873,7 @@ Stage-0 Output:["_col0","_col1"] Filter Operator [FIL_152] (rows=25 width=175) predicate:(key is not null and value is not null) - TableScan [TS_13] (rows=25 width=175) - default@src1,x,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] + Please refer to the previous TableScan [TS_13] <-Reducer 3 [SIMPLE_EDGE] llap SHUFFLE [RS_19] PartitionCols:_col1 @@ -1326,7 +1320,7 @@ Reducer 13 <- Union 12 (SIMPLE_EDGE), Union 14 (CONTAINS) Reducer 15 <- Map 18 (BROADCAST_EDGE), Map 19 (BROADCAST_EDGE), Union 14 (SIMPLE_EDGE), Union 4 (CONTAINS) Reducer 22 <- Union 21 (SIMPLE_EDGE), Union 23 (CONTAINS) Reducer 24 <- Union 23 (SIMPLE_EDGE), Union 25 (CONTAINS) -Reducer 26 <- Map 30 (BROADCAST_EDGE), Map 31 (BROADCAST_EDGE), Union 25 (SIMPLE_EDGE), Union 6 (CONTAINS) +Reducer 26 <- Map 10 (BROADCAST_EDGE), Map 9 (BROADCAST_EDGE), Union 25 (SIMPLE_EDGE), Union 6 (CONTAINS) Reducer 3 <- Map 10 (BROADCAST_EDGE), Map 9 (BROADCAST_EDGE), Union 2 (SIMPLE_EDGE), Union 4 (CONTAINS) Reducer 5 <- Union 4 (SIMPLE_EDGE), Union 6 (CONTAINS) Reducer 7 <- Union 6 (SIMPLE_EDGE) @@ -1349,25 +1343,25 @@ Stage-0 Output:["_col0","_col1"] Map Join Operator [MAPJOIN_170] (rows=550 width=10) Conds:MAPJOIN_169._col2=RS_112._col0(Inner),Output:["_col2","_col5"] - <-Map 31 [BROADCAST_EDGE] llap + <-Map 10 [BROADCAST_EDGE] llap BROADCAST [RS_112] PartitionCols:_col0 Select Operator [SEL_107] (rows=500 width=10) Output:["_col0","_col1"] Filter Operator [FIL_164] (rows=500 width=10) predicate:key is not null - TableScan [TS_105] (rows=500 width=10) + TableScan [TS_16] (rows=500 width=10) default@src,y,Tbl:COMPLETE,Col:NONE,Output:["key","value"] <-Map Join Operator [MAPJOIN_169] (rows=484 width=10) Conds:SEL_101._col1=RS_109._col1(Inner),Output:["_col2"] - <-Map 30 [BROADCAST_EDGE] llap + <-Map 9 [BROADCAST_EDGE] llap BROADCAST [RS_109] PartitionCols:_col1 Select Operator [SEL_104] (rows=25 width=7) Output:["_col0","_col1"] Filter Operator [FIL_163] (rows=25 width=7) predicate:(key is not null and value is not null) - TableScan [TS_102] (rows=25 width=7) + TableScan [TS_13] (rows=25 width=7) default@src1,x,Tbl:COMPLETE,Col:NONE,Output:["key","value"] <-Select Operator [SEL_101] (rows=440 width=10) Output:["_col1"] @@ -1539,8 +1533,7 @@ Stage-0 Output:["_col0","_col1"] Filter Operator [FIL_153] (rows=500 width=10) predicate:key is not null - TableScan [TS_16] (rows=500 width=10) - default@src,y,Tbl:COMPLETE,Col:NONE,Output:["key","value"] + Please refer to the previous TableScan [TS_16] <-Map Join Operator [MAPJOIN_165] (rows=288 width=10) Conds:SEL_12._col1=RS_20._col1(Inner),Output:["_col2"] <-Map 9 [BROADCAST_EDGE] llap @@ -1550,8 +1543,7 @@ Stage-0 Output:["_col0","_col1"] Filter Operator [FIL_152] (rows=25 width=7) predicate:(key is not null and value is not null) - TableScan [TS_13] (rows=25 width=7) - default@src1,x,Tbl:COMPLETE,Col:NONE,Output:["key","value"] + Please refer to the previous TableScan [TS_13] <-Select Operator [SEL_12] (rows=262 width=10) Output:["_col1"] Group By Operator [GBY_11] (rows=262 width=10) @@ -2048,36 +2040,36 @@ Plan optimized by CBO. Vertex dependency in root stage Map 1 <- Map 6 (BROADCAST_EDGE), Union 2 (CONTAINS) -Map 12 <- Union 9 (CONTAINS) -Map 13 <- Union 9 (CONTAINS) -Map 16 <- Map 17 (BROADCAST_EDGE) -Map 18 <- Map 16 (BROADCAST_EDGE), Union 4 (CONTAINS) -Map 19 <- Map 16 (BROADCAST_EDGE), Union 4 (CONTAINS) -Map 20 <- Map 16 (BROADCAST_EDGE), Union 4 (CONTAINS) -Map 21 <- Map 16 (BROADCAST_EDGE), Union 4 (CONTAINS) +Map 10 <- Union 11 (CONTAINS) +Map 12 <- Union 11 (CONTAINS) +Map 13 <- Union 11 (CONTAINS) +Map 16 <- Map 6 (BROADCAST_EDGE), Union 4 (CONTAINS) +Map 17 <- Map 6 (BROADCAST_EDGE), Union 4 (CONTAINS) +Map 18 <- Map 6 (BROADCAST_EDGE), Union 4 (CONTAINS) +Map 19 <- Map 6 (BROADCAST_EDGE), Union 4 (CONTAINS) Map 5 <- Map 6 (BROADCAST_EDGE), Union 2 (CONTAINS) -Map 8 <- Union 9 (CONTAINS) -Reducer 10 <- Map 14 (SIMPLE_EDGE), Union 9 (SIMPLE_EDGE) -Reducer 11 <- Map 15 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE), Union 4 (CONTAINS) +Map 6 <- Map 15 (BROADCAST_EDGE) Reducer 3 <- Map 7 (SIMPLE_EDGE), Union 2 (SIMPLE_EDGE), Union 4 (CONTAINS) +Reducer 8 <- Map 7 (SIMPLE_EDGE), Union 11 (SIMPLE_EDGE) +Reducer 9 <- Map 14 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE), Union 4 (CONTAINS) Stage-0 Fetch Operator limit:-1 Stage-1 Union 4 - <-Map 18 [CONTAINS] llap + <-Map 16 [CONTAINS] llap File Output Operator [FS_78] Select Operator [SEL_76] (rows=1677 width=10) Output:["_col0","_col1"] Map Join Operator [MAPJOIN_123] (rows=1677 width=10) Conds:RS_73._col1=SEL_56._col0(Inner),Output:["_col0","_col3"] - <-Map 16 [BROADCAST_EDGE] llap + <-Map 6 [BROADCAST_EDGE] llap BROADCAST [RS_73] PartitionCols:_col1 Map Join Operator [MAPJOIN_122] (rows=27 width=7) Conds:SEL_50._col0=RS_71._col0(Inner),Output:["_col0","_col1","_col3"] - <-Map 17 [BROADCAST_EDGE] llap + <-Map 15 [BROADCAST_EDGE] llap BROADCAST [RS_71] PartitionCols:_col0 Select Operator [SEL_53] (rows=25 width=7) @@ -2090,7 +2082,7 @@ Stage-0 Output:["_col0","_col1"] Filter Operator [FIL_112] (rows=25 width=7) predicate:(key is not null and value is not null) - TableScan [TS_48] (rows=25 width=7) + TableScan [TS_8] (rows=25 width=7) default@src1,x,Tbl:COMPLETE,Col:NONE,Output:["key","value"] <-Select Operator [SEL_56] (rows=25 width=7) Output:["_col0"] @@ -2098,13 +2090,13 @@ Stage-0 predicate:value is not null TableScan [TS_54] (rows=25 width=7) Output:["value"] - <-Map 19 [CONTAINS] llap + <-Map 17 [CONTAINS] llap File Output Operator [FS_78] Select Operator [SEL_76] (rows=1677 width=10) Output:["_col0","_col1"] Map Join Operator [MAPJOIN_123] (rows=1677 width=10) Conds:RS_128._col1=SEL_59._col0(Inner),Output:["_col0","_col3"] - <-Map 16 [BROADCAST_EDGE] llap + <-Map 6 [BROADCAST_EDGE] llap BROADCAST [RS_128] PartitionCols:_col1 Please refer to the previous Map Join Operator [MAPJOIN_122] @@ -2114,13 +2106,13 @@ Stage-0 predicate:value is not null TableScan [TS_57] (rows=500 width=10) Output:["value"] - <-Map 20 [CONTAINS] llap + <-Map 18 [CONTAINS] llap File Output Operator [FS_78] Select Operator [SEL_76] (rows=1677 width=10) Output:["_col0","_col1"] Map Join Operator [MAPJOIN_123] (rows=1677 width=10) Conds:RS_129._col1=SEL_64._col0(Inner),Output:["_col0","_col3"] - <-Map 16 [BROADCAST_EDGE] llap + <-Map 6 [BROADCAST_EDGE] llap BROADCAST [RS_129] PartitionCols:_col1 Please refer to the previous Map Join Operator [MAPJOIN_122] @@ -2130,13 +2122,13 @@ Stage-0 predicate:value is not null TableScan [TS_62] (rows=500 width=10) Output:["value"] - <-Map 21 [CONTAINS] llap + <-Map 19 [CONTAINS] llap File Output Operator [FS_78] Select Operator [SEL_76] (rows=1677 width=10) Output:["_col0","_col1"] Map Join Operator [MAPJOIN_123] (rows=1677 width=10) Conds:RS_130._col1=SEL_68._col0(Inner),Output:["_col0","_col3"] - <-Map 16 [BROADCAST_EDGE] llap + <-Map 6 [BROADCAST_EDGE] llap BROADCAST [RS_130] PartitionCols:_col1 Please refer to the previous Map Join Operator [MAPJOIN_122] @@ -2146,63 +2138,6 @@ Stage-0 predicate:value is not null TableScan [TS_66] (rows=500 width=10) Output:["value"] - <-Reducer 11 [CONTAINS] llap - File Output Operator [FS_78] - Select Operator [SEL_45] (rows=1239 width=10) - Output:["_col0","_col1"] - Merge Join Operator [MERGEJOIN_121] (rows=1239 width=10) - Conds:RS_42._col1=RS_43._col0(Inner),Output:["_col1","_col4"] - <-Map 15 [SIMPLE_EDGE] llap - SHUFFLE [RS_43] - PartitionCols:_col0 - Select Operator [SEL_38] (rows=500 width=10) - Output:["_col0","_col1"] - Filter Operator [FIL_111] (rows=500 width=10) - predicate:key is not null - TableScan [TS_36] (rows=500 width=10) - default@src,y,Tbl:COMPLETE,Col:NONE,Output:["key","value"] - <-Reducer 10 [SIMPLE_EDGE] llap - SHUFFLE [RS_42] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_120] (rows=1127 width=10) - Conds:Union 9._col0=RS_40._col1(Inner),Output:["_col1"] - <-Map 14 [SIMPLE_EDGE] llap - SHUFFLE [RS_40] - PartitionCols:_col1 - Select Operator [SEL_35] (rows=500 width=10) - Output:["_col0","_col1"] - Filter Operator [FIL_110] (rows=500 width=10) - predicate:(key is not null and value is not null) - TableScan [TS_33] (rows=500 width=10) - default@src,x,Tbl:COMPLETE,Col:NONE,Output:["key","value"] - <-Union 9 [SIMPLE_EDGE] - <-Map 12 [CONTAINS] llap - Reduce Output Operator [RS_39] - PartitionCols:_col0 - Select Operator [SEL_26] (rows=500 width=10) - Output:["_col0"] - Filter Operator [FIL_108] (rows=500 width=10) - predicate:value is not null - TableScan [TS_24] (rows=500 width=10) - Output:["value"] - <-Map 13 [CONTAINS] llap - Reduce Output Operator [RS_39] - PartitionCols:_col0 - Select Operator [SEL_31] (rows=500 width=10) - Output:["_col0"] - Filter Operator [FIL_109] (rows=500 width=10) - predicate:value is not null - TableScan [TS_29] (rows=500 width=10) - Output:["value"] - <-Map 8 [CONTAINS] llap - Reduce Output Operator [RS_39] - PartitionCols:_col0 - Select Operator [SEL_23] (rows=25 width=7) - Output:["_col0"] - Filter Operator [FIL_107] (rows=25 width=7) - predicate:value is not null - TableScan [TS_21] (rows=25 width=7) - Output:["value"] <-Reducer 3 [CONTAINS] llap File Output Operator [FS_78] Select Operator [SEL_20] (rows=634 width=10) @@ -2231,8 +2166,7 @@ Stage-0 Output:["_col0","_col1"] Filter Operator [FIL_105] (rows=25 width=7) predicate:(key is not null and value is not null) - TableScan [TS_8] (rows=25 width=7) - default@src1,x,Tbl:COMPLETE,Col:NONE,Output:["key","value"] + Please refer to the previous TableScan [TS_8] <-Select Operator [SEL_2] (rows=25 width=7) Output:["_col0"] Filter Operator [FIL_103] (rows=25 width=7) @@ -2254,6 +2188,62 @@ Stage-0 predicate:value is not null TableScan [TS_3] (rows=500 width=10) Output:["value"] + <-Reducer 9 [CONTAINS] llap + File Output Operator [FS_78] + Select Operator [SEL_45] (rows=1239 width=10) + Output:["_col0","_col1"] + Merge Join Operator [MERGEJOIN_121] (rows=1239 width=10) + Conds:RS_42._col1=RS_43._col0(Inner),Output:["_col1","_col4"] + <-Map 14 [SIMPLE_EDGE] llap + SHUFFLE [RS_43] + PartitionCols:_col0 + Select Operator [SEL_38] (rows=500 width=10) + Output:["_col0","_col1"] + Filter Operator [FIL_111] (rows=500 width=10) + predicate:key is not null + TableScan [TS_36] (rows=500 width=10) + default@src,y,Tbl:COMPLETE,Col:NONE,Output:["key","value"] + <-Reducer 8 [SIMPLE_EDGE] llap + SHUFFLE [RS_42] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_120] (rows=1127 width=10) + Conds:Union 11._col0=RS_40._col1(Inner),Output:["_col1"] + <-Map 7 [SIMPLE_EDGE] llap + SHUFFLE [RS_40] + PartitionCols:_col1 + Select Operator [SEL_35] (rows=500 width=10) + Output:["_col0","_col1"] + Filter Operator [FIL_110] (rows=500 width=10) + predicate:(key is not null and value is not null) + Please refer to the previous TableScan [TS_11] + <-Union 11 [SIMPLE_EDGE] + <-Map 10 [CONTAINS] llap + Reduce Output Operator [RS_39] + PartitionCols:_col0 + Select Operator [SEL_23] (rows=25 width=7) + Output:["_col0"] + Filter Operator [FIL_107] (rows=25 width=7) + predicate:value is not null + TableScan [TS_21] (rows=25 width=7) + Output:["value"] + <-Map 12 [CONTAINS] llap + Reduce Output Operator [RS_39] + PartitionCols:_col0 + Select Operator [SEL_26] (rows=500 width=10) + Output:["_col0"] + Filter Operator [FIL_108] (rows=500 width=10) + predicate:value is not null + TableScan [TS_24] (rows=500 width=10) + Output:["value"] + <-Map 13 [CONTAINS] llap + Reduce Output Operator [RS_39] + PartitionCols:_col0 + Select Operator [SEL_31] (rows=500 width=10) + Output:["_col0"] + Filter Operator [FIL_109] (rows=500 width=10) + predicate:value is not null + TableScan [TS_29] (rows=500 width=10) + Output:["value"] PREHOOK: query: explain SELECT x.key, y.value @@ -2285,23 +2275,23 @@ Plan optimized by CBO. Vertex dependency in root stage Map 1 <- Union 2 (CONTAINS) -Map 12 <- Union 13 (CONTAINS) -Map 19 <- Union 13 (CONTAINS) -Map 20 <- Union 15 (CONTAINS) -Map 23 <- Map 24 (BROADCAST_EDGE) -Map 25 <- Union 26 (CONTAINS) -Map 32 <- Union 26 (CONTAINS) -Map 33 <- Union 28 (CONTAINS) -Map 34 <- Union 30 (CONTAINS) +Map 10 <- Map 22 (BROADCAST_EDGE) +Map 14 <- Union 15 (CONTAINS) +Map 19 <- Union 15 (CONTAINS) +Map 20 <- Union 17 (CONTAINS) +Map 23 <- Union 24 (CONTAINS) +Map 30 <- Union 24 (CONTAINS) +Map 31 <- Union 26 (CONTAINS) +Map 32 <- Union 28 (CONTAINS) Map 9 <- Union 2 (CONTAINS) -Reducer 14 <- Union 13 (SIMPLE_EDGE), Union 15 (CONTAINS) -Reducer 16 <- Union 15 (SIMPLE_EDGE) -Reducer 17 <- Map 21 (SIMPLE_EDGE), Reducer 16 (SIMPLE_EDGE) -Reducer 18 <- Map 22 (SIMPLE_EDGE), Reducer 17 (SIMPLE_EDGE), Union 5 (CONTAINS) +Reducer 12 <- Map 11 (SIMPLE_EDGE), Reducer 18 (SIMPLE_EDGE) +Reducer 13 <- Map 21 (SIMPLE_EDGE), Reducer 12 (SIMPLE_EDGE), Union 5 (CONTAINS) +Reducer 16 <- Union 15 (SIMPLE_EDGE), Union 17 (CONTAINS) +Reducer 18 <- Union 17 (SIMPLE_EDGE) +Reducer 25 <- Union 24 (SIMPLE_EDGE), Union 26 (CONTAINS) Reducer 27 <- Union 26 (SIMPLE_EDGE), Union 28 (CONTAINS) -Reducer 29 <- Union 28 (SIMPLE_EDGE), Union 30 (CONTAINS) +Reducer 29 <- Map 10 (BROADCAST_EDGE), Union 28 (SIMPLE_EDGE), Union 7 (CONTAINS) Reducer 3 <- Map 10 (BROADCAST_EDGE), Union 2 (SIMPLE_EDGE) -Reducer 31 <- Map 23 (BROADCAST_EDGE), Union 30 (SIMPLE_EDGE), Union 7 (CONTAINS) Reducer 4 <- Map 11 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE), Union 5 (CONTAINS) Reducer 6 <- Union 5 (SIMPLE_EDGE), Union 7 (CONTAINS) Reducer 8 <- Union 7 (SIMPLE_EDGE) @@ -2315,7 +2305,7 @@ Stage-0 Group By Operator [GBY_120] (rows=530 width=10) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 <-Union 7 [SIMPLE_EDGE] - <-Reducer 31 [CONTAINS] llap + <-Reducer 29 [CONTAINS] llap Reduce Output Operator [RS_119] PartitionCols:_col0, _col1 Group By Operator [GBY_118] (rows=1061 width=10) @@ -2324,12 +2314,12 @@ Stage-0 Output:["_col0","_col1"] Map Join Operator [MAPJOIN_167] (rows=484 width=10) Conds:RS_111._col1=SEL_107._col1(Inner),Output:["_col0","_col3"] - <-Map 23 [BROADCAST_EDGE] llap + <-Map 10 [BROADCAST_EDGE] llap BROADCAST [RS_111] PartitionCols:_col1 Map Join Operator [MAPJOIN_166] (rows=27 width=7) Conds:SEL_71._col0=RS_109._col0(Inner),Output:["_col0","_col1","_col3"] - <-Map 24 [BROADCAST_EDGE] llap + <-Map 22 [BROADCAST_EDGE] llap BROADCAST [RS_109] PartitionCols:_col0 Select Operator [SEL_74] (rows=25 width=7) @@ -2342,14 +2332,14 @@ Stage-0 Output:["_col0","_col1"] Filter Operator [FIL_156] (rows=25 width=7) predicate:(key is not null and value is not null) - TableScan [TS_69] (rows=25 width=7) + TableScan [TS_13] (rows=25 width=7) default@src1,x,Tbl:COMPLETE,Col:NONE,Output:["key","value"] <-Select Operator [SEL_107] (rows=440 width=10) Output:["_col1"] Group By Operator [GBY_106] (rows=440 width=10) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 30 [SIMPLE_EDGE] - <-Map 34 [CONTAINS] llap + <-Union 28 [SIMPLE_EDGE] + <-Map 32 [CONTAINS] llap Reduce Output Operator [RS_105] PartitionCols:_col0, _col1 Group By Operator [GBY_104] (rows=881 width=10) @@ -2360,7 +2350,7 @@ Stage-0 predicate:value is not null TableScan [TS_98] (rows=500 width=10) Output:["key","value"] - <-Reducer 29 [CONTAINS] llap + <-Reducer 27 [CONTAINS] llap Reduce Output Operator [RS_105] PartitionCols:_col0, _col1 Group By Operator [GBY_104] (rows=881 width=10) @@ -2369,8 +2359,8 @@ Stage-0 Output:["_col0","_col1"] Group By Operator [GBY_96] (rows=381 width=10) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 28 [SIMPLE_EDGE] - <-Map 33 [CONTAINS] llap + <-Union 26 [SIMPLE_EDGE] + <-Map 31 [CONTAINS] llap Reduce Output Operator [RS_95] PartitionCols:_col0, _col1 Group By Operator [GBY_94] (rows=762 width=10) @@ -2381,7 +2371,7 @@ Stage-0 predicate:value is not null TableScan [TS_88] (rows=500 width=10) Output:["key","value"] - <-Reducer 27 [CONTAINS] llap + <-Reducer 25 [CONTAINS] llap Reduce Output Operator [RS_95] PartitionCols:_col0, _col1 Group By Operator [GBY_94] (rows=762 width=10) @@ -2390,8 +2380,8 @@ Stage-0 Output:["_col0","_col1"] Group By Operator [GBY_86] (rows=262 width=10) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 26 [SIMPLE_EDGE] - <-Map 25 [CONTAINS] llap + <-Union 24 [SIMPLE_EDGE] + <-Map 23 [CONTAINS] llap Reduce Output Operator [RS_85] PartitionCols:_col0, _col1 Group By Operator [GBY_84] (rows=525 width=10) @@ -2402,7 +2392,7 @@ Stage-0 predicate:value is not null TableScan [TS_75] (rows=25 width=7) Output:["key","value"] - <-Map 32 [CONTAINS] llap + <-Map 30 [CONTAINS] llap Reduce Output Operator [RS_85] PartitionCols:_col0, _col1 Group By Operator [GBY_84] (rows=525 width=10) @@ -2421,7 +2411,7 @@ Stage-0 Group By Operator [GBY_67] (rows=577 width=10) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 <-Union 5 [SIMPLE_EDGE] - <-Reducer 18 [CONTAINS] llap + <-Reducer 13 [CONTAINS] llap Reduce Output Operator [RS_66] PartitionCols:_col0, _col1 Group By Operator [GBY_65] (rows=1155 width=10) @@ -2430,7 +2420,7 @@ Stage-0 Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_165] (rows=605 width=10) Conds:RS_58._col2=RS_59._col0(Inner),Output:["_col2","_col5"] - <-Map 22 [SIMPLE_EDGE] llap + <-Map 21 [SIMPLE_EDGE] llap SHUFFLE [RS_59] PartitionCols:_col0 Select Operator [SEL_54] (rows=500 width=10) @@ -2439,28 +2429,28 @@ Stage-0 predicate:key is not null TableScan [TS_52] (rows=500 width=10) default@src,y,Tbl:COMPLETE,Col:NONE,Output:["key","value"] - <-Reducer 17 [SIMPLE_EDGE] llap + <-Reducer 12 [SIMPLE_EDGE] llap SHUFFLE [RS_58] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_164] (rows=550 width=10) Conds:RS_55._col1=RS_56._col1(Inner),Output:["_col2"] - <-Map 21 [SIMPLE_EDGE] llap + <-Map 11 [SIMPLE_EDGE] llap SHUFFLE [RS_56] PartitionCols:_col1 Select Operator [SEL_51] (rows=500 width=10) Output:["_col0","_col1"] Filter Operator [FIL_154] (rows=500 width=10) predicate:(key is not null and value is not null) - TableScan [TS_49] (rows=500 width=10) - default@src,x,Tbl:COMPLETE,Col:NONE,Output:["key","value"] - <-Reducer 16 [SIMPLE_EDGE] llap + TableScan [TS_16] (rows=500 width=10) + default@src,y,Tbl:COMPLETE,Col:NONE,Output:["key","value"] + <-Reducer 18 [SIMPLE_EDGE] llap SHUFFLE [RS_55] PartitionCols:_col1 Select Operator [SEL_48] (rows=381 width=10) Output:["_col1"] Group By Operator [GBY_47] (rows=381 width=10) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 15 [SIMPLE_EDGE] + <-Union 17 [SIMPLE_EDGE] <-Map 20 [CONTAINS] llap Reduce Output Operator [RS_46] PartitionCols:_col0, _col1 @@ -2472,7 +2462,7 @@ Stage-0 predicate:value is not null TableScan [TS_39] (rows=500 width=10) Output:["key","value"] - <-Reducer 14 [CONTAINS] llap + <-Reducer 16 [CONTAINS] llap Reduce Output Operator [RS_46] PartitionCols:_col0, _col1 Group By Operator [GBY_45] (rows=762 width=10) @@ -2481,8 +2471,8 @@ Stage-0 Output:["_col0","_col1"] Group By Operator [GBY_37] (rows=262 width=10) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 13 [SIMPLE_EDGE] - <-Map 12 [CONTAINS] llap + <-Union 15 [SIMPLE_EDGE] + <-Map 14 [CONTAINS] llap Reduce Output Operator [RS_36] PartitionCols:_col0, _col1 Group By Operator [GBY_35] (rows=525 width=10) @@ -2520,8 +2510,7 @@ Stage-0 Output:["_col0","_col1"] Filter Operator [FIL_150] (rows=500 width=10) predicate:key is not null - TableScan [TS_16] (rows=500 width=10) - default@src,y,Tbl:COMPLETE,Col:NONE,Output:["key","value"] + Please refer to the previous TableScan [TS_16] <-Reducer 3 [SIMPLE_EDGE] llap SHUFFLE [RS_22] PartitionCols:_col2 @@ -2534,8 +2523,7 @@ Stage-0 Output:["_col0","_col1"] Filter Operator [FIL_149] (rows=25 width=7) predicate:(key is not null and value is not null) - TableScan [TS_13] (rows=25 width=7) - default@src1,x,Tbl:COMPLETE,Col:NONE,Output:["key","value"] + Please refer to the previous TableScan [TS_13] <-Select Operator [SEL_12] (rows=262 width=10) Output:["_col1"] Group By Operator [GBY_11] (rows=262 width=10) @@ -2630,18 +2618,18 @@ Plan optimized by CBO. Vertex dependency in root stage Map 1 <- Map 6 (BROADCAST_EDGE), Union 2 (CONTAINS) -Map 12 <- Union 9 (CONTAINS) -Map 13 <- Union 9 (CONTAINS) -Map 16 <- Map 17 (BROADCAST_EDGE) -Map 18 <- Map 16 (BROADCAST_EDGE), Union 4 (CONTAINS) -Map 19 <- Map 16 (BROADCAST_EDGE), Union 4 (CONTAINS) -Map 20 <- Map 16 (BROADCAST_EDGE), Union 4 (CONTAINS) -Map 21 <- Map 16 (BROADCAST_EDGE), Union 4 (CONTAINS) +Map 10 <- Union 11 (CONTAINS) +Map 12 <- Union 11 (CONTAINS) +Map 13 <- Union 11 (CONTAINS) +Map 16 <- Map 6 (BROADCAST_EDGE), Union 4 (CONTAINS) +Map 17 <- Map 6 (BROADCAST_EDGE), Union 4 (CONTAINS) +Map 18 <- Map 6 (BROADCAST_EDGE), Union 4 (CONTAINS) +Map 19 <- Map 6 (BROADCAST_EDGE), Union 4 (CONTAINS) Map 5 <- Map 6 (BROADCAST_EDGE), Union 2 (CONTAINS) -Map 8 <- Union 9 (CONTAINS) -Reducer 10 <- Map 14 (SIMPLE_EDGE), Union 9 (SIMPLE_EDGE) -Reducer 11 <- Map 15 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE), Union 4 (CONTAINS) +Map 6 <- Map 15 (BROADCAST_EDGE) Reducer 3 <- Map 7 (SIMPLE_EDGE), Union 2 (SIMPLE_EDGE), Union 4 (CONTAINS) +Reducer 8 <- Map 7 (SIMPLE_EDGE), Union 11 (SIMPLE_EDGE) +Reducer 9 <- Map 14 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE), Union 4 (CONTAINS) Stage-5 Stats-Aggr Operator @@ -2652,19 +2640,19 @@ Stage-5 Dependency Collection{} Stage-3 Union 4 - <-Map 18 [CONTAINS] llap + <-Map 16 [CONTAINS] llap File Output Operator [FS_79] table:{"name:":"default.a"} Select Operator [SEL_76] (rows=1677 width=10) Output:["_col0","_col1"] Map Join Operator [MAPJOIN_128] (rows=1677 width=10) Conds:RS_73._col1=SEL_56._col0(Inner),Output:["_col0","_col3"] - <-Map 16 [BROADCAST_EDGE] llap + <-Map 6 [BROADCAST_EDGE] llap BROADCAST [RS_73] PartitionCols:_col1 Map Join Operator [MAPJOIN_127] (rows=27 width=7) Conds:SEL_50._col0=RS_71._col0(Inner),Output:["_col0","_col1","_col3"] - <-Map 17 [BROADCAST_EDGE] llap + <-Map 15 [BROADCAST_EDGE] llap BROADCAST [RS_71] PartitionCols:_col0 Select Operator [SEL_53] (rows=25 width=7) @@ -2677,7 +2665,7 @@ Stage-5 Output:["_col0","_col1"] Filter Operator [FIL_117] (rows=25 width=7) predicate:(key is not null and value is not null) - TableScan [TS_48] (rows=25 width=7) + TableScan [TS_8] (rows=25 width=7) default@src1,x,Tbl:COMPLETE,Col:NONE,Output:["key","value"] <-Select Operator [SEL_56] (rows=25 width=7) Output:["_col0"] @@ -2691,14 +2679,14 @@ Stage-5 File Output Operator [FS_83] table:{"name:":"default.c"} Please refer to the previous Select Operator [SEL_76] - <-Map 19 [CONTAINS] llap + <-Map 17 [CONTAINS] llap File Output Operator [FS_79] table:{"name:":"default.a"} Select Operator [SEL_76] (rows=1677 width=10) Output:["_col0","_col1"] Map Join Operator [MAPJOIN_128] (rows=1677 width=10) Conds:RS_133._col1=SEL_59._col0(Inner),Output:["_col0","_col3"] - <-Map 16 [BROADCAST_EDGE] llap + <-Map 6 [BROADCAST_EDGE] llap BROADCAST [RS_133] PartitionCols:_col1 Please refer to the previous Map Join Operator [MAPJOIN_127] @@ -2714,14 +2702,14 @@ Stage-5 File Output Operator [FS_83] table:{"name:":"default.c"} Please refer to the previous Select Operator [SEL_76] - <-Map 20 [CONTAINS] llap + <-Map 18 [CONTAINS] llap File Output Operator [FS_79] table:{"name:":"default.a"} Select Operator [SEL_76] (rows=1677 width=10) Output:["_col0","_col1"] Map Join Operator [MAPJOIN_128] (rows=1677 width=10) Conds:RS_134._col1=SEL_64._col0(Inner),Output:["_col0","_col3"] - <-Map 16 [BROADCAST_EDGE] llap + <-Map 6 [BROADCAST_EDGE] llap BROADCAST [RS_134] PartitionCols:_col1 Please refer to the previous Map Join Operator [MAPJOIN_127] @@ -2737,14 +2725,14 @@ Stage-5 File Output Operator [FS_83] table:{"name:":"default.c"} Please refer to the previous Select Operator [SEL_76] - <-Map 21 [CONTAINS] llap + <-Map 19 [CONTAINS] llap File Output Operator [FS_79] table:{"name:":"default.a"} Select Operator [SEL_76] (rows=1677 width=10) Output:["_col0","_col1"] Map Join Operator [MAPJOIN_128] (rows=1677 width=10) Conds:RS_135._col1=SEL_68._col0(Inner),Output:["_col0","_col3"] - <-Map 16 [BROADCAST_EDGE] llap + <-Map 6 [BROADCAST_EDGE] llap BROADCAST [RS_135] PartitionCols:_col1 Please refer to the previous Map Join Operator [MAPJOIN_127] @@ -2760,70 +2748,6 @@ Stage-5 File Output Operator [FS_83] table:{"name:":"default.c"} Please refer to the previous Select Operator [SEL_76] - <-Reducer 11 [CONTAINS] llap - File Output Operator [FS_79] - table:{"name:":"default.a"} - Select Operator [SEL_45] (rows=1239 width=10) - Output:["_col0","_col1"] - Merge Join Operator [MERGEJOIN_126] (rows=1239 width=10) - Conds:RS_42._col1=RS_43._col0(Inner),Output:["_col1","_col4"] - <-Map 15 [SIMPLE_EDGE] llap - SHUFFLE [RS_43] - PartitionCols:_col0 - Select Operator [SEL_38] (rows=500 width=10) - Output:["_col0","_col1"] - Filter Operator [FIL_116] (rows=500 width=10) - predicate:key is not null - TableScan [TS_36] (rows=500 width=10) - default@src,y,Tbl:COMPLETE,Col:NONE,Output:["key","value"] - <-Reducer 10 [SIMPLE_EDGE] llap - SHUFFLE [RS_42] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_125] (rows=1127 width=10) - Conds:Union 9._col0=RS_40._col1(Inner),Output:["_col1"] - <-Map 14 [SIMPLE_EDGE] llap - SHUFFLE [RS_40] - PartitionCols:_col1 - Select Operator [SEL_35] (rows=500 width=10) - Output:["_col0","_col1"] - Filter Operator [FIL_115] (rows=500 width=10) - predicate:(key is not null and value is not null) - TableScan [TS_33] (rows=500 width=10) - default@src,x,Tbl:COMPLETE,Col:NONE,Output:["key","value"] - <-Union 9 [SIMPLE_EDGE] - <-Map 12 [CONTAINS] llap - Reduce Output Operator [RS_39] - PartitionCols:_col0 - Select Operator [SEL_26] (rows=500 width=10) - Output:["_col0"] - Filter Operator [FIL_113] (rows=500 width=10) - predicate:value is not null - TableScan [TS_24] (rows=500 width=10) - Output:["value"] - <-Map 13 [CONTAINS] llap - Reduce Output Operator [RS_39] - PartitionCols:_col0 - Select Operator [SEL_31] (rows=500 width=10) - Output:["_col0"] - Filter Operator [FIL_114] (rows=500 width=10) - predicate:value is not null - TableScan [TS_29] (rows=500 width=10) - Output:["value"] - <-Map 8 [CONTAINS] llap - Reduce Output Operator [RS_39] - PartitionCols:_col0 - Select Operator [SEL_23] (rows=25 width=7) - Output:["_col0"] - Filter Operator [FIL_112] (rows=25 width=7) - predicate:value is not null - TableScan [TS_21] (rows=25 width=7) - Output:["value"] - File Output Operator [FS_81] - table:{"name:":"default.b"} - Please refer to the previous Select Operator [SEL_45] - File Output Operator [FS_83] - table:{"name:":"default.c"} - Please refer to the previous Select Operator [SEL_45] <-Reducer 3 [CONTAINS] llap File Output Operator [FS_79] table:{"name:":"default.a"} @@ -2853,8 +2777,7 @@ Stage-5 Output:["_col0","_col1"] Filter Operator [FIL_110] (rows=25 width=7) predicate:(key is not null and value is not null) - TableScan [TS_8] (rows=25 width=7) - default@src1,x,Tbl:COMPLETE,Col:NONE,Output:["key","value"] + Please refer to the previous TableScan [TS_8] <-Select Operator [SEL_2] (rows=25 width=7) Output:["_col0"] Filter Operator [FIL_108] (rows=25 width=7) @@ -2882,6 +2805,69 @@ Stage-5 File Output Operator [FS_83] table:{"name:":"default.c"} Please refer to the previous Select Operator [SEL_20] + <-Reducer 9 [CONTAINS] llap + File Output Operator [FS_79] + table:{"name:":"default.a"} + Select Operator [SEL_45] (rows=1239 width=10) + Output:["_col0","_col1"] + Merge Join Operator [MERGEJOIN_126] (rows=1239 width=10) + Conds:RS_42._col1=RS_43._col0(Inner),Output:["_col1","_col4"] + <-Map 14 [SIMPLE_EDGE] llap + SHUFFLE [RS_43] + PartitionCols:_col0 + Select Operator [SEL_38] (rows=500 width=10) + Output:["_col0","_col1"] + Filter Operator [FIL_116] (rows=500 width=10) + predicate:key is not null + TableScan [TS_36] (rows=500 width=10) + default@src,y,Tbl:COMPLETE,Col:NONE,Output:["key","value"] + <-Reducer 8 [SIMPLE_EDGE] llap + SHUFFLE [RS_42] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_125] (rows=1127 width=10) + Conds:Union 11._col0=RS_40._col1(Inner),Output:["_col1"] + <-Map 7 [SIMPLE_EDGE] llap + SHUFFLE [RS_40] + PartitionCols:_col1 + Select Operator [SEL_35] (rows=500 width=10) + Output:["_col0","_col1"] + Filter Operator [FIL_115] (rows=500 width=10) + predicate:(key is not null and value is not null) + Please refer to the previous TableScan [TS_11] + <-Union 11 [SIMPLE_EDGE] + <-Map 10 [CONTAINS] llap + Reduce Output Operator [RS_39] + PartitionCols:_col0 + Select Operator [SEL_23] (rows=25 width=7) + Output:["_col0"] + Filter Operator [FIL_112] (rows=25 width=7) + predicate:value is not null + TableScan [TS_21] (rows=25 width=7) + Output:["value"] + <-Map 12 [CONTAINS] llap + Reduce Output Operator [RS_39] + PartitionCols:_col0 + Select Operator [SEL_26] (rows=500 width=10) + Output:["_col0"] + Filter Operator [FIL_113] (rows=500 width=10) + predicate:value is not null + TableScan [TS_24] (rows=500 width=10) + Output:["value"] + <-Map 13 [CONTAINS] llap + Reduce Output Operator [RS_39] + PartitionCols:_col0 + Select Operator [SEL_31] (rows=500 width=10) + Output:["_col0"] + Filter Operator [FIL_114] (rows=500 width=10) + predicate:value is not null + TableScan [TS_29] (rows=500 width=10) + Output:["value"] + File Output Operator [FS_81] + table:{"name:":"default.b"} + Please refer to the previous Select Operator [SEL_45] + File Output Operator [FS_83] + table:{"name:":"default.c"} + Please refer to the previous Select Operator [SEL_45] Stage-6 Stats-Aggr Operator Stage-1 @@ -2931,23 +2917,23 @@ Plan optimized by CBO. Vertex dependency in root stage Map 1 <- Union 2 (CONTAINS) -Map 12 <- Union 13 (CONTAINS) -Map 19 <- Union 13 (CONTAINS) -Map 20 <- Union 15 (CONTAINS) -Map 23 <- Map 24 (BROADCAST_EDGE) -Map 25 <- Union 26 (CONTAINS) -Map 32 <- Union 26 (CONTAINS) -Map 33 <- Union 28 (CONTAINS) -Map 34 <- Union 30 (CONTAINS) +Map 10 <- Map 22 (BROADCAST_EDGE) +Map 14 <- Union 15 (CONTAINS) +Map 19 <- Union 15 (CONTAINS) +Map 20 <- Union 17 (CONTAINS) +Map 23 <- Union 24 (CONTAINS) +Map 30 <- Union 24 (CONTAINS) +Map 31 <- Union 26 (CONTAINS) +Map 32 <- Union 28 (CONTAINS) Map 9 <- Union 2 (CONTAINS) -Reducer 14 <- Union 13 (SIMPLE_EDGE), Union 15 (CONTAINS) -Reducer 16 <- Union 15 (SIMPLE_EDGE) -Reducer 17 <- Map 21 (SIMPLE_EDGE), Reducer 16 (SIMPLE_EDGE) -Reducer 18 <- Map 22 (SIMPLE_EDGE), Reducer 17 (SIMPLE_EDGE), Union 5 (CONTAINS) +Reducer 12 <- Map 11 (SIMPLE_EDGE), Reducer 18 (SIMPLE_EDGE) +Reducer 13 <- Map 21 (SIMPLE_EDGE), Reducer 12 (SIMPLE_EDGE), Union 5 (CONTAINS) +Reducer 16 <- Union 15 (SIMPLE_EDGE), Union 17 (CONTAINS) +Reducer 18 <- Union 17 (SIMPLE_EDGE) +Reducer 25 <- Union 24 (SIMPLE_EDGE), Union 26 (CONTAINS) Reducer 27 <- Union 26 (SIMPLE_EDGE), Union 28 (CONTAINS) -Reducer 29 <- Union 28 (SIMPLE_EDGE), Union 30 (CONTAINS) +Reducer 29 <- Map 10 (BROADCAST_EDGE), Union 28 (SIMPLE_EDGE), Union 7 (CONTAINS) Reducer 3 <- Map 10 (BROADCAST_EDGE), Union 2 (SIMPLE_EDGE) -Reducer 31 <- Map 23 (BROADCAST_EDGE), Union 30 (SIMPLE_EDGE), Union 7 (CONTAINS) Reducer 4 <- Map 11 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE), Union 5 (CONTAINS) Reducer 6 <- Union 5 (SIMPLE_EDGE), Union 7 (CONTAINS) Reducer 8 <- Union 7 (SIMPLE_EDGE) @@ -2966,7 +2952,7 @@ Stage-5 Group By Operator [GBY_120] (rows=530 width=10) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 <-Union 7 [SIMPLE_EDGE] - <-Reducer 31 [CONTAINS] llap + <-Reducer 29 [CONTAINS] llap Reduce Output Operator [RS_119] PartitionCols:_col0, _col1 Group By Operator [GBY_118] (rows=1061 width=10) @@ -2975,12 +2961,12 @@ Stage-5 Output:["_col0","_col1"] Map Join Operator [MAPJOIN_172] (rows=484 width=10) Conds:RS_111._col1=SEL_107._col1(Inner),Output:["_col0","_col3"] - <-Map 23 [BROADCAST_EDGE] llap + <-Map 10 [BROADCAST_EDGE] llap BROADCAST [RS_111] PartitionCols:_col1 Map Join Operator [MAPJOIN_171] (rows=27 width=7) Conds:SEL_71._col0=RS_109._col0(Inner),Output:["_col0","_col1","_col3"] - <-Map 24 [BROADCAST_EDGE] llap + <-Map 22 [BROADCAST_EDGE] llap BROADCAST [RS_109] PartitionCols:_col0 Select Operator [SEL_74] (rows=25 width=7) @@ -2993,14 +2979,14 @@ Stage-5 Output:["_col0","_col1"] Filter Operator [FIL_161] (rows=25 width=7) predicate:(key is not null and value is not null) - TableScan [TS_69] (rows=25 width=7) + TableScan [TS_13] (rows=25 width=7) default@src1,x,Tbl:COMPLETE,Col:NONE,Output:["key","value"] <-Select Operator [SEL_107] (rows=440 width=10) Output:["_col1"] Group By Operator [GBY_106] (rows=440 width=10) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 30 [SIMPLE_EDGE] - <-Map 34 [CONTAINS] llap + <-Union 28 [SIMPLE_EDGE] + <-Map 32 [CONTAINS] llap Reduce Output Operator [RS_105] PartitionCols:_col0, _col1 Group By Operator [GBY_104] (rows=881 width=10) @@ -3011,7 +2997,7 @@ Stage-5 predicate:value is not null TableScan [TS_98] (rows=500 width=10) Output:["key","value"] - <-Reducer 29 [CONTAINS] llap + <-Reducer 27 [CONTAINS] llap Reduce Output Operator [RS_105] PartitionCols:_col0, _col1 Group By Operator [GBY_104] (rows=881 width=10) @@ -3020,8 +3006,8 @@ Stage-5 Output:["_col0","_col1"] Group By Operator [GBY_96] (rows=381 width=10) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 28 [SIMPLE_EDGE] - <-Map 33 [CONTAINS] llap + <-Union 26 [SIMPLE_EDGE] + <-Map 31 [CONTAINS] llap Reduce Output Operator [RS_95] PartitionCols:_col0, _col1 Group By Operator [GBY_94] (rows=762 width=10) @@ -3032,7 +3018,7 @@ Stage-5 predicate:value is not null TableScan [TS_88] (rows=500 width=10) Output:["key","value"] - <-Reducer 27 [CONTAINS] llap + <-Reducer 25 [CONTAINS] llap Reduce Output Operator [RS_95] PartitionCols:_col0, _col1 Group By Operator [GBY_94] (rows=762 width=10) @@ -3041,8 +3027,8 @@ Stage-5 Output:["_col0","_col1"] Group By Operator [GBY_86] (rows=262 width=10) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 26 [SIMPLE_EDGE] - <-Map 25 [CONTAINS] llap + <-Union 24 [SIMPLE_EDGE] + <-Map 23 [CONTAINS] llap Reduce Output Operator [RS_85] PartitionCols:_col0, _col1 Group By Operator [GBY_84] (rows=525 width=10) @@ -3053,7 +3039,7 @@ Stage-5 predicate:value is not null TableScan [TS_75] (rows=25 width=7) Output:["key","value"] - <-Map 32 [CONTAINS] llap + <-Map 30 [CONTAINS] llap Reduce Output Operator [RS_85] PartitionCols:_col0, _col1 Group By Operator [GBY_84] (rows=525 width=10) @@ -3072,7 +3058,7 @@ Stage-5 Group By Operator [GBY_67] (rows=577 width=10) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 <-Union 5 [SIMPLE_EDGE] - <-Reducer 18 [CONTAINS] llap + <-Reducer 13 [CONTAINS] llap Reduce Output Operator [RS_66] PartitionCols:_col0, _col1 Group By Operator [GBY_65] (rows=1155 width=10) @@ -3081,7 +3067,7 @@ Stage-5 Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_170] (rows=605 width=10) Conds:RS_58._col2=RS_59._col0(Inner),Output:["_col2","_col5"] - <-Map 22 [SIMPLE_EDGE] llap + <-Map 21 [SIMPLE_EDGE] llap SHUFFLE [RS_59] PartitionCols:_col0 Select Operator [SEL_54] (rows=500 width=10) @@ -3090,28 +3076,28 @@ Stage-5 predicate:key is not null TableScan [TS_52] (rows=500 width=10) default@src,y,Tbl:COMPLETE,Col:NONE,Output:["key","value"] - <-Reducer 17 [SIMPLE_EDGE] llap + <-Reducer 12 [SIMPLE_EDGE] llap SHUFFLE [RS_58] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_169] (rows=550 width=10) Conds:RS_55._col1=RS_56._col1(Inner),Output:["_col2"] - <-Map 21 [SIMPLE_EDGE] llap + <-Map 11 [SIMPLE_EDGE] llap SHUFFLE [RS_56] PartitionCols:_col1 Select Operator [SEL_51] (rows=500 width=10) Output:["_col0","_col1"] Filter Operator [FIL_159] (rows=500 width=10) predicate:(key is not null and value is not null) - TableScan [TS_49] (rows=500 width=10) - default@src,x,Tbl:COMPLETE,Col:NONE,Output:["key","value"] - <-Reducer 16 [SIMPLE_EDGE] llap + TableScan [TS_16] (rows=500 width=10) + default@src,y,Tbl:COMPLETE,Col:NONE,Output:["key","value"] + <-Reducer 18 [SIMPLE_EDGE] llap SHUFFLE [RS_55] PartitionCols:_col1 Select Operator [SEL_48] (rows=381 width=10) Output:["_col1"] Group By Operator [GBY_47] (rows=381 width=10) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 15 [SIMPLE_EDGE] + <-Union 17 [SIMPLE_EDGE] <-Map 20 [CONTAINS] llap Reduce Output Operator [RS_46] PartitionCols:_col0, _col1 @@ -3123,7 +3109,7 @@ Stage-5 predicate:value is not null TableScan [TS_39] (rows=500 width=10) Output:["key","value"] - <-Reducer 14 [CONTAINS] llap + <-Reducer 16 [CONTAINS] llap Reduce Output Operator [RS_46] PartitionCols:_col0, _col1 Group By Operator [GBY_45] (rows=762 width=10) @@ -3132,8 +3118,8 @@ Stage-5 Output:["_col0","_col1"] Group By Operator [GBY_37] (rows=262 width=10) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 13 [SIMPLE_EDGE] - <-Map 12 [CONTAINS] llap + <-Union 15 [SIMPLE_EDGE] + <-Map 14 [CONTAINS] llap Reduce Output Operator [RS_36] PartitionCols:_col0, _col1 Group By Operator [GBY_35] (rows=525 width=10) @@ -3171,8 +3157,7 @@ Stage-5 Output:["_col0","_col1"] Filter Operator [FIL_155] (rows=500 width=10) predicate:key is not null - TableScan [TS_16] (rows=500 width=10) - default@src,y,Tbl:COMPLETE,Col:NONE,Output:["key","value"] + Please refer to the previous TableScan [TS_16] <-Reducer 3 [SIMPLE_EDGE] llap SHUFFLE [RS_22] PartitionCols:_col2 @@ -3185,8 +3170,7 @@ Stage-5 Output:["_col0","_col1"] Filter Operator [FIL_154] (rows=25 width=7) predicate:(key is not null and value is not null) - TableScan [TS_13] (rows=25 width=7) - default@src1,x,Tbl:COMPLETE,Col:NONE,Output:["key","value"] + Please refer to the previous TableScan [TS_13] <-Select Operator [SEL_12] (rows=262 width=10) Output:["_col1"] Group By Operator [GBY_11] (rows=262 width=10) diff --git ql/src/test/results/clientpositive/llap/intersect_merge.q.out ql/src/test/results/clientpositive/llap/intersect_merge.q.out index 6217785..a312966 100644 --- ql/src/test/results/clientpositive/llap/intersect_merge.q.out +++ ql/src/test/results/clientpositive/llap/intersect_merge.q.out @@ -1736,11 +1736,11 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 10 <- Map 9 (SIMPLE_EDGE), Union 7 (CONTAINS) Reducer 2 <- Map 1 (SIMPLE_EDGE), Union 3 (CONTAINS) Reducer 4 <- Union 3 (SIMPLE_EDGE) - Reducer 6 <- Map 5 (SIMPLE_EDGE), Union 7 (CONTAINS) - Reducer 8 <- Union 3 (CONTAINS), Union 7 (SIMPLE_EDGE) + Reducer 5 <- Map 1 (SIMPLE_EDGE), Union 6 (CONTAINS) + Reducer 7 <- Union 3 (CONTAINS), Union 6 (SIMPLE_EDGE) + Reducer 9 <- Map 8 (SIMPLE_EDGE), Union 6 (CONTAINS) #### A masked pattern was here #### Vertices: Map 1 @@ -1764,75 +1764,47 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: int), _col1 (type: int) Statistics: Num rows: 2 Data size: 6 Basic stats: COMPLETE Column stats: NONE value expressions: _col2 (type: bigint) - Execution mode: llap - LLAP IO: no inputs - Map 5 - Map Operator Tree: - TableScan - alias: a - Statistics: Num rows: 4 Data size: 12 Basic stats: COMPLETE Column stats: NONE Select Operator expressions: key (type: int), value (type: int) outputColumnNames: _col0, _col1 - Statistics: Num rows: 4 Data size: 12 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 2 Data size: 6 Basic stats: COMPLETE Column stats: NONE Group By Operator aggregations: count(1) keys: _col0 (type: int), _col1 (type: int) mode: hash outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 4 Data size: 12 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 2 Data size: 6 Basic stats: COMPLETE Column stats: NONE Reduce Output Operator key expressions: _col0 (type: int), _col1 (type: int) sort order: ++ Map-reduce partition columns: _col0 (type: int), _col1 (type: int) - Statistics: Num rows: 4 Data size: 12 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 2 Data size: 6 Basic stats: COMPLETE Column stats: NONE value expressions: _col2 (type: bigint) Execution mode: llap LLAP IO: no inputs - Map 9 + Map 8 Map Operator Tree: TableScan - alias: b - Statistics: Num rows: 2 Data size: 6 Basic stats: COMPLETE Column stats: NONE + alias: a + Statistics: Num rows: 4 Data size: 12 Basic stats: COMPLETE Column stats: NONE Select Operator expressions: key (type: int), value (type: int) outputColumnNames: _col0, _col1 - Statistics: Num rows: 2 Data size: 6 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 4 Data size: 12 Basic stats: COMPLETE Column stats: NONE Group By Operator aggregations: count(1) keys: _col0 (type: int), _col1 (type: int) mode: hash outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 2 Data size: 6 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 4 Data size: 12 Basic stats: COMPLETE Column stats: NONE Reduce Output Operator key expressions: _col0 (type: int), _col1 (type: int) sort order: ++ Map-reduce partition columns: _col0 (type: int), _col1 (type: int) - Statistics: Num rows: 2 Data size: 6 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 4 Data size: 12 Basic stats: COMPLETE Column stats: NONE value expressions: _col2 (type: bigint) Execution mode: llap LLAP IO: no inputs - Reducer 10 - Execution mode: llap - Reduce Operator Tree: - Group By Operator - aggregations: count(VALUE._col0) - keys: KEY._col0 (type: int), KEY._col1 (type: int) - mode: mergepartial - outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 1 Data size: 3 Basic stats: COMPLETE Column stats: NONE - Group By Operator - aggregations: count(_col2) - keys: _col0 (type: int), _col1 (type: int) - mode: hash - outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 3 Data size: 9 Basic stats: COMPLETE Column stats: NONE - Reduce Output Operator - key expressions: _col0 (type: int), _col1 (type: int) - sort order: ++ - Map-reduce partition columns: _col0 (type: int), _col1 (type: int) - Statistics: Num rows: 3 Data size: 9 Basic stats: COMPLETE Column stats: NONE - value expressions: _col2 (type: bigint) Reducer 2 Execution mode: llap Reduce Operator Tree: @@ -1884,7 +1856,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 + Reducer 5 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -1892,7 +1864,7 @@ STAGE PLANS: keys: KEY._col0 (type: int), KEY._col1 (type: int) mode: mergepartial outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 2 Data size: 6 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 1 Data size: 3 Basic stats: COMPLETE Column stats: NONE Group By Operator aggregations: count(_col2) keys: _col0 (type: int), _col1 (type: int) @@ -1905,7 +1877,7 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: int), _col1 (type: int) Statistics: Num rows: 3 Data size: 9 Basic stats: COMPLETE Column stats: NONE value expressions: _col2 (type: bigint) - Reducer 8 + Reducer 7 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -1939,10 +1911,31 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: int), _col1 (type: int) Statistics: Num rows: 2 Data size: 6 Basic stats: COMPLETE Column stats: NONE value expressions: _col2 (type: bigint), _col3 (type: bigint) + Reducer 9 + Execution mode: llap + Reduce Operator Tree: + Group By Operator + aggregations: count(VALUE._col0) + keys: KEY._col0 (type: int), KEY._col1 (type: int) + mode: mergepartial + outputColumnNames: _col0, _col1, _col2 + Statistics: Num rows: 2 Data size: 6 Basic stats: COMPLETE Column stats: NONE + Group By Operator + aggregations: count(_col2) + keys: _col0 (type: int), _col1 (type: int) + mode: hash + outputColumnNames: _col0, _col1, _col2 + Statistics: Num rows: 3 Data size: 9 Basic stats: COMPLETE Column stats: NONE + Reduce Output Operator + key expressions: _col0 (type: int), _col1 (type: int) + sort order: ++ + Map-reduce partition columns: _col0 (type: int), _col1 (type: int) + Statistics: Num rows: 3 Data size: 9 Basic stats: COMPLETE Column stats: NONE + value expressions: _col2 (type: bigint) Union 3 Vertex: Union 3 - Union 7 - Vertex: Union 7 + Union 6 + Vertex: Union 6 Stage: Stage-0 Fetch Operator diff --git ql/src/test/results/clientpositive/llap/join46.q.out ql/src/test/results/clientpositive/llap/join46.q.out index 56f6862..f8636e8 100644 --- ql/src/test/results/clientpositive/llap/join46.q.out +++ ql/src/test/results/clientpositive/llap/join46.q.out @@ -2062,9 +2062,9 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 4 (SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (CUSTOM_SIMPLE_EDGE), Reducer 6 (CUSTOM_SIMPLE_EDGE) - Reducer 6 <- Map 5 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) + Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 5 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (CUSTOM_SIMPLE_EDGE), Reducer 4 (CUSTOM_SIMPLE_EDGE) + Reducer 4 <- Map 1 (SIMPLE_EDGE), Map 5 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -2082,47 +2082,33 @@ STAGE PLANS: Map-reduce partition columns: _col1 (type: int) Statistics: Num rows: 6 Data size: 56 Basic stats: COMPLETE Column stats: NONE value expressions: _col0 (type: int), _col2 (type: string) - Execution mode: llap - LLAP IO: no inputs - Map 4 - Map Operator Tree: - TableScan - alias: test2 - Statistics: Num rows: 4 Data size: 38 Basic stats: COMPLETE Column stats: NONE Select Operator - expressions: key (type: int), value (type: int), col_2 (type: string) + expressions: key (type: int), value (type: int), col_1 (type: string) outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 4 Data size: 38 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 6 Data size: 56 Basic stats: COMPLETE Column stats: NONE Reduce Output Operator key expressions: _col1 (type: int) sort order: + Map-reduce partition columns: _col1 (type: int) - Statistics: Num rows: 4 Data size: 38 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 6 Data size: 56 Basic stats: COMPLETE Column stats: NONE value expressions: _col0 (type: int), _col2 (type: string) Execution mode: llap LLAP IO: no inputs Map 5 Map Operator Tree: TableScan - alias: test1 - Statistics: Num rows: 6 Data size: 56 Basic stats: COMPLETE Column stats: NONE + alias: test2 + Statistics: Num rows: 4 Data size: 38 Basic stats: COMPLETE Column stats: NONE Select Operator - expressions: key (type: int), value (type: int), col_1 (type: string) + expressions: key (type: int), value (type: int), col_2 (type: string) outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 6 Data size: 56 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 4 Data size: 38 Basic stats: COMPLETE Column stats: NONE Reduce Output Operator key expressions: _col1 (type: int) sort order: + Map-reduce partition columns: _col1 (type: int) - Statistics: Num rows: 6 Data size: 56 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 4 Data size: 38 Basic stats: COMPLETE Column stats: NONE value expressions: _col0 (type: int), _col2 (type: string) - Execution mode: llap - LLAP IO: no inputs - Map 7 - Map Operator Tree: - TableScan - alias: test2 - Statistics: Num rows: 4 Data size: 38 Basic stats: COMPLETE Column stats: NONE Select Operator expressions: key (type: int), value (type: int), col_2 (type: string) outputColumnNames: _col0, _col1, _col2 @@ -2170,7 +2156,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 + Reducer 4 Execution mode: llap Reduce Operator Tree: Merge Join Operator diff --git ql/src/test/results/clientpositive/llap/limit_join_transpose.q.out ql/src/test/results/clientpositive/llap/limit_join_transpose.q.out index 61b5c12..4474581 100644 --- ql/src/test/results/clientpositive/llap/limit_join_transpose.q.out +++ ql/src/test/results/clientpositive/llap/limit_join_transpose.q.out @@ -222,7 +222,7 @@ STAGE PLANS: #### A masked pattern was here #### Edges: Reducer 2 <- Map 1 (CUSTOM_SIMPLE_EDGE) - Reducer 3 <- Map 4 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) + Reducer 3 <- Map 1 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -242,13 +242,6 @@ STAGE PLANS: Statistics: Num rows: 1 Data size: 178 Basic stats: COMPLETE Column stats: COMPLETE TopN Hash Memory Usage: 0.1 value expressions: _col0 (type: string), _col1 (type: string) - Execution mode: llap - LLAP IO: no inputs - Map 4 - Map Operator Tree: - TableScan - alias: src2 - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE Select Operator expressions: key (type: string), value (type: string) outputColumnNames: _col0, _col1 @@ -348,8 +341,8 @@ STAGE PLANS: #### A masked pattern was here #### Edges: Reducer 2 <- Map 1 (CUSTOM_SIMPLE_EDGE) - Reducer 3 <- Map 5 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) - Reducer 4 <- Map 6 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) + Reducer 3 <- Map 1 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) + Reducer 4 <- Map 1 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -369,13 +362,6 @@ STAGE PLANS: Statistics: Num rows: 1 Data size: 178 Basic stats: COMPLETE Column stats: COMPLETE TopN Hash Memory Usage: 0.1 value expressions: _col0 (type: string), _col1 (type: string) - Execution mode: llap - LLAP IO: no inputs - Map 5 - Map Operator Tree: - TableScan - alias: src3 - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE Select Operator expressions: key (type: string), value (type: string) outputColumnNames: _col0, _col1 @@ -386,13 +372,6 @@ STAGE PLANS: Map-reduce partition columns: _col1 (type: string) Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col0 (type: string) - Execution mode: llap - LLAP IO: no inputs - Map 6 - Map Operator Tree: - TableScan - alias: src1 - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE Select Operator expressions: key (type: string), value (type: string) outputColumnNames: _col0, _col1 @@ -518,10 +497,10 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) - Reducer 4 <- Map 3 (CUSTOM_SIMPLE_EDGE) - Reducer 5 <- Map 7 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) - Reducer 6 <- Reducer 5 (CUSTOM_SIMPLE_EDGE) + Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) + Reducer 3 <- Map 1 (CUSTOM_SIMPLE_EDGE) + Reducer 4 <- Map 1 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) + Reducer 5 <- Reducer 4 (CUSTOM_SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -539,13 +518,6 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: string) - Execution mode: llap - LLAP IO: no inputs - Map 3 - Map Operator Tree: - TableScan - alias: src2 - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE Select Operator expressions: key (type: string), value (type: string) outputColumnNames: _col0, _col1 @@ -558,13 +530,6 @@ STAGE PLANS: Statistics: Num rows: 1 Data size: 178 Basic stats: COMPLETE Column stats: COMPLETE TopN Hash Memory Usage: 0.1 value expressions: _col0 (type: string), _col1 (type: string) - Execution mode: llap - LLAP IO: no inputs - Map 7 - Map Operator Tree: - TableScan - alias: src3 - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE Select Operator expressions: key (type: string), value (type: string) outputColumnNames: _col0, _col1 @@ -598,7 +563,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 + Reducer 3 Execution mode: llap Reduce Operator Tree: Select Operator @@ -614,7 +579,7 @@ STAGE PLANS: Map-reduce partition columns: _col1 (type: string) Statistics: Num rows: 1 Data size: 178 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col0 (type: string) - Reducer 5 + Reducer 4 Execution mode: llap Reduce Operator Tree: Merge Join Operator @@ -633,7 +598,7 @@ STAGE PLANS: Statistics: Num rows: 1 Data size: 356 Basic stats: COMPLETE Column stats: COMPLETE TopN Hash Memory Usage: 0.1 value expressions: _col0 (type: string), _col1 (type: string), _col2 (type: string), _col3 (type: string) - Reducer 6 + Reducer 5 Execution mode: llap Reduce Operator Tree: Select Operator @@ -708,9 +673,9 @@ STAGE PLANS: Edges: Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (SIMPLE_EDGE) - Reducer 5 <- Map 4 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) + Reducer 4 <- Map 1 (SIMPLE_EDGE) + Reducer 5 <- Map 7 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) - Reducer 8 <- Map 7 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -728,9 +693,19 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: string) + Select Operator + expressions: key (type: string), value (type: string) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + key expressions: _col0 (type: string) + sort order: + + Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE + TopN Hash Memory Usage: 0.1 + value expressions: _col1 (type: string) Execution mode: llap LLAP IO: no inputs - Map 4 + Map 7 Map Operator Tree: TableScan alias: src3 @@ -746,23 +721,6 @@ STAGE PLANS: Statistics: Num rows: 500 Data size: 45500 Basic stats: COMPLETE Column stats: COMPLETE Execution mode: llap LLAP IO: no inputs - Map 7 - Map Operator Tree: - TableScan - alias: src2 - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: key (type: string), value (type: string) - outputColumnNames: _col0, _col1 - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - key expressions: _col0 (type: string) - sort order: + - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE - TopN Hash Memory Usage: 0.1 - value expressions: _col1 (type: string) - Execution mode: llap - LLAP IO: no inputs Reducer 2 Execution mode: llap Reduce Operator Tree: @@ -797,6 +755,22 @@ 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: llap + Reduce Operator Tree: + Select Operator + expressions: KEY.reducesinkkey0 (type: string), VALUE._col0 (type: string) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE + Limit + Number of rows: 1 + Statistics: Num rows: 1 Data size: 178 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + key expressions: _col1 (type: string) + sort order: + + Map-reduce partition columns: _col1 (type: string) + Statistics: Num rows: 1 Data size: 178 Basic stats: COMPLETE Column stats: COMPLETE + value expressions: _col0 (type: string) Reducer 5 Execution mode: llap Reduce Operator Tree: @@ -834,22 +808,6 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 1 Data size: 178 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: string) - Reducer 8 - Execution mode: llap - Reduce Operator Tree: - Select Operator - expressions: KEY.reducesinkkey0 (type: string), VALUE._col0 (type: string) - outputColumnNames: _col0, _col1 - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE - Limit - Number of rows: 1 - Statistics: Num rows: 1 Data size: 178 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - key expressions: _col1 (type: string) - sort order: + - Map-reduce partition columns: _col1 (type: string) - Statistics: Num rows: 1 Data size: 178 Basic stats: COMPLETE Column stats: COMPLETE - value expressions: _col0 (type: string) Stage: Stage-0 Fetch Operator @@ -1154,7 +1112,7 @@ STAGE PLANS: #### A masked pattern was here #### Edges: Reducer 2 <- Map 1 (CUSTOM_SIMPLE_EDGE) - Reducer 3 <- Map 4 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) + Reducer 3 <- Map 1 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -1175,13 +1133,6 @@ STAGE PLANS: Statistics: Num rows: 1 Data size: 178 Basic stats: COMPLETE Column stats: COMPLETE TopN Hash Memory Usage: 0.1 value expressions: _col0 (type: string), _col1 (type: string) - Execution mode: llap - LLAP IO: no inputs - Map 4 - Map Operator Tree: - TableScan - alias: src2 - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE Select Operator expressions: key (type: string), value (type: string) outputColumnNames: _col0, _col1 @@ -1282,8 +1233,8 @@ STAGE PLANS: #### A masked pattern was here #### Edges: Reducer 2 <- Map 1 (CUSTOM_SIMPLE_EDGE) - Reducer 3 <- Map 5 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) - Reducer 4 <- Map 6 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) + Reducer 3 <- Map 1 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) + Reducer 4 <- Map 1 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -1304,13 +1255,6 @@ STAGE PLANS: Statistics: Num rows: 1 Data size: 178 Basic stats: COMPLETE Column stats: COMPLETE TopN Hash Memory Usage: 0.1 value expressions: _col0 (type: string), _col1 (type: string) - Execution mode: llap - LLAP IO: no inputs - Map 5 - Map Operator Tree: - TableScan - alias: src3 - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE Select Operator expressions: key (type: string), value (type: string) outputColumnNames: _col0, _col1 @@ -1321,13 +1265,6 @@ STAGE PLANS: Map-reduce partition columns: _col1 (type: string) Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col0 (type: string) - Execution mode: llap - LLAP IO: no inputs - Map 6 - Map Operator Tree: - TableScan - alias: src1 - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE Select Operator expressions: key (type: string), value (type: string) outputColumnNames: _col0, _col1 @@ -1454,10 +1391,10 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) - Reducer 4 <- Map 3 (CUSTOM_SIMPLE_EDGE) - Reducer 5 <- Map 7 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) - Reducer 6 <- Reducer 5 (CUSTOM_SIMPLE_EDGE) + Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) + Reducer 3 <- Map 1 (CUSTOM_SIMPLE_EDGE) + Reducer 4 <- Map 1 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) + Reducer 5 <- Reducer 4 (CUSTOM_SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -1475,13 +1412,6 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: string) - Execution mode: llap - LLAP IO: no inputs - Map 3 - Map Operator Tree: - TableScan - alias: src2 - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE Select Operator expressions: key (type: string), value (type: string) outputColumnNames: _col0, _col1 @@ -1495,13 +1425,6 @@ STAGE PLANS: Statistics: Num rows: 1 Data size: 178 Basic stats: COMPLETE Column stats: COMPLETE TopN Hash Memory Usage: 0.1 value expressions: _col0 (type: string), _col1 (type: string) - Execution mode: llap - LLAP IO: no inputs - Map 7 - Map Operator Tree: - TableScan - alias: src3 - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE Select Operator expressions: key (type: string), value (type: string) outputColumnNames: _col0, _col1 @@ -1536,7 +1459,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 + Reducer 3 Execution mode: llap Reduce Operator Tree: Select Operator @@ -1553,7 +1476,7 @@ STAGE PLANS: Map-reduce partition columns: _col1 (type: string) Statistics: Num rows: 1 Data size: 178 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col0 (type: string) - Reducer 5 + Reducer 4 Execution mode: llap Reduce Operator Tree: Merge Join Operator @@ -1573,7 +1496,7 @@ STAGE PLANS: Statistics: Num rows: 1 Data size: 356 Basic stats: COMPLETE Column stats: COMPLETE TopN Hash Memory Usage: 0.1 value expressions: _col0 (type: string), _col1 (type: string), _col2 (type: string), _col3 (type: string) - Reducer 6 + Reducer 5 Execution mode: llap Reduce Operator Tree: Select Operator @@ -1648,9 +1571,9 @@ STAGE PLANS: Edges: Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (SIMPLE_EDGE) - Reducer 5 <- Map 4 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) + Reducer 4 <- Map 1 (SIMPLE_EDGE) + Reducer 5 <- Map 7 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) - Reducer 8 <- Map 7 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -1668,9 +1591,19 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: string) + Select Operator + expressions: key (type: string), value (type: string) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + key expressions: _col0 (type: string) + sort order: + + Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE + TopN Hash Memory Usage: 0.1 + value expressions: _col1 (type: string) Execution mode: llap LLAP IO: no inputs - Map 4 + Map 7 Map Operator Tree: TableScan alias: src3 @@ -1686,23 +1619,6 @@ STAGE PLANS: Statistics: Num rows: 500 Data size: 45500 Basic stats: COMPLETE Column stats: COMPLETE Execution mode: llap LLAP IO: no inputs - Map 7 - Map Operator Tree: - TableScan - alias: src2 - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: key (type: string), value (type: string) - outputColumnNames: _col0, _col1 - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - key expressions: _col0 (type: string) - sort order: + - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE - TopN Hash Memory Usage: 0.1 - value expressions: _col1 (type: string) - Execution mode: llap - LLAP IO: no inputs Reducer 2 Execution mode: llap Reduce Operator Tree: @@ -1738,6 +1654,23 @@ 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: llap + Reduce Operator Tree: + Select Operator + expressions: KEY.reducesinkkey0 (type: string), VALUE._col0 (type: string) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE + Limit + Number of rows: 1 + Offset of rows: 1 + Statistics: Num rows: 1 Data size: 178 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + key expressions: _col1 (type: string) + sort order: + + Map-reduce partition columns: _col1 (type: string) + Statistics: Num rows: 1 Data size: 178 Basic stats: COMPLETE Column stats: COMPLETE + value expressions: _col0 (type: string) Reducer 5 Execution mode: llap Reduce Operator Tree: @@ -1776,23 +1709,6 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 1 Data size: 178 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: string) - Reducer 8 - Execution mode: llap - Reduce Operator Tree: - Select Operator - expressions: KEY.reducesinkkey0 (type: string), VALUE._col0 (type: string) - outputColumnNames: _col0, _col1 - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE - Limit - Number of rows: 1 - Offset of rows: 1 - Statistics: Num rows: 1 Data size: 178 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - key expressions: _col1 (type: string) - sort order: + - Map-reduce partition columns: _col1 (type: string) - Statistics: Num rows: 1 Data size: 178 Basic stats: COMPLETE Column stats: COMPLETE - value expressions: _col0 (type: string) Stage: Stage-0 Fetch Operator diff --git ql/src/test/results/clientpositive/llap/limit_pushdown.q.out ql/src/test/results/clientpositive/llap/limit_pushdown.q.out index dd54dd2..0a8df61 100644 --- ql/src/test/results/clientpositive/llap/limit_pushdown.q.out +++ ql/src/test/results/clientpositive/llap/limit_pushdown.q.out @@ -905,9 +905,9 @@ STAGE PLANS: #### A masked pattern was here #### Edges: Reducer 2 <- Map 1 (SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) - Reducer 5 <- Map 4 (SIMPLE_EDGE) - Reducer 6 <- Reducer 5 (CUSTOM_SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) + Reducer 4 <- Map 1 (SIMPLE_EDGE) + Reducer 5 <- Reducer 4 (CUSTOM_SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -932,13 +932,6 @@ STAGE PLANS: Statistics: Num rows: 205 Data size: 19475 Basic stats: COMPLETE Column stats: COMPLETE TopN Hash Memory Usage: 0.3 value expressions: _col1 (type: bigint) - Execution mode: llap - LLAP IO: no inputs - Map 4 - Map Operator Tree: - TableScan - alias: src - Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE Select Operator expressions: key (type: string) outputColumnNames: _col0 @@ -1000,7 +993,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 + Reducer 4 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -1017,7 +1010,7 @@ STAGE PLANS: Statistics: Num rows: 3 Data size: 285 Basic stats: COMPLETE Column stats: COMPLETE TopN Hash Memory Usage: 0.3 value expressions: _col0 (type: string), _col1 (type: bigint) - Reducer 6 + Reducer 5 Execution mode: llap Reduce Operator Tree: Select Operator diff --git ql/src/test/results/clientpositive/llap/llap_nullscan.q.out ql/src/test/results/clientpositive/llap/llap_nullscan.q.out index 7d01c69..1e39acc 100644 --- ql/src/test/results/clientpositive/llap/llap_nullscan.q.out +++ ql/src/test/results/clientpositive/llap/llap_nullscan.q.out @@ -157,8 +157,8 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) - Reducer 4 <- Map 3 (CUSTOM_SIMPLE_EDGE) + Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) + Reducer 3 <- Map 1 (CUSTOM_SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -178,13 +178,6 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 1 Data size: 356 Basic stats: COMPLETE Column stats: NONE - Execution mode: vectorized, llap - LLAP IO: no inputs - Map 3 - Map Operator Tree: - TableScan - alias: src_orc - Statistics: Num rows: 10 Data size: 3560 Basic stats: COMPLETE Column stats: NONE Select Operator expressions: key (type: string) outputColumnNames: _col0 @@ -197,7 +190,7 @@ STAGE PLANS: Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE value expressions: _col0 (type: string) Execution mode: vectorized, llap - LLAP IO: no inputs + LLAP IO: all inputs Reducer 2 Execution mode: llap Reduce Operator Tree: @@ -216,7 +209,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 + Reducer 3 Execution mode: vectorized, llap Reduce Operator Tree: Select Operator diff --git ql/src/test/results/clientpositive/llap/mapjoin46.q.out ql/src/test/results/clientpositive/llap/mapjoin46.q.out index 73960ce..71f235a 100644 --- ql/src/test/results/clientpositive/llap/mapjoin46.q.out +++ ql/src/test/results/clientpositive/llap/mapjoin46.q.out @@ -1827,7 +1827,7 @@ NULL NULL None NULL NULL NULL 101 2 Car 102 2 Del 101 2 Car 103 2 Ema NULL NULL NULL 104 3 Fli -Warning: Shuffle Join MERGEJOIN[26][tables = [$hdt$_0, $hdt$_1, $hdt$_2]] in Stage 'Reducer 3' is a cross product +Warning: Shuffle Join MERGEJOIN[26][tables = [$hdt$_0, $hdt$_1, $hdt$_2]] in Stage 'Reducer 2' is a cross product PREHOOK: query: EXPLAIN SELECT * FROM ( @@ -1877,9 +1877,9 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Map 2 <- Map 1 (BROADCAST_EDGE) - Map 4 <- Map 5 (BROADCAST_EDGE) - Reducer 3 <- Map 2 (CUSTOM_SIMPLE_EDGE), Map 4 (CUSTOM_SIMPLE_EDGE) + Map 1 <- Map 4 (BROADCAST_EDGE) + Map 3 <- Map 1 (BROADCAST_EDGE) + Reducer 2 <- Map 1 (CUSTOM_SIMPLE_EDGE), Map 3 (CUSTOM_SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -1897,26 +1897,19 @@ STAGE PLANS: Map-reduce partition columns: _col1 (type: int) Statistics: Num rows: 6 Data size: 56 Basic stats: COMPLETE Column stats: NONE value expressions: _col0 (type: int), _col2 (type: string) - Execution mode: llap - LLAP IO: no inputs - Map 2 - Map Operator Tree: - TableScan - alias: test2 - Statistics: Num rows: 4 Data size: 38 Basic stats: COMPLETE Column stats: NONE Select Operator - expressions: key (type: int), value (type: int), col_2 (type: string) + expressions: key (type: int), value (type: int), col_1 (type: string) outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 4 Data size: 38 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 6 Data size: 56 Basic stats: COMPLETE Column stats: NONE Map Join Operator condition map: - Right Outer Join0 to 1 + Left Outer Join0 to 1 keys: 0 _col1 (type: int) 1 _col1 (type: int) outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5 input vertices: - 0 Map 1 + 1 Map 4 residual filter predicates: {(_col0 BETWEEN 100 AND 102 or _col3 BETWEEN 100 AND 102)} Statistics: Num rows: 6 Data size: 61 Basic stats: COMPLETE Column stats: NONE Reduce Output Operator @@ -1925,24 +1918,24 @@ STAGE PLANS: value expressions: _col0 (type: int), _col1 (type: int), _col2 (type: string), _col3 (type: int), _col4 (type: int), _col5 (type: string) Execution mode: llap LLAP IO: no inputs - Map 4 + Map 3 Map Operator Tree: TableScan - alias: test1 - Statistics: Num rows: 6 Data size: 56 Basic stats: COMPLETE Column stats: NONE + alias: test2 + Statistics: Num rows: 4 Data size: 38 Basic stats: COMPLETE Column stats: NONE Select Operator - expressions: key (type: int), value (type: int), col_1 (type: string) + expressions: key (type: int), value (type: int), col_2 (type: string) outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 6 Data size: 56 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 4 Data size: 38 Basic stats: COMPLETE Column stats: NONE Map Join Operator condition map: - Left Outer Join0 to 1 + Right Outer Join0 to 1 keys: 0 _col1 (type: int) 1 _col1 (type: int) outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5 input vertices: - 1 Map 5 + 0 Map 1 residual filter predicates: {(_col0 BETWEEN 100 AND 102 or _col3 BETWEEN 100 AND 102)} Statistics: Num rows: 6 Data size: 61 Basic stats: COMPLETE Column stats: NONE Reduce Output Operator @@ -1951,7 +1944,7 @@ STAGE PLANS: value expressions: _col0 (type: int), _col1 (type: int), _col2 (type: string), _col3 (type: int), _col4 (type: int), _col5 (type: string) Execution mode: llap LLAP IO: no inputs - Map 5 + Map 4 Map Operator Tree: TableScan alias: test2 @@ -1968,7 +1961,7 @@ STAGE PLANS: value expressions: _col0 (type: int), _col2 (type: string) Execution mode: llap LLAP IO: no inputs - Reducer 3 + Reducer 2 Execution mode: llap Reduce Operator Tree: Merge Join Operator @@ -1994,7 +1987,7 @@ STAGE PLANS: Processor Tree: ListSink -Warning: Shuffle Join MERGEJOIN[26][tables = [$hdt$_0, $hdt$_1, $hdt$_2]] in Stage 'Reducer 3' is a cross product +Warning: Shuffle Join MERGEJOIN[26][tables = [$hdt$_0, $hdt$_1, $hdt$_2]] in Stage 'Reducer 2' is a cross product PREHOOK: query: SELECT * FROM ( SELECT test1.key AS key1, test1.value AS value1, test1.col_1 AS col_1, diff --git ql/src/test/results/clientpositive/llap/mrr.q.out ql/src/test/results/clientpositive/llap/mrr.q.out index 1437d5d..726349c 100644 --- ql/src/test/results/clientpositive/llap/mrr.q.out +++ ql/src/test/results/clientpositive/llap/mrr.q.out @@ -1292,14 +1292,14 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 10 <- Map 9 (SIMPLE_EDGE) - Reducer 11 <- Reducer 10 (SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (SIMPLE_EDGE) - Reducer 4 <- Reducer 11 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) + Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) - Reducer 7 <- Map 6 (SIMPLE_EDGE) - Reducer 8 <- Reducer 7 (SIMPLE_EDGE) + Reducer 6 <- Map 1 (SIMPLE_EDGE) + Reducer 7 <- Reducer 6 (SIMPLE_EDGE) + Reducer 8 <- Map 1 (SIMPLE_EDGE) + Reducer 9 <- Reducer 8 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -1322,13 +1322,6 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 205 Data size: 19475 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: bigint) - Execution mode: llap - LLAP IO: no inputs - Map 6 - Map Operator Tree: - TableScan - alias: src - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: key is not null (type: boolean) Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE @@ -1344,13 +1337,6 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 205 Data size: 19475 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: bigint) - Execution mode: llap - LLAP IO: no inputs - Map 9 - Map Operator Tree: - TableScan - alias: src - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: key is not null (type: boolean) Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE @@ -1368,33 +1354,6 @@ STAGE PLANS: value expressions: _col1 (type: bigint) Execution mode: llap LLAP IO: no inputs - Reducer 10 - Execution mode: llap - Reduce Operator Tree: - Group By Operator - aggregations: count(VALUE._col0) - keys: KEY._col0 (type: string) - mode: mergepartial - outputColumnNames: _col0, _col1 - Statistics: Num rows: 205 Data size: 19475 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - key expressions: _col1 (type: bigint) - sort order: + - Statistics: Num rows: 205 Data size: 19475 Basic stats: COMPLETE Column stats: COMPLETE - value expressions: _col0 (type: string) - Reducer 11 - Execution mode: llap - Reduce Operator Tree: - Select Operator - expressions: VALUE._col0 (type: string), KEY.reducesinkkey0 (type: bigint) - outputColumnNames: _col0, _col1 - Statistics: Num rows: 205 Data size: 19475 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: 205 Data size: 19475 Basic stats: COMPLETE Column stats: COMPLETE - value expressions: _col1 (type: bigint) Reducer 2 Execution mode: llap Reduce Operator Tree: @@ -1458,7 +1417,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 7 + Reducer 6 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -1475,7 +1434,7 @@ STAGE PLANS: sort order: + Statistics: Num rows: 68 Data size: 6460 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col0 (type: string) - Reducer 8 + Reducer 7 Execution mode: llap Reduce Operator Tree: Select Operator @@ -1488,6 +1447,33 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 68 Data size: 6460 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: bigint) + Reducer 8 + Execution mode: llap + Reduce Operator Tree: + Group By Operator + aggregations: count(VALUE._col0) + keys: KEY._col0 (type: string) + mode: mergepartial + outputColumnNames: _col0, _col1 + Statistics: Num rows: 205 Data size: 19475 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + key expressions: _col1 (type: bigint) + sort order: + + Statistics: Num rows: 205 Data size: 19475 Basic stats: COMPLETE Column stats: COMPLETE + value expressions: _col0 (type: string) + Reducer 9 + Execution mode: llap + Reduce Operator Tree: + Select Operator + expressions: VALUE._col0 (type: string), KEY.reducesinkkey0 (type: bigint) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 205 Data size: 19475 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: 205 Data size: 19475 Basic stats: COMPLETE Column stats: COMPLETE + value expressions: _col1 (type: bigint) Stage: Stage-0 Fetch Operator diff --git ql/src/test/results/clientpositive/llap/multiMapJoin2.q.out ql/src/test/results/clientpositive/llap/multiMapJoin2.q.out index e9c016e..b4b0e93 100644 --- ql/src/test/results/clientpositive/llap/multiMapJoin2.q.out +++ ql/src/test/results/clientpositive/llap/multiMapJoin2.q.out @@ -722,12 +722,11 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Map 1 <- Map 5 (BROADCAST_EDGE) - Map 6 <- Map 8 (BROADCAST_EDGE) - Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 7 (BROADCAST_EDGE) + Map 1 <- Map 6 (BROADCAST_EDGE), Map 7 (BROADCAST_EDGE) + Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 5 (BROADCAST_EDGE) Reducer 3 <- Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) - Reducer 7 <- Map 6 (SIMPLE_EDGE) + Reducer 5 <- Map 1 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -750,7 +749,7 @@ STAGE PLANS: 1 _col0 (type: string) outputColumnNames: _col0 input vertices: - 1 Map 5 + 1 Map 6 Statistics: Num rows: 60 Data size: 5220 Basic stats: COMPLETE Column stats: COMPLETE Group By Operator keys: _col0 (type: string) @@ -762,32 +761,6 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 2 Data size: 174 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs - Map 5 - Map Operator Tree: - TableScan - alias: y2 - Statistics: Num rows: 25 Data size: 2150 Basic stats: COMPLETE Column stats: COMPLETE - Filter Operator - predicate: key is not null (type: boolean) - Statistics: Num rows: 25 Data size: 2150 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: key (type: string) - outputColumnNames: _col0 - Statistics: Num rows: 25 Data size: 2150 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: 25 Data size: 2150 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs - Map 6 - Map Operator Tree: - TableScan - alias: x1 - Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: key is not null (type: boolean) Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE @@ -803,7 +776,7 @@ STAGE PLANS: 1 _col0 (type: string) outputColumnNames: _col0 input vertices: - 1 Map 8 + 1 Map 7 Statistics: Num rows: 60 Data size: 5220 Basic stats: COMPLETE Column stats: COMPLETE Group By Operator keys: _col0 (type: string) @@ -817,7 +790,26 @@ STAGE PLANS: Statistics: Num rows: 2 Data size: 174 Basic stats: COMPLETE Column stats: COMPLETE Execution mode: llap LLAP IO: no inputs - Map 8 + Map 6 + Map Operator Tree: + TableScan + alias: y2 + Statistics: Num rows: 25 Data size: 2150 Basic stats: COMPLETE Column stats: COMPLETE + Filter Operator + predicate: key is not null (type: boolean) + Statistics: Num rows: 25 Data size: 2150 Basic stats: COMPLETE Column stats: COMPLETE + Select Operator + expressions: key (type: string) + outputColumnNames: _col0 + Statistics: Num rows: 25 Data size: 2150 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: 25 Data size: 2150 Basic stats: COMPLETE Column stats: COMPLETE + Execution mode: llap + LLAP IO: no inputs + Map 7 Map Operator Tree: TableScan alias: y1 @@ -852,7 +844,7 @@ STAGE PLANS: 1 _col0 (type: string) outputColumnNames: _col0 input vertices: - 1 Reducer 7 + 1 Reducer 5 Statistics: Num rows: 2 Data size: 174 Basic stats: COMPLETE Column stats: COMPLETE Group By Operator aggregations: count() @@ -893,7 +885,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 7 + Reducer 5 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -990,12 +982,11 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Map 1 <- Map 5 (BROADCAST_EDGE) - Map 6 <- Map 8 (BROADCAST_EDGE) - Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 7 (BROADCAST_EDGE) + Map 1 <- Map 6 (BROADCAST_EDGE), Map 7 (BROADCAST_EDGE) + Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 5 (BROADCAST_EDGE) Reducer 3 <- Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) - Reducer 7 <- Map 6 (SIMPLE_EDGE) + Reducer 5 <- Map 1 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -1018,7 +1009,7 @@ STAGE PLANS: 1 _col0 (type: string) outputColumnNames: _col0 input vertices: - 1 Map 5 + 1 Map 6 Statistics: Num rows: 60 Data size: 5220 Basic stats: COMPLETE Column stats: COMPLETE Group By Operator keys: _col0 (type: string) @@ -1030,32 +1021,6 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 2 Data size: 174 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs - Map 5 - Map Operator Tree: - TableScan - alias: y2 - Statistics: Num rows: 25 Data size: 2150 Basic stats: COMPLETE Column stats: COMPLETE - Filter Operator - predicate: key is not null (type: boolean) - Statistics: Num rows: 25 Data size: 2150 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: key (type: string) - outputColumnNames: _col0 - Statistics: Num rows: 25 Data size: 2150 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: 25 Data size: 2150 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs - Map 6 - Map Operator Tree: - TableScan - alias: x1 - Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: key is not null (type: boolean) Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE @@ -1071,7 +1036,7 @@ STAGE PLANS: 1 _col0 (type: string) outputColumnNames: _col0 input vertices: - 1 Map 8 + 1 Map 7 Statistics: Num rows: 60 Data size: 5220 Basic stats: COMPLETE Column stats: COMPLETE Group By Operator keys: _col0 (type: string) @@ -1085,7 +1050,26 @@ STAGE PLANS: Statistics: Num rows: 2 Data size: 174 Basic stats: COMPLETE Column stats: COMPLETE Execution mode: llap LLAP IO: no inputs - Map 8 + Map 6 + Map Operator Tree: + TableScan + alias: y2 + Statistics: Num rows: 25 Data size: 2150 Basic stats: COMPLETE Column stats: COMPLETE + Filter Operator + predicate: key is not null (type: boolean) + Statistics: Num rows: 25 Data size: 2150 Basic stats: COMPLETE Column stats: COMPLETE + Select Operator + expressions: key (type: string) + outputColumnNames: _col0 + Statistics: Num rows: 25 Data size: 2150 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: 25 Data size: 2150 Basic stats: COMPLETE Column stats: COMPLETE + Execution mode: llap + LLAP IO: no inputs + Map 7 Map Operator Tree: TableScan alias: y1 @@ -1120,7 +1104,7 @@ STAGE PLANS: 1 _col0 (type: string) outputColumnNames: _col0 input vertices: - 1 Reducer 7 + 1 Reducer 5 Statistics: Num rows: 2 Data size: 174 Basic stats: COMPLETE Column stats: COMPLETE Group By Operator aggregations: count() @@ -1161,7 +1145,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 7 + Reducer 5 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -1259,10 +1243,10 @@ STAGE PLANS: #### A masked pattern was here #### Edges: Map 1 <- Map 5 (BROADCAST_EDGE) - Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 7 (BROADCAST_EDGE) + Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 6 (BROADCAST_EDGE) Reducer 3 <- Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) - Reducer 7 <- Map 6 (SIMPLE_EDGE) + Reducer 6 <- Map 5 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -1316,13 +1300,6 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 25 Data size: 2150 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs - Map 6 - Map Operator Tree: - TableScan - alias: x1 - Statistics: Num rows: 25 Data size: 2150 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: key is not null (type: boolean) Statistics: Num rows: 25 Data size: 2150 Basic stats: COMPLETE Column stats: COMPLETE @@ -1354,7 +1331,7 @@ STAGE PLANS: 1 _col0 (type: string) outputColumnNames: _col1 input vertices: - 1 Reducer 7 + 1 Reducer 6 Statistics: Num rows: 1 Data size: 86 Basic stats: COMPLETE Column stats: COMPLETE Group By Operator aggregations: count() @@ -1395,7 +1372,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 7 + Reducer 6 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -1493,10 +1470,10 @@ STAGE PLANS: #### A masked pattern was here #### Edges: Map 1 <- Map 5 (BROADCAST_EDGE) - Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 7 (BROADCAST_EDGE) + Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 6 (BROADCAST_EDGE) Reducer 3 <- Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) - Reducer 7 <- Map 6 (SIMPLE_EDGE) + Reducer 6 <- Map 5 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -1550,13 +1527,6 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 25 Data size: 2150 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs - Map 6 - Map Operator Tree: - TableScan - alias: x1 - Statistics: Num rows: 25 Data size: 2150 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: key is not null (type: boolean) Statistics: Num rows: 25 Data size: 2150 Basic stats: COMPLETE Column stats: COMPLETE @@ -1588,7 +1558,7 @@ STAGE PLANS: 1 _col0 (type: string) outputColumnNames: _col1 input vertices: - 1 Reducer 7 + 1 Reducer 6 Statistics: Num rows: 1 Data size: 86 Basic stats: COMPLETE Column stats: COMPLETE Group By Operator aggregations: count() @@ -1629,7 +1599,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 7 + Reducer 6 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -1879,8 +1849,8 @@ STAGE PLANS: Edges: Map 1 <- Map 4 (BROADCAST_EDGE), Union 2 (CONTAINS) Map 4 <- Map 5 (BROADCAST_EDGE) - Map 6 <- Map 7 (BROADCAST_EDGE), Union 2 (CONTAINS) - Map 7 <- Map 8 (BROADCAST_EDGE) + Map 5 <- Map 7 (BROADCAST_EDGE) + Map 6 <- Map 5 (BROADCAST_EDGE), Union 2 (CONTAINS) Reducer 3 <- Union 2 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: @@ -1963,13 +1933,6 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs - Map 6 - Map Operator Tree: - TableScan - alias: c - Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: key is not null (type: boolean) Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE @@ -1979,24 +1942,30 @@ STAGE PLANS: Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE Map Join Operator condition map: - Left Semi Join 0 to 1 + Inner Join 0 to 1 keys: 0 _col0 (type: string) 1 _col0 (type: string) outputColumnNames: _col0 input vertices: 1 Map 7 - Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - key expressions: _col0 (type: string) - sort order: + - Statistics: Num rows: 1000 Data size: 87000 Basic stats: COMPLETE Column stats: COMPLETE + Statistics: Num rows: 1219 Data size: 106053 Basic stats: COMPLETE Column stats: COMPLETE + Group By Operator + keys: _col0 (type: string) + mode: hash + outputColumnNames: _col0 + Statistics: Num rows: 205 Data size: 17835 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: 205 Data size: 17835 Basic stats: COMPLETE Column stats: COMPLETE Execution mode: llap LLAP IO: no inputs - Map 7 + Map 6 Map Operator Tree: TableScan - alias: a + alias: c Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: key is not null (type: boolean) @@ -2007,27 +1976,21 @@ STAGE PLANS: Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE Map Join Operator condition map: - Inner Join 0 to 1 + Left Semi Join 0 to 1 keys: 0 _col0 (type: string) 1 _col0 (type: string) outputColumnNames: _col0 input vertices: - 1 Map 8 - Statistics: Num rows: 1219 Data size: 106053 Basic stats: COMPLETE Column stats: COMPLETE - Group By Operator - keys: _col0 (type: string) - mode: hash - outputColumnNames: _col0 - Statistics: Num rows: 205 Data size: 17835 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: 205 Data size: 17835 Basic stats: COMPLETE Column stats: COMPLETE + 1 Map 5 + Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + key expressions: _col0 (type: string) + sort order: + + Statistics: Num rows: 1000 Data size: 87000 Basic stats: COMPLETE Column stats: COMPLETE Execution mode: llap LLAP IO: no inputs - Map 8 + Map 7 Map Operator Tree: TableScan alias: b diff --git ql/src/test/results/clientpositive/llap/offset_limit_ppd_optimizer.q.out ql/src/test/results/clientpositive/llap/offset_limit_ppd_optimizer.q.out index 83de1fb..77062c7 100644 --- ql/src/test/results/clientpositive/llap/offset_limit_ppd_optimizer.q.out +++ ql/src/test/results/clientpositive/llap/offset_limit_ppd_optimizer.q.out @@ -1299,9 +1299,9 @@ STAGE PLANS: #### A masked pattern was here #### Edges: Reducer 2 <- Map 1 (SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) - Reducer 5 <- Map 4 (SIMPLE_EDGE) - Reducer 6 <- Reducer 5 (CUSTOM_SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) + Reducer 4 <- Map 1 (SIMPLE_EDGE) + Reducer 5 <- Reducer 4 (CUSTOM_SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -1319,13 +1319,6 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE TopN Hash Memory Usage: 2.0E-5 - Execution mode: llap - LLAP IO: no inputs - Map 4 - Map Operator Tree: - TableScan - alias: src - Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE Select Operator expressions: key (type: string) outputColumnNames: _col0 @@ -1382,7 +1375,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 + Reducer 4 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -1400,7 +1393,7 @@ STAGE PLANS: Statistics: Num rows: 20 Data size: 1900 Basic stats: COMPLETE Column stats: COMPLETE TopN Hash Memory Usage: 2.0E-5 value expressions: _col0 (type: string), _col1 (type: bigint) - Reducer 6 + Reducer 5 Execution mode: llap Reduce Operator Tree: Select Operator diff --git ql/src/test/results/clientpositive/llap/subquery_in.q.out ql/src/test/results/clientpositive/llap/subquery_in.q.out index 58e78c4..1e69d86 100644 --- ql/src/test/results/clientpositive/llap/subquery_in.q.out +++ ql/src/test/results/clientpositive/llap/subquery_in.q.out @@ -2598,11 +2598,11 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) + Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (SIMPLE_EDGE) - Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) - Reducer 6 <- Map 5 (SIMPLE_EDGE) - Reducer 8 <- Map 7 (SIMPLE_EDGE) + Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) + Reducer 5 <- Map 1 (SIMPLE_EDGE) + Reducer 7 <- Map 6 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -2619,13 +2619,6 @@ STAGE PLANS: sort order: ++ Map-reduce partition columns: _col0 (type: string), _col1 (type: string) Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs - Map 5 - Map Operator Tree: - TableScan - alias: sc - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: key is not null (type: boolean) Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE @@ -2641,7 +2634,7 @@ STAGE PLANS: Statistics: Num rows: 250 Data size: 44500 Basic stats: COMPLETE Column stats: COMPLETE Execution mode: llap LLAP IO: no inputs - Map 7 + Map 6 Map Operator Tree: TableScan alias: s1 @@ -2724,7 +2717,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 + Reducer 5 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -2741,7 +2734,7 @@ STAGE PLANS: sort order: ++ Map-reduce partition columns: _col1 (type: string), _col0 (type: string) Statistics: Num rows: 250 Data size: 44500 Basic stats: COMPLETE Column stats: COMPLETE - Reducer 8 + Reducer 7 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -3991,9 +3984,9 @@ STAGE PLANS: #### A masked pattern was here #### Edges: Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) Reducer 5 <- Map 4 (SIMPLE_EDGE) - Reducer 7 <- Map 6 (SIMPLE_EDGE) + Reducer 6 <- Map 4 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -4031,13 +4024,6 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 13 Data size: 1352 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs - Map 6 - Map Operator Tree: - TableScan - alias: pp - Statistics: Num rows: 26 Data size: 2704 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: p_type is not null (type: boolean) Statistics: Num rows: 26 Data size: 2704 Basic stats: COMPLETE Column stats: COMPLETE @@ -4117,7 +4103,7 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 13 Data size: 1456 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: bigint) - Reducer 7 + Reducer 6 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -4465,12 +4451,12 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 10 <- Map 9 (SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) - Reducer 4 <- Reducer 10 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) + Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) Reducer 6 <- Map 5 (SIMPLE_EDGE) - Reducer 8 <- Map 7 (SIMPLE_EDGE) + Reducer 7 <- Map 5 (SIMPLE_EDGE) + Reducer 8 <- Map 5 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -4508,13 +4494,6 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 13 Data size: 1352 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs - Map 7 - Map Operator Tree: - TableScan - alias: pp - Statistics: Num rows: 26 Data size: 2704 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: p_type is not null (type: boolean) Statistics: Num rows: 26 Data size: 2704 Basic stats: COMPLETE Column stats: COMPLETE @@ -4530,13 +4509,6 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 13 Data size: 1456 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: bigint) - Execution mode: llap - LLAP IO: no inputs - Map 9 - Map Operator Tree: - TableScan - alias: pp - Statistics: Num rows: 26 Data size: 2704 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: p_type is not null (type: boolean) Statistics: Num rows: 26 Data size: 2704 Basic stats: COMPLETE Column stats: COMPLETE @@ -4554,32 +4526,6 @@ STAGE PLANS: value expressions: _col1 (type: bigint) Execution mode: llap LLAP IO: no inputs - Reducer 10 - Execution mode: llap - Reduce Operator Tree: - Group By Operator - aggregations: count(VALUE._col0) - keys: KEY._col0 (type: string) - mode: mergepartial - outputColumnNames: _col0, _col1 - Statistics: Num rows: 13 Data size: 1456 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: _col1 (type: bigint), _col0 (type: string) - outputColumnNames: _col0, _col1 - Statistics: Num rows: 13 Data size: 1508 Basic stats: COMPLETE Column stats: COMPLETE - Filter Operator - predicate: _col0 is not null (type: boolean) - Statistics: Num rows: 13 Data size: 1508 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: _col0 (type: bigint), _col1 (type: string), true (type: boolean) - outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 13 Data size: 1508 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - key expressions: _col1 (type: string), _col0 (type: bigint) - sort order: ++ - Map-reduce partition columns: _col1 (type: string), _col0 (type: bigint) - Statistics: Num rows: 13 Data size: 1508 Basic stats: COMPLETE Column stats: COMPLETE - value expressions: _col2 (type: boolean) Reducer 2 Execution mode: llap Reduce Operator Tree: @@ -4666,7 +4612,7 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 13 Data size: 1456 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: bigint) - Reducer 8 + Reducer 7 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -4687,6 +4633,32 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 13 Data size: 1560 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: bigint), _col2 (type: bigint) + Reducer 8 + Execution mode: llap + Reduce Operator Tree: + Group By Operator + aggregations: count(VALUE._col0) + keys: KEY._col0 (type: string) + mode: mergepartial + outputColumnNames: _col0, _col1 + Statistics: Num rows: 13 Data size: 1456 Basic stats: COMPLETE Column stats: COMPLETE + Select Operator + expressions: _col1 (type: bigint), _col0 (type: string) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 13 Data size: 1508 Basic stats: COMPLETE Column stats: COMPLETE + Filter Operator + predicate: _col0 is not null (type: boolean) + Statistics: Num rows: 13 Data size: 1508 Basic stats: COMPLETE Column stats: COMPLETE + Select Operator + expressions: _col0 (type: bigint), _col1 (type: string), true (type: boolean) + outputColumnNames: _col0, _col1, _col2 + Statistics: Num rows: 13 Data size: 1508 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + key expressions: _col1 (type: string), _col0 (type: bigint) + sort order: ++ + Map-reduce partition columns: _col1 (type: string), _col0 (type: bigint) + Statistics: Num rows: 13 Data size: 1508 Basic stats: COMPLETE Column stats: COMPLETE + value expressions: _col2 (type: boolean) Stage: Stage-0 Fetch Operator @@ -4738,12 +4710,12 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 10 <- Map 9 (SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) - Reducer 4 <- Reducer 10 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) + Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) Reducer 6 <- Map 5 (SIMPLE_EDGE) Reducer 8 <- Map 7 (SIMPLE_EDGE) + Reducer 9 <- Map 7 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -4803,13 +4775,6 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: int) Statistics: Num rows: 13 Data size: 1040 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: struct) - Execution mode: llap - LLAP IO: no inputs - Map 9 - Map Operator Tree: - TableScan - alias: pp - Statistics: Num rows: 26 Data size: 208 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: p_partkey is not null (type: boolean) Statistics: Num rows: 26 Data size: 208 Basic stats: COMPLETE Column stats: COMPLETE @@ -4827,32 +4792,6 @@ STAGE PLANS: value expressions: _col1 (type: struct) Execution mode: llap LLAP IO: no inputs - Reducer 10 - Execution mode: llap - Reduce Operator Tree: - Group By Operator - aggregations: avg(VALUE._col0) - keys: KEY._col0 (type: int) - mode: mergepartial - outputColumnNames: _col0, _col1 - Statistics: Num rows: 13 Data size: 156 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: _col1 (type: double), _col0 (type: int) - outputColumnNames: _col0, _col1 - Statistics: Num rows: 13 Data size: 208 Basic stats: COMPLETE Column stats: COMPLETE - Filter Operator - predicate: _col0 is not null (type: boolean) - Statistics: Num rows: 13 Data size: 208 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: _col0 (type: double), _col1 (type: int), true (type: boolean) - outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 13 Data size: 208 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - key expressions: _col1 (type: int), _col0 (type: double) - sort order: ++ - Map-reduce partition columns: _col1 (type: int), _col0 (type: double) - Statistics: Num rows: 13 Data size: 208 Basic stats: COMPLETE Column stats: COMPLETE - value expressions: _col2 (type: boolean) Reducer 2 Execution mode: llap Reduce Operator Tree: @@ -4960,6 +4899,32 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: int) Statistics: Num rows: 13 Data size: 260 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: bigint), _col2 (type: bigint) + Reducer 9 + Execution mode: llap + Reduce Operator Tree: + Group By Operator + aggregations: avg(VALUE._col0) + keys: KEY._col0 (type: int) + mode: mergepartial + outputColumnNames: _col0, _col1 + Statistics: Num rows: 13 Data size: 156 Basic stats: COMPLETE Column stats: COMPLETE + Select Operator + expressions: _col1 (type: double), _col0 (type: int) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 13 Data size: 208 Basic stats: COMPLETE Column stats: COMPLETE + Filter Operator + predicate: _col0 is not null (type: boolean) + Statistics: Num rows: 13 Data size: 208 Basic stats: COMPLETE Column stats: COMPLETE + Select Operator + expressions: _col0 (type: double), _col1 (type: int), true (type: boolean) + outputColumnNames: _col0, _col1, _col2 + Statistics: Num rows: 13 Data size: 208 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + key expressions: _col1 (type: int), _col0 (type: double) + sort order: ++ + Map-reduce partition columns: _col1 (type: int), _col0 (type: double) + Statistics: Num rows: 13 Data size: 208 Basic stats: COMPLETE Column stats: COMPLETE + value expressions: _col2 (type: boolean) Stage: Stage-0 Fetch Operator diff --git ql/src/test/results/clientpositive/llap/subquery_multi.q.out ql/src/test/results/clientpositive/llap/subquery_multi.q.out index 95c78f5..3920ac6 100644 --- ql/src/test/results/clientpositive/llap/subquery_multi.q.out +++ ql/src/test/results/clientpositive/llap/subquery_multi.q.out @@ -261,12 +261,12 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 10 <- Map 9 (SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (CUSTOM_SIMPLE_EDGE), Reducer 8 (CUSTOM_SIMPLE_EDGE) - Reducer 4 <- Reducer 10 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (CUSTOM_SIMPLE_EDGE), Reducer 7 (CUSTOM_SIMPLE_EDGE) + Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) Reducer 6 <- Map 5 (SIMPLE_EDGE) - Reducer 8 <- Map 7 (CUSTOM_SIMPLE_EDGE) + Reducer 7 <- Map 5 (CUSTOM_SIMPLE_EDGE) + Reducer 8 <- Map 5 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -307,13 +307,6 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 32 Data size: 3256 Basic stats: COMPLETE Column stats: NONE - Execution mode: llap - LLAP IO: no inputs - Map 7 - Map Operator Tree: - TableScan - alias: part_null - Statistics: Num rows: 32 Data size: 3256 Basic stats: COMPLETE Column stats: NONE Select Operator expressions: p_name (type: string) outputColumnNames: p_name @@ -327,13 +320,6 @@ STAGE PLANS: sort order: Statistics: Num rows: 1 Data size: 16 Basic stats: COMPLETE Column stats: NONE value expressions: _col0 (type: bigint), _col1 (type: bigint) - Execution mode: llap - LLAP IO: no inputs - Map 9 - Map Operator Tree: - TableScan - alias: part_null - Statistics: Num rows: 32 Data size: 3256 Basic stats: COMPLETE Column stats: NONE Group By Operator keys: p_name (type: string) mode: hash @@ -346,24 +332,6 @@ STAGE PLANS: Statistics: Num rows: 32 Data size: 3256 Basic stats: COMPLETE Column stats: NONE Execution mode: llap LLAP IO: no inputs - Reducer 10 - Execution mode: llap - Reduce Operator Tree: - Group By Operator - keys: KEY._col0 (type: string) - mode: mergepartial - outputColumnNames: _col0 - Statistics: Num rows: 16 Data size: 1628 Basic stats: COMPLETE Column stats: NONE - Select Operator - expressions: _col0 (type: string), true (type: boolean) - outputColumnNames: _col0, _col1 - Statistics: Num rows: 16 Data size: 1628 Basic stats: COMPLETE Column stats: NONE - Reduce Output Operator - key expressions: _col0 (type: string) - sort order: + - Map-reduce partition columns: _col0 (type: string) - Statistics: Num rows: 16 Data size: 1628 Basic stats: COMPLETE Column stats: NONE - value expressions: _col1 (type: boolean) Reducer 2 Execution mode: llap Reduce Operator Tree: @@ -434,7 +402,7 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 16 Data size: 1628 Basic stats: COMPLETE Column stats: NONE - Reducer 8 + Reducer 7 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -446,6 +414,24 @@ STAGE PLANS: sort order: Statistics: Num rows: 1 Data size: 16 Basic stats: COMPLETE Column stats: NONE value expressions: _col0 (type: bigint), _col1 (type: bigint) + Reducer 8 + Execution mode: llap + Reduce Operator Tree: + Group By Operator + keys: KEY._col0 (type: string) + mode: mergepartial + outputColumnNames: _col0 + Statistics: Num rows: 16 Data size: 1628 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: _col0 (type: string), true (type: boolean) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 16 Data size: 1628 Basic stats: COMPLETE Column stats: NONE + Reduce Output Operator + key expressions: _col0 (type: string) + sort order: + + Map-reduce partition columns: _col0 (type: string) + Statistics: Num rows: 16 Data size: 1628 Basic stats: COMPLETE Column stats: NONE + value expressions: _col1 (type: boolean) Stage: Stage-0 Fetch Operator @@ -476,12 +462,12 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 10 <- Map 9 (SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (CUSTOM_SIMPLE_EDGE), Reducer 8 (CUSTOM_SIMPLE_EDGE) - Reducer 4 <- Reducer 10 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) + Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) Reducer 6 <- Map 5 (SIMPLE_EDGE) Reducer 8 <- Map 7 (CUSTOM_SIMPLE_EDGE) + Reducer 9 <- Map 7 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -542,13 +528,6 @@ STAGE PLANS: sort order: Statistics: Num rows: 1 Data size: 16 Basic stats: COMPLETE Column stats: NONE value expressions: _col0 (type: bigint), _col1 (type: bigint) - Execution mode: llap - LLAP IO: no inputs - Map 9 - Map Operator Tree: - TableScan - alias: part_null - Statistics: Num rows: 32 Data size: 3256 Basic stats: COMPLETE Column stats: NONE Group By Operator keys: p_type (type: string) mode: hash @@ -561,24 +540,6 @@ STAGE PLANS: Statistics: Num rows: 32 Data size: 3256 Basic stats: COMPLETE Column stats: NONE Execution mode: llap LLAP IO: no inputs - Reducer 10 - Execution mode: llap - Reduce Operator Tree: - Group By Operator - keys: KEY._col0 (type: string) - mode: mergepartial - outputColumnNames: _col0 - Statistics: Num rows: 16 Data size: 1628 Basic stats: COMPLETE Column stats: NONE - Select Operator - expressions: _col0 (type: string), true (type: boolean) - outputColumnNames: _col0, _col1 - Statistics: Num rows: 16 Data size: 1628 Basic stats: COMPLETE Column stats: NONE - Reduce Output Operator - key expressions: _col0 (type: string) - sort order: + - Map-reduce partition columns: _col0 (type: string) - Statistics: Num rows: 16 Data size: 1628 Basic stats: COMPLETE Column stats: NONE - value expressions: _col1 (type: boolean) Reducer 2 Execution mode: llap Reduce Operator Tree: @@ -661,6 +622,24 @@ STAGE PLANS: sort order: Statistics: Num rows: 1 Data size: 16 Basic stats: COMPLETE Column stats: NONE value expressions: _col0 (type: bigint), _col1 (type: bigint) + Reducer 9 + Execution mode: llap + Reduce Operator Tree: + Group By Operator + keys: KEY._col0 (type: string) + mode: mergepartial + outputColumnNames: _col0 + Statistics: Num rows: 16 Data size: 1628 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: _col0 (type: string), true (type: boolean) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 16 Data size: 1628 Basic stats: COMPLETE Column stats: NONE + Reduce Output Operator + key expressions: _col0 (type: string) + sort order: + + Map-reduce partition columns: _col0 (type: string) + Statistics: Num rows: 16 Data size: 1628 Basic stats: COMPLETE Column stats: NONE + value expressions: _col1 (type: boolean) Stage: Stage-0 Fetch Operator @@ -717,12 +696,12 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 10 <- Map 9 (SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (CUSTOM_SIMPLE_EDGE), Reducer 8 (CUSTOM_SIMPLE_EDGE) - Reducer 4 <- Reducer 10 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) + Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) Reducer 6 <- Map 5 (SIMPLE_EDGE) Reducer 8 <- Map 7 (CUSTOM_SIMPLE_EDGE) + Reducer 9 <- Map 7 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -783,13 +762,6 @@ STAGE PLANS: sort order: Statistics: Num rows: 1 Data size: 16 Basic stats: COMPLETE Column stats: NONE value expressions: _col0 (type: bigint), _col1 (type: bigint) - Execution mode: llap - LLAP IO: no inputs - Map 9 - Map Operator Tree: - TableScan - alias: part_null - Statistics: Num rows: 32 Data size: 3256 Basic stats: COMPLETE Column stats: NONE Filter Operator predicate: p_name is not null (type: boolean) Statistics: Num rows: 32 Data size: 3256 Basic stats: COMPLETE Column stats: NONE @@ -805,24 +777,6 @@ STAGE PLANS: Statistics: Num rows: 32 Data size: 3256 Basic stats: COMPLETE Column stats: NONE Execution mode: llap LLAP IO: no inputs - Reducer 10 - Execution mode: llap - Reduce Operator Tree: - Group By Operator - keys: KEY._col0 (type: string) - mode: mergepartial - outputColumnNames: _col0 - Statistics: Num rows: 16 Data size: 1628 Basic stats: COMPLETE Column stats: NONE - Select Operator - expressions: _col0 (type: string), true (type: boolean) - outputColumnNames: _col0, _col1 - Statistics: Num rows: 16 Data size: 1628 Basic stats: COMPLETE Column stats: NONE - Reduce Output Operator - key expressions: _col0 (type: string) - sort order: + - Map-reduce partition columns: _col0 (type: string) - Statistics: Num rows: 16 Data size: 1628 Basic stats: COMPLETE Column stats: NONE - value expressions: _col1 (type: boolean) Reducer 2 Execution mode: llap Reduce Operator Tree: @@ -905,6 +859,24 @@ STAGE PLANS: sort order: Statistics: Num rows: 1 Data size: 16 Basic stats: COMPLETE Column stats: NONE value expressions: _col0 (type: bigint), _col1 (type: bigint) + Reducer 9 + Execution mode: llap + Reduce Operator Tree: + Group By Operator + keys: KEY._col0 (type: string) + mode: mergepartial + outputColumnNames: _col0 + Statistics: Num rows: 16 Data size: 1628 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: _col0 (type: string), true (type: boolean) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 16 Data size: 1628 Basic stats: COMPLETE Column stats: NONE + Reduce Output Operator + key expressions: _col0 (type: string) + sort order: + + Map-reduce partition columns: _col0 (type: string) + Statistics: Num rows: 16 Data size: 1628 Basic stats: COMPLETE Column stats: NONE + value expressions: _col1 (type: boolean) Stage: Stage-0 Fetch Operator @@ -936,10 +908,10 @@ STAGE PLANS: #### A masked pattern was here #### Edges: Reducer 2 <- Map 1 (CUSTOM_SIMPLE_EDGE), Reducer 6 (CUSTOM_SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) - Reducer 4 <- Map 9 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) + Reducer 4 <- Map 8 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) Reducer 6 <- Map 5 (CUSTOM_SIMPLE_EDGE) - Reducer 8 <- Map 7 (SIMPLE_EDGE) + Reducer 7 <- Map 5 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -978,13 +950,6 @@ STAGE PLANS: sort order: Statistics: Num rows: 1 Data size: 16 Basic stats: COMPLETE Column stats: NONE value expressions: _col0 (type: bigint), _col1 (type: bigint) - Execution mode: llap - LLAP IO: no inputs - Map 7 - Map Operator Tree: - TableScan - alias: tempty - Statistics: Num rows: 1 Data size: 0 Basic stats: PARTIAL Column stats: NONE Group By Operator keys: c (type: char(2)) mode: hash @@ -997,7 +962,7 @@ STAGE PLANS: Statistics: Num rows: 1 Data size: 0 Basic stats: PARTIAL Column stats: NONE Execution mode: llap LLAP IO: no inputs - Map 9 + Map 8 Map Operator Tree: TableScan alias: part_null @@ -1092,7 +1057,7 @@ STAGE PLANS: sort order: Statistics: Num rows: 1 Data size: 16 Basic stats: COMPLETE Column stats: NONE value expressions: _col0 (type: bigint), _col1 (type: bigint) - Reducer 8 + Reducer 7 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -1698,15 +1663,15 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 11 <- Map 10 (SIMPLE_EDGE) - Reducer 13 <- Map 12 (SIMPLE_EDGE), Reducer 16 (SIMPLE_EDGE) - Reducer 14 <- Reducer 13 (SIMPLE_EDGE) - Reducer 16 <- Map 15 (SIMPLE_EDGE) + Reducer 10 <- Map 7 (SIMPLE_EDGE), Reducer 14 (SIMPLE_EDGE) + Reducer 11 <- Reducer 10 (SIMPLE_EDGE) + Reducer 13 <- Map 12 (SIMPLE_EDGE) + Reducer 14 <- Map 12 (SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) - Reducer 4 <- Reducer 14 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) + Reducer 4 <- Reducer 11 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) Reducer 6 <- Map 5 (SIMPLE_EDGE) - Reducer 8 <- Map 7 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE) + Reducer 8 <- Map 7 (SIMPLE_EDGE), Reducer 13 (SIMPLE_EDGE) Reducer 9 <- Reducer 8 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: @@ -1727,7 +1692,7 @@ STAGE PLANS: value expressions: _col0 (type: int), _col2 (type: string), _col3 (type: string), _col5 (type: int), _col6 (type: string), _col7 (type: double), _col8 (type: string) Execution mode: llap LLAP IO: no inputs - Map 10 + Map 12 Map Operator Tree: TableScan alias: pp @@ -1745,33 +1710,6 @@ STAGE PLANS: sort order: ++ Map-reduce partition columns: _col0 (type: string), _col1 (type: string) Statistics: Num rows: 13 Data size: 2548 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs - Map 12 - Map Operator Tree: - TableScan - alias: part - Statistics: Num rows: 26 Data size: 7488 Basic stats: COMPLETE Column stats: COMPLETE - Filter Operator - predicate: p_type is not null (type: boolean) - Statistics: Num rows: 26 Data size: 7488 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: p_brand (type: string), p_type (type: string), p_container (type: string) - outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 26 Data size: 7488 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - key expressions: _col1 (type: string), _col0 (type: string) - sort order: ++ - Map-reduce partition columns: _col1 (type: string), _col0 (type: string) - Statistics: Num rows: 26 Data size: 7488 Basic stats: COMPLETE Column stats: COMPLETE - value expressions: _col2 (type: string) - Execution mode: llap - LLAP IO: no inputs - Map 15 - Map Operator Tree: - TableScan - alias: pp - Statistics: Num rows: 26 Data size: 5096 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: p_type is not null (type: boolean) Statistics: Num rows: 26 Data size: 5096 Basic stats: COMPLETE Column stats: COMPLETE @@ -1825,26 +1763,22 @@ STAGE PLANS: Map-reduce partition columns: _col1 (type: string), _col0 (type: string) Statistics: Num rows: 26 Data size: 7488 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col2 (type: string) + Filter Operator + predicate: p_type is not null (type: boolean) + Statistics: Num rows: 26 Data size: 7488 Basic stats: COMPLETE Column stats: COMPLETE + Select Operator + expressions: p_brand (type: string), p_type (type: string), p_container (type: string) + outputColumnNames: _col0, _col1, _col2 + Statistics: Num rows: 26 Data size: 7488 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + key expressions: _col1 (type: string), _col0 (type: string) + sort order: ++ + Map-reduce partition columns: _col1 (type: string), _col0 (type: string) + Statistics: Num rows: 26 Data size: 7488 Basic stats: COMPLETE Column stats: COMPLETE + value expressions: _col2 (type: string) Execution mode: llap LLAP IO: no inputs - Reducer 11 - Execution mode: llap - Reduce Operator Tree: - Group By Operator - keys: KEY._col0 (type: string), KEY._col1 (type: string) - mode: mergepartial - outputColumnNames: _col0, _col1 - Statistics: Num rows: 13 Data size: 2548 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: _col1 (type: string), _col0 (type: string) - outputColumnNames: _col0, _col1 - Statistics: Num rows: 13 Data size: 2548 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - key expressions: _col1 (type: string), _col0 (type: string) - sort order: ++ - Map-reduce partition columns: _col1 (type: string), _col0 (type: string) - Statistics: Num rows: 13 Data size: 2548 Basic stats: COMPLETE Column stats: COMPLETE - Reducer 13 + Reducer 10 Execution mode: llap Reduce Operator Tree: Merge Join Operator @@ -1865,7 +1799,7 @@ STAGE PLANS: sort order: ++ Map-reduce partition columns: _col0 (type: string), _col1 (type: string) Statistics: Num rows: 1 Data size: 196 Basic stats: COMPLETE Column stats: COMPLETE - Reducer 14 + Reducer 11 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -1886,7 +1820,24 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string), _col1 (type: string) Statistics: Num rows: 1 Data size: 200 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col2 (type: boolean) - Reducer 16 + Reducer 13 + Execution mode: llap + Reduce Operator Tree: + Group By Operator + keys: KEY._col0 (type: string), KEY._col1 (type: string) + mode: mergepartial + outputColumnNames: _col0, _col1 + Statistics: Num rows: 13 Data size: 2548 Basic stats: COMPLETE Column stats: COMPLETE + Select Operator + expressions: _col1 (type: string), _col0 (type: string) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 13 Data size: 2548 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + key expressions: _col1 (type: string), _col0 (type: string) + sort order: ++ + Map-reduce partition columns: _col1 (type: string), _col0 (type: string) + Statistics: Num rows: 13 Data size: 2548 Basic stats: COMPLETE Column stats: COMPLETE + Reducer 14 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -2250,15 +2201,15 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 11 <- Map 10 (SIMPLE_EDGE) - Reducer 13 <- Map 12 (SIMPLE_EDGE), Reducer 16 (SIMPLE_EDGE) - Reducer 14 <- Reducer 13 (SIMPLE_EDGE) - Reducer 16 <- Map 15 (SIMPLE_EDGE) + Reducer 10 <- Map 7 (SIMPLE_EDGE), Reducer 14 (SIMPLE_EDGE) + Reducer 11 <- Reducer 10 (SIMPLE_EDGE) + Reducer 13 <- Map 12 (SIMPLE_EDGE) + Reducer 14 <- Map 12 (SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) - Reducer 4 <- Reducer 14 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) + Reducer 4 <- Reducer 11 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) Reducer 6 <- Map 5 (SIMPLE_EDGE) - Reducer 8 <- Map 7 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE) + Reducer 8 <- Map 7 (SIMPLE_EDGE), Reducer 13 (SIMPLE_EDGE) Reducer 9 <- Reducer 8 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: @@ -2279,7 +2230,7 @@ STAGE PLANS: value expressions: _col0 (type: int), _col2 (type: string), _col3 (type: string), _col5 (type: int), _col7 (type: double), _col8 (type: string) Execution mode: llap LLAP IO: no inputs - Map 10 + Map 12 Map Operator Tree: TableScan alias: pp @@ -2297,33 +2248,6 @@ STAGE PLANS: sort order: ++ Map-reduce partition columns: _col0 (type: string), _col1 (type: string) Statistics: Num rows: 13 Data size: 2548 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs - Map 12 - Map Operator Tree: - TableScan - alias: part - Statistics: Num rows: 26 Data size: 7488 Basic stats: COMPLETE Column stats: COMPLETE - Filter Operator - predicate: p_type is not null (type: boolean) - Statistics: Num rows: 26 Data size: 7488 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: p_brand (type: string), p_type (type: string), p_container (type: string) - outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 26 Data size: 7488 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - key expressions: _col1 (type: string), _col0 (type: string) - sort order: ++ - Map-reduce partition columns: _col1 (type: string), _col0 (type: string) - Statistics: Num rows: 26 Data size: 7488 Basic stats: COMPLETE Column stats: COMPLETE - value expressions: _col2 (type: string) - Execution mode: llap - LLAP IO: no inputs - Map 15 - Map Operator Tree: - TableScan - alias: pp - Statistics: Num rows: 26 Data size: 5096 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: p_type is not null (type: boolean) Statistics: Num rows: 26 Data size: 5096 Basic stats: COMPLETE Column stats: COMPLETE @@ -2377,26 +2301,22 @@ STAGE PLANS: Map-reduce partition columns: _col1 (type: string), _col0 (type: string) Statistics: Num rows: 26 Data size: 7488 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col2 (type: string) + Filter Operator + predicate: p_type is not null (type: boolean) + Statistics: Num rows: 26 Data size: 7488 Basic stats: COMPLETE Column stats: COMPLETE + Select Operator + expressions: p_brand (type: string), p_type (type: string), p_container (type: string) + outputColumnNames: _col0, _col1, _col2 + Statistics: Num rows: 26 Data size: 7488 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + key expressions: _col1 (type: string), _col0 (type: string) + sort order: ++ + Map-reduce partition columns: _col1 (type: string), _col0 (type: string) + Statistics: Num rows: 26 Data size: 7488 Basic stats: COMPLETE Column stats: COMPLETE + value expressions: _col2 (type: string) Execution mode: llap LLAP IO: no inputs - Reducer 11 - Execution mode: llap - Reduce Operator Tree: - Group By Operator - keys: KEY._col0 (type: string), KEY._col1 (type: string) - mode: mergepartial - outputColumnNames: _col0, _col1 - Statistics: Num rows: 13 Data size: 2548 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: _col1 (type: string), _col0 (type: string) - outputColumnNames: _col0, _col1 - Statistics: Num rows: 13 Data size: 2548 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - key expressions: _col1 (type: string), _col0 (type: string) - sort order: ++ - Map-reduce partition columns: _col1 (type: string), _col0 (type: string) - Statistics: Num rows: 13 Data size: 2548 Basic stats: COMPLETE Column stats: COMPLETE - Reducer 13 + Reducer 10 Execution mode: llap Reduce Operator Tree: Merge Join Operator @@ -2417,7 +2337,7 @@ STAGE PLANS: sort order: ++ Map-reduce partition columns: _col0 (type: string), _col1 (type: string) Statistics: Num rows: 1 Data size: 196 Basic stats: COMPLETE Column stats: COMPLETE - Reducer 14 + Reducer 11 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -2442,7 +2362,24 @@ STAGE PLANS: Map-reduce partition columns: _col1 (type: string), _col0 (type: string) Statistics: Num rows: 1 Data size: 200 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col2 (type: boolean) - Reducer 16 + Reducer 13 + Execution mode: llap + Reduce Operator Tree: + Group By Operator + keys: KEY._col0 (type: string), KEY._col1 (type: string) + mode: mergepartial + outputColumnNames: _col0, _col1 + Statistics: Num rows: 13 Data size: 2548 Basic stats: COMPLETE Column stats: COMPLETE + Select Operator + expressions: _col1 (type: string), _col0 (type: string) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 13 Data size: 2548 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + key expressions: _col1 (type: string), _col0 (type: string) + sort order: ++ + Map-reduce partition columns: _col1 (type: string), _col0 (type: string) + Statistics: Num rows: 13 Data size: 2548 Basic stats: COMPLETE Column stats: COMPLETE + Reducer 14 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -2629,12 +2566,12 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 10 <- Map 9 (SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) - Reducer 4 <- Reducer 10 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) + Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) Reducer 6 <- Map 5 (SIMPLE_EDGE) Reducer 8 <- Map 7 (SIMPLE_EDGE) + Reducer 9 <- Map 7 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -2694,13 +2631,6 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: int) Statistics: Num rows: 13 Data size: 260 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: bigint), _col2 (type: bigint) - Execution mode: llap - LLAP IO: no inputs - Map 9 - Map Operator Tree: - TableScan - alias: part - Statistics: Num rows: 26 Data size: 2808 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: p_size is not null (type: boolean) Statistics: Num rows: 26 Data size: 2808 Basic stats: COMPLETE Column stats: COMPLETE @@ -2716,27 +2646,6 @@ STAGE PLANS: Statistics: Num rows: 13 Data size: 1404 Basic stats: COMPLETE Column stats: COMPLETE Execution mode: llap LLAP IO: no inputs - Reducer 10 - Execution mode: llap - Reduce Operator Tree: - Group By Operator - keys: KEY._col0 (type: string), KEY._col1 (type: int) - mode: mergepartial - outputColumnNames: _col0, _col1 - Statistics: Num rows: 13 Data size: 1404 Basic stats: COMPLETE Column stats: COMPLETE - Filter Operator - predicate: _col0 is not null (type: boolean) - Statistics: Num rows: 13 Data size: 1404 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: _col0 (type: string), _col1 (type: int), true (type: boolean) - outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 13 Data size: 1456 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - key expressions: _col0 (type: string), _col1 (type: int) - sort order: ++ - Map-reduce partition columns: _col0 (type: string), _col1 (type: int) - Statistics: Num rows: 13 Data size: 1456 Basic stats: COMPLETE Column stats: COMPLETE - value expressions: _col2 (type: boolean) Reducer 2 Execution mode: llap Reduce Operator Tree: @@ -2824,6 +2733,27 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: int) Statistics: Num rows: 13 Data size: 260 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: bigint), _col2 (type: bigint) + Reducer 9 + Execution mode: llap + Reduce Operator Tree: + Group By Operator + keys: KEY._col0 (type: string), KEY._col1 (type: int) + mode: mergepartial + outputColumnNames: _col0, _col1 + Statistics: Num rows: 13 Data size: 1404 Basic stats: COMPLETE Column stats: COMPLETE + Filter Operator + predicate: _col0 is not null (type: boolean) + Statistics: Num rows: 13 Data size: 1404 Basic stats: COMPLETE Column stats: COMPLETE + Select Operator + expressions: _col0 (type: string), _col1 (type: int), true (type: boolean) + outputColumnNames: _col0, _col1, _col2 + Statistics: Num rows: 13 Data size: 1456 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + key expressions: _col0 (type: string), _col1 (type: int) + sort order: ++ + Map-reduce partition columns: _col0 (type: string), _col1 (type: int) + Statistics: Num rows: 13 Data size: 1456 Basic stats: COMPLETE Column stats: COMPLETE + value expressions: _col2 (type: boolean) Stage: Stage-0 Fetch Operator @@ -3066,12 +2996,12 @@ STAGE PLANS: #### A masked pattern was here #### Edges: Reducer 10 <- Map 9 (CUSTOM_SIMPLE_EDGE) - Reducer 12 <- Map 11 (CUSTOM_SIMPLE_EDGE) + Reducer 11 <- Map 9 (CUSTOM_SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE) Reducer 3 <- Map 5 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) Reducer 7 <- Map 6 (CUSTOM_SIMPLE_EDGE), Reducer 10 (CUSTOM_SIMPLE_EDGE) - Reducer 8 <- Reducer 12 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) + Reducer 8 <- Reducer 11 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -3094,26 +3024,6 @@ STAGE PLANS: Statistics: Num rows: 50 Data size: 200 Basic stats: COMPLETE Column stats: COMPLETE Execution mode: llap LLAP IO: no inputs - Map 11 - Map Operator Tree: - TableScan - alias: lineitem - Statistics: Num rows: 100 Data size: 800 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: l_quantity (type: double) - outputColumnNames: l_quantity - Statistics: Num rows: 100 Data size: 800 Basic stats: COMPLETE Column stats: COMPLETE - Group By Operator - aggregations: avg(l_quantity) - mode: hash - outputColumnNames: _col0 - Statistics: Num rows: 1 Data size: 80 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - sort order: - Statistics: Num rows: 1 Data size: 80 Basic stats: COMPLETE Column stats: COMPLETE - value expressions: _col0 (type: struct) - Execution mode: llap - LLAP IO: no inputs Map 5 Map Operator Tree: TableScan @@ -3170,6 +3080,19 @@ STAGE PLANS: sort order: Statistics: Num rows: 1 Data size: 80 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col0 (type: struct) + Select Operator + expressions: l_quantity (type: double) + outputColumnNames: l_quantity + Statistics: Num rows: 100 Data size: 800 Basic stats: COMPLETE Column stats: COMPLETE + Group By Operator + aggregations: avg(l_quantity) + mode: hash + outputColumnNames: _col0 + Statistics: Num rows: 1 Data size: 80 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + sort order: + Statistics: Num rows: 1 Data size: 80 Basic stats: COMPLETE Column stats: COMPLETE + value expressions: _col0 (type: struct) Execution mode: llap LLAP IO: no inputs Reducer 10 @@ -3189,7 +3112,7 @@ STAGE PLANS: sort order: Statistics: Num rows: 1 Data size: 16 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col0 (type: bigint), _col1 (type: bigint) - Reducer 12 + Reducer 11 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -3351,13 +3274,13 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 11 <- Map 10 (SIMPLE_EDGE) - Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) + Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (SIMPLE_EDGE) - Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) - Reducer 6 <- Map 5 (SIMPLE_EDGE) - Reducer 8 <- Map 7 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE) - Reducer 9 <- Reducer 8 (SIMPLE_EDGE) + Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) + Reducer 5 <- Map 1 (SIMPLE_EDGE) + Reducer 6 <- Map 1 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) + Reducer 7 <- Reducer 6 (SIMPLE_EDGE) + Reducer 9 <- Map 8 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -3374,33 +3297,6 @@ STAGE PLANS: sort order: ++ Map-reduce partition columns: _col0 (type: string), _col1 (type: string) Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs - Map 10 - Map Operator Tree: - TableScan - alias: s2 - Statistics: Num rows: 500 Data size: 45500 Basic stats: COMPLETE Column stats: COMPLETE - Filter Operator - predicate: value is not null (type: boolean) - Statistics: Num rows: 500 Data size: 45500 Basic stats: COMPLETE Column stats: COMPLETE - Group By Operator - keys: value (type: string) - mode: hash - outputColumnNames: _col0 - Statistics: Num rows: 214 Data size: 19474 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: 214 Data size: 19474 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs - Map 5 - Map Operator Tree: - TableScan - alias: src - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: value is not null (type: boolean) Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE @@ -3414,13 +3310,6 @@ STAGE PLANS: sort order: ++ Map-reduce partition columns: _col0 (type: string), _col1 (type: string) Statistics: Num rows: 250 Data size: 44500 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs - Map 7 - Map Operator Tree: - TableScan - alias: s1 - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: (key > '9') (type: boolean) Statistics: Num rows: 166 Data size: 29548 Basic stats: COMPLETE Column stats: COMPLETE @@ -3436,19 +3325,26 @@ STAGE PLANS: value expressions: _col0 (type: string) Execution mode: llap LLAP IO: no inputs - Reducer 11 + Map 8 + Map Operator Tree: + TableScan + alias: s2 + Statistics: Num rows: 500 Data size: 45500 Basic stats: COMPLETE Column stats: COMPLETE + Filter Operator + predicate: value is not null (type: boolean) + Statistics: Num rows: 500 Data size: 45500 Basic stats: COMPLETE Column stats: COMPLETE + Group By Operator + keys: value (type: string) + mode: hash + outputColumnNames: _col0 + Statistics: Num rows: 214 Data size: 19474 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: 214 Data size: 19474 Basic stats: COMPLETE Column stats: COMPLETE Execution mode: llap - Reduce Operator Tree: - Group By Operator - keys: KEY._col0 (type: string) - mode: mergepartial - outputColumnNames: _col0 - Statistics: Num rows: 214 Data size: 19474 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: 214 Data size: 19474 Basic stats: COMPLETE Column stats: COMPLETE + LLAP IO: no inputs Reducer 2 Execution mode: llap Reduce Operator Tree: @@ -3508,7 +3404,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 + Reducer 5 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -3521,7 +3417,7 @@ STAGE PLANS: sort order: ++ Map-reduce partition columns: _col0 (type: string), _col1 (type: string) Statistics: Num rows: 250 Data size: 44500 Basic stats: COMPLETE Column stats: COMPLETE - Reducer 8 + Reducer 6 Execution mode: llap Reduce Operator Tree: Merge Join Operator @@ -3544,7 +3440,7 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 69 Data size: 6555 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: bigint) - Reducer 9 + Reducer 7 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -3574,6 +3470,19 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: bigint) Statistics: Num rows: 34 Data size: 272 Basic stats: COMPLETE Column stats: COMPLETE + Reducer 9 + Execution mode: llap + Reduce Operator Tree: + Group By Operator + keys: KEY._col0 (type: string) + mode: mergepartial + outputColumnNames: _col0 + Statistics: Num rows: 214 Data size: 19474 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: 214 Data size: 19474 Basic stats: COMPLETE Column stats: COMPLETE Stage: Stage-0 Fetch Operator @@ -4083,9 +3992,9 @@ STAGE PLANS: #### A masked pattern was here #### Edges: Reducer 2 <- Map 1 (CUSTOM_SIMPLE_EDGE), Reducer 5 (CUSTOM_SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) Reducer 5 <- Map 4 (CUSTOM_SIMPLE_EDGE) - Reducer 7 <- Map 6 (SIMPLE_EDGE) + Reducer 6 <- Map 4 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -4121,13 +4030,6 @@ STAGE PLANS: sort order: Statistics: Num rows: 1 Data size: 16 Basic stats: COMPLETE Column stats: NONE value expressions: _col0 (type: bigint), _col1 (type: bigint) - Execution mode: llap - LLAP IO: no inputs - Map 6 - Map Operator Tree: - TableScan - alias: tnull - Statistics: Num rows: 3 Data size: 14 Basic stats: COMPLETE Column stats: NONE Group By Operator keys: i (type: int) mode: hash @@ -4194,7 +4096,7 @@ STAGE PLANS: sort order: Statistics: Num rows: 1 Data size: 16 Basic stats: COMPLETE Column stats: NONE value expressions: _col0 (type: bigint), _col1 (type: bigint) - Reducer 7 + Reducer 6 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -4251,13 +4153,13 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 11 <- Map 10 (SIMPLE_EDGE) + Reducer 10 <- Map 9 (SIMPLE_EDGE) Reducer 2 <- Map 1 (CUSTOM_SIMPLE_EDGE), Reducer 7 (CUSTOM_SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) - Reducer 4 <- Reducer 11 (CUSTOM_SIMPLE_EDGE), Reducer 3 (CUSTOM_SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) + Reducer 4 <- Reducer 10 (CUSTOM_SIMPLE_EDGE), Reducer 3 (CUSTOM_SIMPLE_EDGE) Reducer 5 <- Reducer 4 (CUSTOM_SIMPLE_EDGE) Reducer 7 <- Map 6 (CUSTOM_SIMPLE_EDGE) - Reducer 9 <- Map 8 (SIMPLE_EDGE) + Reducer 8 <- Map 6 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -4275,25 +4177,6 @@ STAGE PLANS: value expressions: _col0 (type: string), _col1 (type: string) Execution mode: llap LLAP IO: no inputs - Map 10 - Map Operator Tree: - TableScan - alias: src - Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: COMPLETE - Group By Operator - keys: true (type: boolean) - mode: hash - outputColumnNames: _col0 - Statistics: Num rows: 1 Data size: 4 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - key expressions: _col0 (type: boolean) - sort order: + - Map-reduce partition columns: _col0 (type: boolean) - Statistics: Num rows: 1 Data size: 4 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs Map 6 Map Operator Tree: TableScan @@ -4313,13 +4196,6 @@ STAGE PLANS: sort order: Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col0 (type: bigint) - Execution mode: llap - LLAP IO: no inputs - Map 8 - Map Operator Tree: - TableScan - alias: s1 - Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: (key > '9') (type: boolean) Statistics: Num rows: 166 Data size: 14442 Basic stats: COMPLETE Column stats: COMPLETE @@ -4335,7 +4211,26 @@ STAGE PLANS: Statistics: Num rows: 69 Data size: 6003 Basic stats: COMPLETE Column stats: COMPLETE Execution mode: llap LLAP IO: no inputs - Reducer 11 + Map 9 + Map Operator Tree: + TableScan + alias: src + Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: COMPLETE + Select Operator + Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: COMPLETE + Group By Operator + keys: true (type: boolean) + mode: hash + outputColumnNames: _col0 + Statistics: Num rows: 1 Data size: 4 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + key expressions: _col0 (type: boolean) + sort order: + + Map-reduce partition columns: _col0 (type: boolean) + Statistics: Num rows: 1 Data size: 4 Basic stats: COMPLETE Column stats: COMPLETE + Execution mode: llap + LLAP IO: no inputs + Reducer 10 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -4431,7 +4326,7 @@ STAGE PLANS: sort order: Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col0 (type: bigint) - Reducer 9 + Reducer 8 Execution mode: llap Reduce Operator Tree: Group By Operator diff --git ql/src/test/results/clientpositive/llap/subquery_notin.q.out ql/src/test/results/clientpositive/llap/subquery_notin.q.out index d89361d..6a8a3f9 100644 --- ql/src/test/results/clientpositive/llap/subquery_notin.q.out +++ ql/src/test/results/clientpositive/llap/subquery_notin.q.out @@ -25,9 +25,9 @@ STAGE PLANS: #### A masked pattern was here #### Edges: Reducer 2 <- Map 1 (CUSTOM_SIMPLE_EDGE), Reducer 5 (CUSTOM_SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) Reducer 5 <- Map 4 (CUSTOM_SIMPLE_EDGE) - Reducer 7 <- Map 6 (SIMPLE_EDGE) + Reducer 6 <- Map 4 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -62,13 +62,6 @@ STAGE PLANS: sort order: Statistics: Num rows: 1 Data size: 16 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col0 (type: bigint), _col1 (type: bigint) - Execution mode: llap - LLAP IO: no inputs - Map 6 - Map Operator Tree: - TableScan - alias: s1 - Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: (key > '2') (type: boolean) Statistics: Num rows: 166 Data size: 14442 Basic stats: COMPLETE Column stats: COMPLETE @@ -138,7 +131,7 @@ STAGE PLANS: sort order: Statistics: Num rows: 1 Data size: 16 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col0 (type: bigint), _col1 (type: bigint) - Reducer 7 + Reducer 6 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -324,12 +317,12 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) - Reducer 5 <- Map 4 (SIMPLE_EDGE) - Reducer 6 <- Reducer 5 (SIMPLE_EDGE) - Reducer 8 <- Map 7 (SIMPLE_EDGE) - Reducer 9 <- Reducer 8 (SIMPLE_EDGE) + Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) + Reducer 4 <- Map 1 (SIMPLE_EDGE) + Reducer 5 <- Reducer 4 (SIMPLE_EDGE) + Reducer 6 <- Map 1 (SIMPLE_EDGE) + Reducer 7 <- Reducer 6 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -347,13 +340,6 @@ STAGE PLANS: Map-reduce partition columns: _col1 (type: string) Statistics: Num rows: 26 Data size: 5798 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col0 (type: string), _col2 (type: int) - Execution mode: llap - LLAP IO: no inputs - Map 4 - Map Operator Tree: - TableScan - alias: part - Statistics: Num rows: 26 Data size: 5798 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: (p_mfgr = p_mfgr) (type: boolean) Statistics: Num rows: 13 Data size: 2899 Basic stats: COMPLETE Column stats: COMPLETE @@ -364,13 +350,6 @@ STAGE PLANS: Statistics: Num rows: 13 Data size: 2899 Basic stats: COMPLETE Column stats: COMPLETE TopN Hash Memory Usage: 0.1 value expressions: p_name (type: string) - Execution mode: llap - LLAP IO: no inputs - Map 7 - Map Operator Tree: - TableScan - alias: part - Statistics: Num rows: 26 Data size: 5798 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: (p_mfgr = p_mfgr) (type: boolean) Statistics: Num rows: 13 Data size: 2899 Basic stats: COMPLETE Column stats: COMPLETE @@ -425,7 +404,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 + Reducer 4 Execution mode: llap Reduce Operator Tree: Select Operator @@ -472,7 +451,7 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 1 Data size: 114 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: bigint), _col2 (type: bigint) - Reducer 6 + Reducer 5 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -487,7 +466,7 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 1 Data size: 114 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: bigint), _col2 (type: bigint) - Reducer 8 + Reducer 6 Execution mode: llap Reduce Operator Tree: Select Operator @@ -532,7 +511,7 @@ STAGE PLANS: sort order: ++ Map-reduce partition columns: _col0 (type: string), _col1 (type: string) Statistics: Num rows: 2 Data size: 438 Basic stats: COMPLETE Column stats: COMPLETE - Reducer 9 + Reducer 7 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -627,11 +606,11 @@ STAGE PLANS: #### A masked pattern was here #### Edges: Reducer 2 <- Map 1 (CUSTOM_SIMPLE_EDGE), Reducer 6 (CUSTOM_SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) Reducer 5 <- Map 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (CUSTOM_SIMPLE_EDGE) - Reducer 8 <- Map 7 (SIMPLE_EDGE) - Reducer 9 <- Reducer 8 (CUSTOM_SIMPLE_EDGE) + Reducer 7 <- Map 4 (SIMPLE_EDGE) + Reducer 8 <- Reducer 7 (CUSTOM_SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -660,13 +639,6 @@ STAGE PLANS: Map-reduce partition columns: p_mfgr (type: string) Statistics: Num rows: 26 Data size: 2652 Basic stats: COMPLETE Column stats: COMPLETE TopN Hash Memory Usage: 0.1 - Execution mode: llap - LLAP IO: no inputs - Map 7 - Map Operator Tree: - TableScan - alias: part - Statistics: Num rows: 26 Data size: 2652 Basic stats: COMPLETE Column stats: COMPLETE Reduce Output Operator key expressions: p_mfgr (type: string), p_size (type: int) sort order: ++ @@ -778,7 +750,7 @@ STAGE PLANS: sort order: Statistics: Num rows: 1 Data size: 16 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col0 (type: bigint), _col1 (type: bigint) - Reducer 8 + Reducer 7 Execution mode: llap Reduce Operator Tree: Select Operator @@ -822,7 +794,7 @@ STAGE PLANS: sort order: Statistics: Num rows: 1 Data size: 76 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col0 (type: struct) - Reducer 9 + Reducer 8 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -919,15 +891,15 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 10 <- Reducer 9 (SIMPLE_EDGE) - Reducer 12 <- Map 11 (SIMPLE_EDGE) - Reducer 13 <- Reducer 12 (SIMPLE_EDGE) + Reducer 10 <- Map 5 (SIMPLE_EDGE) + Reducer 11 <- Reducer 10 (SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) - Reducer 3 <- Reducer 10 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) - Reducer 4 <- Reducer 13 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) + Reducer 4 <- Reducer 11 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) Reducer 6 <- Map 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) - Reducer 9 <- Map 8 (SIMPLE_EDGE) + Reducer 8 <- Map 5 (SIMPLE_EDGE) + Reducer 9 <- Reducer 8 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -947,7 +919,7 @@ STAGE PLANS: value expressions: _col0 (type: string), _col2 (type: int) Execution mode: llap LLAP IO: no inputs - Map 11 + Map 5 Map Operator Tree: TableScan alias: part @@ -961,13 +933,6 @@ STAGE PLANS: Map-reduce partition columns: p_mfgr (type: string) Statistics: Num rows: 13 Data size: 1326 Basic stats: COMPLETE Column stats: COMPLETE TopN Hash Memory Usage: 0.1 - Execution mode: llap - LLAP IO: no inputs - Map 5 - Map Operator Tree: - TableScan - alias: part - Statistics: Num rows: 26 Data size: 2652 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: (p_mfgr = p_mfgr) (type: boolean) Statistics: Num rows: 13 Data size: 1326 Basic stats: COMPLETE Column stats: COMPLETE @@ -977,13 +942,6 @@ STAGE PLANS: Map-reduce partition columns: p_mfgr (type: string) Statistics: Num rows: 13 Data size: 1326 Basic stats: COMPLETE Column stats: COMPLETE TopN Hash Memory Usage: 0.1 - Execution mode: llap - LLAP IO: no inputs - Map 8 - Map Operator Tree: - TableScan - alias: part - Statistics: Num rows: 26 Data size: 2652 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: (p_mfgr = p_mfgr) (type: boolean) Statistics: Num rows: 13 Data size: 1326 Basic stats: COMPLETE Column stats: COMPLETE @@ -998,27 +956,6 @@ STAGE PLANS: Reducer 10 Execution mode: llap Reduce Operator Tree: - Group By Operator - aggregations: min(VALUE._col0) - keys: KEY._col0 (type: string) - mode: mergepartial - outputColumnNames: _col0, _col1 - Statistics: Num rows: 1 Data size: 102 Basic stats: COMPLETE Column stats: COMPLETE - Group By Operator - aggregations: count(), count(_col1) - keys: _col0 (type: string) - mode: complete - outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 1 Data size: 114 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: 1 Data size: 114 Basic stats: COMPLETE Column stats: COMPLETE - value expressions: _col1 (type: bigint), _col2 (type: bigint) - Reducer 12 - Execution mode: llap - Reduce Operator Tree: Select Operator expressions: KEY.reducesinkkey0 (type: string), KEY.reducesinkkey1 (type: int) outputColumnNames: _col2, _col5 @@ -1063,7 +1000,7 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 1 Data size: 102 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: int) - Reducer 13 + Reducer 11 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -1220,7 +1157,7 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 1 Data size: 106 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: bigint) - Reducer 9 + Reducer 8 Execution mode: llap Reduce Operator Tree: Select Operator @@ -1267,6 +1204,27 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 1 Data size: 102 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: int) + Reducer 9 + Execution mode: llap + Reduce Operator Tree: + Group By Operator + aggregations: min(VALUE._col0) + keys: KEY._col0 (type: string) + mode: mergepartial + outputColumnNames: _col0, _col1 + Statistics: Num rows: 1 Data size: 102 Basic stats: COMPLETE Column stats: COMPLETE + Group By Operator + aggregations: count(), count(_col1) + keys: _col0 (type: string) + mode: complete + outputColumnNames: _col0, _col1, _col2 + Statistics: Num rows: 1 Data size: 114 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: 1 Data size: 114 Basic stats: COMPLETE Column stats: COMPLETE + value expressions: _col1 (type: bigint), _col2 (type: bigint) Stage: Stage-0 Fetch Operator @@ -1525,10 +1483,10 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 2 <- Map 1 (CUSTOM_SIMPLE_EDGE), Reducer 5 (CUSTOM_SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) - Reducer 5 <- Map 4 (CUSTOM_SIMPLE_EDGE) - Reducer 7 <- Map 6 (SIMPLE_EDGE) + Reducer 2 <- Map 1 (CUSTOM_SIMPLE_EDGE), Reducer 4 (CUSTOM_SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) + Reducer 4 <- Map 1 (CUSTOM_SIMPLE_EDGE) + Reducer 5 <- Map 1 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -1549,15 +1507,6 @@ STAGE PLANS: sort order: Statistics: Num rows: 166 Data size: 14442 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col0 (type: string) - Execution mode: llap - LLAP IO: no inputs - Map 4 - Map Operator Tree: - TableScan - alias: src - properties: - insideView TRUE - Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: (key < '11') (type: boolean) Statistics: Num rows: 166 Data size: 14442 Basic stats: COMPLETE Column stats: COMPLETE @@ -1574,15 +1523,6 @@ STAGE PLANS: sort order: Statistics: Num rows: 1 Data size: 16 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col0 (type: bigint), _col1 (type: bigint) - Execution mode: llap - LLAP IO: no inputs - Map 6 - Map Operator Tree: - TableScan - alias: src - properties: - insideView TRUE - Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: ((key < '11') and CASE WHEN ((key > '104')) THEN (null) ELSE ((key < '11')) END) (type: boolean) Statistics: Num rows: 83 Data size: 7221 Basic stats: COMPLETE Column stats: COMPLETE @@ -1644,7 +1584,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 + Reducer 4 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -1656,7 +1596,7 @@ STAGE PLANS: sort order: Statistics: Num rows: 1 Data size: 16 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col0 (type: bigint), _col1 (type: bigint) - Reducer 7 + Reducer 5 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -1710,9 +1650,9 @@ STAGE PLANS: #### A masked pattern was here #### Edges: Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) Reducer 5 <- Map 4 (SIMPLE_EDGE) - Reducer 7 <- Map 6 (SIMPLE_EDGE) + Reducer 6 <- Map 4 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -1759,13 +1699,6 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 13 Data size: 1560 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: bigint), _col2 (type: bigint) - Execution mode: llap - LLAP IO: no inputs - Map 6 - Map Operator Tree: - TableScan - alias: p - Statistics: Num rows: 26 Data size: 2808 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: p_type is not null (type: boolean) Statistics: Num rows: 26 Data size: 2808 Basic stats: COMPLETE Column stats: COMPLETE @@ -1842,7 +1775,7 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 13 Data size: 1560 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: bigint), _col2 (type: bigint) - Reducer 7 + Reducer 6 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -1920,11 +1853,11 @@ STAGE PLANS: #### A masked pattern was here #### Edges: Reducer 2 <- Map 1 (CUSTOM_SIMPLE_EDGE), Reducer 6 (CUSTOM_SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) Reducer 5 <- Map 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (CUSTOM_SIMPLE_EDGE) - Reducer 8 <- Map 7 (SIMPLE_EDGE) - Reducer 9 <- Reducer 8 (SIMPLE_EDGE) + Reducer 7 <- Map 4 (SIMPLE_EDGE) + Reducer 8 <- Reducer 7 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -1963,13 +1896,6 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 13 Data size: 1404 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: int) - Execution mode: llap - LLAP IO: no inputs - Map 7 - Map Operator Tree: - TableScan - alias: part - Statistics: Num rows: 26 Data size: 2808 Basic stats: COMPLETE Column stats: COMPLETE Select Operator expressions: p_type (type: string), p_size (type: int) outputColumnNames: p_type, p_size @@ -2064,7 +1990,7 @@ STAGE PLANS: sort order: Statistics: Num rows: 1 Data size: 16 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col0 (type: bigint), _col1 (type: bigint) - Reducer 8 + Reducer 7 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -2087,7 +2013,7 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: int) Statistics: Num rows: 6 Data size: 24 Basic stats: COMPLETE Column stats: COMPLETE - Reducer 9 + Reducer 8 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -2152,11 +2078,11 @@ STAGE PLANS: #### A masked pattern was here #### Edges: Reducer 2 <- Map 1 (CUSTOM_SIMPLE_EDGE), Reducer 6 (CUSTOM_SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) Reducer 5 <- Map 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (CUSTOM_SIMPLE_EDGE) - Reducer 8 <- Map 7 (SIMPLE_EDGE) - Reducer 9 <- Reducer 8 (SIMPLE_EDGE) + Reducer 7 <- Map 4 (SIMPLE_EDGE) + Reducer 8 <- Reducer 7 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -2195,13 +2121,6 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 13 Data size: 1404 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: int) - Execution mode: llap - LLAP IO: no inputs - Map 7 - Map Operator Tree: - TableScan - alias: part - Statistics: Num rows: 26 Data size: 2808 Basic stats: COMPLETE Column stats: COMPLETE Select Operator expressions: p_partkey (type: int), p_type (type: string) outputColumnNames: p_partkey, p_type @@ -2296,7 +2215,7 @@ STAGE PLANS: sort order: Statistics: Num rows: 1 Data size: 16 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col0 (type: bigint), _col1 (type: bigint) - Reducer 8 + Reducer 7 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -2319,7 +2238,7 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: int) Statistics: Num rows: 6 Data size: 24 Basic stats: COMPLETE Column stats: COMPLETE - Reducer 9 + Reducer 8 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -2391,13 +2310,13 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 11 <- Map 10 (SIMPLE_EDGE) + Reducer 10 <- Map 9 (SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (CUSTOM_SIMPLE_EDGE) Reducer 6 <- Map 5 (SIMPLE_EDGE) - Reducer 8 <- Map 7 (SIMPLE_EDGE) - Reducer 9 <- Reducer 11 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) + Reducer 7 <- Map 5 (SIMPLE_EDGE) + Reducer 8 <- Reducer 10 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -2417,23 +2336,6 @@ STAGE PLANS: value expressions: _col1 (type: int) Execution mode: llap LLAP IO: no inputs - Map 10 - Map Operator Tree: - TableScan - alias: e - Statistics: Num rows: 26 Data size: 104 Basic stats: COMPLETE Column stats: COMPLETE - Group By Operator - keys: p_size (type: int) - mode: hash - outputColumnNames: _col0 - Statistics: Num rows: 13 Data size: 52 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - key expressions: _col0 (type: int) - sort order: + - Map-reduce partition columns: _col0 (type: int) - Statistics: Num rows: 13 Data size: 52 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs Map 5 Map Operator Tree: TableScan @@ -2454,13 +2356,6 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 13 Data size: 1781 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: bigint), _col2 (type: bigint) - Execution mode: llap - LLAP IO: no inputs - Map 7 - Map Operator Tree: - TableScan - alias: part - Statistics: Num rows: 26 Data size: 3250 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: p_name is not null (type: boolean) Statistics: Num rows: 26 Data size: 3250 Basic stats: COMPLETE Column stats: COMPLETE @@ -2476,7 +2371,24 @@ STAGE PLANS: Statistics: Num rows: 13 Data size: 1625 Basic stats: COMPLETE Column stats: COMPLETE Execution mode: llap LLAP IO: no inputs - Reducer 11 + Map 9 + Map Operator Tree: + TableScan + alias: e + Statistics: Num rows: 26 Data size: 104 Basic stats: COMPLETE Column stats: COMPLETE + Group By Operator + keys: p_size (type: int) + mode: hash + outputColumnNames: _col0 + Statistics: Num rows: 13 Data size: 52 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + key expressions: _col0 (type: int) + sort order: + + Map-reduce partition columns: _col0 (type: int) + Statistics: Num rows: 13 Data size: 52 Basic stats: COMPLETE Column stats: COMPLETE + Execution mode: llap + LLAP IO: no inputs + Reducer 10 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -2562,7 +2474,7 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 13 Data size: 1781 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: bigint), _col2 (type: bigint) - Reducer 8 + Reducer 7 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -2580,7 +2492,7 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: int) Statistics: Num rows: 13 Data size: 1677 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: string), _col2 (type: boolean) - Reducer 9 + Reducer 8 Execution mode: llap Reduce Operator Tree: Merge Join Operator @@ -2628,11 +2540,11 @@ STAGE PLANS: #### A masked pattern was here #### Edges: Reducer 2 <- Map 1 (CUSTOM_SIMPLE_EDGE), Reducer 6 (CUSTOM_SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) Reducer 5 <- Map 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (CUSTOM_SIMPLE_EDGE) - Reducer 8 <- Map 7 (SIMPLE_EDGE) - Reducer 9 <- Reducer 8 (SIMPLE_EDGE) + Reducer 7 <- Map 4 (SIMPLE_EDGE) + Reducer 8 <- Reducer 7 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -2671,13 +2583,6 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 13 Data size: 1456 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: double) - Execution mode: llap - LLAP IO: no inputs - Map 7 - Map Operator Tree: - TableScan - alias: part - Statistics: Num rows: 26 Data size: 2912 Basic stats: COMPLETE Column stats: COMPLETE Select Operator expressions: p_type (type: string), p_retailprice (type: double) outputColumnNames: p_type, p_retailprice @@ -2772,7 +2677,7 @@ STAGE PLANS: sort order: Statistics: Num rows: 1 Data size: 16 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col0 (type: bigint), _col1 (type: bigint) - Reducer 8 + Reducer 7 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -2795,7 +2700,7 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: bigint) Statistics: Num rows: 6 Data size: 48 Basic stats: COMPLETE Column stats: COMPLETE - Reducer 9 + Reducer 8 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -2843,14 +2748,14 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 10 <- Map 9 (SIMPLE_EDGE), Reducer 13 (SIMPLE_EDGE) - Reducer 11 <- Reducer 10 (SIMPLE_EDGE) - Reducer 13 <- Map 12 (SIMPLE_EDGE) + Reducer 10 <- Map 9 (SIMPLE_EDGE) + Reducer 11 <- Map 9 (SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) - Reducer 3 <- Reducer 11 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) - Reducer 5 <- Map 4 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) + Reducer 5 <- Map 4 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) - Reducer 8 <- Map 7 (SIMPLE_EDGE) + Reducer 7 <- Map 4 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE) + Reducer 8 <- Reducer 7 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -2870,24 +2775,7 @@ STAGE PLANS: value expressions: _col0 (type: int), _col1 (type: string), _col2 (type: string), _col3 (type: string), _col4 (type: string), _col6 (type: string), _col7 (type: double), _col8 (type: string) Execution mode: llap LLAP IO: no inputs - Map 12 - Map Operator Tree: - TableScan - alias: part - Statistics: Num rows: 26 Data size: 104 Basic stats: COMPLETE Column stats: COMPLETE - Group By Operator - keys: p_size (type: int) - mode: hash - outputColumnNames: _col0 - Statistics: Num rows: 13 Data size: 52 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - key expressions: _col0 (type: int) - sort order: + - Map-reduce partition columns: _col0 (type: int) - Statistics: Num rows: 13 Data size: 52 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs - Map 4 + Map 4 Map Operator Tree: TableScan alias: p @@ -2902,9 +2790,19 @@ STAGE PLANS: Map-reduce partition columns: _col2 (type: int), _col0 (type: int) Statistics: Num rows: 26 Data size: 3354 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: string) + Select Operator + expressions: p_partkey (type: int), p_name (type: string), p_size (type: int) + outputColumnNames: _col0, _col1, _col2 + Statistics: Num rows: 26 Data size: 3354 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + key expressions: _col2 (type: int), _col0 (type: int) + sort order: ++ + Map-reduce partition columns: _col2 (type: int), _col0 (type: int) + Statistics: Num rows: 26 Data size: 3354 Basic stats: COMPLETE Column stats: COMPLETE + value expressions: _col1 (type: string) Execution mode: llap LLAP IO: no inputs - Map 7 + Map 9 Map Operator Tree: TableScan alias: part @@ -2919,68 +2817,32 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: int) Statistics: Num rows: 13 Data size: 52 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs - Map 9 - Map Operator Tree: - TableScan - alias: p - Statistics: Num rows: 26 Data size: 3354 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: p_partkey (type: int), p_name (type: string), p_size (type: int) - outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 26 Data size: 3354 Basic stats: COMPLETE Column stats: COMPLETE + Group By Operator + keys: p_size (type: int) + mode: hash + outputColumnNames: _col0 + Statistics: Num rows: 13 Data size: 52 Basic stats: COMPLETE Column stats: COMPLETE Reduce Output Operator - key expressions: _col2 (type: int), _col0 (type: int) - sort order: ++ - Map-reduce partition columns: _col2 (type: int), _col0 (type: int) - Statistics: Num rows: 26 Data size: 3354 Basic stats: COMPLETE Column stats: COMPLETE - value expressions: _col1 (type: string) + key expressions: _col0 (type: int) + sort order: + + Map-reduce partition columns: _col0 (type: int) + Statistics: Num rows: 13 Data size: 52 Basic stats: COMPLETE Column stats: COMPLETE Execution mode: llap LLAP IO: no inputs Reducer 10 Execution mode: llap Reduce Operator Tree: - Merge Join Operator - condition map: - Inner Join 0 to 1 - keys: - 0 _col2 (type: int), _col0 (type: int) - 1 _col0 (type: int), (_col0 + 121150) (type: int) - outputColumnNames: _col1, _col3 - Statistics: Num rows: 1 Data size: 125 Basic stats: COMPLETE Column stats: COMPLETE - Group By Operator - keys: _col1 (type: string), _col3 (type: int) - mode: hash - outputColumnNames: _col0, _col1 - Statistics: Num rows: 1 Data size: 125 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - key expressions: _col0 (type: string), _col1 (type: int) - sort order: ++ - Map-reduce partition columns: _col0 (type: string), _col1 (type: int) - Statistics: Num rows: 1 Data size: 125 Basic stats: COMPLETE Column stats: COMPLETE - Reducer 11 - Execution mode: llap - Reduce Operator Tree: Group By Operator - keys: KEY._col0 (type: string), KEY._col1 (type: int) + keys: KEY._col0 (type: int) mode: mergepartial - outputColumnNames: _col0, _col1 - Statistics: Num rows: 1 Data size: 125 Basic stats: COMPLETE Column stats: COMPLETE - Filter Operator - predicate: _col0 is not null (type: boolean) - Statistics: Num rows: 1 Data size: 125 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: _col0 (type: string), _col1 (type: int), true (type: boolean) - outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 1 Data size: 129 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - key expressions: _col0 (type: string), _col1 (type: int) - sort order: ++ - Map-reduce partition columns: _col0 (type: string), _col1 (type: int) - Statistics: Num rows: 1 Data size: 129 Basic stats: COMPLETE Column stats: COMPLETE - value expressions: _col2 (type: boolean) - Reducer 13 + outputColumnNames: _col0 + Statistics: Num rows: 13 Data size: 52 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + key expressions: _col0 (type: int), (_col0 + 121150) (type: int) + sort order: ++ + Map-reduce partition columns: _col0 (type: int), (_col0 + 121150) (type: int) + Statistics: Num rows: 13 Data size: 52 Basic stats: COMPLETE Column stats: COMPLETE + Reducer 11 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -3073,19 +2935,48 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: int) Statistics: Num rows: 1 Data size: 20 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: bigint), _col2 (type: bigint) + Reducer 7 + Execution mode: llap + Reduce Operator Tree: + Merge Join Operator + condition map: + Inner Join 0 to 1 + keys: + 0 _col2 (type: int), _col0 (type: int) + 1 _col0 (type: int), (_col0 + 121150) (type: int) + outputColumnNames: _col1, _col3 + Statistics: Num rows: 1 Data size: 125 Basic stats: COMPLETE Column stats: COMPLETE + Group By Operator + keys: _col1 (type: string), _col3 (type: int) + mode: hash + outputColumnNames: _col0, _col1 + Statistics: Num rows: 1 Data size: 125 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + key expressions: _col0 (type: string), _col1 (type: int) + sort order: ++ + Map-reduce partition columns: _col0 (type: string), _col1 (type: int) + Statistics: Num rows: 1 Data size: 125 Basic stats: COMPLETE Column stats: COMPLETE Reducer 8 Execution mode: llap Reduce Operator Tree: Group By Operator - keys: KEY._col0 (type: int) + keys: KEY._col0 (type: string), KEY._col1 (type: int) mode: mergepartial - outputColumnNames: _col0 - Statistics: Num rows: 13 Data size: 52 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - key expressions: _col0 (type: int), (_col0 + 121150) (type: int) - sort order: ++ - Map-reduce partition columns: _col0 (type: int), (_col0 + 121150) (type: int) - Statistics: Num rows: 13 Data size: 52 Basic stats: COMPLETE Column stats: COMPLETE + outputColumnNames: _col0, _col1 + Statistics: Num rows: 1 Data size: 125 Basic stats: COMPLETE Column stats: COMPLETE + Filter Operator + predicate: _col0 is not null (type: boolean) + Statistics: Num rows: 1 Data size: 125 Basic stats: COMPLETE Column stats: COMPLETE + Select Operator + expressions: _col0 (type: string), _col1 (type: int), true (type: boolean) + outputColumnNames: _col0, _col1, _col2 + Statistics: Num rows: 1 Data size: 129 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + key expressions: _col0 (type: string), _col1 (type: int) + sort order: ++ + Map-reduce partition columns: _col0 (type: string), _col1 (type: int) + Statistics: Num rows: 1 Data size: 129 Basic stats: COMPLETE Column stats: COMPLETE + value expressions: _col2 (type: boolean) Stage: Stage-0 Fetch Operator @@ -3139,9 +3030,9 @@ STAGE PLANS: #### A masked pattern was here #### Edges: Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) Reducer 5 <- Map 4 (SIMPLE_EDGE) - Reducer 7 <- Map 6 (SIMPLE_EDGE) + Reducer 6 <- Map 4 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -3181,13 +3072,6 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: int), _col1 (type: int) Statistics: Num rows: 3 Data size: 72 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col2 (type: bigint), _col3 (type: bigint) - Execution mode: llap - LLAP IO: no inputs - Map 6 - Map Operator Tree: - TableScan - alias: p - Statistics: Num rows: 26 Data size: 3354 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: ((p_size = p_size) and (p_partkey = p_partkey)) (type: boolean) Statistics: Num rows: 6 Data size: 774 Basic stats: COMPLETE Column stats: COMPLETE @@ -3260,7 +3144,7 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: int), _col1 (type: int) Statistics: Num rows: 3 Data size: 72 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col2 (type: bigint), _col3 (type: bigint) - Reducer 7 + Reducer 6 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -3314,9 +3198,9 @@ STAGE PLANS: #### A masked pattern was here #### Edges: Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) Reducer 5 <- Map 4 (SIMPLE_EDGE) - Reducer 7 <- Map 6 (SIMPLE_EDGE) + Reducer 6 <- Map 4 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -3360,13 +3244,6 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 12 Data size: 1296 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: bigint), _col2 (type: bigint) - Execution mode: llap - LLAP IO: no inputs - Map 6 - Map Operator Tree: - TableScan - alias: part - Statistics: Num rows: 26 Data size: 5096 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: p_brand is not null (type: boolean) Statistics: Num rows: 26 Data size: 5096 Basic stats: COMPLETE Column stats: COMPLETE @@ -3443,7 +3320,7 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 12 Data size: 1296 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: bigint), _col2 (type: bigint) - Reducer 7 + Reducer 6 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -3492,14 +3369,14 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 10 <- Map 9 (SIMPLE_EDGE), Reducer 13 (SIMPLE_EDGE) - Reducer 11 <- Reducer 10 (SIMPLE_EDGE) - Reducer 13 <- Map 12 (SIMPLE_EDGE) + Reducer 10 <- Map 9 (SIMPLE_EDGE) + Reducer 11 <- Map 9 (SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) - Reducer 3 <- Reducer 11 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) - Reducer 5 <- Map 4 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) + Reducer 5 <- Map 4 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) - Reducer 8 <- Map 7 (SIMPLE_EDGE) + Reducer 7 <- Map 4 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE) + Reducer 8 <- Reducer 7 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -3519,27 +3396,6 @@ STAGE PLANS: value expressions: _col0 (type: string), _col1 (type: string) Execution mode: llap LLAP IO: no inputs - Map 12 - Map Operator Tree: - TableScan - alias: part - Statistics: Num rows: 26 Data size: 104 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: (p_size + 1) (type: int) - outputColumnNames: _col0 - Statistics: Num rows: 26 Data size: 104 Basic stats: COMPLETE Column stats: COMPLETE - Group By Operator - keys: _col0 (type: int) - mode: hash - outputColumnNames: _col0 - Statistics: Num rows: 13 Data size: 52 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - key expressions: _col0 (type: int) - sort order: + - Map-reduce partition columns: _col0 (type: int) - Statistics: Num rows: 13 Data size: 52 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs Map 4 Map Operator Tree: TableScan @@ -3555,9 +3411,19 @@ STAGE PLANS: Map-reduce partition columns: (_col1 + 1) (type: int) Statistics: Num rows: 26 Data size: 2808 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col0 (type: string) + Select Operator + expressions: p_type (type: string), p_size (type: int) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 26 Data size: 2808 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + key expressions: (_col1 + 1) (type: int) + sort order: + + Map-reduce partition columns: (_col1 + 1) (type: int) + Statistics: Num rows: 26 Data size: 2808 Basic stats: COMPLETE Column stats: COMPLETE + value expressions: _col0 (type: string) Execution mode: llap LLAP IO: no inputs - Map 7 + Map 9 Map Operator Tree: TableScan alias: part @@ -3576,68 +3442,36 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: int) Statistics: Num rows: 13 Data size: 52 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs - Map 9 - Map Operator Tree: - TableScan - alias: part - Statistics: Num rows: 26 Data size: 2808 Basic stats: COMPLETE Column stats: COMPLETE Select Operator - expressions: p_type (type: string), p_size (type: int) - outputColumnNames: _col0, _col1 - Statistics: Num rows: 26 Data size: 2808 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - key expressions: (_col1 + 1) (type: int) - sort order: + - Map-reduce partition columns: (_col1 + 1) (type: int) - Statistics: Num rows: 26 Data size: 2808 Basic stats: COMPLETE Column stats: COMPLETE - value expressions: _col0 (type: string) + expressions: (p_size + 1) (type: int) + outputColumnNames: _col0 + Statistics: Num rows: 26 Data size: 104 Basic stats: COMPLETE Column stats: COMPLETE + Group By Operator + keys: _col0 (type: int) + mode: hash + outputColumnNames: _col0 + Statistics: Num rows: 13 Data size: 52 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + key expressions: _col0 (type: int) + sort order: + + Map-reduce partition columns: _col0 (type: int) + Statistics: Num rows: 13 Data size: 52 Basic stats: COMPLETE Column stats: COMPLETE Execution mode: llap LLAP IO: no inputs Reducer 10 Execution mode: llap Reduce Operator Tree: - Merge Join Operator - condition map: - Inner Join 0 to 1 - keys: - 0 (_col1 + 1) (type: int) - 1 _col0 (type: int) - outputColumnNames: _col0, _col2 - Statistics: Num rows: 18 Data size: 1944 Basic stats: COMPLETE Column stats: COMPLETE - Group By Operator - keys: _col0 (type: string), _col2 (type: int) - mode: hash - outputColumnNames: _col0, _col1 - Statistics: Num rows: 9 Data size: 972 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - key expressions: _col0 (type: string), _col1 (type: int) - sort order: ++ - Map-reduce partition columns: _col0 (type: string), _col1 (type: int) - Statistics: Num rows: 9 Data size: 972 Basic stats: COMPLETE Column stats: COMPLETE - Reducer 11 - Execution mode: llap - Reduce Operator Tree: Group By Operator - keys: KEY._col0 (type: string), KEY._col1 (type: int) + keys: KEY._col0 (type: int) mode: mergepartial - outputColumnNames: _col0, _col1 - Statistics: Num rows: 9 Data size: 972 Basic stats: COMPLETE Column stats: COMPLETE - Filter Operator - predicate: _col0 is not null (type: boolean) - Statistics: Num rows: 9 Data size: 972 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: _col0 (type: string), _col1 (type: int), true (type: boolean) - outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 9 Data size: 1008 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - key expressions: _col0 (type: string), _col1 (type: int) - sort order: ++ - Map-reduce partition columns: _col0 (type: string), _col1 (type: int) - Statistics: Num rows: 9 Data size: 1008 Basic stats: COMPLETE Column stats: COMPLETE - value expressions: _col2 (type: boolean) - Reducer 13 + outputColumnNames: _col0 + Statistics: Num rows: 13 Data size: 52 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + key expressions: _col0 (type: int) + sort order: + + Map-reduce partition columns: _col0 (type: int) + Statistics: Num rows: 13 Data size: 52 Basic stats: COMPLETE Column stats: COMPLETE + Reducer 11 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -3730,19 +3564,48 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: int) Statistics: Num rows: 9 Data size: 180 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: bigint), _col2 (type: bigint) + Reducer 7 + Execution mode: llap + Reduce Operator Tree: + Merge Join Operator + condition map: + Inner Join 0 to 1 + keys: + 0 (_col1 + 1) (type: int) + 1 _col0 (type: int) + outputColumnNames: _col0, _col2 + Statistics: Num rows: 18 Data size: 1944 Basic stats: COMPLETE Column stats: COMPLETE + Group By Operator + keys: _col0 (type: string), _col2 (type: int) + mode: hash + outputColumnNames: _col0, _col1 + Statistics: Num rows: 9 Data size: 972 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + key expressions: _col0 (type: string), _col1 (type: int) + sort order: ++ + Map-reduce partition columns: _col0 (type: string), _col1 (type: int) + Statistics: Num rows: 9 Data size: 972 Basic stats: COMPLETE Column stats: COMPLETE Reducer 8 Execution mode: llap Reduce Operator Tree: Group By Operator - keys: KEY._col0 (type: int) + keys: KEY._col0 (type: string), KEY._col1 (type: int) mode: mergepartial - outputColumnNames: _col0 - Statistics: Num rows: 13 Data size: 52 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - key expressions: _col0 (type: int) - sort order: + - Map-reduce partition columns: _col0 (type: int) - Statistics: Num rows: 13 Data size: 52 Basic stats: COMPLETE Column stats: COMPLETE + outputColumnNames: _col0, _col1 + Statistics: Num rows: 9 Data size: 972 Basic stats: COMPLETE Column stats: COMPLETE + Filter Operator + predicate: _col0 is not null (type: boolean) + Statistics: Num rows: 9 Data size: 972 Basic stats: COMPLETE Column stats: COMPLETE + Select Operator + expressions: _col0 (type: string), _col1 (type: int), true (type: boolean) + outputColumnNames: _col0, _col1, _col2 + Statistics: Num rows: 9 Data size: 1008 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + key expressions: _col0 (type: string), _col1 (type: int) + sort order: ++ + Map-reduce partition columns: _col0 (type: string), _col1 (type: int) + Statistics: Num rows: 9 Data size: 1008 Basic stats: COMPLETE Column stats: COMPLETE + value expressions: _col2 (type: boolean) Stage: Stage-0 Fetch Operator @@ -3798,13 +3661,13 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 11 <- Map 10 (SIMPLE_EDGE) Reducer 2 <- Map 1 (CUSTOM_SIMPLE_EDGE), Reducer 7 (CUSTOM_SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) - Reducer 5 <- Reducer 11 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) + Reducer 5 <- Reducer 4 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) Reducer 7 <- Map 6 (CUSTOM_SIMPLE_EDGE) - Reducer 9 <- Map 8 (SIMPLE_EDGE) + Reducer 8 <- Map 6 (SIMPLE_EDGE) + Reducer 9 <- Map 6 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -3822,30 +3685,6 @@ STAGE PLANS: value expressions: _col0 (type: string), _col1 (type: string) Execution mode: llap LLAP IO: no inputs - Map 10 - Map Operator Tree: - TableScan - alias: s1 - Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE - Filter Operator - predicate: (key = '90') (type: boolean) - Statistics: Num rows: 2 Data size: 174 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - Statistics: Num rows: 2 Data size: 174 Basic stats: COMPLETE Column stats: COMPLETE - Group By Operator - aggregations: count() - keys: '90' (type: string) - mode: hash - outputColumnNames: _col0, _col1 - Statistics: Num rows: 1 Data size: 94 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: 1 Data size: 94 Basic stats: COMPLETE Column stats: COMPLETE - value expressions: _col1 (type: bigint) - Execution mode: llap - LLAP IO: no inputs Map 6 Map Operator Tree: TableScan @@ -3864,13 +3703,6 @@ STAGE PLANS: sort order: Statistics: Num rows: 1 Data size: 16 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col0 (type: bigint), _col1 (type: bigint) - Execution mode: llap - LLAP IO: no inputs - Map 8 - Map Operator Tree: - TableScan - alias: src - Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE Group By Operator keys: key (type: string) mode: hash @@ -3879,40 +3711,27 @@ STAGE PLANS: Reduce Output Operator key expressions: _col0 (type: string) sort order: + - Map-reduce partition columns: _col0 (type: string) - Statistics: Num rows: 205 Data size: 17835 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs - Reducer 11 - Execution mode: llap - Reduce Operator Tree: - Group By Operator - aggregations: count(VALUE._col0) - keys: KEY._col0 (type: string) - mode: mergepartial - outputColumnNames: _col0, _col1 - Statistics: Num rows: 1 Data size: 94 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: _col1 (type: bigint) - outputColumnNames: _col1 - Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE + Map-reduce partition columns: _col0 (type: string) + Statistics: Num rows: 205 Data size: 17835 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator - predicate: _col1 is not null (type: boolean) - Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE + predicate: (key = '90') (type: boolean) + Statistics: Num rows: 2 Data size: 174 Basic stats: COMPLETE Column stats: COMPLETE Select Operator - expressions: _col1 (type: bigint) - outputColumnNames: _col0 - Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE + Statistics: Num rows: 2 Data size: 174 Basic stats: COMPLETE Column stats: COMPLETE Group By Operator - keys: _col0 (type: bigint) + aggregations: count() + keys: '90' (type: string) mode: hash - outputColumnNames: _col0 - Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE + outputColumnNames: _col0, _col1 + Statistics: Num rows: 1 Data size: 94 Basic stats: COMPLETE Column stats: COMPLETE Reduce Output Operator - key expressions: _col0 (type: bigint) + key expressions: _col0 (type: string) sort order: + - Map-reduce partition columns: _col0 (type: bigint) - Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE + Map-reduce partition columns: _col0 (type: string) + Statistics: Num rows: 1 Data size: 94 Basic stats: COMPLETE Column stats: COMPLETE + value expressions: _col1 (type: bigint) + Execution mode: llap + LLAP IO: no inputs Reducer 2 Execution mode: llap Reduce Operator Tree: @@ -4008,7 +3827,7 @@ STAGE PLANS: sort order: Statistics: Num rows: 1 Data size: 16 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col0 (type: bigint), _col1 (type: bigint) - Reducer 9 + Reducer 8 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -4026,6 +3845,36 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 205 Data size: 18655 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: boolean) + Reducer 9 + Execution mode: llap + Reduce Operator Tree: + Group By Operator + aggregations: count(VALUE._col0) + keys: KEY._col0 (type: string) + mode: mergepartial + outputColumnNames: _col0, _col1 + Statistics: Num rows: 1 Data size: 94 Basic stats: COMPLETE Column stats: COMPLETE + Select Operator + expressions: _col1 (type: bigint) + outputColumnNames: _col1 + Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE + Filter Operator + predicate: _col1 is not null (type: boolean) + Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE + Select Operator + expressions: _col1 (type: bigint) + outputColumnNames: _col0 + Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE + Group By Operator + keys: _col0 (type: bigint) + mode: hash + outputColumnNames: _col0 + Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + key expressions: _col0 (type: bigint) + sort order: + + Map-reduce partition columns: _col0 (type: bigint) + Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE Stage: Stage-0 Fetch Operator @@ -4086,12 +3935,12 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 11 <- Map 10 (SIMPLE_EDGE) - Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) + Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) - Reducer 5 <- Reducer 11 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) - Reducer 7 <- Map 6 (SIMPLE_EDGE) + Reducer 5 <- Reducer 4 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) + Reducer 6 <- Map 1 (SIMPLE_EDGE) + Reducer 7 <- Map 1 (SIMPLE_EDGE) Reducer 9 <- Map 8 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: @@ -4110,37 +3959,6 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: string) - Execution mode: llap - LLAP IO: no inputs - Map 10 - Map Operator Tree: - TableScan - alias: s1 - Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE - Filter Operator - predicate: (key = '90') (type: boolean) - Statistics: Num rows: 2 Data size: 174 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - Statistics: Num rows: 2 Data size: 174 Basic stats: COMPLETE Column stats: COMPLETE - Group By Operator - aggregations: count() - keys: '90' (type: string) - mode: hash - outputColumnNames: _col0, _col1 - Statistics: Num rows: 1 Data size: 94 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: 1 Data size: 94 Basic stats: COMPLETE Column stats: COMPLETE - value expressions: _col1 (type: bigint) - Execution mode: llap - LLAP IO: no inputs - Map 6 - Map Operator Tree: - TableScan - alias: sc - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: key is not null (type: boolean) Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE @@ -4160,13 +3978,6 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 205 Data size: 21115 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: bigint), _col2 (type: bigint) - Execution mode: llap - LLAP IO: no inputs - Map 8 - Map Operator Tree: - TableScan - alias: sc - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: key is not null (type: boolean) Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE @@ -4186,36 +3997,30 @@ STAGE PLANS: Statistics: Num rows: 250 Data size: 67750 Basic stats: COMPLETE Column stats: COMPLETE Execution mode: llap LLAP IO: no inputs - Reducer 11 - Execution mode: llap - Reduce Operator Tree: - Group By Operator - aggregations: count(VALUE._col0) - keys: KEY._col0 (type: string) - mode: mergepartial - outputColumnNames: _col0, _col1 - Statistics: Num rows: 1 Data size: 94 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: _col1 (type: bigint) - outputColumnNames: _col1 - Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE + Map 8 + Map Operator Tree: + TableScan + alias: s1 + Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator - predicate: _col1 is not null (type: boolean) - Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE + predicate: (key = '90') (type: boolean) + Statistics: Num rows: 2 Data size: 174 Basic stats: COMPLETE Column stats: COMPLETE Select Operator - expressions: _col1 (type: bigint) - outputColumnNames: _col0 - Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE + Statistics: Num rows: 2 Data size: 174 Basic stats: COMPLETE Column stats: COMPLETE Group By Operator - keys: _col0 (type: bigint) + aggregations: count() + keys: '90' (type: string) mode: hash - outputColumnNames: _col0 - Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE + outputColumnNames: _col0, _col1 + Statistics: Num rows: 1 Data size: 94 Basic stats: COMPLETE Column stats: COMPLETE Reduce Output Operator - key expressions: _col0 (type: bigint) + key expressions: _col0 (type: string) sort order: + - Map-reduce partition columns: _col0 (type: bigint) - Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE + Map-reduce partition columns: _col0 (type: string) + Statistics: Num rows: 1 Data size: 94 Basic stats: COMPLETE Column stats: COMPLETE + value expressions: _col1 (type: bigint) + Execution mode: llap + LLAP IO: no inputs Reducer 2 Execution mode: llap Reduce Operator Tree: @@ -4299,7 +4104,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 7 + Reducer 6 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -4314,7 +4119,7 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 205 Data size: 21115 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: bigint), _col2 (type: bigint) - Reducer 9 + Reducer 7 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -4339,6 +4144,36 @@ STAGE PLANS: Map-reduce partition columns: _col1 (type: string), _col0 (type: string) Statistics: Num rows: 250 Data size: 68750 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col2 (type: boolean) + Reducer 9 + Execution mode: llap + Reduce Operator Tree: + Group By Operator + aggregations: count(VALUE._col0) + keys: KEY._col0 (type: string) + mode: mergepartial + outputColumnNames: _col0, _col1 + Statistics: Num rows: 1 Data size: 94 Basic stats: COMPLETE Column stats: COMPLETE + Select Operator + expressions: _col1 (type: bigint) + outputColumnNames: _col1 + Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE + Filter Operator + predicate: _col1 is not null (type: boolean) + Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE + Select Operator + expressions: _col1 (type: bigint) + outputColumnNames: _col0 + Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE + Group By Operator + keys: _col0 (type: bigint) + mode: hash + outputColumnNames: _col0 + Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + key expressions: _col0 (type: bigint) + sort order: + + Map-reduce partition columns: _col0 (type: bigint) + Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE Stage: Stage-0 Fetch Operator @@ -4399,13 +4234,13 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 10 <- Reducer 9 (SIMPLE_EDGE) Reducer 2 <- Map 1 (CUSTOM_SIMPLE_EDGE), Reducer 7 (CUSTOM_SIMPLE_EDGE) - Reducer 3 <- Reducer 10 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) Reducer 6 <- Map 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 6 (CUSTOM_SIMPLE_EDGE) - Reducer 9 <- Map 8 (SIMPLE_EDGE) + Reducer 8 <- Map 5 (SIMPLE_EDGE) + Reducer 9 <- Reducer 8 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -4444,13 +4279,6 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 13 Data size: 1404 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: int) - Execution mode: llap - LLAP IO: no inputs - Map 8 - Map Operator Tree: - TableScan - alias: part - Statistics: Num rows: 26 Data size: 2808 Basic stats: COMPLETE Column stats: COMPLETE Select Operator expressions: p_type (type: string), p_size (type: int) outputColumnNames: p_type, p_size @@ -4469,24 +4297,6 @@ STAGE PLANS: value expressions: _col1 (type: int) Execution mode: llap LLAP IO: no inputs - Reducer 10 - Execution mode: llap - Reduce Operator Tree: - Group By Operator - keys: KEY._col0 (type: int) - mode: mergepartial - outputColumnNames: _col0 - Statistics: Num rows: 6 Data size: 24 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: _col0 (type: int), true (type: boolean) - outputColumnNames: _col0, _col1 - Statistics: Num rows: 6 Data size: 48 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - key expressions: _col0 (type: int) - sort order: + - Map-reduce partition columns: _col0 (type: int) - Statistics: Num rows: 6 Data size: 48 Basic stats: COMPLETE Column stats: COMPLETE - value expressions: _col1 (type: boolean) Reducer 2 Execution mode: llap Reduce Operator Tree: @@ -4575,7 +4385,7 @@ STAGE PLANS: sort order: Statistics: Num rows: 1 Data size: 16 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col0 (type: bigint), _col1 (type: bigint) - Reducer 9 + Reducer 8 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -4598,6 +4408,24 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: int) Statistics: Num rows: 6 Data size: 24 Basic stats: COMPLETE Column stats: COMPLETE + Reducer 9 + Execution mode: llap + Reduce Operator Tree: + Group By Operator + keys: KEY._col0 (type: int) + mode: mergepartial + outputColumnNames: _col0 + Statistics: Num rows: 6 Data size: 24 Basic stats: COMPLETE Column stats: COMPLETE + Select Operator + expressions: _col0 (type: int), true (type: boolean) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 6 Data size: 48 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + key expressions: _col0 (type: int) + sort order: + + Map-reduce partition columns: _col0 (type: int) + Statistics: Num rows: 6 Data size: 48 Basic stats: COMPLETE Column stats: COMPLETE + value expressions: _col1 (type: boolean) Stage: Stage-0 Fetch Operator @@ -4644,13 +4472,13 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 10 <- Reducer 9 (SIMPLE_EDGE) Reducer 2 <- Map 1 (CUSTOM_SIMPLE_EDGE), Reducer 7 (CUSTOM_SIMPLE_EDGE) - Reducer 3 <- Reducer 10 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) Reducer 6 <- Map 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 6 (CUSTOM_SIMPLE_EDGE) - Reducer 9 <- Map 8 (SIMPLE_EDGE) + Reducer 8 <- Map 5 (SIMPLE_EDGE) + Reducer 9 <- Reducer 8 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -4689,13 +4517,6 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 13 Data size: 1404 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: int) - Execution mode: llap - LLAP IO: no inputs - Map 8 - Map Operator Tree: - TableScan - alias: part - Statistics: Num rows: 26 Data size: 2808 Basic stats: COMPLETE Column stats: COMPLETE Select Operator expressions: p_type (type: string), p_size (type: int) outputColumnNames: p_type, p_size @@ -4710,28 +4531,10 @@ STAGE PLANS: key expressions: _col0 (type: string) sort order: + Map-reduce partition columns: _col0 (type: string) - Statistics: Num rows: 13 Data size: 1404 Basic stats: COMPLETE Column stats: COMPLETE - value expressions: _col1 (type: int) - Execution mode: llap - LLAP IO: no inputs - Reducer 10 - Execution mode: llap - Reduce Operator Tree: - Group By Operator - keys: KEY._col0 (type: int) - mode: mergepartial - outputColumnNames: _col0 - Statistics: Num rows: 6 Data size: 24 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: _col0 (type: int), true (type: boolean) - outputColumnNames: _col0, _col1 - Statistics: Num rows: 6 Data size: 48 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - key expressions: _col0 (type: int) - sort order: + - Map-reduce partition columns: _col0 (type: int) - Statistics: Num rows: 6 Data size: 48 Basic stats: COMPLETE Column stats: COMPLETE - value expressions: _col1 (type: boolean) + Statistics: Num rows: 13 Data size: 1404 Basic stats: COMPLETE Column stats: COMPLETE + value expressions: _col1 (type: int) + Execution mode: llap + LLAP IO: no inputs Reducer 2 Execution mode: llap Reduce Operator Tree: @@ -4824,7 +4627,7 @@ STAGE PLANS: sort order: Statistics: Num rows: 1 Data size: 16 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col0 (type: bigint), _col1 (type: bigint) - Reducer 9 + Reducer 8 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -4847,6 +4650,24 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: int) Statistics: Num rows: 6 Data size: 24 Basic stats: COMPLETE Column stats: COMPLETE + Reducer 9 + Execution mode: llap + Reduce Operator Tree: + Group By Operator + keys: KEY._col0 (type: int) + mode: mergepartial + outputColumnNames: _col0 + Statistics: Num rows: 6 Data size: 24 Basic stats: COMPLETE Column stats: COMPLETE + Select Operator + expressions: _col0 (type: int), true (type: boolean) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 6 Data size: 48 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + key expressions: _col0 (type: int) + sort order: + + Map-reduce partition columns: _col0 (type: int) + Statistics: Num rows: 6 Data size: 48 Basic stats: COMPLETE Column stats: COMPLETE + value expressions: _col1 (type: boolean) Stage: Stage-0 Fetch Operator @@ -5595,13 +5416,13 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 11 <- Map 10 (SIMPLE_EDGE) + Reducer 10 <- Map 9 (SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (CUSTOM_SIMPLE_EDGE) Reducer 6 <- Map 5 (SIMPLE_EDGE) - Reducer 8 <- Map 7 (SIMPLE_EDGE) - Reducer 9 <- Reducer 11 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) + Reducer 7 <- Map 5 (SIMPLE_EDGE) + Reducer 8 <- Reducer 10 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -5621,23 +5442,6 @@ STAGE PLANS: value expressions: _col1 (type: int) Execution mode: llap LLAP IO: no inputs - Map 10 - Map Operator Tree: - TableScan - alias: e - Statistics: Num rows: 26 Data size: 104 Basic stats: COMPLETE Column stats: COMPLETE - Group By Operator - keys: p_size (type: int) - mode: hash - outputColumnNames: _col0 - Statistics: Num rows: 13 Data size: 52 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - key expressions: _col0 (type: int) - sort order: + - Map-reduce partition columns: _col0 (type: int) - Statistics: Num rows: 13 Data size: 52 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs Map 5 Map Operator Tree: TableScan @@ -5658,13 +5462,6 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 12 Data size: 1296 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: bigint), _col2 (type: bigint) - Execution mode: llap - LLAP IO: no inputs - Map 7 - Map Operator Tree: - TableScan - alias: part - Statistics: Num rows: 26 Data size: 5096 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: p_brand is not null (type: boolean) Statistics: Num rows: 26 Data size: 5096 Basic stats: COMPLETE Column stats: COMPLETE @@ -5680,7 +5477,24 @@ STAGE PLANS: Statistics: Num rows: 13 Data size: 2548 Basic stats: COMPLETE Column stats: COMPLETE Execution mode: llap LLAP IO: no inputs - Reducer 11 + Map 9 + Map Operator Tree: + TableScan + alias: e + Statistics: Num rows: 26 Data size: 104 Basic stats: COMPLETE Column stats: COMPLETE + Group By Operator + keys: p_size (type: int) + mode: hash + outputColumnNames: _col0 + Statistics: Num rows: 13 Data size: 52 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + key expressions: _col0 (type: int) + sort order: + + Map-reduce partition columns: _col0 (type: int) + Statistics: Num rows: 13 Data size: 52 Basic stats: COMPLETE Column stats: COMPLETE + Execution mode: llap + LLAP IO: no inputs + Reducer 10 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -5766,7 +5580,7 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 12 Data size: 1296 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: bigint), _col2 (type: bigint) - Reducer 8 + Reducer 7 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -5784,7 +5598,7 @@ STAGE PLANS: Map-reduce partition columns: UDFToDouble(_col0) (type: double) Statistics: Num rows: 13 Data size: 2600 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: string), _col2 (type: boolean) - Reducer 9 + Reducer 8 Execution mode: llap Reduce Operator Tree: Merge Join Operator @@ -5863,9 +5677,9 @@ STAGE PLANS: #### A masked pattern was here #### Edges: Reducer 2 <- Map 1 (CUSTOM_SIMPLE_EDGE), Reducer 5 (CUSTOM_SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) Reducer 5 <- Map 4 (CUSTOM_SIMPLE_EDGE) - Reducer 7 <- Map 6 (SIMPLE_EDGE) + Reducer 6 <- Map 4 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -5901,13 +5715,6 @@ STAGE PLANS: sort order: Statistics: Num rows: 1 Data size: 16 Basic stats: COMPLETE Column stats: NONE value expressions: _col0 (type: bigint), _col1 (type: bigint) - Execution mode: llap - LLAP IO: no inputs - Map 6 - Map Operator Tree: - TableScan - alias: t2 - Statistics: Num rows: 3 Data size: 6 Basic stats: COMPLETE Column stats: NONE Group By Operator keys: c1 (type: int) mode: hash @@ -5974,7 +5781,7 @@ STAGE PLANS: sort order: Statistics: Num rows: 1 Data size: 16 Basic stats: COMPLETE Column stats: NONE value expressions: _col0 (type: bigint), _col1 (type: bigint) - Reducer 7 + Reducer 6 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -6023,14 +5830,14 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 10 <- Map 9 (SIMPLE_EDGE), Reducer 13 (SIMPLE_EDGE) - Reducer 11 <- Reducer 10 (SIMPLE_EDGE) - Reducer 13 <- Map 12 (SIMPLE_EDGE) + Reducer 10 <- Map 9 (SIMPLE_EDGE) + Reducer 11 <- Map 9 (SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) - Reducer 3 <- Reducer 11 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) - Reducer 5 <- Map 4 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) + Reducer 5 <- Map 4 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) - Reducer 8 <- Map 7 (SIMPLE_EDGE) + Reducer 7 <- Map 4 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE) + Reducer 8 <- Reducer 7 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -6050,23 +5857,6 @@ STAGE PLANS: value expressions: _col0 (type: int) Execution mode: llap LLAP IO: no inputs - Map 12 - Map Operator Tree: - TableScan - alias: t1 - Statistics: Num rows: 4 Data size: 313 Basic stats: COMPLETE Column stats: NONE - Group By Operator - keys: c2 (type: char(100)) - mode: hash - outputColumnNames: _col0 - Statistics: Num rows: 4 Data size: 313 Basic stats: COMPLETE Column stats: NONE - Reduce Output Operator - key expressions: _col0 (type: char(100)) - sort order: + - Map-reduce partition columns: _col0 (type: char(100)) - Statistics: Num rows: 4 Data size: 313 Basic stats: COMPLETE Column stats: NONE - Execution mode: llap - LLAP IO: no inputs Map 4 Map Operator Tree: TableScan @@ -6082,9 +5872,19 @@ STAGE PLANS: Map-reduce partition columns: UDFToDouble(_col0) (type: double) Statistics: Num rows: 3 Data size: 6 Basic stats: COMPLETE Column stats: NONE value expressions: _col0 (type: int) + Select Operator + expressions: c1 (type: int) + outputColumnNames: _col0 + Statistics: Num rows: 3 Data size: 6 Basic stats: COMPLETE Column stats: NONE + Reduce Output Operator + key expressions: UDFToDouble(_col0) (type: double) + sort order: + + Map-reduce partition columns: UDFToDouble(_col0) (type: double) + Statistics: Num rows: 3 Data size: 6 Basic stats: COMPLETE Column stats: NONE + value expressions: _col0 (type: int) Execution mode: llap LLAP IO: no inputs - Map 7 + Map 9 Map Operator Tree: TableScan alias: t1 @@ -6099,68 +5899,33 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: char(100)) Statistics: Num rows: 4 Data size: 313 Basic stats: COMPLETE Column stats: NONE - Execution mode: llap - LLAP IO: no inputs - Map 9 - Map Operator Tree: - TableScan - alias: t2 - Statistics: Num rows: 3 Data size: 6 Basic stats: COMPLETE Column stats: NONE - Select Operator - expressions: c1 (type: int) + Group By Operator + keys: c2 (type: char(100)) + mode: hash outputColumnNames: _col0 - Statistics: Num rows: 3 Data size: 6 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 4 Data size: 313 Basic stats: COMPLETE Column stats: NONE Reduce Output Operator - key expressions: UDFToDouble(_col0) (type: double) + key expressions: _col0 (type: char(100)) sort order: + - Map-reduce partition columns: UDFToDouble(_col0) (type: double) - Statistics: Num rows: 3 Data size: 6 Basic stats: COMPLETE Column stats: NONE - value expressions: _col0 (type: int) + Map-reduce partition columns: _col0 (type: char(100)) + Statistics: Num rows: 4 Data size: 313 Basic stats: COMPLETE Column stats: NONE Execution mode: llap LLAP IO: no inputs Reducer 10 Execution mode: llap Reduce Operator Tree: - Merge Join Operator - condition map: - Inner Join 0 to 1 - keys: - 0 UDFToDouble(_col0) (type: double) - 1 UDFToDouble(_col0) (type: double) - outputColumnNames: _col0, _col1 - Statistics: Num rows: 3 Data size: 6 Basic stats: COMPLETE Column stats: NONE - Group By Operator - keys: _col0 (type: int), _col1 (type: char(100)) - mode: hash - outputColumnNames: _col0, _col1 - Statistics: Num rows: 3 Data size: 6 Basic stats: COMPLETE Column stats: NONE - Reduce Output Operator - key expressions: _col0 (type: int), _col1 (type: char(100)) - sort order: ++ - Map-reduce partition columns: _col0 (type: int), _col1 (type: char(100)) - Statistics: Num rows: 3 Data size: 6 Basic stats: COMPLETE Column stats: NONE - Reducer 11 - Execution mode: llap - Reduce Operator Tree: Group By Operator - keys: KEY._col0 (type: int), KEY._col1 (type: char(100)) + keys: KEY._col0 (type: char(100)) mode: mergepartial - outputColumnNames: _col0, _col1 - Statistics: Num rows: 1 Data size: 2 Basic stats: COMPLETE Column stats: NONE - Filter Operator - predicate: _col0 is not null (type: boolean) - Statistics: Num rows: 1 Data size: 2 Basic stats: COMPLETE Column stats: NONE - Select Operator - expressions: _col0 (type: int), _col1 (type: char(100)), true (type: boolean) - outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 1 Data size: 2 Basic stats: COMPLETE Column stats: NONE - Reduce Output Operator - key expressions: _col0 (type: int), _col1 (type: char(100)) - sort order: ++ - Map-reduce partition columns: _col0 (type: int), _col1 (type: char(100)) - Statistics: Num rows: 1 Data size: 2 Basic stats: COMPLETE Column stats: NONE - value expressions: _col2 (type: boolean) - Reducer 13 + outputColumnNames: _col0 + Statistics: Num rows: 2 Data size: 156 Basic stats: COMPLETE Column stats: NONE + Reduce Output Operator + key expressions: UDFToDouble(_col0) (type: double) + sort order: + + Map-reduce partition columns: UDFToDouble(_col0) (type: double) + Statistics: Num rows: 2 Data size: 156 Basic stats: COMPLETE Column stats: NONE + value expressions: _col0 (type: char(100)) + Reducer 11 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -6254,20 +6019,48 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: char(100)) Statistics: Num rows: 1 Data size: 2 Basic stats: COMPLETE Column stats: NONE value expressions: _col1 (type: bigint), _col2 (type: bigint) + Reducer 7 + Execution mode: llap + Reduce Operator Tree: + Merge Join Operator + condition map: + Inner Join 0 to 1 + keys: + 0 UDFToDouble(_col0) (type: double) + 1 UDFToDouble(_col0) (type: double) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 3 Data size: 6 Basic stats: COMPLETE Column stats: NONE + Group By Operator + keys: _col0 (type: int), _col1 (type: char(100)) + mode: hash + outputColumnNames: _col0, _col1 + Statistics: Num rows: 3 Data size: 6 Basic stats: COMPLETE Column stats: NONE + Reduce Output Operator + key expressions: _col0 (type: int), _col1 (type: char(100)) + sort order: ++ + Map-reduce partition columns: _col0 (type: int), _col1 (type: char(100)) + Statistics: Num rows: 3 Data size: 6 Basic stats: COMPLETE Column stats: NONE Reducer 8 Execution mode: llap Reduce Operator Tree: Group By Operator - keys: KEY._col0 (type: char(100)) + keys: KEY._col0 (type: int), KEY._col1 (type: char(100)) mode: mergepartial - outputColumnNames: _col0 - Statistics: Num rows: 2 Data size: 156 Basic stats: COMPLETE Column stats: NONE - Reduce Output Operator - key expressions: UDFToDouble(_col0) (type: double) - sort order: + - Map-reduce partition columns: UDFToDouble(_col0) (type: double) - Statistics: Num rows: 2 Data size: 156 Basic stats: COMPLETE Column stats: NONE - value expressions: _col0 (type: char(100)) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 1 Data size: 2 Basic stats: COMPLETE Column stats: NONE + Filter Operator + predicate: _col0 is not null (type: boolean) + Statistics: Num rows: 1 Data size: 2 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: _col0 (type: int), _col1 (type: char(100)), true (type: boolean) + outputColumnNames: _col0, _col1, _col2 + Statistics: Num rows: 1 Data size: 2 Basic stats: COMPLETE Column stats: NONE + Reduce Output Operator + key expressions: _col0 (type: int), _col1 (type: char(100)) + sort order: ++ + Map-reduce partition columns: _col0 (type: int), _col1 (type: char(100)) + Statistics: Num rows: 1 Data size: 2 Basic stats: COMPLETE Column stats: NONE + value expressions: _col2 (type: boolean) Stage: Stage-0 Fetch Operator @@ -6349,9 +6142,9 @@ STAGE PLANS: #### A masked pattern was here #### Edges: Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) Reducer 5 <- Map 4 (SIMPLE_EDGE) - Reducer 7 <- Map 6 (SIMPLE_EDGE) + Reducer 6 <- Map 4 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -6391,13 +6184,6 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: int) Statistics: Num rows: 3 Data size: 10 Basic stats: COMPLETE Column stats: NONE value expressions: _col1 (type: bigint), _col2 (type: bigint) - Execution mode: llap - LLAP IO: no inputs - Map 6 - Map Operator Tree: - TableScan - alias: t2 - Statistics: Num rows: 3 Data size: 10 Basic stats: COMPLETE Column stats: NONE Filter Operator predicate: b is not null (type: boolean) Statistics: Num rows: 3 Data size: 10 Basic stats: COMPLETE Column stats: NONE @@ -6470,7 +6256,7 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: int) Statistics: Num rows: 1 Data size: 3 Basic stats: COMPLETE Column stats: NONE value expressions: _col1 (type: bigint), _col2 (type: bigint) - Reducer 7 + Reducer 6 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -6573,11 +6359,11 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) + Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) Reducer 4 <- Map 3 (SIMPLE_EDGE) - Reducer 6 <- Map 5 (SIMPLE_EDGE) - Reducer 7 <- Reducer 6 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) - Reducer 9 <- Map 8 (SIMPLE_EDGE) + Reducer 5 <- Map 3 (SIMPLE_EDGE) + Reducer 6 <- Reducer 5 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) + Reducer 8 <- Map 7 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -6617,13 +6403,6 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: int) Statistics: Num rows: 2 Data size: 8 Basic stats: COMPLETE Column stats: NONE value expressions: _col1 (type: bigint), _col2 (type: bigint) - Execution mode: llap - LLAP IO: no inputs - Map 5 - Map Operator Tree: - TableScan - alias: t7 - Statistics: Num rows: 2 Data size: 8 Basic stats: COMPLETE Column stats: NONE Filter Operator predicate: j is not null (type: boolean) Statistics: Num rows: 2 Data size: 8 Basic stats: COMPLETE Column stats: NONE @@ -6639,7 +6418,7 @@ STAGE PLANS: Statistics: Num rows: 2 Data size: 8 Basic stats: COMPLETE Column stats: NONE Execution mode: llap LLAP IO: no inputs - Map 8 + Map 7 Map Operator Tree: TableScan alias: fixob @@ -6698,7 +6477,7 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: int) Statistics: Num rows: 1 Data size: 4 Basic stats: COMPLETE Column stats: NONE value expressions: _col1 (type: bigint), _col2 (type: bigint) - Reducer 6 + Reducer 5 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -6716,7 +6495,7 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: int) Statistics: Num rows: 1 Data size: 4 Basic stats: COMPLETE Column stats: NONE value expressions: _col2 (type: boolean) - Reducer 7 + Reducer 6 Execution mode: llap Reduce Operator Tree: Merge Join Operator @@ -6733,7 +6512,7 @@ STAGE PLANS: Map-reduce partition columns: _col3 (type: int) Statistics: Num rows: 1 Data size: 4 Basic stats: COMPLETE Column stats: NONE value expressions: _col2 (type: boolean) - Reducer 9 + Reducer 8 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -6809,11 +6588,11 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) - Reducer 4 <- Map 3 (SIMPLE_EDGE) - Reducer 6 <- Map 5 (SIMPLE_EDGE) - Reducer 7 <- Reducer 6 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) - Reducer 9 <- Map 8 (SIMPLE_EDGE) + Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) + Reducer 3 <- Map 1 (SIMPLE_EDGE) + Reducer 4 <- Map 1 (SIMPLE_EDGE) + Reducer 5 <- Reducer 4 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) + Reducer 7 <- Map 6 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -6831,13 +6610,6 @@ STAGE PLANS: Map-reduce partition columns: _col1 (type: int) Statistics: Num rows: 3 Data size: 10 Basic stats: COMPLETE Column stats: NONE value expressions: _col0 (type: int) - Execution mode: llap - LLAP IO: no inputs - Map 3 - Map Operator Tree: - TableScan - alias: t1 - Statistics: Num rows: 3 Data size: 10 Basic stats: COMPLETE Column stats: NONE Filter Operator predicate: j is not null (type: boolean) Statistics: Num rows: 3 Data size: 10 Basic stats: COMPLETE Column stats: NONE @@ -6853,13 +6625,6 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: int) Statistics: Num rows: 3 Data size: 10 Basic stats: COMPLETE Column stats: NONE value expressions: _col1 (type: bigint), _col2 (type: bigint) - Execution mode: llap - LLAP IO: no inputs - Map 5 - Map Operator Tree: - TableScan - alias: t1 - Statistics: Num rows: 3 Data size: 10 Basic stats: COMPLETE Column stats: NONE Filter Operator predicate: j is not null (type: boolean) Statistics: Num rows: 3 Data size: 10 Basic stats: COMPLETE Column stats: NONE @@ -6875,7 +6640,7 @@ STAGE PLANS: Statistics: Num rows: 3 Data size: 10 Basic stats: COMPLETE Column stats: NONE Execution mode: llap LLAP IO: no inputs - Map 8 + Map 6 Map Operator Tree: TableScan alias: t @@ -6919,7 +6684,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 + Reducer 3 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -6934,7 +6699,7 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: int) Statistics: Num rows: 1 Data size: 3 Basic stats: COMPLETE Column stats: NONE value expressions: _col1 (type: bigint), _col2 (type: bigint) - Reducer 6 + Reducer 4 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -6952,7 +6717,7 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: int) Statistics: Num rows: 1 Data size: 3 Basic stats: COMPLETE Column stats: NONE value expressions: _col2 (type: boolean) - Reducer 7 + Reducer 5 Execution mode: llap Reduce Operator Tree: Merge Join Operator @@ -6969,7 +6734,7 @@ STAGE PLANS: Map-reduce partition columns: _col3 (type: int) Statistics: Num rows: 1 Data size: 3 Basic stats: COMPLETE Column stats: NONE value expressions: _col2 (type: boolean) - Reducer 9 + Reducer 7 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -7013,10 +6778,10 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) - Reducer 5 <- Map 4 (SIMPLE_EDGE) - Reducer 7 <- Map 6 (SIMPLE_EDGE) + Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) + Reducer 4 <- Map 1 (SIMPLE_EDGE) + Reducer 5 <- Map 1 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -7034,13 +6799,6 @@ STAGE PLANS: Map-reduce partition columns: _col1 (type: int) Statistics: Num rows: 3 Data size: 10 Basic stats: COMPLETE Column stats: NONE value expressions: _col0 (type: int) - Execution mode: llap - LLAP IO: no inputs - Map 4 - Map Operator Tree: - TableScan - alias: t1 - Statistics: Num rows: 3 Data size: 10 Basic stats: COMPLETE Column stats: NONE Filter Operator predicate: j is not null (type: boolean) Statistics: Num rows: 3 Data size: 10 Basic stats: COMPLETE Column stats: NONE @@ -7056,13 +6814,6 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: int) Statistics: Num rows: 3 Data size: 10 Basic stats: COMPLETE Column stats: NONE value expressions: _col1 (type: bigint), _col2 (type: bigint) - Execution mode: llap - LLAP IO: no inputs - Map 6 - Map Operator Tree: - TableScan - alias: t1 - Statistics: Num rows: 3 Data size: 10 Basic stats: COMPLETE Column stats: NONE Filter Operator predicate: j is not null (type: boolean) Statistics: Num rows: 3 Data size: 10 Basic stats: COMPLETE Column stats: NONE @@ -7120,7 +6871,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 + Reducer 4 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -7135,7 +6886,7 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: int) Statistics: Num rows: 1 Data size: 3 Basic stats: COMPLETE Column stats: NONE value expressions: _col1 (type: bigint), _col2 (type: bigint) - Reducer 7 + Reducer 5 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -7187,9 +6938,9 @@ STAGE PLANS: #### A masked pattern was here #### Edges: Reducer 2 <- Map 1 (CUSTOM_SIMPLE_EDGE), Reducer 5 (CUSTOM_SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) Reducer 5 <- Map 4 (CUSTOM_SIMPLE_EDGE) - Reducer 7 <- Map 6 (SIMPLE_EDGE) + Reducer 6 <- Map 4 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -7225,13 +6976,6 @@ STAGE PLANS: sort order: Statistics: Num rows: 1 Data size: 16 Basic stats: COMPLETE Column stats: NONE value expressions: _col0 (type: bigint), _col1 (type: bigint) - Execution mode: llap - LLAP IO: no inputs - Map 6 - Map Operator Tree: - TableScan - alias: t1 - Statistics: Num rows: 3 Data size: 10 Basic stats: COMPLETE Column stats: NONE Group By Operator keys: i (type: int) mode: hash @@ -7298,7 +7042,7 @@ STAGE PLANS: sort order: Statistics: Num rows: 1 Data size: 16 Basic stats: COMPLETE Column stats: NONE value expressions: _col0 (type: bigint), _col1 (type: bigint) - Reducer 7 + Reducer 6 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -7348,10 +7092,10 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 2 <- Map 1 (CUSTOM_SIMPLE_EDGE), Reducer 5 (CUSTOM_SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) - Reducer 5 <- Map 4 (CUSTOM_SIMPLE_EDGE) - Reducer 7 <- Map 6 (SIMPLE_EDGE) + Reducer 2 <- Map 1 (CUSTOM_SIMPLE_EDGE), Reducer 4 (CUSTOM_SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) + Reducer 4 <- Map 1 (CUSTOM_SIMPLE_EDGE) + Reducer 5 <- Map 1 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -7367,13 +7111,6 @@ STAGE PLANS: sort order: Statistics: Num rows: 3 Data size: 10 Basic stats: COMPLETE Column stats: NONE value expressions: _col0 (type: int) - Execution mode: llap - LLAP IO: no inputs - Map 4 - Map Operator Tree: - TableScan - alias: t1 - Statistics: Num rows: 3 Data size: 10 Basic stats: COMPLETE Column stats: NONE Select Operator expressions: i (type: int) outputColumnNames: i @@ -7387,13 +7124,6 @@ STAGE PLANS: sort order: Statistics: Num rows: 1 Data size: 16 Basic stats: COMPLETE Column stats: NONE value expressions: _col0 (type: bigint), _col1 (type: bigint) - Execution mode: llap - LLAP IO: no inputs - Map 6 - Map Operator Tree: - TableScan - alias: t1 - Statistics: Num rows: 3 Data size: 10 Basic stats: COMPLETE Column stats: NONE Group By Operator keys: i (type: int) mode: hash @@ -7448,7 +7178,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 + Reducer 4 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -7460,7 +7190,7 @@ STAGE PLANS: sort order: Statistics: Num rows: 1 Data size: 16 Basic stats: COMPLETE Column stats: NONE value expressions: _col0 (type: bigint), _col1 (type: bigint) - Reducer 7 + Reducer 5 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -7498,8 +7228,8 @@ PREHOOK: query: drop table t1 PREHOOK: type: DROPTABLE POSTHOOK: query: drop table t1 POSTHOOK: type: DROPTABLE -Warning: Shuffle Join MERGEJOIN[57][tables = [$hdt$_1, $hdt$_2]] in Stage 'Reducer 5' is a cross product -Warning: Shuffle Join MERGEJOIN[59][tables = [$hdt$_2, $hdt$_3]] in Stage 'Reducer 10' is a cross product +Warning: Shuffle Join MERGEJOIN[57][tables = [$hdt$_1, $hdt$_2]] in Stage 'Reducer 4' is a cross product +Warning: Shuffle Join MERGEJOIN[59][tables = [$hdt$_2, $hdt$_3]] in Stage 'Reducer 6' is a cross product PREHOOK: query: explain select * from src b where b.key not in @@ -7525,14 +7255,14 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 10 <- Map 9 (CUSTOM_SIMPLE_EDGE), Reducer 13 (CUSTOM_SIMPLE_EDGE) - Reducer 11 <- Reducer 10 (SIMPLE_EDGE) - Reducer 13 <- Map 12 (SIMPLE_EDGE) - Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) - Reducer 3 <- Reducer 11 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) - Reducer 5 <- Map 4 (CUSTOM_SIMPLE_EDGE), Reducer 8 (CUSTOM_SIMPLE_EDGE) - Reducer 6 <- Reducer 5 (SIMPLE_EDGE) - Reducer 8 <- Map 7 (SIMPLE_EDGE) + Reducer 10 <- Map 8 (SIMPLE_EDGE) + Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) + Reducer 4 <- Map 1 (CUSTOM_SIMPLE_EDGE), Reducer 9 (CUSTOM_SIMPLE_EDGE) + Reducer 5 <- Reducer 4 (SIMPLE_EDGE) + Reducer 6 <- Map 1 (CUSTOM_SIMPLE_EDGE), Reducer 10 (CUSTOM_SIMPLE_EDGE) + Reducer 7 <- Reducer 6 (SIMPLE_EDGE) + Reducer 9 <- Map 8 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -7550,30 +7280,17 @@ STAGE PLANS: Map-reduce partition columns: _col1 (type: string) Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col0 (type: string) - Execution mode: llap - LLAP IO: no inputs - Map 12 - Map Operator Tree: - TableScan - alias: b - Statistics: Num rows: 500 Data size: 45500 Basic stats: COMPLETE Column stats: COMPLETE - Group By Operator - keys: value (type: string) - mode: hash - outputColumnNames: _col0 - Statistics: Num rows: 214 Data size: 19474 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: 214 Data size: 19474 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs - Map 4 - Map Operator Tree: - TableScan - alias: a - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE + Filter Operator + predicate: (key > '9') (type: boolean) + Statistics: Num rows: 166 Data size: 29548 Basic stats: COMPLETE Column stats: COMPLETE + Select Operator + expressions: key (type: string), value (type: string) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 166 Data size: 29548 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + sort order: + Statistics: Num rows: 166 Data size: 29548 Basic stats: COMPLETE Column stats: COMPLETE + value expressions: _col0 (type: string), _col1 (type: string) Filter Operator predicate: (key > '9') (type: boolean) Statistics: Num rows: 166 Data size: 29548 Basic stats: COMPLETE Column stats: COMPLETE @@ -7587,7 +7304,7 @@ STAGE PLANS: value expressions: _col0 (type: string), _col1 (type: string) Execution mode: llap LLAP IO: no inputs - Map 7 + Map 8 Map Operator Tree: TableScan alias: b @@ -7602,78 +7319,21 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 214 Data size: 19474 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs - Map 9 - Map Operator Tree: - TableScan - alias: a - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE - Filter Operator - predicate: (key > '9') (type: boolean) - Statistics: Num rows: 166 Data size: 29548 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: key (type: string), value (type: string) - outputColumnNames: _col0, _col1 - Statistics: Num rows: 166 Data size: 29548 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - sort order: - Statistics: Num rows: 166 Data size: 29548 Basic stats: COMPLETE Column stats: COMPLETE - value expressions: _col0 (type: string), _col1 (type: string) + Group By Operator + keys: value (type: string) + mode: hash + outputColumnNames: _col0 + Statistics: Num rows: 214 Data size: 19474 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: 214 Data size: 19474 Basic stats: COMPLETE Column stats: COMPLETE Execution mode: llap LLAP IO: no inputs Reducer 10 Execution mode: llap Reduce Operator Tree: - Merge Join Operator - condition map: - Inner Join 0 to 1 - keys: - 0 - 1 - outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 35524 Data size: 9555956 Basic stats: COMPLETE Column stats: COMPLETE - Filter Operator - predicate: (_col2 > _col1) (type: boolean) - Statistics: Num rows: 11841 Data size: 3185229 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: _col0 (type: string), _col2 (type: string) - outputColumnNames: _col0, _col2 - Statistics: Num rows: 11841 Data size: 3185229 Basic stats: COMPLETE Column stats: COMPLETE - Group By Operator - keys: _col0 (type: string), _col2 (type: string) - mode: hash - outputColumnNames: _col0, _col1 - Statistics: Num rows: 1656 Data size: 294768 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - key expressions: _col0 (type: string), _col1 (type: string) - sort order: ++ - Map-reduce partition columns: _col0 (type: string), _col1 (type: string) - Statistics: Num rows: 1656 Data size: 294768 Basic stats: COMPLETE Column stats: COMPLETE - Reducer 11 - Execution mode: llap - Reduce Operator Tree: - Group By Operator - keys: KEY._col0 (type: string), KEY._col1 (type: string) - mode: mergepartial - outputColumnNames: _col0, _col1 - Statistics: Num rows: 1656 Data size: 294768 Basic stats: COMPLETE Column stats: COMPLETE - Filter Operator - predicate: _col0 is not null (type: boolean) - Statistics: Num rows: 1656 Data size: 294768 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: _col0 (type: string), _col1 (type: string), true (type: boolean) - outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 1656 Data size: 301392 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - key expressions: _col0 (type: string), _col1 (type: string) - sort order: ++ - Map-reduce partition columns: _col0 (type: string), _col1 (type: string) - Statistics: Num rows: 1656 Data size: 301392 Basic stats: COMPLETE Column stats: COMPLETE - value expressions: _col2 (type: boolean) - Reducer 13 - Execution mode: llap - Reduce Operator Tree: Group By Operator keys: KEY._col0 (type: string) mode: mergepartial @@ -7725,7 +7385,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 + Reducer 4 Execution mode: llap Reduce Operator Tree: Merge Join Operator @@ -7755,7 +7415,7 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 72 Data size: 7704 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: bigint), _col2 (type: bigint) - Reducer 6 + Reducer 5 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -7770,7 +7430,56 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 72 Data size: 7704 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: bigint), _col2 (type: bigint) - Reducer 8 + Reducer 6 + Execution mode: llap + Reduce Operator Tree: + Merge Join Operator + condition map: + Inner Join 0 to 1 + keys: + 0 + 1 + outputColumnNames: _col0, _col1, _col2 + Statistics: Num rows: 35524 Data size: 9555956 Basic stats: COMPLETE Column stats: COMPLETE + Filter Operator + predicate: (_col2 > _col1) (type: boolean) + Statistics: Num rows: 11841 Data size: 3185229 Basic stats: COMPLETE Column stats: COMPLETE + Select Operator + expressions: _col0 (type: string), _col2 (type: string) + outputColumnNames: _col0, _col2 + Statistics: Num rows: 11841 Data size: 3185229 Basic stats: COMPLETE Column stats: COMPLETE + Group By Operator + keys: _col0 (type: string), _col2 (type: string) + mode: hash + outputColumnNames: _col0, _col1 + Statistics: Num rows: 1656 Data size: 294768 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + key expressions: _col0 (type: string), _col1 (type: string) + sort order: ++ + Map-reduce partition columns: _col0 (type: string), _col1 (type: string) + Statistics: Num rows: 1656 Data size: 294768 Basic stats: COMPLETE Column stats: COMPLETE + Reducer 7 + Execution mode: llap + Reduce Operator Tree: + Group By Operator + keys: KEY._col0 (type: string), KEY._col1 (type: string) + mode: mergepartial + outputColumnNames: _col0, _col1 + Statistics: Num rows: 1656 Data size: 294768 Basic stats: COMPLETE Column stats: COMPLETE + Filter Operator + predicate: _col0 is not null (type: boolean) + Statistics: Num rows: 1656 Data size: 294768 Basic stats: COMPLETE Column stats: COMPLETE + Select Operator + expressions: _col0 (type: string), _col1 (type: string), true (type: boolean) + outputColumnNames: _col0, _col1, _col2 + Statistics: Num rows: 1656 Data size: 301392 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + key expressions: _col0 (type: string), _col1 (type: string) + sort order: ++ + Map-reduce partition columns: _col0 (type: string), _col1 (type: string) + Statistics: Num rows: 1656 Data size: 301392 Basic stats: COMPLETE Column stats: COMPLETE + value expressions: _col2 (type: boolean) + Reducer 9 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -7789,8 +7498,8 @@ STAGE PLANS: Processor Tree: ListSink -Warning: Shuffle Join MERGEJOIN[57][tables = [$hdt$_1, $hdt$_2]] in Stage 'Reducer 5' is a cross product -Warning: Shuffle Join MERGEJOIN[59][tables = [$hdt$_2, $hdt$_3]] in Stage 'Reducer 10' is a cross product +Warning: Shuffle Join MERGEJOIN[57][tables = [$hdt$_1, $hdt$_2]] in Stage 'Reducer 4' is a cross product +Warning: Shuffle Join MERGEJOIN[59][tables = [$hdt$_2, $hdt$_3]] in Stage 'Reducer 6' is a cross product PREHOOK: query: select * from src b where b.key not in diff --git ql/src/test/results/clientpositive/llap/subquery_null_agg.q.out ql/src/test/results/clientpositive/llap/subquery_null_agg.q.out index 7d9d77c..3435bd9 100644 --- ql/src/test/results/clientpositive/llap/subquery_null_agg.q.out +++ ql/src/test/results/clientpositive/llap/subquery_null_agg.q.out @@ -55,10 +55,10 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 2 <- Map 1 (CUSTOM_SIMPLE_EDGE), Reducer 5 (CUSTOM_SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (CUSTOM_SIMPLE_EDGE), Reducer 7 (CUSTOM_SIMPLE_EDGE) - Reducer 5 <- Map 4 (CUSTOM_SIMPLE_EDGE) - Reducer 7 <- Map 6 (SIMPLE_EDGE) + Reducer 2 <- Map 1 (CUSTOM_SIMPLE_EDGE), Reducer 4 (CUSTOM_SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (CUSTOM_SIMPLE_EDGE), Reducer 5 (CUSTOM_SIMPLE_EDGE) + Reducer 4 <- Map 1 (CUSTOM_SIMPLE_EDGE) + Reducer 5 <- Map 1 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -71,13 +71,6 @@ STAGE PLANS: Reduce Output Operator sort order: Statistics: Num rows: 1 Data size: 0 Basic stats: PARTIAL Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs - Map 4 - Map Operator Tree: - TableScan - alias: table_7 - Statistics: Num rows: 1 Data size: 0 Basic stats: PARTIAL Column stats: COMPLETE Select Operator Statistics: Num rows: 1 Data size: 0 Basic stats: PARTIAL Column stats: COMPLETE Filter Operator @@ -92,13 +85,6 @@ STAGE PLANS: sort order: Statistics: Num rows: 1 Data size: 16 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col0 (type: bigint), _col1 (type: bigint) - Execution mode: llap - LLAP IO: no inputs - Map 6 - Map Operator Tree: - TableScan - alias: table_7 - Statistics: Num rows: 1 Data size: 0 Basic stats: PARTIAL Column stats: COMPLETE Select Operator Statistics: Num rows: 1 Data size: 0 Basic stats: PARTIAL Column stats: COMPLETE Filter Operator @@ -156,7 +142,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 + Reducer 4 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -175,7 +161,7 @@ STAGE PLANS: sort order: Statistics: Num rows: 1 Data size: 16 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col0 (type: bigint) - Reducer 7 + Reducer 5 Execution mode: llap Reduce Operator Tree: Group By Operator diff --git ql/src/test/results/clientpositive/llap/subquery_views.q.out ql/src/test/results/clientpositive/llap/subquery_views.q.out index bfd56e6..191de4c 100644 --- ql/src/test/results/clientpositive/llap/subquery_views.q.out +++ ql/src/test/results/clientpositive/llap/subquery_views.q.out @@ -124,17 +124,17 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 10 <- Map 9 (SIMPLE_EDGE) - Reducer 12 <- Map 11 (SIMPLE_EDGE), Reducer 14 (SIMPLE_EDGE), Reducer 17 (SIMPLE_EDGE) - Reducer 14 <- Map 13 (SIMPLE_EDGE) - Reducer 16 <- Map 15 (SIMPLE_EDGE) - Reducer 17 <- Reducer 16 (SIMPLE_EDGE), Reducer 19 (SIMPLE_EDGE) - Reducer 19 <- Map 18 (SIMPLE_EDGE) - Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) - Reducer 3 <- Reducer 12 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) - Reducer 5 <- Map 4 (SIMPLE_EDGE) - Reducer 7 <- Map 6 (SIMPLE_EDGE) - Reducer 8 <- Reducer 10 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) + Reducer 10 <- Reducer 13 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) + Reducer 12 <- Map 11 (SIMPLE_EDGE) + Reducer 13 <- Map 11 (SIMPLE_EDGE) + Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) + Reducer 4 <- Map 1 (SIMPLE_EDGE) + Reducer 5 <- Map 1 (SIMPLE_EDGE) + Reducer 6 <- Reducer 12 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) + Reducer 7 <- Map 1 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) + Reducer 8 <- Map 1 (SIMPLE_EDGE) + Reducer 9 <- Map 1 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -156,34 +156,6 @@ STAGE PLANS: sort order: ++ Map-reduce partition columns: _col0 (type: string), _col1 (type: string) Statistics: Num rows: 166 Data size: 29548 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs - Map 11 - Map Operator Tree: - TableScan - alias: b - properties: - insideView TRUE - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE - Filter Operator - predicate: (key < '11') (type: boolean) - Statistics: Num rows: 166 Data size: 29548 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: key (type: string), value (type: string) - outputColumnNames: _col0, _col1 - Statistics: Num rows: 166 Data size: 29548 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - key expressions: _col0 (type: string), _col1 (type: string) - sort order: ++ - Map-reduce partition columns: _col0 (type: string), _col1 (type: string) - Statistics: Num rows: 166 Data size: 29548 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs - Map 13 - Map Operator Tree: - TableScan - alias: a - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: ((value = value) and (key = key) and (value > 'val_11')) (type: boolean) Statistics: Num rows: 41 Data size: 7298 Basic stats: COMPLETE Column stats: COMPLETE @@ -199,13 +171,6 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string), _col1 (type: string) Statistics: Num rows: 20 Data size: 3880 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col2 (type: bigint), _col3 (type: bigint) - Execution mode: llap - LLAP IO: no inputs - Map 15 - Map Operator Tree: - TableScan - alias: a - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: ((value = value) and (key = key) and (value > 'val_11')) (type: boolean) Statistics: Num rows: 41 Data size: 7298 Basic stats: COMPLETE Column stats: COMPLETE @@ -219,32 +184,18 @@ STAGE PLANS: sort order: ++ Map-reduce partition columns: _col0 (type: string), _col1 (type: string) Statistics: Num rows: 20 Data size: 3560 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs - Map 18 - Map Operator Tree: - TableScan - alias: b - properties: - insideView TRUE - Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE - Group By Operator - keys: key (type: string) - mode: hash - outputColumnNames: _col0 - Statistics: Num rows: 205 Data size: 17835 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: 205 Data size: 17835 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs - Map 4 - Map Operator Tree: - TableScan - alias: a - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE + Filter Operator + predicate: (key < '11') (type: boolean) + Statistics: Num rows: 166 Data size: 29548 Basic stats: COMPLETE Column stats: COMPLETE + Select Operator + expressions: key (type: string), value (type: string) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 166 Data size: 29548 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + key expressions: _col0 (type: string), _col1 (type: string) + sort order: ++ + Map-reduce partition columns: _col0 (type: string), _col1 (type: string) + Statistics: Num rows: 166 Data size: 29548 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: ((value = value) and (key = key) and (value > 'val_11')) (type: boolean) Statistics: Num rows: 41 Data size: 7298 Basic stats: COMPLETE Column stats: COMPLETE @@ -260,13 +211,6 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string), _col1 (type: string) Statistics: Num rows: 20 Data size: 3880 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col2 (type: bigint), _col3 (type: bigint) - Execution mode: llap - LLAP IO: no inputs - Map 6 - Map Operator Tree: - TableScan - alias: a - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: ((value = value) and (key = key) and (value > 'val_11')) (type: boolean) Statistics: Num rows: 41 Data size: 7298 Basic stats: COMPLETE Column stats: COMPLETE @@ -282,7 +226,7 @@ STAGE PLANS: Statistics: Num rows: 20 Data size: 3560 Basic stats: COMPLETE Column stats: COMPLETE Execution mode: llap LLAP IO: no inputs - Map 9 + Map 11 Map Operator Tree: TableScan alias: b @@ -299,87 +243,21 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 205 Data size: 17835 Basic stats: COMPLETE Column stats: COMPLETE + Group By Operator + keys: key (type: string) + mode: hash + outputColumnNames: _col0 + Statistics: Num rows: 205 Data size: 17835 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: 205 Data size: 17835 Basic stats: COMPLETE Column stats: COMPLETE Execution mode: llap LLAP IO: no inputs Reducer 10 Execution mode: llap Reduce Operator Tree: - Group By Operator - keys: KEY._col0 (type: string) - mode: mergepartial - outputColumnNames: _col0 - Statistics: Num rows: 205 Data size: 17835 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: 205 Data size: 17835 Basic stats: COMPLETE Column stats: COMPLETE - Reducer 12 - Execution mode: llap - Reduce Operator Tree: - Merge Join Operator - condition map: - Left Outer Join0 to 1 - Left Outer Join0 to 2 - keys: - 0 _col0 (type: string), _col1 (type: string) - 1 _col0 (type: string), _col1 (type: string) - 2 _col4 (type: string), _col2 (type: string) - outputColumnNames: _col0, _col4, _col5, _col9 - Statistics: Num rows: 1 Data size: 107 Basic stats: COMPLETE Column stats: COMPLETE - Filter Operator - predicate: CASE WHEN ((_col4 = 0)) THEN (true) WHEN (_col4 is null) THEN (true) WHEN (_col9 is not null) THEN (false) WHEN (_col0 is null) THEN (null) WHEN ((_col5 < _col4)) THEN (false) ELSE (true) END (type: boolean) - Statistics: Num rows: 1 Data size: 107 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: _col0 (type: string) - outputColumnNames: _col0 - Statistics: Num rows: 1 Data size: 87 Basic stats: COMPLETE Column stats: COMPLETE - Group By Operator - keys: _col0 (type: string) - mode: hash - outputColumnNames: _col0 - Statistics: Num rows: 1 Data size: 87 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: 1 Data size: 87 Basic stats: COMPLETE Column stats: COMPLETE - Reducer 14 - Execution mode: llap - Reduce Operator Tree: - Group By Operator - aggregations: count(VALUE._col0), count(VALUE._col1) - keys: KEY._col0 (type: string), KEY._col1 (type: string) - mode: mergepartial - outputColumnNames: _col0, _col1, _col2, _col3 - Statistics: Num rows: 20 Data size: 3880 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - key expressions: _col0 (type: string), _col1 (type: string) - sort order: ++ - Map-reduce partition columns: _col0 (type: string), _col1 (type: string) - Statistics: Num rows: 20 Data size: 3880 Basic stats: COMPLETE Column stats: COMPLETE - value expressions: _col2 (type: bigint), _col3 (type: bigint) - Reducer 16 - Execution mode: llap - Reduce Operator Tree: - Group By Operator - keys: KEY._col0 (type: string), KEY._col1 (type: string) - mode: mergepartial - outputColumnNames: _col0, _col1 - Statistics: Num rows: 20 Data size: 3560 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: _col0 (type: string), _col1 (type: string), true (type: boolean) - outputColumnNames: _col0, _col2, _col3 - Statistics: Num rows: 20 Data size: 3640 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: 20 Data size: 3640 Basic stats: COMPLETE Column stats: COMPLETE - value expressions: _col2 (type: string), _col3 (type: boolean) - Reducer 17 - Execution mode: llap - Reduce Operator Tree: Merge Join Operator condition map: Inner Join 0 to 1 @@ -394,7 +272,20 @@ STAGE PLANS: Map-reduce partition columns: _col4 (type: string), _col2 (type: string) Statistics: Num rows: 20 Data size: 3640 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col3 (type: boolean) - Reducer 19 + Reducer 12 + Execution mode: llap + Reduce Operator Tree: + Group By Operator + keys: KEY._col0 (type: string) + mode: mergepartial + outputColumnNames: _col0 + Statistics: Num rows: 205 Data size: 17835 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: 205 Data size: 17835 Basic stats: COMPLETE Column stats: COMPLETE + Reducer 13 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -451,7 +342,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 + Reducer 4 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -466,7 +357,7 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string), _col1 (type: string) Statistics: Num rows: 20 Data size: 3880 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col2 (type: bigint), _col3 (type: bigint) - Reducer 7 + Reducer 5 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -484,7 +375,7 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 20 Data size: 3640 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col2 (type: string), _col3 (type: boolean) - Reducer 8 + Reducer 6 Execution mode: llap Reduce Operator Tree: Merge Join Operator @@ -501,6 +392,69 @@ STAGE PLANS: Map-reduce partition columns: _col4 (type: string), _col2 (type: string) Statistics: Num rows: 20 Data size: 3640 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col3 (type: boolean) + Reducer 7 + Execution mode: llap + Reduce Operator Tree: + Merge Join Operator + condition map: + Left Outer Join0 to 1 + Left Outer Join0 to 2 + keys: + 0 _col0 (type: string), _col1 (type: string) + 1 _col0 (type: string), _col1 (type: string) + 2 _col4 (type: string), _col2 (type: string) + outputColumnNames: _col0, _col4, _col5, _col9 + Statistics: Num rows: 1 Data size: 107 Basic stats: COMPLETE Column stats: COMPLETE + Filter Operator + predicate: CASE WHEN ((_col4 = 0)) THEN (true) WHEN (_col4 is null) THEN (true) WHEN (_col9 is not null) THEN (false) WHEN (_col0 is null) THEN (null) WHEN ((_col5 < _col4)) THEN (false) ELSE (true) END (type: boolean) + Statistics: Num rows: 1 Data size: 107 Basic stats: COMPLETE Column stats: COMPLETE + Select Operator + expressions: _col0 (type: string) + outputColumnNames: _col0 + Statistics: Num rows: 1 Data size: 87 Basic stats: COMPLETE Column stats: COMPLETE + Group By Operator + keys: _col0 (type: string) + mode: hash + outputColumnNames: _col0 + Statistics: Num rows: 1 Data size: 87 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: 1 Data size: 87 Basic stats: COMPLETE Column stats: COMPLETE + Reducer 8 + Execution mode: llap + Reduce Operator Tree: + Group By Operator + aggregations: count(VALUE._col0), count(VALUE._col1) + keys: KEY._col0 (type: string), KEY._col1 (type: string) + mode: mergepartial + outputColumnNames: _col0, _col1, _col2, _col3 + Statistics: Num rows: 20 Data size: 3880 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + key expressions: _col0 (type: string), _col1 (type: string) + sort order: ++ + Map-reduce partition columns: _col0 (type: string), _col1 (type: string) + Statistics: Num rows: 20 Data size: 3880 Basic stats: COMPLETE Column stats: COMPLETE + value expressions: _col2 (type: bigint), _col3 (type: bigint) + Reducer 9 + Execution mode: llap + Reduce Operator Tree: + Group By Operator + keys: KEY._col0 (type: string), KEY._col1 (type: string) + mode: mergepartial + outputColumnNames: _col0, _col1 + Statistics: Num rows: 20 Data size: 3560 Basic stats: COMPLETE Column stats: COMPLETE + Select Operator + expressions: _col0 (type: string), _col1 (type: string), true (type: boolean) + outputColumnNames: _col0, _col2, _col3 + Statistics: Num rows: 20 Data size: 3640 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: 20 Data size: 3640 Basic stats: COMPLETE Column stats: COMPLETE + value expressions: _col2 (type: string), _col3 (type: boolean) Stage: Stage-0 Fetch Operator diff --git ql/src/test/results/clientpositive/llap/tez_join_tests.q.out ql/src/test/results/clientpositive/llap/tez_join_tests.q.out index 4fa5854..13da5ad 100644 --- ql/src/test/results/clientpositive/llap/tez_join_tests.q.out +++ ql/src/test/results/clientpositive/llap/tez_join_tests.q.out @@ -15,7 +15,7 @@ STAGE PLANS: Edges: Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (SIMPLE_EDGE) - Reducer 4 <- Map 7 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) + Reducer 4 <- Map 1 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: @@ -34,6 +34,16 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: string) + Select Operator + expressions: key (type: string), value (type: string) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + key expressions: _col1 (type: string) + sort order: + + Map-reduce partition columns: _col1 (type: string) + Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE + value expressions: _col0 (type: string) Execution mode: llap LLAP IO: no inputs Map 6 @@ -52,23 +62,6 @@ STAGE PLANS: Statistics: Num rows: 25 Data size: 2150 Basic stats: COMPLETE Column stats: COMPLETE Execution mode: llap LLAP IO: no inputs - Map 7 - Map Operator Tree: - TableScan - alias: c - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: key (type: string), value (type: string) - outputColumnNames: _col0, _col1 - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - key expressions: _col1 (type: string) - sort order: + - Map-reduce partition columns: _col1 (type: string) - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE - value expressions: _col0 (type: string) - Execution mode: llap - LLAP IO: no inputs Reducer 2 Execution mode: llap Reduce Operator Tree: diff --git ql/src/test/results/clientpositive/llap/tez_joins_explain.q.out ql/src/test/results/clientpositive/llap/tez_joins_explain.q.out index b32e990..16e0032 100644 --- ql/src/test/results/clientpositive/llap/tez_joins_explain.q.out +++ ql/src/test/results/clientpositive/llap/tez_joins_explain.q.out @@ -15,7 +15,7 @@ STAGE PLANS: Edges: Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (SIMPLE_EDGE) - Reducer 4 <- Map 7 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) + Reducer 4 <- Map 1 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: @@ -34,6 +34,16 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: string) + Select Operator + expressions: key (type: string), value (type: string) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + key expressions: _col1 (type: string) + sort order: + + Map-reduce partition columns: _col1 (type: string) + Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE + value expressions: _col0 (type: string) Execution mode: llap LLAP IO: no inputs Map 6 @@ -52,23 +62,6 @@ STAGE PLANS: Statistics: Num rows: 25 Data size: 2150 Basic stats: COMPLETE Column stats: COMPLETE Execution mode: llap LLAP IO: no inputs - Map 7 - Map Operator Tree: - TableScan - alias: c - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: key (type: string), value (type: string) - outputColumnNames: _col0, _col1 - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - key expressions: _col1 (type: string) - sort order: + - Map-reduce partition columns: _col1 (type: string) - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE - value expressions: _col0 (type: string) - Execution mode: llap - LLAP IO: no inputs Reducer 2 Execution mode: llap Reduce Operator Tree: diff --git ql/src/test/results/clientpositive/llap/tez_smb_main.q.out ql/src/test/results/clientpositive/llap/tez_smb_main.q.out index 4f9c95a..842ad5e 100644 --- ql/src/test/results/clientpositive/llap/tez_smb_main.q.out +++ ql/src/test/results/clientpositive/llap/tez_smb_main.q.out @@ -1756,11 +1756,6 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: int) Statistics: Num rows: 500 Data size: 9312 Basic stats: COMPLETE Column stats: NONE - Reduce Output Operator - key expressions: _col0 (type: int) - sort order: + - Map-reduce partition columns: _col0 (type: int) - Statistics: Num rows: 500 Data size: 9312 Basic stats: COMPLETE Column stats: NONE Execution mode: llap LLAP IO: no inputs Reducer 3 diff --git ql/src/test/results/clientpositive/llap/unionDistinct_1.q.out ql/src/test/results/clientpositive/llap/unionDistinct_1.q.out index a252c74..b6271a7 100644 --- ql/src/test/results/clientpositive/llap/unionDistinct_1.q.out +++ ql/src/test/results/clientpositive/llap/unionDistinct_1.q.out @@ -33,11 +33,11 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 10 <- Map 9 (CUSTOM_SIMPLE_EDGE), Union 5 (CONTAINS) Reducer 2 <- Map 1 (CUSTOM_SIMPLE_EDGE), Union 3 (CONTAINS) Reducer 4 <- Union 3 (SIMPLE_EDGE), Union 5 (CONTAINS) Reducer 6 <- Union 5 (SIMPLE_EDGE) - Reducer 8 <- Map 7 (CUSTOM_SIMPLE_EDGE), Union 3 (CONTAINS) + Reducer 7 <- Map 1 (CUSTOM_SIMPLE_EDGE), Union 5 (CONTAINS) + Reducer 9 <- Map 8 (CUSTOM_SIMPLE_EDGE), Union 3 (CONTAINS) #### A masked pattern was here #### Vertices: Map 1 @@ -56,13 +56,6 @@ STAGE PLANS: sort order: Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col0 (type: bigint) - Execution mode: llap - LLAP IO: no inputs - Map 7 - Map Operator Tree: - TableScan - alias: s2 - Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: COMPLETE Select Operator Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: COMPLETE Group By Operator @@ -76,10 +69,10 @@ STAGE PLANS: value expressions: _col0 (type: bigint) Execution mode: llap LLAP IO: no inputs - Map 9 + Map 8 Map Operator Tree: TableScan - alias: s3 + alias: s2 Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: COMPLETE Select Operator Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: COMPLETE @@ -94,28 +87,6 @@ STAGE PLANS: value expressions: _col0 (type: bigint) Execution mode: llap LLAP IO: no inputs - Reducer 10 - Execution mode: llap - Reduce Operator Tree: - Group By Operator - aggregations: count(VALUE._col0) - mode: mergepartial - outputColumnNames: _col0 - Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: 'tst3' (type: string), _col0 (type: bigint) - outputColumnNames: _col0, _col1 - Statistics: Num rows: 1 Data size: 96 Basic stats: COMPLETE Column stats: COMPLETE - Group By Operator - keys: _col0 (type: string), _col1 (type: bigint) - mode: hash - outputColumnNames: _col0, _col1 - Statistics: Num rows: 1 Data size: 96 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - key expressions: _col0 (type: string), _col1 (type: bigint) - sort order: ++ - Map-reduce partition columns: _col0 (type: string), _col1 (type: bigint) - Statistics: Num rows: 1 Data size: 96 Basic stats: COMPLETE Column stats: COMPLETE Reducer 2 Execution mode: llap Reduce Operator Tree: @@ -176,7 +147,29 @@ STAGE PLANS: output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe name: default.tmptable - Reducer 8 + Reducer 7 + Execution mode: llap + Reduce Operator Tree: + Group By Operator + aggregations: count(VALUE._col0) + mode: mergepartial + outputColumnNames: _col0 + Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE + Select Operator + expressions: 'tst3' (type: string), _col0 (type: bigint) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 1 Data size: 96 Basic stats: COMPLETE Column stats: COMPLETE + Group By Operator + keys: _col0 (type: string), _col1 (type: bigint) + mode: hash + outputColumnNames: _col0, _col1 + Statistics: Num rows: 1 Data size: 96 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + key expressions: _col0 (type: string), _col1 (type: bigint) + sort order: ++ + Map-reduce partition columns: _col0 (type: string), _col1 (type: bigint) + Statistics: Num rows: 1 Data size: 96 Basic stats: COMPLETE Column stats: COMPLETE + Reducer 9 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -273,11 +266,11 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 10 <- Map 9 (CUSTOM_SIMPLE_EDGE), Union 5 (CONTAINS) Reducer 2 <- Map 1 (CUSTOM_SIMPLE_EDGE), Union 3 (CONTAINS) Reducer 4 <- Union 3 (SIMPLE_EDGE), Union 5 (CONTAINS) Reducer 6 <- Union 5 (SIMPLE_EDGE) - Reducer 8 <- Map 7 (CUSTOM_SIMPLE_EDGE), Union 3 (CONTAINS) + Reducer 7 <- Map 1 (CUSTOM_SIMPLE_EDGE), Union 5 (CONTAINS) + Reducer 9 <- Map 8 (CUSTOM_SIMPLE_EDGE), Union 3 (CONTAINS) #### A masked pattern was here #### Vertices: Map 1 @@ -296,13 +289,6 @@ STAGE PLANS: sort order: Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col0 (type: bigint) - Execution mode: llap - LLAP IO: no inputs - Map 7 - Map Operator Tree: - TableScan - alias: s2 - Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: COMPLETE Select Operator Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: COMPLETE Group By Operator @@ -316,10 +302,10 @@ STAGE PLANS: value expressions: _col0 (type: bigint) Execution mode: llap LLAP IO: no inputs - Map 9 + Map 8 Map Operator Tree: TableScan - alias: s3 + alias: s2 Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: COMPLETE Select Operator Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: COMPLETE @@ -334,28 +320,6 @@ STAGE PLANS: value expressions: _col0 (type: bigint) Execution mode: llap LLAP IO: no inputs - Reducer 10 - Execution mode: llap - Reduce Operator Tree: - Group By Operator - aggregations: count(VALUE._col0) - mode: mergepartial - outputColumnNames: _col0 - Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: 'tst3' (type: string), _col0 (type: bigint) - outputColumnNames: _col0, _col1 - Statistics: Num rows: 1 Data size: 96 Basic stats: COMPLETE Column stats: COMPLETE - Group By Operator - keys: _col0 (type: string), _col1 (type: bigint) - mode: hash - outputColumnNames: _col0, _col1 - Statistics: Num rows: 1 Data size: 96 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - key expressions: _col0 (type: string), _col1 (type: bigint) - sort order: ++ - Map-reduce partition columns: _col0 (type: string) - Statistics: Num rows: 1 Data size: 96 Basic stats: COMPLETE Column stats: COMPLETE Reducer 2 Execution mode: llap Reduce Operator Tree: @@ -421,7 +385,29 @@ 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 8 + Reducer 7 + Execution mode: llap + Reduce Operator Tree: + Group By Operator + aggregations: count(VALUE._col0) + mode: mergepartial + outputColumnNames: _col0 + Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE + Select Operator + expressions: 'tst3' (type: string), _col0 (type: bigint) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 1 Data size: 96 Basic stats: COMPLETE Column stats: COMPLETE + Group By Operator + keys: _col0 (type: string), _col1 (type: bigint) + mode: hash + outputColumnNames: _col0, _col1 + Statistics: Num rows: 1 Data size: 96 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + key expressions: _col0 (type: string), _col1 (type: bigint) + sort order: ++ + Map-reduce partition columns: _col0 (type: string) + Statistics: Num rows: 1 Data size: 96 Basic stats: COMPLETE Column stats: COMPLETE + Reducer 9 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -5386,13 +5372,13 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Map 11 <- Union 9 (CONTAINS) - Map 6 <- Union 3 (CONTAINS) - Reducer 10 <- Union 9 (SIMPLE_EDGE) + Map 10 <- Union 7 (CONTAINS) + Map 9 <- Union 3 (CONTAINS) Reducer 2 <- Map 1 (CUSTOM_SIMPLE_EDGE), Union 3 (CONTAINS) Reducer 4 <- Union 3 (SIMPLE_EDGE) - Reducer 5 <- Reducer 10 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) - Reducer 8 <- Map 7 (CUSTOM_SIMPLE_EDGE), Union 9 (CONTAINS) + Reducer 5 <- Reducer 4 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) + Reducer 6 <- Map 1 (CUSTOM_SIMPLE_EDGE), Union 7 (CONTAINS) + Reducer 8 <- Union 7 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -5409,9 +5395,18 @@ STAGE PLANS: sort order: Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col0 (type: bigint) + Group By Operator + aggregations: count(1) + mode: hash + outputColumnNames: _col0 + Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + sort order: + Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE + value expressions: _col0 (type: bigint) Execution mode: llap LLAP IO: no inputs - Map 11 + Map 10 Map Operator Tree: TableScan alias: s4 @@ -5435,7 +5430,7 @@ STAGE PLANS: Statistics: Num rows: 83 Data size: 22576 Basic stats: COMPLETE Column stats: COMPLETE Execution mode: llap LLAP IO: no inputs - Map 6 + Map 9 Map Operator Tree: TableScan alias: s2 @@ -5459,36 +5454,6 @@ STAGE PLANS: Statistics: Num rows: 83 Data size: 22576 Basic stats: COMPLETE Column stats: COMPLETE Execution mode: llap LLAP IO: no inputs - Map 7 - Map Operator Tree: - TableScan - alias: s3 - Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: COMPLETE - Group By Operator - aggregations: count(1) - mode: hash - outputColumnNames: _col0 - Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - sort order: - Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE - value expressions: _col0 (type: bigint) - Execution mode: llap - LLAP IO: no inputs - Reducer 10 - Execution mode: llap - Reduce Operator Tree: - Group By Operator - keys: KEY._col0 (type: string), KEY._col1 (type: string) - mode: mergepartial - outputColumnNames: _col0, _col1 - Statistics: Num rows: 83 Data size: 22576 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: 83 Data size: 22576 Basic stats: COMPLETE Column stats: COMPLETE - value expressions: _col1 (type: string) Reducer 2 Execution mode: llap Reduce Operator Tree: @@ -5543,7 +5508,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 8 + Reducer 6 Execution mode: llap Reduce Operator Tree: Group By Operator @@ -5565,10 +5530,24 @@ STAGE PLANS: sort order: ++ Map-reduce partition columns: _col0 (type: string), _col1 (type: string) Statistics: Num rows: 83 Data size: 22576 Basic stats: COMPLETE Column stats: COMPLETE + Reducer 8 + Execution mode: llap + Reduce Operator Tree: + Group By Operator + keys: KEY._col0 (type: string), KEY._col1 (type: string) + mode: mergepartial + outputColumnNames: _col0, _col1 + Statistics: Num rows: 83 Data size: 22576 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: 83 Data size: 22576 Basic stats: COMPLETE Column stats: COMPLETE + value expressions: _col1 (type: string) Union 3 Vertex: Union 3 - Union 9 - Vertex: Union 9 + Union 7 + Vertex: Union 7 Stage: Stage-0 Fetch Operator @@ -11368,13 +11347,13 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 10 <- Map 9 (CUSTOM_SIMPLE_EDGE), Union 3 (CONTAINS) - Reducer 12 <- Map 11 (CUSTOM_SIMPLE_EDGE), Union 5 (CONTAINS) - Reducer 14 <- Map 13 (CUSTOM_SIMPLE_EDGE), Union 7 (CONTAINS) + Reducer 10 <- Map 1 (CUSTOM_SIMPLE_EDGE), Union 7 (CONTAINS) + Reducer 12 <- Map 11 (CUSTOM_SIMPLE_EDGE), Union 3 (CONTAINS) Reducer 2 <- Map 1 (CUSTOM_SIMPLE_EDGE), Union 3 (CONTAINS) Reducer 4 <- Union 3 (SIMPLE_EDGE), Union 5 (CONTAINS) Reducer 6 <- Union 5 (SIMPLE_EDGE), Union 7 (CONTAINS) Reducer 8 <- Union 7 (SIMPLE_EDGE) + Reducer 9 <- Map 1 (CUSTOM_SIMPLE_EDGE), Union 5 (CONTAINS) #### A masked pattern was here #### Vertices: Map 1 @@ -11390,13 +11369,6 @@ STAGE PLANS: Reduce Output Operator sort order: Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs - Map 11 - Map Operator Tree: - TableScan - alias: src - Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: COMPLETE Select Operator Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: COMPLETE Limit @@ -11405,13 +11377,6 @@ STAGE PLANS: Reduce Output Operator sort order: Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs - Map 13 - Map Operator Tree: - TableScan - alias: src - Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: COMPLETE Select Operator Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: COMPLETE Limit @@ -11422,7 +11387,7 @@ STAGE PLANS: Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE Execution mode: llap LLAP IO: no inputs - Map 9 + Map 11 Map Operator Tree: TableScan alias: src @@ -11444,7 +11409,7 @@ STAGE PLANS: Number of rows: 1 Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE Select Operator - expressions: 2 (type: int) + expressions: 4 (type: int) outputColumnNames: _col0 Statistics: Num rows: 1 Data size: 4 Basic stats: COMPLETE Column stats: COMPLETE Group By Operator @@ -11464,27 +11429,7 @@ STAGE PLANS: Number of rows: 1 Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE Select Operator - expressions: 3 (type: int) - outputColumnNames: _col0 - Statistics: Num rows: 1 Data size: 4 Basic stats: COMPLETE Column stats: COMPLETE - Group By Operator - keys: _col0 (type: int) - mode: hash - outputColumnNames: _col0 - Statistics: Num rows: 1 Data size: 4 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - key expressions: _col0 (type: int) - sort order: + - Map-reduce partition columns: _col0 (type: int) - Statistics: Num rows: 1 Data size: 4 Basic stats: COMPLETE Column stats: COMPLETE - Reducer 14 - Execution mode: llap - Reduce Operator Tree: - Limit - Number of rows: 1 - Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: 4 (type: int) + expressions: 2 (type: int) outputColumnNames: _col0 Statistics: Num rows: 1 Data size: 4 Basic stats: COMPLETE Column stats: COMPLETE Group By Operator @@ -11568,6 +11513,26 @@ 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 9 + Execution mode: llap + Reduce Operator Tree: + Limit + Number of rows: 1 + Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE + Select Operator + expressions: 3 (type: int) + outputColumnNames: _col0 + Statistics: Num rows: 1 Data size: 4 Basic stats: COMPLETE Column stats: COMPLETE + Group By Operator + keys: _col0 (type: int) + mode: hash + outputColumnNames: _col0 + Statistics: Num rows: 1 Data size: 4 Basic stats: COMPLETE Column stats: COMPLETE + Reduce Output Operator + key expressions: _col0 (type: int) + sort order: + + Map-reduce partition columns: _col0 (type: int) + Statistics: Num rows: 1 Data size: 4 Basic stats: COMPLETE Column stats: COMPLETE Union 3 Vertex: Union 3 Union 5 diff --git ql/src/test/results/clientpositive/llap/union_top_level.q.out ql/src/test/results/clientpositive/llap/union_top_level.q.out index 52926b6..2fac8cc 100644 --- ql/src/test/results/clientpositive/llap/union_top_level.q.out +++ ql/src/test/results/clientpositive/llap/union_top_level.q.out @@ -208,10 +208,10 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 5 (SIMPLE_EDGE) + Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Union 4 (CONTAINS) - Reducer 7 <- Map 6 (SIMPLE_EDGE), Map 9 (SIMPLE_EDGE) - Reducer 8 <- Reducer 7 (SIMPLE_EDGE), Union 4 (CONTAINS) + Reducer 5 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) + Reducer 6 <- Reducer 5 (SIMPLE_EDGE), Union 4 (CONTAINS) #### A masked pattern was here #### Vertices: Map 1 @@ -232,32 +232,6 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE value expressions: _col1 (type: string) - Execution mode: llap - LLAP IO: no inputs - Map 5 - Map Operator Tree: - TableScan - alias: s1 - Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE - Filter Operator - predicate: key is not null (type: boolean) - Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: key (type: string) - outputColumnNames: _col0 - Statistics: Num rows: 500 Data size: 43500 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: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: llap - LLAP IO: no inputs - Map 6 - Map Operator Tree: - TableScan - alias: s2 - Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator predicate: key is not null (type: boolean) Statistics: Num rows: 500 Data size: 89000 Basic stats: COMPLETE Column stats: COMPLETE @@ -273,7 +247,7 @@ STAGE PLANS: value expressions: _col1 (type: string) Execution mode: llap LLAP IO: no inputs - Map 9 + Map 7 Map Operator Tree: TableScan alias: s1 @@ -290,6 +264,18 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE + Filter Operator + predicate: key is not null (type: boolean) + Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE + Select Operator + expressions: key (type: string) + outputColumnNames: _col0 + Statistics: Num rows: 500 Data size: 43500 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: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE Execution mode: llap LLAP IO: no inputs Reducer 2 @@ -330,7 +316,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 7 + Reducer 5 Execution mode: llap Reduce Operator Tree: Merge Join Operator @@ -351,7 +337,7 @@ STAGE PLANS: Statistics: Num rows: 1219 Data size: 216982 Basic stats: COMPLETE Column stats: COMPLETE TopN Hash Memory Usage: 0.1 value expressions: _col1 (type: string) - Reducer 8 + Reducer 6 Execution mode: llap Reduce Operator Tree: Select Operator diff --git ql/src/test/results/clientpositive/llap/vector_groupby_grouping_sets4.q.out ql/src/test/results/clientpositive/llap/vector_groupby_grouping_sets4.q.out index 0175c38..e1ad06c 100644 --- ql/src/test/results/clientpositive/llap/vector_groupby_grouping_sets4.q.out +++ ql/src/test/results/clientpositive/llap/vector_groupby_grouping_sets4.q.out @@ -53,8 +53,8 @@ STAGE PLANS: #### A masked pattern was here #### Edges: Reducer 2 <- Map 1 (SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) - Reducer 5 <- Map 4 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) + Reducer 4 <- Map 1 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -77,13 +77,6 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string), _col1 (type: string), _col2 (type: int) Statistics: Num rows: 8 Data size: 2040 Basic stats: COMPLETE Column stats: NONE value expressions: _col3 (type: bigint) - Execution mode: vectorized, llap - LLAP IO: all inputs - Map 4 - Map Operator Tree: - TableScan - alias: t1 - Statistics: Num rows: 6 Data size: 1530 Basic stats: COMPLETE Column stats: NONE Filter Operator predicate: (UDFToDouble(a) < 3.0) (type: boolean) Statistics: Num rows: 2 Data size: 510 Basic stats: COMPLETE Column stats: NONE @@ -142,7 +135,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 + Reducer 4 Execution mode: vectorized, llap Reduce Operator Tree: Group By Operator @@ -197,8 +190,8 @@ STAGE PLANS: #### A masked pattern was here #### Edges: Reducer 2 <- Map 1 (SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) - Reducer 5 <- Map 4 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) + Reducer 4 <- Map 1 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -221,13 +214,6 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string), _col1 (type: string), _col2 (type: int) Statistics: Num rows: 8 Data size: 2040 Basic stats: COMPLETE Column stats: NONE value expressions: _col3 (type: bigint) - Execution mode: vectorized, llap - LLAP IO: all inputs - Map 4 - Map Operator Tree: - TableScan - alias: t1 - Statistics: Num rows: 6 Data size: 1530 Basic stats: COMPLETE Column stats: NONE Filter Operator predicate: (UDFToDouble(a) < 3.0) (type: boolean) Statistics: Num rows: 2 Data size: 510 Basic stats: COMPLETE Column stats: NONE @@ -286,7 +272,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 + Reducer 4 Execution mode: vectorized, llap Reduce Operator Tree: Group By Operator @@ -372,9 +358,9 @@ STAGE PLANS: Edges: Reducer 2 <- Map 1 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (SIMPLE_EDGE) - Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) - Reducer 6 <- Map 5 (SIMPLE_EDGE) - Reducer 7 <- Reducer 6 (SIMPLE_EDGE) + Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) + Reducer 5 <- Map 1 (SIMPLE_EDGE) + Reducer 6 <- Reducer 5 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -397,13 +383,6 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string), _col1 (type: string) Statistics: Num rows: 2 Data size: 510 Basic stats: COMPLETE Column stats: NONE value expressions: _col2 (type: bigint) - Execution mode: vectorized, llap - LLAP IO: all inputs - Map 5 - Map Operator Tree: - TableScan - alias: t1 - Statistics: Num rows: 6 Data size: 1530 Basic stats: COMPLETE Column stats: NONE Filter Operator predicate: (UDFToDouble(a) < 3.0) (type: boolean) Statistics: Num rows: 2 Data size: 510 Basic stats: COMPLETE Column stats: NONE @@ -477,7 +456,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 + Reducer 5 Execution mode: vectorized, llap Reduce Operator Tree: Group By Operator @@ -492,7 +471,7 @@ STAGE PLANS: Map-reduce partition columns: _col0 (type: string), _col1 (type: string), _col2 (type: int) Statistics: Num rows: 8 Data size: 2040 Basic stats: COMPLETE Column stats: NONE value expressions: _col3 (type: bigint) - Reducer 7 + Reducer 6 Execution mode: vectorized, llap Reduce Operator Tree: Group By Operator diff --git ql/src/test/results/clientpositive/llap/vector_groupby_mapjoin.q.out ql/src/test/results/clientpositive/llap/vector_groupby_mapjoin.q.out index 7bfbd6f..380165b 100644 --- ql/src/test/results/clientpositive/llap/vector_groupby_mapjoin.q.out +++ ql/src/test/results/clientpositive/llap/vector_groupby_mapjoin.q.out @@ -26,10 +26,10 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Map 1 <- Reducer 4 (BROADCAST_EDGE), Reducer 6 (BROADCAST_EDGE) + Map 1 <- Reducer 4 (BROADCAST_EDGE), Reducer 5 (BROADCAST_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE) Reducer 4 <- Map 3 (CUSTOM_SIMPLE_EDGE) - Reducer 6 <- Map 5 (SIMPLE_EDGE) + Reducer 5 <- Map 3 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -74,7 +74,7 @@ STAGE PLANS: nativeConditionsMet: hive.mapjoin.optimized.hashtable IS true, hive.vectorized.execution.mapjoin.native.enabled IS true, hive.execution.engine tez IN [tez, spark] IS true, One MapJoin Condition IS true, No nullsafe IS true, Small table vectorizes IS true, Optimized Table and Supports Key Types IS true outputColumnNames: _col0, _col1, _col2, _col3, _col5 input vertices: - 1 Reducer 6 + 1 Reducer 5 Statistics: Num rows: 500 Data size: 99000 Basic stats: COMPLETE Column stats: COMPLETE Filter Operator Filter Vectorization: @@ -145,24 +145,6 @@ STAGE PLANS: 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: COMPLETE value expressions: _col0 (type: bigint), _col1 (type: bigint) - Execution mode: vectorized, llap - LLAP IO: no inputs - Map Vectorization: - enabled: true - enabledConditionsMet: hive.vectorized.use.vector.serde.deserialize IS true - groupByVectorOutput: true - inputFileFormats: org.apache.hadoop.mapred.TextInputFormat - allNative: false - usesVectorUDFAdaptor: false - vectorized: true - Map 5 - Map Operator Tree: - TableScan - alias: src - Statistics: Num rows: 500 Data size: 43500 Basic stats: COMPLETE Column stats: COMPLETE - TableScan Vectorization: - native: true - projectedOutputColumns: [0, 1] Group By Operator Group By Vectorization: className: VectorGroupByOperator @@ -250,7 +232,7 @@ STAGE PLANS: 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: COMPLETE value expressions: _col0 (type: bigint), _col1 (type: bigint) - Reducer 6 + Reducer 5 Execution mode: vectorized, llap Reduce Vectorization: enabled: true diff --git ql/src/test/results/clientpositive/llap/vector_join30.q.out ql/src/test/results/clientpositive/llap/vector_join30.q.out index 394393e..e153ba5 100644 --- ql/src/test/results/clientpositive/llap/vector_join30.q.out +++ ql/src/test/results/clientpositive/llap/vector_join30.q.out @@ -775,10 +775,10 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 5 (BROADCAST_EDGE), Reducer 7 (BROADCAST_EDGE) + Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 5 (BROADCAST_EDGE), Reducer 6 (BROADCAST_EDGE) Reducer 3 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) Reducer 5 <- Map 4 (SIMPLE_EDGE) - Reducer 7 <- Map 6 (SIMPLE_EDGE) + Reducer 6 <- Map 4 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -854,24 +854,6 @@ STAGE PLANS: 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: 500 Data size: 88000 Basic stats: COMPLETE Column stats: NONE value expressions: _col0 (type: string) - Execution mode: vectorized, llap - LLAP IO: all inputs - Map Vectorization: - enabled: true - enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS true - groupByVectorOutput: true - inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat - allNative: true - usesVectorUDFAdaptor: false - vectorized: true - Map 6 - Map Operator Tree: - TableScan - alias: orcsrc - Statistics: Num rows: 500 Data size: 88000 Basic stats: COMPLETE Column stats: NONE - TableScan Vectorization: - native: true - projectedOutputColumns: [0, 1] Filter Operator Filter Vectorization: className: VectorFilterOperator @@ -940,7 +922,7 @@ STAGE PLANS: outputColumnNames: _col2, _col3 input vertices: 1 Reducer 5 - 2 Reducer 7 + 2 Reducer 6 Statistics: Num rows: 1100 Data size: 193600 Basic stats: COMPLETE Column stats: NONE Group By Operator aggregations: sum(hash(_col2,_col3)) @@ -1020,7 +1002,7 @@ STAGE PLANS: 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: 500 Data size: 88000 Basic stats: COMPLETE Column stats: NONE value expressions: _col1 (type: string) - Reducer 7 + Reducer 6 Execution mode: vectorized, llap Reduce Vectorization: enabled: true @@ -1115,10 +1097,10 @@ STAGE PLANS: #### A masked pattern was here #### Edges: Reducer 2 <- Map 1 (SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (CUSTOM_SIMPLE_EDGE) Reducer 6 <- Map 5 (SIMPLE_EDGE) - Reducer 8 <- Map 7 (SIMPLE_EDGE) + Reducer 7 <- Map 5 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -1180,24 +1162,6 @@ STAGE PLANS: 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: 500 Data size: 88000 Basic stats: COMPLETE Column stats: NONE value expressions: _col0 (type: string) - Execution mode: vectorized, llap - LLAP IO: all inputs - Map Vectorization: - enabled: true - enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS true - groupByVectorOutput: true - inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat - allNative: true - usesVectorUDFAdaptor: false - vectorized: true - Map 7 - Map Operator Tree: - TableScan - alias: orcsrc - Statistics: Num rows: 500 Data size: 88000 Basic stats: COMPLETE Column stats: NONE - TableScan Vectorization: - native: true - projectedOutputColumns: [0, 1] Select Operator expressions: key (type: string), value (type: string) outputColumnNames: _col0, _col1 @@ -1337,7 +1301,7 @@ STAGE PLANS: 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: 500 Data size: 88000 Basic stats: COMPLETE Column stats: NONE value expressions: _col1 (type: string) - Reducer 8 + Reducer 7 Execution mode: vectorized, llap Reduce Vectorization: enabled: true @@ -1432,10 +1396,10 @@ STAGE PLANS: #### A masked pattern was here #### Edges: Reducer 2 <- Map 1 (SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (CUSTOM_SIMPLE_EDGE) Reducer 6 <- Map 5 (SIMPLE_EDGE) - Reducer 8 <- Map 7 (SIMPLE_EDGE) + Reducer 7 <- Map 5 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -1497,24 +1461,6 @@ STAGE PLANS: 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: 500 Data size: 88000 Basic stats: COMPLETE Column stats: NONE value expressions: _col0 (type: string) - Execution mode: vectorized, llap - LLAP IO: all inputs - Map Vectorization: - enabled: true - enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS true - groupByVectorOutput: true - inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat - allNative: true - usesVectorUDFAdaptor: false - vectorized: true - Map 7 - Map Operator Tree: - TableScan - alias: orcsrc - Statistics: Num rows: 500 Data size: 88000 Basic stats: COMPLETE Column stats: NONE - TableScan Vectorization: - native: true - projectedOutputColumns: [0, 1] Select Operator expressions: key (type: string), value (type: string) outputColumnNames: _col0, _col1 @@ -1654,7 +1600,7 @@ STAGE PLANS: 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: 500 Data size: 88000 Basic stats: COMPLETE Column stats: NONE value expressions: _col1 (type: string) - Reducer 8 + Reducer 7 Execution mode: vectorized, llap Reduce Vectorization: enabled: true @@ -1749,10 +1695,10 @@ STAGE PLANS: #### A masked pattern was here #### Edges: Reducer 2 <- Map 1 (SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (CUSTOM_SIMPLE_EDGE) Reducer 6 <- Map 5 (SIMPLE_EDGE) - Reducer 8 <- Map 7 (SIMPLE_EDGE) + Reducer 7 <- Map 5 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -1814,24 +1760,6 @@ STAGE PLANS: 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: 500 Data size: 88000 Basic stats: COMPLETE Column stats: NONE value expressions: _col0 (type: string) - Execution mode: vectorized, llap - LLAP IO: all inputs - Map Vectorization: - enabled: true - enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS true - groupByVectorOutput: true - inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat - allNative: true - usesVectorUDFAdaptor: false - vectorized: true - Map 7 - Map Operator Tree: - TableScan - alias: orcsrc - Statistics: Num rows: 500 Data size: 88000 Basic stats: COMPLETE Column stats: NONE - TableScan Vectorization: - native: true - projectedOutputColumns: [0, 1] Select Operator expressions: key (type: string), value (type: string) outputColumnNames: _col0, _col1 @@ -1971,7 +1899,7 @@ STAGE PLANS: 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: 500 Data size: 88000 Basic stats: COMPLETE Column stats: NONE value expressions: _col1 (type: string) - Reducer 8 + Reducer 7 Execution mode: vectorized, llap Reduce Vectorization: enabled: true @@ -2066,10 +1994,10 @@ STAGE PLANS: #### A masked pattern was here #### Edges: Reducer 2 <- Map 1 (SIMPLE_EDGE) - Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) + Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (CUSTOM_SIMPLE_EDGE) Reducer 6 <- Map 5 (SIMPLE_EDGE) - Reducer 8 <- Map 7 (SIMPLE_EDGE) + Reducer 7 <- Map 5 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -2131,24 +2059,6 @@ STAGE PLANS: 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: 500 Data size: 88000 Basic stats: COMPLETE Column stats: NONE value expressions: _col0 (type: string) - Execution mode: vectorized, llap - LLAP IO: all inputs - Map Vectorization: - enabled: true - enabledConditionsMet: hive.vectorized.use.vectorized.input.format IS true - groupByVectorOutput: true - inputFileFormats: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat - allNative: true - usesVectorUDFAdaptor: false - vectorized: true - Map 7 - Map Operator Tree: - TableScan - alias: orcsrc - Statistics: Num rows: 500 Data size: 88000 Basic stats: COMPLETE Column stats: NONE - TableScan Vectorization: - native: true - projectedOutputColumns: [0, 1] Select Operator expressions: key (type: string), value (type: string) outputColumnNames: _col0, _col1 @@ -2288,7 +2198,7 @@ STAGE PLANS: 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: 500 Data size: 88000 Basic stats: COMPLETE Column stats: NONE value expressions: _col1 (type: string) - Reducer 8 + Reducer 7 Execution mode: vectorized, llap Reduce Vectorization: enabled: true diff --git ql/src/test/results/clientpositive/llap/vectorized_dynamic_partition_pruning.q.out ql/src/test/results/clientpositive/llap/vectorized_dynamic_partition_pruning.q.out index 3967d11..d776214 100644 --- ql/src/test/results/clientpositive/llap/vectorized_dynamic_partition_pruning.q.out +++ ql/src/test/results/clientpositive/llap/vectorized_dynamic_partition_pruning.q.out @@ -2375,9 +2375,9 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 2 <- Map 1 (CUSTOM_SIMPLE_EDGE), Reducer 5 (CUSTOM_SIMPLE_EDGE) + Reducer 2 <- Map 1 (CUSTOM_SIMPLE_EDGE), Reducer 4 (CUSTOM_SIMPLE_EDGE) Reducer 3 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) - Reducer 5 <- Map 4 (SIMPLE_EDGE) + Reducer 4 <- Map 1 (SIMPLE_EDGE) #### A masked pattern was here #### Vertices: Map 1 @@ -2386,39 +2386,27 @@ STAGE PLANS: alias: srcpart filterExpr: (ds = '2008-04-08') (type: boolean) Statistics: Num rows: 1000 Data size: 18624 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - Statistics: Num rows: 1000 Data size: 94000 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - sort order: + Filter Operator + predicate: (ds = '2008-04-08') (type: boolean) + Select Operator Statistics: Num rows: 1000 Data size: 94000 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: vectorized, llap - LLAP IO: no inputs - Map Vectorization: - enabled: true - enabledConditionsMet: hive.vectorized.use.vector.serde.deserialize IS true - groupByVectorOutput: true - inputFileFormats: org.apache.hadoop.mapred.TextInputFormat - allNative: true - usesVectorUDFAdaptor: false - vectorized: true - Map 4 - Map Operator Tree: - TableScan - alias: srcpart - filterExpr: (ds = '2008-04-08') (type: boolean) - Statistics: Num rows: 1000 Data size: 18624 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - Statistics: Num rows: 1000 Data size: 18624 Basic stats: COMPLETE Column stats: COMPLETE - Group By Operator - keys: '2008-04-08' (type: string) - mode: hash - outputColumnNames: _col0 - Statistics: Num rows: 1 Data size: 94 Basic stats: COMPLETE Column stats: COMPLETE Reduce Output Operator - key expressions: _col0 (type: string) - sort order: + - Map-reduce partition columns: _col0 (type: string) + sort order: + Statistics: Num rows: 1000 Data size: 94000 Basic stats: COMPLETE Column stats: COMPLETE + Filter Operator + predicate: (ds = '2008-04-08') (type: boolean) + Select Operator + Statistics: Num rows: 1000 Data size: 18624 Basic stats: COMPLETE Column stats: COMPLETE + Group By Operator + keys: '2008-04-08' (type: string) + mode: hash + outputColumnNames: _col0 Statistics: Num rows: 1 Data size: 94 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: 1 Data size: 94 Basic stats: COMPLETE Column stats: COMPLETE Execution mode: vectorized, llap LLAP IO: no inputs Map Vectorization: @@ -2470,7 +2458,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 + Reducer 4 Execution mode: vectorized, llap Reduce Vectorization: enabled: true @@ -6456,10 +6444,10 @@ STAGE PLANS: Tez #### A masked pattern was here #### Edges: - Reducer 3 <- Map 2 (CUSTOM_SIMPLE_EDGE), Union 4 (CONTAINS) - Reducer 5 <- Map 1 (BROADCAST_EDGE), Union 4 (SIMPLE_EDGE) - Reducer 6 <- Reducer 5 (SIMPLE_EDGE) - Reducer 8 <- Map 7 (CUSTOM_SIMPLE_EDGE), Union 4 (CONTAINS) + Reducer 2 <- Map 1 (CUSTOM_SIMPLE_EDGE), Union 3 (CONTAINS) + Reducer 4 <- Map 1 (BROADCAST_EDGE), Union 3 (SIMPLE_EDGE) + Reducer 5 <- Reducer 4 (SIMPLE_EDGE) + Reducer 7 <- Map 6 (CUSTOM_SIMPLE_EDGE), Union 3 (CONTAINS) #### A masked pattern was here #### Vertices: Map 1 @@ -6468,30 +6456,18 @@ STAGE PLANS: alias: srcpart filterExpr: ds is not null (type: boolean) Statistics: Num rows: 2000 Data size: 389248 Basic stats: COMPLETE Column stats: COMPLETE - Select Operator - expressions: ds (type: string) - outputColumnNames: _col0 + Filter Operator + predicate: ds is not null (type: boolean) Statistics: Num rows: 2000 Data size: 368000 Basic stats: COMPLETE Column stats: COMPLETE - Reduce Output Operator - key expressions: _col0 (type: string) - sort order: + - Map-reduce partition columns: _col0 (type: string) + Select Operator + expressions: ds (type: string) + outputColumnNames: _col0 Statistics: Num rows: 2000 Data size: 368000 Basic stats: COMPLETE Column stats: COMPLETE - Execution mode: vectorized, llap - LLAP IO: no inputs - Map Vectorization: - enabled: true - enabledConditionsMet: hive.vectorized.use.vector.serde.deserialize IS true - groupByVectorOutput: true - inputFileFormats: org.apache.hadoop.mapred.TextInputFormat - allNative: true - usesVectorUDFAdaptor: false - vectorized: true - Map 2 - Map Operator Tree: - TableScan - alias: srcpart - Statistics: Num rows: 2000 Data size: 389248 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: 2000 Data size: 368000 Basic stats: COMPLETE Column stats: COMPLETE Select Operator expressions: ds (type: string) outputColumnNames: ds @@ -6515,7 +6491,7 @@ STAGE PLANS: allNative: false usesVectorUDFAdaptor: false vectorized: true - Map 7 + Map 6 Map Operator Tree: TableScan alias: srcpart @@ -6543,7 +6519,7 @@ STAGE PLANS: allNative: false usesVectorUDFAdaptor: false vectorized: true - Reducer 3 + Reducer 2 Execution mode: vectorized, llap Reduce Vectorization: enabled: true @@ -6571,7 +6547,7 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 1 Data size: 184 Basic stats: COMPLETE Column stats: COMPLETE - Reducer 5 + Reducer 4 Execution mode: vectorized, llap Reduce Vectorization: enabled: true @@ -6606,7 +6582,7 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 1 Data size: 184 Basic stats: COMPLETE Column stats: COMPLETE - Reducer 6 + Reducer 5 Execution mode: vectorized, llap Reduce Vectorization: enabled: true @@ -6628,7 +6604,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 8 + Reducer 7 Execution mode: vectorized, llap Reduce Vectorization: enabled: true @@ -6656,8 +6632,8 @@ STAGE PLANS: sort order: + Map-reduce partition columns: _col0 (type: string) Statistics: Num rows: 1 Data size: 184 Basic stats: COMPLETE Column stats: COMPLETE - Union 4 - Vertex: Union 4 + Union 3 + Vertex: Union 3 Stage: Stage-0 Fetch Operator diff --git ql/src/test/results/clientpositive/perf/query14.q.out ql/src/test/results/clientpositive/perf/query14.q.out index d6675bc..58889c7 100644 --- ql/src/test/results/clientpositive/perf/query14.q.out +++ ql/src/test/results/clientpositive/perf/query14.q.out @@ -1,5 +1,5 @@ -Warning: Shuffle Join MERGEJOIN[908][tables = [$hdt$_1, $hdt$_2, $hdt$_0]] in Stage 'Reducer 112' is a cross product -Warning: Shuffle Join MERGEJOIN[907][tables = [$hdt$_1, $hdt$_2, $hdt$_0]] in Stage 'Reducer 60' is a cross product +Warning: Shuffle Join MERGEJOIN[908][tables = [$hdt$_1, $hdt$_2, $hdt$_0]] in Stage 'Reducer 16' is a cross product +Warning: Shuffle Join MERGEJOIN[907][tables = [$hdt$_1, $hdt$_2, $hdt$_0]] in Stage 'Reducer 12' is a cross product Warning: Shuffle Join MERGEJOIN[906][tables = [$hdt$_1, $hdt$_2, $hdt$_0]] in Stage 'Reducer 5' is a cross product PREHOOK: query: explain with cross_items as @@ -210,80 +210,80 @@ POSTHOOK: type: QUERY Plan optimized by CBO. Vertex dependency in root stage -Reducer 103 <- Map 102 (SIMPLE_EDGE), Map 106 (SIMPLE_EDGE) -Reducer 104 <- Map 107 (SIMPLE_EDGE), Reducer 103 (SIMPLE_EDGE) -Reducer 105 <- Reducer 104 (SIMPLE_EDGE), Union 92 (CONTAINS) -Reducer 109 <- Map 108 (SIMPLE_EDGE), Map 113 (SIMPLE_EDGE), Union 110 (CONTAINS) -Reducer 11 <- Map 10 (SIMPLE_EDGE), Map 12 (SIMPLE_EDGE), Union 3 (CONTAINS) -Reducer 111 <- Union 110 (CUSTOM_SIMPLE_EDGE) -Reducer 112 <- Reducer 111 (CUSTOM_SIMPLE_EDGE), Reducer 123 (CUSTOM_SIMPLE_EDGE), Reducer 134 (CUSTOM_SIMPLE_EDGE), Union 6 (CONTAINS) -Reducer 115 <- Map 114 (SIMPLE_EDGE), Map 116 (SIMPLE_EDGE), Union 110 (CONTAINS) -Reducer 118 <- Map 117 (SIMPLE_EDGE), Map 119 (SIMPLE_EDGE), Union 110 (CONTAINS) -Reducer 121 <- Map 120 (SIMPLE_EDGE), Map 124 (SIMPLE_EDGE), Union 122 (CONTAINS) -Reducer 123 <- Union 122 (CUSTOM_SIMPLE_EDGE) -Reducer 126 <- Map 125 (SIMPLE_EDGE), Map 127 (SIMPLE_EDGE), Union 122 (CONTAINS) -Reducer 129 <- Map 128 (SIMPLE_EDGE), Map 130 (SIMPLE_EDGE), Union 122 (CONTAINS) -Reducer 132 <- Map 131 (SIMPLE_EDGE), Map 135 (SIMPLE_EDGE) -Reducer 133 <- Map 136 (SIMPLE_EDGE), Reducer 132 (SIMPLE_EDGE), Reducer 139 (SIMPLE_EDGE) -Reducer 134 <- Reducer 133 (SIMPLE_EDGE) -Reducer 138 <- Map 137 (SIMPLE_EDGE), Reducer 145 (SIMPLE_EDGE) -Reducer 139 <- Reducer 138 (SIMPLE_EDGE) -Reducer 14 <- Map 13 (SIMPLE_EDGE), Map 15 (SIMPLE_EDGE), Union 3 (CONTAINS) -Reducer 141 <- Map 140 (SIMPLE_EDGE), Map 146 (SIMPLE_EDGE) -Reducer 142 <- Map 147 (SIMPLE_EDGE), Reducer 141 (SIMPLE_EDGE) -Reducer 143 <- Reducer 142 (SIMPLE_EDGE), Union 144 (CONTAINS) -Reducer 145 <- Union 144 (SIMPLE_EDGE) -Reducer 149 <- Map 148 (SIMPLE_EDGE), Map 152 (SIMPLE_EDGE) -Reducer 150 <- Map 153 (SIMPLE_EDGE), Reducer 149 (SIMPLE_EDGE) -Reducer 151 <- Reducer 150 (SIMPLE_EDGE), Union 144 (CONTAINS) -Reducer 155 <- Map 154 (SIMPLE_EDGE), Map 158 (SIMPLE_EDGE) -Reducer 156 <- Map 159 (SIMPLE_EDGE), Reducer 155 (SIMPLE_EDGE) -Reducer 157 <- Reducer 156 (SIMPLE_EDGE), Union 144 (CONTAINS) -Reducer 17 <- Map 16 (SIMPLE_EDGE), Map 20 (SIMPLE_EDGE), Union 18 (CONTAINS) -Reducer 19 <- Union 18 (CUSTOM_SIMPLE_EDGE) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 9 (SIMPLE_EDGE), Union 3 (CONTAINS) -Reducer 22 <- Map 21 (SIMPLE_EDGE), Map 23 (SIMPLE_EDGE), Union 18 (CONTAINS) -Reducer 25 <- Map 24 (SIMPLE_EDGE), Map 26 (SIMPLE_EDGE), Union 18 (CONTAINS) -Reducer 28 <- Map 27 (SIMPLE_EDGE), Map 31 (SIMPLE_EDGE) -Reducer 29 <- Map 32 (SIMPLE_EDGE), Reducer 28 (SIMPLE_EDGE), Reducer 35 (SIMPLE_EDGE) -Reducer 30 <- Reducer 29 (SIMPLE_EDGE) -Reducer 34 <- Map 33 (SIMPLE_EDGE), Reducer 41 (SIMPLE_EDGE) -Reducer 35 <- Reducer 34 (SIMPLE_EDGE) -Reducer 37 <- Map 36 (SIMPLE_EDGE), Map 42 (SIMPLE_EDGE) -Reducer 38 <- Map 43 (SIMPLE_EDGE), Reducer 37 (SIMPLE_EDGE) -Reducer 39 <- Reducer 38 (SIMPLE_EDGE), Union 40 (CONTAINS) +Reducer 11 <- Union 10 (CUSTOM_SIMPLE_EDGE) +Reducer 12 <- Reducer 11 (CUSTOM_SIMPLE_EDGE), Reducer 38 (CUSTOM_SIMPLE_EDGE), Reducer 47 (CUSTOM_SIMPLE_EDGE), Union 6 (CONTAINS) +Reducer 13 <- Map 1 (SIMPLE_EDGE), Map 17 (SIMPLE_EDGE), Union 14 (CONTAINS) +Reducer 15 <- Union 14 (CUSTOM_SIMPLE_EDGE) +Reducer 16 <- Reducer 15 (CUSTOM_SIMPLE_EDGE), Reducer 56 (CUSTOM_SIMPLE_EDGE), Reducer 65 (CUSTOM_SIMPLE_EDGE), Union 6 (CONTAINS) +Reducer 18 <- Map 17 (SIMPLE_EDGE), Map 88 (SIMPLE_EDGE), Union 19 (CONTAINS) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 17 (SIMPLE_EDGE), Union 3 (CONTAINS) +Reducer 20 <- Union 19 (CUSTOM_SIMPLE_EDGE) +Reducer 21 <- Map 17 (SIMPLE_EDGE), Map 97 (SIMPLE_EDGE) +Reducer 22 <- Map 96 (SIMPLE_EDGE), Reducer 21 (SIMPLE_EDGE) +Reducer 23 <- Reducer 22 (SIMPLE_EDGE), Union 24 (CONTAINS) +Reducer 25 <- Union 24 (SIMPLE_EDGE) +Reducer 26 <- Map 96 (SIMPLE_EDGE), Reducer 25 (SIMPLE_EDGE) +Reducer 27 <- Reducer 26 (SIMPLE_EDGE) +Reducer 28 <- Map 96 (SIMPLE_EDGE), Reducer 27 (SIMPLE_EDGE), Reducer 92 (SIMPLE_EDGE) +Reducer 29 <- Reducer 28 (SIMPLE_EDGE) +Reducer 30 <- Map 17 (SIMPLE_EDGE), Map 98 (SIMPLE_EDGE) +Reducer 31 <- Map 96 (SIMPLE_EDGE), Reducer 30 (SIMPLE_EDGE) +Reducer 32 <- Reducer 31 (SIMPLE_EDGE), Union 24 (CONTAINS) +Reducer 33 <- Map 17 (SIMPLE_EDGE), Map 99 (SIMPLE_EDGE) +Reducer 34 <- Map 96 (SIMPLE_EDGE), Reducer 33 (SIMPLE_EDGE) +Reducer 35 <- Reducer 34 (SIMPLE_EDGE), Union 24 (CONTAINS) +Reducer 36 <- Map 17 (SIMPLE_EDGE), Map 88 (SIMPLE_EDGE), Union 37 (CONTAINS) +Reducer 38 <- Union 37 (CUSTOM_SIMPLE_EDGE) +Reducer 39 <- Map 17 (SIMPLE_EDGE), Map 97 (SIMPLE_EDGE) Reducer 4 <- Union 3 (CUSTOM_SIMPLE_EDGE) -Reducer 41 <- Union 40 (SIMPLE_EDGE) -Reducer 45 <- Map 44 (SIMPLE_EDGE), Map 48 (SIMPLE_EDGE) -Reducer 46 <- Map 49 (SIMPLE_EDGE), Reducer 45 (SIMPLE_EDGE) -Reducer 47 <- Reducer 46 (SIMPLE_EDGE), Union 40 (CONTAINS) -Reducer 5 <- Reducer 19 (CUSTOM_SIMPLE_EDGE), Reducer 30 (CUSTOM_SIMPLE_EDGE), Reducer 4 (CUSTOM_SIMPLE_EDGE), Union 6 (CONTAINS) -Reducer 51 <- Map 50 (SIMPLE_EDGE), Map 54 (SIMPLE_EDGE) -Reducer 52 <- Map 55 (SIMPLE_EDGE), Reducer 51 (SIMPLE_EDGE) -Reducer 53 <- Reducer 52 (SIMPLE_EDGE), Union 40 (CONTAINS) -Reducer 57 <- Map 56 (SIMPLE_EDGE), Map 61 (SIMPLE_EDGE), Union 58 (CONTAINS) -Reducer 59 <- Union 58 (CUSTOM_SIMPLE_EDGE) -Reducer 60 <- Reducer 59 (CUSTOM_SIMPLE_EDGE), Reducer 71 (CUSTOM_SIMPLE_EDGE), Reducer 82 (CUSTOM_SIMPLE_EDGE), Union 6 (CONTAINS) -Reducer 63 <- Map 62 (SIMPLE_EDGE), Map 64 (SIMPLE_EDGE), Union 58 (CONTAINS) -Reducer 66 <- Map 65 (SIMPLE_EDGE), Map 67 (SIMPLE_EDGE), Union 58 (CONTAINS) -Reducer 69 <- Map 68 (SIMPLE_EDGE), Map 72 (SIMPLE_EDGE), Union 70 (CONTAINS) +Reducer 40 <- Map 96 (SIMPLE_EDGE), Reducer 39 (SIMPLE_EDGE) +Reducer 41 <- Reducer 40 (SIMPLE_EDGE), Union 42 (CONTAINS) +Reducer 43 <- Union 42 (SIMPLE_EDGE) +Reducer 44 <- Map 96 (SIMPLE_EDGE), Reducer 43 (SIMPLE_EDGE) +Reducer 45 <- Reducer 44 (SIMPLE_EDGE) +Reducer 46 <- Map 96 (SIMPLE_EDGE), Reducer 45 (SIMPLE_EDGE), Reducer 94 (SIMPLE_EDGE) +Reducer 47 <- Reducer 46 (SIMPLE_EDGE) +Reducer 48 <- Map 17 (SIMPLE_EDGE), Map 98 (SIMPLE_EDGE) +Reducer 49 <- Map 96 (SIMPLE_EDGE), Reducer 48 (SIMPLE_EDGE) +Reducer 5 <- Reducer 20 (CUSTOM_SIMPLE_EDGE), Reducer 29 (CUSTOM_SIMPLE_EDGE), Reducer 4 (CUSTOM_SIMPLE_EDGE), Union 6 (CONTAINS) +Reducer 50 <- Reducer 49 (SIMPLE_EDGE), Union 42 (CONTAINS) +Reducer 51 <- Map 17 (SIMPLE_EDGE), Map 99 (SIMPLE_EDGE) +Reducer 52 <- Map 96 (SIMPLE_EDGE), Reducer 51 (SIMPLE_EDGE) +Reducer 53 <- Reducer 52 (SIMPLE_EDGE), Union 42 (CONTAINS) +Reducer 54 <- Map 17 (SIMPLE_EDGE), Map 88 (SIMPLE_EDGE), Union 55 (CONTAINS) +Reducer 56 <- Union 55 (CUSTOM_SIMPLE_EDGE) +Reducer 57 <- Map 17 (SIMPLE_EDGE), Map 97 (SIMPLE_EDGE) +Reducer 58 <- Map 96 (SIMPLE_EDGE), Reducer 57 (SIMPLE_EDGE) +Reducer 59 <- Reducer 58 (SIMPLE_EDGE), Union 60 (CONTAINS) +Reducer 61 <- Union 60 (SIMPLE_EDGE) +Reducer 62 <- Map 96 (SIMPLE_EDGE), Reducer 61 (SIMPLE_EDGE) +Reducer 63 <- Reducer 62 (SIMPLE_EDGE) +Reducer 64 <- Map 96 (SIMPLE_EDGE), Reducer 63 (SIMPLE_EDGE), Reducer 95 (SIMPLE_EDGE) +Reducer 65 <- Reducer 64 (SIMPLE_EDGE) +Reducer 66 <- Map 17 (SIMPLE_EDGE), Map 98 (SIMPLE_EDGE) +Reducer 67 <- Map 96 (SIMPLE_EDGE), Reducer 66 (SIMPLE_EDGE) +Reducer 68 <- Reducer 67 (SIMPLE_EDGE), Union 60 (CONTAINS) +Reducer 69 <- Map 17 (SIMPLE_EDGE), Map 99 (SIMPLE_EDGE) Reducer 7 <- Union 6 (SIMPLE_EDGE) -Reducer 71 <- Union 70 (CUSTOM_SIMPLE_EDGE) -Reducer 74 <- Map 73 (SIMPLE_EDGE), Map 75 (SIMPLE_EDGE), Union 70 (CONTAINS) -Reducer 77 <- Map 76 (SIMPLE_EDGE), Map 78 (SIMPLE_EDGE), Union 70 (CONTAINS) +Reducer 70 <- Map 96 (SIMPLE_EDGE), Reducer 69 (SIMPLE_EDGE) +Reducer 71 <- Reducer 70 (SIMPLE_EDGE), Union 60 (CONTAINS) +Reducer 73 <- Map 72 (SIMPLE_EDGE), Map 76 (SIMPLE_EDGE), Union 3 (CONTAINS) +Reducer 74 <- Map 72 (SIMPLE_EDGE), Map 76 (SIMPLE_EDGE), Union 10 (CONTAINS) +Reducer 75 <- Map 72 (SIMPLE_EDGE), Map 76 (SIMPLE_EDGE), Union 14 (CONTAINS) +Reducer 77 <- Map 76 (SIMPLE_EDGE), Map 89 (SIMPLE_EDGE), Union 19 (CONTAINS) +Reducer 78 <- Map 76 (SIMPLE_EDGE), Map 89 (SIMPLE_EDGE), Union 37 (CONTAINS) +Reducer 79 <- Map 76 (SIMPLE_EDGE), Map 89 (SIMPLE_EDGE), Union 55 (CONTAINS) Reducer 8 <- Reducer 7 (SIMPLE_EDGE) -Reducer 80 <- Map 79 (SIMPLE_EDGE), Map 83 (SIMPLE_EDGE) -Reducer 81 <- Map 84 (SIMPLE_EDGE), Reducer 80 (SIMPLE_EDGE), Reducer 87 (SIMPLE_EDGE) -Reducer 82 <- Reducer 81 (SIMPLE_EDGE) -Reducer 86 <- Map 85 (SIMPLE_EDGE), Reducer 93 (SIMPLE_EDGE) -Reducer 87 <- Reducer 86 (SIMPLE_EDGE) -Reducer 89 <- Map 88 (SIMPLE_EDGE), Map 94 (SIMPLE_EDGE) -Reducer 90 <- Map 95 (SIMPLE_EDGE), Reducer 89 (SIMPLE_EDGE) -Reducer 91 <- Reducer 90 (SIMPLE_EDGE), Union 92 (CONTAINS) -Reducer 93 <- Union 92 (SIMPLE_EDGE) -Reducer 97 <- Map 100 (SIMPLE_EDGE), Map 96 (SIMPLE_EDGE) -Reducer 98 <- Map 101 (SIMPLE_EDGE), Reducer 97 (SIMPLE_EDGE) -Reducer 99 <- Reducer 98 (SIMPLE_EDGE), Union 92 (CONTAINS) +Reducer 81 <- Map 80 (SIMPLE_EDGE), Map 84 (SIMPLE_EDGE), Union 3 (CONTAINS) +Reducer 82 <- Map 80 (SIMPLE_EDGE), Map 84 (SIMPLE_EDGE), Union 10 (CONTAINS) +Reducer 83 <- Map 80 (SIMPLE_EDGE), Map 84 (SIMPLE_EDGE), Union 14 (CONTAINS) +Reducer 85 <- Map 84 (SIMPLE_EDGE), Map 90 (SIMPLE_EDGE), Union 19 (CONTAINS) +Reducer 86 <- Map 84 (SIMPLE_EDGE), Map 90 (SIMPLE_EDGE), Union 37 (CONTAINS) +Reducer 87 <- Map 84 (SIMPLE_EDGE), Map 90 (SIMPLE_EDGE), Union 55 (CONTAINS) +Reducer 9 <- Map 1 (SIMPLE_EDGE), Map 17 (SIMPLE_EDGE), Union 10 (CONTAINS) +Reducer 92 <- Map 91 (SIMPLE_EDGE), Map 93 (SIMPLE_EDGE) +Reducer 94 <- Map 100 (SIMPLE_EDGE), Map 93 (SIMPLE_EDGE) +Reducer 95 <- Map 101 (SIMPLE_EDGE), Map 93 (SIMPLE_EDGE) Stage-0 Fetch Operator @@ -302,1249 +302,1191 @@ Stage-0 Group By Operator [GBY_585] (rows=1016388080 width=405) 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 6 [SIMPLE_EDGE] - <-Reducer 112 [CONTAINS] + <-Reducer 12 [CONTAINS] Reduce Output Operator [RS_584] PartitionCols:_col0, _col1, _col2, _col3, _col4 Group By Operator [GBY_583] (rows=2032776160 width=405) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"],aggregations:["sum(_col4)","sum(_col5)"],keys:_col0, _col1, _col2, _col3, 0 - Select Operator [SEL_580] (rows=58081078 width=432) + Select Operator [SEL_385] (rows=116155905 width=432) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] - Filter Operator [FIL_579] (rows=58081078 width=432) + Filter Operator [FIL_384] (rows=116155905 width=432) predicate:(_col5 > _col1) - Merge Join Operator [MERGEJOIN_908] (rows=174243235 width=432) + Merge Join Operator [MERGEJOIN_907] (rows=348467716 width=432) Conds:(Inner),(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6"] - <-Reducer 111 [CUSTOM_SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_575] - Select Operator [SEL_432] (rows=1 width=8) - Filter Operator [FIL_431] (rows=1 width=8) + <-Reducer 11 [CUSTOM_SIMPLE_EDGE] + PARTITION_ONLY_SHUFFLE [RS_380] + Select Operator [SEL_237] (rows=1 width=8) + Filter Operator [FIL_236] (rows=1 width=8) predicate:(sq_count_check(_col0) <= 1) - Group By Operator [GBY_429] (rows=1 width=8) + Group By Operator [GBY_234] (rows=1 width=8) Output:["_col0"],aggregations:["count()"] - Select Operator [SEL_424] (rows=1 width=8) - Group By Operator [GBY_423] (rows=1 width=8) + Select Operator [SEL_229] (rows=1 width=8) + Group By Operator [GBY_228] (rows=1 width=8) Output:["_col0"],aggregations:["count(VALUE._col0)"] - <-Union 110 [CUSTOM_SIMPLE_EDGE] - <-Reducer 109 [CONTAINS] - Reduce Output Operator [RS_422] - Group By Operator [GBY_421] (rows=1 width=8) + <-Union 10 [CUSTOM_SIMPLE_EDGE] + <-Reducer 74 [CONTAINS] + Reduce Output Operator [RS_227] + Group By Operator [GBY_226] (rows=1 width=8) Output:["_col0"],aggregations:["count(_col0)"] - Select Operator [SEL_420] (rows=1108786976 width=108) + Select Operator [SEL_225] (rows=1108786976 width=108) Output:["_col0"] - Select Operator [SEL_397] (rows=633595212 width=88) + Select Operator [SEL_212] (rows=316788826 width=135) Output:["_col0"] - Merge Join Operator [MERGEJOIN_891] (rows=633595212 width=88) - Conds:RS_394._col0=RS_395._col0(Inner),Output:["_col1"] - <-Map 108 [SIMPLE_EDGE] - SHUFFLE [RS_394] - PartitionCols:_col0 - Select Operator [SEL_390] (rows=575995635 width=88) - Output:["_col0","_col1"] - Filter Operator [FIL_836] (rows=575995635 width=88) - predicate:ss_sold_date_sk is not null - TableScan [TS_388] (rows=575995635 width=88) - default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_quantity"] - <-Map 113 [SIMPLE_EDGE] - SHUFFLE [RS_395] + Merge Join Operator [MERGEJOIN_877] (rows=316788826 width=135) + Conds:RS_209._col0=RS_210._col0(Inner),Output:["_col1"] + <-Map 76 [SIMPLE_EDGE] + SHUFFLE [RS_210] PartitionCols:_col0 - Select Operator [SEL_393] (rows=8116 width=1119) + Select Operator [SEL_208] (rows=8116 width=1119) Output:["_col0"] - Filter Operator [FIL_837] (rows=8116 width=1119) - predicate:(d_year BETWEEN 1999 AND 2001 and d_date_sk is not null) - TableScan [TS_391] (rows=73049 width=1119) + Filter Operator [FIL_814] (rows=8116 width=1119) + predicate:(d_year BETWEEN 1998 AND 2000 and d_date_sk is not null) + TableScan [TS_13] (rows=73049 width=1119) default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] - <-Reducer 115 [CONTAINS] - Reduce Output Operator [RS_422] - Group By Operator [GBY_421] (rows=1 width=8) - Output:["_col0"],aggregations:["count(_col0)"] - Select Operator [SEL_420] (rows=1108786976 width=108) - Output:["_col0"] - Select Operator [SEL_407] (rows=316788826 width=135) - Output:["_col0"] - Merge Join Operator [MERGEJOIN_892] (rows=316788826 width=135) - Conds:RS_404._col0=RS_405._col0(Inner),Output:["_col1"] - <-Map 114 [SIMPLE_EDGE] - SHUFFLE [RS_404] + <-Map 72 [SIMPLE_EDGE] + SHUFFLE [RS_209] PartitionCols:_col0 - Select Operator [SEL_400] (rows=287989836 width=135) + Select Operator [SEL_205] (rows=287989836 width=135) Output:["_col0","_col1"] - Filter Operator [FIL_838] (rows=287989836 width=135) + Filter Operator [FIL_813] (rows=287989836 width=135) predicate:cs_sold_date_sk is not null - TableScan [TS_398] (rows=287989836 width=135) + TableScan [TS_10] (rows=287989836 width=135) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:NONE,Output:["cs_sold_date_sk","cs_quantity"] - <-Map 116 [SIMPLE_EDGE] - SHUFFLE [RS_405] + <-Reducer 82 [CONTAINS] + Reduce Output Operator [RS_227] + Group By Operator [GBY_226] (rows=1 width=8) + Output:["_col0"],aggregations:["count(_col0)"] + Select Operator [SEL_225] (rows=1108786976 width=108) + Output:["_col0"] + Select Operator [SEL_224] (rows=158402938 width=135) + Output:["_col0"] + Merge Join Operator [MERGEJOIN_878] (rows=158402938 width=135) + Conds:RS_221._col0=RS_222._col0(Inner),Output:["_col1"] + <-Map 84 [SIMPLE_EDGE] + SHUFFLE [RS_222] PartitionCols:_col0 - Select Operator [SEL_403] (rows=8116 width=1119) + Select Operator [SEL_220] (rows=8116 width=1119) Output:["_col0"] - Filter Operator [FIL_839] (rows=8116 width=1119) + Filter Operator [FIL_816] (rows=8116 width=1119) predicate:(d_year BETWEEN 1998 AND 2000 and d_date_sk is not null) - TableScan [TS_401] (rows=73049 width=1119) + TableScan [TS_25] (rows=73049 width=1119) default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] - <-Reducer 118 [CONTAINS] - Reduce Output Operator [RS_422] - Group By Operator [GBY_421] (rows=1 width=8) - Output:["_col0"],aggregations:["count(_col0)"] - Select Operator [SEL_420] (rows=1108786976 width=108) - Output:["_col0"] - Select Operator [SEL_419] (rows=158402938 width=135) - Output:["_col0"] - Merge Join Operator [MERGEJOIN_893] (rows=158402938 width=135) - Conds:RS_416._col0=RS_417._col0(Inner),Output:["_col1"] - <-Map 117 [SIMPLE_EDGE] - SHUFFLE [RS_416] + <-Map 80 [SIMPLE_EDGE] + SHUFFLE [RS_221] PartitionCols:_col0 - Select Operator [SEL_412] (rows=144002668 width=135) + Select Operator [SEL_217] (rows=144002668 width=135) Output:["_col0","_col1"] - Filter Operator [FIL_840] (rows=144002668 width=135) + Filter Operator [FIL_815] (rows=144002668 width=135) predicate:ws_sold_date_sk is not null - TableScan [TS_410] (rows=144002668 width=135) + TableScan [TS_22] (rows=144002668 width=135) default@web_sales,web_sales,Tbl:COMPLETE,Col:NONE,Output:["ws_sold_date_sk","ws_quantity"] - <-Map 119 [SIMPLE_EDGE] - SHUFFLE [RS_417] + <-Reducer 9 [CONTAINS] + Reduce Output Operator [RS_227] + Group By Operator [GBY_226] (rows=1 width=8) + Output:["_col0"],aggregations:["count(_col0)"] + Select Operator [SEL_225] (rows=1108786976 width=108) + Output:["_col0"] + Select Operator [SEL_202] (rows=633595212 width=88) + Output:["_col0"] + Merge Join Operator [MERGEJOIN_876] (rows=633595212 width=88) + Conds:RS_199._col0=RS_200._col0(Inner),Output:["_col1"] + <-Map 17 [SIMPLE_EDGE] + SHUFFLE [RS_200] PartitionCols:_col0 - Select Operator [SEL_415] (rows=8116 width=1119) + Select Operator [SEL_198] (rows=8116 width=1119) Output:["_col0"] - Filter Operator [FIL_841] (rows=8116 width=1119) - predicate:(d_year BETWEEN 1998 AND 2000 and d_date_sk is not null) - TableScan [TS_413] (rows=73049 width=1119) + Filter Operator [FIL_812] (rows=8116 width=1119) + predicate:(d_year BETWEEN 1999 AND 2001 and d_date_sk is not null) + TableScan [TS_3] (rows=73049 width=1119) default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] - <-Reducer 123 [CUSTOM_SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_576] - Group By Operator [GBY_469] (rows=1 width=288) + <-Map 1 [SIMPLE_EDGE] + SHUFFLE [RS_199] + PartitionCols:_col0 + Select Operator [SEL_195] (rows=575995635 width=88) + Output:["_col0","_col1"] + Filter Operator [FIL_811] (rows=575995635 width=88) + predicate:ss_sold_date_sk is not null + TableScan [TS_0] (rows=575995635 width=88) + default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_quantity"] + <-Reducer 38 [CUSTOM_SIMPLE_EDGE] + PARTITION_ONLY_SHUFFLE [RS_381] + Group By Operator [GBY_274] (rows=1 width=288) Output:["_col0"],aggregations:["avg(VALUE._col0)"] - <-Union 122 [CUSTOM_SIMPLE_EDGE] - <-Reducer 121 [CONTAINS] - Reduce Output Operator [RS_468] - Group By Operator [GBY_467] (rows=1 width=288) + <-Union 37 [CUSTOM_SIMPLE_EDGE] + <-Reducer 36 [CONTAINS] + Reduce Output Operator [RS_273] + Group By Operator [GBY_272] (rows=1 width=288) Output:["_col0"],aggregations:["avg(_col0)"] - Select Operator [SEL_465] (rows=1108786976 width=108) + Select Operator [SEL_270] (rows=1108786976 width=108) Output:["_col0"] - Select Operator [SEL_442] (rows=633595212 width=88) + Select Operator [SEL_247] (rows=633595212 width=88) Output:["_col0","_col1"] - Merge Join Operator [MERGEJOIN_894] (rows=633595212 width=88) - Conds:RS_439._col0=RS_440._col0(Inner),Output:["_col1","_col2"] - <-Map 120 [SIMPLE_EDGE] - SHUFFLE [RS_439] + Merge Join Operator [MERGEJOIN_879] (rows=633595212 width=88) + Conds:RS_244._col0=RS_245._col0(Inner),Output:["_col1","_col2"] + <-Map 17 [SIMPLE_EDGE] + SHUFFLE [RS_245] PartitionCols:_col0 - Select Operator [SEL_435] (rows=575995635 width=88) + Select Operator [SEL_243] (rows=8116 width=1119) + Output:["_col0"] + Filter Operator [FIL_818] (rows=8116 width=1119) + predicate:(d_year BETWEEN 1999 AND 2001 and d_date_sk is not null) + Please refer to the previous TableScan [TS_3] + <-Map 88 [SIMPLE_EDGE] + SHUFFLE [RS_244] + PartitionCols:_col0 + Select Operator [SEL_240] (rows=575995635 width=88) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_842] (rows=575995635 width=88) + Filter Operator [FIL_817] (rows=575995635 width=88) predicate:ss_sold_date_sk is not null - TableScan [TS_433] (rows=575995635 width=88) + TableScan [TS_45] (rows=575995635 width=88) default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_quantity","ss_list_price"] - <-Map 124 [SIMPLE_EDGE] - SHUFFLE [RS_440] - PartitionCols:_col0 - Select Operator [SEL_438] (rows=8116 width=1119) - Output:["_col0"] - Filter Operator [FIL_843] (rows=8116 width=1119) - predicate:(d_year BETWEEN 1999 AND 2001 and d_date_sk is not null) - TableScan [TS_436] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] - <-Reducer 126 [CONTAINS] - Reduce Output Operator [RS_468] - Group By Operator [GBY_467] (rows=1 width=288) + <-Reducer 78 [CONTAINS] + Reduce Output Operator [RS_273] + Group By Operator [GBY_272] (rows=1 width=288) Output:["_col0"],aggregations:["avg(_col0)"] - Select Operator [SEL_465] (rows=1108786976 width=108) + Select Operator [SEL_270] (rows=1108786976 width=108) Output:["_col0"] - Select Operator [SEL_452] (rows=316788826 width=135) + Select Operator [SEL_257] (rows=316788826 width=135) Output:["_col0","_col1"] - Merge Join Operator [MERGEJOIN_895] (rows=316788826 width=135) - Conds:RS_449._col0=RS_450._col0(Inner),Output:["_col1","_col2"] - <-Map 125 [SIMPLE_EDGE] - SHUFFLE [RS_449] + Merge Join Operator [MERGEJOIN_880] (rows=316788826 width=135) + Conds:RS_254._col0=RS_255._col0(Inner),Output:["_col1","_col2"] + <-Map 76 [SIMPLE_EDGE] + SHUFFLE [RS_255] PartitionCols:_col0 - Select Operator [SEL_445] (rows=287989836 width=135) + Select Operator [SEL_253] (rows=8116 width=1119) + Output:["_col0"] + Filter Operator [FIL_820] (rows=8116 width=1119) + predicate:(d_year BETWEEN 1998 AND 2000 and d_date_sk is not null) + Please refer to the previous TableScan [TS_13] + <-Map 89 [SIMPLE_EDGE] + SHUFFLE [RS_254] + PartitionCols:_col0 + Select Operator [SEL_250] (rows=287989836 width=135) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_844] (rows=287989836 width=135) + Filter Operator [FIL_819] (rows=287989836 width=135) predicate:cs_sold_date_sk is not null - TableScan [TS_443] (rows=287989836 width=135) + TableScan [TS_55] (rows=287989836 width=135) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:NONE,Output:["cs_sold_date_sk","cs_quantity","cs_list_price"] - <-Map 127 [SIMPLE_EDGE] - SHUFFLE [RS_450] - PartitionCols:_col0 - Select Operator [SEL_448] (rows=8116 width=1119) - Output:["_col0"] - Filter Operator [FIL_845] (rows=8116 width=1119) - predicate:(d_year BETWEEN 1998 AND 2000 and d_date_sk is not null) - TableScan [TS_446] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] - <-Reducer 129 [CONTAINS] - Reduce Output Operator [RS_468] - Group By Operator [GBY_467] (rows=1 width=288) + <-Reducer 86 [CONTAINS] + Reduce Output Operator [RS_273] + Group By Operator [GBY_272] (rows=1 width=288) Output:["_col0"],aggregations:["avg(_col0)"] - Select Operator [SEL_465] (rows=1108786976 width=108) + Select Operator [SEL_270] (rows=1108786976 width=108) Output:["_col0"] - Select Operator [SEL_464] (rows=158402938 width=135) + Select Operator [SEL_269] (rows=158402938 width=135) Output:["_col0","_col1"] - Merge Join Operator [MERGEJOIN_896] (rows=158402938 width=135) - Conds:RS_461._col0=RS_462._col0(Inner),Output:["_col1","_col2"] - <-Map 128 [SIMPLE_EDGE] - SHUFFLE [RS_461] + Merge Join Operator [MERGEJOIN_881] (rows=158402938 width=135) + Conds:RS_266._col0=RS_267._col0(Inner),Output:["_col1","_col2"] + <-Map 84 [SIMPLE_EDGE] + SHUFFLE [RS_267] PartitionCols:_col0 - Select Operator [SEL_457] (rows=144002668 width=135) + Select Operator [SEL_265] (rows=8116 width=1119) + Output:["_col0"] + Filter Operator [FIL_822] (rows=8116 width=1119) + predicate:(d_year BETWEEN 1998 AND 2000 and d_date_sk is not null) + Please refer to the previous TableScan [TS_25] + <-Map 90 [SIMPLE_EDGE] + SHUFFLE [RS_266] + PartitionCols:_col0 + Select Operator [SEL_262] (rows=144002668 width=135) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_846] (rows=144002668 width=135) + Filter Operator [FIL_821] (rows=144002668 width=135) predicate:ws_sold_date_sk is not null - TableScan [TS_455] (rows=144002668 width=135) + TableScan [TS_67] (rows=144002668 width=135) default@web_sales,web_sales,Tbl:COMPLETE,Col:NONE,Output:["ws_sold_date_sk","ws_quantity","ws_list_price"] - <-Map 130 [SIMPLE_EDGE] - SHUFFLE [RS_462] - PartitionCols:_col0 - Select Operator [SEL_460] (rows=8116 width=1119) - Output:["_col0"] - Filter Operator [FIL_847] (rows=8116 width=1119) - predicate:(d_year BETWEEN 1998 AND 2000 and d_date_sk is not null) - TableScan [TS_458] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] - <-Reducer 134 [CUSTOM_SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_577] - Group By Operator [GBY_573] (rows=174243235 width=135) + <-Reducer 47 [CUSTOM_SIMPLE_EDGE] + PARTITION_ONLY_SHUFFLE [RS_382] + Group By Operator [GBY_378] (rows=348467716 width=135) Output:["_col0","_col1","_col2","_col3","_col4"],aggregations:["sum(VALUE._col0)","count(VALUE._col1)"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Reducer 133 [SIMPLE_EDGE] - SHUFFLE [RS_572] + <-Reducer 46 [SIMPLE_EDGE] + SHUFFLE [RS_377] PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_571] (rows=348486471 width=135) + Group By Operator [GBY_376] (rows=696935432 width=135) Output:["_col0","_col1","_col2","_col3","_col4"],aggregations:["sum(_col3)","count()"],keys:_col0, _col1, _col2 - Select Operator [SEL_569] (rows=348486471 width=135) + Select Operator [SEL_374] (rows=696935432 width=135) Output:["_col0","_col1","_col2","_col3"] - Merge Join Operator [MERGEJOIN_905] (rows=348486471 width=135) - Conds:RS_565._col1=RS_566._col0(Inner),RS_565._col1=RS_567._col0(Inner),Output:["_col2","_col3","_col8","_col9","_col10"] - <-Map 136 [SIMPLE_EDGE] - SHUFFLE [RS_566] + Merge Join Operator [MERGEJOIN_890] (rows=696935432 width=135) + Conds:RS_370._col1=RS_371._col0(Inner),RS_370._col1=RS_372._col0(Inner),Output:["_col2","_col3","_col8","_col9","_col10"] + <-Map 96 [SIMPLE_EDGE] + SHUFFLE [RS_371] PartitionCols:_col0 - Select Operator [SEL_479] (rows=462000 width=1436) + Select Operator [SEL_284] (rows=462000 width=1436) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_850] (rows=462000 width=1436) + Filter Operator [FIL_825] (rows=462000 width=1436) predicate:i_item_sk is not null - TableScan [TS_477] (rows=462000 width=1436) + TableScan [TS_89] (rows=462000 width=1436) default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_brand_id","i_class_id","i_category_id"] - <-Reducer 132 [SIMPLE_EDGE] - SHUFFLE [RS_565] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_897] (rows=158402938 width=135) - Conds:RS_562._col0=RS_563._col0(Inner),Output:["_col1","_col2","_col3"] - <-Map 131 [SIMPLE_EDGE] - SHUFFLE [RS_562] + <-Reducer 45 [SIMPLE_EDGE] + SHUFFLE [RS_372] + PartitionCols:_col0 + Group By Operator [GBY_365] (rows=254100 width=1436) + Output:["_col0"],keys:KEY._col0 + <-Reducer 44 [SIMPLE_EDGE] + SHUFFLE [RS_364] PartitionCols:_col0 - Select Operator [SEL_473] (rows=144002668 width=135) - Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_848] (rows=144002668 width=135) - predicate:(ws_item_sk is not null and ws_sold_date_sk is not null) - TableScan [TS_471] (rows=144002668 width=135) - default@web_sales,web_sales,Tbl:COMPLETE,Col:NONE,Output:["ws_sold_date_sk","ws_item_sk","ws_quantity","ws_list_price"] - <-Map 135 [SIMPLE_EDGE] - SHUFFLE [RS_563] - PartitionCols:_col0 - Select Operator [SEL_476] (rows=18262 width=1119) - Output:["_col0"] - Filter Operator [FIL_849] (rows=18262 width=1119) - predicate:((d_year = 2000) and (d_moy = 11) and d_date_sk is not null) - TableScan [TS_474] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_moy"] - <-Reducer 139 [SIMPLE_EDGE] - SHUFFLE [RS_567] - PartitionCols:_col0 - Group By Operator [GBY_560] (rows=254100 width=1436) - Output:["_col0"],keys:KEY._col0 - <-Reducer 138 [SIMPLE_EDGE] - SHUFFLE [RS_559] - PartitionCols:_col0 - Group By Operator [GBY_558] (rows=508200 width=1436) + Group By Operator [GBY_363] (rows=508200 width=1436) Output:["_col0"],keys:_col0 - Merge Join Operator [MERGEJOIN_904] (rows=508200 width=1436) - Conds:RS_554._col1, _col2, _col3=RS_555._col0, _col1, _col2(Inner),Output:["_col0"] - <-Map 137 [SIMPLE_EDGE] - SHUFFLE [RS_554] + Merge Join Operator [MERGEJOIN_889] (rows=508200 width=1436) + Conds:RS_359._col1, _col2, _col3=RS_360._col0, _col1, _col2(Inner),Output:["_col0"] + <-Map 96 [SIMPLE_EDGE] + SHUFFLE [RS_359] PartitionCols:_col1, _col2, _col3 - Select Operator [SEL_482] (rows=462000 width=1436) + Select Operator [SEL_287] (rows=462000 width=1436) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_851] (rows=462000 width=1436) + Filter Operator [FIL_826] (rows=462000 width=1436) predicate:(i_brand_id is not null and i_class_id is not null and i_category_id is not null and i_item_sk is not null) - TableScan [TS_480] (rows=462000 width=1436) - default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_brand_id","i_class_id","i_category_id"] - <-Reducer 145 [SIMPLE_EDGE] - SHUFFLE [RS_555] + Please refer to the previous TableScan [TS_89] + <-Reducer 43 [SIMPLE_EDGE] + SHUFFLE [RS_360] PartitionCols:_col0, _col1, _col2 - Select Operator [SEL_553] (rows=1 width=108) + Select Operator [SEL_358] (rows=1 width=108) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_552] (rows=1 width=108) + Filter Operator [FIL_357] (rows=1 width=108) predicate:(_col3 = 3) - Group By Operator [GBY_551] (rows=304916424 width=108) + Group By Operator [GBY_356] (rows=304916424 width=108) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Union 144 [SIMPLE_EDGE] - <-Reducer 143 [CONTAINS] - Reduce Output Operator [RS_550] + <-Union 42 [SIMPLE_EDGE] + <-Reducer 41 [CONTAINS] + Reduce Output Operator [RS_355] PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_549] (rows=609832849 width=108) + Group By Operator [GBY_354] (rows=609832849 width=108) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(_col3)"],keys:_col0, _col1, _col2 - Group By Operator [GBY_502] (rows=348477374 width=88) + Group By Operator [GBY_307] (rows=348477374 width=88) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Reducer 142 [SIMPLE_EDGE] - SHUFFLE [RS_501] + <-Reducer 40 [SIMPLE_EDGE] + SHUFFLE [RS_306] PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_500] (rows=696954748 width=88) + Group By Operator [GBY_305] (rows=696954748 width=88) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(1)"],keys:_col0, _col1, _col2 - Select Operator [SEL_498] (rows=696954748 width=88) + Select Operator [SEL_303] (rows=696954748 width=88) Output:["_col0","_col1","_col2"] - Merge Join Operator [MERGEJOIN_899] (rows=696954748 width=88) - Conds:RS_495._col1=RS_496._col0(Inner),Output:["_col5","_col6","_col7"] - <-Map 147 [SIMPLE_EDGE] - SHUFFLE [RS_496] + Merge Join Operator [MERGEJOIN_884] (rows=696954748 width=88) + Conds:RS_300._col1=RS_301._col0(Inner),Output:["_col5","_col6","_col7"] + <-Map 96 [SIMPLE_EDGE] + SHUFFLE [RS_301] PartitionCols:_col0 - Select Operator [SEL_491] (rows=462000 width=1436) + Select Operator [SEL_296] (rows=462000 width=1436) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_854] (rows=462000 width=1436) + Filter Operator [FIL_829] (rows=462000 width=1436) predicate:(i_item_sk is not null and i_brand_id is not null and i_class_id is not null and i_category_id is not null) - TableScan [TS_489] (rows=462000 width=1436) - default@item,iss,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_brand_id","i_class_id","i_category_id"] - <-Reducer 141 [SIMPLE_EDGE] - SHUFFLE [RS_495] + Please refer to the previous TableScan [TS_89] + <-Reducer 39 [SIMPLE_EDGE] + SHUFFLE [RS_300] PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_898] (rows=633595212 width=88) - Conds:RS_492._col0=RS_493._col0(Inner),Output:["_col1"] - <-Map 140 [SIMPLE_EDGE] - SHUFFLE [RS_492] + Merge Join Operator [MERGEJOIN_883] (rows=633595212 width=88) + Conds:RS_297._col0=RS_298._col0(Inner),Output:["_col1"] + <-Map 17 [SIMPLE_EDGE] + SHUFFLE [RS_298] PartitionCols:_col0 - Select Operator [SEL_485] (rows=575995635 width=88) + Select Operator [SEL_293] (rows=8116 width=1119) + Output:["_col0"] + Filter Operator [FIL_828] (rows=8116 width=1119) + predicate:(d_year BETWEEN 1999 AND 2001 and d_date_sk is not null) + Please refer to the previous TableScan [TS_3] + <-Map 97 [SIMPLE_EDGE] + SHUFFLE [RS_297] + PartitionCols:_col0 + Select Operator [SEL_290] (rows=575995635 width=88) Output:["_col0","_col1"] - Filter Operator [FIL_852] (rows=575995635 width=88) + Filter Operator [FIL_827] (rows=575995635 width=88) predicate:(ss_item_sk is not null and ss_sold_date_sk is not null) - TableScan [TS_483] (rows=575995635 width=88) + TableScan [TS_95] (rows=575995635 width=88) default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_item_sk"] - <-Map 146 [SIMPLE_EDGE] - SHUFFLE [RS_493] - PartitionCols:_col0 - Select Operator [SEL_488] (rows=8116 width=1119) - Output:["_col0"] - Filter Operator [FIL_853] (rows=8116 width=1119) - predicate:(d_year BETWEEN 1999 AND 2001 and d_date_sk is not null) - TableScan [TS_486] (rows=73049 width=1119) - default@date_dim,d1,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] - <-Reducer 151 [CONTAINS] - Reduce Output Operator [RS_550] + <-Reducer 50 [CONTAINS] + Reduce Output Operator [RS_355] PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_549] (rows=609832849 width=108) + Group By Operator [GBY_354] (rows=609832849 width=108) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(_col3)"],keys:_col0, _col1, _col2 - Group By Operator [GBY_523] (rows=174233858 width=135) + Group By Operator [GBY_328] (rows=174233858 width=135) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Reducer 150 [SIMPLE_EDGE] - SHUFFLE [RS_522] + <-Reducer 49 [SIMPLE_EDGE] + SHUFFLE [RS_327] PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_521] (rows=348467716 width=135) + Group By Operator [GBY_326] (rows=348467716 width=135) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(1)"],keys:_col0, _col1, _col2 - Select Operator [SEL_519] (rows=348467716 width=135) + Select Operator [SEL_324] (rows=348467716 width=135) Output:["_col0","_col1","_col2"] - Merge Join Operator [MERGEJOIN_901] (rows=348467716 width=135) - Conds:RS_516._col1=RS_517._col0(Inner),Output:["_col5","_col6","_col7"] - <-Map 153 [SIMPLE_EDGE] - SHUFFLE [RS_517] + Merge Join Operator [MERGEJOIN_886] (rows=348467716 width=135) + Conds:RS_321._col1=RS_322._col0(Inner),Output:["_col5","_col6","_col7"] + <-Map 96 [SIMPLE_EDGE] + SHUFFLE [RS_322] PartitionCols:_col0 - Select Operator [SEL_512] (rows=462000 width=1436) + Select Operator [SEL_317] (rows=462000 width=1436) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_857] (rows=462000 width=1436) + Filter Operator [FIL_832] (rows=462000 width=1436) predicate:(i_item_sk is not null and i_brand_id is not null and i_class_id is not null and i_category_id is not null) - TableScan [TS_510] (rows=462000 width=1436) - default@item,ics,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_brand_id","i_class_id","i_category_id"] - <-Reducer 149 [SIMPLE_EDGE] - SHUFFLE [RS_516] + Please refer to the previous TableScan [TS_89] + <-Reducer 48 [SIMPLE_EDGE] + SHUFFLE [RS_321] PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_900] (rows=316788826 width=135) - Conds:RS_513._col0=RS_514._col0(Inner),Output:["_col1"] - <-Map 148 [SIMPLE_EDGE] - SHUFFLE [RS_513] + Merge Join Operator [MERGEJOIN_885] (rows=316788826 width=135) + Conds:RS_318._col0=RS_319._col0(Inner),Output:["_col1"] + <-Map 17 [SIMPLE_EDGE] + SHUFFLE [RS_319] PartitionCols:_col0 - Select Operator [SEL_506] (rows=287989836 width=135) + Select Operator [SEL_314] (rows=8116 width=1119) + Output:["_col0"] + Filter Operator [FIL_831] (rows=8116 width=1119) + predicate:(d_year BETWEEN 1999 AND 2001 and d_date_sk is not null) + Please refer to the previous TableScan [TS_3] + <-Map 98 [SIMPLE_EDGE] + SHUFFLE [RS_318] + PartitionCols:_col0 + Select Operator [SEL_311] (rows=287989836 width=135) Output:["_col0","_col1"] - Filter Operator [FIL_855] (rows=287989836 width=135) + Filter Operator [FIL_830] (rows=287989836 width=135) predicate:(cs_item_sk is not null and cs_sold_date_sk is not null) - TableScan [TS_504] (rows=287989836 width=135) + TableScan [TS_116] (rows=287989836 width=135) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:NONE,Output:["cs_sold_date_sk","cs_item_sk"] - <-Map 152 [SIMPLE_EDGE] - SHUFFLE [RS_514] - PartitionCols:_col0 - Select Operator [SEL_509] (rows=8116 width=1119) - Output:["_col0"] - Filter Operator [FIL_856] (rows=8116 width=1119) - predicate:(d_year BETWEEN 1999 AND 2001 and d_date_sk is not null) - TableScan [TS_507] (rows=73049 width=1119) - default@date_dim,d2,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] - <-Reducer 157 [CONTAINS] - Reduce Output Operator [RS_550] + <-Reducer 53 [CONTAINS] + Reduce Output Operator [RS_355] PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_549] (rows=609832849 width=108) + Group By Operator [GBY_354] (rows=609832849 width=108) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(_col3)"],keys:_col0, _col1, _col2 - Group By Operator [GBY_545] (rows=87121617 width=135) + Group By Operator [GBY_350] (rows=87121617 width=135) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Reducer 156 [SIMPLE_EDGE] - SHUFFLE [RS_544] + <-Reducer 52 [SIMPLE_EDGE] + SHUFFLE [RS_349] PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_543] (rows=174243235 width=135) + Group By Operator [GBY_348] (rows=174243235 width=135) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(1)"],keys:_col0, _col1, _col2 - Select Operator [SEL_541] (rows=174243235 width=135) + Select Operator [SEL_346] (rows=174243235 width=135) Output:["_col0","_col1","_col2"] - Merge Join Operator [MERGEJOIN_903] (rows=174243235 width=135) - Conds:RS_538._col1=RS_539._col0(Inner),Output:["_col5","_col6","_col7"] - <-Map 159 [SIMPLE_EDGE] - SHUFFLE [RS_539] + Merge Join Operator [MERGEJOIN_888] (rows=174243235 width=135) + Conds:RS_343._col1=RS_344._col0(Inner),Output:["_col5","_col6","_col7"] + <-Map 96 [SIMPLE_EDGE] + SHUFFLE [RS_344] PartitionCols:_col0 - Select Operator [SEL_534] (rows=462000 width=1436) + Select Operator [SEL_339] (rows=462000 width=1436) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_860] (rows=462000 width=1436) + Filter Operator [FIL_835] (rows=462000 width=1436) predicate:(i_item_sk is not null and i_brand_id is not null and i_class_id is not null and i_category_id is not null) - TableScan [TS_532] (rows=462000 width=1436) - default@item,iws,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_brand_id","i_class_id","i_category_id"] - <-Reducer 155 [SIMPLE_EDGE] - SHUFFLE [RS_538] + Please refer to the previous TableScan [TS_89] + <-Reducer 51 [SIMPLE_EDGE] + SHUFFLE [RS_343] PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_902] (rows=158402938 width=135) - Conds:RS_535._col0=RS_536._col0(Inner),Output:["_col1"] - <-Map 154 [SIMPLE_EDGE] - SHUFFLE [RS_535] + Merge Join Operator [MERGEJOIN_887] (rows=158402938 width=135) + Conds:RS_340._col0=RS_341._col0(Inner),Output:["_col1"] + <-Map 17 [SIMPLE_EDGE] + SHUFFLE [RS_341] PartitionCols:_col0 - Select Operator [SEL_528] (rows=144002668 width=135) + Select Operator [SEL_336] (rows=8116 width=1119) + Output:["_col0"] + Filter Operator [FIL_834] (rows=8116 width=1119) + predicate:(d_year BETWEEN 1999 AND 2001 and d_date_sk is not null) + Please refer to the previous TableScan [TS_3] + <-Map 99 [SIMPLE_EDGE] + SHUFFLE [RS_340] + PartitionCols:_col0 + Select Operator [SEL_333] (rows=144002668 width=135) Output:["_col0","_col1"] - Filter Operator [FIL_858] (rows=144002668 width=135) + Filter Operator [FIL_833] (rows=144002668 width=135) predicate:(ws_item_sk is not null and ws_sold_date_sk is not null) - TableScan [TS_526] (rows=144002668 width=135) + TableScan [TS_138] (rows=144002668 width=135) default@web_sales,web_sales,Tbl:COMPLETE,Col:NONE,Output:["ws_sold_date_sk","ws_item_sk"] - <-Map 158 [SIMPLE_EDGE] - SHUFFLE [RS_536] - PartitionCols:_col0 - Select Operator [SEL_531] (rows=8116 width=1119) - Output:["_col0"] - Filter Operator [FIL_859] (rows=8116 width=1119) - predicate:(d_year BETWEEN 1999 AND 2001 and d_date_sk is not null) - TableScan [TS_529] (rows=73049 width=1119) - default@date_dim,d3,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] - <-Reducer 5 [CONTAINS] + <-Reducer 94 [SIMPLE_EDGE] + SHUFFLE [RS_370] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_882] (rows=316788826 width=135) + Conds:RS_367._col0=RS_368._col0(Inner),Output:["_col1","_col2","_col3"] + <-Map 93 [SIMPLE_EDGE] + SHUFFLE [RS_368] + PartitionCols:_col0 + Select Operator [SEL_281] (rows=18262 width=1119) + Output:["_col0"] + Filter Operator [FIL_824] (rows=18262 width=1119) + predicate:((d_year = 2000) and (d_moy = 11) and d_date_sk is not null) + TableScan [TS_86] (rows=73049 width=1119) + default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_moy"] + <-Map 100 [SIMPLE_EDGE] + SHUFFLE [RS_367] + PartitionCols:_col0 + Select Operator [SEL_278] (rows=287989836 width=135) + Output:["_col0","_col1","_col2","_col3"] + Filter Operator [FIL_823] (rows=287989836 width=135) + predicate:(cs_item_sk is not null and cs_sold_date_sk is not null) + TableScan [TS_276] (rows=287989836 width=135) + default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:NONE,Output:["cs_sold_date_sk","cs_item_sk","cs_quantity","cs_list_price"] + <-Reducer 16 [CONTAINS] Reduce Output Operator [RS_584] PartitionCols:_col0, _col1, _col2, _col3, _col4 Group By Operator [GBY_583] (rows=2032776160 width=405) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"],aggregations:["sum(_col4)","sum(_col5)"],keys:_col0, _col1, _col2, _col3, 0 - Select Operator [SEL_192] (rows=232318249 width=385) + Select Operator [SEL_580] (rows=58081078 width=432) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] - Filter Operator [FIL_191] (rows=232318249 width=385) + Filter Operator [FIL_579] (rows=58081078 width=432) predicate:(_col5 > _col1) - Merge Join Operator [MERGEJOIN_906] (rows=696954748 width=385) + Merge Join Operator [MERGEJOIN_908] (rows=174243235 width=432) Conds:(Inner),(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6"] - <-Reducer 19 [CUSTOM_SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_188] - Group By Operator [GBY_81] (rows=1 width=288) - Output:["_col0"],aggregations:["avg(VALUE._col0)"] - <-Union 18 [CUSTOM_SIMPLE_EDGE] - <-Reducer 17 [CONTAINS] - Reduce Output Operator [RS_80] - Group By Operator [GBY_79] (rows=1 width=288) - Output:["_col0"],aggregations:["avg(_col0)"] - Select Operator [SEL_77] (rows=1108786976 width=108) - Output:["_col0"] - Select Operator [SEL_54] (rows=633595212 width=88) - Output:["_col0","_col1"] - Merge Join Operator [MERGEJOIN_864] (rows=633595212 width=88) - Conds:RS_51._col0=RS_52._col0(Inner),Output:["_col1","_col2"] - <-Map 16 [SIMPLE_EDGE] - SHUFFLE [RS_51] - PartitionCols:_col0 - Select Operator [SEL_47] (rows=575995635 width=88) - Output:["_col0","_col1","_col2"] - Filter Operator [FIL_792] (rows=575995635 width=88) - predicate:ss_sold_date_sk is not null - TableScan [TS_45] (rows=575995635 width=88) - default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_quantity","ss_list_price"] - <-Map 20 [SIMPLE_EDGE] - SHUFFLE [RS_52] - PartitionCols:_col0 - Select Operator [SEL_50] (rows=8116 width=1119) + <-Reducer 15 [CUSTOM_SIMPLE_EDGE] + PARTITION_ONLY_SHUFFLE [RS_575] + Select Operator [SEL_432] (rows=1 width=8) + Filter Operator [FIL_431] (rows=1 width=8) + predicate:(sq_count_check(_col0) <= 1) + Group By Operator [GBY_429] (rows=1 width=8) + Output:["_col0"],aggregations:["count()"] + Select Operator [SEL_424] (rows=1 width=8) + Group By Operator [GBY_423] (rows=1 width=8) + Output:["_col0"],aggregations:["count(VALUE._col0)"] + <-Union 14 [CUSTOM_SIMPLE_EDGE] + <-Reducer 13 [CONTAINS] + Reduce Output Operator [RS_422] + Group By Operator [GBY_421] (rows=1 width=8) + Output:["_col0"],aggregations:["count(_col0)"] + Select Operator [SEL_420] (rows=1108786976 width=108) Output:["_col0"] - Filter Operator [FIL_793] (rows=8116 width=1119) - predicate:(d_year BETWEEN 1999 AND 2001 and d_date_sk is not null) - TableScan [TS_48] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] - <-Reducer 22 [CONTAINS] - Reduce Output Operator [RS_80] - Group By Operator [GBY_79] (rows=1 width=288) - Output:["_col0"],aggregations:["avg(_col0)"] - Select Operator [SEL_77] (rows=1108786976 width=108) - Output:["_col0"] - Select Operator [SEL_64] (rows=316788826 width=135) - Output:["_col0","_col1"] - Merge Join Operator [MERGEJOIN_865] (rows=316788826 width=135) - Conds:RS_61._col0=RS_62._col0(Inner),Output:["_col1","_col2"] - <-Map 21 [SIMPLE_EDGE] - SHUFFLE [RS_61] - PartitionCols:_col0 - Select Operator [SEL_57] (rows=287989836 width=135) - Output:["_col0","_col1","_col2"] - Filter Operator [FIL_794] (rows=287989836 width=135) - predicate:cs_sold_date_sk is not null - TableScan [TS_55] (rows=287989836 width=135) - default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:NONE,Output:["cs_sold_date_sk","cs_quantity","cs_list_price"] - <-Map 23 [SIMPLE_EDGE] - SHUFFLE [RS_62] + Select Operator [SEL_397] (rows=633595212 width=88) + Output:["_col0"] + Merge Join Operator [MERGEJOIN_891] (rows=633595212 width=88) + Conds:RS_394._col0=RS_395._col0(Inner),Output:["_col1"] + <-Map 17 [SIMPLE_EDGE] + SHUFFLE [RS_395] + PartitionCols:_col0 + Select Operator [SEL_393] (rows=8116 width=1119) + Output:["_col0"] + Filter Operator [FIL_837] (rows=8116 width=1119) + predicate:(d_year BETWEEN 1999 AND 2001 and d_date_sk is not null) + Please refer to the previous TableScan [TS_3] + <-Map 1 [SIMPLE_EDGE] + SHUFFLE [RS_394] + PartitionCols:_col0 + Select Operator [SEL_390] (rows=575995635 width=88) + Output:["_col0","_col1"] + Filter Operator [FIL_836] (rows=575995635 width=88) + predicate:ss_sold_date_sk is not null + Please refer to the previous TableScan [TS_0] + <-Reducer 75 [CONTAINS] + Reduce Output Operator [RS_422] + Group By Operator [GBY_421] (rows=1 width=8) + Output:["_col0"],aggregations:["count(_col0)"] + Select Operator [SEL_420] (rows=1108786976 width=108) + Output:["_col0"] + Select Operator [SEL_407] (rows=316788826 width=135) + Output:["_col0"] + Merge Join Operator [MERGEJOIN_892] (rows=316788826 width=135) + Conds:RS_404._col0=RS_405._col0(Inner),Output:["_col1"] + <-Map 76 [SIMPLE_EDGE] + SHUFFLE [RS_405] + PartitionCols:_col0 + Select Operator [SEL_403] (rows=8116 width=1119) + Output:["_col0"] + Filter Operator [FIL_839] (rows=8116 width=1119) + predicate:(d_year BETWEEN 1998 AND 2000 and d_date_sk is not null) + Please refer to the previous TableScan [TS_13] + <-Map 72 [SIMPLE_EDGE] + SHUFFLE [RS_404] + PartitionCols:_col0 + Select Operator [SEL_400] (rows=287989836 width=135) + Output:["_col0","_col1"] + Filter Operator [FIL_838] (rows=287989836 width=135) + predicate:cs_sold_date_sk is not null + Please refer to the previous TableScan [TS_10] + <-Reducer 83 [CONTAINS] + Reduce Output Operator [RS_422] + Group By Operator [GBY_421] (rows=1 width=8) + Output:["_col0"],aggregations:["count(_col0)"] + Select Operator [SEL_420] (rows=1108786976 width=108) + Output:["_col0"] + Select Operator [SEL_419] (rows=158402938 width=135) + Output:["_col0"] + Merge Join Operator [MERGEJOIN_893] (rows=158402938 width=135) + Conds:RS_416._col0=RS_417._col0(Inner),Output:["_col1"] + <-Map 84 [SIMPLE_EDGE] + SHUFFLE [RS_417] + PartitionCols:_col0 + Select Operator [SEL_415] (rows=8116 width=1119) + Output:["_col0"] + Filter Operator [FIL_841] (rows=8116 width=1119) + predicate:(d_year BETWEEN 1998 AND 2000 and d_date_sk is not null) + Please refer to the previous TableScan [TS_25] + <-Map 80 [SIMPLE_EDGE] + SHUFFLE [RS_416] + PartitionCols:_col0 + Select Operator [SEL_412] (rows=144002668 width=135) + Output:["_col0","_col1"] + Filter Operator [FIL_840] (rows=144002668 width=135) + predicate:ws_sold_date_sk is not null + Please refer to the previous TableScan [TS_22] + <-Reducer 56 [CUSTOM_SIMPLE_EDGE] + PARTITION_ONLY_SHUFFLE [RS_576] + Group By Operator [GBY_469] (rows=1 width=288) + Output:["_col0"],aggregations:["avg(VALUE._col0)"] + <-Union 55 [CUSTOM_SIMPLE_EDGE] + <-Reducer 54 [CONTAINS] + Reduce Output Operator [RS_468] + Group By Operator [GBY_467] (rows=1 width=288) + Output:["_col0"],aggregations:["avg(_col0)"] + Select Operator [SEL_465] (rows=1108786976 width=108) + Output:["_col0"] + Select Operator [SEL_442] (rows=633595212 width=88) + Output:["_col0","_col1"] + Merge Join Operator [MERGEJOIN_894] (rows=633595212 width=88) + Conds:RS_439._col0=RS_440._col0(Inner),Output:["_col1","_col2"] + <-Map 17 [SIMPLE_EDGE] + SHUFFLE [RS_440] PartitionCols:_col0 - Select Operator [SEL_60] (rows=8116 width=1119) + Select Operator [SEL_438] (rows=8116 width=1119) Output:["_col0"] - Filter Operator [FIL_795] (rows=8116 width=1119) - predicate:(d_year BETWEEN 1998 AND 2000 and d_date_sk is not null) - TableScan [TS_58] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] - <-Reducer 25 [CONTAINS] - Reduce Output Operator [RS_80] - Group By Operator [GBY_79] (rows=1 width=288) + Filter Operator [FIL_843] (rows=8116 width=1119) + predicate:(d_year BETWEEN 1999 AND 2001 and d_date_sk is not null) + Please refer to the previous TableScan [TS_3] + <-Map 88 [SIMPLE_EDGE] + SHUFFLE [RS_439] + PartitionCols:_col0 + Select Operator [SEL_435] (rows=575995635 width=88) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_842] (rows=575995635 width=88) + predicate:ss_sold_date_sk is not null + Please refer to the previous TableScan [TS_45] + <-Reducer 79 [CONTAINS] + Reduce Output Operator [RS_468] + Group By Operator [GBY_467] (rows=1 width=288) Output:["_col0"],aggregations:["avg(_col0)"] - Select Operator [SEL_77] (rows=1108786976 width=108) + Select Operator [SEL_465] (rows=1108786976 width=108) Output:["_col0"] - Select Operator [SEL_76] (rows=158402938 width=135) + Select Operator [SEL_452] (rows=316788826 width=135) Output:["_col0","_col1"] - Merge Join Operator [MERGEJOIN_866] (rows=158402938 width=135) - Conds:RS_73._col0=RS_74._col0(Inner),Output:["_col1","_col2"] - <-Map 24 [SIMPLE_EDGE] - SHUFFLE [RS_73] + Merge Join Operator [MERGEJOIN_895] (rows=316788826 width=135) + Conds:RS_449._col0=RS_450._col0(Inner),Output:["_col1","_col2"] + <-Map 76 [SIMPLE_EDGE] + SHUFFLE [RS_450] PartitionCols:_col0 - Select Operator [SEL_69] (rows=144002668 width=135) + Select Operator [SEL_448] (rows=8116 width=1119) + Output:["_col0"] + Filter Operator [FIL_845] (rows=8116 width=1119) + predicate:(d_year BETWEEN 1998 AND 2000 and d_date_sk is not null) + Please refer to the previous TableScan [TS_13] + <-Map 89 [SIMPLE_EDGE] + SHUFFLE [RS_449] + PartitionCols:_col0 + Select Operator [SEL_445] (rows=287989836 width=135) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_796] (rows=144002668 width=135) - predicate:ws_sold_date_sk is not null - TableScan [TS_67] (rows=144002668 width=135) - default@web_sales,web_sales,Tbl:COMPLETE,Col:NONE,Output:["ws_sold_date_sk","ws_quantity","ws_list_price"] - <-Map 26 [SIMPLE_EDGE] - SHUFFLE [RS_74] + Filter Operator [FIL_844] (rows=287989836 width=135) + predicate:cs_sold_date_sk is not null + Please refer to the previous TableScan [TS_55] + <-Reducer 87 [CONTAINS] + Reduce Output Operator [RS_468] + Group By Operator [GBY_467] (rows=1 width=288) + Output:["_col0"],aggregations:["avg(_col0)"] + Select Operator [SEL_465] (rows=1108786976 width=108) + Output:["_col0"] + Select Operator [SEL_464] (rows=158402938 width=135) + Output:["_col0","_col1"] + Merge Join Operator [MERGEJOIN_896] (rows=158402938 width=135) + Conds:RS_461._col0=RS_462._col0(Inner),Output:["_col1","_col2"] + <-Map 84 [SIMPLE_EDGE] + SHUFFLE [RS_462] PartitionCols:_col0 - Select Operator [SEL_72] (rows=8116 width=1119) + Select Operator [SEL_460] (rows=8116 width=1119) Output:["_col0"] - Filter Operator [FIL_797] (rows=8116 width=1119) + Filter Operator [FIL_847] (rows=8116 width=1119) predicate:(d_year BETWEEN 1998 AND 2000 and d_date_sk is not null) - TableScan [TS_70] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] - <-Reducer 30 [CUSTOM_SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_189] - Group By Operator [GBY_185] (rows=696954748 width=88) + Please refer to the previous TableScan [TS_25] + <-Map 90 [SIMPLE_EDGE] + SHUFFLE [RS_461] + PartitionCols:_col0 + Select Operator [SEL_457] (rows=144002668 width=135) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_846] (rows=144002668 width=135) + predicate:ws_sold_date_sk is not null + Please refer to the previous TableScan [TS_67] + <-Reducer 65 [CUSTOM_SIMPLE_EDGE] + PARTITION_ONLY_SHUFFLE [RS_577] + Group By Operator [GBY_573] (rows=174243235 width=135) Output:["_col0","_col1","_col2","_col3","_col4"],aggregations:["sum(VALUE._col0)","count(VALUE._col1)"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Reducer 29 [SIMPLE_EDGE] - SHUFFLE [RS_184] + <-Reducer 64 [SIMPLE_EDGE] + SHUFFLE [RS_572] PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_183] (rows=1393909496 width=88) + Group By Operator [GBY_571] (rows=348486471 width=135) Output:["_col0","_col1","_col2","_col3","_col4"],aggregations:["sum(_col3)","count()"],keys:_col0, _col1, _col2 - Select Operator [SEL_181] (rows=1393909496 width=88) + Select Operator [SEL_569] (rows=348486471 width=135) Output:["_col0","_col1","_col2","_col3"] - Merge Join Operator [MERGEJOIN_875] (rows=1393909496 width=88) - Conds:RS_177._col1=RS_178._col0(Inner),RS_177._col1=RS_179._col0(Inner),Output:["_col2","_col3","_col8","_col9","_col10"] - <-Map 32 [SIMPLE_EDGE] - SHUFFLE [RS_178] + Merge Join Operator [MERGEJOIN_905] (rows=348486471 width=135) + Conds:RS_565._col1=RS_566._col0(Inner),RS_565._col1=RS_567._col0(Inner),Output:["_col2","_col3","_col8","_col9","_col10"] + <-Map 96 [SIMPLE_EDGE] + SHUFFLE [RS_566] PartitionCols:_col0 - Select Operator [SEL_91] (rows=462000 width=1436) + Select Operator [SEL_479] (rows=462000 width=1436) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_800] (rows=462000 width=1436) + Filter Operator [FIL_850] (rows=462000 width=1436) predicate:i_item_sk is not null - TableScan [TS_89] (rows=462000 width=1436) - default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_brand_id","i_class_id","i_category_id"] - <-Reducer 28 [SIMPLE_EDGE] - SHUFFLE [RS_177] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_867] (rows=633595212 width=88) - Conds:RS_174._col0=RS_175._col0(Inner),Output:["_col1","_col2","_col3"] - <-Map 27 [SIMPLE_EDGE] - SHUFFLE [RS_174] - PartitionCols:_col0 - Select Operator [SEL_85] (rows=575995635 width=88) - Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_798] (rows=575995635 width=88) - predicate:(ss_item_sk is not null and ss_sold_date_sk is not null) - TableScan [TS_83] (rows=575995635 width=88) - default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_item_sk","ss_quantity","ss_list_price"] - <-Map 31 [SIMPLE_EDGE] - SHUFFLE [RS_175] - PartitionCols:_col0 - Select Operator [SEL_88] (rows=18262 width=1119) - Output:["_col0"] - Filter Operator [FIL_799] (rows=18262 width=1119) - predicate:((d_year = 2000) and (d_moy = 11) and d_date_sk is not null) - TableScan [TS_86] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_moy"] - <-Reducer 35 [SIMPLE_EDGE] - SHUFFLE [RS_179] + Please refer to the previous TableScan [TS_89] + <-Reducer 63 [SIMPLE_EDGE] + SHUFFLE [RS_567] PartitionCols:_col0 - Group By Operator [GBY_172] (rows=254100 width=1436) + Group By Operator [GBY_560] (rows=254100 width=1436) Output:["_col0"],keys:KEY._col0 - <-Reducer 34 [SIMPLE_EDGE] - SHUFFLE [RS_171] + <-Reducer 62 [SIMPLE_EDGE] + SHUFFLE [RS_559] PartitionCols:_col0 - Group By Operator [GBY_170] (rows=508200 width=1436) + Group By Operator [GBY_558] (rows=508200 width=1436) Output:["_col0"],keys:_col0 - Merge Join Operator [MERGEJOIN_874] (rows=508200 width=1436) - Conds:RS_166._col1, _col2, _col3=RS_167._col0, _col1, _col2(Inner),Output:["_col0"] - <-Map 33 [SIMPLE_EDGE] - SHUFFLE [RS_166] + Merge Join Operator [MERGEJOIN_904] (rows=508200 width=1436) + Conds:RS_554._col1, _col2, _col3=RS_555._col0, _col1, _col2(Inner),Output:["_col0"] + <-Map 96 [SIMPLE_EDGE] + SHUFFLE [RS_554] PartitionCols:_col1, _col2, _col3 - Select Operator [SEL_94] (rows=462000 width=1436) + Select Operator [SEL_482] (rows=462000 width=1436) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_801] (rows=462000 width=1436) + Filter Operator [FIL_851] (rows=462000 width=1436) predicate:(i_brand_id is not null and i_class_id is not null and i_category_id is not null and i_item_sk is not null) - TableScan [TS_92] (rows=462000 width=1436) - default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_brand_id","i_class_id","i_category_id"] - <-Reducer 41 [SIMPLE_EDGE] - SHUFFLE [RS_167] + Please refer to the previous TableScan [TS_89] + <-Reducer 61 [SIMPLE_EDGE] + SHUFFLE [RS_555] PartitionCols:_col0, _col1, _col2 - Select Operator [SEL_165] (rows=1 width=108) + Select Operator [SEL_553] (rows=1 width=108) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_164] (rows=1 width=108) + Filter Operator [FIL_552] (rows=1 width=108) predicate:(_col3 = 3) - Group By Operator [GBY_163] (rows=304916424 width=108) + Group By Operator [GBY_551] (rows=304916424 width=108) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Union 40 [SIMPLE_EDGE] - <-Reducer 39 [CONTAINS] - Reduce Output Operator [RS_162] + <-Union 60 [SIMPLE_EDGE] + <-Reducer 59 [CONTAINS] + Reduce Output Operator [RS_550] PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_161] (rows=609832849 width=108) + Group By Operator [GBY_549] (rows=609832849 width=108) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(_col3)"],keys:_col0, _col1, _col2 - Group By Operator [GBY_114] (rows=348477374 width=88) + Group By Operator [GBY_502] (rows=348477374 width=88) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Reducer 38 [SIMPLE_EDGE] - SHUFFLE [RS_113] + <-Reducer 58 [SIMPLE_EDGE] + SHUFFLE [RS_501] PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_112] (rows=696954748 width=88) + Group By Operator [GBY_500] (rows=696954748 width=88) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(1)"],keys:_col0, _col1, _col2 - Select Operator [SEL_110] (rows=696954748 width=88) + Select Operator [SEL_498] (rows=696954748 width=88) Output:["_col0","_col1","_col2"] - Merge Join Operator [MERGEJOIN_869] (rows=696954748 width=88) - Conds:RS_107._col1=RS_108._col0(Inner),Output:["_col5","_col6","_col7"] - <-Map 43 [SIMPLE_EDGE] - SHUFFLE [RS_108] + Merge Join Operator [MERGEJOIN_899] (rows=696954748 width=88) + Conds:RS_495._col1=RS_496._col0(Inner),Output:["_col5","_col6","_col7"] + <-Map 96 [SIMPLE_EDGE] + SHUFFLE [RS_496] PartitionCols:_col0 - Select Operator [SEL_103] (rows=462000 width=1436) + Select Operator [SEL_491] (rows=462000 width=1436) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_804] (rows=462000 width=1436) + Filter Operator [FIL_854] (rows=462000 width=1436) predicate:(i_item_sk is not null and i_brand_id is not null and i_class_id is not null and i_category_id is not null) - TableScan [TS_101] (rows=462000 width=1436) - default@item,iss,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_brand_id","i_class_id","i_category_id"] - <-Reducer 37 [SIMPLE_EDGE] - SHUFFLE [RS_107] + Please refer to the previous TableScan [TS_89] + <-Reducer 57 [SIMPLE_EDGE] + SHUFFLE [RS_495] PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_868] (rows=633595212 width=88) - Conds:RS_104._col0=RS_105._col0(Inner),Output:["_col1"] - <-Map 36 [SIMPLE_EDGE] - SHUFFLE [RS_104] - PartitionCols:_col0 - Select Operator [SEL_97] (rows=575995635 width=88) - Output:["_col0","_col1"] - Filter Operator [FIL_802] (rows=575995635 width=88) - predicate:(ss_item_sk is not null and ss_sold_date_sk is not null) - TableScan [TS_95] (rows=575995635 width=88) - default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_item_sk"] - <-Map 42 [SIMPLE_EDGE] - SHUFFLE [RS_105] + Merge Join Operator [MERGEJOIN_898] (rows=633595212 width=88) + Conds:RS_492._col0=RS_493._col0(Inner),Output:["_col1"] + <-Map 17 [SIMPLE_EDGE] + SHUFFLE [RS_493] PartitionCols:_col0 - Select Operator [SEL_100] (rows=8116 width=1119) + Select Operator [SEL_488] (rows=8116 width=1119) Output:["_col0"] - Filter Operator [FIL_803] (rows=8116 width=1119) + Filter Operator [FIL_853] (rows=8116 width=1119) predicate:(d_year BETWEEN 1999 AND 2001 and d_date_sk is not null) - TableScan [TS_98] (rows=73049 width=1119) - default@date_dim,d1,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] - <-Reducer 47 [CONTAINS] - Reduce Output Operator [RS_162] + Please refer to the previous TableScan [TS_3] + <-Map 97 [SIMPLE_EDGE] + SHUFFLE [RS_492] + PartitionCols:_col0 + Select Operator [SEL_485] (rows=575995635 width=88) + Output:["_col0","_col1"] + Filter Operator [FIL_852] (rows=575995635 width=88) + predicate:(ss_item_sk is not null and ss_sold_date_sk is not null) + Please refer to the previous TableScan [TS_95] + <-Reducer 68 [CONTAINS] + Reduce Output Operator [RS_550] PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_161] (rows=609832849 width=108) + Group By Operator [GBY_549] (rows=609832849 width=108) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(_col3)"],keys:_col0, _col1, _col2 - Group By Operator [GBY_135] (rows=174233858 width=135) + Group By Operator [GBY_523] (rows=174233858 width=135) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Reducer 46 [SIMPLE_EDGE] - SHUFFLE [RS_134] + <-Reducer 67 [SIMPLE_EDGE] + SHUFFLE [RS_522] PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_133] (rows=348467716 width=135) + Group By Operator [GBY_521] (rows=348467716 width=135) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(1)"],keys:_col0, _col1, _col2 - Select Operator [SEL_131] (rows=348467716 width=135) + Select Operator [SEL_519] (rows=348467716 width=135) Output:["_col0","_col1","_col2"] - Merge Join Operator [MERGEJOIN_871] (rows=348467716 width=135) - Conds:RS_128._col1=RS_129._col0(Inner),Output:["_col5","_col6","_col7"] - <-Map 49 [SIMPLE_EDGE] - SHUFFLE [RS_129] + Merge Join Operator [MERGEJOIN_901] (rows=348467716 width=135) + Conds:RS_516._col1=RS_517._col0(Inner),Output:["_col5","_col6","_col7"] + <-Map 96 [SIMPLE_EDGE] + SHUFFLE [RS_517] PartitionCols:_col0 - Select Operator [SEL_124] (rows=462000 width=1436) + Select Operator [SEL_512] (rows=462000 width=1436) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_807] (rows=462000 width=1436) + Filter Operator [FIL_857] (rows=462000 width=1436) predicate:(i_item_sk is not null and i_brand_id is not null and i_class_id is not null and i_category_id is not null) - TableScan [TS_122] (rows=462000 width=1436) - default@item,ics,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_brand_id","i_class_id","i_category_id"] - <-Reducer 45 [SIMPLE_EDGE] - SHUFFLE [RS_128] + Please refer to the previous TableScan [TS_89] + <-Reducer 66 [SIMPLE_EDGE] + SHUFFLE [RS_516] PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_870] (rows=316788826 width=135) - Conds:RS_125._col0=RS_126._col0(Inner),Output:["_col1"] - <-Map 44 [SIMPLE_EDGE] - SHUFFLE [RS_125] - PartitionCols:_col0 - Select Operator [SEL_118] (rows=287989836 width=135) - Output:["_col0","_col1"] - Filter Operator [FIL_805] (rows=287989836 width=135) - predicate:(cs_item_sk is not null and cs_sold_date_sk is not null) - TableScan [TS_116] (rows=287989836 width=135) - default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:NONE,Output:["cs_sold_date_sk","cs_item_sk"] - <-Map 48 [SIMPLE_EDGE] - SHUFFLE [RS_126] + Merge Join Operator [MERGEJOIN_900] (rows=316788826 width=135) + Conds:RS_513._col0=RS_514._col0(Inner),Output:["_col1"] + <-Map 17 [SIMPLE_EDGE] + SHUFFLE [RS_514] PartitionCols:_col0 - Select Operator [SEL_121] (rows=8116 width=1119) + Select Operator [SEL_509] (rows=8116 width=1119) Output:["_col0"] - Filter Operator [FIL_806] (rows=8116 width=1119) + Filter Operator [FIL_856] (rows=8116 width=1119) predicate:(d_year BETWEEN 1999 AND 2001 and d_date_sk is not null) - TableScan [TS_119] (rows=73049 width=1119) - default@date_dim,d2,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] - <-Reducer 53 [CONTAINS] - Reduce Output Operator [RS_162] + Please refer to the previous TableScan [TS_3] + <-Map 98 [SIMPLE_EDGE] + SHUFFLE [RS_513] + PartitionCols:_col0 + Select Operator [SEL_506] (rows=287989836 width=135) + Output:["_col0","_col1"] + Filter Operator [FIL_855] (rows=287989836 width=135) + predicate:(cs_item_sk is not null and cs_sold_date_sk is not null) + Please refer to the previous TableScan [TS_116] + <-Reducer 71 [CONTAINS] + Reduce Output Operator [RS_550] PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_161] (rows=609832849 width=108) + Group By Operator [GBY_549] (rows=609832849 width=108) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(_col3)"],keys:_col0, _col1, _col2 - Group By Operator [GBY_157] (rows=87121617 width=135) + Group By Operator [GBY_545] (rows=87121617 width=135) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Reducer 52 [SIMPLE_EDGE] - SHUFFLE [RS_156] + <-Reducer 70 [SIMPLE_EDGE] + SHUFFLE [RS_544] PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_155] (rows=174243235 width=135) + Group By Operator [GBY_543] (rows=174243235 width=135) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(1)"],keys:_col0, _col1, _col2 - Select Operator [SEL_153] (rows=174243235 width=135) + Select Operator [SEL_541] (rows=174243235 width=135) Output:["_col0","_col1","_col2"] - Merge Join Operator [MERGEJOIN_873] (rows=174243235 width=135) - Conds:RS_150._col1=RS_151._col0(Inner),Output:["_col5","_col6","_col7"] - <-Map 55 [SIMPLE_EDGE] - SHUFFLE [RS_151] + Merge Join Operator [MERGEJOIN_903] (rows=174243235 width=135) + Conds:RS_538._col1=RS_539._col0(Inner),Output:["_col5","_col6","_col7"] + <-Map 96 [SIMPLE_EDGE] + SHUFFLE [RS_539] PartitionCols:_col0 - Select Operator [SEL_146] (rows=462000 width=1436) + Select Operator [SEL_534] (rows=462000 width=1436) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_810] (rows=462000 width=1436) + Filter Operator [FIL_860] (rows=462000 width=1436) predicate:(i_item_sk is not null and i_brand_id is not null and i_class_id is not null and i_category_id is not null) - TableScan [TS_144] (rows=462000 width=1436) - default@item,iws,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_brand_id","i_class_id","i_category_id"] - <-Reducer 51 [SIMPLE_EDGE] - SHUFFLE [RS_150] + Please refer to the previous TableScan [TS_89] + <-Reducer 69 [SIMPLE_EDGE] + SHUFFLE [RS_538] PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_872] (rows=158402938 width=135) - Conds:RS_147._col0=RS_148._col0(Inner),Output:["_col1"] - <-Map 50 [SIMPLE_EDGE] - SHUFFLE [RS_147] - PartitionCols:_col0 - Select Operator [SEL_140] (rows=144002668 width=135) - Output:["_col0","_col1"] - Filter Operator [FIL_808] (rows=144002668 width=135) - predicate:(ws_item_sk is not null and ws_sold_date_sk is not null) - TableScan [TS_138] (rows=144002668 width=135) - default@web_sales,web_sales,Tbl:COMPLETE,Col:NONE,Output:["ws_sold_date_sk","ws_item_sk"] - <-Map 54 [SIMPLE_EDGE] - SHUFFLE [RS_148] + Merge Join Operator [MERGEJOIN_902] (rows=158402938 width=135) + Conds:RS_535._col0=RS_536._col0(Inner),Output:["_col1"] + <-Map 17 [SIMPLE_EDGE] + SHUFFLE [RS_536] PartitionCols:_col0 - Select Operator [SEL_143] (rows=8116 width=1119) + Select Operator [SEL_531] (rows=8116 width=1119) Output:["_col0"] - Filter Operator [FIL_809] (rows=8116 width=1119) + Filter Operator [FIL_859] (rows=8116 width=1119) predicate:(d_year BETWEEN 1999 AND 2001 and d_date_sk is not null) - TableScan [TS_141] (rows=73049 width=1119) - default@date_dim,d3,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] - <-Reducer 4 [CUSTOM_SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_187] - Select Operator [SEL_44] (rows=1 width=8) - Filter Operator [FIL_43] (rows=1 width=8) - predicate:(sq_count_check(_col0) <= 1) - Group By Operator [GBY_41] (rows=1 width=8) - Output:["_col0"],aggregations:["count()"] - Select Operator [SEL_36] (rows=1 width=8) - Group By Operator [GBY_35] (rows=1 width=8) - Output:["_col0"],aggregations:["count(VALUE._col0)"] - <-Union 3 [CUSTOM_SIMPLE_EDGE] - <-Reducer 11 [CONTAINS] - Reduce Output Operator [RS_34] - Group By Operator [GBY_33] (rows=1 width=8) - Output:["_col0"],aggregations:["count(_col0)"] - Select Operator [SEL_32] (rows=1108786976 width=108) - Output:["_col0"] - Select Operator [SEL_19] (rows=316788826 width=135) - Output:["_col0"] - Merge Join Operator [MERGEJOIN_862] (rows=316788826 width=135) - Conds:RS_16._col0=RS_17._col0(Inner),Output:["_col1"] - <-Map 10 [SIMPLE_EDGE] - SHUFFLE [RS_16] - PartitionCols:_col0 - Select Operator [SEL_12] (rows=287989836 width=135) - Output:["_col0","_col1"] - Filter Operator [FIL_788] (rows=287989836 width=135) - predicate:cs_sold_date_sk is not null - TableScan [TS_10] (rows=287989836 width=135) - default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:NONE,Output:["cs_sold_date_sk","cs_quantity"] - <-Map 12 [SIMPLE_EDGE] - SHUFFLE [RS_17] - PartitionCols:_col0 - Select Operator [SEL_15] (rows=8116 width=1119) - Output:["_col0"] - Filter Operator [FIL_789] (rows=8116 width=1119) - predicate:(d_year BETWEEN 1998 AND 2000 and d_date_sk is not null) - TableScan [TS_13] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] - <-Reducer 14 [CONTAINS] - Reduce Output Operator [RS_34] - Group By Operator [GBY_33] (rows=1 width=8) - Output:["_col0"],aggregations:["count(_col0)"] - Select Operator [SEL_32] (rows=1108786976 width=108) - Output:["_col0"] - Select Operator [SEL_31] (rows=158402938 width=135) - Output:["_col0"] - Merge Join Operator [MERGEJOIN_863] (rows=158402938 width=135) - Conds:RS_28._col0=RS_29._col0(Inner),Output:["_col1"] - <-Map 13 [SIMPLE_EDGE] - SHUFFLE [RS_28] - PartitionCols:_col0 - Select Operator [SEL_24] (rows=144002668 width=135) - Output:["_col0","_col1"] - Filter Operator [FIL_790] (rows=144002668 width=135) - predicate:ws_sold_date_sk is not null - TableScan [TS_22] (rows=144002668 width=135) - default@web_sales,web_sales,Tbl:COMPLETE,Col:NONE,Output:["ws_sold_date_sk","ws_quantity"] - <-Map 15 [SIMPLE_EDGE] - SHUFFLE [RS_29] - PartitionCols:_col0 - Select Operator [SEL_27] (rows=8116 width=1119) - Output:["_col0"] - Filter Operator [FIL_791] (rows=8116 width=1119) - predicate:(d_year BETWEEN 1998 AND 2000 and d_date_sk is not null) - TableScan [TS_25] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] - <-Reducer 2 [CONTAINS] - Reduce Output Operator [RS_34] - Group By Operator [GBY_33] (rows=1 width=8) - Output:["_col0"],aggregations:["count(_col0)"] - Select Operator [SEL_32] (rows=1108786976 width=108) + Please refer to the previous TableScan [TS_3] + <-Map 99 [SIMPLE_EDGE] + SHUFFLE [RS_535] + PartitionCols:_col0 + Select Operator [SEL_528] (rows=144002668 width=135) + Output:["_col0","_col1"] + Filter Operator [FIL_858] (rows=144002668 width=135) + predicate:(ws_item_sk is not null and ws_sold_date_sk is not null) + Please refer to the previous TableScan [TS_138] + <-Reducer 95 [SIMPLE_EDGE] + SHUFFLE [RS_565] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_897] (rows=158402938 width=135) + Conds:RS_562._col0=RS_563._col0(Inner),Output:["_col1","_col2","_col3"] + <-Map 93 [SIMPLE_EDGE] + SHUFFLE [RS_563] + PartitionCols:_col0 + Select Operator [SEL_476] (rows=18262 width=1119) Output:["_col0"] - Select Operator [SEL_9] (rows=633595212 width=88) - Output:["_col0"] - Merge Join Operator [MERGEJOIN_861] (rows=633595212 width=88) - Conds:RS_6._col0=RS_7._col0(Inner),Output:["_col1"] - <-Map 1 [SIMPLE_EDGE] - SHUFFLE [RS_6] - PartitionCols:_col0 - Select Operator [SEL_2] (rows=575995635 width=88) - Output:["_col0","_col1"] - Filter Operator [FIL_786] (rows=575995635 width=88) - predicate:ss_sold_date_sk is not null - TableScan [TS_0] (rows=575995635 width=88) - default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_quantity"] - <-Map 9 [SIMPLE_EDGE] - SHUFFLE [RS_7] - PartitionCols:_col0 - Select Operator [SEL_5] (rows=8116 width=1119) - Output:["_col0"] - Filter Operator [FIL_787] (rows=8116 width=1119) - predicate:(d_year BETWEEN 1999 AND 2001 and d_date_sk is not null) - TableScan [TS_3] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] - <-Reducer 60 [CONTAINS] + Filter Operator [FIL_849] (rows=18262 width=1119) + predicate:((d_year = 2000) and (d_moy = 11) and d_date_sk is not null) + Please refer to the previous TableScan [TS_86] + <-Map 101 [SIMPLE_EDGE] + SHUFFLE [RS_562] + PartitionCols:_col0 + Select Operator [SEL_473] (rows=144002668 width=135) + Output:["_col0","_col1","_col2","_col3"] + Filter Operator [FIL_848] (rows=144002668 width=135) + predicate:(ws_item_sk is not null and ws_sold_date_sk is not null) + TableScan [TS_471] (rows=144002668 width=135) + default@web_sales,web_sales,Tbl:COMPLETE,Col:NONE,Output:["ws_sold_date_sk","ws_item_sk","ws_quantity","ws_list_price"] + <-Reducer 5 [CONTAINS] Reduce Output Operator [RS_584] PartitionCols:_col0, _col1, _col2, _col3, _col4 Group By Operator [GBY_583] (rows=2032776160 width=405) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"],aggregations:["sum(_col4)","sum(_col5)"],keys:_col0, _col1, _col2, _col3, 0 - Select Operator [SEL_385] (rows=116155905 width=432) + Select Operator [SEL_192] (rows=232318249 width=385) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] - Filter Operator [FIL_384] (rows=116155905 width=432) + Filter Operator [FIL_191] (rows=232318249 width=385) predicate:(_col5 > _col1) - Merge Join Operator [MERGEJOIN_907] (rows=348467716 width=432) + Merge Join Operator [MERGEJOIN_906] (rows=696954748 width=385) Conds:(Inner),(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6"] - <-Reducer 59 [CUSTOM_SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_380] - Select Operator [SEL_237] (rows=1 width=8) - Filter Operator [FIL_236] (rows=1 width=8) - predicate:(sq_count_check(_col0) <= 1) - Group By Operator [GBY_234] (rows=1 width=8) - Output:["_col0"],aggregations:["count()"] - Select Operator [SEL_229] (rows=1 width=8) - Group By Operator [GBY_228] (rows=1 width=8) - Output:["_col0"],aggregations:["count(VALUE._col0)"] - <-Union 58 [CUSTOM_SIMPLE_EDGE] - <-Reducer 57 [CONTAINS] - Reduce Output Operator [RS_227] - Group By Operator [GBY_226] (rows=1 width=8) - Output:["_col0"],aggregations:["count(_col0)"] - Select Operator [SEL_225] (rows=1108786976 width=108) - Output:["_col0"] - Select Operator [SEL_202] (rows=633595212 width=88) - Output:["_col0"] - Merge Join Operator [MERGEJOIN_876] (rows=633595212 width=88) - Conds:RS_199._col0=RS_200._col0(Inner),Output:["_col1"] - <-Map 56 [SIMPLE_EDGE] - SHUFFLE [RS_199] - PartitionCols:_col0 - Select Operator [SEL_195] (rows=575995635 width=88) - Output:["_col0","_col1"] - Filter Operator [FIL_811] (rows=575995635 width=88) - predicate:ss_sold_date_sk is not null - TableScan [TS_193] (rows=575995635 width=88) - default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_quantity"] - <-Map 61 [SIMPLE_EDGE] - SHUFFLE [RS_200] - PartitionCols:_col0 - Select Operator [SEL_198] (rows=8116 width=1119) - Output:["_col0"] - Filter Operator [FIL_812] (rows=8116 width=1119) - predicate:(d_year BETWEEN 1999 AND 2001 and d_date_sk is not null) - TableScan [TS_196] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] - <-Reducer 63 [CONTAINS] - Reduce Output Operator [RS_227] - Group By Operator [GBY_226] (rows=1 width=8) - Output:["_col0"],aggregations:["count(_col0)"] - Select Operator [SEL_225] (rows=1108786976 width=108) - Output:["_col0"] - Select Operator [SEL_212] (rows=316788826 width=135) - Output:["_col0"] - Merge Join Operator [MERGEJOIN_877] (rows=316788826 width=135) - Conds:RS_209._col0=RS_210._col0(Inner),Output:["_col1"] - <-Map 62 [SIMPLE_EDGE] - SHUFFLE [RS_209] - PartitionCols:_col0 - Select Operator [SEL_205] (rows=287989836 width=135) - Output:["_col0","_col1"] - Filter Operator [FIL_813] (rows=287989836 width=135) - predicate:cs_sold_date_sk is not null - TableScan [TS_203] (rows=287989836 width=135) - default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:NONE,Output:["cs_sold_date_sk","cs_quantity"] - <-Map 64 [SIMPLE_EDGE] - SHUFFLE [RS_210] - PartitionCols:_col0 - Select Operator [SEL_208] (rows=8116 width=1119) - Output:["_col0"] - Filter Operator [FIL_814] (rows=8116 width=1119) - predicate:(d_year BETWEEN 1998 AND 2000 and d_date_sk is not null) - TableScan [TS_206] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] - <-Reducer 66 [CONTAINS] - Reduce Output Operator [RS_227] - Group By Operator [GBY_226] (rows=1 width=8) - Output:["_col0"],aggregations:["count(_col0)"] - Select Operator [SEL_225] (rows=1108786976 width=108) - Output:["_col0"] - Select Operator [SEL_224] (rows=158402938 width=135) - Output:["_col0"] - Merge Join Operator [MERGEJOIN_878] (rows=158402938 width=135) - Conds:RS_221._col0=RS_222._col0(Inner),Output:["_col1"] - <-Map 65 [SIMPLE_EDGE] - SHUFFLE [RS_221] - PartitionCols:_col0 - Select Operator [SEL_217] (rows=144002668 width=135) - Output:["_col0","_col1"] - Filter Operator [FIL_815] (rows=144002668 width=135) - predicate:ws_sold_date_sk is not null - TableScan [TS_215] (rows=144002668 width=135) - default@web_sales,web_sales,Tbl:COMPLETE,Col:NONE,Output:["ws_sold_date_sk","ws_quantity"] - <-Map 67 [SIMPLE_EDGE] - SHUFFLE [RS_222] - PartitionCols:_col0 - Select Operator [SEL_220] (rows=8116 width=1119) - Output:["_col0"] - Filter Operator [FIL_816] (rows=8116 width=1119) - predicate:(d_year BETWEEN 1998 AND 2000 and d_date_sk is not null) - TableScan [TS_218] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] - <-Reducer 71 [CUSTOM_SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_381] - Group By Operator [GBY_274] (rows=1 width=288) + <-Reducer 20 [CUSTOM_SIMPLE_EDGE] + PARTITION_ONLY_SHUFFLE [RS_188] + Group By Operator [GBY_81] (rows=1 width=288) Output:["_col0"],aggregations:["avg(VALUE._col0)"] - <-Union 70 [CUSTOM_SIMPLE_EDGE] - <-Reducer 69 [CONTAINS] - Reduce Output Operator [RS_273] - Group By Operator [GBY_272] (rows=1 width=288) + <-Union 19 [CUSTOM_SIMPLE_EDGE] + <-Reducer 18 [CONTAINS] + Reduce Output Operator [RS_80] + Group By Operator [GBY_79] (rows=1 width=288) Output:["_col0"],aggregations:["avg(_col0)"] - Select Operator [SEL_270] (rows=1108786976 width=108) + Select Operator [SEL_77] (rows=1108786976 width=108) Output:["_col0"] - Select Operator [SEL_247] (rows=633595212 width=88) + Select Operator [SEL_54] (rows=633595212 width=88) Output:["_col0","_col1"] - Merge Join Operator [MERGEJOIN_879] (rows=633595212 width=88) - Conds:RS_244._col0=RS_245._col0(Inner),Output:["_col1","_col2"] - <-Map 68 [SIMPLE_EDGE] - SHUFFLE [RS_244] - PartitionCols:_col0 - Select Operator [SEL_240] (rows=575995635 width=88) - Output:["_col0","_col1","_col2"] - Filter Operator [FIL_817] (rows=575995635 width=88) - predicate:ss_sold_date_sk is not null - TableScan [TS_238] (rows=575995635 width=88) - default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_quantity","ss_list_price"] - <-Map 72 [SIMPLE_EDGE] - SHUFFLE [RS_245] + Merge Join Operator [MERGEJOIN_864] (rows=633595212 width=88) + Conds:RS_51._col0=RS_52._col0(Inner),Output:["_col1","_col2"] + <-Map 17 [SIMPLE_EDGE] + SHUFFLE [RS_52] PartitionCols:_col0 - Select Operator [SEL_243] (rows=8116 width=1119) + Select Operator [SEL_50] (rows=8116 width=1119) Output:["_col0"] - Filter Operator [FIL_818] (rows=8116 width=1119) + Filter Operator [FIL_793] (rows=8116 width=1119) predicate:(d_year BETWEEN 1999 AND 2001 and d_date_sk is not null) - TableScan [TS_241] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] - <-Reducer 74 [CONTAINS] - Reduce Output Operator [RS_273] - Group By Operator [GBY_272] (rows=1 width=288) - Output:["_col0"],aggregations:["avg(_col0)"] - Select Operator [SEL_270] (rows=1108786976 width=108) - Output:["_col0"] - Select Operator [SEL_257] (rows=316788826 width=135) - Output:["_col0","_col1"] - Merge Join Operator [MERGEJOIN_880] (rows=316788826 width=135) - Conds:RS_254._col0=RS_255._col0(Inner),Output:["_col1","_col2"] - <-Map 73 [SIMPLE_EDGE] - SHUFFLE [RS_254] + Please refer to the previous TableScan [TS_3] + <-Map 88 [SIMPLE_EDGE] + SHUFFLE [RS_51] PartitionCols:_col0 - Select Operator [SEL_250] (rows=287989836 width=135) + Select Operator [SEL_47] (rows=575995635 width=88) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_819] (rows=287989836 width=135) - predicate:cs_sold_date_sk is not null - TableScan [TS_248] (rows=287989836 width=135) - default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:NONE,Output:["cs_sold_date_sk","cs_quantity","cs_list_price"] - <-Map 75 [SIMPLE_EDGE] - SHUFFLE [RS_255] - PartitionCols:_col0 - Select Operator [SEL_253] (rows=8116 width=1119) - Output:["_col0"] - Filter Operator [FIL_820] (rows=8116 width=1119) - predicate:(d_year BETWEEN 1998 AND 2000 and d_date_sk is not null) - TableScan [TS_251] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] + Filter Operator [FIL_792] (rows=575995635 width=88) + predicate:ss_sold_date_sk is not null + Please refer to the previous TableScan [TS_45] <-Reducer 77 [CONTAINS] - Reduce Output Operator [RS_273] - Group By Operator [GBY_272] (rows=1 width=288) + Reduce Output Operator [RS_80] + Group By Operator [GBY_79] (rows=1 width=288) Output:["_col0"],aggregations:["avg(_col0)"] - Select Operator [SEL_270] (rows=1108786976 width=108) + Select Operator [SEL_77] (rows=1108786976 width=108) Output:["_col0"] - Select Operator [SEL_269] (rows=158402938 width=135) + Select Operator [SEL_64] (rows=316788826 width=135) Output:["_col0","_col1"] - Merge Join Operator [MERGEJOIN_881] (rows=158402938 width=135) - Conds:RS_266._col0=RS_267._col0(Inner),Output:["_col1","_col2"] + Merge Join Operator [MERGEJOIN_865] (rows=316788826 width=135) + Conds:RS_61._col0=RS_62._col0(Inner),Output:["_col1","_col2"] <-Map 76 [SIMPLE_EDGE] - SHUFFLE [RS_266] + SHUFFLE [RS_62] PartitionCols:_col0 - Select Operator [SEL_262] (rows=144002668 width=135) + Select Operator [SEL_60] (rows=8116 width=1119) + Output:["_col0"] + Filter Operator [FIL_795] (rows=8116 width=1119) + predicate:(d_year BETWEEN 1998 AND 2000 and d_date_sk is not null) + Please refer to the previous TableScan [TS_13] + <-Map 89 [SIMPLE_EDGE] + SHUFFLE [RS_61] + PartitionCols:_col0 + Select Operator [SEL_57] (rows=287989836 width=135) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_821] (rows=144002668 width=135) - predicate:ws_sold_date_sk is not null - TableScan [TS_260] (rows=144002668 width=135) - default@web_sales,web_sales,Tbl:COMPLETE,Col:NONE,Output:["ws_sold_date_sk","ws_quantity","ws_list_price"] - <-Map 78 [SIMPLE_EDGE] - SHUFFLE [RS_267] + Filter Operator [FIL_794] (rows=287989836 width=135) + predicate:cs_sold_date_sk is not null + Please refer to the previous TableScan [TS_55] + <-Reducer 85 [CONTAINS] + Reduce Output Operator [RS_80] + Group By Operator [GBY_79] (rows=1 width=288) + Output:["_col0"],aggregations:["avg(_col0)"] + Select Operator [SEL_77] (rows=1108786976 width=108) + Output:["_col0"] + Select Operator [SEL_76] (rows=158402938 width=135) + Output:["_col0","_col1"] + Merge Join Operator [MERGEJOIN_866] (rows=158402938 width=135) + Conds:RS_73._col0=RS_74._col0(Inner),Output:["_col1","_col2"] + <-Map 84 [SIMPLE_EDGE] + SHUFFLE [RS_74] PartitionCols:_col0 - Select Operator [SEL_265] (rows=8116 width=1119) + Select Operator [SEL_72] (rows=8116 width=1119) Output:["_col0"] - Filter Operator [FIL_822] (rows=8116 width=1119) + Filter Operator [FIL_797] (rows=8116 width=1119) predicate:(d_year BETWEEN 1998 AND 2000 and d_date_sk is not null) - TableScan [TS_263] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] - <-Reducer 82 [CUSTOM_SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_382] - Group By Operator [GBY_378] (rows=348467716 width=135) + Please refer to the previous TableScan [TS_25] + <-Map 90 [SIMPLE_EDGE] + SHUFFLE [RS_73] + PartitionCols:_col0 + Select Operator [SEL_69] (rows=144002668 width=135) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_796] (rows=144002668 width=135) + predicate:ws_sold_date_sk is not null + Please refer to the previous TableScan [TS_67] + <-Reducer 29 [CUSTOM_SIMPLE_EDGE] + PARTITION_ONLY_SHUFFLE [RS_189] + Group By Operator [GBY_185] (rows=696954748 width=88) Output:["_col0","_col1","_col2","_col3","_col4"],aggregations:["sum(VALUE._col0)","count(VALUE._col1)"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Reducer 81 [SIMPLE_EDGE] - SHUFFLE [RS_377] + <-Reducer 28 [SIMPLE_EDGE] + SHUFFLE [RS_184] PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_376] (rows=696935432 width=135) + Group By Operator [GBY_183] (rows=1393909496 width=88) Output:["_col0","_col1","_col2","_col3","_col4"],aggregations:["sum(_col3)","count()"],keys:_col0, _col1, _col2 - Select Operator [SEL_374] (rows=696935432 width=135) + Select Operator [SEL_181] (rows=1393909496 width=88) Output:["_col0","_col1","_col2","_col3"] - Merge Join Operator [MERGEJOIN_890] (rows=696935432 width=135) - Conds:RS_370._col1=RS_371._col0(Inner),RS_370._col1=RS_372._col0(Inner),Output:["_col2","_col3","_col8","_col9","_col10"] - <-Map 84 [SIMPLE_EDGE] - SHUFFLE [RS_371] + Merge Join Operator [MERGEJOIN_875] (rows=1393909496 width=88) + Conds:RS_177._col1=RS_178._col0(Inner),RS_177._col1=RS_179._col0(Inner),Output:["_col2","_col3","_col8","_col9","_col10"] + <-Map 96 [SIMPLE_EDGE] + SHUFFLE [RS_178] PartitionCols:_col0 - Select Operator [SEL_284] (rows=462000 width=1436) + Select Operator [SEL_91] (rows=462000 width=1436) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_825] (rows=462000 width=1436) + Filter Operator [FIL_800] (rows=462000 width=1436) predicate:i_item_sk is not null - TableScan [TS_282] (rows=462000 width=1436) - default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_brand_id","i_class_id","i_category_id"] - <-Reducer 80 [SIMPLE_EDGE] - SHUFFLE [RS_370] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_882] (rows=316788826 width=135) - Conds:RS_367._col0=RS_368._col0(Inner),Output:["_col1","_col2","_col3"] - <-Map 79 [SIMPLE_EDGE] - SHUFFLE [RS_367] - PartitionCols:_col0 - Select Operator [SEL_278] (rows=287989836 width=135) - Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_823] (rows=287989836 width=135) - predicate:(cs_item_sk is not null and cs_sold_date_sk is not null) - TableScan [TS_276] (rows=287989836 width=135) - default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:NONE,Output:["cs_sold_date_sk","cs_item_sk","cs_quantity","cs_list_price"] - <-Map 83 [SIMPLE_EDGE] - SHUFFLE [RS_368] - PartitionCols:_col0 - Select Operator [SEL_281] (rows=18262 width=1119) - Output:["_col0"] - Filter Operator [FIL_824] (rows=18262 width=1119) - predicate:((d_year = 2000) and (d_moy = 11) and d_date_sk is not null) - TableScan [TS_279] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_moy"] - <-Reducer 87 [SIMPLE_EDGE] - SHUFFLE [RS_372] + Please refer to the previous TableScan [TS_89] + <-Reducer 27 [SIMPLE_EDGE] + SHUFFLE [RS_179] PartitionCols:_col0 - Group By Operator [GBY_365] (rows=254100 width=1436) + Group By Operator [GBY_172] (rows=254100 width=1436) Output:["_col0"],keys:KEY._col0 - <-Reducer 86 [SIMPLE_EDGE] - SHUFFLE [RS_364] + <-Reducer 26 [SIMPLE_EDGE] + SHUFFLE [RS_171] PartitionCols:_col0 - Group By Operator [GBY_363] (rows=508200 width=1436) + Group By Operator [GBY_170] (rows=508200 width=1436) Output:["_col0"],keys:_col0 - Merge Join Operator [MERGEJOIN_889] (rows=508200 width=1436) - Conds:RS_359._col1, _col2, _col3=RS_360._col0, _col1, _col2(Inner),Output:["_col0"] - <-Map 85 [SIMPLE_EDGE] - SHUFFLE [RS_359] + Merge Join Operator [MERGEJOIN_874] (rows=508200 width=1436) + Conds:RS_166._col1, _col2, _col3=RS_167._col0, _col1, _col2(Inner),Output:["_col0"] + <-Map 96 [SIMPLE_EDGE] + SHUFFLE [RS_166] PartitionCols:_col1, _col2, _col3 - Select Operator [SEL_287] (rows=462000 width=1436) + Select Operator [SEL_94] (rows=462000 width=1436) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_826] (rows=462000 width=1436) + Filter Operator [FIL_801] (rows=462000 width=1436) predicate:(i_brand_id is not null and i_class_id is not null and i_category_id is not null and i_item_sk is not null) - TableScan [TS_285] (rows=462000 width=1436) - default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_brand_id","i_class_id","i_category_id"] - <-Reducer 93 [SIMPLE_EDGE] - SHUFFLE [RS_360] + Please refer to the previous TableScan [TS_89] + <-Reducer 25 [SIMPLE_EDGE] + SHUFFLE [RS_167] PartitionCols:_col0, _col1, _col2 - Select Operator [SEL_358] (rows=1 width=108) + Select Operator [SEL_165] (rows=1 width=108) Output:["_col0","_col1","_col2"] - Filter Operator [FIL_357] (rows=1 width=108) + Filter Operator [FIL_164] (rows=1 width=108) predicate:(_col3 = 3) - Group By Operator [GBY_356] (rows=304916424 width=108) + Group By Operator [GBY_163] (rows=304916424 width=108) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Union 92 [SIMPLE_EDGE] - <-Reducer 105 [CONTAINS] - Reduce Output Operator [RS_355] + <-Union 24 [SIMPLE_EDGE] + <-Reducer 23 [CONTAINS] + Reduce Output Operator [RS_162] PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_354] (rows=609832849 width=108) + Group By Operator [GBY_161] (rows=609832849 width=108) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(_col3)"],keys:_col0, _col1, _col2 - Group By Operator [GBY_350] (rows=87121617 width=135) + Group By Operator [GBY_114] (rows=348477374 width=88) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Reducer 104 [SIMPLE_EDGE] - SHUFFLE [RS_349] + <-Reducer 22 [SIMPLE_EDGE] + SHUFFLE [RS_113] PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_348] (rows=174243235 width=135) + Group By Operator [GBY_112] (rows=696954748 width=88) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(1)"],keys:_col0, _col1, _col2 - Select Operator [SEL_346] (rows=174243235 width=135) + Select Operator [SEL_110] (rows=696954748 width=88) Output:["_col0","_col1","_col2"] - Merge Join Operator [MERGEJOIN_888] (rows=174243235 width=135) - Conds:RS_343._col1=RS_344._col0(Inner),Output:["_col5","_col6","_col7"] - <-Map 107 [SIMPLE_EDGE] - SHUFFLE [RS_344] + Merge Join Operator [MERGEJOIN_869] (rows=696954748 width=88) + Conds:RS_107._col1=RS_108._col0(Inner),Output:["_col5","_col6","_col7"] + <-Map 96 [SIMPLE_EDGE] + SHUFFLE [RS_108] PartitionCols:_col0 - Select Operator [SEL_339] (rows=462000 width=1436) + Select Operator [SEL_103] (rows=462000 width=1436) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_835] (rows=462000 width=1436) + Filter Operator [FIL_804] (rows=462000 width=1436) predicate:(i_item_sk is not null and i_brand_id is not null and i_class_id is not null and i_category_id is not null) - TableScan [TS_337] (rows=462000 width=1436) - default@item,iws,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_brand_id","i_class_id","i_category_id"] - <-Reducer 103 [SIMPLE_EDGE] - SHUFFLE [RS_343] + Please refer to the previous TableScan [TS_89] + <-Reducer 21 [SIMPLE_EDGE] + SHUFFLE [RS_107] PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_887] (rows=158402938 width=135) - Conds:RS_340._col0=RS_341._col0(Inner),Output:["_col1"] - <-Map 102 [SIMPLE_EDGE] - SHUFFLE [RS_340] - PartitionCols:_col0 - Select Operator [SEL_333] (rows=144002668 width=135) - Output:["_col0","_col1"] - Filter Operator [FIL_833] (rows=144002668 width=135) - predicate:(ws_item_sk is not null and ws_sold_date_sk is not null) - TableScan [TS_331] (rows=144002668 width=135) - default@web_sales,web_sales,Tbl:COMPLETE,Col:NONE,Output:["ws_sold_date_sk","ws_item_sk"] - <-Map 106 [SIMPLE_EDGE] - SHUFFLE [RS_341] + Merge Join Operator [MERGEJOIN_868] (rows=633595212 width=88) + Conds:RS_104._col0=RS_105._col0(Inner),Output:["_col1"] + <-Map 17 [SIMPLE_EDGE] + SHUFFLE [RS_105] PartitionCols:_col0 - Select Operator [SEL_336] (rows=8116 width=1119) + Select Operator [SEL_100] (rows=8116 width=1119) Output:["_col0"] - Filter Operator [FIL_834] (rows=8116 width=1119) + Filter Operator [FIL_803] (rows=8116 width=1119) predicate:(d_year BETWEEN 1999 AND 2001 and d_date_sk is not null) - TableScan [TS_334] (rows=73049 width=1119) - default@date_dim,d3,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] - <-Reducer 91 [CONTAINS] - Reduce Output Operator [RS_355] + Please refer to the previous TableScan [TS_3] + <-Map 97 [SIMPLE_EDGE] + SHUFFLE [RS_104] + PartitionCols:_col0 + Select Operator [SEL_97] (rows=575995635 width=88) + Output:["_col0","_col1"] + Filter Operator [FIL_802] (rows=575995635 width=88) + predicate:(ss_item_sk is not null and ss_sold_date_sk is not null) + Please refer to the previous TableScan [TS_95] + <-Reducer 32 [CONTAINS] + Reduce Output Operator [RS_162] PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_354] (rows=609832849 width=108) + Group By Operator [GBY_161] (rows=609832849 width=108) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(_col3)"],keys:_col0, _col1, _col2 - Group By Operator [GBY_307] (rows=348477374 width=88) + Group By Operator [GBY_135] (rows=174233858 width=135) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Reducer 90 [SIMPLE_EDGE] - SHUFFLE [RS_306] + <-Reducer 31 [SIMPLE_EDGE] + SHUFFLE [RS_134] PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_305] (rows=696954748 width=88) + Group By Operator [GBY_133] (rows=348467716 width=135) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(1)"],keys:_col0, _col1, _col2 - Select Operator [SEL_303] (rows=696954748 width=88) + Select Operator [SEL_131] (rows=348467716 width=135) Output:["_col0","_col1","_col2"] - Merge Join Operator [MERGEJOIN_884] (rows=696954748 width=88) - Conds:RS_300._col1=RS_301._col0(Inner),Output:["_col5","_col6","_col7"] - <-Map 95 [SIMPLE_EDGE] - SHUFFLE [RS_301] + Merge Join Operator [MERGEJOIN_871] (rows=348467716 width=135) + Conds:RS_128._col1=RS_129._col0(Inner),Output:["_col5","_col6","_col7"] + <-Map 96 [SIMPLE_EDGE] + SHUFFLE [RS_129] PartitionCols:_col0 - Select Operator [SEL_296] (rows=462000 width=1436) + Select Operator [SEL_124] (rows=462000 width=1436) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_829] (rows=462000 width=1436) + Filter Operator [FIL_807] (rows=462000 width=1436) predicate:(i_item_sk is not null and i_brand_id is not null and i_class_id is not null and i_category_id is not null) - TableScan [TS_294] (rows=462000 width=1436) - default@item,iss,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_brand_id","i_class_id","i_category_id"] - <-Reducer 89 [SIMPLE_EDGE] - SHUFFLE [RS_300] + Please refer to the previous TableScan [TS_89] + <-Reducer 30 [SIMPLE_EDGE] + SHUFFLE [RS_128] PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_883] (rows=633595212 width=88) - Conds:RS_297._col0=RS_298._col0(Inner),Output:["_col1"] - <-Map 88 [SIMPLE_EDGE] - SHUFFLE [RS_297] - PartitionCols:_col0 - Select Operator [SEL_290] (rows=575995635 width=88) - Output:["_col0","_col1"] - Filter Operator [FIL_827] (rows=575995635 width=88) - predicate:(ss_item_sk is not null and ss_sold_date_sk is not null) - TableScan [TS_288] (rows=575995635 width=88) - default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_item_sk"] - <-Map 94 [SIMPLE_EDGE] - SHUFFLE [RS_298] + Merge Join Operator [MERGEJOIN_870] (rows=316788826 width=135) + Conds:RS_125._col0=RS_126._col0(Inner),Output:["_col1"] + <-Map 17 [SIMPLE_EDGE] + SHUFFLE [RS_126] PartitionCols:_col0 - Select Operator [SEL_293] (rows=8116 width=1119) + Select Operator [SEL_121] (rows=8116 width=1119) Output:["_col0"] - Filter Operator [FIL_828] (rows=8116 width=1119) + Filter Operator [FIL_806] (rows=8116 width=1119) predicate:(d_year BETWEEN 1999 AND 2001 and d_date_sk is not null) - TableScan [TS_291] (rows=73049 width=1119) - default@date_dim,d1,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] - <-Reducer 99 [CONTAINS] - Reduce Output Operator [RS_355] + Please refer to the previous TableScan [TS_3] + <-Map 98 [SIMPLE_EDGE] + SHUFFLE [RS_125] + PartitionCols:_col0 + Select Operator [SEL_118] (rows=287989836 width=135) + Output:["_col0","_col1"] + Filter Operator [FIL_805] (rows=287989836 width=135) + predicate:(cs_item_sk is not null and cs_sold_date_sk is not null) + Please refer to the previous TableScan [TS_116] + <-Reducer 35 [CONTAINS] + Reduce Output Operator [RS_162] PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_354] (rows=609832849 width=108) + Group By Operator [GBY_161] (rows=609832849 width=108) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(_col3)"],keys:_col0, _col1, _col2 - Group By Operator [GBY_328] (rows=174233858 width=135) + Group By Operator [GBY_157] (rows=87121617 width=135) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Reducer 98 [SIMPLE_EDGE] - SHUFFLE [RS_327] + <-Reducer 34 [SIMPLE_EDGE] + SHUFFLE [RS_156] PartitionCols:_col0, _col1, _col2 - Group By Operator [GBY_326] (rows=348467716 width=135) + Group By Operator [GBY_155] (rows=174243235 width=135) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(1)"],keys:_col0, _col1, _col2 - Select Operator [SEL_324] (rows=348467716 width=135) + Select Operator [SEL_153] (rows=174243235 width=135) Output:["_col0","_col1","_col2"] - Merge Join Operator [MERGEJOIN_886] (rows=348467716 width=135) - Conds:RS_321._col1=RS_322._col0(Inner),Output:["_col5","_col6","_col7"] - <-Map 101 [SIMPLE_EDGE] - SHUFFLE [RS_322] + Merge Join Operator [MERGEJOIN_873] (rows=174243235 width=135) + Conds:RS_150._col1=RS_151._col0(Inner),Output:["_col5","_col6","_col7"] + <-Map 96 [SIMPLE_EDGE] + SHUFFLE [RS_151] PartitionCols:_col0 - Select Operator [SEL_317] (rows=462000 width=1436) + Select Operator [SEL_146] (rows=462000 width=1436) Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_832] (rows=462000 width=1436) + Filter Operator [FIL_810] (rows=462000 width=1436) predicate:(i_item_sk is not null and i_brand_id is not null and i_class_id is not null and i_category_id is not null) - TableScan [TS_315] (rows=462000 width=1436) - default@item,ics,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_brand_id","i_class_id","i_category_id"] - <-Reducer 97 [SIMPLE_EDGE] - SHUFFLE [RS_321] + Please refer to the previous TableScan [TS_89] + <-Reducer 33 [SIMPLE_EDGE] + SHUFFLE [RS_150] PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_885] (rows=316788826 width=135) - Conds:RS_318._col0=RS_319._col0(Inner),Output:["_col1"] - <-Map 100 [SIMPLE_EDGE] - SHUFFLE [RS_319] + Merge Join Operator [MERGEJOIN_872] (rows=158402938 width=135) + Conds:RS_147._col0=RS_148._col0(Inner),Output:["_col1"] + <-Map 17 [SIMPLE_EDGE] + SHUFFLE [RS_148] PartitionCols:_col0 - Select Operator [SEL_314] (rows=8116 width=1119) + Select Operator [SEL_143] (rows=8116 width=1119) Output:["_col0"] - Filter Operator [FIL_831] (rows=8116 width=1119) + Filter Operator [FIL_809] (rows=8116 width=1119) predicate:(d_year BETWEEN 1999 AND 2001 and d_date_sk is not null) - TableScan [TS_312] (rows=73049 width=1119) - default@date_dim,d2,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] - <-Map 96 [SIMPLE_EDGE] - SHUFFLE [RS_318] + Please refer to the previous TableScan [TS_3] + <-Map 99 [SIMPLE_EDGE] + SHUFFLE [RS_147] PartitionCols:_col0 - Select Operator [SEL_311] (rows=287989836 width=135) + Select Operator [SEL_140] (rows=144002668 width=135) Output:["_col0","_col1"] - Filter Operator [FIL_830] (rows=287989836 width=135) - predicate:(cs_item_sk is not null and cs_sold_date_sk is not null) - TableScan [TS_309] (rows=287989836 width=135) - default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:NONE,Output:["cs_sold_date_sk","cs_item_sk"] + Filter Operator [FIL_808] (rows=144002668 width=135) + predicate:(ws_item_sk is not null and ws_sold_date_sk is not null) + Please refer to the previous TableScan [TS_138] + <-Reducer 92 [SIMPLE_EDGE] + SHUFFLE [RS_177] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_867] (rows=633595212 width=88) + Conds:RS_174._col0=RS_175._col0(Inner),Output:["_col1","_col2","_col3"] + <-Map 93 [SIMPLE_EDGE] + SHUFFLE [RS_175] + PartitionCols:_col0 + Select Operator [SEL_88] (rows=18262 width=1119) + Output:["_col0"] + Filter Operator [FIL_799] (rows=18262 width=1119) + predicate:((d_year = 2000) and (d_moy = 11) and d_date_sk is not null) + Please refer to the previous TableScan [TS_86] + <-Map 91 [SIMPLE_EDGE] + SHUFFLE [RS_174] + PartitionCols:_col0 + Select Operator [SEL_85] (rows=575995635 width=88) + Output:["_col0","_col1","_col2","_col3"] + Filter Operator [FIL_798] (rows=575995635 width=88) + predicate:(ss_item_sk is not null and ss_sold_date_sk is not null) + TableScan [TS_83] (rows=575995635 width=88) + default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_item_sk","ss_quantity","ss_list_price"] + <-Reducer 4 [CUSTOM_SIMPLE_EDGE] + PARTITION_ONLY_SHUFFLE [RS_187] + Select Operator [SEL_44] (rows=1 width=8) + Filter Operator [FIL_43] (rows=1 width=8) + predicate:(sq_count_check(_col0) <= 1) + Group By Operator [GBY_41] (rows=1 width=8) + Output:["_col0"],aggregations:["count()"] + Select Operator [SEL_36] (rows=1 width=8) + Group By Operator [GBY_35] (rows=1 width=8) + Output:["_col0"],aggregations:["count(VALUE._col0)"] + <-Union 3 [CUSTOM_SIMPLE_EDGE] + <-Reducer 2 [CONTAINS] + Reduce Output Operator [RS_34] + Group By Operator [GBY_33] (rows=1 width=8) + Output:["_col0"],aggregations:["count(_col0)"] + Select Operator [SEL_32] (rows=1108786976 width=108) + Output:["_col0"] + Select Operator [SEL_9] (rows=633595212 width=88) + Output:["_col0"] + Merge Join Operator [MERGEJOIN_861] (rows=633595212 width=88) + Conds:RS_6._col0=RS_7._col0(Inner),Output:["_col1"] + <-Map 17 [SIMPLE_EDGE] + SHUFFLE [RS_7] + PartitionCols:_col0 + Select Operator [SEL_5] (rows=8116 width=1119) + Output:["_col0"] + Filter Operator [FIL_787] (rows=8116 width=1119) + predicate:(d_year BETWEEN 1999 AND 2001 and d_date_sk is not null) + Please refer to the previous TableScan [TS_3] + <-Map 1 [SIMPLE_EDGE] + SHUFFLE [RS_6] + PartitionCols:_col0 + Select Operator [SEL_2] (rows=575995635 width=88) + Output:["_col0","_col1"] + Filter Operator [FIL_786] (rows=575995635 width=88) + predicate:ss_sold_date_sk is not null + Please refer to the previous TableScan [TS_0] + <-Reducer 73 [CONTAINS] + Reduce Output Operator [RS_34] + Group By Operator [GBY_33] (rows=1 width=8) + Output:["_col0"],aggregations:["count(_col0)"] + Select Operator [SEL_32] (rows=1108786976 width=108) + Output:["_col0"] + Select Operator [SEL_19] (rows=316788826 width=135) + Output:["_col0"] + Merge Join Operator [MERGEJOIN_862] (rows=316788826 width=135) + Conds:RS_16._col0=RS_17._col0(Inner),Output:["_col1"] + <-Map 76 [SIMPLE_EDGE] + SHUFFLE [RS_17] + PartitionCols:_col0 + Select Operator [SEL_15] (rows=8116 width=1119) + Output:["_col0"] + Filter Operator [FIL_789] (rows=8116 width=1119) + predicate:(d_year BETWEEN 1998 AND 2000 and d_date_sk is not null) + Please refer to the previous TableScan [TS_13] + <-Map 72 [SIMPLE_EDGE] + SHUFFLE [RS_16] + PartitionCols:_col0 + Select Operator [SEL_12] (rows=287989836 width=135) + Output:["_col0","_col1"] + Filter Operator [FIL_788] (rows=287989836 width=135) + predicate:cs_sold_date_sk is not null + Please refer to the previous TableScan [TS_10] + <-Reducer 81 [CONTAINS] + Reduce Output Operator [RS_34] + Group By Operator [GBY_33] (rows=1 width=8) + Output:["_col0"],aggregations:["count(_col0)"] + Select Operator [SEL_32] (rows=1108786976 width=108) + Output:["_col0"] + Select Operator [SEL_31] (rows=158402938 width=135) + Output:["_col0"] + Merge Join Operator [MERGEJOIN_863] (rows=158402938 width=135) + Conds:RS_28._col0=RS_29._col0(Inner),Output:["_col1"] + <-Map 84 [SIMPLE_EDGE] + SHUFFLE [RS_29] + PartitionCols:_col0 + Select Operator [SEL_27] (rows=8116 width=1119) + Output:["_col0"] + Filter Operator [FIL_791] (rows=8116 width=1119) + predicate:(d_year BETWEEN 1998 AND 2000 and d_date_sk is not null) + Please refer to the previous TableScan [TS_25] + <-Map 80 [SIMPLE_EDGE] + SHUFFLE [RS_28] + PartitionCols:_col0 + Select Operator [SEL_24] (rows=144002668 width=135) + Output:["_col0","_col1"] + Filter Operator [FIL_790] (rows=144002668 width=135) + predicate:ws_sold_date_sk is not null + Please refer to the previous TableScan [TS_22] diff --git ql/src/test/results/clientpositive/perf/query16.q.out ql/src/test/results/clientpositive/perf/query16.q.out index 05b1871..cf90c0c 100644 --- ql/src/test/results/clientpositive/perf/query16.q.out +++ ql/src/test/results/clientpositive/perf/query16.q.out @@ -1,4 +1,4 @@ -Warning: Shuffle Join MERGEJOIN[106][tables = [$hdt$_2, $hdt$_3, $hdt$_1, $hdt$_4]] in Stage 'Reducer 18' is a cross product +Warning: Shuffle Join MERGEJOIN[106][tables = [$hdt$_2, $hdt$_3, $hdt$_1, $hdt$_4]] in Stage 'Reducer 17' is a cross product PREHOOK: query: explain select count(distinct cs_order_number) as `order count` ,sum(cs_ext_ship_cost) as `total shipping cost` @@ -61,10 +61,10 @@ Plan optimized by CBO. Vertex dependency in root stage Reducer 13 <- Map 12 (SIMPLE_EDGE) -Reducer 15 <- Map 14 (SIMPLE_EDGE), Reducer 19 (SIMPLE_EDGE) +Reducer 15 <- Map 14 (SIMPLE_EDGE), Reducer 18 (SIMPLE_EDGE) Reducer 16 <- Reducer 15 (SIMPLE_EDGE) -Reducer 18 <- Map 17 (CUSTOM_SIMPLE_EDGE), Map 20 (CUSTOM_SIMPLE_EDGE), Map 21 (CUSTOM_SIMPLE_EDGE), Map 22 (CUSTOM_SIMPLE_EDGE) -Reducer 19 <- Reducer 18 (SIMPLE_EDGE) +Reducer 17 <- Map 14 (CUSTOM_SIMPLE_EDGE), Map 19 (CUSTOM_SIMPLE_EDGE), Map 20 (CUSTOM_SIMPLE_EDGE), Map 21 (CUSTOM_SIMPLE_EDGE) +Reducer 18 <- Reducer 17 (SIMPLE_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) @@ -116,27 +116,32 @@ Stage-0 Merge Join Operator [MERGEJOIN_110] (rows=5072854730221289472 width=1) Conds:RS_39._col1=RS_40._col1(Inner),Output:["_col0","_col2","_col3"] <-Map 14 [SIMPLE_EDGE] - SHUFFLE [RS_39] + PARTITION_ONLY_SHUFFLE [RS_39] PartitionCols:_col1 Select Operator [SEL_20] (rows=287989836 width=135) Output:["_col0","_col1"] TableScan [TS_19] (rows=287989836 width=135) default@catalog_sales,cs2,Tbl:COMPLETE,Col:NONE,Output:["cs_warehouse_sk","cs_order_number"] - <-Reducer 19 [SIMPLE_EDGE] + <-Reducer 18 [SIMPLE_EDGE] SHUFFLE [RS_40] PartitionCols:_col1 Select Operator [SEL_38] (rows=4611686018427387903 width=1) Output:["_col0","_col1"] Group By Operator [GBY_37] (rows=4611686018427387903 width=1) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Reducer 18 [SIMPLE_EDGE] + <-Reducer 17 [SIMPLE_EDGE] SHUFFLE [RS_36] PartitionCols:_col0, _col1 Group By Operator [GBY_35] (rows=9223372036854775807 width=1) Output:["_col0","_col1"],keys:_col4, _col3 Merge Join Operator [MERGEJOIN_106] (rows=9223372036854775807 width=1) Conds:(Inner),(Inner),(Inner),Output:["_col3","_col4"] - <-Map 17 [CUSTOM_SIMPLE_EDGE] + <-Map 14 [CUSTOM_SIMPLE_EDGE] + PARTITION_ONLY_SHUFFLE [RS_32] + Select Operator [SEL_28] (rows=287989836 width=135) + Output:["_col0","_col1"] + Please refer to the previous TableScan [TS_19] + <-Map 19 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_29] Select Operator [SEL_22] (rows=73049 width=4) TableScan [TS_21] (rows=73049 width=1119) @@ -151,12 +156,6 @@ Stage-0 Select Operator [SEL_26] (rows=40000000 width=4) TableScan [TS_25] (rows=40000000 width=1014) default@customer_address,customer_address,Tbl:COMPLETE,Col:COMPLETE - <-Map 22 [CUSTOM_SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_32] - Select Operator [SEL_28] (rows=287989836 width=135) - Output:["_col0","_col1"] - TableScan [TS_27] (rows=287989836 width=135) - default@catalog_sales,cs1,Tbl:COMPLETE,Col:NONE,Output:["cs_warehouse_sk","cs_order_number"] <-Reducer 5 [SIMPLE_EDGE] SHUFFLE [RS_60] PartitionCols:_col3, _col4 diff --git ql/src/test/results/clientpositive/perf/query17.q.out ql/src/test/results/clientpositive/perf/query17.q.out index 651ba57..2f32a9f 100644 --- ql/src/test/results/clientpositive/perf/query17.q.out +++ ql/src/test/results/clientpositive/perf/query17.q.out @@ -6,14 +6,14 @@ Plan optimized by CBO. Vertex dependency in root stage Reducer 10 <- Map 14 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) -Reducer 11 <- Map 15 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE) -Reducer 12 <- Map 16 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE) +Reducer 12 <- Map 11 (SIMPLE_EDGE), Map 13 (SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) -Reducer 3 <- Reducer 12 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 17 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 3 <- Reducer 10 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 4 <- Map 15 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) -Reducer 9 <- Map 13 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) +Reducer 8 <- Map 7 (SIMPLE_EDGE), Reducer 12 (SIMPLE_EDGE) +Reducer 9 <- Map 7 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) Stage-0 Fetch Operator @@ -38,7 +38,7 @@ Stage-0 Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11"],aggregations:["count(_col15)","avg(_col15)","stddev_samp(_col15)","count(_col20)","avg(_col20)","stddev_samp(_col20)","count(_col3)","avg(_col3)","stddev_samp(_col3)"],keys:_col24, _col25, _col7 Merge Join Operator [MERGEJOIN_100] (rows=1020411534 width=88) Conds:RS_43._col11=RS_44._col0(Inner),Output:["_col3","_col7","_col15","_col20","_col24","_col25"] - <-Map 17 [SIMPLE_EDGE] + <-Map 15 [SIMPLE_EDGE] SHUFFLE [RS_44] PartitionCols:_col0 Select Operator [SEL_36] (rows=462000 width=1436) @@ -52,14 +52,14 @@ Stage-0 PartitionCols:_col11 Merge Join Operator [MERGEJOIN_99] (rows=927646829 width=88) Conds:RS_40._col1, _col2=RS_41._col12, _col11(Inner),Output:["_col3","_col7","_col11","_col15","_col20"] - <-Reducer 12 [SIMPLE_EDGE] + <-Reducer 10 [SIMPLE_EDGE] SHUFFLE [RS_41] PartitionCols:_col12, _col11 Select Operator [SEL_33] (rows=843315281 width=88) Output:["_col1","_col5","_col9","_col11","_col12","_col14"] Merge Join Operator [MERGEJOIN_98] (rows=843315281 width=88) Conds:RS_30._col3=RS_31._col0(Inner),Output:["_col1","_col5","_col7","_col8","_col10","_col16"] - <-Map 16 [SIMPLE_EDGE] + <-Map 14 [SIMPLE_EDGE] SHUFFLE [RS_31] PartitionCols:_col0 Select Operator [SEL_20] (rows=1704 width=1910) @@ -68,39 +68,47 @@ Stage-0 predicate:s_store_sk is not null TableScan [TS_18] (rows=1704 width=1910) default@store,store,Tbl:COMPLETE,Col:NONE,Output:["s_store_sk","s_state"] - <-Reducer 11 [SIMPLE_EDGE] + <-Reducer 9 [SIMPLE_EDGE] SHUFFLE [RS_30] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_97] (rows=766650239 width=88) Conds:RS_27._col6=RS_28._col0(Inner),Output:["_col1","_col3","_col5","_col7","_col8","_col10"] - <-Map 15 [SIMPLE_EDGE] + <-Map 7 [SIMPLE_EDGE] SHUFFLE [RS_28] PartitionCols:_col0 Select Operator [SEL_17] (rows=36525 width=1119) Output:["_col0"] Filter Operator [FIL_91] (rows=36525 width=1119) predicate:((d_quarter_name) IN ('2000Q1', '2000Q2', '2000Q3') and d_date_sk is not null) - TableScan [TS_15] (rows=73049 width=1119) - default@date_dim,d2,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_quarter_name"] - <-Reducer 10 [SIMPLE_EDGE] + TableScan [TS_3] (rows=73049 width=1119) + default@date_dim,d3,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_quarter_name"] + <-Reducer 8 [SIMPLE_EDGE] SHUFFLE [RS_27] PartitionCols:_col6 Merge Join Operator [MERGEJOIN_96] (rows=696954748 width=88) Conds:RS_24._col0=RS_25._col0(Inner),Output:["_col1","_col3","_col5","_col6","_col7","_col8","_col10"] - <-Map 14 [SIMPLE_EDGE] + <-Map 7 [SIMPLE_EDGE] SHUFFLE [RS_25] PartitionCols:_col0 Select Operator [SEL_14] (rows=36524 width=1119) Output:["_col0"] Filter Operator [FIL_90] (rows=36524 width=1119) predicate:((d_quarter_name = '2000Q1') and d_date_sk is not null) - TableScan [TS_12] (rows=73049 width=1119) - default@date_dim,d1,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_quarter_name"] - <-Reducer 9 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_3] + <-Reducer 12 [SIMPLE_EDGE] SHUFFLE [RS_24] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_95] (rows=633595212 width=88) Conds:RS_21._col1, _col2, _col4=RS_22._col1, _col2, _col3(Inner),Output:["_col0","_col1","_col3","_col5","_col6","_col7","_col8","_col10"] + <-Map 11 [SIMPLE_EDGE] + SHUFFLE [RS_21] + PartitionCols:_col1, _col2, _col4 + Select Operator [SEL_8] (rows=575995635 width=88) + Output:["_col0","_col1","_col2","_col3","_col4","_col5"] + Filter Operator [FIL_88] (rows=575995635 width=88) + predicate:(ss_item_sk is not null and ss_customer_sk is not null and ss_ticket_number is not null and ss_sold_date_sk is not null and ss_store_sk is not null) + TableScan [TS_6] (rows=575995635 width=88) + default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_item_sk","ss_customer_sk","ss_store_sk","ss_ticket_number","ss_quantity"] <-Map 13 [SIMPLE_EDGE] SHUFFLE [RS_22] PartitionCols:_col1, _col2, _col3 @@ -110,20 +118,19 @@ Stage-0 predicate:(sr_item_sk is not null and sr_customer_sk is not null and sr_ticket_number is not null and sr_returned_date_sk is not null) TableScan [TS_9] (rows=57591150 width=77) default@store_returns,store_returns,Tbl:COMPLETE,Col:NONE,Output:["sr_returned_date_sk","sr_item_sk","sr_customer_sk","sr_ticket_number","sr_return_quantity"] - <-Map 8 [SIMPLE_EDGE] - SHUFFLE [RS_21] - PartitionCols:_col1, _col2, _col4 - Select Operator [SEL_8] (rows=575995635 width=88) - Output:["_col0","_col1","_col2","_col3","_col4","_col5"] - Filter Operator [FIL_88] (rows=575995635 width=88) - predicate:(ss_item_sk is not null and ss_customer_sk is not null and ss_ticket_number is not null and ss_sold_date_sk is not null and ss_store_sk is not null) - TableScan [TS_6] (rows=575995635 width=88) - default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_item_sk","ss_customer_sk","ss_store_sk","ss_ticket_number","ss_quantity"] <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_40] PartitionCols:_col1, _col2 Merge Join Operator [MERGEJOIN_94] (rows=316788826 width=135) Conds:RS_37._col0=RS_38._col0(Inner),Output:["_col1","_col2","_col3"] + <-Map 7 [SIMPLE_EDGE] + SHUFFLE [RS_38] + PartitionCols:_col0 + Select Operator [SEL_5] (rows=36525 width=1119) + Output:["_col0"] + Filter Operator [FIL_87] (rows=36525 width=1119) + predicate:((d_quarter_name) IN ('2000Q1', '2000Q2', '2000Q3') and d_date_sk is not null) + Please refer to the previous TableScan [TS_3] <-Map 1 [SIMPLE_EDGE] SHUFFLE [RS_37] PartitionCols:_col0 @@ -133,13 +140,4 @@ Stage-0 predicate:(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=135) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:NONE,Output:["cs_sold_date_sk","cs_bill_customer_sk","cs_item_sk","cs_quantity"] - <-Map 7 [SIMPLE_EDGE] - SHUFFLE [RS_38] - PartitionCols:_col0 - Select Operator [SEL_5] (rows=36525 width=1119) - Output:["_col0"] - Filter Operator [FIL_87] (rows=36525 width=1119) - predicate:((d_quarter_name) IN ('2000Q1', '2000Q2', '2000Q3') and d_date_sk is not null) - TableScan [TS_3] (rows=73049 width=1119) - default@date_dim,d3,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_quarter_name"] diff --git ql/src/test/results/clientpositive/perf/query23.q.out ql/src/test/results/clientpositive/perf/query23.q.out index 7a3201e..5794301 100644 --- ql/src/test/results/clientpositive/perf/query23.q.out +++ ql/src/test/results/clientpositive/perf/query23.q.out @@ -1,5 +1,5 @@ -Warning: Shuffle Join MERGEJOIN[369][tables = [$hdt$_1, $hdt$_2, $hdt$_0]] in Stage 'Reducer 49' is a cross product -Warning: Shuffle Join MERGEJOIN[367][tables = [$hdt$_1, $hdt$_2, $hdt$_0]] in Stage 'Reducer 19' is a cross product +Warning: Shuffle Join MERGEJOIN[369][tables = [$hdt$_1, $hdt$_2, $hdt$_0]] in Stage 'Reducer 30' is a cross product +Warning: Shuffle Join MERGEJOIN[367][tables = [$hdt$_1, $hdt$_2, $hdt$_0]] in Stage 'Reducer 25' 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 from store_sales @@ -103,41 +103,41 @@ POSTHOOK: type: QUERY Plan optimized by CBO. Vertex dependency in root stage -Reducer 10 <- Map 13 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) -Reducer 11 <- Reducer 10 (SIMPLE_EDGE) -Reducer 15 <- Map 14 (SIMPLE_EDGE), Map 20 (SIMPLE_EDGE) -Reducer 16 <- Map 21 (SIMPLE_EDGE), Reducer 15 (SIMPLE_EDGE) +Reducer 10 <- Reducer 30 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE), Union 5 (CONTAINS) +Reducer 12 <- Map 11 (SIMPLE_EDGE), Map 18 (SIMPLE_EDGE) +Reducer 13 <- Map 19 (SIMPLE_EDGE), Reducer 12 (SIMPLE_EDGE) +Reducer 14 <- Reducer 13 (SIMPLE_EDGE) +Reducer 15 <- Map 11 (SIMPLE_EDGE), Map 18 (SIMPLE_EDGE) +Reducer 16 <- Map 19 (SIMPLE_EDGE), Reducer 15 (SIMPLE_EDGE) Reducer 17 <- Reducer 16 (SIMPLE_EDGE) -Reducer 18 <- Reducer 17 (CUSTOM_SIMPLE_EDGE) -Reducer 19 <- Reducer 18 (CUSTOM_SIMPLE_EDGE), Reducer 26 (CUSTOM_SIMPLE_EDGE), Reducer 31 (CUSTOM_SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) -Reducer 23 <- Map 22 (SIMPLE_EDGE), Map 27 (SIMPLE_EDGE) -Reducer 24 <- Map 28 (SIMPLE_EDGE), Reducer 23 (SIMPLE_EDGE) -Reducer 25 <- Reducer 24 (SIMPLE_EDGE) -Reducer 26 <- Reducer 25 (CUSTOM_SIMPLE_EDGE) -Reducer 3 <- Reducer 11 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 30 <- Map 29 (SIMPLE_EDGE), Map 32 (SIMPLE_EDGE) -Reducer 31 <- Reducer 30 (SIMPLE_EDGE) -Reducer 34 <- Map 33 (SIMPLE_EDGE), Map 37 (SIMPLE_EDGE) -Reducer 35 <- Reducer 34 (SIMPLE_EDGE), Reducer 41 (SIMPLE_EDGE) -Reducer 36 <- Reducer 35 (SIMPLE_EDGE), Reducer 49 (SIMPLE_EDGE), Union 5 (CONTAINS) -Reducer 39 <- Map 38 (SIMPLE_EDGE), Map 42 (SIMPLE_EDGE) -Reducer 4 <- Reducer 19 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE), Union 5 (CONTAINS) -Reducer 40 <- Map 43 (SIMPLE_EDGE), Reducer 39 (SIMPLE_EDGE) -Reducer 41 <- Reducer 40 (SIMPLE_EDGE) -Reducer 45 <- Map 44 (SIMPLE_EDGE), Map 50 (SIMPLE_EDGE) -Reducer 46 <- Map 51 (SIMPLE_EDGE), Reducer 45 (SIMPLE_EDGE) -Reducer 47 <- Reducer 46 (SIMPLE_EDGE) -Reducer 48 <- Reducer 47 (CUSTOM_SIMPLE_EDGE) -Reducer 49 <- Reducer 48 (CUSTOM_SIMPLE_EDGE), Reducer 56 (CUSTOM_SIMPLE_EDGE), Reducer 61 (CUSTOM_SIMPLE_EDGE) -Reducer 53 <- Map 52 (SIMPLE_EDGE), Map 57 (SIMPLE_EDGE) -Reducer 54 <- Map 58 (SIMPLE_EDGE), Reducer 53 (SIMPLE_EDGE) -Reducer 55 <- Reducer 54 (SIMPLE_EDGE) -Reducer 56 <- Reducer 55 (CUSTOM_SIMPLE_EDGE) +Reducer 21 <- Map 20 (SIMPLE_EDGE), Map 31 (SIMPLE_EDGE) +Reducer 22 <- Map 40 (SIMPLE_EDGE), Reducer 21 (SIMPLE_EDGE) +Reducer 23 <- Reducer 22 (SIMPLE_EDGE) +Reducer 24 <- Reducer 23 (CUSTOM_SIMPLE_EDGE) +Reducer 25 <- Reducer 24 (CUSTOM_SIMPLE_EDGE), Reducer 35 (CUSTOM_SIMPLE_EDGE), Reducer 42 (CUSTOM_SIMPLE_EDGE) +Reducer 26 <- Map 20 (SIMPLE_EDGE), Map 31 (SIMPLE_EDGE) +Reducer 27 <- Map 40 (SIMPLE_EDGE), Reducer 26 (SIMPLE_EDGE) +Reducer 28 <- Reducer 27 (SIMPLE_EDGE) +Reducer 29 <- Reducer 28 (CUSTOM_SIMPLE_EDGE) +Reducer 3 <- Reducer 14 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 30 <- Reducer 29 (CUSTOM_SIMPLE_EDGE), Reducer 39 (CUSTOM_SIMPLE_EDGE), Reducer 44 (CUSTOM_SIMPLE_EDGE) +Reducer 32 <- Map 31 (SIMPLE_EDGE), Map 45 (SIMPLE_EDGE) +Reducer 33 <- Map 40 (SIMPLE_EDGE), Reducer 32 (SIMPLE_EDGE) +Reducer 34 <- Reducer 33 (SIMPLE_EDGE) +Reducer 35 <- Reducer 34 (CUSTOM_SIMPLE_EDGE) +Reducer 36 <- Map 31 (SIMPLE_EDGE), Map 45 (SIMPLE_EDGE) +Reducer 37 <- Map 40 (SIMPLE_EDGE), Reducer 36 (SIMPLE_EDGE) +Reducer 38 <- Reducer 37 (SIMPLE_EDGE) +Reducer 39 <- Reducer 38 (CUSTOM_SIMPLE_EDGE) +Reducer 4 <- Reducer 25 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE), Union 5 (CONTAINS) +Reducer 41 <- Map 40 (SIMPLE_EDGE), Map 46 (SIMPLE_EDGE) +Reducer 42 <- Reducer 41 (SIMPLE_EDGE) +Reducer 43 <- Map 40 (SIMPLE_EDGE), Map 46 (SIMPLE_EDGE) +Reducer 44 <- Reducer 43 (SIMPLE_EDGE) Reducer 6 <- Union 5 (CUSTOM_SIMPLE_EDGE) -Reducer 60 <- Map 59 (SIMPLE_EDGE), Map 62 (SIMPLE_EDGE) -Reducer 61 <- Reducer 60 (SIMPLE_EDGE) -Reducer 9 <- Map 12 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) +Reducer 8 <- Map 47 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) +Reducer 9 <- Reducer 17 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) Stage-0 Fetch Operator @@ -150,7 +150,7 @@ Stage-0 Group By Operator [GBY_243] (rows=1 width=112) Output:["_col0"],aggregations:["sum(VALUE._col0)"] <-Union 5 [CUSTOM_SIMPLE_EDGE] - <-Reducer 36 [CONTAINS] + <-Reducer 10 [CONTAINS] Reduce Output Operator [RS_242] Group By Operator [GBY_241] (rows=1 width=112) Output:["_col0"],aggregations:["sum(_col0)"] @@ -158,89 +158,7 @@ Stage-0 Output:["_col0"] Merge Join Operator [MERGEJOIN_370] (rows=191667562 width=135) Conds:RS_234._col2=RS_235._col0(Inner),Output:["_col3","_col4"] - <-Reducer 35 [SIMPLE_EDGE] - SHUFFLE [RS_234] - PartitionCols:_col2 - Merge Join Operator [MERGEJOIN_366] (rows=174243235 width=135) - Conds:RS_231._col1=RS_232._col0(Inner),Output:["_col2","_col3","_col4"] - <-Reducer 34 [SIMPLE_EDGE] - SHUFFLE [RS_231] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_357] (rows=158402938 width=135) - Conds:RS_228._col0=RS_229._col0(Inner),Output:["_col1","_col2","_col3","_col4"] - <-Map 33 [SIMPLE_EDGE] - SHUFFLE [RS_228] - PartitionCols:_col0 - Select Operator [SEL_121] (rows=144002668 width=135) - Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_334] (rows=144002668 width=135) - predicate:(ws_item_sk is not null and ws_bill_customer_sk is not null and ws_sold_date_sk is not null) - TableScan [TS_119] (rows=144002668 width=135) - default@web_sales,web_sales,Tbl:COMPLETE,Col:NONE,Output:["ws_sold_date_sk","ws_item_sk","ws_bill_customer_sk","ws_quantity","ws_list_price"] - <-Map 37 [SIMPLE_EDGE] - SHUFFLE [RS_229] - PartitionCols:_col0 - Select Operator [SEL_124] (rows=18262 width=1119) - Output:["_col0"] - Filter Operator [FIL_335] (rows=18262 width=1119) - predicate:((d_year = 1999) and (d_moy = 1) and d_date_sk is not null) - TableScan [TS_122] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_moy"] - <-Reducer 41 [SIMPLE_EDGE] - SHUFFLE [RS_232] - PartitionCols:_col0 - Group By Operator [GBY_150] (rows=58079562 width=88) - Output:["_col0"],keys:_col1 - Select Operator [SEL_146] (rows=116159124 width=88) - Output:["_col1"] - Filter Operator [FIL_145] (rows=116159124 width=88) - predicate:(_col3 > 4) - Select Operator [SEL_348] (rows=348477374 width=88) - Output:["_col0","_col3"] - Group By Operator [GBY_144] (rows=348477374 width=88) - Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Reducer 40 [SIMPLE_EDGE] - SHUFFLE [RS_143] - PartitionCols:_col0 - Group By Operator [GBY_142] (rows=696954748 width=88) - Output:["_col0","_col1","_col2","_col3"],aggregations:["count()"],keys:_col1, _col0, _col2 - Select Operator [SEL_140] (rows=696954748 width=88) - Output:["_col0","_col1","_col2"] - Merge Join Operator [MERGEJOIN_359] (rows=696954748 width=88) - Conds:RS_137._col1=RS_138._col0(Inner),Output:["_col3","_col5","_col6"] - <-Map 43 [SIMPLE_EDGE] - SHUFFLE [RS_138] - PartitionCols:_col0 - Select Operator [SEL_133] (rows=462000 width=1436) - Output:["_col0","_col1"] - Filter Operator [FIL_338] (rows=462000 width=1436) - predicate:i_item_sk is not null - TableScan [TS_131] (rows=462000 width=1436) - default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_item_desc"] - <-Reducer 39 [SIMPLE_EDGE] - SHUFFLE [RS_137] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_358] (rows=633595212 width=88) - Conds:RS_134._col0=RS_135._col0(Inner),Output:["_col1","_col3"] - <-Map 38 [SIMPLE_EDGE] - SHUFFLE [RS_134] - PartitionCols:_col0 - Select Operator [SEL_127] (rows=575995635 width=88) - Output:["_col0","_col1"] - Filter Operator [FIL_336] (rows=575995635 width=88) - predicate:(ss_sold_date_sk is not null and ss_item_sk is not null) - TableScan [TS_125] (rows=575995635 width=88) - default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_item_sk"] - <-Map 42 [SIMPLE_EDGE] - SHUFFLE [RS_135] - PartitionCols:_col0 - Select Operator [SEL_130] (rows=36525 width=1119) - Output:["_col0","_col1"] - Filter Operator [FIL_337] (rows=36525 width=1119) - predicate:((d_year) IN (1999, 2000, 2001, 2002) and d_date_sk is not null) - TableScan [TS_128] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_date","d_year"] - <-Reducer 49 [SIMPLE_EDGE] + <-Reducer 30 [SIMPLE_EDGE] SHUFFLE [RS_235] PartitionCols:_col0 Select Operator [SEL_227] (rows=105599202 width=321) @@ -249,21 +167,21 @@ Stage-0 predicate:(_col3 > (0.95 * _col1)) Merge Join Operator [MERGEJOIN_369] (rows=316797606 width=321) Conds:(Inner),(Inner),Output:["_col1","_col2","_col3"] - <-Reducer 48 [CUSTOM_SIMPLE_EDGE] + <-Reducer 29 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_222] Select Operator [SEL_180] (rows=1 width=8) Filter Operator [FIL_179] (rows=1 width=8) predicate:(sq_count_check(_col0) <= 1) Group By Operator [GBY_177] (rows=1 width=8) Output:["_col0"],aggregations:["count(VALUE._col0)"] - <-Reducer 47 [CUSTOM_SIMPLE_EDGE] + <-Reducer 28 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_176] Group By Operator [GBY_175] (rows=1 width=8) Output:["_col0"],aggregations:["count()"] Select Operator [SEL_172] (rows=348477374 width=88) Group By Operator [GBY_171] (rows=348477374 width=88) Output:["_col0"],keys:KEY._col0 - <-Reducer 46 [SIMPLE_EDGE] + <-Reducer 27 [SIMPLE_EDGE] SHUFFLE [RS_170] PartitionCols:_col0 Group By Operator [GBY_169] (rows=696954748 width=88) @@ -272,43 +190,43 @@ Stage-0 Output:["_col0"] Merge Join Operator [MERGEJOIN_361] (rows=696954748 width=88) Conds:RS_164._col1=RS_165._col0(Inner),Output:["_col6"] - <-Map 51 [SIMPLE_EDGE] + <-Map 40 [SIMPLE_EDGE] SHUFFLE [RS_165] PartitionCols:_col0 Select Operator [SEL_160] (rows=80000000 width=860) Output:["_col0"] Filter Operator [FIL_341] (rows=80000000 width=860) predicate:c_customer_sk is not null - TableScan [TS_158] (rows=80000000 width=860) + TableScan [TS_39] (rows=80000000 width=860) default@customer,customer,Tbl:COMPLETE,Col:NONE,Output:["c_customer_sk"] - <-Reducer 45 [SIMPLE_EDGE] + <-Reducer 26 [SIMPLE_EDGE] SHUFFLE [RS_164] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_360] (rows=633595212 width=88) Conds:RS_161._col0=RS_162._col0(Inner),Output:["_col1"] - <-Map 44 [SIMPLE_EDGE] - SHUFFLE [RS_161] - PartitionCols:_col0 - Select Operator [SEL_154] (rows=575995635 width=88) - Output:["_col0","_col1"] - Filter Operator [FIL_339] (rows=575995635 width=88) - predicate:(ss_customer_sk is not null and ss_sold_date_sk is not null) - TableScan [TS_152] (rows=575995635 width=88) - default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_customer_sk"] - <-Map 50 [SIMPLE_EDGE] + <-Map 31 [SIMPLE_EDGE] SHUFFLE [RS_162] PartitionCols:_col0 Select Operator [SEL_157] (rows=36525 width=1119) Output:["_col0"] Filter Operator [FIL_340] (rows=36525 width=1119) predicate:((d_year) IN (1999, 2000, 2001, 2002) and d_date_sk is not null) - TableScan [TS_155] (rows=73049 width=1119) + TableScan [TS_36] (rows=73049 width=1119) default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] - <-Reducer 56 [CUSTOM_SIMPLE_EDGE] + <-Map 20 [SIMPLE_EDGE] + SHUFFLE [RS_161] + PartitionCols:_col0 + Select Operator [SEL_154] (rows=575995635 width=88) + Output:["_col0","_col1"] + Filter Operator [FIL_339] (rows=575995635 width=88) + predicate:(ss_customer_sk is not null and ss_sold_date_sk is not null) + TableScan [TS_33] (rows=575995635 width=88) + default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_customer_sk"] + <-Reducer 39 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_223] Group By Operator [GBY_205] (rows=1 width=224) Output:["_col0"],aggregations:["max(VALUE._col0)"] - <-Reducer 55 [CUSTOM_SIMPLE_EDGE] + <-Reducer 38 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_204] Group By Operator [GBY_203] (rows=1 width=224) Output:["_col0"],aggregations:["max(_col1)"] @@ -316,7 +234,7 @@ Stage-0 Output:["_col1"] Group By Operator [GBY_200] (rows=348477374 width=88) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Reducer 54 [SIMPLE_EDGE] + <-Reducer 37 [SIMPLE_EDGE] SHUFFLE [RS_199] PartitionCols:_col0 Group By Operator [GBY_198] (rows=696954748 width=88) @@ -325,43 +243,41 @@ Stage-0 Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_363] (rows=696954748 width=88) Conds:RS_193._col1=RS_194._col0(Inner),Output:["_col2","_col3","_col6"] - <-Map 58 [SIMPLE_EDGE] + <-Map 40 [SIMPLE_EDGE] SHUFFLE [RS_194] PartitionCols:_col0 Select Operator [SEL_189] (rows=80000000 width=860) Output:["_col0"] Filter Operator [FIL_344] (rows=80000000 width=860) predicate:c_customer_sk is not null - TableScan [TS_187] (rows=80000000 width=860) - default@customer,customer,Tbl:COMPLETE,Col:NONE,Output:["c_customer_sk"] - <-Reducer 53 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_39] + <-Reducer 36 [SIMPLE_EDGE] SHUFFLE [RS_193] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_362] (rows=633595212 width=88) Conds:RS_190._col0=RS_191._col0(Inner),Output:["_col1","_col2","_col3"] - <-Map 52 [SIMPLE_EDGE] + <-Map 31 [SIMPLE_EDGE] + SHUFFLE [RS_191] + PartitionCols:_col0 + Select Operator [SEL_186] (rows=36525 width=1119) + Output:["_col0"] + Filter Operator [FIL_343] (rows=36525 width=1119) + predicate:((d_year) IN (1999, 2000, 2001, 2002) and d_date_sk is not null) + Please refer to the previous TableScan [TS_36] + <-Map 45 [SIMPLE_EDGE] SHUFFLE [RS_190] PartitionCols:_col0 Select Operator [SEL_183] (rows=575995635 width=88) Output:["_col0","_col1","_col2","_col3"] Filter Operator [FIL_342] (rows=575995635 width=88) predicate:(ss_customer_sk is not null and ss_sold_date_sk is not null) - TableScan [TS_181] (rows=575995635 width=88) + TableScan [TS_62] (rows=575995635 width=88) default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_customer_sk","ss_quantity","ss_sales_price"] - <-Map 57 [SIMPLE_EDGE] - SHUFFLE [RS_191] - PartitionCols:_col0 - Select Operator [SEL_186] (rows=36525 width=1119) - Output:["_col0"] - Filter Operator [FIL_343] (rows=36525 width=1119) - predicate:((d_year) IN (1999, 2000, 2001, 2002) and d_date_sk is not null) - TableScan [TS_184] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] - <-Reducer 61 [CUSTOM_SIMPLE_EDGE] + <-Reducer 44 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_224] Group By Operator [GBY_220] (rows=316797606 width=88) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Reducer 60 [SIMPLE_EDGE] + <-Reducer 43 [SIMPLE_EDGE] SHUFFLE [RS_219] PartitionCols:_col0 Group By Operator [GBY_218] (rows=633595212 width=88) @@ -370,24 +286,105 @@ Stage-0 Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_364] (rows=633595212 width=88) Conds:RS_213._col0=RS_214._col0(Inner),Output:["_col1","_col2","_col3"] - <-Map 59 [SIMPLE_EDGE] + <-Map 40 [SIMPLE_EDGE] + SHUFFLE [RS_214] + PartitionCols:_col0 + Select Operator [SEL_212] (rows=80000000 width=860) + Output:["_col0"] + Filter Operator [FIL_346] (rows=80000000 width=860) + predicate:c_customer_sk is not null + Please refer to the previous TableScan [TS_39] + <-Map 46 [SIMPLE_EDGE] SHUFFLE [RS_213] PartitionCols:_col0 Select Operator [SEL_209] (rows=575995635 width=88) Output:["_col0","_col1","_col2"] Filter Operator [FIL_345] (rows=575995635 width=88) predicate:ss_customer_sk is not null - TableScan [TS_207] (rows=575995635 width=88) + TableScan [TS_88] (rows=575995635 width=88) default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_customer_sk","ss_quantity","ss_sales_price"] - <-Map 62 [SIMPLE_EDGE] - SHUFFLE [RS_214] - PartitionCols:_col0 - Select Operator [SEL_212] (rows=80000000 width=860) - Output:["_col0"] - Filter Operator [FIL_346] (rows=80000000 width=860) - predicate:c_customer_sk is not null - TableScan [TS_210] (rows=80000000 width=860) - default@customer,customer,Tbl:COMPLETE,Col:NONE,Output:["c_customer_sk"] + <-Reducer 9 [SIMPLE_EDGE] + SHUFFLE [RS_234] + PartitionCols:_col2 + Merge Join Operator [MERGEJOIN_366] (rows=174243235 width=135) + Conds:RS_231._col1=RS_232._col0(Inner),Output:["_col2","_col3","_col4"] + <-Reducer 17 [SIMPLE_EDGE] + SHUFFLE [RS_232] + PartitionCols:_col0 + Group By Operator [GBY_150] (rows=58079562 width=88) + Output:["_col0"],keys:_col1 + Select Operator [SEL_146] (rows=116159124 width=88) + Output:["_col1"] + Filter Operator [FIL_145] (rows=116159124 width=88) + predicate:(_col3 > 4) + Select Operator [SEL_348] (rows=348477374 width=88) + Output:["_col0","_col3"] + Group By Operator [GBY_144] (rows=348477374 width=88) + Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 + <-Reducer 16 [SIMPLE_EDGE] + SHUFFLE [RS_143] + PartitionCols:_col0 + Group By Operator [GBY_142] (rows=696954748 width=88) + Output:["_col0","_col1","_col2","_col3"],aggregations:["count()"],keys:_col1, _col0, _col2 + Select Operator [SEL_140] (rows=696954748 width=88) + Output:["_col0","_col1","_col2"] + Merge Join Operator [MERGEJOIN_359] (rows=696954748 width=88) + Conds:RS_137._col1=RS_138._col0(Inner),Output:["_col3","_col5","_col6"] + <-Map 19 [SIMPLE_EDGE] + SHUFFLE [RS_138] + PartitionCols:_col0 + Select Operator [SEL_133] (rows=462000 width=1436) + Output:["_col0","_col1"] + Filter Operator [FIL_338] (rows=462000 width=1436) + predicate:i_item_sk is not null + TableScan [TS_12] (rows=462000 width=1436) + default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_item_desc"] + <-Reducer 15 [SIMPLE_EDGE] + SHUFFLE [RS_137] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_358] (rows=633595212 width=88) + Conds:RS_134._col0=RS_135._col0(Inner),Output:["_col1","_col3"] + <-Map 11 [SIMPLE_EDGE] + SHUFFLE [RS_134] + PartitionCols:_col0 + Select Operator [SEL_127] (rows=575995635 width=88) + Output:["_col0","_col1"] + Filter Operator [FIL_336] (rows=575995635 width=88) + predicate:(ss_sold_date_sk is not null and ss_item_sk is not null) + TableScan [TS_6] (rows=575995635 width=88) + default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_item_sk"] + <-Map 18 [SIMPLE_EDGE] + SHUFFLE [RS_135] + PartitionCols:_col0 + Select Operator [SEL_130] (rows=36525 width=1119) + Output:["_col0","_col1"] + Filter Operator [FIL_337] (rows=36525 width=1119) + predicate:((d_year) IN (1999, 2000, 2001, 2002) and d_date_sk is not null) + TableScan [TS_9] (rows=73049 width=1119) + default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_date","d_year"] + <-Reducer 8 [SIMPLE_EDGE] + SHUFFLE [RS_231] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_357] (rows=158402938 width=135) + Conds:RS_228._col0=RS_229._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + <-Map 7 [SIMPLE_EDGE] + SHUFFLE [RS_229] + PartitionCols:_col0 + Select Operator [SEL_124] (rows=18262 width=1119) + Output:["_col0"] + Filter Operator [FIL_335] (rows=18262 width=1119) + predicate:((d_year = 1999) and (d_moy = 1) and d_date_sk is not null) + TableScan [TS_3] (rows=73049 width=1119) + default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_moy"] + <-Map 47 [SIMPLE_EDGE] + SHUFFLE [RS_228] + PartitionCols:_col0 + Select Operator [SEL_121] (rows=144002668 width=135) + Output:["_col0","_col1","_col2","_col3","_col4"] + Filter Operator [FIL_334] (rows=144002668 width=135) + predicate:(ws_item_sk is not null and ws_bill_customer_sk is not null and ws_sold_date_sk is not null) + TableScan [TS_119] (rows=144002668 width=135) + default@web_sales,web_sales,Tbl:COMPLETE,Col:NONE,Output:["ws_sold_date_sk","ws_item_sk","ws_bill_customer_sk","ws_quantity","ws_list_price"] <-Reducer 4 [CONTAINS] Reduce Output Operator [RS_242] Group By Operator [GBY_241] (rows=1 width=112) @@ -396,7 +393,7 @@ Stage-0 Output:["_col0"] Merge Join Operator [MERGEJOIN_368] (rows=383314495 width=135) Conds:RS_115._col1=RS_116._col0(Inner),Output:["_col3","_col4"] - <-Reducer 19 [SIMPLE_EDGE] + <-Reducer 25 [SIMPLE_EDGE] SHUFFLE [RS_116] PartitionCols:_col0 Select Operator [SEL_108] (rows=105599202 width=321) @@ -405,21 +402,21 @@ Stage-0 predicate:(_col3 > (0.95 * _col1)) Merge Join Operator [MERGEJOIN_367] (rows=316797606 width=321) Conds:(Inner),(Inner),Output:["_col1","_col2","_col3"] - <-Reducer 18 [CUSTOM_SIMPLE_EDGE] + <-Reducer 24 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_103] Select Operator [SEL_61] (rows=1 width=8) Filter Operator [FIL_60] (rows=1 width=8) predicate:(sq_count_check(_col0) <= 1) Group By Operator [GBY_58] (rows=1 width=8) Output:["_col0"],aggregations:["count(VALUE._col0)"] - <-Reducer 17 [CUSTOM_SIMPLE_EDGE] + <-Reducer 23 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_57] Group By Operator [GBY_56] (rows=1 width=8) Output:["_col0"],aggregations:["count()"] Select Operator [SEL_53] (rows=348477374 width=88) Group By Operator [GBY_52] (rows=348477374 width=88) Output:["_col0"],keys:KEY._col0 - <-Reducer 16 [SIMPLE_EDGE] + <-Reducer 22 [SIMPLE_EDGE] SHUFFLE [RS_51] PartitionCols:_col0 Group By Operator [GBY_50] (rows=696954748 width=88) @@ -428,43 +425,40 @@ Stage-0 Output:["_col0"] Merge Join Operator [MERGEJOIN_353] (rows=696954748 width=88) Conds:RS_45._col1=RS_46._col0(Inner),Output:["_col6"] - <-Map 21 [SIMPLE_EDGE] + <-Map 40 [SIMPLE_EDGE] SHUFFLE [RS_46] PartitionCols:_col0 Select Operator [SEL_41] (rows=80000000 width=860) Output:["_col0"] Filter Operator [FIL_328] (rows=80000000 width=860) predicate:c_customer_sk is not null - TableScan [TS_39] (rows=80000000 width=860) - default@customer,customer,Tbl:COMPLETE,Col:NONE,Output:["c_customer_sk"] - <-Reducer 15 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_39] + <-Reducer 21 [SIMPLE_EDGE] SHUFFLE [RS_45] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_352] (rows=633595212 width=88) Conds:RS_42._col0=RS_43._col0(Inner),Output:["_col1"] - <-Map 14 [SIMPLE_EDGE] - SHUFFLE [RS_42] - PartitionCols:_col0 - Select Operator [SEL_35] (rows=575995635 width=88) - Output:["_col0","_col1"] - Filter Operator [FIL_326] (rows=575995635 width=88) - predicate:(ss_customer_sk is not null and ss_sold_date_sk is not null) - TableScan [TS_33] (rows=575995635 width=88) - default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_customer_sk"] - <-Map 20 [SIMPLE_EDGE] + <-Map 31 [SIMPLE_EDGE] SHUFFLE [RS_43] PartitionCols:_col0 Select Operator [SEL_38] (rows=36525 width=1119) Output:["_col0"] Filter Operator [FIL_327] (rows=36525 width=1119) predicate:((d_year) IN (1999, 2000, 2001, 2002) and d_date_sk is not null) - TableScan [TS_36] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] - <-Reducer 26 [CUSTOM_SIMPLE_EDGE] + Please refer to the previous TableScan [TS_36] + <-Map 20 [SIMPLE_EDGE] + SHUFFLE [RS_42] + PartitionCols:_col0 + Select Operator [SEL_35] (rows=575995635 width=88) + Output:["_col0","_col1"] + Filter Operator [FIL_326] (rows=575995635 width=88) + predicate:(ss_customer_sk is not null and ss_sold_date_sk is not null) + Please refer to the previous TableScan [TS_33] + <-Reducer 35 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_104] Group By Operator [GBY_86] (rows=1 width=224) Output:["_col0"],aggregations:["max(VALUE._col0)"] - <-Reducer 25 [CUSTOM_SIMPLE_EDGE] + <-Reducer 34 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_85] Group By Operator [GBY_84] (rows=1 width=224) Output:["_col0"],aggregations:["max(_col1)"] @@ -472,7 +466,7 @@ Stage-0 Output:["_col1"] Group By Operator [GBY_81] (rows=348477374 width=88) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Reducer 24 [SIMPLE_EDGE] + <-Reducer 33 [SIMPLE_EDGE] SHUFFLE [RS_80] PartitionCols:_col0 Group By Operator [GBY_79] (rows=696954748 width=88) @@ -481,43 +475,40 @@ Stage-0 Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_355] (rows=696954748 width=88) Conds:RS_74._col1=RS_75._col0(Inner),Output:["_col2","_col3","_col6"] - <-Map 28 [SIMPLE_EDGE] + <-Map 40 [SIMPLE_EDGE] SHUFFLE [RS_75] PartitionCols:_col0 Select Operator [SEL_70] (rows=80000000 width=860) Output:["_col0"] Filter Operator [FIL_331] (rows=80000000 width=860) predicate:c_customer_sk is not null - TableScan [TS_68] (rows=80000000 width=860) - default@customer,customer,Tbl:COMPLETE,Col:NONE,Output:["c_customer_sk"] - <-Reducer 23 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_39] + <-Reducer 32 [SIMPLE_EDGE] SHUFFLE [RS_74] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_354] (rows=633595212 width=88) Conds:RS_71._col0=RS_72._col0(Inner),Output:["_col1","_col2","_col3"] - <-Map 22 [SIMPLE_EDGE] - SHUFFLE [RS_71] - PartitionCols:_col0 - Select Operator [SEL_64] (rows=575995635 width=88) - Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_329] (rows=575995635 width=88) - predicate:(ss_customer_sk is not null and ss_sold_date_sk is not null) - TableScan [TS_62] (rows=575995635 width=88) - default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_customer_sk","ss_quantity","ss_sales_price"] - <-Map 27 [SIMPLE_EDGE] + <-Map 31 [SIMPLE_EDGE] SHUFFLE [RS_72] PartitionCols:_col0 Select Operator [SEL_67] (rows=36525 width=1119) Output:["_col0"] Filter Operator [FIL_330] (rows=36525 width=1119) predicate:((d_year) IN (1999, 2000, 2001, 2002) and d_date_sk is not null) - TableScan [TS_65] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] - <-Reducer 31 [CUSTOM_SIMPLE_EDGE] + Please refer to the previous TableScan [TS_36] + <-Map 45 [SIMPLE_EDGE] + SHUFFLE [RS_71] + PartitionCols:_col0 + Select Operator [SEL_64] (rows=575995635 width=88) + Output:["_col0","_col1","_col2","_col3"] + Filter Operator [FIL_329] (rows=575995635 width=88) + predicate:(ss_customer_sk is not null and ss_sold_date_sk is not null) + Please refer to the previous TableScan [TS_62] + <-Reducer 42 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_105] Group By Operator [GBY_101] (rows=316797606 width=88) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Reducer 30 [SIMPLE_EDGE] + <-Reducer 41 [SIMPLE_EDGE] SHUFFLE [RS_100] PartitionCols:_col0 Group By Operator [GBY_99] (rows=633595212 width=88) @@ -526,30 +517,28 @@ Stage-0 Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_356] (rows=633595212 width=88) Conds:RS_94._col0=RS_95._col0(Inner),Output:["_col1","_col2","_col3"] - <-Map 29 [SIMPLE_EDGE] - SHUFFLE [RS_94] - PartitionCols:_col0 - Select Operator [SEL_90] (rows=575995635 width=88) - Output:["_col0","_col1","_col2"] - Filter Operator [FIL_332] (rows=575995635 width=88) - predicate:ss_customer_sk is not null - TableScan [TS_88] (rows=575995635 width=88) - default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_customer_sk","ss_quantity","ss_sales_price"] - <-Map 32 [SIMPLE_EDGE] + <-Map 40 [SIMPLE_EDGE] SHUFFLE [RS_95] PartitionCols:_col0 Select Operator [SEL_93] (rows=80000000 width=860) Output:["_col0"] Filter Operator [FIL_333] (rows=80000000 width=860) predicate:c_customer_sk is not null - TableScan [TS_91] (rows=80000000 width=860) - default@customer,customer,Tbl:COMPLETE,Col:NONE,Output:["c_customer_sk"] + Please refer to the previous TableScan [TS_39] + <-Map 46 [SIMPLE_EDGE] + SHUFFLE [RS_94] + PartitionCols:_col0 + Select Operator [SEL_90] (rows=575995635 width=88) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_332] (rows=575995635 width=88) + predicate:ss_customer_sk is not null + Please refer to the previous TableScan [TS_88] <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_115] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_365] (rows=348467716 width=135) Conds:RS_112._col2=RS_113._col0(Inner),Output:["_col1","_col3","_col4"] - <-Reducer 11 [SIMPLE_EDGE] + <-Reducer 14 [SIMPLE_EDGE] SHUFFLE [RS_113] PartitionCols:_col0 Group By Operator [GBY_31] (rows=58079562 width=88) @@ -562,7 +551,7 @@ Stage-0 Output:["_col0","_col3"] Group By Operator [GBY_25] (rows=348477374 width=88) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Reducer 10 [SIMPLE_EDGE] + <-Reducer 13 [SIMPLE_EDGE] SHUFFLE [RS_24] PartitionCols:_col0 Group By Operator [GBY_23] (rows=696954748 width=88) @@ -571,43 +560,48 @@ Stage-0 Output:["_col0","_col1","_col2"] Merge Join Operator [MERGEJOIN_351] (rows=696954748 width=88) Conds:RS_18._col1=RS_19._col0(Inner),Output:["_col3","_col5","_col6"] - <-Map 13 [SIMPLE_EDGE] + <-Map 19 [SIMPLE_EDGE] SHUFFLE [RS_19] PartitionCols:_col0 Select Operator [SEL_14] (rows=462000 width=1436) Output:["_col0","_col1"] Filter Operator [FIL_325] (rows=462000 width=1436) predicate:i_item_sk is not null - TableScan [TS_12] (rows=462000 width=1436) - default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_item_desc"] - <-Reducer 9 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_12] + <-Reducer 12 [SIMPLE_EDGE] SHUFFLE [RS_18] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_350] (rows=633595212 width=88) Conds:RS_15._col0=RS_16._col0(Inner),Output:["_col1","_col3"] - <-Map 12 [SIMPLE_EDGE] - SHUFFLE [RS_16] - PartitionCols:_col0 - Select Operator [SEL_11] (rows=36525 width=1119) - Output:["_col0","_col1"] - Filter Operator [FIL_324] (rows=36525 width=1119) - predicate:((d_year) IN (1999, 2000, 2001, 2002) and d_date_sk is not null) - TableScan [TS_9] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_date","d_year"] - <-Map 8 [SIMPLE_EDGE] + <-Map 11 [SIMPLE_EDGE] SHUFFLE [RS_15] PartitionCols:_col0 Select Operator [SEL_8] (rows=575995635 width=88) Output:["_col0","_col1"] Filter Operator [FIL_323] (rows=575995635 width=88) predicate:(ss_sold_date_sk is not null and ss_item_sk is not null) - TableScan [TS_6] (rows=575995635 width=88) - default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_item_sk"] + Please refer to the previous TableScan [TS_6] + <-Map 18 [SIMPLE_EDGE] + SHUFFLE [RS_16] + PartitionCols:_col0 + Select Operator [SEL_11] (rows=36525 width=1119) + Output:["_col0","_col1"] + Filter Operator [FIL_324] (rows=36525 width=1119) + predicate:((d_year) IN (1999, 2000, 2001, 2002) and d_date_sk is not null) + Please refer to the previous TableScan [TS_9] <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_112] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_349] (rows=316788826 width=135) Conds:RS_109._col0=RS_110._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + <-Map 7 [SIMPLE_EDGE] + SHUFFLE [RS_110] + PartitionCols:_col0 + Select Operator [SEL_5] (rows=18262 width=1119) + Output:["_col0"] + Filter Operator [FIL_322] (rows=18262 width=1119) + predicate:((d_year = 1999) and (d_moy = 1) and d_date_sk is not null) + Please refer to the previous TableScan [TS_3] <-Map 1 [SIMPLE_EDGE] SHUFFLE [RS_109] PartitionCols:_col0 @@ -617,13 +611,4 @@ Stage-0 predicate:(cs_item_sk is not null and cs_bill_customer_sk is not null and cs_sold_date_sk is not null) TableScan [TS_0] (rows=287989836 width=135) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:NONE,Output:["cs_sold_date_sk","cs_bill_customer_sk","cs_item_sk","cs_quantity","cs_list_price"] - <-Map 7 [SIMPLE_EDGE] - SHUFFLE [RS_110] - PartitionCols:_col0 - Select Operator [SEL_5] (rows=18262 width=1119) - Output:["_col0"] - Filter Operator [FIL_322] (rows=18262 width=1119) - predicate:((d_year = 1999) and (d_moy = 1) and d_date_sk is not null) - TableScan [TS_3] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_moy"] diff --git ql/src/test/results/clientpositive/perf/query25.q.out ql/src/test/results/clientpositive/perf/query25.q.out index 7e15c26..2b1c064 100644 --- ql/src/test/results/clientpositive/perf/query25.q.out +++ ql/src/test/results/clientpositive/perf/query25.q.out @@ -6,14 +6,14 @@ Plan optimized by CBO. Vertex dependency in root stage Reducer 10 <- Map 14 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) -Reducer 11 <- Map 15 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE) -Reducer 12 <- Map 16 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE) +Reducer 12 <- Map 11 (SIMPLE_EDGE), Map 13 (SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) -Reducer 3 <- Reducer 12 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 17 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 3 <- Reducer 10 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 4 <- Map 15 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) -Reducer 9 <- Map 13 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) +Reducer 8 <- Map 7 (SIMPLE_EDGE), Reducer 12 (SIMPLE_EDGE) +Reducer 9 <- Map 7 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) Stage-0 Fetch Operator @@ -36,7 +36,7 @@ Stage-0 Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"],aggregations:["sum(_col18)","sum(_col23)","sum(_col3)"],keys:_col28, _col29, _col8, _col9 Merge Join Operator [MERGEJOIN_100] (rows=1020411534 width=88) Conds:RS_43._col14=RS_44._col0(Inner),Output:["_col3","_col8","_col9","_col18","_col23","_col28","_col29"] - <-Map 17 [SIMPLE_EDGE] + <-Map 15 [SIMPLE_EDGE] SHUFFLE [RS_44] PartitionCols:_col0 Select Operator [SEL_36] (rows=462000 width=1436) @@ -50,14 +50,14 @@ Stage-0 PartitionCols:_col14 Merge Join Operator [MERGEJOIN_99] (rows=927646829 width=88) Conds:RS_40._col1, _col2=RS_41._col14, _col13(Inner),Output:["_col3","_col8","_col9","_col14","_col18","_col23"] - <-Reducer 12 [SIMPLE_EDGE] + <-Reducer 10 [SIMPLE_EDGE] SHUFFLE [RS_41] PartitionCols:_col14, _col13 Select Operator [SEL_33] (rows=843315281 width=88) Output:["_col1","_col2","_col7","_col11","_col13","_col14","_col16"] Merge Join Operator [MERGEJOIN_98] (rows=843315281 width=88) Conds:RS_30._col3=RS_31._col0(Inner),Output:["_col1","_col5","_col7","_col8","_col10","_col18","_col19"] - <-Map 16 [SIMPLE_EDGE] + <-Map 14 [SIMPLE_EDGE] SHUFFLE [RS_31] PartitionCols:_col0 Select Operator [SEL_20] (rows=1704 width=1910) @@ -66,39 +66,47 @@ Stage-0 predicate:s_store_sk is not null TableScan [TS_18] (rows=1704 width=1910) default@store,store,Tbl:COMPLETE,Col:NONE,Output:["s_store_sk","s_store_id","s_store_name"] - <-Reducer 11 [SIMPLE_EDGE] + <-Reducer 9 [SIMPLE_EDGE] SHUFFLE [RS_30] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_97] (rows=766650239 width=88) Conds:RS_27._col6=RS_28._col0(Inner),Output:["_col1","_col3","_col5","_col7","_col8","_col10"] - <-Map 15 [SIMPLE_EDGE] + <-Map 7 [SIMPLE_EDGE] SHUFFLE [RS_28] PartitionCols:_col0 Select Operator [SEL_17] (rows=4058 width=1119) Output:["_col0"] Filter Operator [FIL_91] (rows=4058 width=1119) predicate:(d_moy BETWEEN 4 AND 10 and (d_year = 1998) and d_date_sk is not null) - TableScan [TS_15] (rows=73049 width=1119) - default@date_dim,d2,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_moy"] - <-Reducer 10 [SIMPLE_EDGE] + TableScan [TS_3] (rows=73049 width=1119) + default@date_dim,d3,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_moy"] + <-Reducer 8 [SIMPLE_EDGE] SHUFFLE [RS_27] PartitionCols:_col6 Merge Join Operator [MERGEJOIN_96] (rows=696954748 width=88) Conds:RS_24._col0=RS_25._col0(Inner),Output:["_col1","_col3","_col5","_col6","_col7","_col8","_col10"] - <-Map 14 [SIMPLE_EDGE] + <-Map 7 [SIMPLE_EDGE] SHUFFLE [RS_25] PartitionCols:_col0 Select Operator [SEL_14] (rows=18262 width=1119) Output:["_col0"] Filter Operator [FIL_90] (rows=18262 width=1119) predicate:((d_moy = 4) and (d_year = 1998) and d_date_sk is not null) - TableScan [TS_12] (rows=73049 width=1119) - default@date_dim,d1,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_moy"] - <-Reducer 9 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_3] + <-Reducer 12 [SIMPLE_EDGE] SHUFFLE [RS_24] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_95] (rows=633595212 width=88) Conds:RS_21._col1, _col2, _col4=RS_22._col1, _col2, _col3(Inner),Output:["_col0","_col1","_col3","_col5","_col6","_col7","_col8","_col10"] + <-Map 11 [SIMPLE_EDGE] + SHUFFLE [RS_21] + PartitionCols:_col1, _col2, _col4 + Select Operator [SEL_8] (rows=575995635 width=88) + Output:["_col0","_col1","_col2","_col3","_col4","_col5"] + Filter Operator [FIL_88] (rows=575995635 width=88) + predicate:(ss_item_sk is not null and ss_customer_sk is not null and ss_ticket_number is not null and ss_sold_date_sk is not null and ss_store_sk is not null) + TableScan [TS_6] (rows=575995635 width=88) + default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_item_sk","ss_customer_sk","ss_store_sk","ss_ticket_number","ss_net_profit"] <-Map 13 [SIMPLE_EDGE] SHUFFLE [RS_22] PartitionCols:_col1, _col2, _col3 @@ -108,20 +116,19 @@ Stage-0 predicate:(sr_item_sk is not null and sr_customer_sk is not null and sr_ticket_number is not null and sr_returned_date_sk is not null) TableScan [TS_9] (rows=57591150 width=77) default@store_returns,store_returns,Tbl:COMPLETE,Col:NONE,Output:["sr_returned_date_sk","sr_item_sk","sr_customer_sk","sr_ticket_number","sr_net_loss"] - <-Map 8 [SIMPLE_EDGE] - SHUFFLE [RS_21] - PartitionCols:_col1, _col2, _col4 - Select Operator [SEL_8] (rows=575995635 width=88) - Output:["_col0","_col1","_col2","_col3","_col4","_col5"] - Filter Operator [FIL_88] (rows=575995635 width=88) - predicate:(ss_item_sk is not null and ss_customer_sk is not null and ss_ticket_number is not null and ss_sold_date_sk is not null and ss_store_sk is not null) - TableScan [TS_6] (rows=575995635 width=88) - default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_item_sk","ss_customer_sk","ss_store_sk","ss_ticket_number","ss_net_profit"] <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_40] PartitionCols:_col1, _col2 Merge Join Operator [MERGEJOIN_94] (rows=316788826 width=135) Conds:RS_37._col0=RS_38._col0(Inner),Output:["_col1","_col2","_col3"] + <-Map 7 [SIMPLE_EDGE] + SHUFFLE [RS_38] + PartitionCols:_col0 + Select Operator [SEL_5] (rows=4058 width=1119) + Output:["_col0"] + Filter Operator [FIL_87] (rows=4058 width=1119) + predicate:(d_moy BETWEEN 4 AND 10 and (d_year = 1998) and d_date_sk is not null) + Please refer to the previous TableScan [TS_3] <-Map 1 [SIMPLE_EDGE] SHUFFLE [RS_37] PartitionCols:_col0 @@ -131,13 +138,4 @@ Stage-0 predicate:(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=135) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:NONE,Output:["cs_sold_date_sk","cs_bill_customer_sk","cs_item_sk","cs_net_profit"] - <-Map 7 [SIMPLE_EDGE] - SHUFFLE [RS_38] - PartitionCols:_col0 - Select Operator [SEL_5] (rows=4058 width=1119) - Output:["_col0"] - Filter Operator [FIL_87] (rows=4058 width=1119) - predicate:(d_moy BETWEEN 4 AND 10 and (d_year = 1998) and d_date_sk is not null) - TableScan [TS_3] (rows=73049 width=1119) - default@date_dim,d3,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_moy"] diff --git ql/src/test/results/clientpositive/perf/query28.q.out ql/src/test/results/clientpositive/perf/query28.q.out index f7c5225..78129cf 100644 --- ql/src/test/results/clientpositive/perf/query28.q.out +++ ql/src/test/results/clientpositive/perf/query28.q.out @@ -104,13 +104,13 @@ POSTHOOK: type: QUERY Plan optimized by CBO. Vertex dependency in root stage -Reducer 11 <- Map 10 (SIMPLE_EDGE) -Reducer 13 <- Map 12 (SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE) -Reducer 3 <- Reducer 11 (CUSTOM_SIMPLE_EDGE), Reducer 13 (CUSTOM_SIMPLE_EDGE), Reducer 2 (CUSTOM_SIMPLE_EDGE), Reducer 5 (CUSTOM_SIMPLE_EDGE), Reducer 7 (CUSTOM_SIMPLE_EDGE), Reducer 9 (CUSTOM_SIMPLE_EDGE) -Reducer 5 <- Map 4 (SIMPLE_EDGE) -Reducer 7 <- Map 6 (SIMPLE_EDGE) -Reducer 9 <- Map 8 (SIMPLE_EDGE) +Reducer 3 <- Reducer 2 (CUSTOM_SIMPLE_EDGE), Reducer 4 (CUSTOM_SIMPLE_EDGE), Reducer 5 (CUSTOM_SIMPLE_EDGE), Reducer 6 (CUSTOM_SIMPLE_EDGE), Reducer 7 (CUSTOM_SIMPLE_EDGE), Reducer 8 (CUSTOM_SIMPLE_EDGE) +Reducer 4 <- Map 1 (SIMPLE_EDGE) +Reducer 5 <- Map 1 (SIMPLE_EDGE) +Reducer 6 <- Map 1 (SIMPLE_EDGE) +Reducer 7 <- Map 1 (SIMPLE_EDGE) +Reducer 8 <- Map 1 (SIMPLE_EDGE) Stage-0 Fetch Operator @@ -124,34 +124,6 @@ Stage-0 Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17"] Merge Join Operator [MERGEJOIN_58] (rows=1 width=2497) Conds:(Inner),(Inner),(Inner),(Inner),(Inner),Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15","_col16","_col17"] - <-Reducer 11 [CUSTOM_SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_46] - Group By Operator [GBY_33] (rows=1 width=416) - Output:["_col0","_col1","_col2"],aggregations:["avg(VALUE._col0)","count(VALUE._col1)","count(DISTINCT KEY._col0:0._col0)"] - <-Map 10 [SIMPLE_EDGE] - SHUFFLE [RS_32] - Group By Operator [GBY_31] (rows=21333171 width=88) - Output:["_col0","_col1","_col2","_col3"],aggregations:["avg(ss_list_price)","count(ss_list_price)","count(DISTINCT ss_list_price)"],keys:ss_list_price - Select Operator [SEL_30] (rows=21333171 width=88) - Output:["ss_list_price"] - Filter Operator [FIL_56] (rows=21333171 width=88) - predicate:(ss_quantity BETWEEN 11 AND 15 and (ss_list_price BETWEEN 66 AND 76 or ss_coupon_amt BETWEEN 920 AND 1920 or ss_wholesale_cost BETWEEN 4 AND 24)) - TableScan [TS_28] (rows=575995635 width=88) - default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_quantity","ss_wholesale_cost","ss_list_price","ss_coupon_amt"] - <-Reducer 13 [CUSTOM_SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_47] - Group By Operator [GBY_40] (rows=1 width=416) - Output:["_col0","_col1","_col2"],aggregations:["avg(VALUE._col0)","count(VALUE._col1)","count(DISTINCT KEY._col0:0._col0)"] - <-Map 12 [SIMPLE_EDGE] - SHUFFLE [RS_39] - Group By Operator [GBY_38] (rows=21333171 width=88) - Output:["_col0","_col1","_col2","_col3"],aggregations:["avg(ss_list_price)","count(ss_list_price)","count(DISTINCT ss_list_price)"],keys:ss_list_price - Select Operator [SEL_37] (rows=21333171 width=88) - Output:["ss_list_price"] - Filter Operator [FIL_57] (rows=21333171 width=88) - predicate:(ss_quantity BETWEEN 6 AND 10 and (ss_list_price BETWEEN 91 AND 101 or ss_coupon_amt BETWEEN 1430 AND 2430 or ss_wholesale_cost BETWEEN 32 AND 52)) - TableScan [TS_35] (rows=575995635 width=88) - default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_quantity","ss_wholesale_cost","ss_list_price","ss_coupon_amt"] <-Reducer 2 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_42] Group By Operator [GBY_5] (rows=1 width=416) @@ -166,11 +138,11 @@ Stage-0 predicate:(ss_quantity BETWEEN 0 AND 5 and (ss_list_price BETWEEN 11 AND 21 or ss_coupon_amt BETWEEN 460 AND 1460 or ss_wholesale_cost BETWEEN 14 AND 34)) TableScan [TS_0] (rows=575995635 width=88) default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_quantity","ss_wholesale_cost","ss_list_price","ss_coupon_amt"] - <-Reducer 5 [CUSTOM_SIMPLE_EDGE] + <-Reducer 4 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_43] Group By Operator [GBY_12] (rows=1 width=416) Output:["_col0","_col1","_col2"],aggregations:["avg(VALUE._col0)","count(VALUE._col1)","count(DISTINCT KEY._col0:0._col0)"] - <-Map 4 [SIMPLE_EDGE] + <-Map 1 [SIMPLE_EDGE] SHUFFLE [RS_11] Group By Operator [GBY_10] (rows=21333171 width=88) Output:["_col0","_col1","_col2","_col3"],aggregations:["avg(ss_list_price)","count(ss_list_price)","count(DISTINCT ss_list_price)"],keys:ss_list_price @@ -178,13 +150,12 @@ Stage-0 Output:["ss_list_price"] Filter Operator [FIL_53] (rows=21333171 width=88) predicate:(ss_quantity BETWEEN 26 AND 30 and (ss_list_price BETWEEN 28 AND 38 or ss_coupon_amt BETWEEN 2513 AND 3513 or ss_wholesale_cost BETWEEN 42 AND 62)) - TableScan [TS_7] (rows=575995635 width=88) - default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_quantity","ss_wholesale_cost","ss_list_price","ss_coupon_amt"] - <-Reducer 7 [CUSTOM_SIMPLE_EDGE] + Please refer to the previous TableScan [TS_0] + <-Reducer 5 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_44] Group By Operator [GBY_19] (rows=1 width=416) Output:["_col0","_col1","_col2"],aggregations:["avg(VALUE._col0)","count(VALUE._col1)","count(DISTINCT KEY._col0:0._col0)"] - <-Map 6 [SIMPLE_EDGE] + <-Map 1 [SIMPLE_EDGE] SHUFFLE [RS_18] Group By Operator [GBY_17] (rows=21333171 width=88) Output:["_col0","_col1","_col2","_col3"],aggregations:["avg(ss_list_price)","count(ss_list_price)","count(DISTINCT ss_list_price)"],keys:ss_list_price @@ -192,13 +163,12 @@ Stage-0 Output:["ss_list_price"] Filter Operator [FIL_54] (rows=21333171 width=88) predicate:(ss_quantity BETWEEN 21 AND 25 and (ss_list_price BETWEEN 135 AND 145 or ss_coupon_amt BETWEEN 14180 AND 15180 or ss_wholesale_cost BETWEEN 38 AND 58)) - TableScan [TS_14] (rows=575995635 width=88) - default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_quantity","ss_wholesale_cost","ss_list_price","ss_coupon_amt"] - <-Reducer 9 [CUSTOM_SIMPLE_EDGE] + Please refer to the previous TableScan [TS_0] + <-Reducer 6 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_45] Group By Operator [GBY_26] (rows=1 width=416) Output:["_col0","_col1","_col2"],aggregations:["avg(VALUE._col0)","count(VALUE._col1)","count(DISTINCT KEY._col0:0._col0)"] - <-Map 8 [SIMPLE_EDGE] + <-Map 1 [SIMPLE_EDGE] SHUFFLE [RS_25] Group By Operator [GBY_24] (rows=21333171 width=88) Output:["_col0","_col1","_col2","_col3"],aggregations:["avg(ss_list_price)","count(ss_list_price)","count(DISTINCT ss_list_price)"],keys:ss_list_price @@ -206,6 +176,31 @@ Stage-0 Output:["ss_list_price"] Filter Operator [FIL_55] (rows=21333171 width=88) predicate:(ss_quantity BETWEEN 16 AND 20 and (ss_list_price BETWEEN 142 AND 152 or ss_coupon_amt BETWEEN 3054 AND 4054 or ss_wholesale_cost BETWEEN 80 AND 100)) - TableScan [TS_21] (rows=575995635 width=88) - default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_quantity","ss_wholesale_cost","ss_list_price","ss_coupon_amt"] + Please refer to the previous TableScan [TS_0] + <-Reducer 7 [CUSTOM_SIMPLE_EDGE] + PARTITION_ONLY_SHUFFLE [RS_46] + Group By Operator [GBY_33] (rows=1 width=416) + Output:["_col0","_col1","_col2"],aggregations:["avg(VALUE._col0)","count(VALUE._col1)","count(DISTINCT KEY._col0:0._col0)"] + <-Map 1 [SIMPLE_EDGE] + SHUFFLE [RS_32] + Group By Operator [GBY_31] (rows=21333171 width=88) + Output:["_col0","_col1","_col2","_col3"],aggregations:["avg(ss_list_price)","count(ss_list_price)","count(DISTINCT ss_list_price)"],keys:ss_list_price + Select Operator [SEL_30] (rows=21333171 width=88) + Output:["ss_list_price"] + Filter Operator [FIL_56] (rows=21333171 width=88) + predicate:(ss_quantity BETWEEN 11 AND 15 and (ss_list_price BETWEEN 66 AND 76 or ss_coupon_amt BETWEEN 920 AND 1920 or ss_wholesale_cost BETWEEN 4 AND 24)) + Please refer to the previous TableScan [TS_0] + <-Reducer 8 [CUSTOM_SIMPLE_EDGE] + PARTITION_ONLY_SHUFFLE [RS_47] + Group By Operator [GBY_40] (rows=1 width=416) + Output:["_col0","_col1","_col2"],aggregations:["avg(VALUE._col0)","count(VALUE._col1)","count(DISTINCT KEY._col0:0._col0)"] + <-Map 1 [SIMPLE_EDGE] + SHUFFLE [RS_39] + Group By Operator [GBY_38] (rows=21333171 width=88) + Output:["_col0","_col1","_col2","_col3"],aggregations:["avg(ss_list_price)","count(ss_list_price)","count(DISTINCT ss_list_price)"],keys:ss_list_price + Select Operator [SEL_37] (rows=21333171 width=88) + Output:["ss_list_price"] + Filter Operator [FIL_57] (rows=21333171 width=88) + predicate:(ss_quantity BETWEEN 6 AND 10 and (ss_list_price BETWEEN 91 AND 101 or ss_coupon_amt BETWEEN 1430 AND 2430 or ss_wholesale_cost BETWEEN 32 AND 52)) + Please refer to the previous TableScan [TS_0] diff --git ql/src/test/results/clientpositive/perf/query29.q.out ql/src/test/results/clientpositive/perf/query29.q.out index 675bdd3..ec303d3 100644 --- ql/src/test/results/clientpositive/perf/query29.q.out +++ ql/src/test/results/clientpositive/perf/query29.q.out @@ -6,11 +6,11 @@ Plan optimized by CBO. Vertex dependency in root stage Reducer 10 <- Map 14 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) -Reducer 11 <- Map 15 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE) -Reducer 12 <- Map 16 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE) +Reducer 11 <- Map 14 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE) +Reducer 12 <- Map 15 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) Reducer 3 <- Reducer 12 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 17 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 4 <- Map 16 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) Reducer 9 <- Map 13 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) @@ -36,7 +36,7 @@ Stage-0 Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"],aggregations:["sum(_col17)","sum(_col22)","sum(_col3)"],keys:_col27, _col28, _col7, _col8 Merge Join Operator [MERGEJOIN_100] (rows=1020411534 width=88) Conds:RS_43._col13=RS_44._col0(Inner),Output:["_col3","_col7","_col8","_col17","_col22","_col27","_col28"] - <-Map 17 [SIMPLE_EDGE] + <-Map 16 [SIMPLE_EDGE] SHUFFLE [RS_44] PartitionCols:_col0 Select Operator [SEL_36] (rows=462000 width=1436) @@ -57,7 +57,7 @@ Stage-0 Output:["_col1","_col2","_col7","_col11","_col13","_col14","_col16"] Merge Join Operator [MERGEJOIN_98] (rows=843315281 width=88) Conds:RS_30._col3=RS_31._col0(Inner),Output:["_col1","_col5","_col7","_col8","_col10","_col18","_col19"] - <-Map 16 [SIMPLE_EDGE] + <-Map 15 [SIMPLE_EDGE] SHUFFLE [RS_31] PartitionCols:_col0 Select Operator [SEL_20] (rows=1704 width=1910) @@ -71,15 +71,15 @@ Stage-0 PartitionCols:_col3 Merge Join Operator [MERGEJOIN_97] (rows=766650239 width=88) Conds:RS_27._col6=RS_28._col0(Inner),Output:["_col1","_col3","_col5","_col7","_col8","_col10"] - <-Map 15 [SIMPLE_EDGE] + <-Map 14 [SIMPLE_EDGE] SHUFFLE [RS_28] PartitionCols:_col0 Select Operator [SEL_17] (rows=4058 width=1119) Output:["_col0"] Filter Operator [FIL_91] (rows=4058 width=1119) predicate:(d_moy BETWEEN 2 AND 5 and (d_year = 2000) and d_date_sk is not null) - TableScan [TS_15] (rows=73049 width=1119) - default@date_dim,d2,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_moy"] + TableScan [TS_12] (rows=73049 width=1119) + default@date_dim,d1,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_moy"] <-Reducer 10 [SIMPLE_EDGE] SHUFFLE [RS_27] PartitionCols:_col6 @@ -92,8 +92,7 @@ Stage-0 Output:["_col0"] Filter Operator [FIL_90] (rows=18262 width=1119) predicate:((d_moy = 2) and (d_year = 2000) and d_date_sk is not null) - TableScan [TS_12] (rows=73049 width=1119) - default@date_dim,d1,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_moy"] + Please refer to the previous TableScan [TS_12] <-Reducer 9 [SIMPLE_EDGE] SHUFFLE [RS_24] PartitionCols:_col0 diff --git ql/src/test/results/clientpositive/perf/query31.q.out ql/src/test/results/clientpositive/perf/query31.q.out index 3ed312d..9e3dad4 100644 --- ql/src/test/results/clientpositive/perf/query31.q.out +++ ql/src/test/results/clientpositive/perf/query31.q.out @@ -5,27 +5,27 @@ POSTHOOK: type: QUERY Plan optimized by CBO. Vertex dependency in root stage -Reducer 10 <- Map 13 (SIMPLE_EDGE), Map 9 (SIMPLE_EDGE) -Reducer 11 <- Map 14 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE) +Reducer 10 <- Map 1 (SIMPLE_EDGE), Map 13 (SIMPLE_EDGE) +Reducer 11 <- Map 24 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE) Reducer 12 <- Reducer 11 (SIMPLE_EDGE) -Reducer 16 <- Map 15 (SIMPLE_EDGE), Map 19 (SIMPLE_EDGE) -Reducer 17 <- Map 20 (SIMPLE_EDGE), Reducer 16 (SIMPLE_EDGE) -Reducer 18 <- Reducer 17 (SIMPLE_EDGE) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) -Reducer 22 <- Map 21 (SIMPLE_EDGE), Map 26 (SIMPLE_EDGE) -Reducer 23 <- Map 27 (SIMPLE_EDGE), Reducer 22 (SIMPLE_EDGE) -Reducer 24 <- Reducer 23 (SIMPLE_EDGE) -Reducer 25 <- Reducer 24 (SIMPLE_EDGE), Reducer 31 (SIMPLE_EDGE), Reducer 37 (SIMPLE_EDGE) -Reducer 29 <- Map 28 (SIMPLE_EDGE), Map 32 (SIMPLE_EDGE) -Reducer 3 <- Map 8 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 30 <- Map 33 (SIMPLE_EDGE), Reducer 29 (SIMPLE_EDGE) -Reducer 31 <- Reducer 30 (SIMPLE_EDGE) -Reducer 35 <- Map 34 (SIMPLE_EDGE), Map 38 (SIMPLE_EDGE) -Reducer 36 <- Map 39 (SIMPLE_EDGE), Reducer 35 (SIMPLE_EDGE) -Reducer 37 <- Reducer 36 (SIMPLE_EDGE) +Reducer 14 <- Map 13 (SIMPLE_EDGE), Map 25 (SIMPLE_EDGE) +Reducer 15 <- Map 24 (SIMPLE_EDGE), Reducer 14 (SIMPLE_EDGE) +Reducer 16 <- Reducer 15 (SIMPLE_EDGE) +Reducer 17 <- Reducer 16 (SIMPLE_EDGE), Reducer 20 (SIMPLE_EDGE), Reducer 23 (SIMPLE_EDGE) +Reducer 18 <- Map 13 (SIMPLE_EDGE), Map 25 (SIMPLE_EDGE) +Reducer 19 <- Map 24 (SIMPLE_EDGE), Reducer 18 (SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 13 (SIMPLE_EDGE) +Reducer 20 <- Reducer 19 (SIMPLE_EDGE) +Reducer 21 <- Map 13 (SIMPLE_EDGE), Map 25 (SIMPLE_EDGE) +Reducer 22 <- Map 24 (SIMPLE_EDGE), Reducer 21 (SIMPLE_EDGE) +Reducer 23 <- Reducer 22 (SIMPLE_EDGE) +Reducer 3 <- Map 24 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Reducer 12 (SIMPLE_EDGE), Reducer 18 (SIMPLE_EDGE), Reducer 25 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) +Reducer 5 <- Reducer 12 (SIMPLE_EDGE), Reducer 17 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) +Reducer 7 <- Map 1 (SIMPLE_EDGE), Map 13 (SIMPLE_EDGE) +Reducer 8 <- Map 24 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) +Reducer 9 <- Reducer 8 (SIMPLE_EDGE) Stage-0 Fetch Operator @@ -44,125 +44,88 @@ Stage-0 Merge Join Operator [MERGEJOIN_269] (rows=1149975359 width=88) Conds:RS_125._col0=RS_126._col0(Inner),RS_125._col0=RS_127._col0(Inner),RS_125._col0=RS_128._col0(Inner),Output:["_col0","_col1","_col3","_col5","_col7","_col9","_col11"] <-Reducer 12 [SIMPLE_EDGE] - SHUFFLE [RS_126] - PartitionCols:_col0 - Group By Operator [GBY_38] (rows=348477374 width=88) - Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Reducer 11 [SIMPLE_EDGE] - SHUFFLE [RS_37] - PartitionCols:_col0 - Group By Operator [GBY_36] (rows=696954748 width=88) - Output:["_col0","_col1"],aggregations:["sum(_col2)"],keys:_col7 - Merge Join Operator [MERGEJOIN_259] (rows=696954748 width=88) - Conds:RS_32._col1=RS_33._col0(Inner),Output:["_col2","_col7"] - <-Map 14 [SIMPLE_EDGE] - SHUFFLE [RS_33] - PartitionCols:_col0 - Select Operator [SEL_28] (rows=40000000 width=1014) - Output:["_col0","_col1"] - Filter Operator [FIL_243] (rows=40000000 width=1014) - predicate:(ca_address_sk is not null and ca_county is not null) - TableScan [TS_26] (rows=40000000 width=1014) - default@customer_address,customer_address,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_county"] - <-Reducer 10 [SIMPLE_EDGE] - SHUFFLE [RS_32] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_258] (rows=633595212 width=88) - Conds:RS_29._col0=RS_30._col0(Inner),Output:["_col1","_col2"] - <-Map 13 [SIMPLE_EDGE] - SHUFFLE [RS_30] - PartitionCols:_col0 - Select Operator [SEL_25] (rows=18262 width=1119) - Output:["_col0"] - Filter Operator [FIL_242] (rows=18262 width=1119) - predicate:((d_qoy = 1) and (d_year = 1998) and d_date_sk is not null) - TableScan [TS_23] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_qoy"] - <-Map 9 [SIMPLE_EDGE] - SHUFFLE [RS_29] - PartitionCols:_col0 - Select Operator [SEL_22] (rows=575995635 width=88) - Output:["_col0","_col1","_col2"] - Filter Operator [FIL_241] (rows=575995635 width=88) - predicate:(ss_sold_date_sk is not null and ss_addr_sk is not null) - TableScan [TS_20] (rows=575995635 width=88) - default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_addr_sk","ss_ext_sales_price"] - <-Reducer 18 [SIMPLE_EDGE] SHUFFLE [RS_127] PartitionCols:_col0 Group By Operator [GBY_58] (rows=348477374 width=88) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Reducer 17 [SIMPLE_EDGE] + <-Reducer 11 [SIMPLE_EDGE] SHUFFLE [RS_57] PartitionCols:_col0 Group By Operator [GBY_56] (rows=696954748 width=88) Output:["_col0","_col1"],aggregations:["sum(_col2)"],keys:_col7 Merge Join Operator [MERGEJOIN_261] (rows=696954748 width=88) Conds:RS_52._col1=RS_53._col0(Inner),Output:["_col2","_col7"] - <-Map 20 [SIMPLE_EDGE] + <-Map 24 [SIMPLE_EDGE] SHUFFLE [RS_53] PartitionCols:_col0 Select Operator [SEL_48] (rows=40000000 width=1014) Output:["_col0","_col1"] Filter Operator [FIL_246] (rows=40000000 width=1014) predicate:(ca_address_sk is not null and ca_county is not null) - TableScan [TS_46] (rows=40000000 width=1014) + TableScan [TS_6] (rows=40000000 width=1014) default@customer_address,customer_address,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_county"] - <-Reducer 16 [SIMPLE_EDGE] + <-Reducer 10 [SIMPLE_EDGE] SHUFFLE [RS_52] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_260] (rows=633595212 width=88) Conds:RS_49._col0=RS_50._col0(Inner),Output:["_col1","_col2"] - <-Map 15 [SIMPLE_EDGE] - SHUFFLE [RS_49] - PartitionCols:_col0 - Select Operator [SEL_42] (rows=575995635 width=88) - Output:["_col0","_col1","_col2"] - Filter Operator [FIL_244] (rows=575995635 width=88) - predicate:(ss_sold_date_sk is not null and ss_addr_sk is not null) - TableScan [TS_40] (rows=575995635 width=88) - default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_addr_sk","ss_ext_sales_price"] - <-Map 19 [SIMPLE_EDGE] + <-Map 13 [SIMPLE_EDGE] SHUFFLE [RS_50] PartitionCols:_col0 Select Operator [SEL_45] (rows=18262 width=1119) Output:["_col0"] Filter Operator [FIL_245] (rows=18262 width=1119) predicate:((d_qoy = 3) and (d_year = 1998) and d_date_sk is not null) - TableScan [TS_43] (rows=73049 width=1119) + TableScan [TS_3] (rows=73049 width=1119) default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_qoy"] - <-Reducer 25 [SIMPLE_EDGE] + <-Map 1 [SIMPLE_EDGE] + SHUFFLE [RS_49] + PartitionCols:_col0 + Select Operator [SEL_42] (rows=575995635 width=88) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_244] (rows=575995635 width=88) + predicate:(ss_sold_date_sk is not null and ss_addr_sk is not null) + TableScan [TS_0] (rows=575995635 width=88) + default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_addr_sk","ss_ext_sales_price"] + <-Reducer 17 [SIMPLE_EDGE] SHUFFLE [RS_128] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_268] (rows=191667561 width=135) Conds:RS_120._col0=RS_121._col0(Inner),RS_120._col0=RS_122._col0(Inner),Output:["_col0","_col1","_col3","_col5"] - <-Reducer 24 [SIMPLE_EDGE] + <-Reducer 16 [SIMPLE_EDGE] SHUFFLE [RS_120] PartitionCols:_col0 Group By Operator [GBY_78] (rows=87121617 width=135) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Reducer 23 [SIMPLE_EDGE] + <-Reducer 15 [SIMPLE_EDGE] SHUFFLE [RS_77] PartitionCols:_col0 Group By Operator [GBY_76] (rows=174243235 width=135) Output:["_col0","_col1"],aggregations:["sum(_col2)"],keys:_col7 Merge Join Operator [MERGEJOIN_263] (rows=174243235 width=135) Conds:RS_72._col1=RS_73._col0(Inner),Output:["_col2","_col7"] - <-Map 27 [SIMPLE_EDGE] + <-Map 24 [SIMPLE_EDGE] SHUFFLE [RS_73] PartitionCols:_col0 Select Operator [SEL_68] (rows=40000000 width=1014) Output:["_col0","_col1"] Filter Operator [FIL_249] (rows=40000000 width=1014) predicate:(ca_address_sk is not null and ca_county is not null) - TableScan [TS_66] (rows=40000000 width=1014) - default@customer_address,customer_address,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_county"] - <-Reducer 22 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_6] + <-Reducer 14 [SIMPLE_EDGE] SHUFFLE [RS_72] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_262] (rows=158402938 width=135) Conds:RS_69._col0=RS_70._col0(Inner),Output:["_col1","_col2"] - <-Map 21 [SIMPLE_EDGE] + <-Map 13 [SIMPLE_EDGE] + SHUFFLE [RS_70] + PartitionCols:_col0 + Select Operator [SEL_65] (rows=18262 width=1119) + Output:["_col0"] + Filter Operator [FIL_248] (rows=18262 width=1119) + predicate:((d_qoy = 1) and (d_year = 1998) and d_date_sk is not null) + Please refer to the previous TableScan [TS_3] + <-Map 25 [SIMPLE_EDGE] SHUFFLE [RS_69] PartitionCols:_col0 Select Operator [SEL_62] (rows=144002668 width=135) @@ -171,103 +134,88 @@ Stage-0 predicate:(ws_sold_date_sk is not null and ws_bill_addr_sk is not null) TableScan [TS_60] (rows=144002668 width=135) default@web_sales,web_sales,Tbl:COMPLETE,Col:NONE,Output:["ws_sold_date_sk","ws_bill_addr_sk","ws_ext_sales_price"] - <-Map 26 [SIMPLE_EDGE] - SHUFFLE [RS_70] - PartitionCols:_col0 - Select Operator [SEL_65] (rows=18262 width=1119) - Output:["_col0"] - Filter Operator [FIL_248] (rows=18262 width=1119) - predicate:((d_qoy = 1) and (d_year = 1998) and d_date_sk is not null) - TableScan [TS_63] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_qoy"] - <-Reducer 31 [SIMPLE_EDGE] + <-Reducer 20 [SIMPLE_EDGE] SHUFFLE [RS_121] PartitionCols:_col0 Group By Operator [GBY_98] (rows=87121617 width=135) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Reducer 30 [SIMPLE_EDGE] + <-Reducer 19 [SIMPLE_EDGE] SHUFFLE [RS_97] PartitionCols:_col0 Group By Operator [GBY_96] (rows=174243235 width=135) Output:["_col0","_col1"],aggregations:["sum(_col2)"],keys:_col7 Merge Join Operator [MERGEJOIN_265] (rows=174243235 width=135) Conds:RS_92._col1=RS_93._col0(Inner),Output:["_col2","_col7"] - <-Map 33 [SIMPLE_EDGE] + <-Map 24 [SIMPLE_EDGE] SHUFFLE [RS_93] PartitionCols:_col0 Select Operator [SEL_88] (rows=40000000 width=1014) Output:["_col0","_col1"] Filter Operator [FIL_252] (rows=40000000 width=1014) predicate:(ca_address_sk is not null and ca_county is not null) - TableScan [TS_86] (rows=40000000 width=1014) - default@customer_address,customer_address,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_county"] - <-Reducer 29 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_6] + <-Reducer 18 [SIMPLE_EDGE] SHUFFLE [RS_92] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_264] (rows=158402938 width=135) Conds:RS_89._col0=RS_90._col0(Inner),Output:["_col1","_col2"] - <-Map 28 [SIMPLE_EDGE] - SHUFFLE [RS_89] - PartitionCols:_col0 - Select Operator [SEL_82] (rows=144002668 width=135) - Output:["_col0","_col1","_col2"] - Filter Operator [FIL_250] (rows=144002668 width=135) - predicate:(ws_sold_date_sk is not null and ws_bill_addr_sk is not null) - TableScan [TS_80] (rows=144002668 width=135) - default@web_sales,web_sales,Tbl:COMPLETE,Col:NONE,Output:["ws_sold_date_sk","ws_bill_addr_sk","ws_ext_sales_price"] - <-Map 32 [SIMPLE_EDGE] + <-Map 13 [SIMPLE_EDGE] SHUFFLE [RS_90] PartitionCols:_col0 Select Operator [SEL_85] (rows=18262 width=1119) Output:["_col0"] Filter Operator [FIL_251] (rows=18262 width=1119) predicate:((d_qoy = 2) and (d_year = 1998) and d_date_sk is not null) - TableScan [TS_83] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_qoy"] - <-Reducer 37 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_3] + <-Map 25 [SIMPLE_EDGE] + SHUFFLE [RS_89] + PartitionCols:_col0 + Select Operator [SEL_82] (rows=144002668 width=135) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_250] (rows=144002668 width=135) + predicate:(ws_sold_date_sk is not null and ws_bill_addr_sk is not null) + Please refer to the previous TableScan [TS_60] + <-Reducer 23 [SIMPLE_EDGE] SHUFFLE [RS_122] PartitionCols:_col0 Group By Operator [GBY_118] (rows=87121617 width=135) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Reducer 36 [SIMPLE_EDGE] + <-Reducer 22 [SIMPLE_EDGE] SHUFFLE [RS_117] PartitionCols:_col0 Group By Operator [GBY_116] (rows=174243235 width=135) Output:["_col0","_col1"],aggregations:["sum(_col2)"],keys:_col7 Merge Join Operator [MERGEJOIN_267] (rows=174243235 width=135) Conds:RS_112._col1=RS_113._col0(Inner),Output:["_col2","_col7"] - <-Map 39 [SIMPLE_EDGE] + <-Map 24 [SIMPLE_EDGE] SHUFFLE [RS_113] PartitionCols:_col0 Select Operator [SEL_108] (rows=40000000 width=1014) Output:["_col0","_col1"] Filter Operator [FIL_255] (rows=40000000 width=1014) predicate:(ca_address_sk is not null and ca_county is not null) - TableScan [TS_106] (rows=40000000 width=1014) - default@customer_address,customer_address,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_county"] - <-Reducer 35 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_6] + <-Reducer 21 [SIMPLE_EDGE] SHUFFLE [RS_112] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_266] (rows=158402938 width=135) Conds:RS_109._col0=RS_110._col0(Inner),Output:["_col1","_col2"] - <-Map 34 [SIMPLE_EDGE] - SHUFFLE [RS_109] - PartitionCols:_col0 - Select Operator [SEL_102] (rows=144002668 width=135) - Output:["_col0","_col1","_col2"] - Filter Operator [FIL_253] (rows=144002668 width=135) - predicate:(ws_sold_date_sk is not null and ws_bill_addr_sk is not null) - TableScan [TS_100] (rows=144002668 width=135) - default@web_sales,web_sales,Tbl:COMPLETE,Col:NONE,Output:["ws_sold_date_sk","ws_bill_addr_sk","ws_ext_sales_price"] - <-Map 38 [SIMPLE_EDGE] + <-Map 13 [SIMPLE_EDGE] SHUFFLE [RS_110] PartitionCols:_col0 Select Operator [SEL_105] (rows=18262 width=1119) Output:["_col0"] Filter Operator [FIL_254] (rows=18262 width=1119) predicate:((d_qoy = 3) and (d_year = 1998) and d_date_sk is not null) - TableScan [TS_103] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_qoy"] + Please refer to the previous TableScan [TS_3] + <-Map 25 [SIMPLE_EDGE] + SHUFFLE [RS_109] + PartitionCols:_col0 + Select Operator [SEL_102] (rows=144002668 width=135) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_253] (rows=144002668 width=135) + predicate:(ws_sold_date_sk is not null and ws_bill_addr_sk is not null) + Please refer to the previous TableScan [TS_60] <-Reducer 4 [SIMPLE_EDGE] SHUFFLE [RS_125] PartitionCols:_col0 @@ -280,20 +228,27 @@ Stage-0 Output:["_col0","_col1"],aggregations:["sum(_col2)"],keys:_col7 Merge Join Operator [MERGEJOIN_257] (rows=696954748 width=88) Conds:RS_12._col1=RS_13._col0(Inner),Output:["_col2","_col7"] - <-Map 8 [SIMPLE_EDGE] + <-Map 24 [SIMPLE_EDGE] SHUFFLE [RS_13] PartitionCols:_col0 Select Operator [SEL_8] (rows=40000000 width=1014) Output:["_col0","_col1"] Filter Operator [FIL_240] (rows=40000000 width=1014) predicate:(ca_address_sk is not null and ca_county is not null) - TableScan [TS_6] (rows=40000000 width=1014) - default@customer_address,customer_address,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_county"] + Please refer to the previous TableScan [TS_6] <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_12] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_256] (rows=633595212 width=88) Conds:RS_9._col0=RS_10._col0(Inner),Output:["_col1","_col2"] + <-Map 13 [SIMPLE_EDGE] + SHUFFLE [RS_10] + PartitionCols:_col0 + Select Operator [SEL_5] (rows=18262 width=1119) + Output:["_col0"] + Filter Operator [FIL_239] (rows=18262 width=1119) + predicate:((d_qoy = 2) and (d_year = 1998) and d_date_sk is not null) + Please refer to the previous TableScan [TS_3] <-Map 1 [SIMPLE_EDGE] SHUFFLE [RS_9] PartitionCols:_col0 @@ -301,15 +256,46 @@ Stage-0 Output:["_col0","_col1","_col2"] Filter Operator [FIL_238] (rows=575995635 width=88) predicate:(ss_sold_date_sk is not null and ss_addr_sk is not null) - TableScan [TS_0] (rows=575995635 width=88) - default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_addr_sk","ss_ext_sales_price"] - <-Map 7 [SIMPLE_EDGE] - SHUFFLE [RS_10] + Please refer to the previous TableScan [TS_0] + <-Reducer 9 [SIMPLE_EDGE] + SHUFFLE [RS_126] + PartitionCols:_col0 + Group By Operator [GBY_38] (rows=348477374 width=88) + Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 + <-Reducer 8 [SIMPLE_EDGE] + SHUFFLE [RS_37] + PartitionCols:_col0 + Group By Operator [GBY_36] (rows=696954748 width=88) + Output:["_col0","_col1"],aggregations:["sum(_col2)"],keys:_col7 + Merge Join Operator [MERGEJOIN_259] (rows=696954748 width=88) + Conds:RS_32._col1=RS_33._col0(Inner),Output:["_col2","_col7"] + <-Map 24 [SIMPLE_EDGE] + SHUFFLE [RS_33] + PartitionCols:_col0 + Select Operator [SEL_28] (rows=40000000 width=1014) + Output:["_col0","_col1"] + Filter Operator [FIL_243] (rows=40000000 width=1014) + predicate:(ca_address_sk is not null and ca_county is not null) + Please refer to the previous TableScan [TS_6] + <-Reducer 7 [SIMPLE_EDGE] + SHUFFLE [RS_32] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_258] (rows=633595212 width=88) + Conds:RS_29._col0=RS_30._col0(Inner),Output:["_col1","_col2"] + <-Map 13 [SIMPLE_EDGE] + SHUFFLE [RS_30] PartitionCols:_col0 - Select Operator [SEL_5] (rows=18262 width=1119) + Select Operator [SEL_25] (rows=18262 width=1119) Output:["_col0"] - Filter Operator [FIL_239] (rows=18262 width=1119) - predicate:((d_qoy = 2) and (d_year = 1998) and d_date_sk is not null) - TableScan [TS_3] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_qoy"] + Filter Operator [FIL_242] (rows=18262 width=1119) + predicate:((d_qoy = 1) and (d_year = 1998) and d_date_sk is not null) + Please refer to the previous TableScan [TS_3] + <-Map 1 [SIMPLE_EDGE] + SHUFFLE [RS_29] + PartitionCols:_col0 + Select Operator [SEL_22] (rows=575995635 width=88) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_241] (rows=575995635 width=88) + predicate:(ss_sold_date_sk is not null and ss_addr_sk is not null) + Please refer to the previous TableScan [TS_0] diff --git ql/src/test/results/clientpositive/perf/query32.q.out ql/src/test/results/clientpositive/perf/query32.q.out index 5a6514b..c9820b3 100644 --- ql/src/test/results/clientpositive/perf/query32.q.out +++ ql/src/test/results/clientpositive/perf/query32.q.out @@ -39,11 +39,11 @@ POSTHOOK: type: QUERY Plan optimized by CBO. Vertex dependency in root stage -Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 7 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) +Reducer 4 <- Map 8 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (CUSTOM_SIMPLE_EDGE) -Reducer 9 <- Map 10 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) +Reducer 6 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) Stage-0 Fetch Operator @@ -63,7 +63,7 @@ Stage-0 predicate:(_col5 > _col1) Merge Join Operator [MERGEJOIN_59] (rows=696935432 width=135) Conds:RS_27._col0=RS_28._col0(Inner),RS_28._col0=RS_29._col0(Inner),Output:["_col1","_col5"] - <-Map 7 [SIMPLE_EDGE] + <-Map 8 [SIMPLE_EDGE] SHUFFLE [RS_28] PartitionCols:_col0 Select Operator [SEL_16] (rows=231000 width=1436) @@ -95,7 +95,7 @@ Stage-0 predicate:(cs_sold_date_sk is not null and cs_item_sk is not null) TableScan [TS_0] (rows=287989836 width=135) default@catalog_sales,cs,Tbl:COMPLETE,Col:NONE,Output:["cs_sold_date_sk","cs_item_sk","cs_ext_discount_amt"] - <-Map 6 [SIMPLE_EDGE] + <-Map 7 [SIMPLE_EDGE] SHUFFLE [RS_7] PartitionCols:_col0 Select Operator [SEL_5] (rows=8116 width=1119) @@ -104,29 +104,27 @@ Stage-0 predicate:(d_date BETWEEN '2000-01-27' AND '2000-04-27' and d_date_sk is not null) TableScan [TS_3] (rows=73049 width=1119) default@date_dim,d,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_date"] - <-Reducer 9 [SIMPLE_EDGE] + <-Reducer 6 [SIMPLE_EDGE] SHUFFLE [RS_29] PartitionCols:_col0 Select Operator [SEL_26] (rows=316788826 width=135) Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_58] (rows=316788826 width=135) Conds:RS_23._col0=RS_24._col0(Inner),Output:["_col1","_col2"] - <-Map 10 [SIMPLE_EDGE] - SHUFFLE [RS_24] - PartitionCols:_col0 - Select Operator [SEL_22] (rows=8116 width=1119) - Output:["_col0"] - Filter Operator [FIL_56] (rows=8116 width=1119) - predicate:(d_date BETWEEN '2000-01-27' AND '2000-04-27' and d_date_sk is not null) - TableScan [TS_20] (rows=73049 width=1119) - default@date_dim,d,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_date"] - <-Map 8 [SIMPLE_EDGE] + <-Map 1 [SIMPLE_EDGE] SHUFFLE [RS_23] PartitionCols:_col0 Select Operator [SEL_19] (rows=287989836 width=135) Output:["_col0","_col1","_col2"] Filter Operator [FIL_55] (rows=287989836 width=135) predicate:(cs_sold_date_sk is not null and cs_item_sk is not null) - TableScan [TS_17] (rows=287989836 width=135) - default@catalog_sales,cs,Tbl:COMPLETE,Col:NONE,Output:["cs_sold_date_sk","cs_item_sk","cs_ext_discount_amt"] + Please refer to the previous TableScan [TS_0] + <-Map 7 [SIMPLE_EDGE] + SHUFFLE [RS_24] + PartitionCols:_col0 + Select Operator [SEL_22] (rows=8116 width=1119) + Output:["_col0"] + Filter Operator [FIL_56] (rows=8116 width=1119) + predicate:(d_date BETWEEN '2000-01-27' AND '2000-04-27' and d_date_sk is not null) + Please refer to the previous TableScan [TS_3] diff --git ql/src/test/results/clientpositive/perf/query33.q.out ql/src/test/results/clientpositive/perf/query33.q.out index 342bd90..00c021b 100644 --- ql/src/test/results/clientpositive/perf/query33.q.out +++ ql/src/test/results/clientpositive/perf/query33.q.out @@ -147,26 +147,26 @@ POSTHOOK: type: QUERY Plan optimized by CBO. Vertex dependency in root stage -Reducer 11 <- Map 10 (SIMPLE_EDGE), Map 13 (SIMPLE_EDGE) -Reducer 12 <- Map 14 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE) -Reducer 16 <- Map 15 (SIMPLE_EDGE), Reducer 20 (SIMPLE_EDGE) -Reducer 17 <- Reducer 16 (SIMPLE_EDGE), Reducer 23 (SIMPLE_EDGE) -Reducer 18 <- Reducer 17 (SIMPLE_EDGE), Union 5 (CONTAINS) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) -Reducer 20 <- Map 19 (SIMPLE_EDGE) -Reducer 22 <- Map 21 (SIMPLE_EDGE), Map 24 (SIMPLE_EDGE) -Reducer 23 <- Map 25 (SIMPLE_EDGE), Reducer 22 (SIMPLE_EDGE) -Reducer 27 <- Map 26 (SIMPLE_EDGE), Reducer 31 (SIMPLE_EDGE) -Reducer 28 <- Reducer 27 (SIMPLE_EDGE), Reducer 34 (SIMPLE_EDGE) -Reducer 29 <- Reducer 28 (SIMPLE_EDGE), Union 5 (CONTAINS) -Reducer 3 <- Reducer 12 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 31 <- Map 30 (SIMPLE_EDGE) -Reducer 33 <- Map 32 (SIMPLE_EDGE), Map 35 (SIMPLE_EDGE) -Reducer 34 <- Map 36 (SIMPLE_EDGE), Reducer 33 (SIMPLE_EDGE) +Reducer 10 <- Reducer 9 (SIMPLE_EDGE), Union 5 (CONTAINS) +Reducer 11 <- Map 1 (SIMPLE_EDGE), Reducer 17 (SIMPLE_EDGE) +Reducer 12 <- Reducer 11 (SIMPLE_EDGE), Reducer 25 (SIMPLE_EDGE) +Reducer 13 <- Reducer 12 (SIMPLE_EDGE), Union 5 (CONTAINS) +Reducer 15 <- Map 14 (SIMPLE_EDGE) +Reducer 16 <- Map 14 (SIMPLE_EDGE) +Reducer 17 <- Map 14 (SIMPLE_EDGE) +Reducer 19 <- Map 18 (SIMPLE_EDGE), Map 21 (SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 15 (SIMPLE_EDGE) +Reducer 20 <- Map 26 (SIMPLE_EDGE), Reducer 19 (SIMPLE_EDGE) +Reducer 22 <- Map 21 (SIMPLE_EDGE), Map 27 (SIMPLE_EDGE) +Reducer 23 <- Map 26 (SIMPLE_EDGE), Reducer 22 (SIMPLE_EDGE) +Reducer 24 <- Map 21 (SIMPLE_EDGE), Map 28 (SIMPLE_EDGE) +Reducer 25 <- Map 26 (SIMPLE_EDGE), Reducer 24 (SIMPLE_EDGE) +Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 20 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Union 5 (CONTAINS) Reducer 6 <- Union 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) -Reducer 9 <- Map 8 (SIMPLE_EDGE) +Reducer 8 <- Map 1 (SIMPLE_EDGE), Reducer 16 (SIMPLE_EDGE) +Reducer 9 <- Reducer 23 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) Stage-0 Fetch Operator @@ -183,50 +183,20 @@ Stage-0 Group By Operator [GBY_117] (rows=335408073 width=108) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 <-Union 5 [SIMPLE_EDGE] - <-Reducer 18 [CONTAINS] + <-Reducer 10 [CONTAINS] Reduce Output Operator [RS_116] PartitionCols:_col0 Group By Operator [GBY_115] (rows=670816147 width=108) Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0 Group By Operator [GBY_72] (rows=191657247 width=135) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Reducer 17 [SIMPLE_EDGE] + <-Reducer 9 [SIMPLE_EDGE] SHUFFLE [RS_71] PartitionCols:_col0 Group By Operator [GBY_70] (rows=383314495 width=135) Output:["_col0","_col1"],aggregations:["sum(_col8)"],keys:_col1 Merge Join Operator [MERGEJOIN_184] (rows=383314495 width=135) Conds:RS_66._col0=RS_67._col4(Inner),Output:["_col1","_col8"] - <-Reducer 16 [SIMPLE_EDGE] - SHUFFLE [RS_66] - PartitionCols:_col0 - Merge Join Operator [MERGEJOIN_177] (rows=508200 width=1436) - Conds:RS_63._col1=RS_64._col0(Inner),Output:["_col0","_col1"] - <-Map 15 [SIMPLE_EDGE] - SHUFFLE [RS_63] - PartitionCols:_col1 - Select Operator [SEL_39] (rows=462000 width=1436) - Output:["_col0","_col1"] - Filter Operator [FIL_164] (rows=462000 width=1436) - predicate:(i_manufact_id is not null and i_item_sk is not null) - TableScan [TS_37] (rows=462000 width=1436) - default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_manufact_id"] - <-Reducer 20 [SIMPLE_EDGE] - SHUFFLE [RS_64] - PartitionCols:_col0 - Group By Operator [GBY_45] (rows=115500 width=1436) - Output:["_col0"],keys:KEY._col0 - <-Map 19 [SIMPLE_EDGE] - SHUFFLE [RS_44] - PartitionCols:_col0 - Group By Operator [GBY_43] (rows=231000 width=1436) - Output:["_col0"],keys:i_manufact_id - Select Operator [SEL_42] (rows=231000 width=1436) - Output:["i_manufact_id"] - Filter Operator [FIL_165] (rows=231000 width=1436) - predicate:((i_category) IN ('Books') and i_manufact_id is not null) - TableScan [TS_40] (rows=462000 width=1436) - default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_category","i_manufact_id"] <-Reducer 23 [SIMPLE_EDGE] SHUFFLE [RS_67] PartitionCols:_col4 @@ -234,14 +204,14 @@ Stage-0 Output:["_col4","_col5"] Merge Join Operator [MERGEJOIN_179] (rows=348467716 width=135) Conds:RS_59._col1=RS_60._col0(Inner),Output:["_col2","_col3"] - <-Map 25 [SIMPLE_EDGE] + <-Map 26 [SIMPLE_EDGE] SHUFFLE [RS_60] PartitionCols:_col0 Select Operator [SEL_55] (rows=20000000 width=1014) Output:["_col0"] Filter Operator [FIL_168] (rows=20000000 width=1014) predicate:((ca_gmt_offset = -6) and ca_address_sk is not null) - TableScan [TS_53] (rows=40000000 width=1014) + TableScan [TS_16] (rows=40000000 width=1014) default@customer_address,customer_address,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_gmt_offset"] <-Reducer 22 [SIMPLE_EDGE] SHUFFLE [RS_59] @@ -249,6 +219,15 @@ Stage-0 Merge Join Operator [MERGEJOIN_178] (rows=316788826 width=135) Conds:RS_56._col0=RS_57._col0(Inner),Output:["_col1","_col2","_col3"] <-Map 21 [SIMPLE_EDGE] + SHUFFLE [RS_57] + PartitionCols:_col0 + Select Operator [SEL_52] (rows=18262 width=1119) + Output:["_col0"] + Filter Operator [FIL_167] (rows=18262 width=1119) + predicate:((d_year = 1999) and (d_moy = 3) and d_date_sk is not null) + TableScan [TS_13] (rows=73049 width=1119) + default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_moy"] + <-Map 27 [SIMPLE_EDGE] SHUFFLE [RS_56] PartitionCols:_col0 Select Operator [SEL_49] (rows=287989836 width=135) @@ -257,49 +236,69 @@ Stage-0 predicate:(cs_sold_date_sk is not null and cs_bill_addr_sk is not null and cs_item_sk is not null) TableScan [TS_47] (rows=287989836 width=135) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:NONE,Output:["cs_sold_date_sk","cs_bill_addr_sk","cs_item_sk","cs_ext_sales_price"] - <-Map 24 [SIMPLE_EDGE] - SHUFFLE [RS_57] - PartitionCols:_col0 - Select Operator [SEL_52] (rows=18262 width=1119) - Output:["_col0"] - Filter Operator [FIL_167] (rows=18262 width=1119) - predicate:((d_year = 1999) and (d_moy = 3) and d_date_sk is not null) - TableScan [TS_50] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_moy"] - <-Reducer 29 [CONTAINS] + <-Reducer 8 [SIMPLE_EDGE] + SHUFFLE [RS_66] + PartitionCols:_col0 + Merge Join Operator [MERGEJOIN_177] (rows=508200 width=1436) + Conds:RS_63._col1=RS_64._col0(Inner),Output:["_col0","_col1"] + <-Map 1 [SIMPLE_EDGE] + SHUFFLE [RS_63] + PartitionCols:_col1 + Select Operator [SEL_39] (rows=462000 width=1436) + Output:["_col0","_col1"] + Filter Operator [FIL_164] (rows=462000 width=1436) + predicate:(i_manufact_id is not null and i_item_sk is not null) + TableScan [TS_0] (rows=462000 width=1436) + default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_manufact_id"] + <-Reducer 16 [SIMPLE_EDGE] + SHUFFLE [RS_64] + PartitionCols:_col0 + Group By Operator [GBY_45] (rows=115500 width=1436) + Output:["_col0"],keys:KEY._col0 + <-Map 14 [SIMPLE_EDGE] + SHUFFLE [RS_44] + PartitionCols:_col0 + Group By Operator [GBY_43] (rows=231000 width=1436) + Output:["_col0"],keys:i_manufact_id + Select Operator [SEL_42] (rows=231000 width=1436) + Output:["i_manufact_id"] + Filter Operator [FIL_165] (rows=231000 width=1436) + predicate:((i_category) IN ('Books') and i_manufact_id is not null) + TableScan [TS_3] (rows=462000 width=1436) + default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_category","i_manufact_id"] + <-Reducer 13 [CONTAINS] Reduce Output Operator [RS_116] PartitionCols:_col0 Group By Operator [GBY_115] (rows=670816147 width=108) Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0 Group By Operator [GBY_111] (rows=95833781 width=135) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Reducer 28 [SIMPLE_EDGE] + <-Reducer 12 [SIMPLE_EDGE] SHUFFLE [RS_110] PartitionCols:_col0 Group By Operator [GBY_109] (rows=191667562 width=135) Output:["_col0","_col1"],aggregations:["sum(_col8)"],keys:_col1 Merge Join Operator [MERGEJOIN_185] (rows=191667562 width=135) Conds:RS_105._col0=RS_106._col3(Inner),Output:["_col1","_col8"] - <-Reducer 27 [SIMPLE_EDGE] + <-Reducer 11 [SIMPLE_EDGE] SHUFFLE [RS_105] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_180] (rows=508200 width=1436) Conds:RS_102._col1=RS_103._col0(Inner),Output:["_col0","_col1"] - <-Map 26 [SIMPLE_EDGE] + <-Map 1 [SIMPLE_EDGE] SHUFFLE [RS_102] PartitionCols:_col1 Select Operator [SEL_78] (rows=462000 width=1436) Output:["_col0","_col1"] Filter Operator [FIL_169] (rows=462000 width=1436) predicate:(i_manufact_id is not null and i_item_sk is not null) - TableScan [TS_76] (rows=462000 width=1436) - default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_manufact_id"] - <-Reducer 31 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_0] + <-Reducer 17 [SIMPLE_EDGE] SHUFFLE [RS_103] PartitionCols:_col0 Group By Operator [GBY_84] (rows=115500 width=1436) Output:["_col0"],keys:KEY._col0 - <-Map 30 [SIMPLE_EDGE] + <-Map 14 [SIMPLE_EDGE] SHUFFLE [RS_83] PartitionCols:_col0 Group By Operator [GBY_82] (rows=231000 width=1436) @@ -308,30 +307,36 @@ Stage-0 Output:["i_manufact_id"] Filter Operator [FIL_170] (rows=231000 width=1436) predicate:((i_category) IN ('Books') and i_manufact_id is not null) - TableScan [TS_79] (rows=462000 width=1436) - default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_category","i_manufact_id"] - <-Reducer 34 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_3] + <-Reducer 25 [SIMPLE_EDGE] SHUFFLE [RS_106] PartitionCols:_col3 Select Operator [SEL_101] (rows=174243235 width=135) Output:["_col3","_col5"] Merge Join Operator [MERGEJOIN_182] (rows=174243235 width=135) Conds:RS_98._col2=RS_99._col0(Inner),Output:["_col1","_col3"] - <-Map 36 [SIMPLE_EDGE] + <-Map 26 [SIMPLE_EDGE] SHUFFLE [RS_99] PartitionCols:_col0 Select Operator [SEL_94] (rows=20000000 width=1014) Output:["_col0"] Filter Operator [FIL_173] (rows=20000000 width=1014) predicate:((ca_gmt_offset = -6) and ca_address_sk is not null) - TableScan [TS_92] (rows=40000000 width=1014) - default@customer_address,customer_address,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_gmt_offset"] - <-Reducer 33 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_16] + <-Reducer 24 [SIMPLE_EDGE] SHUFFLE [RS_98] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_181] (rows=158402938 width=135) Conds:RS_95._col0=RS_96._col0(Inner),Output:["_col1","_col2","_col3"] - <-Map 32 [SIMPLE_EDGE] + <-Map 21 [SIMPLE_EDGE] + SHUFFLE [RS_96] + PartitionCols:_col0 + Select Operator [SEL_91] (rows=18262 width=1119) + Output:["_col0"] + Filter Operator [FIL_172] (rows=18262 width=1119) + predicate:((d_year = 1999) and (d_moy = 3) and d_date_sk is not null) + Please refer to the previous TableScan [TS_13] + <-Map 28 [SIMPLE_EDGE] SHUFFLE [RS_95] PartitionCols:_col0 Select Operator [SEL_88] (rows=144002668 width=135) @@ -340,15 +345,6 @@ Stage-0 predicate:(ws_sold_date_sk is not null and ws_bill_addr_sk is not null and ws_item_sk is not null) TableScan [TS_86] (rows=144002668 width=135) default@web_sales,web_sales,Tbl:COMPLETE,Col:NONE,Output:["ws_sold_date_sk","ws_item_sk","ws_bill_addr_sk","ws_ext_sales_price"] - <-Map 35 [SIMPLE_EDGE] - SHUFFLE [RS_96] - PartitionCols:_col0 - Select Operator [SEL_91] (rows=18262 width=1119) - Output:["_col0"] - Filter Operator [FIL_172] (rows=18262 width=1119) - predicate:((d_year = 1999) and (d_moy = 3) and d_date_sk is not null) - TableScan [TS_89] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_moy"] <-Reducer 4 [CONTAINS] Reduce Output Operator [RS_116] PartitionCols:_col0 @@ -363,45 +359,6 @@ Stage-0 Output:["_col0","_col1"],aggregations:["sum(_col8)"],keys:_col1 Merge Join Operator [MERGEJOIN_183] (rows=766650239 width=88) Conds:RS_29._col0=RS_30._col3(Inner),Output:["_col1","_col8"] - <-Reducer 12 [SIMPLE_EDGE] - SHUFFLE [RS_30] - PartitionCols:_col3 - Select Operator [SEL_25] (rows=696954748 width=88) - Output:["_col3","_col5"] - Merge Join Operator [MERGEJOIN_176] (rows=696954748 width=88) - Conds:RS_22._col2=RS_23._col0(Inner),Output:["_col1","_col3"] - <-Map 14 [SIMPLE_EDGE] - SHUFFLE [RS_23] - PartitionCols:_col0 - Select Operator [SEL_18] (rows=20000000 width=1014) - Output:["_col0"] - Filter Operator [FIL_163] (rows=20000000 width=1014) - predicate:((ca_gmt_offset = -6) and ca_address_sk is not null) - TableScan [TS_16] (rows=40000000 width=1014) - default@customer_address,customer_address,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_gmt_offset"] - <-Reducer 11 [SIMPLE_EDGE] - SHUFFLE [RS_22] - PartitionCols:_col2 - Merge Join Operator [MERGEJOIN_175] (rows=633595212 width=88) - Conds:RS_19._col0=RS_20._col0(Inner),Output:["_col1","_col2","_col3"] - <-Map 10 [SIMPLE_EDGE] - SHUFFLE [RS_19] - PartitionCols:_col0 - Select Operator [SEL_12] (rows=575995635 width=88) - Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_161] (rows=575995635 width=88) - predicate:(ss_sold_date_sk is not null and ss_addr_sk is not null and ss_item_sk is not null) - TableScan [TS_10] (rows=575995635 width=88) - default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_item_sk","ss_addr_sk","ss_ext_sales_price"] - <-Map 13 [SIMPLE_EDGE] - SHUFFLE [RS_20] - PartitionCols:_col0 - Select Operator [SEL_15] (rows=18262 width=1119) - Output:["_col0"] - Filter Operator [FIL_162] (rows=18262 width=1119) - predicate:((d_year = 1999) and (d_moy = 3) and d_date_sk is not null) - TableScan [TS_13] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_moy"] <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_29] PartitionCols:_col0 @@ -414,14 +371,13 @@ Stage-0 Output:["_col0","_col1"] Filter Operator [FIL_159] (rows=462000 width=1436) predicate:(i_manufact_id is not null and i_item_sk is not null) - TableScan [TS_0] (rows=462000 width=1436) - default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_manufact_id"] - <-Reducer 9 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_0] + <-Reducer 15 [SIMPLE_EDGE] SHUFFLE [RS_27] PartitionCols:_col0 Group By Operator [GBY_8] (rows=115500 width=1436) Output:["_col0"],keys:KEY._col0 - <-Map 8 [SIMPLE_EDGE] + <-Map 14 [SIMPLE_EDGE] SHUFFLE [RS_7] PartitionCols:_col0 Group By Operator [GBY_6] (rows=231000 width=1436) @@ -430,6 +386,42 @@ Stage-0 Output:["i_manufact_id"] Filter Operator [FIL_160] (rows=231000 width=1436) predicate:((i_category) IN ('Books') and i_manufact_id is not null) - TableScan [TS_3] (rows=462000 width=1436) - default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_category","i_manufact_id"] + Please refer to the previous TableScan [TS_3] + <-Reducer 20 [SIMPLE_EDGE] + SHUFFLE [RS_30] + PartitionCols:_col3 + Select Operator [SEL_25] (rows=696954748 width=88) + Output:["_col3","_col5"] + Merge Join Operator [MERGEJOIN_176] (rows=696954748 width=88) + Conds:RS_22._col2=RS_23._col0(Inner),Output:["_col1","_col3"] + <-Map 26 [SIMPLE_EDGE] + SHUFFLE [RS_23] + PartitionCols:_col0 + Select Operator [SEL_18] (rows=20000000 width=1014) + Output:["_col0"] + Filter Operator [FIL_163] (rows=20000000 width=1014) + predicate:((ca_gmt_offset = -6) and ca_address_sk is not null) + Please refer to the previous TableScan [TS_16] + <-Reducer 19 [SIMPLE_EDGE] + SHUFFLE [RS_22] + PartitionCols:_col2 + Merge Join Operator [MERGEJOIN_175] (rows=633595212 width=88) + Conds:RS_19._col0=RS_20._col0(Inner),Output:["_col1","_col2","_col3"] + <-Map 21 [SIMPLE_EDGE] + SHUFFLE [RS_20] + PartitionCols:_col0 + Select Operator [SEL_15] (rows=18262 width=1119) + Output:["_col0"] + Filter Operator [FIL_162] (rows=18262 width=1119) + predicate:((d_year = 1999) and (d_moy = 3) and d_date_sk is not null) + Please refer to the previous TableScan [TS_13] + <-Map 18 [SIMPLE_EDGE] + SHUFFLE [RS_19] + PartitionCols:_col0 + Select Operator [SEL_12] (rows=575995635 width=88) + Output:["_col0","_col1","_col2","_col3"] + Filter Operator [FIL_161] (rows=575995635 width=88) + predicate:(ss_sold_date_sk is not null and ss_addr_sk is not null and ss_item_sk is not null) + TableScan [TS_10] (rows=575995635 width=88) + default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_item_sk","ss_addr_sk","ss_ext_sales_price"] diff --git ql/src/test/results/clientpositive/perf/query38.q.out ql/src/test/results/clientpositive/perf/query38.q.out index 133363f..ae9ada5 100644 --- ql/src/test/results/clientpositive/perf/query38.q.out +++ ql/src/test/results/clientpositive/perf/query38.q.out @@ -45,17 +45,17 @@ POSTHOOK: type: QUERY Plan optimized by CBO. Vertex dependency in root stage -Reducer 11 <- Map 10 (SIMPLE_EDGE), Map 14 (SIMPLE_EDGE) -Reducer 12 <- Map 15 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE) -Reducer 13 <- Reducer 12 (SIMPLE_EDGE), Union 5 (CONTAINS) -Reducer 17 <- Map 16 (SIMPLE_EDGE), Map 20 (SIMPLE_EDGE) -Reducer 18 <- Map 21 (SIMPLE_EDGE), Reducer 17 (SIMPLE_EDGE) -Reducer 19 <- Reducer 18 (SIMPLE_EDGE), Union 5 (CONTAINS) +Reducer 10 <- Map 15 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) +Reducer 11 <- Reducer 10 (SIMPLE_EDGE), Union 5 (CONTAINS) +Reducer 12 <- Map 17 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) +Reducer 13 <- Map 15 (SIMPLE_EDGE), Reducer 12 (SIMPLE_EDGE) +Reducer 14 <- Reducer 13 (SIMPLE_EDGE), Union 5 (CONTAINS) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) -Reducer 3 <- Map 9 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 3 <- Map 15 (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 (CUSTOM_SIMPLE_EDGE) +Reducer 9 <- Map 16 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) Stage-0 Fetch Operator @@ -79,7 +79,7 @@ Stage-0 Group By Operator [GBY_83] (rows=152458212 width=108) Output:["_col0","_col1","_col2","_col3"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2 <-Union 5 [SIMPLE_EDGE] - <-Reducer 13 [CONTAINS] + <-Reducer 11 [CONTAINS] Reduce Output Operator [RS_82] PartitionCols:_col0, _col1, _col2 Group By Operator [GBY_81] (rows=304916424 width=108) @@ -88,7 +88,7 @@ Stage-0 Output:["_col0","_col1","_col2","_col3"],aggregations:["count(1)"],keys:_col0, _col1, _col2 Group By Operator [GBY_44] (rows=174233858 width=135) Output:["_col0","_col1","_col2"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Reducer 12 [SIMPLE_EDGE] + <-Reducer 10 [SIMPLE_EDGE] SHUFFLE [RS_43] PartitionCols:_col0, _col1, _col2 Group By Operator [GBY_42] (rows=348467716 width=135) @@ -102,14 +102,23 @@ Stage-0 Output:["_col0","_col1","_col2"] Filter Operator [FIL_113] (rows=80000000 width=860) predicate:c_customer_sk is not null - TableScan [TS_32] (rows=80000000 width=860) + TableScan [TS_6] (rows=80000000 width=860) default@customer,customer,Tbl:COMPLETE,Col:NONE,Output:["c_customer_sk","c_first_name","c_last_name"] - <-Reducer 11 [SIMPLE_EDGE] + <-Reducer 9 [SIMPLE_EDGE] SHUFFLE [RS_38] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_120] (rows=316788826 width=135) Conds:RS_35._col0=RS_36._col0(Inner),Output:["_col1","_col3"] - <-Map 10 [SIMPLE_EDGE] + <-Map 8 [SIMPLE_EDGE] + SHUFFLE [RS_36] + PartitionCols:_col0 + Select Operator [SEL_31] (rows=8116 width=1119) + Output:["_col0","_col1"] + Filter Operator [FIL_112] (rows=8116 width=1119) + predicate:(d_month_seq BETWEEN 1212 AND 1223 and d_date_sk is not null) + TableScan [TS_3] (rows=73049 width=1119) + default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_date","d_month_seq"] + <-Map 16 [SIMPLE_EDGE] SHUFFLE [RS_35] PartitionCols:_col0 Select Operator [SEL_28] (rows=287989836 width=135) @@ -118,16 +127,7 @@ Stage-0 predicate:(cs_sold_date_sk is not null and cs_bill_customer_sk is not null) TableScan [TS_26] (rows=287989836 width=135) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:NONE,Output:["cs_sold_date_sk","cs_bill_customer_sk"] - <-Map 14 [SIMPLE_EDGE] - SHUFFLE [RS_36] - PartitionCols:_col0 - Select Operator [SEL_31] (rows=8116 width=1119) - Output:["_col0","_col1"] - Filter Operator [FIL_112] (rows=8116 width=1119) - predicate:(d_month_seq BETWEEN 1212 AND 1223 and d_date_sk is not null) - TableScan [TS_29] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_date","d_month_seq"] - <-Reducer 19 [CONTAINS] + <-Reducer 14 [CONTAINS] Reduce Output Operator [RS_82] PartitionCols:_col0, _col1, _col2 Group By Operator [GBY_81] (rows=304916424 width=108) @@ -136,28 +136,35 @@ Stage-0 Output:["_col0","_col1","_col2","_col3"],aggregations:["count(1)"],keys:_col0, _col1, _col2 Group By Operator [GBY_71] (rows=87121617 width=135) Output:["_col0","_col1","_col2"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Reducer 18 [SIMPLE_EDGE] + <-Reducer 13 [SIMPLE_EDGE] SHUFFLE [RS_70] PartitionCols:_col0, _col1, _col2 Group By Operator [GBY_69] (rows=174243235 width=135) Output:["_col0","_col1","_col2"],keys:_col7, _col6, _col3 Merge Join Operator [MERGEJOIN_123] (rows=174243235 width=135) Conds:RS_65._col1=RS_66._col0(Inner),Output:["_col3","_col6","_col7"] - <-Map 21 [SIMPLE_EDGE] + <-Map 15 [SIMPLE_EDGE] SHUFFLE [RS_66] PartitionCols:_col0 Select Operator [SEL_61] (rows=80000000 width=860) Output:["_col0","_col1","_col2"] Filter Operator [FIL_116] (rows=80000000 width=860) predicate:c_customer_sk is not null - TableScan [TS_59] (rows=80000000 width=860) - default@customer,customer,Tbl:COMPLETE,Col:NONE,Output:["c_customer_sk","c_first_name","c_last_name"] - <-Reducer 17 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_6] + <-Reducer 12 [SIMPLE_EDGE] SHUFFLE [RS_65] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_122] (rows=158402938 width=135) Conds:RS_62._col0=RS_63._col0(Inner),Output:["_col1","_col3"] - <-Map 16 [SIMPLE_EDGE] + <-Map 8 [SIMPLE_EDGE] + SHUFFLE [RS_63] + PartitionCols:_col0 + Select Operator [SEL_58] (rows=8116 width=1119) + Output:["_col0","_col1"] + Filter Operator [FIL_115] (rows=8116 width=1119) + predicate:(d_month_seq BETWEEN 1212 AND 1223 and d_date_sk is not null) + Please refer to the previous TableScan [TS_3] + <-Map 17 [SIMPLE_EDGE] SHUFFLE [RS_62] PartitionCols:_col0 Select Operator [SEL_55] (rows=144002668 width=135) @@ -166,15 +173,6 @@ Stage-0 predicate:(ws_sold_date_sk is not null and ws_bill_customer_sk is not null) TableScan [TS_53] (rows=144002668 width=135) default@web_sales,web_sales,Tbl:COMPLETE,Col:NONE,Output:["ws_sold_date_sk","ws_bill_customer_sk"] - <-Map 20 [SIMPLE_EDGE] - SHUFFLE [RS_63] - PartitionCols:_col0 - Select Operator [SEL_58] (rows=8116 width=1119) - Output:["_col0","_col1"] - Filter Operator [FIL_115] (rows=8116 width=1119) - predicate:(d_month_seq BETWEEN 1212 AND 1223 and d_date_sk is not null) - TableScan [TS_56] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_date","d_month_seq"] <-Reducer 4 [CONTAINS] Reduce Output Operator [RS_82] PartitionCols:_col0, _col1, _col2 @@ -191,20 +189,27 @@ Stage-0 Output:["_col0","_col1","_col2"],keys:_col7, _col6, _col3 Merge Join Operator [MERGEJOIN_119] (rows=696954748 width=88) Conds:RS_12._col1=RS_13._col0(Inner),Output:["_col3","_col6","_col7"] - <-Map 9 [SIMPLE_EDGE] + <-Map 15 [SIMPLE_EDGE] SHUFFLE [RS_13] PartitionCols:_col0 Select Operator [SEL_8] (rows=80000000 width=860) Output:["_col0","_col1","_col2"] Filter Operator [FIL_110] (rows=80000000 width=860) predicate:c_customer_sk is not null - TableScan [TS_6] (rows=80000000 width=860) - default@customer,customer,Tbl:COMPLETE,Col:NONE,Output:["c_customer_sk","c_first_name","c_last_name"] + Please refer to the previous TableScan [TS_6] <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_12] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_118] (rows=633595212 width=88) Conds:RS_9._col0=RS_10._col0(Inner),Output:["_col1","_col3"] + <-Map 8 [SIMPLE_EDGE] + SHUFFLE [RS_10] + PartitionCols:_col0 + Select Operator [SEL_5] (rows=8116 width=1119) + Output:["_col0","_col1"] + Filter Operator [FIL_109] (rows=8116 width=1119) + predicate:(d_month_seq BETWEEN 1212 AND 1223 and d_date_sk is not null) + Please refer to the previous TableScan [TS_3] <-Map 1 [SIMPLE_EDGE] SHUFFLE [RS_9] PartitionCols:_col0 @@ -214,13 +219,4 @@ Stage-0 predicate:(ss_sold_date_sk is not null and ss_customer_sk is not null) TableScan [TS_0] (rows=575995635 width=88) default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_customer_sk"] - <-Map 8 [SIMPLE_EDGE] - SHUFFLE [RS_10] - PartitionCols:_col0 - Select Operator [SEL_5] (rows=8116 width=1119) - Output:["_col0","_col1"] - Filter Operator [FIL_109] (rows=8116 width=1119) - predicate:(d_month_seq BETWEEN 1212 AND 1223 and d_date_sk is not null) - TableScan [TS_3] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_date","d_month_seq"] diff --git ql/src/test/results/clientpositive/perf/query39.q.out ql/src/test/results/clientpositive/perf/query39.q.out index 19472c4..dcf3cb2 100644 --- ql/src/test/results/clientpositive/perf/query39.q.out +++ ql/src/test/results/clientpositive/perf/query39.q.out @@ -5,16 +5,16 @@ POSTHOOK: type: QUERY Plan optimized by CBO. Vertex dependency in root stage -Reducer 12 <- Map 11 (SIMPLE_EDGE), Map 16 (SIMPLE_EDGE) -Reducer 13 <- Map 17 (SIMPLE_EDGE), Reducer 12 (SIMPLE_EDGE) -Reducer 14 <- Map 18 (SIMPLE_EDGE), Reducer 13 (SIMPLE_EDGE) -Reducer 15 <- Reducer 14 (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 10 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 10 <- Map 14 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) +Reducer 11 <- Reducer 10 (SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 12 (SIMPLE_EDGE) +Reducer 3 <- Map 13 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 4 <- Map 14 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) -Reducer 6 <- Reducer 15 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) +Reducer 6 <- Reducer 11 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) +Reducer 8 <- Map 1 (SIMPLE_EDGE), Map 12 (SIMPLE_EDGE) +Reducer 9 <- Map 13 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) Stage-0 Fetch Operator @@ -30,7 +30,7 @@ Stage-0 Output:["_col0","_col1","_col3","_col4","_col5","_col6","_col8","_col9"] Merge Join Operator [MERGEJOIN_103] (rows=13756683 width=15) Conds:RS_56._col1, _col2=RS_57._col1, _col2(Inner),Output:["_col1","_col2","_col3","_col4","_col6","_col7","_col8","_col9"] - <-Reducer 15 [SIMPLE_EDGE] + <-Reducer 11 [SIMPLE_EDGE] SHUFFLE [RS_57] PartitionCols:_col1, _col2 Select Operator [SEL_55] (rows=12506076 width=15) @@ -41,58 +41,58 @@ Stage-0 Output:["_col1","_col2","_col3","_col4"] Group By Operator [GBY_52] (rows=25012152 width=15) Output:["_col0","_col1","_col2","_col3","_col4"],aggregations:["stddev_samp(VALUE._col0)","avg(VALUE._col1)"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Reducer 14 [SIMPLE_EDGE] + <-Reducer 10 [SIMPLE_EDGE] SHUFFLE [RS_51] PartitionCols:_col0, _col1, _col2 Group By Operator [GBY_50] (rows=50024305 width=15) Output:["_col0","_col1","_col2","_col3","_col4"],aggregations:["stddev_samp(_col3)","avg(_col3)"],keys:_col8, _col7, _col9 Merge Join Operator [MERGEJOIN_102] (rows=50024305 width=15) Conds:RS_46._col2=RS_47._col0(Inner),Output:["_col3","_col7","_col8","_col9"] - <-Map 18 [SIMPLE_EDGE] + <-Map 14 [SIMPLE_EDGE] SHUFFLE [RS_47] PartitionCols:_col0 Select Operator [SEL_39] (rows=27 width=1029) Output:["_col0","_col1"] Filter Operator [FIL_96] (rows=27 width=1029) predicate:w_warehouse_sk is not null - TableScan [TS_37] (rows=27 width=1029) + TableScan [TS_9] (rows=27 width=1029) default@warehouse,warehouse,Tbl:COMPLETE,Col:NONE,Output:["w_warehouse_sk","w_warehouse_name"] - <-Reducer 13 [SIMPLE_EDGE] + <-Reducer 9 [SIMPLE_EDGE] SHUFFLE [RS_46] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_101] (rows=45476640 width=15) Conds:RS_43._col1=RS_44._col0(Inner),Output:["_col2","_col3","_col7"] - <-Map 17 [SIMPLE_EDGE] + <-Map 13 [SIMPLE_EDGE] SHUFFLE [RS_44] PartitionCols:_col0 Select Operator [SEL_36] (rows=462000 width=1436) Output:["_col0"] Filter Operator [FIL_95] (rows=462000 width=1436) predicate:i_item_sk is not null - TableScan [TS_34] (rows=462000 width=1436) + TableScan [TS_6] (rows=462000 width=1436) default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk"] - <-Reducer 12 [SIMPLE_EDGE] + <-Reducer 8 [SIMPLE_EDGE] SHUFFLE [RS_43] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_100] (rows=41342400 width=15) Conds:RS_40._col0=RS_41._col0(Inner),Output:["_col1","_col2","_col3"] - <-Map 11 [SIMPLE_EDGE] + <-Map 1 [SIMPLE_EDGE] SHUFFLE [RS_40] PartitionCols:_col0 Select Operator [SEL_30] (rows=37584000 width=15) Output:["_col0","_col1","_col2","_col3"] Filter Operator [FIL_93] (rows=37584000 width=15) predicate:(inv_item_sk is not null and inv_warehouse_sk is not null and inv_date_sk is not null) - TableScan [TS_28] (rows=37584000 width=15) + TableScan [TS_0] (rows=37584000 width=15) default@inventory,inventory,Tbl:COMPLETE,Col:NONE,Output:["inv_date_sk","inv_item_sk","inv_warehouse_sk","inv_quantity_on_hand"] - <-Map 16 [SIMPLE_EDGE] + <-Map 12 [SIMPLE_EDGE] SHUFFLE [RS_41] PartitionCols:_col0 Select Operator [SEL_33] (rows=18262 width=1119) Output:["_col0"] Filter Operator [FIL_94] (rows=18262 width=1119) predicate:((d_year = 1999) and (d_moy = 4) and d_date_sk is not null) - TableScan [TS_31] (rows=73049 width=1119) + TableScan [TS_3] (rows=73049 width=1119) default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_moy"] <-Reducer 5 [SIMPLE_EDGE] SHUFFLE [RS_56] @@ -112,29 +112,27 @@ Stage-0 Output:["_col0","_col1","_col2","_col3","_col4"],aggregations:["stddev_samp(_col3)","avg(_col3)"],keys:_col8, _col7, _col9 Merge Join Operator [MERGEJOIN_99] (rows=50024305 width=15) Conds:RS_18._col2=RS_19._col0(Inner),Output:["_col3","_col7","_col8","_col9"] - <-Map 10 [SIMPLE_EDGE] + <-Map 14 [SIMPLE_EDGE] SHUFFLE [RS_19] PartitionCols:_col0 Select Operator [SEL_11] (rows=27 width=1029) Output:["_col0","_col1"] Filter Operator [FIL_92] (rows=27 width=1029) predicate:w_warehouse_sk is not null - TableScan [TS_9] (rows=27 width=1029) - default@warehouse,warehouse,Tbl:COMPLETE,Col:NONE,Output:["w_warehouse_sk","w_warehouse_name"] + Please refer to the previous TableScan [TS_9] <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_18] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_98] (rows=45476640 width=15) Conds:RS_15._col1=RS_16._col0(Inner),Output:["_col2","_col3","_col7"] - <-Map 9 [SIMPLE_EDGE] + <-Map 13 [SIMPLE_EDGE] SHUFFLE [RS_16] PartitionCols:_col0 Select Operator [SEL_8] (rows=462000 width=1436) Output:["_col0"] Filter Operator [FIL_91] (rows=462000 width=1436) predicate:i_item_sk is not null - TableScan [TS_6] (rows=462000 width=1436) - default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk"] + Please refer to the previous TableScan [TS_6] <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_15] PartitionCols:_col1 @@ -147,17 +145,15 @@ Stage-0 Output:["_col0","_col1","_col2","_col3"] Filter Operator [FIL_89] (rows=37584000 width=15) predicate:(inv_item_sk is not null and inv_warehouse_sk is not null and inv_date_sk is not null) - TableScan [TS_0] (rows=37584000 width=15) - default@inventory,inventory,Tbl:COMPLETE,Col:NONE,Output:["inv_date_sk","inv_item_sk","inv_warehouse_sk","inv_quantity_on_hand"] - <-Map 8 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_0] + <-Map 12 [SIMPLE_EDGE] SHUFFLE [RS_13] PartitionCols:_col0 Select Operator [SEL_5] (rows=18262 width=1119) Output:["_col0"] Filter Operator [FIL_90] (rows=18262 width=1119) predicate:((d_year = 1999) and (d_moy = 3) and d_date_sk is not null) - TableScan [TS_3] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_moy"] + Please refer to the previous TableScan [TS_3] PREHOOK: query: with inv as (select w_warehouse_name,w_warehouse_sk,i_item_sk,d_moy ,stdev,mean, case mean when 0 then null else stdev/mean end cov from(select w_warehouse_name,w_warehouse_sk,i_item_sk,d_moy ,stddev_samp(inv_quantity_on_hand) stdev,avg(inv_quantity_on_hand) mean from inventory ,item ,warehouse ,date_dim where inv_item_sk = i_item_sk and inv_warehouse_sk = w_warehouse_sk and inv_date_sk = d_date_sk and d_year =1999 group by w_warehouse_name,w_warehouse_sk,i_item_sk,d_moy) foo where case mean when 0 then 0 else stdev/mean end > 1) select inv1.w_warehouse_sk,inv1.i_item_sk,inv1.d_moy,inv1.mean, inv1.cov ,inv2.w_warehouse_sk,inv2.i_item_sk,inv2.d_moy,inv2.mean, inv2.cov from inv inv1,inv inv2 where inv1.i_item_sk = inv2.i_item_sk and inv1.w_warehouse_sk = inv2.w_warehouse_sk and inv1.d_moy=3 and inv2.d_moy=3+1 and inv1.cov > 1.5 order by inv1.w_warehouse_sk,inv1.i_item_sk,inv1.d_moy,inv1.mean,inv1.cov ,inv2.d_moy,inv2.mean, inv2.cov PREHOOK: type: QUERY diff --git ql/src/test/results/clientpositive/perf/query46.q.out ql/src/test/results/clientpositive/perf/query46.q.out index 556e4b8..8c6e914 100644 --- ql/src/test/results/clientpositive/perf/query46.q.out +++ ql/src/test/results/clientpositive/perf/query46.q.out @@ -5,14 +5,14 @@ POSTHOOK: type: QUERY Plan optimized by CBO. Vertex dependency in root stage -Reducer 10 <- Map 15 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) -Reducer 11 <- Reducer 10 (SIMPLE_EDGE) +Reducer 10 <- Map 13 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) +Reducer 11 <- Map 14 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 5 (SIMPLE_EDGE) -Reducer 3 <- Reducer 11 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) -Reducer 7 <- Map 12 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) -Reducer 8 <- Map 13 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) -Reducer 9 <- Map 14 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) +Reducer 6 <- Map 5 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE) +Reducer 7 <- Reducer 6 (SIMPLE_EDGE) +Reducer 9 <- Map 12 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) Stage-0 Fetch Operator @@ -32,30 +32,52 @@ Stage-0 predicate:(_col5 <> _col8) Merge Join Operator [MERGEJOIN_86] (rows=463823414 width=88) Conds:RS_42._col0=RS_43._col1(Inner),Output:["_col2","_col3","_col5","_col6","_col8","_col9","_col10"] - <-Reducer 11 [SIMPLE_EDGE] + <-Reducer 2 [SIMPLE_EDGE] + SHUFFLE [RS_42] + PartitionCols:_col0 + Merge Join Operator [MERGEJOIN_81] (rows=88000001 width=860) + Conds:RS_39._col1=RS_40._col0(Inner),Output:["_col0","_col2","_col3","_col5"] + <-Map 5 [SIMPLE_EDGE] + SHUFFLE [RS_40] + PartitionCols:_col0 + Select Operator [SEL_5] (rows=40000000 width=1014) + Output:["_col0","_col1"] + Filter Operator [FIL_75] (rows=40000000 width=1014) + predicate:ca_address_sk is not null + TableScan [TS_3] (rows=40000000 width=1014) + default@customer_address,current_addr,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_city"] + <-Map 1 [SIMPLE_EDGE] + SHUFFLE [RS_39] + PartitionCols:_col1 + Select Operator [SEL_2] (rows=80000000 width=860) + Output:["_col0","_col1","_col2","_col3"] + Filter Operator [FIL_74] (rows=80000000 width=860) + predicate:(c_customer_sk is not null and c_current_addr_sk is not null) + TableScan [TS_0] (rows=80000000 width=860) + default@customer,customer,Tbl:COMPLETE,Col:NONE,Output:["c_customer_sk","c_current_addr_sk","c_first_name","c_last_name"] + <-Reducer 7 [SIMPLE_EDGE] SHUFFLE [RS_43] PartitionCols:_col1 Select Operator [SEL_37] (rows=421657640 width=88) Output:["_col0","_col1","_col2","_col3","_col4"] Group By Operator [GBY_36] (rows=421657640 width=88) Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3 - <-Reducer 10 [SIMPLE_EDGE] + <-Reducer 6 [SIMPLE_EDGE] SHUFFLE [RS_35] PartitionCols:_col0, _col1, _col2, _col3 Group By Operator [GBY_34] (rows=843315281 width=88) Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["sum(_col6)","sum(_col7)"],keys:_col1, _col17, _col3, _col5 Merge Join Operator [MERGEJOIN_85] (rows=843315281 width=88) Conds:RS_30._col3=RS_31._col0(Inner),Output:["_col1","_col3","_col5","_col6","_col7","_col17"] - <-Map 15 [SIMPLE_EDGE] + <-Map 5 [SIMPLE_EDGE] SHUFFLE [RS_31] PartitionCols:_col0 Select Operator [SEL_20] (rows=40000000 width=1014) Output:["_col0","_col1"] Filter Operator [FIL_80] (rows=40000000 width=1014) predicate:ca_address_sk is not null - TableScan [TS_18] (rows=40000000 width=1014) - default@customer_address,customer_address,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_city"] - <-Reducer 9 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_3] + <-Reducer 11 [SIMPLE_EDGE] SHUFFLE [RS_30] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_84] (rows=766650239 width=88) @@ -69,7 +91,7 @@ Stage-0 predicate:(((hd_dep_count = 4) or (hd_vehicle_count = 2)) and hd_demo_sk is not null) TableScan [TS_15] (rows=7200 width=107) default@household_demographics,household_demographics,Tbl:COMPLETE,Col:NONE,Output:["hd_demo_sk","hd_dep_count","hd_vehicle_count"] - <-Reducer 8 [SIMPLE_EDGE] + <-Reducer 10 [SIMPLE_EDGE] SHUFFLE [RS_27] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_83] (rows=696954748 width=88) @@ -83,7 +105,7 @@ Stage-0 predicate:((s_city) IN ('Rosedale', 'Bethlehem', 'Clinton', 'Clifton', 'Springfield') and s_store_sk is not null) TableScan [TS_12] (rows=1704 width=1910) default@store,store,Tbl:COMPLETE,Col:NONE,Output:["s_store_sk","s_city"] - <-Reducer 7 [SIMPLE_EDGE] + <-Reducer 9 [SIMPLE_EDGE] SHUFFLE [RS_24] PartitionCols:_col4 Merge Join Operator [MERGEJOIN_82] (rows=633595212 width=88) @@ -97,7 +119,7 @@ Stage-0 predicate:((d_dow) IN (6, 0) and (d_year) IN (1998, 1999, 2000) and d_date_sk is not null) TableScan [TS_9] (rows=73049 width=1119) default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_dow"] - <-Map 6 [SIMPLE_EDGE] + <-Map 8 [SIMPLE_EDGE] SHUFFLE [RS_21] PartitionCols:_col0 Select Operator [SEL_8] (rows=575995635 width=88) @@ -106,27 +128,4 @@ Stage-0 predicate:(ss_sold_date_sk is not null and ss_store_sk is not null and ss_hdemo_sk is not null and ss_addr_sk is not null and ss_customer_sk is not null) TableScan [TS_6] (rows=575995635 width=88) default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,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 2 [SIMPLE_EDGE] - SHUFFLE [RS_42] - PartitionCols:_col0 - Merge Join Operator [MERGEJOIN_81] (rows=88000001 width=860) - Conds:RS_39._col1=RS_40._col0(Inner),Output:["_col0","_col2","_col3","_col5"] - <-Map 1 [SIMPLE_EDGE] - SHUFFLE [RS_39] - PartitionCols:_col1 - Select Operator [SEL_2] (rows=80000000 width=860) - Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_74] (rows=80000000 width=860) - predicate:(c_customer_sk is not null and c_current_addr_sk is not null) - TableScan [TS_0] (rows=80000000 width=860) - default@customer,customer,Tbl:COMPLETE,Col:NONE,Output:["c_customer_sk","c_current_addr_sk","c_first_name","c_last_name"] - <-Map 5 [SIMPLE_EDGE] - SHUFFLE [RS_40] - PartitionCols:_col0 - Select Operator [SEL_5] (rows=40000000 width=1014) - Output:["_col0","_col1"] - Filter Operator [FIL_75] (rows=40000000 width=1014) - predicate:ca_address_sk is not null - TableScan [TS_3] (rows=40000000 width=1014) - default@customer_address,current_addr,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_city"] diff --git ql/src/test/results/clientpositive/perf/query5.q.out ql/src/test/results/clientpositive/perf/query5.q.out index ad78d7e..a3f2d58 100644 --- ql/src/test/results/clientpositive/perf/query5.q.out +++ ql/src/test/results/clientpositive/perf/query5.q.out @@ -256,19 +256,19 @@ Plan optimized by CBO. Vertex dependency in root stage Map 1 <- Union 2 (CONTAINS) -Map 12 <- Union 13 (CONTAINS) -Map 17 <- Union 13 (CONTAINS) -Map 20 <- Union 21 (CONTAINS) +Map 18 <- Union 19 (CONTAINS) +Map 20 <- Union 19 (CONTAINS) +Map 22 <- Union 23 (CONTAINS) Map 9 <- Union 2 (CONTAINS) -Reducer 14 <- Map 18 (SIMPLE_EDGE), Union 13 (SIMPLE_EDGE) -Reducer 15 <- Map 19 (SIMPLE_EDGE), Reducer 14 (SIMPLE_EDGE) +Reducer 11 <- Map 10 (SIMPLE_EDGE), Union 19 (SIMPLE_EDGE) +Reducer 12 <- Map 21 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE) +Reducer 13 <- Reducer 12 (SIMPLE_EDGE), Union 6 (CONTAINS) +Reducer 14 <- Map 10 (SIMPLE_EDGE), Union 23 (SIMPLE_EDGE) +Reducer 15 <- Map 27 (SIMPLE_EDGE), Reducer 14 (SIMPLE_EDGE) Reducer 16 <- Reducer 15 (SIMPLE_EDGE), Union 6 (CONTAINS) -Reducer 22 <- Map 28 (SIMPLE_EDGE), Union 21 (SIMPLE_EDGE) -Reducer 23 <- Map 29 (SIMPLE_EDGE), Reducer 22 (SIMPLE_EDGE) -Reducer 24 <- Reducer 23 (SIMPLE_EDGE), Union 6 (CONTAINS) -Reducer 26 <- Map 25 (SIMPLE_EDGE), Map 27 (SIMPLE_EDGE), Union 21 (CONTAINS) +Reducer 25 <- Map 24 (SIMPLE_EDGE), Map 26 (SIMPLE_EDGE), Union 23 (CONTAINS) Reducer 3 <- Map 10 (SIMPLE_EDGE), Union 2 (SIMPLE_EDGE) -Reducer 4 <- Map 11 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 4 <- Map 17 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE), Union 6 (CONTAINS) Reducer 7 <- Union 6 (SIMPLE_EDGE) Reducer 8 <- Reducer 7 (SIMPLE_EDGE) @@ -290,7 +290,7 @@ Stage-0 Group By Operator [GBY_88] (rows=1136898901 width=110) Output:["_col0","_col1","_col3","_col4","_col5"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)"],keys:KEY._col0, KEY._col1, KEY._col2 <-Union 6 [SIMPLE_EDGE] - <-Reducer 16 [CONTAINS] + <-Reducer 13 [CONTAINS] Reduce Output Operator [RS_87] PartitionCols:_col0, _col1, _col2 Group By Operator [GBY_86] (rows=2273797803 width=110) @@ -299,14 +299,14 @@ Stage-0 Output:["_col0","_col1","_col2","_col3","_col4"] Group By Operator [GBY_48] (rows=191657181 width=132) Output:["_col0","_col1","_col2","_col3","_col4"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)","sum(VALUE._col3)"],keys:KEY._col0 - <-Reducer 15 [SIMPLE_EDGE] + <-Reducer 12 [SIMPLE_EDGE] SHUFFLE [RS_47] PartitionCols:_col0 Group By Operator [GBY_46] (rows=383314363 width=132) Output:["_col0","_col1","_col2","_col3","_col4"],aggregations:["sum(_col2)","sum(_col4)","sum(_col3)","sum(_col5)"],keys:_col9 Merge Join Operator [MERGEJOIN_136] (rows=383314363 width=132) Conds:RS_42._col0=RS_43._col0(Inner),Output:["_col2","_col3","_col4","_col5","_col9"] - <-Map 19 [SIMPLE_EDGE] + <-Map 21 [SIMPLE_EDGE] SHUFFLE [RS_43] PartitionCols:_col0 Select Operator [SEL_38] (rows=46000 width=460) @@ -315,22 +315,22 @@ Stage-0 predicate:cp_catalog_page_sk is not null TableScan [TS_36] (rows=46000 width=460) default@catalog_page,catalog_page,Tbl:COMPLETE,Col:NONE,Output:["cp_catalog_page_sk","cp_catalog_page_id"] - <-Reducer 14 [SIMPLE_EDGE] + <-Reducer 11 [SIMPLE_EDGE] SHUFFLE [RS_42] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_135] (rows=348467596 width=132) - Conds:Union 13._col1=RS_40._col0(Inner),Output:["_col0","_col2","_col3","_col4","_col5"] - <-Map 18 [SIMPLE_EDGE] + Conds:Union 19._col1=RS_40._col0(Inner),Output:["_col0","_col2","_col3","_col4","_col5"] + <-Map 10 [SIMPLE_EDGE] SHUFFLE [RS_40] PartitionCols:_col0 Select Operator [SEL_35] (rows=8116 width=1119) Output:["_col0"] Filter Operator [FIL_125] (rows=8116 width=1119) predicate:(CAST( d_date AS TIMESTAMP) BETWEEN 1998-08-04 00:00:00.0 AND 1998-08-18 00:00:00.0 and d_date_sk is not null) - TableScan [TS_33] (rows=73049 width=1119) + TableScan [TS_8] (rows=73049 width=1119) default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_date"] - <-Union 13 [SIMPLE_EDGE] - <-Map 12 [CONTAINS] + <-Union 19 [SIMPLE_EDGE] + <-Map 18 [CONTAINS] Reduce Output Operator [RS_39] PartitionCols:_col1 Select Operator [SEL_27] (rows=287989836 width=135) @@ -339,7 +339,7 @@ Stage-0 predicate:(cs_sold_date_sk is not null and cs_catalog_page_sk is not null) TableScan [TS_25] (rows=287989836 width=135) Output:["cs_sold_date_sk","cs_catalog_page_sk","cs_ext_sales_price","cs_net_profit"] - <-Map 17 [CONTAINS] + <-Map 20 [CONTAINS] Reduce Output Operator [RS_39] PartitionCols:_col1 Select Operator [SEL_30] (rows=28798881 width=106) @@ -348,7 +348,7 @@ Stage-0 predicate:(cr_returned_date_sk is not null and cr_catalog_page_sk is not null) TableScan [TS_28] (rows=28798881 width=106) Output:["cr_returned_date_sk","cr_catalog_page_sk","cr_return_amount","cr_net_loss"] - <-Reducer 24 [CONTAINS] + <-Reducer 16 [CONTAINS] Reduce Output Operator [RS_87] PartitionCols:_col0, _col1, _col2 Group By Operator [GBY_86] (rows=2273797803 width=110) @@ -357,14 +357,14 @@ Stage-0 Output:["_col0","_col1","_col2","_col3","_col4"] Group By Operator [GBY_82] (rows=182955399 width=135) Output:["_col0","_col1","_col2","_col3","_col4"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)","sum(VALUE._col3)"],keys:KEY._col0 - <-Reducer 23 [SIMPLE_EDGE] + <-Reducer 15 [SIMPLE_EDGE] SHUFFLE [RS_81] PartitionCols:_col0 Group By Operator [GBY_80] (rows=365910798 width=135) Output:["_col0","_col1","_col2","_col3","_col4"],aggregations:["sum(_col2)","sum(_col4)","sum(_col3)","sum(_col5)"],keys:_col9 Merge Join Operator [MERGEJOIN_138] (rows=365910798 width=135) Conds:RS_76._col0=RS_77._col0(Inner),Output:["_col2","_col3","_col4","_col5","_col9"] - <-Map 29 [SIMPLE_EDGE] + <-Map 27 [SIMPLE_EDGE] SHUFFLE [RS_77] PartitionCols:_col0 Select Operator [SEL_72] (rows=84 width=1850) @@ -373,22 +373,21 @@ Stage-0 predicate:web_site_sk is not null TableScan [TS_70] (rows=84 width=1850) default@web_site,web_site,Tbl:COMPLETE,Col:NONE,Output:["web_site_sk","web_site_id"] - <-Reducer 22 [SIMPLE_EDGE] + <-Reducer 14 [SIMPLE_EDGE] SHUFFLE [RS_76] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_137] (rows=332646173 width=135) - Conds:Union 21._col1=RS_74._col0(Inner),Output:["_col0","_col2","_col3","_col4","_col5"] - <-Map 28 [SIMPLE_EDGE] + Conds:Union 23._col1=RS_74._col0(Inner),Output:["_col0","_col2","_col3","_col4","_col5"] + <-Map 10 [SIMPLE_EDGE] SHUFFLE [RS_74] PartitionCols:_col0 Select Operator [SEL_69] (rows=8116 width=1119) Output:["_col0"] Filter Operator [FIL_130] (rows=8116 width=1119) predicate:(CAST( d_date AS TIMESTAMP) BETWEEN 1998-08-04 00:00:00.0 AND 1998-08-18 00:00:00.0 and d_date_sk is not null) - TableScan [TS_67] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_date"] - <-Union 21 [SIMPLE_EDGE] - <-Map 20 [CONTAINS] + Please refer to the previous TableScan [TS_8] + <-Union 23 [SIMPLE_EDGE] + <-Map 22 [CONTAINS] Reduce Output Operator [RS_73] PartitionCols:_col1 Select Operator [SEL_54] (rows=144002668 width=135) @@ -397,14 +396,14 @@ Stage-0 predicate:(ws_sold_date_sk is not null and ws_web_site_sk is not null) TableScan [TS_52] (rows=144002668 width=135) Output:["ws_sold_date_sk","ws_web_site_sk","ws_ext_sales_price","ws_net_profit"] - <-Reducer 26 [CONTAINS] + <-Reducer 25 [CONTAINS] Reduce Output Operator [RS_73] PartitionCols:_col1 Select Operator [SEL_64] (rows=158402938 width=135) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] Merge Join Operator [MERGEJOIN_132] (rows=158402938 width=135) Conds:RS_61._col0, _col2=RS_62._col1, _col2(Inner),Output:["_col1","_col3","_col6","_col7"] - <-Map 25 [SIMPLE_EDGE] + <-Map 24 [SIMPLE_EDGE] SHUFFLE [RS_61] PartitionCols:_col0, _col2 Select Operator [SEL_57] (rows=144002668 width=135) @@ -413,7 +412,7 @@ Stage-0 predicate:(ws_web_site_sk is not null and ws_order_number is not null and ws_item_sk is not null) TableScan [TS_55] (rows=144002668 width=135) default@web_sales,web_sales,Tbl:COMPLETE,Col:NONE,Output:["ws_item_sk","ws_web_site_sk","ws_order_number"] - <-Map 27 [SIMPLE_EDGE] + <-Map 26 [SIMPLE_EDGE] SHUFFLE [RS_62] PartitionCols:_col1, _col2 Select Operator [SEL_60] (rows=14398467 width=92) @@ -438,7 +437,7 @@ Stage-0 Output:["_col0","_col1","_col2","_col3","_col4"],aggregations:["sum(_col2)","sum(_col4)","sum(_col3)","sum(_col5)"],keys:_col9 Merge Join Operator [MERGEJOIN_134] (rows=766640042 width=87) Conds:RS_17._col0=RS_18._col0(Inner),Output:["_col2","_col3","_col4","_col5","_col9"] - <-Map 11 [SIMPLE_EDGE] + <-Map 17 [SIMPLE_EDGE] SHUFFLE [RS_18] PartitionCols:_col0 Select Operator [SEL_13] (rows=1704 width=1910) @@ -459,8 +458,7 @@ Stage-0 Output:["_col0"] Filter Operator [FIL_121] (rows=8116 width=1119) predicate:(CAST( d_date AS TIMESTAMP) BETWEEN 1998-08-04 00:00:00.0 AND 1998-08-18 00:00:00.0 and d_date_sk is not null) - TableScan [TS_8] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_date"] + Please refer to the previous TableScan [TS_8] <-Union 2 [SIMPLE_EDGE] <-Map 1 [CONTAINS] Reduce Output Operator [RS_14] diff --git ql/src/test/results/clientpositive/perf/query51.q.out ql/src/test/results/clientpositive/perf/query51.q.out index 7da09ba..2468c77 100644 --- ql/src/test/results/clientpositive/perf/query51.q.out +++ ql/src/test/results/clientpositive/perf/query51.q.out @@ -87,13 +87,13 @@ POSTHOOK: type: QUERY Plan optimized by CBO. Vertex dependency in root stage -Reducer 10 <- Reducer 9 (SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Reducer 10 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) -Reducer 9 <- Map 11 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) +Reducer 8 <- Map 10 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) +Reducer 9 <- Reducer 8 (SIMPLE_EDGE) Stage-0 Fetch Operator @@ -120,40 +120,6 @@ Stage-0 PartitionCols:CASE WHEN (_col3 is not null) THEN (_col3) ELSE (_col0) END Merge Join Operator [MERGEJOIN_67] (rows=348477374 width=88) Conds:RS_40._col0, _col1=RS_41._col0, _col1(Outer),Output:["_col0","_col1","_col2","_col3","_col4","_col5"] - <-Reducer 10 [SIMPLE_EDGE] - SHUFFLE [RS_41] - PartitionCols:_col0, _col1 - Select Operator [SEL_37] (rows=79201469 width=135) - Output:["_col0","_col1","_col2"] - PTF Operator [PTF_36] (rows=79201469 width=135) - Function definitions:[{},{"name:":"windowingtablefunction","order by:":"_col1 ASC NULLS FIRST","partition by:":"_col0"}] - Group By Operator [GBY_32] (rows=79201469 width=135) - Output:["_col0","_col1","_col2"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0, KEY._col1 - <-Reducer 9 [SIMPLE_EDGE] - SHUFFLE [RS_31] - PartitionCols:_col0 - Group By Operator [GBY_30] (rows=158402938 width=135) - Output:["_col0","_col1","_col2"],aggregations:["sum(_col2)"],keys:_col1, _col4 - Merge Join Operator [MERGEJOIN_66] (rows=158402938 width=135) - Conds:RS_26._col0=RS_27._col0(Inner),Output:["_col1","_col2","_col4"] - <-Map 11 [SIMPLE_EDGE] - SHUFFLE [RS_27] - PartitionCols:_col0 - Select Operator [SEL_25] (rows=8116 width=1119) - Output:["_col0","_col1"] - Filter Operator [FIL_62] (rows=8116 width=1119) - predicate:(d_month_seq BETWEEN 1193 AND 1204 and d_date_sk is not null) - TableScan [TS_23] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_date","d_month_seq"] - <-Map 8 [SIMPLE_EDGE] - SHUFFLE [RS_26] - PartitionCols:_col0 - Select Operator [SEL_22] (rows=144002668 width=135) - Output:["_col0","_col1","_col2"] - Filter Operator [FIL_61] (rows=144002668 width=135) - predicate:(ws_item_sk is not null and ws_sold_date_sk is not null) - TableScan [TS_20] (rows=144002668 width=135) - default@web_sales,web_sales,Tbl:COMPLETE,Col:NONE,Output:["ws_sold_date_sk","ws_item_sk","ws_sales_price"] <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_40] PartitionCols:_col0, _col1 @@ -170,6 +136,15 @@ Stage-0 Output:["_col0","_col1","_col2"],aggregations:["sum(_col2)"],keys:_col1, _col4 Merge Join Operator [MERGEJOIN_65] (rows=633595212 width=88) Conds:RS_6._col0=RS_7._col0(Inner),Output:["_col1","_col2","_col4"] + <-Map 7 [SIMPLE_EDGE] + SHUFFLE [RS_7] + PartitionCols:_col0 + Select Operator [SEL_5] (rows=8116 width=1119) + Output:["_col0","_col1"] + Filter Operator [FIL_60] (rows=8116 width=1119) + predicate:(d_month_seq BETWEEN 1193 AND 1204 and d_date_sk is not null) + TableScan [TS_3] (rows=73049 width=1119) + default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_date","d_month_seq"] <-Map 1 [SIMPLE_EDGE] SHUFFLE [RS_6] PartitionCols:_col0 @@ -179,13 +154,37 @@ Stage-0 predicate:(ss_item_sk is not null and ss_sold_date_sk is not null) TableScan [TS_0] (rows=575995635 width=88) default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_item_sk","ss_sales_price"] + <-Reducer 9 [SIMPLE_EDGE] + SHUFFLE [RS_41] + PartitionCols:_col0, _col1 + Select Operator [SEL_37] (rows=79201469 width=135) + Output:["_col0","_col1","_col2"] + PTF Operator [PTF_36] (rows=79201469 width=135) + Function definitions:[{},{"name:":"windowingtablefunction","order by:":"_col1 ASC NULLS FIRST","partition by:":"_col0"}] + Group By Operator [GBY_32] (rows=79201469 width=135) + Output:["_col0","_col1","_col2"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0, KEY._col1 + <-Reducer 8 [SIMPLE_EDGE] + SHUFFLE [RS_31] + PartitionCols:_col0 + Group By Operator [GBY_30] (rows=158402938 width=135) + Output:["_col0","_col1","_col2"],aggregations:["sum(_col2)"],keys:_col1, _col4 + Merge Join Operator [MERGEJOIN_66] (rows=158402938 width=135) + Conds:RS_26._col0=RS_27._col0(Inner),Output:["_col1","_col2","_col4"] <-Map 7 [SIMPLE_EDGE] - SHUFFLE [RS_7] + SHUFFLE [RS_27] PartitionCols:_col0 - Select Operator [SEL_5] (rows=8116 width=1119) + Select Operator [SEL_25] (rows=8116 width=1119) Output:["_col0","_col1"] - Filter Operator [FIL_60] (rows=8116 width=1119) + Filter Operator [FIL_62] (rows=8116 width=1119) predicate:(d_month_seq BETWEEN 1193 AND 1204 and d_date_sk is not null) - TableScan [TS_3] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_date","d_month_seq"] + Please refer to the previous TableScan [TS_3] + <-Map 10 [SIMPLE_EDGE] + SHUFFLE [RS_26] + PartitionCols:_col0 + Select Operator [SEL_22] (rows=144002668 width=135) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_61] (rows=144002668 width=135) + predicate:(ws_item_sk is not null and ws_sold_date_sk is not null) + TableScan [TS_20] (rows=144002668 width=135) + default@web_sales,web_sales,Tbl:COMPLETE,Col:NONE,Output:["ws_sold_date_sk","ws_item_sk","ws_sales_price"] diff --git ql/src/test/results/clientpositive/perf/query56.q.out ql/src/test/results/clientpositive/perf/query56.q.out index 4fa28c2..9e710e0 100644 --- ql/src/test/results/clientpositive/perf/query56.q.out +++ ql/src/test/results/clientpositive/perf/query56.q.out @@ -133,26 +133,26 @@ POSTHOOK: type: QUERY Plan optimized by CBO. Vertex dependency in root stage -Reducer 11 <- Map 10 (SIMPLE_EDGE), Map 13 (SIMPLE_EDGE) -Reducer 12 <- Map 14 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE) -Reducer 16 <- Map 15 (SIMPLE_EDGE), Reducer 20 (SIMPLE_EDGE) -Reducer 17 <- Reducer 16 (SIMPLE_EDGE), Reducer 23 (SIMPLE_EDGE) -Reducer 18 <- Reducer 17 (SIMPLE_EDGE), Union 5 (CONTAINS) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) -Reducer 20 <- Map 19 (SIMPLE_EDGE) -Reducer 22 <- Map 21 (SIMPLE_EDGE), Map 24 (SIMPLE_EDGE) -Reducer 23 <- Map 25 (SIMPLE_EDGE), Reducer 22 (SIMPLE_EDGE) -Reducer 27 <- Map 26 (SIMPLE_EDGE), Reducer 31 (SIMPLE_EDGE) -Reducer 28 <- Reducer 27 (SIMPLE_EDGE), Reducer 34 (SIMPLE_EDGE) -Reducer 29 <- Reducer 28 (SIMPLE_EDGE), Union 5 (CONTAINS) -Reducer 3 <- Reducer 12 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 31 <- Map 30 (SIMPLE_EDGE) -Reducer 33 <- Map 32 (SIMPLE_EDGE), Map 35 (SIMPLE_EDGE) -Reducer 34 <- Map 36 (SIMPLE_EDGE), Reducer 33 (SIMPLE_EDGE) +Reducer 10 <- Reducer 9 (SIMPLE_EDGE), Union 5 (CONTAINS) +Reducer 11 <- Map 1 (SIMPLE_EDGE), Reducer 17 (SIMPLE_EDGE) +Reducer 12 <- Reducer 11 (SIMPLE_EDGE), Reducer 25 (SIMPLE_EDGE) +Reducer 13 <- Reducer 12 (SIMPLE_EDGE), Union 5 (CONTAINS) +Reducer 15 <- Map 14 (SIMPLE_EDGE) +Reducer 16 <- Map 14 (SIMPLE_EDGE) +Reducer 17 <- Map 14 (SIMPLE_EDGE) +Reducer 19 <- Map 18 (SIMPLE_EDGE), Map 21 (SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 15 (SIMPLE_EDGE) +Reducer 20 <- Map 26 (SIMPLE_EDGE), Reducer 19 (SIMPLE_EDGE) +Reducer 22 <- Map 21 (SIMPLE_EDGE), Map 27 (SIMPLE_EDGE) +Reducer 23 <- Map 26 (SIMPLE_EDGE), Reducer 22 (SIMPLE_EDGE) +Reducer 24 <- Map 21 (SIMPLE_EDGE), Map 28 (SIMPLE_EDGE) +Reducer 25 <- Map 26 (SIMPLE_EDGE), Reducer 24 (SIMPLE_EDGE) +Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 20 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Union 5 (CONTAINS) Reducer 6 <- Union 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) -Reducer 9 <- Map 8 (SIMPLE_EDGE) +Reducer 8 <- Map 1 (SIMPLE_EDGE), Reducer 16 (SIMPLE_EDGE) +Reducer 9 <- Reducer 23 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) Stage-0 Fetch Operator @@ -169,50 +169,20 @@ Stage-0 Group By Operator [GBY_117] (rows=335408073 width=108) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 <-Union 5 [SIMPLE_EDGE] - <-Reducer 18 [CONTAINS] + <-Reducer 10 [CONTAINS] Reduce Output Operator [RS_116] PartitionCols:_col0 Group By Operator [GBY_115] (rows=670816147 width=108) Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0 Group By Operator [GBY_72] (rows=191657247 width=135) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Reducer 17 [SIMPLE_EDGE] + <-Reducer 9 [SIMPLE_EDGE] SHUFFLE [RS_71] PartitionCols:_col0 Group By Operator [GBY_70] (rows=383314495 width=135) Output:["_col0","_col1"],aggregations:["sum(_col8)"],keys:_col1 Merge Join Operator [MERGEJOIN_184] (rows=383314495 width=135) Conds:RS_66._col0=RS_67._col4(Inner),Output:["_col1","_col8"] - <-Reducer 16 [SIMPLE_EDGE] - SHUFFLE [RS_66] - PartitionCols:_col0 - Merge Join Operator [MERGEJOIN_177] (rows=508200 width=1436) - Conds:RS_63._col1=RS_64._col0(Inner),Output:["_col0","_col1"] - <-Map 15 [SIMPLE_EDGE] - SHUFFLE [RS_63] - PartitionCols:_col1 - Select Operator [SEL_39] (rows=462000 width=1436) - Output:["_col0","_col1"] - Filter Operator [FIL_164] (rows=462000 width=1436) - predicate:(i_item_id is not null and i_item_sk is not null) - TableScan [TS_37] (rows=462000 width=1436) - default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_item_id"] - <-Reducer 20 [SIMPLE_EDGE] - SHUFFLE [RS_64] - PartitionCols:_col0 - Group By Operator [GBY_45] (rows=115500 width=1436) - Output:["_col0"],keys:KEY._col0 - <-Map 19 [SIMPLE_EDGE] - SHUFFLE [RS_44] - PartitionCols:_col0 - Group By Operator [GBY_43] (rows=231000 width=1436) - Output:["_col0"],keys:i_item_id - Select Operator [SEL_42] (rows=231000 width=1436) - Output:["i_item_id"] - Filter Operator [FIL_165] (rows=231000 width=1436) - predicate:((i_color) IN ('orchid', 'chiffon', 'lace') and i_item_id is not null) - TableScan [TS_40] (rows=462000 width=1436) - default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_id","i_color"] <-Reducer 23 [SIMPLE_EDGE] SHUFFLE [RS_67] PartitionCols:_col4 @@ -220,14 +190,14 @@ Stage-0 Output:["_col4","_col5"] Merge Join Operator [MERGEJOIN_179] (rows=348467716 width=135) Conds:RS_59._col1=RS_60._col0(Inner),Output:["_col2","_col3"] - <-Map 25 [SIMPLE_EDGE] + <-Map 26 [SIMPLE_EDGE] SHUFFLE [RS_60] PartitionCols:_col0 Select Operator [SEL_55] (rows=20000000 width=1014) Output:["_col0"] Filter Operator [FIL_168] (rows=20000000 width=1014) predicate:((ca_gmt_offset = -8) and ca_address_sk is not null) - TableScan [TS_53] (rows=40000000 width=1014) + TableScan [TS_16] (rows=40000000 width=1014) default@customer_address,customer_address,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_gmt_offset"] <-Reducer 22 [SIMPLE_EDGE] SHUFFLE [RS_59] @@ -235,6 +205,15 @@ Stage-0 Merge Join Operator [MERGEJOIN_178] (rows=316788826 width=135) Conds:RS_56._col0=RS_57._col0(Inner),Output:["_col1","_col2","_col3"] <-Map 21 [SIMPLE_EDGE] + SHUFFLE [RS_57] + PartitionCols:_col0 + Select Operator [SEL_52] (rows=18262 width=1119) + Output:["_col0"] + Filter Operator [FIL_167] (rows=18262 width=1119) + predicate:((d_year = 2000) and (d_moy = 1) and d_date_sk is not null) + TableScan [TS_13] (rows=73049 width=1119) + default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_moy"] + <-Map 27 [SIMPLE_EDGE] SHUFFLE [RS_56] PartitionCols:_col0 Select Operator [SEL_49] (rows=287989836 width=135) @@ -243,49 +222,69 @@ Stage-0 predicate:(cs_sold_date_sk is not null and cs_bill_addr_sk is not null and cs_item_sk is not null) TableScan [TS_47] (rows=287989836 width=135) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:NONE,Output:["cs_sold_date_sk","cs_bill_addr_sk","cs_item_sk","cs_ext_sales_price"] - <-Map 24 [SIMPLE_EDGE] - SHUFFLE [RS_57] - PartitionCols:_col0 - Select Operator [SEL_52] (rows=18262 width=1119) - Output:["_col0"] - Filter Operator [FIL_167] (rows=18262 width=1119) - predicate:((d_year = 2000) and (d_moy = 1) and d_date_sk is not null) - TableScan [TS_50] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_moy"] - <-Reducer 29 [CONTAINS] + <-Reducer 8 [SIMPLE_EDGE] + SHUFFLE [RS_66] + PartitionCols:_col0 + Merge Join Operator [MERGEJOIN_177] (rows=508200 width=1436) + Conds:RS_63._col1=RS_64._col0(Inner),Output:["_col0","_col1"] + <-Map 1 [SIMPLE_EDGE] + SHUFFLE [RS_63] + PartitionCols:_col1 + Select Operator [SEL_39] (rows=462000 width=1436) + Output:["_col0","_col1"] + Filter Operator [FIL_164] (rows=462000 width=1436) + predicate:(i_item_id is not null and i_item_sk is not null) + TableScan [TS_0] (rows=462000 width=1436) + default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_item_id"] + <-Reducer 16 [SIMPLE_EDGE] + SHUFFLE [RS_64] + PartitionCols:_col0 + Group By Operator [GBY_45] (rows=115500 width=1436) + Output:["_col0"],keys:KEY._col0 + <-Map 14 [SIMPLE_EDGE] + SHUFFLE [RS_44] + PartitionCols:_col0 + Group By Operator [GBY_43] (rows=231000 width=1436) + Output:["_col0"],keys:i_item_id + Select Operator [SEL_42] (rows=231000 width=1436) + Output:["i_item_id"] + Filter Operator [FIL_165] (rows=231000 width=1436) + predicate:((i_color) IN ('orchid', 'chiffon', 'lace') and i_item_id is not null) + TableScan [TS_3] (rows=462000 width=1436) + default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_id","i_color"] + <-Reducer 13 [CONTAINS] Reduce Output Operator [RS_116] PartitionCols:_col0 Group By Operator [GBY_115] (rows=670816147 width=108) Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0 Group By Operator [GBY_111] (rows=95833781 width=135) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Reducer 28 [SIMPLE_EDGE] + <-Reducer 12 [SIMPLE_EDGE] SHUFFLE [RS_110] PartitionCols:_col0 Group By Operator [GBY_109] (rows=191667562 width=135) Output:["_col0","_col1"],aggregations:["sum(_col8)"],keys:_col1 Merge Join Operator [MERGEJOIN_185] (rows=191667562 width=135) Conds:RS_105._col0=RS_106._col3(Inner),Output:["_col1","_col8"] - <-Reducer 27 [SIMPLE_EDGE] + <-Reducer 11 [SIMPLE_EDGE] SHUFFLE [RS_105] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_180] (rows=508200 width=1436) Conds:RS_102._col1=RS_103._col0(Inner),Output:["_col0","_col1"] - <-Map 26 [SIMPLE_EDGE] + <-Map 1 [SIMPLE_EDGE] SHUFFLE [RS_102] PartitionCols:_col1 Select Operator [SEL_78] (rows=462000 width=1436) Output:["_col0","_col1"] Filter Operator [FIL_169] (rows=462000 width=1436) predicate:(i_item_id is not null and i_item_sk is not null) - TableScan [TS_76] (rows=462000 width=1436) - default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_item_id"] - <-Reducer 31 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_0] + <-Reducer 17 [SIMPLE_EDGE] SHUFFLE [RS_103] PartitionCols:_col0 Group By Operator [GBY_84] (rows=115500 width=1436) Output:["_col0"],keys:KEY._col0 - <-Map 30 [SIMPLE_EDGE] + <-Map 14 [SIMPLE_EDGE] SHUFFLE [RS_83] PartitionCols:_col0 Group By Operator [GBY_82] (rows=231000 width=1436) @@ -294,30 +293,36 @@ Stage-0 Output:["i_item_id"] Filter Operator [FIL_170] (rows=231000 width=1436) predicate:((i_color) IN ('orchid', 'chiffon', 'lace') and i_item_id is not null) - TableScan [TS_79] (rows=462000 width=1436) - default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_id","i_color"] - <-Reducer 34 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_3] + <-Reducer 25 [SIMPLE_EDGE] SHUFFLE [RS_106] PartitionCols:_col3 Select Operator [SEL_101] (rows=174243235 width=135) Output:["_col3","_col5"] Merge Join Operator [MERGEJOIN_182] (rows=174243235 width=135) Conds:RS_98._col2=RS_99._col0(Inner),Output:["_col1","_col3"] - <-Map 36 [SIMPLE_EDGE] + <-Map 26 [SIMPLE_EDGE] SHUFFLE [RS_99] PartitionCols:_col0 Select Operator [SEL_94] (rows=20000000 width=1014) Output:["_col0"] Filter Operator [FIL_173] (rows=20000000 width=1014) predicate:((ca_gmt_offset = -8) and ca_address_sk is not null) - TableScan [TS_92] (rows=40000000 width=1014) - default@customer_address,customer_address,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_gmt_offset"] - <-Reducer 33 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_16] + <-Reducer 24 [SIMPLE_EDGE] SHUFFLE [RS_98] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_181] (rows=158402938 width=135) Conds:RS_95._col0=RS_96._col0(Inner),Output:["_col1","_col2","_col3"] - <-Map 32 [SIMPLE_EDGE] + <-Map 21 [SIMPLE_EDGE] + SHUFFLE [RS_96] + PartitionCols:_col0 + Select Operator [SEL_91] (rows=18262 width=1119) + Output:["_col0"] + Filter Operator [FIL_172] (rows=18262 width=1119) + predicate:((d_year = 2000) and (d_moy = 1) and d_date_sk is not null) + Please refer to the previous TableScan [TS_13] + <-Map 28 [SIMPLE_EDGE] SHUFFLE [RS_95] PartitionCols:_col0 Select Operator [SEL_88] (rows=144002668 width=135) @@ -326,15 +331,6 @@ Stage-0 predicate:(ws_sold_date_sk is not null and ws_bill_addr_sk is not null and ws_item_sk is not null) TableScan [TS_86] (rows=144002668 width=135) default@web_sales,web_sales,Tbl:COMPLETE,Col:NONE,Output:["ws_sold_date_sk","ws_item_sk","ws_bill_addr_sk","ws_ext_sales_price"] - <-Map 35 [SIMPLE_EDGE] - SHUFFLE [RS_96] - PartitionCols:_col0 - Select Operator [SEL_91] (rows=18262 width=1119) - Output:["_col0"] - Filter Operator [FIL_172] (rows=18262 width=1119) - predicate:((d_year = 2000) and (d_moy = 1) and d_date_sk is not null) - TableScan [TS_89] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_moy"] <-Reducer 4 [CONTAINS] Reduce Output Operator [RS_116] PartitionCols:_col0 @@ -349,45 +345,6 @@ Stage-0 Output:["_col0","_col1"],aggregations:["sum(_col8)"],keys:_col1 Merge Join Operator [MERGEJOIN_183] (rows=766650239 width=88) Conds:RS_29._col0=RS_30._col3(Inner),Output:["_col1","_col8"] - <-Reducer 12 [SIMPLE_EDGE] - SHUFFLE [RS_30] - PartitionCols:_col3 - Select Operator [SEL_25] (rows=696954748 width=88) - Output:["_col3","_col5"] - Merge Join Operator [MERGEJOIN_176] (rows=696954748 width=88) - Conds:RS_22._col2=RS_23._col0(Inner),Output:["_col1","_col3"] - <-Map 14 [SIMPLE_EDGE] - SHUFFLE [RS_23] - PartitionCols:_col0 - Select Operator [SEL_18] (rows=20000000 width=1014) - Output:["_col0"] - Filter Operator [FIL_163] (rows=20000000 width=1014) - predicate:((ca_gmt_offset = -8) and ca_address_sk is not null) - TableScan [TS_16] (rows=40000000 width=1014) - default@customer_address,customer_address,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_gmt_offset"] - <-Reducer 11 [SIMPLE_EDGE] - SHUFFLE [RS_22] - PartitionCols:_col2 - Merge Join Operator [MERGEJOIN_175] (rows=633595212 width=88) - Conds:RS_19._col0=RS_20._col0(Inner),Output:["_col1","_col2","_col3"] - <-Map 10 [SIMPLE_EDGE] - SHUFFLE [RS_19] - PartitionCols:_col0 - Select Operator [SEL_12] (rows=575995635 width=88) - Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_161] (rows=575995635 width=88) - predicate:(ss_sold_date_sk is not null and ss_addr_sk is not null and ss_item_sk is not null) - TableScan [TS_10] (rows=575995635 width=88) - default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_item_sk","ss_addr_sk","ss_ext_sales_price"] - <-Map 13 [SIMPLE_EDGE] - SHUFFLE [RS_20] - PartitionCols:_col0 - Select Operator [SEL_15] (rows=18262 width=1119) - Output:["_col0"] - Filter Operator [FIL_162] (rows=18262 width=1119) - predicate:((d_year = 2000) and (d_moy = 1) and d_date_sk is not null) - TableScan [TS_13] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_moy"] <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_29] PartitionCols:_col0 @@ -400,14 +357,13 @@ Stage-0 Output:["_col0","_col1"] Filter Operator [FIL_159] (rows=462000 width=1436) predicate:(i_item_id is not null and i_item_sk is not null) - TableScan [TS_0] (rows=462000 width=1436) - default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_item_id"] - <-Reducer 9 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_0] + <-Reducer 15 [SIMPLE_EDGE] SHUFFLE [RS_27] PartitionCols:_col0 Group By Operator [GBY_8] (rows=115500 width=1436) Output:["_col0"],keys:KEY._col0 - <-Map 8 [SIMPLE_EDGE] + <-Map 14 [SIMPLE_EDGE] SHUFFLE [RS_7] PartitionCols:_col0 Group By Operator [GBY_6] (rows=231000 width=1436) @@ -416,6 +372,42 @@ Stage-0 Output:["i_item_id"] Filter Operator [FIL_160] (rows=231000 width=1436) predicate:((i_color) IN ('orchid', 'chiffon', 'lace') and i_item_id is not null) - TableScan [TS_3] (rows=462000 width=1436) - default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_id","i_color"] + Please refer to the previous TableScan [TS_3] + <-Reducer 20 [SIMPLE_EDGE] + SHUFFLE [RS_30] + PartitionCols:_col3 + Select Operator [SEL_25] (rows=696954748 width=88) + Output:["_col3","_col5"] + Merge Join Operator [MERGEJOIN_176] (rows=696954748 width=88) + Conds:RS_22._col2=RS_23._col0(Inner),Output:["_col1","_col3"] + <-Map 26 [SIMPLE_EDGE] + SHUFFLE [RS_23] + PartitionCols:_col0 + Select Operator [SEL_18] (rows=20000000 width=1014) + Output:["_col0"] + Filter Operator [FIL_163] (rows=20000000 width=1014) + predicate:((ca_gmt_offset = -8) and ca_address_sk is not null) + Please refer to the previous TableScan [TS_16] + <-Reducer 19 [SIMPLE_EDGE] + SHUFFLE [RS_22] + PartitionCols:_col2 + Merge Join Operator [MERGEJOIN_175] (rows=633595212 width=88) + Conds:RS_19._col0=RS_20._col0(Inner),Output:["_col1","_col2","_col3"] + <-Map 21 [SIMPLE_EDGE] + SHUFFLE [RS_20] + PartitionCols:_col0 + Select Operator [SEL_15] (rows=18262 width=1119) + Output:["_col0"] + Filter Operator [FIL_162] (rows=18262 width=1119) + predicate:((d_year = 2000) and (d_moy = 1) and d_date_sk is not null) + Please refer to the previous TableScan [TS_13] + <-Map 18 [SIMPLE_EDGE] + SHUFFLE [RS_19] + PartitionCols:_col0 + Select Operator [SEL_12] (rows=575995635 width=88) + Output:["_col0","_col1","_col2","_col3"] + Filter Operator [FIL_161] (rows=575995635 width=88) + predicate:(ss_sold_date_sk is not null and ss_addr_sk is not null and ss_item_sk is not null) + TableScan [TS_10] (rows=575995635 width=88) + default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_item_sk","ss_addr_sk","ss_ext_sales_price"] diff --git ql/src/test/results/clientpositive/perf/query58.q.out ql/src/test/results/clientpositive/perf/query58.q.out index d03a736..e73605a 100644 --- ql/src/test/results/clientpositive/perf/query58.q.out +++ ql/src/test/results/clientpositive/perf/query58.q.out @@ -95,23 +95,23 @@ POSTHOOK: type: QUERY Plan optimized by CBO. Vertex dependency in root stage -Reducer 14 <- Map 13 (SIMPLE_EDGE), Reducer 19 (SIMPLE_EDGE) -Reducer 15 <- Map 21 (SIMPLE_EDGE), Reducer 14 (SIMPLE_EDGE) -Reducer 16 <- Map 22 (SIMPLE_EDGE), Reducer 15 (SIMPLE_EDGE) -Reducer 17 <- Reducer 16 (SIMPLE_EDGE) -Reducer 19 <- Map 18 (SIMPLE_EDGE), Map 20 (SIMPLE_EDGE) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) -Reducer 24 <- Map 23 (SIMPLE_EDGE), Reducer 29 (SIMPLE_EDGE) -Reducer 25 <- Map 31 (SIMPLE_EDGE), Reducer 24 (SIMPLE_EDGE) -Reducer 26 <- Map 32 (SIMPLE_EDGE), Reducer 25 (SIMPLE_EDGE) -Reducer 27 <- Reducer 26 (SIMPLE_EDGE) -Reducer 29 <- Map 28 (SIMPLE_EDGE), Map 30 (SIMPLE_EDGE) -Reducer 3 <- Map 11 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 12 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 10 <- Map 22 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) +Reducer 11 <- Reducer 10 (SIMPLE_EDGE) +Reducer 12 <- Map 1 (SIMPLE_EDGE), Reducer 19 (SIMPLE_EDGE) +Reducer 13 <- Map 24 (SIMPLE_EDGE), Reducer 12 (SIMPLE_EDGE) +Reducer 14 <- Map 22 (SIMPLE_EDGE), Reducer 13 (SIMPLE_EDGE) +Reducer 15 <- Reducer 14 (SIMPLE_EDGE) +Reducer 17 <- Map 16 (SIMPLE_EDGE), Map 20 (SIMPLE_EDGE) +Reducer 18 <- Map 16 (SIMPLE_EDGE), Map 20 (SIMPLE_EDGE) +Reducer 19 <- Map 16 (SIMPLE_EDGE), Map 20 (SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 17 (SIMPLE_EDGE) +Reducer 3 <- Map 21 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 4 <- Map 22 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (SIMPLE_EDGE) -Reducer 6 <- Reducer 17 (SIMPLE_EDGE), Reducer 27 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) +Reducer 6 <- Reducer 11 (SIMPLE_EDGE), Reducer 15 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) -Reducer 9 <- Map 10 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) +Reducer 8 <- Map 1 (SIMPLE_EDGE), Reducer 18 (SIMPLE_EDGE) +Reducer 9 <- Map 23 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) Stage-0 Fetch Operator @@ -131,12 +131,12 @@ Stage-0 predicate:(_col5 BETWEEN (0.9 * _col1) AND (1.1 * _col1) and _col5 BETWEEN (0.9 * _col3) AND (1.1 * _col3) and _col1 BETWEEN (0.9 * _col5) AND (1.1 * _col5) and _col3 BETWEEN (0.9 * _col5) AND (1.1 * _col5) and _col1 BETWEEN (0.9 * _col3) AND (1.1 * _col3) and _col3 BETWEEN (0.9 * _col1) AND (1.1 * _col1)) Merge Join Operator [MERGEJOIN_213] (rows=766650239 width=88) Conds:RS_99._col0=RS_100._col0(Inner),RS_99._col0=RS_101._col0(Inner),Output:["_col0","_col1","_col3","_col5"] - <-Reducer 17 [SIMPLE_EDGE] + <-Reducer 11 [SIMPLE_EDGE] SHUFFLE [RS_100] PartitionCols:_col0 Group By Operator [GBY_64] (rows=348477374 width=88) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Reducer 16 [SIMPLE_EDGE] + <-Reducer 10 [SIMPLE_EDGE] SHUFFLE [RS_63] PartitionCols:_col0 Group By Operator [GBY_62] (rows=696954748 width=88) @@ -150,14 +150,14 @@ Stage-0 Output:["_col0","_col1"] Filter Operator [FIL_195] (rows=462000 width=1436) predicate:(i_item_sk is not null and i_item_id is not null) - TableScan [TS_49] (rows=462000 width=1436) + TableScan [TS_16] (rows=462000 width=1436) default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_item_id"] - <-Reducer 15 [SIMPLE_EDGE] + <-Reducer 9 [SIMPLE_EDGE] SHUFFLE [RS_58] PartitionCols:_col4 Merge Join Operator [MERGEJOIN_207] (rows=633595212 width=88) Conds:RS_55._col0=RS_56._col0(Inner),Output:["_col4","_col5"] - <-Map 21 [SIMPLE_EDGE] + <-Map 23 [SIMPLE_EDGE] SHUFFLE [RS_56] PartitionCols:_col0 Select Operator [SEL_48] (rows=575995635 width=88) @@ -166,33 +166,33 @@ Stage-0 predicate:(ss_item_sk is not null and ss_sold_date_sk is not null) TableScan [TS_46] (rows=575995635 width=88) default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_item_sk","ss_ext_sales_price"] - <-Reducer 14 [SIMPLE_EDGE] + <-Reducer 8 [SIMPLE_EDGE] SHUFFLE [RS_55] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_206] (rows=88388 width=1119) Conds:RS_52._col1=RS_53._col0(Inner),Output:["_col0"] - <-Map 13 [SIMPLE_EDGE] + <-Map 1 [SIMPLE_EDGE] SHUFFLE [RS_52] PartitionCols:_col1 Select Operator [SEL_35] (rows=73049 width=1119) Output:["_col0","_col1"] Filter Operator [FIL_191] (rows=73049 width=1119) predicate:(d_date_sk is not null and d_date is not null) - TableScan [TS_33] (rows=73049 width=1119) + TableScan [TS_0] (rows=73049 width=1119) default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_date"] - <-Reducer 19 [SIMPLE_EDGE] + <-Reducer 18 [SIMPLE_EDGE] SHUFFLE [RS_53] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_205] (rows=80353 width=1119) Conds:RS_42._col1=RS_43._col1(Inner),Output:["_col0"] - <-Map 18 [SIMPLE_EDGE] + <-Map 16 [SIMPLE_EDGE] SHUFFLE [RS_42] PartitionCols:_col1 Select Operator [SEL_38] (rows=73049 width=1119) Output:["_col0","_col1"] Filter Operator [FIL_192] (rows=73049 width=1119) predicate:(d_week_seq is not null and d_date is not null) - TableScan [TS_36] (rows=73049 width=1119) + TableScan [TS_3] (rows=73049 width=1119) default@date_dim,d1,Tbl:COMPLETE,Col:NONE,Output:["d_date","d_week_seq"] <-Map 20 [SIMPLE_EDGE] SHUFFLE [RS_43] @@ -201,35 +201,34 @@ Stage-0 Output:["_col1"] Filter Operator [FIL_193] (rows=36524 width=1119) predicate:((d_date = '1998-08-04') and d_week_seq is not null) - TableScan [TS_39] (rows=73049 width=1119) + TableScan [TS_6] (rows=73049 width=1119) default@date_dim,d2,Tbl:COMPLETE,Col:NONE,Output:["d_date","d_week_seq"] - <-Reducer 27 [SIMPLE_EDGE] + <-Reducer 15 [SIMPLE_EDGE] SHUFFLE [RS_101] PartitionCols:_col0 Group By Operator [GBY_97] (rows=87121617 width=135) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Reducer 26 [SIMPLE_EDGE] + <-Reducer 14 [SIMPLE_EDGE] SHUFFLE [RS_96] PartitionCols:_col0 Group By Operator [GBY_95] (rows=174243235 width=135) Output:["_col0","_col1"],aggregations:["sum(_col5)"],keys:_col7 Merge Join Operator [MERGEJOIN_212] (rows=174243235 width=135) Conds:RS_91._col4=RS_92._col0(Inner),Output:["_col5","_col7"] - <-Map 32 [SIMPLE_EDGE] + <-Map 22 [SIMPLE_EDGE] SHUFFLE [RS_92] PartitionCols:_col0 Select Operator [SEL_84] (rows=462000 width=1436) Output:["_col0","_col1"] Filter Operator [FIL_200] (rows=462000 width=1436) predicate:(i_item_sk is not null and i_item_id is not null) - TableScan [TS_82] (rows=462000 width=1436) - default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_item_id"] - <-Reducer 25 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_16] + <-Reducer 13 [SIMPLE_EDGE] SHUFFLE [RS_91] PartitionCols:_col4 Merge Join Operator [MERGEJOIN_211] (rows=158402938 width=135) Conds:RS_88._col0=RS_89._col0(Inner),Output:["_col4","_col5"] - <-Map 31 [SIMPLE_EDGE] + <-Map 24 [SIMPLE_EDGE] SHUFFLE [RS_89] PartitionCols:_col0 Select Operator [SEL_81] (rows=144002668 width=135) @@ -238,43 +237,40 @@ Stage-0 predicate:(ws_item_sk is not null and ws_sold_date_sk is not null) TableScan [TS_79] (rows=144002668 width=135) default@web_sales,web_sales,Tbl:COMPLETE,Col:NONE,Output:["ws_sold_date_sk","ws_item_sk","ws_ext_sales_price"] - <-Reducer 24 [SIMPLE_EDGE] + <-Reducer 12 [SIMPLE_EDGE] SHUFFLE [RS_88] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_210] (rows=88388 width=1119) Conds:RS_85._col1=RS_86._col0(Inner),Output:["_col0"] - <-Map 23 [SIMPLE_EDGE] + <-Map 1 [SIMPLE_EDGE] SHUFFLE [RS_85] PartitionCols:_col1 Select Operator [SEL_68] (rows=73049 width=1119) Output:["_col0","_col1"] Filter Operator [FIL_196] (rows=73049 width=1119) predicate:(d_date_sk is not null and d_date is not null) - TableScan [TS_66] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_date"] - <-Reducer 29 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_0] + <-Reducer 19 [SIMPLE_EDGE] SHUFFLE [RS_86] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_209] (rows=80353 width=1119) Conds:RS_75._col1=RS_76._col1(Inner),Output:["_col0"] - <-Map 28 [SIMPLE_EDGE] + <-Map 16 [SIMPLE_EDGE] SHUFFLE [RS_75] PartitionCols:_col1 Select Operator [SEL_71] (rows=73049 width=1119) Output:["_col0","_col1"] Filter Operator [FIL_197] (rows=73049 width=1119) predicate:(d_week_seq is not null and d_date is not null) - TableScan [TS_69] (rows=73049 width=1119) - default@date_dim,d1,Tbl:COMPLETE,Col:NONE,Output:["d_date","d_week_seq"] - <-Map 30 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_3] + <-Map 20 [SIMPLE_EDGE] SHUFFLE [RS_76] PartitionCols:_col1 Select Operator [SEL_74] (rows=36524 width=1119) Output:["_col1"] Filter Operator [FIL_198] (rows=36524 width=1119) predicate:((d_date = '1998-08-04') and d_week_seq is not null) - TableScan [TS_72] (rows=73049 width=1119) - default@date_dim,d2,Tbl:COMPLETE,Col:NONE,Output:["d_date","d_week_seq"] + Please refer to the previous TableScan [TS_6] <-Reducer 5 [SIMPLE_EDGE] SHUFFLE [RS_99] PartitionCols:_col0 @@ -287,21 +283,20 @@ Stage-0 Output:["_col0","_col1"],aggregations:["sum(_col5)"],keys:_col7 Merge Join Operator [MERGEJOIN_204] (rows=348467716 width=135) Conds:RS_25._col4=RS_26._col0(Inner),Output:["_col5","_col7"] - <-Map 12 [SIMPLE_EDGE] + <-Map 22 [SIMPLE_EDGE] SHUFFLE [RS_26] PartitionCols:_col0 Select Operator [SEL_18] (rows=462000 width=1436) Output:["_col0","_col1"] Filter Operator [FIL_190] (rows=462000 width=1436) predicate:(i_item_sk is not null and i_item_id is not null) - TableScan [TS_16] (rows=462000 width=1436) - default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_item_id"] + Please refer to the previous TableScan [TS_16] <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_25] PartitionCols:_col4 Merge Join Operator [MERGEJOIN_203] (rows=316788826 width=135) Conds:RS_22._col0=RS_23._col0(Inner),Output:["_col4","_col5"] - <-Map 11 [SIMPLE_EDGE] + <-Map 21 [SIMPLE_EDGE] SHUFFLE [RS_23] PartitionCols:_col0 Select Operator [SEL_15] (rows=287989836 width=135) @@ -322,29 +317,26 @@ Stage-0 Output:["_col0","_col1"] Filter Operator [FIL_186] (rows=73049 width=1119) predicate:(d_date_sk is not null and d_date is not null) - TableScan [TS_0] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_date"] - <-Reducer 9 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_0] + <-Reducer 17 [SIMPLE_EDGE] SHUFFLE [RS_20] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_201] (rows=80353 width=1119) Conds:RS_9._col1=RS_10._col1(Inner),Output:["_col0"] - <-Map 10 [SIMPLE_EDGE] - SHUFFLE [RS_10] - PartitionCols:_col1 - Select Operator [SEL_8] (rows=36524 width=1119) - Output:["_col1"] - Filter Operator [FIL_188] (rows=36524 width=1119) - predicate:((d_date = '1998-08-04') and d_week_seq is not null) - TableScan [TS_6] (rows=73049 width=1119) - default@date_dim,d2,Tbl:COMPLETE,Col:NONE,Output:["d_date","d_week_seq"] - <-Map 8 [SIMPLE_EDGE] + <-Map 16 [SIMPLE_EDGE] SHUFFLE [RS_9] PartitionCols:_col1 Select Operator [SEL_5] (rows=73049 width=1119) Output:["_col0","_col1"] Filter Operator [FIL_187] (rows=73049 width=1119) predicate:(d_week_seq is not null and d_date is not null) - TableScan [TS_3] (rows=73049 width=1119) - default@date_dim,d1,Tbl:COMPLETE,Col:NONE,Output:["d_date","d_week_seq"] + Please refer to the previous TableScan [TS_3] + <-Map 20 [SIMPLE_EDGE] + SHUFFLE [RS_10] + PartitionCols:_col1 + Select Operator [SEL_8] (rows=36524 width=1119) + Output:["_col1"] + Filter Operator [FIL_188] (rows=36524 width=1119) + predicate:((d_date = '1998-08-04') and d_week_seq is not null) + Please refer to the previous TableScan [TS_6] diff --git ql/src/test/results/clientpositive/perf/query60.q.out ql/src/test/results/clientpositive/perf/query60.q.out index ad9d08e..bb05a42 100644 --- ql/src/test/results/clientpositive/perf/query60.q.out +++ ql/src/test/results/clientpositive/perf/query60.q.out @@ -153,26 +153,26 @@ POSTHOOK: type: QUERY Plan optimized by CBO. Vertex dependency in root stage -Reducer 11 <- Map 10 (SIMPLE_EDGE), Map 13 (SIMPLE_EDGE) -Reducer 12 <- Map 14 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE) -Reducer 16 <- Map 15 (SIMPLE_EDGE), Reducer 20 (SIMPLE_EDGE) -Reducer 17 <- Reducer 16 (SIMPLE_EDGE), Reducer 23 (SIMPLE_EDGE) -Reducer 18 <- Reducer 17 (SIMPLE_EDGE), Union 5 (CONTAINS) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) -Reducer 20 <- Map 19 (SIMPLE_EDGE) -Reducer 22 <- Map 21 (SIMPLE_EDGE), Map 24 (SIMPLE_EDGE) -Reducer 23 <- Map 25 (SIMPLE_EDGE), Reducer 22 (SIMPLE_EDGE) -Reducer 27 <- Map 26 (SIMPLE_EDGE), Reducer 31 (SIMPLE_EDGE) -Reducer 28 <- Reducer 27 (SIMPLE_EDGE), Reducer 34 (SIMPLE_EDGE) -Reducer 29 <- Reducer 28 (SIMPLE_EDGE), Union 5 (CONTAINS) -Reducer 3 <- Reducer 12 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 31 <- Map 30 (SIMPLE_EDGE) -Reducer 33 <- Map 32 (SIMPLE_EDGE), Map 35 (SIMPLE_EDGE) -Reducer 34 <- Map 36 (SIMPLE_EDGE), Reducer 33 (SIMPLE_EDGE) +Reducer 10 <- Reducer 9 (SIMPLE_EDGE), Union 5 (CONTAINS) +Reducer 11 <- Map 1 (SIMPLE_EDGE), Reducer 17 (SIMPLE_EDGE) +Reducer 12 <- Reducer 11 (SIMPLE_EDGE), Reducer 25 (SIMPLE_EDGE) +Reducer 13 <- Reducer 12 (SIMPLE_EDGE), Union 5 (CONTAINS) +Reducer 15 <- Map 14 (SIMPLE_EDGE) +Reducer 16 <- Map 14 (SIMPLE_EDGE) +Reducer 17 <- Map 14 (SIMPLE_EDGE) +Reducer 19 <- Map 18 (SIMPLE_EDGE), Map 21 (SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 15 (SIMPLE_EDGE) +Reducer 20 <- Map 26 (SIMPLE_EDGE), Reducer 19 (SIMPLE_EDGE) +Reducer 22 <- Map 21 (SIMPLE_EDGE), Map 27 (SIMPLE_EDGE) +Reducer 23 <- Map 26 (SIMPLE_EDGE), Reducer 22 (SIMPLE_EDGE) +Reducer 24 <- Map 21 (SIMPLE_EDGE), Map 28 (SIMPLE_EDGE) +Reducer 25 <- Map 26 (SIMPLE_EDGE), Reducer 24 (SIMPLE_EDGE) +Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 20 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Union 5 (CONTAINS) Reducer 6 <- Union 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) -Reducer 9 <- Map 8 (SIMPLE_EDGE) +Reducer 8 <- Map 1 (SIMPLE_EDGE), Reducer 16 (SIMPLE_EDGE) +Reducer 9 <- Reducer 23 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) Stage-0 Fetch Operator @@ -189,50 +189,20 @@ Stage-0 Group By Operator [GBY_117] (rows=335408073 width=108) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 <-Union 5 [SIMPLE_EDGE] - <-Reducer 18 [CONTAINS] + <-Reducer 10 [CONTAINS] Reduce Output Operator [RS_116] PartitionCols:_col0 Group By Operator [GBY_115] (rows=670816147 width=108) Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0 Group By Operator [GBY_72] (rows=191657247 width=135) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Reducer 17 [SIMPLE_EDGE] + <-Reducer 9 [SIMPLE_EDGE] SHUFFLE [RS_71] PartitionCols:_col0 Group By Operator [GBY_70] (rows=383314495 width=135) Output:["_col0","_col1"],aggregations:["sum(_col8)"],keys:_col1 Merge Join Operator [MERGEJOIN_184] (rows=383314495 width=135) Conds:RS_66._col0=RS_67._col4(Inner),Output:["_col1","_col8"] - <-Reducer 16 [SIMPLE_EDGE] - SHUFFLE [RS_66] - PartitionCols:_col0 - Merge Join Operator [MERGEJOIN_177] (rows=508200 width=1436) - Conds:RS_63._col1=RS_64._col0(Inner),Output:["_col0","_col1"] - <-Map 15 [SIMPLE_EDGE] - SHUFFLE [RS_63] - PartitionCols:_col1 - Select Operator [SEL_39] (rows=462000 width=1436) - Output:["_col0","_col1"] - Filter Operator [FIL_164] (rows=462000 width=1436) - predicate:(i_item_id is not null and i_item_sk is not null) - TableScan [TS_37] (rows=462000 width=1436) - default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_item_id"] - <-Reducer 20 [SIMPLE_EDGE] - SHUFFLE [RS_64] - PartitionCols:_col0 - Group By Operator [GBY_45] (rows=115500 width=1436) - Output:["_col0"],keys:KEY._col0 - <-Map 19 [SIMPLE_EDGE] - SHUFFLE [RS_44] - PartitionCols:_col0 - Group By Operator [GBY_43] (rows=231000 width=1436) - Output:["_col0"],keys:i_item_id - Select Operator [SEL_42] (rows=231000 width=1436) - Output:["i_item_id"] - Filter Operator [FIL_165] (rows=231000 width=1436) - predicate:((i_category) IN ('Children') and i_item_id is not null) - TableScan [TS_40] (rows=462000 width=1436) - default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_id","i_category"] <-Reducer 23 [SIMPLE_EDGE] SHUFFLE [RS_67] PartitionCols:_col4 @@ -240,14 +210,14 @@ Stage-0 Output:["_col4","_col5"] Merge Join Operator [MERGEJOIN_179] (rows=348467716 width=135) Conds:RS_59._col1=RS_60._col0(Inner),Output:["_col2","_col3"] - <-Map 25 [SIMPLE_EDGE] + <-Map 26 [SIMPLE_EDGE] SHUFFLE [RS_60] PartitionCols:_col0 Select Operator [SEL_55] (rows=20000000 width=1014) Output:["_col0"] Filter Operator [FIL_168] (rows=20000000 width=1014) predicate:((ca_gmt_offset = -6) and ca_address_sk is not null) - TableScan [TS_53] (rows=40000000 width=1014) + TableScan [TS_16] (rows=40000000 width=1014) default@customer_address,customer_address,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_gmt_offset"] <-Reducer 22 [SIMPLE_EDGE] SHUFFLE [RS_59] @@ -255,6 +225,15 @@ Stage-0 Merge Join Operator [MERGEJOIN_178] (rows=316788826 width=135) Conds:RS_56._col0=RS_57._col0(Inner),Output:["_col1","_col2","_col3"] <-Map 21 [SIMPLE_EDGE] + SHUFFLE [RS_57] + PartitionCols:_col0 + Select Operator [SEL_52] (rows=18262 width=1119) + Output:["_col0"] + Filter Operator [FIL_167] (rows=18262 width=1119) + predicate:((d_year = 1999) and (d_moy = 9) and d_date_sk is not null) + TableScan [TS_13] (rows=73049 width=1119) + default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_moy"] + <-Map 27 [SIMPLE_EDGE] SHUFFLE [RS_56] PartitionCols:_col0 Select Operator [SEL_49] (rows=287989836 width=135) @@ -263,49 +242,69 @@ Stage-0 predicate:(cs_sold_date_sk is not null and cs_bill_addr_sk is not null and cs_item_sk is not null) TableScan [TS_47] (rows=287989836 width=135) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:NONE,Output:["cs_sold_date_sk","cs_bill_addr_sk","cs_item_sk","cs_ext_sales_price"] - <-Map 24 [SIMPLE_EDGE] - SHUFFLE [RS_57] - PartitionCols:_col0 - Select Operator [SEL_52] (rows=18262 width=1119) - Output:["_col0"] - Filter Operator [FIL_167] (rows=18262 width=1119) - predicate:((d_year = 1999) and (d_moy = 9) and d_date_sk is not null) - TableScan [TS_50] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_moy"] - <-Reducer 29 [CONTAINS] + <-Reducer 8 [SIMPLE_EDGE] + SHUFFLE [RS_66] + PartitionCols:_col0 + Merge Join Operator [MERGEJOIN_177] (rows=508200 width=1436) + Conds:RS_63._col1=RS_64._col0(Inner),Output:["_col0","_col1"] + <-Map 1 [SIMPLE_EDGE] + SHUFFLE [RS_63] + PartitionCols:_col1 + Select Operator [SEL_39] (rows=462000 width=1436) + Output:["_col0","_col1"] + Filter Operator [FIL_164] (rows=462000 width=1436) + predicate:(i_item_id is not null and i_item_sk is not null) + TableScan [TS_0] (rows=462000 width=1436) + default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_item_id"] + <-Reducer 16 [SIMPLE_EDGE] + SHUFFLE [RS_64] + PartitionCols:_col0 + Group By Operator [GBY_45] (rows=115500 width=1436) + Output:["_col0"],keys:KEY._col0 + <-Map 14 [SIMPLE_EDGE] + SHUFFLE [RS_44] + PartitionCols:_col0 + Group By Operator [GBY_43] (rows=231000 width=1436) + Output:["_col0"],keys:i_item_id + Select Operator [SEL_42] (rows=231000 width=1436) + Output:["i_item_id"] + Filter Operator [FIL_165] (rows=231000 width=1436) + predicate:((i_category) IN ('Children') and i_item_id is not null) + TableScan [TS_3] (rows=462000 width=1436) + default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_id","i_category"] + <-Reducer 13 [CONTAINS] Reduce Output Operator [RS_116] PartitionCols:_col0 Group By Operator [GBY_115] (rows=670816147 width=108) Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0 Group By Operator [GBY_111] (rows=95833781 width=135) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Reducer 28 [SIMPLE_EDGE] + <-Reducer 12 [SIMPLE_EDGE] SHUFFLE [RS_110] PartitionCols:_col0 Group By Operator [GBY_109] (rows=191667562 width=135) Output:["_col0","_col1"],aggregations:["sum(_col8)"],keys:_col1 Merge Join Operator [MERGEJOIN_185] (rows=191667562 width=135) Conds:RS_105._col0=RS_106._col3(Inner),Output:["_col1","_col8"] - <-Reducer 27 [SIMPLE_EDGE] + <-Reducer 11 [SIMPLE_EDGE] SHUFFLE [RS_105] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_180] (rows=508200 width=1436) Conds:RS_102._col1=RS_103._col0(Inner),Output:["_col0","_col1"] - <-Map 26 [SIMPLE_EDGE] + <-Map 1 [SIMPLE_EDGE] SHUFFLE [RS_102] PartitionCols:_col1 Select Operator [SEL_78] (rows=462000 width=1436) Output:["_col0","_col1"] Filter Operator [FIL_169] (rows=462000 width=1436) predicate:(i_item_id is not null and i_item_sk is not null) - TableScan [TS_76] (rows=462000 width=1436) - default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_item_id"] - <-Reducer 31 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_0] + <-Reducer 17 [SIMPLE_EDGE] SHUFFLE [RS_103] PartitionCols:_col0 Group By Operator [GBY_84] (rows=115500 width=1436) Output:["_col0"],keys:KEY._col0 - <-Map 30 [SIMPLE_EDGE] + <-Map 14 [SIMPLE_EDGE] SHUFFLE [RS_83] PartitionCols:_col0 Group By Operator [GBY_82] (rows=231000 width=1436) @@ -314,30 +313,36 @@ Stage-0 Output:["i_item_id"] Filter Operator [FIL_170] (rows=231000 width=1436) predicate:((i_category) IN ('Children') and i_item_id is not null) - TableScan [TS_79] (rows=462000 width=1436) - default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_id","i_category"] - <-Reducer 34 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_3] + <-Reducer 25 [SIMPLE_EDGE] SHUFFLE [RS_106] PartitionCols:_col3 Select Operator [SEL_101] (rows=174243235 width=135) Output:["_col3","_col5"] Merge Join Operator [MERGEJOIN_182] (rows=174243235 width=135) Conds:RS_98._col2=RS_99._col0(Inner),Output:["_col1","_col3"] - <-Map 36 [SIMPLE_EDGE] + <-Map 26 [SIMPLE_EDGE] SHUFFLE [RS_99] PartitionCols:_col0 Select Operator [SEL_94] (rows=20000000 width=1014) Output:["_col0"] Filter Operator [FIL_173] (rows=20000000 width=1014) predicate:((ca_gmt_offset = -6) and ca_address_sk is not null) - TableScan [TS_92] (rows=40000000 width=1014) - default@customer_address,customer_address,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_gmt_offset"] - <-Reducer 33 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_16] + <-Reducer 24 [SIMPLE_EDGE] SHUFFLE [RS_98] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_181] (rows=158402938 width=135) Conds:RS_95._col0=RS_96._col0(Inner),Output:["_col1","_col2","_col3"] - <-Map 32 [SIMPLE_EDGE] + <-Map 21 [SIMPLE_EDGE] + SHUFFLE [RS_96] + PartitionCols:_col0 + Select Operator [SEL_91] (rows=18262 width=1119) + Output:["_col0"] + Filter Operator [FIL_172] (rows=18262 width=1119) + predicate:((d_year = 1999) and (d_moy = 9) and d_date_sk is not null) + Please refer to the previous TableScan [TS_13] + <-Map 28 [SIMPLE_EDGE] SHUFFLE [RS_95] PartitionCols:_col0 Select Operator [SEL_88] (rows=144002668 width=135) @@ -346,15 +351,6 @@ Stage-0 predicate:(ws_sold_date_sk is not null and ws_bill_addr_sk is not null and ws_item_sk is not null) TableScan [TS_86] (rows=144002668 width=135) default@web_sales,web_sales,Tbl:COMPLETE,Col:NONE,Output:["ws_sold_date_sk","ws_item_sk","ws_bill_addr_sk","ws_ext_sales_price"] - <-Map 35 [SIMPLE_EDGE] - SHUFFLE [RS_96] - PartitionCols:_col0 - Select Operator [SEL_91] (rows=18262 width=1119) - Output:["_col0"] - Filter Operator [FIL_172] (rows=18262 width=1119) - predicate:((d_year = 1999) and (d_moy = 9) and d_date_sk is not null) - TableScan [TS_89] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_moy"] <-Reducer 4 [CONTAINS] Reduce Output Operator [RS_116] PartitionCols:_col0 @@ -369,45 +365,6 @@ Stage-0 Output:["_col0","_col1"],aggregations:["sum(_col8)"],keys:_col1 Merge Join Operator [MERGEJOIN_183] (rows=766650239 width=88) Conds:RS_29._col0=RS_30._col3(Inner),Output:["_col1","_col8"] - <-Reducer 12 [SIMPLE_EDGE] - SHUFFLE [RS_30] - PartitionCols:_col3 - Select Operator [SEL_25] (rows=696954748 width=88) - Output:["_col3","_col5"] - Merge Join Operator [MERGEJOIN_176] (rows=696954748 width=88) - Conds:RS_22._col2=RS_23._col0(Inner),Output:["_col1","_col3"] - <-Map 14 [SIMPLE_EDGE] - SHUFFLE [RS_23] - PartitionCols:_col0 - Select Operator [SEL_18] (rows=20000000 width=1014) - Output:["_col0"] - Filter Operator [FIL_163] (rows=20000000 width=1014) - predicate:((ca_gmt_offset = -6) and ca_address_sk is not null) - TableScan [TS_16] (rows=40000000 width=1014) - default@customer_address,customer_address,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_gmt_offset"] - <-Reducer 11 [SIMPLE_EDGE] - SHUFFLE [RS_22] - PartitionCols:_col2 - Merge Join Operator [MERGEJOIN_175] (rows=633595212 width=88) - Conds:RS_19._col0=RS_20._col0(Inner),Output:["_col1","_col2","_col3"] - <-Map 10 [SIMPLE_EDGE] - SHUFFLE [RS_19] - PartitionCols:_col0 - Select Operator [SEL_12] (rows=575995635 width=88) - Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_161] (rows=575995635 width=88) - predicate:(ss_sold_date_sk is not null and ss_addr_sk is not null and ss_item_sk is not null) - TableScan [TS_10] (rows=575995635 width=88) - default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_item_sk","ss_addr_sk","ss_ext_sales_price"] - <-Map 13 [SIMPLE_EDGE] - SHUFFLE [RS_20] - PartitionCols:_col0 - Select Operator [SEL_15] (rows=18262 width=1119) - Output:["_col0"] - Filter Operator [FIL_162] (rows=18262 width=1119) - predicate:((d_year = 1999) and (d_moy = 9) and d_date_sk is not null) - TableScan [TS_13] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_moy"] <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_29] PartitionCols:_col0 @@ -420,14 +377,13 @@ Stage-0 Output:["_col0","_col1"] Filter Operator [FIL_159] (rows=462000 width=1436) predicate:(i_item_id is not null and i_item_sk is not null) - TableScan [TS_0] (rows=462000 width=1436) - default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_item_id"] - <-Reducer 9 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_0] + <-Reducer 15 [SIMPLE_EDGE] SHUFFLE [RS_27] PartitionCols:_col0 Group By Operator [GBY_8] (rows=115500 width=1436) Output:["_col0"],keys:KEY._col0 - <-Map 8 [SIMPLE_EDGE] + <-Map 14 [SIMPLE_EDGE] SHUFFLE [RS_7] PartitionCols:_col0 Group By Operator [GBY_6] (rows=231000 width=1436) @@ -436,6 +392,42 @@ Stage-0 Output:["i_item_id"] Filter Operator [FIL_160] (rows=231000 width=1436) predicate:((i_category) IN ('Children') and i_item_id is not null) - TableScan [TS_3] (rows=462000 width=1436) - default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_id","i_category"] + Please refer to the previous TableScan [TS_3] + <-Reducer 20 [SIMPLE_EDGE] + SHUFFLE [RS_30] + PartitionCols:_col3 + Select Operator [SEL_25] (rows=696954748 width=88) + Output:["_col3","_col5"] + Merge Join Operator [MERGEJOIN_176] (rows=696954748 width=88) + Conds:RS_22._col2=RS_23._col0(Inner),Output:["_col1","_col3"] + <-Map 26 [SIMPLE_EDGE] + SHUFFLE [RS_23] + PartitionCols:_col0 + Select Operator [SEL_18] (rows=20000000 width=1014) + Output:["_col0"] + Filter Operator [FIL_163] (rows=20000000 width=1014) + predicate:((ca_gmt_offset = -6) and ca_address_sk is not null) + Please refer to the previous TableScan [TS_16] + <-Reducer 19 [SIMPLE_EDGE] + SHUFFLE [RS_22] + PartitionCols:_col2 + Merge Join Operator [MERGEJOIN_175] (rows=633595212 width=88) + Conds:RS_19._col0=RS_20._col0(Inner),Output:["_col1","_col2","_col3"] + <-Map 21 [SIMPLE_EDGE] + SHUFFLE [RS_20] + PartitionCols:_col0 + Select Operator [SEL_15] (rows=18262 width=1119) + Output:["_col0"] + Filter Operator [FIL_162] (rows=18262 width=1119) + predicate:((d_year = 1999) and (d_moy = 9) and d_date_sk is not null) + Please refer to the previous TableScan [TS_13] + <-Map 18 [SIMPLE_EDGE] + SHUFFLE [RS_19] + PartitionCols:_col0 + Select Operator [SEL_12] (rows=575995635 width=88) + Output:["_col0","_col1","_col2","_col3"] + Filter Operator [FIL_161] (rows=575995635 width=88) + predicate:(ss_sold_date_sk is not null and ss_addr_sk is not null and ss_item_sk is not null) + TableScan [TS_10] (rows=575995635 width=88) + default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_item_sk","ss_addr_sk","ss_ext_sales_price"] diff --git ql/src/test/results/clientpositive/perf/query64.q.out ql/src/test/results/clientpositive/perf/query64.q.out index 6b42393..7f97e39 100644 --- ql/src/test/results/clientpositive/perf/query64.q.out +++ ql/src/test/results/clientpositive/perf/query64.q.out @@ -5,47 +5,47 @@ POSTHOOK: type: QUERY Plan optimized by CBO. Vertex dependency in root stage -Reducer 10 <- Reducer 50 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) +Reducer 10 <- Reducer 19 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) Reducer 11 <- Reducer 10 (SIMPLE_EDGE) -Reducer 15 <- Map 14 (SIMPLE_EDGE), Map 16 (SIMPLE_EDGE) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 12 (SIMPLE_EDGE) -Reducer 20 <- Map 19 (SIMPLE_EDGE), Map 25 (SIMPLE_EDGE) -Reducer 21 <- Reducer 20 (SIMPLE_EDGE), Reducer 30 (SIMPLE_EDGE) -Reducer 22 <- Reducer 21 (SIMPLE_EDGE), Reducer 37 (SIMPLE_EDGE) -Reducer 23 <- Map 39 (SIMPLE_EDGE), Reducer 22 (SIMPLE_EDGE) -Reducer 24 <- Map 40 (SIMPLE_EDGE), Reducer 23 (SIMPLE_EDGE) -Reducer 27 <- Map 26 (SIMPLE_EDGE), Map 31 (SIMPLE_EDGE) -Reducer 28 <- Map 32 (SIMPLE_EDGE), Reducer 27 (SIMPLE_EDGE) -Reducer 29 <- Map 33 (SIMPLE_EDGE), Reducer 28 (SIMPLE_EDGE) -Reducer 3 <- Map 13 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 30 <- Map 34 (SIMPLE_EDGE), Reducer 29 (SIMPLE_EDGE) -Reducer 36 <- Map 35 (SIMPLE_EDGE), Map 38 (SIMPLE_EDGE) -Reducer 37 <- Reducer 36 (SIMPLE_EDGE) -Reducer 4 <- Reducer 15 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 43 <- Map 42 (SIMPLE_EDGE), Map 51 (SIMPLE_EDGE) -Reducer 44 <- Map 52 (SIMPLE_EDGE), Reducer 43 (SIMPLE_EDGE) -Reducer 45 <- Reducer 44 (SIMPLE_EDGE), Reducer 54 (SIMPLE_EDGE) -Reducer 46 <- Map 56 (SIMPLE_EDGE), Reducer 45 (SIMPLE_EDGE) -Reducer 47 <- Map 57 (SIMPLE_EDGE), Reducer 46 (SIMPLE_EDGE) -Reducer 48 <- Reducer 47 (SIMPLE_EDGE), Reducer 63 (SIMPLE_EDGE) -Reducer 49 <- Map 80 (SIMPLE_EDGE), Reducer 48 (SIMPLE_EDGE) -Reducer 5 <- Map 17 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) -Reducer 50 <- Reducer 49 (SIMPLE_EDGE) -Reducer 54 <- Map 53 (SIMPLE_EDGE), Map 55 (SIMPLE_EDGE) -Reducer 59 <- Map 58 (SIMPLE_EDGE), Map 64 (SIMPLE_EDGE) -Reducer 6 <- Map 18 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) -Reducer 60 <- Reducer 59 (SIMPLE_EDGE), Reducer 69 (SIMPLE_EDGE) -Reducer 61 <- Reducer 60 (SIMPLE_EDGE), Reducer 76 (SIMPLE_EDGE) -Reducer 62 <- Map 78 (SIMPLE_EDGE), Reducer 61 (SIMPLE_EDGE) -Reducer 63 <- Map 79 (SIMPLE_EDGE), Reducer 62 (SIMPLE_EDGE) -Reducer 66 <- Map 65 (SIMPLE_EDGE), Map 70 (SIMPLE_EDGE) -Reducer 67 <- Map 71 (SIMPLE_EDGE), Reducer 66 (SIMPLE_EDGE) -Reducer 68 <- Map 72 (SIMPLE_EDGE), Reducer 67 (SIMPLE_EDGE) -Reducer 69 <- Map 73 (SIMPLE_EDGE), Reducer 68 (SIMPLE_EDGE) -Reducer 7 <- Reducer 24 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) -Reducer 75 <- Map 74 (SIMPLE_EDGE), Map 77 (SIMPLE_EDGE) -Reducer 76 <- Reducer 75 (SIMPLE_EDGE) -Reducer 8 <- Map 41 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) +Reducer 12 <- Map 1 (SIMPLE_EDGE), Map 20 (SIMPLE_EDGE) +Reducer 13 <- Map 20 (SIMPLE_EDGE), Reducer 12 (SIMPLE_EDGE) +Reducer 14 <- Reducer 13 (SIMPLE_EDGE), Reducer 36 (SIMPLE_EDGE) +Reducer 15 <- Map 39 (SIMPLE_EDGE), Reducer 14 (SIMPLE_EDGE) +Reducer 16 <- Map 40 (SIMPLE_EDGE), Reducer 15 (SIMPLE_EDGE) +Reducer 17 <- Reducer 16 (SIMPLE_EDGE), Reducer 32 (SIMPLE_EDGE) +Reducer 18 <- Map 40 (SIMPLE_EDGE), Reducer 17 (SIMPLE_EDGE) +Reducer 19 <- Reducer 18 (SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 20 (SIMPLE_EDGE) +Reducer 21 <- Map 20 (SIMPLE_EDGE), Reducer 43 (SIMPLE_EDGE) +Reducer 22 <- Map 48 (SIMPLE_EDGE), Reducer 21 (SIMPLE_EDGE) +Reducer 23 <- Reducer 22 (SIMPLE_EDGE), Reducer 35 (SIMPLE_EDGE) +Reducer 24 <- Reducer 23 (SIMPLE_EDGE), Reducer 51 (SIMPLE_EDGE) +Reducer 25 <- Map 55 (SIMPLE_EDGE), Reducer 24 (SIMPLE_EDGE) +Reducer 26 <- Map 39 (SIMPLE_EDGE), Reducer 25 (SIMPLE_EDGE) +Reducer 27 <- Map 20 (SIMPLE_EDGE), Reducer 45 (SIMPLE_EDGE) +Reducer 28 <- Map 48 (SIMPLE_EDGE), Reducer 27 (SIMPLE_EDGE) +Reducer 29 <- Reducer 28 (SIMPLE_EDGE), Reducer 37 (SIMPLE_EDGE) +Reducer 3 <- Map 20 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 30 <- Reducer 29 (SIMPLE_EDGE), Reducer 53 (SIMPLE_EDGE) +Reducer 31 <- Map 55 (SIMPLE_EDGE), Reducer 30 (SIMPLE_EDGE) +Reducer 32 <- Map 39 (SIMPLE_EDGE), Reducer 31 (SIMPLE_EDGE) +Reducer 34 <- Map 33 (SIMPLE_EDGE), Map 38 (SIMPLE_EDGE) +Reducer 35 <- Map 33 (SIMPLE_EDGE), Map 38 (SIMPLE_EDGE) +Reducer 36 <- Map 33 (SIMPLE_EDGE), Map 38 (SIMPLE_EDGE) +Reducer 37 <- Map 33 (SIMPLE_EDGE), Map 38 (SIMPLE_EDGE) +Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Reducer 34 (SIMPLE_EDGE) +Reducer 42 <- Map 41 (SIMPLE_EDGE), Map 46 (SIMPLE_EDGE) +Reducer 43 <- Map 47 (SIMPLE_EDGE), Reducer 42 (SIMPLE_EDGE) +Reducer 44 <- Map 41 (SIMPLE_EDGE), Map 46 (SIMPLE_EDGE) +Reducer 45 <- Map 47 (SIMPLE_EDGE), Reducer 44 (SIMPLE_EDGE) +Reducer 5 <- Map 39 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) +Reducer 50 <- Map 49 (SIMPLE_EDGE), Map 54 (SIMPLE_EDGE) +Reducer 51 <- Reducer 50 (SIMPLE_EDGE) +Reducer 52 <- Map 49 (SIMPLE_EDGE), Map 54 (SIMPLE_EDGE) +Reducer 53 <- Reducer 52 (SIMPLE_EDGE) +Reducer 6 <- Map 40 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) +Reducer 7 <- Reducer 26 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) +Reducer 8 <- Map 40 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) Reducer 9 <- Reducer 8 (SIMPLE_EDGE) Stage-0 @@ -64,14 +64,14 @@ Stage-0 predicate:(_col30 <= _col13) Merge Join Operator [MERGEJOIN_610] (rows=821691577 width=88) Conds:RS_256._col2, _col1, _col3=RS_257._col2, _col1, _col3(Inner),Output:["_col0","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col13","_col14","_col15","_col16","_col30","_col31","_col32","_col33"] - <-Reducer 50 [SIMPLE_EDGE] + <-Reducer 19 [SIMPLE_EDGE] SHUFFLE [RS_257] PartitionCols:_col2, _col1, _col3 Select Operator [SEL_254] (rows=746992327 width=88) Output:["_col1","_col2","_col3","_col13","_col14","_col15","_col16"] Group By Operator [GBY_253] (rows=746992327 width=88) 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 49 [SIMPLE_EDGE] + <-Reducer 18 [SIMPLE_EDGE] SHUFFLE [RS_252] PartitionCols:_col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7, _col8, _col9, _col10, _col11, _col12, _col13 Group By Operator [GBY_251] (rows=1493984654 width=88) @@ -82,244 +82,238 @@ Stage-0 predicate:(_col56 <> _col19) Merge Join Operator [MERGEJOIN_609] (rows=1493984654 width=88) Conds:RS_246._col39=RS_247._col0(Inner),Output:["_col7","_col9","_col14","_col15","_col16","_col17","_col19","_col21","_col22","_col23","_col24","_col26","_col27","_col45","_col46","_col47","_col48","_col51","_col56"] - <-Map 80 [SIMPLE_EDGE] + <-Map 40 [SIMPLE_EDGE] SHUFFLE [RS_247] PartitionCols:_col0 Select Operator [SEL_227] (rows=1861800 width=385) Output:["_col0","_col1"] Filter Operator [FIL_573] (rows=1861800 width=385) predicate:cd_demo_sk is not null - TableScan [TS_225] (rows=1861800 width=385) - default@customer_demographics,cd1,Tbl:COMPLETE,Col:NONE,Output:["cd_demo_sk","cd_marital_status"] - <-Reducer 48 [SIMPLE_EDGE] + TableScan [TS_22] (rows=1861800 width=385) + default@customer_demographics,cd2,Tbl:COMPLETE,Col:NONE,Output:["cd_demo_sk","cd_marital_status"] + <-Reducer 17 [SIMPLE_EDGE] SHUFFLE [RS_246] PartitionCols:_col39 Merge Join Operator [MERGEJOIN_608] (rows=1358167838 width=88) Conds:RS_243._col0=RS_244._col18(Inner),Output:["_col7","_col9","_col14","_col15","_col16","_col17","_col19","_col21","_col22","_col23","_col24","_col26","_col27","_col39","_col45","_col46","_col47","_col48","_col51"] - <-Reducer 47 [SIMPLE_EDGE] + <-Reducer 16 [SIMPLE_EDGE] SHUFFLE [RS_243] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_597] (rows=128840811 width=860) Conds:RS_240._col1=RS_241._col0(Inner),Output:["_col0","_col7","_col9","_col14","_col15","_col16","_col17","_col19"] - <-Map 57 [SIMPLE_EDGE] + <-Map 40 [SIMPLE_EDGE] SHUFFLE [RS_241] PartitionCols:_col0 Select Operator [SEL_152] (rows=1861800 width=385) Output:["_col0","_col1"] Filter Operator [FIL_561] (rows=1861800 width=385) predicate:cd_demo_sk is not null - TableScan [TS_150] (rows=1861800 width=385) - default@customer_demographics,cd2,Tbl:COMPLETE,Col:NONE,Output:["cd_demo_sk","cd_marital_status"] - <-Reducer 46 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_22] + <-Reducer 15 [SIMPLE_EDGE] SHUFFLE [RS_240] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_596] (rows=117128008 width=860) Conds:RS_237._col3=RS_238._col0(Inner),Output:["_col0","_col1","_col7","_col9","_col14","_col15","_col16","_col17"] - <-Map 56 [SIMPLE_EDGE] + <-Map 39 [SIMPLE_EDGE] SHUFFLE [RS_238] PartitionCols:_col0 Select Operator [SEL_149] (rows=40000000 width=1014) Output:["_col0","_col1","_col2","_col3","_col4"] Filter Operator [FIL_560] (rows=40000000 width=1014) predicate:ca_address_sk is not null - TableScan [TS_147] (rows=40000000 width=1014) + TableScan [TS_19] (rows=40000000 width=1014) default@customer_address,ad2,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_street_number","ca_street_name","ca_city","ca_zip"] - <-Reducer 45 [SIMPLE_EDGE] + <-Reducer 14 [SIMPLE_EDGE] SHUFFLE [RS_237] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_595] (rows=106480005 width=860) Conds:RS_234._col2=RS_235._col0(Inner),Output:["_col0","_col1","_col3","_col7","_col9"] - <-Reducer 44 [SIMPLE_EDGE] + <-Reducer 13 [SIMPLE_EDGE] SHUFFLE [RS_234] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_593] (rows=96800003 width=860) Conds:RS_231._col4=RS_232._col0(Inner),Output:["_col0","_col1","_col2","_col3","_col7","_col9"] - <-Map 52 [SIMPLE_EDGE] + <-Map 20 [SIMPLE_EDGE] SHUFFLE [RS_232] PartitionCols:_col0 Select Operator [SEL_136] (rows=73049 width=1119) Output:["_col0","_col1"] Filter Operator [FIL_557] (rows=73049 width=1119) predicate:d_date_sk is not null - TableScan [TS_134] (rows=73049 width=1119) - default@date_dim,d3,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] - <-Reducer 43 [SIMPLE_EDGE] + TableScan [TS_3] (rows=73049 width=1119) + default@date_dim,d2,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] + <-Reducer 12 [SIMPLE_EDGE] SHUFFLE [RS_231] PartitionCols:_col4 Merge Join Operator [MERGEJOIN_592] (rows=88000001 width=860) Conds:RS_228._col5=RS_229._col0(Inner),Output:["_col0","_col1","_col2","_col3","_col4","_col7"] - <-Map 42 [SIMPLE_EDGE] + <-Map 20 [SIMPLE_EDGE] + SHUFFLE [RS_229] + PartitionCols:_col0 + Select Operator [SEL_133] (rows=73049 width=1119) + Output:["_col0","_col1"] + Filter Operator [FIL_556] (rows=73049 width=1119) + predicate:d_date_sk is not null + Please refer to the previous TableScan [TS_3] + <-Map 1 [SIMPLE_EDGE] SHUFFLE [RS_228] PartitionCols:_col5 Select Operator [SEL_130] (rows=80000000 width=860) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] Filter Operator [FIL_555] (rows=80000000 width=860) predicate:(c_customer_sk is not null and c_first_sales_date_sk is not null and c_first_shipto_date_sk is not null and c_current_cdemo_sk is not null and c_current_hdemo_sk is not null and c_current_addr_sk is not null) - TableScan [TS_128] (rows=80000000 width=860) + TableScan [TS_0] (rows=80000000 width=860) default@customer,customer,Tbl:COMPLETE,Col:NONE,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"] - <-Map 51 [SIMPLE_EDGE] - SHUFFLE [RS_229] - PartitionCols:_col0 - Select Operator [SEL_133] (rows=73049 width=1119) - Output:["_col0","_col1"] - Filter Operator [FIL_556] (rows=73049 width=1119) - predicate:d_date_sk is not null - TableScan [TS_131] (rows=73049 width=1119) - default@date_dim,d2,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] - <-Reducer 54 [SIMPLE_EDGE] + <-Reducer 36 [SIMPLE_EDGE] SHUFFLE [RS_235] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_594] (rows=7920 width=107) Conds:RS_143._col1=RS_144._col0(Inner),Output:["_col0"] - <-Map 53 [SIMPLE_EDGE] + <-Map 33 [SIMPLE_EDGE] SHUFFLE [RS_143] PartitionCols:_col1 Select Operator [SEL_139] (rows=7200 width=107) Output:["_col0","_col1"] Filter Operator [FIL_558] (rows=7200 width=107) predicate:(hd_demo_sk is not null and hd_income_band_sk is not null) - TableScan [TS_137] (rows=7200 width=107) + TableScan [TS_9] (rows=7200 width=107) default@household_demographics,hd2,Tbl:COMPLETE,Col:NONE,Output:["hd_demo_sk","hd_income_band_sk"] - <-Map 55 [SIMPLE_EDGE] + <-Map 38 [SIMPLE_EDGE] SHUFFLE [RS_144] PartitionCols:_col0 Select Operator [SEL_142] (rows=20 width=12) Output:["_col0"] Filter Operator [FIL_559] (rows=20 width=12) predicate:ib_income_band_sk is not null - TableScan [TS_140] (rows=20 width=12) + TableScan [TS_12] (rows=20 width=12) default@income_band,ib2,Tbl:COMPLETE,Col:NONE,Output:["ib_income_band_sk"] - <-Reducer 63 [SIMPLE_EDGE] + <-Reducer 32 [SIMPLE_EDGE] SHUFFLE [RS_244] PartitionCols:_col18 Select Operator [SEL_224] (rows=1234698008 width=88) Output:["_col1","_col2","_col3","_col4","_col6","_col7","_col18","_col19","_col25","_col26","_col27","_col28","_col31"] Merge Join Operator [MERGEJOIN_607] (rows=1234698008 width=88) Conds:RS_221._col13=RS_222._col0(Inner),Output:["_col10","_col11","_col17","_col18","_col19","_col20","_col23","_col28","_col29","_col31","_col32","_col33","_col34"] - <-Map 79 [SIMPLE_EDGE] + <-Map 39 [SIMPLE_EDGE] SHUFFLE [RS_222] PartitionCols:_col0 Select Operator [SEL_208] (rows=40000000 width=1014) Output:["_col0","_col1","_col2","_col3","_col4"] Filter Operator [FIL_572] (rows=40000000 width=1014) predicate:ca_address_sk is not null - TableScan [TS_206] (rows=40000000 width=1014) - default@customer_address,ad1,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_street_number","ca_street_name","ca_city","ca_zip"] - <-Reducer 62 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_19] + <-Reducer 31 [SIMPLE_EDGE] SHUFFLE [RS_221] PartitionCols:_col13 Merge Join Operator [MERGEJOIN_606] (rows=1122452711 width=88) Conds:RS_218._col14=RS_219._col0(Inner),Output:["_col10","_col11","_col13","_col17","_col18","_col19","_col20","_col23","_col28","_col29"] - <-Map 78 [SIMPLE_EDGE] + <-Map 55 [SIMPLE_EDGE] SHUFFLE [RS_219] PartitionCols:_col0 Select Operator [SEL_205] (rows=1704 width=1910) Output:["_col0","_col1","_col2"] Filter Operator [FIL_571] (rows=1704 width=1910) predicate:(s_store_sk is not null and s_store_name is not null and s_zip is not null) - TableScan [TS_203] (rows=1704 width=1910) + TableScan [TS_75] (rows=1704 width=1910) default@store,store,Tbl:COMPLETE,Col:NONE,Output:["s_store_sk","s_store_name","s_zip"] - <-Reducer 61 [SIMPLE_EDGE] + <-Reducer 30 [SIMPLE_EDGE] SHUFFLE [RS_218] PartitionCols:_col14 Merge Join Operator [MERGEJOIN_605] (rows=1020411534 width=88) Conds:RS_215._col9=RS_216._col0(Inner),Output:["_col10","_col11","_col13","_col14","_col17","_col18","_col19","_col20","_col23"] - <-Reducer 60 [SIMPLE_EDGE] + <-Reducer 29 [SIMPLE_EDGE] SHUFFLE [RS_215] PartitionCols:_col9 Merge Join Operator [MERGEJOIN_604] (rows=927646829 width=88) Conds:RS_212._col0=RS_213._col9(Inner),Output:["_col9","_col10","_col11","_col13","_col14","_col17","_col18","_col19","_col20","_col23"] - <-Reducer 59 [SIMPLE_EDGE] - SHUFFLE [RS_212] - PartitionCols:_col0 - Merge Join Operator [MERGEJOIN_598] (rows=7920 width=107) - Conds:RS_209._col1=RS_210._col0(Inner),Output:["_col0"] - <-Map 58 [SIMPLE_EDGE] - SHUFFLE [RS_209] - PartitionCols:_col1 - Select Operator [SEL_155] (rows=7200 width=107) - Output:["_col0","_col1"] - Filter Operator [FIL_562] (rows=7200 width=107) - predicate:(hd_demo_sk is not null and hd_income_band_sk is not null) - TableScan [TS_153] (rows=7200 width=107) - default@household_demographics,hd1,Tbl:COMPLETE,Col:NONE,Output:["hd_demo_sk","hd_income_band_sk"] - <-Map 64 [SIMPLE_EDGE] - SHUFFLE [RS_210] - PartitionCols:_col0 - Select Operator [SEL_158] (rows=20 width=12) - Output:["_col0"] - Filter Operator [FIL_563] (rows=20 width=12) - predicate:ib_income_band_sk is not null - TableScan [TS_156] (rows=20 width=12) - default@income_band,ib1,Tbl:COMPLETE,Col:NONE,Output:["ib_income_band_sk"] - <-Reducer 69 [SIMPLE_EDGE] + <-Reducer 28 [SIMPLE_EDGE] SHUFFLE [RS_213] PartitionCols:_col9 Select Operator [SEL_186] (rows=843315281 width=88) Output:["_col6","_col7","_col8","_col9","_col10","_col11","_col14","_col15","_col16","_col17","_col20"] Merge Join Operator [MERGEJOIN_602] (rows=843315281 width=88) Conds:RS_183._col7=RS_184._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col9","_col10","_col11","_col12","_col15"] - <-Map 73 [SIMPLE_EDGE] + <-Map 48 [SIMPLE_EDGE] SHUFFLE [RS_184] PartitionCols:_col0 Select Operator [SEL_173] (rows=2300 width=1179) Output:["_col0"] Filter Operator [FIL_568] (rows=2300 width=1179) predicate:p_promo_sk is not null - TableScan [TS_171] (rows=2300 width=1179) + TableScan [TS_43] (rows=2300 width=1179) default@promotion,promotion,Tbl:COMPLETE,Col:NONE,Output:["p_promo_sk"] - <-Reducer 68 [SIMPLE_EDGE] + <-Reducer 27 [SIMPLE_EDGE] SHUFFLE [RS_183] PartitionCols:_col7 Merge Join Operator [MERGEJOIN_601] (rows=766650239 width=88) Conds:RS_180._col0=RS_181._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col9","_col10","_col11","_col12","_col15"] - <-Map 72 [SIMPLE_EDGE] + <-Map 20 [SIMPLE_EDGE] SHUFFLE [RS_181] PartitionCols:_col0 Select Operator [SEL_170] (rows=36524 width=1119) Output:["_col0"] Filter Operator [FIL_567] (rows=36524 width=1119) predicate:((d_year = 2001) and d_date_sk is not null) - TableScan [TS_168] (rows=73049 width=1119) - default@date_dim,d1,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] - <-Reducer 67 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_3] + <-Reducer 45 [SIMPLE_EDGE] SHUFFLE [RS_180] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_600] (rows=696954748 width=88) Conds:RS_177._col1, _col8=RS_178._col0, _col1(Inner),Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col9","_col10","_col11","_col12","_col15"] - <-Map 71 [SIMPLE_EDGE] + <-Map 47 [SIMPLE_EDGE] SHUFFLE [RS_178] PartitionCols:_col0, _col1 Select Operator [SEL_167] (rows=57591150 width=77) Output:["_col0","_col1"] Filter Operator [FIL_566] (rows=57591150 width=77) predicate:(sr_item_sk is not null and sr_ticket_number is not null) - TableScan [TS_165] (rows=57591150 width=77) + TableScan [TS_37] (rows=57591150 width=77) default@store_returns,store_returns,Tbl:COMPLETE,Col:NONE,Output:["sr_item_sk","sr_ticket_number"] - <-Reducer 66 [SIMPLE_EDGE] + <-Reducer 44 [SIMPLE_EDGE] SHUFFLE [RS_177] PartitionCols:_col1, _col8 Merge Join Operator [MERGEJOIN_599] (rows=633595212 width=88) Conds:RS_174._col1=RS_175._col0(Inner),Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col15"] - <-Map 65 [SIMPLE_EDGE] + <-Map 41 [SIMPLE_EDGE] SHUFFLE [RS_174] PartitionCols:_col1 Select Operator [SEL_161] (rows=575995635 width=88) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11"] Filter Operator [FIL_564] (rows=575995635 width=88) predicate:(ss_item_sk is not null and ss_ticket_number is not null and ss_customer_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null and ss_cdemo_sk is not null and ss_promo_sk is not null and ss_hdemo_sk is not null and ss_addr_sk is not null) - TableScan [TS_159] (rows=575995635 width=88) + TableScan [TS_31] (rows=575995635 width=88) default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,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"] - <-Map 70 [SIMPLE_EDGE] + <-Map 46 [SIMPLE_EDGE] SHUFFLE [RS_175] PartitionCols:_col0 Select Operator [SEL_164] (rows=2851 width=1436) Output:["_col0","_col3"] Filter Operator [FIL_565] (rows=2851 width=1436) 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_162] (rows=462000 width=1436) + TableScan [TS_34] (rows=462000 width=1436) default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_current_price","i_color","i_product_name"] - <-Reducer 76 [SIMPLE_EDGE] + <-Reducer 37 [SIMPLE_EDGE] + SHUFFLE [RS_212] + PartitionCols:_col0 + Merge Join Operator [MERGEJOIN_598] (rows=7920 width=107) + Conds:RS_209._col1=RS_210._col0(Inner),Output:["_col0"] + <-Map 33 [SIMPLE_EDGE] + SHUFFLE [RS_209] + PartitionCols:_col1 + Select Operator [SEL_155] (rows=7200 width=107) + Output:["_col0","_col1"] + Filter Operator [FIL_562] (rows=7200 width=107) + predicate:(hd_demo_sk is not null and hd_income_band_sk is not null) + Please refer to the previous TableScan [TS_9] + <-Map 38 [SIMPLE_EDGE] + SHUFFLE [RS_210] + PartitionCols:_col0 + Select Operator [SEL_158] (rows=20 width=12) + Output:["_col0"] + Filter Operator [FIL_563] (rows=20 width=12) + predicate:ib_income_band_sk is not null + Please refer to the previous TableScan [TS_12] + <-Reducer 53 [SIMPLE_EDGE] SHUFFLE [RS_216] PartitionCols:_col0 Select Operator [SEL_202] (rows=52798137 width=135) @@ -328,7 +322,7 @@ Stage-0 predicate:(_col1 > (2 * _col2)) Group By Operator [GBY_200] (rows=158394413 width=135) Output:["_col0","_col1","_col2"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)"],keys:KEY._col0 - <-Reducer 75 [SIMPLE_EDGE] + <-Reducer 52 [SIMPLE_EDGE] SHUFFLE [RS_199] PartitionCols:_col0 Group By Operator [GBY_198] (rows=316788826 width=135) @@ -337,23 +331,23 @@ Stage-0 Output:["_col0","_col1","_col2"] Merge Join Operator [MERGEJOIN_603] (rows=316788826 width=135) Conds:RS_193._col0, _col1=RS_194._col0, _col1(Inner),Output:["_col0","_col2","_col5","_col6","_col7"] - <-Map 74 [SIMPLE_EDGE] + <-Map 49 [SIMPLE_EDGE] SHUFFLE [RS_193] PartitionCols:_col0, _col1 Select Operator [SEL_189] (rows=287989836 width=135) Output:["_col0","_col1","_col2"] Filter Operator [FIL_569] (rows=287989836 width=135) predicate:(cs_order_number is not null and cs_item_sk is not null) - TableScan [TS_187] (rows=287989836 width=135) + TableScan [TS_59] (rows=287989836 width=135) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:NONE,Output:["cs_item_sk","cs_order_number","cs_ext_list_price"] - <-Map 77 [SIMPLE_EDGE] + <-Map 54 [SIMPLE_EDGE] SHUFFLE [RS_194] PartitionCols:_col0, _col1 Select Operator [SEL_192] (rows=28798881 width=106) Output:["_col0","_col1","_col2","_col3","_col4"] Filter Operator [FIL_570] (rows=28798881 width=106) predicate:(cr_order_number is not null and cr_item_sk is not null) - TableScan [TS_190] (rows=28798881 width=106) + TableScan [TS_62] (rows=28798881 width=106) default@catalog_returns,catalog_returns,Tbl:COMPLETE,Col:NONE,Output:["cr_item_sk","cr_order_number","cr_refunded_cash","cr_reversed_charge","cr_store_credit"] <-Reducer 9 [SIMPLE_EDGE] SHUFFLE [RS_256] @@ -373,151 +367,141 @@ Stage-0 predicate:(_col56 <> _col19) Merge Join Operator [MERGEJOIN_591] (rows=1493984654 width=88) Conds:RS_118._col39=RS_119._col0(Inner),Output:["_col7","_col9","_col14","_col15","_col16","_col17","_col19","_col21","_col22","_col23","_col24","_col26","_col27","_col45","_col46","_col47","_col48","_col51","_col56"] - <-Map 41 [SIMPLE_EDGE] + <-Map 40 [SIMPLE_EDGE] SHUFFLE [RS_119] PartitionCols:_col0 Select Operator [SEL_99] (rows=1861800 width=385) Output:["_col0","_col1"] Filter Operator [FIL_554] (rows=1861800 width=385) predicate:cd_demo_sk is not null - TableScan [TS_97] (rows=1861800 width=385) - default@customer_demographics,cd1,Tbl:COMPLETE,Col:NONE,Output:["cd_demo_sk","cd_marital_status"] + Please refer to the previous TableScan [TS_22] <-Reducer 7 [SIMPLE_EDGE] SHUFFLE [RS_118] PartitionCols:_col39 Merge Join Operator [MERGEJOIN_590] (rows=1358167838 width=88) Conds:RS_115._col0=RS_116._col18(Inner),Output:["_col7","_col9","_col14","_col15","_col16","_col17","_col19","_col21","_col22","_col23","_col24","_col26","_col27","_col39","_col45","_col46","_col47","_col48","_col51"] - <-Reducer 24 [SIMPLE_EDGE] + <-Reducer 26 [SIMPLE_EDGE] SHUFFLE [RS_116] PartitionCols:_col18 Select Operator [SEL_96] (rows=1234698008 width=88) Output:["_col1","_col2","_col3","_col4","_col6","_col7","_col18","_col19","_col25","_col26","_col27","_col28","_col31"] Merge Join Operator [MERGEJOIN_589] (rows=1234698008 width=88) Conds:RS_93._col13=RS_94._col0(Inner),Output:["_col10","_col11","_col17","_col18","_col19","_col20","_col23","_col28","_col29","_col31","_col32","_col33","_col34"] - <-Map 40 [SIMPLE_EDGE] + <-Map 39 [SIMPLE_EDGE] SHUFFLE [RS_94] PartitionCols:_col0 Select Operator [SEL_80] (rows=40000000 width=1014) Output:["_col0","_col1","_col2","_col3","_col4"] Filter Operator [FIL_553] (rows=40000000 width=1014) predicate:ca_address_sk is not null - TableScan [TS_78] (rows=40000000 width=1014) - default@customer_address,ad1,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_street_number","ca_street_name","ca_city","ca_zip"] - <-Reducer 23 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_19] + <-Reducer 25 [SIMPLE_EDGE] SHUFFLE [RS_93] PartitionCols:_col13 Merge Join Operator [MERGEJOIN_588] (rows=1122452711 width=88) Conds:RS_90._col14=RS_91._col0(Inner),Output:["_col10","_col11","_col13","_col17","_col18","_col19","_col20","_col23","_col28","_col29"] - <-Map 39 [SIMPLE_EDGE] + <-Map 55 [SIMPLE_EDGE] SHUFFLE [RS_91] PartitionCols:_col0 Select Operator [SEL_77] (rows=1704 width=1910) Output:["_col0","_col1","_col2"] Filter Operator [FIL_552] (rows=1704 width=1910) predicate:(s_store_sk is not null and s_store_name is not null and s_zip is not null) - TableScan [TS_75] (rows=1704 width=1910) - default@store,store,Tbl:COMPLETE,Col:NONE,Output:["s_store_sk","s_store_name","s_zip"] - <-Reducer 22 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_75] + <-Reducer 24 [SIMPLE_EDGE] SHUFFLE [RS_90] PartitionCols:_col14 Merge Join Operator [MERGEJOIN_587] (rows=1020411534 width=88) Conds:RS_87._col9=RS_88._col0(Inner),Output:["_col10","_col11","_col13","_col14","_col17","_col18","_col19","_col20","_col23"] - <-Reducer 21 [SIMPLE_EDGE] + <-Reducer 23 [SIMPLE_EDGE] SHUFFLE [RS_87] PartitionCols:_col9 Merge Join Operator [MERGEJOIN_586] (rows=927646829 width=88) Conds:RS_84._col0=RS_85._col9(Inner),Output:["_col9","_col10","_col11","_col13","_col14","_col17","_col18","_col19","_col20","_col23"] - <-Reducer 20 [SIMPLE_EDGE] - SHUFFLE [RS_84] - PartitionCols:_col0 - Merge Join Operator [MERGEJOIN_580] (rows=7920 width=107) - Conds:RS_81._col1=RS_82._col0(Inner),Output:["_col0"] - <-Map 19 [SIMPLE_EDGE] - SHUFFLE [RS_81] - PartitionCols:_col1 - Select Operator [SEL_27] (rows=7200 width=107) - Output:["_col0","_col1"] - Filter Operator [FIL_543] (rows=7200 width=107) - predicate:(hd_demo_sk is not null and hd_income_band_sk is not null) - TableScan [TS_25] (rows=7200 width=107) - default@household_demographics,hd1,Tbl:COMPLETE,Col:NONE,Output:["hd_demo_sk","hd_income_band_sk"] - <-Map 25 [SIMPLE_EDGE] - SHUFFLE [RS_82] - PartitionCols:_col0 - Select Operator [SEL_30] (rows=20 width=12) - Output:["_col0"] - Filter Operator [FIL_544] (rows=20 width=12) - predicate:ib_income_band_sk is not null - TableScan [TS_28] (rows=20 width=12) - default@income_band,ib1,Tbl:COMPLETE,Col:NONE,Output:["ib_income_band_sk"] - <-Reducer 30 [SIMPLE_EDGE] + <-Reducer 22 [SIMPLE_EDGE] SHUFFLE [RS_85] PartitionCols:_col9 Select Operator [SEL_58] (rows=843315281 width=88) Output:["_col6","_col7","_col8","_col9","_col10","_col11","_col14","_col15","_col16","_col17","_col20"] Merge Join Operator [MERGEJOIN_584] (rows=843315281 width=88) Conds:RS_55._col7=RS_56._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col9","_col10","_col11","_col12","_col15"] - <-Map 34 [SIMPLE_EDGE] + <-Map 48 [SIMPLE_EDGE] SHUFFLE [RS_56] PartitionCols:_col0 Select Operator [SEL_45] (rows=2300 width=1179) Output:["_col0"] Filter Operator [FIL_549] (rows=2300 width=1179) predicate:p_promo_sk is not null - TableScan [TS_43] (rows=2300 width=1179) - default@promotion,promotion,Tbl:COMPLETE,Col:NONE,Output:["p_promo_sk"] - <-Reducer 29 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_43] + <-Reducer 21 [SIMPLE_EDGE] SHUFFLE [RS_55] PartitionCols:_col7 Merge Join Operator [MERGEJOIN_583] (rows=766650239 width=88) Conds:RS_52._col0=RS_53._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col9","_col10","_col11","_col12","_col15"] - <-Map 33 [SIMPLE_EDGE] + <-Map 20 [SIMPLE_EDGE] SHUFFLE [RS_53] PartitionCols:_col0 Select Operator [SEL_42] (rows=36524 width=1119) Output:["_col0"] Filter Operator [FIL_548] (rows=36524 width=1119) predicate:((d_year = 2000) and d_date_sk is not null) - TableScan [TS_40] (rows=73049 width=1119) - default@date_dim,d1,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] - <-Reducer 28 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_3] + <-Reducer 43 [SIMPLE_EDGE] SHUFFLE [RS_52] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_582] (rows=696954748 width=88) Conds:RS_49._col1, _col8=RS_50._col0, _col1(Inner),Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col9","_col10","_col11","_col12","_col15"] - <-Map 32 [SIMPLE_EDGE] + <-Map 47 [SIMPLE_EDGE] SHUFFLE [RS_50] PartitionCols:_col0, _col1 Select Operator [SEL_39] (rows=57591150 width=77) Output:["_col0","_col1"] Filter Operator [FIL_547] (rows=57591150 width=77) predicate:(sr_item_sk is not null and sr_ticket_number is not null) - TableScan [TS_37] (rows=57591150 width=77) - default@store_returns,store_returns,Tbl:COMPLETE,Col:NONE,Output:["sr_item_sk","sr_ticket_number"] - <-Reducer 27 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_37] + <-Reducer 42 [SIMPLE_EDGE] SHUFFLE [RS_49] PartitionCols:_col1, _col8 Merge Join Operator [MERGEJOIN_581] (rows=633595212 width=88) Conds:RS_46._col1=RS_47._col0(Inner),Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col15"] - <-Map 26 [SIMPLE_EDGE] + <-Map 41 [SIMPLE_EDGE] SHUFFLE [RS_46] PartitionCols:_col1 Select Operator [SEL_33] (rows=575995635 width=88) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11"] Filter Operator [FIL_545] (rows=575995635 width=88) predicate:(ss_item_sk is not null and ss_ticket_number is not null and ss_customer_sk is not null and ss_sold_date_sk is not null and ss_store_sk is not null and ss_cdemo_sk is not null and ss_promo_sk is not null and ss_hdemo_sk is not null and ss_addr_sk is not null) - TableScan [TS_31] (rows=575995635 width=88) - default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,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"] - <-Map 31 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_31] + <-Map 46 [SIMPLE_EDGE] SHUFFLE [RS_47] PartitionCols:_col0 Select Operator [SEL_36] (rows=2851 width=1436) Output:["_col0","_col3"] Filter Operator [FIL_546] (rows=2851 width=1436) 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=1436) - default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_current_price","i_color","i_product_name"] - <-Reducer 37 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_34] + <-Reducer 35 [SIMPLE_EDGE] + SHUFFLE [RS_84] + PartitionCols:_col0 + Merge Join Operator [MERGEJOIN_580] (rows=7920 width=107) + Conds:RS_81._col1=RS_82._col0(Inner),Output:["_col0"] + <-Map 33 [SIMPLE_EDGE] + SHUFFLE [RS_81] + PartitionCols:_col1 + Select Operator [SEL_27] (rows=7200 width=107) + Output:["_col0","_col1"] + Filter Operator [FIL_543] (rows=7200 width=107) + predicate:(hd_demo_sk is not null and hd_income_band_sk is not null) + Please refer to the previous TableScan [TS_9] + <-Map 38 [SIMPLE_EDGE] + SHUFFLE [RS_82] + PartitionCols:_col0 + Select Operator [SEL_30] (rows=20 width=12) + Output:["_col0"] + Filter Operator [FIL_544] (rows=20 width=12) + predicate:ib_income_band_sk is not null + Please refer to the previous TableScan [TS_12] + <-Reducer 51 [SIMPLE_EDGE] SHUFFLE [RS_88] PartitionCols:_col0 Select Operator [SEL_74] (rows=52798137 width=135) @@ -526,7 +510,7 @@ Stage-0 predicate:(_col1 > (2 * _col2)) Group By Operator [GBY_72] (rows=158394413 width=135) Output:["_col0","_col1","_col2"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)"],keys:KEY._col0 - <-Reducer 36 [SIMPLE_EDGE] + <-Reducer 50 [SIMPLE_EDGE] SHUFFLE [RS_71] PartitionCols:_col0 Group By Operator [GBY_70] (rows=316788826 width=135) @@ -535,99 +519,79 @@ Stage-0 Output:["_col0","_col1","_col2"] Merge Join Operator [MERGEJOIN_585] (rows=316788826 width=135) Conds:RS_65._col0, _col1=RS_66._col0, _col1(Inner),Output:["_col0","_col2","_col5","_col6","_col7"] - <-Map 35 [SIMPLE_EDGE] + <-Map 49 [SIMPLE_EDGE] SHUFFLE [RS_65] PartitionCols:_col0, _col1 Select Operator [SEL_61] (rows=287989836 width=135) Output:["_col0","_col1","_col2"] Filter Operator [FIL_550] (rows=287989836 width=135) predicate:(cs_order_number is not null and cs_item_sk is not null) - TableScan [TS_59] (rows=287989836 width=135) - default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:NONE,Output:["cs_item_sk","cs_order_number","cs_ext_list_price"] - <-Map 38 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_59] + <-Map 54 [SIMPLE_EDGE] SHUFFLE [RS_66] PartitionCols:_col0, _col1 Select Operator [SEL_64] (rows=28798881 width=106) Output:["_col0","_col1","_col2","_col3","_col4"] Filter Operator [FIL_551] (rows=28798881 width=106) predicate:(cr_order_number is not null and cr_item_sk is not null) - TableScan [TS_62] (rows=28798881 width=106) - default@catalog_returns,catalog_returns,Tbl:COMPLETE,Col:NONE,Output:["cr_item_sk","cr_order_number","cr_refunded_cash","cr_reversed_charge","cr_store_credit"] + Please refer to the previous TableScan [TS_62] <-Reducer 6 [SIMPLE_EDGE] SHUFFLE [RS_115] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_579] (rows=128840811 width=860) Conds:RS_112._col1=RS_113._col0(Inner),Output:["_col0","_col7","_col9","_col14","_col15","_col16","_col17","_col19"] - <-Map 18 [SIMPLE_EDGE] + <-Map 40 [SIMPLE_EDGE] SHUFFLE [RS_113] PartitionCols:_col0 Select Operator [SEL_24] (rows=1861800 width=385) Output:["_col0","_col1"] Filter Operator [FIL_542] (rows=1861800 width=385) predicate:cd_demo_sk is not null - TableScan [TS_22] (rows=1861800 width=385) - default@customer_demographics,cd2,Tbl:COMPLETE,Col:NONE,Output:["cd_demo_sk","cd_marital_status"] + Please refer to the previous TableScan [TS_22] <-Reducer 5 [SIMPLE_EDGE] SHUFFLE [RS_112] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_578] (rows=117128008 width=860) Conds:RS_109._col3=RS_110._col0(Inner),Output:["_col0","_col1","_col7","_col9","_col14","_col15","_col16","_col17"] - <-Map 17 [SIMPLE_EDGE] + <-Map 39 [SIMPLE_EDGE] SHUFFLE [RS_110] PartitionCols:_col0 Select Operator [SEL_21] (rows=40000000 width=1014) Output:["_col0","_col1","_col2","_col3","_col4"] Filter Operator [FIL_541] (rows=40000000 width=1014) predicate:ca_address_sk is not null - TableScan [TS_19] (rows=40000000 width=1014) - default@customer_address,ad2,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_street_number","ca_street_name","ca_city","ca_zip"] + Please refer to the previous TableScan [TS_19] <-Reducer 4 [SIMPLE_EDGE] SHUFFLE [RS_109] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_577] (rows=106480005 width=860) Conds:RS_106._col2=RS_107._col0(Inner),Output:["_col0","_col1","_col3","_col7","_col9"] - <-Reducer 15 [SIMPLE_EDGE] - SHUFFLE [RS_107] - PartitionCols:_col0 - Merge Join Operator [MERGEJOIN_576] (rows=7920 width=107) - Conds:RS_15._col1=RS_16._col0(Inner),Output:["_col0"] - <-Map 14 [SIMPLE_EDGE] - SHUFFLE [RS_15] - PartitionCols:_col1 - Select Operator [SEL_11] (rows=7200 width=107) - Output:["_col0","_col1"] - Filter Operator [FIL_539] (rows=7200 width=107) - predicate:(hd_demo_sk is not null and hd_income_band_sk is not null) - TableScan [TS_9] (rows=7200 width=107) - default@household_demographics,hd2,Tbl:COMPLETE,Col:NONE,Output:["hd_demo_sk","hd_income_band_sk"] - <-Map 16 [SIMPLE_EDGE] - SHUFFLE [RS_16] - PartitionCols:_col0 - Select Operator [SEL_14] (rows=20 width=12) - Output:["_col0"] - Filter Operator [FIL_540] (rows=20 width=12) - predicate:ib_income_band_sk is not null - TableScan [TS_12] (rows=20 width=12) - default@income_band,ib2,Tbl:COMPLETE,Col:NONE,Output:["ib_income_band_sk"] <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_106] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_575] (rows=96800003 width=860) Conds:RS_103._col4=RS_104._col0(Inner),Output:["_col0","_col1","_col2","_col3","_col7","_col9"] - <-Map 13 [SIMPLE_EDGE] + <-Map 20 [SIMPLE_EDGE] SHUFFLE [RS_104] PartitionCols:_col0 Select Operator [SEL_8] (rows=73049 width=1119) Output:["_col0","_col1"] Filter Operator [FIL_538] (rows=73049 width=1119) predicate:d_date_sk is not null - TableScan [TS_6] (rows=73049 width=1119) - default@date_dim,d3,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] + Please refer to the previous TableScan [TS_3] <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_103] PartitionCols:_col4 Merge Join Operator [MERGEJOIN_574] (rows=88000001 width=860) Conds:RS_100._col5=RS_101._col0(Inner),Output:["_col0","_col1","_col2","_col3","_col4","_col7"] + <-Map 20 [SIMPLE_EDGE] + SHUFFLE [RS_101] + PartitionCols:_col0 + Select Operator [SEL_5] (rows=73049 width=1119) + Output:["_col0","_col1"] + Filter Operator [FIL_537] (rows=73049 width=1119) + predicate:d_date_sk is not null + Please refer to the previous TableScan [TS_3] <-Map 1 [SIMPLE_EDGE] SHUFFLE [RS_100] PartitionCols:_col5 @@ -635,15 +599,26 @@ Stage-0 Output:["_col0","_col1","_col2","_col3","_col4","_col5"] Filter Operator [FIL_536] (rows=80000000 width=860) predicate:(c_customer_sk is not null and c_first_sales_date_sk is not null and c_first_shipto_date_sk is not null and c_current_cdemo_sk is not null and c_current_hdemo_sk is not null and c_current_addr_sk is not null) - TableScan [TS_0] (rows=80000000 width=860) - default@customer,customer,Tbl:COMPLETE,Col:NONE,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"] - <-Map 12 [SIMPLE_EDGE] - SHUFFLE [RS_101] - PartitionCols:_col0 - Select Operator [SEL_5] (rows=73049 width=1119) - Output:["_col0","_col1"] - Filter Operator [FIL_537] (rows=73049 width=1119) - predicate:d_date_sk is not null - TableScan [TS_3] (rows=73049 width=1119) - default@date_dim,d2,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] + Please refer to the previous TableScan [TS_0] + <-Reducer 34 [SIMPLE_EDGE] + SHUFFLE [RS_107] + PartitionCols:_col0 + Merge Join Operator [MERGEJOIN_576] (rows=7920 width=107) + Conds:RS_15._col1=RS_16._col0(Inner),Output:["_col0"] + <-Map 33 [SIMPLE_EDGE] + SHUFFLE [RS_15] + PartitionCols:_col1 + Select Operator [SEL_11] (rows=7200 width=107) + Output:["_col0","_col1"] + Filter Operator [FIL_539] (rows=7200 width=107) + predicate:(hd_demo_sk is not null and hd_income_band_sk is not null) + Please refer to the previous TableScan [TS_9] + <-Map 38 [SIMPLE_EDGE] + SHUFFLE [RS_16] + PartitionCols:_col0 + Select Operator [SEL_14] (rows=20 width=12) + Output:["_col0"] + Filter Operator [FIL_540] (rows=20 width=12) + predicate:ib_income_band_sk is not null + Please refer to the previous TableScan [TS_12] diff --git ql/src/test/results/clientpositive/perf/query65.q.out ql/src/test/results/clientpositive/perf/query65.q.out index db671aa..17d80d0 100644 --- ql/src/test/results/clientpositive/perf/query65.q.out +++ ql/src/test/results/clientpositive/perf/query65.q.out @@ -77,13 +77,13 @@ POSTHOOK: type: QUERY Plan optimized by CBO. Vertex dependency in root stage -Reducer 10 <- Reducer 9 (SIMPLE_EDGE) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 9 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 12 (SIMPLE_EDGE), Reducer 10 (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 8 (SIMPLE_EDGE) +Reducer 5 <- Map 11 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) -Reducer 9 <- Map 11 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) +Reducer 7 <- Map 1 (SIMPLE_EDGE), Map 9 (SIMPLE_EDGE) +Reducer 8 <- Reducer 7 (SIMPLE_EDGE) Stage-0 Fetch Operator @@ -101,7 +101,7 @@ Stage-0 Output:["_col0","_col1","_col2","_col3","_col4","_col5"] Merge Join Operator [MERGEJOIN_81] (rows=255550079 width=88) Conds:RS_44._col1=RS_45._col0(Inner),Output:["_col2","_col6","_col8","_col9","_col10","_col11"] - <-Map 13 [SIMPLE_EDGE] + <-Map 11 [SIMPLE_EDGE] SHUFFLE [RS_45] PartitionCols:_col0 Select Operator [SEL_38] (rows=462000 width=1436) @@ -117,7 +117,7 @@ Stage-0 predicate:(_col2 <= (0.1 * _col4)) Merge Join Operator [MERGEJOIN_80] (rows=696954748 width=88) Conds:RS_39._col0=RS_40._col0(Inner),RS_39._col0=RS_41._col0(Inner),Output:["_col1","_col2","_col4","_col6"] - <-Map 12 [SIMPLE_EDGE] + <-Map 10 [SIMPLE_EDGE] SHUFFLE [RS_41] PartitionCols:_col0 Select Operator [SEL_35] (rows=1704 width=1910) @@ -126,42 +126,6 @@ Stage-0 predicate:s_store_sk is not null TableScan [TS_33] (rows=1704 width=1910) default@store,store,Tbl:COMPLETE,Col:NONE,Output:["s_store_sk","s_store_name"] - <-Reducer 10 [SIMPLE_EDGE] - SHUFFLE [RS_40] - PartitionCols:_col0 - Select Operator [SEL_32] (rows=158398803 width=88) - Output:["_col0","_col1"] - Group By Operator [GBY_31] (rows=158398803 width=88) - Output:["_col0","_col1"],aggregations:["avg(_col2)"],keys:_col1 - Select Operator [SEL_27] (rows=316797606 width=88) - Output:["_col1","_col2"] - Group By Operator [GBY_26] (rows=316797606 width=88) - Output:["_col0","_col1","_col2"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0, KEY._col1 - <-Reducer 9 [SIMPLE_EDGE] - SHUFFLE [RS_25] - PartitionCols:_col0 - Group By Operator [GBY_24] (rows=633595212 width=88) - Output:["_col0","_col1","_col2"],aggregations:["sum(_col3)"],keys:_col2, _col1 - Merge Join Operator [MERGEJOIN_79] (rows=633595212 width=88) - Conds:RS_20._col0=RS_21._col0(Inner),Output:["_col1","_col2","_col3"] - <-Map 11 [SIMPLE_EDGE] - SHUFFLE [RS_21] - PartitionCols:_col0 - Select Operator [SEL_19] (rows=8116 width=1119) - Output:["_col0"] - Filter Operator [FIL_75] (rows=8116 width=1119) - predicate:(d_month_seq BETWEEN 1212 AND 1223 and d_date_sk is not null) - TableScan [TS_17] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_month_seq"] - <-Map 8 [SIMPLE_EDGE] - SHUFFLE [RS_20] - PartitionCols:_col0 - Select Operator [SEL_16] (rows=575995635 width=88) - Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_74] (rows=575995635 width=88) - predicate:(ss_sold_date_sk is not null and ss_store_sk is not null) - TableScan [TS_14] (rows=575995635 width=88) - default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_item_sk","ss_store_sk","ss_sales_price"] <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_39] PartitionCols:_col0 @@ -183,7 +147,7 @@ Stage-0 predicate:(ss_sold_date_sk is not null and ss_store_sk is not null and ss_item_sk is not null) TableScan [TS_0] (rows=575995635 width=88) default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_item_sk","ss_store_sk","ss_sales_price"] - <-Map 7 [SIMPLE_EDGE] + <-Map 9 [SIMPLE_EDGE] SHUFFLE [RS_7] PartitionCols:_col0 Select Operator [SEL_5] (rows=8116 width=1119) @@ -192,4 +156,38 @@ Stage-0 predicate:(d_month_seq BETWEEN 1212 AND 1223 and d_date_sk is not null) TableScan [TS_3] (rows=73049 width=1119) default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_month_seq"] + <-Reducer 8 [SIMPLE_EDGE] + SHUFFLE [RS_40] + PartitionCols:_col0 + Select Operator [SEL_32] (rows=158398803 width=88) + Output:["_col0","_col1"] + Group By Operator [GBY_31] (rows=158398803 width=88) + Output:["_col0","_col1"],aggregations:["avg(_col2)"],keys:_col1 + Select Operator [SEL_27] (rows=316797606 width=88) + Output:["_col1","_col2"] + Group By Operator [GBY_26] (rows=316797606 width=88) + Output:["_col0","_col1","_col2"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0, KEY._col1 + <-Reducer 7 [SIMPLE_EDGE] + SHUFFLE [RS_25] + PartitionCols:_col0 + Group By Operator [GBY_24] (rows=633595212 width=88) + Output:["_col0","_col1","_col2"],aggregations:["sum(_col3)"],keys:_col2, _col1 + Merge Join Operator [MERGEJOIN_79] (rows=633595212 width=88) + Conds:RS_20._col0=RS_21._col0(Inner),Output:["_col1","_col2","_col3"] + <-Map 1 [SIMPLE_EDGE] + SHUFFLE [RS_20] + PartitionCols:_col0 + Select Operator [SEL_16] (rows=575995635 width=88) + Output:["_col0","_col1","_col2","_col3"] + Filter Operator [FIL_74] (rows=575995635 width=88) + predicate:(ss_sold_date_sk is not null and ss_store_sk is not null) + Please refer to the previous TableScan [TS_0] + <-Map 9 [SIMPLE_EDGE] + SHUFFLE [RS_21] + PartitionCols:_col0 + Select Operator [SEL_19] (rows=8116 width=1119) + Output:["_col0"] + Filter Operator [FIL_75] (rows=8116 width=1119) + predicate:(d_month_seq BETWEEN 1212 AND 1223 and d_date_sk is not null) + Please refer to the previous TableScan [TS_3] diff --git ql/src/test/results/clientpositive/perf/query66.q.out ql/src/test/results/clientpositive/perf/query66.q.out index 072bfee..ec7b6af 100644 --- ql/src/test/results/clientpositive/perf/query66.q.out +++ ql/src/test/results/clientpositive/perf/query66.q.out @@ -439,15 +439,15 @@ POSTHOOK: type: QUERY Plan optimized by CBO. Vertex dependency in root stage -Reducer 15 <- Map 14 (SIMPLE_EDGE), Map 20 (SIMPLE_EDGE) -Reducer 16 <- Map 21 (SIMPLE_EDGE), Reducer 15 (SIMPLE_EDGE) -Reducer 17 <- Map 22 (SIMPLE_EDGE), Reducer 16 (SIMPLE_EDGE) -Reducer 18 <- Map 23 (SIMPLE_EDGE), Reducer 17 (SIMPLE_EDGE) -Reducer 19 <- Reducer 18 (SIMPLE_EDGE), Union 7 (CONTAINS) +Reducer 11 <- Map 10 (SIMPLE_EDGE), Map 19 (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 18 (SIMPLE_EDGE), Reducer 13 (SIMPLE_EDGE) +Reducer 15 <- Reducer 14 (SIMPLE_EDGE), Union 7 (CONTAINS) 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) -Reducer 5 <- Map 13 (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 18 (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) @@ -469,7 +469,7 @@ Stage-0 Group By Operator [GBY_71] (rows=158120068 width=135) 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 19 [CONTAINS] + <-Reducer 15 [CONTAINS] Reduce Output Operator [RS_70] PartitionCols:_col0, _col1, _col2, _col3, _col4, _col5 Group By Operator [GBY_69] (rows=316240137 width=135) @@ -478,7 +478,7 @@ Stage-0 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_64] (rows=210822976 width=135) 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 18 [SIMPLE_EDGE] + <-Reducer 14 [SIMPLE_EDGE] SHUFFLE [RS_63] PartitionCols:_col0, _col1, _col2, _col3, _col4, _col5 Group By Operator [GBY_62] (rows=421645953 width=135) @@ -487,49 +487,58 @@ Stage-0 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_122] (rows=421645953 width=135) Conds:RS_57._col3=RS_58._col0(Inner),Output:["_col4","_col5","_col6","_col11","_col15","_col16","_col17","_col18","_col19","_col20"] - <-Map 23 [SIMPLE_EDGE] + <-Map 18 [SIMPLE_EDGE] SHUFFLE [RS_58] PartitionCols:_col0 Select Operator [SEL_47] (rows=27 width=1029) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] Filter Operator [FIL_114] (rows=27 width=1029) predicate:w_warehouse_sk is not null - TableScan [TS_45] (rows=27 width=1029) + TableScan [TS_12] (rows=27 width=1029) default@warehouse,warehouse,Tbl:COMPLETE,Col:NONE,Output:["w_warehouse_sk","w_warehouse_name","w_warehouse_sq_ft","w_city","w_county","w_state","w_country"] - <-Reducer 17 [SIMPLE_EDGE] + <-Reducer 13 [SIMPLE_EDGE] SHUFFLE [RS_57] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_121] (rows=383314495 width=135) Conds:RS_54._col2=RS_55._col0(Inner),Output:["_col3","_col4","_col5","_col6","_col11"] - <-Map 22 [SIMPLE_EDGE] + <-Map 17 [SIMPLE_EDGE] SHUFFLE [RS_55] PartitionCols:_col0 Select Operator [SEL_44] (rows=1 width=0) Output:["_col0"] Filter Operator [FIL_113] (rows=1 width=0) predicate:((sm_carrier) IN ('DIAMOND', 'AIRBORNE') and sm_ship_mode_sk is not null) - TableScan [TS_42] (rows=1 width=0) + TableScan [TS_9] (rows=1 width=0) default@ship_mode,ship_mode,Tbl:PARTIAL,Col:NONE,Output:["sm_ship_mode_sk","sm_carrier"] - <-Reducer 16 [SIMPLE_EDGE] + <-Reducer 12 [SIMPLE_EDGE] SHUFFLE [RS_54] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_120] (rows=348467716 width=135) Conds:RS_51._col0=RS_52._col0(Inner),Output:["_col2","_col3","_col4","_col5","_col6","_col11"] - <-Map 21 [SIMPLE_EDGE] + <-Map 16 [SIMPLE_EDGE] SHUFFLE [RS_52] PartitionCols:_col0 Select Operator [SEL_41] (rows=36524 width=1119) Output:["_col0","_col2"] Filter Operator [FIL_112] (rows=36524 width=1119) predicate:((d_year = 2002) and d_date_sk is not null) - TableScan [TS_39] (rows=73049 width=1119) + TableScan [TS_6] (rows=73049 width=1119) default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_moy"] - <-Reducer 15 [SIMPLE_EDGE] + <-Reducer 11 [SIMPLE_EDGE] SHUFFLE [RS_51] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_119] (rows=316788826 width=135) Conds:RS_48._col1=RS_49._col0(Inner),Output:["_col0","_col2","_col3","_col4","_col5","_col6"] - <-Map 14 [SIMPLE_EDGE] + <-Map 10 [SIMPLE_EDGE] + SHUFFLE [RS_49] + PartitionCols:_col0 + Select Operator [SEL_38] (rows=9600 width=471) + Output:["_col0"] + Filter Operator [FIL_111] (rows=9600 width=471) + predicate:(t_time BETWEEN 49530 AND 78330 and t_time_sk is not null) + TableScan [TS_3] (rows=86400 width=471) + default@time_dim,time_dim,Tbl:COMPLETE,Col:NONE,Output:["t_time_sk","t_time"] + <-Map 19 [SIMPLE_EDGE] SHUFFLE [RS_48] PartitionCols:_col1 Select Operator [SEL_35] (rows=287989836 width=135) @@ -538,15 +547,6 @@ Stage-0 predicate:(cs_warehouse_sk is not null and cs_sold_date_sk is not null and cs_sold_time_sk is not null and cs_ship_mode_sk is not null) TableScan [TS_33] (rows=287989836 width=135) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:NONE,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"] - <-Map 20 [SIMPLE_EDGE] - SHUFFLE [RS_49] - PartitionCols:_col0 - Select Operator [SEL_38] (rows=9600 width=471) - Output:["_col0"] - Filter Operator [FIL_111] (rows=9600 width=471) - predicate:(t_time BETWEEN 49530 AND 78330 and t_time_sk is not null) - TableScan [TS_36] (rows=86400 width=471) - default@time_dim,time_dim,Tbl:COMPLETE,Col:NONE,Output:["t_time_sk","t_time"] <-Reducer 6 [CONTAINS] Reduce Output Operator [RS_70] PartitionCols:_col0, _col1, _col2, _col3, _col4, _col5 @@ -565,48 +565,53 @@ Stage-0 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_118] (rows=210834322 width=135) Conds:RS_24._col3=RS_25._col0(Inner),Output:["_col4","_col5","_col6","_col11","_col15","_col16","_col17","_col18","_col19","_col20"] - <-Map 13 [SIMPLE_EDGE] + <-Map 18 [SIMPLE_EDGE] SHUFFLE [RS_25] PartitionCols:_col0 Select Operator [SEL_14] (rows=27 width=1029) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] Filter Operator [FIL_109] (rows=27 width=1029) predicate:w_warehouse_sk is not null - TableScan [TS_12] (rows=27 width=1029) - default@warehouse,warehouse,Tbl:COMPLETE,Col:NONE,Output:["w_warehouse_sk","w_warehouse_name","w_warehouse_sq_ft","w_city","w_county","w_state","w_country"] + Please refer to the previous TableScan [TS_12] <-Reducer 4 [SIMPLE_EDGE] SHUFFLE [RS_24] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_117] (rows=191667562 width=135) Conds:RS_21._col2=RS_22._col0(Inner),Output:["_col3","_col4","_col5","_col6","_col11"] - <-Map 12 [SIMPLE_EDGE] + <-Map 17 [SIMPLE_EDGE] SHUFFLE [RS_22] PartitionCols:_col0 Select Operator [SEL_11] (rows=1 width=0) Output:["_col0"] Filter Operator [FIL_108] (rows=1 width=0) predicate:((sm_carrier) IN ('DIAMOND', 'AIRBORNE') and sm_ship_mode_sk is not null) - TableScan [TS_9] (rows=1 width=0) - default@ship_mode,ship_mode,Tbl:PARTIAL,Col:NONE,Output:["sm_ship_mode_sk","sm_carrier"] + Please refer to the previous TableScan [TS_9] <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_21] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_116] (rows=174243235 width=135) Conds:RS_18._col0=RS_19._col0(Inner),Output:["_col2","_col3","_col4","_col5","_col6","_col11"] - <-Map 11 [SIMPLE_EDGE] + <-Map 16 [SIMPLE_EDGE] SHUFFLE [RS_19] PartitionCols:_col0 Select Operator [SEL_8] (rows=36524 width=1119) Output:["_col0","_col2"] Filter Operator [FIL_107] (rows=36524 width=1119) predicate:((d_year = 2002) and d_date_sk is not null) - TableScan [TS_6] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_moy"] + Please refer to the previous TableScan [TS_6] <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_18] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_115] (rows=158402938 width=135) Conds:RS_15._col1=RS_16._col0(Inner),Output:["_col0","_col2","_col3","_col4","_col5","_col6"] + <-Map 10 [SIMPLE_EDGE] + SHUFFLE [RS_16] + PartitionCols:_col0 + Select Operator [SEL_5] (rows=9600 width=471) + Output:["_col0"] + Filter Operator [FIL_106] (rows=9600 width=471) + predicate:(t_time BETWEEN 49530 AND 78330 and t_time_sk is not null) + Please refer to the previous TableScan [TS_3] <-Map 1 [SIMPLE_EDGE] SHUFFLE [RS_15] PartitionCols:_col1 @@ -616,13 +621,4 @@ Stage-0 predicate:(ws_warehouse_sk is not null and ws_sold_date_sk is not null and ws_sold_time_sk is not null and ws_ship_mode_sk is not null) TableScan [TS_0] (rows=144002668 width=135) default@web_sales,web_sales,Tbl:COMPLETE,Col:NONE,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"] - <-Map 10 [SIMPLE_EDGE] - SHUFFLE [RS_16] - PartitionCols:_col0 - Select Operator [SEL_5] (rows=9600 width=471) - Output:["_col0"] - Filter Operator [FIL_106] (rows=9600 width=471) - predicate:(t_time BETWEEN 49530 AND 78330 and t_time_sk is not null) - TableScan [TS_3] (rows=86400 width=471) - default@time_dim,time_dim,Tbl:COMPLETE,Col:NONE,Output:["t_time_sk","t_time"] diff --git ql/src/test/results/clientpositive/perf/query68.q.out ql/src/test/results/clientpositive/perf/query68.q.out index a015852..84f701b 100644 --- ql/src/test/results/clientpositive/perf/query68.q.out +++ ql/src/test/results/clientpositive/perf/query68.q.out @@ -5,14 +5,14 @@ POSTHOOK: type: QUERY Plan optimized by CBO. Vertex dependency in root stage -Reducer 10 <- Map 15 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) -Reducer 11 <- Reducer 10 (SIMPLE_EDGE) +Reducer 10 <- Map 13 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) +Reducer 11 <- Map 14 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 5 (SIMPLE_EDGE) -Reducer 3 <- Reducer 11 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) -Reducer 7 <- Map 12 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) -Reducer 8 <- Map 13 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) -Reducer 9 <- Map 14 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) +Reducer 6 <- Map 5 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE) +Reducer 7 <- Reducer 6 (SIMPLE_EDGE) +Reducer 9 <- Map 12 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) Stage-0 Fetch Operator @@ -32,30 +32,52 @@ Stage-0 predicate:(_col5 <> _col8) Merge Join Operator [MERGEJOIN_86] (rows=463823414 width=88) Conds:RS_42._col0=RS_43._col1(Inner),Output:["_col2","_col3","_col5","_col6","_col8","_col9","_col10","_col11"] - <-Reducer 11 [SIMPLE_EDGE] + <-Reducer 2 [SIMPLE_EDGE] + SHUFFLE [RS_42] + PartitionCols:_col0 + Merge Join Operator [MERGEJOIN_81] (rows=88000001 width=860) + Conds:RS_39._col1=RS_40._col0(Inner),Output:["_col0","_col2","_col3","_col5"] + <-Map 5 [SIMPLE_EDGE] + SHUFFLE [RS_40] + PartitionCols:_col0 + Select Operator [SEL_5] (rows=40000000 width=1014) + Output:["_col0","_col1"] + Filter Operator [FIL_75] (rows=40000000 width=1014) + predicate:ca_address_sk is not null + TableScan [TS_3] (rows=40000000 width=1014) + default@customer_address,current_addr,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_city"] + <-Map 1 [SIMPLE_EDGE] + SHUFFLE [RS_39] + PartitionCols:_col1 + Select Operator [SEL_2] (rows=80000000 width=860) + Output:["_col0","_col1","_col2","_col3"] + Filter Operator [FIL_74] (rows=80000000 width=860) + predicate:(c_customer_sk is not null and c_current_addr_sk is not null) + TableScan [TS_0] (rows=80000000 width=860) + default@customer,customer,Tbl:COMPLETE,Col:NONE,Output:["c_customer_sk","c_current_addr_sk","c_first_name","c_last_name"] + <-Reducer 7 [SIMPLE_EDGE] SHUFFLE [RS_43] PartitionCols:_col1 Select Operator [SEL_37] (rows=421657640 width=88) Output:["_col0","_col1","_col2","_col3","_col4","_col5"] Group By Operator [GBY_36] (rows=421657640 width=88) 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 10 [SIMPLE_EDGE] + <-Reducer 6 [SIMPLE_EDGE] SHUFFLE [RS_35] PartitionCols:_col0, _col1, _col2, _col3 Group By Operator [GBY_34] (rows=843315281 width=88) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"],aggregations:["sum(_col6)","sum(_col7)","sum(_col8)"],keys:_col1, _col18, _col3, _col5 Merge Join Operator [MERGEJOIN_85] (rows=843315281 width=88) Conds:RS_30._col3=RS_31._col0(Inner),Output:["_col1","_col3","_col5","_col6","_col7","_col8","_col18"] - <-Map 15 [SIMPLE_EDGE] + <-Map 5 [SIMPLE_EDGE] SHUFFLE [RS_31] PartitionCols:_col0 Select Operator [SEL_20] (rows=40000000 width=1014) Output:["_col0","_col1"] Filter Operator [FIL_80] (rows=40000000 width=1014) predicate:ca_address_sk is not null - TableScan [TS_18] (rows=40000000 width=1014) - default@customer_address,customer_address,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_city"] - <-Reducer 9 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_3] + <-Reducer 11 [SIMPLE_EDGE] SHUFFLE [RS_30] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_84] (rows=766650239 width=88) @@ -69,7 +91,7 @@ Stage-0 predicate:(((hd_dep_count = 4) or (hd_vehicle_count = 2)) and hd_demo_sk is not null) TableScan [TS_15] (rows=7200 width=107) default@household_demographics,household_demographics,Tbl:COMPLETE,Col:NONE,Output:["hd_demo_sk","hd_dep_count","hd_vehicle_count"] - <-Reducer 8 [SIMPLE_EDGE] + <-Reducer 10 [SIMPLE_EDGE] SHUFFLE [RS_27] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_83] (rows=696954748 width=88) @@ -83,7 +105,7 @@ Stage-0 predicate:((s_city) IN ('Rosedale', 'Bethlehem') and s_store_sk is not null) TableScan [TS_12] (rows=1704 width=1910) default@store,store,Tbl:COMPLETE,Col:NONE,Output:["s_store_sk","s_city"] - <-Reducer 7 [SIMPLE_EDGE] + <-Reducer 9 [SIMPLE_EDGE] SHUFFLE [RS_24] PartitionCols:_col4 Merge Join Operator [MERGEJOIN_82] (rows=633595212 width=88) @@ -97,7 +119,7 @@ Stage-0 predicate:((d_year) IN (1998, 1999, 2000) and d_dom BETWEEN 1 AND 2 and d_date_sk is not null) TableScan [TS_9] (rows=73049 width=1119) default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_dom"] - <-Map 6 [SIMPLE_EDGE] + <-Map 8 [SIMPLE_EDGE] SHUFFLE [RS_21] PartitionCols:_col0 Select Operator [SEL_8] (rows=575995635 width=88) @@ -106,27 +128,4 @@ Stage-0 predicate:(ss_sold_date_sk is not null and ss_store_sk is not null and ss_hdemo_sk is not null and ss_addr_sk is not null and ss_customer_sk is not null) TableScan [TS_6] (rows=575995635 width=88) default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,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 2 [SIMPLE_EDGE] - SHUFFLE [RS_42] - PartitionCols:_col0 - Merge Join Operator [MERGEJOIN_81] (rows=88000001 width=860) - Conds:RS_39._col1=RS_40._col0(Inner),Output:["_col0","_col2","_col3","_col5"] - <-Map 1 [SIMPLE_EDGE] - SHUFFLE [RS_39] - PartitionCols:_col1 - Select Operator [SEL_2] (rows=80000000 width=860) - Output:["_col0","_col1","_col2","_col3"] - Filter Operator [FIL_74] (rows=80000000 width=860) - predicate:(c_customer_sk is not null and c_current_addr_sk is not null) - TableScan [TS_0] (rows=80000000 width=860) - default@customer,customer,Tbl:COMPLETE,Col:NONE,Output:["c_customer_sk","c_current_addr_sk","c_first_name","c_last_name"] - <-Map 5 [SIMPLE_EDGE] - SHUFFLE [RS_40] - PartitionCols:_col0 - Select Operator [SEL_5] (rows=40000000 width=1014) - Output:["_col0","_col1"] - Filter Operator [FIL_75] (rows=40000000 width=1014) - predicate:ca_address_sk is not null - TableScan [TS_3] (rows=40000000 width=1014) - default@customer_address,current_addr,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_city"] diff --git ql/src/test/results/clientpositive/perf/query69.q.out ql/src/test/results/clientpositive/perf/query69.q.out index 87087ac..7ee80a6 100644 --- ql/src/test/results/clientpositive/perf/query69.q.out +++ ql/src/test/results/clientpositive/perf/query69.q.out @@ -93,14 +93,14 @@ Plan optimized by CBO. Vertex dependency in root stage Reducer 11 <- Map 10 (SIMPLE_EDGE), Map 13 (SIMPLE_EDGE) Reducer 12 <- Reducer 11 (SIMPLE_EDGE) -Reducer 15 <- Map 14 (SIMPLE_EDGE), Map 17 (SIMPLE_EDGE) -Reducer 16 <- Reducer 15 (SIMPLE_EDGE) -Reducer 19 <- Map 18 (SIMPLE_EDGE), Map 21 (SIMPLE_EDGE) +Reducer 14 <- Map 13 (SIMPLE_EDGE), Map 18 (SIMPLE_EDGE) +Reducer 15 <- Reducer 14 (SIMPLE_EDGE) +Reducer 16 <- Map 13 (SIMPLE_EDGE), Map 19 (SIMPLE_EDGE) +Reducer 17 <- Reducer 16 (SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) -Reducer 20 <- Reducer 19 (SIMPLE_EDGE) Reducer 3 <- Map 9 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Reducer 12 (SIMPLE_EDGE), Reducer 16 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Reducer 20 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) +Reducer 4 <- Reducer 12 (SIMPLE_EDGE), Reducer 15 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 5 <- Reducer 17 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) @@ -131,21 +131,30 @@ Stage-0 predicate:_col15 is null Merge Join Operator [MERGEJOIN_114] (rows=383325119 width=88) Conds:RS_64._col0=RS_65._col0(Left Outer),Output:["_col6","_col7","_col8","_col9","_col10","_col15"] - <-Reducer 20 [SIMPLE_EDGE] + <-Reducer 17 [SIMPLE_EDGE] SHUFFLE [RS_65] PartitionCols:_col0 Select Operator [SEL_63] (rows=158394413 width=135) Output:["_col0","_col1"] Group By Operator [GBY_62] (rows=158394413 width=135) Output:["_col0"],keys:KEY._col0 - <-Reducer 19 [SIMPLE_EDGE] + <-Reducer 16 [SIMPLE_EDGE] SHUFFLE [RS_61] PartitionCols:_col0 Group By Operator [GBY_60] (rows=316788826 width=135) Output:["_col0"],keys:_col1 Merge Join Operator [MERGEJOIN_112] (rows=316788826 width=135) Conds:RS_56._col0=RS_57._col0(Inner),Output:["_col1"] - <-Map 18 [SIMPLE_EDGE] + <-Map 13 [SIMPLE_EDGE] + SHUFFLE [RS_57] + PartitionCols:_col0 + Select Operator [SEL_55] (rows=4058 width=1119) + Output:["_col0"] + Filter Operator [FIL_107] (rows=4058 width=1119) + predicate:((d_year = 1999) and d_moy BETWEEN 1 AND 3 and d_date_sk is not null) + TableScan [TS_12] (rows=73049 width=1119) + default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_moy"] + <-Map 19 [SIMPLE_EDGE] SHUFFLE [RS_56] PartitionCols:_col0 Select Operator [SEL_52] (rows=287989836 width=135) @@ -154,15 +163,6 @@ Stage-0 predicate:(cs_ship_customer_sk is not null and cs_sold_date_sk is not null) TableScan [TS_50] (rows=287989836 width=135) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:NONE,Output:["cs_sold_date_sk","cs_ship_customer_sk"] - <-Map 21 [SIMPLE_EDGE] - SHUFFLE [RS_57] - PartitionCols:_col0 - Select Operator [SEL_55] (rows=4058 width=1119) - Output:["_col0"] - Filter Operator [FIL_107] (rows=4058 width=1119) - predicate:((d_year = 1999) and d_moy BETWEEN 1 AND 3 and d_date_sk is not null) - TableScan [TS_53] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_moy"] <-Reducer 4 [SIMPLE_EDGE] SHUFFLE [RS_64] PartitionCols:_col0 @@ -188,6 +188,14 @@ Stage-0 Output:["_col0"],keys:_col1 Merge Join Operator [MERGEJOIN_110] (rows=158402938 width=135) Conds:RS_15._col0=RS_16._col0(Inner),Output:["_col1"] + <-Map 13 [SIMPLE_EDGE] + SHUFFLE [RS_16] + PartitionCols:_col0 + Select Operator [SEL_14] (rows=4058 width=1119) + Output:["_col0"] + Filter Operator [FIL_103] (rows=4058 width=1119) + predicate:((d_year = 1999) and d_moy BETWEEN 1 AND 3 and d_date_sk is not null) + Please refer to the previous TableScan [TS_12] <-Map 10 [SIMPLE_EDGE] SHUFFLE [RS_15] PartitionCols:_col0 @@ -197,28 +205,27 @@ Stage-0 predicate:(ws_bill_customer_sk is not null and ws_sold_date_sk is not null) TableScan [TS_9] (rows=144002668 width=135) default@web_sales,web_sales,Tbl:COMPLETE,Col:NONE,Output:["ws_sold_date_sk","ws_bill_customer_sk"] - <-Map 13 [SIMPLE_EDGE] - SHUFFLE [RS_16] - PartitionCols:_col0 - Select Operator [SEL_14] (rows=4058 width=1119) - Output:["_col0"] - Filter Operator [FIL_103] (rows=4058 width=1119) - predicate:((d_year = 1999) and d_moy BETWEEN 1 AND 3 and d_date_sk is not null) - TableScan [TS_12] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_moy"] - <-Reducer 16 [SIMPLE_EDGE] + <-Reducer 15 [SIMPLE_EDGE] SHUFFLE [RS_45] PartitionCols:_col0 Group By Operator [GBY_35] (rows=316797606 width=88) Output:["_col0"],keys:KEY._col0 - <-Reducer 15 [SIMPLE_EDGE] + <-Reducer 14 [SIMPLE_EDGE] SHUFFLE [RS_34] PartitionCols:_col0 Group By Operator [GBY_33] (rows=633595212 width=88) Output:["_col0"],keys:_col1 Merge Join Operator [MERGEJOIN_111] (rows=633595212 width=88) Conds:RS_29._col0=RS_30._col0(Inner),Output:["_col1"] - <-Map 14 [SIMPLE_EDGE] + <-Map 13 [SIMPLE_EDGE] + SHUFFLE [RS_30] + PartitionCols:_col0 + Select Operator [SEL_28] (rows=4058 width=1119) + Output:["_col0"] + Filter Operator [FIL_105] (rows=4058 width=1119) + predicate:((d_year = 1999) and d_moy BETWEEN 1 AND 3 and d_date_sk is not null) + Please refer to the previous TableScan [TS_12] + <-Map 18 [SIMPLE_EDGE] SHUFFLE [RS_29] PartitionCols:_col0 Select Operator [SEL_25] (rows=575995635 width=88) @@ -227,15 +234,6 @@ Stage-0 predicate:(ss_customer_sk is not null and ss_sold_date_sk is not null) TableScan [TS_23] (rows=575995635 width=88) default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_customer_sk"] - <-Map 17 [SIMPLE_EDGE] - SHUFFLE [RS_30] - PartitionCols:_col0 - Select Operator [SEL_28] (rows=4058 width=1119) - Output:["_col0"] - Filter Operator [FIL_105] (rows=4058 width=1119) - predicate:((d_year = 1999) and d_moy BETWEEN 1 AND 3 and d_date_sk is not null) - TableScan [TS_26] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_moy"] <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_43] PartitionCols:_col0 diff --git ql/src/test/results/clientpositive/perf/query70.q.out ql/src/test/results/clientpositive/perf/query70.q.out index 8e42fac..55c1461 100644 --- ql/src/test/results/clientpositive/perf/query70.q.out +++ ql/src/test/results/clientpositive/perf/query70.q.out @@ -75,16 +75,16 @@ POSTHOOK: type: QUERY Plan optimized by CBO. Vertex dependency in root stage -Reducer 11 <- Map 10 (SIMPLE_EDGE), Map 15 (SIMPLE_EDGE) -Reducer 12 <- Map 16 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE) -Reducer 13 <- Reducer 12 (SIMPLE_EDGE) -Reducer 14 <- Reducer 13 (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 14 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 10 <- Reducer 9 (SIMPLE_EDGE) +Reducer 11 <- Reducer 10 (SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 12 (SIMPLE_EDGE) +Reducer 3 <- Map 13 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 4 <- Reducer 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 8 <- Map 1 (SIMPLE_EDGE), Map 12 (SIMPLE_EDGE) +Reducer 9 <- Map 14 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) Stage-0 Fetch Operator @@ -120,7 +120,7 @@ Stage-0 Output:["_col0","_col1","_col2"] Merge Join Operator [MERGEJOIN_88] (rows=766650239 width=88) Conds:RS_43._col7=RS_44._col0(Inner),Output:["_col2","_col6","_col7"] - <-Reducer 14 [SIMPLE_EDGE] + <-Reducer 11 [SIMPLE_EDGE] SHUFFLE [RS_44] PartitionCols:_col0 Select Operator [SEL_32] (rows=116159124 width=88) @@ -131,19 +131,19 @@ Stage-0 Function definitions:[{},{"name:":"windowingtablefunction","order by:":"_col1 DESC NULLS LAST","partition by:":"_col0"}] Select Operator [SEL_30] (rows=348477374 width=88) Output:["_col0","_col1"] - <-Reducer 13 [SIMPLE_EDGE] + <-Reducer 10 [SIMPLE_EDGE] SHUFFLE [RS_29] PartitionCols:_col0 Group By Operator [GBY_27] (rows=348477374 width=88) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Reducer 12 [SIMPLE_EDGE] + <-Reducer 9 [SIMPLE_EDGE] SHUFFLE [RS_26] PartitionCols:_col0 Group By Operator [GBY_25] (rows=696954748 width=88) Output:["_col0","_col1"],aggregations:["sum(_col2)"],keys:_col6 Merge Join Operator [MERGEJOIN_87] (rows=696954748 width=88) Conds:RS_21._col1=RS_22._col0(Inner),Output:["_col2","_col6"] - <-Map 16 [SIMPLE_EDGE] + <-Map 14 [SIMPLE_EDGE] SHUFFLE [RS_22] PartitionCols:_col0 Select Operator [SEL_17] (rows=1704 width=1910) @@ -152,35 +152,35 @@ Stage-0 predicate:(s_store_sk is not null and s_state is not null) TableScan [TS_15] (rows=1704 width=1910) default@store,store,Tbl:COMPLETE,Col:NONE,Output:["s_store_sk","s_state"] - <-Reducer 11 [SIMPLE_EDGE] + <-Reducer 8 [SIMPLE_EDGE] SHUFFLE [RS_21] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_86] (rows=633595212 width=88) Conds:RS_18._col0=RS_19._col0(Inner),Output:["_col1","_col2"] - <-Map 10 [SIMPLE_EDGE] + <-Map 1 [SIMPLE_EDGE] SHUFFLE [RS_18] PartitionCols:_col0 Select Operator [SEL_11] (rows=575995635 width=88) Output:["_col0","_col1","_col2"] Filter Operator [FIL_81] (rows=575995635 width=88) predicate:(ss_store_sk is not null and ss_sold_date_sk is not null) - TableScan [TS_9] (rows=575995635 width=88) + TableScan [TS_0] (rows=575995635 width=88) default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_store_sk","ss_net_profit"] - <-Map 15 [SIMPLE_EDGE] + <-Map 12 [SIMPLE_EDGE] SHUFFLE [RS_19] PartitionCols:_col0 Select Operator [SEL_14] (rows=8116 width=1119) Output:["_col0"] Filter Operator [FIL_82] (rows=8116 width=1119) predicate:(d_month_seq BETWEEN 1212 AND 1223 and d_date_sk is not null) - TableScan [TS_12] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_month_seq"] + TableScan [TS_3] (rows=73049 width=1119) + default@date_dim,d1,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_month_seq"] <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_43] PartitionCols:_col7 Merge Join Operator [MERGEJOIN_85] (rows=696954748 width=88) Conds:RS_40._col1=RS_41._col0(Inner),Output:["_col2","_col6","_col7"] - <-Map 9 [SIMPLE_EDGE] + <-Map 13 [SIMPLE_EDGE] SHUFFLE [RS_41] PartitionCols:_col0 Select Operator [SEL_8] (rows=1704 width=1910) @@ -201,15 +201,13 @@ Stage-0 Output:["_col0","_col1","_col2"] Filter Operator [FIL_77] (rows=575995635 width=88) predicate:(ss_sold_date_sk is not null and ss_store_sk is not null) - TableScan [TS_0] (rows=575995635 width=88) - default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_store_sk","ss_net_profit"] - <-Map 8 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_0] + <-Map 12 [SIMPLE_EDGE] SHUFFLE [RS_38] PartitionCols:_col0 Select Operator [SEL_5] (rows=8116 width=1119) Output:["_col0"] Filter Operator [FIL_78] (rows=8116 width=1119) predicate:(d_month_seq BETWEEN 1212 AND 1223 and d_date_sk is not null) - TableScan [TS_3] (rows=73049 width=1119) - default@date_dim,d1,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_month_seq"] + Please refer to the previous TableScan [TS_3] diff --git ql/src/test/results/clientpositive/perf/query75.q.out ql/src/test/results/clientpositive/perf/query75.q.out index b1e236d..0ecc985 100644 --- ql/src/test/results/clientpositive/perf/query75.q.out +++ ql/src/test/results/clientpositive/perf/query75.q.out @@ -5,28 +5,28 @@ POSTHOOK: type: QUERY Plan optimized by CBO. Vertex dependency in root stage -Reducer 13 <- Map 12 (SIMPLE_EDGE), Map 16 (SIMPLE_EDGE) -Reducer 14 <- Map 17 (SIMPLE_EDGE), Reducer 13 (SIMPLE_EDGE) -Reducer 15 <- Map 18 (SIMPLE_EDGE), Reducer 14 (SIMPLE_EDGE), Union 5 (CONTAINS) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 9 (SIMPLE_EDGE) -Reducer 20 <- Map 19 (SIMPLE_EDGE), Map 23 (SIMPLE_EDGE) -Reducer 21 <- Map 24 (SIMPLE_EDGE), Reducer 20 (SIMPLE_EDGE) -Reducer 22 <- Map 25 (SIMPLE_EDGE), Reducer 21 (SIMPLE_EDGE), Union 5 (CONTAINS) -Reducer 27 <- Map 26 (SIMPLE_EDGE), Map 32 (SIMPLE_EDGE) -Reducer 28 <- Map 33 (SIMPLE_EDGE), Reducer 27 (SIMPLE_EDGE) -Reducer 29 <- Map 34 (SIMPLE_EDGE), Reducer 28 (SIMPLE_EDGE), Union 30 (CONTAINS) -Reducer 3 <- Map 10 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 31 <- Union 30 (SIMPLE_EDGE) -Reducer 36 <- Map 35 (SIMPLE_EDGE), Map 39 (SIMPLE_EDGE) -Reducer 37 <- Map 40 (SIMPLE_EDGE), Reducer 36 (SIMPLE_EDGE) -Reducer 38 <- Map 41 (SIMPLE_EDGE), Reducer 37 (SIMPLE_EDGE), Union 30 (CONTAINS) -Reducer 4 <- Map 11 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE), Union 5 (CONTAINS) -Reducer 43 <- Map 42 (SIMPLE_EDGE), Map 46 (SIMPLE_EDGE) -Reducer 44 <- Map 47 (SIMPLE_EDGE), Reducer 43 (SIMPLE_EDGE) -Reducer 45 <- Map 48 (SIMPLE_EDGE), Reducer 44 (SIMPLE_EDGE), Union 30 (CONTAINS) +Reducer 10 <- Map 27 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) +Reducer 11 <- Map 28 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE), Union 12 (CONTAINS) +Reducer 13 <- Union 12 (SIMPLE_EDGE) +Reducer 15 <- Map 14 (SIMPLE_EDGE), Map 29 (SIMPLE_EDGE) +Reducer 16 <- Map 27 (SIMPLE_EDGE), Reducer 15 (SIMPLE_EDGE) +Reducer 17 <- Map 30 (SIMPLE_EDGE), Reducer 16 (SIMPLE_EDGE), Union 5 (CONTAINS) +Reducer 18 <- Map 14 (SIMPLE_EDGE), Map 31 (SIMPLE_EDGE) +Reducer 19 <- Map 27 (SIMPLE_EDGE), Reducer 18 (SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 14 (SIMPLE_EDGE) +Reducer 20 <- Map 32 (SIMPLE_EDGE), Reducer 19 (SIMPLE_EDGE), Union 5 (CONTAINS) +Reducer 21 <- Map 14 (SIMPLE_EDGE), Map 29 (SIMPLE_EDGE) +Reducer 22 <- Map 27 (SIMPLE_EDGE), Reducer 21 (SIMPLE_EDGE) +Reducer 23 <- Map 30 (SIMPLE_EDGE), Reducer 22 (SIMPLE_EDGE), Union 12 (CONTAINS) +Reducer 24 <- Map 14 (SIMPLE_EDGE), Map 31 (SIMPLE_EDGE) +Reducer 25 <- Map 27 (SIMPLE_EDGE), Reducer 24 (SIMPLE_EDGE) +Reducer 26 <- Map 32 (SIMPLE_EDGE), Reducer 25 (SIMPLE_EDGE), Union 12 (CONTAINS) +Reducer 3 <- Map 27 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 4 <- Map 28 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE), Union 5 (CONTAINS) Reducer 6 <- Union 5 (SIMPLE_EDGE) -Reducer 7 <- Reducer 31 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) +Reducer 7 <- Reducer 13 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) Reducer 8 <- Reducer 7 (SIMPLE_EDGE) +Reducer 9 <- Map 1 (SIMPLE_EDGE), Map 14 (SIMPLE_EDGE) Stage-0 Fetch Operator @@ -46,13 +46,13 @@ Stage-0 predicate:((CAST( _col10 AS decimal(17,2)) / CAST( _col4 AS decimal(17,2))) < 0.9) Merge Join Operator [MERGEJOIN_259] (rows=737897778 width=108) Conds:RS_148._col0, _col1, _col2, _col3=RS_149._col0, _col1, _col2, _col3(Inner),Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col10","_col11"] - <-Reducer 31 [SIMPLE_EDGE] + <-Reducer 13 [SIMPLE_EDGE] SHUFFLE [RS_149] PartitionCols:_col0, _col1, _col2, _col3 Group By Operator [GBY_146] (rows=670816148 width=108) Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3 - <-Union 30 [SIMPLE_EDGE] - <-Reducer 29 [CONTAINS] + <-Union 12 [SIMPLE_EDGE] + <-Reducer 11 [CONTAINS] Reduce Output Operator [RS_145] PartitionCols:_col0, _col1, _col2, _col3 Group By Operator [GBY_144] (rows=1341632296 width=108) @@ -61,53 +61,53 @@ Stage-0 Output:["_col0","_col1","_col2","_col3","_col4","_col5"] Merge Join Operator [MERGEJOIN_252] (rows=383314495 width=135) Conds:RS_92._col1, _col2=RS_93._col0, _col1(Left Outer),Output:["_col3","_col4","_col8","_col9","_col10","_col12","_col15","_col16"] - <-Map 34 [SIMPLE_EDGE] + <-Map 28 [SIMPLE_EDGE] SHUFFLE [RS_93] PartitionCols:_col0, _col1 Select Operator [SEL_85] (rows=28798881 width=106) Output:["_col0","_col1","_col2","_col3"] Filter Operator [FIL_232] (rows=28798881 width=106) predicate:cr_item_sk is not null - TableScan [TS_83] (rows=28798881 width=106) + TableScan [TS_9] (rows=28798881 width=106) default@catalog_returns,catalog_returns,Tbl:COMPLETE,Col:NONE,Output:["cr_item_sk","cr_order_number","cr_return_quantity","cr_return_amount"] - <-Reducer 28 [SIMPLE_EDGE] + <-Reducer 10 [SIMPLE_EDGE] SHUFFLE [RS_92] PartitionCols:_col1, _col2 Merge Join Operator [MERGEJOIN_251] (rows=348467716 width=135) Conds:RS_89._col1=RS_90._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col8","_col9","_col10","_col12"] - <-Map 33 [SIMPLE_EDGE] + <-Map 27 [SIMPLE_EDGE] SHUFFLE [RS_90] PartitionCols:_col0 Select Operator [SEL_82] (rows=231000 width=1436) Output:["_col0","_col1","_col2","_col3","_col5"] Filter Operator [FIL_231] (rows=231000 width=1436) predicate:((i_category = 'Sports') and i_item_sk is not null and i_brand_id is not null and i_class_id is not null and i_category_id is not null and i_manufact_id is not null) - TableScan [TS_80] (rows=462000 width=1436) + TableScan [TS_6] (rows=462000 width=1436) default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_brand_id","i_class_id","i_category_id","i_category","i_manufact_id"] - <-Reducer 27 [SIMPLE_EDGE] + <-Reducer 9 [SIMPLE_EDGE] SHUFFLE [RS_89] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_250] (rows=316788826 width=135) Conds:RS_86._col0=RS_87._col0(Inner),Output:["_col1","_col2","_col3","_col4"] - <-Map 26 [SIMPLE_EDGE] - SHUFFLE [RS_86] - PartitionCols:_col0 - Select Operator [SEL_76] (rows=287989836 width=135) - Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_229] (rows=287989836 width=135) - predicate:(cs_item_sk is not null and cs_sold_date_sk is not null) - TableScan [TS_74] (rows=287989836 width=135) - default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:NONE,Output:["cs_sold_date_sk","cs_item_sk","cs_order_number","cs_quantity","cs_ext_sales_price"] - <-Map 32 [SIMPLE_EDGE] + <-Map 14 [SIMPLE_EDGE] SHUFFLE [RS_87] PartitionCols:_col0 Select Operator [SEL_79] (rows=36524 width=1119) Output:["_col0"] Filter Operator [FIL_230] (rows=36524 width=1119) predicate:((d_year = 2002) and d_date_sk is not null) - TableScan [TS_77] (rows=73049 width=1119) + TableScan [TS_3] (rows=73049 width=1119) default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] - <-Reducer 38 [CONTAINS] + <-Map 1 [SIMPLE_EDGE] + SHUFFLE [RS_86] + PartitionCols:_col0 + Select Operator [SEL_76] (rows=287989836 width=135) + Output:["_col0","_col1","_col2","_col3","_col4"] + Filter Operator [FIL_229] (rows=287989836 width=135) + predicate:(cs_item_sk is not null and cs_sold_date_sk is not null) + TableScan [TS_0] (rows=287989836 width=135) + default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:NONE,Output:["cs_sold_date_sk","cs_item_sk","cs_order_number","cs_quantity","cs_ext_sales_price"] + <-Reducer 23 [CONTAINS] Reduce Output Operator [RS_145] PartitionCols:_col0, _col1, _col2, _col3 Group By Operator [GBY_144] (rows=1341632296 width=108) @@ -116,53 +116,51 @@ Stage-0 Output:["_col0","_col1","_col2","_col3","_col4","_col5"] Merge Join Operator [MERGEJOIN_255] (rows=766650239 width=88) Conds:RS_114._col1, _col2=RS_115._col0, _col1(Left Outer),Output:["_col3","_col4","_col8","_col9","_col10","_col12","_col15","_col16"] - <-Map 41 [SIMPLE_EDGE] + <-Map 30 [SIMPLE_EDGE] SHUFFLE [RS_115] PartitionCols:_col0, _col1 Select Operator [SEL_107] (rows=57591150 width=77) Output:["_col0","_col1","_col2","_col3"] Filter Operator [FIL_236] (rows=57591150 width=77) predicate:sr_item_sk is not null - TableScan [TS_105] (rows=57591150 width=77) + TableScan [TS_31] (rows=57591150 width=77) default@store_returns,store_returns,Tbl:COMPLETE,Col:NONE,Output:["sr_item_sk","sr_ticket_number","sr_return_quantity","sr_return_amt"] - <-Reducer 37 [SIMPLE_EDGE] + <-Reducer 22 [SIMPLE_EDGE] SHUFFLE [RS_114] PartitionCols:_col1, _col2 Merge Join Operator [MERGEJOIN_254] (rows=696954748 width=88) Conds:RS_111._col1=RS_112._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col8","_col9","_col10","_col12"] - <-Map 40 [SIMPLE_EDGE] + <-Map 27 [SIMPLE_EDGE] SHUFFLE [RS_112] PartitionCols:_col0 Select Operator [SEL_104] (rows=231000 width=1436) Output:["_col0","_col1","_col2","_col3","_col5"] Filter Operator [FIL_235] (rows=231000 width=1436) predicate:((i_category = 'Sports') and i_item_sk is not null and i_brand_id is not null and i_class_id is not null and i_category_id is not null and i_manufact_id is not null) - TableScan [TS_102] (rows=462000 width=1436) - default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_brand_id","i_class_id","i_category_id","i_category","i_manufact_id"] - <-Reducer 36 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_6] + <-Reducer 21 [SIMPLE_EDGE] SHUFFLE [RS_111] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_253] (rows=633595212 width=88) Conds:RS_108._col0=RS_109._col0(Inner),Output:["_col1","_col2","_col3","_col4"] - <-Map 35 [SIMPLE_EDGE] + <-Map 14 [SIMPLE_EDGE] + SHUFFLE [RS_109] + PartitionCols:_col0 + Select Operator [SEL_101] (rows=36524 width=1119) + Output:["_col0"] + Filter Operator [FIL_234] (rows=36524 width=1119) + predicate:((d_year = 2002) and d_date_sk is not null) + Please refer to the previous TableScan [TS_3] + <-Map 29 [SIMPLE_EDGE] SHUFFLE [RS_108] PartitionCols:_col0 Select Operator [SEL_98] (rows=575995635 width=88) Output:["_col0","_col1","_col2","_col3","_col4"] Filter Operator [FIL_233] (rows=575995635 width=88) predicate:(ss_item_sk is not null and ss_sold_date_sk is not null) - TableScan [TS_96] (rows=575995635 width=88) + TableScan [TS_22] (rows=575995635 width=88) default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_item_sk","ss_ticket_number","ss_quantity","ss_ext_sales_price"] - <-Map 39 [SIMPLE_EDGE] - SHUFFLE [RS_109] - PartitionCols:_col0 - Select Operator [SEL_101] (rows=36524 width=1119) - Output:["_col0"] - Filter Operator [FIL_234] (rows=36524 width=1119) - predicate:((d_year = 2002) and d_date_sk is not null) - TableScan [TS_99] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] - <-Reducer 45 [CONTAINS] + <-Reducer 26 [CONTAINS] Reduce Output Operator [RS_145] PartitionCols:_col0, _col1, _col2, _col3 Group By Operator [GBY_144] (rows=1341632296 width=108) @@ -171,59 +169,57 @@ Stage-0 Output:["_col0","_col1","_col2","_col3","_col4","_col5"] Merge Join Operator [MERGEJOIN_258] (rows=191667562 width=135) Conds:RS_138._col1, _col2=RS_139._col0, _col1(Left Outer),Output:["_col3","_col4","_col8","_col9","_col10","_col12","_col15","_col16"] - <-Map 48 [SIMPLE_EDGE] + <-Map 32 [SIMPLE_EDGE] SHUFFLE [RS_139] PartitionCols:_col0, _col1 Select Operator [SEL_131] (rows=14398467 width=92) Output:["_col0","_col1","_col2","_col3"] Filter Operator [FIL_240] (rows=14398467 width=92) predicate:wr_item_sk is not null - TableScan [TS_129] (rows=14398467 width=92) + TableScan [TS_55] (rows=14398467 width=92) default@web_returns,web_returns,Tbl:COMPLETE,Col:NONE,Output:["wr_item_sk","wr_order_number","wr_return_quantity","wr_return_amt"] - <-Reducer 44 [SIMPLE_EDGE] + <-Reducer 25 [SIMPLE_EDGE] SHUFFLE [RS_138] PartitionCols:_col1, _col2 Merge Join Operator [MERGEJOIN_257] (rows=174243235 width=135) Conds:RS_135._col1=RS_136._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col8","_col9","_col10","_col12"] - <-Map 47 [SIMPLE_EDGE] + <-Map 27 [SIMPLE_EDGE] SHUFFLE [RS_136] PartitionCols:_col0 Select Operator [SEL_128] (rows=231000 width=1436) Output:["_col0","_col1","_col2","_col3","_col5"] Filter Operator [FIL_239] (rows=231000 width=1436) predicate:((i_category = 'Sports') and i_item_sk is not null and i_brand_id is not null and i_class_id is not null and i_category_id is not null and i_manufact_id is not null) - TableScan [TS_126] (rows=462000 width=1436) - default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_brand_id","i_class_id","i_category_id","i_category","i_manufact_id"] - <-Reducer 43 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_6] + <-Reducer 24 [SIMPLE_EDGE] SHUFFLE [RS_135] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_256] (rows=158402938 width=135) Conds:RS_132._col0=RS_133._col0(Inner),Output:["_col1","_col2","_col3","_col4"] - <-Map 42 [SIMPLE_EDGE] + <-Map 14 [SIMPLE_EDGE] + SHUFFLE [RS_133] + PartitionCols:_col0 + Select Operator [SEL_125] (rows=36524 width=1119) + Output:["_col0"] + Filter Operator [FIL_238] (rows=36524 width=1119) + predicate:((d_year = 2002) and d_date_sk is not null) + Please refer to the previous TableScan [TS_3] + <-Map 31 [SIMPLE_EDGE] SHUFFLE [RS_132] PartitionCols:_col0 Select Operator [SEL_122] (rows=144002668 width=135) Output:["_col0","_col1","_col2","_col3","_col4"] Filter Operator [FIL_237] (rows=144002668 width=135) predicate:(ws_item_sk is not null and ws_sold_date_sk is not null) - TableScan [TS_120] (rows=144002668 width=135) + TableScan [TS_46] (rows=144002668 width=135) default@web_sales,web_sales,Tbl:COMPLETE,Col:NONE,Output:["ws_sold_date_sk","ws_item_sk","ws_order_number","ws_quantity","ws_ext_sales_price"] - <-Map 46 [SIMPLE_EDGE] - SHUFFLE [RS_133] - PartitionCols:_col0 - Select Operator [SEL_125] (rows=36524 width=1119) - Output:["_col0"] - Filter Operator [FIL_238] (rows=36524 width=1119) - predicate:((d_year = 2002) and d_date_sk is not null) - TableScan [TS_123] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] <-Reducer 6 [SIMPLE_EDGE] SHUFFLE [RS_148] PartitionCols:_col0, _col1, _col2, _col3 Group By Operator [GBY_72] (rows=670816148 width=108) Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3 <-Union 5 [SIMPLE_EDGE] - <-Reducer 15 [CONTAINS] + <-Reducer 17 [CONTAINS] Reduce Output Operator [RS_71] PartitionCols:_col0, _col1, _col2, _col3 Group By Operator [GBY_70] (rows=1341632296 width=108) @@ -232,53 +228,49 @@ Stage-0 Output:["_col0","_col1","_col2","_col3","_col4","_col5"] Merge Join Operator [MERGEJOIN_246] (rows=766650239 width=88) Conds:RS_40._col1, _col2=RS_41._col0, _col1(Left Outer),Output:["_col3","_col4","_col8","_col9","_col10","_col12","_col15","_col16"] - <-Map 18 [SIMPLE_EDGE] + <-Map 30 [SIMPLE_EDGE] SHUFFLE [RS_41] PartitionCols:_col0, _col1 Select Operator [SEL_33] (rows=57591150 width=77) Output:["_col0","_col1","_col2","_col3"] Filter Operator [FIL_224] (rows=57591150 width=77) predicate:sr_item_sk is not null - TableScan [TS_31] (rows=57591150 width=77) - default@store_returns,store_returns,Tbl:COMPLETE,Col:NONE,Output:["sr_item_sk","sr_ticket_number","sr_return_quantity","sr_return_amt"] - <-Reducer 14 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_31] + <-Reducer 16 [SIMPLE_EDGE] SHUFFLE [RS_40] PartitionCols:_col1, _col2 Merge Join Operator [MERGEJOIN_245] (rows=696954748 width=88) Conds:RS_37._col1=RS_38._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col8","_col9","_col10","_col12"] - <-Map 17 [SIMPLE_EDGE] + <-Map 27 [SIMPLE_EDGE] SHUFFLE [RS_38] PartitionCols:_col0 Select Operator [SEL_30] (rows=231000 width=1436) Output:["_col0","_col1","_col2","_col3","_col5"] Filter Operator [FIL_223] (rows=231000 width=1436) predicate:((i_category = 'Sports') and i_item_sk is not null and i_brand_id is not null and i_class_id is not null and i_category_id is not null and i_manufact_id is not null) - TableScan [TS_28] (rows=462000 width=1436) - default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_brand_id","i_class_id","i_category_id","i_category","i_manufact_id"] - <-Reducer 13 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_6] + <-Reducer 15 [SIMPLE_EDGE] SHUFFLE [RS_37] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_244] (rows=633595212 width=88) Conds:RS_34._col0=RS_35._col0(Inner),Output:["_col1","_col2","_col3","_col4"] - <-Map 12 [SIMPLE_EDGE] - SHUFFLE [RS_34] - PartitionCols:_col0 - Select Operator [SEL_24] (rows=575995635 width=88) - Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_221] (rows=575995635 width=88) - predicate:(ss_item_sk is not null and ss_sold_date_sk is not null) - TableScan [TS_22] (rows=575995635 width=88) - default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_item_sk","ss_ticket_number","ss_quantity","ss_ext_sales_price"] - <-Map 16 [SIMPLE_EDGE] + <-Map 14 [SIMPLE_EDGE] SHUFFLE [RS_35] PartitionCols:_col0 Select Operator [SEL_27] (rows=36524 width=1119) Output:["_col0"] Filter Operator [FIL_222] (rows=36524 width=1119) predicate:((d_year = 2001) and d_date_sk is not null) - TableScan [TS_25] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] - <-Reducer 22 [CONTAINS] + Please refer to the previous TableScan [TS_3] + <-Map 29 [SIMPLE_EDGE] + SHUFFLE [RS_34] + PartitionCols:_col0 + Select Operator [SEL_24] (rows=575995635 width=88) + Output:["_col0","_col1","_col2","_col3","_col4"] + Filter Operator [FIL_221] (rows=575995635 width=88) + predicate:(ss_item_sk is not null and ss_sold_date_sk is not null) + Please refer to the previous TableScan [TS_22] + <-Reducer 20 [CONTAINS] Reduce Output Operator [RS_71] PartitionCols:_col0, _col1, _col2, _col3 Group By Operator [GBY_70] (rows=1341632296 width=108) @@ -287,52 +279,48 @@ Stage-0 Output:["_col0","_col1","_col2","_col3","_col4","_col5"] Merge Join Operator [MERGEJOIN_249] (rows=191667562 width=135) Conds:RS_64._col1, _col2=RS_65._col0, _col1(Left Outer),Output:["_col3","_col4","_col8","_col9","_col10","_col12","_col15","_col16"] - <-Map 25 [SIMPLE_EDGE] + <-Map 32 [SIMPLE_EDGE] SHUFFLE [RS_65] PartitionCols:_col0, _col1 Select Operator [SEL_57] (rows=14398467 width=92) Output:["_col0","_col1","_col2","_col3"] Filter Operator [FIL_228] (rows=14398467 width=92) predicate:wr_item_sk is not null - TableScan [TS_55] (rows=14398467 width=92) - default@web_returns,web_returns,Tbl:COMPLETE,Col:NONE,Output:["wr_item_sk","wr_order_number","wr_return_quantity","wr_return_amt"] - <-Reducer 21 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_55] + <-Reducer 19 [SIMPLE_EDGE] SHUFFLE [RS_64] PartitionCols:_col1, _col2 Merge Join Operator [MERGEJOIN_248] (rows=174243235 width=135) Conds:RS_61._col1=RS_62._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col8","_col9","_col10","_col12"] - <-Map 24 [SIMPLE_EDGE] + <-Map 27 [SIMPLE_EDGE] SHUFFLE [RS_62] PartitionCols:_col0 Select Operator [SEL_54] (rows=231000 width=1436) Output:["_col0","_col1","_col2","_col3","_col5"] Filter Operator [FIL_227] (rows=231000 width=1436) predicate:((i_category = 'Sports') and i_item_sk is not null and i_brand_id is not null and i_class_id is not null and i_category_id is not null and i_manufact_id is not null) - TableScan [TS_52] (rows=462000 width=1436) - default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_brand_id","i_class_id","i_category_id","i_category","i_manufact_id"] - <-Reducer 20 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_6] + <-Reducer 18 [SIMPLE_EDGE] SHUFFLE [RS_61] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_247] (rows=158402938 width=135) Conds:RS_58._col0=RS_59._col0(Inner),Output:["_col1","_col2","_col3","_col4"] - <-Map 19 [SIMPLE_EDGE] - SHUFFLE [RS_58] - PartitionCols:_col0 - Select Operator [SEL_48] (rows=144002668 width=135) - Output:["_col0","_col1","_col2","_col3","_col4"] - Filter Operator [FIL_225] (rows=144002668 width=135) - predicate:(ws_item_sk is not null and ws_sold_date_sk is not null) - TableScan [TS_46] (rows=144002668 width=135) - default@web_sales,web_sales,Tbl:COMPLETE,Col:NONE,Output:["ws_sold_date_sk","ws_item_sk","ws_order_number","ws_quantity","ws_ext_sales_price"] - <-Map 23 [SIMPLE_EDGE] + <-Map 14 [SIMPLE_EDGE] SHUFFLE [RS_59] PartitionCols:_col0 Select Operator [SEL_51] (rows=36524 width=1119) Output:["_col0"] Filter Operator [FIL_226] (rows=36524 width=1119) predicate:((d_year = 2001) and d_date_sk is not null) - TableScan [TS_49] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] + Please refer to the previous TableScan [TS_3] + <-Map 31 [SIMPLE_EDGE] + SHUFFLE [RS_58] + PartitionCols:_col0 + Select Operator [SEL_48] (rows=144002668 width=135) + Output:["_col0","_col1","_col2","_col3","_col4"] + Filter Operator [FIL_225] (rows=144002668 width=135) + predicate:(ws_item_sk is not null and ws_sold_date_sk is not null) + Please refer to the previous TableScan [TS_46] <-Reducer 4 [CONTAINS] Reduce Output Operator [RS_71] PartitionCols:_col0, _col1, _col2, _col3 @@ -342,34 +330,40 @@ Stage-0 Output:["_col0","_col1","_col2","_col3","_col4","_col5"] Merge Join Operator [MERGEJOIN_243] (rows=383314495 width=135) Conds:RS_18._col1, _col2=RS_19._col0, _col1(Left Outer),Output:["_col3","_col4","_col8","_col9","_col10","_col12","_col15","_col16"] - <-Map 11 [SIMPLE_EDGE] + <-Map 28 [SIMPLE_EDGE] SHUFFLE [RS_19] PartitionCols:_col0, _col1 Select Operator [SEL_11] (rows=28798881 width=106) Output:["_col0","_col1","_col2","_col3"] Filter Operator [FIL_220] (rows=28798881 width=106) predicate:cr_item_sk is not null - TableScan [TS_9] (rows=28798881 width=106) - default@catalog_returns,catalog_returns,Tbl:COMPLETE,Col:NONE,Output:["cr_item_sk","cr_order_number","cr_return_quantity","cr_return_amount"] + Please refer to the previous TableScan [TS_9] <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_18] PartitionCols:_col1, _col2 Merge Join Operator [MERGEJOIN_242] (rows=348467716 width=135) Conds:RS_15._col1=RS_16._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col8","_col9","_col10","_col12"] - <-Map 10 [SIMPLE_EDGE] + <-Map 27 [SIMPLE_EDGE] SHUFFLE [RS_16] PartitionCols:_col0 Select Operator [SEL_8] (rows=231000 width=1436) Output:["_col0","_col1","_col2","_col3","_col5"] Filter Operator [FIL_219] (rows=231000 width=1436) predicate:((i_category = 'Sports') and i_item_sk is not null and i_brand_id is not null and i_class_id is not null and i_category_id is not null and i_manufact_id is not null) - TableScan [TS_6] (rows=462000 width=1436) - default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_brand_id","i_class_id","i_category_id","i_category","i_manufact_id"] + Please refer to the previous TableScan [TS_6] <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_15] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_241] (rows=316788826 width=135) Conds:RS_12._col0=RS_13._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + <-Map 14 [SIMPLE_EDGE] + SHUFFLE [RS_13] + PartitionCols:_col0 + Select Operator [SEL_5] (rows=36524 width=1119) + Output:["_col0"] + Filter Operator [FIL_218] (rows=36524 width=1119) + predicate:((d_year = 2001) and d_date_sk is not null) + Please refer to the previous TableScan [TS_3] <-Map 1 [SIMPLE_EDGE] SHUFFLE [RS_12] PartitionCols:_col0 @@ -377,15 +371,5 @@ Stage-0 Output:["_col0","_col1","_col2","_col3","_col4"] Filter Operator [FIL_217] (rows=287989836 width=135) predicate:(cs_item_sk is not null and cs_sold_date_sk is not null) - TableScan [TS_0] (rows=287989836 width=135) - default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:NONE,Output:["cs_sold_date_sk","cs_item_sk","cs_order_number","cs_quantity","cs_ext_sales_price"] - <-Map 9 [SIMPLE_EDGE] - SHUFFLE [RS_13] - PartitionCols:_col0 - Select Operator [SEL_5] (rows=36524 width=1119) - Output:["_col0"] - Filter Operator [FIL_218] (rows=36524 width=1119) - predicate:((d_year = 2001) and d_date_sk is not null) - TableScan [TS_3] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"] + Please refer to the previous TableScan [TS_0] diff --git ql/src/test/results/clientpositive/perf/query76.q.out ql/src/test/results/clientpositive/perf/query76.q.out index c7dbb37..19243db 100644 --- ql/src/test/results/clientpositive/perf/query76.q.out +++ ql/src/test/results/clientpositive/perf/query76.q.out @@ -5,14 +5,14 @@ POSTHOOK: type: QUERY Plan optimized by CBO. Vertex dependency in root stage -Reducer 10 <- Map 12 (SIMPLE_EDGE), Map 9 (SIMPLE_EDGE) -Reducer 11 <- Map 13 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE), Union 4 (CONTAINS) -Reducer 15 <- Map 14 (SIMPLE_EDGE), Map 17 (SIMPLE_EDGE) -Reducer 16 <- Map 18 (SIMPLE_EDGE), Reducer 15 (SIMPLE_EDGE), Union 4 (CONTAINS) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) -Reducer 3 <- Map 8 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE), Union 4 (CONTAINS) +Reducer 10 <- Map 16 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE), Union 4 (CONTAINS) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 11 (SIMPLE_EDGE) +Reducer 3 <- Map 12 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE), Union 4 (CONTAINS) Reducer 5 <- Union 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) +Reducer 7 <- Map 1 (SIMPLE_EDGE), Map 13 (SIMPLE_EDGE) +Reducer 8 <- Map 14 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE), Union 4 (CONTAINS) +Reducer 9 <- Map 1 (SIMPLE_EDGE), Map 15 (SIMPLE_EDGE) Stage-0 Fetch Operator @@ -29,48 +29,7 @@ Stage-0 Group By Operator [GBY_54] (rows=304916424 width=108) Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"],aggregations:["count(VALUE._col0)","sum(VALUE._col1)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4 <-Union 4 [SIMPLE_EDGE] - <-Reducer 11 [CONTAINS] - Reduce Output Operator [RS_53] - PartitionCols:_col0, _col1, _col2, _col3, _col4 - Group By Operator [GBY_52] (rows=609832848 width=108) - Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"],aggregations:["count()","sum(_col5)"],keys:_col0, _col1, _col2, _col3, _col4 - Select Operator [SEL_31] (rows=87121617 width=135) - Output:["_col0","_col1","_col2","_col3","_col4","_col5"] - Merge Join Operator [MERGEJOIN_87] (rows=87121617 width=135) - Conds:RS_28._col0=RS_29._col0(Inner),Output:["_col3","_col5","_col7","_col8"] - <-Map 13 [SIMPLE_EDGE] - SHUFFLE [RS_29] - PartitionCols:_col0 - Select Operator [SEL_24] (rows=73049 width=1119) - Output:["_col0","_col1","_col2"] - Filter Operator [FIL_80] (rows=73049 width=1119) - predicate:d_date_sk is not null - TableScan [TS_22] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_qoy"] - <-Reducer 10 [SIMPLE_EDGE] - SHUFFLE [RS_28] - PartitionCols:_col0 - Merge Join Operator [MERGEJOIN_86] (rows=79201469 width=135) - Conds:RS_25._col1=RS_26._col0(Inner),Output:["_col0","_col3","_col5"] - <-Map 12 [SIMPLE_EDGE] - SHUFFLE [RS_26] - PartitionCols:_col0 - Select Operator [SEL_21] (rows=462000 width=1436) - Output:["_col0","_col1"] - Filter Operator [FIL_79] (rows=462000 width=1436) - predicate:i_item_sk is not null - TableScan [TS_19] (rows=462000 width=1436) - default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_category"] - <-Map 9 [SIMPLE_EDGE] - SHUFFLE [RS_25] - PartitionCols:_col1 - Select Operator [SEL_18] (rows=72001334 width=135) - Output:["_col0","_col1","_col3"] - Filter Operator [FIL_78] (rows=72001334 width=135) - predicate:(ws_web_page_sk is null and ws_item_sk is not null and ws_sold_date_sk is not null) - TableScan [TS_16] (rows=144002668 width=135) - default@web_sales,web_sales,Tbl:COMPLETE,Col:NONE,Output:["ws_sold_date_sk","ws_item_sk","ws_web_page_sk","ws_ext_sales_price"] - <-Reducer 16 [CONTAINS] + <-Reducer 10 [CONTAINS] Reduce Output Operator [RS_53] PartitionCols:_col0, _col1, _col2, _col3, _col4 Group By Operator [GBY_52] (rows=609832848 width=108) @@ -79,7 +38,7 @@ Stage-0 Output:["_col0","_col1","_col2","_col3","_col4","_col5"] Merge Join Operator [MERGEJOIN_89] (rows=174233858 width=135) Conds:RS_46._col0=RS_47._col0(Inner),Output:["_col3","_col5","_col7","_col8"] - <-Map 18 [SIMPLE_EDGE] + <-Map 16 [SIMPLE_EDGE] SHUFFLE [RS_47] PartitionCols:_col0 Select Operator [SEL_42] (rows=73049 width=1119) @@ -88,12 +47,21 @@ Stage-0 predicate:d_date_sk is not null TableScan [TS_40] (rows=73049 width=1119) default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_qoy"] - <-Reducer 15 [SIMPLE_EDGE] + <-Reducer 9 [SIMPLE_EDGE] SHUFFLE [RS_46] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_88] (rows=158394413 width=135) Conds:RS_43._col2=RS_44._col0(Inner),Output:["_col0","_col3","_col5"] - <-Map 14 [SIMPLE_EDGE] + <-Map 1 [SIMPLE_EDGE] + SHUFFLE [RS_44] + PartitionCols:_col0 + Select Operator [SEL_39] (rows=462000 width=1436) + Output:["_col0","_col1"] + Filter Operator [FIL_82] (rows=462000 width=1436) + predicate:i_item_sk is not null + TableScan [TS_0] (rows=462000 width=1436) + default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_category"] + <-Map 15 [SIMPLE_EDGE] SHUFFLE [RS_43] PartitionCols:_col2 Select Operator [SEL_36] (rows=143994918 width=135) @@ -102,15 +70,6 @@ Stage-0 predicate:(cs_warehouse_sk is null and cs_item_sk is not null and cs_sold_date_sk is not null) TableScan [TS_34] (rows=287989836 width=135) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:NONE,Output:["cs_sold_date_sk","cs_warehouse_sk","cs_item_sk","cs_ext_sales_price"] - <-Map 17 [SIMPLE_EDGE] - SHUFFLE [RS_44] - PartitionCols:_col0 - Select Operator [SEL_39] (rows=462000 width=1436) - Output:["_col0","_col1"] - Filter Operator [FIL_82] (rows=462000 width=1436) - predicate:i_item_sk is not null - TableScan [TS_37] (rows=462000 width=1436) - default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_category"] <-Reducer 3 [CONTAINS] Reduce Output Operator [RS_53] PartitionCols:_col0, _col1, _col2, _col3, _col4 @@ -120,7 +79,7 @@ Stage-0 Output:["_col0","_col1","_col2","_col3","_col4","_col5"] Merge Join Operator [MERGEJOIN_85] (rows=348477373 width=88) Conds:RS_12._col2=RS_13._col0(Inner),Output:["_col1","_col5","_col7","_col8"] - <-Map 8 [SIMPLE_EDGE] + <-Map 12 [SIMPLE_EDGE] SHUFFLE [RS_13] PartitionCols:_col0 Select Operator [SEL_8] (rows=73049 width=1119) @@ -141,9 +100,8 @@ Stage-0 Output:["_col0","_col1"] Filter Operator [FIL_75] (rows=462000 width=1436) predicate:i_item_sk is not null - TableScan [TS_0] (rows=462000 width=1436) - default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_category"] - <-Map 7 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_0] + <-Map 11 [SIMPLE_EDGE] SHUFFLE [RS_10] PartitionCols:_col1 Select Operator [SEL_5] (rows=287997817 width=88) @@ -152,4 +110,44 @@ Stage-0 predicate:(ss_addr_sk is null and ss_item_sk is not null and ss_sold_date_sk is not null) TableScan [TS_3] (rows=575995635 width=88) default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_item_sk","ss_addr_sk","ss_ext_sales_price"] + <-Reducer 8 [CONTAINS] + Reduce Output Operator [RS_53] + PartitionCols:_col0, _col1, _col2, _col3, _col4 + Group By Operator [GBY_52] (rows=609832848 width=108) + Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"],aggregations:["count()","sum(_col5)"],keys:_col0, _col1, _col2, _col3, _col4 + Select Operator [SEL_31] (rows=87121617 width=135) + Output:["_col0","_col1","_col2","_col3","_col4","_col5"] + Merge Join Operator [MERGEJOIN_87] (rows=87121617 width=135) + Conds:RS_28._col0=RS_29._col0(Inner),Output:["_col3","_col5","_col7","_col8"] + <-Map 14 [SIMPLE_EDGE] + SHUFFLE [RS_29] + PartitionCols:_col0 + Select Operator [SEL_24] (rows=73049 width=1119) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_80] (rows=73049 width=1119) + predicate:d_date_sk is not null + TableScan [TS_22] (rows=73049 width=1119) + default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_qoy"] + <-Reducer 7 [SIMPLE_EDGE] + SHUFFLE [RS_28] + PartitionCols:_col0 + Merge Join Operator [MERGEJOIN_86] (rows=79201469 width=135) + Conds:RS_25._col1=RS_26._col0(Inner),Output:["_col0","_col3","_col5"] + <-Map 1 [SIMPLE_EDGE] + SHUFFLE [RS_26] + PartitionCols:_col0 + Select Operator [SEL_21] (rows=462000 width=1436) + Output:["_col0","_col1"] + Filter Operator [FIL_79] (rows=462000 width=1436) + predicate:i_item_sk is not null + Please refer to the previous TableScan [TS_0] + <-Map 13 [SIMPLE_EDGE] + SHUFFLE [RS_25] + PartitionCols:_col1 + Select Operator [SEL_18] (rows=72001334 width=135) + Output:["_col0","_col1","_col3"] + Filter Operator [FIL_78] (rows=72001334 width=135) + predicate:(ws_web_page_sk is null and ws_item_sk is not null and ws_sold_date_sk is not null) + TableScan [TS_16] (rows=144002668 width=135) + default@web_sales,web_sales,Tbl:COMPLETE,Col:NONE,Output:["ws_sold_date_sk","ws_item_sk","ws_web_page_sk","ws_ext_sales_price"] diff --git ql/src/test/results/clientpositive/perf/query80.q.out ql/src/test/results/clientpositive/perf/query80.q.out index be7ecda..3cf41f3 100644 --- ql/src/test/results/clientpositive/perf/query80.q.out +++ ql/src/test/results/clientpositive/perf/query80.q.out @@ -192,23 +192,23 @@ Plan optimized by CBO. Vertex dependency in root stage Reducer 10 <- Reducer 9 (SIMPLE_EDGE) -Reducer 17 <- Map 16 (SIMPLE_EDGE), Map 23 (SIMPLE_EDGE) -Reducer 18 <- Map 24 (SIMPLE_EDGE), Reducer 17 (SIMPLE_EDGE) -Reducer 19 <- Map 25 (SIMPLE_EDGE), Reducer 18 (SIMPLE_EDGE) +Reducer 13 <- Map 12 (SIMPLE_EDGE), Reducer 27 (SIMPLE_EDGE) +Reducer 14 <- Map 23 (SIMPLE_EDGE), Reducer 13 (SIMPLE_EDGE) +Reducer 15 <- Map 24 (SIMPLE_EDGE), Reducer 14 (SIMPLE_EDGE) +Reducer 16 <- Map 29 (SIMPLE_EDGE), Reducer 15 (SIMPLE_EDGE) +Reducer 17 <- Reducer 16 (SIMPLE_EDGE), Union 8 (CONTAINS) +Reducer 18 <- Map 12 (SIMPLE_EDGE), Reducer 31 (SIMPLE_EDGE) +Reducer 19 <- Map 23 (SIMPLE_EDGE), Reducer 18 (SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 11 (SIMPLE_EDGE) -Reducer 20 <- Map 26 (SIMPLE_EDGE), Reducer 19 (SIMPLE_EDGE) -Reducer 21 <- Map 27 (SIMPLE_EDGE), Reducer 20 (SIMPLE_EDGE) +Reducer 20 <- Map 24 (SIMPLE_EDGE), Reducer 19 (SIMPLE_EDGE) +Reducer 21 <- Map 33 (SIMPLE_EDGE), Reducer 20 (SIMPLE_EDGE) Reducer 22 <- Reducer 21 (SIMPLE_EDGE), Union 8 (CONTAINS) -Reducer 29 <- Map 28 (SIMPLE_EDGE), Map 35 (SIMPLE_EDGE) +Reducer 27 <- Map 26 (SIMPLE_EDGE), Map 28 (SIMPLE_EDGE) Reducer 3 <- Map 12 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 30 <- Map 36 (SIMPLE_EDGE), Reducer 29 (SIMPLE_EDGE) -Reducer 31 <- Map 37 (SIMPLE_EDGE), Reducer 30 (SIMPLE_EDGE) -Reducer 32 <- Map 38 (SIMPLE_EDGE), Reducer 31 (SIMPLE_EDGE) -Reducer 33 <- Map 39 (SIMPLE_EDGE), Reducer 32 (SIMPLE_EDGE) -Reducer 34 <- Reducer 33 (SIMPLE_EDGE), Union 8 (CONTAINS) -Reducer 4 <- Map 13 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Map 14 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) -Reducer 6 <- Map 15 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) +Reducer 31 <- Map 30 (SIMPLE_EDGE), Map 32 (SIMPLE_EDGE) +Reducer 4 <- Map 23 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 5 <- Map 24 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) +Reducer 6 <- Map 25 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE), Union 8 (CONTAINS) Reducer 9 <- Union 8 (SIMPLE_EDGE) @@ -229,7 +229,7 @@ Stage-0 Group By Operator [GBY_123] (rows=1217531358 width=108) 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 22 [CONTAINS] + <-Reducer 17 [CONTAINS] Reduce Output Operator [RS_122] PartitionCols:_col0, _col1, _col2 Group By Operator [GBY_121] (rows=2435062716 width=108) @@ -238,7 +238,7 @@ Stage-0 Output:["_col0","_col1","_col2","_col3","_col4"] Group By Operator [GBY_76] (rows=231905279 width=135) Output:["_col0","_col1","_col2","_col3"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)"],keys:KEY._col0 - <-Reducer 21 [SIMPLE_EDGE] + <-Reducer 16 [SIMPLE_EDGE] SHUFFLE [RS_75] PartitionCols:_col0 Group By Operator [GBY_74] (rows=463810558 width=135) @@ -247,7 +247,7 @@ Stage-0 Output:["_col0","_col1","_col2","_col3"] Merge Join Operator [MERGEJOIN_213] (rows=463810558 width=135) Conds:RS_69._col1=RS_70._col0(Inner),Output:["_col5","_col6","_col9","_col10","_col18"] - <-Map 27 [SIMPLE_EDGE] + <-Map 29 [SIMPLE_EDGE] SHUFFLE [RS_70] PartitionCols:_col0 Select Operator [SEL_56] (rows=46000 width=460) @@ -256,54 +256,54 @@ Stage-0 predicate:cp_catalog_page_sk is not null TableScan [TS_54] (rows=46000 width=460) default@catalog_page,catalog_page,Tbl:COMPLETE,Col:NONE,Output:["cp_catalog_page_sk","cp_catalog_page_id"] - <-Reducer 20 [SIMPLE_EDGE] + <-Reducer 15 [SIMPLE_EDGE] SHUFFLE [RS_69] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_212] (rows=421645953 width=135) Conds:RS_66._col3=RS_67._col0(Inner),Output:["_col1","_col5","_col6","_col9","_col10"] - <-Map 26 [SIMPLE_EDGE] + <-Map 24 [SIMPLE_EDGE] SHUFFLE [RS_67] PartitionCols:_col0 Select Operator [SEL_53] (rows=1150 width=1179) Output:["_col0"] Filter Operator [FIL_196] (rows=1150 width=1179) predicate:((p_channel_tv = 'N') and p_promo_sk is not null) - TableScan [TS_51] (rows=2300 width=1179) + TableScan [TS_12] (rows=2300 width=1179) default@promotion,promotion,Tbl:COMPLETE,Col:NONE,Output:["p_promo_sk","p_channel_tv"] - <-Reducer 19 [SIMPLE_EDGE] + <-Reducer 14 [SIMPLE_EDGE] SHUFFLE [RS_66] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_211] (rows=383314495 width=135) Conds:RS_63._col2=RS_64._col0(Inner),Output:["_col1","_col3","_col5","_col6","_col9","_col10"] - <-Map 25 [SIMPLE_EDGE] + <-Map 23 [SIMPLE_EDGE] SHUFFLE [RS_64] PartitionCols:_col0 Select Operator [SEL_50] (rows=154000 width=1436) Output:["_col0"] Filter Operator [FIL_195] (rows=154000 width=1436) predicate:((i_current_price > 50) and i_item_sk is not null) - TableScan [TS_48] (rows=462000 width=1436) + TableScan [TS_9] (rows=462000 width=1436) default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_current_price"] - <-Reducer 18 [SIMPLE_EDGE] + <-Reducer 13 [SIMPLE_EDGE] SHUFFLE [RS_63] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_210] (rows=348467716 width=135) Conds:RS_60._col0=RS_61._col0(Inner),Output:["_col1","_col2","_col3","_col5","_col6","_col9","_col10"] - <-Map 24 [SIMPLE_EDGE] + <-Map 12 [SIMPLE_EDGE] SHUFFLE [RS_61] PartitionCols:_col0 Select Operator [SEL_47] (rows=8116 width=1119) Output:["_col0"] Filter Operator [FIL_194] (rows=8116 width=1119) predicate:(CAST( d_date AS TIMESTAMP) BETWEEN 1998-08-04 00:00:00.0 AND 1998-09-03 00:00:00.0 and d_date_sk is not null) - TableScan [TS_45] (rows=73049 width=1119) + TableScan [TS_6] (rows=73049 width=1119) default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_date"] - <-Reducer 17 [SIMPLE_EDGE] + <-Reducer 27 [SIMPLE_EDGE] SHUFFLE [RS_60] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_209] (rows=316788826 width=135) Conds:RS_57._col2, _col4=RS_58._col0, _col1(Left Outer),Output:["_col0","_col1","_col2","_col3","_col5","_col6","_col9","_col10"] - <-Map 16 [SIMPLE_EDGE] + <-Map 26 [SIMPLE_EDGE] SHUFFLE [RS_57] PartitionCols:_col2, _col4 Select Operator [SEL_41] (rows=287989836 width=135) @@ -312,7 +312,7 @@ Stage-0 predicate:(cs_sold_date_sk is not null and cs_catalog_page_sk is not null and cs_item_sk is not null and cs_promo_sk is not null) TableScan [TS_39] (rows=287989836 width=135) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:NONE,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"] - <-Map 23 [SIMPLE_EDGE] + <-Map 28 [SIMPLE_EDGE] SHUFFLE [RS_58] PartitionCols:_col0, _col1 Select Operator [SEL_44] (rows=28798881 width=106) @@ -321,7 +321,7 @@ Stage-0 predicate:cr_item_sk is not null TableScan [TS_42] (rows=28798881 width=106) default@catalog_returns,catalog_returns,Tbl:COMPLETE,Col:NONE,Output:["cr_item_sk","cr_order_number","cr_return_amount","cr_net_loss"] - <-Reducer 34 [CONTAINS] + <-Reducer 22 [CONTAINS] Reduce Output Operator [RS_122] PartitionCols:_col0, _col1, _col2 Group By Operator [GBY_121] (rows=2435062716 width=108) @@ -330,7 +330,7 @@ Stage-0 Output:["_col0","_col1","_col2","_col3","_col4"] Group By Operator [GBY_117] (rows=115958879 width=135) Output:["_col0","_col1","_col2","_col3"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)"],keys:KEY._col0 - <-Reducer 33 [SIMPLE_EDGE] + <-Reducer 21 [SIMPLE_EDGE] SHUFFLE [RS_116] PartitionCols:_col0 Group By Operator [GBY_115] (rows=231917759 width=135) @@ -339,7 +339,7 @@ Stage-0 Output:["_col0","_col1","_col2","_col3"] Merge Join Operator [MERGEJOIN_218] (rows=231917759 width=135) Conds:RS_110._col2=RS_111._col0(Inner),Output:["_col5","_col6","_col9","_col10","_col18"] - <-Map 39 [SIMPLE_EDGE] + <-Map 33 [SIMPLE_EDGE] SHUFFLE [RS_111] PartitionCols:_col0 Select Operator [SEL_97] (rows=84 width=1850) @@ -348,54 +348,51 @@ Stage-0 predicate:web_site_sk is not null TableScan [TS_95] (rows=84 width=1850) default@web_site,web_site,Tbl:COMPLETE,Col:NONE,Output:["web_site_sk","web_site_id"] - <-Reducer 32 [SIMPLE_EDGE] + <-Reducer 20 [SIMPLE_EDGE] SHUFFLE [RS_110] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_217] (rows=210834322 width=135) Conds:RS_107._col3=RS_108._col0(Inner),Output:["_col2","_col5","_col6","_col9","_col10"] - <-Map 38 [SIMPLE_EDGE] + <-Map 24 [SIMPLE_EDGE] SHUFFLE [RS_108] PartitionCols:_col0 Select Operator [SEL_94] (rows=1150 width=1179) Output:["_col0"] Filter Operator [FIL_202] (rows=1150 width=1179) predicate:((p_channel_tv = 'N') and p_promo_sk is not null) - TableScan [TS_92] (rows=2300 width=1179) - default@promotion,promotion,Tbl:COMPLETE,Col:NONE,Output:["p_promo_sk","p_channel_tv"] - <-Reducer 31 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_12] + <-Reducer 19 [SIMPLE_EDGE] SHUFFLE [RS_107] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_216] (rows=191667562 width=135) Conds:RS_104._col1=RS_105._col0(Inner),Output:["_col2","_col3","_col5","_col6","_col9","_col10"] - <-Map 37 [SIMPLE_EDGE] + <-Map 23 [SIMPLE_EDGE] SHUFFLE [RS_105] PartitionCols:_col0 Select Operator [SEL_91] (rows=154000 width=1436) Output:["_col0"] Filter Operator [FIL_201] (rows=154000 width=1436) predicate:((i_current_price > 50) and i_item_sk is not null) - TableScan [TS_89] (rows=462000 width=1436) - default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_current_price"] - <-Reducer 30 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_9] + <-Reducer 18 [SIMPLE_EDGE] SHUFFLE [RS_104] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_215] (rows=174243235 width=135) Conds:RS_101._col0=RS_102._col0(Inner),Output:["_col1","_col2","_col3","_col5","_col6","_col9","_col10"] - <-Map 36 [SIMPLE_EDGE] + <-Map 12 [SIMPLE_EDGE] SHUFFLE [RS_102] PartitionCols:_col0 Select Operator [SEL_88] (rows=8116 width=1119) Output:["_col0"] Filter Operator [FIL_200] (rows=8116 width=1119) predicate:(CAST( d_date AS TIMESTAMP) BETWEEN 1998-08-04 00:00:00.0 AND 1998-09-03 00:00:00.0 and d_date_sk is not null) - TableScan [TS_86] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_date"] - <-Reducer 29 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_6] + <-Reducer 31 [SIMPLE_EDGE] SHUFFLE [RS_101] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_214] (rows=158402938 width=135) Conds:RS_98._col1, _col4=RS_99._col0, _col1(Left Outer),Output:["_col0","_col1","_col2","_col3","_col5","_col6","_col9","_col10"] - <-Map 28 [SIMPLE_EDGE] + <-Map 30 [SIMPLE_EDGE] SHUFFLE [RS_98] PartitionCols:_col1, _col4 Select Operator [SEL_82] (rows=144002668 width=135) @@ -404,7 +401,7 @@ Stage-0 predicate:(ws_sold_date_sk is not null and ws_web_site_sk is not null and ws_item_sk is not null and ws_promo_sk is not null) TableScan [TS_80] (rows=144002668 width=135) default@web_sales,web_sales,Tbl:COMPLETE,Col:NONE,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"] - <-Map 35 [SIMPLE_EDGE] + <-Map 32 [SIMPLE_EDGE] SHUFFLE [RS_99] PartitionCols:_col0, _col1 Select Operator [SEL_85] (rows=14398467 width=92) @@ -431,7 +428,7 @@ Stage-0 Output:["_col0","_col1","_col2","_col3"] Merge Join Operator [MERGEJOIN_208] (rows=927646829 width=88) Conds:RS_30._col2=RS_31._col0(Inner),Output:["_col5","_col6","_col9","_col10","_col18"] - <-Map 15 [SIMPLE_EDGE] + <-Map 25 [SIMPLE_EDGE] SHUFFLE [RS_31] PartitionCols:_col0 Select Operator [SEL_17] (rows=1704 width=1910) @@ -445,29 +442,27 @@ Stage-0 PartitionCols:_col2 Merge Join Operator [MERGEJOIN_207] (rows=843315281 width=88) Conds:RS_27._col3=RS_28._col0(Inner),Output:["_col2","_col5","_col6","_col9","_col10"] - <-Map 14 [SIMPLE_EDGE] + <-Map 24 [SIMPLE_EDGE] SHUFFLE [RS_28] PartitionCols:_col0 Select Operator [SEL_14] (rows=1150 width=1179) Output:["_col0"] Filter Operator [FIL_190] (rows=1150 width=1179) predicate:((p_channel_tv = 'N') and p_promo_sk is not null) - TableScan [TS_12] (rows=2300 width=1179) - default@promotion,promotion,Tbl:COMPLETE,Col:NONE,Output:["p_promo_sk","p_channel_tv"] + Please refer to the previous TableScan [TS_12] <-Reducer 4 [SIMPLE_EDGE] SHUFFLE [RS_27] PartitionCols:_col3 Merge Join Operator [MERGEJOIN_206] (rows=766650239 width=88) Conds:RS_24._col1=RS_25._col0(Inner),Output:["_col2","_col3","_col5","_col6","_col9","_col10"] - <-Map 13 [SIMPLE_EDGE] + <-Map 23 [SIMPLE_EDGE] SHUFFLE [RS_25] PartitionCols:_col0 Select Operator [SEL_11] (rows=154000 width=1436) Output:["_col0"] Filter Operator [FIL_189] (rows=154000 width=1436) predicate:((i_current_price > 50) and i_item_sk is not null) - TableScan [TS_9] (rows=462000 width=1436) - default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_current_price"] + Please refer to the previous TableScan [TS_9] <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_24] PartitionCols:_col1 @@ -480,8 +475,7 @@ Stage-0 Output:["_col0"] Filter Operator [FIL_188] (rows=8116 width=1119) predicate:(CAST( d_date AS TIMESTAMP) BETWEEN 1998-08-04 00:00:00.0 AND 1998-09-03 00:00:00.0 and d_date_sk is not null) - TableScan [TS_6] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_date"] + Please refer to the previous TableScan [TS_6] <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_21] PartitionCols:_col0 diff --git ql/src/test/results/clientpositive/perf/query83.q.out ql/src/test/results/clientpositive/perf/query83.q.out index 41e8a65..f96306b 100644 --- ql/src/test/results/clientpositive/perf/query83.q.out +++ ql/src/test/results/clientpositive/perf/query83.q.out @@ -131,29 +131,29 @@ POSTHOOK: type: QUERY Plan optimized by CBO. Vertex dependency in root stage -Reducer 11 <- Map 10 (SIMPLE_EDGE), Reducer 14 (SIMPLE_EDGE) -Reducer 12 <- Reducer 11 (SIMPLE_EDGE) -Reducer 14 <- Map 13 (SIMPLE_EDGE) -Reducer 16 <- Map 15 (SIMPLE_EDGE), Map 19 (SIMPLE_EDGE) -Reducer 17 <- Reducer 16 (SIMPLE_EDGE), Reducer 21 (SIMPLE_EDGE) -Reducer 18 <- Reducer 17 (SIMPLE_EDGE) +Reducer 10 <- Reducer 9 (SIMPLE_EDGE) +Reducer 11 <- Map 29 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) +Reducer 12 <- Reducer 11 (SIMPLE_EDGE), Reducer 17 (SIMPLE_EDGE) +Reducer 13 <- Reducer 12 (SIMPLE_EDGE) +Reducer 15 <- Map 14 (SIMPLE_EDGE), Reducer 20 (SIMPLE_EDGE) +Reducer 16 <- Map 14 (SIMPLE_EDGE), Reducer 23 (SIMPLE_EDGE) +Reducer 17 <- Map 14 (SIMPLE_EDGE), Reducer 26 (SIMPLE_EDGE) +Reducer 19 <- Map 18 (SIMPLE_EDGE), Reducer 21 (SIMPLE_EDGE) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) -Reducer 21 <- Map 20 (SIMPLE_EDGE), Reducer 24 (SIMPLE_EDGE) -Reducer 23 <- Map 22 (SIMPLE_EDGE), Reducer 26 (SIMPLE_EDGE) -Reducer 24 <- Reducer 23 (SIMPLE_EDGE) -Reducer 26 <- Map 25 (SIMPLE_EDGE) -Reducer 28 <- Map 27 (SIMPLE_EDGE), Map 31 (SIMPLE_EDGE) -Reducer 29 <- Reducer 28 (SIMPLE_EDGE), Reducer 33 (SIMPLE_EDGE) -Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) -Reducer 30 <- Reducer 29 (SIMPLE_EDGE) -Reducer 33 <- Map 32 (SIMPLE_EDGE), Reducer 36 (SIMPLE_EDGE) -Reducer 35 <- Map 34 (SIMPLE_EDGE), Reducer 38 (SIMPLE_EDGE) -Reducer 36 <- Reducer 35 (SIMPLE_EDGE) -Reducer 38 <- Map 37 (SIMPLE_EDGE) +Reducer 20 <- Reducer 19 (SIMPLE_EDGE) +Reducer 21 <- Map 18 (SIMPLE_EDGE) +Reducer 22 <- Map 18 (SIMPLE_EDGE), Reducer 24 (SIMPLE_EDGE) +Reducer 23 <- Reducer 22 (SIMPLE_EDGE) +Reducer 24 <- Map 18 (SIMPLE_EDGE) +Reducer 25 <- Map 18 (SIMPLE_EDGE), Reducer 27 (SIMPLE_EDGE) +Reducer 26 <- Reducer 25 (SIMPLE_EDGE) +Reducer 27 <- Map 18 (SIMPLE_EDGE) +Reducer 3 <- Reducer 15 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Reducer 18 (SIMPLE_EDGE), Reducer 30 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) +Reducer 5 <- Reducer 10 (SIMPLE_EDGE), Reducer 13 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Reducer 5 (SIMPLE_EDGE) -Reducer 9 <- Map 8 (SIMPLE_EDGE), Reducer 12 (SIMPLE_EDGE) +Reducer 8 <- Map 28 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) +Reducer 9 <- Reducer 16 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) Stage-0 Fetch Operator @@ -171,12 +171,12 @@ Stage-0 Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] Merge Join Operator [MERGEJOIN_228] (rows=76653825 width=77) Conds:RS_126._col0=RS_127._col0(Inner),RS_126._col0=RS_128._col0(Inner),Output:["_col0","_col1","_col3","_col5"] - <-Reducer 18 [SIMPLE_EDGE] + <-Reducer 10 [SIMPLE_EDGE] SHUFFLE [RS_127] PartitionCols:_col0 Group By Operator [GBY_82] (rows=34842647 width=77) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Reducer 17 [SIMPLE_EDGE] + <-Reducer 9 [SIMPLE_EDGE] SHUFFLE [RS_81] PartitionCols:_col0 Group By Operator [GBY_80] (rows=69685294 width=77) @@ -184,69 +184,46 @@ Stage-0 Merge Join Operator [MERGEJOIN_226] (rows=69685294 width=77) Conds:RS_76._col0=RS_77._col0(Inner),Output:["_col2","_col4"] <-Reducer 16 [SIMPLE_EDGE] - SHUFFLE [RS_76] - PartitionCols:_col0 - Merge Join Operator [MERGEJOIN_219] (rows=63350266 width=77) - Conds:RS_73._col1=RS_74._col0(Inner),Output:["_col0","_col2","_col4"] - <-Map 15 [SIMPLE_EDGE] - SHUFFLE [RS_73] - PartitionCols:_col1 - Select Operator [SEL_44] (rows=57591150 width=77) - Output:["_col0","_col1","_col2"] - Filter Operator [FIL_206] (rows=57591150 width=77) - predicate:(sr_item_sk is not null and sr_returned_date_sk is not null) - TableScan [TS_42] (rows=57591150 width=77) - default@store_returns,store_returns,Tbl:COMPLETE,Col:NONE,Output:["sr_returned_date_sk","sr_item_sk","sr_return_quantity"] - <-Map 19 [SIMPLE_EDGE] - SHUFFLE [RS_74] - PartitionCols:_col0 - Select Operator [SEL_47] (rows=462000 width=1436) - Output:["_col0","_col1"] - Filter Operator [FIL_207] (rows=462000 width=1436) - predicate:(i_item_sk is not null and i_item_id is not null) - TableScan [TS_45] (rows=462000 width=1436) - default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_item_id"] - <-Reducer 21 [SIMPLE_EDGE] SHUFFLE [RS_77] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_221] (rows=80353 width=1119) Conds:RS_69._col1=RS_70._col0(Inner),Output:["_col0"] - <-Map 20 [SIMPLE_EDGE] + <-Map 14 [SIMPLE_EDGE] SHUFFLE [RS_69] PartitionCols:_col1 Select Operator [SEL_50] (rows=73049 width=1119) Output:["_col0","_col1"] Filter Operator [FIL_208] (rows=73049 width=1119) predicate:(d_date is not null and d_date_sk is not null) - TableScan [TS_48] (rows=73049 width=1119) + TableScan [TS_6] (rows=73049 width=1119) default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_date"] - <-Reducer 24 [SIMPLE_EDGE] + <-Reducer 23 [SIMPLE_EDGE] SHUFFLE [RS_70] PartitionCols:_col0 Group By Operator [GBY_67] (rows=40176 width=1119) Output:["_col0"],keys:KEY._col0 - <-Reducer 23 [SIMPLE_EDGE] + <-Reducer 22 [SIMPLE_EDGE] SHUFFLE [RS_66] PartitionCols:_col0 Group By Operator [GBY_65] (rows=80353 width=1119) Output:["_col0"],keys:_col0 Merge Join Operator [MERGEJOIN_220] (rows=80353 width=1119) Conds:RS_61._col1=RS_62._col0(Inner),Output:["_col0"] - <-Map 22 [SIMPLE_EDGE] + <-Map 18 [SIMPLE_EDGE] SHUFFLE [RS_61] PartitionCols:_col1 Select Operator [SEL_53] (rows=73049 width=1119) Output:["_col0","_col1"] Filter Operator [FIL_209] (rows=73049 width=1119) predicate:(d_week_seq is not null and d_date is not null) - TableScan [TS_51] (rows=73049 width=1119) + TableScan [TS_9] (rows=73049 width=1119) default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date","d_week_seq"] - <-Reducer 26 [SIMPLE_EDGE] + <-Reducer 24 [SIMPLE_EDGE] SHUFFLE [RS_62] PartitionCols:_col0 Group By Operator [GBY_59] (rows=18262 width=1119) Output:["_col0"],keys:KEY._col0 - <-Map 25 [SIMPLE_EDGE] + <-Map 18 [SIMPLE_EDGE] SHUFFLE [RS_58] PartitionCols:_col0 Group By Operator [GBY_57] (rows=36525 width=1119) @@ -255,26 +232,56 @@ Stage-0 Output:["d_week_seq"] Filter Operator [FIL_210] (rows=36525 width=1119) predicate:((d_date) IN ('1998-01-02', '1998-10-15', '1998-11-10') and d_week_seq is not null) - TableScan [TS_54] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date","d_week_seq"] - <-Reducer 30 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_9] + <-Reducer 8 [SIMPLE_EDGE] + SHUFFLE [RS_76] + PartitionCols:_col0 + Merge Join Operator [MERGEJOIN_219] (rows=63350266 width=77) + Conds:RS_73._col1=RS_74._col0(Inner),Output:["_col0","_col2","_col4"] + <-Map 7 [SIMPLE_EDGE] + SHUFFLE [RS_74] + PartitionCols:_col0 + Select Operator [SEL_47] (rows=462000 width=1436) + Output:["_col0","_col1"] + Filter Operator [FIL_207] (rows=462000 width=1436) + predicate:(i_item_sk is not null and i_item_id is not null) + TableScan [TS_3] (rows=462000 width=1436) + default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_item_id"] + <-Map 28 [SIMPLE_EDGE] + SHUFFLE [RS_73] + PartitionCols:_col1 + Select Operator [SEL_44] (rows=57591150 width=77) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_206] (rows=57591150 width=77) + predicate:(sr_item_sk is not null and sr_returned_date_sk is not null) + TableScan [TS_42] (rows=57591150 width=77) + default@store_returns,store_returns,Tbl:COMPLETE,Col:NONE,Output:["sr_returned_date_sk","sr_item_sk","sr_return_quantity"] + <-Reducer 13 [SIMPLE_EDGE] SHUFFLE [RS_128] PartitionCols:_col0 Group By Operator [GBY_124] (rows=8711072 width=92) Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 - <-Reducer 29 [SIMPLE_EDGE] + <-Reducer 12 [SIMPLE_EDGE] SHUFFLE [RS_123] PartitionCols:_col0 Group By Operator [GBY_122] (rows=17422145 width=92) Output:["_col0","_col1"],aggregations:["sum(_col2)"],keys:_col4 Merge Join Operator [MERGEJOIN_227] (rows=17422145 width=92) Conds:RS_118._col0=RS_119._col0(Inner),Output:["_col2","_col4"] - <-Reducer 28 [SIMPLE_EDGE] + <-Reducer 11 [SIMPLE_EDGE] SHUFFLE [RS_118] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_222] (rows=15838314 width=92) Conds:RS_115._col1=RS_116._col0(Inner),Output:["_col0","_col2","_col4"] - <-Map 27 [SIMPLE_EDGE] + <-Map 7 [SIMPLE_EDGE] + SHUFFLE [RS_116] + PartitionCols:_col0 + Select Operator [SEL_89] (rows=462000 width=1436) + Output:["_col0","_col1"] + Filter Operator [FIL_212] (rows=462000 width=1436) + predicate:(i_item_sk is not null and i_item_id is not null) + Please refer to the previous TableScan [TS_3] + <-Map 29 [SIMPLE_EDGE] SHUFFLE [RS_115] PartitionCols:_col1 Select Operator [SEL_86] (rows=14398467 width=92) @@ -283,56 +290,45 @@ Stage-0 predicate:(wr_item_sk is not null and wr_returned_date_sk is not null) TableScan [TS_84] (rows=14398467 width=92) default@web_returns,web_returns,Tbl:COMPLETE,Col:NONE,Output:["wr_returned_date_sk","wr_item_sk","wr_return_quantity"] - <-Map 31 [SIMPLE_EDGE] - SHUFFLE [RS_116] - PartitionCols:_col0 - Select Operator [SEL_89] (rows=462000 width=1436) - Output:["_col0","_col1"] - Filter Operator [FIL_212] (rows=462000 width=1436) - predicate:(i_item_sk is not null and i_item_id is not null) - TableScan [TS_87] (rows=462000 width=1436) - default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_item_id"] - <-Reducer 33 [SIMPLE_EDGE] + <-Reducer 17 [SIMPLE_EDGE] SHUFFLE [RS_119] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_224] (rows=80353 width=1119) Conds:RS_111._col1=RS_112._col0(Inner),Output:["_col0"] - <-Map 32 [SIMPLE_EDGE] + <-Map 14 [SIMPLE_EDGE] SHUFFLE [RS_111] PartitionCols:_col1 Select Operator [SEL_92] (rows=73049 width=1119) Output:["_col0","_col1"] Filter Operator [FIL_213] (rows=73049 width=1119) predicate:(d_date is not null and d_date_sk is not null) - TableScan [TS_90] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_date"] - <-Reducer 36 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_6] + <-Reducer 26 [SIMPLE_EDGE] SHUFFLE [RS_112] PartitionCols:_col0 Group By Operator [GBY_109] (rows=40176 width=1119) Output:["_col0"],keys:KEY._col0 - <-Reducer 35 [SIMPLE_EDGE] + <-Reducer 25 [SIMPLE_EDGE] SHUFFLE [RS_108] PartitionCols:_col0 Group By Operator [GBY_107] (rows=80353 width=1119) Output:["_col0"],keys:_col0 Merge Join Operator [MERGEJOIN_223] (rows=80353 width=1119) Conds:RS_103._col1=RS_104._col0(Inner),Output:["_col0"] - <-Map 34 [SIMPLE_EDGE] + <-Map 18 [SIMPLE_EDGE] SHUFFLE [RS_103] PartitionCols:_col1 Select Operator [SEL_95] (rows=73049 width=1119) Output:["_col0","_col1"] Filter Operator [FIL_214] (rows=73049 width=1119) predicate:(d_week_seq is not null and d_date is not null) - TableScan [TS_93] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date","d_week_seq"] - <-Reducer 38 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_9] + <-Reducer 27 [SIMPLE_EDGE] SHUFFLE [RS_104] PartitionCols:_col0 Group By Operator [GBY_101] (rows=18262 width=1119) Output:["_col0"],keys:KEY._col0 - <-Map 37 [SIMPLE_EDGE] + <-Map 18 [SIMPLE_EDGE] SHUFFLE [RS_100] PartitionCols:_col0 Group By Operator [GBY_99] (rows=36525 width=1119) @@ -341,8 +337,7 @@ Stage-0 Output:["d_week_seq"] Filter Operator [FIL_215] (rows=36525 width=1119) predicate:((d_date) IN ('1998-01-02', '1998-10-15', '1998-11-10') and d_week_seq is not null) - TableScan [TS_96] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date","d_week_seq"] + Please refer to the previous TableScan [TS_9] <-Reducer 4 [SIMPLE_EDGE] SHUFFLE [RS_126] PartitionCols:_col0 @@ -355,70 +350,45 @@ Stage-0 Output:["_col0","_col1"],aggregations:["sum(_col2)"],keys:_col4 Merge Join Operator [MERGEJOIN_225] (rows=34846646 width=106) Conds:RS_34._col0=RS_35._col0(Inner),Output:["_col2","_col4"] - <-Reducer 2 [SIMPLE_EDGE] - SHUFFLE [RS_34] - PartitionCols:_col0 - Merge Join Operator [MERGEJOIN_216] (rows=31678769 width=106) - Conds:RS_31._col1=RS_32._col0(Inner),Output:["_col0","_col2","_col4"] - <-Map 1 [SIMPLE_EDGE] - SHUFFLE [RS_31] - PartitionCols:_col1 - Select Operator [SEL_2] (rows=28798881 width=106) - Output:["_col0","_col1","_col2"] - Filter Operator [FIL_201] (rows=28798881 width=106) - predicate:(cr_item_sk is not null and cr_returned_date_sk is not null) - TableScan [TS_0] (rows=28798881 width=106) - default@catalog_returns,catalog_returns,Tbl:COMPLETE,Col:NONE,Output:["cr_returned_date_sk","cr_item_sk","cr_return_quantity"] - <-Map 7 [SIMPLE_EDGE] - SHUFFLE [RS_32] - PartitionCols:_col0 - Select Operator [SEL_5] (rows=462000 width=1436) - Output:["_col0","_col1"] - Filter Operator [FIL_202] (rows=462000 width=1436) - predicate:(i_item_sk is not null and i_item_id is not null) - TableScan [TS_3] (rows=462000 width=1436) - default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_item_id"] - <-Reducer 9 [SIMPLE_EDGE] + <-Reducer 15 [SIMPLE_EDGE] SHUFFLE [RS_35] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_218] (rows=80353 width=1119) Conds:RS_27._col1=RS_28._col0(Inner),Output:["_col0"] - <-Map 8 [SIMPLE_EDGE] + <-Map 14 [SIMPLE_EDGE] SHUFFLE [RS_27] PartitionCols:_col1 Select Operator [SEL_8] (rows=73049 width=1119) Output:["_col0","_col1"] Filter Operator [FIL_203] (rows=73049 width=1119) predicate:(d_date is not null and d_date_sk is not null) - TableScan [TS_6] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_date"] - <-Reducer 12 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_6] + <-Reducer 20 [SIMPLE_EDGE] SHUFFLE [RS_28] PartitionCols:_col0 Group By Operator [GBY_25] (rows=40176 width=1119) Output:["_col0"],keys:KEY._col0 - <-Reducer 11 [SIMPLE_EDGE] + <-Reducer 19 [SIMPLE_EDGE] SHUFFLE [RS_24] PartitionCols:_col0 Group By Operator [GBY_23] (rows=80353 width=1119) Output:["_col0"],keys:_col0 Merge Join Operator [MERGEJOIN_217] (rows=80353 width=1119) Conds:RS_19._col1=RS_20._col0(Inner),Output:["_col0"] - <-Map 10 [SIMPLE_EDGE] + <-Map 18 [SIMPLE_EDGE] SHUFFLE [RS_19] PartitionCols:_col1 Select Operator [SEL_11] (rows=73049 width=1119) Output:["_col0","_col1"] Filter Operator [FIL_204] (rows=73049 width=1119) predicate:(d_week_seq is not null and d_date is not null) - TableScan [TS_9] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date","d_week_seq"] - <-Reducer 14 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_9] + <-Reducer 21 [SIMPLE_EDGE] SHUFFLE [RS_20] PartitionCols:_col0 Group By Operator [GBY_17] (rows=18262 width=1119) Output:["_col0"],keys:KEY._col0 - <-Map 13 [SIMPLE_EDGE] + <-Map 18 [SIMPLE_EDGE] SHUFFLE [RS_16] PartitionCols:_col0 Group By Operator [GBY_15] (rows=36525 width=1119) @@ -427,6 +397,27 @@ Stage-0 Output:["d_week_seq"] Filter Operator [FIL_205] (rows=36525 width=1119) predicate:((d_date) IN ('1998-01-02', '1998-10-15', '1998-11-10') and d_week_seq is not null) - TableScan [TS_12] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date","d_week_seq"] + Please refer to the previous TableScan [TS_9] + <-Reducer 2 [SIMPLE_EDGE] + SHUFFLE [RS_34] + PartitionCols:_col0 + Merge Join Operator [MERGEJOIN_216] (rows=31678769 width=106) + Conds:RS_31._col1=RS_32._col0(Inner),Output:["_col0","_col2","_col4"] + <-Map 7 [SIMPLE_EDGE] + SHUFFLE [RS_32] + PartitionCols:_col0 + Select Operator [SEL_5] (rows=462000 width=1436) + Output:["_col0","_col1"] + Filter Operator [FIL_202] (rows=462000 width=1436) + predicate:(i_item_sk is not null and i_item_id is not null) + Please refer to the previous TableScan [TS_3] + <-Map 1 [SIMPLE_EDGE] + SHUFFLE [RS_31] + PartitionCols:_col1 + Select Operator [SEL_2] (rows=28798881 width=106) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_201] (rows=28798881 width=106) + predicate:(cr_item_sk is not null and cr_returned_date_sk is not null) + TableScan [TS_0] (rows=28798881 width=106) + default@catalog_returns,catalog_returns,Tbl:COMPLETE,Col:NONE,Output:["cr_returned_date_sk","cr_item_sk","cr_return_quantity"] diff --git ql/src/test/results/clientpositive/perf/query85.q.out ql/src/test/results/clientpositive/perf/query85.q.out index 168bcd2..ba8659e 100644 --- ql/src/test/results/clientpositive/perf/query85.q.out +++ ql/src/test/results/clientpositive/perf/query85.q.out @@ -12,7 +12,7 @@ Reducer 4 <- Map 13 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Map 14 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) Reducer 6 <- Map 15 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE) Reducer 7 <- Map 16 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE) -Reducer 8 <- Map 17 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) +Reducer 8 <- Map 16 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) Reducer 9 <- Reducer 8 (SIMPLE_EDGE) Stage-0 @@ -38,15 +38,15 @@ Stage-0 Output:["_col0","_col1","_col2","_col3"],aggregations:["avg(_col5)","avg(_col17)","avg(_col16)"],keys:_col19 Merge Join Operator [MERGEJOIN_105] (rows=2047980 width=385) Conds:RS_44._col13, _col24, _col25=RS_45._col0, _col1, _col2(Inner),Output:["_col5","_col16","_col17","_col19"] - <-Map 17 [SIMPLE_EDGE] + <-Map 16 [SIMPLE_EDGE] SHUFFLE [RS_45] PartitionCols:_col0, _col1, _col2 Select Operator [SEL_23] (rows=1861800 width=385) Output:["_col0","_col1","_col2"] Filter Operator [FIL_98] (rows=1861800 width=385) predicate:(((cd_education_status = '4 yr Degree') or (cd_education_status = 'Primary') or (cd_education_status = 'Advanced Degree')) and ((cd_marital_status = 'M') or (cd_marital_status = 'D') or (cd_marital_status = 'U')) and cd_demo_sk is not null and cd_marital_status is not null and cd_education_status is not null) - TableScan [TS_21] (rows=1861800 width=385) - default@customer_demographics,cd2,Tbl:COMPLETE,Col:NONE,Output:["cd_demo_sk","cd_marital_status","cd_education_status"] + TableScan [TS_18] (rows=1861800 width=385) + default@customer_demographics,cd1,Tbl:COMPLETE,Col:NONE,Output:["cd_demo_sk","cd_marital_status","cd_education_status"] <-Reducer 7 [SIMPLE_EDGE] SHUFFLE [RS_44] PartitionCols:_col13, _col24, _col25 @@ -61,8 +61,7 @@ Stage-0 Output:["_col0","_col1","_col2"] Filter Operator [FIL_97] (rows=1861800 width=385) predicate:(((cd_education_status = '4 yr Degree') or (cd_education_status = 'Primary') or (cd_education_status = 'Advanced Degree')) and ((cd_marital_status = 'M') or (cd_marital_status = 'D') or (cd_marital_status = 'U')) and cd_demo_sk is not null and cd_marital_status is not null and cd_education_status is not null) - TableScan [TS_18] (rows=1861800 width=385) - default@customer_demographics,cd1,Tbl:COMPLETE,Col:NONE,Output:["cd_demo_sk","cd_marital_status","cd_education_status"] + Please refer to the previous TableScan [TS_18] <-Reducer 6 [SIMPLE_EDGE] SHUFFLE [RS_40] PartitionCols:_col11 diff --git ql/src/test/results/clientpositive/perf/query87.q.out ql/src/test/results/clientpositive/perf/query87.q.out index c7dd1d9..58a33d9 100644 --- ql/src/test/results/clientpositive/perf/query87.q.out +++ ql/src/test/results/clientpositive/perf/query87.q.out @@ -43,14 +43,14 @@ POSTHOOK: type: QUERY Plan optimized by CBO. Vertex dependency in root stage -Reducer 13 <- Map 12 (SIMPLE_EDGE), Map 16 (SIMPLE_EDGE) -Reducer 14 <- Map 17 (SIMPLE_EDGE), Reducer 13 (SIMPLE_EDGE) -Reducer 15 <- Reducer 14 (SIMPLE_EDGE), Union 5 (CONTAINS) -Reducer 19 <- Map 18 (SIMPLE_EDGE), Map 22 (SIMPLE_EDGE) +Reducer 11 <- Map 10 (SIMPLE_EDGE), Map 18 (SIMPLE_EDGE) +Reducer 12 <- Map 17 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE) +Reducer 13 <- Reducer 12 (SIMPLE_EDGE), Union 5 (CONTAINS) +Reducer 14 <- Map 10 (SIMPLE_EDGE), Map 19 (SIMPLE_EDGE) +Reducer 15 <- Map 17 (SIMPLE_EDGE), Reducer 14 (SIMPLE_EDGE) +Reducer 16 <- Reducer 15 (SIMPLE_EDGE), Union 7 (CONTAINS) Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 10 (SIMPLE_EDGE) -Reducer 20 <- Map 23 (SIMPLE_EDGE), Reducer 19 (SIMPLE_EDGE) -Reducer 21 <- Reducer 20 (SIMPLE_EDGE), Union 7 (CONTAINS) -Reducer 3 <- Map 11 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 3 <- Map 17 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Union 5 (CONTAINS) Reducer 6 <- Union 5 (SIMPLE_EDGE), Union 7 (CONTAINS) Reducer 8 <- Union 7 (SIMPLE_EDGE) @@ -76,7 +76,7 @@ Stage-0 Group By Operator [GBY_96] (rows=27225312 width=129) Output:["_col0","_col1","_col2","_col3","_col4"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)"],keys:KEY._col0, KEY._col1, KEY._col2 <-Union 7 [SIMPLE_EDGE] - <-Reducer 21 [CONTAINS] + <-Reducer 16 [CONTAINS] Reduce Output Operator [RS_95] PartitionCols:_col0, _col1, _col2 Group By Operator [GBY_94] (rows=54450625 width=129) @@ -89,28 +89,37 @@ Stage-0 Output:["_col0","_col1","_col2","_col3"],aggregations:["count(1)"],keys:_col0, _col1, _col2 Group By Operator [GBY_83] (rows=87121617 width=135) Output:["_col0","_col1","_col2"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Reducer 20 [SIMPLE_EDGE] + <-Reducer 15 [SIMPLE_EDGE] SHUFFLE [RS_82] PartitionCols:_col0, _col1, _col2 Group By Operator [GBY_81] (rows=174243235 width=135) Output:["_col0","_col1","_col2"],keys:_col7, _col6, _col3 Merge Join Operator [MERGEJOIN_135] (rows=174243235 width=135) Conds:RS_77._col1=RS_78._col0(Inner),Output:["_col3","_col6","_col7"] - <-Map 23 [SIMPLE_EDGE] + <-Map 17 [SIMPLE_EDGE] SHUFFLE [RS_78] PartitionCols:_col0 Select Operator [SEL_73] (rows=80000000 width=860) Output:["_col0","_col1","_col2"] Filter Operator [FIL_128] (rows=80000000 width=860) predicate:c_customer_sk is not null - TableScan [TS_71] (rows=80000000 width=860) + TableScan [TS_6] (rows=80000000 width=860) default@customer,customer,Tbl:COMPLETE,Col:NONE,Output:["c_customer_sk","c_first_name","c_last_name"] - <-Reducer 19 [SIMPLE_EDGE] + <-Reducer 14 [SIMPLE_EDGE] SHUFFLE [RS_77] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_134] (rows=158402938 width=135) Conds:RS_74._col0=RS_75._col0(Inner),Output:["_col1","_col3"] - <-Map 18 [SIMPLE_EDGE] + <-Map 10 [SIMPLE_EDGE] + SHUFFLE [RS_75] + PartitionCols:_col0 + Select Operator [SEL_70] (rows=8116 width=1119) + Output:["_col0","_col1"] + Filter Operator [FIL_127] (rows=8116 width=1119) + predicate:(d_month_seq BETWEEN 1212 AND 1223 and d_date_sk is not null) + TableScan [TS_3] (rows=73049 width=1119) + default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_date","d_month_seq"] + <-Map 19 [SIMPLE_EDGE] SHUFFLE [RS_74] PartitionCols:_col0 Select Operator [SEL_67] (rows=144002668 width=135) @@ -119,15 +128,6 @@ Stage-0 predicate:(ws_sold_date_sk is not null and ws_bill_customer_sk is not null) TableScan [TS_65] (rows=144002668 width=135) default@web_sales,web_sales,Tbl:COMPLETE,Col:NONE,Output:["ws_sold_date_sk","ws_bill_customer_sk"] - <-Map 22 [SIMPLE_EDGE] - SHUFFLE [RS_75] - PartitionCols:_col0 - Select Operator [SEL_70] (rows=8116 width=1119) - Output:["_col0","_col1"] - Filter Operator [FIL_127] (rows=8116 width=1119) - predicate:(d_month_seq BETWEEN 1212 AND 1223 and d_date_sk is not null) - TableScan [TS_68] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_date","d_month_seq"] <-Reducer 6 [CONTAINS] Reduce Output Operator [RS_95] PartitionCols:_col0, _col1, _col2 @@ -146,7 +146,7 @@ Stage-0 Group By Operator [GBY_57] (rows=130677808 width=103) Output:["_col0","_col1","_col2","_col3","_col4"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)"],keys:KEY._col0, KEY._col1, KEY._col2 <-Union 5 [SIMPLE_EDGE] - <-Reducer 15 [CONTAINS] + <-Reducer 13 [CONTAINS] Reduce Output Operator [RS_56] PartitionCols:_col0, _col1, _col2 Group By Operator [GBY_55] (rows=261355616 width=103) @@ -159,7 +159,7 @@ Stage-0 Output:["_col0","_col1","_col2","_col3"],aggregations:["count(1)"],keys:_col0, _col1, _col2 Group By Operator [GBY_44] (rows=174233858 width=135) Output:["_col0","_col1","_col2"],keys:KEY._col0, KEY._col1, KEY._col2 - <-Reducer 14 [SIMPLE_EDGE] + <-Reducer 12 [SIMPLE_EDGE] SHUFFLE [RS_43] PartitionCols:_col0, _col1, _col2 Group By Operator [GBY_42] (rows=348467716 width=135) @@ -173,14 +173,21 @@ Stage-0 Output:["_col0","_col1","_col2"] Filter Operator [FIL_125] (rows=80000000 width=860) predicate:c_customer_sk is not null - TableScan [TS_32] (rows=80000000 width=860) - default@customer,customer,Tbl:COMPLETE,Col:NONE,Output:["c_customer_sk","c_first_name","c_last_name"] - <-Reducer 13 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_6] + <-Reducer 11 [SIMPLE_EDGE] SHUFFLE [RS_38] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_132] (rows=316788826 width=135) Conds:RS_35._col0=RS_36._col0(Inner),Output:["_col1","_col3"] - <-Map 12 [SIMPLE_EDGE] + <-Map 10 [SIMPLE_EDGE] + SHUFFLE [RS_36] + PartitionCols:_col0 + Select Operator [SEL_31] (rows=8116 width=1119) + Output:["_col0","_col1"] + Filter Operator [FIL_124] (rows=8116 width=1119) + predicate:(d_month_seq BETWEEN 1212 AND 1223 and d_date_sk is not null) + Please refer to the previous TableScan [TS_3] + <-Map 18 [SIMPLE_EDGE] SHUFFLE [RS_35] PartitionCols:_col0 Select Operator [SEL_28] (rows=287989836 width=135) @@ -189,15 +196,6 @@ Stage-0 predicate:(cs_sold_date_sk is not null and cs_bill_customer_sk is not null) TableScan [TS_26] (rows=287989836 width=135) default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:NONE,Output:["cs_sold_date_sk","cs_bill_customer_sk"] - <-Map 16 [SIMPLE_EDGE] - SHUFFLE [RS_36] - PartitionCols:_col0 - Select Operator [SEL_31] (rows=8116 width=1119) - Output:["_col0","_col1"] - Filter Operator [FIL_124] (rows=8116 width=1119) - predicate:(d_month_seq BETWEEN 1212 AND 1223 and d_date_sk is not null) - TableScan [TS_29] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_date","d_month_seq"] <-Reducer 4 [CONTAINS] Reduce Output Operator [RS_56] PartitionCols:_col0, _col1, _col2 @@ -218,20 +216,27 @@ Stage-0 Output:["_col0","_col1","_col2"],keys:_col7, _col6, _col3 Merge Join Operator [MERGEJOIN_131] (rows=696954748 width=88) Conds:RS_12._col1=RS_13._col0(Inner),Output:["_col3","_col6","_col7"] - <-Map 11 [SIMPLE_EDGE] + <-Map 17 [SIMPLE_EDGE] SHUFFLE [RS_13] PartitionCols:_col0 Select Operator [SEL_8] (rows=80000000 width=860) Output:["_col0","_col1","_col2"] Filter Operator [FIL_122] (rows=80000000 width=860) predicate:c_customer_sk is not null - TableScan [TS_6] (rows=80000000 width=860) - default@customer,customer,Tbl:COMPLETE,Col:NONE,Output:["c_customer_sk","c_first_name","c_last_name"] + Please refer to the previous TableScan [TS_6] <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_12] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_130] (rows=633595212 width=88) Conds:RS_9._col0=RS_10._col0(Inner),Output:["_col1","_col3"] + <-Map 10 [SIMPLE_EDGE] + SHUFFLE [RS_10] + PartitionCols:_col0 + Select Operator [SEL_5] (rows=8116 width=1119) + Output:["_col0","_col1"] + Filter Operator [FIL_121] (rows=8116 width=1119) + predicate:(d_month_seq BETWEEN 1212 AND 1223 and d_date_sk is not null) + Please refer to the previous TableScan [TS_3] <-Map 1 [SIMPLE_EDGE] SHUFFLE [RS_9] PartitionCols:_col0 @@ -241,13 +246,4 @@ Stage-0 predicate:(ss_sold_date_sk is not null and ss_customer_sk is not null) TableScan [TS_0] (rows=575995635 width=88) default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_customer_sk"] - <-Map 10 [SIMPLE_EDGE] - SHUFFLE [RS_10] - PartitionCols:_col0 - Select Operator [SEL_5] (rows=8116 width=1119) - Output:["_col0","_col1"] - Filter Operator [FIL_121] (rows=8116 width=1119) - predicate:(d_month_seq BETWEEN 1212 AND 1223 and d_date_sk is not null) - TableScan [TS_3] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_date","d_month_seq"] diff --git ql/src/test/results/clientpositive/perf/query88.q.out ql/src/test/results/clientpositive/perf/query88.q.out index fcb4042..f7af4ef 100644 --- ql/src/test/results/clientpositive/perf/query88.q.out +++ ql/src/test/results/clientpositive/perf/query88.q.out @@ -186,39 +186,39 @@ POSTHOOK: type: QUERY Plan optimized by CBO. Vertex dependency in root stage -Reducer 11 <- Map 10 (SIMPLE_EDGE), Map 15 (SIMPLE_EDGE) -Reducer 12 <- Map 16 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE) -Reducer 13 <- Map 17 (SIMPLE_EDGE), Reducer 12 (SIMPLE_EDGE) +Reducer 10 <- Reducer 9 (CUSTOM_SIMPLE_EDGE) +Reducer 11 <- Map 1 (SIMPLE_EDGE), Map 35 (SIMPLE_EDGE) +Reducer 12 <- Map 36 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE) +Reducer 13 <- Map 37 (SIMPLE_EDGE), Reducer 12 (SIMPLE_EDGE) Reducer 14 <- Reducer 13 (CUSTOM_SIMPLE_EDGE) -Reducer 19 <- Map 18 (SIMPLE_EDGE), Map 23 (SIMPLE_EDGE) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) -Reducer 20 <- Map 24 (SIMPLE_EDGE), Reducer 19 (SIMPLE_EDGE) -Reducer 21 <- Map 25 (SIMPLE_EDGE), Reducer 20 (SIMPLE_EDGE) +Reducer 15 <- Map 1 (SIMPLE_EDGE), Map 35 (SIMPLE_EDGE) +Reducer 16 <- Map 36 (SIMPLE_EDGE), Reducer 15 (SIMPLE_EDGE) +Reducer 17 <- Map 37 (SIMPLE_EDGE), Reducer 16 (SIMPLE_EDGE) +Reducer 18 <- Reducer 17 (CUSTOM_SIMPLE_EDGE) +Reducer 19 <- Map 1 (SIMPLE_EDGE), Map 35 (SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 35 (SIMPLE_EDGE) +Reducer 20 <- Map 36 (SIMPLE_EDGE), Reducer 19 (SIMPLE_EDGE) +Reducer 21 <- Map 37 (SIMPLE_EDGE), Reducer 20 (SIMPLE_EDGE) Reducer 22 <- Reducer 21 (CUSTOM_SIMPLE_EDGE) -Reducer 27 <- Map 26 (SIMPLE_EDGE), Map 31 (SIMPLE_EDGE) -Reducer 28 <- Map 32 (SIMPLE_EDGE), Reducer 27 (SIMPLE_EDGE) -Reducer 29 <- Map 33 (SIMPLE_EDGE), Reducer 28 (SIMPLE_EDGE) -Reducer 3 <- Map 8 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 23 <- Map 1 (SIMPLE_EDGE), Map 35 (SIMPLE_EDGE) +Reducer 24 <- Map 36 (SIMPLE_EDGE), Reducer 23 (SIMPLE_EDGE) +Reducer 25 <- Map 37 (SIMPLE_EDGE), Reducer 24 (SIMPLE_EDGE) +Reducer 26 <- Reducer 25 (CUSTOM_SIMPLE_EDGE) +Reducer 27 <- Map 1 (SIMPLE_EDGE), Map 35 (SIMPLE_EDGE) +Reducer 28 <- Map 36 (SIMPLE_EDGE), Reducer 27 (SIMPLE_EDGE) +Reducer 29 <- Map 37 (SIMPLE_EDGE), Reducer 28 (SIMPLE_EDGE) +Reducer 3 <- Map 36 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) Reducer 30 <- Reducer 29 (CUSTOM_SIMPLE_EDGE) -Reducer 35 <- Map 34 (SIMPLE_EDGE), Map 39 (SIMPLE_EDGE) -Reducer 36 <- Map 40 (SIMPLE_EDGE), Reducer 35 (SIMPLE_EDGE) -Reducer 37 <- Map 41 (SIMPLE_EDGE), Reducer 36 (SIMPLE_EDGE) -Reducer 38 <- Reducer 37 (CUSTOM_SIMPLE_EDGE) -Reducer 4 <- Map 9 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 43 <- Map 42 (SIMPLE_EDGE), Map 47 (SIMPLE_EDGE) -Reducer 44 <- Map 48 (SIMPLE_EDGE), Reducer 43 (SIMPLE_EDGE) -Reducer 45 <- Map 49 (SIMPLE_EDGE), Reducer 44 (SIMPLE_EDGE) -Reducer 46 <- Reducer 45 (CUSTOM_SIMPLE_EDGE) +Reducer 31 <- Map 1 (SIMPLE_EDGE), Map 35 (SIMPLE_EDGE) +Reducer 32 <- Map 36 (SIMPLE_EDGE), Reducer 31 (SIMPLE_EDGE) +Reducer 33 <- Map 37 (SIMPLE_EDGE), Reducer 32 (SIMPLE_EDGE) +Reducer 34 <- Reducer 33 (CUSTOM_SIMPLE_EDGE) +Reducer 4 <- Map 37 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (CUSTOM_SIMPLE_EDGE) -Reducer 51 <- Map 50 (SIMPLE_EDGE), Map 55 (SIMPLE_EDGE) -Reducer 52 <- Map 56 (SIMPLE_EDGE), Reducer 51 (SIMPLE_EDGE) -Reducer 53 <- Map 57 (SIMPLE_EDGE), Reducer 52 (SIMPLE_EDGE) -Reducer 54 <- Reducer 53 (CUSTOM_SIMPLE_EDGE) -Reducer 59 <- Map 58 (SIMPLE_EDGE), Map 63 (SIMPLE_EDGE) -Reducer 6 <- Reducer 14 (CUSTOM_SIMPLE_EDGE), Reducer 22 (CUSTOM_SIMPLE_EDGE), Reducer 30 (CUSTOM_SIMPLE_EDGE), Reducer 38 (CUSTOM_SIMPLE_EDGE), Reducer 46 (CUSTOM_SIMPLE_EDGE), Reducer 5 (CUSTOM_SIMPLE_EDGE), Reducer 54 (CUSTOM_SIMPLE_EDGE), Reducer 62 (CUSTOM_SIMPLE_EDGE) -Reducer 60 <- Map 64 (SIMPLE_EDGE), Reducer 59 (SIMPLE_EDGE) -Reducer 61 <- Map 65 (SIMPLE_EDGE), Reducer 60 (SIMPLE_EDGE) -Reducer 62 <- Reducer 61 (CUSTOM_SIMPLE_EDGE) +Reducer 6 <- Reducer 10 (CUSTOM_SIMPLE_EDGE), Reducer 14 (CUSTOM_SIMPLE_EDGE), Reducer 18 (CUSTOM_SIMPLE_EDGE), Reducer 22 (CUSTOM_SIMPLE_EDGE), Reducer 26 (CUSTOM_SIMPLE_EDGE), Reducer 30 (CUSTOM_SIMPLE_EDGE), Reducer 34 (CUSTOM_SIMPLE_EDGE), Reducer 5 (CUSTOM_SIMPLE_EDGE) +Reducer 7 <- Map 1 (SIMPLE_EDGE), Map 35 (SIMPLE_EDGE) +Reducer 8 <- Map 36 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE) +Reducer 9 <- Map 37 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) Stage-0 Fetch Operator @@ -230,452 +230,424 @@ Stage-0 Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] Merge Join Operator [MERGEJOIN_347] (rows=1 width=65) Conds:(Inner),(Inner),(Inner),(Inner),(Inner),(Inner),(Inner),Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] - <-Reducer 14 [CUSTOM_SIMPLE_EDGE] + <-Reducer 10 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_209] Group By Operator [GBY_50] (rows=1 width=8) Output:["_col0"],aggregations:["count(VALUE._col0)"] - <-Reducer 13 [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_328] (rows=766650239 width=88) Conds:RS_44._col2=RS_45._col0(Inner) - <-Map 17 [SIMPLE_EDGE] + <-Map 37 [SIMPLE_EDGE] SHUFFLE [RS_45] PartitionCols:_col0 Select Operator [SEL_37] (rows=852 width=1910) Output:["_col0"] Filter Operator [FIL_298] (rows=852 width=1910) predicate:((s_store_name = 'ese') and s_store_sk is not null) - TableScan [TS_35] (rows=1704 width=1910) + TableScan [TS_9] (rows=1704 width=1910) default@store,store,Tbl:COMPLETE,Col:NONE,Output:["s_store_sk","s_store_name"] - <-Reducer 12 [SIMPLE_EDGE] + <-Reducer 8 [SIMPLE_EDGE] SHUFFLE [RS_44] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_327] (rows=696954748 width=88) Conds:RS_41._col1=RS_42._col0(Inner),Output:["_col2"] - <-Map 16 [SIMPLE_EDGE] + <-Map 36 [SIMPLE_EDGE] SHUFFLE [RS_42] PartitionCols:_col0 Select Operator [SEL_34] (rows=3600 width=107) Output:["_col0"] Filter Operator [FIL_297] (rows=3600 width=107) predicate:((((hd_dep_count = 3) and (hd_vehicle_count <= 5)) or ((hd_dep_count = 0) and (hd_vehicle_count <= 2)) or ((hd_dep_count = 1) and (hd_vehicle_count <= 3))) and hd_demo_sk is not null) - TableScan [TS_32] (rows=7200 width=107) + TableScan [TS_6] (rows=7200 width=107) default@household_demographics,household_demographics,Tbl:COMPLETE,Col:NONE,Output:["hd_demo_sk","hd_dep_count","hd_vehicle_count"] - <-Reducer 11 [SIMPLE_EDGE] + <-Reducer 7 [SIMPLE_EDGE] SHUFFLE [RS_41] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_326] (rows=633595212 width=88) Conds:RS_38._col0=RS_39._col0(Inner),Output:["_col1","_col2"] - <-Map 10 [SIMPLE_EDGE] + <-Map 1 [SIMPLE_EDGE] SHUFFLE [RS_38] PartitionCols:_col0 Select Operator [SEL_28] (rows=575995635 width=88) Output:["_col0","_col1","_col2"] Filter Operator [FIL_295] (rows=575995635 width=88) predicate:(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=88) + TableScan [TS_0] (rows=575995635 width=88) default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_time_sk","ss_hdemo_sk","ss_store_sk"] - <-Map 15 [SIMPLE_EDGE] + <-Map 35 [SIMPLE_EDGE] SHUFFLE [RS_39] PartitionCols:_col0 Select Operator [SEL_31] (rows=14400 width=471) Output:["_col0"] Filter Operator [FIL_296] (rows=14400 width=471) predicate:((t_hour = 12) and (t_minute < 30) and t_time_sk is not null) - TableScan [TS_29] (rows=86400 width=471) + TableScan [TS_3] (rows=86400 width=471) default@time_dim,time_dim,Tbl:COMPLETE,Col:NONE,Output:["t_time_sk","t_hour","t_minute"] - <-Reducer 22 [CUSTOM_SIMPLE_EDGE] + <-Reducer 14 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_210] Group By Operator [GBY_76] (rows=1 width=8) Output:["_col0"],aggregations:["count(VALUE._col0)"] - <-Reducer 21 [CUSTOM_SIMPLE_EDGE] + <-Reducer 13 [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_331] (rows=766650239 width=88) Conds:RS_70._col2=RS_71._col0(Inner) - <-Map 25 [SIMPLE_EDGE] + <-Map 37 [SIMPLE_EDGE] SHUFFLE [RS_71] PartitionCols:_col0 Select Operator [SEL_63] (rows=852 width=1910) Output:["_col0"] Filter Operator [FIL_302] (rows=852 width=1910) predicate:((s_store_name = 'ese') and s_store_sk is not null) - TableScan [TS_61] (rows=1704 width=1910) - default@store,store,Tbl:COMPLETE,Col:NONE,Output:["s_store_sk","s_store_name"] - <-Reducer 20 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_9] + <-Reducer 12 [SIMPLE_EDGE] SHUFFLE [RS_70] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_330] (rows=696954748 width=88) Conds:RS_67._col1=RS_68._col0(Inner),Output:["_col2"] - <-Map 24 [SIMPLE_EDGE] + <-Map 36 [SIMPLE_EDGE] SHUFFLE [RS_68] PartitionCols:_col0 Select Operator [SEL_60] (rows=3600 width=107) Output:["_col0"] Filter Operator [FIL_301] (rows=3600 width=107) predicate:((((hd_dep_count = 3) and (hd_vehicle_count <= 5)) or ((hd_dep_count = 0) and (hd_vehicle_count <= 2)) or ((hd_dep_count = 1) and (hd_vehicle_count <= 3))) and hd_demo_sk is not null) - TableScan [TS_58] (rows=7200 width=107) - default@household_demographics,household_demographics,Tbl:COMPLETE,Col:NONE,Output:["hd_demo_sk","hd_dep_count","hd_vehicle_count"] - <-Reducer 19 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_6] + <-Reducer 11 [SIMPLE_EDGE] SHUFFLE [RS_67] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_329] (rows=633595212 width=88) Conds:RS_64._col0=RS_65._col0(Inner),Output:["_col1","_col2"] - <-Map 18 [SIMPLE_EDGE] + <-Map 1 [SIMPLE_EDGE] SHUFFLE [RS_64] PartitionCols:_col0 Select Operator [SEL_54] (rows=575995635 width=88) Output:["_col0","_col1","_col2"] Filter Operator [FIL_299] (rows=575995635 width=88) predicate:(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=88) - default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_time_sk","ss_hdemo_sk","ss_store_sk"] - <-Map 23 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_0] + <-Map 35 [SIMPLE_EDGE] SHUFFLE [RS_65] PartitionCols:_col0 Select Operator [SEL_57] (rows=14400 width=471) Output:["_col0"] Filter Operator [FIL_300] (rows=14400 width=471) predicate:((t_hour = 11) and (t_minute >= 30) and t_time_sk is not null) - TableScan [TS_55] (rows=86400 width=471) - default@time_dim,time_dim,Tbl:COMPLETE,Col:NONE,Output:["t_time_sk","t_hour","t_minute"] - <-Reducer 30 [CUSTOM_SIMPLE_EDGE] + Please refer to the previous TableScan [TS_3] + <-Reducer 18 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_211] Group By Operator [GBY_102] (rows=1 width=8) Output:["_col0"],aggregations:["count(VALUE._col0)"] - <-Reducer 29 [CUSTOM_SIMPLE_EDGE] + <-Reducer 17 [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_334] (rows=766650239 width=88) Conds:RS_96._col2=RS_97._col0(Inner) - <-Map 33 [SIMPLE_EDGE] + <-Map 37 [SIMPLE_EDGE] SHUFFLE [RS_97] PartitionCols:_col0 Select Operator [SEL_89] (rows=852 width=1910) Output:["_col0"] Filter Operator [FIL_306] (rows=852 width=1910) predicate:((s_store_name = 'ese') and s_store_sk is not null) - TableScan [TS_87] (rows=1704 width=1910) - default@store,store,Tbl:COMPLETE,Col:NONE,Output:["s_store_sk","s_store_name"] - <-Reducer 28 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_9] + <-Reducer 16 [SIMPLE_EDGE] SHUFFLE [RS_96] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_333] (rows=696954748 width=88) Conds:RS_93._col1=RS_94._col0(Inner),Output:["_col2"] - <-Map 32 [SIMPLE_EDGE] + <-Map 36 [SIMPLE_EDGE] SHUFFLE [RS_94] PartitionCols:_col0 Select Operator [SEL_86] (rows=3600 width=107) Output:["_col0"] Filter Operator [FIL_305] (rows=3600 width=107) predicate:((((hd_dep_count = 3) and (hd_vehicle_count <= 5)) or ((hd_dep_count = 0) and (hd_vehicle_count <= 2)) or ((hd_dep_count = 1) and (hd_vehicle_count <= 3))) and hd_demo_sk is not null) - TableScan [TS_84] (rows=7200 width=107) - default@household_demographics,household_demographics,Tbl:COMPLETE,Col:NONE,Output:["hd_demo_sk","hd_dep_count","hd_vehicle_count"] - <-Reducer 27 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_6] + <-Reducer 15 [SIMPLE_EDGE] SHUFFLE [RS_93] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_332] (rows=633595212 width=88) Conds:RS_90._col0=RS_91._col0(Inner),Output:["_col1","_col2"] - <-Map 26 [SIMPLE_EDGE] + <-Map 1 [SIMPLE_EDGE] SHUFFLE [RS_90] PartitionCols:_col0 Select Operator [SEL_80] (rows=575995635 width=88) Output:["_col0","_col1","_col2"] Filter Operator [FIL_303] (rows=575995635 width=88) predicate:(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=88) - default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_time_sk","ss_hdemo_sk","ss_store_sk"] - <-Map 31 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_0] + <-Map 35 [SIMPLE_EDGE] SHUFFLE [RS_91] PartitionCols:_col0 Select Operator [SEL_83] (rows=14400 width=471) Output:["_col0"] Filter Operator [FIL_304] (rows=14400 width=471) predicate:((t_hour = 11) and (t_minute < 30) and t_time_sk is not null) - TableScan [TS_81] (rows=86400 width=471) - default@time_dim,time_dim,Tbl:COMPLETE,Col:NONE,Output:["t_time_sk","t_hour","t_minute"] - <-Reducer 38 [CUSTOM_SIMPLE_EDGE] + Please refer to the previous TableScan [TS_3] + <-Reducer 22 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_212] Group By Operator [GBY_128] (rows=1 width=8) Output:["_col0"],aggregations:["count(VALUE._col0)"] - <-Reducer 37 [CUSTOM_SIMPLE_EDGE] + <-Reducer 21 [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_337] (rows=766650239 width=88) Conds:RS_122._col2=RS_123._col0(Inner) - <-Map 41 [SIMPLE_EDGE] + <-Map 37 [SIMPLE_EDGE] SHUFFLE [RS_123] PartitionCols:_col0 Select Operator [SEL_115] (rows=852 width=1910) Output:["_col0"] Filter Operator [FIL_310] (rows=852 width=1910) predicate:((s_store_name = 'ese') and s_store_sk is not null) - TableScan [TS_113] (rows=1704 width=1910) - default@store,store,Tbl:COMPLETE,Col:NONE,Output:["s_store_sk","s_store_name"] - <-Reducer 36 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_9] + <-Reducer 20 [SIMPLE_EDGE] SHUFFLE [RS_122] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_336] (rows=696954748 width=88) Conds:RS_119._col1=RS_120._col0(Inner),Output:["_col2"] - <-Map 40 [SIMPLE_EDGE] + <-Map 36 [SIMPLE_EDGE] SHUFFLE [RS_120] PartitionCols:_col0 Select Operator [SEL_112] (rows=3600 width=107) Output:["_col0"] Filter Operator [FIL_309] (rows=3600 width=107) predicate:((((hd_dep_count = 3) and (hd_vehicle_count <= 5)) or ((hd_dep_count = 0) and (hd_vehicle_count <= 2)) or ((hd_dep_count = 1) and (hd_vehicle_count <= 3))) and hd_demo_sk is not null) - TableScan [TS_110] (rows=7200 width=107) - default@household_demographics,household_demographics,Tbl:COMPLETE,Col:NONE,Output:["hd_demo_sk","hd_dep_count","hd_vehicle_count"] - <-Reducer 35 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_6] + <-Reducer 19 [SIMPLE_EDGE] SHUFFLE [RS_119] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_335] (rows=633595212 width=88) Conds:RS_116._col0=RS_117._col0(Inner),Output:["_col1","_col2"] - <-Map 34 [SIMPLE_EDGE] + <-Map 1 [SIMPLE_EDGE] SHUFFLE [RS_116] PartitionCols:_col0 Select Operator [SEL_106] (rows=575995635 width=88) Output:["_col0","_col1","_col2"] Filter Operator [FIL_307] (rows=575995635 width=88) predicate:(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=88) - default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_time_sk","ss_hdemo_sk","ss_store_sk"] - <-Map 39 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_0] + <-Map 35 [SIMPLE_EDGE] SHUFFLE [RS_117] PartitionCols:_col0 Select Operator [SEL_109] (rows=14400 width=471) Output:["_col0"] Filter Operator [FIL_308] (rows=14400 width=471) predicate:((t_hour = 10) and (t_minute >= 30) and t_time_sk is not null) - TableScan [TS_107] (rows=86400 width=471) - default@time_dim,time_dim,Tbl:COMPLETE,Col:NONE,Output:["t_time_sk","t_hour","t_minute"] - <-Reducer 46 [CUSTOM_SIMPLE_EDGE] + Please refer to the previous TableScan [TS_3] + <-Reducer 26 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_213] Group By Operator [GBY_154] (rows=1 width=8) Output:["_col0"],aggregations:["count(VALUE._col0)"] - <-Reducer 45 [CUSTOM_SIMPLE_EDGE] + <-Reducer 25 [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_340] (rows=766650239 width=88) Conds:RS_148._col2=RS_149._col0(Inner) - <-Map 49 [SIMPLE_EDGE] + <-Map 37 [SIMPLE_EDGE] SHUFFLE [RS_149] PartitionCols:_col0 Select Operator [SEL_141] (rows=852 width=1910) Output:["_col0"] Filter Operator [FIL_314] (rows=852 width=1910) predicate:((s_store_name = 'ese') and s_store_sk is not null) - TableScan [TS_139] (rows=1704 width=1910) - default@store,store,Tbl:COMPLETE,Col:NONE,Output:["s_store_sk","s_store_name"] - <-Reducer 44 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_9] + <-Reducer 24 [SIMPLE_EDGE] SHUFFLE [RS_148] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_339] (rows=696954748 width=88) Conds:RS_145._col1=RS_146._col0(Inner),Output:["_col2"] - <-Map 48 [SIMPLE_EDGE] + <-Map 36 [SIMPLE_EDGE] SHUFFLE [RS_146] PartitionCols:_col0 Select Operator [SEL_138] (rows=3600 width=107) Output:["_col0"] Filter Operator [FIL_313] (rows=3600 width=107) predicate:((((hd_dep_count = 3) and (hd_vehicle_count <= 5)) or ((hd_dep_count = 0) and (hd_vehicle_count <= 2)) or ((hd_dep_count = 1) and (hd_vehicle_count <= 3))) and hd_demo_sk is not null) - TableScan [TS_136] (rows=7200 width=107) - default@household_demographics,household_demographics,Tbl:COMPLETE,Col:NONE,Output:["hd_demo_sk","hd_dep_count","hd_vehicle_count"] - <-Reducer 43 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_6] + <-Reducer 23 [SIMPLE_EDGE] SHUFFLE [RS_145] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_338] (rows=633595212 width=88) Conds:RS_142._col0=RS_143._col0(Inner),Output:["_col1","_col2"] - <-Map 42 [SIMPLE_EDGE] + <-Map 1 [SIMPLE_EDGE] SHUFFLE [RS_142] PartitionCols:_col0 Select Operator [SEL_132] (rows=575995635 width=88) Output:["_col0","_col1","_col2"] Filter Operator [FIL_311] (rows=575995635 width=88) predicate:(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=88) - default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_time_sk","ss_hdemo_sk","ss_store_sk"] - <-Map 47 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_0] + <-Map 35 [SIMPLE_EDGE] SHUFFLE [RS_143] PartitionCols:_col0 Select Operator [SEL_135] (rows=14400 width=471) Output:["_col0"] Filter Operator [FIL_312] (rows=14400 width=471) predicate:((t_hour = 10) and (t_minute < 30) and t_time_sk is not null) - TableScan [TS_133] (rows=86400 width=471) - default@time_dim,time_dim,Tbl:COMPLETE,Col:NONE,Output:["t_time_sk","t_hour","t_minute"] - <-Reducer 5 [CUSTOM_SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_208] - Group By Operator [GBY_24] (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_325] (rows=766650239 width=88) - Conds:RS_18._col2=RS_19._col0(Inner) - <-Map 9 [SIMPLE_EDGE] - SHUFFLE [RS_19] - PartitionCols:_col0 - Select Operator [SEL_11] (rows=852 width=1910) - Output:["_col0"] - Filter Operator [FIL_294] (rows=852 width=1910) - predicate:((s_store_name = 'ese') and s_store_sk is not null) - TableScan [TS_9] (rows=1704 width=1910) - default@store,store,Tbl:COMPLETE,Col:NONE,Output:["s_store_sk","s_store_name"] - <-Reducer 3 [SIMPLE_EDGE] - SHUFFLE [RS_18] - PartitionCols:_col2 - Merge Join Operator [MERGEJOIN_324] (rows=696954748 width=88) - Conds:RS_15._col1=RS_16._col0(Inner),Output:["_col2"] - <-Map 8 [SIMPLE_EDGE] - SHUFFLE [RS_16] - PartitionCols:_col0 - Select Operator [SEL_8] (rows=3600 width=107) - Output:["_col0"] - Filter Operator [FIL_293] (rows=3600 width=107) - predicate:((((hd_dep_count = 3) and (hd_vehicle_count <= 5)) or ((hd_dep_count = 0) and (hd_vehicle_count <= 2)) or ((hd_dep_count = 1) and (hd_vehicle_count <= 3))) and hd_demo_sk is not null) - TableScan [TS_6] (rows=7200 width=107) - default@household_demographics,household_demographics,Tbl:COMPLETE,Col:NONE,Output:["hd_demo_sk","hd_dep_count","hd_vehicle_count"] - <-Reducer 2 [SIMPLE_EDGE] - SHUFFLE [RS_15] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_323] (rows=633595212 width=88) - Conds:RS_12._col0=RS_13._col0(Inner),Output:["_col1","_col2"] - <-Map 1 [SIMPLE_EDGE] - SHUFFLE [RS_12] - PartitionCols:_col0 - Select Operator [SEL_2] (rows=575995635 width=88) - Output:["_col0","_col1","_col2"] - Filter Operator [FIL_291] (rows=575995635 width=88) - predicate:(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=88) - default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_time_sk","ss_hdemo_sk","ss_store_sk"] - <-Map 7 [SIMPLE_EDGE] - SHUFFLE [RS_13] - PartitionCols:_col0 - Select Operator [SEL_5] (rows=14400 width=471) - Output:["_col0"] - Filter Operator [FIL_292] (rows=14400 width=471) - predicate:((t_hour = 8) and (t_minute >= 30) and t_time_sk is not null) - TableScan [TS_3] (rows=86400 width=471) - default@time_dim,time_dim,Tbl:COMPLETE,Col:NONE,Output:["t_time_sk","t_hour","t_minute"] - <-Reducer 54 [CUSTOM_SIMPLE_EDGE] + Please refer to the previous TableScan [TS_3] + <-Reducer 30 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_214] Group By Operator [GBY_180] (rows=1 width=8) Output:["_col0"],aggregations:["count(VALUE._col0)"] - <-Reducer 53 [CUSTOM_SIMPLE_EDGE] + <-Reducer 29 [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_343] (rows=766650239 width=88) Conds:RS_174._col2=RS_175._col0(Inner) - <-Map 57 [SIMPLE_EDGE] + <-Map 37 [SIMPLE_EDGE] SHUFFLE [RS_175] PartitionCols:_col0 Select Operator [SEL_167] (rows=852 width=1910) Output:["_col0"] Filter Operator [FIL_318] (rows=852 width=1910) predicate:((s_store_name = 'ese') and s_store_sk is not null) - TableScan [TS_165] (rows=1704 width=1910) - default@store,store,Tbl:COMPLETE,Col:NONE,Output:["s_store_sk","s_store_name"] - <-Reducer 52 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_9] + <-Reducer 28 [SIMPLE_EDGE] SHUFFLE [RS_174] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_342] (rows=696954748 width=88) Conds:RS_171._col1=RS_172._col0(Inner),Output:["_col2"] - <-Map 56 [SIMPLE_EDGE] + <-Map 36 [SIMPLE_EDGE] SHUFFLE [RS_172] PartitionCols:_col0 Select Operator [SEL_164] (rows=3600 width=107) Output:["_col0"] Filter Operator [FIL_317] (rows=3600 width=107) predicate:((((hd_dep_count = 3) and (hd_vehicle_count <= 5)) or ((hd_dep_count = 0) and (hd_vehicle_count <= 2)) or ((hd_dep_count = 1) and (hd_vehicle_count <= 3))) and hd_demo_sk is not null) - TableScan [TS_162] (rows=7200 width=107) - default@household_demographics,household_demographics,Tbl:COMPLETE,Col:NONE,Output:["hd_demo_sk","hd_dep_count","hd_vehicle_count"] - <-Reducer 51 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_6] + <-Reducer 27 [SIMPLE_EDGE] SHUFFLE [RS_171] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_341] (rows=633595212 width=88) Conds:RS_168._col0=RS_169._col0(Inner),Output:["_col1","_col2"] - <-Map 50 [SIMPLE_EDGE] + <-Map 1 [SIMPLE_EDGE] SHUFFLE [RS_168] PartitionCols:_col0 Select Operator [SEL_158] (rows=575995635 width=88) Output:["_col0","_col1","_col2"] Filter Operator [FIL_315] (rows=575995635 width=88) predicate:(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=88) - default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_time_sk","ss_hdemo_sk","ss_store_sk"] - <-Map 55 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_0] + <-Map 35 [SIMPLE_EDGE] SHUFFLE [RS_169] PartitionCols:_col0 Select Operator [SEL_161] (rows=14400 width=471) Output:["_col0"] Filter Operator [FIL_316] (rows=14400 width=471) predicate:((t_hour = 9) and (t_minute >= 30) and t_time_sk is not null) - TableScan [TS_159] (rows=86400 width=471) - default@time_dim,time_dim,Tbl:COMPLETE,Col:NONE,Output:["t_time_sk","t_hour","t_minute"] - <-Reducer 62 [CUSTOM_SIMPLE_EDGE] + Please refer to the previous TableScan [TS_3] + <-Reducer 34 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_215] Group By Operator [GBY_206] (rows=1 width=8) Output:["_col0"],aggregations:["count(VALUE._col0)"] - <-Reducer 61 [CUSTOM_SIMPLE_EDGE] + <-Reducer 33 [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_346] (rows=766650239 width=88) Conds:RS_200._col2=RS_201._col0(Inner) - <-Map 65 [SIMPLE_EDGE] + <-Map 37 [SIMPLE_EDGE] SHUFFLE [RS_201] PartitionCols:_col0 Select Operator [SEL_193] (rows=852 width=1910) Output:["_col0"] Filter Operator [FIL_322] (rows=852 width=1910) predicate:((s_store_name = 'ese') and s_store_sk is not null) - TableScan [TS_191] (rows=1704 width=1910) - default@store,store,Tbl:COMPLETE,Col:NONE,Output:["s_store_sk","s_store_name"] - <-Reducer 60 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_9] + <-Reducer 32 [SIMPLE_EDGE] SHUFFLE [RS_200] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_345] (rows=696954748 width=88) Conds:RS_197._col1=RS_198._col0(Inner),Output:["_col2"] - <-Map 64 [SIMPLE_EDGE] + <-Map 36 [SIMPLE_EDGE] SHUFFLE [RS_198] PartitionCols:_col0 Select Operator [SEL_190] (rows=3600 width=107) Output:["_col0"] Filter Operator [FIL_321] (rows=3600 width=107) predicate:((((hd_dep_count = 3) and (hd_vehicle_count <= 5)) or ((hd_dep_count = 0) and (hd_vehicle_count <= 2)) or ((hd_dep_count = 1) and (hd_vehicle_count <= 3))) and hd_demo_sk is not null) - TableScan [TS_188] (rows=7200 width=107) - default@household_demographics,household_demographics,Tbl:COMPLETE,Col:NONE,Output:["hd_demo_sk","hd_dep_count","hd_vehicle_count"] - <-Reducer 59 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_6] + <-Reducer 31 [SIMPLE_EDGE] SHUFFLE [RS_197] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_344] (rows=633595212 width=88) Conds:RS_194._col0=RS_195._col0(Inner),Output:["_col1","_col2"] - <-Map 58 [SIMPLE_EDGE] + <-Map 1 [SIMPLE_EDGE] SHUFFLE [RS_194] PartitionCols:_col0 Select Operator [SEL_184] (rows=575995635 width=88) Output:["_col0","_col1","_col2"] Filter Operator [FIL_319] (rows=575995635 width=88) predicate:(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=88) - default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_time_sk","ss_hdemo_sk","ss_store_sk"] - <-Map 63 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_0] + <-Map 35 [SIMPLE_EDGE] SHUFFLE [RS_195] PartitionCols:_col0 Select Operator [SEL_187] (rows=14400 width=471) Output:["_col0"] Filter Operator [FIL_320] (rows=14400 width=471) predicate:((t_hour = 9) and (t_minute < 30) and t_time_sk is not null) - TableScan [TS_185] (rows=86400 width=471) - default@time_dim,time_dim,Tbl:COMPLETE,Col:NONE,Output:["t_time_sk","t_hour","t_minute"] + Please refer to the previous TableScan [TS_3] + <-Reducer 5 [CUSTOM_SIMPLE_EDGE] + PARTITION_ONLY_SHUFFLE [RS_208] + Group By Operator [GBY_24] (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_325] (rows=766650239 width=88) + Conds:RS_18._col2=RS_19._col0(Inner) + <-Map 37 [SIMPLE_EDGE] + SHUFFLE [RS_19] + PartitionCols:_col0 + Select Operator [SEL_11] (rows=852 width=1910) + Output:["_col0"] + Filter Operator [FIL_294] (rows=852 width=1910) + predicate:((s_store_name = 'ese') and s_store_sk is not null) + Please refer to the previous TableScan [TS_9] + <-Reducer 3 [SIMPLE_EDGE] + SHUFFLE [RS_18] + PartitionCols:_col2 + Merge Join Operator [MERGEJOIN_324] (rows=696954748 width=88) + Conds:RS_15._col1=RS_16._col0(Inner),Output:["_col2"] + <-Map 36 [SIMPLE_EDGE] + SHUFFLE [RS_16] + PartitionCols:_col0 + Select Operator [SEL_8] (rows=3600 width=107) + Output:["_col0"] + Filter Operator [FIL_293] (rows=3600 width=107) + predicate:((((hd_dep_count = 3) and (hd_vehicle_count <= 5)) or ((hd_dep_count = 0) and (hd_vehicle_count <= 2)) or ((hd_dep_count = 1) and (hd_vehicle_count <= 3))) and hd_demo_sk is not null) + Please refer to the previous TableScan [TS_6] + <-Reducer 2 [SIMPLE_EDGE] + SHUFFLE [RS_15] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_323] (rows=633595212 width=88) + Conds:RS_12._col0=RS_13._col0(Inner),Output:["_col1","_col2"] + <-Map 1 [SIMPLE_EDGE] + SHUFFLE [RS_12] + PartitionCols:_col0 + Select Operator [SEL_2] (rows=575995635 width=88) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_291] (rows=575995635 width=88) + predicate:(ss_hdemo_sk is not null and ss_sold_time_sk is not null and ss_store_sk is not null) + Please refer to the previous TableScan [TS_0] + <-Map 35 [SIMPLE_EDGE] + SHUFFLE [RS_13] + PartitionCols:_col0 + Select Operator [SEL_5] (rows=14400 width=471) + Output:["_col0"] + Filter Operator [FIL_292] (rows=14400 width=471) + predicate:((t_hour = 8) and (t_minute >= 30) and t_time_sk is not null) + Please refer to the previous TableScan [TS_3] diff --git ql/src/test/results/clientpositive/perf/query90.q.out ql/src/test/results/clientpositive/perf/query90.q.out index 5ae9fe5..aae0aec 100644 --- ql/src/test/results/clientpositive/perf/query90.q.out +++ ql/src/test/results/clientpositive/perf/query90.q.out @@ -6,16 +6,16 @@ POSTHOOK: type: QUERY Plan optimized by CBO. Vertex dependency in root stage -Reducer 12 <- Map 11 (SIMPLE_EDGE), Map 16 (SIMPLE_EDGE) -Reducer 13 <- Map 17 (SIMPLE_EDGE), Reducer 12 (SIMPLE_EDGE) -Reducer 14 <- Map 18 (SIMPLE_EDGE), Reducer 13 (SIMPLE_EDGE) -Reducer 15 <- Reducer 14 (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 10 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 10 <- Map 14 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) +Reducer 11 <- Reducer 10 (CUSTOM_SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 12 (SIMPLE_EDGE) +Reducer 3 <- Map 13 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 4 <- Map 14 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (CUSTOM_SIMPLE_EDGE) -Reducer 6 <- Reducer 15 (CUSTOM_SIMPLE_EDGE), Reducer 5 (CUSTOM_SIMPLE_EDGE) +Reducer 6 <- Reducer 11 (CUSTOM_SIMPLE_EDGE), Reducer 5 (CUSTOM_SIMPLE_EDGE) Reducer 7 <- Reducer 6 (SIMPLE_EDGE) +Reducer 8 <- Map 1 (SIMPLE_EDGE), Map 12 (SIMPLE_EDGE) +Reducer 9 <- Map 13 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) Stage-0 Fetch Operator @@ -33,61 +33,61 @@ Stage-0 Output:["_col0"] Merge Join Operator [MERGEJOIN_92] (rows=1 width=17) Conds:(Inner),Output:["_col0","_col1"] - <-Reducer 15 [CUSTOM_SIMPLE_EDGE] + <-Reducer 11 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_53] Group By Operator [GBY_50] (rows=1 width=8) Output:["_col0"],aggregations:["count(VALUE._col0)"] - <-Reducer 14 [CUSTOM_SIMPLE_EDGE] + <-Reducer 10 [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_91] (rows=191667562 width=135) Conds:RS_44._col1=RS_45._col0(Inner) - <-Map 18 [SIMPLE_EDGE] + <-Map 14 [SIMPLE_EDGE] SHUFFLE [RS_45] PartitionCols:_col0 Select Operator [SEL_37] (rows=3600 width=107) Output:["_col0"] Filter Operator [FIL_85] (rows=3600 width=107) predicate:((hd_dep_count = 8) and hd_demo_sk is not null) - TableScan [TS_35] (rows=7200 width=107) + TableScan [TS_9] (rows=7200 width=107) default@household_demographics,household_demographics,Tbl:COMPLETE,Col:NONE,Output:["hd_demo_sk","hd_dep_count"] - <-Reducer 13 [SIMPLE_EDGE] + <-Reducer 9 [SIMPLE_EDGE] SHUFFLE [RS_44] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_90] (rows=174243235 width=135) Conds:RS_41._col0=RS_42._col0(Inner),Output:["_col1"] - <-Map 17 [SIMPLE_EDGE] + <-Map 13 [SIMPLE_EDGE] SHUFFLE [RS_42] PartitionCols:_col0 Select Operator [SEL_34] (rows=9600 width=471) Output:["_col0"] Filter Operator [FIL_84] (rows=9600 width=471) predicate:(t_hour BETWEEN 14 AND 15 and t_time_sk is not null) - TableScan [TS_32] (rows=86400 width=471) + TableScan [TS_6] (rows=86400 width=471) default@time_dim,time_dim,Tbl:COMPLETE,Col:NONE,Output:["t_time_sk","t_hour"] - <-Reducer 12 [SIMPLE_EDGE] + <-Reducer 8 [SIMPLE_EDGE] SHUFFLE [RS_41] PartitionCols:_col0 Merge Join Operator [MERGEJOIN_89] (rows=158402938 width=135) Conds:RS_38._col2=RS_39._col0(Inner),Output:["_col0","_col1"] - <-Map 11 [SIMPLE_EDGE] + <-Map 1 [SIMPLE_EDGE] SHUFFLE [RS_38] PartitionCols:_col2 Select Operator [SEL_28] (rows=144002668 width=135) Output:["_col0","_col1","_col2"] Filter Operator [FIL_82] (rows=144002668 width=135) predicate:(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=135) + TableScan [TS_0] (rows=144002668 width=135) default@web_sales,web_sales,Tbl:COMPLETE,Col:NONE,Output:["ws_sold_time_sk","ws_ship_hdemo_sk","ws_web_page_sk"] - <-Map 16 [SIMPLE_EDGE] + <-Map 12 [SIMPLE_EDGE] SHUFFLE [RS_39] PartitionCols:_col0 Select Operator [SEL_31] (rows=511 width=585) Output:["_col0"] Filter Operator [FIL_83] (rows=511 width=585) predicate:(wp_char_count BETWEEN 5000 AND 5200 and wp_web_page_sk is not null) - TableScan [TS_29] (rows=4602 width=585) + TableScan [TS_3] (rows=4602 width=585) default@web_page,web_page,Tbl:COMPLETE,Col:NONE,Output:["wp_web_page_sk","wp_char_count"] <-Reducer 5 [CUSTOM_SIMPLE_EDGE] PARTITION_ONLY_SHUFFLE [RS_52] @@ -99,29 +99,27 @@ Stage-0 Output:["_col0"],aggregations:["count()"] Merge Join Operator [MERGEJOIN_88] (rows=191667562 width=135) Conds:RS_18._col1=RS_19._col0(Inner) - <-Map 10 [SIMPLE_EDGE] + <-Map 14 [SIMPLE_EDGE] SHUFFLE [RS_19] PartitionCols:_col0 Select Operator [SEL_11] (rows=3600 width=107) Output:["_col0"] Filter Operator [FIL_81] (rows=3600 width=107) predicate:((hd_dep_count = 8) and hd_demo_sk is not null) - TableScan [TS_9] (rows=7200 width=107) - default@household_demographics,household_demographics,Tbl:COMPLETE,Col:NONE,Output:["hd_demo_sk","hd_dep_count"] + Please refer to the previous TableScan [TS_9] <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_18] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_87] (rows=174243235 width=135) Conds:RS_15._col0=RS_16._col0(Inner),Output:["_col1"] - <-Map 9 [SIMPLE_EDGE] + <-Map 13 [SIMPLE_EDGE] SHUFFLE [RS_16] PartitionCols:_col0 Select Operator [SEL_8] (rows=9600 width=471) Output:["_col0"] Filter Operator [FIL_80] (rows=9600 width=471) predicate:(t_hour BETWEEN 6 AND 7 and t_time_sk is not null) - TableScan [TS_6] (rows=86400 width=471) - default@time_dim,time_dim,Tbl:COMPLETE,Col:NONE,Output:["t_time_sk","t_hour"] + Please refer to the previous TableScan [TS_6] <-Reducer 2 [SIMPLE_EDGE] SHUFFLE [RS_15] PartitionCols:_col0 @@ -134,15 +132,13 @@ Stage-0 Output:["_col0","_col1","_col2"] Filter Operator [FIL_78] (rows=144002668 width=135) predicate:(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=135) - default@web_sales,web_sales,Tbl:COMPLETE,Col:NONE,Output:["ws_sold_time_sk","ws_ship_hdemo_sk","ws_web_page_sk"] - <-Map 8 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_0] + <-Map 12 [SIMPLE_EDGE] SHUFFLE [RS_13] PartitionCols:_col0 Select Operator [SEL_5] (rows=511 width=585) Output:["_col0"] Filter Operator [FIL_79] (rows=511 width=585) predicate:(wp_char_count BETWEEN 5000 AND 5200 and wp_web_page_sk is not null) - TableScan [TS_3] (rows=4602 width=585) - default@web_page,web_page,Tbl:COMPLETE,Col:NONE,Output:["wp_web_page_sk","wp_char_count"] + Please refer to the previous TableScan [TS_3] diff --git ql/src/test/results/clientpositive/perf/query92.q.out ql/src/test/results/clientpositive/perf/query92.q.out index a53c8e7..d3abc23 100644 --- ql/src/test/results/clientpositive/perf/query92.q.out +++ ql/src/test/results/clientpositive/perf/query92.q.out @@ -7,10 +7,10 @@ Plan optimized by CBO. Vertex dependency in root stage Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) +Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (CUSTOM_SIMPLE_EDGE) -Reducer 8 <- Map 10 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) -Reducer 9 <- Reducer 8 (SIMPLE_EDGE) +Reducer 7 <- Map 6 (SIMPLE_EDGE), Map 9 (SIMPLE_EDGE) +Reducer 8 <- Reducer 7 (SIMPLE_EDGE) Stage-0 Fetch Operator @@ -40,15 +40,6 @@ Stage-0 Output:["_col0","_col1"],keys:_col2, _col1 Merge Join Operator [MERGEJOIN_46] (rows=633595212 width=88) Conds:RS_6._col0=RS_7._col0(Inner),Output:["_col1","_col2"] - <-Map 1 [SIMPLE_EDGE] - SHUFFLE [RS_6] - PartitionCols:_col0 - Select Operator [SEL_2] (rows=575995635 width=88) - Output:["_col0","_col1","_col2"] - Filter Operator [FIL_42] (rows=575995635 width=88) - predicate:ss_sold_date_sk is not null - TableScan [TS_0] (rows=575995635 width=88) - default@store_sales,ss,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_item_sk","ss_customer_sk"] <-Map 6 [SIMPLE_EDGE] SHUFFLE [RS_7] PartitionCols:_col0 @@ -58,28 +49,36 @@ Stage-0 predicate:((d_month_seq >= 1206) and (d_month_seq <= 1217) and d_date_sk is not null) TableScan [TS_3] (rows=73049 width=1119) default@date_dim,d1,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_month_seq"] - <-Reducer 9 [SIMPLE_EDGE] + <-Map 1 [SIMPLE_EDGE] + SHUFFLE [RS_6] + PartitionCols:_col0 + Select Operator [SEL_2] (rows=575995635 width=88) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_42] (rows=575995635 width=88) + predicate:ss_sold_date_sk is not null + TableScan [TS_0] (rows=575995635 width=88) + default@store_sales,ss,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_item_sk","ss_customer_sk"] + <-Reducer 8 [SIMPLE_EDGE] SHUFFLE [RS_29] PartitionCols:_col0, _col1 Group By Operator [GBY_26] (rows=158394413 width=135) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Reducer 8 [SIMPLE_EDGE] + <-Reducer 7 [SIMPLE_EDGE] SHUFFLE [RS_25] PartitionCols:_col0, _col1 Group By Operator [GBY_24] (rows=316788826 width=135) Output:["_col0","_col1"],keys:_col1, _col2 Merge Join Operator [MERGEJOIN_47] (rows=316788826 width=135) Conds:RS_20._col0=RS_21._col0(Inner),Output:["_col1","_col2"] - <-Map 10 [SIMPLE_EDGE] + <-Map 6 [SIMPLE_EDGE] SHUFFLE [RS_21] PartitionCols:_col0 Select Operator [SEL_19] (rows=8116 width=1119) Output:["_col0"] Filter Operator [FIL_45] (rows=8116 width=1119) predicate:((d_month_seq >= 1206) and (d_month_seq <= 1217) and d_date_sk is not null) - TableScan [TS_17] (rows=73049 width=1119) - default@date_dim,d2,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_month_seq"] - <-Map 7 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_3] + <-Map 9 [SIMPLE_EDGE] SHUFFLE [RS_20] PartitionCols:_col0 Select Operator [SEL_16] (rows=287989836 width=135) diff --git ql/src/test/results/clientpositive/perf/query95.q.out ql/src/test/results/clientpositive/perf/query95.q.out index 9b0d1b2..fa94d08 100644 --- ql/src/test/results/clientpositive/perf/query95.q.out +++ ql/src/test/results/clientpositive/perf/query95.q.out @@ -5,14 +5,14 @@ POSTHOOK: type: QUERY Plan optimized by CBO. Vertex dependency in root stage -Reducer 11 <- Map 10 (SIMPLE_EDGE), Map 13 (SIMPLE_EDGE) -Reducer 12 <- Map 14 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE) -Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 12 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) -Reducer 3 <- Map 15 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Map 16 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Map 17 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE) +Reducer 10 <- Map 12 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) +Reducer 3 <- Map 13 (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 5 (SIMPLE_EDGE) -Reducer 8 <- Map 7 (SIMPLE_EDGE), Map 9 (SIMPLE_EDGE) +Reducer 8 <- Map 11 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) +Reducer 9 <- Map 11 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) Stage-0 Fetch Operator @@ -28,7 +28,7 @@ Stage-0 Output:["_col0","_col1","_col2","_col3"],aggregations:["count(DISTINCT _col3)","sum(_col4)","sum(_col5)"],keys:_col3 Merge Join Operator [MERGEJOIN_122] (rows=510219083 width=135) Conds:RS_55._col2=RS_56._col0(Inner),Output:["_col3","_col4","_col5"] - <-Map 17 [SIMPLE_EDGE] + <-Map 15 [SIMPLE_EDGE] SHUFFLE [RS_56] PartitionCols:_col0 Select Operator [SEL_40] (rows=42 width=1850) @@ -42,7 +42,7 @@ Stage-0 PartitionCols:_col2 Merge Join Operator [MERGEJOIN_121] (rows=463835520 width=135) Conds:RS_52._col1=RS_53._col0(Inner),Output:["_col2","_col3","_col4","_col5"] - <-Map 16 [SIMPLE_EDGE] + <-Map 14 [SIMPLE_EDGE] SHUFFLE [RS_53] PartitionCols:_col0 Select Operator [SEL_37] (rows=20000000 width=1014) @@ -56,7 +56,7 @@ Stage-0 PartitionCols:_col1 Merge Join Operator [MERGEJOIN_120] (rows=421668646 width=135) Conds:RS_49._col0=RS_50._col0(Inner),Output:["_col1","_col2","_col3","_col4","_col5"] - <-Map 15 [SIMPLE_EDGE] + <-Map 13 [SIMPLE_EDGE] SHUFFLE [RS_50] PartitionCols:_col0 Select Operator [SEL_34] (rows=8116 width=1119) @@ -79,7 +79,7 @@ Stage-0 predicate:(ws_ship_addr_sk is not null and ws_web_site_sk is not null and ws_ship_date_sk is not null and ws_order_number is not null) TableScan [TS_0] (rows=144002668 width=135) default@web_sales,ws1,Tbl:COMPLETE,Col:NONE,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 [SIMPLE_EDGE] + <-Reducer 10 [SIMPLE_EDGE] SHUFFLE [RS_47] PartitionCols:_col0 Group By Operator [GBY_44] (rows=174243235 width=135) @@ -88,7 +88,7 @@ Stage-0 Output:["_col0"] Merge Join Operator [MERGEJOIN_118] (rows=174243235 width=135) Conds:RS_28._col0=RS_29._col0(Inner),Output:["_col1"] - <-Map 14 [SIMPLE_EDGE] + <-Map 12 [SIMPLE_EDGE] SHUFFLE [RS_29] PartitionCols:_col0 Select Operator [SEL_27] (rows=14398467 width=92) @@ -97,7 +97,7 @@ Stage-0 predicate:wr_order_number is not null TableScan [TS_25] (rows=14398467 width=92) default@web_returns,wr,Tbl:COMPLETE,Col:NONE,Output:["wr_order_number"] - <-Reducer 11 [SIMPLE_EDGE] + <-Reducer 9 [SIMPLE_EDGE] SHUFFLE [RS_28] PartitionCols:_col0 Select Operator [SEL_24] (rows=158402938 width=135) @@ -106,24 +106,24 @@ Stage-0 predicate:(_col0 <> _col2) Merge Join Operator [MERGEJOIN_117] (rows=158402938 width=135) Conds:RS_20._col1=RS_21._col1(Inner),Output:["_col0","_col1","_col2"] - <-Map 10 [SIMPLE_EDGE] - SHUFFLE [RS_20] - PartitionCols:_col1 - Select Operator [SEL_16] (rows=144002668 width=135) - Output:["_col0","_col1"] - Filter Operator [FIL_110] (rows=144002668 width=135) - predicate:ws_order_number is not null - TableScan [TS_14] (rows=144002668 width=135) - default@web_sales,ws4,Tbl:COMPLETE,Col:NONE,Output:["ws_warehouse_sk","ws_order_number"] - <-Map 13 [SIMPLE_EDGE] + <-Map 11 [SIMPLE_EDGE] SHUFFLE [RS_21] PartitionCols:_col1 Select Operator [SEL_19] (rows=144002668 width=135) Output:["_col0","_col1"] Filter Operator [FIL_111] (rows=144002668 width=135) predicate:ws_order_number is not null - TableScan [TS_17] (rows=144002668 width=135) - default@web_sales,ws5,Tbl:COMPLETE,Col:NONE,Output:["ws_warehouse_sk","ws_order_number"] + TableScan [TS_6] (rows=144002668 width=135) + default@web_sales,ws3,Tbl:COMPLETE,Col:NONE,Output:["ws_warehouse_sk","ws_order_number"] + <-Map 7 [SIMPLE_EDGE] + SHUFFLE [RS_20] + PartitionCols:_col1 + Select Operator [SEL_16] (rows=144002668 width=135) + Output:["_col0","_col1"] + Filter Operator [FIL_110] (rows=144002668 width=135) + predicate:ws_order_number is not null + TableScan [TS_3] (rows=144002668 width=135) + default@web_sales,ws2,Tbl:COMPLETE,Col:NONE,Output:["ws_warehouse_sk","ws_order_number"] <-Reducer 8 [SIMPLE_EDGE] SHUFFLE [RS_46] PartitionCols:_col0 @@ -135,6 +135,14 @@ Stage-0 predicate:(_col0 <> _col2) Merge Join Operator [MERGEJOIN_116] (rows=158402938 width=135) Conds:RS_9._col1=RS_10._col1(Inner),Output:["_col0","_col1","_col2"] + <-Map 11 [SIMPLE_EDGE] + SHUFFLE [RS_10] + PartitionCols:_col1 + Select Operator [SEL_8] (rows=144002668 width=135) + Output:["_col0","_col1"] + Filter Operator [FIL_109] (rows=144002668 width=135) + predicate:ws_order_number is not null + Please refer to the previous TableScan [TS_6] <-Map 7 [SIMPLE_EDGE] SHUFFLE [RS_9] PartitionCols:_col1 @@ -142,15 +150,5 @@ Stage-0 Output:["_col0","_col1"] Filter Operator [FIL_108] (rows=144002668 width=135) predicate:ws_order_number is not null - TableScan [TS_3] (rows=144002668 width=135) - default@web_sales,ws2,Tbl:COMPLETE,Col:NONE,Output:["ws_warehouse_sk","ws_order_number"] - <-Map 9 [SIMPLE_EDGE] - SHUFFLE [RS_10] - PartitionCols:_col1 - Select Operator [SEL_8] (rows=144002668 width=135) - Output:["_col0","_col1"] - Filter Operator [FIL_109] (rows=144002668 width=135) - predicate:ws_order_number is not null - TableScan [TS_6] (rows=144002668 width=135) - default@web_sales,ws3,Tbl:COMPLETE,Col:NONE,Output:["ws_warehouse_sk","ws_order_number"] + Please refer to the previous TableScan [TS_3] diff --git ql/src/test/results/clientpositive/perf/query97.q.out ql/src/test/results/clientpositive/perf/query97.q.out index 54152e9..ef9a791 100644 --- ql/src/test/results/clientpositive/perf/query97.q.out +++ ql/src/test/results/clientpositive/perf/query97.q.out @@ -7,10 +7,10 @@ Plan optimized by CBO. Vertex dependency in root stage Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) Reducer 3 <- Reducer 2 (SIMPLE_EDGE) -Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE) +Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE) Reducer 5 <- Reducer 4 (CUSTOM_SIMPLE_EDGE) -Reducer 8 <- Map 10 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) -Reducer 9 <- Reducer 8 (SIMPLE_EDGE) +Reducer 7 <- Map 6 (SIMPLE_EDGE), Map 9 (SIMPLE_EDGE) +Reducer 8 <- Reducer 7 (SIMPLE_EDGE) Stage-0 Fetch Operator @@ -42,15 +42,6 @@ Stage-0 Output:["_col0","_col1"],keys:_col2, _col1 Merge Join Operator [MERGEJOIN_47] (rows=633595212 width=88) Conds:RS_6._col0=RS_7._col0(Inner),Output:["_col1","_col2"] - <-Map 1 [SIMPLE_EDGE] - SHUFFLE [RS_6] - PartitionCols:_col0 - Select Operator [SEL_2] (rows=575995635 width=88) - Output:["_col0","_col1","_col2"] - Filter Operator [FIL_43] (rows=575995635 width=88) - predicate:ss_sold_date_sk is not null - TableScan [TS_0] (rows=575995635 width=88) - default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_item_sk","ss_customer_sk"] <-Map 6 [SIMPLE_EDGE] SHUFFLE [RS_7] PartitionCols:_col0 @@ -60,28 +51,36 @@ Stage-0 predicate:(d_month_seq BETWEEN 1193 AND 1204 and d_date_sk is not null) TableScan [TS_3] (rows=73049 width=1119) default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_month_seq"] - <-Reducer 9 [SIMPLE_EDGE] + <-Map 1 [SIMPLE_EDGE] + SHUFFLE [RS_6] + PartitionCols:_col0 + Select Operator [SEL_2] (rows=575995635 width=88) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_43] (rows=575995635 width=88) + predicate:ss_sold_date_sk is not null + TableScan [TS_0] (rows=575995635 width=88) + default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_item_sk","ss_customer_sk"] + <-Reducer 8 [SIMPLE_EDGE] SHUFFLE [RS_29] PartitionCols:_col0, _col1 Group By Operator [GBY_26] (rows=158394413 width=135) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Reducer 8 [SIMPLE_EDGE] + <-Reducer 7 [SIMPLE_EDGE] SHUFFLE [RS_25] PartitionCols:_col0, _col1 Group By Operator [GBY_24] (rows=316788826 width=135) Output:["_col0","_col1"],keys:_col1, _col2 Merge Join Operator [MERGEJOIN_48] (rows=316788826 width=135) Conds:RS_20._col0=RS_21._col0(Inner),Output:["_col1","_col2"] - <-Map 10 [SIMPLE_EDGE] + <-Map 6 [SIMPLE_EDGE] SHUFFLE [RS_21] PartitionCols:_col0 Select Operator [SEL_19] (rows=8116 width=1119) Output:["_col0"] Filter Operator [FIL_46] (rows=8116 width=1119) predicate:(d_month_seq BETWEEN 1193 AND 1204 and d_date_sk is not null) - TableScan [TS_17] (rows=73049 width=1119) - default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_month_seq"] - <-Map 7 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_3] + <-Map 9 [SIMPLE_EDGE] SHUFFLE [RS_20] PartitionCols:_col0 Select Operator [SEL_16] (rows=287989836 width=135) diff --git ql/src/test/results/clientpositive/tez/explainanalyze_2.q.out ql/src/test/results/clientpositive/tez/explainanalyze_2.q.out index ea572cd..f6844c4 100644 --- ql/src/test/results/clientpositive/tez/explainanalyze_2.q.out +++ ql/src/test/results/clientpositive/tez/explainanalyze_2.q.out @@ -42,15 +42,15 @@ Plan optimized by CBO. Vertex dependency in root stage Map 1 <- Union 2 (CONTAINS) -Map 11 <- Union 12 (CONTAINS) -Map 16 <- Union 12 (CONTAINS) +Map 13 <- Union 14 (CONTAINS) +Map 16 <- Union 14 (CONTAINS) Map 8 <- Union 2 (CONTAINS) -Reducer 13 <- Union 12 (SIMPLE_EDGE) -Reducer 14 <- Map 17 (SIMPLE_EDGE), Reducer 13 (SIMPLE_EDGE) -Reducer 15 <- Map 18 (SIMPLE_EDGE), Reducer 14 (SIMPLE_EDGE), Union 6 (CONTAINS) +Reducer 10 <- Map 9 (SIMPLE_EDGE), Reducer 15 (SIMPLE_EDGE) +Reducer 11 <- Map 17 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE), Union 6 (CONTAINS) +Reducer 15 <- Union 14 (SIMPLE_EDGE) Reducer 3 <- Union 2 (SIMPLE_EDGE) Reducer 4 <- Map 9 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Map 10 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE), Union 6 (CONTAINS) +Reducer 5 <- Map 12 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE), Union 6 (CONTAINS) Reducer 7 <- Union 6 (SIMPLE_EDGE) Stage-0 @@ -62,14 +62,14 @@ Stage-0 Group By Operator [GBY_54] (rows=28/15 width=177) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 <-Union 6 [SIMPLE_EDGE] - <-Reducer 15 [CONTAINS] + <-Reducer 11 [CONTAINS] Reduce Output Operator [RS_53] PartitionCols:_col0, _col1 Select Operator [SEL_49] (rows=148/61 width=177) Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_82] (rows=148/61 width=177) Conds:RS_46._col2=RS_47._col0(Inner),Output:["_col1","_col2"] - <-Map 18 [SIMPLE_EDGE] + <-Map 17 [SIMPLE_EDGE] SHUFFLE [RS_47] PartitionCols:_col0 Select Operator [SEL_42] (rows=500/500 width=87) @@ -78,29 +78,29 @@ Stage-0 predicate:key is not null TableScan [TS_40] (rows=500/500 width=87) default@src,y,Tbl:COMPLETE,Col:COMPLETE,Output:["key"] - <-Reducer 14 [SIMPLE_EDGE] + <-Reducer 10 [SIMPLE_EDGE] SHUFFLE [RS_46] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_81] (rows=61/52 width=177) Conds:RS_43._col1=RS_44._col1(Inner),Output:["_col1","_col2"] - <-Map 17 [SIMPLE_EDGE] + <-Map 9 [SIMPLE_EDGE] SHUFFLE [RS_44] PartitionCols:_col1 Select Operator [SEL_39] (rows=25/25 width=175) Output:["_col0","_col1"] Filter Operator [FIL_77] (rows=25/25 width=175) predicate:(key is not null and value is not null) - TableScan [TS_37] (rows=25/25 width=175) + TableScan [TS_12] (rows=25/25 width=175) default@src1,x,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] - <-Reducer 13 [SIMPLE_EDGE] + <-Reducer 15 [SIMPLE_EDGE] SHUFFLE [RS_43] PartitionCols:_col1 Select Operator [SEL_36] (rows=525/319 width=178) Output:["_col1"] Group By Operator [GBY_35] (rows=525/319 width=178) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 12 [SIMPLE_EDGE] - <-Map 11 [CONTAINS] + <-Union 14 [SIMPLE_EDGE] + <-Map 13 [CONTAINS] Reduce Output Operator [RS_34] PartitionCols:_col1, _col0 Select Operator [SEL_27] (rows=25/25 width=175) @@ -125,7 +125,7 @@ Stage-0 Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_80] (rows=148/61 width=177) Conds:RS_21._col2=RS_22._col0(Inner),Output:["_col1","_col2"] - <-Map 10 [SIMPLE_EDGE] + <-Map 12 [SIMPLE_EDGE] SHUFFLE [RS_22] PartitionCols:_col0 Select Operator [SEL_17] (rows=500/500 width=87) @@ -146,8 +146,7 @@ Stage-0 Output:["_col0","_col1"] Filter Operator [FIL_73] (rows=25/25 width=175) predicate:(key is not null and value is not null) - TableScan [TS_12] (rows=25/25 width=175) - default@src1,x,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] + Please refer to the previous TableScan [TS_12] <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_18] PartitionCols:_col1 @@ -236,25 +235,25 @@ Plan optimized by CBO. Vertex dependency in root stage Map 1 <- Union 2 (CONTAINS) Map 10 <- Union 2 (CONTAINS) -Map 13 <- Union 14 (CONTAINS) -Map 20 <- Union 14 (CONTAINS) -Map 21 <- Union 16 (CONTAINS) -Map 24 <- Union 25 (CONTAINS) -Map 33 <- Union 25 (CONTAINS) -Map 34 <- Union 27 (CONTAINS) -Map 35 <- Union 29 (CONTAINS) -Reducer 15 <- Union 14 (SIMPLE_EDGE), Union 16 (CONTAINS) -Reducer 17 <- Union 16 (SIMPLE_EDGE) -Reducer 18 <- Map 22 (SIMPLE_EDGE), Reducer 17 (SIMPLE_EDGE) -Reducer 19 <- Map 23 (SIMPLE_EDGE), Reducer 18 (SIMPLE_EDGE), Union 6 (CONTAINS) -Reducer 26 <- Union 25 (SIMPLE_EDGE), Union 27 (CONTAINS) -Reducer 28 <- Union 27 (SIMPLE_EDGE), Union 29 (CONTAINS) +Map 17 <- Union 18 (CONTAINS) +Map 22 <- Union 18 (CONTAINS) +Map 23 <- Union 20 (CONTAINS) +Map 25 <- Union 26 (CONTAINS) +Map 32 <- Union 26 (CONTAINS) +Map 33 <- Union 28 (CONTAINS) +Map 34 <- Union 30 (CONTAINS) +Reducer 12 <- Map 11 (SIMPLE_EDGE), Reducer 21 (SIMPLE_EDGE) +Reducer 13 <- Map 24 (SIMPLE_EDGE), Reducer 12 (SIMPLE_EDGE), Union 6 (CONTAINS) +Reducer 14 <- Map 11 (SIMPLE_EDGE), Reducer 31 (SIMPLE_EDGE) +Reducer 15 <- Map 16 (SIMPLE_EDGE), Reducer 14 (SIMPLE_EDGE), Union 8 (CONTAINS) +Reducer 19 <- Union 18 (SIMPLE_EDGE), Union 20 (CONTAINS) +Reducer 21 <- Union 20 (SIMPLE_EDGE) +Reducer 27 <- Union 26 (SIMPLE_EDGE), Union 28 (CONTAINS) +Reducer 29 <- Union 28 (SIMPLE_EDGE), Union 30 (CONTAINS) Reducer 3 <- Union 2 (SIMPLE_EDGE) -Reducer 30 <- Union 29 (SIMPLE_EDGE) -Reducer 31 <- Map 36 (SIMPLE_EDGE), Reducer 30 (SIMPLE_EDGE) -Reducer 32 <- Map 37 (SIMPLE_EDGE), Reducer 31 (SIMPLE_EDGE), Union 8 (CONTAINS) +Reducer 31 <- Union 30 (SIMPLE_EDGE) Reducer 4 <- Map 11 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Map 12 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE), Union 6 (CONTAINS) +Reducer 5 <- Map 16 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE), Union 6 (CONTAINS) Reducer 7 <- Union 6 (SIMPLE_EDGE), Union 8 (CONTAINS) Reducer 9 <- Union 8 (SIMPLE_EDGE) @@ -267,45 +266,45 @@ Stage-0 Group By Operator [GBY_112] (rows=872/15 width=177) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 <-Union 8 [SIMPLE_EDGE] - <-Reducer 32 [CONTAINS] + <-Reducer 15 [CONTAINS] Reduce Output Operator [RS_111] PartitionCols:_col0, _col1 Select Operator [SEL_107] (rows=434/61 width=177) Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_162] (rows=434/61 width=177) Conds:RS_104._col2=RS_105._col0(Inner),Output:["_col2","_col5"] - <-Map 37 [SIMPLE_EDGE] + <-Map 16 [SIMPLE_EDGE] SHUFFLE [RS_105] PartitionCols:_col0 Select Operator [SEL_100] (rows=500/500 width=178) Output:["_col0","_col1"] Filter Operator [FIL_156] (rows=500/500 width=178) predicate:key is not null - TableScan [TS_98] (rows=500/500 width=178) + TableScan [TS_15] (rows=500/500 width=178) default@src,y,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] - <-Reducer 31 [SIMPLE_EDGE] + <-Reducer 14 [SIMPLE_EDGE] SHUFFLE [RS_104] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_161] (rows=178/52 width=86) Conds:RS_101._col1=RS_102._col1(Inner),Output:["_col2"] - <-Map 36 [SIMPLE_EDGE] + <-Map 11 [SIMPLE_EDGE] SHUFFLE [RS_102] PartitionCols:_col1 Select Operator [SEL_97] (rows=25/25 width=175) Output:["_col0","_col1"] Filter Operator [FIL_155] (rows=25/25 width=175) predicate:(key is not null and value is not null) - TableScan [TS_95] (rows=25/25 width=175) + TableScan [TS_12] (rows=25/25 width=175) default@src1,x,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] - <-Reducer 30 [SIMPLE_EDGE] + <-Reducer 31 [SIMPLE_EDGE] SHUFFLE [RS_101] PartitionCols:_col1 Select Operator [SEL_94] (rows=1525/319 width=178) Output:["_col1"] Group By Operator [GBY_93] (rows=1525/319 width=178) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 29 [SIMPLE_EDGE] - <-Map 35 [CONTAINS] + <-Union 30 [SIMPLE_EDGE] + <-Map 34 [CONTAINS] Reduce Output Operator [RS_92] PartitionCols:_col1, _col0 Select Operator [SEL_88] (rows=500/500 width=178) @@ -314,15 +313,15 @@ Stage-0 predicate:value is not null TableScan [TS_86] (rows=500/500 width=178) Output:["key","value"] - <-Reducer 28 [CONTAINS] + <-Reducer 29 [CONTAINS] Reduce Output Operator [RS_92] PartitionCols:_col1, _col0 Select Operator [SEL_85] (rows=1025/319 width=178) Output:["_col0","_col1"] Group By Operator [GBY_84] (rows=1025/319 width=178) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 27 [SIMPLE_EDGE] - <-Map 34 [CONTAINS] + <-Union 28 [SIMPLE_EDGE] + <-Map 33 [CONTAINS] Reduce Output Operator [RS_83] PartitionCols:_col1, _col0 Select Operator [SEL_79] (rows=500/500 width=178) @@ -331,15 +330,15 @@ Stage-0 predicate:value is not null TableScan [TS_77] (rows=500/500 width=178) Output:["key","value"] - <-Reducer 26 [CONTAINS] + <-Reducer 27 [CONTAINS] Reduce Output Operator [RS_83] PartitionCols:_col1, _col0 Select Operator [SEL_76] (rows=525/319 width=178) Output:["_col0","_col1"] Group By Operator [GBY_75] (rows=525/319 width=178) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 25 [SIMPLE_EDGE] - <-Map 24 [CONTAINS] + <-Union 26 [SIMPLE_EDGE] + <-Map 25 [CONTAINS] Reduce Output Operator [RS_74] PartitionCols:_col1, _col0 Select Operator [SEL_67] (rows=25/25 width=175) @@ -348,7 +347,7 @@ Stage-0 predicate:value is not null TableScan [TS_65] (rows=25/25 width=175) Output:["key","value"] - <-Map 33 [CONTAINS] + <-Map 32 [CONTAINS] Reduce Output Operator [RS_74] PartitionCols:_col1, _col0 Select Operator [SEL_70] (rows=500/500 width=178) @@ -363,14 +362,14 @@ Stage-0 Group By Operator [GBY_63] (rows=438/15 width=177) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 <-Union 6 [SIMPLE_EDGE] - <-Reducer 19 [CONTAINS] + <-Reducer 13 [CONTAINS] Reduce Output Operator [RS_62] PartitionCols:_col0, _col1 Select Operator [SEL_58] (rows=290/61 width=177) Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_160] (rows=290/61 width=177) Conds:RS_55._col2=RS_56._col0(Inner),Output:["_col2","_col5"] - <-Map 23 [SIMPLE_EDGE] + <-Map 24 [SIMPLE_EDGE] SHUFFLE [RS_56] PartitionCols:_col0 Select Operator [SEL_51] (rows=500/500 width=178) @@ -379,29 +378,28 @@ Stage-0 predicate:key is not null TableScan [TS_49] (rows=500/500 width=178) default@src,y,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] - <-Reducer 18 [SIMPLE_EDGE] + <-Reducer 12 [SIMPLE_EDGE] SHUFFLE [RS_55] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_159] (rows=119/52 width=86) Conds:RS_52._col1=RS_53._col1(Inner),Output:["_col2"] - <-Map 22 [SIMPLE_EDGE] + <-Map 11 [SIMPLE_EDGE] SHUFFLE [RS_53] PartitionCols:_col1 Select Operator [SEL_48] (rows=25/25 width=175) Output:["_col0","_col1"] Filter Operator [FIL_149] (rows=25/25 width=175) predicate:(key is not null and value is not null) - TableScan [TS_46] (rows=25/25 width=175) - default@src1,x,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] - <-Reducer 17 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_12] + <-Reducer 21 [SIMPLE_EDGE] SHUFFLE [RS_52] PartitionCols:_col1 Select Operator [SEL_45] (rows=1025/319 width=178) Output:["_col1"] Group By Operator [GBY_44] (rows=1025/319 width=178) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 16 [SIMPLE_EDGE] - <-Map 21 [CONTAINS] + <-Union 20 [SIMPLE_EDGE] + <-Map 23 [CONTAINS] Reduce Output Operator [RS_43] PartitionCols:_col1, _col0 Select Operator [SEL_39] (rows=500/500 width=178) @@ -410,15 +408,15 @@ Stage-0 predicate:value is not null TableScan [TS_37] (rows=500/500 width=178) Output:["key","value"] - <-Reducer 15 [CONTAINS] + <-Reducer 19 [CONTAINS] Reduce Output Operator [RS_43] PartitionCols:_col1, _col0 Select Operator [SEL_36] (rows=525/319 width=178) Output:["_col0","_col1"] Group By Operator [GBY_35] (rows=525/319 width=178) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 14 [SIMPLE_EDGE] - <-Map 13 [CONTAINS] + <-Union 18 [SIMPLE_EDGE] + <-Map 17 [CONTAINS] Reduce Output Operator [RS_34] PartitionCols:_col1, _col0 Select Operator [SEL_27] (rows=25/25 width=175) @@ -427,7 +425,7 @@ Stage-0 predicate:value is not null TableScan [TS_25] (rows=25/25 width=175) Output:["key","value"] - <-Map 20 [CONTAINS] + <-Map 22 [CONTAINS] Reduce Output Operator [RS_34] PartitionCols:_col1, _col0 Select Operator [SEL_30] (rows=500/500 width=178) @@ -443,15 +441,14 @@ Stage-0 Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_158] (rows=148/61 width=177) Conds:RS_21._col2=RS_22._col0(Inner),Output:["_col2","_col5"] - <-Map 12 [SIMPLE_EDGE] + <-Map 16 [SIMPLE_EDGE] SHUFFLE [RS_22] PartitionCols:_col0 Select Operator [SEL_17] (rows=500/500 width=178) Output:["_col0","_col1"] Filter Operator [FIL_145] (rows=500/500 width=178) predicate:key is not null - TableScan [TS_15] (rows=500/500 width=178) - default@src,y,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] + Please refer to the previous TableScan [TS_15] <-Reducer 4 [SIMPLE_EDGE] SHUFFLE [RS_21] PartitionCols:_col2 @@ -464,8 +461,7 @@ Stage-0 Output:["_col0","_col1"] Filter Operator [FIL_144] (rows=25/25 width=175) predicate:(key is not null and value is not null) - TableScan [TS_12] (rows=25/25 width=175) - default@src1,x,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] + Please refer to the previous TableScan [TS_12] <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_18] PartitionCols:_col1 @@ -1127,20 +1123,20 @@ Plan optimized by CBO. Vertex dependency in root stage Map 1 <- Union 2 (CONTAINS) -Map 13 <- Union 10 (CONTAINS) -Map 14 <- Union 10 (CONTAINS) -Map 21 <- Union 22 (CONTAINS) -Map 23 <- Union 22 (CONTAINS) -Map 24 <- Union 22 (CONTAINS) -Map 25 <- Union 22 (CONTAINS) +Map 13 <- Union 14 (CONTAINS) +Map 15 <- Union 14 (CONTAINS) +Map 16 <- Union 14 (CONTAINS) +Map 19 <- Union 20 (CONTAINS) +Map 21 <- Union 20 (CONTAINS) +Map 22 <- Union 20 (CONTAINS) +Map 23 <- Union 20 (CONTAINS) Map 6 <- Union 2 (CONTAINS) -Map 9 <- Union 10 (CONTAINS) -Reducer 11 <- Map 15 (SIMPLE_EDGE), Union 10 (SIMPLE_EDGE) -Reducer 12 <- Map 16 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE), Union 5 (CONTAINS) -Reducer 18 <- Map 17 (SIMPLE_EDGE), Map 20 (SIMPLE_EDGE) -Reducer 19 <- Reducer 18 (SIMPLE_EDGE), Union 22 (SIMPLE_EDGE), Union 5 (CONTAINS) +Reducer 11 <- Map 10 (SIMPLE_EDGE), Union 14 (SIMPLE_EDGE) +Reducer 12 <- Map 17 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE), Union 5 (CONTAINS) Reducer 3 <- Map 7 (SIMPLE_EDGE), Union 2 (SIMPLE_EDGE) -Reducer 4 <- Map 8 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE), Union 5 (CONTAINS) +Reducer 4 <- Map 10 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE), Union 5 (CONTAINS) +Reducer 8 <- Map 18 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) +Reducer 9 <- Reducer 8 (SIMPLE_EDGE), Union 20 (SIMPLE_EDGE), Union 5 (CONTAINS) Stage-5 Stats-Aggr Operator @@ -1158,7 +1154,7 @@ Stage-5 Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_126] (rows=5839/5421 width=178) Conds:RS_42._col1=RS_43._col0(Inner),Output:["_col1","_col4"] - <-Map 16 [SIMPLE_EDGE] + <-Map 17 [SIMPLE_EDGE] SHUFFLE [RS_43] PartitionCols:_col0 Select Operator [SEL_38] (rows=500/500 width=178) @@ -1171,27 +1167,36 @@ Stage-5 SHUFFLE [RS_42] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_125] (rows=2394/2097 width=87) - Conds:Union 10._col0=RS_40._col1(Inner),Output:["_col1"] - <-Map 15 [SIMPLE_EDGE] + Conds:Union 14._col0=RS_40._col1(Inner),Output:["_col1"] + <-Map 10 [SIMPLE_EDGE] SHUFFLE [RS_40] PartitionCols:_col1 Select Operator [SEL_35] (rows=500/500 width=178) Output:["_col0","_col1"] Filter Operator [FIL_115] (rows=500/500 width=178) predicate:(key is not null and value is not null) - TableScan [TS_33] (rows=500/500 width=178) - default@src,x,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] - <-Union 10 [SIMPLE_EDGE] + TableScan [TS_11] (rows=500/500 width=178) + default@src,y,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] + <-Union 14 [SIMPLE_EDGE] <-Map 13 [CONTAINS] Reduce Output Operator [RS_39] PartitionCols:_col0 + Select Operator [SEL_23] (rows=25/25 width=89) + Output:["_col0"] + Filter Operator [FIL_112] (rows=25/25 width=89) + predicate:value is not null + TableScan [TS_21] (rows=25/25 width=89) + Output:["value"] + <-Map 15 [CONTAINS] + Reduce Output Operator [RS_39] + PartitionCols:_col0 Select Operator [SEL_26] (rows=500/500 width=91) Output:["_col0"] Filter Operator [FIL_113] (rows=500/500 width=91) predicate:value is not null TableScan [TS_24] (rows=500/500 width=91) Output:["value"] - <-Map 14 [CONTAINS] + <-Map 16 [CONTAINS] Reduce Output Operator [RS_39] PartitionCols:_col0 Select Operator [SEL_31] (rows=500/500 width=91) @@ -1200,43 +1205,87 @@ Stage-5 predicate:value is not null TableScan [TS_29] (rows=500/500 width=91) Output:["value"] - <-Map 9 [CONTAINS] - Reduce Output Operator [RS_39] + File Output Operator [FS_81] + table:{"name:":"default.b"} + Please refer to the previous Select Operator [SEL_45] + File Output Operator [FS_83] + table:{"name:":"default.c"} + Please refer to the previous Select Operator [SEL_45] + <-Reducer 4 [CONTAINS] + File Output Operator [FS_79] + table:{"name:":"default.a"} + Select Operator [SEL_20] (rows=148/170 width=177) + Output:["_col0","_col1"] + Merge Join Operator [MERGEJOIN_124] (rows=148/170 width=177) + Conds:RS_17._col1=RS_18._col0(Inner),Output:["_col1","_col4"] + <-Map 10 [SIMPLE_EDGE] + SHUFFLE [RS_18] + PartitionCols:_col0 + Select Operator [SEL_13] (rows=500/500 width=178) + Output:["_col0","_col1"] + Filter Operator [FIL_111] (rows=500/500 width=178) + predicate:key is not null + Please refer to the previous TableScan [TS_11] + <-Reducer 3 [SIMPLE_EDGE] + SHUFFLE [RS_17] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_123] (rows=61/108 width=86) + Conds:Union 2._col0=RS_15._col1(Inner),Output:["_col1"] + <-Map 7 [SIMPLE_EDGE] + SHUFFLE [RS_15] + PartitionCols:_col1 + Select Operator [SEL_10] (rows=25/25 width=175) + Output:["_col0","_col1"] + Filter Operator [FIL_110] (rows=25/25 width=175) + predicate:(key is not null and value is not null) + TableScan [TS_8] (rows=25/25 width=175) + default@src1,x,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] + <-Union 2 [SIMPLE_EDGE] + <-Map 1 [CONTAINS] + Reduce Output Operator [RS_14] PartitionCols:_col0 - Select Operator [SEL_23] (rows=25/25 width=89) + Select Operator [SEL_2] (rows=25/25 width=89) Output:["_col0"] - Filter Operator [FIL_112] (rows=25/25 width=89) + Filter Operator [FIL_108] (rows=25/25 width=89) predicate:value is not null - TableScan [TS_21] (rows=25/25 width=89) + TableScan [TS_0] (rows=25/25 width=89) + Output:["value"] + <-Map 6 [CONTAINS] + Reduce Output Operator [RS_14] + PartitionCols:_col0 + Select Operator [SEL_5] (rows=500/500 width=91) + Output:["_col0"] + Filter Operator [FIL_109] (rows=500/500 width=91) + predicate:value is not null + TableScan [TS_3] (rows=500/500 width=91) Output:["value"] File Output Operator [FS_81] table:{"name:":"default.b"} - Please refer to the previous Select Operator [SEL_45] + Please refer to the previous Select Operator [SEL_20] File Output Operator [FS_83] table:{"name:":"default.c"} - Please refer to the previous Select Operator [SEL_45] - <-Reducer 19 [CONTAINS] + Please refer to the previous Select Operator [SEL_20] + <-Reducer 9 [CONTAINS] File Output Operator [FS_79] table:{"name:":"default.a"} Select Operator [SEL_76] (rows=313/820 width=175) Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_128] (rows=313/820 width=175) - Conds:RS_73._col1=Union 22._col0(Inner),Output:["_col0","_col3"] - <-Reducer 18 [SIMPLE_EDGE] + Conds:RS_73._col1=Union 20._col0(Inner),Output:["_col0","_col3"] + <-Reducer 8 [SIMPLE_EDGE] SHUFFLE [RS_73] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_127] (rows=44/115 width=264) Conds:RS_70._col0=RS_71._col0(Inner),Output:["_col0","_col1","_col3"] - <-Map 17 [SIMPLE_EDGE] + <-Map 7 [SIMPLE_EDGE] SHUFFLE [RS_70] PartitionCols:_col0 Select Operator [SEL_50] (rows=25/25 width=175) Output:["_col0","_col1"] Filter Operator [FIL_117] (rows=25/25 width=175) predicate:(key is not null and value is not null) - TableScan [TS_48] (rows=25/25 width=175) - default@src1,x,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] - <-Map 20 [SIMPLE_EDGE] + Please refer to the previous TableScan [TS_8] + <-Map 18 [SIMPLE_EDGE] SHUFFLE [RS_71] PartitionCols:_col0 Select Operator [SEL_53] (rows=25/25 width=175) @@ -1245,8 +1294,8 @@ Stage-5 predicate:key is not null TableScan [TS_51] (rows=25/25 width=175) default@src1,y,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] - <-Union 22 [SIMPLE_EDGE] - <-Map 21 [CONTAINS] + <-Union 20 [SIMPLE_EDGE] + <-Map 19 [CONTAINS] Reduce Output Operator [RS_74] PartitionCols:_col0 Select Operator [SEL_56] (rows=25/25 width=89) @@ -1255,7 +1304,7 @@ Stage-5 predicate:value is not null TableScan [TS_54] (rows=25/25 width=89) Output:["value"] - <-Map 23 [CONTAINS] + <-Map 21 [CONTAINS] Reduce Output Operator [RS_74] PartitionCols:_col0 Select Operator [SEL_59] (rows=500/500 width=91) @@ -1264,7 +1313,7 @@ Stage-5 predicate:value is not null TableScan [TS_57] (rows=500/500 width=91) Output:["value"] - <-Map 24 [CONTAINS] + <-Map 22 [CONTAINS] Reduce Output Operator [RS_74] PartitionCols:_col0 Select Operator [SEL_64] (rows=500/500 width=91) @@ -1273,7 +1322,7 @@ Stage-5 predicate:value is not null TableScan [TS_62] (rows=500/500 width=91) Output:["value"] - <-Map 25 [CONTAINS] + <-Map 23 [CONTAINS] Reduce Output Operator [RS_74] PartitionCols:_col0 Select Operator [SEL_68] (rows=500/500 width=91) @@ -1288,61 +1337,6 @@ Stage-5 File Output Operator [FS_83] table:{"name:":"default.c"} Please refer to the previous Select Operator [SEL_76] - <-Reducer 4 [CONTAINS] - File Output Operator [FS_79] - table:{"name:":"default.a"} - Select Operator [SEL_20] (rows=148/170 width=177) - Output:["_col0","_col1"] - Merge Join Operator [MERGEJOIN_124] (rows=148/170 width=177) - Conds:RS_17._col1=RS_18._col0(Inner),Output:["_col1","_col4"] - <-Map 8 [SIMPLE_EDGE] - SHUFFLE [RS_18] - PartitionCols:_col0 - Select Operator [SEL_13] (rows=500/500 width=178) - Output:["_col0","_col1"] - Filter Operator [FIL_111] (rows=500/500 width=178) - predicate:key is not null - TableScan [TS_11] (rows=500/500 width=178) - default@src,y,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] - <-Reducer 3 [SIMPLE_EDGE] - SHUFFLE [RS_17] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_123] (rows=61/108 width=86) - Conds:Union 2._col0=RS_15._col1(Inner),Output:["_col1"] - <-Map 7 [SIMPLE_EDGE] - SHUFFLE [RS_15] - PartitionCols:_col1 - Select Operator [SEL_10] (rows=25/25 width=175) - Output:["_col0","_col1"] - Filter Operator [FIL_110] (rows=25/25 width=175) - predicate:(key is not null and value is not null) - TableScan [TS_8] (rows=25/25 width=175) - default@src1,x,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] - <-Union 2 [SIMPLE_EDGE] - <-Map 1 [CONTAINS] - Reduce Output Operator [RS_14] - PartitionCols:_col0 - Select Operator [SEL_2] (rows=25/25 width=89) - Output:["_col0"] - Filter Operator [FIL_108] (rows=25/25 width=89) - predicate:value is not null - TableScan [TS_0] (rows=25/25 width=89) - Output:["value"] - <-Map 6 [CONTAINS] - Reduce Output Operator [RS_14] - PartitionCols:_col0 - Select Operator [SEL_5] (rows=500/500 width=91) - Output:["_col0"] - Filter Operator [FIL_109] (rows=500/500 width=91) - predicate:value is not null - TableScan [TS_3] (rows=500/500 width=91) - Output:["value"] - File Output Operator [FS_81] - table:{"name:":"default.b"} - Please refer to the previous Select Operator [SEL_20] - File Output Operator [FS_83] - table:{"name:":"default.c"} - Please refer to the previous Select Operator [SEL_20] Stage-6 Stats-Aggr Operator Stage-1 @@ -1433,25 +1427,25 @@ Plan optimized by CBO. Vertex dependency in root stage Map 1 <- Union 2 (CONTAINS) Map 10 <- Union 2 (CONTAINS) -Map 13 <- Union 14 (CONTAINS) -Map 20 <- Union 14 (CONTAINS) -Map 21 <- Union 16 (CONTAINS) -Map 28 <- Union 29 (CONTAINS) -Map 35 <- Union 29 (CONTAINS) -Map 36 <- Union 31 (CONTAINS) -Map 37 <- Union 33 (CONTAINS) -Reducer 15 <- Union 14 (SIMPLE_EDGE), Union 16 (CONTAINS) -Reducer 17 <- Union 16 (SIMPLE_EDGE) -Reducer 18 <- Map 22 (SIMPLE_EDGE), Reducer 17 (SIMPLE_EDGE) -Reducer 19 <- Map 23 (SIMPLE_EDGE), Reducer 18 (SIMPLE_EDGE), Union 6 (CONTAINS) -Reducer 25 <- Map 24 (SIMPLE_EDGE), Map 27 (SIMPLE_EDGE) -Reducer 26 <- Reducer 25 (SIMPLE_EDGE), Reducer 34 (SIMPLE_EDGE), Union 8 (CONTAINS) +Map 17 <- Union 18 (CONTAINS) +Map 22 <- Union 18 (CONTAINS) +Map 23 <- Union 20 (CONTAINS) +Map 26 <- Union 27 (CONTAINS) +Map 33 <- Union 27 (CONTAINS) +Map 34 <- Union 29 (CONTAINS) +Map 35 <- Union 31 (CONTAINS) +Reducer 12 <- Map 11 (SIMPLE_EDGE), Map 25 (SIMPLE_EDGE) +Reducer 13 <- Reducer 12 (SIMPLE_EDGE), Reducer 32 (SIMPLE_EDGE), Union 8 (CONTAINS) +Reducer 15 <- Map 14 (SIMPLE_EDGE), Reducer 21 (SIMPLE_EDGE) +Reducer 16 <- Map 24 (SIMPLE_EDGE), Reducer 15 (SIMPLE_EDGE), Union 6 (CONTAINS) +Reducer 19 <- Union 18 (SIMPLE_EDGE), Union 20 (CONTAINS) +Reducer 21 <- Union 20 (SIMPLE_EDGE) +Reducer 28 <- Union 27 (SIMPLE_EDGE), Union 29 (CONTAINS) Reducer 3 <- Union 2 (SIMPLE_EDGE) Reducer 30 <- Union 29 (SIMPLE_EDGE), Union 31 (CONTAINS) -Reducer 32 <- Union 31 (SIMPLE_EDGE), Union 33 (CONTAINS) -Reducer 34 <- Union 33 (SIMPLE_EDGE) +Reducer 32 <- Union 31 (SIMPLE_EDGE) Reducer 4 <- Map 11 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) -Reducer 5 <- Map 12 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE), Union 6 (CONTAINS) +Reducer 5 <- Map 14 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE), Union 6 (CONTAINS) Reducer 7 <- Union 6 (SIMPLE_EDGE), Union 8 (CONTAINS) Reducer 9 <- Union 8 (SIMPLE_EDGE) @@ -1469,28 +1463,28 @@ Stage-5 Group By Operator [GBY_112] (rows=6300/319 width=178) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 <-Union 8 [SIMPLE_EDGE] - <-Reducer 26 [CONTAINS] + <-Reducer 13 [CONTAINS] Reduce Output Operator [RS_111] PartitionCols:_col0, _col1 Select Operator [SEL_107] (rows=313/304 width=175) Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_164] (rows=313/304 width=175) Conds:RS_104._col1=RS_105._col1(Inner),Output:["_col0","_col3"] - <-Reducer 25 [SIMPLE_EDGE] + <-Reducer 12 [SIMPLE_EDGE] SHUFFLE [RS_104] PartitionCols:_col1 Merge Join Operator [MERGEJOIN_163] (rows=44/115 width=264) Conds:RS_101._col0=RS_102._col0(Inner),Output:["_col0","_col1","_col3"] - <-Map 24 [SIMPLE_EDGE] + <-Map 11 [SIMPLE_EDGE] SHUFFLE [RS_101] PartitionCols:_col0 Select Operator [SEL_67] (rows=25/25 width=175) Output:["_col0","_col1"] Filter Operator [FIL_153] (rows=25/25 width=175) predicate:(key is not null and value is not null) - TableScan [TS_65] (rows=25/25 width=175) + TableScan [TS_12] (rows=25/25 width=175) default@src1,x,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] - <-Map 27 [SIMPLE_EDGE] + <-Map 25 [SIMPLE_EDGE] SHUFFLE [RS_102] PartitionCols:_col0 Select Operator [SEL_70] (rows=25/25 width=175) @@ -1499,15 +1493,15 @@ Stage-5 predicate:key is not null TableScan [TS_68] (rows=25/25 width=175) default@src1,y,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] - <-Reducer 34 [SIMPLE_EDGE] + <-Reducer 32 [SIMPLE_EDGE] SHUFFLE [RS_105] PartitionCols:_col1 Select Operator [SEL_100] (rows=1525/319 width=178) Output:["_col1"] Group By Operator [GBY_99] (rows=1525/319 width=178) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 33 [SIMPLE_EDGE] - <-Map 37 [CONTAINS] + <-Union 31 [SIMPLE_EDGE] + <-Map 35 [CONTAINS] Reduce Output Operator [RS_98] PartitionCols:_col1, _col0 Select Operator [SEL_94] (rows=500/500 width=178) @@ -1516,15 +1510,15 @@ Stage-5 predicate:value is not null TableScan [TS_92] (rows=500/500 width=178) Output:["key","value"] - <-Reducer 32 [CONTAINS] + <-Reducer 30 [CONTAINS] Reduce Output Operator [RS_98] PartitionCols:_col1, _col0 Select Operator [SEL_91] (rows=1025/319 width=178) Output:["_col0","_col1"] Group By Operator [GBY_90] (rows=1025/319 width=178) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 31 [SIMPLE_EDGE] - <-Map 36 [CONTAINS] + <-Union 29 [SIMPLE_EDGE] + <-Map 34 [CONTAINS] Reduce Output Operator [RS_89] PartitionCols:_col1, _col0 Select Operator [SEL_85] (rows=500/500 width=178) @@ -1533,15 +1527,15 @@ Stage-5 predicate:value is not null TableScan [TS_83] (rows=500/500 width=178) Output:["key","value"] - <-Reducer 30 [CONTAINS] + <-Reducer 28 [CONTAINS] Reduce Output Operator [RS_89] PartitionCols:_col1, _col0 Select Operator [SEL_82] (rows=525/319 width=178) Output:["_col0","_col1"] Group By Operator [GBY_81] (rows=525/319 width=178) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 29 [SIMPLE_EDGE] - <-Map 28 [CONTAINS] + <-Union 27 [SIMPLE_EDGE] + <-Map 26 [CONTAINS] Reduce Output Operator [RS_80] PartitionCols:_col1, _col0 Select Operator [SEL_73] (rows=25/25 width=175) @@ -1550,7 +1544,7 @@ Stage-5 predicate:value is not null TableScan [TS_71] (rows=25/25 width=175) Output:["key","value"] - <-Map 35 [CONTAINS] + <-Map 33 [CONTAINS] Reduce Output Operator [RS_80] PartitionCols:_col1, _col0 Select Operator [SEL_76] (rows=500/500 width=178) @@ -1565,14 +1559,14 @@ Stage-5 Group By Operator [GBY_63] (rows=5987/309 width=178) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 <-Union 6 [SIMPLE_EDGE] - <-Reducer 19 [CONTAINS] + <-Reducer 16 [CONTAINS] Reduce Output Operator [RS_62] PartitionCols:_col0, _col1 Select Operator [SEL_58] (rows=5839/1056 width=178) Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_162] (rows=5839/1056 width=178) Conds:RS_55._col2=RS_56._col0(Inner),Output:["_col2","_col5"] - <-Map 23 [SIMPLE_EDGE] + <-Map 24 [SIMPLE_EDGE] SHUFFLE [RS_56] PartitionCols:_col0 Select Operator [SEL_51] (rows=500/500 width=178) @@ -1581,29 +1575,29 @@ Stage-5 predicate:key is not null TableScan [TS_49] (rows=500/500 width=178) default@src,y,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] - <-Reducer 18 [SIMPLE_EDGE] + <-Reducer 15 [SIMPLE_EDGE] SHUFFLE [RS_55] PartitionCols:_col2 Merge Join Operator [MERGEJOIN_161] (rows=2394/512 width=87) Conds:RS_52._col1=RS_53._col1(Inner),Output:["_col2"] - <-Map 22 [SIMPLE_EDGE] + <-Map 14 [SIMPLE_EDGE] SHUFFLE [RS_53] PartitionCols:_col1 Select Operator [SEL_48] (rows=500/500 width=178) Output:["_col0","_col1"] Filter Operator [FIL_151] (rows=500/500 width=178) predicate:(key is not null and value is not null) - TableScan [TS_46] (rows=500/500 width=178) - default@src,x,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] - <-Reducer 17 [SIMPLE_EDGE] + TableScan [TS_15] (rows=500/500 width=178) + default@src,y,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] + <-Reducer 21 [SIMPLE_EDGE] SHUFFLE [RS_52] PartitionCols:_col1 Select Operator [SEL_45] (rows=1025/319 width=178) Output:["_col1"] Group By Operator [GBY_44] (rows=1025/319 width=178) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 16 [SIMPLE_EDGE] - <-Map 21 [CONTAINS] + <-Union 20 [SIMPLE_EDGE] + <-Map 23 [CONTAINS] Reduce Output Operator [RS_43] PartitionCols:_col1, _col0 Select Operator [SEL_39] (rows=500/500 width=178) @@ -1612,15 +1606,15 @@ Stage-5 predicate:value is not null TableScan [TS_37] (rows=500/500 width=178) Output:["key","value"] - <-Reducer 15 [CONTAINS] + <-Reducer 19 [CONTAINS] Reduce Output Operator [RS_43] PartitionCols:_col1, _col0 Select Operator [SEL_36] (rows=525/319 width=178) Output:["_col0","_col1"] Group By Operator [GBY_35] (rows=525/319 width=178) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 14 [SIMPLE_EDGE] - <-Map 13 [CONTAINS] + <-Union 18 [SIMPLE_EDGE] + <-Map 17 [CONTAINS] Reduce Output Operator [RS_34] PartitionCols:_col1, _col0 Select Operator [SEL_27] (rows=25/25 width=175) @@ -1629,7 +1623,7 @@ Stage-5 predicate:value is not null TableScan [TS_25] (rows=25/25 width=175) Output:["key","value"] - <-Map 20 [CONTAINS] + <-Map 22 [CONTAINS] Reduce Output Operator [RS_34] PartitionCols:_col1, _col0 Select Operator [SEL_30] (rows=500/500 width=178) @@ -1645,15 +1639,14 @@ Stage-5 Output:["_col0","_col1"] Merge Join Operator [MERGEJOIN_160] (rows=148/61 width=177) Conds:RS_21._col2=RS_22._col0(Inner),Output:["_col2","_col5"] - <-Map 12 [SIMPLE_EDGE] + <-Map 14 [SIMPLE_EDGE] SHUFFLE [RS_22] PartitionCols:_col0 Select Operator [SEL_17] (rows=500/500 width=178) Output:["_col0","_col1"] Filter Operator [FIL_147] (rows=500/500 width=178) predicate:key is not null - TableScan [TS_15] (rows=500/500 width=178) - default@src,y,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] + Please refer to the previous TableScan [TS_15] <-Reducer 4 [SIMPLE_EDGE] SHUFFLE [RS_21] PartitionCols:_col2 @@ -1666,8 +1659,7 @@ Stage-5 Output:["_col0","_col1"] Filter Operator [FIL_146] (rows=25/25 width=175) predicate:(key is not null and value is not null) - TableScan [TS_12] (rows=25/25 width=175) - default@src1,x,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] + Please refer to the previous TableScan [TS_12] <-Reducer 3 [SIMPLE_EDGE] SHUFFLE [RS_18] PartitionCols:_col1