【问题标题】:Best way to count number of records from NDB library计算 NDB 库中记录数的最佳方法
【发布时间】:2019-04-20 08:41:23
【问题描述】:

我正在开发一个应用程序,在该应用程序中,我明确地将 memcache 与 Google Appengine 的 NDB 库一起使用。我想要这样的东西。

1) 从数据存储中获取 100 条记录并将它们放入内存缓存中。

2) 现在每当用户想要这些记录时,我都会从内存缓存而不是数据存储中获取这些记录。

3) 如果数据存储区中有新记录,我将使 memcache 无效,然后用 101 条记录填充 memcache。

我正在考虑一种方法,比如比较内存缓存和数据存储中的记录数,如果有差异,我会更新内存缓存。

但是如果我们看到 NDB 的文档,我们只能通过检索所有记录来获取计数,而这不是必需的,因为以这种方式无法避免数据存储查询。

对任何人有帮助吗?或者我可以采用什么不同的方法?

提前致谢。

【问题讨论】:

    标签: django python-2.7 nosql app-engine-ndb google-app-engine-python


    【解决方案1】:

    您可以给每条记录一个创建时间戳,而不是依赖计数,并将最新的时间戳保存在内存缓存中。然后要查看是否有新记录,您只需要检查是否有比这更新的时间戳,假设您在该字段上有一个索引是一个非常快速的查询。

    【讨论】:

    • 感谢您的回复。我会试一试。
    猜你喜欢
    • 1970-01-01
    • 2020-12-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多