> cloudconf 2013 outubro / 2013 big compute, big net & big data: how to be big! luiz monnerat...

48
> CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

Upload: internet

Post on 18-Apr-2015

105 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

>CloudConf 2013

Outubro / 2013

Big compute, big net & big data:

How to be big!

Luiz MonneratPETROBRAS

Page 2: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

> Tópicos!!!

Big Compute (HPC)

Big Net (Internet)

Big Data

Paralelismo

Escalabilidade

Arquiteturas P2P na Internet

Arquiteturas P2P nos CPDs

Distributed Hash Tables

O que podemos aprender ?

How to be big ????

Page 3: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

> Tópicos!!!

Big Compute (HPC)

Big Net (Internet)

Big Data

Paralelismo

Escalabilidade

Arquiteturas P2P na Internet

Arquiteturas P2P nos CPDs

Distributed Hash Tables

O que podemos aprender ?

How to be big ????

Page 4: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

> Big Compute

Processamento de Alto Desempenho• Também conhecido como HPC, HPTC ou Supercomputação

Uso de computadores poderosos para resolver os maiores e mais complexos problemas numéricos

Meteorologia, Simulações Nucleares, Avaliação de riscos em mercados, Processamento Sísmico, etc.

Exemplo: grifo04, maior supercomputador da América Latina • 17 bastidores

• 544 servidores

• Rede de 20gbps por servidor

• Cerca de 500 mil cores matemáticos (incluindo GPUs)

• 40TB de RAM

Page 5: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

> grifo04 : 500 mil cores e 40TB RAM (2010)

Page 6: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

> bwr1: 1300 CPUs (2004)

Page 7: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

> How to be Big Compute......

Processamento Paralelo• Uso de mais de uma unidade computacional (p.e., CPU) para

resolução de um (ou vários) problema(s) simultaneamente

Escalabilidade• Propriedade de um sistema prover mais desempenho à medida em

que lhe é adicionada mais capacidade (p.e., com a adição de mais

CPUs ou servidores)

Balanceamento de carga, Processamento Heterogêneo, comunicação entre processos, sincronização, etc.

Page 8: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

> How to be Big Compute......

Processamento Paralelo• Uso de mais de uma unidade computacional (p.e., CPU) para

resolução de um (ou vários) problema(s) simultaneamente

Escalabilidade• Propriedade de um sistema prover mais desempenho à medida em

que lhe é adicionada mais capacidade (p.e., com a adição de mais

CPUs ou servidores)

Balanceamento de carga, Processamento Heterogêneo, comunicação entre processos, sincronização, etc.

Page 9: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

> Processamento Paralelo

Servidor de ProcessamentoServidor de Processamento

Servidor de ProcessamentoServidor de Processamento

Servidor de ProcessamentoServidor de Processamento

Servidor de ProcessamentoServidor de Processamento

Servidor de ProcessamentoServidor de Processamento

Servidor de ProcessamentoServidor de Processamento

Servidor de ProcessamentoServidor de Processamento

Servidor de ProcessamentoServidor de Processamento

Servidor de ProcessamentoServidor de Processamento

Servidor de ProcessamentoServidor de Processamento

Servidor de ProcessamentoServidor de Processamento

Servidor de ProcessamentoServidor de Processamento

Servidor de ProcessamentoServidor de Processamento

Servidor de ProcessamentoServidor de Processamento

Servidor de ProcessamentoServidor de Processamento

Para o paralelismo trazer benefícios o sistema tem que ser escalávelPara o paralelismo trazer benefícios o sistema tem que ser escalável

Page 10: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

> How to be Big Compute......

Processamento Paralelo• Uso de mais de uma unidade computacional (p.e., CPU) para

resolução de um (ou vários) problema(s) simultaneamente

Escalabilidade• Propriedade de um sistema prover mais desempenho à medida em

que lhe é adicionada mais capacidade (p.e., com a adição de mais

CPUs ou servidores)

Balanceamento de carga, Processamento Heterogêneo, comunicação entre processos, sincronização, etc.

Page 11: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

> How to be Big Compute......

Processamento Paralelo• Uso de mais de uma unidade computacional (p.e., CPU) para

resolução de um (ou vários) problema(s) simultaneamente

Escalabilidade• Propriedade de um sistema prover mais desempenho à medida em

