AppEngine - Запись ограничена 1 в секунду - PullRequest
2 голосов
/ 23 февраля 2011

Я изучаю использование AppEngine DataStore для системы баз данных, но меня смущает эта цитата в документации:

" Это позволяет строго согласовывать запросы к одной гостевой книге, но также ограничивает изменения в гостевой книге до 1 записи в секунду (поддерживаемое ограничение для групп объектов)."

Источник: http://code.google.com/appengine/docs/python/datastore/hr/overview.html

Теперь это означает, что если янастроить мою модель данных следующим образом:

class Guestbook(db.model)
    guestbook_name = string property
    datecreated = date property

class Message(db.model)
    guestbookOwner = guestbook reference
    messageText = string property
    datecreated = date property

Независимо от того, какие данные я фиксирую в сообщении, например:

mess = Message()
mess.guestbookOwner = guestbook
mess.put()

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

Помогите, пожалуйста!

Спасибо

Крис

1 Ответ

7 голосов
/ 23 февраля 2011

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

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

Предел записи в секунду с высокой репликацией применяется к группам сущностей, поэтому, если вы не parent ваши сущности друг к другу, каждая сущность будет отдельной группой сущностей. В этом случае ограничение записи в секунду будет применяться к каждому объекту, а не ко всем объектам.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...