Spatial Databases Reading: None. Dept. of Computing Science, University of Aberdeen2 In this lecture you will learn the need for spatial databases some.

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

SQL -I Reading: C&B, Chaps 6, 7, 8 & 9. Dept. of Computing Science, University of Aberdeen2 In this lecture you will learn The basic concepts and principles.
Dept. of Computing Science, University of Aberdeen1 Writing SELECT SQL Queries Nigel Beacham based on materials.
Logical Database Design Reading: C&B, Chap 17. Dept. of Computer Science, University of Aberdeen2 In this lecture you will learn What is logical database.
Access Control & Views Reading: C&B, Chap 7. Dept of Computing Science, University of Aberdeen2 In this lecture you will learn the principles of object.
Database Design: ER Modelling
Query Processing Reading: CB, Chaps 5 & 23. Dept of Computing Science, University of Aberdeen2 In this lecture you will learn the basic concepts of Query.
File Organization & Indexing Reading: C&B, Ch 18 & 23.
The Role of Error Map and attribute data errors are the data producer's responsibility, GIS user must understand error. Accuracy and precision of map and.
Spatial Database Systems. Spatial Database Applications GIS applications (maps): Urban planning, route optimization, fire or pollution monitoring, utility.
Programming Paradigms and languages
Spatial Database Systems Tyler Reainthong CSE 7330 Fall 2009.
Center for Modeling & Simulation.  A Map is the most effective shorthand to show locations of objects with attributes, which can be physical or cultural.
WFM 6202: Remote Sensing and GIS in Water Management © Dr. Akm Saiful IslamDr. Akm Saiful Islam WFM 6202: Remote Sensing and GIS in Water Management Akm.
GIS for Environmental Science
1 Enviromatics Spatial database systems Spatial database systems Вонр. проф. д-р Александар Маркоски Технички факултет – Битола 2008 год.
Introduction to Spatial Database System Presented by Xiaozhi Yu.
Raster Based GIS Analysis
GI Systems and Science January 30, Points to Cover  Recap of what we covered so far  A concept of database Database Management System (DBMS) 
Query Processing in Databases Dr. M. Gavrilova.  Introduction  I/O algorithms for large databases  Complex geometric operations in graphical querying.
Spatial Database Systems
Spatial Information Systems (SIS) COMP Spatial queries and operations.
Spatial Information Systems (SIS) COMP Spatial access methods: Indexing.
GTECH 201 Lecture 05 Storing Spatial Data. Leftovers from Last Session From data models to data structures Chrisman’s spheres ANSI Sparc The role of GIScience.
GIS 200 Introduction to GIS Buildings. Poly Streams, Line Wells, Point Roads, Line Zoning,Poly MAP SHEETS.
Geographic Information Systems
PROCESS IN DATA SYSTEMS PLANNING DATA INPUT DATA STORAGE DATA ANALYSIS DATA OUTPUT ACTIVITIES USER NEEDS.
GTECH 361 Lecture 02 Introduction to ArcGIS. Today’s Objectives explore a map and get information about map features preview geographic data and metadata.
19 th Advanced Summer School in Regional Science An introduction to GIS using ArcGIS.
Spatial Database Systems. Spatial Database Applications GIS applications (maps): Urban planning, route optimization, fire or pollution monitoring, utility.
Dr. David Liu Objectives  Understand what a GIS is  Understand how a GIS functions  Spatial data representation  GIS application.
Prepared by Abzamiyeva Laura Candidate of the department of KKGU named after Al-Farabi Kizilorda, Kazakstan 2012.
GIS Lecture 1 Introduction to GIS Buildings. Poly Streams, Line Wells, Point Roads, Line Zoning,Poly MAP SHEETS.
Spatial data models (types)
Spatial Data and GIS.
Lecture 4 Data. Why GIS? Ask questions Solve a problem Support a decision Make Maps Involve others, share data, procedures, ideas.
Spatial Data Models. What is a Data Model? What is a model? (Dictionary meaning) A set of plans (blueprint drawing) for a building A miniature representation.
Preparing Data for Analysis and Analyzing Spatial Data/ Geoprocessing Class 11 GISG 110.
Spatial Database Souhad Daraghma.
GIS in Real Estate Phil Hurvitz CAUP-Urban Form Lab April 13, 2005.
–combines elements of computer science –database design –software design geography –map projections –geographic reasoning mathematics –mathematical topology.
Geographic Information System GIS This project is implemented through the CENTRAL EUROPE Programme co-financed by the ERDF GIS Geographic Inf o rmation.
Applied Cartography and Introduction to GIS GEOG 2017 EL Lecture-2 Chapters 3 and 4.
8. Geographic Data Modeling. Outline Definitions Data models / modeling GIS data models – Topology.
Raster Concepts.
R-Tree. 2 Spatial Database (Ia) Consider: Given a city map, ‘index’ all university buildings in an efficient structure for quick topological search.
Joseph Jaquish 1/10. - Spatial Data Types - Spatial Database Architectures - Geographic Information Systems 2/10.
Visual Computing Geometric Modelling 1 INFO410 & INFO350 S2 2015
Spatial Query Processing Spatial DBs do not have a set of operators that are considered to be basic elements in a query evaluation. Spatial DBs handle.
Object Oriented Database By Ashish Kaul References from Professor Lee’s presentations and the Web.
A Quick Introduction to GIS
INTRODUCTION TO GIS  Used to describe computer facilities which are used to handle data referenced to the spatial domain.  Has the ability to inter-
Lecture 10 Creating and Maintaining Geographic Databases Longley et al., Ch. 10, through section 10.4.
What is GIS? “A powerful set of tools for collecting, storing, retrieving, transforming and displaying spatial data”
Spatial Data Models Geography is concerned with many aspects of our environment. From a GIS perspective, we can identify two aspects which are of particular.
Intro. To GIS Pre-Lab Spatial Analysis April 1 st, 2013.
CENTENNIAL COLLEGE SCHOOL OF ENGINEERING & APPLIED SCIENCE VS 361 Introduction to GIS SPATIAL OPERATIONS COURSE NOTES 1.
OODBMS and ORDBMS. Background Object-oriented software, based on the principles of user-defined datatypes, along with inheritance and polymorphism, is.
Czech Technical University in Prague Faculty of Transportation Sciences Department of Transport Telematics Pavel Hrubeš Geographical Information Systems.
Geographical Information Systems
INTRODUCTION TO GEOGRAPHICAL INFORMATION SYSTEM
Spatial Database Systems
Geographical Information Systems
Introduction to Graphics Modeling
Query Processing in Databases Dr. M. Gavrilova
Relational Algebra Chapter 4, Part A
Sameh Shohdy, Yu Su, and Gagan Agrawal
Relational Algebra 461 The slides for this text are organized into chapters. This lecture covers relational algebra, from Chapter 4. The relational calculus.
Spatial Database Systems
Relational Algebra Chapter 4, Sections 4.1 – 4.2
Presentation transcript:

