Augmented diffs: Reduce size by filtering by action
I have a usecase for augmented diffs / the Overpass API, where I'm only interested in OSM objects respectively tags that have been added or changed. I'm not interested in objects/tags that were deleted. When I call api/augmented_diff? I receive an augmented diff with usually some tags <action type="delete"> that I will never use.
How about a new parameter actions= (besides id= and bbox=) where one can limit the types of action that the Overpass API will return, e.g. actions=create,modify? That would reduce the amount of data that needs to be transferred from server to client. I also guess it should not be that computationally expensive to do the filtering.
As we're currently precalculating diffs and only serve cached results as a file for download, any additional parameter would interfere with that approach. If download size is an issue, did you already consider using HTTP compression instead?
Caveat: Augmented diff are impacted by a systematic issue at this time. Be sure to check https://github.com/drolbr/Overpass-API/issues/346.
#154 is related (augmented diffs leverages adiff)
If download size is an issue, did you already consider using HTTP compression instead?
@mmd-osm : With compression you mean setting a header like Accept-Encoding: gzip, deflate in your HTTP request?
yes exactly.
@mmd-osm : Yes, I do that already...
See blog
@drolbr : The link you mentioned didn't work. You probably meant https://dev.overpass-api.de/blog/sliced_time_and_space.html ?
Thank you for your continual efforts!