Micha Streppel and Ke Yi - PowerPoint PPT Presentation

1 / 16
About This Presentation
Title:

Micha Streppel and Ke Yi

Description:

... by at most ? objects o in S with radius(o) radius(b) [de Berg et al. 1997] ... The object-BAR-tree (using guarding sets [de Berg et al. 2003]) Size: O(?N/B) ... – PowerPoint PPT presentation

Number of Views:24
Avg rating:3.0/5.0
Slides: 17
Provided by: yike
Category:
Tags: berg | micha | streppel

less

Transcript and Presenter's Notes

Title: Micha Streppel and Ke Yi


1
Approximate Range Searching in External Memory
  • Micha Streppel and Ke Yi
  • Presented by Liu Nan

2
Range Searching
  • A set S of N points in Rd
  • Build a data structure such that given a query
    range Q, S n Q can be returned efficiently

focus on range reporting, range aggregation in
paper
3
Range Searching in External Memory
  • 1D B-tree
  • Size O(N/B), Query O(logB(N/B)k/B))
  • 2D
  • Half planes Agarwal et al. 2000
  • Size O(N/B), Query O(logB(N/B)k/B))
  • Orthogonal rectangles Arge et al. 1999
  • Size O(N/B), Query T((N/B)ek/B)
  • Query O(logB(N/B)k/B)) , Size T((N/B)
    log(N/B)/loglogBN)
  • kdB-tree Robinson 1981
  • Size O(N/B), Query O((N/B)½ k/B)

Exact range searching is difficult!
4
Approximate Range Searching
radius e diam(Q)
Q
  • Internal memory
  • BBD-tree Arya and Mount, 1995
  • BAR-tree Duncan et al. 2001
  • Size O(N), Query O(log(N) 1/e ke) for any
    convex Q
  • External memory this paper!

5
Externalization
previously
Query bounds of linear structures in
internal/external memory
6
Externalizing the kd-tree
B 3
Internal memory O(N½ k) External memory
O((N/B)½ k/B) for orthogonal rectangle ranges
7
The BAR-Tree Duncan et al. 2001
  • A space-partitioning scheme
  • Similar to kd-tree
  • But also use diagonal cuts
  • All cells are convex and fat
  • Some cuts have to be unbalanced
  • But no two consecutive unbalanced cuts
  • Height O(log N)
  • Query range intersects O(log(N) 1/e ke)
    cells(any convex range)

8
Blocking the BAR-Tree
  • Top-down blocking
  • Rules for u
  • Check us two subtrees T1, T2
  • Add u if both have B/2 nodes
  • If T1 small, check if entire T1 fits
  • then add T1
  • else do not add u
  • Not possible for both T1 and T2 to be small

B 8
9
Blocking the BAR-Tree
Any subtree Tu is stored in O(Tu/B1) blocks
10
Current Blocking Not Sufficient
11
Regrouping Shallow Subtrees
  • Identify shallow nodes top-down
  • u is shallow if there is a path of length log(B)
    beneath u is stored in more than c blocks
  • For such a u
  • Do a BFS for log(B) levels
  • Move these nodes from their original blocks to a
    new block

12
I/O Analysis of a Query
organized in O(1/e)subtrees
Qe
Q
nodes completelyinside Qe
nodes intersectsboth Q and ?Qe
total O(ke)
total O(log N1/e) total I/O O(logBN1/e)
total I/O O(1/e ke/B)
Achieving the desired query I/O O(logB(N/B)
1/e ke/B)
13
Construction and Update
  • Construction O(N/B logM/B(N/B)) I/Os
  • Same as sorting
  • Insertions and deletions
  • Use partial rebuilding
  • O(logBN 1/B logM/B(N/B)log(N/B)) I/Os
    amortized

14
Extension to Objects
  • S a collection of objects
  • The density of S is the smallest number ? such
    that any ball b is intersected by at most ?
    objects o in S with radius(o) radius(b) de
    Berg et al. 1997

low density
high density
high density
15
Extension to Objects
  • The object-BAR-tree (using guarding sets de Berg
    et al. 2003)
  • Size O(?N/B)
  • Query O(logB(N/B) ?/B1/e ?ke/B)
  • Construction O(? N/B logM/B(N/B))

low density
high density
high density
16
The END
  • Thank you!
Write a Comment
User Comments (0)
About PowerShow.com