Spatial Databases Reading: None

Dept. of Computing Science, University of Aberdeen2 In this lecture you will learn the need for spatial databases some of the special issues regarding spatial data some of the issues concerning spatial database query languages some of the techniques used in spatial databases

Dept. of Computing Science, University of Aberdeen3 Applications of Spatial Databases Spatial databases are used to store & manipulate data concerning: –Geography (2D) - maps, socio-economic, military –Engineering (2D/3D) - architectural drawings, CAD –Geophysics (3D) - geological strata, oil fields, mining Here, we will focus on Geographic Information Systems (GIS). These usually: –combine 2D spatial & textual data –have a graphical front-end –have an extended query language

Dept. of Computing Science, University of Aberdeen4 Special Issues With Spatial Databases Spatial objects: –have geometric shape, size, location (i.e. coordinate) –might change with time - e.g. land-use, urban areas Issues: –Representation - how to represent e.g. a lake or a hill? –Query Languages - how to specify spatial queries? e.g. find all lakes near mountains (a spatial join) –Indexing - how to accelerate spatial access methods –Data Collection - digitise satellite images, paper maps

Dept. of Computing Science, University of Aberdeen5 Conceptual Modelling for Spatial Databases Conceptual modelling for spatial databases is similar to E-R modelling: But there are some important differences: CountryLake Has * RelationalSpatial Simple data typesGeometric objects - lines, polygons EntitiesThemes - lakes, rivers, countries, cities Results TablesMaps - e.g. map of Scottish lakes (!)

Dept. of Computing Science, University of Aberdeen6 Logical Modelling - Using Relational Model namecapitalpopulationboundaryId GermanyBerlin80B1 FranceParis60B2 ………… boundaryIdcontourId B1C1 B2C2 B2C3 …… contourIdpoint_numpointId C12P1 C11P2 C13P3 ……… pointIdxy P P P ……… CountryBoundary Point Contour

