Partial information based on integrity constraint checking

Integrity constraints are useful for specifying consistent states of a database, especially in distributed database systems where data may be under the control of multiple database managers. Constraints need to be checked when the underlying database is updated. Integrity constraint checking in a distributed environment may involve a distributed transaction and the expenses associated with it: two phase commit protocols, distributed concurrency control, network communication costs, and multiple interface layers if the databases are heterogeneous. The information used for constraint checking may include the contents of base relations, constraint specifications, updates to the databases, schema restrictions, stored aggregates etc. We propose using only a subset of the information potentially available for constraint checking. Thus, only data that is local to a site may be used for constraint checking thus avoiding distributed transactions. The approach is useful also in centralized systems because relatively inexpensively accessible subsets may be used for constraint checking. We discuss constraint checking for the following three subsets of the aforementioned information. (1) Constraint Subsumption. How to check one constraint C using a set of other constraint specifications C and no data, and the knowledge that the constraints in set C hold in the database? (2) Irrelevant Updates. How to check a constraint C using the database update, a set of other constraints C, and the knowledge that the constraints $\{C\}\cup{\rm\bf C}$ all hold before the update? (3) Local Checking. How to check a constraint C using the database update, the contents of the updated relation, a set of other constraints C, and the knowledge that the constraints $\{C\}\cup {\rm\bf C}$ all hold before the update? Local checking is the main focus and the main contribution of this thesis.

[1]  Eric K. Clemons,et al.  Efficiently monitoring relational databases , 1979, ACM Trans. Database Syst..

[2]  Johann A. Makowsky,et al.  Embedded implicational dependencies and their inference problem , 1981, STOC '81.

[3]  David L. Waltz,et al.  Understanding Line drawings of Scenes with Shadows , 1975 .

[4]  Hamid Pirahesh,et al.  Alert: An Architecture for Transforming a Passive DBMS into an Active DBMS , 1991, VLDB.

[5]  Jon Doyle,et al.  A Truth Maintenance System , 1979, Artif. Intell..

[6]  Philip A. Bernstein,et al.  Fast methods for testing quantified relational calculus assertions , 1982, SIGMOD '82.

[7]  Ashish Gupta,et al.  Optimization Using Tuple Subsumption , 1995, ICDT.

[8]  Michael J. Maher,et al.  Déjà Vu in Fixpoints of Logic Programs ∗ , 1989 .

[9]  Jean-Marie Nicolas,et al.  An Outline of BDGEN: A Deductive DBMS , 1983, IFIP Congress.

[10]  Jennifer Widom,et al.  Deriving Incremental Production Rules for Deductive Data , 1994, Inf. Syst..

[11]  Jeffrey D. Uuman Principles of database and knowledge- base systems , 1989 .

[12]  Robert A. Kowalski,et al.  Integrity Checking in Deductive Databases , 1987, VLDB.

[13]  Hector Garcia-Molina,et al.  The Demarcation Protocol: A Technique for Maintaining Linear Arithmetic Constraints in Distributed Database Systems , 1992, EDBT.

[14]  Yehoshua Sagiv,et al.  Optimizing datalog programs , 1987, Foundations of Deductive Databases and Logic Programming..

[15]  Jennifer Widom,et al.  Constraint checking with partial information , 1994, PODS.

[16]  Inderpal Singh Mumick,et al.  Magic-sets transformation in nonrecursive systems , 1992, PODS '92.

[17]  Oded Shmueli,et al.  Finiteness Properties of Database Queries , 1993, Australian Database Conference.

[18]  Yatin P. Saraiya Polynomial-time program transformations in deductive databases , 1990, PODS.

[19]  Inderpal Singh Mumick Query Optimization in Deductive and Relational Databases , 1991 .

[20]  Oded Shmueli,et al.  Decidability and expressiveness aspects of logic queries , 1987, XP7.52 Workshop on Database Theory.

[21]  Véronique Benzaken,et al.  Enforcing Integrity Constraints in Database Programming Languages , 1992, POS.

[22]  Ernest Davis,et al.  Constraint Propagation with Interval Labels , 1987, Artif. Intell..

[23]  Jennifer Widom,et al.  Deriving Production Rules for Incremental View Maintenance , 1991, VLDB.

[24]  Bruno Courcelle,et al.  Recursive Queries and Context-free Graph Grammars , 1991, Theor. Comput. Sci..

[25]  Hamid Pirahesh,et al.  The Magic of Duplicates and Aggregates , 1990, VLDB.

[26]  Jennifer Widom,et al.  Deriving Production Rules for Constraint Maintainance , 1990, VLDB.

[27]  Jianwen Su,et al.  Incremental and Decremental Evaluation of Transitive Closure by First-Order Queries , 1995, Inf. Comput..

[28]  Per-Åke Larson,et al.  Computing Queries from Derived Relations , 1985, VLDB.

[29]  Teodor C. Przymusinski On the Declarative Semantics of Deductive Databases and Logic Programs , 1988, Foundations of Deductive Databases and Logic Programming..

