The 35th IPP Symposium
Smart Middleware and Light Ends (SMILE) for Simplifying Data Integration
Rob Strom, IBM, TJ Watson Research Center
SMILE is a stateful publish-subscribe system that allows subscribers to request continually updated derived views, specified as relational algebraic expressions over published data streams. The derived views can be specified using aggregations, joins, and other transforms. The goals of the SMILE project are to replace the labor-intensive and error-prone writing of low-level stateful message transforms with declarative specifications while providing the speed, scalability, and reliability of messaging systems. We achieve these for applications that do not require ACID properties but only require that the information they receive is never false and arrives eventually. We formalize this by introducing an "eventual correctness" guarantee and our implementation enforces it using a monotonic type system. We discuss the programming model, the eventual correctness guarantee, the implementation architecture, and the benefits of SMILE's approach to fault-tolerance. We illustrate key concepts using an application derived from a real financial system.