4 ms·
Would be much better if this involved hosting on a normal webserver, rather than requiring a specific one. Another piece of software to keep up-to-date, just fo
by worldofmatthew 4y ago
Would be much better if this involved hosting on a normal webserver, rather than requiring a specific one. Another piece of software to keep up-to-date, just for maps.
- kylebarron 4y agoIf you skipped the "convert to MBTiles" part, you could host it on a normal web server... the issue is that requires each tile to be a separate file, and copying hundreds of millions of tiny files is brittle, slow, and expensive. Having a specialized web server lets us use a more effective file format for the data.
- paisleyrob 4y agoHaving JUST done this for zoom level 12 for the planet it's tedious. It took 9 days, to export to mbtiles, another 2 days going through pngcrush, and about 40 minutes to make it into a squashfs resulting in a 2.6G squashfs file which houses the 22,368,460 PNG files which are then served up directly via nginx in our case.
- hiram112 4y agoIt would be cool if somebody could crowd-source an EBS volume (or some other block storage) template of this that anybody else could easily attach to their cloud instance.
- incanus77 4y agoIndeed this is why MBTiles was created — especially for USB/device transfer and offline use.
- michaelt 4y agoThe highest zoom levels are generally generated on demand, as there’s so many tiles. Zoom level 20 is over a trillion tiles, most of them worthless blue sea tiles. We’re probably talking hundreds of terabytes just for the file system metadata, to say nothing of the tiles themselves. Of course, you could forego the ability to zoom in very far.
- Doctor_Fegg 4y agoWith vector tiles you don't need to generate up to z20 - just to z14 is enough, and that can easily be done in a single .mbtiles (which is an SQLite database of vector tiles).
- akie 4y agoYou can host .mbtiles files with PHP very easily. I wrote a tiny piece of code 9 years ago that I used for a high traffic map server and it worked just fine. https://github.com/infostreams/mbtiles-php https://github.com/infostreams/mbtiles-php I'm sure there are newer solutions out there, which might have more features and are actually maintained. But this did (and still does) the job.
- Doctor_Fegg 4y agoHere's a little bit of code I wrote that lets you host from a normal webserver, where that "normal webserver" is Apache: https://github.com/systemed/mod_mbtiles https://github.com/systemed/mod_mbtiles