sql server数据库设计优化技术

sql server数据库设计优化技术

ID:10706212

大小:27.00 KB

页数:5页

时间:2018-07-07

sql server数据库设计优化技术_第1页
sql server数据库设计优化技术_第2页
sql server数据库设计优化技术_第3页
sql server数据库设计优化技术_第4页
sql server数据库设计优化技术_第5页
资源描述:

《sql server数据库设计优化技术》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、SQLSERVER数据库设计优化技术【摘要】SQLSERVER是占有市场份额较大的一个关系数据库管理系统,本文讨论在数据库设计阶段的优化技术——估算数据库初始大小。【关键词】数据库SQLSERVEROptimizationsOnDataBaseDesignOfSQLSERVERYueLi【Abstract】SQLSERVERisakindofDBMSwhichispopularused,thepaperexplorestheoptimizationsondatabasedesign.——estimatingtheinitialsizeoftheDataBase【Keywords】Data

2、base;SQLSERVER一个数据库实例能够以最佳状态运行是以良好的设计为基础并配合合理的硬件部署和软件协助实现的。本文针对占有市场份额很大的数据库产品SQLSERVER,从数据库实例的设计阶段估算数据库初始大小来阐述优化数据库的关键技术。5根据概念结构设计的结果我们可以得出数据库的具体结构,从而进行合理的部署。数据库的初始大小就是一个关键问题。数据库初始大小过大,会浪费我们不必要的硬盘空间,数据库初始大小过小,SQLServer会经常根据需要进行数据库的扩容,从而增加了系统运行负担,因此数据库的初始大小是优化技术的另一个关键。那么数据库的初始大小应该设计为多大合适呢?SQLSERVE

3、R的数据库存储空间的大小由以下几个因素决定:堆或者聚集索引的大小,非聚集索引的大小。本篇仅对堆进行讨论。1.估算堆的大小①估算表中将存储的行数:Num_Rows=表中的行数②指定固定长度和可变长度列的数量,并计算存储所需的空间:计算每组列在数据行中所占据的空间。列的大小取决于数据类型和长度说明。Num_Cols=总列数(固定长度和可变长度)Fixed_Data_Size=所有固定长度列的总字节数Num_Variable_Cols=可变长度列的数量Max_Var_Size=所有可变长度列的最大字节数③保留行中称为空位图的部分以管理列的为空性。计算大小:Null_Bitmap=2+((Num

4、_Cols+7)/58)取整数部分④计算可变长度数据的大小:假设所有可变长度列均百分之百充满如果表中有可变长度列,确定在行中存储这些列所用的空间:Variable_Data_Size=2+(Num_Variable_Colsx2)+Max_Var_Size如果预计可变长度列占用的存储空间比例较低,可以按照该比例调整Max_Var_Size值,从而对整个表的大小得出一个更准确的估计。如果没有可变长度列,则Variable_Data_Size取值为0。⑤计算总的行大小:Row_Size=Fixed_Data_Size+Variable_Data_Size+Null_Bitmap+4其中的数值

5、4是数据行的行标题开销。⑥计算每页的行数(每页大小为8K,页首的12个字节用于存储页的基本信息,因此有8096可用字节):Rows_Per_Page=8096/(Row_Size+2)由于行的存储不能跨页,因此每页的行数应向下舍入到最接近的整数。公式中的数值2是计算行数时引入的行大小余量。5⑦计算存储所有行所需的页数:Num_Pages=Num_Rows/Rows_Per_Page估计的页数应向上舍入到最接近的整数。⑧计算在堆中存储数据所需的空间量(每页的总字节为8192):堆大小(字节)=8192xNum_Pages2.下面以employees表为例,估算存储该表所需的堆空间大小。表结

6、构如下:CreatetableEmployees(EmployeeIDint,LastNamenvarchar(20),FirstNamenvarchar(10),Titlenvarchar(30),BirthdaydatatimeHireDatedatatimeAdressnvarchar(60),Citynvarchar(15),PostalCardnvarchar(10),HomePhonenvarchar(12),)5其中的固定长度列有EmployeeID,Birthday,HireDate共计3列。其中可变长度列有LastName,FirstName,Title,Adress,

7、City,PostalCard,HomePhone共计7列。固定长度列的总字节数:Fixed_Data_Size=(int)4+(datetime)8+(datetime)8=20假设所有可变长度列均百分之百充满,Max_Var_Size取表中的Address列的长度60,则可变长度列的总字节数:Variable_Data_Size=2+(7x2)+60=76保留空位图大小:Null_Bitmap=2+((10+7)/8)=3(下取

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。