Você está na página 1de 17

NoSQL

Jhonata Lus Vandemberg Silva Lima

Resumo
Objetivo:
- Descrever a tecnologia NoSQL.

Contedo:
SGBDD / Clusterizao Caractersticas do NoSQL Tipos de banco de dado NoSQL Projeto Cassandra

Bancos de dados distribudos


uma espcie de banco de dados virtual, onde as partes componentes esto fisicamente armazenadas em vrios bancos de dados distintos em vrios locais distintos. (DATE, 2003).

Objetivos dos SGBDD


So alguns dos objetivos de um gerenciamento de banco de dados distribudo: sistema de

Autonomia local Operao contnua Independncia de localizao, fragmentao e replicao Processamento de consultas distribudo Independncia de hardware, SO ou SGBD

CLUSTERIZAO
O cluster de computador a juno de um ou mais computadores (sejam eles fsicos ou virtuais) que trabalham de forma mtua. Assim, o cluster trabalha com poder de processamento superior ao de um computador simples, ainda que seja s uma mquina.

ALTA DISPONIBILIDADE
Um sistema de alta disponibilidade possui e se utiliza de esquemas de deteco, recuperao e no deixa falhas visveis para o usurio final. Existem trs tipos de disponibilidade: Disponibilidade bsica: no possui programas de monitoramento de status. Faixa de disponibilidade: 99 a 99,9%;

Alta disponibilidade: possui mecanismos de tratamento de falhas. Faixa de disponibilidade: 99,99 a 99,999%;
Disponibilidade contnua: Todas as paradas, planejadas ou noplanejadas, so mascaradas. Disponibilidade total.

COMPOSIO DE UM CLUSTER
Ns: cada computador e/ou servidor dentro do cluster. SO: para a utilizao em cluster, este deve ser multiprocessado e multiusurio. Conexes de rede: fazem a ligao entre os ns e dos ns com os nsservidores. Middleware: recebe os processos que entram no cluster e os redistribui de forma otimizada. Encontra-se entre o SO e as aplicaes. Aplicaes: fazem o monitoramento do sistema, verificando a disponibilidade dos ns e evitando conflitos e redundncia de processamento.

CLUSTERIZAO EM BD
A ideia de clusterizao em banco de dados criar servidores/bases de dados construdos com mquinas simples, e que sejam total ou pelo menos com alta tolerncia a falhas, e que possa adicionar fora de processamento, quando necessrio, com o mnimo de dificuldade e de forma automatizada (disponibilidade e escalabilidade).

TIPOS DE ARQUITETURA
Shared-disk: Todos os ns possuem acesso a um disco nico, ou seja, mesmo que um n falhe, o dado continua acessvel pelos outros. Shared-nothing: cada n possui uma poro do banco de dados que somente ele acessa. Requisio de um dado feitas por meio de mensagens entre os ns.

NoSQL
O termo NoSQL utilizado hoje em dia para nomear um movimento que no utiliza somente a lgica relacional (Not only SQL).

Esse sistema utiliza conceitos de banco de dados distribudo e clusterizao, pois ao invs de possuir distribuio vertical de servidores, como os bancos de dados relacionais, ele possui distribuio horizontal.

Caractersticas do NoSQL
Registros Altamente escalvel Tolerante a falhas Utiliza clusterizao Alta performance Replicao

Sharding
Consiste em dividir os dados horizontalmente, ou seja, quebrar as tabelas,diminuindo o seu nmero de linhas e separando-as em ambientes diferentes. Neste ponto todos os dados de uma partio nodevem conter referncias aos dados de outras parties, sendo que os dados em comum devero ser replicados entre as bases.

MapReduce
um algoritmo, patenteado pela Google para gerenciamento em larga escala. Existem duas fases:
- Map: O n principal recebe os dados, divide em partes menores e as envia aos outros ns para serem processados. Ao final do processamento estes ns devolvem o resultado ao n principal. - Reduce: O n principal combina as respostas obtidas pelos outros ns gerando o resultado final do processamento.

Tipos de bancos NoSQL


So diversas as tipologias de bancos de dados NoSQL. Para fins de estudo, foram separadas as duas principais e mais simples: Key-Value Wide Columns Store

Key-Value
o tipo mais simples de banco de dados NoSQL. So compostos por uma tabela que possui uma chave de acesso (key) e um valor associado (value), e as buscas so realizadas pela chave. Permite alta escalabilidade, e portanto, mais carga de dados. So exemplos: Berkeley DB, Project Voldemort, Memcache DB, etc.

Wide Columns Store


So bancos de dados que suportam um grande nmero de colunas por linhas, permitindo buscas pelas colunas, colunas que contm listas de valores e/ou subcolunas e linhas com nmero varivel de colunas. O BigTable da Google um exemplo de base de dados que trabalha com este conceito. Outros projetos que utilizam o mesmo so: SimpleDB, HBase, HyperTable e o Cassandra.

Projeto Cassandra

Você também pode gostar