Software Performance (CPT Demos) 40th Edition

Arc17CapacityPlanning0701

This section shares lessons learned about selecting and building effective GIS design solutions that satisfy operational performance and scalability needs. Software technology allows us to model our work processes, and provide these models to computers to optimize user workflow performance. The complexity of these models, the functions selected to generate our display, the complexity of the data source, and how application functions are orchestrated to analyze and present information processing needs all have a significant impact on computer system workload and subsequent performance and scalability.

Workflow description is retained in a workflow recipe. Performance factors used to generate the workflow recipe include the following:
 * Software
 * Desktop (ArcMap or Pro)
 * Graphics
 * Density/Portal
 * Complexity
 * %DataCache
 * Resolution
 * Output
 * +MapCache

Proper workflow selection establishes the foundation for a successful system architecture design. 

Software technology category
The GIS software technology categories selection establishes a filter for listing the software pattern selections. Figure A-3.2 shows the CPT Calculator Software technology category dropdown list located in cell E2 providing a list of the available software technology category selections. Your Software technology category selection establishes the software dropdown selection list available in cell E3. 
 * Selection picks from a list of CPT Calculator software technology categories.
 * Selection establishes the software dropdown list selections available in cell E3.

Software technology pattern
The GIS software technology patterns were introduced in Chapter 2. The CPT Calculator can generate workflow processing loads from a variety of software technology patterns. Figure A-3.3 shows the CPT Calculator Software dropdown list located in cell E3 providing a list of the available software technology selections. Your Software technology selection identifies the baseline used for generating the selected workflow processing loads.
 * Selection picks from a list of the most common user workflows.
 * Selection identifies the software technology pattern.
 * Software nickname is included in the workflow recipe.



ArcGIS Desktop selection
Figure A-3.4 shows the CPT Calculator Desktop selection in cell G3. The selection options are ArcMap or Pro. The selection choice is included in the Workflow recipe. 
 * Selection applies to ArcGIS Desktop workflows.
 * Selection identifies which ArcGIS Desktop application (ArcMap or Pro) is being used to support the workflow.

ArcGIS imagery selection
Figure A-3.5 shows the CPT Calculator Imagery workflow selection in cell E3. 
 * Selection applies to ArcGIS Desktop imagery workflows and ArcGIS Server image services.
 * Raster Image density must be selected in cell I3 for all Imagery workflows.
 * Imagery data format is selected in cell J6. When selecting an Imagery workflow, cell J6 will provide a list of available Imagery data formats.
 * Mosaic/Raster dataset metadata search engine host location (FGDB or DBMS) is selected in cell A11.

Display Graphics selection
Figure A-3.6 shows the CPT Calculator Graphics selection in cell H3. The Graphics selection (2D or 3D) modifies workflow traffic and rendering time processing loads. Traffic load increases when 3D display is generated on a terminal server platform. Client application service times increase to support 3D rendering (dynamic 3D rendering is generated by the client application based on display feature attributes). 

ArcGIS density/portal selection
Figure A-3.7 shows the CPT Calculator Density/Portal selection in cell I3. The selection choice is included in the Workflow recipe (V for Vector Only and R for Raster Image, include Portal “P” when services are registered with a Portal Web server). 
 * Selection applies to all workflows.
 * Raster image should be selected when imagery layer is included in the display.
 * JPEG is the default output format for raster image selection.
 * PNG24 is the default output format for vector only selection.
 * Portal selections should be used for services registered with a Portal for ArcGIS server.

Portal for ArcGIS registered workflows
Portal for ArcGIS provides a collaborative content management system that organizations can deploy in their own infrastructure (on premises or in a private cloud). Portal establishes a common reference location for self-service ArcGIS services management and collaboration throughout the organization.

Portal selections (VPortal and RPortal) identify workflow density for hosted ArcGIS Server workflows registered with Portal, and these workflows include increased service time on the Web service component for Portal content management processing along with the GIS Server processing loads.

A majority of Portal operations include creating Web Maps and/or adding services to the site, actions which establish registered services with the Portal for ArcGIS site. Portal can also be used for feature data collection and publishing/editing feature services stored in the ArcGIS Data Store. Portal Web Maps that include services from external Internet sources should use the Portal workflow (no internal hosted service loads). Internal registered services should use portal in the Density/Portal selection for creating the portal loads. 

Display complexity selection
Figure A-3.8 shows the CPT Calculator workflow complexity selection in cell E6. Map complexity setting is identified in the workflow recipe. Workflow service time adjustments are applied to the application and database service times.

