Acasă Cloud-Computing Ce este mapreduce? - definiție din techopedia

Ce este mapreduce? - definiție din techopedia

Cuprins:

Anonim

Definiție - Ce înseamnă MapReduce?

MapReduce este un model de programare introdus de Google pentru procesarea și generarea unor seturi mari de date pe clustere de calculatoare.

Google a formulat mai întâi cadrul cu scopul de a servi indexarea paginilor Web Google, iar noul cadru a înlocuit algoritmii de indexare anterioare. Dezvoltatorii începători consideră cadrul MapReduce benefic pentru că rutinele bibliotecii pot fi utilizate pentru a crea programe paralele, fără griji în legătură cu comunicarea în infra-cluster, monitorizarea sarcinilor sau procesele de gestionare a eșecurilor.

MapReduce rulează pe un grup mare de mașini de marfă și este scalabil. Are mai multe forme de implementare furnizate de mai multe limbaje de programare, cum ar fi Java, C # și C ++.

Techopedia explică MapReduce

Cadrul MapReduce are două părți:

  1. O funcție numită „Hartă”, care permite diferitelor puncte ale clusterului distribuit să își distribuie munca
  2. O funcție numită „Reduce”, care este concepută pentru a reduce forma finală a rezultatelor clusterelor într-o singură ieșire

Principalul avantaj al cadrului MapReduce este toleranța sa la erori, unde se așteaptă rapoarte periodice de la fiecare nod din cluster la finalizarea lucrărilor.

O sarcină este transferată de la un nod la altul. Dacă nodul principal observă că un nod a tăcut pentru un interval mai lung decât era de așteptat, nodul principal efectuează procesul de reasignare a sarcinii înghețate / întârziate.

Cadrul MapReduce este inspirat din funcțiile „Map” și „Reduce” utilizate în programarea funcțională. Prelucrarea computațională are loc pe datele stocate într-un sistem de fișiere sau într-o bază de date, care ia un set de valori cheie de intrare și produce un set de valori cheie de ieșire.

În fiecare zi, numeroase programe MapReduce și joburi MapReduce sunt executate pe clusterele Google. Programele sunt paralelizate și executate automat pe un grup mare de mașini de marfă. Sistemul de rulare se ocupă cu partitionarea datelor de intrare, programarea execuției programului într-un set de mașini, manipularea defecțiunilor mașinii și gestionarea comunicării intermachine necesare. Programatorii fără experiență cu sisteme paralele și distribuite pot utiliza cu ușurință resursele unui sistem distribuit mare.

MapReduce este utilizat în distribuție grep distribuită, sortare distribuită, inversare de link-grafic web, statistici de jurnal de acces Web, clustering de documente, învățare automată și traducere automată statistică.

Ce este mapreduce? - definiție din techopedia