ArcGIS Server Banner

An overview of feature geometry and raster data storage

An overview of feature geometry and raster data storage

Release 9.3 E-mail This TopicPrintable VersionGive Us feedback
Physical storage of feature and raster data in the geodatabase uses standard data (column) types within each database management system (DBMS). Because each DBMS differs slightly in its supported column types, geodatabase storage differs from DBMS to DBMS.

For feature geometry storage, some DBMSs have historically supported spatial column types (e.g., Oracle, DB2, and Informix), while others provided standard binary or binary large object (BLOB) column types. However, beginning with ArcGIS 9.3, most DBMSs have added enough rich support that ESRI could add a column type for spatial with SQL support that adheres to the ISO and OGC standards and that can also scale and perform extremely well.

For raster storage, most supported DBMSs use only one storage type. For Oracle databases, you have three options for raster storage.

The sections below describe the data types used for feature geometry and raster storage.

Feature geometry storage

Here is a summary of the available storage types for feature geometry within each DBMS.


DBMS Feature geometry storage Column type Notes
DB2 Spatial Extender—Geometry Object ST_Geometry*
  • Utilizes extended spatial type for managing vector data.
  • Supports the ISO and OGC SQL API for spatial.
  • Based on the ISO SQL MM specification for spatial; built in concert with ESRI.
Informix Spatial DataBlade—Geometry Object ST_Geometry*
  • Utilizes extended spatial type for managing vector data.
  • Based on the ISO SQL MM specification for spatial; built in concert with ESRI.
Oracle ArcSDE Compressed Binary Long Raw
  • Provides high performance, scalability, and reliability.
  • Prior to ArcGIS 9.3, Long Raw was the default for ArcSDE for Oracle. Beginning with ArcGIS 9.3, the default feature storage type for Oracle was changed from Long Raw to ST_Geometry.

Well-Known Binary (OGCWKB) BLOB
  • OGC simple features type.
  • Can only be used with two-dimensional geometry.

LOB BLOB
  • Can be deployed to use Oracle Replication Services.

ArcSDE Spatial Type ST_Geometry*
  • Utilizes the ArcSDE extended spatial type for managing vector data. -Supports the ISO and OGC SQL API for spatial.
  • Based on the ISO SQL MM specification for spatial.
  • Included with ArcSDE technology for Oracle.
  • Support added beginning at ArcGIS 9.2.
  • Beginning with ArcGIS 9.3, the default feature storage type for Oracle was changed from Long Raw to ST_Geometry.

Oracle Spatial—Geometry Type SDO_Geometry
  • Oracle Spatial and Oracle Locator users can use the SDO_Geometry column type.
PostgreSQL

ArcSDE support for PostgreSQL added at release 9.3
ArcSDE Spatial Type ST_Geometry*
  • Utilizes the ArcSDE extended spatial type for managing vector data. -Supports the ISO and OGC SQL API for spatial.
  • Based on the ISO SQL MM specification for spatial; built by ESRI.
  • Included as part of the ArcSDE technology for PostgreSQL.

PostGIS EWKB and EWKT Geometry
  • PostGIS provides an open source spatial data type that supports the same ISO and OGC standards as ST_Geometry in ArcSDE.
SQL Server** ArcSDE Compressed Binary Image
  • The SQL Server binary type fully manages complex binary streams required for complex line and polygon features found in typical and advanced GIS applications.
  • Compressed binary is the default geometry storage for ArcSDE for SQL Server.

Well-known Binary (OGCWKB) Image
  • OGC simple features type.
  • Can only be used with two-dimensional geometry.

Microsoft SQL Server geometry type Geometry Stores data that uses projected spatial reference systems to define spatial data.

Microsoft SQL Server geography type Geography Stores geodetic spatial data.

*ST_Geometry is a super class comprised of several instantiable subclasses such as ST_LINE used to store linear feature geometry. ST_Geometry implements the OGC and ISO SQL Multimedia Specification for Spatial. The OGC reference is OpenGIS Implementation Specification for Geographic information—Simple feature access—Part 2: SQL option. The ISO reference is ISO/IEC 13249-3 SQL multimedia and application packages—Part 3: Spatial.

