Package org.apache.flink.state.forst
Class ForStMapState<K,N,UK,UV>
- java.lang.Object
-
- org.apache.flink.runtime.state.v2.AbstractKeyedState<K,N,V>
-
- org.apache.flink.runtime.state.v2.AbstractMapState<K,N,UK,UV>
-
- org.apache.flink.state.forst.ForStMapState<K,N,UK,UV>
-
- Type Parameters:
K- The type of the key.N- The type of the namespace.UK- The type of the user key.UV- The type of the user value.
- All Implemented Interfaces:
org.apache.flink.api.common.state.v2.MapState<UK,UV>,org.apache.flink.api.common.state.v2.State,org.apache.flink.runtime.state.v2.internal.InternalKeyedState<K,N,UV>,org.apache.flink.runtime.state.v2.internal.InternalMapState<K,N,UK,UV>,org.apache.flink.runtime.state.v2.internal.InternalPartitionedState<N>,ForStInnerTable<K,N,UV>
public class ForStMapState<K,N,UK,UV> extends org.apache.flink.runtime.state.v2.AbstractMapState<K,N,UK,UV> implements org.apache.flink.api.common.state.v2.MapState<UK,UV>, ForStInnerTable<K,N,UV>
TheAbstractMapStateimplement for ForStDB.
-
-
Constructor Summary
Constructors Constructor Description ForStMapState(org.apache.flink.runtime.asyncprocessing.StateRequestHandler stateRequestHandler, org.forstdb.ColumnFamilyHandle columnFamily, org.apache.flink.api.common.state.v2.MapStateDescriptor<UK,UV> stateDescriptor, Supplier<org.apache.flink.runtime.state.SerializedCompositeKeyBuilder<K>> serializedKeyBuilderInitializer, N defaultNamespace, Supplier<org.apache.flink.api.common.typeutils.TypeSerializer<N>> namespaceSerializerInitializer, Supplier<org.apache.flink.core.memory.DataOutputSerializer> valueSerializerViewInitializer, Supplier<org.apache.flink.core.memory.DataInputDeserializer> keyDeserializerViewInitializer, Supplier<org.apache.flink.core.memory.DataInputDeserializer> valueDeserializerViewInitializer, int keyGroupPrefixBytes)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ForStDBBunchPutRequest<K,N,UK,UV>buildDBBunchPutRequest(org.apache.flink.runtime.asyncprocessing.StateRequest<?,?,?,?> stateRequest)Build a request for bunch put.ForStDBGetRequest<?,?,?,?>buildDBGetRequest(org.apache.flink.runtime.asyncprocessing.StateRequest<?,?,?,?> stateRequest)Build aForStDBGetRequestthat belong to thisForStInnerTablewith the given stateRequest.ForStDBIterRequest<K,N,UK,UV,?>buildDBIterRequest(org.apache.flink.runtime.asyncprocessing.StateRequest<?,?,?,?> stateRequest)Build a request for iterator.ForStDBPutRequest<K,N,UV>buildDBPutRequest(org.apache.flink.runtime.asyncprocessing.StateRequest<?,?,?,?> stateRequest)Build aForStDBPutRequestthat belong toForStInnerTablewith the given stateRequest.UKdeserializeUserKey(byte[] userKeyBytes, int userKeyOffset)UVdeserializeValue(byte[] valueBytes)Deserialize the given bytes value to POJO value.org.forstdb.ColumnFamilyHandlegetColumnFamilyHandle()Get the columnFamily handle corresponding to table.intgetKeyGroupPrefixBytes()byte[]serializeKey(ContextKey<K,N> contextKey)Serialize the given key to bytes.byte[]serializeValue(UV value)Serialize the given value to the outputView.-
Methods inherited from class org.apache.flink.runtime.state.v2.AbstractMapState
asyncContains, asyncEntries, asyncGet, asyncIsEmpty, asyncKeys, asyncPut, asyncPutAll, asyncRemove, asyncValues, contains, entries, get, isEmpty, iterator, keys, put, putAll, remove, values
-
Methods inherited from class org.apache.flink.runtime.state.v2.AbstractKeyedState
asyncClear, clear, getStateDescriptor, getStateRequestHandler, getValueSerializer, handleRequest, handleRequestSync, setCurrentNamespace
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.flink.runtime.state.v2.internal.InternalPartitionedState
setCurrentNamespace
-
-
-
-
Constructor Detail
-
ForStMapState
public ForStMapState(org.apache.flink.runtime.asyncprocessing.StateRequestHandler stateRequestHandler, org.forstdb.ColumnFamilyHandle columnFamily, org.apache.flink.api.common.state.v2.MapStateDescriptor<UK,UV> stateDescriptor, Supplier<org.apache.flink.runtime.state.SerializedCompositeKeyBuilder<K>> serializedKeyBuilderInitializer, N defaultNamespace, Supplier<org.apache.flink.api.common.typeutils.TypeSerializer<N>> namespaceSerializerInitializer, Supplier<org.apache.flink.core.memory.DataOutputSerializer> valueSerializerViewInitializer, Supplier<org.apache.flink.core.memory.DataInputDeserializer> keyDeserializerViewInitializer, Supplier<org.apache.flink.core.memory.DataInputDeserializer> valueDeserializerViewInitializer, int keyGroupPrefixBytes)
-
-
Method Detail
-
getKeyGroupPrefixBytes
public int getKeyGroupPrefixBytes()
-
getColumnFamilyHandle
public org.forstdb.ColumnFamilyHandle getColumnFamilyHandle()
Description copied from interface:ForStInnerTableGet the columnFamily handle corresponding to table.- Specified by:
getColumnFamilyHandlein interfaceForStInnerTable<K,N,UK>
-
serializeKey
public byte[] serializeKey(ContextKey<K,N> contextKey) throws IOException
Description copied from interface:ForStInnerTableSerialize the given key to bytes.- Specified by:
serializeKeyin interfaceForStInnerTable<K,N,UK>- Parameters:
contextKey- the key to be serialized.- Returns:
- the key bytes
- Throws:
IOException- Thrown if the serialization encountered an I/O related error.
-
serializeValue
public byte[] serializeValue(UV value) throws IOException
Description copied from interface:ForStInnerTableSerialize the given value to the outputView.- Specified by:
serializeValuein interfaceForStInnerTable<K,N,UK>- Parameters:
value- the value to be serialized.- Returns:
- the value bytes
- Throws:
IOException- Thrown if the serialization encountered an I/O related error.
-
deserializeValue
public UV deserializeValue(byte[] valueBytes) throws IOException
Description copied from interface:ForStInnerTableDeserialize the given bytes value to POJO value.- Specified by:
deserializeValuein interfaceForStInnerTable<K,N,UK>- Parameters:
valueBytes- the value bytes to be deserialized.- Returns:
- the deserialized POJO value
- Throws:
IOException- Thrown if the deserialization encountered an I/O related error.
-
deserializeUserKey
public UK deserializeUserKey(byte[] userKeyBytes, int userKeyOffset) throws IOException
- Throws:
IOException
-
buildDBGetRequest
public ForStDBGetRequest<?,?,?,?> buildDBGetRequest(org.apache.flink.runtime.asyncprocessing.StateRequest<?,?,?,?> stateRequest)
Description copied from interface:ForStInnerTableBuild aForStDBGetRequestthat belong to thisForStInnerTablewith the given stateRequest.- Specified by:
buildDBGetRequestin interfaceForStInnerTable<K,N,UK>- Parameters:
stateRequest- The given stateRequest.- Returns:
- The corresponding ForSt GetRequest.
-
buildDBPutRequest
public ForStDBPutRequest<K,N,UV> buildDBPutRequest(org.apache.flink.runtime.asyncprocessing.StateRequest<?,?,?,?> stateRequest)
Description copied from interface:ForStInnerTableBuild aForStDBPutRequestthat belong toForStInnerTablewith the given stateRequest.- Specified by:
buildDBPutRequestin interfaceForStInnerTable<K,N,UK>- Parameters:
stateRequest- The given stateRequest.- Returns:
- The corresponding ForSt PutRequest.
-
buildDBBunchPutRequest
public ForStDBBunchPutRequest<K,N,UK,UV> buildDBBunchPutRequest(org.apache.flink.runtime.asyncprocessing.StateRequest<?,?,?,?> stateRequest)
Build a request for bunch put. Maily used forStateRequestType.MAP_PUT_ALLandStateRequestType.CLEAR.- Parameters:
stateRequest- The state request.- Returns:
- The
ForStDBBunchPutRequest.
-
buildDBIterRequest
public ForStDBIterRequest<K,N,UK,UV,?> buildDBIterRequest(org.apache.flink.runtime.asyncprocessing.StateRequest<?,?,?,?> stateRequest)
Build a request for iterator. Used forStateRequestType.MAP_ITER,StateRequestType.MAP_ITER_KEY,StateRequestType.MAP_ITER_VALUEandStateRequestType.ITERATOR_LOADING.- Parameters:
stateRequest- The state request.- Returns:
- The
ForStDBIterRequest.
-
-