Nokia Internal Use Only
Nokia Institute of Technology
Big Data
Umnovoparadigmadearmazenagemdedados
Your natural partner to develop innovative
solutions
Wellington Chevreuil
Nokia Internal Use Only
AgendaAgendaAgendaAgenda
• Big Data
• Banco de Dados Relacional
• Resumo
• O preço da integridade e consistência
• NoSQL
• Not Only SQL
• Principais SGBDs NoSQL
• NoSQL x SGBD Relacional
• Não existe bala de prata
• Cenários de uso
• Questionamentos
Nokia Internal Use Only
Nokia Institute of Technology
Big Data
SurgimentoeAscenção
• Popularização da Internet
• Novos servicos oferecidos
• Buscadores de conteúdo
• Redes Sociais
• Comércio eletrônico (cauda longa)
• Evolução da capacidade de armazenamento
• Toda atividade do usuário é logada
• Processar e analisar todos esses dados?
• O que fazer com essa informação?
• Recomendações
• Publicidade direcionada
• Busca de páginas
• Como manter e recuperar esses dados?
Nokia Internal Use Only
Nokia Institute of Technology
Banco de Dados Relacional
Resumo
• Proposto no início dos anos 70
• Amplamente usado
• Conceitos principais
• Tabelas
• Relacionamentos
• Transaçõs ACID
• Normalização
• Índices
• Orientado a registros
• Alta Consistência e Integridade de Dados
• Ideal para armazenagem e processamento de dados “on-line”
• Perfeito para conjunto de dados limitados
Nokia Internal Use Only
Nokia Institute of Technology
Banco de Dados Relacional
Opreçodaintegridadee
consistência
Nokia Internal Use Only
Nokia Institute of Technology
NoSQL
NotOnlySQL
• Proposta para tratar “Big Data”
• Difere do modelo relacional na arquitetura de persistência
• Diversos modelos, não apenas orientado a linha (registro)
• “Desnormalização” de dados => Maior redundância
• Modelo focado em reduzir as limitações de escalabilidade
do modelo relacional
• Fraco suporte a transações
• Possível ausência de índices secundários
• Geralmente não oferecem esquemas fixos, o domínio
evolui com a aplicação
• Menor Consistência, favorecendo disponibilidade e
escalabilidade (Teorema de CAP)
Nokia Internal Use Only
Nokia Institute of Technology
NoSQL
NotOnlySQL
• NoSQL = Todo modelo de persistência não relacional
• Nada de novo: Soluções de persistência não relacional existem desde os
anos 80. Ex: Berkeley DB, Coherence, Orientado a Objetos
• Implementações NoSQL divergem em diferentes níveis:
• Modelo de Dados
• Modelo de Persistência
• Modelo de Consistência
• Modelo Físico
• Desempenho
• Índices secundários
• Tratamento de falha
• Compactação
• Balanceamento
• Operações atômicas
• Locks
Nokia Internal Use Only
Nokia Institute of Technology
NoSQL
NotOnlySQL
• Modelo de Dados
• Chave/Valor
• Semi-estruturado
• Orientado a coluna
• Orientado a documento
• Modelo de Persistência
• Em Memória
• Persistente
• Modelo de Consistência
• Fraco, implementado parcialmente
• Ausente
• Impactos no desempenho
Nokia Internal Use Only
Nokia Institute of Technology
NoSQL
NotOnlySQL
• Modelo Físico
• Distribuído ou não?
• Impactos em escalabilidade
• Desempenho
• Diferença entre leitura e escrita
• Diferentes tipos de leitura
• Índices secundários
• Nenhum
• Fraco suporte
• Tratamento de falha (fail over)
• Total tolerância
• Disponibilidade
• Escalabilidade
Nokia Internal Use Only
Nokia Institute of Technology
NoSQL
NotOnlySQL
• Compactação
• Suporta?
• Qual o método?
• Plugável?
• Balanceamento
• Operações atômicas
• Difícil de atingir em ambientes distribuídos
• Diferentes abordagens
• Locks
• Modelo permite deadlocks?
Nokia Internal Use Only
Nokia Institute of Technology
NoSQL
NotOnlySQL
• Compactação
• Suporta?
• Qual o método?
• Plugável?
• Balanceamento
• Operações atômicas
• Difícil de atingir em ambientes distribuídos
• Diferentes abordagens
• Locks
• Modelo permite deadlocks?
Nokia Internal Use Only
Nokia Institute of Technology
NoSQL
PrincipaisSGBDs
SGBD Modelo de Dados Modelo de Persistência
MongoDB Orientado a Documentos Persistente (FS)
Cassandra Híbrido entre Chave/Valor, orientado a
registro e orientado a coluna
Persistente (FS)
Voldemort Chave/Valor Persistente (FS)
Redis Chave/Valor Em memória
HBase Orientado a Colunas Persistente (Hadoop)
DynamoDB Tabular Persistente (Amazon S3)
BigTable Chave/valor multi-dimensional Persistente (GFS)
Memcached Tabular Em memória
Nokia Internal Use Only
Nokia Institute of Technology
NoSQL x SGBD Relacional
Nãoexiste“baladeprata”
• SGBD Relacional
• Consistência e integridade
• Normalização para evitar dados redundantes
• Linguagem padronizada de consulta (SQL)
• NoSQL
• Escalabilidade
• Tolerância a falhas
• Modelo de consistência fraco
Nokia Internal Use Only
Nokia Institute of Technology
NoSQL x SGBD Relacional
Cenáriosdeuso
• Cenário 1 – Processamento de pagamento:
• Registra o pagamento do usuário, subtrai o valor pago do total
disponível em sua conta corrente, adiciona o valor pago à
conta do destinatário, confirma a operação;
• Cenário 2 – Recomendação de novos itens para compra:
• Em um sistema de e-commerce com dezenas de milhões de
usuários, identificar similaridade entre esses usuários,
identificar quais itens foram compradaos por quais pessoas,
selecionar itens comprados por perfis semelhantes e oferecer
esses itens aos usuários com os mesmos perfis, que ainda não
o compraram.
Nokia Internal Use Only
ReferênciasReferênciasReferênciasReferências
• Hbase, the Definitive Guide (Lars George) – O’Reilly
• http://en.wikipedia.org/wiki/NoSQL
• Codd’s 12 rules, http://en.wikipedia.org/wiki/Codds_12_rules
• Towards Robust Distributed Systems, Eric Brewer -
http://www.cs.berkeley.edu/~brewer/cs262b-2004/PODC-keynote.pdf
• You Can’t Sacrifice Partition Tolerance, Coda Hale - http://codahale.com/you-cant-
sacrifice-partition-tolerance/
• NoSQL, Conceitos e Evolução (José Ramos e Adriana Nascimento) – MundoJ,
edição 51
• http://www.mongodb.org/
• http://www.memcached.org/
• http://aws.amazon.com/dynamodb/
• http://en.wikipedia.org/wiki/Apache_Cassandra
• http://en.wikipedia.org/wiki/Voldemort_(distributed_data_store)
Nokia Internal Use Only
QuestionamentosQuestionamentosQuestionamentosQuestionamentos

