Sparql查詢的轉換系統(tǒng)和方法

            文檔序號:6577644閱讀:343來源:國知局
            專利名稱:Sparql查詢的轉換系統(tǒng)和方法
            技術領域
            本發(fā)明涉及數據庫查詢,尤其涉及數據庫查詢語句的執(zhí)行效率,更具體地說,涉及 一種用于SPARQL查詢的轉換的系統(tǒng)和方法。
            背景技術
            近年來,關系數據庫管理系統(tǒng)的成功引入了大量橫向模式的數據。隨著各種應用 中對本體(ontology)越來越多的使用,在現有關系數據庫管理系統(tǒng)上支持RDF (Resource Description Framework的縮寫,資源描述框架)查詢已吸引了關系數據庫研究人員和語 義網研究人員兩方面的注意。一方面,將關系數據表達為RDF圖使得可以對不同資源進行 統(tǒng)一的訪問,以利于信息的聯合和集中。另一方面,暴露關系數據庫中鎖存的大量數據可以 豐富語義網的內容。圖1示出了虛擬RDF存儲的結構框圖。在客戶端,使用SPARQL(Simple Protocol and RDF Query Language的縮寫,簡單協(xié)議和RDF查詢語言)進行查詢,查詢引擎利用 D2R(Database to Relationaldatabase)映射單元將SPARQL語句翻譯為SQL i吾句,以對關 系數據庫進行查詢。SPARQL 是 W3C (World Wide Web Consortium 的縮寫,萬維網聯盟)的 RDF 查詢語 言推薦標準,它是為RDF開發(fā)的一種查詢語言和數據獲取協(xié)議,其語法單元結構有以下幾 種三元組< 主謂賓 >,(以下簡稱為<s p o “與”模式:<s p oXs p o>“或”模式<s p o>UNI0N<s p o>過濾條件Filter (條件)典型地,語義查詢可以分為兩類,肯定的語義查詢和否定的語義查詢。例如,為了 在超市中找到顏色(color)為白色(white)的尿布(diaper),可以進行如下簡單的肯定的 SPARQL 查詢< ? x typeof diaperX ? x color white〉如果是為了在超市中找到非白色的尿布,則本應進行如下查詢< ? x typeof diaper> ! < ? x color white> (1)其中“ ! ”表示邏輯“非”,符號“ ! ”只是一個示例,本領域技術人員應認識到,任何 可以表達“非”邏輯的表示方式都是可以的。但是,現有SPARQL語言中的語法模式都是以 肯定形式表達的,沒有“! <s p o>”這樣的語法結構,即不支持否定模式的直接查詢,因此不支持式(1) 中的“!〈? x color white〉”。又例如,希望找到這樣的兩種產品,他們可以通過第三種產品捆綁銷售,但是不能 直接捆綁銷售,并且不能自己和自己捆綁銷售。假如某超市中商品捆綁銷售的情況如下(以“_”標識捆綁銷售)
            (a)啤酒-尿布,尿布-牛奶;(b)啤酒-紅酒,紅酒-水,啤酒-水。假若按下面的式(2)進行查詢Select ? X,? z where {< ? x BundleSale ? y>< ? y BundleSale ? z>!〈? x BundleSale ? z> !〈? x BundleSale ? x>} (2)則查詢結果將為(a),因為啤酒和牛奶不捆綁銷售,啤酒自己和牛奶自己也不捆綁 銷售,但是它們通過尿布捆綁銷售。由上可見,例如“! <s p o>”這樣的顯式否定模式的查詢非常有用。但是,現有 SPARQL語言中卻不存在顯式否定模式的語法結構。為此,現有技術中,在SPARQL語言中以肯定的方式來間接描述否定模式,抽象為 代數關系式即為P1 ! P2 = P1-P1P2,“P1P2”代表兩個以“與”邏輯組合的三元組,將其稱 為隱式否定模式。例如,為了表達式(1)中的查詢,可以使用這樣的形式Select ? x where {< ? x typeof diaperX ? y typeof diaperX ? ycolor white>Filter ( ? x ! = ? y)}又例如,為了表達式(2)中的查詢,可以使用這樣的形式Select ? X,? z where {< ? x BundleSale ? y>< ? y BundleSale ? z>〈? m BundleSale ? o>< o BundleSale ? n>< m BundleSale ? n>〈? a BundleSale ? b>< b BundleSale ? c>< a BundleSale ? a>Filter (( ? x ! = m OR z ! = n)0R( ? x ! = a OR z ! = c))}但是,在將上述隱式否定模式編譯為SQL語句的實際運算過程中,不等條件“? x ! = y”會產生很多不必要的連接操作,而連接操作空間成本很高。其次,“!=”運算 翻譯成SQL語句后將會很繁瑣。最后,不等條件會轉換為若干肯定斷言和否定斷言的組合, 增加運算量??傊?,現有的SPARQL查詢難以支持全語義查詢,并且現有的將SPARQL轉換為 SQL的系統(tǒng)和方法性能不理想。

            發(fā)明內容
            因此,本發(fā)明的主要目的是提供一種能夠高效地將SPARQL查詢語句轉換為SQL語 句的系統(tǒng)和方法。根據本發(fā)明的一個方面,提供了一種用于SPARQL查詢的轉換的系統(tǒng),包括語法/ 詞法分析器,用于解析SPARQL查詢;隱式否定模式檢測器,用于檢測解析后的SPARQL查詢 中的隱式否定模式;隱式否定模式轉換器,用于將檢測出的隱式否定模式轉換為顯式否定 模式;分離器,用于將顯式否定模式和解析后的SPARQL查詢中的肯定模式分離;否定模式 轉換器,用于將所述顯式否定模式轉換為否定部分的SQL語句;肯定模式轉換器,用于將所 述肯定模式轉換為肯定部分的SQL語句;以及組合器,用于組合所述否定部分的SQL語句和 所述肯定部分的SQL語句。根據本發(fā)明的另一方面,提供了一種用于SPARQL查詢的轉換的方法,包括以下步 驟語法/詞法分析,解析SPARQL查詢;隱式否定模式檢測,檢測解析后的SPARQL查詢中 的隱式否定模式;隱式否定模式轉換,將檢測出的隱式否定模式轉換為顯式否定模式;將 顯式否定模式和解析后的SPARQL查詢中的肯定模式分離;否定模式轉換,將所述顯式否定模式轉換為否定部分的SQL語句;肯定模式轉換,將所述肯定模式轉換為肯定部分的SQL語 句;以及組合所述否定部分的SQL語句和所述肯定部分的SQL語句。根據本發(fā)明的另一方面,提供了一種用于SPARQL查詢的轉換的系統(tǒng),包括語法/ 詞法分析器,用于解析SPARQL查詢;隱式否定模式檢測器,用于檢測解析后的SPARQL查詢 中的隱式否定模式,并輸出檢測出的隱式否定模式和肯定模式;隱式否定模式轉換器,用于 將檢測出的隱式否定模式轉換為否定部分的SQL語句;肯定模式轉換器,用于將所述肯定 模式轉換為肯定部分的SQL語句;以及組合器,用于組合所述否定部分的SQL語句和所述肯 定部分的SQL語句。根據本發(fā)明的另一方面,提供了一種用于SPARQL查詢的轉換的方法,包括以下步 驟語法/詞法分析,解析SPARQL查詢;隱式否定模式檢測,檢測SPARQL查詢中的隱式否 定模式,并輸出檢測出的隱式否定模式和肯定模式;隱式否定模式轉換,將檢測出的隱式否 定模式轉換為否定部分的SQL語句;肯定模式轉換,將所述肯定模式轉換為肯定部分的SQL 語句;以及組合所述否定部分的SQL語句和所述肯定部分的SQL語句。


            為了更加清楚地理解本發(fā)明及其優(yōu)點,現在結合附圖進行具體描述。附圖中相似 的參考標號代表相似的部件或特征。在附圖中圖1是示出本發(fā)明的應用環(huán)境的框圖;圖2是示出根據本發(fā)明的一個實施例的SPARQL查詢的轉換系統(tǒng)框圖;圖3是示出隱式否定模式的實例的視圖;圖4是示出根據本發(fā)明一個實施例的否定模式轉換器的工作流程圖;圖5是示出根據本發(fā)明的實施例,組合器基于左外連接(LEFTOUTER JOIN)命令進 行的組合處理的示意圖;圖6是示出根據本發(fā)明的實施例,組合器基于EXIST命令進行的組合處理的示意 圖;圖7是示出根據本發(fā)明的另一個實施例的SPARQL查詢的轉換系統(tǒng)框圖;以及圖8是示出根據本發(fā)明的實施例,從SPARQL查詢語句中提取出的連通子圖及各自 的最大連通相似子圖的示意圖。
            具體實施例方式以下將參考附圖具體描述本發(fā)明的示例性實施例。本發(fā)明旨在對SPARQL查詢到SQL查詢的轉換過程進行改進。為了清楚地說明該 改進,引入一種顯式否定模式的表達,在將一個SPARQL語句轉換為SQL語句的過程中,首先 將SPARQL語句中的隱式否定模式轉換為顯式否定模式,從而優(yōu)化轉換過程和所得到的SQL 語句。在一個實施例中,將顯式否定模式表示為! <s p o>,即在普通的三元組前加上一 個表示否定意義的符號“! ”。! <s p o>表示不存在<s po>的實例。根據封閉世界假定, 有! <s p o> = <s ! p o>。當然,本領域技術人員可以意識到,其他表示方式也是可行的。在定義了顯式否定模式之后,SPARQL中的任何現有的否定模式都可以使用顯式否
            7定模式表達三元組的否定! <s p o>“與”模式的否定! <s p o>UNI0N ! <s p o>“或”模式的否定! <s p o> ! <s p o>三元組的雙重否定<s p o>圖2示出根據本發(fā)明的一個實施例的支持SPARQL查詢的轉換的系統(tǒng)框圖。如圖 2所示,該系統(tǒng)由三大部分組成語法/詞法分析器21、隱式否定模式適配器22、以及全語 義SPARQL適配器23。以下結合圖2描述根據本發(fā)明一個實施例的系統(tǒng)如何將一個帶有隱 式否定模式的SPARQL查詢語句高效地轉換為SQL語句。首先,SPARQL查詢語句(下文亦稱“SPARQL語句,,或“SPARQL查詢”)進入語法 /詞法分析器21,語法/詞法分析器21解析該SPARQL語句。作為一種標準的查詢語言, SPARQL的查詢語句的解析過程在本領域中是公知的,因此不再贅述。解析后的SPARQL語句進入隱式否定模式適配器22,隱式否定模式適配器用于檢 測所述解析后的SPARQL語句中的隱式否定模式并將其轉換為顯式否定模式。其中,隱式否 定模式適配器22包括隱式否定模式檢測器221和隱式否定模式轉換器222。在隱式否定模式檢測器221,檢測解析后的SPARQL語句中的隱式否定模式,如果 該解析后的SPARQL語句具有隱式否定模式,則將其傳遞到隱式否定模式轉換器222,否則 直接輸出到下一級。以下詳細描述隱式否定模式檢測器221如何檢測解析后的SPARQL語句中的隱式 否定模式。圖3中示出了隱式否定模式的一個實例??梢钥偨Y出,隱式否定模式具有以下四 個特征。第一,具有與肯定模式重復的三元組,這些三元組與肯定模式的三元組的不同之 處僅在于相應的變量不同,例如,在圖3中,〈? y typeofdiaper>是肯定模式三元組< ? x typeof diaper〉的重復,不同之處僅在于與肯定模式三元組中的變量x相應的變量y不 同;第二,所述不同的相應變量還存在于一個附加三元組中,例如,在圖3中,變量y還 存在于三元組< ? y color white)中;第三,在過濾條件表達式中,肯定模式與隱式否定模式中所述相應的變量存在不 等關系“!=”,例如,在圖3中,過濾條件表達式為“? x! = y”;第四,如果存在多個隱式否定模式,則含有不等關系“!=,,的過濾條件表達式以 “或(OR)”模式連接。隱式否定模式檢測器221根據以上所述的四個特征檢測隱式否定模式,即,當一 個SPARQL查詢同時具備以上四個特征時,認為該SPARQL查詢具有隱式否定模式。所屬技 術領域的技術人員應當知道,可以有各種方式檢測上述四個特征。按照本發(fā)明的一個實施例,隱式否定模式檢測器221可通過對輸入的SPARQL查詢 進行如下處理,以檢測以上四個特征。首先,將SPARQL查詢中的過濾條件范化為析取范式。析取范式是指由有限個簡單 合取式構成的析取式。設Ai(i = 1,2,...,s)為簡單合取式,則A = A1 V A2 V ... V As
            8為析取范式,例如,
            p,則由Al,A2,A3構造的析取 范式為
            。這種范化為本領域技術人員 已知的;然后,從過濾條件中提取具有成立不等關系“ !=”的兩個相應的不同變量(以下 稱為不等變量對)的條件;提取該SPARQL查詢中由三元組代表的連通子圖,并且根據不等變量對和連通子 圖匹配出最大連通相似子圖,比較最大連通相似子圖與原連通子圖以找出二者之間的差 異,該差異代表了隱式否定模式中的附加三元組,該附加三元組與最大連通相似子圖所代 表的三元組構成了隱式否定模式。我們仍以上文提到的SPARQL查詢?yōu)槔齋elect ? X,? z where {< ? x BundleSale ? y>< ? y BundleSale ? z>〈? m BundleSale ? o>< o BundleSale ? n>< m BundleSale ? n>〈? a BundleSale ? b>< b BundleSale ? c>< a BundleSale ? a>Filter (( ? x ! = m OR z ! = n)0R( ? x ! = a OR z ! = c))}由該查詢中提取出的由三元組構成的三個連通子圖如圖8中左側所示。根據不 等變量對(x,m), (x,a), (z, n)和(z,c),在該三個連通子圖中匹配出各自的最大連通相 似子圖,如圖8中間所示。比較圖8左側的連通子圖和中間的最大連通相似子圖,尋找出 二者之間的差異,如圖8中右側所示。該差異分別代表了〈? m BundleSale ? n>和〈? aBundleSale ? a>這兩個附加三元組。這兩個附加三元組合并各自的最大連通相似子圖所 代表的三元組,得到檢測出的兩個隱式否定模式〈? m BundleSale ? o>< ? o BundleSale ? n>< ? m BundleSale ? n> 和〈? a BundleSale ? b>< b BundleSale ? c>< a BundleSale ? a>。可選地,可根據不等變量對的數量和連通子圖的數量確定尋找最大連通相似子圖 的順序,以減少計算量。當連通子圖數量較大時,對于不等條件列表中的每個變量對驗證連 通子圖中的相似子圖;當不等變量對的數量較大時,對于每個連通子圖中的各個子圖驗證 不等變量對。當隱式否定模式檢測器221檢測出隱式否定模式時,該具有隱式否定模式的解析 后的SPARQL語句被送入隱式否定模式轉換器222。隱式否定模式轉換器222通過以下處理 將隱式否定模式轉換為顯式否定模式。首先,去除隱式否定模式中與肯定模式重復的三元組,以圖3所示的隱式否定模 式“〈? y typeof diaperX ? y color white〉”為例,移除其中的重復三元組“〈? y typeof diaper〉”之后,剩下附加三元組“〈? ycolor white〉”。然后,將附加三元組中的 變量y替換為肯定模式〈? xcolor white〉”中的相應變量x,附加三元組“〈? y color white〉”被轉換為“〈? x color white〉”。最后,在轉換后的附加三元組前面加上否定標 志“! ”,使其成為顯式否定模式“! < ? x color white〉”。至此,隱式否定模式適配器22已將語法/詞法分析器21輸出的解析后的SPARQL 語句中的隱式否定模式的查詢轉換為顯式否定模式的查詢。應注意的是,設置隱式否定模式適配器22是為了與含有隱式否定模式的現有 SPARQL語法相兼容。本領域技術人員可以理解,如果SPARQL采用本發(fā)明中引入的顯式否定模式來表達否定查詢,則不需要在語法/詞法分析器21之后插入隱式否定模式適配器22。從隱式否定模式適配器22輸出的不含有隱式否定模式的解析后的SPARQL語句輸 入到全語義SPARQL適配器23中。全語義SPARQL適配器23用于將SPARQL語句轉換為SQL 語句。術語“全語義”表示對否定模式和肯定模式的概括。如圖2中所示,全語義SPARQL適配器23包括分離器231、否定模式轉換器232、肯 定模式轉換器233、和組合器234。以下對每個部件進行具體描述。分離器231將輸入的解析后的SPARQL語句劃分為肯定模式部分和否定模式部分 兩部分,并將它們分別輸出到肯定模式轉換器233和否定模式轉換器232。具體地說,分離 器231判斷每一個三元組前面是否含有否定標志“ ! ”,如果是,則將其判斷為否定模式三 元組并輸入到否定模式轉換器232中,如果否,則將其判斷為肯定模式三元組并輸入到肯 定模式轉換器233中。例如,對于SPARQL查詢“〈? xp ? y> ! < ? x q ? y>Filter (條 件)”,可將“〈? x p y>”輸入到肯定模式轉換器233,而將“! < x q y>Filter (條 件)”輸入到否定模式轉換器232?;蛘?,作為替代地,也可以將“〈? x p ? y>Filter(條 件)”輸入到肯定模式轉換器233,而將“! < x q y>”輸入到否定模式轉換器232。兩 種方案對于最后的轉換結果來說是等效的。我們在此假設采用第一種方案。否定模式轉換器232用于將輸入的解析后的SPARQL語句中的否定模式轉換為待 組合的否定部分的SQL語句。圖4示出否定模式轉換器的工作流程圖。以下參考圖4中的流程對否定模式轉換器232中的處理進行具體描述。首先,在步驟401,搜索要轉換的SPARQL匹配單元mu。該匹配單元mu具有比如“ ! < ? x q ? y>Filter (條件)”的形式。在步驟402,建立一個新的SELECT語句,在SQL中,SELECT語句包括WHERE、 SELECT、FROM三個子句。在步驟403,生成WHERE子句。通過將匹配單元mu中的各個條件進行“與(AND),, 操作來生成WHERE子句中的條件。在步驟404,生成SELECT子句。具體來說,將匹配單元mu中的變量放入SELECT子 句中。在步驟405,生成FROM子句。具體來說,將匹配單元mu中的表格名稱提取出來放 入FROM子句。直到步驟405,我們已得到如下的否定部分的SQL語句N_st Select Tl. Coll, Tl. Col2 FROM qTable T1WHERE 條件 1AND 條件 2AND......條件 N其中,Tl是謂語為q的查詢所對應的表格的名稱,查詢變量位于T1的列Tl. Coll 和 Tl. Col2 中。在步驟406,對變量映射表N-map進行維護,變量映射表N-map是這樣的表,在該表 中,否定模式查詢中的變量與查詢表格中的列一一對應。例如,表1是變量映射表的一個實 例,其中,變量x和y分別與表T1中的列Col 1和Col2對應
            10 表1在步驟407,判斷是否還存在其他待轉換的匹配單元,如果否,則結束整個流程,如 果是,則返回步驟401??隙J睫D換器233將SPARQL語句中的肯定模式三元組轉換為SQL語句。例如, 將SPARQL中的“〈? x p ? y>”轉換為以下肯定部分的SQL語句P_st Select T2. Coll, T2.Col2 FROM pTable T1并且維護如表2所示的變量映射表P-map 表2由于現有SPARQL語言中存在肯定模式,所以這種轉換的實現方式在本領域是公 知的,在此不再詳細描述。隨后,將否定模式轉換器232輸出的否定部分的SQL語句N-st和否定部分的變量 映射表N-map和肯定模式轉換器233輸出的肯定部分的SQL語句P_st和肯定部分的變量映 射表P-map輸入到組合器234。組合器234將N_st和P_st組合為最終的SQL語句R_st。在進行組合時,由于SQL語法的多樣性,組合器234可以選擇不同的方式將否定部 分的SQL語句N-st和肯定部分的SQL語句P-st組合成完整的SQL語句。具體來說,存在 三種方案基于NOT IN命令的方案、基于NOT EXIST命令的方案以及基于LEFT 0UTERJ0IN 命令的方案。經本發(fā)明的發(fā)明人研究發(fā)現,基于NOT IN命令的方案并非在所有情況下都適用。 只有當待轉換的SPARQL語句中的多個變量之間存在依賴關系時,其才能被轉換為含有NOT IN命令的SQL語句。而基于NOT EXIST命令的方案和基于LEFT OUTER JOIN命令的方案二 者都可以將任意一個SPARQL語句轉換為SQL語句,而無論待轉換的SPARQL語句中的變量 是否存在依賴關系。因此,本發(fā)明將重點描述后兩種方案?;谧笸膺B接命令的SQL查詢語句的一般格式為Select vl, v2,...From T1LEFT OUTER JOIN T2LEFT OUTER JOIN. . . ON (on 條件)Where (Where 條件)以下描述根據第一實施例的組合器234基于左外連接(LEFT0UTER JOIN)語句工 作的流程。步驟1,將肯定模式轉換器233輸出的所有肯定部分的SQL語句P_st組合起來 成為組合的肯定部分SQL語句(以下稱為comb-st),將肯定模式轉換器233輸出的所有 肯定部分的變量映射表P-map組合起來成為組合的肯定部分的變量映射表(以下稱為
            11comb-map)。此步驟是本領域技術人員公知的技術,并且也可以在肯定模式轉換器233中實 現。步驟2,將否定模式轉換器222輸出的否定部分的SQL語句N_st逐一地與在步驟 1中得到的comb-st組合。步驟2的具體實現如下所述對于否定部分的變量映射表N-map中的每個變量V,令E1代表在comb-map中變量 v所映射到的列,比如在表2中變量x映射到的列T2. Coll ;令E2為在N-map中該變量v所 映射到的列,比如在表1中變量x映射到的列Tl. Coll ;生成On條件“El = E2”并將其添 加到on條件列表中;將comb-st所對應的表左外連接一條N-st所對應的表,以條件列表中的已生成條 件為On條件;將上一步中進行了左外連接處理的表添加到R-st的From子句中;對于comb-map中的每個變量V,將其映射到的列添加到R_st的Select子句中;對于N-map中的每個變量V,令E2代表在N_map中變量v所映射到的列,在Where 子句中添加條件“E2is NULL”,這是因為,在左外連接操作所生成的表中,否定模式中的變 量所對應的列的內容應為“NULL”。例如,如表3-5所示,表3和表4在執(zhí)行了“T3LEFT0UTER JOIN T40N(T3. ID = T4. ID) ”之后生成表5,其中表5中的第一行右側兩列的內容為“NULL”; 表3 表 4 表 5將comb-st禾口 n_st的Where子句添力口至lj R-st的Where子句中。
            通過以上步驟,組合器234可容易地將肯定模式轉換器233和否定模式轉換器232 的輸出組合成為基于左外連接的最終的SQL語句。圖5是組合器234基于左外連接(LEFT OUTER JOIN)命令進行的組合處理的一個實例的示意圖,由圖5中可以清楚地看到SPARQL 查詢語句各部分與SQL查詢語句各部分之間的對應關系。在組合器234的第二實施例中,組合器234還可以基于N0TEXIST命令的解決方案 將肯定模式轉換器233和否定模式轉換器232的輸出組合成為最終的SQL語句。以下將描 述其具體處理過程。在本實施例中,步驟1同第一實施例中的步驟1類似,將肯定模式轉換器233輸 出的P-st組合起來成為comb-st,將肯定模式轉換器233輸出的所有P-map組合起來成為 comb—map。步驟2,將否定模式轉換222輸出的N-st和N-map分別逐一地與在步驟1中得到 的 comb-st 禾口 comb-map 組合。步驟2的具體實現與第一實施例中的不同,具體來說對于N-map中的每個變量V,令E1代表在comb-map中該變量v所映射到的列,比 如在表2中變量x映射到的列T2. Coll ;令E2為在N-map中該變量v所映射到的列,比如 在表1中變量x映射到的列Tl. Coll ;生成條件“El = E2”并將其以“與(AND) ”的方式添 加到N-st的Where子句中;將條件“E2is NOT NULL”以“與(AND) ”的方式添加到N-st的 Where子句中;在如上述步驟生成的N-st作為EXIST命令的表達式在外層加上NOT EXIST,并將 NOT EXIST及其表達式共同作為條件放入comb-st的Where子句中。應注意的是,如果存在多個N-st,則應從每個N-st都生成一個NOT EXIST子句,將 生成的多個NOT EXIST子句以“與(AND),,的方式連接起來,共同作為comb-st的Where子 句,以形成最終的SQL語句R-st。通過以上步驟,組合器234可容易地將肯定模式轉換器233和否定模式轉換器232 的輸出組合成為基于EXIST的SQL語句。圖6是組合器234基于EXIST語句進行的組合處 理的一個實例的示意圖,由圖6中可以清楚地看到SPARQL查詢語句各部分與SQL查詢語句 各部分之間的對應關系。到此為止,已經描述了組合器234將肯定模式轉換器233和否定模式轉換器232 的輸出組合成為SQL語句的兩個優(yōu)選實施例。作為參考,在此分別給出基于EXIST命令和 基于左外連接命令將各種SPARQL查詢轉換為SQL語句的結果示例。1.基于EXIST命令的轉換1. 1SPARQL 查詢〈? x, p, ol> ! < ? x, q, o2>SQL 查詢Select Tl. xCol From pTable Tl where Tl. yCol = oland NOT EXIST(Select T2.xCol From qTable T2 where(Tl. xCol = T2. xCol AND T2.yCol = o2 AND T2.xCol is NOT NULL))1. 2SPARQL 查詢〈? x, p, ? y> ! < ? x, q, o2>SQL 查詢Select Tl. xCol, Tl. yCol From pTable Tl where N0TEXIST(Select T2.xCol From qTable T2 where(Tl. xCol = T2.xColAND T2.yCol = o2 AND T2.xCol is NOT NULL))
            13
            1. 3SPARQL 查詢〈? x, p, ? y> ! < ? x, q, ? y>SQL 查詢Select Tl. xCol, Tl. yCol From pTable T1 where NOTEXIST(Select T2. xCol, T2.yCol From qTable T2where(Tl.xCol = T2. xCol)AND(Tl. yCol = T2. yCol) AND (T2. xCol isNOT NULL) AND(T2. yCol is NOT NULL))1. 4SPARQL 查詢〈? x, p, y> ! < y, q, x>SQL 查詢Select Tl. xCol, Tl. yCol From pTable Tl where NOTEXIST (Select T2. xCol, T2.yCol From qTable T2where(Tl.xCol = T2. yCol)AND(Tl. yCol = T2. xCol) AND (T2. yCol isNOT NULL) AND(T2. xCol is NOT NULL))2.基于左外連接(LEFT OUTER JOIN)命令的轉換2. 1 SPARQL 查詢< ? x, p, ol> ! < ? x, q, o2>SQL 查詢Select Tl.xCol From pTable T1LEFT OUTER JOINqTable T2on (Tl. xCol = T2.xCol and Tl. yCol = oland T2.yCol = o2)where (T2. xCol is NULL)2. 2SPARQL 查詢〈? x, p, ? y> ! < ? x, q, o2>SQL 查詢Select Tl.xCol,Tl. yCol From pTable Tl LEFT0UTER JOIN qTable T2on (Tl. xCol = T2.xCol and T2. yCol = o2)where (T2. xCol is NULL)2. 3SPARQL 查詢〈? x, p, y> ! < x, q, y>SQL 查詢Select Tl.xCol,Tl. yCol From pTable Tl LEFT0UTER JOIN qTable T2on (Tl. xCol = T2. xCol)AND(Tl. yCol = T2. yCol) where (T2. xCol is NULL) AND (T2. yCol is NULL)2. 4 SPARQL 查詢〈? x, p, y> ! < y, q, x>SQL查詢:Select Tl. xCol,Tl. yCol From pTable Tl LEFT0UTER JOIN qTable T2 on (Tl. xCol = T2. yCol)AND (Tl. yCol = T2. xCol) where (T2. yCol is NULL) AND (T2. xCol is NULL)在本發(fā)明的第二實施例中,示出了一種更簡化的SPARQL查詢的轉換系統(tǒng)和方法。 下面參考圖7進行描述。圖7是示出根據本發(fā)明的另一個實施例的用于SPARQL查詢的轉換的系統(tǒng)的框圖。 如圖7中所示,本實施例中的SPARQL查詢的轉換系統(tǒng)包括語法/詞法分析器71、模式檢測 分離器72、否定模式直接轉換器732、肯定模式轉換器733以及組合器734。其中,語法/ 詞法分析器71、肯定模式轉換器733以及組合器734和第一實施例中的語法/詞法分析器 21、肯定模式轉換器233以及組合器234的功能相同,在此省略對其的描述。在模式檢測分離器72檢測解析后的SPARQL語句中的隱式否定模式,并且將檢測 出的隱式否定模式傳遞到否定模式直接轉換器732,將其余部分,即肯定模式的部分傳遞到 肯定模式轉換器733。模式檢測分離器72檢測解析后的SPARQL語句中的隱式否定模式的 原理與第一實施例中的隱式否定模式檢測器221基本相同,只是本實施例中的模式檢測分 離器72除了輸出檢測出的隱式否定模式以外,還輸出肯定模式的部分到肯定模式轉換器 733,因此,本實施例中的模式檢測分離器72實際上起到了檢測和分離兩個作用。本實施例中的否定模式直接轉換器732與第一實施例中的隱式否定模式轉換器222不同,其綜合了第一實施例中的隱式否定模式轉換器222和否定模式轉換器232的功 能。具體來說,本實施例中的否定模式直接轉換器732不需要將從模式檢測分離器72傳遞 過來的隱式否定模式先轉換為在第一實施例中定義的顯式否定模式“! < x p y>”,而 是將SPARQL語句中的隱式否定模式直接轉換為SQL語句的否定部分。具體處理過程如下 所述。步驟1,識別出隱式否定模式中的重復三元組和附加三元組。步驟2,搜索要轉換的SPARQL匹配單元mu’。該匹配單元mu’是附加三元組及其 過濾條件。后續(xù)步驟與步驟402-407相同。經過以上處理,否定模式直接轉換器732輸出的否定部分的SQL語句與第一實施 例中的否定模式轉換器232的輸出相同。以上描述了一種可以高效地將基于虛擬RDF存儲的SPARQL查詢轉換為SQL查詢 的系統(tǒng)和方法。本領域技術人員將會認識到,可以以方法、系統(tǒng)或計算機程序產品的形式提 供本發(fā)明的實施例。因此,本發(fā)明可以采取全硬件實施例、全軟件實施例,或者軟件和硬件 的組合的實施例的形式。本發(fā)明的事件處理系統(tǒng)可以以硬件、軟件或二者組合來實現。當 以硬件實現時,系統(tǒng)的各個組成部分可以是分立的部件,各個組成部分中的一個或多個也 可以集成在一起。硬件和軟件的典型結合可以是帶有計算機程序的通用計算機系統(tǒng),當程 序被加載并執(zhí)行時,控制計算機系統(tǒng),從而可以執(zhí)行上述的方法。本發(fā)明可以嵌入在計算機程序產品中,它包括使此處描述的方法得以實施的所有 特征。所述計算機程序產品被包含在一個或多個計算機可讀存儲介質(包括但不限于,磁 盤存儲器、CD-ROM、光學存儲器等)中,所述計算機可讀存儲介質具有包含于其中的計算機 可讀程序代碼。已參考根據本發(fā)明的方法、系統(tǒng)及計算機程序產品的流程圖和/或方框圖說明了 本發(fā)明。流程圖和/或方框圖中的每個方框,以及流程圖和/或方框圖中的方框的組合顯 然可由計算機程序指令實現。這些計算機程序指令可被提供給通用計算機、專用計算機、嵌 入式處理器或者其它可編程的數據處理設備,從而指令產生用于實現在流程圖和/或方框 圖的一個或多個方框中規(guī)定的功能的裝置。當參考示例性實施例示出和描述本發(fā)明的同時,本領域技術人員將理解,可以不 脫離如所附權利要求所定義的本發(fā)明的精神和范圍而作出各種形式的修改和變更。僅出于 描述而不是限制的目的描述了示例性實施例。因此,本發(fā)明的范圍不受具體實施例的限定, 而是受所附權利要求的限定,并且該范圍內所有的修改、變更都應理解為包含在本發(fā)明中。
            1權利要求
            一種用于SPARQL查詢的轉換的系統(tǒng),包括語法/詞法分析器,用于解析SPARQL查詢;隱式否定模式檢測器,用于檢測解析后的SPARQL查詢中的隱式否定模式;隱式否定模式轉換器,用于將檢測出的隱式否定模式轉換為顯式否定模式;分離器,用于將所述顯式否定模式和解析后的SPARQL查詢中的肯定模式分離;否定模式轉換器,用于將所述顯式否定模式轉換為否定部分的SQL語句;肯定模式轉換器,用于將所述肯定模式轉換為肯定部分的SQL語句;以及組合器,用于組合所述否定部分的SQL語句和所述肯定部分的SQL語句。
            2.如權利要求1所述的系統(tǒng),其中,所述隱式否定模式檢測器包括 用于將SPARQL查詢中的過濾條件范化為析取范式的部件;用于從所述過濾條件中提取具有不等變量對的條件的部件;用于提取SPARQL查詢中各個三元組所代表的連通子圖并且匹配出各自的最大連通相 似子圖的部件;以及用于根據各個最大連通相似子圖以及其與各自的連通子圖之間的差異匹配隱式否定 模式的部件。
            3.如權利要求1或2所述的系統(tǒng),其中,所述隱式否定模式轉換器包括 用于去除隱式否定模式中與肯定模式重復的三元組的部件;用于以肯定模式中的相應變量替換隱式否定模式中的附加三元組中的變量的部件;以及用于將表示“非”邏輯的標志附加到轉換后的附加三元組的部件。
            4.如權利要求1或2所述的系統(tǒng),其中,所述否定模式轉換器包括 用于搜索要轉換的SPARQL匹配單元的部件;用于建立新的SELECT語句的部件;用于生成WHERE子句的部件;用于生成SELECT子句的部件;用于生成FROM子句的部件;用于維護變量映射表的部件;以及用于判斷是否存在其他未轉換的匹配單元的部件。
            5.如權利要求1或2所述的系統(tǒng),其中,所述組合器包括用于將否定部分的SQL語句逐一地與組合后的肯定部分的SQL語句組合成結果SQL語 句的部件。
            6.如權利要求5所述的組合器,其中,所述結果SQL語句包含EXIST命令。
            7.如權利要求5所述的組合器,其中,所述結果SQL語句包含左外連接命令。
            8.如權利要求1或2所述的系統(tǒng),其中所述顯式否定模式的形式為三元組附加表示 “非”邏輯的標志。
            9.一種用于SPARQL查詢的轉換的方法,包括以下步驟 語法/詞法分析,解析SPARQL查詢;隱式否定模式檢測,檢測解析后的SPARQL查詢中的隱式否定模式; 隱式否定模式轉換,將檢測出的隱式否定模式轉換為顯式否定模式;將顯式否定模式和解析后的SPARQL查詢中的肯定模式分離; 否定模式轉換,將所述顯式否定模式轉換為否定部分的SQL語句; 肯定模式轉換,將所述肯定模式轉換為肯定部分的SQL語句;以及 組合所述否定部分的SQL語句和所述肯定部分的SQL語句。
            10.如權利要求9所述的方法,其中,所述隱式否定模式檢測步驟進一步包括以下步驟將SPARQL查詢中的過濾條件范化為析取范式; 從所述過濾條件中提取具有不等變量對的條件;提取SPARQL查詢中各個三元組所代表的連通子圖并且匹配出各自的最大連通相似子 圖;以及根據各個最大連通相似子圖以及其與各自的連通子圖之間的差異匹配隱式否定模式。
            11.如權利要求9或10所述的方法,其中,所述隱式否定模式轉換步驟進一步包括以下 步驟去除隱式否定模式中與肯定模式重復的三元組;以肯定模式中的相應變量替換隱式否定模式中的附加三元組中的變量;以及 將表示“非”邏輯的標志附加到轉換后的附加三元組。
            12.如權利要求9或10所述的方法,其中,所述否定模式轉換步驟進一步包括以下步驟搜索要轉換的SPARQL匹配單元; 建立新的SELECT語句; 生成WHERE子句; 生成SELECT子句; 生成FROM子句; 維護變量映射表;以及判斷是否存在其他未轉換的匹配單元,如果是,則返回到所述搜索步驟。
            13.如權利要求9或10所述的方法,其中,所述用于組合的步驟進一步包括 將否定部分的SQL語句逐一地與組合后的肯定部分的SQL語句組合成結果SQL語句。
            14.如權利要求13所述的方法,其中,所述結果SQL語句包含EXIST命令。
            15.如權利要求13所述的方法,其中,所述結果SQL語句包含左外連接命令。
            16.如權利要求9或10所述的方法,其中所述顯式否定模式的形式為三元組附加表示 “非”邏輯的標志。
            17.一種用于SPARQL查詢的轉換的系統(tǒng),包括 語法/詞法分析器,用于解析SPARQL查詢;模式檢測分離器,用于檢測解析后的SPARQL查詢中的隱式否定模式,并分離地輸出檢 測出的隱式否定模式和肯定模式;否定模式直接轉換器,用于將檢測出的隱式否定模式轉換為否定部分的SQL語句; 肯定模式轉換器,用于將所述肯定模式轉換為肯定部分的SQL語句;以及 組合器,用于組合所述否定部分的SQL語句和所述肯定部分的SQL語句。
            18.如權利要求17所述的系統(tǒng),其中,所述否定模式直接轉換器包括用于識別所述隱式否定模式中的附加三元組的部件;用于搜索由所述附加三元組和過濾條件構成的要轉換的SPARQL匹配單元的部件;用于建立新的SELECT語句的部件;用于生成WHERE子句的部件;用于生成SELECT子句的部件;用于生成FROM子句的部件;用于維護變量映射表的部件;以及用于判斷是否存在其他未轉換的匹配單元的部件。
            19.一種用于SPARQL查詢的轉換的方法,包括以下步驟 語法/詞法分析,解析SPARQL查詢;模式檢測分離,檢測解析后的SPARQL查詢中的隱式否定模式,并分離地輸出檢測出的 隱式否定模式和肯定模式;否定模式直接轉換,將檢測出的隱式否定模式轉換為否定部分的SQL語句; 肯定模式轉換,將所述肯定模式轉換為肯定部分的SQL語句;以及 組合所述否定部分的SQL語句和所述肯定部分的SQL語句。
            20.如權利要求19所述的方法,其中,所述否定模式直接轉換步驟進一步包括以下步驟識別所述隱式否定模式中的附加三元組;搜索由所述附加三元組和過濾條件構成的要轉換的SPARQL匹配單元; 建立新的SELECT語句; 生成WHERE子句; 生成SELECT子句; 生成FROM子句; 維護變量映射表;以及判斷是否存在其他未轉換的匹配單元,如果是,則返回到所述搜索步驟。
            全文摘要
            一種用于SPARQL查詢的轉換的系統(tǒng),包括語法/詞法分析器,用于解析SPARQL查詢;隱式否定模式檢測器,用于檢測解析后的SPARQL查詢中的隱式否定模式;隱式否定模式轉換器,用于將檢測出的隱式否定模式轉換為顯式否定模式。分離器,用于將顯式否定模式和解析后的SPARQL查詢語句中的肯定模式分離;否定模式轉換器,用于將所述顯式否定模式轉換為否定部分的SQL語句;肯定模式轉換器,用于將所述肯定模式轉換為肯定部分的SQL語句;以及組合器,用于組合所述否定部分的SQL語句和所述肯定部分的SQL語句。
            文檔編號G06F17/30GK101853257SQ20091013254
            公開日2010年10月6日 申請日期2009年3月31日 優(yōu)先權日2009年3月31日
            發(fā)明者孫行智, 曹鋒, 潘越, 胡崗, 馬力 申請人:國際商業(yè)機器公司
            網友詢問留言 已有0條留言
            • 還沒有人留言評論。精彩留言會獲得點贊!
            1
            婷婷六月激情在线综合激情,亚洲国产大片,久久中文字幕综合婷婷,精品久久久久久中文字幕,亚洲一区二区三区高清不卡,99国产精品热久久久久久夜夜嗨 ,欧美日韩亚洲综合在线一区二区,99国产精品电影,伊人精品线视天天综合,精品伊人久久久大香线蕉欧美
            亚洲精品1区 国产成人一级 91精品国产欧美一区二区 亚洲精品乱码久久久久久下载 国产精品久久久久久久伊一 九色国产 国产精品九九视频 伊人久久成人爱综合网 欧美日韩亚洲区久久综合 欧美日本一道免费一区三区 夜夜爽一区二区三区精品 欧美日韩高清一区二区三区 国产成人av在线 国产精品对白交换绿帽视频 国产视频亚洲 国产在线欧美精品 国产精品综合网 国产日韩精品欧美一区色 国产日韩精品欧美一区喷 欧美日韩在线观看区一二 国产区精品 欧美视频日韩视频 中文字幕天天躁日日躁狠狠躁97 视频一二三区 欧美高清在线精品一区二区不卡 国产精品揄拍一区二区久久 99久久综合狠狠综合久久aⅴ 亚洲乱码视频在线观看 日韩在线第二页 亚洲精品无码专区在线播放 成人亚洲网站www在线观看 欧美三级一区二区 99久久精品免费看国产高清 91麻豆国产在线观看 最新日韩欧美不卡一二三区 成人在线观看不卡 日韩国产在线 在线亚洲精品 亚洲午夜久久久久中文字幕 国产精品成人久久久久久久 精品国产一区二区在线观看 欧美精品国产一区二区三区 中文在线播放 亚洲第一页在线视频 国产午夜精品福利久久 九色国产 精品国产九九 国产永久视频 久久精品人人做人人综合试看 国产一区二区三区免费观看 亚洲精品国产电影 9999热视频 国产精品资源在线 麻豆久久婷婷国产综合五月 国产精品免费一级在线观看 亚洲国产一区二区三区青草影视 中文在线播放 国产成人综合在线 国产在线观看色 国产亚洲三级 国产片一区二区三区 久久99精品久久久久久牛牛影视 亚洲欧美日韩国产 四虎永久免费网站 国产一毛片 国产精品视频在 九九热在线精品 99精品福利视频 色婷婷色99国产综合精品 97成人精品视频在线播放 精品久久久久久中文字幕 亚洲欧美一区二区三区孕妇 亚洲欧美成人网 日韩高清在线二区 国产尤物在线观看 在线不卡一区二区 91网站在线看 韩国精品福利一区二区 欧美日韩国产成人精品 99热精品久久 国产精品免费视频一区 高清视频一区 精品九九久久 欧美日韩在线观看免费 91欧美激情一区二区三区成人 99福利视频 亚洲国产精品91 久热国产在线 精品久久久久久中文字幕女 国产精品久久久久久久久99热 成人自拍视频网 国产精品视频久久久久久 久久影院国产 国产玖玖在线观看 99精品在线免费 亚洲欧美一区二区三区导航 久久久久久久综合 国产欧美日韩精品高清二区综合区 国产精品视频自拍 亚洲一级片免费 久久久久久九九 国产欧美自拍视频 视频一区二区在线观看 欧美日韩一区二区三区久久 中文在线亚洲 伊人热人久久中文字幕 日韩欧美亚洲国产一区二区三区 欧美亚洲国产成人高清在线 欧美日韩国产码高清综合人成 国产性大片免费播放网站 亚洲午夜综合网 91精品久久一区二区三区 国产无套在线播放 国产精品视频网站 国产成人亚洲精品老王 91在线网站 国产视频97 欧美黑人欧美精品刺激 国产一区二区三区免费在线视频 久久久国产精品免费看 99re6久精品国产首页 久久精品91 国产成人一级 国产成人精品曰本亚洲 日本福利在线观看 伊人成综合网 久久综合一本 国产综合久久久久久 久久精品成人免费看 久久福利 91精品国产91久久久久久麻豆 亚洲精品成人在线 亚洲伊人久久精品 欧美日本二区 国产永久视频 国产一区二 一区二区福利 国产一毛片 亚洲精品1区 毛片一区二区三区 伊人久久大香线蕉综合影 国产欧美在线观看一区 亚洲国产欧洲综合997久久 国产一区二区免费视频 国产91精品对白露脸全集观看 久久亚洲国产伦理 欧美成人伊人久久综合网 亚洲性久久久影院 久久99国产精一区二区三区! 91精品国产欧美一区二区 欧美日韩亚洲区久久综合 日韩精品一二三区 久久久夜色精品国产噜噜 国产在线精品福利91香蕉 久久久久久久亚洲精品 97se色综合一区二区二区 91国语精品自产拍在线观看性色 91久久国产综合精品女同我 日韩中文字幕a 国产成人亚洲日本精品 久久国产精品-国产精品 久久国产经典视频 久久国产精品伦理 亚洲第一页在线视频 国产精品久久久久三级 日韩毛片网 久久免费高清视频 麻豆国产在线观看一区二区 91麻豆国产福利在线观看 国产成人精品男人的天堂538 一区二区三区中文字幕 免费在线视频一区 欧美日韩国产成人精品 国产综合网站 国产资源免费观看 亚洲精品亚洲人成在线播放 精品久久久久久中文字幕专区 亚洲人成人毛片无遮挡 国产一起色一起爱 国产香蕉精品视频在 九九热免费观看 日韩亚洲欧美一区 九九热精品在线观看 精品久久久久久中文字幕专区 亚洲欧美自拍偷拍 国产精品每日更新 久久久久国产一级毛片高清板 久久天天躁狠狠躁夜夜中文字幕 久久精品片 日韩在线毛片 国产成人精品本亚洲 国产成人精品一区二区三区 九九热在线观看 国产r级在线观看 国产欧美日韩精品高清二区综合区 韩国电影一区二区 国产精品毛片va一区二区三区 五月婷婷伊人网 久久一区二区三区免费 一本色道久久综合狠狠躁篇 亚洲综合色站 国产尤物在线观看 亚洲一区亚洲二区 免费在线视频一区 欧洲精品视频在线观看 日韩中文字幕a 中文字幕日本在线mv视频精品 91精品在线免费视频 精品国产免费人成在线观看 精品a级片 中文字幕日本在线mv视频精品 日韩在线精品视频 婷婷丁香色 91精品国产高清久久久久 国产成人精品日本亚洲直接 五月综合视频 欧美日韩在线亚洲国产人 精液呈暗黄色 亚洲乱码一区 久久精品中文字幕不卡一二区 亚洲天堂精品在线 激情婷婷综合 国产免费久久精品久久久 国产精品亚洲二区在线 久久免费播放视频 五月婷婷丁香综合 在线亚洲欧美日韩 久久免费精品高清麻豆 精品久久久久久中文字幕 亚洲一区网站 国产精品福利社 日韩中文字幕免费 亚洲综合丝袜 91精品在线播放 国产精品18 亚洲日日夜夜 伊人久久大香线蕉综合影 亚洲精品中文字幕乱码影院 亚洲一区二区黄色 亚洲第一页在线视频 一区二区在线观看视频 国产成人福利精品视频 亚洲高清二区 国内成人免费视频 精品亚洲性xxx久久久 国产精品合集一区二区三区 97av免费视频 国产一起色一起爱 国产区久久 国产资源免费观看 99精品视频免费 国产成人一级 国产精品九九免费视频 欧美91精品久久久久网免费 99热国产免费 久久精品色 98精品国产综合久久 久久精品播放 中文字幕视频免费 国产欧美日韩一区二区三区在线 精品久久蜜桃 国产小视频精品 一本色道久久综合狠狠躁篇 91在线免费观看 亚洲精品区 伊人成综合网 伊人热人久久中文字幕 伊人黄色片 99国产精品热久久久久久夜夜嗨 久久免费精品视频 亚洲一区二区三区高清不卡 久久久久国产一级毛片高清板 国产片一区二区三区 久久狠狠干 99久久婷婷国产综合精品电影 国产99区 国产精品成人久久久久 久久狠狠干 青青国产在线观看 亚洲高清国产拍精品影院 国产精品一区二区av 九九热在线免费视频 伊人久久国产 国产精品久久久久久久久久一区 在线观看免费视频一区 国产精品自在在线午夜区app 国产精品综合色区在线观看 国产毛片久久久久久国产毛片 97国产免费全部免费观看 国产精品每日更新 国产尤物视频在线 九九视频这里只有精品99 一本一道久久a久久精品综合 久久综合给会久久狠狠狠 国产成人精品男人的天堂538 欧美一区二区高清 毛片一区二区三区 国产欧美日韩在线观看一区二区三区 在线国产二区 欧美不卡网 91在线精品中文字幕 在线国产福利 国内精品91久久久久 91亚洲福利 日韩欧美国产中文字幕 91久久精品国产性色也91久久 亚洲性久久久影院 欧美精品1区 国产热re99久久6国产精品 九九热免费观看 国产精品欧美日韩 久久久久国产一级毛片高清板 久久国产经典视频 日韩欧美亚洲国产一区二区三区 欧美亚洲综合另类在线观看 国产精品自在在线午夜区app 97中文字幕在线观看 视频一二三区 精品国产一区在线观看 国产欧美日韩在线一区二区不卡 欧美一区二三区 伊人成人在线观看 国内精品91久久久久 97在线亚洲 国产在线不卡一区 久久久全免费全集一级全黄片 国产精品v欧美精品∨日韩 亚洲毛片网站 在线不卡一区二区 99re热在线视频 久久激情网 国产毛片一区二区三区精品 久久亚洲综合色 中文字幕视频免费 国产视频亚洲 婷婷伊人久久 国产一区二区免费播放 久久99国产精品成人欧美 99国产在线视频 国产成人免费视频精品一区二区 国产不卡一区二区三区免费视 国产码欧美日韩高清综合一区 久久精品国产主播一区二区 国产一区电影 久久精品国产夜色 国产精品国产三级国产 日韩一区二区三区在线 久久97久久97精品免视看 久久国产免费一区二区三区 伊人久久大香线蕉综合电影网 99re6久精品国产首页 久久激情网 亚洲成人高清在线 国产精品网址 国产成人精品男人的天堂538 香蕉国产综合久久猫咪 国产专区中文字幕 91麻豆精品国产高清在线 久久国产经典视频 国产精品成人va在线观看 国产精品爱啪在线线免费观看 日本精品久久久久久久久免费 亚洲综合一区二区三区 久久五月网 精品国产网红福利在线观看 久久综合亚洲伊人色 亚洲国产精品久久久久久网站 在线日韩国产 99国产精品热久久久久久夜夜嗨 国产综合精品在线 国产区福利 精品亚洲综合久久中文字幕 国产制服丝袜在线 毛片在线播放网站 在线观看免费视频一区 国产精品久久久精品三级 亚洲国产电影在线观看 最新日韩欧美不卡一二三区 狠狠综合久久综合鬼色 日本精品1在线区 国产日韩一区二区三区在线播放 欧美日韩精品在线播放 亚洲欧美日韩国产一区二区三区精品 久久综合久久网 婷婷六月激情在线综合激情 亚洲乱码一区 国产专区91 97av视频在线观看 精品久久久久久中文字幕 久久五月视频 国产成人福利精品视频 国产精品网址 中文字幕视频在线 精品一区二区三区免费视频 伊人手机在线视频 亚洲精品中文字幕乱码 国产在线视频www色 色噜噜国产精品视频一区二区 精品亚洲成a人在线观看 国产香蕉尹人综合在线 成人免费一区二区三区在线观看 国产不卡一区二区三区免费视 欧美精品久久天天躁 国产专区中文字幕 久久精品国产免费中文 久久精品国产免费一区 久久无码精品一区二区三区 国产欧美另类久久久精品免费 欧美精品久久天天躁 亚洲精品在线视频 国产视频91在线 91精品福利一区二区三区野战 日韩中文字幕免费 国产精品99一区二区三区 欧美成人高清性色生活 国产精品系列在线观看 亚洲国产福利精品一区二区 国产成人在线小视频 国产精品久久久久免费 99re热在线视频 久久久久久久综合 一区二区国产在线播放 成人国产在线视频 亚洲精品乱码久久久久 欧美日韩一区二区综合 精品久久久久免费极品大片 中文字幕视频二区 激情粉嫩精品国产尤物 国产成人精品一区二区视频 久久精品中文字幕首页 亚洲高清在线 国产精品亚洲一区二区三区 伊人久久艹 中文在线亚洲 国产精品一区二区在线播放 国产精品九九免费视频 亚洲二区在线播放 亚洲狠狠婷婷综合久久久久网站 亚洲欧美日韩网站 日韩成人精品 亚洲国产一区二区三区青草影视 91精品国产福利在线观看 国产精品久久久久久久久99热 国产一区二区精品尤物 久碰香蕉精品视频在线观看 亚洲日日夜夜 在线不卡一区二区 国产午夜亚洲精品 九九热在线视频观看这里只有精品 伊人手机在线视频 91免费国产精品 日韩欧美中字 91精品国产91久久久久 国产全黄三级播放 视频一区二区三区免费观看 国产开裆丝袜高跟在线观看 国产成人欧美 激情综合丝袜美女一区二区 国产成人亚洲综合无 欧美精品一区二区三区免费观看 欧美亚洲国产日韩 日韩亚州 国产欧美日韩精品高清二区综合区 亚洲午夜国产片在线观看 精品久久久久久中文字幕 欧美精品1区 久久伊人久久亚洲综合 亚洲欧美日韩精品 国产成人精品久久亚洲高清不卡 久久福利影视 国产精品99精品久久免费 久久久久免费精品视频 国产日产亚洲精品 亚洲国产午夜电影在线入口 精品无码一区在线观看 午夜国产精品视频 亚洲一级片免费 伊人久久大香线蕉综合影 国产精品久久影院 久碰香蕉精品视频在线观看 www.欧美精品 在线小视频国产 亚洲国产天堂久久综合图区 欧美一区二区三区不卡 日韩美女福利视频 九九精品免视频国产成人 不卡国产00高中生在线视频 亚洲第一页在线视频 欧美日韩在线播放成人 99re视频这里只有精品 国产精品91在线 精品乱码一区二区三区在线 国产区久久 91麻豆精品国产自产在线观看一区 日韩精品成人在线 九九热在线观看 国产精品久久不卡日韩美女 欧美一区二区三区综合色视频 欧美精品免费一区欧美久久优播 国产精品网址 国产专区中文字幕 国产精品欧美亚洲韩国日本久久 日韩美香港a一级毛片 久久精品123 欧美一区二区三区免费看 99r在线视频 亚洲精品国产字幕久久vr 国产综合激情在线亚洲第一页 91免费国产精品 日韩免费小视频 亚洲国产精品综合一区在线 国产亚洲第一伦理第一区 在线亚洲精品 国产精品一区二区制服丝袜 国产在线成人精品 九九精品免视频国产成人 亚洲国产网 欧美日韩亚洲一区二区三区在线观看 在线亚洲精品 欧美一区二区三区高清视频 国产成人精品男人的天堂538 欧美日韩在线观看区一二 亚洲欧美一区二区久久 久久精品中文字幕首页 日本高清www午夜视频 久久精品国产免费 久久999精品 亚洲国产精品欧美综合 88国产精品视频一区二区三区 91久久偷偷做嫩草影院免费看 国产精品夜色视频一区二区 欧美日韩导航 国产成人啪精品午夜在线播放 一区二区视频在线免费观看 99久久精品国产自免费 精液呈暗黄色 久久99国产精品 日本精品久久久久久久久免费 精品国产97在线观看 99re视频这里只有精品 国产视频91在线 999av视频 亚洲美女视频一区二区三区 久久97久久97精品免视看 亚洲国产成人久久三区 99久久亚洲国产高清观看 日韩毛片在线视频 综合激情在线 91福利一区二区在线观看 一区二区视频在线免费观看 激情粉嫩精品国产尤物 国产成人精品曰本亚洲78 国产成人精品本亚洲 国产精品成人免费视频 国产成人啪精品视频免费软件 久久精品国产亚洲妲己影院 国产精品成人久久久久久久 久久大香线蕉综合爱 欧美一区二区三区高清视频 99热国产免费 在线观看欧美国产 91精品视频在线播放 国产精品福利社 欧美精品一区二区三区免费观看 国产一区二区免费视频 国产午夜精品一区二区 精品视频在线观看97 91精品福利久久久 国产一区福利 国产综合激情在线亚洲第一页 国产精品久久久久久久久久久不卡 九色国产 在线日韩国产 黄网在线观看 亚洲一区小说区中文字幕 中文字幕丝袜 日本二区在线观看 日本国产一区在线观看 欧美日韩一区二区三区久久 欧美精品亚洲精品日韩专 国产日产亚洲精品 久久综合九色综合欧美播 亚洲国产欧美无圣光一区 欧美视频区 亚洲乱码视频在线观看 久久无码精品一区二区三区 九九热精品免费视频 久久99精品久久久久久牛牛影视 国产精品成久久久久三级 国产一区福利 午夜国产精品视频 日本二区在线观看 99久久网站 国产亚洲天堂 精品国产一区二区三区不卡 亚洲国产日韩在线一区 国产成人综合在线观看网站 久久免费高清视频 欧美在线导航 午夜精品久久久久久99热7777 欧美久久综合网 国产小视频精品 国产尤物在线观看 亚洲国产精品综合一区在线 欧美一区二区三区不卡视频 欧美黑人欧美精品刺激 日本福利在线观看 久久国产偷 国产手机精品一区二区 国产热re99久久6国产精品 国产高清啪啪 欧美亚洲国产成人高清在线 国产在线第三页 亚洲综合一区二区三区 99r在线视频 99精品久久久久久久婷婷 国产精品乱码免费一区二区 国产在线精品福利91香蕉 国产尤物视频在线 五月婷婷亚洲 中文字幕久久综合伊人 亚洲精品一级毛片 99国产精品电影 在线视频第一页 久久99国产精品成人欧美 国产白白视频在线观看2 成人精品一区二区www 亚洲成人网在线观看 麻豆91在线视频 色综合合久久天天综合绕视看 久久精品国产免费高清 国产不卡一区二区三区免费视 欧美国产中文 99精品欧美 九九在线精品 国产中文字幕在线免费观看 国产一区中文字幕在线观看 国产成人一级 国产精品一区二区制服丝袜 国产一起色一起爱 亚洲精品成人在线 亚洲欧美精品在线 国产欧美自拍视频 99精品久久久久久久婷婷 久99视频 国产热re99久久6国产精品 视频一区亚洲 国产精品视频分类 国产精品成在线观看 99re6久精品国产首页 亚洲在成人网在线看 亚洲国产日韩在线一区 久久国产三级 日韩国产欧美 欧美在线一区二区三区 国产精品美女一级在线观看 成人午夜免费福利视频 亚洲天堂精品在线 91精品国产手机 欧美日韩视频在线播放 狠狠综合久久综合鬼色 九一色视频 青青视频国产 亚洲欧美自拍一区 中文字幕天天躁日日躁狠狠躁97 日韩免费大片 996热视频 伊人成综合网 亚洲天堂欧美 日韩精品亚洲人成在线观看 久久综合给会久久狠狠狠 日韩精品亚洲人成在线观看 日韩国产欧美 亚洲成aⅴ人片在线影院八 亚洲精品1区 99久久精品免费 国产精品高清在线观看 国产精品久久久免费视频 在线亚洲欧美日韩 91在线看视频 国产精品96久久久久久久 欧美日韩国产成人精品 91在线亚洲 热久久亚洲 国产精品美女免费视频观看 日韩在线毛片 亚洲永久免费视频 九九免费在线视频 亚洲一区网站 日本高清二区视频久二区 精品国产美女福利在线 伊人久久艹 国产精品久久久久三级 欧美成人精品第一区二区三区 99久久精品国产自免费 在线观看日韩一区 国产中文字幕一区 成人免费午夜视频 欧美日韩另类在线 久久99国产精品成人欧美 色婷婷中文网 久久天天躁夜夜躁狠狠躁2020 欧美成人伊人久久综合网 国产精品福利资源在线 国产伦精品一区二区三区高清 国产精品亚洲综合色区韩国 亚洲一区欧美日韩 色综合视频 国语自产精品视频在线区 国产高清a 成人国内精品久久久久影 国产在线精品香蕉综合网一区 国产不卡在线看 国产成人精品精品欧美 国产欧美日韩综合精品一区二区三区 韩国电影一区二区 国产在线视频www色 91中文字幕在线一区 国产人成午夜免视频网站 亚洲综合一区二区三区 色综合视频一区二区观看 久久五月网 九九热精品在线观看 国产一区二区三区国产精品 99久热re在线精品996热视频 亚洲国产网 在线视频亚洲一区 日韩字幕一中文在线综合 国产高清一级毛片在线不卡 精品国产色在线 国产高清视频一区二区 精品日本久久久久久久久久 亚洲国产午夜精品乱码 成人免费国产gav视频在线 日韩欧美一区二区在线观看 欧美曰批人成在线观看 韩国电影一区二区 99re这里只有精品6 日韩精品一区二区三区视频 99re6久精品国产首页 亚洲欧美一区二区三区导航 欧美色图一区二区三区 午夜精品视频在线观看 欧美激情在线观看一区二区三区 亚洲热在线 成人国产精品一区二区网站 亚洲一级毛片在线播放 亚洲一区小说区中文字幕 亚洲午夜久久久久影院 国产自产v一区二区三区c 国产精品视频免费 久久调教视频 国产成人91激情在线播放 国产精品欧美亚洲韩国日本久久 久久亚洲日本不卡一区二区 91中文字幕网 成人国产在线视频 国产视频91在线 欧美成人精品第一区二区三区 国产精品福利在线 久久综合九色综合精品 欧美一区二区三区精品 久久国产综合尤物免费观看 久久99青青久久99久久 日韩精品免费 久久国产精品999 91亚洲视频在线观看 国产精品igao视频 色综合区 在线亚洲欧国产精品专区 国产一区二区三区在线观看视频 亚洲精品成人在线 一区二区国产在线播放 中文在线亚洲 亚洲精品第一国产综合野 国产一区二区精品久久 一区二区三区四区精品视频 99热精品久久 中文字幕视频二区 国产成人精品男人的天堂538 99精品影视 美女福利视频一区二区 久久午夜夜伦伦鲁鲁片 综合久久久久久久综合网 国产精品国产欧美综合一区 国产99视频在线观看 国产亚洲女在线精品 婷婷影院在线综合免费视频 国产亚洲3p一区二区三区 91成人爽a毛片一区二区 亚洲一区二区高清 国产欧美亚洲精品第二区首页 欧美日韩导航 亚洲高清二区 欧美激情观看一区二区久久 日韩毛片在线播放 亚洲欧美日韩高清中文在线 亚洲日本在线播放 国产精品一区二区制服丝袜 精品国产一区二区三区不卡 国产不卡在线看 国产欧美网站 四虎永久在线观看视频精品 国产黄色片在线观看 夜夜综合 一本色道久久综合狠狠躁篇 欧美亚洲综合另类在线观看 国产91在线看 伊人久久国产 欧美一区二区在线观看免费网站 国产精品久久久久三级 久久福利 日韩中文字幕a 亚洲午夜久久久久影院 91在线高清视频 国产亚洲一区二区三区啪 久久人精品 国产精品亚洲午夜一区二区三区 综合久久久久久 久久伊人一区二区三区四区 国产综合久久久久久 日韩一区精品视频在线看 国产精品日韩欧美制服 日本精品1在线区 99re视频 无码av免费一区二区三区试看 国产视频1区 日韩欧美中文字幕一区 日本高清中文字幕一区二区三区a 亚洲国产欧美无圣光一区 国产在线视频一区二区三区 欧美国产第一页 在线亚洲欧美日韩 日韩中文字幕第一页 在线不卡一区二区 伊人久久青青 国产精品一区二区在线播放 www.五月婷婷 麻豆久久婷婷国产综合五月 亚洲精品区 久久国产欧美另类久久久 99在线视频免费 伊人久久中文字幕久久cm 久久精品成人免费看 久久这里只有精品首页 88国产精品视频一区二区三区 中文字幕日本在线mv视频精品 国产在线精品成人一区二区三区 伊人精品线视天天综合 亚洲一区二区黄色 国产尤物视频在线 亚洲精品99久久久久中文字幕 国产一区二区三区免费观看 伊人久久大香线蕉综合电影网 国产成人精品区在线观看 日本精品一区二区三区视频 日韩高清在线二区 久久免费播放视频 一区二区成人国产精品 国产精品免费精品自在线观看 亚洲精品视频二区 麻豆国产精品有码在线观看 精品日本一区二区 亚洲欧洲久久 久久中文字幕综合婷婷 中文字幕视频在线 国产成人精品综合在线观看 91精品国产91久久久久福利 精液呈暗黄色 香蕉国产综合久久猫咪 国产专区精品 亚洲精品无码不卡 国产永久视频 亚洲成a人片在线播放观看国产 一区二区国产在线播放 亚洲一区二区黄色 欧美日韩在线观看视频 亚洲精品另类 久久国产综合尤物免费观看 国产一区二区三区国产精品 高清视频一区 国产精品igao视频 国产精品资源在线 久久综合精品国产一区二区三区 www.五月婷婷 精品色综合 99热国产免费 麻豆福利影院 亚洲伊人久久大香线蕉苏妲己 久久电影院久久国产 久久精品伊人 在线日韩理论午夜中文电影 亚洲国产欧洲综合997久久 伊人国产精品 久草国产精品 欧美一区精品二区三区 亚洲成人高清在线 91免费国产精品 日韩精品福利在线 国产一线在线观看 国产不卡在线看 久久99青青久久99久久 亚洲精品亚洲人成在线播放 99久久免费看国产精品 国产日本在线观看 青草国产在线视频 麻豆久久婷婷国产综合五月 国产中文字幕一区 91久久精品国产性色也91久久 国产一区a 国产欧美日韩成人 国产亚洲女在线精品 一区二区美女 中文字幕在线2021一区 在线小视频国产 久久这里只有精品首页 国产在线第三页 欧美日韩中文字幕 在线亚洲+欧美+日本专区 精品国产一区二区三区不卡 久久这里精品 欧美在线va在线播放 精液呈暗黄色 91精品国产手机 91在线免费播放 欧美视频亚洲色图 欧美国产日韩精品 日韩高清不卡在线 精品视频免费观看 欧美日韩一区二区三区四区 国产欧美亚洲精品第二区首页 亚洲韩精品欧美一区二区三区 国产精品视频免费 在线精品小视频 久久午夜夜伦伦鲁鲁片 国产无套在线播放 久热这里只精品99re8久 欧美久久久久 久久香蕉国产线看观看精品蕉 国产成人精品男人的天堂538 亚洲人成网站色7799在线观看 日韩在线第二页 一本色道久久综合狠狠躁篇 国产一区二区三区不卡在线观看 亚洲乱码在线 在线观看欧美国产 久久福利青草精品资源站免费 国产玖玖在线观看 在线亚洲精品 亚洲成aⅴ人在线观看 精品91在线 欧美一区二三区 日韩中文字幕视频在线 日本成人一区二区 日韩免费专区 国内精品在线观看视频 久久国产综合尤物免费观看 国产精品系列在线观看 一本一道久久a久久精品综合 亚洲免费播放 久久精品国产免费 久久人精品 亚洲毛片网站 亚洲成a人一区二区三区 韩国福利一区二区三区高清视频 亚洲精品天堂在线 一区二区三区中文字幕 亚洲国产色婷婷精品综合在线观看 亚洲国产成人久久笫一页 999国产视频 国产精品香港三级在线电影 欧美日韩一区二区三区四区 日韩国产欧美 国产精品99一区二区三区 午夜国产精品理论片久久影院 亚洲精品中文字幕麻豆 亚洲国产高清视频 久久免费手机视频 日韩a在线观看 五月婷婷亚洲 亚洲精品中文字幕麻豆 中文字幕丝袜 www国产精品 亚洲天堂精品在线 亚洲乱码一区 国产日韩欧美三级 久久999精品 伊人热人久久中文字幕 久热国产在线视频 国产欧美日韩在线观看一区二区三区 国产一二三区在线 日韩国产欧美 91精品国产91久久久久 亚洲一区小说区中文字幕 精品一区二区免费视频 国产精品视频免费 国产精品亚洲综合色区韩国 亚洲国产精品成人午夜在线观看 欧美国产日韩精品 中文字幕精品一区二区精品