当前位置: 首页 > 面试题库 >

Google AppEngine:如何计算超过1000个数据库的条目?

於炯
2023-03-14
问题内容

我想知道我有多少用户。以前,我是通过以下代码实现的:

users = UserStore.all()
user_count = users.count()

但是现在我有1000多个用户,并且此方法继续返回1,000。

有没有一种有效的编程方式来知道我有多少用户?


问题答案:

它确实是重复的,另一篇文章描述了如何从理论上做到这一点,但我想强调一点,您实际上不应该以此方式进行计数。原因是BigTable本身具有分布式特性,因此对于聚合而言确实很不利。您可能想做的是向该实体添加一个事务计数器,如果有大量事务,则使用分片计数器。请参阅:http
:
//code.google.com/appengine/articles/sharding_counters.html

更新:自1.3.1起,游标使这样的操作变得更加容易:http
:
//code.google.com/appengine/docs/python/datastore/queriesandindexes.html#Query_Cursors



 类似资料:
  • 问题内容: 我如何从数据存储中获取1000条以上的记录,然后将其全部放入一个列表中以传递给Django? 问题答案: 与1.3.6版本开始(公布八月-17-2010),你 CAN 从变更日志: 数据存储区count()查询的结果 以及所有数据存储区查询的偏移量不再上限为1000 。

  • 我想创建一个用PDF-AS填充的ZipOutputStream。我使用的是iText(5.5.7版)。对于超过1000个pdf条目,我在doc.close()上得到一个OutOfMemory-exception并且找不到泄漏。 PDFBuilder 有什么建议我该怎么修复它?我是不是忘了什么?我已经尝试过使用java ZipOutputStream,但它有任何区别。 Thx为你的答案!我理解Byt

  • 我试图为自己创建一个使用DynamoDB的简单应用程序。我从未在高级级别上使用过非关系型数据库,只是在这里和那里存储一个值。 该应用程序是一个记录器。我将记录一些东西,迪纳摩将记录日期并计算一天。 例如,一个用户今天记录多件事情,它只会说今天的日期和记录的时间:5 然后,我可以进行查询,以获取过去一周/一天/一个月内所有logged_times的总和。 我的问题是如何构造一个NoSQL数据库来完成

  • 1、数据库设计最起码要占用这个项目开发的40%以上的时间 2、数据库设计不仅仅停留在页面demo的表面 页面内容所需字段,在数据库设计中只是一部分,还有系统运转、模块交互、中转数据、表之间的联系等等所需要的字段,因此数据库设计绝对不是简单的基本数据存储,还有逻辑数据存储。 3、数据库设计完成后,项目80%的设计开发都要存在你的脑海中 每个字段的设计都要有他存在的意义,要清楚的知道程序中如何去运用这

  • 我有3列(时间,值,结果)的度量表。时间和值是时间序列数据库需要的基础。结果列标记可以具有以下值之一(成功/硬失败/软失败/未知)。 我想在给定的时间窗口内跟踪成功率(成功/总成功率)(因为我将在grafana上使用它,时间窗口可能会改变,并且应该支持动态时间范围查询) 我在流入量0.9上尝试过的东西: Grafana有一个百分比堆栈选项来显示计数值。不幸的是,它不显示百分比值。它只是显示了分布的

  • 问题内容: 考虑: 我希望结果是。 我认为最后一个可以满足我的需要,但不是(空条目来自表单上未填写的输入)。 问题答案: 您可以使用array_filter仅在数组中保留“真实”的值,如下所示: 如果您明确只希望non- ,或者您的过滤器功能更复杂: 因此,仅计算非空项目,就像调用每个空项目一样: