STORAGE ARRAY VIRTUALIZATION USING A STORAGE BLOCK MAPPING PROTOCOL CLIENT AND SERVER
First Claim
1. A cached disk array comprising a disk storage array, a global cache memory, disk directors coupling the global cache memory to the disk storage array, and front-end directors for linking host computers to the global cache memory, wherein the front-end directors are programmed for servicing storage access requests from the host computers, and the disk directors are programmed for staging requested data from the disk storage array to the global cache memory and for writing new data to the disk storage array, wherein at least one of the front-end directors or disk directors is programmed for block resolution of virtual logical units of the storage in the disk storage array, and for obtaining, from a storage allocation server, space allocation and mapping information for pre-allocated blocks of storage in the disk storage array, and for returning to the storage allocation server requests to commit at least some of the pre-allocated blocks of storage in the disk storage array once data is first written to said at least some of the pre-allocated blocks of storage in the disk storage array.
9 Assignments
0 Petitions
Accused Products
Abstract
A cached disk array includes a disk storage array, a global cache memory, disk directors coupling the cache memory to the disk storage array, and front-end directors for linking host computers to the cache memory. The front-end directors service storage access requests from the host computers, and the disk directors stage requested data from the disk storage array to the cache memory and write new data to the disk storage. At least one of the front-end directors or disk directors is programmed for block resolution of virtual logical units of the disk storage, and for obtaining, from a storage allocation server, space allocation and mapping information for pre-allocated blocks of the disk storage, and for returning to the storage allocation server requests to commit the pre-allocated blocks of storage once data is first written to the pre-allocated blocks of storage.
-
Citations
20 Claims
-
1. A cached disk array comprising a disk storage array, a global cache memory, disk directors coupling the global cache memory to the disk storage array, and front-end directors for linking host computers to the global cache memory, wherein the front-end directors are programmed for servicing storage access requests from the host computers, and the disk directors are programmed for staging requested data from the disk storage array to the global cache memory and for writing new data to the disk storage array,
wherein at least one of the front-end directors or disk directors is programmed for block resolution of virtual logical units of the storage in the disk storage array, and for obtaining, from a storage allocation server, space allocation and mapping information for pre-allocated blocks of storage in the disk storage array, and for returning to the storage allocation server requests to commit at least some of the pre-allocated blocks of storage in the disk storage array once data is first written to said at least some of the pre-allocated blocks of storage in the disk storage array.
-
11. A cached disk array comprising a disk storage array, a global cache memory, disk directors coupling the global cache memory to the disk storage array, and front-end directors for linking host computers to the global cache memory, wherein the front-end directors are programmed for servicing storage access requests from the host computers, and the disk directors are programmed for staging requested data from the disk array to the global cache memory and for writing new data to the disk storage array,
wherein at least one of the front-end directors or disk directors is programmed with a storage allocation server; - and
wherein at least some of the front-end directors or disk directors are each programmed with a respective storage allocation client programmed for file block mapping for accessing virtual logical storage units contained in sparse files and for obtaining, from the storage allocation server, space allocation and mapping information for pre-allocated blocks of storage in the disk storage array, and for returning to the storage allocation server requests to commit at least some of the pre-allocated blocks of storage in the disk storage array to the sparse files once data is first written to said at least some of the pre-allocated blocks of storage in the disk storage array. - View Dependent Claims (12, 13, 14, 15, 16, 17)
- and
-
18. A data storage system comprising a first disk array and a second disk array linked to the first disk array for transfer of data between the first disk array and the second disk array,
wherein the second disk array is a cached disk array including a disk storage array, a global cache memory, disk directors coupling the global cache memory to the disk storage array, and front-end directors for linking host computers to the global cache memory, wherein the front-end directors are programmed for servicing storage access requests from the host computers, and the disk directors are programmed for staging requested data from the disk storage array to the global cache memory and for writing new data to the disk storage array, wherein at least one of the front-end directors or disk directors in the second disk array is programmed for block resolution of a virtual logical unit of storage comprised of storage in the first disk array and storage in the second disk array, and for obtaining, from a storage allocation server in the second disk array, space allocation and mapping information for pre-allocated blocks of storage in the first disk array and in the second disk array, and for returning to the storage allocation server requests to commit at least some of the pre-allocated blocks of storage in the first disk array and in the second disk array once data is first written to said at least some of the pre-allocated blocks of storage in the first disk array and in the second disk array.
Specification