پاورپوینت کامل Chapter 16 : Concurrency Control 77 اسلاید در PowerPoint


در حال بارگذاری
10 جولای 2025
پاورپوینت
17870
3 بازدید
۷۹,۷۰۰ تومان
خرید

توجه : این فایل به صورت فایل power point (پاور پوینت) ارائه میگردد

 پاورپوینت کامل Chapter 16 : Concurrency Control 77 اسلاید در PowerPoint دارای ۷۷ اسلاید می باشد و دارای تنظیمات کامل در PowerPoint می باشد و آماده ارائه یا چاپ است

شما با استفاده ازاین پاورپوینت میتوانید یک ارائه بسیارعالی و با شکوهی داشته باشید و همه حاضرین با اشتیاق به مطالب شما گوش خواهند داد.

لطفا نگران مطالب داخل پاورپوینت نباشید، مطالب داخل اسلاید ها بسیار ساده و قابل درک برای شما می باشد، ما عالی بودن این فایل رو تضمین می کنیم.

توجه : در صورت  مشاهده  بهم ریختگی احتمالی در متون زیر ،دلیل ان کپی کردن این مطالب از داخل فایل می باشد و در فایل اصلی پاورپوینت کامل Chapter 16 : Concurrency Control 77 اسلاید در PowerPoint،به هیچ وجه بهم ریختگی وجود ندارد


بخشی از مطالب داخلی اسلاید ها

پاورپوینت کامل Chapter 16 : Concurrency Control 77 اسلاید در PowerPoint

اسلاید ۴: Lock-Based Protocols (Cont.)Lock-compatibility matrixA transaction may be granted a lock on an item if the requested lock is compatible with locks already held on the item by other transactionsAny number of transactions can hold shared locks on an item, but if any transaction holds an exclusive on the item no other transaction may hold any lock on the item.If a lock cannot be granted, the requesting transaction is made to wait till all incompatible locks held by other transactions have been released. The lock is then granted.

اسلاید ۵: Lock-Based Protocols (Cont.)Example of a transaction performing locking: T2: lock-S(A); read (A); unlock(A); lock-S(B); read (B); unlock(B); display(A+B)Locking as above is not sufficient to guarantee serializability — if A and B get updated in-between the read of A and B, the displayed sum would be wrong.A locking protocol is a set of rules followed by all transactions while requesting and releasing locks. Locking protocols restrict the set of possible schedules.

اسلاید ۶: Pitfalls of Lock-Based ProtocolsConsider the partial schedule Neither T3 nor T4 can make progress — executing lock-S(B) causes T4 to wait for T3 to release its lock on B, while executing lock-X(A) causes T3 to wait for T4 to release its lock on A.Such a situation is called a deadlock. To handle a deadlock one of T3 or T4 must be rolled back and its locks released.

اسلاید ۷: Pitfalls of Lock-Based Protocols (Cont.)The potential for deadlock exists in most locking protocols. Deadlocks are a necessary evil.Starvation is also possible if concurrency control manager is badly designed. For example:A transaction may be waiting for an X-lock on an item, while a sequence of other transactions request and are granted an S-lock on the same item. The same transaction is repeatedly rolled back due to deadlocks.Concurrency control manager can be designed to prevent starvation.

اسلاید ۸: The Two-Phase Locking ProtocolThis is a protocol which ensures conflict-serializable schedules.Phase 1: Growing Phasetransaction may obtain locks transaction may not release locksPhase 2: Shrinking Phasetransaction may release lockstransaction may not obtain locksThe protocol assures serializability. It can be proved that the transactions can be serialized in the order of their lock points (i.e. the point where a transaction acquired its final lock).

اسلاید ۹: The Two-Phase Locking Protocol (Cont.)Two-phase locking does not ensure freedom from deadlocksCascading roll-back is possible under two-phase locking. To avoid this, follow a modified protocol called strict two-phase locking. Here a transaction must hold all its exclusive locks till it commits/aborts.Rigorous two-phase locking is even stricter: here all locks are held till commit/abort. In this protocol transactions can be serialized in the order in which they commit.

اسلاید ۱۰: The Two-Phase Locking Protocol (Cont.)There can be conflict serializable schedules that cannot be obtained if two-phase locking is used. However, in the absence of extra information (e.g., ordering of access to data), two-phase locking is needed for conflict serializability in the following sense: Given a transaction Ti that does not follow two-phase locking, we can find a transaction Tj that uses two-phase locking, and a schedule for Ti and Tj that is not conflict serializable.

اسلاید ۱۱: Lock ConversionsTwo-phase locking with lock conversions: – First Phase: can acquire a lock-S on itemcan acquire a lock-X on itemcan convert a lock-S to a lock-X (upgrade) – Second Phase:can release a lock-Scan release a lock-Xcan convert a lock-X to a lock-S (downgrade)This protocol assures serializability. But still relies on the programmer to insert the various locking instructions.

اسلاید ۱۲: Automatic Acquisition of LocksA transaction Ti issues the standard read/write instruction, without explicit locking calls.The operation read(D) is processed as: if Ti has a lock on D then read(D) else begin if necessary wait until no other transaction has a lock-X on D grant Ti a lock-S on D; read(D) end

