Deduplication of container image files
US-12124414-B2 · Oct 22, 2024 · US
US12353872B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-12353872-B2 |
| Application number | US-202318139234-A |
| Country | US |
| Kind code | B2 |
| Filing date | Apr 25, 2023 |
| Priority date | Apr 25, 2023 |
| Publication date | Jul 8, 2025 |
| Grant date | Jul 8, 2025 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A computer-implemented method, according to one embodiment, includes receiving a first image, having a first image tag, to store in a predetermined image storage service, and determining whether the first image tag matches any image tags of images stored in the image storage service. In response to a determination that the first image tag matches a second image tag associated with a second image stored in the image storage service, a predetermined process is performed. The predetermined process includes determining whether the first image is identical to the second image, and in response to a determination that the first image is not identical to the second image, executing actions. The actions include generating a patch of differences between the first image and the second image to thereafter use for fulfilling requests for data.
Opening claim text (preview).
What is claimed is: 1. A computer-implemented method, comprising: receiving a first image, having a first image tag, to store in a predetermined image storage service, wherein the first image tag is an image identification (ID) of the first image; determining whether the first image tag matches any image tags of images stored in the image storage service; and in response to a determination that the first image tag matches a second image tag that is an image ID of a second image stored in the image storage service, performing a predetermined process including: determining whether the first image is identical to the second image; and in response to a determination that the first image is not identical to the second image, executing actions comprising: generating a patch of differences between the first image and the second image to thereafter use for fulfilling requests for data, wherein the patch of differences between the first image and the second image is stored in a first datastore on a first physical device, wherein the first image is stored in a second datastore on a second physical device. 2. The computer-implemented method of claim 1 , comprising: in response to a determination that the first image tag does not match any of the image tags of the images stored in the image storage service, storing the first image in the image storage service based on the first image tag. 3. The computer-implemented method of claim 1 , wherein the first image and the second image are container images. 4. The computer-implemented method of claim 3 , comprising: determining the differences between the first image and the second image by performing a comparison of container layers of the container images; and incorporating the determined differences into the patch. 5. The computer-implemented method of claim 3 , comprising: determining the differences between the first image and the second image by performing a comparison of container layers of the container images; and comparing the determined differences against a predetermined threshold to determine whether to generate the patch of differences between the first image and the second image. 6. The computer-implemented method of claim 5 , wherein the patch of differences between the first image and the second image is generated in response to a determination, based on results of the comparison, that the predetermined threshold is not exceeded. 7. The computer-implemented method of claim 1 , wherein the first image tag and the image tags of the images stored in the image storage service are each hash strings of an associated one of the images. 8. The computer-implemented method of claim 1 , comprising: sending client device(s) possessing an image associated with the first image tag, a notice that the first image has been updated. 9. A computer-implemented method, comprising: receiving a request for a first image, having a first image tag, from a client device, wherein the first image tag is an image identification (ID) of the first image; determining, from a table, whether the client device possesses any version of the first image, wherein the table includes an output history list that indicates images, patches and image tags that have previously been output to the client device; and in response to a determination that the client device possesses a first version of the first image, sending a first portion of the first image for updating the first version of the first image to a current version of the first image possessed by an image storage service. 10. The computer-implemented method of claim 9 , comprising: in response to a determination that the client device does not possess any version of the first image, sending an entirety of the first image to the client device. 11. The computer-implemented method of claim 9 , further comprising: updating the table with a second image tag that is an image ID of the current version of the first image sent to the client device. 12. The computer-implemented method of claim 11 , wherein the first image tag is a hash string of the first image, wherein the second image tag is a hash string of the current version of the first image. 13. The computer-implemented method of claim 9 , wherein the first portion of the first image is a patch of determined differences between the first version of the first image and the current version of the first image. 14. A computer program product, the computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions readable and/or executable by a computer to cause the computer to: receive a first image, having a first image tag, to store in a predetermined image storage service, wherein the first image tag is an image identification (ID) of the first image; determine whether the first image tag matches any image tags of images stored in the image storage service; and in response to a determination that the first image tag matches a second image tag that is an image ID of a second image stored in the image storage service, perform a predetermined process including: determining whether the first image is identical to the second image; and in response to a determination that the first image is not identical to the second image, executing actions comprising: generate a patch of differences between the first image and the second image to thereafter use for fulfilling requests for data, wherein the patch of differences between the first image and the second image is stored in a first datastore on a first physical device, wherein the first image is stored in a second datastore on a second physical device. 15. The computer program product of claim 14 , the program instructions readable and/or executable by the computer to cause the computer to: in response to a determination that the first image tag does not match any of the image tags of the images stored in the image storage service, store the first image in the image storage service based on the first image tag. 16. The computer program product of claim 14 , wherein the first image and the second image are container images. 17. The computer program product of claim 16 , the program instructions readable and/or executable by the computer to cause the computer to: determine the differences between the first image and the second image by performing a comparison of container layers of the container images; and incorporate the determined differences into the patch. 18. The computer program product of claim 16 , the program instructions readable and/or executable by the computer to cause the computer to: determine the differences between the first image and the second image by performing a comparison of container layers of the container images; and compare the determined differences against a predetermined threshold to determine whether to generate the patch of differences between the first image and the second image. 19. The computer program product of claim 18 , wherein the patch of differences between the first image and the second image is generated in response to a determination, based on results of the comparison, that the predetermined threshold is not exceeded. 20. The computer program product of claim 14 , wherein the first image tag and the image tags of the images stored in the image storage service are each hash strings of an associated one of the images.
Related publications grouped by family.
Answers are generated from the same data shown on this page.