王彰忠
摘要??? 采用Oracle數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)可以讓各項(xiàng)事務(wù)方式變得多樣化,特別在對(duì)海量數(shù)握進(jìn)行下處理擴(kuò)展操作更加簡(jiǎn)單,這也是該系統(tǒng)被廣泛應(yīng)用于各類企業(yè)級(jí)數(shù)據(jù)處理中的主要原因,但是因應(yīng)用環(huán)境的不同,數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)在實(shí)際應(yīng)用中還是存在些性能上的問(wèn)題,因此,為了確保數(shù)據(jù)應(yīng)用系統(tǒng)的信息的有效性和穩(wěn)定性,很多行業(yè)都開(kāi)始加強(qiáng)信息系統(tǒng)的構(gòu)建,以便各類數(shù)據(jù)利用的最大化,而要實(shí)現(xiàn)這一目標(biāo),就需要采用Oracle數(shù)據(jù)庫(kù)集群技術(shù)?;诖?,本文對(duì)Oracle數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)性能優(yōu)化進(jìn)行了分析,并提出了其集群技術(shù)的實(shí)施策略。
【關(guān)鍵詞】Oracle數(shù)據(jù)庫(kù) 集群技術(shù) 性能優(yōu)化
Oracle數(shù)據(jù)庫(kù)應(yīng)用程序的功能非常強(qiáng)大,可以同時(shí)對(duì)特定狀態(tài)中的多個(gè)問(wèn)題進(jìn)行解,大幅度提升了各類事務(wù)處理的效率,但是由于對(duì)數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)進(jìn)行設(shè)計(jì)時(shí),無(wú)法完全預(yù)測(cè)到系統(tǒng)運(yùn)行后業(yè)務(wù)處理方面的所有問(wèn)題,都是在系統(tǒng)運(yùn)行之后,其性能方面的問(wèn)題才慢慢出現(xiàn)。因此,需要在系統(tǒng)運(yùn)行過(guò)程中及時(shí)發(fā)現(xiàn)問(wèn)題、處理問(wèn)題,不斷對(duì)Oracle數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的性能進(jìn)行優(yōu)化,并充分運(yùn)用集群技術(shù),以確保oraele數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)數(shù)據(jù)處理與服務(wù)能力的穩(wěn)定性。
1 Oracle數(shù)據(jù)庫(kù)與集群技術(shù)概述
1.1 Oracle數(shù)據(jù)庫(kù)概述
Oracle數(shù)據(jù)庫(kù)可以對(duì)各類數(shù)據(jù)之間存在的關(guān)聯(lián)性進(jìn)行分析,再依據(jù)所得數(shù)據(jù)創(chuàng)立出對(duì)應(yīng)的數(shù)據(jù)庫(kù)。Oracle即可以直接應(yīng)用于關(guān)系數(shù)據(jù)庫(kù)當(dāng)中的計(jì)算機(jī)系統(tǒng),還能針對(duì)商業(yè)數(shù)據(jù)庫(kù)管理系統(tǒng)的實(shí)際需求,為其提供完整的用戶和服務(wù)相關(guān)的系統(tǒng)架構(gòu),還能通過(guò)SQL*NET擁有的軟件層與若干個(gè)操作系統(tǒng)通信協(xié)議實(shí)施融合。Oracle關(guān)系數(shù)據(jù)庫(kù)被應(yīng)用之后,可以創(chuàng)立出多樣化的分布條件,供以其他系統(tǒng)使用,即可以單點(diǎn)查詢也可以多點(diǎn)查詢,進(jìn)而確保各類數(shù)據(jù)平臺(tái)可以安全、穩(wěn)定的運(yùn)性。
1.2 集群技術(shù)概述
服務(wù)器集群技術(shù)主要是指將一組原本分開(kāi)且獨(dú)立存在服務(wù)器,通過(guò)集成方式將其構(gòu)建成為網(wǎng)絡(luò)里的單一系統(tǒng),并對(duì)該系統(tǒng)實(shí)施統(tǒng)一性管理。而這個(gè)系統(tǒng)主要的功能就為客戶的工作站提供高效、可靠的服務(wù)。通常單臺(tái)服務(wù)器集群會(huì)包括很多個(gè)具備共享數(shù)據(jù)存儲(chǔ)能力和空間的單個(gè)服務(wù)器,而各臺(tái)服務(wù)器之間又要經(jīng)由內(nèi)部局域網(wǎng)完成通訊,如果其中的某臺(tái)節(jié)點(diǎn)服務(wù)器出現(xiàn)故障時(shí),那么該服務(wù)器內(nèi)的所有運(yùn)行程序馬上會(huì)被另一個(gè)服務(wù)器進(jìn)行自動(dòng)接管,這樣一來(lái)客戶就可以在最短的時(shí)間內(nèi)連接到新的應(yīng)用服務(wù)上器上,從而確保客戶數(shù)據(jù)平臺(tái)的正常運(yùn)行。
2 Oracle數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)性能優(yōu)化技術(shù)分析
2.1 CPU性能優(yōu)化
Oracle數(shù)據(jù)庫(kù)對(duì)CPU服務(wù)器進(jìn)行使用時(shí),其使用能力多數(shù)都在95%以下,一旦超過(guò)這個(gè)數(shù)據(jù)則其運(yùn)行效率會(huì)下降。因此,在某一種特定條件下,可對(duì)CPU實(shí)施時(shí)間合成處理,讓CPU實(shí)際運(yùn)行的時(shí)間能在CPU系統(tǒng)運(yùn)行時(shí),將其使用的時(shí)間加入到對(duì)應(yīng)操作系統(tǒng)具體的應(yīng)用程序內(nèi),若這個(gè)時(shí)想Oracle數(shù)據(jù)庫(kù)內(nèi)部的CPU應(yīng)用程序其使用的時(shí)間超過(guò)為90%,則表示CPU占用時(shí)間過(guò)長(zhǎng),出現(xiàn)這一情況對(duì)于金融系統(tǒng)而言,就應(yīng)該對(duì)其被占用的時(shí)間長(zhǎng)度進(jìn)行相應(yīng)的調(diào)整,以使系統(tǒng)既處于安全狀態(tài),又可以持續(xù)發(fā)展,也就是說(shuō)如果CPU熱度過(guò)高或者系統(tǒng)運(yùn)行緩慢,就無(wú)法確??蛻臬@得金融數(shù)據(jù)的實(shí)時(shí)性,因此,對(duì)Oracle數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)中的CPU利用性能進(jìn)行優(yōu)化至關(guān)重要。
2.2 應(yīng)用程序方面的性能優(yōu)化
(1)調(diào)整Oracle的內(nèi)存參數(shù)。Oracle的內(nèi)存調(diào)整難度較大,而且工作繁瑣,究其原因是由于Oracle內(nèi)存系統(tǒng)和很多參數(shù)都相關(guān)性,因此,在對(duì)Oracle內(nèi)存進(jìn)行調(diào)整時(shí),首先要對(duì)sharedpool的參數(shù)進(jìn)行優(yōu)化,以確保共享池內(nèi)存的容量既可以達(dá)到各平臺(tái)系統(tǒng)的需求或者標(biāo)準(zhǔn),又能夠保障Oracle數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的正常運(yùn)行。其次工程師還需要對(duì)SQL的語(yǔ)句負(fù)載能力與輸出情況進(jìn)行調(diào)整,以免Oracle數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)受到SQL語(yǔ)句的干擾而運(yùn)行緩慢。
(2)全面優(yōu)化SQL語(yǔ)句,為了確保SQL語(yǔ)句得到全面優(yōu)化,要先找到SQL語(yǔ)句的精髓,以使得數(shù)據(jù)結(jié)構(gòu)不會(huì)出現(xiàn)差錯(cuò),并實(shí)現(xiàn)對(duì)SQL語(yǔ)句全面優(yōu)化的目標(biāo),其次,確保搜索I/O活動(dòng)時(shí)具備超強(qiáng)的有效性,并使引擎數(shù)量大量減少,這樣能真正提升系統(tǒng)的表搜索質(zhì)量與效率。
2.3 內(nèi)存分配方面的性能優(yōu)化
Oracle數(shù)據(jù)庫(kù)的內(nèi)存系統(tǒng)主要包括3類,共享池、數(shù)據(jù)緩沖區(qū),還有就是日志+程序全局緩沖區(qū)。就現(xiàn)在的情況來(lái)看,Oracle數(shù)據(jù)庫(kù)系統(tǒng)并沒(méi)有一個(gè)內(nèi)存分配完整優(yōu)化方案,調(diào)整時(shí)必須要通過(guò)存儲(chǔ)器分配方案,才能進(jìn)一步對(duì)內(nèi)存分配方案進(jìn)行完善,從而使得Oracle數(shù)據(jù)庫(kù)存儲(chǔ)器分配處理的有效性,但要注意在該過(guò)程中先對(duì)物理內(nèi)存給予準(zhǔn)確判斷,并在對(duì)某類參數(shù)文件進(jìn)行初始化的時(shí)候,就要進(jìn)行準(zhǔn)確判斷與落實(shí)。此外,因Oracle數(shù)據(jù)庫(kù)的應(yīng)用程序?qū)嶋H內(nèi)存會(huì)被存儲(chǔ)器大小而影響,因此,工程師還需要對(duì)內(nèi)存中的物理內(nèi)存進(jìn)行適當(dāng)調(diào)整,正常情況下物理內(nèi)其占用的比例需保持在50%上下。
3 Oracle數(shù)據(jù)庫(kù)集群技術(shù)的實(shí)施方法分析
3.1 硬件方面
強(qiáng)大的硬件設(shè)備是Oracle數(shù)據(jù)庫(kù)集群技術(shù)具體的應(yīng)用價(jià)值得以充分發(fā)揮的基礎(chǔ)保障,如果硬件設(shè)備達(dá)不到相關(guān)標(biāo)準(zhǔn),該技術(shù)就發(fā)揮不了優(yōu)勢(shì)?,F(xiàn)以某醫(yī)院的集群技術(shù)應(yīng)用為例,如果想要確保集群技術(shù)的超高利用率與完整性,依據(jù)該醫(yī)院實(shí)際的規(guī)模大小,其具體硬件設(shè)備必須要達(dá)到如下要求:
(1臺(tái)HPDL380服務(wù)器2臺(tái)(現(xiàn)將其設(shè)為A和B)及HPMSA1000磁盤陣列柜一臺(tái)。
(2)兩臺(tái)服務(wù)器的具體配標(biāo)準(zhǔn)如下:
SCSI硬盤至少2塊,HP集群專用陣列卡1塊,集成網(wǎng)卡1塊,3COM千兆網(wǎng)卡1塊,光纖控制卡1塊。
(3)磁盤陣列柜是集群技術(shù)實(shí)施必需要用到的硬件設(shè)備,必須擁有6塊SCSI硬盤和HP集群專用陣列卡1塊。
(4)選取心跳網(wǎng)線一根,光纖磁盤柜專業(yè)光纖電纜2根。
3.2 軟件方面
除了對(duì)應(yīng)用的硬件設(shè)置,還需要全面強(qiáng)化軟件方面,在Oracle數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)中使用集群技術(shù),軟件方面必須達(dá)到如下要求:
(1)先進(jìn)的操作系統(tǒng),即服務(wù)器本身的硬盤做陣列RAID-1與兩臺(tái)服務(wù)器均需要使用到的HP自帶啟動(dòng)盤安裝Windows系統(tǒng)。
(2)完成活動(dòng)目錄的安裝,并進(jìn)行域的設(shè)置,步驟如下:首先將B服務(wù)器關(guān)閉,于A服務(wù)器內(nèi)進(jìn)行目錄安裝,并完成DNS,將其作為域管理器,并填置域的名稱。其次對(duì)2塊網(wǎng)卡內(nèi)的IP地址進(jìn)行設(shè)置。最后在A服務(wù)器中添加入B服務(wù)器設(shè)置完成的域。
(3)完成磁盤陣列柜的硬盤列陣操作,具體如下:將2臺(tái)服務(wù)器關(guān)閉,并對(duì)磁盤陣列柜實(shí)施啟動(dòng),待磁盤陣列柜完成自檢工作之后,將A服務(wù)器開(kāi)啟并進(jìn)入到系統(tǒng)內(nèi)。進(jìn)行SMARTARRAY集群存儲(chǔ)操作,使用具備管理員權(quán)限的用戶登錄入域中,再進(jìn)入到操作系統(tǒng)中進(jìn)行邏輯驅(qū)動(dòng)器的運(yùn)行與創(chuàng)建,并進(jìn)行NTFS格式的格式化操作,最后,填寫上和集群存儲(chǔ)相同的名字與盤符。
(4)進(jìn)行集群CLUSTRE配置,集成技術(shù)采用Windows系統(tǒng)集成技術(shù),先于A服務(wù)器內(nèi)做好集群服務(wù)相關(guān)配置,并進(jìn)行節(jié)點(diǎn)創(chuàng)建,這個(gè)時(shí)候B服務(wù)器必須處于關(guān)機(jī)狀態(tài),操作完成后,再將B服務(wù)器開(kāi)啟完成集群服務(wù)配置,最后加入到A服務(wù)器內(nèi)所創(chuàng)建出的節(jié)點(diǎn)之中。
3.3 Oracle安裝
Oracle的安裝主要分為4個(gè)方面的內(nèi)容,具體如下:
(1)將B服務(wù)器關(guān)閉,于服務(wù)器A上進(jìn)行Oracle安裝,切記安裝不可以安裝實(shí)例,必須先對(duì)其進(jìn)行自定義,確保自定義安裝正確之后,再完成實(shí)例的安裝,具體的安裝路徑應(yīng)該到陣列上確認(rèn),以免安裝錯(cuò)誤。
(2)關(guān)閉服務(wù)器A,并打開(kāi)B服務(wù)器B,且B服務(wù)器中完成Oracle安裝,安裝操作與服務(wù)器A相同。
(3)打開(kāi)A服務(wù)器,并在同一時(shí)間內(nèi)啟動(dòng)Oracle和監(jiān)聽(tīng)服務(wù),確保兩項(xiàng)服務(wù)均處于正常狀態(tài)后,并可以正常運(yùn)行之后,可以服務(wù)器B當(dāng)中原有的配置文件復(fù)制到A服務(wù)器內(nèi),若無(wú)法正常運(yùn)行,則立刻停止A服務(wù)器上所有的集群服務(wù),換以使用B服務(wù)器上的監(jiān)聽(tīng)服務(wù)功能。
(4)打開(kāi)A服務(wù)器,同時(shí)停止B服務(wù)器上一切集群服務(wù),對(duì)B服務(wù)器上的服務(wù)進(jìn)行全面檢查并切換至A服務(wù)器后,檢查Oracle是否存在異常情況,如果所有服務(wù)均能正常使用,那么可以確定Oracle已經(jīng)安裝成功。
3.4 于cluster內(nèi)加入Oracle與監(jiān)聽(tīng)服務(wù)
在集群技術(shù)的實(shí)際運(yùn)用中,一項(xiàng)非常關(guān)鍵的環(huán)節(jié)就是在cluster中加入Oracle與監(jiān)聽(tīng)兩項(xiàng)服務(wù),其步驟具體如下:
(1)將服務(wù)器A上的Oracle服務(wù)啟動(dòng),并將Oracle與監(jiān)聽(tīng)兩項(xiàng)服務(wù)沾添加到集群服務(wù)當(dāng)中,同時(shí)點(diǎn)擊服務(wù)器A內(nèi)的集群管理組,此時(shí)就能見(jiàn)到默認(rèn)組cluster。
(2)點(diǎn)住默認(rèn)組并單擊右鍵,找到新建選項(xiàng),并將資源選中。
(3)于名稱設(shè)置中命命將要加入的名稱,再以該資源進(jìn)行描術(shù),以資源類型進(jìn)行確定后,實(shí)施下一步操作。
(4)找到資源選項(xiàng),可以見(jiàn)到該資源內(nèi)的可能所有者,因此需要到兩臺(tái)服務(wù)器內(nèi)對(duì)該項(xiàng)進(jìn)行選擇。
(5)對(duì)其依存關(guān)系內(nèi)中的所建資源依存的其他資源進(jìn)行選擇,然后把選擇添加到下一步操作。
(6)在隨后跳出的界面中,將新建資源的名稱填寫至該服務(wù)名稱中。
(7)對(duì)上一步驟進(jìn)行重復(fù)并完成資源新建。
(8)于集群內(nèi)加入Oracle與監(jiān)聽(tīng)服務(wù),最后即可完成集群服務(wù)與管理操作。
4 結(jié)束語(yǔ)
Oracle數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)作為一個(gè)專業(yè)的數(shù)據(jù)處理系統(tǒng),對(duì)其系統(tǒng)和平臺(tái)進(jìn)行性能優(yōu)化是必不可少的一項(xiàng)工作,這就需要相關(guān)的作人員在系統(tǒng)行過(guò)程中不斷的發(fā)現(xiàn)問(wèn)題,并及時(shí)解決問(wèn)題。為了對(duì)Oracle數(shù)據(jù)庫(kù)系統(tǒng)性能進(jìn)行全面的優(yōu)化與調(diào)整,除了對(duì)其存儲(chǔ)區(qū)域進(jìn)行優(yōu)化,對(duì)其磁盤進(jìn)行調(diào)整優(yōu)化,對(duì)其CPU的利用率及SQL語(yǔ)言進(jìn)行調(diào)整與優(yōu)化之外,更需要充分運(yùn)用集群技術(shù),實(shí)現(xiàn)Oracle數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)性能的全方位優(yōu)化、調(diào)整以及管理,并通過(guò)Oracle數(shù)據(jù)庫(kù)集群技術(shù)全面提高系統(tǒng)內(nèi)部信息的利用效率與質(zhì)量。
參考文獻(xiàn)
[1]劉倍雄,駱金維,陳孟祥.數(shù)據(jù)庫(kù)集群系統(tǒng)多指標(biāo)動(dòng)態(tài)負(fù)載均衡技術(shù)研究[J].電子設(shè)計(jì)工程,2018,26(22):19-22+31.
[2]邊筱云.Oracle數(shù)據(jù)庫(kù)集群技術(shù)的策略研究[J].信息與電腦(理論版),2018(21):134-135.
[3]蔣學(xué)文,郭維時(shí),呂艷輝.淺談Oracle數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的性能優(yōu)化[J].數(shù)字技術(shù)與應(yīng)用,2018,36(07):105+107.
[4]王微.負(fù)載均衡技術(shù)在數(shù)據(jù)庫(kù)集群系統(tǒng)中的應(yīng)用研究[J].電子測(cè)試,2018(Z1):105-106.
[5]趙佩.用電信息采集系統(tǒng)的數(shù)據(jù)庫(kù)及服務(wù)器運(yùn)維優(yōu)化研究[D].華北電力大學(xué),2017.
[6]張晶.Oracle數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的性能優(yōu)化[J].電子科學(xué)技術(shù),2017,04(01):53-56.
[7]李韋龍.油氣生產(chǎn)物聯(lián)網(wǎng)系統(tǒng)中關(guān)系數(shù)據(jù)庫(kù)性能優(yōu)化的研究[D].蘭州理工大學(xué),2016.
[8]王鄭.數(shù)據(jù)庫(kù)集群技術(shù)及其在全臺(tái)網(wǎng)中的應(yīng)用[J].西部廣播電視,2016(07):255-256.
[9]李晨暉.虛擬化云平臺(tái)中數(shù)據(jù)庫(kù)集群負(fù)載均衡關(guān)鍵技術(shù)研究[D].湖南大學(xué),2016.
[10]黃碧雄.基于Oracle數(shù)據(jù)庫(kù)性能優(yōu)化及監(jiān)控研究[J].中國(guó)新通信,2015,17(05):126-127.
[11]楊嵩.淺談Oracle數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的性能優(yōu)化[J].計(jì)算機(jī)光盤軟件與應(yīng)用,2015,18(03):111-112+115.
[12]胡昌文,李彥,賀文愛(ài),農(nóng)冬冬,謝衛(wèi)民.基于Oracle數(shù)據(jù)庫(kù)的RAC集群技術(shù)在高校圖書館關(guān)鍵業(yè)務(wù)中的應(yīng)用研究[J].圖書館理論與實(shí)踐,2014(06):102-105.