Lar Desenvolvimento O que é isolamento? - o que é techopedia

O que é isolamento? - o que é techopedia

Índice:

Anonim

Definição - O que significa Isolamento?

O isolamento, no contexto de bancos de dados, especifica quando e como as alterações implementadas em uma operação se tornam visíveis para outras operações paralelas. O isolamento da transação é uma parte importante de qualquer sistema transacional. Ele lida com a consistência e a integridade dos dados recuperados por consultas que não afetam os dados do usuário por outras ações do usuário. Um banco de dados adquire bloqueios nos dados para manter um alto nível de isolamento.

Techopedia explica isolamento

Vários níveis de isolamento são definidos para controlar o grau de bloqueio de dados. Um alto nível de isolamento pode resultar em bloqueio de sobrecarga para o sistema, criando conflitos. Os quatro principais níveis de isolamento são: Leitura não confirmada: esse nível lida com leituras sujas, em que os dados lidos não são consistentes com outras partes da tabela ou consulta e não são confirmados. Aqui, os dados são lidos diretamente dos blocos de tabelas, sem qualquer verificação, validação e processamento. Portanto, os dados estão o mais sujos possível. Leitura confirmada: nesse caso, as linhas que uma consulta retorna são linhas já confirmadas quando a consulta foi iniciada. Como a confirmação é concluída antes do início da consulta, o resultado não é exibido na saída da consulta. Leitura repetida: as linhas retornadas por uma consulta nesse caso são confirmadas quando a transação foi iniciada. As alterações feitas não estão presentes na transação e, portanto, não aparecem no resultado da consulta. Serializável: nesse nível, as transações ocorrem de maneira completamente isolada, serialmente uma após a outra. Bancos de dados como Oracle e Postgre SQL às vezes não garantem a ordem serial de transações, mas suportam o isolamento de instantâneo, onde todas as leituras em uma transação são instantâneos consistentes do banco de dados e a transação é confirmada apenas se nenhuma atualização produzir conflitos com outras atualizações simultâneas feitas desde o instantâneo. Anomalias permitidas pelos isolamentos de captura instantânea podem levar à violação da consistência dos dados ao intercalar transações que mantêm a consistência. Essas anomalias podem ser eliminadas através da introdução de conflitos de atualização ou bloqueio artificial. Todos os bancos de dados permitem que os usuários definam seus níveis de isolamento padrão. Os níveis de isolamento perfeitos escolhidos impedem que os aplicativos introduzam erros como leituras sujas, leituras repetíveis e leituras fantasmas. Quando a primeira transação lê alterações não confirmadas feitas pela segunda transação, gera leituras sujas. Quando uma leitura de dados permanece a mesma se lida novamente durante a mesma transação, é uma leitura repetível. As leituras fantasmas ocorrem quando novos registros adicionados são apontados pelas transações antes da inserção. Os diferentes níveis de isolamento de bloqueios de banco de dados são: Bloqueios de leitura: bloqueios de leitura evitam a alteração de leitura de dados durante uma transação até que a transação termine, eliminando casos de leituras repetíveis. Outras transações podem ler esses dados, mas nenhum acesso de gravação ou alteração é fornecido. Bloqueios de gravação: os bloqueios de gravação impedem que outras transações alterem os dados até o final da transação. Bloqueios de gravação exclusivos: o bloqueio de gravação exclusivo impede que outras transações leiam ou alterem dados até o término da transação atual. Instantâneos: um instantâneo é uma visualização congelada dos dados quando a transação é iniciada. Impede leituras sujas, leituras não repetíveis e leituras fantasmas. Esta definição foi escrita no contexto de bancos de dados
O que é isolamento? - o que é techopedia