> 1.Query with offset on pagination: I use cursors of course but I gave the > option to fallback to query with offset in case of cache-miss or direct > access to a given page. >
Yes... http://code.google.com/appengine/docs/python/datastore/queryclass.html#Query_fetch You will be charged offset+limit Datastore Reads, for queries with limit/offset. Logically, the skipped entities *should* be charged under Datastore Small-ops since the entities aren't actually returned, but from what I've seen they are charged under Datastore Reads. > 2.Filters that emulates the startwith function using the + u'\ufffd'trick: > it probably has to scan and fetch all the entities to compare the strings, > resulting in a high count of Datastore reads. > If the property is indexed, this shouldn't be necessary. -- You received this message because you are subscribed to the Google Groups "Google App Engine" group. To view this discussion on the web visit https://groups.google.com/d/msg/google-appengine/-/VAUTK42NdlYJ. To post to this group, send email to google-appengine@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.