本文主要介绍sql server数据库压缩(sql2000数据库压缩),下面一起看看sql server数据库压缩(sql2000数据库压缩)相关资讯。
sql server 2005 sp2为我们带来了vardecimal函数。作为一种新的存储格式,vardecimal引入了小数和数值数据类型。vardecimal存储格式允许将小数和数值数据类型存储为可变长度的列。该函数使原来的定长十进制数据能够以可变格式存储在数据文件中。据说这个功能可以为一个典型的数据仓库节省30%的空间,sql server 2008还可以进一步完善数据压缩功能。此basis.sql server 2008现在支持两个选项:行压缩和网页压缩,并且可以为以下对象启用数据压缩选项:1 .不要创建聚集索引的表2。创建聚集索引表iii。非聚集索引(表设置压缩选项不影响表上的非聚集索引,需要单独设置聚集索引的压缩)4。索引视图5。在分区索引中对分区表和单个分区使用数据压缩的意义:首先,让 让我们来看看为什么存储成本在不断下降。如今,微软也在尝试在sql server中实现和改进数据压缩技术。虽然传统意义上的存储成本不再是首要考虑的因素,但这并不意味着数据库大小不是问题,因为数据库大小不仅影响存储成本,还关系到管理成本和性能。为什么会有管理成本问题?因为大规模的数据库备份,备份时间会比较长。当然,备份硬件的消耗也会增加(包括备份介质的成本、购买成本以及需要将更先进的备份设备带到备份窗口)。管理数据库的维护成本是有成本的。例如,我们经常需要完成dbcc任务。数据库越大,我们完成这些任务所需的时间就越多。那么让我们 ■扫描磁盘的性能。读取数据时,根据数据读取数据和页面单元。如果把数据线纳入io,一个数据页会有更多的数据页,所以会带来性能提升。最后考虑存储成本,按照原来数据压缩vardecimal的sql s测试数据,新的数据压缩技术可以达到2x7x的存储速率,企业是否应该考虑容灾增加存储空间,也会节省存储硬件的成本。使用数据压缩方法:在创建表或索引时,可以按下sql server 2008中的压缩选项。设置,比如:复制代码如下:创建数据表(col1 int,col2 varchar(200))和(data _ compression = row);如果需要改变分区的压缩选项,可以使用以下语句:复制代码如下:修改表数据重建分区= 1(数据压缩= page);如果分区表需要为每个分区设置不同的压缩选项,可以使用以下语句:(sql server 2008对于数据仓库的应用使用不同的分区和不同的压缩选项是非常重要的,因为数据仓库的事实表通常有一个或几个热分配,这些分区的数据经常需要更新,以避免数据压缩数据的更新处理负载。附加压缩选项可以关闭这些分区)复制代码如下:在ps1(col1)中创建一个partitionedtable(col1 int,col 2 varchar(200))(with data _ compression = partition(1),in partition data _ compression = pages(2到4));如果是为索引设置压缩选项,可以使用:复制代码如下:创建数据索引ix_testtable_col1(col1)和(data _ compression = rows);如果修改索引的压缩选项,可以使用:复制代码如下:将数据指标ix_testtable_col1改为rebuild(data _ compression = row);sql server 2008还提供了sp _ estimate _ data _ compression _ savings存储过程来帮助dba估计对象的大小,并在压缩选项后激活它。数据压缩的原理:对于行压缩,sql server 2008使用以下三种方法来节省存储空间:减少与记录相关的元数据开销。这些元数据是关于列、列长度和偏移量的信息。在某些情况下,元数据开销可能比旧的存储格式更大。它对数值类型(例如,整数、小数、浮点)和数值类型(例如,日期、时间和货币)采用可变长度存储格式。它以不存储空字符的可变长度格式存储固定长度的字符串。对于页面压缩,sql server 2008在数据页上交替使用。1。线压缩2。前缀压缩三。使用数据压缩进行字典压缩的注意事项:虽然sql server 2008的数据压缩功能很有价值,但是还是有一些值得注意的问题:数据压缩功能只有企业版和开发版才有。数据压缩允许数据页存储更多的数据行,但不会改变单行数据的最大限制8060字节。当...的时候在集表上创建聚集索引时,聚集索引默认为原始表上的压缩选项。在没有聚集索引的表上设置页压缩时,只有在以下情况下才能达到页压缩的实际效果:1。使用bulk insert语法将数据添加到表中。2。数据入到表中,并添加到…和(tablock)语法iii中。执行表的修改…使用page compression option rebuild命令更改表中不带聚集索引的压缩选项将导致表中的所有非聚集索引被重新生成,因为这些聚集索引的数据行地址已被更改。更改压缩选项所需的临时空间量与创建索引所需的空间量相同。所以对于分区表,我们可以逐个设置压缩选项,减少临时空间的需求压力。因为sql server 2008的数据压缩技术是vardecimal sql server 2005 sp2的超集,所以在设置数据压缩时不需要保留vardecimal。当然,为了保持向后兼容性,sql server 2008在当前版本中仍然保留了vardecimal sql server 2008,但是在下一个版本中,可以放弃vardecimal选项,所以要尽快将这些设置改为数据库的数据压缩设置。sql server 2008的压缩选项是工作在存储引擎层,因为这个特性的其他部分是透明的,所以当我们使用大容量数据到sql server的加载模式时,会大大增加cpu的工作量,同时在导出外部表数据的压缩文件时,可能会比原来占用更多的空间。相信在这里,朋友们对sql server 2008中的数据压缩技术有了更全面的了解。
了解更多sql server数据库压缩(sql2000数据库压缩)相关内容请关注本站点。