Spatial-Keyword Skyline Publish/Subscribe Query Processing over Distributed Sliding Window Streaming

Data

Ze Deng, Yue Wang, Tao Liu, Schahram Dustdar,Fellow, IEEE, Rajiv Ranjan, Albert Zomaya, Fellow, IEEE, Yizhi Liu and Lizhe Wang^{†}, Fellow, IEEE,

Abstract—Current spatial-keyword publish/subscribe systems need to handle spatial-keyword skyline queries over geo-textual streams to continuously obtain good results. The skyline queries in such systems face two main problems: (1) query problems, because the powerful query capability is required for the strict limit of the response time and the large number of items concerned by the users, and (2) scalability issue, because millions of active users are maintained simultaneously with many network-connected machines. Unfortunately, the current approach is towards static data. Thus, this paper first proposes a distributed skyline query processing framework. Then, we optimize the skyline computing by introducing MF-R^{t}-tree, which is an update-efficient and space-saving indexing structure and a fast approach for processing a continuous spatial-keyword skyline query called eager^{∗}. Finally, a spatial and textual signature-based communication optimization method is proposed to support scalability. The experimental results indicate that (1) MF-R^{t}-tree can significantly reduce update costs, while maintaining a low storage cost, and a query performance comparable to IL-Quadtree, (2) eager^{∗} can averagely accelerate 79.72 × faster than the method based on BNL, (3) the communication optimization method significantly reduces the communication cost, and (4) the distributed framework can efficiently support large-scale skyline queries.

Index Terms—Publish/subscribe systems, spatial-keyword skyline query, geo-textual streaming data, indexing structure, communication cost

1 Introduction

A massive amount of geo-textual data that contain both

textual information and geographical location information are being generated at an unprecedented speed due to the proliferation of GPS-equipped mobile devices, embedded systems [?], and social-media services. For instance, millions of social-media users are uploading photos to Instagram with both location and textual tags, posting geo-tagged tweets on Twitter, and creating location-aware events on Facebook using their smart phones [?]. These geo-textual data have been generated in a stream fashion and contain valuable information for users. Moreover, users may focus on events in particular regions, and they hope to receive up-to-date geo-textual data related to such events.

The spatial-keyword publish/subscribe systems (e.g, [?], [?], [?] ) have provided the basic primitives with which to support the above-mentioned information processing paradigms. However, most of them are geared towards Boolean matching query [?] such that too many results satisfy these two constraints for users in terms of locations and keywords. Thus, users would prefer to gain "better" results by using preference queries. Top-k and skyline queries are two kinds of preference queries [?]. Recently, two methods of top-k queries [?], [?] in spatial-keyword publish/subscribe systems have been proposed. However, according to the description in [?], users cannot get a measuring standard to obtain the top-k answers, because the weights of the dimensions of top-k queries may be unknown. In this case, skyline queries can help users become aware of all the good results.

The challenges associated with the skyline queries in spatial-keyword publish/subscribe systems over streams fall into two categories:

1) The query problem. The geo-textual data are generated in a stream fashion. Thus, multiple skyline queries lie in the continuous query processing. The strict limit of the response time and the large number of items that concern the users (i.e., the size of the sliding window in our setting) make the query more challenging and demand more powerful query capability.

2) The scalability problem. The limited computational resources in a single machine often become a bottleneck. Thus, the spatial-keyword publish/subscribe systems often are very large scale, with many networkconnected machines, and millions of active users consequently need to be maintained simultaneously. Thus, the main challenge here lies in how to achieve a small communication cost among these machines.

Unfortunately, only [?] and [?] have discussed how to deal with spatial-keyword skyline queries over static geotextual data. There are no existing solutions to our problems. Therefore, in this study, we first present a distributed skyline query processing framework for the spatial-keyword publish/subscribe systems. Furthermore, we propose optimization methods for the performance and scalability of our framework. The principal contributions of the paper are as follows:

1) We proposed a distributed skyline query processing framework for large-scale spatial-keyword publish/subscribe systems by modifying a distributed topk spatial-keyword query processing framework [?].

2) We proposed an update-efficient and space-saving indexing structure Memo-and-Filter-based R^{t}-tree (MF-R^{t}-tree) to efficiently index geo-textual streaming data tuples in the framework, by fusing and improving the features of R^{t}-tree [?], cuckoo filter [?], and RUM-tree [?].

3) We proposed a fast processing approach for a continuous spatial-keyword skyline query to suit our streaming setting, by modifying a skyline computing scheme for streaming data [?] based on a spatial-keyword skyline

• Z. Deng, L. Wang (Corresponding author, lizhe.Wang@gmail.com), Y.

Wang, T. Liu, and Y. Liu are with the School of Computer Science,

China University of Geosciences, Wuhan, 430078, P.R.China.

• Z. Deng, and L. Wang (Corresponding author, lizhe.Wang@gmail.com)

are also with Hubei Key Laboratory of Intelligent Geo-Information

Processing, China University of Geosciences, Wuhan 430074, China.

• Schahram Dustdar is with the Technische Universität Wien, Austria.

• R. Ranjan is with School of Computing, Newcastle University, U.K.

• A. Zomaya is with the School of Information Technologies, The Uni-

versity of Sydney, Sydney, Australia.

computing algorithm for static data [?].

4) We proposed a novel communication optimization method to significantly reduce the communication cost of our distributed framework, by providing a spatial cuckoo filter based on the spatial coding technique for space pruning and by employing a one-permutation min-wise signature method for keyword pruning.

