问题标签 [osm2pgsql]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
372 浏览

postgresql - 使用 osm2pgsql 将 .pbf 转换为 postgresql(磁盘空间不足)

我必须说我完全不明白这一点。

但是,当我尝试使用 osm2pgsql(精简模式)为我的国家德国转换大小为 3gb 的二进制 pbf 文件时,它被转换为 postgresql 表 3 小时,并失败并显示消息“磁盘空间不足”。我的 linux 机器上有 50gb 的可用空间。

我可以理解临时文件通常会添加到 RAM 中,并且因为我使用的是苗条模式,所以它会保存到数据库中。

请赐教,3gb osm 文件在转换为 postgresql(gis) 表时如何占用 50gb 空间并引发该错误?

我该如何解决这个问题?

0 投票
0 回答
112 浏览

openstreetmap - 我用 osm2pgsql 生成的图块看起来很奇怪?

这是此线程的延续: 在 osm2pgsql 中导入大文件时出错

相同的服务器,相同的代码,相同的我 :-) 只是我使用的 .osm 文件不同。

所以我从https://www.openstreetmap.org为 Tuam 镇(爱尔兰)下载了 .osm 文件。它起作用了,我不知道为什么,可能是因为这个文件不是二进制文件而是 XML,或者可能是因为它不是那么大?所以第一个问题是为什么它完全有效,第二个问题涉及我的问题标题是为什么生成的瓷砖看起来如此奇怪 - 街道看起来支离破碎。这是一个示例图块:

团1

请帮忙

0 投票
2 回答
2713 浏览

windows - 适用于 Windows 64 位的 osm2pgsql 的最新版本在哪里

我在这里使用一些早期版本的 Windows 64 位下载表单:dl.dropboxusercontent.com/u/63393258/osm2pgsql_testRelease.zip 来自该网站:awcull.com/2015/09/30/postgis-osm2pgsql-windows.html

但是当我导入从 download.geofabrik.de/ 下载的整个欧洲的大型 pbf 时它崩溃了

我厌倦了这个狗屎......我尝试了苗条和非苗条模式,我尝试修改缓存大小,到目前为止没有任何效果。我们的服务器有 32 GB 的 RAM。我在哪里可以下载适用于 Windows 64 位的最新 osm2pgsql 版本?或者,您建议使用哪种编译器在 Windows Server 2012 64 位上进行自己的构建。谢谢。

我上次崩溃时运行 osm2pgsql 的命令是:

它与标准的 Windows 对话框崩溃,说“应用程序停止了 blablabla”,详细信息:

现在我正在尝试不使用“-C”选项,但我敢打赌它会再次崩溃......

0 投票
1 回答
127 浏览

python - 瓷砖边缘不完整的道路标签呈现了我的 python-mapnik

我们使用 psm2pgsql 将欧洲数据文件导入 Postgres 数据库,并使用来自 python-mapnik 工具的 generate_tiles_multiprocess.py 渲染图块,根据随附的屏幕截图,道路标签看起来很奇怪。为什么这些标签看起来不完整?你以前见过这样的事情吗?如果需要,我可以提供更多详细信息。

在此处输入图像描述

0 投票
1 回答
297 浏览

postgresql - osm2pgsql 导入失败并显示“无法从节点缓存中读取:输入/输出错误”

我正在尝试在 AWS EC2 上导入整个星球的 OSM 数据。在“方式”处理期间或可能之后,我收到以下消息:

"Failed to read from node cache: Input/output error"

EC2 具有以下规格:

类型:i3.xlarge
内存:30.5 Gb
vCPU:4
Postgresql:v9.5.6
PostGIS:2.2

除了根卷,我还安装了 900GB SSD 和 2TB HHD(高吞吐量)。Postgresql 数据目录位于 HHD 上。我已命令将osm2pgsql平面节点文件写入 SSD。

这是我的osm2pgsql命令:

osm2pgsql -c -d gis --number-processes 4 --slim -C 20000 --flat-nodes /data-cache/flat-node-cache/flat.nodes /data-postgres/planet-latest.osm.pbf

renderaccount我以属于以下组成员的用户身份运行上述命令renderaccount ubuntu postgres。该flat-nodes文件似乎已成功创建/data-cache/flat-node-cache/flat.nodes并具有以下配置文件:

有没有人遇到或解决了这个问题?我怀疑可能是权限问题?我现在注意到,自从最后一次 osm2pgsql 失败以来,作为flat-nodes文件目标的已安装 SSD 已转换为“只读”文件系统 - 这听起来可能在已安装卷上存在 i/o 错误时发生( ?)。

