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

時(shí)序數(shù)據(jù)庫技術(shù)體系-時(shí)序數(shù)據(jù)存儲模型設(shè)計(jì)

大數(shù)據(jù) 數(shù)據(jù)庫
時(shí)序數(shù)據(jù)庫技術(shù)體系中一個(gè)非常重要的技術(shù)點(diǎn)是時(shí)序數(shù)據(jù)模型設(shè)計(jì),不同的時(shí)序系統(tǒng)有不同的設(shè)計(jì)模式,不同的設(shè)計(jì)模式對時(shí)序數(shù)據(jù)的讀寫性能、數(shù)據(jù)壓縮效率等各個(gè)方面都有不同程度的影響。這篇文章筆者將會(huì)分別針對OpenTSDB、Druid、InfluxDB以及Beringei這四個(gè)時(shí)序系統(tǒng)中的時(shí)序數(shù)據(jù)模型設(shè)計(jì)進(jìn)行介紹。

時(shí)序數(shù)據(jù)庫技術(shù)體系中一個(gè)非常重要的技術(shù)點(diǎn)是時(shí)序數(shù)據(jù)模型設(shè)計(jì),不同的時(shí)序系統(tǒng)有不同的設(shè)計(jì)模式,不同的設(shè)計(jì)模式對時(shí)序數(shù)據(jù)的讀寫性能、數(shù)據(jù)壓縮效率等各個(gè)方面都有不同程度的影響。這篇文章筆者將會(huì)分別針對OpenTSDB、Druid、InfluxDB以及Beringei這四個(gè)時(shí)序系統(tǒng)中的時(shí)序數(shù)據(jù)模型設(shè)計(jì)進(jìn)行介紹。

在詳細(xì)介紹時(shí)序數(shù)據(jù)模型之前,還是有必要簡單回顧一下時(shí)序數(shù)據(jù)的幾個(gè)基本概念,如下圖所示:

時(shí)序數(shù)據(jù)庫技術(shù)體系-時(shí)序數(shù)據(jù)存儲模型設(shè)計(jì)

上圖是一個(gè)典型的時(shí)序數(shù)據(jù)示意圖,由圖中可以看出,時(shí)序數(shù)據(jù)由兩個(gè)維度坐標(biāo)來表示,橫坐標(biāo)表示時(shí)間軸,隨著時(shí)間的不斷流逝,數(shù)據(jù)也會(huì)源源不斷地吐出來;和橫坐標(biāo)不同,縱坐標(biāo)由兩種元素構(gòu)成,分別是數(shù)據(jù)源和metric,數(shù)據(jù)源由一系列的標(biāo)簽(tag,也稱為維度)唯一表示,圖中數(shù)據(jù)源是一個(gè)廣告數(shù)據(jù)源,這個(gè)數(shù)據(jù)源由publisher、advertiser、gender以及country四個(gè)維度值唯一表示,metric表示待收集的數(shù)據(jù)源指標(biāo)。一個(gè)數(shù)據(jù)源通常會(huì)采集很多指標(biāo)(metric),上圖中廣告數(shù)據(jù)源就采集了impressions、clicks以及revenue這三種指標(biāo),分別表示廣告瀏覽量、廣告點(diǎn)擊率以及廣告收入。

看到這里,相信大家對時(shí)序數(shù)據(jù)已經(jīng)有了一個(gè)初步的了解,可以簡單的概括為:一個(gè)時(shí)序數(shù)據(jù)點(diǎn)(point)由datasource(tags)+metric+timestamp這三部分唯一確定。然而,這只是邏輯上的概念理解,那具體的時(shí)序數(shù)據(jù)庫到底是如何將這樣一系列時(shí)序數(shù)據(jù)點(diǎn)進(jìn)行存儲的呢?下文筆者針對OpenTSDB、Druid、InfluxDB以及Beringei四種系統(tǒng)進(jìn)行介紹。

OpenTSDB(HBase)時(shí)序數(shù)據(jù)存儲模型

OpenTSDB基于HBase存儲時(shí)序數(shù)據(jù),在HBase層面設(shè)計(jì)RowKey規(guī)則為: metric+timestamp+datasource(tags) 。HBase是一個(gè)KV數(shù)據(jù)庫,一個(gè)時(shí)序數(shù)據(jù)(point)如果以KV的形式表示,那么其中的V必然是point的具體數(shù)值,而K就自然而然是唯一確定point數(shù)值的datasource+metric+timestamp。 這種規(guī)律不僅適用于HBase,還適用于其他KV數(shù)據(jù)庫,比如Kudu。

