精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

【大數據】Hive DDL 操作與視圖講解

大數據 數據分析
Hive中的DDL操作和視圖操作可以幫助用戶定義和管理表、視圖等數據結構,從而更加靈活和高效地管理和查詢數據。用戶可以根據實際需求選擇使用哪種操作方式,以達到更好的數據管理和操作效果。?

一、概述

Hive是建立在Hadoop上的數據倉庫工具,它允許用戶通過類SQL的語法來查詢和管理數據。在Hive中,DDL(數據定義語言)和視圖操作是非常常見的。

1)表和視圖關系

表和視圖都是數據存儲的邏輯表示方式。它們之間有以下關系:

  • 視圖可以基于一個或多個表創建,而表不可以基于其他表或視圖創建。因此,視圖是從一個或多個表的查詢結果中獲取數據的虛擬表,而表是實際存儲數據的物理表。
  • 視圖通常用于簡化查詢或隱藏數據的復雜性,可以對基礎表進行查詢過濾、聚合或連接等操作,從而提供更易于理解的結果。而表則是實際存儲和管理數據的物理存儲單元。
  • 視圖在定義時不會實際創建物理表,而是保存了一系列查詢語句。在查詢視圖時,Hive會執行這些查詢語句并返回結果。而表則是在定義時就創建了物理存儲單元,并在其中存儲了數據。
  • 視圖可以簡化數據訪問,因為它可以隱藏底層表的復雜性和細節,讓用戶能夠更容易地對數據進行操作和分析。而表可以提供更加靈活和高效的數據存儲和訪問方式,因為它們直接存儲數據并允許對數據進行更廣泛的操作和管理。

總之,表和視圖都是數據存儲和管理的方式,它們有各自的優點和適用場景。在Hive中,用戶可以根據實際需要選擇使用表還是視圖來滿足不同的數據訪問和管理需求。

2)表與視圖的區別

在Hive中,表和視圖也是數據存儲的邏輯表示方式,但它們之間存在以下區別:

  • 存儲方式:表是實際存儲數據的物理表格,而視圖不是存儲數據的實體,而是基于查詢結果生成的虛擬表格。
  • 數據管理:表可以直接存儲和管理數據,而視圖只是從一個或多個表的查詢結果中生成的,它并不實際存儲數據。因此,對于大量數據的存儲和管理,使用表更為合適;而對于簡化查詢或隱藏數據的復雜性,使用視圖更為合適。
  • 數據修改:對于表,用戶可以隨時對其中的數據進行修改、插入或刪除等操作。而對于視圖,用戶只能對其進行查詢,無法對其進行數據修改操作。
  • 查詢效率:由于視圖僅僅是基于查詢語句生成的虛擬表格,因此查詢視圖時的效率比查詢表要低。尤其是當視圖基于多個表時,查詢效率會更低。

總之,在Hive中,表和視圖都有各自的優點和適用場景。用戶可以根據實際需求選擇使用哪種方式來存儲和管理數據,以及在查詢數據時使用哪種方式來提高效率和簡化操作。

二、環境準備

如果已經有了環境了,可以忽略,如果想快速部署環境可以參考我這篇文章:通過 docker-compose 快速部署 Hive 詳細教程

# 登錄容器
docker exec -it hive-hiveserver2 bash
# 連接hive
beeline -u jdbc:hive2://hive-hiveserver2:10000  -n hadoop

三、Hive 數據類型

Hive支持原始數據類型和復雜類型,原始類型包括數值型,Boolean,字符串,時間戳。復雜類型包括數組,map,struct。

下面是Hive數據類型匯總:

四、DDL 操作

1)表的基本語法

在Hive中,你可以使用HiveQL語言來創建表。下面是一些創建表的基本語法:

