日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

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

發(fā)布時間:2025/3/21 编程问答 47 豆豆
生活随笔 收集整理的這篇文章主要介紹了 oracle refresh force,千万级表上的物化视图(force模式 ),手动刷新,为何速度奇慢?... 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

有一千萬級數(shù)據(jù)表,先建立其物化視圖log, 然后采用refresh force模式建立物化視圖

在該千萬級數(shù)據(jù)表未作任何變化時,手動dbms_mview.refresh(),速度奇慢!! 難道這里是complete refresh???

具體細節(jié)如下:

1) 該千萬級表結(jié)構(gòu)如下

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操作,此時手動執(zhí)行:

exec dbms_mview.refresh(MV_MSGASSGNMNT);

該步驟消耗2個小時,比建立物化視圖的時間還要長

是不是我這里是一個complete refresh???

總結(jié)

以上是生活随笔為你收集整理的oracle refresh force,千万级表上的物化视图(force模式 ),手动刷新,为何速度奇慢?...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。