每组可自定义用户订阅源的数据库设计(所以不是社交的)

时间:2017-12-12 21:29:10

标签: mysql database database-design

我正在创建一个应用程序,其中有多个组包含消息源。我需要知道为X人读取了哪条消息。 Feed也应该按用户自定义。

我在考虑使用以下数据库结构:

messages
  - id (PK)
  - user_id (user that created the message)
  - text
  - group_id
  - created_at

objects
  - id (PK)
  - user_id (user that should receive the object in his timeline)
  - parent_type (can be `message` or some other resource)
  - parent_id (the `id` of the resource based on the type)
  - seen (boolean that indicates if the user has seen the object)

当为组创建消息时,我将在messages表中创建一条记录,并为{{1}中的每个成员创建记录} table。

目前唯一阻碍我的是,最多可能包含~1000-2000个用户的组。对于在这些组中创建的每条消息,将在objects表中创建1000-2000条记录。

这是一个问题吗?如果可能的话,我怎么能解决这个问题呢?

0 个答案:

没有答案