http://git-wip-us.apache.org/repos/asf/hive/blob/b8299551/ql/src/test/results/clientpositive/perf/tez/constraints/query2.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query2.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query2.q.out new file mode 100644 index 0000000..baa714b --- /dev/null +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query2.q.out @@ -0,0 +1,228 @@ +PREHOOK: query: explain +with wscs as + (select sold_date_sk + ,sales_price + from (select ws_sold_date_sk sold_date_sk + ,ws_ext_sales_price sales_price + from web_sales) x + union all + (select cs_sold_date_sk sold_date_sk + ,cs_ext_sales_price sales_price + from catalog_sales)), + wswscs as + (select d_week_seq, + sum(case when (d_day_name='Sunday') then sales_price else null end) sun_sales, + sum(case when (d_day_name='Monday') then sales_price else null end) mon_sales, + sum(case when (d_day_name='Tuesday') then sales_price else null end) tue_sales, + sum(case when (d_day_name='Wednesday') then sales_price else null end) wed_sales, + sum(case when (d_day_name='Thursday') then sales_price else null end) thu_sales, + sum(case when (d_day_name='Friday') then sales_price else null end) fri_sales, + sum(case when (d_day_name='Saturday') then sales_price else null end) sat_sales + from wscs + ,date_dim + where d_date_sk = sold_date_sk + group by d_week_seq) + select d_week_seq1 + ,round(sun_sales1/sun_sales2,2) + ,round(mon_sales1/mon_sales2,2) + ,round(tue_sales1/tue_sales2,2) + ,round(wed_sales1/wed_sales2,2) + ,round(thu_sales1/thu_sales2,2) + ,round(fri_sales1/fri_sales2,2) + ,round(sat_sales1/sat_sales2,2) + from + (select wswscs.d_week_seq d_week_seq1 + ,sun_sales sun_sales1 + ,mon_sales mon_sales1 + ,tue_sales tue_sales1 + ,wed_sales wed_sales1 + ,thu_sales thu_sales1 + ,fri_sales fri_sales1 + ,sat_sales sat_sales1 + from wswscs,date_dim + where date_dim.d_week_seq = wswscs.d_week_seq and + d_year = 2001) y, + (select wswscs.d_week_seq d_week_seq2 + ,sun_sales sun_sales2 + ,mon_sales mon_sales2 + ,tue_sales tue_sales2 + ,wed_sales wed_sales2 + ,thu_sales thu_sales2 + ,fri_sales fri_sales2 + ,sat_sales sat_sales2 + from wswscs + ,date_dim + where date_dim.d_week_seq = wswscs.d_week_seq and + d_year = 2001+1) z + where d_week_seq1=d_week_seq2-53 + order by d_week_seq1 +PREHOOK: type: QUERY +PREHOOK: Input: default@catalog_sales +PREHOOK: Input: default@date_dim +PREHOOK: Input: default@web_sales +PREHOOK: Output: hdfs://### HDFS PATH ### +POSTHOOK: query: explain +with wscs as + (select sold_date_sk + ,sales_price + from (select ws_sold_date_sk sold_date_sk + ,ws_ext_sales_price sales_price + from web_sales) x + union all + (select cs_sold_date_sk sold_date_sk + ,cs_ext_sales_price sales_price + from catalog_sales)), + wswscs as + (select d_week_seq, + sum(case when (d_day_name='Sunday') then sales_price else null end) sun_sales, + sum(case when (d_day_name='Monday') then sales_price else null end) mon_sales, + sum(case when (d_day_name='Tuesday') then sales_price else null end) tue_sales, + sum(case when (d_day_name='Wednesday') then sales_price else null end) wed_sales, + sum(case when (d_day_name='Thursday') then sales_price else null end) thu_sales, + sum(case when (d_day_name='Friday') then sales_price else null end) fri_sales, + sum(case when (d_day_name='Saturday') then sales_price else null end) sat_sales + from wscs + ,date_dim + where d_date_sk = sold_date_sk + group by d_week_seq) + select d_week_seq1 + ,round(sun_sales1/sun_sales2,2) + ,round(mon_sales1/mon_sales2,2) + ,round(tue_sales1/tue_sales2,2) + ,round(wed_sales1/wed_sales2,2) + ,round(thu_sales1/thu_sales2,2) + ,round(fri_sales1/fri_sales2,2) + ,round(sat_sales1/sat_sales2,2) + from + (select wswscs.d_week_seq d_week_seq1 + ,sun_sales sun_sales1 + ,mon_sales mon_sales1 + ,tue_sales tue_sales1 + ,wed_sales wed_sales1 + ,thu_sales thu_sales1 + ,fri_sales fri_sales1 + ,sat_sales sat_sales1 + from wswscs,date_dim + where date_dim.d_week_seq = wswscs.d_week_seq and + d_year = 2001) y, + (select wswscs.d_week_seq d_week_seq2 + ,sun_sales sun_sales2 + ,mon_sales mon_sales2 + ,tue_sales tue_sales2 + ,wed_sales wed_sales2 + ,thu_sales thu_sales2 + ,fri_sales fri_sales2 + ,sat_sales sat_sales2 + from wswscs + ,date_dim + where date_dim.d_week_seq = wswscs.d_week_seq and + d_year = 2001+1) z + where d_week_seq1=d_week_seq2-53 + order by d_week_seq1 +POSTHOOK: type: QUERY +POSTHOOK: Input: default@catalog_sales +POSTHOOK: Input: default@date_dim +POSTHOOK: Input: default@web_sales +POSTHOOK: Output: hdfs://### HDFS PATH ### +Plan optimized by CBO. + +Vertex dependency in root stage +Map 1 <- Union 2 (CONTAINS) +Map 9 <- Union 2 (CONTAINS) +Reducer 3 <- Map 10 (SIMPLE_EDGE), Union 2 (SIMPLE_EDGE) +Reducer 4 <- Reducer 3 (SIMPLE_EDGE) +Reducer 5 <- Map 11 (SIMPLE_EDGE), Reducer 4 (ONE_TO_ONE_EDGE) +Reducer 6 <- Reducer 5 (ONE_TO_ONE_EDGE), Reducer 8 (SIMPLE_EDGE) +Reducer 7 <- Reducer 6 (SIMPLE_EDGE) +Reducer 8 <- Map 11 (SIMPLE_EDGE), Reducer 4 (ONE_TO_ONE_EDGE) + +Stage-0 + Fetch Operator + limit:-1 + Stage-1 + Reducer 7 vectorized + File Output Operator [FS_173] + Select Operator [SEL_172] (rows=12881 width=788) + Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] + <-Reducer 6 [SIMPLE_EDGE] + SHUFFLE [RS_57] + Select Operator [SEL_56] (rows=12881 width=788) + Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] + Merge Join Operator [MERGEJOIN_146] (rows=12881 width=1572) + Conds:RS_53._col0=RS_54._col7(Inner),Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col9","_col10","_col11","_col12","_col13","_col14","_col15"] + <-Reducer 5 [ONE_TO_ONE_EDGE] + FORWARD [RS_53] + PartitionCols:_col0 + Merge Join Operator [MERGEJOIN_143] (rows=652 width=788) + Conds:RS_164._col0=RS_170._col0(Inner),Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] + <-Map 11 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_170] + PartitionCols:_col0 + Select Operator [SEL_168] (rows=652 width=4) + Output:["_col0"] + Filter Operator [FIL_166] (rows=652 width=8) + predicate:((d_year = 2001) and d_week_seq is not null) + TableScan [TS_20] (rows=73049 width=8) + default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_week_seq","d_year"] + <-Reducer 4 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_164] + PartitionCols:_col0 + Group By Operator [GBY_163] (rows=13152 width=788) + Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)","sum(VALUE._col2)","sum(VALUE._col3)","sum(VALUE._col4)","sum(VALUE._col5)","sum(VALUE._col6)"],keys:KEY._col0 + <-Reducer 3 [SIMPLE_EDGE] + SHUFFLE [RS_17] + PartitionCols:_col0 + Group By Operator [GBY_16] (rows=3182784 width=788) + Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"],aggregations:["sum(_col1)","sum(_col2)","sum(_col3)","sum(_col4)","sum(_col5)","sum(_col6)","sum(_col7)"],keys:_col0 + Select Operator [SEL_14] (rows=430516591 width=143) + Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] + Merge Join Operator [MERGEJOIN_142] (rows=430516591 width=143) + Conds:Union 2._col0=RS_162._col0(Inner),Output:["_col1","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10"] + <-Map 10 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_162] + PartitionCols:_col0 + Select Operator [SEL_161] (rows=73049 width=36) + Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8"] + Filter Operator [FIL_160] (rows=73049 width=99) + predicate:d_week_seq is not null + TableScan [TS_8] (rows=73049 width=99) + default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_week_seq","d_day_name"] + <-Union 2 [SIMPLE_EDGE] + <-Map 1 [CONTAINS] vectorized + Reduce Output Operator [RS_159] + PartitionCols:_col0 + Select Operator [SEL_158] (rows=143966864 width=115) + Output:["_col0","_col1"] + Filter Operator [FIL_157] (rows=143966864 width=115) + predicate:ws_sold_date_sk is not null + TableScan [TS_147] (rows=144002668 width=115) + Output:["ws_sold_date_sk","ws_ext_sales_price"] + <-Map 9 [CONTAINS] vectorized + Reduce Output Operator [RS_176] + PartitionCols:_col0 + Select Operator [SEL_175] (rows=286549727 width=115) + Output:["_col0","_col1"] + Filter Operator [FIL_174] (rows=286549727 width=115) + predicate:cs_sold_date_sk is not null + TableScan [TS_152] (rows=287989836 width=115) + Output:["cs_sold_date_sk","cs_ext_sales_price"] + <-Reducer 8 [SIMPLE_EDGE] + SHUFFLE [RS_54] + PartitionCols:_col7 + Select Operator [SEL_49] (rows=652 width=788) + Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] + Merge Join Operator [MERGEJOIN_145] (rows=652 width=788) + Conds:RS_165._col0=RS_171._col0(Inner),Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"] + <-Map 11 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_171] + PartitionCols:_col0 + Select Operator [SEL_169] (rows=652 width=4) + Output:["_col0"] + Filter Operator [FIL_167] (rows=652 width=8) + predicate:((d_year = 2002) and d_week_seq is not null) + Please refer to the previous TableScan [TS_20] + <-Reducer 4 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_165] + PartitionCols:_col0 + Please refer to the previous Group By Operator [GBY_163] +
http://git-wip-us.apache.org/repos/asf/hive/blob/b8299551/ql/src/test/results/clientpositive/perf/tez/constraints/query20.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query20.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query20.q.out new file mode 100644 index 0000000..da3e262 --- /dev/null +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query20.q.out @@ -0,0 +1,161 @@ +PREHOOK: query: explain +select i_item_desc + ,i_category + ,i_class + ,i_current_price + ,sum(cs_ext_sales_price) as itemrevenue + ,sum(cs_ext_sales_price)*100/sum(sum(cs_ext_sales_price)) over + (partition by i_class) as revenueratio + from catalog_sales + ,item + ,date_dim + where cs_item_sk = i_item_sk + and i_category in ('Jewelry', 'Sports', 'Books') + and cs_sold_date_sk = d_date_sk + and d_date between cast('2001-01-12' as date) + and (cast('2001-01-12' as date) + 30 days) + group by i_item_id + ,i_item_desc + ,i_category + ,i_class + ,i_current_price + order by i_category + ,i_class + ,i_item_id + ,i_item_desc + ,revenueratio +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 i_item_desc + ,i_category + ,i_class + ,i_current_price + ,sum(cs_ext_sales_price) as itemrevenue + ,sum(cs_ext_sales_price)*100/sum(sum(cs_ext_sales_price)) over + (partition by i_class) as revenueratio + from catalog_sales + ,item + ,date_dim + where cs_item_sk = i_item_sk + and i_category in ('Jewelry', 'Sports', 'Books') + and cs_sold_date_sk = d_date_sk + and d_date between cast('2001-01-12' as date) + and (cast('2001-01-12' as date) + 30 days) + group by i_item_id + ,i_item_desc + ,i_category + ,i_class + ,i_current_price + order by i_category + ,i_class + ,i_item_id + ,i_item_desc + ,revenueratio +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 10 (BROADCAST_EDGE), Reducer 8 (BROADCAST_EDGE) +Reducer 10 <- Map 9 (CUSTOM_SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) +Reducer 3 <- Map 9 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 4 <- Reducer 3 (SIMPLE_EDGE) +Reducer 5 <- Reducer 4 (SIMPLE_EDGE) +Reducer 6 <- Reducer 5 (SIMPLE_EDGE) +Reducer 8 <- Map 7 (CUSTOM_SIMPLE_EDGE) + +Stage-0 + Fetch Operator + limit:-1 + Stage-1 + Reducer 6 vectorized + File Output Operator [FS_86] + Limit [LIM_85] (rows=100 width=802) + Number of rows:100 + Select Operator [SEL_84] (rows=138600 width=801) + Output:["_col0","_col1","_col2","_col3","_col4","_col5"] + <-Reducer 5 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_83] + Select Operator [SEL_82] (rows=138600 width=801) + Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"] + PTF Operator [PTF_81] (rows=138600 width=689) + Function definitions:[{},{"name:":"windowingtablefunction","order by:":"_col1 ASC NULLS FIRST","partition by:":"_col1"}] + Select Operator [SEL_80] (rows=138600 width=689) + Output:["_col0","_col1","_col2","_col3","_col4","_col5"] + <-Reducer 4 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_79] + PartitionCols:_col1 + Group By Operator [GBY_78] (rows=138600 width=689) + Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4 + <-Reducer 3 [SIMPLE_EDGE] + SHUFFLE [RS_17] + PartitionCols:_col0, _col1, _col2, _col3, _col4 + Group By Operator [GBY_16] (rows=138600 width=689) + Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["sum(_col2)"],keys:_col9, _col8, _col5, _col6, _col7 + Merge Join Operator [MERGEJOIN_58] (rows=9551005 width=673) + Conds:RS_12._col1=RS_69._col0(Inner),Output:["_col2","_col5","_col6","_col7","_col8","_col9"] + <-Map 9 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_69] + PartitionCols:_col0 + Select Operator [SEL_68] (rows=138600 width=581) + Output:["_col0","_col1","_col2","_col3","_col4","_col5"] + Filter Operator [FIL_67] (rows=138600 width=581) + predicate:(i_category) IN ('Jewelry', 'Sports', 'Books') + TableScan [TS_6] (rows=462000 width=581) + default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_item_id","i_item_desc","i_current_price","i_class","i_category"] + <-Reducer 2 [SIMPLE_EDGE] + SHUFFLE [RS_12] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_57] (rows=31836679 width=110) + Conds:RS_77._col0=RS_61._col0(Inner),Output:["_col1","_col2"] + <-Map 7 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_61] + PartitionCols:_col0 + Select Operator [SEL_60] (rows=8116 width=4) + Output:["_col0"] + Filter Operator [FIL_59] (rows=8116 width=98) + predicate:CAST( d_date AS TIMESTAMP) BETWEEN TIMESTAMP'2001-01-12 00:00:00' AND TIMESTAMP'2001-02-11 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_77] + PartitionCols:_col0 + Select Operator [SEL_76] (rows=286549727 width=119) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_75] (rows=286549727 width=119) + predicate:((cs_item_sk BETWEEN DynamicValue(RS_13_item_i_item_sk_min) AND DynamicValue(RS_13_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_13_item_i_item_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_10_date_dim_d_date_sk_min) AND DynamicValue(RS_10_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_10_date_dim_d_date_sk_bloom_filter))) and cs_sold_date_sk is not null) + TableScan [TS_0] (rows=287989836 width=119) + default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_item_sk","cs_ext_sales_price"] + <-Reducer 10 [BROADCAST_EDGE] vectorized + BROADCAST [RS_74] + Group By Operator [GBY_73] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 9 [CUSTOM_SIMPLE_EDGE] vectorized + SHUFFLE [RS_72] + Group By Operator [GBY_71] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_70] (rows=138600 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_68] + <-Reducer 8 [BROADCAST_EDGE] vectorized + BROADCAST [RS_66] + Group By Operator [GBY_65] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 7 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_64] + Group By Operator [GBY_63] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_62] (rows=8116 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_60] + http://git-wip-us.apache.org/repos/asf/hive/blob/b8299551/ql/src/test/results/clientpositive/perf/tez/constraints/query21.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query21.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query21.q.out new file mode 100644 index 0000000..67fdc85 --- /dev/null +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query21.q.out @@ -0,0 +1,145 @@ +PREHOOK: query: explain +select * + from(select w_warehouse_name + ,i_item_id + ,sum(case when (cast(d_date as date) < cast ('1998-04-08' as date)) + then inv_quantity_on_hand + else 0 end) as inv_before + ,sum(case when (cast(d_date as date) >= cast ('1998-04-08' as date)) + then inv_quantity_on_hand + else 0 end) as inv_after + from inventory + ,warehouse + ,item + ,date_dim + where i_current_price between 0.99 and 1.49 + and i_item_sk = inv_item_sk + and inv_warehouse_sk = w_warehouse_sk + and inv_date_sk = d_date_sk + and d_date between (cast ('1998-04-08' as date) - 30 days) + and (cast ('1998-04-08' as date) + 30 days) + group by w_warehouse_name, i_item_id) x + where (case when inv_before > 0 + then inv_after / inv_before + else null + end) between 2.0/3.0 and 3.0/2.0 + order by w_warehouse_name + ,i_item_id + limit 100 +PREHOOK: type: QUERY +PREHOOK: Input: default@date_dim +PREHOOK: Input: default@inventory +PREHOOK: Input: default@item +PREHOOK: Input: default@warehouse +PREHOOK: Output: hdfs://### HDFS PATH ### +POSTHOOK: query: explain +select * + from(select w_warehouse_name + ,i_item_id + ,sum(case when (cast(d_date as date) < cast ('1998-04-08' as date)) + then inv_quantity_on_hand + else 0 end) as inv_before + ,sum(case when (cast(d_date as date) >= cast ('1998-04-08' as date)) + then inv_quantity_on_hand + else 0 end) as inv_after + from inventory + ,warehouse + ,item + ,date_dim + where i_current_price between 0.99 and 1.49 + and i_item_sk = inv_item_sk + and inv_warehouse_sk = w_warehouse_sk + and inv_date_sk = d_date_sk + and d_date between (cast ('1998-04-08' as date) - 30 days) + and (cast ('1998-04-08' as date) + 30 days) + group by w_warehouse_name, i_item_id) x + where (case when inv_before > 0 + then inv_after / inv_before + else null + end) between 2.0/3.0 and 3.0/2.0 + order by w_warehouse_name + ,i_item_id + limit 100 +POSTHOOK: type: QUERY +POSTHOOK: Input: default@date_dim +POSTHOOK: Input: default@inventory +POSTHOOK: Input: default@item +POSTHOOK: Input: default@warehouse +POSTHOOK: Output: hdfs://### HDFS PATH ### +Plan optimized by CBO. + +Vertex dependency in root stage +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE) +Reducer 3 <- Map 8 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 4 <- Map 9 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE) +Reducer 5 <- Reducer 4 (SIMPLE_EDGE) +Reducer 6 <- Reducer 5 (SIMPLE_EDGE) + +Stage-0 + Fetch Operator + limit:100 + Stage-1 + Reducer 6 vectorized + File Output Operator [FS_91] + Limit [LIM_90] (rows=100 width=216) + Number of rows:100 + Select Operator [SEL_89] (rows=231983 width=216) + Output:["_col0","_col1","_col2","_col3"] + <-Reducer 5 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_88] + Filter Operator [FIL_87] (rows=231983 width=216) + predicate:CASE WHEN ((_col2 > 0L)) THEN ((UDFToDouble(_col3) / UDFToDouble(_col2)) BETWEEN 0.666667D AND 1.5D) ELSE (null) END + Group By Operator [GBY_86] (rows=463966 width=216) + Output:["_col0","_col1","_col2","_col3"],aggregations:["sum(VALUE._col0)","sum(VALUE._col1)"],keys:KEY._col0, KEY._col1 + <-Reducer 4 [SIMPLE_EDGE] + SHUFFLE [RS_22] + PartitionCols:_col0, _col1 + Group By Operator [GBY_21] (rows=463966 width=216) + Output:["_col0","_col1","_col2","_col3"],aggregations:["sum(_col2)","sum(_col3)"],keys:_col0, _col1 + Select Operator [SEL_19] (rows=463966 width=208) + Output:["_col0","_col1","_col2","_col3"] + Merge Join Operator [MERGEJOIN_75] (rows=463966 width=208) + Conds:RS_16._col2=RS_85._col0(Inner),Output:["_col3","_col5","_col6","_col8","_col10"] + <-Map 9 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_85] + PartitionCols:_col0 + Select Operator [SEL_84] (rows=27 width=104) + Output:["_col0","_col1"] + TableScan [TS_8] (rows=27 width=104) + default@warehouse,warehouse,Tbl:COMPLETE,Col:COMPLETE,Output:["w_warehouse_sk","w_warehouse_name"] + <-Reducer 3 [SIMPLE_EDGE] + SHUFFLE [RS_16] + PartitionCols:_col2 + Merge Join Operator [MERGEJOIN_74] (rows=463966 width=112) + Conds:RS_13._col1=RS_83._col0(Inner),Output:["_col2","_col3","_col5","_col6","_col8"] + <-Map 8 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_83] + PartitionCols:_col0 + Select Operator [SEL_82] (rows=51333 width=104) + Output:["_col0","_col1"] + Filter Operator [FIL_81] (rows=51333 width=215) + predicate:i_current_price BETWEEN 0.99 AND 1.49 + TableScan [TS_5] (rows=462000 width=215) + default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_item_id","i_current_price"] + <-Reducer 2 [SIMPLE_EDGE] + SHUFFLE [RS_13] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_73] (rows=4175715 width=18) + Conds:RS_77._col0=RS_80._col0(Inner),Output:["_col1","_col2","_col3","_col5","_col6"] + <-Map 1 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_77] + PartitionCols:_col0 + Select Operator [SEL_76] (rows=37584000 width=15) + Output:["_col0","_col1","_col2","_col3"] + TableScan [TS_0] (rows=37584000 width=15) + default@inventory,inventory,Tbl:COMPLETE,Col:COMPLETE,Output:["inv_date_sk","inv_item_sk","inv_warehouse_sk","inv_quantity_on_hand"] + <-Map 7 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_80] + PartitionCols:_col0 + Select Operator [SEL_79] (rows=8116 width=12) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_78] (rows=8116 width=98) + predicate:CAST( d_date AS TIMESTAMP) BETWEEN TIMESTAMP'1998-03-09 00:00:00' AND TIMESTAMP'1998-05-08 00:00:00' + TableScan [TS_2] (rows=73049 width=98) + default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_date"] + http://git-wip-us.apache.org/repos/asf/hive/blob/b8299551/ql/src/test/results/clientpositive/perf/tez/constraints/query22.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query22.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query22.q.out new file mode 100644 index 0000000..cd3c0cc --- /dev/null +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query22.q.out @@ -0,0 +1,112 @@ +PREHOOK: query: explain +select i_product_name + ,i_brand + ,i_class + ,i_category + ,avg(inv_quantity_on_hand) qoh + from inventory + ,date_dim + ,item + ,warehouse + where inv_date_sk=d_date_sk + and inv_item_sk=i_item_sk + and inv_warehouse_sk = w_warehouse_sk + and d_month_seq between 1212 and 1212 + 11 + group by rollup(i_product_name + ,i_brand + ,i_class + ,i_category) +order by qoh, i_product_name, i_brand, i_class, i_category +limit 100 +PREHOOK: type: QUERY +PREHOOK: Input: default@date_dim +PREHOOK: Input: default@inventory +PREHOOK: Input: default@item +PREHOOK: Input: default@warehouse +PREHOOK: Output: hdfs://### HDFS PATH ### +POSTHOOK: query: explain +select i_product_name + ,i_brand + ,i_class + ,i_category + ,avg(inv_quantity_on_hand) qoh + from inventory + ,date_dim + ,item + ,warehouse + where inv_date_sk=d_date_sk + and inv_item_sk=i_item_sk + and inv_warehouse_sk = w_warehouse_sk + and d_month_seq between 1212 and 1212 + 11 + group by rollup(i_product_name + ,i_brand + ,i_class + ,i_category) +order by qoh, i_product_name, i_brand, i_class, i_category +limit 100 +POSTHOOK: type: QUERY +POSTHOOK: Input: default@date_dim +POSTHOOK: Input: default@inventory +POSTHOOK: Input: default@item +POSTHOOK: Input: default@warehouse +POSTHOOK: Output: hdfs://### HDFS PATH ### +Plan optimized by CBO. + +Vertex dependency in root stage +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE) +Reducer 3 <- Map 7 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE) +Reducer 4 <- Reducer 3 (SIMPLE_EDGE) +Reducer 5 <- Reducer 4 (SIMPLE_EDGE) + +Stage-0 + Fetch Operator + limit:100 + Stage-1 + Reducer 5 vectorized + File Output Operator [FS_64] + Limit [LIM_63] (rows=100 width=397) + Number of rows:100 + Select Operator [SEL_62] (rows=32730675 width=397) + Output:["_col0","_col1","_col2","_col3","_col4"] + <-Reducer 4 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_61] + Select Operator [SEL_60] (rows=32730675 width=397) + Output:["_col0","_col1","_col2","_col3","_col4"] + Group By Operator [GBY_59] (rows=32730675 width=413) + Output:["_col0","_col1","_col2","_col3","_col5","_col6"],aggregations:["sum(VALUE._col0)","count(VALUE._col1)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4 + <-Reducer 3 [SIMPLE_EDGE] + SHUFFLE [RS_15] + PartitionCols:_col0, _col1, _col2, _col3, _col4 + Group By Operator [GBY_14] (rows=32730675 width=413) + Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"],aggregations:["sum(_col2)","count(_col2)"],keys:_col5, _col6, _col7, _col8, 0L + Merge Join Operator [MERGEJOIN_51] (rows=6546135 width=391) + Conds:RS_10._col1=RS_58._col0(Inner),Output:["_col2","_col5","_col6","_col7","_col8"] + <-Map 7 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_58] + PartitionCols:_col0 + Select Operator [SEL_57] (rows=462000 width=393) + Output:["_col0","_col1","_col2","_col3","_col4"] + TableScan [TS_5] (rows=462000 width=393) + default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk","i_brand","i_class","i_category","i_product_name"] + <-Reducer 2 [SIMPLE_EDGE] + SHUFFLE [RS_10] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_50] (rows=6546135 width=6) + Conds:RS_53._col0=RS_56._col0(Inner),Output:["_col1","_col2"] + <-Map 1 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_53] + PartitionCols:_col0 + Select Operator [SEL_52] (rows=37584000 width=11) + Output:["_col0","_col1","_col2"] + TableScan [TS_0] (rows=37584000 width=11) + default@inventory,inventory,Tbl:COMPLETE,Col:COMPLETE,Output:["inv_date_sk","inv_item_sk","inv_quantity_on_hand"] + <-Map 6 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_56] + PartitionCols:_col0 + Select Operator [SEL_55] (rows=317 width=4) + Output:["_col0"] + Filter Operator [FIL_54] (rows=317 width=8) + predicate:d_month_seq BETWEEN 1212 AND 1223 + TableScan [TS_2] (rows=73049 width=8) + default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_month_seq"] + http://git-wip-us.apache.org/repos/asf/hive/blob/b8299551/ql/src/test/results/clientpositive/perf/tez/constraints/query23.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/perf/tez/constraints/query23.q.out b/ql/src/test/results/clientpositive/perf/tez/constraints/query23.q.out new file mode 100644 index 0000000..c7b1c9a --- /dev/null +++ b/ql/src/test/results/clientpositive/perf/tez/constraints/query23.q.out @@ -0,0 +1,540 @@ +Warning: Shuffle Join MERGEJOIN[445][tables = [$hdt$_1, $hdt$_2]] in Stage 'Reducer 19' is a cross product +Warning: Shuffle Join MERGEJOIN[446][tables = [$hdt$_1, $hdt$_2, $hdt$_0]] in Stage 'Reducer 20' is a cross product +Warning: Shuffle Join MERGEJOIN[448][tables = [$hdt$_2, $hdt$_3]] in Stage 'Reducer 24' is a cross product +Warning: Shuffle Join MERGEJOIN[449][tables = [$hdt$_2, $hdt$_3, $hdt$_1]] in Stage 'Reducer 25' is a cross product +PREHOOK: query: explain +with frequent_ss_items as + (select substr(i_item_desc,1,30) itemdesc,i_item_sk item_sk,d_date solddate,count(*) cnt + from store_sales + ,date_dim + ,item + where ss_sold_date_sk = d_date_sk + and ss_item_sk = i_item_sk + and d_year in (1999,1999+1,1999+2,1999+3) + group by substr(i_item_desc,1,30),i_item_sk,d_date + having count(*) >4), + max_store_sales as + (select max(csales) tpcds_cmax + from (select c_customer_sk,sum(ss_quantity*ss_sales_price) csales + from store_sales + ,customer + ,date_dim + where ss_customer_sk = c_customer_sk + and ss_sold_date_sk = d_date_sk + and d_year in (1999,1999+1,1999+2,1999+3) + group by c_customer_sk) x), + best_ss_customer as + (select c_customer_sk,sum(ss_quantity*ss_sales_price) ssales + from store_sales + ,customer + where ss_customer_sk = c_customer_sk + group by c_customer_sk + having sum(ss_quantity*ss_sales_price) > (95/100.0) * (select + * +from + max_store_sales)) + select sum(sales) + from ((select cs_quantity*cs_list_price sales + from catalog_sales + ,date_dim + where d_year = 1999 + and d_moy = 1 + and cs_sold_date_sk = d_date_sk + and cs_item_sk in (select item_sk from frequent_ss_items) + and cs_bill_customer_sk in (select c_customer_sk from best_ss_customer)) + union all + (select ws_quantity*ws_list_price sales + from web_sales + ,date_dim + where d_year = 1999 + and d_moy = 1 + and ws_sold_date_sk = d_date_sk + and ws_item_sk in (select item_sk from frequent_ss_items) + and ws_bill_customer_sk in (select c_customer_sk from best_ss_customer))) y + limit 100 +PREHOOK: type: QUERY +PREHOOK: Input: default@catalog_sales +PREHOOK: Input: default@customer +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 frequent_ss_items as + (select substr(i_item_desc,1,30) itemdesc,i_item_sk item_sk,d_date solddate,count(*) cnt + from store_sales + ,date_dim + ,item + where ss_sold_date_sk = d_date_sk + and ss_item_sk = i_item_sk + and d_year in (1999,1999+1,1999+2,1999+3) + group by substr(i_item_desc,1,30),i_item_sk,d_date + having count(*) >4), + max_store_sales as + (select max(csales) tpcds_cmax + from (select c_customer_sk,sum(ss_quantity*ss_sales_price) csales + from store_sales + ,customer + ,date_dim + where ss_customer_sk = c_customer_sk + and ss_sold_date_sk = d_date_sk + and d_year in (1999,1999+1,1999+2,1999+3) + group by c_customer_sk) x), + best_ss_customer as + (select c_customer_sk,sum(ss_quantity*ss_sales_price) ssales + from store_sales + ,customer + where ss_customer_sk = c_customer_sk + group by c_customer_sk + having sum(ss_quantity*ss_sales_price) > (95/100.0) * (select + * +from + max_store_sales)) + select sum(sales) + from ((select cs_quantity*cs_list_price sales + from catalog_sales + ,date_dim + where d_year = 1999 + and d_moy = 1 + and cs_sold_date_sk = d_date_sk + and cs_item_sk in (select item_sk from frequent_ss_items) + and cs_bill_customer_sk in (select c_customer_sk from best_ss_customer)) + union all + (select ws_quantity*ws_list_price sales + from web_sales + ,date_dim + where d_year = 1999 + and d_moy = 1 + and ws_sold_date_sk = d_date_sk + and ws_item_sk in (select item_sk from frequent_ss_items) + and ws_bill_customer_sk in (select c_customer_sk from best_ss_customer))) y + limit 100 +POSTHOOK: type: QUERY +POSTHOOK: Input: default@catalog_sales +POSTHOOK: Input: default@customer +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 1 <- Reducer 33 (BROADCAST_EDGE), Reducer 9 (BROADCAST_EDGE) +Map 15 <- Reducer 29 (BROADCAST_EDGE) +Map 37 <- Reducer 7 (BROADCAST_EDGE) +Map 39 <- Reducer 36 (BROADCAST_EDGE) +Map 41 <- Reducer 14 (BROADCAST_EDGE), Reducer 35 (BROADCAST_EDGE) +Map 42 <- Reducer 13 (BROADCAST_EDGE) +Reducer 10 <- Map 41 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) +Reducer 11 <- Reducer 10 (SIMPLE_EDGE), Reducer 26 (ONE_TO_ONE_EDGE) +Reducer 12 <- Reducer 11 (SIMPLE_EDGE), Reducer 34 (ONE_TO_ONE_EDGE), Union 5 (CONTAINS) +Reducer 13 <- Reducer 10 (CUSTOM_SIMPLE_EDGE) +Reducer 14 <- Map 8 (CUSTOM_SIMPLE_EDGE) +Reducer 16 <- Map 15 (SIMPLE_EDGE), Map 28 (SIMPLE_EDGE) +Reducer 17 <- Reducer 16 (SIMPLE_EDGE) +Reducer 18 <- Reducer 17 (CUSTOM_SIMPLE_EDGE) +Reducer 19 <- Reducer 18 (CUSTOM_SIMPLE_EDGE), Reducer 22 (CUSTOM_SIMPLE_EDGE) +Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE) +Reducer 20 <- Reducer 19 (CUSTOM_SIMPLE_EDGE), Reducer 38 (CUSTOM_SIMPLE_EDGE) +Reducer 21 <- Reducer 20 (SIMPLE_EDGE) +Reducer 22 <- Reducer 17 (CUSTOM_SIMPLE_EDGE) +Reducer 23 <- Reducer 17 (CUSTOM_SIMPLE_EDGE) +Reducer 24 <- Reducer 23 (CUSTOM_SIMPLE_EDGE), Reducer 27 (CUSTOM_SIMPLE_EDGE) +Reducer 25 <- Reducer 24 (CUSTOM_SIMPLE_EDGE), Reducer 43 (CUSTOM_SIMPLE_EDGE) +Reducer 26 <- Reducer 25 (SIMPLE_EDGE) +Reducer 27 <- Reducer 17 (CUSTOM_SIMPLE_EDGE) +Reducer 29 <- Map 28 (CUSTOM_SIMPLE_EDGE) +Reducer 3 <- Reducer 2 (SIMPLE_EDGE), Reducer 21 (ONE_TO_ONE_EDGE) +Reducer 30 <- Map 28 (SIMPLE_EDGE), Map 39 (SIMPLE_EDGE) +Reducer 31 <- Map 40 (SIMPLE_EDGE), Reducer 30 (SIMPLE_EDGE) +Reducer 32 <- Reducer 31 (SIMPLE_EDGE) +Reducer 33 <- Reducer 32 (CUSTOM_SIMPLE_EDGE) +Reducer 34 <- Reducer 31 (SIMPLE_EDGE) +Reducer 35 <- Reducer 34 (CUSTOM_SIMPLE_EDGE) +Reducer 36 <- Map 28 (CUSTOM_SIMPLE_EDGE) +Reducer 38 <- Map 37 (SIMPLE_EDGE) +Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Reducer 32 (ONE_TO_ONE_EDGE), Union 5 (CONTAINS) +Reducer 43 <- Map 42 (SIMPLE_EDGE) +Reducer 6 <- Union 5 (CUSTOM_SIMPLE_EDGE) +Reducer 7 <- Reducer 2 (CUSTOM_SIMPLE_EDGE) +Reducer 9 <- Map 8 (CUSTOM_SIMPLE_EDGE) + +Stage-0 + Fetch Operator + limit:100 + Stage-1 + Reducer 6 vectorized + File Output Operator [FS_543] + Limit [LIM_542] (rows=1 width=112) + Number of rows:100 + Group By Operator [GBY_541] (rows=1 width=112) + Output:["_col0"],aggregations:["sum(VALUE._col0)"] + <-Union 5 [CUSTOM_SIMPLE_EDGE] + <-Reducer 12 [CONTAINS] + Reduce Output Operator [RS_462] + Group By Operator [GBY_461] (rows=1 width=112) + Output:["_col0"],aggregations:["sum(_col0)"] + Select Operator [SEL_459] (rows=52 width=112) + Output:["_col0"] + Merge Join Operator [MERGEJOIN_458] (rows=52 width=2) + Conds:RS_200._col1=RS_549._col0(Inner),Output:["_col3","_col4"] + <-Reducer 34 [ONE_TO_ONE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_549] + PartitionCols:_col0 + Select Operator [SEL_548] (rows=745 width=4) + Output:["_col0"] + Filter Operator [FIL_547] (rows=745 width=12) + predicate:(_col1 > 4L) + Group By Operator [GBY_546] (rows=2235 width=12) + Output:["_col0","_col1"],aggregations:["count(VALUE._col0)"],keys:KEY._col0 + <-Reducer 31 [SIMPLE_EDGE] + SHUFFLE [RS_190] + PartitionCols:_col0 + Group By Operator [GBY_87] (rows=2235 width=12) + Output:["_col0","_col1"],aggregations:["count()"],keys:_col4 + Merge Join Operator [MERGEJOIN_439] (rows=19646398 width=4) + Conds:RS_83._col1=RS_491._col0(Inner),Output:["_col4"] + <-Map 40 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_491] + PartitionCols:_col0 + Select Operator [SEL_490] (rows=462000 width=188) + Output:["_col0"] + TableScan [TS_78] (rows=462000 width=4) + default@item,item,Tbl:COMPLETE,Col:COMPLETE,Output:["i_item_sk"] + <-Reducer 30 [SIMPLE_EDGE] + SHUFFLE [RS_83] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_438] (rows=19646398 width=4) + Conds:RS_489._col0=RS_479._col0(Inner),Output:["_col1"] + <-Map 28 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_479] + PartitionCols:_col0 + Select Operator [SEL_476] (rows=2609 width=4) + Output:["_col0"] + Filter Operator [FIL_475] (rows=2609 width=8) + predicate:(d_year) IN (1999, 2000, 2001, 2002) + TableScan [TS_9] (rows=73049 width=8) + default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year"] + <-Map 39 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_489] + PartitionCols:_col0 + Select Operator [SEL_488] (rows=550076554 width=7) + Output:["_col0","_col1"] + Filter Operator [FIL_487] (rows=550076554 width=7) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_81_date_dim_d_date_sk_min) AND DynamicValue(RS_81_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_81_date_dim_d_date_sk_bloom_filter))) and ss_sold_date_sk is not null) + TableScan [TS_72] (rows=575995635 width=7) + default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_item_sk"] + <-Reducer 36 [BROADCAST_EDGE] vectorized + BROADCAST [RS_486] + Group By Operator [GBY_485] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 28 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_484] + Group By Operator [GBY_482] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_480] (rows=2609 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_476] + <-Reducer 11 [SIMPLE_EDGE] + SHUFFLE [RS_200] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_450] (rows=3941102 width=118) + Conds:RS_197._col2=RS_576._col0(Inner),Output:["_col1","_col3","_col4"] + <-Reducer 10 [SIMPLE_EDGE] + PARTITION_ONLY_SHUFFLE [RS_197] + PartitionCols:_col2 + Merge Join Operator [MERGEJOIN_440] (rows=3941102 width=122) + Conds:RS_557._col0=RS_467._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + <-Map 8 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_467] + PartitionCols:_col0 + Select Operator [SEL_464] (rows=50 width=4) + Output:["_col0"] + Filter Operator [FIL_463] (rows=50 width=12) + predicate:((d_moy = 1) and (d_year = 1999)) + TableScan [TS_3] (rows=73049 width=12) + default@date_dim,date_dim,Tbl:COMPLETE,Col:COMPLETE,Output:["d_date_sk","d_year","d_moy"] + <-Map 41 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_557] + PartitionCols:_col0 + Select Operator [SEL_556] (rows=143930993 width=127) + Output:["_col0","_col1","_col2","_col3","_col4"] + Filter Operator [FIL_555] (rows=143930993 width=127) + predicate:((ws_item_sk BETWEEN DynamicValue(RS_201_item_i_item_sk_min) AND DynamicValue(RS_201_item_i_item_sk_max) and in_bloom_filter(ws_item_sk, DynamicValue(RS_201_item_i_item_sk_bloom_filter))) and (ws_sold_date_sk BETWEEN DynamicValue(RS_195_date_dim_d_date_sk_min) AND DynamicValue(RS_195_date_dim_d_date_sk_max) and in_bloom_filter(ws_sold_date_sk, DynamicValue(RS_195_date_dim_d_date_sk_bloom_filter))) and ws_bill_customer_sk is not null and ws_sold_date_sk is not null) + TableScan [TS_102] (rows=144002668 width=127) + default@web_sales,web_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ws_sold_date_sk","ws_item_sk","ws_bill_customer_sk","ws_quantity","ws_list_price"] + <-Reducer 14 [BROADCAST_EDGE] vectorized + BROADCAST [RS_545] + Group By Operator [GBY_544] (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_472] + Group By Operator [GBY_470] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_468] (rows=50 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_464] + <-Reducer 35 [BROADCAST_EDGE] vectorized + BROADCAST [RS_554] + Group By Operator [GBY_553] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Reducer 34 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_552] + Group By Operator [GBY_551] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_550] (rows=745 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_548] + <-Reducer 26 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_576] + PartitionCols:_col0 + Group By Operator [GBY_575] (rows=235937 width=3) + Output:["_col0"],keys:KEY._col0 + <-Reducer 25 [SIMPLE_EDGE] + SHUFFLE [RS_171] + PartitionCols:_col0 + Group By Operator [GBY_170] (rows=235937 width=3) + Output:["_col0"],keys:_col2 + Select Operator [SEL_169] (rows=471875 width=227) + Output:["_col2"] + Filter Operator [FIL_168] (rows=471875 width=227) + predicate:(_col3 > _col1) + Merge Join Operator [MERGEJOIN_449] (rows=1415626 width=227) + Conds:(Inner),Output:["_col1","_col2","_col3"] + <-Reducer 24 [CUSTOM_SIMPLE_EDGE] + PARTITION_ONLY_SHUFFLE [RS_165] + Merge Join Operator [MERGEJOIN_448] (rows=1 width=112) + Conds:(Inner),Output:["_col1"] + <-Reducer 23 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_563] + Select Operator [SEL_562] (rows=1 width=8) + Filter Operator [FIL_561] (rows=1 width=8) + predicate:(sq_count_check(_col0) <= 1) + Group By Operator [GBY_560] (rows=1 width=8) + Output:["_col0"],aggregations:["count()"] + Select Operator [SEL_559] (rows=1 width=8) + Group By Operator [GBY_558] (rows=1 width=8) + Output:["_col0"],aggregations:["count(VALUE._col0)"] + <-Reducer 17 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_520] + Group By Operator [GBY_516] (rows=1 width=8) + Output:["_col0"],aggregations:["count(_col0)"] + Select Operator [SEL_512] (rows=50562 width=112) + Output:["_col0"] + Group By Operator [GBY_509] (rows=50562 width=112) + Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 + <-Reducer 16 [SIMPLE_EDGE] + SHUFFLE [RS_17] + PartitionCols:_col0 + Group By Operator [GBY_16] (rows=455058 width=112) + Output:["_col0","_col1"],aggregations:["sum(_col2)"],keys:_col1 + Merge Join Operator [MERGEJOIN_436] (rows=18762463 width=112) + Conds:RS_508._col0=RS_477._col0(Inner),Output:["_col1","_col2"] + <-Map 28 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_477] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_476] + <-Map 15 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_508] + PartitionCols:_col0 + Select Operator [SEL_507] (rows=525327388 width=119) + Output:["_col0","_col1","_col2"] + Filter Operator [FIL_506] (rows=525327388 width=118) + predicate:((ss_sold_date_sk BETWEEN DynamicValue(RS_13_date_dim_d_date_sk_min) AND DynamicValue(RS_13_date_dim_d_date_sk_max) and in_bloom_filter(ss_sold_date_sk, DynamicValue(RS_13_date_dim_d_date_sk_bloom_filter))) and ss_customer_sk is not null and ss_sold_date_sk is not null) + TableScan [TS_6] (rows=575995635 width=118) + default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_sold_date_sk","ss_customer_sk","ss_quantity","ss_sales_price"] + <-Reducer 29 [BROADCAST_EDGE] vectorized + BROADCAST [RS_505] + Group By Operator [GBY_504] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 28 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_483] + Group By Operator [GBY_481] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_478] (rows=2609 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_476] + <-Reducer 27 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_566] + Select Operator [SEL_565] (rows=1 width=112) + Output:["_col0"] + Group By Operator [GBY_564] (rows=1 width=112) + Output:["_col0"],aggregations:["max(VALUE._col0)"] + <-Reducer 17 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_521] + Group By Operator [GBY_517] (rows=1 width=112) + Output:["_col0"],aggregations:["max(_col1)"] + Select Operator [SEL_513] (rows=50562 width=112) + Output:["_col1"] + Please refer to the previous Group By Operator [GBY_509] + <-Reducer 43 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_574] + Group By Operator [GBY_573] (rows=1415626 width=115) + Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 + <-Map 42 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_572] + PartitionCols:_col0 + Group By Operator [GBY_571] (rows=550080312 width=115) + Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0 + Select Operator [SEL_570] (rows=550080312 width=114) + Output:["_col0","_col1"] + Filter Operator [FIL_569] (rows=550080312 width=114) + predicate:((ss_customer_sk BETWEEN DynamicValue(RS_197_web_sales_ws_bill_customer_sk_min) AND DynamicValue(RS_197_web_sales_ws_bill_customer_sk_max) and in_bloom_filter(ss_customer_sk, DynamicValue(RS_197_web_sales_ws_bill_customer_sk_bloom_filter))) and ss_customer_sk is not null) + TableScan [TS_154] (rows=575995635 width=114) + default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_customer_sk","ss_quantity","ss_sales_price"] + <-Reducer 13 [BROADCAST_EDGE] vectorized + BROADCAST [RS_568] + Group By Operator [GBY_567] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Reducer 10 [CUSTOM_SIMPLE_EDGE] + PARTITION_ONLY_SHUFFLE [RS_414] + Group By Operator [GBY_413] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_412] (rows=3941102 width=7) + Output:["_col0"] + Please refer to the previous Merge Join Operator [MERGEJOIN_440] + <-Reducer 4 [CONTAINS] + Reduce Output Operator [RS_457] + Group By Operator [GBY_456] (rows=1 width=112) + Output:["_col0"],aggregations:["sum(_col0)"] + Select Operator [SEL_454] (rows=102 width=112) + Output:["_col0"] + Merge Join Operator [MERGEJOIN_453] (rows=102 width=1) + Conds:RS_98._col2=RS_495._col0(Inner),Output:["_col3","_col4"] + <-Reducer 32 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_495] + PartitionCols:_col0 + Select Operator [SEL_494] (rows=745 width=4) + Output:["_col0"] + Filter Operator [FIL_493] (rows=745 width=12) + predicate:(_col1 > 4L) + Group By Operator [GBY_492] (rows=2235 width=12) + Output:["_col0","_col1"],aggregations:["count(VALUE._col0)"],keys:KEY._col0 + <-Reducer 31 [SIMPLE_EDGE] + SHUFFLE [RS_88] + PartitionCols:_col0 + Please refer to the previous Group By Operator [GBY_87] + <-Reducer 3 [SIMPLE_EDGE] + SHUFFLE [RS_98] + PartitionCols:_col2 + Merge Join Operator [MERGEJOIN_447] (rows=7751875 width=98) + Conds:RS_95._col1=RS_540._col0(Inner),Output:["_col2","_col3","_col4"] + <-Reducer 2 [SIMPLE_EDGE] + PARTITION_ONLY_SHUFFLE [RS_95] + PartitionCols:_col1 + Merge Join Operator [MERGEJOIN_435] (rows=7751875 width=101) + Conds:RS_503._col0=RS_465._col0(Inner),Output:["_col1","_col2","_col3","_col4"] + <-Map 8 [SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_465] + PartitionCols:_col0 + Please refer to the previous Select Operator [SEL_464] + <-Map 1 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_503] + PartitionCols:_col0 + Select Operator [SEL_502] (rows=285117831 width=127) + Output:["_col0","_col1","_col2","_col3","_col4"] + Filter Operator [FIL_501] (rows=285117831 width=127) + predicate:((cs_item_sk BETWEEN DynamicValue(RS_99_item_i_item_sk_min) AND DynamicValue(RS_99_item_i_item_sk_max) and in_bloom_filter(cs_item_sk, DynamicValue(RS_99_item_i_item_sk_bloom_filter))) and (cs_sold_date_sk BETWEEN DynamicValue(RS_93_date_dim_d_date_sk_min) AND DynamicValue(RS_93_date_dim_d_date_sk_max) and in_bloom_filter(cs_sold_date_sk, DynamicValue(RS_93_date_dim_d_date_sk_bloom_filter))) and cs_bill_customer_sk is not null and cs_sold_date_sk is not null) + TableScan [TS_0] (rows=287989836 width=127) + default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["cs_sold_date_sk","cs_bill_customer_sk","cs_item_sk","cs_quantity","cs_list_price"] + <-Reducer 33 [BROADCAST_EDGE] vectorized + BROADCAST [RS_500] + Group By Operator [GBY_499] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Reducer 32 [CUSTOM_SIMPLE_EDGE] vectorized + FORWARD [RS_498] + Group By Operator [GBY_497] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_496] (rows=745 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_494] + <-Reducer 9 [BROADCAST_EDGE] vectorized + BROADCAST [RS_474] + Group By Operator [GBY_473] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(VALUE._col0)","max(VALUE._col1)","bloom_filter(VALUE._col2, expectedEntries=1000000)"] + <-Map 8 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_471] + Group By Operator [GBY_469] (rows=1 width=12) + Output:["_col0","_col1","_col2"],aggregations:["min(_col0)","max(_col0)","bloom_filter(_col0, expectedEntries=1000000)"] + Select Operator [SEL_466] (rows=50 width=4) + Output:["_col0"] + Please refer to the previous Select Operator [SEL_464] + <-Reducer 21 [ONE_TO_ONE_EDGE] vectorized + FORWARD [RS_540] + PartitionCols:_col0 + Group By Operator [GBY_539] (rows=235937 width=3) + Output:["_col0"],keys:KEY._col0 + <-Reducer 20 [SIMPLE_EDGE] + SHUFFLE [RS_69] + PartitionCols:_col0 + Group By Operator [GBY_68] (rows=235937 width=3) + Output:["_col0"],keys:_col2 + Select Operator [SEL_67] (rows=471875 width=227) + Output:["_col2"] + Filter Operator [FIL_66] (rows=471875 width=227) + predicate:(_col3 > _col1) + Merge Join Operator [MERGEJOIN_446] (rows=1415626 width=227) + Conds:(Inner),Output:["_col1","_col2","_col3"] + <-Reducer 19 [CUSTOM_SIMPLE_EDGE] + PARTITION_ONLY_SHUFFLE [RS_63] + Merge Join Operator [MERGEJOIN_445] (rows=1 width=112) + Conds:(Inner),Output:["_col1"] + <-Reducer 18 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_527] + Select Operator [SEL_526] (rows=1 width=8) + Filter Operator [FIL_525] (rows=1 width=8) + predicate:(sq_count_check(_col0) <= 1) + Group By Operator [GBY_524] (rows=1 width=8) + Output:["_col0"],aggregations:["count()"] + Select Operator [SEL_523] (rows=1 width=8) + Group By Operator [GBY_522] (rows=1 width=8) + Output:["_col0"],aggregations:["count(VALUE._col0)"] + <-Reducer 17 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_518] + Group By Operator [GBY_514] (rows=1 width=8) + Output:["_col0"],aggregations:["count(_col0)"] + Select Operator [SEL_510] (rows=50562 width=112) + Output:["_col0"] + Please refer to the previous Group By Operator [GBY_509] + <-Reducer 22 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_530] + Select Operator [SEL_529] (rows=1 width=112) + Output:["_col0"] + Group By Operator [GBY_528] (rows=1 width=112) + Output:["_col0"],aggregations:["max(VALUE._col0)"] + <-Reducer 17 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_519] + Group By Operator [GBY_515] (rows=1 width=112) + Output:["_col0"],aggregations:["max(_col1)"] + Select Operator [SEL_511] (rows=50562 width=112) + Output:["_col1"] + Please refer to the previous Group By Operator [GBY_509] + <-Reducer 38 [CUSTOM_SIMPLE_EDGE] vectorized + PARTITION_ONLY_SHUFFLE [RS_538] + Group By Operator [GBY_537] (rows=1415626 width=115) + Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0 + <-Map 37 [SIMPLE_EDGE] vectorized + SHUFFLE [RS_536] + PartitionCols:_col0 + Group By Operator [GBY_535] (rows=550080312 width=115) + Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0 + Select Operator [SEL_534] (rows=550080312 width=114) + Output:["_col0","_col1"] + Filter Operator [FIL_533] (rows=550080312 width=114) + predicate:((ss_customer_sk BETWEEN DynamicValue(RS_95_catalog_sales_cs_bill_customer_sk_min) AND DynamicValue(RS_95_catalog_sales_cs_bill_customer_sk_max) and in_bloom_filter(ss_customer_sk, DynamicValue(RS_95_catalog_sales_cs_bill_customer_sk_bloom_filter))) and ss_customer_sk is not null) + TableScan [TS_52] (rows=575995635 width=114) + default@store_sales,store_sales,Tbl:COMPLETE,Col:COMPLETE,Output:["ss_customer_sk","ss_quantity","ss_sales_price"] + <-Reducer 7 [BROADCAST_EDGE] vectorized + BROADCAST [RS_532] + Group By Operator [GBY_531] (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_341] + 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_339] (rows=7751875 width=6) + Output:["_col0"] + Please refer to the previous Merge Join Operator [MERGEJOIN_435] +
