MEMS存儲設備的管理技術(shù)
一 引言
MEMS(Micro ElectromechanicalSystem,微機電系統)存儲器是一種新型存儲器件,具有高密度、低功耗、非易失、多探針并行訪(fǎng)問(wèn)等特點(diǎn),相對于傳統磁盤(pán)具有明顯優(yōu)勢??梢蕴钛aRAM和磁盤(pán)之間的性能差距,可在計算機系統中承擔多種角色,為新型高性能海量存儲系統結構研究帶來(lái)新思路和新方法。
(一)磁盤(pán)的請求調度算法
第一種是最簡(jiǎn)單的、性能最差的先來(lái)先服務(wù)(FCFS):第二種算法是循環(huán)查找(CLOOKLBN)。這種算法是按照LBN升序的方式進(jìn)行服務(wù),也就是說(shuō)當所有請求的LBN都落后于當前請求的LBN話(huà),就從涉及到最小LBN的請求開(kāi)始服務(wù):第三種是最短尋址時(shí)間優(yōu)先(sSTF—BN),主要思想是選擇具有最小尋址延遲的請求,但是在實(shí)際應用中卻很少使用。因為很少有主機操作系統具有用計算實(shí)際尋址距離或者預測尋址時(shí)問(wèn)的信息,考慮到磁盤(pán)LBN到物理位置的映射的關(guān)系,大部分的SSTF算法使用的是最近訪(fǎng)問(wèn)的LBN和目標LBN之間的距離作為訪(fǎng)問(wèn)時(shí)間的近似,這種簡(jiǎn)化對磁盤(pán)是有效的:第四種是最短定位時(shí)間優(yōu)先算法(SPTF),選擇具有最小定位延遲的請求,對磁盤(pán)來(lái)說(shuō),SPTF算法與其它算法顯著(zhù)的不同在于它需要考慮尋道時(shí)間和旋轉延遲。
將四種調度算法應用到Atalalok上,統計隨機負載在不同的請求到達頻率下Atlas l0k的響應時(shí)間。FCFS的性能是四種調度算法中性能最差的,同時(shí),FCFS的性能隨著(zhù)負載請求的增加性能最快達到飽和。SSTFes LBN的性能比CLOOK LBN要好,SPTF的性能最好,而且SPTF性能達到飽和的速度最慢。
前三種調度算法((FCFS CLOOK LBN和SSTFes LBN)可以利用主機的軟件系統簡(jiǎn)單有效的實(shí)現??紤]到磁盤(pán)LBN到物理位置的映射關(guān)系,實(shí)現這三種調度算法不需要詳細的設備信息,只需要根據請求的LBN號來(lái)選擇要服務(wù)的請求。SPTF算法通常是在磁盤(pán)驅動(dòng)器的固件中實(shí)現,SPTF算法需要磁盤(pán)狀態(tài)的準確信息、LBN到物理位置的映射信息、尋址時(shí)間和旋轉延遲的準確預測信息等。
(二)MEMS存儲設各請求調度算法
為了方便的將MEMS存儲設備應用到計算機系統中,MEMS存儲設備利用與磁盤(pán)相同的接口。為了證明現有的磁盤(pán)請求調度算法同樣適用于MEMS存儲設備,將上節中四種磁盤(pán)的請求調度算法應用到MEMS存儲設備上。多數的請求調度算法,如SSTF LBN和CLOOKLBN,只需要知道LBN的信息,將LBN之間的距離作為定位時(shí)間的估計。SPTF算法涉及到尋址時(shí)間和旋轉延遲。而MEMS存儲設備只存在x軸和Y軸方向的尋址,沒(méi)有旋轉延遲。與磁盤(pán)相同的是,尋址時(shí)間是一維的,接近一個(gè)線(xiàn)性的LBN空間。與磁盤(pán)不同的是,MEMS存儲設備在兩個(gè)方向的尋址是并行完成的,選擇較大的作為實(shí)際的尋址時(shí)間。由于x軸方向存在穩定時(shí)間,x軸方向的尋址時(shí)間總是比Y軸大。如果Y軸的尋址時(shí)間比較大,SPTF的性能僅比SSTF略有優(yōu)勢。利用Disksim。將磁盤(pán)的調度算法應用到MEMS存儲設備上,統計不同的請求到達頻率的隨機負載下的平均響應時(shí)間。
四種調度算法在MEMS存儲設備上具有和磁盤(pán)類(lèi)似的性能:FCFS性能最差,SPTF性能最好。但是,FCFS和基于LBN的算法之問(wèn)的差距比磁盤(pán)小。因為在MEMS存儲設備尋址時(shí)間在整個(gè)服務(wù)時(shí)間中占很大比例。CLOOK LBN和SSTF LBN性能差距要比磁盤(pán)小。
三 數據布局策略
(一)小粒度非順序訪(fǎng)問(wèn)
MEMS存儲設備數據訪(fǎng)問(wèn)具有與磁盤(pán)類(lèi)似的特性,短距離尋址比長(cháng)距離尋址要快。與磁盤(pán)不同的是,由于彈簧的回復力的存在,使得不同位置上觸動(dòng)器作用力的影響不同。彈簧作用力對每個(gè)tip的訪(fǎng)問(wèn)區域不同位置的影響。彈簧的作用力隨著(zhù)sled位移的增加而增大,對于短距離來(lái)說(shuō)定位時(shí)間反而較長(cháng)。因此,在考慮查找小粒度、常用的數據項的時(shí)候,除了考慮尋址距離,還要考慮sled距中心位置的距離。
(二)大粒度順序訪(fǎng)問(wèn)
MEMS存儲設備和磁盤(pán)的流傳輸速率相似:Atals 10K的流傳輸速率是17,3-25,2MB/s,MEMS存儲設備的流傳輸速率為75,9MB/s。MEMS存儲設備的定位時(shí)間比磁盤(pán)低一個(gè)數量級,對MEMS存儲設備來(lái)說(shuō),定位時(shí)間對于大批量數據傳輸影響很小。例如:一個(gè)256KB的讀請求在X軸不同位置上的服務(wù)時(shí)間,在1250個(gè)柱面的不同請求之間的服務(wù)時(shí)間僅差10%。同時(shí)減少了大粒度、順序傳送的數據對局部性的需求。但是,對磁盤(pán)來(lái)說(shuō),尋址距離是影響尋址時(shí)間的重要因素。同樣,對一個(gè)256KB大小的請求,長(cháng)距離尋址時(shí)間可以使整個(gè)服務(wù)時(shí)間增加1倍。
(三)雙向數據布局
為充分利用MEMS存儲設備的訪(fǎng)問(wèn)特性,引入了一種雙向布局策略。小數據存放在最中間的小區域中,大的、順序的流數據存放在外圍的小區域中。這種策略可以采用5X5的網(wǎng)格方式實(shí)現。
在假設各個(gè)請求內部不存在相關(guān)性的前提下,比較雙向布局、“organ pipe”布局和一種優(yōu)化的磁盤(pán)布局的性能。在“organpipe”布局策略中,最經(jīng)常訪(fǎng)問(wèn)的文件存放在磁盤(pán)最中間的磁道上,使用頻率稍差的文件存放在中間磁道的兩側,最不經(jīng)常使用的文件存放在靠近最內部和最外部磁道上。這種布局策略對磁盤(pán)是優(yōu)化的,缺點(diǎn)是需要根據文件的使用頻率定期的移動(dòng)文件,還需要維護文件的一些狀態(tài)來(lái)記錄文件的使用頻率。
四 MEMS存儲設備故障管理
(一)內部故障
磁盤(pán)常見(jiàn)的故障有兩種:可恢復故障和不可恢復故障。MEMS存儲設備也會(huì )出現類(lèi)似的故障。但是,MEMS存儲設備可以采用多個(gè)探針來(lái)彌補組件故障,包括可能會(huì )導致設備不可用的故障。
對MEMS存儲設備來(lái)說(shuō),有效的糾錯碼可以通過(guò)分布在多個(gè)探針上的數據計算得到。在G2模型中,每個(gè)512字節的數據塊和ECC碼分布在64個(gè)探針之問(wèn)。Ecc碼包括一個(gè)垂直部分和一個(gè)水平部分。ECC碼水平部分可以從故障的扇區得到恢復,而垂直部分指出哪些扇區可以作為故障扇區對待,同時(shí)將大的錯誤轉化為扇區擦除操作。這個(gè)簡(jiǎn)單的機制說(shuō)明大部分的內部故障是可以恢復的。
像磁盤(pán)一樣,MEMS存儲設備也保留了一些的備用空間(spare space),用來(lái)存儲由于探針和介質(zhì)故障而無(wú)法保存在默認位置的數據。MEMS存儲設備的多個(gè)探針可以在一個(gè)磁道上并行訪(fǎng)問(wèn)數據,可以避免由于故障需要重新映射帶來(lái)的性能和預測開(kāi)銷(xiāo)。而且,通過(guò)在每個(gè)磁道設置一個(gè)或者多個(gè)備用探針(spare tips),不可讀取的數據被重新映射到空閑探針相同的扇區。
(二)設備故障
MEMS存儲設備也很容易受到不可恢復的故障影響:外部機械或者靜電強大的作用力能夠損壞觸動(dòng)器的集電刷或者折斷彈簧,破壞介質(zhì)表面,損壞設備的電子裝置或者破壞數據通道。如果出現這些故障,可以采用與磁盤(pán)一樣的方式來(lái)處理。例如,采用設備內部的冗余和周期性的備份來(lái)處理設備故障。
MEMS存儲設備的機械特性在一些容錯機制中更適合處理讀一更新一寫(xiě)(read-modify-write)操作。一般的磁盤(pán)需要轉完整的一圈才能到達相同的扇區,而MEMS存儲設備可以快速的反轉方向,大大減少了讀一更新一寫(xiě)的延遲。
(三)故障恢復
同磁盤(pán)一樣,文件系統和數據庫系統需要維護存儲在MEMS存儲設備上對象內部的一致性。雖然采用同步寫(xiě)操作對性能具有一定影響,但是,MEMS存儲設備的低服務(wù)時(shí)間可以減少這種損失。另外,MEMS存儲設備沒(méi)有轉軸啟動(dòng)的時(shí)間,因此設備啟動(dòng)速度快,大概只需要0.Sms。即使是高端磁盤(pán),也需要15-25s的時(shí)間來(lái)啟動(dòng)轉軸和完成初始化。同時(shí),因為不需要啟動(dòng)轉軸,就不需要考慮啟動(dòng)轉軸需要的功耗,也就沒(méi)必要采取任何減少功耗的技術(shù),這些都使得所有的MEMS存儲設備可以同時(shí)啟動(dòng),系統啟動(dòng)的時(shí)間從秒級降到毫秒級。
評論