stackoverflow和delicus都有提供Related Tags的功能。
给出几个Tag,然后将关联的Tag给出。
不知大家有做过没
能想到的方案:
1. 建立一张Tag关联表,保存Tag的关联关系以及关联条目的数目。在用户打标签的时候更新标签的关联表,并更新关联数目。
比如用户打标签 a,b,c
ab 1
ac 1
bc 1
abc 1
好处:
应当效率不错,可以按照关联Tag条目数进行排序。
问题:
实现起来麻烦点。
必须限制每个条目的tag数,不然记录数会膨胀的非常快。9*8*7...*1
估计stackoverflow应当用的是这个方案。在stackoverflow里限制tag数最多为5。一方面可能是控制tag质量,另一方面应当是技术原因。
2. 提取当前页面上条目的所有tag
比如ios的tag页面
有条目:
iphone4:iphone4,ios,mobile
ipod:ipod,ios,mp3
提取出的关联tag:
ios,mobile,mp3
好处:
实现简单,如果存在关联tag,肯定可以查出来。
问题:
效率低
显示的关联Tag随机性比较大。
给出几个Tag,然后将关联的Tag给出。
不知大家有做过没
能想到的方案:
1. 建立一张Tag关联表,保存Tag的关联关系以及关联条目的数目。在用户打标签的时候更新标签的关联表,并更新关联数目。
比如用户打标签 a,b,c
ab 1
ac 1
bc 1
abc 1
好处:
应当效率不错,可以按照关联Tag条目数进行排序。
问题:
实现起来麻烦点。
必须限制每个条目的tag数,不然记录数会膨胀的非常快。9*8*7...*1
估计stackoverflow应当用的是这个方案。在stackoverflow里限制tag数最多为5。一方面可能是控制tag质量,另一方面应当是技术原因。
2. 提取当前页面上条目的所有tag
比如ios的tag页面
有条目:
iphone4:iphone4,ios,mobile
ipod:ipod,ios,mp3
提取出的关联tag:
ios,mobile,mp3
好处:
实现简单,如果存在关联tag,肯定可以查出来。
问题:
效率低
显示的关联Tag随机性比较大。