Hangi Vektör Veritabanı Hangi Senaryoda Doğru Seçim?
Vektör veritabanı seçiminde tek bir doğru cevap yoktur; karar ölçek, ekibin mevcut yığını ve operasyonel olgunluk üzerine kurulur. Kısa yanıt şudur: Halihazırda PostgreSQL kullanan ve milyon altı vektörle çalışan ekipler için pgvector en pratik seçimdir. Yüz milyonlarca vektör ve düşük gecikme gerektiren sıfır-operasyon yönetilen servis arayanlar için Pinecone öne çıkar. Açık kaynak, self-host ve maliyet kontrolü önceliyse Qdrant en dengeli seçenektir. Zengin hibrit arama, GraphQL ve modül ekosistemi isteyenler için Weaviate uygundur. Bu yazı dört seçeneği performans, maliyet, ölçeklenebilirlik ve operasyon ekseninde karşılaştırır.
RAG (Retrieval-Augmented Generation) uygulamalarının yaygınlaşmasıyla vektör veritabanları 2023’ten 2026’ya kadar yıllık ortalama %30’un üzerinde büyüyen bir pazar haline geldi. Yanlış seçim, ya gereksiz altyapı maliyetine ya da ölçeklenememe duvarına çarpmaya yol açar; bu nedenle karar baştan doğru verilmelidir.
Vektör veritabanı, embedding adı verilen yüksek boyutlu sayısal vektörleri saklar ve bir sorgu vektörüne en yakın komşuları (nearest neighbors) hızlıca bulur. Geleneksel veritabanları kesin eşleşme ararken, vektör veritabanları anlamsal benzerlik arar; bu nedenle “kedi” ile “kedigil” gibi anlamca yakın kavramlar yakın vektörlerle temsil edilir. Milyonlarca vektör arasında her sorgu için kesin en yakın komşuyu bulmak hesaplama açısından pahalıdır; bu yüzden tüm modern motorlar yaklaşık en yakın komşu (ANN) algoritmaları kullanır ve doğruluktan biraz feragat ederek hızdan büyük kazanç sağlar. Seçimi belirleyen dört kritik faktör şunlardır: barındırılacak vektör sayısı, kabul edilebilir gecikme, gerekli geri çağırma doğruluğu ve ekibin operasyonel kapasitesi.

Dört Motorun Genel Karşılaştırması
Aşağıdaki tablo dört vektör veritabanını temel mimari ve özellik ekseninde özetler. Tüm değerler resmi dokümantasyon ve genel kabul görmüş kıyaslama aralıklarına dayanır.
| Özellik | Pinecone | Qdrant | Weaviate | pgvector |
|---|---|---|---|---|
| Model | Yönetilen (kapalı) | Açık kaynak | Açık kaynak | Açık kaynak (eklenti) |
| Yazıldığı dil | Rust/C++ | Rust | Go | C |
| İndeks algoritması | Tescilli (HNSW türevi) | HNSW | HNSW | HNSW + IVFFlat |
| Hibrit arama | Var | Var | Var (yerel) | Kısmi (tsvector ile) |
| Self-host | Hayır | Evet | Evet | Evet |
| Yatay ölçekleme | Otomatik | Sharding | Sharding | Sınırlı (replikasyon) |
HNSW (Hierarchical Navigable Small World) bugün dört motorun da temel yaklaşık en yakın komşu (ANN) algoritmasıdır. HNSW referans uygulaması yüksek geri çağırma (recall) oranını düşük gecikmeyle birleştirir ancak bellek tüketimi yüksektir. pgvector ayrıca daha az bellek tüketen ancak yeniden eğitim gerektiren IVFFlat indeksini de sunar.

