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