You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by ha...@apache.org on 2017/01/10 20:53:27 UTC
[4/9] hive git commit: HIVE-15481 : Support multiple and nested
subqueries (Vineet Garg via Ashutosh Chauhan) Signed-off-by: Ashutosh Chauhan
http://git-wip-us.apache.org/repos/asf/hive/blob/b0ed8241/ql/src/test/results/clientpositive/perf/query60.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/query60.q.out b/ql/src/test/results/clientpositive/perf/query60.q.out
new file mode 100644
index 0000000..a7c8d03
--- /dev/null
+++ b/ql/src/test/results/clientpositive/perf/query60.q.out
@@ -0,0 +1,443 @@
+PREHOOK: query: -- start query 1 in stream 0 using template query60.tpl and seed 1930872976
+explain with ss as (
+ select
+ i_item_id,sum(ss_ext_sales_price) total_sales
+ from
+ store_sales,
+ date_dim,
+ customer_address,
+ item
+ where
+ i_item_id in (select
+ i_item_id
+from
+ item
+where i_category in ('Children'))
+ and ss_item_sk = i_item_sk
+ and ss_sold_date_sk = d_date_sk
+ and d_year = 1999
+ and d_moy = 9
+ and ss_addr_sk = ca_address_sk
+ and ca_gmt_offset = -6
+ group by i_item_id),
+ cs as (
+ select
+ i_item_id,sum(cs_ext_sales_price) total_sales
+ from
+ catalog_sales,
+ date_dim,
+ customer_address,
+ item
+ where
+ i_item_id in (select
+ i_item_id
+from
+ item
+where i_category in ('Children'))
+ and cs_item_sk = i_item_sk
+ and cs_sold_date_sk = d_date_sk
+ and d_year = 1999
+ and d_moy = 9
+ and cs_bill_addr_sk = ca_address_sk
+ and ca_gmt_offset = -6
+ group by i_item_id),
+ ws as (
+ select
+ i_item_id,sum(ws_ext_sales_price) total_sales
+ from
+ web_sales,
+ date_dim,
+ customer_address,
+ item
+ where
+ i_item_id in (select
+ i_item_id
+from
+ item
+where i_category in ('Children'))
+ and ws_item_sk = i_item_sk
+ and ws_sold_date_sk = d_date_sk
+ and d_year = 1999
+ and d_moy = 9
+ and ws_bill_addr_sk = ca_address_sk
+ and ca_gmt_offset = -6
+ group by i_item_id)
+ select
+ i_item_id
+,sum(total_sales) total_sales
+ from (select * from ss
+ union all
+ select * from cs
+ union all
+ select * from ws) tmp1
+ group by i_item_id
+ order by i_item_id
+ ,total_sales
+ limit 100
+PREHOOK: type: QUERY
+POSTHOOK: query: -- start query 1 in stream 0 using template query60.tpl and seed 1930872976
+explain with ss as (
+ select
+ i_item_id,sum(ss_ext_sales_price) total_sales
+ from
+ store_sales,
+ date_dim,
+ customer_address,
+ item
+ where
+ i_item_id in (select
+ i_item_id
+from
+ item
+where i_category in ('Children'))
+ and ss_item_sk = i_item_sk
+ and ss_sold_date_sk = d_date_sk
+ and d_year = 1999
+ and d_moy = 9
+ and ss_addr_sk = ca_address_sk
+ and ca_gmt_offset = -6
+ group by i_item_id),
+ cs as (
+ select
+ i_item_id,sum(cs_ext_sales_price) total_sales
+ from
+ catalog_sales,
+ date_dim,
+ customer_address,
+ item
+ where
+ i_item_id in (select
+ i_item_id
+from
+ item
+where i_category in ('Children'))
+ and cs_item_sk = i_item_sk
+ and cs_sold_date_sk = d_date_sk
+ and d_year = 1999
+ and d_moy = 9
+ and cs_bill_addr_sk = ca_address_sk
+ and ca_gmt_offset = -6
+ group by i_item_id),
+ ws as (
+ select
+ i_item_id,sum(ws_ext_sales_price) total_sales
+ from
+ web_sales,
+ date_dim,
+ customer_address,
+ item
+ where
+ i_item_id in (select
+ i_item_id
+from
+ item
+where i_category in ('Children'))
+ and ws_item_sk = i_item_sk
+ and ws_sold_date_sk = d_date_sk
+ and d_year = 1999
+ and d_moy = 9
+ and ws_bill_addr_sk = ca_address_sk
+ and ca_gmt_offset = -6
+ group by i_item_id)
+ select
+ i_item_id
+,sum(total_sales) total_sales
+ from (select * from ss
+ union all
+ select * from cs
+ union all
+ select * from ws) tmp1
+ group by i_item_id
+ order by i_item_id
+ ,total_sales
+ limit 100
+POSTHOOK: type: QUERY
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 11 <- Map 10 (SIMPLE_EDGE), Map 13 (SIMPLE_EDGE)
+Reducer 12 <- Map 14 (SIMPLE_EDGE), Reducer 11 (SIMPLE_EDGE)
+Reducer 16 <- Map 15 (SIMPLE_EDGE), Reducer 20 (SIMPLE_EDGE)
+Reducer 17 <- Reducer 16 (SIMPLE_EDGE), Reducer 23 (SIMPLE_EDGE)
+Reducer 18 <- Reducer 17 (SIMPLE_EDGE), Union 5 (CONTAINS)
+Reducer 2 <- Map 1 (SIMPLE_EDGE), Reducer 9 (SIMPLE_EDGE)
+Reducer 20 <- Map 19 (SIMPLE_EDGE)
+Reducer 22 <- Map 21 (SIMPLE_EDGE), Map 24 (SIMPLE_EDGE)
+Reducer 23 <- Map 25 (SIMPLE_EDGE), Reducer 22 (SIMPLE_EDGE)
+Reducer 27 <- Map 26 (SIMPLE_EDGE), Reducer 31 (SIMPLE_EDGE)
+Reducer 28 <- Reducer 27 (SIMPLE_EDGE), Reducer 34 (SIMPLE_EDGE)
+Reducer 29 <- Reducer 28 (SIMPLE_EDGE), Union 5 (CONTAINS)
+Reducer 3 <- Reducer 12 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE)
+Reducer 31 <- Map 30 (SIMPLE_EDGE)
+Reducer 33 <- Map 32 (SIMPLE_EDGE), Map 35 (SIMPLE_EDGE)
+Reducer 34 <- Map 36 (SIMPLE_EDGE), Reducer 33 (SIMPLE_EDGE)
+Reducer 4 <- Reducer 3 (SIMPLE_EDGE), Union 5 (CONTAINS)
+Reducer 6 <- Union 5 (SIMPLE_EDGE)
+Reducer 7 <- Reducer 6 (SIMPLE_EDGE)
+Reducer 9 <- Map 8 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:100
+ Stage-1
+ Reducer 7
+ File Output Operator [FS_122]
+ Limit [LIM_121] (rows=100 width=108)
+ Number of rows:100
+ Select Operator [SEL_120] (rows=335408073 width=108)
+ Output:["_col0","_col1"]
+ <-Reducer 6 [SIMPLE_EDGE]
+ SHUFFLE [RS_119]
+ Group By Operator [GBY_117] (rows=335408073 width=108)
+ Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0
+ <-Union 5 [SIMPLE_EDGE]
+ <-Reducer 18 [CONTAINS]
+ Reduce Output Operator [RS_116]
+ PartitionCols:_col0
+ Group By Operator [GBY_115] (rows=670816147 width=108)
+ Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0
+ Group By Operator [GBY_72] (rows=191657247 width=135)
+ Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0
+ <-Reducer 17 [SIMPLE_EDGE]
+ SHUFFLE [RS_71]
+ PartitionCols:_col0
+ Group By Operator [GBY_70] (rows=383314495 width=135)
+ Output:["_col0","_col1"],aggregations:["sum(_col8)"],keys:_col1
+ Merge Join Operator [MERGEJOIN_184] (rows=383314495 width=135)
+ Conds:RS_66._col0=RS_67._col4(Inner),Output:["_col1","_col8"]
+ <-Reducer 16 [SIMPLE_EDGE]
+ SHUFFLE [RS_66]
+ PartitionCols:_col0
+ Merge Join Operator [MERGEJOIN_177] (rows=508200 width=1436)
+ Conds:RS_63._col1=RS_64._col0(Inner),Output:["_col0","_col1"]
+ <-Map 15 [SIMPLE_EDGE]
+ SHUFFLE [RS_63]
+ PartitionCols:_col1
+ Select Operator [SEL_39] (rows=462000 width=1436)
+ Output:["_col0","_col1"]
+ Filter Operator [FIL_164] (rows=462000 width=1436)
+ predicate:i_item_sk is not null
+ TableScan [TS_37] (rows=462000 width=1436)
+ default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_item_id"]
+ <-Reducer 20 [SIMPLE_EDGE]
+ SHUFFLE [RS_64]
+ PartitionCols:_col0
+ Group By Operator [GBY_45] (rows=115500 width=1436)
+ Output:["_col0"],keys:KEY._col0
+ <-Map 19 [SIMPLE_EDGE]
+ SHUFFLE [RS_44]
+ PartitionCols:_col0
+ Group By Operator [GBY_43] (rows=231000 width=1436)
+ Output:["_col0"],keys:i_item_id
+ Select Operator [SEL_42] (rows=231000 width=1436)
+ Output:["i_item_id"]
+ Filter Operator [FIL_165] (rows=231000 width=1436)
+ predicate:(i_category) IN ('Children')
+ TableScan [TS_40] (rows=462000 width=1436)
+ default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_id","i_category"]
+ <-Reducer 23 [SIMPLE_EDGE]
+ SHUFFLE [RS_67]
+ PartitionCols:_col4
+ Select Operator [SEL_62] (rows=348467716 width=135)
+ Output:["_col4","_col5"]
+ Merge Join Operator [MERGEJOIN_179] (rows=348467716 width=135)
+ Conds:RS_59._col1=RS_60._col0(Inner),Output:["_col2","_col3"]
+ <-Map 25 [SIMPLE_EDGE]
+ SHUFFLE [RS_60]
+ PartitionCols:_col0
+ Select Operator [SEL_55] (rows=20000000 width=1014)
+ Output:["_col0"]
+ Filter Operator [FIL_168] (rows=20000000 width=1014)
+ predicate:((ca_gmt_offset = -6) and ca_address_sk is not null)
+ TableScan [TS_53] (rows=40000000 width=1014)
+ default@customer_address,customer_address,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_gmt_offset"]
+ <-Reducer 22 [SIMPLE_EDGE]
+ SHUFFLE [RS_59]
+ PartitionCols:_col1
+ Merge Join Operator [MERGEJOIN_178] (rows=316788826 width=135)
+ Conds:RS_56._col0=RS_57._col0(Inner),Output:["_col1","_col2","_col3"]
+ <-Map 21 [SIMPLE_EDGE]
+ SHUFFLE [RS_56]
+ PartitionCols:_col0
+ Select Operator [SEL_49] (rows=287989836 width=135)
+ Output:["_col0","_col1","_col2","_col3"]
+ Filter Operator [FIL_166] (rows=287989836 width=135)
+ predicate:(cs_sold_date_sk is not null and cs_bill_addr_sk is not null and cs_item_sk is not null)
+ TableScan [TS_47] (rows=287989836 width=135)
+ default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:NONE,Output:["cs_sold_date_sk","cs_bill_addr_sk","cs_item_sk","cs_ext_sales_price"]
+ <-Map 24 [SIMPLE_EDGE]
+ SHUFFLE [RS_57]
+ PartitionCols:_col0
+ Select Operator [SEL_52] (rows=18262 width=1119)
+ Output:["_col0"]
+ Filter Operator [FIL_167] (rows=18262 width=1119)
+ predicate:((d_year = 1999) and (d_moy = 9) and d_date_sk is not null)
+ TableScan [TS_50] (rows=73049 width=1119)
+ default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_moy"]
+ <-Reducer 29 [CONTAINS]
+ Reduce Output Operator [RS_116]
+ PartitionCols:_col0
+ Group By Operator [GBY_115] (rows=670816147 width=108)
+ Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0
+ Group By Operator [GBY_111] (rows=95833781 width=135)
+ Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0
+ <-Reducer 28 [SIMPLE_EDGE]
+ SHUFFLE [RS_110]
+ PartitionCols:_col0
+ Group By Operator [GBY_109] (rows=191667562 width=135)
+ Output:["_col0","_col1"],aggregations:["sum(_col8)"],keys:_col1
+ Merge Join Operator [MERGEJOIN_185] (rows=191667562 width=135)
+ Conds:RS_105._col0=RS_106._col3(Inner),Output:["_col1","_col8"]
+ <-Reducer 27 [SIMPLE_EDGE]
+ SHUFFLE [RS_105]
+ PartitionCols:_col0
+ Merge Join Operator [MERGEJOIN_180] (rows=508200 width=1436)
+ Conds:RS_102._col1=RS_103._col0(Inner),Output:["_col0","_col1"]
+ <-Map 26 [SIMPLE_EDGE]
+ SHUFFLE [RS_102]
+ PartitionCols:_col1
+ Select Operator [SEL_78] (rows=462000 width=1436)
+ Output:["_col0","_col1"]
+ Filter Operator [FIL_169] (rows=462000 width=1436)
+ predicate:i_item_sk is not null
+ TableScan [TS_76] (rows=462000 width=1436)
+ default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_item_id"]
+ <-Reducer 31 [SIMPLE_EDGE]
+ SHUFFLE [RS_103]
+ PartitionCols:_col0
+ Group By Operator [GBY_84] (rows=115500 width=1436)
+ Output:["_col0"],keys:KEY._col0
+ <-Map 30 [SIMPLE_EDGE]
+ SHUFFLE [RS_83]
+ PartitionCols:_col0
+ Group By Operator [GBY_82] (rows=231000 width=1436)
+ Output:["_col0"],keys:i_item_id
+ Select Operator [SEL_81] (rows=231000 width=1436)
+ Output:["i_item_id"]
+ Filter Operator [FIL_170] (rows=231000 width=1436)
+ predicate:(i_category) IN ('Children')
+ TableScan [TS_79] (rows=462000 width=1436)
+ default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_id","i_category"]
+ <-Reducer 34 [SIMPLE_EDGE]
+ SHUFFLE [RS_106]
+ PartitionCols:_col3
+ Select Operator [SEL_101] (rows=174243235 width=135)
+ Output:["_col3","_col5"]
+ Merge Join Operator [MERGEJOIN_182] (rows=174243235 width=135)
+ Conds:RS_98._col2=RS_99._col0(Inner),Output:["_col1","_col3"]
+ <-Map 36 [SIMPLE_EDGE]
+ SHUFFLE [RS_99]
+ PartitionCols:_col0
+ Select Operator [SEL_94] (rows=20000000 width=1014)
+ Output:["_col0"]
+ Filter Operator [FIL_173] (rows=20000000 width=1014)
+ predicate:((ca_gmt_offset = -6) and ca_address_sk is not null)
+ TableScan [TS_92] (rows=40000000 width=1014)
+ default@customer_address,customer_address,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_gmt_offset"]
+ <-Reducer 33 [SIMPLE_EDGE]
+ SHUFFLE [RS_98]
+ PartitionCols:_col2
+ Merge Join Operator [MERGEJOIN_181] (rows=158402938 width=135)
+ Conds:RS_95._col0=RS_96._col0(Inner),Output:["_col1","_col2","_col3"]
+ <-Map 32 [SIMPLE_EDGE]
+ SHUFFLE [RS_95]
+ PartitionCols:_col0
+ Select Operator [SEL_88] (rows=144002668 width=135)
+ Output:["_col0","_col1","_col2","_col3"]
+ Filter Operator [FIL_171] (rows=144002668 width=135)
+ predicate:(ws_sold_date_sk is not null and ws_bill_addr_sk is not null and ws_item_sk is not null)
+ TableScan [TS_86] (rows=144002668 width=135)
+ default@web_sales,web_sales,Tbl:COMPLETE,Col:NONE,Output:["ws_sold_date_sk","ws_item_sk","ws_bill_addr_sk","ws_ext_sales_price"]
+ <-Map 35 [SIMPLE_EDGE]
+ SHUFFLE [RS_96]
+ PartitionCols:_col0
+ Select Operator [SEL_91] (rows=18262 width=1119)
+ Output:["_col0"]
+ Filter Operator [FIL_172] (rows=18262 width=1119)
+ predicate:((d_year = 1999) and (d_moy = 9) and d_date_sk is not null)
+ TableScan [TS_89] (rows=73049 width=1119)
+ default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_moy"]
+ <-Reducer 4 [CONTAINS]
+ Reduce Output Operator [RS_116]
+ PartitionCols:_col0
+ Group By Operator [GBY_115] (rows=670816147 width=108)
+ Output:["_col0","_col1"],aggregations:["sum(_col1)"],keys:_col0
+ Group By Operator [GBY_35] (rows=383325119 width=88)
+ Output:["_col0","_col1"],aggregations:["sum(VALUE._col0)"],keys:KEY._col0
+ <-Reducer 3 [SIMPLE_EDGE]
+ SHUFFLE [RS_34]
+ PartitionCols:_col0
+ Group By Operator [GBY_33] (rows=766650239 width=88)
+ Output:["_col0","_col1"],aggregations:["sum(_col8)"],keys:_col1
+ Merge Join Operator [MERGEJOIN_183] (rows=766650239 width=88)
+ Conds:RS_29._col0=RS_30._col3(Inner),Output:["_col1","_col8"]
+ <-Reducer 12 [SIMPLE_EDGE]
+ SHUFFLE [RS_30]
+ PartitionCols:_col3
+ Select Operator [SEL_25] (rows=696954748 width=88)
+ Output:["_col3","_col5"]
+ Merge Join Operator [MERGEJOIN_176] (rows=696954748 width=88)
+ Conds:RS_22._col2=RS_23._col0(Inner),Output:["_col1","_col3"]
+ <-Map 14 [SIMPLE_EDGE]
+ SHUFFLE [RS_23]
+ PartitionCols:_col0
+ Select Operator [SEL_18] (rows=20000000 width=1014)
+ Output:["_col0"]
+ Filter Operator [FIL_163] (rows=20000000 width=1014)
+ predicate:((ca_gmt_offset = -6) and ca_address_sk is not null)
+ TableScan [TS_16] (rows=40000000 width=1014)
+ default@customer_address,customer_address,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_gmt_offset"]
+ <-Reducer 11 [SIMPLE_EDGE]
+ SHUFFLE [RS_22]
+ PartitionCols:_col2
+ Merge Join Operator [MERGEJOIN_175] (rows=633595212 width=88)
+ Conds:RS_19._col0=RS_20._col0(Inner),Output:["_col1","_col2","_col3"]
+ <-Map 10 [SIMPLE_EDGE]
+ SHUFFLE [RS_19]
+ PartitionCols:_col0
+ Select Operator [SEL_12] (rows=575995635 width=88)
+ Output:["_col0","_col1","_col2","_col3"]
+ Filter Operator [FIL_161] (rows=575995635 width=88)
+ predicate:(ss_sold_date_sk is not null and ss_addr_sk is not null and ss_item_sk is not null)
+ TableScan [TS_10] (rows=575995635 width=88)
+ default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_item_sk","ss_addr_sk","ss_ext_sales_price"]
+ <-Map 13 [SIMPLE_EDGE]
+ SHUFFLE [RS_20]
+ PartitionCols:_col0
+ Select Operator [SEL_15] (rows=18262 width=1119)
+ Output:["_col0"]
+ Filter Operator [FIL_162] (rows=18262 width=1119)
+ predicate:((d_year = 1999) and (d_moy = 9) and d_date_sk is not null)
+ TableScan [TS_13] (rows=73049 width=1119)
+ default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_moy"]
+ <-Reducer 2 [SIMPLE_EDGE]
+ SHUFFLE [RS_29]
+ PartitionCols:_col0
+ Merge Join Operator [MERGEJOIN_174] (rows=508200 width=1436)
+ Conds:RS_26._col1=RS_27._col0(Inner),Output:["_col0","_col1"]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_26]
+ PartitionCols:_col1
+ Select Operator [SEL_2] (rows=462000 width=1436)
+ Output:["_col0","_col1"]
+ Filter Operator [FIL_159] (rows=462000 width=1436)
+ predicate:i_item_sk is not null
+ TableScan [TS_0] (rows=462000 width=1436)
+ default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_sk","i_item_id"]
+ <-Reducer 9 [SIMPLE_EDGE]
+ SHUFFLE [RS_27]
+ PartitionCols:_col0
+ Group By Operator [GBY_8] (rows=115500 width=1436)
+ Output:["_col0"],keys:KEY._col0
+ <-Map 8 [SIMPLE_EDGE]
+ SHUFFLE [RS_7]
+ PartitionCols:_col0
+ Group By Operator [GBY_6] (rows=231000 width=1436)
+ Output:["_col0"],keys:i_item_id
+ Select Operator [SEL_5] (rows=231000 width=1436)
+ Output:["i_item_id"]
+ Filter Operator [FIL_160] (rows=231000 width=1436)
+ predicate:(i_category) IN ('Children')
+ TableScan [TS_3] (rows=462000 width=1436)
+ default@item,item,Tbl:COMPLETE,Col:NONE,Output:["i_item_id","i_category"]
+
http://git-wip-us.apache.org/repos/asf/hive/blob/b0ed8241/ql/src/test/results/clientpositive/perf/query69.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/query69.q.out b/ql/src/test/results/clientpositive/perf/query69.q.out
new file mode 100644
index 0000000..89c3b43
--- /dev/null
+++ b/ql/src/test/results/clientpositive/perf/query69.q.out
@@ -0,0 +1,591 @@
+Warning: Shuffle Join MERGEJOIN[351][tables = [$hdt$_5, $hdt$_6, $hdt$_4, $hdt$_3]] in Stage 'Reducer 13' is a cross product
+Warning: Shuffle Join MERGEJOIN[353][tables = [$hdt$_6, $hdt$_7, $hdt$_5, $hdt$_4]] in Stage 'Reducer 31' is a cross product
+Warning: Shuffle Join MERGEJOIN[356][tables = [$hdt$_3, $hdt$_4, $hdt$_2, $hdt$_1]] in Stage 'Reducer 49' is a cross product
+PREHOOK: query: explain select
+ cd_gender,
+ cd_marital_status,
+ cd_education_status,
+ count(*) cnt1,
+ cd_purchase_estimate,
+ count(*) cnt2,
+ cd_credit_rating,
+ count(*) cnt3
+ from
+ customer c,customer_address ca,customer_demographics
+ where
+ c.c_current_addr_sk = ca.ca_address_sk and
+ ca_state in ('CO','IL','MN') and
+ cd_demo_sk = c.c_current_cdemo_sk and
+ exists (select *
+ from store_sales,date_dim
+ where c.c_customer_sk = ss_customer_sk and
+ ss_sold_date_sk = d_date_sk and
+ d_year = 1999 and
+ d_moy between 1 and 1+2) and
+ (not exists (select *
+ from web_sales,date_dim
+ where c.c_customer_sk = ws_bill_customer_sk and
+ ws_sold_date_sk = d_date_sk and
+ d_year = 1999 and
+ d_moy between 1 and 1+2) and
+ not exists (select *
+ from catalog_sales,date_dim
+ where c.c_customer_sk = cs_ship_customer_sk and
+ cs_sold_date_sk = d_date_sk and
+ d_year = 1999 and
+ d_moy between 1 and 1+2))
+ group by cd_gender,
+ cd_marital_status,
+ cd_education_status,
+ cd_purchase_estimate,
+ cd_credit_rating
+ order by cd_gender,
+ cd_marital_status,
+ cd_education_status,
+ cd_purchase_estimate,
+ cd_credit_rating
+ limit 100
+PREHOOK: type: QUERY
+POSTHOOK: query: explain select
+ cd_gender,
+ cd_marital_status,
+ cd_education_status,
+ count(*) cnt1,
+ cd_purchase_estimate,
+ count(*) cnt2,
+ cd_credit_rating,
+ count(*) cnt3
+ from
+ customer c,customer_address ca,customer_demographics
+ where
+ c.c_current_addr_sk = ca.ca_address_sk and
+ ca_state in ('CO','IL','MN') and
+ cd_demo_sk = c.c_current_cdemo_sk and
+ exists (select *
+ from store_sales,date_dim
+ where c.c_customer_sk = ss_customer_sk and
+ ss_sold_date_sk = d_date_sk and
+ d_year = 1999 and
+ d_moy between 1 and 1+2) and
+ (not exists (select *
+ from web_sales,date_dim
+ where c.c_customer_sk = ws_bill_customer_sk and
+ ws_sold_date_sk = d_date_sk and
+ d_year = 1999 and
+ d_moy between 1 and 1+2) and
+ not exists (select *
+ from catalog_sales,date_dim
+ where c.c_customer_sk = cs_ship_customer_sk and
+ cs_sold_date_sk = d_date_sk and
+ d_year = 1999 and
+ d_moy between 1 and 1+2))
+ group by cd_gender,
+ cd_marital_status,
+ cd_education_status,
+ cd_purchase_estimate,
+ cd_credit_rating
+ order by cd_gender,
+ cd_marital_status,
+ cd_education_status,
+ cd_purchase_estimate,
+ cd_credit_rating
+ limit 100
+POSTHOOK: type: QUERY
+Plan optimized by CBO.
+
+Vertex dependency in root stage
+Reducer 11 <- Map 10 (SIMPLE_EDGE), Map 15 (SIMPLE_EDGE)
+Reducer 12 <- Reducer 11 (SIMPLE_EDGE), Reducer 19 (SIMPLE_EDGE)
+Reducer 13 <- Reducer 12 (SIMPLE_EDGE), Reducer 25 (SIMPLE_EDGE)
+Reducer 14 <- Reducer 13 (SIMPLE_EDGE)
+Reducer 17 <- Map 16 (SIMPLE_EDGE), Map 20 (SIMPLE_EDGE)
+Reducer 18 <- Map 21 (SIMPLE_EDGE), Reducer 17 (SIMPLE_EDGE)
+Reducer 19 <- Reducer 18 (SIMPLE_EDGE)
+Reducer 2 <- Map 1 (SIMPLE_EDGE), Map 8 (SIMPLE_EDGE)
+Reducer 23 <- Map 22 (SIMPLE_EDGE), Map 26 (SIMPLE_EDGE)
+Reducer 24 <- Map 27 (SIMPLE_EDGE), Reducer 23 (SIMPLE_EDGE)
+Reducer 25 <- Reducer 24 (SIMPLE_EDGE)
+Reducer 29 <- Map 28 (SIMPLE_EDGE), Map 33 (SIMPLE_EDGE)
+Reducer 3 <- Map 9 (SIMPLE_EDGE), Reducer 2 (SIMPLE_EDGE)
+Reducer 30 <- Reducer 29 (SIMPLE_EDGE), Reducer 37 (SIMPLE_EDGE)
+Reducer 31 <- Reducer 30 (SIMPLE_EDGE), Reducer 43 (SIMPLE_EDGE)
+Reducer 32 <- Reducer 31 (SIMPLE_EDGE)
+Reducer 35 <- Map 34 (SIMPLE_EDGE), Map 38 (SIMPLE_EDGE)
+Reducer 36 <- Map 39 (SIMPLE_EDGE), Reducer 35 (SIMPLE_EDGE)
+Reducer 37 <- Reducer 36 (SIMPLE_EDGE)
+Reducer 4 <- Reducer 14 (SIMPLE_EDGE), Reducer 3 (SIMPLE_EDGE), Reducer 32 (SIMPLE_EDGE)
+Reducer 41 <- Map 40 (SIMPLE_EDGE), Map 44 (SIMPLE_EDGE)
+Reducer 42 <- Map 45 (SIMPLE_EDGE), Reducer 41 (SIMPLE_EDGE)
+Reducer 43 <- Reducer 42 (SIMPLE_EDGE)
+Reducer 47 <- Map 46 (SIMPLE_EDGE), Map 51 (SIMPLE_EDGE)
+Reducer 48 <- Reducer 47 (SIMPLE_EDGE), Reducer 55 (SIMPLE_EDGE)
+Reducer 49 <- Reducer 48 (SIMPLE_EDGE), Reducer 61 (SIMPLE_EDGE)
+Reducer 5 <- Reducer 4 (SIMPLE_EDGE), Reducer 50 (SIMPLE_EDGE)
+Reducer 50 <- Reducer 49 (SIMPLE_EDGE)
+Reducer 53 <- Map 52 (SIMPLE_EDGE), Map 56 (SIMPLE_EDGE)
+Reducer 54 <- Map 57 (SIMPLE_EDGE), Reducer 53 (SIMPLE_EDGE)
+Reducer 55 <- Reducer 54 (SIMPLE_EDGE)
+Reducer 59 <- Map 58 (SIMPLE_EDGE), Map 62 (SIMPLE_EDGE)
+Reducer 6 <- Reducer 5 (SIMPLE_EDGE)
+Reducer 60 <- Map 63 (SIMPLE_EDGE), Reducer 59 (SIMPLE_EDGE)
+Reducer 61 <- Reducer 60 (SIMPLE_EDGE)
+Reducer 7 <- Reducer 6 (SIMPLE_EDGE)
+
+Stage-0
+ Fetch Operator
+ limit:100
+ Stage-1
+ Reducer 7
+ File Output Operator [FS_214]
+ Limit [LIM_213] (rows=100 width=248)
+ Number of rows:100
+ Select Operator [SEL_212] (rows=5102057559316637 width=248)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5","_col6","_col7"]
+ <-Reducer 6 [SIMPLE_EDGE]
+ SHUFFLE [RS_211]
+ Select Operator [SEL_210] (rows=5102057559316637 width=248)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col6"]
+ Group By Operator [GBY_209] (rows=5102057559316637 width=248)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["count(VALUE._col0)"],keys:KEY._col0, KEY._col1, KEY._col2, KEY._col3, KEY._col4
+ <-Reducer 5 [SIMPLE_EDGE]
+ SHUFFLE [RS_208]
+ PartitionCols:_col0, _col1, _col2, _col3, _col4
+ Group By Operator [GBY_207] (rows=10204115118633274 width=248)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5"],aggregations:["count()"],keys:_col6, _col7, _col8, _col9, _col10
+ Select Operator [SEL_206] (rows=10204115118633274 width=248)
+ Output:["_col6","_col7","_col8","_col9","_col10"]
+ Filter Operator [FIL_205] (rows=10204115118633274 width=248)
+ predicate:_col15 is null
+ Merge Join Operator [MERGEJOIN_357] (rows=20408230237266548 width=248)
+ Conds:RS_202._col0=RS_203._col0(Left Outer),Output:["_col6","_col7","_col8","_col9","_col10","_col15"]
+ <-Reducer 4 [SIMPLE_EDGE]
+ SHUFFLE [RS_202]
+ PartitionCols:_col0
+ Select Operator [SEL_141] (rows=18552936177209164 width=248)
+ Output:["_col0","_col10","_col6","_col7","_col8","_col9"]
+ Filter Operator [FIL_140] (rows=18552936177209164 width=248)
+ predicate:_col13 is null
+ Select Operator [SEL_139] (rows=37105872354418328 width=248)
+ Output:["_col0","_col6","_col7","_col8","_col9","_col10","_col13"]
+ Merge Join Operator [MERGEJOIN_354] (rows=37105872354418328 width=248)
+ Conds:RS_135._col0=RS_136._col0(Left Outer),RS_135._col0=RS_137._col0(Inner),Output:["_col0","_col6","_col7","_col8","_col9","_col10","_col12"]
+ <-Reducer 14 [SIMPLE_EDGE]
+ SHUFFLE [RS_136]
+ PartitionCols:_col0
+ Select Operator [SEL_68] (rows=4216686374121617 width=996)
+ Output:["_col0","_col1"]
+ Group By Operator [GBY_67] (rows=4216686374121617 width=996)
+ Output:["_col0"],keys:KEY._col0
+ <-Reducer 13 [SIMPLE_EDGE]
+ SHUFFLE [RS_66]
+ PartitionCols:_col0
+ Group By Operator [GBY_65] (rows=8433372748243235 width=996)
+ Output:["_col0"],keys:_col6
+ Merge Join Operator [MERGEJOIN_351] (rows=8433372748243235 width=996)
+ Conds:(Inner),Output:["_col6"]
+ <-Reducer 12 [SIMPLE_EDGE]
+ SHUFFLE [RS_61]
+ Merge Join Operator [MERGEJOIN_350] (rows=174243235 width=135)
+ Conds:RS_58._col1=RS_59._col0(Inner)
+ <-Reducer 11 [SIMPLE_EDGE]
+ SHUFFLE [RS_58]
+ PartitionCols:_col1
+ Merge Join Operator [MERGEJOIN_335] (rows=158402938 width=135)
+ Conds:RS_55._col0=RS_56._col0(Inner),Output:["_col1"]
+ <-Map 10 [SIMPLE_EDGE]
+ SHUFFLE [RS_55]
+ PartitionCols:_col0
+ Select Operator [SEL_11] (rows=144002668 width=135)
+ Output:["_col0","_col1"]
+ Filter Operator [FIL_309] (rows=144002668 width=135)
+ predicate:ws_sold_date_sk is not null
+ TableScan [TS_9] (rows=144002668 width=135)
+ default@web_sales,web_sales,Tbl:COMPLETE,Col:NONE,Output:["ws_sold_date_sk","ws_bill_customer_sk"]
+ <-Map 15 [SIMPLE_EDGE]
+ SHUFFLE [RS_56]
+ PartitionCols:_col0
+ Select Operator [SEL_14] (rows=4058 width=1119)
+ Output:["_col0"]
+ Filter Operator [FIL_310] (rows=4058 width=1119)
+ predicate:((d_year = 1999) and d_moy BETWEEN 1 AND 3 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","d_moy"]
+ <-Reducer 19 [SIMPLE_EDGE]
+ SHUFFLE [RS_59]
+ PartitionCols:_col0
+ Group By Operator [GBY_33] (rows=48400001 width=860)
+ Output:["_col0"],keys:KEY._col0
+ <-Reducer 18 [SIMPLE_EDGE]
+ SHUFFLE [RS_32]
+ PartitionCols:_col0
+ Group By Operator [GBY_31] (rows=96800003 width=860)
+ Output:["_col0"],keys:_col0
+ Merge Join Operator [MERGEJOIN_337] (rows=96800003 width=860)
+ Conds:RS_27._col1=RS_28._col0(Inner),Output:["_col0"]
+ <-Map 21 [SIMPLE_EDGE]
+ SHUFFLE [RS_28]
+ PartitionCols:_col0
+ Select Operator [SEL_23] (rows=1861800 width=385)
+ Output:["_col0"]
+ Filter Operator [FIL_313] (rows=1861800 width=385)
+ predicate:cd_demo_sk is not null
+ TableScan [TS_21] (rows=1861800 width=385)
+ default@customer_demographics,customer_demographics,Tbl:COMPLETE,Col:NONE,Output:["cd_demo_sk"]
+ <-Reducer 17 [SIMPLE_EDGE]
+ SHUFFLE [RS_27]
+ PartitionCols:_col1
+ Merge Join Operator [MERGEJOIN_336] (rows=88000001 width=860)
+ Conds:RS_24._col2=RS_25._col0(Inner),Output:["_col0","_col1"]
+ <-Map 16 [SIMPLE_EDGE]
+ SHUFFLE [RS_24]
+ PartitionCols:_col2
+ Select Operator [SEL_17] (rows=80000000 width=860)
+ Output:["_col0","_col1","_col2"]
+ Filter Operator [FIL_311] (rows=80000000 width=860)
+ predicate:(c_current_addr_sk is not null and c_current_cdemo_sk is not null)
+ TableScan [TS_15] (rows=80000000 width=860)
+ default@customer,c,Tbl:COMPLETE,Col:NONE,Output:["c_customer_sk","c_current_cdemo_sk","c_current_addr_sk"]
+ <-Map 20 [SIMPLE_EDGE]
+ SHUFFLE [RS_25]
+ PartitionCols:_col0
+ Select Operator [SEL_20] (rows=20000000 width=1014)
+ Output:["_col0"]
+ Filter Operator [FIL_312] (rows=20000000 width=1014)
+ predicate:((ca_state) IN ('CO', 'IL', 'MN') and ca_address_sk is not null)
+ TableScan [TS_18] (rows=40000000 width=1014)
+ default@customer_address,ca,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_state"]
+ <-Reducer 25 [SIMPLE_EDGE]
+ SHUFFLE [RS_62]
+ Group By Operator [GBY_53] (rows=48400001 width=860)
+ Output:["_col0"],keys:KEY._col0
+ <-Reducer 24 [SIMPLE_EDGE]
+ SHUFFLE [RS_52]
+ PartitionCols:_col0
+ Group By Operator [GBY_51] (rows=96800003 width=860)
+ Output:["_col0"],keys:_col0
+ Merge Join Operator [MERGEJOIN_339] (rows=96800003 width=860)
+ Conds:RS_47._col1=RS_48._col0(Inner),Output:["_col0"]
+ <-Map 27 [SIMPLE_EDGE]
+ SHUFFLE [RS_48]
+ PartitionCols:_col0
+ Select Operator [SEL_43] (rows=1861800 width=385)
+ Output:["_col0"]
+ Filter Operator [FIL_316] (rows=1861800 width=385)
+ predicate:cd_demo_sk is not null
+ TableScan [TS_41] (rows=1861800 width=385)
+ default@customer_demographics,customer_demographics,Tbl:COMPLETE,Col:NONE,Output:["cd_demo_sk"]
+ <-Reducer 23 [SIMPLE_EDGE]
+ SHUFFLE [RS_47]
+ PartitionCols:_col1
+ Merge Join Operator [MERGEJOIN_338] (rows=88000001 width=860)
+ Conds:RS_44._col2=RS_45._col0(Inner),Output:["_col0","_col1"]
+ <-Map 22 [SIMPLE_EDGE]
+ SHUFFLE [RS_44]
+ PartitionCols:_col2
+ Select Operator [SEL_37] (rows=80000000 width=860)
+ Output:["_col0","_col1","_col2"]
+ Filter Operator [FIL_314] (rows=80000000 width=860)
+ predicate:(c_current_addr_sk is not null and c_current_cdemo_sk is not null)
+ TableScan [TS_35] (rows=80000000 width=860)
+ default@customer,c,Tbl:COMPLETE,Col:NONE,Output:["c_customer_sk","c_current_cdemo_sk","c_current_addr_sk"]
+ <-Map 26 [SIMPLE_EDGE]
+ SHUFFLE [RS_45]
+ PartitionCols:_col0
+ Select Operator [SEL_40] (rows=20000000 width=1014)
+ Output:["_col0"]
+ Filter Operator [FIL_315] (rows=20000000 width=1014)
+ predicate:((ca_state) IN ('CO', 'IL', 'MN') and ca_address_sk is not null)
+ TableScan [TS_38] (rows=40000000 width=1014)
+ default@customer_address,ca,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_state"]
+ <-Reducer 3 [SIMPLE_EDGE]
+ SHUFFLE [RS_135]
+ PartitionCols:_col0
+ Merge Join Operator [MERGEJOIN_334] (rows=96800003 width=860)
+ Conds:RS_132._col1=RS_133._col0(Inner),Output:["_col0","_col6","_col7","_col8","_col9","_col10"]
+ <-Map 9 [SIMPLE_EDGE]
+ SHUFFLE [RS_133]
+ PartitionCols:_col0
+ Select Operator [SEL_8] (rows=1861800 width=385)
+ Output:["_col0","_col1","_col2","_col3","_col4","_col5"]
+ Filter Operator [FIL_308] (rows=1861800 width=385)
+ predicate:cd_demo_sk is not null
+ TableScan [TS_6] (rows=1861800 width=385)
+ default@customer_demographics,customer_demographics,Tbl:COMPLETE,Col:NONE,Output:["cd_demo_sk","cd_gender","cd_marital_status","cd_education_status","cd_purchase_estimate","cd_credit_rating"]
+ <-Reducer 2 [SIMPLE_EDGE]
+ SHUFFLE [RS_132]
+ PartitionCols:_col1
+ Merge Join Operator [MERGEJOIN_333] (rows=88000001 width=860)
+ Conds:RS_129._col2=RS_130._col0(Inner),Output:["_col0","_col1"]
+ <-Map 1 [SIMPLE_EDGE]
+ SHUFFLE [RS_129]
+ PartitionCols:_col2
+ Select Operator [SEL_2] (rows=80000000 width=860)
+ Output:["_col0","_col1","_col2"]
+ Filter Operator [FIL_306] (rows=80000000 width=860)
+ predicate:(c_current_addr_sk is not null and c_current_cdemo_sk is not null)
+ TableScan [TS_0] (rows=80000000 width=860)
+ default@customer,c,Tbl:COMPLETE,Col:NONE,Output:["c_customer_sk","c_current_cdemo_sk","c_current_addr_sk"]
+ <-Map 8 [SIMPLE_EDGE]
+ SHUFFLE [RS_130]
+ PartitionCols:_col0
+ Select Operator [SEL_5] (rows=20000000 width=1014)
+ Output:["_col0"]
+ Filter Operator [FIL_307] (rows=20000000 width=1014)
+ predicate:((ca_state) IN ('CO', 'IL', 'MN') and ca_address_sk is not null)
+ TableScan [TS_3] (rows=40000000 width=1014)
+ default@customer_address,ca,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_state"]
+ <-Reducer 32 [SIMPLE_EDGE]
+ SHUFFLE [RS_137]
+ PartitionCols:_col0
+ Group By Operator [GBY_127] (rows=16866305250077374 width=273)
+ Output:["_col0"],keys:KEY._col0
+ <-Reducer 31 [SIMPLE_EDGE]
+ SHUFFLE [RS_126]
+ PartitionCols:_col0
+ Group By Operator [GBY_125] (rows=33732610500154748 width=273)
+ Output:["_col0"],keys:_col6
+ Merge Join Operator [MERGEJOIN_353] (rows=33732610500154748 width=273)
+ Conds:(Inner),Output:["_col6"]
+ <-Reducer 30 [SIMPLE_EDGE]
+ SHUFFLE [RS_121]
+ Merge Join Operator [MERGEJOIN_352] (rows=696954748 width=88)
+ Conds:RS_118._col1=RS_119._col0(Inner)
+ <-Reducer 29 [SIMPLE_EDGE]
+ SHUFFLE [RS_118]
+ PartitionCols:_col1
+ Merge Join Operator [MERGEJOIN_340] (rows=633595212 width=88)
+ Conds:RS_115._col0=RS_116._col0(Inner),Output:["_col1"]
+ <-Map 28 [SIMPLE_EDGE]
+ SHUFFLE [RS_115]
+ PartitionCols:_col0
+ Select Operator [SEL_71] (rows=575995635 width=88)
+ Output:["_col0","_col1"]
+ Filter Operator [FIL_317] (rows=575995635 width=88)
+ predicate:ss_sold_date_sk is not null
+ TableScan [TS_69] (rows=575995635 width=88)
+ default@store_sales,store_sales,Tbl:COMPLETE,Col:NONE,Output:["ss_sold_date_sk","ss_customer_sk"]
+ <-Map 33 [SIMPLE_EDGE]
+ SHUFFLE [RS_116]
+ PartitionCols:_col0
+ Select Operator [SEL_74] (rows=4058 width=1119)
+ Output:["_col0"]
+ Filter Operator [FIL_318] (rows=4058 width=1119)
+ predicate:((d_year = 1999) and d_moy BETWEEN 1 AND 3 and d_date_sk is not null)
+ TableScan [TS_72] (rows=73049 width=1119)
+ default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_moy"]
+ <-Reducer 37 [SIMPLE_EDGE]
+ SHUFFLE [RS_119]
+ PartitionCols:_col0
+ Group By Operator [GBY_93] (rows=48400001 width=860)
+ Output:["_col0"],keys:KEY._col0
+ <-Reducer 36 [SIMPLE_EDGE]
+ SHUFFLE [RS_92]
+ PartitionCols:_col0
+ Group By Operator [GBY_91] (rows=96800003 width=860)
+ Output:["_col0"],keys:_col0
+ Merge Join Operator [MERGEJOIN_342] (rows=96800003 width=860)
+ Conds:RS_87._col1=RS_88._col0(Inner),Output:["_col0"]
+ <-Map 39 [SIMPLE_EDGE]
+ SHUFFLE [RS_88]
+ PartitionCols:_col0
+ Select Operator [SEL_83] (rows=1861800 width=385)
+ Output:["_col0"]
+ Filter Operator [FIL_321] (rows=1861800 width=385)
+ predicate:cd_demo_sk is not null
+ TableScan [TS_81] (rows=1861800 width=385)
+ default@customer_demographics,customer_demographics,Tbl:COMPLETE,Col:NONE,Output:["cd_demo_sk"]
+ <-Reducer 35 [SIMPLE_EDGE]
+ SHUFFLE [RS_87]
+ PartitionCols:_col1
+ Merge Join Operator [MERGEJOIN_341] (rows=88000001 width=860)
+ Conds:RS_84._col2=RS_85._col0(Inner),Output:["_col0","_col1"]
+ <-Map 34 [SIMPLE_EDGE]
+ SHUFFLE [RS_84]
+ PartitionCols:_col2
+ Select Operator [SEL_77] (rows=80000000 width=860)
+ Output:["_col0","_col1","_col2"]
+ Filter Operator [FIL_319] (rows=80000000 width=860)
+ predicate:(c_current_addr_sk is not null and c_current_cdemo_sk is not null)
+ TableScan [TS_75] (rows=80000000 width=860)
+ default@customer,c,Tbl:COMPLETE,Col:NONE,Output:["c_customer_sk","c_current_cdemo_sk","c_current_addr_sk"]
+ <-Map 38 [SIMPLE_EDGE]
+ SHUFFLE [RS_85]
+ PartitionCols:_col0
+ Select Operator [SEL_80] (rows=20000000 width=1014)
+ Output:["_col0"]
+ Filter Operator [FIL_320] (rows=20000000 width=1014)
+ predicate:((ca_state) IN ('CO', 'IL', 'MN') and ca_address_sk is not null)
+ TableScan [TS_78] (rows=40000000 width=1014)
+ default@customer_address,ca,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_state"]
+ <-Reducer 43 [SIMPLE_EDGE]
+ SHUFFLE [RS_122]
+ Group By Operator [GBY_113] (rows=48400001 width=860)
+ Output:["_col0"],keys:KEY._col0
+ <-Reducer 42 [SIMPLE_EDGE]
+ SHUFFLE [RS_112]
+ PartitionCols:_col0
+ Group By Operator [GBY_111] (rows=96800003 width=860)
+ Output:["_col0"],keys:_col0
+ Merge Join Operator [MERGEJOIN_344] (rows=96800003 width=860)
+ Conds:RS_107._col1=RS_108._col0(Inner),Output:["_col0"]
+ <-Map 45 [SIMPLE_EDGE]
+ SHUFFLE [RS_108]
+ PartitionCols:_col0
+ Select Operator [SEL_103] (rows=1861800 width=385)
+ Output:["_col0"]
+ Filter Operator [FIL_324] (rows=1861800 width=385)
+ predicate:cd_demo_sk is not null
+ TableScan [TS_101] (rows=1861800 width=385)
+ default@customer_demographics,customer_demographics,Tbl:COMPLETE,Col:NONE,Output:["cd_demo_sk"]
+ <-Reducer 41 [SIMPLE_EDGE]
+ SHUFFLE [RS_107]
+ PartitionCols:_col1
+ Merge Join Operator [MERGEJOIN_343] (rows=88000001 width=860)
+ Conds:RS_104._col2=RS_105._col0(Inner),Output:["_col0","_col1"]
+ <-Map 40 [SIMPLE_EDGE]
+ SHUFFLE [RS_104]
+ PartitionCols:_col2
+ Select Operator [SEL_97] (rows=80000000 width=860)
+ Output:["_col0","_col1","_col2"]
+ Filter Operator [FIL_322] (rows=80000000 width=860)
+ predicate:(c_current_addr_sk is not null and c_current_cdemo_sk is not null)
+ TableScan [TS_95] (rows=80000000 width=860)
+ default@customer,c,Tbl:COMPLETE,Col:NONE,Output:["c_customer_sk","c_current_cdemo_sk","c_current_addr_sk"]
+ <-Map 44 [SIMPLE_EDGE]
+ SHUFFLE [RS_105]
+ PartitionCols:_col0
+ Select Operator [SEL_100] (rows=20000000 width=1014)
+ Output:["_col0"]
+ Filter Operator [FIL_323] (rows=20000000 width=1014)
+ predicate:((ca_state) IN ('CO', 'IL', 'MN') and ca_address_sk is not null)
+ TableScan [TS_98] (rows=40000000 width=1014)
+ default@customer_address,ca,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_state"]
+ <-Reducer 50 [SIMPLE_EDGE]
+ SHUFFLE [RS_203]
+ PartitionCols:_col0
+ Select Operator [SEL_201] (rows=8432918901433858 width=546)
+ Output:["_col0","_col1"]
+ Group By Operator [GBY_200] (rows=8432918901433858 width=546)
+ Output:["_col0"],keys:KEY._col0
+ <-Reducer 49 [SIMPLE_EDGE]
+ SHUFFLE [RS_199]
+ PartitionCols:_col0
+ Group By Operator [GBY_198] (rows=16865837802867716 width=546)
+ Output:["_col0"],keys:_col6
+ Merge Join Operator [MERGEJOIN_356] (rows=16865837802867716 width=546)
+ Conds:(Inner),Output:["_col6"]
+ <-Reducer 48 [SIMPLE_EDGE]
+ SHUFFLE [RS_194]
+ Merge Join Operator [MERGEJOIN_355] (rows=348467716 width=135)
+ Conds:RS_191._col1=RS_192._col0(Inner)
+ <-Reducer 47 [SIMPLE_EDGE]
+ SHUFFLE [RS_191]
+ PartitionCols:_col1
+ Merge Join Operator [MERGEJOIN_345] (rows=316788826 width=135)
+ Conds:RS_188._col0=RS_189._col0(Inner),Output:["_col1"]
+ <-Map 46 [SIMPLE_EDGE]
+ SHUFFLE [RS_188]
+ PartitionCols:_col0
+ Select Operator [SEL_144] (rows=287989836 width=135)
+ Output:["_col0","_col1"]
+ Filter Operator [FIL_325] (rows=287989836 width=135)
+ predicate:cs_sold_date_sk is not null
+ TableScan [TS_142] (rows=287989836 width=135)
+ default@catalog_sales,catalog_sales,Tbl:COMPLETE,Col:NONE,Output:["cs_sold_date_sk","cs_ship_customer_sk"]
+ <-Map 51 [SIMPLE_EDGE]
+ SHUFFLE [RS_189]
+ PartitionCols:_col0
+ Select Operator [SEL_147] (rows=4058 width=1119)
+ Output:["_col0"]
+ Filter Operator [FIL_326] (rows=4058 width=1119)
+ predicate:((d_year = 1999) and d_moy BETWEEN 1 AND 3 and d_date_sk is not null)
+ TableScan [TS_145] (rows=73049 width=1119)
+ default@date_dim,date_dim,Tbl:COMPLETE,Col:NONE,Output:["d_date_sk","d_year","d_moy"]
+ <-Reducer 55 [SIMPLE_EDGE]
+ SHUFFLE [RS_192]
+ PartitionCols:_col0
+ Group By Operator [GBY_166] (rows=48400001 width=860)
+ Output:["_col0"],keys:KEY._col0
+ <-Reducer 54 [SIMPLE_EDGE]
+ SHUFFLE [RS_165]
+ PartitionCols:_col0
+ Group By Operator [GBY_164] (rows=96800003 width=860)
+ Output:["_col0"],keys:_col0
+ Merge Join Operator [MERGEJOIN_347] (rows=96800003 width=860)
+ Conds:RS_160._col1=RS_161._col0(Inner),Output:["_col0"]
+ <-Map 57 [SIMPLE_EDGE]
+ SHUFFLE [RS_161]
+ PartitionCols:_col0
+ Select Operator [SEL_156] (rows=1861800 width=385)
+ Output:["_col0"]
+ Filter Operator [FIL_329] (rows=1861800 width=385)
+ predicate:cd_demo_sk is not null
+ TableScan [TS_154] (rows=1861800 width=385)
+ default@customer_demographics,customer_demographics,Tbl:COMPLETE,Col:NONE,Output:["cd_demo_sk"]
+ <-Reducer 53 [SIMPLE_EDGE]
+ SHUFFLE [RS_160]
+ PartitionCols:_col1
+ Merge Join Operator [MERGEJOIN_346] (rows=88000001 width=860)
+ Conds:RS_157._col2=RS_158._col0(Inner),Output:["_col0","_col1"]
+ <-Map 52 [SIMPLE_EDGE]
+ SHUFFLE [RS_157]
+ PartitionCols:_col2
+ Select Operator [SEL_150] (rows=80000000 width=860)
+ Output:["_col0","_col1","_col2"]
+ Filter Operator [FIL_327] (rows=80000000 width=860)
+ predicate:(c_current_addr_sk is not null and c_current_cdemo_sk is not null)
+ TableScan [TS_148] (rows=80000000 width=860)
+ default@customer,c,Tbl:COMPLETE,Col:NONE,Output:["c_customer_sk","c_current_cdemo_sk","c_current_addr_sk"]
+ <-Map 56 [SIMPLE_EDGE]
+ SHUFFLE [RS_158]
+ PartitionCols:_col0
+ Select Operator [SEL_153] (rows=20000000 width=1014)
+ Output:["_col0"]
+ Filter Operator [FIL_328] (rows=20000000 width=1014)
+ predicate:((ca_state) IN ('CO', 'IL', 'MN') and ca_address_sk is not null)
+ TableScan [TS_151] (rows=40000000 width=1014)
+ default@customer_address,ca,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_state"]
+ <-Reducer 61 [SIMPLE_EDGE]
+ SHUFFLE [RS_195]
+ Group By Operator [GBY_186] (rows=48400001 width=860)
+ Output:["_col0"],keys:KEY._col0
+ <-Reducer 60 [SIMPLE_EDGE]
+ SHUFFLE [RS_185]
+ PartitionCols:_col0
+ Group By Operator [GBY_184] (rows=96800003 width=860)
+ Output:["_col0"],keys:_col0
+ Merge Join Operator [MERGEJOIN_349] (rows=96800003 width=860)
+ Conds:RS_180._col1=RS_181._col0(Inner),Output:["_col0"]
+ <-Map 63 [SIMPLE_EDGE]
+ SHUFFLE [RS_181]
+ PartitionCols:_col0
+ Select Operator [SEL_176] (rows=1861800 width=385)
+ Output:["_col0"]
+ Filter Operator [FIL_332] (rows=1861800 width=385)
+ predicate:cd_demo_sk is not null
+ TableScan [TS_174] (rows=1861800 width=385)
+ default@customer_demographics,customer_demographics,Tbl:COMPLETE,Col:NONE,Output:["cd_demo_sk"]
+ <-Reducer 59 [SIMPLE_EDGE]
+ SHUFFLE [RS_180]
+ PartitionCols:_col1
+ Merge Join Operator [MERGEJOIN_348] (rows=88000001 width=860)
+ Conds:RS_177._col2=RS_178._col0(Inner),Output:["_col0","_col1"]
+ <-Map 58 [SIMPLE_EDGE]
+ SHUFFLE [RS_177]
+ PartitionCols:_col2
+ Select Operator [SEL_170] (rows=80000000 width=860)
+ Output:["_col0","_col1","_col2"]
+ Filter Operator [FIL_330] (rows=80000000 width=860)
+ predicate:(c_current_addr_sk is not null and c_current_cdemo_sk is not null)
+ TableScan [TS_168] (rows=80000000 width=860)
+ default@customer,c,Tbl:COMPLETE,Col:NONE,Output:["c_customer_sk","c_current_cdemo_sk","c_current_addr_sk"]
+ <-Map 62 [SIMPLE_EDGE]
+ SHUFFLE [RS_178]
+ PartitionCols:_col0
+ Select Operator [SEL_173] (rows=20000000 width=1014)
+ Output:["_col0"]
+ Filter Operator [FIL_331] (rows=20000000 width=1014)
+ predicate:((ca_state) IN ('CO', 'IL', 'MN') and ca_address_sk is not null)
+ TableScan [TS_171] (rows=40000000 width=1014)
+ default@customer_address,ca,Tbl:COMPLETE,Col:NONE,Output:["ca_address_sk","ca_state"]
+