国产秋霞理论久久久电影-婷婷色九月综合激情丁香-欧美在线观看乱妇视频-精品国avA久久久久久久-国产乱码精品一区二区三区亚洲人-欧美熟妇一区二区三区蜜桃视频

Spark讀寫Hbase(用戶畫像)

共 12408字,需瀏覽 25分鐘

 ·

2021-08-13 22:34

背景

依舊是公司用戶畫像項目,目前方案是將hive聚合之后的標簽表全部倒入mysql,然后在ES建立索引,雖然限定了最大查詢范圍為90天的數(shù)據(jù),但是面對千萬級的用戶量,90天的數(shù)據(jù)依舊是非常龐大,每天查詢的效率依舊是在30分鐘以上,所以準備對這塊進行優(yōu)化。

在公司層面進行調研之后發(fā)現(xiàn),公司遺留了一個小的Hbase集群,集群配置:

1 active master, 1 backup masters, 2 servers。

但是問題是集群的版本為:1.1.2,非常低,在上篇文章中:

為了做用戶畫像的流程打通,本地建立的Hbase版本為1.3.6,spark版本為2.4,所以整套體系都不支持公司原來的hbase集群體系,為了保障之后的用戶畫像能落地,有兩套解決方案:

1、公司層面的Hbase集群升級,由于歷史包袱太重,之前的版本雖然老,但是依舊有部分的數(shù)據(jù)在上面跑,如果版本升級,后續(xù)對應的下游系統(tǒng)中間件可能會出現(xiàn)不兼容的問題,而且在Hbase層做適配需要調研太多的下游業(yè)務的使用場景,成本太高,所以未選用。

2、將本地的偽分布式Hbase進行降級,同時spark版本也進行降級處理。目前測試環(huán)境選定的Hbase版本為1.1.2,spark版本為2.1.1。

下面的文章主要是基于這兩個版本的中間件,進行spark對Hbase的讀寫操作。

介紹

1、Hbase版本降級,1.1.2版本為2015年的版本

wget archive.apache.org/dist

2、按照上篇文章對Hbase進行配置和按照測試

訪問頁面:localhost:60010/master-

啟動hbase shell,并插入數(shù)據(jù):

Scan的結果:Row_key、列族、列名、時間戳、value值

實際結果用圖標展現(xiàn)為:

轉換為常見的關系型數(shù)據(jù)庫的視角來看的話:

從表述中能看出來在關系型數(shù)據(jù)庫中的存儲同一份數(shù)據(jù)需要3行,而在Hbase是一行的,而且同一個列族是在同一個Store里面的,更加方便查詢。

3、修改pom.xml文件

    <properties>
<scala.version>2.11</scala.version>
<spark.version>2.1.1</spark.version>
<hadoop.version>2.7.7</hadoop.version>
</properties>

<repositories>
<repository>
<id>scala-tools.org</id>
<name>Scala-Tools Maven2 Repository</name>
<url>http://scala-tools.org/repo-releases</url>
</repository>
</repositories>

<pluginRepositories>
<pluginRepository>
<id>scala-tools.org</id>
<name>Scala-Tools Maven2 Repository</name>
<url>http://scala-tools.org/repo-releases</url>
</pluginRepository>
</pluginRepositories>

<dependencies>
<dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-library</artifactId>
<version>2.11.8</version>
<!-- <scope>provided</scope>-->
</dependency>

<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-core_${scala.version}</artifactId>
<version>${spark.version}</version>
<!-- <scope>provided</scope>-->
</dependency>
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-sql_${scala.version}</artifactId>
<version>${spark.version}</version>
<!-- <scope>provided</scope>-->
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.14</version>
</dependency>

<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.4</version>
<!--<scope>test</scope>-->
</dependency>
<dependency>
<groupId>org.specs</groupId>
<artifactId>specs</artifactId>
<version>1.2.5</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-reflect</artifactId>
<version>2.11.8</version>
</dependency>
<dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-compiler</artifactId>
<version>2.11.8</version>
</dependency>
<dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-library</artifactId>
<version>2.11.8</version>
</dependency>
<dependency>
<groupId>org.apache.hbase</groupId>
<artifactId>hbase-client</artifactId>
<version>1.1.2</version>
</dependency>

<dependency>
<groupId>org.apache.hbase</groupId>
<artifactId>hbase-common</artifactId>
<version>1.1.2</version>
</dependency>

<dependency>
<groupId>org.apache.hbase</groupId>
<artifactId>hbase-server</artifactId>
<version>1.1.2</version>
</dependency>

主要是添加hbase-client、hbase-server、hbase-common,并將spark版本修改為2.1.1。

3、spark讀寫Hbase測試

往Hbase里面寫數(shù)據(jù):

  • 通過HTable中put方法:

package Flink
import org.apache.hadoop.conf.Configuration
import org.apache.hadoop.hbase.{HBaseConfiguration, HTableDescriptor, TableName}
import org.apache.hadoop.hbase.client.{HBaseAdmin, HTable, Put, Result}
import org.apache.hadoop.hbase.mapred.TableOutputFormat
import org.apache.hadoop.hbase.util.Bytes
import org.apache.log4j.{Level, Logger}
import org.apache.spark.{SparkConf, SparkContext}

