Layered Machine Images for Cloud Storage Optimization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The process of selecting and instantiating machine images for virtual machines on host computer systems is cumbersome and inefficient, leading to storage space issues due to duplication of machine images with common elements, and customers struggle to choose the appropriate machine images for their applications.
Innovation Solution
The implementation of machine image layers, which are pre-approved and pre-assembled, allowing customers to build custom machine images by selecting and combining these layers in real-time, reducing storage needs and launch times by caching frequently used layers.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If pre-assembled machine images are provided to customers, then customers can quickly instantiate virtual machines, but storage space is wasted due to duplication of common elements across multiple machine images
Solution Approach 1:
The patent segments machine images into hierarchical layers (base layers and optional layers) that can be independently stored and combined. Instead of storing complete duplicate machine images for different configurations, the system stores a common base layer once and creates variations by adding or removing optional layers, thereby reducing storage requirements while maintaining fast instantiation capability.
Solution Approach 2:
The base layer serves multiple functions by acting as a common foundation for multiple different machine image configurations. A single base layer can be combined with different optional layers to create various application-specific images, making the base layer universal and eliminating the need to store separate common elements for each configuration.
2Adaptability or versatility
If customers are presented with many pre-assembled machine image options, then they can find suitable images for their applications, but the selection process becomes cumbersome and difficult
Solution Approach 1:
The patent segments the machine image selection process into manageable layers, allowing customers to make incremental decisions. Instead of choosing from a overwhelming list of complete machine images, customers select a base layer and then progressively add optional layers based on their specific needs, making the selection process more intuitive and less cumbersome.
Solution Approach 2:
The patent implements a dynamic, flexible machine image construction process where customers can start with a base layer and adaptively add or remove optional layers based on their evolving requirements. This dynamic approach allows for customized machine images to be built step-by-step rather than requiring selection from fixed pre-assembled options, simplifying the user experience while maintaining versatility.
3Speed
If complete machine images are stored for each configuration, then instantiation is fast, but storage requirements increase significantly
Solution Approach 1:
The patent segments machine images into reusable layers that can be stored once and instantiated multiple times. The base layer is stored once and can be rapidly instantiated for multiple configurations by combining with different optional layers, reducing storage requirements while maintaining fast launch times through efficient layer combination and caching mechanisms.
Solution Approach 2:
Instead of storing complete duplicate machine images, the patent uses copying of layer references rather than full image copies. When a machine image is instantiated, the system creates references to the stored base and optional layers, allowing multiple configurations to share the same underlying layer data without duplicating the actual storage, thereby reducing storage capacity needs while enabling fast instantiation.
Data Source
AI summary
In certain embodiments, a computer-implemented method includes accessing user selection data that includes selections associated with computing system resources, determining two or more machine image layers from available machine image layers to instantiate on a particular computing system resource, and determining that a particular machine image layer is not cached locally on one or more memory devices of the particular computing system resource. The method includes, in response to determining that the particular machine image layer is not cached locally on one or more memory devices, accessing a stored copy of the particular machine image layer residing in memory external to the particular computing system resource and caching the stored copy of the particular machine image layer on the one or more memory devices of the particular computing system resource. The method further includes instantiating the particular machine image layer on the particular computing system resource.


