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.***

#1 2010-08-25 14:25:14

Ezhick
Member
From: Moscow
Registered: 2008-10-08
Posts: 2,508
Website

planet dump + daily diffs = бред...

Беру распакованную планету, осмосисом применяю к ней дневной диф, получаю файл размером на 2 ГБ меньше означального файла. Это КАК???

Offline

#2 2010-08-25 19:51:24

gps-Max
Member
Registered: 2010-01-12
Posts: 736

Re: planet dump + daily diffs = бред...

Еще вопрос - почему в часовых диффах попадаются узлы с одинаковым ID разных версий? Осмозис при накатывании такого диффа выходит с ошибкой.

Это разбиралось в листе рассылки, но к решению там вроде не пришли.
http://lists.openstreetmap.org/pipermai … 00438.html
Может, кто знает, как это побороть или обойти?

P.S. Нашел - нужен ключ --simplify-change.

Last edited by gps-Max (2010-08-25 20:03:15)

Offline

#3 2010-09-02 13:46:52

Ezhick
Member
From: Moscow
Registered: 2008-10-08
Posts: 2,508
Website

Re: planet dump + daily diffs = бред...

Да что же за хрень... На свежую планету 0825 накатываю суточный дифф - 0824-0825, чтобы влить в нее возможно отсутствующие данные конца дня, когда она уже генерилась. И размер файла уменьшается на 3 ГИГА, со 160 до 157... ЧЯДНТ?????

Offline

#4 2010-09-02 14:03:24

zverik
Member
From: Saint-Petersburg
Registered: 2009-07-31
Posts: 771

Re: planet dump + daily diffs = бред...

может, в планете при применении диффа чистятся все линии без точек и отношения без участников — и их там скопилось дофига?

Offline

#5 2010-09-02 18:03:59

gps-Max
Member
Registered: 2010-01-12
Posts: 736

Re: planet dump + daily diffs = бред...

Как это - линии без точек? Звучит как дырка от бублика.

Offline

#6 2010-09-02 18:04:37

zverik
Member
From: Saint-Petersburg
Registered: 2009-07-31
Posts: 771

Re: planet dump + daily diffs = бред...

именно

Offline

#7 2010-09-02 19:48:41

Ezhick
Member
From: Moscow
Registered: 2008-10-08
Posts: 2,508
Website

Re: planet dump + daily diffs = бред...

zverik wrote:

может, в планете при применении диффа чистятся все линии без точек и отношения без участников — и их там скопилось дофига?

На два ГИГА???

Offline

#8 2010-09-02 20:12:28

AMDmi3
Member
From: Москва
Registered: 2009-08-12
Posts: 3,315

Re: planet dump + daily diffs = бред...

Сделайте diff и посмотрите, что изменилось.

Offline

#9 2010-09-02 20:15:09

Ezhick
Member
From: Moscow
Registered: 2008-10-08
Posts: 2,508
Website

Re: planet dump + daily diffs = бред...

Дифф 160 гб файла? И как я потом отловлю какие 200 метров изменение от диффа, а какие левые?

Offline

#10 2010-09-02 20:37:08

AMDmi3
Member
From: Москва
Registered: 2009-08-12
Posts: 3,315

Re: planet dump + daily diffs = бред...

Ezhick wrote:

Дифф 160 гб файла?

В чем проблема?

Ezhick wrote:

И как я потом отловлю какие 200 метров изменение от диффа, а какие левые?

Если там 3GB минус 200MB изменений не от диффа, это тривиально.

Offline

#11 2010-09-02 20:40:09

zverik
Member
From: Saint-Petersburg
Registered: 2009-07-31
Posts: 771

Re: planet dump + daily diffs = бред...

Ezhick, попробуй вручную сделать дифф на 100 байт (ну, или как получится — добавить одну точку, например).

Offline

#12 2010-09-02 20:40:41

Ezhick
Member
From: Moscow
Registered: 2008-10-08
Posts: 2,508
Website

Re: planet dump + daily diffs = бред...

Ну попробую оставить на ночь сравниваться...

UPD: diff отказывается сравнивать, говорит память исчерпана, это при 8 гб оперативки.

Last edited by Ezhick (2010-09-02 21:00:01)

Offline

#13 2010-09-02 21:04:58

Ezhick
Member
From: Moscow
Registered: 2008-10-08
Posts: 2,508
Website

Re: planet dump + daily diffs = бред...

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

Offline

#14 2010-09-02 21:30:34

AMDmi3
Member
From: Москва
Registered: 2009-08-12
Posts: 3,315

Re: planet dump + daily diffs = бред...

