This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
The Design and Implementation of the Ariel Active Database Rule System
February 1996 (vol. 8 no. 1)
pp. 157-172

Abstract—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 selections, joins, 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α-memory nodes which save storage since they contain only the predicate associated with the memory node instead of copies of data matching the predicate. In addition, the notions of tokens and α-memory nodes are generalized to support event and transition conditions. The rule-action executor in Ariel binds the data matching a rule's condition to the action of the rule at rule fire time, and executes the rule action using the query processor.

[1] ASK Computer Systems, INGRES/SQL Reference Manual, version 6.4, pp. 6-67 to 6-79, 1992.
[2] M.M. Astrahan,M.W. Blasgen,D.D. Chamberlin,K.P. Eswaran,J.N. Gray,P.P. Griffiths,W.F. King,R.A. Lorie,P.R. McJones,J.W. Mehl,G.R. Putzolu,I.L. Traiger,B.W. Wade, and V. Watson,"System R: Relational approach to database management," ACM Trans. Database Systems, vol. 1, no. 2, pp. 97-137, June 1976.
[3] D.S. Batory,J.R. Barnett,J.F. Garza,K. Smith,K. Tsukuda,B.C. Twichell, and T.W. Wise,"GENESIS: An extensible database managment system," Readings in Object-Oriented Database Systems, S.B. Zdonik and D. Maier, eds., pp. 500-518.San Mateo, Calif.: Morgan Kaufmann, 1990.
[4] D.A. Brant and D.P. Miranker,"Index support for rule activation," Proc. ACM SIGMOD Int'l Conf. Management of Data, pp. 42-48, May 1993.
[5] L. Brownston,R. Farrell,E. Kant, and N. Martin,Programming Expert Systems in OPS5 An Introduction to Rule-Based Programming. Addison Wesley, 1985.
[6] M. Carey,D. DeWitt,D. Frank,G. Graefe,J. Richardson,E. Shekita, and M. Muralikrishna,"The architecture of the EXODUS extensible DBMS," Proc. Int'l Workshop Object-Oriented Database Systems, Sept. 1986.
[7] S. Chakrabarthy,"Rule management and evaluation: An active DBMS perspective," SIGMOD Record, vol. 18, no. 3, pp. 20-28, Sept. 1989.
[8] S. Chakravarthy et al., "HiPAC: A research project in active, time-constraineddatabase management, final technical report," Technical Report XAIT-89-02, Xerox Advanced Information Tech nology, Aug. 1989.
[9] U. Dayal,B. Blaustein,A. Buchmann et al., , "The HiPAC project: Combining active databases and timing constraints," SIGMOD Record, vol. 17, no. 1, pp. 51-70, Mar. 1988.
[10] L.M.L. Delcambre and J.N. Etheredge,"The relational production language: A production language for relational databases," Proc. Second Int'l Conf. Expert Database Systems, pp. 153-162, Apr. 1988.
[11] L.M.L. Delcambre and J.N. Etheredge,"A self-controlling interpreter for the relational production language," Proc. ACM SIGMOD Int'l Conf. Management of Data, pp. 396-403,Chicago, June 1988.
[12] C.L. Forgy,"OPS5 user's manual, " Technical Report CMU-CS-81-135, Carnegie Mellon Univ., Pittsburgh, July 1981.
[13] C.L. Forgy,"Rete: A fast algorithm for the many pattern/many object pattern match problem," Artificial Intelligence, vol. 19, pp. 17-37, 1982.
[14] N. Gehani and H. Jagadish,"Ode as an active database: Constraints and triggers," Proc. 17th Int'l Conf. Very Large Data Bases, Sept. 1991.
[15] L. Haas,W. Chang,G.M. Lohman et al., "Starburst mid-flight: As the dust clears," , IEEE Trans. Knowledge and Data Engineering, vol. 2, no. 1, pp. 143-160, Mar. 1990.
[16] E.N. Hanson,"Rule condition testing and action execution in Ariel," Proc. ACM SIGMOD Int'l Conf. Management of Data, pp. 49-58, June 1992.
[17] E.N. Hanson,"Gator: A generalized discrimination network for production rule matching," Proc. IJCAI Workshop on Production Systems and their Innovative Applications, Aug. 1993.
[18] E.N. Hanson and M. Chaabouni,"The IBS tree: A data structure for finding all intervals that overlap a point," Technical Report WSU-CS-90-11, Wright State Univ., Apr. 1990.
[19] E.N. Hanson,M. Chaabouni,C. Kim, and Y. Wang,"A predicate matching algorithm for database rule systems," Proc. ACM SIGMOD Int'l Conf. Management of Data, pp. 271-280, May 1990.
[20] E.N. Hanson,R. Dastur, and V. Ramaswamy,"An architecture for recoverable interaction between applications and active databases," Technical Report CIS-TR-93-024, Univ. of Florida, July 1993 (extended abstract).
[21] E.N. Hanson,T. Harvey, and M. Roth,"Experiences in database system implementation using a persistent programming language," Software Practice and Experience, 1993.
[22] E.N. Hanson and T. Johnson,"The interval skip list: A data structure for finding all intervals that overlap a point," Technical Report TR92-016, CIS Dept., Univ. of Florida, June 1992 (submitted for publication).
[23] E.N. Hanson and J. Widom,"Rule processing in active database systems," Int'l J. Expert Systems, vol. 6, no. 1, pp. 83-119, 1993.
[24] D.R. McCarthy and U. Dayal,"The architecture of an active data base management system," Proc. ACM SIGMOD Int'l Conf. Management of Data, pp. 215-224, June 1989.
[25] E.M. McCreight,"Priority search trees," SIAM J. Computing, vol. 14, no. 2, pp. 257-278, 1985.
[26] D.P. Miranker,"TREAT: A better match algorithm for AI production systems," Proc. AAAI Nat'l Conf. Artificial Intelligence, pp. 42-47, Aug. 1987.
[27] D.P. Miranker and D.A. Brant,"An algorithmic basis for integrating production systems and large databases," Proc. IEEE Data Eng. Conf., pp. 353-360, 1990.
[28] D.P. Miranker and B.J. Lofaso,"The organization and performance of a TREAT-based production system compiler," IEEE Trans. Knowledge and Data Engineering, vol. 3, no. 1, pp. 3-10, Mar. 1991.
[29] W. Pugh,"Skip lists: A probablistic alternative to balanced trees," Comm. ACM, vol. 33, no. 6, pp. 668-676, June 1990.
[30] L. Raschid,T. Sellis, and C.-C. Lin,"Exploiting concurrency in a DBMS implementation for production systems," Technical Report UMIACS-TR-89-5, Univ. of Maryland, Jan. 1989.
[31] A. Rastogi,"Transition and event condition testing and rule execution in Ariel," Master's thesis, Dept. of Computer Science and Eng., Wright State Univ., June 1991.
[32] J.E. Richardson and M.J. Carey,"Programming constructs for database system implementation in EXODUS," Proc. 1987 ACM SIGMOD Int'l Conf. Management of Data, pp. 208-219, May 1987.
[33] I. Roy,"Rule condition network generation and activation in Ariel," Master's thesis, Dept. of Computer Science and Eng., Wright State Univ., Oct. 1991.
[34] H. Samet, The Design and Analysis of Spatial Data Structures. Addison-Wesley, 1990.
[35] U. Schreier,H. Pirahesh,R. Agrawal, and C. Mohan,"Alert: An architecture for transforming a passive DBMS into an active DBMS," Proc. 17th Int'l Conf. Very Large Data Bases,Barcelona, Sept. 1991.
[36] T. Sellis,C.-C. Lin, and L. Raschid,"Data intensive production systems: The DIPS approach," SIGMOD Record, pp. 52-58, Sept. 1989.
[37] M. Stonebraker,"Implementation of integrity constraints and views by query modification," Proc. SCM SIGMOD Int'l Conf. Management of Data, pp. 65-78, June 1975.
[38] M. Stonebraker, E. Hanson, and S. Potamianos, “The POSTGRES Rule Manager,” IEEE Trans. Software Eng., pp. 897-907, 1988.
[39] M. Stonebraker,M. Hearst, and S. Potaminos,"A commentary on the POSTGRES rules system," SIGMOD Record, vol. 18, no. 3, pp. 5-11, Sept. 1989.
[40] M. Stonebraker and G. Kemnitz,"The POSTGRES next-generation database management system," Comm. ACM, vol. 34, no. 10, pp. 78-92, Oct. 1991.
[41] M. Stonebraker,L. Row, and M. Hirohama,"The implementation of POSTGRES," IEEE Trans. Knowledge and Data Engineering, vol. 2, no. 7, pp. 125-142, Mar. 1990.
[42] Y. Wang and E.N. Hanson,"A performance comparison of the Rete and TREAT algorithms for testing database rule conditions," Proc. IEEE Data Eng. Conf., pp. 88-97, Feb. 1992.
[43] J. Widom,R.J. Cochrane, and B.G. Lindsay,"Implementing set-oriented production rules as an extension to Starburst," Proc. 17th Int'l Conf. Very Large Data Bases, 1991.
[44] J. Widom and S.J. Finkelstein,"Set-oriented production rules in relational database systems," Proc. 1990 ACM SIGMOD Int'l Conf. Management of Data, pp. 259-270, 1990.
[45] M. Zhang,"Rule join condition testing in Ariel," Master's thesis, Dept. of Computer Science and Eng., Wright State Univ., Sept. 1991.

Index Terms:
Active database systems, database management systems, database rule systems, discrimination networks, production rule systems.
Citation:
Eric N. Hanson, "The Design and Implementation of the Ariel Active Database Rule System," IEEE Transactions on Knowledge and Data Engineering, vol. 8, no. 1, pp. 157-172, Feb. 1996, doi:10.1109/69.485644
Usage of this product signifies your acceptance of the Terms of Use.