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

基于彈性云的向量型數據庫Milvus的演進歷程

譯文 精選
數據庫 其他數據庫
本文要探討的是全新的Milvus數據庫集群架構設計背后的構思過程。

譯者 | 陳林

審校 | 孫淑娟 梁策

Milvus向量型數據庫的目標

當我們第一次出現Milvus向量型數據庫的想法時,我們希望構建的是一個數據基礎設施,從而加速人工智能在人們組織架構中的使用。

為了完成這一使命,我們為Milvus項目設定了兩個關鍵目標。

易用性

人工智能/機器學習是一個新興領域,新技術不斷涌現。大多數開發人員對于高速發展的AI技術和工具并不熟悉。開發人員花費了大量的精力來尋找、訓練和調整模型,基本沒有額外的精力來處理模型生成的大量嵌入向量,更不用說處理海量數據一直都是一項相當有挑戰的任務。

因此,我們給“易用性”定了相當高的優先級,因為它可以顯著地降低開發成本。

低運行成本

  • AI投入實際生產應用的最大阻礙之一就是合理衡量投資回報比。有了更低的運行成本,我們將AI應用程序投入生產中將有更大的可能性,這將有利于提高邊際的潛在收益。

Milvus 2.0的設計原則

我們在 Milvus 1.0 中朝著這些目標邁出了第一步,但這還遠遠不夠,尤其是在可擴展性和可用性方面。然后我們開始研發Milvus 2.0來完善這些點。我們為2.0新版本制定的原則包括:

  • 以高可擴展性和可用性為目標
  • 基于成熟的云基礎架構和實踐
  • 云端的最小性能妥協性

也就是說,我們想讓Milvus數據庫集群成為云原生。

Milvus數據庫集群的演進

向量數據庫是一種新型數據庫,因為它處理的向量數據是一種新的數據類型。它面臨與其他數據庫相同的挑戰,但也具有自身的一些場景和需求。在本文剩下的部分,我將重點介紹我們從現有的數據庫集群實現中能學到什么,以及我們在設計新的Milvus Group架構時的思考旅程。

如果你對Milvus Group組件的實現細節感興趣,請繼續關注 Milvus文檔。我們將在Milvus GitHub倉庫、Milvus官網和Milvus博客上持續發布技術文章。

理想的數據庫集群

讓我們首先羅列出一個理想的數據庫集群應該具備的關鍵能力。

  • 支持并發且無單點故障:連接到不同組成員的用戶可以同時對同一條數據進行讀/寫訪問。
  • 一致性:不同的組成員看到的數據應該是相同的。
  • 可擴展性:我們可以隨時隨地添加或刪除組成員。

說實在的,現有數據庫是無法同時提供和保障這些能力的。在現代數據庫集群的實現中,人們不得不對其中的部分功能妥協。我們并不期望一個完美的數據庫集群,只要能夠適用和滿足用戶的業務場景就行了。然而,共享 “一切” 的集群一度非常接近理想的數據庫集群。如果我們想學習一些經驗,我們應該以它為基礎開始。

數據庫集群的主要考慮因素

與其他數據庫實現相比,shared-everything的數據庫集群具有更久遠的歷史。DB2數據共享組和Oracle RAC是典型的shared-everything集群。許多人認為shared-everything意味著共享磁盤,其實遠不止于此。

shared-everything的數據庫集群在組中只有一種數據庫成員。用戶可以連接到這些對等成員中的任何一個實例來訪問任何數據。完成這項操作需要共享的 “一切” 是什么?

組內事件序列

首先,組內事件序列對于解決不同組成員由于并發訪問引起的潛在沖突至關重要。我們通常使用數據庫日志記錄序號來表示事件的順序。同時,日志記錄序號一般是由時間戳生成的。

因此,對組內事件順序的要求等價于對全局定時器的需要。如果我們可以為組配備一個原子鐘,那就太棒了。然而,Milvus是一個開源軟件項目,這意味著我們應該依賴常用的資源。迄今為止,原子鐘仍然是大公司的首選。

我們在Milvus 2.0數據庫集群中實現了時間同步組件。您可以在附錄中找到鏈接。

