国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于前綴編碼的模型映射改進(jìn)方法研究

2009-03-02 09:33:14孫天翔
新媒體研究 2009年2期
關(guān)鍵詞:關(guān)系數(shù)據(jù)庫(kù)

孫天翔

[摘要]提出基于前綴編碼的模型映射改進(jìn)方法,實(shí)現(xiàn)XML半結(jié)構(gòu)化數(shù)據(jù)到關(guān)系數(shù)據(jù)庫(kù)的映射,從而為將半結(jié)構(gòu)化數(shù)據(jù)管理轉(zhuǎn)化為傳統(tǒng)關(guān)系數(shù)據(jù)庫(kù)管理奠定基礎(chǔ)。

[關(guān)鍵詞]半結(jié)構(gòu)化數(shù)據(jù) 關(guān)系數(shù)據(jù)庫(kù) XML 前綴編碼

中圖分類號(hào):TP3 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1671-7597(2009)0120057-01

一、引言

互聯(lián)網(wǎng)上存在著各種形式的數(shù)據(jù),其數(shù)據(jù)結(jié)構(gòu)的組織方式也各不相同,因此,半結(jié)構(gòu)化數(shù)據(jù)模型應(yīng)運(yùn)而生,其無(wú)模式及自描述的特點(diǎn)適宜于描述網(wǎng)上數(shù)據(jù)。但傳統(tǒng)的數(shù)據(jù)庫(kù)管理系統(tǒng)主要用于管理結(jié)構(gòu)化的數(shù)據(jù),半結(jié)構(gòu)化數(shù)據(jù)與傳統(tǒng)的數(shù)據(jù)庫(kù)管理系統(tǒng)的模式有很大不同。如何對(duì)半結(jié)構(gòu)化數(shù)據(jù)實(shí)施有效的管理成為新的研究領(lǐng)域。

二、半結(jié)構(gòu)化數(shù)據(jù)的描述

(一)XML半結(jié)構(gòu)數(shù)據(jù)

Internet的發(fā)展使XML成為互聯(lián)網(wǎng)上數(shù)據(jù)交換或數(shù)據(jù)瀏覽的轉(zhuǎn)換媒介,XML數(shù)據(jù)屬于半結(jié)構(gòu)數(shù)據(jù)模型。專用的半結(jié)構(gòu)化數(shù)據(jù)管理系統(tǒng)目前仍處于初步實(shí)驗(yàn)階段。但是可行的方法是將半結(jié)構(gòu)化數(shù)據(jù)轉(zhuǎn)化為結(jié)構(gòu)化數(shù)據(jù),采用關(guān)系數(shù)據(jù)庫(kù)對(duì)XML數(shù)據(jù)進(jìn)行存儲(chǔ)和操作。這樣才有可能把Web上海量的半結(jié)構(gòu)化信息結(jié)構(gòu)化,進(jìn)行統(tǒng)一的管理、控制和操作。

(二)半結(jié)構(gòu)化數(shù)據(jù)的描述

目前對(duì)半結(jié)構(gòu)化數(shù)據(jù)的自動(dòng)抽取、數(shù)據(jù)模型、查詢語(yǔ)言等一種常見的描述方法的模型是OEM模型[1]。OEM模型由表示對(duì)象的結(jié)點(diǎn)和帶標(biāo)簽的有向邊構(gòu)成的圖。在OEM模型中所有的實(shí)體均為對(duì)象,每個(gè)對(duì)象用一個(gè)四元組來(lái)表示:(ID,LBL, type, value)。其中LBL是對(duì)象的標(biāo)簽描述,type是對(duì)象類型。OEM模型可以用一個(gè)帶根有向圖G(r,V,E)來(lái)表示,其中r表示根節(jié)點(diǎn);V表示對(duì)象集;E是有向邊的集合,邊上的標(biāo)簽表示對(duì)象之間的關(guān)系,記作,他表示對(duì)象I通過標(biāo)簽為L(zhǎng)的邊指向另一個(gè)對(duì)象J。每一個(gè)圖都有一個(gè)對(duì)應(yīng)的存儲(chǔ)表示方法,鄰接矩陣和鄰接表是圖的兩種最常用的存儲(chǔ)結(jié)構(gòu)。OEM模型是一個(gè)有向圖,于是就可以采用有向圖的存儲(chǔ)表示方法來(lái)表示OEM模型。

三、XML半結(jié)構(gòu)化數(shù)據(jù)到關(guān)系數(shù)據(jù)庫(kù)的映射

