Please enable JavaScript.
Coggle requires JavaScript to display documents.
CONTROLE DE CONCORRÊNCIA (Granularidade de Itens de Dados: Os mecanismos…
CONTROLE DE CONCORRÊNCIA
Conceito: Controle de concorrência, é um método de controle de concorrência comumente usado por sistemas de gerenciamento de banco de dados para fornecer acesso simultâneo ao banco de dados, ou em linguagens de programação, para implementar memória transacional
Objetivo:É um método usado para garantir que as transações sejam executadas de uma forma segura e sigam as regras ACID.
-
- Perda da consistência do banco
- Acesso a dados inconsistentes
-
Regras ACID: são propriedades necessárias para o sistema de banco de dados manter e garantir a integridade das transações
A transação cria um novo estado válido dos dados ou em caso de falha retorna todos os dados ao seu estado antes que a transação foi iniciada.
Atocimidade: Em uma transação envolvendo duas ou mais partes de informações discretas, ou a transação será executada totalmente ou não será executada, garantindo assim que as transações sejam atômicas.
Isolamento: Uma transação em andamento mas ainda não validada deve permanecer isolada de qualquer outra operação, ou seja, garantimos que a transação não será interferida por nenhuma outra transação concorrente.
Durabilidade: Dados validados são registados pelo sistema de tal forma que mesmo no caso de uma falha e/ou reinício do sistema, os dados estão disponíveis em seu estado correto.
Consistência: A transação cria um novo estado válido dos dados ou em caso de falha retorna todos os dados ao seu estado antes que a transação foi iniciada.
Granularidade de Itens de Dados: Os mecanismos de controle de concorrência assumem que um banco de dados é formado por uma coleção de itens de dados, sendo que um item de dados pode ser:
-
-
-
-
-
-
Registro Fantasma: O problema de registro fantasma (phanton) ocorre quando um novo registro que esteja sendo inserido pela transação T satisfaz a mesma condição que um conjunto de registros acessados por outra transação T'
As transações conflitam logicamente e um registro fantasma pode aparecer repentinamente no banco de dados.
• Se outras operações nas duas transações conflitarem, o conflito causado pelo registro fantasma pode não ser reconhecido pelo protocolo de controle de concorrência. 60
-
Se a entrada de índice for bloqueada antes que o registro possa ser acessado, então o conflito do registro fantasma pode ser detectado.
• A transação T' solicitaria um bloqueio de leitura na entrada de índice para NumDepto = 5, e T solicitaria um bloqueio de escrita na mesma entrada antes que se coloque o bloqueio propriamente nos registros.
• Assim, uma vez que o bloqueio de índice gera conflito, oconflito do fantasma seria detectado.
-