elasticsearch 7.x 索引的基本操作——增、删、改

在之前的内容里已经将es使用的基本环境全部安装好了,如果没有安装的可以参考一下之前的文章。

一、 索引的增、删、改

首先启动es head,启动命令可以参考之前的文章。

1. 默认字段类型

1、字符串类型:text,keyword
text和keyword的主要区别在于分词器是否拆分,text类型在查询时会根据分词器类型将字符串拆分成对应单位,分词器种类可以参考之前的内容。
keyword是不会进行拆分的,在查询时默认看成一个整体。

2、数值类型:long、integer、short、byte、double、float、half_float、scaled_float

3、日期类型:date

4、布尔值类型:boolean

5、二进制类型:binary

2. 创建索引

创建索引的命令如下
PUT /索引名/类型名/文档id {请求体}
这里举个例子

PUT /test1/type1/1
{
	“name”: “异火”,
	“age”: 1
}

创建索引
在执行完命令之后,会生成名为test1的索引,在es head中查看一下test1索引及对应的记录是否存在:

es head

那么如果想要指定字段类型,可以将指定的类型写入"mappings":{“properties”}中:

PUT /test2
{
	“mappings”: {
		“properties”: {
				//在这里写字段以及对应的类型
		}
	}
}

这里举个例子,创建索引test2

创建test2索引
创建完索引后,使用GET命令来看一下test2索引的配置

GET /test2

查看索引

接下来创建一个字段类型为默认的索引test3

test3索引

3. 修改索引内容

修改索引内容有两种方法:
1、直接重新赋值

PUT /test3/_doc/1
{
	“name”: “火子哥”,
	“age”: 11,
	“birth”: “2020-11-11”
}

直接修改
在修改后可以看到右侧的“_version”和“_result”都发生了变化,每当修改内容的时候,"_version"都会+1,"_result"也会显示出对应的操作类型。
这种方法虽然简单暴力,但是也有他的缺点
缺点:在第一次添加记录时,这里添加的是"name"、“age”、“birth”,当我们对这条记录进行修改时,如果我们只输入"name"、“age”,那么对应的"birth"会消失,也就是说这条记录会被无条件覆盖。

2、_update方法

POST /test3/_doc/1/_update
{
	“doc”: {
		“name”: “火子哥最帅”
	}
}

_update修改

这种方式是目前比较推荐的修改记录的操作。

4. 删除索引(内容)

删除索引的命令一般使用DELETE,会根据你的请求来判断是删除索引还是删除文档记录
这里删除索引test1
删除test1

看到右边显示true说明操作成功了。
可以试一下在test2中添加一条记录,然后使用DELETE请求删除这条记录,删除前后记得去es head中看一下变化。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值