詳解Elasticsearch如何把一個索引變?yōu)橹蛔x
正文
將索引設(shè)置為只讀可能聽起來很奇怪,但在 Elasticsearch 中執(zhí)行此類操作是可能的。想象一下這樣一種情況,你特別需要限制對索引的寫入操作,無論是維護、業(yè)務(wù)規(guī)則還是任何其他原因。讓我們學(xué)習(xí)如何將索引配置為已讀以及如何撤消操作。
我們先使用如下的命令來創(chuàng)建一個叫做 test 的索引:
PUT test/_doc/1
{
"content": "I am xiaoguo from Elastic"
}
設(shè)置為只讀
要進行此更改,我們需要更新索引設(shè)置。 下面的命令將使索引成為只讀的。
PUT /test/_settings
{
"index": {
"blocks": {
"write": true
}
}
}
執(zhí)行完上面的命令后,我們可以再接著創(chuàng)建一個如下的一個文檔:
PUT test/_doc/2
{
"content": "I am an evangelist as well"
}
我們可以看到如下的一個響應(yīng):
{
"error": {
"root_cause": [
{
"type": "cluster_block_exception",
"reason": "index [test] blocked by: [FORBIDDEN/8/index write (api)];"
}
],
"type": "cluster_block_exception",
"reason": "index [test] blocked by: [FORBIDDEN/8/index write (api)];"
},
"status": 403
}
要恢復(fù)只需將狀態(tài)從 true 更改為 false。我們試著運行如下的命令:
PUT /test/_settings
{
"index": {
"blocks": {
"write": false
}
}
}
我們再次寫入我們想要的文檔。我們可以看到這次的寫入是成功的:
PUT test/_doc/2
{
"content": "I am an evangelist as well"
}
上面的響應(yīng)為:
{
"_index": "test",
"_id": "2",
"_version": 1,
"result": "created",
"_shards": {
"total": 2,
"successful": 1,
"failed": 0
},
"_seq_no": 1,
"_primary_term": 1
}
希望這個能幫助到你。
以上就是詳解Elasticsearch如何把一個索引變?yōu)橹蛔x的詳細(xì)內(nèi)容,更多關(guān)于Elasticsearch索引變只讀的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
JavaWeb開發(fā)基于ssm的校園服務(wù)系統(tǒng)(實例詳解)
這篇文章主要介紹了JavaWeb開發(fā)基于ssm的校園服務(wù)系統(tǒng),本文通過實例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下2020-02-02
Spring boot 整合CXF開發(fā)web service示例
這篇文章主要介紹了Spring boot 整合CXF開發(fā)web service示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-05-05
IDEA+Maven創(chuàng)建Spring項目的實現(xiàn)步驟
這篇文章主要介紹了IDEA+Maven創(chuàng)建Spring項目的實現(xiàn)步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-07-07

