Oracle Spatial Facilities

Manifold Enterprise Edition provides built-in, highly-integrated facilities for working with Oracle databases using spatial DBMS technology. Manifold Database Administrator Edition also provides administrative capabilities used with Oracle database to enable and configure various Manifold features that may later be used from Enterprise Edition.

 

In particular, Manifold Enterprise Edition includes full support for use of Oracle's outstanding spatial technology, using either full Oracle Spatial licenses or simply via the Oracle Locator technology built into standard Oracle database products or, when available, Oracle's GeoRaster technology for storing images and other raster data. This topic provides an overview with links to other topics that discuss Oracle capabilities in detail.

 

Manifold is a complete, drop-in replacement for old-fashioned "middleware" as sold by legacy GIS vendors for Oracle Spatial applications. In many cases Manifold may be used as the user front end for Oracle Spatial applications or as the user interface, editing and visualization front end for geospatial data within standard Oracle databases (using Locator) without need to acquire and deploy Oracle Spatial licenses. Oracle's provision of core Oracle Spatial technology, such as the SDO_GEOMETRY type, within standard Oracle database versions makes it possible for enterprises to use Manifold to standardize on Oracle for all geospatial data needs in a highly flexible and efficient way.

 

Manifold support for Oracle spatial technology works throughout all of Manifold System, including the Manifold Internet Map Server and runtime license applications. Oracle spatial technology provides enterprises with an outstanding solution for geospatial data storage and exploitation. Manifold provides enterprises with a powerful and modern GIS front end to maximize their investment in Oracle through desktop GIS, Internet map serving or integration into custom applications.

 

Note that some Oracle products, such as Oracle Express Edition, may have Locator spatial capability but not provide GeoRaster capability. In that case Manifold can work with such Oracle products to save drawings but not images, which require GeoRaster capability.

 

Manifold Enterprise support for Oracle includes:

 

·      Oracle Call Interface (OCI) Integration - OCI is the native Oracle interface for exchanging data. Using the native interface provides better performance and allows using features not exposed through generic database interfaces such as ODBC, OLE DB and ADO .NET. Use OCI when connecting to Oracle databases.

·      OCI Support for Tables - Manifold can export, import and link table data read/write through OCI. SDO_GEOMETRY values are represented as Manifold native geometry values in the appropriate coordinate system. Manifold coordinate systems are automatically mapped to Oracle coordinate systems.

·      OCI Support for Drawings - Manifold can export, import and link vector data (drawings) through OCI. Linked vector data sets (linked drawings) are read/write and are cached locally. This provides a superb user interface for working with spatial data within Oracle.

·      Dynamic Editing of Linked Drawings - Manifold can dynamically display drawings created from SDO_GEOMETRY data within Oracle and allows use of the full range of interactive and programmatic Manifold tools, such as visual editing tools, transforms, adding/deleting/editing objects or table data and other Manifold features.

·      Multiuser Drawing Editing with Version / Conflict Resolution - Many users at the same time can edit the same drawing stored in Oracle. Manifold will automatically track the version of each object in case two users attempt to simultaneously edit the same object and will assist users in resolving any conflicts via the Review pane.

·      Import or Linking Drawings from Views - Manifold drawings may be imported from or linked to Oracle views. Views are a very powerful way of extracting a portion of data using a query. See the Example: Storing a Drawing in Oracle topic for an example.

·      Area of Interest Windowing - Users may import or link in only that part of an Oracle drawing or view that is within their area of interest. This allows storage of immensely large drawings in Oracle yet allows practical usage of a portion of such drawings. Note: Import or linking a drawing using an area of interest from a view assumes the view has a spatial index.

·      OCI Support for Rasters / Images - Manifold can import, link and export raster data (images) with Oracle products that include GeoRaster technology. Linked raster data sets (linked images) are fetched from the database on the fly preserving coordinate information. Manifold can work with a variety of images stored in Oracle, including interleaved channel images, indexed (palette) images and other types. Manifold can import as a surface a single channel of an image stored in Oracle.

·      Export and Import of Surfaces - Manifold can export surfaces to Oracle as GeoRasters and can also import surfaces stored as Oracle GeoRasters (however, Manifold releases up to and including 7.00 cannot link surfaces from Oracle GeoRasters). Export to Oracle and import from Oracle of images is similar to the export and import of images. See the Example: Storing an Image in Oracle topic for the process used both for images and surfaces.

·      Automatic Read / Write of SDO_GEOMETRY - SDO_GEOMETRY is the fundamental data type used within Oracle spatial technology to store vector drawing objects. When exchanging data with Oracle data sources via OCI, Manifold automatically maps Manifold geometry columns into Oracle SDO_GEOMETRY data and vice versa.

