Map reduce novas abordagens para o processo de datamining em grandes volumnes de dados

26
Diseño de Sistemas TEMA “DIAGRAMA DE COMPONENTES” UNIVERSIDAD NACIONAL DE LOJA This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Ecuador License. AREA DE LA ENERGIA, LAS INDUSTRIAS Y LOS RECURSOS NATURALES NO RENOVABLES INGENIERIA EN SISTEMAS 7mo “A” Autor: Jackson Cuenca

description

Apresentação feita no laboratório de

Transcript of Map reduce novas abordagens para o processo de datamining em grandes volumnes de dados

Page 1: Map reduce   novas abordagens para o processo de datamining em grandes volumnes de dados

MapReduceNovas abordagens para o processo de

DataMining em grandes volumes de dados

J. Gabriel [email protected]

LINC - Laboratório de Inteligência Computacional

Page 2: Map reduce   novas abordagens para o processo de datamining em grandes volumnes de dados

Agenda

• Introdução•Conceitos Gerais•Exemplos•Trabalhos Correlatos em DataMining

2

Page 3: Map reduce   novas abordagens para o processo de datamining em grandes volumnes de dados

Introdução

l Nos últimos cinco anos, os pesquisadores e desenvolvedores do Google tem implementado centenas de propostas de técnicas e cálculos que processam grandes quantidades de dados brutos e para computar vários tipos de dados derivados, tais como:

l Índices invertidosl Representações diversas da estrutura de gráfico de documentosl Resumos do número de páginas rastreadas por hostl Estatística das consultas mais frequentes em um determinado

dia.

Page 4: Map reduce   novas abordagens para o processo de datamining em grandes volumnes de dados

Introdução

l Os cálculos são conceitualmente simples...

l O problema é que os dados de entrada são muito grandes...

l Solução: Distribuir esses cálculos através de centenas ou milhares de máquinasl Garantir o término em um tempo razoável

Page 5: Map reduce   novas abordagens para o processo de datamining em grandes volumnes de dados

Introdução

“ Como reação a essa complexidade, foi elaborado uma novaabstração que nos permite expressar os cálculos simples que estávamos tentando realizar, mas esconde os detalhes confusos de paralelização, tolerância a falhas de distribuição de dados

e balanceamento de carga”

Page 6: Map reduce   novas abordagens para o processo de datamining em grandes volumnes de dados

Conceitos Gerais

l A nova abstração é inspirado no 'Map' e 'Reduce' primitivos presentes em Lisp e muitas outras linguagens funcionais.

l Percebemos que a maioria dos nossos cálculos envolvidos aplicação de uma operação de Map para cada "registro" lógico em nossa entrada, a fim de calcular um conjunto de pares intermediários de chave/valor e, em seguida , a aplicação de uma operação de Reduce a todos os valores que partilhavam a mesma chave, a fim de combinar os dados derivados apropriadamente

Page 7: Map reduce   novas abordagens para o processo de datamining em grandes volumnes de dados

Conceitos Gerais

As maior contribuição dessa nova abordagem é a implantação de uma simples e poderosa interface que permite a paralelização automática e distribuição da computação em grande escala, combinado com uma implementação desta interface que atinge alta performance em grandes aglomerados de máquinas

Page 8: Map reduce   novas abordagens para o processo de datamining em grandes volumnes de dados

Modelo de Programação

O cálculo toma um conjunto de pares de entradas de chave/valor, eproduz um conjunto de pares de saídas chave/valor. O usuário que implementa o MapReduce expressa o cálculo como duas funções: Map e Raduce.

Page 9: Map reduce   novas abordagens para o processo de datamining em grandes volumnes de dados

MAP

Map, escrito pelo usuário, leva um par de entrada e produz um conjunto de pares intermediários de chave/valor.Neste processo há uma junção de todos os valores intermediários associados com uma mesma chave intermediária, afim de passá-lospara a função Reduce.

Page 10: Map reduce   novas abordagens para o processo de datamining em grandes volumnes de dados

Reduce

A função Reduce, também escrito pelo usuário, aceital uma chave intermediária e um conjunto de valores para essa

chave.

l Ela faz uma fusão desses valores em conjunto, para formar um menor conjunto de valores possível.