[30]  Ronald Fagin,et al.  Horn clauses and database dependencies , 1982, JACM.

[31]  Matthias Jarke,et al.  Assuring Database Integrity , 1990 .

[32]  Venky Harinarayan,et al.  Generalized Projections: A Powerful Query-Optimization Technique , 1994 .

[33]  R. Van der Meyden,et al.  The complexity of querying indefinite data about linearly ordered domains , 1992, PODS '92.

[34]  Georg Gottlob,et al.  Translating SQL Into Relational Algebra: Optimization, Semantics, and Equivalence of SQL Queries , 1985, IEEE Transactions on Software Engineering.

[35]  Salvatore J. Stolfo,et al.  Incremental evaluation of rules and its relationship to parallelism , 1991, SIGMOD '91.

[36]  Oded Shmueli,et al.  Aggregation, Computability, and Complete Query Languages , 1992, Structural Complexity and Recursion-theoretic methods in Logic-Programming.

[37]  Kincho H. Law,et al.  A Version and Configuration Scheme for Collaborative Engineering , 1994 .

[38]  Liz Sonenberg,et al.  Integrity Constraint Checking in Stratified Databases , 1987, J. Log. Program..

[39]  Keith Hall A framework for change management in a design database , 1992 .

[40]  Stefano Ceri,et al.  Distributed Databases: Principles and Systems , 1984 .

[41]  Edmund M. Clarke,et al.  Fast Maintenance of Semantic Integrity Assertions Using Redundant Aggregate Data , 1980, VLDB.

[42]  Ashish Gupta,et al.  Distributed constraint management for collaborative engineering databases , 1993, CIKM '93.

[43]  Sanjai Tiwari,et al.  Constraint Management in Distributed AEC Databases , 1993 .

[44]  J. Lloyd Foundations of Logic Programming , 1984, Symbolic Computation.

[45]  Anthony C. Klug On conjunctive queries containing inequalities , 1988, JACM.

[46]  Kincho H. Law,et al.  Versions, Configurations, and Constraints in CEDB , 1994 .

[47]  Lionel M. Ni,et al.  Solving implication problems in database applications , 1989, SIGMOD '89.

[48]  Z. Meral Özsoyoglu,et al.  On Efficient Reasoning with Implication Constraints , 1993, DOOD.

[49]  Alon Itai,et al.  Maintenance of views , 1984, SIGMOD '84.

[50]  Charles Elkan,et al.  Independence of logic database queries and update , 1990, PODS '90.

[51]  Rodney W. Topor,et al.  Safety and translation of relational calculus , 1991, TODS.

[52]  Per-Åke Larson,et al.  Updating derived relations: detecting irrelevant and autonomously computable updates , 1986, VLDB.

[53]  Frank Wm. Tompa,et al.  Maintaining materialized views without accessing base data , 1988, Inf. Syst..

[54]  Allen Van Gelder,et al.  Negation as Failure using Tight Derivations for General Logic Programs , 1988, J. Log. Program..

[55]  Alon Y. Halevy,et al.  Queries Independent of Updates , 1993, VLDB.

[56]  John Beidler,et al.  Data Structures and Algorithms , 1996, Wiley Encyclopedia of Computer Science and Engineering.

[57]  John V. Harrison,et al.  Maintenance of Materialized Views in a Deductive Database: An Update Propagation Approach , 1992, Workshop on Deductive Databases, JICSLP.

[58]  Inderpal Singh Mumick,et al.  Counting solutions to the View Maintenance Problem , 1992, Workshop on Deductive Databases, JICSLP.

[59]  Mihalis Yannakakis,et al.  Equivalences Among Relational Expressions with the Union and Difference Operators , 1980, J. ACM.

[60]  V. S. Subrahmanian,et al.  Maintaining views incrementally , 1993, SIGMOD Conference.

[61]  Adrian Walker,et al.  Towards a Theory of Declarative Knowledge , 1988, Foundations of Deductive Databases and Logic Programming..

[62]  Ashok K. Chandra,et al.  Optimal implementation of conjunctive queries in relational data bases , 1977, STOC '77.

[63]  Antoni Olivé,et al.  A Method for Change Computation in Deductive Databases , 1992, VLDB.

[64]  Gio Wiederhold,et al.  Incremental Recomputation of Active Relational Expressions , 1991, IEEE Trans. Knowl. Data Eng..

[65]  Sanjai Tiwari Managing design constraints on distributed engineering databases , 1995 .

[66]  Patrick Valduriez,et al.  Principles of Distributed Database Systems , 1990 .

[67]  Serge Abiteboul,et al.  Data functions, datalog and negation , 1988, SIGMOD '88.

[68]  Ashok K. Chandra Theory of database queries , 1988, PODS '88.

[69]  Matthias Jarke,et al.  From Relational to Object-Oriented Integrity Simplification , 1991, DOOD.