UDB PostgreSQL新增支持pgvector向量數(shù)據(jù)庫插件

來源:UCloud云計(jì)算
作者:UCloud云計(jì)算
時(shí)間:2023-09-15
2745
目前,AIGC領(lǐng)域正處于蓬勃發(fā)展的階段,同時(shí)大規(guī)模數(shù)據(jù)集的使用和計(jì)算資源用量提升,也為AIGC業(yè)務(wù)架構(gòu)底層的基礎(chǔ)設(shè)施提出了更高的要求。為了更好地支持AIGC業(yè)務(wù)的發(fā)展,UCloud在數(shù)據(jù)中心建設(shè)、網(wǎng)絡(luò)、文件存儲(chǔ)、主機(jī)鏡像市場(chǎng)等多個(gè)方面都提供了相關(guān)產(chǎn)品和解決方案。

目前,AIGC領(lǐng)域正處于蓬勃發(fā)展的階段,同時(shí)大規(guī)模數(shù)據(jù)集的使用和計(jì)算資源用量提升,也為AIGC業(yè)務(wù)架構(gòu)底層的基礎(chǔ)設(shè)施提出了更高的要求。為了更好地支持AIGC業(yè)務(wù)的發(fā)展,UCloud在數(shù)據(jù)中心建設(shè)、網(wǎng)絡(luò)、文件存儲(chǔ)、主機(jī)鏡像市場(chǎng)等多個(gè)方面都提供了相關(guān)產(chǎn)品和解決方案。

數(shù)據(jù)庫方面,在云主機(jī)鏡像市場(chǎng)已支持Milvus向量數(shù)據(jù)庫的基礎(chǔ)上,UCloud云數(shù)據(jù)庫UDB中的PostgreSQL(以下簡(jiǎn)稱UPgSQL)還新增支持了pgvector向量數(shù)據(jù)庫插件,持續(xù)在AIGC業(yè)務(wù)架構(gòu)中所涉及的向量數(shù)據(jù)庫環(huán)節(jié)完善產(chǎn)品支持。

pgvector的特點(diǎn)及使用場(chǎng)景

pgvector是PostgreSQL數(shù)據(jù)庫的擴(kuò)展插件,其設(shè)計(jì)目的是讓用戶能夠在現(xiàn)有的PostgreSQL數(shù)據(jù)庫上實(shí)現(xiàn)向量搜索和計(jì)算,而無需引入額外的向量數(shù)據(jù)庫,主要特點(diǎn)如下:

和PostgreSQL數(shù)據(jù)庫深度集成

pgvector作為PostgreSQL數(shù)據(jù)庫的一個(gè)擴(kuò)展插件,它允許在PostgreSQL數(shù)據(jù)庫中存儲(chǔ)和查詢向量數(shù)據(jù),無需遷移數(shù)據(jù)或更改應(yīng)用程序架構(gòu),從而降低了集成的復(fù)雜性。如果業(yè)務(wù)架構(gòu)已經(jīng)在使用PostgreSQL,而且希望快速地添加向量數(shù)據(jù)支持,pgvector是一個(gè)便捷的選擇。

SQL簡(jiǎn)單易用

pgvector使用標(biāo)準(zhǔn)SQL查詢語言,適合于熟悉SQL查詢的用戶,而Milvus等專業(yè)向量數(shù)據(jù)庫則是提供了自己的查詢語言和API。

數(shù)據(jù)模型可以靈活組合

pgvector允許用戶將向量數(shù)據(jù)存儲(chǔ)在表中的特定列中,同時(shí)允許將向量數(shù)據(jù)與其他屬性數(shù)據(jù)混合在一起。這種靈活性使得用戶可以在單一查詢中同時(shí)處理向量數(shù)據(jù)和其他結(jié)構(gòu)化數(shù)據(jù),從而滿足更廣泛的分析需求。

開箱即用

