When you call get() on a query, the batch size is set to 1, so no
worries. Similar if you do query_object.fetch(N) -- the batch size is
adjusted to avoid fetching more than N objects.
The only time where you would be fetching unneeded options is if you
use a for-loop over the query and then break. E.g. the following is a
bad way to fetch the first 3 hits:
# Don't do this!
hits = []
for entity in query_object:
if len(hits) >= 3:
break
hits.append(entity)
# Don't do this!
--Guido van Rossum