·      Drawing Export to Oracle Databases - Manifold can export drawings directly into either Oracle Spatial databases or into regular Oracle databases using Locator. Tables will automatically be created using SDO_GEOMETRY data for drawing objects and other data types for attributes. Manifold will automatically preserve projection information and will create a spatial index for the drawing. This facility is a great way of loading data into Oracle spatial databases.

·      Oracle Projections Support - Importing or linking a raster or vector data set from an Oracle database brings the coordinate system of the data set into Manifold, which supports all Oracle coordinate systems. Exporting a vector data set from Manifold to an Oracle database lets the user select the coordinate system to use from the list of coordinate systems supported by the database. By default, Manifold selects the coordinate system available with Oracle which is the best match for the coordinate system of the data set, making any required coordinate system translation on the fly. Manifold recognizes Oracle coordinate systems defined through parameter tables as well.

·      Custom Database Console Support - When connecting to an Oracle data source through OCI, the Database Console provides a variety of special Oracle features, such as using drawing icons to show tables that contain drawing geometry data, not available with other data sources. The Open Data Source command provides a rapid way to open the Database Console for components that are linked from an Oracle data source. Note: because the Database Console provides a more convenient user interface for browsing Oracle databases, we will almost always use the Database Console to import or link components from an Oracle database instead of using the File - Import or File - Link menu commands.

·      Database Administrator Edition - Database Administrator Edition includes a powerful managerial console called the Administrator Console that enables IT and DBMS administrators to configure data sources used to store the enterprise's geospatial data. The Administrator Console allows administrators to configure GIS data storage within the data source so that the data source is easier and more convenient to use for ordinary GIS users. Database Administrator Edition also includes the Tools - Batch Export tool that facilities rapid, mass uploading of Manifold drawings, images and surfaces into Oracle spatial databases.

 

The above dedicated capabilities are just the beginning of Manifold support for Oracle. Oracle's spatial technology provides enterprise-class geospatial database capabilities with unprecedented sophistication and power. Future editions of Manifold will extend and deepen Manifold's commitment to Oracle support, adding new capabilities at a rapid pace.

 

Projections

 

Manifold supports all Oracle projections (coordinate systems) although Oracle does not support all Manifold projections. When a component is imported or linked from an Oracle database it will automatically use that same projection within Manifold.

 

When a component is exported from Manifold to Oracle, Manifold will automatically choose the Oracle projection that is the best match, that is, the most similar to, the Manifold projection in use. Manifold export dialogs will report the degree of similarity between the Manifold projection and the proposed Oracle coordinate system. If need be, Manifold will re-project the component on the fly into that Oracle projection system as part of the uploading process.

 

There are two nuances of interest in the case of components using a coordinate system that appears both in Oracle and in Manifold (that is, all Oracle coordinate systems):

 

·      Although Manifold supports all coordinate systems used by Oracle, sometimes the names used for those coordinate systems are different. For example, the Latitude / Longitude projection used in Manifold is known as the TWD97 projection in Oracle when using the WGS 84 datum (the default for Latitude / Longitude).

·      Manifold defines coordinate system presets using higher-precision parameters than those used in Oracle so even if the coordinate system is otherwise identical the Manifold settings have to be lowered in precision to match those used by Oracle. Manifold understands such precision-matching requirements when identifying the equivalent projection in Oracle and will automatically re-project data to account for precision differences. If this or any other re-projection is not desired, Manifold provides a Do not project data option (off by default) that may be checked on to prevent any re-projection of data.

 

It should be emphasized that the second point above is an example of "overkill" accuracy on Manifold's part and in no way is any practical limitation of Oracle.

 

Frequently Asked Questions

 

Must I install something extra to get Oracle spatial capability in Manifold? - No, not if you have Enterprise Edition installed (including Universal Edition and Universal Runtime). If you do not have Enterprise Edition or higher installed you will not be able to use Oracle spatial capabilities from within Manifold System.

 

Must I use Database Administrator Edition to get Oracle spatial capability in Manifold? - Strictly speaking, no, although it will be a very rare organization that will not acquire a few Database Administrator Edition licenses to support Manifold use with Oracle. Database Administrator Edition is required to "turn on" certain Manifold features such as friendly names and storage of drawing formatting within the database. Database Administrator Edition also provides conveniences such as batch upload of components and presets for imports and links that make life easier both for administrators and for ordinary users. If you are willing to do without the features and conveniences enabled for all users (including those using Enterprise Edition) by Database Administrator Edition then you could use Enterprise Edition only.

 

