Я рассматриваю GAE + NDB для нового проекта. Я все еще немного запутался в отношении предков, поэтому я мог бы воспользоваться некоторыми советами о том, как правильно их использовать.
Мой случай: Приложение будет обрабатывать производственные заказы для заводов, мы планируем иметь разных клиентов. Чтобы сократить задачи администрирования, все клиенты будут использовать одно и то же приложение и одно и то же хранилище данных (наличие отдельного приложения и хранилища данных было бы прекрасной китайской стеной между клиентами, но кошмаром для администрирования).
Мне нужно реализовать способ изоляции данных между клиентами. Клиент А не должен иметь доступа к каким-либо данным других клиентов в этом приложении.
Так целесообразно ли использовать предков в хранилище данных для разделения данных от разных клиентов? Думаю, в этом случае у меня могут быть ключи предков, такие как ClientA-Products, ClientA-Orders , ClientB-Продукты, ClientB-Заказы и так далее. Или, возможно, даже иметь ключи для всех транзакций по клиенту: например, ClientA, ClientB..?
Или лучше иметь свойство в каждой сущности, связывающее сущность с Клиентом? В этом случае сущности "продукты" и "заказы" будут иметь свойство "Компания". ", которое должно быть заполнено приложением при каждой записи и включено в каждый запрос.
Заранее спасибо за ваши мысли!