繁体   English   中英

GAE /数据存储:如何为频繁更新的统计数据建模我的数据?

[英]GAE/Datastore: How to model my data for frequently updated statistics?

假设我有一个名为User的实体,并且我想存储有关该用户的统计信息,例如他查看了多少页面。 我的难题是应该将统计信息作为“页面浏览量”属性存储在用户实体中,还是应该创建一个名为UserStatistics的新实体,该实体将存储所有统计信息并将其链接到单个用户。

我认为可能最好创建一个新的统计实体,因为我将需要使用许多事务来更新与实体相关的统计信息,否则这些实体将非常小,几乎完全是只读的,并且需要大量访问(memcached)...如果将这些统计信息存储在原始实体中,会产生很多开销吗? 如果我在单个实体上进行大量交易,是否会减慢读取速度?

您应该将经常更新的数据存储在单独的实体中。 每次更新实体时,即使这些属性没有更改,也会在每个索引属性上产生写入费用。

我总是为用户呼叫者个人资料创建一个单独的实体。 配置文件存储所有其他用户数据。

它不会减慢阅读时间,但可能会增加一些费用。 您可以考虑在会话中存储“网页浏览量”,仅在会话关闭时将其写入数据存储区。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM