Elasticsearch入門到精通之指定分片、路由查詢

一、分片

都知道一份數據只會在一個分片上出現,當分片數很多的情況,如果要查詢某個數據並且已知在某個分片上,那麼就可以指定分片查詢,避免ES在查詢的時候做無用功,效率低!

DSL方式

直接在URL上拼接分片參數即可,其參數爲preference=_shards:1,其中數字1就表示當前所在的分片數,示例如下:

GET /saas_order_info_now/_search?preference=_shards:1
{
	// ....
}

Java方式

org.springframework.data.elasticsearch.core.query.AbstractQuery#setPreference

二、路由

同樣,路由也是一種提高查詢效率的一種方式。默認情況下,ES把_id作爲每條文檔作爲路由,但是有時候業務的需要,我們指定某個字段作爲路由,那麼這個時候你可以指定路由的方式以達到快速查詢的目的。這個查詢方式也是與分片類似,具體參考該文章:https://blog.csdn.net/wangxuelei036/article/details/106634367

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章