Casa Cloud computing Che cos'è mapreduce? - definizione da techopedia

Che cos'è mapreduce? - definizione da techopedia

Sommario:

Anonim

Definizione - Cosa significa MapReduce?

MapReduce è un modello di programmazione introdotto da Google per l'elaborazione e la generazione di set di dati di grandi dimensioni su cluster di computer.

Google ha innanzitutto formulato il framework allo scopo di servire l'indicizzazione delle pagine Web di Google e il nuovo framework ha sostituito i precedenti algoritmi di indicizzazione. Gli sviluppatori principianti trovano utile il framework MapReduce perché le routine di libreria possono essere utilizzate per creare programmi paralleli senza preoccupazioni per la comunicazione infragruppo, il monitoraggio delle attività o i processi di gestione degli errori.

MapReduce funziona su un ampio cluster di macchine per materie prime ed è altamente scalabile. Ha diverse forme di implementazione fornite da più linguaggi di programmazione, come Java, C # e C ++.

Techopedia spiega MapReduce

Il framework MapReduce ha due parti:

  1. Una funzione chiamata "Mappa", che consente a diversi punti del cluster distribuito di distribuire il proprio lavoro
  2. Una funzione chiamata "Riduci", progettata per ridurre la forma finale dei risultati dei cluster in un output

Il vantaggio principale del framework MapReduce è la sua tolleranza agli errori, in cui sono previsti report periodici da ciascun nodo del cluster al termine del lavoro.

Un'attività viene trasferita da un nodo a un altro. Se il nodo principale nota che un nodo è rimasto in silenzio per un intervallo più lungo del previsto, il nodo principale esegue il processo di riassegnazione all'attività bloccata / ritardata.

Il framework MapReduce si ispira alle funzioni "Mappa" e "Riduci" utilizzate nella programmazione funzionale. L'elaborazione computazionale si verifica sui dati memorizzati in un file system o all'interno di un database, che accetta una serie di valori della chiave di input e produce una serie di valori della chiave di output.

Ogni giorno, numerosi programmi MapReduce e lavori MapReduce vengono eseguiti sui cluster di Google. I programmi vengono automaticamente parallelizzati ed eseguiti su un ampio cluster di macchine per materie prime. Il sistema di runtime si occupa del partizionamento dei dati di input, della pianificazione dell'esecuzione del programma su una serie di macchine, della gestione degli errori della macchina e della gestione della comunicazione intermachine richiesta. I programmatori senza alcuna esperienza con sistemi paralleli e distribuiti possono facilmente utilizzare le risorse di un grande sistema distribuito.

MapReduce viene utilizzato in grep distribuito, ordinamento distribuito, inversione del grafico dei collegamenti Web, statistiche del registro degli accessi Web, raggruppamento di documenti, apprendimento automatico e traduzione automatica statistica.

Che cos'è mapreduce? - definizione da techopedia