Apache flink flink 1.7.2数据集是否不支持kafka接收器?

Apache flink flink 1.7.2数据集是否不支持kafka接收器?,apache-flink,flink-sql,flink-batch,Apache Flink,Flink Sql,Flink Batch,flink 1.7.2数据集是否不支持kafka接收器 完成批处理操作后,我需要将消息发布到kafka,这意味着源是我的postgres,汇是我的kafka 有可能吗?开箱即用:还没有,您必须从一开始就使用数据流,或者创建您自己的自定义输出格式,如前所述 但是,有计划在Apache Flink项目中统一数据集和数据流API,以便在Flink 2.0中长期使用:开箱即用:还没有,您必须从一开始就使用数据流,或者创建您自己的自定义输出格式,如上所述 然而,在Flink 2.0中,有计划长期统一Apa

flink 1.7.2数据集是否不支持kafka接收器

完成批处理操作后,我需要将消息发布到kafka,这意味着源是我的postgres,汇是我的kafka


有可能吗?

开箱即用:还没有,您必须从一开始就使用数据流,或者创建您自己的自定义输出格式,如前所述


但是,有计划在Apache Flink项目中统一
数据集
数据流
API,以便在Flink 2.0中长期使用:

开箱即用:还没有,您必须从一开始就使用数据流,或者创建您自己的自定义输出格式,如上所述


然而,在Flink 2.0中,有计划长期统一Apache Flink项目中的
数据集
数据流
API:

您可以创建自己的输出格式,并使用卡夫卡制作者制作卡夫卡。检查下面的代码

...
data.output(new KafkaOPFormat());
env.execute();
import java.io.IOException;
导入java.util.Properties;
导入org.apache.flink.api.common.io.RichOutputFormat;
导入org.apache.flink.api.java.tuple.Tuple2;
导入org.apache.flink.configuration.configuration;
导入org.apache.kafka.clients.producer.KafkaProducer;
导入org.apache.kafka.clients.producer.ProducerRecord;
公共类KafkaOPFormat扩展了RichOutputFormat{
私有最终属性=新属性();
私人卡夫卡制作人;
@凌驾
公共无效配置(配置){
properties.put(“bootstrap.servers”,“localhost:9092”);
出售(“确认”、“全部”);
属性。放置(“重试”,0);
属性。放置(“批次大小”,16384);
属性。put(“linger.ms”,1);
properties.put(“buffer.memory”,33554432);
properties.put(“key.serializer”、“org.apache.kafka.common.serialization.StringSerializer”);
properties.put(“value.serializer”、“org.apache.kafka.common.serialization.StringSerializer”);
}
@凌驾
公共void open(inti,inti1)引发IOException{
制作人=新卡夫卡制作人(财产);
}
@凌驾
public void writeRecord(Tuple2记录)引发IOException{
producer.send(新ProducerRecord(record.f0,record.f1));
}
@凌驾
public void close()引发IOException{
producer.close();
}
}

PS:我不记得所有的配置,请检查您的配置并进行相应更改。

您可以创建自己的输出格式,并使用卡夫卡制作人制作卡夫卡。检查下面的代码

...
data.output(new KafkaOPFormat());
env.execute();
import java.io.IOException;
导入java.util.Properties;
导入org.apache.flink.api.common.io.RichOutputFormat;
导入org.apache.flink.api.java.tuple.Tuple2;
导入org.apache.flink.configuration.configuration;
导入org.apache.kafka.clients.producer.KafkaProducer;
导入org.apache.kafka.clients.producer.ProducerRecord;
公共类KafkaOPFormat扩展了RichOutputFormat{
私有最终属性=新属性();
私人卡夫卡制作人;
@凌驾
公共无效配置(配置){
properties.put(“bootstrap.servers”,“localhost:9092”);
出售(“确认”、“全部”);
属性。放置(“重试”,0);
属性。放置(“批次大小”,16384);
属性。put(“linger.ms”,1);
properties.put(“buffer.memory”,33554432);
properties.put(“key.serializer”、“org.apache.kafka.common.serialization.StringSerializer”);
properties.put(“value.serializer”、“org.apache.kafka.common.serialization.StringSerializer”);
}
@凌驾
公共void open(inti,inti1)引发IOException{
制作人=新卡夫卡制作人(财产);
}
@凌驾
public void writeRecord(Tuple2记录)引发IOException{
producer.send(新ProducerRecord(record.f0,record.f1));
}
@凌驾
public void close()引发IOException{
producer.close();
}
}
PS:我不记得所有的配置,请检查您的配置并相应更改。