日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Flink 源码 | 自定义 Format 消费 Maxwell CDC 数据

發布時間:2024/8/23 编程问答 55 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Flink 源码 | 自定义 Format 消费 Maxwell CDC 数据 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Flink 1.11 最重要的 Feature —— Hive Streaming 之前已經和大家分享過了,今天就和大家來聊一聊另一個特別重要的功能 —— CDC。

CDC概述

何為CDC?Change Data Capture,將數據庫中的’增’、’改’、’刪’操作記錄下來。在很早之前是通過觸發器來完成記錄,現在通過 binlog+同步中間件來實現。常用的 binlog 同步中間件有很多,比如 Alibaba 開源的 canal[1],Red Hat 開源的debezium[2],Zendesk 開源的 Maxwell[3] 等等。

這些中間件會負責 binlog 的解析,并同步到消息中間件中,我們只需要消費對應的 Topic 即可。

回到 Flink 上,CDC 似乎和我們沒有太大的關聯?其實不然,讓我們更加抽象地來看這個世界。

當我們用 Flink 去消費數據比如 Kafka 時,我們就仿佛在讀一張表,什么表?一張不斷有記錄被插入的表,我們將每一條被插入的數據取出來,完成我們的邏輯。

當插入的每條數據都沒有問題時,一切都很美好。關聯、聚合、輸出。

但當我們發現,某條已經被計算過的數據有問題時,麻煩大了。我們直接改最后的輸出值其實是沒有用的,這次改了,當再來數據觸發計算時,結果還是會被錯誤的數據覆蓋,因為中間計算結果沒有被修改,它仍然是一個錯誤的值。怎么辦?撤回流似乎能解決這個問題,這也確實是解決這個問題的手段,但是問題來了,撤回流怎么確定讀取的數據是要被撤回的?另外,怎么去觸發一次撤回?

CDC 解決了這些:將消息中間件的數據反序列化后,根據 Type 來識別數據是 Insert 還是 Delete;另外,如果大家看過 Flink 源碼,會發現反序列化后的數據類型變了,從 Row 升級為 RowData,RowData 能夠將數據標記為撤回還是插入,這就意味著每個算子能夠判斷出數據到底是需要下發還是撤回。

CDC 的重要性就先說這么多,之后有機會的話,出一篇實時 DQC 的視頻,告訴大家 CDC 的出現,對于實時 DQC 的幫助有多大。下面讓我們回到正題。

既然有那么多 CDC 同步中間件,那么一定會有各種各樣的格式存放在消息中間件中,我們必然需要去解析它們。于是 Flink 1.11 提供了 canal-json 和 debezium-json,但我們用的是 Maxwell 怎么辦?只能等官方出或者說是等有人向社區貢獻嗎?那如果我們用的是自研的同步中間件怎么辦?

所以就有了今天的分享:如何去自定義實現一個 Maxwell format。大家也可以基于此文的思路去實現其他 CDC format,比如 OGG, 或是自研 CDC 工具產生的數據格式。

如何實現

當我們提交任務之后,Flink 會通過 SPI 機制將 classpath 下注冊的所有工廠類加載進來,包括 DynamicTableFactory、DeserializationFormatFactory 等等。而對于 Format 來說,到底使用哪個 DeserializationFormatFactory,是根據 DDL 語句中的 Format 來決定的。通過將 Format 的值與工廠類的 factoryIdentifier() 方法的返回值進行匹配 來確定。

再通過 DeserializationFormatFactory 中的 createDecodingFormat(...) 方法,將反序列化對象提供給 DynamicTableSource。

通過圖來了解整個過程(僅從反序列化數據并消費的角度來看):

想要實現 CDC Format 去解析某種 CDC 工具產生的數據其實很簡單,核心組件其實就三個:

  • 工廠類(DeserializationFormatFactory):負責編譯時根據 ‘format’ = ‘maxwell-json’創建對應的反序列化器。即 MaxwellJsonFormatFactory。
  • 反序列化類(DeserializationSchema):負責運行時的解析,根據固定格式將 CDC 數據轉換成 Flink 系統能認識的 INSERT/DELETE/UPDATE 消息,如 RowData。即 MaxwellJsonDeserializationSchema。
  • Service 注冊文件:需要添加 Service 文件 META-INF/services/org.apache.flink.table.factories.Factory ,并在其中增加一行我們實現的 MaxwellJsonFormatFactory 類路徑。

再通過代碼,來看看反序列化中的細節:

public void deserialize(byte[] message, Collectorout) throws IOException {try {RowData row = jsonDeserializer.deserialize(message);String type = row.getString(2).toString(); // "type" fieldif (OP_INSERT.equals(type)) {RowData insert = row.getRow(0, fieldCount);insert.setRowKind(RowKind.INSERT);out.collect(insert);} else if (OP_UPDATE.equals(type)) {GenericRowData after = (GenericRowData) row.getRow(0, fieldCount); // "data" fieldGenericRowData before = (GenericRowData) row.getRow(1, fieldCount); // "old" fieldfor (int f = 0; f < fieldCount; f++) {if (before.isNullAt(f)) {before.setField(f, after.getField(f));}}before.setRowKind(RowKind.UPDATE_BEFORE);after.setRowKind(RowKind.UPDATE_AFTER);out.collect(before);out.collect(after);} else if (OP_DELETE.equals(type)) {RowData delete = row.getRow(0, fieldCount);delete.setRowKind(RowKind.DELETE);out.collect(delete);} else {if (!ignoreParseErrors) {throw new IOException(format("Unknown \"type\" value \"%s\". The Maxwell JSON message is '%s'", type, new String(message)));}}} catch (Throwable t) {if (!ignoreParseErrors) {throw new IOException(format("Corrupt Maxwell JSON message '%s'.", new String(message)), t);}}}

其實并不復雜:先通過 jsonDeserializer 將字節數組根據 [data: ROW, old: ROW, type: String] 的 schema 反序列化成 RowData,然后根據 “type” 列的值來判斷數據是什么類型:增、改、刪;再根據數據類型取出 “data” 或者 “old” 區的數據,來組裝成 Flink 認識的 INSERT/DELETE/UPDATE 數據并下發。

對象 jsonDeserializer 即 JSON 格式的反序列化器,它可以通過指定的 RowType 類型,讀取 JSON 的字節數組中指定的字段并反序列化成 RowData。在我們的場景中,我們需要去讀取如下 Maxwell 數據的 “data”, “old” 和 “type” 部分的數據。

{"database":"test","table":"product","type":"update","ts":1596684928,"xid":7291,"commit":true,"data":{"id":102,"name":"car battery","description":"12V car battery","weight":5.17},"old":{"weight":8.1}}

因此 MaxwellJsonDeserializationSchema 中定義的 JSON 的 RowType 如下所示。

private RowType createJsonRowType(DataType databaseSchema) {// Maxwell JSON contains other information, e.g. "database", "ts"// but we don't need themreturn (RowType) DataTypes.ROW(DataTypes.FIELD("data", databaseSchema),DataTypes.FIELD("old", databaseSchema),DataTypes.FIELD("type", DataTypes.STRING())).getLogicalType();}

databaseSchema 是用戶通過 DDL 定義的 schema 信息,也對應著數據庫中表的 schema。結合上面的 JSON 和代碼,我們能夠得知 jsonDeserializer 只會取走 byte[] 中 data、old、type 這三個字段對應的值,其中 data 和old 還是個嵌套JSON,它們的 schema 信息和 databaseSchema 一致。由于 Maxwell 在同步數據時,“old”區不包含未被更新的字段,所以 jsonDeserializer 返回后,我們會通過 “data” 區的 RowData 將 old 區的缺失字段補齊。

得到 RowData 之后,會取出 type 字段,然后根據對應的值,會有三種分支:

  • insert:取出 data 中的值,也就是我們通過DDL定義的字段對應的值,再將其標記為 RowKind.INSERT 類型數據,最后下發。
  • update:分別取出 data 和 old 的值,然后循環 old 中每個字段,字段值如果為空說明是未修改的字段,那就用 data 中對應位置字段的值替代;之后將 old 標記為 RowKind.UPDATE_BEFORE 也就意味著 Flink 引擎需要將之前對應的值撤回,data 標記為 RowKind.UPDATE_AFTER 正常下發。
  • delete:取出 data 中的值,標記為 RowKind.DELETE,代表需要撤回。

處理的過程中,如果拋出異常,會根據 DDL 中maxwell-json.ignore-parse-errors的值來確定是忽視這條數據繼續處理下一條數據,還是讓任務報錯。

筆者在 maxwell-json 反序列化功能的基礎之上,還實現了序列化的功能,即能將 Flink 產生的 changelog 以 Maxwell 的 JSON 格式輸出到外部系統中。其實現思路與反序列化器的思路正好相反,更多細節可以參考 Pull Request 中的實現。

PR 實現詳情鏈接:?
https://github.com/apache/flink/pull/13090

功能演示

給大家演示一下從 Kafka 中讀取 Maxwell 推送來的 maxwell json 格式數據,并將聚合后的數據再次寫入 Kafka 后,重新讀出來驗證數據是否正確。

Kafka 數據源表

CREATE TABLE topic_products (-- schema is totally the same to the MySQL "products" tableid BIGINT,name STRING,description STRING,weight DECIMAL(10, 2) ) WITH ( 'connector' = 'kafka', 'topic' = 'maxwell', 'properties.bootstrap.servers' = 'localhost:9092', 'properties.group.id' = 'testGroup', 'format' = 'maxwell-json');

Kafka 數據結果表&數據源表

CREATE TABLE topic_sink (name STRING,sum_weight DECIMAL(10, 2) ) WITH ( 'connector' = 'kafka', 'topic' = 'maxwell-sink', 'properties.bootstrap.servers' = 'localhost:9092', 'properties.group.id' = 'testGroup', 'format' = 'maxwell-json' );

MySQL 表

-- 注意,這部分 SQL 在 MySQL 中執行,不是 Flink 中的表 CREATE TABLE product ( id INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255), description VARCHAR(512), weight FLOAT ); truncate product ; ALTER TABLE product AUTO_INCREMENT = 101; INSERT INTO product VALUES (default,"scooter","Small 2-wheel scooter",3.14),(default,"car battery","12V car battery",8.1),(default,"12-pack drill bits","12-pack of drill bits with sizes ranging from #40 to #3",0.8),(default,"hammer","12oz carpenter's hammer",0.75),(default,"hammer","14oz carpenter's hammer",0.875),(default,"hammer","16oz carpenter's hammer",1.0),(default,"rocks","box of assorted rocks",5.3),(default,"jacket","water resistent black wind breaker",0.1),(default,"spare tire","24 inch spare tire",22.2); UPDATE product SET description='18oz carpenter hammer' WHERE id=106; UPDATE product SET weight='5.1' WHERE id=107; INSERT INTO product VALUES (default,"jacket","water resistent white wind breaker",0.2); INSERT INTO product VALUES (default,"scooter","Big 2-wheel scooter ",5.18); UPDATE product SET description='new water resistent white wind breaker', weight='0.5' WHERE id=110; UPDATE product SET weight='5.17' WHERE id=111; DELETE FROM product WHERE id=111; UPDATE product SET weight='5.17' WHERE id=102 or id = 101; DELETE FROM product WHERE id=102 or id = 103;

先看看能不能正常讀取 Kafka 中的 maxwell json 數據。

select * from topic_products;

可以看到,所有字段值都變成了 Update 之后的值,同時,被 Delete 的數據也沒有出現。

接著讓我們再將聚合數據寫入 Kafka。

insert into topic_sink select name,sum(weight) as sum_weight from topic_products group by name;

在 Flink 集群的 Web 頁面也能夠看到任務正確提交,接下來再讓我們把聚合數據查出來。

select * from topic_sink

最后,讓我們查詢一下 MySQL 中的表,來驗證數據是否一致;因為在 Flink 中,我們將 weight 字段定義成 Decimal(10,2),所以我們在查詢 MySQL 的時候,需要將 weight 字段進行類型轉換。

沒有問題,我們的 maxwell json 解析很成功。

寫在最后

根據筆者實現 maxwell-json format 的經驗,Flink 對于接口的定義、對于模塊職責的劃分還是很清晰的,所以實現一個自定義 CDC format 非常簡單(核心代碼只有200多行)。因此,如果你是用的 OGG,或是自研的同步中間件,可以通過本文的思路快速實現一個 CDC format,一起解放你的 CDC 數據!

?

?

原文鏈接
本文為阿里云原創內容,未經允許不得轉載。

總結

以上是生活随笔為你收集整理的Flink 源码 | 自定义 Format 消费 Maxwell CDC 数据的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

成人影视片 | 亚洲欧美经典 | 婷婷激情影院 | 成人av免费在线播放 | 久久91久久久久麻豆精品 | 天天天色| 国产裸体bbb视频 | 久草在线电影网 | 免费视频二区 | 日韩视频 一区 | 亚洲精品永久免费视频 | 国产午夜精品理论片在线 | 色综合天天色综合 | 精品国产91亚洲一区二区三区www | 亚洲精品一区中文字幕乱码 | 国内成人精品2018免费看 | 日本一区二区三区视频在线播放 | 手机在线观看国产精品 | 五月婷婷中文网 | 久久久免费视频播放 | 日本成址在线观看 | 欧美男男激情videos | av在线在线 | 国产在线超碰 | 九九在线高清精品视频 | 中文字幕在线免费看 | 国产精品 国内视频 | 天堂在线一区二区 | 毛片www| 国产一级片在线播放 | 在线免费黄 | 久久综合狠狠综合 | 久草在线免费播放 | 久久精品久久99精品久久 | 天堂激情网 | 中文字幕观看av | 亚洲精品午夜视频 | 中文字幕日韩高清 | 人人草天天草 | 欧美在线观看禁18 | 日本中文一级片 | 99av国产精品欲麻豆 | 日日夜夜网 | 日本久久免费视频 | 国产美女视频免费观看的网站 | 久久久久久久av | 免费特级黄毛片 | 婷婷色综合 | 亚洲一二三区精品 | 97成人在线免费视频 | 精品在线看 | 久热爱| 免费高清在线视频一区· | 亚洲国产日本 | 日韩国产精品毛片 | 免费一区在线 | 欧美一区二区三区在线视频观看 | 亚洲视频大全 | 精品国产乱码久久久久 | 麻豆手机在线 | 久久精选视频 | 天天草天天干 | 欧美精品在线免费 | 亚州激情视频 | 国产精品va在线观看入 | 亚洲国产精品va在线看黑人动漫 | av中文字幕网 | 综合色亚洲 | 色婷婷精品大在线视频 | 91久久久久久国产精品 | 国产视频在线一区二区 | 在线观看视频免费大全 | 中文字幕免费高清在线 | 五月开心激情网 | 天天做夜夜做 | www.com在线观看 | 激情丁香5月 | 色橹橹欧美在线观看视频高清 | 精品免费 | av字幕在线 | 日韩大片在线观看 | 91av在线不卡 | 激情久久综合网 | 欧美激情精品久久 | 久久精品精品电影网 | 中文字幕乱视频 | 在线观看视频你懂的 | 亚洲成av人影片在线观看 | 日本成人中文字幕在线观看 | 亚州天堂 | 六月丁香在线视频 | 天天操天天干天天操天天干 | 人人爽人人爽人人片av | 久久97视频 | av在线播放网址 | 99视频这里有精品 | av电影在线观看完整版一区二区 | 免费一区在线 | 国产91免费在线观看 | 色综久久 | 91资源在线播放 | 97网| 欧美日韩一区二区三区在线观看视频 | 国内精品久久久久影院日本资源 | 久久久国产一区二区三区 | 免费观看国产精品视频 | 久久精品男人的天堂 | 久久久免费看片 | 九九视频免费观看视频精品 | 日日爽天天爽 | 久久精品美女视频网站 | 国产 在线观看 | 亚洲精品88欧美一区二区 | 国产成人黄色网址 | 奇米影视777影音先锋 | 一区二区激情视频 | 免费在线黄网 | 久久国产精品一区二区 | 久久99偷拍视频 | 欧美一级小视频 | 亚洲精品福利在线 | 精品国产一区二区三区久久久蜜月 | 激情欧美xxxx | 亚洲精品国产自产拍在线观看 | 91久久精品日日躁夜夜躁国产 | 国产成人精品一区二区在线观看 | 黄色软件在线看 | 8x成人免费视频 | 日本久久综合视频 | 国产69精品久久99的直播节目 | 精品国模一区二区三区 | 99热精品久久 | 日韩黄色在线电影 | 成人中文字幕av | 97热视频| 国产精品99久久久精品 | 欧美一级小视频 | 99精品福利| 国产精品久久久免费 | 在线99视频 | 免费毛片aaaaaa | 久久精品久久精品久久精品 | 国内小视频在线观看 | 一区二区三区在线观看免费 | 一本一本久久a久久精品综合妖精 | 国产剧情在线一区 | 久久人人97超碰国产公开结果 | 丁香花在线视频观看免费 | 国产精品第 | 久久久久这里只有精品 | 超碰公开97 | 天天色天天 | 96视频免费在线观看 | 亚洲精品国产精品国自产观看浪潮 | 999视频网| 国产资源在线观看 | 黄色毛片视频 | 欧美-第1页-屁屁影院 | 国产国产人免费人成免费视频 | 久久午夜网 | 欧美日韩国产xxx | 久久免费视频1 | 国产又粗又猛又黄又爽 | 日日草av | 国产精品女同一区二区三区久久夜 | 久久久视屏 | 久久精品官网 | 国产精品理论在线观看 | 不卡国产在线 | 欧美a在线看 | 成人免费观看网址 | 亚洲精品黄网站 | 国产精品s色 | 亚洲一本视频 | 国产在线精品福利 | 日日干av | 曰本免费av | 最新日韩视频在线观看 | 久久99国产精品二区护士 | 看v片| 婷婷丁香七月 | 一区二区电影在线观看 | 欧美一级在线观看视频 | 国内久久久久久 | 亚洲精选久久 | 欧美精品生活片 | 国产精品免费久久久久久久久久中文 | 日韩av专区 | 在线免费91 | 免费日韩 精品中文字幕视频在线 | 日韩高清免费在线 | 日韩高清av | 91成人蝌蚪 | 日韩黄色av网站 | 国产综合小视频 | 成人免费视频网址 | 黄色a一级视频 | 男女视频久久久 | 国产成人精品一区二区三区福利 | 久久免费视频播放 | 99精品免费观看 | 免费国产亚洲视频 | 99久久精品免费看 | 精品成人国产 | 极品嫩模被强到高潮呻吟91 | 国产你懂的在线 | 99久久综合狠狠综合久久 | 国产亲近乱来精品 | 99精品视频在线播放观看 | 91免费的视频在线播放 | 婷婷国产在线 | 96精品在线| 亚洲最大av网 | 韩日av一区二区 | 最新高清无码专区 | 午夜精品剧场 | 久久精品一二三区白丝高潮 | 高清av免费一区中文字幕 | 国内精品久久天天躁人人爽 | 一区二区精品在线视频 | 久久免费视频在线观看30 | 黄色一级免费 | 免费国产在线视频 | 久久a久久 | 天天操天天操一操 | 天天操天天操天天操天天操天天操天天操 | 99在线精品免费视频九九视 | 中国黄色一级大片 | 高潮毛片无遮挡高清免费 | 国产少妇在线观看 | 99久久99久久精品国产片果冰 | 久久精品精品 | 六月丁香综合 | 欧美va天堂va视频va在线 | 日韩免费电影一区二区三区 | 91亚洲网| 亚洲精品欧美成人 | 国产黄色一级大片 | 亚洲精品av中文字幕在线在线 | 久久久亚洲电影 | 天天色天天草天天射 | 亚洲精品国产精品国自产在线 | 日日爽日日操 | 国产高潮久久 | 亚洲高清激情 | 国产一区二区三区四区在线 | 日韩三级免费观看 | 亚洲精品五月天 | 国产日韩精品一区二区在线观看播放 | 国产免费午夜 | 久久久久五月天 | 免费中午字幕无吗 | 亚洲国产精品激情在线观看 | 久色婷婷 | 69国产精品视频免费观看 | 国产精品毛片完整版 | 丁香久久五月 | 一区二区激情 | 国内毛片毛片 | 精品视频久久 | av黄色免费在线观看 | 国产xxxx | 91在线一区 | 日b视频在线观看网址 | 国产精品自产拍在线观看桃花 | 在线观看一区视频 | 粉嫩一二三区 | 婷婷性综合 | 美女网站视频久久 | 久久人人爽人人片 | 久久国产亚洲精品 | 麻豆视频免费入口 | 国产精品 美女 | 热久精品| 国产精品一区二区三区在线播放 | 欧美性一级观看 | 国产在线视频不卡 | 偷拍福利视频一区二区三区 | av黄色在线播放 | avsex| 国产精品麻豆91 | 美女福利视频一区二区 | 成年人在线免费视频观看 | 99色视频在线 | 久久国产精品二国产精品中国洋人 | 99 精品 在线 | 国产a级精品 | 欧美性生交大片免网 | 国产精品欧美久久久久天天影视 | 免费在线观看一区 | 欧美美女视频在线观看 | 涩涩网站免费 | 久久国产免费看 | 91高清完整版在线观看 | 国产日韩欧美在线观看视频 | 在线视频亚洲 | 2024国产精品视频 | 精品视频免费播放 | 综合色婷婷| 国产尤物视频在线 | av大全在线播放 | 欧美日韩视频在线一区 | 超碰97人| 精品久久久久久久久久久久久久久久 | 91欧美视频网站 | 九九热免费精品视频 | 国产资源在线播放 | 国产特级毛片 | 一区三区在线欧 | 国产一区二区三区视频在线 | 黄色午夜 | 亚洲精品综合在线观看 | 黄色大片国产 | 中文字幕电影高清在线观看 | 一级片视频在线 | 激情av综合 | 久久久久亚洲精品国产 | 国产在线超碰 | 久久九九精品久久 | 国产高清视频在线播放一区 | 国偷自产视频一区二区久 | 国产精品视频999 | 97超碰成人在线 | 91福利试看 | 免费网站观看www在线观看 | 久久精品国产免费看久久精品 | 日本色小说视频 | 亚洲天天| 国产精品久久久久一区二区三区共 | 久久久久久久久久久影院 | 久久夜色精品国产欧美一区麻豆 | 成人久久视频 | 国产999在线 | 91在线麻豆 | 亚洲欧美少妇 | 91资源在线观看 | 国产精品久久久久久电影 | 国产手机在线播放 | 成人蜜桃视频 | 在线观看色网站 | 成人a免费视频 | 天天爱天天操天天爽 | 日韩精品久久久免费观看夜色 | 欧美在线观看视频免费 | 亚洲精品免费在线播放 | 亚洲精品网站在线 | 亚洲欧美色婷婷 | 欧美精品一区二区蜜臀亚洲 | 91精品入口| 久久久受www免费人成 | 婷婷色综| 久久久黄视频 | 色5月婷婷 | www视频在线观看 | 久草视频在线播放 | 91自拍成人 | 国产精品久久久av久久久 | 亚洲精品一区二区三区高潮 | 午夜少妇一区二区三区 | 中文字幕色婷婷在线视频 | 美女在线国产 | 欧美在线观看视频一区二区 | aaa免费毛片 | 视频一区二区三区视频 | 免费久久视频 | 国产成人精品久久久 | 亚洲精品国产精品国自产 | 97精品国产97久久久久久久久久久久 | 超级碰99 | 亚洲欧美日韩精品一区二区 | 久久久久婷 | 欧美一二区视频 | 91精彩视频在线观看 | 成人wwwxxx视频 | 天天干天天想 | 亚洲国产成人久久 | 麻豆91网站| 国产在线观看xxx | 久久人人爽| 国产精品午夜免费福利视频 | 国产成人61精品免费看片 | 亚洲 综合 专区 | 亚洲一区二区三区四区在线视频 | 国产精品视频永久免费播放 | 中文字幕黄色 | 91大片网站 | 日日噜噜噜噜夜夜爽亚洲精品 | 久久视频一区 | 91精品啪在线观看国产线免费 | 最近2019中文免费高清视频观看www99 | 国产小视频福利在线 | 亚洲精品美女视频 | 久久极品 | 91精品在线观看入口 | 久草资源在线观看 | 精品伦理一区二区三区 | www.操.com| a视频在线观看 | av超碰在线 | 在线免费观看黄色 | 99国产成+人+综合+亚洲 欧美 | 又黄又色又爽 | 日韩久久激情 | 久久伊人精品天天 | 天天色成人 | 久久精品站 | 精品 一区 在线 | 日韩理论在线观看 | 日韩中字在线 | 国产69精品久久app免费版 | 色哟哟国产精品 | 国产在线观看午夜 | 天天操狠狠操夜夜操 | 久久免费视频精品 | 国产精品嫩草在线 | 久久天天躁 | 亚洲老妇xxxxxx | 91最新在线观看 | 久久久久久久久黄色 | 欧美最爽乱淫视频播放 | 九色精品免费永久在线 | 中文字幕资源在线 | 麻豆一精品传二传媒短视频 | 久久精品男人的天堂 | 少妇资源站 | 一区二区不卡在线观看 | 天天插天天狠天天透 | 区一区二在线 | 永久av免费在线观看 | 天天干国产 | 亚洲男男gⅴgay双龙 | 国内精品视频在线 | 精品成人久久 | 在线观看日韩 | 日日骑| 亚洲涩涩一区 | 在线观看亚洲电影 | 在线视频 你懂得 | 黄色成人av网址 | 天天摸天天干天天操天天射 | 99久久国产免费免费 | 黄色小说视频网站 | 91爱爱免费观看 | 欧洲精品久久久久毛片完整版 | av福利在线免费观看 | 天堂av在线网址 | 91麻豆精品国产自产 | 亚洲一级黄色片 | 亚洲天天摸日日摸天天欢 | 五月婷婷在线视频观看 | 中文字幕丝袜美腿 | 麻豆91在线看| 亚洲天堂毛片 | 波多野结衣在线观看视频 | 亚洲欧洲精品久久 | 一本一道久久a久久精品蜜桃 | 精品国产一区二区三区久久久蜜月 | 日韩午夜在线播放 | 久久国产精品精品国产色婷婷 | 国产成人精品三级 | 丁香五月亚洲综合在线 | 欧洲一区二区在线观看 | 久久久亚洲精品 | 欧美a级在线播放 | 国产成人99av超碰超爽 | h视频在线看 | 国产精品一区二区三区四 | 国内视频1区 | 免费的国产精品 | 天天天天天天天天操 | 亚洲免费观看视频 | 亚洲成人av在线 | 天天天色 | 久久这里只有精品9 | 久久久久成人精品 | 亚洲精品乱码久久久久久按摩 | 亚洲一级理论片 | av丝袜在线 | 亚洲精品国产精品99久久 | 免费av大全| 99久久精品免费 | 成人av动漫在线观看 | 狠狠撸电影 | 亚洲理论片在线观看 | 国产 一区二区三区 在线 | 久久午夜网 | 日韩av资源在线观看 | 欧美日韩精品影院 | 亚洲精品高清视频 | 免费黄a| 国产精品久久久久久久久搜平片 | 日本免费久久高清视频 | 美女网站色 | 国产一级一级国产 | 在线成人中文字幕 | 亚洲视频综合在线 | 久久9视频 | 国产欧美日韩精品一区二区免费 | 蜜臀久久99精品久久久久久网站 | 国产精品99久久久精品免费观看 | 欧美一级久久久久 | 婷婷视频在线播放 | 人人爱人人做人人爽 | 美女黄网站视频免费 | 天天透天天插 | 中文字幕在线观看完整 | 国产在线更新 | 久久99久久99精品中文字幕 | 日本大尺码专区mv | 丁香色婷婷 | 五月香视频在线观看 | 婷婷免费在线视频 | 成人免费观看完整版电影 | 亚洲老妇xxxxxx | 精品字幕 | 久久免费视频在线观看30 | 国产资源精品 | 青青草国产在线 | 9999精品免费视频 | 国产不卡在线观看视频 | 国产精品永久免费在线 | 免费又黄又爽的视频 | 成人免费视频播放 | 国产精品系列在线播放 | 国产一级大片在线观看 | 91av在线播放视频 | 91视频在线网址 | 九九免费在线观看视频 | 黄色三级免费网址 | 国产精品情侣视频 | 日韩av高清在线观看 | 在线网址你懂得 | 黄色毛片视频 | 国产精品永久 | 中文字幕日韩精品有码视频 | 国产裸体视频bbbbb | 久久综合久久综合久久综合 | 国产123av| 夜夜骑天天操 | 久久久精品国产一区二区三区 | 免费福利片2019潦草影视午夜 | 久久综合色天天久久综合图片 | 亚洲免费av在线 | 国产精品一区二区三区四 | 欧美日本国产在线观看 | 成人小视频免费在线观看 | 日韩av高清在线观看 | www.夜夜干.com | 91综合久久一区二区 | 久久国产精品久久国产精品 | 97精品久久人人爽人人爽 | 久久一区二区三区日韩 | 最近中文字幕免费大全 | 免费看一及片 | 久久成人麻豆午夜电影 | 久久久久看片 | 日韩理论电影在线观看 | 日本一区二区三区免费观看 | 国产精品久久久久久久久搜平片 | 免费视频一区二区 | 久久高清国产 | 夜夜婷婷| 国产精品av久久久久久无 | 国产一区二区三区免费观看视频 | 麻豆视频在线免费看 | 久久免费视频一区 | 国产在线国偷精品产拍 | 久久久免费高清视频 | 久久在草 | 日本公妇在线观看高清 | 国产精品免费观看视频 | 国产综合香蕉五月婷在线 | 在线99视频 | 国产亚洲欧美精品久久久久久 | 日日久视频 | 天天射天天干 | 97超碰在线久草超碰在线观看 | 国内精品亚洲 | 在线免费观看成人 | 五月婷婷另类国产 | 国产精品免费观看国产网曝瓜 | 国产黄在线| 欧美99精品| 日韩v欧美v日本v亚洲v国产v | 亚洲国产午夜精品 | 一级黄色片在线免费观看 | 久久久久久国产精品久久 | 色天天中文 | 日日爱网址 | 69国产盗摄一区二区三区五区 | 欧美日韩高清一区二区 国产亚洲免费看 | 国产成人在线免费观看 | 99精品久久久久久久久久综合 | 国产精久久久久久妇女av | 色在线观看网站 | 在线观看mv的中文字幕网站 | 色就是色综合 | 久久免费毛片视频 | 一区二区日韩av | 精品国产理论 | 亚洲精品国产日韩 | 中文字幕乱码在线播放 | 免费a v视频 | 91精品久久久久久久久久入口 | 日韩精品专区在线影院重磅 | 亚洲黄色片在线 | 日本成人黄色片 | 国产精品大片免费观看 | 久久久久国产一区二区三区 | 午夜视频在线观看一区 | 波多野结衣视频在线 | 亚洲精品综合久久 | 色av网站| 欧美日韩视频观看 | 97精品国产97久久久久久春色 | 91中文字幕网 | 成人免费亚洲 | 天躁狠狠躁| 999日韩 | 亚洲欧美视频在线播放 | 黄网站app在线观看免费视频 | 深夜国产福利 | 色婷婷影视 | 黄色国产在线 | 成人av中文字幕在线观看 | 九九有精品 | 色综合久久久久综合99 | 国产精品成人品 | 国产精品免费久久久久久 | 日本精品va在线观看 | 国产精品成人一区二区三区吃奶 | 999精品 | 国产精品欧美久久久久无广告 | 日韩三级一区 | 精品女同一区二区三区在线观看 | 在线观看免费av网 | 五月天免费网站 | 国产视频在线播放 | 午夜日b视频 | 久草网首页 | 亚洲精品国偷拍自产在线观看 | 97免费视频在线播放 | 日韩一区二区在线免费观看 | 午夜精品久久久久久中宇69 | 欧美性色xo影院 | 成人影片免费 | 亚洲国产成人av网 | 国产原创av片 | 国产精品手机在线播放 | 97精品国产91久久久久久久 | 永久黄网站色视频免费观看w | 中文字幕传媒 | 美女啪啪图片 | 免费a视频 | 欧美在线视频一区二区三区 | 国产成人综合在线观看 | 激情图片区 | 五月婷婷一区 | 天天干夜夜 | 亚洲日日夜夜 | 精品一区二区影视 | 狠狠色丁香婷婷综合基地 | 国产一区欧美日韩 | 国产一区在线不卡 | 91看片淫黄大片在线播放 | 成人三级视频 | 亚洲成人999| 免费高清在线一区 | 天天草天天色 | 操老逼免费视频 | 亚洲天天做 | 久久久久女人精品毛片 | 成人播放器 | 亚洲成人av电影在线 | 黄污网站在线观看 | 久久综合欧美 | 精品在线观看一区二区 | 日韩欧美一区二区在线 | 久久99电影| 亚洲国产伊人 | 国语精品久久 | 色天天天 | 亚洲一区二区三区四区精品 | 四虎成人精品在永久免费 | 亚州国产精品久久久 | 久草免费在线 | 天堂视频中文在线 | 午夜婷婷网 | 在线一二区 | 国产免费又黄又爽 | 国产小视频在线观看免费 | 热久久视久久精品18亚洲精品 | 亚洲综合情 | 2019中文字幕第一页 | 天天操天天射天天操 | 色综合久久久久久久久五月 | 欧美精品三级 | 亚洲成人av在线播放 | 国产亚洲91 | 天天在线视频色 | 国产视频1区2区 | 免费无遮挡动漫网站 | 国产护士hd高朝护士1 | 欧美极品xxxxx | 亚洲精品在线观看av | 91av电影在线 | 精品国产91亚洲一区二区三区www | av天天干 | 亚洲成人一二三 | 日韩特级片 | 亚洲视频电影在线 | 免费日韩一区二区 | 在线视频亚洲 | www亚洲精品 | 日韩v在线 | 色综合婷婷久久 | 国产中文字幕在线免费观看 | 天天干天天射天天爽 | 99国产成+人+综合+亚洲 欧美 | 麻豆视传媒官网免费观看 | 99久久99久国产黄毛片 | 久久精品国产亚洲a | 永久免费的av电影 | 在线视频日韩一区 | 国产精品久久久久国产精品日日 | 国产精品videoxxxx | 国产在线精品国自产拍影院 | 亚洲一二视频 | 久久无码精品一区二区三区 | 日本成人免费在线观看 | 亚洲精品在线观看不卡 | av在线一| 日韩欧美一区二区三区视频 | 国产精品观看视频 | 天天爽网站 | 成人免费看视频 | 日韩视频一二三区 | 国产在线精品国自产拍影院 | 国产亚洲精品无 | 国产视频亚洲精品 | 91在线视频播放 | 久草视频在线播放 | 天天摸天天舔天天操 | 久久一区国产 | 成人日韩av| 91日韩精品视频 | 久久午夜免费视频 | 五月天婷婷在线观看视频 | 国产精品久久久久久影院 | 99久久久久久国产精品 | 国产精品久久在线 | 又污又黄的网站 | 免费亚洲精品 | 日韩一区视频在线 | 久久中文欧美 | 免费黄色特级片 | 高清美女视频 | 亚洲综合激情网 | 午夜影院一区 | 欧美日韩一区二区视频在线观看 | 香蕉视频在线免费 | 九九九九九精品 | 黄色福利网 | 中文字幕在线播放一区 | 国产在线欧美在线 | 九九在线高清精品视频 | 丁香婷婷自拍 | 亚洲色图av | 天天射狠狠干 | 日韩一级片网址 | 久久在线 | 亚洲天堂网站 | 日本久久久久久久久久 | 久久精品美女视频网站 | 亚洲精品久久久久中文字幕二区 | 日韩有码在线观看视频 | 九九热免费观看 | 毛片一区二区 | 久久久久免费网站 | 香蕉视频免费在线播放 | 国产精品一二 | 99精品在线 | 精品日本视频 | 日韩视频在线播放 | 天天操夜夜操国产精品 | 日日日操| 99欧美 | 日韩中文字幕在线看 | 久草国产在线观看 | 天天爽夜夜爽精品视频婷婷 | 久久久久久久久久久网站 | 99精品偷拍视频一区二区三区 | 亚洲a色 | 国产日本在线 | 亚洲欧美在线视频免费 | 国产成人精品一区二区三区 | 一区二区久久久久 | 啪啪激情网 | 久久精品99国产国产 | 91精彩视频 | 国产成人精品一二三区 | 日韩在线视频不卡 | 国产99免费 | 99爱视频 | 久久久久高清 | 亚洲精品美女在线 | 精品国产欧美一区二区三区不卡 | 国产免费黄视频在线观看 | 日韩高清免费电影 | 久久久久久久国产精品 | 五月婷婷综合在线观看 | 久久国产香蕉视频 | va视频在线观看 | 国产69久久 | 黄色毛片视频免费 | 蜜臀久久99精品久久久无需会员 | 成人黄色片在线播放 | 99视频导航 | 亚洲1区 在线| 精品久久1 | 91精品国自产在线观看欧美 | 91超国产| 西西人体4444www高清视频 | 日本三级久久 | 日韩三级在线观看 | av电影不卡在线 | 国产精品久久久 | 婷婷婷国产在线视频 | 国产精品18久久久久久久网站 | 色九色| 蜜桃av人人夜夜澡人人爽 | 二区三区在线视频 | 国产不卡在线视频 | 激情丁香婷婷 | 亚洲美女视频在线 | 国产精品一区二区无线 | 亚洲一级片免费观看 | 国产精品久久久久久久久久新婚 | 欧美日韩国产综合一区二区 | 久久久久久久久久久精 | 97超级碰碰 | 国产91在线观看 | 亚洲精品玖玖玖av在线看 | 五月婷婷毛片 | 国产在线一区二区 | 日韩免费av网址 | 国产成人综合在线观看 | 国产精品久久久久久久久久三级 | 久久国产午夜精品理论片最新版本 | 98精品国产自产在线观看 | 91精品久 | 天天干天天操天天做 | 99热九九这里只有精品10 | 久久成人精品视频 | 免费观看的黄色片 | 成年人视频在线免费播放 | 久久九九久久九九 | 天天搞天天干天天色 | 欧美一级电影 | 国产福利精品视频 | 国产色女人| 免费观看一区 | 国产成人精品在线播放 | 久久9999久久 | 日韩欧美成| 日韩欧美在线影院 | 黄色在线成人 | 日本最新高清不卡中文字幕 | 日日干夜夜操视频 | 最近久乱中文字幕 | 国产精品视频免费 | www.五月天婷婷 | 麻豆传媒视频在线免费观看 | 国产精品久久电影网 | 久久综合五月天婷婷伊人 | 精品在线视频一区 | 三级黄色大片在线观看 | 亚洲激情婷婷 | 亚洲黄色网络 | 亚洲 欧美 变态 国产 另类 | 久久精品国产免费看久久精品 | 婷婷免费在线视频 | 欧美日韩69| 久久激情视频 久久 | 91热视频在线观看 | 亚洲在线不卡 | 在线免费观看国产精品 | 天天综合天天综合 | 国产精品久久久久久一二三四五 | 国产破处在线视频 | 久久久久综合视频 | 夜夜操综合网 | 久久呀 | 五月婷婷伊人网 | 久久婷婷一区二区三区 | 日韩黄色一级电影 | 婷婷在线资源 | 久久精品国产美女 | 亚洲国产精品500在线观看 | 99久久99| 欧美高清成人 | 色视频国产直接看 | 国产亚洲精品美女久久 | 亚洲精品美女免费 | 久久深夜 | 亚洲精品成人网 | 黄色一区二区在线观看 | 成人欧美一区二区三区黑人麻豆 | 中文av资源站 | 欧美一区二区三区在线播放 | 日韩乱色精品一区二区 | 中文字幕在线看视频 | 一区免费视频 | 日韩一区二区三区观看 | 中文字幕国产一区二区 | 国产欧美中文字幕 | 91日本在线播放 | a'aaa级片在线观看 | 久久久久久久久久久久久久电影 | 欧美日韩精 | 久久久免费看视频 | 91精品视频一区 | 精品国产一区二区三区蜜臀 | 国产五月| 米奇狠狠狠888 | av888av.com| 国产高清精 | 五月天综合网站 | 日本女人的性生活视频 | 国产视频每日更新 | 一区二区三区四区五区在线 | 日批网站免费观看 | 免费精品视频 | 欧美激情综合五月色丁香 | 少妇做爰k8经典 | 久久99精品久久久久久 | 国产福利在线 | 久久不卡日韩美女 | 国产品久精国精产拍 | 久草在线资源网 | 综合天天网 | 精品美女久久久久久免费 | 成人午夜电影久久影院 | 中文字幕丝袜美腿 | 免费精品在线视频 | 亚洲美女视频在线观看 | 日韩视频中文字幕 | 欧美亚洲成人免费 | 亚洲高清视频在线观看免费 | 国产视频一区在线播放 | 肉色欧美久久久久久久免费看 | 国产真实在线 | 成人午夜精品 | 黄色91在线| 视频一区二区免费 | 夜色.com| 成人黄色在线电影 | 麻豆91精品视频 | 91精品免费在线观看 | 亚洲国产高清视频 | 国产123区在线观看 国产精品麻豆91 | 久久精品网| 欧美久久久久久久久久久 | 久久精品视频18 | 色播五月婷婷 | a在线观看免费视频 | 99热这里只有精品1 av中文字幕日韩 | 91网址在线| 午夜av免费在线观看 | 欧美一级欧美一级 | 五月天激情综合网 | 国产精品一区二区62 | 最新av网址在线观看 | 亚洲午夜久久久久久久久久久 | 欧美小视频在线观看 | 奇米7777狠狠狠琪琪视频 | 天天干天天干天天干 | 欧美成人精品在线 | 91av视频播放 | www黄com| 天堂av色婷婷一区二区三区 | 一级片视频在线 | 91精品国自产在线观看欧美 | av免费看在线 | 久久超级碰视频 | 18做爰免费视频网站 | 欧美精品三级在线观看 | 欧美亚洲久久 | 免费试看一区 | 成人精品亚洲 | 国产一级免费观看视频 | 黄色国产精品 | 黄色av网站在线免费观看 | 9免费视频 | 国产免费激情久久 | 成 人 黄 色 视频 免费观看 | 亚洲精品视频www | 在线观看av免费观看 |