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

分布式時序數據庫QTSDB的設計與實現

開發 開發工具 分布式
現有的開源時序數據庫influxdb只支持單機運行,在面臨大量數據寫入時,會出現查詢慢,機器負載高,單機容量的限制。為了解決這一問題,360基礎架構團隊在單機influxdb的基礎上,開發了集群版——QTSDB。

現有的開源時序數據庫influxdb只支持單機運行,在面臨大量數據寫入時,會出現查詢慢,機器負載高,單機容量的限制。

為了解決這一問題,360基礎架構團隊在單機influxdb的基礎上,開發了集群版——QTSDB。

一、QTSDB 簡述

QTSDB是一個分布式時間序列數據庫,用于處理海量數據寫入與查詢。實現上,是基于開源單機時序數據庫influxdb 1.7開發的分布式版本,除了具有influxdb本身的特性之外,還有容量擴展、副本容錯等集群功能。

主要特點如下:

  • 為時間序列數據專門編寫的高性能數據存儲, 兼顧寫入性能和磁盤空間占用;
  • 類sql查詢語句, 支持多種統計聚合函數;
  • 自動清理過期數據;
  • 內置連續查詢,自動完成用戶預設的聚合操作;
  • Golang編寫,沒有其它的依賴, 部署運維簡單;
  • 節點動態水平擴展,支持海量數據存儲;
  • 副本冗余設計,自動故障轉移,支持高可用;
  • 優化數據寫入,支持高吞吐量;

二、系統架構

1. 邏輯存儲層次結構

influxdb架構層次***是database,database下邊根據數據保留時長不同分成了不同的retension policy,形成了database下面的多個存儲容器,因為時序數據庫與時間維度關聯,所以將相同保留時長的內容存放到一起,便于到期刪除。除此之外,在retension policy之下,將retension policy的保留時長繼續細分,每個時間段的數據存儲在一個shard group中,這樣當某個分段的shard group到期之后,會將其整個刪掉,避免從存儲引擎內部摳出部分數據。例如,在database之下的數據,可能是30天保留時長,可能是7天保留時長,他們將存放在不同的retension policy之下。假設將7天的數據繼續按1天進行劃分,就將他們分別存放到7個shard group中,當第8天的數據生成時,會新建一個shard group寫入,并將第 1天的shard group整個刪除。

到此為止,同一個retension policy下,發來的當下時序數據只會落在當下的時間段,也就是只有***的shard group有數據寫入,為了提高并發量,一個shard group又分成了多個shard,這些shard全局唯一,分布于所有物理節點上,每個shard對應一個tsm存儲引擎,負責存儲數據。

在請求訪問數據時,通過請求的信息可以鎖定某個database和retension policy,然后根據請求中的時間段信息,鎖定某個(些)shard group。對于寫入的情況,每條寫入的數據都對應一個serieskey(這個概念后面會介紹),通過對serieskey進行哈希取模就能鎖定一個shard,進行寫入。而shard是有副本的,在寫入的時候會采用無主多寫的策略同時寫入到每個副本中。查詢時,由于查詢請求中沒有serieskey的信息,所以只能將shard group內的shard都查詢一遍,針對一個shard,會在其副本中選擇一個可用的物理節點進行訪問。

那么一個shard group要有多少shard呢,為了達到***并發量,又不過分干擾數據整體的有序性,在物理節點數和副本數確定后,一個shard group內的shard數量是機器數除以副本數,保障了當下的數據可以均勻寫入到所有的物理節點之上,也不至于因為shard過多影響查詢效率。例如,圖上data集群有6個物理節點,用戶指定雙副本,那么就有3個shard。

2. 集群結構

整個系統分成三個部分:proxy、meta集群、data集群。proxy負責接收請求,無狀態,其前可接lvs支持水平擴展。meta集群保存上面提到的邏輯存儲層次及其與物理節點的對應關系,通過raft協議保障元數據的強一致,這里meta信息保存在內存中,日志和快照會持久化到磁盤。data集群是真正的數據存儲節點,數據以shard為單位存儲于其上,每個shard都對應一個tsm存儲引擎。

請求到來的時候,經過lvs鎖定一臺proxy,proxy先根據database、retension policy和時間段到meta集群查找meta信息,最終得到一個shard到物理節點的映射,然后將這個映射關系轉換為物理節點到shard的映射返回給proxy,***根據這個映射關系,到data集群指定的物理節點中訪問具體的shard,至于shard之下的數據訪問后邊會介紹。

