A large number of non-traditional applications, such as process control, Network management, power generation/distribution networks, factory automation, office workflow control, program trading, threat assessment and analysis, monitoring of intensive care units, air traffic control, and cooperative processing, that require database support need to react (often subject to timing-constraints) to a variety of conditions that are defined over the database state and events that change the state of the database. Traditionally, DBMSs are passive; they execute queries or transactions only when explicitly requested to do so by a user or application program. For these time-constrained applications, it is important to monitor conditions defined on states of the database, and then, once these conditions occur, to invoke specified actions, possibly subject to some timing constraints.
Sentinel -- an object-oriented active DBMS is currently under development at the University of Florida. It uses the DARPA funded Open OODB Toolkit (Alpha release) from Texas Instruments, Dallas as the platform for adding active functionality. As part of this project, We are investigating various issues in active databases including: expressive language for specifying events, efficient detection of primitive and complex events, seamless integration of ECA rules into an OODBMS \cite{ChaHanSu93:ieee-de,AnwMauCha93:sigmod,ChaAnwMau93:tr,Anw92:thesis,Cha92:sam} rule transformation/optimization, concurrent rule and transaction processing, conflict resolution and consistency maintenance, conceptual modeling of active databases. Seamless integration of ECA rules and deductive rules is a primary concern of this project. Use of active database techniques for staging data in client-server architectures for improving functionality and efficiency are being investigated. A framework for applications to interact with each other (for the purposes of cooperative problem solving, engineering design) is being developed using the active database paradigm.
Snoop, an event specification language for active databases has been developed \cite{Mis91:thesis,ChaMis91,ChaMis93:tr}. It allows the specification of database, temporal, and non-database events. Operators for constructing complex events have been identified and their semantics established.
The notion of delta relations and incremental operators developed in HiPAC have been extended in Sentinel to include all the relational operators. Optimizing transformations have been developed \cite{Gar92:thesis,ChaGar91} for the incremental operators. Optimization of situations in distributed databases have also been addressed.
A novel approach to integrate AI and database capabilities is being taken in Sentinel. Techniques for translating large production rule systems (e.g., OPS5) into active database counterparts (relations and triggers) has been investigated \cite{Bla91:thesis}.
An suite of algorithms for nested transactions using 2-phase locking that requires minimal changes to current algorithm in Open OODB has been developed and is being implemented \cite{Sha92:thesis}.
Current trend towards client-server architectures entails that staging of data from server to clients be as transparent as possible. Currently, applications have to manage staging of required data. As part of Sentinel, we are investigating the use of triggers for supporting staging data transparently. Different types of application semantics (such as schema information, constraints, object dependencies, hints that are explicitly stated, and pattern of fetching) is used to generate triggers for pre-fetching data into the client environment \cite{ChaAndLee93:tr}. An actual application is being used to drive this project.
Regarding real-time databases, we are investigating two strategies: i) including dynamic cost in determining priority as opposed to earlier EDF and LSF strategies and ii) transaction pre-analysis to detect safe rollback points to minimize rollback and the number of aborted transactions. Conflicts among transactions and safe rollback points are used to compute costs of rollback and restart. Other techniques for guaranteeing scheduling of transactions with deadlines are also being investigated. Simulation of the cost conscious approach which uses the above techniques indicate promising results \cite{HonJohCha93:sigmod,Hon92:thesis,ChaHonJoh93:bookch}.