knr-tree: a novel r-tree-based index for facilitating spatial window queries on any k relations...

30
kNR-tree: A novel R-tree-based index for facilitating Spatial Window Queries on any k relations among N spatial relations in Mobile environments ANIRBAN MONDAL ANIRBAN MONDAL IIS, IIS, University of University of Tokyo. Tokyo. ANTHONY K. H. TUNG ANTHONY K. H. TUNG SOC, SOC, National University National University of Singapore of Singapore MASARU KITSUREGAWA MASARU KITSUREGAWA IIS, IIS, University of Tokyo. University of Tokyo. Contact E-mail: Contact E-mail: [email protected] [email protected]

Upload: sharyl-hines

Post on 28-Dec-2015

222 views

Category:

Documents


0 download

TRANSCRIPT

kNR-tree: A novel R-tree-based index for facilitating Spatial Window Queries on any krelations among N spatial relations in Mobile

environments

ANIRBAN MONDALANIRBAN MONDAL

IIS, IIS,

University of Tokyo.University of Tokyo.

ANTHONY K. H. TUNGANTHONY K. H. TUNG

SOC,SOC,

National University of National University of Singapore Singapore

MASARU KITSUREGAWAMASARU KITSUREGAWA

IIS, IIS,

University of Tokyo.University of Tokyo.

Contact E-mail: [email protected] E-mail: [email protected]

PRESENTATION OUTLINEPRESENTATION OUTLINE

INTRODUCTIONINTRODUCTION PROBLEM FORMULATIONPROBLEM FORMULATION QUERY PROCESSINGQUERY PROCESSING The kNR-tree index The kNR-tree index PERFORMANCE STUDYPERFORMANCE STUDY RELATED WORKRELATED WORK CONCLUSION AND FUTURE WORKCONCLUSION AND FUTURE WORK

PRESENTATION OUTLINEPRESENTATION OUTLINE

INTRODUCTIONINTRODUCTION PROBLEM FORMULATIONPROBLEM FORMULATION QUERY PROCESSINGQUERY PROCESSING The kNR-tree index The kNR-tree index PERFORMANCE STUDYPERFORMANCE STUDY RELATED WORKRELATED WORK CONCLUSION AND FUTURE WORKCONCLUSION AND FUTURE WORK

INTRODUCTIONINTRODUCTION Increasing popularity of mobile applications Prevalence of spatial data and its applications

Efficient processing of spatial queries in mobile environments

This work focusses on the processing of spatial select queries on any k relations among Nspatial relations in mobile environments kNW queries

Motivation for kNW queriesMotivation for kNW queries

A single client may be interested in objects A single client may be interested in objects from a number of different relations from a number of different relations

Different clients may be interested in Different clients may be interested in different numbers as well as different kinds different numbers as well as different kinds of relations. of relations.

Mobile environments typically have Mobile environments typically have multiple relations and user population multiple relations and user population demographics may vary considerably.demographics may vary considerably.

Examples of kNW queriesExamples of kNW queries

Find all bookshops, restaurants and car-parks which I will encounter nearby me during my next 10 minutes of travelling.

Find all bus stations and shopping centres which I will encounter nearby me during my next 15 minutes of travelling.

Examples of kNW queriesExamples of kNW queries

Find all bookshops, restaurants and car-parks which I will encounter nearby me during my next 10 minutes of travelling.

Find all bus stations and shopping centres which I will encounter nearby me during my next 15 minutes of travelling.

kNW queries are beneficial in the real world.

MAIN CONTRIBUTIONSMAIN CONTRIBUTIONS Proposal of the kNR-tree, a Proposal of the kNR-tree, a single single integrated novel integrated novel

R-tree-based structure for indexing objects from R-tree-based structure for indexing objects from N N different spatial relations. different spatial relations. kNR-tree facilitates kNR-tree facilitates kNW kNW queries.queries. Processing of kNW queries in mobile environments

Differences from existing worksDifferences from existing works The window of the query is speculative (not known in The window of the query is speculative (not known in

advance) advance) the processing done by some of the base stations may the processing done by some of the base stations may notnot

contribute to the final results.contribute to the final results.

We examine issues concerning objects from We examine issues concerning objects from N N different different spatial relations.spatial relations.

PRESENTATION OUTLINEPRESENTATION OUTLINE

INTRODUCTIONINTRODUCTION PROBLEM FORMULATIONPROBLEM FORMULATION QUERY PROCESSINGQUERY PROCESSING The kNR-tree index The kNR-tree index PERFORMANCE STUDYPERFORMANCE STUDY RELATED WORKRELATED WORK CONCLUSION AND FUTURE WORKCONCLUSION AND FUTURE WORK

PROBLEM FORMULATIONPROBLEM FORMULATION

