22 puan yazan xguru 2024-12-10 | 1 yorum | WhatsApp'ta paylaş
  • Büyük ölçekli vektörleri maliyet verimli şekilde yönetmek için PostgreSQL için yeni bir vektör arama eklentisi
  • 768 boyutlu 100 milyon vektör için ilk 10 sorguda QPS 131 ve 0.95 doğruluk elde edebiliyor
    • Aylık 250 dolarla tek bir makinede çalıştırılabiliyor
  • 400.000 vektör 1 dolara depolanabiliyor:
    • Pinecone'a (storage-optimized instance) kıyasla 6 kat daha ucuz
    • pgvector'a kıyasla 26 kat daha ucuz

HNSW (Hierarchical Navigable Small Worlds) tabanlı vektör veritabanlarının sorunları

  • Uzun indeks oluşturma süresi: 5 milyon kayıt için 2 saatten fazla sürüyor
  • Yüksek bellek gereksinimi: 10 milyon vektör depolarken 40 GB'a kadar gerekiyor

VectorChord'un yenilikçi çözümü: disk dostu IVF+RaBitQ

  • IVF (ters dosya indeksi) ve RaBitQ niceleme kullanıyor
    • 32 bit vektörleri sıkıştırılmış bit temsiline dönüştürerek hesaplama maliyetini azaltıyor
    • Karşılaştırmaların çoğu sıkıştırılmış vektörlerle yapılıyor; doğruluğu garanti etmek için az sayıdaki vektör üzerinde tam hassasiyetli hesaplama yürütülüyor
  • HNSW'den daha hızlı ve verimli arama:
    • RaBitQ, vektörleri 1 bit'e sıkıştırarak hesaplama hızını 100 kat artırıyor
    • Yüksek doğruluk korunurken hız optimize edilebiliyor

Başlıca benchmark sonuçları

GIST veri kümesi (1M, 960 boyut)

  • VectorChord, pgvector'a kıyasla 2 kat daha yüksek QPS sunuyor
  • KMeans kümeleme, harici bir GPU'da çalıştırıldıktan sonra PostgreSQL'e aktarma yöntemi kullanılıyor
  • AWS i4i.large instance'ında (2 vCPU, 16 GB RAM) 700 bin vektörün indekslenme süresi: 186 saniye
    • pgvector'a kıyasla 16 kat daha hızlı
    • Ekleme hızı da 14 kat daha hızlı

LAION 5M veri kümesi

  • r6a.xlarge makinesinde test (4 vCPU, 32 GB RAM, 200 GB EBS):
    • Yüksek doğrulukta bile hızlı yanıt korunuyor
    • Aylık $165.56 maliyetle benzer performans sağlıyor ve rakip platformlara göre daha maliyet verimli

LAION 100M veri kümesi

  • AWS i4i.xlarge instance'ında (4 vCPU, 32 GB RAM, 937 GB SSD):
    • QPS 16.2 @ recall 0.95 (ilk 10 sonuç bazında)
    • Çok iş parçacıklı ortamda, istek arttıkça doğrusal QPS artışı gözlemleniyor

VectorChord'un başlıca avantajları

  • PostgreSQL'in fiziksel replikasyonu ve diğer özellikleriyle uyumlu
  • Harici indeks oluşturma desteği:
    • Daha güçlü bir makinede indeks oluşturup bunu daha küçük bir makineye taşıyarak sorgu çalıştırma
    • Tek bir makinede milyarlarca vektörü destekleyebiliyor
  • Düşük maliyet, yüksek performans: Rakip platformlara kıyasla aylık maliyeti büyük ölçüde düşürüyor

Özet ve ek bilgiler

  • VectorChord, PostgreSQL ortamında verimli vektör arama sunuyor
  • IVF ve RaBitQ niceleme ile hız ve bellek kullanımını optimize ederek büyük veri kümeleri için uygun hale geliyor
  • Bulut yönetimli hizmet: PGVecto.rs Cloud
    • Kolay dağıtım ve ölçeklendirme imkanı

1 yorum

 
xguru 2024-12-10

Vector, PostgreSQL için yeni JSON'dur
Yukarıdaki yazıda alıntılanan pgvector ile, bu VectorChord'un selefi olan pgvecto.rs farklı eklentilerdir.
2024'te pgvector vs. pgvecto.rs: PostgreSQL'de Vektör Arama İçin Kapsamlı Bir Karşılaştırma

pgvecto.rs ekibini kuran ekip, VectorChord'u da geliştirip birlikte yönetiyor; ancak özelliklerin tamamı henüz VectorChord'a taşınmış değil. Görünüşe göre gelecek yıl civarında pgvecto.rs desteği sonlandırılıp VectorChord'a geçilecek.

Postgres'te vektör saklayanlar için faydalı bir not.