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

什么是數(shù)據(jù)同步利器DataX,如何使用?

開(kāi)發(fā) 開(kāi)發(fā)工具
DataX 是阿里云 DataWorks數(shù)據(jù)集成 的開(kāi)源版本,使用Java 語(yǔ)言編寫(xiě),在阿里巴巴集團(tuán)內(nèi)被廣泛使用的離線數(shù)據(jù)同步工具/平臺(tái)。

今天給大家分享一個(gè)阿里開(kāi)源的數(shù)據(jù)同步工具DataX,在Github擁有14.8k的star,非常受歡迎,地址:https://github.com/alibaba/DataX

什么是 Datax?

DataX 是阿里云 DataWorks數(shù)據(jù)集成 的開(kāi)源版本,使用Java 語(yǔ)言編寫(xiě),在阿里巴巴集團(tuán)內(nèi)被廣泛使用的離線數(shù)據(jù)同步工具/平臺(tái)。DataX 實(shí)現(xiàn)了包括 MySQL、Oracle、OceanBase、SqlServer、Postgre、HDFS、Hive、ADS、HBase、TableStore(OTS)、MaxCompute(ODPS)、Hologres、DRDS, databend 等各種異構(gòu)數(shù)據(jù)源之間高效的數(shù)據(jù)同步功能。

圖片圖片

應(yīng)用場(chǎng)景有那些?

  1. 數(shù)據(jù)倉(cāng)庫(kù)同步:DataX 可以幫助將數(shù)據(jù)從一個(gè)數(shù)據(jù)倉(cāng)庫(kù)(如關(guān)系型數(shù)據(jù)庫(kù)、大數(shù)據(jù)存儲(chǔ)系統(tǒng)等)同步到另一個(gè)數(shù)據(jù)倉(cāng)庫(kù),實(shí)現(xiàn)數(shù)據(jù)的遷移、備份或復(fù)制。
  2. 數(shù)據(jù)庫(kù)遷移:當(dāng)我們需要將數(shù)據(jù)從一個(gè)數(shù)據(jù)庫(kù)平臺(tái)遷移到另一個(gè)數(shù)據(jù)庫(kù)平臺(tái)時(shí),DataX 可以幫助完成數(shù)據(jù)的轉(zhuǎn)移和轉(zhuǎn)換工作
  3. 數(shù)據(jù)集成與同步:DataX 可以用作數(shù)據(jù)集成工具,用于將多個(gè)數(shù)據(jù)源的數(shù)據(jù)進(jìn)行整合和同步。它支持多種數(shù)據(jù)源,包括關(guān)系型數(shù)據(jù)庫(kù)、NoSQL 數(shù)據(jù)庫(kù)、文件系統(tǒng)等,可以將這些數(shù)據(jù)源的數(shù)據(jù)整合到一個(gè)目標(biāo)數(shù)據(jù)源中。
  4. 數(shù)據(jù)清洗與轉(zhuǎn)換:DataX 提供了豐富的數(shù)據(jù)轉(zhuǎn)換能力,可以對(duì)數(shù)據(jù)進(jìn)行清洗、過(guò)濾、映射、格式轉(zhuǎn)換等操作。這對(duì)于數(shù)據(jù)倉(cāng)庫(kù)、數(shù)據(jù)湖和數(shù)據(jù)集市等數(shù)據(jù)存儲(chǔ)和分析平臺(tái)非常有用,可以幫助提高數(shù)據(jù)質(zhì)量和一致性。
  5. 數(shù)據(jù)備份與恢復(fù):DataX 可以用于定期備份和恢復(fù)數(shù)據(jù)。通過(guò)配置定時(shí)任務(wù),可以將數(shù)據(jù)從源端備份到目標(biāo)端,并在需要時(shí)進(jìn)行數(shù)據(jù)恢復(fù)。

DataX支持那些數(shù)據(jù)源?

圖片圖片

架構(gòu)設(shè)計(jì)

圖片圖片

