Skyline Queries Against Mobile Lightweight Devices in MANETs Zhiyong Huang 1 Christian S. Jensen 2...

36
Skyline Queries Again Skyline Queries Again st Mobile Lightweight st Mobile Lightweight Devices in MANETs Devices in MANETs Zhiyong Huang 1 Christian S. Jensen 2 Hua Lu 1 Beng Chin Ooi 1 1 National University of Singapore, Singapore 2 Aalborg University, Denmark

Transcript of Skyline Queries Against Mobile Lightweight Devices in MANETs Zhiyong Huang 1 Christian S. Jensen 2...

Skyline Queries Against MoSkyline Queries Against Mobile Lightweight Devices in bile Lightweight Devices in MANETsMANETs

Zhiyong Huang1

Christian S. Jensen2

Hua Lu1

Beng Chin Ooi1

1 National University of Singapore, Singapore2 Aalborg University, Denmark

OutlineOutline• Introduction• Problem Definition• Skyline Queries in MANETs• Optimizations on Mobile Devices• Experimental Studies• Conclusion

IntroductionIntroduction• Mobile Ad-hoc NETworks (MANETs)

– A MANET is a self configuring network of mobile devices connected by wireless links

– Wireless topology usually changes rapidly and unpredictably

• Skyline Queries– Operator based on dominance– Return tuples from sets of tuples

that are not dominated by others

quality

price

Skyline Queries in MANETsSkyline Queries in MANETs• Assumptions

– Each resource-constrained device holds a portion of the entire dataset

– A mobile user is only interested in data of a limited geographical area, though the query involves data stored on multiple mobile devices

ExampleExample

• M1 to M4 hold different hotel relations

• M2 is interested in cheap and good hotels within the circle area

M1 M2

M3

M4

OutlineOutline• Introduction• Problem Definition• Skyline Queries in MANETs• Optimizations on Mobile Devices• Experimental Studies• Conclusion and Future Work

Problem SettingProblem Setting• MANET of m mobile devices

– {M1, M2, …, Mm}

• Local relation Ri on each device Mi

– <x, y, p1, p2, …, pn>

• Skyline issued by a device Morg

– <id, posorg, d>• id: network id of query originator Morg

• pos: position of Morg

• d:distance (from pos) of interest

Technical ChallengesTechnical Challenges• Slow and unreliable wireless channels

compared to wired connections– To reduce data transferred between

devices

• Resource-constrained devices– Storage and processing saving

techniques on mobile devices

OutlineOutline• Introduction• Problem Definition• Skyline Queries in MANETs• Optimizations on Mobile Devices• Experimental Studies• Conclusion

Naïve SolutionNaïve Solution

• Query originator Morg – Executing a local skyline query: SKorg

– Sends query to other mobile devices– Merges results when receiving them

• A mobile device Mi

– Executing a local skyline query too– Sends result SKi back to Morg – Instead of sending whole Ri

DiscussionDiscussion• Final skyline result: SK• SK≠USKi, SK USKi

• FSK = USKi–SK• FSK contains all those tuples that are no

t in SK but sent between devices• Identify SKi–SK on device Mi

U|

Filtering StrategyFiltering Strategy• Any tuple tpi in SKi–SK is dominated by so

me tuple(s) tpj in SK• Where to find such tpjs?

– Pick from Morg’s local result– Send <id, posorg, d, tpj> as query– Mi filters out tuples using tpj

• Which one to pick?– Dominating region

Dominating RegionDominating Region

• The ability of tpj to dominate others– Tuple value <pj1, pj2, …, pjn>– Data space boundaries

• Volume of dominating region– VDRj=∏k(bk-pjk)

• Choose from SKorg tpflt with max VDRj

Dominating Region

0 b1

b2

pj1

pj2

Max cornerof data space

p1

p2

tpj

Dominating AbilityDominating Ability

Hotel Price Rating

h11 20 7

h12 40 5

h13 80 7

h14 80 4

h15 100 7

h16 100 3

Hotel Price Rating

h21 60 3

h22 80 2

h23 120 1

h24 140 2

h25 100 4

• Two hotel relations– Price range (20..200)– Smaller rating means better (1..10)

Relation R1 Relation R2 (Morg)

VDR

(200-60)*(10-3)=980

(200-80)*(10-2)=960

(200-120)*(10-1)=720

Estimated Dominating RegionEstimated Dominating Region• Over-estimation

– VDRj=∏k(maxk-pjk)– maxk:pre-specified larger value

• Under-estimation– VDRj=∏k(hk-pjk)– hk:local maximum D o m inat ing R e gio n

0 b 1

b 2

p j1

p j2

O v e re s tim a tio n

p 1

p 2

tp j

M A X 1

M A X 2

U n d e re s tim a tio n

h1

h2

Dynamic Filtering TuplesDynamic Filtering Tuples

Hotel Price Rating

h31 60 3

