国产凹凸在线-国产拗女一区二区三区-国产白白视-国产白领-国产白拍-国产白丝jk被疯狂输-国产白丝喷-国产白丝在线

金喜正规买球

實踐分享|基于MaxCompute的圖計算-——-Aggregator機制介紹

精華|使用教程|編輯:龔雪|2017-03-24 10:05:38.000|閱讀 240 次

概述: Aggregator是MaxCompute-GRAPH作業中常用的feature之一,特別是解決機器學習問題時。MaxCompute-GRAPH中Aggregator用于匯總并處理全局信息。本文將詳細介紹的Aggregator的執行機制、相關API,并以Kmeans Clustering為例子說明Aggregator的具體用法。

# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>

Aggregator機制

如圖1所示,Aggregator的邏輯分兩部分,一部分在所有Worker上執行,即分布式執行,另一部分只在AggregatorOwner所在Worker上執行,即單點。其中在所有Worker上執行的操作包括創建初始值及局部聚合,然后將局部聚合結果發送給AggregatorOwner所在Worker上。AggregatorOwner所在Worker上聚合普通Worker發送過來的局部聚合對象,得到全局聚合結果,然后判斷迭代是否結束。全局聚合的結果會在下一輪超步分發給所有Worker,供下一輪迭代使用。

aggregator
圖1 Aggregator機制

Aggregator的API

Aggregator共提供了五個API供用戶實現。下面逐個介紹5個API的調用時機及常規用途。

1. createStartupValue(context)

該API在所有Worker上執行一次,調用時機是所有超步開始之前,通常用以初始化AggregatorValue。在第0輪超步中,調用WorkerContext.getLastAggregatedValue() 或ComputeContext.getLastAggregatedValue()可以獲取該API初始化的AggregatorValue對象。

2. createInitialValue(context)

該API在所有Worker上每輪超步開始時調用一次,用以初始化本輪迭代所用的AggregatorValue。通常操作是通過WorkerContext.getLastAggregatedValue() 得到上一輪迭代的結果,然后執行部分初始化操作。

3. aggregate(value, item)

該API同樣在所有Worker上執行,與上述API不同的是,該API由用戶顯示調用ComputeContext#aggregate(item)來觸發,而上述兩個API,則由框架自動調用。該API用以執行局部聚合操作,其中第一個參數value是本Worker在該輪超步已經聚合的結果(初始值是createInitialValue返回的對象),第二個參數是用戶代碼調用ComputeContext#aggregate(item)傳入的參數。該API中通常用item來更新value實現聚合。所有aggregate執行完后,得到的value就是該Worker的局部聚合結果,然后由框架發送給AggregatorOwner所在的Worker。

4. merge(value, partial)

該API執行于AggregatorOwner所在Worker,用以合并各Worker局部聚合的結果,達到全局聚合對象。與aggregate類似,value是已經聚合的結果,而partial待聚合的對象,同樣用partial更新value。
假定有3個worker,分別是w0、w1、w2,其局部聚合結果是p0、p1、p2。假定發送到AggregatorOwner所在Worker的順序為p1、p0、p2。那么merge執行次序為,首先執行merge(p1, p0),這樣p1和p0就聚合為p1',然后執行merge(p1', p2),p1'和p2聚合為p1'',而p1''即為本輪超步全局聚合的結果。
從上述示例可以看出,當只有一個worker時,不需要執行merge方法,也就是說merge()不會被調用。

5. terminate(context, value)

當AggregatorOwner所在Worker執行完merge()后,框架會調用terminate(context, value)執行最后的處理。其中第二個參數value,即為merge()最后得到全局聚合,在該方法中可以對全局聚合繼續修改。執行完terminate()后,框架會將全局聚合對象分發給所有Worker,供下一輪超步使用。
 terminate()方法的一個特殊之處在于,如果返回true,則整個作業就結束迭代,否則繼續執行。在機器學習場景中,通常判斷收斂后返回true以結束作業。

Kmeans Clustering示例

下面以典型的KmeansClustering作為示例,來看下Aggregator具體用法。附件有完整代碼,這里我們逐個部分解析代碼。

1. GraphLoader部分

GraphLoader部分用以加載輸入表,并轉換為圖的點或邊。這里我們輸入表的每行數據為一個樣本,一個樣本構造一個點,并用Vertex的value來存放樣本。
我們首先定義一個Writable類KmeansValue作為Vertex的value類型。

  public static class KmeansValue implements Writable {

    DenseVector sample;

    public KmeansValue() { 
    }

    public KmeansValue(DenseVector v) {
      this.sample = v;
    }

    @Override
    public void write(DataOutput out) throws IOException {
      wirteForDenseVector(out, sample);

    }

    @Override
    public void readFields(DataInput in) throws IOException {
      sample = readFieldsForDenseVector(in);
    }
  }

KmeansValue中封裝一個DenseVector對象來存放一個樣本,這里DenseVector類型來自,而wirteForDenseVector()及readFieldsForDenseVector()用以實現序列化及反序列化,可參見附件中的完整代碼。
我們自定義的KmeansReader代碼如下:

  public static class KmeansReader extends 
    GraphLoader<LongWritable, KmeansValue, NullWritable, NullWritable> {

    @Override
    public void load(
        LongWritable recordNum,
        WritableRecord record,
        MutationContext<LongWritable, KmeansValue, NullWritable, NullWritable> context)
        throws IOException {
      KmeansVertex v = new KmeansVertex();
      v.setId(recordNum);

      int n = record.size();
      DenseVector dv = new DenseVector(n);
      for (int i = 0; i < n; i++) {
        dv.set(i, ((DoubleWritable)record.get(i)).get());
      }
      v.setValue(new KmeansValue(dv));

      context.addVertexRequest(v);
    }
  }