l l Tipicamente apenas zero ou um valor de saída é produzido por um

método Reduce.

l Os valores intermédios são fornecidos para a função através de uma iteração. Isto permite-nos lidar com listas de valores que são demasiadamente grandes para caber na memória.

Page 11: Map reduce   novas abordagens para o processo de datamining em grandes volumnes de dados

MapReduce

Page 12: Map reduce   novas abordagens para o processo de datamining em grandes volumnes de dados

MapReduce

Page 13: Map reduce   novas abordagens para o processo de datamining em grandes volumnes de dados

MapReduce

Page 14: Map reduce   novas abordagens para o processo de datamining em grandes volumnes de dados

MapReduce

Page 15: Map reduce   novas abordagens para o processo de datamining em grandes volumnes de dados

Exemplo Prático

Programa que processa e conta o número de ocorrências de cada palavra em um texto:

Nº Linhas: 3800Nº palavras: 4411

Tempo: ~ 0.00909018516541 microssegundos

Page 16: Map reduce   novas abordagens para o processo de datamining em grandes volumnes de dados

O modelo de programação MapReduce tem sido utilizado com sucesso no Google para diversas finalidades. Atribui-se o sucesso a várias razões:

l o modelo é fácil de usar, mesmo para programadores sem experiência com os sistemas paralelos e distribuídos, já que esconde a detalhes da paralelização, tolerância a falhas, otimização de localidade, e balanceamento de carga.

l Uma grande variedade de problemas são facilmente transcritos para o uso do MapReduce.

l É usado para a geração de dados para o serviço de busca do Google, para classificação, para mineração de dados, para aprendizado de máquina e muitos outros sistemas.

Page 17: Map reduce   novas abordagens para o processo de datamining em grandes volumnes de dados

Trabalhos Correlatos - 201161 Artigos

Page 18: Map reduce   novas abordagens para o processo de datamining em grandes volumnes de dados

.

Map-Reduce for Machine Learning on Multicore (Cheng-Tao Chu)

Mostram que os algoritmos que se encaixam no modelo de consulta estatística podem ser escritos em uma "forma de somatório," permitindo o uso do MapReduce para paralelizar o processamento em computadores multicore.

Algoritmos - Locally Weighted Linear Regression (LWLR) - Naive Bayes (NB) - Gaussian Discriminative Analysis (GDA) - k-means - Logistic Regression (LR) - Neural Network (NN) - Principal Components Analysis (PCA) - Independent Component Analysis (ICA) - Expectation Maximization (EM) - Support Vector Machine (SVM).

Page 19: Map reduce   novas abordagens para o processo de datamining em grandes volumnes de dados

.

BBM: Bayesian Browsing Model from Petabyte-scale Data (Chao Liu - Microsoft Research)

“Dado um base de dados de petabytes de logs de clique, como podemos estimar a relevância de cada URL para uma determinada consulta?”

Neste trabalho é proposto o Modelo de Navegação Bayesiana (BBM), umanova técnica de modelagem com vantagens seguintes:

(a) Faz inferência exata; (b) É single-pass e paralelizável;(c) É eficaz.

São apresentados dois conjuntos de experiências No primeiro conjunto de mais de 50 milhões casos de busca de 1,1 milhões

de consultas distintas, BBM supera o concorrente ser 57 vezes mais rápido. Na segunda, é apresentado a escalabilidade da BBM usando o MapReduce

Page 20: Map reduce   novas abordagens para o processo de datamining em grandes volumnes de dados

.

Hive - A Warehousing Solution Over a Map-Reduce Framework - Facebook Data Infrastructure Team

Apresenta-se o Hive, uma solução open-source de armazenamento de dados construída em cima do Hadoop.Hive suporta consultas expressas em uma linguagem SQL-like declarativa - HiveQL e que são compilados em Map-Reduce executados no Hadoop. Além disso, suporta HiveQL Map-Reduce personalizados para a criação de scripts de consultas.

As bibliotecas subjacentes IO pode ser estendido para consultar dados em formatos personalizados. Ramificação também inclui um sistema catálogo, Hive-Metastore, esquemas contendo e estatísticas, o que é útil na exploração de dados e otimização de consulta.No Facebook, o armazém Hive contém vários milhares tabelas com mais de 700 terabytes de dados e está sendo amplamente utilizado para relatórios e análises de dados.

