4

카프카에서 데이터를 읽을 수있는 방법은 byte[]입니까?Apache Flink : 카프카의 데이터를 바이트 배열로 읽어들입니다.

String으로 이벤트를 읽는 구현이 있는데 SimpleStringSchema()을 사용하지만 데이터를 읽을 스키마를 byte[]으로 찾을 수 없습니다. 여기

내 코드입니다 : 마지막으로 내가 찾은

Properties properties = new Properties(); 
    properties.setProperty("bootstrap.servers", "kafka1:9092"); 
    properties.setProperty("zookeeper.connect", "zookeeper1:2181"); 
    properties.setProperty("group.id", "test"); 
    properties.setProperty("key.deserializer","org.apache.kafka.common.serialization.StringDeserializer"); 
    properties.setProperty("value.deserializer", "org.apache.kafka.common.serialization.ByteArrayDeserializer"); 
    properties.setProperty("auto.offset.reset", "earliest"); 
    DataStream<byte[]> stream = env 
       .addSource(new FlinkKafkaConsumer010<byte[]>("testStr", ? ,properties)); 

답변

1

그 :

DataStream<byte[]> stream = env 
      .addSource(new FlinkKafkaConsumer010<>("testStr", new AbstractDeserializationSchema<byte[]>() { 
       @Override 
       public byte[] deserialize(byte[] bytes) throws IOException { 
        return bytes; 
       } 
      }, properties));