php - 如何在我的mysql数据库中获取planet-latest.osm.bz2?

标签 php mysql performance postgresql openstreetmap

我有一个 Intel i3-2350M CPU @ 2.30GHz,运行 Windows 7,64 位,4GByte RAM 和足够的可用硬盘空间。

openstreetmap 文件planet-latest.osm.bz2 非常大并且经过压缩。 (我拥有的版本是 36 GB 压缩的,我相信未压缩时大约是 100 GB。 我有一个正在运行的 mysql 数据库,它是用 XAMPP 安装的。 (所以我也有 apache 和 php 可用。)

我的问题是:

  1. OSM 项目似乎已切换到 postgresql 和 postgis。这真的比 MySql 更好(===更快)吗? (我对此深表怀疑。)
  2. 是否有一组命令可以将压缩文件存入数据库?或者如果我首先解压缩它会降低命令失败的风险吗? 2b.在将数据导入数据库的过程中,是否可以丢弃图形输出不需要的所有 XML 节点? (一笔。:P)
  3. 我可以将数据转换为 .csv 文件(XML 之外):这会让我更轻松地将数据导入数据库吗?
  4. 机器需要多长时间?我不能让它在没有监督的情况下运行几个小时。 (我可以将大文件分解为较小的文件,尽管我认为这很容易出错并且不可取。)

问候 约翰

附注我手头有大多数(如果不是全部)标准程序,它们都链接到 OSM-wiki。 (尽管 OSM-wiki 完全有缺陷,并且对于当前可用的工具来说有点过时。)

最佳答案

Open Street Map 使用 postgreSQL 中的地理信息系统功能,而 MySQL 中不提供这些功能。特别是,一些操作使用了 GIS map 投影功能。

以下是各种模式及其对数据库服务器品牌和型号的要求的描述。 http://wiki.openstreetmap.org/wiki/Databases#Database_Schemas

postgreSQL 和 MySQL 在 64 位平台上都是相当快的技术。对于全局 OSM 大小的数据库,您的性能将取决于快速存储和处理能力。

如果不了解更多关于您想要做什么的信息,就很难就哪种技术可能更快提供建议。但我可以这样说:通过使用开放街道 map 团队创建和测试的技术,您的每月节点性能将在至少几个月内更高——您将在这几个月调整数据。

关于php - 如何在我的mysql数据库中获取planet-latest.osm.bz2?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28908923/

相关文章:

performance - 托管静态内容的位置 : Sub-Domain or different Domain?

C题: If I pass the address of a variable to a function that modifies it is there a guarantee that the variable will be "reloaded" after return?

php - PHP类常量的单字母前缀?

php - Amazon S3 - 您建议的上传小于允许的最小大小

java - Linux 和 MySQL 中的编码问题

php - UPDATE Multiple ID 中的 PDO 准备语句

c++ - 在 C++ 中添加到集合之前或之后

php - 当前时间更新MySQL查询

java - 安装 Solr PHP JAVA_HOME 错误

php - 上传文件并访问$_FILES