Client Backup Grouping With Intermediate Shared Storage
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current backup systems face challenges in efficiently backing up data from clients with intermittent network connections and servers with varying availability, as they cannot perform backups when connections are unavailable and struggle with global space reduction due to disconnected clients.
Innovation Solution
Implementing a system where clients perform space reduction on their own data and store it in intermediate shared storage when connected, allowing for opportunistic global space reduction, with intermediate servers managing and retrieving data when convenient, independent of client and server connectivity.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If backup applications store copies of data in remote locations using network connections, then data backup capability is improved, but the system cannot perform backups when network connections are unavailable
Solution Approach 1:
The backup system is segmented into multiple independent components: clients perform local space reduction on their own data, intermediate shared storage holds data independently, and servers perform global space reduction when available. This segmentation allows each component to operate autonomously, enabling the system to function even when network connections are intermittent or unavailable between certain components.
Solution Approach 2:
An intermediate shared storage component is introduced as a mediator between clients and servers. Clients can store space-reduced data in this intermediate storage without requiring server availability, and servers can later retrieve data from intermediate storage when connected. This intermediary buffer decouples the dependency between clients and servers, allowing the system to handle intermittent connections effectively.
2Quantity of substance
If backup applications perform global space reduction, then storage efficiency is improved, but disconnected clients prevent effective global space reduction
Solution Approach 1:
Clients perform space reduction on their own data before storing it in intermediate shared storage, even when servers are unavailable. This preliminary local space reduction achieves immediate storage efficiency benefits without requiring server presence. Later, when servers are connected, they can perform additional global space reduction by comparing data across multiple clients, achieving enhanced storage efficiency when conditions permit.
Solution Approach 2:
The system implements dynamic space reduction strategies that adapt to connection availability. When servers are connected, global space reduction operates across all clients for maximum efficiency. When servers are disconnected, the system gracefully degrades to rely on client-performed local space reduction, maintaining continuous functionality and achieving whatever space reduction is possible under current conditions.
3Reliability
If clients with intermittent connections perform backups, then data availability is improved, but bandwidth requirements increase due to repeated data transmission
Solution Approach 1:
Clients perform space reduction on their data before transmission to intermediate shared storage, compressing the data locally before it enters the network. This preliminary compression reduces the amount of data that needs to be transmitted over the network, thereby reducing bandwidth consumption while maintaining data availability.
Solution Approach 2:
The system stores space-reduced data in intermediate shared storage, allowing clients to retrieve only the specific data they need when connected. Rather than repeatedly transmitting complete data sets, the system discards redundant transmissions by having clients retrieve only necessary portions from the intermediate storage, reducing overall bandwidth consumption.
Data Source
AI summary
A method, article of manufacture, and apparatus for efficiently backing up information are disclosed. In an embodiment, this may comprise receiving information about a plurality of clients, grouping clients into client groups based on the information, transmitting data from a client group to an intermediate shared storage at a time convenient for the client group, transferring the data to a server, and storing the data in a server storage.


