Podcast
Questions and Answers
Qual das afirmações sobre o Protocolo de Bloqueio em Duas Fases (2PL) é verdadeira?
Qual das afirmações sobre o Protocolo de Bloqueio em Duas Fases (2PL) é verdadeira?
- Bloqueios compartilhados permitem acesso exclusivo para escrita.
- Após liberar um bloqueio, a transação não pode adquirir novos. (correct)
- Na fase de crescimento, a transação pode liberar bloqueios.
- O protocolo garante que as transações possam ser revertidas em cascata.
Qual é a principal desvantagem do 2PL Estrito?
Qual é a principal desvantagem do 2PL Estrito?
- Garante que as transações não podem ser revertidas.
- Evita inconsistências nos dados.
- Reduz a concorrência devido a bloqueios mais longos. (correct)
- Permite alta concorrência entre transações.
Qual das seguintes afirmações se aplica ao 2PL Centralizado?
Qual das seguintes afirmações se aplica ao 2PL Centralizado?
- Todos os nós possuem lógica complexa de coordenação.
- Há um ponto único de falha no sistema. (correct)
- Os bloqueios são gerenciados de forma distribuída.
- Cada nó gerencia os bloqueios independentemente.
Qual é uma desvantagem do 2PL Totalmente Distribuído?
Qual é uma desvantagem do 2PL Totalmente Distribuído?
O que caracteriza a Fase de Crescimento do 2PL?
O que caracteriza a Fase de Crescimento do 2PL?
Qual vantagem o 2PL oferece em relação à serializabilidade das transações?
Qual vantagem o 2PL oferece em relação à serializabilidade das transações?
O que implica a desvantagem da reversão em cascata no 2PL Estrito?
O que implica a desvantagem da reversão em cascata no 2PL Estrito?
Como o 2PL Centralizado gerencia os bloqueios?
Como o 2PL Centralizado gerencia os bloqueios?
Qual afirmação descreve corretamente o funcionamento do Protocolo de Ordenação por Marcas Temporais?
Qual afirmação descreve corretamente o funcionamento do Protocolo de Ordenação por Marcas Temporais?
Qual é uma desvantagem do protocolo baseado em técnicas otimistas?
Qual é uma desvantagem do protocolo baseado em técnicas otimistas?
Qual dos seguintes protocolos evita bloqueios explícitos?
Qual dos seguintes protocolos evita bloqueios explícitos?
O que caracteriza um deadlock em sistemas de transações?
O que caracteriza um deadlock em sistemas de transações?
Qual é um método utilizado para garantir a recuperação em sistemas distribuídos?
Qual é um método utilizado para garantir a recuperação em sistemas distribuídos?
Qual dos seguintes elementos NÃO é uma técnica para garantir atomicidade nas transações?
Qual dos seguintes elementos NÃO é uma técnica para garantir atomicidade nas transações?
Qual modelo de consistência garante que todas as réplicas tenham os mesmos dados após cada transação?
Qual modelo de consistência garante que todas as réplicas tenham os mesmos dados após cada transação?
Quais são as fases do protocolo baseado em técnicas otimistas?
Quais são as fases do protocolo baseado em técnicas otimistas?
O que pode acontecer com transações no protocolo de ordenação por marcas temporais?
O que pode acontecer com transações no protocolo de ordenação por marcas temporais?
Qual é a principal vantagem do Snapshot Isolation?
Qual é a principal vantagem do Snapshot Isolation?
Flashcards
Protocolo de Bloqueio em Duas Fases (2PL)
Protocolo de Bloqueio em Duas Fases (2PL)
Um protocolo para gerenciar o acesso concorrente a recursos compartilhados em sistemas de banco de dados distribuídos, dividindo a execução de uma transação em duas fases: fase de crescimento e fase de contração.
Fase de Crescimento (2PL)
Fase de Crescimento (2PL)
A primeira fase de uma transação 2PL, onde a transação pode adquirir bloqueios, mas não liberá-los.
Fase de Contração (2PL)
Fase de Contração (2PL)
A segunda fase de uma transação 2PL, onde a transação libera os bloqueios que adquiriu e não pode adquirir novos.
Bloqueio Partilhado (Shared Lock)
Bloqueio Partilhado (Shared Lock)
Signup and view all the flashcards
Bloqueio Exclusivo (Exclusive Lock)
Bloqueio Exclusivo (Exclusive Lock)
Signup and view all the flashcards
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
Protocolo de Ordenação por Marcas Temporais (Timestamp Ordering)
Protocolo de Ordenação por Marcas Temporais (Timestamp Ordering)
Signup and view all the flashcards
Leitura no Timestamp Ordering
Leitura no Timestamp Ordering
Signup and view all the flashcards
Escrita no Timestamp Ordering
Escrita no Timestamp Ordering
Signup and view all the flashcards
Protocolo Baseado em Técnicas Otimistas
Protocolo Baseado em Técnicas Otimistas
Signup and view all the flashcards
Fase de Leitura (Read Phase) em Protocolos Otimistas
Fase de Leitura (Read Phase) em Protocolos Otimistas
Signup and view all the flashcards
Fase de Validação (Validation Phase) em Protocolos Otimistas
Fase de Validação (Validation Phase) em Protocolos Otimistas
Signup and view all the flashcards
Fase de Escrita (Write Phase) em Protocolos Otimistas
Fase de Escrita (Write Phase) em Protocolos Otimistas
Signup and view all the flashcards
Protocolo de Snapshot Isolation (SI)
Protocolo de Snapshot Isolation (SI)
Signup and view all the flashcards
Deadlock
Deadlock
Signup and view all the flashcards
Prevenção de Deadlocks
Prevenção de Deadlocks
Signup and view all the flashcards
Study Notes
Controlo de Dados Distribuídos
- Sistemas distribuídos exigem mecanismos para controlar a consistência e atomicidade de transações em múltiplos nós.
Protocolo de Bloqueio em Duas Fases (2PL)
- Divide uma transação em duas fases: crescimento (aquisição de bloqueios) e contração (liberação de bloqueios).
- Tipos de Bloqueios:
- Bloqueio Partilhado: Permiti leitura simultânea.
- Bloqueio Exclusivo: Permite escrita por apenas uma transação.
- Vantagens do 2PL: Garante serializabilidade e evita inconsistências.
- Desvantagens do 2PL: Propensos a deadlocks (bloqueios mútuos).
Variantes do 2PL
2PL Estrito
- Mantém os bloqueios de escrita até o fim da transação.
- Vantagens: Evita reversões em cascata e garante recuperabilidade (restauração a um estado consistente).
- Desvantagens: Reduz a concorrência por manter bloqueios por mais tempo.
2PL Centralizado
- Um nó central gerencia todos os bloqueios.
- Vantagens: Implementação mais simples e menor coordenação entre nós.
- Desvantagens: Ponto único de falha e gargalo em sistemas grandes.
2PL Totalmente Distribuído
- Cada nó gerencia bloqueios localmente.
- Vantagens: Mais robusto devido à ausência de ponto único de falha e melhor escalabilidade.
- Desvantagens: Maior complexidade e probabilidade de deadlocks distribuídos.
Protocolos sem Bloqueios
Protocolo de Ordenação por Marcas Temporais (Timestamp Ordering)
- Cada transação recebe uma marca temporal única.
- Vantagens: Serializabilidade garantida sem bloqueios, evitando deadlocks.
- Desvantagens: Rejeições frequentes de transações em caso de conflitos com transações mais recentes.
Protocolo Baseado em Técnicas Otimistas
- Assume que conflitos são raros.
- Fases: Leitura, Validação e Escrita.
- Vantagens: Evita overheads de bloqueios, ideal para sistemas com pouca concorrência.
- Desvantagens: Custo de validação elevado em ambientes com alta concorrência e possibilidade de rejeições frequentes.
Protocolo de Snapshot Isolation (SI)
- Cada transação opera em um snapshot (fotografia) consistente do momento em que começou.
- Vantagens: Evita bloqueios explícitos e reduz conflitos.
- Desvantagens: Não garante serializabilidade em todos os casos.
Controle de Deadlocks
- Soluções:
- Prevenção: Impondo restrições de aquisição de bloqueios.
- Detecção e Resolução: Monitorando e quebrando ciclos de dependência entre transações através do aborto de transações.
Gestão de Falhas e Recuperação
- Falhas em sistemas distribuídos são tratáveis com:
- Logs e Checkpoints: Registros de operações e backups periódicos para recuperação mais rápida.
- Replicação de Dados: Múltiplas cópias dos dados em diferentes nós para lidar com falhas.
- Desafios: Gerenciamento de falhas parciais e partições de rede.
Técnicas para Garantir Consistência e Atomicidade
- Consistência: Assegura que o sistema está em um estado válido em todas as etapas.
- Modelos de Consistência: Forte, Eventual e Snapshot Isolation.
- One-Copy Serializability: Garante que o efeito em réplicas é equivalente a um só conjunto de dados.
- Atomicidade: Assegura que transações sejam completadas ou canceladas completamente.
- Transações Distribuídas: Protocolos (2PC e 3PC) auxiliam na atomicidade em sistemas distribuídos.
- Abort e Rollback: Reversão de alterações em caso de falhas.
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.
Description
Este quiz aborda o controle de dados distribuídos, focando no Protocolo de Bloqueio em Duas Fases (2PL). Você aprenderá sobre os tipos de bloqueios, vantagens e desvantagens do 2PL, além das suas variantes, como o 2PL Estrito e Centralizado. Teste seu conhecimento sobre esses tópicos importantes na computação distribuída.