ElasticSearch 索引基本操作(第三章)

本文详细介绍了Elasticsearch的基本操作,包括创建索引、修改属性、权限控制、索引查看与删除、索引状态切换、复制索引、别名管理等,适合刚接触ES的新手入门。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ElasticSearch 目前也算是非常火了,站内搜索、日志分析都会用到它,而且还可以直接当成 NoSQL 数据库来使用。
接下来,我们就通过下面这个简单介绍,开启 es 之旅吧~

公众号 : 倔强小狮子

在这里插入图片描述


1. ElasticSearch API

方式解释
post创建索引
delete删除索引
put更新或者创建索引
get查看索引

2. 新建索引

可以通过 postman 发送请求,也可以通过 kibana 发送请求,由于 kibana 有提示,所以这里采用 kibana。

2.1 创建索引请求

PUT index
例如 : PUT lionet
POST index/type/id
例如 : POST lionet/_doc/1

注意 : POST 和 PUT 都可进行创建索引, 需要注意的是PUT需要对一个具体的资源进行操作也就是要确定id才能进行更新/创建,而POST是可以针对整个资源集合进行操作的,如果不写id就由ES生成一个唯一id进行创建新文档,如果填了id那就针对这个id的文档进行创建/更新

例如 : POST lionet/code/1 将会提示
#! Deprecation: [types removal] Specifying types in document index requests is deprecated, use the typeless endpoints instead (/{index}/_doc/{id}, /{index}/_doc, or /{index}/_create/{id}).
因为 ES7种已经废弃 type类型

在这里插入图片描述

2.2 需要注意两点

  1. 索引名称不能有大写字母
    PUT Lionet
    在这里插入图片描述
  2. 索引名是唯一的,不能重复,重复创建会出错
    在这里插入图片描述

2. 更新索引

2.1 索引创建好之后,可以修改其属性。

例如 : 修改索引副本数

 
PUT lionet/_settings
{
  "number_of_replicas": 2 
}

number_of_replicas : 代表副本数

2.2 修改文档

PUT index/_doc/id
put lionet/_doc/weEKk3gBNW2PTZf-j598
{
  "title":"小狮子"
}

2.3 PUT 方式案例

PUT 方式当 id存在时即使更新,不存在时即可新增
在这里插入图片描述

PUST 修改

put lionet/_doc/weEKk3gBNW2PTZf-j598
{
  "title":"倔强的小狮子"
}

在这里插入图片描述

3. 默认情况下,索引是具备读写权限的,当然这个读写权限可以关闭。

例如,关闭索引的写权限

PUT lionet/_settings
{
  "blocks.write": true
}

blocks.write : true 关闭写权限

3.1 其他类似的权限有:

blocks.write  : 写权限
blocks.read 读权限
blocks.read_only 只读权限

4. 查看索引

  • head 插件查看方式如下:
    在这里插入图片描述

  • 请求查看方式如下:
    GET lionet/_settings
    GET /index/_doc/id?pretty=true
    例如: GET /lionet/_doc/1?pretty=true
    pretty=trye是将查询结果进行 JSON 格式化展示(默认值)

  • 也可以同时查看多个索引信息:
    GET lionet,test/_settings

  • 也可以查看所有索引信息
    GET _all/_settings

5. 删除索引

  • head 插件可以删除索引
    在这里插入图片描述

  • 请求删除如下
    DELETE index
    例如 : DELETE lionet
    删除一个不存在的索引会报错
    在这里插入图片描述

6. 索引打开/关闭

6.1 关闭索引 (POST请求)

POST book/_close
在这里插入图片描述

  • 获取关闭索引文档
    在这里插入图片描述

6.2 打开索引

POST index/_open
例如: POST lionet/_open

当然,可以同时关闭/打开多个索引,多个索引用 , 隔开,或者直接使用 _all 代表所有索引。

7. 复制索引

  • 索引复制,只会复制数据,不会复制索引配置。
  • 复制的时候,可以添加查询条件。
POST _reindex
{
  "source": {"index": "lionet"},
  "dest": {"index":"lionetdest"}
}

8.索引别名

8.1 添加

  • 可以为索引创建别名,如果这个别名是唯一的,该别名可以代替索引名称。
    POST /_aliases

POST _aliases
{
  "actions": [
    {
      "add": {
        "index": "lionet",
        "alias": "lionet_alias"
      }
    }
  ]

在这里插入图片描述

8.2 删除索引



POST /_aliases
{
  "actions": [
    {
      "remove": {
        "index": "lionet",
        "alias": "lionet_alias"
      }
    }
  ]
}
  • 查看某一个索引的别名:
    GET /lionet/_alias

  • 查看某一个别名对应的索引(book_alias 表示一个别名):
    GET /lionet_alias/_alias

  • 可以查看集群上所有可用别名:
    GET /_alias

期待你的关注,和我一起学习
转载说明:转载携带原文链接

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值