There are circumstances, however, where it would be advantageous to group several data items, and to treat them as one individual synchronization unit.
– For example, if a transaction Ti needs to access the entire database, and a locking protocol is used, then Ti must lock each item in the database.
– Clearly, executing these locks is time-consuming. It would be better if Ti could issue a single lock request to lock the entire database.
– On the other hand, if transaction Tj needs to access only a few data items, it should not be required to lock the entire database, since otherwise concurrency is lost.