亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種關系-xml混合數(shù)據(jù)關鍵字查詢方法

文檔序號:6590529閱讀:232來源:國知局
專利名稱:一種關系-xml混合數(shù)據(jù)關鍵字查詢方法
技術領域
本發(fā)明與數(shù)據(jù)庫管理系統(tǒng)相關,涉及數(shù)據(jù)庫關鍵字查詢領域,是一種與最小生成樹算法相關的關系-XML雙引擎數(shù)據(jù)庫關鍵字查詢處理方法。
背景技術
數(shù)據(jù)庫的關鍵字檢索算法是指能夠提供一種像信息檢索一樣簡單的接口,即輸入想要查詢的關鍵詞,即可返回所查詢的數(shù)據(jù),而不需要掌握SQL、XQuery、XPath等復雜的查詢語言。對關系-XML混合數(shù)據(jù)進行關鍵字檢索的需求驅(qū)動表現(xiàn)為:關系數(shù)據(jù)和XML數(shù)據(jù)在企業(yè)數(shù)據(jù)庫管理過程中相互依存、互為補充;現(xiàn)有的數(shù)據(jù)庫只提供關系或者XML數(shù)據(jù)的全文查詢,沒有體現(xiàn)數(shù)據(jù)庫的結構性特征;現(xiàn)有的數(shù)據(jù)庫通常只能管理關系數(shù)據(jù)或者XML數(shù)據(jù),沒有雙引擎數(shù)據(jù)的關鍵字查詢;掌握一門復雜的查詢語言成本太高,數(shù)據(jù)庫管理員不一定了解數(shù)據(jù)庫的schema結構。因此,在針對關系-XML雙引擎數(shù)據(jù)庫時,提供一種像信息檢索一樣簡單的接口,輸入關鍵詞即可返回相關的查詢結果具有重要意義。數(shù)據(jù)庫的關鍵字查詢方法一般通過對數(shù)據(jù)庫建立倒排索引,掃描倒排索引表,返回包含關鍵字的字段來實現(xiàn)的。關系數(shù)據(jù)的關鍵字查詢通過返回包含關鍵字的最小生成樹實現(xiàn)的;XML數(shù)據(jù)的關鍵字查詢通過返回包含關鍵字的最小最低公共祖先節(jié)點實現(xiàn)的。目前與數(shù)據(jù)庫的關鍵字查詢算法的相關成果較多,其中比較經(jīng)典的有BhalotiaG 和 Hulgeri A 等人在文獻“Keyword searching and browsing in databases usingBANKS.1n:Proc.0f the 18th Int’ I Conf.0n Data Engineering.San Jose, CA.1EEEComputer Society, 2002.431-440”提出的算法,其主要特征是使用有向的數(shù)據(jù)圖來進行關鍵字檢索,對內(nèi)存的大小有一定限制。Hristidis V在文獻“DISCOVER:Keyword search inrelational databases.1n:Proc.0fthe28th IntJ I Conf.0n Very Large Data Bases.Hong Kong:Morgan Kaufmann Publishers, 2002.670-681.”結合SQL語句,使用模式圖的方法對關系數(shù)據(jù)進行檢索,在內(nèi)存中存儲空間較小,但在生成候選網(wǎng)絡上耗費代價較大。LuoYi 和 Lin Xuemin 在文獻“Spark:Top_k keyword query in relational databases[C]//Proc of the2007ACM SIGMOD Conf on Management ofData.New York ;ACM。2007:115_126”討論了如何支持Top-k關鍵詞搜索,提出了 Skyline算法和Blockline算法。Guo, L和Shao 在文獻“XRANK:Ranked keyword search over XML documents.1n:Proc.ACM SIGMOD,PP.16-27(2003) ”提出的XML關鍵字檢索算法,考慮XML文檔的分層和超鏈接結構,將tf*idf評估機制引入XML查詢結果相關性評估中,但沒有考慮最小最低公共祖先節(jié)點的語義。LJ.Chen 和 Y.Papakonstantinou 在文獻“Supporting top-k keyword search in xmldatabases.1n I⑶E,2010.”中討論了對XML數(shù)據(jù)支持top-k檢索。以上文獻均是單獨的對關系數(shù)據(jù)或者XML數(shù)據(jù)進行關鍵字查詢,都從一定的角度滿足了數(shù)據(jù)庫關鍵字檢索的需求,但目前并沒有一個完善的設計可以解決關系-XML數(shù)據(jù)的關鍵字檢索問題
發(fā)明內(nèi)容
本發(fā)明針對關系-XML雙引擎數(shù)據(jù)庫的關鍵字查詢問題,克服上述現(xiàn)有相應技術存在的不足,提出一種時間復雜度較低、召回率和準確率較高的關系-XML混合數(shù)據(jù)關鍵字查詢方法,以輔助關系-XML雙引擎數(shù)據(jù)的管理。本方法是為與CoSQLRX關系-XML雙引擎數(shù)據(jù)庫類似數(shù)據(jù)庫提供關鍵字查詢方法,以CoSQL RX數(shù)據(jù)庫為例,此類數(shù)據(jù)庫本身對關系數(shù)據(jù)和XML數(shù)據(jù)的存儲是邏輯上共同存儲,物理上分開存儲。即在關系表中,實際存儲的是XML文檔的標識符XID,通過XID和XML目錄表找到XML文檔實際存儲的物理位置。DBLP數(shù)據(jù)集是存儲論文及作者的關系,在關系表中,增設一個XML類型的列,命名為info列,用以存儲作者年齡、所在地、職業(yè)和興趣愛好等信息;該列的內(nèi)容由XMark自動生成,然后導入關系表中的info列中。本查詢方法讀取數(shù)據(jù)庫中的數(shù)據(jù)后,通過json解析出關系表的主外鍵聯(lián)系,對數(shù)據(jù)建立倒排索引。本發(fā)明首次提出這種查詢方法。本發(fā)明的技術方案為:關系-XML混合數(shù)據(jù)查詢處理方法,其步驟為:I)本查詢方法是為CoSQL RX關系-XML雙引擎數(shù)據(jù)庫提供關鍵字查詢。CoSQL RX數(shù)據(jù)庫本身對關系數(shù)據(jù)和XML數(shù)據(jù)的存儲是邏輯上共同存儲,物理上分開存儲。即在關系表中,實際存儲的是XML文檔的標識符XID,通過XID和XML目錄表找到XML文檔實際存儲的物理位置。本查詢方法讀取CoSQL RX數(shù)據(jù)庫中的數(shù)據(jù),為解析數(shù)據(jù)和關鍵字查詢數(shù)據(jù)做準備。2) json的中文名稱是javascript對象標識法,本方法已知數(shù)據(jù)庫的模式信息(即schema信息,記錄關系表間的主外鍵關系);在jason中根據(jù)數(shù)據(jù)庫的schema信息,從CoSQL RX數(shù)據(jù)庫中讀取數(shù)據(jù),將關系表中的每個元組作為一個節(jié)點,關系表間的主外鍵聯(lián)系作為邊,生成元組數(shù)據(jù)圖。元組數(shù)據(jù)圖的每個節(jié)點是關系表的一個元組,節(jié)點之間的聯(lián)系表不關系表間的主外鍵關系。3)對CoSQL RX數(shù)據(jù)庫中的關系數(shù)據(jù)與XML數(shù)據(jù)分別進行倒排索引;在I)中對數(shù)據(jù)結構進行了說明。倒排索引是要在查詢之前進行的,將數(shù)據(jù)中的字符串按其位置信息存放起來,便于查詢。4)針對輸入的關鍵字,在倒排索引中查找關鍵字出現(xiàn)的對應位置。若出現(xiàn)在某個元組中,則標記該元組為候選節(jié)點;若出現(xiàn)在某個XML文檔中,則相當于出現(xiàn)在XML文檔所在元組,標記該元組為候選節(jié)點;5)根據(jù)4)計算的候選節(jié)點和2)中得到的元組數(shù)據(jù)圖,在元組數(shù)據(jù)圖中查找包含候選節(jié)點的最小生成樹;6)若關鍵字出現(xiàn)在XML文檔中,則在完成5)后,在XML文檔中查找包含關鍵字的最小最低公共祖先節(jié)點;7)返回包含查詢關鍵字結構信息的關系-XML數(shù)據(jù)查詢結果,并根據(jù)相關度對結果進行排序。進一步的,所述關系-XML數(shù)據(jù)存儲方案為:邏輯上共同存儲,物理上分開存儲;關系數(shù)據(jù)為主,XML數(shù)據(jù)為輔,XML數(shù)據(jù)可能是關系表中的某一列。進一步的,所述最小生成樹算法即為啟發(fā)式的從底向上的Steiner樹算法。進一步的,所述最小最低公共祖先節(jié)點算法為優(yōu)化后的SLCA算法,對查詢結果優(yōu)化,并不返回公共祖先節(jié)點及其所有子樹,進行剪枝操作,只返回包含關鍵字的節(jié)點的直系祖先節(jié)點。進一步的,所述關鍵字為一個或多個字符串。本發(fā)明主要涉及關系-XML混合數(shù)據(jù)的關鍵字匹配,主要內(nèi)容包括:1.關系-XML數(shù)據(jù)的存儲與索引關系數(shù)據(jù)與XML數(shù)據(jù)在物理上分開存儲,邏輯上共同存儲。在關系表中,實際存儲的是XML文檔的標識符XID,通過XID和XML目錄表找到XML文檔實際存儲的物理位置。把關系表中的每個元組作為一個節(jié)點,關系表之間的主外鍵聯(lián)系作為邊,生成元組數(shù)據(jù)圖。分別對關系數(shù)據(jù)和XML數(shù)據(jù)建立倒排索引。并且對XML文檔樹進行Dewey編碼,對XML文檔樹進行Dewey編碼是便于后來查找在XML文檔中包含查詢關鍵字的最小最低公共祖先節(jié)點SLCA,最好是用這種編碼。倒排索引即是統(tǒng)計某個字符串在數(shù)據(jù)中出現(xiàn)的各個位置。本步驟對關鍵字檢索的效率起決定性作用,索引的建立可加快檢索的效率。本步驟的關鍵在于根據(jù)關系表的主外鍵聯(lián)系,建立元組數(shù)據(jù)圖;并對關系-XML數(shù)據(jù)進行倒排索引,提高關鍵字匹配的效率。2.數(shù)據(jù)圖的最小生成樹算法這一步驟是采用啟發(fā)式的最小生成樹算法。在倒排索引中,查詢關鍵字命中關系表的某個元組的某一列時,則標記該元組為候選節(jié)點;通過標記出的候選節(jié)點,找到命中所有查詢關鍵字的候選節(jié)點在元組數(shù)據(jù)圖中的最小生成圖。返回最小生成樹即可。若查詢關鍵字命中元組中的列屬于XML類型,還需要再在該XML文檔中執(zhí)行SLCA-plus算法,返回命中關鍵字的最小最低公共祖先節(jié)點。本步驟是關鍵字匹配算法的核心部分,可返回查詢關鍵字的結構信息,提高查詢結果的準確率和相關度。本步驟通過在最小生成樹算法內(nèi)嵌入了 SLCA-plus算法,實現(xiàn)對關系-XML混合數(shù)據(jù)進行查詢。 3.SLCA-plus 算法本步驟處理的數(shù)據(jù)集是查詢關鍵字所命中的XML文檔樹,當關鍵字命中關系表中的XML文檔列時,并不返回整個XML文檔,而是返回包含所有關鍵字的公共祖先節(jié)點SLCA及公共祖先節(jié)點的子節(jié)點。本步驟所米用的SLCA-plus 算法(參考文獻“XRANK:Ranked keyword searchover XML documents.1n:Proc.ACM SIGMOD, pp.16-27 (2003) ”)得到包含所有關鍵字的最小公共祖先節(jié)點,在返回查詢結果時,并不返回以最小公共祖先節(jié)點SLCA為根的整棵子樹,我們會進行剪枝步驟,只返回以SLCA為根的子樹中命中關鍵字的節(jié)點的直系祖先節(jié)點。在有些情況下,包含查詢關鍵字的最小公共祖先節(jié)點可能是整個XML文檔的根節(jié)點,若返回整個XML文檔是沒有價值的,因此對查詢結果進行剪枝,只返回命中關鍵字的節(jié)點的直系祖先節(jié)點。本步驟可以提高查詢結果的可讀性和有效性。4.查詢結果的相似度
查詢結果的相似度排序包含兩部分:元組數(shù)據(jù)圖的最小生成樹的相似度排序和XML文檔的SLCA的排序。最小生成樹的相似度排序,采用如下計分公式,包含的關鍵詞越多越好,元組越少越好:
權利要求
1.一種關系-XML混合數(shù)據(jù)關鍵字查詢方法,其步驟為: 1)根據(jù)數(shù)據(jù)庫的模式信息從數(shù)據(jù)庫中讀取數(shù)據(jù),其中將關系表中的每個元組作為一個節(jié)點,關系表間的主外鍵聯(lián)系作為邊,生成元組數(shù)據(jù)圖;所述數(shù)據(jù)庫為對關系數(shù)據(jù)和XML數(shù)據(jù)的存儲是邏輯上共同存儲,物理上分開存儲,數(shù)據(jù)庫的關系表中實際存儲的是XML數(shù)據(jù)的標識符XID,通過XID和XML目錄表確定XML數(shù)據(jù)實際存儲的物理位置; 2)對所述數(shù)據(jù)庫中的關系數(shù)據(jù)與XML數(shù)據(jù)分別進行倒排索引; 3)在所述倒排索引中查找輸入關鍵字出現(xiàn)的對應位置;若出現(xiàn)在某個元組中,則標記該元組為候選節(jié)點,然后在所述元組數(shù)據(jù)圖中查找包含該候選節(jié)點的最小生成樹;若出現(xiàn)在某個XML文檔中,則將該XML文檔所在元組標記為候選節(jié)點,然后在所述元組數(shù)據(jù)圖中查找包含該候選節(jié)點的最小生成樹,再在該XML文檔中查找包含關鍵字的最小公共祖先節(jié)占.4)返回包含查詢關鍵字結構信息的關系-XML數(shù)據(jù)查詢結果。
2.如權利要求1所述的方法,其特征在于返回所述查詢結果時,對以所述最小公共祖先節(jié)點為根的文檔樹進行處理,只返回以所述最小公共祖先節(jié)點為根的文檔樹中命中關鍵字的節(jié)點的直系祖先節(jié)點,即返回包含關鍵字的最小最低公共祖先節(jié)點。
3.如權利要求2所述的方法,其特征在于根據(jù)相關度對所述查詢結果進行排序,包括最小生成樹的相似度排序和XML文檔的最小最低公共祖先節(jié)點相似度排序;其中, 最小生成樹的相似度排序采用的公式為:
4.如權利要求1或2或3所述的方法,其特征在于對所述數(shù)據(jù)庫中的XML數(shù)據(jù)進行Dewey編碼。
5.如權利要求1或2或3所述的方法,其特征在于所述數(shù)據(jù)庫為CoSQLRX關系-XML雙引擎數(shù)據(jù)庫。
6.如權利要求5所述的方法,其特征在于采用javascript對象標識法根據(jù)CoSQLRX關系-XML雙引擎數(shù)據(jù)庫的schema信息,從數(shù)據(jù)庫中讀取數(shù)據(jù),生成所述元組數(shù)據(jù)圖。
7.如權利要求1或2或3所述的方法,其特征在于所述數(shù)據(jù)庫采用以關系數(shù)據(jù)為主、XML數(shù)據(jù)為輔的方式對數(shù)據(jù)進行存儲。
8.如權利要求1或2或3所述的方法,其特征在于采用啟發(fā)式的從底向上的Steiner樹算法生成所述最小生成樹;采用SLCA-plus算法得到包含所有關鍵字的最小公共祖先節(jié)點。
9.如權利要求1或2或3所述的方法,其特征在于所述關鍵字為一個或多個字符串。
全文摘要
本發(fā)明公開了一種關系-XML混合數(shù)據(jù)關鍵字查詢方法。本發(fā)明為1)根據(jù)數(shù)據(jù)庫的模式信息從數(shù)據(jù)庫中讀取數(shù)據(jù),生成元組數(shù)據(jù)圖;數(shù)據(jù)庫為對關系數(shù)據(jù)和XML數(shù)據(jù)是邏輯上共同存儲,物理上分開存儲;2)對關系數(shù)據(jù)與XML數(shù)據(jù)進行倒排索引;3)查找輸入關鍵字出現(xiàn)的對應位置;若在某個元組中,則標記該元組為候選節(jié)點,然后在元組數(shù)據(jù)圖中查找包含該候選節(jié)點的最小生成樹;若在某個XML文檔中,則將該文檔所在元組標記為候選節(jié)點,然后在元組數(shù)據(jù)圖中查找包含該候選節(jié)點的最小生成樹,再在該XML文檔中查找包含關鍵字的最小公共祖先節(jié)點;4)返回包含查詢關鍵字結構信息的關系-XML數(shù)據(jù)查詢結果。本發(fā)明實現(xiàn)了混合數(shù)據(jù)的關鍵字查詢。
文檔編號G06F17/30GK103150404SQ20131010490
公開日2013年6月12日 申請日期2013年3月28日 優(yōu)先權日2013年3月28日
發(fā)明者李樹節(jié), 陳薇, 王騰蛟, 楊冬青 申請人:北京大學
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1