国产亚洲av在线,国产高清,欧美激情,国产精品久久久久7777,国产精品人成在线观看,国产精品永久免费视频

IT之道-艾銻知道

您當(dāng)前位置: 主頁 > 資訊動(dòng)態(tài) > IT知識(shí)庫 >

北京艾銻無限告訴您:存儲(chǔ)性能指標(biāo)---IOPS


2020-02-13 16:48 作者:admin 瀏覽量:
迎戰(zhàn)疫情,艾無限用愛與您同行
中國中小企業(yè)提供免費(fèi)IT外包服務(wù)
 
 
 
這次的肺炎疫情對(duì)中國的中小企業(yè)將會(huì)是沉重的打擊,據(jù)釘釘和微信兩個(gè)辦公平臺(tái)數(shù)據(jù)統(tǒng)計(jì)現(xiàn)有2億左右的人在家遠(yuǎn)程辦公,那么對(duì)于中小企業(yè)的員工來說不懂IT技術(shù)將會(huì)讓他們面臨的最大挑戰(zhàn)和困難。
 
電腦不亮了怎么辦?系統(tǒng)藍(lán)屏如何處理?辦公室的電腦在家如何連接?網(wǎng)絡(luò)應(yīng)該如何設(shè)置?VPN如何搭建?數(shù)據(jù)如何對(duì)接?服務(wù)器如何登錄?數(shù)據(jù)安全如何保證?數(shù)據(jù)如何存儲(chǔ)?視頻會(huì)議如何搭建?業(yè)務(wù)系統(tǒng)如何開啟等等一系列的問題,都會(huì)困擾著并非技術(shù)出身的您。
 
 
好消息是當(dāng)您看到這篇文章的時(shí)候,就不用再為上述的問題而苦惱,您只需撥打艾銻無限的全國免費(fèi)熱線電話:400 650 7820,就會(huì)有我們的遠(yuǎn)程工程師為您解決遇到的問題,他們可以遠(yuǎn)程幫您處理遇到的一些IT技術(shù)難題。
 
如遇到免費(fèi)熱線占線,您還可以撥打我們的24小時(shí)值班經(jīng)理電話:15601064618或技術(shù)經(jīng)理的電話:13041036957,我們會(huì)在第一時(shí)間接聽您的來電,為您提供適合的解決方案,讓您無論在家還是在企業(yè)都能無憂辦公。
 
那艾銻無限具體能為您的企業(yè)提供哪些服務(wù)呢?
艾銻無限始創(chuàng)于2005年,歷經(jīng)15年服務(wù)了5000多家中小企業(yè)并保障了幾十萬臺(tái)設(shè)備的正常運(yùn)轉(zhuǎn),積累了豐富的企業(yè)IT緊急問題和特殊故障的解決經(jīng)驗(yàn),制定了相對(duì)應(yīng)的解決方案。我們?yōu)槟钠髽I(yè)提供的IT服務(wù)分為三大版塊:
 
第一版塊是保障性IT外包服務(wù):如電腦設(shè)備運(yùn)維,辦公設(shè)備運(yùn)維,網(wǎng)絡(luò)設(shè)備運(yùn)維,服務(wù)器運(yùn)維等綜合性企業(yè)IT設(shè)備運(yùn)維服務(wù)。
 
第二版塊是功能性互聯(lián)網(wǎng)外包服務(wù):如網(wǎng)站開發(fā)外包,小程序開發(fā)外包,APP開發(fā)外包,電商平臺(tái)開發(fā)外包,業(yè)務(wù)系統(tǒng)的開發(fā)外包和后期的運(yùn)維外包服務(wù)。
 
第三版塊是增值性云服務(wù)外包:如企業(yè)郵箱上云,企業(yè)網(wǎng)站上云,企業(yè)存儲(chǔ)上云,企業(yè)APP小程序上云,企業(yè)業(yè)務(wù)系統(tǒng)上云,阿里云產(chǎn)品等后續(xù)的云運(yùn)維外包服務(wù)。
 
