From f1fd5119702f71238c2dfc422296b8ef1f7f6740 Mon Sep 17 00:00:00 2001 From: Julie Tibshirani Date: Tue, 5 Oct 2021 14:32:43 -0700 Subject: [PATCH] Load knn vectors format with mmapfs Before the format used niofs. The current knn vectors implementation is based on the HNSW algorithm, which is designed for the case where the graph and vectors are be held in memory. Switching to mmapfs from niofs made a huge difference in ANN benchmarks, speeding up some searches over 3x. --- .../org/elasticsearch/index/store/LuceneFilesExtensions.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/server/src/main/java/org/elasticsearch/index/store/LuceneFilesExtensions.java b/server/src/main/java/org/elasticsearch/index/store/LuceneFilesExtensions.java index f3ae4ae2d85b4..7dd4ee0218582 100644 --- a/server/src/main/java/org/elasticsearch/index/store/LuceneFilesExtensions.java +++ b/server/src/main/java/org/elasticsearch/index/store/LuceneFilesExtensions.java @@ -69,8 +69,8 @@ public enum LuceneFilesExtensions { TVM("tvm", "Term Vector Metadata", true, false), TVX("tvx", "Term Vector Index", false, false), // kNN vectors format - VEC("vec", "Vector Data", false, false), - VEX("vex", "Vector Index", false, false), + VEC("vec", "Vector Data", false, true), + VEX("vex", "Vector Index", false, true), VEM("vem", "Vector Metadata", true, false); /**