Jeremy Iverson & Zhang Yun
1
Chapter 6 Key Concepts
◦ Structures and access methods
◦ R-Tree
R*-Tree
Mobile Object Indexing
Questions
2
Indexes are used to efficiently locate data on
hard disk
1D
◦ Indexes that are based on one key value
B and B+-trees
2D
◦ Indexes based on two key values
Ordered tilings
3
Structures store data for efficient
modification and querying
Types of data to store
◦
◦
◦
◦
◦
Raster (Region quadtrees)
Point Object (2D trees)
Linear (PM quadtrees)
Collections of objects (R-trees)
Spherical (QTM region quadtrees)
4
R-tree review
R-tree
A balanced tree to index spatial objects
Shape of objects is approximated by minimum bounding rectangle
Rectangles at any level may overlap
5
R-tree and its limitations
How to build R-tree
Given a set of spatial objects, build a R-tree is based on heuristic
R-tree is designed to minimize the area of containing rectangles
Limitations
Heuristic of R-tree may cause much overlap
Cause other problems like uneven distribution
R-tree prefer this
Spatial objects set
One split method
Another split method
6
Motivations
New index
Better than R-tree performance
Support Multi spatial object types (e.g. point, polygon)
Possible applications
Support spatial query processing (e.g. online map service)
Support imagine processing
7
R*-tree
Heuristics may conflict
Choose best design from experiments
More heuristics
H1:The area covered by directory rectangles should be minimized
H2:The overlap between directory rectangles should be minimized
H3:Make bounding rectangles as square as possible
H4:The storage utilization should be optimized—reduce height of tree
Spatial objects set
H1: area
minimum
H2: overlap
minimum
8
R*-tree Operations
R-tree
Insert new object
Minimize the overlap
Choose the entry in R*-tree whose rectangle needs least overlap
enlargement to include the new object
Spatial objects set
R-tree: minimize
area enlargement
R*-tree: minimize
overlap
enlargement
9
R*-tree Reinsertion
R*-tree (also R-tree) suffer from the sequences of insertions
Reorganization of tree is necessary
Compute the distance between the centers of their rectangles and the center
of the bounding rectangle, remove top k rectangle with maximum distance
Invoke insert operation for removed rectangles
Spatial
Objects
Calculate
distance
Remove
object A
Reinsert
object A
10
R*-tree and its limitations
R*-tree highlights
Use more heuristics, design validated from experiments
Perform significantly better than R-tree
Limitations
No concept for moving object
Not designed for spatio-temporal objects
11
Naïve Approach
◦
◦
◦
◦
y(t)=vt+a
v: velocity
t: time
a: intercept
◦ Query is expressed as 2D interval [(y1q,y2q),(t1q,t2q)]
12
Benefits
◦ Intuitive representation
Drawbacks
◦ Length of lines is infinite
A lot of redundancy
High overhead for updates
13
Time-Parameterized R-Tree
◦ Actually extends the R*-tree
A moving object o is represented with
◦ MBR
◦ Velocity Bounding Rectangle (VBR) of the form
oV={oV1-,oV1+,oV2-,oV2+}
ovi- represents the lower bound for velocity in
dimension i
ovi+ represents the upper bound for velocity in
dimension i
14
av={1,1,1,1} bv={-2,-2,-2,-2} cv={-2,0,0,-2} dv={-1,-1,1,1}
*MBRs for non-leaf nodes are not required to always be
minimum, only minimum at some time step.
15
TPR-Tree allows one to index and query
moving objects
TPR-Tree creates index structures much
worse than optimal [Tao et al.]
◦ Thus, the TPR*-Tree is introduced, which considers
multiple paths when inserting an object into the
index structure, creating an index much closer to
optimal
16
17