Топик

Топик (или тема) – это механизм организации и идентификации сообщений внутри системы сообщений или брокера. Он представляет собой логическую категорию, в пределах которой производители (продюсеры) могут отправлять сообщения, а потребители могут их читать.

Рассмотрим ниже небольшой пример топика на примере системы Kafka.

Кафка-топик — это способ группировки и распределения потоков Big Data сообщений по категориям, где kafka-продюсеры (producers) публикуют сообщения определенной категории в топик, а kafka-потребители (consumer) подписываются на этот топик и читают из него сообщения в момент их поступления.

Для того, чтобы создать новую тему, применяются 2 команды: create и topic. Команда topic является параметром команды create. В качестве примера рассмотрим выполнение следующего кода в командной строке [2]:

bin/kafka-topics.sh --bootstrap-server localhost:9092 --create --topic my-topic --partitions 1 \
  --replication-factor 1 --config max.message.bytes=64000 --config flush.messages=1

В вышерассмотренном фрагменте кода помимо команд create и topic, также указаны 2 другие команды:

  • replication-factor — команда, отвечающая за количество реплик в теме(коэффициент репликации);
  • partitions — команда, задающая количество разделов для создаваемого топика;
  • config – задание конфигурации топика.

Для того, чтобы удалить созданную тему, используется команда delete, которая также выполняется совместно с командой topic [3]:

kafka-topics.sh --zookeeper zoo1.example.com:2181/kafka-cluster --delete --topic my-topic

Администрирование кластера Kafka

Администрирование Arenadata Streaming Kafka

Apache Kafka для инженеров данных

Записаться на курс

Смотреть раcписание

 

Источники

  1. https://habr.com/ru/companies/sbermarket/articles/738634/
  2. https://kafka.apache.org/documentation/
  3. Н.Нархид, Г.Шапира, Т.Палино. Apache Kafka. Потоковая обработка и анализ данных