turbopuffer is a serverless search engine that launched as a vector database optimized for approximate nearest neighbor (ANN) search, handling over 1 trillion documents and 10 million writes per second. In its first two versions, the system stored all document data keyed by an ANN address derived from a hierarchical clustering index (SPFresh), making the ANN index the primary index around which attribute filtering, full-text search, and other query plans were organized.

turbopuffer logo
Logo of turbopuffer, the search engine redesigning its storage architecture for version 3.turbopuffer.com

The image shows the turbopuffer logo, representing the company whose architectural changes from vector-first to secondary index are discussed in the article.

This design created three main limitations: storage amplification, where multi‑vector documents required duplicating non‑vector data under each vector’s ANN address; write amplification, because any vector rebalancing during updates forced the movement of the full document and all associated attribute and full‑text search indexes; and limited vectorization, as the ANN index’s optimal cluster size of 100–200 documents constrained block sizes for other query plans, preventing efficient CPU utilization until turbopuffer v2 reworked full‑text search to fixed 256‑document blocks.

In turbopuffer v3 the company is decoupling document storage from the ANN index, making ANN just another secondary index so that each query type can be stored and indexed optimally. The blog post notes that v3 has achieved 100% continuous integration success and the team is now focusing on performance improvements, with plans to share benchmark results publicly in the coming weeks as they work toward and beyond performance parity before a production rollout.