Vector Search Request Pipelining for Multiple Outstanding Queries

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing vector database systems experience idle time and reduced hardware resource utilization due to dependency on vector index hosts during vector search processing, leading to inefficiencies in handling multiple outstanding vector requests.

Innovation Solution

Implementing a method that allows the vector index host to transmit multiple search requests to vector search hardware concurrently, reducing dependency on the vector index host and eliminating idle time by scheduling and batching search tasks efficiently.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the vector search hardware waits for response from vector index host before processing next search request, then the dependency on vector index host is maintained, but idle time increases and hardware resource utilization decreases

Engineering Contradiction:
Improvedependency managementVSAvoidhardware resource utilization
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The vector search hardware performs preliminary actions by pre-processing search requests and maintaining an outstanding request queue before receiving responses from the vector index host. This allows the hardware to be ready to process subsequent requests immediately, eliminating idle waiting time and improving resource utilization while maintaining proper dependency management through the queue structure.

Inventive Principle:
Principle #10Preliminary action

2Device complexity

If the vector index host processes requests sequentially, then dependency control is simplified, but idle time increases and search efficiency decreases

Engineering Contradiction:
Improvedependency controlVSAvoididle time
Core Design Contradiction:
Device complexityVSLoss of time

Solution Approach 1:

The system implements continuous useful action by maintaining a pipeline where the vector index host continuously sends search requests to the vector search hardware without idle gaps. The hardware processes requests continuously from the outstanding queue, ensuring that both components remain actively engaged in productive work, thereby eliminating idle time while managing dependency through the queue mechanism.

Inventive Principle:
Principle #20Continuity of useful action

3Productivity

If multiple search requests are transmitted concurrently to vector search hardware, then hardware resource utilization improves, but complexity of managing outstanding requests increases

Engineering Contradiction:
Improvehardware resource utilizationVSAvoidrequest management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system segments the request management process by dividing outstanding requests into discrete, manageable units in a queue structure. Each search request is treated as an independent segment that can be tracked, processed, and responded to individually. This segmentation reduces the perceived complexity by breaking down the management of multiple concurrent requests into smaller, organized units that are easier to handle systematically.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS20250363098A1Method and apparatus for supporting multiple outstanding vector requests in vector database
Publication Date: 2025.11.27 D NOTITIA INC
  • US20250363098A1 patent drawing
  • US20250363098A1 patent drawing
  • US20250363098A1 patent drawing

AI summary

A method of processing multiple outstanding vector requests in a vector search system includes transmitting, by an apparatus for executing a vector index host, one or more queries to an apparatus for executing a vector search upon receiving the one or more queries; creating, by the apparatus for executing a vector index host, a candidate node list for searching the queries, for each of the queries; confirming, by the apparatus for executing a vector index host, a multiple-search counting number, selecting one or more search target nodes from the candidate node list, and transmitting a search request with respect to neighbor nodes of the search target node to the apparatus for executing the vector search; and transmitting, by the apparatus for executing a vector search, a search result for the search request to the apparatus for executing a vector index host.