sistemas nosql - chave- valor luiz andré de jesus silva
TRANSCRIPT
Sistemas NoSQL - Chave-Valor
Luiz André de Jesus Silva
A cada instante, uma quantidade imensa de dado é gerada› Dados não-estruturados ou semi-estruturados
Requisitos diferenciados das aplicações› Escalabilidade sob demanda› Elevado grau de disponibilidade
Modelo Relacional é antigo› Fixo› Estruturado previamente
Resultado: modelo relacional já não satisfazia as necessidades das aplicações
Motivação
NoSQL -> Not Only SQL
Criados para atender ao gerenciamento de grandes volumes de dados
Focados no desempenho› Mesmo que abrindo mão da consistência
Bancos de Dados NoSQL
Crescimento no volume dos dados não acarreta em maior capacidade de processamento e e armazenamento das máquinas
Ocorre o aumento do número de máquinas disponíveis
Possibilita mais unidades de processamento concorrentes
Características dos Bancos de Dados NoSQL:
Escalabilidade Horizontal
Facilita a escalabilidade
Aumenta a disponibilidade
Porém não existe garantia de integridade.
Ainda mais marcante nos BDs NoSQL do tipo chave-valor.
Características dos Bancos de Dados NoSQL:
Ausência de Esquema ou Esquema Flexível
Diminui o tempo gasto para recuperar informações› Os dados estão em vários lugares
Modelo Master-Slave› Cada escrita resulta em N escritas, N é o número de
escravos› Escrita feita no nó mestre e replicada em cada nó escravo› Leitura mais rápida, mas escrita é um gargalo para
grandes volumes de dados
Modelo Multi-Master› Existem vários nós mestres, diminuindo o gargalo ou
master-slave, porém pode causar conflito de dados
Características dos Bancos de Dados NoSQL:
Suporte Nativo a Replicação
O foco não é como dado é armazenado, mas sim como ele pode ser recuperado eficientemente
Através das APIs desenvolvidas para facilitar o acesso as informações.
Qualquer aplicação pode utilizar os dados de forma rápida e eficiente
Características dos Bancos de Dados NoSQL:
Facilidade de Acesso aos Dados
Em prol do desempenho, a consistência entre os diversos pontos de distribuição de dados nem sempre é mantida
Baseada no Teorema CAP› Consistência, disponibilidade e tolerância a partição› A cada momento, só é possível garantir duas das três
Geralmente a consistência é deixada de lado
O sistema deve ser projetado para tolerar inconsistências temporárias para manter a disponibilidade
Características dos Bancos de Dados NoSQL:
Consistência Eventual
Bancos de Dados NoSQL Modelo Chave-Valor
Estrutura bastante simples
Dentre os tipos de BDs NoSQL, é o que mais aguenta carga de dados
Dados armazenados em uma tabela hash gigante
Um chave representa uma lista de valores de atributos
Bancos de Dados NoSQL Modelo Chave-Valor
Modelo de fácil implementação
Dados são rapidamente acessados pela chave.
Duas operações para manipulação:› Get e Set
Porém não permite consultas mais complexas (ainda)
Bancos de Dados NoSQL Modelo Chave-Valor
Amazon DynamoDB
Banco de Dados as a Service (DaaS)› Oferecido como serviço, gerenciado pela Amazon
Sem overhead de administração, sem complexidade operacional, facilmente escalável
Centenas de milhares de requisições por segundo› Latência em milisegundos› Armazena as informações em discos SSD
Alta disponibilidade, gratuito até certo limite
Fácil de criar. Fácil de ajustar.
Amazon DynamoDB
Insira o logotipo aqui
Insira o logotipo aqui
Insira o logotipo aqui
Criação de tabela através da API
Amazon DynamoDB
Amazon DynamoDB Podemos usar o hadoop para consultas
mais complexas
Conclusão
http://www.addlabs.uff.br/sbsc_site/SBSC2011_NoSQL.pdf
http://www.aerospike.com/what-is-a-nosql-key-value-store/
http://nosql-database.org/
http://awshub.com.br/resources/amazon-dynamodb-uma-introducao/
Bibliografia
?Dúvidas