CREATE [TEMPORARY] [EXTERNAL] TABLE [IF NOT EXISTS] table_name
  [(col_name data_type [column_constraint_specification] [COMMENT col_comment], ...)]
  [COMMENT table_comment]
  [PARTITIONED BY (col_name data_type [COMMENT col_comment], ...)]
  [CLUSTERED BY (col_name, col_name, ...) [SORTED BY (col_name [ASC|DESC], ...)] INTO num_buckets BUCKETS]
  [SKEWED BY (col_name, col_name, ...) ON ((col_value, col_value, ...), (col_value, col_value, ...), ...) [STORED AS DIRECTORIES]]
  [ROW FORMAT row_format]
  [STORED AS file_format]
  [LOCATION hdfs_path]

其中,[] 表示可選項,...表示省略的內容。

以下是一些常見的參數解釋:

  • TEMPORARY:表示創建一個臨時表。臨時表在會話結束時自動刪除。
  • EXTERNAL:表示創建一個外部表。外部表的數據不是存儲在Hive的數據倉庫中,而是存儲在Hadoop分布式文件系統中。
  • IF NOT EXISTS:表示如果表已經存在,則不執行創建表操作。
  • table_name:表示表的名稱。
  • col_name:表示列的名稱。
  • data_type:表示列的數據類型。
  • column_constraint_specification:表示列的約束條件,比如 NOT NULL、UNIQUE等。
  • COMMENT:表示列或表的注釋。
  • PARTITIONED BY:表示表的分區列。
  • CLUSTERED BY:表示表的分桶列。
  • SORTED BY:表示分桶列的排序方式。
  • num_buckets:表示分桶的數量。
  • SKEWED BY:表示表的傾斜列。
  • STORED AS:表示表的存儲格式,比如TEXTFILE、SEQUENCEFILE等。
### hive文件存儲格式包括以下幾類(STORED AS TEXTFILE):

1.TEXTFILE:按行存儲的文本文件格式。默認為TEXTFILE。

2.SEQUENCEFILE:二進制序列文件格式,其中鍵和值都是可以序列化的任意類型。

3.PARQUET:列式存儲文件格式,支持讀取和寫入列式存儲的數據。

4.ORC:高效列式存儲文件格式,具有高壓縮率和高性能的特點。

5.AVRO:自描述數據序列化格式。

6.JSONFILE:按行存儲的JSON文件格式。

#其中TEXTFILE為默認格式,建表時不指定,默認為這個格式,導入數據時會直接把數據文件拷貝到hdfs上不進行處理。
  • TBLPROPERTIES :指定壓縮方式,默認情況下,Hive不會對文件進行壓縮。有以下幾種壓縮方式:
1.SNAPPY:快速壓縮技術,具有較快的壓縮速度和較高的壓縮比。

2.GZIP:廣泛使用的壓縮算法,具有很高的壓縮比,但是較慢。

3.BZIP2:典型的通用文件壓縮算法,具有較高的壓縮比和較慢的壓縮速度。

4.LZO:快速Lempel-Ziv-Oberhumer壓縮算法,具有高壓縮比和快速的壓縮速度。

其中,Hive默認支持的壓縮方式只有GZIP、LZO和Snappy。如果要使用其他壓縮方式,需要在配置文件中手動添加。

例如,我們可以使用以下命令將一張表存儲為ORC文件格式,并使用Snappy壓縮:

CREATE TABLE mytable (
  column1 INT,
  column2 STRING
)
STORED AS ORC
TBLPROPERTIES ("orc.compress"="SNAPPY");
  • LOCATION:表示表的數據存儲路徑。只有外部表才能使用 LOCATION 關鍵字來指定存儲路徑。

關于分區和分桶的介紹可以參考我這篇文章:【大數據】Hive 分區和分桶的區別及示例講解

2)列分隔符和行分隔符

在Hive中,ROW FORMAT DELIMITED 是用于指定表中數據的列分隔符和行分隔符的關鍵字,默認的列分隔符是制表符(Tab鍵),默認的行分隔符是換行符(\n)。