Dept. of Computing Science, University of Aberdeen7 Query - Example Return the contours of France An SQL Query: Select Boundary.id-controur,x,y From Country,Boundary,Contour,Point Where name = France And Country.id-boundary=Boundary.id-boundary And Boundary.id-contour=Contour.id-contour And Contour.id-point=Point.id-point Order by Boundary.id-contour,point-num; Several problems as seen next

Dept. of Computing Science, University of Aberdeen8 Problems with using RDBMS for Spatial Data Formulating queries requires knowledge of the spatial objects structure –New queries with change in structure Bad performance –More space used and more cost in computing joins User unfriendly –Manipulating points is not easy Difficulty n defining new spatial types Impossible to express geometric computations –Adjacency test, point query or window query

Dept. of Computing Science, University of Aberdeen9 Abstract Data Types for Spatial Data Clearly, we need some Abstract Data Types (ADTs) and associated method functions for spatial data, e.g.: –Point - Coordinates –Line - Coordinates, Length –Polygon - Coordinates, Perimeter, Area Higher-order ADTs can be built from these basic types, e.g.: –Arc - a connected line list (start/end pts special) –Region - a set of non-overlapping polygons

Dept. of Computing Science, University of Aberdeen10 Geometric Method Functions Most GISs provide high-level method functions for geometric objects, e.g.: –Boolean Inside(Point, Polygon) –Boolean Crosses(Line, Polygon) –Boolean Overlaps(Region, Region) –Region Union(Region, Region) –Region Intersect(Region, Region) –Region Clip(Region, Polygon) We will not be concerned with how these are implemented!

Dept. of Computing Science, University of Aberdeen11 Types of Spatial Query What kinds of spatial query should spatial databases support ? Here are a few: Point - select all objects whose geometry contains a given point Window - select all objects within a given rectangle Join - select all pairs of objects that satisfy a given relationship - overlap, containment, adjacency...

Dept. of Computing Science, University of Aberdeen12 Desirable Features for GIS Query Languages What features should a spatial database query language have ? –Extensible - build complex objects from simpler ADTs –Programmable - supports user-defined functions –Reusable Methods - Weak typing (ADO) or object inheritance (Java) –Easy to learn - ? –Looks like SQL - ?? Which of the above do SQL satisfy ?

Dept. of Computing Science, University of Aberdeen13 Existing Spatial Query Languages Different groups have attempted to extend SQL to handle geometric objects: –OQL - Object Query Language (Object Database Management Group) –SDO - Spatial Database Option (Oracle Corp.) –PostgreSQL - open source Example: find all lakes (!) in Scotland (in the style of OQL): SELECT * FROM L in Lakes WHERE EXISTS (intersect(L.region, (SELECT C.polygon FROM C in Countries WHERE C.name = 'Scotland')));

Dept. of Computing Science, University of Aberdeen14 An Idealised Query Language Lets invent a new query language (based on functional programming): map = null; b = border(Countries, "Scotland"); for each l in Lakes() { s = intersect(l, b); if (exists(s)) { map = union(map, s); } Which do you prefer - SQL or functional programming? Real functional query languages exist, but mostly as research tools...

Dept. of Computing Science, University of Aberdeen15 Spatial Indexes Spatial DBs use a variety of techniques to accelerate spatial queries: –Bounding Boxes - simplify geometry tests: e.g. overlap –Grid Indexes - partition space –R-Trees - partition objects (R-Trees are like B-Tree with rectangular objects) Ideally, objects close together in space should be: –Close together in index; preferably on same index page Fundamental idea for indexing is to use approximations

Dept. of Computing Science, University of Aberdeen16 Bounding Box Spatial Indexes Rectangular boxes allow fast geometric filters to be applied - e.g. overlap Then, evaluate objects that pass filter using actual geometries However, every query requires a scan of the entire bounding box index

Dept. of Computing Science, University of Aberdeen17 Grid Indexes - Partitioning Space Divide space into a grid (the index): Simple, fast - provided grid fits into memory Works well if objects fit into grid cells...

Dept. of Computing Science, University of Aberdeen18 Summary Spatial DBs are useful for a wide range of applications... Special issues: –I/O - data collection (input) graphical displays (output) –need for abstract geometric data types and functions –need for special indexing techniques (R-trees) should existing SQL systems be adapted for geometric objects ? Overall: –spatial DBs aren't (shouldn't be) so different from conventional DBs