Questão nº 59
Questão de Tecnologia da Informação · FGV CVM 2024 (nº 59)
A aplicação JUNTAWeb usa um banco de dados NoSQL para armazenar as relações entre documentos de interesse, tais como: legislações federais e estaduais, normas de comitês internacionais, normas internas e procedimentos de nível operacional, juntamente com seus conjuntos de metadados. O JUNTAWeb possibilita que seus usuários tenham ampla rastreabilidade do ciclo de vida e das relações entre os documentos de interesse.
Considerando a necessidade de rastreabilidade entre os documentos de interesse, a estrutura do banco de dados NoSQL, aderente à demanda, deve estar baseada em:
- Aconjuntos de links organizados em esquemas semânticos de modo estruturado
- Bcélulas agrupadas em colunas organizadas por tipo de documento
- Cassociações de dados das coleções a registros identificados com chaves exclusivas
- Dmatrizes associativas utilizadas como um banco de dados semiestruturado na qual uma chave individual é vinculada a um valor em uma coleção
- Emodelos que não tenham esquema mas que possibilitem que as associações sejam armazenadas direta e explicitamente na base de dados (alternativa correta)
Resposta comentada
Gabarito Alternativa E
NoSQL é um tipo de banco de dados que não usa tabelas e esquemas fixos como os bancos de dados tradicionais, sendo flexível para armazenar dados de formas variadas e ideal para grandes volumes e estruturas que mudam frequentemente. Para rastrear relações complexas entre documentos, ele precisa de um modelo que trate essas conexões de forma direta.
- A) Incorreta: Embora bancos de dados de grafos (que usam links e podem ter esquemas semânticos) sejam excelentes para relações, a expressão "de modo estruturado" pode ser ambígua e sugerir uma rigidez de esquema que não é a principal característica dos modelos NoSQL flexíveis. A alternativa E é mais precisa ao focar na ausência de esquema e na explicitação das associações.
- B) Incorreta: Isso descreve um banco de dados de família de colunas (como Cassandra), que é otimizado para acesso rápido a colunas específicas. Não é o modelo mais adequado para representar e rastrear relações complexas e arbitrárias entre diferentes tipos de documentos de forma nativa e eficiente.
- C) Incorreta: Isso descreve como bancos de dados de documentos (como MongoDB) ou chave-valor geralmente lidam com relações, usando referências (IDs). No entanto, as associações em si não são armazenadas como entidades de primeira classe, e a rastreabilidade depende de consultas e "joins" lógicos, não de uma representação direta e explícita da relação como um objeto ou aresta própria.
- D) Incorreta: "Matrizes associativas" (ou mapas/dicionários) são a base de muitos bancos de dados NoSQL (chave-valor, documentos), onde uma chave aponta para um valor (o documento semiestruturado). Embora seja uma característica NoSQL, não foca na armazenagem explícita das associações para rastreabilidade, mas sim na forma como os dados individuais são armazenados.
- (E) Correta: Esta alternativa descreve perfeitamente a abordagem de bancos de dados de grafos, que são um tipo de NoSQL, ou a forma como outros NoSQL podem ser adaptados. A flexibilidade ("não tenham esquema") é uma característica central do NoSQL. A capacidade de armazenar as associações (relações) diretamente e explicitamente é fundamental para a rastreabilidade exigida. Em um grafo, as relações são "arestas" que conectam "nós" (os documentos), e essas arestas são entidades com propriedades próprias, permitindo uma rastreabilidade poderosa e nativa, ideal para o cenário do JUNTAWeb.
Fonte: FGV CVM 2024 Analista CVM - TI Infraestrutura e Segurança (Perfil 9) (Caderno Tipo 1). Reproduzida para fins de estudo.