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

HayStack的幾點(diǎn)優(yōu)勢(shì):

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

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

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

4. 引入delete flag、compaction、batch upload以及進(jìn)一步提高存儲(chǔ)的效率。

分享到

fanz

相關(guān)推薦