ArcGIS Enterprise Performance and Scalability Best Practices. Andrew Sakowicz

Similar documents
Esri Best Practices: Tuning, Testing, and Monitoring. Andrew Sakowicz, Frank Pizzi,

Performance and Scalability: Tuning, Testing, and Monitoring

ArcGIS Enterprise: Performance and Scalability Best Practices. Darren Baird, PE, Esri

ArcGIS Enterprise Systems: Performance and Scalability

Get a Second Opinion: Enterprise GIS Health Checks. David Crosby Esri Southeast Regional Professional Services Charlotte, NC

ArcGIS Enterprise: Architecture & Deployment. Anthony Myers

ArcGIS Enterprise Systems: Performance and Scalability

Real-Time & Big Data GIS: Best Practices. Suzanne Foss Josh Joyner

ArcGIS Enterprise: Advanced Topics in Administration. Thomas Edghill & Moginraj Mohandas

Introduction to Your First ArcGIS Enterprise Deployment. Thomas Edghill & Jonathan Quinn

Working with Feature Layers. Russell Brennan Gary MacDougall

Creating Geoprocessing Services and Web Tools. Darren Baird, PE, Esri

ArcGIS Enterprise Systems: Performance and Scalability - Testing Methodologies

High Availability & Disaster Recovery. Witt Mathot

Administering Your ArcGIS Enterprise Portal Bill Major Craig Cleveland

ArcGIS Enterprise Security: An Introduction. Randall Williams Esri PSIRT

ArcGIS Enterprise: Architecting Your Deployment

Optimizing GIS Services: Scalability & Performance. Firdaus Asri

ArcGIS for Server: Optimizing Performance and Scalability

ArcGIS Runtime SDKs Building Offline Apps. Nick Furness

Data Store Management Best Practices. Bill Major Laurence Clinton

Configuring, Tuning and Managing ArcGIS Server. Dan O Leary James Cardona Owen Evans

Troubleshooting Performance Issues with Enterprise Geodatabases. Ben Lin, Nana Dei, Jim McAbee

ArcGIS Server Performance and Scalability : Optimizing GIS Services

ArcGIS Enterprise: An Introduction. Philip Heede

Sharing Web Layers and Services in the ArcGIS Platform. Melanie Summers and Ty Fitzpatrick

Collector for ArcGIS: What s New. Chris LeSueur & James Tedrick

ArcGIS Server Architecture Considerations. Andrew Sakowicz

ArcGIS Enterprise Security: An Introduction. Gregory Ponto & Jeff Smith

High Availability and Disaster Recovery. Cherry Lin, Jonathan Quinn

Scientific and Multidimensional Raster Support in ArcGIS

Python: Beyond the Basics. Brittney White

Architecting ArcGIS Server Solutions for Performance and Scalability

An Introduction to Using Lidar with ArcGIS and 3D Analyst

System Design and Tuning

Introducing Survey123 For ArcGIS

S s y t s em e s s Ar A ch c i h tec e t c ur u e e De D s e i s gn g, n C o C n o f n igu g r u at a ion o, n a n a d n D p e l p oy o m y en e t

ArcGIS for Server Administration. Andrew Sakowicz

The Cloud's Cutting Edge: ArcGIS for Server Use Cases for Amazon Web Services. David Cordes David McGuire Jim Herries Sridhar Karra

Introduction to ArcGIS Server Architecture and Services. Amr Wahba

Application of GIS to Cybersecurity. Brian Biesecker Ken Mitchell

Survey123 for ArcGIS: An Introduction. James Tedrick Erin Densford

Cloud Operations Using Microsoft Azure. Nikhil Shampur

Improve Web Application Performance with Zend Platform

Best Practices for Designing Effective Map Services

Configuring ArcGIS Enterprise in Disconnected Environments

ArcGIS Enterprise Security: Advanced. Gregory Ponto & Jeff Smith

ArcGIS Enterprise: Configuring Backups, Disaster Recovery, and Replication. Harrold Sompotan and Patrick Jackson

ArcGIS Online: Best Practices for High-Demand Web Applications. Kelly Gerrow-Wilcox Bonnie Stayer Beth Romero

Learning What s New in ArcGIS 10.1 for Server: Administration

