连接两个不同 KStreams 的值
Join values of two different KStreams
所以我有两个不同的 KStream
s:
流 1:(String
键,Object
值 1)
流 2:(String
键,Object
值 2)
我想加入他们,这样我就可以得到一个看起来像 (Object
value1, Object
value2) 的流。
最干净的方法是什么?
一种可行的方法是连接两个流,使得生成的流的值是一个包含两个原始值的容器 class。然后,映射流以将值从容器中取出并使用其中之一作为键。
代码:
KStream<String, Object> stream1;
KStream<String, Object> stream2;
KStream<Object, Object> joinedStream = stream1
.join(stream2, (value1, value2) -> new MyValueContainer(value1, value2))
.map((key, container) -> new KeyValue<Object, Object>(container.getValue1(), container.getValue2()));
所以我有两个不同的 KStream
s:
流 1:(String
键,Object
值 1)
流 2:(String
键,Object
值 2)
我想加入他们,这样我就可以得到一个看起来像 (Object
value1, Object
value2) 的流。
最干净的方法是什么?
一种可行的方法是连接两个流,使得生成的流的值是一个包含两个原始值的容器 class。然后,映射流以将值从容器中取出并使用其中之一作为键。
代码:
KStream<String, Object> stream1;
KStream<String, Object> stream2;
KStream<Object, Object> joinedStream = stream1
.join(stream2, (value1, value2) -> new MyValueContainer(value1, value2))
.map((key, container) -> new KeyValue<Object, Object>(container.getValue1(), container.getValue2()));