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

縱騰湖倉全鏈路落地實踐

大數據 數據湖
數據湖作為一個統一存儲池,可接入多種方式的數據輸入,無縫對接多種計算分析引擎,進行高效的數據處理與分析。本文將介紹數據湖上的選型思考與探索實踐。

一、總體架構

面對日益增長的數據量,Lambda 架構使用離線/實時兩條鏈路和兩種存儲完成數據的保存和處理。這種繁雜的架構體系帶來了不一致的問題,需要通過修數、補數等一系列監控運維手段去彌補。為了統一簡化架構,提高開發效率,減少運維負擔,我們實施了基于數據湖 Hudi+Flink 的流批一體架構,達到了降本增效的目的。

如下圖所示,總體架構包括數據采集、ETL、查詢、調度、監控、數據服務等。要解決的是數據從哪里來到哪里去,怎么過去,怎么用,以及過程中的調度和監控、元數據管理、權限管理等問題。

圖片

“數據從哪里來”,我們的數據來自 MySQL、MongoDB、Tablestore、Hana。“數據到哪里去”,我們的數據會寫入到 Hudi、Doris,其中 Doris 負責存儲部分應用層的數據。“數據怎么過去”,將在后面的實時入湖部分進行介紹。“數據用在哪里”,我們的數據會被 OLAP、機器學習、API、BI 查詢使用,其中 OLAP 和 BI 都通過 Kyuubi 的服務進行查詢。

任務的調度主要通過 DolpuinScheduler 來執行,基于 quartz 的 cronTrigger 完成 shell、SQL 等調度。監控部分則是通過 Prometheus 和 Grafana,這是業界通用的解決方案。元數據采集通過 DataHub 完成,采用了 datahub 的 ingestion framework 框架來采集各種數據源的元數據。權限管理主要包括 Kyuubi 服務端的統一認證和引擎端的獨立鑒權。

二、入湖方案選型

數據入湖方案設計上,我們比較了三種入湖的實現思路。

1、入湖方案一

如下圖所示,包含了兩條支線:

  • 分支①:Flink SQL 通過 MySQL-CDC connector 和 Hudi connector 完成 source 和 sink 端讀寫。這樣 MySQL 每張表由單獨的 binlog dump 線程讀取 binlog。
  • 分支②:通過 MySQL 多庫表配置一個 Debezium Connector  實現單獨 binlog dump 線程讀取多庫表,解析后發送到 Kafka 的多個 topic。即一張表一個 topic。之后用 Flink SQL通過 Kafka connector 和 Hudi connector 完成 source 和 sink 端讀寫。

這種方案的主要優點是 Flink 和 CDC 組件都經過了充分驗證,已經非常穩定成熟了。而主要缺點是 Flink SQL 需要定義表 DDL。但我們已經開發 DDL 列信息從元數據系統獲取,無須自定義。并且寫 Hudi 是每張表一個 Flink 任務,這樣會導致資源占用過多。另外 Flink CDC 還不支持 Schema 演變,一旦 Schema 變更,需要重新拉取數據。

2、入湖方案二

這一方案是在前一個方案分支二的基礎上進行了一定的改進,通過 Dinky 完成整庫數據同步,其優點是同源數據合并成一個 source 節點,減輕源庫壓力,根據 schema、database、table 分流 sink 到對應表。其缺點是不支持 schema 演變,表結構變更須重新導數。如下圖所示,mysql_biz 庫中有3張表,從 flink dag 圖看到 mysql cdc source 分3條流 sink 到 Hudi 的3張表。

圖片

3、入湖方案三

主要流程如下圖所示。其主要優點是支持 Schema 演變。Schema 變更的信息由 Debezium 注冊到 Confluence Schema Registry,schema change 的信息通過 DeltaStreamer 執行任務變更到 Hudi,使得任務執行過程中不需要重新拉起。其主要缺點是依賴于 Spark 計算引擎,而我們部門主要用 Flink,當然,這會因各個公司實際情況而不同。

下圖分別是 Yarn 的 deltastreamer 任務, Kafka schema-change topic 的 DML message 和 Hudi 表變更后的數據。

圖片

4、入湖方案總結

