Hadoop - различные режимы работы

Опубликовано: 18 Февраля, 2022

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

Hadoop в основном работает в трех разных режимах:

  1. Автономный режим
  2. Псевдораспределенный режим
  3. Полностью распределенный режим

1. Автономный режим

В автономном режиме ни один из демонов не будет работать, например, Namenode, Datanode, узел вторичного имени, Job Tracker и Task Tracker. Мы используем трекер вакансий и трекер задач для обработки в Hadoop1. Для Hadoop2 мы используем диспетчер ресурсов и диспетчер узлов. Автономный режим также означает, что мы устанавливаем Hadoop только в одной системе. По умолчанию Hadoop запускается в этом автономном режиме, или мы также можем назвать его локальным режимом . В основном мы используем Hadoop в этом режиме для обучения, тестирования и отладки.

Hadoop работает в этом режиме намного быстрее всех этих трех режимов. Как мы все знаем, HDFS (распределенная файловая система Hadoop) является одним из основных компонентов Hadoop, который используется для хранения. Разрешения не используются в этом режиме. Вы можете думать о HDFS как о подобной файловой системе, доступной для Windows, то есть NTFS (файловая система новой технологии) и FAT32 (таблица размещения файлов, в которой данные хранятся в 32-битных блоках). когда ваш Hadoop работает в этом режиме, нет необходимости настраивать файлы - hdfs-site.xml , mapred-site.xml , core-site.xml для среды Hadoop. В этом режиме все ваши процессы будут работать на одной JVM (виртуальной машине Java), и этот режим можно использовать только для небольших целей разработки.

2. Псевдо-распределенный режим (кластер с одним узлом)

В псевдораспределенном режиме мы также используем только один узел, но главное, что кластер моделируется, а это означает, что все процессы внутри кластера будут выполняться независимо друг от друга. Все демоны, такие как Namenode, Datanode, узел вторичного имени, диспетчер ресурсов, диспетчер узлов и т. Д., Будут работать как отдельный процесс на отдельной JVM (виртуальной машине Java), или мы можем сказать, что они запускаются в разных процессах Java, поэтому это называется псевдораспределенным.

Мы должны помнить одну вещь, поскольку мы используем только один узел, поэтому все процессы Master и Slave обрабатываются одной системой. Namenode и Resource Manager используются как Master и Datanode, а Node Manager используется как slave. Вторичный узел имени также используется как главный. Назначение узла Secondary Name - просто сохранять почасовую резервную копию узла Name. В этом режиме

  • Hadoop используется как для разработки, так и для отладки.
  • Наша HDFS (распределенная файловая система Hadoop) используется для управления процессами ввода и вывода.
  • Нам нужно изменить файлы конфигурации mapred-site.xml , core-site.xml , hdfs-site.xml для настройки среды.

3. Полностью распределенный режим (многоузловой кластер)

Это самый важный из них, в котором используются несколько узлов, некоторые из них запускают Master Daemon, то есть Namenode и Resource Manager, а остальные запускают Slave Daemon, которые являются DataNode и Node Manager. Здесь Hadoop будет работать на кластерах Машины или узлов. Здесь используемые данные распределяются по разным узлам. На самом деле это производственный режим Hadoop, давайте проясним или лучше поймем этот режим в физической терминологии.

После того, как вы загрузите Hadoop в формате tar-файла или zip-файла, вы установите его в своей системе и запустите все процессы в одной системе, но здесь, в полностью распределенном режиме, мы распаковываем этот tar- или zip-файл в каждый из узлов в кластере Hadoop, а затем мы используем конкретный узел для определенного процесса. После того, как вы распределите процесс между узлами, вы определите, какие узлы работают как ведущие, а какие из них - как ведомые.