que lhe é adicionada mais capacidade (p.e., com a adição de mais

CPUs ou servidores)

Balanceamento de carga, Processamento Heterogêneo, comunicação entre processos, sincronização, etc.

Page 12: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

>

1 2 3 4 5 6 7 80

1

2

3

4

5

6

7

8

9

Servidores

Des

empe

nho

Escalabilidade Ideal

Curva de Escalabilidade

Escalabilidade é a propriedade de um sistema prover mais desempenho à medida em que lhe é adicionada mais capacidade.

Page 13: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

>

1 2 3 4 5 6 7 80

1

2

3

4

5

6

7

8

9

Servidores

Des

empe

nho

Escalabilidade Ideal

Curva de Escalabilidade

Escalabilidade é a propriedade de um sistema prover mais desempenho à medida em que lhe é adicionada mais capacidade.

Page 14: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

>

1 2 3 4 5 6 7 80

1

2

3

4

5

6

7

8

9

Servidores

Des

empe

nho

Escalabilidade Ideal

Escalabilidade Boa

Curva de Escalabilidade

Escalabilidade é a propriedade de um sistema prover mais desempenho à medida em que lhe é adicionada mais capacidade.

Page 15: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

>

1 2 3 4 5 6 7 80

1

2

3

4

5

6

7

8

9

Servidores

Des

empe

nho

Escalabilidade Ideal

Escalabilidade Ruim

Escalabilidade Boa

Curva de Escalabilidade

Escalabilidade é a propriedade de um sistema prover mais desempenho à medida em que lhe é adicionada mais capacidade.

Page 16: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

> Limitações de Escalabilidade

Há diversos fatores que podem limitar a escalabilidade de um sistema• Balanceamento de carga

• Comunicação entre processos

• Sincronização

• ...

• ...

• Arquitetura Cliente/Servidor

Page 17: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

> Tópicos!!!

Big Compute (HPC)

Big Net (Internet)

Big Data

Paralelismo

Escalabilidade

Arquiteturas P2P na Internet

Arquiteturas P2P nos CPDs

Distributed Hash Tables

Page 18: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

> Big Net

Internet• Rede mundial de “computadores”..... e “coisas” !!!!!

Sistemas com milhões de usuários simultâneos

Demandas imprevisíveis

Sistemas Cliente/Servidor não atendem bem....• Escalabilidade é crítica

• Alto custo

• Difíceis de dimensionar

Page 19: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

> Tópicos!!!

Big Compute (HPC)

Big Net (Internet)

Big Data

Paralelismo

Escalabilidade

Arquiteturas P2P na Internet

Arquiteturas P2P nos CPDs

Distributed Hash Tables

Page 20: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

> How to be Big Net.....

P2P !!!!• peer-to-peer ou par-a-par

Arquitetura de sistemas distribuídos onde todos os participantes são iguais em suas funções (pares)

• Cada par realiza funções de servidor e de cliente de um mesmo serviço

• Não há distinção entre servidores e clientes

• Intrinsicamente escalável !!!!!!

• Ajusta-se automaticamente a variações de demanda!!

Page 21: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

> Escalabilidade P2P

Malha Telefônica

Page 22: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

> Sistemas puramente P2P

Vários sistemas P2P usam soluções Cliente/Servidor (p.e., diretórios) para metadados

• Exemplo: Napster

• Acesso a metadados pode ser um gargalo em sistemas enormes

Sistemas puramente P2P atuais usam DHTs como diretórios• Exemplos Skype, KAD/eMule, BitTorrent

• São mais escaláveis

Page 23: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

> Filesystem Tradicional

Cluster de ProcessamentoCluster de Processamento

Servidor de ProcessamentoServidor de Processamento

Servidor de ProcessamentoServidor de Processamento

Servidor de ProcessamentoServidor de Processamento

FS client

FS client

FS client

FS Server

Page 24: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

> Filesystem Tradicional

Cluster de ProcessamentoCluster de Processamento

Servidor de ProcessamentoServidor de Processamento

Servidor de ProcessamentoServidor de Processamento

Servidor de ProcessamentoServidor de Processamento

FS client

FS client

FS client

FS Server

Page 25: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

> Filesystem Tradicional

Cluster de ProcessamentoCluster de Processamento

Servidor de ProcessamentoServidor de Processamento

