I have 1 TB of storage on my phone, sometimes it's more than I know what to do with.
So I downloaded every map available in CoMaps. Every. Single. Country.
The result is about 92.1 GB of storage being taken up, for those who are curious
The thing is though, every time a new map update comes out, CoMaps makes me re-download all 92.1 GB of my downloaded maps all over again.
For example, let's say a new map update comes out, and instead of being 92.1 GB, it is now 92.2 GB. Even though there was such a small increase, all my maps from Afghanistan to Zimbabwe and everything in between have to be re-downloaded.
Not only is it annoying for me, but I feel like it strains CoMaps's servers when I tell it to download almost 100 GB of map data every week or two and I feel bad for it
So basically, when there's an update for some of your maps, it won't just grab the new information, it will also re-download all the old information it already had before it seems. Not sure if this is a bug or a feature with a valid reason for being implemented
Has anyone else noticed this or experienced this?
I mean yeah if the area had any changes made since the last update (which is always the case) then you have to redownload that areas files.
For the app itself to figure out what changed, it would need to look through the entire new 92GB of data which would require downloading it anyways.
You could make the server compile a list of only the changes that were made since the last update, but that doesnt work because people will often skip a map update which would cause the changes made in between to be missing. So the server would have to store for every map version ever the difference between it and the newest version. Version control software for this type of stuff exists (like git) but its made for plaintext files in the KB-MB range not GB.
Another way would be to cut the map into even smaller chunks in the background (like square kilometers) and change the app and server so it only downloads chunks that have seen changes since the currently stored version, that would reduce it down quite a bit, but it would still be many GB of data because the majority of data in OSM is contained in high population density areas which also see the most frequent changes. This is still a lot of extra effort for the volunteers running comaps, but would be cool.
Over all though i think what you should do is just not download the entire world map every update. And instead just the areas that you actually need.
Smaller update sizes/smarter updates are one of the things I would really wish for CoMaps to integrate. I'm far away from having all of the world downloaded. Just my home country and parts of neighbouring states, still quit annoying with the current update interval.
I think that the data the server provides would not be an issue. Just keep the changeset from like the last two map updates there. For people upgrading later just download the full map as done currently.
There is a newer version control software that's meant to handle larger files (mostly geared towards game developers). I wonder if that would work well here?
https://lore.org/