ElasticSearch索引基本操作
  TEZNKK3IfmPf 2023年11月14日 22 0

启动一个 master 节点和两个 slave 节点进行测试(参考第二篇文章进行搭建)

通过 head 插件新建索引

在 head 插件中,选择 ​​索引选项卡​​,然后点击新建索引。新建索引时,需要填入索引名称、分片数以及副本数。

ElasticSearch索引基本操作

索引创建成功后,如下图:

ElasticSearch索引基本操作

0、1、2、3、4 分别表示索引的分片,粗框表示主分片,细框表示副本(点一下框,通过 primary 属性可以查看是主分片还是副本)。.kibana 索引只有一个分片和一个副本,所以只有 0。

ElasticSearch索引基本操作

通过请求创建

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

创建索引请求:

ElasticSearch索引基本操作

PUT book

创建成功后,可以查看索引信息:

ElasticSearch索引基本操作

需要注意两点:

 

  • 索引名称不能有大写字母

 

ElasticSearch索引基本操作

 

  • 索引名是唯一的,不能重复,重复创建会出错

 

ElasticSearch索引基本操作

更新索引

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

例如修改索引的副本数:

ElasticSearch索引基本操作

PUT book/_settings
{
"number_of_replicas": 2
}

修改成功后,如下:

ElasticSearch索引基本操作

更新分片数也是一样,如果更新分片数有问题请参考:

修改索引的读写权限

索引创建成功后,可以向索引中写入文档:

ElasticSearch索引基本操作

PUT book/_doc/1
{
"title": "三国演义"
}

写入成功后,可以在 head 插件中查看:

ElasticSearch索引基本操作

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

例如,关闭索引的写权限:

ElasticSearch索引基本操作

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

关闭之后,就无法添加文档了。关闭了写权限之后,如果想要再次打开,方式如下:

ElasticSearch索引基本操作

PUT book/_settings
{
"blocks.write": false
}

其他类似的权限有:

 

  • blocks.write
  • blocks.read
  • blocks.read_only

 

查看索引

head 插件查看方式如下:

ElasticSearch索引基本操作

请求查看方式如下:

ElasticSearch索引基本操作

GET book/_settings

也可以同时查看多个索引信息:

ElasticSearch索引基本操作

GET book, test/_settings

也可以查看所有索引信息:

ElasticSearch索引基本操作

GET _all/_settings

删除索引

head 插件可以删除索引:

ElasticSearch索引基本操作

请求删除如下:

DELETE test

删除一个不存在的索引会报错。

ElasticSearch索引基本操作

索引打开 / 关闭

关闭索引:

ElasticSearch索引基本操作

POST book/_close

打开索引:

ElasticSearch索引基本操作

POST book/_open

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

复制索引

索引复制,只会复制数据,不会复制索引配置。

ElasticSearch索引基本操作

POST _reindex
{
"source": {"index": "book"},
"dest": {"index": "book_new"}
}

复制的时候,可以添加查询条件。

索引别名

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

ElasticSearch索引基本操作

POST /_aliases
{
"actions": [
{
"add": {
"index": "book",
"alias": "book_alias"
}
}
]
}

添加结果如下:

ElasticSearch索引基本操作

将 add 改为 remove 就表示移除别名:

ElasticSearch索引基本操作

POST /_aliases
{
"actions": [
{
"remove": {
"index": "book",
"alias": "book_alias"
}
}
]
}

查看某一个索引的别名:

ElasticSearch索引基本操作

GET /book/_alias

查看某一个别名对应的索引(book_alias 表示一个别名):

ElasticSearch索引基本操作

GET /book_alias/_alias

可以查看集群上所有可用别名:

ElasticSearch索引基本操作

GET _alias
【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月14日 0

暂无评论

推荐阅读
  TEZNKK3IfmPf   2023年11月14日   20   0   0 mysql索引
  TEZNKK3IfmPf   2024年03月29日   52   0   0 mysql索引