← Questões de Banco de Dados

Banco de Dados · FGV · 2025

Questão comentada de Banco de Dados

Nos SGBDs, o isolamento das transações garante que as alterações de uma transação T1 não afetem outras transações Tn até que a T1 seja concluída. Considerando que o PostgreSQL 17 define quatro níveis distintos de isolamento de transações e que cada nível possui um grau de rigor próprio. O nível de isolamento mais rigoroso é o

Gabarito: E

Em transações, o isolamento é o que evita que uma operação "espie" a outra no meio do caminho. Pense assim: quanto maior o isolamento, menor a chance de bagunça, mas também maior a chance de o sistema ficar mais rígido e com menos concorrência. No PostgreSQL 17, os níveis seguem uma escala de rigor, indo de read committed até serializable. O ponto central da questão é este: o nível mais rigoroso é o serializable, porque ele faz o comportamento das transações se aproximar ao máximo de uma execução em série, uma de cada vez, como se não existisse concorrência. Isso reduz ao extremo os fenômenos de leitura suja, leitura não repetível e anomalias de leitura fantasma. Já o repeatable read é forte, mas ainda fica abaixo do serializable. Ele garante que, ao reler dados já lidos, você veja os mesmos valores, mas não entrega o mesmo nível máximo de garantia lógica de serialização. Por isso, quando a questão pergunta o nível mais rigoroso, a resposta é a alternativa E. Esse raciocínio é compatível com a classificação clássica dos níveis de isolamento adotada pelos SGBDs e descrita na documentação do PostgreSQL: read committed, repeatable read e serializable, sendo este último o mais estrito. A banca gosta muito de trocar o nome do nível ou misturar termos parecidos para ver se você cai na armadilha.

Continue treinando

Questões relacionadas