Navigation

Email

jayaram purdue edu
krjram gmail com

Resume (Sep 2011)

Connections

Community

Research Overview

Event-based distributed applications like algorithmic trading, highway traffic management and business process monitoring typically use middleware systems for event dissemination and event correlation (i.e., detection of complex events). Event-based distributed systems are inefficient because middleware systems are viewed as a separate layer by the programming language used to develop event-based applications, and the interaction only happens through APIs. The central claim of my doctoral thesis is that the efficiency of event-based distributed systems can be increased by aligning middleware systems with specialized programming abstractions.

I explore these ideas through the EventJava language framework, consisting of:

1) Specialized Programming Abstractions: EventJava is an extension to the Java programming language with advanced abstractions for event correlation (including aggregation, temporal and causal correlation), unicasting and multicasting of events. It supports reactions to combinations of events, and predicates guarding those reactions. EventJava is implemented as a framework to allow customizable propagation and matching of events. [ECOOP'09, DEBS'11]

2) Efficient Event Correlation: The EventJava compiler uses definitions of complex events to generate an optimized complex event detection component, called GenTrie, at each event consumer. GenTrie consists of an event flow graph, that is designed to discard unwanted events early and to effectively store events that partially match correlation patterns. [COORDINATION'10]

3) Parametric Subscriptions: To address “dynamic” event-based applications that have to update their subscriptions for various reasons, we introduce parametric subscriptions to support subscription adaptations, and discusses their desirable and feasible guarantees. We propose novel algorithms for updating routing mechanisms effectively and efficiently in classic content-based publish/subscribe broker overlay networks. Compared to re-subscriptions, our algorithms significantly improve the reaction time to subscription updates without hampering throughput or latency under high update rates. In fact, our algorithms significantly improve the latter two metrics under high update rates. [MIDDLEWARE'10, ICDCS'11]

4) Subscription Normalization: The EventJava framework also contains a distributed event transmission middleware (called Beretta), which leverages a simple model of typed events, enabling a succinct and uniform normalized representation of subscriptions. This, in turn supports highly effective subsumption and attribute-wise split filtering with worst-case complexity logarithmic in the number of subscriptions, and enables the systematic introduction of parameters into subscriptions. [ICDCS'11]