仅获取新实体

时间:2017-12-04 22:15:51

标签: google-cloud-datastore

我认为Datastore的key是按插入日期排序的,但显然我错了。我需要定期在数据存储中查找新实体,获取它们并处理它们。

到目前为止,我只会存储上次提取的key并错误地查询大于它的任何内容。

有办法吗?

提前致谢。

1 个答案:

答案 0 :(得分:1)

数据存储自动生成的密钥生成均匀分布,以使搜索更具性能。您将无法了解最后使用密钥添加的实体。

相反,您可以尝试几种不同的方法。

  1. 使用Pub / Sub和您的应用程序架构,以便另一个后台任务将使用最后添加的实体。在实体上添加DB,您只需将新事件发布到具有密钥ID的Pub / Sub中。您的事件监听器(单独的例程)将接收它。

  2. 使用名称并生成自定义名称。但是,由于您希望创建顺序增长的名称,即使不是大范围的数据,也会遇到大小写的情况。您可以在Google Datastore的最佳实践中找到有关此内容的更多信息。 https://cloud.google.com/datastore/docs/best-practices#keys

  3. 您可以添加其他创建时间列,但仍然使用自动密钥生成。