Лучше всего вам выбрать ключи для всего набора результатов и спрятать их в сеансе или в javascript.Каждый следующий / предыдущий может загрузить следующий элемент в вашем списке по идентификатору.Загрузка по идентификатору очень дешево.Вы можете кэшировать полные результаты запроса в memcache, если он не слишком велик, но это будет зависеть от того, какие объекты вы выбираете.