數(shù)據(jù)庫,簡(jiǎn)而言之可視為電子化的文件柜——存儲(chǔ)電子文件的處所,用戶可以對(duì)文件中的數(shù)據(jù)進(jìn)行新增、截取、更新、刪除等操作.所謂數(shù)據(jù)庫是以一定方式儲(chǔ)存在一起、能予多個(gè)用戶共享、具有盡可能小的冗余度、與應(yīng)用程序彼此獨(dú)立的數(shù)據(jù)集合.在 SL 被引入的 45 年中,它經(jīng)歷了許多數(shù)據(jù)庫的誕生和消亡,也經(jīng)歷了許多數(shù)據(jù)處理方式的誕生和消亡.四十五年前,兩位年輕的IBM研究人員在數(shù)據(jù)庫上提出了一種新的語言,這是一種關(guān)系型語言,它奉行一切數(shù)據(jù)可以被聲明性地操作和容易操作的思想.
數(shù)據(jù)庫管理SL
模塊一
1、規(guī)劃數(shù)據(jù)模型策略:定義XML存儲(chǔ)數(shù)據(jù)的標(biāo)準(zhǔn) ,規(guī)劃Schema方案,規(guī)劃Scale-Out策略.
2、設(shè)計(jì)Notifications Services的解決方案
3、規(guī)劃Source Control、Unit Testing和Deployment
4、設(shè)計(jì)Service Broker解決方案&uot;
模塊二
1、高級(jí)查詢及XML技術(shù):CTE(Common Table expressions),Ranking查詢函數(shù) ,XML數(shù)據(jù)類型與關(guān)系型數(shù)據(jù)轉(zhuǎn)換策略.
2、規(guī)劃數(shù)據(jù)庫邏輯模型 :創(chuàng)建邏輯模型 ,設(shè)計(jì)OLTP應(yīng)用模型 ,設(shè)計(jì)數(shù)據(jù)倉庫應(yīng)用模型.
3、規(guī)劃物理模型:設(shè)計(jì)數(shù)據(jù)庫物理對(duì)象,設(shè)計(jì)數(shù)據(jù)庫安全 ,規(guī)劃數(shù)據(jù)庫和SL Server選項(xiàng)
模塊三
1、使用MARS(Multiple Active Result Sets)來設(shè)計(jì)查詢策略
2、為數(shù)據(jù)庫應(yīng)用設(shè)計(jì)緩存策略 :SL Server 2008 R2中的數(shù)據(jù)和查詢緩存,使用SL Server外部緩存技術(shù) .
3、調(diào)解數(shù)據(jù)庫查詢性能:查詢語句的邏輯順序 ,使用子查詢時(shí)需要考慮的問題
模塊四
1、查詢中的游標(biāo)影響 :比較Cursor-based和Result Set-based操作,選擇適合的服務(wù)器端游標(biāo),使用PIVOT和CTE(Common Table expressions)
2、使用索引策略:規(guī)劃數(shù)據(jù)庫優(yōu)化選項(xiàng) ,使用索引需要考慮的問題,索引策略.
3、管理并發(fā):定義隔離級(jí), 定義事務(wù)策略,規(guī)劃SL Server事務(wù)處理策略,了解數(shù)據(jù)處理需求 .
應(yīng)用程序慢如牛,原因多多,可能是網(wǎng)絡(luò)的原因、可能是系統(tǒng)架構(gòu)的原因,還有可能是數(shù)據(jù)庫的原因.那么如何提高數(shù)據(jù)庫SL語句執(zhí)行速度呢?有人會(huì)說性能調(diào)優(yōu)是數(shù)據(jù)庫管理員(DBA)的事,然而性能調(diào)優(yōu)跟程序員們也有莫大的關(guān)系.
程序中嵌入的一行行的SL語句,如果使用了一些優(yōu)化小技巧,定能達(dá)到事半功倍的效果.
技巧1:比較運(yùn)算符能用 =就不用<> =增加了索引的使用幾率.
技巧2:明知只有一條查詢結(jié)果,那請(qǐng)使用 LIMIT 1LIMIT 1可以避免全表掃描,找到對(duì)應(yīng)結(jié)果就不會(huì)再繼續(xù)掃描了.
技巧3:為列選擇合適的數(shù)據(jù)類型:能用TINYINT就不用SMALLINT,能用SMALLINT就不用INT,道理你懂的,磁盤和內(nèi)存消耗越小越好嘛.
技巧4:將大的DELETE,UPDATE or INSERT 查詢變成多個(gè)小查詢,能寫一個(gè)幾十行、幾百行的SL語句是不是顯得逼格很高?然而,為了達(dá)到更好的性能以及更好的數(shù)據(jù)控制,你可以將他們變成多個(gè)小查詢.