尽管索引顾问提供一个可用于执行其结果的 SQL 脚本,但您可能想要在执行结果前先对结果进行访问。例如,您可能想要将分析期间所生成的建议索引名称重命名。
访问结果时,请考虑以下事项:
建议的索引是否与您自己的期望相符? 如果您非常了解数据库中的数据,并且了解目前对数据库运行的查询,那么您可能需要凭借自己的认识来检查建议的索引是否有用。或许建议的索引只影响很少运行的单个查询,或许建议的索引位于小表上,总体影响较小。或许索引顾问建议应删除的索引用于其它一些没有包含在您的跟踪会话中的任务。
建议的各个索引所产生的效果之间是否存在很强的相关性? 索引建议会尝试单独评估各个索引的相对收益。不过,两个索引只有都存在时才会被使用(如果它们存在,查询可能会使用两个,如果缺少其中一个,则哪个也不用)。您可以进一步研究 [请求] 选项卡并检查查询计划,以查看建议索引的使用方式。
您是否能在创建聚簇索引时重组表? 为了充分利用聚簇索引,您应该使用 REORGANIZE TABLE 语句重组创建聚簇索引时所在的表。如果索引顾问推荐许多聚簇索引,您可能需要卸载和重装数据库才能获得全部益处。卸载和重装表是一个非常耗时的操作,并且需要大量的磁盘空间资源。您可能需要确认自己具有实现建议所需的时间和资源。
分析期间的服务器和连接的状态是否反映了生产运营中的实际状态? 分析结果取决于数据库服务器的状态,包括哪些数据位于高速缓存中。它们也取决于连接的状态,包括某些数据库选项设置。由于分析只创建虚拟索引而不执行请求,因此,数据库服务器的状态在分析期间实质是静态的(其它连接引入的更改除外)。如果该状态不能代表数据库的典型操作,您可能想在其它不同条件下重新运行分析。
![]() |
使用DocCommentXchange讨论此页。
|
版权 © 2013, SAP 股份公司或其关联公司. - SAP Sybase SQL Anywhere 16.0 |