• No results found

Deductive Database System Prototypes

Ernest Teniente

4.5 Deductive Database System Prototypes

Results from the large amount of theoretical research devoted to deductive DBs have both penetrated current relational DBMSs and inspired several extensions to the relational model. Furthermore, this research has material- ized in some prototypes of deductive DBMSs [13, 69]. Among these devel- oped systems are Aditi, CORAL, DECLARE, Glue-Nail (see [70] for descriptions and references), LDL [71], EKS-V1 [72, 73], XSB [74], Validity [75], FOLRE [76], and the two prototypes developed during the IDEA Project [77].

Table 4.2 summarizes some aspects of those systems. We have consid- ered only the aspects directly related to the main topics addressed in this chapter, that is, deductive DB definition, query processing, and update proc- essing. Table 4.2 is both an adaptation and an extension of [69], which pro- vides a wider comparison for some of the considered aspects. Relevant issues considered for each aspect are the following.

• Deductive database definition. Deductive rules and integrity con- straints are the key concepts of deductive DBs. All the systems allow the definition of recursive rules that may contain negative literals in the body, while only some of them allow the definition of integrity constraints.

• Query processing. Not all the systems provide the three basic approaches to query evaluation. We distinguish whether a system provides a top-down (TD), bottom-up (BU), or magic sets (MS) approach. Most of the systems incorporate additional optimizations during query evaluation, in addition to the general approaches con- sidered in this chapter (see [69]).

Deductive

Databases

129

Table 4.2

Summary of Deductive DBMS Prototypes

Deductive

Prototypes DB Definition Query Processing Update Processing Storage

Rules Constraints Updates Change

computation IC enforcement

Aditi Negative, recursive No TD, BU, MS No None None EDB, IDB

CORAL Negative, recursive No TD, BU, MS Base None None EDB, IDB

DECLARE Negative, recursive No BU, MS No None None EDB

EKS-V1 Negative, recursive Yes TD Base MVM, ICC ICC EDB, IDB

FOLRE Negative, recursive Yes TD Base, view MVM, ICC, CM ICC, ICM EDB, IDB

Glue-Nail Negative, recursive No BU, MS Base None None EDB

IDEA Project Negative, recursive Yes TD Base MVM, ICC, CM ICC, ICM EDB, IDB

LDL Negative, recursive No TD, BU, MS Base None None EDB

• Update processing. Three issues are relevant here: the kind of updates allowed by each system, that is, updates of base facts and/or view updates; the applications of change computation provided, that is, materialized view maintenance (MVM), integrity constraint check- ing (ICC), or condition monitoring (CM); and the integrity con- straint enforcement policy, that is, ICC or integrity constraint maintenance (ICM).

• Storage.It states whether the EDB, the IDB, or both are kept on sec- ondary storage.

As shown in Table 4.2, most deductive DBMSs have concentrated on providing efficient techniques for the storage and retrieval of large amounts of complex data. Thus, just a few current deductive DBMSs provide some mechanism for advanced data updating, other than updates of base facts. To our fair knowledge, only EKS-V1, FOLRE, and the two prototypes devel- oped into the IDEA project incorporate advanced update capabilities. On the other hand, systems providing advanced update capabilities have deserved little attention to query processing issues and rely on a back end that fully provides the support for query evaluation needs, or they are not able to evaluate queries efficiently.

4.6 Summary

Deductive DBs contain intensional information, expressed as views and integrity constraints, in addition to extensional information. Therefore, they require a query and an update processing system able to deal with that kind of information. This chapter presented several problems encountered when dealing at run time with intensional information, like query processing, change computation, view updating, or integrity constraint enforcement, and provided an overview of previous research in this area.

While techniques developed as a result of the research in deductive DBs have been incorporated into current relational technology, there is no deduc- tive DBMS in commercial use. A possible reason is that although most deductive prototypes provide efficient techniques for query processing, update processing has not been extensively considered. Therefore, the most distinguishing feature of deductive technology—the update and manage- ment of intensional information—is not fully provided by existing prototypes.

We believe the reason behind this situation is the isolated way in which update problems have been dealt with in the past and the impossibility of applying advanced update processing in practical applications (since it is not provided by major deductive systems).

