当数据库是比较大的,而当你想备份,我们可以启动数据库备份压缩。这项由于备份文件比较小的压缩,所以整个备份的更快的速度,同时还低了磁盘空间的消耗。

当然还有一方面。肯定会添加cpu的消耗。只是一般的server都是多核。所以实际上对系统不会有大的影响。

事实上。不仅能够在备份的时候压缩,在SQL Server 2008中。我们还能够对表和索引进行压缩,以下通过压缩前、压缩后的比較。来展示SQL Server 2008强大的表及索引的压缩功能。

这里在公司測试数据库找了一个中型的表,共同拥有943万多条记录。

1、压缩前表的大小

SP_SPACEUSED 'TB_WCB'

/*
name rows reserved data index_size unused
TB_WCB 9439661 746016 KB 412216 KB 329944 KB 3856 KB
*/

2、压缩表

这里启用的是row 级别的压缩

ALTER TABLE TB_WCB
rebuild
WITH (DATA_COMPRESSION =ROW)

3、压缩后的表大小

SP_SPACEUSED 'TB_WCB'

/*
name rows reserved data index_size unused
TB_WCB 9439661 497784 KB 167168 KB 328120 KB 2496 KB
*/

4、表压缩前后的对照

压缩前数据大小是412M(data字段的值就是表数据的大小,而index_size是索引的大小,两者是不同的),而在压缩后是 167M,压缩后表的大小仅仅是原来表的40%,效果非常明显,并且因为这个表中大部分字段仅仅是id,相对而言反复值还不算多的,假设反复值很多其它,那么压缩效果会更好。

可是,我们看到,索引的大小(index_size)基本上没什么变化。于是我们继续进行索引的压缩:

5、压缩索引

alter index IDX_TB_WCB_ID on TB_WCB
rebuild
with(data_compression=row)

6、索引压缩后的对照

SP_SPACEUSED 'MS_VISIT_QST_OPT'

/*
name rows reserved data index_size unused
TB_WCB 9439661 317208 KB 167168 KB 149872 KB 168 KB
*/

我们发现,索引压缩前大小是329M。而在压缩后是 149M,压缩比例为45%。效果也非常明显。

总结:

通过表和索引的压缩。我们能够减小表占用的磁盘空间,这个仅仅是一部分,更重要的是,读取相同多的数据,仅仅须要读取更少的数据页,也就是仅仅须要更少的IO。那么读取速度肯定会更快,并且因为占用的空间小了,也能够让很多其它的数根据网页缓存在存储器,进一步提高系统的整体性能。

版权声明:本文博主原创文章。博客,未经同意不得转载。

