欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種xml關(guān)鍵字查詢方法

文檔序號(hào):6376860閱讀:187來源:國知局
專利名稱:一種xml關(guān)鍵字查詢方法
技術(shù)領(lǐng)域
本發(fā)明涉及信息領(lǐng)域,尤其涉及ー種XML關(guān)鍵字查詢方法。
背景技術(shù)
隨著越來越多的Web應(yīng)用,如電子商務(wù)、電子政務(wù)與各種數(shù)字化資源等等,使得XML技術(shù)在Web應(yīng)用中起著舉足輕重的作用,也使得XML標(biāo)準(zhǔn)逐漸成為當(dāng)前主流的數(shù)據(jù)格式,主要有數(shù)據(jù)表示、數(shù)據(jù)存儲(chǔ)和數(shù)據(jù)交換。因此,如何高效地管理大量XML文檔成為當(dāng)前數(shù)據(jù)庫領(lǐng)域研究的熱點(diǎn)。當(dāng)XML格式的數(shù)據(jù)成為主流數(shù)據(jù)后,如何高效的從XML文檔中獲取用戶感興趣的信息成為眾多研究機(jī)構(gòu)和學(xué)者關(guān)注的問題。因此,XML查詢技術(shù)根據(jù)其查詢模式的不同,可分為=XML結(jié)構(gòu)化查詢和XML關(guān)鍵字查詢。
對于XML結(jié)構(gòu)化查詢而言,首先,用戶需要憑借查詢描述語言來描述對自己感興趣的內(nèi)容;其次,將用戶的查詢語句提交XML數(shù)據(jù)庫系統(tǒng);最后,XML數(shù)據(jù)庫系統(tǒng)需要根據(jù)用戶提交的查詢語句返回與查詢語句相匹配的結(jié)果給用戶。因?yàn)榻Y(jié)構(gòu)化查詢通常采用的是正則路徑表達(dá)式的形式,所以其最主要的優(yōu)點(diǎn)就是可以獲得更精確的查詢結(jié)果。但是XML結(jié)構(gòu)化查詢也存在著以下兩點(diǎn)缺陷。(I)需要普通用戶必須學(xué)習(xí)相關(guān)的查詢語言。(2)需要普通用戶了解所要查詢的。XML文檔的數(shù)據(jù)組織形式由于XML結(jié)構(gòu)化查詢存在著以上缺陷,使得XML結(jié)構(gòu)化查詢不能被絕大多數(shù)的普通用戶選擇使用。因此,更為方便的XML關(guān)鍵字查詢也隨之成為信息檢索領(lǐng)域的研究熱點(diǎn)。對于XML關(guān)鍵字查詢而言,首先,針對用戶感興趣的內(nèi)容,用戶只需要憑借若干個(gè)關(guān)鍵字來進(jìn)行描述;其次,將用戶的關(guān)鍵字提交給XML數(shù)據(jù)處理系統(tǒng)進(jìn)行處理;最后,XML數(shù)據(jù)處理系統(tǒng)會(huì)返回與用戶提交的關(guān)鍵字相匹配的結(jié)果給用戶。因此,對普通用戶來說,XML關(guān)鍵字查詢是一種極為方便的查詢模式。但是,XML關(guān)鍵字查詢也存在著明顯的缺陷,由于XML文檔具有半結(jié)構(gòu)化、自描述性等特點(diǎn),使得XML關(guān)鍵字查詢通常返回的不是整個(gè)XML文檔,而是包含全部關(guān)鍵字的XML文檔片段。如果更深層次的節(jié)點(diǎn)包含關(guān)鍵字信息,那么需要考慮更多的上下文信息。因此,XML關(guān)鍵字查詢返回的結(jié)果中通常含有大量的無關(guān)信息。然而,與傳統(tǒng)的信息檢索技術(shù)相比,雖然XML關(guān)鍵字查詢技術(shù)和傳統(tǒng)的信息檢索技術(shù)都是提交若干個(gè)查詢關(guān)鍵字,但是其查詢結(jié)果往往是不同的。隨著XML關(guān)鍵字查詢技術(shù)在現(xiàn)實(shí)生活中的廣泛應(yīng)用,如何有效的獲取滿足所有關(guān)鍵字組合語義的XML文檔片段成為XML關(guān)鍵字查詢的關(guān)鍵問題。

