Pular para o conteúdo principal

Questão de Banco de Dados — Banco de Dados — Quadrix 2025

Banco de DadosBanco de Dados
Código
qg595981
Banca
Quadrix
Órgão
CRA-SP
Ano
2025
Nível
Superior
Cargo
Analista II - Desenvolvimento de Sistemas
Uma equipe estava desenvolvendo uma aplicação de rede social e precisou de um banco de dados NoSQL capaz de armazenar dados em um formato flexível, semelhante a JSON, permitindo que o perfil do usuário, seus posts e comentários (aninhados) sejam armazenados juntos em uma única estrutura.Com base nessa situação hipotética, assinale a opção que apresenta o banco de dados orientado a documentos que armazena dados em formato Binary JSON (BSON) e atende a esse requisito.
  1. ARedis
  2. BMongoDB
  3. COracle
  4. DNeo4j
  5. ECassandra
Revelar gabarito e comentário

GabaritoB — MongoDB

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

Banco de dados NoSQL orientado a documentos: MongoDB e o formato BSON

Gabarito: letra B. O MongoDB é o banco de dados NoSQL orientado a documentos que armazena dados em formato Binary JSON (BSON), uma representação binária do JSON, atendendo exatamente ao requisito de armazenar perfis, posts e comentários aninhados em uma única estrutura de documento. As demais opções representam outros modelos de banco de dados: Redis (chave-valor), Oracle (relacional), Neo4j (grafos) e Cassandra (orientado a colunas).

O problema descreve uma necessidade clássica de aplicações modernas: armazenar dados semiestruturados, com formato flexível e hierarquias aninhadas, como um perfil de usuário contendo seus posts e comentários. Em bancos de dados relacionais tradicionais, essa estrutura exigiria múltiplas tabelas (usuário, post, comentário) e operações de junção (JOIN) para recuperar os dados completos. Os bancos NoSQL orientados a documentos resolvem isso armazenando toda a informação relacionada em um único documento, que pode ser um JSON, XML ou BSON.

O MongoDB é o principal representante dessa categoria. Ele armazena registros como documentos BSON, que é a codificação binária do JSON. O BSON estende o JSON com tipos de dados adicionais (como Date e BinData) e é otimizado para eficiência de armazenamento e velocidade de varredura. Os documentos são organizados em coleções, que são análogas às tabelas dos bancos relacionais, mas sem exigir um esquema rígido — cada documento pode ter campos diferentes. Essa flexibilidade é o que permite armazenar o perfil do usuário, seus posts e comentários aninhados em uma única estrutura, como um objeto JSON com arrays e subdocumentos.

A distinção fundamental entre os modelos NoSQL é o formato de armazenamento e o caso de uso típico. O modelo chave-valor (Redis, DynamoDB) armazena pares simples de chave e valor, sem estruturação interna. O modelo orientado a colunas (Cassandra, HBase) organiza dados em famílias de colunas, otimizado para consultas analíticas em grandes volumes. O modelo orientado a grafos (Neo4j) representa entidades como nós e relacionamentos como arestas, ideal para dados altamente conectados. O modelo orientado a documentos (MongoDB, CouchDB) é o que melhor atende ao requisito de dados semiestruturados e aninhados, pois o documento é uma unidade autônoma que pode conter toda a hierarquia de informações.

A pegadinha desta questão está em associar corretamente cada banco ao seu modelo de dados. O candidato que conhece apenas o nome dos bancos, mas não o modelo que cada um implementa, pode facilmente confundir. O MongoDB é o único entre as opções que é explicitamente orientado a documentos e utiliza BSON. O CouchDB, que também é orientado a documentos, não aparece nas alternativas, mas usa JSON puro em vez de BSON. Essa distinção é crucial: a questão pede especificamente o banco que armazena em formato BSON, e o MongoDB é a resposta canônica.

Guarde a correspondência entre banco e modelo de dados: é exatamente nela que as alternativas se dividem. Cada opção representa um modelo NoSQL ou relacional diferente, e a chave é identificar qual deles é orientado a documentos com suporte a BSON.

Critério

MongoDB (B)

Redis (A)

Oracle (C)

Neo4j (D)

Cassandra (E)

Modelo de dados

Orientado a documentos

Chave-valor

Relacional (SQL)

Grafos

Orientado a colunas

Formato de armazenamento

BSON (Binary JSON)

Pares chave-valor em memória

Tabelas com linhas/colunas

Nós e arestas

Famílias de colunas

Suporte a dados aninhados (posts/comentários)

Sim, via subdocumentos e arrays

Não

Não (exige JOINs)

Parcial (via relacionamentos)

Não

Esquema flexível (semelhante a JSON)

Sim

Não

Não (esquema rígido)

Não

Não

Adequação ao requisito do enunciado

✅ Atende plenamente

❌ Inadequado

❌ Inadequado

❌ Inadequado

❌ Inadequado

Alternativa A — ❌ Incorreta

O Redis é um banco de dados NoSQL do tipo chave-valor, não orientado a documentos. Ele armazena dados em memória como pares de chave e valor, otimizado para cache e filas de mensagens. Não possui suporte nativo a documentos aninhados no formato BSON, sendo inadequado para o requisito de armazenar perfis, posts e comentários em uma única estrutura hierárquica.

Alternativa B — ✅ Correta ⟵ GABARITO

O MongoDB é um banco de dados NoSQL orientado a documentos. Ele armazena registros como documentos BSON, que é a representação binária do JSON. Os documentos podem conter subdocumentos e arrays, permitindo armazenar o perfil do usuário, seus posts e comentários aninhados em uma única estrutura. Essa é exatamente a característica que atende ao requisito da aplicação de rede social descrita no enunciado.

Alternativa C — ❌ Incorreta

O Oracle é um banco de dados relacional (SQL), não NoSQL. Ele organiza dados em tabelas com linhas e colunas, exigindo um esquema predefinido e normalização. Para armazenar dados aninhados como posts e comentários, seria necessário criar múltiplas tabelas e usar junções, o que contraria o requisito de flexibilidade e estrutura única do enunciado.

Alternativa D — ❌ Incorreta

O Neo4j é um banco de dados NoSQL orientado a grafos. Ele representa dados como nós (entidades) e arestas (relacionamentos), otimizado para consultas de navegação em dados altamente conectados, como redes sociais. Embora possa modelar usuários e posts, não armazena documentos no formato BSON e não é a escolha natural para dados semiestruturados aninhados em uma única estrutura.

Alternativa E — ❌ Incorreta

O Cassandra é um banco de dados NoSQL orientado a colunas. Ele organiza dados em famílias de colunas, otimizado para escrita e leitura em larga escala com alta disponibilidade. Não suporta documentos aninhados no formato BSON, sendo inadequado para o requisito de armazenar perfis, posts e comentários em uma única estrutura hierárquica.

A regra de ouro para esta questão é memorizar a classificação dos bancos NoSQL por modelo de dados: MongoDB (documentos/BSON), Redis (chave-valor), Neo4j (grafos), Cassandra (colunas). Quando a questão mencionar formato flexível semelhante a JSON e dados aninhados, a resposta quase sempre será o MongoDB.

Gabarito: letra B

Link permanente: /questoes/qg595981