Dainius Jocas
@dainius_jocas
Software Craftsman. Search. λ. Clojure.
New Vespa features covered in the June newsletter: - Layered ranking: Rank chunks in documents. - Elementwise bm25 - top, filter_subspaces, and cell_order tensor functions - chunking support in indexing - element-gap: Proximity over chunks - filtering in grouping results -…
Someone asked me for my opinion on the Vespa vs. Elasticsearch performance comparison today at Berlin Buzzwords, so I gave it a try: jpountz.github.io/2025/06/17/ana…
Awesome post! Thank you! On HNSW with filters: in Vespa to achieve a Lucene-like dynamism I’m doing a ANN query with a timeout and if it fails, I retry query by forcing exact NN search. It is possible to set threshold values with request parameters.
I spent some time looking at the Vespa source code to see how it compares with Lucene jpountz.github.io/2025/07/25/mor…
Running @vespaengine on @graalvm with generational #ZGC 🤠
June @vespaengine newsletter is out! Lots of cool new stuff (e.g. built-in chunking) and educational content (e.g. demo E-commerce apps with new ideas) Check it out and let us know of any feedback: blog.vespa.ai/vespa-newslett…
If you want to learn more about @vespaengine, you might find our playlists interesting. Lots of podcasts and conference presentations on various topics here: youtube.com/@vespaai/playl…
TL;DR 1. #Elasticsearch 9 is more efficient than 8, gap to @vespaengine reduced to ~3x with 16 clients 2. Single client latency is higher, unless force-merged => a bigger gap (~1.7x for hybrid) 3. Pushing more load increases both gaps: - ES 9 >> ES 8 - Vespa >> ES 9
On the other end of the spectrum (64 clients), there's more of everything: 1. Elasticsearch 9 is 50% better than Elasticsearch 8. 2. Vespa is 5x better than Elasticsearch 9 (at least in hybrid query latency during reindexing)
Let’s start the day with breaking search for fun ( I’m not so sure where the profit comes from 😂) #bbuzz

As most have moved to multi-chunk documents in RAG applications, we thought we should make this easier. Introducing the chunk indexing function: