You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by se...@apache.org on 2017/10/03 22:55:10 UTC
[04/50] [abbrv] hive git commit: HIVE-17543: Enable PerfCliDriver for
HoS (Sahil Takiar, reviewed by Peter Vary) (addendum)
http://git-wip-us.apache.org/repos/asf/hive/blob/9244fdc7/ql/src/test/results/clientpositive/perf/tez/query81.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/query81.q.out b/ql/src/test/results/clientpositive/perf/tez/query81.q.out
new file mode 100644
index 0000000..5fb04b2
--- /dev/null
+++ b/ql/src/test/results/clientpositive/perf/tez/query81.q.out
@@ -0,0 +1,214 @@
+PREHOOK: query: explain
+with customer_total_return as
+ (select cr_returning_customer_sk as ctr_customer_sk
+ ,ca_state as ctr_state,
+ sum(cr_return_amt_inc_tax) as ctr_total_return
+ from catalog_returns
+ ,date_dim
+ ,customer_address
+ where cr_returned_date_sk = d_date_sk
+ and d_year =1998
+ and cr_returning_addr_sk = ca_address_sk
+ group by cr_returning_customer_sk
+ ,ca_state )
+ select c_customer_id,c_salutation,c_first_name,c_last_name,ca_street_number,ca_street_name
+ ,ca_street_type,ca_suite_number,ca_city,ca_county,ca_state,ca_zip,ca_country,ca_gmt_offset
+ ,ca_location_type,ctr_total_return
+ from customer_total_return ctr1
+ ,customer_address
+ ,customer
+ where ctr1.ctr_total_return > (select avg(ctr_total_return)*1.2
+ from customer_total_return ctr2
+ where ctr1.ctr_state = ctr2.ctr_state)
+ and ca_address_sk = c_current_addr_sk
+ and ca_state = 'IL'
+ and ctr1.ctr_customer_sk = c_customer_sk
+ order by c_customer_id,c_salutation,c_first_name,c_last_name,ca_street_number,ca_street_name
+ ,ca_street_type,ca_suite_number,ca_city,ca_county,ca_state,ca_zip,ca_country,ca_gmt_offset
+ ,ca_location_type,ctr_total_return
+ limit 100
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+with customer_total_return as
+ (select cr_returning_customer_sk as ctr_customer_sk
+ ,ca_state as ctr_state,
+ sum(cr_return_amt_inc_tax) as ctr_total_return
+ from catalog_returns
+ ,date_dim
+ ,customer_address
+ where cr_returned_date_sk = d_date_sk
+ and d_year =1998
+ and cr_returning_addr_sk = ca_address_sk
+ group by cr_returning_customer_sk
+ ,ca_state )
+ select c_customer_id,c_salutation,c_first_name,c_last_name,ca_street_number,ca_street_name
+ ,ca_street_type,ca_suite_number,ca_city,ca_county,ca_state,ca_zip,ca_country,ca_gmt_offset
+ ,ca_location_type,ctr_total_return
+ from customer_total_return ctr1
+ ,customer_address
+ ,customer
+ where ctr1.ctr_total_return > (select avg(ctr_total_return)*1.2
+ from customer_total_return ctr2
+ where ctr1.ctr_state = ctr2.ctr_state)
+ and ca_address_sk = c_current_addr_sk
+ and ca_state = 'IL'
+ and ctr1.ctr_customer_sk = c_customer_sk
+ order by c_customer_id,c_salutation,c_first_name,c_last_name,ca_street_number,ca_street_name
+ ,ca_street_type,ca_suite_number,ca_city,ca_county,ca_state,ca_zip,ca_country,ca_gmt_offset
+ ,ca_location_type,ctr_total_return
+ limit 100
+POSTHOOK: type: QUERY
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 10 <- Reducer 13 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE)
+Reducer 11 <- Map 14 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE)
+Reducer 12 <- Map 15 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE)
+Reducer 13 <- Reducer 12 (SIMPLE_EDGE)
+Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 5 (SIMPLE_EDGE)
+Reducer 3 <- Reducer 10 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE)
+Reducer 4 <- Reducer 3 (SIMPLE_EDGE)
+Reducer 7 <- Map 14 (SIMPLE_EDGE), Map 6 (SIMPLE_EDGE)
+Reducer 8 <- Map 15 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE)
+Reducer 9 <- Reducer 8 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 4
+ File Output Operator [FS_67]
+ Select Operator [SEL_66] (rows=100 width=860)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14","_col15"]
+ Limit [LIM_65] (rows=100 width=860)
+ Number of rows:100
+ Select Operator [SEL_64] (rows=96800003 width=860)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14"]
+ <-Reducer 3 [SIMPLE_EDGE]
+ SHUFFLE [RS_63]
+ Select Operator [SEL_62] (rows=96800003 width=860)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7","_col8","_col9","_col10","_col11","_col12","_col13","_col14"]
+ Merge Join Operator [MERGEJOIN_108] (rows=96800003 width=860)
+ Conds:RS_59._col0=RS_60._col0(Inner),Output:["_col1","_col3","_col4","_col5","_col7","_col8","_col9","_col10","_col11","_col12","_col14","_col15","_col16","_col17","_col20"]
+ <-Reducer 10 [SIMPLE_EDGE]
+ SHUFFLE [RS_60]
+ PartitionCols:_col0
+ Select Operator [SEL_55] (rows=8066666 width=1014)
+ Output:["_col0","_col2"]
+ Filter Operator [FIL_54] (rows=8066666 width=1014)
+ predicate:(_col2 > CASE WHEN (_col4 is null) THEN (null) ELSE (_col3) END)
+ Merge Join Operator [MERGEJOIN_107] (rows=24200000 width=1014)
+ Conds:RS_51._col1=RS_52._col2(Inner),Output:["_col0","_col2","_col3","_col4"]
+ <-Reducer 13 [SIMPLE_EDGE]
+ SHUFFLE [RS_52]
+ PartitionCols:_col2
+ Select Operator [SEL_50] (rows=11000000 width=1014)
+ Output:["_col0","_col1","_col2"]
+ Group By Operator [GBY_49] (rows=11000000 width=1014)
+ Output:["_col0","_col1"],aggregations:["avg(_col2)"],keys:_col0
+ Select Operator [SEL_45] (rows=22000000 width=1014)
+ Output:["_col0","_col2"]
+ Group By Operator [GBY_44] (rows=22000000 width=1014)
+ Output:["_col0","_col1","_col2"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0, KEY._col1
+ <-Reducer 12 [SIMPLE_EDGE]
+ SHUFFLE [RS_43]
+ PartitionCols:_col0
+ Group By Operator [GBY_42] (rows=44000000 width=1014)
+ Output:["_col0","_col1","_col2"],aggregations:["sum(_col3)"],keys:_col7, _col1
+ Merge Join Operator [MERGEJOIN_106] (rows=44000000 width=1014)
+ Conds:RS_38._col2=RS_39._col0(Inner),Output:["_col1","_col3","_col7"]
+ <-Map 15 [SIMPLE_EDGE]
+ SHUFFLE [RS_39]
+ PartitionCols:_col0
+ Select Operator [SEL_34] (rows=40000000 width=1014)
+ Output:["_col0","_col1"]
+ Filter Operator [FIL_101] (rows=40000000 width=1014)
+ predicate:(ca_address_sk is not null and ca_state is not null)
+ TableScan [TS_12] (rows=40000000 width=1014)
+ default@customer_address,customer_address,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_state"]
+ <-Reducer 11 [SIMPLE_EDGE]
+ SHUFFLE [RS_38]
+ PartitionCols:_col2
+ Merge Join Operator [MERGEJOIN_105] (rows=31678769 width=106)
+ Conds:RS_35._col0=RS_36._col0(Inner),Output:["_col1","_col2","_col3"]
+ <-Map 14 [SIMPLE_EDGE]
+ SHUFFLE [RS_36]
+ PartitionCols:_col0
+ Select Operator [SEL_11] (rows=36524 width=1119)
+ Output:["_col0"]
+ Filter Operator [FIL_97] (rows=36524 width=1119)
+ predicate:((d_year = 1998) and d_date_sk is not null)
+ TableScan [TS_9] (rows=73049 width=1119)
+ default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"]
+ <-Map 6 [SIMPLE_EDGE]
+ SHUFFLE [RS_35]
+ PartitionCols:_col0
+ Select Operator [SEL_28] (rows=28798881 width=106)
+ Output:["_col0","_col1","_col2","_col3"]
+ Filter Operator [FIL_99] (rows=28798881 width=106)
+ predicate:(cr_returned_date_sk is not null and cr_returning_addr_sk is not null)
+ TableScan [TS_6] (rows=28798881 width=106)
+ default@catalog_returns,catalog_returns,Tbl:COMPLETE,Col:NONE,Output:["cr_returned_date_sk","cr_returning_customer_sk","cr_returning_addr_sk","cr_return_amt_inc_tax"]
+ <-Reducer 9 [SIMPLE_EDGE]
+ SHUFFLE [RS_51]
+ PartitionCols:_col1
+ Select Operator [SEL_25] (rows=22000000 width=1014)
+ Output:["_col0","_col1","_col2"]
+ Group By Operator [GBY_24] (rows=22000000 width=1014)
+ Output:["_col0","_col1","_col2"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0, KEY._col1
+ <-Reducer 8 [SIMPLE_EDGE]
+ SHUFFLE [RS_23]
+ PartitionCols:_col0, _col1
+ Group By Operator [GBY_22] (rows=44000000 width=1014)
+ Output:["_col0","_col1","_col2"],aggregations:["sum(_col3)"],keys:_col7, _col1
+ Merge Join Operator [MERGEJOIN_104] (rows=44000000 width=1014)
+ Conds:RS_18._col2=RS_19._col0(Inner),Output:["_col1","_col3","_col7"]
+ <-Map 15 [SIMPLE_EDGE]
+ SHUFFLE [RS_19]
+ PartitionCols:_col0
+ Select Operator [SEL_14] (rows=40000000 width=1014)
+ Output:["_col0","_col1"]
+ Filter Operator [FIL_98] (rows=40000000 width=1014)
+ predicate:ca_address_sk is not null
+ Please refer to the previous TableScan [TS_12]
+ <-Reducer 7 [SIMPLE_EDGE]
+ SHUFFLE [RS_18]
+ PartitionCols:_col2
+ Merge Join Operator [MERGEJOIN_103] (rows=31678769 width=106)
+ Conds:RS_15._col0=RS_16._col0(Inner),Output:["_col1","_col2","_col3"]
+ <-Map 14 [SIMPLE_EDGE]
+ SHUFFLE [RS_16]
+ PartitionCols:_col0
+ Please refer to the previous Select Operator [SEL_11]
+ <-Map 6 [SIMPLE_EDGE]
+ SHUFFLE [RS_15]
+ PartitionCols:_col0
+ Select Operator [SEL_8] (rows=28798881 width=106)
+ Output:["_col0","_col1","_col2","_col3"]
+ Filter Operator [FIL_96] (rows=28798881 width=106)
+ predicate:(cr_returned_date_sk is not null and cr_returning_addr_sk is not null and cr_returning_customer_sk is not null)
+ Please refer to the previous TableScan [TS_6]
+ <-Reducer 2 [SIMPLE_EDGE]
+ SHUFFLE [RS_59]
+ PartitionCols:_col0
+ Merge Join Operator [MERGEJOIN_102] (rows=88000001 width=860)
+ Conds:RS_56._col2=RS_57._col0(Inner),Output:["_col0","_col1","_col3","_col4","_col5","_col7","_col8","_col9","_col10","_col11","_col12","_col14","_col15","_col16","_col17"]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_56]
+ PartitionCols:_col2
+ Select Operator [SEL_2] (rows=80000000 width=860)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
+ Filter Operator [FIL_94] (rows=80000000 width=860)
+ predicate:(c_current_addr_sk is not null and c_customer_sk is not null)
+ TableScan [TS_0] (rows=80000000 width=860)
+ default@customer,customer,Tbl:COMPLETE,Col:NONE,Output:["c_customer_sk","c_customer_id","c_current_addr_sk","c_salutation","c_first_name","c_last_name"]
+ <-Map 5 [SIMPLE_EDGE]
+ SHUFFLE [RS_57]
+ PartitionCols:_col0
+ Select Operator [SEL_5] (rows=20000000 width=1014)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col8","_col9","_col10","_col11"]
+ Filter Operator [FIL_95] (rows=20000000 width=1014)
+ predicate:((ca_state = 'IL') and ca_address_sk is not null)
+ TableScan [TS_3] (rows=40000000 width=1014)
+ default@customer_address,customer_address,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_street_number","ca_street_name","ca_street_type","ca_suite_number","ca_city","ca_county","ca_state","ca_zip","ca_country","ca_gmt_offset","ca_location_type"]
+
http://git-wip-us.apache.org/repos/asf/hive/blob/9244fdc7/ql/src/test/results/clientpositive/perf/tez/query82.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/query82.q.out b/ql/src/test/results/clientpositive/perf/tez/query82.q.out
new file mode 100644
index 0000000..037c2ff
--- /dev/null
+++ b/ql/src/test/results/clientpositive/perf/tez/query82.q.out
@@ -0,0 +1,103 @@
+PREHOOK: query: explain
+select i_item_id
+ ,i_item_desc
+ ,i_current_price
+ from item, inventory, date_dim, store_sales
+ where i_current_price between 30 and 30+30
+ and inv_item_sk = i_item_sk
+ and d_date_sk=inv_date_sk
+ and d_date between cast('2002-05-30' as date) and (cast('2002-05-30' as date) + 60 days)
+ and i_manufact_id in (437,129,727,663)
+ and inv_quantity_on_hand between 100 and 500
+ and ss_item_sk = i_item_sk
+ group by i_item_id,i_item_desc,i_current_price
+ order by i_item_id
+ limit 100
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select i_item_id
+ ,i_item_desc
+ ,i_current_price
+ from item, inventory, date_dim, store_sales
+ where i_current_price between 30 and 30+30
+ and inv_item_sk = i_item_sk
+ and d_date_sk=inv_date_sk
+ and d_date between cast('2002-05-30' as date) and (cast('2002-05-30' as date) + 60 days)
+ and i_manufact_id in (437,129,727,663)
+ and inv_quantity_on_hand between 100 and 500
+ and ss_item_sk = i_item_sk
+ group by i_item_id,i_item_desc,i_current_price
+ order by i_item_id
+ limit 100
+POSTHOOK: type: QUERY
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 5 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE)
+Reducer 3 <- Reducer 2 (SIMPLE_EDGE)
+Reducer 4 <- Reducer 3 (SIMPLE_EDGE)
+Reducer 7 <- Map 6 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:100
+ Stage-1
+ Reducer 4
+ File Output Operator [FS_28]
+ Limit [LIM_27] (rows=100 width=88)
+ Number of rows:100
+ Select Operator [SEL_26] (rows=633595212 width=88)
+ Output:["_col0","_col1","_col2"]
+ <-Reducer 3 [SIMPLE_EDGE]
+ SHUFFLE [RS_25]
+ Group By Operator [GBY_23] (rows=633595212 width=88)
+ Output:["_col0","_col1","_col2"],keys:KEY._col0, KEY._col1, KEY._col2
+ <-Reducer 2 [SIMPLE_EDGE]
+ SHUFFLE [RS_22]
+ PartitionCols:_col0, _col1, _col2
+ Group By Operator [GBY_21] (rows=1267190424 width=88)
+ Output:["_col0","_col1","_col2"],keys:_col2, _col3, _col4
+ Merge Join Operator [MERGEJOIN_44] (rows=1267190424 width=88)
+ Conds:RS_16._col0=RS_17._col0(Inner),RS_17._col0=RS_18._col1(Inner),Output:["_col2","_col3","_col4"]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_16]
+ PartitionCols:_col0
+ Select Operator [SEL_2] (rows=575995635 width=88)
+ Output:["_col0"]
+ Filter Operator [FIL_39] (rows=575995635 width=88)
+ predicate:ss_item_sk is not null
+ TableScan [TS_0] (rows=575995635 width=88)
+ default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_item_sk"]
+ <-Map 5 [SIMPLE_EDGE]
+ SHUFFLE [RS_17]
+ PartitionCols:_col0
+ Select Operator [SEL_5] (rows=25666 width=1436)
+ Output:["_col0","_col1","_col2","_col3"]
+ Filter Operator [FIL_40] (rows=25666 width=1436)
+ predicate:((i_manufact_id) IN (437, 129, 727, 663) and i_current_price BETWEEN 30 AND 60 and i_item_sk is not null)
+ TableScan [TS_3] (rows=462000 width=1436)
+ default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_item_id","i_item_desc","i_current_price","i_manufact_id"]
+ <-Reducer 7 [SIMPLE_EDGE]
+ SHUFFLE [RS_18]
+ PartitionCols:_col1
+ Merge Join Operator [MERGEJOIN_43] (rows=4593600 width=15)
+ Conds:RS_12._col0=RS_13._col0(Inner),Output:["_col1"]
+ <-Map 6 [SIMPLE_EDGE]
+ SHUFFLE [RS_12]
+ PartitionCols:_col0
+ Select Operator [SEL_8] (rows=4176000 width=15)
+ Output:["_col0","_col1"]
+ Filter Operator [FIL_41] (rows=4176000 width=15)
+ predicate:(inv_date_sk is not null and inv_item_sk is not null and inv_quantity_on_hand BETWEEN 100 AND 500)
+ TableScan [TS_6] (rows=37584000 width=15)
+ default@inventory,inventory,Tbl:COMPLETE,Col:NONE,Output:["inv_date_sk","inv_item_sk","inv_quantity_on_hand"]
+ <-Map 8 [SIMPLE_EDGE]
+ SHUFFLE [RS_13]
+ PartitionCols:_col0
+ Select Operator [SEL_11] (rows=8116 width=1119)
+ Output:["_col0"]
+ Filter Operator [FIL_42] (rows=8116 width=1119)
+ predicate:(CAST( d_date AS TIMESTAMP) BETWEEN 2002-05-30 00:00:00.0 AND 2002-07-29 00:00:00.0 and d_date_sk is not null)
+ TableScan [TS_9] (rows=73049 width=1119)
+ default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_date"]
+
http://git-wip-us.apache.org/repos/asf/hive/blob/9244fdc7/ql/src/test/results/clientpositive/perf/tez/query83.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/query83.q.out b/ql/src/test/results/clientpositive/perf/tez/query83.q.out
new file mode 100644
index 0000000..2a3a946
--- /dev/null
+++ b/ql/src/test/results/clientpositive/perf/tez/query83.q.out
@@ -0,0 +1,372 @@
+PREHOOK: query: explain
+with sr_items as
+ (select i_item_id item_id,
+ sum(sr_return_quantity) sr_item_qty
+ from store_returns,
+ item,
+ date_dim
+ where sr_item_sk = i_item_sk
+ and d_date in
+ (select d_date
+ from date_dim
+ where d_week_seq in
+ (select d_week_seq
+ from date_dim
+ where d_date in ('1998-01-02','1998-10-15','1998-11-10')))
+ and sr_returned_date_sk = d_date_sk
+ group by i_item_id),
+ cr_items as
+ (select i_item_id item_id,
+ sum(cr_return_quantity) cr_item_qty
+ from catalog_returns,
+ item,
+ date_dim
+ where cr_item_sk = i_item_sk
+ and d_date in
+ (select d_date
+ from date_dim
+ where d_week_seq in
+ (select d_week_seq
+ from date_dim
+ where d_date in ('1998-01-02','1998-10-15','1998-11-10')))
+ and cr_returned_date_sk = d_date_sk
+ group by i_item_id),
+ wr_items as
+ (select i_item_id item_id,
+ sum(wr_return_quantity) wr_item_qty
+ from web_returns,
+ item,
+ date_dim
+ where wr_item_sk = i_item_sk
+ and d_date in
+ (select d_date
+ from date_dim
+ where d_week_seq in
+ (select d_week_seq
+ from date_dim
+ where d_date in ('1998-01-02','1998-10-15','1998-11-10')))
+ and wr_returned_date_sk = d_date_sk
+ group by i_item_id)
+ select sr_items.item_id
+ ,sr_item_qty
+ ,sr_item_qty/(sr_item_qty+cr_item_qty+wr_item_qty)/3.0 * 100 sr_dev
+ ,cr_item_qty
+ ,cr_item_qty/(sr_item_qty+cr_item_qty+wr_item_qty)/3.0 * 100 cr_dev
+ ,wr_item_qty
+ ,wr_item_qty/(sr_item_qty+cr_item_qty+wr_item_qty)/3.0 * 100 wr_dev
+ ,(sr_item_qty+cr_item_qty+wr_item_qty)/3.0 average
+ from sr_items
+ ,cr_items
+ ,wr_items
+ where sr_items.item_id=cr_items.item_id
+ and sr_items.item_id=wr_items.item_id
+ order by sr_items.item_id
+ ,sr_item_qty
+ limit 100
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+with sr_items as
+ (select i_item_id item_id,
+ sum(sr_return_quantity) sr_item_qty
+ from store_returns,
+ item,
+ date_dim
+ where sr_item_sk = i_item_sk
+ and d_date in
+ (select d_date
+ from date_dim
+ where d_week_seq in
+ (select d_week_seq
+ from date_dim
+ where d_date in ('1998-01-02','1998-10-15','1998-11-10')))
+ and sr_returned_date_sk = d_date_sk
+ group by i_item_id),
+ cr_items as
+ (select i_item_id item_id,
+ sum(cr_return_quantity) cr_item_qty
+ from catalog_returns,
+ item,
+ date_dim
+ where cr_item_sk = i_item_sk
+ and d_date in
+ (select d_date
+ from date_dim
+ where d_week_seq in
+ (select d_week_seq
+ from date_dim
+ where d_date in ('1998-01-02','1998-10-15','1998-11-10')))
+ and cr_returned_date_sk = d_date_sk
+ group by i_item_id),
+ wr_items as
+ (select i_item_id item_id,
+ sum(wr_return_quantity) wr_item_qty
+ from web_returns,
+ item,
+ date_dim
+ where wr_item_sk = i_item_sk
+ and d_date in
+ (select d_date
+ from date_dim
+ where d_week_seq in
+ (select d_week_seq
+ from date_dim
+ where d_date in ('1998-01-02','1998-10-15','1998-11-10')))
+ and wr_returned_date_sk = d_date_sk
+ group by i_item_id)
+ select sr_items.item_id
+ ,sr_item_qty
+ ,sr_item_qty/(sr_item_qty+cr_item_qty+wr_item_qty)/3.0 * 100 sr_dev
+ ,cr_item_qty
+ ,cr_item_qty/(sr_item_qty+cr_item_qty+wr_item_qty)/3.0 * 100 cr_dev
+ ,wr_item_qty
+ ,wr_item_qty/(sr_item_qty+cr_item_qty+wr_item_qty)/3.0 * 100 wr_dev
+ ,(sr_item_qty+cr_item_qty+wr_item_qty)/3.0 average
+ from sr_items
+ ,cr_items
+ ,wr_items
+ where sr_items.item_id=cr_items.item_id
+ and sr_items.item_id=wr_items.item_id
+ order by sr_items.item_id
+ ,sr_item_qty
+ limit 100
+POSTHOOK: type: QUERY
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 10 <- Reducer 9 (SIMPLE_EDGE)
+Reducer 11 <- Map 27 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE)
+Reducer 12 <- Reducer 11 (SIMPLE_EDGE), Reducer 17 (SIMPLE_EDGE)
+Reducer 13 <- Reducer 12 (SIMPLE_EDGE)
+Reducer 15 <- Map 14 (SIMPLE_EDGE), Reducer 20 (ONE_TO_ONE_EDGE)
+Reducer 16 <- Map 14 (SIMPLE_EDGE), Reducer 22 (ONE_TO_ONE_EDGE)
+Reducer 17 <- Map 14 (SIMPLE_EDGE), Reducer 24 (ONE_TO_ONE_EDGE)
+Reducer 19 <- Map 18 (SIMPLE_EDGE), Map 25 (SIMPLE_EDGE)
+Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE)
+Reducer 20 <- Reducer 19 (SIMPLE_EDGE)
+Reducer 21 <- Map 18 (SIMPLE_EDGE), Map 25 (SIMPLE_EDGE)
+Reducer 22 <- Reducer 21 (SIMPLE_EDGE)
+Reducer 23 <- Map 18 (SIMPLE_EDGE), Map 25 (SIMPLE_EDGE)
+Reducer 24 <- Reducer 23 (SIMPLE_EDGE)
+Reducer 3 <- Reducer 15 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE)
+Reducer 4 <- Reducer 3 (SIMPLE_EDGE)
+Reducer 5 <- Reducer 10 (ONE_TO_ONE_EDGE), Reducer 13 (ONE_TO_ONE_EDGE), Reducer 4 (ONE_TO_ONE_EDGE)
+Reducer 6 <- Reducer 5 (SIMPLE_EDGE)
+Reducer 8 <- Map 26 (SIMPLE_EDGE), Map 7 (SIMPLE_EDGE)
+Reducer 9 <- Reducer 16 (SIMPLE_EDGE), Reducer 8 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:100
+ Stage-1
+ Reducer 6
+ File Output Operator [FS_128]
+ Limit [LIM_127] (rows=100 width=77)
+ Number of rows:100
+ Select Operator [SEL_126] (rows=76653825 width=77)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"]
+ <-Reducer 5 [SIMPLE_EDGE]
+ SHUFFLE [RS_125]
+ Select Operator [SEL_124] (rows=76653825 width=77)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"]
+ Merge Join Operator [MERGEJOIN_222] (rows=76653825 width=77)
+ Conds:RS_120._col0=RS_121._col0(Inner),RS_120._col0=RS_122._col0(Inner),Output:["_col0","_col1","_col3","_col5"]
+ <-Reducer 10 [ONE_TO_ONE_EDGE]
+ FORWARD [RS_121]
+ PartitionCols:_col0
+ Group By Operator [GBY_78] (rows=34842647 width=77)
+ Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0
+ <-Reducer 9 [SIMPLE_EDGE]
+ SHUFFLE [RS_77]
+ PartitionCols:_col0
+ Group By Operator [GBY_76] (rows=69685294 width=77)
+ Output:["_col0","_col1"],aggregations:["sum(_col2)"],keys:_col4
+ Merge Join Operator [MERGEJOIN_220] (rows=69685294 width=77)
+ Conds:RS_72._col0=RS_73._col0(Inner),Output:["_col2","_col4"]
+ <-Reducer 16 [SIMPLE_EDGE]
+ SHUFFLE [RS_73]
+ PartitionCols:_col0
+ Merge Join Operator [MERGEJOIN_215] (rows=80353 width=1119)
+ Conds:RS_65._col1=RS_66._col0(Inner),Output:["_col0"]
+ <-Map 14 [SIMPLE_EDGE]
+ SHUFFLE [RS_65]
+ PartitionCols:_col1
+ Select Operator [SEL_8] (rows=73049 width=1119)
+ Output:["_col0","_col1"]
+ Filter Operator [FIL_197] (rows=73049 width=1119)
+ predicate:(d_date is not null and d_date_sk is not null)
+ TableScan [TS_6] (rows=73049 width=1119)
+ default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_date"]
+ <-Reducer 22 [ONE_TO_ONE_EDGE]
+ FORWARD [RS_66]
+ PartitionCols:_col0
+ Group By Operator [GBY_63] (rows=40176 width=1119)
+ Output:["_col0"],keys:KEY._col0
+ <-Reducer 21 [SIMPLE_EDGE]
+ SHUFFLE [RS_62]
+ PartitionCols:_col0
+ Group By Operator [GBY_61] (rows=80353 width=1119)
+ Output:["_col0"],keys:_col0
+ Merge Join Operator [MERGEJOIN_214] (rows=80353 width=1119)
+ Conds:RS_57._col1=RS_58._col0(Left Semi),Output:["_col0"]
+ <-Map 18 [SIMPLE_EDGE]
+ SHUFFLE [RS_57]
+ PartitionCols:_col1
+ Select Operator [SEL_11] (rows=73049 width=1119)
+ Output:["_col0","_col1"]
+ Filter Operator [FIL_198] (rows=73049 width=1119)
+ predicate:(d_date is not null and d_week_seq is not null)
+ TableScan [TS_9] (rows=73049 width=1119)
+ default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date","d_week_seq"]
+ <-Map 25 [SIMPLE_EDGE]
+ SHUFFLE [RS_58]
+ PartitionCols:_col0
+ Group By Operator [GBY_16] (rows=36525 width=1119)
+ Output:["_col0"],keys:_col0
+ Select Operator [SEL_14] (rows=36525 width=1119)
+ Output:["_col0"]
+ Filter Operator [FIL_199] (rows=36525 width=1119)
+ predicate:((d_date) IN ('1998-01-02', '1998-10-15', '1998-11-10') and d_week_seq is not null)
+ TableScan [TS_12] (rows=73049 width=1119)
+ default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date","d_week_seq"]
+ <-Reducer 8 [SIMPLE_EDGE]
+ SHUFFLE [RS_72]
+ PartitionCols:_col0
+ Merge Join Operator [MERGEJOIN_213] (rows=63350266 width=77)
+ Conds:RS_69._col1=RS_70._col0(Inner),Output:["_col0","_col2","_col4"]
+ <-Map 7 [SIMPLE_EDGE]
+ SHUFFLE [RS_70]
+ PartitionCols:_col0
+ Select Operator [SEL_5] (rows=462000 width=1436)
+ Output:["_col0","_col1"]
+ Filter Operator [FIL_196] (rows=462000 width=1436)
+ predicate:(i_item_id is not null and i_item_sk is not null)
+ TableScan [TS_3] (rows=462000 width=1436)
+ default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_item_id"]
+ <-Map 26 [SIMPLE_EDGE]
+ SHUFFLE [RS_69]
+ PartitionCols:_col1
+ Select Operator [SEL_42] (rows=57591150 width=77)
+ Output:["_col0","_col1","_col2"]
+ Filter Operator [FIL_200] (rows=57591150 width=77)
+ predicate:(sr_item_sk is not null and sr_returned_date_sk is not null)
+ TableScan [TS_40] (rows=57591150 width=77)
+ default@store_returns,store_returns,Tbl:COMPLETE,Col:NONE,Output:["sr_returned_date_sk","sr_item_sk","sr_return_quantity"]
+ <-Reducer 13 [ONE_TO_ONE_EDGE]
+ FORWARD [RS_122]
+ PartitionCols:_col0
+ Group By Operator [GBY_118] (rows=8711072 width=92)
+ Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0
+ <-Reducer 12 [SIMPLE_EDGE]
+ SHUFFLE [RS_117]
+ PartitionCols:_col0
+ Group By Operator [GBY_116] (rows=17422145 width=92)
+ Output:["_col0","_col1"],aggregations:["sum(_col2)"],keys:_col4
+ Merge Join Operator [MERGEJOIN_221] (rows=17422145 width=92)
+ Conds:RS_112._col0=RS_113._col0(Inner),Output:["_col2","_col4"]
+ <-Reducer 11 [SIMPLE_EDGE]
+ SHUFFLE [RS_112]
+ PartitionCols:_col0
+ Merge Join Operator [MERGEJOIN_216] (rows=15838314 width=92)
+ Conds:RS_109._col1=RS_110._col0(Inner),Output:["_col0","_col2","_col4"]
+ <-Map 7 [SIMPLE_EDGE]
+ SHUFFLE [RS_110]
+ PartitionCols:_col0
+ Please refer to the previous Select Operator [SEL_5]
+ <-Map 27 [SIMPLE_EDGE]
+ SHUFFLE [RS_109]
+ PartitionCols:_col1
+ Select Operator [SEL_82] (rows=14398467 width=92)
+ Output:["_col0","_col1","_col2"]
+ Filter Operator [FIL_205] (rows=14398467 width=92)
+ predicate:(wr_item_sk is not null and wr_returned_date_sk is not null)
+ TableScan [TS_80] (rows=14398467 width=92)
+ default@web_returns,web_returns,Tbl:COMPLETE,Col:NONE,Output:["wr_returned_date_sk","wr_item_sk","wr_return_quantity"]
+ <-Reducer 17 [SIMPLE_EDGE]
+ SHUFFLE [RS_113]
+ PartitionCols:_col0
+ Merge Join Operator [MERGEJOIN_218] (rows=80353 width=1119)
+ Conds:RS_105._col1=RS_106._col0(Inner),Output:["_col0"]
+ <-Map 14 [SIMPLE_EDGE]
+ SHUFFLE [RS_105]
+ PartitionCols:_col1
+ Please refer to the previous Select Operator [SEL_8]
+ <-Reducer 24 [ONE_TO_ONE_EDGE]
+ FORWARD [RS_106]
+ PartitionCols:_col0
+ Group By Operator [GBY_103] (rows=40176 width=1119)
+ Output:["_col0"],keys:KEY._col0
+ <-Reducer 23 [SIMPLE_EDGE]
+ SHUFFLE [RS_102]
+ PartitionCols:_col0
+ Group By Operator [GBY_101] (rows=80353 width=1119)
+ Output:["_col0"],keys:_col0
+ Merge Join Operator [MERGEJOIN_217] (rows=80353 width=1119)
+ Conds:RS_97._col1=RS_98._col0(Left Semi),Output:["_col0"]
+ <-Map 18 [SIMPLE_EDGE]
+ SHUFFLE [RS_97]
+ PartitionCols:_col1
+ Please refer to the previous Select Operator [SEL_11]
+ <-Map 25 [SIMPLE_EDGE]
+ SHUFFLE [RS_98]
+ PartitionCols:_col0
+ Please refer to the previous Group By Operator [GBY_16]
+ <-Reducer 4 [ONE_TO_ONE_EDGE]
+ FORWARD [RS_120]
+ PartitionCols:_col0
+ Group By Operator [GBY_38] (rows=17423323 width=106)
+ Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0
+ <-Reducer 3 [SIMPLE_EDGE]
+ SHUFFLE [RS_37]
+ PartitionCols:_col0
+ Group By Operator [GBY_36] (rows=34846646 width=106)
+ Output:["_col0","_col1"],aggregations:["sum(_col2)"],keys:_col4
+ Merge Join Operator [MERGEJOIN_219] (rows=34846646 width=106)
+ Conds:RS_32._col0=RS_33._col0(Inner),Output:["_col2","_col4"]
+ <-Reducer 15 [SIMPLE_EDGE]
+ SHUFFLE [RS_33]
+ PartitionCols:_col0
+ Merge Join Operator [MERGEJOIN_212] (rows=80353 width=1119)
+ Conds:RS_25._col1=RS_26._col0(Inner),Output:["_col0"]
+ <-Map 14 [SIMPLE_EDGE]
+ SHUFFLE [RS_25]
+ PartitionCols:_col1
+ Please refer to the previous Select Operator [SEL_8]
+ <-Reducer 20 [ONE_TO_ONE_EDGE]
+ FORWARD [RS_26]
+ PartitionCols:_col0
+ Group By Operator [GBY_23] (rows=40176 width=1119)
+ Output:["_col0"],keys:KEY._col0
+ <-Reducer 19 [SIMPLE_EDGE]
+ SHUFFLE [RS_22]
+ PartitionCols:_col0
+ Group By Operator [GBY_21] (rows=80353 width=1119)
+ Output:["_col0"],keys:_col0
+ Merge Join Operator [MERGEJOIN_211] (rows=80353 width=1119)
+ Conds:RS_17._col1=RS_18._col0(Left Semi),Output:["_col0"]
+ <-Map 18 [SIMPLE_EDGE]
+ SHUFFLE [RS_17]
+ PartitionCols:_col1
+ Please refer to the previous Select Operator [SEL_11]
+ <-Map 25 [SIMPLE_EDGE]
+ SHUFFLE [RS_18]
+ PartitionCols:_col0
+ Please refer to the previous Group By Operator [GBY_16]
+ <-Reducer 2 [SIMPLE_EDGE]
+ SHUFFLE [RS_32]
+ PartitionCols:_col0
+ Merge Join Operator [MERGEJOIN_210] (rows=31678769 width=106)
+ Conds:RS_29._col1=RS_30._col0(Inner),Output:["_col0","_col2","_col4"]
+ <-Map 7 [SIMPLE_EDGE]
+ SHUFFLE [RS_30]
+ PartitionCols:_col0
+ Please refer to the previous Select Operator [SEL_5]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_29]
+ PartitionCols:_col1
+ Select Operator [SEL_2] (rows=28798881 width=106)
+ Output:["_col0","_col1","_col2"]
+ Filter Operator [FIL_195] (rows=28798881 width=106)
+ predicate:(cr_item_sk is not null and cr_returned_date_sk is not null)
+ TableScan [TS_0] (rows=28798881 width=106)
+ default@catalog_returns,catalog_returns,Tbl:COMPLETE,Col:NONE,Output:["cr_returned_date_sk","cr_item_sk","cr_return_quantity"]
+
http://git-wip-us.apache.org/repos/asf/hive/blob/9244fdc7/ql/src/test/results/clientpositive/perf/tez/query84.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/query84.q.out b/ql/src/test/results/clientpositive/perf/tez/query84.q.out
new file mode 100644
index 0000000..f23cddd
--- /dev/null
+++ b/ql/src/test/results/clientpositive/perf/tez/query84.q.out
@@ -0,0 +1,135 @@
+PREHOOK: query: explain
+select c_customer_id as customer_id
+ ,c_last_name || ', ' || c_first_name as customername
+ from customer
+ ,customer_address
+ ,customer_demographics
+ ,household_demographics
+ ,income_band
+ ,store_returns
+ where ca_city = 'Hopewell'
+ and c_current_addr_sk = ca_address_sk
+ and ib_lower_bound >= 32287
+ and ib_upper_bound <= 32287 + 50000
+ and ib_income_band_sk = hd_income_band_sk
+ and cd_demo_sk = c_current_cdemo_sk
+ and hd_demo_sk = c_current_hdemo_sk
+ and sr_cdemo_sk = cd_demo_sk
+ order by c_customer_id
+ limit 100
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select c_customer_id as customer_id
+ ,c_last_name || ', ' || c_first_name as customername
+ from customer
+ ,customer_address
+ ,customer_demographics
+ ,household_demographics
+ ,income_band
+ ,store_returns
+ where ca_city = 'Hopewell'
+ and c_current_addr_sk = ca_address_sk
+ and ib_lower_bound >= 32287
+ and ib_upper_bound <= 32287 + 50000
+ and ib_income_band_sk = hd_income_band_sk
+ and cd_demo_sk = c_current_cdemo_sk
+ and hd_demo_sk = c_current_hdemo_sk
+ and sr_cdemo_sk = cd_demo_sk
+ order by c_customer_id
+ limit 100
+POSTHOOK: type: QUERY
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 10 <- Map 11 (SIMPLE_EDGE), Map 9 (SIMPLE_EDGE)
+Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 4 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE)
+Reducer 3 <- Reducer 2 (SIMPLE_EDGE)
+Reducer 6 <- Map 5 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE)
+Reducer 7 <- Reducer 10 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 3
+ File Output Operator [FS_38]
+ Limit [LIM_36] (rows=100 width=860)
+ Number of rows:100
+ Select Operator [SEL_35] (rows=212960011 width=860)
+ Output:["_col0","_col1"]
+ <-Reducer 2 [SIMPLE_EDGE]
+ SHUFFLE [RS_34]
+ Select Operator [SEL_33] (rows=212960011 width=860)
+ Output:["_col1","_col2"]
+ Merge Join Operator [MERGEJOIN_68] (rows=212960011 width=860)
+ Conds:RS_29._col0=RS_30._col0(Inner),RS_30._col0=RS_31._col1(Inner),Output:["_col2","_col6","_col7"]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_29]
+ PartitionCols:_col0
+ Select Operator [SEL_2] (rows=57591150 width=77)
+ Output:["_col0"]
+ Filter Operator [FIL_59] (rows=57591150 width=77)
+ predicate:sr_cdemo_sk is not null
+ TableScan [TS_0] (rows=57591150 width=77)
+ default@store_returns,store_returns,Tbl:COMPLETE,Col:NONE,Output:["sr_cdemo_sk"]
+ <-Map 4 [SIMPLE_EDGE]
+ SHUFFLE [RS_30]
+ PartitionCols:_col0
+ Select Operator [SEL_5] (rows=1861800 width=385)
+ Output:["_col0"]
+ Filter Operator [FIL_60] (rows=1861800 width=385)
+ predicate:cd_demo_sk is not null
+ TableScan [TS_3] (rows=1861800 width=385)
+ default@customer_demographics,customer_demographics,Tbl:COMPLETE,Col:NONE,Output:["cd_demo_sk"]
+ <-Reducer 7 [SIMPLE_EDGE]
+ SHUFFLE [RS_31]
+ PartitionCols:_col1
+ Merge Join Operator [MERGEJOIN_67] (rows=96800003 width=860)
+ Conds:RS_25._col2=RS_26._col0(Inner),Output:["_col0","_col1","_col4","_col5"]
+ <-Reducer 10 [SIMPLE_EDGE]
+ SHUFFLE [RS_26]
+ PartitionCols:_col0
+ Merge Join Operator [MERGEJOIN_66] (rows=7920 width=107)
+ Conds:RS_18._col1=RS_19._col0(Inner),Output:["_col0"]
+ <-Map 11 [SIMPLE_EDGE]
+ SHUFFLE [RS_19]
+ PartitionCols:_col0
+ Select Operator [SEL_17] (rows=2 width=12)
+ Output:["_col0"]
+ Filter Operator [FIL_64] (rows=2 width=12)
+ predicate:((ib_lower_bound >= 32287) and (ib_upper_bound <= 82287) and ib_income_band_sk is not null)
+ TableScan [TS_15] (rows=20 width=12)
+ default@income_band,income_band,Tbl:COMPLETE,Col:NONE,Output:["ib_income_band_sk","ib_lower_bound","ib_upper_bound"]
+ <-Map 9 [SIMPLE_EDGE]
+ SHUFFLE [RS_18]
+ PartitionCols:_col1
+ Select Operator [SEL_14] (rows=7200 width=107)
+ Output:["_col0","_col1"]
+ Filter Operator [FIL_63] (rows=7200 width=107)
+ predicate:(hd_demo_sk is not null and hd_income_band_sk is not null)
+ TableScan [TS_12] (rows=7200 width=107)
+ default@household_demographics,household_demographics,Tbl:COMPLETE,Col:NONE,Output:["hd_demo_sk","hd_income_band_sk"]
+ <-Reducer 6 [SIMPLE_EDGE]
+ SHUFFLE [RS_25]
+ PartitionCols:_col2
+ Merge Join Operator [MERGEJOIN_65] (rows=88000001 width=860)
+ Conds:RS_22._col3=RS_23._col0(Inner),Output:["_col0","_col1","_col2","_col4","_col5"]
+ <-Map 5 [SIMPLE_EDGE]
+ SHUFFLE [RS_22]
+ PartitionCols:_col3
+ Select Operator [SEL_8] (rows=80000000 width=860)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
+ Filter Operator [FIL_61] (rows=80000000 width=860)
+ predicate:(c_current_addr_sk is not null and c_current_cdemo_sk is not null and c_current_hdemo_sk is not null)
+ TableScan [TS_6] (rows=80000000 width=860)
+ default@customer,customer,Tbl:COMPLETE,Col:NONE,Output:["c_customer_id","c_current_cdemo_sk","c_current_hdemo_sk","c_current_addr_sk","c_first_name","c_last_name"]
+ <-Map 8 [SIMPLE_EDGE]
+ SHUFFLE [RS_23]
+ PartitionCols:_col0
+ Select Operator [SEL_11] (rows=20000000 width=1014)
+ Output:["_col0"]
+ Filter Operator [FIL_62] (rows=20000000 width=1014)
+ predicate:((ca_city = 'Hopewell') and ca_address_sk is not null)
+ TableScan [TS_9] (rows=40000000 width=1014)
+ default@customer_address,customer_address,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_city"]
+
http://git-wip-us.apache.org/repos/asf/hive/blob/9244fdc7/ql/src/test/results/clientpositive/perf/tez/query85.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/query85.q.out b/ql/src/test/results/clientpositive/perf/tez/query85.q.out
new file mode 100644
index 0000000..90cc27e
--- /dev/null
+++ b/ql/src/test/results/clientpositive/perf/tez/query85.q.out
@@ -0,0 +1,304 @@
+PREHOOK: query: explain
+select substr(r_reason_desc,1,20)
+ ,avg(ws_quantity)
+ ,avg(wr_refunded_cash)
+ ,avg(wr_fee)
+ from web_sales, web_returns, web_page, customer_demographics cd1,
+ customer_demographics cd2, customer_address, date_dim, reason
+ where ws_web_page_sk = wp_web_page_sk
+ and ws_item_sk = wr_item_sk
+ and ws_order_number = wr_order_number
+ and ws_sold_date_sk = d_date_sk and d_year = 1998
+ and cd1.cd_demo_sk = wr_refunded_cdemo_sk
+ and cd2.cd_demo_sk = wr_returning_cdemo_sk
+ and ca_address_sk = wr_refunded_addr_sk
+ and r_reason_sk = wr_reason_sk
+ and
+ (
+ (
+ cd1.cd_marital_status = 'M'
+ and
+ cd1.cd_marital_status = cd2.cd_marital_status
+ and
+ cd1.cd_education_status = '4 yr Degree'
+ and
+ cd1.cd_education_status = cd2.cd_education_status
+ and
+ ws_sales_price between 100.00 and 150.00
+ )
+ or
+ (
+ cd1.cd_marital_status = 'D'
+ and
+ cd1.cd_marital_status = cd2.cd_marital_status
+ and
+ cd1.cd_education_status = 'Primary'
+ and
+ cd1.cd_education_status = cd2.cd_education_status
+ and
+ ws_sales_price between 50.00 and 100.00
+ )
+ or
+ (
+ cd1.cd_marital_status = 'U'
+ and
+ cd1.cd_marital_status = cd2.cd_marital_status
+ and
+ cd1.cd_education_status = 'Advanced Degree'
+ and
+ cd1.cd_education_status = cd2.cd_education_status
+ and
+ ws_sales_price between 150.00 and 200.00
+ )
+ )
+ and
+ (
+ (
+ ca_country = 'United States'
+ and
+ ca_state in ('KY', 'GA', 'NM')
+ and ws_net_profit between 100 and 200
+ )
+ or
+ (
+ ca_country = 'United States'
+ and
+ ca_state in ('MT', 'OR', 'IN')
+ and ws_net_profit between 150 and 300
+ )
+ or
+ (
+ ca_country = 'United States'
+ and
+ ca_state in ('WI', 'MO', 'WV')
+ and ws_net_profit between 50 and 250
+ )
+ )
+group by r_reason_desc
+order by substr(r_reason_desc,1,20)
+ ,avg(ws_quantity)
+ ,avg(wr_refunded_cash)
+ ,avg(wr_fee)
+limit 100
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select substr(r_reason_desc,1,20)
+ ,avg(ws_quantity)
+ ,avg(wr_refunded_cash)
+ ,avg(wr_fee)
+ from web_sales, web_returns, web_page, customer_demographics cd1,
+ customer_demographics cd2, customer_address, date_dim, reason
+ where ws_web_page_sk = wp_web_page_sk
+ and ws_item_sk = wr_item_sk
+ and ws_order_number = wr_order_number
+ and ws_sold_date_sk = d_date_sk and d_year = 1998
+ and cd1.cd_demo_sk = wr_refunded_cdemo_sk
+ and cd2.cd_demo_sk = wr_returning_cdemo_sk
+ and ca_address_sk = wr_refunded_addr_sk
+ and r_reason_sk = wr_reason_sk
+ and
+ (
+ (
+ cd1.cd_marital_status = 'M'
+ and
+ cd1.cd_marital_status = cd2.cd_marital_status
+ and
+ cd1.cd_education_status = '4 yr Degree'
+ and
+ cd1.cd_education_status = cd2.cd_education_status
+ and
+ ws_sales_price between 100.00 and 150.00
+ )
+ or
+ (
+ cd1.cd_marital_status = 'D'
+ and
+ cd1.cd_marital_status = cd2.cd_marital_status
+ and
+ cd1.cd_education_status = 'Primary'
+ and
+ cd1.cd_education_status = cd2.cd_education_status
+ and
+ ws_sales_price between 50.00 and 100.00
+ )
+ or
+ (
+ cd1.cd_marital_status = 'U'
+ and
+ cd1.cd_marital_status = cd2.cd_marital_status
+ and
+ cd1.cd_education_status = 'Advanced Degree'
+ and
+ cd1.cd_education_status = cd2.cd_education_status
+ and
+ ws_sales_price between 150.00 and 200.00
+ )
+ )
+ and
+ (
+ (
+ ca_country = 'United States'
+ and
+ ca_state in ('KY', 'GA', 'NM')
+ and ws_net_profit between 100 and 200
+ )
+ or
+ (
+ ca_country = 'United States'
+ and
+ ca_state in ('MT', 'OR', 'IN')
+ and ws_net_profit between 150 and 300
+ )
+ or
+ (
+ ca_country = 'United States'
+ and
+ ca_state in ('WI', 'MO', 'WV')
+ and ws_net_profit between 50 and 250
+ )
+ )
+group by r_reason_desc
+order by substr(r_reason_desc,1,20)
+ ,avg(ws_quantity)
+ ,avg(wr_refunded_cash)
+ ,avg(wr_fee)
+limit 100
+POSTHOOK: type: QUERY
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 10 <- Reducer 9 (SIMPLE_EDGE)
+Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 11 (SIMPLE_EDGE)
+Reducer 3 <- Map 12 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE)
+Reducer 4 <- Map 13 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE)
+Reducer 5 <- Map 14 (SIMPLE_EDGE), Reducer 4 (SIMPLE_EDGE)
+Reducer 6 <- Map 15 (SIMPLE_EDGE), Reducer 5 (SIMPLE_EDGE)
+Reducer 7 <- Map 16 (SIMPLE_EDGE), Reducer 6 (SIMPLE_EDGE)
+Reducer 8 <- Map 16 (SIMPLE_EDGE), Reducer 7 (SIMPLE_EDGE)
+Reducer 9 <- Reducer 8 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 10
+ File Output Operator [FS_56]
+ Limit [LIM_54] (rows=100 width=385)
+ Number of rows:100
+ Select Operator [SEL_53] (rows=1023990 width=385)
+ Output:["_col0","_col1","_col2","_col3"]
+ <-Reducer 9 [SIMPLE_EDGE]
+ SHUFFLE [RS_52]
+ Select Operator [SEL_51] (rows=1023990 width=385)
+ Output:["_col5","_col6","_col7","_col8"]
+ Group By Operator [GBY_50] (rows=1023990 width=385)
+ Output:["_col0","_col1","_col2","_col3"],aggregations:["avg(VALUE._col0)","avg(VALUE._col1)","avg(VALUE._col2)"],keys:KEY._col0
+ <-Reducer 8 [SIMPLE_EDGE]
+ SHUFFLE [RS_49]
+ PartitionCols:_col0
+ Group By Operator [GBY_48] (rows=2047980 width=385)
+ Output:["_col0","_col1","_col2","_col3"],aggregations:["avg(_col12)","avg(_col7)","avg(_col6)"],keys:_col22
+ Merge Join Operator [MERGEJOIN_106] (rows=2047980 width=385)
+ Conds:RS_44._col3, _col24, _col25=RS_45._col0, _col1, _col2(Inner),Output:["_col6","_col7","_col12","_col22"]
+ <-Map 16 [SIMPLE_EDGE]
+ SHUFFLE [RS_45]
+ PartitionCols:_col0, _col1, _col2
+ Select Operator [SEL_23] (rows=1861800 width=385)
+ Output:["_col0","_col1","_col2"]
+ Filter Operator [FIL_99] (rows=1861800 width=385)
+ predicate:(((cd_education_status = '4 yr Degree') or (cd_education_status = 'Primary') or (cd_education_status = 'Advanced Degree')) and ((cd_marital_status = 'M') or (cd_marital_status = 'D') or (cd_marital_status = 'U')) and cd_demo_sk is not null and cd_education_status is not null and cd_marital_status is not null)
+ TableScan [TS_21] (rows=1861800 width=385)
+ default@customer_demographics,cd2,Tbl:COMPLETE,Col:NONE,Output:["cd_demo_sk","cd_marital_status","cd_education_status"]
+ <-Reducer 7 [SIMPLE_EDGE]
+ SHUFFLE [RS_44]
+ PartitionCols:_col3, _col24, _col25
+ Filter Operator [FIL_43] (rows=393687 width=135)
+ predicate:(((_col24 = 'D') and (_col25 = 'Primary') and _col13 BETWEEN 50 AND 100) or ((_col24 = 'M') and (_col25 = '4 yr Degree') and _col13 BETWEEN 100 AND 150) or ((_col24 = 'U') and (_col25 = 'Advanced Degree') and _col13 BETWEEN 150 AND 200))
+ Merge Join Operator [MERGEJOIN_105] (rows=4724246 width=135)
+ Conds:RS_40._col1=RS_41._col0(Inner),Output:["_col3","_col6","_col7","_col12","_col13","_col22","_col24","_col25"]
+ <-Map 16 [SIMPLE_EDGE]
+ SHUFFLE [RS_41]
+ PartitionCols:_col0
+ Please refer to the previous Select Operator [SEL_23]
+ <-Reducer 6 [SIMPLE_EDGE]
+ SHUFFLE [RS_40]
+ PartitionCols:_col1
+ Merge Join Operator [MERGEJOIN_104] (rows=4294769 width=135)
+ Conds:RS_37._col4=RS_38._col0(Inner),Output:["_col1","_col3","_col6","_col7","_col12","_col13","_col22"]
+ <-Map 15 [SIMPLE_EDGE]
+ SHUFFLE [RS_38]
+ PartitionCols:_col0
+ Select Operator [SEL_17] (rows=72 width=200)
+ Output:["_col0","_col1"]
+ Filter Operator [FIL_97] (rows=72 width=200)
+ predicate:r_reason_sk is not null
+ TableScan [TS_15] (rows=72 width=200)
+ default@reason,reason,Tbl:COMPLETE,Col:NONE,Output:["r_reason_sk","r_reason_desc"]
+ <-Reducer 5 [SIMPLE_EDGE]
+ SHUFFLE [RS_37]
+ PartitionCols:_col4
+ Merge Join Operator [MERGEJOIN_103] (rows=3904336 width=135)
+ Conds:RS_34._col8=RS_35._col0(Inner),Output:["_col1","_col3","_col4","_col6","_col7","_col12","_col13"]
+ <-Map 14 [SIMPLE_EDGE]
+ SHUFFLE [RS_35]
+ PartitionCols:_col0
+ Select Operator [SEL_14] (rows=36524 width=1119)
+ Output:["_col0"]
+ Filter Operator [FIL_96] (rows=36524 width=1119)
+ predicate:((d_year = 1998) and d_date_sk is not null)
+ TableScan [TS_12] (rows=73049 width=1119)
+ default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year"]
+ <-Reducer 4 [SIMPLE_EDGE]
+ SHUFFLE [RS_34]
+ PartitionCols:_col8
+ Merge Join Operator [MERGEJOIN_102] (rows=3549397 width=135)
+ Conds:RS_31._col10=RS_32._col0(Inner),Output:["_col1","_col3","_col4","_col6","_col7","_col8","_col12","_col13"]
+ <-Map 13 [SIMPLE_EDGE]
+ SHUFFLE [RS_32]
+ PartitionCols:_col0
+ Select Operator [SEL_11] (rows=4602 width=585)
+ Output:["_col0"]
+ Filter Operator [FIL_95] (rows=4602 width=585)
+ predicate:wp_web_page_sk is not null
+ TableScan [TS_9] (rows=4602 width=585)
+ default@web_page,web_page,Tbl:COMPLETE,Col:NONE,Output:["wp_web_page_sk"]
+ <-Reducer 3 [SIMPLE_EDGE]
+ SHUFFLE [RS_31]
+ PartitionCols:_col10
+ Filter Operator [FIL_30] (rows=3226725 width=135)
+ predicate:(((_col16) IN ('KY', 'GA', 'NM') and _col14 BETWEEN 100 AND 200) or ((_col16) IN ('MT', 'OR', 'IN') and _col14 BETWEEN 150 AND 300) or ((_col16) IN ('WI', 'MO', 'WV') and _col14 BETWEEN 50 AND 250))
+ Merge Join Operator [MERGEJOIN_101] (rows=19360357 width=135)
+ Conds:RS_27._col2=RS_28._col0(Inner),Output:["_col1","_col3","_col4","_col6","_col7","_col8","_col10","_col12","_col13","_col14","_col16"]
+ <-Map 12 [SIMPLE_EDGE]
+ SHUFFLE [RS_28]
+ PartitionCols:_col0
+ Select Operator [SEL_8] (rows=10000000 width=1014)
+ Output:["_col0","_col1"]
+ Filter Operator [FIL_94] (rows=10000000 width=1014)
+ predicate:((ca_country = 'United States') and (ca_state) IN ('KY', 'GA', 'NM', 'MT', 'OR', 'IN', 'WI', 'MO', 'WV') and ca_address_sk is not null)
+ TableScan [TS_6] (rows=40000000 width=1014)
+ default@customer_address,customer_address,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_state","ca_country"]
+ <-Reducer 2 [SIMPLE_EDGE]
+ SHUFFLE [RS_27]
+ PartitionCols:_col2
+ Merge Join Operator [MERGEJOIN_100] (rows=17600325 width=135)
+ Conds:RS_24._col0, _col5=RS_25._col1, _col3(Inner),Output:["_col1","_col2","_col3","_col4","_col6","_col7","_col8","_col10","_col12","_col13","_col14"]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_24]
+ PartitionCols:_col0, _col5
+ Select Operator [SEL_2] (rows=14398467 width=92)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"]
+ Filter Operator [FIL_92] (rows=14398467 width=92)
+ predicate:(wr_item_sk is not null and wr_order_number is not null and wr_reason_sk is not null and wr_refunded_addr_sk is not null and wr_refunded_cdemo_sk is not null and wr_returning_cdemo_sk is not null)
+ TableScan [TS_0] (rows=14398467 width=92)
+ default@web_returns,web_returns,Tbl:COMPLETE,Col:NONE,Output:["wr_item_sk","wr_refunded_cdemo_sk","wr_refunded_addr_sk","wr_returning_cdemo_sk","wr_reason_sk","wr_order_number","wr_fee","wr_refunded_cash"]
+ <-Map 11 [SIMPLE_EDGE]
+ SHUFFLE [RS_25]
+ PartitionCols:_col1, _col3
+ Select Operator [SEL_5] (rows=16000296 width=135)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6"]
+ Filter Operator [FIL_93] (rows=16000296 width=135)
+ predicate:((ws_net_profit BETWEEN 100 AND 200 or ws_net_profit BETWEEN 150 AND 300 or ws_net_profit BETWEEN 50 AND 250) and (ws_sales_price BETWEEN 100 AND 150 or ws_sales_price BETWEEN 50 AND 100 or ws_sales_price BETWEEN 150 AND 200) and ws_item_sk is not null and ws_order_number is not null and ws_sold_date_sk is not null and ws_web_page_sk is not null)
+ TableScan [TS_3] (rows=144002668 width=135)
+ default@web_sales,web_sales,Tbl:COMPLETE,Col:NONE,Output:["ws_sold_date_sk","ws_item_sk","ws_web_page_sk","ws_order_number","ws_quantity","ws_sales_price","ws_net_profit"]
+
http://git-wip-us.apache.org/repos/asf/hive/blob/9244fdc7/ql/src/test/results/clientpositive/perf/tez/query86.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/query86.q.out b/ql/src/test/results/clientpositive/perf/tez/query86.q.out
new file mode 100644
index 0000000..6b59dd2
--- /dev/null
+++ b/ql/src/test/results/clientpositive/perf/tez/query86.q.out
@@ -0,0 +1,126 @@
+PREHOOK: query: explain
+select
+ sum(ws_net_paid) as total_sum
+ ,i_category
+ ,i_class
+ ,grouping(i_category)+grouping(i_class) as lochierarchy
+ ,rank() over (
+ partition by grouping(i_category)+grouping(i_class),
+ case when grouping(i_class) = 0 then i_category end
+ order by sum(ws_net_paid) desc) as rank_within_parent
+ from
+ web_sales
+ ,date_dim d1
+ ,item
+ where
+ d1.d_month_seq between 1212 and 1212+11
+ and d1.d_date_sk = ws_sold_date_sk
+ and i_item_sk = ws_item_sk
+ group by rollup(i_category,i_class)
+ order by
+ lochierarchy desc,
+ case when lochierarchy = 0 then i_category end,
+ rank_within_parent
+ limit 100
+PREHOOK: type: QUERY
+POSTHOOK: query: explain
+select
+ sum(ws_net_paid) as total_sum
+ ,i_category
+ ,i_class
+ ,grouping(i_category)+grouping(i_class) as lochierarchy
+ ,rank() over (
+ partition by grouping(i_category)+grouping(i_class),
+ case when grouping(i_class) = 0 then i_category end
+ order by sum(ws_net_paid) desc) as rank_within_parent
+ from
+ web_sales
+ ,date_dim d1
+ ,item
+ where
+ d1.d_month_seq between 1212 and 1212+11
+ and d1.d_date_sk = ws_sold_date_sk
+ and i_item_sk = ws_item_sk
+ group by rollup(i_category,i_class)
+ order by
+ lochierarchy desc,
+ case when lochierarchy = 0 then i_category end,
+ rank_within_parent
+ limit 100
+POSTHOOK: type: QUERY
+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 <- Reducer 3 (SIMPLE_EDGE)
+Reducer 5 <- Reducer 4 (SIMPLE_EDGE)
+Reducer 6 <- Reducer 5 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:-1
+ Stage-1
+ Reducer 6
+ File Output Operator [FS_30]
+ Limit [LIM_28] (rows=100 width=135)
+ Number of rows:100
+ Select Operator [SEL_27] (rows=261364852 width=135)
+ Output:["_col0","_col1","_col2","_col3","_col4"]
+ <-Reducer 5 [SIMPLE_EDGE]
+ SHUFFLE [RS_26]
+ Select Operator [SEL_24] (rows=261364852 width=135)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
+ PTF Operator [PTF_23] (rows=261364852 width=135)
+ Function definitions:[{},{"name:":"windowingtablefunction","order by:":"_col4 DESC NULLS LAST","partition by:":"(grouping(_col5, 1) + grouping(_col5, 0)), CASE WHEN ((grouping(_col5, 0) = 0)) THEN (_col0) ELSE (null) END"}]
+ Select Operator [SEL_22] (rows=261364852 width=135)
+ Output:["_col0","_col1","_col4","_col5"]
+ <-Reducer 4 [SIMPLE_EDGE]
+ SHUFFLE [RS_21]
+ PartitionCols:(grouping(_col5, 1) + grouping(_col5, 0)), CASE WHEN ((grouping(_col5, 0) = 0)) THEN (_col0) ELSE (null) END
+ Select Operator [SEL_20] (rows=261364852 width=135)
+ Output:["_col0","_col1","_col4","_col5"]
+ Group By Operator [GBY_19] (rows=261364852 width=135)
+ Output:["_col0","_col1","_col2","_col3"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2
+ <-Reducer 3 [SIMPLE_EDGE]
+ SHUFFLE [RS_18]
+ PartitionCols:_col0, _col1, _col2
+ Group By Operator [GBY_17] (rows=522729705 width=135)
+ Output:["_col0","_col1","_col2","_col3"],aggregations:["sum(_col2)"],keys:_col0, _col1, 0
+ Select Operator [SEL_15] (rows=174243235 width=135)
+ Output:["_col0","_col1","_col2"]
+ Merge Join Operator [MERGEJOIN_40] (rows=174243235 width=135)
+ Conds:RS_12._col1=RS_13._col0(Inner),Output:["_col2","_col6","_col7"]
+ <-Map 8 [SIMPLE_EDGE]
+ SHUFFLE [RS_13]
+ PartitionCols:_col0
+ Select Operator [SEL_8] (rows=462000 width=1436)
+ Output:["_col0","_col1","_col2"]
+ Filter Operator [FIL_38] (rows=462000 width=1436)
+ predicate:i_item_sk is not null
+ TableScan [TS_6] (rows=462000 width=1436)
+ default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_class","i_category"]
+ <-Reducer 2 [SIMPLE_EDGE]
+ SHUFFLE [RS_12]
+ PartitionCols:_col1
+ Merge Join Operator [MERGEJOIN_39] (rows=158402938 width=135)
+ Conds:RS_9._col0=RS_10._col0(Inner),Output:["_col1","_col2"]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_9]
+ PartitionCols:_col0
+ Select Operator [SEL_2] (rows=144002668 width=135)
+ Output:["_col0","_col1","_col2"]
+ Filter Operator [FIL_36] (rows=144002668 width=135)
+ predicate:(ws_item_sk is not null and ws_sold_date_sk is not null)
+ TableScan [TS_0] (rows=144002668 width=135)
+ default@web_sales,web_sales,Tbl:COMPLETE,Col:NONE,Output:["ws_sold_date_sk","ws_item_sk","ws_net_paid"]
+ <-Map 7 [SIMPLE_EDGE]
+ SHUFFLE [RS_10]
+ PartitionCols:_col0
+ Select Operator [SEL_5] (rows=8116 width=1119)
+ Output:["_col0"]
+ Filter Operator [FIL_37] (rows=8116 width=1119)
+ predicate:(d_date_sk is not null and d_month_seq BETWEEN 1212 AND 1223)
+ TableScan [TS_3] (rows=73049 width=1119)
+ default@date_dim,d1,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_month_seq"]
+