zoukankan      html  css  js  c++  java
  • SQL Server 2005数据库分表实例(转)

    use Text

    go

    建立文件组,

    alter database Text add filegroup TextFG1
    alter database Text add filegroup TextFG2
    alter database Text add filegroup TextFG3
    go

    在文件组中添加文件,一个文件组可以包含多个文件,每个文件代表的是某一个表的分表。

    例如:一个数据库中有两个表需要分表,就可以再每个分组中添加两个分表,分别对应这两个表。

    分组最好放在不同的磁盘下,可以充分发挥IO操作速度。

    alter database Text add file(name=N'TextDataFile1', filename=N'C:\SQL File Group 1\TextDataFile1.ndf',
    size=3072KB, filegrowth=1024KB ) to filegroup TextFG1
    alter database Text add file(name=N'TextDataFile2', filename=N'D:\SQL File Group 2\TextDataFile2.ndf',
    size=3072kb, filegrowth=1024kb) to filegroup TextFG2
    alter database Text add file(name=N'TextDataFile3', filename=N'E:\SQL File Group 3\TextDataFile3.ndf',
    size=3072kb, filegrowth=1024kb) to filegroup TextFG3
    go

    创建分区函数,分区依据后边的时间点,将表分为3个区,分别放在不同的分区表中

    create partition function TextPF(datetime) as range right for values('20071230', '20081230')
    go

    创建分区方案,将分区函数和分组对应起来

    create partition scheme TextPS as partition TextPF to (TextFG1, TextFG2, TextFG3)
    go

    创建表

    create table t_Sina_Comment(
    comment_id varchar(20) not null,
    post_id varchar(20) null,
    commentTime datetime not null,
    commentContent text null,
    blogger_id varchar(20) null
    )on TextPS(commentTime)
    go

    创建聚集索引,创建分区的依据必须为索引。

    create clustered index indexofComment on dbo.t_Sina_Comment(comment_id, commentTime)
    go

    表创建好了之后,就可以导入数据了。

    导入的数据根据表中commentTime存放在不同的分区文件中。

    实验中录入220多万数据,3个分区文件中分别有60多万,50多万和110多万

    通过下边的测试,说明实验室成功的

    测试:

    select $partition.TextPF(o.commentTime) as partitionNum,
    min(commentTime) as minCommentTime,
    max(commentTime) as maxCommentTime,
    count(*) as rows
    from t_Sina_Comment as o
    group by $partition.TextPF(o.commentTime)
    order by partitionNum

    go

    select *
    from t_Sina_Comment
    where commentTime<'2009-02-02' and commentTime>'2008-12-25'

  • 相关阅读:
    UIAutomator简介
    初识Anrdiod SDK
    Andriod App类型简介
    Mybatis之collection嵌套查询mapper文件写法
    Ubuntu16.04 启动纯文本界面方法
    Ubuntu16.04网络不能访问解决办法
    JavaScript之简易http接口测试工具网页版
    SpringBoot之修改单个文件后立刻生效
    JavaScript之Json的使用
    Ajax之Jquery封装使用举例2(Json和JsonArray处理)
  • 原文地址:https://www.cnblogs.com/isdavid/p/2541293.html
Copyright © 2011-2022 走看看