学习SQL SERVER关于表的分区体会

年少怎不多情28

年少怎不多情28

2016-02-19 19:37

人生本是一个不断学习的过程,在这个过程中,图老师就是你们的好帮手,下面分享的学习SQL SERVER关于表的分区体会懂设计的网友们快点来了解吧!

  创建带分区的数据表步骤:

  1,建立数据库里指定文件组FILEGROUP[分区文件名](NAME=‘’,FILENAME=‘’,SIZE=,MAXSIZE=,FILEGROWTH=)

  2,创建分区表函数,可以理解为一个规则。CREATE PARTITION FUNCTION[函数名](用来分区的字段的类型)AS RANGE LEFT FOR VALUES(范围值)

  3,创建分区架构,即将分区函数应用到分区文件组里面去CREATE PARTITION SCHEME[架构名] AS PARTITION [分区函数名] TO(分区文件名,分区文件名,分区文件名,分区文件名);

  4,创建表结构CREATE TABLE (ID INT NOT NULL,COLUMN。。。) ON [分区结构名](用来分区的字段名)

  完整示例地址:http://www.cnblogs.com/jackyrong/archive/2006/11/13/559354.html

  对现有数据库进行分区操作有待考究

  附带,对表进行分区的好处:

  数据库的整体结构

  数据库文件

|—数据分区

    |—数据页(8种类型)

  页的大小为 8 KB。这意味着 SQL Server 数据库中每 MB 有 128 页

  区是管理空间的基本单位。一个区是八个物理上连续的页(即 64 KB)。这意味着 SQL Server 数据库中每 MB 有 16 个区。 

  当一个查询没有合适的索引的时候就会进行全表扫描(table scan),如果有合适的索引的话就会按索引进行查找(seek)。

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/bianchengyuyan/)

  索引的结构是按B-树结构来存储,而且SQL维护着树的平衡,也就是说,每次搜索都会遍历相同的层级数。

  当数据越来越大,数据分区内的第一个索引页也就是索引B树的根,所属的下级子节点越来越多,索引的层级数会越来越大,索引查询也会越来越慢。

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/bianchengyuyan/)

  对表进行分区可以把数据索引页分到不同的区中,也就是形成了多个B树结构,就减少了树的层级数,而且把不同的数据库文件放到不同的物理磁盘中,提高了IO性能,使大数据量的查询更快

展开更多 50%)
分享

猜你喜欢

学习SQL SERVER关于表的分区体会

编程语言 网络编程
学习SQL SERVER关于表的分区体会

sql server 2005中的表分区

SQLServer
sql server 2005中的表分区

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

SQL Server 2005中处理表分区问题

编程语言 网络编程
SQL Server 2005中处理表分区问题

SQL Server 2008-建立分区表(Table Partition)

编程语言 网络编程
SQL Server 2008-建立分区表(Table Partition)

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

SQL server 表操作介绍

编程语言 网络编程
SQL server 表操作介绍

再议SQL Server临时表和表变量

编程语言 网络编程
再议SQL Server临时表和表变量

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

什么是EBR

什么是EBR

JavaScript静态页面值传递之Cookie篇

JavaScript静态页面值传递之Cookie篇
下拉加载更多内容 ↓