Workflow complexity directly impacts display performance and system cost. CPT Calculator was used to generate results for an AGS REST 2D V 100%Dyn 13x7 PNG24 workflow supporting 100,000 TPH throughput ArcGIS Server site deployed on a single tier 4-core Arc15 baseline 4-core servers and a small file geodatabase data source: 
 * Medium complexity requires two 4-core servers with local response time of 0.26 sec.
 * Light complexity requires one 4-core server with a local response time of 0.16 sec.
 * Heavy complexity requires two 4-core servers with a local response time of 0.44 sec.
 * 3x Medium complexity requires four 4-core servers with a local response time of 0.82 sec.
 * 5x Medium complexity requires six 4-core servers with a local response time of 1.55 sec.
 * 10x Medium complexity requires twelve 4-core servers with a local response time of 3.01 sec.

ArcGIS percent data cache (%DataCache) selection
Figure A-3.9 shows the CPT Calculator %DataCache selection in cell F6. The percent dynamic is calculated (1-%DataCache) and the %Dyn percentage is included in the Workflow recipe.  
 * %DataCache selection is included to highlight the advantage of cached map services.
 * Selection identifies the percent of dynamic map layers (processing time) that will be pre-processed and included in a map cache when publishing the service.
 * MapCache service tiles can be included with the workflow using the +mapcache selection.
 * Workflow recipe identifies the percent of dynamic layers (processing time) remaining in the display.
 * Includes capability to enter any percentage for Map Cache selection.

Resolution selection
Figure A-3.10 shows the CPT Calculator resolution selection in cell G6. Selection is included in the workflow recipe in hundreds of pixels. Select a resolution that best matches the average map size of your published service. The map resolution rendered by the published map service is often determined by the size of the client map display.
 * DeskDefault 1920x1080 map size selection.
 * WebDefault 1366x768 map size selection.
 * 256x256 map cache selection.
 * 400x300 very small mobile phone selection.
 * >Comparison of high-definition smartphone displays


 * 600x400 optimum performance web map size (half HTML page display).
 * 1366x768 tablet, rich Internet application large device format.
 * 1920x1080 Workstation, high resolution ArcMap client.
 * 2560x1600 Very high resolution client.

Custom resolution settings can be entered in cells J3:K3. 
 * Display traffic is adjusted proportional to the number of pixels in the display.
 * Service time is adjusted by 25 percent of the display pixel variation.

Output selection
Figure A-3.11 shows the CPT Calculator output selection in cell H6. Output selection makes a difference in both traffic and processing loads. Select an output that matches your published service. 
 * Default JPEG for outputs with raster imagery layer
 * JPEG is opaque—suitable for base layer only
 * Default PNG24 for vector-only map layers
 * PNG supports transparency overlays, good for business layers
 * PNG8 compresses best
 * PNG32 best color spectrum
 * PDF good for local printing
 * Feature used for simple editing of business layers
 * Minimize feature layers in mash-up to keep traffic loads reasonable.
 * Use image layers for basemap and non-edited business layers.
 * Feature also used for desktop workflows, high-traffic loads
 * ICA used for Citrix WTS terminal client traffic

Vector storage format selection
Figure A-3.12 shows the CPT Calculator data source selection in cell J6. GIS workflow application service time and traffic adjustments are made as shown in the data source adjustment table based on the data source selection.

Selection provides a dropdown list of standard GIS vector data sources. 
 * SDE DBMS (SDE geodatabase) is the primary baseline workflow selection.
 * Versioned SDE geodatabase used for maintenance workflows.
 * Simple feature SDE geodatabase for replicated read-only publication database.
 * Use SDE DBMS selection for ArcGIS Data Store Portal feature service datasets.
 * File geodatabase is good for single-server publication data source.
 * Shapefile performance overhead scales with size of data—not recommended for multi-user environments.

Imagery storage format selection
Figure A-3.13 shows the CPT Calculator imagery data source selections in cell J6. GIS workflow application service time and traffic adjustments are made as shown in the data source adjustment table based on the data source selection.
 * Imagery data format selection depends on a variety of business factors.
 * SDE raster dataset is no longer recommended as the optimum storage format.
 * Mosaic dataset provides optimum data management and performance.
 * CPT provides preliminary performance expectations for imagery data format selection.

"Note: Additional information on imagery management strategies is provided in Lesson 4: GIS data administration." 

Standard workflow selections
Standard Workflows included on the CPT Workflow tab were introduced in Chapter 2. Figure A-3.14 shows how you can select project workflows or standard workflows at the bottom of the Calculator input display.
 * Select Workflow tab in cell D30.
 * Select desired workflow from cell E30.

