IP Library Granted Patent US 9,529,814
Granted Patent B1
US 9,529,814 · App. 14/473,761 · Granted Dec 27, 2016

Selective file system caching based upon a configurable cache map

Inventors: Edwin Menze (Portland, OR); Raghupathi Malige (San Jose, CA); Bala Kumaresan (East Palo Alto, CA); Tillmann Reusse (Mountain View, CA)
Assignee: Veritas Technologies LLC
G06F17/30132G06F2212/303
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 9,529,814
App. No.
14/473,761
Granted
Dec 27, 2016
Kind
B1
Abstract

Techniques for implementing selective file system caching are disclosed. In one particular embodiment, the techniques may be realized as a method including receiving an I/O request from an application such that the application provides a no-cache indication to a file system to implement a direct. I/O for the I/O request, comparing the I/O request and the no-cache indication with a configurable cache map such that the configurable cache map indicates a selective caching based on an I/O type and a file type, processing the I/O request to render a caching decision based on the comparison, and executing selective caching on the I/O request in accordance with the caching decision.

Claims (33)

1. A method comprising:

receiving an I/O request from an application, wherein the application provides a no-cache indication to a file system to implement a direct I/O for the I/O request;

comparing the I/O request and the no-cache indication with a configurable cache map, wherein the configurable cache map indicates a selective caching based on an I/O type and a file type;

processing the I/O request to render a caching decision based on the comparison; and

executing selective caching on the I/O request in accordance with the caching decision, wherein the application comprises an application cache, and wherein the caching decision is based upon avoiding double caching at both the application cache and a file system cache.

2. The method of claim 1 , wherein the I/O type and the file type are received as metadata associated with the I/O requests.

3. The method of claim 1 , wherein the application is a database application.

4. The method of claim 1 , wherein the application interfaces with the file system via an ODM compliant interface module.

5. The method of claim 1 , wherein the configurable cache map is user defined via a command line interface of the file system.

6. The method of claim 1 , wherein the configurable cache map is user defined via a GUI interface of the file system.

7. The method of claim 1 , wherein the configurable cache map includes a plurality of file type and I/O type pairs, and a corresponding caching decision for each of the plurality of pairs.

8. The method of claim 7 , wherein the plurality of file types are specific to the application.

9. The method of claim 1 , wherein at least one caching decision causes the file system to implement read ahead caching into the file system cache.

10. The method of claim 9 , wherein the read ahead caching is implemented in accordance with the caching decisions and the configurable cache map.

11. A non-transitory computer readable storage medium having stored thereon, computer executable instructions that, when executed by a computer system cause the computer system to perform a method comprising:

receiving an I/O request from an application, wherein the application provides a no-cache indication to a file system to implement a direct I/O for the I/O request;

comparing the I/O request and the no-cache indication with a configurable cache map, wherein the configurable cache map indicates a selective caching based on an I/O type and a file type;

processing the I/O request to render a caching decision based on the comparison; and

executing selective caching on the I/O request in accordance with the caching decision, wherein the application comprises an application cache, and wherein the caching decision is based upon avoiding double caching at both the application cache and a file system cache.

12. The computer readable storage medium of claim 11 , wherein the database application implements application directed caching of application I/O requests into the application cache separate from the file system cache.

13. The computer readable storage medium of claim 11 , wherein the file type is specific to the database application.

14. The computer readable storage medium of claim 11 , wherein the database application interfaces with the file system via an ODM compliant interface module.

15. The computer readable storage medium of claim 11 , wherein at least one caching decision causes the file system to implement read ahead caching into the file system cache, the read ahead caching implemented in accordance with the caching decisions and the configurable cache map.

16. A database computer system, comprising:

a computer system having a processor coupled to a computer readable storage media and executing computer readable code which causes the computer system to:

receive an I/O request from an application, wherein the application provides a no-cache indication to a file system to implement a direct I/O for the I/O request;

compare the I/O request and the no-cache indication with a configurable cache map, wherein the configurable cache map indicates a selective caching based on an I/O type and a file type;

process the I/O request to render a caching decision based on the comparison; and

execute selective caching on the I/O request in accordance with the caching decision wherein the application comprises an application cache, and wherein the caching decision is based upon avoiding double caching at both the application cache and a file system cache.

17. The computer system of claim 16 , wherein the database application implements application directed caching of application I/O requests into the application cache separate from the file system cache.

18. The computer system of claim 16 , the file type is specific to the database application.

19. The computer system of claim 16 , wherein at least one caching decision causes the file system to implement read ahead caching into the file system cache, the read ahead caching implemented in accordance with the caching decisions and the configurable cache map.

20. The computer system of claim 16 , wherein the configurable cache map is user configurable via a command line interface of the file system.

Assignments (15)
SECURITY INTEREST Recorded Dec 12, 2025
From: ARCTERA US LLC
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 073951/0470 →
TERMINATION AND RELEASE OF PATENT SECURITY AGREEMENT AT R/F 070530/0497 Recorded Dec 1, 2025
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: ARCTERA US LLC
Reel/Frame 073833/0730 →
TERMINATION AND RELEASE OF PATENT SECURITY AGREEMENT AT R/F 069585/0150 Recorded Dec 1, 2025
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: ARCTERA US LLC
Reel/Frame 073833/0848 →
RELEASE OF SECURITY INTEREST Recorded Dec 16, 2024
From: ACQUIOM AGENCY SERVICES LLC, AS COLLATERAL AGENT
To: VERITAS TECHNOLOGIES LLC (F/K/A VERITAS US IP HOLDINGS LLC)
Reel/Frame 069712/0090 →
RELEASE OF SECURITY INTEREST Recorded Dec 13, 2024
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 069634/0584 →
SECURITY INTEREST Recorded Dec 10, 2024
From: ARCTERA US LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 069563/0243 →
PATENT SECURITY AGREEMENT Recorded Dec 10, 2024
From: ARCTERA US LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 069585/0150 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2024
From: VERITAS TECHNOLOGIES LLC
To: ARCTERA US LLC
Reel/Frame 069548/0468 →
ASSIGNMENT OF SECURITY INTEREST IN PATENT COLLATERAL Recorded Nov 25, 2024
From: BANK OF AMERICA, N.A., AS ASSIGNOR
To: ACQUIOM AGENCY SERVICES LLC, AS ASSIGNEE
Reel/Frame 069440/0084 →
TERMINATION AND RELEASE OF SECURITY IN PATENTS AT R/F 037891/0726 Recorded Nov 30, 2020
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: VERITAS US IP HOLDINGS, LLC
Reel/Frame 054535/0814 →
SECURITY INTEREST Recorded Aug 20, 2020
From: VERITAS TECHNOLOGIES LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 054370/0134 →
MERGER Recorded Apr 18, 2016
From: VERITAS US IP HOLDINGS LLC
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 038483/0203 →
SECURITY INTEREST Recorded Feb 23, 2016
From: VERITAS US IP HOLDINGS LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037891/0001 →
SECURITY INTEREST Recorded Feb 23, 2016
From: VERITAS US IP HOLDINGS LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 037891/0726 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 4, 2016
From: SYMANTEC CORPORATION
To: VERITAS US IP HOLDINGS LLC
Reel/Frame 037693/0158 →
Continuity (1)
Continuation 12619417 · Nov 16, 2009