Controlo de Dados Distribuídos - Protocolo 2PL
18 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

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?

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?

Garante a serializabilidade das transações e evita inconsistências nos dados.

O que caracteriza o 2PL Estrito e quais suas vantagens?

<p>Mantém bloqueios de escrita até o fim da transação, evitando reversões em cascata e garantindo recuperabilidade.</p> Signup and view all the answers

Quais as desvantagens do 2PL Estrito?

<p>Reduz a concorrência, pois os bloqueios permanecem por mais tempo.</p> Signup and view all the answers

Como funciona o 2PL Centralizado e quais suas desvantagens?

<p>Um nó central gerencia todos os bloqueios, mas se ele falhar, o sistema pode ficar indisponível.</p> Signup and view all the answers

Quais são as vantagens do 2PL Totalmente Distribuído?

<p>É mais robusto e escalável, pois não possui um único ponto de falha.</p> Signup and view all the answers

Quais problemas podem surgir no 2PL Totalmente Distribuído?

<p>Deadlocks distribuídos e complexidade na implementação.</p> Signup and view all the answers

Como o Protocolo de Ordenação por Marcas Temporais garante a serializabilidade?

<p>Cada transação recebe uma marca temporal única e as operações são ordenadas com base nessas marcas, permitindo que transações mais antigas se sobreponham às mais novas.</p> Signup and view all the answers

Quais são as três fases do Protocolo Baseado em Técnicas Otimistas?

<p>As fases são: Fase de Leitura, Fase de Validação e Fase de Escrita.</p> Signup and view all the answers

O que caracteriza o Protocolo de Snapshot Isolation?

<p>Cada transação opera em uma 'fotografia' consistente do banco de dados, onde as mudanças feitas por ela não são visíveis até a confirmação.</p> Signup and view all the answers

Como podem ser prevenidos os deadlocks em sistemas de gestão de transações?

<p>Deadlocks podem ser prevenidos ao impor uma ordem global de aquisição de bloqueios e abortar transações que tentem causar deadlocks.</p> Signup and view all the answers

Descreva a função dos logs e checkpoints na gestão de falhas e recuperação.

<p>Os logs registram operações para recuperação após falhas, enquanto os checkpoints salvam o estado do sistema periodicamente para acelerar a recuperação.</p> Signup and view all the answers

Qual a diferença entre consistência forte e consistência eventual?

<p>Consistência forte requer que todas as réplicas tenham os mesmos dados após cada transação, enquanto a consistência eventual permite que as réplicas sejam temporariamente inconsistentes antes de convergir.</p> Signup and view all the answers

Como os protocolos 2PC e 3PC garantem a atomicidade em transações distribuídas?

<p>Esses protocolos garantem que todas as partes envolvidas em uma transação concordem antes da confirmação final, assegurando que a transação seja concluída ou revertida como um todo.</p> Signup and view all the answers

Quais são as vantagens do Protocolo Baseado em Técnicas Otimistas?

<p>Ele evita overheads de bloqueios e é excelente para sistemas com conflitos raros, como aplicações intensivas em leitura.</p> Signup and view all the answers

O que ocorre durante a fase de validação no Protocolo Baseado em Técnicas Otimistas?

<p>Na fase de validação, verifica-se se houve conflitos com outras transações antes de confirmar as operações.</p> Signup and view all the answers

Como a gestão de falhas lida com desafios como falhas parciais e partições de rede?

<p>A gestão de falhas implementa técnicas como replicação de dados e monitoração do sistema para assegurar a integridade e disponibilidade dos dados.</p> Signup and view all the answers

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.

Quiz Team

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.

More Like This

Use Quizgecko on...
Browser
Browser