Servidor de ProcessamentoServidor de Processamento

Servidor de ProcessamentoServidor de Processamento

FS client

FS client

FS client

FS Server

Page 26: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

> Filesystem Paralelo

Cluster de ProcessamentoCluster de Processamento

Servidor de ProcessamentoServidor de Processamento

Servidor de ProcessamentoServidor de Processamento

Servidor de ProcessamentoServidor de Processamento

FS client

FS client

FS client

FS Server

FS Server

Page 27: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

> Filesystem Paralelo

Cluster de ProcessamentoCluster de Processamento

Servidor de ProcessamentoServidor de Processamento

Servidor de ProcessamentoServidor de Processamento

Servidor de ProcessamentoServidor de Processamento

FS client

FS client

FS client

FS Server

FS Server

FS Server

FS Server

FS Server

Page 28: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

> Filesystem Paralelo versus P2P

Cluster de ProcessamentoCluster de Processamento

Servidor de ProcessamentoServidor de Processamento

Servidor de ProcessamentoServidor de Processamento

Servidor de ProcessamentoServidor de Processamento

FS client

FS client

FS client

FS Server

FS Server

FS Server

FS Server

FS Server

FS Server

FS Server

FS Server

Filesystems P2P são soluções basicamente de software que podem aliar:• Baixo custo

• Escalabilidade

• Alto desempenho

• Exemplos• Google filesystem

• Hadoop FS

Page 29: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

> Tópicos!!!

Big Compute (HPC)

Big Net (Internet)

Big Data

Paralelismo

Escalabilidade

Arquiteturas P2P na Internet

Arquiteturas P2P nos CPDs

Distributed Hash Tables

Page 30: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

> Big Data

Várias definições..........• Grandes massas de dados não estruturados

• Uso de Data Mining / busca de correlações

• Uso de Analytics

• 5V’s : Velocidade, Volume, Variedade, Veracidade e Valor

As demandas impostas pelas necessidades de volume e velocidade de acesso dos dados desafiam os filesystems tradicionais Cliente/Servidor (sejam paralelos ou não!)

Page 31: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

> How to be Big Data......

P2P dentro do CPD!

Filesystem P2P

Hadoop FS (HDFS)• Não é puramente P2P.......

• Pode ter gargalos no acesso aos metadados

• Criadores do GoogleFS relataram que eles usam centenas de

servidores de metadados dedicados

Page 32: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

> Hadoop File System (HDFS)

Parte do projeto Apache Hadoop• Baseado no GFS (Google FS)

É P2P!!!!!!!!• P2P híbrido, com os metadados em servidor dedicado

• Escalável

Integração com MapReduce

Pode ser usado em separado do Hadoop

Não é compatível com padrão POSIX• Aplicações prévias precisam ser reescritas

• Aplicações novas podem ser desenvolvidas de modo “HDFS friendly”

Page 33: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

> Típico Filesystem P2P

Cluster de ProcessamentoCluster de Processamento

Servidor de ProcessamentoServidor de Processamento

Servidor de ProcessamentoServidor de Processamento

Servidor de ProcessamentoServidor de Processamento

FS client

FS client

FS client

FS Server

FS Server

FS Server

Metadata Server

Filesystems P2P em geral usam uma solução cliente/servidor para diretórios/metadados

Acesso a metadados só se torna um gargalo em sistemas P2P MUITO grandes

Mas soluções P2P para diretórios (DHTs) costumam ter latências muito altas

Page 34: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

> Tópicos!!!

Big Compute (HPC)

Big Net (Internet)

Big Data

Paralelismo

Escalabilidade

Arquiteturas P2P na Internet

Arquiteturas P2P nos CPDs

Distributed Hash Tables

Page 35: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

> Distributed Hash Table (DHT)

Estrutura de dados distribuída, P2P, escalável e auto-reorganizável

Os dados são tipicamente metadados (entradas de diretórios)

As recuperações dos dados são feitas através de consultas

Os dados são distribuídos segundo uma função criptográfica (hash)

Page 36: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

> Resolução de Consultas em DHTs

As consultas são resolvidas recursivamente • Cada consulta pode gerar várias “sub-consultas” (ou hops)

• Multi-hop DHTs, introduzidas no início dos anos 2000

• Como quando fazemos para descobrir o telefone de alguém, ligando

