2.3.1 單主機(jī)連接情況下的磁盤陣列存儲(chǔ)系統(tǒng)性能
一般在單主機(jī)連接的情況下,磁盤或磁盤陣列擁有最好的性能。由于目前幾乎所有的操作系統(tǒng)都是基于本身獨(dú)自占有的文件系統(tǒng),即文件系統(tǒng)只能被一個(gè)單一的操作系統(tǒng)所獨(dú)有,所以操作系統(tǒng)或基于操作系統(tǒng)的應(yīng)用軟件可以在對(duì)存儲(chǔ)系統(tǒng)進(jìn)行數(shù)據(jù)讀寫的時(shí)候,針對(duì)磁盤存儲(chǔ)系統(tǒng)的讀寫特點(diǎn),無論操作系統(tǒng)還是應(yīng)用軟件都會(huì)對(duì)讀寫方式做最優(yōu)化處理,以減少磁盤的物理尋道次數(shù),降低磁盤的機(jī)械反應(yīng)時(shí)間。每個(gè)程序進(jìn)程的數(shù)據(jù)請(qǐng)求對(duì)其它的數(shù)據(jù)請(qǐng)求來說是不確定的,但由于操作系統(tǒng)本身的對(duì)數(shù)據(jù)訪問的管理和控制,所有出自該操作系統(tǒng)的數(shù)據(jù)請(qǐng)求都被操作系統(tǒng)做了有序化處理,因此對(duì)于磁盤或磁盤陣列來說,數(shù)據(jù)讀寫請(qǐng)求是被優(yōu)化過的,或者說在經(jīng)過優(yōu)化以后沒有任何變化,這個(gè)時(shí)候存儲(chǔ)系統(tǒng)擁有最佳的性能。
作為磁盤陣列,雖然在操作系統(tǒng)和各個(gè)磁盤驅(qū)動(dòng)器之間增加了一層RAID 控制器,但目前所有的RAID 控制器本身只作為對(duì)磁盤容錯(cuò)的管理和校驗(yàn)的計(jì)算等一些必要的操作,并不對(duì)數(shù)據(jù)請(qǐng)求做合并、重新排序和優(yōu)化處理,因?yàn)樗脑O(shè)計(jì)出發(fā)點(diǎn)是建立在單個(gè)主機(jī)連接的已經(jīng)經(jīng)過操作系統(tǒng)優(yōu)化的和排序的數(shù)據(jù)請(qǐng)求的基礎(chǔ)之上,它所擁有的緩存也只有直接緩存和計(jì)算緩存的功能,不對(duì)數(shù)據(jù)做排隊(duì)處理,只是將主機(jī)端口過來的數(shù)據(jù)按著先進(jìn)先計(jì)算先出的方式通過CPU 計(jì)算校驗(yàn)以后寫入磁盤。緩存的性能雖然非???,但其容量相對(duì)于多媒體數(shù)據(jù)來說并不足夠大,在很快寫滿緩存以后,速度立即衰減到實(shí)際操作磁盤的速度。
所以RAID 控制器的功能只是將許多磁盤組成一個(gè)或多個(gè)大的容錯(cuò)的磁盤,并且利用每個(gè)磁盤上的緩存的緩沖存儲(chǔ)功能提高整體的數(shù)據(jù)讀寫速度,RAID 控制器的讀緩存可以在短時(shí)間內(nèi)再次讀取同一數(shù)據(jù)的情況下明顯提高磁盤陣列的讀性能。整個(gè)磁盤陣列的實(shí)際的最高讀寫速度受到主機(jī)通道帶寬、控制器CPU 的校驗(yàn)計(jì)算和系統(tǒng)控制能力(RAID 引擎)、磁盤通道帶寬和磁盤性能(每個(gè)磁盤有自己的最高性能,這里指多個(gè)磁盤總的實(shí)際性能)中的最低值的限制。另外,操作系統(tǒng)的數(shù)據(jù)請(qǐng)求的優(yōu)化基礎(chǔ)與RAID 格式不匹配,也會(huì)對(duì)磁盤陣列的性能造成很大的影響,如I/O 請(qǐng)求的數(shù)據(jù)塊大小與RAID 的數(shù)據(jù)段大小不匹配等。
2.3.2 多主機(jī)同時(shí)訪問下,傳統(tǒng)磁盤陣列存儲(chǔ)系統(tǒng)的性能變化
首先,分析在視音頻應(yīng)用環(huán)境中來自不同主機(jī)的多個(gè)媒體流對(duì)小規(guī)模磁盤陣列存儲(chǔ)系統(tǒng)性能的影響。
小規(guī)模磁盤陣列存儲(chǔ)系統(tǒng)一般擁有單個(gè)或一對(duì)冗余的磁盤陣列控制器,所能連接的磁盤的數(shù)量較少,具有基本的容錯(cuò)和管理功能,結(jié)構(gòu)相對(duì)簡(jiǎn)單。
在存儲(chǔ)區(qū)域網(wǎng)絡(luò)的多主機(jī)共享存儲(chǔ)環(huán)境中,雖然每臺(tái)主機(jī)對(duì)自己所發(fā)出的數(shù)據(jù)請(qǐng)求做了排序和優(yōu)化,但各個(gè)主機(jī)之間的數(shù)據(jù)流對(duì)共享的存儲(chǔ)系統(tǒng)來說是無序的,導(dǎo)致了更多的磁盤重新尋道次數(shù)、更多的數(shù)據(jù)段頭尾信息和更多的數(shù)據(jù)碎片讀出、合并、校驗(yàn)計(jì)算和再寫入過程。這樣導(dǎo)致存儲(chǔ)的性能比單主機(jī)連接時(shí)下降許多,主機(jī)連接得越多,磁盤系統(tǒng)的性能下降的幅度就越大。
圖2-1 顯示了一個(gè)磁盤陣列在多主機(jī)同時(shí)訪問的環(huán)境中的測(cè)試結(jié)果,多主機(jī)的同時(shí)訪問造成磁盤陣列總性能的衰減。一般情況下,不同磁盤陣列、不同的磁盤陣列設(shè)置和使用不同種類的磁盤驅(qū)動(dòng)器,測(cè)試結(jié)果會(huì)稍有不同,但都不可避免地出現(xiàn)性能明顯衰減的狀況。
圖2-1 在多主機(jī)的數(shù)據(jù)流同時(shí)訪問時(shí)小規(guī)模磁盤陣列總性能的衰減
其次,分析在視音頻應(yīng)用環(huán)境中來自不同主機(jī)的多個(gè)媒體流對(duì)大規(guī)模磁盤陣列存儲(chǔ)系統(tǒng)性能的影響。
所謂大規(guī)模磁盤陣列存儲(chǔ)系統(tǒng),一般是指在一個(gè)存儲(chǔ)系統(tǒng)中使用總線結(jié)構(gòu)或交叉點(diǎn)交換結(jié)構(gòu)將多個(gè)存儲(chǔ)子系統(tǒng)(磁盤陣列)連接起來,并在總線中或交換結(jié)構(gòu)中使用大容量的緩存和用于更多主機(jī)連接的類似于通道集線器或交換機(jī)的主機(jī)連接模塊,最后通過復(fù)雜的存儲(chǔ)管理軟件組合成的大型的存儲(chǔ)系統(tǒng)。這種存儲(chǔ)系統(tǒng)可以提供比單個(gè)小的磁盤陣列更大的容量和更高的性能。象采用總線結(jié)構(gòu)的EMC 的Symmetrix 系統(tǒng)在單個(gè)磁盤陣列的性能只能達(dá)到25 至50M 字節(jié)/秒時(shí),它的最高性能就可以到100M 字節(jié)/秒,甚至在使用RAID10 (磁盤鏡像)時(shí)最高可到200 至300M 字節(jié)/秒。象采用總線結(jié)構(gòu)和交叉點(diǎn)交換結(jié)構(gòu)(最新的系統(tǒng))日立的兩種存儲(chǔ)系統(tǒng),也可以到類似于Symmetrix RAID10 的實(shí)際性能。
一般在這類存儲(chǔ)系統(tǒng)中緩存對(duì)性能都有巨大的貢獻(xiàn),但只有在事務(wù)處理應(yīng)用和類似于郵電計(jì)費(fèi)的應(yīng)用中才起作用。幾十G 字節(jié)的緩存可以存儲(chǔ)數(shù)小時(shí)的事務(wù)處理數(shù)據(jù),系統(tǒng)可以從容地在空閑時(shí)將數(shù)據(jù)寫入磁盤,物理卷的非常小的數(shù)據(jù)段設(shè)置也足以說明這類存儲(chǔ)系統(tǒng)只適合于事務(wù)處理類應(yīng)用。對(duì)于多媒體數(shù)據(jù)來說幾十G 字節(jié)的緩存相當(dāng)于幾十秒或幾分鐘的數(shù)據(jù)量,緩存
寫滿以后將考驗(yàn)系統(tǒng)直接從磁盤上訪問數(shù)據(jù)的能力。而一般的這類系統(tǒng)雖然擁有幾十個(gè)100M 字節(jié)/秒帶寬的光纖通道主機(jī)連接端口,但內(nèi)部集成的多個(gè)磁盤陣列子系統(tǒng)與一般的用于事務(wù)處理的磁盤陣列并沒有什么不同,磁盤陣列子系統(tǒng)的一個(gè)控制器的一個(gè)邏輯單元的性能在只有一個(gè)主機(jī)訪問這個(gè)邏輯單元的情況下可以有25 至50M 字節(jié)左右的實(shí)際性能。在多主機(jī)訪問同一個(gè)邏輯單元的情況下,由于在所有的這些系統(tǒng)中沒有數(shù)據(jù)重新排序和優(yōu)化功能(總線結(jié)構(gòu)和交叉點(diǎn)交換結(jié)構(gòu)決定了這一點(diǎn)),所以同樣會(huì)產(chǎn)生較大的性能影響。
但這種性能衰減與小規(guī)模的磁盤陣列的性能衰減有所不同。由于在這種大規(guī)模磁盤陣列存儲(chǔ)系統(tǒng)內(nèi)部包括了相對(duì)獨(dú)立的多個(gè)磁盤陣列子系統(tǒng)(例如四個(gè)或八個(gè)),每個(gè)磁盤陣列子系統(tǒng)由一對(duì)磁盤控制器組成,在不同的主機(jī)訪問不同的磁盤陣列子系統(tǒng)時(shí)各自的性能不受影響,只受到系統(tǒng)總線帶寬的限制。所以在多主機(jī)的數(shù)據(jù)流訪問平均分布在不同的存儲(chǔ)子系統(tǒng)中時(shí),它的多主機(jī)的支持能力可以是小規(guī)模磁盤陣列系統(tǒng)的幾倍。
在這種大規(guī)模磁盤陣列存儲(chǔ)系統(tǒng)中,一個(gè)邏輯單元只能建立在單個(gè)磁盤子系統(tǒng)中,由于單個(gè)磁盤陣列子系統(tǒng)的內(nèi)部串行結(jié)構(gòu),決定了一個(gè)邏輯單元只能通過一個(gè)串行路徑來提供給用戶,所以大規(guī)模磁盤陣列存儲(chǔ)系統(tǒng)并不能提高單個(gè)邏輯單元的性能。單個(gè)邏輯單元的性能很低,一般只有25 至50M 字節(jié)/秒的實(shí)際性能。但在事務(wù)處理類應(yīng)用中這種結(jié)構(gòu)大大提高了性能,因?yàn)樵谶@類應(yīng)用中可以根據(jù)事務(wù)處理的特點(diǎn),每個(gè)事務(wù)處理數(shù)據(jù)都非常小,但數(shù)量龐大有一定的統(tǒng)計(jì)規(guī)律性,可以利用數(shù)據(jù)庫將同時(shí)到來的事務(wù)處理數(shù)據(jù)分類,將它們盡量平均分布在不同的磁盤子系統(tǒng)中,同時(shí)利用磁盤子系統(tǒng)外部的大容量緩存,可以大大地提高整個(gè)存儲(chǔ)系統(tǒng)的性能。而對(duì)于視音頻數(shù)據(jù)流的應(yīng)用,用戶數(shù)據(jù)訪問的單個(gè)數(shù)據(jù)流一般都很大,但訪問次數(shù)相對(duì)較小,即使有一定的規(guī)律性也有可能發(fā)生對(duì)不同邏輯單元的需求不均衡的現(xiàn)象,這樣極易造成某個(gè)邏輯單元阻塞或性能明顯下降。所以這種大規(guī)模磁盤陣列存儲(chǔ)系統(tǒng)并不適合使用于視音頻和多媒體的應(yīng)用領(lǐng)域。
第三,在視音頻應(yīng)用環(huán)境中來自不同主機(jī)的多個(gè)媒體流對(duì)NAS 存儲(chǔ)系統(tǒng)性能的影響。
NAS 存儲(chǔ)系統(tǒng)是建立在傳統(tǒng)RAID 技術(shù)的基礎(chǔ)上,發(fā)揮單個(gè)主機(jī)連接時(shí)磁盤陣列系統(tǒng)擁有最好的性能的特點(diǎn),使用NFS 和CIFS 協(xié)議將瘦服務(wù)器連接的存儲(chǔ)系統(tǒng)通過以太網(wǎng)共享給外部的用戶。由于瘦服務(wù)器削減了與存儲(chǔ)管理和數(shù)據(jù)通訊無關(guān)的各種功能,優(yōu)化了TCP/IP 協(xié)議的數(shù)據(jù)傳輸能力,同時(shí)使用多個(gè)(目前最多十個(gè))并行的TCP/IP 數(shù)據(jù)傳輸,使單個(gè)NAS 存儲(chǔ)系統(tǒng)的最大共享速度可以達(dá)到60M 字節(jié)/秒左右。
在多主機(jī)連接的環(huán)境中,由于使用的是以太網(wǎng)的連接,來自不同主機(jī)的數(shù)據(jù)進(jìn)入瘦服務(wù)器以后通過瘦服務(wù)器的操作系統(tǒng)或數(shù)據(jù)管理應(yīng)用軟件的管理和重新排序后以最優(yōu)的方式寫入磁盤系統(tǒng),這樣一來磁盤系統(tǒng)本身沒有明顯的性能衰減。這也是NAS 存儲(chǔ)能在目前得到相當(dāng)?shù)陌l(fā)展的一個(gè)主要的原因之一,它的特點(diǎn)使它適合應(yīng)用于需要數(shù)據(jù)共享的應(yīng)用環(huán)境當(dāng)中。
本文版權(quán)歸作者及存儲(chǔ)在線所有,如需轉(zhuǎn)載,請(qǐng)與本站聯(lián)系。