Universal Storage Client for Multi-System Availability

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing storage clients often limit access to a single back-end storage system and suffer from significant performance issues, particularly in cloud environments due to latency and potential unavailability caused by failures or network problems.

Innovation Solution

Implementing an enhanced storage client with a universal interface that allows communication with multiple storage services, enabling delta encoding, caching, and encryption, while providing a cloud storage manager to optimize latency and availability by handling multiple back-end systems and adapting to connectivity issues.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a storage client is designed to work with a single back-end storage system, then the client implementation is simple and focused, but the system lacks availability and performance when the storage system becomes unavailable or experiences network problems

Engineering Contradiction:
Improvestorage system availabilityVSAvoidclient implementation complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The storage client is segmented into multiple independent storage client instances, each capable of working with a different back-end storage system. This allows the system to distribute storage operations across multiple systems, improving availability while keeping each individual client instance relatively simple.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The storage client is designed with universal interfaces that can work with multiple types of back-end storage systems (cloud-based, on-premises, different storage protocols). This multi-functionality allows a single client design to adapt to various storage back-ends, improving reliability without requiring completely different client implementations for each system.

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

2Adaptability or versatility

If a storage client communicates remotely with cloud servers, then access to cloud storage services is enabled, but latency increases significantly (tens or hundreds of milliseconds)

Engineering Contradiction:
Improvecloud storage service accessVSAvoidstorage access latency
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The system performs preliminary actions by caching storage data and metadata locally at the client side before remote access is needed. This allows frequently accessed data to be retrieved from local cache rather than requiring remote cloud server access, significantly reducing latency while maintaining cloud storage service capabilities.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

A local storage cache acts as an intermediary between the storage client and remote cloud servers. This intermediary layer handles read requests locally when possible, reducing the need for direct client-server communication and thereby reducing latency while still enabling cloud storage access when needed.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If delta encoding is implemented in the storage client, then network bandwidth usage is reduced and storage efficiency is improved, but the client processing overhead increases

Engineering Contradiction:
Improvestorage efficiencyVSAvoidclient processing complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The storage client performs delta encoding independently without requiring complex server-side processing. By implementing self-service delta encoding at the client, the system improves storage efficiency and reduces network bandwidth usage while keeping the processing logic contained within the client application layer.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS10701172B2Clients for storage services
Publication Date: 2020.06.30 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10701172B2 patent drawing
  • US10701172B2 patent drawing
  • US10701172B2 patent drawing

AI summary

A computer-implemented method, system, and computer program product, for enhanced storage clients. The computer-implemented method includes implementing an interface within a storage client, wherein the interface specifies at least one method or function to be implemented in a computer language for accessing each of a plurality of storage services through the interface. The storage client receives a request from an application, wherein the request is compatible with the interface. The storage client has an ability to communicate with each of the plurality of storage services to satisfy the request. The storage client communicates with at least one of the plurality of storage services to satisfy the request.