Encyclopedia of Database Systems

Living Edition
| Editors: Ling Liu, M. Tamer Özsu

Active Database, Active Database (Management) System

  • Mikael BerndtssonEmail author
  • Jonas Mellin
Living reference work entry
DOI: https://doi.org/10.1007/978-1-4899-7993-3_502-2

Definition

An active database (aDB) or active database (management) system (aDBS/aDBMS) is a database (management) system that supports reactive behavior through ECA rules.

Historical Background

The term active database was first used in the early 1980s [12]. Some related active database work was also done within the area of expert database systems in the mid 1980s, but it was not until the mid/late 1980s that the research on supporting ECA rules in database systems took off, for example [10, 12, 18]. During the 1990s, the area was extensively explored through more than 20 suggested active database prototypes and a large body of publications:
  • Seven workshops were held between 1993 and 1997: RIDS [12, 16, 17], RIDE-ADS [20], Dagstuhl Seminar [5], and ARTDB [3, 4].

  • Two special issues of journals [8, 9] and one special issue of ACM SIGMOD Record [1].

  • Two textbooks [13, 19] and one ACM Computing Survey paper [15].

In addition, the groups within the ACT-NET consortium (A European research network of Excellence on active databases 1993–1996) reached a consensus on what constitutes an active database management system with the publication of the Active Database System Manifesto [2].

Most of the active databases are monolithic and assume a centralized environment; consequently, the majority of the prototype implementations do not consider distributed issues. Initial work on how active databases are affected by distributed issues is reported in [7].

Foundations

An active database can automatically react to events such as database transitions, time events, and external signals in a timely and efficient manner. This is in contrast to traditional database systems, which are passive in their behaviors, so that they only execute queries and transactions when they are explicitly requested to do so. Previous approaches to support reactive behavior can broadly be classified into:
  • Periodically polling the database

  • Embedding or encoding event detection and related action execution in the application code

The first approach implies that the queries must be run exactly when the event occurs. The frequency of polling can be increased in order to detect such an event, but if the polling is too frequent, then the database is overloaded with queries and will most often fail. On the other hand, if the frequency is too low, the event will be missed.

The second approach implies that every application which updates the database needs to be augmented with condition checks in order to detect events. For example, an application may be extended with code to detect whether the quantity of certain items has fallen below a given level. From a software engineering point of view, this approach is inappropriate, since a change in a condition specification implies that every application that uses the modified condition needs to be updated.

Neither of the two previous approaches can satisfactorily support reactive behavior in a database context [10]. An active database system avoids the previous disadvantages by moving the support for reactive behavior inside the database (management) system. Reactive behavior in an active database is supported by ECA rules that have the following semantics: when an event is detected, evaluate a condition, and if the condition is true, execute an action.

Similar to describing an object by its static features and dynamic features, an active database can be described by its knowledge model (static features) and execution model (dynamic features). Thus, by investigating the knowledge model and execution model of an active database, one can identify what type of ECA rules that can be defined and how the active database behave at run-time.

Key Applications

An aDB or aDBS/aDBMS is useful for any non-mission critical application that requires reactive behavior.

Future Directions

Looking back, the RIDS workshop marks the end of the active database period, since there are very few active database publications after 1997. However, the concept of ECA rules has resurfaced and has been picked up by other research communities such as Complex Event Processing and Semantic Web. In contrast to typical active database approaches that assume a centralized environment, the current research on ECA rules within Complex Event Processing and Semantic Web assumes that the environment is distributed and heterogeneous. Thus, as suggested within the REWERSE project [3], one cannot assume that the event, condition, and action parts of an ECA rule are defined in one single ECA rule language. For example, the event part of an ECA rule can be defined in one language (e.g., Snoop), whereas the condition part and action part are defined in a completely different rule language.

The popularity of using XML for manipulating data has also led to proposals of ECA rule markup languages. These ECA rule markup languages are used for storing information about ECA rules and facilitate exchange of ECA rules between different rule engines and applications.

One research question that remains from the active database period is how to model and develop applications that use ECA rules. Some research on modeling ECA rules has been carried out, but there is no widely agreed approach for modeling ECA rules explicitly in UML, or how to derive ECA rules from existing UML diagrams.

