Solr6.0.0以上分词器配置[中文]
2017-09-27 15:09
183 查看
solr有一个分词解析的功能,能够将单词或者中文字符拆分成独立的词语 如:中华人民共和国 -->中华 人民 共和国
这个分词器的配置是在solrhome\configsets\sample_techproducts_configs\conf中managed-schema文件,我们不得不提6.0.0之前
solrconfig.xml:每一个solrcoe对应的核心配置,配置了请求路径的映射及各种解释器,位于{solehome}/{solrcore}/conf/solrconfig.xml
managed-schema:在solr 6以后,这个文件没有扩展名,它用于放置索引的字段相关配置,在6.0版本以前,这个文件名叫scheme.xml,需要用户自己维护
fieldType:字段类型,也称“域类型”,它定义了这个“域”所在的处理类型,它指定了如果处理这个“域”的信息,主要是分词相关
dynamicField:动态字段,也称“动态域”,它提供“域”的模糊匹配
copyField:拷贝字段,也称“拷贝域”,它用于相同字段类型的转换,有点类似于java里的BO或VO
analyzer:分词器,定义在fieldType,用于自定义分词器,常用的几个中文分词器:IK Analyzer、庖丁解牛、mmseg4j
uniqueKey:数据的唯一标识,solr需要每条数据都有id,但这个"id"只是一个标识,可以换成任意名称,它相当于数据表的主键字段
在managed-schema中添加一下的中文分词 字段配置
<fieldType name="mmseg4jComplex" class="solr.TextField" positionIncrementGap="100">
<analyzer>
<tokenizer class="com.chenlb.mmseg4j.solr.MMSegTokenizerFactory" mode="complex"/>
</analyzer>
</fieldType>
<fieldType name="mmseg4jMaxWord" class="solr.TextField" positionIncrementGap="100">
<analyzer>
<tokenizer class="com.chenlb.mmseg4j.solr.MMSegTokenizerFactory" mode="max-word"/>
</analyzer>
</fieldType>
<fieldType name="mmseg4jSimple" class="solr.TextField" positionIncrementGap="100">
<analyzer>
<tokenizer class="com.chenlb.mmseg4j.solr.MMSegTokenizerFactory" mode="simple"/>
</analyzer>
</fieldType>
solrconfig.xml相关
requestHandler:类似于springMVC里的requestMapping,用于拦截url映射请求,我们通过客户端或solr控制台向solr服务器发送命令时,由requestHandler做请求的映射。
searchComponent:搜索组件:定义了搜索requestHandler组件类型
下载jar包: https://github.com/chenlb/mmseg4j-solr下载并配置mmseg4j中文分词器,将下载的mmseg4j的两个jar加入tomcat-solr/webapp/solr/WEB-INF/lib/中 mmseg4j-solr-2.3.1-SNAPSHOT.jar
mmseg4j-core-1.10.1-SNAPSHOT.jar
重启Tomcat
找到core的下拉框选择 core
选择Analyse
然后在Fieldvalue写入汉字
Analyse Fieldname / FieldType:选择之前配置的mmseg4类型
点击生成按钮
这个分词器的配置是在solrhome\configsets\sample_techproducts_configs\conf中managed-schema文件,我们不得不提6.0.0之前
solrconfig.xml:每一个solrcoe对应的核心配置,配置了请求路径的映射及各种解释器,位于{solehome}/{solrcore}/conf/solrconfig.xml
managed-schema:在solr 6以后,这个文件没有扩展名,它用于放置索引的字段相关配置,在6.0版本以前,这个文件名叫scheme.xml,需要用户自己维护
关于managed-schema配置:放置了字段映射及分词器相关的配置
field:字段,创建索引所需要的字段名,在solr里它也被称为“域”,一个字段就是一个域,我们搜索时,搜索的是“域”fieldType:字段类型,也称“域类型”,它定义了这个“域”所在的处理类型,它指定了如果处理这个“域”的信息,主要是分词相关
dynamicField:动态字段,也称“动态域”,它提供“域”的模糊匹配
copyField:拷贝字段,也称“拷贝域”,它用于相同字段类型的转换,有点类似于java里的BO或VO
analyzer:分词器,定义在fieldType,用于自定义分词器,常用的几个中文分词器:IK Analyzer、庖丁解牛、mmseg4j
uniqueKey:数据的唯一标识,solr需要每条数据都有id,但这个"id"只是一个标识,可以换成任意名称,它相当于数据表的主键字段
在managed-schema中添加一下的中文分词 字段配置
<fieldType name="mmseg4jComplex" class="solr.TextField" positionIncrementGap="100">
<analyzer>
<tokenizer class="com.chenlb.mmseg4j.solr.MMSegTokenizerFactory" mode="complex"/>
</analyzer>
</fieldType>
<fieldType name="mmseg4jMaxWord" class="solr.TextField" positionIncrementGap="100">
<analyzer>
<tokenizer class="com.chenlb.mmseg4j.solr.MMSegTokenizerFactory" mode="max-word"/>
</analyzer>
</fieldType>
<fieldType name="mmseg4jSimple" class="solr.TextField" positionIncrementGap="100">
<analyzer>
<tokenizer class="com.chenlb.mmseg4j.solr.MMSegTokenizerFactory" mode="simple"/>
</analyzer>
</fieldType>
solrconfig.xml相关
requestHandler:类似于springMVC里的requestMapping,用于拦截url映射请求,我们通过客户端或solr控制台向solr服务器发送命令时,由requestHandler做请求的映射。
searchComponent:搜索组件:定义了搜索requestHandler组件类型
下载jar包: https://github.com/chenlb/mmseg4j-solr下载并配置mmseg4j中文分词器,将下载的mmseg4j的两个jar加入tomcat-solr/webapp/solr/WEB-INF/lib/中 mmseg4j-solr-2.3.1-SNAPSHOT.jar
mmseg4j-core-1.10.1-SNAPSHOT.jar
重启Tomcat
找到core的下拉框选择 core
选择Analyse
然后在Fieldvalue写入汉字
Analyse Fieldname / FieldType:选择之前配置的mmseg4类型
点击生成按钮
相关文章推荐
- IKAnalyzer 中文分词支持Solr 6以上 solrj 6
- 配置solr4.10.0和中文分词IKAnalyzer
- Solr配置,schema.xml的配置,以及中文分词
- 初识solr 安装单节点solr5.5.3 配置中文分词 以及简单使用
- solr cloud 在集群中的配置,以及与中文分词, tomcat等等的整合(1)
- 【solr】Solr中文分词配置(IKAnalyzer)
- Solr之——配置中文分词IKAnalyzer和拼音分词pinyinAnalyzer
- solr4.9之配置中文分词smartcn
- solr3.5整合tomcat并配置中文分词
- Solr5.0配置中文分词包
- solrcloud配置中文分词
- solr 配置中文分词
- solr 5.5.1安装并配置中文分词IKAnalyzer
- solr4.9之配置中文分词smartcn
- Solr5.5.1 IK中文分词配置与使用
- Solr4.7 配置中文分词
- solr中文分词mmseg4j详细配置
- Solr学习总结(八)IK 中文分词的配置和使用
- solr 扩展中文分词 IKAnalyzer 配置文件路径
- (三)solr的dataimport的配置以及中文分词