DiskJoin: Large-scale Vector Similarity Join with SSD
Similarity join-a widely used operation in data science-finds all pairs of items that have distance smaller than a threshold. Prior work has explored distributed computation methods to scale similarity join to large data volumes but these methods require a cluster deployment, and efficiency suffers from expensive inter-machine communication. On the other hand, disk-based solutions are more cost-effective by using a single machine and storing the large dataset on high-performance external storage, such as NVMe SSDs, but in these methods the disk I/O time is a serious bottleneck. In this paper, we propose DiskJoin, the first disk-based similarity join algorithm that can process billion-scale vector datasets efficiently on a single machine. DiskJoin improves disk I/O by tailoring the data access patterns to avoid repetitive accesses and read amplification. It also uses main memory as a dynamic cache and carefully manages cache eviction to improve cache hit rate and reduce disk retrieval time. For further acceleration, we adopt a probabilistic pruning technique that can effectively prune a large number of vector pairs from computation. Our evaluation on real-world, large-scale datasets shows that DiskJoin significantly outperforms alternatives, achieving speedups from 50× to 1000×.
Authors
- Eric Lo (ORCID: https://orcid.org/0000-0003-2679-3945)
- Alexandra Meliou (ORCID: https://orcid.org/0000-0001-7346-6002)
- Yanqi Chen (ORCID: https://orcid.org/0009-0001-9494-4947)
- Xiao Yan (ORCID: https://orcid.org/0000-0002-2122-915X)
Institutions
- Chinese University of Hong Kong (HK)
- University of Massachusetts Amherst (US)
- Wuhan University (CN)
Publication Details
- Journal
- Proceedings of the ACM on Management of Data
- Published
- 2025-12-04
- DOI
- https://doi.org/10.1145/3769780
- Primary Topic
- Advanced Data Storage Technologies
- Type
- article
- Field-Weighted Citation Impact
- 0.00