胡輝,胡松,蔡昭權(quán),盛杰,劉江林,雷莉
(1.惠州學(xué)院,惠州 516007;2.惠州市疊維科技有限公司,惠州 516001;3.廣東科學(xué)技術(shù)職業(yè)學(xué)院,珠?!?19090)
一種基于節(jié)點容器的多源異構(gòu)技術(shù)
胡輝1,胡松1,蔡昭權(quán)1,盛杰2,劉江林2,雷莉3
(1.惠州學(xué)院,惠州516007;2.惠州市疊維科技有限公司,惠州516001;3.廣東科學(xué)技術(shù)職業(yè)學(xué)院,珠海519090)
過去大量企業(yè)得益于計算機技術(shù),建立各種各樣的業(yè)務(wù)系統(tǒng)以提高企業(yè)的工作效率和業(yè)務(wù)水平,然而這些各自為政的業(yè)務(wù)系統(tǒng)在今天顯然已經(jīng)不再適應(yīng)大數(shù)據(jù)時代的發(fā)展,在融合這些業(yè)務(wù)系統(tǒng)的時候均遇到歷史數(shù)據(jù)重構(gòu)的問題。提出一種基于節(jié)點容器的多源異構(gòu)數(shù)據(jù)庫技術(shù),解決不同數(shù)據(jù)庫數(shù)據(jù)在融合過程中出現(xiàn)的結(jié)構(gòu)性差異帶來的障礙。關(guān)鍵詞:
在過去,許多企業(yè)認(rèn)識到計算機技術(shù)能夠帶動自身的能動性,提高企業(yè)整體的工作效率和業(yè)務(wù)水平,于是大量的業(yè)務(wù)系統(tǒng)被開發(fā)出來,以滿足當(dāng)時的企業(yè)需求。然而由于當(dāng)時的計算機技術(shù)尚未成熟,在應(yīng)用系統(tǒng)方面,少有具有前瞻性的設(shè)計,從而導(dǎo)致了大量的業(yè)務(wù)系統(tǒng)僅僅能滿足一時的需求,具有極大的局限性和極低的拓展性[1]。而計算機技術(shù)的飛速發(fā)展使得原有的業(yè)務(wù)系統(tǒng)不愿被繼續(xù)維護(hù),企業(yè)迫切的期待新技術(shù)帶來更靈活更優(yōu)于企業(yè)發(fā)展的業(yè)務(wù)平臺。不同業(yè)務(wù)系統(tǒng)攜帶的不同數(shù)據(jù)庫數(shù)據(jù)的結(jié)構(gòu)性差異就對數(shù)據(jù)的整合和重構(gòu)帶來了極大的障礙[2]。
本文提出了一種基于節(jié)點容器的多源異構(gòu)數(shù)據(jù)庫技術(shù),通過將數(shù)據(jù)集成結(jié)構(gòu)以節(jié)點容器的結(jié)構(gòu)進(jìn)行存儲,將多個單源同構(gòu)節(jié)點容器轉(zhuǎn)化成多源異構(gòu)節(jié)點容器,從而實現(xiàn)了不同數(shù)據(jù)集成結(jié)構(gòu)的數(shù)據(jù)整合和重構(gòu)。
美國的計算機高級信息技術(shù)公司開發(fā)了一款名為MULTIBASE的聯(lián)邦數(shù)據(jù)庫,通過視圖定義描述局部模式和全局模式,使得位置透明性對于用戶而言更為完全,但這僅僅只是一個原型系統(tǒng)。而為了處理大規(guī)模的異構(gòu)多媒體信息,IBM公司的Almaden研究中心提出了一個名為Garlic[3]的項目,通過中間件式的查詢處理器,利用數(shù)據(jù)庫查詢優(yōu)化技術(shù)提高查詢效率,進(jìn)而提高相關(guān)聯(lián)的不同數(shù)據(jù)庫的搜索能力。Stanford大學(xué)也開發(fā)了一個異構(gòu)信息源集成系統(tǒng)——TSIMMIS[4],通過自描述的形式為數(shù)據(jù)打上標(biāo)簽,形成標(biāo)簽樹后轉(zhuǎn)化為OEM(Object Exchange Model)模型,使得來自異構(gòu)數(shù)據(jù)源的數(shù)據(jù)可以不受限制地被各自的對應(yīng)程序解讀,但非智能的人工編寫特定的OEM轉(zhuǎn)換程序使得工作量大增。Standford大學(xué)的另一個數(shù)據(jù)庫管理信息系統(tǒng)Lore同樣采用OEM數(shù)據(jù)模型,但引入了XML處理模塊。而采用XML作為統(tǒng)一數(shù)據(jù)交換標(biāo)準(zhǔn)的數(shù)據(jù)集成平臺是BEA公司開發(fā)的Liquid Data[5],允許用戶手動定制數(shù)據(jù)轉(zhuǎn)換及整合的規(guī)則,可抽取和過濾來自多個不同應(yīng)用系統(tǒng)的數(shù)據(jù)信息。
在國內(nèi),北京大學(xué)基于XML開發(fā)了一個名為CoXML[6]的數(shù)據(jù)集成系統(tǒng),使得國產(chǎn)的DBMS可以與國外主流的DBMS通過XML標(biāo)準(zhǔn)共享異構(gòu)數(shù)據(jù),但XML DTD在一定程度上限制了數(shù)據(jù)的表述能力。北京理工大學(xué)開發(fā)的UUHDB通過采用全局查詢語言,實現(xiàn)了異構(gòu)數(shù)據(jù)庫關(guān)聯(lián)互通,但未經(jīng)優(yōu)化的查詢技術(shù)效率較低。而西北工業(yè)大學(xué)也在XML和RDB及其中間件方面做了一些研究。
目前主流市場上普遍使用的數(shù)據(jù)庫大多為關(guān)系型數(shù)據(jù)庫,其明顯的特征就是以大量的表結(jié)構(gòu)來設(shè)定數(shù)據(jù)間的關(guān)系,以表與表之間的關(guān)聯(lián)和索引來構(gòu)成一個完整的數(shù)據(jù)庫,這就需要解釋一下單源同構(gòu)的概念了。
傳統(tǒng)意見上典型的、狹義的節(jié)點容器,除了根節(jié)點以外,所有的節(jié)點都只能有一個父節(jié)點,我們稱之為單源同構(gòu)節(jié)點容器。同時,同一個父節(jié)點下若干多個子節(jié)點,一般是無序,即節(jié)點與節(jié)點之間沒有順序要求,如圖1所示。
圖1 單源同構(gòu)示意圖
從圖1可以看出,每個節(jié)點可以有多個子節(jié)點,但只能有一個父節(jié)點,同時,情形1與情形2在功能上,是完全一致的。在數(shù)據(jù)存儲上,也是典型的節(jié)點容器結(jié)構(gòu)存儲方法,兩種情形并無不同。其中單源同構(gòu)無序節(jié)點容器的典型應(yīng)用就是傳統(tǒng)職能型組織架構(gòu)圖等。
然而在實際的應(yīng)用中,子節(jié)點之前的排序是有意義的,這需要用到有序節(jié)點容器,將同一父節(jié)點下的子節(jié)點用序號排序,或用指針定義方向,如圖2所示。
圖2 單源同構(gòu)有序圖
從圖2可以看出,對于課程計劃,其節(jié)點容器的節(jié)點之間順序很重要,情形1是符合實際使用需要的,而情形2是不符合實際情況。有序節(jié)點容器反映了實際的應(yīng)用過程中對順序的需要。典型應(yīng)用是與計劃有關(guān)、章節(jié)有關(guān)的用途,例如一本書的存儲,其章節(jié)是以順序的方式展開的,所以存儲的時候,要以有序節(jié)點容器的方式存儲。還有例如各類規(guī)章、制度,其存儲章節(jié)條款都有順序的,均可以有序權(quán)的形式存儲。
基于多態(tài)自由擴展的理念,將數(shù)據(jù)庫中的數(shù)據(jù)集結(jié)構(gòu)抽象成節(jié)點容器,容器中包含了容器的結(jié)構(gòu)定義以及數(shù)據(jù),那么數(shù)據(jù)庫就相當(dāng)于一座森林一樣的子集庫,每一個節(jié)點容器就是一個子集,一個數(shù)據(jù)環(huán)境中擁有一個或多個子集,其實就是在森林下面還有很多節(jié)點容器林,這些節(jié)點容器林擁有很多具體的節(jié)點容器。
多源異構(gòu)節(jié)點容器,就是除根節(jié)點及一級子節(jié)點以外,每個節(jié)點都必須有一父一母兩個節(jié)點。多源異構(gòu)節(jié)點容器又可分為多源異構(gòu)無序節(jié)點容器,多源異構(gòu)有序節(jié)點容器。多源異構(gòu)節(jié)點容器,可以應(yīng)用在例如矩陣式組織架構(gòu)圖的存儲與使用中,而多源異構(gòu)節(jié)點容器,可以應(yīng)用在二維數(shù)據(jù)集成的存儲與使用中。一般多源異構(gòu)節(jié)點容器的典型應(yīng)用如圖3所示。
從圖3可以看出,矩陣式組織架構(gòu)圖中,有些部門同時屬于兩個上級部門,有些部門只屬于一個上級部門。矩陣式組織架構(gòu)圖,一般表述為一條X軸,一條Y軸,X與Y軸構(gòu)成90度的關(guān)系??梢砸曋活wX橫向的節(jié)點容器,一顆Y縱向的節(jié)點容器,只是節(jié)點容器X節(jié)點容器與Y節(jié)點容器之間共用一些葉子節(jié)點。我們?nèi)绻麑,Y軸變成一條180度的直線,其實就是把X節(jié)點容器與Y節(jié)點容器合并成同一顆節(jié)點容器,其表達(dá)存儲的本質(zhì)上是一樣的,只是表述形式不同,如下步驟所示:
第一步:以X集團(tuán)為原點,向上下抽離,分離X,Y節(jié)點容器,如圖4所示:
圖3 一般多源異構(gòu)數(shù)據(jù)集成圖
圖4 多源異構(gòu)轉(zhuǎn)換分解圖一
第二步:將抽離到X節(jié)點容器區(qū)域的部分向X軸方向旋轉(zhuǎn)90度,將虛線框與對應(yīng)實線框合并,保持所有連線,如圖5所示:
圖5 多源異構(gòu)轉(zhuǎn)換分解圖二
第三步,將X節(jié)點容器,Y節(jié)點容器合并為一個節(jié)點容器,以X集團(tuán)為根結(jié)點重新整理,如圖6所示:
圖6 多源異構(gòu)轉(zhuǎn)換分解圖三
多源異構(gòu)無序節(jié)點容器中,節(jié)點之間對順序沒有要求,而多源異構(gòu)有序節(jié)點容器中,所有節(jié)點都有順序要求,通過后繼節(jié)點與前繼節(jié)點指針實現(xiàn)。上述多源異構(gòu)轉(zhuǎn)換結(jié)果可抽象成圖7。
通過國內(nèi)外對于多源異構(gòu)數(shù)據(jù)的整合與重構(gòu)的研究以及單源同構(gòu)概念的研究和引申,提出了一種基于節(jié)點容器的多源異構(gòu)技術(shù)思路。本文提出了一種基于節(jié)點容器的多源異構(gòu)技術(shù),通過將數(shù)據(jù)集成結(jié)構(gòu)以節(jié)點容器的結(jié)構(gòu)進(jìn)行存儲,將多個單源同構(gòu)節(jié)點容器轉(zhuǎn)化成多源異構(gòu)節(jié)點容器,解決了不同數(shù)據(jù)庫數(shù)據(jù)在融合過程中出現(xiàn)的結(jié)構(gòu)性差異帶來的障礙性問題,從而實現(xiàn)了不同數(shù)據(jù)集成結(jié)構(gòu)的數(shù)據(jù)整合和重構(gòu)。
圖7 多源異構(gòu)轉(zhuǎn)換抽象圖
[1]涂炎欽.海南省國土資源業(yè)務(wù)系統(tǒng)統(tǒng)一組織架構(gòu)研究[J].國土資源信息化,2015,05:15-17+9.
[2]孟浩華,匡堯.電力企業(yè)信息系統(tǒng)數(shù)據(jù)庫優(yōu)化整合研究與實踐[J].電力信息化,2013,04:74-77.
[3]Haas L M,Kossmann D,Wimmers E L,et al.Optimizing Queries Across Diverse Data Sources[C].VLDB 97:International Conference on Very Large Data Bases.2001:276-285.
[4]Bergamaschi S.Extraction of Informations From Highly Heterogeneous Source of Textual Data[J].Lecture Notes in Computer Science,2010,1202:42-63.
[5]Carey M J.BEA Liquid Data for WebLogic:XML-Based Enterprise Information Integration[J].Mccarthy,2004:800-803.
[6]Liu S,Chu W W.CoXML:A Cooperative XML Query Answering System[C].Advances in Data and Web Management,Joint,Asia-Pacific Web Conference,APWEB 2007,and,International Conference,on Web-Age Information Management,WAIM 2007,Huang Shan,China,June 16-18,2007,Proceedings.2007:614-621.
Multi-Source Heterogeneous Technology Based on Nodes Container
HU Hui1,HU Song1,CAI Zhao-quan1,SHENG Jie2,LIU Jiang-lin2,LEI Li3
(1.Huizhou University,Huizhou 516007;2.Huizhou Diewei Technology Ltd.,Huizhou 516001;3.Guangdong Institute of Science and Technology,Zhuhai 519090)
Thanks to computer technology in the past a large number of enterprises,the establishment of various business systems to improve business efficiency and operational level,however,these fragmented business systems today is clearly no longer meet the development of big data era,in which integration when business systems are experiencing historical reconstruction.Proposes the multi-source heterogeneous database technology based on node container to address the structural barriers to differences appear in the database data fusion process brings.
Node Container;Data Reconstruction;Multi-Source Heterogeneous Database
廣東省教科規(guī)劃項目(No.11JXZ012、No.14JXN065)、廣東省自然科學(xué)基金項目(No.S2013010013432、No.S20130100 15940)、廣東省教育廳項目(No.2013LYM00874)、廣東省高校優(yōu)秀青年創(chuàng)新人才培養(yǎng)計劃資助項目(No.2013LYM_ 0087)、惠州市科技計劃項目(No.2013B020015008、No.2014B020004026、No.2014B050013016、No.2014B020004023)、肇慶市科技計劃目(No.2015B010902009)
1007-1423(2016)26-0032-04DOI:10.3969/j.issn.1007-1423.2016.26.008
胡輝(1979-),女,江蘇鹽城人,碩士,講師,研究方向為計算機軟件
2016-06-24
2016-09-05
節(jié)點容器;數(shù)據(jù)重構(gòu);多源異構(gòu)數(shù)據(jù)庫