PIM Vector Indexing With Sheet-Based Tenant Memory Layouts
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing vector databases (DBs) face challenges in efficiently performing vector indexing due to limited implementation of Processing-in-Memory (PIM) architecture, which is hindered by memory layout variability and the need for methods supporting multitenancy, access control, backup/recovery, and scalability for multiple queries.
Innovation Solution
Implementing a method and device that utilize PIM for vector indexing by using sheet-level management, tenant-sheet mapping, and multi-query response, including projection and locality-sensitive hashing (LSH) operations to accelerate vector indexing, data access, and support multitenancy and backup/recovery.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If PIM architecture is implemented for vector indexing operations, then processing speed and efficiency are improved, but memory layout variability and implementation complexity increase
Solution Approach 1:
The patent divides the memory space into multiple sheets, each sheet containing multiple buckets. This segmentation allows independent management of different data portions, simplifying the overall memory layout complexity while enabling parallel processing operations that improve vector indexing speed.
Solution Approach 2:
The patent performs preliminary projection operations on embedding vectors before storing them in the memory structure. By pre-processing the vectors and organizing them into projected vector form, the system reduces the complexity of subsequent indexing operations and enables faster retrieval without complex real-time computations.
2Productivity
If PIM is used for matrix-vector multiplication operations, then computational performance is improved, but support for multitenancy and access control becomes more difficult
Solution Approach 1:
The patent implements multitenancy by dividing the memory into multiple tenant-specific areas within sheets. Each tenant's data is organized in dedicated buckets, allowing independent access control and isolation while maintaining the high-performance PIM architecture for matrix-vector multiplication operations.
Solution Approach 2:
The patent applies different access control policies and memory management strategies to different tenant areas within the same memory structure. Each tenant's data region has customized access permissions and organizational characteristics, enabling versatile multitenancy support while preserving overall system performance.
3Reliability
If comprehensive data management features (access control, backup/recovery, scalability) are implemented, then system reliability is improved, but device complexity increases
Solution Approach 1:
The patent designs a universal sheet-bucket memory structure that simultaneously supports multiple functions: access control through tenant-specific buckets, backup/recovery through redundant bucket organization, and scalability through hierarchical expansion. This multi-functional design improves reliability without proportionally increasing complexity.
Solution Approach 2:
The patent implements a nested hierarchical structure where sheets contain multiple buckets, and buckets contain projected vectors. This nesting allows systematic organization of data management features at different levels, enabling reliable access control, backup, and scalability while maintaining manageable complexity through hierarchical abstraction.
Data Source
AI summary
The present disclosure relates to a method, a device, and a computer program for accelerating vector indexing by using PIM. The present disclosure presents a method for accelerating vector indexing by using PIM, the method including: receiving at least one embedding vector and at least one piece of tenant information; mapping a tenant area determined by the tenant information to a sheet; obtaining a first projected vector by performing, based on the sheet, a projection operation on the embedding vector; comparing the similarity between the first projected vector and at least one bucket, based on the sheet; and selecting, based on the similarity comparison result, at least one second projected vector having relatively high similarity to the first projected vector within the bucket.


