我不從Google File Systems Paper爲什麼小文件會在Google文件系統中創建熱點?
一個小文件由少數塊,也許只是一個明白這一點。如果許多客戶端 正在訪問相同的文件,則存儲這些塊的大塊服務器可能會成爲熱點。
小文件有什麼區別?許多客戶訪問的大文件是否可能導致問題?
我想過/閱讀以下內容: -
- 我認爲(糾正我,如果我錯了)是大文件的數據塊存儲在不同的大塊服務器從而分散負載。在這種情況下,1000個客戶端訪問每個塊服務器的文件的1/100。所以每個塊服務器不可避免地最終得到1000個請求。 (與訪問單個小文件的1000個客戶端不同,服務器獲取1000個小文件請求或1000個更大文件請求)
- 我讀了一些關於稀疏文件的內容。根據紙張的小文件填滿一個或多個塊。所以根據我的理解,小文件不會被重建,因此我已經將這個作爲熱點的可能原因予以消除。
「在這種情況下,1000個客戶端訪問每個塊服務器的1/100的文件,因此每個塊服務器不可避免地最終獲得1000個請求。」你能更多地在這裏擴展你的想法嗎?如果客戶端訪問文件的1/100,則每個客戶端只會聯繫百分之一的大塊服務器。這篇論文的想法是,對於大文件,訪問模式實際上是跨塊服務器的隨機分佈*,但不是一次全部*。 – GManNickG
@GManNickG一個大文件存儲在100個塊服務器中。 1000個客戶端需要該特定文件。他們最終都將需要來自100個大塊服務器的數據。所以每個chunkserver都會最終爲1000個客戶提供服務。即使有一個隨機分佈,每個文件所做的單個請求都不會等於一個小文件產生的負載嗎? 更重要的是大文件的部分存儲在不同的塊服務器? –
Gotcha。在你的場景中,所有的塊服務器最終都會服務1000次,是的,但是瞬時負載會更低。 1000個客戶端同時向單個服務器請求數據是一個熱點,如果客戶端不僅僅是同時連接每個數據塊服務器,而是超過100個數據塊服務器的1000個客戶端意味着您的任何服務器上的即時負載更低。然而,我相信這篇論文的重點是,在實際應用中,並不是所有的客戶端都會讀完整個文件,在這種情況下,chunkserver只處理(例如)一個請求。 – GManNickG