Проблема с импортом OSM в PostGRES

Не знаете, где задать вопрос? Задавайте здесь.
Ответить
glax2020
Активный участник
Сообщения: 175
Зарегистрирован: 19 ноя 2012, 15:59
Репутация: 6

Проблема с импортом OSM в PostGRES

Сообщение glax2020 » 19 ноя 2012, 16:42

Проблема с импортом "Данные OpenStreetMap в форматах XML и PBF" в PostGRES

Описание проблемы

1) PostgreSQL 9.2

Базу данных создал на основе "template_postgis_20" и инициализировал с помощью "legacy.sql"

2) Данные беру из "http://data.gis-lab.info/osm_dump/dump/latest/". Использую "RU-MOS.osm.bz2"


3) osm2pgsql.exe

использую как стандарт (http://wiki.openstreetmap.org/wiki/Osm2pgsql)
так и из пакета "HOTOSM"

4) Команду выполняю как:


Команда:

"%osm2pgsql_path%\osm2pgsql.exe" --create -s -H localhost -P 5435 -d osm2 -U postgres -S "%osm2pgsql_path%\default.style" "%OSM_DATA%\RU-ULY.osm.bz2"

и в результате имею две проблемы, которые пока не удается разрешить:

1 проблема.

НЕ СОЗДАЮТСЯ 4 ожидаемые мною таблицы (planet_osm_line, planet_osm_point, planet_osm_polygon, planet_osm_roads),

а создаются 4 другие таблицы (planet_osm_nodes, planet_osm_point, planet_osm_rels, planet_osm_ways).

2 проблема.

Ошибочное сообщение:

CREATE INDEX planet_osm_point_index ON planet_osm_point USING GIST (way GIST_GEOMETRY_OPS);
failed: ОШИБКА: класс операторов "gist_geometry_ops" для метода доступа "gist" не существует

(по английски это похоже будет прописываться как: ERROR: operator class "gist_geometry_ops" does not exist for access method "gist")

Может быть посоветуете и разъясните, что неправильно и как должно быть правильно.

Спасибо.

С уважением Глушко Александр

-------------------------------------------------------------------------------

Полный лог:

osm2pgsql SVN version 0.69-21289M

Using projection SRS 900913 (Spherical Mercator)
Setting up table: planet_osm_point
ЗАМЕЧАНИЕ: таблица "planet_osm_point_tmp" не существует, пропускается
Setting up table: planet_osm_line
ЗАМЕЧАНИЕ: таблица "planet_osm_line" не существует, пропускается
ЗАМЕЧАНИЕ: таблица "planet_osm_line_tmp" не существует, пропускается
Setting up table: planet_osm_polygon
ЗАМЕЧАНИЕ: таблица "planet_osm_polygon" не существует, пропускается
ЗАМЕЧАНИЕ: таблица "planet_osm_polygon_tmp" не существует, пропускается
Setting up table: planet_osm_roads
ЗАМЕЧАНИЕ: таблица "planet_osm_roads" не существует, пропускается
ЗАМЕЧАНИЕ: таблица "planet_osm_roads_tmp" не существует, пропускается
Mid: pgsql, scale=100, cache=800MB, maxblocks=102401*8192
Setting up table: planet_osm_nodes
*** WARNING: intarray contrib module not installed
*** The resulting database will not be usable for applying diffs.
ЗАМЕЧАНИЕ: CREATE TABLE / PRIMARY KEY создаст неявный индекс "planet_osm_nodes_pkey" для таблицы

"planet_osm_nodes"
Setting up table: planet_osm_ways
ЗАМЕЧАНИЕ: CREATE TABLE / PRIMARY KEY создаст неявный индекс "planet_osm_ways_pkey" для таблицы "planet_osm_ways"
Setting up table: planet_osm_rels
ЗАМЕЧАНИЕ: CREATE TABLE / PRIMARY KEY создаст неявный индекс "planet_osm_rels_pkey" для таблицы "planet_osm_rels"

!! You are running this on 32bit system, so at most
!! 3GB of RAM can be used. If you encounter unexpected
!! exceptions during import, you should try running in slim
!! mode using parameter -s.

Reading in file: E:\postgres\data2012_11\RU-MOS.osm.bz2

Processing: Node(10k) Way(0k) Relation(0k)
Processing: Node(20k) Way(0k) Relation(0k)
Processing: Node(30k) Way(0k)

Relation(0k)
Processing: Node(40k) Way(0k) Relation(0k)
Processing: Node(50k) Way(0k) Relation(0k)
Processing: Node

(60k) Way(0k) Relation(0k)

....

Way(763k) Relation(29k)
Processing: Node(5698k) Way(763k) Relation(30k)
Processing: Node(5698k) Way(763k) Relation

(31k)
Processing: Node(5698k) Way(763k) Relation(32k)
Processing: Node(5698k) Way(763k) Relation(33k)
Processing:

Node(5698k) Way(763k) Relation(34k)
Processing: Node(5698k) Way(763k) Relation(34k)
Node stats: total(5698588), max(2000600453)
Way stats: total(763114), max(189440545)
Relation stats: total(34425), max(2559402)

Going over pending ways

processing way (0k)
processing way (1k)
processing way (2k)
processing way (3k)
processing way (4k)
processing way (5k)

...

processing way (415k)
processing way (416k)
processing way (417k)
processing way (418k)

Going over pending relations

node cache: stored: 5638080(98.94%), storage efficiency: 5.38%, hit rate: 98.41%
Stopping table: planet_osm_nodes
Stopped table: planet_osm_nodes
Stopping table: planet_osm_ways
Stopped table: planet_osm_ways
Stopping table: planet_osm_rels
Stopped table: planet_osm_rels
Committing transaction for planet_osm_point
Sorting data and creating indexes for planet_osm_point
CREATE INDEX planet_osm_point_index ON planet_osm_point USING GIST (way GIST_GEOMETRY_OPS);
failed: ОШИБКА: класс операторов "gist_geometry_ops" для метода доступа "gist" не существует

Error occurred, cleaning up

Alex_SHA
Новоприбывший
Сообщения: 5
Зарегистрирован: 11 июн 2013, 14:32
Репутация: 0

Re: Проблема с импортом OSM в PostGRES

Сообщение Alex_SHA » 13 июн 2013, 13:34

Попробуй сделать по иснтрукции начиная с 6-го шага. У меня такая же проблема.

https://github.com/springmeyer/win-osm- ... s-database

C:\Program Files\HOTOSM\bin>osm2pgsql moscow.osm -H localhost -d osm -U postgres -P 5432 -W -S default.style -C 512 --hstore --cache-strategy sparse

Ответить

Вернуться в «Я новичок!»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя