You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@spark.apache.org by "Apache Spark (Jira)" <ji...@apache.org> on 2021/09/13 05:36:00 UTC
[jira] [Assigned] (SPARK-36716) Join estimation support
LeftExistence join type
[ https://issues.apache.org/jira/browse/SPARK-36716?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Apache Spark reassigned SPARK-36716:
------------------------------------
Assignee: (was: Apache Spark)
> Join estimation support LeftExistence join type
> -----------------------------------------------
>
> Key: SPARK-36716
> URL: https://issues.apache.org/jira/browse/SPARK-36716
> Project: Spark
> Issue Type: Improvement
> Components: SQL
> Affects Versions: 3.3.0
> Reporter: Yuming Wang
> Priority: Major
> Attachments: image-2021-09-10-17-17-33-082.png
>
>
> Join estimation support LeftExistence join type. This can benefit tpcds q10.
> Before:
> {noformat}
> TakeOrderedAndProject (51)
> +- * HashAggregate (50)
> +- Exchange (49)
> +- * HashAggregate (48)
> +- * Project (47)
> +- * SortMergeJoin Inner (46)
> :- * Sort (40)
> : +- Exchange (39)
> : +- * Project (38)
> : +- * BroadcastHashJoin Inner BuildRight (37)
> : :- * Project (31)
> : : +- * Filter (30)
> : : +- SortMergeJoin ExistenceJoin(exists#1) (29)
> : : :- SortMergeJoin ExistenceJoin(exists#2) (21)
> : : : :- * SortMergeJoin LeftSemi (13)
> : : : : :- * Sort (5)
> : : : : : +- Exchange (4)
> : : : : : +- * Filter (3)
> : : : : : +- * ColumnarToRow (2)
> : : : : : +- Scan parquet default.customer (1)
> : : : : +- * Sort (12)
> : : : : +- Exchange (11)
> : : : : +- * Project (10)
> : : : : +- * BroadcastHashJoin Inner BuildRight (9)
> : : : : :- * ColumnarToRow (7)
> : : : : : +- Scan parquet default.store_sales (6)
> : : : : +- ReusedExchange (8)
> : : : +- * Sort (20)
> : : : +- Exchange (19)
> : : : +- * Project (18)
> : : : +- * BroadcastHashJoin Inner BuildRight (17)
> : : : :- * ColumnarToRow (15)
> : : : : +- Scan parquet default.web_sales (14)
> : : : +- ReusedExchange (16)
> : : +- * Sort (28)
> : : +- Exchange (27)
> : : +- * Project (26)
> : : +- * BroadcastHashJoin Inner BuildRight (25)
> : : :- * ColumnarToRow (23)
> : : : +- Scan parquet default.catalog_sales (22)
> : : +- ReusedExchange (24)
> : +- BroadcastExchange (36)
> : +- * Project (35)
> : +- * Filter (34)
> : +- * ColumnarToRow (33)
> : +- Scan parquet default.customer_address (32)
> +- * Sort (45)
> +- Exchange (44)
> +- * Filter (43)
> +- * ColumnarToRow (42)
> +- Scan parquet default.customer_demographics (41)
> {noformat}
> After:
> {noformat}
> TakeOrderedAndProject (48)
> +- * HashAggregate (47)
> +- Exchange (46)
> +- * HashAggregate (45)
> +- * Project (44)
> +- * BroadcastHashJoin Inner BuildLeft (43)
> :- BroadcastExchange (39)
> : +- * Project (38)
> : +- * BroadcastHashJoin Inner BuildRight (37)
> : :- * Project (31)
> : : +- * Filter (30)
> : : +- SortMergeJoin ExistenceJoin(exists#1) (29)
> : : :- SortMergeJoin ExistenceJoin(exists#2) (21)
> : : : :- * SortMergeJoin LeftSemi (13)
> : : : : :- * Sort (5)
> : : : : : +- Exchange (4)
> : : : : : +- * Filter (3)
> : : : : : +- * ColumnarToRow (2)
> : : : : : +- Scan parquet default.customer (1)
> : : : : +- * Sort (12)
> : : : : +- Exchange (11)
> : : : : +- * Project (10)
> : : : : +- * BroadcastHashJoin Inner BuildRight (9)
> : : : : :- * ColumnarToRow (7)
> : : : : : +- Scan parquet default.store_sales (6)
> : : : : +- ReusedExchange (8)
> : : : +- * Sort (20)
> : : : +- Exchange (19)
> : : : +- * Project (18)
> : : : +- * BroadcastHashJoin Inner BuildRight (17)
> : : : :- * ColumnarToRow (15)
> : : : : +- Scan parquet default.web_sales (14)
> : : : +- ReusedExchange (16)
> : : +- * Sort (28)
> : : +- Exchange (27)
> : : +- * Project (26)
> : : +- * BroadcastHashJoin Inner BuildRight (25)
> : : :- * ColumnarToRow (23)
> : : : +- Scan parquet default.catalog_sales (22)
> : : +- ReusedExchange (24)
> : +- BroadcastExchange (36)
> : +- * Project (35)
> : +- * Filter (34)
> : +- * ColumnarToRow (33)
> : +- Scan parquet default.customer_address (32)
> +- * Filter (42)
> +- * ColumnarToRow (41)
> +- Scan parquet default.customer_demographics (40)
> {noformat}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@spark.apache.org
For additional commands, e-mail: issues-help@spark.apache.org