KmeansReader中,每讀入一行數據(一個Record)創建一個點,這里用recordNum作為點的ID,將record內容轉換成DenseVector對象并封裝進VertexValue中。

2. Vertex部分

自定義的KmeansVertex代碼如下。邏輯非常簡單,每輪迭代要做的事情就是將自己維護的樣本執行局部聚合。具體邏輯參見下面Aggregator的實現。

  public static class KmeansVertex extends
    Vertex<LongWritable, KmeansValue, NullWritable, NullWritable> {

    @Override
    public void compute(
        ComputeContext<LongWritable, KmeansValue, NullWritable, NullWritable> context,
        Iterable<NullWritable> messages) throws IOException {
      context.aggregate(getValue());
    }
  }

3. Aggregator部分

整個Kmeans的主要邏輯集中在Aggregator中。首先是自定義的KmeansAggrValue,用以維護要聚合及分發的內容。

  public static class KmeansAggrValue implements Writable {

    DenseMatrix centroids;
    DenseMatrix sums; // used to recalculate new centroids
    DenseVector counts; // used to recalculate new centroids

    @Override
    public void write(DataOutput out) throws IOException {
      wirteForDenseDenseMatrix(out, centroids);
      wirteForDenseDenseMatrix(out, sums);
      wirteForDenseVector(out, counts);
    }

    @Override
    public void readFields(DataInput in) throws IOException {
      centroids = readFieldsForDenseMatrix(in);
      sums = readFieldsForDenseMatrix(in);
      counts = readFieldsForDenseVector(in);
    }
  }

KmeansAggrValue中維護了三個對象,其中centroids是當前的K個中心點,假定樣本是m維的話,centroids就是一個K*m的矩陣。sums是和centroids大小一樣的矩陣,每個元素記錄了到特定中心點最近的樣本特定維之和,例如sums(i,j)是到第i個中心點最近的樣本的第j維度之和。
counts是個K維的向量,記錄到每個中心點距離最短的樣本個數。sums和counts一起用以計算新的中心點,也是要聚合的主要內容。
接下來是自定義的Aggregator實現類KmeansAggregator,我們按照上述API的順序逐個看其實現。
首先是createStartupValue().

  public static class KmeansAggregator extends Aggregator<KmeansAggrValue> {

    public KmeansAggrValue createStartupValue(WorkerContext context) throws IOException {
      KmeansAggrValue av = new KmeansAggrValue();

      byte[] centers = context.readCacheFile("centers");
      String lines[] = new String(centers).split("\n");

      int rows = lines.length;
      int cols = lines[0].split(",").length; // assumption rows >= 1 

      av.centroids = new DenseMatrix(rows, cols);
      av.sums = new DenseMatrix(rows, cols);
      av.sums.zero();
      av.counts = new DenseVector(rows);
      av.counts.zero();

      for (int i = 0; i < lines.length; i++) {
        String[] ss = lines[i].split(",");
        for (int j = 0; j < ss.length; j++) {
          av.centroids.set(i, j, Double.valueOf(ss[j]));
        }
      }
      return av;
    }

我們在該方法中初始化一個KmeansAggrValue對象,然后從資源文件centers中讀取初始中心點,并賦值給centroids。而sums和counts初始化為0。
接來下是createInitialValue()的實現:

    @Override
    public KmeansAggrValue createInitialValue(WorkerContext context)
        throws IOException {
      KmeansAggrValue av = (KmeansAggrValue)context.getLastAggregatedValue(0);

      // reset for next iteration
      av.sums.zero();
      av.counts.zero();

      return av;
    }

該方法中,我們首先獲取上一輪迭代的KmeansAggrValue,然后將sums和counts清零,其實是只保留了上一輪迭代出的centroids。
用以執行局部聚合的aggregate()實現如下:

    @Override
    public void aggregate(KmeansAggrValue value, Object item)
        throws IOException {
      DenseVector sample = ((KmeansValue)item).sample;

      // find the nearest centroid
      int min = findNearestCentroid(value.centroids, sample);

      // update sum and count
      for (int i = 0; i < sample.size(); i ++) {
        value.sums.add(min, i, sample.get(i));
      }
      value.counts.add(min, 1.0d);
    }

該方法中調用findNearestCentroid()(實現見附件)找到樣本item歐拉距離最近的中心點索引,然后將其各個維度加到sums上,最后counts計數加1。
以上三個方法執行于所有worker上,實現局部聚合。接下來看下在AggregatorOwner所在Worker執行的全局聚合相關操作。
首先是merge的實現:

    @Override
    public void merge(KmeansAggrValue value, KmeansAggrValue partial)
        throws IOException {
      value.sums.add(partial.sums);
      value.counts.add(partial.counts);
    }

merge的實現邏輯很簡單,就是把各個worker聚合出的sums和counts相加即可。
最后是terminate()的實現:

   @Override
    public boolean terminate(WorkerContext context, KmeansAggrValue value)
        throws IOException {
      // Calculate the new means to be the centroids (original sums)
      DenseMatrix newCentriods = calculateNewCentroids(value.sums, value.counts, value.centroids);

      // print old centroids and new centroids for debugging
      System.out.println("\nsuperstep: " + context.getSuperstep() + 
          "\nold centriod:\n" + value.centroids + " new centriod:\n" + newCentriods);

      boolean converged = isConverged(newCentriods, value.centroids, 0.05d);
      System.out.println("superstep: " + context.getSuperstep() + "/" 
          + (context.getMaxIteration() - 1) + " converged: " + converged);
      if (converged || context.getSuperstep() == context.getMaxIteration() - 1) {
        // converged or reach max iteration, output centriods
        for (int i = 0; i < newCentriods.numRows(); i++) {
          Writable[] centriod = new Writable[newCentriods.numColumns()];
          for (int j = 0; j < newCentriods.numColumns(); j++) {
            centriod[j] = new DoubleWritable(newCentriods.get(i, j));
          }
          context.write(centriod);
        }

        // true means to terminate iteration
        return true;
      }

      // update centriods
      value.centroids.set(newCentriods);
      // false means to continue iteration
      return false;
    }

teminate()中首先根據sums和counts調用calculateNewCentroids()求平均計算出新的中心點。然后調用isConverged()根據新老中心點歐拉距離判斷是否已經收斂。如果收斂或迭代次數達到最大數,則將新的中心點輸出并返回true,以結束迭代。否則更新中心點并返回false以繼續迭代。其中calculateNewCentroids()和isConverged()的實現見附件。

4. main方法

main方法用以構造GraphJob,然后設置相應配置,并提交作業。代碼如下:

  public static void main(String[] args) throws IOException {
    if (args.length < 2)
      printUsage();

    GraphJob job = new GraphJob();

    job.setGraphLoaderClass(KmeansReader.class);
    job.setRuntimePartitioning(false);
    job.setVertexClass(KmeansVertex.class);
    job.setAggregatorClass(KmeansAggregator.class);
    job.addInput(TableInfo.builder().tableName(args[0]).build());
    job.addOutput(TableInfo.builder().tableName(args[1]).build());

    // default max iteration is 30
    job.setMaxIteration(30);
    if (args.length >= 3)
      job.setMaxIteration(Integer.parseInt(args[2]));

    long start = System.currentTimeMillis();
    job.run();
    System.out.println("Job Finished in "
        + (System.currentTimeMillis() - start) / 1000.0 + " seconds");
  }

這里需要注意的是job.setRuntimePartitioning(false),設置為false后,各個worker加載的數據不再根據Partitioner重新分區,即誰加載的數據誰維護。

總結

本文介紹了MaxCompute-GRAPH中的Aggregator機制,API含義以及示例Kmeans Clustering。總的來說,Aggregator基本步驟是,
1)每個worker啟動時執行createStartupValue用以創建AggregatorValue;
2)每輪迭代開始前,每個worker執行createInitialValue來初始化本輪的AggregatorValue;
3)一輪迭代中每個點通過context.aggregate()來執行aggregate()實現worker內的局部迭代;
4)每個Worker將局部迭代結果發送給AggregatorOwner所在的Worker;
5)AggregatorOwner所在worker執行多次merge,實現全局聚合;
6)AggregatorOwner所在Worker執行terminate用以對全局聚合結果做處理并決定是否結束迭代。