Cross-References

Recommended Reading

  1. 1.
    ACM SIGMOD Record. Special issue on rule management and processing in expert databases; 1989.Google Scholar
  2. 2.
    ACT-NET consortium the active database management system manifesto: a rulebase of ADBMS features. ACM SIGMOD Rec. 1996; 25(3):40–9.Google Scholar
  3. 3.
    Alferes JJ, Amador R, May W. A general language for evolution and reactivity in the semantic web. In: Proceedings 3rd Workshop on Principles and Practice of Semantic Web Reasoning; 2005. p. 101–15.Google Scholar
  4. 4.
    Andler SF, Hansson J, editors. In: Proceedings 2nd International Workshop on Active, Real-Time, and Temporal Database Systems. LNCS, vol. 1553. Springer; 1998.Google Scholar
  5. 5.
    Berndtsson M, Hansson J. Workshop report: the first international workshop on active and real-time database systems. SIGMOD Rec. 1996;25(1):64–6.CrossRefGoogle Scholar
  6. 6.
    Buchmann A, Chakravarthy S, Dittrich K. Active databases. Dagstuhl seminar No. 9412, Report No. 86; 1994.Google Scholar
  7. 7.
    Bültzingsloewen G, Koschel A, Lockemann PC, Walter HD. ECA functionality in a distributed environment, chap. 8. In: Monographs in computer science. New York: Springer; 1999. p. 147–75.Google Scholar
  8. 8.
    Chakravarthy S, editor. IEEE quarterly bulletin on data engineering. Special issue on active databases, vol. 15. 1992.Google Scholar
  9. 9.
    Chakravarthy S, Widom J, editors. Special issue on the active database systems. J Intell Inf Syst. 1996;7.Google Scholar
  10. 10.
    Dayal U, Blaustein B, Buchmann A, et al. S.C. HiPAC: a research project in active, Time-constrained database management. Technical report CCA-88-02, Xerox advanced information technology, Cambridge; 1988.Google Scholar
  11. 11.
    Dittrich KR, Kotz AM, Mulle JA. An event/trigger mechanism to enforce complex consistency constraints in design databases. ACM SIGMOD Rec. 1986;15(3):22–36.CrossRefGoogle Scholar
  12. 12.
    Geppert A, Berndtsson M, editors. In: Proceedings 3rd International Workshop on Rules in Database Systems, LNCS. Springer; 1997.Google Scholar
  13. 13.
    Morgenstern M. Active databases as a paradigm for enhanced computing environments. In: Proceedings 9th International Conference on Very Data Bases; 1983. p. 34–42.Google Scholar
  14. 14.
    Paton NW, editor. Active rules in database systems. Monographs in computer science. Springer; 1999.Google Scholar
  15. 15.
    Paton NW, Diaz O. Active database systems. ACM Comput Surv. 1999;31(1):63–103.CrossRefGoogle Scholar
  16. 16.
    Paton NW, Williams MW, editors. In: Proceedings 1st International Workshop on Rules in Database Systems. Springer; 1994.Google Scholar
  17. 17.
    Sellis T, editor. In: Proceedings 2nd International Workshop on Rules in Database Systems, vol. 905. Springer; 1995.Google Scholar
  18. 18.
    Stonebraker M, Hearst M, Potamianos S. Commentary on the POSTGRES rules system. SIGMOD Rec. 1989;18(3):5–11.CrossRefGoogle Scholar
  19. 19.
    Widom J, Ceri S, editors. Active database systems: triggers and rules for advanced database processing. Morgan kaufmann; 1996.Google Scholar
  20. 20.
    Widom J, Chakravarthy S, editors. In: Proceedings 4th International Workshop on Research Issues in Data Engineering – Active Database Systems; 1994.Google Scholar

Copyright information

© Springer Science+Business Media LLC 2017

Authors and Affiliations

  1. 1.University of SkövdeSkövdeSweden

Section editors and affiliations

  • M. Tamer Özsu
    • 1
  1. 1.Cheriton School of Computer ScienceUniversity of WaterlooWaterlooCanada