NoSQL na globo.com
Camila Dias <cdias@corp.globo.com> Rio Info, setembro 2014
+45 milhões de UVs
+93 milhões de horas navegadas
+3.8 bilhões de PageViews
+250 milhões de vídeosFonte: ComScore - Jul/14
Em 1 mês …
+2000 servidores
+350 databases
16 DBA's
+30 times
Estrutura
NoSQL termo genérico para designar qualquer banco de dados não-relacional
Bancos Relacionais
BDs RelacionaisSurgem na década de 70
Dominaram o mercado por 30 anos
CaracterísticasDados na forma de tabelas Joins entre tabelas
SQL é linguagem padrão
Forte controle de transações
Id Post u_id
1 timãoo 1
2 golaço 1
3 uhuuu 2
Mensagens
Id Nome email
1 João joao@..2 Maria mary@..3 José jose@..
Usuários
Pontos FracosModelo pouco flexível
Foram feitos para trabalhar centralizados Clusters são caros e complexos
$$$
Scale Up
Explosão de dados
Fonte: http://bit.ly/1BGNt6A
Características NoSQL
Não usam SQL
Schema dinâmico
Open Source
Horizontalmente escaláveis
Scale-out
Trade-offsSist. Distribuídos só garantem simultaneamente duas das três propriedades
Teorema CAP
Diversos saboresDocumento
Chave-valor
Grafo
Colunas
Bancos orientados a documentos
Bancos de Documentos
Mais popular: MongoDB
Dados armazenados como documentos
POSTS {
"_id" : ObjectId("533d5c429937a2581d01d848"),
"liga" : “Liga da Globocom” ,
"data_criacao" : ISODate("2014-04-03T10:04:02.043Z"),
"mensagem" : “Começou o Jogo!!!!",
"time" : "Esportes FC",
"comentarios" : [ { "data_criacao" : ISODate("2014-04-03T10:29:39.750Z"),
"mensagem" : "verdade finalmente abriu",
"time" : “emuleke" } ,
{ "data_criacao" : ISODate("2014-04-03T10:29:39.750Z"),
"mensagem" : “estava com saudades",
"time" : “vascao_selecao” }
]
}
Bancos Chave-valor
Bancos chave-valorMais conhecidos: Redis, Amazon Dynamo
Modelo de dados: chave que se liga a um conjunto de valores
Bancos de Grafos
Mais popular: Neo4j Usamos Virtuoso
Dados representados por nós e relações
PT
Presidente
PSB
Cita
Cita
Filiada
Candidata
Candidata
através de
através de
FiliadaBrasília
Cobertura de Eleições
Bancos orientados por colunas
Bancos de Colunas
Mais conhecidos: Hbase, Cassandra
Dados armazenados em colunas Usados em projetos de big data
fonte: http://slidesha.re/X8gvfE
BigData conjunto de dados tão grandes e complexos que torna-se difícil processá-los com tecnologias tradicionais
Big Data
Fonte: www.datameer.com
Value Verocity
BenefíciosConhecer cada cliente
Design responsive
Oferta de conteúdo
Marketing digital inteligente
Desafios
Importar, armazenar, e gerenciar
Análisar os dados
Aplicar ao negócio
Qual é a melhor solução?
Persistência Poliglota cada problema tem uma tecnologia que
melhor o atende
Camila Dias cdias@corp.globo.com Banco de Dados - globo.com
Obrigada
Conheçam nossos projetos opensource.globo.com
https://github.com/globocom/database-as-a-service
https://github.com/globocom/IWantToWorkAtGloboCom
http://www.slideshare.net/camilapdias