osmosis сортировать умеет - думается, отсортированные planet и результат применения диффа будут совпадать с точностью до диффа + тех 3GB которые исчезли.

Offline

#15 2010-09-02 21:32:27

Sergey Astakhov
Member
From: St.Petersburg, Russia
Registered: 2009-11-13
Posts: 5,823

Re: planet dump + daily diffs = бред...

Может там просто форматирование разное? Типа там кол-во пробелов, табуляций, \r\n и т.п.

Offline

#16 2010-09-02 21:42:57

zverik
Member
From: Saint-Petersburg
Registered: 2009-07-31
Posts: 771

Re: planet dump + daily diffs = бред...

кстати да.
может, были виндовые переводы строк, а стали юниксовые.

Offline

#17 2010-09-02 23:33:29

AMDmi3
Member
From: Москва
Registered: 2009-08-12
Posts: 3,315

Re: planet dump + daily diffs = бред...

Вполне может быть, в июньской планете было как раз 2G строк.

Offline

#18 2010-09-03 05:06:24

Ezhick
Member
From: Moscow
Registered: 2008-10-08
Posts: 2,508
Website

Re: planet dump + daily diffs = бред...

zverik wrote:

кстати да.
может, были виндовые переводы строк, а стали юниксовые.

Виндовые? Откуда???

Offline

#19 2010-09-03 05:10:57

Ezhick
Member
From: Moscow
Registered: 2008-10-08
Posts: 2,508
Website

Re: planet dump + daily diffs = бред...

AMDmi3 wrote:

Вполне может быть, в июньской планете было как раз 2G строк.

Запустил  osmosis --sort потом диффну, посмотрим.

Offline

#20 2010-09-03 14:25:23

AMDmi3
Member
From: Москва
Registered: 2009-08-12
Posts: 3,315

Re: planet dump + daily diffs = бред...

Ну или, к примеру вот - в планете в <tag> перез закрывающим слешом стоит пробел, в выхлопе осмозиса - нет. Тэгов, правда, всего полмиллиарда.

Offline

#21 2010-09-03 15:59:03

zgremlin
Member
Registered: 2008-07-31
Posts: 332

Re: planet dump + daily diffs = бред...

Ezhick wrote:

Дифф 160 гб файла? И как я потом отловлю какие 200 метров изменение от диффа, а какие левые?

Это уже чрезмерный оптимизм. Если файлы отличаются на 3 гига, то дифф будет не меньше этих 3 гиг. А скорее все 10, при условии идентичности форматирования и сохранения порядка. В данном случае более вероятно около 300 гиг smile

AMDmi3 wrote:

Ну или, к примеру вот - в планете в <tag> перез закрывающим слешом стоит пробел, в выхлопе осмозиса - нет. Тэгов, правда, всего полмиллиарда.

Заочно можно очень долго гадать.
Идентичные по сути xml могут отличаться форматированием кардинально.
Вот только несколько моментов:
Незначащие пробелы и переводы кареток:

<tag1><tag2></tag2></tag1>

идентично

   <tag1>
         <tag2>
         </tag2>
   </tag1>

Более того - это же идентично

<tag1><tag2/></tag1>

Можно использовать разные кодировки, можно использовать коды символов ("&32;" вместо простого пробела).
Ну и так далее...

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

P.S. Даже разница в концах строк (2 символа под DOS/Windows и 1 под UNIX/Mac) даст больше, чем замеченные два процента, если средняя длина строки меньше 50 символов.

Last edited by zgremlin (2010-09-03 16:01:08)

Offline

#22 2010-09-03 16:04:53

AMDmi3
Member
From: Москва
Registered: 2009-08-12
Posts: 3,315

Re: planet dump + daily diffs = бред...

zgremlin, это все и так понятно

Offline

#23 2010-09-03 20:09:57

Ezhick
Member
From: Moscow
Registered: 2008-10-08
Posts: 2,508
Website

Re: planet dump + daily diffs = бред...

подскажите, чем диффнуть два 160 гб файла? первый несколько десятков миллионов строк совпали до символа, дальше meld выжрал всю оперативку и начал дико тормозить систему, пришлось прибить.

Offline

#24 2010-09-03 20:42:00

AMDmi3
Member
From: Москва
Registered: 2009-08-12
Posts: 3,315

Re: planet dump + daily diffs = бред...

Обычный GNU diff не канает?

Offline

#25 2010-09-03 20:49:42

Ezhick
Member
From: Moscow
Registered: 2008-10-08
Posts: 2,508
Website

Re: planet dump + daily diffs = бред...

я уже писал, diff вываливается с фразой про недостаточность памяти

Offline

Board footer

Powered by FluxBB