# US 2024/0201887 A1 · Storage array aware dynamic slicing of a file system

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

- Number: US 2024/0201887 A1
- Document ID: US20240201887A1
- Status: Published application
- Kind: A1
- Application number: 18/082,995
- Filed: 2022-12-16
- Published: 2024-06-20
- Earliest claimed: 2022-12-16
- Assignees: Dell Products L.P.
- Applicants: Dell Products L.P.
- Inventors: Shelesh Chopra; Upanshu Singhal
- Web page: https://patentgrep.com/patent/US20240201887A1

## CPC

- G06F 3/065: {Replication mechanisms}
- G06F 3/0604: {Improving or facilitating administration, e.g. storage management}
- G06F 3/067: {Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]}
- G06F 11/1446: Point-in-time backing up or restoration of persistent data
- G06F 11/1458: {Management of the backup or restore process}
- G06F 11/1469: {Backup restoration techniques}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Embodiments of the invention relate to methods and systems for efficiently performing one or more backups of assets stored on a shared storage. In one or more embodiments, the assets are sliced into a plurality of slices and the size of the slices is determined based on a maximum recommended number of connections that can be used and either a previous backups number of connections used, or the total number of connections currently used. The recommended number of connections to use is also calculated based on system telemetry. By changing the size of the slices, one or more embodiments of the invention may ensure that the backup is performed as efficiently as possible. This may result in better utilization of system and network resources as well as a better backup and recovery performance.

## Claims

### Claim 1

A method for performing an incremental backup of a shared storage, the method comprising:
initiating the incremental backup of the shared storage;
retrieving current system telemetry associated with the shared storage;
using the current system telemetry, determine a maximum number of connections per node the shared storage can support;
calculating, using the maximum number of connections per node the shared storage can support, a recommended number of connections to use for performing the incremental backup;
calculating, a new slice size, wherein a previous slice size is increased or decreased to produce the new slice size depending on a comparison between a number of active connections and the maximum number of connections per node; and
performing the incremental backup of the shared storage using the recommended number of connections and the new slice size.

### Claim 2 (depends on 1)

The method of claim 1, wherein calculating the recommended number of connections to use for performing the incremental backup comprises multiplying the maximum number of connections the shared storage can support by a predetermined percentage and a number of nodes of the shared storage that are currently available for performing the incremental backup.

### Claim 3 (depends on 2)

The method of claim 2, wherein the predetermined percentage is provided by a user of one or more production hosts associated with the shared storage.

### Claim 4 (depends on 2)

The method of claim 2, wherein the predetermined percentage is calculated based on a predicted usage of the shared storage while the incremental backup is being performed.

### Claim 5 (depends on 1)

The method of claim 1, wherein the new slice size is calculated by decreasing a size of the previous slice size by a predetermined percentage when the number of active connections is less than or equal to a second predetermined percentage of the maximum number of connections per node the shared storage can support.

### Claim 6 (depends on 5)

The method of claim 5, wherein both the predetermined percentage and the second predetermined percentage are 50%.

### Claim 7 (depends on 1)

The method of claim 1, wherein the new slice size is calculated by increasing a size of the previous slice size by a predetermined percentage when the number of active connections is greater than a second predetermined percentage of the maximum number of connections per node the shared storage can support.

### Claim 8 (depends on 7)

The method of claim 7, wherein both the predetermined percentage and the second predetermined percentage are 50%.

### Claim 9

A non-transitory computer readable medium comprising computer readable program code, which when executed by a computer processor, enables the computer processor to perform a method for performing an incremental backup of a shared storage, the method comprising:
initiating the incremental backup of the shared storage;
retrieving current system telemetry associated with the shared storage;
using the current system telemetry, determine a maximum number of connections per node the shared storage can support;
calculating, using the maximum number of connections per node the shared storage can support, a recommended number of connections to use for performing the incremental backup;
calculating, a new slice size, wherein a previous slice size is increased or decreased to produce the new slice size depending on a comparison between a number of active connections and the maximum number of connections per node; and
performing the incremental backup of the shared storage using the recommended number of connections and the new slice size.

### Claim 10 (depends on 9)

The non-transitory computer readable medium of claim 9, wherein calculating the recommended number of connections to use for performing the incremental backup comprises multiplying the maximum number of connections the shared storage can support by a predetermined percentage and a number of nodes of the shared storage that are currently available for performing the incremental backup.

### Claim 11 (depends on 10)

The non-transitory computer readable medium of claim 10, wherein the predetermined percentage is provided by a user of one or more production hosts associated with the shared storage.

### Claim 12 (depends on 10)

The non-transitory computer readable medium of claim 10, wherein the predetermined percentage is calculated based on a predicted usage of the shared storage while the incremental backup is being performed.

### Claim 13 (depends on 9)

The non-transitory computer readable medium of claim 9, wherein the new slice size is calculated by decreasing a size of the previous slice size by a predetermined percentage when the number of active connections is less than or equal to a second predetermined percentage of the maximum number of connections per node the shared storage can support.

### Claim 14 (depends on 9)

The non-transitory computer readable medium of claim 9, wherein the new slice size is calculated by increasing a size of the previous slice size by a predetermined percentage when the number of active connections is greater than a second predetermined percentage of the maximum number of connections per node the shared storage can support.

### Claim 15

A system comprising:
a processor; and
a memory comprising instructions, which when executed by the processor, perform a method for performing an incremental backup of a shared storage, the method comprising:
initiating the incremental backup of the shared storage;
retrieving current system telemetry associated with the shared storage;
using the current system telemetry, determine a maximum number of connections per node the shared storage can support;
calculating, using the maximum number of connections per node the shared storage can support, a recommended number of connections to use for performing the incremental backup;
calculating, a new slice size, wherein a previous slice size is increased or decreased to produce the new slice size depending on a comparison between a number of active connections and the maximum number of connections per node; and
performing the incremental backup of the shared storage using the recommended number of connections and the new slice size.

### Claim 16 (depends on 15)

The system of claim 15, wherein calculating the recommended number of connections to use for performing the incremental backup comprises multiplying the maximum number of connections the shared storage can support by a predetermined percentage and a number of nodes of the shared storage that are currently available for performing the incremental backup.

### Claim 17 (depends on 16)

The system of claim 16, wherein the predetermined percentage is provided by a user of one or more production hosts associated with the shared storage.

### Claim 18 (depends on 16)

The system of claim 16, wherein the predetermined percentage is calculated based on a predicted usage of the shared storage while the incremental backup is being performed.

### Claim 19 (depends on 15)

The system of claim 15, wherein the new slice size is calculated by decreasing a size of the previous slice size by a predetermined percentage when the number of active connections is less than or equal to a second predetermined percentage of the maximum number of connections per node the shared storage can support.

### Claim 20 (depends on 15)

The system of claim 15, wherein the new slice size is calculated by increasing a size of the previous slice size by a predetermined percentage when the number of active connections is greater than a second predetermined percentage of the maximum number of connections per node the shared storage can support
