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

如何將關系型數據導入MongoDB?

數據庫 其他數據庫 MongoDB
很多企業、公司都先后把數據從關系型遷移到 NoSQL 上來,其中 MongoDB 又是使用相對較廣泛的數據庫實現。本文就為大家分享一下關系型數據導入進 MongoDB 中應當遵循的步驟和注意的問題。

準備工作

關系型數據庫已經統治數據存儲長達三十幾年的時間,即便在 2000 年以后誕生了 NoSQL 數據庫,但他的出現并沒有改變關系型數據的統治地位。隨著最近幾年互聯網應用的快速崛起,以及互聯網用戶的不斷增加,數據來源越來越復雜多樣,傳統關系型數據存儲面臨了很大的挑戰。這種挑戰體現在數據格式死板,改動困難,存儲不夠靈活,難于擴展等方面。因此,很多企業、公司都先后把數據從關系型遷移到 NoSQL 上來,其中 MongoDB 又是使用相對較廣泛的數據庫實現。本文就為大家分享一下關系型數據導入進 MongoDB 中應當遵循的步驟和注意的問題。

在考慮將關系型數據導入到 NoSQL 中時,首先需要確認的幾點是:這個導入過程不會是全自動的,并不是像備份數據,遷移數據,記住幾個命令那么簡單;其次,這個過程不是一個純技術問題,在制定具體方案時,項目經理,業務分析人員,開發人員,數據庫管理員都應當參與到方案的討論中。遷移的計劃、技術方案、各個項目負責人的職責應當在全體人員在場的情況下制定清楚;***,應當考慮到遷移失敗以后的恢復方案,根據應用數據的復雜程度不同,遷移的工作量也不會完全一樣。

上圖列出了一個項目經過關系型數據向 NoSQL 中遷移的大致步驟,當然這絕對不是一個唯一的標準。只是通常情況下的做法,可能會根據不同項目的特別需求有一些調整。下面我們來詳細分析每一個階段的具體工作內容。

數據模型定義

有可能你會覺得奇怪,MongoDB 不是結構無關的 NoSQL 數據庫嗎?為什么我們要提到數據庫表結構定義。實際上,NoSQL 中的結構是指從技術層面來講,數據庫對表結構沒有強約束,任何格式的 JSON 都可以插入進 MongoDB 表中。但是,我們在做項目時不能為所欲為的在數據庫中插入數據,一定要遵循我們自己定義的一套規則來進行,否則程序根本無法管理數據層面的業務邏輯。在討論表結構之前,先來看一下 MongoDB 中的一些術語和關系型數據庫的對應關系。

看起來很好理解,在 MongoDB 中我們把表稱做Collection,表中每一行的數據稱作Document。其他的基本沿用關系型數據庫的命名。在 MongoDB 中,所有的數據格式都是以 JSON 為數據庫類型,它能夠比較靈活的存儲各種數據庫關系。這也是為什么 MongoDB 能夠在一個 Collection 中存儲各種不同結構的數據。比如,你可以插入這樣一個 JSON 到 MongoDB 中:{"user": {"name": "Zhang San", }},另外再插入這個 JSON{"product": {"id": "00001"}}。可以看到這兩個 JSON 沒有任何關系,也沒有任何相同的屬性,但在 MongoDB 中都是合法的數據,他們可以同時存在于一個 Collection 中。當然,我們并不鼓勵大家這樣做,因為這樣很難維護你的數據庫表格,而且對于查詢索引來說也很麻煩,會產生很多不必要的索引存儲。我們所說的結構靈活指的是在一個結構框架基礎上,可以靈活擴充、添加新的數據而不用重新定義數據 Schema。因此,我們在進行數據庫遷移之前需要討論如何定義 Collection 的結構。

MongoDB 將 JSON 存儲成一個叫BSON的數據結構中,BSON指的是Binary JSON,二進制 JSON,并在 JSON 的基礎上添加了一些新的數據類型,int,float,long。JSON 格式可以靈活的存儲嵌入式數據結構,以及數組,要是在關系型數據庫中實現其難度是很難想象的。在定義Collection 結構時,需要根據應用程序實際需求找出數據模型的定義,***程度的利用 MongDB 的存儲靈活性。例如,下面是一個典型的兩張一對多的數據庫表格。

學生表:

成績表:

其中,***張表是學生表,第二張是學生成績表,一個學生可以有多門課程的成績,因此他們之間是一對多的關系,其中studnet_id在學生表中是主鍵,對應成績表中的外鍵。在關系型數據庫中這種表示方法***并正確,但是到了 MongoDB 中也許就是另外一種存儲樣式了。為了充分利用 JSON 格式的內嵌式存儲,我們通常會把這種關系存儲到 Collection 中的一條記錄(Document),如下所示:

上面是對學生 Zhang Scan 的記錄存儲,可以看出我們把學生成績當作是學生表的內嵌字段,由于是一對多的關系,我們把他存儲成一個數組的形式。這種基于 JSON 文檔的存儲結構有一下幾點優勢:

  • 數據一目了然,當你從數據庫中取出一條學生記錄后,關于學生的基本信息全部顯示出來。方便大家閱讀瀏覽。
  • 避免了多次數據庫表連接操作。在關系型數據庫中存在著多種表之間的鏈接操作,比如左右連接,內連,外連等等。為了找到關于一個學生的全部信息,我們也許需要進行若干張表的連接才能拿到想要的數據。除了需要寫更復雜的 SQL 語句以外,數據庫的性能也會受到影響。當數據庫進行一次連接操作時,內部可能是需要從磁盤不同位置讀取數據,加大了 IO 操作。反觀 MongoDB,一次查詢只需要讀取一次磁盤,大大提高的查詢效率。
  • 刪除、修改操作簡單方便。如果所有相關學生的信息都存儲在一張 Collection 中,那么對學生信息的刪除和修改只需要在一張表中操作就可以。試想一下在關系型數據庫中,如果需要刪除一個學生紀錄,有可能需要操作學生表、成績表、宿舍表、等等與學生關聯的所有表,這樣的設計是困擾關系型數據庫開發人員的一大難題。搞不好數據庫中就會存儲大量過時、失效的數據,而這些數據可能成為永遠也不會被訪問的死角。
  • 所有 Document 都是自我描述的,這方便大家進行數據庫的水平擴展。在 MongoDB Shard 中,我們可以將一個 Collection 切分到不同的 Shard 集群中,這種切分方法在不需要進行 JOIN 的操作前提下變得十分簡單。因為,DBA 再不用擔心需要進行夸節點的 JOIN 操作。(關于 MongoDB 水平擴展的內容,情參考另外一篇文章MongoDB 的水平擴展,你做對了嗎?。

內嵌還是引用

上面是一個將一對多關系的兩張表整合到一個 Document 中,實際上我們的數據表結構會復雜很多,一個企業級應用動輒就要設計幾百甚至上千張表,表之間會有一對一,一對多,多對多種關聯關系。對于如此復雜的場景目前我們還沒有一個準確的可以使用任何情況的解決方案。基本上都需要針對業務數據具體分析,從而得出新的數據結構。這里,我可以給大家列出一些基本的原則以及處理不同關系的基本方法,根據這些基本原則方法我想大家總可以根據自己的業務歸納出一個行之有效的解決方案。具體到 MongoDB,有內嵌和飲用兩種方式來進行關聯,下面我們分布看一下它們應用的場景。

 內嵌

就像上面舉的例子那樣,將關系型數據中表的一行內嵌到與他相關聯的表中使之在新的 Collection 中成為一個 Document。這種內嵌的方法適用于兩種情況:

  • 當表關系是一對一時,或者
  • 當表關系是一對多時

在上面兩種關系下,如果關系表不經常單獨進行查詢,它只是依附在主表查詢的基礎上進行,那么我們可以考慮使用內嵌的方法。以產品和產品價格為例說明一下,在紀錄產品價格時,價格是會隨著時間的變化而取不同的值。一款新上線的產品價格相對較高,隨著時間的推移其價格也會隨之下降。在一些類似雙十一節假日期間,價格也會臨時調整。在分析產品銷售狀況的時候,我們還要考慮到在什么樣的價格下產品銷量高,所以不能簡單的把產品和價格放到一張表中,必然會存在一張與產品相關聯的價格表,它紀錄了產品當前價格以及歷史價格。那么,我們在統計產品的銷量報表時,這張價格表不會單獨存在,它必然會依附在產品表之下。此時,將產品價格內嵌到產品表中就是一個比較可行的方案。查詢語句可以通過一個 Collection 找出所有產品相關價格從而避免了表之間的 JOIN 操作。

但是并不是所有的一對一和一對多的關系都適合使用內嵌的方式。在一下情況下應當慎重使用內嵌數據結構:

  • 如果一個 Document 的大小超過了 MongoDB 的限制(16M),此時不應考慮嵌入數據結構。當你的數據表關系很復雜,可能將所有相關的數據內嵌到一個 Document 中會超過 16M 的限制。
  • 如果一個 Document 需要經常被訪問,而其中的一個內嵌 Document 很少被訪問到,這時不太適合使用內嵌;因為這會使 MongoDB 在檢索數據時增加內存的消耗。
  • 如果一個 Document 中的一個內嵌 Document 需要經常修改,或者大小經常發生變化,而另一個內嵌 Document 相對靜態,這是也不要考慮使用內嵌結構。
  • 由于內嵌 Document 的增加和減少會導致整個 Document 大小發生變化,當變化超過了分配給 Document 的磁盤空間時會導致數據庫從新為 Document 分配空間。

 引用

除了內嵌之外還可以使用引用的方式來關聯數據。引用的方式和關系型數據庫表的主外鍵很想。你可以把主表和外鍵表分別存儲成一個 Collection,然后用他們的_id進行關聯,_id是 MongoDB 文檔中一個比較特殊的字段,他會被 MongoDB 自動生成并且唯一存在在一個 Collection 中。但是,在使用引用的時候需要注意一下幾點:

在一些復雜的多對多關系表中,不要嘗試引用,因為這會加大應用程序邏輯上的開發和維護。

當使用內嵌結構產生過多重復數據的時候,可以考慮使用引用。

雖然 MongoDB 不支持 JOIN 操作,但是可以通過 Aggregation 中的$lookup指令來完成連接多表的操作請求。

應用集成

有了數據模型的定義,我們就可以開始進行應用集成。集成的方法可以使用 MongoDB 的 Driver,它支持了幾乎常用的各種計算機語言。使用簡單和開發效率高是 MongoDB 的兩大特點。于 SQL 語句不同的是,MongoDB 采用了 API 的方法提供接口,開發人員可以選擇支持自己熟悉語言的 Driver,DBA 可以直接使用 Mongo Shell 腳本。幸運的是,MongoDB 提供了 API 和 SQL 語句的對照表供大家參考,SQL to MongoDB Mapping Chart。

另一個強大的功能不能不提的是 Aggregation Framework(聚合)。并不是所有 NoSQL 數據庫都支持 Aggregation,簡單理解 Aggregation 可以把它當成是 Hadoop 里面的 Map Reduce,或者 SQL 里面的 Left Join。在沒有 Aggregation 的情況下,開發人員進行數據遷移不得不進行如下操作:

  • 在應用程序層開發類似 Aggregation 的功能,將數據聚合在一起并寫進數據庫。這樣做加大了應用程序的復雜度,并且很難適應各種不同數據的組合情況。沒遇到一個新的需求都需要進行一定量的開發工作。
  • 有些人會把數據到如今 Hadoop,然后在上面運行 MapReduce 生成結果,之后將結果倒進 NoSQL 中。這是一個折中的方法,但是他并不支持實時數據遷移,只能進行線下操作。

MongoDB 支持原生 Aggregation 操作,你可以把需要遷移的數據進行聚合操作,每一次操作可以想象成一個流水線上的環節,將所有的操作連接起來可以構成一條 Aggregation Pipeline。在 Pipeline 上面的每一個節點都有自己的輸入輸出,前一個節點的輸出是下一個節點的輸入。有興趣的同學可以在這個連接上找到更多的關于 Aggregation 操作,它列出了每一個 Aggregation 命令和 SQL 語句的對應關系,SQL to Aggregation Mapping Chart

 數據完整性

在關系型數據庫中,有很多支持 ACID 事務操作的方法和應用,DBA 并不希望在數據遷移的過程中有任何閃失,例如損失數據完整性。MongoDB 在這方面具有不同形式的支持。在 3.0 以上版本中,MongoDB 支持了 WiredTiger Storage Engine,他支持了 Document 級別上的鎖操作。也就是說,在進行數據庫寫操作時,MongoDB 可以保證針對一個 Document 操作的原子性,這個操作可以和其他操作完全分隔開來。除了對單個 Dcoument 的原子操作支持外,MongoDB 還支持多 Document 的事務,比如,findAndModify方法允許你在進行多個文檔操作的時保持事務完整。再比如,可以通過Perform Two Phase Commits實現更新多個文檔的原子操作,更多信息請訪問 Perform Two Phase Commits。

 數據一致性

在數據一致性方面,MongoDB 通過 Read Preference 來調節一致性的程度。默認情況下,在一個 MongoDB Replica Set 中,所有的數據庫讀操作都會發到 Primary 服務器上,Replica Set 中的所有 Secondary 保證數據最終一致性。同時,MongoDB 提供了修改這種一致性的行為方式。數據庫管理員可以通過修改 Read Preference 參數達到對一致性不同要求的場景。數據一致性可以有下面集中方案:

  • primary: 默認模式,所有請求都會發送到 Primary 上。
  • primaryPreferred:大部分讀請求都會發送到 Primary,但是當 Primary 無法訪問時,改請求會被轉發到 Secondary 上。
  • secondary: 所有請求都會發送到 Secondary 上。
  • secondaryPreferred: 大部分情況下,讀請求被發送到 Secondary 中,但是如果 Replica 中沒有 Secondary,請求會發送到 Primary 上。
  • nearest: 請求會被發送到網絡最近的服務器上。該模式在多數據中心上非常有效。

 數據遷移

進行完上面的設計和思考以后,數據遷移就會變得想對容易。將數據導入進 MongoDB 有幾個不同的選擇,可以使用 mongoimport 將 JSON 數據進行導入,也可以通過 ETL(Extract Transform Load) 工具完成。很多項目允許在當前應用程序運行的情況下并行遷移關系型數據庫中的數據,并且支持增量更新,具體操作如下:

  • 當一條記錄從關系型數據庫讀出后,應用程序會將這條記錄按照先前定義的 JONS 格式插入到 MongoDB 中。
  • 一致性檢查,可以通過 MD5 等方法進行數據一致性檢查。
  • 新的插入操作和數據修改操作全部轉到 MongoDB 中完成。

小結

按照本文提供的方法和步驟,項目團隊可以在數據遷移中減少不必要的時間和錯誤的操作。當然,數據永遠是應用系統中的核心內容,任何數據遷移都需要支持錯誤恢復,如果失敗也要能夠快速恢復到以前的版本上。在這方面,MongoDB 做到了更靈活的支持,具體內容可以參考

MongoDB Webnar。

參考文獻

[Data Modeling]

(https://docs.mongodb.com/manual/core/data-modeling-introduction/)

[SQL to MongoDB Mapping Chart]

(https://docs.mongodb.com/manual/reference/sql-comparison/)

[SQL to Aggregation Mapping Chart]

(https://docs.mongodb.com/manual/reference/sql-aggregation-comparison/)

[WiredTiger Storage Engine]

(https://docs.mongodb.com/manual/core/wiredtiger/)

[Perform Two Phase Commits]

(https://docs.mongodb.com/manual/tutorial/perform-two-phase-commits/) 

責任編輯:龐桂玉 來源: AI前線
相關推薦

2018-10-15 13:57:38

Hadoop數據庫MySQL

2017-06-28 08:14:57

數據庫區塊鏈比特幣

2018-10-22 14:48:39

KafkaHadoop代碼

2011-08-11 10:16:15

2023-02-17 12:07:45

ChatGPTPython

2019-10-17 09:45:02

照片SD卡Windows 10

2012-06-14 09:37:45

Google地圖

2018-07-18 09:16:39

關系型非關系型數據庫

2016-10-26 09:29:12

MongoDBLinux

2022-10-10 11:00:29

數據分析云戰略

2018-10-09 14:16:21

Hadoop數據移入數據傳輸

2022-09-05 09:32:07

數據庫存儲

2023-05-30 08:00:00

PandasQuestDBPython

2023-09-05 10:25:35

數據庫性能

2009-08-26 18:05:25

ViewState持久

2021-01-28 09:00:00

SQL數據庫NoSQL

2012-06-20 11:17:02

MemSQL

2021-04-22 09:01:35

MongoDB數據庫NoSql數據庫

2018-06-12 15:07:57

IT

2011-05-18 14:51:43

點贊
收藏

51CTO技術棧公眾號

久久综合久久综合这里只有精品| 97精品一区二区视频在线观看| 亚洲免费av一区| 91麻豆国产福利在线观看宅福利| 国产成人99久久亚洲综合精品| 久久久综合av| 国产探花视频在线播放| 日本在线一区二区三区| 欧美性高潮在线| 制服诱惑一区| 香蕉视频网站在线| 激情av综合网| 国产成人精品在线观看| 日韩在线一卡二卡| 伊人久久大香线蕉无限次| 91麻豆精品国产91久久久使用方法 | 91无套直看片红桃| 99国产精品| 久久精品在线播放| 特级西西www444人体聚色| 色悠久久久久综合先锋影音下载 | 亚洲无码精品在线观看| 亚洲国产美女| 久久综合电影一区| 欧美福利第一页| 美女主播精品视频一二三四| 欧美二区三区91| 虎白女粉嫩尤物福利视频| 羞羞的视频在线观看| 国产精品午夜电影| 欧美精品尤物在线| 天天操天天干天天| 国产精品一区二区黑丝| 国产精品一区二区三区毛片淫片 | 少妇精品一区二区三区| 韩国一区二区三区视频| 欧美三级日韩在线| 苍井空浴缸大战猛男120分钟| 好吊日av在线| 一区二区在线观看视频在线观看| 亚洲高清123| 免费一级在线观看| 91热门视频在线观看| 波多野结衣精品久久| 11024精品一区二区三区日韩| 日韩精品1区2区3区| 668精品在线视频| 日本熟妇毛耸耸xxxxxx| 黄色成人精品网站| 欧美日韩高清区| 东方av正在进入| 成人av资源电影网站| 亚洲天堂av在线播放| 黄色正能量网站| 猛男gaygay欧美视频| 日韩成人在线网站| 在线精品一区二区三区| 精品国产午夜肉伦伦影院| 精品国产一区二区三区不卡| 亚洲成人福利视频| 国产精品tv| 亚洲国产精品字幕| 99久久国产精| 亚洲人成精品久久久| 亚洲品质视频自拍网| 国产亚洲精品熟女国产成人| 亚洲色图美女| 在线观看日韩av| а天堂中文在线资源| 国产精品99一区二区三| 久久久国产一区| 久操免费在线视频| 先锋影音国产一区| 国产精品视频男人的天堂| 97精品人妻一区二区三区香蕉| 韩国三级电影一区二区| 亚洲资源在线看| 婷婷伊人综合中文字幕| 久久精品这里都是精品| 亚洲欧洲精品一区二区| 四虎影视国产在线视频| 婷婷亚洲久悠悠色悠在线播放| 久章草在线视频| 久久久久毛片| 精品成人私密视频| 国产亚洲无码精品| 97精品中文字幕| 午夜精品久久久久久久99黑人| 怡红院av久久久久久久| 九色|91porny| 国产精品美女诱惑| av播放在线| 亚洲高清久久久| 国产嫩草在线观看| 电影一区二区在线观看| 国产一区二区三区在线观看网站| 久久99久久99精品免费看小说| 国精品一区二区| 国产成人精品在线播放| 精品国产免费无码久久久| 91理论电影在线观看| 亚洲小说欧美另类激情| 日韩脚交footjobhd| 91精品国产高清一区二区三区蜜臀 | 欧洲精品久久久久毛片完整版| 日韩色在线观看| 精品欧美一区二区久久久| 国产真实久久| 国产精品视频一区二区三区四| 亚洲精品网站在线| 国产精品乱人伦一区二区| 日韩伦理在线免费观看| 国产美女久久| 亚洲欧美精品中文字幕在线| 四虎永久免费在线| 麻豆免费看一区二区三区| 国产精品久久久一区二区三区| 91亚洲精选| 欧美午夜片在线免费观看| 台湾佬美性中文| 日韩一区欧美| 日本高清不卡的在线| 亚洲产国偷v产偷v自拍涩爱| 日本一区免费视频| 国产av无码专区亚洲精品| 99久久婷婷国产综合精品青牛牛 | 免费在线看电影| 欧美视频三区在线播放| 久久久久亚洲AV成人无码国产| 亚洲情侣在线| 国产日韩欧美91| 精品影院一区| 日韩欧美国产免费播放| 污污污www精品国产网站| 在线观看免费一区二区| 成人黄色短视频在线观看 | 久热精品视频在线| 亚洲最大成人av| 国产精品理论片在线观看| 日韩网址在线观看| 亚洲大片精品免费| 午夜美女久久久久爽久久| 亚洲精品国偷拍自产在线观看蜜桃| 中文字幕一区二区三区四区不卡| 粗暴91大变态调教| 九一精品国产| 国产精品激情av电影在线观看| 青青免费在线视频| 色综合久久综合网欧美综合网 | 国产精品欧美一区喷水| 亚洲视频在线a| av影片在线一区| 国产精品美女www爽爽爽视频| 韩国中文字幕2020精品| 色94色欧美sute亚洲线路一ni| 在线免费观看黄色小视频| 久久精品导航| 亚洲成人自拍| 精品一区视频| 久久久久久国产三级电影| 欧日韩在线视频| 欧美午夜xxx| 亚洲精品一区二区三区影院忠贞| 日本中文在线一区| 亚洲一区bb| 日韩一区二区三区色| 欧美极品美女视频网站在线观看免费| 囯产精品久久久久久| 亚洲高清视频中文字幕| 免费看污黄网站在线观看| 日韩福利电影在线| 黄色一级视频播放| 99国产精品免费网站| 欧美在线免费看| 日韩伦理在线电影| 精品第一国产综合精品aⅴ| 中文字字幕在线中文| 中文无字幕一区二区三区| 亚洲第一成肉网| 99视频在线精品国自产拍免费观看| 欧美一区二区视频在线| www.久久爱.com| 97免费视频在线播放| 69久久精品| 欧美xfplay| 天天操天天干天天摸| 中文字幕中文字幕一区| 成人在线电影网站| 日韩在线一二三区| 日韩欧美视频免费在线观看| 日韩av网址大全| 成人在线视频网站| 天堂中文在线播放| 日韩一区av在线| 人妻偷人精品一区二区三区| 在线观看亚洲一区| 国产极品美女高潮无套嗷嗷叫酒店| 91麻豆免费看片| 日本亚洲一区二区三区| 免费日韩一区二区| 中文字幕色呦呦| heyzo久久| 国产精品污www一区二区三区| 91av一区| 97精品久久久| www在线视频| 伊人激情综合网| 日韩在线视频免费| 在线不卡中文字幕| 久久久久久亚洲av无码专区| 亚洲综合丁香婷婷六月香| 日本猛少妇色xxxxx免费网站| 成人黄色国产精品网站大全在线免费观看 | 欧美日韩综合网| 成人爽a毛片| 成人亚洲激情网| av激情成人网| 欧美一级黄色网| h片在线观看下载| 久久精品视频亚洲| 日本不卡三区| 中文字幕亚洲第一| 玖玖综合伊人| 亚洲精品第一页| 韩国av免费在线| 欧美一区二区三区视频免费 | 国产一区二区剧情av在线| 久久久精品三级| 美女黄网久久| 欧美色图另类小说| 一本久道久久综合婷婷鲸鱼| 日本成人在线不卡| 欧美精品国产一区二区| 裸体大乳女做爰69| 亚洲精品午夜av福利久久蜜桃| 天堂va久久久噜噜噜久久va| 欧美美乳视频| 欧美少妇一区| 久久av综合| 日韩精品av一区二区三区| 国产成人精品一区二区免费看京| 九色91视频| 香蕉久久夜色精品国产更新时间| 国产一区二区三区色淫影院| 日韩有吗在线观看| 成人看片在线| 国产伦精品一区二区三区免费优势 | 91污片在线观看| 韩国无码一区二区三区精品| 99re视频这里只有精品| 疯狂揉花蒂控制高潮h| 93久久精品日日躁夜夜躁欧美| 美国黄色一级毛片| 久久日韩粉嫩一区二区三区| 中国极品少妇videossexhd| av资源网一区| 国精品无码人妻一区二区三区| 97精品久久久午夜一区二区三区 | 四虎精品成人影院观看地址| 精品无人区太爽高潮在线播放| 你懂的在线观看| 深夜福利亚洲导航| 成人在线观看亚洲| 高清视频欧美一级| 亚洲妇女成熟| 国产一区私人高清影院| 国产精品一区二区美女视频免费看| 91久久精品国产91久久性色tv| 中文字幕av一区二区三区四区| 久久99国产精品| 狠狠操综合网| 日本老太婆做爰视频| 影音先锋久久久| 十八禁视频网站在线观看| 蜜臀av一级做a爰片久久| 毛片毛片毛片毛片毛| 成人高清视频在线观看| 色一情一交一乱一区二区三区| 中文一区二区完整视频在线观看| 国产va在线播放| 欧美日韩亚洲精品一区二区三区| 中文字幕黄色av| 欧美xxxx在线观看| www 日韩| 欧美大片在线看| 日韩不卡免费高清视频| 亚洲综合国产精品| 亚洲图区在线| 日日噜噜夜夜狠狠久久丁香五月| 亚洲视频播放| 黄色片免费网址| 91麻豆成人久久精品二区三区| 亚洲a∨无码无在线观看| 亚洲高清免费观看 | 激情综合色播五月| 亚洲成av人片在线观看无| 欧美韩国一区二区| 日韩av黄色片| 欧美一区日本一区韩国一区| 日韩电影在线观看完整版| 俺去了亚洲欧美日韩| av在线最新| 成人黄色在线播放| 国产剧情在线观看一区| 丰满的少妇愉情hd高清果冻传媒 | 久久国产精品无码一级毛片 | 中日韩美女免费视频网站在线观看 | 欧美一级性视频| 日韩视频一区在线| 写真福利精品福利在线观看| 懂色一区二区三区av片| 久久高清免费| 男人天堂999| 成人动漫中文字幕| 国产成人综合在线视频| 欧美视频一区在线观看| 免费国产在线观看| 97在线视频一区| 超碰cao国产精品一区二区| 一区二区免费在线视频| 日日夜夜免费精品视频| 国产激情第一页| 午夜精品免费在线观看| 国产sm主人调教女m视频| 中文字幕日韩av综合精品| 国产日韩电影| 久久av免费观看| 日韩视频二区| 在线天堂www在线国语对白| 亚洲靠逼com| av免费在线不卡| 久久视频国产精品免费视频在线| 日本少妇一区| 日本精品一区二区三区视频| 先锋影音久久久| 四虎永久免费影院| 日韩欧美999| 牛牛热在线视频| 国产精品99久久久久久人| 免费欧美一区| 91香蕉视频导航| 国产精品午夜久久| 一本色道久久综合熟妇| 精品国偷自产在线| 精品国产18久久久久久二百| 警花观音坐莲激情销魂小说 | 亚洲中文字幕一区| 狠狠躁18三区二区一区| 伦理片一区二区三区| 欧美尤物巨大精品爽| 亚洲国产合集| 欧美日韩亚洲自拍| 中文字幕日韩欧美一区二区三区| 亚洲天堂网在线观看视频| 久久精品成人一区二区三区 | 日韩欧美国产一二三区| 丝袜在线视频| 精品欧美日韩在线| 天堂成人免费av电影一区| 懂色av蜜桃av| 7777精品伊人久久久大香线蕉完整版| 岛国成人毛片| 九九九九久久久久| 美女看a上一区| 高h视频免费观看| 日韩h在线观看| 播放一区二区| 亚洲精品国产suv一区88| 97国产精品videossex| 中文在线观看av| 欧美尺度大的性做爰视频| 美国成人xxx| 青青草精品视频在线观看| 18欧美亚洲精品| 久久国产乱子伦免费精品| 天堂av电影在线观看| 午夜精品理论片| 深爱激情综合网| 免费精品99久久国产综合精品应用| 亚洲精品欧美在线| 天堂中文在线资| 国产热re99久久6国产精品| 欧美性久久久| 插吧插吧综合网| 欧美一区二区三区免费| 狠狠躁少妇一区二区三区| 视频一区三区| 国产成人99久久亚洲综合精品| 久久国产视频精品| 久久久精品视频在线观看| 精品欧美午夜寂寞影院| 99热这里只有精品在线播放| 樱桃视频在线观看一区| 男人的天堂在线视频| 亚洲一区国产精品| 久久性天堂网| 久久精品一级片| 中文国产成人精品| 亚洲+变态+欧美+另类+精品| 污污的网站免费|