i nd t_bigdata(1)

16
Nokia Internal Use Only Nokia Institute of Technology Big Data Umnovoparad igma de armazenagemde dados Your natural partner to develop innovative solutions Wellington Chevreuil

Upload: wchevreuil

Post on 07-Jul-2015

90 views

Category:

Documents


0 download

DESCRIPTION

Apresentação sobre BigData - Palestra na Fucapi 2012

TRANSCRIPT

Page 1: I nd t_bigdata(1)

Nokia Internal Use Only

Nokia Institute of Technology

Big DataUm novo paradigma de armazenagem de dados

Your natural partner to develop innovative solutions

Wellington Chevreuil

Page 2: I nd t_bigdata(1)

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

Page 3: I nd t_bigdata(1)

Nokia Internal Use Only

Nokia Institute of Technology

Big DataSurgimento e Ascençã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?

Page 4: I nd t_bigdata(1)

Nokia Internal Use Only

Nokia Institute of Technology

Banco de Dados RelacionalResumo

• 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

Page 5: I nd t_bigdata(1)

Nokia Internal Use Only

Nokia Institute of Technology

Banco de Dados RelacionalO preço da integridade e consistência

Page 6: I nd t_bigdata(1)

Nokia Internal Use Only

Nokia Institute of Technology

NoSQLNot Only SQL

• 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)

Page 7: I nd t_bigdata(1)

Nokia Internal Use Only

Nokia Institute of Technology

NoSQLNot Only SQL

• 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

Page 8: I nd t_bigdata(1)

Nokia Internal Use Only

Nokia Institute of Technology

NoSQLNot Only SQL

• 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

Page 9: I nd t_bigdata(1)

Nokia Internal Use Only

Nokia Institute of Technology

NoSQLNot Only SQL

• 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

Page 10: I nd t_bigdata(1)

Nokia Internal Use Only

Nokia Institute of Technology

NoSQLNot Only SQL

• 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?

Page 11: I nd t_bigdata(1)

Nokia Internal Use Only

Nokia Institute of Technology

NoSQLNot Only SQL

• 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?

Page 12: I nd t_bigdata(1)

Nokia Internal Use Only

Nokia Institute of Technology

NoSQLPrincipais SGBDs

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

Page 13: I nd t_bigdata(1)

Nokia Internal Use Only

Nokia Institute of Technology

NoSQL x SGBD RelacionalNão existe “bala de prata”

• 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

Page 14: I nd t_bigdata(1)

Nokia Internal Use Only

Nokia Institute of Technology

NoSQL x SGBD RelacionalCenários de uso

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

Page 15: I nd t_bigdata(1)

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)

Page 16: I nd t_bigdata(1)

Nokia Internal Use Only

QuestionamentosQuestionamentosQuestionamentosQuestionamentos