ArcGIS Online. The Road Ahead Geoff Mortson

Implementing a Hybrid Approach to ArcGIS. Philip McNeilly and Margaret Jen

ERDAS APOLLO PERFORMANCE BENCHMARK ECW DELIVERY PERFORMANCE OF ERDAS APOLLO VERSUS ESRI ARCGIS FOR SERVER

ArcGIS Enterprise: Portal Administration BILL MAJOR CRAIG CLEVELAND

ArcGIS GeoEvent Server: Leveraging Stream Services. Ken Gorton RJ Sunderman

Extending ArcGIS for Server. Jon Satchwell, Esri Switzerland Cédric Despierre Corporon, Esri France

Real-Time & Big Data GIS: Leveraging the spatiotemporal big data store

ArcGIS in the Cloud. Andrew Sakowicz & Alec Walker

Overview of Server Technologies. Katja Krivoruchko ESRI

Copyright 2018, Oracle and/or its affiliates. All rights reserved.

Performance & Scalability Testing in Virtual Environment Hemant Gaidhani, Senior Technical Marketing Manager, VMware

Developing Qt Apps with the Runtime SDK

Design a Geodatabase. Rasu Muthurakku, Enterprise Solutions Architect / Consultant

ArcGIS Enterprise: An Introduction. David Thom Solution Engineer State Government

Real-Time & Big Data GIS: Best Practices. Josh Joyner Adam Mollenkopf

Sage 300 ERP. Compatibility Guide Version Revised: Oct 1, Version 6.0 Compatibility Guide i

Python: Beyond the Basics. Brittney White, Esri Jordan Douthitt, Pennsylvania State University

ArcGIS GeoEvent Server: Making 3D Scenes Come Alive with Real-Time Data

Android Team Awareness Kit (ATAK) and ArcGIS

IBM InfoSphere Streams v4.0 Performance Best Practices

ArcGIS Online: Three-and-a-Half Ways to Create Tile Layers. Eric Anderson & Adam Eversole Esri Support Services

Network Analysis with ArcGIS Online and On-premise Services

Web AppBuilder Presented by

Editing Versioned Geodatabases : An Introduction

ArcGIS for Server Michele Lundeen

Getting Started with ArcGIS for Server. Charmel Menzel and Ken Gorton

ArcGIS for Server: What s New. Philip Heede, Jay Theodore

Copyright 2009 by Scholastic Inc. All rights reserved. Published by Scholastic Inc. PDF0090 (PDF)

Designing and Using Cached Map Services

ArcGIS Enterprise: Sharing Imagery. Zikang Zhou Imagery and Raster team

Desktop. ArcGIS Server. ArcGIS

Using ArcGIS for Server. Javier Abadía, Esri España Peter McDaid, Esri UK

Building Java Apps with ArcGIS Runtime SDK

Deploying and Using ArcGIS Enterprise in the Cloud. Bill Major

Sage Compatibility guide. Last revised: August 20, 2018

Web Server (IIS 6) ArcGIS Server 9.1. ArcGIS Server 9.1 Server Object Manager. Server Object Container

ArcGIS Runtime SDK for Qt: Building Apps. Koushik Hajra and Lucas Danzinger

JANUARY Migrating standalone ArcGIS Server to ArcGIS Enterprise

Performance Evaluation of Virtualization Technologies

Getting Started with ArcGIS Runtime. Jeff Shaner David Cardella

Building Applications with the ArcGIS Runtime SDK for WPF

Sage ERP Accpac. Compatibility Guide Version 6.0. Revised: November 18, 2010

ArcGIS Enterprise Extending Services. Bill Major

Developing and Sustaining your Enterprise GIS Design

Sage ERP Accpac. Compatibility Guide Version 6.0. Revised: February 2, Version 6.0 Compatibility Guide

An Introduction to GIS for developers

Milestone Solution Partner IT Infrastructure Components Certification Report

Getting Started with ArcGIS Runtime SDK for Qt. Thomas Dunn & Nandini Rao

Architect your deployment using Chef

SERVER GIS: HIGH PERFORMANCE DELIVERED!

Transcription:

ArcGIS Enterprise Performance and Scalability Best Practices Andrew Sakowicz

Agenda Definitions Design workload separation Provide adequate infrastructure capacity Configure Tune Test Monitor