既然HBase中K是由datasource、metric以及timestamp三者構(gòu)成,現(xiàn)在我們可以簡單認(rèn)為rowkey就為這三者的組合,那問題來了:這三者的組合順序是怎么樣的呢?

首先來看哪個(gè)應(yīng)該排在首位。因?yàn)镠Base中一張表的數(shù)據(jù)組織方式是按照rowkey的字典序順序排列的,為了將同一種指標(biāo)的所有數(shù)據(jù)集中放在一起,HBase將將metric放在了rowkey的最前面。假如將timestamp放在最前面,同一時(shí)刻的數(shù)據(jù)必然會(huì)寫入同一個(gè)數(shù)據(jù)分片,無法起到散列的效果;而如果將datasource(即tags)放在最前面的話,這里有個(gè)更大的問題,就是datasource本身由多個(gè)標(biāo)簽組成,如果用戶指定其中部分標(biāo)簽查找,而且不是前綴標(biāo)簽的話,在HBase里面將會(huì)變成大范圍的掃描過濾查詢,查詢效率非常之低。舉個(gè)上面的例子,如果將datasource放在最前面,那rowkey就可以表示為publisher=ultrarimfast.com&advertiser:google.com&gender:Male&country:USA_impressions_20110101000000,此時(shí)用戶想查找20110101000000這個(gè)時(shí)間點(diǎn)所有發(fā)布在USA的所有廣告的瀏覽量,即只根據(jù)country=USA這樣一個(gè)維度信息查找指定時(shí)間點(diǎn)的某個(gè)指標(biāo),而且這個(gè)維度不是前綴維度,就會(huì)掃描大量的記錄進(jìn)行過濾。

確定了metric放在最前面之后,再來看看接下來應(yīng)該將datasource放在中間呢還是應(yīng)該將timestamp放在中間?將metric放在前面已經(jīng)可以解決請求均勻分布(散列)的要求,因此HBase將timestamp放在中間,將datasource放在最后。試想,如果將datasource放在中間,也會(huì)遇到上文中說到的后綴維度查找的問題。

因此,OpenTSDB中rowkey的設(shè)計(jì)為:metric+timestamp+datasource,好了,那HBase就可以只設(shè)置一個(gè)columnfamily和一個(gè)column。那問題來了,OpenTSDB的這種設(shè)計(jì)有什么問題?在了解設(shè)計(jì)問題之前需要簡單看看HBase在文件中存儲KV的方式,即一系列時(shí)序數(shù)據(jù)在文件、內(nèi)存中的存儲方式,如下圖所示:

時(shí)序數(shù)據(jù)庫技術(shù)體系-時(shí)序數(shù)據(jù)存儲模型設(shè)計(jì)

上圖是HBase中一個(gè)存儲KeyValue(KV)數(shù)據(jù)的數(shù)據(jù)塊結(jié)構(gòu),一個(gè)數(shù)據(jù)塊由多個(gè)KeyValue數(shù)據(jù)組成,在我們的事例中KeyValue就是一個(gè)時(shí)序數(shù)據(jù)點(diǎn)(point)。其中Value結(jié)構(gòu)很簡單,就是一個(gè)數(shù)值。而Key就比較復(fù)雜了,由rowkey+columnfamily+column+timestamp+keytype組成,其中rowkey等于metric+timestamp+datasource。

  • 問題一:存在很多無用的字段。 一個(gè)KeyValue中只有rowkey是有用的,其他字段諸如columnfamily、column、timestamp以及keytype從理論上來講都沒有任何實(shí)際意義,但在HBase的存儲體系里都必須存在,因而耗費(fèi)了很大的存儲成本。
  • 問題二:數(shù)據(jù)源和采集指標(biāo)冗余。 KeyValue中rowkey等于metric+timestamp+datasource,試想同一個(gè)數(shù)據(jù)源的同一個(gè)采集指標(biāo),隨著時(shí)間的流逝不斷吐出采集數(shù)據(jù),這些數(shù)據(jù)理論上共用同一個(gè)數(shù)據(jù)源(datasource)和采集指標(biāo)(metric),但在HBase的這套存儲體系下,共用是無法體現(xiàn)的,因此存在大量的數(shù)據(jù)冗余,主要是數(shù)據(jù)源冗余以及采集指標(biāo)冗余。
  • 問題三:無法有效的壓縮。 HBase提供了塊級別的壓縮算法-snappy、gzip等,這些通用壓縮算法并沒有針對時(shí)序數(shù)據(jù)進(jìn)行設(shè)置,壓縮效率比較低。HBase同樣提供了一些編碼算法,比如FastDiff等等,可以起到一定的壓縮效果,但是效果并不佳。效果不佳的主要原因是HBase沒有數(shù)據(jù)類型的概念,沒有schema的概念,不能針對特定數(shù)據(jù)類型進(jìn)行特定編碼,只能選擇通用的編碼,效果可想而知。
  • 問題四:不能完全保證多維查詢能力。 HBase本身沒有schema,目前沒有實(shí)現(xiàn)倒排索引機(jī)制,所有查詢必須指定metric、timestamp以及完整的tags或者前綴tags進(jìn)行查詢,對于后綴維度查詢也勉為其難。