I nd t_bigdata(1)

  • 1.
    Nokia Internal UseOnly Nokia Institute of Technology Big Data Umnovoparadigmadearmazenagemdedados Your natural partner to develop innovative solutions Wellington Chevreuil
  • 2.
    Nokia Internal UseOnly AgendaAgendaAgendaAgenda • Big Data • Banco de Dados Relacional • Resumo • O preço da integridade e consistência • NoSQL • Not Only SQL • Principais SGBDs NoSQL • NoSQL x SGBD Relacional • Não existe bala de prata • Cenários de uso • Questionamentos
  • 3.
    Nokia Internal UseOnly Nokia Institute of Technology Big Data SurgimentoeAscenção • Popularização da Internet • Novos servicos oferecidos • Buscadores de conteúdo • Redes Sociais • Comércio eletrônico (cauda longa) • Evolução da capacidade de armazenamento • Toda atividade do usuário é logada • Processar e analisar todos esses dados? • O que fazer com essa informação? • Recomendações • Publicidade direcionada • Busca de páginas • Como manter e recuperar esses dados?
  • 4.
    Nokia Internal UseOnly Nokia Institute of Technology Banco de Dados Relacional Resumo • Proposto no início dos anos 70 • Amplamente usado • Conceitos principais • Tabelas • Relacionamentos • Transaçõs ACID • Normalização • Índices • Orientado a registros • Alta Consistência e Integridade de Dados • Ideal para armazenagem e processamento de dados “on-line” • Perfeito para conjunto de dados limitados
  • 5.
    Nokia Internal UseOnly Nokia Institute of Technology Banco de Dados Relacional Opreçodaintegridadee consistência
  • 6.
    Nokia Internal UseOnly Nokia Institute of Technology NoSQL NotOnlySQL • Proposta para tratar “Big Data” • Difere do modelo relacional na arquitetura de persistência • Diversos modelos, não apenas orientado a linha (registro) • “Desnormalização” de dados => Maior redundância • Modelo focado em reduzir as limitações de escalabilidade do modelo relacional • Fraco suporte a transações • Possível ausência de índices secundários • Geralmente não oferecem esquemas fixos, o domínio evolui com a aplicação • Menor Consistência, favorecendo disponibilidade e escalabilidade (Teorema de CAP)
  • 7.
    Nokia Internal UseOnly Nokia Institute of Technology NoSQL NotOnlySQL • NoSQL = Todo modelo de persistência não relacional • Nada de novo: Soluções de persistência não relacional existem desde os anos 80. Ex: Berkeley DB, Coherence, Orientado a Objetos • Implementações NoSQL divergem em diferentes níveis: • Modelo de Dados • Modelo de Persistência • Modelo de Consistência • Modelo Físico • Desempenho • Índices secundários • Tratamento de falha • Compactação • Balanceamento • Operações atômicas • Locks
  • 8.
    Nokia Internal UseOnly Nokia Institute of Technology NoSQL NotOnlySQL • Modelo de Dados • Chave/Valor • Semi-estruturado • Orientado a coluna • Orientado a documento • Modelo de Persistência • Em Memória • Persistente • Modelo de Consistência • Fraco, implementado parcialmente • Ausente • Impactos no desempenho
  • 9.
    Nokia Internal UseOnly Nokia Institute of Technology NoSQL NotOnlySQL • Modelo Físico • Distribuído ou não? • Impactos em escalabilidade • Desempenho • Diferença entre leitura e escrita • Diferentes tipos de leitura • Índices secundários • Nenhum • Fraco suporte • Tratamento de falha (fail over) • Total tolerância • Disponibilidade • Escalabilidade
  • 10.
    Nokia Internal UseOnly Nokia Institute of Technology NoSQL NotOnlySQL • Compactação • Suporta? • Qual o método? • Plugável? • Balanceamento • Operações atômicas • Difícil de atingir em ambientes distribuídos • Diferentes abordagens • Locks • Modelo permite deadlocks?
  • 11.
    Nokia Internal UseOnly Nokia Institute of Technology NoSQL NotOnlySQL • Compactação • Suporta? • Qual o método? • Plugável? • Balanceamento • Operações atômicas • Difícil de atingir em ambientes distribuídos • Diferentes abordagens • Locks • Modelo permite deadlocks?
  • 12.
    Nokia Internal UseOnly Nokia Institute of Technology NoSQL PrincipaisSGBDs SGBD Modelo de Dados Modelo de Persistência MongoDB Orientado a Documentos Persistente (FS) Cassandra Híbrido entre Chave/Valor, orientado a registro e orientado a coluna Persistente (FS) Voldemort Chave/Valor Persistente (FS) Redis Chave/Valor Em memória HBase Orientado a Colunas Persistente (Hadoop) DynamoDB Tabular Persistente (Amazon S3) BigTable Chave/valor multi-dimensional Persistente (GFS) Memcached Tabular Em memória
  • 13.
    Nokia Internal UseOnly Nokia Institute of Technology NoSQL x SGBD Relacional Nãoexiste“baladeprata” • SGBD Relacional • Consistência e integridade • Normalização para evitar dados redundantes • Linguagem padronizada de consulta (SQL) • NoSQL • Escalabilidade • Tolerância a falhas • Modelo de consistência fraco
  • 14.
    Nokia Internal UseOnly Nokia Institute of Technology NoSQL x SGBD Relacional Cenáriosdeuso • Cenário 1 – Processamento de pagamento: • Registra o pagamento do usuário, subtrai o valor pago do total disponível em sua conta corrente, adiciona o valor pago à conta do destinatário, confirma a operação; • Cenário 2 – Recomendação de novos itens para compra: • Em um sistema de e-commerce com dezenas de milhões de usuários, identificar similaridade entre esses usuários, identificar quais itens foram compradaos por quais pessoas, selecionar itens comprados por perfis semelhantes e oferecer esses itens aos usuários com os mesmos perfis, que ainda não o compraram.
  • 15.
    Nokia Internal UseOnly ReferênciasReferênciasReferênciasReferências • Hbase, the Definitive Guide (Lars George) – O’Reilly • http://en.wikipedia.org/wiki/NoSQL • Codd’s 12 rules, http://en.wikipedia.org/wiki/Codds_12_rules • Towards Robust Distributed Systems, Eric Brewer - http://www.cs.berkeley.edu/~brewer/cs262b-2004/PODC-keynote.pdf • You Can’t Sacrifice Partition Tolerance, Coda Hale - http://codahale.com/you-cant- sacrifice-partition-tolerance/ • NoSQL, Conceitos e Evolução (José Ramos e Adriana Nascimento) – MundoJ, edição 51 • http://www.mongodb.org/ • http://www.memcached.org/ • http://aws.amazon.com/dynamodb/ • http://en.wikipedia.org/wiki/Apache_Cassandra • http://en.wikipedia.org/wiki/Voldemort_(distributed_data_store)
  • 16.
    Nokia Internal UseOnly QuestionamentosQuestionamentosQuestionamentosQuestionamentos