快速业务通道

探密微软SQL Server 2008中新压缩特性

作者 佚名技术 来源 数据库编程 浏览 发布时间 2012-03-21
因为CPU使用率会上升,但I/O使用率和内存占用会下降。但这所有的压缩选项可能成为SQLServer2008企业版专享选项。


第3页:如何使用数据压缩


  附录(如何使用数据压缩):


  (1)启用行压缩


  如果我们要在指定的表上启用行压缩,可执行以下语句:


  CREATE TABLE Alpha(col1 int,col2 char(1000))


  WITH (DATA_COMPRESSION = ROW)


  (2)启用页压缩


  如果我们要在指定的分区上启用压缩,可执行以下语句:


  CREATE TABLE Alpha_Partition(col1 int,col2 char(1000))


  ON PartitionScheme(col 1)


  WITH


  (DATA_COMPRESSION = PAGE ON)


  PARTITIONS(1-3)


  (3)修改压缩


  如果要把一个现有的索引修改为使用压缩,可执行以下语句:


  ALTER INDEX Collndx ON Alpha REBUILD


  WITH (DATA_C0MPRESSION=PAGE)


  ALTER INDEX Collndx ON Alpha REBUILD


  partition = 2


  WITH (DATA_COMPRESSION=PAGE)


  SQL Server 2008中的压缩选项可以在创建表或索引时通过Option进行设置,例如:


  CREATE TABLE TestTable (col1 int,col2varchar(200))WITH(DATA_COMPRESSION = ROW);


  如果需要改变一个分区的压缩选项,则可以用以下语句:


  ALTER TABLE TestTable REBUILD PARTITION = 1 WITH(DATACOMPRESSION=PAGE);


  如果需要为分区表的各个分区设置不同的压缩选项,可以使用以下的语句:(SQLServer2008可以对不同的分区使用不同的压缩选项,这一点对于数据仓库应用是非常重要的,因为数据仓库的事实表通常都会有一个或数个热分区,这些分区中的数据经常需要更新,为了避免数据压缩给这些分区上的数据更新带来额外的处理载荷,可以对这些分区关闭压缩选项)


  CREATE TABLE PartitionedTable (col1 int, col2varchar(200))


  ON PS1 (col1)


  WITH (DATA_COMPRESSION = ROW ON PARTITIONS(1),


  DATA_COMPRESSION = PAGE ON PARTITION(2 TO 4));


  如果是为某个索引设置压缩选项的话,可以使用:


  CREATE INDEX IX_TestTable_Col1 ONTestTable(Col1)WITH(DATA_COMPRESSION = ROW);


  如果是修改某个索引的压缩选项,可以使用:


  ALTER INDEX IX_TestTable_Col1 ONTestTableREBUILDWITH(DATA_COMPRESSION = ROW);

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号