You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "Rong Rong (JIRA)" <ji...@apache.org> on 2019/02/15 21:54:00 UTC

[jira] [Updated] (FLINK-11454) Support MergedStream operation

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

Rong Rong updated FLINK-11454:
------------------------------
    Description: 
{{Following SlicedStream, the mergedStream operator merges results from sliced stream and produces windowing results.
{code:java}
val slicedStream: SlicedStream = inputStream
  .keyBy("key")
  .sliceWindow(Time.seconds(5L))       // new “slice window” concept: to combine 
                                       // tumble results based on discrete
                                       // non-overlapping windows.
  .aggregate(aggFunc)

val mergedStream1: MergedStream = slicedStream
  .slideOver(Time.second(10L))         // combine slice results with same                
                                       // windowing function, equivalent to 
                                       // WindowOperator with an aggregate state 
                                       // and derived aggregate function.

val mergedStream2: MergedStream = slicedStream
  .slideOver(Count.of(5))
  .apply(windowFunction)               // apply a different window function over  
                                       // the sliced results.{code}
MergedStream are produced by MergeOperator:
{{slideOver}} and {{apply}} can be combined into a {{OVER AGGREGATE}} implementation similar to the one in TableAPI.

  was:
Following SlicedStream, the mergedStream operator merges results from sliced stream and produces windowing results.
{code:java}
val slicedStream: SlicedStream = inputStream
  .keyBy("key")
  .sliceWindow(Time.seconds(5L))       // new “slice window” concept: to combine 
                                       // tumble results based on discrete
                                       // non-overlapping windows.
  .aggregate(aggFunc)

val mergedStream1: MergedStream = slicedStream
  .slideOver(Time.second(10L))         // combine slice results with same                
                                       // windowing function, equivalent to 
                                       // WindowOperator with an aggregate state 
                                       // and derived aggregate function.

val mergedStream2: MergedStream = slicedStream
  .slideOver(Count.of(5))
  .apply(windowFunction)               // apply a different window function over  
                                       // the sliced results.{code}
MergedStream are produced by MergeOperator:
`slideOver` and `apply` can be combined into a `OVER AGGREGATE` implementation similar to the one in TableAPI.


> Support MergedStream operation
> ------------------------------
>
>                 Key: FLINK-11454
>                 URL: https://issues.apache.org/jira/browse/FLINK-11454
>             Project: Flink
>          Issue Type: Sub-task
>          Components: DataStream API
>            Reporter: Rong Rong
>            Assignee: Rong Rong
>            Priority: Major
>
> {{Following SlicedStream, the mergedStream operator merges results from sliced stream and produces windowing results.
> {code:java}
> val slicedStream: SlicedStream = inputStream
>   .keyBy("key")
>   .sliceWindow(Time.seconds(5L))       // new “slice window” concept: to combine 
>                                        // tumble results based on discrete
>                                        // non-overlapping windows.
>   .aggregate(aggFunc)
> val mergedStream1: MergedStream = slicedStream
>   .slideOver(Time.second(10L))         // combine slice results with same                
>                                        // windowing function, equivalent to 
>                                        // WindowOperator with an aggregate state 
>                                        // and derived aggregate function.
> val mergedStream2: MergedStream = slicedStream
>   .slideOver(Count.of(5))
>   .apply(windowFunction)               // apply a different window function over  
>                                        // the sliced results.{code}
> MergedStream are produced by MergeOperator:
> {{slideOver}} and {{apply}} can be combined into a {{OVER AGGREGATE}} implementation similar to the one in TableAPI.



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