import org.apache.hadoop.hbase.client.Put
import org.apache.hadoop.hbase.io.ImmutableBytesWritable
import org.apache.hadoop.mapred.JobConf
/** *
*
* @autor gaowei
* @Date 2020-07-28 17:55
*/
object HbaseT1 {
def getHBaseConfiguration(quorum:String, port:String, tableName:String) = {
val conf = HBaseConfiguration.create()
conf.set("hbase.zookeeper.quorum",quorum)
conf.set("hbase.zookeeper.property.clientPort",port)

conf
}
def getHBaseAdmin(conf:Configuration,tableName:String) = {
val admin = new HBaseAdmin(conf)
if (!admin.isTableAvailable(tableName)) {
val tableDesc = new HTableDescriptor(TableName.valueOf(tableName))
admin.createTable(tableDesc)
}

admin
}
def getTable(conf:Configuration,tableName:String) = {
new HTable(conf,tableName)
}
def main(args: Array[String]) {
// 屏蔽不必要的日志顯示在終端上
Logger.getLogger("org.apache.spark").setLevel(Level.WARN)

val sparkConf = new SparkConf().setAppName("HBaseWriteTest").setMaster("local[2]")
val sc = new SparkContext(sparkConf)

val tableName = "TEST.USER_INFO"
val quorum = "localhost"
val port = "2181"

// 配置相關信息

val conf = getHBaseConfiguration(quorum,port,tableName)
conf.set(TableOutputFormat.OUTPUT_TABLE,tableName)


val indataRDD = sc.makeRDD(Array("R6,jack,16,t1", "R7,Lucy,15,t2", "R8,mike,17,t3", "R9,Lily,14,t4"))

indataRDD.foreachPartition(x=> {
val conf = getHBaseConfiguration(quorum,port,tableName)
conf.set(TableOutputFormat.OUTPUT_TABLE,tableName)

val htable = getTable(conf,tableName)

x.foreach(y => {
val arr = y.split(",")
val key = arr(0)
val value = arr(1)
val value1 = arr(2)
val value2 = arr(3)

val put = new Put(Bytes.toBytes(key))
put.add(Bytes.toBytes("INFO"),Bytes.toBytes("C1"),Bytes.toBytes(value))
put.add(Bytes.toBytes("INFO"),Bytes.toBytes("C2"),Bytes.toBytes(value1))
put.add(Bytes.toBytes("INFO"),Bytes.toBytes("C3"),Bytes.toBytes(value2))
htable.put(put)
})
})
sc.stop()
}

}
  • TableOutputFormat向HBase寫數(shù)據(jù)

package Flink
import org.apache.hadoop.conf.Configuration
import org.apache.hadoop.hbase.{HBaseConfiguration, HTableDescriptor, TableName}
import org.apache.hadoop.hbase.client.{HBaseAdmin, HTable, Put, Result}
import org.apache.hadoop.hbase.mapred.TableOutputFormat
import org.apache.hadoop.hbase.util.Bytes
import org.apache.log4j.{Level, Logger}
import org.apache.spark.{SparkConf, SparkContext}

import org.apache.hadoop.hbase.client.Put
import org.apache.hadoop.hbase.io.ImmutableBytesWritable
import org.apache.hadoop.mapred.JobConf
/** *
*
* @autor gaowei
* @Date 2020-07-28 17:55
*/
object HbaseT1 {
def getHBaseConfiguration(quorum:String, port:String, tableName:String) = {
val conf = HBaseConfiguration.create()
conf.set("hbase.zookeeper.quorum",quorum)
conf.set("hbase.zookeeper.property.clientPort",port)

conf
}
def getHBaseAdmin(conf:Configuration,tableName:String) = {
val admin = new HBaseAdmin(conf)
if (!admin.isTableAvailable(tableName)) {
val tableDesc = new HTableDescriptor(TableName.valueOf(tableName))
admin.createTable(tableDesc)
}

admin
}
def getTable(conf:Configuration,tableName:String) = {
new HTable(conf,tableName)
}
def main(args: Array[String]) {
// 屏蔽不必要的日志顯示在終端上
Logger.getLogger("org.apache.spark").setLevel(Level.WARN)

val sparkConf = new SparkConf().setAppName("HBaseWriteTest").setMaster("local[2]")
val sc = new SparkContext(sparkConf)

val tableName = "TEST.USER_INFO"
val quorum = "localhost"
val port = "2181"

// 配置相關信息

val conf = getHBaseConfiguration(quorum,port,tableName)
conf.set(TableOutputFormat.OUTPUT_TABLE,tableName)


val indataRDD = sc.makeRDD(Array("R6,jack,16,t1", "R7,Lucy,15,t2", "R8,mike,17,t3", "R9,Lily,14,t4"))

val jobConf = new JobConf()
jobConf.setOutputFormat(classOf[TableOutputFormat])
jobConf.set(TableOutputFormat.OUTPUT_TABLE,tableName)
indataRDD.map(_.split(",")).map{arr => {
val put = new Put(Bytes.toBytes(arr(0)))
put.add(Bytes.toBytes("INFO"),Bytes.toBytes("C1"),Bytes.toBytes(arr(1)))
put.add(Bytes.toBytes("INFO"),Bytes.toBytes("C2"),Bytes.toBytes(arr(2)))
put.add(Bytes.toBytes("INFO"),Bytes.toBytes("C3"),Bytes.toBytes(arr(3)))
(new ImmutableBytesWritable,put)
}}.saveAsHadoopDataset(jobConf)
sc.stop()
}

}