全局鎖

數據庫有一個鎖定機制來解決并發訪問沖突,無論是樂觀鎖還是悲觀鎖。同樣,我們需要使用全局鎖定來解決不同組成員之間同時訪問的沖突。

全局鎖定意味著不同的組成員必須相互交談以協商鎖定請求。 影響這個全局鎖定協商過程的效率主要有幾個重要的因素:

  • 系統間連接的速度
  • 需要參與協商過程的組成員數量
  • 組內發生沖突的頻率

通常的組大小不超過100。例如,DB2 DSG為32;Oracle RAC為100。這些組成員將被放置在一個通過光纖連接的服務器機房中,以最大限度地減少傳輸延遲。這就是為什么它有時被稱為集中式集群。 由于組大小的限制,人們會選擇高端服務器(大型機或小型機,在 CPU、內存、I/O 通道等方面具有更多容量)來組成共享一切集群。

這種硬件假設在現代云環境中發生了巨大變化。現如今,云數據中心都是由高密度服務器機房組成,集群配置了(數千臺) TCP/IP 網絡連通的商用 X86 服務器。如果我們依靠這些 X86 服務器來構建數據庫集群,那么組大小應該會增加到數百(甚至數千)臺機器。而在一些業務場景中,我們希望這數百臺X86機器分布在不同的區域。因此實現全局鎖定的價值和意義就不大了,因為全局鎖定性能不夠好。

在Milvus 2.0中,我們不會實現全局鎖定功能。一方面,向量數據不會有更新(用戶傾向于刪除后插入而不是更新)。所以我們不需要擔心基于分片編排的Milvus組內的同一條數據的由于多次寫入造成沖突。同時,我們可以使用MVCC(多版本并發控制,一種避免鎖的并發控制方法)來解決讀寫沖突。

另一方面,向量數據處理比結構化數據處理消耗更多的內存占用。 人們一直在尋找具有高擴展性的向量數據庫。

共享內存數據緩存

我們可以簡單地將數據庫引擎分為兩部分,即存儲引擎和計算引擎。存儲引擎負責兩項關鍵任務:

  • 將數據寫入持久化存儲永久存儲。
  • 將數據從持久化存儲加載到內存數據緩存(AKA緩沖池);這是計算引擎訪問數據的唯一地方。

在數據庫集群場景中,如果成員A更新了成員B中緩存的數據怎么辦?成員B如何知道其內存數據已過期?對于經典的 shared-everything集群,有一種緩沖區交叉失效機制來解決這個問題。 如果我們在組成員之間維持強一致性,則緩沖區交叉失效機制將類似于全局鎖。如上所述,它在現有的云環境中并不實用。所以我們決定將Milvus彈性云分組的一致性級別降低為最終一致性的方式。這樣,Milvus 2.0中的緩沖區交叉失效機制就可以是一個異步過程。

共享存儲

共享存儲可能是人們在討論數據庫集群時會想到的第一件事。

近年來,隨著云存儲的發展,存儲可選項也發生了顯著的變化。 存儲連接網絡 (SAN) 一直是shared-everything的存儲基礎。但是在云環境中并沒有SAN,數據庫必須使用本地磁盤連接到云虛擬機。使用本地磁盤對于跨組成員的數據一致性帶來了新的挑戰,而且我們還不得不考慮組成員的高可用。

Snowflake數據倉庫為打算使用云共享存儲(S3存儲)的云數據庫樹立了一個很好的榜樣,它也啟發了Milvus 2.0。如上所述,我們打算基于成熟的云基礎設施實現Milvus 2.0,但在我們能夠利用云共享存儲之前,我們必須考慮以下問題。

首先,S3存儲便宜且可靠,但它不是為像數據庫那樣的實時讀寫的場景而設計的。我們需要創建數據組件(我們在Milvus 2.0中稱為數據節點)來橋接本地內存/磁盤和S3存儲。市面上有一些示例可以參考,如Alluxio、JuiceFS等。無法直接集成這些項目的原因是我們考慮到不同的數據粒度。Alluxio和JuiceFS是為數據集或POSIX文件設計的,而我們專注于數據記錄(向量)級別。

