Amostra do texto
11/01/2013
Recuperação com Transações Concorrentes
Projeto de Banco de Dados
Se T0 precisa ser desfeita, mas T1 trabalhou com o
novo valor gerado por T0, então T1 também
precisaria serdesfeita.
Sistema de Recuperação
Continuação
Para evitar UNDO’s em cascata, uma transação
bloquearia o item de dado até a sua efetivação
(bloqueio em duas fases severo).
PROF. MSC. THIAGOELIAS
CHECKPOINT
Antes, como não havia concorrência, bastava
considerar as seguintes transações para o processo
de recuperação:
Aquelas que iniciaram após o Checkpoint mais recente.
Aquelas queestavam ativas no momento da escrita do
checkpoint.
Processo de Recuperação
Existem duas listas:
Lista de Refazer (redo-list):
Lista de inutilizar (undo-list):
Para a montagem de cada lista,é varrido o arquivo de
log, de trás pra frente, até encontrar o primeiro
.
No caso de considerarmos a concorrência, deve
haver:
Para cada encontrado, adiciona Ti à lista de refazer
Para cadaencontrado, se Ti não estiver na lista refazer,
adiciona-se na lista de inutilizar.
, onde L é a lista de transações ativas.
Depois disso, checa-se o L do . Para cada
transação Ti em L, seTi não estiver na lista refazer,
então será adicionada à lista de inutilizar. POR QUE?!!!
Controle de Concorrência
Projeto de Banco de Dados
Importância da propriedade ISOLAMENTO.Estudaremos os Protocolos Baseados em Bloqueios.
O princípio desses protocolos é que o acesso deve ser feito de forma
multuamente exclusiva.
Controle de Concorrência
Tipos de Bloqueios:
Compartilhado(S): só pode ler.
Exclusivo (X): ler e escreve.
Lock-X(Q)
Lock-S(Q)
Unlock(Q)
PROF. MSC. THIAGO ELIAS
1
11/01/2013
Protocolo Baseado em Bloqueio
Problema!!! Considere as duastransações abaixo:
Protocolo Baseado em Bloqueio
Solução:
Considere que os desbloqueios sejam feitos apenas no final das
transações
Agora considere a escala:
Continua.......
Protocolo...
Recuperação com Transações Concorrentes
Projeto de Banco de Dados
Se T0 precisa ser desfeita, mas T1 trabalhou com o
novo valor gerado por T0, então T1 também
precisaria serdesfeita.
Sistema de Recuperação
Continuação
Para evitar UNDO’s em cascata, uma transação
bloquearia o item de dado até a sua efetivação
(bloqueio em duas fases severo).
PROF. MSC. THIAGOELIAS
CHECKPOINT
Antes, como não havia concorrência, bastava
considerar as seguintes transações para o processo
de recuperação:
Aquelas que iniciaram após o Checkpoint mais recente.
Aquelas queestavam ativas no momento da escrita do
checkpoint.
Processo de Recuperação
Existem duas listas:
Lista de Refazer (redo-list):
Lista de inutilizar (undo-list):
Para a montagem de cada lista,é varrido o arquivo de
log, de trás pra frente, até encontrar o primeiro
.
No caso de considerarmos a concorrência, deve
haver:
Para cada encontrado, adiciona Ti à lista de refazer
Para cadaencontrado, se Ti não estiver na lista refazer,
adiciona-se na lista de inutilizar.
, onde L é a lista de transações ativas.
Depois disso, checa-se o L do . Para cada
transação Ti em L, seTi não estiver na lista refazer,
então será adicionada à lista de inutilizar. POR QUE?!!!
Controle de Concorrência
Projeto de Banco de Dados
Importância da propriedade ISOLAMENTO.Estudaremos os Protocolos Baseados em Bloqueios.
O princípio desses protocolos é que o acesso deve ser feito de forma
multuamente exclusiva.
Controle de Concorrência
Tipos de Bloqueios:
Compartilhado(S): só pode ler.
Exclusivo (X): ler e escreve.
Lock-X(Q)
Lock-S(Q)
Unlock(Q)
PROF. MSC. THIAGO ELIAS
1
11/01/2013
Protocolo Baseado em Bloqueio
Problema!!! Considere as duastransações abaixo:
Protocolo Baseado em Bloqueio
Solução:
Considere que os desbloqueios sejam feitos apenas no final das
transações
Agora considere a escala:
Continua.......
Protocolo...