DataX作為離線數(shù)據(jù)同步框架,采用Framework + plugin架構(gòu)構(gòu)建。將數(shù)據(jù)源讀取和寫(xiě)入抽象成為Reader/Writer插件,納入到整個(gè)同步框架中。

  • Reader:Reader為數(shù)據(jù)采集模塊,負(fù)責(zé)采集數(shù)據(jù)源的數(shù)據(jù),將數(shù)據(jù)發(fā)送給Framework。
  • Writer:Writer為數(shù)據(jù)寫(xiě)入模塊,負(fù)責(zé)不斷向Framework取數(shù)據(jù),并將數(shù)據(jù)寫(xiě)入到目的端。
  • Framework:Framework用于連接reader和writer,作為兩者的數(shù)據(jù)傳輸通道,并處理緩沖,流控,并發(fā),數(shù)據(jù)轉(zhuǎn)換等核心技術(shù)問(wèn)題。

DataX 開(kāi)源版本支持單機(jī)多線程模式完成同步作業(yè)運(yùn)行,如下圖

圖片圖片

  1. DataX完成單個(gè)數(shù)據(jù)同步的作業(yè),稱(chēng)之為Job,DataX接受到一個(gè)Job之后,將啟動(dòng)一個(gè)進(jìn)程來(lái)完成整個(gè)作業(yè)同步過(guò)程。DataX Job模塊是單個(gè)作業(yè)的中樞管理節(jié)點(diǎn),承擔(dān)了數(shù)據(jù)清理、子任務(wù)切分(將單一作業(yè)計(jì)算轉(zhuǎn)化為多個(gè)子Task)、TaskGroup管理等功能。
  2. DataXJob啟動(dòng)后,會(huì)根據(jù)不同的源端切分策略,將Job切分成多個(gè)小的Task(子任務(wù)),以便于并發(fā)執(zhí)行。Task便是DataX作業(yè)的最小單元,每一個(gè)Task都會(huì)負(fù)責(zé)一部分?jǐn)?shù)據(jù)的同步工作。
  3. 切分多個(gè)Task之后,DataX Job會(huì)調(diào)用Scheduler模塊,根據(jù)配置的并發(fā)數(shù)據(jù)量,將拆分成的Task重新組合,組裝成TaskGroup(任務(wù)組)。每一個(gè)TaskGroup負(fù)責(zé)以一定的并發(fā)運(yùn)行完畢分配好的所有Task,默認(rèn)單個(gè)任務(wù)組的并發(fā)數(shù)量為5。
  4. 每一個(gè)Task都由TaskGroup負(fù)責(zé)啟動(dòng),Task啟動(dòng)后,會(huì)固定啟動(dòng)Reader—>Channel—>Writer的線程來(lái)完成任務(wù)同步工作。
  5. DataX作業(yè)運(yùn)行起來(lái)之后, Job監(jiān)控并等待多個(gè)TaskGroup模塊任務(wù)完成,等待所有TaskGroup任務(wù)完成后Job成功退出。否則,異常退出,進(jìn)程退出值非0

DataX調(diào)度流程

舉例來(lái)說(shuō),用戶提交了一個(gè)DataX作業(yè),并且配置了20個(gè)并發(fā),目的是將一個(gè)100張表的mysql數(shù)據(jù)同步到odps里面。DataX的調(diào)度決策是:

  1. Job根據(jù)分表切分成了100個(gè)Task。
  2. 根據(jù)20個(gè)并發(fā),DataX計(jì)算需要分配4個(gè)TaskGroup。
  3. 4個(gè)TaskGroup平分切分好的100個(gè)Task,每一個(gè)TaskGroup負(fù)責(zé)5個(gè)并發(fā)共計(jì)運(yùn)行25個(gè)Task。

如何使用 Datax?

點(diǎn)擊datax 下載,下載后解壓至本地某個(gè)目錄,如下圖

圖片圖片

用例說(shuō)明

這里為了方便演示,我們同步MySQL的user_info表至MySQL的ods_test_mysql_user_info_m,同步條件為更新時(shí)間字段,如下

在實(shí)際工作中你可以選擇不同類(lèi)型的數(shù)據(jù)源測(cè)試

drop table ods_test_mysql_user_info_m

