[ 
https://issues.apache.org/jira/browse/BEAM-8343?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kirill Kozlov updated BEAM-8343:
--------------------------------
    Description: 
The objective is to create a universal way for Beam SQL IO APIs to support 
predicate/project push-down.
 A proposed way to achieve that is by introducing an interface responsible for 
identifying what portion(s) of a Calc can be moved down to IO layer. Also, 
adding following methods to a BeamSqlTable interface to pass necessary 
parameters to IO APIs:
 - BeamSqlTableFilter supportsFilter(RexProgram program, RexNode filter)
 - Boolean supportsProjects()
 - PCollection<Row> buildIOReader(PBegin begin, BeamSqlTableFilter filters, 
List<String> fieldNames)
  

Design doc 
[link|https://docs.google.com/document/d/1-ysD7U7qF3MAmSfkbXZO_5PLJBevAL9bktlLCerd_jE/edit?usp=sharing].

  was:
The objective is to create a universal way for Beam SQL IO APIs to support 
predicate/project push-down.
A proposed way to achieve that is by introducing an interface responsible for 
identifying what portion(s) of a Calc can be moved down to IO layer. Also, 
adding following methods to a BeamSqlTable interface to pass necessary 
parameters to IO APIs:
- BeamSqlTableFilter supportsFilter(RexProgram program, RexNode filter)
- Boolean supportsProjects()
- PCollection<Row> buildIOReader(PBegin begin, BeamSqlTableFilter filters, 
List<String> fieldNames)
 

Design doc 
[link|https://docs.google.com/document/d/1-ysD7U7qF3MAmSfkbXZO_5PLJBevAL9bktlLCerd_jE/edit?usp=sharing].


> Add means for IO APIs to support predicate and/or project push-down when 
> running SQL pipelines
> ----------------------------------------------------------------------------------------------
>
>                 Key: BEAM-8343
>                 URL: https://issues.apache.org/jira/browse/BEAM-8343
>             Project: Beam
>          Issue Type: New Feature
>          Components: dsl-sql
>            Reporter: Kirill Kozlov
>            Assignee: Kirill Kozlov
>            Priority: Major
>          Time Spent: 40m
>  Remaining Estimate: 0h
>
> The objective is to create a universal way for Beam SQL IO APIs to support 
> predicate/project push-down.
>  A proposed way to achieve that is by introducing an interface responsible 
> for identifying what portion(s) of a Calc can be moved down to IO layer. 
> Also, adding following methods to a BeamSqlTable interface to pass necessary 
> parameters to IO APIs:
>  - BeamSqlTableFilter supportsFilter(RexProgram program, RexNode filter)
>  - Boolean supportsProjects()
>  - PCollection<Row> buildIOReader(PBegin begin, BeamSqlTableFilter filters, 
> List<String> fieldNames)
>   
> Design doc 
> [link|https://docs.google.com/document/d/1-ysD7U7qF3MAmSfkbXZO_5PLJBevAL9bktlLCerd_jE/edit?usp=sharing].



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to