精品欧美一区二区三区在线观看 _久久久久国色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技術棧公眾號

www.豆豆成人网.com| 国产私人尤物无码不卡| 好看的日韩av电影| 亚洲精品国偷自产在线99热| 老熟妇仑乱视频一区二区| 黄色av网址在线免费观看| 久草热8精品视频在线观看| 欧美日韩成人黄色| av女人的天堂| 日韩中文一区二区| 欧美视频在线免费看| 亚洲 国产 欧美一区| 精品国产乱码一区二区三| 久久av一区| 美女精品视频一区| 久久精品国产亚洲av久| 国产精品国产三级在线观看| 欧美日韩国产激情| 一区二区三区我不卡| 五月婷在线视频| 精品一区二区三区免费播放| 91av免费观看91av精品在线| 国产老头老太做爰视频| 无码少妇一区二区三区| 欧美一区二区三区视频免费| 国产福利一区视频| 91www在线| 亚洲欧洲www| 欧美日本亚洲| 黄色成人一级片| 国产综合色精品一区二区三区| 亚洲精品videossex少妇| 亚洲免费黄色网| 亚洲淫成人影院| 樱桃国产成人精品视频| 亚洲国产精品一区在线观看不卡| 无码精品在线观看| 狠狠v欧美v日韩v亚洲ⅴ| 日韩av123| 亚洲精品午夜国产va久久成人| 在线一区免费| 久久精品最新地址| 欧美日韩国产一二三区| 国产伦精品一区二区三区千人斩| 亚洲国模精品一区| yjizz视频| 超碰成人在线观看| 欧美成人精品高清在线播放| 亚洲理论中文字幕| 香蕉久久一区| 欧美猛男gaygay网站| 三级a在线观看| 亚洲精品粉嫩美女一区| 一本色道久久综合精品竹菊| 国产精品沙发午睡系列| 国产白浆在线免费观看| 午夜精品在线视频一区| 国模无码视频一区二区三区| 九九精品调教| 亚洲午夜久久久久久久久久久| 白白操在线视频| 色呦呦在线资源| 亚洲一区二区av电影| 丁香色欲久久久久久综合网| 中文字幕av一区中文字幕天堂 | 国产精品12p| 黄页视频在线播放| 一区二区三区不卡视频| 欧美一区二区激情| 91九色在线看| 色女孩综合影院| 亚洲色图久久久| 99re8精品视频在线观看| 91麻豆精品国产91久久久更新时间| 一起操在线视频| 亚洲男男av| 欧美成人伊人久久综合网| 亚洲无人区码一码二码三码| 欧洲亚洲一区二区三区| 亚洲欧美日韩成人| 日本女人性生活视频| 欧美在线三区| 77777少妇光屁股久久一区| 国产又黄又猛又粗又爽| 老司机一区二区| 91视频免费进入| 人人妻人人玩人人澡人人爽| 久久精品一级爱片| 中文字幕一区二区三区5566| 国产乱妇乱子在线播视频播放网站| 亚洲精品精品亚洲| 中国一级大黄大黄大色毛片| www.久久久久.com| 婷婷久久综合九色综合绿巨人| 久久精品香蕉视频| 成人激情久久| 日韩精品日韩在线观看| 999福利视频| 99热在线精品观看| 国产精品自产拍高潮在线观看| 精品人妻伦一区二区三区久久| 91在线观看一区二区| 一本一本a久久| 99色在线观看| 欧美三区在线观看| 亚洲自拍偷拍精品| 国产精品99久久| 91精品国产91久久久久| 91成人在线免费| 91美女片黄在线观看91美女| 日韩国产精品毛片| 亚洲欧美小说色综合小说一区| 7777精品伊人久久久大香线蕉 | 久久久久久com| 草莓视频18免费观看| 国产精品一级在线| 秋霞在线观看一区二区三区| 国产桃色电影在线播放| 欧美唯美清纯偷拍| 免费成人深夜夜行p站| 亚洲国产精品成人| 国产精品免费久久久久久| 内射后入在线观看一区| 1024精品合集| 一级在线免费视频| 曰本一区二区三区视频| 欧美极品少妇xxxxⅹ喷水 | 日韩高清一级片| 国产精品久久久对白| 麻豆视频在线| 欧美图区在线视频| 中文字幕免费看| 尤物在线精品| 成人综合色站| 黄色网址免费在线观看| 欧美日韩中字一区| 日韩人妻无码精品综合区| 亚洲久久视频| 国产精品一区二区三区在线| 亚洲91av| 欧美一区二区三区在线观看| 蜜桃av免费在线观看| 久久中文字幕一区二区三区| 久久久综合香蕉尹人综合网| aa国产成人| 精品剧情v国产在线观看在线| 天天爽天天爽天天爽| 日本美女一区二区三区视频| 日本一区视频在线观看| 一区二区三区电影大全| 国产丝袜一区二区| 亚洲欧美偷拍视频| 久久久精品综合| 久久久久久久久久久久久国产精品| 国产区精品视频在线观看豆花| 欧美福利视频在线观看| 亚洲精品97久久中文字幕| 亚洲在线成人精品| 色悠悠在线视频| 在线一区欧美| 久久人人九九| 色婷婷综合久久久中字幕精品久久 | 国产日韩一级二级三级| 欧在线一二三四区| 欧美色图国产精品| 成人h猎奇视频网站| a免费在线观看| 欧美成人a在线| 日本中文字幕网| 久久婷婷久久一区二区三区| 人妻无码视频一区二区三区| 欧美韩国日本在线观看| 成人免费午夜电影| 欧美xxx黑人xxx水蜜桃| 亚洲国产成人精品一区二区| 亚洲成人第一网站| 国产精品电影一区二区| 亚洲成人福利视频| 国产视频一区在线观看一区免费| 欧美精品国产精品久久久| 国精品产品一区| 久久久久久久久久久人体| 手机福利在线| 欧美日韩中文一区| 久久影院一区二区| 久久日韩精品一区二区五区| 中文字幕第100页| 国内自拍一区| 日韩av电影免费在线| 国产视频一区二| 91国在线精品国内播放 | 中文一区在线播放| 国产男女无遮挡猛进猛出| 国产情侣一区| 一区二区视频在线免费| 久久中文字幕导航| 国产精品美女无圣光视频| 麻豆福利在线观看| 中文字幕精品在线视频| 国产成人手机在线| 欧美三区在线观看| 国产免费观看av| 亚洲色图在线看| 中文字幕丰满孑伦无码专区| 国内精品伊人久久久久影院对白| 国产九九九九九| 欧美国产美女| 日本一区二区三区四区高清视频| 亚洲一区二区三区四区电影| 国产精品www网站| 国产盗摄在线视频网站| 色噜噜亚洲精品中文字幕| 亚洲欧美日本在线观看| 欧美一区二区在线视频| 久久久久亚洲视频| 精品日本高清在线播放| 日韩视频中文字幕在线观看| 久久九九久久九九| 污污污www精品国产网站| 国产一区二区伦理| 一区二区成人网| 性一交一乱一区二区洋洋av| 在线观看三级网站| 色爱综合网欧美| 青青成人在线| 亚洲精品国产精品粉嫩| 国产精品一区二区免费| 试看120秒一区二区三区| 国产欧美日韩免费看aⅴ视频| 伊人色综合一区二区三区影院视频| 欧美激情xxxx| 国产1区在线| 日韩一区视频在线| 免费黄色在线视频网站| 日韩二区三区在线| 日本人妻丰满熟妇久久久久久| 3d动漫精品啪啪| 亚洲视频在线观看一区二区| 在线免费亚洲电影| 亚洲欧美一区二区三区在线观看| 午夜伦欧美伦电影理论片| 国产无码精品久久久| 亚洲一区视频在线观看视频| 黄色在线观看免费| 亚洲综合色婷婷| 精品午夜福利视频| 亚洲一区二区三区自拍| 久久婷婷一区二区| 亚洲一区二区三区激情| 日本熟妇一区二区| 婷婷开心激情综合| 黄色在线免费观看| 色综合激情五月| 亚洲天堂五月天| 欧美视频一区二区三区四区| 中文字幕在线视频第一页| 在线欧美一区二区| 一级片在线免费观看视频| 69p69国产精品| aaa国产视频| 精品久久久久av影院| 无码国产精品96久久久久| 日韩精品在线看| 国产高清在线看| 日韩中文字幕网址| 日日夜夜天天综合入口| 久久人人爽人人| 不卡av播放| 国产精品久久久久久久久免费看| 青青草国产一区二区三区| 91免费国产网站| 哺乳一区二区三区中文视频| 精品一区二区国产| 欧美限制电影| 警花观音坐莲激情销魂小说| 亚洲私人影院| 可以免费在线看黄的网站| 激情综合网激情| 中文字幕第九页| 国产欧美日韩在线| 国产这里有精品| 一本色道a无线码一区v| 97超碰人人草| 亚洲第一精品久久忘忧草社区| 牛牛影视精品影视| 日韩在线视频免费观看高清中文| 色呦呦在线播放| 国产成人精品免费久久久久| 亚洲伦理久久| 久久av免费一区| 91一区在线| 亚洲人成无码网站久久99热国产 | 麻豆免费在线观看视频| www成人在线观看| 亚洲 欧美 变态 另类 综合| 精品国产精品自拍| 国产精品伦一区二区三区| 亚洲第一色中文字幕| www 日韩| 性欧美视频videos6一9| av成人免费| 成人一区二区在线| 日韩欧美综合| 黄页免费在线观看视频| 美国av一区二区| av网页在线观看| 中文字幕一区二区三区av| 日韩精品1区2区| 91.com在线观看| 黄色av网址在线免费观看| 久久久久久网址| 亚洲欧洲专区| 欧美男人的天堂| 国产一区欧美| 蜜桃福利午夜精品一区| 久久久久88色偷偷免费| 日本一级淫片免费放| 欧美一级搡bbbb搡bbbb| 北条麻妃在线| 欧美一级成年大片在线观看| 69精品国产久热在线观看| 亚洲a∨一区二区三区| 国产精品一国产精品k频道56| 免费高清视频在线观看| 国产精品乱人伦中文| 中文字幕黄色片| 亚洲国产成人久久综合| 天天干在线视频论坛| 91色视频在线观看| 日本电影一区二区| 日本xxxxxxx免费视频| 91免费在线视频观看| 日本少妇xxxx动漫| 欧美不卡123| 91最新在线| 国产女精品视频网站免费| 琪琪久久久久日韩精品| 久久这里只有精品18| 国产乱码字幕精品高清av| 国精品人伦一区二区三区蜜桃| 在线日韩一区二区| 高清av在线| 国产精品自拍网| 日韩极品一区| 男人的天堂最新网址| 国产精品福利影院| 国产又黄又爽视频| 久久伊人免费视频| 国产精品日本一区二区三区在线 | 欧美日韩久久久| 3p在线观看| 成人在线小视频| 欧美xxx在线观看| 无套白嫩进入乌克兰美女| 成人欧美一区二区三区白人| 国产美女无遮挡永久免费| 久久五月情影视| 亚洲精品午夜| 人人妻人人添人人爽欧美一区| 91在线视频在线| 国产熟妇一区二区三区四区| 亚洲香蕉av在线一区二区三区| 91精品影视| 最新视频 - x88av| 国产大陆a不卡| 免费日韩一级片| 亚洲网址你懂得| 亚洲ww精品| 欧美图片激情小说| 91麻豆免费在线观看| 亚洲永久精品一区| 久久亚洲综合国产精品99麻豆精品福利| 国产午夜久久av| 国产免费黄色av| 中文字幕中文在线不卡住| 精品久久在线观看| 97色在线观看免费视频| 欧美在线电影| 欧美熟妇精品一区二区| 欧美视频国产精品| av播放在线观看| 亚洲在线免费视频| 国产午夜久久| 欧美a在线播放| 精品久久久久久久久久久久久久久久久| 激情视频网站在线播放色| 亚洲不卡一卡2卡三卡4卡5卡精品| 蜜桃精品在线观看| 久草免费新视频| 伊人av综合网| 中文字幕一区二区三区中文字幕| 亚洲熟妇av一区二区三区漫画| 欧美激情一区二区三区全黄| 午夜免费福利视频| 日本高清+成人网在线观看| 久久精品免费一区二区三区| 99re久久精品国产| 欧美丰满美乳xxx高潮www| 瑟瑟视频在线看| 日韩精品福利片午夜免费观看|