Pular para o conteúdo principal

Questão de Banco de Dados — Grafos (Neo4j) — FGV 2023

Banco de DadosGrafos (Neo4j)
Código
fg161184
Banca
FGV
Órgão
TJ RN
Ano
2023
Cargo
AJ ( )
Observe a estrutura do dataset ilustrado a seguir.   Para armazenar o dataset ilustrado, é necessário utilizar o banco de dados NoSQL:Imagem associada para resolução da questão
  1. Agrafo;
  2. Bcolunar;
  3. Cchave-valor;
  4. Dcriptografado;
  5. Eorientado a documento.
Revelar gabarito e comentário

GabaritoA — grafo;

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: o modelo de grafos

Gabarito: letra A. O dataset ilustrado é composto por entidades (nós) e relações entre elas (arestas), formando um grafo — por isso exige um banco NoSQL orientado a grafos, como o Neo4j. Os demais modelos NoSQL (colunar, chave-valor, orientado a documento) organizam os dados de outras formas, que não capturam naturalmente a estrutura de relacionamentos explícitos apresentada na figura.

Os bancos de dados NoSQL surgiram para lidar com volumes massivos de dados e com estruturas flexíveis, que o modelo relacional tradicional (linhas e colunas) nem sempre atende bem. Eles são comumente classificados em quatro grandes famílias, cada uma com uma forma própria de representar os dados:

  • Chave-valor: armazena pares de chave e valor, como uma grande tabela hash. Ex.: Redis, DynamoDB.

  • Orientado a documentos: armazena documentos semiestruturados (JSON, BSON, XML), onde cada documento pode ter estrutura diferente. Ex.: MongoDB, CouchDB.

  • Orientado a colunas: armazena dados em famílias de colunas, otimizado para leitura de grandes volumes de colunas específicas. Ex.: Cassandra, HBase.

  • Orientado a grafos: armazena nós (entidades), arestas (relacionamentos) e propriedades (atributos), permitindo consultas que exploram as conexões entre os dados. Ex.: Neo4j, Amazon Neptune.

A figura do enunciado mostra claramente um conjunto de elementos conectados por linhas — ou seja, um grafo. Cada elemento é um nó, e cada linha representa um relacionamento. Esse é exatamente o tipo de estrutura que um banco de grafos modela de forma natural, com nós e arestas explícitos. Nos outros modelos, essa rede de relacionamentos teria de ser representada de forma indireta (por exemplo, com chaves estrangeiras no relacional, ou com referências em documentos), perdendo eficiência e clareza.

A pegadinha da questão está em reconhecer que a figura é um grafo e não uma tabela, um documento ou um par chave-valor. O candidato que não conhece as características de cada modelo NoSQL pode se confundir, mas a estrutura visual de nós e arestas é o sinal inequívoco do modelo de grafos.

Guarde a associação: figura com nós e arestas → banco de grafos. É esse critério que separa a alternativa correta das demais.

1Chave-valor
Pares chave-valor
Ex.: Redis, DynamoDB
2Orientado a documentos
Documentos semiestruturados (JSON, XML)
Ex.: MongoDB, CouchDB
3Orientado a colunas
Famílias de colunas
Ex.: Cassandra, HBase
4Orientado a grafos
Nós (entidades) e arestas (relacionamentos)
Ex.: Neo4j, Amazon Neptune
Modelos NoSQL
LEVELsoulevel.com.br
Modelos NoSQL: Chave-valor (Pares chave-valor, Ex.: Redis, DynamoDB); Orientado a documentos (Documentos semiestruturados (JSON, XML), Ex.: MongoDB, CouchDB); Orientado a colunas (Famílias de colunas, Ex.: Cassandra, HBase); Orientado a grafos (Nós (entidades) e arestas (relacionamentos), Ex.: Neo4j, Amazon Neptune)

Alternativa A — ✅ Correta ⟵ GABARITO

A figura mostra um grafo: entidades (nós) conectadas por relacionamentos (arestas). O banco NoSQL orientado a grafos é o único que armazena exatamente essa estrutura, com nós, arestas e propriedades. É o caso do Neo4j, citado no enunciado.

Alternativa B — ❌ Incorreta

O modelo colunar organiza os dados em famílias de colunas, otimizado para consultas analíticas sobre grandes volumes de dados. Não há relação com a estrutura de nós e arestas da figura. Ex.: Cassandra, HBase.

Alternativa C — ❌ Incorreta

O modelo chave-valor armazena pares de chave e valor, como uma tabela hash. Não representa relacionamentos explícitos entre entidades. Ex.: Redis, DynamoDB.

Alternativa D — ❌ Incorreta

"Criptografado" não é um modelo de banco de dados NoSQL. Criptografia é um recurso de segurança que pode ser aplicado a qualquer banco, mas não define a forma de organização dos dados.

Alternativa E — ❌ Incorreta

O modelo orientado a documentos armazena documentos semiestruturados (JSON, XML), onde cada documento é autossuficiente. Não há uma estrutura de nós e arestas como na figura. Ex.: MongoDB, CouchDB.

PEGA ESSA DICA!

Para identificar o modelo NoSQL adequado, observe a estrutura dos dados: se há entidades conectadas por relacionamentos explícitos, é grafo; se há pares chave-valor, é chave-valor; se há documentos semiestruturados, é orientado a documentos; se há famílias de colunas, é colunar. Essa associação direta resolve a maioria das questões.

Gabarito: letra A

Link permanente: /questoes/fg161184