Prévia do material em texto
8COP 018 – Banco de Dados Prof. Vitor Valerio de Souza Campos Unidade 5 - Concorrência e falhas EXERCÍCIO 1 Considere as duas transações a seguir: (a) Adicione instruções de bloqueio e desbloqueio às transações, T1 e T2, para que eles observem o protocolo de bloqueio em duas fases. (b) A execução dessas transações pode resultar em um impasse? EXERCÍCIO 2 Considere um banco de dados com os objetos X e Y e assuma que existam duas transações T1 e T2. A transação T1 lê os objetos X e Y e depois grava o objeto X. A transação T2 lê os objetos X e Y, depois lê X mais uma vez e finalmente grava os objetos X e Y. Ou seja: 1. Dê um exemplo de schedule com as ações das transações T1 e T2 nos objetos X e Y que resulta em um conflito de gravação e leitura. 2. Dê um exemplo de schedule com as ações das transações T1 e T2 nos objetos X e Y que resulta em um conflito de leitura e gravação. 3. Dê um exemplo de schedule com as ações das transações T1 e T2 nos objetos X e Y que resulta em um conflito de gravação / gravação. 4. Para cada um dos três schedules, mostre que o 2PL estrito não permite o schedule. EXERCÍCIO 3 Schedules, Serialização e Bloqueios. (a) Considere as duas transações e o schedule a seguir. É este schedule serializável de conflito? Explique por que ou por que não. (b) Mostre como o 2PL pode garantir um schedule serializável de conflito para as mesmas transações acima. Usar a notação Locki [A] para indicar que a transação i adquire o bloqueio no elemento A e Unlocki [A] para indica que a transação i libera seu bloqueio em A. (c) Mostre como o uso de bloqueios sem 2PL pode levar a um schedule que NÃO é serializável de conflito. EXERCÍCIO 4 Schedules, Serialização e Bloqueios. Considere um banco de dados com os objetos X e Y e assuma que existam duas transações T1 e T2. T1 primeiro lê X e Y e depois escreve X e Y. T2 lê e escreve X depois lê e escreve Y. (a) Dado o exemplo de schedule não serializável abaixo. Explique por que não é serializável. (b) Mostre que o 2PL estrito não permite este schedule.