999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

數(shù)據(jù)庫性能預(yù)測的研究與應(yīng)用

2015-05-30 10:48:04殷文浩
計算機時代 2015年6期
關(guān)鍵詞:數(shù)據(jù)庫

殷文浩

摘 要: 數(shù)據(jù)庫性能預(yù)測具有可利用歷史數(shù)據(jù)較少、受外界不確定性因素影響較大的特點。傳統(tǒng)的構(gòu)建數(shù)據(jù)庫方法有采集數(shù)據(jù)周期長、普通人較難準(zhǔn)確掌握、預(yù)測值波動性大等問題。為此探討了一種應(yīng)用數(shù)學(xué)公式,只需采集較少數(shù)據(jù)即可方便快速地預(yù)測數(shù)據(jù)庫性能。使用該方法可以在數(shù)據(jù)庫處于正常工作情況下,對今后一段時期內(nèi)數(shù)據(jù)庫性能做出較為快速準(zhǔn)確的預(yù)測,有效預(yù)防未來可能出現(xiàn)的性能問題。

關(guān)鍵詞: 數(shù)據(jù)庫; 性能; 預(yù)測; 公式

中圖分類號:TP392 文獻標(biāo)志碼:A 文章編號:1006-8228(2015)06-01-03

Abstract: Database performance prediction has the characteristics of less available historical data and great affect of the external uncertain factors. The traditional method of building a database has the problems which data collection cycle is long, ordinary people are difficult to grasp, predictive value is volatile ect. This paper introduces an applied mathematics formula, database performance can be predicted rapidly as long as few data is collected. Thus a more accurate prediction of the database performance during the next period of time is made, that effectively prevents the possible performance problems in the future.

Key words: database; performance; prediction; formula

0 引言

隨著信息技術(shù)的飛速發(fā)展,數(shù)據(jù)庫已經(jīng)被應(yīng)用到社會的各個領(lǐng)域,數(shù)據(jù)庫的性能是數(shù)據(jù)庫運行好壞的一個重要技術(shù)指標(biāo)。數(shù)據(jù)庫系統(tǒng)是動態(tài)的,含有各種各樣的事務(wù)類型,這使得對數(shù)據(jù)庫作出準(zhǔn)確的性能預(yù)測非常困難。許多IT專業(yè)人員(DBA、項目經(jīng)理、系統(tǒng)集成或開發(fā)人員)在工作中都會碰到需要預(yù)測數(shù)據(jù)庫性能的情況。

本文以筆者單位正在使用的業(yè)務(wù)數(shù)據(jù)庫系統(tǒng)為研究對象,應(yīng)用數(shù)學(xué)預(yù)測公式在系統(tǒng)運行性能數(shù)據(jù)的分析基礎(chǔ)上,對該業(yè)務(wù)系統(tǒng)數(shù)據(jù)庫的性能趨勢作出預(yù)測。根據(jù)預(yù)測結(jié)果,科學(xué)合理的添加系統(tǒng)資源,滿足了系統(tǒng)穩(wěn)定高效運行的需要,化解了數(shù)據(jù)庫性能風(fēng)險,避免了不必要的浪費。

1 相關(guān)知識

1.1 事務(wù)

在預(yù)測性能時,我們需要一個基本工作單元來溝通和計算。我們把這種基本工作單元稱作事務(wù)。在數(shù)據(jù)庫領(lǐng)域?qū)κ聞?wù)有各種各樣的定義,為了敘事清楚,我們把事務(wù)定義為單個邏輯工作單元執(zhí)行的一系列操作,要么完整地執(zhí)行,要么完全不執(zhí)行。事務(wù)處理可以確保除非事務(wù)性單元內(nèi)的所有操作都成功完成,否則不會永久更新面向數(shù)據(jù)的資源。通過將一組相關(guān)操作組合為一個要么全部成功要么全部失敗的單元,可以簡化錯誤恢復(fù)并使應(yīng)用程序更加可靠。一個邏輯工作單元要成為事務(wù),必須滿足所謂的ACID(原子性、一致性、隔離性和持久性)屬性。

