processing transitive nearest-neighbor queries in multi-channel access environments

35
Xiao Zhang 1 , Wang-Chien Lee 1 , Prasenjit Mitra 1, 2 , Baihua Zheng 3 1 Department of Computer Science and Engineering 2 College of Information Science and Technology The Pennsylvania State University 3 School of Information Systems, Singapore Management University EDBT, Nantes, France, 03/28/2008

Upload: vivek

Post on 13-Feb-2016

28 views

Category:

Documents


0 download

DESCRIPTION

Processing Transitive Nearest-Neighbor Queries in Multi-Channel Access Environments. Xiao Zhang 1 , Wang-Chien Lee 1 , Prasenjit Mitra 1, 2 , Baihua Zheng 3 1 Department of Computer Science and Engineering 2 College of Information Science and Technology The Pennsylvania State University - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Processing Transitive Nearest-Neighbor Queries in Multi-Channel Access Environments

Xiao Zhang1, Wang-Chien Lee1, Prasenjit Mitra1, 2, Baihua Zheng3

1 Department of Computer Science and Engineering2 College of Information Science and Technology

The Pennsylvania State University3 School of Information Systems, Singapore Management University

EDBT, Nantes, France, 03/28/2008

Page 2: Processing Transitive Nearest-Neighbor Queries in Multi-Channel Access Environments

Background Problem Analysis New TNN Algorithms Optimization Experiments Conclusions & Future Work

Page 3: Processing Transitive Nearest-Neighbor Queries in Multi-Channel Access Environments

What is TNN?◦ S is a set of

banks◦ R is a set of

restaurants◦ TNN distance =

5+1 = 6

Page 4: Processing Transitive Nearest-Neighbor Queries in Multi-Channel Access Environments

What is TNN? Given a query point p and two datasets S and R, TNN

returns a pair of objects (s, r) such that ∀(s’, r’)∈S×R, dis(p, s) + dis(s, r) ≤ dis(p, s’) + dis(s’, r’)where dis(p,s) is the Euclidean distance between p and s.

First proposed by Zheng, Lee and Lee [1].

[1] B. Zheng, K.C.Lee and W.-C.Lee. Transitive nearest neighbor search in mobile environments. SUTC 2006

Page 5: Processing Transitive Nearest-Neighbor Queries in Multi-Channel Access Environments

Server has all the data and broadcasts data in forms of radio signals in channels.

Mobile clients (cell phones and PDAs) tune in to broadcast channels, download necessary data and process queries.

Broadcast VS. on-demand◦ Support an arbitrary

number of mobile devices to have simultaneous access

◦ Efficient use of limited bandwidth

◦ Light workload on the server side

Page 6: Processing Transitive Nearest-Neighbor Queries in Multi-Channel Access Environments

Assumption:◦ Zheng, Lee and Lee assumed a single broadcast

channel.◦ Based on existing technology (dual-mode, dual-

standby cell phone), we assume multiple channels.

◦ A mobile client can access information in multiple channels simultaneously

Challenges:◦ How to utilize the parallel processing ability of

mobile clients to facilitate query processing?◦ How to reduce access time?◦ How to reduce energy consumption?

Page 7: Processing Transitive Nearest-Neighbor Queries in Multi-Channel Access Environments

1. We developed two new algorithms for TNN query in multi-channel access environment.

2. We proposed two new distance metrics (MinTransDist and MinMaxTransDist) so that our new algorithms efficiently reduce search cost.

3. We proposed an optimization technique to reduce energy consumption.

Page 8: Processing Transitive Nearest-Neighbor Queries in Multi-Channel Access Environments

1. Two broadcast channels, for S and R 2. 2-dim points 3. Air-indexing: R-tree[2]

4. Broadcast in depth-first order, in order to avoid back-tracking

5. (1, m) interleaving [3]

