Ciência e Dados
Menu
  • Home
  • Sobre
  • Contato
Menu
Processamento Distribuído com MapReduce

Processamento Distribuído com MapReduce

Posted on 23 de agosto de 201527 de dezembro de 2017 by David Matos

MapReduce é um modelo de programação que foi projetado para permitir processamento paralelo distribuído de largos conjuntos de dados, convertendo-os em um conjunto de listas ordenadas, reduzindo o tamanho destes conjuntos e gerando listas ordenadas ainda menores. Em resumo, MapReduce foi projetado para usar computação paralela distribuída em Big Data e transformar os dados em pedaços menores.

MapReduce funciona através de 2 operações: mapeamento e redução. No processo de mapeamento (Map), os dados são separados em pares (key-value pairs), transformados e filtrados. Então os dado são distribuídos para os nodes e processados. No processo de redução (Reduce), os dados são agregados em conjuntos de dados (datasets) menores. Os dados resultantes do processo de redução são transformados em um formato padrão de chave-valor (key-value), onde a chave (key) funciona como o identificador do registro e o valor (value) é o dado (conteúdo) identificado pela chave. Os nodes do cluster processam as operações de map e reduce que são definidas pelo usuário. Isso é feito de acordo com 2 passos:

Mapeamento dos dados – os dados de entrada são primeiramente distribuídos em pares key-value e divididos em fragmentos, que são então atribuídos a tarefas de mapeamento. Cada cluster (um grupo de nodes conectados um ao outro e que compartilham tarefas de processamento) recebe um número de tarefas de mapeamento que são distribuídas através dos nodes. Durante o processamento dos pares key-value, pares intermediários de key-value são gerados. Estes pares key-value intermediários são classificados e divididos em um novo conjunto de fragmentos. Esses novos fragmentos serão enviados para o processo de redução.

Redução dos dados – cada operação de redução dos dados tem um fragmento atribuído. O processo de redução simplesmente processa o fragmento e produz um output, que é também um par key-value. Processos de redução são também distribuídos entre os diferentes nodes do cluster. Após o fim do processamento, o output final é gravado no file system.

Em resumo, para tratar dados de alto volume, velocidade e variedade (Big Data), é possível usar processos de mapeamento e redução para classificar os dados em pares key-value e reduzi-los em pares menores através de operações de agregação que combinam múltiplos valores de um dataset, em um único valor. O gráfico abaixo resume bem o MapReduce:

MapReduce

Processo de MapReduce

Se o MapReduce está sendo processado como parte de uma solução Hadoop, o output final será escrito no Hadoop Distributed File System (HDFS). O HDFS é um file system que inclui clusters de servidores que são usados para armazenar Big Data. Trataremos disso no próximo post.

David Matos

 

Relacionado

Deixe um comentário Cancelar resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Assinar blog por e-mail

Digite seu endereço de e-mail para assinar este blog e receber notificações de novas publicações por e-mail.

Buscar

Twitter

Meus Tuítes

Tags Mais Comuns nos Posts

Anaconda Analytics Análise de Negócios Apache Spark AWS Big Data Blockchain Business Intelligence ChatGPT Chief Data Officer Cientista de Dados Cientistas de Dados Ciência de Dados Cloud Computing Data Lake Data Mesh Data Science Data Scientist Data Warehouse Deep Learning Deploy Descriptive Analytics Diagnostic Analytics Engenharia de Dados Engenheiro de Dados Estatística GPU Hadoop Inteligência Artificial Internet of Things Linguagem Python Linguagem R Machine Learning MapReduce Metadados NoSQL NVIDIA Open Data Oracle Predictive Analytics Prescriptive Analytics Probabilidade Python Salários Data Science Visualização

Histórico de Posts

  • março 2023 (3)
  • fevereiro 2023 (3)
  • janeiro 2023 (5)
  • dezembro 2022 (8)
  • novembro 2022 (7)
  • outubro 2022 (2)
  • setembro 2022 (3)
  • agosto 2022 (2)
  • julho 2022 (2)
  • junho 2022 (3)
  • maio 2022 (1)
  • abril 2022 (3)
  • março 2022 (1)
  • fevereiro 2022 (3)
  • janeiro 2022 (2)
  • dezembro 2021 (1)
  • novembro 2021 (5)
  • outubro 2021 (2)
  • setembro 2021 (3)
  • agosto 2021 (1)
  • junho 2021 (1)
  • fevereiro 2021 (2)
  • janeiro 2021 (1)
  • dezembro 2020 (1)
  • novembro 2020 (1)
  • outubro 2020 (2)
  • agosto 2020 (1)
  • abril 2020 (1)
  • março 2020 (1)
  • fevereiro 2020 (2)
  • agosto 2019 (1)
  • abril 2019 (1)
  • setembro 2018 (2)
  • julho 2018 (1)
  • junho 2018 (3)
  • abril 2018 (1)
  • março 2018 (1)
  • fevereiro 2018 (2)
  • janeiro 2018 (1)
  • dezembro 2017 (1)
  • novembro 2017 (1)
  • outubro 2017 (1)
  • setembro 2017 (1)
  • julho 2017 (1)
  • junho 2017 (1)
  • maio 2017 (2)
  • abril 2017 (1)
  • janeiro 2017 (1)
  • novembro 2016 (1)
  • outubro 2016 (1)
  • setembro 2016 (1)
  • julho 2016 (1)
  • junho 2016 (1)
  • maio 2016 (1)
  • abril 2016 (1)
  • fevereiro 2016 (1)
  • janeiro 2016 (3)
  • dezembro 2015 (4)
  • novembro 2015 (6)
  • outubro 2015 (9)
  • setembro 2015 (9)
  • agosto 2015 (9)
©2022 Ciência e Dados
 

Carregando comentários...