大面积启动OSRM服务器

Launch OSRM server on large area

教程中展示了如何使用此示例启动 OSRM 服务器:

wget http://download.geofabrik.de/europe/germany/berlin-latest.osm.pbf

osrm-extract berlin-latest.osm.pbf -p profiles/car.lua
osrm-contract berlin-latest.osrm
osrm-routed berlin-latest.osrm

我不仅想在柏林数据集上启动服务器,而且想在整个国家/地区数据集上启动服务器。例如所有德国乡村道路。也许与合同有关,但我真的不知道我应该把哪个 .osrm 之王作为参数来告诉它使用更大的数据集,该数据集将是多个数据集的组合。

我想知道后答案应该很明显了,但还是感觉有点糊涂。

谢谢。

wget http://download.geofabrik.de/europe/germany-latest.osm.pbf

osrm-extract germany-latest.osm.pbf -p profiles/car.lua
osrm-contract germany-latest.osrm
osrm-routed germany-latest.osrm

应该可以,但请注意它需要大约 16GB 的 RAM 和可能类似数量的磁盘 space。

编辑:

澄清后,您需要做的是使用 osmium tool.

合并 .osm.pbf 文件
./osmium merge first.osm.pbf second.osm.pbf third.osm.pbf -o result.osm.pbf

根据 OSRM issue,无法合并 .osrm 个文件。但是,您可以在生成 .osrm 个文件之前合并多个 PBF 个文件。

可以使用 osmium 合并 OSM XML 或 PBF 文件:

osmium merge file1.osm.pbf file2.osm.pbf -o merged.osm.pbf.

osmosis:

osmosis --rb file1.osm.pbf --rb file2.osm.pbf --m --wb merged.osm.pbf