首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

ES分词

7、指定IK分词器作为默认分词ES的默认分词设置是standard,这个在中文分词时就比较尴尬了,会单字拆分,比如我搜索关键词“清华大学”,这时候会按“清”,“华”,“大”,“学”去分词,然后搜出来的都是些...“清清的河水”,“中华儿女”,“地大物博”,“学而不思则罔”之类的莫名其妙的结果,这里我们就想把这个分词方式修改一下,于是呢,就想到了ik分词器,有两种ik_smart和ik_max_word。...修改默认分词方法(这里修改school_index索引的默认分词为:ik_max_word): PUT /school_index { "settings" : { "index" : { "analysis.analyzer.default.type..."sex": 1, "age": 25, "address": "广州天河公园", "remark": "java developer" } PUT /es_db/_doc/2 { "name": "李四...", "sex": 1, "age": 28, "address": "广州荔湾大厦", "remark": "java assistant" } PUT /es_db/_doc/3 { "name":

60220
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    ES分词

    7、指定IK分词器作为默认分词ES的默认分词设置是standard,这个在中文分词时就比较尴尬了,会单字拆分,比如我搜索关键词“清华大学”,这时候会按“清”,“华”,“大”,“学”去分词,然后搜出来的都是些...“清清的河水”,“中华儿女”,“地大物博”,“学而不思则罔”之类的莫名其妙的结果,这里我们就想把这个分词方式修改一下,于是呢,就想到了ik分词器,有两种ik_smart和ik_max_word。...修改默认分词方法(这里修改school_index索引的默认分词为:ik_max_word): PUT /school_index { "settings" : { "index" : { "analysis.analyzer.default.type...1, "age": 25, "address": "广州天河公园", "remark": "java developer" } PUT /es_db/_doc/2 { "name": "李四", "sex...": 1, "age": 28, "address": "广州荔湾大厦", "remark": "java assistant" } PUT /es_db/_doc/3 { "name": "rod",

    1.2K10

    ES 分词器相关

    1、规范化 Normalization 规范化,主要实在ES对文本类型进行分词后,按照各自分词器的规范标准,对分词进行二次处理的过程.如was=>is(时态转换),brother‘s=>brother(...,提升搜索效率,不同的分词器其Normalization流程各不相同. 2、ES 字符过滤器&令牌过滤器 3、分词器 tokenizer 官方文档 官方提供了10余种分词器,默认是standard分词器...它是大多数语言的最佳选择) 2.1 常用分词器(随便介绍两种,具体查阅文档) stanard分词器 GET _analyze { "text": "Xiao chao was a good man"...,舍去了was a等和搜索相关度不高的词. 2.3 中文分词器 关于中文分词器参考ES 中文分词器ik 4、自定义分词器 结合上面的内容,来实现一个自定义分词器....关于过滤器相关参考ES 字符过滤器&令牌过滤器,关于分词器相关参考ES 分词器(示例使用了pattern分词器,参考文档) 执行以上代码后,执行搜索如下搜索代码: GET test_index/_analyze

    31320

    ES 中文分词器ik

    因为ik目前最高支持es 8.2.3,所以本文基于8.2.3的环境编写. 1、集群环境构建 参考Es 集群搭建及相关配置和相关参数解读,分别下载Es和kibana 8.2.3版本,部署到相应的服务器,...环境构建到此结束. 2、ik分词器安装部署 下载地址 注意es和ik分词器的版本匹配.这里下载8.2.3的ik分词器 下载完毕之后去es的工作目录的plugins文件夹下新建ik文件夹,将下载下来的ik...压缩包解压缩至ik文件夹下,重启es,集群中所有节点重复此操作. 3、ik 分词器简介 3.1 词库介绍 ik分词器主要有以下词库,位于config目录下 (1)、main.dic 主词库,包含日常生活中常用的词...DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd"> IK Analyzer...DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd"> IK Analyzer

    93020

    ES中文检索须知:分词器与中文分词

    ES分词 分词即为将doc通过Analyzer切分成一个一个Term(关键字),es分词在索引构建和数据检索时均有体现: 构建倒排索引时每一个term都指向包含这个term的多个doc。...简单来说,ES的数据检索原理包含分词、基于分词结果计算相似度得分、按得分从高到低排序返回指定长度下的排序结果三个主要步骤,本文主要关注中文场景下的分词过程。...基于分词结果计算相似度得分 按得分从高到低返回指定长度下的排序结果 ES内置分词ES...,是一种专业分词器,可通过创建指纹来进行重复检测的 - - Custom Analyzer 如果以上没有符合需求的分词器,es也允许通过添加插件的方式添加自定义分词器 - - 注:停用词,英文称为Stop...smartcn smartcn是es内置的中文分词器,使用机器学习算法进行分词,同时适用于简体中文和繁体中文,具有较高的分词准确率和召回率,适用于大多数中文文本检索场景。

    57220

    ElasticSearch(7.2.2)-浅谈es分词原理

    写时分词 我们使⽤来分析这个msg这个字段是怎样分词的 POST test/_analyze { "field": "msg", "text": "乔丹是篮球之神" } 分词结果 乔,丹,是,篮,球...乔丹, 是, 篮球, 之神 ⽂档写⼊的时候会根据字段设置的分词器类型进⾏分词,如果不指定就是默认的standard分词器。...读时分词 由于读时分词器默认与写时分词器默认保持⼀致,拿上⾯的例⼦,你搜索 msg 字段,那么读时分词器为 Standard ,搜索 msg_chinese 时分词器则为 ik_max_word。...这种默认设定也是⾮常容易理解的,读写采⽤⼀致的分词器,才能尽最⼤可能保证分词的结果是可以匹配的。...analyzer": "standard" } } } } ⼀般来讲不需要特别指定读时分词器,如果读的时候不单独设置分词器,那么读时分词器的验证⽅法与写时⼀致。

    4.4K30

    【腾讯云ES】基于NGram分词ES搜索性能优化实践

    例如:使用 match api 时,基于 ik_max_word 分词方式对“白色死神”进行分词后,搜索"白色"、"死神"能搜索到,而根据 "白" 进行搜索时,结果确为空。...我们可以看看 ik_max_word 策略的分词效果:GET /_analyze{ "analyzer": "ik_max_word", "text": "白色死神"}分词结果:{ "tokens...关于严格匹配我们很容易就能想到模糊查询,es本身也是能支持模糊查询的:方案选择方案一:模糊查询 wildcard && fuzzy 模糊查询的功能有点类似 mysql 中的 like,可以使用正则表达式的通配符来达到模糊搜索的效果...product_title": { "value": "*白*" }} }}wildcard 能同时支持 text 和 keyword 两种类型的搜索,但是当输入字符串很长或者搜索数据集很大时,搜索性能很低,原因是ES...方案二:N-gram 分词生产环境我们可以使用 N-gram 来代替 wildcard 实现模糊搜索功能,N-gram 分词器可以通过指定分词步长来对输入文本进行约束切割,本质上也是一种全文搜索。

    3.2K40

    ES三周年】ElasticSearch中文分词

    二、内置分词器解析咱们知道Elasticsearch之所以模糊查询这么快,是因为采用了倒排索引,而倒排索引的核心就是分词,把text格式的字段按照分词器进行分词并编排索引。...2.1、内置分词器梳理首先咱们可以对Elasticsearch提供的内置分词器的作用进行如下总结:分词器作用StandardES默认分词器,按单词分类并进行小写处理Simple按照非字母切分,然后去除非字母并进行小写处理..."且听风吟"}运行结果:图片这样看就更加简单直观了,咱们可以看到不同分词器对text格式数据的分词结果,感兴趣的朋友可以把所有的分词器都玩一玩。...为了解决中文分词的问题,咱们需要掌握至少一种中文分词器,常用的中文分词器有IK、jieba、THULAC等,推荐使用IK分词器,这也是目前使用最多的分词器,接下来咱们在docker环境下把IK分词器装一下...四、玩转ik分词器4.1、测试ik分词器根据官方的建议,ik分词器的名字可以使用:ik_smart,ik_max_word:图片咱们可以在kibana的dev tools里执行如下代码,来测试ik分词器对中文的分词效果

    77771

    ES中文分词器之精确短语匹配(自定义分词器)

    详细的内容请看上一篇文章: ES中文分词器之精确短语匹配(解决了match_phrase匹配不全的问题) 为什么要自己写分词器?...楼主想要一种分词器,分词器完全按照词典分词,只要是词典有的词语,分词器就一定要分出来。测试了两个分词器比如说IK,MMseg,都不能按照楼主的要求分词。...MMSeg有考虑到词频,即使使用mmseg_max_word,也不能完全按照词典分词。 IK理论上是按照词典分词的,但是经测试,还是发现了些问题。...ES自定义分词器 由于ES是采用juice依赖注入的方式,所以要实现一个工厂类和Provider类。...问题 测试的过程中同样的发现了一些问题,比如说: 原文:长白山脉 test分词:长白 1 长白山 2 长白山脉 3 白山4 山脉5 查找词语:长白山 test分词:长白 1 长白山 2 白山 3 通过分词可以看出在

    4.9K20

    ES学习笔记(七)IK中文分词

    在上一节中,我们给大家介绍了ES的分析器,我相信大家对ES的全文搜索已经有了深刻的印象。分析器包含3个部分:字符过滤器、分词器、分词过滤器。在上一节的例子,大家发现了,都是英文的例子,是吧?...因为ES是外国人写的嘛,中国如果要在这方面赶上来,还是需要屏幕前的小伙伴们的~ 英文呢,我们可以按照空格将一句话、一篇文章进行分词,然后对分词进行过滤,最后留下有意义的词。但是中文怎么分呢?...IK中文分词器的安装 ES默认是没有IK中文分词器的,我们要将IK中文分词器作为一个插件安装到ES中,安装的步骤也很简单: 从GitHub上下载适合自己ES版本的IK中文分词器,地址如下:https:...在我们的ES的插件目录中(${ES_HOME}/plugins)创建ik目录, mkdir ik 将我们下载好的IK分词器解压到ik目录,这里我们安装unzip命令,进行解压。...重启我们所有的ES服务。 到这里,我们的IK中文分词器就安装完了。 IK中文分词器初探 在上一节我们访问了ES的分析器接口,指定了分析器和文本的内容,我们就可以看到分词的结果。

    63110

    ES中的中文分词技术,很牛逼!

    在处理中文文本数据时,需要将文本进行分词处理,并对分词结果进行索引和搜索。ES提供了多种中文分词器,能够适应不同场景和需求。本文将详细介绍ES中的中文分词技术。...ES中的中文分词器采用的是基于规则的分词方法,对于每个汉字序列都会生成所有可能的分词方案,并通过启发式算法选取最优的方案以保证分词准确性和速度。...ES中的中文分词ES中内置了许多中文分词器,每个分词器都有其独特的优点和限制。以下是ES中常用的几种分词器:IK AnalyzerIK Analyzer是一个开源的中文分词器,由阿里巴巴集团发布。...Jieba AnalyzerJieba Analyzer是Python中广泛使用的中文分词器,也被应用到ES中。它采用了基于统计的分词方法,能够对复杂的中文文本进行较为准确的分词。...总结ES中的中文分词器是一项非常重要的技术,它能够有效地帮助我们处理中文文本,并提供全文搜索、高亮显示、聚合分析等功能。

    2K20

    ES学习笔记(七)IK中文分词

    在上一节中,我们给大家介绍了ES的分析器,我相信大家对ES的全文搜索已经有了深刻的印象。分析器包含3个部分:字符过滤器、分词器、分词过滤器。在上一节的例子,大家发现了,都是英文的例子,是吧?...因为ES是外国人写的嘛,中国如果要在这方面赶上来,还是需要屏幕前的小伙伴们的~ 英文呢,我们可以按照空格将一句话、一篇文章进行分词,然后对分词进行过滤,最后留下有意义的词。但是中文怎么分呢?...IK中文分词器的安装 ES默认是没有IK中文分词器的,我们要将IK中文分词器作为一个插件安装到ES中,安装的步骤也很简单: 从GitHub上下载适合自己ES版本的IK中文分词器,地址如下:https:/...在我们的ES的插件目录中(${ES_HOME}/plugins)创建ik目录, mkdir ik 将我们下载好的IK分词器解压到ik目录,这里我们安装unzip命令,进行解压。...重启我们所有的ES服务。 到这里,我们的IK中文分词器就安装完了。 IK中文分词器初探 在上一节我们访问了ES的分析器接口,指定了分析器和文本的内容,我们就可以看到分词的结果。

    1.2K40
    领券