通過指定這些分隔符,用戶可以將不同格式的數據導入到Hive表中,并在查詢表時正確地解析數據。使用 ROW FORMAT DELIMITED,用戶可以指定以下參數:

  • FIELDS TERMINATED BY: 用于指定列分隔符。默認情況下,Hive使用制表符作為列分隔符。用戶可以使用該選項指定自定義的列分隔符,例如逗號、豎線等。
  • ESCAPED BY: 用于指定轉義字符。如果數據中包含列分隔符或行分隔符,則可以使用該選項指定轉義字符,以確保這些字符被正確解析。
  • LINES TERMINATED BY: 用于指定行分隔符。默認情況下,Hive使用換行符作為行分隔符。用戶可以使用該選項指定自定義的行分隔符,例如換行符、回車符等。

例如,以下是使用 ROW FORMAT DELIMITED 指定逗號作為列分隔符和換行符作為行分隔符來創建一個Hive表的示例:

CREATE TABLE mytable (
  id INT,
  name STRING,
  age INT,
  address STRING
)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n';

3)添加表數據方式

1、INSERT 方式

在Hive中,可以使用 INSERT 語句來向表中添加數據。Hive支持多種數據來源和格式,包括文本文件、CSV文件、JSON文件等。內部表(管理表)的數據只能通過 INSERT INTO 命令進行插入,而不能直接修改原始數據。普通表在被刪除時,會將表中的數據一并刪除。

以下是使用 INSERT 語句向Hive表中添加數據的基本語法:

INSERT INTO TABLE tablename [PARTITION (partition_column = partition_value, ...)]
[ROW FORMAT row_format]
[STORED AS file_format]
SELECT ...;
  • 其中,tablename是要添加數據的表的名稱,
  • partition_column是要添加數據的表的分區列名稱,
  • partition_value是要添加數據的表的分區列值,
  • row_format是用于指定輸入數據格式的關鍵字,
  • file_format是用于指定輸出數據格式的關鍵字,
  • SELECT ...是用于指定要添加到表中的數據的查詢語句。

下面是向一個Hive表中添加數據的示例:

假設有一個Hive表mytable,其中包含四個字段:id、name、age和gender,用戶可以使用以下命令向該表中添加數據:

INSERT INTO mytable VALUES (1, 'Alice', 25, 'F'), (2, 'Bob', 30, 'M'), (3, 'Charlie', 35, 'M');

該命令將向mytable表中插入三行數據,每行數據包含四個字段。

用戶也可以從其他表或查詢結果中插入數據。例如,以下命令從另一個表yourtable中選擇一些數據插入到mytable中:

INSERT INTO mytable (id, name, age, gender)
SELECT id, name, age, gender
FROM yourtable
WHERE age > 25;

該命令將從yourtable表中選擇年齡大于25的數據,并將其插入到mytable表中。

【注意】向Hive表中添加數據時,數據格式和分隔符需要與表定義中的一致,否則會導致數據無法正確解析。可以使用 ROW FORMAT 和FIELDS TERMINATED BY等關鍵字來指定數據格式和分隔符。

2、LOAD DATA方式

使用LOAD DATA語句可以將本地或HDFS上的數據加載到Hive表中。具體語法和示例請見下面的示例:

LOAD DATA [LOCAL] INPATH 'filepath' [OVERWRITE] INTO TABLE tablename [PARTITION (partition_column = partition_value, ...)]
[ROW FORMAT row_format]
[FIELDS TERMINATED BY field_delim]
[LINES TERMINATED BY line_delim]
[STORED AS file_format];
  • 其中,filepath是要加載的數據文件路徑,
  • tablename是要加載數據的表的名稱,
  • partition_column是要加載數據的表的分區列名稱,
  • partition_value是要加載數據的表的分區列值,
  • row_format是用于指定輸入數據格式的關鍵字,
  • field_delim是用于指定字段分隔符的字符,
  • line_delim是用于指定行分隔符的字符,
  • file_format是用于指定輸出數據格式的關鍵字。

