有一个物化视图:
create materialized view mat_report
refresh fast on commit
as
select
o.rowid as post_rowid,
o.id,
vp.rowid as valid_post_rowid,
ivp.rowid as invalid_post_rowid
from post o, valid_post vp, invalid_post ivp
where o.code like (vp.code || '%')
and o.code not like (ivp.code || '%')
and vp.user_id = ivp.user_id(+)
以及用于检测其更改的日志,如下所示:
create materialized view log on post with rowid;
create materialized view log on valid_post with rowid;
create materialized view log on invalid_post with rowid;
如您所见,post
表具有与valid_post
和invalid_post
的内部联接,而valid_post
已与invalid_post
的联接。
将记录插入valid_post
时,实例化视图的刷新速度很快,且耗时不到3秒;但是,将记录插入invalid_post
中时,刷新速度却很慢,而且耗时超过4分钟。
哪里出问题了,我该怎么办?
注意:可能要提一提,我已经找到了一些专注于_mv_refresh_use_stats
的网站,但是很遗憾,我无法完全了解它。