SAMOS in hindsight: experiences in building an active object-oriented DBMS

Active object-oriented database management systems incorporate object-oriented database technology and active mechanisms such as event-condition-action rules (ECA-rules). SAMOS has been among the first representatives of this class of systems. During the development of SAMOS, numerous then open research questions have been addressed. In this paper, we present a "historical" perspective of the SAMOS project and report on lessons and experiences we have gained in the project. We identify requirements, present feasible solutions, and report on experiences we have drawn from this project. In particular, we describe the rule model of SAMOS, which represents a smooth integration of ECA-rules into an object-oriented data model. We also discuss the implementation and architecture of the SAMOS prototype on top of a passive object-oriented database management system (OODBMS). Furthermore, we report on performance and usability issues. In order to analyze performance, we have developed a benchmark; we discuss the experiences (and improvements) we have made by running the benchmark on SAMOS and by comparing the results to those obtained for other systems. Usability issues have been investigated with respect to tool support for designing SAMOS applications and analyzing rule systems. Finally, we discuss our experiences in implementing SAMOS and the conclusions we have drawn for the implementation of other types of event-based persistent systems as well as a development method for active systems in general.

[1]  Narain H. Gehani,et al.  Ode as an Active Database: Constraints and Triggers , 1991, VLDB.

[2]  E. B. Moss,et al.  Nested Transactions: An Approach to Reliable Distributed Computing , 1985 .

[3]  Kurt Rothermel,et al.  Concurrency control issues in nested transactions , 2005, The VLDB Journal.

[4]  Jennifer Widow Deriving Production Rules for Incremental View Maintenance S t , 1998 .

[5]  簡聰富,et al.  物件導向軟體之架構(Object-Oriented Software Construction)探討 , 1989 .

[6]  Michael Stonebraker,et al.  The POSTGRES Rule Manager , 1988, IEEE Trans. Software Eng..

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

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

[9]  Klaus R. Dittrich,et al.  FRAMBOISE—an approach to framework-based active database management system construction , 1998, International Conference on Information and Knowledge Management.

[10]  Klaus R. Dittrich,et al.  On Object-Oriented Database Systems , 1991, Topics in Information Systems.

[11]  Arne Koschel,et al.  Unbundling active functionality , 1998, SGMD.

[12]  Sharma Chakravarthy,et al.  ECA rule integration into an OODBMS: architecture and implementation , 1995, Proceedings of the Eleventh International Conference on Data Engineering.

[13]  Christine Collet,et al.  NAOS - Efficient and Modular Reactive Capabilities in an Object-Oriented Database System , 1994, VLDB.

[14]  Mikael Berndtsson,et al.  Letter from the TC Chair , 1992, IEEE Data Eng. Bull..

[15]  Klaus R. Dittrich,et al.  Integrating Active Concepts into an Object-Oriented database System , 1991, DBPL.

[16]  Norman W. Paton,et al.  Active Rules in Database Systems , 1998, Monographs in Computer Science.

[17]  Michael Stonebraker,et al.  On rules, procedure, caching and views in data base systems , 1990, SIGMOD '90.

[19]  Michael Stonebraker,et al.  On rules, procedures, caching and views in database systems , 1994, SIGMOD 1994.

[20]  Norbert Ritter,et al.  Applying ECA-Rules in DB-based Design Environments , 1998, CAD.

[21]  Udo W. Pooch,et al.  Discrete Event Simulation: A Practical Approach , 1992 .

[22]  David J. DeWitt,et al.  A data model and query language for EXODUS , 1988, SIGMOD '88.

[23]  Andreas Geppert,et al.  Event-based distributed work-flow execution with eve , 2009 .

[24]  Klaus R. Dittrich,et al.  Events in an Active Object-Oriented Database System , 1993, Rules in Database Systems.

[25]  Jörgen Hansson,et al.  Active and Real-Time Database Systems (ARTDB-95) , 1995, Workshops in Computing.

[26]  Klaus R. Dittrich,et al.  SIRIUS: An Approach for Data Warehouse Refreshment , 1998 .

[27]  Klaus R. Dittrich,et al.  Investigating Termination in Active Database Systems with Expressive Rule Languages , 1997, Rules in Database Systems.

[28]  Andreas Geppert,et al.  Realization of Cooperative Agents using an Active Object-Oriented Database System , 1995, Rules in Database Systems.

[29]  Alejandro P. Buchmann,et al.  Rules in an Open System: The REACH Rule System , 1993, Rules in Database Systems.

[30]  Erich Gamma,et al.  Design and Implementation of ET++, a Seamless Object-Oriented Application Framework 1 , 1989 .

[31]  Klaus R. Dittrich,et al.  Specification and Implementation of Consistency Constraints in Object-Oriented Database Systems: Applying Programming-by-Contract , 1995, BTW.

[32]  R. Chandra,et al.  Active databases for financial applications , 1994, Proceedings of IEEE International Workshop on Research Issues in Data Engineering: Active Databases Systems.

[33]  Erich Gamma,et al.  Design and Implementation of ET++, a Seamless Object-Oriented Application Framework , 1989, Struct. Program..

[34]  Klaus R. Dittrich,et al.  Detecting composite events in active database systems using Petri nets , 1994, Proceedings of IEEE International Workshop on Research Issues in Data Engineering: Active Databases Systems.

[35]  Klaus R. Dittrich,et al.  Architecture and Implementation of the Active Object-OrientedDatabase Management System SAMOS , 1995 .

[36]  David J. DeWitt,et al.  Shoring up persistent applications , 1994, SIGMOD '94.

[37]  Michael Fröhlich,et al.  Demonstration of the Interactive Graph-Visualization System da Vinci , 1994, GD.

