发明名称 Systems and methods for instantaneous cloning
摘要 Techniques to clone a writeable data object in non-persistent memory are disclosed. The writeable data object is stored in a storage structure in non-persistent memory that corresponds to a portion of a persistent storage. The techniques enable cloning of the writeable data object without having to wait until the writeable data object is saved to the persistent storage and without needing to quiesce incoming operations (e.g., reads and writes) to the writeable data object.
申请公布号 US8812450(B1) 申请公布日期 2014.08.19
申请号 US201313781462 申请日期 2013.02.28
申请人 NetApp, Inc. 发明人 Kesavan Ram;Venketaraman Sriram;Gupta Mohit;Periyagaram Subramaniam
分类号 G06F17/30;G06F3/06 主分类号 G06F17/30
代理机构 Perkins Coie LLP 代理人 Perkins Coie LLP
主权项 1. A method comprising: storing a writeable data object in a non-persistent memory of a storage system; cloning the writeable data object in the non-persistent memory without having to wait until the writeable data object is saved to a persistent storage and without having to pause incoming write operations on the writeable data object during said cloning; and whereby cloning without having to pause the incoming write operations comprises: receiving a client request for a write operation at the storage system to modify a first dirty portion of an in-memory version of a data object represented by a first reference pointer tree;marking a node in the first reference pointer tree as a dirty node, wherein the dirty node represents the first dirty portion;allocating a replacement pointer for the dirty node in response to receiving the client request, wherein allocating the replacement pointer includes allocating the replacement pointer from a per-processor cache bucket, the per-processor cache bucket including freed reference pointers spatially co-located in a reference pointer space of the storage system; andcreating a first clone of the data object, the first clone represented by a second reference pointer tree, the second reference pointer tree having the replacement pointer as a node.
地址 Sunnyvale CA US