Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/304.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java flink-kafka源和汇中的POJO Serlialization_Java_Scala_Serialization_Apache Kafka_Apache Flink - Fatal编程技术网

Java flink-kafka源和汇中的POJO Serlialization

Java flink-kafka源和汇中的POJO Serlialization,java,scala,serialization,apache-kafka,apache-flink,Java,Scala,Serialization,Apache Kafka,Apache Flink,假设我在flink数据流(即Datastream[Event])中有以下类: 为了在flink操作符之间序列化它,我只需要这个类来扩展可序列化类,如上面所述。但是,如果我还想写给FlinkKafka的制作人/消费者/从他们那里读到它呢 例如,对于FlinkKafkaConsumer,似乎我必须编写自己的org.apache.flink.api.common.serialization.Deserialization模式,最重要的是重写T反序列化(byte[]message)函数。Serializ

假设我在flink数据流(即Datastream[Event])中有以下类:

为了在flink操作符之间序列化它,我只需要这个类来扩展可序列化类,如上面所述。但是,如果我还想写给FlinkKafka的制作人/消费者/从他们那里读到它呢

例如,对于FlinkKafkaConsumer,似乎我必须编写自己的org.apache.flink.api.common.serialization.Deserialization模式,最重要的是重写T反序列化(byte[]message)函数。SerializationSchema也是如此(即,重写serialize方法)

谁能提供Java或Scala的实现?最好是快一点的

问题是我有csv格式的数据。当我解析它(例如,使用split(delim)、new Map(…)e.t.c.)在反序列化函数中创建事件并形成Datastream[Event]时,需要花费大量时间,这就限制了下面的操作符。所以我认为,如果我已经在卡夫卡主题中将数据序列化为pojo,那么所需的时间会更少(我不介意这种预处理)

class Event( val id: Int,
             val Type: String,
             extraArgs: Map[String, Any]) extends Serializable {
...
}