我正在使用KStream<key, coordinates>
,我需要确定每个坐标在哪个周长内并输出KStream<key, perimeterId>
。
所有周长都在GlobalKTable<perimeterID, perimeterVertices>
内。我有一个多边形点函数来执行此操作,我只是不知道如何在没有明显的表值函数或在Kafka-Streams中交叉应用的情况下在Kafka-Streams中利用它。
最佳答案
我最终以无法扩展的丑陋方式进行了此操作。
我的GlobalKTable现在是单行"1" List<perimeterID,perimeterVertices>
。
这使我可以在每个事件中使用“ 1”作为键退出联接。在ValueJoiner中,我运行多边形点函数并设置边界ID,然后将<key, perimeterId>
返回到我的输出流。