這篇文章將為大家詳細(xì)講解有關(guān)組RAID時的條帶寬度及條帶深度是什么,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關(guān)知識有一定的了解。
松溪網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)建站!從網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、成都響應(yīng)式網(wǎng)站建設(shè)等網(wǎng)站項目制作,到程序開發(fā),運營維護(hù)。創(chuàng)新互聯(lián)建站于2013年開始到現(xiàn)在10年的時間,我們擁有了豐富的建站經(jīng)驗和運維經(jīng)驗,來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)建站。
以前一直為RAID到底應(yīng)該如何組織數(shù)據(jù)的物理存儲結(jié)構(gòu)而疑惑。
現(xiàn)在終于知道,一般情況下用RAID5即可,少數(shù)要求高的上RAID10。
不過,在看書的時候,發(fā)現(xiàn)對于條帶的解釋不太清楚。度娘了一下,這貼出來給大家分享。
條帶(strip)是把連續(xù)的數(shù)據(jù)分割成相同大小的數(shù)據(jù)塊,把每段數(shù)據(jù)分別寫入到陣列中的不同磁盤上的方法。簡單的說,條帶是一種將多個磁盤驅(qū)動器合并為一個卷的方法。 許多情況下,這是通過硬件控制器來完成的。
當(dāng)多個進(jìn)程同時訪問一個磁盤時,可能會出現(xiàn)磁盤沖突。大多數(shù)磁盤系統(tǒng)都對訪問次數(shù)(每秒的 I/O 操作,IOPS)和數(shù)據(jù)傳輸率(每秒傳輸?shù)臄?shù)據(jù)量,TPS)有限制。當(dāng)達(dá)到這些限制時,后面需要訪問磁盤的進(jìn)程就需要等待,這時就是所謂的磁盤沖突。避免磁盤沖突是優(yōu)化 I/O 性能的一個重要目標(biāo),而 I/O 性能的優(yōu)化與其他資源(如CPU和內(nèi)存)的優(yōu)化有著很大的區(qū)別 ,I/O 優(yōu)化最有效的手段是將 I/O 最大限度的進(jìn)行平衡。
條帶化技術(shù)就是一種自動的將 I/O 的負(fù)載均衡到多個物理磁盤上的技術(shù),條帶化技術(shù)就是將一塊連續(xù)的數(shù)據(jù)分成很多小部分并把他們分別存儲到不同磁盤上去。這就能使多個進(jìn)程同時訪問數(shù)據(jù)的多個不同部分而不會造成磁盤沖突,而且在需要對這種數(shù)據(jù)進(jìn)行順序訪問的時候可以獲得最大程度上的 I/O 并行能力,從而獲得非常好的性能。由于條帶化在 I/O 性能問題上的優(yōu)越表現(xiàn),以致于在應(yīng)用系統(tǒng)所在的計算環(huán)境中的多個層次或平臺都涉及到了條帶化的技術(shù),如操作系統(tǒng)和存儲系統(tǒng)這兩個層次中都可能使用條帶化技術(shù)。
條帶化后,條帶卷所能提供的速度比單個盤所能提供的速度要快很多,由于現(xiàn)在存儲技術(shù)成熟,大多數(shù)系統(tǒng)都采用條帶化來實現(xiàn)系統(tǒng)的I/O負(fù)載分擔(dān),如果OS有LVM軟件或者硬件條帶設(shè)備,決定因素是條帶深度(stripe depth)和條帶寬度(stripe width)。
條帶深度:指的是條帶的大小,也叫條帶大小。有時也被叫做block size, chunk size, stripe length 或者 granularity。這個參數(shù)指的是寫在每塊磁盤上的條帶數(shù)據(jù)塊的大小。RAID的數(shù)據(jù)塊大小一般在2KB到512KB之間(或者更大),其數(shù)值是2的次方,即2KB,4KB,8KB,16KB這樣。
條帶大小對性能的影響比條帶寬度難以量化的多。
減小條帶大小: 由于條帶大小減小了,則文件被分成了更多個,更小的數(shù)據(jù)塊。這些數(shù)據(jù)塊會被分散到更多的硬盤上存儲,因此提高了傳輸?shù)男阅?,但是由于要多次尋找不同的?shù)據(jù)塊,磁盤定位的性能就下降了。
增加條帶大小: 與減小條帶大小相反,會降低傳輸性能,提高定位性能。
根據(jù)上邊的論述,我們會發(fā)現(xiàn)根據(jù)不同的應(yīng)用類型,不同的性能需求,不同驅(qū)動器的不同特點(如SSD硬盤),不存在一個普遍適用的"最佳條帶大小"。所以這也是存儲廠家,文件系統(tǒng)編寫者允許我們自己定義條帶大小的原因。
條帶寬度:是指同時可以并發(fā)讀或?qū)懙臈l帶數(shù)量。這個數(shù)量等于RAID中的物理硬盤數(shù)量。例如一個經(jīng)過條帶化的,具有4塊物理硬盤的陣列的條帶寬度就是4。增加條帶寬度,可以增加陣列的讀寫性能。道理很明顯,增加更多的硬盤,也就增加了可以同時并發(fā)讀或?qū)懙臈l帶數(shù)量。在其他條件一樣的前提下,一個由8塊18G硬盤組成的陣列相比一個由4塊36G硬盤組成的陣列具有更高的傳輸性能。
在操作系統(tǒng)的層次中,我們可以使用軟件條帶(如 LVM 中 LV 的條帶來實現(xiàn)條帶化技術(shù))或硬件條帶(如各種 RAID)。在存儲系統(tǒng)層次中,目前市場上絕大部分產(chǎn)品都提供了各種各樣的條帶技術(shù)(如各種 RAID)。
條帶化的設(shè)置
當(dāng)使用 LVM 或者硬件條帶化時,決定條帶化效果的因素是條帶深度(stripe depth)和條帶寬度(stripe width):
條帶深度指的是條帶塊的大小,也叫條帶單元;
條帶寬度指的是條帶深度的產(chǎn)量或者一個條帶分布的驅(qū)動數(shù);
需要根據(jù)系統(tǒng)的 I/O 要求來合理的選擇這些設(shè)置。對于數(shù)據(jù)庫系統(tǒng)來說,比較合理的條帶深度是從 256K 到 1M 。下面分析一下條帶深度和條帶寬度的影響因素。
條帶深度
為了提高 I/O 效率,一次邏輯 I/O 請求轉(zhuǎn)化成物理 I/O 請求后,應(yīng)該讓這些物理 I/O 分布到最多的物理磁盤上去,也就是每個物理磁盤處理的物理 I/O 最少,最好只有一次 , 因而影響條帶的一個重要因素就是一次邏輯 I/O 請求的大小。
此外,系統(tǒng)中 I/O 的并發(fā)度不同我們對條帶的配置要求也不同。例如,在高并發(fā)度且邏輯 I/O 請求的大小都比較小的情況下,我們希望一塊磁盤能同時響應(yīng)多個 I/O 請求;而在那些存在大的邏輯 I/O 請求的低并發(fā)度系統(tǒng)中,我們可能就需要多塊磁盤同時響應(yīng)一個 I/O 請求。無論是一個磁盤還是多個磁盤響應(yīng) I/O 請求,我們的一個原則是讓一次邏輯 I/O 能被物理設(shè)備一次處理完成。
條帶寬度
正如我們前面所述,無論是一個還是多個磁盤響應(yīng)一個邏輯 I/O,我們都希望物理設(shè)備只處理一次 I/O 。因而在確定了條帶深度的基礎(chǔ)上,我們需要保證條帶寬度 >= I/O 請求的大小 / 條帶深度。這樣就能最大程度的保證 I/O 請求的并發(fā)處理能力了。
此外,考慮到以后系統(tǒng)容量的擴(kuò)充,我們也需要規(guī)劃好條帶寬度。
在 DB2 中合理規(guī)劃和設(shè)置條帶相關(guān)參數(shù)
下面先看下影響 I/O 性能 DB2 數(shù)據(jù)庫的相關(guān)參數(shù):
頁大?。╬age size):DB2 中的數(shù)據(jù)頁大小,也決定了 DB2 一次單個 I/O 請求中的數(shù)據(jù)塊的大??;
預(yù)讀大小(prefetch size):在預(yù)取讀時,一次讀取數(shù)據(jù)塊的數(shù)量不能大于操作系統(tǒng)的最大 I/O 大?。╫racle 中是參數(shù) block size);
排序堆(sortheap)和排序堆閾值(sheapthres) :內(nèi)存中 sort 區(qū)域的大小,也決定了并發(fā)排序操作時的 I/O 大?。?/p>
其中,前面兩個是最關(guān)鍵的兩個參數(shù)。
DB2 的數(shù)據(jù)頁大小是在創(chuàng)建數(shù)據(jù)庫的時候指定的,并且不能被動態(tài)的修改。它決定了在 DB2 中所有的表空間默認(rèn)的頁大小。但是我們在創(chuàng)建每個表空間的時候還可以根據(jù)數(shù)據(jù)存儲的需要單獨指定頁的大小。
在 OLTP 系統(tǒng)中,會存在大量小的并發(fā)的 I/O 請求。這時就需要考慮選擇比較大的條帶深度。使條帶深度大于 I/O 大小就稱為粗粒度條帶(Coarse Grain Striping)。在高并行度系統(tǒng)中,條帶深度為(n * page size),其中 n 為大于 1 的整數(shù)。通過粗粒度條帶能實現(xiàn)最大的 I/O 吞吐量(一次物理 I/O 可以同時響應(yīng)多個并發(fā)的邏輯 I/O)。大的條帶深度能夠使像全表掃描那樣的預(yù)取讀操作由一個磁盤驅(qū)動來響應(yīng),并提高預(yù)取讀操作的性能。在 OLTP 系統(tǒng)中,為了避免一個邏輯 I/O 請求被多個物理 I/O 操作完成,條帶深度就需要設(shè)置為兩倍或者兩倍以上于 DB2 頁大小。例如,如果條帶深度是物理 I/O 大小的 N 倍,對于大量并發(fā) I/O 請求,我們可以保證最少有(N-1)/ N 的請求是由一塊磁盤來完成。
在低并發(fā)度的 DSS 系統(tǒng)中,由于 I/O 請求一般是序列化的,為了避免出現(xiàn) I/O 集中的熱點磁盤,我們需要避免邏輯 I/O 只有一塊磁盤處理。這時粗粒度條帶就不適合了。我們應(yīng)該選擇小的條帶深度,使一個邏輯 I/O 分布到多個磁盤上,從而實現(xiàn) I/O 的負(fù)載均衡。這就叫細(xì)粒度條帶。條帶深度的大小必須為(n * page size),其中 n 為小于預(yù)取參數(shù)(prefetch size)大小的整數(shù)。
預(yù)取大小也是對條帶化有影響的一個重要參數(shù),它決定了 DB2 異步 I/O 的基本單位。首先我們要知道 DB2 的預(yù)?。╬refetching)I/O 機(jī)制,在數(shù)據(jù)庫普遍存在著大量、連續(xù)的 I/O 時候,預(yù)取可以極大的提高數(shù)據(jù)庫數(shù)據(jù)讀取的 I/O 性能(例如 DSS 系統(tǒng))。
關(guān)于組RAID時的條帶寬度及條帶深度是什么就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
網(wǎng)頁名稱:組RAID時的條帶寬度及條帶深度是什么
分享路徑:http://www.rwnh.cn/article24/jsdpce.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供搜索引擎優(yōu)化、外貿(mào)網(wǎng)站建設(shè)、面包屑導(dǎo)航、軟件開發(fā)、網(wǎng)頁設(shè)計公司、網(wǎng)站排名
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)