OSM Gazetteer

А можно дома как отгеокодить?

Не понял вопроса.

Это все работа она меня доканает :))))

Вот есть полигон дома , можно у него средствами Gazetteer получить точку середины аналогично как точку poi c адресом ?

Отчего зависит потребление памяти ?

Можно. http://tr1.nowtaxi.ru/gazetteer/#!/map?fid=adrpnt-0946446885-w38491333&details
Можно и дом по адресу найти, этот пример: (Екатеринбург Тимирязева 13) Но поиск пока не очень.

По памяти, на каком этапе?
На построение индекса для рф хватает 6гигов и 3-4 часов. Можно потребление памяти сократить за счет большего времени на обработку.
На этапе поиска, эластик кушает что-то около гига. Для эластика я пока не читал и не пробовал на эту цифру влиять.

Я имел прямо все дома

Как ? мне бы вписаться в пару гиг а времени да хоть 20 часов .
У меня например скрипт для загонки osm в mysql жрет памяти совсем мало - но гад уже работает 3 день … и это ещё без индексов … Индексы похоже похоже будут строиться тоже дофига. Возможно mysql не оптимизированный - где-то 300 записей в секунду, свердловская область импортируется в mysql за пару часов.

Дак возьми готовую выгрузку json’овскую там есть все адреса и все пои, ну или постучись в скайп/джаббер, я объясню как это впихнуть в меньший объем памяти.

Тестировал скорость :slight_smile:
Шустро работает . Файл 1.1G Nov 21 05:16 RU-SVE.osm


+ set +ue
+ '[' '!' -f ./osmsrc/RU-SVE.osm ']'
+ echo 'Begin split'
++ date
+ echo Fri Nov 21 05:34:51 UTC 2014
+ java -Xmx7g -Dfile.encoding=utf8 -jar gazetteer.jar split ./osmsrc/RU-SVE.osm
2014-11-21 05.36.18.975 [main] INFO Split - Split done in 0:01:27.174
+ echo splice
+ java -jar gazetteer.jar slice all
2014-11-21 05.36.19.601 [main] INFO Slicer - Slice [all]
2014-11-21 05.36.23.576 [main] INFO Engine - First run: done relations.
2014-11-21 05.36.23.663 [main] INFO BoundariesBuilder - Done read relations. 681                                                                                                                                                      8 ways addes to index.
2014-11-21 05.36.23.666 [main] INFO BoundariesBuilder - Done read relations. 211                                                                                                                                                       ways addes to index.
2014-11-21 05.36.43.312 [main] INFO Engine - First run: done ways.
2014-11-21 05.36.43.406 [main] INFO BoundariesBuilder - Done read ways. 29629 no                                                                                                                                                      des addes to index.
2014-11-21 05.36.43.440 [main] INFO BoundariesBuilder - Done read ways. 42391 no                                                                                                                                                      des addes to index.
2014-11-21 05.36.43.916 [main] INFO AddrPointsBuilder - Done read ways. 424879 n                                                                                                                                                      odes added to index.
2014-11-21 05.36.43.990 [main] INFO PoisBuilder - Done read ways. 108561 nodes a                                                                                                                                                      dded to index.
^C+ echo 'Output Scv'
++ date
+ echo Fri Nov 21 05:38:07 UTC 2014
+ java -jar gazetteer.jar out-csv
^C++ date
+ echo Fri Nov 21 05:38:08 UTC 2014

root@nominatimtest:/mnt/sdc/with_gazetteer/gazetteer# clear
root@nominatimtest:/mnt/sdc/with_gazetteer/gazetteer# ./make_ru_sve.sh
+ set +ue
+ '[' '!' -f ./osmsrc/RU-SVE.osm ']'
+ echo 'Begin split'
++ date
+ echo Fri Nov 21 05:38:24 UTC 2014
+ java -Xmx7g -Dfile.encoding=utf8 -jar gazetteer.jar split ./osmsrc/RU-SVE.osm
2014-11-21 05.39.52.108 [main] INFO Split - Split done in 0:01:26.885
+ echo splice
+ java -jar gazetteer.jar slice all
2014-11-21 05.39.52.666 [main] INFO Slicer - Slice [all]
2014-11-21 05.41.50.10 [main] INFO Engine - First run: done nodes.
2014-11-21 05.42.38.56 [pool-2-thread-1] WARN BoundariesBuilder - Failed to build geometry for relation 60189.
2014-11-21 05.42.40.17 [main] INFO BoundariesBuilder - Trying to mend polygon for 3969964. Error is Self-intersection at or near point (63.233099, 56.9527877, NaN)
2014-11-21 05.42.40.21 [main] WARN BoundariesBuilder - Cant polygonize relation: 3995475
2014-11-21 05.42.40.27 [main] WARN BoundariesBuilder - Cant polygonize relation: 3995475
2014-11-21 05.42.40.137 [pool-2-thread-1] WARN BoundariesBuilder - Failed to build geometry for relation 4179622.
2014-11-21 05.42.40.145 [main] INFO Engine - Second run: done relations.
2014-11-21 05.42.48.253 [main] INFO Slicer - Slice done in 0:02:55.591
+ echo 'Output Scv'
++ date
+ echo Fri Nov 21 05:42:48 UTC 2014
+ java -jar gazetteer.jar out-csv
++ date
+ echo Fri Nov 21 05:42:50 UTC 2014


О, кто-то прогнал весь процесс не написав мне в скайп!

Был бы у нас бинарный блочной формат с выравниванием записью можно было бы еще быстрее делать.
(o5m и pbf - я смотрел, не совсем то).

Saint_Byte, а нет желания поучаствовать в разработке?

