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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

Flink 双流 Join 的3种操作示例

發布時間:2024/8/23 编程问答 59 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Flink 双流 Join 的3种操作示例 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在數據庫中的靜態表上做 OLAP 分析時,兩表 join 是非常常見的操作。同理,在流式處理作業中,有時也需要在兩條流上做 join 以獲得更豐富的信息。Flink DataStream API 為用戶提供了3個算子來實現雙流 join,分別是:

?

  • join()
  • coGroup()
  • intervalJoin()

?

本文舉例說明它們的使用方法,順便聊聊比較特殊的 interval join 的原理。

?

準備數據

?

從 Kafka 分別接入點擊流和訂單流,并轉化為 POJO。

?

DataStream<String> clickSourceStream = env.addSource(new FlinkKafkaConsumer011<>("ods_analytics_access_log",new SimpleStringSchema(),kafkaProps).setStartFromLatest()); DataStream<String> orderSourceStream = env.addSource(new FlinkKafkaConsumer011<>("ods_ms_order_done",new SimpleStringSchema(),kafkaProps).setStartFromLatest());DataStream<AnalyticsAccessLogRecord> clickRecordStream = clickSourceStream.map(message -> JSON.parseObject(message, AnalyticsAccessLogRecord.class)); DataStream<OrderDoneLogRecord> orderRecordStream = orderSourceStream.map(message -> JSON.parseObject(message, OrderDoneLogRecord.class));

?

join()

?

join() 算子提供的語義為"Window join",即按照指定字段和(滾動/滑動/會話)窗口進行 inner join,支持處理時間和事件時間兩種時間特征。以下示例以10秒滾動窗口,將兩個流通過商品 ID 關聯,取得訂單流中的售價相關字段。

?

clickRecordStream.join(orderRecordStream).where(record -> record.getMerchandiseId()).equalTo(record -> record.getMerchandiseId()).window(TumblingProcessingTimeWindows.of(Time.seconds(10))).apply(new JoinFunction<AnalyticsAccessLogRecord, OrderDoneLogRecord, String>() {@Overridepublic String join(AnalyticsAccessLogRecord accessRecord, OrderDoneLogRecord orderRecord) throws Exception {return StringUtils.join(Arrays.asList(accessRecord.getMerchandiseId(),orderRecord.getPrice(),orderRecord.getCouponMoney(),orderRecord.getRebateAmount()), '\t');}}).print().setParallelism(1);

?

簡單易用。

?

coGroup()

?

只有 inner join 肯定還不夠,如何實現 left/right outer join 呢?答案就是利用 coGroup() 算子。它的調用方式類似于 join() 算子,也需要開窗,但是 CoGroupFunction 比 JoinFunction 更加靈活,可以按照用戶指定的邏輯匹配左流和/或右流的數據并輸出。

?

以下的例子就實現了點擊流 left join 訂單流的功能,是很樸素的 nested loop join 思想(二重循環)。

?

