System Architecture Design Strategies Student Edition
Copyright 2015 Esri All rights reserved. Course version 3.0. Version release date July 2015. Printed in the United States of America. The information contained in this document is the exclusive property of Esri. This work is protected under United States copyright law and other international copyright treaties and conventions. No part of this work may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying and recording, or by any information storage or retrieval system, except as expressly permitted in writing by Esri. All requests should be sent to Attention: Contracts and Legal Services Manager, Esri, 380 New York Street, Redlands, CA 92373-8100 USA. EXPORT NOTICE: Use of these Materials is subject to U.S. export control laws and regulations including the U.S. Department of Commerce Export Administration Regulations (EAR). Diversion of these Materials contrary to U.S. law is prohibited. The information contained in this document is subject to change without notice. US Government Restricted/Limited Rights Any software, documentation, and/or data delivered hereunder is subject to the terms of the License Agreement. The commercial license rights in the License Agreement strictly govern Licensee's use, reproduction, or disclosure of the software, data, and documentation. In no event shall the US Government acquire greater than RESTRICTED/ LIMITED RIGHTS. At a minimum, use, duplication, or disclosure by the US Government is subject to restrictions as set forth in FAR 52.227-14 Alternates I, II, and III (DEC 2007); FAR 52.227-19(b) (DEC 2007) and/or FAR 12.211/ 12.212 (Commercial Technical Data/Computer Software); and DFARS 252.227-7015 (DEC 2011) (Technical Data - Commercial Items) and/or DFARS 227.7202 (Commercial Computer Software and Commercial Computer Software Documentation), as applicable. Contractor/Manufacturer is Esri, 380 New York Street, Redlands, CA 92373-8100, USA. @esri.com, 3D Analyst, ACORN, Address Coder, ADF, AML, ArcAtlas, ArcCAD, ArcCatalog, ArcCOGO, ArcData, ArcDoc, ArcEdit, ArcEditor, ArcEurope, ArcExplorer, ArcExpress, ArcGIS, ArcGlobe, ArcGrid, ArcIMS, ARC/INFO, ArcInfo, ArcInfo Librarian, ArcLessons, ArcLocation, ArcLogistics, ArcMap, ArcNetwork, ArcNews, ArcObjects, ArcOpen, ArcPad, ArcPlot, ArcPress, ArcPy, ArcReader, ArcScan, ArcScene, ArcSchool, ArcScripts, ArcSDE, ArcSdl, ArcSketch, ArcStorm, ArcSurvey, ArcTIN, ArcToolbox, ArcTools, ArcUSA, ArcUser, ArcView, ArcVoyager, ArcWatch, ArcWeb, ArcWorld, ArcXML, Atlas GIS, AtlasWare, Avenue, BAO, Business Analyst, Business Analyst Online, BusinessMAP, CityEngine, CommunityInfo, Database Integrator, DBI Kit, EDN, Esri, Esri Team GIS, Esri The GIS Company, Esri The GIS People, Esri The GIS Software Leader, FormEdit, GeoCollector, Geographic Design System, Geography Matters, Geography Network, GIS by Esri, GIS Day, GIS for Everyone, GISData Server, JTX, MapIt, Maplex, MapObjects, MapStudio, ModelBuilder, MOLE, MPS Atlas, PLTS, Rent-a-Tech, SDE, SML, Sourcebook America, SpatiaLABS, Spatial Database Engine, StreetMap, Tapestry, the ARC/INFO logo, the ArcGIS logo, the ArcGIS Explorer logo, the ArcPad logo, the Esri globe logo, the Esri Press logo, the GIS Day logo, the MapIt logo, The Geographic Advantage, The Geographic Approach, The World's Leading Desktop GIS, Water Writes, www.arcgis.com, www.esri.com, www.geographynetwork.com, www.gis.com, www.gisday.com, and Your Personal Geographic Information System are trademarks, service marks, or registered marks in the United States, the European Community, or certain other jurisdictions. CityEngine is a registered trademark of Procedural AG and is distributed under license by Esri. Other companies and products or services mentioned herein may be trademarks, service marks or registered marks of their respective mark owners.
Course introduction Introduction Course goals Additional resources Installing the course data Icons used in this workbook Understanding the ArcGIS Platform 1 System design process What is system architecture design? Why is system architecture design important? Why should you plan? What questions are you trying to answer? What demands does GIS place on the computing infrastructure? Cost of a change Integrated business needs assessment Building a GIS: Implementation strategy System design strategies overview SDSwiki demo: System Design Strategies wiki site System architecture design terminology GIS business planning Pre-design efforts Enterprise vision CPT demo: Pre-design efforts. System design process Technical architecture strategy CPT demo: System architecture design Monitor performance compliance CPT demo: Performance validation CPT demo: Platform Capacity Calculator Exercise 1: Use the Platform Capacity Calculator to identify the best platform selection Estimate current web service display complexity Find the throughput capacity (TPH) of the Esri hardware bundles Determine how many concurrent users the hardware candidates can support How does user productivity impact concurrent user capacity? What is your optimum deployment strategy if you choose to use virtual servers? 2 GIS software technology GIS software evolution What is ArcGIS? Emerging technology trends i
ArcGIS for Server GeoEvent extension Big data Selecting the correct computing architecture Enterprise deployment strategies Federated deployment strategies Community deployment strategies Service (REST)-oriented architecture GIS in a service-oriented architecture Cloud deployment patterns Cloud service models Cloud deployment strategies ArcGIS platform Desktop operations CPT demo: ArcGIS desktop workflows Web operations Mobile operations ArcGIS Online Portal for ArcGIS CPT demo: ArcGIS server workflows ArcGIS for Server licensing Software technology selection Software technology cycle Exercise 2: Use the CPT to explore GIS software technology What are your business requirements? Select your project workflow performance targets Complete your system architecture design 3 Software performance Standard workflows Custom workflow loads CPT Calculator workflow recipe ArcGIS imagery access patterns Graphics (2D/3D) performance Display density performance impacts Registered Portal services CPT demo: Calculator recipe configuration Display complexity trade-offs Activity GIS user performance expectations Map display complexity Measuring display complexity (MXDperfstat) Defining display complexity Map publishing demo: Display complexity ii
CPT demo: Calculator display complexity Parallel processing performance impacts Take advantage of caching (%DataCache) Display resolution performance impacts Selecting the best output format Selecting the best vector storage format Selecting the best imagery storage format CPT demo: Cache, Resolution, Output, and Data source Custom workflow loads analysis Exercise 3: Use the CPT to explore software performance Use the CPT Calculator to help select the appropriate software performance targets Evaluate display performance when changing output to Feature service. What are the advantages of mixing feature service with cached basemap? Add custom FSvcEdit workflow to project workflows 4 Server software performance ArcGIS for Server software components ArcGIS for Server terminology Pooled service instance configuration Map service process configuration Cached map service Batch process loads Web mapping service loads Map publishing demo: Service Editor map service configuration CPT demo: Optimum service instance configurations Generating the map cache Cache processing profile Managed Services demo: Caching configurations Platform memory recommendations Greek citizen declaration case study Greek network architecture Technical architecture alternatives CPT Calculator design case study Caching advantage summary Exercise 4: Use the CPT to evaluate server software performance Demonstrate batch process service instance loads on the CPT Design tab Demonstrate web mapping service instance loads on the CPT Design tab 5 GIS data administration GIS feature data architecture iii
What is versioning? Geodatabase versioning example ArcSDE explicit state model ArcSDE version state tuning Versioned geodatabase view Versioning managed by ArcSDE schema Geodatabase replication use cases Distributed enterprise architecture strategies Mobile operations Production/publication operations Extract/transform/load operations Distributed geodatabase operations Hierarchical operations ArcGIS for Desktop DBMS connections CPT demo: Platform Capacity Calculator custom web map services GIS imagery data architecture What is a mosaic dataset? ArcGIS image access patterns Recommended image deployment workflow GIS enterprise data architecture Storage architecture options: Advent of the storage area network Storage architecture options: Advent of network-attached storage Ways to protect spatial data: RAID (Redundant array of independent disks) SSD technology is here Solid-state drive technology Hierarchical storage management Ways to move GIS data: Traditional backup/transfer/load Ways to move GIS data: Database replication Ways to move GIS data: Disk-level replication Protect your GIS data resources CPT demo: Platform Capacity Calculator custom imagery services CPT demo: Configure CPT Calculator and Design tabs for imagery workflows Exercise 5: Use the CPT to determine platform capacities and workflows How does data source selection impact web mapping platform capacity? How does data source selection impact web image service platform capacity? Use the CPT Calculator to generate custom imagery workflow performance targets Add the custom imagery workflow to Project Workflows on the CPT Workflow tab 6 Network communications Why is GIS traffic-intensive? Types of networks What is network capacity? What is data? iv
What is client/server communication? What are network transport protocols? GIS client/server protocols What is network transport time? Network transport time examples What is network latency? Network latency example CPT demo: Network latency Shared network performance Network design planning factors Network traffic adjustments: Output format Network traffic adjustments: Data source format Enterprise network architecture Network suitability analysis: Network utilization Network traffic queuing Network suitability analysis: User productivity User productivity adjustment CPT demo: Excel enable iterative calculations setting CPT Calculator demo: Workflow network performance CPT Design demo: Enterprise network capacity CPT Design demo: Network suitability analysis Web performance Exercise 6: Use the CPT to explore network communications Use the CPT Calculator to evaluate web mapping display performance for remote shared lowbandwidth sites What are the performance advantages of using an optimized web service? Add custom WebLite workflow to project workflows How does network bandwidth contention impact user productivity? Configure the design to represent business requirements for local and remote site users 7 GIS product architecture ArcGIS system technical architecture ArcGIS product architecture: Software components Virtualization deployment options ArcGIS for Desktop: Software component architecture ArcGIS for Desktop: Workstation clients ArcGIS for Desktop: Application/desktop virtualization CPT demo: ArcGIS for Desktop CPT Calculator configurations CPT demo: ArcGIS for Desktop Standard Workflows CPT demo: ArcGIS for Desktop CPT Design configurations ArcGIS for Server: Software component architecture ArcGIS for Server: Key site component functions Web services platform tier structure v
Single-tier platform configuration (single GIS server tier) Two-tier platform configuration (separate data servers) Three-tier platform configuration (separate web and data servers) ArcGIS for Server multiple site deployment patterns ArcGIS for Server multiple site integration Enterprise development, staging, and production operations Active-passive ArcGIS for Server failover configurations ArcGIS for Server multiple data center failover ArcGIS for Server high capacity linear scalability CPT demo: ArcGIS for Server CPT Calculator configurations CPT demo: ArcGIS for Server single-tier CPT Design configuration CPT demo: ArcGIS for Server two-tier CPT Design configuration CPT demo: ArcGIS for Server three-tier CPT Design and Calculator configurations CPT demo: CPT Design platform tier component overview ArcGIS platform deployment patterns Portal for ArcGIS platform configuration Exercise 7: Use the CPT to explore GIS product architecture Use the CPT Calculator to identify the optimum ArcGIS for Server platform configuration Adjust the CPT Design to show an enterprise design solution with a three-tier ArcGIS for Server architecture Adjust the CPT Design to show an enterprise design solution with a two-tier ArcGIS for Server architecture Reduce ArcGIS for Server license cost by using a virtual server environment 8 Platform performance Platform performance baseline Baseline history compared with Moore's law Faster platforms serve more with less hardware How relative performance is measured Time to produce a map CPT demo: Platform performance resources 2015 technology changes Platform identification Vendor platform performance Processing time drives throughput 2015 Intel processor performance ArcGIS 2015 platform best buy CPT demo: What is the best buy? Workstation platform recommendations Windows terminal configurations Windows Terminal Server platform capacity SDE geodatabase configurations for GIS vector data management SDE geodatabase platform capacity vi
ArcGIS for Server configurations ArcGIS for Server platform capacity CPT demo: Windows Terminal Server platform sizing CPT demo: SDE geodatabase platform sizing CPT demo: ArcGIS for Server platform sizing DPT demo: Platform Capacity Calculator sizing Hardware vendor platform selection Exercise 8: Use the CPT to evaluate platform performance Use the CPT Calculator to identify how upgrading to current technology can reduce overall operating cost Use the CPT Calculator to evaluate performance and cost of available 2015 server configurations Use the CPT Design tab to identify how upgrading to current technology can reduce overall enterprise GIS operating cost 9 Information security What is information security? Four types of security threats CIA security triad Levels of security Enterprise security strategy Choose a security standard Esri's security strategy evolution ArcGIS for Server security authorization GIS portal information model Web GIS access and privileges ArcGIS Online security authorization Portal for ArcGIS security authorization GIS portal architecture in ArcGIS Online Portal for ArcGIS relationship to Server Security in the cloud Cloud implementation options ArcGIS cloud hybrid capabilities Esri informal pattern selection Basic security needs Standard security needs Advanced security needs Web firewall best practices Web services with proxy server Web service components in DMZ Security strategy overview vii
10 Performance management System performance factors How to manage performance User workflow terminology What is service time? System performance terminology What is queue time? What is response time? What is workflow productivity? What is cycle time? What is a valid user workflow? User productivity adjustment What is a batch process? CPT demo: User productivity adjustment CPT demo: Batch process productivity Platform throughput and service time Platform performance and response time Platform queue time CPT demo: Multi-core server performance How to size the network What is system performance? Manage performance compliance CPT demo: Test validation Exercise 10: Use the CPT to manage performance Convert measured test results to generate a custom project workflow Use the CPT Throughput/Utilization Test tool to generate workflow service times Move the test workflow results to the Project Workflows list Validate the new test workflow on the CPT Design tab Use the validated test workflow to generate capacity of new 2015 servers 11 City of Rome City of Rome case study Pre-design efforts User requirements analysis: User locations and connectivity User requirements analysis: Workflow performance targets CPT demo: City of Rome: User requirements analysis User requirements summary CPT demo: Workflow performance targets System design process Technical architecture strategy: Year 1 viii
Workflow loads analysis: User needs summary (Year 1) CPT demo: Workflow configuration: Year 1 Network recommendations: Year 1 Platform architecture selection: Year 1 Hardware price list CPT demo: Physical platform configurations: Year 1 Physical platform solutions: Year 1 CPT demo: HA virtual configuration: Year 1 HA virtual platform solution: Year 1 Technical architecture strategy: Year 2 Workflow loads analysis: User needs summary (Year 2) DPT demo: Workflow configuration: Year 2 Network recommendations: Year 2 Platform architecture selection: Year 2 CPT demo: HA virtual configuration: Year 2 HA virtual platform solution: Year 2 CPT Demo: Data center configuration without web public services: Year 2 Data center solution without web public services: Year 2 Amazon pricing CPT demo: Amazon Cloud web public services configuration Amazon-hosted public web services Rome City Hall business case summary Workflow loads analysis: User needs summary (Police) DPT demo: Workflow configuration: Police network Police HA virtual platform solution 12 System implementation Integrated system design process Enterprise vision Existing business architecture: Governance and political landscape Existing business architecture: Use the correct language Executive management committee GIS planning team leadership GIS implementation team leadership Key GIS staff functions GIS enterprise management structure Existing business architecture: Platform and network environments Existing business architecture: Operational constraints and priorities Existing business architecture: Funding constraints User requirements analysis: Business discovery process User requirements analysis: GIS business planning process User requirements analysis: User locations and connectivity User requirements analysis: Workflow performance targets System architecture design ix
Maintain a current plan Phased system deployment Virtual server deployments Software technology life cycle System testing Demo: Performance testing Have a schedule Monitor performance compliance System performance tuning Managing technology change Exercise 12: Use the CPT to design a system for the City of Portland Determine CPT workflows to complete the City of Portland design Determine projected network traffic for Portland (Year 1) Evaluate the Portland (Year 1) network bandwidth requirements Configure the Portland hardware architecture Configure the Portland (Year 1) workflow software Identify the system architecture design solution for Year 1 Evaluate the projected network traffic for the Portlandl (Year 2) design Determine the hardware requirements for Portland (Year 2) Appendixes Appendix A: Esri data license agreement Appendix B: Answers to lesson review questions Lesson 1: System design process Lesson 2: GIS software technology Lesson 3: Software performance Lesson 4: Server software performance Lesson 5: GIS data administration Lesson 6: Network communications Lesson 7: GIS product architecture Lesson 8: Platform performance Lesson 9: Information security Lesson 10: Performance management x