我有一個文件系統,在10級樹結構中有4000萬個文件(總共大約500GB)。我有的問題是備份。 Incr備份(bacula)需要9個小時(大約10 GB),性能非常低。一些目錄有50k個文件,其他10k個文件。 HD是HW RAID,我有默認的Ubuntu LV。我認爲這裏的瓶頸是文件數量(巨大的inode數量)。我試圖提高性能(在200k/s的讀取速度下,同一FS上的完整備份需要4天以上)。 - 你認爲把FS分成幾個較小的FS會有幫助嗎?我可以有1000個較小的FS ... - 你認爲從HD移動到SSD會有幫助嗎? - 有什麼建議嗎?ext性能處理數百萬個文件
謝謝!
霍拉沃爾特......穿越FS爬行的每一個文件系統操作......我在談論重組結構和歸檔不需要的文件夾....今天我已經計算出至少4個文件的用戶不'不需要讓他們上網。可悲的是,備份和mysql分貝下的備份存儲卷也位於同一個巨大的FS上。移動這兩樣東西可以改善這種情況。我沒有任何直接控制生成的文件,但是正常情況下,每個文件夾有10k到50k文件....我也認爲任何SSD都會很快磨損.... – Sergio 2015-02-13 02:32:56
刪除這些4M文件是一個開始。我不知道訪問它們的要求,你可以使用'find/yourpath -atime +30 -type f -exec rm {} \; '或自動將它們變成焦油並提取所需的文件? – 2015-02-13 08:19:34
保存這個怪物的服務器只有16G的RAM ...收集板數據我發現ext4 inode緩存在達到5 GB時已滿。我在一臺新服務器上運行了一些測試(96 GB RAM),我發現我需要45 GB來緩存FS元數據......所以我會將RAM升級到64 GB或96 GB檢查是否有顯着的性能變化.. – Sergio 2015-02-14 18:58:02