IP Library Granted Patent US 9,170,930
Granted Patent B1
US 9,170,930 · App. 14/480,943 · Granted Oct 27, 2015

Method for achieving sequential I/O performance from a random workload

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,170,930
App. No.
14/480,943
Granted
Oct 27, 2015
Kind
B1
Abstract

Methods, computer media encoding instructions, and that receive write requests directed to non-sequential logical block addresses and writing the write requests to sequential disk block addresses in a storage system include an overprovision of a storage system to include an increment of additional storage space such that it is more likely a large enough sequential block of storage will be available to accommodate incoming write requests.

Claims (53)

1. A system, comprising:

at least one video camera that provides a predetermined amount of data for a predetermined time;

a storage system coupled to the at least one video camera that has storage space and is configured to have free storage space available within an adjustment time after the predetermined time, the storage system being at least equal to the predetermined amount for the predetermined time plus an amount based on the predetermined amount of received data, the predetermined time and the adjustment time; and

a processing system coupled to the storage system and the at least one video camera that receives a plurality of write requests from the at least one video camera.

2. The system according to claim 1 , wherein the processing system comprises:

a processor; and

a computer-readable medium comprising computer-executable instructions that, when executed by the processor, converts first and second received write requests directed to first and second received non-sequential logical block addresses to sequential write requests for use with the storage system.

3. The system according to claim 2 , wherein the computer-executable instructions include instructions that perform at least one of:

receive the first write request directed to the first received logical block address; write the first write request to the first free disk block address;

store an association between the first free disc block address and the first received logical block address;

receive the second write request directed to the second received logical block address;

write the second write request to the second free disc block address; and

store an association between the second free disc block address and the second received logical block address.

4. The system according to claim 1 , wherein the storage system includes sequential first and second free disk block addresses, the first and second free disk block addresses different than the first and second received logical block addresses.

5. The system according to claim 1 , wherein sequential disk block addresses are available to store incoming write requests.

6. The system according to claim 1 , wherein the processing system writes

the plurality of write requests to sequential disk block addresses in the storage system.

7. The system according to claim 1 , wherein the write requests from the at least one video camera are directed to non-sequential logical block addresses in the storage system.

8. A method, comprising:

providing, by at least one video camera, a predetermined amount of data for a predetermined time;

providing, in a storage system coupled to the at least one video camera, storage space and free storage space available within an adjustment time after the predetermined time, the storage system being at least equal to the predetermined amount for the predetermined time plus an amount based on the predetermined amount of received data, the predetermined time and the adjustment time; and

receiving, by a processing system coupled to the storage system and the at least one video camera, a plurality of write requests from the at least one video camera.

9. The method according to claim 8 , wherein the processing system comprises:

a processor; and

a non-transitory computer-readable medium comprising computer-executable instructions that, when executed by the processor performs, converting first and second received write requests directed to first and second received non-sequential logical block addresses to sequential write requests for use with the storage system.

10. The method according to claim 9 , wherein the computer-executable instructions include instructions that perform at least one of:

receiving the first write request directed to the first received logical block address;

writing the first write request to the first free disk block address;

storing an association between the first free disc block address and the first received logical block address;

receiving the second write request directed to the second received logical block address;

writing the second write request to the second free disc block address; and

storing an association between the second free disc block address and the second received logical block address.

11. The method according to claim 8 , wherein the storage system includes sequential first and second free disk block addresses, the first and second free disk block addresses different than the first and second received logical block addresses.

12. The method according to claim 8 , wherein sequential disk block addresses are available to store incoming write requests.

13. The method according to claim 8 , wherein the processing system writes the plurality of write requests to sequential disk block addresses in the storage system.

14. The method according to claim 8 , wherein the write requests from the at least one video camera are directed to non-sequential logical block addresses in the storage system.

15. A non-transitory computer readable medium comprising computer-executable instructions that, when executed by the processor performs:

providing, by at least one video camera, a predetermined amount of data for a predetermined time;

providing, in a storage system coupled to the at least one video camera, storage space and free storage space available within an adjustment time after the predetermined time, the storage system being at least equal to the predetermined amount for the predetermined time plus an amount based on the predetermined amount of received data, the predetermined time and the adjustment time; and

receiving, by a processing system coupled to the storage system and the at least one video camera, a plurality of write requests from the at least one video camera.

16. The non-transitory computer readable medium according to claim 15 , wherein the processing system comprises:

a processor; and

a non-transitory computer-readable medium comprising computer-executable instructions that, when executed by the processor performs, converting first and second received write requests directed to first and second received non-sequential logical block addresses to sequential write requests for use with the storage system.

17. The non-transitory computer readable medium according to claim 16 , wherein the computer-executable instructions include instructions that perform at least one of:

receiving the first write request directed to the first received logical block address;

writing the first write request to the first free disk block address;

storing an association between the first free disc block address and the first received logical block address;

receiving the second write request directed to the second received logical block address;

writing the second write request to the second free disc block address; and

storing an association between the second free disc block address and the second received logical block address.

18. The non-transitory computer readable medium according to claim 15 , wherein the storage system includes sequential first and second free disk block addresses, the first and second free disk block addresses different than the first and second received logical block addresses.

19. The non-transitory computer readable medium according to claim 15 , wherein sequential disk block addresses are available to store incoming write requests.

20. The non-transitory computer readable medium according to claim 15 , wherein the processing system writes the plurality of write requests to sequential disk block addresses in the storage system.

Assignments (4)
CORRECTIVE ASSIGNMENT TO CORRECT THE CORRECT 1 ERRONEOUSLY LISTED PATENT ON SCHEDULE A. THE ERRONEOUS PATENT NUMBER US10635539 PREVIOUSLY RECORDED AT REEL: 61365 FRAME: 572. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jul 23, 2024
From: OPEN INVENTION NETWORK LLC
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 068298/0205 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 1, 2022
From: OPEN INVENTION NETWORK LLC
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 061365/0571 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 13, 2022
From: ROWE, ALAN; SRINIVASAN, CHANDRIKA; NARKHEDE, SAMEER; AU, WING YEE; DALGIC, ISMAIL
To: INTRANSA, INC.
Reel/Frame 059579/0371 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 13, 2022
From: INTRANSA, LLC FOR THE BENEFIT OF CREDITORS OF INTRANSA, INC.
To: OPEN INVENTION NETWORK LLC
Reel/Frame 059690/0672 →