發(fā)明內(nèi)容
基于上述問題,本發(fā)明提出ー種具有查詢高效性的XML關(guān)鍵字查詢方法。本發(fā)明的ー個(gè)目的是提供ー種XML關(guān)鍵字查詢方法,其特征在于包括步驟
首先,根據(jù)用戶輸入的關(guān)鍵字獲得所有關(guān)鍵字的倒排表;其次,通過掃描關(guān)鍵字倒排表并根據(jù)快速分組方法進(jìn)行分組,因此根據(jù)不同的分組構(gòu)建的子樹自然也就滿足以SLCA為根節(jié)點(diǎn),且包含全部關(guān)鍵字;
最后,對每個(gè)分組構(gòu)建路徑子樹,進(jìn)而對路徑子樹根據(jù)單調(diào)性和一致性約束過濾冗余信息得到最終的查詢結(jié)果,即匹配子樹。本發(fā)明的另一方面進(jìn)ー步包括,解析XML文檔時(shí),首先在每個(gè)編碼的尾部附加ー個(gè)路徑ID用于標(biāo)識(shí)其路徑;其次構(gòu)建關(guān)鍵字倒排表 ,將與每個(gè)關(guān)鍵字相匹配的所有節(jié)點(diǎn)組織在一起,并根據(jù)Dewey編碼從小到大的順序進(jìn)行排序;最后,構(gòu)建從根節(jié)點(diǎn)到每個(gè)值節(jié)點(diǎn)的路徑索引,通過Dewey編碼最后一位的路徑ID索引該節(jié)點(diǎn)在XML文檔中的全部路徑。本發(fā)明的另一方面進(jìn)ー步包括通過快速構(gòu)建分組集來構(gòu)建路徑子樹,進(jìn)而獲得全部的匹配子樹。