在方案選型時,可以根據下面的流程圖進行比較選擇:

圖片

(1) 先看計算框架是 Spark 還是Flink,如果是Spark 則選擇方案三,即  Deltastreamer,這一方案適用于表結構變更頻繁,重新拉取代價高,主要技術棧是Spark 的情況。

(2) 如果是 Flink,再看數據量是否較少,以及表結構是否較穩定,如果是的話,選擇方案二,Dinky 整庫同步方案支持表名過濾,適用數據量較少且表結構較穩定的表。

(3) 如果否,再考慮 mysql 能否抗較大壓力,如果否,那么選擇方案一下分支,即 Kafka Connect,Debezium 拉取發送 Kafka,從 Kafka 讀取后寫 Hudi。適用數據量較大的多張表。

(4) 如果是,則選擇方案一上分支,即 Flink SQL mysql-cdc 寫 Hudi,適用于對實時穩定要求高于資源敏感的重要業務場景。

三、實時入湖優化

我們的入湖場景是 Flink Stream API 讀取Pulsar 寫 Hudi MOR 表,特點是數據量大,并且源端的每條消息都只包含了部分的列數據。我們通過使用 Hudi 的 MOR 表格式和 PartialUpdateAvroPayload 實現了這個需求。使用 Hudi 的 MOR 格式,是因為 COW 的寫放大問題,不適合數據量大的實時場景,而 MOR 是增量數據寫行存 Avro 格式log,通過在線或離線方式壓縮合并至列存格式 parquet。在保證寫效率的同時也兼顧了查詢的性能。不過需要通過合并任務定期地對數據進行合并處理,這是引入復雜度的地方。

以下面這張圖為例,recordKey 是 ID1 的3條 msg,每條分別包含一個列值,其余字段為空,按 ts 列 precombine,當 ts3 > ts2 > ts1時,最終 Hudi 存的 ID1 行的值是 v1,v2,v3,ts3。

圖片

此入湖場景痛點包括,MOR 表索引選擇不當,壓縮異常導致越寫越慢,直至 checkpoint 超時,某分區存在重復文件導致寫任務出錯,MOR 表某個壓縮計劃 pending阻礙此 bucket 的壓縮及后續的壓縮計劃生成,以及如何平衡效率與資源等。

我們在實踐過程中針對一些痛點實施了相應的解決方案。

Hudi 表索引類型選擇不當,導致越寫越慢至 CK 超時,這是因為 Bucket 索引通過 hash 映射 recordKey 到 fileGroup。而 Bloom 索引是保存 recordKey 和 partition、fileGroup 值來實現,因此 checkpoint size 會隨數據量的增加而增長。Bloom Filter 索引基于布隆過濾器實現,索引信息存儲在 parquet 的 footer 中,Bloom 的假陽性問題也會導致更新越來越慢,假陽性是指只能判斷數據一定不在某個文件而不能保證數據一定在某個文件,因此存在多個文件都可能存在某條數據,即須讀取多個文件才能準確判斷。

我們做的優化是使用 Bucket 索引代替 Bloom 索引,Hudi 目前也支持了可以動態擴容的 Bucket 參數。

圖片

MOR 表壓縮執行異常,具體來說有以下三個場景:

  • 單 log 超過1G,使寫延遲提高,導致越寫越慢至 checkpoint 超時,checkpoint 端到端耗時增長至3-6分鐘。
  • 在 inline schedule 的壓縮模式下,offline execute 出現報錯:log文件不存在。
  • Compaction 一直處于 Infight 狀態,即進行中,不能完成;同時存在無效 compaction,既不能被壓縮,也不能被取消。

此3種現象的原因都是 Sink:compact_commit 算子的并行度 > 1,我們做的優化是降低壓縮過程的并發度,設置 compact_commit Parallelism = 1。并行度改成1后1G的 log 壓縮正常。整張表size 明顯減少。log 到 parquet 的壓縮比默認是0.35。

圖片

MOR 表某分區存在重復文件,導致寫任務出錯。出現這個問題的原因是某個 instant 已寫 log 文件但未成功提交到 timeline 時,發生異常重啟后未 rollback 這個 instant,即未清理已有 log,繼續寫此 instant 則有重復。

