For each database management system used to store enterprise geodatabases, a specific set of configuration keywords is available by default. In addition, the geodatabase administrator can add custom keywords.
What are configuration keywords in an enterprise geodatabase?
Configuration keywords group parameters and parameter values under one heading (the keyword). The parameters and parameter values specify storage options for datasets in the geodatabase. The configuration keywords and their associated parameters and parameter values are stored in a system table in the geodatabase.
How are configuration keywords used?
By grouping a set of parameters and values, configuration keywords allow you to designate one keyword that affects multiple storage options of a particular dataset. You choose what configuration keyword to use when you create a dataset in the geodatabase. If you do not specify a different keyword, the DEFAULTS keyword is used.
It is also possible for the geodatabase administrator to create custom configuration keywords. The geodatabase administrator is responsible for making sure the necessary configuration keywords exist in the geodatabase and are available for use in ArcGIS Desktop. Your geodatabase administrator can tell you if any custom configuration keywords are available and, if so, when you should use them.
What configuration keyword should you use?
In most cases, the DEFAULTS configuration keyword is sufficient. The geodatabase administrator should have made any necessary changes to the parameter values of the DEFAULTS configuration keyword so that it reflects the configuration needed the majority of the time.
There may be special circumstances in which you choose a configuration keyword other than DEFAULTS when creating or importing data. Some suggested scenarios are offered in the following sections.
Geometry storage configuration keywords
All geodatabases store geometry (hence the geo in geodatabase). Each database management system used to store enterprise geodatabases provides specific geometry storage mechanisms. For IBM Db2, geometry is stored using Spatial Extender (ST_Geometry). In Informix, geometry is stored using Spatial DataBlade (also ST_Geometry). Geodatabases stored in Oracle, Microsoft SQL Server, or PostgreSQL provide multiple geometry storage options.
For SQL Server databases, you can use either the Microsoft Geometry spatial type (the default), the Microsoft Geography spatial type, ArcSDE compressed binary type, or the Open Geospatial Consortium, Inc. (OGC) well-known binary (WKB) storage method. For Oracle databases, you can use ST_Geometry (the default), Oracle Spatial, ArcSDE compressed binary, or OGC WKB. For PostgreSQL, you can use ST_Geometry (the default), the PostGIS geometry type, or the PostGIS geography type.
Esri recommends you use SQL spatial types for geometry storage, as this allows you more functionality; for example, you can publish editable feature services, create query layers, and use SQL for editing only if your feature classes use a SQL spatial type. The configuration keywords associated with each of these storage types and whether or not they are SQL spatial types are shown in the following table:
Configuration keyword | Geometry storage | SQL spatial type? |
---|---|---|
WKB_GEOMETRY | OGC well-known binary type | No |
SDEBINARY | ArcSDE compressed binary | No |
ST_GEOMETRY | Esri SQL spatial type for Oracle or PostgreSQL | Yes |
SDO_GEOMETRY | Oracle Spatial | Yes |
PG_GEOMETRY | PostGIS geometry type | Yes |
PG_GEOGRAPHY | PostGIS geography type | Yes |
GEOMETRY | Microsoft Geometry type | Yes |
GEOGRAPHY | Microsoft Geography type | Yes |
The geodatabase administrator sets the DEFAULTS geometry storage to the type you will use for most datasets. If the storage type you want to use is not the one set under the DEFAULTS keyword, you might specify a different geometry storage configuration keyword and, therefore, use a different geometry storage type for data in the following situations:
- You are using either SQL Server or Oracle, you don't need SQL access to the spatial column, and you aren't publishing services that contain the data.
For feature classes that fit this description, you could specify the SDEBINARY configuration keyword to store the data in ArcSDE compressed binary format.
- You are using either SQL Server or Oracle; you are only storing simple features, such as points, lines, and polygons, that will not participate in topology, a network, or relationship classes; and you do not need to have ArcSDE compression.
For feature classes that fit this description, you could specify the WKB_GEOMETRY configuration keyword to store the data in OGC WKB format.
- Your PostgreSQL database has PostGIS installed, but you only want to store some of your feature classes in PostGIS geometry storage.
In this case, you could specify the PG_GEOMETRY configuration keyword when creating feature classes you want to store in the PostGIS geometry type.
- Your PostgreSQL database has PostGIS installed and you want to store some of your data in a SQL spatial type that uses latitude and longitude coordinates.
For this, you can specify the PG_GEOGRAPHY configuration keyword when you create the feature class.
- You are using SQL Server and you want to store some of your data in a SQL spatial type that uses latitude and longitude coordinates.
For this, you can specify the GEOGRAPHY configuration keyword when you create the feature class.
- You are doing a prototype for your geodatabase, and you want to test the relative performance of each storage type for a particular dataset.
When designing your geodatabase, you may want to try different storage types to see which ones fit your needs for particular datasets. In that case, you could store the same dataset (with a different name) using different geometry storage configuration keywords, and systematically test the performance of each dataset.
Raster storage configuration keywords
All geodatabases can store spatially referenced raster data. In geodatabases in Oracle, you have two options for storing rasters. In most cases, the geodatabase administrator sets the DEFAULTS raster storage to the type you should use. For all other geodatabases, use the DEFAULTS keyword when creating rasters.
Network configuration keywords
Network configuration keywords are used when you create networks datasets, which require the ArcGIS Network Analyst extension.
Network configuration keywords are composite configuration keywords—three separate network keywords that work together to store tables from the same network class in different places. The network composite keyword you will see in an ArcGIS client is NETWORK_DEFAULTS.
If you do not specify a configuration keyword for your network, the default keyword settings are used to define the storage for your network.
The geodatabase administrator can create a set of custom network keywords. For example, if you are going to create a network for your bus routes that you expect to be much larger than the networks for your rivers and railroads, the geodatabase administrator could create a set of network configuration keywords to store the bus routes network in a different location in your geodatabase.
Topology configuration keywords
Whenever you create a topology, a topology configuration keyword is used to control the storage of the topology tables.
Topology configuration keywords are composite keywords. The default topology composite keyword you will see in an ArcGIS client is TOPOLOGY_DEFAULTS.
To use a topology keyword other than the default, the geodatabase administrator creates new topology keywords that designate different storage parameters from those in the defaults. He or she will let you know when or if you should use a topology configuration keyword other than TOPOLOGY_DEFAULTS.
Terrain configuration keywords
Whenever you create a terrain, a terrain configuration keyword is used to control the storage of the terrain tables.
Terrain configuration keywords are composite keywords. The default terrain composite keyword you will see in an ArcGIS client is TERRAIN_DEFAULTS.
As with the network and topology keywords, your geodatabase administrator can create custom keywords that specify different storage information and will let you know when to use them.