首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >实时统计(示例)。NoSQL

实时统计(示例)。NoSQL
EN

Stack Overflow用户
提问于 2014-07-25 23:55:55
回答 1查看 214关注 0票数 0

任务

嗨,我有数以千计的用户2-3 online。我也有小组,团队和其他(2-3)有用户的实体。因此,对于几乎每个10 seconds,我都要显示在线统计数据(查询用户和其他实体的各种参数)。我相信,每个5 - 30 seconds用户都可以改变自己的状态。每个1 hour都会移动到另一个组或团队或其他任何地方。我应该使用哪种非sql数据库?我没有经验,只知道no-sql是相当快的,只是读了一点关于Redis, MongoDB, Cassandra的知识。

当然,我将这个数据模型存储在RDBMS中(在线状态和统计数据除外)。

我在想下一个解决方案:

将所有数据存储在json中。使用Redis。前缀id前缀(例如'user_'+userId)

代码语言:javascript
复制
user_id:{"status":"123", "group":"group_id", "team":"team_id", "firstname":"firstname", "lastname":"lastname", ... other attributes]}

group_id:{users:[user_id,user_id,...], ... other group attributes}
team_id:{users:[user_id,user_id,...], ... other team attributes}
...

你会推荐或提议什么?这样的数据查询方便吗?也许我可以使用一些流行的标准算法来查询统计数据(前蒙特卡洛算法用于百分比统计,我不知道)。谢谢

EN

回答 1

Stack Overflow用户

发布于 2014-07-26 01:30:31

您可以使用Redis Hyperloglog,这是Redis2.8.9中添加的一个特性。这个blog post描述了如何非常有效地计算一些看起来与您需要的统计数据非常相似的统计数据。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24959773

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档