发明名称 |
Mechanism for distributed inode to path traversal in a striped volume system |
摘要 |
The techniques introduced herein provide an efficient mechanism for reducing remote procedure requests to storage server nodes in a cluster of the storage servers to construct a directory path for a data container. According to one aspect of the invention, a new caching technique and an efficient organization of the cache memory are provided so that a cache memory on a storage server node is populated with individual path components of a directory structure. A novel cache invalidation mechanism is provided to maintain cache consistency at the cache so that when a path component changes, such as an identifier of a data container in the directory structure, and a path component is invalidated in the cache memory, the remaining path components can be retained and later reused. |
申请公布号 |
US8898206(B1) |
申请公布日期 |
2014.11.25 |
申请号 |
US201012769360 |
申请日期 |
2010.04.28 |
申请人 |
NetApp, Inc. |
发明人 |
Jiang Tianyu;Jernigan, IV Richard P.;Subramanian Ananthan;Witte Wesley |
分类号 |
G06F17/30 |
主分类号 |
G06F17/30 |
代理机构 |
Cooper Legal Group, LLC |
代理人 |
Cooper Legal Group, LLC |
主权项 |
1. A method for constructing a directory path to a specified path component, comprising:
iteratively traversing a hierarchical directory structure to populate a cache data structure, of a local storage server node, with one or more entries corresponding to one or more path components until an inode of a specified path component is reached, an entry comprising an inode number of a target inode and an inode number of an immediate parent of the target inode, the cache data structure comprising a first entry derived from data of a first storage server node and a second entry derived from data of a second storage server node, the first storage server node and the second storage server node remote from the local storage server node, the iteratively traversing comprising performing a first traversal and zero or more other traversals until the inode of the specified path component is reached, the performing a first traversal comprising:
identifying the target inode;responsive to determining that the inode number of the immediate parent of the target inode is not cached in the cache data structure:
identifying a storage server that hosts a content metadata volume for the target inode;invoking the storage server to identify the inode number of the immediate parent of the target inode;receiving the inode number of the immediate parent of the target inode and the inode number of the target inode; andpopulating the cache data structure with the inode number of the target inode and the inode number of the immediate parent of the target inode; and constructing a directory path from the target inode to the specified path component based upon one or more entries within the cache data structure without accessing a storage server node remote from the local storage server node. |
地址 |
Sunnyvale CA US |