ArcGIS Server 10.7.1: What is the best practice to improve the performance of a versioned geodatabase feature class?

2222
15
10-12-2020 11:16 PM
JamalNUMAN
Legendary Contributor

ArcGIS Server 10.7.1: What is the best practice to improve the performance of a versioned geodatabase feature class?

 

I couldn’t figure out the best practice to improve the performance of a versioned geodatabase feature class.

----------------------------------------
Jamal Numan
Geomolg Geoportal for Spatial Information
Ramallah, West Bank, Palestine
15 Replies
Robert_LeClair
Esri Notable Contributor

Jamal - a lot of these workflows can be automated using a Python script associated with Task Scheduler in Windows.  I show my Versioning students this link - of course it's Python27 so you'd have to run the Analyze Tools for Pro GP tool to ensure it will work in AGP as the Python release is much different in AGP.

JamalNUMAN
Legendary Contributor

Thanks Robert.

 

Function wise:

 

Do compress and analyze tools improve view and edit performance?

Does rebuild indexes improve query performance?

----------------------------------------
Jamal Numan
Geomolg Geoportal for Spatial Information
Ramallah, West Bank, Palestine
Robert_LeClair
Esri Notable Contributor

Jamal - function wise deserves an explanation:

  1. The Compress GP tool does 2 things:  it deletes orphaned lineages of states (i.e. edits) that are left behind after a Reconcile operation.  These orphaned states may be seen in the States, States_Lineages, MVTables_Modified, and Delta tables.  Second, it moves edits common to all versions to the Business (or Base) table - this empties the Delta tables for all versioned or versioned with the move to base option to the Base/Business table so 3rd party applications can "see" the data.  As a result of this GP tool, one could say it improves view performance as the application does not have to traverse unnecessary records to show you the current view of a VERSION.  Every time a user does a pan, zoom in, zoom out, etc. - the versioning tables are all queried.  So fewer records in the versioning tables, faster query performance, faster display performance.
  2. Rebuild indexes rebuilds attribute and/or spatial grid indexes built by ArcGIS (i.e. ObjectID) and those built by the user.  Indexes are also rebuilt on repository tables owned by the SDE administrator that control versioned workflows.  Attribute indexes are just that - they optimize attribute queries.  Spatial grid indexes are used for draw performance in the map view.  Spatial grid indexes may get out of date over time due to large data loads that change the average size of the features, the number of features in the feature classes change over time and the coordinate system of the feature class.
  3. Analyze and Analyze Datasets rebuilds database statistics on feature classes/tables owned by the data owner as well as rebuilds statistics on the repository tables (owned by the SDE administrator).  These statistics can include business tables, feature tables (for SDEBINARY), rasters, delta tables and archive tables (for the archive class created when Archiving is enabled).  So again query performance here.

Hope this helps!

JamalNUMAN
Legendary Contributor

Thanks for the very useful input.

 

Is it correct to conclude this:

 

Compress tools helps improve the performance in viewing, display, and query

Rebuild indexes tool: helps improve the performance in querying

Analyze tool: helps improve the performance in querying

----------------------------------------
Jamal Numan
Geomolg Geoportal for Spatial Information
Ramallah, West Bank, Palestine
Robert_LeClair
Esri Notable Contributor

Yes, I'd say that's correct to conclude.

DavidHoy
Esri Contributor

Jamal NUMAN

Your original question was about improving the performance of a versioned feature class.

I would say that viewing, displaying and querying are ALL affected by the perfomance of the underlying SQL queries against the Enterprise Geodatabase. As such, reconcile, compress and index/statistics management will all help keep SQL queries optimized.

The display performance within a desktop client directly connecting to the geodatabase or a web services client (Browser or Pro or Mobile) accessing traditional Map/Feature Service - will also be affected by good configuration of the original resource that is published (Map Document or Pro Project) to ensure you are not drawing the feature at inappropriate scales or trying to return too many vertices, or using complex labelling or symbolization. These are all different performance improvements that may be required. You can use tools such as MXDPerfstat or PerfQAnalyzer to provide some guidance on these.