Oracle 原理: 物化视图,快照,实体化视图。

8i和8i前,oracle 提供了 快照 snapshot ,9i中把其改名为物化视图,也叫实体化视图 materialized View。

在海量数据中,如果只想查询特定的数据,通常会select 基表或者视图,而查询视图是通过基表进行查询的。如果基表数据的数量级非常之大,那么对于只想查询特定的数据时效率就会很不尽人意。传统的视图是逻辑上的。而物化视图是存在磁盘空间里的。他是远端数据库在本地上的一个副本,或者用来生成数据库表求和的汇总表。物化视图存储基于远程表的数据,也可以移位快照。物化视图可以在 基表,视图,其他物化视图中来建立。通常在物化视图被称为主表(在复制期间)或明细表(在数据仓库中)。

想提高查询速度,数据库性能调整重点

1.调整SGA 和PGA

2.调整SQL语句,使用绑定变量

3.使用物化视图

4.系统结构上要读写分离。用两个数据库读库和写库,读库和写库数据时时同步,读库专门用来查询,写库专门用来写入。

 

对于普通复制,本地数据库的物化视图只可读.

如果要创建基于主键的物化视图,则必须具有访问主表和访问主表的日志 和  Create Materialized View 这三个权限。

如果是创建基于Rowid的物化视图,则需要访问主表和  Create Materialized View 这两个权限

查询重写,Enable Query Rewrite,允许对基表进行查询时,可以直接查询物化视图。

物化视图日志,如果需要快速刷新,则需要建立物化视图日志,物化视图日志根据不同物化视图的快速刷新的需要,可以建立Rowid和Primary Key类型的

刷新,当基表发生了DML操作时,物化视图采用哪种方式和基表进行同步,模式有两种On Demand(用户需要时刷新,缺省值)和On Commit(DML提交时刷新) , 方法有四种  Fast ,Complete,Force ,Never。可以通过Job定时刷新,还可以手工刷新

例如

在远端数据库中创建一个有主键的表

<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值