CREATE TABLE `user_info` (
  `id` int NOT NULL COMMENT 'ID',
  `name` varchar(50) NOT NULL COMMENT '名稱(chēng)',
  `sex` tinyint NOT NULL COMMENT '性別 1男 2女',
  `phone` varchar(11) COMMENT '手機(jī)',
 `address` varchar(1000)  COMMENT '地址',
 `age` int  COMMENT '年齡',
 `create_time` datetime(6) NOT NULL DEFAULT CURRENT_TIMESTAMP(6) COMMENT '創(chuàng)建時(shí)間',
  `update_time` datetime(6) NOT NULL DEFAULT CURRENT_TIMESTAMP(6) ON UPDATE CURRENT_TIMESTAMP(6) COMMENT '修改時(shí)間',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COMMENT='用戶信息表';

CREATE TABLE `ods_test_mysql_user_info_m` (
  `id` int NOT NULL COMMENT 'ID',
  `name` varchar(50) NOT NULL COMMENT '名稱(chēng)',
  `sex` tinyint NOT NULL COMMENT '性別 1男 2女',
  `phone` varchar(11) COMMENT '手機(jī)',
 `address` varchar(1000)  COMMENT '地址',
 `age` int  COMMENT '年齡',
 `create_time` datetime(6) NOT NULL DEFAULT CURRENT_TIMESTAMP(6) COMMENT '創(chuàng)建時(shí)間',
  `update_time` datetime(6) NOT NULL DEFAULT CURRENT_TIMESTAMP(6) ON UPDATE CURRENT_TIMESTAMP(6) COMMENT '修改時(shí)間',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COMMENT='用戶信息數(shù)倉(cāng)表';

在user_info表中插入數(shù)據(jù)如下

圖片圖片

創(chuàng)建作業(yè)的配置文件(json格式)

在 datax 的 script 目錄,創(chuàng)建ods_test_mysql_user_info_m.json文件,配置如下,mysqlreader表示讀取端,mysqlwriter表示寫(xiě)入端

{
    "job": {
        "content": [
            {
                "reader": {
                    "name": "mysqlreader",
                    "parameter": {
                        "column": ["id","name","sex","phone","address","age","create_time","update_time"],
                       "splitPk": "id",
                        "connection": [
                            {
                                "jdbcUrl": ["jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=utf-8&useSSL=false"],
                                "table": ["user_info"]
                            }
                        ],
                        "password": "root",
                        "username": "root",
                        "where": "update_time > '${updateTime}' "
                    }
                },
                "writer": {
                    "name": "mysqlwriter",
                    "parameter": {
                       "writeMode": "replace",
                        "column": ["id","name","sex","phone","address","age","create_time","update_time"],
                        "connection": [
                            {
                                "jdbcUrl":"jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=utf-8&useSSL=false",
                                "table": ["ods_test_mysql_user_info_m"]
                            }
                        ],
                        "username": "root",
                        "password": "root",
                        "preSql": [],
                        "session": [
                          "set session sql_mode='ANSI'"
                        ]

                    }
                }
            }
        ],
        "setting": {
            "speed": {
                "channel": "5"
            }
        }
    }
}

創(chuàng)建執(zhí)行腳本

為了更貼合實(shí)際,寫(xiě)一個(gè)調(diào)度腳本sync.sh支持動(dòng)態(tài)參數(shù)來(lái)執(zhí)行任務(wù)

#!/bin/bash
## 執(zhí)行示例 sh /Users/weizhao.dong/Documents/soft/datax/datax-script/call.sh /Users/weizhao.dong/Documents/soft/datax/datax-script/dwd_g2park_inout_report_s.json 1
jsnotallow=$1
echo '執(zhí)行腳本:'$jsonScript
interval=$2
echo "時(shí)間間隔(分鐘):"$interval
now_time=$(date '+%Y-%m-%d %H:%M:%S')
echo "當(dāng)前時(shí)間:"$now_time
update_time=$(date -v -${interval}M  '+%Y-%m-%d %H:%M:%S')
#linux 更新時(shí)間獲取
#update_time=$(date -d "${now_time} $interval minute ago" +"%Y-%m-%d %H:%M:%S")
echo "更新時(shí)間:"$update_time
#執(zhí)行
python3 /Users/weizhao.dong/Documents/soft/datax/bin/datax.py $jsonScript -p "-DupdateTime='${update_time}'"

假設(shè)我們要執(zhí)以上ods_test_mysql_user_info_m.json腳本,并且同步十分鐘之前的數(shù)據(jù),如下

./sync.sh ods_test_mysql_user_info_m.json 10

測(cè)試

圖片圖片

執(zhí)行./sync.sh ods_test_mysql_user_info_m.json 10進(jìn)行同步

圖片圖片

圖片

圖片圖片

以上結(jié)果可能有些人有疑問(wèn),就三條數(shù)據(jù)執(zhí)行時(shí)間為 10s,其實(shí)這個(gè) 10s主要是初始化時(shí)間,耗時(shí)過(guò)長(zhǎng),同步的數(shù)據(jù)量多了優(yōu)勢(shì)就體現(xiàn)出來(lái)了,以下為實(shí)際生產(chǎn)同步數(shù)據(jù)結(jié)果,可以看到同步63102條耗時(shí)22s

推薦用法

以上我們只是通過(guò)一個(gè)簡(jiǎn)單的示例來(lái)演示了dataX如何使用,如果只是一次性同步,沒(méi)問(wèn)題,但是如果是周期性進(jìn)行同步,有以下幾種方式推薦

crontab調(diào)度

這種方式是最簡(jiǎn)單的,可以使用操作系統(tǒng)中的crontab定時(shí)調(diào)度,通過(guò)crontab -e編輯corn 任務(wù),添加對(duì)應(yīng)腳本即可

海豚調(diào)度器

在種方式在大數(shù)據(jù)領(lǐng)域用的比較多,典型場(chǎng)景就是 mysql 同步到數(shù)倉(cāng),海豚調(diào)度器內(nèi)置了 datax 并且提供了圖形化配置界面,配置起來(lái)非常方便

圖片圖片

圖片圖片

同時(shí)每次執(zhí)行都有記錄,并且都有對(duì)應(yīng)的日志

圖片圖片

定時(shí)任務(wù)框架(elasticjob/xxl-job)

定時(shí)調(diào)度框架都支持調(diào)度 shell 腳本,通過(guò)傳入對(duì)應(yīng)參數(shù)也可執(zhí)行

圖片 圖片

責(zé)任編輯:武曉燕 來(lái)源: 架構(gòu)成長(zhǎng)指南
相關(guān)推薦

2016-08-21 14:19:05

數(shù)據(jù)工具DataXSqoop

2024-09-14 10:39:21

瀏覽器區(qū)域導(dǎo)航

2025-08-11 01:15:00

2020-09-21 06:53:41

NoSQL高并發(fā)面試

2024-02-29 08:02:27

KubernetesDaemonSet集群

2024-04-10 10:11:14

藍(lán)牙藍(lán)牙網(wǎng)關(guān)

2023-03-17 18:58:36

日志查詢同步

2023-09-07 08:15:58

場(chǎng)景同步異步

2023-06-05 08:00:00

mTLSIstio安全

2016-08-18 01:45:05

數(shù)據(jù)科學(xué)數(shù)據(jù)產(chǎn)品

2022-04-26 16:56:20

行為數(shù)據(jù)數(shù)據(jù)

2023-11-09 12:59:00

微力同步數(shù)據(jù)傳輸工具

2020-11-17 14:28:56

數(shù)據(jù)中心

2022-02-27 15:28:53

大數(shù)據(jù)挑戰(zhàn)戰(zhàn)略

2023-09-15 16:14:14

2020-04-14 14:50:13

ArchLinuxAUR

2021-02-18 09:23:47

數(shù)據(jù)庫(kù)分區(qū)數(shù)據(jù)庫(kù)倉(cāng)庫(kù)

2025-10-15 02:11:00

2017-12-19 21:29:58

物聯(lián)網(wǎng)區(qū)塊鏈大數(shù)據(jù)

2013-03-06 16:06:31

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

中文字幕在线中文| 日韩三级在线观看| 精品人伦一区二区三区| 日韩福利片在线观看| 成人乱码手机视频| 久久久久久久久久久9不雅视频| 一本到一区二区三区| 日韩一区不卡| 国产suv一区二区| 亚洲国产专区| 国产亚洲精品久久| 一区二区免费在线观看| 国产又粗又猛又爽又黄的| 你懂的成人av| 日韩久久免费电影| 三级a在线观看| 欧美v亚洲v| 久久免费视频色| 久久九九免费视频| www国产视频| 国产视频福利在线| 狠狠色丁香九九婷婷综合五月| 欧美精品在线视频观看| 播金莲一级淫片aaaaaaa| 日韩精品一级毛片在线播放| 亚洲线精品一区二区三区 | 破处女黄色一级片| 欧美高清视频看片在线观看| 欧美日韩一卡二卡三卡| 九九爱精品视频| 电影av在线| 成人久久久精品乱码一区二区三区| 国产成人a亚洲精品| 毛毛毛毛毛毛毛片123| 亚洲精品88| 久久亚洲资源中文字| 精品福利一区| 在线一区二区三区| 超碰人人爱人人| 日韩精品视频无播放器在线看| 日韩一级在线| 亚洲激情在线观看视频免费| 538在线视频观看| 97超碰免费在线| 欧美极品aⅴ影院| 91网站免费看| а中文在线天堂| 一区二区三区成人精品| 欧美另类交人妖| 五月激情四射婷婷| 亚洲人成精品久久久| 精品久久久久久久久久久久包黑料 | 中文字幕日韩高清| 插吧插吧综合网| 99综合久久| 欧美色区777第一页| 男女高潮又爽又黄又无遮挡| 色老头在线观看| 自拍视频在线观看一区二区| 先锋影音一区二区三区| 裸体xxxx视频在线| 99精品偷自拍| 欧美猛少妇色xxxxx| 9.1片黄在线观看| 国产精品最新| 日韩高清有码在线| 亚洲中文字幕无码一区| 51亚洲精品| 日韩精品一区二| 午夜免费福利网站| 欧美精品三级在线| 日韩欧美国产一二三区| 波多野结衣免费观看| 日日夜夜精品| 欧美高清你懂得| 91日韩精品视频| 欧美日韩亚洲国产| 欧美综合天天夜夜久久| 欧美性猛交xxx乱久交| 国产一区二区精品调教| 欧美三级在线播放| www.se五月| 欧美一区二区三区婷婷| 欧美巨大另类极品videosbest| 手机版av在线| 无人区乱码一区二区三区| 欧美大片国产精品| 少妇高潮一69aⅹ| 一区二区三区视频免费视频观看网站| 日韩欧美一区二区三区在线| 91精品人妻一区二区三区四区| 日韩区一区二| 亚洲第一视频网| 国产又粗又猛又爽又黄av| 欧美色女视频| 久久6免费高清热精品| 精品人妻在线播放| 亚洲免费网址| 国产自产女人91一区在线观看| 国产男男gay网站| 成人免费视频视频在线观看免费| 国严精品久久久久久亚洲影视| 神马一区二区三区| 国产精品全国免费观看高清 | 亚洲国产另类精品专区| 国产99久久九九精品无码| 成人自拍视频网| 欧美成人一区二区三区| mm131美女视频| 久久香蕉国产| 久久久久久免费精品| 四虎影院在线免费播放| 国产很黄免费观看久久| 六十路精品视频| 亚洲天堂男人网| 国产999精品久久久久久绿帽| 欧美韩国日本精品一区二区三区| 日本中文字幕电影在线免费观看| 亚洲一区av在线| 91香蕉视频导航| 影音先锋欧美激情| 在线观看国产成人av片| 亚洲天堂黄色片| 久久综合九色综合欧美狠狠| 91日韩在线视频| 黄色网址在线播放| 亚洲一区二区三区中文字幕| 亚洲欧美日韩一级| 欧美午夜18电影| 久久国产一区二区三区| 9i看片成人免费看片| 国产精品伊人色| 四虎永久国产精品| 二区三区不卡| 亚洲精品在线电影| 国产激情av在线| 亚洲一区欧美二区| 都市激情久久久久久久久久久| av播放在线| 欧美性猛交xxxxx水多| 俄罗斯女人裸体性做爰| 久久一区91| 国产激情视频一区| 日本一区高清| 亚洲午夜av在线| 国产中文字幕乱人伦在线观看| 亚洲欧美综合久久久久久v动漫| 亚洲国产97在线精品一区| 91视频综合网| 国产一区二区视频在线播放| 欧美精品尤物在线| а√天堂资源官网在线资源| 欧美一级高清大全免费观看| 亚洲精品天堂网| 日韩成人免费电影| 欧美精品尤物在线| 超碰超碰人人人人精品| 亚洲精品国产成人| 久久丫精品久久丫| 国产成人精品免费看| 国产手机视频在线观看| 欧美一区=区三区| 久久精品国产96久久久香蕉| 国产三区在线播放| 夜夜嗨av一区二区三区| 国产又粗又猛又色| 美女黄网久久| 亚洲精品自在在线观看| 精品久久在线| 九九精品在线播放| 天天操天天干天天干| 欧美视频一二三| 中文国语毛片高清视频| 国产剧情一区在线| 欧美精品自拍视频| 国产亚洲欧美日韩在线观看一区二区 | 久久综合久中文字幕青草| 国产成人免费看一级大黄| 亚洲国产成人精品视频| 无码h肉动漫在线观看| 美女视频网站黄色亚洲| 日韩视频一二三| 三级精品视频| 91精品美女在线| eeuss鲁一区二区三区| 亚洲欧美日韩国产精品| 99精品国产99久久久久久97| 欧美日韩国产精品一区二区不卡中文| 色一情一交一乱一区二区三区| 国产一区二区久久| 国产一区二区三区精彩视频| 国产精品久久久久久久免费观看 | 日韩欧美视频专区| 国产精品区免费视频| 91tv亚洲精品香蕉国产一区| 久久99久国产精品黄毛片入口| 日韩a在线观看| 欧美一区二区女人| 黄色网址中文字幕| 亚洲午夜影视影院在线观看| 又色又爽的视频| 97精品电影院| 国产欧美精品一二三| 亚洲影视在线| 国产亚洲黄色片| 欧美好骚综合网| 欧美动漫一区二区| 97超碰成人| 国产日韩精品视频| 女生影院久久| 久久久久久网站| 国产原创在线观看| 尤物精品国产第一福利三区| 殴美一级特黄aaaaaa| 日韩一区二区三区免费看| 波多野结衣家庭主妇| 姬川优奈aav一区二区| 91插插插插插插| 中文字幕av一区二区三区免费看| 中文字幕在线视频播放| 国产综合久久久久影院| 91蝌蚪视频在线观看| 亚洲国产裸拍裸体视频在线观看乱了中文| 视频一区二区在线| 你懂的在线观看一区二区| 91嫩草视频在线观看| 日韩在线你懂得| 国产精品亚洲аv天堂网| 色吧亚洲日本| 午夜欧美不卡精品aaaaa| 在线观看午夜av| 久久久av亚洲男天堂| 1区2区3区在线观看| 亚洲日本成人网| 欧美成人免费| 亚洲欧美日韩在线高清直播| 香蕉视频免费在线看| 亚洲大胆人体在线| 国产成人手机在线| 精品播放一区二区| 欧美 日韩 国产 成人 在线| 精品久久免费看| 深夜福利视频网站| 日韩av一区二区在线| 香蕉视频黄色片| 亚洲欧美日韩精品久久亚洲区 | 久久久精品国产99久久精品芒果| 伊人网综合视频| www.亚洲在线| 中国黄色a级片| 久久精品人人做人人爽人人| 手机免费看av| 国产精品天美传媒| 手机av在线看| 亚洲精品中文字幕在线观看| 麻豆changesxxx国产| 亚洲一区二区在线观看视频| 久久网一区二区| 精品美女国产在线| 无码人妻av一区二区三区波多野| 色婷婷狠狠综合| 在线免费观看视频网站| 制服丝袜在线91| 国模私拍视频在线| 日韩高清av一区二区三区| 第一视频专区在线| 理论片在线不卡免费观看| 天堂8中文在线| 97精品国产97久久久久久免费| 美女网站在线看| 国产精品久久久久福利| 少妇高潮一区二区三区99| 999视频在线免费观看| 国产精品毛片av| 奇米影视首页 狠狠色丁香婷婷久久综合| 国产毛片一区二区三区 | 婷婷在线视频| 欧美日本高清视频| 国偷自产一区二区免费视频| 国产精品爽爽爽| 日韩08精品| 欧美13一14另类| 欧美国产一级| 91专区在线观看| 久久精品国产亚洲高清剧情介绍 | 在线观看视频一区二区三区| 狠狠爱一区二区三区| 日韩国产欧美一区二区| 欧美一二三不卡| 日韩精品亚洲专区| 中文字幕永久免费| 欧美高清在线一区二区| 精品无码av在线| 欧美日韩一区二区三区在线看| 国精品人妻无码一区二区三区喝尿| 亚洲区一区二区| 欧美大胆的人体xxxx| 国产精品wwwwww| 成人爽a毛片免费啪啪红桃视频| 日韩中文一区二区三区| 国产中文一区| 97超碰人人爽| 久久蜜桃av一区精品变态类天堂| 日本一级二级视频| 欧美午夜精品久久久久久超碰| 囯产精品久久久久久| 色七七影院综合| 亚洲永久av| 国产精品我不卡| 香蕉国产精品| 国产极品美女高潮无套久久久| 国产福利精品一区| 无码人妻精品中文字幕| 色偷偷一区二区三区| 亚洲精品一区二区三区区别| 最近2019中文字幕第三页视频| 黄在线观看免费网站ktv| 91在线色戒在线| 日本一区二区在线看| 青青视频在线播放| 国产成人综合在线播放| 日本黄色录像视频| 欧美日韩中文字幕一区| 猫咪在线永久网站| 欧洲成人免费aa| 国产另类在线| 欧美图片激情小说| 国产成人三级在线观看| 日韩欧美国产成人精品免费| 欧美在线短视频| 黄视频在线观看免费| 欧洲永久精品大片ww免费漫画| 久久悠悠精品综合网| 91免费国产精品| 国产老妇另类xxxxx| 中文字幕在线有码| 538在线一区二区精品国产| 中文字幕在线视频区| 国产精品v片在线观看不卡| 精品久久久久久久久久久aⅴ| 久久国产亚洲精品无码| av电影在线观看一区| 色播视频在线播放| 亚洲精品videossex少妇| 久草免费在线视频| 久久久久资源| 久久久久久一区二区| 波多野吉衣中文字幕| 在线观看视频91| 亚洲精品传媒| 91九色国产在线| 欧美激情91| 久久福利小视频| 色综合久久久久综合体桃花网| 青青草在线免费视频| 国产91精品网站| 日韩成人a**站| 不用播放器的免费av| 亚洲综合久久av| 手机av在线免费观看| 日本免费一区二区三区视频观看 | 桥本有菜av在线| 精品一区二区精品| 免费在线观看黄色av| 亚洲激情成人网| av激情成人网| 爱爱爱视频网站| 成人小视频免费观看| 精品美女久久久久| 中文字幕日本精品| 欧美日本三级| 啊啊啊一区二区| 国产精品青草综合久久久久99| av一区二区三| 7m精品福利视频导航| 成人三级高清视频在线看| 精品不卡在线| 日韩成人伦理电影在线观看| 成人做爰视频网站| 精品免费99久久| 免费高清视频在线一区| 蜜桃视频成人在线观看| 99国产欧美久久久精品| 亚洲综合一区中| 性欧美xxxx视频在线观看| 日韩欧美二区| 国产精品嫩草av| 欧美日韩精品一区二区三区| 波多野结衣精品| 手机在线观看国产精品| 成人午夜在线视频| 在线亚洲欧美日韩| 国内精品视频在线| 久久综合国产| 青青草福利视频| 日韩一卡二卡三卡国产欧美| 国产高清不卡| 日本黄色片一级片| 国产精品久久久久久久裸模| 欧美 日韩 国产 成人 在线|