【注意】

  • 如果使用了 LOCAL 關鍵字,則表示從本地文件系統加載數據,否則從HDFS加載數據。
  • 如果使用了 OVERWRITE 關鍵字,則表示將數據加載到表中時會覆蓋原有數據。

例如,以下命令從本地文件系統加載數據文件到一個Hive表中:

# 導入本地文件系統文件數據到表,LOCAL
LOAD DATA LOCAL INPATH '/path/to/datafile' INTO TABLE mytable;

3、外部表方式

在Hive中,可以創建外部表,這樣可以將數據存儲在HDFS或本地文件系統中,并且不會影響到原始數據文件。

  1. 創建外部表:使用 CREATE EXTERNAL TABLE 語句創建外部表,同時指定外部表的表結構和數據存儲位置。例如:
CREATE EXTERNAL TABLE mytable (col1 INT, col2 STRING)
ROW FORMAT DELIMITED FIELDS TERMINATED BY ','
LOCATION '/path/to/datafile';

其中,mytable 是外部表的名稱,col1 和 col2 是表的兩個列,ROW FORMAT 和 FIELDS TERMINATED BY 關鍵字指定了數據格式和分隔符,LOCATION 關鍵字指定了數據存儲位置,可以是HDFS或本地文件系統路徑。

  1. 將數據文件復制到指定位置:將數據文件復制到指定的數據存儲位置,例如將數據文件復制到'/path/to/datafile'目錄下。
  2. 查詢數據:使用 SELECT 語句查詢數據。Hive會自動讀取外部表的數據文件并將其解析為表格數據,然后返回查詢結果。例如:
SELECT * FROM mytable;

【注意】:

  • 創建外部表時,表結構和數據存儲位置需要與實際數據文件一致,否則查詢結果可能會不正確。
  • 同時,使用外部表方式導入數據時,Hive不會移動或修改數據文件,因此需要手動將數據文件復制到指定位置,并保證數據文件的完整性。

需要注意的是,向Hive表中添加數據時,數據格式和分隔符需要與表定義中的一致,否則會導致數據無法正確解析。可以使用 ROW FORMAT 和FIELDS TERMINATED BY等關鍵字來指定數據格式和分隔符。

4)DDL 常見操作

1、創建表

使用 CREATE TABLE 語句來創建表。

語法:

CREATE TABLE table_name (col1 data_type, col2 data_type, ...)

示例:

CREATE TABLE employee (id INT, name STRING, age INT, salary FLOAT);

# 添加數據,不建議使用INSERT 效率很低,一般使用LOAD DATA方式導入數據
INSERT INTO employee VALUES (1, 'Alice', 25, 5000.00), (2, 'Bob', 30, 6000.00), (3, 'Charlie', 35, 7000.00);

# 導入數據(HDFS)
LOAD DATA INPATH '/path/to/input/data' INTO TABLE employee;

2、修改表

使用 ALTER TABLE 語句來修改表結構。

語法:

ALTER TABLE table_name ADD COLUMN col_name data_type
ALTER TABLE table_name DROP COLUMN col_name
ALTER TABLE table_name RENAME TO new_table_name

示例:

ALTER TABLE employee ADD COLUMN gender STRING;

3、刪除表

使用 DROP TABLE 語句來刪除表。

語法:

DROP TABLE table_name

示例:

DROP TABLE employee

4、創建分區表

用 CREATE TABLE ... PARTITIONED BY 語句來創建分區表。

語法:

CREATE TABLE table_name (col1 data_type, col2 data_type, ...)
PARTITIONED BY (partition_col1 data_type, partition_col2 data_type, ...)

示例:

CREATE TABLE employee_partitioned (id INT, name STRING, age INT, salary FLOAT)
PARTITIONED BY (gender STRING);

5、創建外部表

