opRules.put(new RuleRegExp("R1", TableScanOperator.getOperatorName() + ".*" +
ReduceSinkOperator.getOperatorName()), vnp);
opRules.put(new RuleRegExp("R2", TableScanOperator.getOperatorName() + ".*"
+ FileSinkOperator.getOperatorName()), vnp);
Dispatcher disp = new DefaultRuleDispatcher(vnp, opRules, null);
GraphWalker ogw = new PreOrderWalker(disp);
// iterator the mapper operator tree
ArrayList<Node> topNodes = new ArrayList<Node>();
topNodes.addAll(mapWork.getAliasToWork().values());
HashMap<Node, Object> nodeOutput = new HashMap<Node, Object>();
ogw.startWalking(topNodes, nodeOutput);
Map<String, Map<Integer, String>> columnVectorTypes = vnp.getScratchColumnVectorTypes();
mapWork.setScratchColumnVectorTypes(columnVectorTypes);
Map<String, Map<String, Integer>> columnMap = vnp.getScratchColumnMap();
mapWork.setScratchColumnMap(columnMap);