http://git-wip-us.apache.org/repos/asf/hive/blob/b8299551/ql/src/test/results/clientpositive/perf/tez/constraints/query31.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query31.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query31.q.out new file mode 100644 index 0000000..a01919e --- /dev/null +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query31.q.out @@ -0,0 +1,492 @@ +PREHOOK: query: explain +with ss as + (select ca_county,d_qoy, d_year,sum(ss_ext_sales_price) as store_sales + from store_sales,date_dim,customer_address + where ss_sold_date_sk = d_date_sk + and ss_addr_sk=ca_address_sk + group by ca_county,d_qoy, d_year), + ws as + (select ca_county,d_qoy, d_year,sum(ws_ext_sales_price) as web_sales + from web_sales,date_dim,customer_address + where ws_sold_date_sk = d_date_sk + and ws_bill_addr_sk=ca_address_sk + group by ca_county,d_qoy, d_year) + select /* tt */ + ss1.ca_county + ,ss1.d_year + ,ws2.web_sales/ws1.web_sales web_q1_q2_increase + ,ss2.store_sales/ss1.store_sales store_q1_q2_increase + ,ws3.web_sales/ws2.web_sales web_q2_q3_increase + ,ss3.store_sales/ss2.store_sales store_q2_q3_increase + from + ss ss1 + ,ss ss2 + ,ss ss3 + ,ws ws1 + ,ws ws2 + ,ws ws3 + where + ss1.d_qoy = 1 + and ss1.d_year = 2000 + and ss1.ca_county = ss2.ca_county + and ss2.d_qoy = 2 + and ss2.d_year = 2000 + and ss2.ca_county = ss3.ca_county + and ss3.d_qoy = 3 + and ss3.d_year = 2000 + and ss1.ca_county = ws1.ca_county + and ws1.d_qoy = 1 + and ws1.d_year = 2000 + and ws1.ca_county = ws2.ca_county + and ws2.d_qoy = 2 + and ws2.d_year = 2000 + and ws1.ca_county = ws3.ca_county + and ws3.d_qoy = 3 + and ws3.d_year =2000 + and case when ws1.web_sales > 0 then ws2.web_sales/ws1.web_sales else null end + > case when ss1.store_sales > 0 then ss2.store_sales/ss1.store_sales else null end + and case when ws2.web_sales > 0 then ws3.web_sales/ws2.web_sales else null end + > case when ss2.store_sales > 0 then ss3.store_sales/ss2.store_sales else null end + order by ss1.d_year +PREHOOK: type: QUERY +PREHOOK: Input: default@customer_address +PREHOOK: Input: default@date_dim +PREHOOK: Input: default@store_sales +PREHOOK: Input: default@web_sales +PREHOOK: Output: hdfs://### HDFS PATH ### +POSTHOOK: query: explain +with ss as + (select ca_county,d_qoy, d_year,sum(ss_ext_sales_price) as store_sales + from store_sales,date_dim,customer_address + where ss_sold_date_sk = d_date_sk + and ss_addr_sk=ca_address_sk + group by ca_county,d_qoy, d_year), + ws as + (select ca_county,d_qoy, d_year,sum(ws_ext_sales_price) as web_sales + from web_sales,date_dim,customer_address + where ws_sold_date_sk = d_date_sk + and ws_bill_addr_sk=ca_address_sk + group by ca_county,d_qoy, d_year) + select /* tt */ + ss1.ca_county + ,ss1.d_year + ,ws2.web_sales/ws1.web_sales web_q1_q2_increase + ,ss2.store_sales/ss1.store_sales store_q1_q2_increase + ,ws3.web_sales/ws2.web_sales web_q2_q3_increase + ,ss3.store_sales/ss2.store_sales store_q2_q3_increase + from + ss ss1 + ,ss ss2 + ,ss ss3 + ,ws ws1 + ,ws ws2 + ,ws ws3 + where + ss1.d_qoy = 1 + and ss1.d_year = 2000 + and ss1.ca_county = ss2.ca_county + and ss2.d_qoy = 2 + and ss2.d_year = 2000 + and ss2.ca_county = ss3.ca_county + and ss3.d_qoy = 3 + and ss3.d_year = 2000 + and ss1.ca_county = ws1.ca_county + and ws1.d_qoy = 1 + and ws1.d_year = 2000 + and ws1.ca_county = ws2.ca_county + and ws2.d_qoy = 2 + and ws2.d_year = 2000 + and ws1.ca_county = ws3.ca_county + and ws3.d_qoy = 3 + and ws3.d_year =2000 + and case when ws1.web_sales > 0 then ws2.web_sales/ws1.web_sales else null end + > case when ss1.store_sales > 0 then ss2.store_sales/ss1.store_sales else null end + and case when ws2.web_sales > 0 then ws3.web_sales/ws2.web_sales else null end + > case when ss2.store_sales > 0 then ss3.store_sales/ss2.store_sales else null end + order by ss1.d_year +POSTHOOK: type: QUERY +POSTHOOK: Input: default@customer_address +POSTHOOK: Input: default@date_dim +POSTHOOK: Input: default@store_sales +POSTHOOK: Input: default@web_sales +POSTHOOK: Output: hdfs://### HDFS PATH ### +Plan optimized by CBO. + +Vertex dependency in root stage +Map 1 <- Reducer 9 (BROADCAST_EDGE) +Map 33 <- Reducer 13 (BROADCAST_EDGE) +Map 34 <- Reducer 17 (BROADCAST_EDGE) +Map 35 <- Reducer 23 (BROADCAST_EDGE) +Map 36 <- Reducer 27 (BROADCAST_EDGE) +Map 37 <- Reducer 31 (BROADCAST_EDGE) +Reducer 10 <- Map 33 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) +Reducer 11 <- Map 32 (SIMPLE_EDGE), Reducer 10 (SIMPLE_EDGE) +Reducer 12 <- Reducer 11 (SIMPLE_EDGE) +Reducer 13 <- Map 8 (CUSTOM_SIMPLE_EDGE) +Reducer 14 <- Map 34 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) +Reducer 15 <- Map 32 (SIMPLE_EDGE), Reducer 14 (SIMPLE_EDGE) +Reducer 16 <- Reducer 15 (SIMPLE_EDGE) +Reducer 17 <- Map 8 (CUSTOM_SIMPLE_EDGE) +Reducer 18 <- Map 35 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) +Reducer 19 <- Map 32 (SIMPLE_EDGE), Reducer 18 (SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) +Reducer 20 <- Reducer 19 (SIMPLE_EDGE) +Reducer 21 <- Reducer 20 (ONE_TO_ONE_EDGE), Reducer 26 (ONE_TO_ONE_EDGE) +Reducer 22 <- Reducer 21 (ONE_TO_ONE_EDGE), Reducer 30 (ONE_TO_ONE_EDGE) +Reducer 23 <- Map 8 (CUSTOM_SIMPLE_EDGE) +Reducer 24 <- Map 36 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) +Reducer 25 <- Map 32 (SIMPLE_EDGE), Reducer 24 (SIMPLE_EDGE) +Reducer 26 <- Reducer 25 (SIMPLE_EDGE) +Reducer 27 <- Map 8 (CUSTOM_SIMPLE_EDGE) +Reducer 28 <- Map 37 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) +Reducer 29 <- Map 32 (SIMPLE_EDGE), Reducer 28 (SIMPLE_EDGE) +Reducer 3 <- Map 32 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 30 <- Reducer 29 (SIMPLE_EDGE) +Reducer 31 <- Map 8 (CUSTOM_SIMPLE_EDGE) +Reducer 4 <- Reducer 3 (SIMPLE_EDGE) +Reducer 5 <- Reducer 12 (ONE_TO_ONE_EDGE), Reducer 4 (ONE_TO_ONE_EDGE) +Reducer 6 <- Reducer 16 (ONE_TO_ONE_EDGE), Reducer 5 (ONE_TO_ONE_EDGE) +Reducer 7 <- Reducer 22 (ONE_TO_ONE_EDGE), Reducer 6 (ONE_TO_ONE_EDGE) +Reducer 9 <- Map 8 (CUSTOM_SIMPLE_EDGE) + +Stage-0 + Fetch Operator + limit:-1 + Stage-1 + Reducer 7 + File Output Operator [FS_139] + Select Operator [SEL_138] (rows=110 width=550) + Output:["_col0","_col1","_col2","_col3","_col4","_col5"] + Filter Operator [FIL_136] (rows=110 width=786) + predicate:(CASE WHEN (_col2) THEN (CASE WHEN (_col15) THEN (((_col12 / _col14) > (_col7 / _col1))) ELSE ((null > (_col7 / _col1))) END) ELSE (CASE WHEN (_col15) THEN (((_col12 / _col14) > null)) ELSE (null) END) END and CASE WHEN (_col5) THEN (CASE WHEN (_col10) THEN (((_col14 / _col9) > (_col1 / _col4))) ELSE ((null > (_col1 / _col4))) END) ELSE (CASE WHEN (_col10) THEN (((_col14 / _col9) > null)) ELSE (null) END) END) + Merge Join Operator [MERGEJOIN_450] (rows=440 width=786) + Conds:RS_133._col0=RS_134._col0(Inner),Output:["_col0","_col1","_col2","_col4","_col5","_col7","_col9","_col10","_col12","_col14","_col15"] + <-Reducer 22 [ONE_TO_ONE_EDGE] + FORWARD [RS_134] + PartitionCols:_col0 + Merge Join Operator [MERGEJOIN_449] (rows=440 width=442) + Conds:RS_123._col0=RS_540._col0(Inner),Output:["_col0","_col1","_col2","_col4","_col6","_col7"] + <-Reducer 21 [ONE_TO_ONE_EDGE] + FORWARD [RS_123] + PartitionCols:_col0 + Merge Join Operator [MERGEJOIN_448] (rows=440 width=326) + Conds:RS_525._col0=RS_532._col0(Inner),Output:["_col0","_col1","_col2","_col4"] + <-Reducer 20 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_525] + PartitionCols:_col0 + Select Operator [SEL_524] (rows=440 width=214) + Output:["_col0","_col1","_col2"] + Group By Operator [GBY_523] (rows=440 width=210) + Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 + <-Reducer 19 [SIMPLE_EDGE] + SHUFFLE [RS_77] + PartitionCols:_col0 + Group By Operator [GBY_76] (rows=3960 width=210) + Output:["_col0","_col1"],aggregations:["sum(_col2)"],keys:_col5 + Merge Join Operator [MERGEJOIN_441] (rows=10246882 width=209) + Conds:RS_72._col1=RS_497._col0(Inner),Output:["_col2","_col5"] + <-Map 32 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_497] + PartitionCols:_col0 + Select Operator [SEL_493] (rows=40000000 width=102) + Output:["_col0","_col1"] + Filter Operator [FIL_492] (rows=40000000 width=102) + predicate:ca_county is not null + TableScan [TS_6] (rows=40000000 width=102) + default@customer_address,customer_address,Tbl:COMPLETE,Col:COMPLETE,Output:["ca_address_sk","ca_county"] + <-Reducer 18 [SIMPLE_EDGE] + SHUFFLE [RS_72] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_440] (rows=10246882 width=115) + Conds:RS_522._col0=RS_469._col0(Inner),Output:["_col1","_col2"] + <-Map 8 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_469] + PartitionCols:_col0 + Select Operator [SEL_460] (rows=130 width=4) + Output:["_col0"] + Filter Operator [FIL_454] (rows=130 width=12) + predicate:((d_qoy = 1) and (d_year = 2000)) + TableScan [TS_3] (rows=73049 width=12) + default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_qoy"] + <-Map 35 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_522] + PartitionCols:_col0 + Select Operator [SEL_521] (rows=143931246 width=119) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_520] (rows=143931246 width=119) + predicate:((ws_sold_date_sk BETWEEN DynamicValue(RS_70_date_dim_d_date_sk_min) AND DynamicValue(RS_70_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_70_date_dim_d_date_sk_bloom_filter))) and ws_bill_addr_sk is not null and ws_sold_date_sk is not null) + TableScan [TS_60] (rows=144002668 width=119) + default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_bill_addr_sk","ws_ext_sales_price"] + <-Reducer 23 [BROADCAST_EDGE] vectorized + BROADCAST [RS_519] + Group By Operator [GBY_518] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 8 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_484] + Group By Operator [GBY_478] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_470] (rows=130 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_460] + <-Reducer 26 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_532] + PartitionCols:_col0 + Group By Operator [GBY_531] (rows=440 width=210) + Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 + <-Reducer 25 [SIMPLE_EDGE] + SHUFFLE [RS_97] + PartitionCols:_col0 + Group By Operator [GBY_96] (rows=3960 width=210) + Output:["_col0","_col1"],aggregations:["sum(_col2)"],keys:_col5 + Merge Join Operator [MERGEJOIN_443] (rows=10246882 width=209) + Conds:RS_92._col1=RS_498._col0(Inner),Output:["_col2","_col5"] + <-Map 32 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_498] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_493] + <-Reducer 24 [SIMPLE_EDGE] + SHUFFLE [RS_92] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_442] (rows=10246882 width=115) + Conds:RS_530._col0=RS_471._col0(Inner),Output:["_col1","_col2"] + <-Map 8 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_471] + PartitionCols:_col0 + Select Operator [SEL_461] (rows=130 width=4) + Output:["_col0"] + Filter Operator [FIL_455] (rows=130 width=12) + predicate:((d_qoy = 3) and (d_year = 2000)) + Please refer to the previous TableScan [TS_3] + <-Map 36 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_530] + PartitionCols:_col0 + Select Operator [SEL_529] (rows=143931246 width=119) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_528] (rows=143931246 width=119) + predicate:((ws_sold_date_sk BETWEEN DynamicValue(RS_90_date_dim_d_date_sk_min) AND DynamicValue(RS_90_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_90_date_dim_d_date_sk_bloom_filter))) and ws_bill_addr_sk is not null and ws_sold_date_sk is not null) + TableScan [TS_80] (rows=144002668 width=119) + default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_bill_addr_sk","ws_ext_sales_price"] + <-Reducer 27 [BROADCAST_EDGE] vectorized + BROADCAST [RS_527] + Group By Operator [GBY_526] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 8 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_485] + Group By Operator [GBY_479] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_472] (rows=130 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_461] + <-Reducer 30 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_540] + PartitionCols:_col0 + Select Operator [SEL_539] (rows=440 width=214) + Output:["_col0","_col1","_col2"] + Group By Operator [GBY_538] (rows=440 width=210) + Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 + <-Reducer 29 [SIMPLE_EDGE] + SHUFFLE [RS_117] + PartitionCols:_col0 + Group By Operator [GBY_116] (rows=3960 width=210) + Output:["_col0","_col1"],aggregations:["sum(_col2)"],keys:_col5 + Merge Join Operator [MERGEJOIN_445] (rows=10246882 width=209) + Conds:RS_112._col1=RS_499._col0(Inner),Output:["_col2","_col5"] + <-Map 32 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_499] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_493] + <-Reducer 28 [SIMPLE_EDGE] + SHUFFLE [RS_112] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_444] (rows=10246882 width=115) + Conds:RS_537._col0=RS_473._col0(Inner),Output:["_col1","_col2"] + <-Map 8 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_473] + PartitionCols:_col0 + Select Operator [SEL_462] (rows=130 width=4) + Output:["_col0"] + Filter Operator [FIL_456] (rows=130 width=12) + predicate:((d_qoy = 2) and (d_year = 2000)) + Please refer to the previous TableScan [TS_3] + <-Map 37 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_537] + PartitionCols:_col0 + Select Operator [SEL_536] (rows=143931246 width=119) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_535] (rows=143931246 width=119) + predicate:((ws_sold_date_sk BETWEEN DynamicValue(RS_110_date_dim_d_date_sk_min) AND DynamicValue(RS_110_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_110_date_dim_d_date_sk_bloom_filter))) and ws_bill_addr_sk is not null and ws_sold_date_sk is not null) + TableScan [TS_100] (rows=144002668 width=119) + default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_bill_addr_sk","ws_ext_sales_price"] + <-Reducer 31 [BROADCAST_EDGE] vectorized + BROADCAST [RS_534] + Group By Operator [GBY_533] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 8 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_486] + Group By Operator [GBY_480] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_474] (rows=130 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_462] + <-Reducer 6 [ONE_TO_ONE_EDGE] + FORWARD [RS_133] + PartitionCols:_col0 + Merge Join Operator [MERGEJOIN_447] (rows=1605 width=442) + Conds:RS_130._col0=RS_517._col0(Inner),Output:["_col0","_col1","_col2","_col4","_col5","_col7"] + <-Reducer 16 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_517] + PartitionCols:_col0 + Group By Operator [GBY_516] (rows=1605 width=210) + Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 + <-Reducer 15 [SIMPLE_EDGE] + SHUFFLE [RS_57] + PartitionCols:_col0 + Group By Operator [GBY_56] (rows=33705 width=210) + Output:["_col0","_col1"],aggregations:["sum(_col2)"],keys:_col5 + Merge Join Operator [MERGEJOIN_439] (rows=37399561 width=139) + Conds:RS_52._col1=RS_496._col0(Inner),Output:["_col2","_col5"] + <-Map 32 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_496] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_493] + <-Reducer 14 [SIMPLE_EDGE] + SHUFFLE [RS_52] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_438] (rows=37399561 width=42) + Conds:RS_515._col0=RS_467._col0(Inner),Output:["_col1","_col2"] + <-Map 8 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_467] + PartitionCols:_col0 + Select Operator [SEL_459] (rows=130 width=4) + Output:["_col0"] + Filter Operator [FIL_453] (rows=130 width=12) + predicate:((d_qoy = 3) and (d_year = 2000)) + Please refer to the previous TableScan [TS_3] + <-Map 34 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_515] + PartitionCols:_col0 + Select Operator [SEL_514] (rows=525327191 width=114) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_513] (rows=525327191 width=114) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_50_date_dim_d_date_sk_min) AND DynamicValue(RS_50_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_50_date_dim_d_date_sk_bloom_filter))) and ss_addr_sk is not null and ss_sold_date_sk is not null) + TableScan [TS_40] (rows=575995635 width=114) + default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_addr_sk","ss_ext_sales_price"] + <-Reducer 17 [BROADCAST_EDGE] vectorized + BROADCAST [RS_512] + Group By Operator [GBY_511] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 8 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_483] + Group By Operator [GBY_477] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_468] (rows=130 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_459] + <-Reducer 5 [ONE_TO_ONE_EDGE] + FORWARD [RS_130] + PartitionCols:_col0 + Merge Join Operator [MERGEJOIN_446] (rows=1605 width=330) + Conds:RS_502._col0=RS_510._col0(Inner),Output:["_col0","_col1","_col2","_col4","_col5"] + <-Reducer 12 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_510] + PartitionCols:_col0 + Select Operator [SEL_509] (rows=1605 width=214) + Output:["_col0","_col1","_col2"] + Group By Operator [GBY_508] (rows=1605 width=210) + Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 + <-Reducer 11 [SIMPLE_EDGE] + SHUFFLE [RS_37] + PartitionCols:_col0 + Group By Operator [GBY_36] (rows=33705 width=210) + Output:["_col0","_col1"],aggregations:["sum(_col2)"],keys:_col5 + Merge Join Operator [MERGEJOIN_437] (rows=37399561 width=139) + Conds:RS_32._col1=RS_495._col0(Inner),Output:["_col2","_col5"] + <-Map 32 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_495] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_493] + <-Reducer 10 [SIMPLE_EDGE] + SHUFFLE [RS_32] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_436] (rows=37399561 width=42) + Conds:RS_507._col0=RS_465._col0(Inner),Output:["_col1","_col2"] + <-Map 8 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_465] + PartitionCols:_col0 + Select Operator [SEL_458] (rows=130 width=4) + Output:["_col0"] + Filter Operator [FIL_452] (rows=130 width=12) + predicate:((d_qoy = 1) and (d_year = 2000)) + Please refer to the previous TableScan [TS_3] + <-Map 33 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_507] + PartitionCols:_col0 + Select Operator [SEL_506] (rows=525327191 width=114) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_505] (rows=525327191 width=114) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_30_date_dim_d_date_sk_min) AND DynamicValue(RS_30_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_30_date_dim_d_date_sk_bloom_filter))) and ss_addr_sk is not null and ss_sold_date_sk is not null) + TableScan [TS_20] (rows=575995635 width=114) + default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_addr_sk","ss_ext_sales_price"] + <-Reducer 13 [BROADCAST_EDGE] vectorized + BROADCAST [RS_504] + Group By Operator [GBY_503] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 8 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_482] + Group By Operator [GBY_476] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_466] (rows=130 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_458] + <-Reducer 4 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_502] + PartitionCols:_col0 + Select Operator [SEL_501] (rows=1605 width=214) + Output:["_col0","_col1","_col2"] + Group By Operator [GBY_500] (rows=1605 width=210) + Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 + <-Reducer 3 [SIMPLE_EDGE] + SHUFFLE [RS_17] + PartitionCols:_col0 + Group By Operator [GBY_16] (rows=33705 width=210) + Output:["_col0","_col1"],aggregations:["sum(_col2)"],keys:_col5 + Merge Join Operator [MERGEJOIN_435] (rows=37399561 width=139) + Conds:RS_12._col1=RS_494._col0(Inner),Output:["_col2","_col5"] + <-Map 32 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_494] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_493] + <-Reducer 2 [SIMPLE_EDGE] + SHUFFLE [RS_12] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_434] (rows=37399561 width=42) + Conds:RS_491._col0=RS_463._col0(Inner),Output:["_col1","_col2"] + <-Map 8 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_463] + PartitionCols:_col0 + Select Operator [SEL_457] (rows=130 width=4) + Output:["_col0"] + Filter Operator [FIL_451] (rows=130 width=12) + predicate:((d_qoy = 2) and (d_year = 2000)) + Please refer to the previous TableScan [TS_3] + <-Map 1 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_491] + PartitionCols:_col0 + Select Operator [SEL_490] (rows=525327191 width=114) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_489] (rows=525327191 width=114) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_10_date_dim_d_date_sk_min) AND DynamicValue(RS_10_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_10_date_dim_d_date_sk_bloom_filter))) and ss_addr_sk is not null and ss_sold_date_sk is not null) + TableScan [TS_0] (rows=575995635 width=114) + default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_addr_sk","ss_ext_sales_price"] + <-Reducer 9 [BROADCAST_EDGE] vectorized + BROADCAST [RS_488] + Group By Operator [GBY_487] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 8 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_481] + Group By Operator [GBY_475] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_464] (rows=130 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_457] +
http://git-wip-us.apache.org/repos/asf/hive/blob/b8299551/ql/src/test/results/clientpositive/perf/tez/constraints/query32.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query32.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query32.q.out new file mode 100644 index 0000000..d909c02 --- /dev/null +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query32.q.out @@ -0,0 +1,210 @@ +PREHOOK: query: explain +select sum(cs_ext_discount_amt) as `excess discount amount` +from + catalog_sales + ,item + ,date_dim +where +i_manufact_id = 269 +and i_item_sk = cs_item_sk +and d_date between '1998-03-18' and + (cast('1998-03-18' as date) + 90 days) +and d_date_sk = cs_sold_date_sk +and cs_ext_discount_amt + > ( + select + 1.3 * avg(cs_ext_discount_amt) + from + catalog_sales + ,date_dim + where + cs_item_sk = i_item_sk + and d_date between '1998-03-18' and + (cast('1998-03-18' as date) + 90 days) + and d_date_sk = cs_sold_date_sk + ) +limit 100 +PREHOOK: type: QUERY +PREHOOK: Input: default@catalog_sales +PREHOOK: Input: default@date_dim +PREHOOK: Input: default@item +PREHOOK: Output: hdfs://### HDFS PATH ### +POSTHOOK: query: explain +select sum(cs_ext_discount_amt) as `excess discount amount` +from + catalog_sales + ,item + ,date_dim +where +i_manufact_id = 269 +and i_item_sk = cs_item_sk +and d_date between '1998-03-18' and + (cast('1998-03-18' as date) + 90 days) +and d_date_sk = cs_sold_date_sk +and cs_ext_discount_amt + > ( + select + 1.3 * avg(cs_ext_discount_amt) + from + catalog_sales + ,date_dim + where + cs_item_sk = i_item_sk + and d_date between '1998-03-18' and + (cast('1998-03-18' as date) + 90 days) + and d_date_sk = cs_sold_date_sk + ) +limit 100 +POSTHOOK: type: QUERY +POSTHOOK: Input: default@catalog_sales +POSTHOOK: Input: default@date_dim +POSTHOOK: Input: default@item +POSTHOOK: Output: hdfs://### HDFS PATH ### +Plan optimized by CBO. + +Vertex dependency in root stage +Map 1 <- Reducer 14 (BROADCAST_EDGE), Reducer 7 (BROADCAST_EDGE) +Map 12 <- Reducer 11 (BROADCAST_EDGE), Reducer 14 (BROADCAST_EDGE), Reducer 5 (BROADCAST_EDGE) +Reducer 10 <- Map 13 (SIMPLE_EDGE), Reducer 9 (ONE_TO_ONE_EDGE) +Reducer 11 <- Map 6 (CUSTOM_SIMPLE_EDGE) +Reducer 14 <- Map 13 (CUSTOM_SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) +Reducer 3 <- Reducer 10 (ONE_TO_ONE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 4 <- Reducer 3 (CUSTOM_SIMPLE_EDGE) +Reducer 5 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) +Reducer 7 <- Map 6 (CUSTOM_SIMPLE_EDGE) +Reducer 8 <- Map 12 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) +Reducer 9 <- Reducer 8 (SIMPLE_EDGE) + +Stage-0 + Fetch Operator + limit:100 + Stage-1 + Reducer 4 vectorized + File Output Operator [FS_141] + Limit [LIM_140] (rows=1 width=112) + Number of rows:100 + Group By Operator [GBY_139] (rows=1 width=112) + Output:["_col0"],aggregations:["sum(VALUE._col0)"] + <-Reducer 3 [CUSTOM_SIMPLE_EDGE] + PARTITION_ONLY_SHUFFLE [RS_36] + Group By Operator [GBY_35] (rows=1 width=112) + Output:["_col0"],aggregations:["sum(_col2)"] + Select Operator [SEL_34] (rows=2478 width=112) + Output:["_col2"] + Filter Operator [FIL_33] (rows=2478 width=112) + predicate:(_col2 > _col5) + Merge Join Operator [MERGEJOIN_104] (rows=7434 width=112) + Conds:RS_30._col1=RS_31._col2(Inner),Output:["_col2","_col5"] + <-Reducer 2 [SIMPLE_EDGE] + PARTITION_ONLY_SHUFFLE [RS_30] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_101] (rows=31836679 width=110) + Conds:RS_128._col0=RS_107._col0(Inner),Output:["_col1","_col2"] + <-Map 6 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_107] + PartitionCols:_col0 + Select Operator [SEL_106] (rows=8116 width=4) + Output:["_col0"] + Filter Operator [FIL_105] (rows=8116 width=98) + predicate:CAST( d_date AS TIMESTAMP) BETWEEN TIMESTAMP'1998-03-18 00:00:00' AND TIMESTAMP'1998-06-16 00:00:00' + TableScan [TS_3] (rows=73049 width=98) + default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"] + <-Map 1 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_128] + PartitionCols:_col0 + Select Operator [SEL_127] (rows=286549727 width=119) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_126] (rows=286549727 width=119) + predicate:((cs_item_sk BETWEEN DynamicValue(RS_24_item_i_item_sk_min) AND DynamicValue(RS_24_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_24_item_i_item_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_28_date_dim_d_date_sk_min) AND DynamicValue(RS_28_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_28_date_dim_d_date_sk_bloom_filter))) and cs_sold_date_sk is not null) + TableScan [TS_0] (rows=287989836 width=119) + default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_item_sk","cs_ext_discount_amt"] + <-Reducer 14 [BROADCAST_EDGE] vectorized + BROADCAST [RS_124] + Group By Operator [GBY_123] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 13 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_122] + Group By Operator [GBY_121] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_120] (rows=669 width=4) + Output:["_col0"] + Select Operator [SEL_118] (rows=669 width=4) + Output:["_col0"] + Filter Operator [FIL_117] (rows=669 width=7) + predicate:(i_manufact_id = 269) + TableScan [TS_20] (rows=462000 width=7) + default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_manufact_id"] + <-Reducer 7 [BROADCAST_EDGE] vectorized + BROADCAST [RS_116] + Group By Operator [GBY_115] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 6 [CUSTOM_SIMPLE_EDGE] vectorized + SHUFFLE [RS_113] + Group By Operator [GBY_111] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_108] (rows=8116 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_106] + <-Reducer 10 [ONE_TO_ONE_EDGE] + FORWARD [RS_31] + PartitionCols:_col2 + Merge Join Operator [MERGEJOIN_103] (rows=97 width=116) + Conds:RS_138._col0=RS_119._col0(Inner),Output:["_col1","_col2"] + <-Map 13 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_119] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_118] + <-Reducer 9 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_138] + PartitionCols:_col0 + Select Operator [SEL_137] (rows=6951 width=116) + Output:["_col0","_col1"] + Group By Operator [GBY_136] (rows=6951 width=124) + Output:["_col0","_col1","_col2"],aggregations:["sum(VALUE._col0)","count(VALUE._col1)"],keys:KEY._col0 + <-Reducer 8 [SIMPLE_EDGE] + SHUFFLE [RS_17] + PartitionCols:_col0 + Group By Operator [GBY_16] (rows=97314 width=124) + Output:["_col0","_col1","_col2"],aggregations:["sum(_col2)","count(_col2)"],keys:_col1 + Merge Join Operator [MERGEJOIN_102] (rows=31836679 width=110) + Conds:RS_135._col0=RS_109._col0(Inner),Output:["_col1","_col2"] + <-Map 6 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_109] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_106] + <-Map 12 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_135] + PartitionCols:_col0 + Select Operator [SEL_134] (rows=286549727 width=119) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_133] (rows=286549727 width=119) + predicate:((cs_item_sk BETWEEN DynamicValue(RS_24_item_i_item_sk_min) AND DynamicValue(RS_24_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_24_item_i_item_sk_bloom_filter))) and (cs_item_sk BETWEEN DynamicValue(RS_30_catalog_sales_cs_item_sk_min) AND DynamicValue(RS_30_catalog_sales_cs_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_30_catalog_sales_cs_item_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_13_date_dim_d_date_sk_min) AND DynamicValue(RS_13_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_13_date_dim_d_date_sk_bloom_filter))) and cs_sold_date_sk is not null) + TableScan [TS_6] (rows=287989836 width=119) + default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_item_sk","cs_ext_discount_amt"] + <-Reducer 14 [BROADCAST_EDGE] vectorized + BROADCAST [RS_125] + Please refer to the previous Group By Operator [GBY_123] + <-Reducer 11 [BROADCAST_EDGE] vectorized + BROADCAST [RS_130] + Group By Operator [GBY_129] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 6 [CUSTOM_SIMPLE_EDGE] vectorized + SHUFFLE [RS_114] + Group By Operator [GBY_112] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_110] (rows=8116 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_106] + <-Reducer 5 [BROADCAST_EDGE] vectorized + BROADCAST [RS_132] + Group By Operator [GBY_131] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Reducer 2 [CUSTOM_SIMPLE_EDGE] + PARTITION_ONLY_SHUFFLE [RS_91] + Group By Operator [GBY_90] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_89] (rows=31836679 width=8) + Output:["_col0"] + Please refer to the previous Merge Join Operator [MERGEJOIN_101] + http://git-wip-us.apache.org/repos/asf/hive/blob/b8299551/ql/src/test/results/clientpositive/perf/tez/constraints/query33.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query33.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query33.q.out new file mode 100644 index 0000000..c82c415 --- /dev/null +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query33.q.out @@ -0,0 +1,450 @@ +PREHOOK: query: explain +with ss as ( + select + i_manufact_id,sum(ss_ext_sales_price) total_sales + from + store_sales, + date_dim, + customer_address, + item + where + i_manufact_id in (select + i_manufact_id +from + item +where i_category in ('Books')) + and ss_item_sk = i_item_sk + and ss_sold_date_sk = d_date_sk + and d_year = 1999 + and d_moy = 3 + and ss_addr_sk = ca_address_sk + and ca_gmt_offset = -6 + group by i_manufact_id), + cs as ( + select + i_manufact_id,sum(cs_ext_sales_price) total_sales + from + catalog_sales, + date_dim, + customer_address, + item + where + i_manufact_id in (select + i_manufact_id +from + item +where i_category in ('Books')) + and cs_item_sk = i_item_sk + and cs_sold_date_sk = d_date_sk + and d_year = 1999 + and d_moy = 3 + and cs_bill_addr_sk = ca_address_sk + and ca_gmt_offset = -6 + group by i_manufact_id), + ws as ( + select + i_manufact_id,sum(ws_ext_sales_price) total_sales + from + web_sales, + date_dim, + customer_address, + item + where + i_manufact_id in (select + i_manufact_id +from + item +where i_category in ('Books')) + and ws_item_sk = i_item_sk + and ws_sold_date_sk = d_date_sk + and d_year = 1999 + and d_moy = 3 + and ws_bill_addr_sk = ca_address_sk + and ca_gmt_offset = -6 + group by i_manufact_id) + select i_manufact_id ,sum(total_sales) total_sales + from (select * from ss + union all + select * from cs + union all + select * from ws) tmp1 + group by i_manufact_id + order by total_sales +limit 100 +PREHOOK: type: QUERY +PREHOOK: Input: default@catalog_sales +PREHOOK: Input: default@customer_address +PREHOOK: Input: default@date_dim +PREHOOK: Input: default@item +PREHOOK: Input: default@store_sales +PREHOOK: Input: default@web_sales +PREHOOK: Output: hdfs://### HDFS PATH ### +POSTHOOK: query: explain +with ss as ( + select + i_manufact_id,sum(ss_ext_sales_price) total_sales + from + store_sales, + date_dim, + customer_address, + item + where + i_manufact_id in (select + i_manufact_id +from + item +where i_category in ('Books')) + and ss_item_sk = i_item_sk + and ss_sold_date_sk = d_date_sk + and d_year = 1999 + and d_moy = 3 + and ss_addr_sk = ca_address_sk + and ca_gmt_offset = -6 + group by i_manufact_id), + cs as ( + select + i_manufact_id,sum(cs_ext_sales_price) total_sales + from + catalog_sales, + date_dim, + customer_address, + item + where + i_manufact_id in (select + i_manufact_id +from + item +where i_category in ('Books')) + and cs_item_sk = i_item_sk + and cs_sold_date_sk = d_date_sk + and d_year = 1999 + and d_moy = 3 + and cs_bill_addr_sk = ca_address_sk + and ca_gmt_offset = -6 + group by i_manufact_id), + ws as ( + select + i_manufact_id,sum(ws_ext_sales_price) total_sales + from + web_sales, + date_dim, + customer_address, + item + where + i_manufact_id in (select + i_manufact_id +from + item +where i_category in ('Books')) + and ws_item_sk = i_item_sk + and ws_sold_date_sk = d_date_sk + and d_year = 1999 + and d_moy = 3 + and ws_bill_addr_sk = ca_address_sk + and ca_gmt_offset = -6 + group by i_manufact_id) + select i_manufact_id ,sum(total_sales) total_sales + from (select * from ss + union all + select * from cs + union all + select * from ws) tmp1 + group by i_manufact_id + order by total_sales +limit 100 +POSTHOOK: type: QUERY +POSTHOOK: Input: default@catalog_sales +POSTHOOK: Input: default@customer_address +POSTHOOK: Input: default@date_dim +POSTHOOK: Input: default@item +POSTHOOK: Input: default@store_sales +POSTHOOK: Input: default@web_sales +POSTHOOK: Output: hdfs://### HDFS PATH ### +Plan optimized by CBO. + +Vertex dependency in root stage +Map 14 <- Reducer 18 (BROADCAST_EDGE), Reducer 26 (BROADCAST_EDGE) +Map 29 <- Reducer 21 (BROADCAST_EDGE), Reducer 27 (BROADCAST_EDGE) +Map 30 <- Reducer 24 (BROADCAST_EDGE), Reducer 28 (BROADCAST_EDGE) +Reducer 10 <- Reducer 2 (SIMPLE_EDGE), Reducer 23 (SIMPLE_EDGE) +Reducer 11 <- Reducer 10 (SIMPLE_EDGE), Union 5 (CONTAINS) +Reducer 13 <- Map 12 (SIMPLE_EDGE) +Reducer 15 <- Map 14 (SIMPLE_EDGE), Map 17 (SIMPLE_EDGE) +Reducer 16 <- Map 25 (SIMPLE_EDGE), Reducer 15 (SIMPLE_EDGE) +Reducer 18 <- Map 17 (CUSTOM_SIMPLE_EDGE) +Reducer 19 <- Map 17 (SIMPLE_EDGE), Map 29 (SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 13 (ONE_TO_ONE_EDGE) +Reducer 20 <- Map 25 (SIMPLE_EDGE), Reducer 19 (SIMPLE_EDGE) +Reducer 21 <- Map 17 (CUSTOM_SIMPLE_EDGE) +Reducer 22 <- Map 17 (SIMPLE_EDGE), Map 30 (SIMPLE_EDGE) +Reducer 23 <- Map 25 (SIMPLE_EDGE), Reducer 22 (SIMPLE_EDGE) +Reducer 24 <- Map 17 (CUSTOM_SIMPLE_EDGE) +Reducer 26 <- Map 25 (CUSTOM_SIMPLE_EDGE) +Reducer 27 <- Map 25 (CUSTOM_SIMPLE_EDGE) +Reducer 28 <- Map 25 (CUSTOM_SIMPLE_EDGE) +Reducer 3 <- Reducer 16 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Union 5 (CONTAINS) +Reducer 6 <- Union 5 (SIMPLE_EDGE) +Reducer 7 <- Reducer 6 (SIMPLE_EDGE) +Reducer 8 <- Reducer 2 (SIMPLE_EDGE), Reducer 20 (SIMPLE_EDGE) +Reducer 9 <- Reducer 8 (SIMPLE_EDGE), Union 5 (CONTAINS) + +Stage-0 + Fetch Operator + limit:100 + Stage-1 + Reducer 7 vectorized + File Output Operator [FS_372] + Limit [LIM_371] (rows=59 width=115) + Number of rows:100 + Select Operator [SEL_370] (rows=59 width=115) + Output:["_col0","_col1"] + <-Reducer 6 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_369] + Group By Operator [GBY_368] (rows=59 width=115) + Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 + <-Union 5 [SIMPLE_EDGE] + <-Reducer 11 [CONTAINS] vectorized + Reduce Output Operator [RS_392] + PartitionCols:_col0 + Group By Operator [GBY_391] (rows=59 width=115) + Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0 + Group By Operator [GBY_390] (rows=19 width=115) + Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 + <-Reducer 10 [SIMPLE_EDGE] + SHUFFLE [RS_109] + PartitionCols:_col0 + Group By Operator [GBY_108] (rows=19 width=115) + Output:["_col0","_col1"],aggregations:["sum(_col7)"],keys:_col1 + Merge Join Operator [MERGEJOIN_308] (rows=11364 width=3) + Conds:RS_104._col0=RS_105._col2(Inner),Output:["_col1","_col7"] + <-Reducer 2 [SIMPLE_EDGE] + SHUFFLE [RS_104] + PartitionCols:_col0 + Merge Join Operator [MERGEJOIN_297] (rows=461514 width=7) + Conds:RS_323._col1=RS_329._col0(Inner),Output:["_col0","_col1"] + <-Map 1 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_323] + PartitionCols:_col1 + Select Operator [SEL_322] (rows=460848 width=7) + Output:["_col0","_col1"] + Filter Operator [FIL_321] (rows=460848 width=7) + predicate:i_manufact_id is not null + TableScan [TS_0] (rows=462000 width=7) + default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_manufact_id"] + <-Reducer 13 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_329] + PartitionCols:_col0 + Group By Operator [GBY_328] (rows=692 width=3) + Output:["_col0"],keys:KEY._col0 + <-Map 12 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_327] + PartitionCols:_col0 + Group By Operator [GBY_326] (rows=692 width=3) + Output:["_col0"],keys:i_manufact_id + Select Operator [SEL_325] (rows=46085 width=93) + Output:["i_manufact_id"] + Filter Operator [FIL_324] (rows=46085 width=93) + predicate:((i_category = 'Books') and i_manufact_id is not null) + TableScan [TS_3] (rows=462000 width=93) + default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_category","i_manufact_id"] + <-Reducer 23 [SIMPLE_EDGE] + SHUFFLE [RS_105] + PartitionCols:_col2 + Select Operator [SEL_100] (rows=788222 width=110) + Output:["_col2","_col4"] + Merge Join Operator [MERGEJOIN_305] (rows=788222 width=110) + Conds:RS_97._col2=RS_352._col0(Inner),Output:["_col1","_col3"] + <-Map 25 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_352] + PartitionCols:_col0 + Select Operator [SEL_347] (rows=8000000 width=4) + Output:["_col0"] + Filter Operator [FIL_346] (rows=8000000 width=112) + predicate:(ca_gmt_offset = -6) + TableScan [TS_16] (rows=40000000 width=112) + default@customer_address,customer_address,Tbl:COMPLETE,Col:COMPLETE,Output:["ca_address_sk","ca_gmt_offset"] + <-Reducer 22 [SIMPLE_EDGE] + SHUFFLE [RS_97] + PartitionCols:_col2 + Merge Join Operator [MERGEJOIN_304] (rows=3941109 width=118) + Conds:RS_389._col0=RS_336._col0(Inner),Output:["_col1","_col2","_col3"] + <-Map 17 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_336] + PartitionCols:_col0 + Select Operator [SEL_331] (rows=50 width=4) + Output:["_col0"] + Filter Operator [FIL_330] (rows=50 width=12) + predicate:((d_moy = 3) and (d_year = 1999)) + TableScan [TS_13] (rows=73049 width=12) + default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] + <-Map 30 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_389] + PartitionCols:_col0 + Select Operator [SEL_388] (rows=143931246 width=123) + Output:["_col0","_col1","_col2","_col3"] + Filter Operator [FIL_387] (rows=143931246 width=123) + predicate:((ws_bill_addr_sk BETWEEN DynamicValue(RS_98_customer_address_ca_address_sk_min) AND DynamicValue(RS_98_customer_address_ca_address_sk_max) and in_bloom_filter(ws_bill_addr_sk, DynamicValue(RS_98_customer_address_ca_address_sk_bloom_filter))) and (ws_sold_date_sk BETWEEN DynamicValue(RS_95_date_dim_d_date_sk_min) AND DynamicValue(RS_95_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_95_date_dim_d_date_sk_bloom_filter))) and ws_bill_addr_sk is not null and ws_sold_date_sk is not null) + TableScan [TS_85] (rows=144002668 width=123) + default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_item_sk","ws_bill_addr_sk","ws_ext_sales_price"] + <-Reducer 24 [BROADCAST_EDGE] vectorized + BROADCAST [RS_384] + Group By Operator [GBY_383] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 17 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_343] + Group By Operator [GBY_340] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_337] (rows=50 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_331] + <-Reducer 28 [BROADCAST_EDGE] vectorized + BROADCAST [RS_386] + Group By Operator [GBY_385] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=8000000)"] + <-Map 25 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_359] + Group By Operator [GBY_356] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=8000000)"] + Select Operator [SEL_353] (rows=8000000 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_347] + <-Reducer 4 [CONTAINS] vectorized + Reduce Output Operator [RS_367] + PartitionCols:_col0 + Group By Operator [GBY_366] (rows=59 width=115) + Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0 + Group By Operator [GBY_365] (rows=64 width=115) + Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 + <-Reducer 3 [SIMPLE_EDGE] + SHUFFLE [RS_34] + PartitionCols:_col0 + Group By Operator [GBY_33] (rows=64 width=115) + Output:["_col0","_col1"],aggregations:["sum(_col7)"],keys:_col1 + Merge Join Operator [MERGEJOIN_306] (rows=41476 width=3) + Conds:RS_29._col0=RS_30._col2(Inner),Output:["_col1","_col7"] + <-Reducer 2 [SIMPLE_EDGE] + SHUFFLE [RS_29] + PartitionCols:_col0 + Please refer to the previous Merge Join Operator [MERGEJOIN_297] + <-Reducer 16 [SIMPLE_EDGE] + SHUFFLE [RS_30] + PartitionCols:_col2 + Select Operator [SEL_25] (rows=2876890 width=4) + Output:["_col2","_col4"] + Merge Join Operator [MERGEJOIN_299] (rows=2876890 width=4) + Conds:RS_22._col2=RS_348._col0(Inner),Output:["_col1","_col3"] + <-Map 25 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_348] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_347] + <-Reducer 15 [SIMPLE_EDGE] + SHUFFLE [RS_22] + PartitionCols:_col2 + Merge Join Operator [MERGEJOIN_298] (rows=14384447 width=4) + Conds:RS_364._col0=RS_332._col0(Inner),Output:["_col1","_col2","_col3"] + <-Map 17 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_332] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_331] + <-Map 14 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_364] + PartitionCols:_col0 + Select Operator [SEL_363] (rows=525327191 width=118) + Output:["_col0","_col1","_col2","_col3"] + Filter Operator [FIL_362] (rows=525327191 width=118) + predicate:((ss_addr_sk BETWEEN DynamicValue(RS_23_customer_address_ca_address_sk_min) AND DynamicValue(RS_23_customer_address_ca_address_sk_max) and in_bloom_filter(ss_addr_sk, DynamicValue(RS_23_customer_address_ca_address_sk_bloom_filter))) and (ss_sold_date_sk BETWEEN DynamicValue(RS_20_date_dim_d_date_sk_min) AND DynamicValue(RS_20_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_20_date_dim_d_date_sk_bloom_filter))) and ss_addr_sk is not null and ss_sold_date_sk is not null) + TableScan [TS_10] (rows=575995635 width=118) + default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk","ss_addr_sk","ss_ext_sales_price"] + <-Reducer 18 [BROADCAST_EDGE] vectorized + BROADCAST [RS_345] + Group By Operator [GBY_344] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 17 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_341] + Group By Operator [GBY_338] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_333] (rows=50 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_331] + <-Reducer 26 [BROADCAST_EDGE] vectorized + BROADCAST [RS_361] + Group By Operator [GBY_360] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=8000000)"] + <-Map 25 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_357] + Group By Operator [GBY_354] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=8000000)"] + Select Operator [SEL_349] (rows=8000000 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_347] + <-Reducer 9 [CONTAINS] vectorized + Reduce Output Operator [RS_382] + PartitionCols:_col0 + Group By Operator [GBY_381] (rows=59 width=115) + Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0 + Group By Operator [GBY_380] (rows=35 width=115) + Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 + <-Reducer 8 [SIMPLE_EDGE] + SHUFFLE [RS_71] + PartitionCols:_col0 + Group By Operator [GBY_70] (rows=35 width=115) + Output:["_col0","_col1"],aggregations:["sum(_col7)"],keys:_col1 + Merge Join Operator [MERGEJOIN_307] (rows=22352 width=3) + Conds:RS_66._col0=RS_67._col3(Inner),Output:["_col1","_col7"] + <-Reducer 2 [SIMPLE_EDGE] + SHUFFLE [RS_66] + PartitionCols:_col0 + Please refer to the previous Merge Join Operator [MERGEJOIN_297] + <-Reducer 20 [SIMPLE_EDGE] + SHUFFLE [RS_67] + PartitionCols:_col3 + Select Operator [SEL_62] (rows=1550375 width=13) + Output:["_col3","_col4"] + Merge Join Operator [MERGEJOIN_302] (rows=1550375 width=13) + Conds:RS_59._col1=RS_350._col0(Inner),Output:["_col2","_col3"] + <-Map 25 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_350] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_347] + <-Reducer 19 [SIMPLE_EDGE] + SHUFFLE [RS_59] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_301] (rows=7751872 width=98) + Conds:RS_379._col0=RS_334._col0(Inner),Output:["_col1","_col2","_col3"] + <-Map 17 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_334] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_331] + <-Map 29 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_379] + PartitionCols:_col0 + Select Operator [SEL_378] (rows=285117733 width=123) + Output:["_col0","_col1","_col2","_col3"] + Filter Operator [FIL_377] (rows=285117733 width=123) + predicate:((cs_bill_addr_sk BETWEEN DynamicValue(RS_60_customer_address_ca_address_sk_min) AND DynamicValue(RS_60_customer_address_ca_address_sk_max) and in_bloom_filter(cs_bill_addr_sk, DynamicValue(RS_60_customer_address_ca_address_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_57_date_dim_d_date_sk_min) AND DynamicValue(RS_57_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_57_date_dim_d_date_sk_bloom_filter))) and cs_bill_addr_sk is not null and cs_sold_date_sk is not null) + TableScan [TS_47] (rows=287989836 width=123) + default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_bill_addr_sk","cs_item_sk","cs_ext_sales_price"] + <-Reducer 21 [BROADCAST_EDGE] vectorized + BROADCAST [RS_374] + Group By Operator [GBY_373] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 17 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_342] + Group By Operator [GBY_339] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_335] (rows=50 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_331] + <-Reducer 27 [BROADCAST_EDGE] vectorized + BROADCAST [RS_376] + Group By Operator [GBY_375] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=8000000)"] + <-Map 25 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_358] + Group By Operator [GBY_355] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=8000000)"] + Select Operator [SEL_351] (rows=8000000 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_347] +
