IP Library › Granted Patent US 7,412,594
Granted Patent B2
US 7,412,594 · App. 10/801,263 · Granted Aug 12, 2008

Method and apparatus for managing data access and storage of data located on multiple storage devices

Assignee: Oracle International Corporation
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 7,412,594
App. No.
10/801,263
Granted
Aug 12, 2008
Kind
B2
Abstract

An apparatus and method for accessing a data item from a storage system having a plurality of data storage devices are disclosed. I/O operation requests are submitted to multiple data storage devices for each data item to be accessed. The I/O operation requests are issued to copies of the data items that reside on a plurality of data storage devices. More I/O operation requests are submitted than the number of data items that are to be accessed, written, or updated.

Claims (44)

1. A system for reading a data item, comprising:

means for maintaining a plurality of copies of said data item on a plurality of data storage devices;

means for receiving a read request for said data item;

means for initiating at least two read operation requests to at least two of said plurality of data storage devices in response to receiving said read request; and

means for identifying a first one of said at least two read operations requests as projecting to produce a fastest response time.

2. The system of claim 1 , further comprising the means for canceling a second one of said at least two read operation requests.

3. The system of claim 1 , further comprising means for ignoring a copy of said data item retrieved by a second one of said at least two read operation requests.

4. The system of claim 1 , wherein the means for identifying a first one of said at least two read operation requests includes means for identifying said first one of said at least two read operation requests as having a first movement from one level of request queues to another.

5. The system of claim 1 , wherein the means for identifying a first one of said at least two read operation requests includes means for identifying said first one of said at least two read operation requests as having a first retrieval of a copy of said data item from one of said plurality of data storage devices.

6. The system of claim 1 , wherein the means for maintaining a plurality of copies of said data item includes means for mirroring said data item from a first one of said plurality of data storage devices to a second one of said plurality of data storage devices.

7. The system of claim 1 , wherein the means for maintaining a plurality of copies of said data item includes means for maintaining said plurality of copies of said data item on a plurality of disk drives.

8. A method of reading a data item from a database, comprising:

maintaining a plurality of copies of said data item from said database on a plurality of data storage devices;

receiving a read request for a predetermined number of copies of said data item;

initiating read operation requests to a selected number of the data storage devices in response to the read request, the selected number exceeding the predetermined number.

9. The method of claim 8 in which the data item comprises a video or audio data item.

10. The method of claim 9 in which the video or audio data item is associated with a video or audio stream.

11. The method of claim 9 in which the video or audio data item is associated with a video or audio stream.

12. The method of claim 8 , in which the act of maintaining a plurality of copies of said data item is performed at a granularity level smaller than an entire disk drive.

13. The method of claim 8 , further comprising identifying a first set of said read operation requests that are projected to produce a fastest response time.

14. The method of claim 13 , further comprising canceling a second set of said read operation requests.

15. The method of claim 13 , further comprising ignoring a copy of said data item retrieved by a second set of said read operation requests.

16. A system for reading a data item from a database, comprising:

means for maintaining a plurality of copies of said data item from said database on a plurality of data storage devices;

means for receiving a read request for a predetermined number of copies of said data item;

means for initiating read operation requests to a selected number of the data storage devices in response to the read request, the selected number exceeding the predetermined number.

17. A computer program product that includes a volatile or non-volatile medium readable by a processor, the medium having stored thereon a sequence of instructions which, when executed by said processor, causes said processor to execute a process of reading a data item from a database, the process comprising:

maintaining a plurality of copies of said data item from said database on a plurality of data storage devices;

receiving a read request for a predetermined number of copies of said data item;

initiating read operation requests to a selected number of the data storage devices in response to the read request, the selected number exceeding the predetermined number.

18. The computer program product of claim 17 in which the data item comprises a video or audio data item.

19. The computer program product of claim 18 in which the video or audio data item is associated with a video or audio stream.

20. The computer program product of claim 18 in which the video or audio data item is associated with a video or audio stream.

21. The computer program product of claim 17 , in which the act of maintaining a plurality of copies of said data item is performed at a granularity level smaller than an entire disk drive.

22. The computer program product of claim 17 , further comprising identifying a first set of said read operation requests that are projected to produce a fastest response time.

23. The computer program product of claim 22 , further comprising canceling a second set of said read operation requests.

24. The computer program product of claim 22 , further comprising ignoring a copy of said data item retrieved by a second set of said read operation requests.

25. The system of claim 16 in which the data item comprises a video or audio data item.

26. The system of claim 25 in which the video or audio data item is associated with a video or audio stream.

27. The system of claim 25 in which the video or audio data item is associated with a video or audio stream.

28. The system of claim 16 , in which the means for maintaining a plurality of copies of said data item is performed at a granularity level smaller than an entire disk drive.

29. The system of claim 16 , further comprising a means for identifying a first set of said read operation requests that are projected to produce a fastest response time.

30. The system of claim 29 , further comprising a means for canceling a second set of said read operation requests.

31. The system of claim 29 , further comprising a means for ignoring a copy of said data item retrieved by a second set of said read operation requests.

Continuity (3)
Continuation 1000834700 · Nov 9, 2001
Division 0923115000 · Jan 15, 1999
Related Publication 20040177221A1 · Sep 9, 2004