在 debian 上運行 Web 伺服器和資料庫的最佳檔案系統是什麼?
範例:在debian ext2 或ext3 上,管理帶有巨大子資料夾的巨大資料夾需要太長時間,我的管理任務需要很長時間,如果每個子資料夾不等待30 分鐘,我就無法刪除巨大的子資料夾。
答案1
您的 extX 檔案系統啟用了 dir_index 嗎? (執行tune2fs -l /dev/XXX進行檢查)如果沒有,請先嘗試啟用它。
XFS 可以很好地處理大量目錄。
答案2
作為詹姆士請注意,ext{2,3} 使用適當的標誌可以非常好地處理大型目錄;但是……有時候感覺不是那樣的。
具體來說:
- 現代文件系統可以執行從名稱到inode 的非常快速且可擴展的映射,這意味著它可以(幾乎)立即打開任何給定文件,無論目錄有多大。所有者、等)關於特定路徑的資訊很大程度上不受目錄大小的影響。
但...
- 對整個目錄進行的任何操作都必須線性迭代那裡的所有文件,這可能非常緩慢。例如,
ls
預設情況下按字母順序對檔案名稱進行排序;因此它必須先讀取所有文件,然後排序,然後顯示,在數千個文件的目錄上輕鬆花費幾分鐘。另一個常見問題是通配符匹配,它還必須讀取所有現有檔案名稱以返回匹配的子集。
結論:如果您只使用精確指定的路徑,任何好的檔案系統都可以。如果您使用通配符,或頻繁地對整個目錄進行操作(列出、複製或刪除它),任何檔案系統在大型目錄上都會太慢。
答案3
首先,請查看維基百科關於檔案系統的文章:http://en.wikipedia.org/wiki/Comparison_of_file_systems。
其次,考慮是否可以重新組織層次結構,以便在任何給定層級上都沒有那麼多檔案。
第三,你運行什麼樣的硬體?
第四,這可能是高度意見導向的問題,但我個人喜歡ext3或jfs。
答案4
這取決於“大資料夾”的細節,特別是它是大量小檔案還是實體大檔案以及目錄樹的深度。
XFS是一個非常可靠的檔案系統,非常適合高效處理大型檔案。它經常在生產環境中受到攻擊,因為它在RAM 中積極緩存數據,並且由於突然斷電(不是文件系統損壞,只是數據丟失)可能導致數據丟失,儘管幾乎每個文件系統在某種程度上都遇到同樣的問題。另一個問題是新增或刪除目錄時元資料操作速度稍慢。如果您有很深的目錄樹,這可能會破壞您的交易,但我建議您在放棄 XFS 之前對其進行測試。
JFS是一個堅如磐石的檔案系統,以低 CPU 使用率和在許多不同負載下的全面性能而聞名。當我強烈渴望 ext3 的穩定性但無法處理 ext 系列檔案系統的效能怪癖(又稱低效率分配和緩慢磁碟存取)時,它幾乎是我的首選檔案系統。與 XFS 相比,您可能會發現它在處理大型檔案時的效能不那麼高。
如果沒有關於您的目標工作負載的更多詳細信息,我實際上無法給您明確的建議,但我懷疑如果您沒有時間進行廣泛的調整和基準測試,JFS 將是一個非常好的選擇。