- 浏览: 276488 次
- 性别:
- 来自: 广州
文章分类
- 全部博客 (208)
- Oracle (21)
- webservice (7)
- java (33)
- java序列化反序列化 (0)
- weblogic (4)
- ajaxFileUpload (2)
- uploadify (1)
- jquery (7)
- MAXIMO (4)
- smartgit (1)
- css (3)
- POI (1)
- photoshop (0)
- linux (1)
- highchart 动态添加数据 (0)
- highchart (5)
- json (7)
- spring (11)
- maven (10)
- app (7)
- ASCII (1)
- mysql (26)
- excel (1)
- tomcat (3)
- bootstrap (1)
- ztree (2)
- dubbo (4)
- nginx (5)
- hadoop (3)
- osgi (3)
- ext (2)
- cxf (4)
- hibernate (1)
- 协议 (1)
- axis2 (1)
- javascript (2)
- vue (2)
- EhCache (2)
- Quartz (1)
- sqlite (1)
- saas (0)
- ionic (1)
- developer (1)
- maven 常用命令 (1)
- eclipse (1)
- mac (2)
- mongoldb (1)
- svn (1)
最新评论
-
wyb243:
大家千万不要按照这个写!!!PreparedStatement ...
JdbcTemplate插入后获取自增ID -
北雁南飞33:
有源码分享吗
自定义分页标签结合spring mvc、bootstrap、mybatis、mysql的使用 -
xcg992224:
大哥 不需要手动调用回收 是你在for的里面不应该每次都去ne ...
Java 垃圾回收测试
物化视图等价于数据的快照,可以使对视图的查询速度提升1个数量级以上,同时还可以在物化视图中建立索引,使查询速度进一步得以优化。
物化视图与数据的同步可设置为on commit和on demand,缺省为on demand。on commit可以在数据发生变化时及时更新数据,但对视图要求太多,包
含非主键join及稍微复杂一些的计算就无法使用,而且日志表配置稍有错误就会导致系统问题,风险颇高。
仅处于对历史数据查询的要求,可以考虑使用任务计划对视图进行完整更新,通过资源消耗换取实现的简易性和系统的稳定性。
建立完全更新的视图需要用户具有connect、resource和create materialized view权限,如果需要激活query rewrite,还需要授予global query
writer权限(或针对涉及的表单独授权)。以dba身份进行授权:
grant connect to test;
grant resource to test;
grant create materialized view to test;
grant global query rewrite to test;
建立测试用的基础表
create table person(id int primary key, name varchar(50), deptid int not null);
create table dept(id int primary key, name varchar(50));
插入测试数据
insert into person (id, name, deptid) values( 1, '用户1', 100);
insert into person (id, name, deptid) values( 1, '用户2', 101);
insert into dept (id, name) values( 100, '测试部门1');
insert into dept (id, name) values( 101, '测试部门2');
建立物化视图
create materialized view test_mview
refresh complete
start with sysdate
next sysdate + 1/1440
as
(
select p.id as pid, p.name as name, d.name as deptname
from person p, dept d
where
d.id = p.deptid
)
这里test_mview为物化视图的名字
refresh complete表示每次都删除掉所有记录重新生成
start with sysdate表示从当前执行时间开始执行数据记录生成
next定义下次执行时间
sysdate+1/1440表示当前执行时间之后1分钟进行下次更新(1440 = 24 x 60)
as 后的部分定义构成视图的sql
最好是自己手动创建以下,然后测试下结果比较实用
oracle在执行完更新后将重新计算当前时间和下次更新时间,因此以上的语法定义了一个每分钟更新一次的视图。
自动刷新是由oracle的任务计划执行,需要确认oracle中job_queue_processes的值大于0,否则将无法激活任务计划。
alter system set job_queue_processes=5;
物化视图与数据的同步可设置为on commit和on demand,缺省为on demand。on commit可以在数据发生变化时及时更新数据,但对视图要求太多,包
含非主键join及稍微复杂一些的计算就无法使用,而且日志表配置稍有错误就会导致系统问题,风险颇高。
仅处于对历史数据查询的要求,可以考虑使用任务计划对视图进行完整更新,通过资源消耗换取实现的简易性和系统的稳定性。
建立完全更新的视图需要用户具有connect、resource和create materialized view权限,如果需要激活query rewrite,还需要授予global query
writer权限(或针对涉及的表单独授权)。以dba身份进行授权:
grant connect to test;
grant resource to test;
grant create materialized view to test;
grant global query rewrite to test;
建立测试用的基础表
create table person(id int primary key, name varchar(50), deptid int not null);
create table dept(id int primary key, name varchar(50));
插入测试数据
insert into person (id, name, deptid) values( 1, '用户1', 100);
insert into person (id, name, deptid) values( 1, '用户2', 101);
insert into dept (id, name) values( 100, '测试部门1');
insert into dept (id, name) values( 101, '测试部门2');
建立物化视图
create materialized view test_mview
refresh complete
start with sysdate
next sysdate + 1/1440
as
(
select p.id as pid, p.name as name, d.name as deptname
from person p, dept d
where
d.id = p.deptid
)
这里test_mview为物化视图的名字
refresh complete表示每次都删除掉所有记录重新生成
start with sysdate表示从当前执行时间开始执行数据记录生成
next定义下次执行时间
sysdate+1/1440表示当前执行时间之后1分钟进行下次更新(1440 = 24 x 60)
as 后的部分定义构成视图的sql
最好是自己手动创建以下,然后测试下结果比较实用
oracle在执行完更新后将重新计算当前时间和下次更新时间,因此以上的语法定义了一个每分钟更新一次的视图。
自动刷新是由oracle的任务计划执行,需要确认oracle中job_queue_processes的值大于0,否则将无法激活任务计划。
alter system set job_queue_processes=5;
发表评论
-
oracle修改端口
2017-09-24 12:39 617windows下修改oracle端口,绝对有用 https ... -
Oracle中查看游标和缓存
2015-07-27 11:49 18411、Oracle查看当前打开的游标数目 SQL& ... -
ORACLE截取字符串汇总
2015-06-23 20:21 1614oracle 截取字符(substr),检索字符位置(inst ... -
测试Oracle最大连接数
2015-06-16 15:54 772package com.jxtech; import ja ... -
ORACLE查看与某张表相关的存储,触发器,视图等
2015-06-04 17:01 1371SELECT * FROM user_source ... -
Oracle-常用监控SQL
2015-05-26 11:12 419Oracle-常用监控SQL 1. ... -
Oracle创建视图view错误ORA-01031: 权限不足
2015-05-26 11:03 7601create or replace view REPORT ... -
oracle 查询最近执行过的 SQL语句
2015-05-20 12:50 1469oracle 查询最近执行过的 SQL语句 selec ... -
oracle常用函数
2015-05-14 18:21 4721、oracle多行合并成一行 select col1,w ... -
查看oracle数据库的连接数以及用户
2015-05-12 11:15 14241、查询oracle的连接数 select count(*) ... -
Oracle 限制特定用户连接数
2015-04-22 09:10 40181 查询限制功能是否开 ... -
Oracle记录锁管理
2015-04-22 09:09 639查询用户锁 select b.username, ... -
ORCLE中例如1.11.123排序
2015-04-07 10:34 494create or replace function num_ ... -
ORACLE WHERE DECODE
2015-04-02 16:03 861在oracle中,where条件中使用decode函数 sp ... -
oracle的split函数
2015-04-02 15:50 1026PL/SQL 中没有split函数,需要自己写。 代码: ... -
Oracl使用通配符搜索报DRG-10599: 列没有编制索引
2014-12-29 15:12 2410使用通配符对某表进行查询时报如下错误 java.sql.SQ ... -
ORACLE索引所有SQL导出
2014-12-29 14:23 1167SELECT INDEX_NAME, table ... -
PL/SQL DEVELOPER ORACLE创建定时调度job
2011-12-06 17:39 7077创建oracle调度job 右键“new”弹出 Sub ... -
存储过程中创建和删除表,并执行表空间
2011-12-06 17:33 1571create or replace procedure myt ... -
create table xx as select * from XXXX 指定表空间
2011-12-06 10:28 3309create table pw_test_jbpm_task ...
相关推荐
物化视图可以利用一个快速刷新机制从基础表中全部或增量刷新。在 10g 中,新的 DBMS_ADVISOR 程序包中的一个名为 TUNE_MVIEW 的过程使得这项工作变得非常容易:您利用 IN 参数来调用程序包,这构造了物化视图创建...
ORACLE9I物化视图
Oracle怎么根据物化视图日志快速刷新物化视图
Oracle物化视图增量刷新的应用研究.pdf
orace表分区及物化视图 进一步了解oracle表分区技术及物化视图技术应用
Oracle物化视图创建和使用,设置物化视图的自动刷新时间
Oracle物化视图应用详,有实例和各属性介绍
物化视图的快速刷新
Oracle中物化视图很重要,物化视图优秀论文. 在数据仓库中物化视图是非常重要的。Oracle中物化视图很重要,物化视图优秀论文. 在数据仓库中物化视图是非常重要的。Oracle中物化视图很重要,物化视图优秀论文. 在数据...
里面详细讲述物化视图的种种创建,物化日志的结构,group by 语句创建物化视图的处理
物化视图学习笔记 错误问题分析总结 详细讲解了物化视图的内部构造,从零基础开始学习 重点说明ORA-12034的错误解决方案
利用ORACLE物化视图建立报表数据库.pdf
Oracle物化视图使用[文].pdf
物化视图是包括一个查询结果的数据库对像,它是远程数据的的本地副本,或者用来生成基于数据表求和的汇总表。物化视图存储基于远程表的数据,也可以称为快照。
ORACLE中的物化视图
oralce创建物化视图,基本语法,基本操作
ORACLE使用物化视图和查询重写功能
oracle物化视图资料,表明物化视图的创建等
包含手动刷新物化视图和自动刷新物化视图 两部分,亲自测试有效