Given a set of base stations, each of which Given a set of base stations, each of which stores and manages the data (from N spatial stores and manages the data (from N spatial relations) of mutually disjoint spatial regions relations) of mutually disjoint spatial regions and a set of mobile clients, the mobile client and a set of mobile clients, the mobile client wishes to find the results of spatial window wishes to find the results of spatial window queries (on any k of the N relations) nearby queries (on any k of the N relations) nearby himself within the duration of the next T time himself within the duration of the next T time unitsunits..

THE CONTEXTTHE CONTEXT Each object is a point in space represented by its Each object is a point in space represented by its

centroid.centroid. Each object has a corresponding descriptor bitmap.Each object has a corresponding descriptor bitmap.

The descriptor bitmap for each object is exactly the same in The descriptor bitmap for each object is exactly the same in terms of the entry positions of relation.terms of the entry positions of relation.

Tick entry positions as Tick entry positions as 1 1 if object has the relation, otherwise if object has the relation, otherwise mark as mark as 00..

Objects are static, but the clients who issue queries to Objects are static, but the clients who issue queries to the objects are mobile. the objects are mobile.

Alternative perspective of this problem: Indexing only Alternative perspective of this problem: Indexing only one spatial relation with the type of the object asone spatial relation with the type of the object as

a scalar attribute of the space.a scalar attribute of the space.

ILLUSTRATIVE EXAMPLE OF ILLUSTRATIVE EXAMPLE OF OBJECT BITMAPSOBJECT BITMAPS

CLIENT QUERIESCLIENT QUERIES Client queries are of the form (Client queries are of the form (queryIDqueryID, , clientIDclientID, , PIssuePIssue, ,

SpeedMaxSpeedMax, , QbitmapQbitmap, , DeltaDelta, , TauTau) ) queryID queryID is the unique query identifieris the unique query identifier clientID clientID is the unique client identifieris the unique client identifier PIssue PIssue is the point of issue of the queryis the point of issue of the query SpeedMax SpeedMax specifies client’s maximum speed.specifies client’s maximum speed. Qbitmap Qbitmap is the query bitmap (an array of N bits)is the query bitmap (an array of N bits)

Structure is Structure is exactlyexactly same in terms of entry same in terms of entry positions of relations as object bitmap. positions of relations as object bitmap.

Delta Delta quantifies the distance from client’s current quantifies the distance from client’s current location which location which M M considers to be ‘nearby’ himself. considers to be ‘nearby’ himself.

Tau Tau indicates the duration of time (after issuing the indicates the duration of time (after issuing the query) during which the client would wish to receive query) during which the client would wish to receive the query results.the query results.

PRESENTATION OUTLINEPRESENTATION OUTLINE

INTRODUCTIONINTRODUCTION PROBLEM FORMULATIONPROBLEM FORMULATION QUERY PROCESSINGQUERY PROCESSING The kNR-tree index The kNR-tree index PERFORMANCE STUDYPERFORMANCE STUDY RELATED WORKRELATED WORK CONCLUSION AND FUTURE WORKCONCLUSION AND FUTURE WORK

WINDOW QUERY PROCESSING WINDOW QUERY PROCESSING IN MOBILE ENVIRONMENTSIN MOBILE ENVIRONMENTS

We define We define Qcircle Qcircle as a circle drawn with as a circle drawn with PIssue PIssue as centre and (as centre and (Tau ×SpeedMax Tau ×SpeedMax + + Delta) as radius. Delta) as radius. MBR of MBR of Qcircle Qcircle is called is called QMBRQMBR. .

Client cannotClient cannot be traveling at his maximum be traveling at his maximum speed in all directions at oncespeed in all directions at onceQMBRQMBR is a speculative and conservative estimate is a speculative and conservative estimate

of the query windowof the query windowQMBR QMBR may intersect with the domains of multiple may intersect with the domains of multiple

base stations base stations

Case 1Case 1

QMBR falls completely within one base QMBR falls completely within one base station B’s domainstation B’s domainB B processes processes QMBR QMBR on its own and sends on its own and sends

results to client.results to client.

Case 2Case 2QMBR intersects with the domain of at least QMBR intersects with the domain of at least

one base station other than B one base station other than B B B determines the set determines the set R R of base stations with of base stations with

whose domains whose domains QMBR QMBR intersects.intersects.For each member For each member r r of of RR, , B B determines the determines the

intersecting rectangular part between intersecting rectangular part between QMBR QMBR and and rr’s domain and sends the intersecting rectangular ’s domain and sends the intersecting rectangular part to each part to each rr. . We refer to such intersecting rectangular parts as We refer to such intersecting rectangular parts as

subQMBRsubQMBRs. s. After processing its respective After processing its respective subQMBRsubQMBR, each , each r r

sends a sends a COMPLETE COMPLETE message to indicate that it message to indicate that it has completed processing its has completed processing its subQMBRsubQMBR..