您要了解更多服務(wù)也可以登錄艾銻無限的官網(wǎng):www.bjitwx.com查看詳細(xì)說明,疫情期間,您企業(yè)遇到的任何困境只要找到艾銻無限,能免費(fèi)為您提供服務(wù)的我們絕不收一分錢,我們?nèi)w艾銻人承諾此活動(dòng)直到中國疫情結(jié)束,我們將這次活動(dòng)稱為——春雷行動(dòng)
 
以下還有我們?yōu)槟峁┑囊恍┘夹g(shù)資訊,以便可以幫助您更好的了解相關(guān)的IT知識(shí),幫您渡過疫情中辦公遇到的困難和挑戰(zhàn),艾銻無限愿和中國中小企業(yè)一起共進(jìn)退,因?yàn)槲覀兿嘈湃f物同體,能量合一,只要我們一起齊心協(xié)力,一定會(huì)成功。再一次祝福您和您的企業(yè),戰(zhàn)勝疫情,您和您的企業(yè)一定行。
 
北京艾銻無限告訴您:存儲(chǔ)性能指標(biāo)---IOPS
 
一、磁盤 I/O 的概念
I/O 的概念,從字義來理解就是輸入輸出。操作系統(tǒng)從上層到底層,各個(gè)層次之間均存在 I/O。比如,CPU 有 I/O,內(nèi)存有 I/O, VMM 有 I/O, 底層磁盤上也有 I/O,這是廣義上的 I/O。通常來講,一個(gè)上層的 I/O 可能會(huì)產(chǎn)生針對(duì)磁盤的多個(gè) I/O,也就是說,上層的 I/O 是稀疏的,下層的 I/O 是密集的。
磁盤的 I/O,顧名思義就是磁盤的輸入輸出。輸入指的是對(duì)磁盤寫入數(shù)據(jù),輸出指的是從磁盤讀出數(shù)據(jù)。我們常見的磁盤類型有 ATA、SATA、FC、SCSI、SAS,如圖1所示。這幾種磁盤中,服務(wù)器常用的是 SAS 和 FC 磁盤,一些高端存儲(chǔ)也使用 SSD 盤。每一種磁盤的性能是不一樣的。
圖 1. 物理磁盤的架構(gòu)以及常見磁盤類型
二、性能評(píng)價(jià)指標(biāo)
SAN(Storage Area Network, 存儲(chǔ)區(qū)域網(wǎng)絡(luò))和NAS存儲(chǔ)(Network Attached Storage,網(wǎng)絡(luò)附加存儲(chǔ))一般都具備2個(gè)評(píng)價(jià)指標(biāo):IOPS和帶寬(throughput),兩個(gè)指標(biāo)互相獨(dú)立又相互關(guān)聯(lián)。體現(xiàn)存儲(chǔ)系統(tǒng)性能的最主要指標(biāo)是IOPS。下面,將介紹一下這兩個(gè)參數(shù)的含義。
IOPS (Input/Output Per Second)即每秒的輸入輸出量(或讀寫次數(shù)),是衡量磁盤性能的主要指標(biāo)之一。IOPS是指單位時(shí)間內(nèi)系統(tǒng)能處理的I/O請求數(shù)量,I/O請求通常為讀或?qū)憯?shù)據(jù)操作請求。隨機(jī)讀寫頻繁的應(yīng)用,如OLTP(Online Transaction Processing),IOPS是關(guān)鍵衡量指標(biāo)。另一個(gè)重要指標(biāo)是數(shù)據(jù)吞吐量(Throughput),指單位時(shí)間內(nèi)可以成功傳輸?shù)臄?shù)據(jù)數(shù)量。對(duì)于大量順序讀寫的應(yīng)用,如VOD(Video On Demand),則更關(guān)注吞吐量指標(biāo)。
簡而言之:
 