另外,osm2pgsql 是否写入我可以获得额外信息的日志?

更新dmesg输出:

在研究了上述输出后,它似乎是 Ubuntu 16.04 中的一个错误。https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1668129?comments=all

0 投票
0 回答
284 浏览

postgresql - OSM:使用 osm2pgsql 导入无标签方式

使用 osm2pgsql 导入 OSM 数据时,我遇到了一个非常特殊的问题。我一直在寻找有关如何将没有任何标签但属于关系(本身有标签)的方式导入 PostgresDB 的方法。以以下方式为例: http ://www.openstreetmap.org/way/50126690 如您所见,它没有任何标签,但属于关系http://www.openstreetmap.org/relation/2 ... 81/12.3246 被标记为越野斜坡。当我将数据导入postgresql时,50126690的方式没有导入。即使我使用 --hstore 选项,如果您相信http://www.volkerschatz.com/net/osm/osm2pgsql-usage.htm上的文档,该选项也应该保留所有对象,该方式也不会导入到 planet_osm_line 表中。我的 default.style 看起来像这样:

谁能指出我如何导入这些方式的正确方向???感谢您帮助马丁

0 投票
1 回答
942 浏览

openstreetmap - osm2pgsql 错误尝试将 .osm 导入 AWS 上的 postGis

我正在尝试使用 osm2pgsql 将 osm 数据导入 aws rds 实例。我收到一条错误消息Osm2pgsql failed due to ERROR: Open failed for 'insights_poi': No such file or directory但我提供了所有必要的文件。

在本地,我正在跑步osm2pgsql -c -d insights_poi -U insights_poi -H beta.cyrrprcqeykj.us-east-1.rds.amazonaws.com -S default.style austin_texas.osm.pbf -W insights_poi -r .pbf

和那个default.style和那个austin_texas.osm.pbf文件在我运行它的同一个文件夹中为什么说找不到文件?

在我运行命令后它实际上变得很远

在此处输入图像描述

0 投票
1 回答
532 浏览

postgresql - 为 postgis 过滤 openstreetmap 数据

我正在创建一个 postgis 数据库并希望使用过滤后的 OpenStreetMap 数据。

为此,我尝试了以下过程:

  1. 从https://planet.osm.org/下载了 planet.osm.bz2 文件
  2. 使用 bzip2 解压到 *.osm
  3. 通过命令提示符使用 osmfilter 过滤文件
  4. 在命令提示符下使用 osm2pgsql 将过滤后的 *.osm 文件上传到我的数据库

对于我的第一次尝试,我只过滤了陆地区域。

但是,在使用 osm2pgsql 的第 4 步中,我在命令提示符中收到以下错误:“Osm2pgsql 由于错误而失败:第 3137102 行第 61 列的 XML 解析错误:格式不正确(无效令牌)”

如我的 Windows 计算机上的命令提示符所示:

我还尝试了两条替代路线,但也失败了:

  1. 下载 planet.pbf -> 使用 osmconvert 转换为 .o5m -> 使用 osmfilter 过滤

  2. 下载 planet.pbf -> 使用 osmconvert 转换为 .osm -> 使用 osmfilter 过滤(发出警告) -> 使用 osm2pgsql 传输到数据库

任何人都知道如何避免这个错误或有过滤planet.osm文件并上传到postgis的经验吗?

0 投票
1 回答
528 浏览

postgresql - 第 xxx 列缺少数据

当我尝试使用 osm2pgsql 导入它们时,我已经从 openstreetmap 下载了多个 Metro 提取物作为 PBF 文件,它适用于第一个并创建表。然后我想在planet_osm_ways中添加一个带有cityID的列,以了解哪个“way id”属于哪个城市,然后我尝试导入另一个城市,它显示'错误:缺少列“city_id”的数据。有没有办法在不破坏脚本的情况下修改planet_osm_ways 表?我真的需要知道哪个 id 属于哪个 Metro 提取物。

0 投票
0 回答
67 浏览

openstreetmap - 下载数据 osm2pgsql

我上传了一个大的 *.osm 文件。现在,您需要从中导入具有 amenity = park 在我表中的 postgis 数据。仅导入多边形。多边形必须导入“多边形”字段。表中的所有其他字段都将填充默认值。告诉我,这可以用 osm2pgsql 完成吗