WEB开发网
开发学院数据库DB2 用 DB2 说明工具深入理解物化查询表(MQT)刷新机... 阅读

用 DB2 说明工具深入理解物化查询表(MQT)刷新机制

 2010-05-13 00:00:00 来源:WEB开发网   
核心提示: MQT 刷新方式还可以从数据刷新范围的角度分成两类,一类是完全刷新,用 DB2 说明工具深入理解物化查询表(MQT)刷新机制(2),一类是增量刷新,完全刷新方式是将基表中的所有数据重新进行计算和处理从而更新 MQT 的数据,基表db2startdb2CREATEDBMYDBdb2CONNECTT

MQT 刷新方式还可以从数据刷新范围的角度分成两类,一类是完全刷新,一类是增量刷新。

完全刷新方式是将基表中的所有数据重新进行计算和处理从而更新 MQT 的数据。这种方式的缺点是 当基表的数据量大而且 MQT 定义复杂时,刷新过程可能会比较慢。

增量更新方式是针对 insert/update/delete 等操作更新过的基表中的那一部分数据,对 MQT 中相应数据进行刷新,而不需要访问基表中所有数据。

将两种分类方法结合在一起讨论,即时刷新方式必然是增量刷新方式,延迟刷新方式采用的是完全刷新,但不是所有的延迟刷新方式都是完全刷新,有一种特殊的延迟刷新即“使用登台表(staging table)的延迟刷新”采用的是增量更新。当 MQT 的基表被修改时,变化就会传播过来,并立即被添加到 staging 表中,这样就可以利用 staging 表增量刷新,而不是从头开始重新生成 MQT,从而可以显著提高性能。当刷新操作完成时,staging 表中的数据就会被删除。

接下来我们对以上几种刷新方式,通过其访问方案来进行深入的讨论。

准备工作

我们先创建一个新的数据库名字叫做 MYDB,或者也可以使用一个已有的数据库。本文中所有操作都是在 LinuxAMD64 平台上的 DB2 9.7 版本进行,在其他的版本上也可以得到相似的结果,但不能保证完全一致。

连接到数据库之后,创建说明表(explain tables),使用的命令如清单 1 所示。

清单 1. 创建数据库,说明表,基表

 db2start 
 db2 CREATE DB MYDB 
 db2 CONNECT TO MYDB 
 db2 – tvf ~/sqllib/misc/EXPLAIN.DDL 

对于不同的平台如 Windows 平台或者安装路径的不同,EXPLAIN.DDL 文件的位置会有相应的不同, 但都是在 sqllib 目录中。

上一页  1 2 3 4 5 6 7  下一页

Tags:DB 说明 工具

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接