hbase存儲海量小文件 大量小文件存儲,如何選擇存儲方案?
大量小文件存儲,如何選擇存儲方案?關(guān)鍵是如何使用這些文件。像網(wǎng)站一樣,上傳后不需要原始文件名,后臺會自動重命名。讀取時,文件鏈接是顯式指定的,沒有遍歷操作。一次讀取整個文件場景。您可以使用一個文件系統(tǒng)
大量小文件存儲,如何選擇存儲方案?
關(guān)鍵是如何使用這些文件。
像網(wǎng)站一樣,上傳后不需要原始文件名,后臺會自動重命名。讀取時,文件鏈接是顯式指定的,沒有遍歷操作。一次讀取整個文件場景。您可以使用一個文件系統(tǒng)來散列文件名,并根據(jù)算法的結(jié)果確定存儲位置。讀取時,散列文件名以確定從何處讀取。它避免了在普通文件系統(tǒng)中查找文件分配表的低效操作。使用對象存儲也是一種很好的方法,相當(dāng)于存儲在數(shù)據(jù)庫中。我們可以通過對數(shù)據(jù)庫的內(nèi)存緩存和索引優(yōu)化來提高讀取速度。
如果要使用傳統(tǒng)的POSIX標(biāo)準(zhǔn)文件系統(tǒng)隨機(jī)讀取文件數(shù)據(jù),則需要保留原始文件名、目錄和遍歷功能??梢詫⑽募到y(tǒng)與元數(shù)據(jù)服務(wù)一起使用。此元數(shù)據(jù)服務(wù)相當(dāng)于數(shù)據(jù)庫形式的文件分配表,它存儲每個文件的存儲位置。在讀取文件時,首先查詢元數(shù)據(jù)服務(wù)器以找出從何處獲取文件,然后從相應(yīng)的位置獲取文件。