We want to stress that the difficulties of dealing with intensional infor- mation are not unique to deductive DBs; they also appear in most kinds of DBs that provide some mechanism to define this information, like relational, object-relational, or object-oriented DBs. Hence, those DBs will also need to deal with some of the problems addressed in this chapter.

The design of deductive DBs to identify derived predicates and integrity constraints during conceptual modeling was not addressed in this chapter and is still an open field of research. Some ideas on this topic are pre- sented in [15, 77].

References

[1] Gardarin, G., and P. Valduriez,Relational Databases and Knowledge Bases, Reading, MA: Addison-Wesley, 1989.

[2] Grant, J., and J. Minker, “The Impact of Logic Programming on Databases,”Comm. ACM, Vol. 35, No. 3, 1992, pp. 66–81.

[3] Minker, J. (ed.), Foundations of Deductive Databases and Logic Programming, Los Altos, CA: Morgan Kaufmann, 1988.

[4] Reiter, R., “Towards a Logical Reconstruction of Relational Database Theory,” in M. L. Brodie, J. Mylopoulos, and J. W. Schmidt (eds.),On Conceptual Modeling, New York: Springer-Verlag, 1984, pp. 191–233.

[5] Abiteboul, S., R. Hull, and V. Vianu, Foundations of Databases, Reading, MA: Addison-Wesley, 1995.

[6] Bidoit, N., Bases de Données Déductives: Presentation de Datalog, Armand Colin, Éditeur, 1992, (in French).

[7] Cacace, F., et al., “Logic Programming and Databases,” in P. Loucopoulos and R. Zicari (eds.),Conceptual Modeling, Databases, and CASE, New York: Wiley, 1992, pp. 247–269.

[8] Ceri, S., G. Gottlob, and L. Tanca, Logic Programming and Databases, New York: Springer-Verlag, 1990.

[9] Das, S. K., Deductive Databases and Logic Programming, Reading, MA: Addison- Wesley, 1992.

[10] Date, C. J., An Introduction to Database Systems, 6th ed., Reading, MA: Addison- Wesley, 1995.

[11] Elmasri, R., and S. B. Navathe,Fundamentals of Database Systems, 2nd ed., Redwood City, CA: Benjamin/Cummings, 1994.

[12] Gallaire, H., J. Minker, and J. M. Nicolas, “Logic and Databases: A Deductive Approach,”ACM Computing Surveys, Vol. 16, No. 2, 1984, pp. 153–185.

[13] Minker, J., “Logic and Databases: A 20-Year Retrospective,”Proc. Intl. Workshop on Logic in Databases (LID), San Miniato, Italy, 1996, pp. 5–52.

[14] Ullman, J. D., Principles of Database and Knowledge-Base Systems, Rockville, MD: Computer Science Press, 1988.

[15] Wagner, G., Foundations of Knowledge Systems: With Applications to Databases and Agents, Boston, MA: Kluwer Academic Publishers, 1998.

[16] Lloyd, J. W., and R. Topor, “Making Prolog More Expressive,”J. Logic Programming, Vol. 1, No. 3, 1984, pp. 225–240.

[17] Bancilhon, F., and R. Ramakrishnan, “An Amateur’s Introduction to Recursive Query Processing,”Proc. 12th ACM SIGMOD Conf. on Management of Data, Washington, DC, 1986, pp. 16–52.

[18] Ceri, S., G. Gottlog, and L. Tanca, “What You Always Wanted to Know About Data- log (and Never Dared to Ask),” IEEE Trans. on Knowledge and Data Engineering, Vol. 1, No. 1, 1989, pp. 146–166.

[19] Reiter, R., “On Closed World Databases,” in H. Gallaire and J. Minker (eds.),Logic and Databases, New York: Plenum Press, 1978, pp. 56–76.

[20] Przymusinski, T., “On the Semantics of Stratified Deductive Databases,”Proc. Work- shop on Foundations of Deductive Databases and Logic Programming, Washington, DC, 1986, pp. 433–443.

[21] Bidoit, N., “Negation in Rule-Based Database Languages: A Survey,”Theoretical Com- puter Science, Vol. 78, No. 1, 1991, pp. 3–84.

[22] Winslett, M.,Updating Logical Databases, Cambridge Tracts in Theoretical Computer Science 9, 1990.

