IP Library Granted Patent US 9,268,489
Granted Patent B2
US 9,268,489 · App. 14/665,298 · Granted Feb 23, 2016

Method and system for heterogeneous data volume

Inventors: Alexander Aizman (Mountain View, CA); Vineeth Remanan Pillai (Mountain View, CA)
Assignee: Nexenta Systems, Inc.
G06F3/0619G06F3/061G06F3/064G06F3/065G06F3/0665G06F3/0685G06F3/0689G06F7/00G06F11/1076G06F11/3048G06F2003/0692G06F2211/103G06F2211/1028
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,268,489
App. No.
14/665,298
Granted
Feb 23, 2016
Kind
B2
Abstract

A method and system is disclosed for providing a heterogeneous data storage comprising a plurality of storage devices of different types with respect to device vendor, model, capacity, performance and/or function. The present invention employs data access mechanisms specific to the type of underlying storage and the type of data to be stored or retrieved, and provides for integrated remote mirroring, disaster recovery and hierarchical storage management (HSM), as well as improved I/O performance and life expectancy of storage disks. A method of writing to and reading from heterogeneous data volume is also disclosed.

Claims (34)

1. A method for reading a data segment of a logical block of data from a heterogeneous data volume, the method comprising:

receiving a read operation to read the data segment from the heterogeneous data volume, wherein:

a first redundant copy of the data segment is stored in a first class of storage and

a second redundant copy of the data segment is stored in a second class of storage;

in response to receiving the read operation:

determining a first read preference value for the first redundant copy of the data segment based at least in part on a first number of input/output operations currently pending at the first class of storage and a first statically-defined latency associated with the first class of storage;

determining a second read preference value for the second redundant copy of the data segment based at least in part on a second number of input/output operations currently pending at the second class of storage and a second statically-defined latency associated with the second class of storage;

selecting one of the first and the second redundant copies of the data segment based on the first and the second read preference values; and

retrieving the selected redundant copy of the data segment.

2. The method of claim 1 , wherein selecting the one of the first and the second redundant copies of the data segment comprises:

selecting the first redundant copy of the data segment if the first read preference value is greater than or equal to the second read preference value; and

selecting the second redundant copy of the data segment if the first read preference value is less than the second read preference value.

3. The method of claim 1 , wherein the first read preference value is selected based on a dynamically-computed operational parameter associated with the first class of storage.

4. The method of claim 1 , wherein retrieving the selected redundant copy comprises:

determining an access mechanism specific to the selected redundant copy of the data segment; and

retrieving the selected redundant copy of the data segment using the access mechanism.

5. The method of claim 4 , wherein the access mechanism is determined based on whether the selected redundant copy is stored in the first class of storage or the second class of storage.

6. A system for reading a data segment of a logical block of data from a heterogeneous data volume, the system comprising:

a first class of storage configured to store a first redundant copy of the data segment;

a second class of storage configured to store a second redundant copy of the data segment; and

control circuitry configured to:

receive a read operation to read the data segment from the heterogeneous data volume;

determine, in response to receiving the read operation, a first read preference value for the first redundant copy of the data segment based at least in part on a first number of input/output operations currently pending at the first class of storage and a first statically-defined latency associated with the first class of storage;

determine, in response to receiving the read operation, a second read preference value for the second redundant copy of the data segment based at least in part on a second number of input/output operations currently pending at the second class of storage and a second statically-defined latency associated with the second class of storage;

select one of the first and the second redundant copies of the data segment based on the first and the second read preference values; and

retrieve the selected redundant copy of the data segment.

7. The system of claim 6 , wherein the control circuitry selects the one of the first and the second redundant copies of the data segment by being further configured to:

select the first redundant copy of the data segment if the first read preference value is greater than or equal to the second read preference value; and

select the second redundant copy of the data segment if the first read preference value is less than the second read preference value.

8. The system of claim 6 , wherein the control circuitry is further configured to select the first read preference value based on a dynamically-computed operational parameter associated with the first class of storage.

9. The system of claim 6 , wherein the control circuitry retrieves the selected redundant copy by being further configured to:

determine an access mechanism specific to the selected redundant copy of the data segment; and

retrieve the selected redundant copy of the data segment using the access mechanism.

10. The system of claim 9 , wherein the control circuitry is further configured to determine the access mechanism based on whether the selected redundant copy is stored in the first class of storage or the second class of storage.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 4, 2019
From: NEXENTA SYSTEMS, INC.
To: NEXENTA BY DDN, INC.
Reel/Frame 050624/0524 →
RELEASE OF SECURITY INTEREST Recorded Mar 8, 2018
From: SILICON VALLEY BANK
To: NEXENTA SYSTEMS, INC.
Reel/Frame 045144/0872 →
SECURITY INTEREST Recorded Nov 9, 2016
From: NEXENTA SYSTEMS, INC.
To: SILICON VALLEY BANK
Reel/Frame 040270/0049 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 23, 2015
From: AIZMAN, ALEXANDER; PILLAI, VINEETH REMANAN
To: NEXENTA SYSTEMS, INC.
Reel/Frame 035230/0309 →
Continuity (6)
Continuation 14281234 · May 19, 2014
Continuation 13239258 · Sep 21, 2011
Continuation In Part 12875073 · Sep 2, 2010
Provisional Application 61365153 · Jul 16, 2010
Provisional Application 61362260 · Jul 7, 2010
Related Publication 20150193164A1 · Jul 9, 2015