更多行業資訊,更新鮮的技術動態,盡在。


標簽:

本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn


為你推薦

  • 推薦視頻
  • 推薦活動
  • 推薦產品
  • 推薦文章
  • 慧都慧問
掃碼咨詢


添加微信 立即咨詢

電話咨詢

客服熱線
023-68661681

TOP
精品高清欧美日韩一区 | 国产欧美va天堂在线电 | 日本又黄又粗又大gif动态图 | 国产又色又爽又刺激在线观看 | 日韩美女欧美精品 | 亚洲春黄在线观看 | 国产午夜亚洲精品不卡免下载 | 国产超刺激玩弄美女在线播放 | 欧美在线精品国自产 | 女女同性一区二区三区在线 | 国产一区二区丝袜高跟 | 精品午夜福利在线观看 | 国产尤物在线观看 | 18黄人成网站在线观看 | 欧美88888在线观看国产 | 国产美女在 | 国产精品香蕉在线一区二区 | 国产在线91下载 | 成人一级午夜激情网 | 日韩欧美一级精品 | 韩国免费一级a一片 | 最近中文字幕完整版2025一页 | 99热66| 手机在线 | 国产精品视频一区二区噜噜 | 精品午夜日韩 | 国产精品va在线观看蜜臀 | 日韩在线观看视频 | 亚洲日韩在线中文字幕第一页 | 亚洲视频99 | 亚洲欧美日韩国产精品专区网 | 午夜成人 | 一区二区三区精品 | 日韩欧美tv一区二 | 欧美性爱大片在线播放 | 99久国产精品午夜性色福利 | 成人国产àv九色精品一区 | 亚洲天天网| 国产肥熟女视频一区二区三区 | 亚洲精品色午夜 | 青青青国产 | 国产性色αv | 乱子伦国产对白在线播放 | 午夜一区二区免 | 大地影院mv在线观看高清 | 欧美日韩在线播放成人 | 国产精品办公室沙发 | 精品一区二区三区四区激情 | 九操中文字幕在线观看 | 国产精品爽爽ⅴ?在线观看 亚洲免费一区二区 | 日韩精品极品视频在线观看免费 | 国产精品自在线拍国产下载 | 最近免费中文mv在线字幕 | 日韩精品一区91 | 国产凸凹视频 | 青青草中文字幕在线观看 | 国产一级特黄一级毛 | 国产欧色美视频综合二区 | 国产一线大片免费观看 | 亚洲va| 五月天婷婷激情 | 3对夫妇换着玩互换6 | 国产精品一区福利在线观看 | 日本aⅴ日 | 九1热综合这里都是真品 | 国产主播在线观看网 | 日韩中文字幕手机 | www.妞干网.com| 日本xx | 日韩激情电影在线观看 | 微拍秒拍福利一 | 精品国产免费一区二区三区五区 | 99re国产精品视频首页 | 日韩va不卡精品一区二区 | 老妇喷水一区二 | 成人日韩欧美精品 | 国产亚洲视频在线观看 | 欧美国产亚洲一区二区三区 | 成人福利免费观看体验区 | 国产精品福利自产拍在线观看 | 91成人国产网站在线观看 | 黄又色高清视频免费 | 手机国产视频 | 欧美激情一区二区三区中文字幕 | 欧美大胆a | 国产91刘玥在线观看 | 国产学生情侣偷 | 国产午夜在线观看视频 | 国产一区二区三四区 | 午夜福利在线观看亚洲一区二区 | 国产精彩视频一区二区在线观看 | 精品国产自在精品国产精华天 | 国产自拍后入在线观看 | 动漫精品中文字幕制服一区 | 国色天香天天影院综合网 | 国产老妇伦国 | 人综合在线观看 | 乱码在线卡一卡二卡新区豆瓣 | 色一情一乱一伦一区二区 | 精品国产高清自在线一区二区 | 92看片淫黄| 日本三级理论一区二区三区 | 欧美黑吊粗大猛烈18p | 免费福利电影 | 亚洲欧美国产 | 日韩精品一区在线 | 国产老熟女精品一区 | 麻酥酥哟视频在线播放 | 区小说区激情区图片区 | 午夜免费福利 | 国产1区在线看你懂得 | 91精品国产高清在线重 | 91国自啪| 免费观看色色影视特级 | 国产免费直播在线观看视频 | 91免费伊人 | 欧美日韩在线视频制服 | 果冻传媒视频一二在线观看 | 欧美日韩国产高清精品有 | 级欧美一级一级国产 | 日本旅遊情報一網打盡 | 成人黄人一级 | 国产亚洲欧美在线观看的 | 欧美日韩精品一区二区在线 | 国产精品香蕉一区二区三区 | 产免费一区二区三区视频 | yy8098三级国语 | 精品国产品香蕉在 | 国产一级a毛一级a看免费视 | 97se国产在线 | 欧美日韩网 | 99国精产品灬源码1688 | 亚洲精品国产品国语原创 | 日本理论片在线观看片免费 | 国产精品一区二区在线观看免费 | 噼里啪啦国语在线观看高清资源 | 亚洲高清一区二区三区不卡 | 国产精品高清尿小便嘘嘘主演 | 国产综合a级片视频 | 欧美变态另类系列sm | 国内精品自在自线视频在线观 | 国产国产人成免费视频77777 | 182tvc午夜福利在线观看污 | 亚洲大片精 | 国产精品午夜高清在线观看 | 姐妹5中国版 | 国产在线男生视频亚洲 | 亚洲人成网77777色在线播放 | 精品国精 | 日本网站 | 国产香蕉视 | 好吊妞人成视频在线观看 | 国产专区在线播放 | 国产人妖在线播放网址 | 男女爽爽午夜18 | 丁香花在线观看免费观看图片 | 亚洲人成色77777在线观看 | 99re热这里只 | 肥老上视频| 亚洲精品乱码一区二区 | 欧美精品国产日韩综合在 | 国产亚洲精品高清在线 | 在线成人亚洲一区电影 | 日韩电影在线观看永久 | 国产在线观看一区精品 | 中日韩精品视频 | 99热永久地址有精品 | 日本三级中文字版电影 | 国产午夜福利精品一区二区三区 | 中文字幕在线不卡精品视频99 | 亚洲免费青草视频在线 | 91成人国产网 | 69天堂网在线视频精品 | 亚洲日本精品国产一区vr | 欧美18videos | 日本欧美在线播放 | 国精品产露脸偷拍视频 | 日本一区二区三区成人免费观 | 污网站在线观看视频平台 | 精品午夜一区 | 亚洲动漫精品在线 | 国产日产成人免费观看日 | 精品免费一区二区三区在20 | 国产嫖妓免费视频 | 国产极品在线观看极品 | 日本xxxx高清色视 | 91福利免费体验区观看区 | 国产精品1024在线永久免费 | 国产午夜专区在线观看 | 国精产品一二二线网站 | 国产性生大 | 日韩欧美一区二区三区免费看 | 国产真人做爰免费视频 | 手机在线一区二 | 在线视频一区二区三区 | 好吊妞无缓冲不卡在线视频 | 日韩精品一区二区在线观看播放 | 精品国产一区二区三区高清观看 | 欧美日韩精品一区二区在线观看 | 精品一二三四区 | 91精品一区二区三区蜜桃 | 成人福利在线免费观看 | 国产又爽又黄免费 | 国内自拍视频一区二区三区 | 国产九九九全国免费视频 | 欧美嫩交一区二区三区 | 国产高清在线视频伊甸园 | 一级特黄aaa大片 | 国际b站免费视频入 | 精品厕所偷拍各类美女tp嘘嘘 | 国产视频aⅴ在线播放 | 欧美+日韩+极品 | 日本激情夜里视频在线观看 | 免费高清 | 91免费观看网站 | 99re国产精品视频 | 国产在线观看一区二区 | 国产人伦视频在线观看 | 国产综合在线观看一区 | 国产一区日韩二区欧美三区 | 中文字幕精品亚洲一区 | 老熟女网站 | 欧美、另类亚洲日本一区二区 | 日韩剧情片电影 | 日韩欧美一级大片 | 国产精品丝袜一区二区三区 | 中文字幕不卡 | a级国产乱理论片在线播放 国产精品日韩精品在线 | 国产美女一级做视须爱 | 日本成a人片在线观看网址 视频试看 | 国产乱理伦片a级在线观看 东京男人的天 | 国产丝袜视频 | 午夜理论片大全福利 | 在线视频观看 | 凹凸国产熟女精品 | 日韩欧美精 | 精品国产90后 | 免费视频精| 激情综合在线亚洲五月天 | 精品日韩网址导航 | 国产真实露脸精彩对白91 | 最新电影电视剧 | 性直播视频在线观看免费 | 日韩高清在线精品观看一区二区 | 日本素人黑人视频 | 禁止18岁啪 | 欧美五级在线观看视频播放 | 成人精品在线 | 亚洲精品资源网在线观看 | 国产91对白 | 亚洲国产片 | 欧美一区区三区四区五区在线观看 | 91绿奴论坛九色国产 | 国产黄页 | 另类欧美日韩精品一区二区在线 | 国产在线97免费观 | 欧洲裸毛bbbbbxxxx | 国产婷婷综合在线视频 | 国产+日韩精品 | 欧美日韩成人免费 | 乱伦免费影视亚洲 | 禁18怕啦啦啦视频网站 | 一本大道熟 | 国产精品三级在线播放 | 男女免费 | 日韩在线视频不卡一区二区三 | 免费网站看v片在线爱的影院 | 精品国产一区二区一区二 | 春宵福利app导航中心 | 国产一区二区丝袜美腿在线 | 日韩一区在线观看免费观看免费 | 在线a亚洲视频播 | 国产一区而二区亚洲 | 中文字幕一区日韩精品 | 精品国产午夜在线 | 日韩精品先免费一区二区三区 | 女同另类国产精品视频 | 国产欧美日韩视频在线观看 | 欧美视频精品一区二区 | 国偷自产中文二区三区蜜桃传媒 | 日韩性色一区二区三区 | 97色伦在线欧美视频播放 | 欧美国产日韩福利 | 欧美xxxxx高 成人拍拍 | 把你的香肠放入我的扇贝里 | 亚洲第一影院中文字幕 | 国产玉足脚交极品在线视频 | 久热欧美手机视频在线观看 | 国产开嫩苞实拍在线播放 | 国产福利在线观看第二区 | 亚洲免费在线国产视频午夜精 | 国产伦精一品二品三品 | 性色a码一区二区三区天美传媒 | 国产精品一区高清在线观 | 日本天堂免费观看 | 免费观看一区二区三区 | 欧美高清在线视频一区二区 | 精品视频手机在线观看免费 | 激情综合在线观看 | 亚州图片 | 欧美v亚洲v综合v国产v | 中文字幕高清免费日韩视频在线 | 97超级碰碰碰电影 | 欧美一级a视频免费放新闻 欧美午夜一区二区之蜜桃 门卫老头吮她 | 亚洲日韩一页精品发布 | 精品一区二区在线观看 | 欧美性理论片在线观看片免费 | 羞羞影院午夜男女爽 | 国产在线观看免费永久 | 精品国产一区二区三区在线 | 欧美jizzhd精品欧美巨大 | 大色综合色综合资源站 | 天天综合网~永久入口 | 女人让男人桶 | 韩国十九禁高清在线观看 | 久青草视频在线婷婷 | 国产午夜福利100集发布 | 日本成年人 | 国产高清综合 | 乱子轮熟睡1区 | 国产主播福利片在 | 全国男人的天堂亚洲 | 亚洲免费综合色在线视频 | 一区二线视频 | 91电影院| 国产在线观看h尤 | 中文字幕日韩专区 | 欧美日韩一区二区精品在线观看 | 在线看片免费人成视频福利 | j8又粗又大又长又爽又硬电影 | 青青操视频免费观看 | 91福利国产在线人成观看 | 国产精品福利电影一区二区三 | 亚洲视频福利 | 国产在线精品一区二区不卡 | gogogo免费高清在线 | 亚洲成aⅴ人片女在线观看 特级西西人体444ww | 日韩欧美制服丝袜在线播放 | a篇片在| 最近中文字幕免费高清mv视频6 | 成人欧美一区二区三区 | www国产 | 亚洲国产欧洲在线一区 | 欧美亚洲日韩中文字幕每日更新 | 动漫综艺手机在线观看 | 中文在线日韩亚洲欧美 | 羞羞色院91蜜桃在线观看 | 欧美日韩美女精品一区二区 | 天天插天天 | 在线播放精品一区二区三区 | 成人伊人精品色xxxx视频 | 国户一区二区免费视频 | 欧洲女人性开放免费网站 | 欧美人交性视频在线香蕉 | 日韩中文字幕中文有码 | 日韩精品一区二区三区影院 | 免费+国产在线观看 | 亚洲永久精品一二三网址永久导航 | aⅴ中文字幕在线日本 | 国产精品一区福利在线观看 | 日本高清在线天码一区播放 | 免费a级 | 91激情| 久青青视频在线观看久 | 国产精品一区二区尿失禁 | 国产偷窥女洗浴在线观看亚洲 | 成人国产精品秘在线观看免费 | 欧美高清另类自拍视频在线看 | 亚洲精品国产精品国自产网站 | 成人亚洲天堂 | 黄骗在线免费观看 | 91免费国产在线观看 | 中文字幕无线码一区2025青青 | 国产中文成人精品久v | 91?黑料?精品?国产 | 国产su | 成年午夜免费aⅴ在线观看 日韩老熟女一区二区 | 亚洲天堂网一区二区三区四区 | 精品国产乱伦一区二区三区 | 影视大全网 | 日本失禁成 | 免费的精品一区二区三区 | 亚洲一区二区三区视频 | 欧美日韩中文字幕一区二区三区 | 日本一区二区三区高清视频 | 办公室制服丝祙在线播放 | 免费在线观看小说区激情另类 | 日日澡夜| 岛国大片在线观看免费版 | 欧美日韩综合国产亚洲精品区 | 欧美日韩视频在线成人 | 日本大片免a费观看视频 | 最近日本韩国高清免费大全 | 国产精品亚洲片在 | 蜜桃视频一区二区三区在线观看 | 亚洲精品一区二区三区四区高清 | 欧美两性激情二区 | jizzyou| 国产一区二区三区精美视频 | 伊人开心激情网第一区 | 一级理论片免费观看在线 | 最新国产网红 | 日本欧美大 | 亚洲欧美日韩国产另例 | 欧美日韩在线观 | 日韩+欧美一区 | 天天咱天咱天干天谢 | 欧美产精品一线 | 欧美在线综合 | a一区二区三区乱码在线 | 国产精品一区二区免费 | 开开影院 | 欧美综合视频在线观看 | 一区二区视频在线 | 日韩欧美最新综合 | 精品夜恋影院亚洲欧洲 | 欧美高清一区二 | 国产69成人午夜福利在线 | 97中文字幕无线观 | 91香蕉亚洲精品人人影视 | 亚洲国产日韩欧美视频一区 | 欧美精品1区2区 | 日产国产一区二区 | 日韩亚洲欧美国产精品综合 | 午夜福利精品 | 视频精品全部国 | 国产美女视频国产视视频 | 国产又爽又黄又爽又刺激 | 国产免费人成视频 | 国产日韩一 | 日本动漫精品一区二区三区 | 欧美日韩国产免费一区二区三区 | 欧美性猛交xxxx乱大交 | 国产成本人片 | 在线午夜看片福利深夜导航 | 一区二区在| 99热国产在线播放只有精品 | 精品香蕉免费大视频日韩亚洲欧 | 国产又色又爽又黄又免费 | 香蕉国产一区二区 | 日韩亚洲欧美一区二区三区综合 | 国产欧美一区二区另类精品 | 国产的视频在线观看 | 99热这里都是国产精品 | 国产精品一卡二卡三卡 | 欧美69成人 | 国产欧美精品亚洲日本一区 | 欧美激情亚洲一区中文字幕 | 韩国三级日本三级在线观看 | 国产三区视 | 亚洲欧洲专线 | 91看片婬黄大片欧 | 国产精品最新资源在线 | 亚洲综合图| a级欧美 | 黑人巨大精品欧美一区二区在线 | 国产愉拍91九色国产 | 精品一区二区三区在线免 | 免费国产午夜视频在线 | 91区国产福利在线观看午夜 | 亚洲激情婷婷 | 99热永久地址有精品 | 欧洲欧美人成视频免费播放 | 国产一级特黄aa大片免费 | 凄辱护士日本电影免费看 | 91大神精品国产视频免费91 | 国产最新一区二区 | 日韩亚洲一区二区中文字幕 | 大香伊蕉人 | 国产乱国产乱老熟300部视频 | 97国产精华最好的产品亚洲 | 国产精品美妞一区二区三区 | 日韩国产欧美制服中文 | 色橹橹欧美在线观看视频高 | 国产在线欧美观看 | 亚洲欧洲国产日产综合综合 | 欧美激情亚洲专区一区二区 | 99re热这里只 | 三年片在线观看免费观看 | 欧美日韩国产色综合一二三四 | 免费a级片在线观看 | 亚洲一级qv无 | 黑人性较视频免费视频 | 国产欧美日韩综合aⅴ天堂 国产精品一区在线观看 | 国产九九自拍电影在线观看 | 欧美日韩一区二区高清不卡 | 好看动漫 | 日韩高清在线一区二区婷婷 | 又粗又大又黄又爽的免费视频 | 银杏视频推广下载入口 | 国产在线不卡免费高清dvd | 亚洲ssswww视频 | 国产又粗又长又黄又猛 | 欧美18岁×××喷水 | 92国产精品午夜福利免费 | 亚洲国产精品va在线观看无 | 中国老熟女重囗味hdxx | 亚洲国产精品福利片在线观看 | 办公室撕 | 国产大片b站免费观看推荐 国产成在人线在线播放 | 国产精品成人v | 国产乱子伦午夜视频观看 | 国产免费一区 | 国产在在线播放桑拿按摩视频 | 国产在线高清伦免费理视频 | 麻花豆传媒剧国产免费mv观 | 久青青在线观看视频国产 | 自宅警备员ova动漫 亚洲成片在线观看12345 | 国产免费高清在线精品一区 | 韩国理伦电影午夜三级 | 国产91白丝在线播放 | 日韩高清成 | 50章厨房激情双开 | 精品va在线观看 | 免费精品国偷自产在线2025 | 国产乱了真实 | 精品夜恋影院亚洲欧洲 | 国产免费人成视频在线观看 | 国产盗摄电影区9876色 | 日韩欧美在线观看视频 | 国产家教老 | 精品国产—亚洲人成在线 | 国产欧美一级高清片 | 免费无线乱码不卡一二三四 | 精品国语自产拍在线观看 | 草b视频在线免费观看 | 国产不卡视频在线播放 | 最近中文字幕2025免费 | 亚洲精品国偷拍自产 | 国产精品自产拍在线观看花钱看 | 91探花| 在线视频韩国 | 久你欧洲野花视频欧洲1 | 国产午夜亚洲精品午夜鲁丝片 | 成年女人爽到 | 日韩精品亚洲aⅴ在线影院 欧美性受xxxx狂喷水 | 好男人www社区 | 欧美性xxxxx极品老少 | 国产厨房一区二区三区 | 黄三级高清在线播放 | 日本大胆一区二区三区 | 亚洲国产精品特色大片观看完整版 | 91精品综合| 97在线观看视频公开免费 | xxx波多野| 91精品福利 | 亚洲欧美| 国产初高中生在 | 女人靠逼视频不卡的 | 4hu影视 | 国产毛多 | 成年女人爽到 | 亚洲欧美一区二区综合精品 | 国产一区二区三区免费在线观看 | 另类专区欧美制服丝袜 | 国产日本欧美在线观看乱码 | 人人爱天天做夜夜爽2025 | 欧美透逼 | 国产网红刘婷在线视频 | 亚洲а∨天堂在线网站 | 日韩精品成人亚洲专区在线电影 | 成全视频在线观看更新时间 | 天堂а√在线地址8中文种子 | h片在线观看免费观看视频 国产午夜在线激情视频 | 日韩亚洲制服另类 | 在野外被三个男人躁一夜 | 香港三级日本三级人妇三99 | 欧美va免费高清在线观看 | 日本亚洲视频在线不卡免费 | 欧美午夜激情影院 | 国产精品99精品一区二区浪潮 | 欧美日韩精品系列一区二区三区 | 国产乱辈的大片免费观看 | 丫头13第一次真紧 | 黑料不打烊最新2025地址 | 国内精品自在自线2025 | 九九精品视频 | 日韩一本二本在线观看视频 | 日本乱码一区二区三区视频 | 日韩国产欧美精品第二区 | 国产精品精品国 | 中文字幕亚 | 男人的天堂亚洲中文字幕 | 无限资源最| 日韩国产卡一卡二卡三卡四 | 亚洲精品欧美二区三区中文字幕 | 丰满岳乱妇在线观看中字 | 国产v视频在线亚洲视频 | 日韩成人免费电影 | 免费观看男女性恔配视频 | 国产偷国产偷精品孕妇 | 亚洲日韩成人 | 国产普通话对白视频高清 | 国产探极品在线观看观看 | 欧美日韩在线视频一区 | 91精品视频播放器在线观看 | 国产精品第八页 | 国产亚洲精品午夜高清影院 | 欧美午夜全部免费影院 | 国产精品4p露脸在线播放 | 视频观看免费国产最新 | 韩国一级真人片a级免观看 国产免费一级视频在线 | 厨房一次又一次的索要 | 国产一区二区四五区在线视频 | 国产精品碰碰现在自在拍 | 亚洲精品日韩精品一区 | 亚洲五月天综合 | 国产91视频 | 国产如狼似虎富婆找强壮黑人 | 免费手机在线看片 | 日韩精品一区二区三区 | 99精品一区二区三区 | 国产欧美精品国产国产专区 | 91啦中文成人 | 真实国产乱子伦 | 最近中文字幕在线中文高清版 | 欧美人与动性a欧美精品 | 999国内精品永久免费视频 | 日本一区二区五区在线观看 | 吾爱第一福利在 | 97久视频精品视频在线老司机 | 亚洲国产精品大秀在线播放 | 国产午夜在线观看 | 黄频国产免费观看 | 成人看的羞羞视频免费观看 | 日本一本免费一二区 | 女同女同精品一区二区 | 国产亚洲精品精品国产亚洲综合 | 亚洲日韩中文字幕一区 | 欧美日韩精品一区二区在线播放蜜 | 精品福利一区二区三区精品 | 国产91精品夜未央! 中文字幕在线免费看线人 国产精品a | 国产传媒在线观看 | 精品国产主播在线亚洲 | 97精产国品一二三产区 | 日本道免费一区不卡 | 国产一区二区亚洲一区二区 | 国产操女人 | 欧美日韩精品中文字幕 | 国产精品免费一级在线观看 | 国产日韩一区二区高 | 最近韩国电影hd在线 | 97公开视频 | 精品国产网站在线免费观看 | 午夜伦情电午夜伦情电影 | 日韩剧情片电影 | 亚洲a在线观看 | 99精品视频免费在线观看 | 青草第一视| 国产精品区一区二区三在线播放 | 日本道精品一区二区三区 | 国产精品自拍真实 | 男女爽爽午 | 国产精品亚洲五月天高清 | 国产精品日韩专区 | 国产超薄肉丝袜在线播放 | 国产亚洲欧美日韩综合一区二区 | 日韩播放自拍视频在线观看免 | 欧美亚洲综合卡通另类区 | 国产日韩另类视频一区 | 被蹂躏的奶水2在线播放 | 青青国产精品一区二区 | 国产最新在线一区二区 | 欧美伊人影院 | 成人一区专区在线观看 | 日本淫秽视频在线 | 奇米视频在线观看 | 欧美日韩亚州在线 | 三年片观看免费观看大全 | 国产拍偷自偷在线精品 | 国产一级爽快片在线观看 | 欧美色色一级有声色色色 | 国产区第一页 | 国产在线观看网址精品 | www亚洲伊| 4438全国最大成人 | 精品午夜国| 亚洲人成网站18 | 精品国产香蕉在线播出 | 国产免费在线观看一区二区 | 87国产私拍福利精品视频 | 中文字幕一区在线观看 | 日韩中文字幕精品一区在线 | 中日韩精品一区二区三区成人 | 岛国一区二区三区在线 | 老师你下面太紧进不去小黄文 | 欧美日韩国产在线一区 | 国产精品成熟老妇女 | 国产国语对 | 97噜色在线 | 日韩精品在线免费 | www黄在线观看 | 日本免费高清亚洲 | igao视频在线观看免费 | 国产女主播一区二区精品视频 | 日韩性色一区二区三区 | 国产日韩伊人va综合视频 | 91大神在线资源观看无广告 | 国产日韩欧美一区二区三区欧 | 国产传媒在线播放 | 中文字幕一区二区三区免费视 | 热播电视剧在线观 | 国内精品一区二区三区最新 | 99re热视频在线 | 欧美网站免费观看在线 | 不卡影院| 国产一进一出又大又粗爽视频 | 日韩一区视频精品无高清在 | 欧洲精品不卡1卡2卡三卡 | 日韩精品欧美亚洲高清有无 | 国产精品日韩欧美一区2区3区 | 欧美精品在 | 久而欧洲野花视频欧洲1 | 动画片大全大人动漫在线观看 | 欧美日韩国产视频 | 欧美经典日韩在 | 日韩欧美国产一区二区浪潮 | 海量热播电视剧手机电影在线观看 | 亚洲欧洲自拍图片 | 东营市:韩国美女vip | 欧美一级欧美一级高清 | 欧美日韩一二三四区在线观看 | 国产欧美日韩中文字幕 | 国产日韩欧美第二页 | 欧美国产日韩一区二 | 欧美高清在线视频一区二区 | 国产真实露脸乱子伦原著 | 国产香蕉一区二区在线网站 | 国产伦精品一区二区三视频 | 欧美性生 | 久爱精品亚洲电影午夜 | 日韩精品成人亚洲专区在线电影 | 91制片厂一样的应用 | 国产亚洲女同在线观看334 | 免费网剧电视剧大全 | 欧美性爱一区二区 | 欧美日韩一区二区三区自拍 | 91精品全国免费观看老司机 | 国产一级淫片免费播放 | 国产精品亚洲视频在线观看 | 日本高清免费中字 | 国际国内自拍偷拍视频摄影 | 日韩精品一区二在线观看视频 | 国产中文字幕亚洲 | 91综合永久在线观看 | 韩国中文全部三级伦在线观看中文 | 欧美日本三级级在线观看 | 96国产| 日本遊學打 | 国产草莓视频无a在线观看 国产传媒果冻天美传媒 | 欧洲乱码伦网站 | 国产乱码精品一区二区三区香蕉 | 国产秘精品入口免费软件 | 国产精品亚洲欧美在线观看 | 日本免费在线 | 日本一区二区免费更新高清 | 国产精品电影网在线好看 | 亚洲第一区欧美日韩 | 欧美精品狂躁 | 羞羞色院91蜜桃在线观看 | 亚洲高清一二三网 | 日韩国产精品一区二 | 成人欧美日韩一区二区三区 | 91popr国产在线观看 | 好吊妞无缓冲不卡在线视频 | 国产午夜亚洲精品 | 97在线视频人 | 国产精品亚洲片在线va | aⅴ在线视频男人的天堂 | 欧美激情精品久 | 狠日狠干日曰射 | 亚洲欧洲自拍偷拍 | 日本最新高清不卡一区二区 | 亚洲欧洲中文日韩 | 欧美性爱 | 日本h无羞动漫在线观看网站 | 国产一区二区三区 | 日本中文字幕一區二區三區不卡 | 精品国产一区二区免费不卡 | 中文字字幕在线中文乱码电影 | 观看国产 | 欧美午夜影视 | 国产乱码一区二区三 | 在线丝瓜 | 最新版本安卓下载 | 亚洲中文字幕精品第三区 | 精品欧美一区二区视 | 国产亚洲aⅴ在线电影 | 亚洲国产一区在线观看视频 | 乱码女一区二区三区 | 在线成人免费观看国产精品 | 日韩裸乳自拍视频网站在线观看 | 欧美黑人巨大videos精品 | 在线中文字幕不卡视频 | 国产精品亚洲欧美动漫卡通 | 精品全国在线一区二区 | 91啪国自产在线高清观看 | 国产专区一区 | 欧美性一 |