Visão geral entre os principais modelos de bancos de
dados atuais
 Dar uma visão geral sobre as caracteristicas e diferenças entre
os bancos relacionais e bancos NoSQL;
 Compartilhar conhecimento;
• Um banco de dados é um sistema para armazenamento de qualquer
tipo de dados eletrônicos;
• E um SGBD (Sistema Gerenciador de banco de dados)?
 É um sistema que facilita o acesso e o gerenciamento do banco de dados,
além de fornecer diversos outros recursos;
• Estruturado;
• SQL;
• ACID (Atomicidade, Consistência, Disponibilidade,
Durabilidade);
• TABELASnúmero_conta nome_agência saldo
A-101 Downtown 500
A-102 Perryridge 400
A-201 Brighton 900
A-215 Mianus 700
A-217 Brighton 750
A-222 Redwood 700
A-305 Round Hill 350
Prós
 Padronizado;
 Linguagem de consulta robusta
e eficiente (SQL);
 Seguro (ACID);
 Modelo fácil de entender;
 Triggers;
 Joins;
 Chaves compostas;
 Estruturado;
 ...
Contras
 Escalamento vertical;
 Difícil e caro de particionar e
escalar horizontalmente,
quando possível;
 Modelagem não atende a
todos os casos; Não gerencia
com muita eficiência dados
não estruturados/mídias;
 Estruturado;
 ...
 Não estruturados;
 Consistência eventual, Teorema CAP (Consistency,
Availability, Partitions tolerance);
 Bancos distribuídos e de alto desempenho;
 Rodam em memoria principal;
 Dados armanezados em forma de Grafos, Search-Engines,
Chave-Valor, Documentos, Wide Colunms....
Wide Column
Documentos Search-Engine
Grafos
Chave-Valor
Prós
 Alto desempenho;
 Facilmente escaláveis horizontalmente;
 Diversidades de modelos;
 APIs Simplificadas;
 Commodities Hardware;
 Schema flexível;
 Alta disponibilidade;
 Gerenciam bem dados não
estruturados/mídias e em grande
quantidade;
 ...
Contras
 Schema flexível;
 Não é tão seguro;
 Consistência eventual;
 Ferramentas precárias;
 Não há uma linguagem de
consulta padronizada;
 ...
 NewSQL é um conceito de banco de dados relacional
distribuído;
 Utilizam pontos fortes dos modelos relacional e
NoSQL;
• Mais TABELAS, mas pelo menos
é distribuído..
número_conta nome_agência saldo
A-101 Downtown 500
A-102 Perryridge 400
A-201 Brighton 900
A-215 Mianus 700
A-217 Brighton 750
A-222 Redwood 700
A-305 Round Hill 350
Prós
 Padronizado;
 Linguagem de consulta robusta e eficiente (SQL);
 Seguro (ACID);
 Modelo fácil de entender;
 Triggers;
 Joins;
 Chaves compostas;
 Estruturado;
 Alto desempenho;
 Facilmente escaláveis horizontalmente;
 Commodities Hardware;
 Alta disponibilidade;
Contras
 Modelagem não atende a todos os casos;
Não gerencia com muita eficiência
dados não estruturados/mídias;
 Estruturado;
 Ferramentas precárias;
 Conceito bastante novo (2011);
 Imaturos e instáveis;
 Não possuem ainda tantos recursos
como os modelos relacionais e NoSQL;
 ...
Bancos relacionais
 Padrões
 SQL
 Durabilidade
 Triggers
 Chaves estrangeiras
 Chaves compostas
 Transações
 Relacional
 Segurança
NoSQL
 Flexibilidade
 Grafos
 Armazenamento em chave-valor
 Documentos
 Escalabilidade
 Commodity hardware
 RAM
 Distribuído
 Desempenho
 Padrões
 SQL
 Durabilidade
 Triggers
 Chaves estrangeiras
 Chaves compostas
 Transações
 Relacional
 Segurança
 Escalabilidade
 Commodity hardware
 RAM
 Distribuído
 Desempenho
Bancos NoSQL
Bancos
NewSQL
 Como sempre a resposta é depende do pra que vai ser
utilizado;
 Bancos relacionais costumam ser mais seguros;
 Bancos NoSQL costumam ser mais rápidos;
 Ninguém falou que não pode ser utilizado mais de um modelo
em um mesmo sistema
RDMS RDMS
Garantir a
persistência e
segurança dos
dados
Search-Engine CV ou WC Grafo Documentos
Pesquisar
nos dados
do sistema
Log, inserções
e leituras em
massa
Usuários,
social,
rotas...
Anexos,
mídias,
...
Aplicação
RDBMS x NoSQL x NewSQL

