在sqlserver2008数据库中实现数据压缩

在sqlserver2008数据库中实现数据压缩

ID:9005549

大小:242.00 KB

页数:7页

时间:2018-04-14

在sqlserver2008数据库中实现数据压缩_第1页
在sqlserver2008数据库中实现数据压缩_第2页
在sqlserver2008数据库中实现数据压缩_第3页
在sqlserver2008数据库中实现数据压缩_第4页
在sqlserver2008数据库中实现数据压缩_第5页
资源描述:

《在sqlserver2008数据库中实现数据压缩》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、在SQLServer2008数据库中实现数据压缩(1)发布时间:2008.09.1914:03来源:赛迪网作者:林善茂【赛迪网-IT技术报道】摘要:SQLServer2008中有个有趣的新特性:数据压缩,利用该特性,我们可以减小数据表,索引以及分区的子集的大小。本文通过例子详细介绍如何使用该特性。SQLServer中的数据压缩功能,最早在SQLServer2005SP2中出现,当时针对decimail和numeric数据类型推出了新的存储格式--vardecimal。vardecimal存储格式允许decimal和numeric数据类型的存储作为一个可变长度列。这个概念已

2、扩展在SQLServer2008的所有固定长度的数据类型,如integer,char,和float等数据类型。借助数据压缩,减少了存储成本,并提高查询性能,减少I/O和增加缓冲点击率。虽然SQLServer2008支持vardecimal存储格式;但是,由于行级压缩可实现同样的目标,因此在SQLServer2008中不推荐使用vardecimal存储格式。SQLServer2008对于表和索引,同时支持行(ROW)和页面(Page)两种压缩模式。下面对这两种数据压缩类型简单做个对比:行压缩。行压缩可以将固定长度类型存储为可变长度存储类型。例如char(100)列储存在一个

3、可变长度存储格式将只使用了存储量所定义的数据。储存的“SQLServer2008”,压缩后只需要存放15个字符,而非全部100个字符,从而节省了85%的存储空间。这是在SQLServer2005ServicePack2中提供的vardecimal存储格式的思路的延伸。同时需要注意的是,这种压缩模式,将对所有数据类型的NULL和0值进行优化,从而使它们不占用任何字节。页面压缩模式。这种压缩功能,建立在行压缩基础之上,通过只存储一次页面上相同事件字节来将存储的冗余数据减到最小。使用页压缩压缩表和索引,除了采用行压缩,还采用了前缀压缩和字典压缩。数据压缩会减少的大小您的表格或索

4、引指标,最好是先评估一下压缩后所能节省的空间。,估计节省空间在一个表或索引使用,无论是sp_estimate_data_compression_savings系统存储过程还是数据压缩向导。检查过程中,如果发现现有数据的零碎程度很高,则可能需要重新生成索引(而不是使用压缩)来减小索引的大小。1、估算压缩后可节省的存储空间我们可以利用sp_estimate_data_compression_savings系统存储过程或者数据压缩向导可以预估出数据表或者索引可以节省的存储空间。以下举例说明:在AdventureWorks数据库中使用sp_estimate_data_compre

5、ssion_savings系统存储过程:参数说明:第一个参数是包含表或索引视图的数据库架构的名称。如果为NULL,则使用当前用户的默认架构。第二个参数是索引所属的表或索引视图的名称。第三个参数是索引的ID第四个参数是对象中的分区号最后一个参数是要评估的压缩的类型。执行上面的SQL语句,我们将看到以下的执行结果:图1执行SQL语句后的输出结果注意size_with_current_compression_setting(KB)和size_with_requested_compression_setting(KB)这两个列,这两字段将告诉您Sales.SalesOrderDe

6、tail这个表预计可节省的空间。如果要使用数据压缩向导,右键点击Sales.SalesOrderDetail这个表,在弹出菜单中选择Storag项中的ManageCompression子项。图2数据压缩菜单这将启动数据压缩向导。在欢迎界面中,单击“Next”,进入下一步骤。图3数据压缩向导欢迎界面在选择压缩类型页面中,点击“CompressionType”这一列的下拉菜单,根据实际需要选择压缩类型。在SQLServer2008数据库中实现数据压缩(2)发布时间:2008.09.1914:03来源:赛迪网作者:林善茂由于执行sp_estimate_data_compress

7、ion_savings系统存储过程时,我们选择了行压缩,为了便于对比,我们也选择相同选项。选完后点击“Calculate”按钮,将看到与执行存储过程后类似的信息。图4数据压缩向导过程中选择压缩类型这两种方法都可以预估出数据表或者索引可以节省的存储空间。2、改变表的压缩选项为了现有的未分区表能够支持压缩功能,需要使用ALTERTABLE命令,带上REBUILD选项。上面这句脚本允许sales.salesorderdetail表支持行压缩类型。你也可以在数据压缩向导中继续往下操作,同样也能使选中表支持压缩功能:在点击了“Calcu

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

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

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