datasheet ORACLE SPATIAL OPTION 
Location-Based Services for Oracle9i

Oracle Spatial serves as a foundation for deploying enterprise-wide spatial information systems and web-based and wireless location-based applications. It provides data management for location information such as road networks, wireless service boundaries, and geocoded customer addresses that are driving innovative product development in the emerging online, wireless and in-vehicle telematics markets. These location-based services in Oracle9i extend existing Oracle-based applications by allowing users to easily incorporate location information directly in their applications and services.


Oracle Spatial serves as a foundation for deploying enterprise-wide spatial information systems and either web-based or wireless location-based applications. It provides data management for location information such as road networks, wireless service boundaries, and geocoded customer addresses that are driving innovative product development in the emerging telematics, mobile and in-vehicle telematics markets. These location-based services capabilities in Oracle9i extend existing Oracle-based applications by allowing users to easily incorporate location information directly in their applications and services. This is possible because location data is fully integrated in the Oracle server itself. Geographic and location data are manipulated using the same semantics applied to the CHAR, DATE or INTEGER types that are familiar to all users of SQL. Specific features delivered by Oracle9i and Oracle Spatial include: 

  • open, standard SQL access to all functions and operations
  • spatial object type storage accommodating geometry-type and linear referencing 
  • spatial operations and functions including layer constraints and aggregates (e.g. unions and user defined aggregates)
  • fast R-tree and quadtree indexing
  • comprehensive storage, management and use of geodetic data
  • partitioning support for spatial indexes
  • powerful linear referencing system
  • tools supporting seamless integration of heterogeneous data (fusion) including projection management and coordinate transformation 
  • integration with Oracle9i Application Server Wireless Edition
Oracle9i enables e-business applications, portals and wireless service providers to easily integrate location data into their corporate information systems. This means that e-business applications like call centers, marketing and sales applications can readily incorporate mapping and spatial analysis.  In addition, a new class of location applications is emerging to take advantage of these capabilities. These applications include concierge services (e.g. location queries on geocoded yellow page databases that provide information on the location of service outlets, hotels, restaurants etc.); emergency services (E911, 511); and a range of other consumer oriented location-enhanced services which are both wire-based and wireless.

Spatial Geometry, Layers
Oracle9i supports three basic geometric forms that represent geographic and location data:

  • Points and point clusters: Points can represent locations such as buildings, fire hydrants, utility poles, oil rigs, boxcars, or roaming vehicles.
  • Lines and line strings: Lines can represent things like roads, railroad lines, utility lines, or fault lines.
  • Polygons and complex polygons with holes: Polygons can represent things like outlines of cities, districts, flood plains, or oil and gas fields. A polygon with a hole might geographically represent a parcel of land surrounding a patch of wetlands.
Internally, location data is modeled in layers, located in a common database or a single table, sharing a common coordinate system. For example, the representation of a city might include separate layers for outlines of political districts or socioeconomic neighborhoods, every business and domestic location, and the maze of water, gas, sewer, and electrical lines. Because all these layers share a common database and notion of the earth�s geometry (coordinate, geoid and projection), they can be related through their respective (common) locations. 

In addition to the geometric elements noted above, Oracle9i supports the following geometry types:

  • Arc strings
  • Compound polygons
  • Circles
Spatial Indexing: R-trees and Quadtrees 
Oracle9i applies spatial indexes to any data in relational databases.  Oracle Spatial includes R-tree indexing, in addition to quadtree indexing capability. R-tree indexes can be used in place of quadtree indexes, or in conjunction with them. In addition, R-tree indexing can be used for any 3D and 4D indexing of data � critical to solving problems in oil exploration, architecture, engineering, and many other scientific applications.

Typical queries specify a window of interest and retrieve all data intersecting or contained in the specified query window. 

An R-tree index approximates each geometry with the smallest single rectangle that encloses the geometry (called the minimum bounding rectangle, or MBR).

