Oracle物化视图:成立最简单物化视图-开辟技术[Oracle防范]
本文“Oracle物化视图:成立最简单物化视图-开辟技术[Oracle防范]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
物化视图是一种特别的物理表,"物化"(Materialized)视图是相对普通视图而言的.普通视图是虚拟表,利用的范围性大,任何对视图的查询,Oracle都实际上转换为视图SQL语句的查询.这样对整体查询性能的提高,并没有实质上的好处.
Oracle最早在OLAP系统中引入了物化视图的概念.但后来很多大型OLTP系统中,发现近似统计的查询是无可避免,而这些查询操作假如很频繁,对整体数据库性能是很致命的.于是Oracle开始不断的改良物化视图,使得其也开始符合OLTP系统.从Oracle 8i到目前,功效已经相对对比完备了.
本文是Oracle物化视图系列文章的第一篇,有两个主要目的,来体验一下成立ON DEMAND和ON COMMIT物化视图的办法.ON DEMAND和ON COMMIT物化视图的辨别在于其革新办法的差别,ON DEMAND顾名思义,仅在该物化视图"需求"被革新了,才举行革新(REFRESH),即更新物化视图,以保证和基表数据的一致性;而ON COMMIT是说,一旦基表有了COMMIT,即事件提交,则立即革新,立即更新物化视图,使得数据和基表一致.
1、第一个ON DEMAND物化视图
1.1、成立ON DEMAND物化视图
下面成立一个最简单的物化视图,这个物化视图的定义很近似于普通视图的成立语句,只是多了一个materialized,但就是这个单词,造成了物化视图和普通视图(虚拟表)的大相径庭,也引伸出背面很多的事情,呵呵.
本例中需求分外注意的是,Oracle给物化视图的重要定义参数的默许值处理,在下面的例子中会有分外阐明.因为物化视图的成立本身是很复杂和需求优化参数设置的,分外是针对大型生产数据库系统而言.但Oracle答应以这种最简单的,近似于普通视图的办法来做,所以不可避免的会触及到默许值问题.
像我们这样,成立物化视图时未作指定,则Oracle按ON DEMAND情势来成立.
从下例中可以看出:
1) 物化视图在某种意义上说就是一个物理表(并且不但仅是一个物理表),这通过其可以被user_tables查询出来,而得到佐证;
2) 物化视图也是一种段(segment),所以其有自己的物理存储属性;
3) 物化视图会占用数据库磁盘空间,这点从user_segment的查询后果,可以得到佐证.
● 成立物化视图
--获得数据库rdbms版本信息
SQL> select * from v$version; BANNER -------------------------------------------------------------------------------- Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - Production PL/SQL Release 11.1.0.6.0 - Production CORE 11.1.0.6.0 Production TNS for 32-bit Windows: Version 11.1.0.6.0 - Production NLSRTL Version 11.1.0.6.0 – Production |
以上是“Oracle物化视图:成立最简单物化视图-开辟技术[Oracle防范]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |