elasticsearch的基本使用

使用postman进行测试

如下图所示:

需要进行验证,请选择Authorization中的basic auth,填写账号以及密码。

添加ik中文分词

安装 IK 分词器插件:

下载 IK 分词器插件,可以从 GitHub 上的
elasticsearch-analysis-ik

页面下载最好下载与ES版本相同的IK版本文件。

将下载的插件解压缩到 Elasticsearch 的插件目录中。(插件目录在ES的根目录下的plugins)

创建索引并指定 IK 分词器:

在创建索引时,使用自定义的分词器配置来指定字段的分词器为 IK 分词器。

具体步骤如下:

ps: plugins下面只存放插件,而压缩包必须删除掉,千万不要也放在下面!!!!切记。

创建索引格式演示:

powershell 复制代码
PUT /my_index
{
  "settings": {
    "analysis": {
      "analyzer": {
        "ik_analyzer": {
          "type": "custom",
          "tokenizer": "ik_max_word",
          "filter": ["synonym_filter", "stop_filter"]
        }
      },
      "filter": {
        "synonym_filter": {
          "type": "synonym",
          "synonyms_path": "analysis/synonyms.txt"
        },
        "stop_filter": {
          "type": "stop",
          "stopwords_path": "analysis/stop.txt"
        }
      }
    }
  },
  "mappings": {
    "properties": {
      "content": {
        "type": "text",
        "analyzer": "ik_analyzer"
      }
    }
  }
}

说明:

设置了一个自定义的解析器analyzer

定义名称为ik_analyzer(可根据自己喜好修改名称)

定义它的类型为custom自定义类型

采用的分词tokenizer为ik_max_word

定义了同义词和停用词过滤filter为synonym_filter、stop_filter

设置过滤filter

分别命名为synonym_filter和stop_filter(名字自己取),上边引用的filter就是对应的这个名字(不要写错)

定义了type类型分别是synonym(同义词)、stop(停用词)

synonyms_path和stopwords_path分别是同义词和停用词文件位置,文件路径为ES根目录下的config中创建analysis/synonyms.txt和analysis/stop.txt;(文件夹analysis和文件XXX.txt可自己定义,主要是放在config下边)

二、 以上mappings中说明:

定义属性properties为content(这个就是我们要进行分词的字段名)

定义content字段类型为type:text

字段content采用的解析方式analyzer为上边settings中定义的ik_analyzer

相关推荐
markuszhang3 小时前
Elasticsearch 官网阅读之 Term-level Queries
大数据·elasticsearch·搜索引擎
帝锦_li3 小时前
ElasticSearch
elasticsearch·搜索引擎
Hello World......4 小时前
Java求职面试:从核心技术到大数据与AI的场景应用
大数据·java面试·技术栈·互联网大厂·ai服务
python算法(魔法师版)6 小时前
.NET NativeAOT 指南
java·大数据·linux·jvm·.net
星川皆无恙6 小时前
大模型学习:Deepseek+dify零成本部署本地运行实用教程(超级详细!建议收藏)
大数据·人工智能·学习·语言模型·架构
L耀早睡7 小时前
mapreduce打包运行
大数据·前端·spark·mapreduce
姬激薄7 小时前
MapReduce打包运行
大数据·mapreduce
计算机人哪有不疯的7 小时前
Mapreduce初使用
大数据·mapreduce
菜鸟冲锋号7 小时前
Flink SQL、Hudi 、Doris在数据上的组合应用
大数据·flink
尘世壹俗人8 小时前
hadoop.proxyuser.代理用户.授信域 用来干什么的
大数据·hadoop·分布式