Podcast
Questions and Answers
Quais são as duas fases do Protocolo de Bloqueio em Duas Fases (2PL)?
Quais são as duas fases do Protocolo de Bloqueio em Duas Fases (2PL)?
Fase de Crescimento e Fase de Contração.
Quais são os tipos de bloqueios utilizados no 2PL e suas funções?
Quais são os tipos de bloqueios utilizados no 2PL e suas funções?
Bloqueio Partilhado (permite leitura simultânea) e Bloqueio Exclusivo (permite acesso exclusivo para escrita).
Quais são as principais vantagens do Protocolo de Bloqueio em Duas Fases?
Quais são as principais vantagens do Protocolo de Bloqueio em Duas Fases?
Garante a serializabilidade das transações e evita inconsistências nos dados.
O que caracteriza o 2PL Estrito e quais suas vantagens?
O que caracteriza o 2PL Estrito e quais suas vantagens?
Signup and view all the answers
Quais as desvantagens do 2PL Estrito?
Quais as desvantagens do 2PL Estrito?
Signup and view all the answers
Como funciona o 2PL Centralizado e quais suas desvantagens?
Como funciona o 2PL Centralizado e quais suas desvantagens?
Signup and view all the answers
Quais são as vantagens do 2PL Totalmente Distribuído?
Quais são as vantagens do 2PL Totalmente Distribuído?
Signup and view all the answers
Quais problemas podem surgir no 2PL Totalmente Distribuído?
Quais problemas podem surgir no 2PL Totalmente Distribuído?
Signup and view all the answers
Como o Protocolo de Ordenação por Marcas Temporais garante a serializabilidade?
Como o Protocolo de Ordenação por Marcas Temporais garante a serializabilidade?
Signup and view all the answers
Quais são as três fases do Protocolo Baseado em Técnicas Otimistas?
Quais são as três fases do Protocolo Baseado em Técnicas Otimistas?
Signup and view all the answers
O que caracteriza o Protocolo de Snapshot Isolation?
O que caracteriza o Protocolo de Snapshot Isolation?
Signup and view all the answers
Como podem ser prevenidos os deadlocks em sistemas de gestão de transações?
Como podem ser prevenidos os deadlocks em sistemas de gestão de transações?
Signup and view all the answers
Descreva a função dos logs e checkpoints na gestão de falhas e recuperação.
Descreva a função dos logs e checkpoints na gestão de falhas e recuperação.
Signup and view all the answers
Qual a diferença entre consistência forte e consistência eventual?
Qual a diferença entre consistência forte e consistência eventual?
Signup and view all the answers
Como os protocolos 2PC e 3PC garantem a atomicidade em transações distribuídas?
Como os protocolos 2PC e 3PC garantem a atomicidade em transações distribuídas?
Signup and view all the answers
Quais são as vantagens do Protocolo Baseado em Técnicas Otimistas?
Quais são as vantagens do Protocolo Baseado em Técnicas Otimistas?
Signup and view all the answers
O que ocorre durante a fase de validação no Protocolo Baseado em Técnicas Otimistas?
O que ocorre durante a fase de validação no Protocolo Baseado em Técnicas Otimistas?
Signup and view all the answers
Como a gestão de falhas lida com desafios como falhas parciais e partições de rede?
Como a gestão de falhas lida com desafios como falhas parciais e partições de rede?
Signup and view all the answers
Flashcards
2PL (Two-Phase Locking)
2PL (Two-Phase Locking)
Um protocolo de gerenciamento de concorrência em sistemas de banco de dados distribuídos que garante a serializabilidade das transações, evitando inconsistências nos dados. Divide a execução da transação em duas fases: fase de crescimento, onde a transação pode obter bloqueios, e fase de contração, onde a transação só pode liberar bloqueios.
Bloqueio Partilhado
Bloqueio Partilhado
Um tipo de bloqueio no protocolo 2PL que permite que várias transações leiam um recurso simultaneamente.
Bloqueio Exclusivo
Bloqueio Exclusivo
Um tipo de bloqueio no protocolo 2PL que permite apenas uma transação a modificar um recurso, garantindo exclusividade no acesso para atualização.
2PL Estrito
2PL Estrito
Signup and view all the flashcards
2PL Centralizado
2PL Centralizado
Signup and view all the flashcards
2PL Totalmente Distribuído
2PL Totalmente Distribuído
Signup and view all the flashcards
Deadlock
Deadlock
Signup and view all the flashcards
Recuperabilidade
Recuperabilidade
Signup and view all the flashcards
Protocolo de Ordenação por Timestamp
Protocolo de Ordenação por Timestamp
Signup and view all the flashcards
Protocolo Otimista
Protocolo Otimista
Signup and view all the flashcards
Snapshot Isolation (SI)
Snapshot Isolation (SI)
Signup and view all the flashcards
Prevenção de Deadlocks
Prevenção de Deadlocks
Signup and view all the flashcards
Detecção e Resolução de Deadlocks
Detecção e Resolução de Deadlocks
Signup and view all the flashcards
Logs e Checkpoints
Logs e Checkpoints
Signup and view all the flashcards
Replicação de Dados
Replicação de Dados
Signup and view all the flashcards
Consistência
Consistência
Signup and view all the flashcards
Atomicidade
Atomicidade
Signup and view all the flashcards
Study Notes
Controlo de Dados Distribuídos
- Os protocolos de bloqueio, como o 2PL, são cruciais para a gestão de transações em sistemas distribuídos.
- O 2PL divide as transações em duas fases: crescimento (aquisição de bloqueios) e contração (liberação de bloqueios).
Protocolo de Bloqueio em Duas Fases (2PL)
- Tipos de Bloqueios:
- Partilhado: Permite leituras simultâneas.
- Exclusivo: Permite apenas uma transação escrever em um recurso.
- Vantagens:
- Garante a serializabilidade, evitando inconsistências.
- Desvantagens:
- Predisposição a deadlocks (bloqueios mútuos).
Variantes do 2PL
2PL Estrito
- Descrição: Mantém bloqueios de escrita até o fim da transação.
- Vantagens:
- Evita reversões em cascata.
- Garante recuperabilidade.
- Desvantagens:
- Reduz a concorrência.
2PL Centralizado
- Funcionamento:
- Um nó central controla todos os bloqueios.
- Vantagens:
- Implementação simples e com coordenação centralizada.
- Desvantagens:
- Ponto único de falha.
- Gargalo em sistemas grandes.
2PL Totalmente Distribuído
- Funcionamento:
- Cada nó gerencia bloqueios localmente para seus recursos.
- Vantagens:
- Maior robustez (sem ponto único de falha).
- Escalabilidade.
- Desvantagens:
- Maior complexidade e maior chance de deadlocks distribuídos.
Protocolos de Concorrência
Protocolo de Ordenação por Marcas Temporais (Timestamp Ordering)
- Funcionamento:
- Cada transação recebe um timestamp único.
- As operações são ordenadas por timestamp.
- Vantagens:
- Garante serializabilidade sem bloqueios e evita deadlocks.
- Desvantagens:
- Transações podem ser abortadas com frequência em caso de conflitos.
- Tipos de Operações:
- Leitura: Uma transação pode ler um dado se nenhuma mais recente o tiver escrito.
- Escrita: Uma transação pode escrever se nenhuma mais recente o tiver lido ou escrito.
Protocolo Baseado em Técnicas Otimistas
- Funcionamento:
- Assume poucos conflitos.
- Três fases: Leitura, Validação e Escrita.
- Vantagens:
- Evita overheads de bloqueios.
- Bom para aplicações de leitura intensiva.
- Desvantagens:
- Custo elevado de validação em ambientes com alta concorrência.
- Transações podem ser abortado frequentemente.
Protocolo de Snapshot Isolation (SI)
- Funcionamento:
- Cada transação executa num snapshot consistente do banco de dados no início.
- Vantagens:
- Evita bloqueios explicitamente.
- Desvantagens:
- Pode não garantir serializabilidade em todos os cenários.
Controle de Deadlocks
- Soluções:
- Prevenção:
- Impor regras para evitar deadlocks (ex: ordem global de aquisição de bloqueios).
- Realizar aborto de transações com potencial de causar deadlock.
- Detecção e Resolução:
- Monitorar e identificar ciclos em grafos de dependência entre transações.
- Abortar transações para quebrar ciclos.
Gestão de Falhas e Recuperação
- Técnicas:
- Logs e Checkpoints:
- Logs: Registam ações para recuperação após falhas.
- Checkpoints: Guardam o estado do sistema para acelerar recuperação.
- Replicação de Dados: Cria cópias dos dados em diferentes nós, aumentando a tolerância a falhas.
- Desafios:
- Falhas parciais, e partições da rede.
Técnicas para Garantir Consistência e Atomicidade
-
Consistência:
-
Modelos de Consistência:
-
Forte: Todas as réplicas têm os mesmos dados após uma transação.
-
Eventual: As réplicas convergem para o mesmo estado, mas podem ser provisoriamente inconsistentes.
-
Snapshot Isolation: Cada transação vê o banco de dados como uma "fotografia" consistente no momento do início.
-
One-Copy Serializability: Garante que transações em réplicas têm o mesmo efeito de uma única fonte.
-
Atomicidade:
-
Transações Distribuídas: Protocolos como 2PC e 3PC garantem que transações sejam todas concluídas ou abortadas.
-
Abort e Rollback: Reverter alterações em caso de falhas para manter o estado anterior.
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.
Description
Este quiz explora os conceitos fundamentais do Protocolo de Bloqueio em Duas Fases (2PL) e suas variantes. Discuta os tipos de bloqueios, vantagens e desvantagens, incluindo o 2PL Estrito e Centralizado. Teste seus conhecimentos sobre a gestão de transações em sistemas distribuídos.