• 검색 결과가 없습니다.

An Efficient PAB-Based Query Indexing for

N/A
N/A
Protected

Academic year: 2022

Share "An Efficient PAB-Based Query Indexing for "

Copied!
3
0
0

로드 중.... (전체 텍스트 보기)

전체 글

(1)

ETRI Journal, Volume 29, Number 5, October 2007 Su Min Jang et al. 691

ABSTRACT⎯Existing methods to process continuous range queries are not scalable. In particular, as the number of continuous range queries on a large number of moving objects becomes larger, their performance degrades significantly. We propose a novel query indexing method called the projected attribute bit (PAB)-based query index. We project a two- dimensional continuous range query on each axis to get two one-dimensional bit lists. Since the queries are transformed to bit lists and query evaluation is performed by bit operations, the storage cost of indexing and query evaluation time are reduced significantly. Through various experiments, we show that our method outperforms the containment-encoded squares-based indexing method, which is one of the most recently proposed methods.

Keywords⎯Query indexing, continuous range queries, moving objects, location-based services, mobile computing.

I. Introduction

The efficient processing of a large number of continuous range queries over moving objects is critically important in providing location-aware services and applications. Depending on whether or not queries move, the processing of continuous range queries on moving objects can be roughly classified into two categories [1]. The first category deals with stationary queries over moving objects [1]-[3], and the second category deals with moving queries on moving objects [4]. This paper focuses on the latter.

Manuscript received Mar. 20, 2007; revised July 5, 2007.

This work was supported by the Korea Research Foundation Grant funded by the Korea Government (MOEHRD) (The Regional Research Universities Program/Chungbuk BIT Research-Oriented University Consortium.)

Su Min Jang (phone: + 82 43 261 3230, email: jsm@netdb.chungbuk.ac.kr) and Jae Soo Yoo (phone: +82 43 261 3230, email: yjs@chungbuk.ac.kr) are with the Department of Computer and Communication Engineering, Chungbuk National University, Cheongju, Rep.

of Korea.

Seok Il Song (email: sisong@chungju.ac.kr) is with the Department of Computer Engineering, Chungju National University, Chungju, Rep. of Korea.

The storage cost and query evaluation time of stationary queries on moving objects [1]-[3] increase rapidly with respect to the size of the monitoring region. In particular, the storage cost increases in proportion to the R2, where R is the size of the monitoring region. Also, their overall performance is degraded remarkably when the number of continuous range queries increases whether or not continuous queries overlap. Since our method transforms the two-dimensional information of continuous range queries into one-dimensional bit lists by projection, the storage cost of our method increases linearly in proportion to 2R×N, where N is the number of queries. Also, our method allows query processing to take advantage of incremental updating and supports fast processing time through bit operations between two projected query set bit lists (PQSBLs).

II. PAB-Based Query Indexing

In our method, two-dimensional data space is partitioned into Rx

×

Ry rectangular cells, where Rx and Ry denote the number of slices on each axis. Users specify Rx and Ry as optimal values for a certain application. The Rx and Ry slices along each axis are determined in such a way that all slices are equal. Then, a range query is transformed into two bit lists, or projected query bit lists (PQBLs), by projecting query rectangles to each axis. Since a bit is assigned to a slice of an axis, the size of each bit list is Rx or Ry.

All bits are set as 0 in the beginning. After shadows representing the query are placed on an axis by projection, a bit whose corresponding slice overlaps the shadow is set to 1.

Figure 1 shows an example of transforming a query rectangle q into two PQBLs (PQBLx, PQBLy) on each axis. In Fig. 1(a), Rx

×

Ry denotes the monitoring region, which is the dotted area, where Rxand Ryis the range of each axis. The transformation is performed on each axis. Fig. 1(b) shows the transformation process on axis X. In the figure, when projecting

An Efficient PAB-Based Query Indexing for

Processing Continuous Queries on Moving Objects

Su Min Jang, Seok Il Song, and Jae Soo Yoo

(2)

692 Su Min Jang et al. ETRI Journal, Volume 29, Number 5, October 2007 Fig. 1. Transforming range query into PQBL.

Shadow SDy (q)

Query q

Light Ly

Domain Range of

Y Query

q Domain Range of X

Axis X Light Lx

Shadow SDx (q) q

Y

Monitoring region Rx⋅ Ry Axis

(b) Projecting query q on X axis Axis Y

(c) Projecting query q on Y axis (a) Query q on Rx⋅ Ry

1 1 1 1

0 0 0 0 0 0 0 0 0 0

10

PAB

PQBLx

PQBLy

000111110000

