All Known Subinterfaces:
OuterJoinRecordAsyncStateView

public interface JoinRecordAsyncStateView
A JoinRecordAsyncStateView is a view to the join state. It encapsulates the join state and provides some APIs facing the input records. The join state is used to store input records. The structure of the join state is vary depending on the JoinInputSideSpec.

For example: when the JoinInputSideSpec is JoinKeyContainsUniqueKey, we will use ValueState to store records which has better performance.

Different with JoinRecordStateView, this interface is based on async state api.

  • Method Summary

    Modifier and Type
    Method
    Description
    org.apache.flink.api.common.state.v2.StateFuture<Void>
    addRecord(org.apache.flink.table.data.RowData record)
    Add a new record to the state view.
    org.apache.flink.api.common.state.v2.StateFuture<List<OuterRecord>>
    findMatchedRecords(Function<org.apache.flink.table.data.RowData,Boolean> condition)
    Find all the records matched the condition under the current context (i.e. join key).
    org.apache.flink.api.common.state.v2.StateFuture<Void>
    retractRecord(org.apache.flink.table.data.RowData record)
    Retract the record from the state view.
  • Method Details

    • addRecord

      org.apache.flink.api.common.state.v2.StateFuture<Void> addRecord(org.apache.flink.table.data.RowData record)
      Add a new record to the state view.
    • retractRecord

      org.apache.flink.api.common.state.v2.StateFuture<Void> retractRecord(org.apache.flink.table.data.RowData record)
      Retract the record from the state view.
    • findMatchedRecords

      org.apache.flink.api.common.state.v2.StateFuture<List<OuterRecord>> findMatchedRecords(Function<org.apache.flink.table.data.RowData,Boolean> condition)
      Find all the records matched the condition under the current context (i.e. join key).