允许针对子实体进行查询的数据模型

时间:2014-08-27 07:48:51

标签: google-app-engine data-modeling

我正试图为应用引擎的HRD数据存储区设计数据模型。

有两个实体,分别叫一个Food和另一个Ingredient。每个Food可以有多个Ingredients。对于所有其他Ingredient中的所有其他Ingredient,每个Food都是唯一的。每个Ingredient都有一个amount属性。

我希望能够将Food及其所有Ingredients更新为单个一致的单元,但能够查询所有Ingredient的所有Foodamount属性。

由于我想查询所有Ingredients,我需要在没有祖先密钥的情况下存储它们。问题在于这样做使我无法对与单个Food相关联的批量执行强烈一致的更新。因此,如果对Food背靠背进行两次更新,Ingredients的状态将不再保证一致,甚至不会最终保持一致。

我想不出任何解决方案,即使是后台任务和版本化实体也无法做出上述保证。

1 个答案:

答案 0 :(得分:3)

即使每种成分都有食物父母,您仍然可以查询所有成分。