[23] Date, C. J., and H. Darwen,A Guide to the SQL Standard, 4th ed., Reading, MA: Addison-Wesley, 1997.

[24] Ramakrishnan, R.,Database Management Systems, Boston, MA: McGraw-Hill, 1998. [25] Urpí, T.,El Mètode dels Esdeveniments per al Càlcul de Canvis en Bases de Dades Deduc-

tives, Ph.D. thesis, Universitat Politècnica de Catalunya, Barcelona, Spain, 1993 (in Catalan).

[26] García, C., et al., “Comparing and Synthesizing Integrity Checking Methods for Deductive Databases,” Proc. 10th Intl. Conf. on Data Engineering (ICDE’94),

[27] Ceri, S., and J. Widom, “Deriving Production Rules for Constraint Maintenance,”

Proc. 16th Intl. Conf. on Very Large Data Bases (VLDB’90), Brisbane, Australia, 1990, pp. 566–577.

[28] Küchenhoff, V., “On the Efficient Computation of the Difference Between Consecu- tive Database States,”Proc. 2nd Intl. Conf. on Deductive and Object-Oriented Databases (DOOD’91), Munich, Germany, 1991, pp. 478–502.

[29] Olivé, A., “Integrity Checking in Deductive Databases,”Proc. 17th Intl. Conf. on Very Large Data Bases (VLDB’91), Barcelona, Spain, 1991, pp. 513–523.

[30] Urpí, T., and A. Olivé, “A Method for Change Computation in Deductive Data- bases,”Proc. 18th Intl. Conf. on Very Large Data Bases (VLDB’92), Vancouver, Can- ada, 1992, pp. 225–237.

[31] Bertino, E., B. Catania, and S. Bressan, “Integrity Constraint Checking in Chimera,”

2nd Intl. Workshop on Constraint Database Systems (CDB’97), Delphi, Greece, 1997, pp. 160–186.

[32] Lee, S. Y., and T. W. Ling, “Further Improvements on Integrity Constraint Checking for Stratifiable Deductive Databases,”Proc. 22nd Intl. Conf. on Very Large Data Bases (VLDB’96), Bombay, India, 1996, pp. 495–505.

[33] Seljee, R., “A New Method for Integrity Constraint Checking in Deductive Data- bases,”Data and Knowledge Engineering, Vol. 15, No. 1, 1995, pp. 63–102.

[34] Gupta, A., and I. S. Mumick, “Maintenance of Materialized Views: Problems, Tech- niques and Applications,”Data Engineering Bulletin, Vol. 18, No. 2, 1995, pp. 3–18. [35] Roussopoulos, N., “Materialized Views and Data Warehouses,” SIGMOD Record,

Vol. 27, No. 1, 1998, pp. 21–26.

[36] Ullman, J. D., “Efficient Implementation of Data Cubes Via Materialized Views,”

Proc. 2nd Intl. Conf. on Knowledge Discovery and Data Mining (KDD-96), Portland, OR, 1996, pp. 386–388.

[37] Baralis, E., S. Ceri, and S. Paraboschi, “Compile-Time and Run-Time Analysis of Active Behaviors,”Trans. of Knowledge and Data Engineering, Vol. 10, No. 3, 1998, pp. 353–370.

[38] Hanson, E. N., et al., “A Predicate Matching Algorithm for Database Rule Systems,”

Proc. ACM SIGMOD Conf. on Management of Data, Atlantic City, NJ, 1990, pp. 271–280.

[39] Rosenthal, A., et al., “Situation Monitoring for Active Databases,” Proc. 15th Intl. Conf. on Very Large Data Bases (VLDB’89), Amsterdam, Netherlands, 1989, pp. 455–464.

[40] Urpí, T., and A. Olivé, “Semantic Change Computation Optimization in Active Databases,”Proc. 4th Intl. Workshop on Research Issues on Data Engineering—Active Database Systems (RIDE-ADS’94), Houston, TX, 1994, pp. 19–27.

Deductive Databases 133

TEAM

FLY

[41] Keller, A. M., “Algorithms for Translating View Updates to Database Updates for Views Involving Selection, Projections and Joins,” Proc. 4th Symp. on Principle of Database Systems (PODS’85), Portland, OR, 1985, pp. 154–163.

