【发布时间】:2012-10-30 15:17:19
【问题描述】:
我有一种“客户”。当即将插入新的“客户”时,我想运行一个锁定整个 Kind 的事务。事务将首先查询以检查新的“客户”名称是否不存在,然后事务的第二部分在未找到匹配项时运行插入。通过这种方式,我强制执行唯一约束(并将操作限制为每秒大约 1 次插入)。
让我的所有“客户”实体在同一个实体组中的不令人满意的解决方案是创建一个名为“EntityGroups”的种类,其中包含一个名为“CustomersGroup”的记录。这条记录每次都用作新创建的“客户”实体的父级,从而将整个 Kind 分组到一个实体组中。
我的问题是:我担心使用诸如“CustomerGroup”之类的虚拟记录,因为如果发生任何事情并且丢失或删除,我无法将任何新的“客户”实体分配给同一组!我想最好为每个“客户”实体的父级分配一个静态的任意父级,例如“1111111”?我认为术语是“虚拟根实体”,我该怎么做?
请就如何最好地处理这个问题提供任何建议!
【问题讨论】:
标签: google-app-engine unique-constraint entity-groups