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

主站蜘蛛池模板: 91小视频在线观看| 伊人久久久大香线蕉综合直播| 国产欧美日韩一区二区视频在线| 麻豆精品在线视频| 欧美一级一级做性视频| 国产专区综合另类日韩一区| 亚洲AV无码久久精品色欲| 国产sm重味一区二区三区| 亚洲无码精品在线播放| 日韩欧美国产成人| 夜夜操国产| 色综合久久无码网| 日韩美一区二区| 自拍偷拍一区| 97国产精品视频自在拍| 99热这里只有免费国产精品| 久久亚洲日本不卡一区二区| 日韩av无码DVD| 91免费精品国偷自产在线在线| 欧美午夜在线视频| 日韩精品成人在线| 成人毛片免费在线观看| 国产国拍精品视频免费看| 亚洲区一区| 中文字幕在线一区二区在线| 97视频精品全国免费观看| 亚洲精品国产首次亮相| 国产菊爆视频在线观看| 亚洲天堂成人在线观看| 中文字幕久久波多野结衣| 久久99国产综合精品1| 欧美日韩中文字幕在线| 欧美激情一区二区三区成人| 国产丝袜第一页| 国产本道久久一区二区三区| 91午夜福利在线观看精品| 国产丝袜91| 免费人成又黄又爽的视频网站| 日韩精品高清自在线| 免费人成又黄又爽的视频网站| 国产精选小视频在线观看| 1024你懂的国产精品| 性欧美在线| 欧美日韩精品在线播放| 制服丝袜在线视频香蕉| 大香伊人久久| 亚洲日韩久久综合中文字幕| 99热这里只有免费国产精品 | 久久精品无码国产一区二区三区| 午夜免费小视频| 少妇人妻无码首页| 亚洲大学生视频在线播放| 亚卅精品无码久久毛片乌克兰| 精品亚洲欧美中文字幕在线看| 波多野结衣视频一区二区 | 日a本亚洲中文在线观看| 精品成人免费自拍视频| 亚洲综合在线最大成人| 欧美一区福利| 欧美激情一区二区三区成人| 青草视频免费在线观看| 亚洲免费福利视频| 欧美日韩动态图| 18禁高潮出水呻吟娇喘蜜芽| 免费观看成人久久网免费观看| 91免费在线看| 欧美精品亚洲二区| 日韩国产一区二区三区无码| 又黄又爽视频好爽视频| 日本午夜影院| A级毛片无码久久精品免费| 亚洲一区网站| 日韩av高清无码一区二区三区| 免费A∨中文乱码专区| P尤物久久99国产综合精品| 四虎影视8848永久精品| 精品久久久久无码| 欧美精品成人一区二区在线观看| 国产青青操| 亚洲精品第五页| 久久亚洲国产一区二区| 91精品啪在线观看国产|