sql server數(shù)據(jù)庫設(shè)計(jì)優(yōu)化技術(shù)

sql server數(shù)據(jù)庫設(shè)計(jì)優(yōu)化技術(shù)

ID:10706212

大小:27.00 KB

頁數(shù):5頁

時(shí)間:2018-07-07

sql server數(shù)據(jù)庫設(shè)計(jì)優(yōu)化技術(shù)_第1頁
sql server數(shù)據(jù)庫設(shè)計(jì)優(yōu)化技術(shù)_第2頁
sql server數(shù)據(jù)庫設(shè)計(jì)優(yōu)化技術(shù)_第3頁
sql server數(shù)據(jù)庫設(shè)計(jì)優(yōu)化技術(shù)_第4頁
sql server數(shù)據(jù)庫設(shè)計(jì)優(yōu)化技術(shù)_第5頁
資源描述:

《sql server數(shù)據(jù)庫設(shè)計(jì)優(yōu)化技術(shù)》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在學(xué)術(shù)論文-天天文庫。

1、SQLSERVER數(shù)據(jù)庫設(shè)計(jì)優(yōu)化技術(shù)【摘要】SQLSERVER是占有市場份額較大的一個(gè)關(guān)系數(shù)據(jù)庫管理系統(tǒng),本文討論在數(shù)據(jù)庫設(shè)計(jì)階段的優(yōu)化技術(shù)——估算數(shù)據(jù)庫初始大小?!娟P(guān)鍵詞】數(shù)據(jù)庫SQLSERVEROptimizationsOnDataBaseDesignOfSQLSERVERYueLi【Abstract】SQLSERVERisakindofDBMSwhichispopularused,thepaperexplorestheoptimizationsondatabasedesign.——estimatingtheinitialsizeoftheDataBase【Keywords】Data

2、base;SQLSERVER一個(gè)數(shù)據(jù)庫實(shí)例能夠以最佳狀態(tài)運(yùn)行是以良好的設(shè)計(jì)為基礎(chǔ)并配合合理的硬件部署和軟件協(xié)助實(shí)現(xiàn)的。本文針對(duì)占有市場份額很大的數(shù)據(jù)庫產(chǎn)品SQLSERVER,從數(shù)據(jù)庫實(shí)例的設(shè)計(jì)階段估算數(shù)據(jù)庫初始大小來闡述優(yōu)化數(shù)據(jù)庫的關(guān)鍵技術(shù)。5根據(jù)概念結(jié)構(gòu)設(shè)計(jì)的結(jié)果我們可以得出數(shù)據(jù)庫的具體結(jié)構(gòu),從而進(jìn)行合理的部署。數(shù)據(jù)庫的初始大小就是一個(gè)關(guān)鍵問題。數(shù)據(jù)庫初始大小過大,會(huì)浪費(fèi)我們不必要的硬盤空間,數(shù)據(jù)庫初始大小過小,SQLServer會(huì)經(jīng)常根據(jù)需要進(jìn)行數(shù)據(jù)庫的擴(kuò)容,從而增加了系統(tǒng)運(yùn)行負(fù)擔(dān),因此數(shù)據(jù)庫的初始大小是優(yōu)化技術(shù)的另一個(gè)關(guān)鍵。那么數(shù)據(jù)庫的初始大小應(yīng)該設(shè)計(jì)為多大合適呢?SQLSERVE

3、R的數(shù)據(jù)庫存儲(chǔ)空間的大小由以下幾個(gè)因素決定:堆或者聚集索引的大小,非聚集索引的大小。本篇僅對(duì)堆進(jìn)行討論。1.估算堆的大?、俟浪惚碇袑⒋鎯?chǔ)的行數(shù):Num_Rows=表中的行數(shù)②指定固定長度和可變長度列的數(shù)量,并計(jì)算存儲(chǔ)所需的空間:計(jì)算每組列在數(shù)據(jù)行中所占據(jù)的空間。列的大小取決于數(shù)據(jù)類型和長度說明。Num_Cols=總列數(shù)(固定長度和可變長度)Fixed_Data_Size=所有固定長度列的總字節(jié)數(shù)Num_Variable_Cols=可變長度列的數(shù)量Max_Var_Size=所有可變長度列的最大字節(jié)數(shù)③保留行中稱為空位圖的部分以管理列的為空性。計(jì)算大?。篘ull_Bitmap=2+((Num

4、_Cols+7)/58)取整數(shù)部分④計(jì)算可變長度數(shù)據(jù)的大?。杭僭O(shè)所有可變長度列均百分之百充滿如果表中有可變長度列,確定在行中存儲(chǔ)這些列所用的空間:Variable_Data_Size=2+(Num_Variable_Colsx2)+Max_Var_Size如果預(yù)計(jì)可變長度列占用的存儲(chǔ)空間比例較低,可以按照該比例調(diào)整Max_Var_Size值,從而對(duì)整個(gè)表的大小得出一個(gè)更準(zhǔn)確的估計(jì)。如果沒有可變長度列,則Variable_Data_Size取值為0。⑤計(jì)算總的行大?。篟ow_Size=Fixed_Data_Size+Variable_Data_Size+Null_Bitmap+4其中的數(shù)值

5、4是數(shù)據(jù)行的行標(biāo)題開銷。⑥計(jì)算每頁的行數(shù)(每頁大小為8K,頁首的12個(gè)字節(jié)用于存儲(chǔ)頁的基本信息,因此有8096可用字節(jié)):Rows_Per_Page=8096/(Row_Size+2)由于行的存儲(chǔ)不能跨頁,因此每頁的行數(shù)應(yīng)向下舍入到最接近的整數(shù)。公式中的數(shù)值2是計(jì)算行數(shù)時(shí)引入的行大小余量。5⑦計(jì)算存儲(chǔ)所有行所需的頁數(shù):Num_Pages=Num_Rows/Rows_Per_Page估計(jì)的頁數(shù)應(yīng)向上舍入到最接近的整數(shù)。⑧計(jì)算在堆中存儲(chǔ)數(shù)據(jù)所需的空間量(每頁的總字節(jié)為8192):堆大?。ㄗ止?jié))=8192xNum_Pages2.下面以employees表為例,估算存儲(chǔ)該表所需的堆空間大小。表結(jié)

6、構(gòu)如下:CreatetableEmployees(EmployeeIDint,LastNamenvarchar(20),FirstNamenvarchar(10),Titlenvarchar(30),BirthdaydatatimeHireDatedatatimeAdressnvarchar(60),Citynvarchar(15),PostalCardnvarchar(10),HomePhonenvarchar(12),)5其中的固定長度列有EmployeeID,Birthday,HireDate共計(jì)3列。其中可變長度列有LastName,F(xiàn)irstName,Title,Adress,

7、City,PostalCard,HomePhone共計(jì)7列。固定長度列的總字節(jié)數(shù):Fixed_Data_Size=(int)4+(datetime)8+(datetime)8=20假設(shè)所有可變長度列均百分之百充滿,Max_Var_Size取表中的Address列的長度60,則可變長度列的總字節(jié)數(shù):Variable_Data_Size=2+(7x2)+60=76保留空位圖大小:Null_Bitmap=2+((10+7)/8)=3(下取

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭議請及時(shí)聯(lián)系客服。
3. 下載前請仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請聯(lián)系客服處理。