Utilizando menos operaciones pequeñas del almacén de datos en appengine

Estoy preparando un álbum de fotos básico en appengine usando Python 27. He escrito el siguiente método para recuperar detalles de la imagen del almacén de datos que coinciden con una "aventura" particular. Estoy usando límites y compensaciones para la paginación, sin embargo, es muy ineficiente. Después de navegar por 5 páginas (de 5 fotos por página) ya he usado el 16% de mis pequeñas operaciones de Datastore. Curiosamente, solo he usado el 1% de las operaciones de lectura de mi almacén de datos. ¿Cómo puedo hacer esto más eficiente para las operaciones pequeñas del almacén de datos? No estoy seguro de en qué consisten.

def grab_images(adventure, the_offset=0, the_limit = 10):
    logging.info("grab_images")
    the_photos = None
    the_photos = PhotosModel.all().filter("adventure =", adventure)
    total_number_of_photos = the_photos.count()
    all_photos = the_photos.fetch(limit = the_limit, offset = the_offset)
    total_number_of_pages = total_number_of_photos / the_limit
    all_photo_keys = []
    for photo in all_photos:
        all_photo_keys.append(str(photo.blob_key.key()))
    return all_photo_keys, total_number_of_photos, total_number_of_pages

Respuestas a la pregunta(6)

Su respuesta a la pregunta