Uma breve abordagem sobre o conceito de banco de dados não relacionais, tendo como ponto de origem os bancos relacionais atuais. Apresento de forma sucinta as vantagens e desvantagens dos dois.
Foi apresentado no Campus Universitário da UAN do Camama.
1. Banco de Dados Não-Relacionais
vs
Banco de Dados Relacionais
Eng. José Alexandre
Luanda, Outubro de 2013
2. Banco de Dados Relacionais
• O conceito foi criado por Edgar Frank
Codd em 1970, sendo descrito no artigo
"Relational Model of Data for Large Shared
Data Banks“.
• O modelo relacional é um modelo de dados,
adequado a ser o modelo subjacente de
um Sistema Gerenciador de Banco de
Dados (SGBD), que se baseia no princípio em
que todos os dados estão guardados em
tabelas
• Historicamente ele é o sucessor do modelo
hierárquico e do modelo em rede. Estas
arquiteturas antigas são até hoje utilizadas
em alguns data centers com alto volume de
dados, onde a migração é inviabilizada pelo
custo que ela demandaria;
conceito de entidade e relação
3. Banco de Dados Relacionais
Pontos Fortes
• Os SGBDs relacionais oferecem aos
usuários processos de
• validação, verificação e garantias de
integridade dos dados,
• controle de concorrência,
recuperação de falhas,
segurança,
• controle de transações,
otimização de consultas, dentre
outros
Pontos Fracos
• dificuldade em se conciliar tal modelo com
a demanda por escalabilidadecada
vez mais frequente.
• dificuldade em se organizar os dados em
um sistema distribuído trabalhando
com particionamento de dados
4.
5. Banco de Dados Não-Relacionais
• O termo NoSQL surgiu em 1998, a
partir de uma solução de banco de dados
que não oferecia uma interface SQL, mas
esse sistema ainda era baseado na
arquitetura relacional.
• Performance !!!!!!!
• Posteriormente, o termo passou a
representar soluções que promoviam
uma alternativa ao Modelo Relacional,
tornando se uma abreviação de Not
Only SQL (não apenas SQL)
Escalabilidade Horizontal
6.
7. Banco de Dados Não-Relacionais
características em comum
• tais como serem
• livres de esquema,
promoverem alta disponibilidade
e maior escalabilidade
características em Singulares
• certos sistemas promovem
• o particionamento e a replicação
dos dados
• sistemas baseados em
armazenamento chave-valor
• sistemas orientados a documentos
• sistemas orientados a coluna
• sistemas baseados em grafos
11. Consistência
Modelo Relacional
Ponto mais forte do
modelo relacional. As
regras de consistência
presentes propiciam uma
maior grau de rigor
quanto à consistência das
informações.
NOSQL
Realizada de modo eventual
no modelo: só
garante que, se nenhuma
atualização for realizada
sobre o item de dados,
todos os acessos a esse item
devolverão o último valor
atualizado.
12. Diponibilidade
Modelo Relacional
Dada a dificuldade de se
conseguir trabalhar de
forma eficiente com a
distribuição dos dados,
esse modelo pode não
suportar a demanda muito
grande de informações do
banco.
NOSQL
O alto grau de
distribuição dos dados
propicia que um maior
número de solicitações
aos dados seja atendida
por parte do sistema e que
o sistema fique menos
tempo não-disponível..
13.
14. Segurança
Modelo Relacional
SQL Injection
NOSQL
Pode ocorrer SQL Injection
NO Mongodb
Access Control
Autenticação: disabilitada por default
Autenticação Inter-Process: disabilitado
VPNs usa SSL em vez de IPSEC VPNs
devido a performance.
15. Segurança
Nunca fornecer a ninguém (exceto aos usuários administrativos) acesso a tabela
da ACL;
Conceder apenas os privilégios necessários para cada usuário, nunca mais do
que isso;
Não manter senhas em texto puro no banco de dados, em vez disso, utilizar
alguma função de criptografia de via única, com SHA1 ou MD5;
Não escolher senhas que contenham palavras existentes em dicionários;
.
16. Segurança
Utilizar um firewall;
Não confiar em nenhum dado inserido pelos usuários, muitos deles podem
tentar atacar o sistema inserindo caracteres especiais nas entradas dos
formulários contendo algum.
17. ● Referencias
– Silberschatz, Abraham. Sistemas de Banco de Dados, Rio de Janeiro:Elsevier, 2006
– Ricardo W. Brito, Bancos de Dados NoSQL x SGBDs relacionais:Análise Comparativa, 2013
http://analisedesistemasunopar.blogspot.com/2013/04/banco-de-dados-modelo-relacional.html
http://www.culturamix.com/tecnologia/banco-de-dados-relacionais
http://www.mongodb.com/
http://couchdb.apache.org/
http://www.cisco.com/en/US/tech/tk583/tk372/technologies_tech_note09186a0080094203.shtml
http://www.neo4j.org/