TPC-App基準(zhǔn)(數(shù)據(jù)庫)
時(shí)間:2022-11-24 20:30:01 | 來源:信息時(shí)代
時(shí)間:2022-11-24 20:30:01 來源:信息時(shí)代
TPC-App基準(zhǔn) : TPC(transaction processing performance council)組織發(fā)布的應(yīng)用服務(wù)器和Web服務(wù)評(píng)價(jià)基準(zhǔn),通過度量被測系統(tǒng)包含的應(yīng)用服務(wù)器、消息中間件和數(shù)據(jù)庫管理系統(tǒng)等商業(yè)軟件產(chǎn)品所能承受的工作負(fù)載,來測試應(yīng)用服務(wù)器的性能。該基準(zhǔn)描繪了性能測試所需的一個(gè)具有產(chǎn)品瀏覽和訂購場景的、基于Internet的零售應(yīng)用系統(tǒng),定義了在該場景中實(shí)現(xiàn)性能度量的規(guī)范?;鶞?zhǔn)1.0版于2004年12月15日提交,2005年8月11日發(fā)布基準(zhǔn)1.1.1版,2005年12月7日發(fā)布的版本是1.1.2。
圍繞零售系統(tǒng)的業(yè)務(wù),TPC-App基準(zhǔn)為被測系統(tǒng)中的數(shù)據(jù)庫定義了八張表,它們之間的關(guān)系如圖1所示。方框內(nèi)的數(shù)字表示相應(yīng)數(shù)據(jù)表的記錄數(shù)。客戶數(shù)C是連接到被測系統(tǒng)的有效模擬商業(yè)客戶的192倍,增加模擬商業(yè)客戶數(shù)目的同時(shí)也要增加相關(guān)數(shù)據(jù)庫表的記錄條數(shù),這種調(diào)整能夠體現(xiàn)數(shù)據(jù)庫能夠支持的數(shù)據(jù)規(guī)模,也反映了應(yīng)用服務(wù)器的并發(fā)處理能力。此外,基準(zhǔn)還詳細(xì)定義了這八張表的屬性。
圖1 TPC-App數(shù)據(jù)庫表邏輯結(jié)構(gòu)
基準(zhǔn)描述了模擬環(huán)境中數(shù)據(jù)庫的表數(shù)據(jù)組織、存儲(chǔ)以及各表之間的約束等規(guī)范。表1描述了存在100個(gè)模擬商業(yè)客戶時(shí)數(shù)據(jù)表的設(shè)計(jì)規(guī)模,包括記錄規(guī)模和數(shù)據(jù)規(guī)模。
表1 TPC-App數(shù)據(jù)量估算表
數(shù)據(jù)表 名稱 | 基數(shù) (記錄條數(shù)) | 典型記錄 長度(字節(jié)) | 典型表大小 (字節(jié)) |
客戶2 | 19 200 | 575 | 10 752K |
國家 | 92 | 54 | 4.85K |
地址2 | 26 880 | 154 | 4 139K |
訂單2 | 192 000 | 126 | 24 192K |
訂單明細(xì)1 2 | 1 056 000 | 56 | 59 136K |
作者 | 25 000 | 49 | 1 225K |
商品 | 100 000 | 789 | 78 900K |
庫存 | 100 000 | 18 | 1 800K |
表中,“訂單明細(xì)” 由于針對(duì)每個(gè)訂單生成隨機(jī)數(shù)目的訂單明細(xì),訂單明細(xì)數(shù)據(jù)表的記錄數(shù)可以有微小的變化;“訂單”、“地址”測試過程中記錄數(shù)會(huì)有所增加; “典型記錄長度”和“典型表大小”只是實(shí)現(xiàn)中的一個(gè)示例,并且沒有包括存儲(chǔ)和訪問所需的額外空間。
基準(zhǔn)的工作負(fù)載由七種Web服務(wù)交互組成?;鶞?zhǔn)要求在被測系統(tǒng)和遠(yuǎn)程商業(yè)模擬器或者外部模擬器(POV、ICE、PGE和SNE)之間發(fā)生的Web服務(wù)交互必須符合WS-I BP 1.0規(guī)范的規(guī)定,同時(shí)還對(duì)有效模擬商業(yè)客戶與被測系統(tǒng)以及被測系統(tǒng)和POV、ICE、PGE和SNE之間的通信提出了明確的加密要求,對(duì)交互比例的控制提出了具體的指標(biāo)(允許1%的偏差)。交互的特點(diǎn)和相關(guān)的標(biāo)準(zhǔn)要求如下:
(1) 新客戶: 接受新客戶申請(qǐng)注冊的Web Service請(qǐng)求并返回新客戶ID,交互比例1.00%,90%交互響應(yīng)時(shí)間限制3.0秒。
(2)修改支付方式:為客戶修改支付方式,交互比例5.00%,90%交互響應(yīng)時(shí)間限制3.0秒。
(3)創(chuàng)建訂單:在數(shù)據(jù)庫中創(chuàng)建一個(gè)新訂單并通知發(fā)貨系統(tǒng)發(fā)貨,交互比例50.00%,90%交互響應(yīng)時(shí)間限制4.0秒。
(4)訂單狀態(tài): 查詢指定客戶最近的N個(gè)訂單的詳細(xì)信息,交互比例5.00%,90%交互響應(yīng)時(shí)間限制4.0秒。
(5)新產(chǎn)品:返回最近修改過的商品列表,交互比例7.00%,90%交互響應(yīng)時(shí)間限制1.0秒。
(6)產(chǎn)品信息:返回指定商品集合的詳細(xì)商品信息,交互比例30.00%,90%交互響應(yīng)時(shí)間限制1.0秒。
(7)修改商品:修改一組商品的出版日期,交互比例2.00%,90%交互響應(yīng)時(shí)間限制1.0秒。
基準(zhǔn)規(guī)定了四個(gè)衡量指標(biāo): ①每個(gè)應(yīng)用服務(wù)器系統(tǒng)的SIPS(Web service interactions per second); ②總的SIPS;③每個(gè)SIPS所需的花費(fèi),即性能價(jià)格比;④有效日期。SIPS是被測系統(tǒng)在測試過程中每秒成功完成的交互數(shù)目; 性價(jià)比即價(jià)格/性能,單位是$/SIPS,即每個(gè)SIPS花費(fèi)的美元。
TPC基準(zhǔn)規(guī)定的測試模型出于控制數(shù)據(jù)沖突概率不變的考慮,規(guī)定數(shù)據(jù)規(guī)模必須與被測系統(tǒng)的性能指標(biāo)成正比。為了增加被測系統(tǒng)的吞吐量,唯一的途徑就是增加有效模擬商業(yè)客戶的數(shù)目。這是由于基準(zhǔn)規(guī)定了模擬商業(yè)客戶數(shù)目和數(shù)據(jù)規(guī)模的比例,同時(shí)在一些交互中引入了延遲,因此,每個(gè)模擬商業(yè)客戶單位時(shí)間內(nèi)只能完成一定數(shù)量的交互。
根據(jù)交互比例和響應(yīng)延遲,可以計(jì)算出有效模擬商業(yè)用戶數(shù)目和SIPS值之間的關(guān)系。SIPS的上界可以通過有效模擬商業(yè)客戶數(shù)和每個(gè)有效模擬商業(yè)客戶的SIPS上界的乘積得到:
假設(shè)被測系統(tǒng)的性能足夠好,各種交互的響應(yīng)時(shí)間為零,根據(jù)基準(zhǔn)對(duì)七種Web服務(wù)交互的描述,50%的新客戶、修改商品和創(chuàng)建訂單交互由于和POV、ICE、PGE和SNE之間存在通信引入了一個(gè)不小于2秒的延遲,根據(jù)交互的混合比例可以計(jì)算平均交互響應(yīng)時(shí)間的下界:
平均交互響應(yīng)時(shí)間的下界=(0.01+0.05+0.05)×1.0+(0.05+0.07+0.30+0.02)×0.0=0.56(秒);
SIPS的上界=(1/0.56)×活動(dòng)模擬商業(yè)客戶=1.78×活動(dòng)模擬商業(yè)客戶。
為了避免被測系統(tǒng)過載,基準(zhǔn)規(guī)定SIPS的下界為SIPS上界的50%:
SIPS的下界=0.5×1.78×活動(dòng)模擬商業(yè)客戶=1.89×活動(dòng)模擬商業(yè)客戶。
基準(zhǔn)規(guī)定,系統(tǒng)的吞吐量由有效模擬商業(yè)客戶數(shù)量決定。有效模擬商業(yè)客戶數(shù)量是指測試期間并發(fā)地與Web服務(wù)進(jìn)行交互的模擬商業(yè)客戶的數(shù)量,它是配置模擬商業(yè)客戶數(shù)量的子集(即0.9×配置模擬商業(yè)客戶數(shù)量≤有效模擬商業(yè)客戶數(shù)量≤1.0×配置模擬商業(yè)客戶數(shù)量)。
基準(zhǔn)對(duì)有效模擬商業(yè)客戶的操作步驟進(jìn)行了嚴(yán)格定義,SIRT(Web service interaction response time)表示W(wǎng)eb服務(wù)交互響應(yīng)時(shí)間。測試過程中,必須對(duì)七種Web服務(wù)交互的SIRT進(jìn)行記錄,其中90%交互的SIRT必須低于規(guī)定的上限。
基準(zhǔn)描述了各事務(wù)要求滿足的ACID屬性的各項(xiàng)測試及規(guī)范,規(guī)定只有通過了基準(zhǔn)中ACID各項(xiàng)測試后的系統(tǒng)測試值才能被認(rèn)為有效。
此外基準(zhǔn)還描述了測試系統(tǒng)的基本架構(gòu),被測系統(tǒng)和驅(qū)動(dòng)系統(tǒng)終端以及其連接通信方式,系統(tǒng)計(jì)價(jià)的方法,測試過程的審計(jì),以及測試報(bào)告發(fā)布的相關(guān)規(guī)范等。
相比于其他TPC基準(zhǔn),TPC-App基準(zhǔn)公布時(shí)間比較晚,目前發(fā)布在TPC官方網(wǎng)站上的測試報(bào)告不多。