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

將數據從MySQL復制到Redshift的四種方式

譯文
數據庫 MySQL
如今,許多公司都轉為使用Amazon的Redshift,來補齊MySQL在分析查詢上的短板。為此,本文將和您討論將數據從MySQL復制到Redshift的四種實用方法。

[[411316]]

【51CTO.com快譯】目前,MySQL已憑借著其強大的功能、靈活且可靠的服務,成為了世界上最受歡迎的開源云端數據庫之一。每天都有數以萬計的公司,使用MySQL來為其基于Web的應用和服務提供支持。

但是當涉及到數據分析時,情況就不同了。即使是最小的分析查詢,MySQL也會很快陷入困境,甚至會讓您的整個應用程序面臨崩潰的風險。而Redshift則能夠處理PB級的數據,并在較短的時間內提供各種分析。這就是為什么如今許多公司都轉為使用Amazon的Redshift,來補齊MySQL短板的原因。也就是說,它們通過將MySQL和Redshift配合使用,以消除在運行查詢時產生導致數據庫崩潰的風險。對此,我們需要將MySQL里的數據設法復制到Redshift中。下面讓我們來具體討論四種實用的實現方法。

為何要將數據從MySQL復制到Redshift?

對于提供Web應用的公司而言,選擇將數據從MySQL復制到Redshift,不但是為了便于數據分析,而且可以獲得如下方面的優勢:

  • 保持應用的性能。正如我們已經提到的,在生產環境的MySQL數據庫上運行分析查詢,不但會對其性能產生嚴重影響,而且可能導致其崩潰。鑒于分析查詢非常耗費資源,我們需要為其分配專用的計算力。
  • 分析所有數據。作為OLTP數據庫,MySQL是專為諸如:客戶記錄和財務數據等事務性數據而設計的。如果您希望從整個數據集(包括非事務類型)中獲得有關數據的洞見,則需要使用Redshift從同一處捕獲和分析您的所有數據。
  • 更快的分析。Redshift屬于大規模并行處理 (massively parallel processing,MPP)類數據倉庫。這意味著,它可以在較短的時間內處理大量的數據。而作為對比,MySQL則難以為大型分析查詢擴展出足夠的計算力。即便是MySQL的副本數據庫,也很難達到與Redshift同等的速度。
  • 可擴展性。MySQL主要是在單個節點實例上運行,而并非分布式的云基礎架構處。因此,超出單個節點的擴展往往需要花費時間,并且需要用到諸如分片、或主節點設置等資源密集型的技術。這些都會進一步減慢數據庫的速度與效率。

將MySQL復制到Redshift的四種方法

許多公司都會通過如下四種方法,來實現從MySQL到Redshift的數據復制:

一、導入與導出

將數據復制到Redshift的最簡單方法,莫過于導出整個MySQL的數據。不過,這也是效率最低的方法。它包含了:導出、轉換、導入三個步驟。

導出

我們可以使用MySQL的經典MySQLdump命令,按照如下格式導出數據:

  1. Java 
  2. $ MySQLdump -h yourmysqlhost -u user mydatabase mytable1 mytable2 --result-file dump.sql 

由于該命令的輸出是MySQL的SQL語句,而無法運行在Redshift上,因此您必須將該語句轉換為適合Redshift導入的格式。

轉換

為獲得最佳的上傳性能,您需要將SQL語句轉換為TSV(tab-separated values,制表符分隔值)的格式。為此,您可以使用Redshift的COPY命令,將數據文件批量上傳到Amazon S3中的Redshift表中。下面展示了MySQLdump中的一行數據:

  1. Java 
  2. mysql> INSERT INTO `users` (`id`, `firstname`, `lastname`, `age`) VALUES (1923, ‘John’, ‘Smith’, 34),(1925,’Tommy’,’King’); 

請注意,這些值都是被制表符(\t)分隔開來的。而且,如果MySQL和Redshift支持不同的數據列和類型,您可能還需要將數據值轉換為與Redshift相兼容的類型。例如,DATE值“0000-00-00”在MySQL中是有效的,但是在Redshift中會被拋出錯誤。那么,您就必須將該值轉換為可被Redshift接受的格式--“0001-01-01”。

導入

您只需要運行如下COPY命令,便可完成向Redshift的導入工作:

  1. Java 
  2. COPY users 
  3. FROM 's3://my_s3_bucket/unload-folder/users_' credentials   
  4. 'aws_access_key_id=your_access_key;aws_secret_access_key=your_secret_key'

