Querying moving events in wireless sensor networks
Introduction
The database paradigm has been proposed as an effective way of programming and managing a wireless sensor network [1], [2], [3], [4]. This methodology allows the use of SQL-like languages to query sensors in order to acquire, filter, and compare environmental parameters that can be measured by available transducers (e.g. temperature, pressure, magnetic field, vibrations, etc.).
This paper represents a step forward with respect to previous approaches in the field of event detection and tracking. We propose a paradigm where queries are not limited to express conditions and to return values acquired by transducers. Instead, our approach allows users to define composite events (e.g., “explosion”, “gas leak”, etc.) and to express queries to filter and fetch data from the events themselves. For instance, it is possible to request information on the size or the speed of a gas cloud. Clearly, the information on the event is synthesized by using information from the sensor transducers themselves. However, once events have been defined, programmers can abstract on event details and they can express queries directly on the high level events, rather than deciding which transducers, in which positions, and at which frequency the sensor should be queried.
The detection and tracking of events in Wireless Sensor Networks (WSN) [5], typically employ ad-hoc solutions that aim at detecting and tracking only specific types of events (for instance, related to vehicles moving along a road). With these approaches, event detection is obtained by analyzing, at application level, raw values acquired by transducers. Once an event is detected, the monitoring and tracking of its evolution is obtained by injecting (either user-driven or automatically) ad-hoc tasks in the network. Directed Diffusion [1] is the most notable example of this approach, in which the queries (called interests) are encoded in packets injected in all the sensors in the network.
More recently, the Directed Diffusion paradigm has evolved in other approaches [6], where the user can inject structured queries (with semantics inspired to query languages used in databases). Among these, we mention TinyDB [2], Cougar [3], and MaD-WiSe [4]. With these approaches, the user also specifies tasks for the management, filtering and processing of sensed data. However, these languages do not provide any support for tracking moving events.
Our proposal allows users to define event detection and tracking strategies that are injected in the network to instruct sensors to cooperatively and autonomously detect and track arbitrary user-defined events. A Composite Event is defined as a combination of raw sampled data, possibly heterogeneous, obtained cooperatively by a group of sensors in a given area of the network. Detection and tracking tasks migrate autonomously among sensors in order to follow event movements. We refer to this strategy as Dynamic Tracking. Using the proposed query language (called EQL: Event Query Language), it is possible to gather information directly from detected events during their evolution. Specifically, the main aspects of novelty of EQL are that the detection and tracking tasks are expressed directly on events rather than on sensor readings (consequently, queries address the events) and the concept of event chain that allows us to start automatically a tracking task when a chain of activating event occurs. Moreover, the query processing mechanism supporting EQL is entirely executed in the network by the sensors themselves. To the best of our knowledge, it is the first time that such an approach, where events are treated as a sort of “first-class citizens” for a query language, has been proposed in the WSN field.
A preliminary effort to define a query language for tracking of composite events in WSN is given in [7], [8]. In these works, we focused only on the description of the language and on the modeling of composite events, but these papers does not address aspects related to the implementation of the language and present only a very preliminary evaluation of the approach. In the present paper, we further extend this approach by proposing new meta-operators to manage query migrations and an implementation scheme. We also implement a MATLAB simulator and we evaluate the efficiency of our approach, in terms of energy consumption against a Centralized Query Approach (hereafter referred to as CQA) that models the behavior of query processing systems such as TinyDB or Mad-WiSe in event tracking. Specifically, in CQA the sensors acquire the data and send them to a sink, that, in turn, performs the detection and pilots the tracking of the event.
The rest of the paper is organized as follows. Section 2 presents related works; Section 3 presents the model of events used in EQL and its query language, and Section 4 describes the implementation issues. The analysis and comparison with CQA is discussed in Section 5, and Section 6 draws the conclusions.
Section snippets
Related work
Kumar et al. [9] propose one of the first frameworks for the distributed detection of composite events. The framework exploits a publish–subscribe mechanism. An application subscribes to an event by specifying the area where the event is expected to occur, and the protocol builds an event-based data collection tree. To detect composite events, a counter is maintained for each atomic event part of the composite event (the counter keeps track of the number of sensors that can sense atomic
Events as sources of data
An event in the physical environment can be recognized by the occurrence of a combination of values measured by appropriate transducers. For example, an “explosion” can be characterized by a sudden peak of vibration, noise and pressure, and a subsequent increase of heat. The detection of an event can be modeled by defining a condition on the values measured by a specific set of sensors, installed in a specific area, as in the example shown in Table 2.
The occurrence of an event can be the
Event query processing
In this section, we describe in more details how EQL queries are processed. EQL query execution is factorized three tasks: detection task, dynamic tracking task and data collection task.
Evaluation
In this section, we present the evaluation of the proposed system in terms of power consumption and of the percentage of successfully tracked events. We also compare the power consumption of EQL with the power consumption of executing the detection and tracking of a moving event with a centralized query approach (CQA). In this latter approach, the sensors acquire the data and send them to the sink that performs the detection and pilots the tracking of the event. This approach is based on the
Conclusion
Differently than systems of query processing in WSN (like TinyDB or MaD-WiSe), the Event Query language (EQL) is tailored to detection and tracking tasks of composite events. It allows the users to specify queries that include the description of the events, the logical relationship between consecutive events (Chain of Events), and the parameters related to the tracked event that need to be collected. The query processor of EQL is then capable of automatically migrating the query in the WSN in
Acknowledgment
This work is partially supported by the EU FP7 RUBICON project (contract n. 269914) — www.fp7rubicon.eu.
References (42)
- et al.
Wireless sensor networks: a survey on the state of the art and the 802.15.4 and ZigBee standards
Comput. Comm.
(2007) - et al.
Using fuzzy logic for robust event detection in wireless sensor networks
Ad Hoc Netw.
(2012) - et al.
A survey on in-network querying and tracking services for wireless sensor networks
Ad Hoc Netw.
(2013) - C. Intanagonwiwat, R. Govindan, D. Estrin, Directed diffusion: a scalable and robust communication paradigm for sensor...
- et al.
Tinydb: an acquisitional query processing system for sensor networks
ACM Trans. Database Syst.
(2005) - et al.
The cougar approach to in-network query processing in sensor networks
SIGMOD Record
(2002) - et al.
MaD-WiSe: A distributed stream management system for wireless sensor networks
Software Practice & Experience
(2010) - et al.
Query processing in sensor networks
IEEE Pervasive Comput.
(2004) - C. Vairo, G. Amato, S. Chessa, P. Valleri, Modeling detection and tracking of complex events in wireless sensor...
- et al.
Dynamic tracking of composite events in wireless sensor networks