磁盤的 IOPS,也就是在一秒內(nèi),磁盤進(jìn)行多少次 I/O 讀寫。
磁盤的吞吐量,也就是每秒磁盤 I/O 的流量,即磁盤寫入加上讀出的數(shù)據(jù)的大小。
IOPS 與吞吐量的關(guān)系
每秒 I/O 吞吐量= IOPS* 平均 I/O SIZE。從公式可以看出: I/O SIZE 越大,IOPS 越高,那么每秒 I/O 的吞吐量就越高。因此,我們會(huì)認(rèn)為 IOPS 和吞吐量的數(shù)值越高越好。實(shí)際上,對(duì)于一個(gè)磁盤來講,這兩個(gè)參數(shù)均有其最大值,而且這兩個(gè)參數(shù)也存在著一定的關(guān)系。
IOPS可細(xì)分為如下幾個(gè)指標(biāo):
1. Toatal IOPS,混合讀寫和順序隨機(jī)I/O負(fù)載情況下的磁盤IOPS,這個(gè)與實(shí)際I/O情況最為相符,大多數(shù)應(yīng)用關(guān)注此指標(biāo)。
2. Random Read IOPS,100%隨機(jī)讀負(fù)載情況下的IOPS。
3. Random Write IOPS,100%隨機(jī)寫負(fù)載情況下的IOPS。
4. Sequential Read IOPS,100%順序讀負(fù)載情況下的IOPS。
5. Sequential Write IOPS,100%順序?qū)懾?fù)載情況下的IOPS。
下圖為一個(gè)典型的NFS測試結(jié)果:
IOPS的測試benchmark工具主要有Iometer, IoZone, FIO等,可以綜合用于測試磁盤在不同情形下的IOPS。對(duì)于應(yīng)用系統(tǒng),需要首先確定數(shù)據(jù)的負(fù)載特征,然后選擇合理的IOPS指標(biāo)進(jìn)行測量和對(duì)比分析,據(jù)此選擇合適的存儲(chǔ)介質(zhì)和軟件系統(tǒng)。
 
IOPS計(jì)算公式
對(duì)于磁盤來說一個(gè)完整的IO操作是這樣進(jìn)行的:當(dāng)控制器對(duì)磁盤發(fā)出一個(gè)IO操作命令的時(shí)候,磁盤的驅(qū)動(dòng)臂(Actuator Arm)帶讀寫磁頭(Head)離開著陸區(qū)(Landing Zone,位于內(nèi)圈沒有數(shù)據(jù)的區(qū)域),移動(dòng)到要操作的初始數(shù)據(jù)塊所在的磁道(Track)的正上方,這個(gè)過程被稱為尋址(Seeking),對(duì)應(yīng)消耗的時(shí)間被稱為尋址時(shí)間(Seek Time);但是找到對(duì)應(yīng)磁道還不能馬上讀取數(shù)據(jù),這時(shí)候磁頭要等到磁盤盤片(Platter)旋轉(zhuǎn)到初始數(shù)據(jù)塊所在的扇區(qū)(Sector)落在讀寫磁頭正上方的之后才能開始讀取數(shù)據(jù),在這個(gè)等待盤片旋轉(zhuǎn)到可操作扇區(qū)的過程中消耗的時(shí)間稱為旋轉(zhuǎn)延時(shí)(Rotational Delay);接下來就隨著盤片的旋轉(zhuǎn),磁頭不斷的讀/寫相應(yīng)的數(shù)據(jù)塊,直到完成這次IO所需要操作的全部數(shù)據(jù),這個(gè)過程稱為數(shù)據(jù)傳送(Data Transfer),對(duì)應(yīng)的時(shí)間稱為傳送時(shí)間(Transfer Time)。完成這三個(gè)步驟之后一次IO操作也就完成了。
在我們看硬盤廠商的宣傳單的時(shí)候我們經(jīng)常能看到3個(gè)參數(shù),分別是平均尋址時(shí)間、盤片旋轉(zhuǎn)速度以及最大傳送速度,這三個(gè)參數(shù)就可以提供給我們計(jì)算上述三個(gè)步驟的時(shí)間。
第一個(gè)尋址時(shí)間,考慮到被讀寫的數(shù)據(jù)可能在磁盤的任意一個(gè)磁道,既有可能在磁盤的最內(nèi)圈(尋址時(shí)間最短),也可能在磁盤的最外圈(尋址時(shí)間最長),所以在計(jì)算中我們只考慮平均尋址時(shí)間,也就是磁盤參數(shù)中標(biāo)明的那個(gè)平均尋址時(shí)間,這里就采用當(dāng)前最多的10krmp硬盤的5ms。
第二個(gè)旋轉(zhuǎn)延時(shí),和尋址一樣,當(dāng)磁頭定位到磁道之后有可能正好在要讀寫扇區(qū)之上,這時(shí)候是不需要額外額延時(shí)就可以立刻讀寫到數(shù)據(jù),但是最壞的情況確實(shí)要磁盤旋轉(zhuǎn)整整一圈之后磁頭才能讀取到數(shù)據(jù),所以這里我們也考慮的是平均旋轉(zhuǎn)延時(shí),對(duì)于10krpm的磁盤就是(60s/10k)*(1/2) = 2ms。
第三個(gè)傳送時(shí)間,磁盤參數(shù)提供我們的最大的傳輸速度,當(dāng)然要達(dá)到這種速度是很有難度的,但是這個(gè)速度卻是磁盤純讀寫磁盤的速度,因此只要給定了單次 IO的大小,我們就知道磁盤需要花費(fèi)多少時(shí)間在數(shù)據(jù)傳送上,這個(gè)時(shí)間就是IO Chunk Size / Max Transfer Rate。
現(xiàn)在我們就可以得出這樣的計(jì)算單次IO時(shí)間的公式。
  IO Time = Seek Time + 60 sec/Rotational Speed/2 + IO Chunk Size/Transfer Rate
