2016-09-08 3 views
0

Я использую разъем JDBC Kafka для считывания данных из базы данных в Kafka. Это работает, но всегда выводит данные в формате Avro, хотя я указал, что он должен использовать JSON. Я знаю, что это происходит, потому что, когда я использую сообщения из этой темы в python, я вижу схему в верхней части каждого сообщения.Kafka Connect не выводит JSON

бегаю разъем, как это:

/usr/bin/connect-standalone /etc/schema-registry/connect-json-standalone.properties /etc/kafka-connect-jdbc/view.properties 

Содержание connect-json-standalone.properties файла:

bootstrap.servers=localhost:9092 

key.converter=org.apache.kafka.connect.json.JsonConverter 
key.converter.schema.registry.url=http://localhost:8081 
key.converter.schemas.enable=true 
value.converter=org.apache.kafka.connect.json.JsonConverter 
value.converter.schema.registry.url=http://localhost:8081 
value.converter.schemas.enable=true 

internal.key.converter=org.apache.kafka.connect.json.JsonConverter 
internal.value.converter=org.apache.kafka.connect.json.JsonConverter 
internal.key.converter.schemas.enable=false 
internal.value.converter.schemas.enable=false 

# Local storage file for offset data 
offset.storage.file.filename=/tmp/connect.offsets 

и содержание/и т.д./Кафка-подключения -jdbc/view.properties является:

name=view-small-jdbc-daily 
connector.class=io.confluent.connect.jdbc.JdbcSourceConnector 
tasks.max=1 
connection.url=jdbc:teradata://domain.com/charset=UTF8,DBS_PORT=1025,DATABASE=test,USER=***,PASSWORD=***,LOB_SUPPORT=OFF 
mode=bulk 
table.whitelist=test_table 
topic.prefix=view5- 
+1

Вы пробовали настройку converter.schmas.enable = false? – dawsaw

ответ

1

Две проблемы в конфигурации:

  1. Если вы используете JSONConverter, вам не нужно настраивать реестр схемы - это просто для AvroConverter. Поэтому вы можете удалить key.converter.schema.registry.url и value.converter.schema.registry.url
  2. Во-вторых, у вас есть key.converter.schemas.enable=true и value.converter.schemas.enable=true, поэтому вы не должны удивляться, что JSON содержит схему. Вы указали, что мы должны включить его. Если вы не хотите использовать схему, просто установите ее на false
Смежные вопросы