三、數據訪問

1. 語法格式

influxdb的查詢提供類似于關系數據庫的查詢方式,展示出來類似一個關系表:measurement,時序數據庫的時間作為一個永恒的列,除此之外的列分成兩類:

  • field:一類是field,他們是時序數據最關鍵的數據部分,其值會隨著時間的流動源源不斷的追加,例如兩臺機器之間在每個時間點上的延遲。
  • tag:另一類是tag,他們是一個field值的一些標記,所以都是字符串類型,并且取值范圍很有限。例如某個時間點的延遲field值是2ms,對應有兩個標記屬性,從哪臺機器到哪臺機器的延遲,因此可以設計兩個tag:from、to。

measurement展示出來***行是key,剩下的可以看成value,這樣tag有tagkey,tagvalue,field有fieldkey和fieldvalue。

2. 數據讀寫

當收到一行寫入數據時,會轉化為如下的格式:

  1. measurement+tagkey1+tagvalue1+tagkey2+tagvalue2+fieldkey+fieldvalue+time 

如果一行中存在多個field就會劃分成多條這樣的數據存儲。influxdb的存儲引擎可以理解為一個map,從measurement到fieldkey作為存儲key,后邊的fieldvalue和time是存儲value,這些值會源源不斷追加的,在存儲引擎中,這些值會作為一列存儲到一起,因為是隨時間漸變的數據,將他們保存到一起可以提升壓縮的效果。另外將存儲key去掉fieldkey之后剩余部分就是上邊提到的serieskey。

上邊提到,訪問請求在集群中如何鎖定shard,這里介紹在一個shard內的訪問。

influxdb的查詢類似于sql語法,但是跟sql語句的零散信息無法直接查詢存儲引擎,所以需要一些策略將sql語句轉換成存儲key。influxdb通過構建倒排索引來將where后的tag信息轉換為所有相關的serieskey的集合,然后將每個serieskey拼接上select后邊的fieldkey就組成了存儲key,這樣就可以按列取出對應的數據了。

通過對tsm存儲引擎中存儲key內serieskey的分析,能夠構建出倒排索引,新版本influxdb將倒排索引持久化到每個shard中,與存儲數據的tsm存儲引擎對應,叫做tsi存儲引擎。倒排索引相當于一個三層的map,map的key是measurment,值是一個二層的map,這個二層的map的key是tagkey,對應的值是一個一層的map,這個一層map的key是tagval,對應的值是一個serieskey的集合,這個集合中的每個serieskey字串都包含了map索引路徑上的measurement、tagkey和tagval。

這樣可以分析查詢sql,用from后的measurement查詢倒排索引三級map獲得一個二級map,然后再分析where之后多個過濾邏輯單元,以tagkey1=tagval1為例,將這兩個信息作為二層map的key,查到最終的值:serieskey的集合,這個集合的每個serieskey字串都包含了measurment、tagkey1和tagval1,他們是滿足當下過濾邏輯單元的serieskey。根據這些邏輯單元的與或邏輯,將其對應的serieskey的集合進行交并運算,最終根據sql的語義過濾出所有的符合其邏輯的serieskey的集合,然后將這些serieskey與select后邊的fieldkey拼接起來,得到最終的存儲·key,就可以讀取數據了。

不帶聚合函數的查詢:如圖,對于一個serieskey,需要拼接眾多的fieldkey,進而取出多個列的數據,他們出來后面臨的問題是怎么組合為一行的數據,influxdb行列約束比較松散,不能單純按照列內偏移確定行。Influxdb把serieskey和time作為判斷列數據為一行的依據,每一個serieskey對應的多列就匯集為一個以多行為粒度的數據流,多個serieskey對應的數據流按照一定順序匯集為一個數據流,作為最終的結果集返回到客戶端。

帶聚合函數的查詢:這種方式與上邊的查詢正好相反,這里是針對聚合函數參數field,拼接上眾多的serieskey,當然最終目的都是一樣,得到存儲key,多個存儲key可以讀取多個數據流,這些數據流面臨兩種處理,先將他們按照一定的順序匯集為一個數據流,然后按照一定的策略圈定這個數據流內相鄰的一些數據進行聚合計算,進而得到最終聚合后的值。這里的順序和策略來自于sql語句中group by后的聚合方式。

多數據流的合并聚合方式,也同樣適用于shard之上的查詢結果。

