Spatial Information Systems (SIS) COMP 30110 Spatial access methods: Indexing (part 2)

Slides:



Advertisements
Similar presentations
1 DATA STRUCTURES USED IN SPATIAL DATA MINING. 2 What is Spatial data ? broadly be defined as data which covers multidimensional points, lines, rectangles,
Advertisements

Nearest Neighbor Search
Spatial Indexing SAMs. Spatial Indexing Point Access Methods can index only points. What about regions? Z-ordering and quadtrees Use the transformation.
Spatial Data Structures Hanan Samet Computer Science Department
Spatial Join Queries. Spatial Queries Given a collection of geometric objects (points, lines, polygons,...) organize them on disk, to answer point queries.
Spatial Join Yan Huang Spatial Join Given two sets of spatial data Find the pair of objects satisfying certain spatial predicate – e.g.
CS144: Spatial Index. Example Dataset Grid File (2 points per bucket)
Searching on Multi-Dimensional Data
A Simple and Efficient Algorithm for R-Tree Packing Scott T. Leutenegger, Mario A. Lopez, Jeffrey Edgington STR Sunho Cho Jeonghun Ahn 1.
Computer Graphics1 Quadtrees & Octrees. Computer Graphics2 Quadtrees n A hierarchical data structure often used for image representation. n Quadtrees.
Quadtrees Raster and vector.
Spatial Mining.
Indexing Network Voronoi Diagrams*
CS447/ Realistic Rendering -- Solids Modeling -- Introduction to 2D and 3D Computer Graphics.
Query Processing in Databases Dr. M. Gavrilova.  Introduction  I/O algorithms for large databases  Complex geometric operations in graphical querying.
Spatial Indexing I Point Access Methods. PAMs Point Access Methods Multidimensional Hashing: Grid File Exponential growth of the directory Hierarchical.
2-dimensional indexing structure
Spatial indexing PAMs (II).
Spatial Indexing SAMs. Spatial Indexing Point Access Methods can index only points. What about regions? Z-ordering and quadtrees Use the transformation.
Multiple-key indexes Index on one attribute provides pointer to an index on the other. If V is a value of the first attribute, then the index we reach.
Spatial Indexing SAMs. Spatial Access Methods PAMs Grid File kd-tree based (LSD-, hB- trees) Z-ordering + B+-tree R-tree Variations: R*-tree, Hilbert.
Spatial Information Systems (SIS) COMP Raster-based structures (2) Data conversion.
Spatial Indexing SAMs.
Spatial Information Systems (SIS) COMP Spatial access methods: Indexing.
Spatial Information Systems (SIS) COMP Raster-based structures (1)
Spatial Indexing I Point Access Methods. Spatial Indexing Point Access Methods (PAMs) vs Spatial Access Methods (SAMs) PAM: index only point data Hierarchical.
Spatial Indexing I Point Access Methods.
Spatial Queries Nearest Neighbor Queries.
R-tree Analysis. R-trees - performance analysis How many disk (=node) accesses we’ll need for range nn spatial joins why does it matter?
Structures and Access Methods
R-Trees 2-dimensional indexing structure. R-trees 2-dimensional version of the B-tree: B-tree of maximum degree 8; degree between 3 and 8 Internal nodes.
Spatial Indexing I Point Access Methods. Spatial Indexing Point Access Methods (PAMs) vs Spatial Access Methods (SAMs) PAM: index only point data Hierarchical.
Spatial Indexing I Point Access Methods. Spatial Indexing Point Access Methods (PAMs) vs Spatial Access Methods (SAMs) PAM: index only point data Hierarchical.
Multimedia Databases Chapter 4.
R-Trees Extension of B+-trees.  Collection of d-dimensional rectangles.  A point in d-dimensions is a trivial rectangle.
Trees for spatial data representation and searching
Spatial Data Management Chapter 28. Types of Spatial Data Point Data –Points in a multidimensional space E.g., Raster data such as satellite imagery,
1 SD-Rtree: A Scalable Distributed Rtree Witold Litwin & Cédric du Mouza & Philippe Rigaux.
The X-Tree An Index Structure for High Dimensional Data Stefan Berchtold, Daniel A Keim, Hans Peter Kriegel Institute of Computer Science Munich, Germany.
Multidimensional Indexes Applications: geographical databases, data cubes. Types of queries: –partial match (give only a subset of the dimensions) –range.
R-Tree. 2 Spatial Database (Ia) Consider: Given a city map, ‘index’ all university buildings in an efficient structure for quick topological search.
PR Quadtree Geographical Data Structure. Background The structure of a BST is determined by the order of the data Depending on the order we can get either.
Guofeng Cao CyberInfrastructure and Geospatial Information Laboratory Department of Geography National Center for Supercomputing Applications (NCSA) University.
Nearest Neighbor Queries Chris Buzzerd, Dave Boerner, and Kevin Stewart.
Bin Yao (Slides made available by Feifei Li) R-tree: Indexing Structure for Data in Multi- dimensional Space.
Spatial Database 2/5/2011 Reference – Ramakrishna Gerhke and Silbershatz.
Spatial and Geographic Databases. Spatial databases store information related to spatial locations, and support efficient storage, indexing and querying.
Performance Comparison of xBR-trees and R*-trees for Single Dataset Spatial Queries Performance Comparison of xBR-trees and R*-trees for Single Dataset.
Spatial Indexing Techniques Introduction to Spatial Computing CSE 5ISC Some slides adapted from Spatial Databases: A Tour by Shashi Shekhar Prentice Hall.
B+ tree & B tree Extracted from Garcia Molina
Maths & Technologies for Games Spatial Partitioning 2
Spatial Databases - Indexing
R-trees: An Average Case Analysis. R-trees - performance analysis How many disk (=node) accesses we ’ ll need for range nn spatial joins why does it matter?
File Processing : Multi-dimensional Index 2015, Spring Pusan National University Ki-Joune Li.
STR: A Simple and Efficient Algorithm for R-Tree Packing.
R* Tree By Rohan Sadale Akshay Kulkarni.  Motivation  Optimization criteria for R* Tree  High level Algorithm  Example  Performance Agenda.
1 Overview (Part 1) Background notions A reference framework for multiresolution meshes Classification of multiresolution meshes An introduction to LOD.
Jeremy Iverson & Zhang Yun 1.  Chapter 6 Key Concepts ◦ Structures and access methods ◦ R-Tree  R*-Tree  Mobile Object Indexing  Questions 2.
Multidimensional Access Structures COMP3017 Advanced Databases Dr Nicholas Gibbins –
Database Applications (15-415) DBMS Internals- Part III Lecture 13, March 06, 2016 Mohammad Hammoud.
Spatial Data Management
Multidimensional Access Structures
COMP 9517 Computer Vision Segmentation 7/2/2018 COMP 9517 S2, 2017.
Spatial Indexing I Point Access Methods.
The Quad tree The index is represented as a quaternary tree
Spatial Indexing I Point Access Methods
Database Applications (15-415) DBMS Internals- Part III Lecture 15, March 11, 2018 Mohammad Hammoud.
Quadtrees 1.
File Processing : Multi-dimensional Index
Multidimensional Search Structures
Presentation transcript:

