MapReduce

Autor: Louise Ward
Data De Criação: 9 Fevereiro 2021
Data De Atualização: 16 Poderia 2024
Anonim
What is MapReduce?
Vídeo: What is MapReduce?

Contente

Definição - O que significa o MapReduce?

O MapReduce é um modelo de programação introduzido pelo Google para processar e gerar grandes conjuntos de dados em clusters de computadores.


O Google formulou a estrutura pela primeira vez com a finalidade de veicular a indexação de páginas da Web do Google, e a nova estrutura substituiu os algoritmos de indexação anteriores. Os desenvolvedores iniciantes consideram a estrutura do MapReduce benéfica porque as rotinas da biblioteca podem ser usadas para criar programas paralelos sem se preocupar com comunicação por infra-cluster, monitoramento de tarefas ou processos de manipulação de falhas.

O MapReduce é executado em um grande cluster de máquinas comuns e é altamente escalável. Possui várias formas de implementação fornecidas por várias linguagens de programação, como Java, C # e C ++.

Uma introdução ao Microsoft Azure e Microsoft Cloud | Neste guia, você aprenderá sobre o que é a computação em nuvem e como o Microsoft Azure pode ajudá-lo a migrar e administrar seus negócios a partir da nuvem.

Techopedia explica o MapReduce

A estrutura do MapReduce possui duas partes:


  1. Uma função chamada "Mapa", que permite que diferentes pontos do cluster distribuído distribuam seu trabalho
  2. Uma função chamada "Reduzir", projetada para reduzir a forma final dos resultados dos clusters em uma saída

A principal vantagem da estrutura MapReduce é sua tolerância a falhas, em que relatórios periódicos de cada nó no cluster são esperados quando o trabalho é concluído.

Uma tarefa é transferida de um nó para outro. Se o nó principal perceber que um nó ficou em silêncio por um intervalo maior que o esperado, o nó principal executará o processo de reatribuição para a tarefa congelada / atrasada.

A estrutura do MapReduce é inspirada nas funções "Map" e "Reduce" usadas na programação funcional. O processamento computacional ocorre nos dados armazenados em um sistema de arquivos ou em um banco de dados, que utiliza um conjunto de valores de chave de entrada e produz um conjunto de valores de chave de saída.


Todos os dias, vários programas MapReduce e tarefas MapReduce são executados nos clusters do Google. Os programas são automaticamente paralelizados e executados em um grande cluster de máquinas de commodities. O sistema de tempo de execução lida com o particionamento dos dados de entrada, agendando a execução dos programas em um conjunto de máquinas, o tratamento de falhas da máquina e o gerenciamento da comunicação entre máquinas necessária. Programadores sem nenhuma experiência com sistemas paralelos e distribuídos podem usar facilmente os recursos de um grande sistema distribuído.

O MapReduce é usado em grep distribuído, classificação distribuída, reversão de gráfico de links da Web, estatísticas de log de acesso à Web, agrupamento de documentos, aprendizado de máquina e tradução automática de estatísticas.