SlideShare uma empresa Scribd logo
1 de 15
Baixar para ler offline
Map-Reduce:
Adquirindo informações de
dados distribuidos
Edson de Lima (ebl4@cin.ufpe.br)
Gabriela de Andrade (gcpa@cin.ufpe.br)
João Farias (jgfd@cin.ufpe.br)
Leonardo Borges (lrb@cin.ufpe.br)
Como banco de dados NoSQL
guardam seus dados?
●
Agregações DDD
– "...cluster of domain objects that can be treated as a single
unit." Martin Fowler [1]
O problema com o padrão
Agregação
●
“E se eu quiser olhar para os dados entre agregados?”
– É fácil adquirir todas as informações de uma venda
(Nome do cliente, hora, preço, produto, etc, etc), mas
se eu quiser saber sobre o total de vendas no mês de
Janeiro?
●
Soluções
– Map-Reduce
●
Técnica para reorganizar os dados para diferentes
clientes
– Persistência Poliglota
Map-Reduce
●
Lembrando o ambiente de um Sistema Distribuído
Map-Reduce
●
Parte 1: Mapping
Map-Reduce
●
Parte 2: Reducing
Map-Reduce
●
O que é preciso para realizar uma operação de Map-
Reduce?
– Um framework de Map-Reduce
●
Hadoop
●
Spark
●
Riak
– Definir as funções de mapping, reducing e a query
Map-Reduce
●
Exemplo
Map-Reduce: Particionando
●
Vários reducers através da criação de partições
Map-Reduce: Combinando
●
Reduzindo dados antes de enviar ao reducer
●
Combinador-Redutor
Map-Reduce: Two-Step
●
Criando operações complexas através de divide-and-
conquer de pequenas operações de Map-Reduce
●
Resultados intermediários: Materalized Views (M.V.)
Map-Reduce:
Atualização de Dados
●
Quando devemos re-computadar os dados?
– Mapping: Quando o input mudar
– Reduce: Quando os resultados do mapping mudarem
●
Como evitar re-computação de reduções?
– Partições
– Se a função de redução é combinável e as mudanças
são aditivas
●
Faça redução do resultados anteriores (M.V.) e
apenas dos novos dados
Map-Reduce:
Principais pontos
●
Como o padrão é usado para adquirir informação de
negócio em um ambiente onde o modelo de dados não
favorece isso, maximizando paralelismo, reuso de
computação e tolerância a falhas
●
Como aumentar a eficiência das operações de Map-
Reduce
– Organização de dados: Partições e combinadores
– Pipelines de operações de Map-Reduce
– Saber quando é necessário re-computar resultados
Fontes e links
●
Martin Fowler sobre o padrão Agregação
– Aggregate Oriented Database
●
http://martinfowler.com/bliki/AggregateOrientedDatabase
– DDD-Aggregate
●
http://martinfowler.com/bliki/DDD_Aggregate.html
●
NoSQL Distilled - Pramod J. Sadalage e Martin Fowler
– http://martinfowler.com/books/nosql.html
●
Simon Miner - Understanding NoSQL
– http://www.math-cs.gordon.edu/courses/cs352/lectures-2012
●
Map-Reduce Tutorial – MongoDB
– https://docs.mongodb.org/manual/core/map-reduce/
Map-Reduce
Adquirindo informações de dados distribuidos

Mais conteúdo relacionado

Destaque (9)

Rss
RssRss
Rss
 
Rss janelis rodriguez mejia
Rss janelis rodriguez mejiaRss janelis rodriguez mejia
Rss janelis rodriguez mejia
 
RSS
RSSRSS
RSS
 
Curriculum karla
Curriculum karlaCurriculum karla
Curriculum karla
 
Test de alimentacion y dieta mediterranea
Test de alimentacion y dieta mediterraneaTest de alimentacion y dieta mediterranea
Test de alimentacion y dieta mediterranea
 
Dieta mediterránea y test
Dieta mediterránea y testDieta mediterránea y test
Dieta mediterránea y test
 
Rss power point
Rss power pointRss power point
Rss power point
 
Páncreas y bazo
Páncreas y bazo Páncreas y bazo
Páncreas y bazo
 
Rss
RssRss
Rss
 

Semelhante a Map-Reduce: Adquirindo informações de dados distribuidos

[DTC21] André Marques - Jornada do Engenheiro de Dados
[DTC21] André Marques - Jornada do Engenheiro de Dados[DTC21] André Marques - Jornada do Engenheiro de Dados
[DTC21] André Marques - Jornada do Engenheiro de DadosDeep Tech Brasil
 
Sistema Integrado de Gestão Empresarial - ERP
Sistema Integrado de Gestão Empresarial - ERPSistema Integrado de Gestão Empresarial - ERP
Sistema Integrado de Gestão Empresarial - ERPmlima72
 
Caçadores de Mitos: A virtualização dos dados pode sustentar o desempenho com...
Caçadores de Mitos: A virtualização dos dados pode sustentar o desempenho com...Caçadores de Mitos: A virtualização dos dados pode sustentar o desempenho com...
Caçadores de Mitos: A virtualização dos dados pode sustentar o desempenho com...Denodo
 
