IP Library Granted Patent US 8,819,365
Granted Patent B2
US 8,819,365 · App. 13/153,716 · Granted Aug 26, 2014

Flexible data storage system

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,819,365
App. No.
13/153,716
Granted
Aug 26, 2014
Kind
B2
Abstract

Methods and systems for managing and locating available storage space in a system comprising data files stored in a plurality of storage devices and configured in accordance with various data storage schemes (mirroring, striping and parity-striping). A mapping table associated with each of the plurality of storage devices is used to determine the available locations and amount of available space in the storage devices. The data storage schemes for one or more of the stored data files are changed to a basic storage mode when the size of a new data file configured in accordance with an assigned data storage scheme exceeds the amount of available space. The configured new data file is stored in accordance with the assigned data storage scheme in one or more of the available locations and the locations of the new data file are recorded.

Claims (32)

1. A data storage system comprising:

a first storage device configured for storing a first data segment;

a second storage device configured for mirroring the first data segment stored in the first storage device;

a data structure encoding locations of data segments in the first and the second storage devices in a memory operatively coupled to at least one of the first and the second storage devices; and

a controller operatively coupled to the first and the second storage devices and configured to determine data segments to mirror on the second storage device based on synchronization settings of respective data segments, wherein the controller is further configured to mirror data segments to the second storage device based on their respective synchronization settings indicating that the respective data segments are not copied to or from a third storage device.

2. The system of claim 1 , wherein the first and the second storage devices do not have identical available space.

3. The system of claim 1 , wherein one of the first or the second storage devices is located in one or more remotely located device.

4. The system of claim 1 , wherein the controller is further configured to update the mapping table with locations of the one or more stored data segments in the first or the second storage devices.

5. The system of claim 1 , wherein the controller is further configured to determine data segments to mirror on the second storage device based on file usage patterns.

6. The system of claim 1 , wherein the controller is further configured to determine data segments to mirror on the second storage device based on files designated non-critical by a user.

7. The data storage system of claim 1 , wherein the synchronization setting of respective data segments comprises a setting that indicates whether the respective data segments are identified for copying to or from a third storage device.

8. The data storage system of claim 1 , wherein the synchronization setting of respective data segments comprises a setting that indicates whether the respective data segments have been copied to or from a third storage device.

9. The data storage system of claim 1 , wherein the controller is operatively coupled to the first and the second storage devices via a network.

10. The data storage system of claim 1 , wherein the first and second storage devices are located in a single computer.

11. The data storage system of claim 1 , wherein a third storage device where the determined data segments are mirrored is accessed over a network.

12. A data storage method comprising:

storing a plurality of data segments in a first storage device;

selectively copying data segments of the plurality of data segments to a second storage device based on synchronization settings of respective data segments, wherein synchronization settings indicate whether the respective data segments are copied to or from a third storage device or are scheduled to be copied to or from the third storage device; and

storing locations of data segments in the first storage device and the second storage device in a computer memory.

13. The method of claim 12 , wherein the first and the second storage devices do not have identical available space.

14. The method of claim 12 , wherein one of the first or the second storage devices is located in one or more remotely located device.

15. The method of claim 12 , wherein data segments are selected for copying to the second storage device based on file usage patterns.

16. The method of claim 12 , wherein data segments are selected for copying to the second storage device based on files designated non-critical by a user.

17. The data storage method of claim 12 , wherein the first and second storage devices are located in a single computer.

18. The data storage method of claim 12 , wherein the third storage device is accessed over a network.

19. The data storage method of claim 12 , further comprising selectively copying the respective data segments to the second storage device based on their respective synchronization settings indicating that the respective data segments are not copied to the third storage device.

20. Non-transitory physical computer storage comprising computer-executable instructions that, when executed by a computing system, are configured to:

store a plurality of data segments in a first storage device;

selectively copy data segments of the plurality of data segments to a second storage device based on synchronization settings of respective data segments, wherein synchronization settings indicate whether the respective data segments are copied to or from a third storage device or are scheduled to be copied to or from the third storage device; and

store locations of data segments in the first storage device and the second storage device in a computer memory.

21. The non-transitory physical computer storage of claim 20 , wherein one of the first or the second storage devices is located in one or more remotely located device.

22. The non-transitory physical computer storage of claim 20 , wherein the third storage device is accessed over a network.

Assignments (7)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 2, 2021
From: CRIA, INC.
To: STRIPE, INC.
Reel/Frame 057044/0753 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 10, 2017
From: IP3, SERIES 100 OF ALLIED SECURITY TRUST I
To: CRIA, INC.
Reel/Frame 042201/0252 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 27, 2016
From: SHUSTER, GARY; SHUSTER, BRIAN
To: IP3, SERIES 100 OF ALLIED SECURITY TRUST I
Reel/Frame 039851/0103 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 16, 2016
From: ALERT SIGNAL INTELLECTUAL PROPERTY, LLC
To: SHUSTER, BRIAN; SHUSTER, GARY
Reel/Frame 038608/0669 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 16, 2016
From: SHUSTER, BRIAN; SHUSTER, GARY
To: ALERT SIGNAL INTELLECTUAL PROPERTY, LLC
Reel/Frame 038608/0631 →
NUNC PRO TUNC ASSIGNMENT Recorded May 5, 2016
From: CERINET USA, INC.
To: SHUSTER, BRIAN; SHUSTER, GARY
Reel/Frame 038479/0166 →
NUNC PRO TUNC ASSIGNMENT Recorded May 5, 2016
From: SHUSTER, BRIAN; SHUSTER, GARY
To: CERINET USA, INC
Reel/Frame 038479/0062 →