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

问题:

01 一般方法:

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

02 实用方法:

2.1 以外存换内存

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

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

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

2.2 删除中间数据

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

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

猜你喜欢

转载自blog.csdn.net/m0_63001937/article/details/129964585