精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

面對千萬級數(shù)據(jù)查詢,CK、ES、RediSearch誰才是王炸?

數(shù)據(jù)庫 新聞
本文從一個業(yè)務訴求觸發(fā),對「千萬量級數(shù)據(jù)中查詢 10W 量級的數(shù)據(jù)」介紹了不同的設計方案。

前言

在開發(fā)中遇到一個業(yè)務訴求,需要在千萬量級的底池數(shù)據(jù)中篩選出不超過 10W 的數(shù)據(jù),并根據(jù)配置的權重規(guī)則進行排序、打散(如同一個類目下的商品數(shù)據(jù)不能連續(xù)出現(xiàn) 3 次)。

下面對該業(yè)務訴求的實現(xiàn),設計思路和方案優(yōu)化進行介紹,對「千萬量級數(shù)據(jù)中查詢 10W 量級的數(shù)據(jù)」設計了如下方案:

  • 多線程 + CK 翻頁方案
  • ES scroll scan 深翻頁方案
  • ES + Hbase 組合方案
  • RediSearch + RedisJSON 組合方案

一、初版設計方案

整體方案設計為:

  • 先根據(jù)配置的「篩選規(guī)則」,從底池表中篩選出「目標數(shù)據(jù)」。
  • 在根據(jù)配置的「排序規(guī)則」,對「目標數(shù)據(jù)」進行排序,得到「結果數(shù)據(jù)」。

技術方案如下:

  • 每天運行導數(shù)任務,把現(xiàn)有的千萬量級的底池數(shù)據(jù)(Hive 表)導入到 Clickhouse 中,后續(xù)使用 CK 表進行數(shù)據(jù)篩選。
  • 將業(yè)務配置的篩選規(guī)則和排序規(guī)則,構建為一個「篩選 + 排序」對象 SelectionQueryCondition。
  • 從 CK 底池表取「目標數(shù)據(jù)」時,開啟多線程,進行分頁篩選,將獲取到的「目標數(shù)據(jù)」存放到 result 列表中。
//分頁大小  默認 5000
int pageSize = this.getPageSize();
//頁碼數(shù)
int pageCnt = totalNum / this.getPageSize() + 1;
List<Map<String, Object>> result = Lists.newArrayList();
List<Future<List<Map<String, Object>>>> futureList = new ArrayList<>(pageCnt);
//開啟多線程調用
for (int i = 1; i <= pageCnt; i++) {
//將業(yè)務配置的篩選規(guī)則和排序規(guī)則 構建為 SelectionQueryCondition 對象
SelectionQueryCondition selectionQueryCondition = buildSelectionQueryCondition(selectionQueryRuleData);
selectionQueryCondition.setPageSize(pageSize);
selectionQueryCondition.setPage(i);
futureList.add(selectionQueryEventPool.submit(new QuerySelectionDataThread(selectionQueryCondition)));
}
for (Future<List<Map<String, Object>>> future : futureList) {
//RPC 調用
List<Map<String, Object>> queryRes = future.get(20, TimeUnit.SECONDS);
if (CollectionUtils.isNotEmpty(queryRes)) {
// 將目標數(shù)據(jù)存放在 result 中
result.addAll(queryRes);
}
}
  • 對目標數(shù)據(jù) result 進行排序,得到最終的「結果數(shù)據(jù)」。

二、CK分頁查詢

在「初版設計方案」章節(jié)的第 3 步提到了「從 CK 底池表取目標數(shù)據(jù)時,開啟多線程,進行分頁篩選」。此處對 CK 分頁查詢進行介紹。

  • 封裝了 queryPoolSkuList 方法,負責從 CK 表中獲得目標數(shù)據(jù)。該方法內部調用了 sqlSession.selectList 方法。
public List<Map<String, Object>> queryPoolSkuList( Map<String, Object> params ) {
List<Map<String, Object>> resultMaps = new ArrayList<>();
QueryCondition queryCondition = parseQueryCondition(params);
List<Map<String, Object>> mapList = lianNuDao.queryPoolSkuList(getCkDt(),queryCondition);
if (CollectionUtils.isNotEmpty(mapList)) {
for (Map<String,Object> data : mapList) {
resultMaps.add(camelKey(data));
}
}
return resultMaps;
}


