选择优化选项的方案
可以组合数据库引擎优化顾问所提供的各种优化选项来获得实现 SQL Server 所需的建议。以下各节介绍了各种优化选项组合的方案以及每种组合产生的优化建议类型。
选择正确的选项组合
下表列出了一些示例,说明数据库引擎优化顾问是如何解释优化选项的各种组合的,用户可以通过 dta 命令提示实用工具或数据库引擎优化顾问图形用户界面 (GUI) 来选择优化选项的不同组合:
dta 指定的参数 |
GUI 的“优化选项”选项卡中选择的选项 |
数据库引擎优化顾问如何解释此选项组合 |
---|---|---|
-fa IDX -fp NONE -fk ALL |
索引 不分区 保留所有现有 PDS |
在建议中保留所有现有的物理设计结构。数据库引擎优化顾问也可能建议使用未分区的索引。 |
-fa IDX_IV -fp NONE -fk NONE |
索引和索引视图 不分区 不保留任何现有 PDS |
在建议中仅包含未分区索引和索引视图。实施所产生的建议后,将删除所有现有的分区对象(如果存在)。 |
-fa IDX_IV -fp ALIGNED -fk ALIGNED |
索引和索引视图 对齐分区 保留对齐分区 |
保留所有现有的“对齐”物理设计结构(与基表和视图的分区方法相同)。数据库引擎优化顾问可能会建议使用同样对齐的其他索引和索引视图。实施所产生的建议会将数据库设置为“对齐”状态。 |
优化选项组合的使用方案
下表列出了大多数用户实际遇到的常见方案以及启用这些方案的优化组合。影响这些方案的因素如下:
性能
功能熟悉程度,例如使用索引视图时有多熟练
数据库的增量更改
可管理性
向后兼容
便于迁移(从 Microsoft SQL Server 的一个版本到另一个版本)
性能是所有方案共有的因素;因此,下表中未将其作为因素之一显式列出。
#. |
方案说明 |
因素 |
指定的对象 |
指定的分区 |
指定的保留选项 |
---|---|---|---|---|---|
1 |
用户希望获得最佳性能(新数据库或现有数据库),但使用分区功能不熟练。从 SQL Server 2005 迁移到 SQL Server 2008 的用户。 |
功能熟悉程度、向后兼容性 |
索引和索引视图 |
无 |
无 |
2 |
用户优化小型新查询或即席查询集,但使用分区功能不熟练。从 SQL Server 2005 迁移到 SQL Server 2008 的用户。 |
增量更改、功能熟悉程度、向后兼容性 |
索引和索引视图 |
无 |
全部 |
3 |
用户不希望更改对基表的聚类分析。使用分区不熟练。从 SQL Server 2005 迁移到 SQL Server 2008 的用户。 |
功能熟悉程度、增量更改 |
索引和索引视图 |
无 |
聚集索引 |
4 |
用户需要优化良好的索引,并且仅希望增量更改小型新查询集的索引。使用分区不熟练。从 SQL Server 7.0 版迁移到 SQL Server 2000 的用户和 SQL Server 2000 用户。 |
增量更改 |
索引和索引视图 |
无 |
索引 |
5 |
用户希望整个工作负荷(新数据库或现有数据库)具有最佳性能。用户配置或部署新的 SQL Server 系统。从 SQL Server 2005 迁移到 SQL Server 2008 的用户希望利用性能分区。 |
- |
索引和索引视图 |
完整 |
无 |
6 |
用户优化小型新查询或即席查询集。用户部署新的 SQL Server 系统。 |
增量更改 |
索引和索引视图 |
完整 |
全部 |
7 |
用户不希望更改基表的聚集,但却希望获得最佳性能。 |
增量更改 |
索引和索引视图 |
完整 |
聚集索引 |
8 |
用户希望保留所有现有索引,而不必保留索引视图,同时尽量提高性能。工作负荷改变时可能有用(在工作负荷改变时,索引视图不如索引可靠)。 |
增量更改 |
索引和索引视图 |
完整 |
索引 |
9 |
用户希望获得最佳性能(新数据库或现有数据库),但分区主要是为了提高可管理性。用户配置或部署新系统。 |
可管理性 |
索引和索引视图 |
对齐 |
无 |
10 |
用户主要是出于便于管理的考虑而需要使用分区。优化小型新查询或即席查询集。 |
增量更改、可管理性 |
索引和索引视图 |
对齐 |
对齐 |
11 |
用户不希望更改对基表的聚类分析。分区主要是为了提高可管理性。 |
功能熟悉程度、增量更改、可管理性 |
索引和索引视图 |
对齐 |
聚集索引 |
12 |
用户可以熟练使用索引,但使用索引视图或分区不熟练。整个工作负荷的最佳性能。用户从 SQL Server 7.0 版升级到 SQL Server 2005,或从 SQL Server 7.0 版升级到 SQL Server 2008。 |
功能熟悉程度、向后兼容性 |
索引 |
无 |
无 |
13 |
用户可以熟练使用索引,但使用索引视图或分区不熟练。优化一小组新查询或即席查询。用户从 SQL Server 7.0 版升级到 SQL Server 2005,或从 SQL Server 7.0 版升级到 SQL Server 2008。 |
增量更改、功能熟悉程度、向后兼容性 |
索引 |
无 |
全部 |
14 |
用户不希望更改对基表的聚类分析。使用分区或索引视图不熟练。用户从 SQL Server 7.0 版升级到 SQL Server 2005,或从 SQL Server 7.0 版升级到 SQL Server 2008。 |
功能熟悉程度、增量更改 |
索引 |
无 |
聚集索引 |
15 |
用户希望从当前数据库中清除现有索引视图,但不清除现有索引。 |
功能熟悉程度、增量更改 |
索引 |
无 |
索引 |
16 |
用户使用索引视图不熟练。整个工作负荷的最佳性能。用户从 SQL Server 7.0 版升级到 SQL Server 2008。 |
功能熟悉程度 |
索引 |
完整 |
无 |
17 |
用户使用索引视图不熟练。优化一小组新查询或即席查询。用户从 SQL Server 7.0 版升级到 SQL Server 2008。 |
功能熟悉程度、增量更改 |
索引 |
完整 |
全部 |
18 |
用户使用索引视图不熟练。用户不希望更改对基表的聚类分析。优化小型新查询或即席查询集。用户从 SQL Server 7.0 版升级到 SQL Server 2008。 |
功能熟悉程度、增量更改 |
索引 |
完整 |
聚集索引 |
19 |
用户希望从当前数据库中清除现有索引视图,但不清除现有索引。 |
功能熟悉程度、增量更改 |
索引 |
完整 |
索引 |
20 |
用户能熟练使用索引,但使用索引视图不熟练。分区主要是为了提高可管理性。期望整个工作负荷的最佳性能。用户从 SQL Server 7.0 版升级到 SQL Server 2005。 |
功能熟悉程度、可管理性 |
索引 |
对齐 |
无 |
21 |
用户能熟练使用索引,但使用索引视图不熟练。分区主要是为了提高可管理性。期望整个工作负荷的最佳性能。用户从 SQL Server 7.0 版升级到 SQL Server 2008。 |
功能熟悉程度、可管理性 |
索引 |
对齐 |
对齐 |
22 |
用户不希望更改对基表的聚类分析。使用索引视图不熟练。分区主要是为了提高可管理性。用户从 SQL Server 7.0 版升级到 SQL Server 2005。 |
功能熟悉程度、增量更改、可管理性 |
索引 |
对齐 |
聚集索引 |
23 |
用户正在优化一小组查询。不希望得到任何新的聚集索引。使用索引视图或分区不熟练。 |
功能熟悉程度、增量更改 |
非聚集索引 |
无 |
全部 |
24 |
用户不希望得到任何新的聚集索引。使用索引视图或分区不熟练。 |
功能熟悉程度、增量更改 |
非聚集索引 |
无 |
聚集索引 |
25 |
用户正在优化一小组查询。不希望得到任何新的聚集索引。使用索引视图不熟练。 |
功能熟悉程度、增量更改 |
非聚集索引 |
完整 |
全部 |
26 |
用户不希望得到任何新的聚集索引。使用索引视图不熟练。愿意考虑完全重新设计非聚集索引。 |
功能熟悉程度、增量更改 |
非聚集索引 |
完整 |
聚集索引 |
27 |
用户不希望得到任何新的聚集索引。使用索引视图不熟练。希望最终物理设计保持对齐。 |
功能熟悉程度、增量更改、可管理性 |
非聚集索引 |
对齐 |
对齐 |
28 |
用户正在优化一小组查询。不希望得到任何新的聚集索引。使用索引视图不熟练。只要对齐,就愿意考虑重新设计非聚集索引。 |
功能熟悉程度、增量更改 |
非聚集索引 |
对齐 |
聚集索引 |
29 |
用户要对从表数据子集中选择的一组查询进行优化。希望获得最佳索引性能。 |
性能 |
带有筛选索引选项的索引 |
无 |
无 |
30 |
用户需要正确优化的索引,并且仅希望增量更改小型新查询集的索引。从 SQL Server 2005 迁移到 SQL Server 2008 的用户。 |
增量更改 |
带有筛选索引选项的索引和索引视图 |
无 |
索引 |