1.2 到達(dá)率

事務(wù)不僅是一種靜態(tài)的定義,它們還是動態(tài)的。事務(wù)到達(dá)一個計算系統(tǒng),就像人到達(dá)辦公大樓電梯。我們將到達(dá)率定義為:在給定的時間內(nèi)到達(dá)的事務(wù)的數(shù)量。我們用到達(dá)率來表示一定時間內(nèi)事務(wù)的繁忙程度,在一個系統(tǒng)中,到達(dá)率越高,事務(wù)的活動就越多。

我們使用希臘字母λ表示到達(dá)率,其單位是某個時間內(nèi)的工作數(shù)量,如每秒50個事務(wù),寫作50trx/s。

1.3 服務(wù)時間

當(dāng)一個事務(wù)進入服務(wù)器后,CPU會立即開始處理這個事務(wù),從開始處理這個事務(wù)到處理完這個事務(wù)所花費的時間,通常被稱為服務(wù)時間并被標(biāo)記為St。例如,如果一個事務(wù)占用150ms的CPU時間,其服務(wù)時間為St=150ms/trx。

1.4 隊列

通常情況下,我們用繁忙度或者利用率來衡量服務(wù)器的忙碌程度。例如,如果一臺服務(wù)器的繁忙時間占65%,那么其利用率為65%。當(dāng)服務(wù)器有70%左右的時間處于繁忙狀態(tài)時,它不能在事務(wù)到來后立即進行處理,這些事務(wù)將被放入到一個隊列中一直保存到它被處理為止。

隊列[2]是一種非常簡單的數(shù)據(jù)結(jié)構(gòu)。它本質(zhì)上是一個包含一個頭部和一個尾部的鏈表。事務(wù)被壓入隊列(入隊)和彈出隊列(出隊)。本文論及到的隊列模型是簡單的先入/先出( FIFO)隊列。

隊列長度用來表示有多少積壓的事務(wù)未被處理。當(dāng)一個事務(wù)在隊列中等待時,它等待Qt的時間。單位是每筆事務(wù)的時間。字母Q表示隊列的長度,它的單位是簡單的事務(wù)數(shù)量。

通常情況下,當(dāng)一個服務(wù)器的繁忙率達(dá)到約70%時,就已經(jīng)不能立即處理事務(wù)了,即使服務(wù)器還有30%是空閑的,當(dāng)服務(wù)器變得越來越繁忙時,事務(wù)就會開始排隊,隊列長度會增加,而性能開始下降。

1.5 響應(yīng)時間

當(dāng)一個事務(wù)被提交時,它在整個計算系統(tǒng)中流動并消耗CPU、IO、內(nèi)存和網(wǎng)絡(luò)資源。有時事務(wù)無需在隊列中等待,可以立即得到處理,有時它必須先在隊列中等待。通常情況下,事務(wù)流在整個系統(tǒng)中,需多次地排隊和被處理,直到它完成并退出系統(tǒng)。

在一個事務(wù)的生命周期內(nèi),如果我們將所有的服務(wù)時間和排隊時間累加起來,就可以判斷出事務(wù)在系統(tǒng)中花費的時間,這個時間通常被稱為響應(yīng)時間[6]。簡單的說,響應(yīng)時間就是服務(wù)時間加上排隊時間:Rt=St+Qt。

在對數(shù)據(jù)庫進行性能預(yù)測時,響應(yīng)時間曲線是我們經(jīng)常會用到的技術(shù)之一。

響應(yīng)時間曲線如圖1所示,縱軸是響應(yīng)時間即事務(wù)完成所需要的時間,橫軸是事務(wù)到達(dá)率即每單位時間進入系統(tǒng)的事務(wù)數(shù)。從圖1可以看出,當(dāng)事務(wù)到達(dá)率達(dá)到一定值時,響應(yīng)時間呈幾何級上升(出現(xiàn)拐點),這時系統(tǒng)將極為緩慢甚至不能工作,因此預(yù)測拐點何時在什么條件下會出現(xiàn)是我們預(yù)測工作的重點。

