Чтение онлайн

на главную - закладки

Жанры

Обработка больших данных
Шрифт:

Ещё одно ограничение связано с тем, что MapReduce требует значительных ресурсов для выполнения этапов Shuffle and Sort, особенно при работе с большими объемами данных, что может приводить к узким местам в производительности.

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

остаётся важной и востребованной моделью программирования для распределённой обработки данных, особенно для задач, связанных с анализом больших объемов информации.

– YARN (Yet Another Resource Negotiator)

YARN (Yet Another Resource Negotiator) – это система управления ресурсами, которая стала ключевым компонентом второй версии Hadoop (Hadoop 2.x). YARN была разработана для преодоления ограничений первой версии Hadoop, в которой MapReduce одновременно выполнял роли как фреймворка для обработки данных, так и системы управления ресурсами. Введение YARN позволило отделить эти функции, что значительно повысило гибкость и эффективность использования ресурсов в кластерах Hadoop.

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

1. ResourceManager (Менеджер ресурсов):

Расположение: Центральный компонент системы YARN, который управляет всеми ресурсами кластера.

Функции: ResourceManager отвечает за распределение ресурсов между различными приложениями. Он получает запросы от приложений на выделение ресурсов, принимает решения о размещении задач на узлах и контролирует состояние кластера. ResourceManager включает в себя два основных модуля: Scheduler и ApplicationManager.

Scheduler: Этот модуль отвечает за планирование ресурсов, распределяя вычислительные мощности (CPU, память) между приложениями в соответствии с их приоритетами и требованиями. Scheduler действует на основе политики выделения ресурсов, не выполняя самих задач, что позволяет избежать конфликтов и перегрузки кластера.

ApplicationManager: Управляет жизненным циклом приложений, начиная от их инициализации до завершения. Этот модуль координирует запуск и мониторинг всех компонентов приложения на узлах кластера.

2. NodeManager (Менеджер узла):

Расположение: Работает на каждом узле кластера.

Функции: NodeManager отвечает за управление ресурсами на конкретном узле. Он отслеживает использование ресурсов (памяти, процессора) на узле и управляет контейнерами (containers) – изолированными средами выполнения, в которых запускаются задачи приложения. NodeManager также регулярно отправляет отчёты о состоянии узла и его ресурсах в ResourceManager.

3. ApplicationMaster (Менеджер приложения):

Расположение: Запускается для каждого приложения, работающего на YARN.

Функции: ApplicationMaster управляет выполнением конкретного приложения. Он запрашивает у ResourceManager необходимые ресурсы, распределяет их между задачами приложения, следит за выполнением

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

YARN значительно улучшает масштабируемость, гибкость и эффективность кластера Hadoop благодаря следующим функциям:

1. Разделение управления ресурсами и обработкой данных:

В отличие от первой версии Hadoop, где MapReduce выполнял функции как фреймворка для обработки данных, так и системы управления ресурсами, YARN выделяет управление ресурсами в отдельный слой. Это позволяет запускать на кластере не только задачи MapReduce, но и другие типы приложений (например, Apache Spark, Apache Flink), что делает Hadoop универсальной платформой для работы с большими данными.

2. Поддержка различных типов рабочих нагрузок:

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

3. Динамическое выделение ресурсов:

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

4. Масштабируемость:

YARN спроектирована для работы на масштабируемых кластерах, что позволяет увеличивать количество узлов и приложений без значительных изменений в конфигурации системы. Это достигается благодаря децентрализации управления: ResourceManager и NodeManager распределяют нагрузку, а ApplicationMaster обеспечивает индивидуальное управление приложениями.

Введение YARN произвело революцию в экосистеме Hadoop, превратив её из платформы, ориентированной исключительно на MapReduce, в универсальную среду для выполнения различных типов приложений. YARN открыло возможности для интеграции множества фреймворков и инструментов, таких как Apache Spark, Apache Storm, Apache Flink, и другие. Это сделало Hadoop более гибкой и адаптивной платформой, способной удовлетворять разнообразные потребности современных организаций в области обработки и анализа больших данных.

YARN также обеспечило более эффективное использование ресурсов в кластерах, что позволило компаниям снизить затраты на инфраструктуру и увеличить производительность своих систем. В результате YARN стал неотъемлемым компонентом для всех, кто работает с большими данными, обеспечивая надёжную, масштабируемую и гибкую основу для работы с различными типами данных и вычислений.

Ниже приведена схема, которая показывает, как компоненты YARN взаимодействуют между собой для распределения ресурсов и выполнения задач.

Поделиться:
Популярные книги

Вечный. Книга I

Рокотов Алексей
1. Вечный
Фантастика:
боевая фантастика
попаданцы
рпг
5.00
рейтинг книги
Вечный. Книга I

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

Арсентьева Александра
Дом и Семья:
образовательная литература
5.17
рейтинг книги
Как притвориться идеальным мужчиной

Тот самый сантехник. Трилогия

Мазур Степан Александрович
Тот самый сантехник
Приключения:
прочие приключения
5.00
рейтинг книги
Тот самый сантехник. Трилогия

Третий. Том 4

INDIGO
Вселенная EVE Online
Фантастика:
боевая фантастика
космическая фантастика
попаданцы
5.00
рейтинг книги
Третий. Том 4

В погоне за женой, или Как укротить попаданку

Орлова Алёна
Фантастика:
фэнтези
6.62
рейтинг книги
В погоне за женой, или Как укротить попаданку

Дочь Хранителя

Шевченко Ирина
1. Легенды Сопределья
Фантастика:
фэнтези
9.09
рейтинг книги
Дочь Хранителя

Соль этого лета

Рам Янка
1. Самбисты
Любовные романы:
современные любовные романы
6.00
рейтинг книги
Соль этого лета

Измена. Тайный наследник

Лаврова Алиса
1. Тайный наследник
Фантастика:
фэнтези
5.00
рейтинг книги
Измена. Тайный наследник

Он тебя не любит(?)

Тоцка Тала
Любовные романы:
современные любовные романы
7.46
рейтинг книги
Он тебя не любит(?)

Брачный сезон. Сирота

Свободина Виктория
Любовные романы:
любовно-фантастические романы
7.89
рейтинг книги
Брачный сезон. Сирота

Английский язык с У. С. Моэмом. Театр

Франк Илья
Научно-образовательная:
языкознание
5.00
рейтинг книги
Английский язык с У. С. Моэмом. Театр

Попытка возврата. Тетралогия

Конюшевский Владислав Николаевич
Попытка возврата
Фантастика:
альтернативная история
9.26
рейтинг книги
Попытка возврата. Тетралогия

Два лика Ирэн

Ром Полина
Любовные романы:
любовно-фантастические романы
6.08
рейтинг книги
Два лика Ирэн

Идеальный мир для Лекаря 14

Сапфир Олег
14. Лекарь
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Идеальный мир для Лекаря 14