A performance comparison of the Rete and TREAT algorithms for testing database rule conditions

The authors present the results of a simulation comparing the performance of the two most widely used production rule condition testing algorithms, Rete and TREAT, in the context of a database rule system. The results show that TREAT almost always outperforms Rete. TREAT requires less storage than Rete, and is less sensitive to optimization decisions than Rete. Based on these results, it is concluded that TREAT is the preferred algorithm for testing join conditions of database rules. Since Rete does outperform TREAT in some cases, this study suggests a next step which would be to develop a hybrid version of Rete and TREAT with an optimizer that would decide which strategy to use based on the rule definition and statistics about the data and update patterns.<<ETX>>

[1]  Daniel P. Miranker TREAT: a better match algorithm for AI production systems , 1987, AAAI 1987.

[2]  Toru Ishida,et al.  Optimizing Rules in Production System Programs , 1988, AAAI.

[3]  Eric N. Hanson,et al.  A predicate matching algorithm for database rule systems , 1990, SIGMOD '90.

[4]  Eric Simon,et al.  Making deductive databases a practical technology: a step forward , 1990, SIGMOD '90.

[5]  Jennifer Widom,et al.  Set-oriented production rules in relational database systems , 1990, SIGMOD '90.

[6]  Michael Stonebraker,et al.  The design of the POSTGRES rules system , 1987, 1987 IEEE Third International Conference on Data Engineering.

[7]  Alfonso F. Cardenas Analysis and performance of inverted data base structures , 1975, CACM.

[8]  Eric N. Hanson,et al.  An initial report on the design of Ariel DBMS with an integrated production rule system , 1989, SGMD.

[9]  Timos K. Sellis,et al.  Data intensive production systems: the DIPS approach , 1989, SGMD.

[10]  Charles L. Forgy,et al.  Rete: A Fast Algorithm for the Many Patterns/Many Objects Match Problem , 1982, Artif. Intell..

[11]  Lois M. L. Delcambre,et al.  The Relational Production Language: A Production Language for Relational Databases , 1988, Expert Database Conf..

[12]  S. B. Yao,et al.  Approximating block accesses in database organizations , 1977, CACM.

[13]  Umeshwar Dayal,et al.  The HiPAC project: combining active databases and timing constraints , 1988, SGMD.

[14]  Anoop Gupta,et al.  Comparison of the RETE and TREAT production matchers for soar (A summary) , 1988, AAAI 1988.

[15]  Michael Stonebraker,et al.  A commentary on the POSTGRES rules system , 1989, SGMD.