亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        數(shù)據(jù)倉庫中非齊整非平衡及其混合層次結(jié)構(gòu)建模的研究

        2007-01-01 00:00:00江恭和武友新
        計(jì)算機(jī)時(shí)代 2007年3期

        摘 要:在數(shù)據(jù)倉庫建設(shè)中,維度的層次結(jié)構(gòu)建模關(guān)系到數(shù)據(jù)組織、存儲(chǔ)、分析和展現(xiàn),甚至?xí)绊懙綌?shù)據(jù)挖掘的應(yīng)用,是一個(gè)相當(dāng)重要的設(shè)計(jì)過程。文章針對(duì)政府決策支持系統(tǒng)建設(shè)中常見的非齊整非平衡及混合的層次結(jié)構(gòu)建模作了較深入的分析和研究,論述了采用星型模型和雪花模型實(shí)現(xiàn)非齊整非平衡及其混合層次結(jié)構(gòu)的建模方法,并結(jié)合例子具體實(shí)現(xiàn)了在Omde數(shù)據(jù)倉庫中的類層次結(jié)構(gòu)建模。

        關(guān)鍵詞:非齊整層次結(jié)構(gòu);非平衡層次結(jié)構(gòu);混合層次結(jié)構(gòu);雪花模型;數(shù)據(jù)倉庫;聯(lián)機(jī)分析處理;電子政務(wù)

        0引言

        隨著國內(nèi)電子政務(wù)建設(shè)的深入發(fā)展以及信息化程度的不斷提高,為提高決策的科學(xué)性和規(guī)范性,促進(jìn)經(jīng)濟(jì)發(fā)展,政府引入決策支持系統(tǒng)DSS(Decision Supported System)來輔助經(jīng)濟(jì)、政策決策成為電子政務(wù)建設(shè)的一種發(fā)展趨勢(shì)。采用“數(shù)據(jù)倉庫(Data Warehouse)+聯(lián)機(jī)分析處理(On Line Analytical Processing)+數(shù)據(jù)挖掘(Data Mining)”為技術(shù)基礎(chǔ)的決策支持系統(tǒng)DSS是目前比較成熟的解決方案,數(shù)據(jù)倉庫實(shí)現(xiàn)了大量歷史業(yè)務(wù)數(shù)據(jù)的存儲(chǔ)和組織,聯(lián)機(jī)分析處理實(shí)現(xiàn)了數(shù)據(jù)的分析和展現(xiàn),數(shù)據(jù)挖掘?qū)崿F(xiàn)了知識(shí)發(fā)現(xiàn)。

        不像電信和銀行的DSS(企業(yè)中的DSS有時(shí)也常常被稱為商業(yè)智能Business Intelligence)只針對(duì)本企業(yè)數(shù)據(jù),政府DSS中的數(shù)據(jù)涉及到社會(huì)方方面面,從國民經(jīng)濟(jì)到居民消費(fèi),從工業(yè)到農(nóng)業(yè),從科技到衛(wèi)生等等,其特點(diǎn)是非相加的數(shù)據(jù)(nonadditive)和半相加的數(shù)據(jù)(semiadditive)居多;同時(shí)其數(shù)據(jù)的非齊整非平衡等特殊層次結(jié)構(gòu)比較多。這些特點(diǎn)給數(shù)據(jù)倉庫的層次結(jié)構(gòu)建模帶來了較多的設(shè)計(jì)和實(shí)現(xiàn)難度。

        鑒于政府DSS中的數(shù)據(jù)特點(diǎn),在設(shè)計(jì)過程中常常不能采用常用的星型模型建模,更多地需要采用雪花模型建模。

        1層次結(jié)構(gòu)(層次)

        層次結(jié)構(gòu)是維度中成員的集合以及這些成員之間的相對(duì)位置的描述,是組織數(shù)據(jù)的邏輯結(jié)構(gòu)。通常講的下鉆(drilldown)就是指遍歷層次結(jié)構(gòu)的一種行為,即從某一維層次結(jié)構(gòu)的高層遍歷到細(xì)節(jié)低層;上卷(roll up)是在某一維上將低層次的細(xì)節(jié)數(shù)據(jù)概括到高層次的數(shù)據(jù)。層次結(jié)構(gòu)是業(yè)務(wù)不可缺少的組成部分,同時(shí)也是數(shù)據(jù)倉庫和OLAP中要處理的基本問題。

        層次組成方式主要有以級(jí)別(1evel-based)為基礎(chǔ)和以有父子關(guān)系的值(Parent Child Value-based)為基礎(chǔ)的二類組成方式。本文主要討論基于級(jí)別的層次組成方式,因?yàn)樗趯?shí)際中更常見,更具有通用性。通常也把層次結(jié)構(gòu)稱為層次樹,它是一種特殊的“父-子”聯(lián)系類型,孩子代表低層細(xì)節(jié)或父親的粒度。維表中的列代表了一個(gè)層次結(jié)構(gòu)中特定的級(jí)別。因?yàn)榫S表中多個(gè)成員之間可能存在一種或多種關(guān)系,所以一個(gè)維表可以對(duì)應(yīng)多種層次結(jié)構(gòu)。層次結(jié)構(gòu)存在以下幾種類型:

        a.正常層次結(jié)構(gòu)(Normal Hierarchy)

        b.不齊整的層次結(jié)構(gòu)(skip Hierarchy)

        c.不平衡層次結(jié)構(gòu)(Ragged Hierarchy)

        d、不平衡和不齊整層次結(jié)構(gòu)(Ragged with Skip Hierarchy)

        另外,根據(jù)層次所在的維數(shù)據(jù)能否匯總,可分為聚集層次結(jié)構(gòu)和非聚集層次結(jié)構(gòu)。

        1.1正常層次結(jié)構(gòu)

        正常層次結(jié)構(gòu)指的是齊整和平衡的層次結(jié)構(gòu),它的所有層次分支都將降至具有相同級(jí)別的最低層次,并且每個(gè)成員的邏輯父代直接位于該成員的上一級(jí)別。比如在我國的行政建制的地域維中包括國家、省、市三個(gè)級(jí)別,它們組成的層次為“國家一省一市”,在不考慮直轄市的情況下,此層次結(jié)構(gòu)就是齊整和平衡層次結(jié)構(gòu),如圖1所示。

        1.2不齊整層次結(jié)構(gòu)

        不齊整層次結(jié)構(gòu)中,各層次分支從高層遍歷到最低層所跨過的層次級(jí)別會(huì)有所不同,也就是說,至少有一個(gè)成員的邏輯父級(jí)不同于其它成員的父級(jí)。在上面提到的地域維中如果增加直轄市——上海,如圖2所示,由于直轄市上海的上一級(jí)不是省而是全國,上海市所隸屬分支的層次級(jí)別的組成將與其它分支不同,所以此層次結(jié)構(gòu)為不齊整層次結(jié)構(gòu)。

        1.3不平衡層次結(jié)構(gòu)

        不平衡層次結(jié)構(gòu)指的是各層次結(jié)構(gòu)分支從高層往低層的遍歷過程中將降至具有不同級(jí)別的最低層次。如圖3所示GDP維層次分類,其“第一產(chǎn)業(yè)”分支沒有下層數(shù)據(jù)。

        1.4不平衡及不齊整混合層次結(jié)構(gòu)

        不平衡及不齊整混合層次結(jié)構(gòu)指的是既有不齊整分支也有不平衡分支的層次結(jié)構(gòu)。如圖4所示層次結(jié)構(gòu),既包含不平衡分支和不齊整分支,還包含一條既有不平衡又有不齊整特性的分支。

        1.5聚集層次結(jié)構(gòu)與非聚集層次結(jié)構(gòu)

        在數(shù)據(jù)倉庫中通過層次結(jié)構(gòu),可以定義數(shù)據(jù)匯總/聚集。例如商品銷售中,從時(shí)間維分析,可以建立由級(jí)別月、季、年組成的“年一季一月”層次結(jié)構(gòu),從而可將月商品銷售額聚集成季度商品銷售額,季度商品銷售額再聚集成年度商品銷售額。具有此類可相加事實(shí)的層次結(jié)構(gòu)就稱為聚集層次結(jié)構(gòu)。而在數(shù)據(jù)倉庫中也存在一些事實(shí)值,它們并沒有表現(xiàn)出如商品銷售額那樣的相加性,如一個(gè)省的GDP增長率,將每年的增長率相加是沒有多少意義的,然而如果取其平均會(huì)得到一個(gè)有意義的數(shù)值,這樣的度量值被稱為半相加的事實(shí)。具有半相加的事實(shí)或非相加事實(shí)的層次結(jié)構(gòu)為非聚集層次結(jié)構(gòu)。如在全國一省一市層次中,各省的GDP增長率就不能由其下面各市的GDP增長率聚集而來,同樣全國的GDP增長率也不能由各省的GDP增長率聚集而成。省的GDP增長率、全國的GDP增長率必須作為事實(shí)存儲(chǔ)在數(shù)據(jù)倉庫事實(shí)表中。

        有些特殊情況下,某些子類僅為父類的一部分成員,如在圖3所示的不平衡層次結(jié)構(gòu)中,“第三產(chǎn)業(yè)”的下一級(jí)別的各個(gè)成員(#交通運(yùn)輸郵電業(yè)、批零貿(mào)易餐飲業(yè)和舟金融保險(xiǎn)業(yè))僅僅為組成“第三產(chǎn)業(yè)”的一部分,子類與父類之間不存在數(shù)據(jù)聚集的關(guān)系。

        對(duì)于在維度中預(yù)定義的聚集層次結(jié)構(gòu),可以實(shí)現(xiàn)數(shù)據(jù)匯總和鉆取功能。而對(duì)于非聚集的層次結(jié)構(gòu)。我們主要是利用層次的數(shù)據(jù)鉆取功能,通過按層次的上卷和下鉆分析查看和展現(xiàn)數(shù)據(jù)。

        2非齊整非平衡及其混合層次結(jié)構(gòu)的建模

        在政府DSS的建模中涉及非齊整層次結(jié)構(gòu)、非平衡層次結(jié)構(gòu)、非聚集層次結(jié)構(gòu)或幾者的組合的情況比較多,其處理方法各不相同。下面分?jǐn)?shù)據(jù)聚集和數(shù)據(jù)非聚集兩部分來論述它們的實(shí)現(xiàn)。

        2.1數(shù)據(jù)聚集

        2.1.1采用占位符的建模實(shí)現(xiàn)

        對(duì)于數(shù)據(jù)是聚集的非正常層次結(jié)構(gòu),在建模過程中我們可以先對(duì)層次中的非齊整分支和非平衡分支分別作齊整化和平衡化處理。

        齊整化是指用子級(jí)成員往上占用直接父級(jí)成員位置,如果子級(jí)成員與直接父級(jí)中間跨越多個(gè)級(jí)別,則一級(jí)一級(jí)用同一方法處理,從而實(shí)現(xiàn)非齊整層次的齊整化。如將圖2中的非齊整層次改造成圖5所示的齊整化層次,只要在上海市的直接父級(jí)即省級(jí)成員中填入占位符“上海市”。這樣處理后,全國聚集的值也是正確的,因?yàn)槭〖?jí)中的“上海市”是市級(jí)別中上海市的聚集值。

        與非齊整層次處理方法類似,對(duì)于非平衡層次也可采用占位符進(jìn)行平衡化,但與非齊整層次占位處理順序相反。非平衡結(jié)構(gòu)的處理是用父級(jí)成員占用子級(jí)成員的位置,并一直迭代處理到層次的最低級(jí)別,也即將葉結(jié)點(diǎn)降至層次樹的最低層。平衡化過程如圖6中的Ragged Branch和Ragged with skipped-levelbrance分支所示。

        圖6中也展示了不平衡及不齊整混合層次平衡化和齊整化的處理過程。改造后的層次適合常用的星型和雪花模型建模。實(shí)際上,上述解決方法是有一定的適用范圍的,如整個(gè)層次只是很少部分需“占位符”填補(bǔ)的時(shí)候采用這樣的解決方法能較好滿足實(shí)際需求。但是如果層次大部分的分支都不是“滿”的話,填補(bǔ)“占位符”的方法不僅費(fèi)時(shí),而且費(fèi)力,在數(shù)據(jù)上卷和下鉆的過程中可能會(huì)遍歷幾次“占位符”才能看到具體的事實(shí),這也會(huì)給用戶操作帶來許多的不便。特別是遍歷的層次超過業(yè)務(wù)本身邏輯的層次深度時(shí),可能給用戶訪問帶來極大困難。

        下面用占位符平衡化的“支出法生產(chǎn)總值”維層次為例,參見圖7,描述采用星型模型和雪花模型進(jìn)行層次建模的方法。圖中帶下劃線文字為占位符。

        星型模型建模示意如圖8所示。圖中事實(shí)表的列“GDP_分類”為外鍵,引用維表ZCFGDP_STAR_DIM的“LD”列,事實(shí)表與維表之間滿足參照完整性約束。

        “支出法生產(chǎn)總值”雪花模型建模示意如圖9所示。數(shù)據(jù)倉庫中的雪花模型是對(duì)維度表采用了規(guī)范化處理,將圖8中的維表分解為四張子維表(采用雪花模型建模,維表的個(gè)數(shù)與維層次級(jí)別數(shù)相等),共同組成了“GDP_分類”維表。

        在星型模型和雪花模型中事實(shí)表的“GDP_分類”列都為外鍵,引用維表中的“L-D”列(層次中最低級(jí)別),事實(shí)表與維表存在參照完整性約束,即事實(shí)表\"GDP_分類”列中存儲(chǔ)的是維層級(jí)中最低級(jí)別標(biāo)識(shí),實(shí)際上就是層次樹中葉結(jié)點(diǎn)標(biāo)識(shí)。

        在Oracle OLAP AW(OLAP分析空間一OLAP Analytic Workspace)中,數(shù)據(jù)倉庫采用為星型模型時(shí),維表與OLAP維的映射采用星型模型,維表的列與維層次級(jí)別成員一一對(duì)應(yīng);數(shù)據(jù)倉庫為雪花模型時(shí),維表與OLAP維的映射采用雪花模型,子維表的主鍵與維中對(duì)應(yīng)級(jí)別成員一一對(duì)應(yīng),同時(shí)關(guān)聯(lián)其父類,映射關(guān)系與圖11所示類似。

        在事實(shí)表與OLAP的CUBE映射中,事實(shí)表中“GDP_分類”關(guān)聯(lián)CUBE中對(duì)應(yīng)維層次的最低級(jí)別,映射關(guān)系與圖12所示類似,但其只需關(guān)聯(lián)“LD”級(jí)別。

        2.1.2利用OLAP雪花模型的建模

        可以看到,通過“GDP_分類”維表下鉆“貨物和服務(wù)出口”數(shù)據(jù),在上述星型建模和雪花模型中需遍歷“支出法生產(chǎn)總值->貨物和服務(wù)出口->貨物和服務(wù)出口->貨物和服務(wù)出口”才能看到“貨物和服務(wù)出口”的事實(shí),在遍歷過程中要經(jīng)過二個(gè)“占位符”。

        而采用OLAP雪花模型建??梢杂行У貙?shí)現(xiàn)按業(yè)務(wù)邏輯層次的下鉆、分析展現(xiàn)。圖10展現(xiàn)的是利用OLAP雪花模型對(duì)“GDP_分類”維的建模。圖中帶箭頭的實(shí)線表示維表之間關(guān)聯(lián)引用,虛線標(biāo)識(shí)出“GDP_分類”列的數(shù)據(jù)來源于層次樹中的葉子結(jié)點(diǎn)。

        實(shí)現(xiàn)該模型,首先要用一系列關(guān)聯(lián)表實(shí)現(xiàn)維的層次,同時(shí)保證事實(shí)表的列“GDP分類”的值來自維表的多個(gè)特定列(包含有葉結(jié)點(diǎn),葉結(jié)點(diǎn)代表具體事實(shí)值,非葉結(jié)點(diǎn)的值由葉結(jié)點(diǎn)聚集而成)。而在數(shù)據(jù)倉庫中的常規(guī)雪花模型中,事實(shí)表應(yīng)與維表符合引用完整性,即事實(shí)表中的外鍵字都能分別與對(duì)應(yīng)維表中的主關(guān)鍵字正確匹配。而目前數(shù)據(jù)庫外鍵不支持針對(duì)多個(gè)列的參照,所以圖lO所示的事實(shí)表與維表之間不滿足參照完整性約束。

        在OLAP AW實(shí)現(xiàn)數(shù)據(jù)倉庫中的維表與OLAP維的映射如圖ll所示。

        圖11左側(cè)的四張是在數(shù)據(jù)倉庫中已經(jīng)過規(guī)范化處理的維表,借助外鍵形成級(jí)聯(lián)關(guān)系,符合3NF。維表中列與OLAP維層次級(jí)別中對(duì)應(yīng)的“成員”和“父級(jí)”相關(guān)聯(lián)。

        在OLAP AW中實(shí)現(xiàn)數(shù)據(jù)倉庫中事實(shí)表與CUBE映射如圖12所示。事實(shí)表“GDP_分類”關(guān)聯(lián)CUBE中具有計(jì)子結(jié)點(diǎn)的“L-B”“L-c”、“L_D”級(jí)別。當(dāng)然為了安全起見,可以關(guān)聯(lián)維中所有級(jí)別。

        由于數(shù)據(jù)按“GDP_分類”維是聚集的,在OLAP CUBE聚集規(guī)則中設(shè)置維的運(yùn)算符為“求和”。

        通過上面維表與OLAP維的映射以及事實(shí)表與CUBE映射的配置信息,再加上維表和事實(shí)表中存儲(chǔ)的數(shù)據(jù),利用SQL和一些臨時(shí)表不難寫出實(shí)現(xiàn)數(shù)據(jù)聚集操作和過程。OLAP引擎也正是利用了這些必要的配置信息,實(shí)現(xiàn)數(shù)據(jù)聚集和其它分析展現(xiàn)功能。

        從中可以看到,利用OLAP雪花模型實(shí)現(xiàn)層次建模比占位符展現(xiàn)邏輯更清晰,維表處理工作少,實(shí)際中更為常用。

        2.2數(shù)據(jù)非聚集

        數(shù)據(jù)非聚集的非正常層次結(jié)構(gòu)在政府決策支持系統(tǒng)中更為常見,由于數(shù)據(jù)非聚集,事實(shí)表中維對(duì)應(yīng)列的數(shù)據(jù)來源于層次樹中所有的結(jié)點(diǎn)標(biāo)識(shí)。目前在Oracle OLAP AW中星型模型對(duì)此類層次建模暫不支持,采用OLAP雪花模型的建模方法比較簡(jiǎn)明有效。

        下面以圖3表示的“生產(chǎn)法生產(chǎn)總值”維為例說明采用OLAP雪花模型的非聚集層次建模。圖13展現(xiàn)了“生產(chǎn)法生產(chǎn)總值”數(shù)據(jù)倉庫中事實(shí)表與維表的關(guān)系。圖中帶箭頭的實(shí)線表示表之間關(guān)聯(lián)引用,虛線標(biāo)識(shí)出“GDP分類”列的數(shù)據(jù)來源于層次樹中的所有結(jié)點(diǎn)。

        “生產(chǎn)法生產(chǎn)總值”事實(shí)表與OLAP CUBE的映射,如圖15所示,事實(shí)表\"GDP_分類”與CUBE中關(guān)聯(lián)維中所有級(jí)別相關(guān)聯(lián)。

        由于數(shù)據(jù)按“生產(chǎn)法生產(chǎn)總值”維是非聚集的,在OLAPCUBE聚集規(guī)則中設(shè)置維的運(yùn)算符為“不求和”,如圖16所示。

        從圖16中可以看到,在CUBE設(shè)置規(guī)則中處理的粒度是維,所以某一層次分支不聚集,整個(gè)維就只能采用不聚集(不求和)處理,即使有些分支聚集(如“生產(chǎn)法生產(chǎn)總值”層次的“第二產(chǎn)業(yè)”),也必須以事實(shí)的形式存儲(chǔ)在事實(shí)表中。

        在OLAP AW中查看“生產(chǎn)法生產(chǎn)總值”的數(shù)據(jù),其結(jié)果如

        3結(jié)束語

        在數(shù)據(jù)倉庫中層次建模主要依靠維表和事實(shí)表中與維對(duì)應(yīng)列存儲(chǔ)的數(shù)據(jù)共同實(shí)現(xiàn)維的層次結(jié)構(gòu)和層次邏輯,在層次建模中需格外注意它們之間的關(guān)系。數(shù)據(jù)聚集事實(shí)表對(duì)應(yīng)列只能存儲(chǔ)層次樹中葉子結(jié)點(diǎn)的標(biāo)識(shí),非聚集則存儲(chǔ)的可以是層次樹中整個(gè)結(jié)點(diǎn)的標(biāo)識(shí)。

        在數(shù)據(jù)倉庫星型模型和雪花模型中是維表與事實(shí)表建立關(guān)系;在OLAP星型模型和雪花模型中是OLAP維與CUBE建立關(guān)系,OLAP維又與數(shù)據(jù)倉庫中對(duì)應(yīng)的維表建立映射,CUBE又與數(shù)據(jù)倉庫中對(duì)應(yīng)的事實(shí)表建立映射。數(shù)據(jù)倉庫中的雪花模型對(duì)于正常層次適用,對(duì)于非正常層次需改造維表;OLAP雪花模型功能則更為強(qiáng)大和靈活,可以直接處理非正常層次。數(shù)據(jù)倉庫中的維表和事實(shí)表是OLAP的基礎(chǔ),數(shù)據(jù)倉庫中維表的設(shè)計(jì)直接影響到OLAP的展現(xiàn)的方式與正確性,實(shí)際建模過程中應(yīng)盡量考慮利用OLAP星型和雪花模型的優(yōu)勢(shì),使數(shù)據(jù)展現(xiàn)分析更清晰、更符合業(yè)務(wù)層次。

        另外,雖然雪花模型相對(duì)星型模型增加了處理表的數(shù)量,增加了查詢的復(fù)雜度,降低了部分性能,但其有效處理非齊整層次、非平衡層次和其混合層次的能力,在政府DSS實(shí)施中發(fā)揮了不可替代的作用。

        (注:本文中所涉及到的圖表、注解、公式等內(nèi)容請(qǐng)以PDF格式閱讀原文。)

        午夜亚洲www湿好大| 漂亮人妻洗澡被公强 日日躁| 好吊妞无缓冲视频观看| 成人免费视频在线观看| 成人国产精品高清在线观看| 国产愉拍91九色国产愉拍| 亚洲精品国精品久久99热| 亚洲精品国偷自产在线99正片| 在线亚洲AV成人无码一区小说| 国产农村妇女毛片精品久久麻豆| 久久久久亚洲精品无码系列| 国产精品无码a∨精品影院| 国产va精品免费观看| 国产高清在线精品一区不卡| 亚洲自偷精品视频自拍| 亚洲av无码av制服丝袜在线 | 最爽无遮挡行房视频| 欧美日韩另类视频| 91精品国产色综合久久不| 激情五月婷婷一区二区| 国产无人区码一码二码三mba| 国产高清吃奶成免费视频网站| 天堂精品人妻一卡二卡| 欧洲成人一区二区三区| 免费观看又污又黄的网站| 亚洲AV手机专区久久精品| 久久综合另类激情人妖| 国产又爽又黄又刺激的视频| 亚洲综合欧美在线| 日韩激情av不卡在线| 天天摸天天做天天爽水多| 在线播放亚洲第一字幕| 人妻爽综合网| 最好看的亚洲中文字幕| 男人j进女人j啪啪无遮挡| 野外三级国产在线观看| 日韩av一区二区不卡在线| av狠狠色丁香婷婷综合久久| 久青草国产视频| 亚洲大片一区二区三区四区| 日韩内射美女片在线观看网站|