ES核心概念
- 安装IK分词器
https://github.com/medcl/elasticsearch-analysis-ik
- 解压重启观察ES
- kibana测试
不同分词效果
ik_smart_word是极简模式
ik_max_word是最细粒度模式
发现问题
氪金被拆开了,需要自己添加到ik分词器的字典中
- 配置分词器字典
重启ES后生效
基础测试
关于索引的基本操作
创建索引
获取索引的信息
通过get请求
如果自己的文档字段没有指定,那么es就会给我们默认配置字段类型!
扩展
查看es健康状态
查看es的信息
诸如此类很多信息
修改索引
使用put命令直接覆盖
新的修改方法,指定文档id进行修改,防止改错
删除索引
关于文档的基本操作
1.添加文档数据
2.查询文档数据
3.修改文档数据 PUT(不传值数据就会覆盖)
4.修改文档数据 POST _update(推荐使用这种)
5.带条件查询文档
复杂查询,select(排序、分页、高亮、模糊查询、精准查询)
这里score在多条查询结果中做为匹配度,匹配度越高则分值越高
排序
分页查询
布尔查询(多条件)
must(and),where name = “张三” and age =18
should(or),where name = “张三” or age = 20
同理 must_not (!=)
过滤器filter
- gt 大于
- gte 大于等于
- lt 小于
- lte 小于等于
匹配多个条件
- 多个条件进行匹配使用空格分开
精确查询
term查询是直接通过倒排索引指定的词条进行精确查找
-
term,直接查询精确的
keyword类型不会被分词器解析 -
match,会使用分词器解析!(先分析文档,然后通过分析的文档进行查询)
-
两个类型 text keyword
当做一个整体没有被分析
普通的分词器分析
高亮查询
自定义高亮查询的标签属性