于是我們可以這樣計(jì)算出IOPS。
  IOPS = 1/IO Time = 1/(Seek Time + 60 sec/Rotational Speed/2 + IO Chunk Size/Transfer Rate)
對(duì)于給定不同的IO大小我們可以得出下面的一系列的數(shù)據(jù)
  4K (1/7.1 ms = 140 IOPS)
  5ms + (60sec/15000RPM/2) + 4K/40MB = 5 + 2 + 0.1 = 7.1
  8k (1/7.2 ms = 139 IOPS)
  5ms + (60sec/15000RPM/2) + 8K/40MB = 5 + 2 + 0.2 = 7.2
  16K (1/7.4 ms = 135 IOPS)
  5ms + (60sec/15000RPM/2) + 16K/40MB = 5 + 2 + 0.4 = 7.4
  32K (1/7.8 ms = 128 IOPS)
  5ms + (60sec/15000RPM/2) + 32K/40MB = 5 + 2 + 0.8 = 7.8
  64K (1/8.6 ms = 116 IOPS)
  5ms + (60sec/15000RPM/2) + 64K/40MB = 5 + 2 + 1.6 = 8.6
從上面的數(shù)據(jù)可以看出,當(dāng)單次IO越小的時(shí)候,單次IO所耗費(fèi)的時(shí)間也越少,相應(yīng)的IOPS也就越大。
上面我們的數(shù)據(jù)都是在一個(gè)比較理想的假設(shè)下得出來的,這里的理想的情況就是磁盤要花費(fèi)平均大小的尋址時(shí)間和平均的旋轉(zhuǎn)延時(shí),這個(gè)假設(shè)其實(shí)是比較符合我們實(shí)際情況中的隨機(jī)讀寫,在隨機(jī)讀寫中,每次IO操作的尋址時(shí)間和旋轉(zhuǎn)延時(shí)都不能忽略不計(jì),有了這兩個(gè)時(shí)間的存在也就限制了IOPS的大小?,F(xiàn)在我們考慮一種相對(duì)極端的順序讀寫操作,比如說在讀取一個(gè)很大的存儲(chǔ)連續(xù)分布在磁盤的的文件,因?yàn)槲募拇鎯?chǔ)的分布是連續(xù)的,磁頭在完成一個(gè)讀IO操作之后,不需要從新的尋址,也不需要旋轉(zhuǎn)延時(shí),在這種情況下我們能到一個(gè)很大的IOPS值,如下。
  4K (1/0.1 ms = 10000 IOPS)
  0ms + 0ms + 4K/40MB = 0.1
  8k (1/0.2 ms = 5000 IOPS)
  0ms + 0ms + 8K/40MB = 0.2
  16K (1/0.4 ms = 2500 IOPS)
  0ms + 0ms + 16K/40MB = 0.4
  32K (1/0.8 ms = 1250 IOPS)
  0ms + 0ms + 32K/40MB = 0.8
  64K (1/1.6 ms = 625 IOPS)
  0ms + 0ms + 64K/40MB = 1.6
