The GDB dev team has put some time into a series of posts on our beta blog lately regarding the new simplified geodatabase schema coming at ArcGIS 10. While that blog is for beta user eyes only, we thought that there was a valuable story being told which should be shared publically, especially given that it’s the same story we’ll be giving at the Dev Summit next week in Palm Springs.
So here it is, The Simplified Geodatabase Schema part one of three:
Consolidation of the Geodatabase system tables
The geodatabase team has done some work under the hood for the 10 release and has restructured the geodatabase schema. At ArcGIS 10 we have amalgamated all of the information related to the schema such as feature classes, domains, subtypes, etc…. This information, which was previously stored in the 36+ geodatabase system tables (the tables prefixed with “GDB_”) has been consolidated into four main tables:
The majority of the information is now stored primarily within an XML column, the Definition field in the GDB_Items table which is shown here:
How will this change affect you?
Unless you have custom code you’ve written in an application directly accessing the system tables it won’t affect you. The way you work with the geodatabase in ArcMap, ArcCatalog and ArcObjects remains the same. Like I said, this was really a behind-the-scenes change that most users won’t notice.
So why did we do this?
Because consolidating geodatabase system tables rocks! Here’s why:
The above double necked Gibson SG bullets were graciously lent to the GDB dev team by guitar legend Jimmy Page
Some additional notes about the new geodatabase schema:
- All new and upgraded file, personal, and ArcSDE geodatabases will have the new geodatabase schema. Because of this consolidation of the system tables, ArcGIS 10 geodatabases will not be accessible from previous releases of ArcGIS. When planning your organization’s migration strategy to 10 this is an important point to consider.
- The upgrade does not affect the underlying data within the geodatabase. For example, while the information stored in the geodatabase system tables with respect to how feature classes are stored changes, the data in the underlying feature class remains unaffected. In addition, none of the ArcSDE repository tables (the tables prefixed with “SDE_”) are part of the consolidation.
- To implement this new schema in an ArcSDE geodatabase, the database must be able to use XML columns. For Personal and File geodatabases this is handled by ArcGIS, users do not need to configure XML support for these types of geodatabases. For ArcSDE geodatabases there are instructions on how to configure this for each DBMS. Additionally, existing ArcSDE geodatabases must be upgraded using the new Upgrade Geodatabase geoprocessing tool or Python script instead of the Post Installation wizard or the sdesetup command (we’ll add a post about this upgrade process soon).
- There is no change needed to existing applications which access the Geodatabase through ArcObjects. The consolidation of the system tables should be seamless and not require any code changes for ArcObjects applications.
This post was contributed by Craig Gillgrass, product engineer on the geodatabase team