Class RocksStatesPerKeyGroupMergeIterator
- java.lang.Object
-
- org.apache.flink.contrib.streaming.state.iterator.RocksStatesPerKeyGroupMergeIterator
-
- All Implemented Interfaces:
AutoCloseable,org.apache.flink.runtime.state.KeyValueStateIterator
public class RocksStatesPerKeyGroupMergeIterator extends Object implements org.apache.flink.runtime.state.KeyValueStateIterator
Iterator that merges multiple RocksDB iterators to partition all states into contiguous key-groups. The resulting iteration sequence is ordered by (key-group, kv-state).
-
-
Constructor Summary
Constructors Constructor Description RocksStatesPerKeyGroupMergeIterator(org.apache.flink.core.fs.CloseableRegistry closeableRegistry, List<org.apache.flink.api.java.tuple.Tuple2<RocksIteratorWrapper,Integer>> kvStateIterators, List<SingleStateIterator> heapPriorityQueueIterators, int keyGroupPrefixByteCount)Creates a newRocksStatesPerKeyGroupMergeIterator.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()booleanisNewKeyGroup()booleanisNewKeyValueState()booleanisValid()byte[]key()intkeyGroup()intkvStateId()voidnext()byte[]value()
-
-
-
Constructor Detail
-
RocksStatesPerKeyGroupMergeIterator
public RocksStatesPerKeyGroupMergeIterator(org.apache.flink.core.fs.CloseableRegistry closeableRegistry, List<org.apache.flink.api.java.tuple.Tuple2<RocksIteratorWrapper,Integer>> kvStateIterators, List<SingleStateIterator> heapPriorityQueueIterators, int keyGroupPrefixByteCount) throws IOExceptionCreates a newRocksStatesPerKeyGroupMergeIterator. The iterator takes ownership of passed in resources, such as theReadOptions, and becomes responsible for closing them.- Throws:
IOException
-
-
Method Detail
-
next
public void next()
- Specified by:
nextin interfaceorg.apache.flink.runtime.state.KeyValueStateIterator
-
keyGroup
public int keyGroup()
- Specified by:
keyGroupin interfaceorg.apache.flink.runtime.state.KeyValueStateIterator
-
key
public byte[] key()
- Specified by:
keyin interfaceorg.apache.flink.runtime.state.KeyValueStateIterator
-
value
public byte[] value()
- Specified by:
valuein interfaceorg.apache.flink.runtime.state.KeyValueStateIterator
-
kvStateId
public int kvStateId()
- Specified by:
kvStateIdin interfaceorg.apache.flink.runtime.state.KeyValueStateIterator
-
isNewKeyValueState
public boolean isNewKeyValueState()
- Specified by:
isNewKeyValueStatein interfaceorg.apache.flink.runtime.state.KeyValueStateIterator
-
isNewKeyGroup
public boolean isNewKeyGroup()
- Specified by:
isNewKeyGroupin interfaceorg.apache.flink.runtime.state.KeyValueStateIterator
-
isValid
public boolean isValid()
- Specified by:
isValidin interfaceorg.apache.flink.runtime.state.KeyValueStateIterator
-
close
public void close()
- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceorg.apache.flink.runtime.state.KeyValueStateIterator
-
-