Block Storage Volume Mapping for Cloud Application File Space
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current cloud applications face challenges with file system space limitations in virtual machines, leading to inefficient CPU utilization and high costs when addressing increased file operations, and require data availability across multiple virtual machines or after application restarts.
Innovation Solution
The system provides extended file storage by attaching a block level storage volume to virtual machines and mapping it to a local folder, allowing for read/write operations, with metadata management for persistent or local storage modes to optimize resource usage and cost.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If large virtual machines with big CPUs are provided to increase file system space, then file system space is improved, but CPU utilization efficiency deteriorates
Solution Approach 1:
The system separates file system storage from compute resources by attaching block storage volumes independently from virtual machine CPU configurations. This allows storage capacity to be scaled without proportionally increasing CPU resources, resolving the contradiction between file system space and CPU utilization efficiency.
Solution Approach 2:
The patent introduces a separate storage dimension by using block storage volumes that exist independently from the virtual machine's compute resources. This dimensional separation allows storage to be expanded without affecting CPU allocation, eliminating the need to overprovision CPUs for storage needs.
2Quantity of substance
If bigger file system is provided to each virtual machine to meet extensive file operations, then file system space is improved, but cost effectiveness deteriorates
Solution Approach 1:
Multiple virtual machines can share access to the same block storage volume, merging storage resources across instances. This consolidation allows extensive file operations to be supported without provisioning separate large file systems for each VM, reducing overall storage costs while meeting operational requirements.
Solution Approach 2:
The block storage volume serves multiple purposes and can be attached to different virtual machines as needed. This universal storage resource can handle extensive file operations for multiple applications without requiring dedicated large file systems for each, improving cost effectiveness.
3Reliability
If data is stored locally in virtual machine templates, then data availability after restart is improved, but data availability across multiple virtual machines deteriorates
Solution Approach 1:
The block storage volume acts as an intermediary between virtual machines and persistent storage. It provides data persistence across restarts while simultaneously enabling shared access across multiple virtual machines, resolving the contradiction between reliability and adaptability.
Solution Approach 2:
The system creates a shared copy of the storage volume that can be accessed by multiple virtual machines. This shared copy ensures data persistence for each instance while enabling cross-machine data availability, eliminating the need for separate local storage per VM.
4Device complexity
If conventional virtual machine approaches are used to address file operations, then implementation simplicity is improved, but resource efficiency deteriorates
Solution Approach 1:
The block storage volumes are pre-configured and attached to virtual machines during deployment or startup. This preliminary setup automates the storage configuration process, maintaining implementation simplicity while enabling efficient resource utilization through shared storage access.
Data Source
AI summary
Various embodiments of systems and methods for providing extended file storage for cloud applications are described herein. The method involves receiving a deployment request from a cloud application for file storage service, at the time of deployment. The deployment request includes information identifying a local folder and a mode of storage. The metadata relating to the information in the deployment request is stored in a persistent storage. Further, in response to receiving a start request to run the cloud application an application virtual machine is allocated and a block level storage volume is identified and attached to the application virtual machine. Further, the identified block level storage volume is mapped to the local folder identified in the stored metadata and the application virtual machine running the cloud application is started. The block level storage volume mapped to the local folder is accessed by application processes for performing read/write operations.


