cube和物化視圖_第1頁
cube和物化視圖_第2頁
cube和物化視圖_第3頁
cube和物化視圖_第4頁
cube和物化視圖_第5頁
已閱讀5頁,還剩20頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、數(shù)據(jù)庫駐留的按多維數(shù)據(jù)集組織的物化視圖(無需任何特殊工具將 OLAP 多維數(shù)據(jù)集的強(qiáng)大功能同 SQL 的簡(jiǎn)單性集成在一起)、通過分區(qū)變化跟蹤功能輕松識(shí)別刷新、新增的 Analytic Workspace Manager、擴(kuò)展到子查詢和遠(yuǎn)程表的查詢重寫以及許多其他新特性使 Oracle 數(shù)據(jù)庫成為更強(qiáng)有力的數(shù)據(jù)倉儲(chǔ)平臺(tái)。物化視圖 cube 立方體 AWM目錄-· 按多維數(shù)據(jù)集組織的物化視圖· 更頻繁地執(zhí)行查詢重寫· 分區(qū)中的陳舊程度檢查· Analytic Workspace Manager按多維數(shù)據(jù)集組織的物化視圖聯(lián)機(jī)分析處

2、理 (OLAP) 概念自 20 世紀(jì) 70 年代以來一直很活躍,并在 20 世紀(jì) 90 年代中期開始成為主流,Ted Codd 在 1992 年創(chuàng)造了術(shù)語“OLAP”。由于有點(diǎn)深?yuàn)W,大多數(shù)企業(yè)當(dāng)時(shí)都不知道如何正確利用 OLAP。多年以后,該技術(shù)已十分完善,使得 OLAP 依靠大型數(shù)據(jù)倉庫變得切實(shí)可行,從而真正將“智能”引入業(yè)務(wù)智能中。與傳統(tǒng)關(guān)系設(shè)計(jì)截然不同,OLAP 允許以最有效的方式存儲(chǔ)和訪問數(shù)據(jù),即最終用戶可以遍歷具有許多維度的假定“多維數(shù)據(jù)集”的邊緣。(請(qǐng)參見下面的多維數(shù)據(jù)集數(shù)據(jù)示例)。多維數(shù)據(jù)集的維度與事實(shí)(也稱為“量度”)相關(guān)聯(lián)。用關(guān)系術(shù)語來講,事實(shí)與維度之間具有多對(duì)一關(guān)系。例如,A

3、cme Computer Supplies 可能有一個(gè)銷售數(shù)據(jù)庫。維度通常包括客戶、產(chǎn)品和時(shí)間元素(月份、季度等)。在特定的時(shí)間段(2008 年 8 月)內(nèi),特定產(chǎn)品(Cat5e 電纜)與特定客戶 (Oracle Corp.) 之間對(duì)應(yīng)的銷售額是一個(gè)量度。維度和事實(shí)(例如銷售額)都存儲(chǔ)在單個(gè)表上。因此,用關(guān)系術(shù)語來講,事實(shí)表是維度表的子表。但是,這僅僅是一個(gè)比喻而已。在關(guān)系設(shè)計(jì)中,將通過在事實(shí)表的 customer、product 或 time 列上創(chuàng)建的索引來訪問量度。而在 OLAP 方法中,特定單元格(量度)是通過遍歷多維數(shù)據(jù)集進(jìn)行訪問的:本示例中的訪問方法如下:先轉(zhuǎn)至包含時(shí)間 Aug 0

4、8 的部分,再轉(zhuǎn)至產(chǎn)品 Cat5e,最后轉(zhuǎn)至客戶 Oracle。Oracle 像在數(shù)組(而不是表)中一樣計(jì)算目的地,然后即可知道如何到達(dá)這些部分。例如,假定維度是按以下方式組織的:Dimension Time := 'May','Jun','Jul','Aug'Dimension Customer := 'Microsoft','IBM','Oracle','HP'Dimension Product := 'Fiber','Cat6e'

