Uh oh!
There was an error while loading. Please reload this page.
[SPARK-17091] Add rule to convert IN predicate to equivalent Parquet filter. - #18424
[SPARK-17091] Add rule to convert IN predicate to equivalent Parquet filter.#18424ptkool wants to merge 1 commit into
Conversation
e98fbd8 to
8c443a7CompareHyukjinKwon
commented
Jun 26, 2017
a10y
commented
Jun 26, 2017
Indeed it appears to be. The resolution from my previous PR was that per @HyukjinKwon's benchmarks, performing the disjunction in Spark was slightly more performant than pushing it down to Parquet. I haven't been following Spark closely these past 12 months so things may have changed. @ptkool did you do any profiling that would lead you to believe pushing the filter to Parquet leads to perf improvements? |
ptkool
commented
Jun 27, 2017
@a10y Yes. Please have a look at my comments in https://issues.apache.org/jira/browse/SPARK-21218. |
HyukjinKwon
commented
Jun 28, 2017
(I would like to suggest fix the JIRA in the PR title to point out SPARK-17091) |
rxin
commented
Jun 30, 2017
Have you done actual benchmarks to validate that this is a perf improvement? |
There was a problem hiding this comment.
Always push-down? Should we also consider the number of elements in values? What is the performance impact when the number of values is around 10 or more?
There was a problem hiding this comment.
You can eliminate the var by using reduceLeft
HyukjinKwon
commented
Nov 14, 2017
ok to test |
HyukjinKwon
commented
Nov 14, 2017
Now we will have this for row group filtering in most cases after #15049. I believe it makes sense in this case. |
SparkQA
commented
Nov 14, 2017
Test build #83844 has finished for PR 18424 at commit
|
HyukjinKwon
commented
Nov 14, 2017
I believe I need to cc @jiangxb1987 and @viirya too who activiely reviewed my PR. |
HyukjinKwon
commented
Nov 14, 2017
cc @liancheng too who I know is insightful in this. |
jiangxb1987
commented
Nov 14, 2017
Please rebase this PR to the latest master. Thanks! |
viirya
commented
Nov 16, 2017
I guess this is inactive now. |
a10y
commented
Dec 1, 2017
@ptkool are you still tracking this at all? |
ptkool
commented
Dec 4, 2017
@a10y Yes, I'm still tracking this. |
8c443a7 to
62f273bCompareHyukjinKwon
commented
Jan 1, 2018
ok to test |
SparkQA
commented
Jan 1, 2018
Test build #85573 has finished for PR 18424 at commit
|
HyukjinKwon
commented
Jun 9, 2018
ok to test |
SparkQA
commented
Jun 9, 2018
Test build #91614 has finished for PR 18424 at commit
|
wangyum
commented
Jun 19, 2018
@ptkool Are you still working on? |
HyukjinKwon
commented
Jun 20, 2018
@wangyum, can you take over this? Seems it's been inactive long time. |
…quet filter ## What changes were proposed in this pull request? The original pr is: apache#18424 Add a new optimizer rule to convert an IN predicate to an equivalent Parquet filter and add `spark.sql.parquet.pushdown.inFilterThreshold` to control limit thresholds. Different data types have different limit thresholds, this is a copy of data for reference: Type | limit threshold -- | -- string | 370 int | 210 long | 285 double | 270 float | 220 decimal | Won't provide better performance before [SPARK-24549](https://issues.apache.org/jira/browse/SPARK-24549) ## How was this patch tested? unit tests and manual tests Author: Yuming Wang <yumwang@ebay.com> Closesapache#21603 from wangyum/SPARK-17091.
Closesapache#16411Closesapache#21870Closesapache#21794Closesapache#21610Closesapache#21961Closesapache#21940Closesapache#21870Closesapache#22118Closesapache#21624Closesapache#19528Closesapache#18424Closesapache#22159 from srowen/Stale. Authored-by: Sean Owen <sean.owen@databricks.com> Signed-off-by: Sean Owen <sean.owen@databricks.com>
What changes were proposed in this pull request?
Add a new optimizer rule to convert an IN predicate to an equivalent Parquet filter.
How was this patch tested?
Tested using unit tests, integration tests, and manual tests.