Beyond Data Dictionaries: Towards a Reflective Architecture of Intelligent Database Systems

The main conjecture of this contribution is that forthcoming intelligent database systems — in particular future DOOD systems — should be designed in such a way that a major part of the services they provide are implemented using these same services in a bootstrapping-like manner. We call such an approach “reflective”, as is often done by researchers in AI and programming languages. Data dictionaries, being part of any reasonable database system today, exhibit the reflective principle in a nutshell, if they are implemented by means of the same data structures that hold application data. However, even for data dictionaries the reflective implementation is often abandoned for performance reasons. Applying reflection for more advanced and ambitious purposes, up to integrity control or query optimization, is viewed even more skeptically by many, despite the conceptual elegance of the approach. On the other hand, there are a few successful approaches around today that can be interpreted as exhibiting a reflective nature. It is the purpose of this paper to identify such examples and to encourage research to invest more in the reflective style and to look for new solutions to the obstacles still ahead.

[1]  Umeshwar Dayal,et al.  Rules Are Objects Too: A Knowledge Model For An Active, Object-Oriented Database System , 1988, OODBS.

[2]  Divesh Srivastava,et al.  Rule Ordering in Bottom-Up Fixpoint Evaluation of Logic Programs , 1990, IEEE Trans. Knowl. Data Eng..

[3]  Norman W. Paton,et al.  Rule Management in Object Oriented Databases: A Uniform Approach , 1991, VLDB.

[4]  David Maier,et al.  Magic sets and other strange ways to implement logic programs (extended abstract) , 1985, PODS '86.

[5]  Carlo Zaniolo,et al.  Magic counting methods , 1987, SIGMOD '87.

[6]  Letizia Tanca,et al.  Logic Programming and Databases , 1990, Surveys in Computer Science.

[7]  Hendrik Decker,et al.  Integrity Enforcement on Deductive Databases , 1986, Expert Database Conf..

[8]  Laurent Vieille,et al.  On Deductive Query Evaluation in the DedGin* System , 1989, DOOD.

[9]  Laurent Vieille,et al.  Recursive Axioms in Deductive Databases: The Query/Subquery Approach , 1986, Expert Database Conf..

[10]  M. Howard Williams,et al.  A Path Finding Method for Constraint Checking in Deductive Databases , 1989, Data Knowl. Eng..

[11]  Jennifer Widom,et al.  Deriving Production Rules for Constraint Maintainance , 1990, VLDB.

[12]  Sharma Chakravarthy,et al.  A new perspective on rule support for object-oriented databases , 1993, SIGMOD '93.

[13]  Jean-Marie Nicolas,et al.  An Outline of BDGEN: A Deductive DBMS , 1983, IFIP Congress.

[14]  Jennifer Widom,et al.  Deriving Production Rules for Incremental View Maintenance , 1991, VLDB.

[15]  Carlo Zaniolo,et al.  Negation and Aggregates in Recursive Rules: the LDL++ Approach , 1993, DOOD.

[16]  François Bry,et al.  Query Evaluation in Deductive Databases: Bottom-Up and Top-Down Reconciled , 1990, Data Knowl. Eng..

[17]  Jeffrey F. Naughton,et al.  Space optimization in the bottom-up evaluation of logic programs , 1991, SIGMOD '91.