Skip to Main Content
Active database systems are systems that detect events and trigger actions as a result of this detection. Active capabilities are provided by a set of rules, such that each rule consists of three components (event, condition, and action). A major performance issue in active databases is the issue of relationships among rule components. Current implementations of triggers do not allow flexibility in the selection of transaction policies (partition of rules to transactions); the intertransaction timing policies of rules' components, the intratransaction policies of commit and abort dependencies, and synchronization issues. While these decisions have a substantial impact on the application performance, they are not provided as design primitives; one of the reasons for that is that it is very difficult to manually tune these decisions. In some research prototypes of active databases, these relationships are encapsulated into a set of coupling modes. Each coupling mode represents a combination of decisions about the partition of rule components to transactions, the relative timing within a transaction, and the interrelationships among these transactions. We describe a self-tuning model that operates on a general active database. The optimization model strives to minimize a programmable goal function that reflects the system designer's preferences and the system behavior and the applications' semantics through constraint definitions. The tuning model strives to optimize the mutual relationships among the system rules' components.
Knowledge and Data Engineering, IEEE Transactions on (Volume:16 , Issue: 3 )
Date of Publication: Mar 2004