有一千万级数据表,先建立其物化视图log, 然后采用refresh force模式建立物化视图

在该千万级数据表未作任何变化时,手动dbms_mview.refresh(),速度奇慢!! 难道这里是complete refresh???

具体细节如下:

1) 该千万级表结构如下

CREATE TABLE MsgAssgnmnt (

MsgID INTEGER NOT NULL,

TimeFrom TIMESTAMP NOT NULL,

AssgnmntTypeCode SMALLINT NOT NULL,

RequestID INTEGER NOT NULL,

TimeTo TIMESTAMP NOT NULL,

QueueID SMALLINT NOT NULL,

AgentID SMALLINT NULL,

SegmentID SMALLINT NOT NULL,

ReasonCode NVARCHAR2(3) NOT NULL,

UpdateUserID SMALLINT NULL,

AssgnmntComment NVARCHAR2(254) NULL,

CONSTRAINT XPKMsgAssgnmnt

PRIMARY KEY (MsgID, TimeFrom, AssgnmntTypeCode)

)

2) 建立物化视图日志:

create materialized view log on MSGASSGNMNT with rowid;

3) 建立物化视图:

create materialized view MV_MSGASSGNMNT

tablespace BWTABSPACE4

build immediate

refresh force

on demand

as

SELECT TO_CHAR(TimeFrom,YYYYMMDDHH24MISS)

||TO_CHAR(TimeTo,YYYYMMDDHH24MISS) AS concatFromAndTo,

SegmentID, TimeFrom, AssgnmntTypeCode, AgentID, QueueID,

UpdateUserID, ReasonCode, RequestID, TimeTo FROM MsgAssgnmnt;

4) 在物化视图上建立索引

CREATE INDEX XIF201MV_MsgAssgnmnt ON MV_MSGASSGNMNT

( QueueID ASC) TABLESPACE BWTABSPACE10 NOLOGGING;

CREATE INDEX XIF382MV_MsgAssgnmnt ON MV_MSGASSGNMNT

( RequestID ASC) TABLESPACE bwtabspace10 NOLOGGING;

CREATE INDEX XIF777MV_MsgAssgnmnt ON MV_MSGASSGNMNT

( AgentID ASC) TABLESPACE bwtabspace10 NOLOGGING;

CREATE INDEX XSK1MV_MsgAssgnmnt ON MV_MSGASSGNMNT

( TimeFrom ASC) TABLESPACE bwtabspace10 NOLOGGING;

CREATE INDEX XIE1MV_MsgAssgnmnt ON MV_MSGASSGNMNT

( TimeTo ASC) TABLESPACE bwtabspace10 NOLOGGING;

CREATE INDEX XIE2MV_MsgAssgnmnt ON MV_MSGASSGNMNT

( concatFromAndTo ASC) TABLESPACE bwtabspace10 NOLOGGING;

5) 以上步骤都成功后,千万级母表msgassgnmnt没有做任何的DML操作,此时手动执行:

exec dbms_mview.refresh(MV_MSGASSGNMNT);

该步骤消耗2个小时,比建立物化视图的时间还要长

是不是我这里是一个complete refresh???

