分布式檔案系統必定面對的問題:深度分頁
問題:如何在資料分片儲存的情況下, 獲取前1000個文件?
答案:先從每個分片上獲取前1000個文件, 然後由處理節點聚合所有分片的結果之後,再排序獲取前1000個文件。
此時頁數越深,處理的文件就越多,占用的記憶體就越大,耗時就越長。這就是深度分頁問題。
為了盡量避免深度分頁為題,es通過設定index.max_result_window限定最多到10000條資料。
在設計分頁系統時,有乙個分頁數十分重要:
total_page=(total + page_size -1) / page_size
總分頁數= (文件總數+認為設定的文件大小-1) / 人為設定的文件大小
但是在搜尋引擎中的意義並不大,因為如果排在前面的結果都不能讓使用者滿意,那麼越往後,越不能讓使用者滿意。
分布式系統經典基礎理論
分布式與集群的區別 分布式系統架構的第一原則是不要分布!這句話看似矛盾,但實則揭示了分布式系統的很多特徵。分布式系統的目標是提公升系統整體效能和吞吐量另外還要盡量保證分布式系統的容錯性。即使採用了分布式系統,我們也要盡力運用併發程式設計,高效能網路框架等等手段來提公升單機上的程式效能。兩個角色 中心...
分布式系統
分布式系統和計算機網路系統的共同點是 多數分布式系統是建立在計算機網路之上的,所以分布式系統與計算機網路在物理結構上是基本相同的。他們的區別在於 分布式作業系統的設計思想和網路作業系統是不同的,這決定了他們在結構 工作方式和功能上也不同。網路作業系統要求網路使用者在使用網路資源時首先必須了解網路資源...
分布式系統
分布式,一來就直接看書,除非你有比較深厚的技術功底,要不還是很晦澀難懂的。先想想為什麼會有分布式,分布式怎麼來的。傳統的電信 銀行業,當業務量大了之後,普通伺服器cpu io 網路到了100 請求太慢怎麼辦?最直接的做法,公升級硬體,反正也不缺錢,ibm小型機,大型機,採購了堆硬體。但是網際網路不能...