Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Gerenciamento de Dados em Nuvem

Gerenciamento de Dados em Nuvem

D10cfe1ce96239324a40eea00df03bdb?s=128

Flávio R. C. Sousa

July 30, 2014
Tweet

Transcript

  1. Universidade Federal do Ceará Jornada de Atualização em Informática (JAI)

    – Julho/2014 Gerenciamento de Dados em Nuvem Flávio R. C. Sousa Javam C. Machado
  2. Agenda  Introdução  Computação em Nuvem  Gerenciamento de

    Dados em Nuvem • Sistemas • Desafios  Conclusões 2
  3. Introdução 3 640K ought to be enough for anybody.

  4. 4

  5. 5 Introdução Fonte: EMC

  6. Introdução 2,5 quintilhões de bytes de dados por dia 90%

    dos dados no mundo hoje foram produzidos nos últimos dois anos 2,7 bilhões de usuários na internet 5 bilhões de celulares 64 Bilhões de mensagens em 24 horas 6 Fonte: IBM/Whatsapp
  7. Introdução 7 Fonte: KPCB/ SAS Os dados armazenados vão crescer

    50 vezes mais até 2020
  8. Introdução  Facebook • 1B de usuários, 1,13 Trilhões de

    "likes", 219B de fotos e 140.3B de relacionamentos  Youtube • 100 horas de vídeos adicionado a cada minuto  Bolsa de valores de Nova Iorque • + 1 TB de dados a cada sessão do pregão  Flick • + de 5B de fotos  Twitter • 80 TB e 1B de tweets por dia 8
  9. 9 Introdução  Boeing • 640 TB gerados em um

    voo transatlântico  Wal-Mart • 2,5 PB e 1 milhão de transações/hora  LHC CERN • 15 Petabytes por ano  Sloan Digital Sky Survey • 14 milhões de estrelas e galáxias • 80 atributos por objeto • 10 Petabytes gerados a cada varredura  Google • 24 Petabytes processados por dia
  10.  2000, 800 Terabytes  2006, 160 Exabytes  2009,

    500 Exabytes(Internet)  2012, 2.7 Zettabytes  2020, 35 Zettabytes, 2020 Introdução 2.7 ZB = 85 Bilhões x 32 GB
  11. 11 Onde e como armazenar, processar e analizar estes dados?

  12. Computação em Nuvem

  13. Computação em Nuvem 13

  14. Computação em Nuvem 14

  15. Computação em Nuvem 15

  16. Computação em Nuvem 16

  17. Computação em Nuvem  Vendido por $ 1 bilhão para

    o Facebook  Mais de 30 milhões de usuários no iPhone  Milhões de usuários em 12 horas no Android  13 funcionários, sendo que 3 cuidam de TI 17 Fonte: Amazon
  18. Computação em Nuvem 18 Fonte: Microsoft

  19. Computação em Nuvem 19 Fonte: Voas et al. 2009

  20. Comp. em Nuvem: Fundamentos 20 Fonte: Buyya et al. 2011

  21. Computação em Nuvem  Serviços básicos e essenciais são todos

    entregues de uma forma transparente  A mesma ideia tem sido aplicada no contexto da informática • Cloud Computing ou Computação em Nuvem  Computação em Nuvem • Ideia antiga: Software como um Serviço (SaaS)  Entrega de aplicações através da Internet • Recentemente: “[Hardware, Infraestrutura, Plataforma] como um serviço”  “X como um serviço” 21
  22. Computação em Nuvem: Por que agora?  Experiência com datacenters

    muito grande • Economia de escala sem precedentes • Transferência de risco  Fatores de tecnologia • Internet de banda larga difundida • Maturidade de tecnologias de virtualização  Fatores de negócios • Custo inicial mínimo • Modelo de pagamento  Baseado no uso (pay-as-you-go) 22
  23. Computação em Nuvem

  24. Computação em Nuvem 24 Fonte: Microsoft

  25. Computação em Nuvem 25 Fonte: Amazon AWS

  26. Computação em Nuvem  Alto investimento inicial  Alto custo

    de manutenção  Quant. fixa de recursos  Dificuldade de escalabilidade  Pagamento pelo uso  Menor custo de manutenção  Escalabilidade linear  Tolerância a falhas  Sob demanda 26 Fonte: Forrester Research
  27. Computação em Nuvem Sem preocupação com infra 99.95 de disponibilidade

    27 Fonte: Amazon
  28. Computação em Nuvem: Custo AWS 28 Tipo CPU RAM Disco

    Custo hora Standard Micro 1 0.6 GB 8 GB $ 0.02 Small 1 1.7 GB 160 GB $ 0.06 Large 2 7.5 GB 850 GB $ 0.24 Extra Large 8 15 GB 1690 GB $ 0.48 High CPU Extra Large 20 7 GB 1690 GB $ 0.58 High Memory 4 XL 26 68.4 GB 1690 GB $ 1.62 Cluster GPU 4 XL 33.5 22 GB 1690 GB $ 2.10 Armazenamento Custo mês Standard Storage ( GB) $ 0.095 Glacier Storage (GB) $ 0.01
  29. Computação em Nuvem  Lista Top 500 • Elenca os

    500 supercomputadores mais rápidos do mundo  1.064 instâncias do EC2 foram usadas para criar um supercomputador com 17.024 cores  240 teraflops de velocidade • 240 trilhões de operações por segundo  Esse supercomputador é o 72º computador mais rápido do mundo • Lista do Top 500 (jun/2012) Você pode alugá-lo por menos de US$ 1.000/h 29 Fonte: Daniel Cordeiro
  30. Computação em Nuvem  Nuvem É uma metáfora para a

    Internet ou infraestrutura de comunicação entre os componentes arquiteturais, baseada em uma abstração que oculta a complexidade de infraestrutura 30 Fonte: Buyya et al. 2009
  31. Computação em Nuvem: Definição “Computação em Nuvem é um modelo

    que possibilita acesso, de modo conveniente e sob demanda, a um conjunto de recursos computacionais configuráveis que podem ser rapidamente adquiridos e liberados com mínimo esforço gerencial ou interação com o provedor de serviços” 31 Fonte: NIST
  32. Características Essenciais  Self-service sob demanda  Amplo acesso 

    Pooling de recursos  Elasticidade rápida  Serviço medido
  33. Computação em Nuvem 33 Tempo CAPACIDADE DA TI Carga Atual

    Alocação de capacidades “Desperdício“ de capacidades “Falta“ de capacidades Custo fixo das capacidades Previsão de Carga Custo Inicial das capacidades Fonte: Microsoft
  34. Computação em Nuvem: Elasticidade 34 Carga Atual Alocação de capacidades

    Redução dos investimentos iniciais Redução do “excesso de TI“ Sem “falta“ de capacidades É possível a redução das capacidades no caso da redução da carga Tempo CAPACIDADE DA TI Previsão de Carga Fonte: Microsoft
  35. Fonte: Microsoft Modelos de Serviços

  36. Modelos de Serviços

  37. Modelos de Implantação 37

  38. Modelos de Implantação 38 Nuvem Pública Tecnologias

  39. Computação em Nuvem: Ameaças  Privacidade • Seus dados e

    de seus cliente são armazenados no provedor  Dependência de provedor de nuvem • Sem controle físico sobre o hardware • E se governo decide encerrar a “nuvem”? ou obrigar o provedor a fornece informações? • E se o datacenter “quebra”?  Limitado ao provedor (lock-in) • Adaptando soluções para serviços específicos (não-padrão) 39
  40. Computação em Nuvem: Mitos  Nuvem é apenas uma “moda”

    passageira  A nuvem não é confiável  A nuvem não é segura  Eu irei perder o controle dos dados  Custo é a única vantagem da nuvem 40
  41. Gerenciamento de Dados em Nuvem

  42. Introdução  Aplicações existentes • Migração para a nuvem 

    Novas aplicações • Grande volume de dados  Internet of Things (IoT)  Big Data  Diferentes abordagens • Sistemas relacionais • NoSQL • NewSQL 42
  43. Gerenciamento de Dados  Dados na nuvem • OLAP (Online

    Analytical Processing) • OLTP (Online Transaction Processing)  Características das aplicações • Grandes quantidades de dados  Banco de dados único  Foco na escalabilidade do banco de dados • Pequenas quantidades de dados  Múltiplos bancos de dados  Foco na escalabilidade da infraestrutura 43
  44. Gerenciamento de Dados 44

  45. Requisitos do Gerenciamento de Dados  Usuário • API simples

    com pouca configuração e administração • Desempenho e disponibilidade • Características avançadas  Provedor • SLA • Minimizar custos  Outros requisitos • Nuvem Pública  Esquema de preço  Segurança  Baixa latência 45
  46. Gerenciamento de Dados 46 Características Descrição Distribuição Poucos centros de

    dados Ambiente Recursos homogêneos em centros de dados Operações API simples, SQL ou variações Transações ACID ou variações Replicação Garantias de QoS e transparência Controle Global Central ou distribuído Alterações Dinâmicas Escalabilidade e elasticidade
  47. Gerenciamento de Dados  Diferenças dos sistemas tradicionais • Intervenção

    humana limitada • Alta alternância na carga de processamento • Variedade de infraestruturas compartilhadas • Mais recursos disponíveis para administração • Atualizações de software mais frequentes 47
  48. Gerenciamento de Dados  Sistema autonômico • Gerenciado de forma

    transparente para os usuários • Monitoramento e controle são importantes e não-triviais • Automação é essencial • Experimentação para coletar dados  Testes • Administração interativa  Mudança com a carga de trabalho envolvida 48
  49. Gerenciamento de Dados  Virtualização 49 CPU Memory NIC Card

    Hard Disk Hypervisor x86 Architecture Hypervisor CPU Memory NIC Card Hard Disk APP Operating System x86 Architecture
  50. Gerenciamento de Dados  Virtualização • Auxilia na implantação, consolidação

    e provisionamento flexível de SGBDs • Recursos dedicados  recursos compartilhados  Melhorar a utilização de recursos  Simplificar a administração  Reduzir custos • Introduz pouco overhead no sistema  Aproximadamente 10% 50
  51. Gerenciamento de Dados 51

  52. Gerenciamento de Dados 52

  53. Gerenciamento de Dados  Multi-inquilino • Técnica para consolidar aplicações

    de múltiplos inquilinos em um único sistema  Inquilino • SGBD • Banco de dados • Inquilino  Compartilhamento de infraestruturas entre inquilinos • Diferentes níveis de abstração e isolamento 53
  54. Multi-inquilino 54 Compartilhamento Inquilino(isolamento) IaaS PaaS SaaS Hardware VM x

    Máquina Virtual Usuário SO x Sistema Operacional Instância do SGBD x Instância Banco de Dados x Banco de Dados Esquema x Tabela Linha x
  55. Multi-inquilino 55

  56. Banco de Dados com um Serviço 56

  57. Banco de Dados com um Serviço 57

  58. Banco de Dados com um Serviço 58

  59. Banco de Dados com um Serviço 59

  60. Técnicas para o Gerenciamento de Dados em Nuvem

  61. Armazenamento/Consultas  Novos sistemas de arquivo • Google File System

    (GFS) • Hadoop File System (HDFS)  MapReduce • Modelo de programação  Função Mapeamento: (Kin , Vin )  list(Kinter , Vinter )  Função Redução: (Kinter , list(Vinter ))  list(Kout , Vout ) 61
  62. Armazenamento/Consultas:MapReduce 62 the quick brown fox the fox ate the

    mouse how now brown cow Map Map Map Reduce Reduce brown, 2 fox, 2 how, 1 now, 1 the, 3 ate, 1 cow, 1 mouse, 1 quick, 1 the, 1 brown, 1 fox, 1 quick, 1 the, 1 fox, 1 the, 1 how, 1 now, 1 brown, 1 ate, 1 mouse, 1 cow, 1 Input Map Shuffle & Sort Reduce Output
  63. Armazenamento/Consultas:Hadoop 63

  64. Armazenamento/Consultas:Hadoop vs. Escalabilidade (Petabytes e Milhares de Máquinas) Performance (Terabytes

    e poucas máquinas) Flexibildiade (sem esquema) Esquema Pré-definido Tolerante à falhas Falha tratada como exceção Hardware barato Máquinas Caras
  65. Armazenamento/Consultas  DHT (Distributed Hash Table) • Par chave/valor 

    <1, sbbd>  get() e put()  mapreduce()  Vantagens • Descentralização, escalabilidade, tolerância a falhas, balanceamento de carga, desempenho  Desvantagens • Sem filtros complexos de consultas ou chave estrangeiras • Junções devem ser feitas na aplicação 65
  66. Armazenamento/Consultas  Linha x Coluna  Vantagens • Facilidade de

    armazenamento e recuperação dos dados  Desvantagens • Dificuldade de recuperar dados específicos 66
  67. Armazenamento/Consultas  Orientado a documento • Representam a estrutura do

    documento  Coleção de pares chave-valor • Esquema flexível • Diferentes formatos: JSON, XML, outros.  Grafo • Vértices, arestas e propriedades • Gerenciamento de dados com estruturas diferenciadas e consultas complexas. 67
  68. Transações  Teorema CAP (Consistency, Availability, Partition Tolerance) [Brewer, 2000]

    [Gilbert & Lynch, 2002] • Um sistema distribuído não pode assegurar as seguintes propriedades de um vez:  Consistência  Disponibilidade  Tolerância a partições 68
  69. Transações 69

  70. Transações SGBD Rel NoSQL Availability Partition Tolerance Consistency Distributed System

    Fundamentals
  71. Transações 71 [MongoDB 2014]

  72. Transações  ACID x BASE (Basically Available, Soft state, Eventually

    consistent)  BASE • Basicamente disponível • Estado leve • Eventualmente consistente  Consistência eventual • O sistema garante que, se nenhuma atualização for feita ao dado, todos os acessos irão devolver o último valor atualizado 72
  73. Transações 73  PACELC  Extensão do teorema CAP 

    Latência e Consistência [Daniel Abadi 2014]
  74. Escalabilidade e Elasticidade 74 Horizontal Vertical

  75. Escalabilidade e Elasticidade  Heterogeneidade dos recursos • Dificulta o

    desenvolvimento de soluções eficazes  Pode comprometer o desempenho no processamento de consultas executadas de forma paralela  Garantias de QoS • De acordo com o SLA definido  Tempo de resposta  Disponibilidade  Penalidades para o provedor 75
  76. Replicação 76

  77. Replicação  Infraestruturas para nuvem • Hardware de baixo custo

    • Máquinas e redes podem falhar  As soluções para gerenciamento de dados • Devem ser construídas para tratar falhas  Técnicas de distribuição • Replicação • Fragmentação 77
  78. Replicação  Fragmentação 78 VM VM VM dados globais

  79. Replicação VM VM VM dados globais  Fragmentação e Replicação

  80. Replicação  Replicação • Centros de dados distribuídos  Latência

    da rede • Diferentes protocolos  Cópia primária, Réplica ativa, Paxos, Gossip • Técnicas para trabalhar com máquinas virtuais  Fragmentação • Estruturas: DHT e orientada a coluna • Facilita a distribuição dos dados 80
  81. Replicação 81

  82. Sistemas para o Gerenciamento de Dados em Nuvem

  83. Classificação 83

  84. NoSQL  Gerenciar grandes volumes de dados • Esquema flexível

    • API simples • Escalabilidade • Consistência eventual  O desempenho depende da remoção das sobrecargas [Stonebraker 2010] • Logging, bloqueio, gerenc. de buffer, entre outras  Tem pouco a ver com o SQL 84
  85. NoSQL  Não relacional  Livre de esquema  Consistência

    BASE  Escalabilidade horizontal  API simples 85
  86. NoSQL 86 NoSQL

  87. NoSQL 87

  88. NoSQL  O desempenho depende da remoção das sobrecargas [Stonebraker

    2010] • Logging • Bloqueio • Gerenciamento de buffer  Tem pouco a ver com o SQL 88
  89. NewSQL  Escalabilidade  Flexibilidade  Desempenho  SQL como

    a interface primária  Suporte a transações ACID 89
  90. NewSQL 90

  91. Amazon S3 (Simple Storage Service)  Sistema de armazenamento distribuído

    • Baseado no Amazon Dynamo • Modelo chave valor  DHT • Escalabilidade, disponibilidade, balanceamento de carga e heterogeneidade  Linguagem • get() e put()  Ausência de transações  Consistência eventual 91
  92. Amazon S3 92  Objetos são organizados em buckets 

    Objetos e buckets • Identificados por uma URI • Acesso por meio de uma Serviço Web  Operações • put(uri, bytestream) • get(uri) • get-if-modified-since(uri, timestamp)
  93. BigTable/Google MegaStore 93

  94. BigTable 94

  95. BigTable “www.ufc.br” “contents:” Linhas Colunas Timestamps t 3 t 11

    t 17 “<html>…” 95  Modelo de dados • Linha, coluna e timestamp • Tipos: string, int, float e DateTime  Exemplo
  96. Google MegaStore  Desenvolvido para aplicações web  Linguagem •

    Acesso: API Python e Java • GQL (Google Query Language)  Select, Where  Order By, Limit e In.  Transação • Suporte a transações por meio das APIs • Transações aplicadas a entidades  Unidade de consistência, escalabilidade, replicação 96
  97. Cassandra  Principais objetivos do sistema • Disponibilidade e escalabilidade

     Características de 2 sistemas • Arquitetura descentraliza do Dynamo • Modelo de dados do BigTable  Armazenamento • Baseado em índices  Linguagem • API Simples  Instruções de seleção, inserção, atualização e remoção de dados 97
  98. Cassandra 98

  99. Cassandra 99

  100. Cassandra  Transação • Consistência eventual • Estratégia configurável pelo

    usuário  Nível de consistência x Desempenho  Disponibilidade • Tolerante a falhas  Protocolo Gossip 100
  101. CouchDB  Modelo • Orientado a documentos • Livre de

    esquemas (JSON)  Documentos • São as unidades primária de dados  Linguagem • API  CRUD • Acesso:  API REST/JSON 101
  102. CouchDB  Consultas • Visões  MapReduce  Armazenamento •

    Armazenamento baseado em arvores B+  Transação • Multi-version Concurrency Control (MVCC)  Adaptado para documentos • Modelo de consistência eventual 102
  103. Microsoft SQL Azure  Modelo Relacional • SQL Azure 

    Windows Azure Storage Blobs Não-estruturados Tables Estruturados Queues Mensagens Comunicação 103
  104. Microsoft SQL Azure 104

  105. Microsoft SQL Azure  Linguagem • Transact-SQL  Transação •

    Não suporta transações distribuídas • Consistência forte  Alta disponibilidade e tolerância a falhas • Azure Data Center  Implementa o modelo multi-inquilino 105
  106. Comparativo entre Sistemas Característica Dynamo S3 Google Cassandra CouchDB SQL

    Azure Modelo Chave valor Coluna Coluna Doc. Relac. Armaz. Hash consist. Índices Índices Arv. B+ Tabela Linguagem API Simples API Simples API Simples API Simples SQL reduzida Transações Não Não Sim simplificad a Não Sim Consistência Eventual Forte Eventual Eventual Forte Escalabilidade Alta Alta Alta Média Média Disponibilidade Alta Alta Alta Alta Alta 106
  107. Sistemas em Nuvem: Nova Abordagem 107

  108. Desafios no Gerenciamento de Dados em Nuvem

  109. Desafios  Armazenamento e Proc. de Consultas  Escalabilidade e

    Consistência  SGBDs Virtualizados  Qualidade dos Serviços de Dados  SGBDs Multi-Inquilino  Segurança e Privacidade dos Dados  Avaliação de Serviços de Dados em Nuvem  Computação em Nuvem para Big Data 109
  110. Armazenamento e Proc. de Consultas  Aumento no volume de

    dados e necessidade de gerenciar e analisar • Novas arquiteturas para paralelizar o processamento OLAP • Desenvolver sistemas que combinem as abordagens OLAP e OLTP • Interação com novos sistemas de arquivos e sistemas legados  Linguagens com restrições • Novas linguagens de consultas • API comum para vários serviços 110
  111. Escalabilidade e Consistência  Grande quantidade de aplicações com requisitos

    diferentes • Desenvolver técnicas para prover escalabilidade e elasticidade • Construir soluções com suporte a consistência forte • Desenvolver soluções para garantir escalabilidade, disponibilidade e consistência 111
  112. Elasticidade  Imagine • Você está desenvolvendo um aplicativo novo

    • Testes parecem promissor • Amigos adoram! • Aplicativo torna-se “viral”  112
  113. Elasticidade  Quantos servidores serão necessários?  O que fazer

    para lidar com um “pico” de acesso ao sistema?  O que fazer se a demanda diminui? 113
  114. Elasticidade 114

  115. Elasticidade 115  Melhorar as técnicas atuais para implementar elasticidade

     Replicação  Redimensionamento  Migração  Como medir a elasticidade?  Novas métricas  Novas ferramentas Demand Capacity Time Resources Demand Capacity Time Resources
  116. Elasticidade  Nuvem não resolve problemas de arquiteturas “ruins” •

    Conheça as melhores práticas de arquitetura • Escolha o que você conhece  Tecnologias, frameworks e bibliotecas • Utilize o “poder” da nuvem  Auto Scaling  Distribuição  Desempenho  Disponibilidade 116 Demand Capacity Time Resources
  117. SGBDs Virtualizados  SGBDs em máquinas virtuais • Melhorar a

    utilização dos SGBDs em nuvem • Integração das tecnologias de virtualização com SGBDs  Tratar cargas de trabalho inesperadas • Replicação e fragmentação • Provisionar e alocar recursos 117
  118. Qualidade dos Serviços de Dados  Ambientes de computação em

    nuvem devem fornecer alta disponibilidade  Diferentes abordagens para melhorar a disponibilidade • Redundância • Nuvens híbridas • Balanceamento dinâmico de carga 118
  119. Qualidade dos Serviços de Dados  Desenvolver soluções com QoS

    mesmo em condições extremas  Técnicas adaptativas e dinâmicas  Auto sintonia de parâmetros baseada na carga de trabalho  Compreensão automática da carga de trabalho  Experimentação 119
  120. SGBDs Multi-Inquilino 120  Compartilhamento de instância de SGBD •

    Apresenta a melhor relação • Utilização de recursos • Desempenho • Segurança
  121. SGBDs Multi-Inquilino  Multiplos inquilinos e compartilhamento de recursos •

    Linguagens para tratar a distribuição dos dados dos inquilinos • SGBD multi-inqulino com desempenho • Baixo custo 121
  122. Segurança e Privacidade 122  Diferentes políticas de segurança e

    modelos de dados  Interoperabilidade entre provedores  Questões de contrato, SLA e governança  Soluções de segurança no acesso e ataques  Privacidade, integridade e auditoria  Técnicas de criptografia  Novas estratégias para garantir a segurança
  123. Avaliação de Serviços de Dados em Nuvem 123  Desenvolver

    novas soluções para a avaliação de serviços de dados em nuvem Característica Tradicional Nuvem Custo [$] Fixo Otimizado Desempenho [tps, secs] Otimizado Fixo Escalabilidade [#cores] Otimizado Fixo Previsibilidade [s($)] - Fixo Consistência [%] Fixo ??? Flexibilidade [#diversos] - Otimizado  Desenvolver novas soluções para a avaliação de serviços de dados em nuvem [Florescu & Kossmann, 2009]
  124. Avaliação de Serviços de Dados em Nuvem  Grande quantidade

    de serviços em nuvem • Qual o melhor serviço para um determinado propósito?  Necessidade de serviços de benchmarks • Avaliar diferentes tipos de serviços • Ferramentas para gerar cargas de trabalho, monitorar o desempenho • Métricas para calcular o custo por usuário em uma determinada unidade de tempo • Desenvolvimento de sistemas de simulação  Ex. CloudSim
  125. Gerenciamento de Dados em Nuvem: Big Data

  126. 126

  127. Os dados são “Grandes” 127 Fonte: Amplab UC Berkeley

  128. Os dados são “Sujos” 128 Fonte: Amplab UC Berkeley 

    Diversas fontes de dados  Sem esquema  Sintaxe e semântica inconsistente
  129. Questões “Complexas” 129 Fonte: Amplab UC Berkeley  Perguntas difíceis

    • Qual é o impacto no trânsito e no preços das casas com construção de uma nova ponte?  Perguntas em tempo real • Existe um ataque cibernético acontecendo?  Perguntas em abertas • Quantos supernovas aconteceram no ano passado?
  130. 130 “Big Data é como sexo no colegial: “Ninguém faz,

    mas todo mundo diz que faz. Então todos pensam que alguém está fazendo e dizem que fazem também” Big Data Fonte: Jay Kidd, CTO da NetApp
  131. Big Data  Big Data são dados que excedem o

    armazenamento, o processamento e a capacidade dos sistemas convencionais • Volume de dados muito grande • Dados são gerados rapidamente • Dados não se encaixam nas estruturas de arquiteturas de sistemas atuais  Além disso, para obter valor a partir desses dados, é preciso mudar a forma de analisá-los 131 Fonte: Jordi Torres
  132. 6 V's do Big Data Valor Veracidade Volatilidade Velocidade Variedade

    Volume Não-estruturado Semi-estruturado Estruturado Terabytes … Exabytes Batch Tempo Real Janela de tempo onde podemos usar os dados Estado verdadeiro da realidade Análise Estratégica de Dados
  133. Tecnologias para Big Data  NoSQL Databases • MongoDB, Cassandra

     Map Reduce • Hadoop, Hive, Pig  Storage • S3, HDFS  Servers • EC2  Processing • R, Yahoo! Pipes  NLP • NL Toolkit, OpenNLP  Machine Learning • WEKA, Mahout  Visualization • Gephi, GraphViz 133
  134. 134

  135. Big Data: Aplicações

  136. Convergência Hardware e Software Análise para Big Data Gerenciamento de

    Dados e Análise de Dados Soluções Open-Source Hardware como commodity
  137. 137

  138. Análise para Big Data  By 2014, 30 percent of

    analytic applications will use predictive capabilities. Gartner Business Intelligence Summit 2012  If you can predict it, you can own it… • Forecasting • Targeting • Fraud detection • Risk • Customer churn, conversion • Propensity • Price Elasticity 138
  139. 139 “O desafio fundamental para as aplicações de Big Data

    é explorar os grandes volumes de dados e extrair informações úteis ou conhecimento para futuras ações” Fonte: Rajaraman and Ullman 2012 Análise para Big Data
  140. Quem são nossos maiores/ menores clientes? Quem são os meus

    clientes e quais produtos eles estão comprando? Quais clientes são mais propoensos a comprar no concorrente? Qual impacto da venda de novos produtos nos lucros? Quais promoções geram mais lucros? Qual a distribuição mais eficiente? Análise para Big Data Fonte: VLDB 2010
  141. 141 Fonte: Sogeti

  142. Homeland Security Finance Smarter Healthcare Multi-channel sales Telecom Manufacturing Traffic

    Control Trading Analytics Fraud and Risk Log Analysis Search Quality Retail: Churn, NBO Análise para Big Data: Gera Valor Fonte: Alberto Laender
  143. Big Data: Desafios

  144. 144 “Um projeto Big Data requer uma transformação sincronizada entre

    pessoas, processos e tecnologias. Todas as três devem marchar em sincronia, caso contrário o projeto falhará.” O que precisamos ? Fonte: Big Data, Big Analytics; Minelli, Chamber, Dhira; Wiley CIO Series, 2013
  145. “Até 2015 serão necessários 4,4 milhões de experts em interpretação

    de dados em larga escala, sendo que 500 mil deles serão para o Brasil”. Cientista de Dados Fonte: Instituto Gartner
  146. 146 Cientista de Dados Fonte: EMC

  147. 147 Fonte: Hilary Mason

  148. Novos Sistemas para Big Data  SGBDs Relacionais não podem

    suportar tudo • NoSQL • NewSQL 148
  149. Novos Sistemas para Big Data 149 Fonte: Jordi Torres

  150. Novos Sistemas para Big Data 150 Fonte: Jordi Torres

  151. Novos Sistemas para Big Data 151 Fonte: Jordi Torres

  152. Novos Sistemas para Big Data A informação não é um

    conhecimento acionável  Predição • Mineração de dados • Técnicas de aprendizagem de máquina  Desenvolver algoritmos “elásticos” 152 Observations Forecast
  153. Novos Sistemas para Big Data

  154. Novos Sistemas para Big Data 1 Petabyte = 1000 x

    (1 Terabyte Assumindo 100MB/sec Scanning 1 Terabyte: more than 5 hours Scanning 1 Petabyte: more than 5.000 hours 154 Fonte: Jordi Torres
  155. Novos Sistemas para Big Data  Armazenamento • SSD 

    Processamento • MapReduce  Gerenciamento • NoSQL, NewSQL  Análise • Aprendizagem de máquina • Computação autonômica 155 Fonte: Jordi Torres
  156. Novos Sistemas para Big Data  Lidem com 6 V’s

    do Big Data • Heterogeneidade • Análise de padrões temporais • Processamento em tempo real • Incerteza • Subjetividade • Ambiguidade  Novas tecnologias • Big Data + Cloud  Segurança dos dados • Privacidade
  157. Novos Sistemas para Big Data  Análise para Big Data

    • Alta dimensionalidade dos dados • Acúmulo de outliers • Correlação incorreta dos dados • Alto custo computacional • Necessidade de algoritmos complexos 157
  158. Big Data está acelerando a inovação e melhorando nossas vidas.

    “Data is the new gold” Fonte: ODI European Commission
  159. Conclusões  SGBDs tradicionais não possuem escalabilidade  Novas abordagens

    são flexíveis para garantir a escalabilidade • Permite construir serviços com garantias de SLA • Trade-off entre funcionalidades e custos operacionais  Os serviços em nuvem para dados oferecem:  APIs mais restritas do que os SGBDs tradicionais  Uma linguagem minimalista de consulta  Possuem garantia de consistência limitada • Mais esforço no desenvolvimento das aplicações 159
  160. Conclusões  O gerenciamento de dados em nuvem é um

    ponto fundamental • Existe uma grande quantidade de sistemas para o gerenciamento de dados em nuvem • Vários desafios  Elasticidade  Escalabilidade  Privacidade  Consistência 160
  161. Conclusões  Abordagens e soluções diferentes são necessárias para superar

    estes desafios • Necessidade de compreender as características das novas aplicações  Infraestruturas terão suporte a vários modelos • Relacional, chave-valor, entre outros.  Comunidade científica e indústria devem interagir • Consolidação e ampla utilização de sistemas de gerenciamento de dados em nuvem 161
  162. Obrigado! Flávio R. C. Sousa flaviosousa@ufc.br @flaviosousa www.lia.ufc.br/~flavio

  163. Obrigado! Flávio R. C. Sousa flaviosousa@ufc.br @flaviosousa www.lia.ufc.br/~flavio