2 預(yù)測

2.1 數(shù)據(jù)收集

數(shù)據(jù)收集[5]是進行數(shù)據(jù)庫性能預(yù)測的必備工作之一,收集到的原始數(shù)據(jù)還必須經(jīng)過必要的轉(zhuǎn)換才能成為對預(yù)測有用的數(shù)據(jù)。在進行數(shù)據(jù)收集時不能過于頻繁,否則會對收集對象的性能產(chǎn)生負(fù)面影響。

在需要收集的數(shù)據(jù)中最重要的有兩項,CPU使用率和數(shù)據(jù)庫的工作負(fù)載,這里我們假設(shè)操作系統(tǒng)為UNIX,數(shù)據(jù)庫為Oracle。在Oracle數(shù)據(jù)庫中并沒有工作負(fù)載這個性能指標(biāo)字段,我們可以用Oracle內(nèi)部統(tǒng)計信息“用戶調(diào)用”(user call)來表示工作負(fù)載(即到達(dá)率)。

“user call”是一個隨時間而增加的值,要得到工作負(fù)載數(shù)據(jù),必須獲取一個初始統(tǒng)計信息快照(S0)和結(jié)束統(tǒng)計信息快照(S1),將兩者之差除以兩次快照之間的時間(T)就可以得到其到達(dá)率(λ)。

2.3 使用公式進行預(yù)測

筆者單位某業(yè)務(wù)系統(tǒng)平時用于處理企業(yè)登記、變更和年檢等業(yè)務(wù),由于經(jīng)濟快速發(fā)展,企業(yè)數(shù)量不斷增加,系統(tǒng)處理的業(yè)務(wù)量以每年40%的速度逐年遞增,導(dǎo)致系統(tǒng)的負(fù)荷也不斷加重。領(lǐng)導(dǎo)擔(dān)心數(shù)據(jù)庫系統(tǒng)會承受不住,因此需要對現(xiàn)有數(shù)據(jù)庫系統(tǒng)做一次性能預(yù)測,并提供解決方案。

首先運行前文所提到的數(shù)據(jù)收集腳本,收集到數(shù)據(jù)庫在正常情況下事務(wù)的平均到達(dá)率是6.11trx/s,CPU平均利用率是35%,CPU的數(shù)量是12,將這些數(shù)字代入基本預(yù)測公式:

假設(shè)CPU處理一個事物的服務(wù)時間St始終保持不變,得出當(dāng)平均到達(dá)率為6.11trx/s時,每個事務(wù)的平均響應(yīng)時間為0.69s,以此作為一個基線填入表2的第一行,然后每次將平均到達(dá)率增加20%代入公式,計算出平均響應(yīng)時間如表2。

圖1是根據(jù)表2得到的響應(yīng)時間曲線圖[3],橫軸是到達(dá)率,縱軸是預(yù)測的響應(yīng)時間。根據(jù)表2可以得知,當(dāng)利用率在70-80%時,響應(yīng)時間開始顯著增加,這時到達(dá)率大約是13,這正是圖形上開始進入曲線肘部的時刻。

我們根據(jù)圖表預(yù)測的數(shù)據(jù)得到以下兩點結(jié)論。

⑴ 當(dāng)負(fù)載增加超過一倍時,系統(tǒng)的反應(yīng)將變得緩慢。

⑵ 當(dāng)負(fù)載增加接近兩倍時,系統(tǒng)將變的幾乎不可用。

根據(jù)以上結(jié)論,再結(jié)合業(yè)務(wù)量每年增加40%的事實,領(lǐng)導(dǎo)可以得知到第三年時系統(tǒng)會變得緩慢,到第四年時系統(tǒng)將變的幾乎不可用。

2.4 應(yīng)對措施效果預(yù)測

