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
aQ2
Q1 bc
f
d
e
Range-Monitoring Queries
a
Q2
Q1bc
f
d
e
Tourist guiding
Automatic traffic control
Digital battlefield vehicle tracking
Wild animal tracking
Some Potential Applications
How to minimize location updates?
– Excessive mobile communication could
drain battery power quickly
How to minimize server processing
cost?
– Query results keep changing
Research Issues
Related Works
Location Estimation [Woflson98, Woflson99, etc.]
Trajectory Indexing [Kollios99, Saltenis00, etc.]
Safe Region Approach [Prabhakar00, Prabhakar01]
Q1
Q5
Q2
Q4
Safe Regions
Q3
Circular Safe Region
RectangularSafe Region
a
Problems with Safe Regions
Computing a safe region takes from
O(n) to O(n log3 n)
Adding a new query requires to re-
compute safe regions for all objects
How to provide
– accurate query results,
and
– real-time updates?
Challenge
Proposed: Monitoring-Query Management
Q1
Q2
Q7
Q6
Q3
Q5
Q4
a
Resident Domain
Given an object’s position P and its
processing capability N, its resident
domain should
Computing a Resident Domain
– contain position P, and
– be as large as possible, but
– contain no more than N queries
Domain and Query Decomposition
Q1
Q4
Q2
Q3
R1
R42
R21
R31
R22
R41
Domain and Query Decomposition
Q1
Q4
Q2
Q3
R1
R42
R21
R31
R22
R41
a
Domain and Query Decomposition
Q1
Q4
Q2
Q3
R1
R42
R21
R31
R22
R41
a
Domain Tree (D-tree)
D
D domain node
data node
D
d1
d1 d2d2
Domain Tree (D-tree)
d1
d1 d2d21
d22
d21 d22
D
Domain Tree (D-tree)
Mobile Communication Cost
0
5
10
15
20
25
30
10 20 30 40 50 60 70 80 90 100Num
ber
of
mes
sage
s se
nt
by m
obile
obj
ects
(m
illio
ns)
Number of monitoring queries (thousands)
MQM
Safe Region
Server Processing Cost
0.1
1
10
100
1000
10 20 30 40 50 60 70 80 90 100Num
ber
of in
dex
node
s ac
cess
ed (
mill
ions
)
Number of monitoring queries (thousands)
MQMSafe Region
Significant and Impact of MQM
MQM is the first scalable technique, in
terms of mobile communication and
server processing costs, for real-time
range-monitoring 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 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
a
bcf
d
e
g
h
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
a
bcf
d
e
g
h
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 knowsif 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 knowsif 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 querieseither 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?