999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

在SQL SERVER中估算堆大小

2013-04-12 00:00:00岳莉
教育教學論壇 2013年22期

摘要:SQL SERVER是占有市場份額較大的一個關系數據庫管理系統,本文討論在數據庫設計階段的一項優化技術,估算堆的大小。

關鍵詞:數據庫;SQL SERVER;計算

中圖分類號:G250.74 文獻標志碼:A 文章編號:1674-9324(2013)22-0146-03

一個數據庫實例能夠以最佳狀態運行是以良好的設計為基礎并配合合理的硬件部署和軟件協助實現的。本文針對占有市場份額很大的數據庫產品SQL SERVER,討論數據庫實例設計方面的優化技術。在數據庫的設計中,我們可以依據概念結構設計的結果得出數據庫的具體模式結構,從而進行合理的部署。數據庫的初始大小是設計中的一個關鍵問題。數據庫初始大小過大,會浪費我們不必要的硬盤空間,數據庫初始大小過小,SQL Server會經常根據需要進行數據庫的擴容,從而增加了系統運行負擔,因此數據庫的初始大小是優化技術的一個關鍵。那么數據庫的初始大小應該設計為多大合適呢?

SQL SERVER的數據庫存儲空間的大小由以下幾個因素決定:堆或者聚集索引的大小,非聚集索引的大小。本篇僅對堆的大小估算進行討論。

一、估算堆的大小的步驟

1.估算表中將存儲的行數:Num_Rows=表中的行數。

2.指定固定長度和可變長度列的數量,并計算存儲所需的空間:計算每組列在數據行中所占據的空間。列的大小取決于數據類型和長度說明。Num_Cols=總列數(固定長度和可變長度);Fixed_Data_Size=所有固定長度列的總字節數;Num_Variable_Cols=可變長度列的數量;Max_Var_Size=所有可變長度列的最大字節數。

3.保留行中稱為空位圖的部分以管理列的為空性。計算大小:Null_Bitmap=2+((Num_Cols+7)/8)取整數部分。

4.計算可變長度數據的大小:假設所有可變長度列均百分之百充滿。如果表中有可變長度列,確定在行中存儲這些列所用的空間:Variable_Data_Size=2+(Num_Variable_Colsx2)+Max_Var_Size如果預計可變長度列占用的存儲空間比例較低,可以按照該比例調整Max_Var_Size值,從而對整個表的大小得出一個更準確的估計。如果沒有可變長度列,則Variable_Data_Size取值為0。

5.計算總的行大小:Row_Size=Fixed_Data_Size+Variable_Data_Size+Null_Bitmap+4其中的數值4是數據行的行標題開銷。

6.計算每頁的行數(每頁大小為8K,頁首的12個字節用于存儲頁的基本信息,因此有8096可用字節):Rows_Per_Page=8096/(Row_Size+2),由于行的存儲不能跨頁,因此每頁的行數應向下舍入到最接近的整數。公式中的數值2是計算行數時引入的行大小余量。

7.計算存儲所有行所需的頁數:Num_Pages=Num_Rows/Rows_Per_Page估計的頁數應向上舍入到最接近的整數。

8.計算在堆中存儲數據所需的空間量(每頁的總字節為8192):堆大小(字節)=8192xNum_Pages。

二、下面以employees表為例,估算存儲該表所需的堆空間大小

employees表結構如下:

Create table Employees

