Cloud Controller Metadata Caching for Distributed Filesystems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing network storage systems face challenges in maintaining data consistency and scalability, particularly in cloud-based storage solutions, where access latency and network failures can lead to data consistency issues and significant downtime, and managing redundancy across multiple devices requires substantial expertise and configuration.

Innovation Solution

The implementation of cloud controllers that cache and manage metadata and data in a distributed filesystem, ensuring data consistency by maintaining metadata and data regions on local storage devices, using incremental metadata snapshots, and optimizing data access through pre-fetching and caching techniques to reduce latency and improve performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If data is stored remotely in cloud-based storage systems, then storage management overhead is reduced and data storage capacity can be quickly increased, but access latency increases and data consistency problems occur

Engineering Contradiction:
Improvestorage management overheadVSAvoiddata consistency
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The system segments storage functionality into cloud controllers that maintain local metadata and cached data, separating management functions from remote storage. Each cloud controller maintains a local metadata hierarchy and cached data blocks, allowing local decision-making while leveraging remote cloud capacity. This segmentation enables reduced management overhead through cloud abstraction while maintaining data consistency through local caching and metadata management.

Inventive Principle:
Principle #1Segmentation

2Ease of operation

If data is stored remotely in cloud-based storage systems, then storage management overhead is reduced, but network failures and outages prevent clients from accessing data

Engineering Contradiction:
Improvestorage management overheadVSAvoidaccess availability
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The system performs preliminary actions by pre-caching data blocks and maintaining metadata hierarchies in local storage devices of cloud controllers before they are needed. This allows the system to prepare data locally in advance, reducing dependency on network availability during actual data access operations. When network failures occur, previously cached data remains accessible locally, ensuring continued operation.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If metadata and data are stored together in local storage devices, then data access efficiency is improved, but metadata growth causes data region defragmentation

Engineering Contradiction:
Improvedata access efficiencyVSAvoidstorage region organization
Core Design Contradiction:
ProductivityVSStability of the object's composition

Solution Approach 1:

The system segments local storage into distinct metadata regions and data regions. Metadata is stored in dedicated metadata regions that grow independently, while data blocks are stored in separate data regions. This segmentation prevents metadata growth from causing data region defragmentation, as each region type is managed separately. The storage device is divided into multiple regions with metadata regions containing the metadata hierarchy and data regions containing cached data blocks.

Inventive Principle:
Principle #1Segmentation

4Speed

If cloud controllers cache data locally, then access latency is reduced, but storage device space is consumed

Engineering Contradiction:
Improveaccess latencyVSAvoidlocal storage space
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The system implements dynamic cache management where the cloud controller monitors local storage space availability and adjusts caching behavior accordingly. When storage space is abundant, more data blocks are cached locally to reduce access latency. When storage space becomes constrained, the controller selectively evicts less frequently accessed data blocks from the cache. This dynamic adaptation allows the system to optimize between access speed and storage space utilization based on current system conditions.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS9792298B1Managing metadata and data storage for a cloud controller in a distributed filesystem
Publication Date: 2017.10.17 PANZURA LLC
  • US9792298B1 patent drawing
  • US9792298B1 patent drawing
  • US9792298B1 patent drawing

AI summary

The disclosed embodiments disclose techniques for managing metadata and data storage for a cloud controller in a distributed filesystem. Two or more cloud controllers collectively manage distributed filesystem data that is stored in one or more cloud storage systems. More specifically, the cloud controllers cache and ensure data consistency for the data stored in the cloud storage systems, with each cloud controller maintaining (e.g., storing) in a local storage device: (1) one or more metadata regions containing a metadata hierarchy that reflects the current state of the distributed filesystem; and (2) cached data for the distributed filesystem. During operation, the cloud controller receives an incremental metadata snapshot that references new data written to the distributed filesystem. The cloud controller stores updated metadata from this incremental metadata snapshot in one of the metadata regions on the local storage device.