5、,'Cat5e','Serial'為了找到 Oracle + Aug + Cat5e 量度,OLAP 引擎將按如下方式執(zhí)行導(dǎo)航:1. Aug 08 是 Time 數(shù)組的第四個(gè)元素,因此沿著多維數(shù)據(jù)集的時(shí)間維度轉(zhuǎn)至第四個(gè)單元格。2. Cat5e 是 Product 數(shù)組的第三個(gè)元素,因此轉(zhuǎn)至第三個(gè)元素。3. Oracle 是 Customer 數(shù)組的第三個(gè)元素,因此轉(zhuǎn)至第三個(gè)元素。就是這樣!現(xiàn)在您已經(jīng)找到了所需的量度。由于維度值充當(dāng)數(shù)組指針,因此在執(zhí)行此操作時(shí)不必使用索引。同樣,如果您要計(jì)算 2008 年 8 月份所有客戶的銷售總額,可以執(zhí)行同樣的操作,只是在第

6、3 步中將數(shù)組各元素的量度加起來,而不是轉(zhuǎn)至特定單元格。以傳統(tǒng)星型模式存儲(chǔ)的純關(guān)系形式數(shù)據(jù)的關(guān)系訪問與上述方法不同,如下所示。在關(guān)系數(shù)據(jù)庫方法中,您必須將此“事實(shí)”表與所有維度聯(lián)接。每次需要數(shù)據(jù)時(shí),都需要從事實(shí)表中選擇合適的數(shù)據(jù)(可能要通過索引),然后將其與所有維度逐個(gè)聯(lián)接起來(再次通過索引)。雖然此方法在技術(shù)上是可行的,但在大型數(shù)據(jù)庫中完全行不通。作為替代方法,能否為所有這些選項(xiàng)創(chuàng)建物化視圖 (MV) 呢?用戶可以使用維度元素的任意組合:· 8 月份針對(duì)所有客戶的 Cat5e 銷售額· 8 月份針對(duì) Oracle 的串行電纜銷售額與 IBM 銷售額(針對(duì)同一產(chǎn)品和月份)的

7、百分比· 針對(duì) HP 的光纜銷售額與針對(duì) Microsoft 的串行電纜銷售額的百分比等等。但是,需要?jiǎng)?chuàng)建多少個(gè) MV 呢?理論上講,應(yīng)該為每個(gè)組合創(chuàng)建一個(gè) MV (4 x 4 x 4 = 64 MV)。除了空間,您還需要足夠的時(shí)間和數(shù)據(jù)庫資源,以便在數(shù)據(jù)發(fā)生變化時(shí)刷新 MV,可能會(huì)涉及數(shù)千個(gè)元素。這樣,要?jiǎng)?chuàng)建和管理的 MV 的數(shù)量 將變得相當(dāng)龐大。相反,多維數(shù)據(jù)集是單個(gè)段,卻可以同樣輕松地處理任意類型的查詢。雖然二者都可用于旨在加快匯總數(shù)據(jù)(與 OLTP 數(shù)據(jù)不同)處理速度的數(shù)據(jù)倉庫設(shè)計(jì)中,卻存在著巨大的根本區(qū)別:MV 存儲(chǔ)預(yù)先計(jì)算的結(jié)果以避免聯(lián)接和聚合,而多維數(shù)據(jù)集存儲(chǔ)

8、原始數(shù)據(jù)并即時(shí)計(jì)算大多數(shù)匯總數(shù)據(jù)。(需要強(qiáng)調(diào)的是“大多數(shù)”這個(gè)詞,因?yàn)槟承﹨R總數(shù)據(jù)是創(chuàng)建的。多維數(shù)據(jù)集確定哪些聚合有用,然后僅創(chuàng)建那些聚合。在所有其他情況下,匯總數(shù)據(jù)都是即時(shí)計(jì)算的。)由于訪問路徑通過數(shù)組基數(shù)運(yùn)算,因此多維數(shù)據(jù)集中的數(shù)據(jù)檢索速度要比關(guān)系表(如 MV)快得多。OLAP 對(duì)象(如多維數(shù)據(jù)集)存儲(chǔ)在數(shù)據(jù)庫的特殊區(qū)域中,這些特殊區(qū)域稱為“分析工作區(qū)”(AW)。數(shù)據(jù)庫可能有一個(gè)或多個(gè) AW。這些 AW 以 BLOB 形式存儲(chǔ)在名稱帶有特別前綴 AW$ 的表上。雖然 Oracle 數(shù)據(jù)庫中的多維數(shù)據(jù)集不是新特性,在 Oracle Database 11g 之前的多個(gè)版本中已經(jīng)存在

