Class GeneralHashJoinBuilder<T0>

java.lang.Object
com.hazelcast.jet.pipeline.GeneralHashJoinBuilder<T0>
Type Parameters:
T0 - the type of the items in the primary stage
Direct Known Subclasses:
HashJoinBuilder, StreamHashJoinBuilder

public abstract class GeneralHashJoinBuilder<T0> extends Object
Offers a step-by-step fluent API to build a hash-join pipeline stage. To obtain it, call GeneralStage.hashJoinBuilder() on the primary stage, the one whose data will be enriched from all other stages.

Collect all the tags returned from add() and use them to retrieve the enriching items from ItemsByTag you get in the result.

This object is mainly intended to build a hash-join of the primary stage with three or more contributing stages. For one or two stages, prefer the direct stage.hashJoin(...) calls because they offer more static type safety.

Since:
Jet 3.0
  • Method Details

    • add

      public <K, T1_IN, T1> Tag<T1> add(BatchStage<T1_IN> stage, JoinClause<K,T0,T1_IN,T1> joinClause)
      Adds another contributing pipeline stage to the hash-join operation.
      Type Parameters:
      K - the type of the join key
      T1_IN - the type of the contributing stage's data
      T1 - the type of result after applying the projecting transformation to the contributing stage's data
      Parameters:
      stage - the contributing stage
      joinClause - specifies how to join the contributing stage
      Returns:
      the tag that refers to the contributing stage
    • addInner

      public <K, T1_IN, T1> Tag<T1> addInner(BatchStage<T1_IN> stage, JoinClause<K,T0,T1_IN,T1> joinClause)
      Adds another contributing pipeline stage to the hash-join operation. If no matching items for returned tag is found, no records for given key will be added.
      Type Parameters:
      K - the type of the join key
      T1_IN - the type of the contributing stage's data
      T1 - the type of result after applying the projecting transformation to the contributing stage's data
      Parameters:
      stage - the contributing stage
      joinClause - specifies how to join the contributing stage
      Returns:
      the tag that refers to the contributing stage
      Since:
      Jet 4.1