Запросы Google Datastore и возможная согласованность

Я хотел бы подтвердить свое понимание возможной согласованности в хранилище данных Google. Предположим, что у меня есть сущность, определенная следующим образом (используя ndb):

class Record(ndb.Model):
    name = ndb.StringProperty()
    content = ndb.BlobProperty()

Я думаю, что понимаю сценарии 1, но у меня есть сомнения относительно сценариев 2 и 3, поэтому некоторые советы будут высоко оценены.

Сценарий 1: Я вставляю новую запись с именем "Лука» и данный контент. Затем я запрашиваю хранилище данных:

qry = Record.query(name=="Luca")
for r in qry.iter():
    logger.info("I got this content: %r" % r.content)

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

Сценарий 2: Я прочитал существующую запись с именем "Лука», обновите контент и запишите его обратно. Например, если у меня есть ключ "k" этой записи:

r = k.get()
r.content = "new content"
r.put()

Затем я выполняю тот же запрос, что и в Сценарии 1. Когда я получу результаты, предположим, что запись является частью набора результатов (например, потому что индекс уже содержал запись с именем "Лука» и ключ к). Могу ли я тогда гарантировать, что содержание поля будет иметь новое значение?новый контент "? Другими словами, если я обновлю запись, оставив только ее ключевые и индексированные поля, я гарантированно прочту самое последнее значение?

Сценарий 3: Я делаю аналогично Сценарию 2, опять же, где k является ключом записи с именем "Лука ":

r = k.get()
r.content = "new content"
r.put()

но затем я запускаю модифицированную версию запроса:

qry = Record.query(name=="Luca")
for k in qry.iter(keys_only=True):
    r = k.get()
    logger.info("I got this content: %r" % r.content)

В этом случае логика говорит мне, что я должен получить последнее значение содержимого, потому что чтение по ключу гарантирует строгую согласованность. Буду признателен за подтверждение.

Ответы на вопрос(1)

Ваш ответ на вопрос