gpt4 book ai didi

python - 优化应用引擎实体 key 的使用

转载 作者:行者123 更新时间:2023-11-28 18:55:25 25 4
gpt4 key购买 nike

我应该关心 Google App Engine 数据存储区中实体的位置吗?我应该为此使用自定义实体键名称吗?

例如,我可以使用 "$article_uuid,$comment_id" 作为 Comment 实体的键名。它会提高获取文章所有评论的速度吗?还是使用更短的键更好?

以这种方式使用 key 是一种好的做法吗?我也可以使用 "$article_uuid,$comment_id" 键名代替索引:

def get_comments(article_uuid, limit=1000):
key_prefix=db.Key.from_path('Comment', article_uuid)
q = Comment.gql("where __key__ > :key_prefix and __key__ < :range_end",
key_prefix=key_prefix, range_end=key_prefix+chr(ord(',')+1))
return q.fetch(limit)

最佳答案

您的数据的局部性将通过您的 key_name 方案 ( ref, see slide 40 ) 得到改善 - 因为您的 key_name 以相应文章的 ID 为前缀,给定的评论元素应彼此靠近存放。

您建议的 key_name 看起来不会太长。我认为您不会在存储空间或序列化/反序列化时间方面看到它与较短 key 之间的太大差异。我希望 Comment 实体的大小将由实体的其余部分决定。

关于python - 优化应用引擎实体 key 的使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3121333/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com