[38]  Umeshwar Dayal,et al.  Ten Years of Activity in Active Database Systems: What Have We Accomplished? , 1995, ARTDB.

[39]  Norman W. Paton,et al.  Dimensions of Active Behaviour , 1993, Rules in Database Systems.

[40]  Klaus R. Dittrich,et al.  Bundling: Towards a New Construction Paradigm for Persistent Systems , 1998, Netw. Inf. Syst. J..

[41]  Klaus R. Dittrich,et al.  Graphical tools for rule development in the active DBMS SAMOS , 1997, Proceedings 13th International Conference on Data Engineering.

[42]  Gerti Kappel,et al.  TriGS: Making a Passive Object-Oriented Database System Active , 1994, J. Object Oriented Program..

[43]  Anca Vaduva,et al.  SAMOS an Active Object-Oriented Database System: Manual , 1996 .

[44]  Jennifer Widom,et al.  Active Database Systems: Triggers and Rules For Advanced Database Processing , 1994 .

[45]  Klaus R. Dittrich,et al.  The active database management system manifesto: a rulebase of ADBMS features , 1995, SGMD.

[46]  Sharma Chakravarthy,et al.  Composite Events for Active Databases: Semantics, Contexts and Detection , 1994, VLDB.

[47]  David J. DeWitt,et al.  The Architecture of the EXODUS Extensible DBMS , 1986, On Object-Oriented Database System.

[48]  José A. Blakeley,et al.  Architecture of an open object-oriented database management system , 1992, Computer.

[49]  David J. DeWitt,et al.  The 007 Benchmark , 1993, SIGMOD '93.

[50]  Andreas Geppert,et al.  Realization of Cooperative Agents Using an Active Object-Oriented Database Management System , 1995 .

[51]  O. Deux,et al.  The O2 system , 1991 .

[52]  Christine Collet,et al.  Efficient and modular reactive capabilities in an Object-Oriented Database System , 1994, BDA.

[53]  Klaus R. Dittrich,et al.  A Designer's Benchmark for Active Database Management Systems: oo7 Meets the BEAST , 1995, Rules in Database Systems.

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

[55]  O. Deux,et al.  The O2 system , 1991 .

[56]  David S. Rosenblum,et al.  A design framework for Internet-scale event observation and notification , 1997, ESEC '97/FSE-5.

[57]  Jack A. Orenstein,et al.  The ObjectStore database system , 1991, CACM.

[58]  Mikael Berndtsson,et al.  Performance Evaluation of Object-Oriented Active Database Systems Using the BEAST Benchmark , 1998, Theory Pract. Object Syst..

[59]  Klaus R. Dittrich,et al.  Design and Implementation of Process-Oriented Environments with Brokers and Services , 1996, Object Orientation with Parallelism and Persistence.

[60]  Jennifer Widom,et al.  Managing Semantic Heterogeneity with Production Rules and Persistent Queues , 1993, VLDB.

[61]  Klaus R. Dittrich,et al.  Graphic Tools for Rule Development in the Active DBMS SAMOS (Exhibition Paper). , 1997 .

[62]  Angelika Kotz Dittrich Adding Active Functionality to an Object-Oriented Database System - a Layered Approach , 1993, BTW.

[63]  Letizia Tanca,et al.  Active Rule Management in Chimera , 1996, Active Database Systems: Triggers and Rules For Advanced Database Processing.

[64]  Klaus R. Dittrich,et al.  Time Issues in Active Database Systems , 1993 .

[65]  W. Alex Gray,et al.  An Implementation of Database Alerters for Health District Management , 1988, BNCOD.

[66]  Hendrik Segers,et al.  Composite event specification in active databases: model and implementation , 1992 .

[67]  Alejandro P. Buchmann,et al.  Building an integrated active OODBMS: requirements, architecture, and design decisions , 1995, Proceedings of the Eleventh International Conference on Data Engineering.

[68]  Klaus R. Dittrich,et al.  The SAMOS Active DBMS Prototype (Demonstration Paper). , 1995 .

[69]  Klaus R. Dittrich,et al.  The SAMOS active DBMS prototype , 1995, SIGMOD '95.

[70]  Eric Simon,et al.  Promises and Realities of Active Database Systems , 1995, VLDB.

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

[72]  Eric N. Hanson,et al.  The Design and Implementation of the Ariel Active Database Rule System , 1996, IEEE Trans. Knowl. Data Eng..

[73]  Chun Zhang,et al.  Storing and querying ordered XML using a relational database system , 2002, SIGMOD '02.

[74]  Surajit Chaudhuri,et al.  An overview of data warehousing and OLAP technology , 1997, SGMD.

[75]  HärderTheo,et al.  Concurrency control issues in nested transactions , 1993, VLDB 1993.

[76]  Gul A. Agha,et al.  Concurrent object-oriented programming , 1993, CACM.

[77]  Jennifer Widom,et al.  Better Termination Analysis for Active Databases , 1993, Rules in Database Systems.

[78]  Jennifer Widom,et al.  Implementing Set-Oriented Production Rules as an Extension to Starburst , 1991, VLDB.

[79]  Hans-Jörg Schek,et al.  Object Orientation with Parallelism and Persistence , 1996 .

[80]  Corporate Act-Net Consortium,et al.  The active database management system manifesto: a rulebase of ADBMS features , 1996, SGMD.

[81]  Narain H. Gehani,et al.  Composite Event Specification in Active Databases: Model & Implementation , 1992, VLDB.

[82]  Elena Baralis,et al.  An Intelligent Database System Application: The Design of EMS , 1994, ADB.