基于标签的信息管理数据库应该怎么设计?

2016-01-28 14:02:46 +08:00
 HypoChen

比如说我有一堆收集的信息,需要给他们打若干标签,相同标签的还可以方便查找。

应该怎么设计数据库?按照我之前的设计方式,除了信息表,标签表,再加个关系表。感觉这样太乱了。因为标签是让用户自己打的,个数不限,那么标签表不就膨胀的特别厉害么。

还有别的数据库设计方式吗?豆瓣又是怎么实现他的标签管理的?

751 次点击
所在节点    数据库
7 条回复
JiShuTui
2016-01-28 14:16:57 +08:00
不要怕数据多,只要能够保证用户打的标签都是相关的而不是乱打的,那么就不要怕数据量大
经典的设计都是加一个关系表
qile1
2016-01-28 14:18:44 +08:00
一个信息 id 对应一堆标签,或者一个标签对应一堆信息
不就是这样,难道用二进制维护一个字段,每个代表一个标签,没增加一个标签,二进制多一位
kslr
2016-01-28 14:29:32 +08:00
tags_map
jsq2627
2016-01-28 14:32:54 +08:00
这样设计没什么问题的。遇到具体的性能问题再具体优化。
loading
2016-01-28 14:36:17 +08:00
看你的业务逻辑!其他都是空谈,先跑起来再说!
gamexg
2016-01-28 14:39:03 +08:00
自动推荐常用标签,可以让标签数量降低。
京东商品评价时意思差不多就直接点一下而不是自己创建一个新标签。
est
2016-01-28 14:40:12 +08:00
mysql 官方曾经有一篇专门的 article 讲这个问题。可惜找不到了。 -__-

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/253987

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX