我正在尝试加入
{"value":"0","time":1.540753118800291E9,,"deviceIp":"111.111.111.111","deviceName":"KYZ1","indicatorName":"ifHCInOctets"}
键被映射为:
map((key, value) -> KeyValue.pair(value.deviceName+value.indicatorName, value))
我对KStream进行了窥视,并同时打印了两个密钥 以及我使用的属性 看起来都很好。
KYZ1ifHCInOctets
,即设备名称和指标名称的组合(从上方)。
我做
toStream,然后浏览生成的流。键和值都似乎
很好。现在,当我进行内部联接并进行窥视或直通主题时,我看到键和值不匹配。加入似乎无效,
KStream<String, MyPojoClass> joined= datastream.join(table,
(data,table)->data
,Joined.with(Serdes.String(),myCustomSerde,Serdes.String())
);
key = XYZ1s1_TotalDiscards
Value = {"deviceName":"ABC2", "indicatorName":"jnxCosQstatTxedBytes"}
我在使用ksql时有完全相同的东西,但是想做自己的流应用程序。
答案 0 :(得分:0)
现在,对于错误的根源听起来太愚蠢了,我的PoJo类几乎没有静态的属性:-(,这导致了错误的键。