ArcGIS 地图性能优化系列一
经常有客户会咨询到如何提高地图的显示性能、为何ArcMap刷新地图那么缓慢、为何地图服务响应要等待10多秒?
诸如这些问题,虽然它们的表象都是相似的,但是往往在分析排查问题的时候,我们发现背后的原因是存在多种可能的,有时是由于数据库的索引建立不合理,有时是由于文件存储策略不合理,有时是网络的问题,这就要求我们分层次来思考问题。今天我们就首先来看看如何初步定位层次。
只是我们会用到esri提供一个地图性能分析工具Mxdperfstat,使用该工具,我们能获得一份可读性十分强的性能概述报告。
这个工具针对不同版本的ArcGIS会有对应版本。
使用起来十分简单,只需要在安装有ArcGIS Desktop或者ArcGIS Engine的环境中就可以直接运行。
首先需要把要分析的mxd文档复制到该工具所在目录。
然后进入命令行。
mxdperfstat10.4.exe -mxd <你的Mxd文档名称>.mxd -width <模拟的屏幕宽度> -height <模拟的屏幕高度>
如果只是需要测试指定的比例尺,可以通过-scale参数指定,如-scale 2000;1000;500;200
工具默认测试的地理位置为地图的中心位置,可以通过-xy参数指定,如-xy 780,1290
工具执行完后,结果会保存在工具的同一个目录下,是一个xml格式的文档,可以使用浏览器如IE直接打开查看。如下图
显示检查时间和地图坐标系,中心位置,模拟的屏幕大小。
下面是性能汇总:
可以看到不同比例尺下,地图的绘制耗时,显示的图层数目。
下面是分比例尺,分图层的详细查询和绘制时间,同时还包含一栏显示需要继续检查或者调优的建议。
我们平时特别需要关注的是几个关键指标:
Geography Phase(sec)数据绘制的耗时,和图层符号配置有关。
Graphics Phase (sec) 数据文本、标注绘制的耗时,和属性字段索引有关。
Cursor Phase(sec) 数据查询的耗时,和数据源性能有关。
除次之外,还有DBMS的CPU耗时、DBMS的LIO数据库读写内存的耗时、DBMS的PIO数据库读写磁盘的耗时几项数据库指标作为参考。不过建议数据库的性能指标分析最好还是启用TRACE功能后得到的分析结果,因为那更加详细和准确。
在下一篇文章中,将会介绍如何对瓶颈在数据查询层次的情况进行优化。
ArcGIS 地图性能优化系列一的更多相关文章
- 9 ArcGIS Server 性能优化
1.系统性能影响因子 地图.服务类型.数据源.客户端技术.CPU.数据结构.网络.内存.存储.部署.架构.服务接口.SDE等. 2.ArcGIS Server性能优化 数据结构与数据源:数据结构(矢量 ...
- [MySQL性能优化系列]提高缓存命中率
1. 背景 通常情况下,能用一条sql语句完成的查询,我们尽量不用多次查询完成.因为,查询次数越多,通信开销越大.但是,分多次查询,有可能提高缓存命中率.到底使用一个复合查询还是多个独立查询,需要根据 ...
- [MySQL性能优化系列]巧用索引
1. 普通青年的索引使用方式 假设我们有一个用户表 tb_user,内容如下: name age sex jack 22 男 rose 21 女 tom 20 男 ... ... ... 执行SQL语 ...
- [MySQL性能优化系列]LIMIT语句优化
1. 背景 假设有如下SQL语句: SELECT * FROM table1 LIMIT offset, rows 这是一条典型的LIMIT语句,常见的使用场景是,某些查询返回的内容特别多,而客户端处 ...
- PLSQL_性能优化系列14_Oracle High Water Level高水位分析
2014-10-04 Created By BaoXinjian 一.摘要 PLSQL_性能优化系列14_Oracle High Water Level高水位分析 高水位线好比水库中储水的水位线,用于 ...
- [Android 性能优化系列]降低你的界面布局层次结构的一部分
大家假设喜欢我的博客,请关注一下我的微博,请点击这里(http://weibo.com/kifile),谢谢 转载请标明出处(http://blog.csdn.net/kifile),再次感谢 原文地 ...
- Android性能优化系列之App启动优化
Android性能优化系列之布局优化 Android性能优化系列之内存优化 Android性能优化系列之apk瘦身 应用的启动速度缓慢是我们在开发过程中常常会遇到的问题,比方启动缓慢导致的黑屏.白屏问 ...
- Android性能优化系列之apk瘦身
Android性能优化系列之布局优化 Android性能优化系列之内存优化 为什么APK要瘦身.APK越大,在下载安装过程中.他们耗费的流量会越多,安装等待时间也会越长:对于产品本身,意味着下载转化率 ...
- 推荐:Java性能优化系列集锦
Java性能问题一直困扰着广大程序员,由于平台复杂性,要定位问题,找出其根源确实很难.随着10多年Java平台的改进以及新出现的多核多处理器,Java软件的性能和扩展性已经今非昔比了.现代JVM持续演 ...
随机推荐
- Centos 7 vsftpd ldap 配置
#ldap 安裝配置 环境Centos7#安装 yum install -y openldap openldap-clients openldap-servers migrationtools pam ...
- Linux C语言解析并显示.bmp格式图片
/************************* *bmp.h文件 *************************/ #ifndef __BMP_H__ #define __BMP_H__ # ...
- v14.0\AspNet\Microsoft.Web.AspNet.Props 找不到
错误 E:\Github\AutoMapper\src\AutoMapper\AutoMapper.CoreCLR.kproj : error : 未找到导入的项目"C:\Program ...
- codevs 3289 花匠
题目:codevs 3289 花匠 链接:http://codevs.cn/problem/3289/ 这道题有点像最长上升序列,但这里不是上升,是最长"波浪"子序列.用动态规划可 ...
- ASP.NET MVC Model绑定(一)
ASP.NET MVC Model绑定(一) 前言 ModelMetadata系列的结束了,从本篇开始就进入Model绑定部分了,这个系列阅读过后你会对Model绑定有个比较清楚的了解, 本篇对于Mo ...
- (转载)JAVA动态编译--字节代码的操纵
在一般的Java应用开发过程中,开发人员使用Java的方式比较简单.打开惯用的IDE,编写Java源代码,再利用IDE提供的功能直接运行Java 程序就可以了.这种开发模式背后的过程是:开发人员编写的 ...
- Atitit 硬件 软件 的开源工作 差异对比
Atitit 硬件 软件 的开源工作 差异对比 1.1. 模块化,标准化,以及修改的便捷性1 1.2. 生产和发布成本 1 1.3. 3. 入行门槛搞2 1.4. 在软件业极度发达的今天,任何具 ...
- Atitit opencv版本新特性attilax总结
Atitit opencv版本新特性attilax总结 1.1. :OpenCV 3.0 发布,史上功能最全,速度最快的版1 1.2. 应用领域2 1.3. OPENCV2.4.3改进 2.4.2就有 ...
- WCF学习之旅—实现REST服务(二十二)
一.什么是REST 表述性状态转移(Representational State Transfer,REST),不是一种标准,而是一种软件架构风格. 基于REST的服务与基于SOAP的服务相比,性能. ...
- GitHub实战系列~2.把本地项目提交到github中 2015-12-10
GitHub实战系列汇总:http://www.cnblogs.com/dunitian/p/5038719.html ———————————————————————————————————————— ...