clickRecordStream.coGroup(orderRecordStream).where(record -> record.getMerchandiseId()).equalTo(record -> record.getMerchandiseId()).window(TumblingProcessingTimeWindows.of(Time.seconds(10))).apply(new CoGroupFunction<AnalyticsAccessLogRecord, OrderDoneLogRecord, Tuple2<String, Long>>() {@Overridepublic void coGroup(Iterable<AnalyticsAccessLogRecord> accessRecords, Iterable<OrderDoneLogRecord> orderRecords, Collector<Tuple2<String, Long>> collector) throws Exception {for (AnalyticsAccessLogRecord accessRecord : accessRecords) {boolean isMatched = false;for (OrderDoneLogRecord orderRecord : orderRecords) {// 右流中有對應的記錄collector.collect(new Tuple2<>(accessRecord.getMerchandiseName(), orderRecord.getPrice()));isMatched = true;}if (!isMatched) {// 右流中沒有對應的記錄collector.collect(new Tuple2<>(accessRecord.getMerchandiseName(), null));}}}}).print().setParallelism(1);

?

intervalJoin()

?

join() 和 coGroup() 都是基于窗口做關聯的。但是在某些情況下,兩條流的數據步調未必一致。例如,訂單流的數據有可能在點擊流的購買動作發生之后很久才被寫入,如果用窗口來圈定,很容易 join 不上。所以 Flink 又提供了"Interval join"的語義,按照指定字段以及右流相對左流偏移的時間區間進行關聯,即:

?

right.timestamp ∈ [left.timestamp + lowerBound; left.timestamp + upperBound]

?

interval join 也是 inner join,雖然不需要開窗,但是需要用戶指定偏移區間的上下界,并且只支持事件時間。

?

示例代碼如下。注意在運行之前,需要分別在兩個流上應用 assignTimestampsAndWatermarks() 方法獲取事件時間戳和水印。

?

clickRecordStream.keyBy(record -> record.getMerchandiseId()).intervalJoin(orderRecordStream.keyBy(record -> record.getMerchandiseId())).between(Time.seconds(-30), Time.seconds(30)).process(new ProcessJoinFunction<AnalyticsAccessLogRecord, OrderDoneLogRecord, String>() {@Overridepublic void processElement(AnalyticsAccessLogRecord accessRecord, OrderDoneLogRecord orderRecord, Context context, Collector<String> collector) throws Exception {collector.collect(StringUtils.join(Arrays.asList(accessRecord.getMerchandiseId(),orderRecord.getPrice(),orderRecord.getCouponMoney(),orderRecord.getRebateAmount()), '\t'));}}).print().setParallelism(1);

?

由上可見,interval join 與 window join 不同,是兩個 KeyedStream 之上的操作,并且需要調用 between() 方法指定偏移區間的上下界。如果想令上下界是開區間,可以調用 upperBoundExclusive()/lowerBoundExclusive() 方法。

?

interval join 的實現原理

?

以下是 KeyedStream.process(ProcessJoinFunction) 方法調用的重載方法的邏輯。

?

public <OUT> SingleOutputStreamOperator<OUT> process(ProcessJoinFunction<IN1, IN2, OUT> processJoinFunction,TypeInformation<OUT> outputType) {Preconditions.checkNotNull(processJoinFunction);Preconditions.checkNotNull(outputType);final ProcessJoinFunction<IN1, IN2, OUT> cleanedUdf = left.getExecutionEnvironment().clean(processJoinFunction);final IntervalJoinOperator<KEY, IN1, IN2, OUT> operator =new IntervalJoinOperator<>(lowerBound,upperBound,lowerBoundInclusive,upperBoundInclusive,left.getType().createSerializer(left.getExecutionConfig()),right.getType().createSerializer(right.getExecutionConfig()),cleanedUdf);return left.connect(right).keyBy(keySelector1, keySelector2).transform("Interval Join", outputType, operator); }

?

可見是先對兩條流執行 connect() 和 keyBy() 操作,然后利用 IntervalJoinOperator 算子進行轉換。在 IntervalJoinOperator 中,會利用兩個 MapState 分別緩存左流和右流的數據。

?

private transient MapState<Long, List<BufferEntry<T1>>> leftBuffer; private transient MapState<Long, List<BufferEntry<T2>>> rightBuffer;@Override public void initializeState(StateInitializationContext context) throws Exception {super.initializeState(context);this.leftBuffer = context.getKeyedStateStore().getMapState(new MapStateDescriptor<>(LEFT_BUFFER,LongSerializer.INSTANCE,new ListSerializer<>(new BufferEntrySerializer<>(leftTypeSerializer))));this.rightBuffer = context.getKeyedStateStore().getMapState(new MapStateDescriptor<>(RIGHT_BUFFER,LongSerializer.INSTANCE,new ListSerializer<>(new BufferEntrySerializer<>(rightTypeSerializer)))); }

?

其中 Long 表示事件時間戳,List> 表示該時刻到來的數據記錄。當左流和右流有數據到達時,會分別調用 processElement1() 和 processElement2() 方法,它們都調用了 processElement() 方法,代碼如下。

?

@Override public void processElement1(StreamRecord<T1> record) throws Exception {processElement(record, leftBuffer, rightBuffer, lowerBound, upperBound, true); }@Override public void processElement2(StreamRecord<T2> record) throws Exception {processElement(record, rightBuffer, leftBuffer, -upperBound, -lowerBound, false); }@SuppressWarnings("unchecked") private <THIS, OTHER> void processElement(final StreamRecord<THIS> record,final MapState<Long, List<IntervalJoinOperator.BufferEntry<THIS>>> ourBuffer,final MapState<Long, List<IntervalJoinOperator.BufferEntry<OTHER>>> otherBuffer,final long relativeLowerBound,final long relativeUpperBound,final boolean isLeft) throws Exception {final THIS ourValue = record.getValue();final long ourTimestamp = record.getTimestamp();if (ourTimestamp == Long.MIN_VALUE) {throw new FlinkException("Long.MIN_VALUE timestamp: Elements used in " +"interval stream joins need to have timestamps meaningful timestamps.");}if (isLate(ourTimestamp)) {return;}addToBuffer(ourBuffer, ourValue, ourTimestamp);for (Map.Entry<Long, List<BufferEntry<OTHER>>> bucket: otherBuffer.entries()) {final long timestamp = bucket.getKey();if (timestamp < ourTimestamp + relativeLowerBound ||timestamp > ourTimestamp + relativeUpperBound) {continue;}for (BufferEntry<OTHER> entry: bucket.getValue()) {if (isLeft) {collect((T1) ourValue, (T2) entry.element, ourTimestamp, timestamp);} else {collect((T1) entry.element, (T2) ourValue, timestamp, ourTimestamp);}}}long cleanupTime = (relativeUpperBound > 0L) ? ourTimestamp + relativeUpperBound : ourTimestamp;if (isLeft) {internalTimerService.registerEventTimeTimer(CLEANUP_NAMESPACE_LEFT, cleanupTime);} else {internalTimerService.registerEventTimeTimer(CLEANUP_NAMESPACE_RIGHT, cleanupTime);} }

?

這段代碼的思路是:

?

  • 取得當前流 StreamRecord 的時間戳,調用 isLate() 方法判斷它是否是遲到數據(即時間戳小于當前水印值),如是則丟棄。
  • 調用 addToBuffer() 方法,將時間戳和數據一起插入當前流對應的 MapState。
  • 遍歷另外一個流的 MapState,如果數據滿足前述的時間區間條件,則調用 collect() 方法將該條數據投遞給用戶定義的 ProcessJoinFunction 進行處理。collect() 方法的代碼如下,注意結果對應的時間戳是左右流時間戳里較大的那個。
  • ?

    private?void?collect(T1?left,?T2?right,?long?leftTimestamp,?long?rightTimestamp)?throws?Exception?{final long resultTimestamp = Math.max(leftTimestamp, rightTimestamp);collector.setAbsoluteTimestamp(resultTimestamp);context.updateTimestamps(leftTimestamp, rightTimestamp, resultTimestamp);userFunction.processElement(left, right, context, collector); }

    ?

  • 調用 TimerService.registerEventTimeTimer() 注冊時間戳為 timestamp + relativeUpperBound 的定時器,該定時器負責在水印超過區間的上界時執行狀態的清理邏輯,防止數據堆積。注意左右流的定時器所屬的 namespace 是不同的,具體邏輯則位于 onEventTime() 方法中。
  • ?

    @Override public void onEventTime(InternalTimer<K, String> timer) throws Exception {long timerTimestamp = timer.getTimestamp();String namespace = timer.getNamespace();logger.trace("onEventTime @ {}", timerTimestamp);switch (namespace) {case CLEANUP_NAMESPACE_LEFT: {long timestamp = (upperBound <= 0L) ? timerTimestamp : timerTimestamp - upperBound;logger.trace("Removing from left buffer @ {}", timestamp);leftBuffer.remove(timestamp);break;}case CLEANUP_NAMESPACE_RIGHT: {long timestamp = (lowerBound <= 0L) ? timerTimestamp + lowerBound : timerTimestamp;logger.trace("Removing from right buffer @ {}", timestamp);rightBuffer.remove(timestamp);break;}default:throw new RuntimeException("Invalid namespace " + namespace);} }

    ?

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

    總結

    以上是生活随笔為你收集整理的Flink 双流 Join 的3种操作示例的全部內容,希望文章能夠幫你解決所遇到的問題。

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

    成人一区在线观看 | 日韩在线首页 | 伊人网av | 久久高清毛片 | 欧美日韩一级久久久久久免费看 | 操久 | 五月天久久久久久 | 国产一区二区高清视频 | 狠狠艹夜夜干 | 久久综合九九 | 久久99九九99精品 | 国产精品久久久久久久久久久久久 | 国产日韩欧美在线一区 | 狠狠色丁香婷综合久久 | 在线看av网址 | 日韩欧美在线一区二区 | 四虎国产永久在线精品 | 国产理论影院 | 国产精品美女久久久久久2018 | 在线看黄网站 | av一级片 | 91片网 | 国产精品久久影院 | 在线免费观看视频一区二区三区 | 国产精彩视频一区 | 国产精品高清一区二区三区 | 亚洲午夜精品一区二区三区电影院 | 国产99精品在线观看 | 日韩va在线观看 | 国产片网站 | 91精品国产一区二区三区 | 日本激情视频中文字幕 | 中文字幕在线有码 | 香蕉视频91 | 最新精品国产 | 在线观看亚洲国产精品 | 亚洲a在线观看 | 成人午夜精品福利免费 | 91精品视频在线免费观看 | 蜜臀久久99精品久久久无需会员 | 精品在线一区二区三区 | 视频在线观看日韩 | 六月天综合网 | 国产一区二区在线视频观看 | 999久久a精品合区久久久 | 国产免费激情久久 | 成人一区二区三区在线 | 国产一区91 | 国产理论一区二区三区 | 激情综合啪啪 | www.亚洲在线 | 国产免费资源 | 久久免费在线视频 | 成人欧美在线 | 亚洲精品五月天 | 久久久久久久毛片 | 日韩天天干 | 三级a毛片 | 中文字幕第 | 97在线免费观看 | 免费在线一区二区三区 | 最新久久免费视频 | 中文字幕色网站 | 国产美女黄网站免费 | 午夜视频福利 | 久久久精品欧美一区二区免费 | 亚洲伊人第一页 | 五月婷婷中文字幕 | 久久综合给合久久狠狠色 | 久久久久免费看 | 中文字幕一区二区三区乱码在线 | 蜜臀av网址 | 日韩二区三区在线 | 久久久精品视频网站 | 中文字幕日韩电影 | 色婷婷精品 | 九九视频精品免费 | 在线黄色免费av | 成人 亚洲 欧美 | 国产日韩av在线 | 在线观看中文字幕dvd播放 | 亚洲 欧美 精品 | 97av免费视频 | 中文日韩在线 | 在线视频观看你懂的 | 国产日韩在线一区 | 超碰免费在线公开 | 国产精品电影一区二区 | 日本在线观看一区 | 91视频大全 | 99精品国产在热久久 | 国产精品成人一区二区三区吃奶 | 黄av免费 | 99精品久久久久久久久久综合 | 999毛片| 在线久草视频 | 麻豆视频91 | 激情在线五月天 | 国产精品毛片久久久久久久 | 永久免费毛片在线观看 | 欧美日韩中文字幕在线视频 | 热久久免费视频精品 | 亚洲精品色视频 | 国产精品女同一区二区三区久久夜 | 密桃av在线 | 日本中文字幕在线观看 | 日韩视频一区二区在线观看 | 福利网在线 | 亚洲最大在线视频 | 久久99网| 一区二区在线电影 | 91在线免费观看国产 | 亚洲码国产日韩欧美高潮在线播放 | 91精品办公室少妇高潮对白 | 久久久亚洲国产精品麻豆综合天堂 | 婷婷色五 | 久久久福利影院 | 日韩精品中文字幕在线观看 | 天天玩夜夜操 | 97视频在线观看播放 | 久久精品黄色 | 午夜电影一区 | a色网站| 国产色资源 | 亚洲综合激情五月 | 久草在线免费资源站 | 亚洲精品久久久久久中文传媒 | 狠狠干网址 | 激情久久影院 | 玖玖在线看 | 97精品国产97久久久久久 | 成人亚洲精品久久久久 | 狠狠艹夜夜干 | 久久免费黄色 | 天天干夜夜夜操天 | 日韩欧美在线一区 | 久久狠狠婷婷 | 欧美精品国产综合久久 | 亚洲午夜精品在线观看 | 在线免费观看黄色 | 国产视频2区 | 日韩精品视频免费 | 激情综合网婷婷 | 正在播放 久久 | 色香蕉在线 | 中文字幕在线免费97 | 久久久久免费看 | 五月婷婷丁香色 | 成人免费在线播放视频 | 成人一区二区三区在线观看 | 久产久精国产品 | 99电影456麻豆| 4438全国亚洲精品观看视频 | 国产精品免费久久久 | 久久精品一区 | 欧美一区二区三区在线观看 | 中文字幕欧美日韩va免费视频 | 久久久久久欧美二区电影网 | 国产精品一区二区你懂的 | 手机在线中文字幕 | 中文字幕乱在线伦视频中文字幕乱码在线 | 97超碰色| 香蕉久草在线 | 国产精品永久免费在线 | 国产日产在线观看 | 91免费高清 | 欧洲亚洲国产视频 | 欧美人人爱 | 91在线视频免费播放 | 中文字幕精品一区二区精品 | 精品久久免费看 | 国产精品麻豆果冻传媒在线播放 | 国产中文字幕亚洲 | 激情久久久 | 波多在线视频 | 欧美日韩视频网站 | 人人干人人爽 | 超碰免费成人 | 最近日本字幕mv免费观看在线 | 国产亚洲婷婷免费 | 一级淫片a | 国产一区二区三区免费在线 | www四虎影院 | 亚洲综合爱 | 在线免费av网 | 亚洲精品成人 | 丁香激情综合久久伊人久久 | 天天操天操 | 五月婷婷综合色拍 | 色福利网站 | 天天射天天添 | 69绿帽绿奴3pvideos | 免费黄色一区 | 97久久精品午夜一区二区 | 99在线精品免费视频九九视 | 免费久久视频 | 一区二区精 | 日日夜夜天天 | 最新色站 | 国内精品久久久久久久久久久 | 久久久国产一区二区三区四区小说 | 日韩高清在线观看 | 中文字幕精品一区二区精品 | 依人成人综合网 | 欧美日韩在线视频一区 | 日韩欧美精品在线视频 | 日韩av中文字幕在线免费观看 | 三级黄色在线观看 | 五月色丁香 | 日韩精品一区二区在线视频 | 日本久久99 | 免费看特级毛片 | 国产伦理久久精品久久久久_ | 精品视频免费在线 | 色综合色综合久久综合频道88 | 午夜久久精品 | 国产精品久久久久av福利动漫 | 黄色视屏在线免费观看 | 色www. | 色综合天天视频在线观看 | 国产免码va在线观看免费 | www九九热 | 在线久草视频 | www久久com| 日本视频久久久 | 99热高清| 91精品国自产在线观看 | 在线一区二区三区 | 成人黄色中文字幕 | 久久在线免费观看 | 中文字幕乱码亚洲精品一区 | 玖玖在线看 | 久久精品国产亚洲 | 日韩理论电影在线 | 狠狠综合 | 国产尤物在线 | 欧美日韩视频观看 | 特级西西444www大精品视频免费看 | 精品中文字幕在线 | 天海翼一区二区三区免费 | 麻豆视频入口 | 欧美日韩在线精品一区二区 | 国产精品一区二区久久久 | 五月婷婷深开心 | 精品国产免费av | 伊人五月在线 | www.久久爱.cn | 国产精品视频区 | 中文字幕高清有码 | 色av男人的天堂免费在线 | 亚洲精品88欧美一区二区 | 精品久久国产精品 | 91精品婷婷国产综合久久蝌蚪 | 国产精品欧美久久久久三级 | 日韩夜夜爽 | 国产乱对白刺激视频不卡 | 国产精品一区二区吃奶在线观看 | 亚洲视频 视频在线 | 久久综合成人 | 黄色一级免费电影 | 91久久久久久国产精品 | 国产在线探花 | 热99在线视频| 国产又粗又猛又爽又黄的视频免费 | 看片网站黄 | 国产精品久久久毛片 | 国产成人精品亚洲精品 | 欧美在线视频日韩 | 国产精品久久久久9999吃药 | 99在线视频网站 | 欧美专区国产专区 | 亚洲日本国产精品 | 亚洲少妇影院 | 国产精品久久久久久麻豆一区 | 色资源在线 | 草久在线观看 | 涩涩爱夜夜爱 | 国产热re99久久6国产精品 | 最近中文字幕在线 | 噜噜色官网 | 国产精品久久视频 | 天天视频色版 | 欧美十八| 成人国产精品久久久春色 | 亚洲精品免费在线播放 | 黄网站色视频免费观看 | 精品国产伦一区二区三区免费 | 亚洲欧美观看 | 全久久久久久久久久久电影 | 国产91免费在线观看 | 午夜久久 | 欧美一级电影免费观看 | 色久五月| 久久婷五月 | 在线观看日韩一区 | 狠狠色丁香久久婷婷综合五月 | 黄色毛片一级 | 91完整版在线观看 | 色综合久久久久综合 | avove黑丝| 国产精品99久久久久久久久久久久 | 国产黄色免费看 | 久操操 | 久久综合九色综合久久久精品综合 | 国产专区免费 | 久久a视频| 精品国产一区二区三区久久久蜜臀 | 国产精品美女www爽爽爽视频 | 久久久精品99| 亚洲电影久久 | 久操视频在线观看 | h视频在线看| 91精品成人久久 | 亚洲六月丁香色婷婷综合久久 | 亚洲国产精品va在线看黑人 | 日韩经典一区二区三区 | 国产成人l区 | 高清国产午夜精品久久久久久 | 国产精品白丝av | 夜夜操狠狠干 | 免费视频黄 | www.神马久久 | 日韩在线视频免费播放 | 一区二区三区高清在线观看 | 一本—道久久a久久精品蜜桃 | 中文字幕在线观看2018 | 一本—道久久a久久精品蜜桃 | www.久久久.com| 99视频国产精品 | 九九热视频在线播放 | 一区二区视频播放 | 国产一级片一区二区三区 | 97超碰国产在线 | 免费看一级特黄a大片 | 91大神电影| 中文字幕日韩精品有码视频 | 日韩av黄 | 国产视频1区2区 | 97视频免费| 婷婷在线网 | 精品女同一区二区三区在线观看 | 99国产精品视频免费观看一公开 | 成年美女黄网站色大片免费看 | 麻豆91精品 | 久草在线视频网站 | www.av中文字幕.com | 久久综合福利 | 欧美在线视频精品 | 99热官网 | 在线导航av| 婷婷色狠狠 | 成人一级视频在线观看 | 欧美福利片在线观看 | 久久精品国产精品亚洲 | 久久99亚洲精品久久 | 日韩午夜在线观看 | 久久精品91久久久久久再现 | 国产91影院 | 亚洲专区路线二 | 成人小视频在线播放 | 99这里只有精品99 | 久久久国产一区二区三区四区小说 | 手机av电影在线观看 | 999久久精品 | 亚洲天堂网在线视频观看 | 一区二区三区在线观看中文字幕 | 不卡av电影在线观看 | av网站播放| 欧美亚洲精品在线观看 | 91黄色小网站 | 久久激情视频免费观看 | 九九在线免费视频 | 国产精品白丝jk白祙 | 夜夜骑天天操 | 久久精品久久99 | 精品国产乱码久久久久久天美 | 久久久久久综合 | 成人午夜剧场在线观看 | 在线国产专区 | 国产成人福利片 | 亚洲精品乱码久久久久 | 亚洲狠狠婷婷综合久久久 | 91精品国产麻豆国产自产影视 | 欧美一级专区免费大片 | 99久高清在线观看视频99精品热在线观看视频 | 九九九国产 | 国产无吗一区二区三区在线欢 | 欧美日韩精品在线观看 | 日韩精品一区二区三区三炮视频 | 免费男女羞羞的视频网站中文字幕 | 久久午夜电影网 | 成人av资源 | 中文字幕激情 | 不卡av免费在线观看 | 成人免费在线观看入口 | 婷婷激情欧美 | 日韩影视在线观看 | aaa黄色毛片 | 亚洲成人影音 | 欧美精品少妇xxxxx喷水 | 亚洲美女视频网 | 在线观看完整版免费 | 999色视频 | 麻豆国产露脸在线观看 | 三级黄色网络 | 国产69久久久 | 伊人久久一区 | 日本在线观看中文字幕无线观看 | 欧美色精品天天在线观看视频 | 激情偷乱人伦小说视频在线观看 | 色一级片| 婷婷av电影 | 1区2区视频| 国产色在线视频 | 日本aaaa级毛片在线看 | 在线播放视频一区 | 精品国产综合区久久久久久 | h文在线观看免费 | 中文字幕在线精品 | 最近最新中文字幕视频 | 久久一二三四 | 人人看97 | 久久亚洲综合国产精品99麻豆的功能介绍 | 国产精品午夜av | 最近2019中文免费高清视频观看www99 | 亚洲码国产日韩欧美高潮在线播放 | 波多野结衣一区二区 | 亚洲女人天堂成人av在线 | 日韩免费电影网 | 久久人人爽人人爽人人片 | 欧美国产精品久久久久久免费 | 久久超碰99 | 亚洲成人欧美 | 国产人在线成免费视频 | 亚洲资源视频 | 一本一道波多野毛片中文在线 | 国产99一区视频免费 | 欧美在线观看小视频 | 成人一区在线观看 | 色综合中文综合网 | 久久精品站 | 日韩精品最新在线观看 | 久热久草在线 | a视频在线观看 | 久久成人午夜 | 日本在线h | 五月婷综合网 | 91视频91自拍| 成人在线免费看 | 亚洲综合激情网 | 亚洲欧美日本国产 | 97视频一区| 日韩中文字幕在线不卡 | 99热日本| 亚洲国产97在线精品一区 | 国产精品成人国产乱一区 | 免费看黄在线网站 | 免费av免费观看 | 日韩高清一 | 免费视频你懂得 | 在线激情影院一区 | 国产一级视频在线观看 | 九九九在线观看视频 | 国产男女无遮挡猛进猛出在线观看 | 国产午夜精品福利视频 | 欧美黑人性猛交 | 西西人体4444www高清视频 | 国产视频精选在线 | 久久免费黄色网址 | 国产在线黄色 | 欧美一区二视频在线免费观看 | av导航福利 | 欧美疯狂性受xxxxx另类 | 91成人精品国产刺激国语对白 | 伊人射| 五月婷婷中文网 | 成人在线观看免费视频 | 久久午夜国产精品 | 免费福利视频导航 | 又黄又爽又湿又无遮挡的在线视频 | 欧美激情综合五月色丁香小说 | 一区二区三区三区在线 | 开心激情五月网 | 午夜精品福利一区二区三区蜜桃 | 99免费在线视频观看 | 香蕉免费| 在线免费三级 | 国产一区二区中文字幕 | 亚洲性少妇性猛交wwww乱大交 | 人人擦| 日韩高清一二区 | av丁香花| 一区在线观看 | 日韩精品一区二区三区免费视频观看 | 精品福利在线 | 国产在线播放一区二区三区 | 亚洲免费高清视频 | 伊人久操 | h网站免费在线观看 | a一片一级| 日韩欧美电影在线 | 国产精品黄色av | 日韩精品一区在线播放 | 亚洲免费视频观看 | 国产精品久久中文字幕 | 在线a人v观看视频 | 中文在线字幕免 | 色av男人的天堂免费在线 | 美女视频又黄又免费 | 中文字幕视频三区 | 69av久久| 免费美女久久99 | 夜夜视频资源 | 黄在线免费观看 | 四虎免费在线观看视频 | 国产精品v a免费视频 | 天天干天天干天天射 | 深夜免费福利在线 | 欧美精品九九99久久 | 成人h视频在线 | 日韩乱码在线 | 狠狠狠色 | 亚洲久草在线 | 在线观看视频色 | 国产精品免费一区二区三区 | 99亚洲视频 | 精品在线一区二区三区 | 中文字幕亚洲欧美日韩2019 | 日韩高清免费电影 | 久久久久国产精品午夜一区 | 成年人在线看片 | 91爱看片 | 中文字幕 国产视频 | 亚洲闷骚少妇在线观看网站 | 久操97| 久久精品99国产国产精 | 草 免费视频 | 欧美日韩高清不卡 | 日本爱爱免费视频 | 精品国产一区二区三区在线 | 精品国内自产拍在线观看视频 | 麻豆国产露脸在线观看 | 亚洲国产丝袜在线观看 | 日本一区二区三区免费看 | 免费在线观看国产精品 | 色综合天天综合网国产成人网 | 精品美女在线视频 | 婷婷国产在线 | 国产第一页福利影院 | 黄色亚洲 | 毛片网在线播放 | 色婷婷中文 | 中文字幕麻豆 | 日韩精品免费一区二区三区 | 九九精品在线观看 | 亚洲资源视频 | 亚洲 欧美变态 另类 综合 | 黄色小说视频在线 | 一区二区三区国产精品 | 天天天在线综合网 | 美女免费视频网站 | 久久草 | av免费电影在线 | 手机看片99 | 激情网站网址 | 91精品视频观看 | 久久久91精品国产一区二区精品 | 成人在线观看资源 | 久久99国产精品自在自在app | 久久精品毛片基地 | 99国产视频 | 蜜臀久久99精品久久久久久网站 | 2018亚洲男人天堂 | 五月综合色婷婷 | 97av影院 | 久99视频 | 日韩精品一区二区三区免费观看视频 | 毛片网站在线观看 | 91欧美日韩国产 | 亚洲精品在线免费 | 日日碰狠狠添天天爽超碰97久久 | av在线免费播放网站 | 99久久精品视频免费 | 午夜黄色一级片 | 天天躁日日躁狠狠 | 精品嫩模福利一区二区蜜臀 | 国产精品久久99综合免费观看尤物 | 久久99深爱久久99精品 | 日韩av在线一区二区 | 狠狠色丁香婷婷综合最新地址 | 中文字幕在线资源 | 九九九在线观看 | 午夜aaaa| 国产亚洲永久域名 | 国产福利91精品一区二区三区 | 最新av中文字幕 | 黄色在线观看网站 | 91av国产视频 | 国产二区免费视频 | 国产在线欧美 | 国产日产av| 日韩乱理| 人人狠狠综合久久亚洲 | 国产理论片在线观看 | 黄色在线观看免费网站 | 日韩久久片 | 欧美日韩一区久久 | 探花国产在线 | 免费日韩一级片 | 亚洲干视频在线观看 | 国产麻豆精品久久 | 黄网站色 | 波多野结衣视频一区二区三区 | 久久艹国产 | 日韩在线观看你懂得 | 91香蕉久久 | 久草 | 在线超碰av| 黄色a级片在线观看 | 中文字幕在线视频网站 | 在线看一区二区 | 欧美少妇xx| 黄色片软件网站 | 精品国产观看 | 91在线免费观看国产 | 日韩av偷拍 | 一区二区在线不卡 | 免费美女久久99 | 久久久久国产精品免费免费搜索 | 欧日韩在线视频 | 国产精品中文字幕在线观看 | 精品国产日本 | av字幕在线 | 日韩高清一区二区 | 国产免费xvideos视频入口 | 深爱激情开心 | www.精选视频.com| 99热99热| 91麻豆精品国产自产在线 | 国产精品美女www爽爽爽视频 | 91av片| 精品视频免费久久久看 | 天堂av在线网 | 99久久99久久精品国产片果冰 | 九九在线视频免费观看 | av中文字幕av | 久久视频在线观看免费 | av一级一片 | 九九热精| 日韩久久视频 | 国产精品一码二码三码在线 | 在线看的毛片 | 99精品美女| 成人h在线观看 | 麻豆视频在线播放 | 色婷av| 97精品国产97久久久久久 | 亚洲观看黄色网 | 免费的黄色的网站 | 亚洲欧美婷婷六月色综合 | 久久久久成人精品 | 中文字幕一区二区三区久久 | 亚洲精品在线电影 | 久久精品中文视频 | 国产破处精品 | 日韩av片无码一区二区不卡电影 | 青青河边草免费视频 | 欧美黄色成人 | 久久成人亚洲欧美电影 | 国产日韩欧美在线一区 | 97在线看片| 欧美色综合天天久久综合精品 | 国产精品18久久久久久久网站 | 日日干av | 亚洲成a人片在线观看中文 中文字幕在线视频第一页 狠狠色丁香婷婷综合 | 国产精品福利在线播放 | 伊人超碰在线 | www.国产在线观看 | 亚洲国产精品免费 | 九九九九精品九九九九 | 97成人在线免费视频 | 欧美少妇xxx | 免费在线看成人av | 日本中文字幕高清 | 欧美色精品天天在线观看视频 | 奇人奇案qvod| 五月丁婷婷 | 日韩电影中文字幕在线 | 在线观看免费成人av | 亚洲成人精品在线 | 伊人射 | 欧美小视频在线 | 视频二区在线视频 | 国产老太婆免费交性大片 | 在线观看中文字幕一区二区 | 91精彩在线视频 | 日本三级不卡 | 亚洲精品国产精品乱码在线观看 | 伊人首页| 二区三区在线 | 日韩在线视频看看 | 亚洲综合成人在线 | 日韩精品一区二区三区外面 | 婷婷丁香av| 首页av在线| 91看片在线看片 | 国产综合香蕉五月婷在线 | 九九三级毛片 | 国产久视频| 久艹在线免费观看 | 亚洲国产精品va在线 | 天天爽夜夜爽精品视频婷婷 | 综合网天天射 | 国产视频黄 | 91久久奴性调教 | 久久精品1区 | 男女视频国产 | 国产午夜精品一区二区三区四区 | 一区二区激情 | 国产黄色在线观看 | 亚洲免费av电影 | 国产区精品 | 国产亚洲日 | 欧洲色综合 | 国产亚洲精品久久久久久 | 国产福利在线不卡 | 精品国产一区二区三区蜜臀 | 超碰97在线看 | 免费观看成人 | 午夜久操 | 久草网站在线观看 | 久久免费精品一区二区三区 | 久久夜色网 | 亚洲最快最全在线视频 | 亚洲理论在线观看 | 国产精品久久 | 一级片免费在线 | 尤物97国产精品久久精品国产 | 丁香六月激情 | 欧美另类高清 videos | 色欧美88888久久久久久影院 | 久久精品国产第一区二区三区 | 免费成人黄色 | 99视频偷窥在线精品国自产拍 | 日韩激情视频 | 日韩一区二区三区在线看 | 国产精品自在欧美一区 | 色视频一区 | 国产在线a视频 | 欧美性另类 | 国产精品男女啪啪 | 婷婷伊人综合亚洲综合网 | av夜夜操 | 日韩视频精品在线 | 精品国产1区 | 91免费网址| 精品欧美小视频在线观看 | 久久在草 | 精品视频9999 | 91麻豆产精品久久久久久 | 亚洲成人二区 | 成年人免费在线观看网站 | 五月婷婷视频在线 | 17婷婷久久www | 91成人精品一区在线播放69 | 91成人在线观看高潮 | 丁香婷婷激情国产高清秒播 | 永久精品视频 | 蜜臀av免费一区二区三区 | 99一级片 | 亚洲精品国久久99热 | 玖玖视频在线 | 91九色视频国产 | 久久黄色小说 | 97在线观看免费高清完整版在线观看 | 午夜精品一二三区 | 久久久久久久久亚洲精品 | 69亚洲精品 | 公与妇乱理三级xxx 在线观看视频在线观看 | 国产黄色资源 | 91手机视频在线 | 亚洲精品美女久久 | 日本高清中文字幕有码在线 | 手机在线小视频 | 日韩簧片在线观看 | 黄色h在线观看 | 毛片网站免费在线观看 | 国产91粉嫩白浆在线观看 | 国产视频 亚洲视频 | 国产一级精品在线观看 | 国产一区在线播放 | 九色免费视频 | 91香蕉视频 mp4 | 不卡的av在线播放 | 日韩欧美视频一区二区三区 | 亚洲春色成人 | 夜色资源站国产www在线视频 | 国产区免费 | 久久婷婷综合激情 | 欧美日韩综合在线观看 | 日韩小视频| 久久亚洲私人国产精品 | 91精品国产自产在线观看永久 | 99精品视频中文字幕 | 三级免费黄色 | 人人爽人人爱 | 亚洲成人国产 | 国产一区二区不卡视频 | 一区二区三区手机在线观看 | 日本高清中文字幕有码在线 | 99在线精品免费视频九九视 | 免费观看午夜视频 | 97在线免费观看 | 日本视频不卡 | 国内成人精品视频 | 亚洲一区二区三区在线看 | 97偷拍视频| 久久久久久国产精品免费 | 久久av免费观看 | 综合色中文 | 免费黄色激情视频 | 在线亚洲精品 | 成人黄色国产 | 91av手机在线观看 | 五月天综合网 | 一区二区视频网站 | 一区二区三区免费播放 | 久久久久亚洲精品成人网小说 | 五月婷婷毛片 | 91日韩在线视频 | 在线免费试看 | 久久精品免费看 | 99精品久久只有精品 | 91亚色视频在线观看 | 日韩极品视频在线观看 | 一区二区三区国产欧美 | 91久色蝌蚪 | 久久er99热精品一区二区三区 | 亚洲一级电影视频 | 国产日韩精品一区二区三区在线 | 一本一本久久a久久精品综合妖精 | 91精品久久久久久 | 久久久久久久久久久国产精品 | 97精品国产97久久久久久久久久久久 | 色婷婷婷 | 久久黄色免费 | 久久久久久久久久网 | 波多野结衣网址 | 免费观看完整版无人区 | 久久精品一 | av中文字幕在线观看网站 | 国产亚洲欧美在线视频 | 国产精品a成v人在线播放 | 在线天堂中文www视软件 | 国产 亚洲 欧美 在线 | 国产视频一区二区在线观看 | 亚洲三级黄色 | 韩国在线视频一区 | 91视频在线观看大全 | 精品一区二三区 | 国产黄色理论片 | 麻豆国产视频 | 久久人人爽人人爽人人 | 久久不射电影网 | 国产一区在线精品 | 麻豆国产精品va在线观看不卡 | 91精品国产91热久久久做人人 | 亚洲综合成人婷婷小说 | 久久精品亚洲一区二区三区观看模式 | 久久精品免费观看 | 在线观看免费高清视频大全追剧 | 97人人澡人人爽人人模亚洲 | 国产少妇在线观看 | 97狠狠操 | 天天天天爱天天躁 | 韩日在线一区 | 精品国自产在线观看 | 天天干夜夜想 | www欧美xxxx| 国产综合在线观看视频 | 最近中文字幕国语免费高清6 | 日韩黄色在线观看 | 久久伊人操 | 在线中文字母电影观看 | 久久伊人国产精品 | 欧美久久久久久久 | 亚洲一级电影 | 97超碰在线免费 | 中文字幕高清免费日韩视频在线 | 成人v| 福利视频在线看 | 五月开心激情 | 国产一区91| 中文字幕精 | 人人澡超碰碰97碰碰碰软件 | 久久国产精品99国产精 | 午夜三级在线 | 久久久久国产a免费观看rela | 在线观看精品视频 | 欧美日韩视频在线一区 | 在线 成人 | 2023av| 免费视频一二三区 | 久久综合久色欧美综合狠狠 | 性色大片在线观看 | 国产精品乱码久久久久久1区2区 | 91日韩在线视频 | 欧美日韩伦理一区 | 久久久久免费看 | 久久黄色免费 | 黄av资源| 久久精品理论 | 国产精品成人自产拍在线观看 | 狠狠狠狠狠狠狠干 | 免费a现在观看 | 国产免费三级在线观看 | 九九九电影免费看 | 国产黄色免费在线观看 | 国产青青青 | 2021av在线 | 91高清一区| 久久久亚洲精华液 | 六月婷操 | 亚洲视频综合在线 | 99精品偷拍视频一区二区三区 | 国产综合福利在线 | 亚洲视频一| 91视频国产高清 | 亚洲观看黄色网 | 成人黄色在线电影 | 91九色最新 | 欧美成人中文字幕 | 日韩免费小视频 | 97超碰在线资源 | av中文天堂 | free,性欧美| 国产精品精品久久久 | 久久国产99| 韩国av免费观看 | 国产福利一区在线观看 | 国产高清免费在线观看 | 欧美国产日韩一区 | 午夜免费福利视频 | 中文不卡视频 | 久久免费一级片 | 大胆欧美gogo免费视频一二区 | 九九久久久久99精品 | 国内免费的中文字幕 | 久草网在线 | 九九热re| 91精品啪在线观看国产 | 亚洲黄色成人 | 久 久久影院 | 国产精品福利无圣光在线一区 | 日韩h在线观看 | 99这里只有久久精品视频 | 玖玖视频网| 久久99国产视频 | 久久久久久久久久毛片 | 日韩在线观看 | 五月婷婷激情六月 | 美腿丝袜一区二区三区 | 婷婷丁香激情五月 | 欧美伦理一区二区三区 | www.一区二区三区 | 日韩大片免费在线观看 | 久久伦理影院 | 在线视频精品播放 | 在线看成人av | 日本精品中文字幕在线观看 | 久草在线视频在线 | 久久久久国产一区二区 | 久久视了 | 精品国产一区二区三区四区在线观看 | 亚洲日日夜夜 | 国产成在线观看免费视频 | 91黄在线看 | 国产视频一二区 | 精品一二三区视频 | 国产精品久久久久久久久久99 | 成年人免费看片网站 | 日韩欧美国产成人 | 五月天久久久 | 99人久久精品视频最新地址 | 精品一二区| 午夜影院一级 | 国产午夜视频在线观看 | 精品一区在线看 | 国产免费二区 | 97福利视频 | 啪啪免费试看 | 91免费观看视频网站 | 日本超碰在线 | 亚洲一二三区精品 | 91少妇精拍在线播放 | 天天爽人人爽 | 成人动漫视频在线 | 日韩精品综合在线 |