Кафка разных разделов выделена python библиотека confluent_kafka v / s apache кафка Java - PullRequest
0 голосов
/ 28 февраля 2020

Я публикую те же данные (Topi c, Key & Value) из python производителя на основе библиотеки confluent_kafka v / s Java apache производителя на основе библиотеки, но когда сообщения проверяются на Кафке, они публикуются в другом Раздел Kafka.

Я ожидал, что по умолчанию обе эти библиотеки будут использовать один и тот же метод ha sh (murmur2) для Key и определят тот же раздел при публикации сообщения в Kafka, но, похоже, этого не происходит.

Есть ли флаг или опция, которую нужно установить в библиотеке Python, чтобы она использовала тот же алгоритм и генерировала такой же (как и Java библиотека) раздел Кафки ИЛИ была ли другая библиотека python, которая следует использовать для достижения этой цели?

Ответы [ 2 ]

0 голосов
/ 13 марта 2020

У меня была такая же проблема. Вы можете сделать две вещи:

  • Изменить алгоритм на стороне Python на "murmur2_random", однако это может быть немного fr agile
  • Переслать вашу испорченную топи c в другую топи c, написанную на одном языке

Пример решения

0 голосов
/ 28 февраля 2020

Я нашел способ заставить confluent_kafka Producer использовать алгоритм murmur2 для определения раздела. Вы можете установить ниже параметр со значением:

'partitioner': 'murmur2_random'

...