9、,但它們?cè)谠L問方式上稍有不同。(畢竟,Oracle 在本質(zhì)上主要是關(guān)系數(shù)據(jù)庫引擎。)在這些版本中,數(shù)據(jù)的多維數(shù)據(jù)集表示是非固有概念,尤其在涉及到 MV 時(shí)更是如此。MV 提供了一些非常有趣的特性:自動(dòng)查詢重寫,用戶的查詢將被自動(dòng)重寫;增量刷新,僅刷新 MV 的某些部分,等等。另一方面,MV 是一種關(guān)系特性,而不是 OLAP 多維數(shù)據(jù)集的固有特性?,F(xiàn)在,我們來想象一件兩全其美的事情:將 MV 的重寫特性與 OLAP 多維數(shù)據(jù)集的性能優(yōu)勢(shì)結(jié)合起來。這一點(diǎn)在 Oracle Database 11g 中得以實(shí)現(xiàn)。在這方面,也許最重要的新功能是將 OLAP 多維數(shù)據(jù)集表示成 MV(通過稱為“按

10、多維數(shù)據(jù)集組織的物化視圖”這一新特性)。新函數(shù) CUBE_TABLE 可以在純 SQL 中完成對(duì)多維數(shù)據(jù)集的搜索。由于 MV 實(shí)際上是 OLAP 多維數(shù)據(jù)集,因此查詢重寫特性將重寫查詢以使用多維數(shù)據(jù)集,這一切甚至在您不知道的情況下進(jìn)行。這樣,您就可以通過支持 SQL 的任意工具來利用多維數(shù)據(jù)集的性能:Oracle 業(yè)務(wù)智能企業(yè)版、Cognos、Business Objects、Oracle Apex、SQL*Plus 或自定義的 Java 程序,不勝枚舉。實(shí)際上,您甚至不必了解任何特殊語法。(為了便于識(shí)別,按多維數(shù)據(jù)集組織的 MV 的名稱帶有 CB$ 前綴。)我將通過 Oracle 的正式示例

11、模式對(duì)這一新特性進(jìn)行解釋。下載并解壓縮該 zip 文件:$ unzip global_11g_schema.zipArchive:  global_11g_schema.zip  inflating: global_11g_remove.sql     inflating: global_11g_source.dmp     inflating: Templates/CHANNEL.XML     inflating: Templates/CUSTOMER.XML  

12、0; inflating: Templates/GLOBAL.XML      inflating: Templates/GLOBAL_MV.XML    inflating: Templates/PRICE_CUBE.XML    inflating: Templates/PRODUCT.XML     inflating: Templates/TIME.XML        inflating: Templates/UNI

13、TS_CUBE.XML    inflating: global_11g_install.sql    inflating: global_11g_readme.html 通過從 SQL*Plus 或 SQL Developer 中運(yùn)行腳本來安裝全局模式。您應(yīng)該知道 SYSTEM 用戶的口令:SQL> global_11g_installEnter the password for the user GLOBAL: Enter the password for the user SYSTEM: Connected. User create

14、d. Grant succeeded. Connected. Import: Release .0 - Production on Sat Jun 28 17:08:22 2008 Copyright (c) 1982, 2007, Oracle. All rights reserved. Connected to: Oracle Database 11g Enterprise Edition Release .0 - ProductionWith the Partitioning, Oracle Label Security, OLAP, Data Minin

15、g,Oracle Database Vault and Real Application Testing options Export file created by EXPORT:V11.01.00 via conventional pathimport done in US7ASCII character set and AL16UTF16 NCHAR character setimport server uses WE8MSWIN1252 character set (possible charset conversion)export client uses WE8MSWIN1252

