IP Library Granted Patent US 11,561,978
Granted Patent B2
US 11,561,978 · App. 17/381,026 · Granted Jan 24, 2023

Intelligent cache management for mounted snapshots based on a behavior model

Inventors: Mrityunjay Upadhyay (Telengana, IN); Bhavyan Bharatkumar Mehta (Mumbai, IN); Anand Vibhor (Manalapan, NJ); Jagadeesh Narayanan Kallidaikurichi Swaminathan (Telangana, IN)
Assignee: Commvault Systems, Inc.
G06F16/24552G06F16/24575G06F16/256G06N20/00
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,561,978
App. No.
17/381,026
Granted
Jan 24, 2023
Kind
B2
Abstract

A client computing device receives a behavior model corresponding to a user group associated with a user. The behavior model has been trained with monitored user interactions of one or more files associated with the user group. The client computing device further mounts a snapshot of a file and determines, based on the behavior model, which files of the mounted snapshot to transfer to a locally accessible cache. During use of the client computing device, the client computing device may determine whether the mounted snapshot is accessible. If the mounted snapshot is not accessible, the client computing device may selectively delete, based on the behavior model, one or more of the files stored in the locally accessible cache. If the mounted snapshot is accessible, the client computing device may update the one or more files of the locally accessible cache with monitored user interactions with the mounted snapshot.

Claims (92)

1. A method for managing a cache of a client computing device based on a trained behavior model, the method comprising:

receiving, at a client computing device, a behavior model corresponding to a user group associated with a user of the client computing device, wherein the behavior model has been trained with monitored user interactions of one or more files associated with the user group;

mounting a snapshot of a file system provided by an information management system in communication with the client computing device, wherein the file system comprises one or more files;

determining, based on the behavior model, which of the one or more files of the file system of the mounted snapshot to transfer to a cache locally accessible by the client computing device;

transferring the determined one or more files to the cache locally accessible by the client computing device;

determining whether the mounted snapshot is accessible;

in response to a determination that the mounted snapshot is not accessible:

selectively deleting, based on the behavior model, one or more of the files stored in the cache locally accessible by the client computing device; and

in response to a determination that the mounted snapshot is accessible:

continuously monitoring user interactions with the file system of the mounted snapshot, and

updating the one or more files of the cache locally accessible by the client computing device based on the monitored user interactions.

2. The method of claim 1 , further comprising:

accessing a file of the one or more files of the mounted snapshot;

determining whether the accessed file is already stored in the cache locally accessible by the client computing device; and

transferring the accessed file to the cache locally accessible by the client computing device based on a determination that the accessed file is not already stored in the cache.

3. The method of claim 1 , further comprising:

monitoring user interactions of files of the user of the client computing device; and

updating the behavior model based on the monitored user interactions.

4. The method of claim 1 , further comprising:

determining an available space in the cache locally accessible by the client computing device; and wherein selectively deleting the one or more files stored in the cache is further based on the determined available space.

5. The method of claim 1 , further comprising:

determining whether an operation performed by the client computing device is a write operation on a file of the one or more files of the mounted snapshot; and

based on a determination that the operation is a write operation:

performing the write operation on the file of the one or more files of the mounted snapshot; and

synchronizing the write operation with a cached copy of the file in the cache locally accessible by the client computing device.

6. The method of claim 1 , further comprising:

determining that connectivity to the mounted snapshot has been severed; and

in response to the determination that the connectivity to the mounted snapshot has been severed, redirecting operations on the file of the one or more files of the mounted snapshot to a cache copy of the file stored in the cache locally accessible by the client computing device.

7. The method of claim 6 , further comprising:

determining that connectivity has been restored to the mounted snapshot; and

synchronizing the cache copy of the file with a copy of the file stored in the mounted snapshot.

8. A system for managing a cache of a client computing device based on a trained behavior model, the system comprising:

one or more non-transitory, computer-readable media having computer-executable instructions stored thereon; and,

one or more processors that, having executed the computer-executable instructions, configure a system to perform a plurality of operations comprising

receiving a behavior model corresponding to a user group associated with a user of a client computing device, wherein the behavior model has been trained with monitored user interactions of one or more files associated with the user group;

mounting a snapshot of a file system provided by an information management system in communication with the client computing device, wherein the file system comprises one or more files;

determining, based on the behavior model, which of the one or more files of the file system of the mounted snapshot to transfer to a cache locally accessible by a client computing device;

transferring the determined one or more files to the cache locally accessible by the client computing device;

determining whether the mounted snapshot is accessible;

in response to a determination that the mounted snapshot is not accessible:

selectively deleting, based on the behavior model, one or more of the files stored in the cache locally accessible by the client computing device; and

in response to a determination that the mounted snapshot is accessible:

continuously monitor user interactions with the file system of the mounted snapshot, and

updating the one or more files of the cache locally accessible by the client computing device based on the monitored user interactions.

9. The system of claim 8 , wherein the plurality of operations further comprises:

