Sadržaj:
Definicija - Što znači MapReduce?
MapReduce je programski model koji je uveo Google za obradu i generiranje velikih skupova podataka na klasterima računala.
Google je prvo formulirao okvir u svrhu prikazivanja Googleovog indeksiranja web stranica, a novi je okvir zamijenio ranije algoritme indeksiranja. Početni programeri smatraju da je okvir MapReduce koristan jer se rutinske knjižnice mogu koristiti za stvaranje paralelnih programa bez ikakve brige o komunikaciji unutar klastera, nadzoru zadataka ili postupcima rukovanja kvarovima.
MapReduce radi na velikoj grupi robnih strojeva i vrlo je skalabilan. Ima nekoliko oblika implementacije koje pruža više programskih jezika, kao što su Java, C # i C ++.
Tehopedia objašnjava MapReduce
Okvir MapReduce ima dva dijela:
- Funkcija koja se zove "Karta", koja omogućava različitim točkama distribuiranog klastera da distribuiraju svoj rad
- Funkcija nazvana "Smanji", koja je osmišljena tako da konačni oblik rezultata klastera smanji na jedan izlaz
Glavna prednost okvira MapReduce je njegova otpornost na pogreške, gdje se očekuju periodična izvješća iz svakog čvora u klasteru po završetku radova.
Zadatak se prenosi s jednog čvora na drugi. Ako glavni čvor primijeti da čvor šuti u dužem intervalu od očekivanog, glavni čvor provodi postupak preusmjeravanja na zamrznuti / odgođeni zadatak.
Okvir MapReduce inspiriran je funkcijama "Map" i "Reduce" koje se koriste u funkcionalnom programiranju. Računalna obrada događa se na podacima pohranjenim u datotečnom sustavu ili unutar baze podataka, koji uzima skup ulaznih ključa i proizvodi skup izlaznih ključnih vrijednosti.
Svakog dana na Googleovim klasterima izvršavaju se brojni programi MapReduce i MapReduce. Programi se automatski paraleliziraju i izvršavaju na velikom skupu robnih strojeva. Sustav izvođenja bavi se podjelom ulaznih podataka, zakazivanje izvršenja programa na skupu strojeva, rukovanjem kvarom na stroju i upravljanjem potrebnom intermašinskom komunikacijom. Programeri bez iskustva s paralelnim i distribuiranim sustavima lako mogu koristiti resurse velikog distribuiranog sustava.
MapReduce koristi se u distribuiranom grep-u, distribuiranoj vrsti, preokretu internetskog povezivanja, statistikama dnevnika internetskog pristupa, grupiranju dokumenata, strojnom učenju i statističkom strojnom prijevodu.
