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

基于ORACLE數據庫應用系統的優化探討

2016-08-12 02:15:34張秋鳳
中國新通信 2016年13期

張秋鳳

【摘要】 本文通過對硬件性能、數據庫系統參數以及應用程序等方面的闡述,總結了基于ORACLE數據庫的應用系統的優化方法。

【關鍵詞】 oracle數據庫 應用系統 數據庫優化

一、引言

某政府機關內、外網部署了大量的業務應用系統,數據庫主要采用ORACLE數據庫。軟硬件已經使用7-8年以上,數據庫每天都在更新。隨著應用系統的增加和業務數據量的增長,導致整個Oracle數據庫系統的性能不斷下降。為了保證這些信息系統能夠高效運行,需要進行性能優化調整。本文通過對硬件性能、數據庫系統參數以及應用程序等方面進行有效性的操作優化,來提升業務應用系統的性能。

二、基于ORACLE數據庫應用系統的優化

本文探討的是從硬件性能、數據庫、應用程序方面進行優化,以便提高Oracle數據庫的性能效率,對業務應用系統進行整體優化。

2.1硬件性能的優化

硬件設計時要考慮承載能力和生命周期,同時通過調整相關的參數設置,確保硬件提供給業務應用系統充足的資源。

2.1.1服務器磁盤的優化

設定虛擬內存、檢查應用軟件或者驅動程序、減少桌面圖標、減少字體種數、刪除隨機啟動程序、取消背景和關閉activedesktop。關注磁盤錯誤信息和磁盤空間大小的變化,必要時增加磁盤容量。

2.1.2服務器CPU的優化

檢查空閑期間、高峰期間以及平均的CPU利用率。建議峰值在85%以下。如果CPU的利用率過高,增加一定數量的CPU來解決利用率過高的問題。

2.1.3服務器內存的優化

改變頁面文件的位置、改變頁面文件的大小、禁用頁面文件、清空頁面文件、調整高速緩存區域的大小、監視內存以及及時釋放內存空間、優化內存中的數據,并且可以采用一些優化軟件來優化內存,使得緩存、內存達到一個穩定值。

2.1.4網絡的優化

網絡優化是指通過各種硬件或軟件技術使網絡性能達到我們需要的最佳平衡點。要保證網絡上的帶寬流量和網絡的速度。應用程序有C/S , B/S模式。C/S模式應用程序的客戶端應用程序之間網絡吞吐量大,引起的網絡I/O小,數據庫性能強。

2.2數據庫設計的優化

2.2.1調整數據結構的設計

開發信息系統之前要完成數據結構的設計,需要考慮是否使用Oracle數據庫的分區功能,對于信息系統經常訪問的數據庫表是否需要建立索引等。根據使用方式和物理結構對數據庫的影響,對數據庫中的邏輯對象進行分類(包括將系統數據和用戶數據分開、一般數據和索引數據分開、低活動表和高活動表分開等等)。數據庫邏輯設計的結果應當符合如下準則:(1)把以同樣方式使用的段類型存儲在一起;(2)按照標準使用來設計系統;(3)存在用于例外的分離區域;(4)最小化表空間沖突;(5)將數據字典分離。

2.2.2調整數據庫SQL語句

應用程序的執行最終將歸結為數據庫中的SQL語句執行,因此SQL語句的執行效率最終決定了Oracle數據庫的性能。可以采用Oracle公司推薦使用的Oracle語句優化器(Oracle Optimizer)和行鎖管理器(Row-Level Manager)來調整優化SQL語句。還可以采用下面的優化方法:

1)使用快照和顯形圖等分布式數據庫對象,減少對數據庫的查詢次數,即減少對系統資源的請求;

2)盡量使用相同的或非常類似的SQL語句進行查詢,充分利用SQL共享池中的已經分析的語法樹,要查詢的數據在SGA中命中的可能性也會大大增加。

3)避免不帶任何條件的SQL語句的執行。

4)如果對有些表中的數據有約束,在建表的SQL語句用描述完整性來實現,不用SQL程序中實現。

2.2.3調整服務器內存分配

