【发布时间】:2015-12-17 13:43:21
【问题描述】:
我正在尝试通过使用 Projection 来降低数据存储成本。我读过 Projection Query 只需 1 次读取操作,但在我的情况下,Projection 成本超过 1。这是代码:
Query<Finders> q = ofy().load().type(Finders.class).project("Password","Country");
for(Finders finder:q)
{
resp.getWriter().println(finder.getCountry()+" "+finder.getPassword());
}
执行此操作时,q 对象包含 6 个项目,要检索这 6 个项目,它需要 6 次读取操作,如 Appstats 所示。 谁能告诉我这里出了什么问题?
【问题讨论】:
-
我对objectify一无所知,但我相信您可以将结果作为列表获取或在查询中设置分块(批处理)率。您可能会发现迭代将每个结果作为单独的操作获取。
-
@TimHoffman 我的主要任务是通过一次读取操作获取所有项目。这就是我想使用投影查询的原因。
标签: java google-app-engine projection objectify