【SQL Server性能优化】SQL Server 2008该表压缩的更多相关文章

  1. SQL Server性能优化(8)堆表结构介绍

    一.表结构综述 下图是SQL Server中表的组织形式(其中分区1.分区2是为了便于管理,把表进行分区,放到不同的硬盘数据文件里.默认情况下,表只有一个分区.).表在硬盘上的存放形式,有堆和B树两种 ...

  2. SQL Server 性能优化之——T-SQL 临时表、表变量、UNION

    这次看一下临时表,表变量和Union命令方面是否可以被优化呢? 阅读导航 一.临时表和表变量 二.本次的另一个重头戏UNION 命令 一.临时表和表变量 很多数据库开发者使用临时表和表变量将代码分解成 ...

  3. SQL Server 性能优化实战系列(一)

    数据库服务器主要用于存储.查询.检索企业内部的信息,因此需要搭配专用的数据库系统,对服务器的兼容性.可靠性和稳定性等方面都有很高的要求.        下面是进行笼统的技术点说明,为的是让大家有一个整 ...

  4. SQL Server性能优化(6)查询语句建议

    1. 如果对数据不是工业级的访问(允许脏读),在select里添加 with(nolock) ID FROM Measure_heat WITH (nolock) 2. 限制结果集的数据量,如使用TO ...

  5. SQL Server 性能优化之RML Utilities:快速入门(Quick Start)(1)

      SQL Server 性能优化之RML Utilities:快速入门(Quick Start)(1) 安装Quick Start工具 RML(Replay Markup Language)是MS ...

  6. 【SQL Server性能优化】运用SQL Server的全文检索来提高模糊匹配的效率

    原文:[SQL Server性能优化]运用SQL Server的全文检索来提高模糊匹配的效率 今天去面试,这个公司的业务需要模糊查询数据,之前他们通过mongodb来存储数据,但他们说会有丢数据的问题 ...

  7. SQL Server 性能优化(一)——简介

    原文:SQL Server 性能优化(一)--简介 一.性能优化的理由: 听起来有点多余,但是还是详细说一下: 1.节省成本:这里的成本不一定是钱,但是基本上可以变相认为是节省钱.性能上去了,本来要投 ...

  8. SQL Server 性能优化之——系统化方法提高性能

    SQL Server 性能优化之——系统化方法提高性能 阅读导航 1. 概述 2. 规范逻辑数据库设计 3. 使用高效索引设计 4. 使用高效的查询设计 5. 使用技术分析低性能 6. 总结 1. 概 ...

  9. SQL Server性能优化与管理的艺术 附件下载地址

    首先感谢读者们对鄙人的支持,购买了<SQL Server性能优化与管理的艺术>,由于之前出版社的一些疏忽,附件没有上传成功,再次本人深表歉意. 请需要下载附件的读者从下面链接下载,谢谢: ...

  10. SQL SERVER性能优化综述

    SQL SERVER性能优化综述 一个系统的性能的提高,不单单是试运行或者维护阶段的性能调优的任务,也不单单是开发阶段的事情,而是在整个软件生命周期都需要注意,进行有效工作才能达到的.所以我希望按照软 ...

随机推荐

  1. Android中的动画具体解释系列【1】——逐帧动画

    逐帧动画事实上非常easy,以下我们来看一个样例: <?xml version="1.0" encoding="utf-8"?> <anima ...

  2. Eclipse常用热键

    ,Ctrl+D 删除选中的几行 ,Alt+上下箭头 移动选中的代码块 ,Alt+左右箭头 回退 前进 ,Alt+Shift+上下箭头 复制选中的代码块 ,sysout+Ctrl space 生成Sys ...

  3. A Game of Thrones(2) - Catelyn

    Catelyn had never liked this godswood(神木林). She had been born a Tully, at Riverrun far to the south, ...

  4. hdu 4465 Candy(2012 ACM-ICPC 成都现场赛)

    简单概率题,可以直接由剩余n个递推到剩余0个.现在考虑剩余x个概率为(1-p)的candy时,概率为C(2 * n - x, x) * pow(p, n + 1)  *pow(1 - p, n - x ...

  5. ibatis dynamic的用法

    <select id="idididid" resultClass="java.uitl.HashMap" parameterClass="ja ...

  6. a标签的背景图在ie8下不显示的问题

    突然发现临下班时候问题就多, 马上下班了被头头告知线上已经上线很久的活动现在有个兼容性问题, a标签的背景图在ie8下会有不显示的情况. 我自己找了台ie8的机器实验了一下, 发现一切正常, 但是在另 ...

  7. Android error:No CPU/ABI system image available for this target

    原文:Android error:No CPU/ABI system image available for this target No CPU/ABI system image available ...

  8. Nim博弈游戏

    给定n堆石子,每次每人能从一堆石子中取若干个石子(不能不取),最后不能取石子者败 对于这个游戏,我们要判断的是,给定局势下,先手者胜还是败 设先手胜的局势为N-postion,先手败的局势为P-pos ...

  9. vs2015 安装问题汇总

    1. The product version that you are trying to set up is earlier than the version already installed o ...

  10. 每天进步一点点——再次了解Linux进程ID

    转载请注明出处:http://blog.csdn.net/cywosp/article/details/38968011 1. 概述 众所周知,进程(process)是一个可运行程序的实例,可是在Li ...