合并来自不同flink作业的结果

cygmwpex  于 2021-06-08  发布在  Kafka
关注(0)|答案(2)|浏览(408)

我有3个从同一输入流读取的作业。每一个都提供不同的输出如何组合不同作业的结果并创建单个json字符串
示例:{“key”:“input_msg”,“result_1”:“job1_result”,…}
我希望避免查询数据库,好像我将我的工作扩展到一个巨大的数字,这将产生负面影响。

bq9c1y66

bq9c1y661#

您可以将所有三个作业合并为一个作业,然后将这三个部分的结果连接起来,形成连接的json结果。

quhf5bfb

quhf5bfb2#

是的,这是可能的

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)))
}

相关问题