【发布时间】:2013-02-12 16:37:16
【问题描述】:
我想为论坛网站创建一个数据库...
论坛网站的所有用户都将存储在一个名为 USERS 的表中,其中包含以下字段:
user_name
user_ID
(and additional details)
将有一个名为 FORUMS 的表,其中包含以下字段:
forum_ID
forum_creatorID(which is the ID of one of the users)
forum_topic
replies
views
对于创建的每个论坛(对于 FORUMS 表中的每一行),都会有一个名为 "forum_ID"_replies 的单独表,其中该论坛的确切 forum_ID 将在引号内替换...
因此,每个论坛都会有一个单独的表格,其中将保存该特定论坛的所有回复...
“forum_ID”_replies 表中的字段是
user_ID
user_name
comment
timestamp(for the comment)
我希望我的设计清楚......现在,我的疑问是
我将 user_name 保存为每个 "forum_ID"_replies 中的字段之一。但是,我认为 user_name 可以使用 user_ID 从 USERS 表中引用(或访问),而不是将其存储在每个“forum_ID”_replies 表中。以这种方式,减少了冗余。
但是,如果在每个表中都存储了user_name,那么对user_name的搜索就会减少,并且结果可以更快地显示出来。
哪个更优化?
存储名称及其 ID 以加快访问速度,还是仅存储 ID 以避免冗余?
【问题讨论】:
标签: database db2 redundancy database-optimization