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

ASF GitHub Bot commented on FLINK-4937:
---------------------------------------

Github user sunjincheng121 commented on a diff in the pull request:

    https://github.com/apache/flink/pull/2792#discussion_r89012878
  
    --- Diff: 
flink-libraries/flink-table/src/main/scala/org/apache/flink/api/table/runtime/aggregate/AggregateMapFunction.scala
 ---
    @@ -30,9 +30,9 @@ class AggregateMapFunction[IN, OUT](
         private val groupingKeys: Array[Int],
         @transient private val returnType: TypeInformation[OUT])
         extends RichMapFunction[IN, OUT] with ResultTypeQueryable[OUT] {
    -  
    --- End diff --
    
    yes,i will do it .
    By the way Can we declare the style of the uniform Class / Object / Trait / 
Method as shown in the following example?
    
    1. Class/Object/Trait put each constructor argument on its own line, 
indented four spaces:
    If a class/object/trait extends anything, put each constructor argument on 
its own line, indented four spaces and two spaces for extensions:
    
    // wrong!
    '''
    class DataStreamAggregate(
      window: LogicalWindow,
      namedProperties: Seq[NamedWindowProperty],
      cluster: RelOptCluster,
      traitSet: RelTraitSet,
      inputNode: RelNode,
      namedAggregates: Seq[CalcitePair[AggregateCall, String]],
      rowRelDataType: RelDataType,
      inputType: RelDataType,
      grouping: Array[Int])
      extends SingleRel(cluster, traitSet, inputNode)
              with FlinkAggregate
              with DataStreamRel {
    '''
    
    // right!
    '''
    class DataStreamAggregate(
        window: LogicalWindow,
        namedProperties: Seq[NamedWindowProperty],
        cluster: RelOptCluster,
        traitSet: RelTraitSet,
        inputNode: RelNode,
        namedAggregates: Seq[CalcitePair[AggregateCall, String]],
        rowRelDataType: RelDataType,
        inputType: RelDataType,
        grouping: Array[Int])
      extends SingleRel(cluster, traitSet, inputNode)
      with FlinkAggregate
      with DataStreamRel {
      '''
    
    2. Methods with Numerous Arguments  indented two spaces from the current 
indent level:
    
    // wrong!
    '''private[flink] def createIncrementalAggregateReduceFunction(
           aggregates: Array[Aggregate[_ <: Any]],
           namedAggregates: Seq[CalcitePair[AggregateCall, String]],
           inputType: RelDataType,
           outputType: RelDataType,
           groupings: Array[Int]): IncrementalAggregateReduceFunction = {
     '''
    
    // right!
     '''
     private[flink] def createIncrementalAggregateReduceFunction(
       aggregates: Array[Aggregate[_ <: Any]],
       namedAggregates: Seq[CalcitePair[AggregateCall, String]],
       inputType: RelDataType,
       outputType: RelDataType,
       groupings: Array[Int]): IncrementalAggregateReduceFunction = {
    
     '''


> Add incremental group window aggregation for streaming Table API
> ----------------------------------------------------------------
>
>                 Key: FLINK-4937
>                 URL: https://issues.apache.org/jira/browse/FLINK-4937
>             Project: Flink
>          Issue Type: Sub-task
>          Components: Table API & SQL
>    Affects Versions: 1.2.0
>            Reporter: Fabian Hueske
>            Assignee: sunjincheng
>
> Group-window aggregates for streaming tables are currently not done in an 
> incremental fashion. This means that the window collects all records and 
> performs the aggregation when the window is closed instead of eagerly 
> updating a partial aggregate for every added record. Since records are 
> buffered, non-incremental aggregation requires more storage space than 
> incremental aggregation.
> The DataStream API which is used under the hood of the streaming Table API 
> features [incremental 
> aggregation|https://ci.apache.org/projects/flink/flink-docs-release-1.2/dev/windows.html#windowfunction-with-incremental-aggregation]
>  using a {{ReduceFunction}}.
> We should add support for incremental aggregation in group-windows.
> This is a follow-up task of FLINK-4691.



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

Reply via email to