Dynamic Block Size Granularity for Compute Cluster File Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Cluster file systems using shared storage do not support data-intensive applications effectively, as they have small default block sizes leading to high task overhead and lack support for performance requirements of traditional applications, especially in cloud computing environments.

Innovation Solution

A file system optimization method that uses dynamic block size granularity, reserving storage allocation regions on locally attached storage for compute operations and shared storage for data access operations, allowing for large block sizes for data-intensive applications and small block sizes for traditional applications, thereby modifying the block allocation scheme to support both types within a single compute cluster.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If small default block sizes are used in cluster file systems, then traditional applications can efficiently access data, but data-intensive applications suffer from high task overhead and poor performance

Engineering Contradiction:
Improvedata access efficiencyVSAvoidcompute operation performance
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The file system dynamically adjusts block allocation granularity based on operation type: using large contiguous blocks for compute operations and small blocks for data access operations. This dynamic adaptation allows the system to optimize for either data processing or data retrieval depending on the current workload, resolving the contradiction between compute performance and access efficiency

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

Different storage regions are assigned different block allocation characteristics: locally attached storage uses large contiguous blocks optimized for compute operations, while shared storage uses small blocks optimized for data access operations. This local differentiation allows each storage region to be optimized for its specific purpose, simultaneously supporting both data-intensive and traditional applications

Inventive Principle:
Principle #3Local quality

2Productivity

If large block sizes are used for data-intensive applications, then task overhead is reduced and compute performance improves, but traditional applications lose efficient data access capability

Engineering Contradiction:
Improvecompute operation performanceVSAvoiddata access efficiency
Core Design Contradiction:
ProductivityVSEase of operation

Solution Approach 1:

The storage system is segmented into two distinct pathways: locally attached storage with large block allocation for compute operations, and shared storage with small block allocation for data access operations. This segmentation allows traditional applications to efficiently access data on shared storage while data-intensive applications utilize large blocks on local storage, eliminating the performance trade-off

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The file system acts as an intermediary that translates application requests into appropriate storage operations. It intercepts compute operations and redirects them to locally attached storage with large block allocation, while routing data access operations to shared storage with small block allocation, thereby enabling both application types to operate optimally without direct conflict

Inventive Principle:
Principle #24Intermediary (Mediator)

3Device complexity

If a single block allocation scheme is used for all applications, then system complexity is reduced, but the system cannot effectively support both data-intensive and traditional applications

Engineering Contradiction:
Improveblock allocation scheme simplicityVSAvoidapplication type support
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The file system implements a universal interface that supports multiple allocation strategies through a single unified system. Both data-intensive applications and traditional applications can access storage through the same file system interface, but the underlying allocation mechanism automatically adapts to provide large blocks for compute operations and small blocks for data access operations, maintaining simplicity while achieving versatility

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

Data Source

PatentUS9021229B2Optimizing a file system for different types of applications in a compute cluster using dynamic block size granularity
Publication Date: 2015.04.28 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US9021229B2 patent drawing
  • US9021229B2 patent drawing
  • US9021229B2 patent drawing

AI summary

Embodiments of the invention relate to optimizing a file system for different types of applications in a compute cluster using dynamic block size granularity. An exemplary embodiment includes reserving a predetermined number of storage allocation regions for each node in a cluster, wherein each storage allocation region comprises a set of contiguous data blocks on a single storage disk of locally attached storage; using a contiguous set of data blocks on a single storage disk of locally attached storage as a file system's block allocation granularity for striping data to be stored in the file system for a compute operation in the cluster; and using a single data block of a shared storage subsystem as the file system's block allocation granularity for striping data to be stored in the file system for a data access operation in the cluster.