StreamQL: a query language for processing streaming time series
Lingkun Kong, Konstantinos Mamouras
Abstract
Real-time data analysis applications increasingly rely on complex streaming computations over time-series data. We propose StreamQL, a language that facilitates the high-level specification of complex analyses over streaming time series. StreamQL is designed as an algebra of stream transformations and provides a collection of combinators for composing them. It integrates three language-based approaches for data stream processing: relational queries, dataflow composition, and temporal formalisms. The relational constructs are useful for specifying simple transformations, aggregations, and the partitioning of data into key-based groups or windows. The dataflow abstractions enable the modular description of a computation as a pipeline of stages or, more generally, as a directed graph of independent tasks. Finally, temporal constructs can be used to specify complex temporal patterns and time-varying computations. These constructs can be composed freely to describe complex streaming computations. We provide a formal denotational semantics for StreamQL using a class of monotone functions over streams. We have implemented StreamQL as a lightweight Java library, which we use to experimentally evaluate our approach. The experiments show that the throughput of our implementation is competitive compared to state-of-the-art streaming engines such as RxJava and Reactor.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext 166a55e3-20b4-4a4d-8428-345e6c3ea518Cited by top-tier papers1
Ask how each one uses itRelated papers
- Evaluating Complex Queries on Streaming GraphsAnil Pacaci, Angela Bonifati, M. Tamer ÖzsuICDE 2022 · 18 citations
- LifeStream: a high-performance stream processing engine for periodic streamsAnand Jayarajan, Kimberly Hau, Andrew Goodwin, Gennady PekhimenkoASPLOS 2021 · 6 citations
- Unraveling the Impact of Window Semantics: Optimizing Join Order for Efficient Stream ProcessingAriane Ziehn, Jan Szlang, Steffen Zeuch, Volker MarklVLDB 2025 · 2 citations
- Temporal Regular Path QueriesMarcelo Arenas, Pedro Bahamondes, Amir Aghasadeghi, Julia StoyanovichICDE 2022 · 11 citations
- Stream TypesJoseph W. Cutler, Christopher Watson, Emeka Nkurumeh, Phillip Hilliard et al.PLDI 2024 · 7 citations
