Vector Embedding Data Storage for Distributed Availability

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data storage systems face challenges in efficiently managing data across multiple storage nodes and ensuring high availability and reliability, particularly in cloud-based storage systems.

Innovation Solution

The proposed solution involves a data storage system that utilizes vector embeddings to store and retrieve data, allowing for efficient data management across multiple storage nodes. This system includes a storage cluster with multiple storage nodes, each equipped with non-volatile solid state storage units, and a cloud-based storage system that leverages cloud services providers for enhanced data management and availability.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If data is stored across multiple storage nodes in a distributed system, then availability and reliability are improved, but system complexity increases

Engineering Contradiction:
Improvedata availabilityVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments data into multiple shards that are distributed across different storage nodes. Each shard is independently stored and can be accessed, allowing the system to maintain high availability while managing complexity through modular data organization. The segmentation principle is applied to divide large datasets into manageable units that can be independently managed across the distributed system.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary indexing system that maps data identifiers to their physical locations across storage nodes. This intermediary layer simplifies access operations by handling the complexity of data location resolution, allowing clients to access distributed data through simple key-based operations without directly managing the underlying distribution complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If vector embeddings are used to store unstructured data, then data retrieval efficiency is improved, but storage space requirements increase

Engineering Contradiction:
Improvedata retrieval efficiencyVSAvoidstorage space
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent creates compressed representations (copies) of unstructured data in the form of vector embeddings. Instead of storing the original large unstructured data, the system stores compact vector representations that capture the essential semantic information. These vector copies enable efficient similarity searches and data retrieval while significantly reducing the storage space required compared to storing the complete original data.

Inventive Principle:
Principle #26Copying

3Adaptability or versatility

If cloud-based storage services are leveraged, then scalability is improved, but dependency on external services increases

Engineering Contradiction:
ImprovescalabilityVSAvoidservice dependency
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent designs a storage system that can operate with multiple backend storage services, making the system universal and adaptable to different cloud providers or on-premises storage solutions. The architecture allows the same data management logic to work across different storage backends, providing scalability benefits while reducing dependency on any single external service through multi-provider compatibility.

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

Data Source

PatentUS20250036291A1Storing And Retrieving Data Using Vector Embeddings
Publication Date: 2025.01.30 PURE STORAGE INC
  • US20250036291A1 patent drawing
  • US20250036291A1 patent drawing
  • US20250036291A1 patent drawing

AI summary

Storing and retrieving data using vector embeddings, including: receiving a request to store a data object in an object store; generating, based on the data object, a vector embedding for the data object; and storing, in the object store, the data object and the vector embedding for the data object.