accessing a file of the one or more files of the mounted snapshot;

determining whether the access file is already stored in the cache locally accessible by the client computing device; and

transferring the accessed file to the cache locally accessible by the client computing device based on a determination that the accessed file is not already stored in the cache.

10. The system of claim 8 , wherein the plurality of operations further comprises:

monitoring user interactions of files of the user of the client computing device; and

updating the behavior model based on the monitored user interactions.

11. The system of claim 8 , wherein the plurality of operations further comprises:

determining an available space in the cache locally accessible by the client computing device; and wherein selectively deleting the one or more files stored in the cache is further based on the determined available space.

12. The system of claim 8 , wherein the plurality of operations further comprises:

determining whether an operation performed by the client computing device is a write operation on a file of the one or more files of the mounted snapshot; and

based on a determination that the operation is a write operation:

performing the write operation on the file of the one or more files of the mounted snapshot; and

synchronizing the write operation with a cached copy of the file in the cache locally accessible by the client computing device.

13. The system of claim 8 , wherein the plurality of operations further comprises:

determining that connectivity to the mounted snapshot has been severed; and

in response to the determination that the connectivity to the mounted snapshot has been severed, redirecting operations on the file of the one or more files of the mounted snapshot to a cache copy of the file stored in the cache locally accessible by the client computing device.

14. The system of claim 13 , wherein the plurality of operations further comprises:

determining that connectivity has been restored to the mounted snapshot; and

synchronizing the cache copy of the file with the file of the one or more files of the mounted snapshot.

15. A non-transitory, computer-readable media having computer-executable instructions stored thereon that, when executed by one or more processors, configure a system to perform a plurality of operations comprising:

receiving a behavior model corresponding to a user group associated with a user of a client computing device, wherein the behavior model has been trained with monitored user interactions of one or more files associated with the user group;

mounting a snapshot of a file system provided by an information management system in communication with the client computing device, wherein the file system comprises one or more files;

determining, based on the behavior model, which of the one or more files of the file system of the mounted snapshot to transfer to a cache locally accessible by the client computing device;

transferring the determined one or more files to the cache locally accessible by the client computing device;

determining whether the mounted snapshot is accessible;

in response to a determination that the mounted snapshot is not accessible:

selectively deleting, based on the behavior model, one or more of the files stored in the cache locally accessible by the client computing device; and

in response to a determination that the mounted snapshot is accessible:

continuously monitor user interactions with the file system of the mounted snapshot, and

updating the one or more files of the cache locally accessible by the client computing device based on the monitored user interactions.

16. The non-transitory, computer-readable media of claim 15 , wherein the plurality of operations further comprises:

accessing a file of the one or more files of the mounted snapshot;

determining whether the accessed file is already stored in the cache locally accessible by the client computing device; and

transferring the accessed file to the cache locally accessible by the client computing device based on a determination that the accessed file is not already stored in the cache.

17. The non-transitory, computer-readable media of claim 15 , wherein the plurality of operations further comprises:

monitoring user interactions of files of the user of the client computing device; and

updating the behavior model based on the monitored user interactions.

18. The non-transitory, computer-readable media of claim 15 , wherein the plurality of operations further comprises:

determining an available space in the cache locally accessible by the client computing device; and wherein selectively deleting the one or more files stored in the cache is further based on the determined available space.

19. The non-transitory, computer-readable media of claim 15 , wherein the plurality of operations further comprises:

determining whether an operation performed by the client computing device is a write operation on a file of the one or more files of the mounted snapshot; and

based on a determination that the operation is a write operation:

performing the write operation on the file of the one or more files of the mounted snapshot; and

synchronizing the write operation with a cached copy of the file in the cache locally accessible by the client computing device.

20. The non-transitory, computer-readable media of claim 15 , wherein the plurality of operations further comprises:

determining that connectivity to the mounted snapshot has been severed; and

in response to the determination that the connectivity to the mounted snapshot has been severed, redirecting operations on the file of the one or more files of the mounted snapshot to a cache copy of the file stored in the cache locally accessible by the client computing device.

Assignments (3)
SUPPLEMENTAL CONFIRMATORY GRANT OF SECURITY INTEREST IN UNITED STATES PATENTS Recorded Apr 16, 2025
From: COMMVAULT SYSTEMS, INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 070864/0344 →
SECURITY INTEREST Recorded Dec 13, 2021
From: COMMVAULT SYSTEMS, INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 058496/0836 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 6, 2021
From: UPADHYAY, MRITYUNJAY; MEHTA, BHAVYAN BHARATKUMAR; VIBHOR, ANAND; SWAMINATHAN, JAGADEESH NARAYANAN KALLIDAIKURICHI
To: COMMVAULT SYSTEMS, INC.
Reel/Frame 057110/0029 →
Continuity (2)
Provisional Application 63216395 · Jun 29, 2021
Related Publication 20220414103A1 · Dec 29, 2022
Cited By (1)
US 12,566,680