query plans for all queries
This commit is contained in:
Родитель
352f2f5002
Коммит
d5fbec859f
|
@ -34,8 +34,8 @@ TakeOrderedAndProject(limit=100, orderBy=[i_item_id#1 ASC NULLS FIRST,i_item_des
|
|||
: : : : +- *(3) FileScan parquet default.date_dim[d_date_sk#20,d_year#29,d_moy#28] Batched: true, Format: Parquet, Location [not included in comparison]/{warehouse_dir}/date_dim], PartitionFilters: [], PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,9), EqualTo(d_year,1999), IsNotNull(d_date_sk)], ReadSchema: struct<d_date_sk:int,d_year:int,d_moy:int>
|
||||
: : : +- BroadcastExchange HashedRelationBroadcastMode(List(cast(input[0, int, true] as bigint)))
|
||||
: : : +- *(4) Project [d_date_sk#18]
|
||||
: : : +- *(4) Filter (((((isnotnull(d_year#30) && isnotnull(d_moy#31)) && (d_moy#31 >= 9)) && (d_moy#31 <= 12)) && (d_year#30 = 1999)) && isnotnull(d_date_sk#18))
|
||||
: : : +- *(4) FileScan parquet default.date_dim[d_date_sk#18,d_year#30,d_moy#31] Batched: true, Format: Parquet, Location [not included in comparison]/{warehouse_dir}/date_dim], PartitionFilters: [], PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), GreaterThanOrEqual(d_moy,9), LessThanOrEqual(d_moy,12), Equ..., ReadSchema: struct<d_date_sk:int,d_year:int,d_moy:int>
|
||||
: : : +- *(4) Filter (((((isnotnull(d_moy#30) && isnotnull(d_year#31)) && (d_moy#30 >= 9)) && (d_moy#30 <= 12)) && (d_year#31 = 1999)) && isnotnull(d_date_sk#18))
|
||||
: : : +- *(4) FileScan parquet default.date_dim[d_date_sk#18,d_year#31,d_moy#30] Batched: true, Format: Parquet, Location [not included in comparison]/{warehouse_dir}/date_dim], PartitionFilters: [], PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), GreaterThanOrEqual(d_moy,9), LessThanOrEqual(d_moy,12), Equ..., ReadSchema: struct<d_date_sk:int,d_year:int,d_moy:int>
|
||||
: : +- BroadcastExchange HashedRelationBroadcastMode(List(cast(input[0, int, true] as bigint)))
|
||||
: : +- *(5) Project [d_date_sk#16]
|
||||
: : +- *(5) Filter (d_year#32 IN (1999,2000,2001) && isnotnull(d_date_sk#16))
|
||||
|
|
|
@ -12,8 +12,8 @@ TakeOrderedAndProject(limit=100, orderBy=[rnk#1 ASC NULLS FIRST], output=[rnk#1,
|
|||
: : : +- *(3) Sort [rank_col#11 ASC NULLS FIRST], false, 0
|
||||
: : : +- Exchange SinglePartition
|
||||
: : : +- *(2) Project [item_sk#8, rank_col#11]
|
||||
: : : +- *(2) Filter (isnotnull(avg(ss_net_profit#12)#13) && (cast(avg(ss_net_profit#12)#13 as decimal(13,7)) > CheckOverflow((0.900000 * promote_precision(Subquery subquery7089)), DecimalType(13,7))))
|
||||
: : : : +- Subquery subquery7089
|
||||
: : : +- *(2) Filter (isnotnull(avg(ss_net_profit#12)#13) && (cast(avg(ss_net_profit#12)#13 as decimal(13,7)) > CheckOverflow((0.900000 * promote_precision(Subquery subquery6830)), DecimalType(13,7))))
|
||||
: : : : +- Subquery subquery6830
|
||||
: : : : +- *(2) HashAggregate(keys=[ss_store_sk#14], functions=[avg(UnscaledValue(ss_net_profit#12))])
|
||||
: : : : +- Exchange hashpartitioning(ss_store_sk#14, 5)
|
||||
: : : : +- *(1) HashAggregate(keys=[ss_store_sk#14], functions=[partial_avg(UnscaledValue(ss_net_profit#12))])
|
||||
|
@ -33,8 +33,8 @@ TakeOrderedAndProject(limit=100, orderBy=[rnk#1 ASC NULLS FIRST], output=[rnk#1,
|
|||
: : +- *(6) Sort [rank_col#17 DESC NULLS LAST], false, 0
|
||||
: : +- Exchange SinglePartition
|
||||
: : +- *(5) Project [item_sk#6, rank_col#17]
|
||||
: : +- *(5) Filter (isnotnull(avg(ss_net_profit#12)#18) && (cast(avg(ss_net_profit#12)#18 as decimal(13,7)) > CheckOverflow((0.900000 * promote_precision(Subquery subquery7094)), DecimalType(13,7))))
|
||||
: : : +- Subquery subquery7094
|
||||
: : +- *(5) Filter (isnotnull(avg(ss_net_profit#12)#18) && (cast(avg(ss_net_profit#12)#18 as decimal(13,7)) > CheckOverflow((0.900000 * promote_precision(Subquery subquery6835)), DecimalType(13,7))))
|
||||
: : : +- Subquery subquery6835
|
||||
: : : +- *(2) HashAggregate(keys=[ss_store_sk#14], functions=[avg(UnscaledValue(ss_net_profit#12))])
|
||||
: : : +- Exchange hashpartitioning(ss_store_sk#14, 5)
|
||||
: : : +- *(1) HashAggregate(keys=[ss_store_sk#14], functions=[partial_avg(UnscaledValue(ss_net_profit#12))])
|
||||
|
|
|
@ -56,15 +56,15 @@ TakeOrderedAndProject(limit=100, orderBy=[segment#1 ASC NULLS FIRST,num_customer
|
|||
: +- *(9) FileScan parquet default.store[s_county#10,s_state#11] Batched: true, Format: Parquet, Location [not included in comparison]/{warehouse_dir}/store], PartitionFilters: [], PushedFilters: [IsNotNull(s_state), IsNotNull(s_county)], ReadSchema: struct<s_county:string,s_state:string>
|
||||
+- BroadcastExchange HashedRelationBroadcastMode(List(cast(input[0, int, true] as bigint)))
|
||||
+- *(10) Project [d_date_sk#7]
|
||||
+- *(10) Filter (((isnotnull(d_month_seq#32) && (d_month_seq#32 >= Subquery subquery9801)) && (d_month_seq#32 <= Subquery subquery9802)) && isnotnull(d_date_sk#7))
|
||||
: :- Subquery subquery9801
|
||||
+- *(10) Filter (((isnotnull(d_month_seq#32) && (d_month_seq#32 >= Subquery subquery9542)) && (d_month_seq#32 <= Subquery subquery9543)) && isnotnull(d_date_sk#7))
|
||||
: :- Subquery subquery9542
|
||||
: : +- *(2) HashAggregate(keys=[(d_month_seq + 1)#33], functions=[])
|
||||
: : +- Exchange hashpartitioning((d_month_seq + 1)#33, 5)
|
||||
: : +- *(1) HashAggregate(keys=[(d_month_seq + 1)#33], functions=[])
|
||||
: : +- *(1) Project [(d_month_seq#32 + 1) AS (d_month_seq + 1)#33]
|
||||
: : +- *(1) Filter (((isnotnull(d_year#31) && isnotnull(d_moy#30)) && (d_year#31 = 1998)) && (d_moy#30 = 12))
|
||||
: : +- *(1) FileScan parquet default.date_dim[d_month_seq#32,d_year#31,d_moy#30] Batched: true, Format: Parquet, Location [not included in comparison]/{warehouse_dir}/date_dim], PartitionFilters: [], PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,1998), EqualTo(d_moy,12)], ReadSchema: struct<d_month_seq:int,d_year:int,d_moy:int>
|
||||
: +- Subquery subquery9802
|
||||
: +- Subquery subquery9543
|
||||
: +- *(2) HashAggregate(keys=[(d_month_seq + 3)#34], functions=[])
|
||||
: +- Exchange hashpartitioning((d_month_seq + 3)#34, 5)
|
||||
: +- *(1) HashAggregate(keys=[(d_month_seq + 3)#34], functions=[])
|
||||
|
@ -72,14 +72,14 @@ TakeOrderedAndProject(limit=100, orderBy=[segment#1 ASC NULLS FIRST,num_customer
|
|||
: +- *(1) Filter (((isnotnull(d_year#31) && isnotnull(d_moy#30)) && (d_year#31 = 1998)) && (d_moy#30 = 12))
|
||||
: +- *(1) FileScan parquet default.date_dim[d_month_seq#32,d_year#31,d_moy#30] Batched: true, Format: Parquet, Location [not included in comparison]/{warehouse_dir}/date_dim], PartitionFilters: [], PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,1998), EqualTo(d_moy,12)], ReadSchema: struct<d_month_seq:int,d_year:int,d_moy:int>
|
||||
+- *(10) FileScan parquet default.date_dim[d_date_sk#7,d_month_seq#32] Batched: true, Format: Parquet, Location [not included in comparison]/{warehouse_dir}/date_dim], PartitionFilters: [], PushedFilters: [IsNotNull(d_month_seq), IsNotNull(d_date_sk)], ReadSchema: struct<d_date_sk:int,d_month_seq:int>
|
||||
:- Subquery subquery9801
|
||||
:- Subquery subquery9542
|
||||
: +- *(2) HashAggregate(keys=[(d_month_seq + 1)#33], functions=[])
|
||||
: +- Exchange hashpartitioning((d_month_seq + 1)#33, 5)
|
||||
: +- *(1) HashAggregate(keys=[(d_month_seq + 1)#33], functions=[])
|
||||
: +- *(1) Project [(d_month_seq#32 + 1) AS (d_month_seq + 1)#33]
|
||||
: +- *(1) Filter (((isnotnull(d_year#31) && isnotnull(d_moy#30)) && (d_year#31 = 1998)) && (d_moy#30 = 12))
|
||||
: +- *(1) FileScan parquet default.date_dim[d_month_seq#32,d_year#31,d_moy#30] Batched: true, Format: Parquet, Location [not included in comparison]/{warehouse_dir}/date_dim], PartitionFilters: [], PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,1998), EqualTo(d_moy,12)], ReadSchema: struct<d_month_seq:int,d_year:int,d_moy:int>
|
||||
+- Subquery subquery9802
|
||||
+- Subquery subquery9543
|
||||
+- *(2) HashAggregate(keys=[(d_month_seq + 3)#34], functions=[])
|
||||
+- Exchange hashpartitioning((d_month_seq + 3)#34, 5)
|
||||
+- *(1) HashAggregate(keys=[(d_month_seq + 3)#34], functions=[])
|
||||
|
|
|
@ -27,13 +27,13 @@ TakeOrderedAndProject(limit=100, orderBy=[item_id#1 ASC NULLS FIRST,ss_item_rev#
|
|||
: : : +- *(3) FileScan parquet default.date_dim[d_date_sk#14,d_date#17] Batched: true, Format: Parquet, Location [not included in comparison]/{warehouse_dir}/date_dim], PartitionFilters: [], PushedFilters: [IsNotNull(d_date_sk)], ReadSchema: struct<d_date_sk:int,d_date:date>
|
||||
: : +- BroadcastExchange HashedRelationBroadcastMode(List(input[0, date, true]))
|
||||
: : +- *(2) Project [d_date#17 AS d_date#17#18]
|
||||
: : +- *(2) Filter (isnotnull(d_week_seq#19) && (d_week_seq#19 = Subquery subquery12128))
|
||||
: : : +- Subquery subquery12128
|
||||
: : +- *(2) Filter (isnotnull(d_week_seq#19) && (d_week_seq#19 = Subquery subquery11869))
|
||||
: : : +- Subquery subquery11869
|
||||
: : : +- *(1) Project [d_week_seq#19]
|
||||
: : : +- *(1) Filter (isnotnull(d_date#17) && (cast(d_date#17 as string) = 2000-01-03))
|
||||
: : : +- *(1) FileScan parquet default.date_dim[d_date#17,d_week_seq#19] Batched: true, Format: Parquet, Location [not included in comparison]/{warehouse_dir}/date_dim], PartitionFilters: [], PushedFilters: [IsNotNull(d_date)], ReadSchema: struct<d_date:date,d_week_seq:int>
|
||||
: : +- *(2) FileScan parquet default.date_dim[d_date#17,d_week_seq#19] Batched: true, Format: Parquet, Location [not included in comparison]/{warehouse_dir}/date_dim], PartitionFilters: [], PushedFilters: [IsNotNull(d_week_seq)], ReadSchema: struct<d_date:date,d_week_seq:int>
|
||||
: : +- Subquery subquery12128
|
||||
: : +- Subquery subquery11869
|
||||
: : +- *(1) Project [d_week_seq#19]
|
||||
: : +- *(1) Filter (isnotnull(d_date#17) && (cast(d_date#17 as string) = 2000-01-03))
|
||||
: : +- *(1) FileScan parquet default.date_dim[d_date#17,d_week_seq#19] Batched: true, Format: Parquet, Location [not included in comparison]/{warehouse_dir}/date_dim], PartitionFilters: [], PushedFilters: [IsNotNull(d_date)], ReadSchema: struct<d_date:date,d_week_seq:int>
|
||||
|
@ -58,13 +58,13 @@ TakeOrderedAndProject(limit=100, orderBy=[item_id#1 ASC NULLS FIRST,ss_item_rev#
|
|||
: : +- *(7) FileScan parquet default.date_dim[d_date_sk#14,d_date#17] Batched: true, Format: Parquet, Location [not included in comparison]/{warehouse_dir}/date_dim], PartitionFilters: [], PushedFilters: [IsNotNull(d_date_sk)], ReadSchema: struct<d_date_sk:int,d_date:date>
|
||||
: +- BroadcastExchange HashedRelationBroadcastMode(List(input[0, date, true]))
|
||||
: +- *(6) Project [d_date#17 AS d_date#17#23]
|
||||
: +- *(6) Filter (isnotnull(d_week_seq#19) && (d_week_seq#19 = Subquery subquery12132))
|
||||
: : +- Subquery subquery12132
|
||||
: +- *(6) Filter (isnotnull(d_week_seq#19) && (d_week_seq#19 = Subquery subquery11873))
|
||||
: : +- Subquery subquery11873
|
||||
: : +- *(1) Project [d_week_seq#19]
|
||||
: : +- *(1) Filter (isnotnull(d_date#17) && (cast(d_date#17 as string) = 2000-01-03))
|
||||
: : +- *(1) FileScan parquet default.date_dim[d_date#17,d_week_seq#19] Batched: true, Format: Parquet, Location [not included in comparison]/{warehouse_dir}/date_dim], PartitionFilters: [], PushedFilters: [IsNotNull(d_date)], ReadSchema: struct<d_date:date,d_week_seq:int>
|
||||
: +- *(6) FileScan parquet default.date_dim[d_date#17,d_week_seq#19] Batched: true, Format: Parquet, Location [not included in comparison]/{warehouse_dir}/date_dim], PartitionFilters: [], PushedFilters: [IsNotNull(d_week_seq)], ReadSchema: struct<d_date:date,d_week_seq:int>
|
||||
: +- Subquery subquery12132
|
||||
: +- Subquery subquery11873
|
||||
: +- *(1) Project [d_week_seq#19]
|
||||
: +- *(1) Filter (isnotnull(d_date#17) && (cast(d_date#17 as string) = 2000-01-03))
|
||||
: +- *(1) FileScan parquet default.date_dim[d_date#17,d_week_seq#19] Batched: true, Format: Parquet, Location [not included in comparison]/{warehouse_dir}/date_dim], PartitionFilters: [], PushedFilters: [IsNotNull(d_date)], ReadSchema: struct<d_date:date,d_week_seq:int>
|
||||
|
@ -89,13 +89,13 @@ TakeOrderedAndProject(limit=100, orderBy=[item_id#1 ASC NULLS FIRST,ss_item_rev#
|
|||
: +- *(12) FileScan parquet default.date_dim[d_date_sk#14,d_date#17] Batched: true, Format: Parquet, Location [not included in comparison]/{warehouse_dir}/date_dim], PartitionFilters: [], PushedFilters: [IsNotNull(d_date_sk)], ReadSchema: struct<d_date_sk:int,d_date:date>
|
||||
+- BroadcastExchange HashedRelationBroadcastMode(List(input[0, date, true]))
|
||||
+- *(11) Project [d_date#17 AS d_date#17#27]
|
||||
+- *(11) Filter (isnotnull(d_week_seq#19) && (d_week_seq#19 = Subquery subquery12136))
|
||||
: +- Subquery subquery12136
|
||||
+- *(11) Filter (isnotnull(d_week_seq#19) && (d_week_seq#19 = Subquery subquery11877))
|
||||
: +- Subquery subquery11877
|
||||
: +- *(1) Project [d_week_seq#19]
|
||||
: +- *(1) Filter (isnotnull(d_date#17) && (cast(d_date#17 as string) = 2000-01-03))
|
||||
: +- *(1) FileScan parquet default.date_dim[d_date#17,d_week_seq#19] Batched: true, Format: Parquet, Location [not included in comparison]/{warehouse_dir}/date_dim], PartitionFilters: [], PushedFilters: [IsNotNull(d_date)], ReadSchema: struct<d_date:date,d_week_seq:int>
|
||||
+- *(11) FileScan parquet default.date_dim[d_date#17,d_week_seq#19] Batched: true, Format: Parquet, Location [not included in comparison]/{warehouse_dir}/date_dim], PartitionFilters: [], PushedFilters: [IsNotNull(d_week_seq)], ReadSchema: struct<d_date:date,d_week_seq:int>
|
||||
+- Subquery subquery12136
|
||||
+- Subquery subquery11877
|
||||
+- *(1) Project [d_week_seq#19]
|
||||
+- *(1) Filter (isnotnull(d_date#17) && (cast(d_date#17 as string) = 2000-01-03))
|
||||
+- *(1) FileScan parquet default.date_dim[d_date#17,d_week_seq#19] Batched: true, Format: Parquet, Location [not included in comparison]/{warehouse_dir}/date_dim], PartitionFilters: [], PushedFilters: [IsNotNull(d_date)], ReadSchema: struct<d_date:date,d_week_seq:int>
|
|
@ -68,8 +68,8 @@
|
|||
: : : : : : : : : : : : : : : +- *(5) FileScan parquet default.date_dim[d_date_sk#74,d_year#38] Batched: true, Format: Parquet, Location [not included in comparison]/{warehouse_dir}/date_dim], PartitionFilters: [], PushedFilters: [IsNotNull(d_year), EqualTo(d_year,1999), IsNotNull(d_date_sk)], ReadSchema: struct<d_date_sk:int,d_year:int>
|
||||
: : : : : : : : : : : : : : +- BroadcastExchange HashedRelationBroadcastMode(List(cast(input[0, int, true] as bigint)))
|
||||
: : : : : : : : : : : : : : +- *(6) Project [s_store_sk#72, s_store_name#28, s_zip#29]
|
||||
: : : : : : : : : : : : : : +- *(6) Filter ((isnotnull(s_store_sk#72) && isnotnull(s_zip#29)) && isnotnull(s_store_name#28))
|
||||
: : : : : : : : : : : : : : +- *(6) FileScan parquet default.store[s_store_sk#72,s_store_name#28,s_zip#29] Batched: true, Format: Parquet, Location [not included in comparison]/{warehouse_dir}/store], PartitionFilters: [], PushedFilters: [IsNotNull(s_store_sk), IsNotNull(s_zip), IsNotNull(s_store_name)], ReadSchema: struct<s_store_sk:int,s_store_name:string,s_zip:string>
|
||||
: : : : : : : : : : : : : : +- *(6) Filter ((isnotnull(s_store_sk#72) && isnotnull(s_store_name#28)) && isnotnull(s_zip#29))
|
||||
: : : : : : : : : : : : : : +- *(6) FileScan parquet default.store[s_store_sk#72,s_store_name#28,s_zip#29] Batched: true, Format: Parquet, Location [not included in comparison]/{warehouse_dir}/store], PartitionFilters: [], PushedFilters: [IsNotNull(s_store_sk), IsNotNull(s_store_name), IsNotNull(s_zip)], ReadSchema: struct<s_store_sk:int,s_store_name:string,s_zip:string>
|
||||
: : : : : : : : : : : : : +- BroadcastExchange HashedRelationBroadcastMode(List(cast(input[0, int, true] as bigint)))
|
||||
: : : : : : : : : : : : : +- *(7) Project [c_customer_sk#70, c_current_cdemo_sk#59, c_current_hdemo_sk#53, c_current_addr_sk#49, c_first_shipto_date_sk#65, c_first_sales_date_sk#67]
|
||||
: : : : : : : : : : : : : +- *(7) Filter (((((isnotnull(c_customer_sk#70) && isnotnull(c_first_sales_date_sk#67)) && isnotnull(c_first_shipto_date_sk#65)) && isnotnull(c_current_cdemo_sk#59)) && isnotnull(c_current_hdemo_sk#53)) && isnotnull(c_current_addr_sk#49))
|
||||
|
|
|
@ -56,8 +56,8 @@ TakeOrderedAndProject(limit=100, orderBy=[total_cnt#1 DESC NULLS LAST,i_item_des
|
|||
: : : +- *(7) FileScan parquet default.date_dim[d_date_sk#19,d_week_seq#18] Batched: true, Format: Parquet, Location [not included in comparison]/{warehouse_dir}/date_dim], PartitionFilters: [], PushedFilters: [IsNotNull(d_week_seq), IsNotNull(d_date_sk)], ReadSchema: struct<d_date_sk:int,d_week_seq:int>
|
||||
: : +- BroadcastExchange HashedRelationBroadcastMode(List(cast(input[0, int, true] as bigint)))
|
||||
: : +- *(8) Project [d_date_sk#14, d_date#15]
|
||||
: : +- *(8) Filter (isnotnull(d_date_sk#14) && isnotnull(d_date#15))
|
||||
: : +- *(8) FileScan parquet default.date_dim[d_date_sk#14,d_date#15] Batched: true, Format: Parquet, Location [not included in comparison]/{warehouse_dir}/date_dim], PartitionFilters: [], PushedFilters: [IsNotNull(d_date_sk), IsNotNull(d_date)], ReadSchema: struct<d_date_sk:int,d_date:date>
|
||||
: : +- *(8) Filter (isnotnull(d_date#15) && isnotnull(d_date_sk#14))
|
||||
: : +- *(8) FileScan parquet default.date_dim[d_date_sk#14,d_date#15] Batched: true, Format: Parquet, Location [not included in comparison]/{warehouse_dir}/date_dim], PartitionFilters: [], PushedFilters: [IsNotNull(d_date), IsNotNull(d_date_sk)], ReadSchema: struct<d_date_sk:int,d_date:date>
|
||||
: +- BroadcastExchange HashedRelationBroadcastMode(List(cast(input[0, int, true] as bigint)))
|
||||
: +- *(9) Project [p_promo_sk#12]
|
||||
: +- *(9) Filter isnotnull(p_promo_sk#12)
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
== Physical Plan ==
|
||||
TakeOrderedAndProject(limit=100, orderBy=[ratio#1 ASC NULLS FIRST,ss_qty#2 DESC NULLS LAST,ss_wc#3 DESC NULLS LAST,ss_sp#4 DESC NULLS LAST,other_chan_qty#5 ASC NULLS FIRST,other_chan_wholesale_cost#6 ASC NULLS FIRST,other_chan_sales_price#7 ASC NULLS FIRST,round((cast(ss_qty#2 as double) / cast(coalesce((ws_qty#8 + cs_qty#9), 1) as double)), 2) ASC NULLS FIRST], output=[ratio#1,store_qty#10,store_wholesale_cost#11,store_sales_price#12,other_chan_qty#5,other_chan_wholesale_cost#6,other_chan_sales_price#7])
|
||||
+- *(12) Project [round((cast(ss_qty#2 as double) / cast(coalesce((ws_qty#8 + cs_qty#9), 1) as double)), 2) AS ratio#1, ss_qty#2 AS store_qty#10, ss_wc#3 AS store_wholesale_cost#11, ss_sp#4 AS store_sales_price#12, (coalesce(ws_qty#8, 0) + coalesce(cs_qty#9, 0)) AS other_chan_qty#5, CheckOverflow((promote_precision(cast(coalesce(ws_wc#13, 0.00) as decimal(18,2))) + promote_precision(cast(coalesce(cs_wc#14, 0.00) as decimal(18,2)))), DecimalType(18,2)) AS other_chan_wholesale_cost#6, CheckOverflow((promote_precision(cast(coalesce(ws_sp#15, 0.00) as decimal(18,2))) + promote_precision(cast(coalesce(cs_sp#16, 0.00) as decimal(18,2)))), DecimalType(18,2)) AS other_chan_sales_price#7, ss_wc#3, cs_qty#9, ss_sp#4, ss_qty#2, ws_qty#8]
|
||||
+- *(12) Project [round((cast(ss_qty#2 as double) / cast(coalesce((ws_qty#8 + cs_qty#9), 1) as double)), 2) AS ratio#1, ss_qty#2 AS store_qty#10, ss_wc#3 AS store_wholesale_cost#11, ss_sp#4 AS store_sales_price#12, (coalesce(ws_qty#8, 0) + coalesce(cs_qty#9, 0)) AS other_chan_qty#5, CheckOverflow((promote_precision(cast(coalesce(ws_wc#13, 0.00) as decimal(18,2))) + promote_precision(cast(coalesce(cs_wc#14, 0.00) as decimal(18,2)))), DecimalType(18,2)) AS other_chan_wholesale_cost#6, CheckOverflow((promote_precision(cast(coalesce(ws_sp#15, 0.00) as decimal(18,2))) + promote_precision(cast(coalesce(cs_sp#16, 0.00) as decimal(18,2)))), DecimalType(18,2)) AS other_chan_sales_price#7, cs_qty#9, ss_wc#3, ss_qty#2, ss_sp#4, ws_qty#8]
|
||||
+- *(12) BroadcastHashJoin [ss_sold_year#17, ss_item_sk#18, ss_customer_sk#19], [cs_sold_year#20, cs_item_sk#21, cs_customer_sk#22], Inner, BuildRight
|
||||
:- *(12) Project [ss_sold_year#17, ss_item_sk#18, ss_customer_sk#19, ss_qty#2, ss_wc#3, ss_sp#4, ws_qty#8, ws_wc#13, ws_sp#15]
|
||||
: +- *(12) BroadcastHashJoin [ss_sold_year#17, ss_item_sk#18, ss_customer_sk#19], [ws_sold_year#23, ws_item_sk#24, ws_customer_sk#25], Inner, BuildRight
|
||||
|
@ -34,8 +34,8 @@ TakeOrderedAndProject(limit=100, orderBy=[ratio#1 ASC NULLS FIRST,ss_qty#2 DESC
|
|||
: : +- *(6) Filter isnull(wr_order_number#40)
|
||||
: : +- *(6) BroadcastHashJoin [cast(ws_order_number#41 as bigint), cast(ws_item_sk#24 as bigint)], [wr_order_number#40, wr_item_sk#42], LeftOuter, BuildRight
|
||||
: : :- *(6) Project [ws_sold_date_sk#39, ws_item_sk#24, ws_bill_customer_sk#35, ws_order_number#41, ws_quantity#36, ws_wholesale_cost#37, ws_sales_price#38]
|
||||
: : : +- *(6) Filter ((isnotnull(ws_sold_date_sk#39) && isnotnull(ws_item_sk#24)) && isnotnull(ws_bill_customer_sk#35))
|
||||
: : : +- *(6) FileScan parquet default.web_sales[ws_sold_date_sk#39,ws_item_sk#24,ws_bill_customer_sk#35,ws_order_number#41,ws_quantity#36,ws_wholesale_cost#37,ws_sales_price#38] Batched: true, Format: Parquet, Location [not included in comparison]/{warehouse_dir}/web_sales], PartitionFilters: [], PushedFilters: [IsNotNull(ws_sold_date_sk), IsNotNull(ws_item_sk), IsNotNull(ws_bill_customer_sk)], ReadSchema: struct<ws_sold_date_sk:int,ws_item_sk:int,ws_bill_customer_sk:int,ws_order_number:int,ws_quantity...
|
||||
: : : +- *(6) Filter ((isnotnull(ws_sold_date_sk#39) && isnotnull(ws_bill_customer_sk#35)) && isnotnull(ws_item_sk#24))
|
||||
: : : +- *(6) FileScan parquet default.web_sales[ws_sold_date_sk#39,ws_item_sk#24,ws_bill_customer_sk#35,ws_order_number#41,ws_quantity#36,ws_wholesale_cost#37,ws_sales_price#38] Batched: true, Format: Parquet, Location [not included in comparison]/{warehouse_dir}/web_sales], PartitionFilters: [], PushedFilters: [IsNotNull(ws_sold_date_sk), IsNotNull(ws_bill_customer_sk), IsNotNull(ws_item_sk)], ReadSchema: struct<ws_sold_date_sk:int,ws_item_sk:int,ws_bill_customer_sk:int,ws_order_number:int,ws_quantity...
|
||||
: : +- BroadcastExchange HashedRelationBroadcastMode(List(input[1, bigint, true], input[0, bigint, true]))
|
||||
: : +- *(4) Project [wr_item_sk#42, wr_order_number#40]
|
||||
: : +- *(4) Filter (isnotnull(wr_order_number#40) && isnotnull(wr_item_sk#42))
|
||||
|
|
|
@ -34,8 +34,8 @@ TakeOrderedAndProject(limit=100, orderBy=[substring(r_reason_desc, 1, 20)#1 ASC
|
|||
: : : : +- *(3) FileScan parquet default.customer_demographics[cd_demo_sk#25,cd_marital_status#19,cd_education_status#20] Batched: true, Format: Parquet, Location [not included in comparison]/{warehouse_dir}/customer_demographics], PartitionFilters: [], PushedFilters: [IsNotNull(cd_demo_sk), IsNotNull(cd_education_status), IsNotNull(cd_marital_status)], ReadSchema: struct<cd_demo_sk:int,cd_marital_status:string,cd_education_status:string>
|
||||
: : : +- BroadcastExchange HashedRelationBroadcastMode(List(cast(input[0, int, true] as bigint), input[1, string, true], input[2, string, true]))
|
||||
: : : +- *(4) Project [cd_demo_sk#21, cd_marital_status#22, cd_education_status#23]
|
||||
: : : +- *(4) Filter ((isnotnull(cd_marital_status#22) && isnotnull(cd_demo_sk#21)) && isnotnull(cd_education_status#23))
|
||||
: : : +- *(4) FileScan parquet default.customer_demographics[cd_demo_sk#21,cd_marital_status#22,cd_education_status#23] Batched: true, Format: Parquet, Location [not included in comparison]/{warehouse_dir}/customer_demographics], PartitionFilters: [], PushedFilters: [IsNotNull(cd_marital_status), IsNotNull(cd_demo_sk), IsNotNull(cd_education_status)], ReadSchema: struct<cd_demo_sk:int,cd_marital_status:string,cd_education_status:string>
|
||||
: : : +- *(4) Filter ((isnotnull(cd_demo_sk#21) && isnotnull(cd_marital_status#22)) && isnotnull(cd_education_status#23))
|
||||
: : : +- *(4) FileScan parquet default.customer_demographics[cd_demo_sk#21,cd_marital_status#22,cd_education_status#23] Batched: true, Format: Parquet, Location [not included in comparison]/{warehouse_dir}/customer_demographics], PartitionFilters: [], PushedFilters: [IsNotNull(cd_demo_sk), IsNotNull(cd_marital_status), IsNotNull(cd_education_status)], ReadSchema: struct<cd_demo_sk:int,cd_marital_status:string,cd_education_status:string>
|
||||
: : +- BroadcastExchange HashedRelationBroadcastMode(List(cast(input[0, int, true] as bigint)))
|
||||
: : +- *(5) Project [ca_address_sk#15, ca_state#16]
|
||||
: : +- *(5) Filter ((isnotnull(ca_country#33) && (ca_country#33 = United States)) && isnotnull(ca_address_sk#15))
|
||||
|
|
|
@ -5,7 +5,6 @@
|
|||
*
|
||||
* The below license was copied from: https://github.com/FasterXML/jackson-module-scala/blob/2.10/src/main/resources/META-INF/LICENSE
|
||||
*/
|
||||
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
|
@ -272,10 +271,10 @@ class TPCDSV1_4_SparkPlanStabilitySuite extends PlanStabilitySuite {
|
|||
override val goldenFilePath: String =
|
||||
new File(baseResourcePath, "spark-2.4/approved-plans-v1_4").getAbsolutePath
|
||||
|
||||
// Enable cross join because some queries fail during query optimization phase.
|
||||
withSQLConf("spark.sql.crossJoin.enabled" -> "true") {
|
||||
tpcdsQueries.foreach { q =>
|
||||
test(s"check simplified (tpcds-v1.4/$q)") {
|
||||
tpcdsQueries.foreach { q =>
|
||||
test(s"check simplified (tpcds-v1.4/$q)") {
|
||||
// Enable cross join because some queries fail during query optimization phase.
|
||||
withSQLConf("spark.sql.crossJoin.enabled" -> "true") {
|
||||
testQuery("tpcds/queries", q)
|
||||
}
|
||||
}
|
||||
|
|
Загрузка…
Ссылка в новой задаче