Performans: Gecikme, Geri Çağırma ve Veri Hacmi
Performans üç boyutta değerlendirilir: sorgu gecikmesi (latency), geri çağırma doğruluğu (recall) ve ölçeklendiği maksimum vektör sayısı. Aşağıdaki tablo tipik 1 milyon, 768 boyutlu vektör seti için gözlemlenen aralıkları gösterir; gerçek değerler donanıma ve indeks parametrelerine göre değişir.
| Motor | p95 Gecikme | Recall@10 | İndeksleme Hızı | Pratik Ölçek |
|---|---|---|---|---|
| Pinecone | 10-50 ms | %95-99 | Yüksek | Milyarlar |
| Qdrant | 5-40 ms | %95-99 | Çok yüksek | Yüz milyonlar |
| Weaviate | 10-60 ms | %94-98 | Yüksek | Yüz milyonlar |
| pgvector (HNSW) | 15-80 ms | %92-98 | Orta | 1-10 milyon |
Recall ile gecikme arasında her zaman bir ödünleşim vardır. HNSW’de ef_search parametresini artırmak recall’u yükseltir ama gecikmeyi büyütür. Kuantizasyon (quantization) teknikleri bu dengeyi iyileştirir: skaler kuantizasyon bellek kullanımını yaklaşık 4 kat, ürün kuantizasyonu (PQ) ise 8 ila 32 kat azaltır, recall’da %1 ila %5 düşüş karşılığında. Qdrant ve Weaviate yerleşik kuantizasyon sunar; bu, milyar ölçeğinde RAM maliyetini ciddi biçimde düşürür.
Performans testinde sık yapılan hata, üretim koşullarını yansıtmayan sentetik kıyaslamalara güvenmektir. Gerçek performans, embedding boyutuna, veri dağılımına, eşzamanlı sorgu sayısına ve filtreleme yüküne göre belirgin biçimde değişir. 768 boyutlu bir vektör seti ile 3072 boyutlu bir set arasında bellek tüketimi ve gecikme dört katına kadar farklılaşabilir. Bu nedenle motor seçimi, kendi verinizle ve gerçek sorgu desenlerinizle yapılan bir pilot test olmadan tamamlanmış sayılmaz. Pilot testte üç şey ölçülür: hedef recall’a ulaşıldığında p95 gecikme, beklenen eşzamanlılık altında verim (throughput) ve indeksin tükettiği bellek. Bu üç sayı, teorik kıyaslama tablolarından çok daha güvenilir bir karar tabanı sunar.
Embedding boyutu kararı, performansı ve maliyeti doğrudan etkileyen bir kaldıraçtır. Daha küçük boyutlu embedding’ler (örneğin 384 veya 768) hem depolama hem gecikme açısından ucuzdur, ancak çok ince anlamsal ayrımlarda doğruluk kaybedebilir. Daha büyük boyutlu embedding’ler (1536 veya 3072) daha zengin anlamsal temsil sunar ama maliyeti katlar. Çoğu üretim uygulaması için 768 ile 1536 arası boyut, doğruluk ve maliyet arasında dengeli bir orta yol oluşturur.
- Düşük gecikme önceliği: HNSW indeksi, yüksek
mveef_constructiondeğerleriyle. - Düşük bellek önceliği: Ürün kuantizasyonu + disk tabanlı saklama.
- Yüksek doğruluk önceliği: Tam (exact) arama veya yüksek
ef_search.