對于寫入就比較簡單了,直接更新數據存儲引擎和倒排索引就可以了。

3. 整個流程

對于訪問的整個流程上邊都已經提到了,這里整體梳理一下:分成兩個階段,在shard之上的查詢,在shard之下的查詢。

首先訪問請求通過lvs鎖定到某個proxy,proxy到meta集群中查找meta信息,根據請求信息,鎖定database,retension policy和shard group,進而得到眾多的shard。

對于寫入操作,根據寫入時的serieskey,鎖定一個shard進行寫入,由于shard存在多副本,需要同時將數據寫入到多個副本。對于查詢,無法通過請求信息得到serieskey,因此需要查詢所有的shard,針對每個shard選擇一個可用的副本,進行訪問。

經過上邊的處理就獲得shard到物理節點的映射,然后將其反轉為物理節點到shard的映射,返回給proxy,proxy就可以在data集群的某個節點訪問對應的shard了。

在shard之下的寫入訪問,需要拆解insert語句,組合為存儲鍵值對存入tsm存儲引擎,然后根據組合的serieskey更新倒排索引。

在shard之下的查詢訪問,分析sql語句,查詢倒排索引,獲取其相關的serieskey集合,將其拼接field,形成最終的存儲key,進行數據訪問。然后將眾多數據在data節點上進行shard之上的合并聚合,在proxy上進行data之上的合并聚合。

最終proxy將訪問結果返回給客戶端。

四、故障處理

1. 策略

上邊提到influxdb針對shard提供副本容錯,當寫入數據發送到proxy,proxy將數據以無主多寫的形式發送到所有的shard副本。meta集群以心跳的形式監控data節點是否在線,在讀取的時候,針對同一shard會在在線的data節點中隨機選擇一個讀取節點進行讀取。

在寫入時如果一個data節點不可用,則會寫入到proxy的一個臨時文件中,等網絡恢復正常會將這些暫存的數據發送到指定節點。

2. 處理

(1) data集群擴容

當有全新節點加入data集群,目前還不支持自動將現有數據進行遷移,不過也做了些努力,為了使當下寫入數據盡快應用到新的節點,在新加入節點的時候,會將當下時間作為當下shard group的結尾時間,然后按照全新的data節點數量新建一個shard group,這樣當下數據量馬上就能均分到各個data節點,而每個shard group相關的meta信息都存儲在meta集群里,因此不會對之前數據的讀取造成干擾。

(2) data節點短暫不可用

如果data節點處于短期不可用狀態,包括短暫的網絡故障后自恢復,或者硬件故障后運維人員干預,最終data節點還存有掉線前的數據,那么就可以以原來的身份加入到data集群。對于寫入來說,不可用期間proxy會臨時存放此data節點的數據,在data加入集群時會將這部分數據再次發送到data節點,保障數據最終一致。

(3) data節點長期不可用

如果data節點由于一些原因,不能或者不需要以原來的身份加入到集群,需要運維人員手動將原來不可用的data節點下線,那么這臺機器可用時,可以以全新的data身份加入到集群中,這等同于集群的擴容。

五、總結

QTSDB集群實現為:寫入時根據serieskey將數據寫到指定shard,而讀取時無法預知serieskey,因此需要查詢每個shard。將整個讀取過程切分為兩個階段:在data節點上進行存儲引擎的讀取以及節點內部多shard的合并聚合,在proxy節點將多個data節點的數據匯總,進行后期的合并聚合,形成最終的結果集返回到客戶端。

QTSDB現有的集群功能還有不完善的地方,會在之后的使用中不斷完善。

【本文是51CTO專欄機構360技術的原創文章,微信公眾號“360技術( id: qihoo_tech)”】

戳這里,看該作者更多好文

責任編輯:趙寧寧 來源: 51CTO專欄
相關推薦

2018-07-19 11:18:45

餓了么時序數據庫監控系統

2018-04-19 14:47:19

時序數據庫HiTSDB

2017-11-20 11:37:19

時序數據數據存儲HBase

2022-07-06 15:41:55

數據庫

2022-09-23 07:44:48

時序數據庫物聯網

2017-04-17 09:54:34

分布式數據庫PhxSQL

2015-10-16 18:03:25

Docker分布式CoreOS

2023-08-27 16:11:35

數據庫分布式事務數據庫

2019-08-19 10:24:33

分布式事務數據庫

2021-03-15 10:10:29

數據庫數據查詢

