Lee moon soo created ZEPPELIN-753: ------------------------------------- Summary: ZeppelinTableData: Abstracts different table data set of underlying computing framework. Key: ZEPPELIN-753 URL: https://issues.apache.org/jira/browse/ZEPPELIN-753 Project: Zeppelin Issue Type: New Feature Reporter: Lee moon soo
Zeppelin interacts multiple different computing framework through Interpreter. Each underlying computing framework has their own representation of table data. like DataFrame in Spark, ResultSet in Jdbc. If Zeppelin abstracts those different of table data representation and provide unified API for accessing them, that would be really useful. I'm proposing introduce an abstract class that provides api for underlying data access. such as {code} public abstract class ZeppelinData { public abstract Column [] getColumns(); public abstract Row getNextRow(); ... } {code} Then each interpreter can implements this class. For example SparkSql interpreter can implement it for DataFrame, {code} public class ZeppelinDataFrame extends ZeppelinData { public ZeppelinDataFrame(Dataframe sparkDataFrame) { ... } public Column[] getColumns() { .... } ... {code} And after each interprete() call, interpreter can create ZeppelinDataFrame from it's DataFrame result, and put it into the ResourcePool. Then any other part of Zeppelin component, for example RestAPI end point can access this data, with unified API. -- This message was sent by Atlassian JIRA (v6.3.4#6332)