You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 4 Next »

Joins tuple from two input streams iff their timestamps are overlapping and if the optional predicate validates to true.

Parameters

  • predicate: The predicate to evaluate over each incoming tuple from left and right
  • card: ONE_ONE, ONE_MANY, MANY_ONE, MANY_MANY (same as empty, see below)
  • SweepAreaName: Overwrite the default rule for using sweepAreas (e.g. TIJoinSA is used if the predicate contains other operations than "==", HashJoinSA is used if the predicate only contains "==")

The card parameter describes how input elements can be joined. This optional information can be used to optimize processing (i.e. using less memory, because elements can earlier be discarded).

    • ONE_ONE: In each input stream there is exactly one corresponding object. With this setting, windows can potentially be avoided.
    • ONE_MANY: Each element in the right input stream has exactly one corresponding element in the left input stream
    • MANY_ONE: Each element in the left input stream has exactly one corresponding element in the right input stream
    • MANY_MANY: For each element in both input streams there may be multiple corresponding elements.

Example

PQL
Join Operator
output = join({predicate = 'auction_id = auction'}, left, right)
CQL
SELECT * FROM left, right WHERE auction_id = auction
  • No labels