Cloud Storage Data Placement Using Erasure Coding
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Cloud-based storage systems face issues such as network outages, data-center outages, hardware reliability problems, and provider bankruptcy, which negatively impact user experience and require improved performance and reliability, especially when combined with traditional enterprise-based storage systems.
Innovation Solution
A server-side method that directs client devices to store data objects in suitable storage systems based on data-placement policies, using error-correction algorithms like Reed-Solomon erasure-coding and layered-coding for optimized data placement and access, considering factors like uptime, bandwidth, cost, location, and device characteristics, and manages data migration across systems.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If data is stored in cloud-based storage systems, then storage capacity and accessibility are improved, but reliability and availability deteriorate due to network outages, data-center outages, hardware failures, and provider bankruptcy
Solution Approach 1:
The patent segments data into multiple data blocks and disperses them across multiple storage systems including both cloud-based and enterprise-based storage. This segmentation allows the system to tolerate failures in individual storage systems while maintaining data availability through reconstruction from remaining blocks.
Solution Approach 2:
The patent applies local quality by placing different data blocks in different storage systems based on their characteristics. Enterprise-based storage systems are used for frequently accessed data requiring high availability, while cloud-based storage is used for less critical data, optimizing both reliability and cost.
2Reliability
If data is replicated across multiple storage systems, then reliability is improved, but storage efficiency and cost deteriorate
Solution Approach 1:
The patent changes the parameter from full replication to erasure coding with configurable redundancy levels. Instead of storing complete copies of data, the system uses mathematical encoding to create redundant data blocks, allowing flexible adjustment of the reliability-efficiency tradeoff through parameter settings.
Solution Approach 2:
The patent uses a form of copying through erasure coding where data is transformed into encoded blocks that can be reconstructed. Rather than simple duplication, this creates compact redundant representations that maintain reliability while improving storage efficiency compared to traditional replication.
3Reliability
If data is stored on enterprise-based storage systems, then reliability and performance are improved, but cost deteriorates
Solution Approach 1:
The patent implements dynamic data placement that automatically adjusts which storage systems hold which data blocks based on current access patterns, reliability requirements, and cost considerations. The system can migrate data between cloud and enterprise storage as conditions change, optimizing the cost-reliability balance dynamically.
Solution Approach 2:
The patent applies local quality by assigning different data blocks to different storage tiers based on their access requirements. Frequently accessed critical data is placed on enterprise-based storage for high reliability, while less critical data is placed on cloud storage for cost efficiency.
4Adaptability or versatility
If cloud-based storage is used, then accessibility and scalability are improved, but performance and latency deteriorate due to network issues
Solution Approach 1:
The patent segments data so that frequently accessed portions can be placed on local enterprise storage while less frequently accessed data remains in cloud storage. This segmentation allows the system to maintain high accessibility through cloud while optimizing access speed for critical data through local caching.
Data Source
AI summary
A computer-implemented method for using cloud-based storage to optimize data-storage operations may include: 1) receiving a request from a client device for instructions or directions for storing a data object, 2) accessing a data-placement policy that contains criteria for identifying storage systems suitable for storing the data object, 3) identifying, based at least in part on the data-placement policy, a plurality of storage systems for storing the data object, at least one of the storage systems including a third-party Internet-based storage system, and then 4) directing the client device to store the data object on the identified storage systems.


