我目前正在EC2上构建一个实例,在该实例上导入我们正在研究的某些项目的整个Planet.osm快照,其中包含了整个地球数据的价值。我已经启动了一个大型的Ubuntu x64实例,并在Postgres数据库的EBS卷上附加了大量单独的存储,并对其进行了修改以在其中容纳PGSQL数据。
现在服务器osm2pgsql
在导入快照时遇到了麻烦。在尝试了几次不同的内存配置和其他操作之后,该过程在完成大部分操作后仍然输出“ Killed”。一旦它在“遍历未决方式”时被杀死,下一次,在稍微调整了细长缓存之后,它到达了“处理方式”,然后崩溃了。根据我的阅读,这通常是由于内存问题造成的。
这是我最近一次运行导入的尝试:
osm2pgsql -v -U osm -s -C 4096 -S default.style -d osm /data/osm/planet-latest.osm.bz2
以下是EC2上大型实例的规格:
大型实例7.5 GB内存,4个EC2计算单元(2个虚拟内核,每个虚拟内核各具有2个EC2计算单元),850 GB本地实例存储,64位平台
我的问题是-是否有一些好的基准测试资源来确定osm2pgsql和Postgres的调优要求?导入速度对我来说并不那么重要,我只是想确保过程安全完成,即使需要4到5天...我已经阅读了Frederick Ramm的“ 优化渲染”去年的SOTM中的“ 链 ”(PDF)文件,但是还有其他好的意见/资源吗?