query q on axis X by the light Lx, the shadow SDx(q) of q is laid on axis X. In the same way, q is projected on axis Y in Fig. 1(c). The PQBLx on axis X is (00000111100000)2 as shown in Fig. 1(b) and the PQBLy on axis Y is (00001111110000)2. Each bit of the PQBLs is a projected attribute bit (PAB).

To process continuous range queries, we should construct two PQSBLs, namely, PQSBLx for axis X and PQSBLy for axis Y. Figure 2 shows the process of constructing the PQSBLs.

We maintain a query ID list (QL) to store query IDs, and each entry of the QL has an object list for object IDs contained in its query. The order of PQBLs in the PQSBLs is the same as that of query IDs in the QL; that is, the i-th PQBLx of PQSBLx corresponds to the i-th query ID of QL.

We define a bit list which consists of the i-th bits in PQSBLx (PQSBLy) as PQSBLxrow(i) (PQSBLyrow(i)). For example, in Fig. 2, the PQSBLyrow(5) is the bit list of the fifth bits in PQSBLy. We maintain the object list of a query incrementally.

To do this, we find queries that no longer contain the object,

Fig. 2. Constructing PQSBLs for six queries.

QL Y

0 1 0 0 0 1 0 1 0 1 0 1 0 0 0 1 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 1 1 0 0 0 0 1 1 1 0 1 0 1 1 1 0 1 0 1 1 0 0 1 0

q1

q2

q3

QL PQSBLy

o

PQSBLyrow

(5)

PQSBLx 0

0 0 0 0 0

PQSBLxrow(8) 0 1 2 3 4 5 6 7 8 910 11

012345678910 11

PAB

Rx

q1q2q3q4q5q6

q5

q6

o q4

cell (11, 8)

o old position cell (8, 5) Ry

o new position cell (5, 4) q6q5q4q3q2q1

X 0 00000 0 00010 0 10010 0 11010 0 11010 0 11011 1 11011 1 11110 1 11110 1 11110 0 00000 0 00000

Fig. 3. Incremental query evaluation with bit operations.

PQSBLxrow(5) PQSBLyrow(5) PQSBLxrow(8)

PQSBLyrow(4)

Negative_PQBL

Positive_PQBL QL

QL AND 0 1 1 0 0 1

1 1 1 0 1 0

AND 1 1 0 1 1 0

1 1 0 0 1 0 AND

XOR 0 0 1 0 0 0

XOR 1 0 0 0 1 0 q1q2q3q4q5 q6

o

o Moved

AND (AND bit operation) XOR (XOR bit operation) old_PQBL

new_PQBL T Old o cell

(8, 5)

New o cell (5, 4)

q1q2q3q4q5q6

which we denote the queries as NeQL (Negative QL). Queries that newly contain the object are denoted as PoQL (Positive QL).

Figure 3 shows an example of evaluating queries for a moving object o. The object o is moved from cell (8, 5) to cell (5, 4). Through an AND operation between PQSBLxrow(i) and PQSBLyrow(j) for an object on the cell (i, j) which is the old or new position, we can get the list of queries (old_PQBL or new_PQBL in Fig. 3) which includes the object. To find NeQL and PoQL, an AND operation between old_PQBL and new_PQBL is carried out. We denote the result of the AND operation as T. Then, to get NeQL(PoQL), we perform an XOR operation on T and old_PQBL (new_PQBL). Finally, we get Negative_PQBL (001000)2 for NeQL and Positive_PQBL (100010)2 for PoQL as shown in Fig. 3. With Negative_PQBL and Positive_PQBL, we adapt the object lists of the queries q3, q1, and q5. That is, o is deleted from the object list of q3 and o is added to the object lists of q1 and q5.

We use an approximation scheme. We expand non-integer values to the nearest integer values and get minimum bounding regions for non-rectangular query regions. Therefore, there needs to be one or more steps to find final results from candidates produced by the proposed algorithm.

(3)

ETRI Journal, Volume 29, Number 5, October 2007 Su Min Jang et al. 693

To dynamically maintain the number of bitmaps for queries, the PQSBLs have k percent free space, which is determined by users according to the characteristics of application. If there is no free space, we reconstruct the PQSBLs in order to have k percent additional free space.

III. Performance Evaluation

Simulations were conducted to evaluate and compare PAB- based indexing with CES-based indexing. We measured the incremental query evaluation time and the total storage cost. We assumed that there were no changes to the query index between two query re-evaluations. The maximum side length of a CES for the CES-based query index was set to the best performance value of 16. The maximum width (height) of a query is denoted as W, and the size of a query was randomly and independently chosen between 1 and W. The new location of a moving object was calculated based on its old position and the horizontal and vertical movements. We denote the maximal movement of objects as M.

Our experiments were performed on a 3.0 GHz Pentium IV with 1024 Mbytes of main memory running Windows XP.

