Google Cloud - 与本地计算机相比,数据存储速度太慢



我们正在将Google App Engine与Datastore和Objectify一起使用。在我们的本地机器中,执行查询需要 1 秒,而在云中大约需要 20 秒。服务器位置在欧洲西部,我在西班牙,所以我认为这不是问题所在。

我们正在执行的查询只是仅使用 1 个过滤器检索数据:

final CityEntity cityEntity = new CityEntity();
cityEntity.setId(1);
ofy().load().type(Person.class).filter("city =", cityEntity).list();

在数据存储中,查询随结果集的大小而扩展。城里有多少人?如果查询很大,查询不仅会很慢,而且会很快达到 RAM 的限制。

根据您要执行的操作,您可能需要采取不同的方法。例如,您可以执行仅键查询,将结果转换为任务,并为每个人排队一个任务。在你达到任务/cron的10m截止日期之前,这可能会达到数十万,也许可能低百万。对于较大的数量,您可能需要某种形式的映射/减少。

最新更新