该帖已经被评为良好帖
|
|
---|---|
作者 | 正文 |
发表时间:2010-01-12
最后修改:2010-01-12
之前用庖丁,在搜索
“日常用语8000句(102) - 断念、绝望” 可以把有'日常用语"的其他的都可以搜索出来,不过用了这个就不行了 我是用的 query = IKQueryParser.parse("title",queryString); 是不是就是说分词没有起作用? |
|
返回顶楼 | |
发表时间:2010-01-12
刚看到lucene3.0带有SmartChineseAnalyzer
|
|
返回顶楼 | |
发表时间:2010-01-12
zxzheaven 写道 之前用庖丁,在搜索
“日常用语8000句(102) - 断念、绝望” 可以把有'日常用语"的其他的都可以搜索出来,不过用了这个就不行了 我是用的 query = IKQueryParser.parse("title",queryString); 是不是就是说分词没有起作用? IKQueryParser默认把“日常用语8000句”解析为“日常”and“用语”and“8000”and“句”,如果你想使用标准的QueryParser,就可以搜索你要的那种结果了 |
|
返回顶楼 | |
发表时间:2010-01-12
zxzheaven 写道 刚看到lucene3.0带有SmartChineseAnalyzer
那个就是中科院算法的java版了,不过貌似用的是1.0的算法,2.0和3.0算法都是商用的,需要付费。 |
|
返回顶楼 | |
发表时间:2010-01-13
linliangyi2007 写道 zxzheaven 写道 之前用庖丁,在搜索
“日常用语8000句(102) - 断念、绝望” 可以把有'日常用语"的其他的都可以搜索出来,不过用了这个就不行了 我是用的 query = IKQueryParser.parse("title",queryString); 是不是就是说分词没有起作用? IKQueryParser默认把“日常用语8000句”解析为“日常”and“用语”and“8000”and“句”,如果你想使用标准的QueryParser,就可以搜索你要的那种结果了 谢谢你的回复,不过我不太明白为什么“日常用语8000句”解析为“日常”and“用语”and“8000”and“句”这样搜索不出来? 默认的是 “或” 的关系吗? |
|
返回顶楼 | |
发表时间:2010-01-13
现在IK 版本升级了,使用3.2
使用sort1.4版本,升级Lucene到3.0,sort1.4范例中为2.9.1 版本,升级到3.0后, 替换掉jar包,启动发现找不到 严重: java.lang.NoClassDefFoundError: org/apache/lucene/search/ConstantScoreRan eQuery at org.apache.solr.handler.admin.AdminHandlers.inform(AdminHandlers.jav :82) at org.apache.solr.core.SolrResourceLoader.inform(SolrResourceLoader.ja a:486) 3.0已经删除掉了ConstantScoreRaneQuery.java ,可是sort1.4中还引用,这个问题应该怎么解决? |
|
返回顶楼 | |
发表时间:2010-01-13
songzi0206 写道 linliangyi2007 写道 songzi0206 写道 whaosoft 写道 lucene 有点怪异 无法理解为什么不向下兼容~~ ~
对了 我在用compass 不知道能不能和你的这个结合呢? 不过我能用庖丁 我之前也用compass,但是性能测试下来貌似并发搜索部分性能达不到预期啊,一般搜索500个并发平均响应时间1100ms,复杂一点搜索还出现过死锁,不知道ls有没有遇到这种情况。 老实说,既然是全文检索,文件数据库比RDB要快的多。你把索引存数据库,中间再由JDBC协议转一手,可定不能高并发了。 我没有把索引存在数据库中,貌似并发搜索部分的瓶颈在compass,直接在lucene基础上写要好不少 真不好意思 我今天才看见回帖 感谢大家的关注 我用compass 完全因为我们公司现在的框架 由于框架是我用我之前公司改的 而且持久层用hibernate 还要用配置文件那样写 所以我只能用compass了 而且我也不好推翻自己的框架呀 确实他很慢我感觉 简直有点无法忍受 后来我没叫compass和spring的事务结合起来 查索引时不查数据库了 现在速度还能将就 用compass 主要因为我要坚持我们 要返回pojo的原因 感觉挺方便就嫩么用了 不过朋友推荐我 用sphinx 不知道有用过的没? |
|
返回顶楼 | |
发表时间:2010-01-13
talangniao 写道 现在IK 版本升级了,使用3.2
使用sort1.4版本,升级Lucene到3.0,sort1.4范例中为2.9.1 版本,升级到3.0后, 替换掉jar包,启动发现找不到 严重: java.lang.NoClassDefFoundError: org/apache/lucene/search/ConstantScoreRan eQuery at org.apache.solr.handler.admin.AdminHandlers.inform(AdminHandlers.jav :82) at org.apache.solr.core.SolrResourceLoader.inform(SolrResourceLoader.ja a:486) 3.0已经删除掉了ConstantScoreRaneQuery.java ,可是sort1.4中还引用,这个问题应该怎么解决? solr1.4目前支持的是Lucene2.9啊,这个我就没办法了,不过好在IK3.2是支持Lucene2.9的 |
|
返回顶楼 | |
发表时间:2010-01-13
zxzheaven 写道 linliangyi2007 写道 zxzheaven 写道 之前用庖丁,在搜索
“日常用语8000句(102) - 断念、绝望” 可以把有'日常用语"的其他的都可以搜索出来,不过用了这个就不行了 我是用的 query = IKQueryParser.parse("title",queryString); 是不是就是说分词没有起作用? IKQueryParser默认把“日常用语8000句”解析为“日常”and“用语”and“8000”and“句”,如果你想使用标准的QueryParser,就可以搜索你要的那种结果了 谢谢你的回复,不过我不太明白为什么“日常用语8000句”解析为“日常”and“用语”and“8000”and“句”这样搜索不出来? 默认的是 “或” 的关系吗? 是的。and关系一定是要求几个词都出现在文档的同一field中,这将提高命中率,但降低召回率。如果你的查询短语是“日常 用语 8000局”,那么带空格的短语IKQueryParser会解析为or |
|
返回顶楼 | |
发表时间:2010-01-13
对了 lz 你经常上什么 聊天工具呢?
|
|
返回顶楼 | |