Oracle 利用物化视图日志快速刷新相关物化视图 (不积跬步,无以至千里)
发布时间
阅读量:
阅读量
Oracle采用物化视图日志来实现其快速刷新机制。 Oracle如何借助一个单一的物化视图日志来实现多个相关视图的高效更新? 本文将简要阐述这一机制的工作原理。
首先,看一下物化视图的结构:
SQL> create table t (id number, name varchar2(30), num number);
表已创建。
SQL>创建基于表t的行记录日志视图log,并带有行ID和序列号(id及名称)字段包含新增值;
实体化视图日志已创建。
SQL> 执行DESC命令以查看mlog$_t表的信息。\n\n\n\n\n\n\n\n\n\n\n\n表格信息如下:
------------------------- ----------------- -------------\nID 数字型
表名 存在字段? 字符串(最多30个字符)
M_ROW 数字型
SNAPTIME 字符串(最多1个字符)
OLD_NEW 二进制数据(长度为255)
在建立物化视图日志时,默认设置下会使用两个字段——"ID"与"NAME"——作为该基表中被指定使用的列,在建立物化视图日志的过程中用于记录对应于每次DML操作所涉及的ID及名称的信息。
M_ROW中的信息可以定位到发生DML操作的记录。
SEQUENCE中的顺序就可以和基表中的执行顺序保持一致。
SN
全部评论 (0)
还没有任何评论哟~
