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

    基于變化數(shù)據(jù)捕獲機(jī)制的分布式緩存一致性策略①

    2016-02-20 06:52:04苗宗利段世凱劉財(cái)政支孟軒
    關(guān)鍵詞:謂詞觸發(fā)器數(shù)據(jù)模型

    江 勇, 苗宗利, 王 偉, 段世凱, 劉財(cái)政, 支孟軒

    1(中國(guó)科學(xué)院大學(xué), 北京 100049)2(中國(guó)科學(xué)院軟件研究所 軟件工程技術(shù)研究開(kāi)發(fā)中心, 北京 100190)3(中國(guó)電子技術(shù)標(biāo)準(zhǔn)化研究院, 北京 100007)

    基于變化數(shù)據(jù)捕獲機(jī)制的分布式緩存一致性策略①

    江 勇1,2, 苗宗利3, 王 偉2, 段世凱1,2, 劉財(cái)政1,2, 支孟軒2

    1(中國(guó)科學(xué)院大學(xué), 北京 100049)2(中國(guó)科學(xué)院軟件研究所 軟件工程技術(shù)研究開(kāi)發(fā)中心, 北京 100190)3(中國(guó)電子技術(shù)標(biāo)準(zhǔn)化研究院, 北京 100007)

    分布式緩存被廣泛應(yīng)用于解決傳統(tǒng)關(guān)系型數(shù)據(jù)庫(kù)的性能瓶頸問(wèn)題, 但是當(dāng)不能感知分布式緩存的第三方應(yīng)用直接更新后臺(tái)數(shù)據(jù)庫(kù)時(shí), 緩存數(shù)據(jù)會(huì)獲得不一致的狀態(tài), 存在過(guò)時(shí)緩存問(wèn)題. 本文提出一種基于變化數(shù)據(jù)捕獲機(jī)制的分布式緩存一致性策略, 集成了基于觸發(fā)器和基于日志的兩種變化數(shù)據(jù)捕獲機(jī)制實(shí)時(shí)捕獲后臺(tái)數(shù)據(jù)庫(kù)更新, 實(shí)現(xiàn)了數(shù)據(jù)模型自動(dòng)轉(zhuǎn)換方法和SQL翻譯引擎, 實(shí)時(shí)更新緩存, 從而保障分布式緩存的一致性. 實(shí)驗(yàn)?zāi)MTPC-W測(cè)試基準(zhǔn)中的關(guān)鍵操作, 驗(yàn)證了基于日志的變化數(shù)據(jù)捕獲機(jī)制相比基于觸發(fā)器的變化數(shù)據(jù)捕獲機(jī)制有更好的數(shù)據(jù)庫(kù)性能和緩存一致性效果.

    分布式緩存; 變化數(shù)據(jù)捕獲; 模型轉(zhuǎn)換; SQL翻譯

    1 引言

    為了應(yīng)對(duì)海量數(shù)據(jù)與大規(guī)模用戶請(qǐng)求帶來(lái)的挑戰(zhàn),解決傳統(tǒng)數(shù)據(jù)庫(kù)面臨的大規(guī)模數(shù)據(jù)訪問(wèn)瓶頸問(wèn)題, 分布式緩存被廣泛應(yīng)用, 為用戶提供高性能、高可用、可伸縮的數(shù)據(jù)緩存服務(wù). 但是, 當(dāng)不能感知緩存的第三方應(yīng)用程序直接更新后臺(tái)數(shù)據(jù)庫(kù)數(shù)據(jù)時(shí), 緩存會(huì)獲得不一致的狀態(tài), 存在過(guò)時(shí)緩存問(wèn)題[1], 如圖1所示.

    保持緩存和后臺(tái)數(shù)據(jù)庫(kù)數(shù)據(jù)的數(shù)據(jù)一致性一直是開(kāi)發(fā)人員重點(diǎn)關(guān)注的問(wèn)題. 現(xiàn)有的典型分布式緩存方案, 如Memcached[2], Redis[3], Hazelcast[4]等, 主要通過(guò)基于過(guò)期的緩存一致性策略來(lái)保持緩存和后臺(tái)數(shù)據(jù)庫(kù)的數(shù)據(jù)一致性. 每個(gè)動(dòng)態(tài)的緩存條目都會(huì)創(chuàng)建一個(gè)默認(rèn)的存在時(shí)間清除器, 在預(yù)定義的時(shí)間間隔后會(huì)清除相應(yīng)的數(shù)據(jù)條目, 但是過(guò)期時(shí)間的設(shè)定是一條經(jīng)驗(yàn)規(guī)則, 需要開(kāi)發(fā)人員對(duì)數(shù)據(jù)的準(zhǔn)確性需求和對(duì)數(shù)據(jù)過(guò)時(shí)程度的容忍度有足夠的了解, 然后才能做出合適的決策. IBM的WebSphere eXtreme Scale[5]實(shí)現(xiàn)了基于輪詢的緩存一致性策略, 由緩存定期查詢數(shù)據(jù)庫(kù)以確定自上次加載以來(lái)數(shù)據(jù)是否發(fā)生了變更, 已在后臺(tái)數(shù)據(jù)庫(kù)中更新的條目失效或者使用新的數(shù)據(jù)更新緩存. 但是,這些定期查詢會(huì)給后臺(tái)數(shù)據(jù)庫(kù)帶來(lái)較大的負(fù)載壓力,輪詢機(jī)制也會(huì)消耗額外的CPU資源.

    針對(duì)現(xiàn)有緩存方案的特點(diǎn)以及緩存一致性策略存在的問(wèn)題, 本文提出一種基于變化數(shù)據(jù)捕獲機(jī)制[6](Change Data Capture, CDC)的緩存一致性策略, 主要包括以下三個(gè)方面內(nèi)容:

    (1) 變化數(shù)據(jù)捕獲機(jī)制. 設(shè)計(jì)實(shí)現(xiàn)關(guān)系型數(shù)據(jù)庫(kù)的數(shù)據(jù)變化捕獲機(jī)制, 實(shí)時(shí)監(jiān)聽(tīng)后臺(tái)數(shù)據(jù)庫(kù)的數(shù)據(jù)變化, 捕獲數(shù)據(jù)更新并傳送到分布式緩存, 支持基于觸發(fā)器和基于日志兩種方式.

    (2) 數(shù)據(jù)模型自動(dòng)轉(zhuǎn)換方法. 實(shí)現(xiàn)關(guān)系型數(shù)據(jù)模型向key-value數(shù)據(jù)模型的自動(dòng)轉(zhuǎn)換, 將數(shù)據(jù)庫(kù)表中的行數(shù)據(jù)自動(dòng)轉(zhuǎn)換為分布式緩存的對(duì)象數(shù)據(jù).

    (3) SQL翻譯引擎. 將變化數(shù)據(jù)捕獲機(jī)制捕獲到的SQL更新操作翻譯為緩存的key-value操作, 從而將更新同步到緩存.

    2 相關(guān)工作

    文獻(xiàn)[7,8]較為全面的介紹了變化數(shù)據(jù)捕獲技術(shù),主要有基于表記錄、復(fù)制、基于觸發(fā)器、基于日志等多種方法, 并比較了不同方法的條件、優(yōu)點(diǎn)、缺點(diǎn)和適用場(chǎng)合. 文獻(xiàn)[9]和文獻(xiàn)[10]分別介紹了基于觸發(fā)器和基于日志的變化數(shù)據(jù)捕獲技術(shù), 但是文獻(xiàn)[9]面向的是ETLM過(guò)程的數(shù)據(jù)倉(cāng)庫(kù), 文獻(xiàn)[10]面向?qū)崟r(shí)商業(yè)智能系統(tǒng).

    在緩存一致性策略方面, 文獻(xiàn)[11]介紹了同步進(jìn)制實(shí)現(xiàn)分布式緩存的強(qiáng)一致性, 每次更新數(shù)據(jù)時(shí), 會(huì)同步更新所有緩存結(jié)點(diǎn), 然后返回. 這種機(jī)制適用于以讀請(qǐng)求為主的應(yīng)用場(chǎng)景, 而當(dāng)數(shù)據(jù)更新操作頻繁時(shí),強(qiáng)一致性的同步機(jī)制會(huì)顯著增加系統(tǒng)響應(yīng)時(shí)間. 文獻(xiàn)[12]實(shí)現(xiàn)了在緩存增強(qiáng)的SQL系統(tǒng)上的緩存強(qiáng)一致性,并提出了IQ框架, 同時(shí)滿足ACID屬性, 但是分布式緩存受到CAP理論的約束, 該方法并不能夠在分布式緩存中適用; 文獻(xiàn)[13]將基于觸發(fā)器的數(shù)據(jù)捕獲技術(shù)應(yīng)用到緩存, 保障緩存的一致性, 提出了一種面向ORM框架的緩存中間件, 是數(shù)據(jù)捕獲技術(shù)的一次成功應(yīng)用. 但是該文獻(xiàn)重點(diǎn)在于緩存的ORM訪問(wèn)方式, 對(duì)數(shù)據(jù)捕獲技術(shù)在緩存中的應(yīng)用討論得并不夠細(xì)致.

    上述相關(guān)工作中, 有將CDC應(yīng)用到數(shù)據(jù)倉(cāng)庫(kù)和智能系統(tǒng)的, 但是仍缺少將CDC技術(shù)與分布式緩存的集成; 有的實(shí)現(xiàn)了緩存的強(qiáng)一致性, 但是存在場(chǎng)景限制,只適合讀請(qǐng)求為主的場(chǎng)景; 有的提出創(chuàng)新的緩存一致性框架, 但并不適合分布式緩存. 本文重點(diǎn)關(guān)注將變化數(shù)據(jù)捕獲技術(shù)應(yīng)用到分布式緩存中需解決的模型轉(zhuǎn)換, SQL翻譯等問(wèn)題, 并用兩種方式實(shí)現(xiàn)變化數(shù)據(jù)捕獲.

    針對(duì)現(xiàn)有緩存方案的特點(diǎn)以及緩存一致性策略存在的問(wèn)題, 本文提出一種基于變化數(shù)據(jù)捕獲機(jī)制的緩存一致性策略, 通過(guò)在源系統(tǒng)中添加觸發(fā)器和獲取關(guān)系型數(shù)據(jù)庫(kù)日志兩種方式實(shí)現(xiàn)變化數(shù)據(jù)捕獲機(jī)制, 然后實(shí)現(xiàn)關(guān)系型數(shù)據(jù)模型向key-value數(shù)據(jù)模型的自動(dòng)轉(zhuǎn)換, 最后解析SQL, 更新緩存, 實(shí)現(xiàn)數(shù)據(jù)從關(guān)系型數(shù)據(jù)庫(kù)到分布式緩存的自動(dòng)同步.

    3.1 變化數(shù)據(jù)捕獲機(jī)制

    變化數(shù)據(jù)捕獲技術(shù)是基于對(duì)數(shù)據(jù)源改變部分的數(shù)據(jù)識(shí)別、數(shù)據(jù)獲取和數(shù)據(jù)傳送技術(shù)來(lái)實(shí)現(xiàn)的, 在數(shù)據(jù)源數(shù)據(jù)發(fā)生變化時(shí), 將實(shí)時(shí)捕獲變更的數(shù)據(jù)并同步更新到分布式緩存中, 從而保障分布式緩存的一致性.本文實(shí)現(xiàn)基于觸發(fā)器和基于日志兩種變化數(shù)據(jù)捕獲機(jī)制, 并對(duì)比其優(yōu)缺點(diǎn).

    3.1.1 基于觸發(fā)器的變化數(shù)據(jù)捕獲

    通過(guò)在關(guān)系型數(shù)據(jù)庫(kù)中設(shè)置觸發(fā)器并設(shè)計(jì)一張日志表與源數(shù)據(jù)表相關(guān)聯(lián), 當(dāng)源數(shù)據(jù)表數(shù)據(jù)發(fā)生變化時(shí),通過(guò)觸發(fā)器機(jī)制自動(dòng)記錄數(shù)據(jù)變化到日志表. 同時(shí),監(jiān)聽(tīng)線程實(shí)時(shí)監(jiān)聽(tīng)日志表信息, 獲取最新的數(shù)據(jù)變化,并通過(guò)數(shù)據(jù)傳送渠道將變更數(shù)據(jù)更新到緩存.

    3 面向分布式緩存的變化數(shù)據(jù)捕獲機(jī)制

    該方法的重點(diǎn)在于觸發(fā)器的設(shè)計(jì). 觸發(fā)器一共有三種類(lèi)型, 分別對(duì)應(yīng)數(shù)據(jù)庫(kù)的插入, 刪除, 更新操作,任何數(shù)據(jù)表的變更操作, 都會(huì)觸發(fā)觸發(fā)器, 從而在觸發(fā)器日志表產(chǎn)生記錄. 圖2是針對(duì)數(shù)據(jù)庫(kù)test中的orders表插入操作時(shí)創(chuàng)建的觸發(fā)器.

    圖2 觸發(fā)器實(shí)例

    3.1.2 基于日志的變化數(shù)據(jù)捕獲

    關(guān)系型數(shù)據(jù)庫(kù)都管理著一個(gè)事務(wù)日志, 其中記錄了對(duì)數(shù)據(jù)庫(kù)內(nèi)容和元數(shù)據(jù)所做的更改. 基于日志的變化數(shù)據(jù)捕獲, 以關(guān)系型數(shù)據(jù)庫(kù)的事務(wù)日志為基礎(chǔ), 并對(duì)其進(jìn)行實(shí)時(shí)監(jiān)控, 一旦源數(shù)據(jù)庫(kù)發(fā)生數(shù)據(jù)變化, 就進(jìn)行實(shí)時(shí)捕獲, 對(duì)需要實(shí)時(shí)同步的數(shù)據(jù)進(jìn)行捕獲, 如圖3所示.

    圖3 基于日志的變化數(shù)據(jù)捕獲

    基于日志的變化數(shù)據(jù)捕獲需要訪問(wèn)關(guān)系型數(shù)據(jù)庫(kù)的事務(wù)日志, 并解析日志產(chǎn)生對(duì)應(yīng)的更新SQL操作.但是事務(wù)日志通常以二進(jìn)制的形式存在, 如果沒(méi)有官方文檔, 我們很難理解事務(wù)日志的內(nèi)容. 本文利用開(kāi)源工具open-replicator[14]實(shí)現(xiàn)基于日志的變化數(shù)據(jù)捕獲, open-replicator可以高效地解析Mysql的二進(jìn)制日志, 并實(shí)時(shí)產(chǎn)生監(jiān)聽(tīng)事件.

    3.1.3 變化數(shù)據(jù)捕獲機(jī)制比較

    表1從應(yīng)用條件、編程代價(jià)、性能, 移植性等方面比較了基于觸發(fā)器的變化數(shù)據(jù)捕獲機(jī)制和基于日志的變化數(shù)據(jù)捕獲機(jī)制.

    表1 兩種不同變化數(shù)據(jù)捕獲機(jī)制對(duì)比

    3.2 數(shù)據(jù)模型轉(zhuǎn)換方法

    分布式緩存以key/value形式存儲(chǔ)數(shù)據(jù), 有利于緩存節(jié)點(diǎn)的橫向擴(kuò)展, 其中key和value均為數(shù)據(jù)對(duì)象,而在關(guān)系型數(shù)據(jù)庫(kù)中, 數(shù)據(jù)以表的形式進(jìn)行存儲(chǔ), 因此要實(shí)現(xiàn)數(shù)據(jù)庫(kù)向分布式緩存數(shù)據(jù)的自動(dòng)同步, 首先要實(shí)現(xiàn)關(guān)系型數(shù)據(jù)模型向key/value數(shù)據(jù)模型的自動(dòng)轉(zhuǎn)換, 圖4是數(shù)據(jù)模型轉(zhuǎn)換實(shí)例.

    圖4 數(shù)據(jù)模型轉(zhuǎn)換實(shí)例

    (1) 分布式緩存key的生成方法

    生成分布式緩存的key, 首先要考慮兩個(gè)問(wèn)題: ①key的唯一性: 由于分布式緩存一般以Map的結(jié)構(gòu)存在, key的唯一性是Map存儲(chǔ)數(shù)據(jù)的必要條件; ②key的易用性: 分布式緩存中, 會(huì)計(jì)算key的哈希值從而確定數(shù)據(jù)的具體分布, 一個(gè)合理的key需保障哈希值的易計(jì)算, 同時(shí), 分布式緩存的數(shù)據(jù)讀取都以key為基礎(chǔ), 如果key的生成過(guò)于復(fù)雜, 在數(shù)據(jù)讀取時(shí)都會(huì)帶來(lái)不必要的性能開(kāi)銷(xiāo). 為了保證key的唯一性和易用性, 本文中的key都以字符串的形式存在, 對(duì)于數(shù)據(jù)庫(kù)中的單一主鍵情形, 直接選取數(shù)據(jù)庫(kù)表中的主鍵作為數(shù)據(jù)對(duì)象的key, 對(duì)于數(shù)據(jù)庫(kù)表中的多主鍵情況,將多列主鍵通過(guò)特殊間隔符組合拼接, 生成單一的key, 對(duì)數(shù)據(jù)庫(kù)表中沒(méi)有明確指定主鍵的情況, 采用主鍵自增方式, 為每個(gè)value對(duì)象維護(hù)一個(gè)整數(shù)自增變量作為對(duì)應(yīng)的key值.

    (2) value的生成方法

    生成分布式緩存的value, 重點(diǎn)需考慮的是value的通用性. 由于關(guān)系型數(shù)據(jù)庫(kù)中不同表的數(shù)據(jù)含有不同的結(jié)構(gòu), 如何將不同表數(shù)據(jù)統(tǒng)一生成Map中的value,是本文重點(diǎn)考慮的問(wèn)題. 本文將一張數(shù)據(jù)庫(kù)表映射轉(zhuǎn)換成一個(gè)Map, 數(shù)據(jù)庫(kù)表中的一條記錄對(duì)應(yīng)Map中的一組key/value鍵值對(duì). 通過(guò)數(shù)據(jù)庫(kù)表的元信息為每個(gè)表動(dòng)態(tài)生成一個(gè)數(shù)據(jù)對(duì)象類(lèi), 類(lèi)中屬性的類(lèi)型和關(guān)系型數(shù)據(jù)庫(kù)屬性的類(lèi)型一一對(duì)應(yīng), 所有數(shù)據(jù)對(duì)象類(lèi)含有同一父類(lèi), 這樣, 為數(shù)據(jù)庫(kù)表的每條記錄生成的每個(gè)對(duì)象實(shí)例, 都能存儲(chǔ)到同一結(jié)構(gòu)的Map中.

    (3) Map的索引

    關(guān)系型數(shù)據(jù)庫(kù)中的索引信息是提供高效數(shù)據(jù)訪問(wèn)的正確手段. 本文為了將關(guān)系型數(shù)據(jù)庫(kù)的索引信息同步到分布式緩存, 專(zhuān)門(mén)設(shè)計(jì)了索引管理器. 在數(shù)據(jù)同步到緩存之前, 首先會(huì)利用數(shù)據(jù)庫(kù)表的元信息創(chuàng)建對(duì)應(yīng)的分布式Map, 同時(shí)會(huì)提取數(shù)據(jù)庫(kù)列索引信息, 在Map中加入對(duì)應(yīng)的索引. 在基于索引的查詢過(guò)程中,加入索引的Map可以快速尋址到對(duì)應(yīng)的value對(duì)象.

    3.3 SQL翻譯引擎

    通過(guò)變化數(shù)據(jù)捕獲機(jī)制獲得的監(jiān)聽(tīng)事件往往以SQL的形式存在, 而分布式緩存的操作是基于key/value存儲(chǔ)的操作, SQL翻譯引擎負(fù)責(zé)將SQL翻譯成基于key/value存儲(chǔ)的可執(zhí)行序列.

    對(duì)數(shù)據(jù)庫(kù)的更新主要來(lái)源于Insert, Delete, Update三類(lèi)語(yǔ)句, 本文主要翻譯這三類(lèi)語(yǔ)句. SQL作為一種結(jié)構(gòu)化查詢語(yǔ)言, 具有復(fù)雜的語(yǔ)法和完備的事務(wù)能力,使用key/value存儲(chǔ)結(jié)構(gòu)難以完整兼容所有SQL, 并且對(duì)于復(fù)雜的嵌套、統(tǒng)計(jì)等語(yǔ)法效率會(huì)很低下. 本文目前支持的SQL語(yǔ)法如下:

    (1) INSERT INTO <表名>[(<屬性列1>[, <屬性列2>…])] VALUES (<常量1>[, <常量2>…]);

    (2) DELETE FROM <表名> [WHERE <條件>];

    (3) UPDATE <表名> SET <列名>=<表達(dá)式>[, <列名>=<表達(dá)式>…] [WHERE <條件>];

    其中, 表達(dá)式支持常量的任意算術(shù)運(yùn)算組成的表達(dá)式, 條件支持BETWEEN, IN, LIKE, EXISTS, IS NULL, 布爾條件表達(dá)式, 等式表達(dá)式等.

    為了在key-value存儲(chǔ)系統(tǒng)上執(zhí)行SQL, 本文定義了3種謂詞: 基本謂詞(basic_predicate)、關(guān)系謂詞(relation_predicate)、執(zhí)行謂詞(execute_predicate), 如表2所示. 基本謂詞表示查詢條件, 如大于, like, exists等,每個(gè)基本謂詞是一系列基本k-v操作的封裝, 可直接在分布式緩存中執(zhí)行; 關(guān)系謂詞表示多個(gè)謂詞之間的與/或關(guān)系; 執(zhí)行謂詞分成插入謂詞(insert_predicate)、更新謂詞(update_predicate)、刪除謂詞(delete_predicate), 表示三種不同的基于鍵值對(duì)的數(shù)據(jù)更新操作.

    表2 謂詞定義

    在增刪改三類(lèi)數(shù)據(jù)更新請(qǐng)求中, 更新語(yǔ)句的解析與執(zhí)行相對(duì)來(lái)說(shuō)較為復(fù)雜, 算法1描述了更新語(yǔ)句的解析執(zhí)行過(guò)程. 首先, SQL解析后會(huì)生成一顆抽象語(yǔ)法樹(shù), 同時(shí)生成關(guān)系謂詞列表(relation_predicate_list),然后從關(guān)系謂詞列表中順序提取基本謂詞, 依據(jù)基本謂詞可從分布式緩存中獲取對(duì)應(yīng)的Value對(duì)象: map[table].getValue(basic_predicate), 再依據(jù)關(guān)系謂詞中的邏輯關(guān)系和基本謂詞獲得的Value對(duì)象, 獲得更新語(yǔ)句過(guò)程中的查詢結(jié)果, 更新謂詞會(huì)對(duì)該查詢結(jié)果對(duì)應(yīng)的數(shù)據(jù)進(jìn)行更新.

    算法1 更新語(yǔ)句執(zhí)行算法

    4 實(shí)驗(yàn)與分析

    本文從兩個(gè)方面來(lái)對(duì)比基于觸發(fā)器的變化數(shù)據(jù)捕獲機(jī)制和基于日志的變化數(shù)據(jù)捕獲機(jī)制, 一是比較不同的變化數(shù)據(jù)捕獲機(jī)制對(duì)數(shù)據(jù)庫(kù)性能的影響程度, 二是比較不同的變化數(shù)據(jù)捕獲機(jī)制在保證分布式緩存一致性時(shí), 不一致窗口的大小.

    4.1 實(shí)驗(yàn)設(shè)計(jì)

    本文使用TPC-W[15]基準(zhǔn)中的關(guān)鍵業(yè)務(wù)對(duì)比驗(yàn)證基于觸發(fā)器的變化數(shù)據(jù)捕獲和基于日志的變化數(shù)據(jù)捕獲. TPC-W是一款以真實(shí)電子商務(wù)應(yīng)用為用例的測(cè)試基準(zhǔn), 可以模擬用戶訪問(wèn)電子商務(wù)圖書(shū)網(wǎng)站時(shí)的查詢、購(gòu)買(mǎi)等行為, 包括根據(jù)查詢書(shū)籍, 用戶注冊(cè), 訂單管理等. 本文選取TPC-W基準(zhǔn)中與訂單管理相關(guān)的關(guān)鍵SQL語(yǔ)句來(lái)進(jìn)行測(cè)試, 觀察變化數(shù)據(jù)捕獲的性能特點(diǎn), 選取的SQL語(yǔ)句為: INSERT INTO order_line (ol_id, ol_o_id, ol_i_id, ol_qty, ol_discount, ol_comments) VALUES (?, ?, ?, ?, ?, ?), , 記為SQLX, SQLX的參數(shù)使用隨機(jī)值.

    實(shí)驗(yàn)的負(fù)載發(fā)生端使用YCSB[16]性能測(cè)試工具,數(shù)據(jù)庫(kù)采用MySQL, 對(duì)比測(cè)試不同變化數(shù)據(jù)捕獲技術(shù)應(yīng)用到分布式緩存時(shí), 給數(shù)據(jù)庫(kù)帶來(lái)的性能影響和緩存不一致窗口的大小. 實(shí)驗(yàn)環(huán)境的軟硬件配置如表3所示.

    表3 實(shí)驗(yàn)環(huán)境軟硬件配置

    4.2 實(shí)驗(yàn)結(jié)果與分析

    (1) 比較兩種變化數(shù)據(jù)捕獲機(jī)制下的數(shù)據(jù)庫(kù)性能

    本次實(shí)驗(yàn)中, 每個(gè)線程執(zhí)行SQLX 10000次, 隨機(jī)向數(shù)據(jù)庫(kù)插入10000條記錄, 通過(guò)改變線程數(shù)量, 從而改變對(duì)數(shù)據(jù)庫(kù)的壓力, 分別測(cè)試線程數(shù)為1,2,5,10時(shí), 每個(gè)線程向數(shù)據(jù)庫(kù)插入10000條記錄所需要的時(shí)間, 即數(shù)據(jù)庫(kù)的響應(yīng)時(shí)間. 實(shí)驗(yàn)結(jié)果如圖5所示, 其中,橫軸代表線程的數(shù)量, 縱軸代表每個(gè)線程插入10000條記錄的平均時(shí)間, 即數(shù)據(jù)庫(kù)的響應(yīng)時(shí)間. 實(shí)驗(yàn)結(jié)果表明, 隨著線程數(shù)的增大, 數(shù)據(jù)庫(kù)的響應(yīng)時(shí)間逐漸增大. 但是, 由于觸發(fā)器對(duì)數(shù)據(jù)庫(kù)性能的影響, 在基于觸發(fā)器的變化數(shù)據(jù)捕獲下, 數(shù)據(jù)庫(kù)的響應(yīng)時(shí)間增大更明顯, 基于日志的變化數(shù)據(jù)捕獲下的數(shù)據(jù)庫(kù)性能是基于觸發(fā)器的變化數(shù)據(jù)捕獲下數(shù)據(jù)庫(kù)性能的11到21倍.

    圖5 不同變化數(shù)據(jù)捕獲機(jī)制下數(shù)據(jù)庫(kù)性能對(duì)比

    (2) 比較兩種變化數(shù)據(jù)捕獲機(jī)制下的緩存一致性

    根據(jù)CAP理論, 在一個(gè)分布式系統(tǒng)中, 一致性、可用性和分區(qū)容忍性三者不可得兼. 本文中分布式緩存的一致性不是強(qiáng)一致性, 數(shù)據(jù)庫(kù)數(shù)據(jù)更新和緩存數(shù)據(jù)同步更新之間存在一定的不一致窗口, 不一致窗口的大小是衡量系統(tǒng)性能的一個(gè)重要指標(biāo).

    本次實(shí)驗(yàn)中, 單線程執(zhí)行SQLX 10000次, 隨機(jī)向數(shù)據(jù)庫(kù)插入10000條記錄, 通過(guò)改變兩次SQL執(zhí)行之間的間隔時(shí)間來(lái)改變數(shù)據(jù)的更新頻率, SQL間隔執(zhí)行間隔時(shí)間越長(zhǎng), 數(shù)據(jù)更新頻率越低. 分別測(cè)試SQL執(zhí)行間隔時(shí)間為0,1,2,5,10毫秒時(shí), 緩存捕獲到最新數(shù)據(jù)和數(shù)據(jù)庫(kù)插入數(shù)據(jù)間的不一致時(shí)間窗口. 實(shí)驗(yàn)結(jié)果如圖6所示, 其中, 橫軸代表兩次SQL執(zhí)行的時(shí)間間隔,縱軸代表緩存與數(shù)據(jù)庫(kù)之間的數(shù)據(jù)不一致時(shí)間窗口.從圖6可以看到如下現(xiàn)象: (1)數(shù)據(jù)更新頻率越低, 緩存的一致性效果越好. 由圖可知, 隨著間隔時(shí)間的增大, 也即數(shù)據(jù)更新頻率減小, 對(duì)變化數(shù)據(jù)捕獲模塊的壓力相對(duì)也減小, 從而在更短的響應(yīng)時(shí)間內(nèi)將數(shù)據(jù)同步到緩存. (2)基于日志的變化數(shù)據(jù)捕獲相比基于觸發(fā)器的變化數(shù)據(jù)捕獲有更好的一致性效果. 由圖可知,在不同的時(shí)間間隔下, 基于日志的變化數(shù)據(jù)捕獲的不一致窗口都要明顯小于基于觸發(fā)器的變化數(shù)據(jù)捕獲.

    圖6 不同變化數(shù)據(jù)捕獲機(jī)制下緩存一致性對(duì)比

    5 總結(jié)與展望

    本文首先分析了第三方應(yīng)用不能感知分布式緩存時(shí)存在的過(guò)時(shí)緩存問(wèn)題, 然后提出了一種基于數(shù)據(jù)捕獲機(jī)制的緩存一致性策略, 主要包括面向分布式緩存的兩種變化數(shù)據(jù)捕獲機(jī)制, 數(shù)據(jù)模型的自動(dòng)轉(zhuǎn)換方法和SQL翻譯引擎. 通過(guò)實(shí)驗(yàn)對(duì)比驗(yàn)證了基于日志的變化數(shù)據(jù)捕獲技術(shù)在數(shù)據(jù)庫(kù)性能和緩存一致性效果方面的性能優(yōu)勢(shì), 但是基于觸發(fā)器的變化數(shù)據(jù)捕獲技術(shù)有其通用性, 易用性, 編程代價(jià)低等優(yōu)勢(shì).

    本文中基于變化數(shù)據(jù)捕獲機(jī)制的緩存一致性策略的設(shè)計(jì)與實(shí)現(xiàn)并不完善, 需要在未來(lái)工作中針對(duì)以下方面進(jìn)行研究與改進(jìn): (1)由于關(guān)系型數(shù)據(jù)模型的復(fù)雜性, 關(guān)系型數(shù)據(jù)的外鍵約束等尚不支持; (2)運(yùn)行時(shí)動(dòng)態(tài)對(duì)數(shù)據(jù)表結(jié)構(gòu)的修改并不能實(shí)時(shí)映射到分布式緩存數(shù)據(jù)結(jié)構(gòu).

    1 Dreibholz T, Rathgeb E P. On the performance of reliable server pooling systems. The IEEE Conference on Local Computer Networks, 2005. 30th Anniversary. IEEE. 2005. 200–208.

    2 Memcached. http://memcached.org/. [2016-03-29].

    3 Redis. http://redis.io/. [2016-03-29].

    4 Hazelcast. http://hazelcast.org/. [2016-03-29].

    5 WebSphere Extreme Scale. http://www-03.ibm.com/software/ products/en/websphere-extreme-scale/. [2016-03-29].

    6 Eccles M. Pragmatic Development of Service Based Real-Time Change Data Capture[Thesis]. Aston University, 2013.

    7 徐富亮,周祖德.變化數(shù)據(jù)捕獲技術(shù)研究.武漢理工大學(xué)學(xué)報(bào):信息與管理工程版,2009,31(5):740–743.

    8 林子雨,楊冬青,宋國(guó)杰,等.實(shí)時(shí)主動(dòng)數(shù)據(jù)倉(cāng)庫(kù)中的變化數(shù)據(jù)捕獲研究綜述.計(jì)算機(jī)研究與發(fā)展,2007,44(z3):447–451.

    9 Rocha RLA, Cardoso LF, de Souza JM. Performance tests in data warehousing ETLM process for detection of changes in data origin. Data Warehousing and Knowledge Discovery. Springer Berlin Heidelberg, 2003: 129–139.

    10 Shi JG, Bao YB, Leng FL, et al. Study on log-based change data capture and handling mechanism in real-time data warehouse. 2008 International Conference on Computer Science and Software Engineering. IEEE. 2008, 4. 478–481. 11 Amza C, Soundararajan G, Cecchet E. Transparent caching with strong consistency in dynamic content web sites. International Conference on Supercomputing. 2005. 264–273.

    12 Ghandeharizadeh S, Yap J, Nguyen H. Strong consistency in cache augmented SQL systems. Proc. of the 15th International Middleware Conference. ACM. 2014. 181–192.

    13 Gupta P, Zeldovich N, Madden S. A trigger-based middleware cache for ORMs. Acm/ifip/usenix International Conference on MIDDLEWARE. Springer-Verlag. 2011. 329-349.

    14 Open-replicator. https://github.com/whitesock/open- replicator. [2016-03-29].

    15 TPC-W. http://www.tpc.org/tpcw/. [2016-03-29].

    16 YCSB. https://github.com/brianfrankcooper/YCSB. [2016-03-29].

    Distributed Cache Coherency Strategy Based on Change Data Capture Mechanism

    JIANG Yong1,2, MIAO Zong-Li3, WANG Wei2, DUAN Shi-Kai1,2, LIU Cai-Zheng1,2, ZHI Meng-Xuan212
    (University of Chinese Academy of Sciences, Beijing 100049, China)3(Technology Center of Software Engineering, Institute of Software, Chinese Academy of Sciences, Beijing 100190, China) (China Electronics Standardization Institute, Beijing 100007, China)

    Distributed cache is widely used to solve the performance bottleneck problem in traditional relational database, but when third-party applications that are not cache-aware update the back-end database, the distributed cache will end up in an inconsistent state, which has the problem of stale cache data. This paper proposes a distributed cache consistency strategy based on change data capture mechanism. The work integrates trigger-based and log-based change data capture mechanism that can get the real-time data from backend database, and implements data model transformation and SQL translation engine, which can update cache in real-time to guarantee distributed cache coherence. The experiment simulates the key operation in TPC-W benchmark, which verifies that the change data capture based on log has the better database performance and cache consistency effects compared with the change data capture based on trigger.

    distributed cache; change data capture; model transforming; SQL translation

    2016-03-21;收到修改稿時(shí)間:2016-04-08

    10.15888/j.cnki.csa.005450

    猜你喜歡
    謂詞觸發(fā)器數(shù)據(jù)模型
    被遮蔽的邏輯謂詞
    ——論胡好對(duì)邏輯謂詞的誤讀
    黨項(xiàng)語(yǔ)謂詞前綴的分裂式
    西夏研究(2020年2期)2020-06-01 05:19:12
    面板數(shù)據(jù)模型截面相關(guān)檢驗(yàn)方法綜述
    加熱爐爐內(nèi)跟蹤數(shù)據(jù)模型優(yōu)化
    主從JK觸發(fā)器邏輯功能分析
    電子世界(2017年22期)2017-12-02 03:03:45
    使用觸發(fā)器,強(qiáng)化安全性
    也談“語(yǔ)言是存在的家”——從語(yǔ)言的主詞與謂詞看存在的殊相與共相
    面向集成管理的出版原圖數(shù)據(jù)模型
    對(duì)觸發(fā)器邏輯功能轉(zhuǎn)換的分析
    觸發(fā)器邏輯功能轉(zhuǎn)換的兩種方法
    av免费在线看不卡| 午夜av观看不卡| 精品国产一区二区久久| 日韩成人av中文字幕在线观看| a 毛片基地| 久久久久久久久久久丰满| 欧美老熟妇乱子伦牲交| 免费人妻精品一区二区三区视频| 搡老乐熟女国产| av不卡在线播放| 伊人久久国产一区二区| 亚洲人成77777在线视频| 亚洲天堂av无毛| 黑人猛操日本美女一级片| 99久久精品国产国产毛片| 久久精品国产a三级三级三级| 欧美日本中文国产一区发布| 黄片无遮挡物在线观看| 丰满乱子伦码专区| 人妻少妇偷人精品九色| 欧美变态另类bdsm刘玥| 久久免费观看电影| 在线观看国产h片| 日韩亚洲欧美综合| 亚洲第一av免费看| 国产熟女欧美一区二区| 97超视频在线观看视频| 亚洲高清免费不卡视频| 十八禁高潮呻吟视频| 成年人免费黄色播放视频| 国产精品一国产av| 午夜免费鲁丝| 国产av国产精品国产| videosex国产| 久久亚洲国产成人精品v| 少妇精品久久久久久久| 亚洲国产成人一精品久久久| 成年av动漫网址| 丝袜喷水一区| 免费看不卡的av| 精品酒店卫生间| 高清黄色对白视频在线免费看| 日韩制服骚丝袜av| 精品卡一卡二卡四卡免费| 三上悠亚av全集在线观看| 国产成人freesex在线| 国产一区二区三区av在线| 亚洲情色 制服丝袜| 日韩一区二区三区影片| 亚洲无线观看免费| 久久99一区二区三区| 18禁在线播放成人免费| 国产欧美另类精品又又久久亚洲欧美| 亚洲国产色片| 在线观看免费视频网站a站| 人妻夜夜爽99麻豆av| 亚洲av福利一区| 日韩亚洲欧美综合| 熟女av电影| 免费高清在线观看视频在线观看| 9色porny在线观看| 在线亚洲精品国产二区图片欧美 | 又粗又硬又长又爽又黄的视频| 亚洲av免费高清在线观看| 久久久久久久亚洲中文字幕| 人成视频在线观看免费观看| 九色成人免费人妻av| 简卡轻食公司| 人人妻人人爽人人添夜夜欢视频| 搡女人真爽免费视频火全软件| 国产成人a∨麻豆精品| 自线自在国产av| 亚洲经典国产精华液单| 啦啦啦在线观看免费高清www| 99久国产av精品国产电影| 国产色婷婷99| 22中文网久久字幕| 91在线精品国自产拍蜜月| 特大巨黑吊av在线直播| 欧美日韩一区二区视频在线观看视频在线| 亚洲精品色激情综合| 五月天丁香电影| 精品一品国产午夜福利视频| 亚洲精品亚洲一区二区| 免费观看无遮挡的男女| tube8黄色片| 制服丝袜香蕉在线| 亚洲内射少妇av| 水蜜桃什么品种好| 欧美激情 高清一区二区三区| 亚洲精品,欧美精品| 久久影院123| 亚洲av电影在线观看一区二区三区| av女优亚洲男人天堂| 久久精品熟女亚洲av麻豆精品| 22中文网久久字幕| 国产视频首页在线观看| 中文字幕免费在线视频6| 久久久久久久久久久免费av| 少妇的逼好多水| 秋霞在线观看毛片| 成人亚洲精品一区在线观看| 高清av免费在线| 免费黄色在线免费观看| 亚洲精品美女久久av网站| 久久精品久久久久久噜噜老黄| 亚洲婷婷狠狠爱综合网| 亚洲美女搞黄在线观看| 国产免费一级a男人的天堂| 啦啦啦在线观看免费高清www| 99久久综合免费| av福利片在线| 伦理电影大哥的女人| 免费高清在线观看日韩| 蜜臀久久99精品久久宅男| 日韩中文字幕视频在线看片| 少妇猛男粗大的猛烈进出视频| 性色av一级| 一个人免费看片子| 久久久久久人妻| 午夜福利视频在线观看免费| 日日啪夜夜爽| 又黄又爽又刺激的免费视频.| 亚洲无线观看免费| 欧美+日韩+精品| 国产成人a∨麻豆精品| 丰满乱子伦码专区| 国语对白做爰xxxⅹ性视频网站| 国产精品99久久99久久久不卡 | av视频免费观看在线观看| 久久久久久久国产电影| 十八禁高潮呻吟视频| 一本一本久久a久久精品综合妖精 国产伦在线观看视频一区 | 国产高清不卡午夜福利| 插逼视频在线观看| 男女免费视频国产| 最新的欧美精品一区二区| 欧美日韩综合久久久久久| 成年美女黄网站色视频大全免费 | 国语对白做爰xxxⅹ性视频网站| 亚洲av综合色区一区| 午夜福利视频在线观看免费| 波野结衣二区三区在线| 美女大奶头黄色视频| 在线观看三级黄色| 久久午夜福利片| 99热6这里只有精品| 一级爰片在线观看| 大陆偷拍与自拍| 精品国产一区二区久久| 亚洲成人手机| 香蕉精品网在线| 午夜免费观看性视频| 亚洲av日韩在线播放| 久久久久久久久大av| 啦啦啦视频在线资源免费观看| 人妻系列 视频| 老女人水多毛片| 日韩在线高清观看一区二区三区| 22中文网久久字幕| 日本色播在线视频| 激情五月婷婷亚洲| 日韩欧美精品免费久久| 妹子高潮喷水视频| 特大巨黑吊av在线直播| 另类亚洲欧美激情| 日韩熟女老妇一区二区性免费视频| 日韩一本色道免费dvd| 五月伊人婷婷丁香| 丰满乱子伦码专区| 好男人视频免费观看在线| 欧美成人午夜免费资源| 日本黄色日本黄色录像| 欧美精品人与动牲交sv欧美| 一边亲一边摸免费视频| 国产精品一区二区在线不卡| 性色avwww在线观看| 飞空精品影院首页| 秋霞伦理黄片| 伦理电影大哥的女人| 最新的欧美精品一区二区| 日韩中文字幕视频在线看片| 日韩强制内射视频| av一本久久久久| 免费观看无遮挡的男女| 亚洲精品日本国产第一区| 国产精品一二三区在线看| 日本91视频免费播放| 国产精品.久久久| 亚洲av国产av综合av卡| 桃花免费在线播放| 成人18禁高潮啪啪吃奶动态图 | 国产精品人妻久久久久久| 国产一区二区在线观看日韩| 少妇熟女欧美另类| 天堂中文最新版在线下载| 美女xxoo啪啪120秒动态图| 国产在线一区二区三区精| av网站免费在线观看视频| 免费观看性生交大片5| 久久久国产欧美日韩av| 日韩伦理黄色片| 老司机亚洲免费影院| 亚洲久久久国产精品| 日韩大片免费观看网站| 免费看不卡的av| 欧美精品一区二区大全| 美女福利国产在线| 国产成人一区二区在线| √禁漫天堂资源中文www| 久久久久久久大尺度免费视频| 熟女电影av网| 亚洲,一卡二卡三卡| 男人添女人高潮全过程视频| 亚洲美女视频黄频| 日本黄色片子视频| 日韩人妻高清精品专区| 人妻人人澡人人爽人人| 国产伦理片在线播放av一区| 男女边吃奶边做爰视频| 日本91视频免费播放| 久久99蜜桃精品久久| 我要看黄色一级片免费的| 午夜福利,免费看| 97超视频在线观看视频| 内地一区二区视频在线| 久久99蜜桃精品久久| 大香蕉97超碰在线| 伦理电影大哥的女人| 男女高潮啪啪啪动态图| 男人添女人高潮全过程视频| 又大又黄又爽视频免费| 在线观看www视频免费| 国产精品久久久久久久电影| 中文字幕av电影在线播放| 午夜免费观看性视频| 亚洲国产av影院在线观看| 秋霞在线观看毛片| 成人毛片a级毛片在线播放| 亚洲,一卡二卡三卡| 一区二区日韩欧美中文字幕 | 各种免费的搞黄视频| 天堂8中文在线网| 婷婷色麻豆天堂久久| 欧美日韩成人在线一区二区| 五月伊人婷婷丁香| 青春草亚洲视频在线观看| 日韩一区二区三区影片| 亚洲,欧美,日韩| 天堂中文最新版在线下载| 精品国产乱码久久久久久小说| 久久99热这里只频精品6学生| 美女视频免费永久观看网站| .国产精品久久| 精品一区二区免费观看| 春色校园在线视频观看| 夜夜爽夜夜爽视频| 一级,二级,三级黄色视频| 黄色怎么调成土黄色| 日韩精品免费视频一区二区三区 | 看非洲黑人一级黄片| 少妇人妻精品综合一区二区| 男的添女的下面高潮视频| 好男人视频免费观看在线| 人人妻人人爽人人添夜夜欢视频| 国产视频首页在线观看| 一区二区日韩欧美中文字幕 | 亚洲欧洲精品一区二区精品久久久 | 香蕉精品网在线| 日韩av不卡免费在线播放| 插阴视频在线观看视频| 亚洲人成77777在线视频| 天堂8中文在线网| 秋霞伦理黄片| 国产精品免费大片| 午夜影院在线不卡| 一本色道久久久久久精品综合| 嘟嘟电影网在线观看| 日韩人妻高清精品专区| a 毛片基地| 日本免费在线观看一区| 精品国产国语对白av| 免费看光身美女| 欧美少妇被猛烈插入视频| 91成人精品电影| 精品国产乱码久久久久久小说| 国产日韩欧美视频二区| 91午夜精品亚洲一区二区三区| 国产精品久久久久成人av| 久久精品人人爽人人爽视色| 国产免费视频播放在线视频| 黄色一级大片看看| 黄色怎么调成土黄色| 热99久久久久精品小说推荐| 97在线视频观看| 国产成人精品一,二区| 国产欧美日韩综合在线一区二区| 亚洲国产欧美日韩在线播放| av免费观看日本| 久久久久国产精品人妻一区二区| 欧美精品人与动牲交sv欧美| 人妻少妇偷人精品九色| 母亲3免费完整高清在线观看 | 啦啦啦在线观看免费高清www| 乱人伦中国视频| 欧美日韩视频精品一区| 亚洲精品中文字幕在线视频| 欧美精品一区二区免费开放| 免费看av在线观看网站| 亚洲精品,欧美精品| 欧美xxxx性猛交bbbb| 国产成人精品久久久久久| 精品少妇内射三级| 国产成人精品在线电影| 亚洲高清免费不卡视频| 欧美最新免费一区二区三区| 嫩草影院入口| 国产成人精品在线电影| 一区二区三区免费毛片| 成人亚洲精品一区在线观看| 丝袜美足系列| 大陆偷拍与自拍| 亚洲成人手机| 性高湖久久久久久久久免费观看| 午夜福利视频精品| 人人妻人人澡人人爽人人夜夜| 亚洲精品久久午夜乱码| 成年人免费黄色播放视频| 黄片播放在线免费| 久久久久久久久久成人| 天美传媒精品一区二区| 亚洲久久久国产精品| 国产日韩一区二区三区精品不卡 | 国产欧美另类精品又又久久亚洲欧美| 少妇精品久久久久久久| 亚洲精品色激情综合| 新久久久久国产一级毛片| 成人国产麻豆网| 特大巨黑吊av在线直播| 国产欧美日韩综合在线一区二区| 亚洲不卡免费看| 久久久久精品久久久久真实原创| 黑人巨大精品欧美一区二区蜜桃 | 国产成人a∨麻豆精品| 黄色配什么色好看| 男男h啪啪无遮挡| 黄色配什么色好看| 国产精品久久久久久av不卡| 欧美激情极品国产一区二区三区 | 精品99又大又爽又粗少妇毛片| 日本av免费视频播放| 国产精品一二三区在线看| 日产精品乱码卡一卡2卡三| 狂野欧美白嫩少妇大欣赏| 母亲3免费完整高清在线观看 | 国产视频首页在线观看| 亚洲国产精品999| 中国国产av一级| 考比视频在线观看| 中国国产av一级| 在线播放无遮挡| a级毛片免费高清观看在线播放| 男人添女人高潮全过程视频| 最新中文字幕久久久久| 一边摸一边做爽爽视频免费| 91国产中文字幕| 51国产日韩欧美| 日韩一本色道免费dvd| 水蜜桃什么品种好| 国产极品天堂在线| 欧美丝袜亚洲另类| 国产黄频视频在线观看| 特大巨黑吊av在线直播| 国产精品秋霞免费鲁丝片| 三上悠亚av全集在线观看| 欧美bdsm另类| av黄色大香蕉| 精品国产一区二区久久| 日本91视频免费播放| 中国三级夫妇交换| 美女中出高潮动态图| 欧美精品国产亚洲| 在线观看免费视频网站a站| 国产精品三级大全| 亚洲国产精品999| 视频中文字幕在线观看| 欧美日本中文国产一区发布| 亚洲婷婷狠狠爱综合网| 午夜福利在线观看免费完整高清在| 99久国产av精品国产电影| 人妻夜夜爽99麻豆av| 丝袜脚勾引网站| 91午夜精品亚洲一区二区三区| 少妇 在线观看| 亚洲av国产av综合av卡| 蜜桃国产av成人99| 日韩不卡一区二区三区视频在线| 老女人水多毛片| 777米奇影视久久| 一级毛片aaaaaa免费看小| 久久久精品94久久精品| 色5月婷婷丁香| 久久久久久久精品精品| 波野结衣二区三区在线| 一本一本综合久久| 男女边摸边吃奶| 亚洲五月色婷婷综合| 日本与韩国留学比较| 嘟嘟电影网在线观看| 26uuu在线亚洲综合色| 久久久久久人妻| 美女国产视频在线观看| 日韩视频在线欧美| 久久久精品94久久精品| 不卡视频在线观看欧美| 午夜91福利影院| 久久人妻熟女aⅴ| 简卡轻食公司| 黄片无遮挡物在线观看| 亚洲美女搞黄在线观看| 日韩中文字幕视频在线看片| 亚洲人成网站在线观看播放| 日本爱情动作片www.在线观看| 欧美激情极品国产一区二区三区 | 日本91视频免费播放| 国产成人精品婷婷| 日韩成人伦理影院| 亚洲,一卡二卡三卡| 亚洲人成77777在线视频| 久久国内精品自在自线图片| 91久久精品电影网| 韩国av在线不卡| 国产精品无大码| 熟妇人妻不卡中文字幕| 亚洲美女视频黄频| 中文字幕亚洲精品专区| 日本av免费视频播放| 色婷婷久久久亚洲欧美| 成人免费观看视频高清| 久久人人爽人人爽人人片va| 婷婷成人精品国产| 男女免费视频国产| 美女福利国产在线| 国产精品人妻久久久久久| 18禁裸乳无遮挡动漫免费视频| 午夜精品国产一区二区电影| 日产精品乱码卡一卡2卡三| a级毛片黄视频| 在线天堂最新版资源| 少妇猛男粗大的猛烈进出视频| 麻豆成人av视频| 国产片内射在线| 男人添女人高潮全过程视频| 我的女老师完整版在线观看| 亚洲人成网站在线播| 亚洲熟女精品中文字幕| 国产视频内射| 男女啪啪激烈高潮av片| av不卡在线播放| 国产有黄有色有爽视频| 大片免费播放器 马上看| 亚洲国产日韩一区二区| 青青草视频在线视频观看| 国产av一区二区精品久久| 欧美另类一区| 赤兔流量卡办理| 2018国产大陆天天弄谢| 久久这里有精品视频免费| 丰满迷人的少妇在线观看| 看十八女毛片水多多多| 日本欧美国产在线视频| 国产精品成人在线| av黄色大香蕉| 伦理电影免费视频| videosex国产| 简卡轻食公司| 最黄视频免费看| 亚洲国产成人一精品久久久| 99热网站在线观看| 久久婷婷青草| 一区二区三区四区激情视频| 免费观看av网站的网址| 建设人人有责人人尽责人人享有的| 久久久久精品久久久久真实原创| 大又大粗又爽又黄少妇毛片口| 久久ye,这里只有精品| www.av在线官网国产| 国产在视频线精品| 2022亚洲国产成人精品| 久久精品国产a三级三级三级| 一级片'在线观看视频| 欧美人与善性xxx| 王馨瑶露胸无遮挡在线观看| 人成视频在线观看免费观看| 如何舔出高潮| 中文精品一卡2卡3卡4更新| 国产成人一区二区在线| 日韩免费高清中文字幕av| 亚洲av中文av极速乱| 女的被弄到高潮叫床怎么办| 中文精品一卡2卡3卡4更新| 高清视频免费观看一区二区| 一区二区三区乱码不卡18| 久久久久久久久久久久大奶| 三上悠亚av全集在线观看| 欧美精品国产亚洲| 免费看光身美女| 欧美 亚洲 国产 日韩一| 亚洲精品亚洲一区二区| 久久精品国产亚洲av天美| 国产亚洲午夜精品一区二区久久| 亚洲国产日韩一区二区| 国产老妇伦熟女老妇高清| 亚洲精品日韩av片在线观看| 欧美精品高潮呻吟av久久| 欧美性感艳星| 高清午夜精品一区二区三区| 麻豆精品久久久久久蜜桃| 极品人妻少妇av视频| 少妇被粗大的猛进出69影院 | 在线 av 中文字幕| 国产熟女午夜一区二区三区 | 18禁在线播放成人免费| 高清午夜精品一区二区三区| 久久久精品区二区三区| 97超视频在线观看视频| 在线精品无人区一区二区三| 在现免费观看毛片| 哪个播放器可以免费观看大片| 一级爰片在线观看| 日本av手机在线免费观看| 夜夜看夜夜爽夜夜摸| 欧美丝袜亚洲另类| 大码成人一级视频| 成年人免费黄色播放视频| 中文乱码字字幕精品一区二区三区| av免费观看日本| 大又大粗又爽又黄少妇毛片口| 啦啦啦中文免费视频观看日本| 一级毛片黄色毛片免费观看视频| 在线观看www视频免费| 爱豆传媒免费全集在线观看| 十八禁网站网址无遮挡| 男人爽女人下面视频在线观看| 一区在线观看完整版| 在线观看一区二区三区激情| 啦啦啦中文免费视频观看日本| 成人毛片60女人毛片免费| 国产精品久久久久久久久免| 亚洲内射少妇av| 看十八女毛片水多多多| 在线免费观看不下载黄p国产| 亚洲欧美成人综合另类久久久| 日韩欧美一区视频在线观看| 热re99久久国产66热| 亚洲av中文av极速乱| 中文字幕人妻熟人妻熟丝袜美| 亚洲情色 制服丝袜| 久久久久久久久久人人人人人人| 国产亚洲一区二区精品| 一本色道久久久久久精品综合| 亚洲久久久国产精品| 亚洲精品日本国产第一区| 日韩伦理黄色片| 少妇被粗大的猛进出69影院 | 99热6这里只有精品| 我的女老师完整版在线观看| 亚洲久久久国产精品| a级毛片黄视频| 少妇人妻久久综合中文| 国产伦理片在线播放av一区| 亚洲av免费高清在线观看| 日韩中字成人| 精品一区二区三卡| 毛片一级片免费看久久久久| 蜜臀久久99精品久久宅男| 久久久a久久爽久久v久久| 日本爱情动作片www.在线观看| 亚洲av欧美aⅴ国产| 在线观看www视频免费| 亚洲国产欧美在线一区| 伦理电影大哥的女人| 少妇熟女欧美另类| 日韩三级伦理在线观看| 黄色一级大片看看| 一级黄片播放器| 97超视频在线观看视频| 黄色配什么色好看| 亚洲精品成人av观看孕妇| 免费不卡的大黄色大毛片视频在线观看| 免费看光身美女| 最近2019中文字幕mv第一页| 国产成人免费观看mmmm| 国产在线视频一区二区| 51国产日韩欧美| 亚洲一级一片aⅴ在线观看| 亚洲在久久综合| 九色亚洲精品在线播放| 最近最新中文字幕免费大全7| 国产一区二区三区综合在线观看 | 亚洲欧美成人精品一区二区| 99久国产av精品国产电影| 人人妻人人澡人人看| 日韩在线高清观看一区二区三区| 一本一本综合久久| 亚洲欧美成人综合另类久久久| 欧美激情 高清一区二区三区| 亚洲精品日本国产第一区| 精品久久久久久电影网| 久久久久久久久久成人| 九色亚洲精品在线播放| 18禁裸乳无遮挡动漫免费视频| 国产成人精品福利久久| a级毛色黄片| 国产男女内射视频|