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 typesA 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.
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:
- The default storage type—BLOB
- A LONG RAW column
- If you have Oracle Spatial, the Oracle Spatial GeoRaster format
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
- BLOB—If no other default is specified, this is the default raster storage method of ArcSDE for Oracle. If the RASTER_STORAGE parameter is not set, the BLOB format is assumed. This data type can be replicated through Oracle Advanced Replication.
- LONGRAW—Stores the raster data as a LONG RAW data type.
If you want to make this format the default, set the RASTER_STORAGE parameter to LONGRAW in the DEFAULTS configuration keyword. If you want to use this storage format for only some of your raster datasets or catalogs, you could create a custom DBTUNE configuration keyword containing the RASTER_STORAGE parameter set to LONGRAW. However, because Oracle is deprecating support for LONG RAW data types, this is not recommended.
- SDO_GEORASTER—This is the Oracle GeoRaster object-relational type, which extends the database model to include an SDO_GEORASTER type in the Oracle DBMS.
If you want to make this format the default, set the RASTER_STORAGE parameter to SDO_GEOMETRY in the DEFAULTS configuration keyword.
If you want to have a different default raster storage format but would like to use the SDO_GEORASTER storage format for some of your raster datasets or catalogs, there is a keyword already available for you to use—the SDO_GEOMETRY keyword. You could specify this configuration keyword when creating raster datasets that you want stored in the SDO_GEORASTER format. In the DBTUNE file, the SDO_GEOMETRY configuration keyword appears as follows:
##SDO_GEOMETRY
GEOMETRY_STORAGE "SDO_GEOMETRY"
ATTRIBUTE_BINARY "BLOB"
RASTER_STORAGE "SDO_GEORASTER"
SDO_COMMIT_INTERVAL 1000
UI_TEXT "User Interface text description for SDO_GEOMETRY"
COMMENT "Any general comment for SDO_GEOMETRY keyword"
END
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?