I want to create a difference (change file) between two Europe extracts from OSM data. The files I want to compare are:
- http://download.geofabrik.de/europe-180401.osm.pbf
- http://download.geofabrik.de/europe-latest.osm.pbf
As the files are quite large, before running on them I have tried the processing on smaller extracts:
- http://download.geofabrik.de/czech-republic-180401.osm.pbf
- http://download.geofabrik.de/czech-republic-latest.osm.pbf
The workflow I use is:
- first convert
xxx-180401.osm.pbf
toxxx-ref.o5m
, then create the diff:
osmconvert europe-180401.osm.pbf -o=eu-ref.o5m
osmconvert eu-ref.o5m europe-latest.osm.pbf --diff -o=eu-changes.o5c
Or:
osmconvert czech-republic-180401.osm.pbf -o=cz-ref.o5m
osmconvert cz-ref.o5m czech-republic-latest.osm.pbf --diff -o=cz-changes.o5c
The process works fine with the Czech Republic data. The resulting o5c
file looks reasonable, its size is ~30 MB (the Czech Republic input file is ~700 MB).
I get strange results with the Europe extract. The resuling o5c
file is ~40 GB, while the Europe input is ~20 GB. When inspecting the file, I have found many instances of data which was not changed on OSM in this year at all, like way 539372444.
I have also tried doing the comparison using Osmium instead of Osmconvert, but the result was the same, the change file was huge.
Am I doing something wrong, or are the Europe extracts unsuitable for the comparison for some reason?