数据存储和MemCache条目读取和定价

时间:2017-03-03 06:44:20

标签: google-app-engine memcached google-cloud-datastore

数据存储区按读取的实体数收费。

  1. 如果从memcache中读取实体,它是否算作在数据存储pricing中读取的实体并收到费用?
  2. 如果在同一批次中多次读取实体,它是否算作一次读取或多次读取?
  3. 例如,经典的帖子和标签问题,我想查找帖子列表的标签名称,

    class Post(ndb.Model):
      title = ndb.StringProperty()
      tag_ids = ndb.KeyProperty(repeated=True)
    
    class Tag(ndb.Model):
      name = ndb.StringProperty()
    
    @ndb.tasklet
    def callback(post):
      tags = yield Tag.get_multi(tag_id for tag_id in post.tag_ids)
      raise ndb.Return(tags)
    
    qry = Post.query()
    output = qry.map(callback, limit=20)
    

    post01有tag01,tag02,post02有tag02,tag03。在这种情况下,tag02在同一批次中被查询两次,tag02计数为2次读取还是1次读取?

    1. 是否有任何个人资料库可以获取计费的读数,所以我可以自己弄清楚上述问题?
    2. 提前致谢。

1 个答案:

答案 0 :(得分:1)

您不会因为从memcache中读取实体而收取费用,但您已经接受了 自己关心将实体放入缓存并从缓存中读取。 我认为当您使用复杂的数据模型时,这可能变得非常具有挑战性。

我正在运行一个只有几百个实体的小应用程序 用户读取数据我把所有实体放在缓存中,所有其他用户都会得到 来自缓存的数据。

对于我的其他应用程序,我使用Objectify(我正在使用Java),它支持放置实体 在Memcache中(https://github.com/objectify/objectify)。也许类似Python的东西存在。