Podcast
Questions and Answers
Qual é a principal característica da fase de crescimento no Protocolo de Bloqueio em Duas Fases (2PL)?
Qual é a principal característica da fase de crescimento no Protocolo de Bloqueio em Duas Fases (2PL)?
- A transação pode liberar bloqueios.
- A transação deve solicitar bloqueios ao nó central.
- A transação pode adquirir bloqueios, mas não liberá-los. (correct)
- A transação não pode adquirir novos bloqueios.
Qual é a vantagem do bloqueio exclusivo (Exclusive Lock)?
Qual é a vantagem do bloqueio exclusivo (Exclusive Lock)?
- Permite a leitura simultânea por várias transações.
- Reduz a complexidade de coordenação entre nós.
- Facilita a recuperação de dados em transações falhas.
- Garante que apenas uma transação pode acessar para escrita. (correct)
Qual é um dos principais desvantagens do Protocolo 2PL Estrito?
Qual é um dos principais desvantagens do Protocolo 2PL Estrito?
- Aumenta a concorrência no sistema.
- Ponto único de falha em um nó central.
- Possui maior simplicidade na implementação.
- Reduz a concorrência por manter bloqueios até o fim. (correct)
Como funciona o 2PL Centralizado?
Como funciona o 2PL Centralizado?
Qual é a principal desvantagem do 2PL Totalmente Distribuído?
Qual é a principal desvantagem do 2PL Totalmente Distribuído?
Por que o 2PL Centralizado pode ser considerado um gargalo em sistemas grandes?
Por que o 2PL Centralizado pode ser considerado um gargalo em sistemas grandes?
Qual das seguintes afirmações é verdadeira sobre os bloqueios partilhados (Shared Lock)?
Qual das seguintes afirmações é verdadeira sobre os bloqueios partilhados (Shared Lock)?
Qual é uma consequência do uso de bloqueios em um sistema de gerenciamento de transações?
Qual é uma consequência do uso de bloqueios em um sistema de gerenciamento de transações?
Como uma transação pode ler um dado no protocolo de ordenação por marcas temporais?
Como uma transação pode ler um dado no protocolo de ordenação por marcas temporais?
Quais são as fases de um protocolo baseado em técnicas otimistas?
Quais são as fases de um protocolo baseado em técnicas otimistas?
Qual é uma desvantagem do protocolo de snapshot isolation?
Qual é uma desvantagem do protocolo de snapshot isolation?
Qual técnica pode ser utilizada para prevenir deadlocks?
Qual técnica pode ser utilizada para prevenir deadlocks?
O que é garantido pela atomicidade em transações distribuídas?
O que é garantido pela atomicidade em transações distribuídas?
Qual é uma característica dos logs na gestão de falhas?
Qual é uma característica dos logs na gestão de falhas?
Como a consistência forte é definida?
Como a consistência forte é definida?
Quais são as principais desvantagens do protocolo baseado em técnicas otimistas?
Quais são as principais desvantagens do protocolo baseado em técnicas otimistas?
O que caracteriza a fase de validação em um protocolo otimista?
O que caracteriza a fase de validação em um protocolo otimista?
Flashcards
Protocolo de Bloqueio em Duas Fases (2PL)
Protocolo de Bloqueio em Duas Fases (2PL)
Divide a execução de uma transação em duas fases: Fase de Crescimento (adquire bloqueios) e Fase de Contração (libera bloqueios).
Bloqueio Partilhado
Bloqueio Partilhado
Permite que várias transações leiam um mesmo recurso ao mesmo tempo.
Bloqueio Exclusivo
Bloqueio Exclusivo
Permite que apenas uma transação acesse um recurso para escrita, excluindo outras.
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 Marcas Temporais
Protocolo de Ordenação por Marcas Temporais
Signup and view all the flashcards
Leitura no Protocolo de Marcas Temporais
Leitura no Protocolo de Marcas Temporais
Signup and view all the flashcards
Escrita no Protocolo de Marcas Temporais
Escrita no Protocolo de Marcas Temporais
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 no Protocolo Otimista
Fase de Leitura no Protocolo Otimista
Signup and view all the flashcards
Fase de Validação no Protocolo Otimista
Fase de Validação no Protocolo Otimista
Signup and view all the flashcards
Fase de Escrita no Protocolo Otimista
Fase de Escrita no Protocolo Otimista
Signup and view all the flashcards
Protocolo de Snapshot Isolation
Protocolo de Snapshot Isolation
Signup and view all the flashcards
Snapshot Isolation: Leitura Consistente
Snapshot Isolation: Leitura Consistente
Signup and view all the flashcards
Deadlocks em Protocolos de Bloqueio
Deadlocks em Protocolos de Bloqueio
Signup and view all the flashcards
Study Notes
Controlo de Dados Distribuídos
- O 2PL (Two-Phase Locking) divide a execução de transações em duas fases:
- Fase de Crescimento: Aquisição de bloqueios, sem liberação.
- Fase de Contração: Liberação de bloqueios, sem aquisição de novos.
- Tipos de Bloqueios:
- Bloqueio Partilhado: Permite leituras simultâneas.
- Bloqueio Exclusivo: Permite apenas uma transação por vez para escrita.
Variantes do 2PL
2PL Estrito
- Mantém bloqueios de escrita até ao fim da transação.
- Vantagens: Evita reversões em cascata e garante recuperabilidade.
- Desvantagens: Reduz a concorrência devido aos bloqueios prolongados.
2PL Centralizado
- Um nó central gerencia todos os bloqueios.
- Transações solicitam bloqueios ao nó central, que verifica a compatibilidade.
- Vantagens: Implementação simples e menor complexidade de coordenação.
- Desvantagens: Ponto único de falha e gargalo em sistemas grandes.
2PL Totalmente Distribuído
- Cada nó gerencia os bloqueios localmente.
- Transações solicitam bloqueios diretamente ao nó correto.
- Vantagens: Mais robusto e escalável.
- Desvantagens: Maior probabilidade de deadlocks e complexidade de implementação.
Protocolos de Concorrência
Protocolo de Ordenação por Marcas Temporais (Timestamp Ordering)
- Cada transação recebe um timestamp único no início.
- As operações são ordenadas por timestamp para garantir consistência.
- Leituras: Só são permitidas se não houver escrita posterior.
- Escritas: Só são permitidas se não houver leitura ou escrita posterior.
- Vantagens: Garante serializabilidade sem bloqueios, evitando deadlocks.
- Desvantagens: Possíveis rejeições de transações por conflitos.
Protocolo Baseado em Técnicas Otimistas
- Assume pouca ocorrência de conflitos.
- Três fases:
- Fase de Leitura: Lê os dados e salva as alterações.
- Fase de Validação: Verifica conflitos com outras transações.
- Fase de Escrita: Grava os resultados se a validação for bem-sucedida.
- Vantagens: Evita overheads de bloqueios em sistemas com poucas colisões.
- Desvantagens: Custo de validação alto em alta concorrência. Existem rejeições de transações possíveis.
Protocolo de Snapshot Isolation (SI)
- Cada transação executa em um snapshot consistente do banco de dados.
- Modificações não são visíveis para outras transações até a confirmação.
- Leitura de uma "fotografia" consistente do banco de dados no início da transação.
- Vantagens: Evita bloqueios explícitos e reduz conflitos.
- Desvantagens: Possibilidade de não garantir serializabilidade em todos os casos.
Controle de Deadlocks
- Protocolos de bloqueio (especialmente 2PL) podem ter deadlocks.
- Deadlocks ocorrem quando transações aguardam indefinidamente pelos bloqueios umas das outras.
- Soluções:
- Prevenção: Restrições para evitar deadlocks (ex.: ordem global de aquisição de bloqueios).
- Detecção e Resolução: Monitoramento e abortamento de transações para quebrar ciclos de dependência.
Gestão de Falhas e Recuperação
- Falhas são inevitáveis em sistemas distribuídos.
- Gestão de falhas e recuperação garante disponibilidade e integridade.
- Técnicas:
- Logs e Checkpoints: Registros de operações e backups periódicos para recuperação.
- Replicação de Dados: Cópias em diferentes nós para lidar com falhas.
- Desafios: Falhas parciais e partições de rede.
Técnicas para Garantir Consistência e Atomicidade
- Consistência: Manutenção de um estado válido antes, durante e após transações.
- Modelos:
- Forte: Todas as réplicas tem os mesmos dados.
- Eventual: As réplicas convergem para o mesmo estado (inconsistência temporária possível).
- Snapshot Isolation: Cada transação vê um estado consistente no início.
- One-Copy Serializability: Garante efeitos de transações em réplicas são equivalentes a uma única cópia.
- Modelos:
- Atomicidade: Transações finalizadas completamente ou não finalizadas totalmente.
- Técnicas em sistemas distribuídos (ex.: 2PC, 3PC).
- Abort e Rollback: Reversão de alterações em caso de falha.
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.
Description
Teste seus conhecimentos sobre o controlo de dados distribuídos, focando no Two-Phase Locking (2PL) e suas variantes. Explore as fases de bloqueio e os diferentes tipos de bloqueios disponíveis, bem como as vantagens e desvantagens de cada abordagem. Prepare-se para uma avaliação abrangente sobre o tema.