mqm - Department of Computer Science

advertisement
Processing Monitoring Queries on
Mobile Objects
Lecture for COMS 587
Department of Computer Science
Iowa State University
What is a mobile database?
A mobile database is a set of mobile devices
- Centralized: there exists a central server with
which each mobile device can communicate
- Decentralized: these devices form a network by
themselves
- Mobile ad hoc network (MANET)
- Mesh networks
Characteristics
Large number of mobile objects
Continuous movement of mobile objects
- Limited battery power
- Limited communication bandwidth
Processing Range-Monitoring Query
• What is range-monitoring query?
– Retrieve mobile objects in a spatial region, and
– continuously monitor the population in the area
Range-Monitoring Queries
Q2
a
d
Q1
c
f
b
e
Range-Monitoring Queries
Q2
a
d
Q1
c
f
b
e
Some Potential Applications
Tourist guiding
Automatic traffic control
Digital battlefield vehicle tracking
Wild animal tracking
Research Issues
How to minimize location updates?
– Excessive mobile communication could drain
battery power quickly
How to minimize server processing cost?
– Query results keep changing
Related Works
Location Estimation
[Woflson98, Woflson99, etc.]
Trajectory Indexing
[Kollios99, Saltenis00, etc.]
Safe Region Approach
[Prabhakar00, Prabhakar01]
Safe Regions
Rectangular
Safe Region
Q1
Q2
a
Q5
Q3
Q4
Circular
Safe Region
Problems with Safe Regions
Computing a safe region takes from O(n)
to O(n log3 n)
Adding a new query requires to recompute safe regions for all objects
Challenge
How to provide
– accurate query results, and
– real-time updates?
Proposed: Monitoring-Query Management
Q1
Q6
Q3
Q2
a
Q5
Q7
Q4
Resident Domain
Computing a Resident Domain
Given an object’s position P and its
processing capability N, its resident
domain should
– contain position P, and
– be as large as possible, but
– contain no more than N queries
Domain and Query Decomposition
Q1
R1
Q2
R21
Q3
Q4
R22
R31
R41
R42
Domain and Query Decomposition
Q1
R1
Q2
Q3
Q4
R41
R42
R21
R22
a
R31
Domain and Query Decomposition
Q1
R1
Q2
Q3
Q4
R41
R42
R21
R22
a
R31
Domain Tree (D-tree)
D
D
domain node
data node
Domain Tree (D-tree)
D
d1
d2
d1
d2
Domain Tree (D-tree)
D
d21
d1
d22
d1
d2
d21
d22
Number of messages sent by mobile objects (millions)
Mobile Communication Cost
30
25
20
Safe Region
MQM
15
10
5
0
10
20
30
40
50
60
70
80
90
Number of monitoring queries (thousands)
100
Number of index nodes accessed (millions)
Server Processing Cost
1000
100
Safe Region
MQM
10
1
0.1
10
20
30
40
50
60
70
80
90
Number of monitoring queries (thousands)
100
Significant and Impact of MQM
MQM is the first scalable technique, in terms
of mobile communication and server
processing costs, for real-time rangemonitoring query management
Mobile Range Monitoring Queries (M-RMQ)
A M-RMQ retrieves the mobile
objects within a range
centered on a mobile object
It is associated with a mobile
object called focal node
The movement of the focal node
and other mobile objects
may lead to the change of
query results
Proposed: MobiEye
The network domain is divided
into a number of grid cells
Each focal node reports its
velocity to the server and
update when such information
changes
Each query window is associated
with a bounding box
All nodes within a bounding box
are notified of the velocity of
the query
When a node detects that its
moves into/out of a bounding
box, report to the server
Decentralized Mobile Database Management
Mobile ad hoc networks
 A set of mobile objects form a
network by themselves
 The communications among these
objects are done through packet
relaying
h
a
 Without relying on any fixed
infrastructures
 Low cost and easy setup (great
for battlefields)
 Many protocols have been
developed for efficient routing
discovery and communications
d
c
f
e
b
g
Handling Stationary Range Monitoring Queries
Key research issue: where the
queries are stored
 Solution 1: each node keeps a copy
of each query

Great for query evaluation

Expensive for query installation
and removal
 Solution 2: each node keeps only
the queries it issues

Great for query installation and
removal

Expensive for query evaluation
h
a
d
c
f
e
b
g
Handling Stationary Range Monitoring Queries
Network partitioning
Each node caches all queries
relevant to its home cell
While moving inside a cell, a
node monitors its movement
against the queries it knows
if crossing over any boundary,
update the query issuer
What happens when moving
into/out of a cell?
Handling Stationary Range Monitoring Queries
Network partitioning
Each node caches all queries
relevant to its home cell
While moving inside a cell, a
node monitors its movement
against the queries it knows
if crossing over any boundary,
update the query issuer
What happens when moving
into/out of a cell?
Handling Stationary Range Monitoring Queries
When moving out of its cell, a
node checks if it is the last
node
No - remove the queries
Yes – keep the queries, the
node becomes the retaining
node to the cell
When moving into a new cell, a
node retrieves the new
relevant queries
either from any node in the cell, or
from the cell’s retaining node
Handling Stationary Range Monitoring Queries
Searching for a retaining node
can be done by expanding
the search range step by
step
A cell’s retaining node may
move far away from the cell
Keep the queries in a node
that is close to the cell
Compute the distance
whenever moving into a new
cell, and if necessary,
unload the queries to some
nearby node
Handling Mobile Range Monitoring Queries
Handling Mobile Range Monitoring Queries
Concept of safe boundary
Handling Mobile Range Monitoring Queries
Concept of safe boundary
Handling Stationary KNN queries
Handling Stationary KNN queries
Handling Stationary KNN queries
Handling Mobile KNN queries
Questions
Any other types of queries?
Can any type of queries be converted
into one or more stationary range
monitoring queries?
Download