What versions of Oracle can I use? Must I use Oracle Spatial? - Manifold works with Oracle Spatial as well as other Oracle editions that include Locator (such as Oracle Express Edition) or GeoRaster (such as Oracle Enterprise Edition) capability.

 

Must I install a Manifold license on my Oracle server machine? No. Manifold is a client application that connects directly to the Oracle database server without needing any "middleware" or "server" piece of Manifold on that Oracle server. For example, you could have Oracle running on one or more server machines and then have Manifold installed on a few hundred client machines where operators are doing GIS. You need to install a Manifold license on the client machines, but you do not need to install Manifold licenses on the Oracle server machines. To take another example, suppose you had a web server hosting a web site that involved connections to an Oracle database on a different machine. If you had a GIS-enabled web site running on that web server machine using Manifold IMS you would need a Manifold license for that web server machine so that Manifold IMS could run. But, you would not need a Manifold license for the Oracle server machine.

 

Is Manifold's use of Oracle Spatial compatible with other applications? Yes, if those other applications work directly with Oracle using standard Oracle interfaces and technologies. For example, if you load an Oracle Spatial database with vector data by exporting a drawing from Manifold any other application that knows how to work with Oracle Spatial databases will be able to use that vector data.

 

Manifold runs in Windows - can I run my Oracle server on Linux? Of course. Manifold is happy to connect to your Oracle data sources regardless of what operating system they use.

 

Does Manifold require ArcSDE to be able to connect to Oracle Spatial? No. Manifold requires no middleware or other software of any kind to be able to connect to Oracle databases. Manifold connects directly to Oracle data sources using the Oracle Call Interface (OCI).

 

Can Manifold connect to Oracle Spatial through ArcSDE? No, and there is no need to do so. Manifold works directly with Oracle Spatial. ESRI's ArcSDE is middleware designed to keep ESRI customers locked into ESRI products whether they like it or not. Manifold connects directly to Oracle and neither requires nor uses ArcSDE. Some customers who are stuck with ArcSDE applications for legacy reasons will no doubt continue to use ArcSDE; however, they can also use applications like Manifold to connect directly to the centralized Oracle Spatial database in addition to whatever they are doing via ArcSDE.

 

So Manifold is "DBMS-centric" rather than "GIS-centric?" For enterprises, yes. Clearly, if you have vast amounts of corporate data held within a supremely capable DBMS like Oracle your enterprise is DBMS-centric and darn well should be. It's madness to allow any GIS vendor to attempt to interpose itself as some sort of proprietary standard that interferes or limits in any way your ability to leverage your Oracle installations. While it's certainly true that some corporate processes involve such a high degree of specifically GIS functionality (such as heads-up digitizing of new parcels in a parcel map) that those particular processes are clearly GIS-centric, it is important to keep in mind that such processes are adjuncts to the core DBMS. They are simply examples of the rich extensibility and connectivity that a well-founded DBMS-centric geospatial data storage architecture allows. Manifold is committed to using native Oracle standards and technology as the guarantee of broad compatibility with many other applications and products. If Oracle standards are the touchstone, you can confidently deploy tools like Manifold knowing your core investment into Oracle will be protected.

 

Do Manifold queries execute locally or on the Oracle server? Queries written in the Database Console execute on the Oracle server. Other Manifold queries in your Manifold project will execute locally within Manifold spatial SQL. This means that if they involve data brought in from an Oracle database (such as if they involve a linked table) there will be a performance hit because data must be brought in from the Oracle server to allow the query to operate. We anticipate that future Manifold editions will extend the capabilities of Manifold's query processor so that queries will automatically be analyzed and those parts of the query that can be dispatched to run in the Oracle server will be run on the server.

 

See Also

 

Installing Oracle

Example: Storing a Drawing in Oracle

Example: Storing an Image in Oracle

Linked Drawings

Linked Images

Importing and Linking Tables

Geometry in Tables

Importing Drawings

Importing Images

Linked Images from Oracle Servers

Importing Tables

Linking Tables

Linking Drawings

Linking Images

Exporting Drawings

Export Drawing - Oracle

Export Image - Oracle

Exporting Tables

Map Server Overview

Tools - Database Console

 

Acknowledgements

 

The manifold.net team would like to thank Oracle for its support of independent software developers working to integrate products with Oracle. The Oracle Technology Network is a model of how a technology leader like Oracle encourages developers to undertake large engineering projects with confidence. This provides better integration and better value for Oracle users worldwide. Special thanks go out to the Oracle Spatial team in New Hampshire as well as to Oracle staff in California.