oracle refresh force,千万级表上的物化视图(force模式 ),手动刷新,为何速度奇慢?...相关推荐

  1. mysql的count()函数如何选择索引,千万级表的count()查询优化实例

    文章目录 一.前言 1.网上的主要两种说法 2.不贴出mysql版本的测试都是耍流氓~ 3.mysql的count(*)和count(1) 二.测试索引长度和索引基数对count(*)查询的影响 1. ...

  2. oracle 亿级数据分页,oracle分页查询千万级优化-Oracle

    oracle分页查询千万级优化,在做比对项目时,有表是3千万多的数据,在页面做分页查询时很卡40s,反正差不多一分钟的时间,后来更了sql,优化了代码就好了很多,4s就可以了. 代码里优化是把总条数存 ...

  3. MySQL 百万级/千万级表 全量更新

    业务需求:今天从生成测试环境迁移了一批百万级/千万级表的数据,领导要求将这批数据进行脱敏处理(将真实姓名 .电话.邮箱.身份证号等敏感信息进行替换).迁移数据记录数如下(小于百万级的全量更新不是本文重 ...

  4. MySql千万级表性能优化

    近期在处理一个千万级表数据的优化措施与总结(不考虑硬件方面): 1)数据库做主从,读写分离 2)表结构把不常用的字段列移入附加表 3)查询语句优化,避免全表扫描,. 4)按需合理增加索引 5)做分区 ...

  5. 2亿日活,日均千万级视频上传,快手推荐系统如何应对技术挑战?

    据移动应用数据分析平台 App Annie 在 7 月 10 日发布的 2019 年第二季度最新移动应用市场报告显示,快手在 2019 年第二季度消费额排名中位于第四,成为中国最赚钱的短视频平台之一. ...

  6. oracle 论坛 千万级表,Oracle千万级记录操作总结

    Oracle千万级记录进行处理并不简单,下面就为您总结了Oracle千万级记录插入和查询的技巧,希望对您能够有所启迪. 最近做了个项目,实现对存在Oracle千万级记录的库表执行插入.查询操作.原以为 ...

  7. 怎么查找表_MySQL索引是怎么支撑千万级表的快速查找?

    前言 在 MySQL 官方提到,改善操作性能的最佳方法 SELECT在查询中测试的一个或多个列上创建索引.索引条目的作用类似于指向表行的指针,从而使查询可以快速确定哪些行与WHERE子句中的条件匹配, ...

  8. oracle access advisor,使用Oracle SQL Access Advisor改善数据库索引与物化视图

    当针对表集增加物化视图(materialized view)和索引时,理论上这些表的查询性能会得到改善.但事实上并不一定能达到理想的状态,因此Oracle推出了SQL Access Advisor工具 ...

  9. 删除千万级表中重复记录的办法

    1.   选择候选键,60个字段,应该只用其中几个就可以判断重复了吧.     在候选键的这些字段上建立索引.              CREATE   TRIGGER   tr_历史交易表     ...

最新文章

  1. Tomcat部署Maven的JavaWeb项目——这样我们写完程序把程序打包为war包,拿到用户那边启动服务器就可以运行了,简单轻松
  2. 神经网络学习之----Hopfield神经网络(代码实现)
  3. mysql auto_increment 原理_[Mysql]mysql原理之Auto_increment
  4. python绘制散点图、如何选两列作为横坐标_在matplotlib散点图(水平杆图)中从x=0到数据点绘制水平线...
  5. 7种寻址方式,以及有效地址计算方法。
  6. zttp php,php常用插件
  7. tableau计算同环比
  8. 注册gmail账号,手机无法接受验证码的问题
  9. Logback第八章:MDC(Mapped Diagnostic Context)
  10. Android之常见事件响应的实现方式
  11. 数字信号处理——窗函数
  12. 解决torch.cuda.is_available()返回False的问题
  13. 博客文章分类导引(持续更新)
  14. web.xml学习随笔
  15. 零基础大数据应该学什么
  16. 如何在Word文档中粘贴有行号的代码
  17. umi+dva dva全局的dispatch方法
  18. \ddd \xhh
  19. 智能制造并非只是自动化
  20. 12315提交显示服务器出错,发送到某些地址时出现 Smtp 问题 - 错误:服务器不接受 rcpt...

热门文章

  1. goland 远程调试go_手把手教你学Go语言,基础环境配置和Hello World
  2. QCustomplot几种清理曲线数据方法
  3. 人人都能看懂的循环神经网络RNN
  4. 解决服务器连接错误Host ‘XXX’ is not allowed to connect to this MySQL server
  5. pyDes 实现 Python 版的 DES 对称加密/解密--转
  6. 手把手教你实现一个 AdaBoost
  7. Zuul 2 : The Netflix Journey to Asynchronous, Non-Blocking Systems--转
  8. Can't access RabbitMQ web management interface after fresh install
  9. 基于若依框架的二次开发_浅谈若依框架
  10. Tomcat - 源码构建Tomcat 8.5.55 启动