I've been looking closely at the datastore quotas, and couldn't
readily find an answer to this.

Storage is cheap, so no one should ever fear storing large amounts of
data safely in the datastore (and paying for it if necessary).  That's
what it was built for.

However, I'm wondering about communication efficiency between the
datastore and an application.  In the datastore overview, the docs
say:

"A query can also limit the number of results returned by the
datastore to conserve memory and run time."

and then the "Getting, Creating, and Deleting data" page says:

"Query and GqlQuery objects do not execute the query until the
application tries to access the results. When the application accesses
results, the query is executed, and results are loaded into memory as
instances of the model class for the query."

My question is, does "accessing the results" retrieve all of the
entity properties, meaning it counts against the "Data Received from
API" quota?


Imagine a data model where you store images.  Sometimes you just want
the metadata about the image (name, width, height, tags) and sometimes
you want to retrieve the image blob itself.  Since neither Query or
GqlQuery let you specify which properties to return, does the image
blob get returned every time you fetch results?  I'd think not with
the proper use of indexes, but I can't find documentation that says
so. The "Data Received from API" quota is huge, but my concern is the
"conserve memory and run time" in general.




--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
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
-~----------~----~----~----~------~----~------~--~---

Reply via email to