For a layer of geometries, an R-tree index consists of a hierarchical index on the minimum bounding rectangles of the geometries in the layer. Because R-tree indexes are fast and work directly on geodetic data they are the preferred indexing mechanism for working with spatial data.  Geodetic data is data consisting of coordinates that are defined relative to a particular representation of the figure of Earth, or datum.
 


 

With quadtree indexing, a mosaic of covering tiles for the geometrically represented data is created for each layer. A binary representation of the tile is then stored in the spatial index. The covering tiles can be quickly examined for any interaction between the layers. As location data is added to a database, a spatial quadtree index subdivides (or "tessellates") the tiles, preserving the spatial organization of the data. Database designers can specify the number of times a geometry should be subdivided to optimize the coverage with smaller and smaller uniformly sized tiles. 

Database designers may choose whether to use R-tree or quadtree indexing. Each index type is appropriate in different situations, although R-tree indexing will often be the best choice because of its capacity to operate directly against geodetic data.  Quadtrees are preferable in one scenario:  when data sets will be updated frequently.

Considerations in selecting which index to use include 

  • Geodetic or non-geodetic
  • The type and range of queries submitted to the database
  • Frequency of updates and the need for re-indexing 
  • Available disk storage space
  • Amount of updates
  • Number of dimensions in the spatial data
The spatial index uses the Oracle9i extensible indexing mechanism, providing maintenance of the index on insert, update, and delete. This results in increased ease of use.

Spatial Operators
The interaction of various geometric features can be determined through the use of comparison operators, such as contains, covers, and anyinteract (any interaction) and others. This permits answers to such requests as "list all the school zones crossed by this railroad line," or "find all pizza parlors within this area of interest."

Fast Access With Two-Tiered Queries 
Until now, database performance has largely been a factor of database size and index efficiency. But with Oracle9i and Oracle9i Spatial, performance is a function of the amount of data actually retrieved. Performance is optimized through the use of a spatial index and a two-tiered query model. This model significantly reduces load and query processing overhead and provides excellent scalability as the spatial data volume grows. The first tier, or primary filter, permits fast selection of a small number of candidate records to pass along to the secondary filter. The primary filter uses approximation to reduce computational complexity.

The secondary filter applies exact computational geometry to the result set of the primary filter. These exact computations yield the final answer to a query. The secondary filter operations are more computationally intense, but they are only applied to the relatively small result set from the primary filter.

Queries can be spatially constrained, as defined by an "area of interest" chosen by the user. Eliminating data outside the area of interest from consideration during queries ensures optimum performance levels. 

Location queries, using standard SQL, can be made in a number of ways. For example, two-dimensional window extracts are possible as range searches, proximity searches, and polygon searches.

Projections and Coordinate Systems 
Oracle Spatial supports over 950 commonly used mapping coordinate systems and also will support user-defined coordinate systems. This enables spatial functions, operators, and utilities to provide correct results regardless of coordinate system, relating to earth surface measurements. It enables explicit map projection transformations of vector objects from one coordinate system to another. These transformations can be on a geometry-level basis or an entire layer (table) at a time. 

Linear Referencing Support 
Oracle Spatial now supports the storage of "measurement" information in association with linear geometry. This feature is key to supporting linear networking applications such as Internet street routing, transportation, utility, telecommunications networks and pipeline management. 

Geocoding Framework 
Geocoding is the process which associates geographic references, such as addresses, phone numbers, and postal codes, with location coordinates (e.g. latitude/longitude).  Oracle9i uses third party geocoding tools and services to match these records with a latitude/longitude point that is then stored in the database. This facilitates analysis based on the spatial relationships of the associated data, like the proximity of store locations to customers within a given distance and sales revenue per territory. 

Oracle works closely with partners to supply the framework for third-party geocoding services at the data server. Both Web-based and locally installed geocoding software packages can be tightly integrated with the database server as fundamental spatial data warehousing component-ware. The geocoding framework supports international addressing standards and place name features. It is extensible to support user-defined addressing, languages, and gazetteers. 

