IPC분류정보
국가/구분 |
United States(US) Patent
등록
|
국제특허분류(IPC7판) |
|
출원번호 |
UP-0382233
(2006-05-08)
|
등록번호 |
US-7653832
(2010-02-24)
|
발명자
/ 주소 |
- Faibish, Sorin
- Fridella, Stephen A.
- Gupta, Uday K.
- Jiang, Xiaoye
- Bixby, Peter C.
|
출원인 / 주소 |
|
대리인 / 주소 |
|
인용정보 |
피인용 횟수 :
32 인용 특허 :
24 |
초록
▼
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 t
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.
대표청구항
▼
What is claimed is: 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
What is claimed is: 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; and wherein the storage allocation server is programmed to respond to the requests from said at least one of the front-end directors or disk directors to commit at least some of the pre-allocated blocks of storage in the disk storage array by committing said at least some of the pre-allocated blocks of storage in the disk storage array to at least one of the virtual logical units of the storage in the disk storage array. 2. The cached disk array as claimed in claim 1, wherein one of the front-end directors or one of the disk directors is programmed to function as the storage allocation server. 3. The cached disk array as claimed in claim 2, wherein the storage allocation server is programmed to identify potentially defective storage blocks and to exclude these potentially defective storage blocks from the pre-allocated blocks of storage in the disk storage array. 4. The cached disk array as claimed in claim 1, wherein each of the front-end directors is programmed to function as a respective storage allocation server for allocating storage assigned to a respective one of the host computers serviced by said each of the front-end directors. 5. The cached disk array as claimed in claim 1, wherein each of the disk directors is programmed for block resolution of virtual logical units of the storage in a respective string of disk drives serviced by said each of the disk directors. 6. The cached disk array as claimed in claim 1, wherein at least one of the front-end directors is programmed for block resolution of a virtual logical unit of storage striped across a group of disk drives that are not all serviced by a single one of the disk directors. 7. The cached disk array as claimed in claim 1, wherein the global cache memory stores a log of the first writing of data to said at least some of the pre-allocated blocks of storage in the disk storage array. 8. The cached disk array as claimed in claim 1, wherein the global cache memory stores an intent to write log of the first writing of data to said at least some of the pre-allocated blocks of storage in the disk storage array. 9. The cached disk array as claimed in claim 1, wherein the global cache memory stores a log for the storage allocation server of commitments of said at least some of the pre-allocated blocks of storage. 10. The cached disk array as claimed in claim 1, wherein said 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 by containing the virtual logical units in sparse files and programming said at least one of the front-end directors or disk directors with a storage allocation client for file block mapping for access to the sparse files. 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. 12. The cached disk array as claimed in claim 11, wherein the storage allocation server is programmed to use the FSCK utility to identify potentially defective storage blocks and to exclude these potentially defective storage blocks from the pre-allocated blocks of storage in the disk storage array. 13. The cached disk array as claimed in claim 11, wherein each of the front-end directors is programmed to function as a respective storage allocation server for allocating storage assigned to a respective one of the host computers serviced by said each of the front-end directors. 14. The cached disk array as claimed in claim 11, wherein each of the disk directors is programmed with a respective storage allocation client for access to logical unit files striped across a respective string of disk drives serviced by said each of the disk directors. 15. The cached disk array as claimed in claim 11, wherein at least one of the front-end directors is programmed with a storage allocation client for access to a logical unit file striped across a group of disk drives that are not all serviced by a single one of the disk directors. 16. The cached disk array as claimed in claim 11, wherein the global cache memory stores a log of the first writing of data to said at least some of the pre-allocated blocks of storage in the disk storage array. 17. The cached disk array as claimed in claim 11, wherein the global cache memory stores a server log of transactions upon the sparse files. 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; and wherein the storage allocation server is programmed to respond to the requests from said at least one of the front-end directors or disk directors in the second disk array to commit at least some of the pre-allocated blocks of storage in the first disk array and in the second disk array by committing said at least some of the pre-allocated blocks of storage in the first disk array and in the second disk array to the virtual logical unit of the storage comprised of storage in the first disk array and storage in the second disk array. 19. The data storage system as claimed in claim 18, wherein the first disk array is a cached disk array include 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 of the first disk array are programmed for servicing storage access requests from the host computers by accessing the global cache memory of the first disk array, and the disk directors of the first disk array are programmed for staging requested data from the disk storage array of the first disk array to the global cache memory of the first disk array and for writing new data to the disk storage array of the first disk array, and wherein at least one of the front-end directors or disk directors of the first disk array is programmed for block resolution of the virtual logical unit of storage comprised of storage in the first disk array and storage in the second disk array, and for obtaining, from the 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. 20. The data storage system as claimed in claim 18, wherein said at least one of the front-end directors or disk directors in the second disk array is programmed for block resolution of the virtual logical unit of storage by containing the virtual logical unit of storage in a sparse file and programming said at least one of the front-end directors or disk directors in the second disk array with a storage allocation client programmed for file block mapping for access to the sparse file.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.