// lianNuDao.queryPoolSkuList
@Autowired
@Qualifier("ckSqlNewSession")
private SqlSession sqlSession;
public List<Map<String, Object>> queryPoolSkuList( String dt, QueryCondition queryCondition ) {
queryCondition.setDt(dt);
queryCondition.checkMultiQueryItems();
return sqlSession.selectList("LianNu.queryPoolSkuList",queryCondition);
}
  • sqlSession.selectList 方法中調用了和 CK 交互的 queryPoolSkuList 查詢方法,部分代碼如下。
<select id="queryPoolSkuList" parameterType="com.jd.bigai.domain.liannu.QueryCondition" resultType="java.util.Map">
select sku_pool_id,i
tem_sku_id,
skuPoolName,
price,
...
...
businessType
from liannu_sku_pool_indicator_all
where
dt=#{dt}
and
<foreach collection="queryItems" separator=" and " item="queryItem" open=" " close=" " >
<choose>
<when test="queryItem.type == 'equal'">
${queryItem.field} = #{queryItem.value}
</when>
...
...
</choose>
</foreach>
<if test="orderBy == null">
group by sku_pool_id,item_sku_id
</if>
<if test="orderBy != null">
group by sku_pool_id,item_sku_id,${orderBy} order by ${orderBy} ${orderAd}
</if>
<if test="limitEnd != 0">
limit #{limitStart},#{limitEnd}
</if>
</select>
  • 可以看到,在 CK 分頁查詢時,是通過 limit #{limitStart},#{limitEnd} 實現(xiàn)的分頁。

limit 分頁方案,在「深翻頁」時會存在性能問題。初版方案上線后,在 1000W 量級的底池數(shù)據(jù)中篩選 10W 的數(shù)據(jù),最壞耗時會達到 10s~18s 左右。

三、使用ES Scroll Scan優(yōu)化深翻頁

對于 CK 深翻頁時候的性能問題,進行了優(yōu)化,使用 Elasticsearch 的 scroll scan 翻頁方案進行優(yōu)化。

1、ES的翻頁方案

ES 翻頁,有下面幾種方案:

  • from + size 翻頁
  • scroll 翻頁
  • scroll scan 翻頁
  • search after 翻頁

圖片

對上述幾種翻頁方案,查詢不同數(shù)目的數(shù)據(jù),耗時數(shù)據(jù)如下表。

圖片

2、耗時數(shù)據(jù)

此處,分別使用 Elasticsearch 的 scroll scan 翻頁方案、初版中的 CK 翻頁方案進行數(shù)據(jù)查詢,對比其耗時數(shù)據(jù)。

如上測試數(shù)據(jù),可以發(fā)現(xiàn),以十萬,百萬,千萬量級的底池為例。

  • 底池量級越大,查詢相同的數(shù)據(jù)量,耗時越大。
  • 查詢結果 3W 以下時,ES 性能優(yōu);查詢結果 5W 以上時,CK 多線程性能優(yōu)。

四、ES+Hbase組合查詢方案

在「使用 ES Scroll Scan 優(yōu)化深翻頁」中,使用 Elasticsearch 的 scroll scan 翻頁方案對深翻頁問題進行了優(yōu)化,但在實現(xiàn)時為單線程調用,所以最終測試耗時數(shù)據(jù)并不是特別理想,和 CK 翻頁方案性能差不多。

在調研階段發(fā)現(xiàn),從底池中取出 10W 的目標數(shù)據(jù)時,一個商品包含多個字段的信息(CK 表中一行記錄有 150 個字段信息),如價格、會員價、學生價、庫存、好評率等。對于一行記錄,當減少獲取字段的個數(shù)時,查詢耗時會有明顯下降。如對 sku1的商品,從之前獲取價格、會員價、學生價、親友價、庫存等 100 個字段信息,縮減到只獲取價格、庫存這兩個字段信息。

