You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user-zh@flink.apache.org by 夏帅 <jk...@dingtalk.com.INVALID> on 2020/07/08 03:04:40 UTC
回复:FlinkKafkaProducer没有写入多个topic的功能
你好,可以尝试自定义KafkaSerializationSchema来实现你的业务场景
class DemoSerializationSchema extends KafkaSerializationSchema[DemoBean] {
override def serialize(element: DemoBean, timestamp: lang.Long): ProducerRecord[Array[Byte], Array[Byte]] = {
new ProducerRecord[Array[Byte], Array[Byte]](element.getTopic, element.getValue)
}
}
------------------------------------------------------------------
发件人:18579099920@163.com <18...@163.com>
发送时间:2020年7月8日(星期三) 10:59
收件人:user-zh <us...@flink.apache.org>
主 题:FlinkKafkaProducer没有写入多个topic的功能
我有一个需求是通过读取一个kafka的主题的数据经过flink处理再写入到多个kafka的主题中(写入的主题是动态的,数据中能解析到需要写入到的目的地主题),
但是FlinkKafkaProducer好像只能写入一个主题里面?
18579099920@163.com
Re: FlinkKafkaProducer没有写入多个topic的功能
Posted by Leonard Xu <xb...@gmail.com>.
Hi,
夏帅的方案是ok的,因为Kafka 默认支持写入topic不存在时自动创建[1], 这个配置是默认开启的,所以只用实现下自定义KafkaSerializationSchema就可以满足你的需求。
祝好,
Leonard Xu
[1] https://docs.confluent.io/current/installation/configuration/broker-configs.html#auto.create.topics.enable <https://docs.confluent.io/current/installation/configuration/broker-configs.html#auto.create.topics.enable>
> 在 2020年7月8日,11:08,flink小猪 <18...@163.com> 写道:
>
> 兄弟,感谢
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> 在 2020-07-08 11:04:40,"夏帅" <jk...@dingtalk.com> 写道:
>
> 你好,可以尝试自定义KafkaSerializationSchema来实现你的业务场景
> class DemoSerializationSchema extends KafkaSerializationSchema[DemoBean] {
> override def serialize(element: DemoBean, timestamp: lang.Long): ProducerRecord[Array[Byte], Array[Byte]] = {
> new ProducerRecord[Array[Byte], Array[Byte]](element.getTopic, element.getValue)
> }
> }
> ------------------------------------------------------------------
> 发件人:18579099920@163.com <18...@163.com>
> 发送时间:2020年7月8日(星期三) 10:59
> 收件人:user-zh <us...@flink.apache.org>
> 主 题:FlinkKafkaProducer没有写入多个topic的功能
>
>
> 我有一个需求是通过读取一个kafka的主题的数据经过flink处理再写入到多个kafka的主题中(写入的主题是动态的,数据中能解析到需要写入到的目的地主题),
> 但是FlinkKafkaProducer好像只能写入一个主题里面?
>
>
>
> 18579099920@163.com
>
>
Re:回复:FlinkKafkaProducer没有写入多个topic的功能
Posted by flink小猪 <18...@163.com>.
兄弟,感谢
在 2020-07-08 11:04:40,"夏帅" <jk...@dingtalk.com> 写道:
你好,可以尝试自定义KafkaSerializationSchema来实现你的业务场景
class DemoSerializationSchema extends KafkaSerializationSchema[DemoBean] {
override def serialize(element: DemoBean, timestamp: lang.Long): ProducerRecord[Array[Byte], Array[Byte]] = {
new ProducerRecord[Array[Byte], Array[Byte]](element.getTopic, element.getValue)
}
}
------------------------------------------------------------------
发件人:18579099920@163.com <18...@163.com>
发送时间:2020年7月8日(星期三) 10:59
收件人:user-zh <us...@flink.apache.org>
主 题:FlinkKafkaProducer没有写入多个topic的功能
我有一个需求是通过读取一个kafka的主题的数据经过flink处理再写入到多个kafka的主题中(写入的主题是动态的,数据中能解析到需要写入到的目的地主题),
但是FlinkKafkaProducer好像只能写入一个主题里面?
18579099920@163.com