Turbopuffer's engineers write about their serverless vector and search database built on object storage, covering query latency, indexing, and Rust performance.
HN commenters mention it as a production system for vector and BM25 search. They cite its architecture and its WAND vs MAXSCORE write-up on memory bandwidth and SIMD.
What a surprise that you are also a reader of books rather than other content: https://www.goodreads.com/user/show/7288759-vasco
Reading a book is arguably easier than reading technical content or other articles, because they don't tend to be as information dense.
I prefer reading things like this: https://commoncog.com/becoming-data-driven-in-business/
But someone might like reading documentation for e.g. databases, which is also extremely information dense. I have briefly done this (https://turbopuffer.com/docs) and read other database content (https://artem.krylysov.com/blog/2023/04/19/how-rocksdb-works/), but it's not my favourite content.
Really weird to say "you read X, I read Y. We are not the same" and then follow-up with "oh but it's fine, you don't have to. But I'm X and you're Y".
I could replace a few words in your comment and make it about thinking reading books is the same as reading extremely dense technical content. It's a silly argument.
At very high scale, there's less usage of graphs. Or there's a set of clustering on top of graphs.
Graphs can be complex to build and rebalance. Graph-like data structures with a thing, then a pointer out to another thing, aren't that cache friendly.
Add to that, people almost always want to *filter* vector search results. And this is a huge blindspot for consumers and providers. It's where the ugly performance surprises come from. Filtered HNSW isn't straightforward, and requires you to just keep traversing the graph looking for results that satisfy your filter.
HNSW came out of a benchmark regime where we just indexed some vectors and tried to only maximize recall for query latency. It doesn't take into account the filtering / indexing almost everyone wants.
Turbopuffer, for example, doesn't use graphs at all, it uses SPFresh. And they recently got 200ms latency on 100B vectors.
https://turbopuffer.com/docs/vector
Website is open source at https://github.com/TN1ck/tn1ck.com. Tech stack is literally just a Next.js website and I write my articles in React. I tried other things before e.g. Jekyll, but I found that dynamic content is really hard to do there, annoyingly hard.
I keep it super simple and don't do "the proper way" of things at times (e.g. the blog index is manually done by me). But that keeps it simple & independent to me. Next.js here is just a detail, I can always move to some other React-based static site generator.
It's hosted at Cloudflare.
The design is heavily inspired by https://turbopuffer.com/, I don't deserve any praise for that.
> My other mild criticism is in the discussion on TigerBeetle’s consensus: yes, it seems quite clever and has no other dependencies, but it’s also not trying to deal with large rows. When you can fit 8,190 transactions into a 1 MiB packet that takes a single trip to be delivered, you can probably manage what would be impossible for a traditional RDBMS.
Isn't that the point? They're saying to separate out transactions workload from other workloads. They're not saying they'll replace your OLGP db, you remove transactionally important data into another db.
It's something similar that we see with another db: https://turbopuffer.com/
This feels similar to TurboBuffer, which is also built on top of S3 storage. TurboBuffer has been a leader in this space, powering vector search for major companies like Cursor, Linear, and Notion.
It seems AWS is leveraging its strong S3 brand to compete directly in the vector database market.
For more context, check out the TurboBuffer architecture docs and Notion’s presentation from the Data Council:
https://turbopuffer.com/docs/architecture
https://www.youtube.com/watch?v=_yb6Nw21QxA
(anti-disclaimer: I'm not affiliated with TurboBuffer in any way.)
Turbopuffer is awesome, really recommend it. Also they have extra features like automatic recall tuning based on you data, option to choose read after write guarantees (trading latency for consistency or vice versa), BM25 search, filtering on the filed and many more.
Really recommend to check them out if you need a vector DB. I tried qdrant and zilli cloud solutions and in terms of operational simplicity turbopuffer just killing it.
https://turbopuffer.com/docs/query