跳到主要內容
AI News HubLIVE
站內改寫2 分鐘閱讀

什麼是向量資料庫?

文章摘要

本文介紹向量資料庫的基本概念、與傳統資料庫的區別、核心元件(ID、維度、負載)、架構(集合、距離度量、儲存)、主要功能(索引、搜尋、更新、刪除),以及密集向量與稀疏向量、混合搜尋、量化、分散式部署、多租戶和資料安全等高階特性。

來源Qdrant Blog作者: [email protected] (Andrey Vasnetsov)
什麼是向量資料庫?
回報錯誤

更正管道尚未開通,可先複製下方文章資訊留存。

查看更正說明
直接讀正文

向量資料庫是一種專門設計用於高效處理高維向量資料的系統。在日常產生的海量資料中,大部分是非結構化的,例如照片、PDF檔案和音訊。傳統的關聯式資料庫難以理解這些資料的含義,而向量資料庫透過將資料轉換為數值向量來捕捉其語義和上下文關係,從而實現基於相似性的搜尋和分析。

傳統OLTP和OLAP資料庫擅長管理具有明確定義模式的結構化資料,如姓名、地址、電話號碼和購買歷史。然而,當資料難以分類時,比如PDF檔案的內容,情況就變得複雜。即使將PDF作為原始資料儲存並附加後設資料,資料庫仍然無法理解文件內部的內容、對其進行分類或搜尋。對於每天生成的大量文本、音訊和影像資料也同樣如此。向量資料庫透過將非結構化資料表示為向量,允許使用者理解資料的上下文或概念相似性,從而實現基於相似性的高階分析和檢索。

一個向量由三個關鍵元素定義:ID(唯一識別符號)、維度(資料的核心數值表示)和負載(包含後設資料以提供額外上下文)。ID類似於關聯式資料庫中的主鍵,確保向量的可查詢性;維度由嵌入模型(如深度學習演算法)生成,捕獲資料中的基本模式或關係;負載是描述性文本、標籤、類別或數值等結構化資訊,可用於過濾或排序搜尋結果。這些元素共同構成一個點,即向量資料庫中儲存和檢索的核心資料單元。

向量資料庫的架構包括集合、距離度量和儲存系統。集合是向量的邏輯分組,同一集合內的向量共享相同的維度和距離度量。常見的距離度量有歐氏距離(適用於空間資料)、餘弦相似度(適用於文本或文件,關注方向而非長度)和點積(常用於推薦系統)。Qdrant預設將向量儲存在RAM中以實現快速訪問,當資料集超出RAM容量時,可使用Memmap將向量儲存在磁碟上,同時透過記憶體對映實現高效訪問。此外,Qdrant提供多種程式語言的SDK,方便開發者使用。

向量資料庫的核心功能包括索引、搜尋、更新和刪除。索引使用HNSW(分層可導航小世界)演算法構建多層圖,實現快速近似最近鄰搜尋。Qdrant還支援負載索引,允許基於後設資料的快速過濾。搜尋採用近似最近鄰(ANN)搜尋,將查詢轉換為向量,在圖中快速定位最相似的向量。更新支援即時和批次操作,而刪除則透過指定ID高效移除過期或重複資料。

向量分為密集向量和稀疏向量。密集向量的每個元素都貢獻語義資訊,適合上下文相關搜尋;稀疏向量大部分元素為零,僅標記出現的關鍵詞,適合精確匹配。混合搜尋結合兩者,採用倒數排名融合(RRF)等技術,在單一查詢中同時獲得語義相關性和關鍵詞精確性。

量化技術透過將向量轉換為低精度表示(如二進位制量化)來大幅提升搜尋速度和減少記憶體佔用,最高可提速40倍,同時僅損失少量精度。Qdrant支援二進位制量化、標量量化和乘積量化等方法。

在分散式部署中,Qdrant透過分片將資料分佈到多個節點,並透過複製集保證高可用性。分片可以是自動的(使用一致性雜湊)或使用者定義的(為多租戶等用例提供更精細的控制)。複製因子控制副本數量,Raft共識確保節點間資料一致性。多租戶功能允許在同一叢集中隔離不同使用者的資料,透過標籤(如group_id)實現物理隔離,同時遵守資料隱私和當地法規。

資料安全方面,Qdrant支援API金鑰認證和基於JWT的角色訪問控制(RBAC),防止嵌入反轉攻擊。本機例項預設不安全,生產環境中應配置安全措施。

向量資料庫的應用場景廣泛,包括相似性搜尋、異常檢測、推薦系統、檢索增強生成(RAG)、多模態搜尋、語音識別和知識圖譜增強。透過實踐,您可以構建語義搜尋引擎或混合搜尋服務,充分利用向量的潛力。

展開要點與分析

文章情報

工程師進階

要點

  • 向量資料庫將非結構化資料表示為高維向量,實現基於相似性的檢索。
  • 核心元件包括唯一ID、數值維度和包含後設資料的負載。
  • 支援密集向量(語義搜尋)和稀疏向量(關鍵詞匹配),可結合進行混合搜尋。
  • 提供量化、分片、複製和多租戶等功能,支援大規模高效部署。

要點與分析由自動化流程生成,可能有誤,請結合原始來源核實。