这一章来说下solr cloud怎么使用拼音分词,以及同一个字段怎么样同时支持中文分词和拼音分词。

首先是solr6.1.0搭建拼音分词,这里我使用的是lucene的smartCN加pinyin4j组合的拼音分词。


注意:所有节点都需要操作。

我们先把solr cloud自带的smartCN的jar包放到WEB-INF/lib下。

我的smartCN的位置在solr cloud的安装目录下,目录是:solr-6.1.0/contrib/analysis-extras/lucene-libs/lucene-analyzers-smartcn-6.1.0.jar

我的WEB-INF的目录是:solr-6.1.0/server/solr-webapp/webapp/WEB-INF/lib/

下面我们需要把拼音分词的第三方jar也放到/WEB-INF/lib/下,这两个jar分别是pinyin4j-2.5.0.jar和pinyinAnalyzer4.3.1.jar,pinyin4j这个jar大家可以直接到maven下,

pinyinAnalyzer4.3.1.jar这个jar大家可以直接到网上搜,或者从下面的链接下载,我上传的。

下载地址:http://download.csdn.net/detail/yangcl123/9756031

把jar放到lib目录之后,下面我们就需要修改managed-schema文件,增加拼音分词的类型和字段,如果我们的字段需要同时支持中文分词和拼音分词,我们就要使用copy字段。

下面的manage中类型和字段的设置:

增加fieldtype:

<fieldType name="my_pinyin" class="solr.TextField" positionIncrementGap="0">
             <analyzer type="index">
                 <tokenizer class="org.apache.lucene.analysis.cn.smart.HMMChineseTokenizerFactory"/>
                 <filter    class="com.shentong.search.analyzers.PinyinTransformTokenFilterFactory"    minTermLenght="2"/>
                 <filter    class="com.shentong.search.analyzers.PinyinNGramTokenFilterFactory"    minGram="1" maxGram="20" />
             </analyzer>
             <analyzer type="query">
                 <tokenizer class="org.apache.lucene.analysis.cn.smart.HMMChineseTokenizerFactory"/>
                 <filter    class="com.shentong.search.analyzers.PinyinTransformTokenFilterFactory" minTermLenght="2" />
                 <filter    class="com.shentong.search.analyzers.PinyinNGramTokenFilterFactory" minGram="1" maxGram="20" />
              </analyzer>
        </fieldType>

增加查询字段,支持中文分词(见上一章)和拼音分词:my_ik是上一章设置的IK分词

<field name="openBankName" type="my_ik" indexed="true" stored="true" multiValued="false" />

<field name="openBankNameQuery" type ="my_pinyin" indexed ="true"    stored ="false" multiValued ="true"/>
 <copyField source="openBankName" dest="openBankNameQuery"/>

下面我们把修改的managed-schema文件上传到zookeeper:

替换单个配置文件,我是在solr安装目录执行的
./server/scripts/cloud-scripts/zkcli.sh -zkhost node2:2181,node1:2181,node3:2181 -cmd putfile     server/solr/configsets/xxxxxx/conf/managed-schema

上传完毕之后我们重启solr cloud的所有节点:./bin/solr -c restart

我们进入solr的web页面,找到对应的collection,把配置文件reload一下,如下图:

如果你的需要分词的字段在设置IK的时候已经重新生成一边,这里就不同重建索引啦,如果没有请重新生成一下。


注意:我们需要查询copy的字段才能同时支持中文分词和拼音分词,下面我们在web页面验证下。




