转 用solr搭建中文搜索应用(使用了MMAnalyzer, 指导实践不错的文章)

http://ayueer.spaces.live.com/blog/cns!9E99E1260983291B!1338.entry
用solr搭建中文搜索应用

因为工作的需要,要搭建一个小型的搜索应用,数据源已经存在了mysql里面,之前的版本是用mysql like做的,这次升级要增强扩展性和性能,添加一些功能上去。

可以选用的方案有几个,

1,在原有的mysql like的基础上扩展,利用mysql的全文查找功能,这方面没有做过,考虑到性能和其它因素,首先排除掉了。

2,套用在公司自己的search机制上,存在的问题是目前的search页面和检索耦合太严重,要套在这个框架中,要定制一些自己的rank和展现的改动比较麻烦,代码看起来有些恐怖。

3,最后决定使用lucene + solr, lucene提供了比较强大的索引检索接口,solr将其封装的很简单,方便各种语言的扩展,不用自己实现基于lucene的api的search server, 提交doc建索引和查询都通过http请求,可以返回xml/json格式的结果,非常的方便。

搭建服务:

1,下载lucene和solr,以及tomcat, 解压将solr下dist中solr.jar放到tomcat/webapps下面命名为solr.war, 拷贝solr目录下example/solr到当前目录或配置tomcat告诉其solr的目录,启动tomcat访问http://localhost:port/solr/admin能够看到solr已经运行了。

2,将使用的中文分词包,我这里选用jesoft的je-analysis.jar放到solr/lib, 配置solr/conf/schema.xml里面加上

<fieldType name="text_chinese" class="solr.TextField">
          <analyzer class="jeasy.analysis.MMAnalyzer" />
</fieldType>

3,修改solr/conf/schema.xml中Fields,定制你要检索的域。

4,ibm developerworks上一个solr转php文章中的代码,将http请求和构建doc的xml封装起来用php调用,你可以参考着做其它程序的接口。Apache Lucene quick-start guide 

5,这样就搭出了最基础的检索框架,在此之上能做什么要靠你的想象了:)

参考文章:

1, Search smarter with Apache Solr, Part 1- Essential features and the Solr schema

2, Search smarter with Apache Solr, Part 2- Solr for the enterprise

3, Apache Lucene quick-start guide

4, 使用solr搭建你的全文检索-我的知识库

5, http://jesoft.cn je-analysis MMAnalyzer的中文分词。

6, Lucene中文分词-庖丁解牛Paoding Analysis,另一个很赞的分词,开源的哦,相当不错。

7, solr 的主页 http://lucene.apache.org/solr/, 有一个不错的wiki,关于tomcat配置部署和高级faceted search和cache一些高级的功能都可以在这里看到。

评论

请稍候...
很抱歉,您输入的评论太长。请缩短您的评论。
您没有输入任何内容,请重试。
很抱歉,我们当前无法添加您的评论。请稍后重试。
若要添加评论,需要您的家长授予您相应权限。 请求权限
您的家长禁用了评论功能。
很抱歉,我们当前无法删除您的评论。请稍后重试。
您已超过了一天之内允许提供的评论数上限。请在 24 小时后重试。
因为我们的系统表明您可能在向其他用户提供垃圾评论,您的帐户已禁用了评论功能。如果您认为我们错误地禁用了您的帐户,请联系 Windows Live 支持部门
完成下面的安全检查,您提供评论的过程才能完成。
您在安全检查中键入的字符必须与图片或音频中的字符一致。

若要添加评论,请使用您的 Windows Live ID 登录(如果您使用过 Hotmail、Messenger 或 Xbox LIVE,您就拥有 Windows Live ID)。登录


还没有 Windows Live ID 吗?请注册

引用通告

此日志的引用通告 URL 是:
http://ayueer.spaces.live.com/blog/cns!9E99E1260983291B!1338.trak
引用此项的网络日志
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值