Jump to content

Incremental Pocket Query


ibycus

Recommended Posts

I was just posting to another thread about the idea of an advanced pocket query, when it occured to me, the amount of data I actually use in each pocket query I receive is pretty minimal, even though the size of each query is really pretty large.

So what I'm suggesting is an 'incremental' pocket query, that would be essentially the difference between the query, and the last time it was generated. This would significantly cut down on bandwidth requirements, on both my side, and Groundspeak's side. What would be considered a difference might be up to interpretation, personally most of the time, I only care about the differences in the cache coordinates/status and cache description.

You could still of course run a 'complete' query once a week or what ever just to benchmark everything (or perhaps one would want the incremental to always be relative to a pocket query that is run weekly or something like that). Anyways, just a thought, I suppose be too processor intensive though to justify the effort, but I thought I'd throw it out there anyways.

Link to comment

It's been discussed before, but I'd like to have a PQ that only contains caches with new logs, notes, etc., but none where nothing has changed from the prior PQ. This cannot be done yet.

 

Presumably it would require a time stamp to be updated each time a log, or anything else occurs on the cache page. Then compare this date with the prior PQ date.

Link to comment
There's already an option for that. Just select "Placed during the last week"

Maybe I didn't make myself clear, as this won't do what I have in mind.

 

First off, the value of placed during the last week is dubious at best. As if a cache is placed, and then for whatever reason not listed for a week, it won't show up. Listed in the last week would be a much better option, but still not what I'm looking for.

What I'd really like, is to be able to say, only send me the difference between this pocket query (as of the last time I received it), and this new one. I'm saving all my data in GSAK anyways (and I'm betting most people do in fact have *some* kind of offline database of PQ), so why do I need all that old info?

 

For example,

Monday, I get a pocket query of all caches within 200km of my home coordinates.

Tuesday, I want a pocket query of everything that has changed since monday (maybe include new logs, maybe not)

Wednesday, I want again everything that has changed since monday (I'd say tuesday, but there is a chance I didn't bother to load in Tuesday's pocket query)

etc. etc.

Back on monday again, I want a fresh pocket query of all caches within 200km

and around we go.

 

This isn't just caches placed in the last seven days, it should include any updates to the actual cache description, or coordinates as well.

Link to comment
There's already an option for that. Just select "Placed during the last week"

Maybe I didn't make myself clear, as this won't do what I have in mind.

 

First off, the value of placed during the last week is dubious at best. As if a cache is placed, and then for whatever reason not listed for a week, it won't show up. Listed in the last week would be a much better option, but still not what I'm looking for.

What I'd really like, is to be able to say, only send me the difference between this pocket query (as of the last time I received it), and this new one. I'm saving all my data in GSAK anyways (and I'm betting most people do in fact have *some* kind of offline database of PQ), so why do I need all that old info?

 

For example,

Monday, I get a pocket query of all caches within 200km of my home coordinates.

Tuesday, I want a pocket query of everything that has changed since monday (maybe include new logs, maybe not)

Wednesday, I want again everything that has changed since monday (I'd say tuesday, but there is a chance I didn't bother to load in Tuesday's pocket query)

etc. etc.

Back on monday again, I want a fresh pocket query of all caches within 200km

and around we go.

 

This isn't just caches placed in the last seven days, it should include any updates to the actual cache description, or coordinates as well.

This is much more difficult than it would first appear. The reason is that the list of caches that appear in any PQ is constantly changing. A PQ has a limit to the number of caches it will return. Caches are returned from from specific coordinate, and radiates outward. If your PQ is set at the max (500 caches returned), and someone places a new cache near you, it's going to bump a cache that's on the outer fring. Then, let's say, another cache near you is archived a month later. Suddenly that bumped cache is back in the GPX file. It's been out of your GPX files for a month, and was last changed 3 weeks ago. Should it be included in an incremental listing? It hasn't been changed since the prior GPX file was created. Essentially, the system would have to keep track of when every cache last appeared in every PQ.

 

While it's possible to track this sort of thing, there are things that would a lot more bang for the buck, considering the time and resources needed.

Link to comment

To be honest, without knowing the internal structure of the database, it is hard to know how difficult it would be to implement. Generally it would be best to err on the side of caution, getting an extra cache or two in the query isn't really a big deal, but cutting out 480 caches that haven't changed might cause some decent savings.

It really isn't something I'm asking for 'right now' just more of a 'it would be nice if, and if you're tinkering with that area of code anyways, could you think about'. i.e. something to be implemented in the scale of a few years down the road.

Link to comment
Guest
This topic is now closed to further replies.
×
×
  • Create New...