2

Я не слишком хорошо знаком с Kafka, но я хотел бы знать, что является лучшим способом для читать данные в партиях от Kafka, поэтому я могу использовать Elasticsearch Bulk Api для загрузки данных быстрее и надежно.Как я могу заказать Kafka в Elasticsearch

Btw, я использую VertX для моего Кафки потребителя

Спасибо,

ответ

4

Я не могу сказать, если это лучший подход или нет, но когда я начал искать подобную функциональность я не мог найти легко доступные рамки. Я нашел этот проект:

https://github.com/reachkrishnaraj/kafka-elasticsearch-standalone-consumer/tree/branch2.0

и начала вносить вклад в него, поскольку он не делал все, что хотел, и был также не легко масштабируется. Теперь версия 2.0 достаточно надежна и мы используем ее в производстве в нашей компании по обработке/индексированию событий 300M + в день.

Это не самореклама :) - просто поделитесь тем, как мы делаем то же самое произведение. Конечно, могут быть и другие варианты.

+0

Примечания: последняя разработка перемещается в этот Репо сейчас, который имеет Докер и Gradle поддержку: https://github.com/BigDataDevs/kafka-elasticsearch-consumer – Marina

0

Я использовал искрообразование, и это была довольно простая реализация с использованием Scala.

1

https://github.com/confluentinc/kafka-connect-elasticsearch

Или Вы можете попробовать этот источник

https://github.com/reachkrishnaraj/kafka-elasticsearch-standalone-consumer

Запуск в качестве стандартного Jar

** 1. Загрузите код в директорию $ INDEXER_HOME.

** 2. cp $ INDEXER_HOME/src/main/resources/kafka-es-indexer.properties.template /your/absolute/path/kafka-es-indexer.properties - обновить все соответствующие свойства, как объяснено в комментариях

** 3. ф $ INDEXER_HOME/SRC/главная/ресурсы/logback.xml.template /your/absolute/path/logback.xml

указать директорию вы хотите хранить журналы в:

настроить значения максимальных размеров и количества файлы журналов по мере необходимости

** 4. строить/создать приложение баночку (убедитесь, что у вас есть Maven установлен):

cd $INDEXER_HOME 
mvn clean package 

Кафки-эс-индексатор-2.0.jar будет создан в $ INDEXER_HOME/бункере. Все зависимости будут помещены в $ INDEXER_HOME/bin/lib. Все зависимости JAR связаны через манифест kafka-es-indexer-2.0.jar.

** 5. отредактируйте свой скрипт $ INDEXER_HOME/run_indexer.sh: - сделайте его исполняемым при необходимости (chmod a + x $ INDEXER_HOME/run_indexer.sh) - обновите свойства, отмеченные как комментарии «ИЗМЕНЕНИЕ ДЛЯ ВАШЕГО ENV» - в соответствии с вашей средой

** 6. запустить приложение [использовать JDK1.8]:

./run_indexer.sh 
Смежные вопросы