google-app-engine - 如何计算存储在 Google Appengine 数据存储区中的给定类型的所有条目数?

标签 google-app-engine

我要寻找的本质上是将此 SQL 翻译成 Google AppEngine(适用于 Java)术语:

select count(*) from Customers

看起来很简单,但从阅读文档来看,我似乎必须运行一个匹配所有客户的查询,遍历它并计算结果,同时考虑分页。我不想检索每个元素,我只想计算它们。

或者另一种方式,有一个 API 可以遍历给定类型的所有条目(目前找不到确切的 API)。这似乎效率很低,更不用说数据存储区调用也有配额限制。

如有任何提示,我们将不胜感激。

谢谢,马克

最佳答案

正如 wooble 所说,bigtable 不支持将行数作为一个基本概念——您可以编写一个包装函数,正如 mcotton 所说,但是,正如他从文档中引用的那样,它仍然最多限制为 1000。

要克服这些限制,您需要为要计算的每种实体保留一个计数器,每次放置此类新实体时计数器都会递增,删除此类实体时计数器会递减。

为了让您的应用程序具有高度可扩展性,您可能希望对此类计数器进行分片,请参阅 http://code.google.com/appengine/articles/sharding_counters.html (不幸的是,我不知道该食谱已翻译成 Java,但概念应该是相同的)。

关于google-app-engine - 如何计算存储在 Google Appengine 数据存储区中的给定类型的所有条目数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/894376/

相关文章:

database - 关于 GAE 数据存储的索引

google-app-engine - mvn gcloud :deploy [Error gcloud app command exit code is: 1]

python - ImportError:无法为 Google App Engine GAE Init 快速入门和教程导入名称 stub

javascript - 从二进制数据在 html5 canvas 中显示图像

google-app-engine - 无法将我的结构放入数据存储区(golang)

python - 按以特定字符串开头的键名删除内存缓存(gae,python)

html - CSS 文件仅部分适用于 Google App Engine

python - 如何使用 "GAE"SDK 在我的计算机上本地运行的 python 代码在浏览器中显示页面?

python - 在 Google Cloud SDK 上运行 dev_appserver.py 时提示 "ImportError: No module named py27_urlquote"

java - 将 urlconnection 文件从 App Engine java 保存到 Google 云存储