雖說有這樣那樣的問題,但是OpenTSDB還是針對存儲模型做了兩個(gè)方面的優(yōu)化:

  • 優(yōu)化一:timestamp并不是想象中細(xì)粒度到秒級或毫秒級,而是精確到小時(shí)級別,然后將小時(shí)中每一秒設(shè)置到列上。 這樣一行就會(huì)有3600列,每一列表示一小時(shí)的一秒。這樣設(shè)置據(jù)說可以有效的取出一小時(shí)整的數(shù)據(jù)。
  • 優(yōu)化二:所有metrics以及所有標(biāo)簽信息(tags)都使用了全局編碼將標(biāo)簽值編碼成更短的bit,減少rowkey的存儲數(shù)據(jù)量。 上文分析HBase這種存儲方式的弊端是說道會(huì)存在大量的數(shù)據(jù)源(tags)冗余以及指標(biāo)(metric)冗余,有冗余是吧,那我就搞個(gè)編碼,將string編碼成bit,盡最大努力減少冗余。雖說這樣的全局編碼可以有效降低數(shù)據(jù)的存儲量,但是因?yàn)槿志幋a字典需要存儲在內(nèi)存中,因此在很多時(shí)候(海量標(biāo)簽值),字典所需內(nèi)存都會(huì)非常之大。

上述兩個(gè)優(yōu)化可以參考OpenTSDB這張經(jīng)典的示意圖:

時(shí)序數(shù)據(jù)庫技術(shù)體系-時(shí)序數(shù)據(jù)存儲模型設(shè)計(jì)

Druid時(shí)序數(shù)據(jù)存儲模型設(shè)計(jì)

和HBase和Kudu這類KV數(shù)據(jù)庫不同,Druid是另一種玩法。Druid是一個(gè)不折不扣的列式存儲系統(tǒng),沒有HBase的主鍵。上述時(shí)序數(shù)據(jù)在Druid中表示是下面這個(gè)樣子的:

時(shí)序數(shù)據(jù)庫技術(shù)體系-時(shí)序數(shù)據(jù)存儲模型設(shè)計(jì)

Druid是一個(gè)列式數(shù)據(jù)庫,所以每一列都會(huì)獨(dú)立存儲,比如Timestamp列會(huì)存儲在一起形成一個(gè)文件,publish列會(huì)存儲在一起形成一個(gè)文件,以此類推。細(xì)心的童鞋就會(huì)說了,這樣存儲,依然會(huì)有數(shù)據(jù)源(tags)大量冗余的問題。針對冗余這個(gè)問題,Druid和HBase的處理方式一樣,都是采用編碼字典對標(biāo)簽值進(jìn)行編碼,將string類型的標(biāo)簽值編碼成int值。但和HBase不一樣的是,Druid編碼是局部編碼,Druid和HBase都采用LSM結(jié)構(gòu),數(shù)據(jù)先寫入內(nèi)存再flush到數(shù)據(jù)文件,Druid編碼是文件級別的,局部編碼可以有效減小對內(nèi)存的巨大壓力。除此之外,Druid的這種列式存儲模式還有如下好處:

數(shù)據(jù)存儲壓縮率高。每列獨(dú)立存儲,可以針對每列進(jìn)行壓縮,而且可以為每列設(shè)置對應(yīng)的壓縮策略,比如時(shí)間列、int、fload、double、string都可以分別進(jìn)行壓縮,壓縮效果更好。

支持多維查找。Druid為datasource的每個(gè)列分別設(shè)置了Bitmap索引,利用Bitmap索引可以有效實(shí)現(xiàn)多維查找,比如用戶想查找20110101T00:00:00這個(gè)時(shí)間點(diǎn)所有發(fā)布在USA的所有廣告的瀏覽量,可以根據(jù)country=USA在Bitmap索引中找到要找的行號,再根據(jù)行號定位待查的metrics。

