• <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久久网站| 欧美亚洲日本最大视频资源| 一级毛片我不卡| www.精华液| 亚洲天堂av无毛| 国产淫语在线视频| 国产精品不卡视频一区二区| 一二三四在线观看免费中文在| av天堂久久9| 亚洲av成人精品一二三区| 久久久久久久久久久久大奶| 精品国产乱码久久久久久男人| 韩国精品一区二区三区| 一区二区三区乱码不卡18| 国产男人的电影天堂91| 国产黄色免费在线视频| 国产精品二区激情视频| 波多野结衣av一区二区av| 色婷婷久久久亚洲欧美| 久久久久国产一级毛片高清牌| 制服丝袜香蕉在线| 18禁国产床啪视频网站| 久久精品国产亚洲av天美| 在现免费观看毛片| 免费av中文字幕在线| 又大又黄又爽视频免费| 纵有疾风起免费观看全集完整版| 尾随美女入室| 十八禁高潮呻吟视频| 久久久久精品性色| 黄片播放在线免费| 搡女人真爽免费视频火全软件| 男女免费视频国产| 欧美老熟妇乱子伦牲交| 久久精品国产亚洲av天美| 久久久久国产精品人妻一区二区| 一二三四中文在线观看免费高清| www.精华液| 日韩人妻精品一区2区三区| 日韩在线高清观看一区二区三区| 自线自在国产av| 国产成人aa在线观看| 91在线精品国自产拍蜜月| 99热网站在线观看| 满18在线观看网站| 国产白丝娇喘喷水9色精品| 美女中出高潮动态图| 久久精品久久久久久久性| 亚洲欧美一区二区三区久久| 日本av手机在线免费观看| 性少妇av在线| 亚洲人成电影观看| 成人亚洲欧美一区二区av| 热99久久久久精品小说推荐| 黄色 视频免费看| 亚洲av综合色区一区| 一级a爱视频在线免费观看| 国产综合精华液| √禁漫天堂资源中文www| 日韩中文字幕视频在线看片| av免费在线看不卡| 美女国产视频在线观看| 国产成人免费观看mmmm| 亚洲熟女精品中文字幕| 亚洲精品久久久久久婷婷小说| 国产av码专区亚洲av| 岛国毛片在线播放| 国产精品不卡视频一区二区| 一区二区日韩欧美中文字幕| 日韩精品免费视频一区二区三区| 秋霞伦理黄片| 曰老女人黄片| 免费观看无遮挡的男女| 男女国产视频网站| 欧美精品国产亚洲| 一本—道久久a久久精品蜜桃钙片| 视频区图区小说| 五月伊人婷婷丁香| 国产精品偷伦视频观看了| 久久免费观看电影| 亚洲国产精品一区二区三区在线| 成人亚洲精品一区在线观看| 久久鲁丝午夜福利片| 亚洲久久久国产精品| 亚洲,欧美精品.| 赤兔流量卡办理| 成年动漫av网址| 精品一区二区三卡| 国产精品久久久av美女十八| 亚洲av在线观看美女高潮| 亚洲成人一二三区av| 欧美成人午夜精品| 一级a爱视频在线免费观看| a 毛片基地| 高清欧美精品videossex| 99香蕉大伊视频| 精品人妻偷拍中文字幕| 久久国产精品大桥未久av| 日韩,欧美,国产一区二区三区| 高清视频免费观看一区二区| 久久久欧美国产精品| www.av在线官网国产| 80岁老熟妇乱子伦牲交| 熟妇人妻不卡中文字幕| 国产深夜福利视频在线观看| 999久久久国产精品视频| 国产欧美日韩一区二区三区在线| 丝袜在线中文字幕| 中文字幕亚洲精品专区| 晚上一个人看的免费电影| 久热久热在线精品观看| 女的被弄到高潮叫床怎么办| 中文字幕制服av| 久久久久久久大尺度免费视频| 亚洲成人一二三区av| 免费看av在线观看网站| 麻豆精品久久久久久蜜桃| 亚洲欧美一区二区三区国产| 中文乱码字字幕精品一区二区三区| 日日摸夜夜添夜夜爱| 久久国产亚洲av麻豆专区| 久久97久久精品| 啦啦啦在线免费观看视频4| 日日摸夜夜添夜夜爱| 中文字幕av电影在线播放| 少妇猛男粗大的猛烈进出视频| 日韩成人av中文字幕在线观看| 亚洲精品久久午夜乱码| av国产精品久久久久影院| 精品少妇久久久久久888优播| 免费观看性生交大片5| 久久久久久久精品精品| xxxhd国产人妻xxx| 啦啦啦在线免费观看视频4| 国产1区2区3区精品| 日日摸夜夜添夜夜爱| av国产久精品久网站免费入址| 午夜日韩欧美国产| 亚洲国产欧美网| 又黄又粗又硬又大视频| 日韩免费高清中文字幕av| 日韩免费高清中文字幕av| 2021少妇久久久久久久久久久| 亚洲av免费高清在线观看| 超碰成人久久| 国产精品99久久99久久久不卡 | 色吧在线观看| 精品午夜福利在线看| 久久久久视频综合| 欧美精品国产亚洲| 夫妻午夜视频| 精品第一国产精品| 人人澡人人妻人| 黄色毛片三级朝国网站| videossex国产| 99久久精品国产国产毛片| 色婷婷久久久亚洲欧美| 一级a爱视频在线免费观看| 久久人人爽人人片av| 久久久精品区二区三区| 九九爱精品视频在线观看| 亚洲少妇的诱惑av| 新久久久久国产一级毛片| 91成人精品电影| 久久久久久久亚洲中文字幕| 另类亚洲欧美激情| 一本一本久久a久久精品综合妖精 国产伦在线观看视频一区 | 精品一品国产午夜福利视频| 欧美在线黄色| 精品一品国产午夜福利视频| 免费少妇av软件| 精品一区二区三卡| 黄片小视频在线播放| 黄色配什么色好看| av.在线天堂| 母亲3免费完整高清在线观看 | 一级毛片 在线播放| 国产亚洲欧美精品永久| 男女国产视频网站| 亚洲精品久久午夜乱码| 精品卡一卡二卡四卡免费| 欧美人与性动交α欧美软件| 黄色视频在线播放观看不卡| 人妻系列 视频| 999久久久国产精品视频| tube8黄色片| av视频免费观看在线观看| 免费在线观看完整版高清| 亚洲中文av在线| 大话2 男鬼变身卡| 日韩av不卡免费在线播放| 国产精品成人在线| 这个男人来自地球电影免费观看 | 人妻少妇偷人精品九色| 国产1区2区3区精品| 亚洲精品国产av成人精品| 一级a爱视频在线免费观看| 久久久精品区二区三区| 男人舔女人的私密视频| 男女无遮挡免费网站观看| 99re6热这里在线精品视频| 亚洲经典国产精华液单| 久久免费观看电影| av片东京热男人的天堂| 欧美少妇被猛烈插入视频| 国产一区二区 视频在线| 一二三四中文在线观看免费高清| 97人妻天天添夜夜摸| 久久久久久人妻| 久久久欧美国产精品| 国产免费现黄频在线看| 欧美精品人与动牲交sv欧美| 99香蕉大伊视频| 又粗又硬又长又爽又黄的视频| 黑人欧美特级aaaaaa片| 亚洲精品av麻豆狂野| 亚洲欧美中文字幕日韩二区| 免费黄网站久久成人精品| 精品一品国产午夜福利视频| videosex国产| 成人毛片60女人毛片免费| 亚洲美女黄色视频免费看| 美女国产视频在线观看| 丰满迷人的少妇在线观看| 久久久久网色| 欧美日韩亚洲高清精品| 蜜桃在线观看..| 色网站视频免费| 免费高清在线观看视频在线观看| 精品国产一区二区久久| 欧美精品av麻豆av| 午夜老司机福利剧场| 蜜桃国产av成人99| 精品一品国产午夜福利视频| 免费高清在线观看日韩| 只有这里有精品99| 中文精品一卡2卡3卡4更新| 天堂8中文在线网| av电影中文网址| 美女视频免费永久观看网站| 天天躁狠狠躁夜夜躁狠狠躁| 免费大片黄手机在线观看| 日韩av在线免费看完整版不卡| 菩萨蛮人人尽说江南好唐韦庄| 日本av手机在线免费观看| 亚洲国产色片| 久久久a久久爽久久v久久| 欧美日本中文国产一区发布| 男女下面插进去视频免费观看| 国产欧美日韩综合在线一区二区| 欧美另类一区| 中文字幕精品免费在线观看视频| 久久久久久久大尺度免费视频| 国产午夜精品一二区理论片| 制服丝袜香蕉在线| 成人国产麻豆网| 两个人看的免费小视频| 男人爽女人下面视频在线观看| 晚上一个人看的免费电影| 另类亚洲欧美激情| 天堂中文最新版在线下载| 一级毛片 在线播放| 看免费av毛片| 国产日韩欧美视频二区| 巨乳人妻的诱惑在线观看| 大话2 男鬼变身卡| 国产人伦9x9x在线观看 | 黄色一级大片看看| 国产 一区精品| 天美传媒精品一区二区| 亚洲精品在线美女| 韩国精品一区二区三区| 波野结衣二区三区在线| 99香蕉大伊视频| 国产成人a∨麻豆精品| 欧美 日韩 精品 国产| 国产精品一区二区在线观看99| 99热国产这里只有精品6| 精品卡一卡二卡四卡免费| 国产乱人偷精品视频| 性高湖久久久久久久久免费观看| 又大又黄又爽视频免费| 国产免费视频播放在线视频| 中文字幕亚洲精品专区| 在线精品无人区一区二区三| 男人操女人黄网站| 免费av中文字幕在线| 九色亚洲精品在线播放| 一区二区日韩欧美中文字幕| 男的添女的下面高潮视频| 免费av中文字幕在线| 99久国产av精品国产电影| 日日啪夜夜爽| 黄色配什么色好看| 亚洲精品久久久久久婷婷小说| 男女高潮啪啪啪动态图| 丰满饥渴人妻一区二区三| 国产又色又爽无遮挡免| 亚洲精品久久久久久婷婷小说| 国产高清国产精品国产三级| 国产精品久久久久久精品电影小说| 久久狼人影院| 高清黄色对白视频在线免费看| 啦啦啦在线观看免费高清www| 国产老妇伦熟女老妇高清| 国产精品麻豆人妻色哟哟久久| 亚洲欧美一区二区三区黑人 | 亚洲精品在线美女| 国产精品二区激情视频| 日本色播在线视频| 91精品国产国语对白视频| 久久人人97超碰香蕉20202| 久久国产精品大桥未久av| 精品国产一区二区久久| 亚洲精品乱久久久久久| 欧美精品av麻豆av| 亚洲欧美精品综合一区二区三区 | 99国产综合亚洲精品| 色婷婷av一区二区三区视频| 精品久久久精品久久久| 欧美av亚洲av综合av国产av | 国产成人精品久久久久久| 亚洲精品国产一区二区精华液| 免费在线观看视频国产中文字幕亚洲 | 电影成人av| 大片电影免费在线观看免费| 午夜激情av网站| 尾随美女入室| 午夜av观看不卡| 精品少妇内射三级| 一个人免费看片子| 人成视频在线观看免费观看| 国产视频首页在线观看| 性色av一级| 久久久久国产网址| 99热网站在线观看| 五月天丁香电影| 国产不卡av网站在线观看| 最新的欧美精品一区二区| 欧美中文综合在线视频| 午夜激情av网站| 久久亚洲国产成人精品v| 国产欧美日韩综合在线一区二区| 精品卡一卡二卡四卡免费| 少妇精品久久久久久久| 最近最新中文字幕大全免费视频 | 三上悠亚av全集在线观看| 久久久久久久久久人人人人人人| 十分钟在线观看高清视频www| 国产老妇伦熟女老妇高清| 伦精品一区二区三区| 日韩伦理黄色片| 婷婷色综合www| 丁香六月天网| 制服丝袜香蕉在线| 国产亚洲最大av| 香蕉精品网在线| 免费高清在线观看日韩| 国产精品人妻久久久影院| 秋霞在线观看毛片| 黄色一级大片看看| 各种免费的搞黄视频| 国产精品免费视频内射| 18禁国产床啪视频网站| 看非洲黑人一级黄片| www日本在线高清视频| 在线观看免费视频网站a站| 久久99精品国语久久久| 日日摸夜夜添夜夜爱| 天天影视国产精品| 成人毛片a级毛片在线播放| 国产一区二区 视频在线| 伊人久久大香线蕉亚洲五| 天堂中文最新版在线下载| 精品一区在线观看国产| 飞空精品影院首页| 丝袜美腿诱惑在线| 免费久久久久久久精品成人欧美视频| 久久人人爽人人片av| 久久久久国产网址| 日本vs欧美在线观看视频| 日韩 亚洲 欧美在线| 亚洲第一青青草原| 最黄视频免费看| 老司机亚洲免费影院| 精品人妻在线不人妻| 国产熟女午夜一区二区三区| 免费在线观看视频国产中文字幕亚洲 | 啦啦啦视频在线资源免费观看| 熟妇人妻不卡中文字幕| 永久网站在线| 黄色怎么调成土黄色| 国产日韩欧美亚洲二区| 久久免费观看电影| 啦啦啦中文免费视频观看日本| 国产野战对白在线观看| 成人毛片a级毛片在线播放| 午夜免费鲁丝| 高清在线视频一区二区三区| 久久精品国产亚洲av高清一级| 激情五月婷婷亚洲| 欧美成人午夜免费资源| 亚洲第一区二区三区不卡| 综合色丁香网| 久久久国产欧美日韩av| 大香蕉久久成人网| 大片免费播放器 马上看| h视频一区二区三区| av福利片在线| 成年人午夜在线观看视频| 国产精品二区激情视频| 国产97色在线日韩免费| 狂野欧美激情性bbbbbb| 精品酒店卫生间| 亚洲综合色网址| 少妇人妻精品综合一区二区| 国产精品av久久久久免费| 久久影院123| 久久久久久人妻| 天天操日日干夜夜撸| 啦啦啦视频在线资源免费观看| 国产精品香港三级国产av潘金莲 | 99久久精品国产国产毛片| 国产又色又爽无遮挡免| 26uuu在线亚洲综合色| 亚洲国产精品成人久久小说| 国产一区二区三区综合在线观看| 啦啦啦在线观看免费高清www| 黄网站色视频无遮挡免费观看| 看十八女毛片水多多多| √禁漫天堂资源中文www| 久热久热在线精品观看| 国产免费福利视频在线观看| 亚洲精品久久午夜乱码| 日本欧美视频一区| 亚洲色图 男人天堂 中文字幕| 亚洲欧美清纯卡通| 人妻一区二区av| 女人精品久久久久毛片| 少妇人妻精品综合一区二区| 色94色欧美一区二区| 国产片内射在线| 男女午夜视频在线观看| 欧美日韩一级在线毛片| 伦理电影大哥的女人| 啦啦啦在线观看免费高清www| 欧美日韩亚洲高清精品| 天堂中文最新版在线下载| av国产精品久久久久影院| 久久婷婷青草| 日韩中字成人| 久久精品夜色国产| 人人妻人人澡人人爽人人夜夜| 国产精品欧美亚洲77777| 亚洲精品一区蜜桃| 国产精品无大码| 亚洲精品成人av观看孕妇| 久久久久久久久久久免费av| 国产精品人妻久久久影院| 另类精品久久| 精品国产乱码久久久久久男人| 在线观看国产h片| 老女人水多毛片| 精品国产乱码久久久久久小说| 丝袜脚勾引网站| 久久国产精品大桥未久av| 欧美精品国产亚洲| 欧美成人精品欧美一级黄| 永久免费av网站大全| 日日爽夜夜爽网站| 美女午夜性视频免费| 成人黄色视频免费在线看| 亚洲欧美中文字幕日韩二区| 久久精品人人爽人人爽视色| 欧美精品av麻豆av| av在线老鸭窝| 69精品国产乱码久久久| 一本久久精品| 熟女av电影| 成年女人毛片免费观看观看9 | 制服人妻中文乱码| 老女人水多毛片| 看非洲黑人一级黄片| 久久精品夜色国产| 欧美日韩一区二区视频在线观看视频在线| 青青草视频在线视频观看| tube8黄色片| 久久精品久久久久久噜噜老黄| 一区二区三区激情视频| 日本免费在线观看一区| 一区二区三区四区激情视频| 精品人妻在线不人妻| 美女国产视频在线观看| 另类精品久久| 视频在线观看一区二区三区| 免费在线观看视频国产中文字幕亚洲 | 欧美成人午夜精品| 99精国产麻豆久久婷婷| 看免费av毛片| 国产精品国产av在线观看| 多毛熟女@视频| 国产一区有黄有色的免费视频| 国产麻豆69| 性色av一级| 美女脱内裤让男人舔精品视频| 我的亚洲天堂| 人妻 亚洲 视频| 一级毛片 在线播放| 狠狠精品人妻久久久久久综合| 免费人妻精品一区二区三区视频| 国产片特级美女逼逼视频| 大陆偷拍与自拍| 黄色毛片三级朝国网站| 1024香蕉在线观看| 高清av免费在线| 欧美av亚洲av综合av国产av | 黄片无遮挡物在线观看| 亚洲国产精品成人久久小说| 精品国产乱码久久久久久男人| 国产av国产精品国产| 亚洲久久久国产精品| 精品第一国产精品| 热99久久久久精品小说推荐| 可以免费在线观看a视频的电影网站 | 一级毛片电影观看| 老女人水多毛片| 日韩精品有码人妻一区| 999精品在线视频| 亚洲精品日韩在线中文字幕| 五月天丁香电影| 叶爱在线成人免费视频播放| 国产1区2区3区精品| 中文字幕人妻丝袜一区二区 | 色哟哟·www| 久久国产精品男人的天堂亚洲| 搡女人真爽免费视频火全软件| 日韩中文字幕欧美一区二区 | 9热在线视频观看99| 在线天堂最新版资源| 99久久综合免费| 国产一区二区激情短视频 | 日日爽夜夜爽网站| 伦精品一区二区三区| 丰满迷人的少妇在线观看| 免费看不卡的av| 97在线视频观看| 一区福利在线观看| 又粗又硬又长又爽又黄的视频| 91成人精品电影| 久久这里只有精品19| 亚洲国产成人一精品久久久| 国产精品无大码| 亚洲成人一二三区av| 亚洲天堂av无毛| 老汉色∧v一级毛片| 街头女战士在线观看网站| 精品国产超薄肉色丝袜足j| 视频在线观看一区二区三区| 久久久久精品性色| 亚洲一码二码三码区别大吗| 99久久精品国产国产毛片| 熟女电影av网| av电影中文网址| 日本免费在线观看一区| 久久午夜福利片| 黄色一级大片看看| 美女福利国产在线| 国产精品.久久久| 国产1区2区3区精品| 亚洲经典国产精华液单| 91精品伊人久久大香线蕉| 亚洲精品美女久久av网站| 亚洲,一卡二卡三卡| 久久精品人人爽人人爽视色| 中文字幕av电影在线播放| 国产欧美亚洲国产| 久久97久久精品| 亚洲中文av在线| 精品卡一卡二卡四卡免费| 丝袜美腿诱惑在线| 天天躁日日躁夜夜躁夜夜| 人体艺术视频欧美日本| 99九九在线精品视频| 侵犯人妻中文字幕一二三四区| 久久人妻熟女aⅴ| 亚洲四区av| 制服丝袜香蕉在线| 老司机影院成人| 亚洲av欧美aⅴ国产| 免费黄色在线免费观看| 91国产中文字幕| 如何舔出高潮| 最新中文字幕久久久久| 伊人久久大香线蕉亚洲五| 日本vs欧美在线观看视频| 精品亚洲成a人片在线观看| 一级毛片 在线播放| 免费黄频网站在线观看国产| 国产亚洲欧美精品永久| kizo精华| 中文字幕最新亚洲高清| 久久久久精品人妻al黑| 久久国产亚洲av麻豆专区| 亚洲经典国产精华液单| 午夜91福利影院| 日韩熟女老妇一区二区性免费视频| 亚洲综合色网址| 亚洲国产看品久久| 亚洲欧洲日产国产| 丁香六月天网| 国产极品粉嫩免费观看在线| 久久久久久人妻| 最近最新中文字幕免费大全7| 美女中出高潮动态图|