共计 2095 个字符,预计需要花费 6 分钟才能阅读完成。
在应用 ES 的时候,给原有 index 的增加、删除、批改等操作都是比拟常见的景象。因而,记录一些罕用的用法对咱们开发效率将有很大晋升。
后面的文章曾经介绍了如何创立 ES 索引的,本次实例讲持续应用应用 datacube_live 索引来做演示。
为了不便观看,依然将 datacube_live 的现有构造展示进去,本次用来演示在 datacube_live 增加 is_del 字段,来给 es 数据做软删除标记,将 is_del 类型定义为 boolean 类型。
1. 获取 datacube_live 以后构造体:
GET http://xxxx:9200/datacube_live/_mapping
{
"datacube_live": {
"mappings": {
"properties": {
"create_at": {"type": "keyword"},
"creator_id": {"type": "keyword"},
"goods_list": {
"type": "nested",
"properties": {
"activity_type": {"type": "keyword"},
"area_ids": {"type": "keyword"},
"category_id": {"type": "keyword"},
"goods_id": {"type": "keyword"},
"goods_name": {"type": "text"},
"lecture_type": {"type": "keyword"},
"sku_code": {"type": "keyword"}
}
},
"is_callback": {"type": "boolean"},
"is_empty": {"type": "boolean"},
"is_pal_15": {"type": "boolean"},
"live_date": {"type": "keyword"},
"live_start_time": {"type": "keyword"},
"push_type": {"type": "keyword"},
"room_id": {"type": "keyword"},
"room_name": {"type": "text"},
"shop_ids": {"type": "keyword"}
}
}
}
}
2. 定义 is_del 类型
在定义 is_del 类型的时候,须要将其放入 properties 属性当中去,构造如下所示。
{
"properties": {
"is_del": {"type": "boolean"}
}
}
3. 将定义的 is_del 字段增加至 datacube_live 构造体当中去。
调用 ES 的 http://xxxx:9200/datacube_liv… 接口,批改构造体。
PUT http://xxxx:9200/datacube_live/_mapping
{
"properties": {
"is_del": {"type": "boolean"}
}
}
4. 验证构造体
GET http://xxxx:9200/datacube_live/_mapping
{
"datacube_live": {
"mappings": {
"properties": {
"create_at": {"type": "keyword"},
"creator_id": {"type": "keyword"},
"goods_list": {
"type": "nested",
"properties": {
"activity_type": {"type": "keyword"},
"area_ids": {"type": "keyword"},
"category_id": {"type": "keyword"},
"goods_id": {"type": "keyword"},
"goods_name": {"type": "text"},
"lecture_type": {"type": "keyword"},
"sku_code": {"type": "keyword"}
}
},
"is_callback": {"type": "boolean"},
"is_del": {"type": "boolean"},
"is_empty": {"type": "boolean"},
"is_pal_15": {"type": "boolean"},
"live_date": {"type": "keyword"},
"live_start_time": {"type": "keyword"},
"push_type": {"type": "keyword"},
"room_id": {"type": "keyword"},
"room_name": {"type": "text"},
"shop_ids": {"type": "keyword"}
}
}
}
}
原有 datacube_live 的构造体增加了 is_del 类型,如下图所示。
到这里只能阐明 is_del 新增字段增加胜利了,此时依然不能阐明工作就实现了。如果当初就去查问 datacube_live 数据的话,目前依然没有 is_del 属性,须要对 datacube_live 进行数据更新操作,之后才阐明实现整个字段增加。
正文完
发表至: elasticsearch
2022-07-18