用 CREATE EXTERNAL TABLE 語句來創建外部表。

語法:

CREATE EXTERNAL TABLE table_name (col1 data_type, col2 data_type, ...)
LOCATION '/path/to/table'

示例:

CREATE EXTERNAL TABLE employee_external (id INT, name STRING, age INT, salary FLOAT)
ROW FORMAT DELIMITED FIELDS TERMINATED BY ','
LOCATION '/user/hive/warehouse/employee_external';

五、視圖操作

1)創建視圖

用 CREATE VIEW 語句來創建視圖。

語法:

CREATE VIEW view_name AS SELECT col1, col2, ... FROM table_name

示例:

CREATE VIEW employee_view AS SELECT id, name, age FROM employee WHERE age > 25;

2)修改視圖

用 ALTER VIEW 語句來修改視圖。

語法:

ALTER VIEW view_name AS SELECT col1, col2, ... FROM table_name WHERE condition

示例:

ALTER VIEW employee_view AS SELECT id, name, age, salary FROM employee WHERE age > 25;

3)刪除視圖

用 DROP VIEW 語句來修改視圖。

語法:

DROP VIEW view_name

示例:

DROP VIEW employee_view;

4)查看視圖定義

用 DESCRIBE VIEW 語句來查看視圖定義。

語法:

DESCRIBE VIEW view_name

示例:

DESCRIBE VIEW employee_view;

總之,Hive中的DDL操作和視圖操作可以幫助用戶定義和管理表、視圖等數據結構,從而更加靈活和高效地管理和查詢數據。用戶可以根據實際需求選擇使用哪種操作方式,以達到更好的數據管理和操作效果。

責任編輯:武曉燕 來源: 今日頭條
相關推薦

2017-07-07 17:11:21

MySQLDDL操作視圖

2023-05-06 07:15:59

Hive內置函數工具

2023-05-11 00:17:44

分區HiveReduce

2023-05-08 00:08:51

Hive機制場景

2020-11-03 10:16:24

Hive數據傾斜Hive SQL

2023-05-03 22:09:02

Hive分區工具,

2010-05-04 17:17:49

Oracle數據庫

2023-01-26 23:59:24

Ansibleplaybook列表

2023-05-09 07:46:32

2023-08-08 00:11:57

命令行工具查詢

2013-01-07 10:09:56

大數據數據民主

2021-06-10 19:10:32

大數據大數據應用大數據技術

2016-10-12 18:58:15

大數據PIGHive

2012-11-08 10:09:57

大數據HIVE

2010-08-04 11:03:03

DB2數據表

2022-12-13 09:01:50

云原生組件數據

2009-12-16 11:28:09

Linux Ubunt

2009-12-21 18:46:50

WCF傳輸大數據

2013-10-08 10:53:36

2022-10-10 12:54:00

Flink運維
點贊
收藏

51CTO技術棧公眾號