solr cloud系列-拼音分词器相关推荐

  1. 服务器安装配置elasticsearch,kibana,IK分词器和拼音分词器,集群搭建教程

    docker安装配置elasticsearch,kibana和IK分词器 elasticsearch文章系列 前置安装docker 创建docker网络 安装Elasticsearch 运行elast ...

  2. solr集成IKAnalyzer中文分词器

    如果想要知道如何安装solr,集成IKAnalyzer中文分词器,批量导入数据库数据,java使用参照以下本博主博文: 安装solr https://blog.csdn.net/u013294097/ ...

  3. Solr配置中文的分词器-简单配置

    Solr配置中文的分词器 文章目录 Solr配置中文的分词器 英文分词 中文的查询 Solr需要配置中文分词器(重要) 配置中文分词后,再分析一次   这篇文章,主要是讲解Solr如何配置中文分词器, ...

  4. Elasticsearch 分布式搜索引擎 -- 自动补全(拼音分词器、自定义分词器、自动补全查询、实现搜索框自动补全)

    文章目录 1. 自动补全 1.1 拼音分词器 1.2.1 自定义分词器 1.2.2 小结 1.2 自动补全 1.3 实现酒店搜索框自动补全 1.3.1 修改酒店映射结构 1.3.2 修改HotelDo ...

  5. 使用docker安装拼音分词器

    要实现根据字母做补全,就必须对文档按照拼音分词. 在GitHub上恰好有elasticsearch的拼音分词插件. 地址:https://github.com/medcl/elasticsearch- ...

  6. 淘东电商项目(47) -商品搜索服务功能的实现(集成拼音分词器)

    引言 本文代码已提交至Github,有兴趣的同学可以下载来看看:https://github.com/ylw-github/taodong-shop 在上一篇博客<淘东电商项目(46) -商品搜 ...

  7. ik与拼音分词器,拓展热词/停止词库

    说明:本篇文章讲述elasticsearch分词器插件的安装,热词库停止词库的拓展,文章后面提到elasticsearch ,都是以es简称. 以下分词器的安装以ik分词器和pinyin分词器为例说明 ...

  8. CentOS安装Elasticsearch_IK分词器拼音分词器_部署kibana_部署es集群

    CentOS安装Elasticsearch_IK分词器_部署kibana_部署es集群 一.部署单点es ①:创建网络 因为我们还需要部署kibana容器,因此需要让es和kibana容器互联.这里先 ...

  9. ElasticSerach7.6.0拼音分词器安装和使用

    第一步:安装ElasticSearch 7.6.0 由于IK和ElasticSerach已经是编译好的,不需要编译,直接在安装解压修改配置文件即可 详情请见另一篇安装博客:https://www.cn ...

最新文章

  1. 洛谷 P1966 火柴排队
  2. 解决 win10 下载文件到某盘 没有权限
  3. while(scanf(%d,n)!=EOF)
  4. php2twig,symfony2 twig模板引擎,symfony2twig模板_PHP教程
  5. Android 系统性能优化(43)---Android OOM案例分析
  6. window xp 自动关机命令
  7. 每个国家对应的语言Locale和国家代码对照表
  8. 什么是测地线(geodesic)?【讲解清晰生动,深入浅出,通俗易懂】
  9. 分体式水晶头_六类水晶头的接线方法(分体式安装图解)
  10. 油藏弹性存储量计算公式_各类油藏采收率计算公式
  11. SQL简体繁体转换函数
  12. 技术人员应该具备的几项基本技能
  13. EAUML日拱一卒 用例图开篇
  14. Jmeter通过HTTP代理服务器录制脚本(二)
  15. html5自动计时,HTML5 时钟/计时器应用程序
  16. 【计算机网络】计算机三级网络——需要理解的题
  17. 龙迅LT7211方案|CS5211替代LT7211设计DP to 2-port LVDS转接板方案原理图+PCB板
  18. 修车案例 | 2017 款荣威 i6 车驾驶人侧车窗组合开关失灵
  19. 【读书笔记】《你有你的计划世界另有计划》——达·芬奇诅咒
  20. 最新出炉的美团三面研发岗,看我如何成功拿到Offer?

热门文章

  1. 知识点归档,博客记录
  2. c++ vs2015 播放音乐_苹果音乐全家桶有哪些 苹果音乐全家桶介绍_智能常识
  3. 安卓 网易云音乐能用的API
  4. 视觉信息应用技术 课程总结(实验分析过程,单双刺激法,T、F检验法)
  5. ROS漫漫长路(一)——Gazebo中机器人圆柱,球,长方体惯性矩阵推导与代码实现
  6. Jquery中show的用法
  7. Blender——苹果的材质绘制
  8. 电脑无故死机的可能原因……
  9. Webduino STEAM 教育离线版本:Web:bit 筒体版本发布,配合BPI:bit教学硬件学习STEAM图形化编程...
  10. html鼠标经过自动下拉菜单,js css鼠标悬停显示下拉菜单