Event Database Processing Joris Mihaeli, Opher Etzion IBM Haifa Research Lab Haifa University Campus Mount Carmel, 31905 Haifa, Israel {jorism, opher}@il.ibm.com Abstract: The purpose of the current work is to explore and improve the analysis of event data stored in event repositories, enabling the application of specialized event algebra operators over the event data. We consider an event data model and apply an event specification language for detection of situations (patterns) over the event history. We introduce layered information architecture and consider implementation issues. Finally, we consider a proper query execution order for the detection process. 1. Introduction The events occurring in particular application areas can be stored in specialized repositories in order to provide a basis for more thorough and complex interpretation and correlation between the events. Consequently, it is feasible to perform offline querying over the event history and detection of particular patterns leading to the discovery of additional (composite) events. There are several products and projects that support event stores, such as IBM’s Tivoli Enterprise Console [5] or the ongoing work on realizing the Common Event Infrastructure [2]. The different event repositories use either data management systems – relational or object-oriented DBMS, or dedicated storage facilities. The DBMS-based approaches use standard languages – SQL or OQL. However, the query capabilities are rather general, treating the event data as standard relational or object-oriented data without support of more complex pattern detection. The aim of the current work is to augment the capabilities of the standard relational systems, applying notions from event specification languages. These languages have been primarily proposed and investigated in the area of active databases [10], [11], [13], [14], [15], and [22]. The active mechanisms in these systems serve to detect and react to updates in the database that may jeopardize the data integrity, or to execute some business-related application logic. The event languages support event algebra opera- tors that can be applied over the streaming events in real time. The main idea we pursue is to add event algebra operations to the relational algebra in order to be able to detect more complex patterns (composite events) in the event databases. We realize event algebra operators using standard SQL language and adding programming logic wherever the expressive power of SQL is not sufficient.