sql server 分区表与数据仓库
2010-10-07 10:18
302 查看
对数据库性能优化的一点浅薄认识,希望能对您的决策有帮助。
分区表原来主要作用
在提高数据库I/O性能的层面上,目前的分区表已经开始运用到OLTP(数据库挖掘以及分析的层次),主要作用改善大中型表的访问以及处理性能,使表具有可伸缩性和可管理性。
例如当有多个CPU的SQL SERVER系统上,如果我们采用了分区表则每个CPU可以处理一个分区,这样的处理方式将改变数据库单线程的处理模式,将多CPU的资源充分利用,并将处理过程以多点多线程的方式进行,在SQL SERVER 处理数据表模式上是一种突破,并提高了CPU的利用率。
另外一点是OLTP,目前OLTP在起步初始可能考虑分区表的可能有几点
1 未来数据库量加大,SSAS处理大量数据库会力不从心,通过分区表来将 CPU I/O 等压力均衡,能处理更多的数据,并降低硬件带来的瓶颈。
2 数据仓库的需要,当在数据库挖掘时,数据量小则有无分区表没有差别,当数据库逐渐加大则在数据库仓库的优越性将体现,例如我们可以将以年为单位的数据仓库中的某
些大表进行文件, 横向的切割,在数据库移动保存方面是有一定优越性,同时在进行SELECT时优越性更加突出,原因有以下几点
1 SELECT $partition.分区函数(分区关键字段)AS Punmber,其他字段
From 表名
GROUP BY $partition.分区函数(分区关键字段名)
GROUP BY [Punmber]
这样做我们就可以优化查询,将查询的结果先确定在某一个分区中,第一次减小了我们查询的范围,加快了查询的速度。
2 数据仓库2次划分
在数据库仓库的建立中,可以一次性将数据库导入到一个库并累加,另一种方法是 2次数据仓库(对数据仓库分区得意义在于某些数据并不保证不经常查询)
在数据库可能还在数据仓库中查询的可能中,我们可以做的是
3 另外在数据库分区中,分区函数可以重复使用,文件分组可以重复使用, 例如我们有两个表,里面都包含同样的关键字段,而且关键字段都是分区函数的关键字段
那结果是当我们对两个表(如果需要进行关联查询),结果是返回的结果会直接利用分区表,不需要索引从新对其,两个表的每个分区的数据库将自动对其。
;
分区表原来主要作用
在提高数据库I/O性能的层面上,目前的分区表已经开始运用到OLTP(数据库挖掘以及分析的层次),主要作用改善大中型表的访问以及处理性能,使表具有可伸缩性和可管理性。
例如当有多个CPU的SQL SERVER系统上,如果我们采用了分区表则每个CPU可以处理一个分区,这样的处理方式将改变数据库单线程的处理模式,将多CPU的资源充分利用,并将处理过程以多点多线程的方式进行,在SQL SERVER 处理数据表模式上是一种突破,并提高了CPU的利用率。
另外一点是OLTP,目前OLTP在起步初始可能考虑分区表的可能有几点
1 未来数据库量加大,SSAS处理大量数据库会力不从心,通过分区表来将 CPU I/O 等压力均衡,能处理更多的数据,并降低硬件带来的瓶颈。
2 数据仓库的需要,当在数据库挖掘时,数据量小则有无分区表没有差别,当数据库逐渐加大则在数据库仓库的优越性将体现,例如我们可以将以年为单位的数据仓库中的某
些大表进行文件, 横向的切割,在数据库移动保存方面是有一定优越性,同时在进行SELECT时优越性更加突出,原因有以下几点
1 SELECT $partition.分区函数(分区关键字段)AS Punmber,其他字段
From 表名
GROUP BY $partition.分区函数(分区关键字段名)
GROUP BY [Punmber]
这样做我们就可以优化查询,将查询的结果先确定在某一个分区中,第一次减小了我们查询的范围,加快了查询的速度。
2 数据仓库2次划分
在数据库仓库的建立中,可以一次性将数据库导入到一个库并累加,另一种方法是 2次数据仓库(对数据仓库分区得意义在于某些数据并不保证不经常查询)
在数据库可能还在数据仓库中查询的可能中,我们可以做的是
3 另外在数据库分区中,分区函数可以重复使用,文件分组可以重复使用, 例如我们有两个表,里面都包含同样的关键字段,而且关键字段都是分区函数的关键字段
那结果是当我们对两个表(如果需要进行关联查询),结果是返回的结果会直接利用分区表,不需要索引从新对其,两个表的每个分区的数据库将自动对其。
;
相关文章推荐
- 详解SQL Server中创建数据仓库已分区表
- 详解SQL Server中创建数据仓库已分区表
- 用SQL Server 2005构建高性能数据仓库
- 针对数据仓库和报表应用程序的10大SQL Server 2005性能问题
- 在SQL Server中的关系型数据仓库分区策略(1)
- SQL Server 2005中的分区表(二):如何添加、查询、修改分区表中的数据
- 用SQL Server 2005构建数据仓库(二)
- SQL Server 2005中的分区表(二):如何添加、查询、修改分区表中的数据
- SQL Server 2005 中的商务智能和数据仓库(2)
- SQL Server数据仓库相关概念及构建流程
- SQL Server 2005的商务智能和数据仓库
- Sql server 2008 R2 大型数据仓库设计学习笔记
- SQL Server 2008中的分区表(二):如何添加、查询、修改分区表中的数据
- 解析SQL Server 2008 数据仓库
- 用SQL Server 2005构建高性能的数据仓库(一)
- 【转】SQL Server 2008数据仓库查询性能
- SQL Server数据仓库相关概念及构建流程
- 数据仓库应用(三): SQL Server 2005的数据仓库应用--联机分析OLAP
- SQL Server涉及到的数据仓库基本概念
- SQL Server 2005 海量数据解决方案(分区表)与对已存在的表进行分区(转)