设为首页 收藏本站
查看: 794|回复: 0

[经验分享] Solr学习(二) Solr4.2.0+IK Analyzer 2012

[复制链接]

尚未签到

发表于 2016-12-16 10:04:39 | 显示全部楼层 |阅读模式
开场白:
本章简单讲述如何在solr中配置著名的 IK Analyzer 分词器。
本章建立在 Solr学习(一)  基础上进行配置。
通过(一)的介绍,目前已经成功部署好单实例 solr+tomcat 
 
声明:描述的比较笼统繁琐,有偏差的地方请大家毫不留情的拍砖 DSC0000.gif
 
准备工作:
下载 IK Analyzer 2012FF_hf1.zip包。 详见:IK Analyzer中文分词器创始人 林良益 博客 
   
  名词解释:
IK源目录:解压缩IK Analyzer 2012FF_hf1.zip后得到的文件夹路径。解压缩后得到下图结构东东

DSC0001.png


IK三把刀:上图被选中的3个文件(IKAnalyzer.cfg.xml、IKAnalyzer2012FF_u1.jar、stopword.dic)
Tomcat :以下全部指 tomcat根目录。(例:E:\\apache-tomcat-6.0.35\\)。
 
  开始生产
   
  步骤1:将 IK三把刀”放入目录...\Tomcat\webapps\solr\WEB-INF\lib中,(注意!这里此时由于项目原来启动过一次,webapps下的solr.war包已经被成功发布部署成文solr文件夹了。所以这里是在solr文件内打开 WEB-INF\lib目录, 不然WAR包是不允许放入文件到特定目录)。
      
       步骤2:开始设置IK分词器在schema.xml文件中的配置(schema.xml目录位置在 ...\Tomcat\solrapp\solr\collection1\conf此处的 collection1 是默认的文件夹,有些朋友在先前配置时候会去改变此文件夹名称,请注意自行匹配);
  打开schema.xml文件(尽量使用UE打开,防止乱码)在<types></types>中增加如下内容

<fieldType name="text_ik" class="solr.TextField">  
<analyzer type="index" isMaxWordLength="false" class="org.wltea.analyzer.lucene.IKAnalyzer"/>  
<analyzer type="query" isMaxWordLength="true" class="org.wltea.analyzer.lucene.IKAnalyzer"/>  
</fieldType>

   
 
这样就OK了。 增加了用 IK分词算法提供的字段类型。 (IK分词算法的其他扩展配置请自行参考IK算法的配置说明文档。在“IK三把刀”目录里头的PDF文件里有。
 
测试阶段
 可能一些朋友会想看看效果,确认一下IK分词器成功配置,接下来我们来尝试测试一下IK分词效果吧。  
(看到此处的朋友,其实可以跳到看 schema.xml的具体字段说明文章去。 大概了解一下schema.xml是干嘛用的,不过不看也无妨,我们只是为了证明IK配置成功。)
 
    我们在 schema.xml 文件里头。找到如下代码片段。(schema.xml文件在哪里?看步骤2 ...

<field name="name" type="text_general" indexed="true" stored="true"/>
    意思是这里有一个字段标示名字叫做name,类型text_general,这个时候我们把类型改变成刚刚添加的IK类型text_ik; 变成:
 

<field name="name" type="text_ik" indexed="true" stored="true"/>
    瞎扯:我想看到这里一些朋友应该就能明白schema.xml干嘛的吧。Schema.xml 就像一张很大很大的描述索引样子的表。里头有很多字段field,然后要定义字段的类型fieldType。在在field里头引用fieldType(有点springIOC的味道 - -..)。 
 
启动tomcat ..
进入solr界面 http://localhost:8080/solr 
 
新手可能对solr的界面还不熟悉。我这里截图说明下。
选择core (这里没有默认配置。要去选一个);我们这里选 collection1

DSC0002.png
 

   然后再选择 analysis 
 
 
DSC0003.png
这个是分词界面。

选择刚刚我们针对配置的 name 字段。 然后输入要分词的词语 魔兽世界 ,点按钮 analyse values会发现出现了分词为  “魔兽”“世界”

DSC0004.png
 
我们再试试其他没有引用分词器的字段的分词效果。 我选择了 “content” 字段,出现的结果就是全字分词了(solr默认的一种分词方式)。

DSC0005.png
 
结束!!!  
这里分词的多样化根据分词器来设定。。   个人喜欢使用IK Analyzer分词器;而且配置SOLR比较方便。
 
 
 

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-315043-1-1.html 上篇帖子: Solr集群架构概述及delta-import详细配置 下篇帖子: lucene/solr FSDirectory NIOFSDirectory 性能测试对比与Http11NioProtocol
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表