Escalabilidade Linear com o Banco de Dados NoSQL Apache Cassandra.
Escalabilidade Linear com o Banco de Dados NoSQL Apache Cassandra.Escalabilidade Linear com o Banco de Dados NoSQL Apache Cassandra.
Escalabilidade Linear com o Banco de Dados NoSQL Apache Cassandra.Ambiente Livre
 
SGBD - ORACLE - JAVA
SGBD - ORACLE - JAVASGBD - ORACLE - JAVA
SGBD - ORACLE - JAVAssuser4cf889
 
por_detras_dos_relatorios
por_detras_dos_relatoriospor_detras_dos_relatorios
por_detras_dos_relatoriosarthurjosemberg
 
Business Intelligence com o microsoft sql server
Business Intelligence com o microsoft sql serverBusiness Intelligence com o microsoft sql server
Business Intelligence com o microsoft sql serverMilson
 
Bigdata na pratica: Resolvendo problemas de performance com hadoop
Bigdata na pratica: Resolvendo problemas de performance com hadoopBigdata na pratica: Resolvendo problemas de performance com hadoop
Bigdata na pratica: Resolvendo problemas de performance com hadooptdc-globalcode
 
Bancos de Dados Pós-Relacionais
Bancos de Dados Pós-RelacionaisBancos de Dados Pós-Relacionais
Bancos de Dados Pós-Relacionaiselliando dias
 
Big Data e Data Science: admirável mundo novo - IV SIC IFNMG
Big Data e Data Science: admirável mundo novo - IV SIC IFNMGBig Data e Data Science: admirável mundo novo - IV SIC IFNMG
Big Data e Data Science: admirável mundo novo - IV SIC IFNMGPetronio Candido
 
SQL Server ES - Escrevendo queries rápidas (Performance/Query Tuning)
SQL Server ES - Escrevendo queries rápidas (Performance/Query Tuning)SQL Server ES - Escrevendo queries rápidas (Performance/Query Tuning)
SQL Server ES - Escrevendo queries rápidas (Performance/Query Tuning)Dirceu Resende
 
Plano Geral de Governança de Dados
Plano Geral de Governança de DadosPlano Geral de Governança de Dados
Plano Geral de Governança de DadosGustavo Alexandre
 
Resenha de artigo - Query Processing over Data Warehouse using Relational Dat...
Resenha de artigo - Query Processing over Data Warehouse using Relational Dat...Resenha de artigo - Query Processing over Data Warehouse using Relational Dat...
Resenha de artigo - Query Processing over Data Warehouse using Relational Dat...Felipe Caparelli
 

Semelhante a Map-Reduce: Adquirindo informações de dados distribuidos (20)

[DTC21] André Marques - Jornada do Engenheiro de Dados
[DTC21] André Marques - Jornada do Engenheiro de Dados[DTC21] André Marques - Jornada do Engenheiro de Dados
[DTC21] André Marques - Jornada do Engenheiro de Dados
 
Sistema Integrado de Gestão Empresarial - ERP
Sistema Integrado de Gestão Empresarial - ERPSistema Integrado de Gestão Empresarial - ERP
Sistema Integrado de Gestão Empresarial - ERP
 
BigData MapReduce
BigData MapReduceBigData MapReduce
BigData MapReduce
 
Business Analytics
Business AnalyticsBusiness Analytics
Business Analytics
 
OLAP, BI, EIS
OLAP, BI, EISOLAP, BI, EIS
OLAP, BI, EIS
 
Caçadores de Mitos: A virtualização dos dados pode sustentar o desempenho com...
Caçadores de Mitos: A virtualização dos dados pode sustentar o desempenho com...Caçadores de Mitos: A virtualização dos dados pode sustentar o desempenho com...
Caçadores de Mitos: A virtualização dos dados pode sustentar o desempenho com...
 
Escalabilidade Linear com o Banco de Dados NoSQL Apache Cassandra.
Escalabilidade Linear com o Banco de Dados NoSQL Apache Cassandra.Escalabilidade Linear com o Banco de Dados NoSQL Apache Cassandra.
Escalabilidade Linear com o Banco de Dados NoSQL Apache Cassandra.
 
SGBD - ORACLE - JAVA
SGBD - ORACLE - JAVASGBD - ORACLE - JAVA
SGBD - ORACLE - JAVA
 
Aula - Aspectos Avançados em Modelagem Multidimensional
Aula - Aspectos Avançados em Modelagem MultidimensionalAula - Aspectos Avançados em Modelagem Multidimensional
Aula - Aspectos Avançados em Modelagem Multidimensional
 
Business Intelligence
Business IntelligenceBusiness Intelligence
Business Intelligence
 
por_detras_dos_relatorios
por_detras_dos_relatoriospor_detras_dos_relatorios
por_detras_dos_relatorios
 
