• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于SQL數(shù)據(jù)庫(kù)的性能優(yōu)化的探討

      2015-07-02 18:48常玉明
      科技資訊 2015年7期
      關(guān)鍵詞:性能優(yōu)化數(shù)據(jù)庫(kù)

      常玉明

      摘 要:在數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)中的數(shù)據(jù)量不斷增大的背景下,效率成為數(shù)據(jù)庫(kù)在應(yīng)用與開發(fā)管理中需要解決的首要關(guān)鍵,對(duì)于數(shù)據(jù)庫(kù)的優(yōu)化,不但要對(duì)邏輯性數(shù)據(jù)庫(kù)與物理性數(shù)據(jù)硬件、服務(wù)器的硬件平臺(tái)進(jìn)行優(yōu)化,還要對(duì)SQL語句的本身查詢進(jìn)行優(yōu)化。該文主要對(duì)SQL數(shù)據(jù)庫(kù)中對(duì)效率產(chǎn)生影響的問題進(jìn)行分析,探討相關(guān)的性能優(yōu)化對(duì)策,從而提高SQL數(shù)據(jù)庫(kù)的性能與運(yùn)行效率。

      關(guān)鍵詞:SQL 數(shù)據(jù)庫(kù) 性能優(yōu)化

      中圖分類號(hào):TP392 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1672-3791(2015)03(a)-0017-01

      SQL(結(jié)構(gòu)化查詢語言)數(shù)據(jù)庫(kù)早已被大眾所熟知和廣泛接受,一句簡(jiǎn)單的SQL命令語句就可以執(zhí)行復(fù)雜的數(shù)據(jù)操作,有著功能強(qiáng)大、兼容性強(qiáng)、應(yīng)用范圍廣、易學(xué)易會(huì)上手快等諸多優(yōu)勢(shì),從開發(fā)出來就受到熱烈的追捧。但是,隨著信息技術(shù)不斷發(fā)展,信息量爆發(fā)式的增長(zhǎng),因數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)的不規(guī)范性等導(dǎo)致的效率不高、性能低下問題日益突出,所以,對(duì)SQL數(shù)據(jù)庫(kù)進(jìn)行性能優(yōu)化研究,以使其功能優(yōu)勢(shì)得到最大限度的發(fā)揮,從而提高系統(tǒng)效率有著重要意義。

      1 影響SQL數(shù)據(jù)庫(kù)性能的一些主要問題

      1.1 數(shù)據(jù)庫(kù)的設(shè)計(jì)問題

      首先,表的設(shè)計(jì)。對(duì)表的設(shè)計(jì)需要依據(jù)具體的情況進(jìn)行,處理好表中的每一個(gè)細(xì)節(jié)和樣式,減少給數(shù)據(jù)庫(kù)數(shù)據(jù)分析的清晰度以及數(shù)據(jù)信息的準(zhǔn)確性造成的影響。其次,索引的設(shè)計(jì)。使用索引可快速訪問數(shù)據(jù)庫(kù)表中的特定信息,與書本中的目錄相似,能夠提高檢索效率。索引的設(shè)計(jì)是否符合要求、是否得當(dāng)對(duì)SQL數(shù)據(jù)庫(kù)的具體執(zhí)行速度有直接的、決定性的關(guān)系,理解索引是進(jìn)行數(shù)據(jù)庫(kù)性能調(diào)優(yōu)的起點(diǎn)。再次,視圖的設(shè)計(jì)。其是查看數(shù)據(jù)庫(kù)中的數(shù)據(jù)信息的主要方法之一,它的好壞對(duì)數(shù)據(jù)的查看以及處理有著直接的影響。最后,數(shù)據(jù)的設(shè)計(jì)。在進(jìn)行數(shù)據(jù)設(shè)計(jì)時(shí)應(yīng)將繁雜的內(nèi)容簡(jiǎn)單化,以達(dá)到一看就懂的效果,否則用戶難以接受。應(yīng)減少多余的數(shù)據(jù)信息,多余的信息會(huì)給用戶操作帶來一定的困難,在數(shù)據(jù)庫(kù)進(jìn)行回復(fù)數(shù)據(jù)與多方連接時(shí)也會(huì)引發(fā)一些負(fù)面的影響。

      1.2 事物的管理問題

      事物是用戶定義的一個(gè)數(shù)據(jù)庫(kù)操作序列,這些操作要么全做要么全不做,是一個(gè)不可分割的工作單位,其具有原子性、一致性、隔離性和持續(xù)性的特征。編寫合理有效的事務(wù),并進(jìn)行科學(xué)的管理,對(duì)保持?jǐn)?shù)據(jù)庫(kù)的完整性,提高數(shù)據(jù)庫(kù)系統(tǒng)效率有巨大的積極意義。

      1.3 應(yīng)用程序的質(zhì)量問題

      應(yīng)用程序的質(zhì)量對(duì)數(shù)據(jù)庫(kù)性能的影響主要體現(xiàn)在:若程序的質(zhì)量比較高,就會(huì)大幅度的減少工作的時(shí)間,提高執(zhí)行的效率。相反,若程序的質(zhì)量比較差,不僅影響查詢結(jié)果的準(zhǔn)確性,還會(huì)對(duì)數(shù)據(jù)庫(kù)造成負(fù)面影響,降低信譽(yù)度。根據(jù)統(tǒng)計(jì),對(duì)網(wǎng)絡(luò)、硬件、操作系統(tǒng)、數(shù)據(jù)庫(kù)參數(shù)進(jìn)行優(yōu)化所獲得的性能提升全部加起來只占數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)性能提升的40%左右,其余60%的系統(tǒng)性能提升全部來自對(duì)應(yīng)用程序的優(yōu)化。

      1.4 硬件的配置問題

      在計(jì)算機(jī)中,其系統(tǒng)主要分成軟件系統(tǒng)與硬件系統(tǒng)兩個(gè)部分,其中,硬件系統(tǒng)是軟件系統(tǒng)的載體,硬件配置的高低對(duì)計(jì)算機(jī)運(yùn)行速度與效率有直接影響。雖然我國(guó)大部分區(qū)域都已經(jīng)普及計(jì)算機(jī),但是因計(jì)算機(jī)的硬件配置上還存在一些不足,使得SQL 數(shù)據(jù)庫(kù)的性能在配置不足的計(jì)算機(jī)上難以正常發(fā)揮。

      2 優(yōu)化SQL數(shù)據(jù)庫(kù)性能的一些主要措施

      2.1 對(duì)索引的優(yōu)化措施

      索引是從數(shù)據(jù)庫(kù)中獲取數(shù)據(jù)的最高效方式之一,合理有效的使用索引可以大幅度提高數(shù)據(jù)庫(kù)性能,但過多或不當(dāng)?shù)乃饕矔?huì)導(dǎo)致系統(tǒng)低效,甚至?xí)?dǎo)致索引碎片。對(duì)索引的優(yōu)化關(guān)鍵是遵循索引建立的原則,消除認(rèn)識(shí)上的誤區(qū)。下面這些認(rèn)識(shí)是極端錯(cuò)誤的:(1)主鍵就是聚集索引;(2)只要建立索引就能顯著提高查詢速度;(3)把所有需要提高查詢速度的字段都加進(jìn)聚集索引,以提高查詢速度。一些好的索引使用經(jīng)驗(yàn):(1)用聚集索引比用不是聚集索引的主鍵速度快;(2)用聚集索引比用一般的主鍵作order by時(shí)速度快,特別是在小數(shù)據(jù)量情況下;(3)不要索引常用的小型表;(4)不要索引 memo/notes 字段和不要索引大型文本字段(許多字符),等等。

      2.2 對(duì)語句的優(yōu)化措施

      SQL的語句優(yōu)化指的是將原本散亂繁雜的語句經(jīng)相關(guān)處理手段與技術(shù)改進(jìn)之后,變成具有一致性與統(tǒng)一性的新語句,SQL語句消耗了70%~90%的數(shù)據(jù)庫(kù)資源,所以對(duì)語句的優(yōu)化是數(shù)據(jù)庫(kù)性能優(yōu)化的重點(diǎn)。傳統(tǒng)的優(yōu)化方法是采用手工重寫的方式,通過校驗(yàn)比對(duì)來獲取性能較佳的語句,這完全依賴于人的經(jīng)驗(yàn),經(jīng)驗(yàn)的多寡決定了優(yōu)化后SQL語句的性能。另外一種方法是使用優(yōu)化工具,對(duì)語句優(yōu)化的工具主要包括:(1)執(zhí)行計(jì)劃與分析工具:這類工具對(duì)輸入的SQL語句從數(shù)據(jù)庫(kù)提取執(zhí)行計(jì)劃,并對(duì)執(zhí)行計(jì)劃中關(guān)鍵字的含義進(jìn)行解釋;(2)添加索引建議的SQL語句優(yōu)化工具:其主要是通過對(duì)輸入的SQL語句的執(zhí)行計(jì)劃的分析來產(chǎn)生是否要增加索引的建議;(3)人工智能SQL語句優(yōu)化工具:如LECCOSQL Expert,其本質(zhì)上是借助于人工智能技術(shù),對(duì)SQL語句自動(dòng)重寫,并獲取性能最好的SQL語句。

      2.3 服務(wù)器配置的優(yōu)化措施

      CPU是保障計(jì)算機(jī)正常運(yùn)行的基礎(chǔ),其在維護(hù)時(shí)也作為重點(diǎn)對(duì)象進(jìn)行保護(hù),CPU一旦在較高速率下進(jìn)行長(zhǎng)時(shí)間的工作,就要注意及時(shí)對(duì)其進(jìn)行升級(jí)。內(nèi)存作為計(jì)算機(jī)存儲(chǔ)器,其主要作用就是存儲(chǔ)程序與數(shù)據(jù),所以內(nèi)存的狀態(tài)良好是SQL數(shù)據(jù)庫(kù)功能優(yōu)化的關(guān)鍵。而在內(nèi)存中,若是系統(tǒng)占用過大會(huì)影響程序的正常運(yùn)行,因此,必須在設(shè)計(jì)SQL數(shù)據(jù)庫(kù)時(shí)盡量不占用過多內(nèi)存。此外,磁盤也會(huì)影響到數(shù)據(jù)庫(kù)運(yùn)行的效率,處理的關(guān)鍵就是增加磁盤容量和提高磁盤I/O性能。

      2.4 物理的優(yōu)化措施

      在物理優(yōu)化中,首先要對(duì)文件組進(jìn)行優(yōu)化,將多個(gè)磁盤驅(qū)動(dòng)器內(nèi)的特定對(duì)象移到單個(gè)磁盤當(dāng)中,并將數(shù)據(jù)庫(kù)的文件分成多個(gè)文件組,在用戶使用時(shí)可利用已分好的文件組實(shí)施查詢與修改等工作,從而提高數(shù)據(jù)庫(kù)性能;其次對(duì)磁盤進(jìn)行優(yōu)化,使用RAID(獨(dú)立冗余磁盤陣列)可以增強(qiáng)數(shù)據(jù)整合度,增強(qiáng)容錯(cuò)功能,增加吞吐量或容量,在一個(gè)磁盤出現(xiàn)故障時(shí)其他磁盤可以替代,提高數(shù)據(jù)庫(kù)可靠性。

      3 結(jié)語

      SQL數(shù)據(jù)庫(kù)性能與運(yùn)行環(huán)境、軟件架構(gòu)、設(shè)計(jì)、開發(fā)、日常維護(hù)等過程息息相關(guān),優(yōu)化工作涉及到數(shù)據(jù)庫(kù)工作中多個(gè)針對(duì)性的對(duì)象,在優(yōu)化過程中要充分考慮各個(gè)優(yōu)化對(duì)象的相關(guān)性,各個(gè)環(huán)節(jié)做到緊密結(jié)合是優(yōu)化成功的關(guān)鍵。該文主要對(duì)SQL數(shù)據(jù)庫(kù)性能優(yōu)化進(jìn)行研究分析,望給予今后工作提供有用借鑒。

      參考文獻(xiàn)

      [1] 高欣.關(guān)于如何優(yōu)化SQL數(shù)據(jù)庫(kù)性能的幾點(diǎn)分析[J].科技創(chuàng)新與應(yīng)用,2013,12(27):312-313.

      [2] 李宏著,譚娜.關(guān)系數(shù)據(jù)庫(kù)SQL查詢語句優(yōu)化應(yīng)用[J].科技創(chuàng)新導(dǎo)報(bào),2011,5(36):21-28.

      [3] 丁燕云,魏娟.淺析SQL數(shù)據(jù)庫(kù)的性能優(yōu)化問題[J].科技信息:學(xué)術(shù)研究,2014,2(34):20-23.

      [4] 楊柳.SQL數(shù)據(jù)庫(kù)的性能分析與優(yōu)化策略研究[J].科技創(chuàng)新導(dǎo)報(bào).2011,28(1):314-316.

      猜你喜歡
      性能優(yōu)化數(shù)據(jù)庫(kù)
      數(shù)據(jù)庫(kù)
      SQL Server數(shù)據(jù)庫(kù)性能優(yōu)化的幾點(diǎn)分析
      Web應(yīng)用的前端性能優(yōu)化
      數(shù)據(jù)庫(kù)
      Oracle數(shù)據(jù)庫(kù)性能調(diào)整與優(yōu)化分析
      數(shù)據(jù)庫(kù)
      數(shù)據(jù)庫(kù)
      三明市| 屯留县| 新营市| 安平县| 温州市| 宁南县| 娄底市| 卢氏县| 贵港市| 潮安县| 岑巩县| 沾益县| 广南县| 宾川县| 凤翔县| 惠水县| 济阳县| 淮滨县| 九江市| 平江县| 绩溪县| 利津县| 池州市| 安庆市| 盱眙县| 泰来县| 白山市| 大埔区| 南充市| 濮阳县| 和顺县| 正安县| 海安县| 麻阳| 犍为县| 和静县| 咸宁市| 军事| 新安县| 台湾省| 鄂温|