• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于查詢語言轉(zhuǎn)換的多源數(shù)據(jù)統(tǒng)一訪問框架①

    2021-10-11 06:46:20李躍鵬溫亮明黎建輝
    計算機系統(tǒng)應(yīng)用 2021年9期
    關(guān)鍵詞:提供者數(shù)據(jù)模型數(shù)據(jù)源

    李躍鵬,溫亮明,黎建輝

    1(中國科學(xué)院 計算機網(wǎng)絡(luò)信息中心,北京 100190)

    2(中國科學(xué)院大學(xué),北京 100049)

    1 引言

    大數(shù)據(jù)應(yīng)用系統(tǒng)是由多種數(shù)據(jù)處理工具構(gòu)成的集成性系統(tǒng),其數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)存儲位置、數(shù)據(jù)管理與分析工具等均具有多樣化特點[1,2].例如在電商系統(tǒng)中,通過關(guān)系數(shù)據(jù)庫管理用戶交易數(shù)據(jù),商品數(shù)據(jù)存儲于文檔數(shù)據(jù)庫;為加快系統(tǒng)響應(yīng)速度,通過Key-Value 數(shù)據(jù)庫緩存高頻率訪問數(shù)據(jù);統(tǒng)計報表使用流處理工具、SQL 查詢引擎等進行歷史數(shù)據(jù)統(tǒng)計分析.在科學(xué)大數(shù)據(jù)管理領(lǐng)域,科研項目通過領(lǐng)域關(guān)系型數(shù)據(jù)庫管理從傳感器、遙感衛(wèi)星等科學(xué)裝置獲得的實驗數(shù)據(jù);使用領(lǐng)域非結(jié)構(gòu)化數(shù)據(jù)庫進行高能物理對撞機事件數(shù)據(jù)的存儲與索引;通過圖數(shù)據(jù)庫管理物種、基因組等知識圖譜數(shù)據(jù);借助領(lǐng)域數(shù)據(jù)分析工具對各類實驗數(shù)據(jù)進行統(tǒng)計與交叉分析,進而得出實驗結(jié)論[3].大數(shù)據(jù)集成系統(tǒng)使用的數(shù)據(jù)處理工具分為兩類:數(shù)據(jù)提供者使用標(biāo)準(zhǔn)查詢語言、WebService 等接口方式提供數(shù)據(jù)庫、開放平臺等基礎(chǔ)數(shù)據(jù)管理服務(wù);數(shù)據(jù)消費者調(diào)用多個數(shù)據(jù)提供者接口獲取數(shù)據(jù),并通過標(biāo)準(zhǔn)查詢語言、WebService 等接口對多源異構(gòu)數(shù)據(jù)進行查詢、統(tǒng)計、分析、展示等操作,如SQL 查詢引擎、數(shù)據(jù)倉庫、管理系統(tǒng)等.數(shù)據(jù)消費者與數(shù)據(jù)提供者之間的數(shù)據(jù)訪問方式具有以下特點:

    (1)數(shù)據(jù)訪問接口各異:數(shù)據(jù)提供者接口需經(jīng)轉(zhuǎn)換才能符合數(shù)據(jù)消費者的接口格式要求.比如報表系統(tǒng)中,數(shù)據(jù)消費者使用SQL 語言對數(shù)據(jù)進行統(tǒng)計,然而數(shù)據(jù)提供者的服務(wù)接口為文檔查詢、WebService 以及文件等形式.

    (2)數(shù)據(jù)訪問模式多樣:數(shù)據(jù)消費者與數(shù)據(jù)提供者之間是多對多數(shù)據(jù)訪問方式.例如數(shù)據(jù)倉庫使用SQL語言對多個異構(gòu)數(shù)據(jù)源進行分析;而異構(gòu)數(shù)據(jù)源除了為數(shù)據(jù)倉庫提供服務(wù),還會被多個部門或外部應(yīng)用系統(tǒng)消費.

    (3)松耦合方式集成:數(shù)據(jù)消費者與數(shù)據(jù)提供者獨立運行、部署與迭代更新.例如作為數(shù)據(jù)提供者,存儲用戶、業(yè)務(wù)與實驗等數(shù)據(jù)的數(shù)據(jù)庫會根據(jù)技術(shù)、場景等因素進行更新,然而數(shù)據(jù)消費者的訪問接口卻并不改變;相反,數(shù)據(jù)消費者會根據(jù)業(yè)務(wù)、性能等需要調(diào)整數(shù)據(jù)消費者的數(shù)據(jù)訪問接口.

    基于以上數(shù)據(jù)訪問特點,要實現(xiàn)數(shù)據(jù)提供者接口與消費者接口的交互協(xié)作,集成系統(tǒng)必須提供一個接口適配器以滿足雙方需要,目前已有研究特定應(yīng)用場景接口適配器的相關(guān)工作.隨著數(shù)據(jù)提供者與數(shù)據(jù)消費者工具的更新變化,這種針對特定應(yīng)用場景的一對一型接口適配器勢必難以適應(yīng)數(shù)據(jù)遷移與工具迭代更新需要,因此我們提出了一種基于查詢語言轉(zhuǎn)換的多源數(shù)據(jù)統(tǒng)一訪問框架,通過引入中間數(shù)據(jù)模型和雙端適配器將數(shù)據(jù)訪問接口API 與實際數(shù)據(jù)模型相分離,使得集成系統(tǒng)具有更好的靈活性和擴展性.

    2 相關(guān)工作

    接口適配器以數(shù)據(jù)消費者數(shù)據(jù)模型或數(shù)據(jù)提供者數(shù)據(jù)模型作為中間數(shù)據(jù)模型.首先將數(shù)據(jù)提供者或數(shù)據(jù)消費者的Schema 映射為中間數(shù)據(jù)模型,然后通過數(shù)據(jù)轉(zhuǎn)換或查詢語言轉(zhuǎn)換方式完成接口適配轉(zhuǎn)換.數(shù)據(jù)轉(zhuǎn)換適配器將數(shù)據(jù)提供者所持有數(shù)據(jù)動態(tài)或一次性轉(zhuǎn)換為消費者可識別的數(shù)據(jù)格式進行存儲或處理;查詢語言轉(zhuǎn)換適配器將數(shù)據(jù)消費者端的查詢語言轉(zhuǎn)換為數(shù)據(jù)提供者端的查詢語言.

    根據(jù)數(shù)據(jù)消費者對數(shù)據(jù)提供者的訪問方式,數(shù)據(jù)消費者與數(shù)據(jù)提供者的接口適配方式分為一對一適配、多對一適配以及多對多適配3 種(如圖1(a)至圖1(c)所示).

    (1)一對一適配:采用查詢語言轉(zhuǎn)換方式將數(shù)據(jù)消費者接口轉(zhuǎn)換為數(shù)據(jù)提供者查詢語言.例如文獻(xiàn)Sql2Saprql (RETRO)[4]、Sparql2Sql (D2RQ)[5]、Cypher2sql (Cytosm)[6]等提出了將不同查詢語言轉(zhuǎn)換為SQL 查詢語句或?qū)QL 查詢語句轉(zhuǎn)換為其它查詢語言的方法.

    (2)多對一適配:以消費者數(shù)據(jù)模型為中間數(shù)據(jù)模型,數(shù)據(jù)提供者向統(tǒng)一模型動態(tài)提供適配數(shù)據(jù).例如SparkSQL[7],Presto[8]、Impala[9]等SQL 查詢引擎適配器將關(guān)系數(shù)據(jù)庫、文檔數(shù)據(jù)庫、CSV 文件、JSON 文件等數(shù)據(jù)源動態(tài)轉(zhuǎn)換為臨時關(guān)系表來實現(xiàn)SQL 統(tǒng)一查詢.Gradoop 適配器將異構(gòu)數(shù)據(jù)動態(tài)轉(zhuǎn)換為屬性圖模型的節(jié)點和邊來實現(xiàn)Cypher 語言統(tǒng)一查詢[10].

    (3)多對多適配:為數(shù)據(jù)提供者和數(shù)據(jù)消費者提供接口適配.例如Polystore[11]要求系統(tǒng)支持多種全局?jǐn)?shù)據(jù)模型與本地數(shù)據(jù)模型之間的轉(zhuǎn)換,通過數(shù)據(jù)提供者與數(shù)據(jù)消費之間的成對查詢語言轉(zhuǎn)換適配器為上層應(yīng)用提供多樣化數(shù)據(jù)查詢接口.

    以數(shù)據(jù)訪問接口適配方法存在的問題是中間數(shù)據(jù)模型與查詢語言模型綁定,使得接口適配器只在單個數(shù)據(jù)提供者與數(shù)據(jù)消費者之間產(chǎn)生效用.對于數(shù)據(jù)轉(zhuǎn)換適配器,當(dāng)多個數(shù)據(jù)消費者的數(shù)據(jù)模型不同時,數(shù)據(jù)提供者必須向數(shù)據(jù)消費者提供不同的適配數(shù)據(jù).對于查詢語言轉(zhuǎn)換適配器,多對多訪問同樣必須采用case by case 方式實現(xiàn)成對查詢語言轉(zhuǎn)換.當(dāng)系統(tǒng)中存在n個異構(gòu)數(shù)據(jù)提供者和n個數(shù)據(jù)消費者時,要支持多對多訪問就必須開發(fā)n!個適配器,如果新增一個異構(gòu)數(shù)據(jù)提供者則需要實現(xiàn)2n個轉(zhuǎn)換器,從而影響系統(tǒng)對新數(shù)據(jù)源的擴展性.因此,本文嘗試探索提出一種雙適配器數(shù)據(jù)統(tǒng)一訪問框架(如圖1(d)所示),通過數(shù)據(jù)提供者與數(shù)據(jù)消費者兩端適配器將查詢語言與數(shù)據(jù)模型分離,從而對新數(shù)據(jù)提供者與數(shù)據(jù)消費者的支持只要按需實現(xiàn)一個適配器即可.

    圖1 數(shù)據(jù)提供者與消費者接口適配方式

    3 框架設(shè)計

    雙Adapter 數(shù)據(jù)統(tǒng)一訪問框架BAF4DUA 將多個異構(gòu)數(shù)據(jù)消費者與數(shù)據(jù)提供者接口進行適配,為上層應(yīng)用提供多樣化的數(shù)據(jù)服務(wù)接口.該框架使用中間模型統(tǒng)一表示數(shù)據(jù)提供者所持有數(shù)據(jù),中間查詢計劃統(tǒng)一表示消費者與提供者查詢語言的語義;數(shù)據(jù)消費者與數(shù)據(jù)提供者兩端分別與中間模型進行接口適配,將數(shù)據(jù)訪問接口與數(shù)據(jù)模型分離,從而支持消費者與提供者多對多數(shù)據(jù)訪問,提高系統(tǒng)的靈活性與擴展性.

    如圖2所示,雙Adapter 數(shù)據(jù)統(tǒng)一訪問框架由數(shù)據(jù)消費端Adapter、中間數(shù)據(jù)模型、中間查詢計劃、數(shù)據(jù)提供者端Adapter 以及數(shù)據(jù)映射5 部分構(gòu)成.

    圖2 雙Adapter 數(shù)據(jù)統(tǒng)一訪問框架

    (1)數(shù)據(jù)消費者端Adapter是系統(tǒng)數(shù)據(jù)訪問請求的編碼器.它將消費者查詢語句涉及的目標(biāo)數(shù)據(jù)與中間數(shù)據(jù)模型進行映射,同時將查詢語句的語義編碼為中間查詢計劃.根據(jù)系統(tǒng)設(shè)計需要,數(shù)據(jù)消費者端Adapter還需對查詢結(jié)果進行格式轉(zhuǎn)換以滿足消費者應(yīng)用需求.

    (2)數(shù)據(jù)提供者端Adapter是系統(tǒng)數(shù)據(jù)訪問請求的解碼器,它將中間查詢計劃解碼為數(shù)據(jù)提供者可識別的查詢語句,實現(xiàn)中間數(shù)據(jù)模型與數(shù)據(jù)提供者的數(shù)據(jù)映射.根據(jù)系統(tǒng)設(shè)計需要,數(shù)據(jù)提供者端Adapter 還需要將查詢結(jié)果轉(zhuǎn)換統(tǒng)一數(shù)據(jù)格式.

    (3)中間數(shù)據(jù)模型為系統(tǒng)多源異構(gòu)數(shù)據(jù)提供統(tǒng)一語義視圖,它定義數(shù)據(jù)的統(tǒng)一表示方式,記錄中間模型的元素構(gòu)成與數(shù)據(jù)持有者的映射關(guān)系,支持?jǐn)?shù)據(jù)的增、刪、改、查、合并等操作.根據(jù)系統(tǒng)設(shè)計需要,中間數(shù)據(jù)模型還需定義通用數(shù)據(jù)格式以供數(shù)據(jù)消費者與數(shù)據(jù)提供者之間進行查詢結(jié)果轉(zhuǎn)換.

    (4)中間查詢計劃將數(shù)據(jù)提供者和數(shù)據(jù)消費者接口對數(shù)據(jù)的操作進行抽象化處理,定義系統(tǒng)支持的運算類型,實現(xiàn)數(shù)據(jù)提供者與數(shù)據(jù)消費者查詢操作與中間查詢計劃運算的相互轉(zhuǎn)換.由于不同數(shù)據(jù)提供者和數(shù)據(jù)消費者對數(shù)據(jù)運算操作的支持程度不同,根據(jù)系統(tǒng)設(shè)計需要,還必須對不支持的數(shù)據(jù)操作進行補償運算.

    (5)數(shù)據(jù)映射將數(shù)據(jù)提供者所持有數(shù)據(jù)與中間數(shù)據(jù)模型進行映射,在映射過程中數(shù)據(jù)提供者根據(jù)中間數(shù)據(jù)模型的定義,將其所持有的數(shù)據(jù)按照映射規(guī)范向中間數(shù)據(jù)模型注冊.在此過程中,數(shù)據(jù)映射規(guī)范需要適量增加或減少原有數(shù)據(jù)的限制以滿足中間數(shù)據(jù)模型的定義.

    4 框架實現(xiàn)

    為了驗證BAF4DUA 框架在實際系統(tǒng)中的應(yīng)用,本文實現(xiàn)了一個多對多數(shù)據(jù)統(tǒng)一訪問系統(tǒng),其中數(shù)據(jù)消費者接口為標(biāo)準(zhǔn)查詢語言,數(shù)據(jù)提供者接口為常用數(shù)據(jù)庫.該系統(tǒng)中間數(shù)據(jù)模型使用實體與關(guān)系對數(shù)據(jù)進行統(tǒng)一表述,數(shù)據(jù)映射將數(shù)據(jù)庫、WebService 等查詢接口的數(shù)據(jù)對象映射為中間數(shù)據(jù)模型元素.中間查詢計劃選擇四類運算形式化描述查詢語句的語義信息,消費者與提供者Adapter 將各自接口與中間數(shù)據(jù)模型和中間查詢計劃進行適配.目前系統(tǒng)支持通過SQL、Cypher、MongoDB 等查詢語言接口對不同數(shù)據(jù)提供者進行數(shù)據(jù)訪問,在不影響系統(tǒng)其它組成部分的情況下,可實現(xiàn)數(shù)據(jù)庫遷移、緩存、統(tǒng)一管理等應(yīng)用需求.

    4.1 中間數(shù)據(jù)模型與數(shù)據(jù)映射

    中間數(shù)據(jù)模型對集成系統(tǒng)中的異構(gòu)數(shù)據(jù)采用統(tǒng)一方式進行語義描述,系統(tǒng)數(shù)據(jù)用實體(Entity)與關(guān)系(Relation)兩個概念對常見數(shù)據(jù)源進行描述[12].實體為具有相似意義的數(shù)據(jù)集合,實體元素的具體數(shù)據(jù)格式不限,既包括結(jié)構(gòu)化形式的表數(shù)據(jù),也包括非結(jié)構(gòu)化形式的文檔數(shù)據(jù);關(guān)系為實體間的語義關(guān)聯(lián),可通過多種方式進行表示,關(guān)系表示形式包括實體條件表達(dá)式或存儲的關(guān)系數(shù)據(jù).中間數(shù)據(jù)模型的形式化表示如下:

    其中,E表示實體集合,R∈(E×E)表示關(guān)系集合,S表示數(shù)據(jù)源集合,L表示用于實體與關(guān)系標(biāo)識的標(biāo)簽集合,K表示L、S與E、R之間的映射關(guān)系,ρ表示S與R之間的數(shù)據(jù)映射方式.

    異構(gòu)數(shù)據(jù)源S包括兩種形式:一是以標(biāo)準(zhǔn)查詢語言為訪問接口的數(shù)據(jù)庫管理工具,如關(guān)系數(shù)據(jù)庫、文檔數(shù)據(jù)庫以及圖數(shù)據(jù)庫等;二是其它非標(biāo)準(zhǔn)化數(shù)據(jù)訪問接口,如WebService、Shell 命令以及文件系統(tǒng)等.S中的每個元素必須包含連接訪問該數(shù)據(jù)源的所有參數(shù),如連接字符串、URL 以及用戶名密碼等.

    映射關(guān)系K由兩部分構(gòu)成:標(biāo)簽映射Kl:(E∪R)→L表示標(biāo)簽與ER 元素之間的映射關(guān)系,即實體集合與關(guān)系由一個標(biāo)簽唯一標(biāo)識;數(shù)據(jù)映射Ks:(E∪R)→(S∪ρ)表示數(shù)據(jù)源與Entity、Relation 元素之間的映射關(guān)系,即Entity 與Relation 由數(shù)據(jù)源與數(shù)據(jù)映射方式構(gòu)成.

    針對不同數(shù)據(jù)源,數(shù)據(jù)映射方式ρ采用多種方法將異構(gòu)數(shù)據(jù)源映射為Entity和Relation 元素.對于提供標(biāo)準(zhǔn)查詢語言接口的數(shù)據(jù)源,可使用通用的數(shù)據(jù)映射規(guī)范自動將數(shù)據(jù)源映射到中間數(shù)據(jù)模型.如表1所示,將關(guān)系模型數(shù)據(jù)中的Table 映射為中間數(shù)據(jù)模型的Entity 元素,將“外鍵”或?qū)傩韵嚓P(guān)的邏輯表達(dá)式映射為中間數(shù)據(jù)模型中的Relation 元素;將文檔模型數(shù)據(jù)源中的Collection 映射為中間數(shù)據(jù)模型的Entity,將文檔的DBref 或?qū)傩缘倪壿嫳磉_(dá)式映射為中間數(shù)據(jù)模型的Relation;將屬性圖模型數(shù)據(jù)源中具有相同Label的節(jié)點集合映射為Entity,而將具有同樣Label的邊集合映射為Relation.

    表1 數(shù)據(jù)映射關(guān)系

    對于無標(biāo)準(zhǔn)查詢語言接口的數(shù)據(jù)提供者,需要根據(jù)數(shù)據(jù)提供者的數(shù)據(jù)訪問接口特點自定義數(shù)據(jù)源與中間數(shù)據(jù)模型的映射方式.例如WebService 接口與中間數(shù)據(jù)模型的映射需要根據(jù)服務(wù)URL、Token 以及業(yè)務(wù)參數(shù)等與實體、關(guān)系進行映射.

    4.2 中間查詢計劃

    查詢計劃是對查詢語句所表達(dá)語義的形式化描述,它是一個節(jié)點為數(shù)據(jù)模型運算的樹形結(jié)構(gòu).中間查詢計劃p:umsrc→umtarget描述了從數(shù)據(jù)umsrc向查詢目標(biāo)數(shù)據(jù)umtarget轉(zhuǎn)換的運算過程,它代表了查詢語句的查詢目標(biāo),系統(tǒng)支持的運算類型越多,執(zhí)行計劃能夠支持的查詢功能越豐富.在實現(xiàn)過程中,我們選擇了4 類中間數(shù)據(jù)模型運算作為中間查詢計劃的基礎(chǔ)組成部分:

    (1)scan(umsrc,umtarget,item)運算對參加運算的中間數(shù)據(jù)模型中實體與關(guān)系進行選擇.其中item指umsrc中的實體或關(guān)系元素,scan運算將umsrc中的item元素加入umtarget.如果item類型為Relation,scan運算同時將與該Relation 關(guān)聯(lián)的Entity 添加到umtarget.

    (2)filter(umtarget,item,cond,type)運算對umtarget中Entity 或Relation 集合內(nèi)數(shù)據(jù)對象進行條件約束.其中item指umtarget中的實體或關(guān)系元素,cond為item中數(shù)據(jù)對象滿足的邏輯表達(dá)式條件,type為過濾運算類型.根據(jù)不同過濾運算類型,filter運算采用不同形式過濾umtarget中的數(shù)據(jù).

    (3)link(umsrc,umtarget,item1,item2)運算在Entity 元素item1與item2之間建立一個關(guān)系加入umtarget中.建立Relation的方式有兩種:一是通過item1與item2之間的邏輯表達(dá)式創(chuàng)建一個臨時Relation;二是從umsrc選擇與item1、item2對應(yīng)的Relation 加入umtarget.

    (4)project(umtarget,cond)運算根據(jù)cond條件選擇umtarget中的元素或元素內(nèi)容保留參與后續(xù)運算.cond條件包括兩類:umtarget中Entity 或Relation 元素;Entity或Relation 數(shù)據(jù)的屬性、列等子元素.

    4.3 消費者端Adapter 與數(shù)據(jù)提供者端Adapter

    BAF4DUA 架構(gòu)中適配器對數(shù)據(jù)消費者和數(shù)據(jù)提供者的數(shù)據(jù)查詢接口進行轉(zhuǎn)換翻譯:第1 步,數(shù)據(jù)消費者端Adapter 將數(shù)據(jù)消費者查詢語句編碼為中間查詢計劃統(tǒng)一表示;第2 步,數(shù)據(jù)提供者端Adapter 將中間查詢計劃解碼為數(shù)據(jù)提供者可識別的查詢語句.通過中間查詢計劃對查詢語句的統(tǒng)一形式化表示,BAF4DUA框架將查詢語言接口與數(shù)據(jù)模型解耦.

    查詢語句在數(shù)據(jù)源執(zhí)行過程中會解析節(jié)點為數(shù)據(jù)模型運算的邏輯查詢計劃樹,數(shù)據(jù)源執(zhí)行引擎遍歷查詢計劃樹依序執(zhí)行運算節(jié)點.數(shù)據(jù)消費者端Adapter對查詢語句的語義編碼過程需實現(xiàn)中間查詢計劃與邏輯查詢計劃、中間數(shù)據(jù)模型與數(shù)據(jù)源的運算映射兩部分內(nèi)容:

    (1)數(shù)據(jù)映射:主要過程是解析數(shù)據(jù)消費者請求的查詢語句,獲取查詢語句的目標(biāo)數(shù)據(jù)對象,根據(jù)數(shù)據(jù)映射方式ρ獲取目標(biāo)數(shù)據(jù)對象與中間數(shù)據(jù)模型Entity和Relation的對應(yīng)關(guān)系,收集相應(yīng)的數(shù)據(jù)作為后續(xù)運算參數(shù).

    (2)運算映射:主要過程是將數(shù)據(jù)消費者查詢語句解析為邏輯查詢計劃樹并自底向上遍歷,根據(jù)根節(jié)點到當(dāng)前運算節(jié)點路徑計算邏輯查詢計劃樹中的每個運算節(jié)點所處的狀態(tài)并據(jù)此確定后續(xù)運算映射.邏輯查詢計劃樹的運算節(jié)點與中間執(zhí)行計劃運算節(jié)點之間存在一對一、一對多、多對一以及多對多關(guān)系,根據(jù)運算映射關(guān)系生成中間執(zhí)行計劃的運算節(jié)點以及中間執(zhí)行計劃樹.

    與數(shù)據(jù)消費者端對查詢語句的編碼過程相反,數(shù)據(jù)提供者端Adapter對中間執(zhí)行計劃樹解碼操作,生成數(shù)據(jù)提供者查詢語言接口的邏輯查詢計劃樹.解碼過程根據(jù)數(shù)據(jù)映射方式ρ從中間執(zhí)行計劃運算節(jié)點的參數(shù)中抽取出數(shù)據(jù)源的操作對象,實現(xiàn)中間數(shù)據(jù)模型與數(shù)據(jù)源的有效映射.根據(jù)中間執(zhí)行計劃運算節(jié)點與邏輯查詢計劃運算節(jié)點的對應(yīng)關(guān)系生成邏輯查詢計劃樹,進而生成目標(biāo)查詢語句提交給數(shù)據(jù)提供者執(zhí)行.

    5 案例示范

    5.1 BAF4DUA 案例工具實現(xiàn)

    根據(jù)第4 節(jié)提出的BAF4DUA 框架實現(xiàn)方案,本文實現(xiàn)了一個支持關(guān)系模型、屬性圖模型和文檔模型與中間數(shù)據(jù)模型的相互映射,以及SQL、Cypher、Mongo 命令3 種查詢語言的相互轉(zhuǎn)換的案例工具.

    如圖3所示,BAF4DUA 案例工具的具體實現(xiàn)主要包括10 個類.UnifiedDataModel 類為Entity 與Relation 組成的圖數(shù)據(jù)結(jié)構(gòu),在使用BAF4DUA 案例工具之前需根據(jù)數(shù)據(jù)提供者的數(shù)據(jù)進行初始化,通過UnifiedDataModel 類,查詢語言轉(zhuǎn)換過程中可以確定中間查詢計劃、數(shù)據(jù)提供者查詢對象、數(shù)據(jù)消費者查詢對象之間的映射關(guān)系.接口類Encoder 與Decoder 包含查詢語言與中間查詢計劃UnifiedQueryPlan 進行轉(zhuǎn)換的encode與decode函數(shù).SqlEncoder、CypherEncoder以及MongoEncoder為Encoder 接口類的具體實現(xiàn),其中SqlEncoder 首先利用Apache Calcite[13]將SQL 語句解析為SQL 查詢計劃,然后通過遍歷SQL 查詢計劃將SQL 查詢計劃中的JOIN、FILTER 運算以及表達(dá)式轉(zhuǎn)換為UnifiedQueryPlan 中對應(yīng)運算Operator.類似的,我們使用開源工具Cytosm[14]以及Mongo-Shell-Like-Query[15]分別將Cypher 與Mongo 命令分別解析成相應(yīng)的查詢計劃,根據(jù)4.3 節(jié)所述遍歷該查詢計劃生成對應(yīng)的UnifiedQueryPlan對象.SqlDecoder、Cypher-Decoder 以及MongoDecoder為Decoder 接口類的具體實現(xiàn).其中SqlDecoder 假設(shè)最終生成的SQL 語句模式為:

    圖3 BAF4DUA 案例工具類

    SELECT <RESULT>

    FROM <TABLES>

    WHERE <CONDITION>

    根據(jù)UnifiedQueryPlan 類的Entities 與Relations成員生成SQL 語句的SELECT 與FROM 元素;通過解析查詢計劃中的運算Operator 生成SQL 語句的WHERE條件對結(jié)果進行過濾;類似的,CypherDecoder 主要針對如下Cypher 句式:

    MATCH <ENTITY>

    MATCH <RELATION>

    WHERE <CONDITION>

    RETURN <RESULT>

    根據(jù)中間查詢計劃UnifiedQueryPlan 生成句式的各部分的內(nèi)容;MongoDecoder 則將UnifiedQueryPlan中的Operator 運算統(tǒng)一組合成一個Pipeline,將Scan、Filter、Link 以及Project 四類運算轉(zhuǎn)換為Mongo 命令Pipeline 中的JSON 運算對象,最后將整個Pipeline對象序列化為Mongo Shell 命令語句.

    需要指出的是,本文中案例工具的實現(xiàn)方式存在一定的局限性,尤其是Decoder 部分的實現(xiàn)還有很大的提升空間.例如本文使用了固定的查詢語句模式,根據(jù)中間查詢計劃分別轉(zhuǎn)換為固定句式中的組成部分,而不是將中間查詢計劃直接轉(zhuǎn)換為數(shù)據(jù)提供者查詢語句對應(yīng)的查詢計劃.除此之外,本文的案例沒有對聚合查詢、多語句查詢等操作進行處理.

    5.2 查詢語言轉(zhuǎn)換性能

    為了驗證查詢語言轉(zhuǎn)換對查詢性能的影響,我們將生成的1 GB TPCH[16]數(shù)據(jù)導(dǎo)入關(guān)系型數(shù)據(jù)庫MySQL、圖數(shù)據(jù)庫Neo4j 以及文檔型數(shù)據(jù)庫MongoDB 中,對TPCH 基準(zhǔn)測試中單表查詢語句Q1 與多表查詢語句Q2的查詢語言轉(zhuǎn)換與數(shù)據(jù)查詢時間進行了統(tǒng)計,其中MySQL、Neo4j和MongoDB 數(shù)據(jù)庫的運行環(huán)境如表2所示,查詢時間結(jié)果如表3所示.在數(shù)據(jù)導(dǎo)入過程中,TPCH 數(shù)據(jù)集的8 個文件分別導(dǎo)出為MongoDB的8 個Collection 以及Neo4j的8 類節(jié)點.根據(jù)TPCH提供的ER 模型,我們在Neo4j 中創(chuàng)建了節(jié)點之間的邊.需要說明的是,TPCH 數(shù)據(jù)集的不同導(dǎo)入方式以及索引會對后續(xù)查詢時間產(chǎn)生一定影響.

    表2 數(shù)據(jù)庫運行環(huán)境

    表3 查詢語言轉(zhuǎn)換與數(shù)據(jù)查詢時間(ms)

    由表3可知,查詢語言轉(zhuǎn)換時間在70 ms 內(nèi),相對于數(shù)據(jù)查詢時間占比最高不大于1%,并且隨著數(shù)據(jù)量的增加查詢語言轉(zhuǎn)換的時間占比會越來越少.由于Mongo 命令的解碼過程使用了第三方的JSON 轉(zhuǎn)換工具,因此中間查詢計劃解碼為MongoDB 接口的時間要比其它接口的解碼時間更多,故而查詢語言的編碼時間均在10 ms 以下.總體而言,在提高開發(fā)效率與系統(tǒng)擴展性、滿足數(shù)據(jù)統(tǒng)一訪問的前提下,查詢語言轉(zhuǎn)換帶來的查詢性能損失在可接受范圍之內(nèi).

    5.3 查詢語言轉(zhuǎn)換應(yīng)用案例

    案例1.數(shù)據(jù)庫緩存:為提高系統(tǒng)的響應(yīng)速度,應(yīng)用系統(tǒng)通常采用主數(shù)據(jù)庫與緩存數(shù)據(jù)庫相結(jié)合的方式管理業(yè)務(wù)數(shù)據(jù),例如使用Redis對用戶信息進行緩存.此時系統(tǒng)開發(fā)需同時使用SQL 與Redis 語言進行數(shù)據(jù)查詢,如果能夠?qū)QL、Mongo 命令以及Cypher 編碼為中間查詢計劃,同時將中間查詢計劃解碼為Redis 查詢語句,那么系統(tǒng)就可以為不同主數(shù)據(jù)庫增加緩存功能,并且保持系統(tǒng)開發(fā)的接口統(tǒng)一性.

    為實現(xiàn)以上目標(biāo),系統(tǒng)需要一個數(shù)據(jù)提供者端Adapter 將中間查詢計劃轉(zhuǎn)換為Redis 查詢語言.其中數(shù)據(jù)映射將Redis 數(shù)據(jù)庫中具有一定模式的Key 定義為中間數(shù)據(jù)模型的Entity;Entity的屬性值與Key 值相對應(yīng);Relation 則根據(jù)用戶定義表達(dá)式進行Entity的關(guān)聯(lián).中間查詢計劃與Redis的具體運算映射方式如表4所示.

    表4 中間查詢計劃與Redis 運算映射

    以客戶Customer 數(shù)據(jù)為例,假設(shè)客戶數(shù)據(jù)在Redis中Key的存儲模式為<Cust_ID_USERNAME_NATION,customer_object_hash>,那么Customer 實體定義為以字符串“Cust”開頭的Key,實體屬性ID、USERNAME、NATION的值分別對應(yīng)以“_”進行分割的每個值.如圖4所示,假設(shè)系統(tǒng)要查詢“李”姓中國籍客戶,那么使用SQL、Cypher 以及MongoDB 命令進行查詢時會首先編碼為中間查詢計劃,然后再轉(zhuǎn)換為Redis查詢語句,最后實現(xiàn)Redis對3 類主數(shù)據(jù)庫的緩存.

    圖4 Redis 查詢語言轉(zhuǎn)換案例

    案例2.數(shù)據(jù)統(tǒng)一管理:科學(xué)數(shù)據(jù)管理系統(tǒng)通常會查詢多個數(shù)據(jù)源,甚至?xí){(diào)用不同學(xué)科的數(shù)據(jù)源來驗證假設(shè)的真?zhèn)?國家重點研發(fā)計劃“科學(xué)大數(shù)據(jù)管理系統(tǒng)”項目為用戶提供包括天文、高能物理和微生物3 種異構(gòu)數(shù)據(jù)在內(nèi)的多元異構(gòu)數(shù)據(jù)的統(tǒng)一訪問接口.以高能物理數(shù)據(jù)處理系統(tǒng)EventDB[17]為例,它通過分布式存儲與數(shù)據(jù)索引,能夠?qū)Ω吣芪锢韺嶒炛挟a(chǎn)生的EB級事例進行存儲與查詢.EventDB的接口形式為特定命令,如有以下查詢命令:time=178789800~178807800&detID=1&channel=12&pulse=0~255&eventType=0,其含義為查詢2017年8月31日15:50:00 至2017年8月31日20:50:00 之間5 小時內(nèi)1 號探測器、12 號通道、0 號事件的脈沖跨度的變化情況.

    數(shù)據(jù)提供者Adapter的數(shù)據(jù)映射需根據(jù)科研用戶的查詢需求和習(xí)慣,根據(jù)實驗因素與中間模型進行映射.例如相同特征的事例映射與Entity 集合對應(yīng);實體屬性為EventDB 中事例的相關(guān)數(shù)據(jù)值;Relation 根據(jù)自定義表達(dá)式進行Entity 關(guān)聯(lián).中間查詢計劃與EventDB命令的映射如表5所示.

    表5 中間查詢計劃與EventDB 運算映射

    假設(shè)用戶習(xí)慣按照探測器進行事例查詢,EventDB中的探測器編號為n的事例與Entity 映射,事例的time、detID、channel、pulse 與eventType 等屬性為Entity的屬性值.如圖5所示,如果要查詢3 號探測器在2017年8月31日15:50:00 至2017年8月31日20:50:00 之間內(nèi)的所有脈沖變化,那么SQL、Cypher、MongoDB的查詢語句可根據(jù)以上映射關(guān)系首先編碼為中間查詢計劃,然后轉(zhuǎn)換為EventDB 查詢命令.

    圖5 EventDB 查詢語言轉(zhuǎn)換案例

    6 結(jié)論與展望

    在大數(shù)據(jù)時代,集成系統(tǒng)使用多樣化工具對內(nèi)外部數(shù)據(jù)進行統(tǒng)一管理分析,這增加了系統(tǒng)開發(fā)、數(shù)據(jù)管理工具更新遷移以及數(shù)據(jù)統(tǒng)一管理等任務(wù)的接口適配成本.本文提出了一種基于查詢語言轉(zhuǎn)換的多源數(shù)據(jù)統(tǒng)一訪問框架BAF4DUA,該框架特色之處在于采用了雙Adapter 模式:數(shù)據(jù)消費者Adapter 先將消費者數(shù)據(jù)訪問接口語言轉(zhuǎn)換為中間數(shù)據(jù)模型的查詢計劃,而后通過數(shù)據(jù)提供者端Adapter 將中間查詢計劃轉(zhuǎn)換為數(shù)據(jù)提供者的數(shù)據(jù)訪問接口.通過BAF4DUA 框架,可實現(xiàn)數(shù)據(jù)消費者的查詢語言接口與數(shù)據(jù)源的數(shù)據(jù)模型相分離,數(shù)據(jù)消費者和數(shù)據(jù)提供者可采用即插即用的方式增加或更新相應(yīng)的Adapter,增加了系統(tǒng)的靈活性與擴展性,更符合集成系統(tǒng)多對多數(shù)據(jù)訪問的特點.

    本文所提BAF4DUA 框架的局限性在于僅考慮了單一使用場景下的數(shù)據(jù)查詢操作,還需要進一步完善以適應(yīng)更復(fù)雜的數(shù)據(jù)統(tǒng)一訪問應(yīng)用場景.后續(xù)研究可從以下幾個方面進一步拓展:(1)設(shè)計與實現(xiàn)支持具備count、sum 等更豐富功能的查詢運算類型;(2)設(shè)計與實現(xiàn)查詢數(shù)據(jù)位于不同數(shù)據(jù)庫場景下的數(shù)據(jù)處理方案;(3)設(shè)計與實現(xiàn)智能化數(shù)據(jù)統(tǒng)一插入存儲方案.

    猜你喜歡
    提供者數(shù)據(jù)模型數(shù)據(jù)源
    網(wǎng)絡(luò)交易平臺提供者的法律地位與民事責(zé)任分析
    法制博覽(2020年2期)2020-04-29 06:45:18
    基于隱私度和穩(wěn)定度的D2D數(shù)據(jù)共享伙伴選擇機制
    面板數(shù)據(jù)模型截面相關(guān)檢驗方法綜述
    Web 大數(shù)據(jù)系統(tǒng)數(shù)據(jù)源選擇*
    加熱爐爐內(nèi)跟蹤數(shù)據(jù)模型優(yōu)化
    電子測試(2017年12期)2017-12-18 06:35:36
    基于不同網(wǎng)絡(luò)數(shù)據(jù)源的期刊評價研究
    網(wǎng)絡(luò)言論自由的行政法規(guī)制研究
    法制與社會(2017年9期)2017-04-18 01:20:31
    基于真值發(fā)現(xiàn)的沖突數(shù)據(jù)源質(zhì)量評價算法
    做商用車行業(yè)新材料應(yīng)用解決方案的提供者——訪同元集團副總裁趙延?xùn)|
    專用汽車(2015年12期)2015-03-01 04:12:07
    分布式異構(gòu)數(shù)據(jù)源標(biāo)準(zhǔn)化查詢設(shè)計與實現(xiàn)
    日韩人妻高清精品专区| 免费观看在线日韩| 欧美+亚洲+日韩+国产| 日韩精品有码人妻一区| 亚洲av一区综合| 国产真实乱freesex| 天堂影院成人在线观看| 网址你懂的国产日韩在线| 午夜福利在线在线| 久久久精品94久久精品| 一进一出抽搐动态| 成人欧美大片| 久久久久久九九精品二区国产| 精品久久久久久久久亚洲| or卡值多少钱| 一级av片app| 久久久欧美国产精品| av在线蜜桃| 国产私拍福利视频在线观看| 亚洲欧美清纯卡通| 久久久久精品国产欧美久久久| 国产成人freesex在线 | 特大巨黑吊av在线直播| 熟妇人妻久久中文字幕3abv| 国产三级中文精品| 噜噜噜噜噜久久久久久91| av女优亚洲男人天堂| 男女那种视频在线观看| 欧美区成人在线视频| 一区福利在线观看| 欧美成人一区二区免费高清观看| 国产综合懂色| 精品一区二区三区视频在线观看免费| 日韩欧美一区二区三区在线观看| 99久久无色码亚洲精品果冻| 午夜精品国产一区二区电影 | 亚洲精品一卡2卡三卡4卡5卡| 无遮挡黄片免费观看| 日韩强制内射视频| 免费在线观看成人毛片| 亚洲av中文字字幕乱码综合| 日韩精品青青久久久久久| 国内精品久久久久精免费| 变态另类成人亚洲欧美熟女| 亚洲自偷自拍三级| 午夜爱爱视频在线播放| 中文字幕久久专区| 天天躁夜夜躁狠狠久久av| 少妇被粗大猛烈的视频| 亚洲一级一片aⅴ在线观看| 九九久久精品国产亚洲av麻豆| 久久精品91蜜桃| 中文资源天堂在线| 日日摸夜夜添夜夜添小说| 在线国产一区二区在线| 伊人久久精品亚洲午夜| 两性午夜刺激爽爽歪歪视频在线观看| 亚洲色图av天堂| 在线观看免费视频日本深夜| 成年女人看的毛片在线观看| 亚洲真实伦在线观看| 久久国产乱子免费精品| 97超视频在线观看视频| 国产精品女同一区二区软件| 亚洲欧美清纯卡通| 久久久久性生活片| 成人鲁丝片一二三区免费| 欧美另类亚洲清纯唯美| 亚洲久久久久久中文字幕| 尤物成人国产欧美一区二区三区| 国产成人a区在线观看| 免费一级毛片在线播放高清视频| 国产av麻豆久久久久久久| 日韩在线高清观看一区二区三区| 国产成人freesex在线 | 亚洲aⅴ乱码一区二区在线播放| 日本一二三区视频观看| 国产麻豆成人av免费视频| 精品午夜福利视频在线观看一区| 成人综合一区亚洲| 日韩,欧美,国产一区二区三区 | 在线观看免费视频日本深夜| 国产一区二区亚洲精品在线观看| a级毛色黄片| 欧美人与善性xxx| 亚洲精品一区av在线观看| 午夜亚洲福利在线播放| 国产大屁股一区二区在线视频| 国产亚洲精品久久久久久毛片| 91麻豆精品激情在线观看国产| 国产成人影院久久av| 最近最新中文字幕大全电影3| 国产亚洲精品久久久久久毛片| 国产一区亚洲一区在线观看| 国产精品嫩草影院av在线观看| 精品一区二区三区av网在线观看| 亚洲av中文av极速乱| 我要看日韩黄色一级片| 欧美高清性xxxxhd video| 亚洲av二区三区四区| 男女做爰动态图高潮gif福利片| 嫩草影院入口| 国产精品电影一区二区三区| 欧美日本亚洲视频在线播放| 天天躁日日操中文字幕| 青春草视频在线免费观看| 国产爱豆传媒在线观看| 观看美女的网站| 女的被弄到高潮叫床怎么办| 寂寞人妻少妇视频99o| 久久人人爽人人爽人人片va| 国产精品一二三区在线看| 久久久久久久久久成人| 丰满的人妻完整版| 一本一本综合久久| 亚洲成av人片在线播放无| 精华霜和精华液先用哪个| 色播亚洲综合网| 国产高清三级在线| 最好的美女福利视频网| 六月丁香七月| 午夜免费男女啪啪视频观看 | 亚洲第一电影网av| 国内少妇人妻偷人精品xxx网站| 亚洲性夜色夜夜综合| 国产精品伦人一区二区| 你懂的网址亚洲精品在线观看 | 99久久精品热视频| 精品一区二区三区视频在线| 欧美绝顶高潮抽搐喷水| 91麻豆精品激情在线观看国产| 99在线视频只有这里精品首页| 国产精品野战在线观看| 五月伊人婷婷丁香| 在线免费十八禁| 日日摸夜夜添夜夜添av毛片| 菩萨蛮人人尽说江南好唐韦庄 | 免费高清视频大片| 性欧美人与动物交配| 亚洲色图av天堂| 精品午夜福利在线看| 热99re8久久精品国产| 伊人久久精品亚洲午夜| 长腿黑丝高跟| 久久草成人影院| 人人妻人人澡人人爽人人夜夜 | 亚洲美女搞黄在线观看 | 麻豆乱淫一区二区| 成人亚洲欧美一区二区av| 久久久久久久久久黄片| 国产视频内射| 亚洲人成网站在线播放欧美日韩| 一级毛片久久久久久久久女| 国产大屁股一区二区在线视频| 国内少妇人妻偷人精品xxx网站| 一个人免费在线观看电影| 亚洲精品乱码久久久v下载方式| 亚洲国产高清在线一区二区三| 亚洲内射少妇av| 最新在线观看一区二区三区| 免费av不卡在线播放| 国产精品一区二区三区四区久久| 欧美丝袜亚洲另类| 插逼视频在线观看| 美女xxoo啪啪120秒动态图| 精品午夜福利视频在线观看一区| 免费在线观看成人毛片| h日本视频在线播放| 深夜精品福利| 少妇熟女欧美另类| 国产白丝娇喘喷水9色精品| 亚洲av成人av| 亚洲av不卡在线观看| 在线天堂最新版资源| 国产精品,欧美在线| 国产精品一区www在线观看| 免费看光身美女| 亚州av有码| 在线免费观看不下载黄p国产| 伦理电影大哥的女人| 国产一区亚洲一区在线观看| 51国产日韩欧美| 久久鲁丝午夜福利片| 国产精品,欧美在线| 99热全是精品| 成人特级黄色片久久久久久久| 国产一区二区亚洲精品在线观看| 天堂影院成人在线观看| 91av网一区二区| 插阴视频在线观看视频| 赤兔流量卡办理| 国产精品av视频在线免费观看| 老司机影院成人| 特级一级黄色大片| 国产一区二区在线av高清观看| 欧美色欧美亚洲另类二区| 欧美日韩综合久久久久久| 国国产精品蜜臀av免费| 丝袜喷水一区| 国产一区二区在线观看日韩| av女优亚洲男人天堂| 成人高潮视频无遮挡免费网站| 久久中文看片网| 少妇熟女欧美另类| 麻豆久久精品国产亚洲av| 免费大片18禁| 午夜视频国产福利| 久久中文看片网| 女人被狂操c到高潮| 中文亚洲av片在线观看爽| 有码 亚洲区| 精品午夜福利视频在线观看一区| 人人妻,人人澡人人爽秒播| 亚洲高清免费不卡视频| 欧美+日韩+精品| av免费在线看不卡| 极品教师在线视频| 天天躁夜夜躁狠狠久久av| 嫩草影院入口| 天天一区二区日本电影三级| 日本精品一区二区三区蜜桃| 亚洲人成网站在线播| 日韩人妻高清精品专区| 久久午夜亚洲精品久久| 少妇高潮的动态图| 免费观看人在逋| 午夜精品一区二区三区免费看| 美女免费视频网站| 国产片特级美女逼逼视频| 国产成人freesex在线 | 亚洲欧美日韩东京热| 国产高清视频在线观看网站| 在线播放国产精品三级| 欧美又色又爽又黄视频| 1024手机看黄色片| 日本成人三级电影网站| 99久久无色码亚洲精品果冻| 欧美日本视频| 国产亚洲91精品色在线| 内地一区二区视频在线| 亚洲成人精品中文字幕电影| 一级黄片播放器| 小说图片视频综合网站| 欧美在线一区亚洲| 日韩国内少妇激情av| 国产一区二区在线av高清观看| 国产精品永久免费网站| 亚洲精品成人久久久久久| 久久久国产成人免费| 色综合色国产| 欧美日韩乱码在线| 小蜜桃在线观看免费完整版高清| 国产一区亚洲一区在线观看| 级片在线观看| 日本 av在线| 国产亚洲欧美98| 国产女主播在线喷水免费视频网站 | 中文在线观看免费www的网站| 亚洲国产精品合色在线| 亚洲成人精品中文字幕电影| 综合色丁香网| 麻豆av噜噜一区二区三区| 久久亚洲国产成人精品v| av在线观看视频网站免费| 国产精品女同一区二区软件| 99久国产av精品| 老熟妇乱子伦视频在线观看| 九九久久精品国产亚洲av麻豆| 午夜福利视频1000在线观看| 欧美一级a爱片免费观看看| 国内少妇人妻偷人精品xxx网站| 91久久精品国产一区二区三区| 欧美中文日本在线观看视频| 国产精品乱码一区二三区的特点| 国产高清视频在线观看网站| 丝袜喷水一区| 精品国产三级普通话版| 中出人妻视频一区二区| av中文乱码字幕在线| 春色校园在线视频观看| 波野结衣二区三区在线| 69av精品久久久久久| 91狼人影院| 男女边吃奶边做爰视频| 中文字幕人妻熟人妻熟丝袜美| 18禁黄网站禁片免费观看直播| 乱系列少妇在线播放| 女同久久另类99精品国产91| а√天堂www在线а√下载| 日韩一区二区视频免费看| 丰满人妻一区二区三区视频av| 中文字幕免费在线视频6| 国产三级在线视频| 久久99热6这里只有精品| 国内少妇人妻偷人精品xxx网站| 俺也久久电影网| 不卡视频在线观看欧美| 久久久精品94久久精品| 国产激情偷乱视频一区二区| 日韩三级伦理在线观看| 精品久久久久久久久久久久久| 日韩中字成人| 久久99热6这里只有精品| 国内少妇人妻偷人精品xxx网站| 免费观看的影片在线观看| 大香蕉久久网| 国产高清有码在线观看视频| 特级一级黄色大片| 国产黄色小视频在线观看| 日韩在线高清观看一区二区三区| 日韩强制内射视频| 日韩欧美在线乱码| 中国国产av一级| 国产探花在线观看一区二区| 国产精品人妻久久久影院| 中文字幕免费在线视频6| 深夜a级毛片| 97超级碰碰碰精品色视频在线观看| 国产高潮美女av| 亚洲最大成人手机在线| 寂寞人妻少妇视频99o| 俺也久久电影网| 看免费成人av毛片| 亚洲精品色激情综合| 乱系列少妇在线播放| 尾随美女入室| 亚洲美女视频黄频| 成人无遮挡网站| 两个人的视频大全免费| 精品免费久久久久久久清纯| 国产高清三级在线| 欧美日本亚洲视频在线播放| 97热精品久久久久久| 99精品在免费线老司机午夜| 欧美日本亚洲视频在线播放| 俺也久久电影网| 搡老熟女国产l中国老女人| 国产伦精品一区二区三区视频9| 熟女人妻精品中文字幕| 人妻制服诱惑在线中文字幕| 国产精品国产三级国产av玫瑰| 成年免费大片在线观看| 变态另类成人亚洲欧美熟女| 久久久久久大精品| 最新在线观看一区二区三区| av.在线天堂| 91在线精品国自产拍蜜月| 啦啦啦韩国在线观看视频| 无遮挡黄片免费观看| 给我免费播放毛片高清在线观看| 尾随美女入室| 亚洲熟妇中文字幕五十中出| 久久草成人影院| 国内精品美女久久久久久| 亚洲七黄色美女视频| 午夜福利成人在线免费观看| 久久精品国产鲁丝片午夜精品| 在线观看免费视频日本深夜| 听说在线观看完整版免费高清| 在线播放国产精品三级| av在线蜜桃| 在线观看美女被高潮喷水网站| 国产单亲对白刺激| 亚洲无线观看免费| 国产成人91sexporn| 免费看日本二区| 国产精品久久久久久亚洲av鲁大| 噜噜噜噜噜久久久久久91| 九九爱精品视频在线观看| 22中文网久久字幕| 亚洲最大成人手机在线| 在线观看免费视频日本深夜| 亚洲国产精品成人综合色| 成人精品一区二区免费| 色综合亚洲欧美另类图片| 午夜激情欧美在线| 成年版毛片免费区| 女人十人毛片免费观看3o分钟| 午夜精品一区二区三区免费看| 黄片wwwwww| 秋霞在线观看毛片| 精品一区二区三区视频在线观看免费| 一个人观看的视频www高清免费观看| a级一级毛片免费在线观看| 免费电影在线观看免费观看| 非洲黑人性xxxx精品又粗又长| 一级毛片aaaaaa免费看小| 午夜a级毛片| 晚上一个人看的免费电影| 午夜福利在线在线| 一级毛片我不卡| 亚洲av中文字字幕乱码综合| 国产私拍福利视频在线观看| 欧美丝袜亚洲另类| 国产精品久久久久久久电影| 日韩欧美免费精品| 成人一区二区视频在线观看| 精品国产三级普通话版| a级毛色黄片| 我的老师免费观看完整版| 狠狠狠狠99中文字幕| 欧美最黄视频在线播放免费| 久久精品国产自在天天线| 久久久久性生活片| 我的老师免费观看完整版| 久久午夜福利片| 伦精品一区二区三区| 国产成年人精品一区二区| 九九爱精品视频在线观看| 日本与韩国留学比较| 国产真实乱freesex| 在线a可以看的网站| 综合色丁香网| 中文字幕av在线有码专区| 黑人高潮一二区| 淫妇啪啪啪对白视频| 国产一区二区在线av高清观看| 午夜日韩欧美国产| 亚洲av熟女| av福利片在线观看| 99在线视频只有这里精品首页| 大型黄色视频在线免费观看| 久久草成人影院| 国产高清激情床上av| 久久久a久久爽久久v久久| 日本精品一区二区三区蜜桃| 天堂av国产一区二区熟女人妻| 亚洲精品国产成人久久av| 国产精品亚洲美女久久久| 欧美激情在线99| 国产精品1区2区在线观看.| 欧美xxxx黑人xx丫x性爽| 国产极品精品免费视频能看的| 亚洲国产色片| av天堂在线播放| 99久国产av精品| 国产蜜桃级精品一区二区三区| 久久久久久久亚洲中文字幕| 女生性感内裤真人,穿戴方法视频| 亚洲精华国产精华液的使用体验 | 99久久精品国产国产毛片| 日本黄大片高清| 中文字幕精品亚洲无线码一区| 国产av在哪里看| 精品日产1卡2卡| 美女免费视频网站| 99久久成人亚洲精品观看| 久久九九热精品免费| 变态另类成人亚洲欧美熟女| 国产精品嫩草影院av在线观看| 亚洲精品亚洲一区二区| 亚洲av不卡在线观看| 99久久中文字幕三级久久日本| 亚洲丝袜综合中文字幕| 搡老妇女老女人老熟妇| 全区人妻精品视频| 久久人人爽人人片av| 欧美日韩精品成人综合77777| 级片在线观看| 久久久精品94久久精品| 黄色一级大片看看| 一本一本综合久久| 村上凉子中文字幕在线| 国产av一区在线观看免费| 国产国拍精品亚洲av在线观看| 国产亚洲精品av在线| 色播亚洲综合网| 不卡一级毛片| 欧美3d第一页| 色综合亚洲欧美另类图片| 免费人成在线观看视频色| 免费大片18禁| 国产亚洲精品久久久久久毛片| 国产成人aa在线观看| 亚洲成人中文字幕在线播放| 精品久久久久久久久久久久久| 国产黄a三级三级三级人| a级一级毛片免费在线观看| 一夜夜www| 一级黄色大片毛片| 国模一区二区三区四区视频| 亚洲成人久久性| 久久久国产成人精品二区| 香蕉av资源在线| 99精品在免费线老司机午夜| 69人妻影院| 免费观看在线日韩| 最新在线观看一区二区三区| 亚洲av.av天堂| 亚洲三级黄色毛片| 亚洲av第一区精品v没综合| 亚洲成人av在线免费| 禁无遮挡网站| 久久人人精品亚洲av| 亚洲一区高清亚洲精品| 热99在线观看视频| 内地一区二区视频在线| 国产一区二区激情短视频| 人妻制服诱惑在线中文字幕| 日韩亚洲欧美综合| 搡老岳熟女国产| 亚洲在线自拍视频| 日韩成人av中文字幕在线观看 | 男人和女人高潮做爰伦理| 精品人妻偷拍中文字幕| 成年免费大片在线观看| 久久精品国产清高在天天线| 欧美高清成人免费视频www| 国产精品久久久久久av不卡| 日韩人妻高清精品专区| 内地一区二区视频在线| 国国产精品蜜臀av免费| 欧美不卡视频在线免费观看| 午夜爱爱视频在线播放| 日韩精品有码人妻一区| 亚洲av中文字字幕乱码综合| av卡一久久| 日本熟妇午夜| 禁无遮挡网站| 精品人妻视频免费看| 色视频www国产| 国产一区二区在线观看日韩| 亚洲美女搞黄在线观看 | 真人做人爱边吃奶动态| 久久久精品94久久精品| 亚洲无线观看免费| 成人午夜高清在线视频| 国产精品一区二区性色av| 国产v大片淫在线免费观看| 国产男人的电影天堂91| 亚洲国产精品合色在线| 午夜爱爱视频在线播放| 国产高清激情床上av| 精品久久久久久久人妻蜜臀av| 夜夜爽天天搞| 97碰自拍视频| 亚洲天堂国产精品一区在线| 美女xxoo啪啪120秒动态图| 99视频精品全部免费 在线| 精品欧美国产一区二区三| 一级a爱片免费观看的视频| 成人综合一区亚洲| 丝袜美腿在线中文| 在线观看av片永久免费下载| 直男gayav资源| 亚洲无线在线观看| 在线观看免费视频日本深夜| 欧美丝袜亚洲另类| 免费不卡的大黄色大毛片视频在线观看 | 国产男靠女视频免费网站| 久久久久久久久久久丰满| or卡值多少钱| 亚洲国产高清在线一区二区三| 免费看av在线观看网站| 国产一区亚洲一区在线观看| 久久久久国产网址| 乱系列少妇在线播放| 九九久久精品国产亚洲av麻豆| 日韩在线高清观看一区二区三区| 最近手机中文字幕大全| 亚洲精品日韩av片在线观看| 成人一区二区视频在线观看| av卡一久久| 日产精品乱码卡一卡2卡三| 丝袜喷水一区| av在线播放精品| 日韩一本色道免费dvd| av黄色大香蕉| 天美传媒精品一区二区| 成人av一区二区三区在线看| 亚洲精品乱码久久久v下载方式| 露出奶头的视频| 夜夜看夜夜爽夜夜摸| 国产v大片淫在线免费观看| 色哟哟·www| h日本视频在线播放| a级毛色黄片| 国产高清视频在线观看网站| 少妇高潮的动态图| 99热全是精品| 日本精品一区二区三区蜜桃| 伦理电影大哥的女人| 久久精品国产亚洲网站| 国产私拍福利视频在线观看| 免费看光身美女| 一进一出抽搐动态| 一区福利在线观看| 久久亚洲国产成人精品v| 日本欧美国产在线视频| 精品国产三级普通话版| 久久亚洲国产成人精品v| 男人和女人高潮做爰伦理| 精品国产三级普通话版| 中国美白少妇内射xxxbb| 亚洲欧美日韩高清专用| 男女做爰动态图高潮gif福利片| av在线亚洲专区| 在现免费观看毛片| 婷婷六月久久综合丁香| 国产精品亚洲美女久久久| 国产人妻一区二区三区在| 99久久精品热视频| 搞女人的毛片| 亚洲欧美日韩高清专用| 99久久精品热视频| 内射极品少妇av片p| 好男人在线观看高清免费视频| 午夜a级毛片| 色5月婷婷丁香| 乱系列少妇在线播放| 色吧在线观看| 国产精品一区二区三区四区免费观看 | 国产老妇女一区| 欧美成人精品欧美一级黄| 国产成人福利小说|