如下圖所示,使用 ES 查詢方案,對查詢同樣條數(shù)的場景(從千萬級底池中篩選出 7W+ 條數(shù)據(jù)),獲取的每條記錄的字段個數(shù)從 32 縮減到 17,再縮減到 1個(其實是兩個字段,一個是商品唯一標識 sku_id,另一個是 ES 對每條文檔記錄的 doc_id)時,查詢的耗時會從 9.3s 下降到 4.2s,再下降到 2.4s。

圖片

從中可以得出如下結論:

  • 一次 ES 查詢中,若查詢字段和信息較多,fetch 階段的耗時,遠大于 query 階段的耗時。
  • 一次 ES 查詢中,若查詢字段和信息較多,通過減少不必要的查詢字段,可以顯著縮短查詢耗時。

下面對結論中涉及的 query 和 fetch 查詢階段進行補充說明。

1、ES查詢的兩個階段:query和fetch

在 ES 中,搜索一般包括兩個階段,query 和 fetch 階段。

  • query 階段

根據(jù)查詢條件,確定要取哪些文檔(doc),篩選出文檔 ID(doc_id)。

  • fetch 階段

根據(jù) query 階段返回的文檔 ID(doc_id),取出具體的文檔(doc)。

2、ES的filesystem cache

1)ES 會將磁盤中的數(shù)據(jù)自動緩存到 filesystem cache,在內存中查找,提升了速度。

2)若 filesystem cache 無法容納索引數(shù)據(jù)文件,則會基于磁盤查找,此時查詢速度會明顯變慢。

3)若數(shù)量兩過大,基于「ES 查詢的的 query 和 fetch 兩個階段」,可使用 ES + HBase 架構,保證 ES 的數(shù)據(jù)量小于 filesystem cache,保證查詢速度。

3、組合使用Hbase

在上文調研的基礎上,發(fā)現(xiàn)「減少不必要的查詢展示字段」可以明顯縮短查詢耗時。沿著這個優(yōu)化思路,參考相關資料設計了一種新的查詢方案。

  • ES 僅用于條件篩選,ES 的查詢結果僅包含記錄的唯一標識 sku_id(其實還包含 ES 為每條文檔記錄的 doc_id)。
  • Hbase 是列存儲數(shù)據(jù)庫,每列數(shù)據(jù)有一個 rowKey。利用 rowKey 篩選一條記錄時,復雜度為 O(1)。(類似于從 HashMap 中根據(jù) key 取 value)。
  • 根據(jù) ES 查詢返回的唯一標識 sku_id,作為 Hbase 查詢中的 rowKey,在 O(1) 復雜度下獲取其他信息字段,如價格,庫存等。

圖片

使用 ES + Hbase 組合查詢方案,在線上進行了小規(guī)模的灰度測試。在 1000W 量級的底池數(shù)據(jù)中篩選 10W 的數(shù)據(jù),對比 CK 翻頁方案,最壞耗時從 10~18s 優(yōu)化到了 3~6s 左右。

也應該看到,使用 ES + Hbase 組合查詢方案,會增加系統(tǒng)復雜度,同時數(shù)據(jù)也需要同時存儲到 ES 和 Hbase。

五、RediSearch+RedisJSON優(yōu)化方案

RediSearch 是基于 Redis 構建的分布式全文搜索和聚合引擎,能以極快的速度在 Redis 數(shù)據(jù)集上執(zhí)行復雜的搜索查詢。RedisJSON 是一個 Redis 模塊,在 Redis 中提供 JSON 支持。RedisJSON 可以和 RediSearch 無縫配合,實現(xiàn)索引和查詢 JSON 文檔。

根據(jù)一些參考資料,RediSearch + RedisJSON 可以實現(xiàn)極高的性能,可謂碾壓其他 NoSQL 方案。在后續(xù)版本迭代中,可考慮使用該方案來進一步優(yōu)化。

下面給出 RediSearch + RedisJSON 的部分性能數(shù)據(jù)。

1、RediSearch 性能數(shù)據(jù)

在同等服務器配置下索引了 560 萬個文檔 (5.3GB),RediSearch 構建索引的時間為 221 秒,而 Elasticsearch 為 349 秒。RediSearch 比 ES 快了 58%。