然而,這樣的存儲模型也有一些問題:

  1. 數(shù)據(jù)依然存在冗余。 和OpenTSDB一樣,tags存在大量的冗余。
  2. 指定數(shù)據(jù)源的范圍查找并沒有OpenTSDB高效。 這是因?yàn)镈ruid會(huì)將數(shù)據(jù)源拆開成多個(gè)標(biāo)簽,每個(gè)標(biāo)簽都走Bitmap索引,再最后使用與操作找到滿足條件的行號,這個(gè)過程需要一定的開銷。而OpenTSDB中直接可以根據(jù)數(shù)據(jù)源拼成rowkey,查找走B+樹索引,效率必然會(huì)更高。

InfluxDB時(shí)序數(shù)據(jù)存儲模型設(shè)計(jì)

相比OpenTSDB以及Druid,可能很多童鞋對InfluxDB并不特別熟悉,然而在時(shí)序數(shù)據(jù)庫排行榜單上InfluxDB卻是遙遙領(lǐng)先。InfluxDB是一款專業(yè)的時(shí)序數(shù)據(jù)庫,只存儲時(shí)序數(shù)據(jù),因此在數(shù)據(jù)模型的存儲上可以針對時(shí)序數(shù)據(jù)做非常多的優(yōu)化工作。

為了保證寫入的高效,InfluxDB也采用LSM結(jié)構(gòu),數(shù)據(jù)先寫入內(nèi)存,當(dāng)內(nèi)存容量達(dá)到一定閾值之后flush到文件。InfluxDB在時(shí)序數(shù)據(jù)模型設(shè)計(jì)方面提出了一個(gè)非常重要的概念:seriesKey,seriesKey實(shí)際上就是datasource(tags)+metric,時(shí)序數(shù)據(jù)寫入內(nèi)存之后按照seriesKey進(jìn)行組織:

時(shí)序數(shù)據(jù)庫技術(shù)體系-時(shí)序數(shù)據(jù)存儲模型設(shè)計(jì)

內(nèi)存中實(shí)際上就是一個(gè)Map:>,Map中一個(gè)SeriesKey對應(yīng)一個(gè)List,List中存儲時(shí)間線數(shù)據(jù)。數(shù)據(jù)進(jìn)來之后根據(jù)datasource(tags)+metric拼成SeriesKey,再將Timestamp|Value組合值寫入時(shí)間線數(shù)據(jù)List中。內(nèi)存中的數(shù)據(jù)flush的文件后,同樣會(huì)將同一個(gè)SeriesKey中的時(shí)間線數(shù)據(jù)寫入同一個(gè)Block塊內(nèi),即一個(gè)Block塊內(nèi)的數(shù)據(jù)都屬于同一個(gè)數(shù)據(jù)源下的一個(gè)metric。

這種設(shè)計(jì)我們認(rèn)為是將時(shí)間序列數(shù)據(jù)按照時(shí)間線挑了出來。先來看看這樣設(shè)計(jì)的好處:

  • 好處一:同一數(shù)據(jù)源的tags不再冗余存儲。一個(gè)Block內(nèi)的數(shù)據(jù)都共用一個(gè)SeriesKey,只需要將這個(gè)SeriesKey寫入這個(gè)Block的Trailer部分就可以。 大大降低了時(shí)序數(shù)據(jù)的存儲量。
  • 好處二:時(shí)間序列和value可以在同一個(gè)Block內(nèi)分開獨(dú)立存儲,獨(dú)立存儲就可以對時(shí)間列以及數(shù)值列分別進(jìn)行壓縮。InfluxDB對時(shí)間列的存儲借鑒了Beringei的壓縮方式,使用delta-delta壓縮方式極大的提高了壓縮效率。而對Value的壓縮可以針對不同的數(shù)據(jù)類型采用相同的壓縮效率。
  • 好處三:對于給定數(shù)據(jù)源以及時(shí)間范圍的數(shù)據(jù)查找,可以非常高效的進(jìn)行查找。這一點(diǎn)和OpenTSDB一樣。