Maliyet Modelleri ve Toplam Sahip Olma Bedeli
Maliyet karşılaştırması yalnızca lisans ücretini değil, operasyon, altyapı ve mühendislik zamanını da kapsayan toplam sahip olma maliyetini (TCO) içermelidir. Yönetilen servisler yüksek aylık ücret karşılığında operasyon yükünü sıfıra indirir; self-host seçenekler düşük doğrudan maliyet karşılığında DevOps zamanı gerektirir.
| Maliyet Kalemi | Pinecone | Qdrant Cloud | Weaviate Cloud | pgvector (self) |
|---|---|---|---|---|
| 1M vektör/ay başlangıç | 70-300 USD | 25-150 USD | 25-180 USD | ~Mevcut DB maliyeti |
| Operasyon yükü | Sıfır | Düşük | Düşük | Yüksek |
| Ölçek esnekliği | Çok yüksek | Yüksek | Yüksek | Sınırlı |
| Vendor bağımlılığı | Yüksek | Düşük | Düşük | Yok |
| Self-host opsiyonu | Yok | Var (ücretsiz) | Var (ücretsiz) | Var (ücretsiz) |
pgvector için en büyük avantaj, ayrı bir veritabanı işletmeden mevcut PostgreSQL içinde vektör araması yapabilmektir. Bu, küçük ve orta ölçekli RAG uygulamalarında veri tutarlılığı ve operasyonel basitlik sağlar. Ancak vektör sayısı 10 milyonu aştığında pgvector’ın indeksleme süresi ve bellek baskısı belirgin hale gelir; bu eşik, adanmış bir vektör veritabanına geçiş sinyalidir.
Toplam sahip olma maliyetini hesaplarken gizli kalemleri görmezden gelmemek gerekir. Yönetilen bir servisin aylık ücreti görünür olsa da, vendor bağımlılığının uzun vadeli maliyeti ve veri çıkışı (egress) ücretleri sıklıkla atlanır. Self-host bir çözümde ise lisans ücreti sıfır olsa da, yedekleme, izleme, sürüm yükseltme ve olay müdahalesi için harcanan DevOps zamanı gerçek bir maliyettir. Küçük bir ekip için bir mühendisin haftada birkaç saatini vektör veritabanı operasyonuna ayırması, yönetilen bir servisin aylık ücretinden daha pahalıya gelebilir. Bu nedenle karar, yalnızca fatura tutarına değil, ekibin operasyonel kapasitesine ve fırsat maliyetine dayanmalıdır. Operasyon olgunluğu düşük ekipler için yönetilen servisin primi, kazanılan zamanla fazlasıyla karşılanır.
Hibrit Arama, Metadata Filtreleme ve Gelişmiş Özellikler
Modern RAG uygulamaları yalnızca semantik benzerlik değil, semantik + anahtar kelime (BM25) birleşimi olan hibrit arama ister. Qdrant dokümantasyonu ve Weaviate dokümantasyonu yerleşik hibrit arama ve metadata filtreleme örnekleri sunar. Metadata filtreleme, “yalnızca 2025 sonrası belgeler” gibi koşulları vektör aramasıyla birleştirir ve filtrenin indeksle bütünleşmesi performans için kritiktir.
Filtreleme stratejisinde iki yaklaşım vardır: pre-filtering aramayı yalnızca uygun adaylar üzerinde çalıştırır ve doğruluğu korur; post-filtering önce arar sonra eler ve yüksek seçicilikte recall’u düşürebilir. Qdrant pre-filtering’i indeks seviyesinde gerçekleştirerek bu sorunu çözer. Weaviate ek olarak modül mimarisiyle metinden vektöre dönüştürmeyi (vectorization) veritabanı içinde yapabilir; bu, ayrı bir embedding servisine olan bağımlılığı azaltır.
Gelişmiş özellikler bazında dört motor belirgin biçimde ayrışır. Aşağıdaki tablo üretim ortamında sık aranan yeteneklerin desteğini özetler.
| Yetenek | Pinecone | Qdrant | Weaviate | pgvector |
|---|---|---|---|---|
| Yerleşik kuantizasyon | Otomatik | Skaler + ürün + binary | Skaler + ürün | Yok (yeni: binary) |
| Metadata filtreleme | Var | Pre-filter (güçlü) | Var | SQL WHERE |
| Çoklu vektör (multi-vector) | Kısmi | Var | Var | Sınırlı |
| Yerel vektörizasyon modülü | Var (yeni) | Hayır | Var (modüller) | Hayır |
| İşlem (transaction) garantisi | Sınırlı | Sınırlı | Sınırlı | Tam ACID |
| Yedekleme/geri yükleme | Yönetilen | Snapshot | Backup API | pg_dump (yerel) |
pgvector’ın benzersiz avantajı tam ACID işlem garantisidir: vektör verisi ile ilişkisel iş verisi aynı transaction içinde tutarlı tutulabilir. Adanmış vektör motorları bu konuda sınırlıdır çünkü temel önceliği arama performansıdır, transaction bütünlüğü değil. Tutarlılık kritikse bu fark belirleyici olur.
Hibrit aramanın değeri özellikle alana özgü terimlerin yoğun olduğu uygulamalarda belirginleşir. Salt semantik arama, “EBITDA” veya bir ürün kodu gibi nadir ama kesin eşleşmesi gereken terimleri bazen kaçırır; çünkü embedding bu nadir tokenları yeterince ayırt edemez. Anahtar kelime tabanlı BM25 araması bu kesin eşleşmeleri yakalar ama anlamsal yakınlığı göremez. Hibrit arama ikisini birleştirerek hem “bu konuya benzer belgeler” hem de “tam bu terimi içeren belgeler” sonuçlarını harmanlar. Ağırlıklandırma genellikle 0 ile 1 arasında bir alfa parametresiyle ayarlanır ve uygulamaya özgü test verisiyle optimize edilir. Hukuk, finans ve teknik dokümantasyon gibi terminoloji ağırlıklı alanlarda hibrit arama, salt semantik aramaya kıyasla geri çağırma doğruluğunu kayda değer biçimde artırır.
Veri yaşam döngüsü yönetimi de seçimi etkileyen önemli bir faktördür. Embedding modeli güncellendiğinde tüm koleksiyonun yeniden embedlenmesi (re-embedding) gerekir; bu, büyük koleksiyonlarda saatler süren ve dikkatli planlanması gereken bir operasyondur. Bazı motorlar bu süreçte kesintisiz hizmet için mavi-yeşil indeks değişimi (blue-green reindexing) destekler. Ekibin embedding modelini ne sıklıkla değiştireceğini öngörmesi, hangi motorun yeniden indeksleme yeteneklerinin yeterli olduğunu belirler.
- Embedding modelini seç ve vektör boyutunu sabitle (örn. 768 veya 1536).
- Metadata şemasını tasarla; sık filtrelenecek alanlara indeks ekle.
- Hibrit arama ağırlıklarını (semantik vs anahtar kelime) test verisiyle ayarla.
- Kuantizasyon ve
ef_searchdeğerlerini recall hedefine göre kalibre et.
Vektör veritabanı seçimi, LLM uygulamasının bütününün bir parçasıdır. Fine-tuning vs RAG kararını, AI ajan bellek mimarilerini ve LLM gözlemlenebilirliğini birlikte ele almak bütüncül bir mimari sağlar.