導入導出的缺點

導入導出的數據復制方法雖然簡單,但是它并不適合頻繁更新的場景。例如,如果通過100 Mbps的網絡從MySQL導出18 GB的數據,則需要大約30分鐘;而將這些數據導入Redshift也還需要30分鐘。一旦網絡連接出現了中斷,則該過程還需重做一遍。

二、增量SELECT和COPY

SELECT和COPY方法僅作用于更新那些自上次更新以來,已變更的記錄。與導入導出整個數據集相比,該方法花費的時間和帶寬要少得多,因此能夠更頻繁地將MySQL與Redshift進行同步。不過,您的MySQL表必須滿足如下兩個條件,方可使用該增量方法:

  • 數據表必須有一個updated_at列,而且在每次變更行時,都會更新其時間戳。
  • 數據表必須有一到多個唯一鍵。

和導入導出一樣,該增量方法也分三個步驟:

1. 導出

由于增量SELECT僅導出自上次更新以來已變更的行,因此您需要在MySQL上運行如下SELECT查詢命令:

  1. Java 
  2. SELECT * FROM users WHERE updated_at >= ‘2016-08-12 20:00:00’; 

然后將結果保存到文件中,以備后續的轉換。

2. 轉換

與導入導出方法相同,該步驟是將MySQL數據轉換為Redshift支持的TSV格式。

3. 導入

至此,MySQL的TSV文件中已包含了被更新的行和新插入的行。不過,為了避免更新的行被直接復制過去,而出現重復行,您不可簡單、直接地運行COPY命令,而應當使用如下DELSERT(delete + insert)的方式:

  • 在Redshift上創建一個與目標表具有相同定義的臨時表。
  • 運行COPY命令將數據上傳到臨時表中。
  • 使用如下命令,從目標表中刪除那些已在臨時表中存在的行。
  1. Java 
  2. DELETE FROM users USING users_staging s WHERE users.id = s.id; 
  • 最后,將剩下的數據行,從臨​​時表插入到目標表中:
  1. Java 
  2. INSERT INTO users (id, firstname, lastname, updated_at) SELECT id, firstname, lastname, updated_at FROM users_staging s; 

SELECT和COPY的缺點

雖然增量SELECT和COPY比導入導出更為有效,但它也有著自身的局限性。其主要問題在于:從MySQL表中刪除的數據行,會無限期地保留在Redshift中。因此,如果您想在從MySQL中清除舊數據的同時,保留Redshift上的歷史數據,那么就無所謂。否則,您就需要在數據分析的過程中,去額外刪除Redshift中的數據行。

此方法的另一個缺點是,它不會去復制數據表在結構模式上(schema)的變更。也就是說,當您在MySQL表中添加或刪除數據列時,則需要手動對Redshift數據表進行相應的變更。

此外,那些被用于從MySQL表中提取更新數據行的查詢,也會影響MySQL數據庫的整體性能。

三、使用Binlog變更數據的捕獲

變更數據捕獲 (Change data capture,CDC)技術,可以捕獲任何在MySQL中發生的數據變更,并將其應用到目標Redshift表上。與增量SELECT和COPY方法的類似,它只導入變更的數據,而非整個數據庫;而與增量方法不同的是,CDC允許您實現從MySQL到Redshift的真正復制。

要對MySQL數據庫使用CDC方法,您必須使用binlog(二進制變更日志)。Binlog允許您以數據流的形式捕獲發生了變更的數據,進而實現近乎實時的復制。

Binlog不僅能夠捕獲數據的變更(如:插入、更新、刪除),而且可以捕獲數據表在結構模式上的變更(例如:添加、刪除某列)。此外,它還能確保從MySQL刪除的數據行也在Redshift中被刪除。

當您將CDC與binlog結合使用時,您實際上是通過編寫一個應用程序,實現了流數據從MySQL讀取、轉換和導入至Redshift的過程。具體而言,您可以使用一個名為mysql-replication-listener的開源庫來實現。這個C++庫提供了一個流式API,在MySQL的binlog處實時讀取數據。當然,其他高級語言,包括Ruby的kodama和Python的python-mysql-replication也提供了類似的高級API。其具體實現過程為:

1. 設置

首先,請參照MySQL的如下配置參數設置,來啟用binlog:

  1. Java 
  2. log_bin = /file_path/mysql-bin.log 

