GAE云数据存储:获取最常读取的模型

时间:2018-05-22 22:19:58

标签: python-2.7 google-app-engine google-cloud-datastore

我试图按照最常读取的模型的降序来获取模型列表。这是我到目前为止所尝试的。此客户端查询集提供了模型及其属性/属性的详细信息,以及这些模型相关的详细信息:实体数内置索引计数内置索引大小数据大小复合索引大小复合索引计数。但没有关于读取频率的细节

from google.cloud import datastore
import math

def run_quickstart():
    # [START datastore_quickstart]
    # Imports the Google Cloud client library

    client = datastore.Client()
    query = client.query(kind='__Stat_Kind__')
    detail_list = []
    items = list(query.fetch())
    for results in items:
        results = results.viewitems()
        detail_list.append(results)

    print detail_list

if __name__ == '__main__':
    run_quickstart()

GAE Cloud Datastore是否提供数据库读取频率的任何此类信息?

1 个答案:

答案 0 :(得分:2)

不,没有数据存储读取频率统计(目前至少)维持。查看Datastore Statistics文章,查看完整的统计信息列表。

不久前发布了类似问题的写入统计信息:GAE Cloud Datastore: Get most frequently written models。与该答案类似,您可以构建一个方案来自己保持读取统计数据。你可能会发现PreGet钩子(和/或它的朋友)很方便。

对于我的应用程序,我构建了一个数据存储区访问跟踪方案,该方案也可用于收集此类统计信息(但它仅涵盖直接实体查找,而不是通过查询结果读取的那些)。见Are ndb cached read ops still counted as datastore read ops for billing purposes?