數據存儲產業服務平臺

專家博客 企業級部署中的SSD的應用問題

Henry NewmanInstrumental Inc.首席技術官,也是企業存儲論壇的常駐作者。他是一位行業咨詢師,在高性能計算和存儲領域有28年的經驗。

基于閃存的固態驅動器(SSD)正成為許多企業存儲用戶注意的一件大事。在我所共事的客戶中,出于一些理由,有些人在計劃采用這種新的"0層"數據存儲。這些理由包括每瓦IOPS(每秒輸入輸出),單位IOPS成本,或針對一些應用程序,以及存儲每GB/秒帶寬。

SSD和傳統磁盤存儲比起來有一些劣勢,最大的劣勢就是成本。一些人認為旋轉式硬盤驅動器將很快過時,但是我認為這不會很快發生。即使SSD要大規模替代硬盤驅動器,這種SSD也不會是基于閃存的,而且這種SSD在這個十年內還不會大量涌現(見《I/O瓶頸:數據存儲的最大威脅》)。過去20年來,廠商們一直在聲稱磁帶即將消亡,但是磁帶還是在數據保護領域發揮著重要作用??雌饋?,存儲將一直有不同的層。

這是關于閃存SSD部署規劃的三系列文章中的第一部分。第一篇文章將討論那些可以從閃存中獲益的應用,以及一些文件系統和其他問題。第二篇文章將討論硬件問題。第三篇文章將討論SSD設計問題和它們在SAS和RAID(獨立磁盤冗余陣列)控制器中的使用。

可以從SSD中獲益的應用

我們都知道一些應用的一部分,比如數據庫,可以從高IOPS架構中獲益,但是如果我們在架構中加入閃存SSD,需要考慮哪些問題呢?

SSD給應用程序帶來的真正好處包括改善小型塊I/O請求的延遲性。最快的2.5英寸1.5萬轉驅動器可能每秒可以處理250次隨機IOPS,但是大部分企業級SSD可以輕松地維持每秒4萬次IOPS讀取操作和3萬次IOPS寫入操作。當然,你需要有這樣的硬件來達到這樣的性能。我們將在本系列的第二部分討論這個問題。

數據庫中最經常使用的部分可以從SSD技術中獲益,而最明顯的部分就是數據庫索引。數據庫中第二個明顯可以從SSD中獲益的部分就是數據庫日志文件。索引和日志都比表空間小,而且經常放在1.5萬轉磁盤驅動器上,即使這樣其性能還經常受到限制。用戶經常使用iostat、sar和其他性能監視工具來評估與這些設備相關的LUN(邏輯單元號)上存儲的高延遲性。

由于閃存存儲的價格與旋轉式磁盤相比仍然非常高,因此關鍵是要理解閃存可以帶來的潛在好處。如果你的設備有很長的命令隊列,每個命令遭遇很高的延遲性(四分之一秒以上),那么閃存存儲可能正適合你的數據庫。

與閃存相關的文件系統問題

在閃存使用中,另一個正在浮現的問題是文件系統元數據?,F在,有許多文件系統是將數據和元數據分開的,這樣的文件系統可以將元數據放在SSD上。這種類型的文件系統正越來越普遍。在我和文件系統設計師交流的時候,以及在我本人設計文件系統的時候,我一直支持這樣的文件系統設計。這種設計非常合理,因為元數據通常和數據本身有不同的訪問模式。除了文件系統元數據外,就像數據庫那樣,如果文件系統有日志的話,那么這些日志也可以放在SSD中。

大部分閃存SSD的大問題之一就是它們只能在4096字節范圍內讀取和寫入。你可以認為這不是問題,因為多數索引節點都是512字節的,而文件系統元數據分配同樣也很小。問題來自文件系統所謂的超級塊(superblock)。超級塊包含了文件系統基本信息:文件系統使用的卷和位置,單位分配和可調參數,分配映射以及各種其他關鍵數據。一些文件系統沒有將超級塊限定在4096字節的分配限制內?,F在,對于那些有固定的高速緩存序列的RAID控制器來說,這明顯是個問題,對于閃存設備來說也是如此。這并不是說性能會變得很差,但是對于大多數企業級閃存設備而言,最好還是限定在4096字節的范圍內,否則讀取和寫入性能最多可能會下降50%。雖然即使下降50%還是比磁盤快很多,但是畢竟是這么昂貴的設備,浪費50%的性能顯然是不可取的。

對于那些有足夠的預算購買SSD并用于文件系統的用戶而言,他們需要考慮文件系統調整參數。一些文件系統可能有很大的分配,比如說超過64KB,使用這些大分配可能適用于基于磁盤的文件系統,因為你經得起空間的浪費。比如說,你有一個1MB的分配和一些非常大的文件以及一些小的文件,每個文件分配都以MB為單位,那么雖然小文件有空間浪費,但是大型文件可以得到有效分配,因此你不需要回到大型文件分配程序。在元數據上SSD可以幫忙是因為元數據開銷都很小,因此回到分配程序通常不影響磁盤上的性能。不過,由于SSD空間很昂貴,如果你同時有一些大型文件和一些小型文件,那么使用大分配就不是很合理了。你可以將單位分配空間調整到最小文件大小,這樣就不會浪費昂貴的SSD空間。例如,在我的筆記本上有SSD,我把NTFS分配空間設置成1024字節而不是缺省的4096字節,因為我知道我有很多小文件。

其他SSD軟件問題

在針對高IOPS需求使用閃存SSD設備的時候,你還需要考慮許多其他軟件設置問題。例如,如果你要將文件系統和數據庫的元數據分開放在SSD上,那么你的備份和恢復程序也要做相應調整,以便能夠訪問SSD。有些時候,這些程序限定了可以支持的硬件,你需要確保你的SSD是得到這些程序支持的。

最大的問題是你將需要多少空間。如果你把SSD用于文件系統的元數據或日志或數據庫的索引或日志,那么空間的計算通常非常復雜。文件系統有超級塊。這些超級塊通常很小,而且不容易計算數量;索引節點和目錄塊的數量也不容易計算。很多時候管理員也不能預計目錄有多少文件或預計目錄的數量。這種空間的分配隨文件系統而異,不過你不想出現空間耗盡的情況,如果那樣的話,你將不能添加任何文件或完成文件的寫入。對于文件系統日志來說,情況也是如此。至于數據庫,問題和文件系統一樣。你不想出現空間耗盡的情況,但是索引和日志需要多少空間不容易計算。數據庫還要考慮的另一個方面是如果你在文件系統上運行它們,你需要同時計算數據庫和文件系統的空間需求。文件系統和數據庫的空間計算都成為問題。由于SSD的成本比磁盤高出很多,因此任何空間上的浪費都是不可取的。

未經允許不得轉載:存儲在線-存儲專業媒體 » 專家博客 企業級部署中的SSD的應用問題
精品国产午夜肉伦伦影院,双性老师灌满浓jing上课h,天天做天天爱夜夜爽,攵女乱h边做边走