Revolução dos
Dados
Adriano Amaral
Diretor Tecnologia e Soluções
about.me/adriano_amaral
Labs
Espaço…
Objetivos
Teste
Prototipagem Idéias
Tendências
Aprofundamento Tecnológico
Novas Tecnologias
Inovação
• Explanações com intervenções…tipo bate-papo;
• Não tem como objetivo ser o "dono da verdade";
• Dinâmica de Design Think...
Os alquimistas estão chegando….
Teradata Unified Data Architecture™
AUDIO & VIDEO images text Web & social Machine logs crm scm erp
Dual
systems
Data
mart...
Como transformar dados em ouro?
Liberte os dados…
Dados Informação
Inteligência
Imperativo
Decisões Resultados
Conhecimento
Necessidade
Utilidade
Realizando Valor Maxtera
Parceiros
Stream Data
Fast Data
Big Data
Tempo Real
Apps Data
Sensores
(IoT)
Não
Estruturados
Est...
Nos primórdios...
Como armazenar os
dados?How do we store data?
5/11/13 Bill Howe, UW 2
Como armazenar os
dados?How do we store data?
5/11/13 Bill Howe, UW 3
###query length COG hit #1 e-value #1 identity #1 sc...
• Simplificar a realidade;
• Definir espaço da amostra;
• Traduzir de forma ao entendimento da máquina;
• Possibilitar a m...
• 3 Componentes
1.Estruturas;
2.Constrições;
3.Operações;
O que é um modelo de
dados?
1.Estruturas;
• Linhas ou colunas?
• nós ou elementos?
• valores chaves?
• sequência de Bytes?
2.Constrições;
• todas as l...
"Uma coleção de informações
organizadas para facilitar a
recuperação da mesma"
O que é um banco de
dados?
http://www.usg.e...
• Que problemas o Banco de Dados resolve?
• Compartilhamento
• Permite o acesso de vários leitores e escritores
simultanea...
• Como esse dado é organizado fisicamente no
disco?
• Que tipos de consulta são eficientemente
suportadas por esse modelo ...
• Bando de Dados em Rede:
Historico dos Bancos de
Dados
Historical Example: Network Databases
5/11/13 Bill Howe, UW 2
Data...
• Banco de Dados Hierárquico
Historico dos Bancos de
Dados
Historical Example: Hierarchical Databases
Orderer%
Customer%
S...
"RDBMS - Sistemas Gerenciamento de Banco de
Dados relacionais, foram inventados para permitir que
você use o dado de múlti...
Promover independencia
física dos dados…
5/11/13 Bill Howe, eScience Institute
Key Idea: “Physical Data Indepen
physical d...
Promover uma álgebra
dos registros
Key Idea: An Algebra of Tables
select
project
join join
Other operators: aggregate, uni...
Relacional X Analítico
Relacional X Analitico
Equivalent logical expressions; different costs
1
σp=knows(R) o=s (σp=holdsA...
Complexidade
Sofisticação do Dado
Atualização Contínua &
Sensível ao tempo,
consultas mais
importantes
OPERACIONALIZANDO
O...
“Big Data é qualquer dado que é
caro demais para gerenciar e
extrair valor”
Bigdata: Definição…
Michael Franklin
Thomas M....
• Velocidade
• latência do dado mediante diversidade de
demandas e o crescimento da
interatividade;
• Variedade
• diversid...
Cadê a pedra
filosofal então?
Cidadãos/Consumidores
Demanda de novos serviços
Governos/Empresas
Adaptação para atender as
necessidades
Slide, Arturo Mue...
http://www.clickestudante.com/resultado-dos-protestos-pelo-brasil.html
1.Governo/Empresas como Plataforma
2.Cidadãos sabem mais e melhor que o governo
(sensores)
3.Sistemas pequenos, baixos aco...
govLab
1.Design
2.Construção
3.Libere
4.Revise
Fonte: Adaptado Modelo Ágil
OpenLinked Data
J U N E 2 0 1 4
Open for Business:
How Open Data Can Help Achieve
the G20 Growth Target
A Lateral Economics report commiss...
DadosAbertos e o
desenvolvimento
13 trilhõesde dólares nos próximos 5 anos
Crescimento de 1.1% do PIB do G20, dentre os
2%...
• Reduz o custos dos serviços do Governo e da
Iniciativa Privada;
• Possibilidade de novos serviços e aumento da
qualidade...
Dados que geram mais
valor…
Educação
Fazenda
Transporte
Varejo
Energia
Saúde
Agricultura
Emprego
Fonte: Open for Business
Iniciativa
Privada
Empresas como Catalizadores!!!
Governo
Sociedade Civil
Sociedade Civil
Sociedade Civil
Sociedade Civil
...
200M libras em
prescrições no SUS
Britânico (NHS)
http://www.economist.com/news/britain/21567980-how-scrutiny-freely-avail...
WhereDoesMyMoneyGo.org
Open data index
@shevski okfn.org
@shevski okfn.org
OpenCorporates.com
http://opencorporates.com/viz/financial/index.html
Resolvendo problemas
públicos com Tecnologia
CDO
(Chief Data Officer)
Como fazer
então?
• Operacionalmente
• No Passado: Funcionava, mesmo se o dado não coubesse na
memória;
• Agora: Posso utilizar vários peque...
• Imagine procurar uma seqüência de DNA
• Todas as seqüências iguais a:
• GATTACGATATTA
Explorando possibilidades
GATTACGA...
GATTACGATATTA
TACCTGCCGTAA = GATTACGATATTA ?
Ciclo = 0
GATTACGATATTA
CCCCCAATGAC = GATTACGATATTA ?
Ciclo = 1
GATTACGATATTA
GATTACGATATTA = GATTACGATATTA ?
Ciclo = 40
GATTACGATATTA
40 Registros = 40 Comparações
Ordenar a Seqüência?
AAAATCCTGCA
AAACGCCTGCA
GATTACGATATTA
TTTTCGTAATT
TTTACGTCAA
GATTACGATATTA
CTGTACACAACCT
CTGTACACAACCT < GATTACGATATTA ?
0% 100%
Começamos
dividindo ao meio!
GATTACGATATTA
GGATACACATTTA
GGATACACATTTA > GATTACGATATTA
0% 100%
GATTACGATATTA
0% 100%
40 Registros = 4 Comparações
N registros = log (N) Comparações
Cortar o dado?
…….
40 Registros / 6 Trabalhadores
(N/k)
Cortando, Transformando e
Simplificando?
f f f f f f
Vários Dados…
map map map map map map
reduce reduce reduce reduce
3 5 4
MapReduce (2004)
Hadoop in
One Slide
src: Huy Vo,
NYU Poly
• Nigredo: ou Operação Negra, é o estágio em que a matéria é
dissolvida e putrefacta (associada ao calor e ao fogo);
• Alb...
Map
• Input = (inputkey, value)
• Output = (intermediatekey, value) - distribuidos
Reduce
• Input = (intermediatekey, valu...
Simplificação do Modelo
de Dados…outro….
RDF
Resource
Description
Framework
Implementação de Joins
usando Map-Reduce
Nome ID
Adriano 11111
José Rodrigo 22222
Empregados
EmpID Setor
11111 Tecnologia
...
Joins: Antes do
Mapeamento
Nome ID
Adriano 11111
José Rodrigo 22222
Empregados
EmpID Setor
11111 Tecnologia
2222 Vendas
22...
Joins: Função de
Mapeamento…
Empregado, Adriano, 11111
Empregado, José Rodrigo, 22222
Setor, 11111, Tecnologia
Setor, 2222...
Joins: Fase da Redução
chave=11111, valor= [(Empregado, Adriano, 11111),
(Setor, 11111, Tecnologia)]
chave=2222, valor= [(...
• DFS - Distributed File System
• Processamento Paralelo Massivo - MPP
• Tolerância a falha pela duplicação de “chunks” em...
Implementações Map
Reduce
http://hao-deng.blogspot.com.br/2013/05/map-reduce-logical-data-flow.html
MPP - Massive Parallel
Processing
MPP - Massive Parallel
Processing
Arquiteturas
n of
sec-
een-
re-
iled
cial
s of
con-
red-
the
hal-
uter
the
hing
ntly
their architecture can be done at diff...
Paralelismo
Consultas
Distribuidas
Consultas
em Paralelo
Distribuindo…
Parallel Query Example: Teradata
AMP = unit of parallelism
Copyright © 2013 by Teradata Corporation
and MPP Systems
ware that makes a MPP system appear to be a single system
nistrat...
1 5/15/2013 Copyright © 2013 by Teradata Corporation
The Parsing Engine
The Parsing Engine is responsible
for:
• Managing ...
Hardware: Achando
dado…
1 5/16/2013 Copyright © 2013 by Teradata Corporation
Which AMP has the Row?
Hashing
Algorithm
RH D...
BIG DATA
WEB
Petabytes
CRM
Terabytes
Gigabytes
ERP
Exabytes
INCREASING Data Variety and Complexity
User Generated
Content
...
5/15/13 Bill Howe, eScience Institute 31
Design Space
31"
Throughput"Latency"
Internet"
Private"
data"
center"
Data&"
para...
Google 2010
Graph vs. SQL and SQL-
MR
B has high
betweenness.
You get that
from a graph
Caller Recipient # of calls made
A B 10
A C 25...
?Adriano Amaral
Diretor Tecnologia e Soluções
about.me/adriano_amaral
adriano.amaral@maxtera.com.br
WorkshopMaxtera_RevDados_11mar15
WorkshopMaxtera_RevDados_11mar15
WorkshopMaxtera_RevDados_11mar15
WorkshopMaxtera_RevDados_11mar15
WorkshopMaxtera_RevDados_11mar15
WorkshopMaxtera_RevDados_11mar15
WorkshopMaxtera_RevDados_11mar15
WorkshopMaxtera_RevDados_11mar15
WorkshopMaxtera_RevDados_11mar15
WorkshopMaxtera_RevDados_11mar15
WorkshopMaxtera_RevDados_11mar15
WorkshopMaxtera_RevDados_11mar15
WorkshopMaxtera_RevDados_11mar15
WorkshopMaxtera_RevDados_11mar15
WorkshopMaxtera_RevDados_11mar15
WorkshopMaxtera_RevDados_11mar15
WorkshopMaxtera_RevDados_11mar15
WorkshopMaxtera_RevDados_11mar15
WorkshopMaxtera_RevDados_11mar15
WorkshopMaxtera_RevDados_11mar15
WorkshopMaxtera_RevDados_11mar15
WorkshopMaxtera_RevDados_11mar15
Próximos SlideShares
Carregando em…5
×

WorkshopMaxtera_RevDados_11mar15

321 visualizações

Publicada em

0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
321
No SlideShare
0
A partir de incorporações
0
Número de incorporações
4
Ações
Compartilhamentos
0
Downloads
5
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

WorkshopMaxtera_RevDados_11mar15

  1. 1. Revolução dos Dados Adriano Amaral Diretor Tecnologia e Soluções about.me/adriano_amaral
  2. 2. Labs Espaço…
  3. 3. Objetivos Teste Prototipagem Idéias Tendências Aprofundamento Tecnológico Novas Tecnologias Inovação
  4. 4. • Explanações com intervenções…tipo bate-papo; • Não tem como objetivo ser o "dono da verdade"; • Dinâmica de Design Thinking, para solução de problemas; • Definir temas e prioridades futuras; Dinâmica
  5. 5. Os alquimistas estão chegando….
  6. 6. Teradata Unified Data Architecture™ AUDIO & VIDEO images text Web & social Machine logs crm scm erp Dual systems Data marts Test/ dev ANALYTICAL ARCHIVE Languages Math & stats Data Mining BUSINESS INTELLIGENCE ApplicationsVIEWPOINT SUPPORT INDEPENDENT DATA MART Discovery platform INTEGRATED DATA WAREHOUSE Data lab Capture | Store | Refine Engineers Data Scientists Business Analysts Marketing Front-Line Workers Operational SystemsCustomers / Partners Executives
  7. 7. Como transformar dados em ouro?
  8. 8. Liberte os dados… Dados Informação Inteligência Imperativo Decisões Resultados Conhecimento Necessidade Utilidade
  9. 9. Realizando Valor Maxtera Parceiros Stream Data Fast Data Big Data Tempo Real Apps Data Sensores (IoT) Não Estruturados Estruturados ENGINE DE DADOS Open Data Decisões Análises Previsões Fraudes Valor DataScientist Consulting Team
  10. 10. Nos primórdios...
  11. 11. Como armazenar os dados?How do we store data? 5/11/13 Bill Howe, UW 2
  12. 12. Como armazenar os dados?How do we store data? 5/11/13 Bill Howe, UW 3 ###query length COG hit #1 e-value #1 identity #1 score #1 hit length #1 description #1 chr_4[480001-580000].287 4500 chr_4[560001-660000].1 3556 chr_9[400001-500000].503 4211 COG4547 2.00E-04 19 44.6 620 Cobalamin biosynthesis protein Co chr_9[320001-420000].548 2833 COG5406 2.00E-04 38 43.9 1001 Nucleosome binding factor SPN, S chr_27[320001-404298].20 3991 COG4547 5.00E-05 18 46.2 620 Cobalamin biosynthesis protein Co chr_26[320001-420000].378 3963 COG5099 5.00E-05 17 46.2 777 RNA-binding protein of the Puf fam chr_26[400001-441226].196 2949 COG5099 2.00E-04 17 43.9 777 RNA-binding protein of the Puf fam chr_24[160001-260000].65 3542 chr_5[720001-820000].339 3141 COG5099 4.00E-09 20 59.3 777 RNA-binding protein of the Puf fam chr_9[160001-260000].243 3002 COG5077 1.00E-25 26 114 1089 Ubiquitin carboxyl-terminal hydrol chr_12[720001-820000].86 2895 COG5032 2.00E-09 30 60.5 2105 Phosphatidylinositol kinase and pr chr_12[800001-900000].109 1463 COG5032 1.00E-09 30 60.1 2105 Phosphatidylinositol kinase and pr chr_11[1-100000].70 2886 chr_11[80001-180000].100 1523 ANNOTATIONSUMMARY-COMBINEDORFANNOTATION16_Phaeo_genome What is the data model? How do we store data? ###query length COG hit #1 e-value #1 identity #1 score #1 hit length #1 description #1 chr_4[480001-580000].287 4500 chr_4[560001-660000].1 3556 chr_9[400001-500000].503 4211 COG4547 2.00E-04 19 44.6 620 Cobalamin biosynthesis protein CobT (nicotinate- chr_9[320001-420000].548 2833 COG5406 2.00E-04 38 43.9 1001 Nucleosome binding factor SPN, SPT16 subunit chr_27[320001-404298].20 3991 COG4547 5.00E-05 18 46.2 620 Cobalamin biosynthesis protein CobT (nicotinate- chr_26[320001-420000].378 3963 COG5099 5.00E-05 17 46.2 777 RNA-binding protein of the Puf family, translation chr_26[400001-441226].196 2949 COG5099 2.00E-04 17 43.9 777 RNA-binding protein of the Puf family, translation chr_24[160001-260000].65 3542 chr_5[720001-820000].339 3141 COG5099 4.00E-09 20 59.3 777 RNA-binding protein of the Puf family, translation chr_9[160001-260000].243 3002 COG5077 1.00E-25 26 114 1089 Ubiquitin carboxyl-terminal hydrolase chr_12[720001-820000].86 2895 COG5032 2.00E-09 30 60.5 2105 Phosphatidylinositol kinase and protein kinases o chr_12[800001-900000].109 1463 COG5032 1.00E-09 30 60.1 2105 Phosphatidylinositol kinase and protein kinases o chr_11[1-100000].70 2886 chr_11[80001-180000].100 1523 ANNOTATIONSUMMARY-COMBINEDORFANNOTATION16_Phaeo_genome What is the data model? w do we store data? ###query length COG hit #1 e-value #1 identity #1 score #1 hit length #1 description #1 chr_4[480001-580000].287 4500 chr_4[560001-660000].1 3556 chr_9[400001-500000].503 4211 COG4547 2.00E-04 19 44.6 620 Cobalamin biosynthesis protein CobT (nicotinate-mononucleotide:5, 6 chr_9[320001-420000].548 2833 COG5406 2.00E-04 38 43.9 1001 Nucleosome binding factor SPN, SPT16 subunit chr_27[320001-404298].20 3991 COG4547 5.00E-05 18 46.2 620 Cobalamin biosynthesis protein CobT (nicotinate-mononucleotide:5, 6 chr_26[320001-420000].378 3963 COG5099 5.00E-05 17 46.2 777 RNA-binding protein of the Puf family, translational repressor chr_26[400001-441226].196 2949 COG5099 2.00E-04 17 43.9 777 RNA-binding protein of the Puf family, translational repressor chr_24[160001-260000].65 3542 chr_5[720001-820000].339 3141 COG5099 4.00E-09 20 59.3 777 RNA-binding protein of the Puf family, translational repressor chr_9[160001-260000].243 3002 COG5077 1.00E-25 26 114 1089 Ubiquitin carboxyl-terminal hydrolase chr_12[720001-820000].86 2895 COG5032 2.00E-09 30 60.5 2105 Phosphatidylinositol kinase and protein kinases of the PI-3 kinase fam chr_12[800001-900000].109 1463 COG5032 1.00E-09 30 60.1 2105 Phosphatidylinositol kinase and protein kinases of the PI-3 kinase fam chr_11[1-100000].70 2886 chr_11[80001-180000].100 1523 ANNOTATIONSUMMARY-COMBINEDORFANNOTATION16_Phaeo_genome hat is the data model?
  13. 13. • Simplificar a realidade; • Definir espaço da amostra; • Traduzir de forma ao entendimento da máquina; • Possibilitar a manipulação; Modelagem!
  14. 14. • 3 Componentes 1.Estruturas; 2.Constrições; 3.Operações; O que é um modelo de dados?
  15. 15. 1.Estruturas; • Linhas ou colunas? • nós ou elementos? • valores chaves? • sequência de Bytes? 2.Constrições; • todas as linhas tem o mesmo número de colunas? • os valores da cada coluna devem ter o mesmo valor? • um filho não pode ter 2 pais? 3.Operações; • Ache o valor da váriavel X • Ache a linha onde a coluna “sobrenome” tem o valor “Oliveira" • Pegue os próximos N bytes O que é um modelo de dados?
  16. 16. "Uma coleção de informações organizadas para facilitar a recuperação da mesma" O que é um banco de dados? http://www.usg.edu/galileo/skills/unit04/primer04_01.phtml
  17. 17. • Que problemas o Banco de Dados resolve? • Compartilhamento • Permite o acesso de vários leitores e escritores simultaneamente; • Forçar a modelagem de dados • Garante que todas as aplicações acessem mesmo formato e organização de dados; • Escala • Trabalha com datasets muito grandes para caber na memória; • Flexibilidade • Usar os dados de um jeito novo, e não imaginados ainda!!! O que esperar do banco de dados?
  18. 18. • Como esse dado é organizado fisicamente no disco? • Que tipos de consulta são eficientemente suportadas por esse modelo e quais não? • Quão complexo é adicionar um dado ou atualizá- lo? • O que acontece quando surgem novas consultas que não havia previsto? Preciso reorganizar os dados? Quão complicado é isso? Questões importantes!!
  19. 19. • Bando de Dados em Rede: Historico dos Bancos de Dados Historical Example: Network Databases 5/11/13 Bill Howe, UW 2 Database: A collection of information organized to afford efficient retrieval Orderer% Customer% Screw% Nut% Washer% Contact%Rep%
  20. 20. • Banco de Dados Hierárquico Historico dos Bancos de Dados Historical Example: Hierarchical Databases Orderer% Customer% Screw% Nut% Nail% Contact%Rep% Orderer% Screw% Nut% Washer% master detail detail Works great if you want to find all orders for a particular customer. But what if you want to find all Customers who ordered a Nail?
  21. 21. "RDBMS - Sistemas Gerenciamento de Banco de Dados relacionais, foram inventados para permitir que você use o dado de múltiplas formas, incluindo caminhos que não haviam sido determinados quando o banco foi criado e sua primeira aplicação desenhada” Banco de Dados Relacionais Codd, 1970
  22. 22. Promover independencia física dos dados… 5/11/13 Bill Howe, eScience Institute Key Idea: “Physical Data Indepen physical data independence files and pointers relations SELECT seq FROM ncbi_seque WHERE seq = GATT f = fopen( table_ fseek(10030440); while (True) { fread(&buf, 1, if (buf == GATT . . .
  23. 23. Promover uma álgebra dos registros Key Idea: An Algebra of Tables select project join join Other operators: aggregate, union, difference, cross product
  24. 24. Relacional X Analítico Relacional X Analitico Equivalent logical expressions; different costs 1 σp=knows(R) o=s (σp=holdsAccount(R) o=s σp=accountHomepage(R)) (σp=knows(R) o=s σp=holdsAccount(R)) o=s σp=accountHomepage(R) σp1=knows & p2=holdsAccount & p3=accountHomepage (R x R x R) right associative left associative cross product Mesma operação, custos diferentes!
  25. 25. Complexidade Sofisticação do Dado Atualização Contínua & Sensível ao tempo, consultas mais importantes OPERACIONALIZANDO O QUE está acontecendo? Comandos baseado em eventos assumem o ambiente ATIVANDO
 FAZENDO acontecer! Atualização Continua e Consultas Rápidas Ações baseada em eventos Cresce os modelos analíticos PREVENDO O QUE IRÁ acontecer? Batch Ad Hoc Analytics Aumento de análises
 Ad Hoc ANALISANDO PORQUE isso aconteceu? Batches & Relatórios Ad Hoc REPORTANDO O QUE aconteceu? Evolução de uso Ambiente Analítico
  26. 26. “Big Data é qualquer dado que é caro demais para gerenciar e extrair valor” Bigdata: Definição… Michael Franklin Thomas M. Siebel Professor of Computer Science Director of the Algorithms, Machines and People Lab University of Berkeley
  27. 27. • Velocidade • latência do dado mediante diversidade de demandas e o crescimento da interatividade; • Variedade • diversidade de formatos, qualidade, fontes e estruturas; • Volume • Tamanho dos dados; Bigdata: Desafios…
  28. 28. Cadê a pedra filosofal então?
  29. 29. Cidadãos/Consumidores Demanda de novos serviços Governos/Empresas Adaptação para atender as necessidades Slide, Arturo Muente-Kunigami @n0wh3r3m4n
  30. 30. http://www.clickestudante.com/resultado-dos-protestos-pelo-brasil.html
  31. 31. 1.Governo/Empresas como Plataforma 2.Cidadãos sabem mais e melhor que o governo (sensores) 3.Sistemas pequenos, baixos acoplamentos 4.Para ganhar a confiança, entregue! 5.Reutilize sistemas e políticas, agregue com inovação 6.Tecnologia como facilitador Proposta…
  32. 32. govLab 1.Design 2.Construção 3.Libere 4.Revise Fonte: Adaptado Modelo Ágil
  33. 33. OpenLinked Data
  34. 34. J U N E 2 0 1 4 Open for Business: How Open Data Can Help Achieve the G20 Growth Target A Lateral Economics report commissioned by Omidyar Network
  35. 35. DadosAbertos e o desenvolvimento 13 trilhõesde dólares nos próximos 5 anos Crescimento de 1.1% do PIB do G20, dentre os 2% previstos nos 5 anos U$14,5 Billhões por ano, e provavelmente esse valor esta subestimado…(caso australiano)
  36. 36. • Reduz o custos dos serviços do Governo e da Iniciativa Privada; • Possibilidade de novos serviços e aumento da qualidade dos serviços existentes; • Aumento da confiança no Governo devido o aumento da governança, transparência e engajamento dos cidadãos; Valor dos dados abertos…
  37. 37. Dados que geram mais valor… Educação Fazenda Transporte Varejo Energia Saúde Agricultura Emprego Fonte: Open for Business
  38. 38. Iniciativa Privada Empresas como Catalizadores!!! Governo Sociedade Civil Sociedade Civil Sociedade Civil Sociedade Civil Sociedade Civil $$$
  39. 39. 200M libras em prescrições no SUS Britânico (NHS) http://www.economist.com/news/britain/21567980-how-scrutiny-freely-available-data-might-save-nhs-money-beggar-thy-neighbour
  40. 40. WhereDoesMyMoneyGo.org
  41. 41. Open data index
  42. 42. @shevski okfn.org
  43. 43. @shevski okfn.org OpenCorporates.com http://opencorporates.com/viz/financial/index.html
  44. 44. Resolvendo problemas públicos com Tecnologia
  45. 45. CDO (Chief Data Officer)
  46. 46. Como fazer então?
  47. 47. • Operacionalmente • No Passado: Funcionava, mesmo se o dado não coubesse na memória; • Agora: Posso utilizar vários pequenos computadores (barato) • "Algoritmamente" • No Passado: Para uma determinada quantidade de dados (N), tenho finitas operações; (Nm) - Polinomial • Agora: Para um montante crescente de dados, preciso realizar um volume maior de operações (Nm/k) - Polinomial Paralelizado • Em breve: Dados fluem em um fluxo contínuo de diversa fontes, consultas realizadas continuamente (N*log(N)) - (StreamData) • Ex: Telescópios de Varredura (30TB/noite) Escalando…
  48. 48. • Imagine procurar uma seqüência de DNA • Todas as seqüências iguais a: • GATTACGATATTA Explorando possibilidades GATTACGATATTATACCTGCCGTAA
  49. 49. GATTACGATATTA TACCTGCCGTAA = GATTACGATATTA ? Ciclo = 0 GATTACGATATTA CCCCCAATGAC = GATTACGATATTA ? Ciclo = 1
  50. 50. GATTACGATATTA GATTACGATATTA = GATTACGATATTA ? Ciclo = 40 GATTACGATATTA 40 Registros = 40 Comparações
  51. 51. Ordenar a Seqüência? AAAATCCTGCA AAACGCCTGCA GATTACGATATTA TTTTCGTAATT TTTACGTCAA
  52. 52. GATTACGATATTA CTGTACACAACCT CTGTACACAACCT < GATTACGATATTA ? 0% 100% Começamos dividindo ao meio!
  53. 53. GATTACGATATTA GGATACACATTTA GGATACACATTTA > GATTACGATATTA 0% 100%
  54. 54. GATTACGATATTA 0% 100% 40 Registros = 4 Comparações N registros = log (N) Comparações
  55. 55. Cortar o dado?
  56. 56. ……. 40 Registros / 6 Trabalhadores (N/k)
  57. 57. Cortando, Transformando e Simplificando? f f f f f f
  58. 58. Vários Dados…
  59. 59. map map map map map map reduce reduce reduce reduce 3 5 4
  60. 60. MapReduce (2004)
  61. 61. Hadoop in One Slide src: Huy Vo, NYU Poly
  62. 62. • Nigredo: ou Operação Negra, é o estágio em que a matéria é dissolvida e putrefacta (associada ao calor e ao fogo); • Albedo: ou Operação Branca, é o estágio em que a substância é purificada (associada à ablução com Aquae Vitae, à luz da lua, feminina e à prata); • Citrinitas: ou Operação Amarela, é o estágio em que se opera a transmutação dos metais, da prata em ouro, ou da luz da lua, passiva, em luz solar, ativa; Processo Alquimico http://pt.wikipedia.org/wiki/Alquimia
  63. 63. Map • Input = (inputkey, value) • Output = (intermediatekey, value) - distribuidos Reduce • Input = (intermediatekey, value) • Output = (outputkey, value) - reagrupados Simplificação do Modelo de Dados Dados = Arquivo = saco de pares (key, value)
  64. 64. Simplificação do Modelo de Dados…outro…. RDF Resource Description Framework
  65. 65. Implementação de Joins usando Map-Reduce Nome ID Adriano 11111 José Rodrigo 22222 Empregados EmpID Setor 11111 Tecnologia 2222 Vendas 2222 Marketing Setor Associado Empregados ⋈ SetorAssociado Nome ID EmpID Setor Adriano 11111 11111 Tecnologia José Rodrigo 22222 2222 Vendas José Rodrigo 22222 2222 Marketing
  66. 66. Joins: Antes do Mapeamento Nome ID Adriano 11111 José Rodrigo 22222 Empregados EmpID Setor 11111 Tecnologia 2222 Vendas 2222 Marketing Setor Associado Empregado, Adriano, 11111 Empregado, José Rodrigo, 22222 Setor, 11111, Tecnologia Setor, 22222, Vendas Setor, 22222, Marketing Juntar os dados em um grande bloco de dados
  67. 67. Joins: Função de Mapeamento… Empregado, Adriano, 11111 Empregado, José Rodrigo, 22222 Setor, 11111, Tecnologia Setor, 22222, Vendas Setor, 22222, Marketing Pares: (chave, valor) chave=11111, valor= (Empregado, Adriano, 11111) chave=2222, valor= (Empregado, José Rodrigo, 22222) chave=11111, valor= (Setor, 11111, Tecnologia) chave=22222, valor= (Setor, 22222, Vendas) chave=22222, valor= (Setor, 22222, Marketing)
  68. 68. Joins: Fase da Redução chave=11111, valor= [(Empregado, Adriano, 11111), (Setor, 11111, Tecnologia)] chave=2222, valor= [(Empregado, José Rodrigo, 22222), (Setor, 22222, Vendas), (Setor, 22222, Marketing)] Adriano, 11111, 11111, Tecnologia José Rodrigo, 22222, 22222,Vendas, José Rodrigo, 22222, 22222,Marketing
  69. 69. • DFS - Distributed File System • Processamento Paralelo Massivo - MPP • Tolerância a falha pela duplicação de “chunks” em nós paralelos • Nó Master e Trabalhadores se dividem nas fases de Mapping e Reducing Implementações Map Reduce
  70. 70. Implementações Map Reduce http://hao-deng.blogspot.com.br/2013/05/map-reduce-logical-data-flow.html
  71. 71. MPP - Massive Parallel Processing
  72. 72. MPP - Massive Parallel Processing
  73. 73. Arquiteturas n of sec- een- re- iled cial s of con- red- the hal- uter the hing ntly their architecture can be done at different levels. The most widely used approach of Michael Stonebraker [18] builds the basis for further architectural views and will be extended. Basically, we distinguish between three main approaches. The shared-everything (SE), the shared-disk (SD) and the shared-nothing (SN) architecture are one of the basic con- cepts in a shared database environment. While SE-systems are sharing the processors (P) / memory resources (M) and thus constitute a closed circuit, require the SD / SN variants a communication network (N) to integrate their components. Figure 1: Stonebraker Architecture with shared-everything, shared-disk, shared-nothing A survey of Shared-Nothing Parallel Database Management Systems [Comparison between Teradata, Greenplum and Netezza implementations] Thomas Müseler University of Applied Science Darmstadt Haardtring 100 64295 Darmstadt, Germany Thomas.Mueseler@gmail.com ABSTRACT Distributed database systems can be implemented in a many different ways. Mostly, they are customized for a special environment to handle big data problems. The data ware- house sector relies on these amounts, but has changed from a data storage to a real time management support during the last years [3]. The resulting increase of compution and storage capacity poses new requirements to the database systems. Previous approaches of a parallel database envi- ronment tried to solve this problem with shared disk and memory approaches. The main contribution of this paper is the presentation of the current technology in the shared-nothing database sec- tor. The concepts of the manufacturers Teradata, Green- plum and Netezza will be discussed for data warehouse re- quirements. Based on an architectural overview is a detailed insight of the index functionality given which is a crucial performance factor. Also data distribution algorithms of the manufacturers are analysed under data warehouse con- ditions. At the end is a comparison to other shared concepts (shared- disk, shared-everything) given and the question raised, if the actual approach can be fulfilled by the manufacturers. distribution to each node. Based on the application range in the data warehouse environment (chapter 5), a compari- son is made to other architectural models and the scaling of these kinds of networks. Furthermore is the question raised, if the shared-nothing can be adapted to other application fields and is therefore a good opportunity for future imple- mentations. 2. ARCHITECTURE The classification of distributed database systems in terms of their architecture can be done at different levels. The most widely used approach of Michael Stonebraker [18] builds the basis for further architectural views and will be extended. Basically, we distinguish between three main approaches. The shared-everything (SE), the shared-disk (SD) and the shared-nothing (SN) architecture are one of the basic con- cepts in a shared database environment. While SE-systems are sharing the processors (P) / memory resources (M) and thus constitute a closed circuit, require the SD / SN variants a communication network (N) to integrate their components. A survey of Shared-Nothing Parallel Database Management Systems [Comparison between Teradata, Greenplum and Netezza implementations] Thomas Müseler University of Applied Science Darmstadt Haardtring 100 64295 Darmstadt, Germany Thomas.Mueseler@gmail.com ABSTRACT Distributed database systems can be implemented in a many ifferent ways. Mostly, they are customized for a special nvironment to handle big data problems. The data ware- ouse sector relies on these amounts, but has changed from data storage to a real time management support during he last years [3]. The resulting increase of compution and torage capacity poses new requirements to the database ystems. Previous approaches of a parallel database envi- onment tried to solve this problem with shared disk and memory approaches. The main contribution of this paper is the presentation of he current technology in the shared-nothing database sec- or. The concepts of the manufacturers Teradata, Green- lum and Netezza will be discussed for data warehouse re- uirements. Based on an architectural overview is a detailed nsight of the index functionality given which is a crucial erformance factor. Also data distribution algorithms of he manufacturers are analysed under data warehouse con- itions. At the end is a comparison to other shared concepts (shared- isk, shared-everything) given and the question raised, if the ctual approach can be fulfilled by the manufacturers. 1. INTRODUCTION distribution to each node. Based on the application range in the data warehouse environment (chapter 5), a compari- son is made to other architectural models and the scaling of these kinds of networks. Furthermore is the question raised, if the shared-nothing can be adapted to other application fields and is therefore a good opportunity for future imple- mentations. 2. ARCHITECTURE The classification of distributed database systems in terms of their architecture can be done at different levels. The most widely used approach of Michael Stonebraker [18] builds the basis for further architectural views and will be extended. Basically, we distinguish between three main approaches. The shared-everything (SE), the shared-disk (SD) and the shared-nothing (SN) architecture are one of the basic con- cepts in a shared database environment. While SE-systems are sharing the processors (P) / memory resources (M) and thus constitute a closed circuit, require the SD / SN variants a communication network (N) to integrate their components.
  74. 74. Paralelismo Consultas Distribuidas Consultas em Paralelo
  75. 75. Distribuindo… Parallel Query Example: Teradata AMP = unit of parallelism
  76. 76. Copyright © 2013 by Teradata Corporation and MPP Systems ware that makes a MPP system appear to be a single system nistrators. BYNET 0 BYNET 1 Node 0 PEPE AMP AMP AMP AMP : : AMP AMP PDE O.S. PEPE AMP AMP AMP AMP : : AMP AMP PDE O.S. PEPE AMP AMP AMP AMP : : AMP AMP PDE O.S. PEPE AMP AMP AMP AMP : : AMP AMP PDE O.S. Node 1 Node 2 Node 3 ts of e are al PE) Layer Layer E and des MPP - Massive Parallel Processing AMP Access Module Processor
  77. 77. 1 5/15/2013 Copyright © 2013 by Teradata Corporation The Parsing Engine The Parsing Engine is responsible for: • Managing individual sessions (up to 120) • Parsing and Optimizing your SQL requests • Dispatching the optimized plan to the AMPs • Input conversion (EBCDIC / ASCII) - if necessary • Sending the answer set response back to the requesting client Answer Set Response Parsing Engine SQL Request Parser Optimizer Dispatcher Message Passing Layer AMP AMP AMP AMP Núcleo de Inteligência Parser Engines
  78. 78. Hardware: Achando dado… 1 5/16/2013 Copyright © 2013 by Teradata Corporation Which AMP has the Row? Hashing Algorithm RH Data Table ID Row Hash PI values HBN and data PARSER Data Table Message Passing Layer (Hash Maps) AMP 1 AMP n - 1AMP x... ...AMP 0 AMP n PI value = 197190 Hashing Algorithm 000A1F4A SQL with primary index values and data. For example: Assume PI value is 197190 Summary The MPL accesses the Hash Map using Hash Bucket Number (HBN) of 000A1. Bucket # 000A1 contains the AMP number that has this hash value – effectively the AMP with this row. HBN – Hash Bucket Number HBN Hash Maps AMP # Row ID Row Data Row Hash Uniq Value x '00000000' x'000A1F4A' 0000 0001 38 x 'FFFFFFFF'
  79. 79. BIG DATA WEB Petabytes CRM Terabytes Gigabytes ERP Exabytes INCREASING Data Variety and Complexity User Generated Content Mobile Web SMS/MMS Sentiment External Demographics HD Video Speech to Text Product/
 Service Logs Social Network Business Data Feeds User Click Stream Web Logs Offer History A/B Testing Dynamic Pricing Affiliate Networks Search Marketing Behavioral Targeting Dynamic Funnels Payment Record Support Contacts Customer Touches Purchase Detail Purchase Record Offer Details Segmentation Big Data: de transações para interações Análise de Comportamento ALL DATA Como extrair valor de negócio?
  80. 80. 5/15/13 Bill Howe, eScience Institute 31 Design Space 31" Throughput"Latency" Internet" Private" data" center" Data&" parallel" Shared" memory" The area we’re discussing inspired by a slide by Michael Isard at Microsoft Research In a few weeks
  81. 81. Google 2010
  82. 82. Graph vs. SQL and SQL- MR B has high betweenness. You get that from a graph Caller Recipient # of calls made A B 10 A C 25 A D 32 A E 3 B I 7 C D 5 A B DC E GF H K J L M I SQL or SQL-MR will tell you A makes a lot of phone calls
  83. 83. ?Adriano Amaral Diretor Tecnologia e Soluções about.me/adriano_amaral adriano.amaral@maxtera.com.br

×