學完ES分布式集群的工作原理以及一些基本的將數(shù)據(jù)放入索引然后檢索它們的所有方法,我們可以繼續(xù)學習在分布式系統(tǒng)中,每個分片的文檔是被如何索引和查詢的。

路由

首先,我們需要明白,文檔和分片之間是如何匹配的,這就是路由。當你索引一個文檔,它被存儲在單獨一個主分片上。Elasticsearch是如何知道文檔屬于哪個分片的呢?當你創(chuàng)建一個新文檔,它是如何知道是應(yīng)該存儲在分片1還是分片2上的呢?

進程不能是隨機的,因為我們將來要檢索文檔。事實上,它根據(jù)一個簡單的算法決定:

shard = hash(routing) % number_of_primary_shards

routing值是一個任意字符串,它默認是_id但也可以自定義。這個

延伸閱讀

學習是年輕人改變自己的最好方式-Java培訓,做最負責任的教育,學習改變命運,軟件學習,再就業(yè),大學生如何就業(yè),幫大學生找到好工作,lphotoshop培訓,電腦培訓,電腦維修培訓,移動軟件開發(fā)培訓,網(wǎng)站設(shè)計培訓,網(wǎng)站建設(shè)培訓學習是年輕人改變自己的最好方式