2 research outputs found
Recommended from our members
A Non-blocking Commitment Protocol
A "non-blocking" commitment protocol is one that ensures that at least some sites of a multi-site transaction do not block in spite of any single failure. This paper describes a quorum-based non-blocking commitment protocol that also subsumes the functions of termination and recovery protocols. The protocol survives any single site crash or network partition provided that the failure is not falsely detected. The protocol is correct despite the occurrence of any number of failures, and whether or not failures are falsely detected. When there is no failure, the protocol requires three phases of message exchange between the coordinator and the subordinates and requires each site to force two log records. Read-only transactions are optimized so that a read-only subordinate typically writes no log records and exchanges only one round of messages with the coordinator. Sites can forget the transaction after it terminates everywhere. Finally, a fundamental result about quorum-based commit protocols is uncovered: they are effective only for transactions involving more than three sites
Validação de ações atomicas distribuidas
Orientador: Ricardo O. AnidoDissertação (mestrado) - Universidade Estadual de Campinas, Instituto de Matematica, Estatistica e Ciencia da ComputaçãoResumo: Neste trabalho estudamos o problema de validação de ações atômicas distribuídas e de protocolos de validação que visam resolvê-lo. Além do estudo de protocolos de validação existentes na literatura, propomos uma variação do protocolo de duas fases, denominada protocolo semibloqueante. No Capítulo 1 são apresentados o conceito de ação atômica distribuída e uma motivação para sua utilização. Também são descritas as funções básicas de um sistema gerenciador genérico de ações atômicas. No Capítulo 2 é definido um modelo de sistema distribuído. Com base neste modelo, é definido o problema de validação de ações atômicas distribuídas e são apresentados formalism?s para descrição do funcionamento de protocolos de validação em geral. São ta.mbém estudadas as condições necessárias para a existência de protocolos não-bloqueantes e de recuperação independente de processos falhos. No Capítulo 3 são estudados protocolos de validação de duas fases que visam a eficiência quanto à finalização da ação. F:stes protocolos são descritos com base em um conjunto de parâmetros definidos no início do capítulo. No Capítulo 4 são estudados protocolos de validação de duas fases que visam ser tolerantes a falhas. No início do capítulo é adotado um padrão para descrição desses protocolos: O Capítulo 5 descreve um conjunto de protocolos que não se enquadram na categoria de protocolos de duas fases. No Capítulo 6 apresentamos o protocolo semibloqueante, um protocolo intermediário entre os protocolos de duas fases e os protocolos não-bloqueantes. Durante uma execução sem falhas, o protocolo comporta-se como um protocolo bloqueante. Quando surgem falhas no sistema, o protocolo passa a funcionar como um protocolo de três fases não-bloqueante.. A Capítulo 7 finaliza o texto com alguns comentários e sugestões de trabalhos futurosAbstract: In this work we studythe atomic actions commit problem and a set of commit protocols which aim to solve this problem. We also propose a new two-phase commit protocol, the scmiblocking commit protocol. In Chapter, 1 we give the definition of distributed atomk actions. We also present the basic definitions of a generic atomic action management system. In Chapter 2, we define a model of distributed system which is used to define the atomic action commit problem and the formalism used to describe the operation of generic commit protocols. In Chapter 3, we describe several efficient two-phase commit protocols from the literature. The. description of these protocols are based on a set of parameters which are defined at the beginning of the chapter. In Chapter 4, we describe a series of published fault-tolerant commit protocols. At the beginning of the chapter, we define a set of parameters which are used for the desQri'ptions of these protocols. Chapter 5 contains a set of protocols which do not belong to the two-phase category of commit protocols. In Chapter 6, we introduce the semiblocking commit protocol which stands between the cIass of two-phase commit protocols and that of nonblocking commit protocols. During a failure-free execution, t,he protocol behaves like a blocking commit protocol. When,ever a fault occurs in the system, the semiblocking commit protocol begins to act like a nonblocking . three-phase commit protocol. Chapter 7 cIoses the text with some comments and suggestions for future workMestradoMestre em Ciência da Computaçã