Какво е алгоритъм MapReduce?

Алгоритмът MapReduce е вдъхновен главно от модела на функционалното програмиране. Използва се за обработка и генериране на големи данни. Тези набори от данни могат да се стартират едновременно и да се разпространяват в клъстер. Програма MapReduce се състои главно от процедура на карта и метод на намаляване за извършване на обобщената операция като броене или даване на някои резултати. Системата MapReduce работи на разпределени сървъри, които работят паралелно и управляват всички комуникации между различни системи. Моделът е специална стратегия на стратегия за разделно прилагане и комбиниране, която помага в анализа на данните. Картографирането се извършва от класа Mapper и намалява задачата се извършва от клас Reducer.

Разбиране на алгоритма на MapReduce

Алгоритъмът MapReduce работи основно в три стъпки:

  • Функция на картата
  • Функция разбъркване
  • Намаляване на функцията

Нека обсъдим всяка функция и нейните отговорности.

1. Функция на картата

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

2. Функция разбъркване

Това е известно също като функция за комбиниране и включва обединяване и сортиране. Сливането комбинира всички двойки ключ-стойност. Всички те ще имат едни и същи клавиши. Сортирането отвежда входните данни от стъпката на сливане и сортира всички двойки ключ-стойност чрез използване на клавишите. Тази стъпка ще се върне и към двойки ключ-стойност. Изходът ще бъде сортиран.

3. Намаляване на функцията

Това е последната стъпка на този алгоритъм. Отнема двойките ключ-стойност от разбъркването и намалява операцията.

Как алгоритмите MapReduce правят работата лесна?

Системите за релационни бази данни имат централизиран сървър, който помага при съхраняване и обработка на данните. Това обикновено бяха централизирани системи. Когато няколко файла влязат в картината, обработката е досадна и създава затруднение при обработката на множество файлове. MapReduce картографира набора от данни и преобразува набора от данни, където всички данни са разделени на кортежи и задачата за намаляване ще вземе изхода от тази стъпка и ще комбинира тези пакети данни в по-малките набори. Той работи в различни фази и създава двойки ключ-стойност, които могат да бъдат разпределени в различни системи.

Какво можете да направите с алгоритмите MapReduce?

MapReduce може да се използва с различни приложения. Може да се използва за разгледано базирано на образец търсене, разпределено сортиране, обръщане на графиката на уеб линкове, статистика на уеб достъпа. Той може също да помогне в създаването и работата на множество клъстери, настолни решетки, доброволчески изчислителни среди. Човек може също така да създава динамични облачни среди, мобилни среди, както и високоефективни компютърни среди. Google използва MapReduce, който възстановява индекса на Google от световната мрежа. С него се актуализират старите ad hoc програми и те извършват различни видове анализ. Той също така интегрира резултатите от търсенето на живо, без да възстановява пълния индекс. Всички входове и изходи се съхраняват в разпределената файлова система. Преходните данни се съхраняват на локален диск.

Работа с алгоритъм MapReduce

За да работите с алгоритма на MapReduce, трябва да знаете пълния процес как работи. Постъпилите данни преминават през следните стъпки:

1. Разделяне на входа: Всички входни данни, които постъпват в заданието MapReduce, са разделени на равни части, известни като входни раздели. Това е част от входа, който може да бъде консумиран от всеки от картографите.

2. Картографиране: След като данните се разделят на парчета, той преминава през фазата на картографиране в програмата за намаляване на карти. Тези разделени данни се предават на функция за картографиране, която произвежда различни изходни стойности.

3. Разбъркване: След като картографирането е направено, данните се изпращат до тази фаза. Нейната задача е да обединява необходимите записи от предишната фаза.

4. Намаляване: В тази фаза изходът от фазата на разбъркване се агрегира. В тази фаза всички стойности се разместват и обединяват чрез агрегиране, така че тя връща единична изходна стойност. Той създава обобщение на целия набор от данни.

Предимства на алгоритма MapReduce

Приложенията, които използват MapReduce, имат следните предимства:

  1. Те са им осигурени сближаване и добри обобщаващи резултати.
  2. Данните могат да бъдат обработвани чрез използване на интензивни приложения.
  3. Осигурява висока мащабируемост.
  4. Преброяването на всякакви събития на всяка дума е лесно и има масивна колекция от документи.
  5. Генеричен инструмент може да се използва за търсене на инструмент в много анализи на данни.
  6. Той предлага време за балансиране на натоварването в големи клъстери.
  7. Той също така помага в процеса на извличане на контексти на местоположението на потребителите, ситуации и т.н.
  8. Той има достъп до големи извадки от респондентите бързо.

Защо трябва да използваме алгоритма MapReduce?

MapReduce е приложение, което се използва за обработка на огромни набори от данни. Тези набори от данни могат да се обработват паралелно. MapReduce потенциално може да създаде големи набори от данни и голям брой възли. Тези големи масиви от данни се съхраняват на HDFS, което прави анализа на данните по-лесен. Той може да обработва всякакъв вид данни като структурирани, неструктурирани или полуструктурирани.

Защо се нуждаем от алгоритма MapReduce?

MapReduce бързо се разраства и помага при паралелни изчисления. Той помага за определяне на цената на продуктите и помага за получаване на най-високи печалби. Той също така помага при прогнозиране и препоръчване на анализ. Тя позволява на програмистите да изпълняват модели над различни набори от данни и използва съвременни статистически техники и техники за машинно обучение, които помагат при прогнозиране на данните. Той филтрира и изпраща данните до различни възли в клъстера и функционира според функцията за картографиране и редуктор.

Как тази технология ще ви помогне в кариерния растеж?

Hadoop е сред най-търсените работни места в наши дни. Ускорява скоростта и възможността, която се разраства много бързо в тази област. В тази област ще има бум още повече. ИТ специалистите, които работят в Java, имат плюс, тъй като са най-търсените хора. Също така, разработчиците, архитектите на данни, складовите данни и специалистите по BI могат да отнемат огромни суми заплата, като научат тази технология.

заключение

MapReduce е основата на рамката на Hadoop. Научавайки това, вие със сигурност ще влезете на пазара за анализ на данни. Можете да го научите задълбочено и да се запознаете с това как се обработват големи набори от данни и как тази технология внася промяна с обработката и съхранението на данни.

Препоръчителни статии

Това е ръководство за алгоритмите MapReduce. Тук обсъждаме концепцията, разбирането, работата, нуждата, предимствата и кариерния растеж. Можете да разгледате и другите ни предложени статии, за да научите повече -

  1. Въпроси за интервю с MapReduce
  2. Какво представлява MapReduce в Hadoop?
  3. Как работи MapReduce?
  4. Какво е MapReduce?
  5. Разлики между Hadoop срещу MapReduce
  6. Различни операции, свързани с Tuples

Категория: