首页 > 解决方案 > 组合来自不同 Flink 作业的结果

问题描述

我有 3 个从同一输入流中读取的作业。每个都给出不同的输出如何组合来自不同作业的结果并创建单个 JSON 字符串

示例:{"key":"input_msg", "result_1":"job1_result",...}

我希望避免查询数据库,就好像我将工作规模扩大到会产生负面影响的巨大数字一样。

标签: apache-kafkaapache-flinkflink-streamingflink-cep

解决方案


是的,这是可能的

available_topics = List("topic_1", "topic_2")


var streams = collection.mutable.Map[String,  DataStream[String]]()
for(a <- 0 until available_topics.size){
  streams += (available_topics(a) -> env.addSource(new FlinkKafkaConsumer09(available_topics(a), new SimpleStringSchema(), properties)).map(x => someFunctionThatS(x)))
}

推荐阅读