Формат пути к топику Kafka
Содержание раздела
При создании внешней таблицы загрузки или внешней readable-таблицы, используемой для загрузки данных, необходимо задать путь (URI-строку) к топику Kafka, который служит источником данных.
Доступны следующие способы указания пути к топику:
- путь к топику брокеров Kafka, заданных в конфигурации ноды Prostore:
- краткий путь с использованием переменной, заданной в конфигурации;
- полный путь с указанием хостов ZooKeeper;
- путь к топику произвольных брокеров Kafka.
Имя топика при всех способах указания пути может включать символы:
- латинские буквы,
- цифры,
- точки,
- подчеркивания (
_
), - дефисы (
-
).
Краткий путь к топику сконфигурированных брокеров Kafka
Краткий путь к топику брокеров Kafka, заданных в конфигурации Prostore, имеет следующий формат:
kafka://$kafka/<topic_name>
Пример:
kafka://$kafka/sales_in
Путь к топику сохраняется для внешней таблицы в следующем формате: kafka://<ZOOKEEPER_KAFKA_ADDRESS>/<topic_name>
, где ZOOKEEPER_KAFKA_ADDRESS
— значение соответствующего параметра конфигурации. Для загрузки данных используется следующий порт:
- указанный в составе
ZOOKEEPER_KAFKA_ADDRESS
— если значение содержит номер порта; - порт 2181 — иначе.
Полный путь к топику сконфигурированных брокеров Kafka
Полный путь к топику брокеров Kafka, заданных в конфигурации Prostore, имеет следующий формат (квадратными скобками обозначены опциональные параметры):
kafka://<zkhost_1>[:<port_1>][,<zkhost_2>[:<port_2>]][,<zkhost_3>[:<port_3>]]/<topic_name>
Где:
zkhost_N
— имя или IP-адрес хоста Zookeeper, к которому подключены брокеры Kafka с топикомtopic_name
;[ port_N ]
— порт хоста ZooKeeper, используемый брокерами Kafka с топикомtopic_name
для подключения. Значение должно соответствовать порту, заданному в конфигурации ZooKeeper для подключения клиентов;topic_name
— имя топика Kafka.
Для внешней таблицы сохраняются и для загрузки данных используются следующие порты:
- указанные в пути при создании внешней таблицы — если такие были указаны;
- заданные с помощью параметра конфигурации
ZOOKEEPER_KAFKA_ADDRESS
— если порты не были указаны при создании внешней таблицы и при этом значениеZOOKEEPER_KAFKA_ADDRESS
содержит номера портов; - путь сохраняется без указания портов, а для загрузки данных используется порт 2181 — иначе.
Если параметр конфигурации ZOOKEEPER_KAFKA_CHROOT
имеет непустое значение, это значение автоматически добавляется как chroot
к пути, сохраненному для внешней таблицы, при загрузке данных.
Примеры:
-- путь с именами нескольких хостов ZooKeeper и указанием портов
kafka://zk1:2181,zk2:2181,zk3:2181/sales_in
-- путь с именами нескольких хостов ZooKeeper и без указания портов
kafka://zk1,zk2,zk3/sales_in
-- путь с именем одного хоста ZooKeeper
kafka://zk1:2181/sales_in
-- путь с IP-адресом одного хоста ZooKeeper
kafka://192.168.60.97:2181/sales_in
Путь к топику произвольных брокеров Kafka
Путь к топику произвольных брокеров Kafka имеет следующий формат (квадратными скобками обозначены опциональные параметры):
kafka_brokers://<kafkabroker_1>[:<port_1>][,<kafkabroker_2>[:<port_2>]][,<kafkabroker_3>[:<port_3>]]/<topic_name>
Где:
kafkabroker_N
— имя или IP-адрес брокера Kafka с топикомtopic_name
;[ port_N ]
— порт брокера, доступный для подключения. Если значение не указано, путь к топику сохраняется без номера порта, а для загрузки данных используется порт 9092;topic_name
— имя топика Kafka.
Примеры:
-- путь с именами нескольких брокеров
kafka_brokers://kb1:9092,kb2:9092,kb3:9092/sales_in
-- путь с именем одного брокера с указанием порта
kafka_brokers://kb1:9092/sales_in
-- путь с именем одного брокера без указания порта
kafka_brokers://kb1/sales_in
-- путь с IP-адресом одного брокера
kafka_brokers://192.168.10.245:9092/sales_in