[42] Date, C. J., “Updating Views,” inRelational Database: Selected Writings, Reading, MA: Addison-Wesley, 1986, pp. 367–395.

[43] Furtado, A. L., K. C. Sevcik, and C. S. Dos Santos, “Permitting Updates Through Views of Databases,”Information Systems,1979.

[44] Larson, J., and A. Sheth, “Updating Relational Views Using Knowledge at View Definition and View Update Time,” Information Systems, Vol. 16, No. 2, 1991, pp. 145–168.

[45] Bry, F., “Intensional Updates: Abduction Via Deduction,”Proc. 7th Intl. Conf. on Logic Programming (ICLP’90),Jerusalem, Israel, 1990, pp. 561–575.

[46] Decker, H., “An Extension of SLD by Abduction and Integrity Maintenance for View Updating in Deductive Databases,”Proc. Joint Intl. Conf. and Symp. on Logic Program- ming (JICSLP’96), Bonn, Germany, 1996, pp. 157–169.

[47] Guessoum, A., and J. W. Lloyd, “Updating Knowledge Bases II,” New Generation Computing, Vol. 10, 1991, pp. 73–100.

[48] Kakas, A., and P. Mancarella, “Database Updates Through Abduction,”Proc. 16th Intl. Conf. on Very Large Data Bases (VLDB’90), Brisbane, Australia, 1990, pp. 650–661.

[49] Lobo, J., and G. Trajcewski, “Minimal and Consistent Evolution of Knowledge Bases,”J. Applied Non-Classical Logics, Vol. 7, No. 1–2, 1997, pp. 117–146.

[50] Teniente, E., and A. Olivé, “The Events Method for View Updating in Deductive Databases,” Proc. 3rd Intl. Conf. on Extending Database Technology (EDBT’92), Vienna, Austria, 1992, pp. 245–260.

[51] Teniente, E., and A. Olivé, “Updating Knowledge Bases While Maintaining Their Consistency,”VLDB J., Vol. 4, No. 2, 1995, pp. 193–241.

[52] Wüthrich, B., “On Updates and Inconsistency Repairing in Knowledge Bases,”Proc. 9th Intl. Conf. on Data Engineering (ICDE’93), Vienna, Austria, 1993, pp. 608–615. [53] Pastor, J. A., and A. Olivé, “Supporting Transaction Design in Conceptual Modeling

of Information Systems,”Proc. 7th. Intl. Conf. on Advanced Information Systems Engi- neering (CAISE’95), Jyväskylä, Finland, 1995, pp. 40–53.

[54] Montesi, D., E. Bertino, and M. Martelli, “Transactions and Updates in Deductive Databases,”IEEE Trans. on Knowledge and Data Engineering, Vol. 9, No. 5, 1997, pp. 784–797.

[55] Moerkotte, G., and P. C. Lockemann, “Reactive Consistency Control in Deductive Databases,” ACM Trans. on Database Systems, Vol. 16, No. 4, Dec. 1991, pp. 670–702.

[56] Fraternali, P., and S. Paraboschi, “A Review of Repairing Techniques for Integrity Maintenance,” Intl. Work. on Rules in Database Systems (RIDS’93), Edinburgh, Scotland, 1993, pp. 333–346.

[57] Ceri, S., et al., “Automatic Generation of Production Rules for Integrity Mainte- nance,”ACM Trans. on Database Systems, Vol. 19, No. 3, 1994, pp. 367–422. [58] Gertz, M., and U. W. Lipeck, “Deriving Integrity Maintaining Triggers From Trans-

action Graphs,”Proc. 9th Intl. Conf. on Data Engineering (ICDE’93), Vienna, Austria, 1993, pp. 22–29.

[59] Mayol, E., and E. Teniente, “Structuring the Process of Integrity Maintenance,”Proc. 8th Intl. Conf. on Database and Expert Systems Applications (DEXA’97), Toulouse, France, 1997, pp. 262–275.

[60] Qian, X., “The Deductive Synthesis of Database Transactions,”ACM Trans. on Data- base Systems, Vol. 18, No. 4, 1993, pp. 626–677.

[61] Schewe, K. D., and B. Thalheim, “Achieving Consistency in Active Databases,”Proc. Intl. Work. on Research Issued in Data Engineering—Active Database Systems (RIDE-ADS’94), Houston, TX, 1994, pp. 71–76.

