The Schneider Electric Delivery Services team holds large amounts of knowledge and experience around implementing ArcFM and Designer. A primary focus of each implementation is performance. The Delivery Services team uses its knowledge and experience to ensure each client experiences optimal performance. This paper offers some best practices for gaining the best performance possible in your ArcFM and Designer implementation.
General Performance Improvements
Many of the suggestions in this paper may suggest removing functionality that you frequently use. The point is to weigh the performance hit against the necessity of the functionality. This paper outlines some configurations and functionality that may slow performance. Identify the configurations that you may not necessarily need and remove them to improve performance.
In ArcMap, only add toolbars to the display if you use them. In testing, we observed the amount of time between when the user clicked the OK button on the login and when control was returned to the user. We tested using ArcGIS 10.2 SP1 and ArcFM 10.2. The time provided in the table below is the average of four times.
|Toolbars Displayed||Time to Load ArcMap|
|12 toolbars:||16.28 seconds|
|25 toolbars||25.94 seconds|
Retrieving feature data from the database takes time. If you're continually fetching data that doesn't change (e.g., landbase polygons), then performance will slow. Data that changes infrequently should be wrapped in a basemap layer in ArcMap or hosted in a cached map service in ArcGIS Server or ArcGIS Online. Any layers that don't often change are good candidates for the basemap layer, such as parcels, streetlines, buildings, map grids, etc. Esri offers documentation about basemaps: http://resources.arcgis.com/en/help/main/10.2/index.html#//00s500000017000000.
Compress the Database
Compress geodatabase on a regular basis. The frequency depends on a number of factors, including the size of the database and the number of versions. The greater the size of the database and number of version, the more frequently you should compress the database. Some utilities compress nightly, while others compress weekly. Failing to compress the database can cause navigating the map (pan and zoom) to slow.
Optimize for Editing or Drawing
When creating a map or stored display, first determine its function. Will you be using the stored display for editing or drawing? If your map or stored display will be used primarily for editing either in an ArcFM Server application or in ArcFM Desktop, be sure to keep it as simple as possible in order to get the best performance. Reduce the number of layers, annotation, labels, and leader lines. Keep the symbology simple.When you're editing, it is best to avoid scale suppression and include only the necessary layers all configured for the scale at which you're editing. If you edit at different scales, create a different stored display for each scale.Esri offers suggestions for optimizing and tuning your map. These suggestions will also improve performance of your stored displays:
- Optimizing map text and labels for performance
- Tips on improving map display performance
- Publishing map services
If your stored display will be used for drawing (e.g., plot maps or create a basemap), then feel free to use more elaborate symbology, labels, annotation, leader lines, etc. These things will create a more attractive map, but may slow performance of the stored display. When creating a map or stored display for drawing, fully implement scale suppression. This means you would have a number of layers that point to the same feature class and display at different scales.
The following trace options can slow electric, gas, and water traces. Determine whether these options are necessary for your environment:
- Draw Buffer: This option displays a buffer around the tracing results.
- Draw Individual Elements of Complex Edges: This option only impacts upstream traces (electric, gas, and water). When this option is enabled, a trace may return only a portion of a line. Consider, for example, a trace encounters a junction that stops the trace, but doesn't split the line. If this option is enabled, the trace will return only the section of the line up to the junction. If this option is disabled, the trace will return the entire line feature.
- Return Junctions: This option includes all junctions in the trace results.
We tested performance of these options using ArcFM 10.2.1. Performance numbers were averaged from traces on two different customer databases. Each ArcFM Electric Distribution trace was run with about 3000 features selected and the display scale set to approximately 1:900. The numbers below reflect average performance with each option enabled alone.
|Option Enabled||Time to Trace|
|Draw Buffer||182.27 seconds|
|Draw Individual Elements of Complex Edges||5.32 seconds|
|Return Junctions||4.66 seconds|
|No Options enabled||3.56 seconds|
Performance improvements to display redraw functionality will be available in the next ArcFM Solution release.
Esri Field Rules is a subset of Esri Rules. If both of these options are enabled, the Esri Field Rules are run redundantly. Enable only one of these options.
This applies to ArcGIS versions 10.0 and earlier.
Using a direct connection to login to the database will improve performance. Be sure to update all SDE connections to use direct connection and update all stored displays. If you're using ArcGIS version 10.1 or later, direct connection is the only recommended means to connect to a database.
**Once you've updated your connection strings to use direct connections, you will also need to run the Data Source Wizard and ensure the connection strings are direct connect.
Using ArcFM 10.0.1 and ArcGIS for Desktop 10.0 SP1 in a Windows 7 environment, we timed direct connections vs. non-direct connections from the time the user clicked OK on the login screen to the time the user regained control of the user interface. The direct connection consistently returned control to the user almost a second faster than the non-direct connection.
Original SDE login; no longer available post 10.1
Direct connection login
Data Source Wizard should use direct connection to ensure optimal performance of stored displays
Schneider Electric has made significant performance improvements in the 10.2.1 release. These changes have been ported back to specific versions. Currently Quality Improvement Patches (QIPs) are available for the following versions:
To download these QIPs, login to exchange and go the GIS Downloads space.
Introduced at version 10.2.1, Application Metrics captures usage information that helps Schneider Electric optimize performance for the most-used functionality. Application Metrics allow us to continually monitor usage anonymously and improve the customer experience with ArcFM and Designer. Schneider Electric strongly recommends enabling this optional setting. All data collected is anonymous. For more information about Application Metrics and how to enable it are available here: https://infrastructurecommunity.schneider-electric.com/docs/DOC-3024.
Below are tips for improving the performance of stored displays.
- Set reasonable scale suppression for all feature classes within the stored display.
- Include all related features and objects. If the related item is in the stored display, ArcMap has the information stored locally and does not need to continually return to the database to retrieve it. This only applies to features which are being edited. See ArcGIS Help 10.1 for more details.
- Avoid joins and relates.
- Avoid halos and masks.
- Avoid definition queries (if possible).
- Include network junctions and all features participating in the geometric network if the stored display will be used for editing features that participate in the geometric network.
- Remove any unnecessary feature classes from the stored display. Organize stored displays based on the type of work being accomplished.
- Avoid intermediate tables in 1:1 and 1:M relationships. Instead, store the foreign key in the child/destination object class.
Below are tips for improving the usability of stored displays
- Organize the stored display in the following order (from top to bottom): annotation, point features, lines, polygons. Keeping polygons at the bottom of the list ensures they don’t cover up other features on the map.
- Alphabetize layers within group layers and after organizing by as outlined in the previous tip. This will make it easier and faster for users to find layers.
- Use Group Layers to logically group layers. This allows users to easily turn on and off groups of data.
- Reorder attributes for optimal usability. Using ArcCatalog, move required attributes to the top and group attributes logically.
- Rename the data frame to match the name of the stored display. This makes it easy to see which stored display you have currently selected.
- Make landbase layers unselectable in the Selection Tab of the Table of Contents for stored displays that will not be used for landbase edits. This ensures a user doesn’t inadvertently move or delete a landbase feature.