2015-09-05 3 views
0

Я читал много сайтов, связанных со штормом. Но все же я не могу точно сопоставить топологию с грозовым кластером.Apache storm - топология карты со штормовым кластером

Пожалуйста, помогите мне разобраться в этом.

В штормовом кластере есть такие термины, как

  • Руководитель
  • Рабочего узел
  • рабочего процессор
  • Рабочих
  • Слотов
  • Исполнитель
  • Задача

В топологии есть

  • Носик
  • Болт

Также можно настроить

  • numWorkers
  • параллелизм

Итак, кому угодно, пожалуйста, связывайте все эти вещи, чтобы помочь мне.

Я хочу знать, как, каждый носик/болт является исполнителем или это задача. Если дана подсказка параллелизма, счетчик которого будет увеличиваться. Если установлено число рабочих, количество которых указано.

Все эти вещи, чтобы карта с грозовым кластером. Я уже работал в проекте. Поэтому я знаю топологию.

ответ

3

Физическая настройка кластера:

Термин узел обычно относится к физической машине (или VM) в кластере. На каждом узле супервайзер работает в собственной JVM. Супервайзер имеет рабочие слоты. Это логическая конфигурация и указывает, сколько работника может быть запущено супервизором. Каждый рабочий (если запущен) работает в собственной JVM (таким образом, некоторые люди называют это рабочим процессом). Подводя итог: на узле есть один диспетчер JVM и рабочие JVM с числовыми рабочими местами. Следовательно, узел, на котором запущен рабочий JVM, можно назвать рабочим узлом. В то время как супервизор работает все время, рабочие запускаются, если необходимо, то есть, если топологии развернуты и прекращаются, когда топология убита. Внутри работника исполнителей запущены как темы (т. Е. Каждый исполнитель сопоставляет собственную тему).

Логической Настройка топологии:

топологии строить из носиков (также называемые источники, то есть, операторы, не имеющие входящего потока данных) и Болтов (регулярные операторы с по меньшей мере, одного входящим потоком данных и любое количество исходящих потоков данных - если нет исходящего потока данных, Болт также называется раковиной). Для каждого Spout/Bolt можно настроить два параметра:

  1. количество задач
  2. Присадка (степень параллельности, называется parallelism_hint), то есть, число исполнителей вы хотите иметь для носиком/Болт

Задачи являются логическая единица работы (то есть, что-то пассивное). Предположим, вы используете шаблон подключения fieldsGrouping. Таким образом, поток данных разбивается на множество задач многих подпотоков. Задачи назначаются исполнителям, т. Е. Каждый исполнитель обрабатывает одну или несколько задач. Это означает, что у вас не может быть меньше задач, чем исполнителей (т. Е. Параллелизма); в противном случае будет поток без какой-либо работы. (https://storm.apache.org/documentation/Understanding-the-parallelism-of-a-Storm-topology.html). Кроме того, есть много других вопросов о SO о задачах/исполнителях в Storm.

И последнее, но не менее важное: вы можете настроить numberOfWorkers для топологии. Этот параметр указывает, сколько рабочих должно быть запущено для запуска топологии. Общее количество исполнителей для топологии - это сумма допсов по всем Spouts/Bolts. Все исполнители будут равномерно распределены по всем доступным рабочим JVM.

Кроме того, один рабочий может запускать только исполнители одной топологии. Это делается для причин отказоустойчивости, т. Е. Топологии изолированы друг от друга. В то же время сам рабочий может запускать любое количество исполнителей.

Смежные вопросы