數(shù)據(jù)建立索引后,使用 32 個客戶端對兩個單詞進行檢索,RediSearch 的吞吐量達到 12.5K ops/sec,ES 的吞吐量為 3.1K ops/sec,RediSearch 比ES 要快 4 倍。同時,RediSearch 的延遲為 8ms,而 ES 為 10ms,RediSearch 延遲稍微低些。

圖片

2、RedisJSON 性能數(shù)據(jù)

根據(jù)官網的性能測試報告,RedisJson + RedisSearch 可謂碾壓其他 NoSQL。

  • 對于隔離寫入(isolated writes),RedisJSON 比 MongoDB 快 5.4 倍,比 ES 快 200 倍以上。
  • 對于隔離讀取(isolated reads),RedisJSON 比 MongoDB 快 12.7 倍,比 ES 快 500 倍以上。

在混合工作負載場景中,實時更新不會影響 RedisJSON 的搜索和讀取性能,而 ES 會受到影響。

  • RedisJSON 支持的操作數(shù)/秒比 MongoDB 高約 50 倍,比 ES 高 7 倍/秒。
  • RedisJSON 的延遲比 MongoDB 低約 90 倍,比 ES 低 23.7 倍。

此外,RedisJSON 的讀取、寫入和負載搜索延遲,在更高的百分位數(shù)中遠比 ES 和 MongoDB 穩(wěn)定。當增加寫入比率時,RedisJSON 還能處理越來越高的整體吞吐量。而當寫入比率增加時,ES 會降低它可以處理的整體吞吐量。

總結

本文從一個業(yè)務訴求觸發(fā),對「千萬量級數(shù)據(jù)中查詢 10W 量級的數(shù)據(jù)」介紹了不同的設計方案。對于「在 1000W 量級的底池數(shù)據(jù)中篩選 10W 的數(shù)據(jù)」的場景,不同方案的耗時如下:

  • 多線程 + CK 翻頁方案,最壞耗時為 10s~18s。
  • 單線程 + ES scroll scan 深翻頁方案,相比 CK 方案,并未見到明顯優(yōu)化。
  • ES + Hbase 組合方案,最壞耗時優(yōu)化到了 3s~6s。
  • RediSearch + RedisJSON 組合方案,后續(xù)會實測該方案的耗時。
責任編輯:張燕妮 來源: dbaplus社群
相關推薦

2022-12-28 08:29:12

CKESRediSearch

2024-10-21 17:51:25

2023-02-24 16:37:04

MySQL數(shù)據(jù)查詢數(shù)據(jù)庫

2021-01-07 07:46:34

MyBatis 數(shù)據(jù)量JDBC

2024-03-29 08:56:47

2025-10-27 02:15:00

2023-05-06 08:23:36

ChatGPT自然語言技術

2020-06-17 12:36:45

查詢數(shù)據(jù)Python

2018-07-11 20:07:06

數(shù)據(jù)庫MySQL索引優(yōu)化

2019-05-28 09:31:05

Elasticsear億級數(shù)據(jù)ES

2022-09-15 11:56:36

Javalua開發(fā)

2019-05-27 09:56:00

數(shù)據(jù)庫高可用架構

2019-11-27 09:48:04

數(shù)據(jù)ESHBase

2018-01-10 09:33:18

數(shù)據(jù)庫SQL查詢優(yōu)化Java Web

2020-08-20 14:49:22

數(shù)據(jù)查詢數(shù)據(jù)庫

2022-07-05 21:31:21

索引SQL分庫分表

2021-02-22 10:54:28

AI 數(shù)據(jù)人工智能

2013-09-08 22:40:38

EF Code Fir數(shù)據(jù)查詢架構設計

2015-04-07 13:40:00

大數(shù)據(jù)大數(shù)據(jù)安全現(xiàn)狀

2017-08-17 17:39:18

人工智能數(shù)據(jù)網絡安全
點贊
收藏

51CTO技術棧公眾號