當向量數據在S3存儲的問題被解決時,元數據的存儲很簡單:將它們存儲在etcd。那么日志數據呢?在傳統的實現中,日志存儲也是基于SAN。一個數據庫組成員的日志文件在數據庫集群內共享,用于故障恢復。在進入云環境之前這不是問題。

在Spanner論文中,Google展示了他們是如何使用Paxos共識算法實現全局分布式數據庫(組)的。你需要基于狀態機復制組實現數據庫集群,重做日志(redo log)通常就是用于整個組復制的那個“狀態”。

共識算法的重做日志(redo log)復制是一種強大的工具,在某些業務場景中具有相當大的優勢。但是,對于Milvus向量數據庫,我們沒有找到足夠的措施創建一個完整的狀態機復制組。我們決定使用云消息隊列/平臺(Apache Pulsar、Apache Kafka等)用于日志存儲,作為共享云存儲的替代品。通過將日志存儲委托給消息傳遞平臺,我們獲得了以下好處:

  • 更加的事件驅動化,整個處理過程可以是異步的,從而提高了可擴展性。
  • 組件耦合更松散,使得在線滾動升級和發布更容易,可用性和可操作性顯著提高。

我們將在后面的部分重新討論這個話題。

到目前為止,我們已經總結了設計一款數據庫集群要考慮的關鍵因素。在開始討論Milvus 2.0架構之前,讓我先說明一下我們是如何在Milvus中管理向量的。

數據管理和性能可預測性

Milvus將向量存儲在集合中。“集合”是一個邏輯概念,相當于SQL數據庫中的“表”。一個“集合”可以有多個物理文件來保存向量,一個物理文件是一個“段”。“段”是一個物理概念,類似于SQL數據庫中的表空間文件。當數據量較小時,我們可以將所有內容保存在單個段/物理文件中。但是,現如今不斷面臨著海量數據的存儲,當有多個段/物理文件時,應該如何將數據分散到不同的數據分區中?

盡管數據先于索引到來,但我們必須以更適合索引算法的方式存儲數據,以便在大多數情況下高效地訪問數據。SQL數據庫中常用的策略是以分區鍵值的范圍進行分區。通常情況下,就是創建一個聚集索引來強制分區鍵。這對于SQL數據庫來說是一種不錯的方法,一方面數據存儲良好,另一方面針對 I/O(預取)進行了優化,但仍然存在以下缺陷:

  • 數據傾斜:某些分區可能比其他分區存儲了更多的數據,實際應用中數據的分布并不像數值范圍那么簡單。
  • 訪問熱點:更多工作負載可能會流向其中幾個數據分區。

當越來越多的工作負載流向數據傾斜度高的分區時,我們需要對各個分區的數據進行重新平衡。

向量的聚集索引

我們還可以為向量創建聚集索引(倒排列表索引),這與SQL 數據庫的索引不同。給SQL數據庫建立索引后,通過索引訪問數據非常高效,計算量少,I/O操作少。然而對于向量數據來說,即使有索引,計算和I/O操作也不會因此減少。因此,在向量數據庫集群中,數據傾斜和熱點數據集中的影響更為明顯。此外,由于數據量和計算復雜性因素,在不同分段對向量進行重新平衡的成本非常高。

在Milvus中,我們采用分區自動增長的策略。當我們將數據存入向量集合時,Milvus會將新向量追加到集合中的最新段。一旦這個段的大小達到某個閾值(閾值可配置),Milvus將關閉該段并為關閉的段建立索引。同時,它還將創建一個新段來存儲新的數據。這種簡單的策略對于向量處理來說平衡性更友好。

向量查詢指的是在向量集合中查詢與目標條件匹配度最相近的結果。它是一個典型的Map Reduce過程。例如,如果想從包含10個分段的向量集合中搜索前20個相似的結果,我們可以搜索每個段的前20個,然后將20 * 10個查詢合并,篩選出其中20個結果返回。 由于每個段具有相同數量的向量和相似的索引,因此每個段的處理時間幾乎相同。這樣的好處是帶來了性能可預測性的優勢,它在規劃數據庫集群的規模時至關重要。