NEW LOCATION-BASED SERVICES FEATURES FOR ORACLE9i 
Oracle9i supports new location-based services features which extend the range and productivity of application developers, enabling a broader range of applications and improving performance.

Spatial Aggregates
SQL has long had aggregate functions, which are used to summarize the results of an SQL query. The following example uses the SUM aggregate function to aggregate employee salaries by department: 

SELECT SUM(salary), dept
   FROM employees
   GROUP BY dept;
Oracle9i adds aggregate functions which operate on the results of SQL queries involving geometry objects. Spatial aggregate functions return a geometry object of type SDO_GEOMETRY. For example, the following statement returns the minimum bounding rectangle of all the geometries in a table:
SELECT SDO_AGGR_MBR(c.shape)
  FROM cola_markets c;
The use of spatial aggregates improves performance and reduces the complexity of the underlying code base.

Function-Based Index Support 
A function-based spatial index facilitates location-based queries on relational attributes without explicitly storing location information as a column of type SDO_GEOMETRY. 

Users can create spatial indexes on spatial data stored in relational columns (for example in  columns of longitude and latitude). This spatial index will make it possible to invoke spatial operators on these relational columns without the need to create an SDO_GEOMETRY column. 

This is useful for business geographic applications which have a schema for storing location data but are not inclined to change their current schema to move  the spatial data to a column of type SDO_GEOMETRY. 

Geodetic Coordinate Support
Spatial functions, operators, and utilities provide correct results regardless of coordinate system, relating to earth surface measurements. These  functions fully support distance, area, and angular units.

Partitioning Support for Spatial Indexes 
Another new feature of Oracle9i is the ability to partition spatial indexes in association with partitioned tables.  Partitioned spatial indexes can provide the following benefits: 

  • reduced response times for long-running queries; partitioning reduces disk I/O operations 
  • reduced response times for concurrent queries; I/O operations run concurrently on each partition 
  • easier index maintenance, because of partition-level create and rebuild operations 
  • indexes on partitions can be rebuilt without affecting the queries on other partitions
  • storage parameters for each local index can be changed independent of other partitions.


Performance Enhancements 
Oracle9i provides significant improvements to spatial data storage and indexing performance over that of previous releases. R-tree indexes can now be created up to 20% faster than with the previous release.  Partitioning spatial data and using partitioned local indexes can provide additional performance gains for queries on large datasets, and concurrent queries and updates. Finally, spatial aggregate functions speed retrieval of large sets of SDO_GEOMETRY objects. 

Spatial queries that utilize secondary filters will run significantly faster when using all masks other than INTERACT. Gains of up to 200% can result, depending on the complexity of the geometries.  WITHIN_DISTANCE queries can run up to 40% faster when using R-tree indexes, and the VALIDATE_GEOMETRY function runs up to 200% faster depending on the complexity of the geometries.

For more information on performance characteristics, please refer to a separate performance technical white paper on the Oracle Technology Network at http://technet.oracle.com.

Enterprise Features Supporting Location-Based Services In Oracle9i
Oracle9i provides powerful, reliable support for an organization�s mission-critical applications. These enterprise features enrich Oracle9i�s location-based services capabilities via a flexible internet deployment architecture, object capabilities, and robust data management utilities that ensure data integrity, data recovery, and data security. This level of support can only exist in the homogenous environment of an enterprise database solution, and cannot be effectively replicated in a hybrid solution that marries an external location-based solution with a traditional enterprise solution, no matter how tightly integrated the two components may appear.

Oracle Spatial takes full advantage of expanded database size limits, high-performance VLDB maintenance utilities, replication, workspace manager (versioning) and faster backup and recovery.  The full range of Oracle utilities (e.g. SQL*Loader,  etc.) are also available to ease migration and help upgrade applications which use the location-based services features. The sections below introduce some of these key enterprise features.

