Efficient Protocols for Replicated Transactional Systems

Total Page:16

File Type:pdf, Size:1020Kb

Efficient Protocols for Replicated Transactional Systems Sapienza Universita` di Roma Dottorato di Ricerca in Ingegneria Informatica XXVI Ciclo { 2014 Efficient Protocols for Replicated Transactional Systems Sebastiano Peluso Sapienza Universita` di Roma Dottorato di Ricerca in Ingegneria Informatica XXVI Ciclo - 2014 Sebastiano Peluso Efficient Protocols for Replicated Transactional Systems Thesis Committee Reviewers Prof. Francesco Quaglia (Co-Advisor) Prof. Pascal Felber Prof. Paolo Romano (Co-Advisor) Prof. Fernando Pedone Prof. Leonardo Querzoni Author's address: Sebastiano Peluso Dipartimento di Ingegneria Informatica, Automatica e Gestionale Sapienza Universit`adi Roma Via Ariosto 25, I-00185 Roma, Italy e-mail: [email protected] www: http://www.dis.uniroma1.it/∼peluso To my family... Abstract Over the last years several relevant technological trends have significantly in- creased the relative impact that the inter-replica synchronization costs have on the performance of transactional systems. Indeed, the emergence of tech- nologies like Transactional Memory, Solid-State Drives and Cloud computing has exacerbated the ratio between the latencies of replication coordination and transaction processing. The requirements of these environments harshly challenge state of the art techniques for replication of transactional systems, raising the need for rethinking existing approaches to this problem. This dissertation advances the state of the art on replicated transactional systems by presenting a set of innovative replication protocols designed to achieve high efficiency even in such challenging scenarios. More in detail, four transactional replication protocols are proposed, which tackle the aforementioned issues from various angles. The first two cope with full replication scenarios, and exploit orthogonal techniques, such as specula- tion and transaction migration, which allow for amortizing, in different ways, the impact of distributed coordination on system performance. The other two proposals explicitly cope with the issue of scalability, by introducing the first genuine partial replication techniques that support abort-free read-only transactions while ensuring, respectively, One-Copy Serializability and Ex- tended Update Serializability. The core of these protocols is a distributed multi-version concurrency control algorithm, which relies on a novel logical clock synchronization mechanism to track, in a totally decentralized (and con- sequently scalable) way, both data and causal dependency relations among transactions. The trade-offs arising across the different presented solutions are also discussed and experimentally evaluated by integrating them into state of the art academic and industrial transactional platforms. i Most of the material presented in this dissertation can also be found in the following papers: 1. Sebastiano Peluso, Pedro Ruivo, Paolo Romano, Francesco Quaglia and Lu´ısRodrigues When Scalability Meets Consistency: Genuine Multiversion Update-Serializable Partial Data Replication In Proc. of the 32nd IEEE International Conference on Distributed Com- puting Systems (ICDCS), Macau, China, June 2012. 2. Sebastiano Peluso, Jo~aoFernandes, Paolo Romano, Francesco Quaglia and Lu´ısRodrigues SPECULA: Speculative Replication of Software Transactional Memory In Proc. of the 31st IEEE International Symposium on Reliable Dis- tributed Systems (SRDS), Irvine, California, USA, October 2012. 3. Sebastiano Peluso, Paolo Romano and Francesco Quaglia SCORe: a Scalable One-Copy Serializable Partial Replication Protocol In Proc. of the ACM/IFIP/USENIX 13th International Conference on Middleware (Middleware), Montr´eal,Qu´ebec, Canada, December 2012. 4. Danny Hendler, Alex Naiman, Sebastiano Peluso, Paolo Romano, Francesco Quaglia and Adi Suissa Exploiting Locality in Lease-Based Replicated Transactional Memory via Task Migration In Proc. of the 27th International Symposium on Distributed Computing (DISC), Jerusalem, Israel, October 2013. 5. Hugo Pimentel, Paolo Romano, Sebastiano Peluso and Pedro Ruivo Enhancing locality via caching in the GMU protocol In Proc. of the 14th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing (CCGrid), Chicago, IL, USA, May 2014. Contents Abstract i 1 Introduction 1 1.1 The Need for Rethinking Transactional Replication . 2 1.2 Outline of Innovative Contributions . 6 2 State of the Art 9 2.1 Primary Copy . 11 2.2 Update Everywhere . 13 2.2.1 Active Replication . 14 2.2.2 Deferred Update Replication . 16 3 Model of the Target Systems and Preliminary Definitions 21 3.1 Distributed Processes and Communication Primitives . 21 3.2 Data Model . 23 3.3 Transaction Model . 25 3.3.1 History and Direct Serialization Graph . 26 3.4 Consistency Model . 27 3.4.1 Extended Update Serializability . 28 3.4.2 Serializability . 29 3.4.3 Opacity . 30 4 Exploiting Speculation to Overlap Computation and Distributed Coordination in Fully Replicated Systems 33 4.1 Correctness Criteria . 35 4.2 The SPECULA protocol . 35 4.2.1 Protocol Overview . 35 4.2.2 High Level Software Architecture . 37 4.2.3 Speculative Execution of Transactions . 39 4.2.4 Speculative Execution of Non-Transactional Code . 48 4.2.5 Correctness Arguments . 49 4.3 Experimental Evaluation . 50 iii 5 Reducing Full Replication Costs by Leveraging Transactions Migration 55 5.1 Overview of ALC . 57 5.2 Lilac-TM ............................. 58 5.2.1 Fine-Grained Leases . 60 5.2.2 Transaction Forwarder . 63 5.2.3 Distributed Transaction Dispatching . 66 5.3 Correctness Arguments . 68 5.4 Experimental Evaluation . 69 6 Changing the Viewpoint: a Scalable Multi-Version Protocol under Genuine Partial Replication 75 6.1 The GMU protocol . 77 6.1.1 Transaction execution phase . 79 6.1.2 Transaction commit phase . 82 6.1.3 Garbage Collection . 87 6.1.4 Failure Handling and Dynamic Process Groups . 87 6.1.5 On the support for read operations . 88 6.2 Correctness Proof . 89 6.2.1 Unidirectional flow of information . 90 6.2.2 No-update-conflict-misses . 93 6.3 On the Data Freshness . 96 6.4 Experimental Evaluation . 99 7 Additional Tradeoffs in the Design of Multi-Version GPR Pro- tocols 105 7.1 The SCORe Protocol . 107 7.1.1 Overview . 107 7.1.2 Handling of Read and Write Operations . 109 7.1.3 Commit Phase . 112 7.1.4 Garbage Collection and Fault-Tolerance . 115 7.2 Correctness Proof . 115 7.3 Experimental Evaluation . 117 8 Concluding Remarks 123 Bibliography 127 Chapter 1 Introduction The explosion of web applications' usage is allowing companies to easily break the wall of national boundary, making their services available to any user in the world. On the one hand, the popularity and the productivity of those services increases significantly due to this ease and wide deployment. On the other hand, the IT systems behind these services have to face the challenge of processing an ever growing volume of requests. Despite the different types of requests, almost all workloads trigger the execution of procedures for querying (i.e., read interactions) or manipulating (i.e., write interactions) common application state. In this context, a cru- cial, and long studied, problem is handling concurrent data manipulations efficiently and preserving the consistency of application state, despite multiple simultaneous requests. Another objective is to keep the service usable, i.e. guaranteeing low user perceived latency, while yielding high service throughput. In addition, since a lot of companies and enterprises base their success on the IT market, or in general, they rely on systems for enlarging their user base, computing systems should meet dependability requirements and ensure the survival of both data and services in case of failures. Concurrent data accesses are widely managed by means of the transaction abstraction, a well established technique in Database Management Systems (DBMS) that has recently emerged also in the context of parallel program- ming via the transaction memory paradigm. In this way, applications enclose accesses on shared data, e.g. write and read operations on tables in a database, or simple objects in main memory, within the boundaries of so called transac- tions. Then the concurrency control module is responsible for ensuring that, despite their parallel activation, transactions appear as if they were executed in isolation and atomically (i.e., either all or none of a transaction's opera- tions take effect), thereby allowing only safe and consistent transitions of the 1 2 CHAPTER 1 application state [12]. On the other hand, data and service replication is a widely adopted tech- nique for dependability, and it is recognized as a practical and effective way for enhancing the availability and fault-tolerance of computer systems. User perceived latency can be reduced by exploiting application locality or by mi- grating data closer to the requests' source. Replication applied to transactional systems has been already successfully consolidated in the literature as the reference methodology for building avail- able, fault-tolerant and high performance data management systems. How- ever, current replication protocols for transactional systems do not represent a definitive solution when new requirements arise due to novelties in the ar- chitectural trends. The following Section 1.1 discusses (i) the most relevant trends currently driving the process of reorganizing the architecture of transac- tional systems and (ii) the major shortcoming of state of the art transactional replication protocols in combination with these new trends. 1.1 The Need for Rethinking Transactional Repli- cation During the
Recommended publications
  • A View-Based Approach to Relaxing Global Serializability in Multidatabase Systems
    Purdue University Purdue e-Pubs Department of Computer Science Technical Reports Department of Computer Science 1993 A View-Based Approach to Relaxing Global Serializability in Multidatabase Systems Aidong Zhang Evaggelia Pitoura Bharat K. Bhargava Purdue University, [email protected] Report Number: 93-082 Zhang, Aidong; Pitoura, Evaggelia; and Bhargava, Bharat K., "A View-Based Approach to Relaxing Global Serializability in Multidatabase Systems" (1993). Department of Computer Science Technical Reports. Paper 1095. https://docs.lib.purdue.edu/cstech/1095 This document has been made available through Purdue e-Pubs, a service of the Purdue University Libraries. Please contact [email protected] for additional information. A VIEW-BASED APPROACH TO RELAXING GLOBAL SERIALIZABILITY IN MULTIDATABASE SYSTEMS Aldong Zhang Evaggelia PitOUI'3 Bharat Bh:Jrgava CSD TR-9J.082 December 1993 (Revised March 1994) A View-Based Approach to Relaxing Global Serializability in Multidatabase Systems Aidong Zhang, Evaggelia Pitoura, and Bharat K Bhargava Department of Computer Science Purdue University West Lafayette, IN 47907 USA Abstract In this paper, we propose a new approach to ensuring the correctness of non­ serializable executions. The approach is based on relating transaction views of the database to the integrity constraints of the system. Drawing upon this approach, we de­ velop a new correctness criterion for multidatabase concurrency control. This criterion, caUed view-based two-level serializability, relaxes global serializabitity in multidatabase systems while respecting the autonomy of local database systems. No additional re­ strictions other than serializallility are imposed on local database systems. 1 Introduction A Illultidataba.-<;e system (MDBS) is a higher-level confederation of a nWllber of pre-existing autonomolls and possibly heterogeneous database systems.
    [Show full text]
  • Concurrency Control Basics
    Outline l Introduction/problems, l definitions Introduction/ (transaction, history, conflict, equivalence, Problems serializability, ...), Definitions l locking. Chapter 2: Locking Concurrency Control Basics Klemens Böhm Distributed Data Management: Concurrency Control Basics – 1 Klemens Böhm Distributed Data Management: Concurrency Control Basics – 2 Atomicity, Isolation Synchronisation, Distributed (1) l Transactional guarantees – l Essential feature of databases: in particular, atomicity and isolation. Many users can access the same data concurrently – be it read, be it write. Introduction/ l Atomicity Introduction/ Problems Problems u Example, „bank scenario“: l Consistency must be guaranteed – Definitions Definitions task of synchronization component. Locking Number Person Balance Locking Klemens 5000 l Multi-user mode shall be hidden from users as far as possible: concurrent processing Gunter 200 of requests shall be transparent, u Money transfer – two elementary operations. ‚illusion‘ of being the only user. – debit(Klemens, 500), – credit(Gunter, 500). l Isolation – can be explained with this example, too. l Transactions. Klemens Böhm Distributed Data Management: Concurrency Control Basics – 3 Klemens Böhm Distributed Data Management: Concurrency Control Basics – 4 Synchronisation, Distributed (2) Synchronization in General l Serial execution of application programs Uncontrolled non-serial execution u achieves that illusion leads to other problems, notably inconsistency: l Introduction/ without any synchronization effort, Introduction/
    [Show full text]
  • Serializability, Not Serial: Concurrency Control and Availability in Multi-Datacenter Datastores
    Serializability, not Serial: Concurrency Control and Availability in Multi-Datacenter Datastores Stacy Patterson1 Aaron J. Elmore2 Faisal Nawab2 Divyakant Agrawal2 Amr El Abbadi2 1Department of Electrical Engineering 2Department of Computer Science Technion - Israel Institute of Technology University of California, Santa Barbara Haifa, 32000, Israel Santa Barbara, CA 93106 [email protected] faelmore,nawab,agrawal,[email protected] ABSTRACT create applications within the eventual consistency model We present a framework for concurrency control and avail- [21]. Many cloud providers then introduced support for ability in multi-datacenter datastores. While we consider atomic access to individual data items, in essence, provid- Google's Megastore as our motivating example, we define ing strong consistency guarantees. This consistency level general abstractions for key components, making our solu- has become a standard feature that is offered in most cloud tion extensible to any system that satisfies the abstraction datastore implementations, including BigTable, SimpleDB, properties. We first develop and analyze a transaction man- and Apache HBase [17]. Strong consistency of single data agement and replication protocol based on a straightforward items is sufficient for many applications. However, if several implementation of the Paxos algorithm. Our investigation data items must be updated atomically, the burden to imple- reveals that this protocol acts as a concurrency prevention ment this atomic action in a scalable, fault tolerant manner mechanism rather than a concurrency control mechanism. lies with the software developer. Several recent works have We then propose an enhanced protocol called Paxos with addressed the problem of implementing ACID transactions Combination and Promotion (Paxos-CP) that provides true in cloud datastores [3, 11, 12], and, while full transaction transaction concurrency while requiring the same per in- support remains a scalability challenge, these works demon- stance message complexity as the basic Paxos protocol.
    [Show full text]
  • A Study of the Availability and Serializability in a Distributed Database System
    A STUDY OF THE AVAILABILITY AND SERIALIZABILITY IN A DISTRIBUTED DATABASE SYSTEM David Wai-Lok Cheung B.Sc., Chinese University of Hong Kong, 1971 M.Sc., Simon Fraser University, 1985 A THESIS SUBMI'ITED IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF DOCTOR OF PHLLOSOPHY , in the School of Computing Science 0 David Wai-Lok Cheung 1988 SIMON FRASER UNIVERSITY January 1988 All rights reserved. This thesis may not be reproduced in whole or in part, by photocopy or other means, without permission of the author. 1 APPROVAL Name: David Wai-Lok Cheung Degree: Doctor of Philosophy Title of Thesis: A Study of the Availability and Serializability in a Distributed Database System Examining Committee: Chairperson: Dr. Binay Bhattacharya Senior Supervisor: Dr. TikoJameda WJ ru p v Dr. Arthur Lee Liestman Dr. Wo-Shun Luk Dr. Jia-Wei Han External Examiner: Toshihide Ibaraki Department of Applied Mathematics and Physics Kyoto University, Japan Bate Approved: January 15, 1988 PARTIAL COPYRIGHT LICENSE I hereby grant to Simon Fraser University the right to lend my thesis, project or extended essay (the title of which is shown below) to users of the Simon Fraser University Library, and to make partial or single copies only for such users or in response to a request from the library of any other university, or other educational institution, on its own behalf or for one of its users. I further agree that permission for multiple copying of this work for scholarly purposes may be granted by me or the Dean of Graduate Studies. It is understood that copying or publication of this work for financial gain shall not be allowed without my written permission, T it l e of Thes i s/Project/Extended Essay Author: (signature) ( name (date) ABSTRACT Replication of data objects enhances the reliability and availability of a distributed database system.
    [Show full text]
  • A Theory of Global Concurrency Control in Multidatabase Systems
    VLDB Journal,2, 331-360 (1993), Michael Carey and Patrick Valduriez, Editors 331 t~)VLDB A Theory of Global Concurrency Control in Multidatabase Systems Aidong Zhang and Ahmed K. Elmagarmid Received December 1, 1992; revised version received February 1, 1992; accepted March 15, 1993. Abstract. This article presents a theoretical basis for global concurrency control to maintain global serializability in multidatabase systems. Three correctness criteria are formulated that utilize the intrinsic characteristics of global transactions to de- termine the serialization order of global subtransactions at each local site. In par- ticular, two new types of serializability, chain-conflicting serializability and shar- ing serializability, are proposed and hybrid serializability, which combines these two basic criteria, is discussed. These criteria offer the advantage of imposing no restrictions on local sites other than local serializability while retaining global se- rializability. The graph testing techniques of the three criteria are provided as guidance for global transaction scheduling. In addition, an optimal property of global transactions for determinating the serialization order of global subtransac- tions at local sites is formulated. This property defines the upper limit on global serializability in multidatabase systems. Key Words. Chain-conflicting serializability, sharing serializability, hybrid serial- izability, optimality. 1. Introduction Centralized databases were predominant during the 1970s, a period which saw the development of diverse database systems based on relational, hierarchical, and network models. The advent of applications involving increased cooperation between systems necessitated the development of methods for integrating these pre-existing database systems. The design of such global database systems must allow unified access to these diverse database systems without subjecting them to conversion or major modifications.
    [Show full text]
  • Models of Transactions Structuring Applications Flat Transaction Flat
    Structuring Applications • Many applications involve long transactions Models of Transactions that make many database accesses • To deal with such complex applications many transaction processing systems Chapter 19 provide mechanisms for imposing some structure on transactions 2 Flat Transaction Flat Transaction • Consists of: begin transaction – Computation on local variables • Abort causes the begin transaction • not seen by DBMS; hence will be ignored in most future discussion execution of a program ¡£ ¤¦©¨ – Access to DBMS using call or ¢¡£ ¥¤§¦©¨ that restores the statement level interface variables updated by the ¡£ ¤¦©¨ • This is transaction schedule; commit ….. applies to these operations ¢¡£ ¤§¦©¨ ….. transaction to the state • No internal structure they had when the if condition then abort • Accesses a single DBMS transaction first accessed commit commit • Adequate for simple applications them. 3 4 Some Limitations of Flat Transactions • Only total rollback (abort) is possible – Partial rollback not possible Providing Structure Within a • All work lost in case of crash Single Transaction • Limited to accessing a single DBMS • Entire transaction takes place at a single point in time 5 6 1 Savepoints begin transaction S1; Savepoints Call to DBMS sp1 := create_savepoint(); S2; sp2 := create_savepoint(); • Problem: Transaction detects condition that S3; requires rollback of recent database changes if (condition) {rollback (sp1); S5}; S4; that it has made commit • Solution 1: Transaction reverses changes • Rollback to spi causes
    [Show full text]
  • CS848 - Cloud Data Management
    Cloud Transactions Failures Partitioning Replication CAP Views CS848 - Cloud Data Management Introduction and Background Ken Salem David R. Cheriton School of Computer Science University of Waterloo Winter 2010 • Adjectives associated with clouds • scalable • highly-available • pay-as-you-go • on demand • Not much point in trying to pin down what is cloud and what is not. Cloud Transactions Failures Partitioning Replication CAP Views What is cloud computing? • It seems that everybody who is offering an internet service or using a cluster wants to label themselves “cloud” • Not much point in trying to pin down what is cloud and what is not. Cloud Transactions Failures Partitioning Replication CAP Views What is cloud computing? • It seems that everybody who is offering an internet service or using a cluster wants to label themselves “cloud” • Adjectives associated with clouds • scalable • highly-available • pay-as-you-go • on demand Cloud Transactions Failures Partitioning Replication CAP Views What is cloud computing? • It seems that everybody who is offering an internet service or using a cluster wants to label themselves “cloud” • Adjectives associated with clouds • scalable • highly-available • pay-as-you-go • on demand • Not much point in trying to pin down what is cloud and what is not. Cloud Transactions Failures Partitioning Replication CAP Views Services Spectrum less flexible more flexible more constrained less constrained less effort more effort Cloud Transactions Failures Partitioning Replication CAP Views Services Spectrum less
    [Show full text]
  • Life Beyond Distributed Transactions: an Apostate's Opinion
    Life beyond Distributed Transactions: an Apostate’s Opinion Position Paper Pat Helland Amazon.Com 705 Fifth Ave South Seattle, WA 98104 USA [email protected] The positions expressed in this paper are Instead, applications are built using different personal opinions and do not in any way reflect techniques which do not provide the same the positions of my employer Amazon.com. transactional guarantees but still meet the needs of their businesses. ABSTRACT This paper explores and names some of the practical approaches used in the implementations Many decades of work have been invested in the of large-scale mission-critical applications in a area of distributed transactions including world which rejects distributed transactions. We protocols such as 2PC, Paxos, and various discuss the management of fine-grained pieces of approaches to quorum. These protocols provide application data which may be repartitioned over the application programmer a façade of global time as the application grows. We also discuss serializability. Personally, I have invested a non- the design patterns used in sending messages trivial portion of my career as a strong advocate between these repartitionable pieces of data. for the implementation and use of platforms The reason for starting this discussion is to raise providing guarantees of global serializability. awareness of new patterns for two reasons. First, My experience over the last decade has led me to it is my belief that this awareness can ease the 1 liken these platforms to the Maginot Line . In challenges of people hand-crafting very large general, application developers simply do not scalable applications. Second, by observing the implement large scalable applications assuming patterns, hopefully the industry can work distributed transactions.
    [Show full text]
  • A Theory of Global Concurrency Control in Multidatabase Systems
    Purdue University Purdue e-Pubs Department of Computer Science Technical Reports Department of Computer Science 1992 A Theory of Global Concurrency Control in Multidatabase Systems Aidong Zhang Ahmed K. Elmagarmid Purdue University, [email protected] Report Number: 92-098 Zhang, Aidong and Elmagarmid, Ahmed K., "A Theory of Global Concurrency Control in Multidatabase Systems" (1992). Department of Computer Science Technical Reports. Paper 1017. https://docs.lib.purdue.edu/cstech/1017 This document has been made available through Purdue e-Pubs, a service of the Purdue University Libraries. Please contact [email protected] for additional information. A THEORY OF GLOBAL CONCURRENCY CONTROL IN MULTIDATABASE SYSTEMS Aidong Zhang Ahmed K. Elmagarmid CSD·TR-92-098 December 1992 A Theory of Global Concurrency Control in Multidatabase Systems • Aidong Zhang and Ahmed K. Elmagarmid Department of Computer Science Purdue University West Lafayette, IN 47907 USA {azhang,ake}@cs.purdue.edu Abstract This paper presents a theoretical basis for global concurrency control to maintain global serializability in multidatabase systems. Three correctness criteria are formulated to utilize the intrinsic characteristics of global transactions at the global level to determine the serialization order of global subtransactions at each local site. In particular, two new types of serializabiIity, chain-conflicting serializability and sharing serializability, are proposed, and an optimal criterion (termed hybrid serializability) combining these two basic criteria is discussed. These criteria offer the advantage of imposing no restrictions on local sites other than local serializability while retaining global serializability. The graph testing techniques of the three criteria are provided as guidance for global transaction scheduling. In addition, the optimal aspect of hybrid serializability defines the upper limit on global serializability in multidatabase systems.
    [Show full text]
  • Transaction Properties(ACID Properties)
    UNIT-5 Transaction properties(ACID properties) In computer science, ACID (Atomicity, Consistency, Isolation, Durability) is a set of properties that guarantee that database transactions are processed reliably. In the context ofdatabases, a single logical operation on the data is called a transaction. For example, a transfer of funds from one bank account to another, even involving multiple changes such as debiting one account and crediting another, is a single transaction. Jim Gray defined these properties of a reliable transaction system in the late 1970s and developed technologies to achieve them automatically. In 1983, Andreas Reuter and Theo Härder coined the acronym ACID to describe them. The characteristics of these four properties as defined by Reuter and Härder: Atomicity Atomicity requires that each transaction be "all or nothing": if one part of the transaction fails, the entire transaction fails, and the database state is left unchanged. An atomic system must guarantee atomicity in each and every situation, including power failures, errors, and crashes. To the outside world, a committed transaction appears (by its effects on the database) to be indivisible ("atomic"), and an aborted transaction does not happen. Consistency The consistency property ensures that any transaction will bring the database from one valid state to another. Any data written to the database must be valid according to all defined rules, including constraints, cascades, triggers, and any combination thereof. This does not guarantee correctness of the transaction in all ways the application programmer might have wanted (that is the responsibility of application-level code) but merely that any programming errors cannot result in the violation of any defined rules.
    [Show full text]
  • 4. Distributed Concurrency Control 4
    SS 2013 4. Distributed Concurrency Control 4. 4. Distributed Concurrency Control General reference architecture. Federated system Dr.-Ing. Thomas Hornung SS 2013 Seite 1 SS 2013 4. Distributed Concurrency Control 4.1. Preliminaries 4.1: Preliminaries Sites and subtransactions I Let be given a fixed number of sites across which the data is distributed. The server at site i, 1 ≤ i ≤ n is responsible for a (finite) set Di of data items. The n corresponding global database is given as D = [i=1Di . I Data items are not replicated; thus Di \ Dj = ;, i 6= j. I Let T = fT1;:::; Tmg be a set of transactions, where Ti = (OPi ; <i ), 1 ≤ i ≤ m. I Transaction Ti is called global, if its actions are running at more than one server; otherwise it is called local. I The part of a transaction Ti being executed at a certain site j is called subtransaction and is denoted by Tij . Dr.-Ing. Thomas Hornung SS 2013 Seite 2 SS 2013 4. Distributed Concurrency Control 4.1. Preliminaries Local and global schedules We are interested in deciding whether or not the execution of a set of transactions is serializable, or not. I At the local sites we can observe an evolving sequence of the respective transactions' actions. I We would like to decide whether or not all these locally observable sequences imply a (globally) serializable schedule. I However, on the global level we cannot observe an evolving sequence, as there does not exist a notion of global physical time. Dr.-Ing. Thomas Hornung SS 2013 Seite 3 SS 2013 4.
    [Show full text]
  • Chapter 24: Advanced Transaction Processing
    ChapterChapter 24:24: AdvancedAdvanced TransactionTransaction ProcessingProcessing ! Transaction-Processing Monitors ! Transactional Workflows ! High-Performance Transaction Systems ! Main memory databases ! Real-Time Transaction Systems ! Long-Duration Transactions ! Transaction management in multidatabase systems 1 Database System Concepts 24.1 ©Silberschatz, Korth and Sudarshan TransactionTransaction ProcessingProcessing MonitorsMonitors ! TP monitors initially developed as multithreaded servers to support large numbers of terminals from a single process. ! Provide infrastructure for building and administering complex transaction processing systems with a large number of clients and multiple servers. ! Provide services such as: ! Presentation facilities to simplify creating user interfaces ! Persistent queuing of client requests and server responses ! Routing of client messages to servers ! Coordination of two-phase commit when transactions access multiple servers. ! Some commercial TP monitors: CICS from IBM, Pathway from Tandem, Top End from NCR, and Encina from Transarc 2 Database System Concepts 24.2 ©Silberschatz, Korth and Sudarshan TPTP MonitorMonitor ArchitecturesArchitectures 3 Database System Concepts 24.3 ©Silberschatz, Korth and Sudarshan TPTP MonitorMonitor ArchitecturesArchitectures (Cont.)(Cont.) ! Process per client model - instead of individual login session per terminal, server process communicates with the terminal, handles authentication, and executes actions. ! Memory requirements are high ! Multitasking- high
    [Show full text]