You are not logged in.

Announcement

*** NOTICE: forum.openstreetmap.org is being retired. Please request a category for your community in the new ones as soon as possible using this process, which will allow you to propose your community moderators.
Please create new topics on the new site at community.openstreetmap.org. We expect the migration of data will take a few weeks, you can follow its progress here.***

#51 2008-07-27 14:59:12

Jagor
Member
From: Minsk
Registered: 2008-07-06
Posts: 44

Re: Москва. Прокладка маршрутов

Таймаут увеличил. А порядок.. я читаю xml и пишу не руками, поэтому так и получилось. Поправил (только без отступов). Вот по производительности скрипт конечно отдыхает...

По поводу обновлений: можно полностью сливать и раз в неделю, а обновлять применяя osmChange от planet.osm (они выходят по 6 раз в день) - меньше нагрузки на api.

Offline

#52 2008-07-27 18:48:04

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

Re: Москва. Прокладка маршрутов

теперь вываливается с ошибкой

C:\buf\osm\OSMTools>load_map.rb -min_lon 37 -max_lon 38 -min_lat 55 -max_lat 56 -o test.osm
Retriving map within bbox 37.0,55.0,37.25,55.25...  Done
.....
Retriving map within bbox 37.75,55.75,38.0,56.0...  Done
./relation.rb:35:in `inner_xml_exact': undefined local variable or method `nodes' for #<Relation:0x1119cc68> (NameError)
        from ./mapObjectBase.rb:76:in `to_exact_xml'
        from ./map.rb:67:in `to_exact_xml'
        from ./map.rb:67:in `each_value'
        from ./map.rb:67:in `to_exact_xml'
        from C:/buf/osm/OSMTools/load_map.rb:19

Offline

#53 2008-07-27 19:39:29

Jagor
Member
From: Minsk
Registered: 2008-07-06
Posts: 44

Re: Москва. Прокладка маршрутов

Мне повезло - у меня небыло отношений в квадрате:) Пофиксил.

Offline

#54 2008-07-27 20:01:38

Vsevolod Shorin
Member
From: Moscow
Registered: 2008-07-21
Posts: 30
Website

Re: Москва. Прокладка маршрутов

Jagor wrote:

Vsevolod Shorin, а можете ещё добавить Минск(bbox=27.384,53.803,27.779,53.992)?

Я немного пооптимизировал программу и теперь по памяти нормально влезает вся Россия. Завтра постараюсь выложить и сразу добавить и Белоруссию. Где лучше её брать? Там же, где Liosha предложил брать Россию?

Offline

#55 2008-07-27 20:24:05

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

Re: Москва. Прокладка маршрутов

Белоруссия ежедневно http://download.geofabrik.de/osm/europe/

Offline

#56 2008-07-27 20:52:05

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

Re: Москва. Прокладка маршрутов

Jagor wrote:

Пофиксил.

теперь не хватает закрывающих тегов </node>, </way> etc  wink

Offline

#57 2008-07-27 20:56:43

Jagor
Member
From: Minsk
Registered: 2008-07-06
Posts: 44

Re: Москва. Прокладка маршрутов

liosha wrote:

Белоруссия ежедневно http://download.geofabrik.de/osm/europe/

Да, тут самая лучшая.

liosha wrote:

Теперь не хватает закрывающих тегов </node>, </way> etc

Поправил:) завтра подоптимизирую ещё, а то сейчас память может поедать в больших количествах.

Offline

#58 2008-07-27 21:50:51

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

Re: Москва. Прокладка маршрутов

вроде бы заработало. ща попробую настроить скачку через это дело...

Offline

#59 2008-07-28 06:02:27

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

Re: Москва. Прокладка маршрутов

не-а, не получается...
любая ошибка при скачке одного тайла приводит к аварийному завершению всего скрипта

