POSIX File Hierarchies on Cloud Object Storage With Low-Latency Caching

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional cloud-based object storage systems have limitations such as restricted data access semantics, high latency, and incompatibility with local file system applications, making it challenging to integrate legacy applications without significant adaptation and increased costs.

Innovation Solution

Layering file system functionality on cloud object interfaces, specifically using POSIX interfaces and semantics, to provide cloud-based storage while maintaining file-based access and organization, and enabling memory mapping to ensure consistency between memory changes and writes, thereby transforming disk-based storage systems like ZFS into cloud-based storage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If cloud object storage is used, then elasticity and scale are improved, but latency increases and interface compatibility with legacy applications deteriorates

Engineering Contradiction:
Improveelasticity and scaleVSAvoidlatency
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The system segments cloud object storage into two operational layers: a high-latency cloud object store for bulk storage and a low-latency local cache layer for frequent access. This segmentation allows the system to maintain elasticity and scale from cloud storage while reducing latency for common operations through local caching.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary actions by pre-caching frequently accessed objects locally before they are actually needed. The predictive caching mechanism proactively loads data into local storage based on access patterns, thereby reducing latency when applications need to access this pre-cached data.

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If cloud object storage is used, then elasticity and scale are improved, but compatibility with local file system applications deteriorates

Engineering Contradiction:
Improveelasticity and scaleVSAvoidinterface compatibility
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The system introduces an intermediary component that translates between cloud object storage interfaces and traditional file system interfaces. This intermediary layer allows legacy applications to interact with cloud storage using familiar file system calls while the system handles the conversion to object storage operations, thereby maintaining compatibility without sacrificing cloud storage benefits.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system implements a universal access layer that supports multiple interface types (file system interfaces, object storage interfaces, and block interfaces) simultaneously. This multi-functional approach allows the same underlying cloud storage infrastructure to serve both legacy applications requiring file system semantics and modern applications using object storage APIs.

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

3Quantity of substance

If cloud object storage is used, then storage capacity is improved, but data access speed deteriorates

Engineering Contradiction:
Improvestorage capacityVSAvoiddata access speed
Core Design Contradiction:
Quantity of substanceVSSpeed

Solution Approach 1:

The system applies local quality by providing different access speeds for different data based on their access patterns. Frequently accessed data is cached locally with high-speed access, while less frequently accessed data remains in cloud storage with lower access speed. This differentiated approach optimizes overall system performance by ensuring hot data is accessed quickly while maintaining large storage capacity.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS11442898B2File system hierarchies and functionality with cloud object storage
Publication Date: 2022.09.13 ORACLE INT CORP
  • US11442898B2 patent drawing
  • US11442898B2 patent drawing
  • US11442898B2 patent drawing

AI summary

Techniques described herein relate to systems and methods of data storage, and more particularly to providing layering of file system functionality on an object interface. In certain embodiments, file system functionality may be layered on cloud object interfaces to provide cloud-based storage while allowing for functionality expected from a legacy applications. For instance, POSIX interfaces and semantics may be layered on cloud-based storage, while providing access to data in a manner consistent with file-based access with data organization in name hierarchies. Various embodiments also may provide for memory mapping of data so that memory map changes are reflected in persistent storage while ensuring consistency between memory map changes and writes. For example, by transforming a ZFS file system disk-based storage into ZFS cloud-based storage, the ZFS file system gains the elastic nature of cloud storage.