1 / 48

CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big !

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.

macy
Download Presentation

CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big !

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CloudConf 2013 Outubro / 2013 Big compute, big net & big data: How to be big! LuizMonnerat PETROBRAS

  2. Tópicos!!! • Big Compute (HPC) • Big Net (Internet) • Big Data • Paralelismo • Escalabilidade • Arquiteturas P2P na Internet • Arquiteturas P2P nos CPDs • DistributedHashTables O que podemos aprender ? Howtobe big ????

  3. Tópicos!!! • Big Compute (HPC) • Big Net (Internet) • Big Data • Paralelismo • Escalabilidade • Arquiteturas P2P na Internet • Arquiteturas P2P nos CPDs • DistributedHashTables O que podemos aprender ? Howtobe big ????

  4. 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

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

  6. bwr1: 1300 CPUs (2004)

  7. Howtobe 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.

  8. Howtobe 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.

  9. Processamento Paralelo Servidor de Processamento Servidor de Processamento Servidor de Processamento Servidor de Processamento Servidor de Processamento Servidor de Processamento Servidor de Processamento Servidor de Processamento Servidor de Processamento Servidor de Processamento Servidor de Processamento Servidor de Processamento Servidor de Processamento Servidor de Processamento Servidor de Processamento Para o paralelismo trazer benefícios o sistema tem que ser escalável

  10. Howtobe 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.

  11. Howtobe 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.

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

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

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

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

  16. 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

  17. Tópicos!!! • Big Compute (HPC) • Big Net (Internet) • Big Data • Paralelismo • Escalabilidade • Arquiteturas P2P na Internet • Arquiteturas P2P nos CPDs • DistributedHashTables

  18. 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

  19. Tópicos!!! • Big Compute (HPC) • Big Net (Internet) • Big Data • Paralelismo • Escalabilidade • Arquiteturas P2P na Internet • Arquiteturas P2P nos CPDs • DistributedHashTables

  20. Howtobe 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!!

  21. Escalabilidade P2P Malha Telefônica

  22. 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

  23. Filesystem Tradicional Cluster de Processamento Servidor de Processamento FS Server FS client Servidor de Processamento FS client Servidor de Processamento FS client

  24. Filesystem Tradicional Cluster de Processamento Servidor de Processamento FS Server FS client Servidor de Processamento FS client Servidor de Processamento FS client

  25. Filesystem Tradicional Cluster de Processamento Servidor de Processamento FS Server FS client Servidor de Processamento FS client Servidor de Processamento FS client

  26. Filesystem Paralelo Cluster de Processamento Servidor de Processamento FS Server FS client FS Server Servidor de Processamento FS client Servidor de Processamento FS client

  27. Filesystem Paralelo Cluster de Processamento Servidor de Processamento FS Server FS client FS Server Servidor de Processamento FS Server FS client FS Server Servidor de Processamento FS Server FS client

  28. Filesystem Paralelo versus P2P Cluster de Processamento Servidor de Processamento FS Server FS client FS Server • Filesystems P2P são soluções basicamente de software que podem aliar: • Baixo custo • Escalabilidade • Alto desempenho • Exemplos • Google filesystem • Hadoop FS FS Server Servidor de Processamento FS Server FS Server FS client FS Server Servidor de Processamento FS Server FS Server FS client

  29. Tópicos!!! • Big Compute (HPC) • Big Net (Internet) • Big Data • Paralelismo • Escalabilidade • Arquiteturas P2P na Internet • Arquiteturas P2P nos CPDs • DistributedHashTables

  30. 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!)

  31. Howtobe 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

  32. 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”

  33. Típico Filesystem P2P Cluster de Processamento Servidor de Processamento Metadata Server FS client FS Server Servidor de Processamento FS Server FS client • 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 Servidor de Processamento FS Server FS client

  34. Tópicos!!! • Big Compute (HPC) • Big Net (Internet) • Big Data • Paralelismo • Escalabilidade • Arquiteturas P2P na Internet • Arquiteturas P2P nos CPDs • DistributedHashTables

  35. 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 dadossão distribuídos segundo uma função criptográfica (hash)

  36. Resolução de Consultas em DHTs As consultas são resolvidas recursivamente Cada consulta pode gerar várias “sub-consultas” (ou hops) Multi-hopDHTs, 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

  37. 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

  38. 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

  39. 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!

  40. 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)

  41. 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

  42. MUITO Obrigado!!!http://www.cos.ufrj.br/~monnerathttp://br.linkedin.com/in/luizmonnerat

  43. Perguntas??http://www.cos.ufrj.br/~monnerathttp://br.linkedin.com/in/luizmonneratPerguntas??http://www.cos.ufrj.br/~monnerathttp://br.linkedin.com/in/luizmonnerat

  44. 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

  45. Arquitetura do HDFS

  46. Arquitetura P2P híbrida do HDFS Servidor de Processamento namenode FS client datanode Servidor de Processamento datanode FS client • 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 processamento • Cliente de FS • Servidor de FS Servidor de Processamento datanode FS client

  47. 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 !!!!!

  48. 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

More Related