The Design and Implementation of the Ariel Active Database Rule System
Final rept. Sep 88-Sep 91,
WRIGHT LAB WRIGHT-PATTERSON AFB OH
Pagination or Media Count:
This paper describes the design and implementation of the Ariel DBMS and its tightly-coupled forward-chaining rule system. The query language of Ariel is a subset of POSTQUEL, extended with a new production-rule sublanguage. Ariel supports traditional relational database query and update operations efficiently, using a System R-like query processing strategy. In addition, the Ariel rule system is tightly coupled with query and update processing. Ariel rules can have conditions based on a mix of patterns, events, and transitions. For testing rule conditions, Ariel makes use of a discrimination network composed of a special data structure for testing single-relation selection conditions efficiently, and a modified version of the TREAT algorithm, called A- TREAT, for testing join conditions. The key modification to TREAT which could also be used in the Rete algorithm is the use of virtual a-memory nodes which save storage since they contain only the predicate associated with the memory node instead of copies of data matching the predicate. The rule-action executor in Ariel binds the data matching a rules condition to the action of the rule at rule fire time, and executes the rule action using the query processor.
- Computer Systems