為了更清楚地說明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對實(shí)施例描述中所需要使用的附圖作簡單地介紹,顯而易見,下面描述中的附圖僅僅是本發(fā)明的部分實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其它附圖。圖I示出了 XML文檔查詢返回的完全子樹示意 圖2示出了 XML文檔查詢返回的路徑子樹示意圖。
具體實(shí)施例方式下面結(jié)合附圖來詳細(xì)地描述本發(fā)明的具體實(shí)施例。下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。在XML文檔樹D中,查詢Q的返回結(jié)果是D的子樹,每個(gè)子樹t對應(yīng)ー個(gè)分組group= (r, M),其中r為t的根節(jié)點(diǎn),M是由全部與Q中關(guān)鍵字相匹配的節(jié)點(diǎn)所構(gòu)成的集合。所有這樣的group構(gòu)成分組集,用groupSet(Q)表示。對于不同的group,可以構(gòu)建出不同的路徑子樹t。在圖I中,考慮查詢Ql={Grizzlies, Gasol, position},滿足該查詢的goupSet(Ql)=
{groupl},其中 groupl= (r, M)為r=team(0), M= {Grizzlies (0. 0), Gasol (0. I. 0. 0),position (0. I. 0. 2),
position (0. I. I. 2), position (0.1.2. 2)}。因此,可以根據(jù)該 groupl= (r, M)構(gòu)建路徑子樹,如圖2 a)所示??焖俜纸M是指掃描所有關(guān)鍵字倒排表計(jì)算SLCA節(jié)點(diǎn)時(shí),通過記錄不同關(guān)鍵字的Dewey編碼,直接求解分組集group= (r,M)的過程。在圖I中,考慮查詢Q2= {Gasol, position},Gasol的關(guān)鍵字倒排表為(0. I. 0. 0) position 的關(guān)鍵字倒排表為(0. I. 0. 2)、(0. I. I. 2)、(0. I. 2. 2)。在掃描倒排表過程中,節(jié)點(diǎn)(0. 1.0.0)和節(jié)點(diǎn)(0. 1.0.2)的最長公共前綴為(0.1.0),設(shè)groupl. r=(0. I. 0),并以節(jié)點(diǎn)(0.1.0)為祖先進(jìn)行分組,即依次向groupl. M中添加節(jié)點(diǎn)(0. I.0.0)、節(jié)點(diǎn)(0. 1.0.2);下ー個(gè)節(jié)點(diǎn)(0. 1.0. 0)和節(jié)點(diǎn)(0. I. 1.2)的最長公共前綴為(0.1),因?yàn)?0.1)為(0.1.0)的父節(jié)點(diǎn),所以排除(0.1)。當(dāng)?shù)古疟頀呙杞Y(jié)束,goupSet (Q2) = {groupl},其中,groupl. r= (0. I. 0),groupl. M= {(0. I. 0. 0), (0. I. 0. 2)}。因此,該查詢 Q 的 SLCASet= {(0. I. 0)}。從上例可以看出,采用快速分組策略,通過計(jì)算邊LCA,邊排除LCA祖先節(jié)點(diǎn)的方法得到所有的SLCA節(jié)點(diǎn),并以此構(gòu)建分組集。因此,快速分組能夠有效的減少掃描倒排表的次數(shù),從而減少整體的時(shí)間消耗。
本發(fā)明的一個(gè)實(shí)施例所提出的查詢方法,其所返回的匹配子樹是仍然是以SLCA為根節(jié)點(diǎn),并在去除冗余信息后滿足單調(diào)性和一致性的子樹。具體操作步驟是,首先,根據(jù)用戶輸入的關(guān)鍵字獲得所有關(guān)鍵字的倒排表;其次,通過掃描關(guān)鍵字倒排表并根據(jù)快速分組方法進(jìn)行分組,因此根據(jù)不同的分組構(gòu)建的子樹自然也就滿足以SLCA為根節(jié)點(diǎn),且包含全部關(guān)鍵字;最后,對每個(gè)分組構(gòu)建路徑子樹,進(jìn)而對路徑子樹根據(jù)單調(diào)性和一致性約束過濾冗余信息得到最終的查詢結(jié)果,即匹配子樹。為了提高關(guān)鍵字查詢處理的效率,在解析XML文檔時(shí),首先在每個(gè)編碼的尾部附加一個(gè)路徑ID用于標(biāo)識(shí)其路徑;其次構(gòu)建關(guān)鍵字倒排表,將與每個(gè)關(guān)鍵字相匹配的所有節(jié)點(diǎn)組織在一起,并根據(jù)Dewey編碼從小到大的順序進(jìn)行排序;最后,構(gòu)建從根節(jié)點(diǎn)到每個(gè)值節(jié)點(diǎn)的路徑索引,通過Dewey編碼最后一位的路徑ID索引該節(jié)點(diǎn)在XML文檔中的全部路徑。將Dewey編碼與路徑索引相結(jié)合的方式作為預(yù)處理方案具有以下2個(gè)重要的性質(zhì)。(I)根據(jù)編碼求出兩個(gè)元素之間的關(guān)系。(2)根據(jù)元素編碼可以直接得出元素標(biāo)簽以及祖先和后代標(biāo)簽。對于ー個(gè)給定XML文檔D和查詢Q= {kl,k2,…,km},本發(fā)明的一個(gè)實(shí)施例的方法主要是通過快速構(gòu)建分組集來構(gòu)建路徑子樹,進(jìn)而獲得全部的匹配子樹,具體實(shí)現(xiàn)過程主要分為3步
第I步對于給定查詢Q = kl, k2,,km},返回與關(guān)鍵字ki (I彡i彡m )相匹配的倒排表。我們使用Li表示關(guān)鍵字ki (I < i < m )的倒排表,并且每個(gè)Li有一個(gè)光標(biāo)Ci,用C[i] (I ^ i ^ m )表示。第2步掃描全部關(guān)鍵字倒排表構(gòu)建分組集groupSet,姆個(gè)group= {r, M}包含一個(gè)滿足SLCA語義的節(jié)點(diǎn)r和以節(jié)點(diǎn)r為祖先且全部與關(guān)鍵字相匹配的節(jié)點(diǎn)構(gòu)成的節(jié)點(diǎn)集M。首先,F(xiàn)astGroupes函數(shù)根據(jù)關(guān)鍵字倒排表L[l,,m]構(gòu)建group,根據(jù)光標(biāo)C[l,,m]指向的Dewey編碼計(jì)算最長公共前綴LCA,返回結(jié)果用Lca表示。其次,findMatch函數(shù)按以下三種情況構(gòu)建分組。第一種情況如果groupset中存在某一 group, r等于當(dāng)前Lca時(shí),則執(zhí)行Addnodes函數(shù)。Addnodes函數(shù)的主要功能為:將光標(biāo)C[l,…,m]指向的節(jié)點(diǎn)添加到該group. M分組中,然后將有后繼節(jié)點(diǎn)、且指向最小Dewey編碼的光標(biāo)后移一位。第二種情況如果groupset中存在某一 group, r為當(dāng)前Lca的祖先,貝U表示當(dāng)前Lca不滿足SLCA定義,不以當(dāng)前Lca為祖先進(jìn)行分組。第三種情況如果groupset中不存在某一 group, r為當(dāng)前Lca的祖先,則表示當(dāng)前Lca為SLCA節(jié)點(diǎn),然后以當(dāng)前Lca進(jìn)行分組。最后,依此類推,直到遍歷全部倒排表結(jié)束。因此,查詢Q的分組集為groupSet (Q) = {group [I],…,group [n]},其中,對于任意ー個(gè) group [i] (I ^ i ^ n),group[i].r滿足SLCA語義,group[i]. M中的節(jié)點(diǎn)滿足以SLCA為祖先節(jié)點(diǎn)或者父節(jié)點(diǎn),并且全部與關(guān)鍵字相匹配。第3步根據(jù)不同的group構(gòu)建路徑子樹,并對路徑子樹根據(jù)單調(diào)性和一致性約束進(jìn)行裁剪得到匹配子樹。對于任意一 group = Ir,M},可以表示為ー個(gè)路徑子樹t,其中,t是以r為根節(jié)點(diǎn),由從r到M中所有節(jié)點(diǎn)的路徑所構(gòu)成的子樹。因此,可以根據(jù)不同的group=Ir, M}構(gòu)建出不同的路徑子樹t。PruneMatches函數(shù)首先根據(jù)第2步求得的group構(gòu) 建路徑子樹t ;其次,先序遍歷路徑子樹t,然后根據(jù)文獻(xiàn)[26]的方法,通過從t中移除不滿足關(guān)鍵字包含條件的節(jié)點(diǎn)得到相應(yīng)的匹配子樹,即查詢結(jié)果。本發(fā)明的查詢方法不僅避免了 Stack算法根據(jù)Dewey編碼頻繁進(jìn)棧和出棧的操作,而且還避免了與查詢無關(guān)的節(jié)點(diǎn)標(biāo)簽的訪問;另外,該方法還可以通過一次掃描全部的關(guān)鍵字倒排表就能構(gòu)建滿足查詢的分組集,進(jìn)而有效的避免了重復(fù)掃描倒排表的問題。該方法可以減少頻繁索引節(jié)點(diǎn)名稱的時(shí)間開銷,進(jìn)ー步提高系統(tǒng)的查詢效率。需要說明的是,以上實(shí)施例僅是對本發(fā)明技術(shù)方案的示例性描述,而并不是對本發(fā)明的限制;盡管參照上面的實(shí)施例對本發(fā)明進(jìn)行了詳細(xì)的說明,但是,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)可以完全理解的是,在不脫離由本發(fā)明的權(quán)利要求書限定的保護(hù)范圍已經(jīng)精神的前提下,可以對上述實(shí)施例所記載的技術(shù)方案進(jìn)行修改或者對其中部分技術(shù)特征進(jìn)行等同替換,這些都應(yīng)該屬于本發(fā)明的保護(hù)范圍。
權(quán)利要求
1.ー種XML關(guān)鍵字查詢方法,其特征在于包括步驟 1)根據(jù)用戶輸入的關(guān)鍵字獲得所有關(guān)鍵字的倒排表; 2)通過掃描關(guān)鍵字倒排表并根據(jù)快速分組方法進(jìn)行分組,因此根據(jù)不同的分組構(gòu)建的子樹自然也就滿足以SLCA為根節(jié)點(diǎn),且包含全部關(guān)鍵字; 3)對每個(gè)分組構(gòu)建路徑子樹,進(jìn)而對路徑子樹根據(jù)單調(diào)性和一致性約束過濾冗余信息得到最終的查詢結(jié)果,即匹配子樹。
2.根據(jù)權(quán)利要求I所述的方法,進(jìn)ー步包括,解析XML文檔時(shí),在每個(gè)編碼的尾部附加一個(gè)路徑ID用于標(biāo)識(shí)其路徑。
3.根據(jù)權(quán)利要求2所述的方法,進(jìn)ー步包括,構(gòu)建關(guān)鍵字倒排表,將與每個(gè)關(guān)鍵字相匹配的所有節(jié)點(diǎn)組織在一起,并根據(jù)Dewey編碼從小到大的順序進(jìn)行排序。
4.根據(jù)權(quán)利要求3所述的方法,進(jìn)ー步包括,構(gòu)建從根節(jié)點(diǎn)到每個(gè)值節(jié)點(diǎn)的路徑索引,通過Dewey編碼最后一位的路徑ID索引該節(jié)點(diǎn)在XML文檔中的全部路徑。
5.根據(jù)權(quán)利要求4所述的方法,進(jìn)ー步包括通過快速構(gòu)建分組集來構(gòu)建路徑子樹,進(jìn)而獲得全部的匹配子樹。
全文摘要
本發(fā)明提供了一種XML關(guān)鍵字查詢方法,其特征在于包括步驟首先,根據(jù)用戶輸入的關(guān)鍵字獲得所有關(guān)鍵字的倒排表;其次,通過掃描關(guān)鍵字倒排表并根據(jù)快速分組方法進(jìn)行分組,因此根據(jù)不同的分組構(gòu)建的子樹自然也就滿足以SLCA為根節(jié)點(diǎn),且包含全部關(guān)鍵字;最后,對每個(gè)分組構(gòu)建路徑子樹,進(jìn)而對路徑子樹根據(jù)單調(diào)性和一致性約束過濾冗余信息得到最終的查詢結(jié)果,即匹配子樹。本發(fā)明可以對XML關(guān)鍵字進(jìn)行高效查詢。
文檔編號(hào)G06F17/30GK102867054SQ201210338190
公開日2013年1月9日 申請日期2012年9月13日 優(yōu)先權(quán)日2012年9月13日
發(fā)明者宗競 申請人:江蘇樂買到網(wǎng)絡(luò)科技有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
惠安县| 梁山县| 准格尔旗| 龙川县| 长春市| 营山县| 乌兰察布市| 寻乌县| 武义县| 本溪市| 龙井市| 安仁县| 岚皋县| 交城县| 益阳市| 丰都县| 洛隆县| 平度市| 乡城县| 墨竹工卡县| 太湖县| 海城市| 渝北区| 湖口县| 蓬安县| 连山| 阳信县| 秦皇岛市| 阿尔山市| 罗源县| 肥城市| 壶关县| 安多县| 利津县| 浏阳市| 西青区| 普兰店市| 丹江口市| 兴义市| 青岛市| 郁南县|