王濤 陳英達(dá)
【摘要】? ? 隨著信息系統(tǒng)的飛速發(fā)展、硬件設(shè)備更新?lián)Q代,企業(yè)若需對(duì)云計(jì)算平臺(tái)上硬件資源、應(yīng)用系統(tǒng)的容量進(jìn)行有效管理,需要企業(yè)對(duì)現(xiàn)有的評(píng)測(cè)體系進(jìn)行深入的了解和對(duì)比。從現(xiàn)有服務(wù)器性能評(píng)測(cè)體系中(Tpc-c、Spec、Linpack、RPE2)選擇那種適合企業(yè)自身的評(píng)估方法;隨著X86服務(wù)器性能飛速發(fā)展的今天,企業(yè)在進(jìn)行硬件采購時(shí),需要去除唯IOE論、需構(gòu)建小型機(jī)與X86服務(wù)器之間性能換算通道、解決企業(yè)在硬件選型時(shí)如何進(jìn)行快速?zèng)Q策,這些在本文的“容量評(píng)估”中可以找到解決方案。
【關(guān)鍵詞】? ? 容量評(píng)估? ? 性能估算? ? Tpc-c、Spec? ? 硬件資源? ? 信息系統(tǒng)
引言
傳統(tǒng)云平臺(tái)規(guī)劃建設(shè)中的容量管理體系還不夠完善,欠缺對(duì)應(yīng)用系統(tǒng)的容量進(jìn)行快速測(cè)算與評(píng)估的方法,導(dǎo)致應(yīng)用系統(tǒng)的容量評(píng)估成本過高、評(píng)估效率過低、評(píng)估時(shí)間過長(zhǎng),影響云平臺(tái)的總體容量規(guī)劃及建設(shè)進(jìn)度?,F(xiàn)業(yè)界眾多服務(wù)器評(píng)測(cè)體系中,例如:SPEC、TPC、Linpack在內(nèi),雖然從處理器性能、服務(wù)器性能、商業(yè)應(yīng)用性能到高性能計(jì)算機(jī)的性能,都給出了不同的量化評(píng)價(jià)指標(biāo),但均存在著不同程度的局限性。因此,需要結(jié)合企業(yè)云平臺(tái)的特點(diǎn),建立一套科學(xué)的容量快速估算方法,根據(jù)應(yīng)用系統(tǒng)的資源利用情況快速獲取硬件資源需求,從而降低硬件資源評(píng)估成本和評(píng)估時(shí)間,提升評(píng)估效率,為云平臺(tái)的總體容量規(guī)劃提供技術(shù)依據(jù),加快云平臺(tái)建設(shè)進(jìn)度,防止資源浪費(fèi)或不足[1]。
一、服務(wù)器性能評(píng)測(cè)體系介紹
1.1 TPC-C
TPC是由數(shù)10家成員公司組建的非盈利機(jī)構(gòu),其總部設(shè)在美國(guó)。該組織對(duì)全世界開放,但迄今為止,絕大多數(shù)成員都是西歐、日、美大公司,其成員主要是計(jì)算機(jī)軟硬件廠家,而非計(jì)算機(jī)用戶,它的功能是制定商務(wù)應(yīng)用基準(zhǔn)程序的標(biāo)準(zhǔn)規(guī)范、性能和價(jià)格度量,并管理測(cè)試結(jié)果的發(fā)布。
TPC曾經(jīng)推出過四套基準(zhǔn)程序,被稱為:TPC-A、TPC-B、TPC-C和TPC-D。其中A和B已經(jīng)過時(shí),不再使用。TPC-C是專門針對(duì)聯(lián)機(jī)交易處理系統(tǒng)(OLTP)的基準(zhǔn)程序,TPC-D是一個(gè)廣泛的決策支持(Decision Support)規(guī)范。TPC即將推TPC-E規(guī)范,作為大型企業(yè)(Enterprise)信息服務(wù)的基準(zhǔn)程序。
1.2 SPEC
SPEC是由30個(gè)左右世界知名計(jì)算機(jī)大廠商所支持的全球性第三方非營(yíng)利性合作組織,其成員包括IBM、AT&T、BULL、CDC、DG、DEC等。它致力于建立、修訂以及制定一系列服務(wù)器性能評(píng)估的基準(zhǔn)套件。目前包括8大測(cè)試規(guī)范、26種測(cè)試模型。當(dāng)前主要的基準(zhǔn)測(cè)試程序有SPEC int_base_rate 2000、SPEC fp_base_rate 2000和SPEC JBB 2000等。
SPEC應(yīng)用服務(wù)器性能測(cè)試是一個(gè)全面衡量java企業(yè)服務(wù)器在Web應(yīng)用中的性能基準(zhǔn)套件。在這個(gè)基準(zhǔn)中是模擬一個(gè)現(xiàn)代化企業(yè)的電子化業(yè)務(wù)工作,如產(chǎn)品生產(chǎn)制造管理、客戶定購查詢、供應(yīng)商和服務(wù)提供商管理等,對(duì)系統(tǒng)進(jìn)行壓力測(cè)試,以測(cè)試全面運(yùn)行典型java業(yè)務(wù)應(yīng)用的服務(wù)器性能水平。
SPEC web2005評(píng)測(cè)的原理是:通過多臺(tái)客戶機(jī)向SERVER發(fā)出Http Get請(qǐng)求,請(qǐng)求調(diào)用Web服務(wù)器上的網(wǎng)頁文件,這些文件從數(shù)千字節(jié)到數(shù)兆字節(jié)不等。在相同的時(shí)間里,服務(wù)器響應(yīng)的請(qǐng)求越多,就表明服務(wù)器對(duì)客戶端的處理能力越強(qiáng),Web性能就越好。
SPEC CPU 2006包括了CFP2006和CINT2006兩個(gè)子項(xiàng)目,前者是用于測(cè)量和對(duì)比浮點(diǎn)性能,而后者則用于測(cè)量和對(duì)比整數(shù)性能。
1.3 Linpack
Linpack,國(guó)際上最常用于評(píng)測(cè)高性能計(jì)算機(jī)系統(tǒng)浮點(diǎn)性能的benchmark。通過使用高性能計(jì)算機(jī),采用高斯消元法求解N元一次稠密線性代數(shù)方程組的測(cè)算,評(píng)估高性能計(jì)算機(jī)的浮點(diǎn)性能。
Linpack測(cè)試值是指實(shí)測(cè)的浮點(diǎn)峰值,也就是說在被測(cè)服務(wù)器上運(yùn)行Linpack測(cè)試程序,通過進(jìn)行各種調(diào)優(yōu)方法得到最優(yōu)的測(cè)試效果。然而在實(shí)際程序運(yùn)行過程中,幾乎是不可能達(dá)到實(shí)測(cè)浮點(diǎn)峰值,更不用提達(dá)到理論浮點(diǎn)峰值。這兩個(gè)數(shù)值只是作為衡量機(jī)器性能的一個(gè)理論指標(biāo),用來表明機(jī)器處理能力的一個(gè)最大值和潛能的參考。
1.4 RPE2
RPE2由IDEAS international公司發(fā)布。它只是理論上,通過對(duì)TPC-C,TPC-H,SAP SD 2-Tier,SPECjbb,SPECint_rate,SPECfp_rate等benchmark進(jìn)行幾何運(yùn)算得來,并不經(jīng)過真實(shí)的測(cè)試環(huán)境。重要作用是為了在不同的產(chǎn)品處于不同的benchmark時(shí),且各自存在優(yōu)劣時(shí)進(jìn)行比較。
1.5云平臺(tái)容量評(píng)估
1、方法
云平臺(tái)容量評(píng)估的目標(biāo)是提供一種云平臺(tái)容量估算的體系和方法,針對(duì)不同業(yè)務(wù)的信息系統(tǒng)應(yīng)用所需的硬件資源,通過實(shí)際的調(diào)研、測(cè)試、擬合,實(shí)現(xiàn)各硬件資源通用的估算方法。
成熟的企業(yè)從不完全依賴于“國(guó)際通用標(biāo)準(zhǔn)”,而是使用符合自己的體系和規(guī)范來測(cè)試系統(tǒng),建立容量評(píng)估,從而為選型提供依據(jù)?!皣?guó)際通用標(biāo)準(zhǔn)”的度量可以作為參考、學(xué)習(xí),而不應(yīng)作為充分必要條件。容量評(píng)估實(shí)施的工作思路為三個(gè)階段:前期調(diào)研分析,模型研究,驗(yàn)證完善。
2、調(diào)研
收集國(guó)內(nèi)外容量管理經(jīng)驗(yàn)相關(guān)資料,匯總分析成熟路線,借鑒業(yè)內(nèi)先進(jìn)經(jīng)驗(yàn),分析其對(duì)南企業(yè)的業(yè)務(wù)系統(tǒng)的適用性,制定符合企業(yè)業(yè)務(wù)特點(diǎn)的技術(shù)研究路線。
3、研究過程主要分三個(gè)階段
(1)公司業(yè)務(wù)系統(tǒng)容量管理現(xiàn)狀分析
總結(jié)國(guó)內(nèi)外成熟技術(shù)路線及方法特點(diǎn),收集公司全業(yè)務(wù)系統(tǒng)基礎(chǔ)信息,調(diào)研容量管理需求。
(2)業(yè)務(wù)系統(tǒng)應(yīng)用容量研究
分析公司應(yīng)用系統(tǒng)特點(diǎn),量化研究系統(tǒng)典型模塊資源需求,評(píng)估業(yè)務(wù)系統(tǒng)整體資源需求。
(3)硬件資源容量研究
匯總業(yè)內(nèi)各廠商硬件設(shè)備(服務(wù)器、存儲(chǔ)等)性能指標(biāo),研究分析不同廠商、型號(hào)、配置等性能參數(shù),構(gòu)建硬件設(shè)備資源容量。
(4)云平臺(tái)總體容量的研究
把應(yīng)用系統(tǒng)所需的容量按業(yè)務(wù)類型進(jìn)行分類,作為計(jì)算云平臺(tái)容量的源數(shù)據(jù),根據(jù)業(yè)務(wù)類型容量及業(yè)務(wù)高峰期時(shí)間,評(píng)估出企業(yè)云平臺(tái)的總體規(guī)劃容量。
4、驗(yàn)證完善
選取云平臺(tái)上的典型應(yīng)用和典型軟硬件配置進(jìn)行模型測(cè)試驗(yàn)證,根據(jù)驗(yàn)證結(jié)果對(duì)容量評(píng)估進(jìn)行修訂。
5、建立模型的過程
容量評(píng)估的建立就是通過實(shí)測(cè)數(shù)據(jù)分析、擬合、經(jīng)驗(yàn)等方法,對(duì)云平臺(tái)上的未建或擴(kuò)容系統(tǒng)評(píng)估其業(yè)務(wù)容量的過程。通過數(shù)據(jù)擬合法,經(jīng)驗(yàn)評(píng)估法兩種方法,在可研、設(shè)計(jì),上線前和上線后四個(gè)階段建立信息系統(tǒng)容量評(píng)估。
(1)數(shù)據(jù)擬合法:通過大量數(shù)據(jù)采集、建立數(shù)學(xué)模型,運(yùn)用統(tǒng)計(jì)學(xué)軟件SPSS等進(jìn)行數(shù)據(jù)擬合;
(2)經(jīng)驗(yàn)評(píng)估法:主要依靠經(jīng)驗(yàn)豐富的研發(fā)和應(yīng)用人員,結(jié)合在運(yùn)其他系統(tǒng)建設(shè)情況,對(duì)現(xiàn)有系統(tǒng)容量進(jìn)行評(píng)估;
可研階段:首先需要對(duì)目標(biāo)系統(tǒng)的功能及非功能性需求進(jìn)行量化,然后將量化數(shù)據(jù)輸入測(cè)算模型計(jì)算出最低處理能力需求;通過用戶調(diào)研表,將系統(tǒng)拆分到模塊層面,主要含功能、并發(fā)量等信息,通過典型模塊參考字典,進(jìn)行容量評(píng)估。
設(shè)計(jì)階段:此階段,表結(jié)構(gòu)、SQL等子模塊已經(jīng)完成將主要模塊拆分到SQL等底層操作層面,通過SQL語句容量參考字典,精細(xì)化評(píng)估系統(tǒng)容量[2]。
上線前階段:針對(duì)系統(tǒng)上線,進(jìn)行測(cè)試,參考已建立的容量評(píng)估,通過壓力測(cè)試等,對(duì)開發(fā)商研發(fā)進(jìn)行評(píng)判。
上線后階段:結(jié)合上線后,系統(tǒng)容量各項(xiàng)指標(biāo)變化,構(gòu)建趨勢(shì)分析,科學(xué)進(jìn)行容量擴(kuò)容。
二、各服務(wù)器性能評(píng)測(cè)體系對(duì)比
2.1 TPC-C解讀
從TPC-C的定義可知:這套基準(zhǔn)規(guī)范是用來衡量整個(gè)IT系統(tǒng)的性能,而不是單一評(píng)估服務(wù)器或某個(gè)硬件設(shè)備的標(biāo)準(zhǔn),而且tpmC數(shù)值的大小直接受到各個(gè)環(huán)節(jié)的影響。這里的“IT系統(tǒng)”包括服務(wù)器、外設(shè)(如硬盤或RAID)、數(shù)據(jù)庫軟件、服務(wù)器端操作系統(tǒng)、客戶端及其操作系統(tǒng)、數(shù)據(jù)庫軟件和網(wǎng)絡(luò)連接等。
因此tpmC數(shù)值會(huì)因不同的采購配置有非常大的差別;TPC不給出基準(zhǔn)程序的代碼,而只給出基準(zhǔn)程序的標(biāo)準(zhǔn)規(guī)范。任何廠家或其他測(cè)試者都可以遵照規(guī)范,構(gòu)造出對(duì)自己最優(yōu)的測(cè)試系統(tǒng)(測(cè)試程序和測(cè)試平臺(tái))[3]。
假如同樣的服務(wù)器被應(yīng)用到用戶的環(huán)境中,廠家報(bào)的tpmC值就沒多大的意義,因?yàn)橛脩舻膶?shí)際系統(tǒng)與廠家原來用來做TPC測(cè)試的系統(tǒng)完全不同。當(dāng)同樣的服務(wù)器用在不同的系統(tǒng)中時(shí),tpmC值可能有相當(dāng)大的差異,很多用戶還沒有考慮到這一點(diǎn)。
2.2 SPEC解讀
從SPEC基準(zhǔn)測(cè)試的定義可以知道,這套標(biāo)準(zhǔn)規(guī)范主要是用于估算內(nèi)存性能、CPU和Web服務(wù)器性能。
SPEC CPU測(cè)試中,測(cè)試系統(tǒng)的處理器、內(nèi)存子系統(tǒng)和使用到的編譯器(SPEC CPU提供的是源代碼,并且允許測(cè)試用戶做一些編譯優(yōu)化)都會(huì)影響最終的測(cè)試結(jié)果。
綜上所述,SPEC基準(zhǔn)測(cè)試可以對(duì)CPU、WEB服務(wù)器性能指標(biāo)給出一套相對(duì)參考,但是仍然不能與客戶的業(yè)務(wù)系統(tǒng)產(chǎn)生關(guān)聯(lián),不能從SPEC基準(zhǔn)中估算具體業(yè)務(wù)系統(tǒng)的擴(kuò)容采購“量”。
2.3 Linpack
Linpack基本上就是用來解決線性方程的公式轉(zhuǎn)換語言集,因此比較適合用來衡量超級(jí)計(jì)算機(jī)的計(jì)算性能,應(yīng)用領(lǐng)域比較單一,與大多數(shù)普通的應(yīng)用系統(tǒng)關(guān)聯(lián)度不大[4]。用其估算“容量”,除費(fèi)用成本高之外,還存領(lǐng)域跨度大,與實(shí)際應(yīng)用系統(tǒng)“脫節(jié)”。
2.4 RPE2
RPE2本身不做測(cè)試,依賴于其他機(jī)構(gòu)發(fā)布的數(shù)據(jù),所以存在局限性,例如:新服務(wù)器在沒有及時(shí)發(fā)布相關(guān)數(shù)據(jù)或數(shù)據(jù)不準(zhǔn)確時(shí),RPE2就不能很好的進(jìn)行估算[5]。而且,RPE2本身只是對(duì)已知的選型方案進(jìn)行橫向比較,自身不對(duì)容量進(jìn)行估算。
2.5云平臺(tái)容量評(píng)估
從云平臺(tái)容量評(píng)估的原理可以知道:并不側(cè)重CPU物理設(shè)備的性能指標(biāo)測(cè)算,而是通過數(shù)據(jù)擬合、經(jīng)驗(yàn)評(píng)估法,從實(shí)際業(yè)務(wù)系統(tǒng)的特點(diǎn)出發(fā),對(duì)云平臺(tái)上的業(yè)務(wù)系統(tǒng)容量進(jìn)行估算,然后配合海量的硬件數(shù)據(jù)字典,使得“容量評(píng)估”符合企業(yè)實(shí)際業(yè)務(wù)系統(tǒng)特性,從而可以較真實(shí)的評(píng)估系統(tǒng)資源。雖然“容量評(píng)估”主要針對(duì)企業(yè)業(yè)務(wù)特性定制,但是對(duì)有經(jīng)驗(yàn)的專業(yè)人員而言,可以通過研究分析不同系統(tǒng)之間的難易程度規(guī)律,使用調(diào)整“業(yè)務(wù)復(fù)雜度系數(shù)”也可以通過也有模型對(duì)不同系統(tǒng)進(jìn)行橫向評(píng)估。
通過云平臺(tái)容量評(píng)估,可以幫助企業(yè)解決高采購成本,設(shè)計(jì)符合企業(yè)總體要求、滿足項(xiàng)目具體需求的硬件資源測(cè)算方法,建立一套符合自身業(yè)務(wù)系統(tǒng)特點(diǎn)的設(shè)備容量測(cè)試標(biāo)準(zhǔn)體系,解決企業(yè)在實(shí)際的硬件選型中遇到的困難,評(píng)估企業(yè)云平臺(tái)的總體規(guī)劃容量,減少資源的浪費(fèi)和不足。
三、總結(jié)
綜上所述,現(xiàn)有的主流基準(zhǔn)測(cè)試更偏重理論,可以作為一個(gè)輔助參考標(biāo)準(zhǔn),就企業(yè)對(duì)服務(wù)器選型來說,只依靠“國(guó)際通用”的度量作為選型依據(jù)是不夠嚴(yán)謹(jǐn)?shù)模驗(yàn)榉?wù)器最終是服務(wù)于特定的軟硬件環(huán)境下、不同的網(wǎng)絡(luò)、數(shù)據(jù)庫及應(yīng)用系統(tǒng)等,服務(wù)器的性能表現(xiàn)會(huì)存在不同,因此在進(jìn)行性能評(píng)估時(shí),“國(guó)際通用”的度量有可能不夠準(zhǔn)確,甚至與實(shí)際有很大差別,所以“國(guó)際通用”可以作為參考,但不是選型的唯一依據(jù)。
例如,估算OLTP數(shù)據(jù)庫服務(wù)器的容量通常使用TPC-C標(biāo)準(zhǔn),估算OLAP數(shù)據(jù)庫服務(wù)的容量使用TPC-H標(biāo)準(zhǔn),估算應(yīng)用中間件服務(wù)器的容量使用SPECjl3b2005標(biāo)準(zhǔn),估算Web服務(wù)器的容量使用SPECweb99標(biāo)準(zhǔn),估算企業(yè)資源計(jì)劃服務(wù)器的容量使用SAI^s標(biāo)準(zhǔn)。雖然這些標(biāo)準(zhǔn)提供了容量估算的基本方法,但是:
(一)不同類型應(yīng)用服務(wù)器的衡量標(biāo)準(zhǔn)是不一樣的,缺乏一個(gè)統(tǒng)一的容量估算體系對(duì)各種業(yè)務(wù)應(yīng)用系統(tǒng)中的不同服務(wù)器進(jìn)行通用估算。
(二)同時(shí),在具體使用各種標(biāo)準(zhǔn)進(jìn)行估算前,要求按照每個(gè)標(biāo)準(zhǔn)的規(guī)范建立各自嚴(yán)格的測(cè)試場(chǎng)景,很難實(shí)現(xiàn)通用性。
(三)另外,影響系統(tǒng)資源使用率的一個(gè)重要因素是:用戶需求。隨著業(yè)務(wù)的變化,用戶需求勢(shì)必發(fā)生改變。但是在新的應(yīng)用系統(tǒng)服務(wù)器投入運(yùn)行之前,使用各種標(biāo)準(zhǔn)進(jìn)行容量估算的過程中,由固定標(biāo)準(zhǔn)規(guī)定了固定的用戶需求值,使得估算容量和將來實(shí)際容量之間可能存在較大偏差。
1、云平臺(tái)容量評(píng)估的注意事項(xiàng)
企業(yè)對(duì)云化應(yīng)用硬件資源容量需求估算方面,需要注意:
(1)最好構(gòu)建一個(gè)真實(shí)的試點(diǎn),因?yàn)閷?shí)際應(yīng)用環(huán)境是檢驗(yàn)系統(tǒng)的最好標(biāo)準(zhǔn)。
(2)“國(guó)際通用”的度量可以作為參考值,但是不應(yīng)該作為必要條件。
(3)不論是TPC-C還是SPEC,其計(jì)算結(jié)果都只能作為一個(gè)橫向比較的參考。在實(shí)際應(yīng)用中,決定系統(tǒng)性能的因素除了硬件、系統(tǒng)軟件外,與應(yīng)用軟件的設(shè)計(jì)、架構(gòu)也是有很重要的聯(lián)系[6]。
2、云平臺(tái)容量評(píng)估的應(yīng)用價(jià)值
從信息化主管部門的角度出發(fā),構(gòu)建一套云計(jì)算平臺(tái)容量評(píng)估體系是非常有必要的,這其中包括:
(1)通過對(duì)各部門業(yè)務(wù)系統(tǒng)運(yùn)行情況的調(diào)研,進(jìn)行歷史數(shù)據(jù)的采集、整理分析,依據(jù)分類構(gòu)建基準(zhǔn)指標(biāo)庫(字典庫)。收集的信息包括:系統(tǒng)并發(fā)用戶數(shù)、服務(wù)器的配置、活躍數(shù)據(jù)量、業(yè)務(wù)復(fù)雜度、業(yè)務(wù)高峰時(shí)間段、CPU負(fù)載等;
(2)由應(yīng)用開發(fā)商定期采集基準(zhǔn)值,更新基準(zhǔn)字典庫。有了基準(zhǔn)字典庫的信息參考,不僅可以用于評(píng)估項(xiàng)目建設(shè)方案中服務(wù)器選型,也可以對(duì)各部門進(jìn)行系統(tǒng)架構(gòu)規(guī)劃的優(yōu)化提供借鑒。
參? 考? 文? 獻(xiàn)
[1]翟艷芬,周潤(rùn)松,陳磊 基準(zhǔn)測(cè)試在服務(wù)器選型中的研究分析與實(shí)踐 中國(guó)軟件評(píng)測(cè)中心 北京 100048 2011(05):2-2.
[2]丁玉偉, 田淵文, 王海濱. 結(jié)合統(tǒng)計(jì)學(xué)方法的銀行IT系統(tǒng)性能預(yù)測(cè)模型研究[J]. 中國(guó)金融電腦, 2015(10):42-47.
[3]Transaction Processing Performance Council (TPC) TPC BENCHMARKTM C February 2010:9-11.
[4]劉冉 如何選擇服務(wù)器性能測(cè)試工具 《程序員》, 2013(7):128-131
[5]韓光濤,張?jiān)?,HanGuangtao,ZhangYuanying SPECweb99:最新Web服務(wù)器性能基準(zhǔn)測(cè)試《計(jì)算機(jī)應(yīng)用研究》, 2000, 17(4):101-102
[6]陳英達(dá),鐘蘇生,周開東,麥曉輝.信息系統(tǒng)資源估算方法研究[J].信息技術(shù)與信息化,2017(11):128-131.
王濤(1982年),男,陜西寶雞,本科,工程師,主研領(lǐng)域:信息化管理,單位: 國(guó)電南瑞科技股份有限責(zé)任公司,
陳英達(dá)(1988-),男,廣東廣州,博士,工程師,主研領(lǐng)域:電力信息化工作,單位: 廣東電力信息科技有限公司,