ArcGIS:如何解决模型构建器报错<内存不足>?

简介: ArcGIS:如何解决模型构建器报错<内存不足>?

问题:

 

01 一般方法:

  1. 降低输入数据的分辨率或数量,减少需要处理的数据量。
  2. 将模型中的工具链中的某些工具分解成多个步骤,并使用中间结果进行操作,以减少内存使用量。
  3. 尝试在计算机上增加更多的内存,以便处理更大的数据量。
  4. 将模型中的某些工具转换为脚本工具,并使用 Python 脚本来实现操作,这可能比使用模型构建器更高效。
  5. 将处理分成多个批次,并逐批次处理数据,以减少内存使用量。(当我在没有办法解决该问题时确实是使用这个方法)

02 实用方法:

2.1 以外存换内存

想象一下,为什么会出现这种情况?原因就是我们将太多的数据放在了内存中。

第一,将所有的中间数据放在硬盘中而不是在内存中,步骤如下:


(其实需要说明的是如果你的中间文件在下一次循环会被覆盖,那么其实不需要取消中间数据)

2.2 删除中间数据

第1种方法以外存换内存即取消中间数据而转放在硬盘中有一个缺陷,而且很致命,那就是我们没有办法将迭代的Raster放在硬盘中,一旦我们迭代的要素过多,则还是会出现内存不足的情况。所以这里最好的办法我觉得还是及时地删除要素、栅格数据集等等文件。


这里使用删除工具(数据管理工具 - 常规 - 删除),将所有不需要的中间文件全部删除即可,这里包括迭代要素、中途产生文件等等均可以使用删除工具进行删除,以释放内存资源。


目录
相关文章
|
2月前
|
SQL 缓存 DataWorks
DataWorks报错问题之内存溢出错误如何解决
DataWorks是阿里云提供的一站式大数据开发与管理平台,支持数据集成、数据开发、数据治理等功能;在本汇总中,我们梳理了DataWorks产品在使用过程中经常遇到的问题及解答,以助用户在数据处理和分析工作中提高效率,降低难度。
|
16天前
|
计算机视觉
OpenCV报错: cv::Exception,位于内存位置 0x00000078226FEE58 处。
OpenCV报错: cv::Exception,位于内存位置 0x00000078226FEE58 处。
|
26天前
|
缓存 NoSQL 中间件
redis内存溢出报错--OOM command not allowed when used memory > 'maxmemory'
该内容是关于Redis缓存服务器的使用指南。通过Xshell连接IP地址为25.218.153.193或206的主机,进入/data/iuap/middleware/redis-30001/bin目录,使用`redis-cli`连接到IP为206的30003端口。登录时需`auth yonyou*123`,可运行`info`和`info memory`查看状态,`flushall`清理缓存。在清理前,要备份/data/iuap/middleware/redis-30003/data/下的.aof和.rdb文件,利用tar命令打包并移至/tmp目录。
|
3月前
|
关系型数据库 MySQL Java
Flink cdc报错问题之内存不足报错如何解决
Flink CDC报错指的是使用Apache Flink的Change Data Capture(CDC)组件时遇到的错误和异常;本合集将汇总Flink CDC常见的报错情况,并提供相应的诊断和解决方法,帮助用户快速恢复数据处理任务的正常运行。
|
4月前
|
微服务
|
5月前
|
定位技术 Python
ArcGIS中ArcMap通过模型构建器ModelBuilder导出地理与投影坐标系转换Python代码的方法
ArcGIS中ArcMap通过模型构建器ModelBuilder导出地理与投影坐标系转换Python代码的方法
|
5月前
|
Python
ArcGIS中ArcMap模型构建器ModelBuilder的模型建立与运行操作方法
ArcGIS中ArcMap模型构建器ModelBuilder的模型建立与运行操作方法
|
5月前
|
JSON Java 数据格式
【Java报错】记录一次 sun.misc.Unsafe.park(Native Method) Conflicting setter definitions for property 导致的内存泄露
【Java报错】记录一次 sun.misc.Unsafe.park(Native Method) Conflicting setter definitions for property 导致的内存泄露
121 0
|
5月前
|
监控 应用服务中间件
如下请问EDAS的这个问题怎么解决? 应用id:2b0e6935-47fb-40ec-a11d-7dac320aecc1 集群中的节点内存是足够的,部署跑不起来 可以帮忙看看吗,以前集群下应用发布都是正常的,最近集群下应用部署基本都报错跑不起来,提示节点不可用
如下请问EDAS的这个问题怎么解决? 应用id:2b0e6935-47fb-40ec-a11d-7dac320aecc1 集群中的节点内存是足够的,部署跑不起来 可以帮忙看看吗,以前集群下应用发布都是正常的,最近集群下应用部署基本都报错跑不起来,提示节点不可用
60 2
|
7月前
|
存储
ArcGIS模型构建器实现批量按掩膜提取影像
ArcGIS模型构建器实现批量按掩膜提取影像
287 0