elasticsearch学习crud以及高级搜索

ik分词器

ik_max_word:将文本做最细粒度划分。

ik_smart:最粗粒度划分

ik_smart测试

ik_max_word测试

发现问题:狂神说并没有被当做一个词,这就需要自定义配置

ik分词器自定义字典在config文件下的IKAnalyzer.cfg.xml增加自定义字典my.dic

再重新看ik_max_word效果:

ik_smart效果:

Restful接口:

创建一个索引

PUT /索引名/类型名/文档id

类型:

3.自己设置类型(想mysql新建表)如果没有设置自己的字段类型,那么es会自己默认类型。而且默认文档类型是_doc,所以插入数据时,应该设置问的那个类型是__doc,其他的插入不进去

4.查看索引信息

GET /索引名

扩展:GET _cat/health: GET _cat/indices

5.修改索引的信息

POST /索引名/文档名/id/_update

6.删除索引

DELETE /索引

7.复杂操作 :select(排序,分页,高亮,模糊查询,精确查找)

1)指定返回的字段:

发现hits里面包含了索引的文档的id的信息,里面_source包含了数据,_sorce是指分数,即匹配度,越高的越前

2)排序

sort

3)分页

from size 有点像limit start pagesize

4)boolen值查询

匹配多个值
精确查找是term 是使用倒排索引精确查找

两个类型 text和keyword

text可以被分词器分析,keyword不能被分词器分析

多个值精确查询

高亮查询

高亮查询

自定义高亮标签

经验分享 程序员 微信小程序 职场和发展