数据库的目的就是管理大量的数据。随着知识经济的迅猛发展和信息技术水平的飞速提高,信息技术的应用越来越广泛,涉及的领域越来越多,从企业到学校,从政府到个人,几乎都席卷到了这个信息浪潮中。高速膨胀的需求,对数据库技术提出了更多更高更难的要求,例如要求处理的数据量越来越多、要求的处理速度越来越快。为了处理更多的数据量,例如太字节(TB)的数据,这就要求数据库采用新的存储引擎,并且可以处理来自各种数据源的数据。为了提高数据的处理速度,在数据库查询技术方面,要求采用新的查询模型、并行查询方式和新的索引技术。许多数据库供应商各出新招,纷纷推出自己的适应新形式的解决方案。微软公司作为在信息技术领域中成长最快的影响最大的计算机公司,也推出了自己的面向二十一世纪的数据库解决方案,这就是SQL Server 7.0。
SQL Server 7.0在许多数据库产品中之所以能够成为领先者,就是因为它为了满足客户的需求,在易用性、可伸缩性、可靠性和数据库仓库方面进行了许多革新。这些革新包括许多方面,例如SQL Server 7.0是第一个能够缩放以适应从便携式计算到企业级应用的各种规模的数据库,从MB级到GB级、从GB级到 TB级,它们可以使用完全相同的代码,数据库提供了100%的代码兼容性。SQL Server 7.0还是第一个支持自配置和自调整的数据库、第一个与OLAP服务器集成的数据库、第一个与数据转换服务集成的数据库、第一个提供了多服务器管理以适应大量服务器应用的数据库、第一个数据仓库框架成为解决元数据问题的综合方法、提供了对任意类型数据库的最广泛的复制选项,微软的全局数据存取策略实现了对大量信息资源的高性能访问。本文主要介绍有关索引和索引调整向导的内容。
在以前的SQL Server版本中,在一个查询语句中,一个表上最多使用一个索引。而在SQL Server 7.0中,索引操作得到了增强。SQL Server现在使用索引插入和索引联合算法来实现在一个查询语句中的可以使用多个索引。共享的行标识符用于连接同一个表上的两个索引。如果某个表中有一个聚簇索引,因此有一个聚簇键,那么该表上的全部非聚簇索引的叶节点使用该聚簇键作为行定位器,而不是使用物理记录标识符。如果表中没有聚簇索引,那么非聚簇索引继续使用物理记录标识符指向数据页。在上面的两种情况中,行定位器是非常稳定的。当聚簇索引的叶节点分开时,由于行定位器是有效的,所以非聚簇索引不需要被修改。如果表中没有聚簇索引,那么页的分开就不会发生。而在以前的版本中,非聚簇索引使用物理记录标识符如页号和行号,作为行的定位器。例如,如果聚簇索引(数据页)发生分解时,许多记录行被移动到了一个新的数据页,因此有了多个新的物理记录标识符。那么,所有的非聚簇索引都必须使用这些新的物理记录标识符进行修改,这样就需要耗费大量的时间和资源。