To continue the Maximizing GIS Performance series, this month’s installment will explain the remaining common optimization tasks in more detail:
The purpose, frequency, and benefits will be described to better understand the role each task plays in the system maintenance and performance optimization process.
Purpose: The Add & Delete (A&D) Table Statistics Report is a report that graphically shows the table counts for all A&D tables in the geodatabase that are above a configured threshold.
Benefits: This report explains trends in system performance and can be used to diagnose problems in the geodatabase. It is most often deployed as a web module available to administrators.
Purpose: The batch database indexing and statistics application rebuilds the indices and updates the statistics for all GIS tables to improve performance.
Benefits: Database management systems (DBMS's) determine the most efficient way to execute the queries sent to them based on database statistics. Therefore, for optimal performance of datasets created within an ArcSDE geodatabase, you need to keep the statistics current by frequently updating the database statistics.
Purpose: The Session Aging Report is a report that details out all outstanding sessions in the database organized by the number of days the sessions have been in progress.
Benefits: This is an important report for GIS management because performance will decrease as the number of sessions/designs in the system goes up. GIS management can use this report to see how long various sessions/designs have been sitting in their current status for a specified length of time. If a work request with a design version is found to have been sitting in the early design statues for too long, GIS management can contact engineering to see if that work request should be closed out or if it will be worked at some point in the future.
Purpose: The Permissions Report details out each of the database edit/view roles and provide a list of users that have that role. Alternatively it can be configured to report on the delta changes from month to month.
Benefits: This report is used by management to review security access to the geodatabase.
Purpose: Most often GIS implementations must maintain interfaces to many other enterprise systems. The batch system interface application checks a configuration file for the specific interfaces that will be executed. Each interface is run, the results logged, and any errors sent to a list of configured parties.
For example, a CIS tracks attribute information for every site where services are installed. This information includes address and location information. The CIS contains transaction tables that accumulate changes to this site information during the day. Then, each night the transactions are moved from the CIS transaction table into the GIS Interface CIS Site table which contains current data for all CIS Site records. This information is then utilized within the GIS for querying, validation, reporting, and analysis.
Benefits: The batch system interface keeps the GIS synchronized with other enterprise systems.
Purpose: When developing ASP.Net applications the developer should use standard .Net controls to gather user input. In following standard .Net development concepts, these controls should be data-bound directly to a lookup table in the database. Unfortunately, Esri stores its domain values in a binary format that cannot be directly bound to standard COM or .Net controls. So, this domain synchronization application has been written to synchronize configured Esri domains into standard flat database tables on a nightly basis.
In addition, Esri coded-value domains are not sorted in ArcGIS which results in inefficient editing by GIS Users. So, this domain sorting application has been written to sort coded-value domain descriptions. The application looks for a configuration file that lists the coded-value domains in the geodatabase to be sorted by the description field. For each coded-value domain listed the application updates the domain with sorted descriptions and associated codes.
Benefits: Synchronization of Esri domains to flat database tables supports ASP.Net development best practices by enabling user input controls to be data-bound directly to a lookup table in the database. Sorting of Esri coded-value domains description values improves the efficiency of GIS Users that regularly work with domain lists that contain several unsorted description values.
This concludes the Maximizing GIS Performance in Your Sleep series. If you happen to be attending EGUG 2011 this paper will be presented on Tuesday, October 11th at 10:25am under the Leading Edge Applications of GIS track. I look forward to seeing you there and answering any questions you may have.