MapReduce

Автор: Louise Ward
Дата На Създаване: 9 Февруари 2021
Дата На Актуализиране: 12 Може 2024
Anonim
What is MapReduce?
Видео: What is MapReduce?

Съдържание

Определение - Какво означава MapReduce?

MapReduce е програмен модел, въведен от Google за обработка и генериране на големи масиви от данни в клъстери от компютри.


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

MapReduce работи на голям куп стокови машини и е силно мащабируем. Той има няколко форми на изпълнение, предоставяни от множество езици за програмиране, като Java, C # и C ++.

Въведение в Microsoft Azure и Microsoft Cloud | В това ръководство ще научите какво представлява компютърните изчисления и как Microsoft Azure може да ви помогне да мигрирате и стартирате бизнеса си от облака.

Техопедия обяснява MapReduce

Рамката MapReduce има две части:

  1. Функция, наречена "Карта", която позволява на различни точки от разпределения клъстер да разпределят работата си
  2. Функция, наречена "Намаляване", която е предназначена да намали крайната форма на резултатите от клъстерите в един изход

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


Задача се прехвърля от един възел в друг. Ако главният възел забележи, че даден възел е безшумен за по-дълъг интервал от очакваното, основният възел изпълнява процеса на преназначаване на замразена / забавена задача.

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

Всеки ден многобройни програми MapReduce и задания MapReduce се изпълняват в клъстери на Googles. Програмите се паралелизират автоматично и се изпълняват на голям клъстер от стокови машини. Системата по време на работа се занимава с разделяне на входните данни, планиране на изпълнението на програмите в набор от машини, обработка на грешки в машината и управление на необходимата междусъобщителна комуникация. Програмистите без опит с паралелни и разпределени системи могат лесно да използват ресурсите на голяма разпределена система.


MapReduce се използва в разпределен греп, разпределен сортиране, обръщане на графика на уеб линкове, статистика на журнала за достъп до уеб, групиране на документи, машинно обучение и статистически машинен превод.