Skip to main content

Module lookup_join_exec

Module lookup_join_exec 

Source
Expand description

Physical execution plan and extension planner for lookup joins. Physical execution plan for lookup joins.

Bridges LookupJoinNode (logical) to a hash-probe executor that joins streaming input against a pre-indexed lookup table snapshot.

§Data flow

Stream input ──► LookupJoinExec ──► Output (stream + lookup columns)
                      │
                 HashIndex probe
                      │
                 LookupSnapshot (pre-indexed RecordBatch)

Structs§

LookupJoinExec
Physical plan that hash-probes a pre-indexed lookup table for each batch from the streaming input.
LookupJoinExtensionPlanner
Converts LookupJoinNode logical plans to LookupJoinExec or PartialLookupJoinExec physical plans by resolving table data from the registry.
LookupSnapshot
Point-in-time snapshot of a lookup table for join execution.
LookupTableRegistry
Thread-safe registry of lookup table entries (snapshot or partial).
PartialLookupJoinExec
Physical plan that probes a bounded foyer cache per key for each batch from the streaming input. Used for on-demand/partial tables where the full dataset does not fit in memory.
PartialLookupState
State for a partial (on-demand) lookup table.
VersionedIndex
Pre-built versioned index mapping encoded key bytes to a BTreeMap of version timestamps to row indices. Supports point-in-time lookups via probe_at_time for temporal joins.
VersionedLookupJoinExec
Physical plan that probes a versioned (temporal) index for each batch from the streaming input. For each stream row, finds the table row with the latest version timestamp <= event_ts.
VersionedLookupState
State for a versioned (temporal) lookup table.

Enums§

RegisteredLookup
A registered lookup table entry — snapshot, partial (on-demand), or versioned (temporal join with version history).