SMaRT: A novel framework for addressing range queries over nonlinear trajectories

https://doi.org/10.1016/j.jss.2015.03.068Get rights and content

Highlights

  • SMART supports range queries over nonlinear trajectories.

  • It is an ideal platform for comparing the performance of indexing methods.

  • It proves that the geometric dual approach is an efficient method.

  • All operations and statistics are available through a user-friendly web interface.

Abstract

A spatiotemporal database is a database that manages both space and time information. Common examples include tracking of moving objects, intelligent transportation systems, cellular communications and meteorology monitoring. A spatiotemporal query determines the objects included in a region at a specified period of time between two date-time instants referred as time window. In the context of this work, we present SMaRT: A novel Spatiotemporal Mysql ReTrieval framework, based on MySQL and PostgreSQL database management system. Moreover, we propose a demo user interface that implements all of its capabilities, in order to help user determine the most efficient spatiotemporal query method on user-defined 2D trajectories. To our knowledge, we are the first to study and compare methods of addressing range queries on nonlinear moving object trajectories, that are represented both in dual and native dimensional space. In particular, it is the first time a theoretically efficient dual approach was implemented for nonlinear trajectories and incorporated into a well-known open-source RDBMS. An experimental evaluation is included that shows the performance and efficiency of our approach.

Introduction

In the context of this work we focus on the problem of efficiently querying, storing and retrieving aggregated data from a spatiotemporal database, which stores two-dimensional moving objects trajectories. The problem is motivated by real life applications in traffic monitoring, cellular communications, intelligent transportation systems and other domains. In addition, it can be extended to support many kind of trajectories including animal movement, airplane travel paths, historical geopolitical movement and various other paths that include geographical movement of the population they describe.

With the recent advances in GPS-enabled devices, many applications extend their functionality in order to provide geolocation features to the user. A lot of them have the ability to generate and maintain data in the form of trajectories, and analyze them online using web services or by uploading data to their hosting servers for further analysis later. So, according to the type of the application and the purpose of use, the analysis may cover principles like range queries, similarity queries and common path searching, points of interest data mining and nearest neighbor searching problems.

In a discrete environment the problem of dealing with a set of moving objects can be considered as equivalent to a sequence of database snapshots of the object positions/extents taken at time instants t1 < t2 < …, with each time instant denoting the moment where a change took place. From this point of view, we can confront the indexing problems in such environments by suitably extending indexing techniques from the area of temporal (Salzberg and Tsotras, 1999) or/and spatial databases (Gaede and Günther, 1998); in Manolopoulos et al. (2000) it is exposed how these indexing techniques can be generalized to handle efficiently queries in a discrete spatiotemporal environment. Furthermore, a plethora of efficient access methods (Agarwal, Arge, Erickson, 2000, Kollios, Gunopulos, Tsotras, 1999, Papadopoulos, Kollios, Gunopulos, Tsotras, 2002, Patel, Chen, Chakka, 2004, Saltenis, Jensen, 2002, Saltenis, Jensen, Leutenegger, Lopez, 2000, Tao, Papadias, Sun, 2003) has been proposed to confront the case of continuous movements.

The common basis behind these indexing methods lies in the idea of abstracting each object’s position as a continuous function f(t) of time and updating the database whenever the function parameters change; accordingly an object is modeled as a pair consisting of its extent at a reference time (design parameter) and motion vector. One categorization of the aforementioned structures is according to the family of the underlying access method used. In particular, there are approaches based either on R-trees or quadtrees as explained in Raptopoulou et al. (2004), Raptopoulou et al. (2006a), Raptopoulou et al. (2006b). A further partitioning of these structures divides them into, (a) the ones that represent the stored object trajectories in the dual space (Agarwal, Arge, Erickson, 2000, Kollios, Gunopulos, Tsotras, 1999, Patel, Chen, Chakka, 2004) and (b) the others that leave data in their native dimensional space (Beckmann, Kriegel, Schneider, Seeger, 1990, Papadopoulos, Kollios, Gunopulos, Tsotras, 2002, Saltenis, Jensen, 2002, Saltenis, Jensen, Leutenegger, Lopez, 2000, Tao, Papadias, Sun, 2003). The geometric duality transformation is a tool heavily used in the computational geometry literature, which maps hyper planes in Rd to points and vice versa.