16、character set (possible charset conversion). importing GLOBAL's objects into GLOBAL. . importing table "ACCOUNT" 24 rows imported. . importing table "CHANNEL_DIM" 3 rows imported. . importing table "CUSTOMER_DIM" 61 rows imported. . importing table "PRICE_FACT&

17、quot; 2523 rows imported. . importing table "PRODUCT_CHILD_PARENT" 48 rows imported. . importing table "PRODUCT_DIM" 36 rows imported. . importing table "TIME_DIM" 120 rows imported. . importing table "UNITS_FACT" 299446 rows importedAbout to enable constraint

18、s.Import terminated successfully without warnings. SQL> exitglobal_11g_readme.html 文件中包含有關(guān)該模式的詳細(xì)信息。它還包含一個(gè)腳本,用于在測(cè)試完成后刪除模式。該文件從轉(zhuǎn)儲(chǔ)文件中導(dǎo)入維度、事實(shí)以及所有其他相關(guān)數(shù)據(jù)。通過示例解釋“按多維數(shù)據(jù)集組織的 MV”這一概念可能是最容易的。轉(zhuǎn)儲(chǔ)文件包含兩個(gè)多維數(shù)據(jù)集,其中一個(gè)是 PRICE_CUBE。我們看一下如何使用純 SQL 查詢?cè)摱嗑S數(shù)據(jù)集。我還希望顯示 Oracle 要遵循的訪問路徑,因此我在運(yùn)行查詢之前使用了 autotrace 命令。SQ

