Controlo de Dados: 2PL e suas Variantes
17 Questions
0 Views

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to lesson

Podcast

Play an AI-generated podcast conversation about this lesson

Questions and Answers

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)?

  • 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?

  • 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?

    <p>Um nó central gerencia os bloqueios e verifica a compatibilidade.</p> Signup and view all the answers

    Qual é a principal desvantagem do 2PL Totalmente Distribuído?

    <p>Possui maior complexidade e pode resultar em deadlocks distribuídos.</p> Signup and view all the answers

    Por que o 2PL Centralizado pode ser considerado um gargalo em sistemas grandes?

    <p>Ele exige verificação de compatibilidade em um único nó central.</p> Signup and view all the answers

    Qual das seguintes afirmações é verdadeira sobre os bloqueios partilhados (Shared Lock)?

    <p>Permitindo leitura simultânea por várias transações.</p> Signup and view all the answers

    Qual é uma consequência do uso de bloqueios em um sistema de gerenciamento de transações?

    <p>Pode levar à ocorrência de deadlocks.</p> Signup and view all the answers

    Como uma transação pode ler um dado no protocolo de ordenação por marcas temporais?

    <p>Se outra transação anterior não tiver escrito naquele dado.</p> Signup and view all the answers

    Quais são as fases de um protocolo baseado em técnicas otimistas?

    <p>Leitura, Validação e Escrita.</p> Signup and view all the answers

    Qual é uma desvantagem do protocolo de snapshot isolation?

    <p>Não garante a serializabilidade em todos os casos.</p> Signup and view all the answers

    Qual técnica pode ser utilizada para prevenir deadlocks?

    <p>Abortar transações que tentem causar deadlocks.</p> Signup and view all the answers

    O que é garantido pela atomicidade em transações distribuídas?

    <p>As transações são finalizadas completamente ou não são realizadas.</p> Signup and view all the answers

    Qual é uma característica dos logs na gestão de falhas?

    <p>Aceleram a recuperação após falhas.</p> Signup and view all the answers

    Como a consistência forte é definida?

    <p>Todas as réplicas têm os mesmos dados após cada transação.</p> Signup and view all the answers

    Quais são as principais desvantagens do protocolo baseado em técnicas otimistas?

    <p>O custo da validação pode ser alto em ambientes com alta concorrência.</p> Signup and view all the answers

    O que caracteriza a fase de validação em um protocolo otimista?

    <p>Checagem de conflitos com transações anteriores.</p> Signup and view all the answers

    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.
    • 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.

    Quiz Team

    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.

    More Like This

    Use Quizgecko on...
    Browser
    Browser