> On Jan. 28, 2015, 12:30 a.m., Chris Riccomini wrote:
> > samza-sql/src/main/java/org/apache/samza/sql/om/FromExpression.java, line 28
> > <https://reviews.apache.org/r/30287/diff/1/?file=834474#file834474line28>
> >
> >     This class is a little confusing to me. 1) it doesn't extend 
> > expression. 2) It seems odd to have join as part of 'from', as opposed to 
> > its own independent OM representation.
> 
> Milinda Pathirage wrote:
>     Yi also raise a similar issue. I think FromExpression should be 
> FromClause (If we are keeping it). And for join we can think join as a data 
> source. So a data source can be a stream, a table, a time varying relation or 
> a join. And if we do that, we don't need FromExpression. So I think this can 
> be a better solution.

I still like what you have put in the example, which allows a from() method to 
add data sources. We may not need the class FromExpression though.


- Yi


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/30287/#review69922
-----------------------------------------------------------


On Jan. 26, 2015, 10:04 p.m., Milinda Pathirage wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/30287/
> -----------------------------------------------------------
> 
> (Updated Jan. 26, 2015, 10:04 p.m.)
> 
> 
> Review request for samza, Chris Riccomini and Yi Pan (Data Infrastructure).
> 
> 
> Repository: samza
> 
> 
> Description
> -------
> 
> WIP: Stream SQL Object Model 
> 
> Overview view of the design:
> 
> There are three main types of objects in this model
> 
> * Expression: Can be a reference to a column of a table or a field of a tuple 
> or a property of a nested data structure, a arithmetic expression, a logical 
> expression, a function or expressions that can be used in where clauses, 
> having clauses, field based window clauses  
> * DataSource: Data source can be a stream, a table or a time varying relation 
> results from applying a window operator to a stream. (**I'm not sure whether 
> DataSource is the correct naming. We need to discuss this.**)
> * Statement: Stream SQL statements like SELECT, INSERT and UPDATE
> 
> Then we have a simple factory (**StreamSQLFactory**) which creates different 
> types of expressions. And I have implemented a fluent style API for 
> **Select** to demonstrate how building a query using this OM will looks like. 
> Two examples queries can be found in **StreamSQLSamples**.
> 
> This is the first draft. Please feel free to comment on this. 
> 
> 
> Diffs
> -----
> 
>   build.gradle 7a40ad4 
>   gradle/wrapper/gradle-wrapper.properties 78596c0 
>   samza-sql/src/main/java/org/apache/samza/sql/om/AbstractDataSource.java 
> PRE-CREATION 
>   samza-sql/src/main/java/org/apache/samza/sql/om/AbstractExpression.java 
> PRE-CREATION 
>   samza-sql/src/main/java/org/apache/samza/sql/om/AliasedExpression.java 
> PRE-CREATION 
>   samza-sql/src/main/java/org/apache/samza/sql/om/ArithmeticExpression.java 
> PRE-CREATION 
>   samza-sql/src/main/java/org/apache/samza/sql/om/CompareExpression.java 
> PRE-CREATION 
>   samza-sql/src/main/java/org/apache/samza/sql/om/FieldReference.java 
> PRE-CREATION 
>   samza-sql/src/main/java/org/apache/samza/sql/om/FromExpression.java 
> PRE-CREATION 
>   samza-sql/src/main/java/org/apache/samza/sql/om/FunctionExpressions.java 
> PRE-CREATION 
>   samza-sql/src/main/java/org/apache/samza/sql/om/Literal.java PRE-CREATION 
>   samza-sql/src/main/java/org/apache/samza/sql/om/LogicalExpression.java 
> PRE-CREATION 
>   samza-sql/src/main/java/org/apache/samza/sql/om/OrderByExpression.java 
> PRE-CREATION 
>   samza-sql/src/main/java/org/apache/samza/sql/om/OrderByField.java 
> PRE-CREATION 
>   samza-sql/src/main/java/org/apache/samza/sql/om/PartitionByExpression.java 
> PRE-CREATION 
>   samza-sql/src/main/java/org/apache/samza/sql/om/Select.java PRE-CREATION 
>   samza-sql/src/main/java/org/apache/samza/sql/om/Stream.java PRE-CREATION 
>   samza-sql/src/main/java/org/apache/samza/sql/om/StreamSQLFactory.java 
> PRE-CREATION 
>   samza-sql/src/main/java/org/apache/samza/sql/om/Table.java PRE-CREATION 
>   samza-sql/src/main/java/org/apache/samza/sql/om/TimeBasedWindow.java 
> PRE-CREATION 
>   samza-sql/src/main/java/org/apache/samza/sql/om/TimeVaryingRelation.java 
> PRE-CREATION 
>   samza-sql/src/main/java/org/apache/samza/sql/om/TupleBasedWindow.java 
> PRE-CREATION 
>   samza-sql/src/main/java/org/apache/samza/sql/om/WindowExpression.java 
> PRE-CREATION 
>   samza-sql/src/main/java/org/apache/samza/sql/om/api/DataSource.java 
> PRE-CREATION 
>   samza-sql/src/main/java/org/apache/samza/sql/om/api/Expression.java 
> PRE-CREATION 
>   samza-sql/src/main/java/org/apache/samza/sql/om/api/Statement.java 
> PRE-CREATION 
>   samza-sql/src/test/java/org/apache/samza/sql/om/StreamSQLSamples.java 
> PRE-CREATION 
>   settings.gradle 3a01fd6 
> 
> Diff: https://reviews.apache.org/r/30287/diff/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Milinda Pathirage
> 
>

Reply via email to