es学习之索引管理

创建索引

  1. 创建索引的时候可以指定分片数量和副本数量,分片数量默认是5,副本数量默认是1
    请求:
PUT http://127.0.0.1:9200/secisland/   

参数:

{	//设置
	"settings":{//分片3个,副本2个,总共6个,,如果是一台主机,没有副本数,共3个 
		"index":{"numbers_of_shards":3,"numbers_of_replicas":2
		}
	}
}

参数可以简写为:

{
"settings":{"numbers_of_shards":3,"numbers_of_replicas":2}
}

返回值:

{//表示成功
	"acknowledged":true
}

后面可以通过update-index-settings API完成对副本数的修改,例如
请求:

PUT http://127.0.0.1:9200/secisland/settings/

参数:

{"numbers_of_replicas":1}

对于es的文档而言,一个文档可以包含一个或者多个字段,每个字段都有自己的类型,es是通过映射把字段和数据类型对应起来的,一个字符串也可以解析为多个值,
每个字段的值都会被添加到倒排索引对应的字段中

创建自定义字段类型的例子如下:
请求:

PUT http://127.0.0.1:9200/secisland

参数:

{
	"settings":{"numbers_of_shards":3,"number_of_replicas":2},
	"mappings":{"secisland":{ //定义类型中的自定义字段
			"properties":{ //字段中的属性
				"logType":{
					"type":"string",
					"index":"not_analyzed"  //此处应该是不被分析器分析
				}
			}
		}
	}
}

在此例子中,我们创建了一个名为secisland的类型,类型中有一个自定义的字段为logType,类型是string,而且此字段是不被分析器分析的
2. 删除索引
请求:

DELETE http:127.0.0.1:9200/secisland/

上述例子删除了名为secisland的索引,删除索引需要指定索引名或者通配符,删除索引可以使用,或者_all或*删除全部索引

_all或*删除索引时要谨慎操作
可以设置elasticsearch.yml属性action.destructive_requires_name为true,禁止使用_all或者*来删除索引

  1. 获取索引
    请求:
GET http://127.0.0.1:9200/secisland/

此请求会将系统中该索引的全部信息,包括一些默认配置
返回结果过滤:可以过滤返回结果的属性
请求:

GET http://127.0.0.1:9200/secisland/_settings,_mappings

上述例子只会返回settings和mapping的属性。
可配置属性包括:_settings,_mappings,_warmers和_aliases
索引不存在就会报错

"type":"index_not_found_exception"

4.打开/关闭索引
打开/关闭索引可以打开或关闭一个索引,但关闭索引操作,只能显示索引元数据信息,不能进行读写操作
打开关闭索引方式:/{索引名}/_open或者/{索引名}/_close
可以同时打开或关闭多个索引,弱国索引不存在会报错,可以再config/elasticsearch.yml中设置

ignore_unavailable=true

不显示异常

action.destructive.requires.name=true

禁止使用通配符或者_all标识索引
注意:关闭索引会继续占用磁盘空间,而使磁盘空间浪费
禁止关闭索引功能

settingscluster.indices.close.enable=flase //默认是true
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值