DB2数据库中的SMS与DMS如何正确理解?

数据库
我们今天主要向大家讲述的是DB2数据库中的SMS与DMS以及对DB2数据库中表空间的2种存储方式的描述,以下就是正文的主要内容讲述。

以下的文章主要向大家讲述的是DB2数据库中的SMS与DMS,在DB2数据库中表空间的存储方式一共有两种即SMS(System Managed Space)、DMS(Database Managed Space)。SMS直接利用操作系统的文件系统来管理数据。

表空间中的数据按照系统中所有容器上进行数据块划分。表空间中的所有的表都被赋予了它自己的文件名,此文件名在所有的容器中使用。文件扩展名指示出该文件中存储的数据类型。

 

 

DMS是由数据库进行表空间的存储空间控制。当定义DMS表空间时,需要选择设备或者文件列表,使其属于该表空间。

 

 

DMS表空间和SMS表空间之间的主要差别在于,对于DMS的表空间,存储空间是在创建表空间时分配的,而不是在需要时在向操作系统申请的。并且,在这两种类型的表空间上,数据的放置也是有一些不同之处。例如:考虑进行高效率的表扫描时,数据块在物理上连续存放是很重要的。对于SMS来说,操作系统的文件系统将决定每个逻辑文件页面的物理存储位置。

根据文件系统上其他活动的级别以及用来确定存放位置的算法不同,这些逻辑连续的页面可能会连续存放,也可能不连续分配。对于DMS,由于是DB2数据库管理程序直接与磁盘打交道,所以它在理论上可能保证页面在物理上连续存放。

 

 

但是,应该注意的是,当使用DMS表空间时,有两个容器选项:原始设备(raw)和文件(file)。当使用文件选项时,DB2数据库管理程序在创建表空间时向文件系统申请分配整个容器。由于是从文件系统分配得来,导致物理分配通常(但也不保证)是连续的。当使用原始设备容器时,数据库管理程序直接控制整个设备,并总能确保数据块中的页连续分配。

 

 

SMS和DMS表空间相比,SMS表空间特别适合一般用途。SMS表空间能够提供一定的性能,且管理成本很低。如果需要达到***的性能,则应该选用DMS表空间。因为使用文件容器或者SMS表空间移动数据时会发生双重缓冲(在DB2数据库管理程序级首先缓冲一次数据,然后在文件系统再缓冲一次数据,这就是双重缓冲),所以使用设备容器可能提供更好的性能。

 

 

 

上述的相关内容就是对DB2数据库中的SMS和DMS的描述,希望会给你带来一些帮助在此方面。

 

【编辑推荐】

  1. 对DB2 增量备份的正确运用描述
  2. DB2 存储过程的异常处理器类型有几种?
  3. 对DB2数据移动方法的正确解析
  4. DB2 多分区数据库备份的正确操作流程演示
  5. DB2离线与在线全备、增量备份以及恢复的运行

 

责任编辑:佚名 来源: 51cto博客
相关推荐

2010-08-05 09:53:35

2010-08-11 17:24:13

DB2数据库优化

2010-08-04 16:41:01

2010-08-05 15:40:07

DB2快照函数

2010-08-05 09:14:29

DB2隔离级别

2010-08-11 14:19:07

DB2 多分区数据库备

2010-08-16 11:34:11

IBM DB2 V9.

2010-08-11 08:39:57

DB2 数据库

2011-03-15 11:19:45

DB2数据库catalog

2010-08-02 09:03:16

DB2 admin管理

2010-07-28 11:05:57

DB2数据库

2010-08-05 17:33:54

IBM DB2数据库

2010-07-30 09:57:31

2010-08-17 09:11:42

DB2数据库备份性能

2010-08-26 16:00:31

DB2数据库安装

2010-08-26 16:15:25

DB2数据库管理

2009-12-03 15:31:30

PHP获取显示数据库数

2011-04-14 09:46:12

DB2数据库catalog

2010-08-13 11:02:09

DB2数据库Table

2010-07-27 15:33:00

DB2数据库备份
点赞
收藏

51CTO技术栈公众号