У меня плохо с серверной явой , все больше питоню . Но я отмылил по другому поводу :slight_smile:

Привет, мне нужна помощь сообшества.

Я сейчас тестирую свой поисковик, как он ищет адреса по РФ.
Проверяю по данным ГИС-Лаба по уикам. Это 12 000 адресов с координатами геокодированных полувручную.

Я прогоняю запросы через свой геокодер и сравниваю координаты ответа от моего геокодера с тем что записано для уиков.

Находится примерно половина.
Я занялся перепроверкой данных, в основном либо вообще здания нет в осм либо здание без адреса.

Кто-нибудь готов помочь с перепроверкой 6000 адресов? Потом этот массив данных можно будет использовать для более ли менее адекватного тестирования геокодеров по РФ.

Так уик и так уже в ручном режиме проверен. Зачем двойная работа?

Ну вот смотри:


[main] WARN TestSearch -        Case Республика Башкортостан город Уфа, ул. Белоозерская, 57 FAILED
[main] WARN TestSearch -        FAILED Empty answer
[main] WARN TestSearch -        Case Республика Башкортостан город Уфа, Проспект Октября, 155 FAILED
[main] WARN TestSearch -        FAILED Empty answer
[main] WARN TestSearch -        Case Республика Башкортостан город Уфа, ул. Ленина, 127 FAILED
[main] WARN TestSearch -        FAILED Empty answer
[main] WARN TestSearch -        Case Республика Башкортостан город Уфа, ул. Пархоменко, 155/2 FAILED
[main] WARN TestSearch -        FAILED Empty answer
[main] WARN TestSearch -        Case Республика Башкортостан город Уфа, ул. Ленина, 127 FAILED
[main] WARN TestSearch -        FAILED Empty answer
[main] WARN TestSearch -        Case Республика Башкортостан город Уфа, ул. 50-летия Октября, 7А FAILED
[main] WARN TestSearch -        FAILED Empty answer
[main] WARN TestSearch -        Case Республика Башкортостан город Уфа, ул. Карла Маркса, 69 FAILED
[main] WARN TestSearch -        FAILED Empty answer
[main] WARN TestSearch -        Case Республика Башкортостан город Уфа, ул. Советская, 54 FAILED
[main] WARN TestSearch -        FAILED Empty answer
[main] WARN TestSearch -        Case Республика Башкортостан город Уфа, ул. Достоевского, 39 FAILED
[main] WARN TestSearch -        FAILED Empty answer
[main] WARN TestSearch -        Case Республика Башкортостан город Уфа, ул. Таманская, 47 FAILED
[main] WARN TestSearch -        FAILED Empty answer
[main] WARN TestSearch -        Case Республика Башкортостан город Уфа, ул. Биологическая, 35 FAILED
[main] WARN TestSearch -        FAILED Empty answer
[main] WARN TestSearch -        Case Республика Башкортостан город Уфа, ул. Вологодская, 29 FAILED
[main] WARN TestSearch -        FAILED Empty answer
[main] WARN TestSearch -        Case Республика Башкортостан город Уфа, ул. Железняцкая, 35 FAILED

Это кусочек, я чуть больше перепроверил.
Этих домов в Уфе нету, либо в осм у этих домов нет адреса.

Просто человек отметивший их знал где расположен уик и указал что отметил его точно но не хотел/не умел редактировать ОСМ, поэтому в осм этих данных нет.

А стоят ли на них галочки “УИК принят (точность до дома)” ?
А так в этом случае тебе нужно, что-то похожее что делал Svimik для Эстонии - показать дом, и три кнопки: соответствует, не соответствует, нет номера в осм.

Как я понимаю галочки были проставлены, я выгрузки по уикам использовал там эта опция по другому называется.
Всего уиков 90 тысяч, у меня выгрузка 12 000.

Просто галочка эта значит что уик расположен точно и проверен, а не то что в осм есть эти данные.

В общем, пойду Svimik’у напишу, спасибо что подсказал.

Долго ли, коротко ли, написал вебморду для удобной перепроверки адресов УИКов в ОСМ.

http://osm.me/checkuik.html

Ну попробовал.
Выдала в верхней строке (пишу по памяти) “Москва 9-ая Cеверная линия, дом 1, корпус 2”

Сбоку выдала, видимо, теги addr:street = 9-ая Cеверная линия
addr:housenumber = 1 к2
Gazetteer failed

То есть строка сверху по сути совпала с данными сбоку. Но при этом соседняя улица подписана как не 9-ая, а 6-ая Северная линия. И что в этом случае нажимать? Я просто страницу закрыл. Короче, к вебморде нужна (прямо на ней) подробная инструкция, а то все не очевидно.

Ну вот еще раз попробовал.
Верхняя строка:

Кировская область город Киров, Спасская ул., 34

Сбоку:

building yes
building:levels 2
addr:street Спасская улица
addr:housenumber 34
Gazetteer failed

Визуально все правильно. Нажал “Все верно”. А почему этот УИК вообще показали?

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

У меня статистика на сотню которую успел посмотреть - 50/50.
Половина - фейлы геокодера хотя данные в осм есть, и половина - данных нет.

“Москва 9-ая Cеверная линия, дом 1, корпус 2” - если адрес уика в базе уиков совпал с данными на домике - то домик должен был найтись. Все верно.

Инструкцию - напишу как сочиню.

Вот еще глюк:

Челябинская область г. Челябинск, ул. Кузнецова, д. 7

Здание школы есть, адрес на здании тоже, видимо, есть, указатель внутри здания, но теги взялись с территории школы:

barrier fence
name Школа №105
amenity school
Gazetteer failed