Dynamic Storage Parameter Optimization for Distributed File Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Large-scale distributed storage systems face challenges in optimizing file storage parameters such as replication, encoding, stripe width, and backup schedules to balance cost, performance, and reliability, often requiring manual configuration by developers who lack understanding of optimal settings.

Innovation Solution

A system and method that programmatically determine preferred storage parameters by analyzing file access patterns, system characteristics, and historical data to optimize file storage, predicting future reliability and costs, and automatically adjusting settings to minimize costs while meeting desired availability and reliability requirements.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If files are replicated across multiple storage devices to improve availability and reliability, then file access reliability is improved, but storage cost increases

Engineering Contradiction:
Improvefile availabilityVSAvoidstorage cost
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The system dynamically adjusts replication parameters (number of replicas, encoding level, stripe width) based on file characteristics, access patterns, and system state. Files are classified into categories (e.g., hot, warm, cold) and assigned different replication levels accordingly, optimizing the balance between availability and storage cost.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent implements dynamic parameter adjustment where storage parameters are not fixed but adapt over time based on changing file access patterns, system load, and reliability requirements. The system continuously monitors and re-optimizes replication factors and encoding schemes to match current conditions.

Inventive Principle:
Principle #15Dynamics

2Productivity

If stripe width is increased to improve write performance, then productivity is improved, but file access time may worsen for small files

Engineering Contradiction:
Improvewrite speedVSAvoidaccess time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The system adjusts stripe width as a variable parameter based on file size and access patterns. For large files, wider stripes improve parallel write performance. For small files or frequently accessed files, the system reduces stripe width or uses different encoding schemes to minimize access latency. This dynamic parameter adjustment resolves the contradiction between write speed and access time.

Inventive Principle:
Principle #35Parameter changes

3Manufacturing precision

If manual configuration of storage parameters is used to optimize performance, then manufacturing precision is improved, but device complexity increases due to developer burden

Engineering Contradiction:
Improveparameter optimizationVSAvoidconfiguration complexity
Core Design Contradiction:
Manufacturing precisionVSDevice complexity

Solution Approach 1:

The system automatically performs parameter optimization without requiring manual developer intervention. It self-monitors file access patterns, system performance metrics, and reliability statistics, then autonomously adjusts replication factors, encoding levels, and stripe widths. This eliminates the complexity of manual configuration while maintaining optimal performance through automated decision-making algorithms.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent implements continuous feedback loops where the system monitors the effects of storage parameter configurations on performance and reliability, then uses this feedback to automatically adjust parameters. The system learns from observed patterns and continuously optimizes settings, replacing manual tuning with automated closed-loop control.

Inventive Principle:
Principle #23Feedback

4Reliability

If more code chunks are stored to improve error recovery capability, then reliability is improved, but storage capacity required increases

Engineering Contradiction:
Improveerror recoveryVSAvoidstorage capacity
Core Design Contradiction:
ReliabilityVSVolume of stationary object

Solution Approach 1:

The system dynamically adjusts the encoding parameter (k, m) that determines the ratio of data chunks to code chunks. Based on file importance, access patterns, and system reliability statistics, the system selects optimal encoding schemes that provide sufficient error recovery capability while minimizing the total number of chunks stored. Less critical files use lower redundancy ratios, while critical files receive higher protection.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS9411817B2Programmatically choosing preferred storage parameters for files in large-scale distributed storage systems based on desired file reliability or availability
Publication Date: 2016.08.09 GOOGLE LLC
  • US9411817B2 patent drawing
  • US9411817B2 patent drawing
  • US9411817B2 patent drawing

AI summary

Methods to determine and automatically recommend or adjust configuration parameters for storing files in large-scale distributed storage systems are disclosed. These methods may receive file metadata and trace data that allows the system to identify file access patterns. Additionally, the methods may receive information about distributed storage systems in a datacenter. This information can be used to choose storage parameters on a per-file basis for storing files.