You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

咨询:能否指定Valhalla从PostgreSQL数据库读取路由数据?

Valhalla从PostgreSQL读取OSM路由数据的方法

可以的,Valhalla支持直接从PostgreSQL数据库读取OSM数据来构建路由图,无需依赖PBF文件。具体操作如下:

  • 配置Valhalla连接数据库
    找到Valhalla的配置文件(通常命名为conf.json),修改其中的sources字段,添加PostgreSQL数据源配置,替换原有的PBF路径配置。示例配置片段如下:

    "sources": [
      {
        "type": "postgresql",
        "connection_string": "dbname=你的数据库名 user=数据库用户名 password=数据库密码 host=localhost port=5432",
        "table_prefix": "" // 如果osm2pgsql导入时用了表前缀,这里填写对应前缀,默认留空
      }
    ]
    
  • 生成Valhalla路由瓦片
    运行Valhalla的构建工具(不同版本工具名可能为valhalla_build_tiles或valhalla_import),指定配置文件即可从数据库拉取数据生成路由瓦片:

    valhalla_build_tiles -c conf.json
    
  • 注意事项

    • 确保osm2pgsql导入时保留了所有Valhalla需要的OSM标签(比如道路的highway、公共交通相关标签等),默认导入配置即可满足需求,若使用自定义Lua过滤规则,不要丢弃关键标签。
    • 保证PostgreSQL版本与Valhalla兼容,建议使用官方推荐的稳定版本。
    • 数据库账号需要拥有对应OSM表的读取权限。

内容的提问来源于stack exchange,提问作者Baz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.01 00:56:09