Explorando Bancos de Dados com Ferramentas Gratuitas: MongoDB, Neo4j, Cassandra e Redis
No estudo e prática de bancos de dados, é possível experimentar diferentes tipos de soluções usando apenas ferramentas gratuitas online. Neste artigo, vamos detalhar como criar, consultar e manipular dados em MongoDB, Neo4j, Cassandra e Redis, sem instalar nada na máquina.
1. MongoDB: Banco de Documentos
O MongoDB é um banco NoSQL orientado a documentos. Para utilizá-lo sem instalar localmente, podemos usar o MongoDB Atlas, que oferece plano gratuito.
Exemplo de inserção de documentos:
{
"name": "Lula Molusco",
"age": 30,
"hobbies": ["Tocar Clarinete"]
}
Operações básicas:
- Inserir um documento:
db.clients.insertOne({name: "Patrick", hobbies: ["Caçar Água Viva"]})
- Consultar documentos:
db.clients.find({age: {$gt: 20}})
2. Neo4j: Banco de Grafos
O Neo4j é orientado a grafos, ideal para modelar relacionamentos, como “Lula Molusco bloqueou Patrick”.
Exemplo de criação de nós e relacionamento:
CREATE (:Client {name: "Lula Molusco", age: 30, hobbies: ['Tocar Clarinete']})
-[:BLOQUEADO]->
(:Client {name: "Patrick", hobbies: ['Caçar Água Viva']})
Excluindo um nó e seus relacionamentos:
MATCH (c:Client {name: "Patrick"})
DETACH DELETE c
3. Cassandra: Banco de Colunas Distribuído
O Cassandra é NoSQL orientado a colunas, eficiente para grandes volumes de dados. Podemos usar o DataStax Astra DB gratuito para experimentação.
Criando keyspace e tabela:
CREATE KEYSPACE IF NOT EXISTS rede_social
WITH replication = {'class': 'SimpleStrategy', 'replication_factor': 1};
CREATE TABLE clients (
name TEXT PRIMARY KEY,
age INT,
hobbies LIST<TEXT>,
casa TEXT
);
Inserindo dados com JSON:
INSERT INTO clients JSON '{
"name": "Bob Esponja",
"age": 25,
"hobbies": ["Cozinhar Hambúrguer", "Nadinha"],
"casa": "Fenda do Biquíni"
}';
Consultando dados:
SELECT * FROM clients WHERE age > 20 ALLOW FILTERING;
4. Redis: Banco Key-Value em Memória
O Redis é um banco de dados key-value, rápido e ideal para armazenamento temporário e caches. Podemos usar o OneCompiler para criar playgrounds Redis online:
Exemplo de inserção:
SET user1:name "Bob Esponja"
SET user1:age 25
SET user1:casa "Fenda do Biquíni"
Consultando valores:
GET user1:name
MGET user1:name user1:age user1:casa
KEYS user1:*
Usando listas para hobbies:
LPUSH user1:hobbies "Cozinhar" "Nadinha" "Colecionar Conchas"
LRANGE user1:hobbies 0 -1
5. Organização dos Personagens
Durante o estudo, adicionamos personagens do universo “Bob Esponja”, incluindo:
- Lula Molusco
- Patrick
- Bob Esponja
- Sandy Bochechas
- Plankton
- Gary
- Sr. Siriguejo
- Karen
- Perna Longa
Cada personagem tem atributos como idade, hobbies e casa, que foram modelados de acordo com as características de cada banco:
Conclusão
Com ferramentas gratuitas online, é possível:
- Explorar documentos com MongoDB Atlas
- Modelar relacionamentos com Neo4j Sandbox
- Trabalhar com grandes volumes de dados distribuídos usando Cassandra Astra DB
- Testar key-value e listas com Redis via OneCompiler
Esse estudo permite comparar diferentes abordagens NoSQL e entender qual modelo é mais adequado para cada tipo de informação, tudo sem instalar nada na máquina.