4、讀Hbase的數(shù)據(jù)

package Flink
import org.apache.hadoop.hbase.mapreduce.TableInputFormat
import org.apache.hadoop.hbase.util.Bytes
import org.apache.hadoop.conf.Configuration
import org.apache.hadoop.hbase.{HBaseConfiguration, HTableDescriptor, TableName}
import org.apache.hadoop.hbase.client.{HBaseAdmin, HTable}
import org.apache.log4j.{Level, Logger}
import org.apache.spark.{SparkConf, SparkContext}
/** *
*
* @autor gaowei
* @Date 2020-07-27 17:06
*/
object HbseTest {

def getHBaseConfiguration(quorum:String, port:String, tableName:String) = {
val conf = HBaseConfiguration.create()
conf.set("hbase.zookeeper.quorum",quorum)
conf.set("hbase.zookeeper.property.clientPort",port)

conf
}
def getHBaseAdmin(conf:Configuration,tableName:String) = {
val admin = new HBaseAdmin(conf)
if (!admin.isTableAvailable(tableName)) {
val tableDesc = new HTableDescriptor(TableName.valueOf(tableName))
admin.createTable(tableDesc)
}

admin
}
def getTable(conf:Configuration,tableName:String) = {
new HTable(conf,tableName)
}

def main(args: Array[String]): Unit = {
Logger.getLogger("org.apache.spark").setLevel(Level.WARN)
val sparkConf = new SparkConf().setAppName("HBaseReadTest").setMaster("local[2]")
val sc = new SparkContext(sparkConf)

val tableName = "TEST.USER_INFO"
val quorum = "localhost"
val port = "2181"

// 配置相關信息
val conf = getHBaseConfiguration(quorum,port,tableName)
conf.set(TableInputFormat.INPUT_TABLE,tableName)

// HBase數(shù)據(jù)轉成RDD
val hBaseRDD = sc.newAPIHadoopRDD(conf,classOf[TableInputFormat],
classOf[org.apache.hadoop.hbase.io.ImmutableBytesWritable],
classOf[org.apache.hadoop.hbase.client.Result]).cache()

// RDD數(shù)據(jù)操作
val data = hBaseRDD.map(x => {
val result = x._2
val key = Bytes.toString(result.getRow)
val value = Bytes.toString(result.getValue("INFO".getBytes,"C1".getBytes))
val value1 = Bytes.toString(result.getValue("INFO".getBytes,"C2".getBytes))
val value2 = Bytes.toString(result.getValue("INFO".getBytes,"C3".getBytes))
(key,value,value1,value2)
})

data.foreach(println)

sc.stop()
}

}

結果:

去Hbase查詢的結果:

結論:

Hadoop本質上是:分布式文件系統(tǒng)(HDFS) + 分布式計算框架(Mapreduce) + 調度系統(tǒng)Yarn搭建起來的分布式大數(shù)據(jù)處理框架。

Hive:是一個基于Hadoop的數(shù)據(jù)倉庫,適用于一些高延遲性的應用(離線開發(fā)),可以將結構化的數(shù)據(jù)文件映射為一張數(shù)據(jù)庫表,并提供簡單的sql查詢功能。

Hive可以認為是MapReduce的一個包裝,把好寫的HQL轉換為的MapReduce程序,本身不存儲和計算數(shù)據(jù),它完全依賴于HDFS和MapReduce,Hive中的表是純邏輯表。hive需要用到hdfs存儲文件,需要用到MapReduce計算框架。

HBase:是一個Hadoop的數(shù)據(jù)庫,一個分布式、可擴展、大數(shù)據(jù)的存儲。hbase是物理表,不是邏輯表,提供一個超大的內(nèi)存hash表,搜索引擎通過它來存儲索引,方便查詢操作。

HBase可以認為是HDFS的一個包裝。他的本質是數(shù)據(jù)存儲,是個NoSql數(shù)據(jù)庫;HBase部署于HDFS之上,并且克服了hdfs在隨機讀寫方面的缺點,提高查詢效率。

推薦閱讀:

世界的真實格局分析,地球人類社會底層運行原理

不是你需要中臺,而是一名合格的架構師(附各大廠中臺建設PPT)

企業(yè)IT技術架構規(guī)劃方案

論數(shù)字化轉型——轉什么,如何轉?

華為干部與人才發(fā)展手冊(附PPT)

企業(yè)10大管理流程圖,數(shù)字化轉型從業(yè)者必備!

【中臺實踐】華為大數(shù)據(jù)中臺架構分享.pdf

華為的數(shù)字化轉型方法論

華為如何實施數(shù)字化轉型(附PPT)

超詳細280頁Docker實戰(zhàn)文檔!開放下載

華為大數(shù)據(jù)解決方案(PPT)

瀏覽 64
點贊
評論
收藏
分享

