> On Jan. 28, 2015, 12:30 a.m., Chris Riccomini wrote:
> > samza-sql/src/main/java/org/apache/samza/sql/om/FieldReference.java, line 29
> > <https://reviews.apache.org/r/30287/diff/1/?file=834473#file834473line29>
> >
> >     Should we consider referencing streams from different systems? 
> > "kafka.PageViewEvent.member_id"? Samza-core allows for multiple systems 
> > within a single job.

This is a good idea. I'll try to incoporate this into the object model.


> 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.

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.


> On Jan. 28, 2015, 12:30 a.m., Chris Riccomini wrote:
> > samza-sql/src/main/java/org/apache/samza/sql/om/OrderByExpression.java, 
> > line 29
> > <https://reviews.apache.org/r/30287/diff/1/?file=834478#file834478line29>
> >
> >     What happens if new OrderByExpression() is called, and no fields are 
> > ever added?

In this case, addOrderByField should be called. But we can get rid of this. 
Initial intension was to support adding orderby field later. But this may never 
come up in a real use case.


- Milinda


-----------------------------------------------------------
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