Статьи

Обработка неограниченного потока с использованием Apache Beam

Последние две недели я пробовал использовать Apache Beam API. Я прочитал эту превосходную документацию, предоставленную Beam, и она помогла мне понять основы. Я рекомендую читателям пройти через это, прежде чем мы продолжим.

Вступление

Сегодня мы собираемся построить простой конвейер данных WordCount,  используя Apache Kafka для неограниченных источников. Мы могли бы использовать любого брокера сообщений для этого приложения, например, Google Pub / Sub и так далее. В Beam имеется множество встроенных разъемов ввода-вывода для обмена сообщениями. В конце нашего конвейера мы выведем результат в текстовый файл.

Вам также может понравиться: сделать интенсивную обработку данных эффективной и переносимой с помощью Apache Beam

Прежде чем мы перейдем к коду, мы должны знать некоторые концепции потоковой передачи, такие как управление окнами, триггеры, время обработки и время события. Я рекомендую прочитать эту статью Streamin 101 и Streaming 102 от Tyler Akidau .

Хорошо, давайте продолжим и сделаем настройку!

Настроить

  1. Настройте среду Java. Мы собираемся использовать Java API Beam.
  2. Установите Zookeeper и Apache Kafka. Если вам лень это делать, перейдите сюда (не беспокойтесь о Yarn, просто раскрутите Zookeeper и Kafka, используя команды «bin / grid start all» и «bin / grid stop all» .)
  3. Добавьте переменную $ KAFKA_HOME в файл .bashrc / .zshrc и перезапустите сеанс терминала.

  4. Оболочка