Elasticsearch:如何把一个索引变为只读
前言
将索引设置为只读可能听起来很奇怪,但在 Elasticsearch 中执行此类操作是可能的。想象一下这样一种情况,你特别需要限制对索引的写入操作,无论是维护、业务规则还是任何其他原因。让我们学习如何将索引配置为已读以及如何撤消操作。
我们先使用如下的命令来创建一个叫做 test 的索引:
1. PUT test/_doc/1
2. {
3. "content": "I am xiaoguo from Elastic"
4. }
设置为只读
要进行此更改,我们需要更新索引设置。 下面的命令将使索引成为只读的。
1. PUT /test/_settings
2. {
3. "index": {
4. "blocks": {
5. "write": true
6. }
7. }
8. }
执行完上面的命令后,我们可以再接着创建一个如下的一个文档:
1. PUT test/_doc/2
2. {
3. "content": "I am an evangelist as well"
4. }
我们可以看到如下的一个响应:
1. {
2. "error": {
3. "root_cause": [
4. {
5. "type": "cluster_block_exception",
6. "reason": "index [test] blocked by: [FORBIDDEN/8/index write (api)];"
7. }
8. ],
9. "type": "cluster_block_exception",
10. "reason": "index [test] blocked by: [FORBIDDEN/8/index write (api)];"
11. },
12. "status": 403
13. }
要恢复只需将状态从 true 更改为 false。我们试着运行如下的命令:
1. PUT /test/_settings
2. {
3. "index": {
4. "blocks": {
5. "write": false
6. }
7. }
8. }
我们再次写入我们想要的文档。我们可以看到这次的写入是成功的:
1. PUT test/_doc/2
2. {
3. "content": "I am an evangelist as well"
4. }
上面的响应为:
1. {
2. "_index": "test",
3. "_id": "2",
4. "_version": 1,
5. "result": "created",
6. "_shards": {
7. "total": 2,
8. "successful": 1,
9. "failed": 0
10. },
11. "_seq_no": 1,
12. "_primary_term": 1
13. }
希望这个能帮助到你。
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanfbfeh
系列文章
更多
同类精品
更多
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
excel下划线不显示怎么办
PHP中文网 06-23 -
怎样阻止微信小程序自动打开
PHP中文网 06-13 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
photoshop蒙版画笔没反应怎么办
PHP中文网 06-24