Method and apparatus for slicing mass storage devices
First Claim
1. A method comprising:
- receiving, by a storage system, a notification that a mass storage device has been added to an array of mass storage devices coupled to the storage system, wherein the storage system is one of a plurality of storage systems;
reading header information in the mass storage device to determine a format of the mass storage device; and
if the mass storage device has a first format, virtually slicing the mass storage device into a plurality of slices, wherein each of the plurality of slices comprises a table of contents, a RAID label, and an ownership region, wherein the table of contents contains an address offset identifying a slice location, wherein the RAID label contains identifiers for other slices that belong to a same RAID group as the containing slice, and information describing where the slices fit in an address range of an aggregate of the same RAID group, wherein the ownership region specifies a node that owns the slice, and wherein at least two of the plurality of slices on the mass storage device are assigned to different storage systems.
1 Assignment
0 Petitions
Accused Products
Abstract
A slice manager module, in the operating system of a storage server, manages the virtual slicing of a mass storage device. The slice manager module receives a notification that a mass storage device has been added to an array of mass storage devices coupled to the storage system. The slice manager module reads header information in the mass storage device to determine a format of the mass storage device. If the mass storage device has not been previously sliced, the slice manager module virtually slices the mass storage device into a plurality of slices, where virtually slicing the mass storage device includes specifying an offset in the mass storage device where each of the plurality of slices is located.
-
Citations
20 Claims
-
1. A method comprising:
-
receiving, by a storage system, a notification that a mass storage device has been added to an array of mass storage devices coupled to the storage system, wherein the storage system is one of a plurality of storage systems; reading header information in the mass storage device to determine a format of the mass storage device; and if the mass storage device has a first format, virtually slicing the mass storage device into a plurality of slices, wherein each of the plurality of slices comprises a table of contents, a RAID label, and an ownership region, wherein the table of contents contains an address offset identifying a slice location, wherein the RAID label contains identifiers for other slices that belong to a same RAID group as the containing slice, and information describing where the slices fit in an address range of an aggregate of the same RAID group, wherein the ownership region specifies a node that owns the slice, and wherein at least two of the plurality of slices on the mass storage device are assigned to different storage systems. - View Dependent Claims (2, 3, 4, 5, 6, 20)
-
-
7. A system comprising:
-
an array of mass storage devices; a storage server, coupled to the array of mass storage devices, the storage server configured to; receive a notification that a mass storage device has been added to the array of mass storage devices; read header information in the mass storage device to determine a format of the mass storage device; and if the mass storage device has a first format, virtually slice the mass storage device into a plurality of slices, wherein each of the plurality of slices has an offset identifying a slice location, wherein each of the plurality of slices comprises a table of contents, a RAID label, and an ownership region, wherein the table of contents contains an address offset identifying a slice location, wherein the RAID label contains identifiers for other slices that belong to a same RAID group as the containing slice, and information describing where the slices fit in an address range of an aggregate of the same RAID group, wherein the ownership region specifies a node that owns the slice, and wherein at least two of the plurality of slices on the mass storage device are assigned to different storage systems. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A storage system comprising:
-
a processor unit; and a memory coupled to the processor unit, the memory storing instructions executable by the processor unit, for a slice manager module, the slice manager module configured to; receive a notification that a mass storage device has been added to an array of mass storage devices coupled to the storage system; read header information in the mass storage device to determine a format of the mass storage device; and if the mass storage device has a first format, virtually slice the mass storage device into a plurality of slices, wherein each of the plurality of slices has an offset identifying a slice location, wherein each of the plurality of slices comprises a table of contents, a RAID label, and an ownership region, wherein the table of contents contains an address offset identifying a slice location, wherein the RAID label contains identifiers for other slices that belong to a same RAID as the containing slice, and information describing where the slices fit in an address range of an aggregate of the same RAID group, wherein the ownership region specifies a node that owns the slice, and wherein at least two of the plurality of slices on the mass storage device are assigned to different storage systems. - View Dependent Claims (14, 15, 16, 17, 18)
-
-
19. A method comprising:
-
determining, by a storage system, that a mass storage device has been added to an array of mass storage devices coupled to the storage system; receiving input specifying a slicing algorithm for virtually slicing the mass storage device; determining a size for each of a plurality of slices of the mass storage device based on the slicing algorithm; and virtually slicing the mass storage device into the plurality of slices, wherein each of the plurality of slices comprises a table of contents, a RAID label, and an ownership region, wherein the table of contents contains an address offset identifying a slice location, wherein the RAID label contains identifiers for other slices that belong to a same RAID group as the containing slice, and information describing where the slices fit in an address range of an aggregate of the same RAID group, wherein the ownership region specifies a node that owns the slice, and wherein at least two of the plurality of slices on the mass storage device are assigned to different storage systems.
-
Specification