ES中的索引管理

一、创建索引
如果需要手动创建索引,则需要更改配置当中
action.auto_create_index: false

二、删除索引
DELETE  /index_name
DELETE  /index_name1,index_name2
DELETE  /index_*
DELETE  /_all
DELETE  /*

禁用模糊匹配删除索引
action.destructive_requires_name: true

三、索引设置
1.分片相关设置
number_of_shards每个索引的主分片数,默认值是 5 。这个配置在索引创建后不能修改。
number_of_replicas每个主分片的副本数,默认值是 1 。对于活动的索引库,这个配置可以随时修改

设置索引分片信息
PUT /megacorp
{
   “settings” : {
      “number_of_shards” : 3,
      “number_of_replicas” : 2
   }
}

更新索引副本分片数量
PUT /megacorp/_settings
{
    “index” : {
        “number_of_replicas” : 1
    }
}

查看分片信息
GET /_cat/shards

2.分析器相关设置
可以自定义分析器(后续用到再做详细介绍)

四、索引下的类型和映射
同一个索引下的不同类型不能定义冲突的字段

五、索引别名
1.别名可以无缝从一个索引切换到另外一个索引
2.可以给索引分组
3.给索引创建子集
添加索引并给索引添加别名
PUT /index1
PUT /index1/_alias/index-demo

PUT /index2
PUT /index2/_alias/index-demo
查找别名下的索引
GET /*/_alias/index-demo
查找索引下的别名
GET /index1/_alias/*

将index2下的数据迁移到index1下
POST /_aliases
{
    “actions”: [
        { “remove”: { “index”: “index2”, “alias”: “index-demo” }},
        { “add”:    { “index”: “index1”, “alias”: “index-demo” }}
    ]
}

备注:一个索引可以有多个别名



Tagged , , , , . Bookmark the permalink.

Comments are closed.