Improving Integrity Constraints Checking In Distributed Databases by Exploiting Local Checking - Alwan, Ali Amer (2008)
Integrity constraints are important tools and useful for specifying consistent states of a database. Checking integrity constraints has proven to be extremely difficult to implement, particularly in distributed database. The main issue concerning checking the integrity constraints in distributed database system is how to derive a set of integrity tests (simplified forms) that will reduce the amount of data transferred, the amount of data accessed, and the number of sites involved during the constraint checking process. Most of the previous approaches derive integrity tests (simplified forms) from the initial integrity constraints with the sufficiency property, since the sufficient test is known to be cheaper to execute than the complete test as it involved less data to be transferred across the network and always can be evaluated at the target site, i.e. only one site is involved during the checking process thus, achieving local checking. The previous approaches assume that an update operation will be executed at a site where the relation specified in the update operation is located (target site), which is not always true. If the update operation is submitted at a different site, the sufficient test is no longer local as it will definitely access data from the remote sites. Therefore, an approach is needed so that local checking can be performed regardless the location of the submitted update operation. In this thesis we proposed an approach for checking integrity constraints in a distributed database system by utilizing as much as possible the information stored at the target site. The proposed constraints simplification approach produces support tests and this is integrated with complete and sufficient tests which are proposed by previous researchers. It uses the initial integrity constraint, the update template, and the other integrity constraints to generate the support tests. The proposed constraints simplification approach adopted the substitution technique and the absorption rules to derive the tests. Since the constraint simplification approach derives several different types of integrity tests for a given update operation and integrity constraint, therefore a strategy to select the most suitable test is needed. We proposed a model to rank and select the suitable test to be checked based on the properties of the tests, the amount of data transferred across the network, the number of sites participated, and the amount of data accessed. Three analyses have been performed to evaluate the proposed checking integrity constraints approach. The first analysis shows that applying different types of integrity tests gives different impacts to the performance of the constraint checking, with respect to the amount of data transferred across the network which is considered as the most critical factor that influences the performance of the checking mechanism. Integrating these various types of integrity tests during constraint checking has enhanced the performance of the constraint mechanisms. The second analysis shows that the cost of checking integrity constraints is reduced when various combinations of integrity tests are selected. The third analysis shows that in most cases localizing integrity checking can be achieved regardless of the location where the update operation is executed when various types of integrity tests are considered.