public class FlinkMergingNonShuffleReduceFunction<K,InputT,AccumT,OutputT,W extends org.apache.beam.sdk.transforms.windowing.BoundedWindow>
extends org.apache.flink.api.common.functions.RichGroupReduceFunction<org.apache.beam.sdk.util.WindowedValue<org.apache.beam.sdk.values.KV<K,InputT>>,org.apache.beam.sdk.util.WindowedValue<org.apache.beam.sdk.values.KV<K,OutputT>>>
FlinkReduceFunction that supports merging windows.
This is different from the pair of function for the non-merging windows case in that we cannot do combining before the shuffle because elements would not yet be in their correct windows for side-input access.
| Constructor and Description |
|---|
FlinkMergingNonShuffleReduceFunction(org.apache.beam.sdk.transforms.CombineFnBase.GlobalCombineFn<InputT,AccumT,OutputT> combineFn,
org.apache.beam.sdk.values.WindowingStrategy<java.lang.Object,W> windowingStrategy,
java.util.Map<org.apache.beam.sdk.values.PCollectionView<?>,org.apache.beam.sdk.values.WindowingStrategy<?,?>> sideInputs,
org.apache.beam.sdk.options.PipelineOptions pipelineOptions) |
| Modifier and Type | Method and Description |
|---|---|
void |
open(org.apache.flink.configuration.Configuration parameters) |
void |
reduce(java.lang.Iterable<org.apache.beam.sdk.util.WindowedValue<org.apache.beam.sdk.values.KV<K,InputT>>> elements,
org.apache.flink.util.Collector<org.apache.beam.sdk.util.WindowedValue<org.apache.beam.sdk.values.KV<K,OutputT>>> out) |
public FlinkMergingNonShuffleReduceFunction(org.apache.beam.sdk.transforms.CombineFnBase.GlobalCombineFn<InputT,AccumT,OutputT> combineFn, org.apache.beam.sdk.values.WindowingStrategy<java.lang.Object,W> windowingStrategy, java.util.Map<org.apache.beam.sdk.values.PCollectionView<?>,org.apache.beam.sdk.values.WindowingStrategy<?,?>> sideInputs, org.apache.beam.sdk.options.PipelineOptions pipelineOptions)
public void open(org.apache.flink.configuration.Configuration parameters)
open in interface org.apache.flink.api.common.functions.RichFunctionopen in class org.apache.flink.api.common.functions.AbstractRichFunctionpublic void reduce(java.lang.Iterable<org.apache.beam.sdk.util.WindowedValue<org.apache.beam.sdk.values.KV<K,InputT>>> elements, org.apache.flink.util.Collector<org.apache.beam.sdk.util.WindowedValue<org.apache.beam.sdk.values.KV<K,OutputT>>> out) throws java.lang.Exception
reduce in interface org.apache.flink.api.common.functions.GroupReduceFunction<org.apache.beam.sdk.util.WindowedValue<org.apache.beam.sdk.values.KV<K,InputT>>,org.apache.beam.sdk.util.WindowedValue<org.apache.beam.sdk.values.KV<K,OutputT>>>reduce in class org.apache.flink.api.common.functions.RichGroupReduceFunction<org.apache.beam.sdk.util.WindowedValue<org.apache.beam.sdk.values.KV<K,InputT>>,org.apache.beam.sdk.util.WindowedValue<org.apache.beam.sdk.values.KV<K,OutputT>>>java.lang.Exception