相比第一組數(shù)據(jù)來說差距是非常的大的,因此當(dāng)我們要用IOPS來衡量一個(gè)IO系統(tǒng)的系能的時(shí)候我們一定要說清楚是在什么情況的IOPS,也就是要說明讀寫的方式以及單次IO的大小,當(dāng)然在實(shí)際當(dāng)中,特別是在OLTP的系統(tǒng)的,隨機(jī)的小IO的讀寫是最有說服力的。
另外,對(duì)于同一個(gè)磁盤(或者 LUN),隨著每次 I/O 讀寫數(shù)據(jù)的大小不通,IOPS 的數(shù)值也不是固定不變的。例如,每次 I/O 寫入或者讀出的都是連續(xù)的大數(shù)據(jù)塊,此時(shí) IOPS 相對(duì)會(huì)低一些;在不頻繁換道的情況下,每次寫入或者讀出的數(shù)據(jù)塊小,相對(duì)來講 IOPS 就會(huì)高一些。也就是說,IOPS 也取決與I/O塊的大小,采用不同I/O塊的大小測出的IOPS值是不同的。 對(duì)一個(gè)具體的IOPS, 可以了解它當(dāng)時(shí)測試的I/O塊的尺寸。并且IOPS都具有極限值,表1列出了各種磁盤的 IOPS 極限值。
表 1. 常見磁盤類型及其 IOPS
 
 
三、I/O 讀寫的類型
大體上講,I/O 的類型可以分為:讀 / 寫 I/O、大 / 小塊 I/O、連續(xù) / 隨機(jī) I/O, 順序 / 并發(fā) I/O。在這幾種類型中,我們主要討論一下:大 / 小塊 I/O、連續(xù) / 隨機(jī) I/O, 順序 / 并發(fā) I/O。
大 / 小塊 I/O
這個(gè)數(shù)值指的是控制器指令中給出的連續(xù)讀出扇區(qū)數(shù)目的多少。如果數(shù)目較多,如 64,128 等,我們可以認(rèn)為是大塊 I/O;反之,如果很小,比如 4,8,我們就會(huì)認(rèn)為是小塊 I/O,實(shí)際上,在大塊和小塊 I/O 之間,沒有明確的界限。
連續(xù) / 隨機(jī) I/O
連續(xù) I/O 指的是本次 I/O 給出的初始扇區(qū)地址和上一次 I/O 的結(jié)束扇區(qū)地址是完全連續(xù)或者相隔不多的。反之,如果相差很大,則算作一次隨機(jī) I/O
連續(xù) I/O 比隨機(jī) I/O 效率高的原因是:在做連續(xù) I/O 的時(shí)候,磁頭幾乎不用換道,或者換道的時(shí)間很短;而對(duì)于隨機(jī) I/O,如果這個(gè) I/O 很多的話,會(huì)導(dǎo)致磁頭不停地?fù)Q道,造成效率的極大降低。
順序 / 并發(fā) I/O
從概念上講,并發(fā) I/O 就是指向一塊磁盤發(fā)出一條 I/O 指令后,不必等待它回應(yīng),接著向另外一塊磁盤發(fā) I/O 指令。對(duì)于具有條帶性的 RAID(LUN),對(duì)其進(jìn)行的 I/O 操作是并發(fā)的,例如:raid 0+1(1+0),raid5 等。反之則為順序 I/O。
 
四、磁盤 I/O 性能的監(jiān)控
監(jiān)控磁盤的 I/O 性能,我們可以使用 AIX 的系統(tǒng)命令,例如:sar -d, iostat, topas, nmon 等。下面,我將以 nmon 和 topas 為例,講述在系統(tǒng)中如何觀察磁盤 I/O 的性能。
topas
登錄 AIX 操作系統(tǒng),輸入 topas,然后按 D,會(huì)出現(xiàn)如下界面:
 
