您可以采取许多措施来管理数据库的性能。SQL Server 2000 提供了几种工具来帮助您完成这些任务。
管理性能
让 SQL Server 完成大多数优化任务。
SQL Server 2000 经过了重大改进,可以创建基本上能够进行自动配置和自行优化的数据库服务器。利用 SQL Server 自动优化设置这一优点,可帮助 SQL Server 即使在用户负荷和查询随时间不断变化的情况下也能以最高性能运行。
管理 RAM 缓存。
RAM 是一种有限的资源。任何数据库服务器环境的一个主要部分就是管理随机存取存储器 (RAM) 缓冲区缓存。访问 RAM 缓存中的数据比访问磁盘中同样的信息要快得多。但是,RAM 资源是有限的。如果可以将数据库 I/O(针对物理磁盘子系统的输入/输出操作)减少到最低所需的数据集和索引页,这些页将在 RAM 中停留更长时间。如果流入缓冲区缓存的不必要的数据和索引信息过多,会将有价值的页很快排挤出去。性能优化的主要目标是减少 I/O,以使缓冲区缓存得到最充分的利用。
创建和维护合适的索引。
对于所有的数据库查询,维护最小 I/O 的一个关键因素是确保创建和维护合适的索引。
对大数据集和索引进行分区。
要减少总体 I/O 争用现象并改善并行操作,请考虑对表数据和索引进行分区。本章介绍了使用 SQL Server 2000 实现和管理分区的多种方法。
监视磁盘 I/O 子系统的性能。
物理磁盘子系统必须为数据库服务器提供足够的 I/O 处理能力,以使数据库服务器在运行时不会出现磁盘排队现象。磁盘排队现象会导致性能不佳。本文介绍了如何检测磁盘 I/O 问题以及如何解决这些问题。
优化应用程序和查询。
当数据库服务器通过给定的应用程序为来自成百上千个连接的请求提供服务时,这种优化变得尤为重要。由于应用程序通常会确定
要在数据库服务器上执行的 SQL 查询,所以应用程序开发人员一定要了解 SQL Server 的结构基础知识以及如何充分利用 SQL Server 的索引来最小化 I/O。
优化活动数据。
在许多商业智能数据库中,绝大多数数据库活动都会涉及最近一个月或一个季度的数据(多达 80% 的数据库活动都可能是因最近装载的数据而发生的)。要保持良好的数据库总体性能,在对这些数据进行装载、索引和分区时,所采取的方式一定要能够为这些数据提供最佳的数据访问性能。
利用 SQL Server 性能工具
SQL 事件探查器和索引优化向导
SQL 事件探查器可用于监视和记录 SQL Server 的工作负荷。然后,可以将记录下来的工作负荷可以提交到索引优化向导,这样,在必要的时候就可以更改索引来帮助提高性能。SQL 事件探查器和索引优化向导可帮助管理员实现优化的索引。定期使用这些工具可使 SQL Server 保持良好的性能,即使查询工作负荷随时间而变化也是如此。
SQL 查询分析器和图形执行计划
在 SQL Server 2000 中,SQL 查询分析器提供了“图形执行计划”,使用这种方法可以方便地分析有问题的 SQL 查询。“统计 I/O”是 SQL 查询分析器的另一个重要功能,本章后面将会进行介绍。
系统监视器对象
SQL Server 提供了一组系统监视器对象和计数器,可以为监视和分析 SQL Server 的运行状况提供信息。本章介绍了要监视的关键计数器。
影响性能的配置选项
最大异步 IO
SQL Server 7.0 中的手动配置选项最大异步 I/O 在 SQL Server 2000 中已经实现了自动化。以前,最大异步 I/O 用于指定在一次检查点操作过程中,SQL Server 7.0 可以向 Microsoft Windows NT® 4.0 和 Windows® 2000 同时提交的磁盘 I/O 请求的数量。Windows 接下来又将这些请求提交到物理磁盘子系统。此配置设置实现自动化后,SQL Server 2000 就能够以动态方式自动维护最佳的 I/O 吞吐量。
注意 Windows 98 不支持异步 I/O,因此在该平台上不支持最大异步 I/O 选项。