Solr4.2.0+IK Analyzer 2012使用介绍
2017-04-12 14:40
190 查看
原文地址:http://zhengchao730.iteye.com/blog/1833000
准备工作:
下载“IK Analyzer 2012FF_hf1.zip”包。
名词解释:
IK源目录:解压缩“IK Analyzer 2012FF_hf1.zip”后得到的文件夹路径。解压缩后得到下图结构
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>中增加如下内容
这样就OK了。增加了用 IK分词算法提供的字段类型。(IK分词算法的其他扩展配置请自行参考IK算法的配置说明文档。在“IK三把刀”目录里头的PDF文件里有。)
测试阶段
可能一些朋友会想看看效果,确认一下IK分词器成功配置,接下来我们来尝试测试一下IK分词效果吧。
(看到此处的朋友,其实可以跳到看schema.xml的具体字段说明文章去。 大概了解一下schema.xml是干嘛用的,不过不看也无妨,我们只是为了证明IK配置成功。)
我们在schema.xml文件里头。找到如下代码片段。(schema.xml文件在哪里?看步骤2 ...)
意思是这里有一个字段标示名字叫做name,类型text_general,这个时候我们把类型改变成刚刚添加的IK类型text_ik; 变成:
我想看到这里一些朋友应该就能明白schema.xml干嘛的吧。Schema.xml就像一张很大很大的描述索引样子的表。里头有很多字段field,然后要定义字段的类型fieldType。在field里头引用fieldType(有点springIOC的味道)。
启动tomcat ..
进入solr界面 http://localhost:8080/solr
新手可能对solr的界面还不熟悉。我这里截图说明下。选择core(这里没有默认配置。要去选一个);我们这里选collection1
然后再选择analysis
这个是分词界面。
选择刚刚我们针对配置的name字段。然后输入要分词的词语“魔兽世界”,点按钮 “analyse values”;会发现出现了分词为“魔兽”“世界”
我们再试试其他没有引用分词器的字段的分词效果。我选择了“content”字段,出现的结果就是全字分词了(solr默认的一种分词方式)。
这里分词的多样化根据分词器来设定。
准备工作:
下载“IK Analyzer 2012FF_hf1.zip”包。
名词解释:
IK源目录:解压缩“IK Analyzer 2012FF_hf1.zip”后得到的文件夹路径。解压缩后得到下图结构
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
然后再选择analysis
这个是分词界面。
选择刚刚我们针对配置的name字段。然后输入要分词的词语“魔兽世界”,点按钮 “analyse values”;会发现出现了分词为“魔兽”“世界”
我们再试试其他没有引用分词器的字段的分词效果。我选择了“content”字段,出现的结果就是全字分词了(solr默认的一种分词方式)。
这里分词的多样化根据分词器来设定。
相关文章推荐
- Solr学习(2) Solr4.2.0+IK Analyzer 2012
- Solr学习(2) Solr4.2.0+IK Analyzer 2012
- Solr学习(2) Solr4.2.0+IK Analyzer 2012
- IK 分词器 2012 FF 版本取消了 org.wltea.analyzer.solr.IKTokenizerFactory 类【导致只能使用ik分词器来进行分词,无法使用solr自带的其它过滤方式
- Centos Tomcat Solr IK Analyzer 2012FF_hf1配置
- Solr6.3配置和Ik-analyzer6.3使用
- Solr6.3配置和Ik-analyzer6.3使用
- Solr下使用IK-Analyzer实现中文分词器的配置详情
- Solr5.5.1 IK中文分词配置与使用
- 不错的 solr 使用安装介绍
- Solr全文检索服务器搭建与基本使用介绍
- Solr全文检索服务器搭建与基本使用介绍
- solr4.7中文分词器(ik-analyzer)配置
- Solr学习总结(八)IK 中文分词的配置和使用
- Solr(一)solr的介绍、linux安装、使用
- SolrCloud使用教程、原理介绍
- Solr全文检索服务器搭建与基本使用介绍
- Solr全文检索服务器搭建与基本使用介绍
- [Solr实践]Solr Cache使用介绍及分析
- solr4.7中文分词器(ik-analyzer)配置