  Stream processing engines (SPEs) are widely used for large scale streaming
analytics over unbounded time-ordered data streams. Modern day streaming
analytics applications exhibit diverse compute characteristics and demand
strict latency and throughput requirements. Over the years, there has been
significant attention in building hardware-efficient stream processing engines
(SPEs) that support several query optimization, parallelization, and execution
strategies to meet the performance requirements of large scale streaming
analytics applications. However, in this work, we observe that these strategies
often fail to generalize well on many real-world streaming analytics
applications due to several inherent design limitations of current SPEs. We
further argue that these limitations stem from the shortcomings of the
fundamental design choices and the query representation model followed in
modern SPEs. To address these challenges, we first propose TiLT, a novel
intermediate representation (IR) that offers a highly expressive temporal query
language amenable to effective query optimization and parallelization
strategies. We subsequently build a compiler backend for TiLT that applies such
optimizations on streaming queries and generates hardware-efficient code to
achieve high performance on multi-core stream query executions. We demonstrate
that TiLT achieves up to 326x (20.49x on average) higher throughput compared to
state-of-the-art SPEs (e.g., Trill) across eight real-world streaming analytics
applications. TiLT source code is available at
https://github.com/ampersand-projects/tilt.git.
