Package org.apache.flink.state.api
Class OneInputStateTransformation<T>
- java.lang.Object
-
- org.apache.flink.state.api.OneInputStateTransformation<T>
-
- Type Parameters:
T- The type of the elements in this operator.
@PublicEvolving public class OneInputStateTransformation<T> extends Object
OneInputStateTransformationrepresents a user defined transformation applied on anOperatorTransformationwith one input.
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description KeyedStateTransformation<org.apache.flink.api.java.tuple.Tuple,T>keyBy(int... fields)Partitions the operator state of aOperatorTransformationby the given key positions.KeyedStateTransformation<org.apache.flink.api.java.tuple.Tuple,T>keyBy(String... fields)Partitions the operator state of aOperatorTransformationusing field expressions.<K> KeyedStateTransformation<K,T>keyBy(org.apache.flink.api.java.functions.KeySelector<T,K> keySelector)It creates a newKeyedOperatorTransformationthat uses the provided key for partitioning its operator states.<K> KeyedStateTransformation<K,T>keyBy(org.apache.flink.api.java.functions.KeySelector<T,K> keySelector, org.apache.flink.api.common.typeinfo.TypeInformation<K> keyType)It creates a newKeyedOperatorTransformationthat uses the provided key with explicit type information for partitioning its operator states.OneInputStateTransformation<T>setMaxParallelism(int maxParallelism)Sets the maximum parallelism of this operator.StateBootstrapTransformation<T>transform(BroadcastStateBootstrapFunction<T> processFunction)Applies the givenBroadcastStateBootstrapFunctionon the non-keyed input.StateBootstrapTransformation<T>transform(StateBootstrapFunction<T> processFunction)Applies the givenStateBootstrapFunctionon the non-keyed input.StateBootstrapTransformation<T>transform(SavepointWriterOperatorFactory factory)Method for passing user defined operators along with the type information that will transform the OperatorTransformation.
-
-
-
Method Detail
-
setMaxParallelism
@PublicEvolving public OneInputStateTransformation<T> setMaxParallelism(int maxParallelism)
Sets the maximum parallelism of this operator.The maximum parallelism specifies the upper bound for dynamic scaling. It also defines the number of key groups used for partitioned state.
- Parameters:
maxParallelism- Maximum parallelism- Returns:
- The operator with set maximum parallelism
-
transform
public StateBootstrapTransformation<T> transform(StateBootstrapFunction<T> processFunction)
Applies the givenStateBootstrapFunctionon the non-keyed input.The function will be called for every element in the input and can be used for writing operator state into a
Savepoint.- Parameters:
processFunction- TheStateBootstrapFunctionthat is called for each element.- Returns:
- An
OperatorTransformationthat can be added to aSavepoint.
-
transform
public StateBootstrapTransformation<T> transform(BroadcastStateBootstrapFunction<T> processFunction)
Applies the givenBroadcastStateBootstrapFunctionon the non-keyed input.The function will be called for every element in the input and can be used for writing broadcast state into a
Savepoint.- Parameters:
processFunction- TheBroadcastStateBootstrapFunctionthat is called for each element.- Returns:
- An
StateBootstrapTransformationthat can be added to aSavepoint.
-
transform
public StateBootstrapTransformation<T> transform(SavepointWriterOperatorFactory factory)
Method for passing user defined operators along with the type information that will transform the OperatorTransformation.IMPORTANT: Any output from this operator will be discarded.
- Parameters:
factory- A factory returning transformation logic type of the return stream- Returns:
- An
StateBootstrapTransformationthat can be added to aSavepoint.
-
keyBy
public <K> KeyedStateTransformation<K,T> keyBy(org.apache.flink.api.java.functions.KeySelector<T,K> keySelector)
It creates a newKeyedOperatorTransformationthat uses the provided key for partitioning its operator states.- Parameters:
keySelector- The KeySelector to be used for extracting the key for partitioning.- Returns:
- The
BootstrapTransformationwith partitioned state.
-
keyBy
public <K> KeyedStateTransformation<K,T> keyBy(org.apache.flink.api.java.functions.KeySelector<T,K> keySelector, org.apache.flink.api.common.typeinfo.TypeInformation<K> keyType)
It creates a newKeyedOperatorTransformationthat uses the provided key with explicit type information for partitioning its operator states.- Parameters:
keySelector- The KeySelector to be used for extracting the key for partitioning.keyType- The type information describing the key type.- Returns:
- The
BootstrapTransformationwith partitioned state.
-
keyBy
public KeyedStateTransformation<org.apache.flink.api.java.tuple.Tuple,T> keyBy(int... fields)
Partitions the operator state of aOperatorTransformationby the given key positions.- Parameters:
fields- The position of the fields on which theOperatorTransformationwill be grouped.- Returns:
- The
OperatorTransformationwith partitioned state.
-
keyBy
public KeyedStateTransformation<org.apache.flink.api.java.tuple.Tuple,T> keyBy(String... fields)
Partitions the operator state of aOperatorTransformationusing field expressions. A field expression is either the name of a public field or a getter method with parentheses of theOperatorTransformation's underlying type. A dot can be used to drill down into objects, as in"field1.getInnerField2()".- Parameters:
fields- One or more field expressions on which the state of theOperatorTransformationoperators will be partitioned.- Returns:
- The
OperatorTransformationwith partitioned state (i.e. KeyedStream)
-
-