Results 1 - 10
of
24
Extensible/Rule Based Query Rewrite Optimization in Starburst
- In SIGMOD
, 1992
"... This paper describes the Query Rewrite facility of the Starburst extensible database system, a novel phase of query optimization. We present a suite of rewrite rules used in Starburst to transform queries into equivalent queries for faster execution, and also describe the production rule engine whic ..."
Abstract
-
Cited by 101 (3 self)
- Add to MetaCart
This paper describes the Query Rewrite facility of the Starburst extensible database system, a novel phase of query optimization. We present a suite of rewrite rules used in Starburst to transform queries into equivalent queries for faster execution, and also describe the production rule engine which is used by Starburst to choose and execute these rules. Examples are provided demonstrating that these Query Rewrite transformations lead to query execution time improvements of orders of magnitude, suggesting that Query Rewrite in general --- and these rewrite rules in particular --- are an essential step in query optimization for modern database systems. 1 Introduction In traditional database systems, query optimization typically consists of a single phase of processing in which access methods, join orders and join methods are chosen to provide an efficient plan for executing a user's declarative query. We refer to this phase as plan optimization. In this paper we present a distinct ph...
Behavior of Database Production Rules: Termination, Confluence, and Observable Determinism
- In Proceedings of the ACM SIGMOD International Conference on Management of Data
, 1992
"... . Static analysis methods are given for determining whether arbitrary sets of database production rules are (1) guaranteed to terminate ..."
Abstract
-
Cited by 69 (8 self)
- Add to MetaCart
. Static analysis methods are given for determining whether arbitrary sets of database production rules are (1) guaranteed to terminate
Static Analysis Techniques for Predicting the Behavior of Active Database Rules
- ACM Transactions on Database Systems
, 1995
"... This paper gives methods for statically analyzing sets of active database rules to determine if the rules are (1) guaranteed to terminate, (2) guaranteed to produce a unique final database state, and (3) guaranteed to produce a unique stream of observable actions. If the analysis determines that ..."
Abstract
-
Cited by 50 (2 self)
- Add to MetaCart
This paper gives methods for statically analyzing sets of active database rules to determine if the rules are (1) guaranteed to terminate, (2) guaranteed to produce a unique final database state, and (3) guaranteed to produce a unique stream of observable actions. If the analysis determines that one of these properties is not guaranteed, it isolates the rules responsible for the problem and determines criteria that, if satisfied, guarantee the property. The analysis methods are presented in the context of the Starburst Rule System. 1 Introduction Rules in active database systems allow specification of data manipulation operations that are executed automatically whenever certain events occur or conditions are met [DHW94,DW92,HW93]. Active database rules provide a general and powerful mechanism for many database features, including integrity constraint enforcement, derived data maintenance, triggers, alerters, authorization checking, and versioning. In addition, active database sy...
An Algebraic Approach to Rule Analysis in Expert Database Systems
- In Proceedings of the 20th International Conference on Very Large Databases
, 1994
"... Expert database systems extend the functionality of conventional database systems by providing a facility for creating and automatically executing Condition-Action rules. While Condition-Action rules in database systems are very powerful, they also can be very difficult to program, due to the unstru ..."
Abstract
-
Cited by 43 (2 self)
- Add to MetaCart
Expert database systems extend the functionality of conventional database systems by providing a facility for creating and automatically executing Condition-Action rules. While Condition-Action rules in database systems are very powerful, they also can be very difficult to program, due to the unstructured and unpredictable nature of rule processing. We provide methods for static analysis of Condition-Action rules; our methods determine whether a given rule set is guaranteed to terminate, and whether rule execution is confluent (has a guaranteed unique final state). Our methods are based on previous methods for analyzing rules in active database systems. We improve considerably on the previous methods 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. Our improved analysis is based on a "propagation" algorithm, which uses a formal approach based on an extended relatio...
Language Constructs for Programming Active Databases
- IN PROC. OF INTL. CONF. ON VERY LARGE DATA BASES
, 1991
"... ... constructs that can be used to realize a variety of different semantics for rule application in active database systems. The primary novel feature introduced is the "delayed update", or delta, which is a first-class value representing a set of proposed modifications to the underlying persi ..."
Abstract
-
Cited by 42 (13 self)
- Add to MetaCart
... constructs that can be used to realize a variety of different semantics for rule application in active database systems. The primary novel feature introduced is the "delayed update", or delta, which is a first-class value representing a set of proposed modifications to the underlying persistent store. Deltas can be created, inspected, and combined without committing to the given modifications. The utility of these concepts for expressing the semantics of active databases is demonstrated through a series of examples, including the presentation of the essential features of rule application in the AP5 system of USC/Information Sciences Institute and the Starburst Rule System being developed at IBM Almaden. Technical results concerning the simulatability of certain fundamental constructs by other fundamental constructs are also presented. The
Fundamental Concepts of Object Oriented Databases
- Acta Cybernetica
, 1993
"... . It is claimed that object oriented databases (OODBs) overcome many of the limitations of the relational model. However, the formal foundation of OODB concepts is still an open problem. Even worse, for relational databases a commonly accepted datamodel existed very early on whereas for OODBs the un ..."
Abstract
-
Cited by 32 (18 self)
- Add to MetaCart
. It is claimed that object oriented databases (OODBs) overcome many of the limitations of the relational model. However, the formal foundation of OODB concepts is still an open problem. Even worse, for relational databases a commonly accepted datamodel existed very early on whereas for OODBs the unification of concepts is missing. The work reported in this paper contains the results of our first investigations on a formally founded object oriented datamodel (OODM) and is intended to contribute to the development of a uniform mathematical theory of OODBs. A clear distinction between objects and values turns out to be essential in the OODM. Types and Classes are used to structure values and objects repectively. Then the problem of unique object identification occurs. We show that this problem can be be solved for classes with extents that are completely representable by values. Such classes are called value-representable. Another advantage of the relational approach is the existence o...
On Maintaining Priorities in a Production Rule System
- In Proceedings of the Seventeenth International Conference on Very Large Data Bases
, 1991
"... We present a priority system which is particularly suited for production rules coupled to databases. In this system, there are default priorities between all rules and overriding user-defined priorities between particular rules. Rule processing using this system is repeatable: for a given set of rul ..."
Abstract
-
Cited by 31 (2 self)
- Add to MetaCart
We present a priority system which is particularly suited for production rules coupled to databases. In this system, there are default priorities between all rules and overriding user-defined priorities between particular rules. Rule processing using this system is repeatable: for a given set of rules and priorities, the rules are considered for execution in the same order if the same set of transactions is executed twice on the same initial database state. The rule order adheres to the default order as closely as possible: rules are considered in the same order as the default order unless user-defined precedence constraints force an inversion. We present data structures and efficient algorithms for implementing such a priority system. We show how the data structures can be incrementally maintained as user-defined priorities are altered. We also discuss how the proposed scheme can be extended to build a multi-level hierarchical priority system. 1 Introduction Incorporation of producti...
On Implementing a Language for Specifying Active Database Execution Models
, 1993
"... A key issue when incorporating rules into database systems concerns understanding alternative semantics of rule application. The database programming language Heraclitus[Alg,C] is an extension of C that supports the relational algebra and novel constructs related to the specification of these semant ..."
Abstract
-
Cited by 19 (3 self)
- Add to MetaCart
A key issue when incorporating rules into database systems concerns understanding alternative semantics of rule application. The database programming language Heraclitus[Alg,C] is an extension of C that supports the relational algebra and novel constructs related to the specification of these semantics. In particular, the language supports deltas as "firstclass citizens" -- these are values corresponding to database updates, which may or may not be applied. Deltas are useful in representing the effect of rule firings, and for representing virtual database states, as they arise in the specification of several active database systems. Unlike previous work on differential files and hypothetical relations, Heraclitus supports operators for combining deltas, and also alternative implementations that incorporate the impact of deltas into conventional database operators (e.g., join). The framework also appears useful in connection with hypothetical database access, version control, specifying...
Decidability and Undecidability Results for the Termination Problem of Active Database Rules
- In Proceedings of the 17th ACM SIGMOD-SIGACT-SIGART Symposium on Principles of Database Systems
, 1998
"... Active database systems enhance the functionality of traditional databases through the use of active rules or `triggers'. One of the principal questions for such systems is that of termination - is it possible for the rules to recursively activate one another indefinitely, given an initial triggerin ..."
Abstract
-
Cited by 19 (8 self)
- Add to MetaCart
Active database systems enhance the functionality of traditional databases through the use of active rules or `triggers'. One of the principal questions for such systems is that of termination - is it possible for the rules to recursively activate one another indefinitely, given an initial triggering event. In this paper, we study the decidability of the termination problem, our aim being to delimit the boundary between the decidable and the undecidable. We present two families of rule languages, the one literal languages where each update is permitted to have just one atom in its body, and the unary languages where only unary relations may be updated, but higher arity relations may be accessed through views. Within each of these, we identify members close to the boundary of (un)decidability. Our context is similar to the while query language and the dynamics gives an interesting contrast to Datalog with negation; our results shed insights on the power of triggers as well as comparison of the termination problem to boundedness and query containment.
Termination and Confluence of Rule Execution
- In Proceedings of the Second International Conference on Information and Knowledge Management
, 1993
"... Rules provide the functionality for constraint enforcement and view maintenance. A provably correct implementation of both issues based on rules, requires confluent and terminating behaviour of the rule set. However, little work has been done so far on the static detection of these properties. In ..."
Abstract
-
Cited by 17 (0 self)
- Add to MetaCart
Rules provide the functionality for constraint enforcement and view maintenance. A provably correct implementation of both issues based on rules, requires confluent and terminating behaviour of the rule set. However, little work has been done so far on the static detection of these properties. In this paper, a design theory for rule sets in an OODBMS is developed. This paper introduces two predicates, viz., Terminate(n) and Independent, which imply respectively termination and confluency. Both predicates are characterised under two kinds of rule execution semantics: set and instance based. The decidability of the predicates is proven and it is shown that set and instance based semantics coincide whenever the rule set is independent and terminates. Moreover, sufficient conditions of low algorithmic complexity for both Terminate(n) and Independent under both kinds of semantics are given. 1991 CR Categories: H.2.1[Information Systems]: Logical Design- data models; H.2.3[Informat...

