We introduce a novel logic-based system for reasoning over data streams, which relies on a framework enabling a tight, fine-tuned interaction between Apache Flink and the $${{\mathcal I}^2}$$ -DLV system. The architecture allows to take advantage from both the powerful distributed stream processing capabilities of Flink and the incremental reasoning capabilities of $${{\mathcal I}^2}$$ -DLV, based on overgrounding techniques. Besides the system architecture, we illustrate the supported input language and its modeling capabilities, and discuss the results of an experimental activity aimed at assessing the viability of the approach.
In the latest years, Stream Reasoning (SR) has become increasingly relevant in various scenarios where it is required to reason over heterogeneous and highly dynamic data streams, typically along with large background knowledge bases, such as Smart Cities, IoT, Healthcare, etc. In this context, several solutions based on Answer Set Programming (ASP) have been successfully employed. Nevertheless, real applications showed that it is often needed to deal with events over the timeline generating specific patterns that, in turn, can fire additional events or invalidate others. In this respect, current ASP-based state of the art systems appear not fully satisfactory, both from a modelling point of view and when it comes to usability and performance. In this work, starting from a well-established ASP-based SR solution, namely I-DLV-sr, we: (i) extend the language with means to explicitly define, identify and reason about patterns of events and their consequences, possibly spanning across the timeline; (ii) generalize the system architecture so that it is able to decouple language and implementation support from the choice of a specific ASP system, thus allowing the user to select the one best suited to the specific SR scenario at hand. The result is DP-sr: a purely Declarative Programming framework for Stream Reasoning. DP-sr is put to the test, showing both the ease in modelling and performance improvements.
Stream Reasoning (SR) focuses on developing advanced approaches for applying inference to dynamic data streams; it has become increasingly relevant in various application scenarios such as IoT, Smart Cities, Emergency Management, and Healthcare, despite being a relatively new field of research. The current lack of standardized formalisms and benchmarks has been hindering the comparison between different SR approaches. We proposed a new benchmark, called EnviroStream, for evaluating SR systems on weather and environmental data. The benchmark includes queries and datasets of different sizes. We adopted I-DLV-sr, a recently released SR system based on Answer Set Programming, as a baseline for query modelling and experimentation. We also showcased continuous online reasoning via a web application.