劉 波
(中國(guó)鐵道出版社,北京 100054)
眾所周知,數(shù)據(jù)庫(kù)系統(tǒng)往往是許多計(jì)算機(jī)應(yīng)用系統(tǒng)的重要支撐,對(duì)于交易采購(gòu)、企業(yè)資源計(jì)劃(ERP)等結(jié)構(gòu)化數(shù)據(jù)類型應(yīng)用講,數(shù)據(jù)庫(kù)的訪問(wèn)性能往往構(gòu)成了整個(gè)系統(tǒng)中較難解決的性能瓶頸,因此,數(shù)據(jù)庫(kù)性能的提高將會(huì)顯著提高整個(gè)系統(tǒng)的處理能力。
提高數(shù)據(jù)庫(kù)的訪問(wèn)性能一般是從硬件與軟件2個(gè)方面進(jìn)行,硬件方面?zhèn)戎赜诒M量提供足夠高的傳輸率,包括連續(xù)傳輸率和隨機(jī)傳輸率,軟件方面則側(cè)重于盡量充分利用給定的傳輸率。隨著數(shù)據(jù)存儲(chǔ)技術(shù)的不斷發(fā)展,以flash芯片為存儲(chǔ)介質(zhì)的固態(tài)盤(pán)數(shù)據(jù)存儲(chǔ)技術(shù)應(yīng)用,逐漸由消費(fèi)領(lǐng)域深入到企業(yè)級(jí)應(yīng)用。本文通過(guò)對(duì)某型PCIe接口固態(tài)硬盤(pán)與傳統(tǒng)磁盤(pán)存儲(chǔ)陣列(RAID)進(jìn)行的對(duì)比試驗(yàn),提出了使用PCIe接口固態(tài)硬盤(pán)作為存儲(chǔ)介質(zhì),提高SQLServer數(shù)據(jù)庫(kù)性能的一種技術(shù)途徑。
硬件:DELL R900服務(wù)器;Intel Xeon E73204顆CPU,主頻2.13 GHz,內(nèi)存64 GB,4個(gè)8倍速PCIe接口;
軟件:W indows2008 Server 64 bit操作系統(tǒng),SQL Server2008 64 bit數(shù)據(jù)庫(kù)。
分別對(duì)1塊插入8倍速PCIe接口的PCIe固態(tài)硬盤(pán)及由5塊光纖接口硬盤(pán)RA ID5模式構(gòu)成的4 GB 光纖通道EM C CX 3-20存儲(chǔ)陣列進(jìn)行性能對(duì)比試驗(yàn)。
使用CrystalDiskM ark3_64 bit軟件,分別試驗(yàn)連續(xù)讀寫(xiě)、隨機(jī)讀寫(xiě),2種模式下的傳輸率,試驗(yàn)5次,取平均值,并推算出每秒進(jìn)行讀寫(xiě)操作的次數(shù)(IOPS),另選擇了HD_Tune_Pro試驗(yàn)軟件進(jìn)行參考對(duì)比,以排除試驗(yàn)軟件誤差。同時(shí)進(jìn)行了SQL Server2008數(shù)據(jù)庫(kù)實(shí)際使用試驗(yàn)。
為排除操作系統(tǒng)緩存的干擾,試驗(yàn)中關(guān)閉了操作系統(tǒng)的寫(xiě)緩存功能。
(1)CrystalDiskM ark3_64 bit軟件試驗(yàn)結(jié)果,如圖1所示。
圖1 CrystalDiskMark3_64位軟件試驗(yàn)結(jié)果
(2)HD_Tune_Pro軟件試驗(yàn)結(jié)果,如圖2所示。
圖2 HD_Tune_Pro軟件試驗(yàn)結(jié)果
(3)SQLServer數(shù)據(jù)庫(kù)備份還原試驗(yàn),如表1所示。
表1 SQLServer數(shù)據(jù)庫(kù)備份還原試驗(yàn)
讀比率:PCIe固態(tài)盤(pán)/RAID5光纖盤(pán)=1147/205.9= 5.57
寫(xiě)比率:PCIe固態(tài)盤(pán)/RAID5光纖盤(pán)=647.3/224= 2.89
結(jié)論:PCIe固態(tài)盤(pán)比RA ID5光纖盤(pán)連續(xù)存取傳輸率有大幅提升。
(1)512 kB測(cè)試塊
讀比率:PCIe固態(tài)盤(pán)/RAID5光纖盤(pán)=952.9/55.01= 17.32
寫(xiě)比率:PCIe固態(tài)盤(pán)/RAID5光纖盤(pán)=644.4/96.99= 6.64
(2)4 kB測(cè)試塊
讀比率:PCIe固態(tài)盤(pán)/RAID5光纖盤(pán)=25.67/0.951= 26.99
寫(xiě)比率:PCIe固態(tài)盤(pán)/RAID5光纖盤(pán)=83.97/12.71= 6.61
結(jié)論:PCIe固態(tài)盤(pán)比RA ID5光纖盤(pán)的隨機(jī)存取傳輸率有大幅提升,與連續(xù)存取傳輸率的提升比較,性能指標(biāo)提升的幅度更大,最高達(dá)26.99倍。
(1)PCIe固態(tài)盤(pán)差異
連續(xù)傳輸率對(duì)比512 kB隨機(jī)傳輸率:
讀比率:1147/952.9=1.20
寫(xiě)比率:647.3/644.4=1.00
連續(xù)傳輸率對(duì)比4 kB隨機(jī)傳輸率:
讀比率:1147/25.67=44.68
寫(xiě)比率:647.3/83.97=7.71
(2)RAID5光纖盤(pán)差異
連續(xù)傳輸率對(duì)比512 kB隨機(jī)傳輸率:
讀比率:205.9/55.01=3.74
寫(xiě)比率:224/96.9=2.31
連續(xù)傳輸率對(duì)比4 kB隨機(jī)傳輸率:
讀比率:205.9/0.951=216.51
寫(xiě)比率:224/12.71=17.62
結(jié)論:無(wú)論是讀操作還是寫(xiě)操作,對(duì)于連續(xù)傳輸率與隨機(jī)存取傳輸率的性能差異,PCIe固態(tài)盤(pán)都比RA ID5光纖盤(pán)的性能落差有所收窄,并且這種性能落差的收窄幅度是與數(shù)據(jù)塊大小成負(fù)相關(guān),即數(shù)據(jù)塊越小,相對(duì)于RA ID5光纖盤(pán)而言,PCIe固態(tài)盤(pán)的性能提升越明顯。對(duì)于4 kB數(shù)據(jù)塊讀操作,性能提升最高達(dá)到4.85倍。
連續(xù)傳輸率和隨機(jī)傳輸率是衡量存儲(chǔ)系統(tǒng)的重要指標(biāo)。這2個(gè)指標(biāo)的提高對(duì)于提升數(shù)據(jù)庫(kù)的訪問(wèn)性能具有直接作用。從試驗(yàn)結(jié)果看,PCIe固態(tài)硬盤(pán)在這2個(gè)指標(biāo)上都比傳統(tǒng)磁盤(pán)存儲(chǔ)陣列有大幅度提高,并且各指標(biāo)表現(xiàn)更加均衡。小數(shù)據(jù)塊隨機(jī)傳輸率的提升會(huì)提高存儲(chǔ)設(shè)備的IOPS指標(biāo),對(duì)于傳統(tǒng)機(jī)械硬盤(pán),IOPS指標(biāo)很難大幅度提高且代價(jià)相對(duì)昂貴。通過(guò)發(fā)揮PCIe固態(tài)盤(pán)存儲(chǔ)介質(zhì)的優(yōu)勢(shì),能直接提高數(shù)據(jù)庫(kù)的事物處理能力,對(duì)于提高訂票交易系統(tǒng)、ERP、數(shù)字出版系統(tǒng)等OTLP類應(yīng)用的并發(fā)處理能力是一種高效而低成本的性能提升手段。連續(xù)傳輸率的提高有利于系統(tǒng)吞吐量的提升,可縮短數(shù)據(jù)庫(kù)備份還原時(shí)間,壓縮系統(tǒng)維護(hù)時(shí)間窗口,提高系統(tǒng)的在線服務(wù)能力。