发明名称 File cloning and de-cloning in a data storage system
摘要 A file cloning mechanism allows for quickly creating copies (clones) of files within a filesystem, such as when a user makes a copy of a file. In exemplary embodiments, a clone of a source object is at least initially represented by a structure containing references to various elements of the source object (e.g., indirect onodes, direct onodes, and data blocks). Both read-only and mutable clones can be created. The source file and the clone initially share such elements and continue to share unmodified elements as changes are made to the source file or mutable clone. None of the user data blocks or the metadata blocks describing the data stream (i.e., the indirect/direct onodes) associated with the source file need to be copied at the time the clone is created. At appropriate times, cloned files may be “de-cloned.”
申请公布号 US9336229(B2) 申请公布日期 2016.05.10
申请号 US201414582500 申请日期 2014.12.24
申请人 Hitachi Data Systems Engineering UK Limited 发明人 Picken Daniel J. N.;Berrington Neil
分类号 G06F7/00;G06F17/00;G06F17/30 主分类号 G06F7/00
代理机构 Sunstein Kann Murphy & Timbers LLP 代理人 Sunstein Kann Murphy & Timbers LLP
主权项 1. A computer program product comprising a tangible, non-transitory computer-readable medium having embodied therein a computer program adapted to cause a processing unit of a storage apparatus to execute a method for managing a file system object in a file system, the file system comprising (a) a snapshot object which includes one or more first pointers referencing one or more data blocks and (b) the file system object which includes one or more second pointers referencing one or more data blocks, wherein the one or more data blocks referenced by the one or more first pointers of the snapshot object include one or more data blocks which are owned by the snapshot object, the computer program including instructions that, when run on the processing unit of the storage apparatus, causes the processing unit to perform processes comprising: transferring, for each data block which is owned by the snapshot object and which is referenced by the one or more first pointers of the snapshot object and by the one or more second pointers of the file system object, ownership of the respective data block from the snapshot object to the file system object, and removing the snapshot object from the file system subsequent to such transfer of ownership from the snapshot object to the file system object.
地址 Bracknell, Berkshire GB