Editorial desk
VectorOpsReport Editorial
The editorial desk that publishes VectorOpsReport. It is a byline for the site's editorial process, not a person, and this page carries no author biography because there is no individual author to describe.
How this desk works
- Articles are researched from primary sources: vendor and project documentation, published standards and specifications, release notes, advisories, and measurements published by the people who took them.
- Drafts are produced with AI assistance and then edited against those same sources before publication.
- Nothing published here claims hands-on lab testing, benchmarking, or first-hand measurement. Where a figure comes from a datasheet or someone else's test, the article names the source.
- Corrections go to [email protected] and are made on the affected page. Funding is set out on the disclosure page.
Posts (10)
- Indexing
How to Tune the HNSW M Parameter: Pick the Smallest Graph That Hits Your Recall SLO
M is the one HNSW build parameter you cannot change without a rebuild. What it does, what it is called in hnswlib, Faiss, pgvector, Qdrant, Weaviate, Milvus, Elasticsearch and OpenSearch, the memory formula, and a Python sweep that logs recall@10, p99 and bytes per vector.
- Guide
How to Choose a Vector Database: Fix the Recall Target, Measure on Your Data, Then Shop
How to choose a vector database for production retrieval: the five constraints that decide it, the one metric to benchmark on your own corpus, a Python harness to measure it, and where pgvector, Qdrant, Milvus, Weaviate, Pinecone and Elasticsearch actually differ.
- Comparison
Qdrant vs Weaviate vs Milvus: Filtered Recall, RAM and Scale-Out Compared
A qdrant vs weaviate vs milvus comparison for teams putting retrieval in production: index and quantization options, what a metadata filter does to each engine, multi-tenancy limits, cluster mechanics, and the one metric to decide on.
- Fundamentals
Cosine Similarity vs Dot Product Explained: When They Rank the Same and When They Don't
Cosine similarity and dot product are the same function only on unit-length vectors. The math, the one norm check that tells you which you are actually running, and the FAISS, pgvector, Qdrant and hnswlib configs where the difference bites.
- Comparison
pgvector vs Pinecone Comparison: Cost per Query at Target Recall
A pgvector vs Pinecone comparison for teams putting retrieval in production: architecture, filtering behaviour, what the vendor benchmarks actually measured, and the one metric that decides it.
- Indexing
HNSW ef_search Parameter Explained: The Knob That Trades Recall for p99
ef_search is the beam width of an HNSW query. What it controls, what it is called in hnswlib, Faiss, pgvector, Qdrant, Weaviate, Milvus and Elasticsearch, the recall@k metric that tells you if it is set right, and a Python sweep that exports it to Prometheus.
- Index Selection
HNSW vs IVF: Vector Index Tradeoffs Compared
A side-by-side comparison of HNSW, IVF-Flat, IVF-PQ, flat and disk-based vector indexes on memory, build cost, updates and the knob that sets recall.
- Troubleshooting
Low Vector Search Recall: Causes and Fixes
Why an approximate index returns the wrong neighbours: candidate lists too small, metric mismatch, filters, tombstones, and how to measure recall properly.
- Index Sizing
Vector Database Memory Sizing: RAM, Graph and Overhead
Size a vector index before you build it: bytes per embedding, HNSW graph overhead, what quantization actually saves, and what has to fit in RAM.
- Vector Search
Vector Search Fundamentals: Embeddings, ANN and Recall
What an approximate nearest neighbor index does, how graph and cluster based indexes differ, and how quantization trades memory against recall.