2010-11-05 54 views
0

我正在创建对象查找表并且不确定究竟要调用哪个对象。这是一个社交网络。我知道像照片,视频,状态等项目是对象,但帐户设置,邮件文件夹,邮件附件,错误消息等是什么?像“标签”这样的一些东西是单独一个对象还是仅当我们将它与Photo标签,Video标签,Peopletag等结合使用时才是对象?为查找表建模系统对象

我们是否用系统建模所有对象1到1,或者有父对象和子对象用于查找目的?

回答

1

如果你指的是数据库模式,你应该这样想。

如果两个错误在语义上相同(即“foo”==“foo”),那么它可以变成查找表。如果两个名称在语义上不相同,即使它们具有相同的值(即,“john”==“john”但人员不同),则不应使用查找表。

对于像标签这样的东西,您可能想要使用查找表,但如果它们将由用户输入,最好将它们保存为数据库中的字符串。查找表最适用于大型对象(以减少存储)或不经常更改的值。这也有例外,但这是一个很好的经验法则。

这是否有意义?

Erick

+0

查找表仅存储系统具有的对象列表,而不是对象的实际用户内容。这些都存储在像user_photos,user_videos等他们独立的表中。但他们都需要链接到父对象表,所以我可以拉入用户对象的分析。所以对象查找表将只有object_id&object。但我不确定物体应该如何深度,因为照片是物体,但照片标记可以是物体,照片评论可以是物体,照片建议可以是物体。或者我们将评论,照片,推荐模式分开来建模吗? – Mia 2010-11-06 00:49:07

+0

另外,如果我们不使用查找表并且该数据需要被固定列表项目的网站,我们还会如何存储更改很多的数据?我认为所有受限制的用户输入应该基于查找来判断它是否改变或不改变? – Mia 2010-11-06 02:10:11