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

存儲架構|Bitcask 引擎的設計,秒!

存儲 存儲軟件 存儲架構
Bitcask 是一種很有趣的存儲模型的設計,這是一種底層格式為日志模樣的 kv 存儲。Bitcask 起源于 Riak 分布式數據庫,Bitcask 論文 詳細介紹了它的由來。

Bitcask 是什么?

Bitcask 是一種很有趣的存儲模型的設計,這是一種底層格式為日志模樣的 kv 存儲。Bitcask 起源于 Riak 分布式數據庫,Bitcask 論文 詳細介紹了它的由來。

Bitcask 解決哪些的問題?

簡單梳理了下 Bitcask 論文中提到的架構設計目標:

  • 讀寫的低時延;
  • 高吞吐,在隨機寫入的場景;
  • 數據量級要比 RAM 大;
  • 持久化后的存儲,故障恢復也要方便;
  • 也要方便備份,方便恢復;

符合這些目標的會是哪些場景呢?下面一步步看一下。

Bitcask 架構設計

1 聊聊整體設計

要點一:基于文件系統,而非裸盤

這樣管理空間就方便了,而且可以把一些功能交給內核文件系統,比如讀 cache,寫 buffer 等。

要點二:一個磁盤只有一個寫入點

換句話說只有一個可寫的文件。這個文件叫做 active data file,其他的為只讀文件。active data file 寫到一個預定的閾值大小之后,就可以輪轉成只讀的文件。

比如,active data file 寫到 10 G 大小就不寫了,切成只讀模式,新建一個文件來寫。這個新文件就變成 active data file 。

要點三:active data file 只有 append 寫入

日志文件的標配嘛,永遠 append ,這樣才能保證最大程度的順序 IO ,壓榨出機械硬盤的順序性能。

要點四:刪除也是寫入

這個其實承接上面的。也是日志類型文件采用的手段,外面看來的原有對象的更新其實是操作日志的記錄,這樣才能最大限度的保持順序 IO 。

要點五:日志式文件本質是無序文件,依靠內存索引

在 LSM 的架構中也提供,日志文件只做 append ,從用戶內容來看是無序的(寫入時間上看是有序的),所以為了解決讀的問題,必須要靠各種索引結構來解決,在 LSM 里就是通過構建內存的跳表來解決索引的問題。

在 Bitcask 也是如此,Bitcask 在內存中構建所有 key 的 hash 表解決這個問題。

要點六:空間的回收叫做 merge ,其實就是 compact

Bitcask 內部的回收流程叫做 merge ,其實就是 compact ,原理很簡單:遍歷文件,讀舊寫新,遇到標記刪除了的內容丟掉即可。

要點七:文件 merge 之后,順帶生成一份 “hint file”

Bitcask 的索引全構建在內存,換句話說,就是在進程啟動的時候要解析所有的底層日志文件。那這時候底層文件的大小、內部對象數量的多少就決定了你構建的快慢,Bitcask 為了加速構建,所以提前把一些元數據信息放到尾端。這樣進程啟動的時候,就能直接讀 “hint file” 來獲取元數據了。

2 看看架構圖

Bitcask 是基于文件系統的:

Bitcask 只有一個可寫的文件??蓪懙奈募凶?active file,只讀的叫做非 active:

Bitcask 它的文件是有格式的:

Bitcask 它內存的索引大概是這樣的:

3 寫入

寫入的過程很簡單,Bitcask 先寫文件,持久化落盤之后更新內存 hash 表。

總結下寫的流程

寫日志文件,返回 file_id, offset, length 等關鍵信息;

更新內存 hash 表內容,把用戶 key 和上面的位置信息關聯起來;

思考兩點:

從 IO 次數來看,磁盤 IO 只需要整體落一次就夠了,不需要單獨寫索引;

從 IO 模型來看,寫永遠都是順序 IO,對機械盤來講,性能最優;

4 讀取

讀取的過程很簡單,先在內存 hash 表中查找用戶 key ,從而獲取到用戶 value 在日志文件的位置。

  1. file_id: 標示在哪個文件; 
  2. offset: 標示在文件的開始位置; 
  3. length: 標示值的長短(結束位置); 

通過以上三個信息,就能找到對應的文件取回數據了。

總結下讀的流程:

在內存 hash 表中找到 key 的值的文件位置;

