About Oracle Spatial DBTUNE storage parameters |
|
Release 9.3
Last modified December 3, 2010 |
|
Note:
This topic was updated for 9.3.1.
NOTE: Geodatabases in an Oracle Spatial database management system (DBMS) created with an ArcGIS Server Enterprise license only
ArcSDE uses the B_STORAGE, B_INDEX_ROWID, and B_INDEX_USER storage parameters to store the business table and the nonspatial indexes on the business table.
The database view USER_SDO_GEOM_METADATA is part of Oracle Spatial, not ArcSDE. It contains metadata about SDO_GEOMETRY columns in existing tables owned by the user. Each user has its own USER_SDO_GEOM_METADATA view. To be indexed and queried, the owner of the table must record metadata for each SDO_GEOMETRY column in USER_SDO_GEOM_METADATA. The ArcSDE clients that create a feature class will choose the metadata for the feature class. Often, these clients accept a configuration keyword corresponding to a parameter group in the DBTUNE table.
The storage parameters that control the metadata for new Oracle Spatial feature classes are as follows:
SDO_DIMNAME_<n> SDO_LB_<n> SDO_UB_<n> SDO_TOLERANCE_<n> SDO_SRID
NOTE: If a coordinate reference system is provided during the creation of a feature class, the SDO_SRID parameter is ignored and not written to the USER_SDO_GEOM_METADATA view.
The DBTUNE parameter SDO_INDEX_SHAPE determines how Oracle Spatial creates the spatial index. ArcSDE appends the contents of this parameter (the configuration string) to the CREATE INDEX statement before submitting the statement to Oracle. The configuration string is inserted into the SQL statement after the PARAMETERS keyword. For example:
CREATE INDEX MY_SP_INDEX ON MY_SP_TABLE(SHAPE) INDEXTYPE IS MDSYS.SPATIAL_INDEX PARAMETERS ( <configuration string is inserted here> );
B_STORAGE "TABLESPACE ORSPBIZ PCTFREE 10 INITRANS 4 STORAGE(INITIAL 512000)" SDO_INDEX_SHAPE "tablespace=ORSPIDX initial=512000"
This section presents DBTUNE parameter groups that apply to several common scenarios. (Remember, parameters are grouped by configuration keywords.) These samples emphasize the storage parameters for Oracle Spatial feature classes.
Oracle and ESRI recommend using R-tree spatial indexes with SDO_GEOMETRY storage. In some of the next set of examples, you will see the parameter sdo_indx_dims=2, which specifies how many dimensions should be indexed with an R-tree spatial index. With Oracle 9.2, the default value is 2, meaning the first two dimensions (x and y). For previous versions of Oracle, the default value was the number of dimensions recorded in USER_SDO_GEOM_METADATA. There were various problems creating R-tree spatial indexes on dimensions other than x and y. For example, Oracle does not support R-tree indexes on the measure dimension. If you are creating R-tree spatial indexes and are using a version of Oracle prior to 9.2, it is recommended that you always include this parameter.
If you are not using Oracle Spatial by default, you can create a simple parameter group to create Oracle Spatial feature classes with mostly default settings. The tables and indexes will be created in the user's default tablespace using default physical storage parameters, unless specified otherwise in the DEFAULTS parameter group. The spatial index will be a two-dimensional R-tree.
##SDO_GEOMETRY GEOMETRY_STORAGE "SDO_GEOMETRY" SDO_INDEX_SHAPE "sdo_indx_dims=2" UI_TEXT "Oracle Spatial: default settings" END
NOTE: With Oracle9i geodetic data, the extents are specified in decimal degrees and the tolerances are specified in meters.
##SDO_GEOMETRY_8307 GEOMETRY_STORAGE "SDO_GEOMETRY" SDO_INDEX_SHAPE "sdo_indx_dims=2" SDO_SRID 8307 SDO_DIMNAME_1 "Lon" SDO_LB_1 -180.000000 SDO_UB_1 180.000000 SDO_TOLERANCE_1 0.05 SDO_DIMNAME_2 "Lat" SDO_LB_2 -90.000000 SDO_UB_2 90.000000 SDO_TOLERANCE_2 0.05 UI_TEXT "Oracle Spatial: WGS84" END
##SDO_GEOMETRY_ORSPBIZ GEOMETRY_STORAGE "SDO_GEOMETRY" B_STORAGE "TABLESPACE ORSPBIZ" SDO_INDEX_SHAPE "tablespace=ORSPIDX sdo_indx_dims=2" UI_TEXT "Tablespace ORSPBIZ / ORSPIDX" END
NOTE: The parameter sdo_commit_interval is so important that ArcSDE automatically includes it in SQL indexing statements for Oracle Spatial tables, even if you do not specify it as part of the SDO_INDEX_SHAPE parameter. It is set to 1,000.
##SDO_GEOMETRY_QT_6 GEOMETRY_STORAGE "SDO_GEOMETRY" SDO_INDEX_SHAPE "tablespace=ORSPIDX sdo_level=6 sdo_commit_interval=1000" END
##TERRAIN_SDO UI_TERRAIN_TEXT "The terrain default configuration" GEOMETRY_STORAGE "SDO_GEOMETRY" B_STORAGE "PCTFREE 0 INITRANS 4 TABLESPACE ter_tblspc" B_INDEX_ROWID "PCTFREE 0 INITRANS 4 TABLESPACE ter_tblspc NOLOGGING" B_INDEX_SHAPE "PCTFREE 0 INITRANS 4 TABLESPACE ter_tblspc NOLOGGING" B_INDEX_USER "PCTFREE 0 INITRANS 4 TABLESPACE ter_tblspc NOLOGGING" END ##TERRAIN_SDO::EMBEDDED GEOMETRY_STORAGE "SDO_GEOMETRY" B_STORAGE "PCTFREE 0 INITRANS 4 TABLESPACE ter_tblspc" B_INDEX_ROWID "PCTFREE 0 INITRANS 4 TABLESPACE ter_tblspc NOLOGGING" B_INDEX_SHAPE "PCTFREE 0 INITRANS 4 TABLESPACE ter_tblspc NOLOGGING" B_INDEX_USER "PCTFREE 0 INITRANS 4 TABLESPACE ter_tblspc NOLOGGING" END