e股脑电脑教程网
  • 首 页
  • 操作系统
  • 应用软件
  • 下载工具
  • 影音视频
  • 办公软件
  • 媒体制作
  • 网站建设
  • 平面设计
  • 数据库
  • 程序开发
  • 视频教程
编辑推荐: | 文章搜索:
您现在的位置: e股脑 >> 数据库 >> Mssql教程 >> SQL Server 2005 中的分区表和索引 >> 教程正文
 
教程搜索
 
 
相关教程
  • 你知道MySQL10条鲜为人知的技巧吗?
  • 你应该知道的10个MySQL客户启动选项
  • 用特殊的MySQL运算符获得更多数据比较
  • MySQL数据库中与 NULL值有关的几个问题
  • 教你快速了解公共MySQL的数据库服务器
  • MySQL 5.0在windows上的安装详细介绍
  • MySQL查询的性能优化
  • Linux操作系统中如何安装MySQL数据库
  • 23道安全门加铸MySQL数据库
  • MySQL 5.0 数据库新特性的存储过程
  • 从Windows命令行启动MySQL
  • 连接MySQL数据库失败频繁的原因
  • 加速动态网站 MySQL索引分析和优化
  • 轻松掌握如何保护MySQL中的重要数据
  • 快速掌握MySQL数据库中Show命令的用法
  • MySQL数据库的安全配置实用技巧
 
 

图文教程


  • Windows抢了谁的饭碗 非主流操作系统To

  • 地球还是火星 平常心看“非主流”

  • 综合运用Office 2007批量制作奖状

  • 没有系统盘如何才能修复受损系统?

  • 巧妙运用Excel中边界的附加功能!
 
 
赞 助 商
 
 
SQL Server 2005 中的分区表和索引
  • 来源:e股脑
  • 点击次数:
  • 更新时间:2007-8-9
。

因为有 5 个分区,所以必须有 5 个文件组。在本例中,这些文件组根据存储的数据命名。脚本文件 RegionalRangeCaseStudyFilegroups.sql 充分显示了此语法。每个文件组都可以使用相同的设置进行创建,但如果数据不平衡,则不必这么做。只显示了西班牙的文件组和文件;其他四个文件组和文件中都具有相同的参数,但位于不同的驱动器上,而且具有特定于国家分区的名称。

ALTER DATABASE SalesDB ADD FILEGROUP [Spain] GO ALTER DATABASE SalesDB ADD FILE (NAME = N'SalesDBSpain', FILENAME = N'C:\SalesDB\SalesDBSpain.ndf', SIZE = 1MB, MAXSIZE = 100MB, FILEGROWTH = 5MB) TO FILEGROUP [Spain] GO


下一步是创建函数,该函数将指定只有四个分区使用 LEFT 作为边界条件。在本例中,列表将包括除英国以外的所有国家,因为英国在按字母顺序排列的列表中位于最后。

CREATE PARTITION FUNCTION CustomersCountryPFN(char(7)) AS RANGE LEFT FOR VALUES ('France', 'Germany', 'Italy', 'Spain') GO

要将数据放入根据数据命名的文件组中,分区架构将按字母顺序列出。所有五个文件组都必须在分区架构的语法中指定。

CREATE PARTITION SCHEME [CustomersCountryPScheme] AS PARTITION CustomersCountryPFN TO ([France], [Germany], [Italy], [Spain], [UK]) GO

最后,可以在新的 CustomersCountryPScheme 中创建 Customers 表。

CREATE TABLE [dbo].[Customers]( [CustomerID] [nchar](5) NOT NULL, [CompanyName] [nvarchar](40) NOT NULL, [ContactName] [nvarchar](30) NULL, [ContactTitle] [nvarchar](30) NULL, [Address] [nvarchar](60) NULL, [City] [nvarchar](15) NULL, [Region] [nvarchar](15) NULL, [PostalCode] [nvarchar](10) NULL, [Country] [char](7) NOT NULL, [Phone] [nvarchar](24) NULL, [Fax] [nvarchar](24) NULL ) ON CustomersCountryPScheme (Country) GO

尽管范围分区被定义为只支持范围,但它们还为执行其他类型的分区(例如列表分区)提供了一种方法。

总结

使用 SQL Server 2005,您可以通过分区轻松一致地管理大量表和索引,从而使您可以在活动表之外管理数据子集。这提供了简化的管理、改善的性能以及抽象的应用程序逻辑,因为分区架构对于应用程序是完全透明的。如果您的数据具有逻辑分组(范围或列表),而大量查询必须分析这些预定义的、一致的范围内的数据,还需要管理这些预定义范围内的传入数据和传出数据,则范围分区是简单的选择。如果您查看对大量数据进行的分析(没有使用特定范围),或者所有查询都访问大多数数据(如果不是所有数据),那么使用多个没有任何特定放置方法的文件组是一种更容易的解决方案,此解决方案还可以改善性能。

本文的脚本

本白皮书代码示例中使用的脚本可以从 SQLServer2005PartitionedTables.zip 文件中找到。下面介绍了该压缩文件中的每个文件。

RangeCaseStudyScript1-Filegroups.sql - 包括用于创建范围分区表案例研究所需的文件组和文件的语法。此脚本是可以修改的,是您可以在更小的磁盘集上使用更小的文件(以 MB 而不是 GB 为单位)创建此示例。此外,它还包含通过 INSERT...SELECT 语句导入数据的代码,使您可以通过相应的分区函数推测数据的位置。


RangeCaseStudyScript2-PartitionedTable.sql - 包括用于创建与范围分区表案例研究相关的分区函数、分区架构和范围分区表的语法。此脚本还包含相应的约束和索引。

RangeCaseStudyScript3-JoiningAlignedTables.sql - 包括说明 SQL Server 为分区表提供的各种连接策略的查询。

RangeCaseStudyScript4-SlidingWindow.sql - 包括与范围分区表案例研究中按月进行管理有关的语法和过程。在此脚本中,您将在 Orders 表中移入和移出数据。您还可以自行决定是否创建相同的过程,以便在 OrderDetails 表中移入和移出数据。提示:请参见 RangeCaseStudyScript2 中为 OrderDetails 插入表和正确数据列而使用的 Insert 语句。

RegionalRangeCaseStudyFilegroups.sql - 包括用于创建地区性分区表案例研究所需的文件组和文件的语法。实际上,这是一个模拟列表分区架构的范围分区。

RegionalRangeCaseStudyPartitionedTable.sql - 包括用于创建与范围分区表案例研究相关的分区函数、分区架构和地区性分区表的语法。


上一页  1 2 3 4 5 6 7 8 9 
  • 上一篇教程: SQL Server 2005 Mobile Edition 3.0 中的复制和远程数据访问功能的技术对比
  • 下一篇教程: SQL Server 2005 Beta 2 Transact-SQL 增强功能 2
  •  

    关于本站 | 广告联系 | 版权声明 | 使用帮助

    Copyright © 2004-2008 www.egunao.com All rights reserved.