Junior — Middle
Pode explicar o que se entende por nível de isolamento no contexto de bases de dados?
sobes.tech IA
Resposta da IA
O nível de isolamento em bases de dados determina o quão isoladas as transações estão umas das outras para evitar problemas com acesso paralelo aos dados. Isto é importante para manter a integridade e coerência dos dados.
Principais níveis de isolamento:
- Read Uncommitted — uma transação pode ver alterações não confirmadas de outras transações (leituras sujas possíveis).
- Read Committed — uma transação vê apenas alterações confirmadas, prevenindo leituras sujas.
- Repeatable Read — garante que os dados lidos numa transação não irão mudar até ao seu término (previne leituras não repetíveis).
- Serializable — o nível mais estrito, as transações são executadas como se fossem sequenciais, prevenindo todas as anomalias.
Exemplo: se duas transações tentarem atualizar a mesma conta simultaneamente, o nível de isolamento determinará como elas interagem e que dados cada uma verá.