Questão de Banco de Dados — Documentos (MongoDB e CouchDB) — INSTITUTO AOCP 2024
Banco de Dados›Documentos (MongoDB e CouchDB)
Código
qa630635
Banca
INSTITUTO AOCP
Órgão
MGI
Ano
2024
Cargo
Esp ( )
Em relação ao banco de dados MongoDB, assinale a alternativa correta.
AMongoDB é um banco de dados relacional que utiliza tabelas para armazenar dados.
BPara consultar dados no MongoDB, é necessário usar a linguagem SQL (Structured Query Language).
CMongoDB não suporta operações de agregação, como somas e médias.
DO MongoDB não permite a indexação de campos para melhorar o desempenho das consultas.
ENo MongoDB, os dados são armazenados em documentos JSON-like, que são agrupados em coleções.
Revelar gabarito e comentário▾
GabaritoE — No MongoDB, os dados são armazenados em documentos JSON-like, que são agrupados em coleções.
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”.
MongoDB: banco de dados NoSQL orientado a documentos
Gabarito: letra E. O MongoDB é um banco de dados NoSQL orientado a documentos, no qual os dados são armazenados em documentos BSON (representação binária do JSON), agrupados em coleções — conceito central que a alternativa E reproduz corretamente. As demais alternativas distorcem características fundamentais do MongoDB, associando-o ao modelo relacional, ao SQL ou negando recursos que ele possui.
O MongoDB é um dos principais representantes da categoria de bancos de dados NoSQL orientados a documentos. Diferentemente dos bancos relacionais tradicionais, que organizam os dados em tabelas com linhas e colunas e esquema rígido, o MongoDB armazena cada registro como um documento, uma estrutura de dados composta por pares de campo-valor (ou chave-valor). Esses documentos são serializados em BSON (Binary JSON), uma variação binária do JSON que adiciona tipos de dados e é mais eficiente para armazenamento e consulta.
Os documentos são agrupados em coleções, que são análogas às tabelas dos bancos relacionais, mas com uma diferença crucial: enquanto em uma tabela relacional todos os registros possuem a mesma estrutura de colunas, em uma coleção do MongoDB os documentos podem ter campos diferentes, ou seja, o esquema é flexível (schemaless). Isso permite modelar dados de forma mais natural e adaptável, especialmente para aplicações que lidam com dados semiestruturados ou em constante evolução.
O MongoDB oferece uma API de consulta rica, que inclui operações CRUD (create, read, update, delete), agregação de dados (como somas, médias e agrupamentos), pesquisa de texto e consultas geoespaciais. Além disso, suporta indexação de campos para otimizar o desempenho das consultas, replicação para alta disponibilidade e escalabilidade horizontal por meio de fragmentação (sharding). Essas características o tornam uma escolha popular para aplicações modernas que exigem flexibilidade e performance.
A pegadinha desta questão é clássica: a banca tenta associar o MongoDB ao modelo relacional e ao SQL, quando na verdade ele é um banco NoSQL com modelo de dados próprio. O candidato que não domina os conceitos fundamentais de bancos NoSQL pode ser induzido a marcar alternativas que descrevem características de bancos relacionais, como tabelas e SQL. A alternativa E, por sua vez, descreve com precisão o modelo de dados do MongoDB, sendo a única correta.
Guarde a distinção essencial: MongoDB = NoSQL orientado a documentos, com documentos BSON agrupados em coleções. É exatamente esse critério que separa a alternativa correta das demais.
MongoDB: Modelo de dados (NoSQL orientado a documentos, Documentos BSON (JSON-like), Agrupados em coleções, Esquema flexível (schemaless)); Recursos (API de consulta própria (find, insertOne), Pipeline de agregação ($sum, $avg, $group), Indexação de campos, Replicação e sharding); Não é (Relacional (tabelas), SQL)
Alternativa A — ❌ Incorreta
Afirma que o MongoDB é um banco de dados relacional que utiliza tabelas para armazenar dados. Isso é falso: o MongoDB é um banco NoSQL orientado a documentos, e não relacional. Ele não utiliza tabelas, mas sim coleções de documentos. A confusão entre coleções e tabelas é comum, mas são conceitos distintos: tabelas têm esquema fixo e linhas com a mesma estrutura; coleções agrupam documentos com esquema flexível.
Alternativa B — ❌ Incorreta
Afirma que é necessário usar SQL para consultar dados no MongoDB. Isso é incorreto: o MongoDB possui sua própria API de consulta, baseada em documentos e métodos como find(), insertOne(), updateOne(), entre outros. Não utiliza SQL, que é a linguagem padrão dos bancos relacionais. A banca explora a associação indevida do MongoDB ao SQL, mas ele é um banco NoSQL com linguagem de consulta própria.
Alternativa C — ❌ Incorreta
Afirma que o MongoDB não suporta operações de agregação, como somas e médias. Isso é falso: o MongoDB possui um pipeline de agregação que permite realizar operações como $sum, $avg, $group, $match, entre outras. A agregação é um recurso fundamental do MongoDB, amplamente utilizado para análises de dados. A alternativa nega uma capacidade que o MongoDB possui de fato.
Alternativa D — ❌ Incorreta
Afirma que o MongoDB não permite a indexação de campos para melhorar o desempenho das consultas. Isso é incorreto: o MongoDB suporta indexação de campos, incluindo índices primários e secundários, índices compostos, geoespaciais e de texto. A indexação é essencial para otimizar consultas e é uma característica destacada do MongoDB. A alternativa contraria uma funcionalidade básica do banco.
Alternativa E — ✅ Correta ⟵ GABARITO
Afirma que no MongoDB os dados são armazenados em documentos JSON-like, agrupados em coleções. Isso está correto: os documentos são armazenados em formato BSON, que é a representação binária do JSON, e são agrupados em coleções. Essa é a definição fundamental do modelo de dados do MongoDB, conforme descrito na documentação oficial e em materiais técnicos. A alternativa espelha com precisão o conceito central do banco.