国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

Oracle數(shù)據(jù)庫性能調(diào)整與優(yōu)化架構的思考

2017-05-09 12:35鄒元杰
速讀·中旬 2016年8期
關鍵詞:數(shù)據(jù)庫

鄒元杰

摘 要:理解數(shù)據(jù)庫性能調(diào)整與優(yōu)化架構是一個很重要的環(huán)節(jié),對它們的理解將有助人們在優(yōu)化數(shù)據(jù)庫性能的過程中明確什么是性能調(diào)整與優(yōu)化、評價性能的指標有哪些、數(shù)據(jù)庫優(yōu)化應該從哪些方面進行以及優(yōu)化方法有哪些等。

關鍵詞:數(shù)據(jù)庫;性能調(diào)整;優(yōu)化架構

1性能調(diào)整與優(yōu)化概述

性能調(diào)整是通過優(yōu)化應用程序、修改系統(tǒng)參數(shù)和系統(tǒng)配置(硬件調(diào)整)來改變系統(tǒng)性能。性能調(diào)整包括硬件配置、操作系統(tǒng)與數(shù)據(jù)庫管理系統(tǒng)配置,以及對訪問這些組件的應用的詳細分析與優(yōu)化。

性能優(yōu)化是指進行有目的地調(diào)整組件以改善性能,使得數(shù)據(jù)庫的吞吐量最大限度地增加,相應的響應時間達到最小化。數(shù)據(jù)庫性能優(yōu)化的基本原則是:通過盡可能少的磁盤訪問獲得所需要的數(shù)據(jù)。性能調(diào)整與優(yōu)化的過程在某種程度上說是循環(huán)的,要達到性能優(yōu)化的目的,通常需要進行適當?shù)男阅苷{(diào)整,然后再查看優(yōu)化結果,如此反復,直到達到滿意的效果為止。

2數(shù)據(jù)庫系統(tǒng)性能評價指標

通常評價Oracle數(shù)據(jù)庫性能的指標主要有系統(tǒng)吞吐量、數(shù)據(jù)庫用戶響應時間、數(shù)據(jù)庫命中率、內(nèi)存使用情況以及所需的磁盤I/0量。

2.1系統(tǒng)吞吐量

吞吐量是指單位時間內(nèi)數(shù)據(jù)庫完成的SQL語句數(shù)目,以每秒鐘的事務量(tps)表示。為了使系統(tǒng)能夠達到它的最高吞吐量,將不得不犧牲系統(tǒng)性能的其他方面,如系統(tǒng)響應時間、容錯能力等 。

提高系統(tǒng)吞吐量有兩種方法:

①減少服務時間使得在同樣的資源環(huán)境下做更多的工作;

②減少總的響應時間使工作做得更快。

2.2用戶響應時間

響應時間是指用戶從提交SQL語句開始到獲得結果集的第一行所需要的時間,是應用做出反應的時間,以毫秒或秒表示。在任何一個系統(tǒng)中,吞吐量和響應時間作為調(diào)整目標通常是互相對立的。獲得滿意的用戶響應時間有兩個途徑:一是減少系統(tǒng)服務時間,即提高數(shù)據(jù)庫的吞吐量;二是減少用戶等待時間,即減少用戶訪問同一數(shù)據(jù)庫資源的沖突率 。

2.3數(shù)據(jù)庫命中率

這一比率是高速緩存命中總數(shù)除以自Oracle實例啟動后對高速緩存的查找總數(shù)。緩沖區(qū)高速緩存的命中率,對性能至關重要。由于從高速緩存中讀數(shù)據(jù)比從磁盤中讀數(shù)據(jù)的開銷要小得多,因此一般應使其盡可能高一些。

2.4內(nèi)存使用情況

內(nèi)存的使用情況主要體現(xiàn)在可共享內(nèi)存、永久性內(nèi)存和運行時內(nèi)存這三者的分配使用上。實現(xiàn)內(nèi)存合理使用,一般考慮的主要調(diào)整目標有兩條:

①使投資得到最大回報。把時間和精力用于解決很有可能產(chǎn)生最大利益的問題上;

②使爭用減到最小。瓶頸的特點在于延遲和等待,盡可能地消除或減少它。

2.5磁盤I/O

數(shù)據(jù)庫中發(fā)生的每個動作幾乎都將產(chǎn)生某種類型的I/O活動,該活動可以是邏輯的(在內(nèi)存中),也可以是物理的(在磁盤上)。通過降低不必要的I/O開銷可以增加用戶任務獲得的吞吐量,縮短用戶響應時間 。其中,磁盤I/O操作是數(shù)據(jù)庫性能最重要的方面,是計算機最大的開銷。因此,通過減少不必要的磁盤I/O,可以大大提高系統(tǒng)性能。

3數(shù)據(jù)庫性能優(yōu)化的主要方面

無論哪一個數(shù)據(jù)庫管理系統(tǒng)都會出現(xiàn)數(shù)據(jù)庫運行效率問題,要使數(shù)據(jù)庫的性能達到最大化,需從操作系統(tǒng)、硬件性能、數(shù)據(jù)庫結構、Oracle資源配置、Oracle實例性能和SQL 語句執(zhí)行等方面進行綜合考慮,這些方面是相互依賴的。

3.1調(diào)整與優(yōu)化數(shù)據(jù)庫設計

在開發(fā)信息系統(tǒng)之前,首要的任務是數(shù)據(jù)庫設計人員提供一個合理的數(shù)據(jù)庫設計方案。若數(shù)據(jù)庫結構設計有問題,Oracle系統(tǒng)本身提供的優(yōu)化技術不可能使得數(shù)據(jù)庫性能達到一個滿意的效果。在設計階段對數(shù)據(jù)庫設計進行論證和調(diào)整優(yōu)化,將保證后期開發(fā)維護中各種優(yōu)化技術發(fā)揮應有的作用,使得以更小的代價實現(xiàn)系統(tǒng)性能的最大的提升。

3.2調(diào)整應用程序結構設計

不同的應用程序體系結構對數(shù)據(jù)庫資源要求不同。目前,常用的應用程序結構有C/S兩層體系結構、B/S三層體系結構和多層體系結構。選擇使用哪種體系結構參考的指標主要包括:應用系統(tǒng)的規(guī)模、用戶數(shù)量、使用的數(shù)據(jù)庫數(shù)量、對網(wǎng)絡安全性和流量的要求等。

3.3優(yōu)化應用程序

SQL語句消耗了70%至90%的數(shù)據(jù)庫資源,而應用程序對數(shù)據(jù)庫的操作最終表現(xiàn)為SQL語句對數(shù)據(jù)庫的操作,通過對劣質SQL語句以及訪問數(shù)據(jù)庫方法的調(diào)整,可以顯著地改善一個系統(tǒng)的性能,對提高數(shù)據(jù)庫內(nèi)存區(qū)的命中率、減少I/O訪問、減少對網(wǎng)絡帶寬占用等有著非常重要的意義。

3.4調(diào)整數(shù)據(jù)庫內(nèi)存分配

內(nèi)存分配是在信息系統(tǒng)運行過程中進行的,通過調(diào)整內(nèi)存,提高緩沖區(qū)的命中率,將大大影響系統(tǒng)的性能。最佳的調(diào)整時機是在數(shù)據(jù)庫文件物理調(diào)整和磁盤I/O調(diào)整之前進行。

3.5調(diào)整與優(yōu)化磁盤I/O

影響磁盤I/O性能的主要原因有磁盤競爭、I/O次數(shù)過多和數(shù)據(jù)塊空間的分配管理等,為了避免與I/O相關的性能瓶頸,監(jiān)控磁盤I/O并對其進行調(diào)整非常重要。

3.6配置和調(diào)整操作系統(tǒng)性能

Oracle數(shù)據(jù)庫服務器的整體性能很大程度上依賴于操作系統(tǒng)的性能,如果操作系統(tǒng)不能提供優(yōu)越的性能,那么無論怎么調(diào)整數(shù)據(jù)庫也不能發(fā)揮其應有的性能。實施操作系統(tǒng)級調(diào)整的主要目的是減少內(nèi)存交換,減少分頁,使SGA可留駐內(nèi)存 ??梢詮囊韵聨讉€方面著手:

①為Oracle規(guī)劃系統(tǒng)資源;

②調(diào)整計算機系統(tǒng)中的內(nèi)存配置;

③為Oracle數(shù)據(jù)庫服務器設置操作系統(tǒng)進程優(yōu)先級;

④對OS參數(shù)進行設置。

3.7配置與調(diào)整數(shù)據(jù)庫服務器硬件性能

與數(shù)據(jù)庫有關的硬件設計主要包括CPU、內(nèi)存、磁盤子系統(tǒng)和網(wǎng)絡這四個部分 。許多典型的性能問題是由不充足的或配置失當?shù)挠布M件導致的,其中計算機內(nèi)存和CPU嚴重影響數(shù)據(jù)庫系統(tǒng)的能力。硬件調(diào)整是為要求的工作量提供足夠的硬件資源的行動,包括數(shù)據(jù)庫大小估計與容量規(guī)劃。

4優(yōu)化方法

在Oracle環(huán)境下,數(shù)據(jù)庫性能優(yōu)化調(diào)整原則上按以下幾步進行:

4.1有條理的采用各種監(jiān)測手段收集數(shù)據(jù),發(fā)現(xiàn)性能問題。

4.2做出令人信服的調(diào)整(一次只建議改動一兩處)。

4.3收集統(tǒng)計信息,得到調(diào)整后的性能。

4.4重復以上操作直至性能調(diào)整滿意為止。

猜你喜歡
數(shù)據(jù)庫
Designer測試大數(shù)據(jù)預定義均衡配置
MemSQL獲3000萬美元D輪融
數(shù)據(jù)庫
數(shù)據(jù)庫
數(shù)據(jù)庫
數(shù)據(jù)庫
數(shù)據(jù)庫
數(shù)據(jù)庫
SQL語言在電信業(yè)務數(shù)據(jù)庫數(shù)據(jù)查詢中的應用
數(shù)據(jù)庫