Elasticsearch 索引基础

Elasticseach 索引基础

安装 分布式的 Elasticsearch ,启动一个master 和两个 slave 进行操作,以及 启动 Kibana

一、创建索引

1.1、ElasticSearch Head 插件创建

  1. 进入ElasticSearch Head 插件,点击索引分页选项卡
    在这里插入图片描述

  2. 点击新建索引,输入索引名称(索引名称不可重复)和选择分片与副本数
    在这里插入图片描述

  3. 创建完成,如下:
    在这里插入图片描述

补充:

  • 创建完索引之后,在ElasticSearch Head插件中可以看到如下图。

  • 其中 加粗框的表示主分片,细框的表示副本。所以 0、1、2、3、4表示索引(index)的分片,而左边的Kibana_1索引就只有一个主分片和一个副本。
    在这里插入图片描述

  • 点击 框,可以看到如下图,根据其中的primary属性查看是否为主分片。

    1. 主分片
      在这里插入图片描述

    2. 副本
      在这里插入图片描述

1.2、请求方式创建索引

1.2.1、Postman 请求方式创建索引

PUT方式  发送 http://localhost:9200/test

在这里插入图片描述

创建成功:
在这里插入图片描述

1.2.1、Kibana 请求方式创建索引

启动Kibana后,浏览器输入localhost:5601,进入Dev Tools
在这里插入图片描述

输入命令 【 PUT 索引名 】,点击命令后面的执行图标,即可。如下:

PUT test  # 默认分片数和副本数

PUT test  # 设置分片数和副本数
{
	"settings": {
		"number_of_shards": 3,
		"number_of_replicas": 2
	}
}

在这里插入图片描述

创建成功:
在这里插入图片描述
在这里插入图片描述

但是请求方式创建的索引,Elasticsearch 默认为分片数和副本数都为1
在这里插入图片描述

补充:

  • 索引名不能重复,唯一的。重复创建索引错误:
    在这里插入图片描述

  • 索引名称不能有大写字母。创建含有大写字母索引错误:
    在这里插入图片描述

  • 创建索引时,需要注意分片数的分配,分片数创建完后便不可在修改,建议使用带有分片数和副本数配置的方式创建索引(副本可修改)
    在这里插入图片描述在这里插入图片描述

二、更新索引

在通过请求方式创建完索引之后,我们发现索引的分片数和副本数都为1,一般情况下,不能满足我们的需求。那么我们该怎么修改索引的分片数和副本数属性呢?

PUT 索引名称/_settings
{
  "number_of_replicas": number
}

如:
PUT test/_settings
{
   "number_of_replicas": 2
}

修改成功:
在这里插入图片描述
在这里插入图片描述

这时就有人问,那么分片呢?还记得我们讲解ElasticSearch 的架构设计与说明中说的,分片与路由吗?它是通过一个hash来路由分片存储,所以修改分片后就导致路由乱套,就导致分片找不到。

但是我们可以在创建索引之前,修改默认的分片数。Elasticsearch 默认分片数量为100。可使用如下请求方式修改为10000

PUT /_cluster/settings
{
	"persistent":{
		"cluster":{
		"max_shards_per_node":10000
		}
	}
}

在这里插入图片描述

三、修改索引读写权限

3.1、添加文档

PUT 索引名/_doc/编号
{
  "titile":"我和我的爱人"
}

如:
PUT index/_doc/001
{
  "titile":"我和我的爱人"
}

添加成功:
在这里插入图片描述
在这里插入图片描述

默认设置中,索引具备读写权限,但读写权限可关闭:

关闭索引读权限:

PUT 索引名称/_settings
{
	"blocks.read":true
}

如:
PUT index/_settings
{
	"blocks.read":true
}

在这里插入图片描述
在这里插入图片描述

关闭索引写权限:

PUT 索引名称/_settings
{
	"blocks.write":true
}

如:
PUT index/_settings
{
	"blocks.write":true
}

在这里插入图片描述

写入数据,被阻挡:
在这里插入图片描述

补充:

  • blocks.write:设置索引写的权限

  • blocks.read:设置索引读的权限

  • blocks.read_only:设置索引只可读的权限

四、查看索引

4.1、ElasticSearch Head 插件查看

在这里插入图片描述
在这里插入图片描述

4.2、请求方式查看

GET 索引名称/_settings

如:
GET index/_settings

在这里插入图片描述

查看多个索引信息:

GET 索引名称1,索引名称2,.,.,./_settings

如:
GET index,test/_settings

在这里插入图片描述

查看所有索引信息:

GET _all/_settings

在这里插入图片描述

五、删除索引

5.1、ElasticSearch Head 插件删除索引

在这里插入图片描述

5.2、请求方式删除索引

DELETE 索引名称

如:
DELETE test

在这里插入图片描述
在这里插入图片描述

六、索引Open/Close

6.1、关闭索引

POST 索引名称/_close

如:
POST index/_close

在这里插入图片描述
在这里插入图片描述

6.2、打开索引

POST 索引名称/_open

如:
POST index/_open

在这里插入图片描述
在这里插入图片描述

补充:

  • 关闭多个/打开多个索引,使用“,”隔开即可,如查看多个索引的方式
  • 关闭所有索引/打开所有索引,使用 _all 即可

七、复制索引

POST _reindex
{
	"source": {"index","被复制索引名称"},
	"dest": {"index":"复制成的索引名称"}
}

如:
POST _reindex
{
  "source": {"index":"index"},
  "dest": {"index":"index_copy"}
}

在这里插入图片描述
在这里插入图片描述

从上图我们看出,复制的索引与被复制索引分片数与副本数不一样。其实复制索引就是复制索引的数据:
在这里插入图片描述

八、索引别名

8.1、ElasticSearch Head 插件修改索引别名

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

删除索引别名:
在这里插入图片描述

8.2、请求方式操作索引别名

POST /_aliases
{
  "actions": [
    {
      "add": {
        "index": "索引名称",
        "alias": "索引别名"
      }
    }
  ]
}

如:
POST /_aliases
{
  "actions": [
    {
      "add": {
        "index": "index_copy",
        "alias": "index_copy_aliases"
      }
    }
  ]
}

在这里插入图片描述
在这里插入图片描述

删除索引别名:(修改 请求中的add改为remove即可)

POST /_aliases
{
  "actions": [
    {
      "remove": {
        "index": "索引名称",
        "alias": "索引别名(起好的别名)"
      }
    }
  ]
}

如:
POST /_aliases
{
  "actions": [
    {
      "remove": {
        "index": "index_copy",
        "alias": "index_copy_aliases"
      }
    }
  ]
}

在这里插入图片描述

8.3、查看索引别名

GET /索引名称/_alias

如:
GET /index_copy_aliases/_alias

在这里插入图片描述

查看别名对应的索引:

GET /索引名称/_alias

如:
GET /index_copy/_alias

在这里插入图片描述

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

在这里插入图片描述

GET /_alias

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值