老司机夜插-理伦理片-理伦片免费-理伦片免费观看-理伦片免费看-理伦日韩-理论福利片-理论片第一页-理论片电影-理论片理论

金喜正规买球

實踐分享|基于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
久久久无码精品亚洲欧美 | 国产人妻无码一区二区三区18 | 吸吮乳尖 | 亚洲精品福利一区二区在线观看 | 免费无码又爽又刺激A片软 免费无码又爽又刺激A片小说在线 | 这里只有精品视频在线 | 九一抖音成长人版破解安装 | 免费永久在线观看黄网站 | 小莹的性荡生活38章 | 国产亚洲精品久久久久久移动网络 | 国产女人成人精品视频 | 不卡人妻无码AV中文系列APP | 日本欧美亚洲中文在线观看 | 艳情小区少妇教师小说 | 国产三级三级三级三级 | 色迷迷导航 | 国产一国产a一级毛片 | 日韩精品电影在线 | 黑人巨茎大战俄罗斯美女 | 日韩不卡在线播放 | 2020色愉拍亚洲偷自拍 | 精品丰满人妻AV久久久 | 国产色婷婷精品综合在线观看 | 少妇系列之白嫩人妻 | 亚洲一卡2卡三卡4卡app | 少妇内射高潮福利炮 | 精品欧美成人高清在线观看2021 | 亚洲一卡2卡三卡4卡app | 日本AAAA特级毛片 | 狠狠狠色丁香婷婷综合久久88 | 欧美激情一区二区三区AA片 | 亚洲 欧洲 国产 日产 综合 | 日本高清免费在线视频 | 欧美精品一区二区少妇免费A片 | 免费看国产成人无码A片 | 诱含整夜不拔h1v1 | 国内精品一区无码中文在线 | 精品一区二区三区无码AV久久 | 大学生高清一级毛片免费 | 久久久99视频 | 激情内射亚洲一区二区三区 | 国产chinesehdxxxx大胸 | 成人18网址在线观看 | 日韩国产人妻一区二区三区 | 成年人深夜福利 | 亚1州区2区3区4区产品乱码2021 | 国产妇女在线 | 波多野结衣中文字幕2022免费 | 午夜福利小视频400 午夜副利电影手机高清在线直播app下载 | HEZYO加勒比 一本高手机在线 | 97ai色| 精品久久伊人 | 伦理片飘花免费影院 | 成人做爰9片免费看网站 | 色导航网 | 澡人人澡人澡人人澡天天 | 日韩欧美一二三区 | 国产成熟妇人高潮A片 | 影音先锋影院中文无码 | 久久精品亚洲日本波多野结衣 | 亚洲黄色性视频 | 国精产品999永久中国有限公司 | 涩涩电影网站 | 久久国产精品久久久久久久久久 | 天堂一区二区在线观看 | 一区二区高清视频 | 小辣椒导航精品福利视频 | 国产精品人成视频免费999 | 都市激情综合网 | 葫芦娃.combo深夜释放自己 | 日本肉肉口番工全彩动漫 | 欧美日韩精品一区二区三区不卡 | 成免费播放观看在线视频 | 日本在线视频一区二区 | 99热网址| 免费做A爰片久久毛片A片 | WWW日韩AV免费高清看 | 中文字幕欧美日韩在线不卡 | 黄网免费在线观看 | 国产一级黄色网 | 国产精品久久久久久久专区 | 一区二区三区线日本 | 中文字幕热久久久久久久 | 中文字幕 国产 | bl文H全肉| 原来的琪琪电影在线看 | 亚洲国产精品VA在线看黑人 | 日韩福利视频高清免费看 | 三级日韩| 国产精品内射后入合集 | 久久久日韩成人精品电影 | 成年在线观看免费高清完整版视频 | 亚洲欧美日本国产综合在线 | 182tv在线看 1769国内精品观看视频 | 正在播放重口老熟女露脸 | 搭讪的法则迅雷下载 | 夜夜躁日日躁狠狠久久 | www.伊人网| 高考陪读妇乱子伦小说长篇 | 日本无码精油按摩WWW视频 | 波多野结衣1区 | 91精品福利一区二区三区野战 | 色欲AV亚洲午夜精品无码电影 | 亚洲 无码 在线 专区 | 999久久国产精品免费人妻 | 日本免费一区视频 | 韩国医院的特殊待遇5 | 国模少妇一区二区三区A片 国内精品A片XXX久久久 | 婷婷丁香五月激情综合在线 | 91精品国产一区 | 国产美女视频免费观看的网站 | 班长坐在我的腿上娇喘 | 久久h视频| 日韩在线视频观看在线看 | 亚洲色欲色欲www在线观看 | 国产强伦姧人妻电影 | 中文字幕免费播放 | 蝌蚪窝在线观看高清 | 在线观看国内自拍 | 俺去也官网 | 欧美干b| 亚洲一卡一卡二新区乱码无人区二 | 无码日韩人妻精品久久蜜桃免费 | 欧美伦无码电影大开眼戒 | 伊人网站 | 毛片小说 | 欧美干b| 国内精品美女视频免费直播 | 国产精品久久人妻拍拍水牛影视 | 五月天婷婷免费视频观看 | 毛片新网址 | 国产精品国产高清国产专区 | 激情小说在线观看 | 欧美夜夜噜2024最新 | 王伟忠周梦莹最新章节 | 91精品国产亚洲爽啪在线观看 | 2021天天躁狠狠燥 | 伊人久久精品亚洲午夜 | 一本久道综合五月色婷 | 欧美韩国日本 | 国产精品久久人妻互换 | 老司机精品视频一区二区 | 视频二区欧美 | 综合九九 | 卯月麻衣作品 | 美日韩免费视频 | 性瘾日记百度影音 | 狠狠操夜夜 | 男人扒开女人腿桶免费视频 | 欧美激情精品久久久久久久 | 91制片厂制作果冻传媒八夷 | 国产123区在线视频观看 | 日韩精品一区二区三区中文3d | 亚洲第6页 | 99re在线观看视频 | 肉乳床欢无码A片动漫无尽 肉乳乱无码A片观看免费 | 在线v片免费观看视频 | 午夜福利视频合集1000 | 快穿之被系统肉到哭H | 国产精品国产精品国产三级普 | 小日本在线观看免费视频 | 精品国产成人AV在线看 | 91极品视频 | 亚洲高清国产拍精品动图 | 免费观看又色又爽又黄的忠诚 | 国产又爽又黄无码无遮挡在线观看 | 91在线欧美 | 亚洲第一卡二新区乱码 | 好看的毛片 | 亚洲精品久久久久久久观看 | 成人午夜又粗又硬又长 | 久久精品午夜一区二区福利 | 亚洲精品蜜夜内射 | 欧美色偷偷亚洲天堂bt | 国产一级第一级毛片 | 福利网址在线 | 国产69精品久久久久99不卡 | 国内精品一卡2卡3卡四卡 | 免费网站色 | 成人亚洲精品久久久久软件 | 福利视频一二三在线观看 | 久久亚洲欧美 | 免费观看一级成人毛片软件 | 国产精品久久久久人妻无码网址 | 亚洲AV综合色情区一区 | 日韩免费一区二区三区在线 | 日韩国产精品99久久久久久 | 国产农村妇女精品一二区 | 一个人看www免费高清 | 欧美三级黄色大片 | 日本无码一二三区别免费 | 国产精品高潮呻吟久久影视A片 | 久久精品这里只有精品 | 亚洲A片V一区二区三区有声 | 五月婷婷丁香综合 | 久久精视频| 亚洲欧美日韩中文加勒比 | 大胆国模GOGO人体私拍 | 欧美一级视频免费 | 日本一道免费d v d | 亚洲午夜精品A片久久WWW软件 | 日本综合视频 | 欧美午夜视频在线观看 | 成人久久精品一区二区三区 | 国产成人精品午夜 | 久操免费视频 | 漂亮少妇啪啪高潮大叫小说 | 亚洲A片V一区二区三区有声 | 欧美黑人在线 | 99精品久久久久久久 | 国产精品沙发午睡系列990531 | 成人午夜毛片在线看 | 日b在线观看| 在线不卡日本v二区 | 欧美成人精品一区二区综合A片 | 国产综合久久久久 | 欧美另类人妖 | 色综久久 | 国产日本高清免费视频在线观看 | 日b视频免费 | 色婷婷色综合缴情网站 | 最近韩国中文字幕更新 | 久久综合中文字幕 | 伦理97| 少妇性L交大片免 | 99视频免费观看 | 国产超碰AV人人做人人爽 | 国产又爽又大又黄A片另类 国产又爽又大又黄A片软件 | 97色伦图区97色伦综合图区 | 欧美一区二区三区视频在线 | 丰满岳乱妇一区二区三区 | 中文字幕A片视频一区二区 中文字幕亚洲乱码熟女在线 | 国产精品久久影院 | 亚洲精品亚洲人成人网裸体艺术 | 日本a∨在线| 精品AV亚洲乱码一区二区 | 2019国产最新视频在线观看 | 色插图午夜影院 | 国产一区二区三区乱码在线观看 | 玫瑰之战免费观看全集在线 | 天天操天天干天天射 | 嫩草国产福利视频一区二区 | 欧美性XXXXX极品娇小 | 日本久久不射 | 四虎影午夜成年免费精品 | 男人吃奶捏奶很爽视频免费 | 神兵小将第一季免费观看 | 亚洲免费无码中文在线 | 在线欧美一区 | 欧美区一区二 | 久久道 | 久久不卡一区 | 成人天堂婷婷青青视频在线观看 | 国产精品免费一区二区三区四区 | 午夜精品人妻无码一区二区三区 | 91精品国产91 | 国产人妻大保健私密推油按摩无码 | 国精产品999永久中国有限公司 | 亚洲AV成人无码网天堂 | 国产 亚洲 中文字幕 在线 | 人妻无码AV中文系统久久免费 | 麻豆亚洲精品中文字幕一麻豆 | A片色情内射无码久久 | 一本到12不卡视频在线dvd | 免费在线看黄网站 | 守寡的岳引诱我岳潮湿的肥厚 | 美美哒韩国直播在线视频 | 自拍视频在线观看亚洲福利 | 韩剧甜性涩爱 | 亚洲精品无码AAAAAA片 | 国产 日韩 欧美 综合 激情 | 天堂18| 97久久人人 | 国产成人免费不卡在线观看 | 色情毛片AAAAAA片 | 无码缴情做A爱片毛片A片 | 亚洲天堂男人影院 | 欧美在线观看 cao38 | 天天射天天干天天插 | 伦理三级电影在线观看 | 国产三级一区二区三区 | 国内自拍 在线 亚洲 欧美 | 91精品天美精东蜜桃传媒免费 | 午夜干b| 午夜小网站 | 日韩精品一区二区三区AV在线观看 | 91福利一区二区 | 高黄H文各种姿势PLAY道具1V1 | 欧美精品成人一区二区在线观看 | 国内精品一卡2卡3卡四卡 | 91po国产在线精品免费观看 | A片无码AV看免费大片在线喝奶 | 亚洲欧美成人综合久久久 | 洗澡被公強奷60分钟 | 国产妇女视频 | 波多野结衣免费播放 | 国产免费三级a在线观看 | 久久久免费看少妇高潮A片特黄 | 色老太XXXBBBXXX | 黄页网站在线免费观看 | 香蕉大美女天天爱天天做 | 欧美日韩一二区旡码高清在线 | 校花被扒衣吸乳羞羞漫画 | 粉嫩小又紧水又多A片 | 欧美与黑人午夜性猛交久久久 | 91av综合| 帝王被大臣们调教高肉 | 国产欧美日韩另类精彩视频 | 换脸国产AV一区二区三区 | 免费无码又爽又刺激A片涩涩在线 | 色综合精品久久久久久久 | 99久久精品国产一区二区 | 熟女人妻上司中文字幕 | 久久福利网站 | 亚洲伊人色综合久久天天伊人 | 人妻丰满精品一区二区A片 人妻换人妻AA视频 人妻激情综合久久久久蜜桃 | 激情啪啪网站 | 亚洲AV色情成人www | 欧美三级在线播放线观看 | 久久人妻国产精品31 | 国产中文字幕久久 | 99精品成人无码A片 99精品成人无码A片观看金桔 | 一级黄色片免费看 | 中文字幕永久在线 | 玖玖资源站365日更新入口 | www.日韩视频 | 少妇性夜夜春夜夜爽A片 | 亚洲精品第一国产麻豆 | 又黄又大又猛的A片 | 欧美极品一区 | 在线观看动漫 | 久久精品一区二区 | 男人猛躁进女人的毛片A片小说 | 中文字幕在线观看免费视频 | 国产成人精品视频一区 | 中文字幕在线有码高清视频 | 欧美色妞网 | 国产精品久久久久人妻无码网址 | 无码精品A片一区二区电影在线 | 色视频在线观看网站 | 草莓.combo2.1深夜释放自己污在线观看 | 麻豆视频免费观看 | 一区二区三区美女视频 | 一级毛片免费观看不卡视频 | 伧理片午夜伧理片毛片日本 | 国产精品久久久久久久久kt | 午夜时刻免费入口 | 手机看片日韩日韩国产在线看 | 欧美日韩精品一区二区在线播放 | 日韩 高清 无码 人妻 | 手机在线黄色 | 99热在线这里只有精品 | 天天综合干 | 成人A片产无码免费视频软件 | 免费看大黄高清网站视频在线 | 精品午夜一区二区三区在线观看 | 再插深点嗯好大好爽 | 黄色一级片在线免费观看 | 日日cao| 亚洲国模私拍人体gogo | 亚洲色欧美图另类综合 | 一本色道久久综合狠狠躁 | 欧美一级久久久久久久大 | 日韩不卡一卡二卡3卡四卡2021免费 | 久久99热在线观看7 久久好在线视频 | 天天综合网网欲色 | 狠狠色噜噜狠狠狠888奇米 | 亚洲qingse中文字幕久久 | 国产亚洲精品资源在线26u | 三级网络免费地址 | 国产精品密蕾丝视频下载 | 日本午夜免费福利视频 | 青草tv| 2022国产91精品久久久久久 | 鸭王精品一区二区 | 久久99久久精品97久久综合 | 污污的漫画小说羞羞漫画 | 嗯宝贝叫的再浪一点 | 久久99国产精品成人 | 美女议员被泄裸照 | 亚洲精品美女偷拍一区二 | 91香蕉成人免费网站 | 免费一级片视频 | 丁香婷婷激情综合 | 国产综合久久久久久鬼色 | 国内精品人妻无码久久久影院蜜桃 | jizz孕妇孕交 | 国产99久久九九免费精品无码 | 国产精品人妻一区夜夜爱 | 亚洲人成www在线播放 | 久久99麻豆婷婷AV1区2区 | 日日碰狠狠躁久久躁孕妇 | jizz国产精品 | 亚洲情综合五月天 | 欧美另类xxx | 国产免费无码又爽又刺激A片小说 | 麻豆人妻无码性色AV | 国产视频亚洲精品视频 | 日韩美女免费线视频 | 丝袜视频网在线观看 | 快播网站导航 | 国产亚洲精品久久久久久无亚洲 | 国产一性一交一伦一A片小说 | 裸体BBBBBBBBB| 久久久无码精品亚洲欧美 | 日韩吃奶摸下AA片免费观看 | 两性影院 | 欧美日韩精品一区二区三区视频播放 | 欧美影院入口 | 亚洲国产精品综合久久久 | 国产精品美女自在线观看免费 | 亚洲品质自拍网站 | 午夜成人影视神马 | 抽插内射高潮呻吟爆乳 | 亚洲人成无码久久久AAA片 | 2018天天拍拍天天爽视频 | 成人做爰A片免费看视频 | аⅴ资源天堂8在线 | 美女内射毛片在线看 | 中国少妇VIDEOS露脸HD | 91女神精品系列在线观看66 | 国色天香精品一卡2卡三卡4卡 | 久久机热视频免费 | 日本无码WWW在线视频观看 | 色情成人小说一区 | 古装全套 毛片 | 色视频在线播放 | 波多野结衣一二区 | 桃子视频免费观看完整版HD | 中文一级毛片 | 色秀视频免费网站在线观看 | 青草视频免费在线观看 | 精品一级毛片 | 91福利精品老师国产自产在线 | 奇米777四色影视在线播放 | 亚洲精品久久久久久中女字幕 | 久久一本色道综合 | 毛片毛片毛片 | AV无码国产精品午夜A片 | 免费一区在线观看 | 日韩精品一区二区三区国语自制 | 97人妻一区二区精品免费 | 亚洲欧美日韩国产手机在线 | 青草娱乐极品免费视频 | 无码AV在线观看一区二 | 激情夜色 | 成都影院免费高清完整版 | 国产老女人一区二区A片 | 日韩欧美高清色码 | 九九天天影视 | 桃子视频直播高清在线 | 日日噜噜夜夜狠狠久久丁香婷婷 | 久久精品视 | 最近免费高清版电影在线观看 | 久久精品国产99久久久 | 国产精品成人观看视频免费 | 久久日本精品国产精品 | 朱竹清把我夹得又紧又爽 | 自拍亚洲在线播放视频 | 性xxxx欧美高清 | 波多野结衣免费一区二区三区香蕉 | 六月婷婷在线观看 | 久久99精品久久久久久园产越南 | 少妇人妻丰满做爰XXX | 成人A片一区二区三区在线观看 | 男男高H啪肉Np文多攻多一受 | 亚洲自偷自拍另类图片 | 91蜜桃麻豆| 人人在线碰碰视频免费 | 91在线视频福利 | 国产一级一级毛片 | 五月色婷婷亚洲男人的天堂 | 亚洲大码熟女在线 | 亚洲国产熟妇无码一区二区三区H | 日本韩国香港三级 | 91精品福利一区二区三区野战 | 啪啪内射少妇20241027 | 97色伦图区97色伦综合图区 | 伊人久久久综在合线久久在播 | 91高清免费国产自产拍2021 | 抖音成长人版 V2.3.1 无限观看版 | 国产成人一区二区三中文 | 黑人外教啪啪中国女留学生 | 国产欧美精品一区二区色综合 | 五月综合色婷婷影院在线观看 | 国产成人精品一区二区免费 | 污污在线网站 | 爱你几何在线观看 | 成熟妇女A片高潮免费看 | 啊灬啊别停灬用力啊免费看 | 在线观看免费av网站 | 日本无码人妻精品一区二区视频 | a久久久久一级毛片护士免费 | 美女解开胸衣露出奶头的游戏 | 一个人看www免费 | 黄色网址免费观看视频 | 亚洲 综合 欧美在线视频 | 亚洲精品国产第一区第二区 | 99热在线精品播放 | 午夜精品在线视频 | 波多野结衣视频一区二区 | 香蕉人人超人人超免费看视频 | 日本一品道无码免费专区在线观看 | 性xxxx视频在线观看 | 曰曰鲁夜夜免费播放视频 | 黄色免费网络 | 欧美极品xxx| 91精品国产亚洲爽啪在线观看 | 偷拍亚洲网友图片区 | 毛片资源 | 黄色免费网站在线看 | 精品久久伦理中文字幕 | 欧美另类老妇 | 成人超级碰碰免费视频 | 黄站视频 | 色多多APP推广二维码 | 欧美日韩色情FTP在线播放 | 国精产品999永久中国有限公司 | 色情成人影院欧美激情 | 国产资源视频在线观看 | 亚洲精品久久久久久久观小说 | 欧美精品网站 | 亚洲精品久久久久久无码AV | 毛片高清一区二区三区 | 精品精品国产自在久久高清 | 日本理论片午午伦夜理片2021 | 天堂中文资源在线地址 | 久久发布国产伦子伦精品 | 国产精品涩涩涩视频网站 | 免费又黄又硬又爽大片 | 国产成人综合自拍 | 无套内射无矿码免费看黄 | 中文字幕AV在线一二三区 | 亚洲青草视频 | 亚洲精品久久麻豆蜜桃 | 亚洲欧美v国产一区二区 | 国内精品久久久久久 | 国产欧美另类久久久精品免费 | 国产无遮挡A片无码免费软件 | 日本 韩国 亚洲 欧美 在线 | 久久精品国产99国产精品免费看 | 亚洲 国产专区 校园 欧美 | 甜性涩爱bt种子 | 色欲久久精品AV无码 | chinese老太交视频在线观看 | 性夜黄A片爽爽免费视频 | 她的两片蚌肉张开白浆直流 | 羞国产在线拍揄自揄视频 | 九一传媒果冻制片厂 | 琪琪电影网伦理片韩国 | 一个人看的www播放高清 | 久久婷婷五月综合色丁香花 | 应韩国伦理片 | 五月婷婷激情网 | 三级免费黄色片 | 亚洲丁香婷婷综合久久小说 | 少妇高潮惨叫久久久久久欧美 | 色妞色视频一区二区三区四区 | 日韩欧美三级在线 | 国产又黄又爽又刺激的免费网址 | 免费看成人AA片无码视频吃奶 | 日本激情影院 | 亚洲AV久久无码精品九九软件 | 最新中文字幕在线播放 | 色络络中文网 | 国内精品影院久久久久 | 青草内射中出高潮 | 狠狠骚| 国产午夜精品理论片在线 | 少妇和黑人老外做爰 | 日本少妇做爰大尺裸体 | 国产一级久久久久久毛片 | 午夜福利视频集合1000 92 | 秋霞一级| 波多野结衣在线影视免费观看 | 花房姑娘免费观看8集电视剧高清 | 日本韩国台湾香港三级 | 在线观看a网站 | 五男一女NP慎入H小说 | 久久国产精品无码视欧美 | 午夜片神马影院福利 | 丁香五月啪激情综合 | 五月婷婷激情 | 亚洲精品乱码8久久久久久日本 | 91在线网址 | 日韩精品视频在线观看免费 | 免费无码一区二区三区A片百度 | 久久亚洲w码s码 | 狠狠的撸2016最新版 | 理论片带中文2019 | 导航在线| 要色地址 | 亚洲一区精品伊人久久 | 伊人角狠狠狠狠 | 黄在线视频播放免费网站 | 午夜免费观看视频 | 8x永久在线视频 | 麻豆XXXXXX在线观看 | 国产亚洲精品成人AA片在线播 | 校园黄乱色伦短篇小说 | 国外精品视频在线观看免费 | 国产真实伦在线观看视频 | 国产精品卡一卡2卡三卡网站 | 男女性高爱麻豆 | 影音先锋女人AA鲁色资源 | 日本免费精品视频 | 小污女导航福利入口 | 男同桌上课时狂揉我下面污文 | 精品一品国产午夜福利视频 | 中文乱码字幕视频观看网站免费 | 天天综合天天看夜夜添狠狠玩 | 把女人弄爽A片特黄大片在线 | 久久综合结合久久很很很97色 | 国产又黄又猛又粗又爽的A片动漫 | 亚洲国产精品嫩草影院永久 | 婷婷开心中文字幕 | 青青青国产精品手机在线观看 | 啊快进去好深用力啊使劲 | 亚洲日韩区在线电影 | 亚洲人成小说网站色 | 国产成人综合精品一区 | 国产日韩欧美一区二区三区在线 | 天堂网2021天堂手机版丶 | 影音先锋中文无码一区 | 日本H无码黄肉动漫后宫 | 日本三日本三级香港三级 | 成年免费大片黄在线观看岛国 | 97在线线免费观看视频在线观看 | 欧美国产一区二区三区激情无套 | 日日摸夜夜添夜夜添A片公司 | 欧美日韩免费一区高清 | 亚洲第一综合天堂另类专 | 美女内射视频WWW网站午夜 | 国产另类ts人妖一区二区 | 国产国语一级a毛片高清视频 | 久久九九久精品国产尤物 | 欧美日韩一区二区三区免费不卡 | 免费国产成人高清在线网站东京 | 99精品在线视频观看 | 国产大片线上免费观看 | 国产男女猛烈无遮挡A片软件 | 日本高清视频免费在线观看 | 精品一区二区三区四区五区六区 | 日韩亚洲精品无码一区二区 | 天天干天天草天天 | JIZZJIZZ日本护士水多多小说 | 丁香婷婷综合五月综合色啪 | 古代荡女丫鬟高H辣文纯肉 古代高H啪肉NP文 | 亚洲欧洲免费三级网站 | 欧美成人大色情大片破碎的拥抱 | 亚洲成成品源码中国有限公司 | 黑人大操白富美 内射 | 久久婷婷五月国产色综合 | 国产综合一区二区三区 | 亚洲色欧美 | 黄 色一 片 级 日本 | 首页欧美日韩在线观看 | 九九香蕉 | 成人国产综合 | 狠狠五月深爱婷婷网免费 | 国产91一区二区在线播放不卡 | 欧美一级美片在线观看免费 | YELLOW字幕中文字幕免费 | 特级毛片绝黄A片免费播冫 特级毛片在线大全免费播放 | 久久精品国产精品亚洲蜜月 | 五月天社区 | 小小水蜜桃视频高清在线观看1 | 一级毛片成人免费看a | 亚洲精品久久久久一区二区 | www好男人精品视频在线观看 | 欧美一级www片免费观看 | 国产精品久久久久久日本 | 在线观看成人片韩剧 | 久青草国产观看在线视频 | 国产精品成人无码A片免费软件 | 把女人弄爽A片特黄大片在线 | 校园刺激全黄H全肉细节文 校园激情人妻古典武侠 | 中文字幕三级在线不卡 | 99精品视频在线观看 | 乱码一区入口一欧美 | 日本在线亚洲 | 99精品视频免费在线观看 | 91在线网址 | 青青热久免费精品视频在app | 情色五月天网址 | 欧美一线高本道高清免费 | 国产又粗又黄又爽的A片小说 | 天天干天天操天天做 | 99re热视频在线 | bl文库肉yin荡受 | 最近免费高清版电影在线观看 | 午夜免费观看视频 | 趴在办公室被老板们C | 亚洲美洲韩美在线观看 | 亚洲视频日本有码中文 | 久久人人爽爽人人爽AA片 | 波多野结衣日韩 | 福利区站| 校草上课时狂揉我下面 | 国产 欧美 亚洲 中文字幕 | 天堂资源8中文最新版在线 天堂资源8中文最新版 | 高h全肉纯肉 高质量 | 亚洲另类自拍 | 亚洲天堂91 | 免费无码又爽又刺激高潮视频日本 | 国产人妻午夜在线无码 | 欧美性性性 | 欧美一区二区三区高清不卡tv | 男人边吃奶边摸边做刺激情话 | 免费看一毛一级毛片视频 | 国产亚洲欧美在线观看的 | 婷婷免费视频 | 亚洲日本欧美日韩高观看 | 乱肉杂交怀孕系列小说BL | 夜夜爱夜夜操 | 91精品福利在线 | 97色成人网 | 青青草a免费线看 | 隔壁邻居大乳在线播放 | 中文字幕一区二区在线播放 | 亚洲精品一区二区三区婷婷月色 | 久久精品国产99国产精偷 | 中文字幕高清在线中文字幕 | 亚洲精品午夜一区二区电影院 | 女同学粉嫩无套第一次 | 亚洲福利天堂 | 偷偷狠狠的日日2020 | 在线视频永久免费网站 | 免费福利资源站在线视频 | 色视频网站色视频播放 | 韩国黄色毛片 | 男女生性毛片免费观看 | 免费A级毛片无码鲁大师 | 欧美大穴 | 精品亚洲国产熟女福利自在线 | 亚洲欧美日韩国产一区图片 | 男女做爰猛烈动高潮A片色情 | 四虎最新在线永久免费 | 热99这里有精品综合久久 | 色婷婷在线观看视频 | 邻居寂寞人妻中文字幕 | 亚洲另类激情综合偷自拍图 | 亚洲精品中文字幕无码A片老网站 | 波多野结衣中文字幕一区二区 | 美国亚洲成年毛片 | 鸥美毛片 | 免费看国产黄线在线观看 | 亚洲国产成人九九综合 | 色多多深夜福利免费观看 | 好硬好湿好大再深一点动态图 | 刘涛一级毛片 | 99视频网站 | 玖玖视频网 | 三妻四妾高清完整版在线观看免费 | 久久这里有精品视频 | 中国 韩国 日本 免费看 | 欧美性生恔XXXXXDDDD | 在线观看日本免费 | 秋霞国产 | 日韩精品免费一线在线观看 | 在线色网址 | 国产精品扒开腿做爽爽爽视频 | 国产精品99久久久久久小说 | 91精品久久久久久久99蜜桃 | 国产激情久久久久影 | 久久精品免费 | 草草影院在线观看 | 91在线中文字幕 | 成年香蕉大黄美女美女 | 女主播在线观看 | 国产资源视频 | 国产三级视频在线 | 特级做A爰片久久毛片A片喷水 | 亚洲综合色婷婷 | 天天做夜夜做久久做狠狠 | 成人a一级毛片免费看 | 久久爱色综合天天综合网 | 国语乱码中文字幕 | 国产 日韩 欧美 高清 亚洲 | 欧美亚洲日本国产 | 在线观看黄片 | 一起探恋爱综艺在线观看第七期 | 在线毛片一区二区不卡视频 | 国产综合欧美日韩在线 | 性感美女毛片 | 一女六男NP慎入H | 草草免费视频 | 影音先锋av男人色情 | 欧美又长又大又深又爽A片特黄 | 国产午睡沙发系列大全 | 国产成人影院在线观看 | 真人做A免费观看 | 特级做A爰片毛片免费69 | 2018天天拍拍天天爽视频 | 中文字幕一卡二卡三卡四卡免费 | 一本大道熟女人妻中文字幕在线 | 国产精品人妻一区二区三区四 | 狠狠干狠狠干狠狠干 | 一级美国乱色毛片 |