Big Data e as origens do MapReduce
MapReduce é cada vez mais útil para dados grandes. No início de 2000, alguns engenheiros da Google olhou para o futuro e determinou que, enquanto suas soluções atuais para aplicações como rastreamento web, a frequência de consulta, e assim por diante foram adequados para a maioria dos requisitos existentes, que eram inadequados para a complexidade que o previsto como o web dimensionada para mais e mais usuários.
Esses engenheiros determinaram que se o trabalho pode ser distribuído através de computadores de baixo custo e, em seguida, ligado à rede, sob a forma de um # 147-cluster, # 148- eles poderiam resolver o problema. Distribuição por si só não era uma resposta suficiente. Esta distribuição de trabalho deve ser realizado em paralelo pelas três razões seguintes:
O tratamento deve ser capaz de expandir e contrair automaticamente.
A transformação deve ser capaz de prosseguir, independentemente de falhas na rede ou os sistemas individuais.
Os desenvolvedores alavancar esta abordagem deve ser capaz de criar serviços que são fáceis de alavancar por outros desenvolvedores. Por conseguinte, esta abordagem deve ser independente do local onde os dados e cálculos foram executados.
MapReduce foi concebido como um modelo genérico de programação. Algumas das implementações iniciais desde que todos os requisitos essenciais de execução paralela, tolerância a falhas, balanceamento de carga e manipulação de dados. Os engenheiros responsáveis pelo projeto chamado o MapReduce iniciativa porque combina duas capacidades de linguagens de computador funcionais existentes: mapa e reduzir.
Os engenheiros do Google concebido MapReduce para resolver um problema prático específico. Por isso, foi concebido como um modelo de programação combinada com a implementação desse modelo - em essência, uma implementação de referência.
A implementação de referência foi utilizado para demonstrar a viabilidade ea eficácia do conceito e para ajudar a garantir que este modelo seria amplamente adotada pela indústria de computadores. Ao longo dos anos, outras implementações de MapReduce foram criados e estão disponíveis tanto como fonte aberta e de produtos comerciais.