第130天学习打卡(ElasticSearch Rest风格说明 索引 文档 )

Rest风格说明

一种软件架构风格,而不是标准,只是提供了一组设计原则和约束条件。它主要用于客户端和服务器交互类的软件。基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制。

基于Rest命令说明:

第130天学习打卡(ElasticSearch Rest风格说明 索引 文档 )_第1张图片

基础测试

关于索引的基本操作

1.创建索引

PUT /索引名/类型名(未来没有了)/文档id
{请求体}

第130天学习打卡(ElasticSearch Rest风格说明 索引 文档 )_第2张图片

2.完成了自动增加索引! 数据也添加成功, 这个初期可以把它当做数据库学习。

第130天学习打卡(ElasticSearch Rest风格说明 索引 文档 )_第3张图片

  1. 那么name这个字段用不用指定类型呢。毕竟关系型数据库需要指定类型!
  • 字符串类型

text 、 keyword

  • 数值类型

long 、integer 、short 、 byte 、 double、 float 、half float 、scaled float

  • 日期类型

date

  • te布尔值类型

boolean

  • 二进制类型

binary

4.指定字段的类型

第130天学习打卡(ElasticSearch Rest风格说明 索引 文档 )_第4张图片

获得这个规则!可以通过GET请求获取具体的信息!

第130天学习打卡(ElasticSearch Rest风格说明 索引 文档 )_第5张图片

5.查看默认的信息

第130天学习打卡(ElasticSearch Rest风格说明 索引 文档 )_第6张图片

第130天学习打卡(ElasticSearch Rest风格说明 索引 文档 )_第7张图片

如果自己的文档字段没有指定,那么es就会给我们默认配置字段类型。

扩展:通过命令elasticsearch索引情况!

通过GET _cat/ 可以获得es的当前的很多信息!

第130天学习打卡(ElasticSearch Rest风格说明 索引 文档 )_第8张图片

修改 提交还是使用PUT即可! 然后覆盖

曾经的办法:

第130天学习打卡(ElasticSearch Rest风格说明 索引 文档 )_第9张图片

现在的办法:

第130天学习打卡(ElasticSearch Rest风格说明 索引 文档 )_第10张图片

删除索引

通过DELETE命令是实现删除,根据你的请求来判断是删除索引还是删除文档记录!

使用RESTFUL风格是ES推荐使用的。

第130天学习打卡(ElasticSearch Rest风格说明 索引 文档 )_第11张图片

关于文档的基本操作(重点)

基本操作

1.添加数据:

PUT /kuangshen/user/1
{
     
  "name": "狂神说",
  "age":23,
  "desc": "即使再小的帆也能远航",
  "tags": ["技术宅", "温暖", "努力"]
}

第130天学习打卡(ElasticSearch Rest风格说明 索引 文档 )_第12张图片

2.获取数据 GET

第130天学习打卡(ElasticSearch Rest风格说明 索引 文档 )_第13张图片

3.更新数据 PUT

第130天学习打卡(ElasticSearch Rest风格说明 索引 文档 )_第14张图片

PUT操作,如果里面的内容不是完整的,那么右边的内容将会在PUT命令执行时置空。

第130天学习打卡(ElasticSearch Rest风格说明 索引 文档 )_第15张图片

第130天学习打卡(ElasticSearch Rest风格说明 索引 文档 )_第16张图片

4.POST _update 推荐使用这种更新方式

第130天学习打卡(ElasticSearch Rest风格说明 索引 文档 )_第17张图片

第130天学习打卡(ElasticSearch Rest风格说明 索引 文档 )_第18张图片

put如果不传递值就会被覆盖, post灵活性更高。

简单搜索

GET kuangshen/user/1

简单的条件查询, 可以根据默认的映射规则,产生基本的查询

第130天学习打卡(ElasticSearch Rest风格说明 索引 文档 )_第19张图片

第130天学习打卡(ElasticSearch Rest风格说明 索引 文档 )_第20张图片

复杂操作搜索 select(排序,分页, 高亮, 模糊查询, 精准查询)

第130天学习打卡(ElasticSearch Rest风格说明 索引 文档 )_第21张图片

第130天学习打卡(ElasticSearch Rest风格说明 索引 文档 )_第22张图片

查询指定的结果:

第130天学习打卡(ElasticSearch Rest风格说明 索引 文档 )_第23张图片

我们之后使用java操作es,所有的方法和对象就是这里面的key!

排序

第130天学习打卡(ElasticSearch Rest风格说明 索引 文档 )_第24张图片

desc降序排序

分页

第130天学习打卡(ElasticSearch Rest风格说明 索引 文档 )_第25张图片

数据下标还是从0开始的,和学的所有的数据结构是一样的。

布尔值查询

must(相当于mysql中的and),所有的条件都要符合 相当于where id = 1 and name = xxx

第130天学习打卡(ElasticSearch Rest风格说明 索引 文档 )_第26张图片

should(相当于mysql中的or),所有的条件都要符合 相当于where id = 1 or name = xxx

第130天学习打卡(ElasticSearch Rest风格说明 索引 文档 )_第27张图片

must_not(not)

第130天学习打卡(ElasticSearch Rest风格说明 索引 文档 )_第28张图片

过滤器filter

lt :小于 gt:大于

第130天学习打卡(ElasticSearch Rest风格说明 索引 文档 )_第29张图片

  • gt 大于
  • gte 大于等于
  • lt 小于
  • lte 小于等于

第130天学习打卡(ElasticSearch Rest风格说明 索引 文档 )_第30张图片

匹配多个条件!

第130天学习打卡(ElasticSearch Rest风格说明 索引 文档 )_第31张图片

精确查找

term查询是直接通过倒排索引指定的词条进行精确的查找的!

关于分词

term ,直接查询精确的

match,会使用分词器解析!(先分析文档,然后通过分析的文档进行查询!)

两个类型 text keyword

第130天学习打卡(ElasticSearch Rest风格说明 索引 文档 )_第32张图片

第130天学习打卡(ElasticSearch Rest风格说明 索引 文档 )_第33张图片

第130天学习打卡(ElasticSearch Rest风格说明 索引 文档 )_第34张图片

多个值匹配的精确查询

第130天学习打卡(ElasticSearch Rest风格说明 索引 文档 )_第35张图片

高亮查询

第130天学习打卡(ElasticSearch Rest风格说明 索引 文档 )_第36张图片

自定义高亮查询:

第130天学习打卡(ElasticSearch Rest风格说明 索引 文档 )_第37张图片

这些MySQL也可以做,只是效率更低

  • 匹配
  • 按照条件匹配
  • 精确匹配
  • 区间范围匹配
  • 匹配字段过滤
  • 多条件查询
  • 高亮查询

B站学习网址:【狂神说Java】ElasticSearch7.6.x最新完整教程通俗易懂_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili

你可能感兴趣的:(索引,elasticsearch)