Caching Layer for Distributed Data Analytics Reliability

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In distributed data analytics systems, managing large data sets across multiple processing nodes is challenging due to competing performance and reliability requirements, and the inefficiency of data migration between specialized and legacy file systems.

Innovation Solution

Implementing a caching layer at processing nodes that uses the same file system as the storage server, decoupling file management activities from processing activities, allowing the storage server to handle data reliability and management functions independently without impacting processing nodes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If data is stored in specialized file systems (e.g., HDFS) for distributed data analytics, then data reliability and availability are improved, but data migration between specialized and legacy file systems becomes inefficient and complex

Engineering Contradiction:
Improvedata reliabilityVSAvoidfile system interface complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces a caching layer as an intermediary component between processing nodes and the specialized file system (HDFS). This caching layer uses standard file systems (e.g., ext3, ext4, XFS) instead of specialized file systems, thereby eliminating the need for complex specialized file system interfaces while maintaining data reliability through the underlying HDFS storage. The caching layer handles data retrieval and storage operations, translating between standard file system operations and HDFS operations, thus resolving the contradiction between reliability and interface complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If data chunks are replicated across multiple nodes for reliability, then data availability is improved, but storage space efficiency deteriorates due to redundant copies

Engineering Contradiction:
Improvedata availabilityVSAvoidstorage space efficiency
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent implements local caching at each processing node, where data chunks are cached locally in standard file systems rather than being replicated across multiple nodes in the specialized file system. This local quality approach allows each node to have its own cached copy of frequently accessed data, improving data availability for that specific node without requiring system-wide replication. The caching layer manages what data to cache locally based on access patterns, thereby improving storage space efficiency at the system level while maintaining local data availability.

Inventive Principle:
Principle #3Local quality

3Productivity

If data is cached at processing nodes using the same file system as the storage server, then data transfer efficiency is improved, but cache management complexity increases

Engineering Contradiction:
Improvedata transfer efficiencyVSAvoidcache management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent makes the caching layer universal by implementing it with standard file systems that are already present on the processing nodes and storage servers. The caching layer uses the same standard file system types (ext3, ext4, XFS) that are commonly used in the infrastructure, allowing it to work with any standard file system without requiring specialized configurations. This universality simplifies cache management by leveraging existing file system tools and utilities, reducing the need for custom cache management complexity while maintaining high data transfer efficiency between the caching layer and storage server.

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

4Productivity

If specialized file systems are used for distributed analytics, then processing performance is improved, but compatibility with legacy applications deteriorates

Engineering Contradiction:
Improveprocessing performanceVSAvoidfile system compatibility
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The caching layer serves as an intermediary that translates between standard file system operations (used by legacy applications) and the specialized HDFS operations (required for distributed analytics performance). Legacy applications can interact with the caching layer using standard file system interfaces, maintaining full compatibility. The caching layer then handles the translation to HDFS operations, ensuring that processing performance is maintained by leveraging HDFS capabilities while preserving adaptability to legacy applications through standard file system compatibility.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS9456049B2Optimizing distributed data analytics for shared storage
Publication Date: 2016.09.27 NETAPP INC
  • US9456049B2 patent drawing
  • US9456049B2 patent drawing
  • US9456049B2 patent drawing

AI summary

Methods, systems, and computer executable instructions for performing distributed data analytics are provided. In one exemplary embodiment, a method of performing a distributed data analytics job includes collecting application-specific information in a processing node assigned to perform a task to identify data necessary to perform the task. The method also includes requesting a chunk of the necessary data from a storage server based on location information indicating one or more locations of the data chunk and prioritizing the request relative to other data requests associated with the job. The method also includes receiving the data chunk from the storage server in response to the request and storing the data chunk in a memory cache of the processing node which uses a same file system as the storage server.