為了防止系統(tǒng)變慢,可以通過更換系統(tǒng)或添加CPU來解決,前者效果好但花費較大,后者節(jié)省費用但效果未知。此時可以利用預(yù)測公式[3]對添加CPU后的效果做出預(yù)測,為應(yīng)對措施的選擇給出理論上的依據(jù)。

該系統(tǒng)數(shù)據(jù)庫服務(wù)器有16個插槽,已經(jīng)使用了12個,還可以添加4個使CPU總數(shù)達(dá)到16,即M=16。

我們將原系統(tǒng)St=0.69,以及原系統(tǒng)開始變慢時的到達(dá)率λ=13.442代入公式可得:

U===0.579

Rt===0.690

我們發(fā)現(xiàn)當(dāng)添加了4個CPU后,系統(tǒng)繁忙度從0.773下降到0.579,響應(yīng)時間從0.723s下降到0.690s,系統(tǒng)沒有變慢。

我們再把原系統(tǒng)變的不可用時的到達(dá)率λ=18.330代入上述公式可得系統(tǒng)繁忙度從1.054下降到0.790,響應(yīng)時間從幾乎無響應(yīng)下降到0.706s,系統(tǒng)幾乎沒有變慢。

根據(jù)上述預(yù)測結(jié)果可以得知,該業(yè)務(wù)系統(tǒng)只需升級CPU就可以完全滿足未來五年的業(yè)務(wù)發(fā)展需要。

2.5 實際效果

由于商事登記制度改革,新登記企業(yè)的數(shù)量呈現(xiàn)井噴式增長,原數(shù)據(jù)庫系統(tǒng)提前一年達(dá)到了滿負(fù)荷運行狀態(tài),系統(tǒng)繁忙度接近1,響應(yīng)時間接近4秒。為了防止系統(tǒng)繼續(xù)變慢,保障商事登記制度改革順利推進,我們根據(jù)前期預(yù)測結(jié)果,為數(shù)據(jù)庫添加了4個CPU。添加CPU后,再次對數(shù)據(jù)庫系統(tǒng)進行跟蹤測試,結(jié)果發(fā)現(xiàn)系統(tǒng)繁忙度下降到0.58,響應(yīng)時間下降到0.6s,完全符合預(yù)測,順利解決了數(shù)據(jù)庫的瓶頸問題。

3 結(jié)束語

本文介紹了到達(dá)率、服務(wù)時間、響應(yīng)時間等一些數(shù)據(jù)庫性能預(yù)測的基本知識和概念[1],討論了一些常用的預(yù)測公式并且就這些理論的具體運用進行了較詳細(xì)的研究和論述。本文的研究結(jié)果在筆者單位的數(shù)據(jù)庫系統(tǒng)上得到了成功應(yīng)用,保障了數(shù)據(jù)庫平穩(wěn)運行,避免了盲目的升級替換,節(jié)約了寶貴的項目經(jīng)費,實現(xiàn)了較好的經(jīng)濟和社會效益。

由于在數(shù)據(jù)庫實際預(yù)測工作中經(jīng)常會遇到樣本采集數(shù)量不足、采集時間不平均或采集方式不對等因素干擾,造成數(shù)據(jù)庫性能預(yù)測不準(zhǔn),因此,下一步考慮引進Erlang C公式來進一步加強數(shù)據(jù)庫性能預(yù)測的準(zhǔn)確性和抗干擾性。

參考文獻:

[1] 陳虹.模型預(yù)測控制[M].科學(xué)出版社,2013.

[2] 席裕庚.預(yù)測控制(第2版)[M].國防工業(yè)出版社,2013.

[3] 李海翔.數(shù)據(jù)庫查詢優(yōu)化器的藝術(shù)[M].機械工業(yè)出版社,2014.

[4] 李少遠(yuǎn).全局工況系統(tǒng)預(yù)測控制及其應(yīng)用[M].科學(xué)出版社,2008.

[5] 加西亞-莫利納著,楊冬青等譯.數(shù)據(jù)庫系統(tǒng)實現(xiàn)[M].機械工業(yè)出版

