Вслед за my earlier question regarding GAE Datastore entity hierarchies, я до сих пор путают о том, когда использовать группы объектов.Когда использовать группы объектов в Datastore GAE в
Возьмите этот простой пример:
- Каждого
Company
имеет один или болееEmployee
сущности Employee
не может быть перемещен в другуюCompany
, и пользователи, которые имеют дело с однимCompany
никогда не сможет увидетьEmployee
S другихCompany
Это похоже на случай, когда я мог бы сделать Employee
с дочернее предприятие от Company
, но каковы практические последствия? Это улучшает масштабируемость, повышает масштабируемость или не влияет? Каковы другие преимущества/недостатки использования или отсутствия использования иерархии объектов?
(Entity группы позволяют транзакции, но предположим на этом примере, что мне не нужно сделок).
Дух здесь определенно прав, и я могу немного пересмотреть технические детали. группы лиц могут повысить масштабируемость, поскольку записи сериализуются для каждой группы сущностей, а не потому, что их данные хранятся близко друг к другу. (пространственная локальность на самом деле часто хороша для кеширования и масштабирования, в зависимости от деталей реализации). Учитывая это, не беспокойтесь слишком много об объеме данных на группу сущностей. Главное беспокоиться о пропускной способности записи.как отмечено во многих других местах, вы не можете делать более 1-10 записей в секунду на группу сущностей. – ryan 2011-01-31 19:57:21