Spatial Information Systems (SIS) COMP Spatial access methods: Indexing (part 2)

Quadtree-based indexes Adaptation of original quadtree structure defined for imagesAdaptation of original quadtree structure defined for images Represented by a quaternary treeRepresented by a quaternary tree Different types of quadtree-based indexes:Different types of quadtree-based indexes: For 2D polygonal data: based on MBRsFor 2D polygonal data: based on MBRs For straight-line data and 1D map data (PM- quadtrees and PMR-quadtrees)For straight-line data and 1D map data (PM- quadtrees and PMR-quadtrees) For point dataFor point data

Quadtree-based indexes (cont.d) Space-based hierarchical structuresSpace-based hierarchical structures Based on a recursive subdivision of the space into 4 quadrantsBased on a recursive subdivision of the space into 4 quadrants The subdivision can be into either equal sized or unequal sized quadtrantsThe subdivision can be into either equal sized or unequal sized quadtrants

Quadtrees for polygonal data Used to index the MBRs of objects and not the actual geometries (like R-trees)Used to index the MBRs of objects and not the actual geometries (like R-trees) The space is recursively subdivided until the number of rectangles overlapping each quadrant is less than the disk page capacityThe space is recursively subdivided until the number of rectangles overlapping each quadrant is less than the disk page capacity Each leaf is associated with a disk page that stores the entriesEach leaf is associated with a disk page that stores the entries A rectangle appears in all leaf quadrants that it overlaps (difference wrt R-trees)A rectangle appears in all leaf quadrants that it overlaps (difference wrt R-trees)

Example Quadree with disk page capacity of 4 entries A B C D E F G I J H K L [A,B,F][B,C,F][F,G] [F] [D,E,J][G,H,I,L] Pointers to object geometries [H,J,K]

Example: point query Follow a single path from root to leaf Follow a single path from root to leaf At each level choose among the four quadrants the one containing the point At each level choose among the four quadrants the one containing the point Once the MBR containing P is found, check for inclusion in actual geometry Once the MBR containing P is found, check for inclusion in actual geometry A B C D E F G I J H K L [A,B,F][B,C,F][F,G] [F] [D,E,J][G,H,I,L][H,J,K] P

Linear data: PM-quadtrees Vertex-based structures that recursively decompose the space such that at most one vertex lies in a quadtree leaf node Such a decomposition results in splitting lines into segments called q-edges A node in a PM-quadtree contains the following information: - Pointers to the 4 subquadrants of the node (NW, NE, SW, SE) - List of q-edges crossing the region of space corresponding to the node - Pointers to the lines that each q-edge is part of

PM-quadtrees (cont.d) Several different variation of PM-quadtrees Examples: 1.PM 1 -quadtree imposes the following restrictions: - If a leaf node contains a vertex, all segments contained in the node must be incident on that vertex - If a leaf node does not contain a vertex, it cannot contain more than one segment 2.PM 2 -quadtree relaxes the second condition 3.PM 3 -quadtree: no restriction

Examples: PM 1 -quadtree

Examples: PM 2 -quadtree A leaf node that does not contain a vertex can contain more than one edge

Examples: PM 3 -quadtree Leaf nodes containing one vertex can contain edges that are not incident at that vertex

Point data Two main indexing methods: -Fixed Grid (and Grid file) -Quadtree Space is subdivided into equal sized or unequal sized cells each corresponding to a disk page

Example: fixed grid disk page capacity = 3 entries

Grid file Improvement of the grid structure Cells of different size to avoid too many empty cells Depends on the order in which the points are inserted

Example: quadtree disk page capacity = 3 entries

Point quadtree The final structure depends on the order in which the points are inserted

Point quadtree (cont.d) Same dataset but points inserted in a different order

Summary Space-driven vs. Data-driven indexing Based on partitioning of the embedding 2D space into rectangular cells, independently of the object distribution. Objects are mapped to cells according to some pre-defined criterion. Example: Quadtrees Based on subdivision of the set of objects and not the embedding space. The subdivision adapts to the object distribution in the space. Example: R-trees