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-),女,碩士,講師,現為山東職業學院信息工程系教師,主要從事計算機應用、計算機軟件等方向的教學及應用研究工作。

主站蜘蛛池模板: 久久精品波多野结衣| 亚洲欧美日韩成人在线| 久无码久无码av无码| 日韩在线欧美在线| 2021国产乱人伦在线播放| 国产成人无码Av在线播放无广告| 女人一级毛片| 国产97区一区二区三区无码| 国产麻豆福利av在线播放| 久久久久亚洲精品成人网 | 欧美精品亚洲精品日韩专区va| 中文字幕亚洲电影| 五月激激激综合网色播免费| 老司机精品久久| 国产日韩精品欧美一区灰| 91亚洲精选| 激情综合网址| 日本不卡在线| 中文字幕无码电影| 在线观看国产精品日本不卡网| 国产性爱网站| 在线国产91| 女人18毛片久久| 狠狠色噜噜狠狠狠狠色综合久| 亚洲另类第一页| 91成人免费观看| 国产黄在线观看| 色男人的天堂久久综合| 天天躁日日躁狠狠躁中文字幕| 国产伦片中文免费观看| 在线无码九区| 草逼视频国产| 国产极品嫩模在线观看91| 国产成人综合久久| 成人免费午夜视频| 2021精品国产自在现线看| 日本人又色又爽的视频| 久久毛片网| 午夜激情福利视频| 婷婷在线网站| 69免费在线视频| 99久久精品无码专区免费| 亚洲另类国产欧美一区二区| 久久www视频| 国产日韩欧美成人| 国产欧美成人不卡视频| 国产一级小视频| 亚洲日韩国产精品无码专区| 一区二区无码在线视频| 久久国产乱子伦视频无卡顿| 国产白浆视频| 国产成人无码综合亚洲日韩不卡| 毛片网站在线看| 国产福利影院在线观看| 午夜日本永久乱码免费播放片| 欧美精品1区| 五月婷婷精品| 国产在线麻豆波多野结衣| 国产精品微拍| 欧美成人一级| 老熟妇喷水一区二区三区| 99国产精品免费观看视频| 成人免费一级片| 国产欧美精品午夜在线播放| 中文字幕色在线| 午夜高清国产拍精品| 欧美性猛交一区二区三区| 中国丰满人妻无码束缚啪啪| 青青青伊人色综合久久| 五月天久久综合| 亚洲一区二区三区国产精华液| 在线看片免费人成视久网下载 | 又爽又大又黄a级毛片在线视频 | 日韩在线欧美在线| 精品五夜婷香蕉国产线看观看| 精品国产免费人成在线观看| 久草青青在线视频| 亚洲男人天堂2018| 国产又爽又黄无遮挡免费观看| av在线手机播放| 无码区日韩专区免费系列| 中文字幕人成人乱码亚洲电影|