Abstract
In past decades database systems were able to store, retrieve and manipulate data. These databases are referred to as passive database systems. Passive databases could only respond to user requests, and they could not do any operations independently. In contrast to passive database systems, there are other types of database systems which have reactive behavior. In other words, these database systems can react to the occurrence of some predefined events. These database systems are called Active Database Systems (ADS). The ADSs have different architectures and have been generated from different components such as Data Manager, Rule Manager and Event Manager. One of the most important internal units of ADS is the rule manager. The main responsibility of the rule manager is triggering, buffering, firing and Selecting (Scheduling) rules. Rule Scheduling is one key operation in this regard. There are many approaches to scheduling rules in active databases but, still many issues remain unsolved. In this paper, we briefly describe internal units of active database systems and investigate and compare rule scheduling approaches. The most important contribution of this thesis is a new approach for rule scheduling in Active Database Systems. This new approach that we refer to it as Extended Shortest Job First (Ex-SJF) is the improved SJF scheduling algorithm for using in Active Workload systems such as ADSs. We have used SJF algorithm for rule scheduling in ADSs for the first time. We compare Ex-SJF and other scheduling approaches for ADSs using six evaluation parameters: “Average Response Time”, “Throughput”, “Time Overhead per Transaction”, “Response Time Variance”, “Normalized Turnaround Time” and “CPU Utilization”. Our experiments show that Ex-SJF approach is more efficient and effective than other rule scheduling approaches produced till now. We have constructed an Active Database System Simulator (ADSS) for evaluating these approaches and introduced it in this thesis.
Key Words: Active Database, Active Rule, Rule Scheduling, Rule Selection, Earliest Deadline First, Shortest Job First, Rule Execution Tree, Event, Rule Processing, Active Database System Simulator.