[62] Teniente, E., and T. Urpí, “A Common Framework for Classifying and Specifying Deductive Database Updating Problems,”Proc. 11th Intl. Conf. on Data Engineering (ICDE’95), Taipei, Taiwan, 1995, pp. 173–182.

[63] Bry, F., H. Decker, and R. Manthey, “A Uniform Approach to Constraints Satisfac- tion and Constraints Satisfiability in Deductive Databases,” Proc. 1st Intl. Conf. on Extending Database Technology (EDBT’88), Venezia, Italy, 1988, pp. 488–505. [64] Inoue, K., M. Koshimura, and R. Hasegawa, “Embedding Negation as Failure Into a

Model Generation Theorem Prover,”Proc. 11th Intl. Conf. on Automatic Deduction (CADE’92), Saratoga Springs, NY, 1992, pp. 400–415.

[65] Levy, A., and Y. Sagiv, “Semantic Query Optimization in Datalog Programs,”Proc. 14th Symp. on Principle of Database Systems (PODS’95), San Jose, CA, 1995, pp. 163–173.

[66] Gupta, A., et al., “Constraint Checking With Partial Information,”Proc. 13th Symp. on Principles of Database Systems (PODS’94), Minneapolis, MN, 1994, pp. 45–55. [67] Decker, H., E. Teniente, and T. Urpí, “How To Tackle Schema Validation by

View Updating,”Proc. 5th Intl. Conf. on Extending Database Technology (EDBT’96), Avignon, France, 1996, pp. 535–549.

[68] Farré, C., E. Teniente, and T. Urpí, “Query Containment as a View Updating Prob- lem,”Proc. 9th Database and Expert Systems Applications (DEXA’98), Vienna, Austria, 1998, 310–321.

[69] Ramakrishnan, R., and J. Ullman, “A Survey of Research on Deductive Database Sys- tems,”J. Logic Programming, Vol. 23, No. 2, 1995, pp. 125–149.

[70] “Special Issue on Prototypes of Deductive Database Systems,”J. Very Large Databases, Vol. 3, No. 2, 1994.

[71] Chimenti, D., et al., “The LDL System Prototype,”IEEE Trans. on Knowledge and Data Engineering, Vol. 2, No. 1, 1990, pp. 76–90.

[72] Vieille, L., et al., “EKS-V1: A Short Overview,”AAAI’90 Workshop on KB Manage- ment Systems, 1990.

[73] Vieille, L., et al., “An Overview of the EKS-V1 System,”ECRC Research Report, 1991. [74] Sagonas, K., T. Swift, and D. S. Warren, “XSB as an Efficient Deductive Database Engine,” Proc. ACM SIGMOD Conf. on Management of Data, Minneapolis, MN, 1994, pp. 442–453.

[75] Friesen, O., A. Lefebvre, and L. Vieille, “Validity: Applications of a DOOD System,”

Proc. 5th Intl. Conf. on Extending Database Technology (EDBT’96), Avignon, France, 1996, pp. 131–134.

[76] Mayol, E., et al., “FOLRE: A Deductive Database System for the Integrated Treat- ment of Updates,”Proc. 3rd Intl. Workshop on Rules in Database Systems (RIDS’97), Skövde, Sweden, 1997, pp. 35–50.

[77] Ceri, S., and P. Fraternali,Designing Database Applications With Objects and Rules: The IDEA Methodology, Reading, MA: Addison-Wesley, 1997.

Selected Bibliography

The main goal of this chapter was to provide a comprehensive summary of the main features of deductive DBs. A more detailed explanation of some of these features is provided in some of the references.

References [5, 6, 8, 9, 15] are devoted entirely to deductive DBs. Their main concern is to describe the semantics of deductive DBs and to explain the different approaches to query processing. Reference [9] has a chapter on integrity constraining checking, while [15] discusses deductive DB design and considers deductive DBs in the general context of knowledge systems.

Most books on DBs, for instance, [1, 10, 11, 14], include some chap- ters on deductive DBs. They address mainly issues behind the semantics of deductive DBs and query processing issues. Reference [14] also considers the problem of query containment checking.

Update processing is not broadly covered by any of the references. Relevant papers that have been cited in this chapter describe the different problems that need to be addressed.

5

Temporal Database Systems

1