(EmployeeID int,

LastName nvarchar(20),

FirstName nvarchar(10),

Title nvarchar(30),

Birthday datatime

HireDate datatime

Adress nvarchar(60),

City nvarchar(15),

PostalCard nvarchar(10),

HomePhone nvarchar(12),

其中的固定長度列有EmployeeID,Birthday,HireDate共計3列。

其中可變長度列有LastName,FirstName,Title,Adress,City,PostalCard,HomePhone共計7列。

固定長度列的總字節數:Fixed_Data_Size=(int)4+(datetime)8+(datetime)8=20

假設所有可變長度列均100%充滿,Max_Var_Size取表中的Address列的長度60,則可變長度列的總字節數:Variable_Data_Size=2+(7x2)+60=76

保留空位圖大小:Null_Bitmap=2+((10+7)/8)=3(下取整)

行的總大小:Row_Size=20+76+3+4=103

每頁的行數:Rows_Per_Page=8096/(103+2)=77

假定該表將存儲1000條記錄,則存儲所有行所需的頁數:

Num_Pages=1000/77=13(上取整)

該表存儲所需的空間量:8K*13=104K。估算出數據庫中所有表(堆)的大小求總和就得到數據庫的初始大小。假定數據庫EMP中還有5張表,每張表的堆大小估算結果分別為,220K,171K,128K,350K,760K。則數據庫的初始大小為=104K+220K+171K+128K+350K+760K=1733K,約2M(上取整)。

定義數據庫的物理結構

CREATE DATABASE EMP

ON

(name=’EMP_DAT’,

Filename’d:MPfileEMP_DAT.MDF’,

Sieze=2M,

Maxsize=5M,

Filegrowth=1M

LOG ON

(name=’EMP_log’,

Filename’d:EMPfileEMP_LOG.LDF’,

Sieze=1M,

Maxsize=3M,

Filegrowth=1M

三、總結

討論數據庫的初始大小,對于某些實例非常有效。比如數據增加不大的一類管理系統,一旦數據錄入結束,后期運行維護時產生的數據非常小,這樣數據庫基本無擴容,只要確定好數據庫的初始大小即可。在確定物理數據庫的各文件屬性時,SIZE屬性就是本文討論的主要問題。另外,數據庫文件的部署(FILENAME屬性),數據庫的增長方式(Filegrowth屬性)也影響數據庫實例的運行效率。數據庫的增長方式有兩種,按M字節增長和按百分比增長,一般情況下,我們將數據庫的增長方式設置為按M字節增長較優。如果考慮到數據庫的安全性,可以將數據庫文件同RAID磁盤陣列技術結合,合理部署數據庫文件的fliename屬性。將文件部署于不同的磁盤上,既加快了數據庫的讀寫速度,又提高的數據的安全性。合理設計、恰當部署是數據庫在設計階段進行優化的起點,SQL Server的數據庫優化技術還體現在諸多方面,比如索引的設計優化、查詢的優化等。因篇幅有限,在此不多討論。

參考文獻:

[1]明日科技.SQL SERVER 2005開發技術大全[M].北京:人民郵電出版社,2007.

[2]粘新育.SQL Server 2005數據庫應用技術[M].北京:中國鐵道出版社,2011.

[3]岳莉,劉凌,江軍.Study of Real-time Database Based on Common Information Model.International Conference on Intelligent Systems Design and Engineering Application,(ISDEA2013)

作者簡介:岳莉(1977-),女,碩士,講師,現為山東職業學院信息工程系教師,主要從事計算機應用、計算機軟件等方向的教學及應用研究工作。

主站蜘蛛池模板: 亚洲无码高清视频在线观看| 欧美中文字幕在线播放| 欧美成a人片在线观看| 国产一区二区三区精品欧美日韩| 午夜精品福利影院| 欧美福利在线播放| 天天色天天综合| 国产人成午夜免费看| 国模极品一区二区三区| 国产裸舞福利在线视频合集| 免费看av在线网站网址| 国产在线高清一级毛片| 亚洲欧洲日韩综合色天使| 特级毛片免费视频| 国产成人乱无码视频| 日韩在线第三页| 台湾AV国片精品女同性| 91在线播放免费不卡无毒| 国产一区在线视频观看| 原味小视频在线www国产| 国产成人久视频免费| 婷五月综合| 亚洲成人动漫在线观看| 久久成人国产精品免费软件| 国产欧美在线观看精品一区污| 美女被狂躁www在线观看| 亚洲最大福利网站| 99在线小视频| 另类专区亚洲| 亚洲国产看片基地久久1024| 欧美日本一区二区三区免费| 欧美翘臀一区二区三区| 日本在线国产| 国产69精品久久久久妇女| 国产一级毛片在线| 韩国福利一区| 高清无码手机在线观看| 99草精品视频| 亚洲国产成人麻豆精品| 精品视频免费在线| 久久久精品久久久久三级| 99精品影院| 日韩小视频在线观看| 在线免费观看AV| 欧美亚洲国产日韩电影在线| 国产精品va免费视频| 国产精品美女网站| 青青草一区| 在线无码av一区二区三区| jizz国产在线| 欧美午夜视频在线| 无码精品国产dvd在线观看9久 | 亚洲高清中文字幕在线看不卡| 97久久人人超碰国产精品| 亚洲综合专区| 日韩不卡免费视频| 福利在线不卡一区| 亚欧乱色视频网站大全| 色婷婷成人| 欧美午夜网站| 91毛片网| 亚洲日韩在线满18点击进入| 国产精品无码AV片在线观看播放| 久久精品人人做人人爽电影蜜月 | 欧美激情第一欧美在线| 亚洲精品国产成人7777| 日韩精品欧美国产在线| 色婷婷亚洲综合五月| 日韩在线1| 国产精品区视频中文字幕| 精品免费在线视频| 狼友视频国产精品首页| 久久精品人人做人人综合试看| 亚洲最新网址| 中文字幕2区| 国产超薄肉色丝袜网站| 亚洲无码视频一区二区三区 | 色有码无码视频| 57pao国产成视频免费播放| 波多野结衣一二三| 美女被躁出白浆视频播放| a级免费视频|