我們做的優化是在遇到重復文件時,通過 Hudi-Cli 執行去重任務,再恢復執行。具體來說,需要拆分成以下四個步驟:

  • 停止當前的 Flink 任務。
  • 通過 Hudi-cli 執行去重命令。

repair deduplicate --duplicatedPartitionPath 20220604 --repairedOutputPath hdfs:///hudi/hudi_tis.db/track_detail_3_repair/20220604 --dedupeType upsert_type --sparkMaster local

  • 刪除 partition 文件,修復文件移到原分區。
  • 重新啟動 Flink 任務。

圖片

 MOR 表某個壓縮計劃 pending,阻礙此 bucket 的壓縮及后續的壓縮計劃生成。這個問題是由于環境問題導致的 zombie compaction 或 bug。上圖中第一列是compaction instant time,即壓縮計劃生成時間,第二列是狀態,第三列是此壓縮計劃包含的文件數。8181的 instant 卡住,且此壓縮計劃包含2198個文件,即涉及到大量的 file group,涉及的 file group不會有新的壓縮計劃生成。導致表的 size 增加,寫延時。

我們做的優化是回滾不正常的合并任務,重新處理。即利用較多資源快速離線壓縮完。保證之后啟動的 Flink 任務在相對少的資源情況下仍然可以保證更新和在線壓縮的效率。

具體來說,包括下面的命令:

  • 執行HoodieFlinkCompactor把所有inflight instant回滾成requested狀態。
  • 執行compaction unschedule命。

sh bin/hudi-compactor.sh hudi_tis track_detail_3 100

compaction unschedule --instant 20230613180604970  --parallelism 200 --sparkMaster local --sparkMemory 5g

圖片

經過多次的修改和驗證,我們的入湖任務在性能和穩定性上取得了明顯的改善。在穩定性上,做到了在十幾天內任務無異常。在時延上,做到了分鐘級別的 checkpoint 和數據可見。在資源使用上,對 Hadoop YARN 資源的占用明顯減少。

圖片

下圖總結了我們對實時入湖做的參數優化方案,包括:

  • 索引選擇GLOBAL_BLOOM-> BUCKET_INDEX #Bucket索引較布隆索引寫吞吐性能高。
  • BUCKET_NUM 20 #Bucket數量:根據單分區數據量評估,保證File Slice2GB,平衡讀寫性能。

Flink增量checkpoint:Rockdb #Flink ck存儲,rockdb支持增量ck,減少單ck數據量,提高寫吞吐。

  • Yarn資源:

jobmanager 5G #Flink jobmanager內存,減少oom,保證穩定。

taskmanager 50G 20S #Flink taskmanager內存與slot數,slot與并發度、bucket數一致。

  • write.rate.limit 30000 #寫速度限制,過載保護,保證作業穩定運行。
  • write.max.size 2560 #寫用到最大內存,于taskmanager每個slot內存一致。
  • write.batch.size 512 #批量寫,適量調大減少刷盤頻率。
  • compaction.max.memory 2048 #壓縮用到的最大內存,適量調大提升壓縮速度。
  • compaction.trigger.strategy num_and_time #壓縮策略 增量提交個數或時間達標觸發生成壓縮策略。
  • compaction.delta_seconds 30 #壓縮策略之時間,減少時間間隔,減少單個壓縮文件數。
  • compaction.delta_commits 2 #壓縮策略之增量提交個數,減少個數,減少單個壓縮文件數。

圖片

實時任務入湖的優化思路流程包括下面幾個步驟:

  • 先確定 bucket 數量,觀察 fileSlice 大小,估算調整。
  • 根據 bucket 數確定  Flink job 并行度,與 bucket 數保持一致。
  • 根據并行度確定 tm 資源,即并行度 = 總 slot 數。
  • 根據總 slot 數確定內存,即總內存 = num(slot) * (write.max.size)。
  • 根據 pulsar topic 流量確定 write.rate.limit,一般峰值 * 1.5。
  • 根據 Flink job 內存使用情況及平穩度確定 write.max.size,可拿追存量數據測試,一般內存降到寫速度明顯下降即為內存最低值。
  • 根據write.max.size 確定 write.batch.size 和 compaction.max.memory,前者是后兩個的和。
  • 根據 pulsar topic 流量確定壓縮類型,一般超過 10w/s 考慮使用 inline schedule 和 offline execution。