Milvus 2.0的新范式

在Milvus 1.0中,我們實現了與大多數SQL數據庫一樣的讀寫分離分片組。這種實現對Milvus數據庫集群來說是種不錯的嘗試,但帶來的問題也是顯而易見的。

Milvus 1.0:分片集群

在Milvus 1.0中,寫節點必須全程維護最新的段,其中就包括在未索引的段中追加向量、搜索向量,以及建立索引等操作。由于每個集合只有一個寫節點,如果數據在源源不斷地寫入系統,寫入節點將會成為瓶頸。寫節點和其他讀節點之間的數據共享性能也是一個問題。此外,我們必須依賴 NFS(不穩定)或者商用云存儲(太貴)來作為共享數據存儲。

以上問題在Milvus 1.0架構中很難解決。 因此,我們在Milvus 2.0設計中引入了新的范式。

Milvus 2.0:彈性云向量數據庫

Actor模型

現在有兩種常用的并發計算的模型編程。

  • 共享內存:對應的是并發控制(鎖定)和同步處理。
  • Actor模型(AKA 消息傳遞):對應的是消息驅動和異步處理。

我們也可以在分布式數據庫集群中應用這兩種模型。

近年來,基于Redo-log復制的算法一直是最被高估的數據庫技術,它存在兩個關鍵問題。

  • Redo-log復制更好的假設是脆弱的。
  • 供應商誤導了人們對共識算法能力的期望。

假設我們有兩個數據庫節點,一個是主節點,另一個是從節點。 從一開始,兩個節點的數據是完全一致的。我們在主節點上有一些修改操作(新增/更新/刪除的SQL語句),我們希望保持從節點同步更新。我們應該做什么?最簡單的方法是在從節點上重放更新操作,但這不是最高效的手段。

考慮新增/更新/刪除語句的運行成本:我們可以將其分為執行準備和實際執行部分。執行準備部分包括SQL解析器、SQL優化器等工作,不管影響到了多少條數據記錄,成本都是固定的。實際執行部分的成本取決于有多少數據記錄會受到影響,它的成本是浮動的。 redo-log復制背后的想法是為了節約從節點上的固定成本,即只在從節點上重放redo-log即可。

成本節省率和redo-log記錄數成反比。如果一次更新操作只影響一條記錄,redo-log復制其實有很大的提升空間。如果是10000條記錄呢?當然,我們還應該關心網絡可靠性。哪個更可靠,發送一個操作還是10000條redo-log記錄?一百萬條記錄又怎么樣? redo-log復制最適合的場景是支付系統、元數據系統等。在這些場景中,每個數據庫新增/更新/刪除操作只影響少量的記錄(1或2),它不適用于I/O密集型類的場景,例如任務批處理。

部分供應商總是聲稱共識算法可以為數據庫集群提供強一致性。雖然redo-log記錄在不同節點上是一致的,但這并等價于數據視圖也是一致的。沒有將redo-log記錄合并到數據庫表之前,即使使用這種同步處理,我們也只能在數據上保證最終一致性。

我們應該在合適的場景下使用redo-log復制一致性算法。 Milvus 2.0中使用的元數據系統(etcd)和消息中間件平臺(例如 Apache Pulsar)已經實現了一致性算法。但正如我之前所說的,“對于Milvus向量數據庫,目前還沒有辦法讓它成為一個完整的狀態機復制組。

在Milvus 2.0中,我們使用Actor模型來編排工作節點。工作節點是單獨隔離的,它們只與消息中間件平臺通信,獲取命令并發送結果。

Actor模型是異步的,它適用于對擴展性和可用性要求高的場景。由于工作節點之間是互相隔離的,加入或移除部分工作節點對其他工作節點沒有影響。

可用性和持久性的分離

在 Milvus 2.0 中,我們實現的是操作重放而不是日志重放。因為在向量數據庫中,操作重放和日志重放沒有太大區別。我們沒有更新功能,也沒有查詢插入功能,并且使用Actor模型進行操作回放要簡單得多。

