Global concurrency control
||The neutrality of this article is disputed. (November 2011) (Learn how and when to remove this template message)|
Global concurrency control typically pertains to the concurrency control of a system comprising several components, each with its own concurrency control. The overall concurrency control of the whole system, the Global concurrency control, is determined by the concurrency control of its components, modules. In this case also the term Modular concurrency control is used.
In many cases a system may be distributed over a communication network. In this case we deal with distributed concurrency control of the system, and the two terms sometimes overlap. However, distributed concurrency control typically relates to a case where the distributed system's components do not have each concurrency control of its own, but rather are involved with a concurrency control mechanism that spans several components in order to operate. For example, as typical in a distributed database.
In database systems and transaction processing (transaction management) global concurrency control relates to the concurrency control of a multidatabase system (for example, a Federated database; other examples are Grid computing and Cloud computing environments). It deals with the properties of the global schedule, which is the unified schedule of the multidatabase system, comprising all the individual schedules of the database systems and possibly other transactional objects in the system. A major goal for global concurrency control is Global serializability (or Modular serializability). The problem of achieving global serializability in a heterogeneous environment had been open for many years, until an effective solution based on Commitment ordering (CO) has been proposed (see Global serializability). Global concurrency control deals also with relaxed forms of global serializability which compromise global serializability (and in many applications also correctness, and thus are avoided there). While local (to a database system) relaxed serializability methods compromise serializability for performance gain (utilized when the application allows), it is unclear that the various proposed relaxed global serializability methods provide any performance gain over CO, which guarantees global serializability.