Я искал поддержку коннектора kafka-connect-hdfs (Confluent) для сохранения массива байтов и разделения полей с использованием схемы FlatBuffer.
Я получаю данные в байтовом массиве от кафки. Этот байтовый массив создается из FlatBuffer. Необходимо сохранить его в HDFS по пути, например, Field1 / Field2 / Field3. Все эти поля необходимо извлечь из массива байтов с помощью схемы FlatBuffer. Кроме того, данные для сохранения в HDFS должны быть только байтами. Преобразование данных не требуется.
Я проверил оба:
- FieldPartitioner: https://github.com/confluentinc/kafka-connect-storage-common/blob/master/partitioner/src/main/java/io/confluent/connect/storage/partitioner/FieldPartitioner.java
- Поддерживаемые форматы: Json, Avro, Parquet. В https://github.com/confluentinc/kafka-connect-storage-cloud/blob/master/kafka-connect-s3/src/main/java/io/confluent/connect/s3/format/json/JsonRecordWriterProvider.java, хотя я обнаружил, что массив байтов сохранен в HDFS, если данные относятся к типу Kafka Struct.
Я не мог найти способ использовать их для своих целей.
Кто-нибудь знает о такой встроенной поддержке. Если нет, то, пожалуйста, направьте меня к ресурсу (если есть), чтобы создать индивидуальную поддержку для обоих.