...
Code Block | ||
---|---|---|
| ||
/**
* {@link PartitionWindowedStream} represents a data stream that collects all
* records of each partition separately into a full window. Window emission will
* be triggered at the end of inputs. A partition contains all records of a subtask
* for non-keyed DataStream and contains all records of a key for {@link KeyedStream}.
*
* @param <T> The type of the elements in this stream.
*/
public class PartitionWindowedStream<T> extends DataStream<T> {
...
} |
API Implementation
...
Code Block | ||
---|---|---|
| ||
public class PartitionWindowedStream<T> extends DataStream<T> { /** * Process the records of the window by {@link MapPartitionFunction}. The * records will be available in the given {@link Iterator} function * parameter of {@link MapPartitionFunction}. * * @param mapPartitionFunction The {@link MapPartitionFunction} that is * called for the records in the full window. * @return The resulting data stream. * @param <R> The type of the elements in the resulting stream, equal to the * MapPartitionFunction's result type. */ public <R> DataStream<R> mapPartition(MapPartitionFunction<T, R> mapPartitionFunction) { ... } } |
...
Code Block | ||
---|---|---|
| ||
public class PartitionWindowedStream<T> extends DataStream<T> {
/**
* Sorts the records of the window on the specified field in the
* specified order. The type of records must be {@link Tuple}.
*
* @param field The field index on which records is sorted.
* @param order The order in which records is sorted.
* @return The resulting data stream with sorted records in each subtask.
*/
public DataStream<T> sortPartition(int field, Order order) {
...
}
/**
* Sorts the records of the window on the specified field in the
* specified order. The type of records must be {@link Tuple} or POJO
* class. The POJO class must be public and have getter and setter methods
* for each field. It mustn't implement any interfaces or extend any
* classes.
*
* @param field The field expression referring to the field on which
* records is sorted.
* @param order The order in which records is sorted.
* @return The resulting data stream with sorted records in each subtask.
*/
public DataStream<T> sortPartition(String field, Order order) {
...
}
/**
* Sorts the records of the window on the extracted key in the specified order.
*
* @param keySelector The KeySelector function which extracts the key
* from records.
* @param order The order in which records is sorted.
* @return The resulting data stream with sorted records in each subtask.
*/
public <K> DataStream<T> sortPartition(KeySelector<T, K> keySelector, Order order) {
...
}
} |
...
Code Block | ||
---|---|---|
| ||
public class PartitionWindowedStream<T> extends DataStream<T> {
/**
* Applies the given aggregate function to the records of the window. The
* aggregate function is called for each element, aggregating values
* incrementally in the window.
*
* @param aggregateFunction The aggregation function.
* @return The resulting data stream.
* @param <ACC> The type of the AggregateFunction's accumulator.
* @param <R> The type of the elements in the resulting stream, equal to
* the AggregateFunction's result type.
*/
public <ACC, R> DataStream<R> aggregate(AggregateFunction<T, ACC, R> aggregateFunction) {
...
}
}
|
...
Code Block | ||
---|---|---|
| ||
public class PartitionWindowedStream<T> extends DataStream<T> {
/**
* Applies a reduce transformation on the records of the window. The
* {@link ReduceFunction} will be called for every record in the window.
*
* @param reduceFunction The reduce function.
* @return The resulting data stream.
*/
public DataStream<T> reduce(ReduceFunction<T> reduceFunction) {
...
}
}
|
...