# US 8,788,547 B2 · Reducing contention and messaging traffic in a distributed shared caching for clustered file systems

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 8,788,547 B2
- Document ID: US8788547B2
- Status: Granted
- Kind: B2
- Application number: 13/733,194
- Filed: 2013-01-03
- Published: 2013-07-25
- Granted: 2014-07-22
- Earliest claimed: 2008-08-25
- Assignees: International Business Machines Corporation
- Applicants: International Business Machines Corporation
- Inventors: Lior Aronovich; Yair Toaff; Gil Paz; Ron Asher
- Web page: https://patentgrep.com/patent/US8788547B2

## CPC

- G06F 21/6218: {to a system of files or objects, e.g. local or distributed file system or database}
- G06F 12/0802: Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F 12/0815: Cache consistency protocols
- G06F 12/0828: {with concurrent directory accessing, i.e. handling multiple concurrent coherency transactions}
- G06F 12/084: with a shared cache
- G06F 16/11: File system administration, e.g. details of archiving or snapshots (error detection or correction of the data by redundancy in operations G06F11/14)
- G06F 16/13: File access structures, e.g. distributed indices (arrangements of input from, or output to, record carriers G06F3/06)
- G06F 16/16: File or folder operations, e.g. details of user interfaces specifically adapted to file systems
- G06F 16/172: Caching, prefetching or hoarding of files
- G06F 16/182: Distributed file systems
- G06F 16/183: {Provision of network file services by network file servers, e.g. by using NFS, CIFS (network file access protocols H04L67/1097)}
- G06F 16/1865: {Transactional file systems}
- G06F 16/24552: {Database cache management}
- G06F 2212/604: Details relating to cache allocation
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Systems. Methods, and Computer Program Products are provided managing global cache coherency and reducing contention and messaging traffic in a distributed shared caching for a clustered file systems (CFS). The CFS manages access to data segment space of the data segments shared between a cluster of nodes by using the file access component. A CFS disk space is partitioned into regions and disk objects are partitioned into groups. Each of the regions and the groups are assigned to a CFS agent residing on each one of the cluster of nodes.

## Claims

### Claim 1

A method for managing global cache coherency and reducing contention and messaging traffic in a distributed shared caching for clustered file systems (CFS), the CFS having a file access component that includes a cache and a distributed shared memory (DSM) module in a computing environment, the method comprising:
managing the access permissions to data segment space of the data segments shared between a cluster of nodes by using the file access component;
partitioning CFS disk space into a plurality of regions and disk objects into a plurality of groups;
assigning each of the plurality of regions and the plurality of groups to a CFS agent residing on each one of the cluster of nodes;
modifying, by a CFS agent, those of the plurality of regions and the plurality of objects assigned to the CFS agent; and
modifying, at an increased frequency, by the CFS agent, those of the plurality of regions and the plurality of objects assigned to the CFS agent as compared to those of the plurality of regions and the plurality of objects that are not assigned to the CFS agent.

### Claim 2 (depends on 1)

The method of claim 1, further including managing the access permissions to data segment space of the data segments by the DSM module.

### Claim 3 (depends on 1)

The method of claim 1, further including providing, in the CFS, the cache of data segment slots on each of the cluster of nodes, wherein the distributed shared memory (DSM) module has no internal memory for the data segments on each of the cluster of nodes and the cache acts as an external memory.

### Claim 4 (depends on 1)

The method of claim 1, further including applying the partitioning to at least one of a file system metadata space and objects and a file system user data space and objects.

### Claim 5 (depends on 1)

The method of claim 1, further including integrating a distributed shared memory with caching for both CFS user data and CFS metadata for alleviating the contention on frequently accessed data segments and reducing messaging traffic for coordination of access to shared storage.

### Claim 6

A system for managing global cache coherency and reducing contention and messaging traffic in a distributed shared caching for a clustered file systems (CFS), 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; and
a file access component included in the CFS, wherein the file access component includes a cache and the DSM module, a plurality of storage devices in communication with the CFS, the cache of data segment slots on each of the cluster of nodes, wherein the cache, acting as an external memory, are included in the CFS, a remote cache memory within each of the cluster of nodes, a cache associated with the node, a CFS agent associated with the CFS, 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 the access permissions to data segment space of the data segments shared between the cluster of nodes by using the file access component;
partitions CFS disk space of the CFS into a plurality of regions and disk objects into a plurality of groups; and
assigns each of the plurality of regions and the plurality of groups to the CFS agent residing on each one of the cluster of nodes, wherein:
the CFS agent modifies those of the plurality of regions and the plurality of objects assigned to the CFS agent, and
the CFS agent modifies, at an increased frequency, those of the plurality of regions and the plurality of objects assigned to the CFS agent as compared to those of the plurality of regions and the plurality of objects that are not assigned to the CFS agent.

### Claim 7 (depends on 6)

The system of claim 6, wherein the processor device manages the access permissions to data segment space of the data segments by the DSM module.

### Claim 8 (depends on 6)

The system of claim 6, wherein the processor device provides, in the CFS, the cache of data segment slots on each of the cluster of nodes, wherein the distributed shared memory (DSM) module has no internal memory for the data segments on each of the cluster of nodes and the cache is acting as an external memory in the CFS.

### Claim 9 (depends on 6)

The system of claim 6, wherein the processor device applies the partitioning to at least one of a file system metadata space and objects and a file system user data space and objects.

### Claim 10 (depends on 6)

The system of claim 6, wherein the processor device integrates a distributed shared memory with caching for both CFS user data and CFS metadata for alleviating the contention on frequently accessed data segments and reducing messaging traffic for coordination of access to shared storage.

### Claim 11

A computer program product for managing global cache coherency and reducing contention and messaging traffic in a distributed shared caching for a clustered file systems (CFS), the CFS having a file access component that includes a cache and a distributed shared memory (DSM) module using a processor device, the CFS having a file access component that includes a cache and a distributed shared memory (DSM) module, and 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:
a first executable portion that manages the access permissions to data segment space of the data segments shared between the cluster of nodes by using the file access component;
a second executable portion that partitions CFS disk space of the CFS into a plurality of regions and disk objects into a plurality of groups;
a third executable portion that assigns each of the plurality of regions and the plurality of groups to a CFS agent residing on each one of the cluster of nodes; and
a fourth executable portion that modifies, by a CFS agent, those of the plurality of regions and the plurality of objects assigned to the CFS agent, and modifies, at an increased frequency, by the CFS agent, those of the plurality of regions and the plurality of objects assigned to the CFS agent as compared to those of the plurality of regions and the plurality of objects that are not assigned to the CFS agent.

### Claim 12 (depends on 11)

The computer program product of claim 11, further including a fourth executable portion that manages the access permissions to data segment space of the data segments by the DSM module.

### Claim 13 (depends on 11)

The computer program product of claim 11, further including a fourth executable portion that provides, in the CFS, the cache of data segment slots on each of the cluster of nodes, wherein the distributed shared memory (DSM) module has no internal memory for the data segments on each of the cluster of nodes and the cache is acting as an external memory in the CFS.

### Claim 14 (depends on 11)

The computer program product of claim 11, further including a fourth executable portion that applies the partitioning to at least one of a file system metadata space and objects and a file system user data space and objects.

### Claim 15 (depends on 11)

The computer program product of claim 11, further including a fourth executable portion that integrates a distributed shared memory with caching for both CFS user data and CFS metadata for alleviating the contention on frequently accessed data segments and reducing messaging traffic for coordination of access to shared storage.
