Knowee
Questions
Features
Study Tools

What does the term "lock granularity" refer to in the context of database locking?The size of the lock timeout intervalThe level of detail at which locks are applied (e.g., at the row or table level)The number of transactions waiting for a lockThe duration for which a lock is held

Question

What does the term "lock granularity" refer to in the context of database locking?The size of the lock timeout intervalThe level of detail at which locks are applied (e.g., at the row or table level)The number of transactions waiting for a lockThe duration for which a lock is held

🧐 Not the exact question you are looking for?Go ask a question

Solution

The term "lock granularity" in the context of database locking refers to the level of detail at which locks are applied. This could be at various levels such as the row level, the table level, or even the database level. The more granular the lock, the smaller the portion of the data that is locked at a time. For example, a row-level lock is more granular than a table-level lock.

Similar Questions

In which scenario is a "High Granularity Lock" preferred in a database system?When transactions frequently access a small number of rows within a table.When transactions require access to large portions of the database, such as entire tables or indexes.When the overhead of lock management is negligible compared to transaction execution time.When the database system prioritizes read operations over write operations.

Binary Locks. A binary lock can have two states or values: locked and unlocked (or1 and 0, for simplicity). A distinct lock is associated with each database item X. If thevalue of the lock on X is 1, item X cannot be accessed by a database operation thatrequests the item. If the value of the lock on X is 0, the item can be accessed whenrequested, and the lock value is changed to 1. We refer to the current value (or state)of the lock associated with item X as lock(X).Two operations, lock_item and unlock_item, are used with binary locking. A transactionrequests access to an item X by first issuing a lock_item(X) operation. If LOCK(X) =1, the transaction is forced to wait. If LOCK(X) = 0, it is set to 1 (the transaction locksthe item) and the transaction is allowed to access item X. When the transaction isthrough using the item, it issues an unlock_item(X) operation, which sets LOCK(X)back to 0 (unlocks the item) so that X may be accessed by other transactions. Hence,a binary lock enforces mutual exclusion on the data item. A description of thelock_item(X) and unlock_item(X) operations is shown in Figure 22.1.22.1 Two-Phase Locking Techniques for Concurrency Control 779lock_item(X):B: if LOCK(X) = 0 (* item is unlocked *)then LOCK(X) ←1 (* lock the item *)elsebeginwait (until LOCK(X) = 0and the lock manager wakes up the transaction);go to Bend;unlock_item(X):LOCK(X) ← 0; (* unlock the item *)if any transactions are waitingthen wakeup one of the waiting transactions;Figure 22.1Lock and unlock oper-ations for binary locks.Notice that the lock_item and unlock_item operations must be implemented as indi-visible units (known as critical sections in operating systems); that is, no interleav-ing should be allowed once a lock or unlock operation is started until the operationterminates or the transaction waits. In Figure 22.1, the wait command within thelock_item(X) operation is usually implemented by putting the transaction in a wait-ing queue for item X until X is unlocked and the transaction can be granted accessto it. Other transactions that also want to access X are placed in the same queue.Hence, the wait command is considered to be outside the lock_item operation.It is quite simple to implement a binary lock; all that is needed is a binary-valuedvariable, LOCK, associated with each data item X in the database. In its simplestform, each lock can be a record with three fields: <Data_item_name, LOCK,Locking_transaction> plus a queue for transactions that are waiting to access the item.The system needs to maintain only these records for the items that are currently lockedin a lock table, which could be organized as a hash file on the item name. Items notin the lock table are considered to be unlocked. The DBMS has a lock manager sub-system to keep track of and control access to locks.If the simple binary locking scheme described here is used, every transaction mustobey the following rules:1. A transaction T must issue the operation lock_item(X) before anyread_item(X) or write_item(X) operations are performed in T.2. A transaction T must issue the operation unlock_item(X) after all read_item(X)and write_item(X) operations are completed in T.3. A transaction T will not issue a lock_item(X) operation if it already holds thelock on item X. 14. A transaction T will not issue an unlock_item(X) operation unless it alreadyholds the lock on item X.1This rule may be removed if we modify the lock_item (X) operation in Figure 22.1 so that if the item iscurrently locked by the requesting transaction, the lock is granted.780 Chapter 22 Concurrency Control TechniquesThese rules can be enforced by the lock manager module of the DBMS. Between thelock_item(X) and unlock_item(X) operations in transaction T, T is said to hold thelock on item X. At most one transaction can hold the lock on a particular item.Thus no two transactions can access the same item concurrentl

List the various levels of locking?

What is the primary purpose of the "No-Wait" locking strategy in database systems?To ensure that transactions wait indefinitely for locks to ensure data integrity.To allow transactions to abort immediately if the required locks cannot be acquired instantly.To prioritize lock requests based on the duration a transaction has been waiting.To escalate locks from shared to exclusive mode more rapidly.

In the context of locking, what is an Exclusive Lock used for?Allows multiple transactions to write simultaneouslyPrevents multiple transactions from writing simultaneouslyAllows multiple transactions to read simultaneouslyPrevents multiple transactions from reading simultaneously

1/1

Upgrade your grade with Knowee

Get personalized homework help. Review tough concepts in more detail, or go deeper into your topic by exploring other relevant questions.