以前写了一个分词搜索的功能,用ChineseSplitter分词,然后在数据库中用全文索引来搜索。但是现在发现数据量大的时候,效率太低,分词已经改成盘古分词,分词是更准确了,但是效率没提起来。请教一下,做过这方面功能的朋友,有啥办法解决这个效率问题啊?

解决方案 »

  1.   

    SqlServer全文索引 不需要分词
    查询的时候用
    SELECT * FROM 表
    INNER JOIN FREETEXTTABLE(表,*,'关键词') AS KEY_TBL
    ON 表.索引键 = KEY_TBL.[KEY] WHERE  KEY_TBL.RANK>100
    KEY_TBL.RANK就是匹配度
      

  2.   

    是肯定要分词的,因为sql的全文索引的那个分词太差。算了,我现在改用Hubble.net,这个是.net和数据库结合用的。
    谢谢大家的回复。
    大家来顶贴拿分吧。
    顺便善长seo优化的,帮忙看看这个网站http://www.prc-tech.com要怎么优化一下比较好,要优化顶上加粗的那七个关键字,百度迟迟没反应,google上了几个。
      

  3.   

    http://www.prc-tech.com
    第一:html不标准,比如标题<h1>文章标题</h1>
    第二:关键词密度不够
    第三:增加一些单向链接。先把这个做好。。
      

  4.   

    用过lucene.net+盘古分词,速度确实不错!
      

  5.   


    FREETEXT 中文不用分词了吧
    CONTAINS 里的*号到现在还没弄明白