Image diffs with parents
Right now snapshots seem to require a full upload of the new image, but in certain cases it would be more useful to only send the COW 'diff' instead of the full snapshot and tell glance what the original 'image' id is. Then when fetching glance would have to send back X 'images' that can be used to reform the full snapshot. This would seem useful (from a storage point of view) and from a sharing point of view. It would seem likely that new api's would be needed as well as new db tables (to track the hierarchy) and to make sure that a parent 'image' can not be deleted if referenced by a child....
Seems useful, thoughts?
Blueprint information
- Status:
- Complete
- Approver:
- None
- Priority:
- Undefined
- Drafter:
- Yahoo Openstackers!
- Direction:
- Needs approval
- Assignee:
- None
- Definition:
- Superseded
- Series goal:
- None
- Implementation:
- Unknown
- Milestone target:
- None
- Started by
- Completed by
- Mark Washenberger
Related branches
Related bugs
Sprints
Whiteboard
Joshua, great idea. You must consider attending this session at Openstack summit if you will be there - http://
(#nikhil) We have some work in progress right now. If you would like to contribute your thoughts, it would be appreciated. Some initial changes can be found on https:/
I was architect on a project at Dell and we did something similar using an rsync based technology for minimizing storage requirements for images. We were primarily focused on windows and because of the commonality between flavours, we could get away with having root masters and just storing and transferring the deltas so that save on data and bandwidth. XDelta3 is a nice technology but I dont think it's license is compatible.
Thanks: was there with markws @ the summit, lots of good ideas to work on!
- See: http://
While I still see efficient image boot and snapshots as an incredibly important feature for Openstack to support, the discussion around implementing it through the image service seems to have stalled due the amount of implied duplication and overlapping concerns with the volume service Cinder. I propose we table this feature in glance and see how we can implement it correctly in Nova and Cinder.
-markwash