How to Run 25 Million Image Vectors on Under 1GB of Memory in Milvus
Jun 3, 2026Jack Li

Summary
This post details how to run 25 million 1280-dimensional vectors on under 1GB of memory in Milvus by leveraging FP16 vector storage, mmap for raw vector data, and aggressive scalar filtering before using the FLAT index. It explains why more advanced ANN indexes like AISAQ and IVF_FLAT were not suitable for this specific memory-constrained workload. The post also provides guidance on interpreting Milvus Sizing Tool estimates and outlines a recipe for applying this pattern to other selective query workloads.
More from the AI Data Storage Engine trail
- Milvus Snapshots: Point-in-Time Collection Views Without Copying Data
- Announcing Milvus 3.0: Lake-Native Vector Search and a More Powerful Retrieval Engine
- How to Recover Milvus Data After etcd Corruption Without a Backup
- Open Tag: An Open-Source Claude Tag for Claude Code and Codex
- How Force Merge Compaction Nearly Doubled Milvus Search QPS