四、數據湖上的查詢

在引入 Kyuubi 前,我們通過 JDBC、Beeline、Spark Client、Flink Client 等客戶端訪問服務層執行查詢,沒有統一入口,多個平臺不互通,多賬號權限體系。用戶的痛點是跨多平臺開發體驗差,低效率。平臺層的痛點是問題定位運維復雜,存在資源浪費。

在引入 Kyuubi 后,我們基于社區版 Kyuubi 做了一定的改造,包括 JDBC 引擎開發、JDBC 引擎 Ranger 鑒權開發、BI、JDBC 客戶端元數據適配修改、Spark 引擎大結果集存 HDFS、支持導數開發、JDBC 引擎 SQL 攔截控流開發等,實現了統一數據服務入口,做到了統一認證權限管理和統一易用原則。

下圖展示了 Kyuubi 的架構和權限管控:

圖片

Kyuubi 查詢流程是:客戶端請求通過 LDAP 認證后,連接 Kyuubi Server 生成 Kyuubi session,之后 Kyuubi server 根據連接用戶以及用戶隔離級別路由到已經啟動的 engine 或啟動一個新的 engine。Spark 引擎會先申請 container 運行 AppMaster,后申請 container 運行 executor 執行 task。Flink 引擎會完成 StreamGraph 至 JobGraph 至 executionGraph 構建并通過 Jobmanager 和 taskmanager 運行。其中 engine 端 RangerPlungin 會在 SQL 解析后拉取 RangerAdmin 由用戶配置的策略進行鑒權。RangerAdmin 完成用戶同步,策略刷新等。

Kyuubi on Flink 跨庫查詢的目的是嘗試基于 Flink實現流批一體,支持跨數據源導數 SQL 化。我們的實現方案是通過 Flink Metadata Catalog Connector 的開發,即基于元數據系統以統一 datasource.db.table 的格式查詢所有數據源,且讓用戶免于自定義 DDL。其中元數據采集是用 datahub 的 ingestion framework 采集各種數據源的元數據,并生成對應 Flink 表屬性。Flink 端是擴展 AbstractCatalog 查詢 metadata DB,實現 CatalogFactory 接口。

其基本流程如下圖所示:

圖片

完整流程是1 發起采集請求2和3是采集服務調 Datahub ingestion framework 完成元數據采集并寫到 metadata DB 同時寫 Flink 表屬性。4是 用戶發送 SQL 到 Kyuubi server 5是 Kyuubi server 發送 SQL 到 Flink engine 6和7是 Flink metadata catalog  會讀取 metadata DB 根據 Flink 表屬性讀取對應數據源。

Kyuubi on JDBC Doris 可以通過外表查詢 Hudi,但在 Doris 1.2 版本,仍然有一定的限制,Hudi 目前僅支持Copy On Write 表的 Snapshot Query,以及 Merge On Read 表的 Read Optimized Query。后續將支持 Incremental Query 和 Merge On Read 表的 Snapshot Query。

Doris 的架構示意和其基本使用流程如下圖所示:

圖片

責任編輯:姜華 來源: DataFunTalk
相關推薦

2024-09-19 14:02:16

2023-06-28 07:28:36

湖倉騰訊架構

2023-12-14 13:01:00

Hudivivo

2025-03-04 08:53:10

2025-10-10 08:58:13

2023-10-13 07:25:50

2023-01-30 22:34:44

Node.js前端

2024-07-25 11:58:35

2021-11-18 10:01:00

Istio 全鏈路灰度微服務框架

2022-08-07 21:59:57

高可用架構

2024-01-05 00:29:36

全鏈路灰度發布云原生

2023-05-08 07:19:07

2022-07-18 16:02:10

數據庫實踐

2024-06-12 07:30:08

2024-12-16 08:34:13

2024-09-11 14:47:00

2023-10-16 23:43:52

云原生可觀測性

2023-11-13 10:41:44

Spring微服務

2025-06-24 09:51:47

2023-07-07 07:27:14

全鏈路虎牙APM
點贊
收藏

