Vespa vs. ElasticSearch
(tech.okcupid.com)-
OkCupid'nin açık kaynak arama motoru olarak Vespa'yı seçmesinin nedenleri
-
Flört önerilerini gerçek zamanlı sıralamaya göre değiştirmek gerekiyor, ancak mevcut eşleştirme sistemi sürekli değişen kullanıcı durumunu hızla yansıtmakta zorlanıyor
-
ElasticSearch, bellek içi kısmi güncellemeyi desteklemiyor
→ Belgelerin çoğu statik, ancak kullanıcı bilgileri (beğeniler, kişilerle bağlantı/pas geçme, mesajlaşma) dinamik olarak sürekli değişiyor
- Vespa: büyük veri için açık kaynak bir arama motoru (veri analizinden çok servis etme amacıyla optimize edilmiş)
→ Tüm belgeleri yeniden indekslemeye gerek kalmadan bellek içi kısmi güncellemeyi destekliyor (düğüm başına saniyede 40~50K güncelleme mümkün)
→ Esnek bir sıralama framework'ü sunuyor ve sorgu sırasında işleme yapılabiliyor
→ TensorFlow gibi makine öğrenimi modelleriyle doğrudan entegre oluyor
→ REST çağrılarında YQL(Yahoo Query Language) kullanarak sorgu yapılabiliyor
→ Java bileşenleriyle mantık özelleştirilebiliyor
→ Ölçeklenebilirlik açısından shard'ları düşünmeye gerek yok. Düğüm eklendiğinde/çıkarıldığında veri otomatik olarak kurtarılıyor ve kopyalardan yeniden dağıtılıyor
- Vespa, OkCupid'nin iç yapısına daha iyi uyuyor
→ OkCupid, kullanıcılarla ilgili çeşitli bilgileri birleştirerek insanları eşleştiriyor
→ Filtre ve sıralama ölçütlerinin her biri 100'den fazla ve sürekli ekleniyor; bu nedenle Vespa bu tür workflow'ları desteklemek için uygun
→ Veri yazma ve sorgulama da mevcut eşleştirme sistemiyle benzer
→ Sıralama framework'ü çok daha esnek ve sezgisel
→ ElasticSearch'ün garip sorgu yapısına kıyasla YQL'nin ifade gücü daha yüksek
→ Otomatik veri dağıtımı özelliği küçük ekipler için uygun
2 yorum
Vespa'nın geçmişi ve değeri hakkında Korece bir tanıtım yazısı
Açık kaynak Yahoo Vespa https://web.archive.org/web/20210922122357/…
(2023 itibarıyla blog ortadan kalktığı için bağlantıyı Wayback Machine linkiyle değiştirdim)
"Vespa aynı zamanda bir motosiklet markasının adıdır, ancak Vertical Search Platform'un kısaltmasıdır"
"Yahoo'nun sahip olduğu çekirdek teknolojiler arasında, sanki asla kamuya açıklamayacakmış gibi görünenler içinde bile her zaman adı geçen ve ilk beşe giren şeylerden biri Vespa'dır"
"Vespa, arama motorunu merkeze alan birleşik bir içerik işleme platformunun bileşen setidir. Basitçe düşünürseniz bir arama motoru gibi görülebilir, ancak sıradan Solr ya da Elastic gibi arama motorlarına kıyasla etrafındaki yardımcı bileşenleri çok daha fazladır."
Yazı oldukça uzun; arka kısımlarda Vespa’yı fiilen uygulayan OkCupid’in sistem mimarisi ve arama sorguları (YQL) gibi örnekler de gösteriliyor, bu yüzden orijinal yazıya göz atın.
Yazının sonunda da belirtildiği gibi ElasticSearch çok daha yaygın kullanılıyor ve Vespa’nın dezavantajı, topluluğunun hâlâ çok büyük olmaması.
Ama burada da görüldüğü gibi, sürekli değişmesi gereken arama senaryolarında Vespa da harika bir alternatif olabilir gibi görünüyor.
Örnek olarak flört eşleştirmesi verilmiş olsa da, e-ticaret aramaları da artık iyi sonuç verebilmek için günümüzde gerçek zamanlı değişebilmelidir.