para seus amigos, parentes, etc.

Cada consulta em uma Multi-hop DHT pode gerar dezenas de saltos• Latência alta, porém adequada para muitas aplicações de Internet

Mais recentemente surgiram as single-hop DHTs• “Diretórios” P2P

• Escalabilidade aliada a baixa latência

Page 37: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

> Principais Single-hop DHTs

OneHop (MIT, Gupta et al, 2004)

• Altíssimo consumo de banda passante

• Desbalanceamento de carga

1h-Calot (IBM+Rochester, Tang et al, 2005)

• Altíssimo consumo de banda passante

• Bom balanceamento de carga

D1HT (Petrobras+UFRJ, Monnerat e Amorim, 2005)

• Bom balanceamento de carga

• Consumo de banda passante 10x menor do que OneHop e 1h-Calot

• Puramente P2P

• Auto-reorganizável

Page 38: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

> D1HT: A Distributed One Hop Hash Table

Baixa Latência:

• Requisito de HPC, Big Data, etc.

Baixos custos de manutenção:

• Requisito de aplicações P2P na Internet

Page 39: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

> D1HT: A Distributed One Hop Hash Table

Baixa Latência:

• Requisito de HPC, Big Data, etc.

Baixos custos de manutenção:

• Requisito de aplicações P2P na Internet

D1HT: Uma DHT de propósito geral!

Page 40: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

> D1HT: A Distributed One Hop Hash Table

Baixa Latência:

• Requisito de HPC, Big Data, etc.

Baixos custos de manutenção:

• Requisito de aplicações P2P na Internet

D1HT: Uma DHT de propósito geral!

Melhor Tese de Doutorado brasileira em HPC (2010)Melhor Tese de Doutorado brasileira em HPC (2010)

Page 41: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

> Conclusões

Aprendizado e técnicas desenvolvidas para HPC, Internet e Big Data são importantes para implantação de grandes sistemas

Sistemas cliente/servidor paralelos podem ser escaláveis e resolver a maioria das demandas

Sistemas P2P são ainda mais escaláveis e recomendados para ambientes muito grandes

Na medida em que os sistemas têm crescido cada vez mais, DHTs se tornarão mais comuns e até necessárias em alguns casos

Page 42: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

>

MUITO Obrigado!!!

http://www.cos.ufrj.br/~monnerat

http://br.linkedin.com/in/luizmonnerat

Page 43: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

>

Perguntas??

http://www.cos.ufrj.br/~monnerat

http://br.linkedin.com/in/luizmonnerat

Page 44: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

> Agenda

Introdução: Processamento Sísmico

Processamento de Alto Desempenho

Escalabilidade

Grandes Massas de Dados não Estruturados na Petrobras

Filesystems Paralelos

Arquiteturas P2P

Filesystems P2P

Tabelas Hash Distribuídas (DHTs)

Hadoop

Conclusão

Page 45: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

> Arquitetura do HDFS

Page 46: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

> Arquitetura P2P híbrida do HDFS

FS client

FS client

datanode

datanode

FS client datanode

Servidor de ProcessamentoServidor de Processamento

Servidor de ProcessamentoServidor de Processamento

Servidor de ProcessamentoServidor de Processamento

namenode

Namenode (servidor de metadadados) roda em um servidor dedicado

Datanodes (servidores de dados) rodam nos nós do cluster.

Cada nó atua então como:Servidor de processamentoCliente de FSServidor de FS

Page 47: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

> Hadoop

HDFS + MapReduce & more!

É P2P!!!!!!!!

“Moving Computation is Cheaper than Moving Data”• Se encaixa bem com estratégias de Analytics

Pode facilitar – em MUITO – o desenvolvimento de aplicações paralelas

Solução commodity e escalável!

Pode ser SUPER útil para HPC !!!!!

Page 48: > CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! Luiz Monnerat PETROBRAS

> Conclusões

Processamento sísmico usa grandes massas de dados e HPC

Muito da experiência HPC pode ser usado em BigData• Clusters Linux

• Soluções commodities

• Quanto mais commodity melhor!

• Paralelismo

• Escalabilidade

Arquiteturas P2P são intrinsicamente escaláveis

DHT: solução P2P para diretórios e metadados

Hadoop: P2P, escalável e commodity

HPC pode usufruir de soluções desenvolvidas para BigData