Comando
Um tribunal de contas implementou um data lake para auditoria contínua de contratos administrativos, utilizando ingestão incremental via CDC (change data capture). Os dados são armazenados na tabela contratos_cdc, que contém múltiplas versões de registros ao longo do tempo. A tabela contratos_cdc tem as colunas a seguir.
• id_contrato (identificador do contrato);
• valor (valor do contrato);
• status (situação do contrato);
• data_atualizacao (timestamp da alteração). Um auditor do referido tribunal deseja realizar a seguinte consulta SQL.
1 SELECT id_contrato, valor, status
2 FROM (
3 SELECT *,
4 ROW_NUMBER() OVER (
5 PARTITION BY id_contrato
6 ORDER BY data_atualizacao DESC
7 ) AS rn
8 FROM contratos_cdc
9 ) t
10 WHERE rn = 1
A partir das informações apresentadas e do trecho de código SQL precedente, julgue os itens a seguir.
No contexto de uma arquitetura de inteligência da informação para auditoria de dados, a consulta SQL apresentada utiliza a função de janela ROW_NUMBER() para segmentar os registros por contrato e ordená-los cronologicamente de forma decrescente; essa abordagem é eficaz para identificar a versão mais recente de cada contrato em uma tabela de CDC, sob a condição de que a coluna data_atualizacao tenha granularidade suficiente para garantir uma ordenação unívoca, evitando que registros distintos de um mesmo contrato apresentem o exato mesmo marcador temporal.