Cloud Application Fragmentation for Mobile Storage Optimization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Users of mobile devices face delays and storage issues when downloading large applications, as they must wait for the entire application to download before using it, and often need to delete existing applications to accommodate new ones.
Innovation Solution
The technology allows for streaming and caching of application fragments, where a processing server decomposes an application into user interface-specific fragments, prioritizing their download based on dependency and user access patterns, enabling the application to be launched before full download, and optimizing storage by purging unnecessary fragments.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the entire application is downloaded before use, then the application can be run without interruption, but the download time is significant and storage space is consumed
Solution Approach 1:
The application is divided into multiple fragments, each corresponding to specific user interfaces or functional modules. The computing device downloads and caches only the fragments needed for current use rather than the entire application, enabling incremental loading and reducing initial download time while maintaining execution continuity for the active portion
Solution Approach 2:
The system performs preliminary actions by downloading and caching application fragments in advance based on predicted user access patterns and dependency relationships. Frequently accessed fragments are prioritized for caching, so that when the user launches the application, the necessary components are already available locally, eliminating wait time
2Adaptability or versatility
If the entire application is downloaded, then all functionalities are available, but storage space on the mobile device is insufficient
Solution Approach 1:
By segmenting the application into independent fragments, the system allows the device to store only the portions of the application that are currently needed. Less frequently used fragments can be removed or not downloaded at all, significantly reducing storage requirements while maintaining access to full functionality through on-demand loading
Solution Approach 2:
The system implements dynamic cache management where unused application fragments are automatically removed from local storage to free up space. When needed, these fragments can be重新 downloaded from the server, allowing the device to maintain a limited local cache while preserving access to the complete application suite
Data Source
AI summary
Technology is disclosed for decomposing an application into fragments and streaming the application fragments for execution on a mobile computing device. A fragment presents a user interface of the application and needs a set of resources, e.g., images, icons, etc. to be executed. A server determines a set of fragments for the application and streams them to the device as and when the device needs a particular fragment. The server determines the set of fragments in various ways. For example, the server executes an emulator that simulates the execution of the application by the user and determines fragment data including the set of fragments, resources needed by each of the fragments, and various possible navigations between the fragments. In another example, the server receives such fragment data from various users executing the application on various devices, and aggregates them based on aggregating policy to obtain an aggregated fragment data.