在上圖中,TPS 即為磁盤的 IOPS,KBPS 即為磁盤每秒的吞吐量。由于服務(wù)器處于空閑的狀態(tài),我們可以看到 IOPS,KBPS 的數(shù)據(jù)都非常低。
我們使用 dd if 命令向磁盤 hdisk2 發(fā)讀 I/O,block 大小為 1MB:
 
利用 topas 進(jìn)行監(jiān)控:
 
此時(shí),hdisk2 的吞吐量為 163.9M,IOPS 為 655。
我們再啟動(dòng)一個(gè) dd if,使 hdisk 的 busy 數(shù)值達(dá)到 100%:
從上圖可以看出,在磁盤 busy 達(dá)到 100% 的時(shí)候,其吞吐量為 304.1M,IOPS 為 1200。
hdisk2 是本地集成的 SAS 盤,我們可以查出本地集成 SAS 通道的帶寬為 3Gb:
對(duì)于 3Gb 的 SAS 通道,304.1M 的磁盤吞吐量已經(jīng)接近其 I/O 帶寬的峰值了。
需要指出的是,使用 dd if 測量磁盤的帶寬是可行的,但是由此來確定業(yè)務(wù) I/O 的 IOPS 和吞吐量是不科學(xué)的。因?yàn)?,dd if 所發(fā)起的讀寫僅為順序 I/O 讀寫,在 OLTP 的業(yè)務(wù)中,這種讀寫是不常見的,而是隨機(jī)小 I/O 比較多,因此,測量業(yè)務(wù)的磁盤 I/O 性能,需要在運(yùn)行業(yè)務(wù)的時(shí)候進(jìn)行監(jiān)控。
nmon
在系統(tǒng)中輸入 nmon,按 d,可以得到如下界面 :
可以得到此時(shí)磁盤 hdisk2 吞吐量為 318M。
使用 nmon 收集一個(gè)時(shí)間段的數(shù)據(jù),然后使用 nmon analyzer 進(jìn)行分析,可以得出更為直接的圖表:
將收集好的 nmon 文件使用 nmon analyzer 進(jìn)行分析,得出如下報(bào)表:
圖 2.nmon 圖表顯示磁盤性能
五、磁盤 I/O 性能調(diào)優(yōu)
確認(rèn)磁盤 I/O 存在性能問題
對(duì)于隨機(jī)負(fù)載,當(dāng)遇到余下情況時(shí),我們那通常認(rèn)為存在 I/O 性能問題:
1. 平均讀時(shí)間大于 15ms
2. 在具有寫 cache 的條件下,平均寫時(shí)間大于 2.5ms
對(duì)于順序負(fù)載,當(dāng)遇到余下情況時(shí),我們那通常認(rèn)為存在 I/O 性能問題:
1. 在一個(gè)磁盤上有兩個(gè)連續(xù)的 I/O 流
2. 吞吐量不足(即遠(yuǎn)遠(yuǎn)小于磁盤 I/O 帶寬)
對(duì)于一塊磁盤來講,隨著 IOPS 數(shù)量的增加,I/O service 也會(huì)增加,并且會(huì)有一個(gè)飽和點(diǎn),即 IOPS 達(dá)到某個(gè)點(diǎn)以后,IOPS 再增加將會(huì)引起 I/O service time 的顯著增加。
圖 3. 磁盤 IOPS 與 IO service time 關(guān)系圖
從經(jīng)驗(yàn)上講,我們在測試工作中,我們主要關(guān)注 IOPS 和吞吐量以及磁盤的 busy% 這三個(gè)數(shù)值。如果 IOPS 和吞吐量均很低,磁盤的 busy% 也很低,我們會(huì)認(rèn)為磁盤壓力過小,造成吞吐量和 IOPS 過低;只有在 IOPS 和吞吐量均很低,磁盤的 busy% 很高(接近 100%)的時(shí)候,我們才會(huì)從磁盤 I/O 方面分析 I/O 性能
 

相關(guān)文章

IT外包服務(wù)
二維碼 關(guān)閉