Elasticsearch 參考指南(在6.4中的重要更改)

在6.4中的重要更改

本節討論在將應用程序遷移到Elasticsearch 6.4時須要注意的更改。json

bin/plugin不能再刪除x-pack了
bin/plugin remove x-pack再也不有效,在升級到6.4或之後的版本以前,你應該刪除X-Pack插件,更多介紹在滾動升級和完整集羣重啓升級。

也請參閱發行亮點和發行說明。elasticsearch

API更改

字段功能請求格式

在過去,fields能夠做爲參數提供,也能夠做爲請求體的一部分提供,如今不提倡在請求體中指定fields,而是應該始終經過請求參數提供字段,在7.0.0中,字段功能API將不接受請求主體中提供的fields插件

在收縮/分割操做期間複製源設置

在之前的Elasticsearch版本中,調整大小操做(收縮/分割)只會從源索引中複製index.analysisindex.similarityindex.sort設置。Elasticsearch 6.4.0引入了一個請求參數copy_settings,除了不可複製的索引設置外,它將從源中複製全部索引設置。這個參數在6.x中默認爲false,在6.4.0中當即被棄用,將只能在8.x中被設置爲true,並將在9.0.0中刪除。注意,當使用此參數時,意味着將複製全部可複製的設置,這包括爲調整大小操做必須放置的索引塊,以及爲執行調整大小操做而設置的任何分配設置。若是使用此參數,你將不得不在操做以後發出請求,以調整目標索引上所需的設置,或者經過調整大小操做發送這些設置的所需值。code

搜索和查詢DSL更改

限制Regexp查詢請求中可使用的regex的長度

由許多操做符組成的長字符串的Regexp查詢可能會遇到堆棧溢出,爲了防止出現這種狀況,Regexp查詢請求中可使用的regex的最大長度限制爲1000,對於特定索引,這個默認最大值能夠經過設置index.max_regex_length來更改。orm

腳本

遺留存儲的腳本格式已被廢棄

不使用頂級script對象的存儲腳本格式已被棄用,這些格式的支持將在下一個主要版本中刪除。對象

這包括template存儲的腳本格式和不將腳本封裝在script json對象中的格式。索引

REST客戶端

舊的低級別performRequest已被棄用

performRequestperformRequestAsync在6.3版本的低級別客戶端中已經被棄用,支持performRequest(Request)performRequestAsync(Request, ActionListener),這些將容許咱們向客戶端添加更多的特性,而不須要添加更多的performRequest變體。ip

舊的高級別request方法已被棄用

高級別客戶端上的全部request方法都已被棄用,以支持採用RequestOptions的新變體,這容許高級別客戶端的用戶對單個請求定製許多其餘方法沒法使用的選項。rem

HostSniffer重命名爲NodeSniffer和signature更改

爲了容許Sniffer獲取更多的元數據,咱們將它從嗅探HttpHost更改成嗅探Node,引入了一個新類來包含鏈接信息和元數據,好比節點的角色或在elasticsearch.yml中定義的任何屬性,這些能夠被新的RequestOptions#setNodeSelector使用。字符串

相關文章
相關標籤/搜索