h32 80 5

h33 120 4

Hotel Price Rating

h41 80 2

h42 120 1

h43 140 2

• Three hotel relations– M4 -> M3 -> M1

Relation R3 Relation R4 (Morg)

Hotel Price Rating

h11 20 7

h12 40 5

h13 80 7

h14 80 4

h15 100 7

h16 100 3

Relation R1

VDR31=980 VDR41=960

OutlineOutline• Introduction• Problem Definition• Skyline Queries in MANETs• Optimizations on Mobile Devices• Experimental Studies• Conclusion

Dataset StorageDataset Storage• Goals

– Space efficient– Local processing efficient

• Operations– Spatial extent check

• Distinct coordinates

– Attribute value comparison• Floats• Duplicates

Hybrid Storage ModelHybrid Storage Model• Spatial coordinates

– Real values– MBRi(xmax, ymax, xmin, ymin)

• Attribute values– Ascending domains– IDs– Sort p1

x y p1 … pn

1.331 103.67 0 … 2

1.329 103.59 1 … 0

1.412 103.77 2 … j

… … … … …

1.429 103.95 k … 3

Relation Ri

v0

v1

vk

Sorted domains

p1 pn

v0

v1

vj

Local Skyline ComputingLocal Skyline Computing• Sptial check

– mindist(posorg, MBRi) > d• Skyline computing

– Comparison of IDs instead of true values of float type

– p2 to pn only• Update filtering tuple if necessary

– Choose the one with larger VDR value

Assembly on Query OriginatorAssembly on Query Originator• When Morg receives SKi from others

– Duplication elimination– False positive removing

• A simple nested loop is enough– Comparing coordinates

• Identify duplicates– Comparing attribute values

• Identify false positive reports from both SKorg and SKi

OutlineOutline• Introduction• Problem Definition• Skyline Queries in MANETs• Optimizations on Mobile Devices• Experimental Studies• Conclusion

Experiment ParametersExperiment Parameters

Number of mobile device 32, 42, …, 102

Cardinality of global reln 100K, 200K, …, 1000K

Cardinality of local reln 10K, 20K, …, 100K

Local storage model Flat, Hybrid

Number of non-spatial attr 2, 3, 4, 5

Non-spatial attri range [0.0, 9.9], [0,1000]

Spatial extent of global reln 1000 X 1000

Attribute distribution Indep., Anti-Correl.Query distance of interest 100, 250, 500

Studies on Local OptimizationStudies on Local Optimization• HP iPAQ h6365 pocket PC

– MS Windows Mobile 2003– 200MHz TI OMAP1510 processor– 64MB SDRAM (55MB user accessible)

• SuperWaba– Java-based open-source platform for PDA a

nd smartphone applications– www.superwaba.org

Time vs Local Rel. CardinalityTime vs Local Rel. Cardinality• Flat Storage vs Hybrid Storage• Data set: Anti-Correlated vs Independent• HS incurs less processing cost

Time vs Local DimensionalityTime vs Local Dimensionality• Average of costs on both distributions

– Coz they are close to each other

• HS still performs better

Performance in SimulationPerformance in Simulation

• Simulated MANET– JiST-SWANS

• A Jave based MANET simulator• http://jist.ece.cornell.edu/

– Pentium IV desktop PC• MS Windows XP• 2.99GHz CPU • 1 GB memory

SettingsSettings• Device setting

– Data partitioned and allocated to devices using a grid of m1/2 by m1/2

– 1-5 queries per device• MANET settings

– Total simulation time: 2 hours– Speed range: 2 unit/s – 10 unit/s– Holding time: 120 seconds– Wireless routing protocol: AODV

Data Reduction EfficiencyData Reduction Efficiency• Data Reduction Rate

– – SKi

’ is the local skyline after filtering• Pre-tests in static setting

– Forwarding query out recursively– Findings

• No significant difference between exact VDR and estimated VDRs

• Dynamic filtering is more powerful

Data Reduction RateData Reduction Rate

Response Time - BFResponse Time - BF• Breadth-First query forwarding

– Parallel• Time receiving

answers from 80% other devices– Cannot ensure all

devices are always reachable and available in MANETs

Morg

M4

M1

M5

M2

M3

Query messageResult message

Response Time - DFResponse Time - DF• Depth-First forwarding

– Serialized

• Query ends when originator finds all neighbors have processed the query M4

Morg

M1

M5

M2

M3

Query messageResult message

Response TimeResponse Time

OutlineOutline• Introduction• Problem Definition• Skyline Queries in MANETs• Optimizations on Mobile Devices• Experimental Studies• Conclusion

ConclusionConclusion• Problem setting

– MANET of lightweight devices– Skyline queries with spatial constraints

• Solution highlights– Filtering based distributed query

processing strategy to reduce communication cost

– Specialized local storage and algorithm to speed up local processing

– Experimentally verified performance

Thanks!