Tandrow
Tandrow
采纳率28.6%
2016-01-26 08:32 阅读 2.4k
已采纳

一个数据库设计的问题,群组人员的维系问题

3

想要实现和qq群一样的功能,数据库的表该怎么设计,之前有想过通过一个表将用户和群联系起来,这个表放用户id和群组id,但是一想一个用户多个群,一个群那么多用户,这个数据量会非常大。想了好久没想明白该怎么做,有没有大神能给点思路指导指导,谢谢了图片说明

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

3条回答 默认 最新

  • 已采纳
    wanghan1977 wanghan1977 2016-01-29 02:16

    对用户群表添加用户从表,以群id+用户id作为联合主键
    从表中可以添加用户在群中的个性化信息
    对用户从表中群id与用户id添加索引,提高查询效率

    实际场景中,用户群与用户不会发生笛卡儿乘积那样的数据组合,所以先不需要考虑大数据量
    等业务发展,可以考虑用分区,分表,分库的方式一步步拓展数据结构

    点赞 评论 复制链接分享
  • bdmh bdmh 2016-01-26 08:47

    你的想法是对的,两者之间有一个关联表,联合主键

    点赞 评论 复制链接分享
  • caozhy 从今以后生命中的每一秒都属于我爱的人 2016-01-26 23:57

    基本的设计就是你说的那样,但是为了提高性能,我们有很多改进的办法,比如说在用户表中添加冗余字段缓存它的群组关系。分表分库,并且并行查询。对外键做索引等等。

    点赞 评论 复制链接分享

相关推荐