posts - 9,  comments - 10,  trackbacks - 0
          1、應用程序設計的優(yōu)化調整
          應用程序設計的調整修改原則;根據(jù)不同的業(yè)務需求,從不同角度設計數(shù)據(jù)庫,其設計核心是對數(shù)據(jù)的訪問操作。常見的優(yōu)化手段有:
          (1)將長的數(shù)據(jù)分段放置;
          (2)盡量重復命名用SQL語句,以充分利用庫高速緩存(Library Cache);
          (3)優(yōu)化SQL語句,減少條件判斷的使用。
          2、對數(shù)據(jù)讀寫的優(yōu)化調整
          可以利用ORACLE本身帶的utlbstat和Utlestat這兩個SQL程序包收集數(shù)據(jù)庫運行時的一些性能狀況。最佳的采集時機是:當一個新應用程序剛開始啟動的時候。這時最能反映出應用程序對數(shù)據(jù)的讀寫要求。上述兩個SQL程序包采集到的信息主要是從V$SYSSTAT、V$LATCH、V$ROLLBACK、V$SESSION、V$LIBRARYCACHE等系統(tǒng)動態(tài)表中得到,我們也可以專門對這些表進行單獨的分析。
          3、內存管理的優(yōu)化調整
          對內存的管理,主要是從合理分配交換空間的使用;物理頁調換的效率;高速緩沖區(qū)利用率如何等方面分析。涉及到內存使用的ORACLE性能優(yōu)化調整主要有以下幾個方面:
          (1)調整ORACLE數(shù)據(jù)塊(Blocks)和數(shù)據(jù)緩沖區(qū)((Database Buffers)的大小,主要參數(shù)是db_block_size;
          (2)優(yōu)化日志緩沖區(qū)(Redolog Buffers)的大小,主要參數(shù)是Log_buffers;
          (3)優(yōu)化共享池(Shared Pool)的大小,主要參數(shù)是Shared_pool _size;
          (4)確認數(shù)據(jù)直接讀寫Cache的有效性;
          (5)分配足夠合理的庫高速緩存(Library Cache)空間
          (6)設置合適的任務高速緩存區(qū)游標(Session cache Cursors)值,主要參數(shù)是Session_cached_cursors的初始化值;
          (7)在共享池空間內,預先鎖定足夠大的數(shù)據(jù)塊(Blocks)給PL/SQL使用,此調整主要關系到需要大量使用存儲過程(Storage Procedure)的程序應用。
          注釋:本文所提到的參數(shù),均可從ORACLE的initSID.ora文件中查找和修改;
          也可從V$PARAMETER表中查詢。
          4、磁盤I/O的優(yōu)化調整
          磁盤I/O的瓶頸是較容易發(fā)現(xiàn)的。均衡磁盤I/O操作可以提高數(shù)據(jù)的讀寫速度;同時應該將不同的數(shù)據(jù)文件和表空間平均地分配在的有的可使用磁盤上。主要的優(yōu)化調整手段有:
          (1) 為數(shù)據(jù)表建立索引,并將索引與原表分開放置;索引的使用貴精而不貴多;
          (2) 對需要經常使用插入(INSERT)和修改(UPDATE)操作的應用程序,應將日志文件(Redolog files)放置在獨自的磁盤設備上,通過與其它的磁盤分開,來提高寫數(shù)據(jù)的速度。
          (3) 檢查數(shù)據(jù)表空間否碎片過多,并且及時收集整理數(shù)據(jù)庫碎片;
          (4) 使用更多的數(shù)據(jù)庫緩沖區(qū)去高速讀寫數(shù)據(jù),以便減少I/O操作;
          (5) 選擇合理的文件系統(tǒng)類型;例如:我局的“九七”工程系統(tǒng)就是選用DIGTAL UNIX的高級文件管理系統(tǒng)類型(ADVFS)來代替普通的文件系統(tǒng)類型(UFS);
          (6) 在可能的條件下,盡量購買更多的磁盤來擴容系統(tǒng)容量。
          5、CPU使用的優(yōu)化調整
          本文討論的CPU優(yōu)化調整以UNIX操作系統(tǒng)為例。CPU使用時間分四個部分;用戶(usr);系統(tǒng)(sys);I/O等待wio;空閑(idle)。通常應用程序消耗大量的用戶CPU時間,少量的系統(tǒng)CPU時間。一般UNIX操作系統(tǒng)運行時的合理CPU是:
          Total CPU (user+sys):80 percent
          Wio:10 percent
          Idle:10 percent
          如果I/O等待的時間值很高,就應該分析系統(tǒng)的I/O性能:如果系統(tǒng)的運行負荷很重并且CPU空閑值很高,那么系統(tǒng)可能出現(xiàn)內存競爭問題。主要的優(yōu)化調整手段有:
          (1) 將所有的ORACLE用戶、進程保持為一CPU優(yōu)先級;
          (2) 使用多CPU處理器的系統(tǒng),并與用戶進程緊密捆綁;
          (3) 靈活使用Client/Server結構;
          (4) 對大量的Exports/Imports事務處理,使用單任務工作方式。
          6、ORACLE資源競爭的優(yōu)化調整
          如果發(fā)現(xiàn)數(shù)據(jù)庫運行緩慢,而問題又并非出自CPU或者磁盤競爭等方面。那么問題肯定是由ORACLE本身的資源競爭而引起的。減少ORACLE資源競爭的方法有:
          (1)使用V$tables等動態(tài)表的信息去分析數(shù)據(jù)庫的運行情況,將各資源競爭段隔離解決:
          (2)減少數(shù)據(jù)庫資源閂(Latch Frees)和回滾段(Rollback Segmets)的競爭;
          (3)減少日志緩沖閂(Redolog Buffer Latches)的競爭;
          (4)減少并行訪問(Parallel Query)的競爭;
          (5) 適當優(yōu)化調整操作系統(tǒng)的內核參數(shù):特別需要注意的是,對于不同的操作系統(tǒng),其參數(shù)調整的區(qū)別是非常大的。
          7、ORACLE并行訪問服務(Parallel Server)的優(yōu)化調整
          對ORACLE Parallel Server方面的調整主要是減少DLM(Distributed lock Manager)瓶頸,優(yōu)化手段有以下幾方面;
          (1) 盡量避免索引競爭。由于在ORACLE數(shù)據(jù)庫內索引將會大量的使用,并且是數(shù)據(jù)庫競爭的主要原因。解決的要點是:合理建立索引、合理選擇關鍵字、對應不同的數(shù)據(jù)塊使用不同的索引分布:
          (2) 避免Free List競爭。解決的要點是:建立多個Free lists和多個Free list groups,將Free list headers放置在不同的數(shù)據(jù)塊上;
          (3) 避免鎖競爭。強占鎖是OPS中最主要的優(yōu)化因素。只有適當?shù)貙贸绦驅ο到y(tǒng)資源的請求進行隔離,才是最有效解決鎖問題的辦法;
          (4) 減少頻繁的磁盤I/O讀寫。把每個Instance的Rollback segments 和Redologs放置到不同的磁盤上,這樣可以將每個節(jié)點對數(shù)據(jù)的讀寫競爭降至最低。
          (5) 常用來分析和監(jiān)控OPS(ORACLE Parallel Server)的狀態(tài)的系統(tǒng)級動態(tài)表有以下幾類:
          V$SESSION-WAIT
          V$SESSION_EVENT
          V$SYSTEM_EVENT
          V$SQL_AREA
          V$CACHE
          V$PING
          posted on 2007-06-13 14:56 老董 閱讀(407) 評論(0)  編輯  收藏 所屬分類: Oracle
          <2007年6月>
          272829303112
          3456789
          10111213141516
          17181920212223
          24252627282930
          1234567

          常用鏈接

          留言簿(1)

          隨筆分類(9)

          隨筆檔案(9)

          文章分類(3)

          文章檔案(3)

          友情鏈接

          • 戀戀冬季
          • 一個很值得收藏的關于軟件測試方面的blog

          搜索

          •  

          積分與排名

          • 積分 - 12726
          • 排名 - 2168

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 江山市| 昌平区| 颍上县| 舒兰市| 冕宁县| 宣汉县| 贺州市| 防城港市| 田阳县| 济源市| 敦化市| 安徽省| 延边| 鹤峰县| 本溪市| 巫山县| 阿拉善左旗| 乌兰浩特市| 博乐市| 东宁县| 益阳市| 宜君县| 东辽县| 上栗县| 尖扎县| 大宁县| 翁牛特旗| 宜城市| 胶州市| 华宁县| 山东| 城市| 凉城县| 延吉市| 来安县| 乐至县| 土默特左旗| 桐乡市| 图们市| 金乡县| 陆丰市|