內存分配是在信息系統運行過程中優化配置的,可以根據數據庫運行狀況調整數據庫系統全局區(SGA區)的數據緩沖區、日志緩沖區和共享池的大小。還可以調整程序全局區((PGA區)的大小。正確的SGA|、PGA大小的設置對數據庫的性能至關重要。

2.2.4合理設計和管理表

1)利用表分區。分區將數據在物理上分隔開,將不同分區的數據保存在處于不同磁盤上的數據文件里。當對這個表進行查詢時,只需要在表分區中進行掃描,而不必進行全表掃描,明顯縮短了查詢時間,同時將數據傳輸對磁盤I/O競爭均勻地分散開。

2)避免出現行連接和行遷移。在建表時,充分估計到將來可能出現的數據變化,正確設置pctfree和pctused參數,盡量減少數據庫中出現行鏈接和行遷移。

3)使用別名。別名就是將表名、列名在查詢中以一個字母為別名,查詢速度可提升1.5倍。

2.2.5索引Index的優化設計

1)管理組織索引。索引把表中的邏輯值映射到RowID,能夠快速定位數據的物理地址(大型表分區后建立分區索引),可以大大加快數據庫的查詢速度。

2)使用聚簇。聚簇是根據共同碼值將多個表的數據存儲在同一個Oracle塊中,這時檢索一組Oracle塊就同時得到兩個表的數據,從而減少需要存儲的Oracle塊,提高應用程序的性能。

3)ORACLE使用索引的基本的條件。where子名中的這個字段,必須是復合索引的第一個字段,且不應該參與任何形式的計算。

2.2.6多CPU并行查詢PQO(Parallel Query Option)方式的利用

對于多CPU系統,考慮采用Parallel Query Option(PQO,并行查詢選項)方式進行數據庫操作。不僅可以在多個CPU間分配SQL語句的請求處理,當所查詢的數據處于不同的磁盤時,一個個獨立的進程可以同時進行數據讀取。

2.3應用程序的優化

2.3.1盡量使用框架結構

應用程序的體系結構確定后,應盡量使用成熟的框架來實現。實踐證明,成熟的框架開發模式可以大大提高程序效率和易用性。節省開發時間,同時使得后期系統的優化和變更更容易。最重要的是,對性能優化有很大幫助。

2.3.2數據庫連接優化

1)使用直接的OLE DB數據庫連接方式。通過ADO可以使用兩種方式連接數據庫,一種是傳統的ODBC方式,一種是OLE DB方式。ADO是建立在OLE DB技術上的,為了支持ODBC,必須建立相應的OLE DB到ODBC的調用轉換,而使用直接的OLE DB方式則不需轉換,從而提高處理速度。

2)使用Connection Pool機制。在數據庫處理中,資源花銷最大的是建立數據庫連接,而且用戶還會有一個較長的連接等待時間。解決的辦法就是復用現有的Connection,也就是使用Connection Pool對象機制,可以大大地提高系統的響應速度。

2.3.3 HQL語句的調整優化

系統在數據層使用hibernate框架,因此對hql語句進行優化也可以提高系統性能,包括:

1)盡量使用索引。

2)在多張表進行聯合查詢時,應注意各表的聯查次序及連接方式。

3)在子查詢中慎重使用IN或者NOT IN語句,使用where (NOT) exists的效果要好得多。

4)慎重使用視圖的聯合查詢,尤其是比較復雜的視圖之間的聯合查詢。一般對視圖的查詢最好都分解為對數據表的直接查詢效果要好一些。

5)可以在參數文件中設置SHARED_POOL_ RESERVED_SIZE參數,這個參數在SGA共享池中保留一個連續的內存空間,連續的內存空間有益于存放大的SQL程序包。

6)注意建立索引時的列順序。在多個列上面建立索引的時候,索引中列順序的不同,可以導致索引的作用效果不同,對性能產生很大的影響。

例如:假設有一個索引,名字為Idx_test,包含了表中的三個值,三個列在索引中的順序為:ID,SomeDate,SomeString,按照選擇性由大到小的順序排列(選擇性大小描述了數據差異的大小)。

