Many interesting applications of continuous-query processing are concerned with pattern matching or complex temporal aggregation of events. Real-world queries that rely on these operations are difficult to implement in current streamprocessing systems. The reason seems to be a gap between two types of existing query languages: Some languages (e. g. CQL) offer a small set of simple operators that can be combined in order to create complex queries. While these languages provide sound and comprehensible semantics, they lack the expressiveness required for many real-world applications. Other approaches (e. g. Aurora) provide powerful operators but lack semantic strictness, which is required for reasoning about query results. Such reasoning is a prerequisite for safe query optimization.We try to bridge this gap by integrating operators for pattern matching and time-aware aggregates into a generalpurpose stream model featuring stream partitioning. These operators can answer several questions that we have found to be relevant in a real-world object-tracking scenario. Moreover, they are formally defined, allowing expressive and efficient queries to be written in CQL-like languages, while remaining understandable and easy to use.
For distribution and deployment of queries in distributed streamprocessing environments, it is vital to estimate the expected costs in advance. Having heterogeneous Stream-Processing Systems (SPSs) running on various hosts, the parameters of a cost model for an operator must be determined by measurements for each relevant combination of an SPS and hardware.This paper presents a black-box method that determines the parameters of appropriate cost models that regard system-specific behavior. For some SPSs, there might not be any appropriate cost model available due to the lack of internal knowledge. If no cost model is available for any reason, we provide and apply a nonparametric model.
The ability to adapt to different computing environments or external changes is an important requirement for both stationary and mobile computing. Without this ability, all requirements have to be foreseen, which is often not possible in practice. Classical software engineering approaches often lead to redeployment or even software migration. Therefore loosely coupled software design and a dynamic adaptation model are required. Dynamic aspect-oriented programming (d-AOP) in conjunction with service oriented programming is well suited to face this demand. One well known approach providing a service-oriented component model is the OSGi Service Platform. This paper introduces our approach to combine an OSGi Framework with d-AOP to establish dynamic adaptation of core concerns as well as crosscutting concerns. Seamless integration of current d-AOP frameworks is managed by mapping aspect deployment and undeployment to OSGi bundle lifecycle operations without affecting the deployment model. Unlike former proposals, this approach retains the strict separation of bundles as mandated by OSGi.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.