Elasticsearch索引的操作,利用kibana(如何创建/删除一个es的索引?)
我们已经通过索引一篇文档创建了一个新的索引 。这个索引采用的是默认的配置,新的字段通过动态映射的方式被添加到类型映射。现在我们需要对这个建立索引的过程做更多的控制:我们想要确保这个索引有数量适中的主分片,并且在我们索引任何数据 之前 ,分析器和映射已经被建立好。费话不多说,我们来看。
利用Kibana提供的DevTools来执行命令,要创建一个索引
put /sdb (其中sdb为一个索引)
创建成功后会返回如下结果
{
"acknowledged" : true,
"shards_acknowledged" : true,
"index" : "sdb"
}
如果你想禁止自动创建索引,你 可以通过在 config/elasticsearch.yml
的每个节点下添加下面的配置:
action.auto_create_index: false
上面我们创建好了一个索引,可以通过
GET /sdb 来查看
{
"sdb" : {
"aliases" : { },
"mappings" : { },
"settings" : {
"index" : {
"creation_date" : "1552621484634",
"number_of_shards" : "5", //每个索引的主分片数,默认值是 5 。这个配置在索引创建后不能修改。
"number_of_replicas" : "1", //每个主分片的副本数,默认值是 1 。对于活动的索引库,这个配置可以随时修改。
"uuid" : "PQ1TSt5hQOua_cUAegrYmw",
"version" : {
"created" : "6060299"
},
"provided_name" : "sdb"
}
}
}
}
如果想修改副本数,可以用 update-index-settings
API 动态修改副本数:
PUT /sdb/_settings
{
"number_of_replicas": 1
}
再次使用GET /sdb进行查看
上面我们说了如何创建一个索引,那么接下来我们来说说如何删除一个索引
DELETE /sdb
或者
DELETE /sd*
也可以一次性删除多个索引
DELETE /sdb,/sda
也可以删除全部索引
DELETE /_all 或者 DELETE /*
删除成功后会有以下提示:
{
"acknowledged" : true
}
一般来说这样删除太过随意,也太过危险,因此我们可以elasticsearch.yml
做如下配置:
action.destructive_requires_name: true
这个设置使删除只限于特定名称指向的数据, 而不允许通过指定 _all
或通配符来删除指定索引库。你同样可以通过 Cluster State API 动态的更新这个设置。
以上部分内容来自网络,有问题可以在下方评论,讨论技术问题可以私聊我。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端
2020-05-28 windows下端口映射(端口转发)