Pular para o conteúdo principal

Questão de Banco de Dados — SQL — FUNDATEC 2023

Banco de DadosSQL
Código
qq896694
Banca
FUNDATEC
Órgão
PROCERGS
Ano
2023
Nível
Superior
Cargo
ANC - Analista em Computação - Ênfase em Administração de Dados
Qual das seguintes opções descreve melhor a diferença entre as linguagens de consulta SQL e NoSQL?
  1. ASQL é uma linguagem relacional, enquanto NoSQL é uma linguagem não relacional.
  2. BSQL é uma linguagem mais antiga do que NoSQL.
  3. CSQL é uma linguagem que usa tabelas, enquanto NoSQL é uma linguagem que usa documentos, gráficos ou colunas.
  4. DSQL é uma linguagem que suporta transações ACID, enquanto NoSQL é uma linguagem que não suporta transações.
  5. ESQL é uma linguagem mais lenta do que NoSQL.
Revelar gabarito e comentário

GabaritoC — SQL é uma linguagem que usa tabelas, enquanto NoSQL é uma linguagem que usa documentos, gráficos ou colunas.

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”.

Diferenças entre SQL e NoSQL

Gabarito: letra C. A melhor descrição da diferença entre as linguagens de consulta SQL e NoSQL é que SQL é uma linguagem que utiliza tabelas (modelo relacional), enquanto NoSQL utiliza modelos de dados não relacionais, como documentos, grafos ou colunas. As demais alternativas apresentam afirmações imprecisas, incompletas ou generalizações indevidas.

Critério

SQL (Relacional)

NoSQL (Não Relacional)

Modelo de dados

Tabelas (linhas e colunas)

Documentos, grafos, chave-valor, colunas largas

Esquema

Fixo (schema rígido)

Flexível (schema-less)

Transações ACID

Suporte nativo

Suporte variável (alguns bancos oferecem)

Desempenho

Eficiente em consultas complexas com joins

Eficiente em leitura/gravação simples em grande volume

Alternativa A — ❌ Incorreta

Afirma que "SQL é relacional, NoSQL é não relacional". Embora isso seja verdade em termos amplos, não é a melhor descrição porque é muito genérica. A diferença central está nos modelos de dados: tabelas vs. documentos/grafos/colunas. Além disso, NoSQL não é propriamente uma "linguagem", mas uma categoria de bancos de dados.

Alternativa B — ❌ Incorreta

Dizer que SQL é mais antiga que NoSQL é um fato histórico, mas não descreve a diferença funcional entre elas. A idade não é um critério relevante para distinguir as abordagens.

Alternativa C — ✅ Correta ⟵ GABARITO

Conforme descrito na literatura, os bancos de dados SQL (relacionais) organizam os dados em tabelas com linhas e colunas, enquanto os bancos NoSQL utilizam modelos variados como documentos (ex.: MongoDB), grafos (ex.: Neo4j), chave-valor (ex.: Redis) ou colunas largas (ex.: Cassandra). Essa é a diferença estrutural fundamental.

Alternativa D — ❌ Incorreta

A afirmação de que "SQL suporta transações ACID e NoSQL não suporta" é uma generalização incorreta. Muitos bancos NoSQL (como MarkLogic, OrientDB e Google Spanner) oferecem suporte a transações ACID. O que ocorre é que a maioria dos sistemas NoSQL prioriza disponibilidade e tolerância a partição em detrimento da consistência forte, adotando consistência eventual.

Alternativa E — ❌ Incorreta

A velocidade relativa entre SQL e NoSQL depende do caso de uso e da operação. Em operações de leitura/gravação simples em grandes volumes, NoSQL pode ser mais rápido, mas em consultas complexas com joins, SQL costuma ser mais eficiente. Portanto, não é correto afirmar categoricamente que SQL é mais lento.

Gabarito: letra C.

Link permanente: /questoes/qq896694