It's a consequence of how Bigtable works and how we can preserve ordering in a meaningful way for developers (I don't think this topic is covered in this paper: http://static.googleusercontent.com/external_content/untrusted_dlcp/labs.google.com/en/us/papers/bigtable-osdi06.pdf ).
Let's say you have keys that look like this: [..lots of stuff ,a,b,c,d,e,f, ...lots of stuff] If you did the range query "Give me all keys greater than c", you'd get, predictably: [d,e,f, ... lots of stuff] If you did the range query, "Give me all keys less than c", you'd get: [...lots of stuff, a,b] On an extremely large dataset, this doesn't happen in the order that you care about. Most of the time, you want the list to look like this: [b, a, ...lots of stuff] By keeping both ASC and DESC indexes, it allows us to do this. You can read more about indexing here: http://code.google.com/appengine/articles/datastore/overview.html http://code.google.com/appengine/articles/storage_breakdown.html We can probably expand on how and why indexes work. If you have any suggestions please let us know. On Thu, Apr 29, 2010 at 9:11 AM, leo <[email protected]> wrote: > Hi, > Are both the ascending and descending indexes (for example for a > property) physically stored in Bigtable ? I mean, can´t the ascending > order index also be used as descending (starting from the bottom up) ? > > I´m just a bit curious. I guess there are some good reasons to have > both indexes. > > Thanks. > > -- > You received this message because you are subscribed to the Google Groups > "Google App Engine" group. > To post to this group, send email to [email protected]. > To unsubscribe from this group, send email to > [email protected]<google-appengine%[email protected]> > . > For more options, visit this group at > http://groups.google.com/group/google-appengine?hl=en. > > -- Ikai Lan Developer Relations, Google App Engine Twitter: http://twitter.com/ikai Delicious: http://delicious.com/ikailan ---------------- Google App Engine links: Blog: http://googleappengine.blogspot.com Twitter: http://twitter.com/app_engine Reddit: http://www.reddit.com/r/appengine -- You received this message because you are subscribed to the Google Groups "Google App Engine" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