手機掃一掃分享

分享
舉報
評論
圖片
表情
推薦
點贊
評論
收藏
分享

手機掃一掃分享

分享
舉報

感谢您访问我们的网站,您可能还对以下资源感兴趣:

国产秋霞理论久久久电影-婷婷色九月综合激情丁香-欧美在线观看乱妇视频-精品国avA久久久久久久-国产乱码精品一区二区三区亚洲人-欧美熟妇一区二区三区蜜桃视频 大香蕉75在线| 先锋影音在线资源| 三级成人无码| 男女www视频| 在线日韩AV| 中文字幕人妻在线中文乱码怎么解决| 动漫一区二区三区| 波多野结衣在线无码视频| 蝌蚪窝免费在线视频| 欧美色大香蕉| 欧美在线不卡综合| 伊人网站| 亚洲色图在线观看| 91传媒在线观看| 日韩城人免费| 影音先锋男人资源站| 肏屄视频免费观看| 超碰97资源| 尤物视频官网| 亚洲精品人人| 午夜男人天堂| 欧美在线视频一区| 丁香社区五月天| 天天无码视频| 成人免费在线网站| A片在线观看网站| 国产成人精品免高潮在线观看| 日韩在线综合网| 亚洲日韩网站| 亚洲无码一区二区三区蜜桃| 久色婷婷在线| 大地资源第三页在线观看免费播放最新 | 蜜桃av秘无码一区三区四| 久久久精品国产| 国产精品扒开腿做爽爽爽A片唱戏| 中国字幕在线观看韩国电影| 激情五月天影院| 日韩午夜成人电影| 爱爱爱免费视频| 国产成人在线免费| 国产黄色性爱视频| 爱爱成人视频| 天天骑夜夜操| 91在线无精精品秘白丝| 国产熟妇毛多久久久久一区| 五月天激情综合网| 亚欧洲精品在线视频免费观看| 日韩精品人妻无码| 国产区AV| 黑人人妻黑人ThePorn| 蜜芽成人在线| 99色综合| 无码人妻丰满熟妇| 麻豆啪啪| 精品免费国产一区二区三区四区的使用方法 | 97超碰资源总站| 99热综合在线| 亚洲秘av无码一区二区| 成人免费视频国产在线观看| 一本色道久久综合无码| www.俺去了| 麻豆射区| 国产成人在线免费| 日韩1区| 日本高潮视频| 自拍AV在线| 欧美在线综合| 亚洲无码视频免费看| 婷婷激情四射| 亚洲成人一区二区| 狠狠操狠狠操| 黃色A片一級二級三級免費久久久 亚洲AV无码第一区二区三区蜜桃 亚洲综合免费观看高清完整版在线 | 操人妻| 军人妓女院BD高清片在线播放| av三级片在线观看| 丁香久久| 蜜臀在线视频| 欧美伊人网在线观看| 一区二区三区视屏| 日韩va亚洲va欧美va高清 | 亚洲黄色无码| 草草网| 18禁网址| 999精品视频在线| 亚洲不卡免费视频| 中文字幕无码精品三级在线欧美| 日本在线视频不卡| 人人射人人干| 100国产精品人妻无码| 99久久精品国产一区二区三区| 怡春院久久| 超碰97在线免费| 国产一卡二卡在线观看| 国产黄片网站| 最新一区二区三区| 日本无码在线| 欧美男女日逼视频| 丰满的人妻一区二区10| 人妻熟女88AⅤ| 日韩视频91| 69av在线观看视频| 黄色特级毛片| 特级毛片片A片AAAAAA| 亚洲日韩国产AV无码无码精品| 国产精品视频免费| 亚洲一区中文字幕成人在线| 国产g蝌蚪| 老太色HD色老太HD.| 欧美日韩北条麻妃视频在线观看| 日韩美女久久| 老婆被黑人杂交呻吟视频| 久久丝袜视频| 久久草草热国产精品| 97精品| 欧美性交一区二区| 99久操| 双腿张开被9个男人调教| 国产免费久久久| 河南乱子伦视频国产| 先锋成人在线| 东京热一区二区三区| 51妺妺嘿嘿午夜成人A片| 大香蕉一区| 日韩一区二区三免费高清在线观看| 国产一二三区在线| 69综合| 色综合加勒比| 噜噜噜在线| 蜜桃av秘无码一区二区| 日韩一级在线观看| 五月婷婷性爱| 香蕉视频成人在线观看| 亚洲午夜av| 麻豆av在线观看| 噜噜色色噜噜| 91麻豆视频| 国产精品特级毛片| 五月激情久久| 波多野结衣无码在线视频| a视频免费| 国产区av| 甘肃WBBBB搡wBBBB| 国产精品无码毛片| 激情白浆| 亚洲日本中文| 青青草超碰在线| 黄色视频在线观看网站| 天天爽爽爽爽爽成人片| 亚洲精品福利视频导航| 九草在线| JiZZjiZZ亚洲成熟熟妇| 综合久久网| 男女啪网| 国产伦精品一区二区三区妓女下载| 久久伊思人在| 国产日韩欧美综合在线| 毛片一区二区三区| 欧美一区二区三区激情| 视频一二三区| 国产老女人操逼| 麻豆国产一区二区三区四区| 亚洲黄色视频网站| 国产精品无码激情视频| 青青久视频| 91无码秘蜜桃一区二区三区-百度 精品人妻一区二区三区在线视频不卡 | 影音先锋av资源在线| 97A片在线观看播放| 色色网站| 五月天激情啪啪| 人妻中文字幕久久| 色综合久久久| 麻豆视频国产| 免费黄网站| 靠逼国产| 91人妻人人爽人人澡| 免费操逼视频在线观看| 婷婷色色五月天| 在线成人亚洲| 操逼视频在线免费看| 婷婷五月天色色| 国产精品成人午夜福利| 狼友初视频在线观看| 操逼免费观看视频| 日韩一级片免费看| 欧美性爱在线视频| 国产高清做爱| 成人H视频| 91福利视频在线观看| 亚州精品人妻一二三区| 美妇肥臀一区二区三区-久久99精品国 | 乱码少妇| 色婷婷狠狠操| 欧美激情片| 黄色在线免费| 国产精品视频在线看| 麻豆91蜜桃传媒在线观看| 午夜操逼网| 9118禁| 中文字幕性| 特级西西人体444www高清| 麻豆激情| 国产一级一片免费播放放a| a在线| 国产精品91在线| 亚洲无码免费在线| 国产AV无遮挡| 欧美精品乱码99久久蜜桃| 国产婷婷色一区二区三区| 大香蕉电影网| 免费人成视频观看| 九九re精品视频在线观看| 成人免费视频在线| 国产足交| 一区二区三区国产| 国产午夜视频| 日韩无码中文字| 久久无码一区二区| 成人自拍网| 爱插美女网| 激情免费网站| www.亚洲成人| 五月天久久久久久| 玖玖在线播放| 色色亚洲| 午夜神马51| 日日搔av一区二区三区| 高清国产mv在线观看| 日本中出视频| 伊人久久香蕉网| 五月婷婷丁香综合| 91丨九色丨蝌蚪丨肥女| 国产成人精品一区二区三区视频 | 蜜桃传媒av| 操碰视频| 人人看人人摸人人插| 2025AV在线| 东方成人AV| 大香蕉尹人在线视频| 国产69精品久久久久久| 天天撸视频| 16一17女人毛片| 俺来操| 久久三级电影| 久久无码人妻精品一区二区三区| 日韩一二三四区| 色情一级A片成人片| 国产精品一区二区免费| 亚洲无码黄片| 国产成人精品无码片区在线观91| 一级大片免费看| 骚逼AV| 猫咪亚洲AV成人无码电影| 亚洲一区欧美| 免费看一区二区三区A片| 好看的中文字幕av| 青娱乐伊人| 色aV牛牛在线观看| 制服丝袜在线视频| 超碰在线人人操| 国产一视频| 1024在线| 97精品人妻| 97爱爱网| 日本黄色小视频| 丰满人妻一区二区三区Av猛交 | 91精品在线观看视频| 国产熟妇搡BBBB搡BBBB毛片 | 高清免费在线中文Av| 97大香蕉视频| 人妻被午夜福利AV| 亚洲社区在线观看| 天天做天天爱| 久艹av| 在线免费观看一区| 成人性生活影视av| 亚洲日韩视频在线播放| 亚洲综合激情五月久久| 一级香蕉视频| 免费a片在线观看| 日韩精品一二| 国精产品一二四区黑人| 一级做a视频| 亚洲无码在线视频观看| 国产三级| 亚洲中文字幕色| 香蕉久久久| 天天天做夜夜夜爽无码| 日本免费高清视频| 色图插插插| 天堂а√在线中文在线新版| 欧美爆操视频| 国产亚洲三级| 操碰在线视频| 91人妻日韩人妻无码| 精品人妻中文字幕| 国产精品视频色| 日韩A电影| 四虎午夜福利| 日韩久久免费视频| 五月婷婷色色网| 久久精品国产精品| 一区二区三区四区不卡| 色综合中文字幕| 撸一撸成人在线做爱视频。| 刘玥一区二区| 欧美干| 国产精品永久久久久久久久久| 怡红院AV| 久久久久a| 国产中文字幕视频| 熟女内射| 欧美日本在线| 中文观看| 大香蕉操逼视频| 艹美女视频| 西西888WWW大胆无码| 一本色道久久综合无码人妻四虎 | 亚洲网站免费在线观看| 欧美操逼视频网站| 日韩在线大香蕉| 99热国产免费| 奇米色播| 51毛片| 草比网站| 日本黄色免费看| 亚洲国产综合AV在线| 伊人久色| 高圆圆一区二区三区| 人人操AV| 中文字幕乱伦视频| 欧美成人视频网站| 少妇中文字幕| 99视频免费观看| 久热免费视频在线观看| 成年人视频网站| 免费网站观看www在线观| 亚洲性爱一级片| 中韩AV在线免费观看| 亚洲精品中文字幕成人片| 蜜桃传媒一区二区| 四虎成人无码A片观看| 欧美肏屄视频| AV色天堂| 五月丁香花| 成人水蜜桃| 天天撸天天干| 亚洲三级视频在线播出| www亚洲无码A片贴吧| 色草视频| 十八禁视频在线观看网站.www | 欧美日韩大香蕉| 婷婷日韩一区二区三区| 国产精品自拍在线观看| 一级A片在线观看| 亚洲综合色网站| 亚洲无码精品视频| 东京热视频免费观看| 伊人久久大综合中文无码| 国产精品欧美一区二区三区苍井空 | 亚洲高清无码网站| 亚洲天堂一级片| 中国免费一级无码成人片| 三级黄色免费| 日本爱爱视频免费| 亚洲AV无码黑人专区| 午夜国产在线观看| 色777网站| 日日夜夜精品| 日日干综合| 国产免费av在线观看| 草草网站| 狠狠狠狠狠狠操| 欧美另类色图| 天堂8在线| 日韩免费Av| 亚洲另类色图| 日韩香蕉网| 精品福利在线观看| 天天艹夜夜| 久草视频在线免费| 日韩成人一区二区三区| 国产xxxx视频| 精品九九九| 北条麻妃被躁57分钟视频在线| 亚洲AV无码精品岛国| 国产肏屄视频| 国产熟妇码视频app| 中文字幕在线看成人电影| 中文熟女| 久久国产2025| 精品视频一区二区三区| 亚洲无吗在线观看| 日韩高清精品在线| 天堂中文资源在线| 天天草av| 日韩一级一片| 无码视频一区二区三区| 中文字幕日韩有码| 天天操天天日天天干| 免费做a爰片77777| 操B视频在线免费观看| 国产无码片| 五月婷婷六月婷婷| 国产精品成人国产乱| 自拍偷拍中文字幕| 中文字幕成人影片| 黄频免费观看| 久99视频| 成人激情四射网| 亚洲无码三级片| 91足浴店按摩漂亮少妇| 国产剧情一区二区| 国产一级在线| 国产精品成人在线观看| 欧美日韩在线观看一区二区三区| 日韩视频第一页| 综合天天| 亚洲中文无码在线观看| 秋霞午夜福利| 大香蕉欧美在线| 另类综合激情| 高清一区二区三区| 毛片高清无码| 精品秘一区性综合三区| 成人无码免费毛片A片| 特级西西人体WWWWW| 大香蕉网站视频| 麻豆回家视频区一区二| 大黄网站在线观看| 在线视频内射| 巨い巨乳の少妇あジed2k| 国产免费AV网站| 97爱爱网| 影视先锋成人在线| 黄频在线观看| 伊人99re| 无码A级| 国产午夜成人福利在线| 亚洲激情五月| 欧美日韩色视频| 综合婷婷| 国产精品18禁| 国产高清无码福利| 激情亚洲五月天| 大香蕉三级片| 小视频你懂的| 日韩AV手机在线观看| 水蜜桃在线视频| 嫩BBB揍BBB揍BBB| 亚洲av网站在线观看| 美女视频一区二区三区| 国内成人精品| 欧美成人高清无码| www人人操| 伊人网视频在线观看| 草B视频| 欧美狠狠插| 国产又大又粗又爽| 黄页网站在线免费观看| 亚州操逼片| 日日摸日日添日日躁AV| 白虎高清无码大尺度免费在线观看| 男人天堂2024| 无码欧美成人AAAA三区在线| 久久99精品久久久久| 亚洲AV无码国产精品| 丁香五月欧美激情| 天堂在线网| 夏目あきら被续侵犯7天| 亚洲免费在线观看视频| 加勒比无码在线播放| 撸一撸av| 亚洲国产成人在线| 殴美老妇BBBBBBBBB| 免费在线观看a片| 黄色一级视频在线观看| 黄色av免费看| 午夜国产视频| 天天干中文字幕| 成人电影综合网| 安微妇搡BBBB搡BBBB日| 免费在线黄片| 国产午夜在线| 中文字幕成人在线观看| 狠狠艹狠狠干| 青草五月天| 成人免费毛片AAAAAA片| 日本精品中文字幕| 色悠悠久久综合| 青娱乐A片| 最新午夜综合福利视频| 久草中文视频| 99视频这里有精品| 亚洲91成人| 伊人激情影院| 久久狠| 亚洲一级在线观看| 激情综合久久| 91三级片网站| 国产欧美在线免费观看| 青青草原在线视频| 香蕉成人电影| 黄片无码在线观看| 三级91| 台湾无码精品| 日韩精品一区二区三| www.婷婷五月天| av一区二区三区四区| 久热九九| 十八无码成人免费网站| 北条麻妃一区二区三区在线 | 你懂的网站在线观看| 2024国产精品| 在线观看中文字幕av| 影音先锋av资源网站| 欧美又粗又大| 人人操人人摸人人爽| 亚洲狼人久久久精品| 国产ts在线| av天天看| 国产AV无码精品| 中文在线а√天堂8| 99在线视频观看| 国产三级片在线免费观看| 黄片视频国产| 久精久久| 影音先锋乱伦电影| 日韩欧美高清| 大香蕉一级片| 一级黄色录像带| 精品无码视频在线| 97精产国品久久蜜桃臀| 蜜挑视频一区二区三区| 91丨九色丨东北熟女| 97久久人人| 中文无码在线观看中文字幕av中文 | 精品人妻一区二区蜜桃视频| 日本中文字幕中文翻译歌词| PORNY九色视频9l自拍| 人妻无码91| 黄色大片免费看| 六月丁香激情| 蜜臀网在线| 亚洲AV成人无码精品区| 国精品无码一区二区三区在线秋菊| 天天色伊人| 午夜成人福利| 在线观看日本vs欧洲vs美洲| 亚洲无码大全| 亚洲中文字墓| 欧美久久一区| 天天干狠狠| 日韩激情无码视频精选| 波多野结衣无码在线| 熟妇槡BBBB槡BBBB| 91网站免费观看| 操比视频在线观看| 51精品日本| 国产精品一区一区三区| 免费成人在线网站| 97人妻| 人人干人人色| 亚洲精品无码久久久| 免费AV毛片| 在线免费观看a| 无码在线专区| 欧美老妇XX| 国产成人无码区免费视频| 99热在线免费观看| 青青草大香蕉| 日韩伊人| 亚洲成人无码一区| 中国熟女HD| 国产成人视频免费在线观看| 91日韩视频在线| 日本少妇久久| 日韩一级一片内射视频4K| 水蜜桃一区二区| 操B无码| 中文字幕在线观看高清| 国产精品视频免费在线观看| 国产成人精品一区| ww亚洲ww| 深爱五月天| 国产免费黄色视频网站| 国产av一二三区| 亚洲天媒在线播放| 成人三级电影| 91大片| 亚洲无码视频一区| 欧美丰满老熟妇XXXXX性| 国产伊人影院| aⅴ在线| 亚洲人成电影网| 日日久视频| 偷拍亚洲综合| 国产—级a毛—a毛免费视频| 337P大胆粉嫩噜噜噜| 丰满人妻一区二区免费看| 久久久三级片| 波多野结衣一区| 久久综合99| 四虎成人无码| 17c白丝喷水自慰| 97人妻人人澡人人| 国产成人精品一区二区三区四区| 女同三区| 免费中文字幕视频| 一级无码专区| 黄色视频| 人人人人人人人人操| 国产精品人人人人| 婷婷黄色网| 亚洲AV无码精品岛国| 少妇69p| 欧美大香蕉伊人网| 伊人色色视频| 兔子先生和優奈玩游戲脫衣服,運氣報表優奈輸到脫精光 | 一区二区三区四区免费看| 亚洲无码视频专区| 日日搔av一区二区三区| 亚洲免费一级片| 五月天婷婷黄色| 成人综合在线观看| 无码人妻蜜桃| ww成人| 久久综合大香蕉| 国产精品v欧美精品v日韩精品| AV中文字幕电影| 中文字幕一区三区人妻视频| 日狠狠| 91白丝在线观看| 男女高清无码| 国产91综合一区在线观看| 亚洲操逼无码| 理论三级片| 人人看人人搞人人摸| 翔田千里与黑人50分钟| 久久日韩操| 爱精品视频| 屁屁影院国产第一页| 免费看毛片中文字幕| 精品久久久久久AV2025| 中文字幕永久在线5| 天天操嫩逼无套视频| 日本伊人在线综合视频| 亚洲中文字幕久久日| 中文字幕浅井香舞被黑人俘虏 | 午夜亚洲视频| 欧美香蕉在线| 成人欧美一区二区三区在线观看 | 北条麻妃久久| 国产黄色视频在线| 日韩看片| 亚洲小电影| 国产成人av| 2019中文字幕在线免费观看| 国产91人| 精品国产一区二区三区性色AV| 丁香四月婷婷| 久久双飞| 夜色福利在线看| 尤物看片| 亚洲精品色婷婷| 亚洲福利社| 亚洲精品福利视频导航| 日韩欧美人妻无码精品| 国产中文字幕免费| 人人超碰在线| 毛茸茸BBBBBB毛茸茸| 亚洲综合在线播放| 国产精品久久久999| 操人视频在线观看| 狠狠操在线观看| 91成人导航| 亚洲欧美性爱视频| 国产又大又粗又长| 黄色三级在线观看| AV资源在线| 天天操夜夜操| xiuxiuav| 欧美成人一区二区三区片| 人人艹在线观看| 日韩18在线| 日本在线免费视频| 人人操人人爽人人妻| 高清中文字幕在线A片| 91中文字幕在线播放| 欧美午夜成人一区二区三区| 一级黄色视频免费看| 欧美一级免费观看| 国产在线导航| 99视频内射三四| 国产黄色视频在线| 999日本不卡影院| 无码免费中文字幕| 天堂在线观看AV| 午夜福利日本| 国产午夜精品一区二区三区嫩A| 男人视频网| 国产无遮挡又黄又爽又色| 97人妻天天摸天天爽天天| 欧美午夜在线| 亚洲黄色免费网站| 99综合| 国产在线观看免费成人视频| 美女啪啪网站| 日韩激情视频在线观看| 欧美激情视频一区| 欧洲AV在线| 日本少妇做爱| 国产成人视频免费观看| 中文字幕在线观看日韩| 亚洲视频一区二区三区| 亚洲成人精品少妇| 丁香五月一区二区| 7777精品伊人久久7777| 国产精品国产三级囯产普通话2 | 伊人黄色电影| 欧美内射网站| 国产精品视频免费看| 91亚洲精品视频| 久久毛片| 国产精品乱码毛片在线人与| 国产91免费视频| 国产成人片在线观看| va婷婷在线免费观看| 91视频网站在线| 一卡二卡无码| 中文字幕有码视频| 人妻电影亚洲av| 日本色情视频网站| 在线观看中文字幕无码| 真人BBwBBWBBw另类视频| 久久久久久久成人| 无码人妻精品一区二区三| 老女人的逼| 亚洲成人少妇老妇a视频在线| 国产一区免费视频| 久久免费看| 久久精品久久久久久久| 超碰人人91| A片在线视频| 天堂资源| 色av网| 亚洲日本无码50p| 中文字幕黄色| 三级片网站视频| 亚洲av中文| 人人爱人人摸| 澳门簧片| 99热这里是精品| 福利视频一区二区三区| 欧美一级网站| 日韩在线中文| 国产欧美一区二区人妻喷水| 中文字幕第一页亚洲| 成人免费视频在线| 北条麻妃在线一区| 在线视频亚洲| 江苏妇搡BBBB搡BBBB-百度| 伊人激情影院| 伊人影院99| 久久午夜电影| 臭小子啊轻点灬太粗太长了的视频 | www.99| 新超碰在线观看| 欧美激情一区二区A片成人牛牛| 日韩三级网| 国产精品久久毛片A片| 老熟女痒到不行-ThePorn| 国产欧美一区在线看| 手机无码在线播放| 亚洲天堂国产| 国产乱人| 99热网站| 91白浆肆意四溢456| 丁香婷婷在线| 日韩久久人妻| 日韩欧美操逼| 色色网站| 五月丁香天堂| 国产成人精品免费看视频| 四虎av在线| 高潮喷水在线观看| 韩日无码人妻| 91嫖妓站街按店老熟女| 亚洲在线大香蕉| 亚洲三级片在线视频| 一区二区三区免费| 国产又粗又大又黄视频| 五月丁香婷婷基地| 激情黄色视频| 中文字幕无码AV| 午夜三级视频| 国产黄片一区二区| eeuss国产| 越南小嫩嫩BBWBBw| 在线99精品| 毛片aaa| 91日韩精品| www.麻豆网91成人久久久| www超碰在线| 成人无码激情| 搡中国东北老女人视频| 久热在线视频| 伊人日日| 影音先锋av在线资源| 午夜久久久| 欧美日韩黄片| 91精品国产一区二区三区四区大| 九九久久免费视频| 韩日无码视频| 插菊花综合| 91av一区二区| 国产aa片| EEUSS| 永久免费看A人片无码精| 成人在线黄片| 超碰女人| 国产操b| 久久久久亚洲AV成人片乱码| 男人天堂免费视频| 丰滿人妻一区二区三区| 蜜桃av.38| 97免费视频在线观看| 黄色免费在线观看| 亚洲永久| 狼友视频免费观看| 欧美熟妇BBB搡BBB| 欧美日韩成人在线视频| 6969电视影片最新更新| 亚洲天堂在线免费| 91麻豆精品91久久久ios版| 日无码| 久久久在线视频| 三级国产AV| 亚洲人妻中文字幕| 欧美性爱a视频| 无码欧美成人| 在线一区二区三区四区| 欧美性猛交XXXX乱大交| 亚洲A片电影| 婷婷六月激情| 精品国产乱码一区二区| 免费视频在线观看一区| 日逼电影网| 亚洲国产熟妇综合色专区| 豆花视频在线免费观看| 人人色视频| 黄色片免费看| 日韩欧美高清无码| 在线黄色av| 91白浆| 亚洲加勒比久久88色综合| 国产AV日韩AV| 一级性爱视频| 国产91在线拍揄自揄拍无码九色| 特级婬片A片AAA毛片AA做头| 中文字幕av在线观看| 91ThePorn国产| 北条麻妃人妻中文字幕91影视| 欧美一级片在线观看| 久久久久久久久久久久成人| 中国免费一级无码成人片| 一级片免费观看| 色97| 91精品丝袜久久久久久久久粉嫩| 高清无码网站| 久久无码人妻精品一区二区三区| av影音在线| 成人av黄色三级片在线观看| 免费涩涩无遮挡18国产| 猛男大粗猛爽H男人味| 免费一级婬片AA片观看| 日本亲子乱婬一级A片| 日韩有码第一页| 六月婷婷在线观看| 欧美艹逼视频| 无码人妻一区二区三区| 91大神精品| 韩日中文字幕| 91国产做爱| 亚洲最大网站| 亚洲精品视频在线播放| 做aAAAAA免费视频| 无码颜射| 2025精品偷拍视频| 久9久9久9久9久9久9| 99国产精品免费视频观看8| 免费一级无码婬片A片AAA毛片| 爱爱免费不卡视频| 国产h视频在线观看| 牛牛精品一区二区AV| 国产第一夜| 超碰99在线| 欧美成人A片AAA片在线播放| 伊人福利导航| 国产AV无遮挡| 69式荫蒂被添全过程|