如何進行EMC SYMMETRIX VMAX I/O 流程解讀,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
今天就不寫太多了,簡單聊聊VMAX的I/O流程吧。
為什么要聊I/O流程?因為高端存儲的架構比較復雜,特別是類似VMAX這樣的分布式CACHE的情況,很多人搞不明白,VMAX這么多節點,讀寫I/O是怎樣的呢?
其實也沒有大家想象那么復雜。由于VMAX雖然Cache是物理分布的,但采用邏輯統一編址的方式,因此,邏輯上是一個全局的Cache,只是訪問本引擎的Cache是本地訪問,更快,而訪問其他引擎的Cache需要通過Rapio IO交換機,延遲大些。但從大的流程看,VMAX的I/O流程和DMX沒有區別,這也是EMC厲害的地方,物理架構變了,但I/O流程不變,很多代碼就不用重寫,省了很多研發成本。
這個是讀命中的流程,比較簡單。主機發送讀請求給VMAX,VMAX發現Cache里面有這個數,就直接返回給主機,并且修改元數據。這里元數據應該就是管理CACHE算法用的,包括cache命中的次數,最近一次訪問的時間等等,上層算法需要這些元數據來決定Cache更新的動作。
這個是讀沒有命中的流程。由于讀的信息在cache中沒有發現,因此需要后端接口從相應的硬盤中去讀取相應的數據,把它讀到全局cache中,然后再把數據返回給主機,修改元數據。
然后我們來看一下寫的流程。如果現在VMAX的Cache充裕,VMAX采取的是快寫的流程。主機向VMAX發起寫請求,VMAX直接寫在Cache上,然后更新完元數據后告訴主機寫完了。最后,后端接口根據設置的參數異步落盤,也就是不是每次都需要落盤,一般是到達一定的閾值。大家要注意的是由于寫操作要防止掉電數據丟失,因此,必須元數據更新完成才告訴主機寫完了。這個和讀操作的順序是不同的。由于cache有鏡像,因此數據和元數據都有兩份,避免單點故障發生。
當VMAX的Cache快滿了的時候,超過設定的閾值,比如80%,那么在寫入Cache之前,Cache里面的數據必須先落盤,然后更新元數據,后面的流程就和快寫時一樣的。這就是延遲的快寫流程。
大家可以看到,對于普通用戶來說,VMAX就是一個整體,不用考慮引擎之間的通訊,VMAX內部會處理。實際的流程比這個復雜得多,只是一般用戶不用去關系,因為Cache邏輯上已經是全局Cache了。
看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。