论坛首页 Java企业应用论坛

如何在动态搜索得到大量的博客记录后,再针对它们各自的Tag进行数量统计?

浏览 6842 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2008-01-26  
我觉得这个问题没有说清楚:
首先是怎么定义的tag:
是用户在一开始写blog 的时候自己制定的tag,那种用逗号分隔的字符串形式的
还是系统在后台默认定义一些tag ,比如ajax,然后用lucene 搜索这篇文章,如果找到了这个关键字就认为这篇文章包含这个tag,否者不是.

另外就是你怎么定义的搜索行为:
是用户输入一个字符串查询,然后查询范围是全文,用的lucene 做的索引,
还是用户要查询的文章的标题(应该指的是第一种)

如果tag 是写blog 时候就自己加上去的,数据库中应该有一个tag 表,包含主键,tagname ,blog外键 ,在用lucene 搜索的时候应该想办法返回这个tag 表的主键,然后把这个主键传给下面这种sql .

select count(tagname),tagname from (
       select tagname , blogid from tag where blogid in  (前面返回的那个主键集合 )
)group by tagname

如果这个tag 本身不是有写blog 的那个人定义的,是系统自己定义的(根据一些热门的关键字),那应该预先计算这些tag ,在blog 保存的时候和系统定义新的tag  的时候.

0 请登录后投票
   发表时间:2008-01-26  
为tag设计一个数据表,在生成博客的时候统计,并更新该表。如果闲统计慢,可以在后台开线程异步做。
0 请登录后投票
   发表时间:2008-01-31  
python做这些不错
0 请登录后投票
   发表时间:2008-02-20  
galaxystar 写道
python做这些不错

和语言有关吗?
PS:觉得robin的思路比较靠普.应该根据term来做,性能才会有保证
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics