Spatial Indexing - PowerPoint PPT Presentation

1 / 20
About This Presentation
Title:

Spatial Indexing

Description:

R-tree: properties. Main points: every parent node ... Is there any other property that can be optimized? R*-tree Yes!. R*-tree. Optimization Criteria: ... – PowerPoint PPT presentation

Number of Views:105
Avg rating:3.0/5.0
Slides: 21
Provided by: gkol
Category:

less

Transcript and Presenter's Notes

Title: Spatial Indexing


1
Spatial Indexing
  • SAMs

2
Spatial Access Methods
  • PAMs
  • Grid File
  • kd-tree based (LSD-, hB- trees)
  • Z-ordering B-tree
  • R-tree
  • Variations R-tree, Hilbert R-tree

3
R-tree
Multi-way external memory structure, indexes
MBRs Dynamic structure
P1
P3
I
C
A
G
H
F
B
J
E
P4
D
P2
4
R-tree properties
  • Main points
  • every parent node completely covers its
    children
  • a child MBR may be covered by more than one
    parent - it is stored under ONLY ONE of them.
    (ie., no need for dup. elim.)
  • a point query may follow multiple branches.

5
R-tree
  • The original R-tree tries to minimize the area of
    each enclosing rectangle in the index nodes.
  • Is there any other property that can be
    optimized?

R-tree ? Yes!
6
R-tree
  • Optimization Criteria
  • (O1) Area covered by an index MBR
  • (O2) Overlap between directory MBRs
  • (O3) Margin of a directory rectangle
  • (O4) Storage utilization
  • Sometimes it is impossible to optimize all the
    above criteria at the same time!

7
R-tree
  • ChooseSubtree
  • If next node is a leaf node, choose the node
    using the following criteria
  • Least overlap enlargement
  • Least area enlargement
  • Smaller area
  • Else
  • Least area enlargement
  • Smaller area

8
R-tree
  • SplitNode
  • Choose the axis to split
  • Choose the two groups along the chosen axis
  • ChooseSplitAxis
  • Along each axis, sort rectangles and break them
    into two groups (M-2m2 possible ways where one
    group contains at least m rectangles). Compute
    the sum S of all margin-values (perimeters) of
    each pair of groups. Choose the one that
    minimizes S
  • ChooseSplitIndex
  • Along the chosen axis, choose the grouping that
    gives the minimum overlap-value

9
R-tree
  • Forced Reinsert
  • defer splits, by forced-reinsert, i.e. instead
    of splitting, temporarily delete some entries,
    shrink overflowing MBR, and re-insert those
    entries
  • Which ones to re-insert?
  • How many? A 30

10
R-tree variations
  • What about static datasets?
  • (no ins/del) Hilbert
  • What about other bounding shapes?

11
R-trees - variations
  • what about static datasets (no ins/del/upd)?
  • Q Best way to pack points?

12
R-trees - variations
  • what about static datasets (no ins/del/upd)?
  • Q Best way to pack points?
  • A1 plane-sweep
  • great for queries on x
  • terrible for y

13
R-trees - variations
  • what about static datasets (no ins/del/upd)?
  • Q Best way to pack points?
  • A1 plane-sweep
  • great for queries on x
  • bad for y

14
R-trees - variations
  • what about static datasets (no ins/del/upd)?
  • Q Best way to pack points?
  • A1 plane-sweep
  • great for queries on x
  • terrible for y
  • Q how to improve?

15
R-trees - variations
  • A plane-sweep on HILBERT curve!

16
R-trees - variations
  • A plane-sweep on HILBERT curve!
  • In fact, it can be made dynamic (how?), as well
    as to handle regions (how?)

17
R-trees - variations
  • Dynamic (Hilbert R-tree)
  • each point has an h-value (hilbert value)
  • insertions like a B-tree on the h-value
  • but also store MBR, for searches

18
Hilbert R-tree
  • Data structure of a node?

x-low, ylow x-high, y-high
LHV
ptr
h-value gt LHV MBRs inside parent MBR
19
R-trees - variations
  • Data structure of a node?

B-tree
x-low, ylow x-high, y-high
LHV
ptr
h-value gt LHV MBRs inside parent MBR
20
R-trees - variations
  • Data structure of a node?

R-tree
x-low, ylow x-high, y-high
LHV
ptr
h-value gt LHV MBRs inside parent MBR
Write a Comment
User Comments (0)
About PowerShow.com