索引分区是SQL Server 2005所引进的多个新特性的其中一个。它是将特定索引负荷分散到多个文件的一种方式,同时,它还可以提高并行性和索引性能。 SQL Server 2000分区视图和SQL Srver 2005索引分区 较早版本的SQL Server使用分割视图来实现索引分区。表的查询和修改也可以通过视图来进行某些方面的限制,这样,就只有需要的物理文件会被查询或修改。
比如(这只是一个随意的例子,但它可以满足我们的需要),如果我们的客户数据库中有26个表,对应字母表的26个字母,那么我们可以使用分区视图来汇总所有表的结果,同时使用WITH CHECK来约束只更新所需要的表。我们……
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
索引分区是SQL Server 2005所引进的多个新特性的其中一个。它是将特定索引负荷分散到多个文件的一种方式,同时,它还可以提高并行性和索引性能。
SQL Server 2000分区视图和SQL Srver 2005索引分区
较早版本的SQL Server使用分割视图来实现索引分区。表的查询和修改也可以通过视图来进行某些方面的限制,这样,就只有需要的物理文件会被查询或修改。比如(这只是一个随意的例子,但它可以满足我们的需要),如果我们的客户数据库中有26个表,对应字母表的26个字母,那么我们可以使用分区视图来汇总所有表的结果,同时使用WITH CHECK来约束只更新所需要的表。我们可以查询所有“B”开头的客户,并且分区视图也会知道只需要查“B”表。
分区视图的缺点是我们必须手动进行创建和管理。在SQL Server 2005对分区、表和数据之间有更大的抽象,因此它们可以被单独操作。
同时,索引分区的新特性是,特定表的索引被分区或限制在多文档和文件组中。在此,我收集了一些关于如何建立和使用索引分区的基本指导原则;详细的信息可以阅读SQL Server 2005 Books Online。
创建分区数据索引
有两种方式可以创建分区数据索引:根据数据分区方式来分区索引或单独分区索引。选择何种分区方式,取决于我们访问和更新数据的方式。
首先,索引是“按分区排列的”。默认情况下,在一个分区表上的任意新建立的索引都与表有一样的分区。在下面的情况中,这将会是最佳的方式:
- 表将被插入的大量数据;
- 预计会需要添加的分区;
索引分区对表的数据建立非常重要。
例如,可以将一年的数据根据月数分区,其中以日期为主键。由于SQL Server可以快速确定指定关键词在索引中的位置,因此这种方式的索引分区可以加快数据查找速度。
有些时候我们并不想使用分区对齐的方式。特别是在唯一的索引键不包含表分区字段时。比如,如果我们使用的是上面A到Z分区模式,而表的索引键却是GUID或自动递增数而非客户名称,那么我们可以将索引保存在索引本身的分区中,这样它就不是与表对齐。任何情况下,如果我们显示地将索引放到一个不同的文件组,那么分区将与表不匹配。
如果我们分区有唯一索引的数据,那么用于分区的字段必须与唯一索引键相同。例如,如果我们的唯一分区索引是一个客户ID号,那么它也是用于分区索引键的相同字段。
作者
Serdar Yegulalp从1994年到2001年为Windows杂志写作,覆盖了广泛的技术方面。他现在是《The Windows 2000 Power Users Newsletter》一书的出版者,辛勤钻研他擅长的Windows NT, Windows 2000 and Windows XP领域,并为TechTarget写专栏。
翻译
TechTarget中国特约技术编辑,某高校计算机科学专业教师和网络实验室负责人,曾任职某网络国际厂商,关注数据中心、开发运维、数据库及软件开发技术。有多本关于思科数据中心和虚拟化技术的译著,如《思科绿色数据中心建设与管理》和《基于IP的能源管理》等。
相关推荐
-
云端SQL Server高可用性最佳做法
与内部部署相比,在云端运行SQL Server可为数据库软件用户提供更多的灵活性和可扩展性,也可能更省钱。但云 […]
-
绘制数据关系图的利器:SQL Server 图像数据库工具
SQL Server 2017新增了图形数据库功能,你可以使用图结构来表示不同数据元素之间的关系。
-
如何在Azure部署时选择合适的SQL Server?
想要在Azure上运行SQL Server,企业一般会面临两种选择:在Azure虚拟机上安装SQL Server或使用Azure SQL Database。
-
Linux支持的引入 推动了SQL Server 2016集成服务的发展
随着SQL Server的不断发展,集成服务也在发生相应的变化。在最新的SSIS更新中,增加Linux支持和SQL Server 2016升级向导。