SQL2008系统性能优化解决方案

时间:2025-02-27

SQL2008系统性能优化解决方案

SQL Server

系统性能调优解决方案

SQL2008系统性能优化解决方案

前言

近几年,医药流通市场经历了激烈的震荡,导致行业逐步成熟和企业的快速变革,差异化经营成为众多医药流通的竞争选择。时空产品在中国医药流通企业的发展过程中得到了广泛且深入应用,大量的客户化开发和定制支撑了企业管理中横向和纵向的变化,很好的适应了企业在发展过程中不断变化的需求。

对于数据库管理系统的使用,很多用户都面临着一个很棘手的问题:系统效率下降。产生效率下降的因素是多方面:

1. 硬件问题 2. 软件问题 3. 实施问题

正因为产生效率下降的因素很多,所以如何去查找原因成为我们首要关注的问题,时空公司也处在积极探索过程中。时空公司在解决一些客户问题的过程中积累了一些方法和思路,归纳总结后呈现给体系内的技术人员,本方案就系统效率调整所必需的基础知识、方法、技巧等几个方面进行阐述,从而让技术人员能够快速定位问题,解决问题,为合作伙伴提供优质,快捷的服务。

SQL2008系统性能优化解决方案

索引简介

索引是根据数据库表中一个或多个列的值进行排序的结构。索引提供指针以指向存储在表中指定列的数据值,然后根据指定的排序次序排列这些指针。 数据库使用索引的方式与使用书的目录很相似,通过搜索索引找到特定的值,然后跟随指针到达包含该值的行。 索引键:用于创建索引的列。

索引类型

聚集索引:

聚集索引基于数据行的键值在表内排序和存储这些数据行。由于数据行按基于聚集索引键的排序次序存储,因此聚集索引对查找行很有效。每个表只能有一个聚集索引,因为数据行本身只能按一个顺序存储。数据行本身构成聚集索引的最低级别(叶子节点)。只有当表包含聚集索引时,表内的数据行才按排序次序存储。如果表没有聚集索引,则其数据行按堆集方式存储。聚集索引对于那些经常要搜索范围值的列特别有效。使用聚集索引找到包含第一个值的行后,便可以确保包含后续索引值的行在物理相邻。例如:如果应用程序执行的一个查询经常检索某一日期范围内的记录,则使用聚集索引可以迅速找到包含开始日期的行,然后检索表中所有相邻的行,直到到达结束日期。这样有助于提高此类查询的性能。同样,如果对从表中检索的数据进行排序时经常要用到某一列,则可以将该表在该列上聚集(物理排序),避免每次查询该列时都进行排序,从而节省成本。

叶节点(包括数据)

非聚集索引

非聚集索引具有完全独立于数据行的结构。非聚集索引的最低行包含非聚集索引的键值,并且每个键值项都有指针指向包含该键值的数据行。数据行不按基于非聚集键的次序存储。如果一个表只有非聚集索引,它的数据行将按无序的堆集方式存储,非聚集索引可以建多个。

SQL2008系统性能优化解决方案

叶节点(指向数据)

唯一索引

唯一索引可以确保索引列不包含重复的值。在多列唯一索引的情况下,该索引可以确保

索引列中每个值组合都是唯一的。唯一索引既是索引也是约束。 复合索引

索引项是多个的就叫组合索引,也叫复合索引。复合索引使用时需要注意索引项的次序。

索引对性能的作用

使用索引的优点

1. 通过唯一性索引(unique)可确保数据的唯一性

2. 加快数据的检索速度 3. 加快表之间的连接 4. 减少分组和排序的时间

使用索引的原则

1. 在需要经常搜索的列上创建索引 2. 经常用于连接的列上创建索引

3. 经常需要根据范围进行搜索的列上创建索引 4. 经常需要排序的列上创建索引 5. 经常用于where子句的列上创建索引

不使用索引的原则

1. 查询很少使用和参考的列不建索引

2. 对只有少数值的列不建索引

3. 定义为text、image、bit的列不建索引

4. 当需要update性能远远高于select性能时不建或少建索引

常用命令

1. sp_helpindex : 报告表或视图上的索引信息

2. dbcc showcontig :显示指定表的数据和索引的碎片信息

SQL2008系统性能优化解决方案

3. dbcc dbreindex :重建指定数据库中一个或多个索引

4. dbcc indexdefrag :整理指定表或视图的聚集索引或辅助索引的碎片

创建索引

1. 定义索引时,可以指定每列的数据是按升序还是降序存储。如果不指定,则默认为升序 2. 为索引指定填充因子,可标识填充因子来指定每个索引页的填满程度。索引页上的空余空

间量很重要,因为当索引页填满时,系统必须花时间拆分它以便为新行腾出空间。

优化索引

1. 重建索引(dbcc dbreindex) 2. 索引优化向导

3. 整理指定的表或视图的聚集索引和辅助索引碎片(dbcc indexefrag)

问题定位

时空在产品开发过程中遵循大开发理,共四个研发层次,第一层技术研发,由时空技术研发部负责产品技术架构,平台工具的构建,第二层产品研发,由时空产品研发部负责应用系统搭建。第三层项目研发,由渠道技术部负责客户化定制,第四层客户研发,由客户信息中心根据自己需 …… 此处隐藏:10769字,全部文档内容请下载后查看。喜欢就下载吧 ……

SQL2008系统性能优化解决方案.doc 将本文的Word文档下载到电脑

    精彩图片

    热门精选

    大家正在看

    × 游客快捷下载通道(下载后可以自由复制和排版)

    限时特价:7 元/份 原价:20元

    支付方式:

    开通VIP包月会员 特价:29元/月

    注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
    微信:fanwen365 QQ:370150219