啊用力?嗯?轻一点原神宵宫,尿口扩张videos,国产精品久久久久精品爆乳接种 ,荡公乱妇HD电影中文字幕


微博

QQ

固態硬盤在網絡制播應用中的使用研究

2013-01-16 張海翔 傳播與制作


  隨著節目制作的發展,高清、3D及4K等更高要求的制作標準被發布,非線性編輯網絡業務應用中對存儲體的要求也越來越高,使用旋轉盤片結構的傳統機械硬盤在高端應用中已經越來越顯得力不從心。固態硬盤(SSD,Solid State Disk)在這方面比之傳統機械硬盤有著無與倫比的優勢,如沒有尋道時間,對任何地址的訪問耗費開銷都相等,隨機IO性能好等,將是構成未來高清制作網存儲系統中的重要組成部分。但同時由于固態硬盤技術本身的原因,容易產生硬盤損壞,如何在享受固態硬盤優異性能的同時保證數據安全、降低系統使用費用,是非線性編輯網將要面臨的問題。

  一. 固態硬盤技術及其優點

  固態硬盤是一種利用Flash芯片或者DRAM芯片作為永久數據存儲介質的硬盤,前者稱為NAND FLASH DISK,后者稱為RAM-DISK。由于在外部電源斷開后,RAM-DISK必須使用電池維持硬盤數據,價格昂貴,應用環境受到較大限制,所以現在常用的固態硬盤基本以Flash芯片介質為主。

  以FLASH芯片為介質的存儲單元分為兩類:SLC(單層單元)和MLC(多層單元)。SLC(單層單元)的特點是成本高、容量小、速度快;而MLC的特點是容量大成本低,寫入速度和IOPS低于SLC。MLC每個單元存儲容量為2bit,相對SLC來說整整多了一倍。不過,正是由于每個MLC存儲單元中存放的資料較多,結構相對復雜,出錯的幾率會增加,必須進行錯誤修正,這個動作導致其性能大幅落后于結構簡單的SLC。此外,SLC閃存的優點是復寫次數多達10萬次,比MLC高10倍。

  Flash存儲芯片和其它所有類型的ROM一樣,使用一種名為“浮動門場效應晶體管”的晶體管來保存數據,每個這樣的晶體管稱為一個單元(Cell)。每個單元(CELL)由Controler Gate(控制門)、Floating Gate(浮動門)、半導體二氧化硅絕緣層以及輸入端和輸出端導線等邏輯元件組成。當多個單元串并聯時,將每個單元串上所有單元(Cell)串聯起來的導線稱為BitLine(位線),將多個并聯的單元串中相同位置的單元水平貫穿起來的導線稱為WordLine(字線)。

  通過單元(CELL)組成固態硬盤的最小文件存儲單位稱為Page(頁),通常有4KB和8KB兩種,Page上面一層的組織是Block(塊),由128或者512個Page組成一個Block。一定數量(2的冪次方)的block構成更高一級的結構Plane,若干個Plane組成一個芯片,多個芯片組成一個固態硬盤。在固態硬盤的設計中,任何文件占用的空間必須是整個Page,即讀數據時必須以Page為單位進行讀取,而擦除和寫入的時候必須以整個Block為單位進行擦除。

  固態硬盤與傳統機械硬盤比較,擁有以下優點:

  1. 啟動快,沒有電機加速旋轉的過程。
  2. 不用磁頭,沒有在傳統機械硬盤中影響效率的磁盤尋道時間,可以快速隨機讀取,讀延遲極小。
  3. 相對固定的讀取時間。由于尋址時間與數據存儲位置無關,因此磁盤碎片不會影響讀取時間。
  4. 能耗低,發熱量少
  5. 內部不存在任何機械活動部件,不會發生機械故障,也不怕碰撞、沖擊、振動。

  二. 固態硬盤技術中存在的問題

  雖然固態硬盤有著傳統機械硬盤不可比擬的優勢,但因為固態硬盤的技術特征,仍然有一些問題需要在使用時加以注意:

  1. 因Erase before Overwrite產生的寫懲罰問題

  對于固態硬盤,要對一個Block進行寫入,不管Block中原來的數據是1還是0,新寫入的數據是1還是0,必須先通過Erase操作把Block全部寫為1,然后才能向Block寫入新數據,這種過程稱為Erase before Overwrite。對于整個BLOCK或者更大單位的數據改寫時,這種技術設定不會產生什么問題,但是當對較小的數據存儲單元如PAGE進行修改時,就會有問題出現了:

  假設當我們需要更改某個PAGE的數據時,其操作為:
  ·先將整個BLOCK的數據讀入固態硬盤的緩存區(RAM)
  ·通過ERASE操作改寫整個BLACK全部為1
  ·將待寫入的數據PAGE中的內容,在固態硬盤的緩存區中替換掉舊PAGE中的內容
  ·將固態硬盤緩存區中的整個BLOCK內容回寫到固態硬盤上

  假設此時Block和Page分別為512KB和4KB時,為了寫入1個Page(4KB)的數據,必須先讀出512KB的數據到RAM上,修改RAM中的數據后將512KB數據回寫到固態硬盤上,此時就會產生所謂的“擴大寫懲罰“問題,即為了寫入4KB的數據,而實際上寫入了512KB的數據,產生了512KB/4KB = 128倍的懲罰,這就大大增加了開銷。

  2. FreeSpace為0時導致的寫動作懲罰

  當固態硬盤為全新或剛被全部Erase操作以后,所有的Block對于文件系統或固態硬盤來說都是空閑空間(FreeSpace),此時該空間的狀態被標記得ERASE,往這種空間寫數據時沒有寫動作懲罰。

  隨著數據的寫入,固態硬盤會將曾經被寫入的Block都記錄下來,被用的BLOCK在使用時就需要進行重新ERASE操作。對于文件系統來說,刪除文件并不是向這個文件對應的存儲介質空間覆蓋寫入全0或者全1的過程,而只是對元數據的更改,所以只會更改元數據對應的存儲介質區域。因此,刪除文件的過程并沒有為存儲介質釋放FreeSpace,對固態硬盤來說FreeSpace只會越來越少,最后導致沒有FreeSpace,每個寫動作都產生寫懲罰。

  也就是說,對于一塊使用時間非常久的固態硬盤來講,就算它被掛載到文件系統之后,其上沒有檢測到任何文件,但其中的FreeSpace也可能是0,限制了SSD的效率。

  3. Wear Off

  固態硬盤是使用Floating Gate(浮動門)的充電和放電來保存和釋放每個單元其中的數據,使用絕緣層來隔絕電子流動來保持數據。隨著固態硬盤的長期使用,特別是大量寫操作之后,絕緣層的絕緣能力將遭到損耗,最后無法保證Floating Gate(浮動門)中保有足夠的電勢時,數據就會丟失。當固態硬盤檢測到一個Bitline(字線上)的Floating Gate(浮動門)電勢不一致時,整個BitLine就會被被判讀為損壞,即Wear Off。一個損壞的Cell將拖累整個Page被標記為損壞。損壞的Page對應的邏輯地址將被重定向映射到其它完整的預留Page。在某些場合下,特別是對于頻繁寫的場合,很可能在短時間內就達到MLC或SLC的可擦寫壽命上限,導致預留Page被迅速耗盡,從而導致整塊固態硬盤失效。

  三. SSD的延壽使用

  為了避免因為固態硬盤失效而導致數據丟失,以及降低固態硬盤存儲因為硬盤失效更換而產生的額外維護費用,在固態硬盤使用時必須注意:

  1. 確保固態硬盤運行在AHCI模式下,并且操作系統使用WINNT6.1或者更新版本

  先從操作系統說起,固態硬盤的興起畢竟不是很長時間,微軟從windows NT6.1系統才開始對固態硬盤提供完美的支持,這其中最重要的是支持TRIM指令。

  TRIM是ATA指令的一種,并在WINDOWS NT6.1(WINDOWS 7以及WINDOWS SERVER 2008R2)中首次實現。這個指令的作用是標記已刪除的文件,并且通知固態硬盤主控制器可以在空閑時間擦除這些文件對應的Block塊,這樣可以將擴大寫懲罰的任務量分散到固態硬盤硬盤的非繁忙時間,從而提升了固態硬盤硬盤的效率。

  TRIM指令只能在ACHI模式下通過特殊版本的ACHI控制器驅動才可以傳輸,并不是說系統支持TRIM主近代也支持TRIM就能用,驅動也必須要支持。另外ACHI模式下開啟NCQ(原生命令隊列)之后對于隨機寫性能的提升是成倍數的,效果非常明顯。

  本項通常是對應于配備固態硬盤的非線性編輯單機,要求其采用WINDOWS 7以上的操作系統而非采用WINDOWS XP操作系統,可以大大提升SSD硬盤的讀寫效率。對于非線性編輯網絡的共享存儲系統時,亦需要注意到各個直接連接到存儲系統的非編站點是否具有上述功能。

  2. 務必“4K對齊”[page]

  傳統的機械硬盤在格式化時,通常設置為以4K(4096字節)作為一個扇區,所謂“4K對齊”就是符合“4K扇區”定義格式化過的硬盤,并且按照“4K 扇區”的規則寫入數據。因為在較早的NTFS6.x 及之前的規范中,數據的寫入點正好會介于在兩個4K 扇區之間,也就是說即使是寫入最小量的數據,也會使用到兩個4K扇區,顯然這樣對寫入速度和讀取速度都會造成很大的影響。如果固態硬盤碰上“4K不對齊”的情況,不但會極大的降低數據寫入和讀取速度,還會造成固態硬盤不必要的寫入次數,這種情況通常會出現在對大量小文件的寫入性能上,極端情況下可能會產生數倍的差距。

  3. 不能使用碎片整理功能(Defrag)

  傳統的機械硬盤由于尋道時間限制,如果文件是以連續形式存放于硬盤上,在讀文件的時候會有較好的效率,所以才產生了碎片整理的概念和工具,利用工具將不連續的數據碎片遷移為較為連續的物理存儲狀態。但是對于固態硬盤來說,它的結構和組織方式和機械硬盤截然不同,IO性能不受文件存放位置影響,相反如果對固態硬盤使用傳統的碎片整理工具,在碎片整理過程中會對硬盤進行大量的寫操作,將會對固態硬盤壽命帶來不必要的縮短。

  4. 將頁面文件(Page File)轉移到固態硬盤以外的硬盤上

  Windows的頁面文件本該是作為操作系統的虛擬內存存在,用于在內存被用完時起代替代內存的作用。在如今的非編站點內存普遍較大的情況下,Windows的內置機制卻仍然會頻繁使用頁面文件,而頁面文件的功能是不能夠徹底關閉的。如果該頁面文件位于固態硬盤上,會產生大量寫操作,消耗固態硬盤的壽命。所以在電腦上最好多安裝一個機械硬盤,將頁面文件移到機械硬盤上。

  5. 關閉索引服務(Indexing Service)

  Windows的索引服務會建立一個龐大的數據庫,對每一個文件的創建、修改、刪除都記錄在案。這個服務的目的是為了更快的搜索文件,但是這個功能很少直接被應用到非線性編輯網絡中(更通常是在非編軟件的資源管理器,通過非編軟件的數據庫去搜索文件)。所以這樣一個服務在絕大多數的情況下只起到拖慢系統速度的作用。另外,頻繁的讀寫對固態硬盤的壽命也帶來不利影響,所以建議還是關掉這個服務。

  通過上述的幾種要點,其目的都是盡量減少固態硬盤使用中的不必要寫入次數,從而延長固態硬盤的使用壽命,降低數據損壞的風險和系統日常維護費用。

  四. 固態硬盤的新技術發展

  通過上述的做法只能延長固態硬盤的使用壽命,但仍不能從根本上解決固態硬盤的問題。隨著技術的不斷發展,固態硬盤的新技術亦給我們的帶來新的應用模式:

  1. 使用固態硬盤芯片作為傳統機械硬盤的緩存

  既然單獨使用機械硬盤或固態硬盤均不能滿足用戶的需要,那么將兩者結合起來會產生什么樣的效果呢?

  服務器級機械硬盤現在主流使用64MB的RAM作為緩存,這已經能夠較好地提升機械硬盤的效能,如果在此基礎上將數十GB級的固態硬盤芯片作為機械硬盤的緩存使用,將產生如下效果:

  (1)使用固態硬盤芯片作為緩存,比之使用RAM芯片作為緩存,讀寫速度僅相差不到10%,而固態硬盤芯片與傳統機械硬盤則有著50到300倍之間的巨大落差,完全可以將固態硬盤芯片取代RAM芯片作為硬盤的緩存使用;

  (2)使用GB級別的固態硬盤芯片作為機械硬盤緩存,比之使用MB級別的RAM作為機械硬盤緩存,可以極大地提升緩存數據的命中率,使大量的數據讀操作從較慢的機械旋轉式硬盤中讀出變成從較快的固態硬盤緩存中讀出,從而提高硬盤的讀寫效率。

  (3)用于緩存的固態硬盤芯片可以使用更高速的DRAM芯片取代FLASH芯片,由于DRAM芯片沒有FLASH芯片固有的Erase before Overwrite、0 FreeSpace和Wear Off問題,使固態硬盤燕片的使用壽命延長。而作為緩存使用的DRAM固態硬盤芯片無須考慮在斷電情況下長期保存數據所需要的電池問題,僅需要保證在斷電情況下數據從固態硬盤到機械硬盤的傳輸時間供電,從而大幅降低固態硬盤部分的造價。

  此類技術,如Intel Smart Response(英特爾智能響應)等等,已經可以讓用戶能夠把固態硬盤(部分或全部容量)用作于機械硬盤(單塊或RAID陣列)高速緩存,讓整機系統獲得接近于固態硬盤的讀取/寫入性能,同時還能保留機械硬盤容量大的優勢。

  2. 使用固態硬盤的存儲融合服務器

  目前電視臺所用的在線存儲主要使用8Gb/s的光纖通道作為傳輸載體,和目前的PCIe總線速度相當。而英特爾第2代的PCIe將達到20Gb/s,第3代將達到100Gb/s,這將是一個很大的提高,也意味著服務器將等待網絡存儲的時代又一次來臨。

  而不管是NAS還是SAN,在連接速度上都比不上DAS,因此將存儲集成到站點內部是一個可以大幅提高存儲讀寫速度的辦法。這種存儲所帶來的優勢是將數據放入內存的速度比以往更快了,固態硬盤將毗鄰站點內存,從而提供一個更快的存儲層。

  也就是說,未來對于需要高速讀取數據的站點來說,固態硬盤將是介于內存和傳統機械硬盤的高速存儲層,直接通過PCIE總線與內存進行數據交換,再通過SAS/SCSI/SATA接口與傳統機械硬盤進行數據交換。

  相比之于上面的“使用固態硬盤芯片作為傳統機械硬盤的緩存”方式,其提供的緩存存儲層容量更大,但仍然沒有脫離“將固態硬盤作為傳統機械硬盤的緩存”的模式,數據并不是長期保存于固態硬盤上。

  上述技術,已經在DELL的服務器以“0層存儲”的名稱得到應用,DELL的“流動數據”架構在EqualLogic和Compellent基礎上進行了擴展,通過RNA Networks的技術實現了上述功能,基于閃存的服務器運行數據庫查詢的速度比目前這一代要快60倍。

  3. 具備固態硬盤存儲層的智能型分層存儲

  當存儲容量和讀寫頻度增加到一定程度之后,僅僅將固態硬盤作為傳統機械硬盤系統的緩存也會產生問題,主要在于隨著緩存層的容量增大,大量的讀寫操作均發生在作為緩存層的固態硬盤上,而作為實際存儲層的傳統機械硬盤速度與之相差太遠,需要有管理機制來協調兩者之間數據遷移操作業務。如:

  ·通過存儲策略,以數據的最近使用時間和頻度來判斷緩存層的數據是否有回寫到傳統機械硬盤的必要。將高頻度使用的數據保存于固態硬盤中,并將一定時間未使用的數據回遷到機械硬盤中,騰出固態硬盤中的存儲空間。

  ·通過遷移策略,將數據回寫的時間調整到非業務繁忙時間,從而使固態硬盤在業務繁忙時間集中于關鍵業務上。

  具備固態硬盤存儲層的智能型分層存儲已經在多個不同廠商的不同產品中得到實現。其中固態硬盤可以是一種插卡式擴展存儲(如Fusion IO的IO memory平臺)也可以是直接設計到存儲系統中的分級存儲盤箱,其關鍵點不在于固態硬盤存儲而在于實現智能化分層存儲的技術與后臺引擎。如自動分層存儲技術先驅廠商Compellent(已在2010年底為Dell并購)的Storage Center系列存儲設備與Data Progression自動分層存儲技術;EMC的Fully Automated Storage Tiering(FAST和FAST VP)技術等等。

  五. 結語

  無疑,SSD相對于傳統機械硬盤來說,優點是很明顯的,但同樣缺點也很明顯。無論是應用于非編站點單機本地存儲,還是應用于非編網絡的共享存儲,SSD都能勝任,除了價格較高和讀寫次數較為有限的缺點之外,SSD在非線性編輯網絡中的應用將會越來越廣,而各種結合SSD與傳統機械硬盤的技術,不論是在硬盤內部結構層面、兩種介質間的融合層面還是分層存儲層面,其目的都是在保持SSD的高性能的同時提高它的穩定性,而隨著新的技術不斷涌現,我們也期望著更快(讀寫速度更快)、更高(IOPS更高)、更強(穩定性更強)的存儲系統,為廣電行業的制作網提供更好的基礎技術平臺。B&P

佛山電視臺 固態硬盤

視聽科技視頻號 廣告
發表評論