[ 
https://issues.apache.org/jira/browse/SAMZA-552?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14344379#comment-14344379
 ] 

Geoffry Sumter commented on SAMZA-552:
--------------------------------------

Controlling retention with event time works fine, I think, as long as you don't 
have interleaving of streams? A step where one stream provides messages to many 
partitions in another topic can remove the independence of steps. If your state 
is relatively small, this isn't such a big deal, you can just have an extra 
long retention period (long enough to cover the skew and late data). But if 
your state is large, this seems like it would get problematic. Diagram: 
http://i.imgur.com/DTmfvad.jpg?1

I can provide a more concrete example of my concerns if it would help.

> Tuple or time window semantics in physical operator
> ---------------------------------------------------
>
>                 Key: SAMZA-552
>                 URL: https://issues.apache.org/jira/browse/SAMZA-552
>             Project: Samza
>          Issue Type: Sub-task
>          Components: sql
>    Affects Versions: 0.9.0
>            Reporter: Yi Pan (Data Infrastructure)
>            Assignee: Yi Pan (Data Infrastructure)
>         Attachments: DESIGN-SAMZA-552-3.md, DESIGN-SAMZA-552-3.pdf
>
>
> The discussion is based on how to support tuple and/or time based window 
> operators in Samza physical operator layer.
> Here are the few observations:
> # Tuple represents the “physical ordering” of events while time-based window 
> has semantic meanings to users
> # Total ordering between tuples are possible within Samza/Kafka given a 
> deterministic MessageSelector on all input streams and offsets within each 
> stream
> # No matter whether tuple or time is used to measure the window size, the 
> window termination condition is needed to close a window to avoid the job to 
> be wedged forever
> The following questions have to be answered to fully implement a window 
> operator:
> # how to determine that a window is closed and no new tuples will be added?
> ## For tuple based, how do we close the window if messages do not come or get 
> delayed?
> ## For time based, how do we close the window if
> ### the messages are not strictly in order w/ the time?
> ### the message w/ timestamp greater than the window boundary does not come 
> or gets delayed?



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to