Бенчмарки Osmosis и наборы POLY-файлов по регионам РФ

Zkir, можно, но если ты думаешь, что это сильно замедляет работу Osmosis, то это не так. Или ты еще из каких-то соображений?

Нет, только из соображений скорости обрезки.

тогда не стоит менять, наверное, посмотри в бенчмарках как меняется скорость при использовании Mbr и сложного полигона, сильно это не помогает.

Ладно, будет время сравню со своими (грубыми, максимум 20 вершин) поли-файлами.

ок, сообщай, если я что-то пропустил, упрощу границы.

woidrick, я добавил в архив poly/russia_full.poly - это граница РФ, т.е. общий poly для всех в этой папке.

Границу евразии пока не делал, если хочешь я объясню из чего и как именно она делается. Суть в том, что там куча островов, которые по хорошему надо включить в общую границу, я это сделал для РФ, но мне влом сидеть и это делать, это ручная работа.

sim, спасибо скачал.

за инструкцию - буду благодарен

пока нет смысла муторно включать все острова, я планирую это просто про запас, когда эти детали кто-нибудь попросит. евразию мне достаточно приблизительно, просто она мне нужна по задуманной логике вложений территорий. можно даже грубо прямоугольниками до северного полюса, обойдя гренландию, поаккуратнее по границе с африкой, хотя что там аккуратничать - суэцкий канал, далее все острова около малазии - нахрен, японию включать если включена англия (она ничем её не хуже :slight_smile: тоже грубо прямоугольниками (просто инструкцию я пока осилю, а резать планирую в пятницу, когда планета скачается.

Я немного расширил описание на странице.
Дополнительно в твоем случае нужно:

  1. Загрузить вимэп, например здесь: http://gis-lab.info/qa/vmap0.html
  2. Выбрать нужный слой (например bnd-political-boundary-a из EUR и SAS)
  3. Дальше по инструкции в QGIS
  4. Создать новый слой - нарисовать большой полигон (сильно точно не надо, прото границу континента по морю с захватом нужных областей)
  5. Ну и наконец расширением выкинуть полик.

sim: спасибо, буду разбираться, а вы пробовали одновременную резку и сократит ли это время, примерно так, как описано http://lists.openstreetmap.org/pipermail/dev/2008-September/011635.html ?

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

sim: насчёт qgis - решил попробовать упростить себе жизнь и не рисовать вручную границу, а попробовать объединить полигоны средствами qgis. но что но не вижу ничего похожего на эту функцию
upd: всё же удалось применить geoprocessing функцию dissolve

удалось

использовать плагин split shapefile для вырезания группы полигонов по признаку принадлежности к стране, но они остаются раздельными полигонами, и на всём administrative boundary a падает от нехватки ресурсов, успев вырезать десятка три стран.

склеить eur и sas плагином geoprocessing функция union

удалить из получившегося всё кроме относящегося к европе и азии, выделив расширенным поиском a_NA3_DESC != ‘Asia’ AND a_NA3_DESC != ‘Europe’ AND b_NA3_DESC != ‘Asia’ AND b_NA3_DESC != ‘Europe’ и удалив то, что выделилось. сохранить в файле это не получается

я специально не стал советовать идти по пути геопроцессинга, по нескольким причинам

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

если ты все же хочешь пойти по этому пути, то попробуй не удалять все кроме выделенного, а наоборот выделить то что тебе необходимо и сохранить в отдельный новый слой, для этого после выделения надо щелкнуть правой по слою в списке и выбрать Save selection as shapefile.

sim, простите, ещё вопрос, не совсем по теме

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

не подскажете командную строку/опции явы для запуска резки на нескольких ядрах?

имхо не умеет осмосис несколько ядер юзать…

осмосис использует одно ядро, поэтому имеет смысл запускать несколько параллельных потоков
можно использовать top для того, чтобы убедиться, что это работает

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

Кстати. интересно, а что быстрее на не очень производительной машине - ежечасные обновления или суточные? Я имею в виду в абсолютных затратах процессорного времени?

Я думаю на тему как ускорить наложение дейли диффов на planet.osm файл. Процесс у меня занимает полтора суток на каждый дифф. В таком режиме я от реалтайма отстаю. Подскажите, если использовать базу - улучшится ли скорость? Предварительные изыскания показали что нэймфайндер база mysql обновляется довольно шустро, за исключением DELETE, которое на каждую операцию тратит 3 минуты. И в таком режиме я отстаю даже больше, чем на 2 суток на каждый дифф.

Так же выяснилось что почему-то Россия по модифицированному russia_full.poly (добавлена Калининградская область и Чукотка за антимеридианом (±180) обрезается дня 4 (уже не помню, когда запустил) хотя просто russia_full.poly за несколько часов, моя евразия (тоже с куском за антимеридианом, вырезается за часов 5-6, и при этом состоит из порядка 50 вершин. Кто нибудь может посоветовать, как ускорить обозначенные проблемы?

Юзаю постгре + полная база (без обрезки по РФ), на довольно слабеньком п4-2400. Обновления в базу часовыми файлами работают без проблем и без отставания от графика, то есть часовое обновление заливается меньше часа :slight_smile:

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

господа, эта тема про poly-файлы, и про скорость обрезки
я могу подробнейшим образом отчитаться, что сколько занимает у нас в нашей схеме, но создайте для этого отдельный топик.

проблема с completeways=yes вроде решена, бенчмарки обновлены, данные теперь разрезаются с этим ключем
результаты обрезки обсуждаются здесь http://forum.openstreetmap.org/viewtopic.php?id=5274