MapReduce

Autor: Louise Ward
Dátum Stvorenia: 9 Február 2021
Dátum Aktualizácie: 1 V Júli 2024
Anonim
What is MapReduce?
Video: What is MapReduce?

Obsah

Definícia - Čo znamená MapReduce?

MapReduce je programovací model, ktorý zaviedla spoločnosť Google na spracovanie a generovanie veľkých súborov údajov v klastroch počítačov.


Spoločnosť Google najprv vytvorila rámec na účely indexovania webových stránok spoločnosti Google a nový rámec nahradil predchádzajúce algoritmy indexovania. Pre začínajúcich vývojárov je rámec MapReduce výhodný, pretože knižničné rutiny môžu byť použité na vytváranie paralelných programov bez obáv z infračervenej klastrovej komunikácie, monitorovania úloh alebo procesov riešenia porúch.

MapReduce beží na veľkom zoskupení komoditných strojov a je vysoko škálovateľný. Má niekoľko foriem implementácie poskytovaných viacerými programovacími jazykmi, ako napríklad Java, C # a C ++.

Úvod do programu Microsoft Azure a Microsoft Cloud V tejto príručke sa dozviete, o čom všetko je cloud computing a ako vám môže Microsoft Azure pomôcť migrovať a podnikať z cloudu.

Techopedia vysvetľuje MapReduce

Rámec MapReduce má dve časti:


  1. Funkcia s názvom „Mapa“, ktorá umožňuje distribuovať prácu rôznym bodom distribuovaného klastra
  2. Funkcia s názvom „Znížiť“, ktorá je navrhnutá tak, aby redukovala výslednú formu výsledkov zoskupení na jeden výstup

Hlavnou výhodou rámca MapReduce je jeho odolnosť proti chybám, kde sa po dokončení práce očakávajú pravidelné správy z každého uzla v klastri.

Úloha sa prenáša z jedného uzla do druhého. Ak hlavný uzol zaznamená, že uzol mlčal dlhší interval, ako sa očakávalo, hlavný uzol vykoná proces priradenia k zmrazenej / oneskorenej úlohe.

Rámec MapReduce je inšpirovaný funkciami „Map“ a „Reduce“, ktoré sa používajú vo funkčnom programovaní. Výpočtové spracovanie prebieha na dátach uložených v súborovom systéme alebo v databáze, ktorá berie množinu vstupných kľúčov a vytvára množinu výstupných kľúčov.


Každý deň sa v klastroch spoločnosti Google uskutočňuje množstvo programov MapReduce a úloh MapReduce. Programy sa automaticky paralelizujú a vykonávajú na veľkom zoskupení komoditných strojov. Runtime systém sa zaoberá rozdelením vstupných údajov, plánovaním vykonávania programov na skupinu strojov, spracovaním porúch strojov a riadením požadovanej medziústavnej komunikácie. Programátori, ktorí nemajú skúsenosti s paralelnými a distribuovanými systémami, môžu ľahko využiť zdroje veľkého distribuovaného systému.

MapReduce sa používa v distribuovaných grepoch, distribuovaných druhoch, obrátení grafov webového prepojenia, štatistikách prístupových protokolov k webu, zoskupovaní dokumentov, strojovom učení a štatistickom strojovom preklade.