Managing global cache coherency in a distributed shared caching for clustered file systems
First Claim
1. A method for managing global cache coherency in a distributed shared caching for clustered file systems (CFS) in a computing environment, the method comprising:
- providing the CFS for residing on a cluster of nodes for accessing space of data segments that are shared between the cluster of nodes;
providing, in the CFS, a local cache memory of data segment slots on each of the cluster of nodes and a distributed shared memory (DSM) module, with no internal memory for the data segments on each of the cluster of nodes, wherein the cache memory acts as an external memory;
managing access permissions to an entire space of the data segments by using the DSM module, wherein in response to receiving a request to access one of the data segments;
performing a calculation operation for obtaining most recent contents of the one of the data segments, wherein the calculation operation performs one of;
providing the most recent contents via communication with a remote DSM module which obtains the one of the data segments from an associated external cache memory,instructing by the DSM module to read from storage the one of the data segments, anddetermining that any existing contents of the one of the data segments in the local external cache are the most recent contents;
wherein if ownership of the one of the data segments is possessed by a remote DSM module and a condition of the request to access one of the data segments is for shared permission and a current permission on the one of the data segments is shared and the one of the data segments exists in the local external cache does not exist;
sending a response for the request to access one of the data segments to a remote DSM module; and
determining contents of the one of the data segments are the most recent contents if ownership of the one of the data segments is possessed by a remote DSM module and the request to access one of the data segments is for shared permission and a current permission on the one of the data segments is shared and the one of the data segments exists in the local external cache.
1 Assignment
0 Petitions
Accused Products
Abstract
Various embodiments are provided for managing a global cache coherency in a distributed shared caching for a clustered file system (CFS). The CFS manages access permissions to an entire space of data segments by using the DSM module. In response to receiving a request to access one of the data segments, a calculation operation is performed for obtaining most recent contents of one of the data segments. The calculation operation performs one of providing the most recent contents via communication with a remote DSM module which obtains the one of the data segments from an associated external cache memory, instructing by the DSM module to read from storage the one of the data segments, and determining that any existing contents of the one of the data segments in the local external cache are the most recent contents.
-
Citations
15 Claims
-
1. A method for managing global cache coherency in a distributed shared caching for clustered file systems (CFS) in a computing environment, the method comprising:
-
providing the CFS for residing on a cluster of nodes for accessing space of data segments that are shared between the cluster of nodes; providing, in the CFS, a local cache memory of data segment slots on each of the cluster of nodes and a distributed shared memory (DSM) module, with no internal memory for the data segments on each of the cluster of nodes, wherein the cache memory acts as an external memory; managing access permissions to an entire space of the data segments by using the DSM module, wherein in response to receiving a request to access one of the data segments; performing a calculation operation for obtaining most recent contents of the one of the data segments, wherein the calculation operation performs one of; providing the most recent contents via communication with a remote DSM module which obtains the one of the data segments from an associated external cache memory, instructing by the DSM module to read from storage the one of the data segments, and determining that any existing contents of the one of the data segments in the local external cache are the most recent contents; wherein if ownership of the one of the data segments is possessed by a remote DSM module and a condition of the request to access one of the data segments is for shared permission and a current permission on the one of the data segments is shared and the one of the data segments exists in the local external cache does not exist; sending a response for the request to access one of the data segments to a remote DSM module; and determining contents of the one of the data segments are the most recent contents if ownership of the one of the data segments is possessed by a remote DSM module and the request to access one of the data segments is for shared permission and a current permission on the one of the data segments is shared and the one of the data segments exists in the local external cache. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A system for managing global cache coherency in a distributed shared caching for clustered file systems (CFS) in a computing environment, the system comprising:
-
a cluster of nodes, the CFS including the cluster of nodes forming a computer cluster, data segments shared between the cluster of nodes, wherein the CFS resides on the cluster of nodes for accessing space of data segments that are shared between the cluster of nodes, a distributed shared memory (DSM) module, with no internal memory for the data segments on each of the cluster of nodes within a node of the cluster of nodes; a plurality of storage devices in communication with the CFS, a local cache memory of data segment slots on each of the cluster of nodes, wherein the cache memory acts as an external memory, a remote cache memory within each of the cluster of nodes, a cache associated with the node, and a processor device having a memory coupled to the processor device for controlling the CFS, wherein the processor device is assigned to the node and the node is in communication with the plurality of storage devices, wherein the processor device; manages access permissions to an entire space of the data segments by using the DSM module, wherein in response to receiving a request to access one of the data segments; performs a calculation operation for obtaining most recent contents of the one of the data segments, wherein the calculation operation performs one of; provides the most recent contents via communication with a remote DSM module which obtains the one of the data segments from an associated external cache memory, instructs by the DSM module to read from a storage device the one of the data segments, and determines that any existing contents of the one of the data segments in the local external cache are the most recent contents; if ownership of the one of the data segments is possessed by a remote DSM module and a condition of the request to access one of the data segments is for shared permission and a current permission on the one of the data segments is shared and the one of the data segments exists in the local external cache does not exist; sends a response for the request to access one of the data segments to a remote DSM module; and determines contents of the one of the data segments are the most recent contents if ownership of the one of the data segments is possessed by a remote DSM module and the request to access one of the data segments is for shared permission and a current permission on the one of the data segments is shared and the one of the data segments exists in the local external cache. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A computer program product for managing a global cache coherency in a distributed shared caching for clustered file systems (CFS) using a processor device, the computer program product comprising a non-transitory computer-readable storage medium having computer-readable program code portions stored therein, the computer-readable program code portions comprising:
-
an executable portion that provides the CFS for residing on a cluster of nodes for accessing space of data segments that are shared between the cluster of nodes; an executable portion that provides, in the CFS, a local cache memory of data segment slots on each of the cluster of nodes and a distributed shared memory (DSM) module, with no internal memory for the data segments on each of the cluster of nodes, wherein the cache memory acts as an external memory; and an executable portion that manages access permissions to an entire space of the data segments by using the DSM module, wherein in response to receiving a request to access one of the data segments; performs a calculation operation for obtaining most recent contents of the one of the data segments, wherein the calculation operation performs one of; provides the most recent contents via communication with a remote DSM module which obtains the one of the data segments from an associated external cache memory, instructs by the DSM module to read from a storage device the one of the data segments, and determines that any existing contents of the one of the data segments in the local external cache are the most recent contents; if ownership of the one of the data segments is possessed by a remote DSM module and a condition of the request to access one of the data segments is for shared permission and a current permission on the one of the data segments is shared and the one of the data segments exists in the local external cache does not exist; sends a response for the request to access one of the data segments to a remote DSM module; and an executable portion that determines contents of the one of the data segments are the most recent contents if ownership of the one of the data segments is possessed by a remote DSM module and the request to access one of the data segments is for shared permission and a current permission on the one of the data segments is shared and the one of the data segments exists in the local external cache. - View Dependent Claims (12, 13, 14, 15)
-
Specification