隨著XML技術(shù)的出現(xiàn)和對(duì)XML技術(shù)的深入研究,半結(jié)構(gòu)化數(shù)據(jù)和XML數(shù)據(jù)模型之間的對(duì)應(yīng)關(guān)系越來(lái)越明顯,因而把XML數(shù)據(jù)到關(guān)系數(shù)據(jù)庫(kù)的映射為是至關(guān)重要的一步。

(一)XML文檔編碼

XML文檔可以被描述為樹模型,文檔中的元素、屬性和值對(duì)應(yīng)于樹模型中的結(jié)點(diǎn),其中屬性用@前綴區(qū)別,文檔中元素與元素、元素與結(jié)點(diǎn)以及元素與值對(duì)應(yīng)于樹模型中的邊。

將XML文檔映射為關(guān)系模式存儲(chǔ),可以通過對(duì)XML文檔樹的結(jié)點(diǎn)進(jìn)行編碼,通過編碼直接判斷結(jié)點(diǎn)之間的結(jié)構(gòu)關(guān)系。編碼方案主要有以下幾種:位向量編碼、區(qū)間編碼、前綴編碼和哈夫曼編碼等。前綴編碼也稱Dewey編碼[2]。前綴編碼直接將一個(gè)結(jié)點(diǎn)的雙親結(jié)點(diǎn)的編碼作為該結(jié)點(diǎn)編碼的前綴,這種編碼方案保存了文檔的結(jié)構(gòu)信息。對(duì)于前綴編碼,要判斷一個(gè)結(jié)點(diǎn)v是否是另一個(gè)結(jié)點(diǎn)u的后裔,只需判斷字符串c(u)的前綴是否是c(v)的前綴。前綴編碼的一個(gè)重要性質(zhì)是它們的字典有序:以結(jié)點(diǎn)r為根的子樹中的任意一個(gè)結(jié)點(diǎn)u,它的前綴編碼c(u)大于(小于)它的左兄弟子樹(右兄弟子樹)中所有結(jié)點(diǎn)的前綴編碼。因此,前綴編碼不僅能夠有效的支持包含關(guān)系的計(jì)算,而且能夠有效地支持文檔位置的計(jì)算。本文在采用了Dewey編碼的基礎(chǔ)上,對(duì)XML文檔進(jìn)行關(guān)系模式存儲(chǔ)。對(duì)XML文檔樹從根結(jié)點(diǎn)以0開始編碼,作為第一層次的結(jié)點(diǎn);第二層次的結(jié)點(diǎn)編碼從00,01,02……開始,依次遞增;同理,第三層次的結(jié)點(diǎn)編碼從000,001,002,003……開始,依次遞增,依次類推。但是有一點(diǎn)需要我們注意,如果XML文檔樹的度不超過10,我們可以從0到9數(shù)字進(jìn)行擴(kuò)充,如果XML文檔樹的度超過10則可以用a,b,c等字母依次排列進(jìn)行編碼。

(二)XML文檔存儲(chǔ)結(jié)構(gòu)

對(duì)XML文檔樹編碼工作完成之后,設(shè)計(jì)若干關(guān)系來(lái)存儲(chǔ)XML文檔樹中的結(jié)點(diǎn)信息、結(jié)點(diǎn)值信息和結(jié)構(gòu)信息。本文使用三個(gè)表來(lái)存儲(chǔ)XML文檔,存儲(chǔ)XML文檔的關(guān)系存儲(chǔ)模式如下所示:

Document (DocID, XMLDoc)

Code_Path (DocID, Code, Pathexp)

Element (DocID, Code, Element, flag, value)

其中,Document表用來(lái)存儲(chǔ)XML文檔信息,DocID為XML文檔的代碼,XMLDoc為XML文檔的保存路徑;在Code_Path表中,Code為各結(jié)點(diǎn)對(duì)應(yīng)的編碼,Pathexp為采用路徑方式表達(dá)的結(jié)點(diǎn)位置;在Element表中,Element為結(jié)點(diǎn)的元素名或者是屬性名,flag為結(jié)點(diǎn)元素的類型,結(jié)點(diǎn)類型分為葉結(jié)點(diǎn)和非葉子結(jié)點(diǎn),葉子結(jié)點(diǎn)類型分別為integer, decimal, string等,但此處在這個(gè)模式映射方法中,論文用0和1來(lái)區(qū)分,也就是說,如果為葉子結(jié)點(diǎn)則為0,否則為1;value為葉子結(jié)點(diǎn)對(duì)應(yīng)的值,如果為非葉子結(jié)點(diǎn)的話,則該值為空。

(三)XML查詢

