Download presentation
Presentation is loading. Please wait.
Published byAnabel Kelley Modified over 9 years ago
1
R* Tree By Rohan Sadale Akshay Kulkarni
2
Motivation Optimization criteria for R* Tree High level Algorithm Example Performance Agenda
3
Motivation R Tree Every parent completely covers its children A child MBR may be covered by more than one parent. It is stored under only one of them. Minimizes only area. Multiple nodes should be visited because of overlap (MBRs).
4
Motivation R+ Tree Disjoint MBRs Prevents overlapping by duplicating objects across leaf nodes
5
Motivation R* Tree Improved query performance over R-Tree But, higher construction cost Incorporates a combined optimization of: -area -margin -overlap
6
Follows an engineering approach to find best possible combinations of the criteria mentioned below: Minimization of area covered by each MBR Minimization of overlap between MBRs Minimization of MBR margins Maximization of storage utilization But, can’t do all at once. Need a heuristic approach. Optimization criteria for R* Tree
7
High Level Algorithm Same algorithm as the R-tree for query and delete operations. When inserting, the R*-tree uses a combined strategy. For inner nodes (non-leaf), enlargement and area are minimized. For leaf nodes, overlap is minimized. Deletion and reinsertion of entries allows them to "find" a place in the tree that may be more appropriate than their original location. When a node overflows, a portion of its entries are removed from the node and reinserted into the tree. This has the effect of producing more well-clustered groups of entries in nodes, reducing node coverage.
8
R*-Tree example a b c e d f g i h j N3 N4 N2 N1 N6 N5 N6 N1 N2 N3N4 j ihgfedcba
9
R*-Tree example a b c e d k f g i h j N3 N4 N2 N1 N6 N5 N6 N1 N2 N3N4 j ihgfedcba Insert k
10
R*-Tree example a b c e d k f g i h j N3 N4 N2 N1 N6 N5 N6 N1 N2 N3N4 j ihgfedcba Insert k Check for minimum area enlargement at root node. N5 or N6 ? - choose N5 k ?
11
R*-Tree example a b c e d k f g i h j N3 N4 N2 N1 N6 N5 N6 N1 N2 N3N4 j ihgfedcba Insert k Check for minimum area enlargement at next non leaf node. N1 or N2 ? - choose N1 k ?
12
R*-Tree example a b c e d k f g i h j N3 N4 N2 N1 N6 N5 N6 N1 N2 N3N4 j ihgfedcba Insert k If node capacity is 3., then where will ‘k’ go? Reinsertion of nodes from nearest MBRs (strategy - overlap minimization) k ?
13
R*-Tree example a b c e d k f g i h j N3 N4 N2 N1 N6 N5 N6 N1 N2 N3N4 j ihgfedcba Insert k If node capacity is 3., then where will ‘k’ go? k Reinsert nodes from N1 and N2
14
R*-Tree example a b c e d k f g i h j N3 N4 N2 N1 N6 N5 N6 N1 N2 N3N4 j ihgfedkba Insert k If node capacity is 3., then where will ‘k’ go? - Reinsertion !!! c
15
R-Tree vs R+ Tree vs R* Tree j a b c e fg h i 1 2 3 1 st level index leafs 123 a bc efg hi d d new data x new data: x Initial data: {a,b,…,h,i} Legend Initial R-tree
16
R-Tree j a b c e fg h i 1 2 3 1 st level index leafs d new data x new data: x Initial data: {a,b,…,h,i} Legend
17
R+ Tree j a b c e fg h i 1 2 3 1 st level index leafs d new data x new data: x Initial data: {a,b,…,h,i} Legend
18
R* Tree j a b c e fg h i 1 2 3 1 st level index leafs d new data x new data: x Initial data: {a,b,…,h,i} Legend
19
Performance Improved split heuristic produces pages that are more rectangular and thus better for many applications. Reinsertion method optimizes the existing tree, but increases complexity. Efficiently supports point and spatial data at the same time.
20
References Encyclopedia of GIS: R*-tree, H. Kriegel, P. Kunath, page 987- 992. R-Trees: Theory and Applications, Yannis Manolopoulos, Alexandros Nanopoulos, Apostolos N. Papadopoulos and Yannis Theodoridis Wikipedia - https://en.wikipedia.org/wiki/R*_treehttps://en.wikipedia.org/wiki/R*_tree
21
Thank you :)
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.