IP Library Granted Patent US 8,862,813
Granted Patent B2
US 8,862,813 · App. 12/828,892 · Granted Oct 14, 2014

Method, computer program product and appartus for accelerating responses to requests for transactions involving data operations

Inventors: Ziya Aral (Pompano Beach, FL); Roni Putra (Pompano Beach, FL)
Assignee: DataCore Software Corporation
G06F12/0873
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 8,862,813
App. No.
12/828,892
Granted
Oct 14, 2014
Kind
B2
Abstract

Responding to IO requests made by an application to an operating system within a computing device implements IO performance acceleration that interfaces with the logical and physical disk management components of the operating system and within that pathway provides a system memory based disk block cache. The logical disk management component of the operating system identifies logical disk addresses for IO requests sent from the application to the operating system. These addresses are translated to physical disk addresses that correspond to disk blocks available on a physical storage resource. The disk block cache stores cached disk blocks that correspond to the disk blocks available on the physical storage resource, such that IO requests may be fulfilled from the disk block cache. Provision of the disk block cache between the logical and physical disk management components accommodates tailoring of efficiency to any applications making IO requests, and flexible interaction with various different physical disks.

Claims (40)

1. A method for accelerating responses to requests for transactions involving data operations, the method comprising:

presenting from a server device a logical disk having corresponding physical storage resources that are separate from the server device, the logical disk being presented to a client device;

maintaining a disk block cache corresponding to the logical disk and the physical storage resources within the server device, the cache including blocks of data for the logical disk that are frequently accessed, the cache being resident in a memory having a responsiveness that is faster than a responsiveness of the physical storage resources, the cache being transparent to the client device to which the logical disk is presented;

receiving from the client device a transaction request that involves a data operation on the logical disk, the transaction request being received through a first network connection with the client device;

satisfying the data operation on the logical disk using the cache; and

reconciling the cache with data for the logical disk that is stored on the physical storage resources, through a second network connection with the physical storage devices, the second network connection being external to the server device.

2. The method of claim 1 , wherein the server device hosts an application, and the frequently accessed data includes a first tier of data managed by the application at the server device.

3. The method of claim 2 , wherein the frequently accessed data does not include a second tier of data that is managed by the application, the second tier of data being absent from the cache and resident on the physical storage resources for access by the application through the second network connection.

4. The method of claim 1 , wherein the transaction request is received from one or more applications.

5. The method of claim 1 , wherein the memory is a solid state memory that is attached to the server device.

6. The method of claim 1 , wherein the first network connection includes at least one of a LAN connection or an Internet connection.

7. The method of claim 6 , wherein the second network connection implements a SCSI protocol.

8. The method of claim 6 , wherein the second network connection implements a Fibre Channel (FC) protocol.

9. A computer program product for accelerating responses to requests for transactions involving data operations, the computer program product comprising a non-transitory computer readable medium having program code stored thereon, the program code being executable to perform operations comprising:

presenting from a server device a logical disk having corresponding physical storage resources that are separate from the server device, the logical disk being presented to a client device;

maintaining a disk block cache corresponding to the logical disk and the physical storage resources within the server device, the cache including blocks of data for the logical disk that are frequently accessed, the cache being resident in a memory having a responsiveness that is faster than a responsiveness of the physical storage resources, the cache being transparent to the client device to which the logical disk is presented;

receiving from the client device a transaction request that involves a data operation on the logical disk, the transaction request being received through a first network connection with the client device;

satisfying the data operation on the logical disk using the cache; and

reconciling the cache with data for the logical disk that is stored on the physical storage resources, through a second network connection with the physical storage devices, the second network connection being external to the server device.

10. The computer program product of claim 9 , wherein the server device hosts an application, and the frequently accessed data includes a first tier of data managed by the application at the server device.

11. The computer program product of claim 10 , wherein the frequently accessed data does not include a second tier of data that is managed by the application, the second tier of data being absent from the cache and resident on the physical storage resources for access by the application through the second network connection.

12. The computer program product of claim 9 , wherein the transaction request is received from one or more applications.

13. The computer program product of claim 9 , wherein the memory is a solid state memory that is attached to the server device.

14. The computer program product of claim 9 , wherein the first network connection includes at least one of a LAN connection or an Internet connection.

15. The computer program product of claim 14 , wherein the second network connection implements a SCSI protocol.

16. The computer program product of claim 14 , wherein the second network connection implements a Fibre Channel (FC) protocol.

17. A server apparatus for accelerating responses to requests for transactions involving data operations, the apparatus comprising:

a processor; and

a memory, the memory storing program code executable by the processor to perform operations comprising

presenting from the server apparatus a logical disk having corresponding physical storage resources that are separate from the server apparatus, the logical disk being presented to a client device;

maintaining a disk block cache corresponding to the logical disk and the physical storage resources within the server apparatus, the cache including blocks of data for the logical disk that are frequently accessed, the cache being resident in a memory having a responsiveness that is faster than a responsiveness of the physical storage resources, the cache being transparent to the client device to which the logical disk is presented;

receiving from the client device a transaction request that involves a data operation on the logical disk, the transaction request being received through a first network connection with the client device;

satisfying the data operation on the logical disk using the cache; and

reconciling the cache with data for the logical disk that is stored on the physical storage resources, through a second network connection with the physical storage devices, the second network connection being external to the server apparatus.

18. The server apparatus of claim 17 , wherein the server apparatus hosts an application, and the frequently accessed data includes a first tier of data managed by the application at the server apparatus.

19. The server apparatus of claim 18 , wherein the frequently accessed data does not include a second tier of data that is managed by the application, the second tier of data being absent from the cache and resident on the physical storage resources for access by the application through the second network connection.

20. The server apparatus of claim 17 , wherein the memory is a solid state memory that is attached to the server apparatus.

21. The server apparatus of claim 17 , wherein the first network connection includes at least one of a LAN connection or an Internet connection.

22. The server apparatus of claim 21 , wherein the second network connection implements a SCSI protocol.

23. The server apparatus of claim 21 , wherein the second network connection implements a Fibre Channel (FC) protocol.

Assignments (3)
SECURITY INTEREST Recorded May 29, 2024
From: DATACORE SOFTWARE CORPORATION
To: VISTARA TECHNOLOGY GROWTH FUND V MASTER, LP
Reel/Frame 067563/0884 →
SECURITY INTEREST Recorded Oct 28, 2021
From: DATACORE SOFTWARE CORPORATION
To: STIFEL BANK
Reel/Frame 057969/0086 →
SECURITY INTEREST Recorded Dec 14, 2017
From: DATACORE SOFTWARE CORPORATION
To: SILICON VALLEY BANK
Reel/Frame 044400/0417 →
Continuity (3)
Continuation 11319734 · Dec 29, 2005
Related Publication 20120005452A1 · Jan 5, 2012
Related Publication 20130103922A9 · Apr 25, 2013