Формат пути к топику 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