日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

Oracle中管理物化視圖變得更加容易

瀏覽:135日期:2023-11-13 14:06:24
利用強制查詢重寫和新的強大的調整顧問程序 — 它們使您不再需要憑猜測進行工作 ,在 10g 中治理物化視圖變得更加輕易。 物化視圖 (MV) — 也稱為快照,已經廣泛使用。MV 在一個段中存儲查詢結果,并且能夠在提交查詢時將結果返回給用戶,從而不再需要重新執行查詢 — 在查詢要執行幾次時(這在數據倉庫環境中非經常見),這是一個很大的好處。物化視圖可以利用一個快速刷新機制從基礎表中全部或增量刷新。 假定您已經定義了一個物化視圖,如下: create materialized view mv_hotel_resvrefresh fastenable query rewriteasselect distinct city, resv_id, cust_namefrom hotels h, reservations r where r.hotel_id = h.hotel_id'; 您如何才能知道已經為這個物化視圖創建了其正常工作所必需的所有對象?在 Oracle 數據庫 10g 之前,這是用 DBMS_MVIEW 程序包中的 EXPLAIN_MVIEW 和 EXPLAIN_REWRITE 過程來判定的。這些過程(在 10g 中仍然提供)非常簡要地說明一種特定的功能 — 如快速刷新功能或查詢重寫功能 — 可能用于上述的物化視圖,但不提供如何實現這些功能的建議。相反,需要對每一個物化視圖的結構進行目視檢查,這是非常不實際的。 在 10g 中,新的 DBMS_ADVISOR 程序包中的一個名為 TUNE_MVIEW 的過程使得這項工作變得非常輕易:您利用 IN 參數來調用程序包,這構造了物化視圖創建腳本的全部內容。該過程創建一個顧問程序任務 (Advisor Task),它擁有一個特定的名稱,僅利用 OUT 參數就能夠把這個名稱傳回給您。 下面是一個例子。因為第一個參數是一個 OUT 參數,所以您需要在 SQL*Plus 中定義一個變量來保存它。 SQL> -- 首先定義一個變量來保存 OUT 參數: SQL> var adv_name varchar2(20)SQL> begin2 dbms_advisor.tune_mview 3 (4:adv_name,5'create materialized view mv_hotel_resv refresh fast enable query rewrite asselect distinct city, resv_id, cust_name from hotels h, reservations r where r.hotel_id = h.hotel_id');6* end; 現在您可以在該變量中找出顧問程序的名稱。 SQL> print adv_nameADV_NAME-----------------------TASK_117接下來,通過查詢一個新的 DBA_TUNE_MVIEW 來獲取由這個顧問程序提供的建議。務必在運行該命令之前執行 SET LONG 999999,因為該視圖中的列語句是一個 CLOB,默認情況下只顯示 80 個字符。 select script_type, statement from  dba_tune_mview where task_name = 'TASK_117' order by script_type, action_id;下面是輸出:  SCRIPT_TYPESTATEMENT-------------- ------------------------------------IMPLEMENTATION CREATE MATERIALIZED VIEW LOG ON 'ARUP'.'HOTELS' WITH ROWID,SEQUENCE ('HOTEL_ID','CITY') INCLUDING NEW VALUESIMPLEMENTATION ALTER MATERIALIZED VIEW LOG FORCE ON 'ARUP'.'HOTELS' ADDROWID, SEQUENCE ('HOTEL_ID','CITY') INCLUDING NEW VALUESIMPLEMENTATION CREATE MATERIALIZED VIEW LOG ON 'ARUP'.'RESERVATIONS' WITHROWID, SEQUENCE ('RESV_ID','HOTEL_ID','CUST_NAME')INCLUDING NEW VALUESIMPLEMENTATION ALTER MATERIALIZED VIEW LOG FORCE ON 'ARUP'.'RESERVATIONS'ADD ROWID, SEQUENCE ('RESV_ID','HOTEL_ID','CUST_NAME')INCLUDING NEW VALUESIMPLEMENTATION CREATE MATERIALIZED VIEW ARUP. MV_HOTEL_RESV  REFRESH FASTWITH ROWID ENABLE QUERY REWRITE AS SELECTARUP.RESERVATIONS.CUST_NAME C1, ARUP.RESERVATIONS.RESV_IDC2, ARUP.HOTELS.CITY C3, COUNT(*) M1 FROM ARUP.RESERVATIONS,ARUP.HOTELS WHERE ARUP.HOTELS.HOTEL_ID =ARUP.RESERVATIONS.HOTEL_ID GROUP BYARUP.RESERVATIONS.CUST_NAME, ARUP.RESERVATIONS.RESV_ID,ARUP.HOTELS.CITYUNDO  DROP MATERIALIZED VIEW ARUP.MV_HOTEL_RESVSCRIPT_TYPE 列顯示建議的性質。大多數行將要執行,因此名稱為 IMPLEMENTATION。假如接受,則需按照由 ACTION_ID 列指出的特定順序執行建議的操作。 假如您仔細查看這些自動生成的建議,那么您將注重到它們與您自己通過目視分析生成的建議是類似的。這些建議合乎邏輯;快速刷新的存在需要在擁有適當子句(如那些包含新值的子句)的基礎表上有一個 MATERIALIZED VIEW LOG。STATEMENT 列甚至提供了實施這些建議的確切 SQL 語句。 在實施的最后一個步驟中,顧問程序建議改變創建物化視圖的方式。注重我們的例子中的不同之處:將一個 count(*) 添加到了物化視圖中。因為我們將這個物化視圖定義為可快速刷新的,所以必須有 count(*),以便顧問程序糾正遺漏。 TUNE_MVIEW 過程不僅在建議方面超越了在 EXPLAIN_MVIEW 和 EXPLAIN_REWRITE 中提供的功能,還為創建相同的物化視圖指出了更輕易和更高效的途徑。有時,顧問程序可以實際推薦多個物化視圖,以使查詢更加高效。您可能會問,假如任何一個經驗豐富的 DBA 都能夠找出 MV 創建腳本中缺了什么,然后自己糾正它,那這還有什么用?嗯,顧問程序正是用來完成這項工作的:它是一位經驗豐富、高度自覺的自動數據庫治理員,它可以生成能與人的建議相媲美的建議,但有一個非常重要的不同之處:它免費工作,并且不會要求休假或加薪。這一好處使高級 DBA 解放出來,將日常的工作交給較低級的 DBA,從而答應他們將其專業技能應用到更具有戰略意義的目標上。 您還可以將顧問程序的名稱作為值傳遞給 TUNE_MVIEW 過程中的參數,這將使用該名稱而非系統生成的名稱生成一個的顧問程序。 更輕易的實施 既然您可以看到建議,那么您可能想實施它們。一種方式是選擇列 STATEMENT,假脫機到一個文件,然后執行該腳本文件。一種更輕易的替代方法是調用附帶的封裝過程: begindbms_advisor.create_file (dbms_advisor.get_task_script ('TASK_117'), 'MVTUNE_OUTDIR','mvtune_script.sql');end;/該過程調用假定您已經定義了一個目錄對象,例如: create Directory mvtune_outdir as '/home/oracle/mvtune_outdir';對 dbms_advisor 的調用將在 /home/oracle/mvtune_outdir 目錄中創建一個名為mvtune_script.sql 的文件。假如您查看一下這個文件,您將看到: Rem SQL Access Advisor:Version 10.1.0.1 - ProdUCtionRemRem Username:ARUPRem Task:TASK_117Rem Execution date:Remset feedback 1set linesize 80set trimspool onset tab offset pagesize 60whenever sqlerror CONTINUECREATE MATERIALIZED VIEW LOG ON'ARUP'.'HOTELS'WITH ROWID, SEQUENCE('HOTEL_ID','CITY')INCLUDING NEW VALUES;ALTER MATERIALIZED VIEW LOG FORCE ON'ARUP'.'HOTELS'ADD ROWID, SEQUENCE('HOTEL_ID','CITY')INCLUDING NEW VALUES;CREATE MATERIALIZED VIEW LOG ON'ARUP'.'RESERVATIONS'WITH ROWID, SEQUENCE('RESV_ID','HOTEL_ID','CUST_NAME')INCLUDING NEW VALUES;ALTER MATERIALIZED VIEW LOG FORCE ON'ARUP'.'RESERVATIONS'ADD ROWID, SEQUENCE('RESV_ID','HOTEL_ID','CUST_NAME')INCLUDING NEW VALUES;CREATE MATERIALIZED VIEW ARUP.MV_HOTEL_RESVREFRESH FAST WITH ROWIDENABLE QUERY REWRITEAS SELECT ARUP.RESERVATIONS.CUST_NAME C1, ARUP.RESERVATIONS.RESV_ID C2, ARUP.HOTELS.CITYC3, COUNT(*) M1 FROM ARUP.RESERVATIONS, ARUP.HOTELS WHERE ARUP.HOTELS.HOTEL_ID= ARUP.RESERVATIONS.HOTEL_ID GROUP BY ARUP.RESERVATIONS. CUST_NAME, ARUP.RESERVATIONS.RESV_ID,ARUP.HOTELS.CITY;whenever sqlerror EXIT SQL.SQLCODEbegindbms_advisor.mark_recommendation('TASK_117',1,'IMPLEMENTED');end;/ 這個文件包含了您實施建議所需的一切,從而為您省去了相當大的手動創建文件的麻煩。這個自動數據庫治理員又一次能夠為您完成工作。
標簽: Oracle 數據庫
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
视频在线观看91| 日本三级亚洲精品| 精品一区二区三区四区五区| 五月激激激综合网色播| 在线亚洲国产精品网站| 日本不卡免费高清视频在线| 久久精品国产99国产| 国产精品嫩草影院在线看| 免费观看在线综合色| 国产精品日韩欧美一区| 国产日韩综合| 六月丁香综合| 丝瓜av网站精品一区二区| 亚洲综合电影一区二区三区| 三级欧美在线一区| 日韩区欧美区| 91精品国产经典在线观看| 日韩在线麻豆| 欧美日韩午夜| 美女毛片一区二区三区四区最新中文字幕亚洲 | 亚洲精品系列| 日韩精品亚洲专区在线观看| 欧美偷窥清纯综合图区| 免费亚洲婷婷| 日韩精品不卡一区二区| 99热精品久久| 久久亚洲国产精品一区二区| 亚洲精品伊人| 国产在线日韩| av一区二区高清| 久久五月天小说| 91九色精品国产一区二区| 亚洲深夜影院| 日本免费新一区视频| 欧美aa在线视频| 日韩国产综合| 蜜臀精品久久久久久蜜臀| 日韩av三区| 国产精品伦理久久久久久| 欧美性感美女一区二区| 亚洲欧美日韩在线观看a三区| 日韩欧美激情电影| 久久中文字幕导航| 欧洲av一区二区| 水蜜桃久久夜色精品一区的特点| 少妇精品久久久一区二区三区| 久久精品超碰| 91欧美在线| 99xxxx成人网| 日本特黄久久久高潮| 黑森林国产精品av| 免费精品视频在线| 精品视频一区二区三区在线观看| 久久久久91| 日韩欧美中文字幕一区二区三区| 精品视频一区二区三区四区五区| 国产伊人精品| 国产精品日本一区二区三区在线| 亚洲伦乱视频| 麻豆精品少妇| 国产区精品区| 激情久久99| 好看的亚洲午夜视频在线| 亚洲精品欧美| 欧美日韩在线观看首页| 免费观看在线综合色| 精品一区二区三区在线观看视频| 国产综合激情| 欧美激情五月| 另类av一区二区| 精品一区视频| 美女日韩在线中文字幕| 欧美激情视频一区二区三区免费 | 国产一区日韩欧美| 欧美一区二区三区久久| 久久久噜噜噜| 国产精品v日韩精品v欧美精品网站 | 精品视频自拍| 国产三级一区| 999精品色在线播放| 日本天堂一区| 黄色亚洲在线| 国产一区二区三区亚洲| 日本一区免费网站| 狠狠爱成人网| 亚洲不卡系列| 精品视频一二| 日韩精品成人在线观看| 久久理论电影| 国产精品4hu.www| 不卡在线一区二区| 久久香蕉精品香蕉| 视频一区欧美日韩| 国产一区二区三区亚洲综合| 五月天久久777| 国产视频网站一区二区三区| 欧美日韩一二三四| 日本中文字幕一区二区视频| 久久av国产紧身裤| 日本亚洲不卡| 99精品一区| 久久国内精品| 99在线|亚洲一区二区| 精品国产欧美日韩| 午夜性色一区二区三区免费视频| 欧美一级精品| 久久人人精品| 日本不卡一二三区黄网| 老色鬼精品视频在线观看播放| 成人看片网站| 国产精品久久久网站| 国产精品色网| 日韩欧美一区二区三区免费看| 日韩一区二区三区在线看| 欧美91视频| av一区在线| 成人在线视频免费看| 国产中文一区| 欧美日韩一区二区综合| 欧美91在线| 综合激情一区| 欧美日韩精品一本二本三本| 国产午夜一区| 在线综合亚洲| 久久国产精品成人免费观看的软件| 麻豆一区二区在线| 日本精品久久| 快she精品国产999| 尹人成人综合网| 九色porny丨国产首页在线| 精品一区二区三区的国产在线观看| 国产区精品区| 国产色99精品9i| 国产一精品一av一免费爽爽| 亚久久调教视频| 亚洲香蕉久久| 亚洲欧美日韩视频二区| 亚洲一级二级| 久久国产成人午夜av影院宅| 精品伊人久久| 久久国产主播| 老鸭窝毛片一区二区三区| 亚洲91精品| 欧美二三四区| 成午夜精品一区二区三区软件| 国产精品久久免费视频| 久久精品99国产国产精| 欧美欧美黄在线二区| 日韩精品一二三四| 日韩一区二区三区在线看| 先锋亚洲精品| 男女精品网站| 亚洲视频二区| 亚洲麻豆一区| 激情五月色综合国产精品| 欧美成人午夜| 免费成人网www| 中文在线资源| 91精品亚洲| 国产在线成人| 日韩视频中文| 男人操女人的视频在线观看欧美| 亚洲国产专区| 亚洲一区二区小说| 日韩精品中文字幕吗一区二区| 人人爽香蕉精品| 天堂va欧美ⅴa亚洲va一国产| 91精品麻豆| 欧美极品一区二区三区| 日本伊人午夜精品| 麻豆91小视频| 欧产日产国产精品视频| 婷婷激情久久| 久久狠狠婷婷| 成人污污视频| 国产伦久视频在线观看| 久久精品影视| 国产亚洲精品v| 亚洲精品影院在线观看| 国产日韩一区二区三免费高清| 国产日韩在线观看视频| 精品黄色一级片| 久久久成人网| 亚洲在线电影| 亚洲精品韩国| 久久三级中文| 久久亚洲精品中文字幕蜜潮电影| 午夜久久美女| 亚洲精品日本| 麻豆精品在线| 久久亚洲在线| 免费看日韩精品| 国产精品v亚洲精品v日韩精品| 中文字幕在线高清| 伊人精品在线| 国产欧美久久一区二区三区| 国产精品qvod| 999久久久国产精品| 日精品一区二区三区| 久久永久免费|