格雷格·史密斯:加载世界!OpenStreetMap导入在4小时内完成

格雷格·史密斯:加载世界!OpenStreetMap导入在4小时内完成

💡 原文英文,约1200词,阅读约需5分钟。
📝

内容提要

OpenStreetMap(OSM)数据库约750GB,加载时间从一天缩短至4小时,得益于最新PostgreSQL版本和硬件性能提升,特别是GIST索引构建速度。PostgreSQL 17比16版本快3%。

🎯

关键要点

  • OpenStreetMap(OSM)数据库约750GB,加载时间从一天缩短至4小时。
  • PostgreSQL 17比16版本快3%,得益于核心改进和GIST索引构建速度提升。
  • 使用裸金属硬件(128GB RAM)进行Postgres调优以匹配服务器性能。
  • 为批量加载优先设置特定参数,提升性能。
  • 2022年测试AMD AM5硬件时,数据加载时间为8小时,Postgres 17将加载时间减半。
  • GIST索引构建代码的改进带来了显著的速度提升。
  • Middle Way Node Index ID Shift技术压缩数据库的最大索引,减少数据库大小。
  • 应用该改进后,加载时间减少37%,数据库大小从1000GB降至650GB。
  • osm2pgsql的调优参数--number-processes可指导并行操作的数量。
  • 2023年测试中,Intel i7-13600K超越AMD R5 7700X,2024年升级至i9-14900K。
  • PostgreSQL 17在使用复制时比PostgreSQL 16更快,得益于WAL基础设施的改进。
➡️

继续阅读