RDBMS x NoSQL x NewSQL

  • 1.
    Visão geral entreos principais modelos de bancos de dados atuais
  • 2.
     Dar umavisão geral sobre as caracteristicas e diferenças entre os bancos relacionais e bancos NoSQL;  Compartilhar conhecimento;
  • 4.
    • Um bancode dados é um sistema para armazenamento de qualquer tipo de dados eletrônicos; • E um SGBD (Sistema Gerenciador de banco de dados)?  É um sistema que facilita o acesso e o gerenciamento do banco de dados, além de fornecer diversos outros recursos;
  • 5.
    • Estruturado; • SQL; •ACID (Atomicidade, Consistência, Disponibilidade, Durabilidade); • TABELASnúmero_conta nome_agência saldo A-101 Downtown 500 A-102 Perryridge 400 A-201 Brighton 900 A-215 Mianus 700 A-217 Brighton 750 A-222 Redwood 700 A-305 Round Hill 350
  • 7.
    Prós  Padronizado;  Linguagemde consulta robusta e eficiente (SQL);  Seguro (ACID);  Modelo fácil de entender;  Triggers;  Joins;  Chaves compostas;  Estruturado;  ... Contras  Escalamento vertical;  Difícil e caro de particionar e escalar horizontalmente, quando possível;  Modelagem não atende a todos os casos; Não gerencia com muita eficiência dados não estruturados/mídias;  Estruturado;  ...
  • 9.
     Não estruturados; Consistência eventual, Teorema CAP (Consistency, Availability, Partitions tolerance);  Bancos distribuídos e de alto desempenho;  Rodam em memoria principal;  Dados armanezados em forma de Grafos, Search-Engines, Chave-Valor, Documentos, Wide Colunms....
  • 11.
  • 12.
    Prós  Alto desempenho; Facilmente escaláveis horizontalmente;  Diversidades de modelos;  APIs Simplificadas;  Commodities Hardware;  Schema flexível;  Alta disponibilidade;  Gerenciam bem dados não estruturados/mídias e em grande quantidade;  ... Contras  Schema flexível;  Não é tão seguro;  Consistência eventual;  Ferramentas precárias;  Não há uma linguagem de consulta padronizada;  ...
  • 13.
     NewSQL éum conceito de banco de dados relacional distribuído;  Utilizam pontos fortes dos modelos relacional e NoSQL; • Mais TABELAS, mas pelo menos é distribuído.. número_conta nome_agência saldo A-101 Downtown 500 A-102 Perryridge 400 A-201 Brighton 900 A-215 Mianus 700 A-217 Brighton 750 A-222 Redwood 700 A-305 Round Hill 350
  • 15.
    Prós  Padronizado;  Linguagemde consulta robusta e eficiente (SQL);  Seguro (ACID);  Modelo fácil de entender;  Triggers;  Joins;  Chaves compostas;  Estruturado;  Alto desempenho;  Facilmente escaláveis horizontalmente;  Commodities Hardware;  Alta disponibilidade; Contras  Modelagem não atende a todos os casos; Não gerencia com muita eficiência dados não estruturados/mídias;  Estruturado;  Ferramentas precárias;  Conceito bastante novo (2011);  Imaturos e instáveis;  Não possuem ainda tantos recursos como os modelos relacionais e NoSQL;  ...
  • 16.
    Bancos relacionais  Padrões SQL  Durabilidade  Triggers  Chaves estrangeiras  Chaves compostas  Transações  Relacional  Segurança NoSQL  Flexibilidade  Grafos  Armazenamento em chave-valor  Documentos  Escalabilidade  Commodity hardware  RAM  Distribuído  Desempenho
  • 17.
     Padrões  SQL Durabilidade  Triggers  Chaves estrangeiras  Chaves compostas  Transações  Relacional  Segurança  Escalabilidade  Commodity hardware  RAM  Distribuído  Desempenho
  • 19.
  • 20.
     Como semprea resposta é depende do pra que vai ser utilizado;  Bancos relacionais costumam ser mais seguros;  Bancos NoSQL costumam ser mais rápidos;  Ninguém falou que não pode ser utilizado mais de um modelo em um mesmo sistema
  • 21.
    RDMS RDMS Garantir a persistênciae segurança dos dados Search-Engine CV ou WC Grafo Documentos Pesquisar nos dados do sistema Log, inserções e leituras em massa Usuários, social, rotas... Anexos, mídias, ... Aplicação