GAE数据存储增量ID

时间:2015-08-27 23:31:51

标签: java google-app-engine increment auto-increment google-cloud-datastore

在我的项目(Java)中,我需要存储在数据存储区中的实体的增量ID。对我来说最重要的是每个下一个值都会比前一个值更大。

我尝试使用DatastoreService.allocateIds(),但是在一些递增金属ID之后,它会从商店中的随机位置获取id,并且它违反了订单。

有人能帮助我吗? 提前谢谢。

1 个答案:

答案 0 :(得分:0)

您应该使用内置ID分配器并使用其他字段作为序列ID。我自己尝试了,几乎不可能按照你想要的方式分配ID,如果你犯了一个错误,那么你的整个ap都被b0rked,因为ID只能使用一次。

因此使用此方法:两个ID,一个由数据存储区生成,一个自定义字段是Integer,或者是具有您自己ID的字符串。