其中,參數binlog_format設置了binlog事件存儲在binlog文件中的格式。它支持:語句、混合和行,三種格式。其中,語句格式會將查詢按照原樣保存到binlog文件中(例如:UPDATE SET firstname=’Tom’ WHERE id=293;)。這樣雖然節省了binlog文件的大小,但是在復制過程中,可能會出現問題。

因此,對Redshift的復制場景而言,請使用行的格式。該格式會將變更的值,保存在binlog文件中。它雖然增加了binlog文件的大小,但是可以確保MySQL與Redshift之間數據的一致性。

log_bin設置了存儲binlog文件的路徑。expire_logs_days確定了binlog文件被保留的天數。我們建議將binlog文件保留數天,以確保有時間解決復制期間出現的任何問題。而replicate-wild-do-table參數則指定了待復制的表。也就是說,只有那些被指定的表才能進入binlog文件。

如果您使用MySQL的從服務器(slave server)作為復制源的話,則需要將log-slave-updates設置為TRUE。否則,在主復制服務器上所做的數據變更,將不會被記錄在binlog中。

此外,您的MySQL帳戶還需要具有以下權限,方可執行與復制相關任務:

  • 復制從站
  • 選擇
  • 重新加載
  • 復制客戶端
  • 鎖表

2. 導出和轉換

當您使用binlog時,需要導出的實際上是MySQL的各個binlog文件的實時數據流。而binlog數據的具體交付方式,則取決于您使用到的API。例如,對于Kodama而言,binlog數據會根據binlog事件流的形式予以交付。也就是說,Kodama允許您為不同的事件類型(插入、更新、刪除、變更表、創建表等)注冊事件處理句柄(handlers)。應用程序在接收到binlog事件后,會生成一個用于將數據變更導入Redshift,或包含表結構模式變更的輸出。

與其他復制方法不同,binlog變更方式需要您專門處理那些已被刪除的事件,以維持Redshift的上傳性能

3. 導入

為了將binlog數據流上傳并導入Redshift,我們需要借用在增量SELECT和COPY方法中提及的DELSERT導入技術。

Binlog的缺點

Binlog方法雖然能夠滿足從MySQL到Redshift的數據復制需求,但是它需要您花時間去開發CDC應用。也就是說,除了上面提到的數據流之外,您還必須構建:

  • 事務管理。跟蹤數據流的性能,以免應用程序在讀取binlog的數據時出現報錯和中止,并能夠從上一次中斷處繼續。
  • 數據緩沖和重試。為了避免Redshift在應用程序發送數據時不可用,進而導致數據丟失或重復,您應當設法讓應用程序緩沖未發送的數據,直到Redshift集群重新上線。
  • 支持表結構模式的變更。Binlog中的表結構模式的變更事件(如:變更、添加、刪除表)往往是作為MySQL原生的SQL語句出現的。不過,它不能直接運行在Redshift上,而需要設法將此類變更從MySQL語句,轉換為相應的Redshift語句。

四、使用ETL即服務

借助ETL工具,您可以近乎實時地將數據復制到Redshift中。與CDC方法不同,此類工具可以管理整個復制過程,并自動將MySQL數據的類型,映射為Redshift使用的格式。您甚至可以同時將多個MySQL數據庫(以及其他類型的數據庫)同步到Redshift上。由于其設置過程非常簡便,此處就不再贅述了。

小結

綜上所述,MySQL和Redshift的聯合使用,為您的BI需求提供了簡單卻又強大的解決方案。上文列舉的四種將數據從MySQL復制到Redshift的方法,既從簡單到復雜,又從非常緩慢到接近實時。具體該如何選擇,請您參考如下三方面因素:

  • 復制頻率
  • MySQL數據集的大小
  • 可用的開發資源

其中,最快、最可靠的復制方法當屬:利用了MySQL binlog的變更數據捕獲 (CDC)。不過其缺點是需要開發人員花時間去構建和維護應用程序。因此,您需要根據實際業務目標和數據分析需求,來做出明智的決定。

原文標題:MySQL to Redshift: 4 Ways to Replicate Your Data,作者:Ben Putano

【51CTO譯稿,合作站點轉載請注明原文譯者和出處為51CTO.com】

 

責任編輯:華軒 來源: 51CTO
相關推薦

2010-07-28 13:54:42

Flex數據綁定

2013-06-14 15:24:57

Android開發移動開發數據存儲方式

2013-07-26 16:38:54

OpenStackHadoop

2011-03-14 13:33:32

Oracle數據庫啟動

2017-03-10 08:39:33