ArcGIS Server Standard workflow selections
 * AGS REST Light dynamic: Good for simple business layer map services.
 * AGS REST Medium dynamic: Good for most web mapping services deployment.
 * AGS REST Medium 40 percent dynamic $$: Good for web mapping services with cached basemap.
 * AGS REST Medium 20 percent dynamic $$: Candidate for simple web editing with focused business layers and cached basemap.
 * AGS Full MapCache Service: Great for high-performance cached web map or imagery services.

"Best Practice: Optimum complexity settings generate reasonable system design performance targets. "

"Warning: Workflow complexity established too high during design will generate inflated hardware and licensing cost estimates."

"Workflow complexity established too low during design can increase deployment risk. "

Medium complexity workflows will satisfy most standard web mapping deployment needs. 

Custom workflow processing loads
Figure A-3.15 shows the calculations made by the CPT Calculator in generating adjusted custom workflow loads. CPT Calculator workflows are generated from performance benchmark baselines.

Starting point
 * Software pattern selection: Establishes baseline workflow processing load and display traffic.

First adjustment
 * Desktop application selection: Identifies ArcGIS Desktop application selection.

Additional selection impact on workflow loads <br style="clear: both" />
 * Display complexity: Adjust map processing loads (Client Wkstn, Citrix, SOC, DS, DBMS).
 * Percent data cache (Dynamic): Adjust map processing loads (Client Wkstn, Citrix, SOC, DS, DBMS).
 * Display resolution: Adjust traffic and map processing loads (Client Wkstn, Citrix, SOC, DS, DBMS).
 * Graphics: Adjust traffic and processing loads for 3D displays.
 * Data density/portal: Adjust traffic and processing loads (Client Wkstn, Citrix, SOC, DS, DBMS).
 * Output format: Adjust traffic and processing loads (web, SOC).
 * +MapCache: Includes average display cached tile downloads in display traffic.

Figure A-3.16 shows where the CPT Calculator workflow service times show up on the Workflow tab. Calculator workflows provide a source for both standard and custom workflow performance targets.

Calculator workflows are copied to the CPT Workflow tab to include in project workflows.
 * Standard Workflows are pre-generated from the CPT Calculator and provided on the Workflow tab.
 * You can use the Excel Copy/paste values function to include custom workflows in Project Workflow list.

"Best Practice: Software technology baseline service time, traffic loads, and relative performance adjustments are derived from test benchmarks. " <br style="clear: both" />

Project Workflow assignment (Custom Workflows)
The CPT Calculator tab is a primary source for generating workflow performance targets stored on the CPT Workflow tab. Workflow performance targets are generated from a WFBaseline lookup table modified by software technology performance factors configured in the CPT Calculator tab. Workflows configured on the CPT Calculator tab are displayed in the Calculator Workflows section on the Workflow tab. Figure A-3.17 shows how to include a copy of a custom workflow generated by the CPT Calculator tab to your Project Workflow section.

Calculator Workflows identified on the CPT Workflow tab represent the current workflow selection configured on the CPT Calculator tab. The following procedure can be used to select a Calculator Workflow and use the paste special values function to include a copy in your Project Workflow section. "Warning: DO NOT copy the Calculator Workflow row and insert copied cells as a new row in your Project Workflows. If you do this, the new Project Workflow row will have blue cells and not reference the proper values.  Delete the row to recover your Project Workflows and follow proper procedures above."
 * Select a Project or Standard workflow on the Workflow tab and insert copied cells into your Project Workflow section. This workflow will provide a template for entering the new Calculator Workflow values.
 * Select and Copy the blue cells (cells from column A through N in the Calculator Workflow section).
 * Select cell in column A of your template workflow, and paste special values (Paste 123) to insert the new Calculator Workflow performance targets.
 * Select workflow name in column A and add nickname (WebLite_) followed by an underscore to the new Project Workflow name.

Once you have added the new Custom Workflow to your Project Workflow section, and included a nickname to make the workflow name unique, you are ready to use the new workflow in your CPT Design.

CPT Capacity Planning videos

 * Chapter 3 video shows how to create custom workflows on the CPT Calculator tab and then move these workflows to your Project Workflow section on the Workflow tab for use in your design.

The next section will take a closer look at ArcGIS Server software performance.

Page Footer Specific license terms for this content System Design Strategies 26th edition - An Esri ® Technical Reference  Document • 2009 (final PDF release)