博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
中文分词
阅读量:6681 次
发布时间:2019-06-25

本文共 1450 字,大约阅读时间需要 4 分钟。

1、 名词说明

中文分词要处理的数据为文本数据:solr.TextField,需在schema.xml文件中做相关配置,配置选项如下:

  • analyzer:告诉solr在建立索引和搜索的时候,如何处理text类型的内容。它在schema.xml文件中配置,可以直接指定一个类给它,也可以由tokenizer和filter的组合来实现。
  • type:可选参数,index或者query,标明此配置是建立索引还是查询。若没有此参数,表示两种都适用。
  • tokenizer:分词器,接收text(通过重solr那里获取一个reader来读取文本),拆分成token stream
  • filter过滤器,接收token stream,对每个token进行处理(比如:替换、丢弃),输出token stream。因此在配置文档中,Tokenizer放在第一位,Filter放在第二位直至最后一位。

2、分词工作流程简述

analyzer负责把文本field转化为token流,然后自己处理,或者调用tokenzier和filter进一步处理。Tokenzier和filter是同等级和顺序执行的关系,一个处理完后交给下一个处理。对于filter而言,一般通用的处理放在前面,特殊的处理靠后。

3、Smartcn分词器配置

在managed-schema文档中已经定义了一些分词规则。中文分词在solr中是没有默认开启的,需要另外配置一个中文分词。目前可用的分词器有smartcn,IK,Jeasy,庖丁。
Solr官方提供了简体中文分词Smartcn,以此为例,步骤如下:
1、 将solr-6.1.0\contrib\analysis-extras\lucene-libs\lucene-analyzers-smartcn-6.1.0.jar拷贝到Tomcat安装目录 \webapps\solr\WEB-INF\lib\目录下。
2、 配置managed-schema文档
     配置如下:     

重启服务,效果如下。

   

 

4、IK分词器配置

1、IK Analyzer版本:IKAnalyzer 2012FF_hf1

         下载地址:https://code.google.com/p/ik-analyzer/downloads/list,

         解压IK Analyzer 2012FF_hf1.zip,将解压后文件夹中的IKAnalyzer2012FF_u1.jar拷贝到Tomcat安装目录 \webapps\solr\WEB-INF\lib\目录              下。
2、配置managed-schema文档

     配置如下:     

 重启服务,配置成功。

 

说明:

不能将positionIncrementGap="100"放入到<fieldType>字段类型中去,因为IKAnalyzer不支持positionIncrementGap的属性注入;若添加则启动tomcat时会出现org.apache.solr.common.SolrException: Plugin Initializing failurefor [schema.xml] fieldType错误提示

转载于:https://www.cnblogs.com/saratearing/p/5741133.html

你可能感兴趣的文章
NGINX开机自动启动
查看>>
PHP设计模式之构造器(Builder)
查看>>
2014年140个最好的jQuery插件集合
查看>>
资产-服务器变更流程图
查看>>
【Think社区】2013 PHP 技术峰会即将在上海举行
查看>>
Nginx常用Rewrite(伪静态)
查看>>
ubuntu端口 扫描和开启
查看>>
linux文件特殊权限及文件的访问控制列表
查看>>
centos6中安装consul
查看>>
js数组去重
查看>>
Shell ${} 变量使用技巧
查看>>
《北爱》的一点感想
查看>>
我的友情链接
查看>>
IOS动画与绘图
查看>>
Android图片压缩方法总结
查看>>
subprocess模块
查看>>
关于JasperReport打印多个和自动赋值解决办法
查看>>
分享14个超酷的视差滚动效果网站
查看>>
iptables防火墙的详解及使用;
查看>>
2016.4.26
查看>>