下盤讀數據;

思考兩點:

  • 從 IO 次數來看,這里性能應該還是不錯的,因為只有讀數據的時候才需要磁盤 IO ;
  • 從 IO 模型來考慮,讀是非常大概率導致隨機 IO 的,但這個可以依賴于文件系統的緩存,讀過的數據將可以加速訪問;

5 回收

Bitcask 回收的流程叫做 merge,其實很簡單,在日志文件中刪除的標記已經打上了,內存里又有全部索引,那只需要把有效的數據讀出來寫到新文件,然后把舊文件一刪,就完成了空間的釋放。

但簡單的東西往往有內涵,在前面我們提到,用戶的寫入為了順序化采用了日志的格式,但是 merge 這個是后端程序有時候會和前段的寫入并發執行的,但底下磁盤只有一塊,兩個都是順序 IO ,但并發起來就成隨機 IO 了。所以它的精細之處就在于 merge 的時機選擇和速率,這個也是它的含金量之一。

前面提到,Bitcask 為了索引 key/value 的位置,在內存中構建了全部的索引關系。這個構建在初始化的時候可能會非常耗時,因為要遍歷全部的日志文件。怎么解決這個問題呢?

干脆直接把這個索引關系在合適的時機準備好,進程啟動加載的時候,直接讀這部分數據就行了。

最合適的時機不就是 merge 過程嘛。merge 過程無論怎樣都要遍歷了一次文件,生成一份索引關系歸檔起來就是順手的事情。這份歸檔的索引關系在 Bitcask 里叫做 “hint file” 。

劃重點:內存的索引內容和文件的 “hint file” 是對應的。

不一樣的思考

每一種設計都有它針對的場景,通用的東西往往是平庸的。Bitcask 它也是如此,它不適用于所有場景,那它適用哪些場景呢?

Bitcask 主要是持久化日志型文件加上易失的內存 hash 表組成。

這里有很多可以思考的關鍵點:

  • 內存 hash 表到底有多大?
  • Bitcask 它適合存儲多大的數據?
  • Bitcask 它適合存儲大對象還是小對象?

為了回答上面幾個問題,需要假定一些數據結構:

日志結構:

  1. |crc|timestamp|key size|value size|key|value| 

我們假設前面頭部元數據用 4+4+4+4 個字節。

hash 表的結構:

  1. key -> |file_id| record size | record offset | timestamp | 

假定是 4+4+4+4 個字節(注意,由于這里用 offset 用 4 個字節表示,所以日志文件尋址范圍在 0-4G 之間)。

進一步假設用戶 key 的平均大小為 32 字節。

1 內存 hash 表到底有多大?

一個 key/value 在內存中最少占用 32+16 字節,假設 32 GiB 的內存,那么可以存儲 32 GiB/ 48 Byte = 715,827,882 個索引。

7 億個健值對?

貌似還挺多,但也不一定。很多人對這個沒什么概念,我們再推進一個假設,假設用戶 value 平均大小是 8 KiB,那么就能算得的總空間是 ( 715,827,882 * 8 * 1024 ) / ( 1024 * 1024 * 1024 * 1024 ) = 5.3 TiB 。

5.3 TiB ?

實話實說,貌似不太大?,F在一個機械盤 16 TiB 的都很普遍了。

現在反過來推算下,假設現在有一個 16 TiB 的盤,用戶 key 平均 32 字節,value 平均 8 KiB,如果寫滿的話,需要多少內存?

算一下,( 16 TiB / (16+32+8KiB) ) * 48 Byte = 95 GiB ,一個 16 TiB 的盤寫滿的話需要 95 GiB 內存來存儲它的索引。這其實是很大的開銷,因為一臺機器可能 64 塊盤。。。。

95 GiB * N 的內存消耗能抗的住嗎?

不一定,看你公司的機型嘍。這都是錢嘛,畢竟內存是很貴的。

索引全內存構建,這個構建時間你能接受嗎?

不一定,如果說滿載的數據構建要 1 個小時,你還會接受嗎?當然不。

2 Bitcask 它適合存儲多大的數據?

那到底 Bitcask 適合存儲多少數據呢?

這個沒有標準答案,還是要看場景分析。就拿我上面舉的例子來講,對于 60 盤( 單盤 16 TiB )的場景來講,原生的Bitcask 可能就不大適合。

