點(diǎn)擊查看:2015計(jì)算機(jī)等級(jí)考試四級(jí)數(shù)據(jù)庫(kù)工程師復(fù)習(xí)匯總
第10章 數(shù)據(jù)庫(kù)的實(shí)施、運(yùn)行和維護(hù)
10.1數(shù)據(jù)庫(kù)的實(shí)施
10.1.1 定義數(shù)據(jù)庫(kù)結(jié)構(gòu)
1、 為了實(shí)現(xiàn)數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu)設(shè)計(jì)和物理結(jié)構(gòu)設(shè)計(jì)結(jié)果,必須建立實(shí)際的數(shù)據(jù)庫(kù),即在確定了數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu)和物理結(jié)構(gòu)后,開發(fā)人員使用具體的DBMS提供的數(shù)據(jù)定義語言(DDL)來嚴(yán)格描述數(shù)據(jù)庫(kù)結(jié)構(gòu)。
10.1.2 數(shù)據(jù)裝載
1、 完成了數(shù)據(jù)庫(kù)定義后,還須裝入各種實(shí)際數(shù)據(jù);
2、 由于數(shù)據(jù)的來源不同,其組織方式、結(jié)構(gòu)、格式會(huì)不同,可能出現(xiàn)源數(shù)據(jù)與新數(shù)據(jù)庫(kù)結(jié)構(gòu)不相容;
3、 我們可以先將源數(shù)據(jù)提取出來,存入計(jì)算機(jī),然后分類轉(zhuǎn)換,成為符合新數(shù)據(jù)庫(kù)結(jié)構(gòu)的數(shù)據(jù),再存入數(shù)據(jù)庫(kù),具體步驟如下:
(1) 篩選數(shù)據(jù);(2)轉(zhuǎn)換數(shù)據(jù)格式;(3)輸入數(shù)據(jù);(4)校驗(yàn)數(shù)據(jù);
4、 為完成初始數(shù)據(jù)的錄入,通常需要設(shè)計(jì)一些數(shù)據(jù)錄入子系統(tǒng),由計(jì)算機(jī)輔助完成入庫(kù)工作,對(duì)某些紙質(zhì)數(shù)據(jù)或數(shù)據(jù)量少的數(shù)據(jù),可由人工一條條進(jìn)行錄入;而對(duì)于數(shù)據(jù)量大的數(shù)據(jù),可考慮采用批量數(shù)據(jù)裝載程序來實(shí)現(xiàn)。
10.1.3 編寫與調(diào)試應(yīng)用程序
1、 只有當(dāng)數(shù)據(jù)庫(kù)的結(jié)構(gòu)建立好后,才能開始應(yīng)用程序的編寫和調(diào)試;
2、 可使用模擬數(shù)據(jù)進(jìn)行程序的調(diào)試。
10.1.4 數(shù)據(jù)庫(kù)的試運(yùn)行
1、 應(yīng)用程序調(diào)試完成并已有一小部分?jǐn)?shù)據(jù)入庫(kù),就可以開始數(shù)據(jù)庫(kù)的試運(yùn)行,也稱聯(lián)合調(diào)試;
2、 試運(yùn)行十分重要,因?yàn)椋?/P>
(1) 檢測(cè)應(yīng)用程序在接近真實(shí)的環(huán)境中運(yùn)行是否符合設(shè)計(jì)要求;
(2) 檢測(cè)系統(tǒng)設(shè)計(jì)的性能和評(píng)價(jià)。
3、 試運(yùn)行的工作主要有兩個(gè):
(1) 功能測(cè)試:運(yùn)行數(shù)據(jù)庫(kù)應(yīng)用程序,執(zhí)行各種操作,測(cè)試程序是否滿足設(shè)計(jì)要求,找出不足,改進(jìn)現(xiàn)有程序直到符合設(shè)計(jì)要求;
(2) 性能測(cè)試:測(cè)量系統(tǒng)的性能指標(biāo),分析是否符合設(shè)計(jì)目標(biāo)。
10.2 數(shù)據(jù)庫(kù)的運(yùn)行和維護(hù)
1、 數(shù)據(jù)庫(kù)設(shè)計(jì)并試運(yùn)行后,如試運(yùn)行結(jié)果符合設(shè)計(jì)目標(biāo),數(shù)據(jù)庫(kù)就可以真正投入運(yùn)行了,同時(shí)也標(biāo)志著開發(fā)任務(wù)的基本結(jié)束和維護(hù)工作的開始;
2、 維護(hù)工作包括:
(1) 數(shù)據(jù)庫(kù)的轉(zhuǎn)儲(chǔ)與恢復(fù);
(2) 數(shù)據(jù)庫(kù)安全性和完整性控制;
(3) 數(shù)據(jù)庫(kù)性能的檢測(cè)與改善;
(4) 數(shù)據(jù)庫(kù)的重組和重構(gòu)。
10.3 監(jiān)控分析
1、 數(shù)據(jù)庫(kù)的監(jiān)控分析:指管理員借助相應(yīng)工具在數(shù)據(jù)庫(kù)運(yùn)行過程中監(jiān)測(cè)數(shù)據(jù)庫(kù)系統(tǒng)的運(yùn)行情況,掌握數(shù)據(jù)庫(kù)當(dāng)前或以往的負(fù)荷、配置、應(yīng)用和其他相應(yīng)信息,并對(duì)監(jiān)測(cè)數(shù)據(jù)進(jìn)行分析,分析數(shù)據(jù)庫(kù)的性能參數(shù)和環(huán)境信息,評(píng)估系統(tǒng)的整體運(yùn)行狀態(tài),為系統(tǒng)的安全運(yùn)行和性能調(diào)優(yōu)提供依據(jù),并提出相應(yīng)的改善措施,幫助管理人員盡早清除數(shù)據(jù)庫(kù)的性能隱患;
2、 監(jiān)控分析的目的:保證數(shù)據(jù)庫(kù)系統(tǒng)安全、穩(wěn)定地運(yùn)行,以便在發(fā)現(xiàn)不正常的情況時(shí),及時(shí)對(duì)系統(tǒng)進(jìn)行維護(hù);
3、 根據(jù)實(shí)現(xiàn)的方法不同,監(jiān)控的機(jī)制分為:
(1) 自動(dòng)監(jiān)控機(jī)制;
(2) 手動(dòng)監(jiān)控機(jī)制。
4、根據(jù)監(jiān)控的對(duì)象不同,監(jiān)控分為:
(1) 對(duì)數(shù)據(jù)庫(kù)架構(gòu)體系的的監(jiān)控;
(2) 對(duì)數(shù)據(jù)庫(kù)性能的監(jiān)控。
10. 4 空間管理
1、 在數(shù)據(jù)庫(kù)運(yùn)行過程中,對(duì)數(shù)據(jù)庫(kù)空間使用情況,特別是空間的增長(zhǎng)情況進(jìn)行監(jiān)控,并采取相應(yīng)的措施對(duì)空間進(jìn)行管理非常重要;
2、 空間管理主要包括:創(chuàng)建數(shù)據(jù)庫(kù)空間,更改空間大小,刪除空間,修改空間狀態(tài),新建、移動(dòng)、關(guān)聯(lián)數(shù)據(jù)文件等;
10. 5 參數(shù)調(diào)整
1、外部調(diào)整:
(1) CPU:當(dāng)數(shù)據(jù)庫(kù)操作對(duì)CPU的要求超過數(shù)據(jù)庫(kù)服務(wù)器的CPU性能時(shí),數(shù)據(jù)庫(kù)性能就受到CPU的限制,使數(shù)據(jù)庫(kù)操作變慢;如業(yè)務(wù)高峰時(shí),CPU的使用量仍然很低,說明服務(wù)器CPU資源充足;
(2) 網(wǎng)絡(luò):大量的SQL數(shù)據(jù)在網(wǎng)絡(luò)上傳輸會(huì)導(dǎo)致網(wǎng)速變慢,調(diào)整網(wǎng)絡(luò)設(shè)備,也可以一定程度上提高數(shù)據(jù)庫(kù)的性能;
2、 調(diào)整內(nèi)存分配
3、 調(diào)整磁盤I/O
4、 調(diào)整競(jìng)爭(zhēng):
(1) 修改參數(shù)以控制連接到數(shù)據(jù)庫(kù)的最大進(jìn)程數(shù);
(2) 減少調(diào)試進(jìn)程的競(jìng)爭(zhēng);
(3) 減少多線程服務(wù)進(jìn)程的競(jìng)爭(zhēng);
(4) 減少重做日志緩沖區(qū)競(jìng)爭(zhēng);
(5) 減少回滾段競(jìng)爭(zhēng)。
10. 6 查詢優(yōu)化
1、 合理使用索引:索引是數(shù)據(jù)庫(kù)中重要的數(shù)據(jù)結(jié)構(gòu),根本目的就是為了提高查詢效率,使用原則如下 :
(1) 經(jīng)常在索引中作為條件被使用的列,應(yīng)為其建立索引;
(2) 頻繁進(jìn)行排序或分組(即進(jìn)行g(shù)roup by或order by操作)的列,應(yīng)為其建立索引;
(3) 一個(gè)列的值域很大時(shí),應(yīng)為其建立索引;
(4) 如果待排列的列有多個(gè),應(yīng)在這些列上建立復(fù)合索引;
(5) 可以使用系統(tǒng)工具來檢查索引的完整性,必要時(shí)進(jìn)行修復(fù)。
2、 避免或簡(jiǎn)化排序:因?yàn)榇疟P排序的開銷很大,當(dāng)能夠利用索引自動(dòng)以適當(dāng)?shù)拇涡虍a(chǎn)生輸出時(shí),優(yōu)化器就可以避免不必要的排序步驟,以下是一些影響因素:
(1) 由于現(xiàn)有的索引不足,導(dǎo)致排序時(shí)索引中不包括一個(gè)或幾個(gè)等待排序的列;
(2) group by或order by子句中列的次序與索引的次序不一樣;
(3) 排序的列來自不同的表。
為了避免不必要的排序,就要正確地增建索引,合理地合并數(shù)據(jù)庫(kù)表。如排序不可避免,那么應(yīng)試圖簡(jiǎn)化它。
3、 消除對(duì)大型表行數(shù)據(jù)的順序存。涸谇短撞樵冎,對(duì)表的順序存取對(duì)查詢效率可能產(chǎn)生致命的影響,解決方法就是對(duì)連接的列進(jìn)行索引。還可以使用并集來避免順序存取。
4、 避免相關(guān)子查詢:查詢嵌套層次越多,效率越低,應(yīng)盡量避免子查詢,如不可避免,那么要在子查詢中過濾盡量多的行;
5、 避免困難的正規(guī)表達(dá)式:避免含MATCHES和LINK關(guān)鍵字的正規(guī)表達(dá)式;
6、 使用臨時(shí)表加速查詢:把表的一個(gè)子集進(jìn)行排序并創(chuàng)建臨時(shí)表,有時(shí)能加速查詢;
7、 用排序來取代非順序磁盤存取;
8、 不充分的連接條件;
9、 存儲(chǔ)過程;
10、 不要隨意使用游標(biāo);
11、 事務(wù)處理。
相關(guān)推薦:
各地2015年計(jì)算機(jī)等級(jí)考試報(bào)名時(shí)間匯總
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |