2012-04-07 4 views
0

Мне нужно добавить в PropertyList значение для 50 объектов. Я должен убедиться, что ни один другой код не изменит PropertyList в одно и то же время для определенного объекта. Лучше ли иметь одну крупную транзакцию, изменяющую все 50 объектов или 50 малых, меняющих только одну сущность?Операции AppEngine

ответ

2

Если вам нужно именно то, что говорит ваше сообщение (обновление для многих объектов и безопасность транзакций только для каждого объекта), вы можете использовать множество небольших транзакций.

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

+1

ОП сказал: «Я должен убедиться, что ни один другой код не изменяет PropertyList в то же время для конкретного объекта». Для меня это означает, что ему требуется только транзакционная транзакция по каждому объекту, а не по всему набору. –

+0

Я не уверен, как я это пропустил. Благодарю. Обновлено. – mjibson

0

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

В настоящее время вы решаете вопрос «как реализовать этот».

, возможно, вы хотите поделиться своей исходной задачи, так что может быть лучшим решением на вопрос «это то, как он должен работать»

смотрит вперед.

-J

Смежные вопросы