SMaRT1 is a Spatiotemporal Mysql ReTrieval web framework that proposes several ways in addressing spatiotemporal queries over moving object trajectories. SMaRT indexes two-dimensional trajectories, both in dual and native dimensional space, using B-tree and Range-tree variants (B+, Lazy B-trees and Orthogonal Triangle Range-Trees) and R-tree variants (R, R+, R*, TPR-trees) implemented in the MySQL management system. In addition, SMaRT integrates the functionality offered by the PostGIS spatial database system to index and address queries over these trajectories using geographic objects. The framework includes not only the functions and the API to communicate with it, but also a template demo tool to enable developers interact with it in a comprehensible manner.

In the context of this work, we evaluate SMaRT by comparing the different methods it includes when performing operations, such as querying, storing and retrieving, on 2D nonlinear moving object trajectories and evaluate the efficiency of such operations. These moving object trajectories are generated by GPS-enabled devices and imported into the spatial database schema, automatically or on user request.

More specifically, we sum up the technical contributions of our paper as follows:

  • We compare different methods on addressing range queries on moving object trajectories. The stored objects are indexed both in dual and native dimensional space. Our implementation also, tries to determine if the novel geometric dual approach (Orthogonal Triangle Range-Tree), as proposed in Sioutas et al. (2008), is efficient on the already implemented indexing structures or it constitutes a solution with theoretical interest only. Unlike all other classic dual methods that exist in literature and study linear trajectories, our solution goes two-steps further by (1) implementing the new theoretical dual approach presented in Sioutas et al. (2008) and (2) extending this novel method for efficiently processing nonlinear trajectories.

  • We conduct an extensive experimental evaluation that studies various parameters that can affect the total time of a query and proceed to a comparative analysis of the underlying methods. We prove the efficiency of our solution using a dataset we have created by drawing real routes on a map.

The rest of the paper is organized as follows: Section 2 discusses related work. Section 3 presents some definitions and introduces the problem description formally. Next, in Section 4 we present the 2D motion problem and which methods we used to confront it. In the continuity, Section 5 provides a comprehensive explanation of how the proposed framework focuses on solving the problem described in Section 3. In Section 6 the actual system architecture is presented whilst Section 7 presents the experiments that were conducted in the context of this work. Finally, Section 8 concludes the paper and Section 9 presents future steps.

Section snippets

Related work

In the sequel, let N denote the input size (number of stored objects), B the block size, K the output size and thus n = N/B and k = K/B are the size of the input and output in blocks, respectively.

According to previous related work, many researchers have proposed approaches like (Kollios, Papadopoulos, Gunopulos, Tsotras, 2005, Sioutas, Tsakalidis, Tsichlas, Makris, Manolopoulos, 2008), in order to solve the problem of efficiently addressing queries over spatiotemporal data, that represent

Definitions and problem description

In order to define formally the problem that our approach tries to encounter, a clarification of some terms must be made. We consider a database that records the position of two-dimensional moving objects on a finite terrain. We assume that objects move with velocities bounded by [umin,umax] starting from a specific location at a specific time instant and move along an arbitrary (nonlinear) trajectory. In order to be able to handle range queries efficiently, we approximate the user-defined

2D motion problem

At first, since trajectories are described by points as clarified above, in order to be able to compute certain geometrical functions and operations in the MySQL database (e.g. Euclidean distance, velocity measurement), a map projection of the surface of the Earth into a two-dimensional plane must be made. However, map projections have the disadvantage of generating distorted data points. It is mathematically impossible to project a three-dimensional object, such as the surface of the Earth,

The SMaRT approach

