2 Controle De Concorrencia

Páginas: 6 (1333 palavras) Publicado: 5 de junho de 2015
Proteção do Banco de
Dados
II - Controle de
Concorrência
FAESA - Unidade de Computação e
Sistemas
Profa. Eliana Caus Sampaio

1

Controle de Concorrência


Sumário
Conceitos
 Problemas causados pela falta de CC
 Bloqueio
 Revisão dos problemas com o bloqueio
 Impasse
 Interrupção do impasse
 Como evitar o impasse


2

Controle de Concorrência


Conceitos Básicos


As técnicas decontrole de concorrência são usadas
para garantir o Isolamento das Transações.



Tais técnicas asseguram a serialização na execução
das transações.



Tal segurança é garantida por protocolos, tais como
Bloqueio dos dados ou registros de Timestamp



Bloqueio dos dados são os protocolos mais
comumente utilizados nos SGBDs comerciais

3

Controle de Concorrência


Problemas causados pela falta deCC
1 – Problema da Atualização Perdida
Transação A Tempo Transação B
_
_
Retrieve T
_
_
_
Update T
_

_
_
t1 _
t2 Retrieve T
_
t3 _
t4 Update T

A transação A perde a atualização no
instante T4
4

Controle de Concorrência


Problemas causados pela falta de CC
2 – Problema da Depend. Commit
Transação A Tempo Transação B

Transação ATempo Transação B
_
_

_
Retrieve T

_
_
t1 Update T
_
t2 _

_Update T

_
_
t1 Update T
_
t2 _

_
_
_

t3 Rollback T
_
t4

_
_
_

t3 Rollback T
_
t4

_
_

A transação A le um Dado que ainda A transação A sobrescreve a
não está efetivado
Atualização de B e perde ao
final
5

Controle de Concorrência



Problemas causados pela falta de CC
1 – Problema da Análise Inconsistente

Conta1 – Saldo 40
Conta2 – Saldo 50
Conta3 – Saldo 30
_______________
Total

120Transação A  somar os Saldos
das
Contas.
Transação B  transferir 10 da
Conta3 para a Conta1.

Transação A
_
t1
Retrieve Conta1
total = 40
t2
Retrieve Conta2
total = 90
t3
_
_
t4
_
_
t5
_
_
t6
_
Retrieve Conta3
t6
total = 110

Transação B
_
_
_
_
Retrieve Conta3
Update Conta3
saldo = 20
Retrieve Conta1
Update Conta1
saldo = 50
commit
_

A transação A executa uma analise
6
inconsistente

Controle deConcorrência


Bloqueio


Oferece a garantia de que os objetos (tuplas) sobre
os quais uma determinada transação está agindo
não será manuseado por nenhuma outra transação.



Tal garantia impede que durante o processo de
atualização de um tupla (ainda em andamento), a
mesma seja visualizada ou até mesmo modificada
por outra transação.



Os bloqueios que um objeto pode sofrer são:Compartilhado (C) e Exclusivo (X)

7

Controle de Concorrência


Bloqueio


Bloqueio Compartilhado  também conhecido como
bloqueio de leitura. Se uma transação tiver um
bloqueio do tipo C sobre uma tupla então:
 Se outra transação solicitar um bloqueio X, será
negado.
 Se outra transação solicitar um bloqueio C, será
concedido.



Bloqueio Exclusivo  também conhecido como
bloqueio de gravação. Seuma transação tiver um
bloqueio do tipo X sobre uma tupla:
 Se outra transação solicitar um bloqueio X ou C
sobre a mesma tupla, será negado.
8

Controle de Concorrência


Bloqueio


Matriz de compatibilidade de bloqueio
Requisições de bloqueio
Transação A

Requisições de bloqueio
Transação B

X

C

-

X

N

N

S

C

N

S

S

-

S

S

S

9

Controle de Concorrência


Revisão dos problemas combloqueio
1 – Problema da Atualização Perdida
Transação A Tempo Transação B
_
Retrieve T
(aC)
_
_
_
Update T
(sX)
espera
_
_

t1

_
_

Retrieve
t2 T(aC)
_
t3 _
t4
Update T (sX)
espera

Nenhuma atualização é perdida mas ocorre o impasse

10

Controle de Concorrência
Revisão dos problemas com bloqueio



2 – Problema da Depend. Commit
Transação ATempo Transação B
_
_
Update T (aX)
_
_

Transação ATempoTransação B
_
_

_
_
t1
t1 Update T
_
(aX)
_
Update T (sX) t2 _
Retrieve T(sC) t2
espera
_
espera
t3
t3
Rollback T(lX) espera
espera
_
Prossegue
Rollback
Prossegue
t4
t4 T(lX)
(aX)
(aC)
_
_
_
A transação A lê o Dado efetivado A transação A consegue atualizar
um dado já efetivado
_
_

11

Controle de Concorrência


Revisão dos problemas com bloqueio

1 – Problema da Análise Inconsistente...
Ler documento completo

Por favor, assinar para o acesso.

Estes textos também podem ser interessantes

  • controle de concorrencia
  • Controle de Concorrência
  • Controle de Concorrência
  • Controle de Concorrencia
  • Controle de concorrência implementado pelo postgresql
  • Conceitos de controle de concorrência
  • Controle de concorrência oracle
  • Concorrência e competitividade

Seja um membro do Trabalhos Feitos

CADASTRE-SE AGORA!