2022-03-25 14:47:24

Javascript數據類型開發

2023-05-22 08:03:28

JavaScrip枚舉定義

2017-04-17 19:31:03

Android多線程

2011-07-28 18:08:51

SQL Server MySQL

2020-06-12 08:28:29

JavaScript開發技術

2014-12-25 09:41:15

Android加載方式

2021-12-22 09:34:01

Golagn配置方式

2013-10-17 09:25:52

2020-05-11 07:36:00

聯網汽車物聯網IOT

2010-04-19 16:08:31

Oracle數據庫

2025-05-09 09:39:45

2015-04-13 11:39:26

VDI災難恢復

2021-12-01 15:40:40

節日開源剪貼畫

2021-07-14 10:31:15

JavaScript開發 技巧

2024-01-17 13:56:00

Redis節點映射關系
點贊
收藏

51CTO技術棧公眾號

精品av久久久久电影| 青青青国产精品| 91老师国产黑色丝袜在线| 青青久久aⅴ北条麻妃| 亚洲精品色午夜无码专区日韩| 欧美精品日日操| 中文字幕一区二区三区视频| 国产精品免费观看高清| 午夜精品久久久久久久蜜桃| 66久久国产| 日韩电影中文字幕在线观看| 美女网站色免费| jizz一区二区三区| 国产免费观看久久| 国产九色精品| 国产孕妇孕交大片孕| 国产精品入口| 欧美日本啪啪无遮挡网站| 成年人网站免费看| 高清久久一区| 欧美这里有精品| 精品少妇在线视频| www.在线视频| 欧美极品美女视频| 国产在线资源一区| 国产99视频在线| 久久精品国产一区二区三 | 欧美性jizz18性欧美| 男女h黄动漫啪啪无遮挡软件| 欧美女子与性| 成人毛片老司机大片| 91精品国产自产在线老师啪| 国产寡妇亲子伦一区二区三区四区| 欧美在线影院| 在线观看欧美日韩| 少妇按摩一区二区三区| 第一区第二区在线| 日韩一区二区三区四区| 一级黄色特级片| jk漫画禁漫成人入口| 亚洲国产欧美日韩另类综合 | 特级西西人体高清大胆| 色天天色综合| 亚洲国产日韩欧美在线99| 91 视频免费观看| 国内欧美日韩| 欧美午夜精品电影| 日韩视频免费在线播放| 视频二区不卡| 色94色欧美sute亚洲13| 久久精品视频91| 中文字幕在线直播| 黑人欧美xxxx| 99福利在线观看| 成人影院大全| 欧美日韩国产精品一区二区三区四区 | 99久久视频| 久热在线中文字幕色999舞| 娇小11一12╳yⅹ╳毛片| 成人激情视频| 色噜噜狠狠狠综合曰曰曰| 国产亚洲精品精品精品| 欧美日韩老妇| 视频直播国产精品| jizz亚洲少妇| 亚洲视频一二| 91精品国产乱码久久久久久蜜臀| 伊人久久综合视频| 久久九九电影| 国产日韩精品入口| av男人天堂av| 99久久国产综合色|国产精品| 久久riav二区三区| 毛片免费在线播放| 一色桃子久久精品亚洲| av一区二区三区免费观看| 男人天堂亚洲天堂| 欧美午夜性色大片在线观看| 欧美国产日韩激情| 美女福利一区二区| 欧美精品乱人伦久久久久久| 亚洲午夜精品在线观看| 欧美天堂社区| 中文字幕欧美视频在线| 欧美日韩在线观看成人| 国产精品婷婷| 国产精品无av码在线观看| 国产成人三级一区二区在线观看一 | 国产精品一香蕉国产线看观看| 亚洲视频在线免费播放| 成人中文字幕电影| 三级三级久久三级久久18| 国产传媒在线播放| 狠狠综合久久av一区二区小说| 99热手机在线| 51vv免费精品视频一区二区| 亚洲免费伊人电影在线观看av| 在线观看天堂av| 悠悠资源网久久精品| 国产精品美女久久久久久免费| 国产日韩欧美中文字幕| 久久九九99视频| 久久久国内精品| 日韩三区免费| 亚洲成人xxx| 国产极品视频在线观看| 亚洲茄子视频| 91亚洲人电影| 男人天堂网在线观看| 伊人性伊人情综合网| 日本va中文字幕| 国产三级精品三级在线观看国产| 自拍视频国产精品| 国产性xxxx高清| 国产在线播精品第三| 久久久久久国产精品一区| fc2ppv国产精品久久| 欧美三区在线观看| 六月婷婷七月丁香| 亚洲第一精品影视| 亚洲一区二区三区视频| 在线观看免费黄色| 日本电影亚洲天堂一区| 污污内射在线观看一区二区少妇| 久久久久亚洲| 国产精品三级网站| 日本国产在线| 亚洲成人福利片| 午夜影院免费版| 99久久精品网| 91精品久久久久久久久青青 | 欧美污视频网站| 国产一级成人av| 蜜臀久久99精品久久久无需会员 | 91嫩草丨国产丨精品| 日本午夜精品一区二区三区电影| 极品尤物一区二区三区| 日韩少妇视频| 亚洲精品一区二区三区精华液 | 欧美精品一卡| 91在线视频九色| 麻豆影院在线| 欧美男男青年gay1069videost | 性猛交╳xxx乱大交| 婷婷亚洲图片| 91亚洲精品一区二区| 黄色网在线免费观看| 欧美日韩一级二级| 成人无码精品1区2区3区免费看 | 欧美三区在线视频| 国产精品理论在线| 美女精品自拍一二三四| 亚洲欧美久久234| 欧美成人福利| 久久视频国产精品免费视频在线 | 成人一区视频| 色一区av在线| 国产免费叼嘿网站免费| 亚洲女厕所小便bbb| 中文字幕久久久久久久| 欧美视频不卡| 国产一区二区无遮挡| 亚洲欧美一区二区三区| 国产午夜精品一区二区三区| 中文文字幕一区二区三三| 国产肉丝袜一区二区| 一区二区xxx| 亚洲视频在线免费| 国产伦理一区二区三区| 亚洲精品福利电影| 中文字幕日韩av| 99久久精品国产一区二区成人| 一区二区三区在线不卡| 日韩www视频| 日日摸夜夜添夜夜添国产精品 | 免费污视频在线观看| 亚洲国语精品自产拍在线观看| 中文字幕第四页| 国产精品网站一区| 一卡二卡三卡四卡五卡| 夜夜嗨网站十八久久| 色姑娘综合网| 亚洲专区**| 国产成人涩涩涩视频在线观看| 川上优的av在线一区二区| 91精品国产综合久久福利软件| 国产在线视频99| 国产欧美精品一区aⅴ影院| 性久久久久久久久久久久久久| 亚洲网站在线| 天堂精品一区二区三区| 日韩免费精品| 人九九综合九九宗合| 国产cdts系列另类在线观看| 亚洲精品美女久久久久| 亚洲天天综合网| 亚洲成人av免费| 国产一区二区三区视频播放| caoporen国产精品视频| 性欧美1819| 国产视频一区免费看| 91制片厂免费观看| 亚洲精品3区| dy888夜精品国产专区| av成人亚洲| 97在线视频国产| 91精品国产91久久久久久青草| 亚洲欧美资源在线| 亚洲成人精品女人久久久| 色偷偷成人一区二区三区91| 欧美人妻精品一区二区三区| 国产色婷婷亚洲99精品小说| 东京热av一区| 国产一区二区在线影院| 亚欧在线免费观看| 夜夜精品视频| 国产欧美久久久久| 欧美黄色大片在线观看| 欧美日韩综合网| 欧美黑人做爰爽爽爽| 91天堂在线视频| 久久久加勒比| 国产成人午夜视频网址| 蜜桃视频m3u8在线观看| 久国内精品在线| 麻豆影院在线| 丝袜美腿亚洲一区二区| 国产精品秘入口| 亚洲欧美三级在线| 天天操天天舔天天干| 欧美成人三级电影在线| 国产精品久久久久毛片| 欧美日韩一区成人| 中文字幕免费高清在线观看| 91福利国产成人精品照片| 青青青国产在线| 欧美日韩免费看| 日韩成人高清视频| 午夜精品福利在线| 久久精品国产亚洲av无码娇色 | 国产又粗又黄又爽| 欧美区一区二区三区| 伊人久久成人网| 欧美写真视频网站| 丰满熟女人妻一区二区三| 日本韩国精品一区二区在线观看| 国产99久久久| 日韩欧美中文字幕在线播放| 国产精品国产三级国产专区52| 婷婷国产在线综合| 天天干天天干天天操| 欧美性猛交xxxx乱大交3| 69国产精品视频免费观看| 色综合久久精品| 天天综合久久综合| 欧美日韩国产另类不卡| 国产强伦人妻毛片| 欧美电影免费提供在线观看| 成人久久精品人妻一区二区三区| 精品福利在线导航| 亚洲av片在线观看| 国产亚洲精品日韩| 日本中文字幕在线看| 久色乳综合思思在线视频| 国产探花在线观看| 57pao精品| 欧美日韩成人影院| 91精品久久久久久久久久| 欧美经典一区| 国产欧美日韩视频一区二区三区| 女仆av观看一区| 日韩不卡av| 日韩理论电影院| 国产欧美123| 亚洲免费影视| 中文字幕av不卡在线| 国产久卡久卡久卡久卡视频精品| 日本三级日本三级日本三级极| 久久久久国产精品厨房| 国产美女高潮视频| 亚洲国产精品影院| 波多野结衣电车| 欧美一二三四区在线| 四季av日韩精品一区| 中国人与牲禽动交精品| 精精国产xxxx视频在线中文版 | 国产视频在线观看免费| 亚洲国产一区自拍| 青青影院在线观看| 7m第一福利500精品视频| 欧美成人毛片| 狠狠干一区二区| 国产精品久久占久久| 欧美啪啪免费视频| 国内成人精品2018免费看| 国产在线观看无码免费视频| 亚洲欧洲日韩女同| 国产69精品久久久久久久久久| 欧美日韩精品三区| 视频二区在线| 欧美区二区三区| 成人看片网页| 国产乱人伦精品一区二区| 欧美高清视频手机在在线| 黄色网页免费在线观看| 狠狠色狠狠色综合系列| 日韩在线免费观看av| 亚洲综合视频网| 91精品国产乱码久久久| 亚洲欧美另类在线观看| www欧美xxxx| 亚洲xxxx在线| 91综合在线| 91热这里只有精品| 91丨porny丨中文| 精品无码久久久久久久| 欧美精品日韩一本| 在线观看黄av| 国产精品成人久久久久| 日韩三级毛片| 男人插女人视频在线观看| 国产电影精品久久禁18| 中文国语毛片高清视频| 在线观看亚洲专区| 欧美日韩免费做爰大片| 97国产精品久久| 国产精品传媒| 欧美激情亚洲天堂| 国产乱码一区二区三区| 97在线观看视频免费| 欧美色男人天堂| 91免费在线| 国产精品人人做人人爽| 欧美精品第一区| 日韩av资源在线| 91亚洲国产成人精品一区二区三| 久久精品视频久久| 欧美精品一区视频| 香蕉久久aⅴ一区二区三区| 91久久精品国产91久久性色| 久久美女视频| 嫩草视频免费在线观看| 亚洲欧洲精品一区二区三区| 91极品身材尤物theporn| 久久久国产成人精品| 成人污版视频| www.欧美黄色| 99久久99久久精品免费看蜜桃| 91看片在线播放| 日韩成人激情视频| 一区二区三区短视频| 欧美中文娱乐网| 日本vs亚洲vs韩国一区三区| jizz18女人高潮| 欧美剧情片在线观看| 国产调教视频在线观看| 91九色露脸| 99精品国产一区二区青青牛奶 | 亚洲国产成人高清精品| 人妻视频一区二区三区| 97国产精品视频| 九九亚洲精品| xxww在线观看| 一区二区三区精品久久久| 人妻无码一区二区三区久久99| 欧美亚洲国产另类| 不卡日本视频| 在线观看免费看片| 无吗不卡中文字幕| 国产中文在线视频| 91在线免费看网站| 99热这里只有成人精品国产| 国产中年熟女高潮大集合| 欧美人牲a欧美精品| 久色国产在线| 日韩av一区二区三区在线观看| 久久国产夜色精品鲁鲁99| 久久精品www人人爽人人| 精品亚洲国产视频| 亚洲国产aⅴ精品一区二区三区| 中文字幕精品在线播放| 91色|porny| 国产精品高潮呻吟AV无码| 性色av一区二区三区| 波多野结衣在线观看一区二区三区 | 成人国产视频在线观看| 五月婷婷激情视频| 九九热视频这里只有精品| 国产成人一区二区三区影院| 五月六月丁香婷婷| 色综合天天综合在线视频| 福利在线视频网站| 日本一区网站| 粉嫩蜜臀av国产精品网站| 少妇一级淫片日本| 97精品在线观看| 亚洲大全视频| 91成人精品一区二区| 日韩电影免费观看中文字幕 | 日韩一区二区三区在线|