In the Internet of Things (IoT) environment, the use of sensors and sensor readings is significant in research and industry. The number of sensors is increasing exponentially, adding a tremendous amount of data to the Web. Therefore, the efficient management of sensors and observation data is becoming important. Especially, the location and time of observations are expected to play a vital role in IoT. However, existing researches mainly focus on the temporal properties of data stream. It is necessary to consider the spatial features in addition to the temporal ones. In this article, the authors propose a spatiotemporal query language which integrates spatial and temporal features. Also, they propose an efficient method of building a spatiotemporal index and processing the proposed query language. To evaluate the proposed method, the authors conduct experiments through implementation. The experimental results show that the proposed method deals with spatiotemporal queries within a reasonable time.
Top1. Introduction
Motivated with the potential impact of the Internet of Things (IoT) (Perera et al., 2014; Feki et al., 2013), research on IoT is gaining momentum in academia, industry, and almost of all sectors of society. Especially, IoT paradigm has been used in many applications ranging from medical treatment to traffic monitoring, security, and meteorology. As a result, IoT systems are evolving into a massive interconnected ecosystem with a variety of applications and services.
In an IoT environment, there is a tremendous growth in the number of sensors that are being provided and connected over the Internet. The sensors are generating a huge amount of stream data. The key idea of IoT is to obtain information from the data streams to understand and control our environment. For stream processing and event recognition, diverse researches (Artikis & Paliouras, 2014; Terroso-Saenz et al. 2016) have been proposed. These researches focus on detecting occurrences of particular event patterns which may be interesting to event subscribers. However, there are limitations of integrating data streams with domain knowledge and extracting more valuable information from data streams. In fact, data streams in an IoT environment are generated from various sources with different qualities and modalities. Therefore, it is a key challenge to seamlessly integrate heterogeneous streaming data for the interoperability among IoT applications and services.
There have been endeavors to effectively facilitate the organization and management of heterogeneous sensors (Yao et al., 2015). The Semantic Sensor Network (SSN) ontology (Compton et al., 2012) is proposed by the W3C Semantic Sensor Network Incubator Group. In order to represent sensors and sensor data, the SSN ontology provides a domain-independent semantic model, through which streaming data are translated into a high-level semantic representation. Therefore, SSN ontology makes it possible to integrate different kinds of data and to extract meaningful knowledge.
In IoT environments, it is crucial to identify and extract complex events and high-level knowledge from low-level streaming data. For this purpose, query languages such as Streaming SPARQL (Bolles et al., 2008), C-SPARQL (Barbieri et al., 2010), EP-SPARQL (Anicic et al., 2011), and CQELS (Le-Phuoc et al., 2011) have been studied. They have their own query processing engines, which process continuous queries based on semantic models. The existing query languages are the extended versions of SPARQL with temporal operators, which extract data by applying a particular temporal window to data streams.
However, the existing query languages and systems have a limitation of supporting spatial properties. IoT applications and services may not be fully supported if we consider only the temporal features of streaming data. When we take both spatial and temporal factors into account, we are able to obtain precise information and predict a course of actions to be taken. Therefore, there is an imperative need for the spatiotemporal data management of streaming data. For example, a traffic management system should process a spatiotemporal query like “Which car has exceeded a speed limit in the ‘A’ section of the highway during the last 10 minutes?” The ‘A’ section denotes a spatial window and ‘10 minutes’ indicates a temporal window. For spatiotemporal query processing, the observation data that belongs to both the spatial and temporal windows should be extracted. Namely, spatial and temporal operators to find data elements should be supported.