Definitions

Performance Speed, e.g. response time (seconds)

Scalability The ability to increase output and maintain acceptable performance

Capacity The maximum level of output the system can produce, e.g. X cars/sec X maps/sec At capacity Over capacity

Capacity User load Throughput(req/hr) CPU Utilization (%) Network used (Mbps) Response Time (sec) Capacity (~ 85% utilization) Memory used (Mb) Content length (bytes) Time

Process, Tools, Value

Process and tools Esri tools

Tools download location ArcGIS Monitor - https://my.esri.com/ Others - http://www.arcgis.com - owner:enterpriseimp - Show ArcGIS Desktop Content

Enterprise Implementation Maturity Model Level Architectural Design and Capacity Planning Performance and Scalability Testing Monitoring Trend Analysis and Quantification 0 No No No No 1 Yes No No No 2 Yes Yes No No 3 Yes Yes Yes No 4 Yes Yes Yes Yes

Design workload separation

ArcGIS Server sites Web Adaptor Pre-planning is important Isolate hosting server site from traditional GIS Server duties Have dedicated GIS Server sites for various purposes: heavily used map services, geoprocessing services, Portal for ArcGIS Hosting Server ArcGIS Server GeoEvent Server ArcGIS Data Store (relational + tile cache)

Provide adequate infrastructure capacity

Provide sufficient hardware resources Most systems are CPU bound GIS Systems are bound by: 1. CPU - typically 2. Memory when large number of services 3. Disk Image Service, Synchronization 4. Network low bandwidth deployment 5. Poorly configured virtualization can result in 30% or higher performance degradation Most well-configured and tuned GIS systems are CPU bound.

Infrastructure Memory requirements Item Low High ArcSOC Map 50 MB 500 MB ArcSOC Image 20 MB 1,024 MB ArcSOC GP 100 MB 2,000 MB XenApp Session 500 MB 1.2 GB Database Session 10 MB 75 MB Database Cache 200 MB 200 GB Wide ranges of memory consumptions

Server CPU Spec Performance is impacted by SPEC Rate Per Core Scalability is impacted by number of cores and SPEC Rate Per Core

Network Planning Establish and Configure DNS Appropriately! Trace Route: LA Workstation Phoenix DNS LA Database Server

VM watch out for overallocations 88/314=0.28 cpu/vm 92/176=0.52 cpu/vm 119722 vmotion Migrations

Scaling Direction Scaling up - Adding resources to your existing machine - Usually RAM - Commonly, due to lots of service instances Scaling out - Add more machines - Usually to get more compute power, sometimes for high availability - Commonly, due to increased user demand

Configure

File Geodatabase Local file geodatabase data - Better than shapefiles - Fastest - Scales with hardware - Best with static data - Make your FGDB read-only

Enterprise Geodatabase Enterprise Geodatabase - Fast - Live data - Requires database expert - Traditional Versioning - - fine for desktop editing, may be problematic for server Branch Versioning - New with Pro 2.1 and Enterprise 10.6. Not supported with ArcMap. - Designed for better scalability with many concurrent users and a web editing model Keep statistics up-to-date Index fields that will be queried

Configure Web Map Cache and generalize data Use generalized data if applicable Cache (tiles) may reduce the amount of traffic Large amounts of data can be slow and overwhelming - Aggregate data using smart mapping - on-the-fly generalization and smaller data transfer (quantization)

Consolidate and reduce number of services Common setup today: Enterprise portal GIS Server Web Layer GIS Service Web Layer GIS Service Web Layer GIS Service Data Store Dataset

Consolidate and reduce number of services More efficient: consolidate layers with like security into a single service Enterprise portal GIS Server Data Store GIS Service Dataset Web Layer Web Layer Web Layer

Consolidate and reduce number of services Enterprise portal GIS Server Data Store Wells Wells Active Wells Proposed Wells Wells by Status

Configure login for your Enterprise portal Login settings - Identity and group stores can affect login performance significantly - Example: Active Directory where users are in many groups can affect performance (newer releases handle this better)

Configure ArcGIS Server- instance tuning For predictable performance use min = max Default is min = 1, max = 2. Consider changing this! Allocate required swap space/page file Cached service : set max = 1 to conserve memory. Individual tile requests not serviced by the SOC process.

