首页 > 文章列表 > 百万级数据量下,帖子详情和附件关联表的设计,哪种方案更优?

百万级数据量下,帖子详情和附件关联表的设计,哪种方案更优?

139 2025-01-22

百万级数据量下,帖子详情和附件关联表的设计,哪种方案更优?

帖子详情关联附件表的设计

在百万级的数据量下,需要从帖子表附件表中获取帖子详情附件,有两种设计方式可供选择:

方式一:

  • 帖子表中添加一个attch字段,标记有无附件。
  • 访问帖子详情时,判断attch字段值是否为 1。
  • 若为 1,则查询附件表获取附件。

方式二:

  • 帖子表中添加attch字段。
  • 访问帖子详情时,始终查询附件表,以获取关联附件。

推荐方案:

对于百万级的数据量,推荐使用方式二

原因:

  • 避免了在帖子表中添加冗余字段,降低了表维护成本。
  • 确保每次获取帖子详情时都能取得最新的附件信息,提高数据准确性。
  • 对于海量数据,附件表的查询效率不会显著影响整体性能。

具体实施:

可以在附件表中添加帖子表的主键编号post_id作为外键,然后通过联表查询获取帖子详情和附件:

附件表:

  • id
  • post_id
  • filename
  • url

帖子详情查询:

SELECT post.*, a.filename, a.url
FROM post
LEFT JOIN attach a ON post.id = a.post_id;
来源:1730240649