Adapting virtual machine techniques for seamless aspect support
Christoph Bockisch, Matthew Arnold, et al.
OOPSLA 2006
Businesses that receive events in the form of messages and react to them quickly can take advantage of opportunities and avoid risks as they occur. Since quick reactions are important, event processing middleware is a core technology in many businesses. However, the need to act quickly must be balanced against the need to act profitably, and the best action often depends on more context than just the latest event. Unfortunately, the context is often too large to analyze in the time allotted to processing an event. Instead, out-of-band analytics can train an analytical model, against which an event can be quickly scored. We built middleware that combines transactional event processing with analytics, using a data store to bridge between the two. Since the integration happens in the middleware, solution developers need not integrate technologies for events and analytics by hand. At the surface, our Middleware for Events, Transactions, and Analytics (META) offers a unified rule-based programming model. Internally, META uses the X10 distributed programming language. A core technical challenge involved ensuring that the solutions are highly available on unreliable commodity hardware, and continuously available through updates. This paper describes the programming model of META, its architecture, and its distributed runtime system.
Christoph Bockisch, Matthew Arnold, et al.
OOPSLA 2006
Sara S. Hamouda, Benjamin Herta, et al.
X10 2016
Mikio Takeuchi, David Cunningham, et al.
X10 2013
Matthew Arnold, Martin Vechev, et al.
OOPSLA 2008