Tipik Sorunlar ve Çözümleri
Vektör veritabanı dağıtımında ekipler benzer tuzaklara düşer. Aşağıdaki maddeler en sık karşılaşılan sorunları ve doğrudan çözümlerini özetler.
- Düşük recall:
ef_searchvemparametreleri çok düşük; değerleri kademeli artırarak recall/gecikme dengesini bulun. - Aşırı bellek tüketimi: Tam hassasiyetli vektörler RAM’i doldurur; skaler veya ürün kuantizasyonu ile 4-32 kat tasarruf sağlanır.
- Yavaş filtreli sorgular: Post-filtering kullanılıyor; pre-filtering destekleyen motora geçilir veya filtre alanları indekslenir.
- pgvector’ın ölçek duvarı: 10M+ vektörde indeksleme yavaşlar; adanmış vektör DB’ye geçiş planlanır.
- Boyut uyuşmazlığı: Embedding modeli değişince eski ve yeni vektörler karışmaz; tüm koleksiyon yeniden indekslenir.
- Vendor bağımlılığı: Kapalı servise tam bağlanmadan önce, embedding ve metadata’yı taşınabilir formatta yedekleyin.
Sonuç
Dört vektör veritabanı da olgun ve üretime hazırdır; doğru seçim bağlama bağlıdır. pgvector mevcut PostgreSQL yığınına sahip ve 10 milyon vektör altında kalan ekipler için en az sürtünmeli yoldur. Qdrant açık kaynak, yüksek performans ve düşük operasyon yükünü dengeleyerek çoğu üretim senaryosunda güvenli bir varsayılan oluşturur. Weaviate zengin hibrit arama ve modül ekosistemi gerektiren karmaşık uygulamalarda parlar. Pinecone ise sıfır operasyonla milyar ölçeğine çıkmak isteyen ekiplerin doğal tercihidir. Karar verirken bugünkü hacmi değil, on iki ay sonraki büyüme eğrisini ölçü alın; ölçek duvarına çarpmak, baştan biraz fazla yatırım yapmaktan daima pahalıdır.
Sıkça Sorulan Sorular
Küçük bir RAG projesi için hangi vektör veritabanını seçmeliyim?
PostgreSQL zaten kullanılıyorsa ve vektör sayısı 10 milyonun altındaysa pgvector en pratik seçimdir; ayrı altyapı gerektirmez ve veri tutarlılığını korur. Daha bağımsız ve yüksek performanslı bir başlangıç isteniyorsa Qdrant’ın ücretsiz self-host sürümü güçlü bir alternatiftir.
HNSW ve IVFFlat arasındaki fark nedir?
HNSW yüksek recall’u düşük gecikmeyle birleştirir ancak bellek tüketimi yüksektir ve eklemede güncellenir. IVFFlat daha az bellek kullanır fakat veri değiştikçe yeniden eğitim gerektirir ve recall’u biraz düşüktür. Düşük gecikme öncelikse HNSW, bellek kısıtı varsa IVFFlat tercih edilir.
Kuantizasyon recall’u ne kadar etkiler?
Skaler kuantizasyon belleği yaklaşık 4 kat, ürün kuantizasyonu 8 ila 32 kat azaltır. Bu tasarruf karşılığında recall’da tipik olarak %1 ile %5 arasında düşüş yaşanır. Milyar ölçeğinde RAM maliyetini düşürmek için kuantizasyon neredeyse zorunludur.
Pre-filtering ile post-filtering hangisi daha iyi?
Pre-filtering aramayı yalnızca uygun adaylar üzerinde çalıştırarak yüksek seçicilikte bile recall’u korur; bu nedenle üretimde tercih edilir. Post-filtering önce arar sonra eler ve katı filtrelerde sonuç sayısını beklenmedik biçimde düşürebilir. Qdrant pre-filtering’i indeks seviyesinde uygular.
pgvector ne zaman yetersiz kalır?
Vektör sayısı 10 milyonu aştığında pgvector’ın indeksleme süresi uzar ve bellek baskısı artar. Bu eşik, Qdrant, Weaviate veya Pinecone gibi adanmış bir vektör veritabanına geçiş için doğal sinyaldir. Eşiğe gelmeden geçiş planı hazırlamak kesintiyi önler.










Ömer ÖNAL
Haziran 5, 2026Müşterilere hep şunu söylüyorum: bugünkü vektör sayınıza değil, bir yıl sonraki büyüme eğrinize göre seçin. pgvector ile başlayıp 10 milyon vektörde duvara çarpan ve aceleyle migrasyon yapan çok ekip gördüm. Eğer PostgreSQL zaten varsa pgvector ile başlayın ama eşiği baştan belirleyin. Yüksek hacim ve düşük operasyon istiyorsanız Qdrant çoğu projede en dengeli varsayılandır.