系统消息系统公告数据建模
系统都会有系统公告或系统消息,这是一个常见的业务。系统管理员在后台新建一条系统消息,选择部分用户(用户群组)或所有用户,用户收到消息后,点击阅读,该用户对当前消息的读取状态将变为已读。
假设系统中有100万用户量,我们发一条系统消息不可能给每个用户写入一条消息或消息关系记录。
需求:
1、系统消息需要分发至系统所有用户、或指定群组用户
2、用户对系统消息有未读、已读等状态
误区:
1、为每个接受用户写入一条消息
2、为每个用户写入消息关系记录(即状态:如未读、已读)
解决文案(仅供参考):
1、建立消息表、用户消息关系表
2、消息只有一条
3、用户消息关系表无记录即为未读,当用户触发阅读后,将用户标识与消息标识关联写入到用户消息关系表(即已读)
具体数据模型如下:
飞过森林 看见海洋