多個工作節點可能會根據各自的職責從消息中間件平臺執行相同的操作。之前提到我們決定使用S3云存儲作為Milvus數據庫集群的共享存儲層。S3存儲非常可靠,那么不同的工作節點是否需要將相同的數據寫入共享存儲呢?

因此,我們把工作節點分類為以下三個角色:

  • 查詢節點:它維護一個內存數據視圖。查詢節點的工作包括提供向量搜索和對內存中數據的更新。但它不需要向S3存儲寫入任何內容。它是組中對內存最敏感的節點。
  • 數據節點:負責將新數據寫入S3存儲。數據節點不需要維護內存中的數據視圖,因此數據節點的硬件配置與查詢節點有很大的不同。
  • 索引節點:當段的大小達到閾值時,索引節點為數據節點已關閉的段建立索引。這是該組中對CPU密集性要求最高的節點。

這三種類型的節點分擔了不同類型的工作負載。它們可以獨立擴展。這里的可用性和持久性分離是從微軟Socrates云數據庫中學習衍生而來的。

總結和展望

本文回顧了Milvus向量數據庫2.0版本的幾個設計決策。讓我們在這里快速總結一下這些要點。

  • Milvus集群2.0版本選擇了最終一致性。
  • 我們盡可能將成熟的云組件集成到Milvus 2.0中,并控制了因適用Milvus 2.0引入到用戶生產環境中的新組件。
  • Milvus 2.0遵循Actor模型,對可用性和持久性實現了分離,在云環境中易于擴展。

到目前為止,Milvus 2.0彈性云數據庫的骨架已經定型,目前還有許多來自Milvus社區的需求需要滿足。如果您有相同的使命(“構建更多開源基礎設施軟件,加速AI轉型”),歡迎加入Milvus社區。

Milvus是LF AI & Data基金會的孵化的項目。你無需為Milvus 簽署任何CLA!

附錄

Milvus設計文檔

??https://github.com/milvus-io/milvus/tree/master/docs/design_docs??

Raft的C++實現

如果你對共識算法感興趣,建議你查看eBay的開源項目 Gringofts。它是Raft共識算法(Paxos系列的一個變體)的C++實現。它是我的朋友Jacky和Elvis(我在摩根士丹利的前同事)為eBay 在線支付系統構建的,這也正是它最適合的場景之一。

譯者介紹

陳林,51CTO社區編輯,某零售銀行龍頭DevOps持續集成平臺技術負責人,主導核心業務方案設計落地,推動產品架構持續演進。負責安全工具接入、掃描中臺建設、構建加速、SCM性能優化、鏡像治理等模塊。參與微服務治理、多活構建調度架構、異構存儲集群集成、緩存和分布式限流等架構優化。熱愛開源技術和寫文章,追求技術廣度和領域深度。

原文標題:Evolution of Milvus Cloud-Scalable Vector Database,作者:Jun Gu


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

2023-01-05 08:00:00

2024-12-13 08:32:28

向量數據庫云原生LangChain

2024-04-25 16:33:41

2025-07-17 02:00:00

解碼向量檢索云原生數據庫

2010-06-07 10:00:45

MySQL數據庫

2010-03-31 13:47:22

Oralce數據庫

2020-03-16 08:16:16

數據庫數據安全

2023-08-25 13:32:00

JavaScript虛擬DOM

2025-04-27 00:00:00

Milvus向量數據庫AI

2018-12-13 11:00:44

阿里數據庫彈性

2025-05-08 02:00:00

2015-03-20 16:17:24

云平臺共享型數據庫京東云擎

2009-12-22 09:40:53

MySQL數據庫

2023-11-27 00:58:00

數據庫AI

2009-11-26 17:21:38

智能彈性架構技術

2024-07-17 11:40:58

2023-10-26 00:37:40

滴滴彈性云公有云

2023-10-19 09:00:00

數據庫GitOps
點贊
收藏

51CTO技術棧公眾號