New ArcGIS Server 10.7 shared instances Recommended for services that receive infrequent requests, particularly when the server site hosts many services Pool of processes supporting multiple services Conserves memory Currently supports only map services published from ArcGIS Pro

Use Case: Implementing ArcSOC Optimizer at ExxonMobil

ArcSOC Optimizer is an ArcGIS Monitor extension Decrease or increase instances, based on: 1. historical usage 2. available memory and process count

ArcSOC Optimizer 30 day decreases instances 1 day increases instances

The Issue What - ArcGIS Server instability & frequent outages Why - Rapid growth of WebGIS - Time required to increase server capacity - Manual adjustment of ArcSOC processes The bottom line - Reactive & unsustainable service management paradigm - Unhappy WebGIS users

Results & Benefits Initial run Significant reduction of total number of SOCs Increase in free memory Identification of over utilized services Orange total SOCs, Green free memory Blue change in SOCs for individual services

Results & Benefits - The results speak for themselves - Vastly improved stability of ArcGIS Server - Improved response times of services - Staff time freed for other activities - Happy WebGIS users!!!

Tune

Tuning methodology Profile each tier starting from the top Total Response Time (t1-t2) Browser t1 Web Server t2 Wait Time ArcGIS Server Usage Time ArcSOC Search & Retrieval Time ArcSDE/DBMS

Fiddler Fiddler measurement approximately 5.2 seconds

Mxdperfstat http://www.arcgis.com/home/item.html?id=a269d03aa1c840638680e2902dadecac

Oracle Trace Compare elapsed time Elapsed time slightly changed due to different test runs

Oracle Execution plan Inefficient spatial index

Test

Testing Objectives - Meet Service-Level Agreement (SLA) - Bottlenecks analysis - Capacity planning - Benchmarking different alternatives

Testing process Application GIS Services Infrastructure: Hardware and Software

System Test for Web GIS Test Automation ArcGIS Services - Mapping - Feature Service - OGC - Geocoding - Image Service - Network Analyst - Geoprocessing - Tile Cache Application GIS Services Infrastructure Application Testing Discipline relevant report

Web test tools feature comparison Tool Cost Learning Curve OS Metrics GIS Data Generation GIS Test Automation Load Runner High High Windows/Linux No No Visual Studio Medium High Windows No No JMeter Free High Requires additional plugin No No System Test Free Low Windows/Linux Yes Yes

System Test for Web

System Test for Web

Monitor

ArcGIS Monitor Demo Site https://arcgismonitor.esri.com/

Root Cause Analysis (RCA) Source - the most downstream failing component Impact all upstream failing components Web Adaptor Web Adaptor Impact Impact Portal for ArcGIS Portal for ArcGIS ArcGIS Server Hosting Server GeoEvent Server Source ArcGIS Server Hosting Server GeoEvent Server Source ArcGIS Data Store (relational + tile cache) ArcGIS Data Store (relational + tile cache) Example 1 Example 2

Overloaded system Load exceeds the designed capacity Source Impact

Example: ArcGIS Monitor usage spike Throughput (tr/s)

Bottleneck Source Impact

Example: ArcGIS Monitor free instances = 0 Bottleneck are often created by increased load

Unstable Infrastructure Interruption to the underlying resources Source Impact

Example: ArcGIS Monitor CPU spike by unexpected process e.g. virous scan

Example: ArcGIS Monitor CPU Portal for ArcGIS Server service stopped

Example: ArcGIS Monitor CPU ArcGIS Server machine rebooted

Example: ArcGIS Monitor CPU Database not running

Summary Design workload separation Provide adequate infrastructure capacity Configure Tune Test Monitor

Print Your Certificate of Attendance Print Stations Located at L Street Bridge Tuesday 12:30 pm 6:30 pm GIS Solutions Expo Hall D Wednesday 10:45 am 5:15 pm GIS Solutions Expo Hall D 5:15 pm 6:30 pm GIS Solutions Expo Social Hall D 6:30 pm 9:00 pm Networking Reception National Museum of Natural History

Please Take Our Survey on the App Download the Esri Events app and find your event Select the session you attended Scroll down to find the feedback section Complete answers and select Submit