GAE - Запросы на закрытые объекты - PullRequest
2 голосов
/ 22 ноября 2010

Я понимаю теорию разделения значений в Google App Engine, изложенную здесь:

http://code.google.com/appengine/articles/sharding_counters.html

но что происходит, когда я хочу выполнить запрос к значению, которое я осквернил? Я не могу просто сделать запрос по значению, потому что оно было случайным образом распределено по N различным счетчикам. Является ли решение просто суммировать эти значения резервных копий для обновления моей основной сущности? Мне любопытно посмотреть, какие решения для этой проблемы придумали другие.

РЕДАКТИРОВАТЬ: я только что обнаружил API очереди задач, и похоже, что это может быть решением для обновления основного значения в фоновом режиме. Кто-нибудь пробовал использовать это параллельно с шардингом?

1 Ответ

0 голосов
/ 11 апреля 2011

вы правы, вы не можете использовать общую сумму в другом запросе к хранилищу данных за один раз, так как она разделена между осколками.однако вы можете выполнить начальный запрос, чтобы собрать все фрагменты, суммировать их в памяти, а затем выполнить исходный запрос, используя эту сумму.

сверх этого, да, очередь задач определенно является хорошим подходом кделать работу, как это в фоновом режиме.взгляните на этот доклад для идей:

http://www.google.com/events/io/2010/sessions/high-throughput-data-pipelines-appengine.html

...