[ https://issues.apache.org/jira/browse/FLINK-5280?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15793958#comment-15793958 ]
ASF GitHub Bot commented on FLINK-5280: --------------------------------------- Github user wuchong commented on the issue: https://github.com/apache/flink/pull/3039 Hi @mushketyk , thanks for the updating. Regarding to the `TableSource` , currently, there are 8 `TableSource` interfaces provided to users including trait and abstract class. It is a little hard to choose which one to use to implement a custom table source. What about to implement `TableSource` as abstract class and provide default implementation for `getFieldNames()` and `getFieldsIndices()`. And provide three other abstract class : `BatchTableSource` (with `getDataSet` interface) , `StreamTableSource` (with `getDataStream` interface) and `BatchStreamTableSource` (with both interfaces), they all extend `TableSource`. In this way, we only provide 4 classes to user, the implementers should extend one of the latter three abstract class. What do you think ? > Extend TableSource to support nested data > ----------------------------------------- > > Key: FLINK-5280 > URL: https://issues.apache.org/jira/browse/FLINK-5280 > Project: Flink > Issue Type: Improvement > Components: Table API & SQL > Affects Versions: 1.2.0 > Reporter: Fabian Hueske > Assignee: Ivan Mushketyk > > The {{TableSource}} interface does currently only support the definition of > flat rows. > However, there are several storage formats for nested data that should be > supported such as Avro, Json, Parquet, and Orc. The Table API and SQL can > also natively handle nested rows. > The {{TableSource}} interface and the code to register table sources in > Calcite's schema need to be extended to support nested data. -- This message was sent by Atlassian JIRA (v6.3.4#6332)