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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

Flink学习(十四) Flink 窗口、时间和水位线

發布時間:2023/12/19 综合教程 62 生活家
生活随笔 收集整理的這篇文章主要介紹了 Flink学习(十四) Flink 窗口、时间和水位线 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Flink 框架中支持事件時間、攝入時間和處理時間三種。而當我們在流式計算環境中數據從 Source 產生,再到轉換和輸出,這個過程由于網絡和反壓的原因會導致消息亂序。因此,需要有一個機制來解決這個問題,這個特別的機制就是“水位線”。

Flink 的窗口和時間
根據窗口數據劃分的不同,目前 Flink 支持如下 3 種:

滾動窗口,窗口數據有固定的大小,窗口中的數據不會疊加;

滑動窗口,窗口數據有固定的大小,并且有生成間隔;

會話窗口,窗口數據沒有固定的大小,根據用戶傳入的參數進行劃分,窗口數據無疊加。

Flink 中的時間分為三種:

事件時間(Event Time),即事件實際發生的時間;
攝入時間(Ingestion Time),事件進入流處理框架的時間;
處理時間(Processing Time),事件被處理的時間。
下面的圖詳細說明了這三種時間的區別和聯系:

事件時間(Event Time

事件時間(Event Time)指的是數據產生的時間,這個時間一般由數據生產方自身攜帶,比如 Kafka 消息,每個生成的消息中自帶一個時間戳代表每條數據的產生時間。Event Time 從消息的產生就誕生了,不會改變,也是我們使用最頻繁的時間。

利用 Event Time 需要指定如何生成事件時間的“水印”,并且一般和窗口配合使用,具體會在下面的“水印”內容中詳細講解。

我們可以在代碼中指定 Flink 系統使用的時間類型為 EventTime:

final StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment();
//設置時間屬性為 EventTime
env.setStreamTimeCharacteristic(TimeCharacteristic.EventTime);

DataStream<MyEvent> stream = env.addSource(new FlinkKafkaConsumer09<MyEvent>(topic, schema, props));

stream
    .keyBy( (event) -> event.getUser() )
    .timeWindow(Time.hours(1))
    .reduce( (a, b) -> a.add(b) )
    .addSink(...);

Flink 注冊 EventTime 是通過 InternalTimerServiceImpl.registerEventTimeTimer 來實現的

可以看到,該方法有兩個入參:namespace 和 time,其中 time 是觸發定時器的時間,namespace 則被構造成為一個 TimerHeapInternalTimer 對象,然后將其放入 KeyGroupedInternalPriorityQueue 隊列中。

那么 Flink 什么時候會使用這些 timer 觸發計算呢?答案在這個方法里:

InternalTimeServiceImpl.advanceWatermark。
public void advanceWatermark(long time) throws Exception {
   currentWatermark = time;

   InternalTimer<K, N> timer;

   while ((timer = eventTimeTimersQueue.peek()) != null && timer.getTimestamp() <= time) {
      eventTimeTimersQueue.poll();
      keyContext.setCurrentKey(timer.getKey());
      triggerTarget.onEventTime(timer);
   }
}

這個方法中的 while 循環部分會從 eventTimeTimersQueue 中依次取出觸發時間小于參數 time 的所有定時器,調用 triggerTarget.onEventTime() 方法進行觸發。

這就是 EventTime 從注冊到觸發的流程。

處理時間(Processing Time)
處理時間(Processing Time)指的是數據被 Flink 框架處理時機器的系統時間,Processing Time 是 Flink 的時間系統中最簡單的概念,但是這個時間存在一定的不確定性,比如消息到達處理節點延遲等影響。

我們同樣可以在代碼中指定 Flink 系統使用的時間為 Processing Time:

final StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment();

env.setStreamTimeCharacteristic(TimeCharacteristic.ProcessingTime);

同樣,也可以在源碼中找到 Flink 是如何注冊和使用 Processing Time 的。

registerProcessingTimeTimer() 方法為我們展示了如何注冊一個 ProcessingTime 定時器:
每當一個新的定時器被加入到 processingTimeTimersQueue 這個優先級隊列中時,如果新來的 Timer 時間戳更小,那么更小的這個 Timer 會被重新注冊 ScheduledThreadPoolExecutor 定時執行器上。

Processing Time 被觸發是在 InternalTimeServiceImpl 的 onProcessingTime() 方法中:

一直循環獲取時間小于入參 time 的所有定時器,并運行 triggerTarget 的 onProcessingTime() 方法。

攝入時間(Ingestion Time)
攝入時間(Ingestion Time)是事件進入 Flink 系統的時間,在 Flink 的 Source 中,每個事件會把當前時間作為時間戳,后續做窗口處理都會基于這個時間。理論上 Ingestion Time 處于 Event Time 和 Processing Time之間。

與事件時間相比,攝入時間無法處理延時和無序的情況,但是不需要明確執行如何生成 watermark。在系統內部,攝入時間采用更類似于事件時間的處理方式進行處理,但是有自動生成的時間戳和自動的 watermark。

可以防止 Flink 內部處理數據是發生亂序的情況,但無法解決數據到達 Flink 之前發生的亂序問題。如果需要處理此類問題,建議使用 EventTime。

Ingestion Time 的時間類型生成相關的代碼在 AutomaticWatermarkContext 中。

水位線(WaterMark)
水位線(WaterMark)是 Flink 框架中最晦澀難懂的概念之一,有很大一部分原因是因為翻譯的原因。

WaterMark 在正常的英文翻譯中是水位,但是在 Flink 框架中,翻譯為“水位線”更為合理,它在本質上是一個時間戳。

在上面的時間類型中我們知道,Flink 中的時間:
EventTime 每條數據都攜帶時間戳;

ProcessingTime 數據不攜帶任何時間戳的信息;
IngestionTime 和 EventTime 類似,不同的是 Flink 會使用系統時間作為時間戳綁定到每條數據,可以防止 Flink 內部處理數據是發生亂序的情況,但無法解決數據到達 Flink 之前發生的亂序問題。
所以,我們在處理消息亂序的情況時,會用 EventTime 和 WaterMark 進行配合使用。

首先我們要明確幾個基本問題。

水印的本質是什么
水印的出現是為了解決實時計算中的數據亂序問題,它的本質是 DataStream 中一個帶有時間戳的元素

如果 Flink 系統中出現了一個 WaterMark T,那么就意味著 EventTime < T 的數據都已經到達,窗口的結束時間和 T 相同的那個窗口被觸發進行計算了。

也就是說:水印是 Flink 判斷遲到數據的標準,同時也是窗口觸發的標記。

在程序并行度大于 1 的情況下,會有多個流產生水印和窗口,這時候 Flink 會選取時間戳最小的水印。

水位線是如何生成的

Flink 提供了 assignTimestampsAndWatermarks() 方法來實現水印的提取和指定,該方法接受的入參有 AssignerWithPeriodicWatermarks 和 AssignerWithPunctuatedWatermarks 兩種。

整體的類圖如下:

水位線種類


周期性水位線

我們在使用 AssignerWithPeriodicWatermarks 周期生成水印時,周期默認的時間是 200ms,這個時間的指定位置為:

@PublicEvolving
public void setStreamTimeCharacteristic(TimeCharacteristic characteristic) {
    this.timeCharacteristic = Preconditions.checkNotNull(characteristic);
    if (characteristic == TimeCharacteristic.ProcessingTime) {
        getConfig().setAutoWatermarkInterval(0);
    } else {
        getConfig().setAutoWatermarkInterval(200);
    }
}

是否還記得上面我們在講時間類型時會通過 env.setStreamTimeCharacteristic() 方法指定 Flink 系統的時間類型,這個 setStreamTimeCharacteristic() 方法中會做判斷,如果用戶傳入的是 TimeCharacteristic.eventTime 類型,那么 AutoWatermarkInterval 的值則為 200ms ,如上述代碼所示。當前我們也可以使用 ExecutionConfig.setAutoWatermarkInterval() 方法來指定自動生成的時間間隔。

在上述的類圖中可以看出,我們需要通過 TimestampAssigner 的 extractTimestamp() 方法來提取 EventTime。

Flink 在這里提供了 3 種提取 EventTime() 的方法,分別是:

AscendingTimestampExtractor
BoundedOutOfOrdernessTimestampExtractor
IngestionTimeExtractor
這三種方法中 BoundedOutOfOrdernessTimestampExtractor() 用的最多,需特別注意,在這個方法中的 maxOutOfOrderness 參數,該參數指的是允許數據亂序的時間范圍。簡單說,這種方式允許數據遲到 maxOutOfOrderness 這么長的時間。

    public BoundedOutOfOrdernessTimestampExtractor(Time maxOutOfOrderness) {
        if (maxOutOfOrderness.toMilliseconds() < 0) {
            throw new RuntimeException("Tried to set the maximum allowed " +
                "lateness to " + maxOutOfOrderness + ". This parameter cannot be negative.");
        }
        this.maxOutOfOrderness = maxOutOfOrderness.toMilliseconds();
        this.currentMaxTimestamp = Long.MIN_VALUE + this.maxOutOfOrderness;
    }

    public abstract long extractTimestamp(T element);

    @Override
    public final Watermark getCurrentWatermark() {
        long potentialWM = currentMaxTimestamp - maxOutOfOrderness;
        if (potentialWM >= lastEmittedWatermark) {
            lastEmittedWatermark = potentialWM;
        }
        return new Watermark(lastEmittedWatermark);
    }

    @Override
    public final long extractTimestamp(T element, long previousElementTimestamp) {
        long timestamp = extractTimestamp(element);
        if (timestamp > currentMaxTimestamp) {
            currentMaxTimestamp = timestamp;
        }
        return timestamp;
    }

PunctuatedWatermark水位線

這種水位線的生成方式 Flink 沒有提供內置實現,它適用于根據接收到的消息判斷是否需要產生水位線的情況,用這種水印生成的方式并不多見。

舉個簡單的例子,假如我們發現接收到的數據 MyData 中以字符串 watermark 開頭則產生一個水位線:

data.assignTimestampsAndWatermarks(new AssignerWithPunctuatedWatermarks<UserActionRecord>() {

      @Override
      public Watermark checkAndGetNextWatermark(MyData data, long l) {
        return data.getRecord.startsWith("watermark") ? new Watermark(l) : null;
      }

      @Override
      public long extractTimestamp(MyData data, long l) {
        return data.getTimestamp();
      }
    });
    
class MyData{
    private String record;
    private Long timestamp;
    public String getRecord() {
        return record;
    }
    public void setRecord(String record) {
        this.record = record;
    }
    public Timestamp getTimestamp() {
        return timestamp;
    }
    public void setTimestamp(Timestamp timestamp) {
        this.timestamp = timestamp;
    }
}

案例
我們上面講解了 Flink 關于水位線和時間的生成,以及使用,下面舉一個例子來講解。

模擬一個實時接收 Socket 的 DataStream 程序,代碼中使用 AssignerWithPeriodicWatermarks 來設置水位線,將接收到的數據進行轉換,分組并且在一個10
秒,間隔是5秒的滑動窗口內獲取該窗口中第二個元素最小的那條數據。

package com.wyh.windowsApi

import org.apache.flink.streaming.api.TimeCharacteristic
import org.apache.flink.streaming.api.functions.timestamps.BoundedOutOfOrdernessTimestampExtractor
import org.apache.flink.streaming.api.functions.{AssignerWithPeriodicWatermarks, AssignerWithPunctuatedWatermarks}
import org.apache.flink.streaming.api.scala._
import org.apache.flink.streaming.api.watermark.Watermark
import org.apache.flink.streaming.api.windowing.assigners.SlidingEventTimeWindows
import org.apache.flink.streaming.api.windowing.time.Time


object WindowTest {
  def main(args: Array[String]): Unit = {
    val env = StreamExecutionEnvironment.getExecutionEnvironment

    env.setParallelism(1)
    env.setStreamTimeCharacteristic(TimeCharacteristic.EventTime)
    //周期性生成watermark 默認是200毫秒
    env.getConfig.setAutoWatermarkInterval(100L)

    /**
      * 從文件中讀取數據
      *
      *
      */
    //val stream = env.readTextFile("F:\flink-study\wyhFlinkSD\data\sensor.txt")

    val stream = env.socketTextStream("localhost", 7777)

    //Transform操作
    val dataStream: DataStream[SensorReading] = stream.map(data => {
      val dataArray = data.split(",")
      SensorReading(dataArray(0).trim, dataArray(1).trim.toLong, dataArray(2).trim.toDouble)
    })
      //===到來的數據是升序的,準時發車,用assignAscendingTimestamps
      //指定哪個字段是時間戳 需要的是毫秒 * 1000
      //      .assignAscendingTimestamps(_.timestamp * 1000)
      //===處理亂序數據
      //      .assignTimestampsAndWatermarks(new MyAssignerPeriodic())
      //==底層也是周期性生成的一個方法 處理亂序數據 延遲1秒種生成水位 同時分配水位和時間戳 括號里傳的是等待延遲的時間
      .assignTimestampsAndWatermarks(new BoundedOutOfOrdernessTimestampExtractor[SensorReading](Time.seconds(1)) {
      override def extractTimestamp(t: SensorReading): Long = {
        t.timestamp * 1000
      }
    })

    //統計10秒內的最小溫度
    val minTemPerWindowStream = dataStream
      .map(data => (data.id, data.temperature))
      .keyBy(0)
      //      .timeWindow(Time.seconds(10)) //開時間窗口  滾動窗口 沒有數據的窗口不會觸發
      //左閉右開 包含開始 不包含結束 延遲1秒觸發的那個時間的數據不包含
      //可以直接調用底層方法,第三個參數傳offset代表時區
      //.window(SlidingEventTimeWindows.of(Time.seconds(15),Time.seconds(5),Time.hours(-8)))
      .timeWindow(Time.seconds(15), Time.seconds(5)) //滑動窗口,每隔5秒輸出一次
      .reduce((data1, data2) => (data1._1, data1._2.min(data2._2))) //用reduce做增量聚合


    minTemPerWindowStream.print("min temp")

    dataStream.print("input data")

    env.execute("window Test")

  }

}


//設置水位線(水印) 這里有兩種方式實現
//一種是周期性生成 一種是以數據的某種特性進行生成水位線(水印)
/**
  * 周期性生成watermark 默認200毫秒
  */
class MyAssignerPeriodic() extends AssignerWithPeriodicWatermarks[SensorReading] {
  val bound: Long = 60 * 1000
  var maxTs: Long = Long.MaxValue

  override def getCurrentWatermark: Watermark = {
    //定義一個規則進行生成
    new Watermark(maxTs - bound)
  }

  //用什么抽取這個時間戳
  override def extractTimestamp(t: SensorReading, l: Long): Long = {
    //保存當前最大的時間戳
    maxTs = maxTs.max(t.timestamp)
    t.timestamp * 1000
  }
}


/**
  * 亂序生成watermark
  * 每來一條數據就生成一個watermark
  */
class MyAssignerPunctuated() extends AssignerWithPunctuatedWatermarks[SensorReading] {
  override def checkAndGetNextWatermark(t: SensorReading, l: Long): Watermark = {
    new Watermark(l)
  }

  override def extractTimestamp(t: SensorReading, l: Long): Long = {
    t.timestamp * 1000
  }
}

總結

以上是生活随笔為你收集整理的Flink学习(十四) Flink 窗口、时间和水位线的全部內容,希望文章能夠幫你解決所遇到的問題。

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

中文字幕在线观看三区 | 中文在线免费一区三区 | 狠狠ri| 成人中文字幕+乱码+中文字幕 | 欧美性色黄 | 99精品国产在热久久下载 | 国产一区二区在线免费播放 | 亚洲在线视频观看 | a成人v| 2024国产精品视频 | 国产999免费视频 | 九九在线播放 | 国产亚洲精品美女 | 久草在线官网 | 国产一区二区三区 在线 | 在线观影网站 | 久久国产精品99久久久久久丝袜 | 91精品国产乱码 | 久久精品亚洲一区二区三区观看模式 | 久久中文欧美 | 国产成人一区二区三区电影 | 日本精品视频免费 | 国产高清视频 | 亚洲精品在线观看中文字幕 | 国产精品久久久久久吹潮天美传媒 | 国产美女在线免费观看 | 精品在线视频一区 | 亚洲成人国产 | 91理论片午午伦夜理片久久 | 亚洲成人黄色 | 香蕉网站在线观看 | 在线观看免费黄视频 | 国内精品国产三级国产aⅴ久 | 91黄色在线观看 | 午夜精品一区二区国产 | 久久久久久久国产精品视频 | 天天激情 | 在线观看mv的中文字幕网站 | 九九热在线播放 | 日韩高清毛片 | 日韩av片免费在线观看 | 国产精品岛国久久久久久久久红粉 | 丁香婷婷综合激情 | 欧美 日韩 国产 中文字幕 | 成人a在线观看 | 在线免费91| 精品福利在线视频 | 国产精品99久久久久久武松影视 | 伊人手机在线 | 国产a级片免费观看 | 国产偷国产偷亚洲清高 | 麻豆精品传媒视频 | 国产精品手机在线播放 | 日韩av在线一区二区 | 久久精品视频2 | 国产精品久久精品 | 天堂av在线网 | 亚洲视频第一页 | 中文字幕在线观看视频免费 | 国产精品理论片 | 99视频国产精品 | 8x成人免费视频 | 97视频在线观看成人 | 天天干天天做天天操 | 精品久久久久久国产91 | 久久久久美女 | 国产高清视频免费在线观看 | 久久99精品久久久久婷婷 | 国产日韩欧美在线播放 | 日本中文字幕高清 | 欧美日韩国产伦理 | 亚洲精品九九 | 香蕉影院在线播放 | 国产精选视频 | 免费久久精品视频 | 欧美大片第1页 | 99精品欧美一区二区三区 | 国产精品久久久久9999 | 色是在线视频 | 在线视频 亚洲 | 中文字幕人成乱码在线观看 | 国产欧美精品一区二区三区 | 九九在线高清精品视频 | 青草视频在线免费 | 美女视频永久黄网站免费观看国产 | 日本中文字幕在线一区 | www.色就是色 | 人人天天夜夜 | 日韩高清不卡一区二区三区 | 久久国产精品99久久久久久进口 | 麻豆91小视频 | 国产午夜av | 91av视频免费在线观看 | 91成人欧美 | 久久婷综合| www.五月激情.com | 激情深爱 | 国产黄色免费看 | 亚洲精品h | 天天av在线播放 | 91av在线国产| 麻豆视频国产精品 | 国产精品激情在线观看 | 91污污 | 日韩成人精品 | 久久歪歪 | 色激情在线 | 天天操天天草 | 欧美人交a欧美精品 | 国产精品久久久久久久久久白浆 | 欧美大片大全 | 91av视频在线播放 | 亚洲精品国产综合久久 | 97碰碰视频 | 黄色av电影网 | 日韩高清在线一区二区 | 日韩欧美69 | 一区二区三区福利 | 中文十次啦 | 日韩精品一区二区三区高清免费 | 国产91aaa | 久草在线资源观看 | 超碰在线公开 | 久久久久久久久网站 | 国产999精品 | 日韩精品视频在线免费观看 | 精品一区 精品二区 | 国产男男gay做爰 | 久久夜色精品国产欧美乱极品 | 亚洲日b视频| 91精品视频一区二区三区 | 久久久久久久久久久久久久av | 狠狠色狠狠色综合日日小说 | 欧美一区二区三区免费看 | 成人h电影| 色成人亚洲网 | 国产不卡在线视频 | 日韩在线观看视频网站 | 91专区在线观看 | 精品夜夜嗨av一区二区三区 | 蜜桃视频精品 | 免费网站在线 | 99精彩视频在线观看免费 | 青草视频在线免费 | 成年人在线观看免费视频 | 日韩欧美一区二区在线观看 | 国产成人精品福利 | 超碰公开在线 | 国产精品久久网 | 免费a一级 | 77国产精品| 91 在线视频播放 | 伊人国产视频 | 亚洲国产网址 | 啪啪av在线| 亚洲黄色激情小说 | 天天综合久久综合 | 欧美日韩视频在线一区 | av中文天堂 | 在线观看激情av | 在线免费亚洲 | 一级精品视频在线观看宜春院 | 九九国产精品视频 | 亚洲精品免费在线 | 久久精品免费电影 | 国模精品一区二区三区 | 涩涩网站在线观看 | 久久久www成人免费精品 | 国产精品2018 | 99久久精品国产亚洲 | 国产vs久久 | 男女拍拍免费视频 | 国产专区第一页 | 国产清纯在线 | 国产精品2区 | 激情小说久久 | 久日精品 | 99久久99久久精品国产片果冰 | 人人擦| av品善网 | 伊人色播 | 美女网站黄免费 | 亚洲精品中文在线观看 | av成人黄色| 一本一道久久a久久精品 | 亚洲视频www | 国产福利91精品一区 | 久久精品久久99 | 天天操天天射天天插 | 亚洲 中文 在线 精品 | 99视频在线观看视频 | av免费在线观看网站 | 亚洲久在线 | 97免费视频在线 | 亚洲性xxxx| 国产精品久久久久久超碰 | 337p日本欧洲亚洲大胆裸体艺术 | 亚洲禁18久人片 | 国产精品综合久久久久久 | 91久久影院| 欧美不卡在线 | 日韩精品一区在线播放 | 在线观看黄色免费视频 | 国产精品久久久久久久久岛 | 中文视频在线 | 亚洲精品乱码久久久久久蜜桃动漫 | 欧美一区视频 | 成人国产精品一区二区 | 美女视频网 | 亚洲精品国产精品99久久 | 久久韩国免费视频 | 狠狠操综合网 | 久久看片| 特级黄色一级 | 99精品视频一区 | 新版资源中文在线观看 | 成人动图 | 成人免费在线观看电影 | 成人三级视频 | 在线天堂中文在线资源网 | 久久久伦理| 亚洲a网 | 日韩二区三区在线 | 国产精品二区三区 | 日日碰狠狠躁久久躁综合网 | 久久大香线蕉app | 999久久久久久久久久久 | 国产韩国日本高清视频 | 久久精品视频18 | 亚洲一级特黄 | 亚洲精品日韩在线观看 | 天天操夜夜操国产精品 | 99re国产 | 国产精品久久久久久久久蜜臀 | 成人黄色电影免费观看 | 成人精品国产免费网站 | 91精品国产欧美一区二区 | 午夜精品久久久久久久99热影院 | 天天躁日日 | 日本aa在线| 日韩欧美国产激情在线播放 | 日韩免费视频一区二区 | 综合网在线视频 | 98超碰人人 | 久草在线免费资源 | 国产婷婷vvvv激情久 | 欧美一级在线看 | 国产精品美女毛片真酒店 | 91免费视频网站在线观看 | 不卡av在线免费观看 | 亚洲aaa毛片 | 中午字幕在线观看 | 奇人奇案qvod | 五月天婷婷在线观看视频 | 久草在线免费资源站 | 亚洲欧美日本一区二区三区 | 日韩精品一区二区在线视频 | 狠狠狠色丁香综合久久天下网 | 狠狠色狠狠色综合日日小说 | 国产资源精品在线观看 | 欧美日韩不卡在线观看 | 欧美精品久久久久久久亚洲调教 | 欧美十八| 日精品 | 国产精品久久久久国产精品日日 | 国产在线不卡精品 | 日韩av男人的天堂 | 91精品播放 | 国产一区二区高清视频 | av在线免费观看网站 | 中文字幕一区二区三区四区视频 | 亚洲九九爱 | 国产96精品 | 五月综合激情婷婷 | av在线永久免费观看 | 九九免费在线观看 | 日韩免费 | 国产91精品一区二区麻豆网站 | 精品久久久久久综合日本 | 国产一区视频导航 | 一 级 黄 色 片免费看的 | 成人精品一区二区三区中文字幕 | 日日爱网址 | 国产成人精品亚洲日本在线观看 | 国产成人精品一区二区三区免费 | 国产九九热视频 | 久久夜夜爽 | 国产免费一区二区三区网站免费 | 亚洲精品视频国产 | 亚洲狠狠操 | 国产欧美中文字幕 | 久久中文字幕导航 | 99热这里精品 | 深夜免费福利视频 | 中文字幕一区二区三区四区 | 色婷婷亚洲综合 | av大片网址| www色com| 一区二区三区久久精品 | 樱空桃av | 日韩久久影院 | 国产免费高清视频 | 国产一区二区视频在线播放 | 国产在线精品视频 | 91一区二区三区在线观看 | 久久高清免费 | 人人爽人人澡 | 国产91精品欧美 | 三级性生活视频 | 久久成| 久久人人爽爽 | 久久精品牌麻豆国产大山 | 国产一区高清在线观看 | 一区二区高清在线 | 日韩av不卡在线播放 | 亚洲精品www久久久 www国产精品com | av片无限看 | 国产精品99久久久精品免费观看 | 麻豆网站免费观看 | 欧美 日韩 成人 | 成人h在线播放 | 一区二区三区四区五区在线 | 天天干,天天干 | 色婷婷狠狠五月综合天色拍 | 国产亚洲亚洲 | 97成人精品区在线播放 | 亚洲欧美视频在线观看 | 一区二区视频在线免费观看 | 人人狠狠综合久久亚洲 | 国产一区福利 | 在线视频亚洲 | 久久综合九色 | 国产亚洲欧美精品久久久久久 | 国产美女精品在线 | 欧美日韩精品影院 | 在线看片成人 | 久久久久国产精品午夜一区 | 欧美另类交人妖 | 亚洲精品福利在线 | 亚洲综合色激情五月 | 色午夜影院 | 午夜12点 | 久久久国产99久久国产一 | 欧美久久久一区二区三区 | 色天天综合久久久久综合片 | 欧美色888| 91福利小视频 | 黄色91在线| 97超碰人人澡人人爱 | 亚洲成人av片在线观看 | 99亚洲国产精品 | 天天色天| 国产亚洲精品免费 | av丝袜在线 | 日韩一区二区三区高清在线观看 | 国产视频一区在线播放 | 国产精品一区二区三区视频免费 | 波多野结衣一区二区 | 亚洲自拍偷拍色图 | 欧美日韩破处 | 激情开心网站 | 黄色av一级片 | 亚洲午夜av久久乱码 | 99久久网站 | 黄色99视频 | 中文字幕影片免费在线观看 | 国产乱码精品一区二区蜜臀 | 日韩免费精品 | 超碰在线人 | 午夜精品久久久久久久99婷婷 | 国产男女爽爽爽免费视频 | 欧美黄色成人 | 亚洲成人高清在线 | 成人国产综合 | 久草av在线播放 | 久久五月婷婷综合 | 国产精品无av码在线观看 | 国产高清成人在线 | 精品伦理一区二区三区 | 婷婷久草| 天天操天天弄 | 美女视频黄色免费 | 欧美日韩一级久久久久久免费看 | 日韩艹 | 欧美极品xxxxx | 国产精品久久久久久超碰 | 国产999精品久久久 免费a网站 | caobi视频| 国产一级一片免费播放放 | 中文字幕在线播放日韩 | 99久久久久免费精品国产 | 日韩在线观看免费 | 99精品免费视频 | 亚洲高清视频在线观看免费 | 久久久鲁 | a黄在线观看 | 在线精品视频免费观看 | 西西大胆免费视频 | 欧美乱码精品一区二区 | 色国产精品一区在线观看 | 在线导航av | 最近高清中文字幕 | 色噜噜在线观看视频 | 狠狠色丁香婷婷综合橹88 | 在线 国产一区 | 狠狠色狠狠色综合系列 | 久久精品站| 欧美日韩视频一区二区三区 | 狠狠狠色丁香综合久久天下网 | 日日夜夜精品视频天天综合网 | 欧美一级性生活片 | 久久综合色播五月 | 超碰在线免费97 | 五月婷婷综合激情网 | 最近中文字幕完整视频高清1 | 97电影在线观看 | 久久国产精品精品国产色婷婷 | 国产精品一区二区免费在线观看 | 九九久久电影 | 日韩视频免费播放 | 亚洲综合日韩在线 | 久久久久欧美精品999 | 色噜噜噜 | 伊人热 | 91三级视频| 99久久婷婷国产精品综合 | japanesexxxxfreehd乱熟 | 欧美一级专区免费大片 | 高清av中文字幕 | 毛片黄色一级 | 日韩三级在线观看 | 久久99久久99| 精品99在线观看 | 91成人免费看 | 日韩精品免费在线播放 | av资源在线看 | 九九九九热精品免费视频点播观看 | 一区电影| 天天插日日插 | 亚洲成人999| 九九精品视频在线观看 | 毛片基地黄久久久久久天堂 | 一区二区三区精品在线视频 | 婷婷色 亚洲| 久久久亚洲国产精品麻豆综合天堂 | 狠狠狠狠狠狠狠干 | 天天综合五月天 | www久久| 欧美91精品国产自产 | 久久精品这里热有精品 | 国产一级高清 | 日本黄色大片免费 | 欧美激情第28页 | 久久精品高清视频 | 国产在线高清视频 | 午夜黄色影院 | 久久久久精| 国产精品成人自产拍在线观看 | 欧美一区二区三区在线播放 | 久久试看| 日韩3区 | 一区二区三区四区精品视频 | 综合天天久久 | 欧美一级片免费 | 国产亚洲人成网站在线观看 | 黄色毛片视频免费观看中文 | 996久久国产精品线观看 | 夜夜爽夜夜操 | 国产一区影院 | 午夜私人影院 | 亚洲区色| 国内精品久久久久久久久久清纯 | 国产不卡网站 | 97在线视频免费观看 | 色婷婷激情网 | 一本一本久久aa综合精品 | 插插插色综合 | 日韩精品一卡 | 日韩欧美极品 | 黄色av网站在线免费观看 | 99精品成人 | 日韩精品一区二区久久 | av久久久久久 | 精品国模一区二区三区 | 在线播放 日韩专区 | 国产视频91在线 | 欧美aaa大片 | 热久久精品在线 | 久久国产精品久久国产精品 | 日韩av电影手机在线观看 | 国产91在线免费视频 | 在线免费观看视频a | 日韩有码在线观看视频 | 欧美aaa视频 | 中文国产字幕在线观看 | 高清在线一区 | www狠狠| 911av视频 | 国产高清免费av | 成人av免费播放 | 黄网站色 | 久久综合色影院 | 亚洲精品va | 久久国产精品成人免费浪潮 | 99超碰在线观看 | 手机av看片 | 欧美成人按摩 | 日韩视频在线播放 | 成人一级在线 | 99精品国产免费久久久久久下载 | 中文字幕888 | 三级黄色免费 | 日韩精品免费一区二区 | 日韩有码在线观看视频 | 欧美 日韩精品 | 成人毛片一区 | 一本到视频在线观看 | 97免费视频在线 | 成人国产精品免费观看 | 成人网在线免费视频 | 天天爽天天射 | 久久综合九色综合欧美就去吻 | 久久大视频| 欧美aaa视频 | 蜜桃视频成人在线观看 | 久久不射电影网 | 亚洲干视频在线观看 | 成人丝袜 | 亚洲v欧美v国产v在线观看 | 欧美a级在线 | 久久99久久精品 | 亚洲一区精品二人人爽久久 | 国产精品乱码一区二三区 | 国产精品一区免费在线观看 | 九九热只有这里有精品 | 婷婷久月 | 9999激情| 国内毛片毛片 | 婷婷在线网站 | 欧美专区亚洲专区 | 国产在线不卡一区 | 久久毛片高清国产 | 欧美一区二区精美视频 | 国产美女主播精品一区二区三区 | 96久久 | 日韩精品一区二区三区三炮视频 | 亚洲婷婷综合色高清在线 | 日韩av手机在线观看 | 天天躁日日躁狠狠躁 | 日日日干 | 日韩极品视频在线观看 | 91在线免费播放 | 久久成人精品视频 | 日韩免费网址 | www毛片com| 国产伦理剧| 99久久99久国产黄毛片 | 国产精品久久三 | 四虎在线视频免费观看 | 日韩视频一区二区三区在线播放免费观看 | 天天天综合网 | 国产一区二区三区网站 | 国产在线v | 亚洲国产伊人 | 成人毛片一区 | 胖bbbb搡bbbb擦bbbb | 黄色av免费电影 | 91热精品 | 久久久久久久久爱 | 九九99靖品 | 日韩av在线小说 | 国产黄色免费在线观看 | 中文字幕专区高清在线观看 | 99视频在线观看免费 | 欧美 高跟鞋交 xxxxhd | 99精品在线看 | 亚洲人成人在线 | 久久久久在线 | 黄色a大片 | 在线播放第一页 | 精品久久久久久亚洲综合网 | 国产精品系列在线播放 | 精品国产乱码 | 最近中文字幕大全 | 国产精品aⅴ | 国产精品美女久久久久久久 | 探花视频免费观看 | 天天爽天天爽夜夜爽 | 在线超碰av | 免费在线播放 | 黄色的网站免费看 | 99爱视频 | 一级一片免费视频 | 久久综合九色综合网站 | 成人免费观看电影 | 久久国产视频网 | 成人aⅴ视频 | 亚洲成人资源在线 | 韩国av一区二区 | 成人黄色毛片 | 国产三级在线播放 | 日日色综合 | 久草在线最新视频 | 久草热视频 | 日韩不卡高清 | 日韩电影在线观看中文字幕 | 欧美看片| 亚洲美女久久 | 日日干天天 | 久久综合操 | 丁香婷婷综合网 | 五月天中文字幕 | 久久五月天色综合 | 99精品国产福利在线观看免费 | 欧美美女视频在线观看 | 香蕉视频在线播放 | 免费网站黄色 | 探花视频在线版播放免费观看 | 久久福利在线 | 欧美在线视频免费 | 96av在线 | 婷婷视频 | 亚洲五月综合 | 1000部国产精品成人观看 | 中文字幕在线视频一区二区 | 欧美另类性 | 99精品热视频只有精品10 | 国产精品九色 | 日本三级在线观看中文字 | 国产精品日韩久久久久 | 天天操天天干天天操天天干 | 国产在线视频在线观看 | 国产不卡av在线播放 | 国产亚洲精品久久19p | 日本乱视频| 777xxx欧美 | 亚洲国产精品第一区二区 | 伊人久久五月天 | 97超碰在线久草超碰在线观看 | 国产精品久久久久三级 | 久久夜av| 国产精品完整版 | 福利视频网站 | 国产老熟 | 欧美激情综合五月色丁香小说 | 一区二区三区四区五区在线 | 成人av在线网址 | 久久久影院一区二区三区 | 免费在线播放av电影 | 狠狠躁日日躁狂躁夜夜躁 | 免费看的黄色网 | 中文字幕av影院 | 国产五十路毛片 | 在线观看国产区 | 狠狠躁日日躁狂躁夜夜躁 | 日韩美女免费线视频 | 人人看黄色 | av免费看av| 婷婷99| 欧美一级小视频 | 久久人人爽人人爽 | 亚洲精品视频一二三 | 男女全黄一级一级高潮免费看 | 人人看黄色 | 午夜精品一区二区三区免费 | 国内精品视频在线 | av丝袜在线 | 西西44人体做爰大胆视频 | 国产a视频免费观看 | 国产精品九九久久99视频 | 91日韩在线视频 | 亚洲一级片在线看 | 99热精品免费观看 | 天天操夜 | 国产中文字幕在线看 | 亚洲国产av精品毛片鲁大师 | 国产在线2020 | 国产精品毛片久久久久久久 | 一区二区三区电影在线播 | 五月天综合 | 国色天香在线观看 | 国产精品毛片一区二区在线看 | 麻豆系列在线观看 | 午夜精品视频福利 | 夜夜爽夜夜操 | 国产精品剧情 | 一区二区三区 亚洲 | 国产在线污| 中文字幕乱在线伦视频中文字幕乱码在线 | 久久,天天综合 | 国产乱视频| 色婷婷综合久久久中文字幕 | 精品一二三四五区 | 免费一级片在线 | 国产麻豆精品传媒av国产下载 | 又黄又刺激又爽的视频 | 在线观看黄色国产 | 中文字幕影片免费在线观看 | 国产精品 日韩 | 亚洲精品乱码久久久久久蜜桃动漫 | 美女黄频 | 91久久国产精品 | 亚洲一区视频在线播放 | 午夜久久久精品 | 亚洲午夜久久久综合37日本 | 91网站免费观看 | 欧美日韩久久一区 | www.久久久.cum | 欧美日韩高清在线一区 | 久久久久在线 | 在线观看午夜 | 日韩欧美91| 93久久精品日日躁夜夜躁欧美 | 91成品人影院 | 国产精品99久久久久久大便 | 日韩av电影免费观看 | 中文字幕在线播放日韩 | 一级片视频在线 | 午夜av在线免费 | 欧美日韩免费在线视频 | 在线中文字幕一区二区 | 国产精品21区 | 国产精品久久久久久吹潮天美传媒 | 伊人天天狠天天添日日拍 | 成人免费视频网址 | 亚洲精品玖玖玖av在线看 | 亚洲综合色激情五月 | 99av国产精品欲麻豆 | 亚洲国产欧洲综合997久久, | 国产97碰免费视频 | 久久在线看 | 天天操夜夜做 | 99久久婷婷国产一区二区三区 | 高清国产在线一区 | 91成人欧美 | 国产传媒中文字幕 | 久久免费国产精品 | 久久久观看 | 操操操com | 粉嫩av一区二区三区四区在线观看 | 爱爱一区 | 亚洲精品视频在线观看免费视频 | 国产不卡视频在线 | 在线观看久久 | 91久久久久久久一区二区 | 久久精品国产精品亚洲 | 狠狠干2018 | 国产成人一区二区三区免费看 | 一区二区三区在线观看免费视频 | 久久精品成人热国产成 | 不卡的av电影在线观看 | 天堂视频中文在线 | 一级国产视频 | 久久午夜电影院 | 波多野结衣在线观看一区 | 国产在线更新 | 欧美日韩国语 | 色99中文字幕 | 综合av在线 | 亚洲精品在线看 | 日韩av片在线 | 91精品啪在线观看国产 | 国内精品久久久久影院一蜜桃 | 中文亚洲欧美日韩 | 欧美最猛性xxxxx免费 | 国内精品福利视频 | 国产精品日韩久久久久 | 国产视频91在线 | 日韩精品中文字幕有码 | 午夜骚影| 国产精品一区二区三区久久久 | 99久久激情 | 激情 婷婷 | 狠狠做深爱婷婷综合一区 | 免费三及片 | 在线观看中文字幕av | 伊人影院得得 | 欧美日韩国内在线 | 免费观看视频黄 | 91福利专区 | 亚洲美女在线国产 | 中文在线www | 日韩av进入 | 免费观看一级特黄欧美大片 | 国产精品欧美一区二区 | 黄色大片免费网站 | www.天天干.com | 深爱激情婷婷网 | 99久久久成人国产精品 | 在线观看一区 | 日韩经典一区二区三区 | 国产女教师精品久久av | 久久国产精品99久久久久久丝袜 | 99久久精品免费一区 | 久久国产美女视频 | 久久手机精品视频 | 国产精品色 | 三级黄免费看 | 91在线中字 | 一区二区三区在线电影 | 久久成人在线视频 | 在线播放一区 | 日韩欧美v | 波多野结衣在线观看一区 | 久久久久女人精品毛片 | 99热官网 | 亚洲天堂社区 | 成人久久视频 | 久久综合网色—综合色88 | 中文字幕 在线 一 二 | av成人在线网站 | 免费高清av在线看 | 国产精品黄网站在线观看 | 久久综合久久综合久久综合 | 婷婷综合导航 | 二区三区毛片 | 日韩高清在线不卡 | 天天天色 | 国产欧美精品xxxx另类 | 一区在线观看视频 | 波多野结衣在线观看一区二区三区 | 国产在线播放不卡 | 超级碰99| 亚洲精品久久久久999中文字幕 | 色噜噜噜噜 | 中文字幕综合在线 | 在线看v片成人 | 欧美成人xxxxx| 久久久精品欧美 | 99久久精品免费看国产 | 免费看的视频 | 草久在线观看视频 | 国产高清久久 | 色网站在线观看 | 2021久久| 国产九色91 | 激情狠狠干 | 黄色a级片在线观看 | 亚洲午夜在线视频 | 久久久久久欧美二区电影网 | 欧美成人中文字幕 | 国产高清成人在线 | 免费男女羞羞的视频网站中文字幕 | 探花视频在线版播放免费观看 | 99免费视频 | 最近中文字幕 | www.看片网站 | 人人爽人人片 | 精品视频网站 | 干av在线| 99国内精品 | 丁香婷婷久久久综合精品国产 | 国产精品中文字幕在线播放 | 天天干天天做天天爱 | 蜜桃视频日韩 | 欧美精品首页 | 在线精品视频免费观看 | 在线观看黄色 | av在线在线 | 色婷婷成人网 | 六月丁香综合 | 欧美另类tv | 三级av网站 | 亚洲精品久久激情国产片 | 精品99在线观看 | 日韩理论视频 | 国产精品露脸在线 | 国产成人久久精品77777 | 最新精品国产 | 免费观看www视频 | 黄色网在线播放 | 日韩高清在线不卡 | 中文字幕制服丝袜av久久 | 精品久久网 | 超级碰碰碰视频 | 国产偷v国产偷∨精品视频 在线草 | 国产一二三区在线观看 | 国产中文字幕91 | 国产精品99久久久久久久久久久久 | 日韩三级免费 | 五月婷婷中文网 | 成人黄大片视频在线观看 | www.久久久com | 久久综合给合久久狠狠色 | 99精品视频网站 | 久久久久成 | 粉嫩av一区二区三区四区 | 日韩在线不卡视频 | 国产免费叼嘿网站免费 | 国产色中涩 | 日本少妇视频 | 日本精品在线视频 | 精品中文字幕在线观看 | 91最新在线| 国内外成人免费在线视频 | 日日操日日操 | 日本在线观看中文字幕 | 九九国产精品视频 | 中文字幕一区二区三区久久蜜桃 | 中日韩在线视频 | 丁香花中文在线免费观看 | 深爱开心激情网 | 伊人黄色网 | 国内三级在线观看 | 99精品一区 | 婷婷激情综合网 | 在线免费观看国产黄色 | 日韩精品一区电影 | 久草视频视频在线播放 | 天天操天天干天天操天天干 | 国产欧美日韩一区 | 黄色毛片在线观看 | 免费国产亚洲视频 | 四虎在线免费视频 | 欧美日韩在线观看一区二区三区 | 国产精品影音先锋 | 最新中文字幕在线播放 | 国产福利电影网址 | 超碰在97 | 免费在线黄 | 国产精品嫩草影院99网站 | 日韩手机在线 | 99精品国产99久久久久久97 | 男女啪啪网站 | 国产精品毛片久久 | 波多野结衣最新 | 91高清免费看| 黄网站免费大全入口 | 国产尤物在线视频 | 在线观看完整版 | 黄色亚洲大片免费在线观看 | 人人爽人人爽人人片av | 天天干天天爽 | 国产成人a v电影 | 日韩手机在线 | 欧美福利久久 | 又黄又刺激的网站 | 天天操天天操天天操天天操天天操 | 成人小视频在线免费观看 | 亚洲国产剧情av | 精品亚洲免费视频 | 国产精品免费久久久久久久久久中文 | 久草在线免 | 国产成人av一区二区三区在线观看 | 精品在线看 | 色视频成人在线观看免 | 国产中文字幕在线视频 | 天天色视频 | 亚洲 中文 欧美 日韩vr 在线 | av免费在线播放 | 精品视频999| 国产无区一区二区三麻豆 | 日韩网站免费观看 | 综合色婷婷 | 在线播放精品一区二区三区 | 婷婷丁香在线 | 婷婷精品 | 欧美一二三专区 | 国产午夜精品免费一区二区三区视频 | 久久久久久久久久亚洲精品 | 国产精品日韩在线播放 | 91精品久久久久久综合乱菊 | 国产免费又粗又猛又爽 | 亚洲乱码精品 | 国产黄色特级片 | 精品一区二区在线观看 | 欧美在线视频一区二区 | 69精品视频在线观看 | 91 中文字幕 | 最新av电影网站 | 欧美精品乱码99久久影院 | 欧美aa一级 | 亚洲婷婷丁香 | 日韩乱码中文字幕 | 欧美一级电影免费观看 | 久久久久免费精品国产小说色大师 | 播五月婷婷 | 亚洲精品av中文字幕在线在线 | 中文字幕第一页在线播放 | 国产美腿白丝袜足在线av | 一区二区久久 | 天天色天天艹 | 国产成人精品在线观看 | 国产系列在线观看 | 狠狠综合 | 96精品视频 | 中文字幕专区高清在线观看 | 91在线视频播放 | 欧美在线观看视频一区二区三区 | 中文字幕日韩电影 | 中文字幕日韩精品有码视频 | 国内视频在线观看 | 国产高清av免费在线观看 | 91av在线国产 | 成人在线观看免费 | 国产偷在线 | 天天亚洲| 三级a视频 |