NSQL Flashcards

1
Q

O que é NoSQL?

A
  • NoSQL significa Not Only SQL (Não Somente SQL)
  • NoSQL pode ser utilizado para fazer consultas em SQL
  • Bancos de dados distribuídos não relacionais
  • Trabalham com Big Data
  • Não possuem modelo de dados fixo
  • Não são orientados a objeto
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
1
Q

NoSQL – Características

A
  • Aceitam SQL
  • Trabalham com dados não estruturados e semiestruturados
  • Aceitam diversos tipos de modelo de dados, incluindo schema-less
  • Dados distribuídos globalmente
  • Escalabilidade horizontal
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

NoSQL – Vantagens

A
  • Rapidez de acesso
  • Disponibilidade dos dados
  • Escalabilidade
  • Replicação de dados
  • Flexibilidade
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

NoSQL – Quando usar?

A
  • Dados mudando constantemente
  • Armazenar dados semi e não estruturados
  • Desenvolvimento ágil
  • Big Data e análise de dados
  • Sem requisitos rígidos de consistência e integridade
  • Arquiteturas escaláveis
  • Micro-serviços e real-time streaming
  • Internet das coisas
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

NoSQL – o que não tem

A
  • Esquemas/modelos de dados pré-definidos e estáveis
  • Operações ACID (atomicity, consistency, isolation, durability)
  • Normalização
  • Imunidade a SQL Injection
  • Menor variedade de possibilidades de consultas
  • Padronização (dados, modelos, esquemas, modelos)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

NoSQL – Teorema CAP

A

Teorema de Brewer: é impossível que o armazenamento de dados distribuído forneça simultaneamente mais de duas das três garantias seguintes:
* Consistência:
– Os clientes veem os mesmos dados em um instante de tempo
– Os dados gravados em um nó devem ser distribuídos para outro nó para que a transação seja finalizada
* Disponibilidade (availability):
– Cada pedido recebe uma resposta (sem erro)
* Partição tolerante a falhas:
– O cluster deve continuar a funcionar mesmo de ocorrer uma ou mais falhas de comunicação entre os nós no sistema

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

NoSQL – BASE

A

BASE é a sigla para Basically Available, Soft State with Eventual Consistency
* Valoriza a disponibilidade sobre a consistência
* Basically Available: operações de escrita e leitura estão disponíveis, mas sem consistência automática (a atualização dos nós pode levar algum tempo)
* Soft State: o estado dos dados não é garantido sem consistência
* Eventual Consistency: alterações em um banco de dados não são propagadas de forma imediata.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

NoSQL – Tipos

A
  • Chave-Valor: Redis (o mais famoso), DynamoDB, Riak, Tokyo Cabinet/Tyrant, Voldemort, Memcached, Scalaris, Amazon SimpleDB e Oracle BDB;
  • Documentos: MongoDB (o mais famoso), Elasticsearch, DocumentDB, CouchDB, CouchBase, RavenDB, OrientDB, IBM Cloudant, CrateDB, BaseX e Lotus Notes;
  • Graph: nós ligados por arestas (exemplo: João é amigo de Maria, que é amiga de José);
    – Neo4j (o mais famoso), Neptune, HyperGraphDB, Infinite Graph, JanusGraph, InfoGrid, Titan e FlockDB
  • Colunar: tabelas com colunas independentes entre si
    – Cassandra (o mais famoso), HBASE, Bigtable e Hypertable
How well did you know this?
1
Not at all
2
3
4
5
Perfectly