gp工具运行效率太低如何优化

gp工具运行效率太低如何优化
已邀请:

潘建伟

赞同来自: 江宝骅

【解决办法】:
关于您gp服务效率低的问题我整理了一下思路,给出以下几点建议:
1. 从宏观上,减少额外的计算量:包括避免动态投影、使用gdb或sde来取代shapefile。
2. 从微观上,可以使用python的多进程来进行并行计算。
3. 从宏观上,观察gp工具运行瓶颈在哪儿,来调整硬件,如加内存、换固态硬盘、优化网络连接等。

关于python多进程可以参考:
1. 简单的multiprocessing介绍:http://www.jb51.net/article/67116.htm
2. 对于缓冲区这个工具而已,可以使用上文中的进程池(pool),可以先遍历所有线要素放入内存,然后创建进程池并迭代每一个要素,每迭代到一个要素时进程池开启一个新的进程来负责这个数据的缓冲区创建。
3. 遍历要素可以用cursor方法:http://desktop.arcgis.com/zh-c ... n.htm
4. 如果您的数据很大,内存放不下这么多,那么您每次缓存完了都需要储存一下,可以用gp工具:append或者merge,但是要注意的是shapefile和file gdb都不能被多个进程同时编辑,所以需要用sde。
5. 缓冲区可以每一条要素分进程池中的一个进程,但是intersect工具涉及要素与要素之间的关系,所以不容易改写为多进程。

要回复问题请先登录注册