Figure 3(a) shows the storage cost of both methods. The storage cost was measured with varying R from 512 to 8,192 and

|Q|, which is the number of queries from 8,000 to 32,000 (|O| =50,000, M=2, W=50). Since the storage cost of our method is proportional to 2R and that of CES-based index is proportional to R2, the storage utilization of our method is superior to that of CES. Figure 3(b) shows the impact of |Q| on query re-evaluation time. Queries are uniformly distributed (R=1,024, |O| =50,000, W=50). Query evaluation time is measured with varying |Q|

from 1,000 to 16,000 and M as 2 and 10. The query re- evaluation time of our proposed index is much better than that of CES with the same M. Figure 3(c) shows the impact of |O| on query reevaluation time. In this experiment, R and W were set to be the same as those shown in Fig. 3(b), and |Q| was set at 8,000.

We measured the query re-evaluation time with varying |O| from 4,000 to 64,000. In this experiment, our method again outperforms CES. As the |O| increases, the performance gap between the two methods increases.

IV. Conclusion

Our method allows query processing to take advantage of incremental updating and supports fast processing time through bit operations between two PQSBLs while requiring little storage.

Our simulation results show that PAB-based query indexing substantially outperforms CES-based query indexing in terms of incremental query evaluation time and storage cost. Also, our method is suitable for high dimensional data, since the number of PQSBLs to process continuous query on high dimensional data is

Fig. 4. (a) Impact of R on total index storage, (b) impact of |Q|, and (c) impact of |O| with various M on (re)evaluation time.

Evaluation time (s)

0 5 10 15 20 25

|Q|=1000 |Q|=2000 |Q|=4000 |Q|=8000 |Q|=16000 (b) Number of continuous queries

PAB (M=2) CES (M=2) PAB (M=10) CES (M=10)

02 4 6 108 12 1416 18 20

Evaluation time (s)

|O|=4000 |O|=8000 |O|=16000 |O|=32000 |O|=64000 (c) Number of moving objects

PAB (M=2) CES (M=2) PAB (M=10) CES (M=10) 0

100 200 300 400 500 600 700 800

Total storage (Mbyte)

R=512 R=1024 R=2048 R=4096 R=8192 (a) R (size of monitoring region) PAB (|Q|=8000) CES (|Q|=8000) PAB (|Q|=16000) CES (|Q|=16000) PAB (|Q|=32000) CES (|Q|=32000)

equal to the number of dimensions. In our future work, we will expand our method to high dimensional data space.

References

[1] K.L. Wu, S.K Chen, and P.S. Yu, “Incremental Processing of Continual Range Queries over Moving Objects,” IEEE Trans.

Knowledge and Data Eng Journal, vol. 18, Nov. 2006, pp. 1560- 1575.

[2] K.L. Wu, S.K Chen, and P.S. Yu, “Processing Continual Range Queries over Moving Objects Using VCR-Based Query Indexes,”

Proc. IEEE Int’l Conf. Mobile and Ubiquitous Systems: Networking and Services, Aug. 2004.

[3] K.L. Wu, S.K Chen, and P.S. Yu, “Shingle-Based Query Indexing for Location-Based Mobile E-Commerce,” Proc. IEEE Int’l Conf.

E-Commerce, July 2004.

[4] M.F. Mokbel, X. Xiong, and W.G. Aref, “SINA: Scalable Incremental Processing of Continuous Queries in Spatio-Temporal Databases,” Proc. of ACM SIGMOD Int’l Conf. Management of Data, 2004.

참조

관련 문서

There are four major drivers to the cosmetic appearance of your part: the part’s geometry, the choice of material, the design of the mold (or tool), and processing

1 John Owen, Justification by Faith Alone, in The Works of John Owen, ed. John Bolt, trans. Scott Clark, "Do This and Live: Christ's Active Obedience as the

As shown in Figure 2, the energy barriers of the process is 12.91 kcal/mol and the formation of 1-C is an endothermic process (The energy of reaction for the 1-C was 2.03

Our Rank-Based Merkle AVL-Tree (RB-MAT) is a novel authenticated data structure with efficient query method, authentication of indices and adjustable balance factor,

Given these quantities, Gordon method implies that the cost of capital of a firm increases with its growth rate.. The second method is based on

Furthermore, we evaluate the performance of PIP-EL on the independent dataset, showing that our method outperforms the exist- ing method and two different machine

As an extension of our search for thioflavonoids, 15 we describe an efficient synthesis method for heterocyclic analogues of thioflavones as potential drug

During our recent studies for the development of an efficient hydration method of nitrile, 5 we envisioned that we could prepare various cinnamamides in a one-pot