社,2010.

[6] 博克斯著,王成璋等譯.時間序列分析:預(yù)測與控制[M].機械工業(yè)出版

社,2011.

猜你喜歡
數(shù)據(jù)庫
數(shù)據(jù)庫
財經(jīng)(2017年15期)2017-07-03 22:40:49
數(shù)據(jù)庫
財經(jīng)(2017年2期)2017-03-10 14:35:35
兩種新的非確定數(shù)據(jù)庫上的Top-K查詢
數(shù)據(jù)庫
財經(jīng)(2016年15期)2016-06-03 07:38:02
數(shù)據(jù)庫
財經(jīng)(2016年3期)2016-03-07 07:44:46
數(shù)據(jù)庫
財經(jīng)(2016年6期)2016-02-24 07:41:51
數(shù)據(jù)庫
財經(jīng)(2015年3期)2015-06-09 17:41:31
數(shù)據(jù)庫
財經(jīng)(2014年21期)2014-08-18 01:50:18
數(shù)據(jù)庫
財經(jīng)(2014年6期)2014-03-12 08:28:19
數(shù)據(jù)庫
財經(jīng)(2013年6期)2013-04-29 17:59:30
主站蜘蛛池模板: 国产高清又黄又嫩的免费视频网站| 激情成人综合网| 在线日本国产成人免费的| 女同国产精品一区二区| 亚洲精品天堂在线观看| 91成人精品视频| 精品伊人久久久久7777人| 欧美乱妇高清无乱码免费| 毛片网站免费在线观看| 在线亚洲小视频| 久草中文网| 成人av专区精品无码国产| 亚洲国产精品VA在线看黑人| 91视频国产高清| 91国内在线视频| 69免费在线视频| 久久国产高潮流白浆免费观看| 欧美啪啪精品| 少妇被粗大的猛烈进出免费视频| 亚洲日产2021三区在线| 精品精品国产高清A毛片| 亚洲日产2021三区在线| 国产一区二区三区精品久久呦| 亚洲成人一区二区| 国产精品一区二区久久精品无码| 视频在线观看一区二区| 奇米影视狠狠精品7777| 亚洲视频在线观看免费视频| 亚洲视频无码| 在线观看国产黄色| 国产青榴视频在线观看网站| 国产成人AV综合久久| 色综合天天视频在线观看| 国产成人夜色91| 在线精品亚洲一区二区古装| 国产jizzjizz视频| 麻豆精选在线| 91免费观看视频| 日本午夜三级| 国产欧美视频综合二区| 国产亚洲欧美在线视频| 99色亚洲国产精品11p| 亚洲精品色AV无码看| 久久99精品国产麻豆宅宅| 欧美国产在线一区| 亚洲人成影视在线观看| 最新国产高清在线| 精品亚洲国产成人AV| 狠狠色成人综合首页| 国产一级α片| 福利在线不卡| 亚洲欧洲日产无码AV| 久久青草精品一区二区三区| 国产美女视频黄a视频全免费网站| 天天视频在线91频| 亚洲男人天堂网址| 亚洲天堂成人在线观看| 亚洲成人精品在线| 国产一区二区免费播放| 日a本亚洲中文在线观看| 久久人午夜亚洲精品无码区| 日韩成人在线视频| 99视频在线看| 亚洲伊人久久精品影院| 亚洲人成网站在线观看播放不卡| 影音先锋亚洲无码| 色噜噜狠狠色综合网图区| 久久精品中文无码资源站| 在线精品亚洲一区二区古装| 波多野结衣无码视频在线观看| 国产老女人精品免费视频| 欧类av怡春院| 日韩专区第一页| 99re精彩视频| 极品国产在线| 亚洲国产成人精品青青草原| 国产精品美人久久久久久AV| 久久香蕉国产线看观看精品蕉| 国产综合欧美| 亚洲国产精品无码AV| 欧美三级不卡在线观看视频| 亚洲日韩精品无码专区|