Business Intelligence com o microsoft sql server
Business Intelligence com o microsoft sql serverBusiness Intelligence com o microsoft sql server
Business Intelligence com o microsoft sql server
 
Bigdata na pratica: Resolvendo problemas de performance com hadoop
Bigdata na pratica: Resolvendo problemas de performance com hadoopBigdata na pratica: Resolvendo problemas de performance com hadoop
Bigdata na pratica: Resolvendo problemas de performance com hadoop
 
Bancos de Dados Pós-Relacionais
Bancos de Dados Pós-RelacionaisBancos de Dados Pós-Relacionais
Bancos de Dados Pós-Relacionais
 
Big Data x Data Mining - Hadoop
Big Data x Data Mining - HadoopBig Data x Data Mining - Hadoop
Big Data x Data Mining - Hadoop
 
Data Warehouse - Modelagem
Data Warehouse - ModelagemData Warehouse - Modelagem
Data Warehouse - Modelagem
 
Big Data e Data Science: admirável mundo novo - IV SIC IFNMG
Big Data e Data Science: admirável mundo novo - IV SIC IFNMGBig Data e Data Science: admirável mundo novo - IV SIC IFNMG
Big Data e Data Science: admirável mundo novo - IV SIC IFNMG
 
SQL Server ES - Escrevendo queries rápidas (Performance/Query Tuning)
SQL Server ES - Escrevendo queries rápidas (Performance/Query Tuning)SQL Server ES - Escrevendo queries rápidas (Performance/Query Tuning)
SQL Server ES - Escrevendo queries rápidas (Performance/Query Tuning)
 
Plano Geral de Governança de Dados
Plano Geral de Governança de DadosPlano Geral de Governança de Dados
Plano Geral de Governança de Dados
 
Resenha de artigo - Query Processing over Data Warehouse using Relational Dat...
Resenha de artigo - Query Processing over Data Warehouse using Relational Dat...Resenha de artigo - Query Processing over Data Warehouse using Relational Dat...
Resenha de artigo - Query Processing over Data Warehouse using Relational Dat...
 

Map-Reduce: Adquirindo informações de dados distribuidos

  • 1. Map-Reduce: Adquirindo informações de dados distribuidos Edson de Lima (ebl4@cin.ufpe.br) Gabriela de Andrade (gcpa@cin.ufpe.br) João Farias (jgfd@cin.ufpe.br) Leonardo Borges (lrb@cin.ufpe.br)
  • 2. Como banco de dados NoSQL guardam seus dados? ● Agregações DDD – "...cluster of domain objects that can be treated as a single unit." Martin Fowler [1]
  • 3. O problema com o padrão Agregação ● “E se eu quiser olhar para os dados entre agregados?” – É fácil adquirir todas as informações de uma venda (Nome do cliente, hora, preço, produto, etc, etc), mas se eu quiser saber sobre o total de vendas no mês de Janeiro? ● Soluções – Map-Reduce ● Técnica para reorganizar os dados para diferentes clientes – Persistência Poliglota
  • 4. Map-Reduce ● Lembrando o ambiente de um Sistema Distribuído
  • 7. Map-Reduce ● O que é preciso para realizar uma operação de Map- Reduce? – Um framework de Map-Reduce ● Hadoop ● Spark ● Riak – Definir as funções de mapping, reducing e a query
  • 9. Map-Reduce: Particionando ● Vários reducers através da criação de partições
  • 10. Map-Reduce: Combinando ● Reduzindo dados antes de enviar ao reducer ● Combinador-Redutor
  • 11. Map-Reduce: Two-Step ● Criando operações complexas através de divide-and- conquer de pequenas operações de Map-Reduce ● Resultados intermediários: Materalized Views (M.V.)
  • 12. Map-Reduce: Atualização de Dados ● Quando devemos re-computadar os dados? – Mapping: Quando o input mudar – Reduce: Quando os resultados do mapping mudarem ● Como evitar re-computação de reduções? – Partições – Se a função de redução é combinável e as mudanças são aditivas ● Faça redução do resultados anteriores (M.V.) e apenas dos novos dados
  • 13. Map-Reduce: Principais pontos ● Como o padrão é usado para adquirir informação de negócio em um ambiente onde o modelo de dados não favorece isso, maximizando paralelismo, reuso de computação e tolerância a falhas ● Como aumentar a eficiência das operações de Map- Reduce – Organização de dados: Partições e combinadores – Pipelines de operações de Map-Reduce – Saber quando é necessário re-computar resultados
  • 14. Fontes e links ● Martin Fowler sobre o padrão Agregação – Aggregate Oriented Database ● http://martinfowler.com/bliki/AggregateOrientedDatabase – DDD-Aggregate ● http://martinfowler.com/bliki/DDD_Aggregate.html ● NoSQL Distilled - Pramod J. Sadalage e Martin Fowler – http://martinfowler.com/books/nosql.html ● Simon Miner - Understanding NoSQL – http://www.math-cs.gordon.edu/courses/cs352/lectures-2012 ● Map-Reduce Tutorial – MongoDB – https://docs.mongodb.org/manual/core/map-reduce/