To the best of our knowledge, the proposed skyline query method is the first spatial-keyword skyline query processing method for distributed publish/subscribe systems.

The remainder of this paper is organized as follows: Section 2 presents the related research work. Section 3 proposes the skyline query processing framework and optimization methods. Section 4 proposes the method of optimizing the communication cost of the framework. Section 5 presents the experiments and results. Section 6 concludes this paper with a summary.

2 Related Work

This section describes the most salient studies of skyline computing over streaming data, continuous spatialkeyword query, indexing geo-textual objects, and distributed skyline computing.

2.1 Skyline over Streaming Data Computing the skyline over data streams is a substantial challenge, due to the unbounded stream length [?]. The sliding windowhas been widely employed to process skyline over a data stream. For instance, in [?] the skyline was computed over a count-based window of the last n received tuples. Subsequently, a time-based window method was used for continuous skyline queries in [?], with the algorithm LookOut. In [?], the authors proposed the lazy and eager sequential algorithms for computing the skyline over streams with a time-based sliding window. In [?], authors presented an energy-efficient continuous skyline query method over a sensor data stream in WSNs, called EECS, to reduce communication cost on processing skyline query. The above-mentioned methods aim to compute the skyline over the precise streaming data. Due to the fact that streaming data values are inherently uncertain and imprecise [?], some approaches for computing skyline over uncertain streaming data have been proposed. In [?], Zhang et al. proposed efficient techniques for finding probabilistic skyline objects based on sliding windows. Unlike the work in [?], which proposed techniques only for the case in which each object has a single instance, Ding et al. [?] proposed a skyline computing method for dealing with the case in which each uncertain object contains multiple instances. However, these skyline query methods were not considered over geo-textual streaming data. In this paper, we employed the sliding window to process skyline queries over geotextual streaming data.

2.2 Continuous Spatial-Keyword Queries Continuous spatial-keyword queries are issued once and then logically execute continuously to retrieve objects which satisfy both spatial and keyword constraints over geotextual streams. The queries can be roughly classified into two categories [?], i.e., Boolean matching and preference matching. The representative methods based on Boolean matching include IQ-tree [?] and AP-tree [?]. However, Boolean matching query methods may incur too many results to satisfy the two constraints for users in terms of locations and keywords. Thus, preference queries (e.g., top-k query and skyline query) can be used to gain "better" results. Currently, preference matching focuses on top-k query. For instance, the authors of [?] proposed an efficient solution to process a large number of top-k queries over a stream of geo-textual objects. In [?], to deal with continuous top-k spatial-keyword queries on road networks, the authors proposed two methods that can monitor such moving queries in an incremental manner and reduce repetitive traversing of network edges for better performance. In [?], the authors investigated top-k spatial-keyword publish/subscribe over a sliding window in both a single machine and a distributed cluster. In this paper, we focus on skyline queries.

2.3 Indexing geo-textual objects To support fast spatial-keyword query, extensive efforts have been made to index geo-textual objects. The representatives of conventional indexes includes IR-tree [?], Inverted-KD tree [?], I^{3} [?] that is an integrated inverted index, which adopts the quadtree to hierarchically partition the data space into keyword cells, and IL-Quadtree [?] that is an inverted linear quadtree. These indexing methods can directly applied to our setting. However, the high update cost is an issue in the case of streams, because they are toward static geo-textual objects. Meanwhile, most of the conventional indexing structures may incur high space costs due to holding numerous keywords.

In recent years, the indexing structures mainly focus on supporting fast complex spatial-keyword queries, e.g., collective spatial-keyword ones and sematic spatial-keyword ones. For example, LIR-tree [?], which is extended from IRtree, is designed for level-aware collective spatial-keyword queries. In [?], authors provided a two-layer hybrid index structure called Quad-cluster Dual-filtering R-Tree (QDR-Tree) to support Attributes-Aware Spatial-Keyword Query (ASKQ). In [?], LHQ-tree was proposed to support sematicaware top-k Spatial-keyword queries. LHQ-tree is a three layered hybrid indexing structure that first uses a quadtree to index objects based on their locations, then creates a set of n-gram inverted list for textual information and holds topic-based sematic information with LSH, respectively, for every quadtree leaf node. As we can see, compared with conventional indexing structures, the indexing structures for complex spatial-keyword queries are more complex, resulting in worse update performances, in the case of streams.

Moreover, to support dynamic geo-textual objects, recently, a gird-based index [?] was proposed to manage dynamic both top-k spatial-keyword queries and dynamic spatial-keyword objects. However, the gird-based index only bounds the maximum and minimum weights of objects’ textual attributes related to queries, instead of indexing the keyword sets of objects. When computing skyline, we need employ an indexing structure to quickly match keywords between geo-textual objects. Therefore, this indexing method is not suitable for our setting.

2.4 Distributed Skyline Computing Because the limited computational resources in a single machine often become a bottleneck when processing largescale skyline queries, some studies of distributed skyline computing have been conducted. For instance, in [?], the authors proposed a collaboration approach for continuous skyline computing in a two-tier streaming environment with a server as query interface and multiple data sites. In [?], the authors proposed a distributed parallel framework to address the parallel skyline query problem over uncertain data streams with a sliding window streaming model. In [?], a two-level distributed skyline query processing method was presented over uncertain data streams.

Additionally, the MapReduce framework has been widely used to process skyline queries (e.g, MR-GPMRS [?], MR-BNL [?], PPF-PGPS [?], SKY-MR [?] and SKY-MR^{+} [?]).