T S O TimeStamp Ordering Concurrency Control Protocols
T S O TimeStamp Ordering Concurrency Control Protocols In Distributed DataBase Systems 2PL TSO CSC536 Barton Price 5/2/2006 CSC 336 Final Presentation 1 Table of Contents Introduction: Background: DDBMS architecture, transaction
5/2/2006 processing, concurrency control. Classic TSO protocols: 1981state of the art. TSO performance: TSO vs. 2PL performance. TSO today: new view on TSO performance; New uses of TSO in DDBMSs. Conclusions: topic summary. References: references in appearance order. CSC 336 Final Presentation 2 1. INTRODUCTION Is the TSO protocol a viable option in Concurrency Control (CC) for DDBSs? Our 02/14 reading -RTDBSs Mobile Agent Model
for Quite areading few of- our CSC536 had Our 04/11 and readings Data Services Our 04/18 reading Study of CC in(Komiya RT, 2003) states: Transaction Processing in2004) DDBDs discussed (or DiPippo, at- A least mentioned) (Ramamritham,
Son, - states: CC, but only 3 Active DBSs (Datta & Son 2002) -either mentions that The traditional approaches are using a 2-phase papers mentioned the TimeStamp (TSO) For conflict-resolution in RTDBs various time-cognizant OCC-TI,
(a Timestamp variant of Optimistic CC locking protocol (2PL), or using timestamp-ordering extensions of two-phase locking (2PL), optimistic and a approach in CC, and neither of them presented protocolbased on
Dynamic Adjustment of (TSO) --- However, their have proposed method uses a timestamp-based protocols been proposed Serialization Order)CC is shown to perform very study ofapproach. TSO algorithms. blocking well - they compare it in simulation experiments to 2PL-HP (2PL-High-Priority), WAIT-50, and their proposed OCC-APFO (Adaptive Priority Fan Out Optimistic protocol) 5/2/2006 CSC 336 Final Presentation
3 2. BACKGROUND 2.1 Distributed DataBase Systems Architecture A distributed database (DDB) is a collection of multiple, logically interrelated databases distributed over a computer network. A distributed database management system (DDBMS) is the software that manages the DDB and provides an access mechanism that makes this distribution transparent to the users. Distributed database system: (DDBS) = DDBs + DDBMS. 5/2/2006 CSC 336 Final Presentation 4 BACKGROUND cont 2.1 Distributed DataBase Systems Architecture Difference between a Centralized DBMS and a Distributed DBMS Environment
Centralized DBMS on a Network Distributed DBMS Environment 5/2/2006 CSC 336 Final Presentation 5 BACKGROUND cont 2.2 Transaction Processing In DDBSs A transaction is a collection of actions that make transformations of system states while preserving system consistency. Transaction processing has to ensure: Concurrency transparency Failure transparency 5/2/2006 CSC 336 Final Presentation 6 BACKGROUND cont 2.3 Concurrency Control (CC)
CC = coordinating concurrent accesses to data while preserving concurrency transparency. Main Difficulty = preventing DB updates (writes) by one user, from interfering with DB retrievals (reads) or updates (writes) performed by another. w/o CC in place: problems like lost updates and inconsistent retrievals. CC in DDBSs = harder than in a Centralized DBS: Users may access data stored in many different nodes. A CC mechanism running at one node cannot instantly know the interactions at other nodes. 5/2/2006 CSC 336 Final Presentation 7 BACKGROUND cont 2.3 Concurrency Control (CC) cont In Centralized DBMSs, CC is well understood. Studies started in early 1970's; By the end of the 1970s, the Two-Phase Locking (2PL) approach (based on critical sections) has been accepted as the standard solution.
In DDBS, CC choice was still debated in the early 80's, and a large number of algorithms was proposed. Bernstein & Goodman (1981) surveyed the state of the art in DDBMS CC, presenting 48 CC methods. Structure and correctness of the algorithms; Little emphasis on performance issues. Introduce standard terminology for DDBMS CC algorithms and standard model for the DDBMS. 5/2/2006 CSC 336 Final Presentation 8 BACKGROUND : Concurrency Control (CC) cont 2.3.1 DDBMS model Each site in a DDBMS is a computer running: A transaction manager (TM), and A data manager (DM) Correctness criteria of a CC alg.: The users expect that: each transaction submitted will eventually be executed; the computation performed by each transaction
will be the same whether it executes alone (in a dedicated system), or in parallel with other transactions in a multiprogrammed system. 5/2/2006 CSC 336 Final Presentation 9 BACKGROUND : Concurrency Control (CC) cont 2.3.1 DDBMS model cont A DDBMS has four components: Transactions, TMs, DMs, and data. There are 4 operations defined in interface between the Transaction (T) and the TM. BEGIN: The TM creates a private workspace for T. READ(X): Data item X is read WRITE(X, new-value): X in T's private workspace is updated to new-value END: Two-phase commit (2PC) takes place, and T's execution is finished. 5/2/2006 CSC 336 Final Presentation
10 BACKGROUND : Concurrency Control (CC) cont 2.3.1 CC Problem Decomposition Serializability: An execution is serializable if it is computationally equivalent to a non-concurrent, serial execution. CC problem = decomposed into 2 sub-problems (B&G): Read-write synchronization (rw) and Write-write synchronization (ww) Only 2 types of operations access the stored data: dm-read and dm-write. Two operations conflict if: They operate on the same data item and one is dm-write. The conflicts are either rw, or ww. B&G determined that all the algorithms that they examined were variations of only 2 basic techniques: 2phase locking (2PL) & timestamp ordering (TSO). 5/2/2006 CSC 336 Final Presentation 11
3. CLASSIC TSO PROTOCOLS 5/2/2006 In Timestamp Ordering (TSO): The serialization order is selected a priori. Transaction execution is forced to obey this order. Each transaction is assigned a unique timestamp (Ts) by its TM. The TM attaches the Ts to all dm-reads and dm-writes issued on behalf of the transaction. DMs process conflicting operations in Ts order. The timestamp of operation O is denoted ts(O). CSC 336 Final Presentation 12 3. Classic TSO Protocols - cont
RW and WW Conflicts: For rw synchronization 2 operations conflict if: For ww synchronization 2 operations conflict if: Both operate on the same data item, and Both operate on the same data item, and One is a dm-read and the other is a dm-write Both are dm-writes. 5/2/2006 CSC 336 Final Presentation 13 3. Classic TSO Protocols - cont 3.1 Basic TSO Implementation
An implementation of TSO needs: a TSO scheduler (S), a software module that receives dm-reads and dmwrites and outputs these operations according to the TSO rules. In DDBMSs, for the 2-phase commit (2PC) to work properly, prewrites must also be processed through the TSO scheduler. The basic TSO implementation distributes the schedulers along with the database. In centralized DBMSs, the 2PC can be ignored, and thus the basic TSO scheduler is very simple: At each DM, and for each data item x stored at the DM, the scheduler records the largest timestamp of any dm-read(x) or dm-write(x) that has been processed. 5/2/2006 CSC 336 Final Presentation 14 3. Classic TSO Protocols - cont 3.1 Basic TSO Implementation cont In Distributed DBMSs, 2PC is incorporated by timestamping prewrites and accepting / rejecting prewrites
instead of dm-writes. Once the scheduler (S) accepts a prewrite, it must guarantee to accept its corresponding dm-write. RW (or WW) synchronization: once S accepts a prewrite(x) with stamp TS, and until its corresponding dm-write(x) is output, S must not output any dm-read(x) or dm-write(x) with a timestamp newer than TS. The effect is similar to setting a write-lock on data item x for the duration of two-phase commit. To implement the above rules, S buffers dm-reads, dm-writes, and prewrites. 5/2/2006 CSC 336 Final Presentation 15 3. Classic TSO Protocols - cont 3.1 Basic TSO Implementation The Algorithm Let min-r-ts(x) be the min. TS of buffered dm-reads, and let min-w-ts(x), min-p-ts(x) be defined analogously. RW synchronization:
Let R be a dm-read(x). If ts(r) < w-ts(x), R is rejected. Else if ts(r) > min-p-ts(x), R is buffered. Else R is output. Let P be a prewrite(x). If ts(p) < r-ts(x), P is rejected. Else P is buffered. Let W be a dm-write(x). W is never rejected. If ts(w) > min-r-ts(x), W is buffered. Else W is output, and the corresponding prewrite is de-buffered*. 5/2/2006 CSC 336 Final Presentation 16 3. Classic TSO Protocols - 3.1 Basic TSO Implementation cont Buffer emptying for basic T/O rw synchronization 5/2/2006 CSC 336 Final Presentation
17 3. Classic TSO Protocols - 3.1 Basic TSO Implementation cont - Author's note Typo in the previous pseudo-code figure?: The pseudocode given for when a R-operation is ready is as follows: R is ready if it precedes the earliest prewrite request: if ts(r) < min-p-ts(x) I found that the following modification is needed: R is ready if <= the earliest prewrite request: if ts(r) <= min-p-ts(x) 5/2/2006 CSC 336 Final Presentation 18 3. Classic TSO Protocols - 3.1 Basic TSO Implementation cont -- Author's note (cont) -- Test case Time: 4
Op: P DI: 0 DIVal: 4 Time: 6 Op: P DI: 0 DIVal: 6 Time: 5 Op: R DI: 0 Time: 5 Op: P DI: 0
AsTime: I expected, the output only 6 Op: W DI:shows 0 transaction DIVal: 4 being executed, even if logically I would6 expect transactions 5 and 6 to succeed as well. 5/2/2006 CSC 336 Final Presentation 19 3. Classic TSO Protocols - 3.1 Basic TSO Implementation cont -- Author's note (cont) -Therefore, I made the following correction to the source code: R is ready if it precedes the earliest prewrite request: if ts(R) <= min-P-ts(x) New Output: Time: 4 Op: W DIVal: 4 SUCCESS No_Conflict Time: 5 Op: R DIVal: 4 SUCCESS RW_Conflict
Time: 5 Op: W DIVal: 5 SUCCESS RW_Conflict Time: 6 Op: W DIVal: 6 SUCCESS No_Conflict 5/2/2006 CSC 336 Final Presentation 20 3. Classic TSO Protocols - 3.1 Basic TSO Implementation cont RW synchronization: Let P be a prewrite(x). if ts(p) < w-ts(x), P is rejected; else P is buffered. Let W be a dm-write(x). W is never rejected. if ts(w) > min-p-ts(x), W is buffered; else W is output. When W is output, the corresponding prewrite is debuffered. If min-p-ts(x) increased, buffered dm-writes are retested to see if any can now be output. 5/2/2006 CSC 336 Final Presentation
21 3.2 The Thomas Write Rule (TWR) Basic TSO can be optimized for ww-synch. using TWR: Let W be a dm-write(x), and suppose ts(W) < W-ts(x). Instead of rejecting W, it can simply be ignored. TWR applies to dm-writes that try to place obsolete data into the DB. TWR guarantees that applying a set of dm-writes to x has identical effect as if the dm-writes were applied in TS order. If TWR is used, there is no need to incorporate 2PC into the ww-synchronization algorithm; the ww-scheduler always accepts prewrites and never buffers dm-writes. 5/2/2006 CSC 336 Final Presentation 22 3.3 Multiversion TSO Basic TSO can be improved for rw-synch. using multiversion data items. For each data item x there is a set of r-ts's and a
set of (w-ts, value) pairs, called Versions. The r-ts's of x, record the TSs of all executed dm-read(x) operations, and the Versions, record the TSs and values of all executed dm-write(x) operations. In practice one cannot store r-ts's and versions forever; Techniques for deleting old versions and timestamps are needed. 5/2/2006 CSC 336 Final Presentation 23 3.4 Conservative TSO Eliminates restarts during TSO scheduling. Requires that each scheduler receive dm-reads (or dm-writes) from each TM in TS-order. Since the network is assumed FIFO, this ordering is accomplished requiring TMs to send dm-reads (or dm-writes) to Schedulers in TS- order. It buffers dm-reads and dm-writes as part of its normal operation. When a scheduler buffers an operation, it remembers the TM that sent it. 5/2/2006 CSC 336 Final Presentation
24 3.5 Timestamp Management Common critique of TSO schedulers: Too much memory is needed to store timestamps. This can be overcome by "forgetting" old timestamps. Timestamps (TSs) are used in Basic-TSO to reject operations that "arrive late; for example, a dmread(x) with stamp TS1, is rejected if it arrives after a dm-write(x) with stamp TS2, where TS1< TS2. In principle, TS1 and TS2 differ by arbitrary amount, In practice it is unlikely that TSs will differ more than a few minutes. Consequently, TSs can be stored in small tables that are periodically purged. 5/2/2006 CSC 336 Final Presentation 25 3.5 Timestamp Management cont R-ts's are stored in R-table entries of form (x, R-ts(x)); [for
any data item x, there is at most one entry]. A variable R-min tells the maximum value of any TS that has been purged from the table. To update R-ts(x), the S modifies the (x, R-ts(x)) entry in the table, if one exists. Otherwise, a new entry is created. When the R-table is full, the S selects an appropriate value for R-min and deletes all entries from the table with smaller timestamp. The W-ts's are managed similarly; Analogous techniques can be devised for Multiversion TSO databases Maintaining TSs for Conservative TSO is even cheaper, since it requires only timestamped operations, not also timestamped data. 5/2/2006 CSC 336 Final Presentation 26 3.6 Integrated CC Methods An integrated CC method consists of: two components ( rw and ww synchronization technique) an interface between the components to ensure serializability. Bernstein & Goodman list 48 CC methods that can be constructed combining the synchronization techniques
using 2pl and/or TSO techniques, thus: Pure 2PL methods, Pure TSO methods, or Methods that combine 2PL and TSO techniques. This presentation discusses only the pure TSO techniques. 5/2/2006 CSC 336 Final Presentation 27 3.6 Integrated CC Methods cont Pure TSO Method RW technique 5/2/2006 WW technique 1 Basic T/O Basic T/O
4. TSO PERFORMANCE Main performance metrics for CC algorithms: system throughput transaction response time 4 cost factors influence these metrics: inter-site communication local processing transaction restarts transaction blocking The impact of each cost factor varies depending on algorithm, system, and application type. B&G state at the time they wrote their paper in 1981: "impact detail is not understood yet, and a comprehensive quantitative analysis is beyond the state of the art". 5/2/2006 CSC 336 Final Presentation 29
4. TSO PERFORMANCE cont Since 1981 more research was done in Distributed CC Performance. Carey & Livny (1988), studied performance for 4 algorithms - Distributed 2PL, Wound-Wait (WW), Basic TSO (BTO), and a Distributed Optimistic algorithm (OPT). They: Examined for various degrees of contention, distributedness of the workload, and data replication. Found that 2PL and OPT dominated BTO and WW. Concluded that Optimistic Locking (where transactions lock remote copies of data only as they enter into the commit protocol, at the risk of end-of-transaction deadlocks), is the best performer in replicated DBs where messages are costly. 5/2/2006 CSC 336 Final Presentation 30 5. TSO TODAY Until recently, TSO was viewed as the black sheep of the family of CC algorithms. This seems to be changing Nrvg at al. (1997), present a simulation study to examine the performance and response-times for two
CC algorithms, TSO and 2PL. Their results show the following: For mix of shorts/long transactions (Ts), the throughput is significantly higher for TSO than for the 2PL scheduler. For short Ts, the performance is almost identical. For long Ts, 2PL performs better. The authors comment: TSO throughput was not expected to be higher than 2PL! (most previous studies used centralized DBs) In tests done using the centralized ver. of the simulator, 2PL performed indeed better than TSO in most cases. 5/2/2006 CSC 336 Final Presentation 31 5. TSO TODAY cont Srinivasa et al.(2001) takes a new look at the TSO CC. They state that during the 80's and the 90's, the popular conception has been that TSO techniques like Basic-TSO (BTO) perform poorly compared to dynamic 2PL (D-2PL) that is because previous studies concentrated on centralized DBs and
low data contention scenarios. This is mainly due to BTOs high reject rate (thus, high restart rate) that causes it to reach hardware resources limits. But, todays processors are faster and workload characteristics have changed. The authors show that BTOs performance is much better than D2PLs for a wide range of conditions, especially for high data contention. D-2PL outperforms BTO only when both data contention and message latency are low. Increasing throughput demands make high data contention important, and BTO becomes an attractive choice for concurrency control. 5/2/2006 CSC 336 Final Presentation 32 5. TSO TODAY cont 5.1 New TSO Uses Pacitti et al. (1999, 2001), proposed refreshment algorithms (using TSO). address the central problem of maintaining replicas consistency in a lazy master replicated system. In their related work section they also mention other relatively recent work where the authors
propose 2 new lazy update protocols, also based on timestamp ordering 5/2/2006 CSC 336 Final Presentation 33 5. TSO TODAY: 5.1 New TSO Uses cont Jensen & Lomet (2001), provide a new approach to transaction timestamping, both for Time Choice of the timestamp (TS), as well as for the CC protocol (combined with 2PL) Their CC method combines TSO with 2PL They delay the choice of a transactions TS, until the moment when the TS is needed by a statement in the transaction, or until the transaction commits. They chose to delay choosing the TS because the classical approach of forcing the choice of the TS at transactionstart increases the chances that TS consistency checking will fail, resulting thus in aborts. 5/2/2006 CSC 336 Final Presentation
34 6. CONCLUSION This presentation discussed the Timestamp Ordering (TSO) Concurrency Control (CC), from its beginnings (70's) to present time (2000's). The classic TSO methods were described thoroughly by Bernstein & Goodman a 1981 survey of the state of the art in DDBMS CC. B&G design a system model and define terminology and concepts for a variety of CC algorithms. They define the concept of decomposition of CC algorithms into read-write and write-write synchronization sub-algorithms. They do not focus on performance. Main CC Performance metrics are: System Throughput Transaction Response Time 5/2/2006 CSC 336 Final Presentation 35 6. CONCLUSION cont As it was foreseen in the Bernstein & Goodman
1981 survey, many studies about the performance of CC algorithms were performed since then (e.g., 1988, 1997, and 2001 previously mentioned in this presentation). Even if in the 1970's and 1980's TSO was viewed as the black sheep of the family of CC algorithms from the point of view of performance, this view is changing today, due to recent conclusions that TSO actually performs better in many situations in today's DDBMSs. 5/2/2006 CSC 336 Final Presentation 36 7. REFERENCES  T. Komiya, H. Ohshida, M. Takizawa. Mobile Agent Model for Transaction Processing in Distributed Database Systems - Information Sciences, v. 154, issue 1-2, Aug 2003.  R. Ramakrishnan, J. Gehrke. Database Management Systems - McGraw Hill, 2003. Chapter 22 (Parallel And Distributed Databases)  A. Tanenbaum, M. van Steen, Distributed Systems:
Principles and Paradigms - Prentice-Hall, 2002. Chapters 1,2 and 5.  Philip A. Bernstein, Nathan Goodman, Concurrency Control in Distributed Database Systems - ACM Computing Surveys (CSUR) Volume 13, Issue 2, June 1981. 5/2/2006 CSC 336 Final Presentation 37 7. REFERENCES cont  Michael J. Carey, Miron Livny, Distributed Concurrency Control Performance: A Study of Algorithms, Distribution, and Replication, Fourteenth International Conference on Very Large DataBases (VLDB), August 29 - September 1, 1988, Los Angeles, California, USA, Proceedings.  Kjetil Nrvg, Olav Sandst, and Kjell Bratbergsengen, Concurrency Control in Distributed Object-Oriented Database Systems, Advances in Databases and Information Systems, 1997 5/2/2006
CSC 336 Final Presentation 38 7. REFERENCES cont  Rashmi Srinivasa, Craig Williams, Paul F. Reynolds Jr., A New Look at Timestamp Ordering Concurrency Control - Database and Expert Systems Applications: 12th International Conference, DEXA 2001 Munich, Germany, September 3-5, 2001, Proceedings  Jensen, C., and Lomet, D., Transaction timestamping in (temporal) databases - VLDB Conference, Rome, Italy in Sept. 2001 and available at ftp://ftp.research.microsoft.com/users/lomet/pub/temporaltim e.pdf 5/2/2006 CSC 336 Final Presentation 39 7. REFERENCES cont
 E. Pacitti, P. Minet, and E. Simon. Fast algorithms for maintaining replica consistency in lazy master replicated databases, VLDB'99 - 126-137, Proceedings of 25th International Conference on Very Large Data Bases, September 7-10, 1999, Edinburgh, Scotland, UK. Also published in Distributed and Parallel Databases, 9, 237267, 2001, by Kluwer Academic Publishers.  Stphane Ganarski, Hubert Naacke, Esther Pacitti, Patrick Valduriez, Parallel Processing with Autonomous Databases in a Cluster System, Proc. Coopis'2002, Irvine, California 5/2/2006 CSC 336 Final Presentation 40 7. REFERENCES cont  M. Tamer zsu , Patrick Valduriez, Principles of Distributed Database Systems, Second Edition, Prentice Hall , ISBN 0-13-659707-6 , 1999. Notes available at http://www.cs.ualberta.ca/~database/ddbook.html  Gray J. N., How High is High Performance