蜜桃伊人久久| 91成人精品观看| 91麻豆福利精品推荐| 国产91在线播放| 日本裸体美女视频| 亚洲综合色婷婷在线观看| 精品国产成人av| 亚洲欧洲精品一区二区三区波多野1战4| 中文字字幕在线观看| 国模大胆一区二区三区| 国产一区二区黑人欧美xxxx| 亚洲国产综合av| 日本黄色免费在线| 国产精品久久久久久妇女6080| 99在线视频免费观看| 无码人妻精品一区二区三区蜜桃91| 99精品视频在线观看免费播放| 精品电影一区二区三区| 性刺激的欧美三级视频| 97久久人人超碰caoprom| 久久久久久久精| 91国产在线免费观看| 97人妻一区二区精品视频| 欧美高清一区| 一区二区三区高清国产| 91精品又粗又猛又爽| 麻豆精品蜜桃| 亚洲成人资源网| 五月天色婷婷综合| 黄色电影免费在线看| 成人av资源网站| 91久久精品国产91久久性色| 免费黄色av片| 99热免费精品在线观看| 欧美大肥婆大肥bbbbb| 性欧美精品男男| 亚洲国产欧美日韩在线观看第一区 | 日韩欧美亚洲综合| 国产免费裸体视频| www在线视频| 国产精品美女久久久久久久久久久| 国内不卡一区二区三区| www.色视频| 精品一区二区综合| 国产一区私人高清影院| 久久久久久久久久一级| 久久精品麻豆| 欧美一级电影免费在线观看| 国产精品成人久久| 欧美日韩18| 九九热99久久久国产盗摄| 亚洲少妇xxx| 日韩啪啪电影网| 中文字幕日本精品| 免费一级做a爰片久久毛片潮| 欧美大片网址| 日韩av资源在线播放| 老熟妇精品一区二区三区| 66精品视频在线观看| 精品国产在天天线2019| 欧美xxxx黑人| a看欧美黄色女同性恋| 欧美高清视频一二三区| 超碰人人草人人| 二区三区精品| 欧美精品日日鲁夜夜添| 成人不卡免费视频| 99久久婷婷国产综合精品首页| 在线一区二区三区四区五区| 激情综合网俺也去| 成人黄色毛片| 欧美一区二区三区在| 天天操精品视频| 日本一区二区三区视频在线看| 欧美一区二区成人| 男人女人拔萝卜视频| 超碰精品在线观看| 精品无人区乱码1区2区3区在线| 亚洲国产第一区| 蜜桃成人av| 日韩一区二区精品视频| 欧美偷拍第一页| 亚洲精品看片| 国产精品久久久久影院日本| 伊人久久国产精品| 国产一级精品在线| 国产视频在线观看一区| 欧美亚洲日本| 中文字幕一区二区视频| 成人国产在线看| 亚洲午夜天堂| 欧美日韩不卡在线| japanese在线观看| 精品产国自在拍| 欧美美女15p| 日本视频在线观看免费| 狠狠色丁香婷综合久久| 国产亚洲情侣一区二区无| 狠狠色伊人亚洲综合网站l| 国产精品成人免费| 免费一级特黄毛片| 国产精品xxx| 精品国产精品一区二区夜夜嗨| 中国一级特黄录像播放| 成人羞羞网站入口| 97热精品视频官网| 136福利视频导航| 波多野结衣中文字幕一区| 视频一区视频二区视频三区高| 欧美精品videosex| 91官网在线免费观看| 潘金莲一级淫片aaaaa| 国产精品免费大片| 久久免费观看视频| 国产精品美女一区| 久久久久久久久99精品| 轻点好疼好大好爽视频| 欧美黄色网络| 亚洲免费成人av电影| 日本少妇高清视频| 美女视频一区二区| 欧美12av| 草草在线视频| 欧美一级免费大片| 日韩精品电影一区二区三区| 99成人免费视频| 91视频国产高清| 国产精品免费播放| 精品女同一区二区三区在线播放| 黄色片免费网址| 日韩欧美一区二区三区免费看| 欧美一级大胆视频| 日本人妻熟妇久久久久久 | 欧洲美女女同性互添| 免费国产自线拍一欧美视频| 成人在线看片| 日韩三级影院| 日本高清无吗v一区| 色呦呦一区二区| 激情久久久久| 91入口在线观看| 成人video亚洲精品| 欧美日韩国产中文| 国产在线免费av| 日本一区中文字幕| 日韩精品福利视频| 日韩精品麻豆| 在线a欧美视频| 伊人成年综合网| 国产拍欧美日韩视频二区| 自慰无码一区二区三区| 人人精品亚洲| 欧美一级免费看| 头脑特工队2免费完整版在线观看 头脑特工队2在线播放 | 欧美性色综合| 国产99在线免费| 第四色日韩影片| 亚洲国产成人精品女人久久久 | 色综合天天在线| 久久成人激情视频| 日本美女一区二区| 亚洲一区二区三区欧美| 伊人国产精品| 欧美日韩成人在线播放| 亚洲毛片欧洲毛片国产一品色| 一级精品视频在线观看宜春院 | 99热这里只有精品首页| 欧美激情乱人伦| 日韩电影在线观看完整版| 日韩欧美中文字幕在线播放| 受虐m奴xxx在线观看| 日本 国产 欧美色综合| 400部精品国偷自产在线观看 | 日本不卡中文字幕| 尤物一区二区三区| 波多野结衣欧美| 茄子视频成人在线| 午夜精品一区| 欧美成人aa大片| 国产精品免费精品一区| 国产精品的网站| 午夜福利三级理论电影 | 日本中文字幕影院| 欧美精品导航| 欧美成人一区二区在线| 日韩三级成人| 久久久日本电影| 国产一级在线观看| 日韩三级.com| 免费看一级视频| 亚洲欧美激情小说另类| 国产肉体xxxx裸体784大胆| 蜜臀99久久精品久久久久久软件| 成人在线免费高清视频| 国产a久久精品一区二区三区| 91在线精品视频| 水蜜桃在线视频| 精品国产一区二区三区久久久| 欧美一级特黄aaaaaa| 一本一道波多野结衣一区二区| 国产又粗又硬又长又爽| 91在线丨porny丨国产| 国产无遮挡猛进猛出免费软件| 最新国产拍偷乱拍精品| 亚洲精品国产一区| 欧美三级电影在线| 91精品国产一区二区三区动漫| 欧美极度另类| 欧美激情一区二区三级高清视频| 第三区美女视频在线| 日韩欧美国产电影| 中文在线免费观看| 欧美日韩美女在线| 亚洲色婷婷一区二区三区| 欧美国产一区视频在线观看| 欧美肉大捧一进一出免费视频| 精品一二三四区| 草草草在线视频| 99精品久久| www.avtt| 欧美在线亚洲综合一区| 亚州欧美一区三区三区在线| 日韩在线黄色| 国产精品久久久一区二区三区| 亚洲人成777| 国产精品高潮呻吟视频| 亚洲精品中文字幕| 国内揄拍国内精品少妇国语| 亚洲精品天堂| 久久精品亚洲一区| 91免费在线| 亚洲丝袜在线视频| 天堂成人在线| 亚洲福利在线看| 亚洲精品一区二区三区新线路| 91精品国产色综合久久不卡蜜臀| 这里只有精品免费视频| 日本二三区不卡| 免费看一级视频| 色综合色狠狠天天综合色| 91精品国产高潮对白| 亚洲一区中文在线| 久草福利资源在线观看| 玉米视频成人免费看| 日日噜噜夜夜狠狠久久波多野| 国产精品国产三级国产普通话三级| 国产美女免费网站| 国产亚洲自拍一区| 91在线无精精品白丝| 国产清纯在线一区二区www| 美女洗澡无遮挡| 国产日韩成人精品| 蜜桃av免费在线观看| 国产精品乱码一区二三区小蝌蚪| 成人黄色短视频| 国产精品国模大尺度视频| jizzjizzjizz国产| 最好看的中文字幕久久| 成人涩涩小片视频日本| 亚洲人精品午夜| 免费一级全黄少妇性色生活片| 一区二区三区欧美日| 国产精品99无码一区二区| 五月天中文字幕一区二区| 自拍偷拍欧美亚洲| 欧美性极品xxxx做受| 国产精品午夜一区二区| 欧美三级乱人伦电影| 91精品国产乱码久久久| 欧美一二三四区在线| 免费av一级片| 日韩成人xxxx| 欧美日本网站| 日韩中文字幕网站| 日日夜夜天天综合入口| 96精品视频在线| 校园春色亚洲色图| 成人性生交xxxxx网站| 一区二区精彩视频| 欧美男人的天堂| 婷婷久久国产对白刺激五月99| 麻豆映画在线观看| 99精品视频免费全部在线| 九九视频精品在线观看| 国产尤物一区二区| 韩国无码一区二区三区精品| 国产精品婷婷午夜在线观看| 天天看片中文字幕| 欧美午夜片欧美片在线观看| 亚洲图片欧美在线| 亚洲精品在线观看网站| 成人在线播放视频| 欧美床上激情在线观看| 丝袜美腿一区| 99一区二区三区| 精品国产精品国产偷麻豆| 欧美黄色免费网址| 男女av一区三区二区色多| 成人亚洲免费视频| 99久久国产免费看| 可以免费看av的网址| 五月婷婷综合激情| 91成人在线免费| 日韩av中文字幕在线| 黄色免费在线网站| 国产999精品久久久| 亚洲超碰在线观看| 亚洲一区在线免费| 噜噜噜91成人网| 久久久久中文字幕亚洲精品 | 欧美黄色一区二区三区| 91福利视频久久久久| 亚洲欧美激情另类| 最近2019年好看中文字幕视频| 久久影院午夜精品| 91九色蝌蚪成人| 日韩电影免费网址| 欧美视频免费播放| 粉嫩久久99精品久久久久久夜| 久久一级免费视频| 色婷婷av一区| 性感美女视频一二三| 欧美黑人一级爽快片淫片高清| 久久91超碰青草在哪里看| 欧美xxxx黑人又粗又长精品| 亚洲国产专区校园欧美| gogo亚洲国模私拍人体| **欧美大码日韩| 中文字幕日日夜夜| 亚洲天堂男人的天堂| 人成在线免费网站| 精品日本一区二区| 亚洲精品护士| 50一60岁老妇女毛片| 亚洲一区二区三区视频在线播放 | 少妇久久久久久被弄高潮| 欧美视频一区二区三区四区| 精品影院一区| 日本三级久久久| 久久爱www成人| 日本成年人网址| 91天堂素人约啪| 自拍偷拍欧美亚洲| 精品小视频在线| 一级毛片久久久| 乱色588欧美| 日韩精品免费专区| 中文字幕第24页| 欧美色图第一页| 尤物网址在线观看| 91精品国产自产在线老师啪| 91精品国产91久久久久久密臀| 成人不卡免费视频| 一区二区成人在线视频| 亚洲成熟女性毛茸茸| 欧美黄色性视频| 精品欧美午夜寂寞影院| 黄色网页免费在线观看| 91影院在线免费观看| 秋霞精品一区二区三区| 国产亚洲精品高潮| 精品女同一区二区三区在线观看| 亚洲电影免费| 国产精品影视网| 天堂资源在线播放| 亚洲免费人成在线视频观看| av免费在线一区| 最新不卡av| 成人综合在线观看| 亚洲图片在线视频| 丝袜美腿亚洲一区二区| 日韩免费成人| 欧美变态另类刺激| 国产精品―色哟哟| 性生活黄色大片| 浅井舞香一区二区| 久久久久久久久久久9不雅视频| av电影中文字幕| 日韩欧美在线第一页| 激情影院在线观看| 国产日韩一区二区| 毛片一区二区三区| 黄网站免费在线| 国产一区二区三区视频在线观看| 四虎国产精品免费久久| 亚洲国产精品无码av| 久久精品欧美日韩| 精品人妻午夜一区二区三区四区 | 亚洲欧美日韩精品久久| 色综合视频一区二区三区44| 国产va亚洲va在线va| 中文字幕国产一区| 国产综合在线播放| 国产精品久久久久免费a∨大胸| 一区二区日韩欧美| 97超碰在线免费观看| 日韩一卡二卡三卡四卡| 91av亚洲| 精品一区二区三区无码视频| 国产亚洲一本大道中文在线|