HayStack為每張圖片在內(nèi)存中維護圖片與其位置的映射表,在圖片被寫入時更新映射關系,每次系統(tǒng)啟動時可通過讀取物理卷并構(gòu)造映射表,但這樣做很耗時間,但HayStack通過為每張圖片構(gòu)造index file來簡化了系統(tǒng)啟動時映射表的構(gòu)建,index file的結(jié)構(gòu)如下所示:(其主要包含key與對應圖片位置的映射關系,系統(tǒng)啟動時,通過讀取index file便能很快的構(gòu)造映射表。)

HayStack的幾點優(yōu)勢:

1. 采用輕量級的HayStack Directory維護邏輯卷到多個物理卷的映射關系,方便的實現(xiàn)了副本技術,以實現(xiàn)系統(tǒng)容錯。

2. 簡化文件的元數(shù)據(jù)結(jié)構(gòu),以追加寫的方式往物理卷中存儲圖片,效率高。同時將圖片key與位置的映射關系全部保留在內(nèi)存中,通過一次lookup即可獲取圖片的位置。

3. 物理卷中所有的圖片都對應有index文件(固定大小,結(jié)構(gòu)簡單),從而每次系統(tǒng)重啟時,物理卷的映射信息能快速的通過index文件構(gòu)建。

4. 引入delete flag、compaction、batch upload以及進一步提高存儲的效率。

分享到

fanz

相關推薦