|
|
|
System Architecture
|
Spatial Data Type
The spatial data type allows the database to recognize points, lines and polygons
as spatial objects inside of the database. The database natively has the ability to
recognize data types such as floats, integers and chars. A new type must be added in
order for the database to comprehend spatial objects. The Open GIS Consortium (OGC)
has defined a structure for a spatial data type. This type has been defined as an
ST_Spatial type. The ST_Spatial type is comprised of point, line and area types that can
be combined to represent virtually any spatial object.
Spatial Indexing
The second component of the spatial database is the spatial index. Virtually all
databases include indexing schemes to enable quick lookup and retrieval of the data.
These schemes are designed to work with the native data types. The nature of spatial
information is quite different from traditional non-spatial data. In an effort to enable
users to quickly retrieve spatial data from their database most vendors add a spatial index.
There are several different indexing schemes that are well suited for spatial data.
Recently there has been a move from B-trees or quad trees to R-trees as the preferred
indexing mechanism of spatial database and tools vendors. The primary difference
between these indexing schemes is the way that the data is partitioned. The diagram
below helps to illustrate these various indexing schemes.

|
|
|
|