黑人狂躁日本娇小| 91制片厂毛片| 欧美孕妇孕交| 蜜臀91精品一区二区三区| 北条麻妃在线一区二区| 95视频在线观看| 日韩电影免费观看高清完整版| 国产精品久久久久久户外露出| 91手机视频在线观看| 日本一级淫片免费放| 精品一区二区三| 欧美一区二区三区日韩视频| 亚洲爆乳无码专区| 欧美高清另类hdvideosexjaⅴ| 国产亚洲人成网站| 亚洲综合自拍一区| 国产99久久久久久免费看| 激情av一区| 日韩一区二区三区xxxx| 在线免费播放av| **日韩最新| 在线免费观看一区| 日本网站免费在线观看| 中文字幕中文字幕在线中高清免费版| 久久久午夜精品理论片中文字幕| 成人av免费电影| 中文在线字幕av| 欧美亚洲三级| 久久人人看视频| 正在播放国产对白害羞| 美女毛片一区二区三区四区最新中文字幕亚洲| 欧美一区二区视频免费观看| 孩娇小videos精品| 欧美激情喷水| 欧美日韩中文字幕在线| 国产美女在线一区| 乱插在线www| 亚洲乱码国产乱码精品精可以看| 亚洲精品第一区二区三区| 青青草视频在线观看| 丁香天五香天堂综合| 91在线看www| 91theporn国产在线观看| 日本中文一区二区三区| 欧美在线视频观看| www毛片com| 久久精品官网| 国产精品69久久| 91精品国产乱码久久久张津瑜| 欧美日韩亚洲一区三区| 久精品免费视频| 免费在线观看日韩| 欧美日韩综合| 久久久久国产精品一区| 久久国产精品波多野结衣| 欧美国产高潮xxxx1819| 精品自拍视频在线观看| 欧美成人手机视频| 国内精品久久久久久久影视麻豆 | 91精品欧美一区二区三区综合在| 在线观看免费成人av| 91大神在线观看线路一区| 欧美中文字幕一区二区三区| 四季av一区二区| 久久婷婷五月综合色丁香| 欧美日韩三级在线| 欧美成人手机在线视频| 国产乱码精品一区二区三区亚洲人| 91精品在线麻豆| 久久久久久久久久久影视| 91成人噜噜噜在线播放| 亚洲国产古装精品网站| 受虐m奴xxx在线观看| 欧美亚洲精品在线| 久久视频免费观看| 久久久久99精品| 国产精品日韩| 国产精品人人做人人爽| 99国产在线播放| 成人av网站在线| 欧美中文娱乐网| 国产超级va在线视频| 一区二区三区免费网站| 啊啊啊一区二区| jizz久久久久久| 欧美大片日本大片免费观看| 小毛片在线观看| 精品久久91| 欧美日韩福利视频| 激情五月婷婷网| 狠狠色综合日日| 国产一区二区在线网站| 成人在线观看免费| 亚洲一区二三区| 99re在线视频免费观看| 欧美第一在线视频| 亚洲欧美中文另类| 日韩成人毛片视频| 免费久久99精品国产自在现线| 国产在线拍揄自揄视频不卡99| 国产自产一区二区| 中文幕一区二区三区久久蜜桃| 青青视频免费在线观看| 欧美色网一区| 欧美va亚洲va在线观看蝴蝶网| 久久久久亚洲av无码专区桃色| 亚欧美无遮挡hd高清在线视频| 7777精品久久久久久| 一区二区三区午夜| 国产亚洲欧美日韩日本| 中文字幕日韩精品无码内射| 影音成人av| 亚洲国产精品小视频| 久久久久久久久久97| 另类av一区二区| 国产精品有限公司| 成人在线观看免费网站| 91久久人澡人人添人人爽欧美| 亚洲黄色小说在线观看| 97精品国产福利一区二区三区| 欧美一级淫片播放口| 国产免费黄色录像| 国产精品视频观看| 日本三区在线观看| 欧美色资源站| 久久久久久欧美| 国产xxxx孕妇| 综合分类小说区另类春色亚洲小说欧美 | 综合天天久久| 国产日韩在线免费| 国产三级在线看| 狠狠干狠狠久久| 91传媒理伦片在线观看| 中文字幕乱码亚洲无线精品一区 | 九九精品久久久| 精品一区二区三| 国产精品高潮视频| 欧美日本网站| 色一情一伦一子一伦一区| 日本一卡二卡在线| 精品成人国产| 国产精品精品软件视频| 尤物yw193can在线观看| 欧美一区二区私人影院日本| 一起操在线播放| 日本成人超碰在线观看| 日韩高清av电影| 色香欲www7777综合网| 亚洲人精品午夜在线观看| 久久久精品福利| 国产视频一区二区在线| 999精品视频在线| 久久人人99| 成人在线播放av| 91网址在线观看| 欧美r级电影在线观看| 久久精品视频9| 99在线精品观看| 自慰无码一区二区三区| 午夜精品福利影院| 日本久久久久久久久| 九九在线视频| 欧美日韩一区二区三区高清 | 国产免费av在线| 欧美日韩在线播放| 三级影片在线看| 成人精品免费视频| 无码人妻丰满熟妇区毛片| 极品美女一区二区三区| 国产精品永久免费观看| 国产一二区在线观看| 日韩一区二区三区免费看| 日本一区二区欧美| 国产亚洲一区二区三区在线观看| 天天碰免费视频| 91精品动漫在线观看| 国产美女在线精品免费观看| 91av亚洲| 久久手机免费视频| 香蕉av一区二区三区| 欧洲av一区二区嗯嗯嗯啊| 波多野结衣亚洲一区二区| eeuss国产一区二区三区| 国产天堂在线播放| 欧美日韩国内| 品久久久久久久久久96高清| 亚洲福利影视| 91wwwcom在线观看| 日本中文字幕伦在线观看| 精品少妇一区二区三区在线播放 | 香蕉成人av| 久久电影一区二区| 欧美男男同志| 精品少妇一区二区三区| 中文字幕永久在线| 亚洲观看高清完整版在线观看| 影音先锋制服丝袜| 成人精品电影在线观看| 最近中文字幕一区二区| 在线不卡亚洲| 一本色道久久99精品综合| 国产一区二区在线视频你懂的| 国产在线98福利播放视频| a√中文在线观看| 久久av中文字幕| 国内av一区二区三区| 亚洲国产福利在线| 国产精品视频一二区| 在线国产亚洲欧美| 五月天综合在线| 综合久久久久综合| 亚洲精品一区二区三区影院忠贞| 成人精品高清在线| 伦伦影院午夜理论片| 久久精品理论片| 凹凸日日摸日日碰夜夜爽1| 亚洲国产高清一区二区三区| 中文字幕在线乱| 不卡一区综合视频| 欧美日韩天天操| 日本成人7777| 国产精品久久7| 日本精品视频| 91亚洲精品久久久| 人人精品久久| 国产精品视频免费在线| 亚洲精品粉嫩美女一区| 777精品视频| bbw在线视频| 久久久久久网址| 毛片大全在线观看| 欧美精品video| 日本在线视频www鲁啊鲁| 久久精品小视频| 麻豆传媒视频在线观看| 日韩中文在线观看| 日本在线观看www| 最新日韩中文字幕| 黄网站在线播放| 久久精品国产一区| 国产最新在线| 欧美日韩第一页| av影院在线免费观看| 国模视频一区二区三区| 国产精品yjizz视频网| 久久久欧美精品| h片在线观看视频免费免费| 欧美—级a级欧美特级ar全黄| bl在线肉h视频大尺度| 97成人精品区在线播放| 中文字幕影音在线| 国产精品91视频| 欧美xxxx性| 亚洲自拍偷拍区| 粉嫩一区二区三区四区公司1| 国产精品日本一区二区 | 亚洲欧洲xxxx| 91精彩在线视频| 久久视频在线直播| 草莓视频丝瓜在线观看丝瓜18| 91chinesevideo永久地址| 最近高清中文在线字幕在线观看1| 欧美一级淫片丝袜脚交| 97人人做人人爽香蕉精品| 成人精品在线视频| 亚洲一区二区三区四区电影 | 成年女人免费视频| 26uuu色噜噜精品一区二区| 午夜在线观看一区| 17c精品麻豆一区二区免费| 亚洲国产精品久| 天天做天天摸天天爽国产一区| 亚洲大尺度在线观看| 宅男在线国产精品| 天天色综合久久| 在线看欧美日韩| 丁香花在线影院| 国产精品美女呻吟| 国产精品videossex| 欧美一级二级三级九九九| 一区二区三区午夜视频| 黄色www网站| 久久69国产一区二区蜜臀| 亚洲一二三四五| 国产精品少妇自拍| 国产无码精品一区二区| 欧美日韩免费在线视频| 亚洲国产精品久久久久久久| 国产一区二区av| 国产白丝在线观看| 国产免费一区二区三区在线能观看 | 免播放器亚洲| 波多野结衣电影免费观看| ww亚洲ww在线观看国产| www色aa色aawww| 色综合久久九月婷婷色综合| 国产不卡av在线播放| 亚洲欧美国产高清va在线播| 成人免费视屏| 国产精品第2页| 欧美深夜视频| 无码人妻精品一区二区三区99v| 久久高清免费观看| 超碰91在线播放| 国产欧美一区二区精品性色超碰| 久久这里只有精品国产| 欧美视频日韩视频| 偷拍自拍在线| 欧美极品少妇xxxxⅹ裸体艺术 | 久久黄色影院| 污污内射在线观看一区二区少妇| 亚洲欧美日韩在线不卡| 欧美一区二区三区久久久| 精品1区2区在线观看| 蜜桃视频网站在线观看| 国产精品福利在线| 性欧美xxxx免费岛国不卡电影| 97在线免费视频观看| 久久精品国产在热久久| caopeng视频| 精品国产91久久久| 粉嫩小泬无遮挡久久久久久| 久久精品在线视频| 久久人体av| 亚洲自拍偷拍二区| 免费成人你懂的| 精品人妻互换一区二区三区| 粉嫩av一区二区三区免费野| 风流老熟女一区二区三区| 欧美成人免费va影院高清| 丁香久久综合| 亚洲视频导航| 麻豆视频一区二区| 久久久精品成人| 欧美偷拍一区二区| 成人亚洲综合天堂| 国产suv精品一区二区三区88区| 老司机在线精品视频| 91九色丨porny丨国产jk| 不卡视频在线观看| 亚洲视频免费播放| 日韩不卡中文字幕| 中文在线资源| 欧洲一区二区在线| 美女视频网站黄色亚洲| 亚洲AV成人无码网站天堂久久| 欧美视频一区二区三区四区| 婷婷五月在线视频| 国产在线视频不卡| 欧美日韩国产亚洲一区| 国产伦精品一区二区三区精品| 亚洲成av人综合在线观看| 天堂网在线观看视频| 91精品91久久久久久| 国产精品密蕾丝视频下载| 看欧美ab黄色大片视频免费| 一区二区中文视频| av中文字幕免费在线观看| 欧美精品久久久久a| 欧美调教网站| 美女网站免费观看视频| 国产精品毛片无遮挡高清| 91精东传媒理伦片在线观看| 欧美成人三级视频网站| 久久久久观看| 欧美丰满熟妇xxxxx| 中文字幕亚洲在| 亚洲精品成人电影| 欧美怡春院一区二区三区| 久久精品av| 成年人看片网站| 欧美日韩中文字幕综合视频| 成年人在线看| 亚洲自拍小视频免费观看| 亚洲激精日韩激精欧美精品| 波多野吉衣中文字幕| 欧美日韩一区在线| 好看的中文字幕在线播放| 欧美日韩精品久久久免费观看| 美女久久久精品| 日韩欧美中文字幕视频| 亚洲美女av在线播放| 国内精品视频| 欧美一区二区三区爽大粗免费| 中文字幕av一区二区三区免费看 | 成人免费黄色在线| 91视频在线视频| 久久99亚洲热视| 欧美日韩在线网站| 麻豆短视频在线观看| 欧洲一区二区三区免费视频| 天堂av最新在线| 神马影院一区二区| 成人午夜免费视频| 亚洲综合精品国产一区二区三区 | 在线观看日批视频| 午夜精品在线视频| 久久国产成人午夜av影院宅| 国产精品成人99一区无码| 欧美三级韩国三级日本一级|