UDB UPgSQL數(shù)據(jù)庫產(chǎn)品已經(jīng)內(nèi)置了pgvector插件,可以在實(shí)例創(chuàng)建成功后直接開始使用,無需進(jìn)行額外的配置。與Milvus等向量數(shù)據(jù)庫相比,這種集成方式減少了學(xué)習(xí)和配置的成本。

UCloud pgvector數(shù)據(jù)庫快速入門

pgvector最大支持創(chuàng)建16000個(gè)維度的向量,并可以對(duì)最大2000個(gè)維度的向量建立索引。云數(shù)據(jù)庫UPgSQL默認(rèn)已經(jīng)安裝并啟用pgvector插件,以下是商品搜索與推薦系統(tǒng)案例中使用pgvector的具體步驟:

1.在UCloud UPgSQL控制臺(tái)創(chuàng)建一臺(tái)PostgreSQL數(shù)據(jù)庫實(shí)例,通過root用戶登錄數(shù)據(jù)庫。

2.創(chuàng)建一個(gè)商品表,其中包含商品的名稱、描述和特征向量。

1694756575990.png

3.向商品表中插入一些商品數(shù)據(jù),包括商品名稱、描述以及與其相關(guān)的特征向量。

1694756599998.png

4.當(dāng)搜索商品時(shí),可以使用向量相似度來執(zhí)行智能的商品搜索。

1694756618762.png

5.基于用戶的歷史購買記錄或?yàn)g覽行為,可以計(jì)算用戶的偏好向量,然后根據(jù)相似度來為用戶推薦其他商品。

1694756640764.png

6.創(chuàng)建索引:為了提高查詢效率,pgvector支持為向量數(shù)據(jù)建立IVF-Flat索引,可以通過下列語句創(chuàng)建索引。

1694756659476.png

創(chuàng)建索引語句的參數(shù)說明:

·CREATE INDEX ON products表示在"products"表上創(chuàng)建一個(gè)新的索引。

·USING ivfflat:這部分指定了要使用的索引方法,即"ivfflat"。

·(vector_data vector_cosine_ops):"vector_data"是列的名稱,"vector_cosine_ops"是指向量余弦相似度操作符,這表明你希望使用余弦相似度來優(yōu)化這個(gè)索引。

·WITH(lists=100):"lists"參數(shù)設(shè)置為100,是為了控制索引中的列表數(shù)量,以便在向量搜索時(shí)進(jìn)行更有效的查詢。

UDB作為UCloud云平臺(tái)的核心產(chǎn)品,為廣大用戶提供了多樣化的數(shù)據(jù)庫選擇,覆蓋了MySQL、PostgreSQL、SQL Server、MongoDB等常用數(shù)據(jù)庫品類。UDB PostgreSQL數(shù)據(jù)庫支持pgvector插件后,可以通過創(chuàng)建UDB PostgreSQL數(shù)據(jù)庫快速獲得pgvector功能,無需額外的配置。

同時(shí),如果需要專業(yè)的向量數(shù)據(jù)庫功能,也可以使用UCloud鏡像市場(chǎng)中的Milvus鏡像,創(chuàng)建對(duì)應(yīng)主機(jī)獲取Milvus向量數(shù)據(jù)庫服務(wù)。作為一款開源向量數(shù)據(jù)庫,Milvus專注于高性能的向量數(shù)據(jù)存儲(chǔ)與檢索。它的設(shè)計(jì)旨在處理大規(guī)模的向量數(shù)據(jù),包括圖像、文本、音頻等各個(gè)領(lǐng)域的向量特征。Milvus以高效的相似性搜索和向量計(jì)算為特色,滿足了多領(lǐng)域數(shù)據(jù)探索和分析的需求。

原文鏈接:點(diǎn)擊前往 >
文章來源:UCloud云計(jì)算
版權(quán)說明:本文內(nèi)容來自于UCloud云計(jì)算,本站不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。文章內(nèi)容系作者個(gè)人觀點(diǎn),不代表快出海對(duì)觀點(diǎn)贊同或支持。如有侵權(quán),請(qǐng)聯(lián)系管理員(zzx@kchuhai.com)刪除!
個(gè)人VIP