惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

美团技术团队
罗磊的独立博客
SecWiki News
SecWiki News
The Register - Security
The Register - Security
The GitHub Blog
The GitHub Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
博客园 - 三生石上(FineUI控件)
S
Schneier on Security
IT之家
IT之家
博客园 - 聂微东
T
The Exploit Database - CXSecurity.com
Recorded Future
Recorded Future
大猫的无限游戏
大猫的无限游戏
Know Your Adversary
Know Your Adversary
Latest news
Latest news
Vercel News
Vercel News
G
GRAHAM CLULEY
D
DataBreaches.Net
D
Darknet – Hacking Tools, Hacker News & Cyber Security
S
SegmentFault 最新的问题
博客园_首页
雷峰网
雷峰网
T
Tenable Blog
Spread Privacy
Spread Privacy
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
酷 壳 – CoolShell
酷 壳 – CoolShell
Cisco Talos Blog
Cisco Talos Blog
V
Visual Studio Blog
J
Java Code Geeks
博客园 - Franky
The Cloudflare Blog
Apple Machine Learning Research
Apple Machine Learning Research
C
CERT Recently Published Vulnerability Notes
T
Threatpost
Google DeepMind News
Google DeepMind News
F
Fortinet All Blogs
P
Privacy International News Feed
T
Threat Research - Cisco Blogs
T
The Blog of Author Tim Ferriss
V
Vulnerabilities – Threatpost
Recent Announcements
Recent Announcements
Blog — PlanetScale
Blog — PlanetScale
Security Latest
Security Latest
U
Unit 42
M
MIT News - Artificial intelligence
Y
Y Combinator Blog
K
Kaspersky official blog
有赞技术团队
有赞技术团队
B
Blog
腾讯CDC

博客园 - Peter Zhang

TF42064: The build number already exists for build definition error in TFS2010 模拟ORACLE wm_concat函数(把一列中的多行数据在一行显示) [转]重建损坏的Windows Management Instrumentation(WMI)服务 获取系统闲置时间 .NET 程序内存占用问题 存储过程锁问题、存储过程编译锁问题 ORA-00054错误解决方案 Oracle循环语句 Oracle查询条件带有汉字时查询不出数据的原因 ORA-01658: 无法为表空间中段创建 INITIAL 区 Oracle未启用Partitioning功能 Oracle 表空间 Redmine running under Mongrel as windows service Redmine 插件安装 Redmine 如何使用版本库 Redmine 配置 Redmine EMAIL /SMTP 服务器设置 redmine svn:issuer is not trusted 问题的解决办法 redmine 1.2.1安装和安装会出现的问题
【转】物化视图刷新
Peter Zhang · 2012-06-07 · via 博客园 - Peter Zhang

【转】物化视图刷新

物化视图对于前台数据库使用者来说如同一个实际的表,具有和一般表相同的如select等操作,而其实际上是一个视图,一个由系统实现定期刷新其数据的视图(具体刷新时间在定义物化视图的时候已有定义),使用物化视图更可以实现视图的所有功能,而物化视图却不是在使用时才读取,大大提高了读取速度,特别适用抽取大数据量表某些信息以及数据链连接表使用,但是物化视图占用数据库磁盘空间。具体语法如下:
create materialized view [view_name]
refresh [fast|complete|force]
[
on [commit|demand] |
start with (start_time) next (next_time)
]
as
{创建物化视图用的查询语句}
具体实例如下:
CREATE MATERIALIZED VIEW an_user_base_file_no_charge
             REFRESH COMPLETE START WITH SYSDATE
            NEXT TRUNC(SYSDATE+29)+5.5/24    --红色部分表示从指定的时间开始,每隔一段时间(由next指定)就刷新一次
AS
select distinct user_no
from cw_arrearage t
where (t.mon = dbms_tianjin.getLastMonth or
       t.mon = add_months(dbms_tianjin.getLastMonth, -1))
删除物化视图:
drop materialized view an_user_base_file_no_charge;
以上是Oracle创建物化视图(Materialized View,以下简称MV)时的常用语法,各参数的含义如下:
1.refresh [fast|complete|force] 视图刷新的方式:
fast: 增量刷新.假设前一次刷新的时间为t1,那么使用fast模式刷新物化视图时,只向视图中添加t1到当前时间段内,主表变化过的数据.为了记录这种变化,建立增量刷新物化视图还需要一个物化视图日志表。create materialized view log on (主表名)。
complete:全部刷新。相当于重新执行一次创建视图的查询语句。
force: 这是默认的数据刷新方式。当可以使用fast模式时,数据刷新将采用fast方式;否则使用complete方式。
2.MV数据刷新的时间:
on demand:在用户需要刷新的时候刷新,这里就要求用户自己动手去刷新数据了(也可以使用job定时刷新)
on commit:当主表中有数据提交的时候,立即刷新MV中的数据;
start ……:从指定的时间开始,每隔一段时间(由next指定)就刷新一次;
手动刷新物化视图:
begin
     dbms_mview.refresh(TAB=>'an_user_base_file_no_charge',
                                       METHOD=>'COMPLETE',
                                       PARALLELISM=>8);   --PARALLELISM并行控制参数
end;
/
增量刷新就不需要使用什么并行了,通常情况下,是没有那个必要的。
begin
     dbms_mview.refresh(TAB=>'an_user_base_file_no_charge',
                                       METHOD=>'FAST',
                                       PARALLELISM=>1);
end;
/

posted on 2012-06-07 08:42  Peter Zhang  阅读(662)  评论()    收藏  举报