Vespa vs. ElasticSearch
(tech.okcupid.com)-
Alasan OkCupid memilih Vespa sebagai mesin pencari open source
-
Rekomendasi pasangan kencan harus diubah berdasarkan peringkat real-time, tetapi sistem pencocokan yang ada sulit mencerminkan status pengguna yang terus berubah dengan cepat
-
ElasticSearch tidak mendukung partial update in-memory
→ Dokumen pada umumnya statis, tetapi informasi pengguna (like, koneksi/pass dengan orang lain, messaging) terus berubah secara dinamis
- Vespa: mesin pencari open source untuk big data (dioptimalkan untuk tujuan serving, bukan analisis data)
→ Mendukung partial update in-memory tanpa perlu me-reindex seluruh dokumen (mampu menangani 40~50K update per detik per node)
→ Menyediakan framework ranking yang fleksibel sehingga pemrosesan dapat dilakukan saat query
→ Terhubung langsung dengan model machine learning seperti TensorFlow
→ Saat melakukan panggilan REST, query dapat dibuat menggunakan YQL (Yahoo Query Language)
→ Logika dapat dikustomisasi menggunakan komponen Java
→ Dari sisi skalabilitas, tidak perlu memikirkan shard. Setiap kali node ditambah/dihapus, data dipulihkan secara otomatis dan didistribusikan ulang dari replika
- Vespa lebih cocok dengan kebutuhan internal OkCupid
→ OkCupid mencocokkan orang dengan menggabungkan beragam informasi tentang pengguna
→ Filter dan kriteria pengurutan masing-masing berjumlah lebih dari 100 dan terus bertambah, sehingga Vespa cocok untuk mendukung workflow seperti ini
→ Penulisan data dan query juga mirip dengan sistem pencocokan yang ada
→ Framework ranking jauh lebih fleksibel dan intuitif
→ Dibanding struktur query ElasticSearch yang aneh, daya ekspresif YQL lebih unggul
→ Fitur distribusi data otomatis cocok untuk tim kecil
2 komentar
Tulisan pengantar berbahasa Korea tentang sejarah dan nilai Vespa
Yahoo Vespa open source https://web.archive.org/web/20210922122357/…
(Pada 2023, blog tersebut sudah hilang sehingga diganti dengan tautan Wayback Machine)
"Vespa juga merupakan nama merek sepeda motor, tetapi merupakan singkatan dari Vertical Search Plaform"
"Di antara teknologi inti yang dimiliki Yahoo dan terasa seperti sama sekali tidak akan pernah dibuka ke publik, Vespa selalu disebut-sebut sebagai salah satu dari lima teratas"
"Vespa adalah sekumpulan komponen dari platform pemrosesan konten terpadu yang berpusat pada mesin pencari. Sederhananya, ini bisa dianggap sebagai mesin pencari, tetapi dibandingkan mesin pencari umum seperti Solr atau Elastic, komponen pendukung di sekitarnya jauh lebih banyak."
Tulisannya sangat panjang, tetapi di bagian belakang juga diperlihatkan struktur sistem OkCupid yang benar-benar menerapkan Vespa hingga kueri pencarian (YQL), jadi silakan lihat tulisan aslinya.
Seperti juga disebutkan di bagian akhir tulisan, ElasticSearch digunakan jauh lebih luas, dan kekurangan Vespa adalah komunitasnya masih belum terlalu besar.
Namun seperti yang terlihat di sini, untuk pencarian yang harus terus berubah, Vespa tampaknya juga bisa menjadi alternatif yang sangat baik.
Contohnya memang memakai pencocokan pasangan kencan, tetapi pencarian e-commerce belakangan ini juga perlu berubah secara real-time agar bisa memberikan hasil yang baik.