細(xì)心的同學(xué)可能會(huì)問了,將datasource(tags)和metric拼成SeriesKey,不是也不能實(shí)現(xiàn)多維查找。確實(shí)是這樣,不過InfluxDB內(nèi)部實(shí)現(xiàn)了倒排索引機(jī)制,即實(shí)現(xiàn)了tag到SeriesKey的映射關(guān)系,如果用戶想根據(jù)某個(gè)tag查找的話,首先根據(jù)tag在倒排索引中找到對應(yīng)的SeriesKey,再根據(jù)SeriesKey定位具體的時(shí)間線數(shù)據(jù)。 InfluxDB的這種存儲引擎稱為TSM,全稱為Timestamp-Structure Merge Tree,基本原理類似于LSM。后期筆者將會(huì)對InfluxDB的數(shù)據(jù)寫入、文件格式、倒排索引以及數(shù)據(jù)讀取進(jìn)行專題介紹。

Beringei時(shí)序數(shù)據(jù)存儲模型設(shè)計(jì)

Beringei是今年Facebook開源的一個(gè)時(shí)序數(shù)據(jù)庫系統(tǒng)。InfluxDB時(shí)序數(shù)據(jù)模型設(shè)計(jì)很好地將時(shí)間序列按照數(shù)據(jù)源以及metric挑選了出來,解決了維度列值冗余存儲,時(shí)間列不能有效壓縮的問題。但I(xiàn)nfluxDB沒有很好的解決寫入緩存壓縮的問題:InfluxDB在寫入內(nèi)存的時(shí)候并沒有壓縮,而是在數(shù)據(jù)寫入文件的時(shí)候進(jìn)行對應(yīng)壓縮。我們知道時(shí)序數(shù)據(jù)最大的特點(diǎn)之一是最近寫入的數(shù)據(jù)最熱,將最近寫入的數(shù)據(jù)全部放在內(nèi)存可以極大提升讀取效率。Beringei很好的解決了這個(gè)問題,流式壓縮意味著數(shù)據(jù)寫入內(nèi)存之后就進(jìn)行壓縮,這樣會(huì)使得內(nèi)存中可以緩存更多的時(shí)序數(shù)據(jù),這樣對于最近數(shù)據(jù)的查詢會(huì)有很大的幫助。

Beringei的時(shí)序數(shù)據(jù)模型設(shè)計(jì)與InfluxDB基本一致,也是提出類似于SeriesKey的概念,將時(shí)間線挑了出來。但和InfluxDB有兩個(gè)比較大的區(qū)別:

  1. 文件組織形式不同。Beringei的文件存儲形式按照時(shí)間窗口組織,比如最近5分鐘的數(shù)據(jù)全部寫入同一個(gè)文件,這個(gè)文件分為很多block,每個(gè)block中的所有時(shí)序數(shù)據(jù)共用一個(gè)SeriesKey。Beringei文件沒有索引,InfluxDB有索引。
  2. Beringei目前沒有倒排索引機(jī)制,因此對于多維查詢并不高效。

后續(xù)筆者也會(huì)針對Beringei的數(shù)據(jù)寫入、流式壓縮、文件格式等進(jìn)行介紹。在筆者看來,如果將Beringei和InfluxDB有效結(jié)合起來,就能夠?qū)r(shí)序數(shù)據(jù)高效存儲在內(nèi)存,另外數(shù)據(jù)按照維度進(jìn)行組織,可以非常高效的提高數(shù)據(jù)在文件的存儲效率以及查詢效率,最后結(jié)合InfluxDB的倒排索引功能可以有效提高多維查詢能力。

本文是時(shí)序數(shù)據(jù)庫技術(shù)體系的第一篇文章,筆者主要結(jié)合OpenTSDB、Druid、InfluxDB以及Beringei這四種時(shí)序數(shù)據(jù)庫分別對時(shí)序數(shù)據(jù)這種數(shù)據(jù)形式的存儲模型進(jìn)行了介紹。每種數(shù)據(jù)庫都有自己的一套存儲方式,而每種存儲方式都有各自的一些優(yōu)勢以及缺陷,正是這些優(yōu)劣式直接決定了相應(yīng)時(shí)序數(shù)據(jù)庫的壓縮性能、讀寫性能。

責(zé)任編輯:未麗燕 來源: 有態(tài)度的HBase
相關(guān)推薦

2021-09-26 10:08:33

TSDB時(shí)序數(shù)據(jù)庫壓縮解壓

2022-07-06 15:41:55

數(shù)據(jù)庫

2022-09-23 07:44:48

時(shí)序數(shù)據(jù)庫物聯(lián)網(wǎng)

2018-04-16 08:44:51

InfluxDB TS時(shí)序數(shù)據(jù)庫存儲

2022-07-11 10:45:12

數(shù)據(jù)庫分析

2022-07-11 11:12:32

數(shù)據(jù)分析

2022-12-18 19:38:31

時(shí)序數(shù)據(jù)庫數(shù)據(jù)庫

