UNIFOR University of Fortaleza Brazil University of Kaiserslautern Germany Angelo Brayner CoopIS - Trento, September Global Semantic Serializability: An Approach to Increase Concurrency in Multidatabase Systems Angelo Brayner Theo Härder
UNIFOR Angelo BraynerCoopIS - Trento, September Contents Motivation Multidatabase System Model Global Semantic Serializability Concurrency Control Protocols Conclusions
UNIFOR Angelo BraynerCoopIS - Trento, September Motivation (1) Integration of heterogeneous databases is a strategic requirement Integration of heterogeneous databases in a enterprise Integration of heterogeneous web databases Web as a large collection of distributed autonomous and heterogeneous databases Integration of ubiquitous databases mobile heterogeneous databases providing data everywhere
UNIFOR Angelo BraynerCoopIS - Trento, September Motivation (2) Multidatabase technology Efficient solution for integrating a collection of autonomous and heterogeneous databases Local databases Created independently without considering the possibility of being integrated in the future Operate autonomously Local autonomy is a key feature Multidatabase Collection of local databases
UNIFOR Angelo BraynerCoopIS - Trento, September Motivation (3) Multidatabase System (MDBS) Software component to manage a multidatabase Provides DBMS functionalities Multidatabase environment Global transactions Submitted to the MDBS Access and update local database objects Local transactions Submitted to local database systems
UNIFOR Angelo BraynerCoopIS - Trento, September Motivation (4) Classical transaction-processing Model "Syntactic" serializability Serialization order of all active transactions must be known For identifying correct execution of concurrent transactions Efficient criterion for synchronizing operations of short transactions
UNIFOR Angelo BraynerCoopIS - Trento, September Motivation (5) Concurrency control problem in MDBSs Global transactions Involve operations on multiple local databases Long-living transactions MDBS does not have any information about the execution (serialization) order of local transactions Classical transaction model is inefficient for solving the CC problem in MDBSs
UNIFOR Angelo BraynerCoopIS - Trento, September Multidatabase System Model (1) LDBS n Local Transactions SUB jn SUB in Global Recovery Manager Global Log Global Transaction Manager MDBS GjGj GiGi Global Transactions Global Scheduler Interface Server 1 Log Interface Server n DB DBMS Local Transactions SUB i1 SUB j1 LDBS 1 DB DBMS
UNIFOR Angelo BraynerCoopIS - Trento, September Multidatabase System Model (2) MDBS 1. A set LD ={LDBS 1, LDBS 2, …, LDBS n } of local database systems 2. A set L ={L 1, L 2, …, L n } Each L K represents a set of local transactions executed at LDBS K 3. A set G ={G 1, G 2, …, G n } of global transactions
UNIFOR Angelo BraynerCoopIS - Trento, September Multidatabase System Model (3) Local Schedule S K Models the execution of interleaved operations belonging to local and global transactions Executed at LDBS K Global Schedule S G Models the execution of all local schedules
UNIFOR Angelo BraynerCoopIS - Trento, September GS -Serializability Model (1) Assumptions An MDBS integrates a collection of pre- existing local databases (LDBs) A collection of disjoint sets of objects Each set represents a single local database Semantic Unit An update operation executed by a global transaction G on an object of a particular semantic unit does not depend on values of objects belonging to other semantic units previously read by G An update operation executed by a global transaction G on an object of a particular semantic unit does not depend on values of objects belonging to other semantic units previously read by G
UNIFOR Angelo BraynerCoopIS - Trento, September GS -Serializability Model (2) Module-structured Transaction Operations are grouped into subsequences Modules Encompasses operations on objects of only one semantic unit Example DB={A, B, C, D, E, F, G} A, B, C SU LDBS1 ={A, B, C} D, E, F, G SU LDBS2 ={D, E, F, G} 4 T 1 = r 1 (G) w 1 (E) w 1 (C) r 1 (B) 8 T 2 = r 2 (G) w 2 (C) w 2 (E) r 1 (B) Module
UNIFOR Angelo BraynerCoopIS - Trento, September GS -Serializability Model (3) GS -Serial Global Schedule Local schedules are conflict serializable and Serial execution of modules belonging to global transactions Example CBAB G 1 =r 1 (G)w 1 (E)w 1 (C)r 1 (B); G 2 =r 2 (A)w 2 (B)w 2 (D)r 2 (E) ABCB S C = r 2 (A)w 2 (B)r 1 (G)w 1 (E)w 2 (D)r 2 (E)w 1 (C)r 1 (B) S C is GS -Serial ì S C is not conflict serializable
UNIFOR Angelo BraynerCoopIS - Trento, September GS -Serializability Model (4) GS -Serial Schedules preserve multidatabase consistency Correctness criterion for MDBSs GS -Serializable Schedule S Local schedules are conflict serializable and The execution order of global transactions in S is conflict equivalent to the execution of a GS -Serial schedule over the same set of transactions
UNIFOR Angelo BraynerCoopIS - Trento, September GS -Serializability Model (5) Identifying GS -Serializable Schedule Since existing DBMSs yield conflict serializable schedules + The GTM has solely to verify the execution order of global transactions A graph-based method The Semantic Serialization Graph (SSG)
UNIFOR Angelo BraynerCoopIS - Trento, September Concurrency Control in MDBSs Concurrency Control Protocols Conservative Based on a locking mechanism Aggressive Management of an always acyclic graph Based on the SSG
UNIFOR Angelo BraynerCoopIS - Trento, September Conclusions GS -Serializability Model Increases concurrency in MDBSs More permissive than syntactic serializability Increases concurrency in mediator-based systems Each web database can be seen as a semantic unit Can be applied to control concurrency in ubiquitous database Mobile database can be defined as a semantic unit