ES之分析器(Analyzer)及拼音分词器】的更多相关文章

[版权声明]:本文章由danvid发布于http://danvid.cnblogs.com/,如需转载或部分使用请注明出处 在业务中经常会用到拼音匹配查询,大家都会用到拼音分词器,但是拼音分词器匹配的时候有个问题,就是会出现同音字匹配,有时候这种情况是业务不希望出现的. 业务场景:我输入"纯生pi酒"进行搜索,文档中有以下数据: doc[1]:{"name":"纯生啤酒"} doc[2]:{"name":"春生啤酒&…
Elasticsearch Analyzer 内置分词器 篇主要介绍一下 Elasticsearch中 Analyzer 分词器的构成 和一些Es中内置的分词器 以及如何使用它们 前置知识 es 提供了 analyze api 可以方便我们快速的指定 某个分词器 然后对输入的text文本进行分词 帮助我们学习和实验分词器 POST _analyze { "analyzer": "standard", "text": "The 2 QUI…
声明:我使用的Elasticsearch的版本是5.4.0,安装分词器前请先安装maven 一:安装maven https://github.com/apache/maven 说明: 安装maven需要java1.7+ 编译安装分词器时,可能会报错,报错信息如下: [ERROR] COMPILATION ERROR : [INFO] -------------------------------------------------------------[ERROR] No compiler i…
安装方法和ik中文分词器一样, 先下载: https://github.com/medcl/elasticsearch-analysis-pinyin 执行: mvn package; 打包成功以后,会生成一个target文件夹,在elasticsearch-analysis-ik-master/target/releases目录下,找到elasticsearch-analysis-ik-5.1.1.zip,这就是我们需要的安装文件.解压elasticsearch-analysis-ik-5.1…
大佬博客地址:https://blog.csdn.net/supermao1013/article/category/8269552 docker elasticsearch 集群启动命令 docker run -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -d -p 9200:9200 -p 9300:9300 -p 5601:5601 -v /usr/local/es/config/es1.yml:/usr/share/elasticsearch/conf…
上课我们介绍了倒排索引,在里面提到了分词的概念,分词器就是用来分词的. 分词器是ES中专门处理分词的组件,英文为Analyzer,定义为:从一串文本中切分出一个一个的词条,并对每个词条进行标准化.它由三部分组成, Character Filters:分词之前进行预处理,比如去除html标签 Tokenizer:将原始文本按照一定规则切分为单词 Token Filters:针对Tokenizer处理的单词进行再加工,比如转小写.删除或增新等处理,也就是标准化 预定义的分词器 ES自带的分词器有如下…
solr分词过程: Solr Admin中,选择Analysis,在FieldType中,选择text_en 左边框输入 “冬天到了天气冷了小明不想上学去了”,点击右边的按钮,发现对每个字都进行分词.这不符合中国人的习惯. solr6.3.0自带中文分词包,在 \solr-6.3.0\contrib\analysis-extras\lucene-libs\lucene-analyzers-smartcn-6.3.0.jar,但是不能自定义词库 好在我们有IKAnalyzer(已无人更新,目前版本…
安装pinyin分词 地址:https://github.com/medcl/elasticsearch-analysis-pinyin PUT py_test { "index" : { "analysis" : { "analyzer" : { "pinyin_analyzer" : { "tokenizer" : "my_pinyin", "filter" :…
Elasticsearch这种全文搜索引擎,会用某种算法对建立的文档进行分析,从文档中提取出有效信息(Token) 对于es来说,有内置的分析器(Analyzer)和分词器(Tokenizer) 1:分析器 ES内置分析器 standard 分析器划分文本是通过词语来界定的,由Unicode文本分割算法定义.它删除大多数标点符号,将词语转换为小写(就是按照空格进行分词) simple 分析器每当遇到不是字母的字符时,将文本分割为词语.它将所有词语转换为小写. keyword 可以接受任何给定的文…
analyzer   分词器使用的两个情形:  1,Index time analysis.  创建或者更新文档时,会对文档进行分词2,Search time analysis.  查询时,对查询语句分词 指定查询时使用哪个分词器的方式有: - 查询时通过analyzer指定分词器 GET test_index/_search { "query": { "match": { "name": { "query": "l…