2021-03-08 10:18:55

數據庫數據Prometheus

2024-07-29 09:57:47

2021-09-26 10:08:33

TSDB時序數據庫壓縮解壓

2023-10-16 09:00:00

數據庫分布式系統

2014-06-30 14:20:05

NoSQL數據庫

2020-03-11 09:50:21

時序數據庫快速檢索

2021-08-30 11:21:03

數據庫工具技術

2021-11-08 10:52:02

數據庫分布式技術

2021-03-11 09:53:07

SpringBoot數據庫分布式鎖
點贊
收藏

51CTO技術棧公眾號

国产精品成人一区二区艾草| 青青青伊人色综合久久| 亚洲成人免费网站| 国产97在线 | 亚洲| 黄色片在线免费看| 国产综合色精品一区二区三区| 欧美日韩成人在线播放| 黄色工厂在线观看| 91视频成人| 黑丝美女久久久| 91免费视频黄| 日本v片在线免费观看| 狠狠网亚洲精品| 欧美亚洲视频在线看网址| 久久福利免费视频| 性人久久久久| 日韩无一区二区| 国产偷人视频免费| 日本不卡影院| 国产精品国产a级| 欧美国产二区| 国产999久久久| 青青青爽久久午夜综合久久午夜| 欧美激情综合色综合啪啪五月| 国产91丝袜美女在线播放| 大陆精大陆国产国语精品 | 免费黄色网址在线| 性欧美69xoxoxoxo| 丝袜情趣国产精品| 日本黄色特级片| 都市激情亚洲| 日韩无一区二区| 亚洲一二三av| 日韩高清在线| 91国偷自产一区二区开放时间| 99在线观看视频免费| 欧美猛烈性xbxbxbxb| 久久婷婷国产综合精品青草 | 亚洲精品久久久蜜桃动漫 | 好吊一区二区三区视频| 亚洲网址在线观看| 欧美一区二区三区啪啪| 911福利视频| 欧美视频免费看| 欧美系列日韩一区| 青青草精品视频在线观看| 中文字幕在线免费观看视频| 午夜视频一区二区三区| 久草视频国产在线| 波多野结衣在线播放| 亚洲亚洲精品在线观看| 奇米777四色影视在线看| 99自拍视频在线观看| 亚洲欧美一区二区三区久本道91 | 国产91精品一区二区绿帽| www.蜜桃av.com| 国产69精品久久久久777| 91嫩草免费看| 亚洲精品综合网| 高清免费成人av| 国产日韩一区二区三区| 天天综合在线视频| 99久久婷婷国产精品综合| 精品国产乱码久久久久久丨区2区 精品国产乱码久久久久久蜜柚 | 六月天综合网| 国产精品入口福利| 一区二区的视频| 国产精品一区二区三区乱码| 91精品久久久久久蜜桃| 成人午夜福利视频| eeuss影院一区二区三区| 免费一区二区三区| 中文字幕日本在线观看| 亚洲欧美在线高清| 日b视频免费观看| 午夜av不卡| 欧美制服丝袜第一页| 在线观看免费的av| 99re热精品视频| 亚洲精品一区久久久久久| 久久久久亚洲av无码a片| 先锋资源久久| 欧美性视频网站| 中文字幕制服诱惑| 国产成人av影院| 鲁片一区二区三区| 日韩在线观看www| 亚洲国产精品欧美一二99| 国产又大又硬又粗| 四虎国产精品成人免费影视| 日韩久久精品一区| 免费看黄色的视频| 欧美国产三区| 国产精品久久久久久久久久ktv| 国产精品久久综合青草亚洲AV| 成人av电影在线观看| 神马影院午夜我不卡| www在线视频| 欧美性猛交xxxx偷拍洗澡| www.久久久久久久久久久| 蜜桃一区av| 日韩最新在线视频| 色婷婷av国产精品| 国产一区二区久久| 欧美一区1区三区3区公司| 在线中文字幕视频观看| 91国产丝袜在线播放| 国产精品熟妇一区二区三区四区 | 久久国产成人精品国产成人亚洲| 色综合一区二区日本韩国亚洲| 日韩av在线精品| 免费成年人视频在线观看| 久久精品道一区二区三区| av一区二区三区四区电影| 浮生影视网在线观看免费| 亚洲国产色一区| mm131国产精品| 精品一区毛片| 97激碰免费视频| 国产熟女一区二区三区五月婷| 久久久精品国产99久久精品芒果| 亚洲精品无码国产| 日韩中文字幕一区二区高清99| 一道本无吗dⅴd在线播放一区| 日韩精品一区二区在线播放 | 亚洲最大福利视频网| 国产香蕉视频在线看| 欧美日韩免费在线| 日本50路肥熟bbw| 欧美激情一区| 91沈先生作品| 女女色综合影院| 欧美性大战xxxxx久久久| 久久久久久久久久久久| 国产精品美女久久久| 国产精品麻豆免费版| 国产传媒在线播放| 67194成人在线观看| 性少妇xx生活| 美女视频黄久久| 亚洲精品不卡| 天然素人一区二区视频| 亚洲日韩欧美视频| 色老头一区二区| 国产亚洲精品7777| 99久久激情视频| 韩日一区二区三区| 国产精品第1页| 国产三级在线| 欧美视频一区二区三区四区| 四季av中文字幕| 老汉av免费一区二区三区| 性高潮久久久久久久久| 国产精品天堂蜜av在线播放| 色悠悠国产精品| 国产美女自慰在线观看| 亚洲免费在线视频一区 二区| 成人三级做爰av| 国产在线日韩| 久久精品美女| 国产成人精品一区二三区在线观看 | 亚洲成在人线在线播放| 中文字幕第3页| 性欧美精品高清| 秋霞毛片久久久久久久久| 色天使综合视频| 久久精品成人欧美大片古装| 国产www视频| 亚洲成人免费在线观看| 中文字幕一二三四区| 日韩福利电影在线| 欧美日韩一级在线| 久久超级碰碰| 国产精品1234| 超鹏97在线| 日韩精品极品在线观看| 中文字幕人妻一区二区三区视频| 亚洲欧洲日韩女同| 中文在线永久免费观看| 免费看黄色91| 中文精品无码中文字幕无码专区| 偷拍自拍一区| 国产在线观看不卡| av中文字幕在线观看第一页| 亚洲欧洲日韩国产| 国产男女无套免费网站| 精品国产精品三级精品av网址| 欧美黄色高清视频| 成人免费的视频| www.涩涩涩| 91久久黄色| 一级日韩一区在线观看| 成人av资源网址| 国产精品视频网站| 黄色污网站在线观看| 中文字幕亚洲自拍| 少妇无码一区二区三区| 欧美日韩你懂的| 美女又爽又黄免费视频| 亚洲色图欧美在线| 亚洲午夜久久久久久久久红桃| 精东粉嫩av免费一区二区三区| 尤物av无码色av无码| 亚洲mv大片欧洲mv大片| 日韩欧美一区二区三区四区| 97se亚洲| 91日本在线观看| 国产激情欧美| 18久久久久久| www久久日com| 色系列之999| 黄网在线免费| 亚洲国产日韩欧美在线99| 一级做a爱片久久毛片| 欧美日韩综合视频| 久久9999久久免费精品国产| 国产精品久久久久一区二区三区 | 精品欧美色视频网站在线观看| 日韩av网站大全| 精品人妻一区二区三区麻豆91| 欧美午夜精品免费| 伦av综合一区| 激情久久av一区av二区av三区| 国产av无码专区亚洲av毛网站| 国产亚洲精品福利| 亚洲AV无码片久久精品| aaa欧美色吧激情视频| 日本中文字幕精品| 激情六月婷婷久久| 亚洲娇小娇小娇小| 男人的j进女人的j一区| www.日日操| 久久一二三四| 99精品视频在线看| 亚洲视频日本| 国产精品69久久久| 极品少妇一区二区三区| 久久av高潮av| 国产精品成人一区二区网站软件| 伊人网在线免费| 欧美一区二区三区另类| 国产尤物av一区二区三区| 欧美fxxxxxx另类| 日本人妻伦在线中文字幕| 亚洲欧美色图| 亚洲国产精品女人| 欧美.日韩.国产.一区.二区| 国产大尺度在线观看| 91精品亚洲| 日韩精品免费一区| 伊人久久综合| 五十路熟女丰满大屁股| 一区二区黄色| caopor在线视频| 麻豆专区一区二区三区四区五区| 国产一级片自拍| 国产乱妇无码大片在线观看| 青青草原播放器| 成人性生交大片| 黄色a一级视频| 欧美激情一区二区三区不卡| 免费黄色国产视频| 亚洲免费大片在线观看| 日韩av片在线播放| 欧美午夜激情小视频| 日本一区二区三区久久| 在线播放亚洲一区| 亚洲免费国产视频| 日韩精品电影网| 日本在线观看www| 久久久久久九九九| 二区三区不卡| 国产综合视频在线观看| 91麻豆精品激情在线观看最新 | 7777精品伊久久久大香线蕉语言| 在线综合色站| 欧美日韩精品久久| 99久久99热这里只有精品| 美女扒开大腿让男人桶 | 中国特级黄色片| 97aⅴ精品视频一二三区| 能直接看的av| 亚洲一区二区视频| 国产亚洲欧美日韩高清| 91精品国产色综合久久久蜜香臀| 黄色一级a毛片| 一区二区三区视频观看| 男女免费观看在线爽爽爽视频| 88国产精品欧美一区二区三区| 成人a在线观看高清电影| av一区观看| 日韩在线二区| 91精品91久久久中77777老牛| 麻豆一区二区在线| 香港三日本8a三级少妇三级99| 中文欧美字幕免费| 日韩网红少妇无码视频香港| 欧美日韩中文一区| 五月婷婷激情在线| 久久久精品亚洲| 日韩成人影音| 国产精品免费在线| 91中文字幕精品永久在线| 3d动漫一区二区三区| 韩国理伦片一区二区三区在线播放| 国产毛片毛片毛片毛片毛片毛片| 综合婷婷亚洲小说| www.五月婷婷.com| 亚洲精品一区二区三区蜜桃下载 | 亚洲精品中文在线| 黄色污污视频软件| 日韩av在线免费| 国产深夜视频在线观看| 国产欧美精品一区二区三区-老狼 国产欧美精品一区二区三区介绍 国产欧美精品一区二区 | 亚洲av永久纯肉无码精品动漫| 一区二区欧美激情| 小视频免费在线观看| 国产精品手机在线| 国产伊人精品| 能看毛片的网站| 国产精品久久久久久久裸模| 婷婷激情五月网| 亚洲精品美女网站| 极品视频在线| 精品欧美国产| 亚洲激情在线| 制服丝袜第一页在线观看| 亚洲综合一区二区精品导航| 国产精品视频第一页| 中文字幕精品av| 嫩草伊人久久精品少妇av杨幂| 欧美日韩精品免费观看视一区二区| 亚洲国产专区校园欧美| 韩国av中国字幕| 亚洲国产精品尤物yw在线观看| 国产成人av免费看| 欧美精品生活片| 日韩最新av| 欧美中文字幕在线观看视频 | 久久久久久久久久网站| 69p69国产精品| 中中文字幕av在线| 超碰国产精品久久国产精品99| 国产一区久久| 亚洲乱妇老熟女爽到高潮的片| 亚洲国产日韩在线一区模特| 欧美一级免费片| 全球成人中文在线| 深爱激情综合| 视频二区在线播放| 亚洲欧美在线视频观看| www.久久色| 91国内在线视频| 免费看成人吃奶视频在线| 国产福利视频在线播放| 国产目拍亚洲精品99久久精品| 中文字幕激情视频| 久久资源免费视频| avtt综合网| 欧美日韩激情视频在线观看| 国产校园另类小说区| 伊人成人在线观看| 久久国产精品久久久久| 精品国产影院| 成人在线激情网| ...xxx性欧美| 蜜桃av噜噜一区二区三区麻豆| 91精品国产乱码久久久久久蜜臀| 免费久久精品| 亚洲精品mv在线观看| 亚洲高清视频中文字幕| 九色蝌蚪在线| 91久久久久久久久| 一区二区国产在线观看| 91视频免费看片| 精品欧美久久久| 免费看av不卡| 熟女视频一区二区三区| 成人精品视频一区| 欧美国产一级片| 色综合久久88| 色综合综合网| 一区二区三区人妻| 色偷偷久久人人79超碰人人澡| 日本蜜桃在线观看| 久久99欧美| 国产一区二区电影| 欧美精品一二三四区| 久久久av电影| 综合干狼人综合首页| 制服丝袜中文字幕第一页 | 中文字幕中文字幕在线一区| 精品人妻伦一二三区久久| 国产成人亚洲综合91精品| 中文字幕免费精品| 亚洲精品国产一区黑色丝袜| 日韩欧美国产综合一区 | 成人免费网址| 欧洲精品码一区二区三区免费看| 国产一区二区三区av电影 |