osm2pgsql: обновления для Planet OSM.

Ответить
Аватара пользователя
gala-kt
Участник
Сообщения: 89
Зарегистрирован: 26 июл 2010, 12:05
Репутация: 6
Откуда: Санкт-Петербург

osm2pgsql: обновления для Planet OSM.

Сообщение gala-kt » 17 авг 2017, 14:42

Добрый день!
Проблема следующая: с помощью osm2pgsql (версия 0.92.0 64 бита) в базу postgresql (9.3.16) размещены данные Planet OSM от 22.05.2017.
Данные успешно размещены, карта рендерится.
Далее пытаюсь с помощью того же osm2pgsql накатить обновления за неделю, выкачанные с http://planet.osm.org/planet/:
time osm2pgsql -a -s -l -C 30000 -d osm170522 -U user -W -H server -P 5432 changesets-170605.osm.bz2
Процесс завершается корректно, однако никакие обновления в базу не добавлены.
Судя по консольному выводу (приведен ниже), xml распарсен в ноль. Может, кто-то сталкивался? Или сама схема добавления обновлений должна быть иная?

Код: Выделить всё

Using built-in tag processing pipeline
Using projection SRS 4326 (Latlong)
Setting up table: planet_osm_point
Setting up table: planet_osm_line
Setting up table: planet_osm_polygon
Setting up table: planet_osm_roads
Allocating memory for dense node cache
Allocating dense node cache in one big chunk
Allocating memory for sparse node cache
Sharing dense sparse
Node-cache: cache=30000MB, maxblocks=480000*65536, allocation method=11
Mid: pgsql, scale=10000000 cache=30000
Setting up table: planet_osm_nodes
Setting up table: planet_osm_ways
Setting up table: planet_osm_rels

Reading in file: changesets-170605.osm.bz2
Using XML parser.
  parse time: 807s
Node stats: total(0), max(0) in 0s
Way stats: total(0), max(0) in 0s
Relation stats: total(0), max(0) in 0s
Committing transaction for planet_osm_point
Committing transaction for planet_osm_line
Committing transaction for planet_osm_polygon
Committing transaction for planet_osm_roads
Setting up table: planet_osm_nodes
Setting up table: planet_osm_ways
Setting up table: planet_osm_rels
Using built-in tag processing pipeline
...
Going over pending ways...
	0 ways are pending

Using 16 helper-processes
Finished processing 0 ways in 0 s

Committing transaction for planet_osm_point
Committing transaction for planet_osm_line
Committing transaction for planet_osm_polygon
Committing transaction for planet_osm_roads
Committing transaction for planet_osm_point
Committing transaction for planet_osm_line
...

Going over pending relations...
	0 relations are pending

Using 16 helper-processes
Finished processing 0 relations in 0 s

Committing transaction for planet_osm_point
ПРЕДУПРЕЖДЕНИЕ:  нет незавершённой транзакции
Committing transaction for planet_osm_line
ПРЕДУПРЕЖДЕНИЕ:  нет незавершённой транзакции
Committing transaction for planet_osm_polygon
ПРЕДУПРЕЖДЕНИЕ:  нет незавершённой транзакции
Committing transaction for planet_osm_roads
ПРЕДУПРЕЖДЕНИЕ:  нет незавершённой транзакции
...
Completed planet_osm_point
Completed planet_osm_roads
Completed planet_osm_line
Completed planet_osm_polygon
Stopping table: planet_osm_nodes
Stopped table: planet_osm_nodes in 0s
Stopping table: planet_osm_ways
Stopped table: planet_osm_ways in 0s
Stopping table: planet_osm_rels
Stopped table: planet_osm_rels in 0s
node cache: stored: 0(-nan%), storage efficiency: -nan% (dense blocks: 0, sparse nodes: 0), hit rate: -nan%

Osm2pgsql took 811s overall

real	13m37.556s
user	24m27.071s
sys	1m23.516s

freeExec
Гуру
Сообщения: 1195
Зарегистрирован: 23 апр 2011, 10:32
Репутация: 205
Откуда: Ульяновск

Re: osm2pgsql: обновления для Planet OSM.

Сообщение freeExec » 17 авг 2017, 16:16

А вы первый раз импортировали в режиме --slim?

Аватара пользователя
gala-kt
Участник
Сообщения: 89
Зарегистрирован: 26 июл 2010, 12:05
Репутация: 6
Откуда: Санкт-Петербург

Re: osm2pgsql: обновления для Planet OSM.

Сообщение gala-kt » 21 авг 2017, 12:20

Да, конечно. Опираясь на рекомендации wiki.openstreetmap.org.
Исходная база размещалась с такими параметрами:
time osm2pgsql -c -s -l -C 45000 -d osm170522 -U user -W -H server planet-170522.osm.bz2

Аватара пользователя
gala-kt
Участник
Сообщения: 89
Зарегистрирован: 26 июл 2010, 12:05
Репутация: 6
Откуда: Санкт-Петербург

Re: osm2pgsql: обновления для Planet OSM.

Сообщение gala-kt » 22 авг 2017, 14:10

При этом, если теми же инструментами разместить данные по РФ (эксперимента ради взятые с gis-lab), а на следующий день накатить обновления за день (взятые оттуда же), все работает.
Я правильно понимаю, что данные, обозначенные как changesets в OSM Planet, я могу просто добавлять в существующую базу с помощью osm2pgsql с параметром --append, не подвергая никакой предварительной обработке osmsis'ом?

freeExec
Гуру
Сообщения: 1195
Зарегистрирован: 23 апр 2011, 10:32
Репутация: 205
Откуда: Ульяновск

Re: osm2pgsql: обновления для Planet OSM.

Сообщение freeExec » 22 авг 2017, 14:52

Да нет же, changeset это только описание кто, когда и с каким комментарием залил правку, без данных, вам нужна папка replication.

Аватара пользователя
gala-kt
Участник
Сообщения: 89
Зарегистрирован: 26 июл 2010, 12:05
Репутация: 6
Откуда: Санкт-Петербург

Re: osm2pgsql: обновления для Planet OSM.

Сообщение gala-kt » 22 авг 2017, 14:57

О как. Спасибо. А что делать с replication?

freeExec
Гуру
Сообщения: 1195
Зарегистрирован: 23 апр 2011, 10:32
Репутация: 205
Откуда: Ульяновск

Re: osm2pgsql: обновления для Planet OSM.

Сообщение freeExec » 22 авг 2017, 15:41

gala-kt писал(а):
22 авг 2017, 14:57
О как. Спасибо. А что делать с replication?
То что вы пытались сделать с changeset.

Sergey Astakhov
Активный участник
Сообщения: 218
Зарегистрирован: 21 дек 2012, 01:57
Репутация: 52
Откуда: Питер

Re: osm2pgsql: обновления для Planet OSM.

Сообщение Sergey Astakhov » 23 авг 2017, 15:52

Там ещё osmosis задействуется: http://wiki.openstreetmap.org/wiki/HowT ... ely_hstore

Ответить

Вернуться в «PostGIS/PostgreSQL»

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

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