数据库原理与应用学生用书
本课程建设得到 IBM 教育开发基金资助 7-5
5
一、数据存储管理(3 of 5)
表空间
是数据库及存储在该数据库中的表之间的逻辑层。
表空间在数据库中创建,表在表空间中创建。
DB2支持两种类型的表空间:
系统管理表空间(SMS)—操作系统文件管理器分配
并管理表空间所存储的空间。SMS是默认的表空间类
型。
数据库管理表空间(DMS)— 数据库管理控制存储空
间。从本质上说,这种表空间是为实现某特定目而设
计的文件系统,能最大限度地满足数据库管理器的需
求
。
设计关系数据库的首要任务之一,是将数据库的逻辑结构映射到物理存储上。在 DB2 中,用来
指定数据的物理位置的对象称作表空间。表空间是一个中间层,它位于数据库和实际存放表数据的
容器之间。
一个表空间可以包含多个数据表。可以在表空间级上实现数据的备份和恢复。
有两种类型的表空间:
1)系统管理表空间(SMS)
在系统管理表空间(SMS)里,操作系统文件管理器分配并管理表空间所存储的空间。在这种存
储模式中,通常包含许多文件,这些文件表示了存储在文件系统空间中的表对象。用户决定文件的
位置,DB2 控制它们的名字,文件系统负责管理它们。每一个容器是操作系统文件空间中的一个目
录。
SMS 是默认的表空间类型。
2)数据库管理表空间(DMS)
数据库管理表空间(DMS)中 数据库管理器控制存储空间。从本质上说,这种表空间是为实现
某特定目而设计的文件系统,能最大限度地满足数据库管理器的需求。
此表空间的定义包括了存在数据的表空间中的设备或文件的列表。每一个容器都是一个固定大
小的预分配文件或者磁盘等物理设备。
一个数据库中必须存在两个系统基本的表空间,分别是系统编目表空间(SysCatSpace)与系统临
时表空间(SysTempSpace)。在数据库中创建的任何对象都以在系统编目表空间中增加记录的方式体
现,对于临时表空间,其占用磁盘大小是根据使用情况动态伸缩的,即仅在需要时才分配磁盘空间,
并在使用后进行回收。此外,若用户需要创建表,则需要创建用户表空间(UserSpace),若需要使用
临时表,则需要创建用户临时表空间(UserTempSpace)。