6. performance metrics (in # of pages): ◦ Access time◦ Tune-in time

[2] A. Guttman. R-trees: a dynamic index structure for spatial searching. inSigmod’84[3] T.Imielinski, S.Viswanathan, and B.Badrinath. Data on air: organization and access. TKDE 1997

Page 9: Processing Transitive Nearest-Neighbor Queries in Multi-Channel Access Environments

Randomly choose ANY pair of objects (s’, r’ ), use the trans. dist. as a search range

Guarantee to enclose the answer pair (s, r)

Page 10: Processing Transitive Nearest-Neighbor Queries in Multi-Channel Access Environments

Theorem[1]: ◦ the transitive distance determined by any pair of

objects (s, r) is an upper bound. General ideas of answering TNN queries:

◦ Estimate: find a search range from the query point p by searching the index

◦ Filter: filter unqualified data objects in the search range determined earlier to find the pair of objects with minimum transitive distance.

Page 11: Processing Transitive Nearest-Neighbor Queries in Multi-Channel Access Environments

Deficiencies of existing algorithms:◦ Approximate-TNN-Search:

Uses an equation to estimate the search range in the first step

Search range may be too large or too small◦ Window-Based-TNN-Search:

Two sequential NN searches in estimation step Search range estimation is done in sequential order Large access time

Page 12: Processing Transitive Nearest-Neighbor Queries in Multi-Channel Access Environments

Algo 1: Double-NN-Search◦ Issue two NN queries in estimation step◦ p’s NN in S, and p’s NN in R◦ (s1, r2)

Page 13: Processing Transitive Nearest-Neighbor Queries in Multi-Channel Access Environments

Hybrid-NN-Search◦ Increases interaction between two channels◦ Uses result of the finished NN to guide the

unfinished NN in order to reduce search range◦ Uses new distance metrics to perform branch-

and-bound◦ Treat TNN distance as a whole

Page 14: Processing Transitive Nearest-Neighbor Queries in Multi-Channel Access Environments

NN in Channel 1 finishes first Already found s=p.NN(S) Looking for r2, instead of r1

Page 15: Processing Transitive Nearest-Neighbor Queries in Multi-Channel Access Environments

NN in channel 2 finishes first Already found r=p.NN(R) Looking for s2 instead of s1

Use new criteria when searching the index Need new distance metrics for

branch&bound

Page 16: Processing Transitive Nearest-Neighbor Queries in Multi-Channel Access Environments

MinTransDist: ◦ Lower bound for trans. dist. from p to an MBR to r.

MinMaxTransDist:◦ Upper bound for trans. dist. from p to an MBR to r.

Details given in the paper.

Page 17: Processing Transitive Nearest-Neighbor Queries in Multi-Channel Access Environments

Algorithm description:◦ If the two NN searches in both channels are not

finished, follow the Double-NN algorithm◦ If the NN search in Channel 1 (Dataset S) finishes

first, let s=p.NN(S), use s as the new query point and perform NN on the remaining portion of R-tree for dataset R.

◦ If the NN search in Channel 2 (Dataset R) finishes first, change distance metrics, use MinTransDist and MinMaxTransDist to perform branch-and-bound. Find an s which can minimize the transitive distance.

Page 18: Processing Transitive Nearest-Neighbor Queries in Multi-Channel Access Environments

Updating and pruning strategy◦ Use queue to keep potential MBRs, sorted based

on their arrival time◦ Case 2 (s=p.NN(S) finishes first):

Switch NN query point to the s Initial upper bound update

If there is an intermediate result r’, update the upper bound with dis(p, s)+dis(s, r’ )

Scan the queue of MBRs and use dist. metr. in traditional NN queries.

Page 19: Processing Transitive Nearest-Neighbor Queries in Multi-Channel Access Environments

Updating and pruning strategy (cont.)◦ Case 3 (r=p.NN(R) finishes first):

If there is an intermediate result s’, use dis(p, s’)+dis(s’, r) as the new upper bound

Then scan all the MBRs in the queue, usez=minMi∈MBR_queue{MinMaxTransDist(p, Mi, r)} to update the upper bound.

In traversal, use MinMaxTransDist to update the upper bound; use MinTransDist for pruning

Page 20: Processing Transitive Nearest-Neighbor Queries in Multi-Channel Access Environments

Example for pruning:

Page 21: Processing Transitive Nearest-Neighbor Queries in Multi-Channel Access Environments

Goal: reduce energy consumption Analysis:

◦ Previous algorithms minimize the search range in the Estimate Step by issuing “exact” search

◦ Energy consumption in Filter Step is low◦ Energy consumption in Estimate Step is high

Approach: ◦ use “approximate” search in Estimate Step to

save energy in this step

Page 22: Processing Transitive Nearest-Neighbor Queries in Multi-Channel Access Environments

Approximate Search:◦ Relax the pruning condition◦ Use ratio of overlapping area to estimate the

probability◦ Compare the ratio with a threshold α

Page 23: Processing Transitive Nearest-Neighbor Queries in Multi-Channel Access Environments

How to determine α?

factors:◦ R-tree height and node depth

Use small α on the root and large α on leaves

◦ Difference in densities of the two datasets involved Small α or 0 on the dataset with smaller density

α0 1exact search

approximate search

Page 24: Processing Transitive Nearest-Neighbor Queries in Multi-Channel Access Environments

Dataset 1:◦ 39,000 * 39,000 square region◦ Densities: 10-7.0, 10-6.6, 10-6.2, 10-5.8, 10-5.4, 10-5.0, 10-

4.6, 10-4.2

◦ # of points: 152, 382, 960, 2411, 6055, 15210, 38206, 95969

Dataset 2:◦ 39,000 * 39,000 square region◦ # of points: 2,000 – 30,000 with 2,000 increment

Page 25: Processing Transitive Nearest-Neighbor Queries in Multi-Channel Access Environments

R-tree as air index Broadcast in depth-first order STR packing algorithm [3]

(1, m) interleaving [2]

1,000 query points generated for each of the experiments

Parameter SizeIndex pointer 2 bytesCoordinate 4 bytesData content 1k bytesPage capacity 64 – 512 bytes

[3] S.Leutenegger, M.Lopez and J.Edginton. Str: a simple and efficient algorithm for r-tree packing. ICDE 1997[2] T.Imielinski, S.Viswanathan, and B.Badrinath. Data on air: organization and access. TKDE 1997

Page 26: Processing Transitive Nearest-Neighbor Queries in Multi-Channel Access Environments

Algorithms with exact search:◦ Access time: Double-NN and Hybrid-NN have the

same access time, which is smaller than Window-Based

◦ 1.8 ≥ size(S) / size(R) ≥ 1 / 40

Page 27: Processing Transitive Nearest-Neighbor Queries in Multi-Channel Access Environments

Algorithms with exact search:◦ Tune-in time: when 0.01 ≤ size(S)/size(R) ≤ 0.4

Hybrid-NN gives the best tune-in time

Page 28: Processing Transitive Nearest-Neighbor Queries in Multi-Channel Access Environments

ANN vs. eNN◦ Improvement in tune-in time ranges from 11%-

20%

Page 29: Processing Transitive Nearest-Neighbor Queries in Multi-Channel Access Environments

Hybrid algorithm with ANN:

Page 30: Processing Transitive Nearest-Neighbor Queries in Multi-Channel Access Environments

Double-NN and Hybrid-NN effectively reduce access time

Cases in which our algorithms reduces tune-in time are stated and discussed

Optimization technique effectively reduces tune-in time of all three algorithms

Page 31: Processing Transitive Nearest-Neighbor Queries in Multi-Channel Access Environments

Generalized TNN queries in broadcast environment:◦ More than 2 datasets are involved◦ Visiting order not specified◦ Complete route query

Using new distance metrics in disk based environment

Page 32: Processing Transitive Nearest-Neighbor Queries in Multi-Channel Access Environments

Any questions?

Page 33: Processing Transitive Nearest-Neighbor Queries in Multi-Channel Access Environments

Def 1: (MinTransDist)◦ Given two points p and r, and an MBR MS, MinTransDist(p,

MS ,r) finds a point s on MS such that MinTransDist(p, MS ,r)=dis(p, s)+dis(s, r) and for any point s’≠ s, s’ ∈MS

dis(p, s’)+dis(s’, r) ≥ MinTransDist(p, MS ,r)

Page 34: Processing Transitive Nearest-Neighbor Queries in Multi-Channel Access Environments

Def 2: (MaxDist)◦ Given two points p and r, and a line segment ℓ,

MaxDist(p, ℓ, r) = maxi=I,2 {dis(p, vi)+dis(vi, r), where vi, (i=1, 2) are the two end points of ℓ

◦ MaxDist(p, ℓ, r) gives a tight upper bound for all the transitive distances from p to any points on ℓ, to r.

p

r

Page 35: Processing Transitive Nearest-Neighbor Queries in Multi-Channel Access Environments

Def 3: (MinMaxTransDist)◦ Given two points p and r, and an MBR MS,

MinMaxTransDist(p, MS, r) = min1≤i≤4{ MaxDist(p,ℓi, r ) } where ℓi (1≤i≤4) are the four sides of MBR MS

Lemma:◦ Given a starting point p, an ending point r, and an

MBR MS enclosing a point dataset S, ∃s ∈ S, such that dis(p, s)+dis(s, r) ≤ MinMaxTransDist(p, MS, r)