An algebraic approach to static analysis of active database rules
Rules in active database systems can be very difficult 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...
Saved in:
Published in | ACM transactions on database systems Vol. 25; no. 3; pp. 269 - 332 |
---|---|
Main Authors | , |
Format | Journal Article |
Language | English |
Published |
New York, NY, USA
ACM
01.09.2000
Association for Computing Machinery, Inc Association for Computing Machinery |
Subjects | |
Online Access | Get full text |
Cover
Loading…
Summary: | Rules in active database systems can be very difficult 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 state). 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 determine when rule actions commute. We consider both conditon-action rules and event-condition-action-rules, making our approach widely applicable to relational active database rule languages and to the trigger language in the SQL:1999 standard. |
---|---|
Bibliography: | SourceType-Scholarly Journals-1 ObjectType-Feature-1 content type line 14 ObjectType-Article-2 content type line 23 |
ISSN: | 0362-5915 1557-4644 |
DOI: | 10.1145/363951.363954 |