[ 
https://issues.apache.org/jira/browse/FLINK-11276?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rong Rong updated FLINK-11276:
------------------------------
    Description: 
This is the umbrella ticket for the improvement discussion in:
 
[https://docs.google.com/document/d/1ziVsuW_HQnvJr_4a9yKwx_LEnhVkdlde2Z5l6sx5HlY/edit?usp=sharing]
 and the execution plan discussion in:
 
[http://apache-flink-mailing-list-archive.1008284.n3.nabble.com/DISCUSS-Improvement-to-Flink-Window-Operator-with-Slicing-tt25750.html]

This umbrella JIRA focus on the improvement of the existing window operator 
*WITHOUT* changing the public facing API.



  was:
This is the umbrella ticket for the discussion in:
https://docs.google.com/document/d/1ziVsuW_HQnvJr_4a9yKwx_LEnhVkdlde2Z5l6sx5HlY/edit?usp=sharing

We would like to support syntax for more flexible window aggregations:
1. slicing and merging:

{code:java}
val resultStream: DataStream = inputStream
  .keyBy("key")
  .sliceWindow(Time.seconds(5L))       // new “slice window” concept: to 
combine 
                                       // tumble results based on discrete
                                       //  non-overlapping windows.
  .sum("value")
  .slideOver(Count.of(5))              // new “slide over” concept to merge 
                                       // tumble results.
{code}

and 
2. sliding aggregation with multi intervals, such as:

{code:java}
val slicedStream: SlicedStream = inputStream
  .keyBy("key")
  .sliceWindow(Time.seconds(5L))
  .sum("value")
val resultStream1: DataStream = slicedStream
  .slideOver(Time.seconds(10L))        // slide over 5-sec slices 
                                       // for the last 10 seconds
val resultStream2: DataStream = slicedStream
  .slideOver(Count.of(3))              // slide over 5-sec slices 
                                       // for the last 3 slices (15 seconds)
val resultStream3: DataStream = slicedStream
  .slideOver(Count.of(180))            // slide over 5-sec slices 
                                       // for the last 3 slices (15 minutes)
{code}

and
3. replace current sliding window logic with more efficient slice and merge 
approach.


> Slicing Window Optimization
> ---------------------------
>
>                 Key: FLINK-11276
>                 URL: https://issues.apache.org/jira/browse/FLINK-11276
>             Project: Flink
>          Issue Type: New Feature
>          Components: API / DataStream
>    Affects Versions: 1.7.0
>            Reporter: Rong Rong
>            Assignee: Rong Rong
>            Priority: Major
>
> This is the umbrella ticket for the improvement discussion in:
>  
> [https://docs.google.com/document/d/1ziVsuW_HQnvJr_4a9yKwx_LEnhVkdlde2Z5l6sx5HlY/edit?usp=sharing]
>  and the execution plan discussion in:
>  
> [http://apache-flink-mailing-list-archive.1008284.n3.nabble.com/DISCUSS-Improvement-to-Flink-Window-Operator-with-Slicing-tt25750.html]
> This umbrella JIRA focus on the improvement of the existing window operator 
> *WITHOUT* changing the public facing API.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to