Я делаю POC из Confluent Kafka Connect версии 5.2.3. Мы пытаемся скопировать сообщение темы из файла в качестве резервной копии и из этого файла обратно в тему, когда нам это нужно.
В теме есть ключ = строка Значение = protbuf
Я использую
key.convertor=org.apache.kafka.connect.storgare.StringConvertor
value.convertor=com.blueapron.connect.protobuf.ProtobufConvertor
value.convertor.protoClassName=<proto class name>
Мойка конфигурации
name=test
connector.class=FileStreamSink
tasks.max=1
file=test.txt
topics=testtopic
Источникconfig
name=test
connector.class=FileStreamSource
tasks.max=1
file=test.txt
topics=testtopic_connect
Я могу успешно преобразовать его в файл с содержимым файла, как показано ниже
Struct{<message in name value pair>}
Struct{<message in name value pair>}
....
Тот же файл, который я использую для источникавернемся к другой теме. Когда я запускаю источник, он выдает ошибку
Строка не может быть преобразована в org.apache.kafka.connect.data.Struct.
Вопросы
- Почему яне вижу ни одного ключа в файле, когда моя тема кафки имеет пару ключ-значение.
- Почему источник не может скопировать содержимое из файла в тему и выдает ошибку, связанную с приведением типа.
- Я получаюподобная ошибка, когда я использую ByteArrayConvertor, предоставленный kafka. Строка не может быть преобразована в байты. В идеале ByteArrayConvertor должен работать с любыми данными.
- Работает ли blueapron только с версией protobuf3?