Method and system for reallocating blocks in a storage pool
First Claim
Patent Images
1. A computer readable medium comprising executable instructions for reallocating blocks in a storage pool, which when executed by a processor performs a method, the method comprising:
- copying a plurality of source blocks to a plurality of replacement blocks,wherein the plurality of source blocks is stored on a source disk in the storage pool, andwherein the plurality of replacement blocks is stored on at least one replacement disk in the storage pool;
generating a first indirection object,wherein the first indirection object comprises a mapping of locations of the plurality of source blocks to locations of the plurality of replacement blocks;
modifying a replacement block selected from the plurality of replacement blocks using a copy-on-write transaction; and
removing a reference to the replacement block from the first indirection object once the copy-on-write transaction is complete.
2 Assignments
0 Petitions
Accused Products
Abstract
A method for reallocating blocks in a storage pool involves copying multiple source blocks to multiple replacement blocks, where the source blocks are stored on a source disk in the storage pool, and where the replacement blocks are stored on one or more replacement disks in the storage pool, and generating an indirection object, where the indirection object includes a mapping of locations of the source blocks to locations of the replacement blocks.
53 Citations
17 Claims
-
1. A computer readable medium comprising executable instructions for reallocating blocks in a storage pool, which when executed by a processor performs a method, the method comprising:
-
copying a plurality of source blocks to a plurality of replacement blocks, wherein the plurality of source blocks is stored on a source disk in the storage pool, and wherein the plurality of replacement blocks is stored on at least one replacement disk in the storage pool; generating a first indirection object, wherein the first indirection object comprises a mapping of locations of the plurality of source blocks to locations of the plurality of replacement blocks; modifying a replacement block selected from the plurality of replacement blocks using a copy-on-write transaction; and removing a reference to the replacement block from the first indirection object once the copy-on-write transaction is complete. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A system comprising:
-
a storage pool comprising; a source disk comprising a plurality of source blocks, and a replacement disk; and a file system configured to; copy the plurality of source blocks to a plurality of replacement blocks on the replacement disk, generate an indirection object, modify a replacement block selected from the plurality of replacement blocks using a copy-on-write transaction, and remove a reference to the replacement block from the indirection object once the copy-on-write transaction is complete, wherein the indirection object comprises a mapping of locations of the plurality of source blocks to locations of the plurality of replacement blocks. - View Dependent Claims (12, 13, 14, 15, 16, 17)
-
Specification