Получение единой сущности хранилища данных GAE, которая более эффективна - PullRequest
0 голосов
/ 09 ноября 2011

Какой процессор эффективнее, 1, 2 или 3?

key = something.key()
id = something.key().id()

1) db.GqlQuery("select.....").fetch(1)[0]

2) db.get(key)

3) get_by_id(id)

1 Ответ

5 голосов
/ 09 ноября 2011

Вариант 1 менее эффективен, поскольку требует запроса. Кстати, обратите внимание, что если вам нужен ровно один результат, вы можете вызвать get() в запросе, который вернет первый результат, или None, если его нет.

2 и 3 идентичны; get_by_id - это просто синтаксический сахар для построения ключа и извлечения его с помощью get.

...