Chapter 6. GIS in the Database

This chapter examines the various open source options for storing geo-spatial data in a database. More specifically, we will cover:

  • The concept of a spatially-enabled database
  • Spatial indexes and how they work
  • A summary of the major open source spatial databases
  • Recommended best practices for storing spatial data in a database
  • How to work with geo-spatial databases using Python

This chapter is intended to be an introduction to using databases in a geo-spatial application; Chapter 7 will build on this to perform powerful spatial queries not possible using Shapefiles and other geo-spatial datafiles.

Spatially-enabled databases

In a sense, almost any database can be used to store geo-spatial data—simply convert a geometry to WKT format and store the results in a text column. But, while this would allow you to store geo-spatial data in a database, it wouldn't let you query it in any useful way. All you could do is retrieve the raw WKT text and convert it back to a geometry object one record at a time.

A spatially-enabled database, on the other hand, is aware of the notion of space, and allows you to work with spatial objects and concepts directly. In particular, a spatially-enabled database allows you to:

  • Store spatial data types (points, lines, polygons, and so on) directly in the database, in the form of a geometry column.
  • Perform spatial queries on your data. For example: select all landmarks within 10 km of the city named "San Francisco".
  • Perform spatial joins on your data. For example: select all cities and their associated countries by joining cities and countries on (city inside country).
  • Create new spatial objects using various spatial functions. For example: set "danger_zone" to the intersection of the "flooded_area" and "urban_area" polygons.

As you can imagine, a spatially-enabled database is an extremely powerful tool for working with your geo-spatial data. By using spatial indexes and other optimizations, spatial databases can quickly perform these types of operations, and can scale to support vast amounts of data simply not feasible using other data-storage schemes.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.191.168.203