Spatial Database Systems Tyler Reainthong CSE 7330 Fall 2009
Topics Definitions Storage and Indexing Spatial Relationships Spatial Queries Standards Systems Applications and the Future
What is a Spatial Database? Database that models space, objects in space, or a combination of both Provide capabilities to store and manipulate spatial data as well as find various interactions between them
What is a Spatial Database? (cont) Uses spatial data types (SDTs) and spatial indexes Uses spatial queries which are able to work with the spatial data types Usually provides these capabilities as an extension to a standard RDBMS
What is Spatial Data? Each vendor’s implementation will consist of different spatial data types Each type can be abstracted to basic geometric primitives which consist of: –Points –Lines –Polygons/Regions
What is Spatial Data? (cont) Point –Can define locations of interest –Used when you do not care about the extent of the object –Can be used to define “space” Land Map boundaries Grids
What is Spatial Data? (cont) Line –Can be straight, arcing or a combination of both –Can be used to define movement and connections between spatial objects
What is Spatial Data? (cont) Polygon/Region –Basic shapes (box, square, triangle, etc.) –May have holes
Spatial Data Types (SDTs) Spatial Data Types often referred to as “geometries” can either be defined as one or more spatial data primitive types Example Oracle Spatial SDO_GTYPE: Source:
Spatial Storage Creating a normal table with an additional spatial column in Oracle Spatial Source:
Spatial Indexing R-Trees –Similar to B-trees but allow indexing for multidimensional data –Creates minimum bounding boxes that essentially partition the spatial data into hierarchical rectangular shaped boxes –These boxes provide rough approximations of the geometries which optimizes query performance
Spatial Indexing (cont) Example R-Tree Source:
Spatial Indexing (cont) Quad-Trees –Recursively divide space into four quadrants Source:
Spatial Relationships Spatial relationships can be categorized into three different types –Topological relationships Contains, Inside, Covers, Adjacent, Touch, Disjoint –Directional relationships Above, Below, West of, East of –Metric relationships Distances between two geometries Each vendor may or may not implement certain relationships as a function
Spatial Relationships (cont) Oracle Spatial supports the following relationships Source: %20Topobase%202010%20User%20Documentation/images/IS D/Everest-ALL/English/pic_admin_oracle_spatial.png %20Topobase%202010%20User%20Documentation/images/IS D/Everest-ALL/English/pic_admin_oracle_spatial.png
Spatial Queries SQL can work with spatial data types Spatial operators and functions can also be used with SQL
Spatial Queries (cont) Spatial Query Examples in PostGIS Source:
Spatial Queries (cont) Spatial Query Examples in PostGIS Source:
Standards and Specifications Standards and specifications governed by the Open Geospatial Consortium (OGC) – Defines standard Geographic Information Systems (GIS) object types, functions associated with them, and metadata tables –Simple Feature Access Architecture
Some Spatial DBMS Systems Oracle Spatial PostgreSQL with PostGIS extension MySQL Microsoft SQL Server 2008 IBM DB2 with Spatial Extender
Applications and the Future GIS/Mapping CAD and GIS integration Location based services Spatial data is becoming ubiquitous –Environmental –Health sectors –Agricultural –Geological –Hazard management –Military and intelligence
Bibliography 78&CFTOKEN= http://portal.acm.org/ft_gateway.cfm?id=615206&type=pdf&coll=Portal&dl=GUIDE&CFID= &CFTOKEN= htmhttp://publib.boulder.ibm.com/infocenter/idshelp/v10/index.jsp?topic=/com.ibm.rtree.doc/rtree2 9.htm ocumentation/index.html?url=WS73099cc142f48755b0eae110a8ea4f1d98a3.htm,topicNumber=d0 e17737http://docs.autodesk.com/TOPOBSCLNT/2010/ENU/Autodesk%20Topobase%202010%20User%20D ocumentation/index.html?url=WS73099cc142f48755b0eae110a8ea4f1d98a3.htm,topicNumber=d0 e