Replication
Users of Oracle Spatial can now use Oracle's Advanced Replication capabilities.  For example, designs of distributed systems that involve the use of geographically dispersed yet logically replicated web sites, will benefit from the services that enable the synchronized replication of spatial data objects across multiple databases.

Database Workspaces
Database Workspace Manager is a new database feature in Oracle9i.  It provides shareable workspaces in which to version live data.  It is fully integrated with Oracle Spatial and supports long transactions for automated mapping/facilities management (AM/FM) and engineering applications.  As such it is ideally suited for GIS applications that extend over long periods and/or are comprised of many collaborators working at remote locations.

Wireless Solutions 
In addition to the location-based services in the Oracle9i database, Oracle9i Application Server (Oracle9iAS) Wireless has location-based services which enhance and expose these services to wireless and mobile devices.  Oracle9iAS Wireless, with Oracle9i, allows users to create and associate data with geographical regions, enabling queries and analysis based on all the regions associated with a particular point or area of interest.  This "region modeling" capability enables users to filter, classify, and prioritize services.  Oracle9i AS Wireless also provides Java interfaces to ingest external location services such as geocoding, driving directions, mapping, mobile positioning, and yellow page services, enabling wireless carriers to create pre-integrated serivces for location queries, and seamlessly integrate applications with existing location services.

Oracle9iAS Wireless allows companies to wirelessly enable any new or existing Internet applications or content for any Web-enabled device, including smart phones, pagers, PDAs, etc. Oracle9iAS Wireless adapts any Internet content to XML and transforms it to any markup language supported by any device, including HTML, WML, HDML, VoiceXML, VoxML, SMS. Oracle9i AS Wireless provides for location-based services, wireless messaging, wireless e-commerce, and extensive personalization for users and devices, allowing for customization of services and device display.

Open Standards
Oracle consistently works to help shape, drive, implement and support the latest open standards, particularly in the area of location-based services. Oracle9i continues this commitment with the implementation of the OpenGIS Consortium Simple Features guidelines. Oracle is also committed to supporting the new OGC Geographic Markup Language (GML) as well as Open Location Service interfaces. The object-relational model used for geometry storage by Oracle9i also conforms to the specifications associated with SQL92 representation of points, lines, and polygons.

Summary
Oracle9i, with Oracle Spatial, provides the foundation for deploying enterprise-wide spatial information systems and wireless location-based services. These location-based services in Oracle9i now include R-tree indexing, linear referencing, and projection and coordinate transformation support in addition to spatial object type storage, SQL access, spatial operations, fast quadtree indexing, and a geocoding framework. 

With Oracle9i, it becomes both faster and easier to incorporate location information into Internet and wireless applications and services. This release continues to emphasize performance, ease of use, and an architecture that truly scales across the enterprise. 

Availability and Release Information
Oracle9i and Oracle Spatial are available beginning June 2001 on all major platforms.

 
KEY FEATURES
Key Features of Oracle Spatial 
  • Schema that prescribes the storage, syntax, and semantics of supported geometric data types 
  • Spatial indexing mechanism 
  • Set of spatial operators and a mechanism to perform area-of-interest and spatial-join queries using these operators 
  • Set of administrative utilities
  • Linear referencing support
  • Comprehensive projection and coordinate transformation support
  • Geocoding framework
Key Release 9i Enhancements
  • NEW! Spatial Aggregates
  • NEW! Function-based spatial indexing
  • NEW! Geodetic support
  • NEW! Secondary filter performance enhancements
  • NEW! Partitioning support for spatial indexes
  • NEW! Object Replication 
  • NEW! Database Workspaces for Long Transactions 

 

 

Top of Page |Copyright and Corporate Info
E-mail this page
Printer View Printer View
Oracle Is The Information Company About Oracle | Oracle RSS Feeds | Careers | Contact Us | Site Maps | Legal Notices | Terms of Use | Privacy