Escolha de Banco de Dados: Relacional × NoSQL
Gabarito: letra E. O Cenário I exige atributos fixos e consistência transacional — características do modelo relacional (MySQL); o Cenário II exige estrutura variável e alta velocidade de inserção — características do modelo NoSQL orientado a documentos (MongoDB). A alternativa E é a única que combina corretamente os dois modelos.
A questão testa a capacidade de associar cada cenário ao modelo de banco de dados mais adequado, contrastando o modelo relacional (SQL) com o NoSQL. O modelo relacional é a escolha clássica para dados estruturados, com esquema fixo (tabelas, colunas, tipos definidos) e suporte robusto a transações ACID (Atomicidade, Consistência, Isolamento, Durabilidade). Já o NoSQL orientado a documentos, como o MongoDB, é ideal para dados semiestruturados ou não estruturados, com esquema flexível (documentos JSON/BSON podem ter campos diferentes) e alta performance de escrita, sendo amplamente usado para logs, sessões e conteúdo gerado pelo usuário.
No Cenário I, a empresa precisa armazenar produtos com atributos fixos (código, nome, preço, categoria) e garantir consistência transacional nas vendas. Isso aponta diretamente para um banco relacional, como MySQL ou PostgreSQL, que oferece integridade referencial, transações ACID e linguagem SQL. O Cenário II, por sua vez, envolve logs de navegação, comentários e dados de sessão — dados com estrutura variável e alta velocidade de inserção. O MongoDB, com seu modelo de documentos flexíveis e alta capacidade de escrita, é a escolha natural.
A pegadinha da questão está em associar o Cenário I a um banco NoSQL (como MongoDB) por pensar que "e-commerce" sempre usa NoSQL, ou associar o Cenário II a um banco relacional (como PostgreSQL) por pensar que logs precisam de SQL. A banca explora exatamente essa confusão entre os modelos. A alternativa E é a única que acerta as duas associações.
Critério | Cenário I (produtos/vendas) | Cenário II (logs/sessões) |
|---|
Modelo de dados | Relacional (SQL) | NoSQL orientado a documentos |
Banco adequado | MySQL | MongoDB |
Estrutura | Atributos fixos (esquema rígido) | Variável (documentos flexíveis) |
Consistência | Transacional (ACID) | Alta velocidade de inserção |
Alternativa A — ❌ Incorreta
Inverte os modelos: coloca MongoDB (NoSQL) no Cenário I, que exige consistência transacional e atributos fixos — características do modelo relacional. O MongoDB não é recomendado para transações complexas que envolvam múltiplas operações, como vendas. E coloca PostgreSQL (relacional) no Cenário II, que exige estrutura variável e alta velocidade de inserção — características do NoSQL. O PostgreSQL, embora possa lidar com JSON, não é a escolha ideal para logs com estrutura variável em alta escala.
Alternativa B — ❌ Incorreta
Cassandra é um banco NoSQL orientado a colunas, não adequado para o Cenário I (que pede consistência transacional e atributos fixos — o modelo relacional é mais apropriado). Oracle é relacional, mas não é a melhor escolha para o Cenário II, que pede estrutura variável e alta velocidade de inserção — o modelo de documentos (MongoDB) é mais adequado.
Alternativa C — ❌ Incorreta
Redis é um banco chave-valor, não adequado para o Cenário I (que pede consistência transacional e atributos fixos — o modelo relacional é mais apropriado). Cassandra é orientado a colunas, mas não é a melhor escolha para o Cenário II, que pede estrutura variável — o modelo de documentos (MongoDB) é mais adequado.
Alternativa D — ❌ Incorreta
Neo4j é um banco de grafos, não adequado para o Cenário I (que pede consistência transacional e atributos fixos — o modelo relacional é mais apropriado). Redis é chave-valor, mas não é a melhor escolha para o Cenário II, que pede estrutura variável — o modelo de documentos (MongoDB) é mais adequado.
Alternativa E — ✅ Correta ⟵ GABARITO
MySQL é um banco relacional, ideal para o Cenário I: atributos fixos (código, nome, preço, categoria) e consistência transacional (ACID). MongoDB é um banco NoSQL orientado a documentos, ideal para o Cenário II: estrutura variável (documentos flexíveis) e alta velocidade de inserção (logs, comentários, sessões). A combinação atende perfeitamente aos dois cenários.
Gabarito: letra E