本文简要介绍 python 语言中 pyflink.datastream.WindowedStream.aggregate
的用法。
用法:
aggregate(aggregate_function: pyflink.datastream.functions.AggregateFunction, window_function: Union[pyflink.datastream.functions.WindowFunction, pyflink.datastream.functions.ProcessWindowFunction] = None, accumulator_type: pyflink.common.typeinfo.TypeInformation = None, output_type: pyflink.common.typeinfo.TypeInformation = None) → pyflink.datastream.data_stream.DataStream
将给定的窗口函数应用于每个窗口。每次对每个键的窗口进行评估时,都会调用窗口函数。窗口函数的输出被解释为常规的非窗口流。
使用给定的聚合函数对到达的数据进行增量聚合。这意味着窗口函数在调用时通常只有一个值要处理。
例子:
>>> class AverageAggregate(AggregateFunction): ... def create_accumulator(self) -> Tuple[int, int]: ... return 0, 0 ... ... def add(self, value: Tuple[str, int], accumulator: Tuple[int, int]) \ ... -> Tuple[int, int]: ... return accumulator[0] + value[1], accumulator[1] + 1 ... ... def get_result(self, accumulator: Tuple[int, int]) -> float: ... return accumulator[0] / accumulator[1] ... ... def merge(self, a: Tuple[int, int], b: Tuple[int, int]) -> Tuple[int, int]: ... return a[0] + b[0], a[1] + b[1] >>> ds.key_by(lambda x: x[1]) \ ... .window(TumblingEventTimeWindows.of(Time.seconds(5))) \ ... .aggregate(AverageAggregate(), ... accumulator_type=Types.TUPLE([Types.LONG(), Types.LONG()]), ... output_type=Types.DOUBLE())
参数:
aggregate_function- 用于增量聚合的聚合函数。
window_function- 窗口函数。
accumulator_type- 聚合函数的内部累加器类型的类型信息。
output_type- 窗口函数的结果类型的类型信息。
返回:
将窗口函数应用于窗口的结果的数据流。
版本 1.16.0 中的新函数。
相关用法
- Python pyflink WindowedStream.reduce用法及代码示例
- Python pyflink WindowedStream.side_output_late_data用法及代码示例
- Python pyflink WindowGroupedTable.aggregate用法及代码示例
- Python pyflink WindowGroupedTable.select用法及代码示例
- Python pyflink WatermarkStrategy.with_timestamp_assigner用法及代码示例
- Python pyflink Table.intersect_all用法及代码示例
- Python pyflink GroupedTable.select用法及代码示例
- Python pyflink StreamTableEnvironment.from_data_stream用法及代码示例
- Python pyflink Expression.to_date用法及代码示例
- Python pyflink Table.fetch用法及代码示例
- Python pyflink PulsarSourceBuilder用法及代码示例
- Python pyflink TableEnvironment.create_temporary_function用法及代码示例
- Python pyflink Table.right_outer_join用法及代码示例
- Python pyflink Expression.json_value用法及代码示例
- Python pyflink Table.distinct用法及代码示例
- Python pyflink TableEnvironment.register_table_source用法及代码示例
- Python pyflink Table.where用法及代码示例
- Python pyflink Expression.end用法及代码示例
- Python pyflink lit用法及代码示例
- Python pyflink TableEnvironment.create_java_temporary_function用法及代码示例
- Python pyflink Row.as_dict用法及代码示例
- Python pyflink StreamTableEnvironment.create用法及代码示例
- Python pyflink Table.drop_columns用法及代码示例
- Python pyflink Expression.over用法及代码示例
- Python pyflink Table.execute用法及代码示例
注:本文由纯净天空筛选整理自apache.org大神的英文原创作品 pyflink.datastream.WindowedStream.aggregate。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。