nosql colunas jairo tiburtino dos santos. roteiro cenário características apache cassandra apache...
TRANSCRIPT
NoSQL COLUNAS
Jairo Tiburtino dos Santos
Roteiro• Cenário
• Características
• Apache Cassandra
• Apache Hadoop
Motivação
Tomar Decisões
Analisar
Compreender
Grande volume de dados?
NoSQL – SGBDS
Características• Alta concorrência na escrita e leitura de dados;
• Armazenamento e consultas de dados altamente eficientes;
• Não se baseiam no paradigma ACID, mas no paradigm BASE;
• Escalonável;
• Tolerante a falhas;
• Basicamente Avaliado – disponível;• Soft State;• Eventualmente persistente;
Apache Cassandra
Criado pelo Facebook em 2008 para atender aos requisitos operacionais:
• Escalabilidade – contínuo crescimento da plataforma.• Desempenho - Robustez na busca de mensagens.• Tolerância a falhas – Manter o sistema em funcionamento caso
algum servidor falhe.
Arquitetura:
• Cluster de 600 núcleos• 150 terabytes de dados• 250 milhões de usuários
Modelo de Dados
Tabela é indexada por uma chave.Em cada linha os dados são divididos em colunas, família de colunas.
Colunas• Nome (id)• Valor (objeto)
Super Colunas Colunas que possuem outras colunas como valor.
rua:{name:”rua”, value:” Av. dos Reitores”, Timestamp:”123”}
endereco:{name:”endereco”,value:{ rua:{name:”rua”, value:” Av. dos Reitores”, Timestamp:”123”}, cep:{name”cep”, value:”12345”, Timestamp:”321” } }}
Famílias de Colunas
• Utilizadas para agrupar colunas;• Conceito parecido com o banco de dados
relacional;• Não são dinâmicas;• São agrupadas em keyspaces;
Super Família de Colunas
Possui como colunas somente Super Colunas – Análogo às colunas
Banco de Dados Cassandra(Exemplo)
Arquitetura - Cassandra
Node
Node
NodeNode
Node
Arquitetura - Particionamento
Node
Node
NodeNode
Node
dado dado
dado
dado
dado
dado
Máquina responsável pelo dado:- Hashing da chave identificadora do dado;
- Adição e remoção de nós só afeta os nós vizinhos, proporcionando a escalabilidade do sistema.
Arquitetura - Replicação• Utilizada para garantir a disponibilidade dos dados;• É feita pelo coordenador do nó (máquina);• Realizada de três formas diferentes: Rack Unaware, Rack Aware e
Datacenter Aware;
Node
Node
NodeNode
Node dado
Rack Unaware – Dado replicado aos N-1 nós;
Arquitetura - Replicação
Node
Node
NodeNode
Node
Sistema Externo
• Elege um líder para avisar aos outros nós o intervalo em que se deve fazer a replicação;
Escolhido
Rack Aware e Datacenter Aware
BigTable
Características:• Não suporta um modelo de dados totalmente
relacional;• Dados são indexados usando nomes de linhas e
colunas;• Escalonável• Tolerante a falhas;• Persistente;• Mapa multidimensional ordenado;
Modelo de Dados• O mapa é indexado por uma chave na coluna e uma chave
linha e um timestamp;• As linhas são strings arbitrárias• Mantém os dados em ordem lexicográfico;• Cada linha é chamda de tablet;
Referências• Bigtable: A Dih,m3bstributed Storage System for Structured Data – {fay.jeff,
Sanjay, Wilson,fikes.grubber}@google.com} – Disponível em: http://static.googleusercontent.com/media/research.google.com/pt-BR//archive/bigtable-osdi06.pdf
• Banco de Dados NoSQL x SQL – Disponível em http://www.infobrasil.inf.br/userfiles/27-05-S4-1-68840-Bancos%20de%20Dados%20NoSQL.pdf
• O que é NoSQL – Disponível em: http://planetcassandra.org/what-is-nosql/• Cassandra – Uma sistema de armazenamento NoSQL altamente escalável .
Disponível em:
Click icon to add picture