2017-12-23 20 views
2

있는가 AggregateResult 객체 그래서 끝나는 스트림은 SingleOutputStreamOperator 유형입니다.1.4 아파치 FLINK에 foldLeft 연산자 상당 다음 윈도우 다음</p>가 <p>집계 동작의 출력을 집계 keyBy I는 다음의 데이터 스트림 이 사용 아파치 FLINK 1.4 시작 같은 스트림을 설정 한 데이터 스트림

내가하고 싶은 것은 scala foldLeft와 같습니다. 해당 기능을 제공하는 운영자가 있습니까?

감사

답변

1

FLINK 1.4은 foldLeft과 유사하다 AggregateFunction 제공합니다.

API of the AggregateFunction은 다음과 같이 작동합니다. createAccumulator() 방법에서 초기 값 (또는 시작 값)이 정의됩니다. 누적 기는 부분적으로 집계 된 값을 보유합니다. 값은 add() 메서드를 사용하여 누산기에 집계됩니다. 마지막으로 결과는 accumulator로부터 getResult() 메소드로 계산됩니다.

foldLeft과의 차이는 AggregateFunctionmerge() 방법을 통해 누적 기 (부분 집합체)를 병합 할 수 있다는 것입니다. 부분 집계를 병합하는 기능은 일부 창 유형 (세션 창)에 필요하며 특정 최적화에 유용합니다.