Using persistent memory technology as a host-side storage tier for clustered/distributed file systems, managed by host-side tier
First Claim
Patent Images
1. A computer-implemented method for managing cache coherency of a multi-node file system sharing a storage system, each node having a file system buffer cache and a host-side cache, comprising:
- receiving, by a host-side cache on a first node of the multi-node file system, a copy of a file system object (FSO) from a file system buffer cache on the first node;
storing the copy of the FSO in the host-side cache on the first node;
sending, by the first node, a message to a second and a third node to invalidate a copy of the FSO in a host-side cache of each of the second and third nodes in response to the storing of the copy of the FSO in the host-side cache on the first node from the buffer cache on the first node; and
sending a copy of the FSO from the host-side cache of the first node to at least the host-side cache of the second node independently of the shared storage system;
wherein each of the first, second, and third nodes comprise host-side cache coherency logic, and the coherency logic of the host-side cache of the first, second, and third nodes communicate with each other to implement coherency logic for the combined first, second, and third node host-side caches.
7 Assignments
0 Petitions
Accused Products
Abstract
Embodiments are described for a multi-node file system, such as a clustered or distributed file system, with a file system buffer cache and an additional host-side tier non-volatile storage cache such as 3DXP storage. Cache coherency can be maintained by one of three models: (i) host-side tier management, (ii) file system management, or (iii) storage array management. performing a storage tier-specific file system action in a file system that comprises a namespace that spans multiple tiers of storage.
5 Citations
18 Claims
-
1. A computer-implemented method for managing cache coherency of a multi-node file system sharing a storage system, each node having a file system buffer cache and a host-side cache, comprising:
-
receiving, by a host-side cache on a first node of the multi-node file system, a copy of a file system object (FSO) from a file system buffer cache on the first node; storing the copy of the FSO in the host-side cache on the first node; sending, by the first node, a message to a second and a third node to invalidate a copy of the FSO in a host-side cache of each of the second and third nodes in response to the storing of the copy of the FSO in the host-side cache on the first node from the buffer cache on the first node; and sending a copy of the FSO from the host-side cache of the first node to at least the host-side cache of the second node independently of the shared storage system; wherein each of the first, second, and third nodes comprise host-side cache coherency logic, and the coherency logic of the host-side cache of the first, second, and third nodes communicate with each other to implement coherency logic for the combined first, second, and third node host-side caches. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A non-transitory computer-readable medium programmed with executable instructions that, when executed by a processing system having at least one hardware processor, perform operations for managing cache coherency of a multi-node file system sharing a storage system, each node having a file system buffer cache and a host-side cache, comprising:
-
receiving, by a host-side cache on a first node of the multi-node file system, a copy of a file system object (FSO) from a file system buffer cache on the first node; storing the copy of the FSO in the host-side cache on the first node; sending, by the first node, a message to a second and a third node to invalidate a copy of the FSO in a host-side cache of each of the second and third nodes in response to the storing of the copy of the FSO in the host-side cache on the first node from the buffer cache on the first node; and sending a copy of the FSO from the host-side cache of the first node to at least the host-side cache of the second node independently of the shared storage system; wherein each of the first, second, and third nodes comprise host-side cache coherency logic, and the coherency logic of the host-side cache of the first, second, and third nodes communicate with each other to implement coherency logic for the combined first, second, and third node host-side caches. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A system comprising:
-
a processing system having at least one hardware processor, the processing system coupled to a memory programmed with executable instructions that, when executed by the processing system, perform operations for managing cache coherency of a multi-node file system sharing a storage system, each node having a file system buffer cache and a host-side cache, comprising; receiving, by a host-side cache on a first node of the multi-node file system, a copy of a file system object (FSO) from a file system buffer cache on the first node; storing the copy of the FSO in the host-side cache on the first node; sending, by the first node, a message to a second and a third node to invalidate a copy of the FSO in a host-side cache of each of the second and third nodes in response to the storing of the copy of the FSO in the host-side cache on the first node from the buffer cache on the first node; and sending a copy of the FSO from the host-side cache of the first node to at least the host-side cache of the second node independently of the shared storage system; wherein each of the first, second, and third nodes comprise host-side cache coherency logic, and the coherency logic of the host-side cache of the first, second, and third nodes communicate with each other to implement coherency logic for the combined first, second, and third node host-side caches. - View Dependent Claims (14, 15, 16, 17, 18)
-
Specification