Retriving map within bbox 50.05791241,53.169807212,50.30791241,53.419807212...Er
ror: Net::HTTPInternalServerError (Internal Server Error) when loading from http
://api.openstreetmap.org/api/0.5/map?bbox=50.05791241,53.169807212,50.30791241,5
3.419807212./map.rb:83:in `merge!': undefined method `nodes' for nil:NilClass (N
oMethodError)
        from ./map.rb:109:in `retrive'

Offline

#60 2008-07-28 08:00:15

Jagor
Member
From: Minsk
Registered: 2008-07-06
Posts: 44

Re: Москва. Прокладка маршрутов

можно сделать автоповтор, а можно просто пропустить. можно ещё автоповтор после того, как всё остальное пройдёт. Как лучше?

Offline

#61 2008-07-28 08:22:02

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

Re: Москва. Прокладка маршрутов

имхо правильнее сделать автоповтор с настраиваемыми числом попыток и суммарным временем
дело же не в конкретном тайле, а в сервере или линии

Offline

#62 2008-07-28 08:34:36

Jagor
Member
From: Minsk
Registered: 2008-07-06
Posts: 44

Re: Москва. Прокладка маршрутов

В некоторых случаях (например при ответе BadRequest - повтор не поможет. в данном случае скорее всего нужно будет делить кусок на более мелкие, т.к. в первоначальном больше 50000 точек), а в остальных - можно повторить. Сделаю.

Offline

#63 2008-07-28 08:52:23

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

Re: Москва. Прокладка маршрутов

тогда лучше вначале создать очередь тайлов 0.5x0.5, а при получении BadRequest убирать большой тайл и добавлять две половинки  smile

Offline

#64 2008-07-28 09:12:22

Jagor
Member
From: Minsk
Registered: 2008-07-06
Posts: 44

Re: Москва. Прокладка маршрутов

Нет, 0.5х0.5 нельзя - ограничение в АПИ на 0.25х0.25, но уже 0.25 буду делить если что - на 4 части. Сейчас по проверяю как работает и выложу.

Offline

#65 2008-07-28 10:03:58

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

Re: Москва. Прокладка маршрутов

неправда ваша, ограничение уже давно подняли до 0.5х0.5  smile

Offline

#66 2008-07-28 10:22:01

Vsevolod Shorin
Member
From: Moscow
Registered: 2008-07-21
Posts: 30
Website

Re: Москва. Прокладка маршрутов

liosha wrote:

неправда ваша, ограничение уже давно подняли до 0.5х0.5  smile

Поднять подняли, но Москву, например, такими кусками не повыкачиваешь. Видимо, срабатывает ограничение по памяти или времени. Кстати, я может что-то пропустил, но ограничение уже давно было 0.25 квадратных градуса, то есть хоть 0.5 на 0.5, хоть 0.3 на 0.8.

Offline

#67 2008-07-28 10:25:23

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

Re: Москва. Прокладка маршрутов

ну да, там ещё ограничение 50000 нод
о чём сейчас и речь, надо при отказе запрашивать кусками помельче
http://wiki.openstreetmap.org/index.php … ding_boxes

Last edited by liosha (2008-07-28 10:26:44)

Offline

#68 2008-07-28 10:29:04

Vsevolod Shorin
Member
From: Moscow
Registered: 2008-07-21
Posts: 30
Website

Re: Москва. Прокладка маршрутов

Скачал Белоруссию и попробовал загрузить её вместе с Россией. В принципе, памяти пока хватает, но ничего интересного не получается - сообщения между Россией и Белоруссией нет :-)
Сделал на cooper-е загрузку всей России. Работает, но поднимается всё это уже больше получаса и работает не очень быстро. Вот, например, дорога Омск-Мурманск:
http://cooper.gpsvp.com:6789/#55.053202 … ,33.046875
Поэтому:
- Белоруссию буду делать отдельно.
- Обновлять данные и перезапускать маршрутизатор буду ночью, где-то между тремя и пятью часами.
- Попробую сделать алгоритм быстрее.
Ну и если кто не заметил, запреты поворотов у меня работают неправильно, это тоже надо доделать.
Кстати, на карте у нас немало разрывов. Например, через Нижний на Вятку проехать нельзя:
http://cooper.gpsvp.com:6789/#56.292156 … 7099609375

Offline

#69 2008-07-28 10:31:54

Jagor
Member
From: Minsk
Registered: 2008-07-06
Posts: 44

Re: Москва. Прокладка маршрутов

There are two restrictions on the size of bounding boxes:
They cannot enclose more than 0.25 degrees of latitude or longitude. The area covered by the largest possible bounding box (of 0.25 square degrees) varies from about 900 square miles at the equator to about 400 square miles on Iceland.
They cannot enclose more than 50,000 nodes.
http://wiki.openstreetmap.org/index.php … ding_boxes
а больше нигде не встречал про ограничения. У них нестыковочка - сначала говорят про максимум 0.25х0.25, а потом про 0.25^2:)
Но в любом случае можно начальное деление хоть 1х1 указать, всё равно будет уменьшать пока не загрузит или попытки не кончатся.
Выложил новую версию.

Offline

#70 2008-07-28 10:33:21

Jagor
Member
From: Minsk
Registered: 2008-07-06
Posts: 44

Re: Москва. Прокладка маршрутов

Vsevolod Shorin wrote:

Скачал Белоруссию и попробовал загрузить её вместе с Россией. В принципе, памяти пока хватает, но ничего интересного не получается - сообщения между Россией и Белоруссией нет :-)

Нужно будет занятся на досуге , хотя со стороны Беларуси большая часть дорог доходит до границы, чего не скажеш про Россию:(

Last edited by Jagor (2008-07-28 10:38:09)

Offline

#71 2008-07-28 13:46:33

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

Re: Москва. Прокладка маршрутов

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

сваял небольшой фильтр, после него с файлом можно работать
http://garminmapsearch.com/osm/osmsort.zip

Offline

#72 2008-07-28 13:56:59

Vsevolod Shorin
Member
From: Moscow
Registered: 2008-07-21
Posts: 30
Website

Re: Москва. Прокладка маршрутов

Запустил Белоруссию: http://cooper.gpsvp.com:6787/
Пока без обновления.

Offline

#73 2008-07-28 14:23:28

Jagor
Member
From: Minsk
Registered: 2008-07-06
Posts: 44

Re: Москва. Прокладка маршрутов

liosha wrote:

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

сваял небольшой фильтр, после него с файлом можно работать
http://garminmapsearch.com/osm/osmsort.zip

не сортированный, так как выводит сразу как скачает кусок - раньше был сортированный, но работал медленнее и памяти больше съедал, а вот дублирующиеся объекты - баг.

Offline

#74 2008-07-28 14:27:09

Jagor
Member
From: Minsk
Registered: 2008-07-06
Posts: 44

Re: Москва. Прокладка маршрутов

Vsevolod Shorin wrote:

Запустил Белоруссию: http://cooper.gpsvp.com:6787/
Пока без обновления.

У меня не грузится:(

Offline

#75 2008-07-28 16:09:00

Jagor
Member
From: Minsk
Registered: 2008-07-06
Posts: 44

Re: Москва. Прокладка маршрутов

Jagor wrote:
liosha wrote:

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

сваял небольшой фильтр, после него с файлом можно работать
http://garminmapsearch.com/osm/osmsort.zip

не сортированный, так как выводит сразу как скачает кусок - раньше был сортированный, но работал медленнее и памяти больше съедал, а вот дублирующиеся объекты - баг.

Исправил дубликаты и добавил ключик -s (--sort) для вывода сортированного файла

Offline

Board footer

Powered by FluxBB