|Oracle® Spatial User's Guide and Reference
10g Release 1 (10.1)
Part Number B10826-01
This section describes new and changed Oracle Spatial features for the current release.
GeoRaster is a feature of Oracle Spatial that lets you store, index, query, analyze, and deliver georaster data, that is, raster image data and its associated Spatial vector geometry data, plus metadata. GeoRaster provides Oracle Spatial data types and an object-relational schema for storing multidimensional grid layers and digital images that can be referenced to positions on the Earth's surface or a local coordinate system.
Information about GeoRaster is in a separate manual: Oracle Spatial GeoRaster.
The topology and network management capabilities of Oracle Spatial let you work with data about nodes, edges, and faces in a topology, and nodes and edges in a network. For example, United States Census geographic data is provided in terms of nodes, chains (line strings), and polygons (faces). You can store information about the topological elements and feature layers in Oracle Spatial tables and metadata views, and then you can perform certain Spatial operations referencing the topological elements, for example, finding which chains (such as streets) have any spatial interaction with a specific polygon entity (such as a park).
Information about topology and network management is in a separate manual: Oracle Spatial Topology and Network Data Models.
You can use new spatial analysis and mining subprograms in Oracle Data Mining (ODM) applications. See Chapter 8 for conceptual and usage information, and Chapter 21 for reference information about each subprogram.
The use of spatial quadtree indexes is discouraged. You are strongly encouraged to use R-tree indexing for spatial indexes, unless you need to continue using quadtree indexes for special situations. Significant performance improvements have been made to spatial R-tree indexing for this release.
Almost all information about quadtree indexing has been removed from this guide and placed in a separate guide, Oracle Spatial Quadtree Indexing, which is available only through the Oracle Technology Network.
The SDO_UTIL package contains the following new subprograms:
SDO_UTIL.APPEND appends one geometry to another geometry to create a new geometry
SDO_UTIL.CONCAT_LINES concatenates two line or multiline two-dimensional geometries to create a new geometry.
SDO_UTIL.CONVERT_UNIT converts values from one angle, area, or distance unit of measure to another.
SDO_UTIL.CIRCLE_POLYGON returns the polygon geometry that approximates and is covered by a specified circle.
SDO_UTIL.ELLIPSE_POLYGON returns the polygon geometry that approximates and is covered by a specified ellipse.
SDO_UTIL.INITIALIZE_INDEXES_FOR_TTS initializes all spatial indexes in a tablespace that was transported to another database.
SDO_UTIL.POINT_AT_BEARING returns a point geometry that is at the specified distance and bearing from the start point.
SDO_UTIL.POLYGONTOLINE converts all polygon-type elements in a geometry to line-type elements, and sets the SDO_GTYPE value accordingly.
SDO_UTIL.PREPARE_FOR_TTS prepares a tablespace to be transported to another database, so that spatial indexes will be preserved during the transport operation.
SDO_UTIL.REMOVE_DUPLICATE_VERTICES removes duplicate (redundant) vertices from a geometry.
SDO_UTIL.REVERSE_LINESTRING returns a line string geometry with the vertices of the input geometry in reverse order.
SDO_UTIL.SIMPLIFY simplifies the input geometry, based on a threshold value, using the Douglas-Peucker algorithm.
SDO_UTIL.TO_GMLGEOMETRY converts a Spatial geometry object to a geography markup language (GML 2.0) fragment based on the geometry types defined in the Open GIS
geometry.xsd schema document.
See Chapter 19 for reference information about the utility subprograms.
SDO_JOIN performs a spatial join based on one or more topological relations. (SDO_JOIN is technically not an operator, but a table function; however, it is presented in the chapter with Spatial operators because its usage is similar to that of the operators, and because it is not part of a package with other functions and procedures.)
The following new operators are convenient alternatives to using SDO_RELATE with a specified
mask value: SDO_ANYINTERACT, SDO_CONTAINS, SDO_COVEREDBY, SDO_COVERS, SDO_EQUAL, SDO_INSIDE, SDO_ON, SDO_OVERLAPBDYDISJOINT, SDO_OVERLAPBDYINTERSECT, SDO_OVERLAPS (OVERLAPBDYDISJOINT or OVERLAPBDYINTERSECT), and SDO_TOUCH.
See Chapter 12 for reference information about these operators.
If you do not specify the
param parameter with the SDO_NN operator, the operator returns all rows in increasing distance order from
param parameter, you can specify
sdo_batch_size=0, which causes Spatial to calculate a batch size that is suitable for the result set size; however, there are performance considerations, as explained in the Usage Notes for the SDO_NN operator in Chapter 12. (This feature worked in the previous release, but was not documented.)
SDO_AGGR_CONCAT_LINES returns a geometry that concatenates the specified line or multiline geometries.
See Chapter 14 for reference information about spatial aggregate functions.
The new SDO_CS.VALIDATE_WKT function validates the well-known text (WKT) description associated with a specified SRID.
Minimum bounding rectangles (MBRs) can now be geodetic or non-geodetic. In previous releases, MBRs needed to be non-geodetic.
The following functions, which were not supported with geodetic data in the previous release, are now supported for use with geodetic data:
Because geodetic MBRs are easier to use than the previous technique using the SDO_CS.VIEWPORT_TRANSFORM function (described in Chapter 15), that function is deprecated, and it will not be supported in future releases of Spatial.
The new SDO_LRS.FIND_OFFSET function returns the signed offset (shortest distance) between a point and a geometric segment.
The SDO_LRS.PROJECT_PT function includes a new optional output parameter
offset, which stores the signed offset of the projected point from the geometric segment.
See Chapter 16 for reference information about linear referencing system (LRS) subprograms.
In the current version of this guide,
tolerance is shown as a required parameter for many LRS subprograms where it had previously been shown as optional. Applications that used
tolerance as an optional parameter in such cases will continue to work in this release; however, such usage is deprecated and will not be supported in future releases. If you use an LRS subprogram format in which
tolerance is shown as required, you should specify that parameter.
See also Section 7.6, which contains new information about tolerance values with LRS subprograms.
The following SDO_TUNE subprograms specific to spatial quadtree indexing are deprecated:
Information about these subprograms has been removed from this guide and placed in a separate guide, Oracle Spatial Quadtree Indexing, which is available only through the Oracle Technology Network.
The new SDO_UTIL.TO_GMLGEOMETRY function, described in Chapter 19, converts a Spatial geometry object to a geography markup language (GML 2.0) fragment based on the geometry types defined in the Open GIS
geometry.xsd schema document.
You can specify the tablespace for temporary tables used in to create a spatial R-tree index by using the new
work_tablespace parameter in the CREATE INDEX statement, which is described in Chapter 10.
You can create a separate index table (with a name in the form MDNT_...$) for nonleaf nodes of a spatial index by specifying
'sdo_non_leaf_tbl=TRUE' in the CREATE INDEX statement, which is described in Chapter 10. Specifying this parameter can help query performance with large data sets, and it can help overall performance for large databases where buffer pool resources are limited.
Public synonyms have been created for all Spatial data types; therefore, you no longer need to specify MDSYS with the data type. For example, you can declare a geometry object as type SDO_GEOMETRY instead of MDSYS.SDO_GEOMETRY.
However, you still need to specify MDSYS for the Spatial index type (
CREATE INDEX ... INDEXTYPE IS MDSYS.SPATIAL_INDEX) and for Spatial tables (such as the MDSYS.SDO_DIST_UNITS table).
The DBA_SDO_GEOM_METADATA, DBA_SDO_INDEX_INFO, and DBA_SDO_INDEX_METADATA views are no longer provided. You can instead use the ALL_SDO_GEOM_METADATA, ALL_SDO_INDEX_INFO, and ALL_SDO_INDEX_METADATA views, respectively. These views are described in Section 2.4 and Section 2.5.1.
The following SDO_MIGRATE package procedures are no longer documented in Chapter 17:
You should use the SDO_MIGRATE.TO_CURRENT procedure if you need to upgrade data to the current Spatial release.
Several Java interfaces provide access to many Spatial data types and features. Section 1.11 lists the interfaces, describes the
sdoapi interface, and explains how to find detailed reference information in Javadoc-generated API documentation.
Before Oracle Database 10g Release 1 (10.1), the Oracle transportable tablespace feature could not be used with tablespaces that contained any spatial indexes. Effective with Oracle Database 10g Release 1 (10.1), you can transport tablespaces that contain spatial indexes. However, you must call the new SDO_UTIL.PREPARE_FOR_TTS procedure just before you perform the export operation, and you must call it for each user that has data in the specified tablespace; and you must also call the new SDO_UTIL.INITIALIZE_INDEXES_FOR_TTS procedure just after you perform the import operation. Both procedures are described in Chapter 19.
The new MDDATA schema is recommended for storing data used by geocoding and routing applications. This is the default schema for Oracle software that accesses geocoding and routing data. The MDDATA schema is described in Section 1.13.
A new appendix (Appendix C) provides examples, with explanations, of queries that are more complex than the examples in the reference chapters in Part II, " Reference Information ". This appendix focuses on operators that are frequently used in Spatial applications, such as SDO_WITHIN_DISTANCE and SDO_NN. This appendix is based on input from Oracle personnel who provide support and training to Spatial users.