|
In an active database system, rules are used to monitor and respond to events happened inside the database. That is, rules are tested actively. Triggers and alerters are such kinds of rules. A trigger is used to detect some conditions happened in a database and then react to the database. An alerter is used to monitor a database and then report the changes to users. The essential research in an active database is to design a user- friendly rule language to specify events happened inside the database, and a rule manager to efficient store, manager and test rules. The thesis presents the implementation of an active database system called RBE (Rule-By-Examples). This system, without designing from scratch, loosely couples OPS5 production system and IBM INGRES DataBase Management System (noted as DBMS) to efficiently monitors databases on complex conditions. In this system, a table-based Rule-By-Examples language(also called RBE) is designed. The internal representations of the RBE rule language are production rules; therefore, rules can be stored, managed, and tested efficiently by using the RETE pattern matching algorithm in a production system. An interface (written in C) is used to loosely couple OPS5 rule system with INGRES DBMS. This interface accepts user's query, inserts this event into OPS5 rule system to wake up rules and sends the original query with these derived queries to INGRES DBMS. Moreover, before those queries are sent to the INGRES DBMS, the interface will reorder those queries according to their relationship and assigned priority. The architecture used in this system shows the applicability of constructing an active database system by integrating any production system and any database system.
|