于賽賽
【摘要】信息技術的高速發展推動人類社會全面進入數字時代,突出表現在信息總量和交換量的迅猛增長,不斷出現新興的應用領域。傳輸、處理和存儲如此龐大的數據量使存儲系統面臨前所未有的機遇和挑戰。本文在對當前的數據存儲技術研究的基礎上,介紹了基本存儲設備和基本存儲設施;討論了存儲技術存在的問題;分析了數據存儲優化的途徑。
【關鍵詞】數據存儲 存儲設備 優化
由硬盤作為基本單元,通過各種總線、網絡連接成不同層次和不同規模的存儲系統,構成了我們目前的存儲系統。由于存儲成本的大幅下降,數據的收集不再存在固有的局限性,大量信息可以被廉價地捕獲和記錄。此外,數據也并不僅限于特定的用途,它可以為同一目的而被多次使用,也可用于其他目的,其價值從最基本的用途轉變為未來的潛在用途。
一、數據存儲技術概述
在計算機系統中存儲系統具有層次性的結構,根據與處理器的距離可分為多個層次,每個層次的存儲器在數據存取時間、數據傳輸帶寬和容量上是不同的。如下圖所示,第0層一般是指處理器的內部寄存器組、一級、二級和三級Cache;第1層是指主板上的隨機存儲器,習慣稱為內存或主存儲器。處理器可以通過指令直接訪問隨機存儲器中的數據。一般而言,第2層以下統稱為外部存儲器。相對于內存儲器,外存儲器不能被處理器直接訪問,必須通過I/O通道進行存取。但是外部存儲器可以提供廉價的、大容量和非易失的數據存儲能力。典型的外存儲器就是硬盤(磁盤或固態硬盤)。目前流行的是以網絡連接的方式掛載到本地計算機的存儲方式,由于與硬件無關,它提供巨大的便捷性。
二、數據存儲技術存在的問題
存儲技術面臨的主要問題可歸納為如下幾個方面:
(1)大數據存儲架構的挑戰:磁盤讀寫性能差,與主存的速度差距正在逐漸增大,使得傳統的主存一磁盤存儲架構越來越無法適應大數據管理的要求。
(2)大數據管理算法的挑戰:隨著新型存儲介質越來越多地被運用于大規模分布式存儲中,大規模分布式數據庫中傳統的持久化策略、索引結構、查詢執行、查詢優化、恢復策略等均是基于磁盤存儲設計的,新型存儲介質具有完全不同于磁盤的物理特性,因此無法發揮新型存儲的優勢。
(3)大數據管理的能耗挑戰:能耗在現有大型數據管理系統(通常是數據中心)中的費用比例逐年升高(目前大約占總能耗的16%左右),給企業帶來了沉重的經濟負擔。
三、數據存儲優化方法
數據存儲系統的性能改善一般從三個方面入手:一是設備固有物理性能的提升,例如在預算允許的情況下使用固態硬盤;二是系統結構的設計和優化,包括系統邏輯結構和數據流動通路;三是針對特定應用程序,對I/O負載進行優化,提高特定存儲模式下的存儲性能。
一些常用提高存儲系統性能的原則是:分析數據定義格式和數據訪問規律,針對經常性行為進行系統設計優化;通過并發性訪問提高系統吞吐量;使用緩沖和預取技術優化存儲系統讀取性能;使用冗余、校驗的方式提高系統的可靠性。下面列舉幾種常用的優化方法:
(1)針對設備存取特征進行優化。根據存儲介質的物理特征,優化數據訪問過程是提高單一設備性能的有效方法。例如一種在磁盤的磁道邊界內定位,進行數據訪問的技術,用來減小跨磁道的訪問延遲。通過該方法可以將中等大小的數據(100-500KB)的訪問性能提高50%。此外,對于磁盤驅動器,還可以根據外道的訪問速率高于內道的特點,把熱點數據組織到外道上,在一定程度上減小這些數據的響應延遲。
(2)數據布局的優化。對于一個特定系統,不同數據塊的訪問熱度是不相同。如果能夠根據數據的訪問情況,并結合各個部件的存取特征,在各存儲層次合理管理、組織數據就會有更好的整體性能。
在存儲層次的縱方向上,將熱點數據存放在靠近處理器的設備中。而在存儲層次的橫方向上,將熱點數據存放在具有較高性能的設備中。合理的數據布局使得數據更接近處理設備從而提高系統的整體性能。
(3)I/O并發和負載平衡。I/O平衡是指把I/O請求均勻分布在多個存儲設備中,從而避免由于某一存儲設備負載過重而影響系統的整體性能的情況。在固態硬盤中,存儲空間由多個閃存芯片組成,控制器盡量均匆地把數據分配到所有的閃存芯片上,通過閃存芯片的并發傳輸來提高系統的整體吞吐率。同時,考慮到閃存有限的擦除次數,盡量分散負載還能起到損耗平衡的作用。此外,RAIDO也是一種很好的I/O并發和平衡的實例。
(4)數據緩存和預取。在存儲系統中,利用數據在空間的局域性和時間的局域性設計緩存機制,是一種常用的提高計算機系統性能的有效方法。利用不同存儲設備在性能和容量之間的差異,使用上層高速存儲設備作為下層低速存儲設備的緩存媒介,達到提升系統性能的目的。同時,在存儲系統的每一層也都大量使用了緩存技術。
(5)合并小數據的訪問。訪問無論大小,往往都需要對請求本身進行處理,對于磁盤存儲系統而言,處理大I/O比處理小I/O能更好的發揮其吞吐率。這種思想在普文件系統調度中使用,如常用的電梯調度算法,調度程序把多個分離的合并成一個大的順序。
事實上,還有其他很多方法可以提高存儲系統的性能,而且這些方法往往是交叉在一起使用。
四、結語
隨著閃存、PCM、SCM等新型存儲介質的出現,未來數據存儲體系中將以多介質混合存儲為主流,這與目前RAM、磁盤、磁帶共存的現象類似。在大數據應用中,將數據集中存儲是不可行的,因為巨大的數據量將導致性能低下。因此,必須建立一種新的層次化的多介質存儲體系,根據數據的不同特性以及不同存儲介質的特性合理地分配數據存儲位置,從而實現海量存儲、高性能以及低能耗的設計目標。endprint