A Recent technology direction: Storing new data types in an RDBMS
Benefits of RDBMS Technology
Large long-term investments have been made in recent years by many software
and hardware companies in relational technology research and development. As
a consequence, RDBMS technology is quite mature, providing a highly optimized
environment for the storage, retrieval, and manipulation of large databases. The
relational model is a simple model, wherein an entity and associated attributes
are modeled through the use of multiple tables with common keys. Queries are
typically constructed using SQL statements, and searches are conducted by
using data in specified columns to find target entities and additional data.
Other benefits of using commercial RDBMS technology in the storage, retrieval,
and manipulation of spatial data include scalability across multiple CPUS;
support for distributed queries across multiple processors; connectivity across
multiple operating system and hardware platforms; distributed, yet user
transparent, databases; support for row-level locking; and deadlock detection
and facilities for flexible and comprehensive data backup and recovery.
Commercial RDBMS technology integrates a spatial database environment with
transaction processing capabilities, forms and report writing tools, and other
RDBMSS.
Combining many RDBMS technology benefits with the ability to store spatial data
in a relational database also eliminates a number of long-term problems that
have typically plagued AM/FM/GIS vendors. Spatial and aspatial data can now
be made readily accessible to an enterprise using a single data storage
technology. Large numbers of concurrent spatial database users, as well as
multiple levels of access and security, can now be supported. Cumbersome tiling
schemes that create inherent data integration, boundary, complex topology, and
usage problems are eliminated. Entities with spatial attributes can be stored
following established relational database optimization schemes, such as
clustering, without complete focus on location-based optimization schemes.
Compatibility with the Existing RDBMS
Systems that are implemented using an extended relational database and a
commercial RDBMS are fully capable of providing integrated and rapid retrieval
of entities with aspatial and spatial attributes. No distinctions or performance
compromises are made between a relation operated on by an extended
relational database and another operated on by the underlying RDBMS. Spatial
information systems employing an extended relational database can access
traditional corporate databases, while data created or modified using the
extended relational technology can be used in other systems. Solutions retain
capabilities offered as part of a standard RDBMS product line, such as forms
and report writing tools, data entry and query, security mechanisms, and
transaction journaling.
The Extended Relational Model
Progressive spatially extended relational software packages are obviously based
upon an extended relational data model. Functionality of the commercial RDBMS
is extended by providing the ability to store and manipulate spatial data and the
ability to maintain multiple versions of information. Specific extensions to the
relational model include spatial data primitives to record spatial information in
relational database tables, spatial data qualifiers for query and access, and
spatial data integrity constraints.
Spatial Data Primitives
Standard commercial RDBMS technology provides support for various data
types, such as numerics, character strings, and datetimes. Extended relational
databases add a number of spatial or geometric data types treating the
geometric description of an entity as a spatial attribute of the entity. Spatial data
primitives enable spatial attributes of an object, such as location, extent,
and topological relationships, to be recorded. In addition, existing RDBMS-provided
data types or primitives are used to store aspatial data.
A spatial attribute can be declared as a geometric data type chosen from a
number of forms. In addition, advanced extended relational databases
incorporate a spatial data library providing geometric as well as topologic
representation of entities. Spatial data primitive types include point, rectangle,
line segment, circular arc, line string, link, directed link, chain, complete chain,
area chain, network chain, ring, polygon, unitary complex polygon, general
polygon, and Binary Large Object (BLOB).
Spatial entities may be held directly in the database as sets of coordinates in
direct representations. In other cases, geometric description of an entity maybe
assembled from a set of components as a linked representation. For example, a
parcel boundary along a street may be appropriately stored as a boundary
segment that is shared by the parcel and the edge of pavement. Describing an
entity by its topology is advantageous when a change to a common segment,
such as the parcel boundary and the edge of pavement, must be reflected in
both entities.
Spatial Data Qualifiers
RDBMS data maybe created, retrieved, and updated using SQL statements,
such as Insert, Select, Update, and Delete. Aspatial constraints are applied in
SQL statements to specify a row or rows in which to operate. Normal relational
operators, such as Less Than, Greater Than, and Equals, may be combined
with spatial and topological qualifiers. In addition, SQL with spatial extensions
(i.e., spatial and topological qualifiers) is typically implemented to take advantage
of spatial indexes that provide high-performance access to spatial data.