2021-03-08 10:18:55

數(shù)據(jù)庫數(shù)據(jù)Prometheus

2021-03-15 10:10:29

數(shù)據(jù)庫數(shù)據(jù)查詢

2021-02-22 10:37:47

存儲Prometheus

2021-03-01 10:20:52

存儲

2017-09-05 14:45:14

時(shí)序數(shù)據(jù)數(shù)據(jù)庫大數(shù)據(jù)

2020-03-11 09:50:21

時(shí)序數(shù)據(jù)庫快速檢索

2022-06-10 17:37:37

數(shù)據(jù)庫

2022-07-07 12:23:29

數(shù)據(jù)庫

2019-05-30 08:31:39

數(shù)據(jù)庫QTSDB分布式

2021-08-31 14:01:59

時(shí)序數(shù)據(jù)庫數(shù)據(jù)庫數(shù)據(jù)

2018-06-26 09:37:07

時(shí)序數(shù)據(jù)庫FacebookNoSQL

2021-08-04 05:49:40

數(shù)據(jù)庫數(shù)時(shí)序數(shù)據(jù)庫技術(shù)

2022-07-06 15:50:04

數(shù)據(jù)計(jì)算
點(diǎn)贊
收藏

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

国产国产一区| 九色网友自拍视频手机在线| 国产精品va| 亚洲另类图片色| www.久久91| av在线最新| 中文字幕精品在线不卡| 亚洲va国产va天堂va久久| 日本在线观看视频网站| jizzjizz欧美69巨大| 日韩一区二区三区精品视频| 91视频最新入口| 成年人网站在线| 久久免费看少妇高潮| 91社区国产高清| 日本中文字幕久久| 欧美激情一区| 在线a欧美视频| 精品一区二区三区四区五区六区| av成人免费| 狠狠躁天天躁日日躁欧美| 一本色道久久综合亚洲二区三区 | 亚洲综合日韩| 久久久91精品| 日本精品在线观看视频| 国产成人aa在线观看网站站| 欧美日韩亚洲高清一区二区| 日本少妇高潮喷水视频| 2024最新电影免费在线观看| 欧美国产日韩精品免费观看| 久久艳妇乳肉豪妇荡乳av| 国产黄色高清视频| 久久精品国产免费| 国产成人短视频| 91精品国产乱码久久久张津瑜| 在线一区免费| 日韩在线免费av| 老熟妇一区二区| 香蕉人人精品| 日韩va亚洲va欧洲va国产| 色欲无码人妻久久精品| 日日夜夜亚洲精品| 在线观看亚洲精品视频| 波多野结衣50连登视频| 97人澡人人添人人爽欧美| 一二三四区精品视频| 中文字幕久久综合| 日本三级在线视频| 中文字幕高清不卡| 日韩一区不卡| 国产三级在线看| 国产日产亚洲精品系列| 欧美一区二区三区成人久久片| 天天av天天翘| 91亚洲精品乱码久久久久久蜜桃| 国产精品一区视频网站| 免费看国产片在线观看| 成人综合婷婷国产精品久久蜜臀 | 亚洲国产一二三| 国产精品视频一二三四区| 九义人在线观看完整免费版电视剧| 亚洲国产成人在线| 亚洲一区二区高清视频| 秋霞成人影院| 亚洲素人一区二区| 麻豆传媒网站在线观看| 日本无删减在线| 亚洲午夜免费视频| 18岁网站在线观看| 国产精品专区免费| 欧美调教femdomvk| 天天干天天色天天干| 久久69av| 亚洲国产精品热久久| 亚洲国产精品成人综合久久久| 欧美一级一片| 中文字幕日韩av电影| 777777国产7777777| 天天综合精品| 久久久久亚洲精品| 丁香六月婷婷综合| 日本不卡123| 91在线直播亚洲| 色一情一乱一区二区三区| 久久综合九色综合欧美98| 日韩av一级大片| 二区三区四区高清视频在线观看| 亚洲一区二区三区在线播放 | 捆绑调教美女网站视频一区| 92国产精品视频| av女名字大全列表| 亚洲国产成人在线| 91免费黄视频| 欧美free嫩15| 欧美大黄免费观看| a毛片毛片av永久免费| 91亚洲国产| 午夜剧场成人观在线视频免费观看| 成人公开免费视频| 激情欧美一区二区三区在线观看| 久久av一区二区三区亚洲| 婷婷在线视频观看| 亚洲午夜av在线| 亚洲精品久久久中文字幕| 盗摄牛牛av影视一区二区| 亚洲午夜激情免费视频| 精品处破女学生| 男女性色大片免费观看一区二区 | 婷婷久久综合九色综合绿巨人 | 国产精品亚洲一区二区三区在线| 久久99久久99精品蜜柚传媒| av片在线观看网站| 91成人免费在线视频| 国产精品偷伦视频免费观看了| 精品久久国产| 91豆花精品一区| a在线观看视频| 日本一区二区三区高清不卡| 九色自拍视频在线观看| 只有精品亚洲| 在线日韩日本国产亚洲| 日韩av在线天堂| 国产美女在线精品| 亚洲欧洲日韩综合二区| 亚洲黄色免费看| 亚洲精品福利视频| 欧美精品色哟哟| 黄网站免费久久| 亚洲欧洲久久| 欧美日韩尤物久久| 亚洲欧美中文在线视频| 日韩欧美亚洲视频| 从欧美一区二区三区| 一区二区三区四区不卡| 国产另类xxxxhd高清| 精品视频在线播放免| 国产稀缺真实呦乱在线| 国产成人精品1024| 精品免费久久久久久久| 激情视频亚洲| 久久综合久久美利坚合众国| 一级片aaaa| 国产精品免费视频观看| 亚洲 欧美 日韩系列| 精品产国自在拍| 国产精品成人av在线| 玖玖综合伊人| 91久久精品网| youjizz亚洲女人| 久久国产精品区| 一区精品视频| 91精品一区| 久久不射电影网| 国产不卡av在线播放| 亚洲精品菠萝久久久久久久| 一个人看的视频www| 欧美午夜国产| 国产欧美日韩亚洲| 欧美男男激情videos| 亚洲欧洲中文天堂| 国产精品xxxxxx| 亚洲欧美在线高清| 午夜一区二区视频| 欧美日韩国产免费观看| 国产精品久久久久免费| 国产拍在线视频| 亚洲人成啪啪网站| 亚洲影视一区二区| 亚洲黄一区二区三区| 一边摸一边做爽的视频17国产| 亚洲精一区二区三区| 欧美日本韩国国产| 久久精品97| 欧美激情免费看| 日韩一二三四| 欧美精品日韩一区| 黄色激情视频在线观看| 久久亚洲一区二区三区四区| 午夜宅男在线视频| 欧美特黄一级| 日韩中文一区| 综合激情久久| 国产精品高潮粉嫩av| 成人a在线视频免费观看| 亚洲高清色综合| 中日韩av在线| 亚洲国产综合色| 亚洲精品国产91| 国产精品伊人色| 黄色一级大片在线观看| 综合精品久久| 欧美一区少妇| 视频免费一区二区| 国产精品高潮呻吟视频| 污污视频在线| 国产亚洲人成a一在线v站| www.国产.com| 在线观看欧美精品| 精品一区在线视频| 国产精品午夜在线观看| 国产人妻黑人一区二区三区| 青青草精品视频| 国产婷婷一区二区三区| 99精品视频精品精品视频| 精品日本一区二区三区| www.久久99| 国产精品精品久久久| aa国产成人| 九九九久久久久久| h视频网站在线观看| 亚洲国产天堂久久国产91| 91精品在线视频观看| 色综合视频一区二区三区高清| 久久久久亚洲av无码专区体验| 国产日韩综合av| 久久无码人妻精品一区二区三区 | 久久精品老司机| 国产成人av一区二区三区在线| 欧美日韩在线观看不卡| 中文精品视频| 六月婷婷激情综合| 成人在线免费观看网站| 精品久久久久久乱码天堂| 老司机亚洲精品一区二区| 国产精品免费观看在线| 综合久久2023| 97在线免费观看视频| 日韩伦理av| 欧美成人免费大片| 嫩草香蕉在线91一二三区| 国产亚洲aⅴaaaaaa毛片| 亚洲色图欧美视频| 日韩成人在线电影网| 亚洲精品国产精品乱码不卡| 日韩欧美一二三区| 国产男女裸体做爰爽爽| 欧美精品欧美精品系列| 在线观看国产小视频| 欧美日韩中文字幕精品| 亚洲国产无线乱码在线观看| 在线免费av一区| 最近中文字幕免费观看| 在线观看日韩精品| 色老头在线视频| 色视频成人在线观看免| 黑人精品无码一区二区三区AV| 欧美日韩国产精品一区| 亚洲另类欧美日韩| 欧美性猛交xxxx乱大交蜜桃| 国产农村妇女aaaaa视频| 欧美性xxxxx| 午夜精品一区二| 在线免费观看日本欧美| 一级黄色片网站| 91精品国产综合久久福利软件| 91麻豆成人精品国产| 欧美一级免费观看| 精品毛片在线观看| 精品日韩一区二区三区免费视频| 亚洲国产精品欧美久久 | 国产欧美日韩最新| 男人亚洲天堂| 99九九视频| 精品自拍偷拍| 青娱乐一区二区| 久久久久蜜桃| 99久久国产综合精品五月天喷水| 国产欧美一级| 91n.com在线观看| 狠狠色丁香婷综合久久| 国产精品19p| 91原创在线视频| ass极品国模人体欣赏| 亚洲欧美一区二区三区极速播放| 精品一区在线视频| 在线观看精品一区| 99热这里只有精品5| 亚洲精品久久久久久久久久久久| 国外av在线| 久久国产精品电影| 自拍偷拍欧美视频| 91精品在线观看视频| 免费看久久久| 亚洲精品一区二区三区蜜桃久| 五月精品视频| 欧美 日韩 国产 高清| 男人操女人的视频在线观看欧美| 亚洲精品久久久久久| 久久日韩精品一区二区五区| 久艹在线观看视频| 精品av在线播放| 国产精品玖玖玖| 日韩久久精品电影| www国产在线观看| 国产97在线视频| 亚洲精品在线国产| 欧洲精品亚洲精品| 黑丝一区二区三区| 91看片在线免费观看| 成人avav影音| 久久人妻无码aⅴ毛片a片app| 精品久久久在线观看| 91在线你懂的| 亚洲欧美一区二区三区久久| 欧美另类tv| 成人观看高清在线观看免费| 一区二区三区日本久久久| 欧美精品在欧美一区二区| 日韩二区三区四区| 精品无码国产一区二区三区51安| 国产精品成人免费精品自在线观看| 中文字幕在线字幕中文| 日韩亚洲欧美在线| 98在线视频| 国产suv精品一区二区| 成人资源在线播放| 特级毛片在线免费观看| 日韩国产欧美在线观看| av在线播放网址| 一区二区三区欧美| 国产一区二区三区成人| 亚洲人午夜精品| 久热在线观看视频| 国产精品区免费视频| 午夜性色一区二区三区免费视频| 亚洲欧美激情网| 久久一二三国产| 久久久久99精品成人片三人毛片| 精品日韩99亚洲| yellow91字幕网在线| 91手机视频在线观看| 国产精品99久久| 不卡的在线视频| 国产精品丝袜91| 中文字幕在线视频免费| 伊人精品在线观看| 成人欧美magnet| 久久亚裔精品欧美| 性久久久久久| 超碰97人人干| 色视频欧美一区二区三区| 久草福利在线视频| 日韩免费av一区二区| 亚洲毛片免费看| 国产成人av影视| 国产色爱av资源综合区| 欧美性受xxx黑人xyx性爽| 亚洲色图狂野欧美| 全球最大av网站久久| 亚洲欧美成人一区| 另类综合日韩欧美亚洲| 亚洲视频重口味| 欧美一区二区三区在线视频| av小次郎在线| 国产高清在线精品一区二区三区| 午夜国产精品视频| 成人做爰www看视频软件| 性久久久久久久久久久久| 视频二区在线观看| 日本a级片电影一区二区| 综合亚洲色图| 三级a在线观看| 亚洲人精品午夜| 丰满少妇一级片| 欧美在线亚洲在线| 精品一区av| 超碰中文字幕在线观看| 亚洲一区二区三区三| 丝袜+亚洲+另类+欧美+变态| 国产精品h片在线播放| 欧美国产美女| av免费观看不卡| 色琪琪一区二区三区亚洲区| 日本中文字幕在线观看| 999久久久| 国产日韩亚洲欧美精品| 国产精品无码无卡无需播放器| 欧美肥胖老妇做爰| 国产蜜臀一区二区打屁股调教| 久草一区二区| 久久国产精品免费| 五月天婷婷丁香| 中文字幕精品久久| 北条麻妃一区二区三区在线观看| 成人av一级片| 国产精品欧美精品| 亚洲精品字幕在线观看| 国产99久久精品一区二区永久免费| 四虎成人av| 国产精品久久久久久久无码| 欧美色男人天堂| 97天天综合网| 国产对白在线播放| 久久久无码精品亚洲日韩按摩| 国产女人高潮毛片| 欧美专区日韩视频| 91超碰成人| 成人在线手机视频| 亚洲第一男人av| 国产高清亚洲|