O que é isolamento de instantâneos?

Isolamento instantâneo é uma propriedade no processamento de transações e nos bancos de dados que garantem todas as leituras feitas em uma transação, consulte o mesmo banco de dados "Snapshot". Isso significa que a transação se comprometerá a processar com sucesso a solicitação se suas atualizações não entrarem em conflito com outras atualizações simultâneas. O isolamento de instantâneos é um algoritmo de controle para simultaneidade de várias versões que fornece níveis de isolamento que evitam os problemas que geralmente ocorrem com simultaneidade. Esse isolamento foi implementado por vários servidores diferentes de linguagem de consulta estruturada (SQL), operando com quantidades mínimas de anomalias de serialização. Os isolamentos de instantâneos, no entanto, não garantirão a serialização completa em um servidor.

Muitos sistemas importantes de gerenciamento de dados contenham níveis de isolamento padrão que não são serializáveis ​​e geralmente encontram anomalias de serialização sem isolamento de instantâneos. Isso pode fazer com que grandes sistemas tenham inúmeras ocorrências de erros de isolamento todos os dias, whiO CH pode levar os dados a serem corrompidos, especialmente o que é encontrado em aplicações de dados de armazém. A razão pela qual um sistema pode operar nesse estado é porque os aplicativos executados em níveis mais baixos de isolamento podem melhorar a eficiência se não ocorrerem erros graves. A inclusão do isolamento de instantâneos em um sistema reduz essas anomalias e - ao levar o tempo de operação e a quantidade de erros que ocorrem em consideração - aumenta ainda mais a eficiência.

Alguns bancos de dados oferecem isolamento de instantâneos em oposição à serialização total, mas também existem anomalias que podem ocorrer em um banco de dados utilizando esse tipo de isolamento. Essas anomalias podem levar a violações de consistência dos dados porque as transações que mantêm interlame da consistência ou são organizadas em camadas alternadas. A única maneira de resolver o problema e evitar anomalias como essas é manipular aplicativos com uma introduçãode bloqueios artificiais e atualizações conflitantes, que foram seguidas pela análise dos conflitos entre todos os pares de transações. Uma maneira diferente de resolver essas anomalias, no entanto, é modificar os algoritmos do controle de simultaneidade de um sistema de banco de dados para fazer detecções e prevenções automáticas de anomalias de isolamento de instantâneos em tempo de execução. Isso pode ser feito para aplicações importantes ou arbitrárias, mas fornece isolamento serializável.

Os servidores SQL mais recentes conseguiram introduzir novos níveis de isolamento, bem como novos níveis de isolamento de instantâneos para o aprimoramento da simultaneidade em determinados aplicativos. Onde as versões iniciais do SQL Server usavam o bloqueio como base para a simultaneidade, o isolamento do instantâneo depende de aprimoramentos do versão em linha destinados à melhoria do desempenho. Melhora esse desempenho quando encontra cenários com o bloqueio de leitura ou gravação evitando -os.

OUTRAS LÍNGUAS

Este artigo foi útil? Obrigado pelo feedback Obrigado pelo feedback

Como podemos ajudar? Como podemos ajudar?