Better Static Rule Analysis for Active Database Systems

Rules in active database systems can be very diffcult to program, due to the unstructured and unpredictable nature of rule processing. We provide static analysis techniques for predicting whether a given rule set is guaranteed to terminate, and whether rule execution is confluent (guaranteed to have a unique final Our methods are based on previous techniques for analyzing rules in active database systems. We improve considerably on the previous techniques by providing analysis criteria that are much less conservative: our methods often determine that a rule set will terminate or is confluent when previous methods could not make this determination. Our improved analysis is based on a "propagation" algorithm, which uses an extended relational algebra to accurately determine when the action of one rule can affect the condition of another, and to determine when rule actions commute. We consider both Condition-Action rules and Event-Condition-Action rules, making our approach widely applicable to relational active database rule languages.

[1]  Umeshwar Dayal,et al.  Organizing long-running activities with triggers and transactions , 1990, SIGMOD '90.

[2]  Jennifer Widom,et al.  Better Termination Analysis for Active Databases , 1993, Rules in Database Systems.

[3]  Jennifer Widom,et al.  Active Database Systems: Triggers and Rules For Advanced Database Processing , 1994 .

[4]  Jennifer Widom,et al.  An Algebraic Approach to Rule Analysis in Expert Database Systems , 1994, VLDB.

[5]  Eric N. Hanson,et al.  Rule condition testing and action execution in Ariel , 1992, SIGMOD '92.

[6]  Mao-Yuan Hsu,et al.  Determinism in partially ordered production systems , 1991 .

[7]  Arno Siebes,et al.  Termination and Confluence of Rule Execution Termination and Connuence of Rule Execution , 1993 .

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

[9]  Sharma Chakravarthy,et al.  Situation Monitoring for Active Databases , 1989, VLDB.

[10]  Anthony C. Klug Equivalence of Relational Algebra and Relational Calculus Query Languages Having Aggregate Functions , 1982, JACM.

[11]  Jennifer Widom,et al.  Static analysis techniques for predicting the behavior of active database rules , 1995, TODS.

[12]  Eric Simon,et al.  Implementing High Level Active Rules on Top of a Relational DBMS , 1992, VLDB.

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

[14]  Albert Mo Kim Cheng,et al.  Termination Analysis of OPS5 Expert Systems , 1994, AAAI.

[15]  Susan Darling Urban,et al.  Conditional term rewriting as a formal basis for analysis of active database rules , 1994, Proceedings of IEEE International Workshop on Research Issues in Data Engineering: Active Databases Systems.

[16]  Elena Baralis,et al.  Run-time Detection of Non-Terminating Active Rule Systems , 1995, DOOD.

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

[18]  Nancy Martin,et al.  Programming Expert Systems in OPS5 - An Introduction to Rule-Based Programming(1) , 1985, Int. CMG Conference.

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

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

[21]  Elena Baralis,et al.  Arachne: a tool for the analysis of active rules , 1995 .

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

[23]  S. Ceri,et al.  Algres: an advanced database system for complex applications , 1990, IEEE Software.

[24]  Lois M. L. Delcambre,et al.  The Relational Production Language: A Production Language for Relational Databases , 1988, Expert Database Conf..

[25]  Elena Baralis,et al.  Improving Rule Analysis by Means of Triggering and Activation Graphs , 1995, Rules in Database Systems.

[26]  Letizia Tanca,et al.  Automatic generation of production rules for integrity maintenance , 1994, TODS.

[27]  Elena Baralis,et al.  Modularization techniques for active rules design , 1996, TODS.

[28]  Inderpal Singh Mumick,et al.  Deriving Production Rules For Incremental View Maintenance , 1999 .

[29]  Jennifer Widom,et al.  Using Delta Relations to Optimize Condition Evaluation in Active Databases , 1995, Rules in Database Systems.

[30]  Jennifer Widom,et al.  Set-oriented production rules in relational database systems , 1990, SIGMOD '90.