**ArcSDE geodatabases stored in SQL Server Express databases use the ArcSDE Compressed Binary storage type; you cannot specify another geometry storage type.

For DBMSs that allow multiple storage options, you could use any combination of available storage methods within a single geodatabase—one for each feature class. For example, you may choose to store a point layer using an Oracle Spatial geometry type and a polygon layer using an ArcSDE compressed binary column.

This is where the geometry configuration parameters of the DBTUNE table come in. For geodatabases stored in Oracle, PostgreSQL, or SQL Server, there are configuration values you can set to specify which geometry storage to use.

To set the default geometry storage type—the one that you would use for most of your data—you would alter the value of the GEOMETRY_STORAGE parameter under the DEFAULTS configuration keyword in the DBTUNE table. You can also create separate geometry storage configuration keywords that specify different geometry storage types. You can then use these keywords when creating or importing data to the geodatabase, thereby storing that data using a storage type other than the one specified in DEFAULTS.

NOTE: Be aware that if you plan to use SQL queries to compare geometries, you cannot execute SQL queries to compare different geometry storage types. For example, you cannot execute a query containing an ST_INTERSECTS function to compare a feature class using ST_Geometry storage to a feature class using SDO_Geometry storage.

Spatial types

A spatial type embeds support for GIS feature geometry as a standard column type within the DBMS. Some DBMSs support spatial types that adhere to the OpenGIS SQL specification for user defined types (UDTs) and the ISO SQL Multimedia Spatial Standard. These standards define columns capable of storing features such as points, lines, or polygons.

Use of these spatial types provides SQL access and spatial query operators to feature geometry inside the DBMS through a SQL API. All supported DBMSs, including SQL Server, Oracle, Informix, IBM DB2, and PostgreSQL, support spatial types. When spatial types are used, feature geometry is stored in the business table.

In addition to these spatial types supported by ArcGIS, Oracle also provides spatial types for feature storage using Oracle Spatial or Oracle Locator. Oracle Spatial and Oracle Locator users can also use this column type for storing feature geometry in geodatabases.

For details on these spatial types, see The Oracle Spatial geometry and raster types and The ST_Geometry storage type.

In PostgreSQL, ArcGIS supports two options for spatial types—the ArcSDE ST_Geometry spatial type and the open source PostGIS spatial type. Both support the OGC and ISO SQL specifications.

For DBMSs that support it, ST_Geometry is recommended in most cases because it supports all aspects of feature geometries of the geodatabase such as multipart features, multipatches, multipoint arrays, M measures, and 3D coordinates.

NOTE: You should not use SQL commands to alter the geometry storage type of any geodatabase dataset once it has been created.

Raster storage

Except for Oracle, geodatabases use each DBMS's native binary type for raster storage. There are no additional configuration options for raster storage in these databases. This includes geodatabases in SQL Server, IBM DB2, Informix, and PostgreSQL.

For geodatabase rasters stored in an Oracle database, you have the option to use the following:

NOTE: Each time you add a raster dataset, you can choose to use any of these three types for raster storage.

The default raster storage type is specified in the DBTUNE table with the configuration parameter RASTER_STORAGE. Set the RASTER_STORAGE parameter under the DEFAULTS configuration keyword to specify the storage type you will use most of the time to store raster data. Possible settings are

For more information on using settings in the DBTUNE table to control storage, see The dbtune file and the DBTUNE table.

For information on the tables used to store rasters in a geodatabase, see How raster data is stored in a geodatabase. For general information on raster data, see What is raster data?

See Also

  • ArcSDE Compressed Binary storage
  • The OGC Well-Known Binary representation for geometry
  • The Oracle Spatial geometry and raster types
  • The PostGIS geometry type
  • The ST_Geometry storage type
  • The Microsoft SQL Server spatial types