Processamento de Transações Distribuídas
13 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 é o papel do novo coordenador em uma transação?

  • Consultar os participantes para determinar o estado da transação. (correct)
  • Executar a transação em nome dos participantes.
  • Registrar os resultados da transação.
  • Decidir quem participará da transação.
  • Qual das seguintes estratégias não faz parte das otimizações de transações?

  • Execução Paralela.
  • Checkpoints.
  • Aumento da Latência. (correct)
  • Minimizar Comunicação.
  • Como o Apache Phoenix lida com transações?

  • Impondo restrições sobre o uso de SQL.
  • Realizando transações de forma assíncrona.
  • Apenas permitindo operações de leitura em dados.
  • Garantindo a atomicidade e consistência em consultas e atualizações. (correct)
  • Qual é uma das características do Apache Phoenix?

    <p>Integra-se com o HBase para armazenamento eficiente. (C)</p> Signup and view all the answers

    Qual das seguintes opções descreve um desafio que pode surgir durante uma transação?

    <p>Perda de comunicação entre participantes e coordenador. (C)</p> Signup and view all the answers

    Qual das seguintes características não faz parte do modelo ACID de uma transação?

    <p>Flexibilidade (D)</p> Signup and view all the answers

    Qual é a principal função da fase de votação no protocolo 2PC?

    <p>Coletar a confirmação dos participantes (A)</p> Signup and view all the answers

    No protocolo 3PC, o que acontece na fase de pré-commit?

    <p>O coordenador envia um 'pré-commit' (A)</p> Signup and view all the answers

    Uma desvantagem do protocolo 2PC é:

    <p>O bloqueio em caso de falha do coordenador (A)</p> Signup and view all the answers

    Como um participante reage após uma falha e reinício se seu estado for 'READY'?

    <p>Consulta o coordenador para saber o resultado (D)</p> Signup and view all the answers

    Qual é uma vantagem do protocolo 3PC em comparação ao 2PC?

    <p>Não bloqueante em caso de falhas (A)</p> Signup and view all the answers

    O que deve ocorrer se um coordenador falha durante uma transação?

    <p>Um novo coordenador é eleito (D)</p> Signup and view all the answers

    O que caracteriza a atomicidade em uma transação?

    <p>A transação é completa ou não realizada (A)</p> Signup and view all the answers

    Flashcards

    Decisão do Coordenador

    O coordenador da transação consulta os participantes para analisar o progresso e decidir se a transação deve prosseguir ou ser cancelada.

    Falhas de Rede em Transações

    Quando a comunicação entre os participantes e o coordenador é interrompida, a transação fica bloqueada, impedindo sua conclusão.

    Minimizar Comunicação em Transações

    Minimizar a quantidade de mensagens enviadas entre os nós da transação para melhorar a eficiência.

    Execução Paralela de Transações

    Dividir uma transação em partes menores que podem ser executadas simultaneamente em diferentes nós, acelerando o processo.

    Signup and view all the flashcards

    O que é o Apache Phoenix?

    O Apache Phoenix é um sistema que adiciona uma camada SQL ao HBase, permitindo consultas complexas e transações ACID.

    Signup and view all the flashcards

    Transação Distribuída

    Uma unidade de trabalho que precisa ser concluída completamente (commit) ou totalmente revertida (abort) em um sistema distribuído, garantindo a integridade dos dados.

    Signup and view all the flashcards

    Atomicidade

    Propriedade de uma transação que garante que todas as suas operações sejam executadas ou nenhuma seja executada.

    Signup and view all the flashcards

    Consistência

    Propriedade que garante que os dados seguem as regras de integridade antes e depois da transação.

    Signup and view all the flashcards

    Isolamento

    Propriedade que garante que as transações sejam executadas como se estivessem em um ambiente isolado.

    Signup and view all the flashcards

    Durabilidade

    Propriedade que garante que, após o commit, as mudanças são permanentes, mesmo em caso de falhas.

    Signup and view all the flashcards

    Two-Phase Commit (2PC)

    Protocolo que garante que uma transação distribuída seja confirmada ou abortada de forma consistente em todos os nós participantes.

    Signup and view all the flashcards

    Three-Phase Commit (3PC)

    Protocolo que torna o commit não bloqueante, lidando melhor com falhas de coordenador.

    Signup and view all the flashcards

    Falha de Participantes

    Um participante que falha consulta seu log para verificar o estado da transação.

    Signup and view all the flashcards

    Falha do Coordenador

    Um novo coordenador é eleito para liderar a transação.

    Signup and view all the flashcards

    Log de Transações

    O sistema distribuído mantém um histórico de eventos, como um diário, para recuperar o estado da transação caso ocorra uma falha.

    Signup and view all the flashcards

    Study Notes

    Processamento de Transações Distribuídas

    • Transação: Unidade de trabalho que deve ser executada totalmente ou revertida totalmente, garantindo consistência e integridade de dados em sistemas distribuídos.
    • Características ACID:
      • Atomicidade: "Tudo ou nada" - concluída totalmente ou nenhuma alteração.
      • Consistência: Dados seguem regras de integridade antes e depois da transação.
      • Isolamento: Cada transação parece ser executada separadamente.
      • Durabilidade: Mudanças são permanentes após o commit, mesmo com falhas.

    Protocolos Transacionais Distribuídos

    • 2PC (Two-Phase Commit):

      • Objetivo: Garantir confirmação/aborto consistente em todos os nós participantes.
      • Fases:
        • Votação: Coordenador solicita "preparação" aos participantes; eles respondem "sim" ou "não".
        • Decisão: Se todos votarem "sim", o coordenador decide pelo commit; caso contrário, aborta.
      • Desvantagem: Bloqueante, pois falha do coordenador deixa participantes em incerteza.
    • 3PC (Three-Phase Commit):

      • Objetivo: Tornar o commit não bloqueante, melhorando a tolerância a falhas do coordenador.
      • Fases:
        • Votação (igual ao 2PC).
        • Pré-commit: Coordenador envia "pré-commit" aos participantes, que confirmam a recepção.
        • Commit Final: Coordenador envia "commit final" se não falhar; caso contrário, participantes decidem com base no pré-commit.
      • Vantagem: Não bloqueante.
      • Desvantagem: Maior overhead de comunicação e mais complexo.

    Gestão de Falhas em Transações

    • Cenários de Falhas:
      • Falha de Participantes:
        • Consulta log ao reiniciar;
        • "READY": consulta coordenador;
        • "COMMIT" ou "ABORT": executa a ação.
      • Falha do Coordenador:
        • Novo coordenador é eleito;
        • Consulta participantes para determinar estado da transação e decide continuar ou abortar.
      • Falhas de Rede:
        • Transações bloqueadas pela perda de comunicação entre participantes e coordenador.

    Estratégias de Otimização de Transações

    • Minimizar Comunicação:
      • Projetar transações com o mínimo de mensagens entre nós.
      • Técnicas de fragmentação para operações locais.
    • Execução Paralela:
      • Dividir transação em subtransações para execução simultânea em diferentes nós.
    • Replicação Estratégica:
      • Replicar dados em locais estratégicos para reduzir latência de leitura e escrita.
    • Checkpointing:
      • Criar pontos de verificação para reduzir tempo de recuperação após falhas.

    Tecnologia: Apache Phoenix

    • Apache Phoenix: Camada SQL sobre HBase, permitindo consultas transacionais ACID com escalabilidade do HBase.
    • Características:
      • Consultas SQL completas (JOINs, GROUP BY, HAVING).
      • Transações ACID para consultas e atualizações.
      • Integração com HBase para armazenamento e distribuição de dados eficientes.

    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 processamento de transações distribuídas, suas características ACID e os protocolos envolvidos. Entenda os conceitos fundamentais como atomicidade, consistência, isolamento e durabilidade, além de descobrir como funciona o protocolo 2PC.

    More Like This

    Use Quizgecko on...
    Browser
    Browser