超大型数据库的大小常常达到数百GB,有时甚至要用TB来计算。
2.1 创建文件组 x8 9Sc-J
{U#rp?]-
建立分区表先要创建文件组,而创建多个文件组主要是为了获得好的 I/O 平衡。一般情况下,文件组数最好与分区数相同,并且这些文件组通常位于不同的磁盘上。每个文件组可以由一个或多个文件构成,而每个分区必须映射到一个文件组。一个文件组可以由多个分区使用。为了更好地管理数据(例如,为了获得更精确的备份控制),对分区表应进行设计,以便只有相关数据或逻辑分组的数据位于同一个文件组中。使用 ALTER DATABASE,添加逻辑文件组名: V{}EClT(
a{sS\t
ALTER DATABASE [DeanDB] ADD FILEGROUP [FG1] q*0K3%cr1"
a}y=| |
DeanDB为数据库名称,FG1文件组名。创建文件组后,再使用 ALTER DATABASE 将文件添加到该文件组中: N: XhH[@V1
YRGPiC\#G
ALTER DATABASE [DeanDB] ADD FILE ( NAME = N'FG1', FILENAME = N'C:DeanDataFG1.ndf' , SIZE = 3072KB , FILEGROWTH = 1024KB ) TO FILEGROUP [FG1] . [.88"h=
h5 &|g+Zx
类似的建立四个文件和文件组,并把每一个存储数据的文件放在不同的磁盘驱动器里。 ?{^b2
Y}^E #:e{
2.2 创建分区函数 ,wlBL&
U FMd~$
创建分区表必须先确定分区的功能机制,表进行分区的标准是通过分区函数来决定的。创建数据分区函数有RANGE “LEFT | / RIGHT”两种选择。代表每个边界值在局部的哪一边。例如存在四个分区,则定义三个边界点值,并指定每个值是第一个分区的上边界 (LEFT) 还是第二个分区的下边界 (RIGHT)[1]。代码如下: K9+V+; V$
qj@>Ip*p@
CREATE PARTITION FUNCTION [SendSMSPF](datetime) AS RANGE RIGHT FOR VALUES ('20070401', '20070701', '20071001')