note:本文要說的是一篇論文(Software defined just-in-time caching in an enterprise storage system)的思想。
框架
如下圖所示,如果你懂SAN,DAS以及cache的機制,從這個框架就可以看出這個框架的思想(~~不解釋啦)
note:雖然SAN中的存儲節點畫出了storage node的tier結構,實際上這個論文完全不講tier policy,只關心DAS的cache read...
SDCC layer
協調flash和san,來達到很好的優化的目的。sdcc server通過給client做出caching決定。而client則負責管理局部的數據cache空間,細粒度的監控workload,然後將數據從SAN搬運到DAS,從而達到更短的讀請求相應時間。
每個client的設計如下
SDCC protocol就是通信的協議,負責和server通信;
cache directory是一個維護cache目錄的結構體;
watchlist維護一個待放入cache的信息結構體;
DAS Manager主要是負責管理Flash cache;
application 的hint:是一種將app的數據放置到目標位置的消息,是應用程序調用SDCC的API(注意框架圖中的SDCC
API layer,應用程序的hint API通過這個層次可以到達SDCC client)發出的,這個是和應用程序本身存取請求不一樣的;
SDCC Server
selective caching
1.Monitor workload
2.Advise from the server
3.Hints from SDCC-API
達到的三重目標:
1.增加hit命中率
2.最大化read帶寬
3.最大化Flash 生命週期
測試結果
1.對於Brokerage Tansactiuonal(90% read)
p.s.本文講的過於簡單,但是希望至少是帶入了SDCC(軟件定義的cache一致性)這個情景,如果感興趣,還得仔細閱讀原文。