DB2 V9.7 新特性:支持 XML 数据的分区表
2009-12-18 00:00:00 来源:WEB开发网可使用带有 ADD COLUMN 子句的 ALTER TABLE 语句将 XML 列添加至现有分区表。
可使用带有 ADD PARTITION、ATTACH PARTITION 和 DETACH PARTITION 子句的 ALTER TABLE 语句修改包含 XML 数据的分区表。
可将每个数据分区及其关联 XML 存储对象(XDA)放到相同或不同表空间中。
可将每个基于 XML 数据的未分区索引放到不同表空间中,并单独重组每个索引。
通过有效存储器规划,可通过执行表空间备份来逐个备份所有分区数据或未分区索引。
需要注意的是,
不能将 XML 类型的列用作表分区键列。
用户创建的 XML 索引只能是非分区索引。
通过二者的配合,pureXML 组件能够受益于表分区功能提供的简易数据转入和转出,基于 XML 数据的查询也能够受益于分区消除带来的性能优势。
接下来我们通过实际操作来详细认识这一特性。
准备工作
在开始之前,我们先创建一个新的数据库名字叫做 MYDB,如清单 1 所示。当然用已经存在的数据库也可以,但是由于文中有较多的与环境相关的输出结果如表空间 ID,为了便于理解和实践,建议使用一个全新的数据库。
本文中所有操作都是在 LinuxAMD64 平台上的 DB2 V9.7 版本进行,V9.7 版本之前的版本不支持含有 XML 列的分区表。
清单 1. 创建数据库db2 CREATE DB MYDB
创建数据库之后我们创建若干个表空间,请查看每个表空间对应的 ID,如清单 2 所示。
清单 2. 创建表空间CREATE TABLESPACE TbspXT MANAGED BY DATABASE using (FILE 'tspXT' 4 M) AUTORESIZE YES;
CREATE TABLESPACE TbspXD MANAGED BY DATABASE using (FILE 'tspXD' 4 M) AUTORESIZE YES;
CREATE TABLESPACE TbspXW MANAGED BY DATABASE using (FILE 'tspXW' 4 M) AUTORESIZE YES;
CREATE TABLESPACE IXTbspXX MANAGED BY DATABASE using (FILE 'ixtspXX' 4 M) AUTORESIZE YES;
CREATE TABLESPACE IXTbspXY MANAGED BY DATABASE using (FILE 'ixtspXY' 4 M) AUTORESIZE YES;
CREATE TABLESPACE IXTbspXW MANAGED BY DATABASE using (FILE 'ixtspXW' 4 M) AUTORESIZE YES;
select substr(TBSPACE,1,15)TBSPACE ,TBSPACEID from SYSCAT.TABLESPACES
where TBSPACE like '%TBSPX%' order by TBSPACEID"
TBSPACE TBSPACEID
--------------- -----------
TBSPXT 3
TBSPXD 4
TBSPXW 5
IXTBSPXX 6
IXTBSPXY 7
IXTBSPXW 8
6 record(s) selected.
- ››db2 对float类型取char后显示科学计数法
- ››DB2中出现SQL1032N错误现象时的解决办法
- ››DB2 锁升级示例
- ››db2诊断系列之---定位锁等待问题
- ››db2 命令选项解释
- ››DB2 最佳实践: 使用 DB2 pureXML 管理 XML 数据的...
- ››DB2 9.5 SQL Procedure Developer 认证考试 735 准...
- ››DB2 9.5 SQL Procedure Developer 认证考试 735 准...
- ››DB2 9.5 SQL Procedure Developer 认证考试 735 准...
- ››DB2 基础: 表空间和缓冲池
- ››DB2 XML 编程,第 1 部分: 理解 XML 数据模型
- ››DB2 pureScale 实战
更多精彩
赞助商链接