PRESENTATION OUTLINEPRESENTATION OUTLINE

INTRODUCTIONINTRODUCTION PROBLEM FORMULATIONPROBLEM FORMULATION QUERY PROCESSINGQUERY PROCESSING The kNR-tree indexThe kNR-tree index PERFORMANCE STUDYPERFORMANCE STUDY RELATED WORKRELATED WORK CONCLUSION AND FUTURE WORKCONCLUSION AND FUTURE WORK

The kNR-treeThe kNR-tree kNR-tree is a kNR-tree is a single single integrated Rtree-based structure integrated Rtree-based structure

for indexing objects from for indexing objects from N N spatial relations.spatial relations. Non-leaf nodes of the kNR-tree contain entries of the Non-leaf nodes of the kNR-tree contain entries of the

form form (ptr, mbr(ptr, mbr, , NbitmapNbitmap) ) ptr ptr is a pointer to a child node in the kNR-tree is a pointer to a child node in the kNR-tree mbr mbr is the MBR that covers all the MBRs in the child node. is the MBR that covers all the MBRs in the child node. Nbitmap Nbitmap consists of array of consists of array of N N entry bits, one for each entry bits, one for each

spatial relation.spatial relation.

Leaf nodes of the kNR-tree contain entries of the Leaf nodes of the kNR-tree contain entries of the form form (oid, loc(oid, loc, , NbitmapNbitmap) ) oid oid is a pointer to an object in the database is a pointer to an object in the database loc loc is the location of the object. is the location of the object.

Illustrative example of kNR-treeIllustrative example of kNR-tree

Window query processing algorithm for kNR-tree

PRESENTATION OUTLINEPRESENTATION OUTLINE

INTRODUCTIONINTRODUCTION PROBLEM FORMULATIONPROBLEM FORMULATION QUERY PROCESSINGQUERY PROCESSING The kNR-tree indexThe kNR-tree index PERFORMANCE STUDYPERFORMANCE STUDY RELATED WORKRELATED WORK CONCLUSION AND FUTURE WORKCONCLUSION AND FUTURE WORK

PERFORMANCE STUDYPERFORMANCE STUDY Real dataset Greece Roads used for our experiments

The ‘Greece Roads’ dataset contains 23268 rectangles. We computed the centroid of these rectangles to get 23268 points Enlarging this dataset of points by translating and mapping the data.

Each of the base stations had more than 200000 points (objects) Each point associated with at least one spatial relation

We used 16 base stations kNR-tree used for indexing the points at each base station

We define the size of a query QSIZE as the percentage of a base station’s domain that a query covers.

Example: QSIZE = 20 implies that the query covers 20% of the area associated with the base station’s domain.

We used a fanout of 64 for the kNR-tree

Effect of variations in QSIZE

Effect of variations in k

PRESENTATION OUTLINEPRESENTATION OUTLINE

INTRODUCTIONINTRODUCTION PROBLEM FORMULATIONPROBLEM FORMULATION QUERY PROCESSINGQUERY PROCESSING The kNR-tree index The kNR-tree index PERFORMANCE STUDYPERFORMANCE STUDY RELATED WORKRELATED WORK CONCLUSION AND FUTURE WORKCONCLUSION AND FUTURE WORK

RELATED WORKRELATED WORKTraditional R-tree-based indexes are not

adequate for indexing mobile objects Frequent updates large number of node-splits

and/or node-merges.R-tree-based structures for mobile context

Time-parameterized R-tree (TPR-tree) Spatio-Temporal R-tree (STR-tree) Trajectory-Bundle tree (TB-tree) Lazy Update R-tree (LUR-tree) Multiversion 3D R-tree(MV3R-tree)

PRESENTATION OUTLINEPRESENTATION OUTLINE

INTRODUCTIONINTRODUCTION PROBLEM FORMULATIONPROBLEM FORMULATION QUERY PROCESSINGQUERY PROCESSING The kNR-tree index The kNR-tree index PERFORMANCE STUDYPERFORMANCE STUDY RELATED WORKRELATED WORK CONCLUSION AND FUTURE WORKCONCLUSION AND FUTURE WORK

CONCLUSION AND FUTURE WORKCONCLUSION AND FUTURE WORK

SummarySummaryWe have addressed efficient processing of kNW We have addressed efficient processing of kNW

queries in mobile environments.queries in mobile environments.Our solution involves the use of our proposed Our solution involves the use of our proposed

kNR-tree. kNR-tree. A single integrated index for N spatial relationsA single integrated index for N spatial relations

Future WorkFuture WorkDetailed performance evaluationDetailed performance evaluation Investigation of the effect of spatial density Investigation of the effect of spatial density Load-balancing among the base stations.Load-balancing among the base stations.