如何在添加列后更新App Engine数据存储中的索引?

时间:2017-12-12 00:25:43

标签: google-app-engine google-cloud-datastore database-schema

我正在使用Google Cloud数据存储区。我已经为实体添加了一个索引列。对于要在查询中显示的现有实体,文档说明需要再次保存所有实体。

在一个快乐的世界中,AppEngine控制台中有一个按钮可以重新索引列。显然,我们生活在一个幸福的世界里。

显然,需要编写代码。执行此代码并确保仅运行此代码的最佳做法是什么? (我正在使用Java。文档似乎只有一个Phython示例,它没有显示代码是如何被触发的,并且阻止了第二次运行。)

这是否会进入稍后被删除的ServletContextListener?

1 个答案:

答案 0 :(得分:0)

我会使用mapreduce。标准是Java& amp;的实现。 Python:

https://cloud.google.com/appengine/docs/standard/java/dataprocessing/

虽然使用Go会更便宜:https://github.com/CaptainCodeman/datastore-mapper你也可以读取并以异步方式保存在goroutine中