THIS IS A TEST INSTANCE. ALL YOUR CHANGES WILL BE LOST!!!!
...
If there are alternative ways of accomplishing the same thing, what were they? The purpose of this section is to motivate why the design is the way it is and not some other way.C
Alternative Design - Adam Bellemare July 2018
Features:
- Performs updates from both sides of the join.
- Uses user-specified serdes to perform the rangeScans.
- Resolves out-of-order processing due to switching the foreignKey on the event side.
Current Limitations:
- Requires two full materialized State Stores at a minimum
- One for the rangeScannable events from the left table.
- One for the highwater mark for resolving out-of-order processing of events.
Motivation
Same as above.
Public Interfaces
Code Block |
---|
<V0, KL, VL, KR, VR> KTable<KL, V0> foreignKeyJoin(KTable<KR, VR> other,
ValueMapper<VL, KR> foreignKeyExtractor,
final ValueJoiner<VR, VL, V0> joiner,
final Materialized<KL, V0, KeyValueStore<Bytes, byte[]>> materialized,
Serde<KL> thisKeySerde,
Serde<KR> otherKeySerde,
Serde<VR> otherValueSerde,
Serde<V0> joinedValueSerde); |
Overview
Gliffy Diagram name BellemareOverview213 pagePin 2