亚洲第一福利一区| 免费高清在线视频一区·| 亚洲精品电影网在线观看| 国产在线精品91| 国产黄在线播放| 日韩精品亚洲一区二区三区免费| 日韩在线小视频| 国产免费一区二区三区最新6| 欧美magnet| 亚洲免费观看高清完整版在线观看 | 天天综合天天干| 欧美高清视频手机在在线| 精品国产乱码久久久久久1区2区 | 青青草在线观看视频| 中国av一区| 欧美成人精品1314www| 精品少妇无遮挡毛片| 日韩激情av| 日本一二三四高清不卡| 国内精品视频免费| 99久久久无码国产精品免费| 老司机一区二区三区| 欧美老肥婆性猛交视频| 亚洲码无人客一区二区三区| 北条麻妃在线一区二区免费播放 | 日本久久亚洲电影| 欧美日韩免费一区二区| 成人黄色小视频| 亚洲国产成人爱av在线播放| 午夜av中文字幕| 国产精欧美一区二区三区蓝颜男同| 亚洲理论在线观看| 伊人久久av导航| 经典三级在线| 91亚洲精华国产精华精华液| 亚洲bt欧美bt日本bt| 伊人久久亚洲综合| 天堂av在线一区| 欧美一级片一区| 日韩女同强女同hd| 欧美国产另类| 欧美乱大交做爰xxxⅹ性3| 国产成人在线网址| 欧美日韩精品一区二区视频| 亚洲裸体xxxx| 大黑人交xxx极品hd| 清纯唯美亚洲经典中文字幕| 精品久久久久久久久久久久久久久久久| 亚洲综合日韩欧美| 欧美日韩五区| 欧美少妇xxx| 色婷婷狠狠18| 成人亚洲网站| 欧美日韩成人综合| 亚洲欧美日韩综合网| 成人在线免费av| 欧美久久久影院| 亚洲在线观看网站| 在线观看视频一区二区三区| 精品日韩成人av| 美女久久久久久久久| 福利电影一区 | 99riav在线| 国产欧美综合色| 性欧美大战久久久久久久免费观看| 好男人免费精品视频| 欧美激情资源网| 亚洲三区四区| h片在线播放| 夜夜操天天操亚洲| 国产96在线 | 亚洲| 一本大道色婷婷在线| 色综合夜色一区| 五月婷婷激情久久| 豆花视频一区| 精品欧美黑人一区二区三区| 久久免费精品国产| 亚洲婷婷丁香| 色偷偷噜噜噜亚洲男人的天堂| 国产精品免费在线视频| 欧美午夜国产| 国产成人综合一区二区三区| 一级黄色大片免费| 丰满少妇久久久久久久| 欧美午夜精品久久久久免费视| 一级毛片视频在线| 亚洲综合网站在线观看| 精品99在线视频| 欧美综合影院| 亚洲第一黄色网| 五月婷婷欧美激情| 欧美精品国产一区二区| 国产成人激情视频| 国产免费黄色大片| 99热国产精品| 一区二区三视频| av今日在线| 欧美日韩国产综合久久| 国产高潮视频在线观看| 残酷重口调教一区二区| 久久久久久久久爱| 最新黄色网址在线观看| 成人深夜视频在线观看| 婷婷五月色综合| av中文字幕电影在线看| 日韩欧美中文免费| 欧美熟妇另类久久久久久多毛| 亚洲欧洲色图| 欧美激情xxxx性bbbb| 羞羞色院91蜜桃| 99免费精品在线| 欧美日韩一级在线| 午夜无码国产理论在线| 欧美精品一区二区三区在线播放| 极品尤物一区二区| 亚洲伊人网站| 国产精品免费一区二区三区四区| 亚乱亚乱亚洲乱妇| 色综合久久久久久久久| 激情综合激情五月| 亚洲精彩视频| 成人黄色在线免费| 懂色av中文在线| 欧美性猛交xxxx偷拍洗澡 | 91免费看视频| 欧美黑人在线观看| 欧美二区观看| 久久不射热爱视频精品| 中文字幕日日夜夜| 久久久久久麻豆| 国产一区二区网| 97se亚洲国产一区二区三区| 久久久极品av| 亚洲天堂网视频| 欧美激情一二三区| 欧美日韩在线成人| 蜜臀av免费一区二区三区| 性欧美视频videos6一9| 国产黄色大片网站| 亚洲男人的天堂一区二区| 成人黄色一级大片| 99精品国产一区二区三区| 国产日韩在线视频| 日本电影全部在线观看网站视频| 欧美性色黄大片| 极品人妻videosss人妻| 日本中文字幕一区二区有限公司| 日韩av在线一区二区三区| 欧亚一区二区| 一区二区三区精品99久久| 中文字幕在线天堂| 国产欧美一区二区精品性色超碰 | 久久久精品区| 欧美成人一区在线| 成人激情四射网| 亚洲一区在线播放| 四虎永久免费观看| 国产欧美不卡| 日韩av一级大片| 日韩精品第二页| 欧美成人免费播放| 日韩一区免费视频| 疯狂欧美牲乱大交777| 国产精品815.cc红桃| 日韩高清不卡一区二区| 亚洲欧美一区二区原创| 99国内精品久久久久| 欧美人在线视频| 日韩一区二区三区不卡| 91久久精品一区二区三| 中文字幕资源站| 国产成人午夜精品影院观看视频| 阿v天堂2018| 女厕嘘嘘一区二区在线播放| 国产精品视频午夜| 2021国产在线| 亚洲精品中文字幕女同| 亚洲一区二区三区网站| 亚洲黄色免费电影| 久久久无码人妻精品一区| 蜜桃视频一区二区三区在线观看| 成人在线观看www| 久久精品福利| 国产日韩中文在线| 懂色av一区| 亚洲天堂一区二区三区| 国产成人精品亚洲精品色欲| 偷拍日韩校园综合在线| 黄色激情小视频| 岛国精品在线播放| 青青草精品视频在线观看| 欧美伊人久久| 日本高清一区| 中文字幕久久精品一区二区| 日韩av大片免费看| 亚洲妇熟xxxx妇色黄| 亚洲欧洲在线播放| 午夜久久久久久久久久| 91国产福利在线| 精品一区在线视频| 国产精品入口麻豆九色| 欧美xxxx日本和非洲| 日韩av在线发布| 男女啪啪免费视频网站| 久久久久久影院| 色噜噜狠狠色综合网| 国产精品黄网站| 国产一区二区在线免费视频| 神马久久午夜| 欧美黑人性生活视频| 99re在线视频| 亚洲深夜福利视频| 殴美一级特黄aaaaaa| 在线播放国产精品二区一二区四区| aaa人片在线| 亚洲尤物在线视频观看| 国产在线观看免费视频软件| 久久久91精品国产一区二区精品 | 国产精品午夜久久| 亚洲午夜久久久久久久久红桃 | 高清视频一区二区三区| 男女啪啪999亚洲精品| 51视频国产精品一区二区| 任你弄在线视频免费观看| 日韩在线观看成人| 成年人视频网站在线| 国产精品成av人在线视午夜片| 日日摸天天添天天添破| 亚洲欧洲精品一区二区精品久久久| 一边摸一边做爽的视频17国产 | 欧美专区日韩视频| 五月花成人网| 久久久999精品| 在线国产情侣| 中文字幕日韩精品在线观看| 你懂的在线免费观看| 亚洲精品久久久一区二区三区 | 欧美精品做受xxx性少妇| 成全电影播放在线观看国语| 亚洲精选一区二区| 五月婷在线视频| 日韩精品极品毛片系列视频| 高h放荡受浪受bl| 精品欧美乱码久久久久久1区2区 | 成人精品免费网站| 苍井空张开腿实干12次| 国产成人免费av在线| 农村末发育av片一区二区 | 欧美日韩一本到| 中文字幕观看在线| 欧美日韩成人综合| 国产女主播福利| 日韩欧美的一区| 韩国中文字幕hd久久精品| 欧美mv日韩mv亚洲| 黄色小视频免费在线观看| 亚洲第一精品福利| 午夜视频在线免费播放| 日韩国产欧美精品在线| 韩国福利在线| www.亚洲一区| 色av手机在线| 2019最新中文字幕| 亚洲一区二区三区四区| 成人免费网站在线| 日韩欧美久久| 免费在线成人av电影| 清纯唯美日韩| 日本福利视频在线观看| 99国产精品| 亚洲xxxx2d动漫1| 国产精品资源站在线| 亚洲国产精品自拍视频| 国产欧美一区二区精品忘忧草| 韩国一级黄色录像| 亚洲大片精品永久免费| 怡红院av久久久久久久| 在线成人av网站| 欧日韩在线视频| 国产亚洲美女久久| 日日夜夜天天综合入口| 国产不卡一区二区在线播放| 57pao成人永久免费| 国产另类自拍| 日韩国产一区二区| 久久艹国产精品| 奇米精品一区二区三区在线观看| www.偷拍.com| 91麻豆视频网站| 我要看黄色一级片| 精品国产户外野外| 亚洲字幕av一区二区三区四区| 精品免费视频一区二区| 国产福利片在线| 欧美国产第二页| 麻豆精品蜜桃| 国产伦精品一区二区三区免费视频| 国产一区二区三区电影在线观看| 日本高清xxxx| 丝袜美腿亚洲综合| 农村末发育av片一区二区| 国产精品色婷婷| 黄色片视频网站| 这里只有精品电影| 成人在线观看网站| 久久久久久久一区二区三区| 免费视频观看成人| 欧美在线播放一区二区| 精品999日本| www.成人黄色| 久久久精品免费观看| 国产无码精品久久久| 在线综合视频播放| 成人资源www网在线最新版| 欧美性在线视频| 亚洲性视频在线| 中文字幕中文字幕在线中心一区| 亚洲一区二区三区免费在线观看| 韩国三级与黑人| 国产精品色呦呦| 久久久久久久亚洲| 日韩精品一区二区视频| 国模雨婷捆绑高清在线| 亚洲综合自拍一区| 99精品在线免费在线观看| 色诱视频在线观看| 91免费国产视频网站| 中文字幕第28页| 日韩欧美中文一区| 成人在线免费看黄| 国产在线a不卡| 999精品在线| 亚洲最大成人在线观看| 欧美国产一区在线| 日本精品入口免费视频| 精品亚洲一区二区三区在线播放| xxx.xxx欧美| 国产精品久久久久免费| 亚洲成人原创| 亚洲色偷偷色噜噜狠狠99网| 一区二区三区免费观看| 不卡视频在线播放| 欧美日韩第一页| 91精品啪在线观看国产爱臀| 乱熟女高潮一区二区在线| 国产乱国产乱300精品| 极品久久久久久| 日韩网站在线看片你懂的| 亚洲小说区图片区都市| 99久久精品免费看国产四区 | 亚洲人成网站77777在线观看| 少妇高潮喷水在线观看| 972aa.com艺术欧美| 国产在线观看黄色| 亚洲欧美资源在线| 视频一区在线免费看| 伊人久久av导航| 国产精品一卡二卡| 国产系列精品av| 日韩精品中文字幕在线播放| 中文字幕av一区二区三区佐山爱| 午夜精品一区二区三区四区| 久久国产精品99久久人人澡| 男女性高潮免费网站| 337p日本欧洲亚洲大胆精品| 美女扒开腿让男人桶爽久久软| 麻豆久久久9性大片| 水野朝阳av一区二区三区| 任你操精品视频| 日韩欧美成人一区| 亚洲欧美韩国| 亚洲午夜精品久久久久久浪潮| 精品影视av免费| 久久午夜鲁丝片午夜精品| 日韩精品亚洲视频| 欧美91在线|欧美| 亚洲熟妇无码av在线播放| 95精品视频在线| 中文资源在线播放| 欧美人成在线视频| 欧美热在线视频精品999| 一区二区三区四区毛片| 亚洲超碰精品一区二区| 国产福利小视频在线观看| 91嫩草免费看| 久久国产直播| 国内偷拍精品视频| 亚洲欧美另类中文字幕| 国产精品一区二区美女视频免费看 | 黄色的网站在线观看| 精品国产一区二区三区免费 | 亚洲精品视频大全| 欧美日本一道本在线视频| 欧美1—12sexvideos| 日本一区二区免费看| 国产乱子伦一区二区三区国色天香| 在线天堂中文字幕| 久久99精品久久久久久琪琪| 国产真实有声精品录音| 中文字幕人妻熟女在线|