O que é NoSQL

79d atrás

0 0

NoSQL é o termo que se refere a bancos de dados não relacionais. Banco de dados relacional é aquele que segue a estrutura lógica de tabelas (linhas e colunas), tendo rigidez na estrutura de tabelas e relações entre elas.

Já o banco de dados não relacional oferece maior flexibilidade quanto a sua estrutura. Geralmente, os dados podem ser armazenados em documentos, pares chave-valor, grafos, colunas largas, entre outros tipos, dependendo do sistema.

Os banco de dados NoSQL são ideais para armazenamento de grande volume de dados, escalabilidade e tratamento de dados não estruturados ou semi-estruturados.

Exemplos

Cada banco de dados NoSQL tem uma abordagem específica, possibilitando ao desenvolvedor escolhe o que melhor se encaixa nos requisitos do projeto. A seguir você pode conferir alguns dos bancos de dados NoSQL mais famosos.

MongoDB

Um banco de dados orientado a documentos, armazena dados no formato BSON, uma variação do JSON, sendo otimizado para armazenar dados nesse formato. Um exemplo de documento é:

{
    "_id": "507f191e810c19729de860ea",
    "nome": "João Silva",
    "idade": 30,
    "endereço": {
        "rua": "Rua das Flores",
        "cidade": "São Paulo",
        "CEP": "01234-567"
    },
    "hobbies": ["futebol", "cinema", "leitura"]
}

MongoDB: A Plataforma De Aplicação De Dados

Leve suas ideias para o mercado mais rapidamente usando uma plataforma de aplicação de dados que aproveita o banco de dados mais moderno. A MongoDB faz ser fácil trabalhar com dados.

Redis

Armazena dados no esquema chave-valor:

SET mykey "myvalue"
Você pode armazenar um JSON, por exemplo, para dados complexos.

Redis

Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache, and message broker

Neo4j

Um banco de dados que armazena grafos, ótimo para salvar relacionamentos entre nós, como em uma rede social.

CREATE
(Joao: Pessoa {nome: "João Silva", idade: 30}),
(Maria: Pessoa {nome: "Maria Fernandes", idade: 28}),
(Joao)-[:AMIGO_DE]->(Maria),
(Maria)-[:AMIGO_DE]->(Joao)
Nesse caso, Joao e Maria são nós, e AMIGO_DE é o relacionamento.

Neo4j Graph Database & Analytics – The Leader in Graph Databases

Connect data as it's stored with Neo4j. Perform powerful, complex queries at scale and speed with our graph data platform.

Cassandra

Armazena dados em colunas largas. Você pode confundi-lo com um banco de dados relacional, mas diferente deles, o Cassandra pode ter linhas com colunas diferentes. Por exemplo:

CREATE TABLE Usuarios (
    id UUID PRIMARY KEY,
    nome text,
    email text,
    idade int
);

INSERT INTO Usuarios (id, nome, email, idade) VALUES (uuid(), 'João Silva', 'joao.silva@example.com', 30);

INSERT INTO Usuarios (id, nome, email, idade) VALUES (uuid(), 'Maria Fernandes', 'maria.fernandes@example.com', 28);

UPDATE Usuarios SET hobbies = '["futebol", "cinema", "leitura"]' WHERE id = id_do_joao_silva;

Apache Cassandra | Apache Cassandra Documentation

Open Source NoSQL Database Manage massive amounts of data, fast, without losing sleep

O Cassandra usa a linguagem CQL, pode ter suas semelhanças SQL, mas apresenta grandes diferenças na flexibilidade. No exemplo acima, nós criamos 2 usuários com a mesmas colunas, mas depois adicionamos uma coluna nova, que só estará presente em um deles.


Comentários (0)

0/512
Link