Transaction Processing?, Presentation at the High Performance Transaction Processing Workshop (HPTS99), Asilomar, California, 26-29th Sep 1999.  Y. Breitbart, R. Komondoor, R. Rastogi, and S. Seshadri, Update propagation protocols for replicated databases, ACM SIGMOD Int. Conference on Management of Data, Philadelphia, PA, May 1999. 5/2/2006 CSC 336 Final Presentation 41
Non-verbals. Behavioral crisis. Engagement. Friday, February 20, 2015. What is verbal de-escalation? Verbal de-escalation is used during potentially dangerous, or threatening, situation in an attempt to prevent persons from causing harm to us, themselves, or others.
Early battlefield surveillance systems operated in X-Band (8 to 12 GHz). Not useful for foliage penetration. FOPEN SAR first developed during Vietnam conflict to detect moving equipment and soldiers on ground under forests. First development credited to two University of...
You will illustrate at least 3-5 scenes from your narrative poem on a sheet of white paper from me. No stick people. Your Narrative Poem Rubric. Title - 15pts. Poem - 30pts. 3 to 5 images - 25pts. Color -...
Feasible Successors EIGRP Design Features EIGRP Technologies Neighbor discovery and recovery Reliable Transport Protocol DUAL finite-state machine algorithm Protocol-dependent modules By forming adjacencies, EIGRP routers: Dynamically learn of new routes that join their network Identify routers that become either unreachable...
VSEPR model assumes that the electron pairs around the central atom of a Lewis structure occupy space, whether they are bonding pairs or lone pairs, and the most stable arrangement of electron pairs (the one with the lowest energy) is...
Patent opposed on the grounds that grant of a patent for plant life forms and the exploitation of the patent was contrary to morality and/or "ordre public" [Article 53(a) EPC], and the claims relating to plants and to processes for...
What is the Florida Comprehensive Assessment Test (FCAT)? A test used to measure students knowledge and understanding of the Sunshine State Standards (SSS) in the areas of reading, writing, math and science. The SSS outline what students should know and...
Ready to download the document? Go ahead and hit continue!