KeyWithIndexToValueStore — State Store (Handler) Of Join Keys With Index Of Values
KeyWithIndexToValueStore
is a StateStoreHandler (of KeyWithIndexToValueType) for SymmetricHashJoinStateManager to manage a join state.
As a StateStoreHandler, KeyWithIndexToValueStore
manages a state store (that is loaded) for keys and values per the keys with index and input values schemas, respectively.
KeyWithIndexToValueStore
uses a schema (for the state store) that is the key schema (of the parent SymmetricHashJoinStateManager
) with an extra field index
of type long
.
Tip
|
Enable Add the following line to
Refer to Logging. |
Looking Up State Row For Given Key and Index — get
Method
get(
key: UnsafeRow,
valueIndex: Long): UnsafeRow
get
simply requests the internal state store to look up the value for the given key and valueIndex.
Note
|
get is used exclusively when SymmetricHashJoinStateManager is requested to removeByValueCondition
|
Retrieving (Given Number of) Values for Key — getAll
Method
getAll(
key: UnsafeRow,
numValues: Long): Iterator[KeyWithIndexAndValue]
getAll
…FIXME
Note
|
getAll is used when SymmetricHashJoinStateManager is requested to get values for a given key and removeByKeyCondition.
|
Storing State Row For Given Key and Index — put
Method
put(
key: UnsafeRow,
valueIndex: Long,
value: UnsafeRow): Unit
put
…FIXME
Note
|
put is used when SymmetricHashJoinStateManager is requested to append a new value to a given key and removeByKeyCondition.
|
remove
Method
remove(
key: UnsafeRow,
valueIndex: Long): Unit
remove
…FIXME
Note
|
remove is used when SymmetricHashJoinStateManager is requested to removeByKeyCondition and removeByValueCondition.
|
keyWithIndexRow
Internal Method
keyWithIndexRow(
key: UnsafeRow,
valueIndex: Long): UnsafeRow
keyWithIndexRow
uses the keyWithIndexRowGenerator to generate an UnsafeRow
for the key
and sets the valueIndex
at the indexOrdinalInKeyWithIndexRow position.
Note
|
keyWithIndexRow is used when KeyWithIndexToValueStore is requested to get, getAll, put, remove and removeAllValues.
|
removeAllValues
Method
removeAllValues(
key: UnsafeRow,
numValues: Long): Unit
removeAllValues
…FIXME
Note
|
removeAllValues does not seem to be used at all.
|
iterator
Method
iterator: Iterator[KeyWithIndexAndValue]
iterator
…FIXME
Note
|
iterator does not seem to be used at all.
|
Internal Properties
Name | Description |
---|---|
|
Position of the index in the key row (which corresponds to the number of the key attributes) Used exclusively in the keyWithIndexRow |
|
keyAttributes with Used exclusively for the keyWithIndexRowGenerator projection |
|
Used exclusively in keyWithIndexRow |