基于關(guān)系存儲(chǔ)的XML查詢最終都要將XML查詢轉(zhuǎn)化為SQL查詢,并將SQL查詢得到的平坦表形式的結(jié)果再轉(zhuǎn)化為XML文檔返回給用戶或應(yīng)用。但是XML查詢語(yǔ)言比SQL要復(fù)雜得多,它們一般通過路徑表達(dá)式來(lái)對(duì)XML文檔中的嵌套結(jié)構(gòu)進(jìn)行查詢,而且路徑表達(dá)式中可以包含各種查詢軸和謂詞,謂詞中又可以包含路徑表達(dá)式、操作符和函數(shù)等。轉(zhuǎn)換XML查詢?yōu)镾QL查詢對(duì)于基于關(guān)系的XML數(shù)據(jù)庫(kù)的發(fā)展前途起到?jīng)Q定性的作用。

XPath是一個(gè)XML查詢語(yǔ)言,它用來(lái)描述在一個(gè)XML文檔樹中的查詢導(dǎo)航。

XML查詢的核心是XPath路徑表達(dá)式查詢。XPath是文檔之內(nèi)進(jìn)行信息尋址的一種方法,目的在于自動(dòng)化搜索操作,方便編程用戶訪問信息。XML查詢按照復(fù)雜程度分為3類[3]:

簡(jiǎn)單查詢:只含有父子關(guān)系或祖先子孫關(guān)系的路徑查詢;分支查詢:帶有分支謂詞的路徑查詢;帶通配符的查詢:包含通配符的路徑查詢。

四、小結(jié)

本文結(jié)合現(xiàn)有的OEM模型,通過對(duì)OEM模型圖的遍歷,把OEM模型所對(duì)應(yīng)的圖結(jié)構(gòu)轉(zhuǎn)換為相應(yīng)的XML文檔,生成XML數(shù)據(jù),實(shí)現(xiàn)半結(jié)構(gòu)化數(shù)據(jù)向XML文檔的映射。基于所生成的XML文檔,通過分析XML文檔和數(shù)據(jù)庫(kù)技術(shù)的相互映射方法,采用一種基于前綴編碼的模型映射方法,實(shí)現(xiàn)XML數(shù)據(jù)和數(shù)據(jù)庫(kù)的映射。

參考文獻(xiàn):

[1]蒙德龍等.半結(jié)構(gòu)化數(shù)據(jù)的模式抽取[J].計(jì)算機(jī)工程與應(yīng)用,2006(27):16

2-165.

[2]魯明羽等.基于OEM模型的半結(jié)構(gòu)化數(shù)據(jù)的模式抽取[J].清華大學(xué)學(xué)報(bào)(自然科學(xué)版),2004年第44卷第9期:1264-1267.

[3]吳共慶等.一種基于XML的半結(jié)構(gòu)化數(shù)據(jù)存儲(chǔ)方法[J].計(jì)算機(jī)工程,2004年5月第30卷第10期:57-59.

猜你喜歡
關(guān)系數(shù)據(jù)庫(kù)
關(guān)系數(shù)據(jù)庫(kù)在高爐數(shù)據(jù)采集系統(tǒng)中的應(yīng)用
山東冶金(2022年2期)2022-08-08 01:51:30
關(guān)系數(shù)據(jù)庫(kù)技術(shù)在計(jì)算機(jī)網(wǎng)絡(luò)設(shè)計(jì)中的應(yīng)用
計(jì)算機(jī)網(wǎng)絡(luò)設(shè)計(jì)中關(guān)系數(shù)據(jù)庫(kù)技術(shù)的應(yīng)用
基于索引結(jié)構(gòu)的關(guān)系數(shù)據(jù)庫(kù)關(guān)鍵詞檢索
一種基于數(shù)據(jù)圖劃分的關(guān)系數(shù)據(jù)庫(kù)關(guān)鍵詞檢索方法
基于用戶反饋的關(guān)系數(shù)據(jù)庫(kù)關(guān)鍵字查詢系統(tǒng)
长海县| 霞浦县| 织金县| 凤冈县| 沁源县| 连山| 宽城| 黎平县| 勃利县| 万州区| 牙克石市| 三亚市| 青岛市| 福海县| 姜堰市| 莱阳市| 福贡县| 彰化市| 海安县| 澄迈县| 肥东县| 高邑县| 洛浦县| 海南省| 丘北县| 舟山市| 尼勒克县| 恩施市| 景德镇市| 永年县| 光山县| 陈巴尔虎旗| 海晏县| 内乡县| 双流县| 朔州市| 新蔡县| 炉霍县| 临泉县| 新建县| 杭州市|