Spatial query processing in wireless sensor networks – A survey
Introduction
Wireless sensor networks (WSN) are formed by many small devices that sense, process, store and transmit environmental data. These devices have limited power supply, and usually it is not feasible to replace their batteries because WSN may be deployed to monitor inhospitable environments [1]. As the technology matured, WSN became more than periodic data gathering tools. Now, they are data gathering tools able to answer users’ queries [2]. Several works model WSN as distributed databases and define energy aware mechanisms for in-network query processing, such as TinyDB [3]. They process declarative SQL-Like queries, which simplify the way that the users obtain data from the WSN.
Recently, several researchers have worked on node location for WSN [4]. In-network query processing mechanisms can use location data to answer a special type of query called spatial query. In these queries the users’ interests are expressed by geographical predicates, such as “the temperature collected by nodes in a region” or “the humidity collected by nodes closest to a point”.
Spatial queries are database queries supported by geodatabases [5]. These queries differ from traditional queries in two main points. First, they incorporate geometry data types, such as points and polygons. Second, these queries consider the spatial relationship between the defined geometries, such as a point inside a polygon or a polygon that overlaps another. WSN can be modeled as distributed geodatabases in order to process queries containing spatial information. Those queries would request data collected inside a region (called region of interest) or nearest to a point defined by the user (called query point).
Thus, spatial queries in WSN usually rely on distributed and localized algorithms to reduce their resource usage and energy consumption: queries are forwarded towards the region of interest based on the neighborhood information of a few hops; the selection of the nodes to be activated for sensing is performed by the nodes inside the region of interest; finally, the sensed data is aggregated during the return path from the region of interest to the sink, hop by hop. Thus, information fusion is one of the steps performed in spatial query processing.
Due to the energy constraints of the sensor nodes, the collected data are processed during the forwarding to the user, using information fusion techniques to summarize them and to eliminate redundancy, in a process known as in-network query processing [6]. In-network processing techniques potentially reduce the energy consumption and traffic load on the network, however they place a heavy burden on the spatial query mechanisms, because they increase the penalties of packet losses and late deliveries. Thus, spatial queries must attempt to reduce the amount of packet losses, even though the network is prone to failures due to bad wireless links, node failures, energy depletion, among others.
This work presents a survey of spatial query processing in wireless sensor networks. We divide spatial query processing in six stages and describe the existing solutions for each stage. This division simplifies the understanding of spatial queries and facilitates the proposal of new solutions. We also survey the literature, categorizing the algorithms for each stage according to their most important properties. Further, we present how each spatial query processing mechanism in the literature implements these stages.
This article is organized into five sections. Section 2 describes the six stages for spatial query processing. Section 3 presents how the spatial query processing mechanisms in the literature perform each stage. Section 4 presents the main contributions and drawbacks of spatial query processing mechanisms found in the literature. Section 7 discusses the importance of information fusion on spatial query processing. Section 6 presents the open research challenges in spatial query processing. Finally, Section 7 shows our conclusions.
Section snippets
Spatial query processing stages
In order to better study spatial queries, we will analyze them in stages. The related works define different numbers of stages for spatial query processing in WSN [7], [8], [9], [10]. However, these stages can be subdivided into simpler stages, as proposed in our previous work [11]. We analyzed spatial queries in six stages: Pre-Processing, Forwarding, Dissemination, Aggregation, Sensing and Return. Fig. 1 illustrates them.
State of the art on spatial query processing in WSN
In this section we present a set of solutions found in the literature for each processing stage. Clearly, we can find other solutions that could be used in one of the stages. However, these solutions are not analyzed here, since they are not adopted by the spatial query processing mechanisms found in the literature. An example is the Forwarding stage. Several protocols can be used in this stage, such as [26], [27]. However, we only analyze those that are used by existing spatial queries
Spatial query processing mechanisms
This section presents an overview of the most relevant spatial query processing mechanisms for WSN found in the literature. We classify these mechanisms into window query and KNN query processing. The window query processing mechanisms are classified into structured (create a global structure such as index or cluster to process queries) and unstructured (do not create structures). All KNN mechanisms in the literature are unstructured.
Table 1 presents a summary of all mechanisms analyzed in this
Using information fusion to improve spatial queries
Spatial query mechanisms are a mean for requesting information from WSN, and are suitable for the use of information fusion techniques. Our review of the literature indicated that most works on spatial queries focus on the Forwarding and Dissemination stages, while the Sensing and Aggregation stages did not receive much attention. Information fusion algorithms could be used in these stages, where the sensor data is collected and summarized. As a consequence, the amount of packets generated
Research opportunities in spatial query processing
This section presents research opportunities in spatial query processing. There are network and environmental characteristics that were not considered by the mechanisms found in the literature. However, these characteristics can be found in real WSN applications. If these characteristics are considered, they generate several challenges for spatial query processing mechanisms.
Node mobility: mobility in WSN can be divided into node mobility and sink mobility. In the analyzed mechanisms, all nodes
Conclusion
This work presented a state-of-the-art on spatial query processing in WSN. We divided the processing in six stages and analyzed how each related work performs them. This division made easier to understand how each mechanism performs the query processing. Moreover, it allowed the classification of these mechanisms and the queries processed by them.
The first stage is called Pre-Processing. It is performed in the users’ computer, preparing the queries to be processed. In the Forwarding stage,
References (40)
- et al.
Wireless sensor networks: a survey
Comput. Commun.
(2002) - et al.
An energy efficient adaptive back forwarding method for spatial range query processing in sensor networks
- et al.
Processing K nearest neighbor queries in location-aware sensor networks
Signal Process.
(2007) - et al.
A survey on routing protocols for wireless sensor networks
Ad Hoc Netw.
(2005) - M. Demirbas, X. Lu, Distributed quad-tree for spatial querying in wireless sensor networks, in: IEEE International...
- et al.
TinyDB: an acquisitional query processing system for sensor networks
ACM Trans. Database Syst.
(2005) - et al.
A survey on sensor localization
IET Control Theory Appl.
(2010) - et al.
Supporting spatial aggregation in sensor network databases
- et al.
Adaptive processing of historical spatial range queries in peer-to-peer sensor networks
Distrib. Parallel Dat.
(2007)