diff --git a/ql/src/test/queries/clientpositive/explainanalyze_1.q b/ql/src/test/queries/clientpositive/explainanalyze_1.q index a4b3dc5..0a33a4f 100644 --- a/ql/src/test/queries/clientpositive/explainanalyze_1.q +++ b/ql/src/test/queries/clientpositive/explainanalyze_1.q @@ -1,3 +1,4 @@ +set hive.map.aggr=false; set hive.mapred.mode=nonstrict; explain analyze select * from src a union all select * from src b limit 10; diff --git a/ql/src/test/queries/clientpositive/explainanalyze_2.q b/ql/src/test/queries/clientpositive/explainanalyze_2.q index 9cfcf0d..b764d7d 100644 --- a/ql/src/test/queries/clientpositive/explainanalyze_2.q +++ b/ql/src/test/queries/clientpositive/explainanalyze_2.q @@ -1,3 +1,5 @@ +set hive.map.aggr=false; + set hive.strict.checks.bucketing=false; set hive.explain.user=true; diff --git a/ql/src/test/queries/clientpositive/explainanalyze_3.q b/ql/src/test/queries/clientpositive/explainanalyze_3.q index 6ccdffb..6a5e3b3 100644 --- a/ql/src/test/queries/clientpositive/explainanalyze_3.q +++ b/ql/src/test/queries/clientpositive/explainanalyze_3.q @@ -1,3 +1,5 @@ +set hive.map.aggr=false; + set hive.strict.checks.bucketing=false; set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider; diff --git a/ql/src/test/queries/clientpositive/explainanalyze_4.q b/ql/src/test/queries/clientpositive/explainanalyze_4.q index dad397b..498a128 100644 --- a/ql/src/test/queries/clientpositive/explainanalyze_4.q +++ b/ql/src/test/queries/clientpositive/explainanalyze_4.q @@ -1,3 +1,5 @@ +set hive.map.aggr=false; + set hive.mapred.mode=nonstrict; set hive.explain.user=true; diff --git a/ql/src/test/queries/clientpositive/explainanalyze_5.q b/ql/src/test/queries/clientpositive/explainanalyze_5.q index 577b766..696064c 100644 --- a/ql/src/test/queries/clientpositive/explainanalyze_5.q +++ b/ql/src/test/queries/clientpositive/explainanalyze_5.q @@ -1,3 +1,5 @@ +set hive.map.aggr=false; + set hive.stats.column.autogather=true; drop table src_stats; diff --git a/ql/src/test/results/clientpositive/tez/explainanalyze_1.q.out b/ql/src/test/results/clientpositive/tez/explainanalyze_1.q.out index 6fe287a..05a4f5f 100644 --- a/ql/src/test/results/clientpositive/tez/explainanalyze_1.q.out +++ b/ql/src/test/results/clientpositive/tez/explainanalyze_1.q.out @@ -239,18 +239,16 @@ Stage-0 limit:-1 Stage-1 Reducer 2 - File Output Operator [FS_6] - Group By Operator [GBY_4] (rows=205/309 width=95) - Output:["_col0","_col1"],aggregations:["count(VALUE._col0)"],keys:KEY._col0 + File Output Operator [FS_5] + Group By Operator [GBY_3] (rows=205/309 width=95) + Output:["_col0","_col1"],aggregations:["count(KEY._col0)"],keys:KEY._col0 <-Map 1 [SIMPLE_EDGE] - SHUFFLE [RS_3] - PartitionCols:_col0 - Group By Operator [GBY_2] (rows=205/309 width=95) - Output:["_col0","_col1"],aggregations:["count(key)"],keys:key - Select Operator [SEL_1] (rows=500/500 width=87) - Output:["key"] - TableScan [TS_0] (rows=500/500 width=87) - default@src,src,Tbl:COMPLETE,Col:COMPLETE,Output:["key"] + SHUFFLE [RS_2] + PartitionCols:key + Select Operator [SEL_1] (rows=500/500 width=87) + Output:["key"] + TableScan [TS_0] (rows=500/500 width=87) + default@src,src,Tbl:COMPLETE,Col:COMPLETE,Output:["key"] PREHOOK: query: select count(*) from (select key, count(key) from src group by key)subq PREHOOK: type: QUERY @@ -284,33 +282,31 @@ Stage-0 limit:-1 Stage-1 Reducer 3 - File Output Operator [FS_14] - Group By Operator [GBY_12] (rows=1/1 width=8) - Output:["_col0"],aggregations:["count(VALUE._col0)"] + File Output Operator [FS_13] + Group By Operator [GBY_11] (rows=1/1 width=8) + Output:["_col0"],aggregations:["count()"] <-Reducer 2 [SIMPLE_EDGE] - SHUFFLE [RS_11] - Group By Operator [GBY_10] (rows=1/1 width=8) - Output:["_col0"],aggregations:["count()"] - Merge Join Operator [MERGEJOIN_19] (rows=382/0 width=8) - Conds:RS_6._col0=RS_7._col0(Inner) - <-Map 1 [SIMPLE_EDGE] - SHUFFLE [RS_6] - PartitionCols:_col0 - Select Operator [SEL_2] (rows=166/497 width=87) - Output:["_col0"] - Filter Operator [FIL_17] (rows=166/497 width=87) - predicate:(UDFToDouble(key) > 0.0) - TableScan [TS_0] (rows=500/500 width=87) - default@src,a,Tbl:COMPLETE,Col:COMPLETE,Output:["key"] - <-Map 4 [SIMPLE_EDGE] - SHUFFLE [RS_7] - PartitionCols:_col0 - Select Operator [SEL_5] (rows=166/0 width=91) - Output:["_col0"] - Filter Operator [FIL_18] (rows=166/0 width=91) - predicate:(UDFToDouble(value) > 0.0) - TableScan [TS_3] (rows=500/500 width=91) - default@src,b,Tbl:COMPLETE,Col:COMPLETE,Output:["value"] + SHUFFLE [RS_10] + Merge Join Operator [MERGEJOIN_18] (rows=382/0 width=8) + Conds:RS_6._col0=RS_7._col0(Inner) + <-Map 1 [SIMPLE_EDGE] + SHUFFLE [RS_6] + PartitionCols:_col0 + Select Operator [SEL_2] (rows=166/497 width=87) + Output:["_col0"] + Filter Operator [FIL_16] (rows=166/497 width=87) + predicate:(UDFToDouble(key) > 0.0) + TableScan [TS_0] (rows=500/500 width=87) + default@src,a,Tbl:COMPLETE,Col:COMPLETE,Output:["key"] + <-Map 4 [SIMPLE_EDGE] + SHUFFLE [RS_7] + PartitionCols:_col0 + Select Operator [SEL_5] (rows=166/0 width=91) + Output:["_col0"] + Filter Operator [FIL_17] (rows=166/0 width=91) + predicate:(UDFToDouble(value) > 0.0) + TableScan [TS_3] (rows=500/500 width=91) + default@src,b,Tbl:COMPLETE,Col:COMPLETE,Output:["value"] PREHOOK: query: select count(*) from src a join src b on a.key = b.key where a.key > 0 PREHOOK: type: QUERY @@ -335,33 +331,31 @@ Stage-0 limit:-1 Stage-1 Reducer 3 - File Output Operator [FS_14] - Group By Operator [GBY_12] (rows=1/1 width=8) - Output:["_col0"],aggregations:["count(VALUE._col0)"] + File Output Operator [FS_13] + Group By Operator [GBY_11] (rows=1/1 width=8) + Output:["_col0"],aggregations:["count()"] <-Reducer 2 [SIMPLE_EDGE] - SHUFFLE [RS_11] - Group By Operator [GBY_10] (rows=1/1 width=8) - Output:["_col0"],aggregations:["count()"] - Merge Join Operator [MERGEJOIN_19] (rows=399/1019 width=8) - Conds:RS_6._col0=RS_7._col0(Inner) - <-Map 1 [SIMPLE_EDGE] - SHUFFLE [RS_6] - PartitionCols:_col0 - Select Operator [SEL_2] (rows=166/497 width=87) - Output:["_col0"] - Filter Operator [FIL_17] (rows=166/497 width=87) - predicate:(UDFToDouble(key) > 0.0) - TableScan [TS_0] (rows=500/500 width=87) - default@src,a,Tbl:COMPLETE,Col:COMPLETE,Output:["key"] - <-Map 4 [SIMPLE_EDGE] - SHUFFLE [RS_7] - PartitionCols:_col0 - Select Operator [SEL_5] (rows=166/497 width=87) - Output:["_col0"] - Filter Operator [FIL_18] (rows=166/497 width=87) - predicate:(UDFToDouble(key) > 0.0) - TableScan [TS_3] (rows=500/500 width=87) - default@src,b,Tbl:COMPLETE,Col:COMPLETE,Output:["key"] + SHUFFLE [RS_10] + Merge Join Operator [MERGEJOIN_18] (rows=399/1019 width=8) + Conds:RS_6._col0=RS_7._col0(Inner) + <-Map 1 [SIMPLE_EDGE] + SHUFFLE [RS_6] + PartitionCols:_col0 + Select Operator [SEL_2] (rows=166/497 width=87) + Output:["_col0"] + Filter Operator [FIL_16] (rows=166/497 width=87) + predicate:(UDFToDouble(key) > 0.0) + TableScan [TS_0] (rows=500/500 width=87) + default@src,a,Tbl:COMPLETE,Col:COMPLETE,Output:["key"] + <-Map 4 [SIMPLE_EDGE] + SHUFFLE [RS_7] + PartitionCols:_col0 + Select Operator [SEL_5] (rows=166/497 width=87) + Output:["_col0"] + Filter Operator [FIL_17] (rows=166/497 width=87) + predicate:(UDFToDouble(key) > 0.0) + TableScan [TS_3] (rows=500/500 width=87) + default@src,b,Tbl:COMPLETE,Col:COMPLETE,Output:["key"] PREHOOK: query: select count(*) from src a join src b on a.key = b.key where a.key > 0 PREHOOK: type: QUERY diff --git a/ql/src/test/results/clientpositive/tez/explainanalyze_2.q.out b/ql/src/test/results/clientpositive/tez/explainanalyze_2.q.out index 23d151c..c99acc9 100644 --- a/ql/src/test/results/clientpositive/tez/explainanalyze_2.q.out +++ b/ql/src/test/results/clientpositive/tez/explainanalyze_2.q.out @@ -58,134 +58,122 @@ Stage-0 limit:-1 Stage-1 Reducer 7 - File Output Operator [FS_59] - Group By Operator [GBY_57] (rows=28/15 width=177) + File Output Operator [FS_56] + 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] - Reduce Output Operator [RS_56] + Reduce Output Operator [RS_53] PartitionCols:_col0, _col1 - Group By Operator [GBY_55] (rows=28/30 width=177) - Output:["_col0","_col1"],keys:_col0, _col1 - Select Operator [SEL_51] (rows=73/61 width=177) - Output:["_col0","_col1"] - Merge Join Operator [MERGEJOIN_85] (rows=73/61 width=177) - Conds:RS_48._col2=RS_49._col0(Inner),Output:["_col1","_col2"] - <-Map 18 [SIMPLE_EDGE] - SHUFFLE [RS_49] - PartitionCols:_col0 - Select Operator [SEL_44] (rows=500/500 width=87) - Output:["_col0"] - Filter Operator [FIL_81] (rows=500/500 width=87) - predicate:key is not null - TableScan [TS_42] (rows=500/500 width=87) - default@src,y,Tbl:COMPLETE,Col:COMPLETE,Output:["key"] - <-Reducer 14 [SIMPLE_EDGE] - SHUFFLE [RS_48] - PartitionCols:_col2 - Merge Join Operator [MERGEJOIN_84] (rows=30/52 width=177) - Conds:RS_45._col1=RS_46._col1(Inner),Output:["_col1","_col2"] - <-Map 17 [SIMPLE_EDGE] - SHUFFLE [RS_46] - PartitionCols:_col1 - Select Operator [SEL_41] (rows=25/25 width=175) - Output:["_col0","_col1"] - Filter Operator [FIL_80] (rows=25/25 width=175) - predicate:(key is not null and value is not null) - TableScan [TS_39] (rows=25/25 width=175) - default@src1,x,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] - <-Reducer 13 [SIMPLE_EDGE] - SHUFFLE [RS_45] - PartitionCols:_col1 - Select Operator [SEL_38] (rows=262/319 width=178) - Output:["_col1"] - Group By Operator [GBY_37] (rows=262/319 width=178) - Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 12 [SIMPLE_EDGE] - <-Map 11 [CONTAINS] - Reduce Output Operator [RS_36] - PartitionCols:_col0, _col1 - Group By Operator [GBY_35] (rows=262/331 width=178) - Output:["_col0","_col1"],keys:_col1, _col0 - Select Operator [SEL_28] (rows=25/25 width=175) - Output:["_col0","_col1"] - Filter Operator [FIL_78] (rows=25/25 width=175) - predicate:value is not null - TableScan [TS_26] (rows=25/25 width=175) - Output:["key","value"] - <-Map 16 [CONTAINS] - Reduce Output Operator [RS_36] - PartitionCols:_col0, _col1 - Group By Operator [GBY_35] (rows=262/331 width=178) - Output:["_col0","_col1"],keys:_col1, _col0 - Select Operator [SEL_31] (rows=500/500 width=178) - Output:["_col0","_col1"] - Filter Operator [FIL_79] (rows=500/500 width=178) - predicate:value is not null - TableScan [TS_29] (rows=500/500 width=178) - Output:["key","value"] + 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] + SHUFFLE [RS_47] + PartitionCols:_col0 + Select Operator [SEL_42] (rows=500/500 width=87) + Output:["_col0"] + Filter Operator [FIL_78] (rows=500/500 width=87) + 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] + 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] + 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) + default@src1,x,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] + <-Reducer 13 [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] + Reduce Output Operator [RS_34] + PartitionCols:_col1, _col0 + Select Operator [SEL_27] (rows=25/25 width=175) + Output:["_col0","_col1"] + Filter Operator [FIL_75] (rows=25/25 width=175) + predicate:value is not null + TableScan [TS_25] (rows=25/25 width=175) + Output:["key","value"] + <-Map 16 [CONTAINS] + Reduce Output Operator [RS_34] + PartitionCols:_col1, _col0 + Select Operator [SEL_30] (rows=500/500 width=178) + Output:["_col0","_col1"] + Filter Operator [FIL_76] (rows=500/500 width=178) + predicate:value is not null + TableScan [TS_28] (rows=500/500 width=178) + Output:["key","value"] <-Reducer 5 [CONTAINS] - Reduce Output Operator [RS_56] + Reduce Output Operator [RS_53] PartitionCols:_col0, _col1 - Group By Operator [GBY_55] (rows=28/30 width=177) - Output:["_col0","_col1"],keys:_col0, _col1 - Select Operator [SEL_25] (rows=73/61 width=177) - Output:["_col0","_col1"] - Merge Join Operator [MERGEJOIN_83] (rows=73/61 width=177) - Conds:RS_22._col2=RS_23._col0(Inner),Output:["_col1","_col2"] - <-Map 10 [SIMPLE_EDGE] - SHUFFLE [RS_23] - PartitionCols:_col0 - Select Operator [SEL_18] (rows=500/500 width=87) - Output:["_col0"] - Filter Operator [FIL_77] (rows=500/500 width=87) - predicate:key is not null - TableScan [TS_16] (rows=500/500 width=87) - default@src,y,Tbl:COMPLETE,Col:COMPLETE,Output:["key"] - <-Reducer 4 [SIMPLE_EDGE] - SHUFFLE [RS_22] - PartitionCols:_col2 - Merge Join Operator [MERGEJOIN_82] (rows=30/52 width=177) - Conds:RS_19._col1=RS_20._col1(Inner),Output:["_col1","_col2"] - <-Map 9 [SIMPLE_EDGE] - SHUFFLE [RS_20] - PartitionCols:_col1 - Select Operator [SEL_15] (rows=25/25 width=175) - Output:["_col0","_col1"] - Filter Operator [FIL_76] (rows=25/25 width=175) - predicate:(key is not null and value is not null) - TableScan [TS_13] (rows=25/25 width=175) - default@src1,x,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] - <-Reducer 3 [SIMPLE_EDGE] - SHUFFLE [RS_19] - PartitionCols:_col1 - Select Operator [SEL_12] (rows=262/319 width=178) - Output:["_col1"] - Group By Operator [GBY_11] (rows=262/319 width=178) - Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 2 [SIMPLE_EDGE] - <-Map 1 [CONTAINS] - Reduce Output Operator [RS_10] - PartitionCols:_col0, _col1 - Group By Operator [GBY_9] (rows=262/331 width=178) - Output:["_col0","_col1"],keys:_col1, _col0 - Select Operator [SEL_2] (rows=25/25 width=175) - Output:["_col0","_col1"] - Filter Operator [FIL_74] (rows=25/25 width=175) - predicate:value is not null - TableScan [TS_0] (rows=25/25 width=175) - Output:["key","value"] - <-Map 8 [CONTAINS] - Reduce Output Operator [RS_10] - PartitionCols:_col0, _col1 - Group By Operator [GBY_9] (rows=262/331 width=178) - Output:["_col0","_col1"],keys:_col1, _col0 - Select Operator [SEL_5] (rows=500/500 width=178) - Output:["_col0","_col1"] - Filter Operator [FIL_75] (rows=500/500 width=178) - predicate:value is not null - TableScan [TS_3] (rows=500/500 width=178) - Output:["key","value"] + Select Operator [SEL_24] (rows=148/61 width=177) + 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] + SHUFFLE [RS_22] + PartitionCols:_col0 + Select Operator [SEL_17] (rows=500/500 width=87) + Output:["_col0"] + Filter Operator [FIL_74] (rows=500/500 width=87) + predicate:key is not null + TableScan [TS_15] (rows=500/500 width=87) + default@src,y,Tbl:COMPLETE,Col:COMPLETE,Output:["key"] + <-Reducer 4 [SIMPLE_EDGE] + SHUFFLE [RS_21] + PartitionCols:_col2 + Merge Join Operator [MERGEJOIN_79] (rows=61/52 width=177) + Conds:RS_18._col1=RS_19._col1(Inner),Output:["_col1","_col2"] + <-Map 9 [SIMPLE_EDGE] + SHUFFLE [RS_19] + PartitionCols:_col1 + Select Operator [SEL_14] (rows=25/25 width=175) + 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"] + <-Reducer 3 [SIMPLE_EDGE] + SHUFFLE [RS_18] + PartitionCols:_col1 + Select Operator [SEL_11] (rows=525/319 width=178) + Output:["_col1"] + Group By Operator [GBY_10] (rows=525/319 width=178) + Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 + <-Union 2 [SIMPLE_EDGE] + <-Map 1 [CONTAINS] + Reduce Output Operator [RS_9] + PartitionCols:_col1, _col0 + Select Operator [SEL_2] (rows=25/25 width=175) + Output:["_col0","_col1"] + Filter Operator [FIL_71] (rows=25/25 width=175) + predicate:value is not null + TableScan [TS_0] (rows=25/25 width=175) + Output:["key","value"] + <-Map 8 [CONTAINS] + Reduce Output Operator [RS_9] + PartitionCols:_col1, _col0 + Select Operator [SEL_5] (rows=500/500 width=178) + Output:["_col0","_col1"] + Filter Operator [FIL_72] (rows=500/500 width=178) + predicate:value is not null + TableScan [TS_3] (rows=500/500 width=178) + Output:["key","value"] PREHOOK: query: SELECT x.key, y.value FROM src1 x JOIN src y ON (x.key = y.key) @@ -275,267 +263,235 @@ Stage-0 limit:-1 Stage-1 Reducer 9 - File Output Operator [FS_122] - Group By Operator [GBY_120] (rows=107/15 width=177) + File Output Operator [FS_114] + 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] - Reduce Output Operator [RS_119] + Reduce Output Operator [RS_111] PartitionCols:_col0, _col1 - Group By Operator [GBY_118] (rows=107/30 width=177) - Output:["_col0","_col1"],keys:_col0, _col1 - Select Operator [SEL_114] (rows=124/61 width=177) - Output:["_col0","_col1"] - Merge Join Operator [MERGEJOIN_170] (rows=124/61 width=177) - Conds:RS_111._col2=RS_112._col0(Inner),Output:["_col2","_col5"] - <-Map 37 [SIMPLE_EDGE] - SHUFFLE [RS_112] - PartitionCols:_col0 - Select Operator [SEL_107] (rows=500/500 width=178) - Output:["_col0","_col1"] - Filter Operator [FIL_164] (rows=500/500 width=178) - predicate:key is not null - TableScan [TS_105] (rows=500/500 width=178) - default@src,y,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] - <-Reducer 31 [SIMPLE_EDGE] - SHUFFLE [RS_111] - PartitionCols:_col2 - Merge Join Operator [MERGEJOIN_169] (rows=51/52 width=86) - Conds:RS_108._col1=RS_109._col1(Inner),Output:["_col2"] - <-Map 36 [SIMPLE_EDGE] - SHUFFLE [RS_109] - PartitionCols:_col1 - Select Operator [SEL_104] (rows=25/25 width=175) + 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] + 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) + default@src,y,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] + <-Reducer 31 [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] + 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) + default@src1,x,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] + <-Reducer 30 [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] + Reduce Output Operator [RS_92] + PartitionCols:_col1, _col0 + Select Operator [SEL_88] (rows=500/500 width=178) + Output:["_col0","_col1"] + Filter Operator [FIL_154] (rows=500/500 width=178) + predicate:value is not null + TableScan [TS_86] (rows=500/500 width=178) + Output:["key","value"] + <-Reducer 28 [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] + Reduce Output Operator [RS_83] + PartitionCols:_col1, _col0 + Select Operator [SEL_79] (rows=500/500 width=178) + Output:["_col0","_col1"] + Filter Operator [FIL_153] (rows=500/500 width=178) + predicate:value is not null + TableScan [TS_77] (rows=500/500 width=178) + Output:["key","value"] + <-Reducer 26 [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] + Reduce Output Operator [RS_74] + PartitionCols:_col1, _col0 + Select Operator [SEL_67] (rows=25/25 width=175) + Output:["_col0","_col1"] + Filter Operator [FIL_151] (rows=25/25 width=175) + predicate:value is not null + TableScan [TS_65] (rows=25/25 width=175) + Output:["key","value"] + <-Map 33 [CONTAINS] + Reduce Output Operator [RS_74] + PartitionCols:_col1, _col0 + Select Operator [SEL_70] (rows=500/500 width=178) + Output:["_col0","_col1"] + Filter Operator [FIL_152] (rows=500/500 width=178) + predicate:value is not null + TableScan [TS_68] (rows=500/500 width=178) + Output:["key","value"] + <-Reducer 7 [CONTAINS] + Reduce Output Operator [RS_111] + PartitionCols:_col0, _col1 + 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] + 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] + SHUFFLE [RS_56] + PartitionCols:_col0 + Select Operator [SEL_51] (rows=500/500 width=178) Output:["_col0","_col1"] - Filter Operator [FIL_163] (rows=25/25 width=175) - predicate:(key is not null and value is not null) - TableScan [TS_102] (rows=25/25 width=175) - default@src1,x,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] - <-Reducer 30 [SIMPLE_EDGE] - SHUFFLE [RS_108] - PartitionCols:_col1 - Select Operator [SEL_101] (rows=440/319 width=178) - Output:["_col1"] - Group By Operator [GBY_100] (rows=440/319 width=178) - Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 29 [SIMPLE_EDGE] - <-Map 35 [CONTAINS] - Reduce Output Operator [RS_99] - PartitionCols:_col0, _col1 - Group By Operator [GBY_98] (rows=440/628 width=178) - Output:["_col0","_col1"],keys:_col1, _col0 - Select Operator [SEL_94] (rows=500/500 width=178) - Output:["_col0","_col1"] - Filter Operator [FIL_162] (rows=500/500 width=178) - predicate:value is not null - TableScan [TS_92] (rows=500/500 width=178) - Output:["key","value"] - <-Reducer 28 [CONTAINS] - Reduce Output Operator [RS_99] - PartitionCols:_col0, _col1 - Group By Operator [GBY_98] (rows=440/628 width=178) - Output:["_col0","_col1"],keys:_col1, _col0 - Select Operator [SEL_91] (rows=381/319 width=178) - Output:["_col0","_col1"] - Group By Operator [GBY_90] (rows=381/319 width=178) - Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 27 [SIMPLE_EDGE] - <-Map 34 [CONTAINS] - Reduce Output Operator [RS_89] - PartitionCols:_col0, _col1 - Group By Operator [GBY_88] (rows=381/628 width=178) - Output:["_col0","_col1"],keys:_col1, _col0 - Select Operator [SEL_84] (rows=500/500 width=178) + Filter Operator [FIL_150] (rows=500/500 width=178) + 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] + 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] + 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] + 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] + Reduce Output Operator [RS_43] + PartitionCols:_col1, _col0 + Select Operator [SEL_39] (rows=500/500 width=178) + Output:["_col0","_col1"] + Filter Operator [FIL_148] (rows=500/500 width=178) + predicate:value is not null + TableScan [TS_37] (rows=500/500 width=178) + Output:["key","value"] + <-Reducer 15 [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] + Reduce Output Operator [RS_34] + PartitionCols:_col1, _col0 + Select Operator [SEL_27] (rows=25/25 width=175) Output:["_col0","_col1"] - Filter Operator [FIL_161] (rows=500/500 width=178) + Filter Operator [FIL_146] (rows=25/25 width=175) predicate:value is not null - TableScan [TS_82] (rows=500/500 width=178) + TableScan [TS_25] (rows=25/25 width=175) Output:["key","value"] - <-Reducer 26 [CONTAINS] - Reduce Output Operator [RS_89] - PartitionCols:_col0, _col1 - Group By Operator [GBY_88] (rows=381/628 width=178) - Output:["_col0","_col1"],keys:_col1, _col0 - Select Operator [SEL_81] (rows=262/319 width=178) + <-Map 20 [CONTAINS] + Reduce Output Operator [RS_34] + PartitionCols:_col1, _col0 + Select Operator [SEL_30] (rows=500/500 width=178) Output:["_col0","_col1"] - Group By Operator [GBY_80] (rows=262/319 width=178) - Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 25 [SIMPLE_EDGE] - <-Map 24 [CONTAINS] - Reduce Output Operator [RS_79] - PartitionCols:_col0, _col1 - Group By Operator [GBY_78] (rows=262/331 width=178) - Output:["_col0","_col1"],keys:_col1, _col0 - Select Operator [SEL_71] (rows=25/25 width=175) - Output:["_col0","_col1"] - Filter Operator [FIL_159] (rows=25/25 width=175) - predicate:value is not null - TableScan [TS_69] (rows=25/25 width=175) - Output:["key","value"] - <-Map 33 [CONTAINS] - Reduce Output Operator [RS_79] - PartitionCols:_col0, _col1 - Group By Operator [GBY_78] (rows=262/331 width=178) - Output:["_col0","_col1"],keys:_col1, _col0 - Select Operator [SEL_74] (rows=500/500 width=178) - Output:["_col0","_col1"] - Filter Operator [FIL_160] (rows=500/500 width=178) - predicate:value is not null - TableScan [TS_72] (rows=500/500 width=178) - Output:["key","value"] - <-Reducer 7 [CONTAINS] - Reduce Output Operator [RS_119] - PartitionCols:_col0, _col1 - Group By Operator [GBY_118] (rows=107/30 width=177) - Output:["_col0","_col1"],keys:_col0, _col1 - Group By Operator [GBY_67] (rows=90/15 width=177) - Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 6 [SIMPLE_EDGE] - <-Reducer 19 [CONTAINS] - Reduce Output Operator [RS_66] - PartitionCols:_col0, _col1 - Group By Operator [GBY_65] (rows=90/30 width=177) - Output:["_col0","_col1"],keys:_col0, _col1 - Select Operator [SEL_61] (rows=107/61 width=177) - Output:["_col0","_col1"] - Merge Join Operator [MERGEJOIN_168] (rows=107/61 width=177) - Conds:RS_58._col2=RS_59._col0(Inner),Output:["_col2","_col5"] - <-Map 23 [SIMPLE_EDGE] - SHUFFLE [RS_59] - PartitionCols:_col0 - Select Operator [SEL_54] (rows=500/500 width=178) - Output:["_col0","_col1"] - Filter Operator [FIL_158] (rows=500/500 width=178) - predicate:key is not null - TableScan [TS_52] (rows=500/500 width=178) - default@src,y,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] - <-Reducer 18 [SIMPLE_EDGE] - SHUFFLE [RS_58] - PartitionCols:_col2 - Merge Join Operator [MERGEJOIN_167] (rows=44/52 width=86) - Conds:RS_55._col1=RS_56._col1(Inner),Output:["_col2"] - <-Map 22 [SIMPLE_EDGE] - SHUFFLE [RS_56] - PartitionCols:_col1 - Select Operator [SEL_51] (rows=25/25 width=175) - Output:["_col0","_col1"] - Filter Operator [FIL_157] (rows=25/25 width=175) - predicate:(key is not null and value is not null) - TableScan [TS_49] (rows=25/25 width=175) - default@src1,x,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] - <-Reducer 17 [SIMPLE_EDGE] - SHUFFLE [RS_55] - PartitionCols:_col1 - Select Operator [SEL_48] (rows=381/319 width=178) - Output:["_col1"] - Group By Operator [GBY_47] (rows=381/319 width=178) - Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 16 [SIMPLE_EDGE] - <-Map 21 [CONTAINS] - Reduce Output Operator [RS_46] - PartitionCols:_col0, _col1 - Group By Operator [GBY_45] (rows=381/628 width=178) - Output:["_col0","_col1"],keys:_col1, _col0 - Select Operator [SEL_41] (rows=500/500 width=178) - Output:["_col0","_col1"] - Filter Operator [FIL_156] (rows=500/500 width=178) - predicate:value is not null - TableScan [TS_39] (rows=500/500 width=178) - Output:["key","value"] - <-Reducer 15 [CONTAINS] - Reduce Output Operator [RS_46] - PartitionCols:_col0, _col1 - Group By Operator [GBY_45] (rows=381/628 width=178) - Output:["_col0","_col1"],keys:_col1, _col0 - Select Operator [SEL_38] (rows=262/319 width=178) - Output:["_col0","_col1"] - Group By Operator [GBY_37] (rows=262/319 width=178) - Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 14 [SIMPLE_EDGE] - <-Map 13 [CONTAINS] - Reduce Output Operator [RS_36] - PartitionCols:_col0, _col1 - Group By Operator [GBY_35] (rows=262/331 width=178) - Output:["_col0","_col1"],keys:_col1, _col0 - Select Operator [SEL_28] (rows=25/25 width=175) - Output:["_col0","_col1"] - Filter Operator [FIL_154] (rows=25/25 width=175) - predicate:value is not null - TableScan [TS_26] (rows=25/25 width=175) - Output:["key","value"] - <-Map 20 [CONTAINS] - Reduce Output Operator [RS_36] - PartitionCols:_col0, _col1 - Group By Operator [GBY_35] (rows=262/331 width=178) - Output:["_col0","_col1"],keys:_col1, _col0 - Select Operator [SEL_31] (rows=500/500 width=178) - Output:["_col0","_col1"] - Filter Operator [FIL_155] (rows=500/500 width=178) - predicate:value is not null - TableScan [TS_29] (rows=500/500 width=178) - Output:["key","value"] - <-Reducer 5 [CONTAINS] - Reduce Output Operator [RS_66] - PartitionCols:_col0, _col1 - Group By Operator [GBY_65] (rows=90/30 width=177) - Output:["_col0","_col1"],keys:_col0, _col1 - Select Operator [SEL_25] (rows=73/61 width=177) - Output:["_col0","_col1"] - Merge Join Operator [MERGEJOIN_166] (rows=73/61 width=177) - Conds:RS_22._col2=RS_23._col0(Inner),Output:["_col2","_col5"] - <-Map 12 [SIMPLE_EDGE] - SHUFFLE [RS_23] - PartitionCols:_col0 - Select Operator [SEL_18] (rows=500/500 width=178) + Filter Operator [FIL_147] (rows=500/500 width=178) + predicate:value is not null + TableScan [TS_28] (rows=500/500 width=178) + Output:["key","value"] + <-Reducer 5 [CONTAINS] + Reduce Output Operator [RS_62] + PartitionCols:_col0, _col1 + Select Operator [SEL_24] (rows=148/61 width=177) + 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] + 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"] + <-Reducer 4 [SIMPLE_EDGE] + SHUFFLE [RS_21] + PartitionCols:_col2 + Merge Join Operator [MERGEJOIN_157] (rows=61/52 width=86) + Conds:RS_18._col1=RS_19._col1(Inner),Output:["_col2"] + <-Map 11 [SIMPLE_EDGE] + SHUFFLE [RS_19] + PartitionCols:_col1 + Select Operator [SEL_14] (rows=25/25 width=175) Output:["_col0","_col1"] - Filter Operator [FIL_153] (rows=500/500 width=178) - predicate:key is not null - TableScan [TS_16] (rows=500/500 width=178) - default@src,y,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] - <-Reducer 4 [SIMPLE_EDGE] - SHUFFLE [RS_22] - PartitionCols:_col2 - Merge Join Operator [MERGEJOIN_165] (rows=30/52 width=86) - Conds:RS_19._col1=RS_20._col1(Inner),Output:["_col2"] - <-Map 11 [SIMPLE_EDGE] - SHUFFLE [RS_20] - PartitionCols:_col1 - Select Operator [SEL_15] (rows=25/25 width=175) - Output:["_col0","_col1"] - Filter Operator [FIL_152] (rows=25/25 width=175) - predicate:(key is not null and value is not null) - TableScan [TS_13] (rows=25/25 width=175) - default@src1,x,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] - <-Reducer 3 [SIMPLE_EDGE] - SHUFFLE [RS_19] - PartitionCols:_col1 - Select Operator [SEL_12] (rows=262/319 width=178) - Output:["_col1"] - Group By Operator [GBY_11] (rows=262/319 width=178) - Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 2 [SIMPLE_EDGE] - <-Map 1 [CONTAINS] - Reduce Output Operator [RS_10] - PartitionCols:_col0, _col1 - Group By Operator [GBY_9] (rows=262/331 width=178) - Output:["_col0","_col1"],keys:_col1, _col0 - Select Operator [SEL_2] (rows=25/25 width=175) - Output:["_col0","_col1"] - Filter Operator [FIL_150] (rows=25/25 width=175) - predicate:value is not null - TableScan [TS_0] (rows=25/25 width=175) - Output:["key","value"] - <-Map 10 [CONTAINS] - Reduce Output Operator [RS_10] - PartitionCols:_col0, _col1 - Group By Operator [GBY_9] (rows=262/331 width=178) - Output:["_col0","_col1"],keys:_col1, _col0 - Select Operator [SEL_5] (rows=500/500 width=178) - Output:["_col0","_col1"] - Filter Operator [FIL_151] (rows=500/500 width=178) - predicate:value is not null - TableScan [TS_3] (rows=500/500 width=178) - Output:["key","value"] + 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"] + <-Reducer 3 [SIMPLE_EDGE] + SHUFFLE [RS_18] + PartitionCols:_col1 + Select Operator [SEL_11] (rows=525/319 width=178) + Output:["_col1"] + Group By Operator [GBY_10] (rows=525/319 width=178) + Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 + <-Union 2 [SIMPLE_EDGE] + <-Map 1 [CONTAINS] + Reduce Output Operator [RS_9] + PartitionCols:_col1, _col0 + Select Operator [SEL_2] (rows=25/25 width=175) + Output:["_col0","_col1"] + Filter Operator [FIL_142] (rows=25/25 width=175) + predicate:value is not null + TableScan [TS_0] (rows=25/25 width=175) + Output:["key","value"] + <-Map 10 [CONTAINS] + Reduce Output Operator [RS_9] + PartitionCols:_col1, _col0 + Select Operator [SEL_5] (rows=500/500 width=178) + Output:["_col0","_col1"] + Filter Operator [FIL_143] (rows=500/500 width=178) + predicate:value is not null + TableScan [TS_3] (rows=500/500 width=178) + Output:["key","value"] PREHOOK: query: CREATE TABLE srcbucket_mapjoin(key int, value string) partitioned by (ds string) CLUSTERED BY (key) INTO 2 BUCKETS STORED AS TEXTFILE PREHOOK: type: CREATETABLE @@ -912,51 +868,49 @@ Stage-0 limit:-1 Stage-1 Reducer 4 - File Output Operator [FS_26] - Group By Operator [GBY_24] (rows=1/1 width=8) - Output:["_col0"],aggregations:["count(VALUE._col0)"] + File Output Operator [FS_25] + Group By Operator [GBY_23] (rows=1/1 width=8) + Output:["_col0"],aggregations:["count()"] <-Reducer 3 [SIMPLE_EDGE] - SHUFFLE [RS_23] - Group By Operator [GBY_22] (rows=1/1 width=8) - Output:["_col0"],aggregations:["count()"] - Merge Join Operator [MERGEJOIN_39] (rows=558/1646 width=18) - Conds:Union 2._col0=RS_19._col0(Inner) - <-Map 7 [SIMPLE_EDGE] - SHUFFLE [RS_19] + SHUFFLE [RS_22] + Merge Join Operator [MERGEJOIN_38] (rows=558/1646 width=18) + Conds:Union 2._col0=RS_19._col0(Inner) + <-Map 7 [SIMPLE_EDGE] + SHUFFLE [RS_19] + PartitionCols:_col0 + Select Operator [SEL_17] (rows=500/500 width=18) + Output:["_col0"] + Filter Operator [FIL_35] (rows=500/500 width=18) + predicate:key is not null + TableScan [TS_15] (rows=500/500 width=18) + default@tab_part,b,Tbl:COMPLETE,Col:NONE,Output:["key"] + <-Union 2 [SIMPLE_EDGE] + <-Map 1 [CONTAINS] + Reduce Output Operator [RS_18] PartitionCols:_col0 - Select Operator [SEL_17] (rows=500/500 width=18) - Output:["_col0"] - Filter Operator [FIL_36] (rows=500/500 width=18) - predicate:key is not null - TableScan [TS_15] (rows=500/500 width=18) - default@tab_part,b,Tbl:COMPLETE,Col:NONE,Output:["key"] - <-Union 2 [SIMPLE_EDGE] - <-Map 1 [CONTAINS] - Reduce Output Operator [RS_18] - PartitionCols:_col0 - Merge Join Operator [MERGEJOIN_37] (rows=266/480 width=18) - Conds:SEL_2._col0=SEL_5._col0(Inner),Output:["_col0"] - <-Select Operator [SEL_5] (rows=242/242 width=18) - Output:["_col0"] - Filter Operator [FIL_34] (rows=242/242 width=18) - predicate:key is not null - TableScan [TS_3] (rows=242/242 width=18) - default@tab,s3,Tbl:COMPLETE,Col:NONE,Output:["key"] - <-Select Operator [SEL_2] (rows=242/242 width=18) - Output:["_col0"] - Filter Operator [FIL_33] (rows=242/242 width=18) - predicate:key is not null - TableScan [TS_0] (rows=242/242 width=18) - Output:["key"] - <-Map 6 [CONTAINS] - Reduce Output Operator [RS_18] - PartitionCols:_col0 - Select Operator [SEL_12] (rows=242/242 width=18) + Merge Join Operator [MERGEJOIN_36] (rows=266/480 width=18) + Conds:SEL_2._col0=SEL_5._col0(Inner),Output:["_col0"] + <-Select Operator [SEL_5] (rows=242/242 width=18) Output:["_col0"] - Filter Operator [FIL_35] (rows=242/242 width=18) + Filter Operator [FIL_33] (rows=242/242 width=18) predicate:key is not null - TableScan [TS_10] (rows=242/242 width=18) + TableScan [TS_3] (rows=242/242 width=18) + default@tab,s3,Tbl:COMPLETE,Col:NONE,Output:["key"] + <-Select Operator [SEL_2] (rows=242/242 width=18) + Output:["_col0"] + Filter Operator [FIL_32] (rows=242/242 width=18) + predicate:key is not null + TableScan [TS_0] (rows=242/242 width=18) Output:["key"] + <-Map 6 [CONTAINS] + Reduce Output Operator [RS_18] + PartitionCols:_col0 + Select Operator [SEL_12] (rows=242/242 width=18) + Output:["_col0"] + Filter Operator [FIL_34] (rows=242/242 width=18) + predicate:key is not null + TableScan [TS_10] (rows=242/242 width=18) + Output:["key"] PREHOOK: query: select count(*) from (select s1.key as key, s1.value as value from tab s1 join tab s3 on s1.key=s3.key join tab s2 on s1.value=s2.value UNION ALL @@ -1003,65 +957,63 @@ Stage-0 limit:-1 Stage-1 Reducer 5 - File Output Operator [FS_32] - Group By Operator [GBY_30] (rows=1/1 width=8) - Output:["_col0"],aggregations:["count(VALUE._col0)"] + File Output Operator [FS_31] + Group By Operator [GBY_29] (rows=1/1 width=8) + Output:["_col0"],aggregations:["count()"] <-Reducer 4 [SIMPLE_EDGE] - SHUFFLE [RS_29] - Group By Operator [GBY_28] (rows=1/1 width=8) - Output:["_col0"],aggregations:["count()"] - Merge Join Operator [MERGEJOIN_51] (rows=587/3768 width=18) - Conds:Union 3._col0=RS_25._col0(Inner) - <-Map 9 [SIMPLE_EDGE] - SHUFFLE [RS_25] + SHUFFLE [RS_28] + Merge Join Operator [MERGEJOIN_50] (rows=587/3768 width=18) + Conds:Union 3._col0=RS_25._col0(Inner) + <-Map 9 [SIMPLE_EDGE] + SHUFFLE [RS_25] + PartitionCols:_col0 + Select Operator [SEL_23] (rows=500/500 width=18) + Output:["_col0"] + Filter Operator [FIL_46] (rows=500/500 width=18) + predicate:key is not null + TableScan [TS_21] (rows=500/500 width=18) + default@tab_part,b,Tbl:COMPLETE,Col:NONE,Output:["key"] + <-Union 3 [SIMPLE_EDGE] + <-Map 8 [CONTAINS] + Reduce Output Operator [RS_24] PartitionCols:_col0 - Select Operator [SEL_23] (rows=500/500 width=18) + Select Operator [SEL_18] (rows=242/242 width=18) Output:["_col0"] - Filter Operator [FIL_47] (rows=500/500 width=18) + Filter Operator [FIL_45] (rows=242/242 width=18) predicate:key is not null - TableScan [TS_21] (rows=500/500 width=18) - default@tab_part,b,Tbl:COMPLETE,Col:NONE,Output:["key"] - <-Union 3 [SIMPLE_EDGE] - <-Map 8 [CONTAINS] - Reduce Output Operator [RS_24] - PartitionCols:_col0 - Select Operator [SEL_18] (rows=242/242 width=18) - Output:["_col0"] - Filter Operator [FIL_46] (rows=242/242 width=18) - predicate:key is not null - TableScan [TS_16] (rows=242/242 width=18) - Output:["key"] - <-Reducer 2 [CONTAINS] - Reduce Output Operator [RS_24] - PartitionCols:_col0 - Merge Join Operator [MERGEJOIN_50] (rows=292/1166 width=18) - Conds:RS_12._col1=RS_13._col1(Inner),Output:["_col0"] - <-Map 1 [SIMPLE_EDGE] - SHUFFLE [RS_12] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_48] (rows=266/480 width=18) - Conds:SEL_2._col0=SEL_5._col0(Inner),Output:["_col0","_col1"] - <-Select Operator [SEL_5] (rows=242/242 width=18) - Output:["_col0"] - Filter Operator [FIL_44] (rows=242/242 width=18) - predicate:key is not null - TableScan [TS_3] (rows=242/242 width=18) - default@tab,s3,Tbl:COMPLETE,Col:NONE,Output:["key"] - <-Select Operator [SEL_2] (rows=242/242 width=18) - Output:["_col0","_col1"] - Filter Operator [FIL_43] (rows=242/242 width=18) - predicate:(key is not null and value is not null) - TableScan [TS_0] (rows=242/242 width=18) - default@tab,s1,Tbl:COMPLETE,Col:NONE,Output:["key","value"] - <-Map 7 [SIMPLE_EDGE] - SHUFFLE [RS_13] - PartitionCols:_col1 - Select Operator [SEL_8] (rows=242/242 width=18) - Output:["_col1"] - Filter Operator [FIL_45] (rows=242/242 width=18) - predicate:value is not null - TableScan [TS_6] (rows=242/242 width=18) - default@tab,s2,Tbl:COMPLETE,Col:NONE,Output:["value"] + TableScan [TS_16] (rows=242/242 width=18) + Output:["key"] + <-Reducer 2 [CONTAINS] + Reduce Output Operator [RS_24] + PartitionCols:_col0 + Merge Join Operator [MERGEJOIN_49] (rows=292/1166 width=18) + Conds:RS_12._col1=RS_13._col1(Inner),Output:["_col0"] + <-Map 1 [SIMPLE_EDGE] + SHUFFLE [RS_12] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_47] (rows=266/480 width=18) + Conds:SEL_2._col0=SEL_5._col0(Inner),Output:["_col0","_col1"] + <-Select Operator [SEL_5] (rows=242/242 width=18) + Output:["_col0"] + Filter Operator [FIL_43] (rows=242/242 width=18) + predicate:key is not null + TableScan [TS_3] (rows=242/242 width=18) + default@tab,s3,Tbl:COMPLETE,Col:NONE,Output:["key"] + <-Select Operator [SEL_2] (rows=242/242 width=18) + Output:["_col0","_col1"] + Filter Operator [FIL_42] (rows=242/242 width=18) + predicate:(key is not null and value is not null) + TableScan [TS_0] (rows=242/242 width=18) + default@tab,s1,Tbl:COMPLETE,Col:NONE,Output:["key","value"] + <-Map 7 [SIMPLE_EDGE] + SHUFFLE [RS_13] + PartitionCols:_col1 + Select Operator [SEL_8] (rows=242/242 width=18) + Output:["_col1"] + Filter Operator [FIL_44] (rows=242/242 width=18) + predicate:value is not null + TableScan [TS_6] (rows=242/242 width=18) + default@tab,s2,Tbl:COMPLETE,Col:NONE,Output:["value"] PREHOOK: query: CREATE TABLE a(key STRING, value STRING) STORED AS TEXTFILE PREHOOK: type: CREATETABLE @@ -1518,256 +1470,224 @@ Stage-5 Dependency Collection{} Stage-3 Reducer 8 - File Output Operator [FS_114] + File Output Operator [FS_106] table:{"name:":"default.a"} - Group By Operator [GBY_111] (rows=605/319 width=178) + Group By Operator [GBY_103] (rows=6298/319 width=178) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 <-Union 7 [SIMPLE_EDGE] <-Reducer 31 [CONTAINS] - Reduce Output Operator [RS_110] + Reduce Output Operator [RS_102] PartitionCols:_col0, _col1 - Group By Operator [GBY_109] (rows=605/331 width=178) - Output:["_col0","_col1"],keys:_col0, _col1 - Select Operator [SEL_105] (rows=90/304 width=175) - Output:["_col0","_col1"] - Merge Join Operator [MERGEJOIN_160] (rows=90/304 width=175) - Conds:RS_101._col1=RS_103._col1(Inner),Output:["_col0","_col6"] - <-Reducer 30 [SIMPLE_EDGE] - SHUFFLE [RS_103] - PartitionCols:_col1 - Select Operator [SEL_92] (rows=440/319 width=178) - Output:["_col1"] - Group By Operator [GBY_91] (rows=440/319 width=178) - Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 29 [SIMPLE_EDGE] - <-Map 34 [CONTAINS] - Reduce Output Operator [RS_90] - PartitionCols:_col0, _col1 - Group By Operator [GBY_89] (rows=440/628 width=178) - Output:["_col0","_col1"],keys:_col0, _col1 - Select Operator [SEL_85] (rows=500/500 width=178) - Output:["_col0","_col1"] - Filter Operator [FIL_152] (rows=500/500 width=178) - predicate:value is not null - TableScan [TS_84] (rows=500/500 width=178) - Output:["key","value"] - <-Reducer 28 [CONTAINS] - Reduce Output Operator [RS_90] - PartitionCols:_col0, _col1 - Group By Operator [GBY_89] (rows=440/628 width=178) - Output:["_col0","_col1"],keys:_col0, _col1 - Group By Operator [GBY_82] (rows=381/319 width=178) - Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 27 [SIMPLE_EDGE] - <-Map 33 [CONTAINS] - Reduce Output Operator [RS_81] - PartitionCols:_col0, _col1 - Group By Operator [GBY_80] (rows=381/628 width=178) - Output:["_col0","_col1"],keys:_col0, _col1 - Select Operator [SEL_76] (rows=500/500 width=178) + Select Operator [SEL_98] (rows=313/304 width=175) + Output:["_col0","_col1"] + Merge Join Operator [MERGEJOIN_152] (rows=313/304 width=175) + Conds:RS_94._col1=RS_96._col1(Inner),Output:["_col0","_col6"] + <-Reducer 30 [SIMPLE_EDGE] + SHUFFLE [RS_96] + PartitionCols:_col1 + Select Operator [SEL_85] (rows=1525/319 width=178) + Output:["_col1"] + Group By Operator [GBY_84] (rows=1525/319 width=178) + Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 + <-Union 29 [SIMPLE_EDGE] + <-Map 34 [CONTAINS] + Reduce Output Operator [RS_83] + PartitionCols:_col0, _col1 + Select Operator [SEL_79] (rows=500/500 width=178) + Output:["_col0","_col1"] + Filter Operator [FIL_144] (rows=500/500 width=178) + predicate:value is not null + TableScan [TS_78] (rows=500/500 width=178) + Output:["key","value"] + <-Reducer 28 [CONTAINS] + Reduce Output Operator [RS_83] + PartitionCols:_col0, _col1 + Group By Operator [GBY_76] (rows=1025/319 width=178) + Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 + <-Union 27 [SIMPLE_EDGE] + <-Map 33 [CONTAINS] + Reduce Output Operator [RS_75] + PartitionCols:_col0, _col1 + Select Operator [SEL_71] (rows=500/500 width=178) + Output:["_col0","_col1"] + Filter Operator [FIL_143] (rows=500/500 width=178) + predicate:value is not null + TableScan [TS_70] (rows=500/500 width=178) + Output:["key","value"] + <-Reducer 26 [CONTAINS] + Reduce Output Operator [RS_75] + PartitionCols:_col0, _col1 + Group By Operator [GBY_68] (rows=525/319 width=178) + Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 + <-Union 25 [SIMPLE_EDGE] + <-Map 24 [CONTAINS] + Reduce Output Operator [RS_67] + PartitionCols:_col0, _col1 + Select Operator [SEL_61] (rows=25/25 width=175) Output:["_col0","_col1"] - Filter Operator [FIL_151] (rows=500/500 width=178) + Filter Operator [FIL_141] (rows=25/25 width=175) predicate:value is not null - TableScan [TS_75] (rows=500/500 width=178) + TableScan [TS_60] (rows=25/25 width=175) Output:["key","value"] - <-Reducer 26 [CONTAINS] - Reduce Output Operator [RS_81] - PartitionCols:_col0, _col1 - Group By Operator [GBY_80] (rows=381/628 width=178) - Output:["_col0","_col1"],keys:_col0, _col1 - Group By Operator [GBY_73] (rows=262/319 width=178) - Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 25 [SIMPLE_EDGE] - <-Map 24 [CONTAINS] - Reduce Output Operator [RS_72] - PartitionCols:_col0, _col1 - Group By Operator [GBY_71] (rows=262/331 width=178) - Output:["_col0","_col1"],keys:_col0, _col1 - Select Operator [SEL_65] (rows=25/25 width=175) - Output:["_col0","_col1"] - Filter Operator [FIL_149] (rows=25/25 width=175) - predicate:value is not null - TableScan [TS_64] (rows=25/25 width=175) - Output:["key","value"] - <-Map 32 [CONTAINS] - Reduce Output Operator [RS_72] - PartitionCols:_col0, _col1 - Group By Operator [GBY_71] (rows=262/331 width=178) - Output:["_col0","_col1"],keys:_col0, _col1 - Select Operator [SEL_67] (rows=500/500 width=178) - Output:["_col0","_col1"] - Filter Operator [FIL_150] (rows=500/500 width=178) - predicate:value is not null - TableScan [TS_66] (rows=500/500 width=178) - Output:["key","value"] - <-Reducer 36 [SIMPLE_EDGE] - SHUFFLE [RS_101] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_157] (rows=44/115 width=264) - Conds:RS_96.key=RS_98.key(Inner),Output:["_col0","_col1","_col6"] - <-Map 35 [SIMPLE_EDGE] - SHUFFLE [RS_96] - PartitionCols:key - Filter Operator [FIL_153] (rows=25/25 width=175) - predicate:(key is not null and value is not null) - TableScan [TS_93] (rows=25/25 width=175) - default@src1,x,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] - <-Map 37 [SIMPLE_EDGE] - SHUFFLE [RS_98] - PartitionCols:key - Filter Operator [FIL_154] (rows=25/25 width=175) - predicate:key is not null - TableScan [TS_94] (rows=25/25 width=175) - default@src1,y,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] - <-Reducer 6 [CONTAINS] - Reduce Output Operator [RS_110] - PartitionCols:_col0, _col1 - Group By Operator [GBY_109] (rows=605/331 width=178) - Output:["_col0","_col1"],keys:_col0, _col1 - Group By Operator [GBY_62] (rows=1121/309 width=178) - Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 5 [SIMPLE_EDGE] - <-Reducer 18 [CONTAINS] - Reduce Output Operator [RS_61] - PartitionCols:_col0, _col1 - Group By Operator [GBY_60] (rows=1121/324 width=178) - Output:["_col0","_col1"],keys:_col0, _col1 - Select Operator [SEL_56] (rows=2170/1056 width=178) - Output:["_col0","_col1"] - Merge Join Operator [MERGEJOIN_159] (rows=2170/1056 width=178) - Conds:RS_52._col1=RS_54._col1(Inner),Output:["_col0","_col6"] - <-Reducer 17 [SIMPLE_EDGE] - SHUFFLE [RS_54] - PartitionCols:_col1 - Select Operator [SEL_43] (rows=381/319 width=178) - Output:["_col1"] - Group By Operator [GBY_42] (rows=381/319 width=178) - Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 16 [SIMPLE_EDGE] - <-Map 20 [CONTAINS] - Reduce Output Operator [RS_41] - PartitionCols:_col0, _col1 - Group By Operator [GBY_40] (rows=381/628 width=178) - Output:["_col0","_col1"],keys:_col0, _col1 - Select Operator [SEL_36] (rows=500/500 width=178) + <-Map 32 [CONTAINS] + Reduce Output Operator [RS_67] + PartitionCols:_col0, _col1 + Select Operator [SEL_63] (rows=500/500 width=178) Output:["_col0","_col1"] - Filter Operator [FIL_146] (rows=500/500 width=178) + Filter Operator [FIL_142] (rows=500/500 width=178) predicate:value is not null - TableScan [TS_35] (rows=500/500 width=178) + TableScan [TS_62] (rows=500/500 width=178) Output:["key","value"] - <-Reducer 15 [CONTAINS] - Reduce Output Operator [RS_41] - PartitionCols:_col0, _col1 - Group By Operator [GBY_40] (rows=381/628 width=178) - Output:["_col0","_col1"],keys:_col0, _col1 - Group By Operator [GBY_33] (rows=262/319 width=178) - Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 14 [SIMPLE_EDGE] - <-Map 13 [CONTAINS] - Reduce Output Operator [RS_32] - PartitionCols:_col0, _col1 - Group By Operator [GBY_31] (rows=262/331 width=178) - Output:["_col0","_col1"],keys:_col0, _col1 - Select Operator [SEL_25] (rows=25/25 width=175) - Output:["_col0","_col1"] - Filter Operator [FIL_144] (rows=25/25 width=175) - predicate:value is not null - TableScan [TS_24] (rows=25/25 width=175) - Output:["key","value"] - <-Map 19 [CONTAINS] - Reduce Output Operator [RS_32] - PartitionCols:_col0, _col1 - Group By Operator [GBY_31] (rows=262/331 width=178) - Output:["_col0","_col1"],keys:_col0, _col1 - Select Operator [SEL_27] (rows=500/500 width=178) - Output:["_col0","_col1"] - Filter Operator [FIL_145] (rows=500/500 width=178) - predicate:value is not null - TableScan [TS_26] (rows=500/500 width=178) - Output:["key","value"] - <-Reducer 22 [SIMPLE_EDGE] - SHUFFLE [RS_52] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_156] (rows=1219/1028 width=269) - Conds:RS_47.key=RS_49.key(Inner),Output:["_col0","_col1","_col6"] - <-Map 21 [SIMPLE_EDGE] - SHUFFLE [RS_47] - PartitionCols:key - Filter Operator [FIL_147] (rows=500/500 width=178) - predicate:(key is not null and value is not null) - TableScan [TS_44] (rows=500/500 width=178) - default@src,x,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] - <-Map 23 [SIMPLE_EDGE] - SHUFFLE [RS_49] - PartitionCols:key - Filter Operator [FIL_148] (rows=500/500 width=178) - predicate:key is not null - TableScan [TS_45] (rows=500/500 width=178) - default@src,y,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] - <-Reducer 4 [CONTAINS] - Reduce Output Operator [RS_61] - PartitionCols:_col0, _col1 - Group By Operator [GBY_60] (rows=1121/324 width=178) - Output:["_col0","_col1"],keys:_col0, _col1 - Select Operator [SEL_23] (rows=73/61 width=177) - Output:["_col0","_col1"] - Merge Join Operator [MERGEJOIN_158] (rows=73/61 width=177) - Conds:RS_19._col1=RS_21._col1(Inner),Output:["_col0","_col6"] - <-Reducer 11 [SIMPLE_EDGE] - SHUFFLE [RS_19] - PartitionCols:_col1 - Merge Join Operator [MERGEJOIN_155] (rows=60/37 width=266) - Conds:RS_14.key=RS_16.key(Inner),Output:["_col0","_col1","_col6"] - <-Map 10 [SIMPLE_EDGE] - SHUFFLE [RS_14] - PartitionCols:key - Filter Operator [FIL_142] (rows=25/25 width=175) - predicate:(key is not null and value is not null) - TableScan [TS_11] (rows=25/25 width=175) - default@src1,x,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] - <-Map 12 [SIMPLE_EDGE] - SHUFFLE [RS_16] - PartitionCols:key - Filter Operator [FIL_143] (rows=500/500 width=178) - predicate:key is not null - TableScan [TS_12] (rows=500/500 width=178) - default@src,y,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] - <-Reducer 3 [SIMPLE_EDGE] - SHUFFLE [RS_21] - PartitionCols:_col1 - Select Operator [SEL_10] (rows=262/319 width=178) - Output:["_col1"] - Group By Operator [GBY_9] (rows=262/319 width=178) - Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 2 [SIMPLE_EDGE] - <-Map 1 [CONTAINS] - Reduce Output Operator [RS_8] - PartitionCols:_col0, _col1 - Group By Operator [GBY_7] (rows=262/331 width=178) - Output:["_col0","_col1"],keys:_col0, _col1 - Select Operator [SEL_1] (rows=25/25 width=175) + <-Reducer 36 [SIMPLE_EDGE] + SHUFFLE [RS_94] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_149] (rows=44/115 width=264) + Conds:RS_89.key=RS_91.key(Inner),Output:["_col0","_col1","_col6"] + <-Map 35 [SIMPLE_EDGE] + SHUFFLE [RS_89] + PartitionCols:key + Filter Operator [FIL_145] (rows=25/25 width=175) + predicate:(key is not null and value is not null) + TableScan [TS_86] (rows=25/25 width=175) + default@src1,x,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] + <-Map 37 [SIMPLE_EDGE] + SHUFFLE [RS_91] + PartitionCols:key + Filter Operator [FIL_146] (rows=25/25 width=175) + predicate:key is not null + TableScan [TS_87] (rows=25/25 width=175) + default@src1,y,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] + <-Reducer 6 [CONTAINS] + Reduce Output Operator [RS_102] + PartitionCols:_col0, _col1 + Group By Operator [GBY_58] (rows=5985/309 width=178) + Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 + <-Union 5 [SIMPLE_EDGE] + <-Reducer 18 [CONTAINS] + Reduce Output Operator [RS_57] + PartitionCols:_col0, _col1 + Select Operator [SEL_53] (rows=5838/1056 width=178) + Output:["_col0","_col1"] + Merge Join Operator [MERGEJOIN_151] (rows=5838/1056 width=178) + Conds:RS_49._col1=RS_51._col1(Inner),Output:["_col0","_col6"] + <-Reducer 17 [SIMPLE_EDGE] + SHUFFLE [RS_51] + PartitionCols:_col1 + Select Operator [SEL_40] (rows=1025/319 width=178) + Output:["_col1"] + Group By Operator [GBY_39] (rows=1025/319 width=178) + Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 + <-Union 16 [SIMPLE_EDGE] + <-Map 20 [CONTAINS] + Reduce Output Operator [RS_38] + PartitionCols:_col0, _col1 + Select Operator [SEL_34] (rows=500/500 width=178) + Output:["_col0","_col1"] + Filter Operator [FIL_138] (rows=500/500 width=178) + predicate:value is not null + TableScan [TS_33] (rows=500/500 width=178) + Output:["key","value"] + <-Reducer 15 [CONTAINS] + Reduce Output Operator [RS_38] + PartitionCols:_col0, _col1 + Group By Operator [GBY_31] (rows=525/319 width=178) + Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 + <-Union 14 [SIMPLE_EDGE] + <-Map 13 [CONTAINS] + Reduce Output Operator [RS_30] + PartitionCols:_col0, _col1 + Select Operator [SEL_24] (rows=25/25 width=175) Output:["_col0","_col1"] - Filter Operator [FIL_140] (rows=25/25 width=175) + Filter Operator [FIL_136] (rows=25/25 width=175) predicate:value is not null - TableScan [TS_0] (rows=25/25 width=175) + TableScan [TS_23] (rows=25/25 width=175) Output:["key","value"] - <-Map 9 [CONTAINS] - Reduce Output Operator [RS_8] - PartitionCols:_col0, _col1 - Group By Operator [GBY_7] (rows=262/331 width=178) - Output:["_col0","_col1"],keys:_col0, _col1 - Select Operator [SEL_3] (rows=500/500 width=178) + <-Map 19 [CONTAINS] + Reduce Output Operator [RS_30] + PartitionCols:_col0, _col1 + Select Operator [SEL_26] (rows=500/500 width=178) Output:["_col0","_col1"] - Filter Operator [FIL_141] (rows=500/500 width=178) + Filter Operator [FIL_137] (rows=500/500 width=178) predicate:value is not null - TableScan [TS_2] (rows=500/500 width=178) + TableScan [TS_25] (rows=500/500 width=178) Output:["key","value"] - File Output Operator [FS_116] + <-Reducer 22 [SIMPLE_EDGE] + SHUFFLE [RS_49] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_148] (rows=1219/1028 width=269) + Conds:RS_44.key=RS_46.key(Inner),Output:["_col0","_col1","_col6"] + <-Map 21 [SIMPLE_EDGE] + SHUFFLE [RS_44] + PartitionCols:key + Filter Operator [FIL_139] (rows=500/500 width=178) + predicate:(key is not null and value is not null) + TableScan [TS_41] (rows=500/500 width=178) + default@src,x,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] + <-Map 23 [SIMPLE_EDGE] + SHUFFLE [RS_46] + PartitionCols:key + Filter Operator [FIL_140] (rows=500/500 width=178) + predicate:key is not null + TableScan [TS_42] (rows=500/500 width=178) + default@src,y,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] + <-Reducer 4 [CONTAINS] + Reduce Output Operator [RS_57] + PartitionCols:_col0, _col1 + Select Operator [SEL_22] (rows=147/61 width=177) + Output:["_col0","_col1"] + Merge Join Operator [MERGEJOIN_150] (rows=147/61 width=177) + Conds:RS_18._col1=RS_20._col1(Inner),Output:["_col0","_col6"] + <-Reducer 11 [SIMPLE_EDGE] + SHUFFLE [RS_18] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_147] (rows=60/37 width=266) + Conds:RS_13.key=RS_15.key(Inner),Output:["_col0","_col1","_col6"] + <-Map 10 [SIMPLE_EDGE] + SHUFFLE [RS_13] + PartitionCols:key + Filter Operator [FIL_134] (rows=25/25 width=175) + predicate:(key is not null and value is not null) + TableScan [TS_10] (rows=25/25 width=175) + default@src1,x,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] + <-Map 12 [SIMPLE_EDGE] + SHUFFLE [RS_15] + PartitionCols:key + Filter Operator [FIL_135] (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_20] + PartitionCols:_col1 + Select Operator [SEL_9] (rows=525/319 width=178) + Output:["_col1"] + Group By Operator [GBY_8] (rows=525/319 width=178) + Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 + <-Union 2 [SIMPLE_EDGE] + <-Map 1 [CONTAINS] + Reduce Output Operator [RS_7] + PartitionCols:_col0, _col1 + Select Operator [SEL_1] (rows=25/25 width=175) + Output:["_col0","_col1"] + Filter Operator [FIL_132] (rows=25/25 width=175) + predicate:value is not null + TableScan [TS_0] (rows=25/25 width=175) + Output:["key","value"] + <-Map 9 [CONTAINS] + Reduce Output Operator [RS_7] + PartitionCols:_col0, _col1 + Select Operator [SEL_3] (rows=500/500 width=178) + Output:["_col0","_col1"] + Filter Operator [FIL_133] (rows=500/500 width=178) + predicate:value is not null + TableScan [TS_2] (rows=500/500 width=178) + Output:["key","value"] + File Output Operator [FS_108] table:{"name:":"default.b"} - Please refer to the previous Group By Operator [GBY_111] - File Output Operator [FS_118] + Please refer to the previous Group By Operator [GBY_103] + File Output Operator [FS_110] table:{"name:":"default.c"} - Please refer to the previous Group By Operator [GBY_111] + Please refer to the previous Group By Operator [GBY_103] Stage-6 Stats-Aggr Operator Stage-1 @@ -1846,50 +1766,40 @@ Stage-4 Dependency Collection{} Stage-2 Reducer 5 - File Output Operator [FS_20] + File Output Operator [FS_17] table:{"name:":"default.dest1"} - Group By Operator [GBY_18] (rows=125/310 width=96) + Group By Operator [GBY_15] (rows=205/310 width=96) Output:["_col0","_col1"],aggregations:["count(DISTINCT KEY._col1:0._col0)"],keys:KEY._col0 <-Reducer 4 [SIMPLE_EDGE] - SHUFFLE [RS_17] + SHUFFLE [RS_14] PartitionCols:_col0 - Group By Operator [GBY_16] (rows=125/310 width=280) - Output:["_col0","_col1","_col2"],aggregations:["count(DISTINCT substr(_col1, 5))"],keys:_col0, substr(_col1, 5) - Group By Operator [GBY_13] (rows=250/310 width=272) - Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 - <-Union 3 [SIMPLE_EDGE] - <-Map 6 [CONTAINS] - Reduce Output Operator [RS_12] - PartitionCols:_col0, _col1 - Group By Operator [GBY_11] (rows=250/310 width=272) - Output:["_col0","_col1"],keys:_col0, _col1 - Select Operator [SEL_7] (rows=500/500 width=178) - Output:["_col0","_col1"] - TableScan [TS_6] (rows=500/500 width=178) - Output:["key","value"] - <-Reducer 2 [CONTAINS] - Reduce Output Operator [RS_12] - PartitionCols:_col0, _col1 - Group By Operator [GBY_11] (rows=250/310 width=272) - Output:["_col0","_col1"],keys:_col0, _col1 - Select Operator [SEL_5] (rows=1/1 width=272) - Output:["_col0","_col1"] - Group By Operator [GBY_4] (rows=1/1 width=8) - Output:["_col0"],aggregations:["count(VALUE._col0)"] - <-Map 1 [SIMPLE_EDGE] - SHUFFLE [RS_3] - Group By Operator [GBY_2] (rows=1/1 width=8) - Output:["_col0"],aggregations:["count(1)"] - Select Operator [SEL_1] (rows=500/500 width=10) - TableScan [TS_0] (rows=500/500 width=10) - default@src,s1,Tbl:COMPLETE,Col:COMPLETE - File Output Operator [FS_26] + Group By Operator [GBY_11] (rows=501/310 width=272) + Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 + <-Union 3 [SIMPLE_EDGE] + <-Map 6 [CONTAINS] + Reduce Output Operator [RS_10] + PartitionCols:_col0, _col1 + Select Operator [SEL_6] (rows=500/500 width=178) + Output:["_col0","_col1"] + TableScan [TS_5] (rows=500/500 width=178) + Output:["key","value"] + <-Reducer 2 [CONTAINS] + Reduce Output Operator [RS_10] + PartitionCols:_col0, _col1 + Select Operator [SEL_4] (rows=1/1 width=272) + Output:["_col0","_col1"] + Group By Operator [GBY_3] (rows=1/1 width=8) + Output:["_col0"],aggregations:["count(1)"] + <-Map 1 [SIMPLE_EDGE] + SHUFFLE [RS_2] + Select Operator [SEL_1] (rows=500/500 width=10) + TableScan [TS_0] (rows=500/500 width=10) + default@src,s1,Tbl:COMPLETE,Col:COMPLETE + File Output Operator [FS_22] table:{"name:":"default.dest2"} - Select Operator [SEL_25] (rows=250/310 width=456) - Output:["_col0","_col1","_col2"] - Group By Operator [GBY_24] (rows=250/310 width=464) - Output:["_col0","_col1","_col2"],aggregations:["count(DISTINCT substr(_col1, 5))"],keys:_col0, _col1 - Please refer to the previous Group By Operator [GBY_13] + Group By Operator [GBY_20] (rows=501/310 width=280) + Output:["_col0","_col1","_col2"],aggregations:["count(DISTINCT substr(_col1, 5))"],keys:_col0, _col1 + Please refer to the previous Group By Operator [GBY_11] Stage-5 Stats-Aggr Operator Stage-1 @@ -2084,68 +1994,54 @@ Stage-4 Dependency Collection{} Stage-2 Reducer 4 - File Output Operator [FS_20] + File Output Operator [FS_18] table:{"name:":"default.dest1"} - Group By Operator [GBY_18] (rows=205/310 width=96) + Group By Operator [GBY_16] (rows=205/310 width=96) Output:["_col0","_col1"],aggregations:["count(DISTINCT KEY._col1:0._col0)"],keys:KEY._col0 <-Union 3 [SIMPLE_EDGE] <-Map 6 [CONTAINS] - Reduce Output Operator [RS_17] + Reduce Output Operator [RS_15] PartitionCols:_col0 - Group By Operator [GBY_16] (rows=500/619 width=280) - Output:["_col0","_col1","_col2"],aggregations:["count(DISTINCT substr(_col1, 5))"],keys:_col0, substr(_col1, 5) - Select Operator [SEL_9] (rows=501/501 width=272) + Select Operator [SEL_8] (rows=501/501 width=272) + Output:["_col0","_col1"] + Select Operator [SEL_6] (rows=500/500 width=266) Output:["_col0","_col1"] - Select Operator [SEL_7] (rows=500/500 width=266) - Output:["_col0","_col1"] - TableScan [TS_6] (rows=500/500 width=178) - Output:["key","value"] - Reduce Output Operator [RS_23] + TableScan [TS_5] (rows=500/500 width=178) + Output:["key","value"] + Reduce Output Operator [RS_20] PartitionCols:_col0, _col1 - Group By Operator [GBY_22] (rows=1001/619 width=464) - Output:["_col0","_col1","_col2","_col3"],aggregations:["count(DISTINCT substr(_col1, 5))"],keys:_col0, _col1, substr(_col1, 5) - Please refer to the previous Select Operator [SEL_9] + Please refer to the previous Select Operator [SEL_8] <-Map 7 [CONTAINS] - Reduce Output Operator [RS_17] + Reduce Output Operator [RS_15] PartitionCols:_col0 - Group By Operator [GBY_16] (rows=500/619 width=280) - Output:["_col0","_col1","_col2"],aggregations:["count(DISTINCT substr(_col1, 5))"],keys:_col0, substr(_col1, 5) - Select Operator [SEL_12] (rows=500/500 width=178) - Output:["_col0","_col1"] - TableScan [TS_11] (rows=500/500 width=178) - Output:["key","value"] - Reduce Output Operator [RS_23] + Select Operator [SEL_11] (rows=500/500 width=178) + Output:["_col0","_col1"] + TableScan [TS_10] (rows=500/500 width=178) + Output:["key","value"] + Reduce Output Operator [RS_20] PartitionCols:_col0, _col1 - Group By Operator [GBY_22] (rows=1001/619 width=464) - Output:["_col0","_col1","_col2","_col3"],aggregations:["count(DISTINCT substr(_col1, 5))"],keys:_col0, _col1, substr(_col1, 5) - Please refer to the previous Select Operator [SEL_12] + Please refer to the previous Select Operator [SEL_11] <-Reducer 2 [CONTAINS] - Reduce Output Operator [RS_17] + Reduce Output Operator [RS_15] PartitionCols:_col0 - Group By Operator [GBY_16] (rows=500/619 width=280) - Output:["_col0","_col1","_col2"],aggregations:["count(DISTINCT substr(_col1, 5))"],keys:_col0, substr(_col1, 5) - Select Operator [SEL_9] (rows=501/501 width=272) + Select Operator [SEL_8] (rows=501/501 width=272) + Output:["_col0","_col1"] + Select Operator [SEL_4] (rows=1/1 width=360) Output:["_col0","_col1"] - Select Operator [SEL_5] (rows=1/1 width=360) - Output:["_col0","_col1"] - Group By Operator [GBY_4] (rows=1/1 width=8) - Output:["_col0"],aggregations:["count(VALUE._col0)"] - <-Map 1 [SIMPLE_EDGE] - SHUFFLE [RS_3] - Group By Operator [GBY_2] (rows=1/1 width=8) - Output:["_col0"],aggregations:["count(1)"] - Select Operator [SEL_1] (rows=500/500 width=10) - TableScan [TS_0] (rows=500/500 width=10) - default@src,s1,Tbl:COMPLETE,Col:COMPLETE - Reduce Output Operator [RS_23] + Group By Operator [GBY_3] (rows=1/1 width=8) + Output:["_col0"],aggregations:["count(1)"] + <-Map 1 [SIMPLE_EDGE] + SHUFFLE [RS_2] + Select Operator [SEL_1] (rows=500/500 width=10) + TableScan [TS_0] (rows=500/500 width=10) + default@src,s1,Tbl:COMPLETE,Col:COMPLETE + Reduce Output Operator [RS_20] PartitionCols:_col0, _col1 - Group By Operator [GBY_22] (rows=1001/619 width=464) - Output:["_col0","_col1","_col2","_col3"],aggregations:["count(DISTINCT substr(_col1, 5))"],keys:_col0, _col1, substr(_col1, 5) - Please refer to the previous Select Operator [SEL_9] + Please refer to the previous Select Operator [SEL_8] Reducer 5 - File Output Operator [FS_26] + File Output Operator [FS_23] table:{"name:":"default.dest2"} - Group By Operator [GBY_24] (rows=1001/310 width=280) + Group By Operator [GBY_21] (rows=1001/310 width=280) Output:["_col0","_col1","_col2"],aggregations:["count(DISTINCT KEY._col2:0._col0)"],keys:KEY._col0, KEY._col1 <- Please refer to the previous Union 3 [SIMPLE_EDGE] Stage-5 @@ -2216,54 +2112,44 @@ Stage-4 Dependency Collection{} Stage-2 Reducer 4 - File Output Operator [FS_15] + File Output Operator [FS_13] table:{"name:":"default.dest1"} - Group By Operator [GBY_13] (rows=205/310 width=96) + Group By Operator [GBY_11] (rows=205/310 width=96) Output:["_col0","_col1"],aggregations:["count(DISTINCT KEY._col1:0._col0)"],keys:KEY._col0 <-Union 3 [SIMPLE_EDGE] <-Map 6 [CONTAINS] - Reduce Output Operator [RS_12] + Reduce Output Operator [RS_10] PartitionCols:_col0 - Group By Operator [GBY_11] (rows=250/310 width=280) - Output:["_col0","_col1","_col2"],aggregations:["count(DISTINCT substr(_col1, 5))"],keys:_col0, substr(_col1, 5) - Select Operator [SEL_9] (rows=501/501 width=266) + Select Operator [SEL_8] (rows=501/501 width=266) + Output:["_col0","_col1"] + Select Operator [SEL_6] (rows=500/500 width=266) Output:["_col0","_col1"] - Select Operator [SEL_7] (rows=500/500 width=266) - Output:["_col0","_col1"] - TableScan [TS_6] (rows=500/500 width=178) - Output:["key","value"] - Reduce Output Operator [RS_18] + TableScan [TS_5] (rows=500/500 width=178) + Output:["key","value"] + Reduce Output Operator [RS_15] PartitionCols:_col0, _col1 - Group By Operator [GBY_17] (rows=501/310 width=464) - Output:["_col0","_col1","_col2","_col3"],aggregations:["count(DISTINCT substr(_col1, 5))"],keys:_col0, _col1, substr(_col1, 5) - Please refer to the previous Select Operator [SEL_9] + Please refer to the previous Select Operator [SEL_8] <-Reducer 2 [CONTAINS] - Reduce Output Operator [RS_12] + Reduce Output Operator [RS_10] PartitionCols:_col0 - Group By Operator [GBY_11] (rows=250/310 width=280) - Output:["_col0","_col1","_col2"],aggregations:["count(DISTINCT substr(_col1, 5))"],keys:_col0, substr(_col1, 5) - Select Operator [SEL_9] (rows=501/501 width=266) + Select Operator [SEL_8] (rows=501/501 width=266) + Output:["_col0","_col1"] + Select Operator [SEL_4] (rows=1/1 width=360) Output:["_col0","_col1"] - Select Operator [SEL_5] (rows=1/1 width=360) - Output:["_col0","_col1"] - Group By Operator [GBY_4] (rows=1/1 width=8) - Output:["_col0"],aggregations:["count(VALUE._col0)"] - <-Map 1 [SIMPLE_EDGE] - SHUFFLE [RS_3] - Group By Operator [GBY_2] (rows=1/1 width=8) - Output:["_col0"],aggregations:["count(1)"] - Select Operator [SEL_1] (rows=500/500 width=10) - TableScan [TS_0] (rows=500/500 width=10) - default@src,s1,Tbl:COMPLETE,Col:COMPLETE - Reduce Output Operator [RS_18] + Group By Operator [GBY_3] (rows=1/1 width=8) + Output:["_col0"],aggregations:["count(1)"] + <-Map 1 [SIMPLE_EDGE] + SHUFFLE [RS_2] + Select Operator [SEL_1] (rows=500/500 width=10) + TableScan [TS_0] (rows=500/500 width=10) + default@src,s1,Tbl:COMPLETE,Col:COMPLETE + Reduce Output Operator [RS_15] PartitionCols:_col0, _col1 - Group By Operator [GBY_17] (rows=501/310 width=464) - Output:["_col0","_col1","_col2","_col3"],aggregations:["count(DISTINCT substr(_col1, 5))"],keys:_col0, _col1, substr(_col1, 5) - Please refer to the previous Select Operator [SEL_9] + Please refer to the previous Select Operator [SEL_8] Reducer 5 - File Output Operator [FS_21] + File Output Operator [FS_18] table:{"name:":"default.dest2"} - Group By Operator [GBY_19] (rows=501/310 width=280) + Group By Operator [GBY_16] (rows=501/310 width=280) Output:["_col0","_col1","_col2"],aggregations:["count(DISTINCT KEY._col2:0._col0)"],keys:KEY._col0, KEY._col1 <- Please refer to the previous Union 3 [SIMPLE_EDGE] Stage-5 diff --git a/ql/src/test/results/clientpositive/tez/explainanalyze_3.q.out b/ql/src/test/results/clientpositive/tez/explainanalyze_3.q.out index 57dc950..8d76ad2 100644 --- a/ql/src/test/results/clientpositive/tez/explainanalyze_3.q.out +++ b/ql/src/test/results/clientpositive/tez/explainanalyze_3.q.out @@ -250,17 +250,15 @@ Stage-2 Column Stats Work{} Stage-0 Reducer 2 - File Output Operator [FS_6] - Group By Operator [GBY_4] (rows=1/1 width=984) - Output:["_col0","_col1"],aggregations:["compute_stats(VALUE._col0)","compute_stats(VALUE._col1)"] + File Output Operator [FS_5] + Group By Operator [GBY_3] (rows=1/1 width=960) + Output:["_col0","_col1"],aggregations:["compute_stats(VALUE._col0, 16)","compute_stats(VALUE._col2, 16)"] <-Map 1 [SIMPLE_EDGE] - SHUFFLE [RS_3] - Group By Operator [GBY_2] (rows=1/1 width=984) - Output:["_col0","_col1"],aggregations:["compute_stats(key, 16)","compute_stats(value, 16)"] - Select Operator [SEL_1] (rows=500/500 width=10) - Output:["key","value"] - TableScan [TS_0] (rows=500/500 width=10) - default@src_stats,src_stats,Tbl:COMPLETE,Col:NONE,Output:["key","value"] + SHUFFLE [RS_2] + Select Operator [SEL_1] (rows=500/500 width=10) + Output:["key","value"] + TableScan [TS_0] (rows=500/500 width=10) + default@src_stats,src_stats,Tbl:COMPLETE,Col:NONE,Output:["key","value"] PREHOOK: query: CREATE TEMPORARY MACRO SIGMOID (x DOUBLE) 1.0 / (1.0 + EXP(-x)) PREHOOK: type: CREATEMACRO diff --git a/ql/src/test/results/clientpositive/tez/explainanalyze_4.q.out b/ql/src/test/results/clientpositive/tez/explainanalyze_4.q.out index 3249525..27c1bbe 100644 --- a/ql/src/test/results/clientpositive/tez/explainanalyze_4.q.out +++ b/ql/src/test/results/clientpositive/tez/explainanalyze_4.q.out @@ -140,33 +140,31 @@ Stage-0 limit:-1 Stage-1 Reducer 3 - File Output Operator [FS_14] - Group By Operator [GBY_12] (rows=1/1 width=8) - Output:["_col0"],aggregations:["count(VALUE._col0)"] + File Output Operator [FS_13] + Group By Operator [GBY_11] (rows=1/1 width=8) + Output:["_col0"],aggregations:["count()"] <-Reducer 2 [SIMPLE_EDGE] - SHUFFLE [RS_11] - Group By Operator [GBY_10] (rows=1/1 width=8) - Output:["_col0"],aggregations:["count()"] - Merge Join Operator [MERGEJOIN_19] (rows=2166/10 width=8) - Conds:RS_6._col0=RS_7._col0(Inner) - <-Map 1 [SIMPLE_EDGE] - SHUFFLE [RS_6] - PartitionCols:_col0 - Select Operator [SEL_2] (rows=1365/10 width=2) - Output:["_col0"] - Filter Operator [FIL_17] (rows=1365/10 width=2) - predicate:cint BETWEEN 1000000 AND 3000000 - TableScan [TS_0] (rows=12288/12288 width=2) - default@alltypesorc,a,Tbl:COMPLETE,Col:COMPLETE,Output:["cint"] - <-Map 4 [SIMPLE_EDGE] - SHUFFLE [RS_7] - PartitionCols:_col0 - Select Operator [SEL_5] (rows=1019/10 width=8) - Output:["_col0"] - Filter Operator [FIL_18] (rows=1019/10 width=8) - predicate:(cint BETWEEN 1000000 AND 3000000 and cbigint is not null) - TableScan [TS_3] (rows=12288/12288 width=8) - default@alltypesorc,b,Tbl:COMPLETE,Col:COMPLETE,Output:["cint","cbigint"] + SHUFFLE [RS_10] + Merge Join Operator [MERGEJOIN_18] (rows=2166/10 width=8) + Conds:RS_6._col0=RS_7._col0(Inner) + <-Map 1 [SIMPLE_EDGE] + SHUFFLE [RS_6] + PartitionCols:_col0 + Select Operator [SEL_2] (rows=1365/10 width=2) + Output:["_col0"] + Filter Operator [FIL_16] (rows=1365/10 width=2) + predicate:cint BETWEEN 1000000 AND 3000000 + TableScan [TS_0] (rows=12288/12288 width=2) + default@alltypesorc,a,Tbl:COMPLETE,Col:COMPLETE,Output:["cint"] + <-Map 4 [SIMPLE_EDGE] + SHUFFLE [RS_7] + PartitionCols:_col0 + Select Operator [SEL_5] (rows=1019/10 width=8) + Output:["_col0"] + Filter Operator [FIL_17] (rows=1019/10 width=8) + predicate:(cint BETWEEN 1000000 AND 3000000 and cbigint is not null) + TableScan [TS_3] (rows=12288/12288 width=8) + default@alltypesorc,b,Tbl:COMPLETE,Col:COMPLETE,Output:["cint","cbigint"] PREHOOK: query: select count(*) @@ -235,38 +233,36 @@ Stage-0 limit:-1 Stage-1 Reducer 4 - File Output Operator [FS_16] - Select Operator [SEL_15] (rows=615/5 width=12) + File Output Operator [FS_15] + Select Operator [SEL_14] (rows=615/5 width=12) Output:["_col0","_col1"] <-Reducer 3 [SIMPLE_EDGE] - SHUFFLE [RS_14] - Group By Operator [GBY_12] (rows=615/5 width=12) - Output:["_col0","_col1"],aggregations:["count(VALUE._col0)"],keys:KEY._col0 + SHUFFLE [RS_13] + Group By Operator [GBY_11] (rows=615/5 width=12) + Output:["_col0","_col1"],aggregations:["count()"],keys:KEY._col0 <-Reducer 2 [SIMPLE_EDGE] - SHUFFLE [RS_11] + SHUFFLE [RS_10] PartitionCols:_col0 - Group By Operator [GBY_10] (rows=615/5 width=12) - Output:["_col0","_col1"],aggregations:["count()"],keys:_col0 - Merge Join Operator [MERGEJOIN_21] (rows=2166/10 width=4) - Conds:RS_6._col1=RS_7._col0(Inner),Output:["_col0"] - <-Map 1 [SIMPLE_EDGE] - SHUFFLE [RS_6] - PartitionCols:_col1 - Select Operator [SEL_2] (rows=1365/10 width=5) - Output:["_col0","_col1"] - Filter Operator [FIL_19] (rows=1365/10 width=5) - predicate:cint BETWEEN 1000000 AND 3000000 - TableScan [TS_0] (rows=12288/12288 width=5) - default@alltypesorc,a,Tbl:COMPLETE,Col:COMPLETE,Output:["csmallint","cint"] - <-Map 5 [SIMPLE_EDGE] - SHUFFLE [RS_7] - PartitionCols:_col0 - Select Operator [SEL_5] (rows=1019/10 width=8) - Output:["_col0"] - Filter Operator [FIL_20] (rows=1019/10 width=8) - predicate:(cint BETWEEN 1000000 AND 3000000 and cbigint is not null) - TableScan [TS_3] (rows=12288/12288 width=8) - default@alltypesorc,b,Tbl:COMPLETE,Col:COMPLETE,Output:["cint","cbigint"] + Merge Join Operator [MERGEJOIN_20] (rows=2166/10 width=4) + Conds:RS_6._col1=RS_7._col0(Inner),Output:["_col0"] + <-Map 1 [SIMPLE_EDGE] + SHUFFLE [RS_6] + PartitionCols:_col1 + Select Operator [SEL_2] (rows=1365/10 width=5) + Output:["_col0","_col1"] + Filter Operator [FIL_18] (rows=1365/10 width=5) + predicate:cint BETWEEN 1000000 AND 3000000 + TableScan [TS_0] (rows=12288/12288 width=5) + default@alltypesorc,a,Tbl:COMPLETE,Col:COMPLETE,Output:["csmallint","cint"] + <-Map 5 [SIMPLE_EDGE] + SHUFFLE [RS_7] + PartitionCols:_col0 + Select Operator [SEL_5] (rows=1019/10 width=8) + Output:["_col0"] + Filter Operator [FIL_19] (rows=1019/10 width=8) + predicate:(cint BETWEEN 1000000 AND 3000000 and cbigint is not null) + TableScan [TS_3] (rows=12288/12288 width=8) + default@alltypesorc,b,Tbl:COMPLETE,Col:COMPLETE,Output:["cint","cbigint"] PREHOOK: query: select a.csmallint, count(*) c1 @@ -435,33 +431,31 @@ Stage-0 limit:-1 Stage-1 Reducer 3 - File Output Operator [FS_14] - Group By Operator [GBY_12] (rows=1/1 width=8) - Output:["_col0"],aggregations:["count(VALUE._col0)"] + File Output Operator [FS_13] + Group By Operator [GBY_11] (rows=1/1 width=8) + Output:["_col0"],aggregations:["count()"] <-Reducer 2 [SIMPLE_EDGE] - SHUFFLE [RS_11] - Group By Operator [GBY_10] (rows=1/3 width=8) - Output:["_col0"],aggregations:["count()"] - Map Join Operator [MAPJOIN_19] (rows=1501/10 width=215) - Conds:RS_6.KEY.reducesinkkey0=RS_7.KEY.reducesinkkey0(Inner),HybridGraceHashJoin:true - <-Map 4 [CUSTOM_SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_7] - PartitionCols:_col0 - Select Operator [SEL_5] (rows=1365/10 width=215) - Output:["_col0"] - Filter Operator [FIL_18] (rows=1365/10 width=215) - predicate:(cint BETWEEN 1000000 AND 3000000 and cbigint is not null) - TableScan [TS_3] (rows=12288/12288 width=215) - default@alltypesorc,b,Tbl:COMPLETE,Col:NONE,Output:["cint","cbigint"] - <-Map 1 [CUSTOM_SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_6] - PartitionCols:_col0 - Select Operator [SEL_2] (rows=1365/10 width=215) - Output:["_col0"] - Filter Operator [FIL_17] (rows=1365/10 width=215) - predicate:cint BETWEEN 1000000 AND 3000000 - TableScan [TS_0] (rows=12288/12288 width=215) - default@alltypesorc,a,Tbl:COMPLETE,Col:NONE,Output:["cint"] + SHUFFLE [RS_10] + Map Join Operator [MAPJOIN_18] (rows=1501/10 width=215) + Conds:RS_6.KEY.reducesinkkey0=RS_7.KEY.reducesinkkey0(Inner),HybridGraceHashJoin:true + <-Map 4 [CUSTOM_SIMPLE_EDGE] + PARTITION_ONLY_SHUFFLE [RS_7] + PartitionCols:_col0 + Select Operator [SEL_5] (rows=1365/10 width=215) + Output:["_col0"] + Filter Operator [FIL_17] (rows=1365/10 width=215) + predicate:(cint BETWEEN 1000000 AND 3000000 and cbigint is not null) + TableScan [TS_3] (rows=12288/12288 width=215) + default@alltypesorc,b,Tbl:COMPLETE,Col:NONE,Output:["cint","cbigint"] + <-Map 1 [CUSTOM_SIMPLE_EDGE] + PARTITION_ONLY_SHUFFLE [RS_6] + PartitionCols:_col0 + Select Operator [SEL_2] (rows=1365/10 width=215) + Output:["_col0"] + Filter Operator [FIL_16] (rows=1365/10 width=215) + predicate:cint BETWEEN 1000000 AND 3000000 + TableScan [TS_0] (rows=12288/12288 width=215) + default@alltypesorc,a,Tbl:COMPLETE,Col:NONE,Output:["cint"] PREHOOK: query: select count(*) @@ -530,38 +524,36 @@ Stage-0 limit:-1 Stage-1 Reducer 4 - File Output Operator [FS_16] - Select Operator [SEL_15] (rows=750/5 width=215) + File Output Operator [FS_15] + Select Operator [SEL_14] (rows=750/5 width=215) Output:["_col0","_col1"] <-Reducer 3 [SIMPLE_EDGE] - SHUFFLE [RS_14] - Group By Operator [GBY_12] (rows=750/5 width=215) - Output:["_col0","_col1"],aggregations:["count(VALUE._col0)"],keys:KEY._col0 + SHUFFLE [RS_13] + Group By Operator [GBY_11] (rows=750/5 width=215) + Output:["_col0","_col1"],aggregations:["count()"],keys:KEY._col0 <-Reducer 2 [SIMPLE_EDGE] - SHUFFLE [RS_11] + SHUFFLE [RS_10] PartitionCols:_col0 - Group By Operator [GBY_10] (rows=1501/7 width=215) - Output:["_col0","_col1"],aggregations:["count()"],keys:_col0 - Map Join Operator [MAPJOIN_21] (rows=1501/10 width=215) - Conds:RS_6.KEY.reducesinkkey0=RS_7.KEY.reducesinkkey0(Inner),HybridGraceHashJoin:true,Output:["_col0"] - <-Map 5 [CUSTOM_SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_7] - PartitionCols:_col0 - Select Operator [SEL_5] (rows=1365/10 width=215) - Output:["_col0"] - Filter Operator [FIL_20] (rows=1365/10 width=215) - predicate:(cint BETWEEN 1000000 AND 3000000 and cbigint is not null) - TableScan [TS_3] (rows=12288/12288 width=215) - default@alltypesorc,b,Tbl:COMPLETE,Col:NONE,Output:["cint","cbigint"] - <-Map 1 [CUSTOM_SIMPLE_EDGE] - PARTITION_ONLY_SHUFFLE [RS_6] - PartitionCols:_col1 - Select Operator [SEL_2] (rows=1365/10 width=215) - Output:["_col0","_col1"] - Filter Operator [FIL_19] (rows=1365/10 width=215) - predicate:cint BETWEEN 1000000 AND 3000000 - TableScan [TS_0] (rows=12288/12288 width=215) - default@alltypesorc,a,Tbl:COMPLETE,Col:NONE,Output:["csmallint","cint"] + Map Join Operator [MAPJOIN_20] (rows=1501/10 width=215) + Conds:RS_6.KEY.reducesinkkey0=RS_7.KEY.reducesinkkey0(Inner),HybridGraceHashJoin:true,Output:["_col0"] + <-Map 5 [CUSTOM_SIMPLE_EDGE] + PARTITION_ONLY_SHUFFLE [RS_7] + PartitionCols:_col0 + Select Operator [SEL_5] (rows=1365/10 width=215) + Output:["_col0"] + Filter Operator [FIL_19] (rows=1365/10 width=215) + predicate:(cint BETWEEN 1000000 AND 3000000 and cbigint is not null) + TableScan [TS_3] (rows=12288/12288 width=215) + default@alltypesorc,b,Tbl:COMPLETE,Col:NONE,Output:["cint","cbigint"] + <-Map 1 [CUSTOM_SIMPLE_EDGE] + PARTITION_ONLY_SHUFFLE [RS_6] + PartitionCols:_col1 + Select Operator [SEL_2] (rows=1365/10 width=215) + Output:["_col0","_col1"] + Filter Operator [FIL_18] (rows=1365/10 width=215) + predicate:cint BETWEEN 1000000 AND 3000000 + TableScan [TS_0] (rows=12288/12288 width=215) + default@alltypesorc,a,Tbl:COMPLETE,Col:NONE,Output:["csmallint","cint"] PREHOOK: query: select a.csmallint, count(*) c1 diff --git a/ql/src/test/results/clientpositive/tez/explainanalyze_5.q.out b/ql/src/test/results/clientpositive/tez/explainanalyze_5.q.out index eafe630..b9d69fd 100644 --- a/ql/src/test/results/clientpositive/tez/explainanalyze_5.q.out +++ b/ql/src/test/results/clientpositive/tez/explainanalyze_5.q.out @@ -52,17 +52,15 @@ Stage-2 Column Stats Work{} Stage-0 Reducer 2 - File Output Operator [FS_6] - Group By Operator [GBY_4] (rows=1/1 width=984) - Output:["_col0","_col1"],aggregations:["compute_stats(VALUE._col0)","compute_stats(VALUE._col1)"] + File Output Operator [FS_5] + Group By Operator [GBY_3] (rows=1/1 width=960) + Output:["_col0","_col1"],aggregations:["compute_stats(VALUE._col0, 16)","compute_stats(VALUE._col2, 16)"] <-Map 1 [SIMPLE_EDGE] - SHUFFLE [RS_3] - Group By Operator [GBY_2] (rows=1/1 width=984) - Output:["_col0","_col1"],aggregations:["compute_stats(key, 16)","compute_stats(value, 16)"] - Select Operator [SEL_1] (rows=500/500 width=10) - Output:["key","value"] - TableScan [TS_0] (rows=500/500 width=10) - default@src_stats,src_stats,Tbl:COMPLETE,Col:NONE,Output:["key","value"] + SHUFFLE [RS_2] + Select Operator [SEL_1] (rows=500/500 width=10) + Output:["key","value"] + TableScan [TS_0] (rows=500/500 width=10) + default@src_stats,src_stats,Tbl:COMPLETE,Col:NONE,Output:["key","value"] PREHOOK: query: drop table src_multi2 PREHOOK: type: DROPTABLE @@ -110,61 +108,55 @@ Stage-4 Dependency Collection{} Stage-1 Reducer 5 - File Output Operator [FS_6] - Group By Operator [GBY_4] (rows=1/1 width=960) - Output:["_col0","_col1"],aggregations:["compute_stats(VALUE._col0)","compute_stats(VALUE._col1)"] + File Output Operator [FS_5] + Group By Operator [GBY_3] (rows=1/1 width=960) + Output:["_col0","_col1"],aggregations:["compute_stats(VALUE._col0, 16)","compute_stats(VALUE._col2, 16)"] <-Reducer 4 [SIMPLE_EDGE] - File Output Operator [FS_20] + File Output Operator [FS_19] table:{"name:":"default.src_multi2"} - Select Operator [SEL_19] (rows=639/508 width=178) + Select Operator [SEL_18] (rows=1280/508 width=178) Output:["_col0","_col1"] - Merge Join Operator [MERGEJOIN_27] (rows=639/508 width=178) - Conds:RS_16._col0=RS_17._col0(Inner),Output:["_col0","_col3"] + Merge Join Operator [MERGEJOIN_26] (rows=1280/508 width=178) + Conds:RS_15._col0=RS_16._col0(Inner),Output:["_col0","_col3"] <-Map 7 [SIMPLE_EDGE] - SHUFFLE [RS_17] + SHUFFLE [RS_16] PartitionCols:_col0 - Select Operator [SEL_15] (rows=500/500 width=178) + Select Operator [SEL_14] (rows=500/500 width=178) Output:["_col0","_col1"] - Filter Operator [FIL_26] (rows=500/500 width=178) + Filter Operator [FIL_25] (rows=500/500 width=178) predicate:key is not null - TableScan [TS_13] (rows=500/500 width=178) + TableScan [TS_12] (rows=500/500 width=178) default@src,src,Tbl:COMPLETE,Col:COMPLETE,Output:["key","value"] <-Reducer 3 [SIMPLE_EDGE] - SHUFFLE [RS_16] + SHUFFLE [RS_15] PartitionCols:_col0 - Select Operator [SEL_12] (rows=262/319 width=178) + Select Operator [SEL_11] (rows=525/319 width=178) Output:["_col0"] - Group By Operator [GBY_11] (rows=262/319 width=178) + Group By Operator [GBY_10] (rows=525/319 width=178) Output:["_col0","_col1"],keys:KEY._col0, KEY._col1 <-Union 2 [SIMPLE_EDGE] <-Map 1 [CONTAINS] - Reduce Output Operator [RS_10] + Reduce Output Operator [RS_9] PartitionCols:_col0, _col1 - Group By Operator [GBY_9] (rows=262/331 width=178) - Output:["_col0","_col1"],keys:_col0, _col1 - Select Operator [SEL_2] (rows=500/500 width=178) - Output:["_col0","_col1"] - Filter Operator [FIL_24] (rows=500/500 width=178) - predicate:key is not null - TableScan [TS_0] (rows=500/500 width=178) - Output:["key","value"] + Select Operator [SEL_2] (rows=500/500 width=178) + Output:["_col0","_col1"] + Filter Operator [FIL_23] (rows=500/500 width=178) + predicate:key is not null + TableScan [TS_0] (rows=500/500 width=178) + Output:["key","value"] <-Map 6 [CONTAINS] - Reduce Output Operator [RS_10] + Reduce Output Operator [RS_9] PartitionCols:_col0, _col1 - Group By Operator [GBY_9] (rows=262/331 width=178) - Output:["_col0","_col1"],keys:_col0, _col1 - Select Operator [SEL_5] (rows=25/25 width=175) - Output:["_col0","_col1"] - Filter Operator [FIL_25] (rows=25/25 width=175) - predicate:key is not null - TableScan [TS_3] (rows=25/25 width=175) - Output:["key","value"] - SHUFFLE [RS_3] - Group By Operator [GBY_2] (rows=1/1 width=984) - Output:["_col0","_col1"],aggregations:["compute_stats(key, 16)","compute_stats(value, 16)"] - Select Operator [SEL_1] (rows=639/508 width=178) - Output:["key","value"] - Please refer to the previous Select Operator [SEL_19] + Select Operator [SEL_5] (rows=25/25 width=175) + Output:["_col0","_col1"] + Filter Operator [FIL_24] (rows=25/25 width=175) + predicate:key is not null + TableScan [TS_3] (rows=25/25 width=175) + Output:["key","value"] + SHUFFLE [RS_2] + Select Operator [SEL_1] (rows=1280/508 width=178) + Output:["key","value"] + Please refer to the previous Select Operator [SEL_18] PREHOOK: query: select count(*) from (select * from src union select * from src1)subq PREHOOK: type: QUERY