The SMaRT approach, as proposed in this paper, focuses on solving the problem as stated in Section 3 and evaluates the efficiency of range queries on nonlinear trajectories of moving objects. The proposed solution introduces several different ways of addressing queries, in order to determine the most efficient under the perspective of execution time:

  • The simple way, where the points of the trajectory of the moving object are stored as two separate decimal values with a timestamp (this applies

System architecture

In order to implement the proposed framework, as described in Section 5, a common scripting language with object oriented features has been used (PHP) along with an Apache web server. Moreover, the web server communicates with a MySQL and a PostgreSQL database server that both store the trajectories. This implementation consists of several classes to hold the data and makes possible for the user to interact with the proposed framework without any need of knowledge on SQL or specific DBMS

Experimental evaluation

In this section, we present the results of the experimental procedure that was conducted using SMaRT. In order to measure the effectiveness and efficiency of each query type as described in Section 5, multiple sets of different experiment class instants were created. A multiplicity of rectangular regions and time windows have been pre-selected as querying parameters. Furthermore, the results were measured by averaging the time of multiple executions for each one of them, in order to achieve a

Conclusions

In the context of this work we presented SMaRT, a novel framework based on MySQL and PostgreSQL database management systems, in order to help users determine the most efficient way of addressing spatiotemporal queries on user-defined two-dimensional trajectories. We conducted an extensive experimental evaluation under many different perspectives (time window range, map region size, different query types) to prove the efficiency of our approach and determine the most suitable query method

Future work

In the near future, we plan to extend and improve our system by exploiting more indexing structures and exploring more methods that can answer spatiotemporal queries. Moreover, we intend to extend the current solution for 3D trajectories. Finally, we want to deploy a solution that will be applicable in cloud environments (e.g. Hadoop,) in case the size of the dataset exceeds the resources and capabilities of a single RDBMS, and perform a comparative analysis with the current centralized

Acknowledgments

This research has been co-financed by the European Union (European Social Fund – ESF) and Greek national funds through the Operational Program “Education and Lifelong Learning” of the National Strategic Reference Framework (NSRF) – Research Funding Program: Cooperation 2011 – Partnerships of Production and Research.

Spyros Sioutas was born in Greece, in 1975. He graduated from the Computer Engineering and Informatics Department (CEID), School of Engineering, University of Patras, in December 1997. He received his Ph.D. degree from the same Department in 2002. Now, he is Associate Professor in Computer Science Department of Ionian University. His current research interests include: Algorithmic Data Management, Spatio-Temporal Database Systems, Distributed Data Structures and P2P Overlays, Cloud

References (20)

There are more references available in the full text version of this article.

Cited by (3)

Spyros Sioutas was born in Greece, in 1975. He graduated from the Computer Engineering and Informatics Department (CEID), School of Engineering, University of Patras, in December 1997. He received his Ph.D. degree from the same Department in 2002. Now, he is Associate Professor in Computer Science Department of Ionian University. His current research interests include: Algorithmic Data Management, Spatio-Temporal Database Systems, Distributed Data Structures and P2P Overlays, Cloud Infrastructures, Indexing, Query Processing and Query Optimization. He has published over 100 papers in various scientific journals and refereed conferences (amongst others SIGMOD Record, Algorithmica, Computer Journal, Data and Knowledge Engineering, Journal of Descrete Algorithms, Distributed and Parallel Databases, Journal of Systems and Software, ESA, ICALP, ISAAC, DEXA, SAC, CIKM, PODC, ICDT/EDBT, SODA, SIGMOD etc.) and has more than 550 citations. He was selected to attend as Postdoc Researcher the summer school on “massive data sets” in BRICS (Basic Research in Computer Science) department, University of Aarhus, Denmark, June 2002. He was visiting researcher in Kings College, University of London (research domain: String Algorithmics and I/O complexity), London, England, April 2005. He was also visiting researcher in MADALGO (research domain: “Deterministic Data Structures over P2P Networks”), Aarhus, Denmark, December 2008. He has 13 years working experience as a Developer, Software Tester, Database Administrator and Project Manager at Computer Technology Institute (Research Unit 7) and DBIS Lab (http://di.ionio.gr/dbislab).

View full text