I have a similar situation to https://github.com/mapbox/tippecanoe/issues/109 where I am constantly amending an mbtiles with new geojson using tile-join. I have a serverless backend that serves vector tiles. Sometimes the mbtiles requires many updates in quick succession so re-generating, deleting and uploading all the files for the standard output wasn't feasible. Currently I fetch the mbtiles, generate the tiles and return the requested x/y/z. This works but it still requires me to generate hundreds of files on each request (they are cached but still), it would be great if tile-join had a --one-tile property similar to tippecanoe.
To summarize, for updating tiles I do essentially:
Then on each vector tile request to /endpoint/z/x/y
fetch existing.mbtiles
tile-join -f -e /tmp/tiles -z18 --layer=run /tmp/existing.mbtiles <- this generates the entire structure unnecessarily
return /tmp/tiles/z/x/y.pbf
Admittedly I'm not sure how much of a performance gain I'd get by only generating one tile since I don't know the implementation details but this would be helpful. If you know of a better way of doing what I'm doing that I'm open to that as well, thank you.
I have a similar situation to https://github.com/mapbox/tippecanoe/issues/109 where I am constantly amending an mbtiles with new geojson using tile-join. I have a serverless backend that serves vector tiles. Sometimes the mbtiles requires many updates in quick succession so re-generating, deleting and uploading all the files for the standard output wasn't feasible. Currently I fetch the mbtiles, generate the tiles and return the requested x/y/z. This works but it still requires me to generate hundreds of files on each request (they are cached but still), it would be great if tile-join had a
--one-tile
property similar to tippecanoe.To summarize, for updating tiles I do essentially:
existing.mbtiles
tile-join -f -o /tmp/existing.mbtiles /tmp/new.mbtiles /tmp/old.mbtiles
upload new.mbtiles
asexisting.mbtiles
Then on each vector tile request to /endpoint/z/x/y
existing.mbtiles
tile-join -f -e /tmp/tiles -z18 --layer=run /tmp/existing.mbtiles
<- this generates the entire structure unnecessarily/tmp/tiles/z/x/y.pbf
Admittedly I'm not sure how much of a performance gain I'd get by only generating one tile since I don't know the implementation details but this would be helpful. If you know of a better way of doing what I'm doing that I'm open to that as well, thank you.