51CTO技術棧公眾號

欧美岛国在线观看| 99国产欧美久久久精品| 日韩视频亚洲视频| 26uuu国产| 理论不卡电影大全神| 91论坛在线播放| 国产精品视频专区| 欧美精品色哟哟| 久久365资源| 91福利资源站| 欧美一区免费视频| 九九热最新视频| 欧美成人一品| 日韩精品中文字幕视频在线| 国产又大又黄又粗又爽| 欧美人与动牲性行为| 99精品偷自拍| 国产视频999| 日韩少妇裸体做爰视频| 欧美在线色图| 亚洲成人亚洲激情| 日本免费色视频| free性护士videos欧美| 国产欧美一区二区三区网站| 5566av亚洲| 无码人妻久久一区二区三区不卡| 中文在线日韩| 国产亚洲欧洲高清一区| 国产伦理在线观看| 成人在线免费av| 亚洲成a人片在线观看中文| 视频一区二区综合| 亚洲 欧美 精品| 国产伦精一区二区三区| 国产福利精品av综合导导航| 久久久久久久久久91| 欧美一区二区三区高清视频| 亚洲福利视频网站| 欧美高清精品一区二区| 成人福利片在线| 色综合欧美在线视频区| 僵尸世界大战2 在线播放| 日本中文字幕在线视频| 久久久夜色精品亚洲| 国产精品嫩草在线观看| 国产毛片一区二区三区va在线 | 亚洲欧洲三级| 五月婷婷狠狠干| 国产成人av影院| 91免费视频国产| 中文字幕一区二区三区四区视频| 国产精品毛片| 午夜精品久久久99热福利| 色在线观看视频| 99久久精品费精品国产| 中文字幕免费精品一区高清| 中文字幕国产专区| 欧美日韩看看2015永久免费| 欧美精品一区男女天堂| 人妻 丝袜美腿 中文字幕| 日韩精品视频一区二区三区| 在线播放日韩导航| 色婷婷激情视频| 精品福利在线| 欧美日韩国产美| www.夜夜爽| 日韩成人精品一区二区三区| 欧美日韩国产一区| 亚洲欧美日韩三级| 亚洲一区二区av| 欧美丰满少妇xxxxx高潮对白| 中文字幕 欧美日韩| 爱情电影网av一区二区| 777亚洲妇女| 男生和女生一起差差差视频| 日本一区二区三区播放| 欧美变态tickle挠乳网站| 天天躁日日躁狠狠躁av| 欧美变态网站| 亚洲日韩第一页| 亚洲不卡的av| 91精品1区| 欧美精品videossex性护士| 丰满少妇乱子伦精品看片| 亚洲欧美日韩精品一区二区| 国产z一区二区三区| 亚洲精品国产精品乱码视色| 韩国一区二区三区| 成人自拍爱视频| 天天插天天干天天操| 国产三级久久久| 在线观看精品视频| 黄色美女视频在线观看| 欧美性猛交xxxx免费看| 激情黄色小视频| swag国产精品一区二区| 亚洲欧美日韩国产中文| 久久爱一区二区| 欧美日韩国产成人精品| 欧美中文在线观看国产| 11024精品一区二区三区日韩| 国产成人h网站| 欧美午夜精品久久久久久蜜| 麻豆网站在线看| 亚洲成人在线免费| 亚洲天堂网一区| 91精品久久久久久综合五月天| 日韩精品欧美激情| 极品色av影院| 日韩网站在线| 国产5g成人5g天天爽| 一个人www视频在线免费观看| 日韩欧美第一页| 黄色片视频在线| jizz性欧美23| 中文字幕亚洲激情| 久久精品第一页| 日本午夜一区二区| 国产精品一区二区欧美| 午夜激情在线观看| 精品久久久久久久久久久久久| 少妇网站在线观看| 日韩美女毛片| 美乳少妇欧美精品| 欧美三级网站在线观看| gogogo免费视频观看亚洲一| 一区二区91美女张开腿让人桶| 毛片在线导航| 制服丝袜国产精品| 在线观看国产精品一区| 最新成人av网站| 91香蕉国产在线观看| 国产福利免费在线观看| 午夜精品久久久久久久99樱桃| 激情图片中文字幕| 精品国产成人| 欧美在线一级va免费观看| 狠狠人妻久久久久久综合麻豆| 中文欧美字幕免费| 亚洲视频在线观看一区二区三区| 丁香婷婷成人| 欧美激情视频在线| h片在线免费看| 18涩涩午夜精品.www| 亚洲精品一二三四五区| 伊人久久大香线蕉av不卡| 97人人做人人爱| 韩国av电影在线观看| 亚洲色图一区二区| 中文字幕精品一区二区三区在线| 国产日韩欧美一区二区三区| 欧美亚洲成人xxx| 亚洲色图欧美视频| 天天免费综合色| 亚洲av成人片无码| 尤物网精品视频| 成人片在线免费看| 成人爽a毛片免费啪啪动漫| 日韩欧美国产麻豆| 欧美成人免费看| 国产丶欧美丶日本不卡视频| 久久久久久久久久久久久国产| 欧美日韩卡一| 日韩在线视频网| 国产老女人乱淫免费| 亚洲啪啪综合av一区二区三区| 爽爽爽在线观看| 亚洲人metart人体| 99影视tv| av在线网页| 亚洲精品99久久久久| 97免费在线观看视频| 26uuu久久综合| 亚洲人成无码www久久久| 成人在线丰满少妇av| 国产综合福利在线| 中文字幕有码在线观看| 精品欧美一区二区在线观看| 久久亚洲av午夜福利精品一区| www.久久久久久久久| 99精品视频播放| 波多野结衣的一区二区三区| 国产专区欧美专区| 国产蜜臀在线| 亚洲欧美在线x视频| 中文字幕在线日亚洲9| 亚洲乱码国产乱码精品精的特点 | 成人做爽爽免费视频| av在线free| 亚洲成人久久网| www.国产毛片| 亚洲视频在线一区二区| 欧美激情一区二区三区p站| 久久xxxx| 欧美性受黑人性爽| 日韩av字幕| 国产在线高清精品| 18video性欧美19sex高清| 亚洲一级免费视频| www.国产精品视频| 色哟哟日韩精品| www深夜成人a√在线| 成人成人成人在线视频| 天美星空大象mv在线观看视频| 一区二区在线| 免费精品视频一区| 91成人app| 2019中文字幕在线免费观看| 免费人成在线观看播放视频| 亚洲精品久久久久久久久| 又色又爽又黄无遮挡的免费视频| 亚洲图片自拍偷拍| 日韩欧美视频免费观看| 91在线观看一区二区| 黄色小视频免费网站| 国产亚洲毛片在线| 伊人再见免费在线观看高清版| 国产欧美日韩视频在线| 国产精品免费视频一区二区| 另类一区二区三区| 久久精品丝袜高跟鞋| 美国av一区二区三区| julia一区二区三区中文字幕| 久久国产精品久久国产精品| 邻居大乳一区二区三区| 日韩欧美在线网站| 国产在线一级片| 亚洲精品国产精品国产| 久久躁狠狠躁夜夜爽| 国产在线91| 亚洲精品电影久久久| 国产夫妻自拍av| 精品1区2区3区| 九九九在线观看| 亚洲午夜久久久| 亚洲伦理一区二区三区| 国产婷婷色一区二区三区| 国产精品成人99一区无码 | 欧美日韩 一区二区三区| 午夜精品在线视频一区| 我家有个日本女人| **性色生活片久久毛片| 999福利视频| 国产午夜精品一区二区三区四区| 成年人的黄色片| 成人免费视频网站在线观看| 91人妻一区二区三区| 国产综合久久久久久久久久久久| www午夜视频| 麻豆精品一二三| 亚洲狼人综合干| 日韩激情在线观看| 黄色国产小视频| 日本欧美一区二区| 五月婷婷丁香色| 精品一区二区三区免费毛片爱| 怡红院亚洲色图| 亚洲国产wwwccc36天堂| 自拍偷拍亚洲欧美日韩| 久久无码人妻一区二区三区| 亚洲一级在线| 国产精品333| 亚洲日本视频| 青青草精品视频在线| 国产精品videossex久久发布| 4444在线观看| 尹人成人综合网| 成人毛片一区二区| 国产农村妇女精品一区二区| 国产在线观看福利| 男人的天堂成人在线| 日韩 欧美 高清| 欧美a一区二区| 亚洲美女性囗交| 国产精品中文欧美| 少妇一级淫免费观看 | 国产精品视频一二三四区| 一区二区电影| h无码动漫在线观看| 国产日韩视频| 欧美三级午夜理伦三级富婆| 国产乱子伦一区二区三区国色天香| 国产伦精品一区二区三区妓女下载 | 免费看男男www网站入口在线| 亚洲乱码av中文一区二区| 国产乱子伦三级在线播放| xx视频.9999.com| 草莓视频丝瓜在线观看丝瓜18| 欧美亚州一区二区三区| 日韩黄色三级| 国产精品日韩一区二区| 久久99蜜桃| 干日本少妇视频| 国产亚洲在线观看| 午夜精品免费看| 99在线热播精品免费| 国产传媒在线看| 亚洲综合丁香婷婷六月香| 岛国av中文字幕| 日韩一区二区三区视频在线观看| 亚洲色图21p| 久久艳片www.17c.com| 亚洲女色av| 亚洲free性xxxx护士hd| 亚洲区小说区| 欧美日韩中文字幕在线播放| 久久欧美肥婆一二区| 韩国三级丰满少妇高潮| 欧美经典一区二区| 日本在线视频中文字幕| 欧美丰满高潮xxxx喷水动漫| 天天综合天天色| 欧美xxxx18国产| 日韩三区免费| 国产在线精品一区二区三区》| 成人中文在线| 黄色av网址在线播放| 国产一区二区三区黄视频| 久久久久亚洲av无码a片| 亚洲一二三区视频在线观看| 怡红院男人的天堂| 日韩精品小视频| 七七成人影院| 成人日韩在线电影| 欧美色就是色| 国产精品50p| av电影一区二区| 亚洲国产成人精品综合99| 精品视频999| 国模精品一区二区| 2019中文在线观看| 国产精品qvod| 国产专区在线视频| 国产一二三精品| 亚洲欧美卡通动漫| 欧美图片一区二区三区| 毛片免费在线播放| 日韩av电影手机在线观看| 日韩高清电影免费| aa在线观看视频| 成人黄色大片在线观看| 久久艹精品视频| 日韩精品一区二区三区视频| 黄色在线免费| 国产精品视频中文字幕91| 不卡在线一区二区| 91视频免费版污| 欧美经典一区二区| 懂色av蜜臀av粉嫩av喷吹| 亚洲天堂第二页| 日韩欧美另类一区二区| 欧美大陆一区二区| 午夜一区不卡| xxxx日本免费| 在线观看欧美精品| lutube成人福利在线观看| 国产精品久久久精品| 欧美中文字幕一区二区| 亚洲精品性视频| 亚洲视频一二三区| 亚洲高清视频在线播放| 久久久人成影片一区二区三区观看| 岛国成人av| heyzo国产| 国产日本欧美一区二区| 中文字幕 日韩有码| 久久精品视频中文字幕| 蜜桃在线一区| 男女啪啪免费视频网站| 久久综合狠狠综合久久综合88 | 国产精品吴梦梦| 91tv精品福利国产在线观看| 熟女人妻一区二区三区免费看| 亚洲大片精品永久免费| 九色蝌蚪在线| 国产欧美日韩专区发布| 欧美日韩福利| free性中国hd国语露脸| 91电影在线观看| 成人在线网址| 久久久久久久久久久久久9999| 日韩精品一级二级 | 亚洲欧美色图小说| 日韩中文字幕综合| 国产精品2018| 一本一道久久综合狠狠老| 亚洲精品国产成人av在线| 色哟哟一区二区在线观看 | 久久精品一区四区| 国产一区二区三区中文字幕| 欧美激情中文字幕在线| 久久av超碰| 免费国偷自产拍精品视频| 欧美性极品少妇精品网站| 巨大荫蒂视频欧美大片| 国产综合欧美在线看| 麻豆成人久久精品二区三区红| 久久精品人妻一区二区三区| 亚洲欧美日韩中文视频| 精品国产一区二|