2015-05-20 2 views
1

Приветствуем любую идею после прочтения описания проблемы.Storm-kafka Hortonworks Учебники для потоковой передачи данных в реальном времени

История вопроса: Публикация сообщения с использованием Apache Kafka: Работает брокер Kafka. Производители Kafka - это приложение, которое создает сообщения и публикует их для брокера Kafka для дальнейшего потребления. Поэтому для того, чтобы потребитель Кафки потреблял данные, необходимо создать тему Кафки до того, как производитель и потребитель Kafka начнет публиковать сообщение и потреблять сообщение.

Kafka успешно зарекомендовал себя как потребитель Кафки, способный потреблять данные из темы и отображения Кафки.

Перед запуском топологии Storm остановите потребителя Kafka, чтобы Storm Spout смог работать с источником потоков данных из тем кафки.

Обработка данных в реальном времени с использованием Apache Storm: С созданной топологией Storm Storm Spout работает над источником потоков данных, что означает, что Spout будет считывать данные из тем кафки. С другой стороны, Spout передает потоки данных в Storm Bolt, который обрабатывает и создает данные в HDFS (формат файла) и HBase (формат db) для целей хранения.

  1. Zookeeper znode отсутствует последний ребенок znode. Из файла журнала, 2015-05-20 04:22:43 b.s.util [ERROR] Асинхронная петля умерла! java.lang.RuntimeException: java.lang.RuntimeException: org.apache.zookeeper.KeeperException $ NoNodeException: KeeperErrorCode = NoNode для/брокеров/темы/truckevent/разделов

Zookeeper является службой координации для применения распределения. С клиентом zookeeper мы всегда видим/brokers/themes/truckevent, но последний znode всегда отсутствует при запуске шторма. Мне удалось решить эту проблему один раз, если мы создадим znode вручную. Однако тот же метод больше не работает для последующего тестирования.

  1. Шторм (TrucjHBaseBolt - это класс java) не смог получить доступ к соединениям с таблицами HBase. Из файла журнала 2015-05-20 4:22:51 c.h.t.t.TruckHBaseBolt [ERROR] retrievinging Ошибка подключения и доступа к Hbase Таблицы

Я был вручную создать таблицу Hbase как для формата данных в HBase. Однако восстановить соединение с HBase все еще не удалось.

  1. Storm (класс java java) объявляет о разрешении, запрещенном, когда штормовой пользователь записывает данные в hdfs. Из файла журнала, 2015-05-20 04:22:43 b.s.util [ERROR] Асинхронная петля умерла! java.lang.RuntimeException: Ошибка при подготовке HdfsBolt: Разрешение отказано: Пользователь = грозу, доступ = WRITE, инод = "/": HDFS: HDFS: drwxr-хт-х

Любой может помочь в этом?

ответ

1

Предложение для задачи 1:

Стоп топология шторм. Удалите znodes, связанные с темами, вручную в zookeeper, где выполняется буря, и перезапустите топологию шторма. Это создаст новые зноды.

Предложение для задачи 2:

Первая проверка с помощью Java-код, если вы можете подключиться к Hbase. Затем проверьте ту же логику в топологии Storm.

Ответ на проблемы 3:

По вашему лог пользователя = шторм, но каталог, в котором вы пишете принадлежат HDFS. Поэтому измените пользовательское разрешение этого каталога и сделайте шторм, как пользователь, используя команду chown.