對于某些動輒就說 Bitcask 適合存儲海量小對象而不加任何前提的說法,奇伢覺得還是不夠嚴謹。

在 這篇Bitcask 論文[1] 中其實有這么一段話

The tests mentioned above used a dataset of more than 10×RAM on the system in question, and showed no sign of changed behavior at that point. This is consistent with our expectations given the design of Bitcask.

它這里的基本目標好像是 10 倍的 RAM ?

假設內存 32 GiB,那換算下就是 320 GiB 的磁盤空間。這,似乎是內存+ SSD 盤更適合 Bitcask 的場景,而不是真正超大容量 HDD 磁盤存儲的場景。

3 Bitcask 它適合存儲大對象還是小對象?

這個就很有意思了,Bitcask 能不能存儲海量數據相信通過的計算讀者已經有數了。但是它適合的是大對象還是小對象呢?

這個其實還是比較明顯的,Bitcask 無疑是適合小對象的。理由很簡單,它從設計上就規定了只有一個寫入點( active file ),也就是說用戶的寫入是串行的,那么如果說用戶的 value 特別大,比如 100 M,那么系統吞吐會非常差(比如說,這個時候來了個 1K 的對象,卻只能排隊)。而如果都是些小對象,那么完全可以聚合很多 key/value ,一次性落盤。這樣既滿足了順序 IO ,又提供了很好的系統的吞吐能力。

所以這里很重要的一點是:對象的大小。架構的設計受此影響頗深。

拋出一個思考的問題:你認為什么樣的才是小對象?

奇伢認為,大小不夠一筆 IO 的都可以認為是小對象。比如說某系統 IO 落盤以 1M 為單位,那么 1M 以內的都可認為是小的對象,這樣就可以很好的做到 IO 的聚合,這也是 Bitcask 非常適合的場景。這樣就能做到:即使底下是串行的寫入也能提供用戶并發的性能。當然這個并不嚴謹,實際情況要具體分析。

項目實現

Riak 是以 Erlang 編寫的一個高度可擴展的分布式數據存儲,是一個很出名的 nosql 的數據庫 , Bitcask 的誕生和它關系密切 。

總結

Bitcask 展示了一個極富思考的存儲架構,它簡單有效,并且可以有很多變形;

Bitcask 并不是一個最快的存儲系統,但是它性能足夠,并且簡單、穩定;

估算的能力很重要,結合自己的場景,估算的數據能指導架構設計;

Bitcask 無疑是適合小對象的。小對象的定義?奇伢淺顯的認為一次 IO 能裝的下的都可以認為是小對象;

Bitcask 雖然只有一個可寫文件,并且是 append 串行寫,但通過聚合小對象、批量落盤對外可以體現出不錯的并發能力哦;

Bitcask 適合小對象,但是不適合海量對象。主要是內存索引的限制。當然也不絕對的。原生論文只是提供了一個設計思路,我們可以在此基礎上有很多變形設計;

參考資料

[1]Bitcask 論文: https://riak.com/assets/bitcask-intro.pdf

后記

Bitcask 在設計上和 LSM 有異曲同工之處,都是通過日志的形式來承接寫,提供最優的寫的性能。雖然功能不如 LSM 豐富,但它簡單穩定,非常值得學習。

 

責任編輯:武曉燕 來源: 奇伢云存儲
相關推薦

2023-11-22 08:35:34

存儲引擎bitcask

2022-09-29 12:09:40

MySQLTiDB數據庫

2019-01-14 14:25:25

MySQL存儲邏輯架構

2017-03-15 15:45:33

MySQL存儲引擎設計與實現

2018-10-16 14:26:22

分布式塊存儲引擎

2023-01-04 08:02:16

工作流架構設計

2020-07-01 08:05:46

Kubernetes容器開發

2012-09-19 13:46:37

存儲存儲設計快速表態

2017-10-12 08:59:27

企業云存儲架構

2021-08-10 14:29:06

MySQL數據庫存儲

2011-05-03 10:09:37

MySQL存儲引擎

2020-04-10 12:12:13

InnoDB存儲架構

2014-09-25 11:25:19

游戲引擎架構設計

2023-10-27 11:35:18

存儲架構版本庫

2024-10-15 11:04:18

2017-11-27 08:50:29

架構數據存儲

2013-04-19 01:42:02

