Distributed graph index nearest neighbor search method oriented to high-dimensional space
By combining boundary-aware partitioning and hierarchical indexing, the problems of high memory consumption, uneven partitioning, and high communication overhead in distributed graph indexing methods are solved, realizing efficient and reliable large-scale high-dimensional vector retrieval and improving query efficiency and throughput.
Patent Information
- Application Number
- CN202511602138.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-11-04
- Publication Date
- 2025-12-05
- Estimated Expiration
- 2045-11-04
AI Technical Summary
Existing distributed graph indexing methods suffer from problems such as high memory consumption, uneven partitioning, high communication overhead, and low search efficiency in large-scale high-dimensional vector retrieval, making it difficult to achieve efficient and reliable nearest neighbor search in a distributed environment.
We employ a collaborative design of boundary-aware partitioning, hierarchical indexing, and distributed parallel search. We use the KaFFPa algorithm for balanced partitioning, construct a hybrid index structure of sparse global navigation layer and local precision layer, and utilize diversity scoring and dynamic radius to select entry points for multi-starting-point parallel search.
It achieves computational load balancing and minimizes communication overhead, significantly reduces memory usage, improves query efficiency and throughput, and adapts to the high concurrency requirements of large-scale high-dimensional vector retrieval.
Smart Images

Figure CN121070937A_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The application belongs to the technical field of high-dimensional data retrieval and distributed computing, and particularly relates to a distributed graph index nearest neighbor search method for high-dimensional space. BACKGROUND
[0002] With the rapid development of large-scale database systems and large language models, high-dimensional vector data is growing explosively in the fields of computer vision, bioinformatics and recommendation systems, which puts forward an urgent demand for efficient and scalable nearest neighbor search (NNS) solutions.
[0003] Nearest neighbor search aims to identify the most similar data vector to a given query vector from a dataset, and is the core operation of many applications. To support efficient NNS in high-dimensional space, researchers have developed approximate nearest neighbor search (ANNS) methods, which are mainly divided into four categories: tree-based methods, hash-based methods, quantization-based methods and graph-based methods. Tree-based methods such as KD-Tree (K-dimensional tree) and R*-Tree (R-star tree) organize vectors through hierarchical space partitioning, achieving efficient search in low-dimensional space. KD-Tree recursively partitions space along coordinate axes, and R*-Tree uses minimum bounding rectangles to combine adjacent objects, however these structures are severely affected by the "curse of dimensionality", and search efficiency decreases exponentially with increasing dimension. In a distributed environment, tree structures also face additional challenges of partition boundary and global traversal. Hash-based methods such as Locality-Sensitive Hashing (LSH) project high-dimensional vectors into low-dimensional space, making similar items have a high collision probability. Although these methods provide theoretical guarantees and sub-linear search time, they perform poorly in terms of precision-recall trade-off, and multiple hash tables are needed to achieve competitive accuracy. Quantization-based methods such as Product Quantization (PQ) reduce memory requirements by quantizing decomposed vectors, significantly improving distance calculation, but the quantization error introduced by these methods accumulates in high dimensions, leading to a decrease in search quality, and distributed implementation also faces the problem of communication overhead caused by partitioning of quantization units across partitions.
[0004] Graph-based methods are the state-of-the-art approach for high-dimensional NNS by constructing a proximity graph that leverages the nearest neighbor relationship between objects. They are the mainstream solution due to their superior performance in query efficiency and accuracy. Methods such as hierarchical navigable small world (HNSW) and navigable sparse graph (NSG) exhibit superior recall and query efficiency by creating navigable search networks based on underlying structures such as k-NN graph, Delaunay graph, and relative neighborhood graph. Despite their superior performance, graph-based methods still face two key challenges: first, the high construction cost and large memory footprint, which make it difficult to adapt to single-machine environments as data scales grow; second, in distributed environments, partitioning the graph disrupts the proximity relationship between nodes, leading to a large amount of cross-node communication and severely affecting search efficiency and accuracy. For example, the HNSW method may consume up to 100 GB of main memory storage space for a billion-scale dataset. Although disk-based methods such as DiskANN partially address the high storage cost problem by storing data and indexes on disk rather than main memory, they still face challenges such as long construction time and single-machine storage limitations.
[0005] Existing distributed graph indexing methods attempt to address these issues. Pyramid uses a meta-HNSW structure for dataset partitioning, constructing subgraphs on similar data clusters, and reducing query computation by routing to relevant partitions. However, this method lacks sensitivity to boundary nodes and the simple single-layer navigation structure used performs poorly under complex data distribution. D-HNSW (Distributed Hierarchical Navigable Small World Graph) extends the HNSW algorithm to a distributed environment, using a sampled graph for partitioning and constructing local indexes on worker nodes. While maintaining search quality, its partitioning strategy ignores computational balance, leading to workload skew and low resource utilization, and its reliance on a single-entry search model limits scalability under high concurrency. Parallel and distributed graph frameworks built on Spark and MapReduce, such as Sheep and CAGRA (GPU-based High-Performance Parallel Graph Approximate Nearest Neighbor Search Algorithm), parallelize or distribute graph construction through partitioning and edge generation. However, these methods face fundamental challenges in maintaining global connectivity while minimizing communication overhead, primarily due to the conflict between the inherent connectivity characteristics of proximity graphs and distributed settings. Hybrid indexes combine the complementary strengths of different methods to overcome individual limitations. Graph-tree hybrid methods such as ELPIS (Domain Model-Based System Construction Framework) and GTI (Information Gain-Based Tree Induction Method) use innovative methods to partition and organize before graph construction, significantly reducing memory overhead and construction cost. However, these methods face challenges in distributed environments, such as load imbalance, excessive cross-partition communication, and difficulty in maintaining consistent global navigation structures.
[0006] The limitations of the above existing methods highlight the urgent need to develop techniques specifically targeting the distributed characteristics of large-scale vector retrieval, and therefore there is an urgent need for a distributed graph index method that can simultaneously achieve boundary-aware balanced partitioning, efficient hierarchical indexing, and high-throughput query processing. SUMMARY
[0007] In view of the technical problems of large memory consumption, unbalanced partitioning, high communication overhead, and low search efficiency of existing distributed graph index methods in large-scale high-dimensional vector retrieval, the present application provides a high-dimensional space-oriented distributed graph index nearest neighbor search method, which realizes efficient and reliable large-scale vector retrieval through the coordinated design of boundary-aware partitioning, hierarchical indexing, and distributed parallel search.
[0008] A high-dimensional space-oriented distributed graph index nearest neighbor search method, comprising the following steps: (1) Obtain a high-dimensional data set and construct a distributed computing environment composed of one master node and multiple worker nodes; (2) Perform balanced partitioning based on boundary awareness on the high-dimensional data set; (3) Construct a hierarchical index structure according to the partitioning results; (4) Based on the hierarchical index structure, perform distributed multi-start parallel search.
[0009] Further, the high-dimensional data set in step (1) contains n vectors, each vector having a dimension of d , d the value range of which is 128 to 960 dimensions, n and the scale of which is from millions to billions; the master node in the distributed computing environment is responsible for global coordination, partition management, and query routing, and the worker nodes are responsible for local index construction and query execution.
[0010] Further, the specific implementation of step (2) is as follows: S21: Input the high-dimensional data set and use the KaFFPa (Karlsruhe Fast Flow Partitioning) algorithm to partition it, obtaining m initial partitions, m where n is the number of worker nodes; S22: Construct a k-nearest neighbor graph based on the high-dimensional data set to determine the connection relationship between vectors; S23: Calculate the connection ratio of each vector in the high-dimensional data set = cross-partition connection number / total connection number; S24: Include vectors with a connection ratio higher than a set threshold in the HBN (High Importance Boundary Point Set); S25: Remove vectors belonging to the HBN from the initial partitions and output the final partitioning results.
[0011] Furthermore, the specific implementation of step (3) is as follows: S31: Based on a high-dimensional dataset, a global navigation layer is built on the master node. This layer serves as a global routing skeleton and is encapsulated as a Spark broadcast variable and distributed to all worker nodes. S32: Construct an M-Tree index structure based on HBN, whose internal nodes are used to maintain routing objects and coverage radii; store the M-Tree index structure on the master node and broadcast it to each worker node for distance pruning in cross-partition query operations; S33: Construct a local HNSW graph structure for the corresponding partition at each working node, assign random levels to the vectors in the partition and insert them layer by layer into the local HNSW graph structure to form a local precise layer.
[0012] Furthermore, the specific implementation of constructing the global navigation layer in step S31 is as follows: firstly, a certain proportion is randomly sampled from each partition. η The vectors form a landmark set, and an initialization is performed. L max The HNSW graph structure of the layer; for any landmark vector in the landmark set. v Assign it a hierarchy l v : Where: random is a uniformly random number between 0 and 1. , For the set number of floors, ; Then, according to the assigned level, the landmark vectors are inserted into the HNSW graph structure layer by layer, and multiple connections are established in each layer to form a global navigation layer of the hierarchical navigation structure.
[0013] Furthermore, the specific implementation of step (4) is as follows: S41: Select the appropriate entry point from the global navigation layer based on the diversity scoring function; S42: Search for the corresponding boundary points from the M-Tree index structure based on the dynamic radius; S43: Take the intersection of the partition to which the entry point belongs and the partition to which the boundary point belongs as the relevant partition; S44: For the query vector, perform a local HNSW search in parallel on the relevant partitions, aggregate the search results, and then perform a k-nearest neighbor search to output the final query result.
[0014] Further, in step S41, the two elements closest to the query vector are first found in the global navigation layer. k eA set Z is formed from several landmark vectors. The landmark vector in set Z that is closest to the query vector is taken as the first entry point and added to set S. For any landmark vector in set Z... v The diversity score is calculated according to the following formula: in: Landmark Vector v Diversity score, q Represents the query vector. Represents the query vector q Landmark Vector v distance, u Denotes any entry point in set S. Indicates the entry point u Landmark Vector v distance, λ As a diversity factor, k e The set number of entry points; The landmark vectors in set Z are sorted according to their diversity scores. The landmark vector with the highest diversity score is added to set S. After each addition, the diversity score is recalculated. This process is repeated to select landmark vectors from set Z and add them to set S until the size of set S reaches a certain threshold. k e indivual.
[0015] Furthermore, in step S42, the relationship between each entry point and the query vector in set S is first calculated. q The distance, taking the average value as μ The standard deviation is σ Then, the dynamic radius is calculated and determined. ,in γ The filtering threshold is used; then, based on the dynamic radius... r Search the M-Tree index structure and retrieve the values in HBN that match the query vector. q Distance less r The vector is used as the boundary point.
[0016] A computer device includes a memory and a processor, wherein the memory stores a computer program and the processor executes the computer program to implement the above-described distributed graph index nearest neighbor search method for high-dimensional spaces.
[0017] A computer-readable storage medium storing a computer program, which, when executed by a processor, implements the above-described distributed graph index nearest neighbor search method for high-dimensional spaces.
[0018] The application innovatively combines the retrieval efficiency of a graph structure with the boundary management capability of a tree structure, and specifically includes the following three key technical innovations: 1. A boundary-aware balanced partition strategy; the application quantifies the "boundary characteristics" of each node by connecting ratio measurement, and dynamically identifies high-importance boundary points by combining a multi-dimensional importance evaluation function, which solves the inherent trade-off problem between the balanced distribution of computing resources and the minimization of cross-node communication in a distributed environment.
[0019] 2. A hierarchical distributed graph-tree hybrid index architecture; the application vertically integrates a sparse global navigation layer and a fine-grained local accurate layer, the global navigation layer only contains 1-5% of the nodes as a sparse skeleton for coarse-grained routing, and the local accurate layer constructs a specific graph in each partition to achieve fine-grained retrieval, while taking advantage of the relative insensitivity of tree indexes to the curse of dimensionality in specific boundary areas, which significantly improves the cross-partition retrieval efficiency.
[0020] 3. A distributed multi-start parallel search framework; the application dynamically generates complementary entry points based on query characteristics and graph topology, realizes multi-region parallel exploration in vector space, and balances retrieval accuracy and throughput through a two-stage progressive search strategy.
[0021] Thus, the application has the following beneficial technical effects: 1. The application accurately identifies and manages high-importance boundary points through the boundary-aware balanced partition strategy, achieving dual optimization of balanced computing load and minimized communication overhead.
[0022] 2. The application uses a hierarchical hybrid index architecture to fully utilize the efficient retrieval capability of a graph structure and the boundary management advantage of a tree structure, significantly reducing memory occupancy.
[0023] 3. The application designs a distributed multi-start parallel search framework, which significantly improves query efficiency while ensuring high recall rate through dynamic entry point selection and a two-stage progressive strategy.
[0024] 4. The application provides a complete cost model and optimization strategy, which facilitates the tuning of system parameters according to actual application scenarios, and has good scalability and practicality. BRIEF DESCRIPTION OF DRAWINGS
[0025] Figure 1 Figure 1 is a schematic diagram of the overall framework of the distributed graph index in the embodiment of the application.
[0026] Figure 2 Figure 2 is a schematic diagram of the three-layer distributed graph index structure in the embodiment of the application.
[0027] Figure 3 Figure 3 is a flowchart of the boundary-aware balanced partition in the embodiment of the application.
[0028] Figure 4 A flowchart of the construction process of the global navigation layer and the local accurate layer in the embodiment of the present application.
[0029] Figure 5 A flowchart of the distributed query processing in the embodiment of the present application. DETAILED DESCRIPTION
[0030] In order to describe the present application more specifically, the technical solutions of the present application are described in detail below in combination with the drawings and specific embodiments.
[0031] The embodiment takes an image retrieval system as a specific application scenario, and applies the distributed graph index nearest neighbor search method of the present application to a large-scale visual feature retrieval task.
[0032] In image retrieval, each picture is extracted as a high-dimensional feature vector by a deep neural network, and the vector represents the semantic and visual features of the image. If the system contains hundreds of millions to billions of pictures, a high-dimensional feature database of millions to billions of levels can be formed. At this time, each image feature vector corresponds to a "high-dimensional vector" in the method of the present application, and the entire database constitutes a "high-dimensional data set". When querying, a picture uploaded by a user is extracted to obtain a "query vector". The distributed running environment of the system is composed of a master node and multiple worker nodes, corresponding to a distributed storage and computing cluster of the image database.
[0033] In this actual task, the boundary-aware partitioning strategy of the present application can divide the huge image feature data into multiple worker nodes, and automatically identify the "boundary vectors" frequently connected across partitions to minimize the cross-node communication volume. The hierarchical hybrid index architecture can build a sparse global navigation layer on the master node to realize fast routing and coarse-grained search, and then build a local accurate layer on each worker node to realize high-precision similarity retrieval. The distributed multi-start parallel search framework supports parallel search of multiple candidate entry points, which significantly improves the query throughput and response speed.
[0034] Through the above design, the present application can accurately find the most similar candidate results to the query image from a billion-level feature database in the image retrieval task, taking into account high precision and high concurrency performance. At the same time, the technical solutions of the present application can also be extended to other fields requiring high-dimensional vector retrieval, such as social network recommendation (taking user interest vectors as retrieval objects), e-commerce personalized recommendation (taking product feature vectors as retrieval objects), medical image similar case search, biometric identification, etc., and have wide industrial applicability and practical application value.
[0035] The overall framework of the distributed graph index in the embodiment is as follows: Figure 1As shown, the system is applied to large-scale high-dimensional vector image retrieval scenarios, including a data partition module, an index construction module, a query processing module, and a cost optimization model, wherein the data partition module adopts a boundary-aware balanced partition strategy, the index construction module implements a hierarchical index architecture, the query processing module provides a multi-start point parallel search framework, and the cost optimization model is responsible for adaptive tuning of system parameters. The specific implementation process steps of the distributed graph index nearest neighbor search method of the embodiment are as follows: Step S1: system initialization and data acquisition.
[0036] In the specific implementation process, first, a high-dimensional vector dataset is acquired, wherein each vector v , i ∈R d , d is the vector dimension, and n is the dataset size. In actual applications, the value range of d is 128 to 960 dimensions, and the size of n ranges from millions to billions. For example, in an image retrieval system, d = 256 represents the image feature dimension extracted by deep learning, n = 10 9 represents the feature vector of one billion images.
[0037] A distributed computing environment is constructed, including 1 master node and m worker nodes, the master node is responsible for global coordination, partition management, and query routing; the worker node is responsible for local index construction and query execution; a distance function is defined to measure the similarity between vectors, supporting multiple metrics such as Euclidean distance and cosine similarity.
[0038] Step S2: boundary-aware balanced partition.
[0039] The specific implementation process of this step is as shown in Figure 3 : S21: input the original dataset D , use the KaFFPa algorithm for initial partitioning to obtain m initial partitions ; KaFFPa uses a multi-level graph contraction strategy to minimize edge cuts while ensuring that the size difference between each partition does not exceed 3%.
[0040] S22: construct a k-nearest neighbor graph G( D , E ), wherein the edge set represents the connection relationship between each vector and its k nearest neighbors; in this embodiment, kSet it to 20 to use an approximation algorithm to speed up the construction process.
[0041] S23: Calculate each vector v Connection ratio B ( v = (Number of cross-partition connections / Total number of connections) = (Number of cross-partition connections) / (Total number of connections). Iterate through all vectors and count their number of cross-partition connections. and total connection The connection ratio quantifies the frequency with which a vector participates in cross-partition operations, B( v The higher the value, the more likely the vector is to participate in cross-partition queries, resulting in heavier communication overhead.
[0042] S24: Identify high-importance boundary points. Set a threshold. τ =0.7, which will satisfy B( v )> τ Add the vector to the set Experiments show that HBN typically accounts for 1-5% of the dataset, and the vectors in this dataset incur higher communication costs due to their special role in cross-partition operations.
[0043] S25: Construct an M-Tree index structure to manage boundary points. Each internal node maintains a routing object and coverage radius, utilizing the tree structure's efficient pruning capabilities in the boundary region.
[0044] S26: Finally, remove the boundary points from the original partitions and output the final partitions. ,in .
[0045] Step S3: Construct as follows Figure 2 The hierarchical index structure shown.
[0046] S31: Global Navigation Layer Construction: On the master node, 1-5% of the vectors from the dataset are sampled as landmark vectors to construct a sparse HNSW graph; this layer serves as the global routing skeleton and is distributed to all worker nodes through Spark broadcast variables, transforming the traditional point-to-point communication mode into an efficient broadcast mode.
[0047] S32: Boundary Management Tree Construction: An M-Tree index is constructed on the identified set of highly important boundary points (HBN), stored in the master node, and broadcast to worker nodes for efficient pruning across partition queries. The M-Tree is a metric space index structure that defines spherical regions through hierarchical routing objects and coverage radii, supporting efficient distance-based pruning. Each internal node maintains a routing object and coverage radius, facilitating distance pruning in cross-partition search operations.
[0048] S33: Locally Precise Layer Construction: At each working node N i Above is the local partition D. iConstructing local HNSW graph G i and identifying entry point set EP i Establish connection with global navigation layer.
[0049] The construction process of the global navigation layer is shown in Figure 4 : from each partition D i Proportion η = 0.03 hierarchical sampling landmark vector set to form landmark set L , to ensure the coverage of the entire vector space while minimizing redundancy, the number of samples and . Initialize an L max = 16 layers of empty HNSW structure, assign each landmark vector v ∈ L , level , where . From level l v to 0, insert layer by layer, and establish M = 16 connections per layer; after optimizing the graph connection, broadcast the global navigation graph to all worker nodes.
[0050] The construction process of the local accurate layer is shown in Figure 4 : on each worker node, construct a local HNSW graph G i for partition D i , assign a random level to each vector and insert it layer by layer; identify vectors in partition D i with a distance less than θ to the landmark as entry points EP i , where θ is twice the average nearest neighbor distance, establish a mapping relationship between the entry points and the corresponding landmarks, and these entry points establish the key connection between the global navigation layer and the local accurate layer; construct a multi-layer graph structure for the vectors within the partition according to the HNSW algorithm, ensuring the local high-precision retrieval capability.
[0051] Step S4: Distributed query processing.
[0052] The present embodiment performs three-stage parallel query processing on query vector q as shown in Figure 5 : S41: Entry point selection stage. Find 2x k e nearest landmarks in the global navigation graph, select the nearest landmark as the first entry point, and use the diversity score function to select subsequent entry points, where S is the set of selected entry points, λ= 0.5; each worker node filters the entry point according to local relevance, and implements distributed parallel execution.
[0053] S42: partition filtering phase. Calculate dynamic search radius wherein μ is the average distance, σ is the standard deviation, γ = 2.0, perform range search on relevant boundary points in the boundary tree, and take the intersection of the partition to which the entry point belongs and the partition to which the boundary point belongs as the relevant partition P r .
[0054] S43: accurate search phase. Perform local HNSW search on the relevant partition in parallel, collect the candidate results of each partition into a global candidate list; determine whether boundary verification is needed according to the quality of the candidate, calculate the accurate distance, and select the final k nearest neighbors through a priority queue.
[0055] S44: result aggregation. Return the final k nearest neighbor result set.
[0056] Step S5: cost optimization.
[0057] The system optimizes query performance through a cost model. The calculation cost includes global pruning and local search , and communication cost wherein O represents time complexity, P prune represents the probability of pruning the partition, N w is the number of worker nodes; the total query time is the sum of the calculation cost and the communication cost, and the overall query performance is optimized by adjusting the number of partitions m Experiments show that the best performance is achieved when m = 8.
[0058] The above description of the embodiments is for the purpose of facilitating understanding and application of the present application by those of ordinary skill in the art. Those skilled in the art can easily make various modifications to the above embodiments, and apply the general principles described herein to other embodiments without inventive labor. Therefore, the present application is not limited to the above embodiments, and improvements and modifications made to the present application by those skilled in the art based on the disclosure of the present application should be within the scope of protection of the present application.
Claims
1. A distributed graph index nearest neighbor search method for high dimensional space, characterized in that, The method comprises the following steps: (1) obtaining a high-dimensional data set, and constructing a distributed computing environment composed of one master node and multiple worker nodes; (2) performing a balanced partition operation based on boundary perception on the high-dimensional data set; (3) constructing a hierarchical index structure according to the partition result; (4) performing a distributed multi-start parallel search based on the hierarchical index structure.
2. The method of claim 1, wherein the method is a distributed graph index nearest neighbor search method for high-dimensional spaces. The high-dimensional data set in the step (1) contains n vectors, each vector has a dimension of d , d a value range of 128 to 960 dimensions, n a scale from millions to billions; the master node in the distributed computing environment is responsible for global coordination, partition management and query routing, and the worker node is responsible for local index construction and query execution.
3. The method of claim 1, wherein the high-dimensional space-oriented distributed graph index nearest neighbor search method is characterized by, The specific implementation of step (2) is as follows: S21: input a high-dimensional data set, partition it using the KaFFPa algorithm to obtain m an initial partition, m is the number of worker nodes; S22: constructing a k-nearest neighbor graph based on the high-dimensional data set to determine the connection relationship between vectors; S23: calculating the connection ratio of each vector in the high-dimensional data set = the number of cross-partition connections / total connections; S24: including vectors with a connection ratio higher than a set threshold in the HBN; S25: removing vectors belonging to the HBN from the initial partition, and outputting the final partition result.
4. The method of claim 1, wherein the high-dimensional space-oriented distributed graph index nearest neighbor search method is characterized by, The specific implementation of step (3) is as follows: S31: constructing a global navigation layer based on the high-dimensional data set on the master node, which serves as a global routing skeleton, and encapsulating the global navigation layer as a Spark broadcast variable to be distributed to all worker nodes; S32: constructing an M-Tree index structure based on the HBN, wherein the internal nodes of the M-Tree index structure are used to maintain routing objects and coverage radii; storing the M-Tree index structure on the master node and broadcasting the M-Tree index structure to the worker nodes for distance pruning in cross-partition query operations; S33: constructing a local HNSW graph structure for the corresponding partition on each worker node, assigning random levels to the vectors in the partition, and inserting the vectors into the local HNSW graph structure layer by layer to form a local accurate layer.
5. The method of claim 4, wherein the high-dimensional space-oriented distributed graph index nearest neighbor search method is characterized by, The specific implementation of constructing the global navigation layer in the step S31 is as follows: firstly, a certain proportion of vector groups are randomly sampled from each subarea to constitute a landmark set, an HNSW graph structure of a layer is initialized, and a hierarchical level of each landmark vector in the landmark set is assigned. η max L v v l wherein: random is a uniform random number between 0 and 1, is the set number of layers, ; Then, according to the assigned levels, the landmark vectors are inserted into the HNSW graph structure layer by layer, and multiple connections are established at each layer to form a global navigation layer of the hierarchical navigation structure.
6. The method of claim 1, wherein, The specific implementation of step (4) is as follows: S41: selecting a corresponding entry point from the global navigation layer based on a diversity score function; S42: searching for a corresponding boundary point from the M-Tree index structure based on a dynamic radius; S43: taking the intersection of the partition to which the entry point belongs and the partition to which the boundary point belongs as a relevant partition; S44: for a query vector, performing a local HNSW search on the relevant partition in parallel, and then performing a k-nearest neighbor search on the search results to output the final query result.
7. The method of claim 6, wherein: The step S41 first finds 2 k e landmark vectors in the global navigation layer that are closest to the query vector, and takes the landmark vector in the set Z that is closest to the query vector as the first entry point and puts it into the set S. For any landmark vector in the set Z v , its diversity score is calculated according to the following formula: wherein: is a landmark vector v is a diversity score of the landmark vector, q denotes a query vector, denotes a query vector q is a distance of the query vector v from the landmark vector, u denotes any entry point in the set S, denotes an entry point u is a distance of the entry point v from the landmark vector, λ is a diversity factor, k e is a set number of entry points; According to the size of the diversity score, the landmark vectors in the set Z are sorted, and the landmark vector with the highest diversity score is put into the set S, after each time, the diversity score is recalculated, and the landmark vectors are continuously selected from the set Z into the set S according to this until the size of the set S reaches k e .
8. The method of claim 7, wherein: In step S42, the relationship between each entry point and the query vector in set S is first calculated. q The distance, taking the average value as μ The standard deviation is σ Then, the dynamic radius is calculated and determined. ,in γ The filtering threshold is used; then, based on the dynamic radius... r Search the M-Tree index structure and retrieve the values in HBN that match the query vector. q Distance less r The vector is used as the boundary point.
9. A computer device comprising a memory and a processor, said memory having stored therein a computer program, characterized in that: The processor is configured to execute the computer program to implement the high-dimensional space-oriented distributed graph index nearest neighbor search method according to any one of claims 1-8.
10. A computer readable storage medium storing a computer program, characterized in that: The computer program is configured to be executed by the processor to implement the high-dimensional space-oriented distributed graph index nearest neighbor search method according to any one of claims 1-8.
Citation Information
Patent Citations
Distributed indexing method for large-scale high-dimensional spatial data
CN106095920A
Approximate nearest neighbor search method based on hierarchical navigable small world map
CN110008256A
High-dimensional space vector dynamic nearest neighbor search method based on tree-graph structure
CN118964364A
High-dimensional vector approximate nearest neighbor retrieval method for persistent storage
CN119719828A
Distance perception-based graph division retrieval method and system and readable storage medium
CN119988694A
Cited By
Graph vector index construction method and device based on GPU and storage medium
CN121807861A
