久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

Oracle數(shù)據(jù)庫在統(tǒng)計頁面的優(yōu)化實例 - 建站學(xué)

 jacklopy 2011-04-20

Oracle數(shù)據(jù)庫在統(tǒng)計頁面的優(yōu)化實例

時間:2010-06-24 Tag:oracle   統(tǒng)計頁面  
    最近一段時間在做一個統(tǒng)計頁面的優(yōu)化工作,項目接近尾聲,,所以把其中的一些優(yōu)化的心得與大家分享,。首先介紹一下這個項目的環(huán)境,由于這是一個老項目,,而且開發(fā)人員基本上都不在了,,采用的是ASP+ORACLE,OH MY GOLD,!頁面主要的功能是對信件的各種狀態(tài)進行統(tǒng)計(一共有13個狀態(tài)),,在沒有優(yōu)化之前,頁面的訪問速度那叫一個慢啊,,基本上統(tǒng)計一個月的信件數(shù)量需要5分鐘的時間或者更長,,所以優(yōu)化性能就成為了必然。我們將分步驟的對功能進行優(yōu)化,。
  1. 我們將在oracle數(shù)據(jù)庫中為要做查詢語句中的字段建立索引,,這一步應(yīng)該自然而然就會想到的,因為創(chuàng)建索引可以大大提高系統(tǒng)的性能,。友情提醒:千萬不要盲目的建立索引,,有時候會得不償失。
  2. 在sql語句中加入oracle hints,之所以用到了這個是因為使用到了一個工具LECCO SQL Expert Pro for Oracle(如圖),,這個工具將為我們對SQL語句不同的組合進行篩選(在SQL RUN Time中會羅列出系統(tǒng)給出方案的消耗時間),,并且將oracle hints直接運用到其中,用戶可以選擇時間消耗最少的SQL語句。工具使用起來非常容易,,也為我們的優(yōu)化工作節(jié)省的不少時間,。

 

  1. 當我們對SQL語句優(yōu)化完了之后,就是要開始對頁面進行處理了,,由于頁面中使用了大量的嵌套循環(huán),,所以我們的原則是減少循環(huán)的次數(shù),因為嵌套的循環(huán)越多,,效率越低,。能用SQL函數(shù)的盡量在SQL語句中完成,不要拋到頁面中執(zhí)行,。由于頁面代碼并交凌亂,,所以我們還要對頁面代碼進行整理,雖然不一定起到什么作用,,但是整理后的代碼看起來會比較清爽,。
  2. 通過上面的步驟,我們完成了優(yōu)化的大部分工作,,但是結(jié)果并沒有像我們想象中的一樣,,頁面還是訪問的很慢。這讓我們很郁悶,,直到我們使用的組合索引后,情況變得大大改觀,,我們之前只是單一的為每個字段建立索引,,但是這次我們要將這些索引按一定的順序組合起來(如圖),這里我要強調(diào)的是索引的順序必須從后往前的也就是說是按SQL語句中從最后一個條件往前推,。(當條件只有一個的情況下,,oracle也會根據(jù)自己的優(yōu)化策略適當?shù)倪x用我們創(chuàng)建的這個組合索引)

   

  通過使用組合索引,我們訪問的頁面的速度大大提高,,現(xiàn)在不管是一個季度還是一整年的信件統(tǒng)計,,基本上都只需要1秒鐘的時間。呵呵~~~ 

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購買等信息,,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請點擊一鍵舉報,。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多