2009-02-02 09:31:25

MySQL存儲引擎MyISAM

2010-06-13 13:50:02

MySQL存儲引擎

2010-05-21 10:58:19

MySQL存儲引擎
點贊
收藏

51CTO技術棧公眾號

91精品国产乱码久久久久久蜜臀 | 国产午夜精品久久久久| 日本中文字幕在线一区| 在线观看亚洲精品| 久久天天东北熟女毛茸茸| 亚洲福利在线观看视频| 丝袜脚交一区二区| 欧美成人中文字幕在线| 亚洲AV无码国产成人久久| gogo大尺度成人免费视频| 丁香五六月婷婷久久激情| 亚洲精品在线视频观看| 日本xxxx人| 韩日欧美一区二区三区| 欧美在线观看网站| 丝袜 亚洲 另类 欧美 重口| 少妇精品久久久| 日韩免费看网站| 日本肉体xxxx裸体xxx免费| 91av久久| 亚洲人吸女人奶水| 色吧亚洲视频| 亚欧在线观看视频| 国产成人高清在线| 国产剧情久久久久久| www.国产高清| 综合激情一区| 色妞一区二区三区| 精品国产av无码| 男人的天堂久久| 日韩欧美色电影| caoporm在线视频| 手机看片久久| 欧美色另类天堂2015| 日本一本中文字幕| 色网在线观看| 亚洲码国产岛国毛片在线| 涩涩涩999| 欧美美女搞黄| 91丨porny丨最新| 国产精品有限公司| 高清国产mv在线观看| 国产成人av在线影院| 91九色国产视频| 97精品久久人人爽人人爽| 秋霞午夜av一区二区三区| 国产91九色视频| www.毛片.com| 蜜桃伊人久久| 国产精品久久久久久超碰| 一级成人黄色片| 久久久久久久高潮| 国产成人av网址| 无码人妻精品一区二| 美女诱惑黄网站一区| 欧美在线视频一区| 国产嫩bbwbbw高潮| 久久精品午夜| 国产精品天天狠天天看 | 欧美成人video| 香蕉视频1024| 国产精品18hdxxxⅹ在线| 亚洲成人精品视频| 男生裸体视频网站| 精品国产一区二区三区小蝌蚪 | 亚洲第一精品夜夜躁人人爽| 欧美xxxxx精品| 小说区图片区色综合区| 亚洲欧美一区二区三区情侣bbw| 91久久免费视频| 日韩成人a**站| 久久av中文字幕| 日本一级黄色录像| 久久天堂成人| 91精品国产综合久久香蕉| 国产黄色一区二区| 97久久超碰国产精品| 人偷久久久久久久偷女厕| 欧洲日本在线| 亚洲国产综合91精品麻豆| 无码人妻精品一区二区三区在线| 欧美成a人片在线观看久| 欧美日韩国产综合草草| 久久久久久久久久久久国产精品| 青青操综合网| 日韩亚洲精品视频| 日本最新中文字幕| 蜜桃av一区二区| 99爱精品视频| 国产一级片在线播放| 亚洲人成网站色在线观看| 欧美成人三级在线视频| av高清一区| 欧美va亚洲va在线观看蝴蝶网| 丰满少妇一区二区三区| 国产精品久久久久久久免费观看| 欧美精品激情blacked18| 五月天婷婷导航| 国产成人一区在线| 欧美专区一二三| 国产区美女在线| 欧美日韩一级二级| 亚洲一级av无码毛片精品| 婷婷亚洲图片| 欧美资源在线观看| www黄色在线观看| 亚洲国产精品99久久久久久久久| 欧美视频在线第一页| 午夜激情成人网| 亚洲国产一区二区三区四区| 91动漫免费网站| 国产精品人人爽人人做我的可爱| 成人免费网站在线看| 三级在线电影| 亚洲大型综合色站| 天堂av.com| 超碰成人久久| 欧美在线观看网址综合| 亚洲第一色视频| 亚洲欧洲三级电影| 四季av一区二区| 免费福利视频一区| 欧美精品激情在线| av资源免费看| 亚洲天堂网中文字| 日韩精品你懂的| 色综合综合网| 日韩美女视频中文字幕| 四虎在线视频免费观看| 亚洲午夜一区二区三区| 一级片免费在线观看视频| 日韩精品久久| 国产精品视频精品| 成人精品一区二区三区免费| 一本在线高清不卡dvd| 男人网站在线观看| 亚洲精一区二区三区| 国产精品裸体一区二区三区| 亚洲欧美成人影院| 欧美一区二区成人| 久草视频免费播放| 国产成人免费av在线| 8x8x华人在线| 9l亚洲国产成人精品一区二三| 欧美久久精品午夜青青大伊人| 国产女同91疯狂高潮互磨| 综合电影一区二区三区| 911福利视频| 91精品成人| 91久久国产自产拍夜夜嗨| sm国产在线调教视频| 日韩精品中文字幕在线一区| 欧美国产精品一二三| 国产成人自拍网| 少妇人妻无码专区视频| 女同久久另类99精品国产| 91精品国产成人www| 免费在线视频一级不卡| 色婷婷av一区二区三区gif| 精品国产成人亚洲午夜福利| 免费日本视频一区| 日韩精品第1页| jazzjazz国产精品久久| 97香蕉久久超级碰碰高清版| 四虎在线免费看| 欧美四级电影网| 伊人久久久久久久久久久久久久| 国产精品一区久久久久| 精品久久久久久久久久中文字幕| 亚洲婷婷丁香| 成人黄色免费看| 黄色成人在线网| 亚洲日韩欧美视频一区| 亚洲午夜精品久久久| 一区二区三区中文免费| 国产美女喷水视频| 精品一区二区国语对白| 免费高清一区二区三区| 九九亚洲精品| 亚洲综合日韩在线| 在线观看网站免费入口在线观看国内 | 中文字幕一区二区在线播放| 国产伦理在线观看| 久久成人一区| 992tv成人免费观看| 美女视频免费精品| 国产日韩在线一区| 99热99re6国产在线播放| 国产亚洲激情视频在线| 精品人妻一区二区三区含羞草 | 国产精品无码天天爽视频| 亚洲一区二区三区在线| 少妇精品无码一区二区免费视频| 国产福利一区二区三区视频在线| 日本在线视频www| 综合一区在线| 欧美国产二区| 一区二区三区国产好| 国产精品高潮呻吟久久av黑人| 日韩123区| 最近中文字幕日韩精品 | 久久青草国产手机看片福利盒子 | 99精品热视频| 中文字幕第22页| 性色一区二区三区| av日韩在线看| 66视频精品| 日韩高清av电影| 久久动漫网址| 亚洲自拍小视频免费观看| 午夜无码国产理论在线| 97国产精品视频人人做人人爱| 精品国产丝袜高跟鞋| 亚洲视频在线观看免费| 熟妇高潮一区二区三区| 日韩欧美一区在线| 在线观看黄色网| 在线区一区二视频| 99热国产在线观看| 午夜日韩在线观看| 国产亚洲精品女人久久久久久| 中文字幕一区不卡| 免费看的黄色录像| 国产三级欧美三级日产三级99| 99精品一区二区三区无码吞精| 国产精品一二三| 久久出品必属精品| 精品一区二区三区在线观看国产| 日韩av手机版| 日韩av成人高清| 91在线视频观看免费| 蜜乳av另类精品一区二区| 国产av天堂无码一区二区三区| 亚洲小说欧美另类婷婷| 欧美黄色免费网址| 樱桃成人精品视频在线播放| 成年人视频大全| 亚洲成人一区| 国产日韩欧美大片| 永久91嫩草亚洲精品人人| 性欧美18一19内谢| 中文字幕一区二区三区在线视频| 久久av秘一区二区三区| 911久久香蕉国产线看观看| 最新av在线免费观看| 久久久人成影片免费观看| 小说区视频区图片区| 91精品啪在线观看国产18| 国产免费xxx| 欧美日韩三区| 久久亚洲中文字幕无码| 亚洲在线播放| 久久久久久三级| 久久99精品久久久久婷婷| www.五月天色| 国产福利一区在线| 538国产视频| 国产亚洲综合在线| 久久久久99精品成人| 成人欧美一区二区三区视频网页| 国产高潮流白浆| 亚洲一区二区三区精品在线| 91午夜视频在线观看| 色8久久精品久久久久久蜜| 这里只有久久精品视频| 91精品国产综合久久婷婷香蕉 | 亚洲欧美日韩一区二区在线| 国产大片在线免费观看| 美女999久久久精品视频| 国产天堂在线播放视频| 国产成人拍精品视频午夜网站| 粉嫩av一区二区三区四区五区| 91亚洲永久免费精品| 免费看久久久| 综合久久国产| 日韩午夜av在线| 91人人澡人人爽人人精品| 国内成+人亚洲+欧美+综合在线| 国产清纯白嫩初高中在线观看性色| www一区二区| 91久久久久久久久久久久久久| 亚洲一区二区三区国产| 伊人成年综合网| 日韩欧美资源站| 狠狠狠综合7777久夜色撩人| 欧美成人国产va精品日本一级| 亚洲插插视频| 亚洲自拍偷拍在线| 精品国产一区二区三区噜噜噜| av一区二区三区免费观看| 日韩中文欧美在线| 欧美久久久久久久久久久| 欧美极品aⅴ影院| 久久精品国产亚洲av香蕉| 欧美日韩国产一区| 亚洲欧美自偷自拍| 欧美xxxx18性欧美| 精品网站在线| 国产一区二区高清视频| 久久精品国内一区二区三区水蜜桃| 国产精品无码av在线播放| 国产一区二区导航在线播放| 亚洲黄色免费视频| 精品人伦一区二区三区蜜桃网站| 国产精品老熟女视频一区二区| 日韩精品视频在线| 性欧美videoshd高清| 国产精品久久久久久久电影| 红杏一区二区三区| 奇米777四色影视在线看| 麻豆精品国产91久久久久久| 黄色录像a级片| 亚洲一区二区三区爽爽爽爽爽| 国产精品无码久久久久成人app| 亚洲视屏在线播放| 少妇淫片在线影院| 国产精品制服诱惑| 欧美日韩少妇| 亚洲丝袜在线观看| 国产精品乱码一区二区三区软件| 国产免费a视频| 精品亚洲一区二区三区在线观看| 成人在线免费观看黄色| 91pron在线| 综合久久精品| 日韩欧美色视频| 亚洲日本乱码在线观看| 国产精品久久久久久免费| 色狠狠久久aa北条麻妃| 成人在线观看免费视频| 日本在线播放不卡| 快she精品国产999| 国产交换配乱淫视频免费| 日韩欧美一区视频| 青青草娱乐在线| 日韩美女免费线视频| 国产亚洲电影| 免费黄色特级片| 久久久国产一区二区三区四区小说| 依依成人综合网| 亚洲图片在线综合| 成人软件在线观看| 亚欧精品在线| 久久av资源网| 成人观看免费视频| 精品久久国产97色综合| 白白色在线观看| 韩国成人一区| 鲁大师成人一区二区三区| xxxx日本免费| 欧美影片第一页| 久久77777| av成人免费观看| 国产日韩一区| 99精品全国免费观看| 91精品中文字幕一区二区三区| 性欧美高清come| 久久久久久久久一区| 丝袜美腿高跟呻吟高潮一区| 国产精品一区二区亚洲| 欧美一级精品大片| 91美女主播在线视频| 日韩精彩视频| 国产做a爰片久久毛片| 久久久精品人妻一区二区三区四 | lutube成人福利在线观看| 国产专区欧美专区| 亚洲视频观看| 亚洲精品国产一区黑色丝袜| 欧美日韩高清在线| 精精国产xxxx视频在线中文版| 欧美激情视频一区二区三区| 久久精品国产网站| 国产精品变态另类虐交| 亚洲午夜av久久乱码| 色妞ww精品视频7777| 欧美 国产 小说 另类| 国产精品丝袜一区| 日本xxxxxwwwww| 国产人妖伪娘一区91| 亚洲国产国产亚洲一二三| 精品无人区无码乱码毛片国产| 91精品国产综合久久久蜜臀图片| 1234区中文字幕在线观看| 日韩欧美国产二区| 成熟亚洲日本毛茸茸凸凹| 免费黄色片视频| 欧美激情在线视频二区| 欧美日韩黑人| 亚洲视频天天射| 欧美日韩成人一区二区| 麻豆视频在线看| 艳母动漫在线观看| 久久婷婷成人综合色| 精品久久国产视频| 日本人成精品视频在线| 国精品一区二区| 天天操天天操天天操天天操天天操| 精品调教chinesegay| 亚洲一区二区电影|