Что такое MapReduce в Hadoop

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

Проект Apache Hadoop содержит несколько подпроектов:

  • Общее Hadoop: Общее Hadoop, содержащее утилиты, которые поддерживают другие подпроекты Hadoop.
  • Распределенная файловая система Hadoop (HDFS). Распределенная файловая система Hadoop обеспечивает доступ к распределенному файлу для данных приложения.
  • Hadoop MapReduce: Hadoop MapReduce - это программная среда для обработки больших распределенных наборов данных на вычислительных кластерах.
  • Hadoop YARN: Hadoop YARN является основой для управления ресурсами и планирования работы.

Как MapReduce в Hadoop облегчает работу?

MapReduce упрощает масштабирование обработки данных на сотнях или тысячах кластерных машин. Модель MapReduce на самом деле работает в два этапа, называемых map и Reduce, и обработка называется Mapper и Reducer соответственно. Как только мы напишем MapReduce для приложения, масштабирование приложения до нескольких или даже нескольких тысяч кластеров - это просто изменение конфигурации. Эта особенность модели MapReduce привлекла многих программистов для ее использования.

Как работает MapReduce в Hadoop?

Программа MapReduce выполняется в основном в четыре этапа:

  1. Входные расщепления
  2. карта
  3. шарканье
  4. уменьшить

Теперь мы увидим каждый шаг, как они работают.

1. Карта шаг

Этот шаг является комбинацией шага разделения входных данных и шага карты. На шаге Map исходный файл передается построчно. Перед передачей ввода в задание функции Map вход делится на небольшой фиксированный размер, называемый Input split. Разделение ввода - это фрагмент ввода, который может быть использован одной картой. На этапе Map все данные разделения передаются в функцию mapper, затем функция mapper обрабатывает данные и затем выводит значения. Обычно входные данные задания карты или картографа находятся в форме файла или каталога, который хранится в файловой системе Hadoop (HDFS).

2. Уменьшить шаг

Этот шаг является комбинацией шага Shuffle и Reduce. Функция Reduce или задание Reducer берет данные, которые являются результатом функции карты. После обработки с помощью функции уменьшения получается новый набор результатов, который снова сохраняется в HDFS.

В среде Hadoop нет уверенности в том, что каждый кластер выполняет какое задание: либо Map, либо Reduce, либо одновременно Map и Reduce. Поэтому запрос задач Map и Reduce следует отправлять на соответствующие серверы в кластере. Платформа Hadoop сама управляет всеми задачами выдачи, проверки завершения работы, извлечения данных из HDFS, копирования данных в кластер узлов и так далее. В Hadoop в основном вычисления выполняются на узлах вместе с данными на самих узлах, что снижает сетевой трафик.

Таким образом, среда MapReduce очень полезна в среде Hadoop.

Преимущества MapReduce

  1. Масштабируемость - MapReduce обеспечивает высокую масштабируемость Hadoop, поскольку позволяет хранить большие наборы данных в распределенной форме на нескольких серверах. Как он распределен по нескольким, так может работать параллельно.
  2. Экономически эффективное решение - MapReduce предоставляет очень экономически эффективное решение для предприятий, которым необходимо хранить растущие данные и обрабатывать данные очень экономичным способом, что является современной потребностью бизнеса.
  3. Гибкость - MapReduce делает Hadoop очень гибким для различных источников данных и даже для различных типов данных, таких как структурированные или неструктурированные данные. Таким образом, он обеспечивает очень гибкий доступ к структурированным или неструктурированным данным и их обработку.
  4. Быстро - как хранилище данных Hadoop в распределенной файловой системе, благодаря чему данные, хранящиеся на локальном диске кластера и в программах MapReduce, также обычно находятся на тех же серверах, что обеспечивает более быструю обработку данных без необходимости доступа данные с других серверов.
  5. Параллельная обработка - поскольку Hadoop хранит данные в распределенной файловой системе и работа программы MapReduce такова, что она разделяет задачи на карту задач и сокращает их и может выполняться параллельно. И снова из-за параллельного выполнения, это сокращает все время выполнения.

Навыки и умения

Необходимые навыки для MapReduce в Hadoop - это хорошее знание программирования Java (обязательно), операционной системы Linux и знание SQL-запросов.

Область применения MapReduce в Hadoop

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

Вывод

  • MapReduce - это структура Hadoop, которая используется для надежной обработки параллельных огромных объемов данных на больших кластерах аппаратного обеспечения.
  • Проект Apache Hadoop содержит ряд подпроектов, таких как Hadoop Common, Распределенная файловая система Hadoop (HDFS), Hadoop MapReduce, Hadoop YARN.
  • На шаге карты все данные разделения передаются в функцию отображения, затем функция преобразования обрабатывает данные и затем выводит значения.
  • Функция Reduce или задание Reducer берет данные, которые являются результатом функции карты.
  • Преимущества MapReduce, такие как масштабируемость, экономичное решение, гибкость, быстрая параллельная обработка.

Рекомендуемые статьи

Это было руководство к тому, что такое MapReduce в Hadoop. Здесь мы обсудили компоненты, работу, навыки, карьерный рост и преимущества MapReduce в Hadoop. Вы также можете просмотреть наши другие предлагаемые статьи, чтобы узнать больше

  1. Что такое алгоритм?
  2. Отличия Hadoop от MapReduce
  3. Что такое лазурь?
  4. Что такое технология больших данных?
  5. Как работает MapReduce