This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Defining the geodatabase (GDB)Defining the geodatabase (GDB)
•• Container of spatial & attribute dataContainer of spatial & attribute data–– Collection of geographic datasetsCollection of geographic datasets
•• Native data structure for ArcGISNative data structure for ArcGIS•• Provides the ability to:Provides the ability to:
–– Leverage data relationshipsLeverage data relationships–– Enforce data integrityEnforce data integrity–– Create intelligent featuresCreate intelligent features
1.1. NonNon--versioned editingversioned editing–– Directly edit the base tables (since 9.2 release)Directly edit the base tables (since 9.2 release)–– Supports short transaction workflowsSupports short transaction workflows–– Edits immediately available upon saveEdits immediately available upon save
2.2. Versioned editingVersioned editing–– Available since initial ArcGIS 8.0 releaseAvailable since initial ArcGIS 8.0 release–– Supports long transaction workflowsSupports long transaction workflows–– Lineage of change maintained by Lineage of change maintained by SDESDE tablestables
3.3. Versioned editing (with move to base)Versioned editing (with move to base)–– Option of versioned editing (since 9.2 release)Option of versioned editing (since 9.2 release)–– If editing nonIf editing non--DEFAULTDEFAULT version, stores edits in delta tablesversion, stores edits in delta tables–– Upon save or post to Upon save or post to DEFAULTDEFAULT, edits are moved to the base tables, edits are moved to the base tables
•• Preserves last set of edits on a datasetPreserves last set of edits on a dataset
•• Editing option for data that is used with nonEditing option for data that is used with non--ESRI clientsESRI clients•• Uses the underlying DBMS transaction modelUses the underlying DBMS transaction model
–– Edits immediately available upon saveEdits immediately available upon save•• Simple data onlySimple data only
Support for information technology (IT) systemsSupport for information technology (IT) systems
•• NonNon--versioned editing provides better geodatabase integration versioned editing provides better geodatabase integration with IT/enterprise systemswith IT/enterprise systems
•• NonNon--ESRI applications see edits in base tablesESRI applications see edits in base tables•• Edits are applied base tablesEdits are applied base tables
–– No delta tables are used, i.e., no A & D tablesNo delta tables are used, i.e., no A & D tables•• DBMS behavior is easy to implementDBMS behavior is easy to implement
–– Lock held until edit session is saved or rolled back Lock held until edit session is saved or rolled back •• Hourglass lingers; does not time outHourglass lingers; does not time out
No undo/redo in nonNo undo/redo in non--versioned editingversioned editing
•• Edits between Edits between save operations are a single DBMS transactionsave operations are a single DBMS transaction–– Save changes Save changes →→ commitcommit in databasein database–– Stop editing with unsaved edits Stop editing with unsaved edits →→ rollbackrollback changeschanges
•• Concurrency issues must be identifiedConcurrency issues must be identified–– Design workflow to prevent/minimize blockingDesign workflow to prevent/minimize blocking
•• Spatially distribute your editors (e.g., edit different areas)Spatially distribute your editors (e.g., edit different areas)–– Blocking related to DBMS isolation levelsBlocking related to DBMS isolation levels
•• No conflict detectionNo conflict detection–– Prevent/minimize lost edits by designing appropriate workflowPrevent/minimize lost edits by designing appropriate workflow
•• Integrating nonIntegrating non--ESRI applicationsESRI applications–– Edits immediately available upon saveEdits immediately available upon save–– Can use DBMS behavior to enforce integrityCan use DBMS behavior to enforce integrity
•• Geodatabase compress not necessaryGeodatabase compress not necessary
•• Facilitates archiving, geodatabase replicationFacilitates archiving, geodatabase replication•• Conflict detection available during reconcileConflict detection available during reconcile
•• Storing edits without affecting the original dataStoring edits without affecting the original data
•• A version isA version is a specific a specific ““viewview”” of the geodatabaseof the geodatabase–– Persistent record of changesPersistent record of changes–– Applies to the entire geodatabase, NOT on a feature classApplies to the entire geodatabase, NOT on a feature class–– All multiAll multi--user geodatabases have a user geodatabases have a DEFAULTDEFAULT versionversion
•• Versions are not affected by changes occurring in other Versions are not affected by changes occurring in other versions of the geodatabaseversions of the geodatabase
•• Version managerVersion manager: create versions: create versionsthat support business workflowthat support business workflow
–– In ArcCatalog or ArcMapIn ArcCatalog or ArcMap•• Set properties for each versionSet properties for each version
–– E.g., owner, permissions, descriptionE.g., owner, permissions, description•• Every version has a parent, except for Every version has a parent, except for DEFAULTDEFAULT
Merging changes Merging changes -- reconcile & postreconcile & post
•• ArcMap includes methods for ArcMap includes methods for mergingmerging versionsversions–– Tools available to resolve Tools available to resolve conflictsconflicts
•• New version changes viewer toolNew version changes viewer tool–– Enables users to compare a version with an Enables users to compare a version with an ancestor versionancestor version, ,
without performing a reconcilewithout performing a reconcile–– Shows all inserts, deletes, & updates made to the version since Shows all inserts, deletes, & updates made to the version since the the
last time it and the selected version were identicallast time it and the selected version were identical–– Total # of changes shown,Total # of changes shown,
per feature classper feature class–– Do not have to be inDo not have to be in
•• Incorporates edits from parent (target) Incorporates edits from parent (target) version to child (edit) versionversion to child (edit) version
–– Can reconcile against any Can reconcile against any ancestorancestor versionversion–– Performed in an edit sessionPerformed in an edit session–– Can undo changesCan undo changes–– Must be done Must be done beforebefore a post operationa post operation
•• Conflicts require Conflicts require resolutionresolution by by reconciling userreconciling user•• Message Message notifies of conflictnotifies of conflict
–– Choose to abort or resolve conflictsChoose to abort or resolve conflicts–– Followed by a resolution dialog boxFollowed by a resolution dialog box
User experience for conflict detectionUser experience for conflict detection
•• When reconcile is performed, 2 options for detecting conflicts:When reconcile is performed, 2 options for detecting conflicts:1.1. By object IDBy object ID
•• A feature is in conflict when 2 users edit any part of the same A feature is in conflict when 2 users edit any part of the same featurefeature
2.2. By attributeBy attribute•• A feature is in conflict only if 2 users edit the same attributeA feature is in conflict only if 2 users edit the same attribute
•• Provides ability to visualize & manage conflicts from Provides ability to visualize & manage conflicts from both the target & edit versionsboth the target & edit versions
–– Interactive dynamic display of each versionInteractive dynamic display of each version–– Common ancestor state is also viewableCommon ancestor state is also viewable
•• Enhances conflict resolution managementEnhances conflict resolution management•• Allows users to resolve geometry conflicts by merging Allows users to resolve geometry conflicts by merging
representations from both versionsrepresentations from both versions•• Applicable for editing large polyline & polygon featuresApplicable for editing large polyline & polygon features
–– E.g., water mains, coastlinesE.g., water mains, coastlines
•• SynchronizesSynchronizes current edit session with target versioncurrent edit session with target version–– Modifications saved to target; 2 versions now identicalModifications saved to target; 2 versions now identical–– Must be done in an edit sessionMust be done in an edit session–– Performed after reconciling with another versionPerformed after reconciling with another version–– CannotCannot be undonebe undone
•• ApplyingApplying changes to target versionchanges to target version–– Not necessary to post Not necessary to post –– optionaloptional
Versioned editing with move to baseVersioned editing with move to base
•• Versioned behavior if editing dataset in nonVersioned behavior if editing dataset in non--DEFAULTDEFAULT versionversion•• If editing If editing DEFAULTDEFAULT, edits are applied to base tables, edits are applied to base tables•• Suggested for nonSuggested for non--ESRI client interactionESRI client interaction•• Simple data onlySimple data only
•• IT integrationIT integration–– Uses DBMS behavior to enforce data integrityUses DBMS behavior to enforce data integrity–– Use geodatabase behavior for ArcGIS editingUse geodatabase behavior for ArcGIS editing
•• Versioning behavior on nonVersioning behavior on non--DEFAULT DEFAULT versionsversions–– Edits are stored in the delta tablesEdits are stored in the delta tables
•• No conflict detection on No conflict detection on DEFAULTDEFAULT–– Option: Use surrogate for conflicts before posting to Option: Use surrogate for conflicts before posting to DEFAULTDEFAULT
Save edit sessionSave edit session(edits now in base tables)(edits now in base tables)
A40
D40
ZIP_CODES
OID 11 OID 11 -- new feature, no attributenew feature, no attributeOID 5 OID 5 -- updated feature geometryupdated feature geometryOID 12 OID 12 -- new feature, new attributenew feature, new attribute