Page 21: Map reduce   novas abordagens para o processo de datamining em grandes volumnes de dados

.

Scaling Simple and Compact Genetic Algorithms using MapReduce

Neste artigo, mostramos como os algoritmos genéticos podem ser modelados no modelo MapReduce.

Descrevemos o projeto de algoritmo e implementação de um AG simples em Hadoop. Nossos experimentos demonstram a convergência e escalabilidade em 105 de 108 problemas.Adicionando mais recursos nos permitiria resolver os problemas ainda maiores, sem quaisquer alterações no algoritmo ou na implementação, uma vez que não introduzem qualquer gargalos de performance.

Page 22: Map reduce   novas abordagens para o processo de datamining em grandes volumnes de dados

.

COMET: A Recipe for Learning and Using Large Ensembles on Massive Data

COMET é um algoritmo de single-pass para MapReduce em larga escala de dados. Baseia-se em um conjunto aleatório de blocos de dados distribuídos e funde-os emum conjunto de mega-dados. Esta abordagem é adequada quando a escala de dados que é grande demais para caber em uma única máquina.Experimentos com dois grandes conjuntos de dados (5 GB e 50GB compactados) mostram que o cometa se comporta favoravelmente (em precisão e tempo) .

Page 23: Map reduce   novas abordagens para o processo de datamining em grandes volumnes de dados

.

HadoopDB: An Architectural Hybrid of MapReduce andDBMS Technologies for Analytical Workloads (Brown University)

Neste artigo, os autores exploraram a viabilidade de construção de um sistema híbrido que tem as melhores características de ambas as tecnologias, o protótipo que construímos se aproxima bancos de dados paralelos em desempenho eeficiência, mas ainda produz a escalabilidade, tolerância a falhas, e flexibilidade de sistemas baseados em MapReduce.

Page 24: Map reduce   novas abordagens para o processo de datamining em grandes volumnes de dados

.

Outros Trabalhos:-A Map Reduce Framework for Programming Graphics Processors- Application of Hadoop MapReduce Technique to Virtual Database System Design- Application Performance Management for NoSQL- BlobSeer- Bringing High Throughput under Heavy Concurrency to Hadoop Map-Reduce Applications- Building a High-Level Dataflow System on top of Map-Reduce: The Pig Experience- Can MPI Benefit Hadoop and MapReduce Applications- CloudBurst: highly sensitive read mapping with MapReduce- Colorful Triangle Counting and a MapReduce Implementation- Computação intensiva em dados com MapReduce em ambientes oportunistas- Data-Intensive Text Processing with MapReduce- Evaluating SPLASH-2 Applications Using MapReduce- Evaluating the suitability of MapReduce for surface temperature analysis codes- HADI: Mining Radii of Large Graphs- Large-Scale Community Detection on YouTube for Topic Discovery and Exploration- Learning Based Opportunistic Admission Control Algorithm for MapReduce as a Service- Learning Influence Probabilities In Social Networks- LogMaster: Mining Event Correlations in Logs of Large-scale Cluster Systems- Map-reduce as a Programming Model for Custom Computing Machines- MapReduce for Data Intensive Scientific Analyses- Map-Reduce-Merge: Simplified Relational Data Processing on Large Clusters- MapReduce Programming with Apache Hadoop IPDPS 2010 Symposium Tutorial- Scalable Distributed Reasoning using MapReduce

Page 25: Map reduce   novas abordagens para o processo de datamining em grandes volumnes de dados

Considerações Finais- Considerando que:

- Yahoo! Processa 100 bilhões de eventos somando 120 terabytes por dia- Facebook processa 80 terabytes por dia

… a técnica deve funcionar

Trabalhos Futuros

Aplicar as técnicas descritas desde a primeira apresentação em bases de dados 'reais'

- Segurança Pública- CDI- Vijay

Page 26: Map reduce   novas abordagens para o processo de datamining em grandes volumnes de dados
Page 27: Map reduce   novas abordagens para o processo de datamining em grandes volumnes de dados