Filter predicate should be able to filter on columns not specified in projection pushdown
- Dominant language
- Java
- Stars
- 3.1k
- Forks
- 1.6k
- Avg merge
- 3d 12h
- Merged PRs (30d)
- 33
Description
When using both filter predicate and projection pushdown of columns, the column specified in the filter predicate, should not have to be specified in the projection pushdown.
For example, if I want the first names of students that are over the age of 16, then I should be able to specify ParquetInputFormat.setFilterPredicate(jobConf, IntColumn("age") > 16) and only have to specify ThriftReadSupport.setProjectionPushdown(jobConf, "fname")
**Reporter**: [Tim Chan](https://issues.apache.org/jira/secure/ViewProfile.jspa?name=zzztimbo) / @zzztimbo
**Note**: *This issue was originally created as [PARQUET-295](https://issues.apache.org/jira/browse/PARQUET-295). Please see the [migration documentation](https://issues.apache.org/jira/browse/PARQUET-2502) for further details.*
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with ParquetInputFormat.setFilterPredicate and ThriftReadSupport.setProjectionPushdown, using the example in the issue to trace how projected columns and filter columns are handled together. The work is done when a projection containing only fname can still filter on age > 16, with coverage for that behavior added to the relevant existing tests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- data
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100