對于這個索引,只有在查詢中的Where/Join的列按照索引中的列的順序使用的時候才是有效的。類似下面的查詢結構中是能夠發揮作用的,如:

… WHERE ID = @ID AND SomeDate = @dt AND SomeString = @str

… WHERE ID = @ID AND SomeDate = @dt

… WHERE ID = @ID

如果查詢是下面這樣的,如:

… WHERE SomeDate = @dt

或者… SomeDate = @dt AND SomeString = @str ,那么,這個索引就不會在上面的查詢中使用了,那么查詢在執行的時候就會掃描整表了。

三、結束語

提高系統性能需要一種系統的整體的方法。對性能問題的考慮應貫穿于開發階段的全過程,不應只在出現問題時才考慮性能問題。

為了保證應用系統的高效性和穩定性,本文從硬件性能、數據庫系統參數以及應用程序等方面,提出了具有針對性的優化方法。基于oracle數據庫應用系統的優化體現在系統設計、開發、運行等各個階段,需要程序員和數據庫管理員認真分析問題,對數據庫及應用程序等進行調整和性能調節,從而保證應用系統的高效、穩定運行。

參 考 文 獻

[1] 李學忠.ORACLE數據庫的優化使用.電子工藝技術,2003.24(5):219-224.

[2] 賈小恒.淺析Oracae數據庫的優化.軟件時空,2011.11.

[3] 符浩.ORACLE數據庫優化理論探討.科技資訊,2012.11.

[4] 陳建云,林春艷,曾昊川. ORACLE應用系統數據庫的優化探討.信息安全與技術,2014.12.

主站蜘蛛池模板: 亚洲精品国产综合99久久夜夜嗨| 国产精品lululu在线观看| 亚洲性日韩精品一区二区| 国产精品人人做人人爽人人添| 找国产毛片看| 国产欧美日韩免费| а∨天堂一区中文字幕| 国产一区二区影院| 青青青草国产| 久久一级电影| 91久久偷偷做嫩草影院| 国产亚洲精久久久久久久91| 青青草欧美| 无码 在线 在线| 99这里只有精品免费视频| 亚洲欧美不卡中文字幕| 亚洲国产成人精品青青草原| 国产精品久久久久久久久kt| 日本一区二区不卡视频| 欧美精品xx| 亚洲一级毛片在线播放| 天堂岛国av无码免费无禁网站| 亚洲成人网在线播放| 精品久久久久久成人AV| 广东一级毛片| 精品少妇人妻一区二区| www.91在线播放| 99在线观看免费视频| 日本手机在线视频| 亚洲最大福利视频网| 国产一级毛片高清完整视频版| 四虎影视库国产精品一区| 亚洲Av综合日韩精品久久久| 日韩天堂视频| 色天天综合久久久久综合片| 亚洲综合第一页| 欧美日本激情| 色有码无码视频| 国产va免费精品| 免费人成又黄又爽的视频网站| 无码免费的亚洲视频| 国产精品男人的天堂| 美女潮喷出白浆在线观看视频| 日本道综合一本久久久88| 中文字幕一区二区人妻电影| 欧洲亚洲一区| 亚洲av无码成人专区| 精品国产香蕉伊思人在线| 国产玖玖视频| 亚洲综合九九| 久久这里只有精品66| 精品少妇人妻无码久久| 91美女视频在线| 国产91在线|中文| 久久久国产精品无码专区| 日韩不卡高清视频| 精品免费在线视频| 国产黑丝一区| 亚洲无码免费黄色网址| 国内视频精品| 欧美啪啪一区| 中文成人在线| 国产小视频a在线观看| 国产91久久久久久| 色综合天天娱乐综合网| 国产福利在线免费| 午夜国产精品视频黄| 亚洲天堂网视频| 91色国产在线| 99人体免费视频| 2021最新国产精品网站| 无遮挡一级毛片呦女视频| 狼友av永久网站免费观看| 国产欧美日韩视频怡春院| 国产jizz| 69国产精品视频免费| 超清无码一区二区三区| 国产无码精品在线播放| 2021亚洲精品不卡a| 美女扒开下面流白浆在线试听| 亚洲成a人片77777在线播放 | 欧美国产成人在线|