19、L> set autotrace on explainSQL> select * from table(cube_table('GLOBAL.PRICE_CUBE')  2> /.                               &#

20、160;the data comes here .Execution Plan-Plan hash value: 3184667476-| Id  | Operation               | Name       | Rows  | Bytes | Cost (%CPU)| Time     |-| 

21、60; 0 | SELECT STATEMENT        |            |  2000 |   195K|    29   (0)| 00:00:01 |   1 |  CUBE SCAN PARTIAL OUTER| PRICE_CUBE |  2000 |  

22、; 195K|    29   (0)| 00:00:01 |-                           CUBE_TABLE 是 Oracle Database 11g 中引入的新函數(shù)。它允許將 AW 中存儲(chǔ)的多維數(shù)據(jù)集作為關(guān)系對(duì)象進(jìn)行查詢。注意,訪問路徑

23、顯示了 CUBE SCAN,表明將該多維數(shù)據(jù)集作為多維數(shù)據(jù)集進(jìn)行了掃描(雖然您使用了 SQL)。在本示例中,我們使用了最基本的工具;SQL*Plus 完全不了解 OLAP 或分析轉(zhuǎn)換,但我們可以采用某種分析方式來提取數(shù)據(jù)??梢栽诒砗途S度上使用 CUBE_TABLE 函數(shù)。一般形式如下:select * from table(cube_table('<schema>.<dimension><hierarchy>')hierarchy 部分是可選的;可以忽略這部分。下面是您之前安裝的 GLOBAL 樣例模式中的一個(gè)示例,在這個(gè)示例中,您要從 PR

24、ODUCT 維度中選擇層次結(jié)構(gòu) PRIMARY。select * from table(cube_table('GLOBAL.PRODUCT;PRIMARY')將為每個(gè)多維數(shù)據(jù)集和維度自動(dòng)生成一個(gè)視圖。例如,將為多維數(shù)據(jù)集 PRICE_CUBE 生成一個(gè)名為 PRICE_CUBE_VIEW 的視圖。如果檢查視圖定義,您會(huì)發(fā)現(xiàn)其內(nèi)容如下:CREATE OR REPLACE VIEW "PRICE_CUBE_VIEW" ("UNIT_PRICE", "UNIT_COST", "TIME", "

25、PRODUCT") AS SELECT "UNIT_PRICE", "UNIT_COST", "TIME", "PRODUCT" FROM TABLE(CUBE_TABLE('GLOBAL.PRICE_CUBE') )當(dāng) GUI 工具不了解 CUBE 函數(shù)并且系統(tǒng)提示用戶選擇對(duì)象類型(通常是視圖)時(shí),視圖非常有用。以下是使用 Oracle SQL Developer 從視圖中選擇數(shù)據(jù)的一個(gè)示例。SQL Developer 顯示視圖,您可以像在任何其他視圖中一樣選擇數(shù)據(jù)選項(xiàng)卡和篩選數(shù)據(jù)。雖然

26、是多維數(shù)據(jù)類型,但 CUBE_TABLE 表函數(shù)允許將其作為關(guān)系對(duì)象進(jìn)行訪問。在后臺(tái),數(shù)據(jù)庫的多維引擎執(zhí)行必要的計(jì)算,例如,以透明方式聚合或計(jì)算量度。這樣,您就獲得了兩全其美的結(jié)果。您可以在熟悉的應(yīng)用程序環(huán)境中(即使是 SQL*Plus)利用 Oracle 數(shù)據(jù)庫中內(nèi)置的 OLAP 功能。雖然您可以在純 SQL 中管理多維數(shù)據(jù)集,但最簡(jiǎn)單的方法是通過 Analytic Workspace Manager 工具(稍后介紹)。視圖 DBA_CUBES 顯示了有關(guān)多維數(shù)據(jù)集的信息?,F(xiàn)在,我們來看一下使用按多維數(shù)據(jù)集組織的 MV 有哪些好處。首先,由于對(duì)多維數(shù)據(jù)集進(jìn)行分析訪問,多維數(shù)據(jù)集(和按多維數(shù)據(jù)

27、集組織的 MV)可以顯著提高需要匯總數(shù)據(jù)的查詢的性能。其次,多維數(shù)據(jù)集在執(zhí)行快速增量刷新方面非常高效。最后,由于單個(gè)多維數(shù)據(jù)集可以代替許多 MV,因而更容易管理和維護(hù)。注意,按多維數(shù)據(jù)集組織的 MV 僅僅是個(gè)元數(shù)據(jù)對(duì)象。匯總數(shù)據(jù)由多維數(shù)據(jù)集管理,按多維數(shù)據(jù)集組織的 MV 僅支持多維數(shù)據(jù)集的自動(dòng)查詢重寫和自動(dòng)刷新。數(shù)據(jù)存儲(chǔ)在多維數(shù)據(jù)集中,而不存儲(chǔ)在按多維數(shù)據(jù)集組織的 MV 中,因此這不是復(fù)制策略??蓪⑵湟暈榕c預(yù)先建立的表(類似于多維數(shù)據(jù)集)上的 MV 類似。更頻繁地執(zhí)行查詢重寫您應(yīng)該已經(jīng)熟悉了查詢重寫功能,在幾個(gè)版本之前的 Oracle 數(shù)據(jù)庫中曾經(jīng)介紹過??偠灾?,當(dāng)用戶寫入一個(gè)與 MV 的定

28、義查詢相匹配的查詢時(shí),Oracle 將從 MV 中進(jìn)行選擇,而不在數(shù)據(jù)庫中執(zhí)行查詢。術(shù)語“匹配”指存儲(chǔ)的 MV 可以滿足查詢的部分結(jié)果集,或者可以使用 MV 中的現(xiàn)有數(shù)據(jù)加快查詢速度。換句話說,Oracle 重寫查詢(或查詢的某些部分)以便從 MV(而不是查詢中指定的表)中進(jìn)行選擇。這樣,數(shù)據(jù)庫就不必執(zhí)行訪問基表和計(jì)算任務(wù),可以更快地為用戶返回?cái)?shù)據(jù)。所有這些操作都將自動(dòng)進(jìn)行,用戶甚至不知道存在這樣一個(gè) MV 并且查詢已被重寫。當(dāng)然,用戶必須選擇接受查詢中的替換內(nèi)容。會(huì)話參數(shù) query_rewrite_enabled 必須設(shè)置為 TRUE,并應(yīng)基于 MV 的陳舊程度將 query_rewrit

29、e_integrity 設(shè)置為 trusted 或 stale_tolerated(該參數(shù)控制由內(nèi)核提供的數(shù)據(jù)完整性實(shí)施的級(jí)別)。MV 自身也必須可用于查詢重寫。當(dāng)用戶查詢與 MV 的定義查詢類似時(shí)將會(huì)發(fā)生查詢重寫。在過去的版本中,如果查詢不想死,將不會(huì)重寫查詢。但在 Oracle Database 11g中,這些規(guī)則將更加寬松。請(qǐng)看如下所示的 MV:create materialized view mv4        enable query rewrite asselect   prod_

30、id, cust_id, avg (rate) tot_qty    from (select d_id, cust_id, amount_sold / quantity_sold rate            from sales s, products p           where d_id = d_id) sqgr

31、oup by prod_id, cust_id/它使用內(nèi)聯(lián)查詢,行源實(shí)際上是另一個(gè)查詢(FROM 中的子句實(shí)際上是內(nèi)聯(lián)查詢)。如果您寫入一個(gè)與 MV 的定義查詢類似的查詢(使用同一個(gè)內(nèi)聯(lián)視圖),現(xiàn)在您將看到正在發(fā)生重寫。使用 AUTOTRACE 檢查執(zhí)行路徑。SQL> alter session set query_rewrite_enabled = true; Session altered. SQL> alter session set query_rewrite_integrity = stale_tolerated; Session altered.SQ

32、L> set autotrace traceonly explainSQL> select pid, cid, avg(item_rate) avg_item_rate 2 from (select d_id pid, cust_id cid, amount_sold/quantity_sold item_rate 3 from sales s, products p 4 where d_id = d_id) 5 group by cid, pid;Execution Plan-Plan hash value: 3944983699 -| Id | O

33、peration | Name | Rows | Bytes | Cost (%CPU)| Time |-| 0 | SELECT STATEMENT | | 287K| 10M| 226 (2)| 00:00:03 | 1 | MAT_VIEW REWRITE ACCESS FULL| MV4 | 287K| 10M| 226 (2)| 00:00:03 |- Note- - dynamic sampling used for this statement注意上面 Id=1 的情況;查詢使用我們之前創(chuàng)建的物化視圖 MV4 進(jìn)行了重寫。即使 MV 和查詢使用了內(nèi)聯(lián)視圖(或子查詢),也會(huì)發(fā)生查詢

34、重寫。在 Oracle Database 11g 中,遠(yuǎn)程表也會(huì)發(fā)生查詢重寫。分區(qū)中的陳舊程度檢查如果您有一個(gè)分區(qū)的從表,并基于該表創(chuàng)建了 MV,則可以利用分區(qū)變化跟蹤(PCT;在 Oracle Database 10g 中引入)功能僅刷新特定分區(qū),而不是整個(gè)表。PCT 特性允許您使用 FAST 選項(xiàng)執(zhí)行更新,即使從表上沒有 MV 日志。但是,如何知道哪些分區(qū)已經(jīng)更改了?Oracle Database 11g 中有一個(gè)很棒的新視圖:DBA_MVIEW_DETAIL_PARTITION。此視圖顯示已更新的分區(qū),并將用于后面的 PCT 刷新。FRESHNESS 列顯示

35、該分區(qū)在 MV 中是否已被刷新。與任何其他視圖一樣,此視圖也有 USER_* 和 ALL_* 版本。我們使用 Oracle Database 11g 隨附光盤中提供的 SH 模式。首先檢查刷新情況:SQL> select detailobj_name, detail_partition_name, detail_partition_position, freshness  2> from user_mview_detail_partition  3> where MVIEW_NAME = 'MV1'DETAILOBJ_NAME&#

36、160;                DETAIL_PARTITION_NAME          DETAIL_PARTITION_POSITION FRESH- - - -SALES              &#

37、160;           SALES_1995                                     

38、60;       1 FRESHSALES                          SALES_1996              

39、60;                              2 FRESHSALES                  &#

40、160;       SALES_H1_1997                                         

41、 3 FRESHSALES                          SALES_H2_1997                    

42、60;                     4 FRESHSALES                          SALES_Q1_1998

43、                                          5 FRESHSALES       

44、;                   SALES_Q2_1998                             

45、60;            6 FRESHSALES                          SALES_Q3_1998         

46、                                 7 FRESHSALES                

47、;          SALES_Q4_1998                                      

48、60;   8 FRESHSALES                          SALES_Q1_1999                  

49、                        9 FRESHSALES                         

50、; SALES_Q2_1999                                         10 FRESHSALES     &

51、#160;                    SALES_Q3_1999                            

52、;             11 FRESHSALES                          SALES_Q4_1999        &

53、#160;                                12 FRESHSALES                

54、;          SALES_Q1_2000                                      

55、60;  13 FRESHSALES                          SALES_Q2_2000                   

56、;                      14 FRESHSALES                          SALES_Q3

57、_2000                                         15 FRESHSALES       

58、;                   SALES_Q4_2000                             

59、60;           16 FRESHSALES                          SALES_Q1_2001          

60、;                               17 FRESHSALES                 

61、60;        SALES_Q2_2001                                        

62、18 FRESHSALES                          SALES_Q3_2001                    

63、60;                    19 FRESHSALES                          SALES_Q4_2001 

64、;                                        20 FRESHSALES        

65、60;                 SALES_Q1_2002                               &

66、#160;         21 FRESHSALES                          SALES_Q2_2002           

67、60;                             22 FRESHSALES                   &

68、#160;      SALES_Q3_2002                                         23 FRESHSA

69、LES                          SALES_Q4_2002                      &

70、#160;                  24 FRESHSALES                          SALES_Q1_2003  

71、60;                                      25 FRESHSALES          &

72、#160;               SALES_Q2_2003                                 

73、;        26 FRESHSALES                          SALES_Q3_2003             &

74、#160;                           27 FRESHSALES                     

75、;     SALES_Q4_2003                                         28 FRESH現(xiàn)在,在表中插入一行:i

76、nsert into sales values (13,987,'1-jan-98',3,999,1,1232.16)現(xiàn)在,如果您執(zhí)行同一查詢以檢查刷新:DETAILOBJ_NAME DETAIL_PARTITION_NAME DETAIL_PARTITION_POSITION FRESH- - - -SALES SALES_1995 1 FRESHSALES SALES_1996 2 FRESHSALES SALES_H1_1997 3 FRESHSALES SALES_H2_1997 4 FRESHSALES SALES_Q1_1998 5 STALESALES SALES

77、_Q2_1998 6 FRESH. and so on .該行所指的分區(qū) SALES_Q1_1998 現(xiàn)在列為 STALE。當(dāng)您快速刷新 MV 時(shí),它將使用 PCT 功能僅刷新該分區(qū),而不刷新整個(gè)表。而且,即使表上沒有 MV 日志,也會(huì)發(fā)生 FAST 刷新?,F(xiàn)在,如果您使用 FAST 選項(xiàng)刷新 MV:SQL> exec dbms_mview.refresh('MV1','F')PL/SQL procedure successfully completed.現(xiàn)在再次檢查刷新情況:DETAILOBJ_NAME DETAIL_PARTITION_NAME DET

78、AIL_PARTITION_POSITION FRESH- - - -SALES SALES_1995 1 FRESHSALES SALES_1996 2 FRESHSALES SALES_H1_1997 3 FRESHSALES SALES_H2_1997 4 FRESHSALES SALES_Q1_1998 5 FRESHSALES SALES_Q2_1998 6 FRESH該分區(qū)被標(biāo)記為 FRESH;后續(xù)的快速刷新將不會(huì)選擇該分區(qū)。通過此視圖,您可以輕松地確定在 PCT 刷新中將刷新哪些分區(qū),并可估計(jì)相關(guān)工作。此特性也適用于按多維數(shù)據(jù)集組織的 MV。Analytic Workspace Manager正如我先前提到的,存儲(chǔ) OLAP 對(duì)象的特殊區(qū)域稱為“分析工作區(qū)”。OLAP 對(duì)象

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論