اسلاید ۱۳: Automatic Acquisition of Locks (Cont.)write(D) is processed as: if Ti has a lock-X on D then write(D) else begin if necessary wait until no other trans. has any lock on D, if Ti has a lock-S on D then upgrade lock on D to lock-X else grant Ti a lock-X on D write(D) end;All locks are released after commit or abort

اسلاید ۱۴: Implementation of LockingA lock manager can be implemented as a separate process to which transactions send lock and unlock requestsThe lock manager replies to a lock request by sending a lock grant messages (or a message asking the transaction to roll back, in case of a deadlock)The requesting transaction waits until its request is answeredThe lock manager maintains a data-structure called a lock table to record granted locks and pending requestsThe lock table is usually implemented as an in-memory hash table indexed on the name of the data item being locked

اسلاید ۱۵: Lock TableBlack rectangles indicate granted locks, white ones indicate waiting requestsLock table also records the type of lock granted or requestedNew request is added to the end of the queue of requests for the data item, and granted if it is compatible with all earlier locksUnlock requests result in the request being deleted, and later requests are checked to see if they can now be grantedIf transaction aborts, all waiting or granted requests of the transaction are deleted lock manager may keep a list of locks held by each transaction, to implement this efficiently

اسلاید ۱۶: Graph-Based ProtocolsGraph-based protocols are an alternative to two-phase lockingImpose a partial ordering on the set D = {d1, d2 ,…, dh} of all data items.If di dj then any transaction accessing both di and dj must access di before accessing dj.Implies that the set D may now be viewed as a directed acyclic graph, called a database graph.The tree-protocol is a simple kind of graph protocol.

اسلاید ۱۷: Tree ProtocolOnly exclusive locks are allowed.The first lock by Ti may be on any data item. Subsequently, a data Q can be locked by Ti only if the parent of Q is currently locked by Ti.Data items may be unlocked at any time.

اسلاید ۱۸: Graph-Based Protocols (Cont.)The tree protocol ensures conflict serializability as well as freedom from deadlock.Unlocking may occur earlier in the tree-locking protocol than in the two-phase locking protocol.shorter waiting times, and increase in concurrencyprotocol is deadlock-free, no rollbacks are requiredDrawbacksProtocol does not guarantee recoverability or cascade freedomNeed to introduce commit dependencies to ensure recoverability Transactions may have to lock data items that they do not access.increased locking overhead, and additional waiting timepotential decrease in concurrencySchedules not possible under two-phase locking are possible under tree protocol, and vice versa.

اسلاید ۱۹: Timestamp-Based ProtocolsEach transaction is issued a timestamp when it enters the system. If an old transaction Ti has time-stamp TS(Ti), a new transaction Tj is assigned time-stamp TS(Tj) such that TS(Ti) <TS(Tj). The protocol manages concurrent execution such that the time-stamps determine the serializability order.In order to assure such behavior, the protocol maintains for each data Q two timestamp values:W-timestamp(Q) is the largest time-stamp of any transaction that executed write(Q) successfully.R-timestamp(Q) is the largest time-stamp of any transaction that executed read(Q) successfully.

اسلاید ۲۰: Timestamp-Based Protocols (Cont.)The timestamp ordering protocol ensures that any conflicting read and write operations are executed in timestamp order.Suppose a transaction Ti issues a read(Q)If TS(Ti) W-timestamp(Q), then Ti needs to read a value of Q that was already overwritten.Hence, the read operation is rejected, and Ti is rolled back.If TS(Ti) W-timestamp(Q), then the read operation is executed, and R-timestamp(Q) is set to the maximum of R-timestamp(Q) and TS(Ti).

اسلاید ۲۱: Timestamp-Based Protocols (Cont.)Suppose that transaction Ti issues write(Q).If TS(Ti) < R-timestamp(Q), then the value of Q that Ti is producing was needed previously, and the system assumed that that value would never be produced. Hence, the write operation is rejected, and Ti is rolled back.If TS(Ti) < W-timestamp(Q), then Ti is attempting to write an obsolete value of Q. Hence, this write operation is rejected, and Ti is rolled back.Otherwise, the write operation is executed, and W-timestamp(Q) is set to TS(Ti).

اسلاید ۲۲: Example Use of the ProtocolA partial schedule for several data items for transactions withtimestamps 1, 2, 3, 4, 5T1T2T3T4T5read(Y)read(X) read(Y)write(Y) write(Z) read(Z) read(X) abort read(X) write(Z) abort write(Y) write(Z)

اسلاید ۲۳: Correctness of Timestamp-Ordering ProtocolThe timestamp-ordering protocol guarantees serializability since all the arcs in the precedence graph are of the form: Thus, there will be no cycles in the precedence graphTimestamp protocol ensures freedom from deadlock as no transaction ever waits. But

  راهنمای خرید:
  • همچنین لینک دانلود به ایمیل شما ارسال خواهد شد به همین دلیل ایمیل خود را به دقت وارد نمایید.
  • ممکن است ایمیل ارسالی به پوشه اسپم یا Bulk ایمیل شما ارسال شده باشد.
  • در صورتی که به هر دلیلی موفق به دانلود فایل مورد نظر نشدید با ما تماس بگیرید.