Elastic Vector Memory Pool Sizing for HNSW Index Workloads

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Sizing the vector memory pool for vector databases is difficult due to the need for accurate estimation of HNSW index size, leading to inefficient memory allocation and potential performance issues in serverless and multi-tenant environments.

Innovation Solution

Implementing an elastic vector index memory pool that automatically grows and shrinks based on demand, using SGA granules to manage memory allocation efficiently and minimize disruptions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a fixed-size vector memory pool is allocated in advance, then memory allocation is simple and fast, but memory usage is inefficient and performance suffers when workload changes

Engineering Contradiction:
Improvevector index operation efficiencyVSAvoidmemory allocation efficiency
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The patent implements a dynamic memory pool that automatically adjusts its size based on workload demands. The memory pool grows when vector index operations require more memory and shrinks when memory is released, eliminating the need for fixed pre-allocation while maintaining efficient memory usage. This dynamic behavior resolves the contradiction between simple allocation and efficient memory utilization.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the memory pool size parameter dynamically based on operational needs. Instead of maintaining a constant memory allocation, the system adjusts the memory pool capacity up or down depending on the current workload, thereby optimizing both memory efficiency and operational performance without complex allocation logic.

Inventive Principle:
Principle #35Parameter changes

2Ease of manufacture

If memory is pre-allocated for vector indexes, then allocation is straightforward, but unnecessary memory is wasted in serverless and multi-tenant environments

Engineering Contradiction:
Improvememory allocation simplicityVSAvoidmemory usage efficiency
Core Design Contradiction:
Ease of manufactureVSQuantity of substance

Solution Approach 1:

The memory pool implements self-service by automatically managing its own size and allocation. It monitors its own usage and adjusts capacity without external intervention, combining the simplicity of automatic management with the efficiency of precise memory utilization. This eliminates both the complexity of manual management and the waste of pre-allocation.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The dynamic memory pool serves multiple functions: it acts as a simple automatic allocator like a fixed pool, while simultaneously optimizing memory usage like a manually managed pool. This multi-functionality allows it to operate efficiently in diverse environments including serverless and multi-tenant architectures without requiring environment-specific configuration.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Adaptability or versatility

If the vector memory pool size is increased to accommodate growth, then future expansion is supported, but immediate memory availability is reduced

Engineering Contradiction:
Improvememory pool scalabilityVSAvoidavailable memory for other processes
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The patent employs a dynamic memory pool that adjusts its size in real-time based on actual usage patterns. When memory is needed for vector index operations, the pool expands automatically; when operations complete and memory is released, the pool contracts. This dynamic adaptation ensures memory is available when needed without permanently reserving excessive amounts that would be unavailable to other processes.

Inventive Principle:
Principle #15Dynamics

4Quantity of substance

If manual memory management is implemented, then memory allocation is optimized, but system complexity and disruption increase

Engineering Contradiction:
Improvememory allocation precisionVSAvoidmemory management complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The memory pool manages itself through automatic size adjustment based on workload demands. It monitors its own state, determines when expansion or contraction is needed, and executes these adjustments without external control. This self-service mechanism achieves the memory allocation precision of manual management while eliminating its complexity and potential for disruption.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS20260072891A1Elastic vector index memory pool size for a vector database
Publication Date: 2026.03.12 ORACLE INT CORP
  • US20260072891A1 patent drawing
  • US20260072891A1 patent drawing
  • US20260072891A1 patent drawing

AI summary

A size of a neighbor graph vector index can be estimated. The neighbor graph vector index can be an index of neighbor vertices for a graph-based approximate nearest neighbor search in a vector database. A vector memory pool size of a vector memory pool in a database instance memory can be determined based on the estimated size of the neighbor graph vector index. The database instance memory contains data and control information for a database instance. The neighbor graph vector index can be stored in the vector memory pool. An operation affecting available space in the database instance memory can be detected. The vector memory pool size can be automatically adjusted in response to detecting the operation.