我需要知道如何在我的kafka KStreams行中使用'for'循环...下面是我的'for'循环,需要包含在KStream中
for (int i = 0; i < 6 ; i++) {
try {
textlines.flatMapValues(value -> Arrays.asList(value.split("\\},\\{")));
Thread.sleep(2000);
}catch (InterruptedException e){
e.printStackTrace();
}
}
和我的KStreams喜欢
KStream<String, String> textlines = builder.stream("intopic");
KStream<String, String> mstream = textlines
.mapValues(value -> value.replace("[","" ) )
如何将上面的'for'循环添加到我的KStreams
中答案 0 :(得分:1)
事情是我在'for'循环中使用了value.split来分割我的数据....所以每当我的数据被分割时,它应该睡眠大约10ms ...这是因为我需要我的数据来一个在另一个之后
根据您的要求订购。要实现订购,您不需要sleep
。它会起作用。我假设您的代码所基于的Kafka Streams WordCount示例以相同的方式工作:它也使用flatMapValues
,并且传递到平面地图的lambda将文本行拆分为单词。
除非我和其他人误解你的问题(在这种情况下你或许应该进一步澄清你的问题),我认为你的代码不必要地复杂化。