IPC분류정보
국가/구분 |
United States(US) Patent
등록
|
국제특허분류(IPC7판) |
|
출원번호 |
US-0354691
(2003-01-29)
|
발명자
/ 주소 |
- Patel, Vishal
- Cheng, Tu-An
|
출원인 / 주소 |
- International Business Machines Corporation
|
대리인 / 주소 |
|
인용정보 |
피인용 횟수 :
6 인용 특허 :
13 |
초록
▼
Provided are a method, system, and program for transferring data from a source storage unit, wherein storage units are configured within a storage system. A data transfer operation is processed to transfer data from source storage blocks in a source storage unit to corresponding target storage block
Provided are a method, system, and program for transferring data from a source storage unit, wherein storage units are configured within a storage system. A data transfer operation is processed to transfer data from source storage blocks in a source storage unit to corresponding target storage blocks in a target storage unit. For each source storage block, before transferring data from one source storage block to the corresponding target storage block, indication is made that the source storage block is in a locked state. Data in the source storage block in the locked state is not accessible to a host data request, and wherein data in storage blocks that are not in the locked state is accessible to a host data request while the data transfer operation is pending. Indication is further made that the source storage block is not in the locked state after transferring the data in the source storage block to the corresponding target storage block the data in the source storage block to the corresponding target storage block.
대표청구항
▼
1. A method for transferring data from source storage units to target storage units, wherein the source and target storage units are configured within a computer mass storage system, comprising:processing a data transfer operation to transfer data from source storage blocks in one source storage uni
1. A method for transferring data from source storage units to target storage units, wherein the source and target storage units are configured within a computer mass storage system, comprising:processing a data transfer operation to transfer data from source storage blocks in one source storage unit to corresponding target storage blocks in one target storage unit; andfor each source storage block, performing:(i) before transferring data from one source storage block to the corresponding target storage block, indicating that the source storage block is in a locked state and transmitting a message to host systems capable of requesting data from the source storage block to invalidate information for the source storage block maintained in the host systems, wherein data in the source storage block in the locked state is not accessible to a host data request, and wherein data in storage blocks that are not in the locked state is accessible to the host data request while the data transfer operation is pending; and(ii) indicating that the source storage block is not in the locked state after transferring the data in the source storage block to the corresponding target storage block.2. The method of claim 1, wherein each storage block defines contiguous physical storage locations in the computer mass storage system.3. The method of claim 2, wherein the storage units comprise logical volumes and the storage blocks comprise partitions.4. The method of claim 1, wherein the storage blocks have a size such that any delayed access to the storage blocks due to being set to the locked state as part of a pending data transfer operation will have a minimal effect on host operations requesting the storage blocks.5. The method of claim 4, wherein each storage block is approximately four to sixty-four megabytes in size.6. The method of claim 1, wherein the data transfer operation comprises an operation to move data from the source storage unit to the target storage unit.7. The method of claim 1, wherein storage units are organized into a plurality of storage pools, wherein each storage pool has different data storage characteristics, further comprising:selecting the target storage unit, wherein the selected storage unit is in a same storage pool as the source storage unit.8. The method of claim 7, wherein selecting the target storage unit further comprises determining one storage unit that is empty and in the same storage pool as the source storage unit.9. The method of claim 1, wherein invalidating the information for the source storage block in the host systems causes the host systems to request updated information for the source storage block indicating whether the source storage block is in the locked state in response to the host attempting to access the source storage block.10. A method for processing data requests at a host system in communication with a computer mass storage system, comprising:receiving a data request from a requestor for requested data within the computer mass storage system, wherein data in the computer mass storage system is configured into a plurality of storage blocks, and wherein a plurality of locks are associated with the storage blocks, and wherein each of the locks indicates whether one corresponding storage block is being accessed as part of a pending data transfer operation;receiving a message to invalidate information for an indicated storage block in response to one other host system obtaining the lock to the indicated storage block to perform a data transfer operation with respect to storage blocks in the storage unit including the indicated storage block;determining whether the locks associated with the storage blocks that include the requested data indicate that the storage blocks are being accessed as part of one pending data transfer operation; andaccessing the requested data to return to the requestor if the locks associated with the storage blocks that include the requested data do not indicate that at least one of the storage blocks are being accessed as part of one pending data transfer operation.11. The method of claim 10, further comprising:delaying processing of the data request if the locks associated with the storage blocks that include the requested data indicate that at least one of the storage blocks are being accessed as part of one pending data transfer operation.12. The method of claim 11, wherein the processing of the data request is delayed until the locks of the storage blocks including the requested data indicate that the storage blocks are not being accessed as part of one pending data transfer operation.13. The method of claim 11, wherein delaying the processing of the data request comprises adding the data request to a queue, further comprising:processing one queued data request if the locks associated with the storage blocks including the requested data for the queued data request indicate that the storage blocks are not being accessed as part of one pending data transfer operation.14. The method of claim 10, further comprising:determining whether there is information for the storage blocks that include the requested data, including locking information; andaccessing the information for the storage blocks in response to determining that there is no information for the storage blocks that include the requested data.15. A system for transferring data from source storage units to target storage units, wherein the source and target storage units are configured within a computer mass storage system, and wherein the system is in communication with host systems that include information on storage units within the computer mass storage system to use to transmit data requests to the computer mass storage system, comprising:means for processing a data transfer operation to transfer data from source storage blocks in one source storage unit to corresponding target storage blocks in one target storage unit; andmeans for performing for each source storage block:(i) before transferring data from one source storage block to the corresponding target storage block, indicating that the source storage block is in a locked state and transmitting a message to the host systems capable of requesting data from the source storage block to invalidate information for the source storage block maintained in the host systems, wherein data in the source storage block in the locked state is not accessible to a host data request, and wherein data in storage blocks that are not in the locked state is accessible to the host data request while the data transfer operation is pending; and(ii) indicating that the source storage block is not in the locked state after transferring the data in the source storage block to the corresponding target storage block.16. The system of claim 15, wherein the storage blocks have a size such that any delayed access to the storage blocks due to being set to the locked state as part of a pending data transfer operation will have a minimal effect on host operations requesting the storage blocks.17. The system of claim 15, wherein storage units are organized into a plurality of storage pools, wherein each storage pool has different data storage characteristics, further comprising:means for selecting the target storage unit, wherein the selected storage unit is in a same storage pool as the source storage unit.18. The system 15, wherein invalidating the information for the source storage block in the host systems causes the host systems to request updated information for the source storage block indicating whether the source storage block is in the locked state in response to the host attempting to access the source storage block.19. A system for processing data requests from a requestor to data within a computer mass storage system configured into a plurality of storage blocks, wherein the system is in communication with the computer mass storage system and wherein host systems are also in communication with the computer mass storage system, comprising:means for receiving a data request from the requestor for requested data within the computer mass storage system;means for associating a plurality of locks with the storage blocks, wherein each of the locks indicates whether one corresponding storage block is being accessed as part of a pending data transfer operation;means for receiving a message to invalidate information for an indicated storage block in response to one of the host systems obtaining the lock to the indicated storage block to perform a data transfer operation with respect to storage blocks in the storage unit including the indicated storage block;means for determining whether the locks associated with the storage blocks that include the requested data indicate that the storage blocks are being accessed as part of one pending data transfer operation; andmeans for accessing the requested data to return to the requestor if the locks associated with the storage blocks that include the requested data do not indicate that at least one of the storage blocks are being accessed as part of one pending data transfer operation.20. The system of claim 19, further comprising:means for delaying processing of the data request if the locks associated with the storage blocks that include the requested data indicate that at least one of the storage blocks are being accessed as part of one pending data transfer operation.21. The system of claim 20, further comprising:a queue, wherein the means for delaying the processing of the data request adds the data request to the queue; andmeans for processing one queued data request if the locks associated with the storage blocks including the requested data for the queued data request indicate that the storage blocks are not being accessed as part of one pending data transfer operation.22. The system of claim 19, further comprising:means for determining whether there is information for the storage blocks that include the requested data, including locking information; andmeans for accessing the information for the storage blocks in response to determining that there is no information for the storage blocks that include the requested data.23. An article of manufacture implemented in a computer readable medium including code executed to transfer data from source storage units to target storage units, wherein the source and target storage units are configured within a computer mass storage system, wherein host systems include information on the storage units within the computer mass storage system to use to transmit data requests to the storage system, and wherein the code causes operations to be performed, the operations comprising:processing a data transfer operation to transfer data from source storage blocks in one source storage unit to corresponding target storage blocks in one target storage unit; andfor each source storage block, performing:(i) before transferring data from one source storage block to the corresponding target storage block, indicating that the source storage block is in a locked state and transmitting a message to the host systems capable of requesting data from the source storage block to invalidate information for the source storage block maintained in the host systems, wherein data in the source storage block in the locked state is not accessible to a host data request, and wherein data in storage blocks that are not in the locked state is accessible to the host data request while the data transfer operation is pending; and(ii) indicating that the source storage block is not in the locked state after transferring the data in the source storage block to the corresponding target storage block.24. The article of manufacture of claim 23, wherein each storage block defines contiguous physical storage locations in the computer mass storage system.25. The article of manufacture of claim 24, wherein the storage units comprise logical volumes and the storage blocks comprise partitions.26. The article of manufacture of claim 23, wherein the storage blocks have a size such that any delayed access to the storage blocks due to being set to the locked state as part of a pending data transfer operation will have a minimal effect on host operations requesting the storage blocks.27. The article of manufacture of claim 26, wherein each storage block is approximately four to sixty-four megabytes in size.28. The article of manufacture of claim 23, wherein the data transfer operation comprises an operation to move data from the source storage unit to the target storage unit.29. The article of manufacture of claim 23, wherein storage units are organized into a plurality of storage pools, wherein each storage pool has different data storage characteristics, wherein the operations further comprise:selecting the target storage unit, wherein the selected storage unit is in a same storage pool as the source storage unit.30. The article of manufacture of claim 29, wherein selecting the target storage unit further comprises determining one storage unit that is empty and in the same storage pool as the source storage unit.31. The article of manufacture of claim 23, wherein invalidating the information for the source storage block in the host systems causes the host systems to request updated information for the source storage block indicating whether the source storage block is in the locked state in response to the host attempting to access the source storage block.32. An article of manufacture implemented in a computer readable medium including code executed to process data requests from a requestor and communicate with a computer mass storage system and wherein host systems are in communication with the computer mass storage system, wherein the code is executed to perform operations comprising:receiving a data request from the requestor for requested data within the computer mass storage system, wherein data in the storage system is configured into a plurality of storage blocks, and wherein a plurality of locks are associated with the storage blocks, and wherein each of the locks indicates whether one corresponding storage block is being accessed as part of a pending data transfer operation;receiving a message to invalidate information for an indicated storage block in response to one of the host systems obtaining the lock to the indicated storage block to perform a data transfer operation with respect to storage blocks in the storage unit including the indicated storage block;determining whether the locks associated with the storage blocks that include the requested data indicate that the storage blocks are being accessed as part of one pending data transfer operation; andaccessing the requested data to return to the requestor if the locks associated with the storage blocks that include the requested data do not indicate that at least one of the storage blocks are being accessed as part of one pending data transfer operation.33. The article of manufacture of claim 32, wherein the operations further comprise:delaying processing of the data request if the locks associated with the storage blocks that include the requested data indicate that at least one of the storage blocks are being accessed as part of one pending data transfer operation.34. The article of manufacture of claim 33, wherein the processing of the data request is delayed until the locks of the storage blocks including the requested data indicate that the storage blocks are not being accessed as part of one pending data transfer operation.35. The article of manufacture of claim 34, wherein delaying the processing of the data request comprises adding the data request to a queue, wherein the operations further comprise:processing one queued data request if the locks associated with the storage blocks including the requested data for the queued data request indicate that the storage blocks are not being accessed as part of one pending data transfer operation.36. The article of manufacture of claim 32, wherein the operations further comprise:determining whether there is information for the storage blocks that include the requested data, including locking information; andaccessing the information for the storage blocks in response to determining that there is no information for the storage blocks that include the requested data.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.