IPC분류정보
국가/구분 |
United States(US) Patent
등록
|
국제특허분류(IPC7판) |
|
출원번호 |
UP-0692881
(2007-03-28)
|
등록번호 |
US-7653612
(2010-02-24)
|
발명자
/ 주소 |
- Veeraswamy, Sairam
- Faibish, Sorin
|
출원인 / 주소 |
|
대리인 / 주소 |
|
인용정보 |
피인용 횟수 :
5 인용 특허 :
27 |
초록
▼
A shallow file is adapted for intensive read-only access to data of a primary file. The primary file resides in another file system or file server. The shallow file includes the data block mapping metadata of the primary file and a link to the primary file. To open the shallow file, the file system
A shallow file is adapted for intensive read-only access to data of a primary file. The primary file resides in another file system or file server. The shallow file includes the data block mapping metadata of the primary file and a link to the primary file. To open the shallow file, the file system manager of the shallow file obtains a read lock on the primary file from the file system manager of the primary file. Then the file system manager of the shallow file may use the data block mapping in the shallow file to access the file data from the primary file in storage without participation of the file system manager of the primary file. This permits offloading of data protection services for secure and efficient storage of a backup copy of the file data.
대표청구항
▼
What is claimed is: 1. In a data processing system having a first data processor programmed with a first file system manager for managing access to a first file system, and a second data processor programmed with a second file system manager for managing access to a second file system, the first fi
What is claimed is: 1. In a data processing system having a first data processor programmed with a first file system manager for managing access to a first file system, and a second data processor programmed with a second file system manager for managing access to a second file system, the first file system including a first file, the first file having data blocks in computer data storage, and the first file having data block mapping metadata mapping the data blocks of the first file to respective addresses in the computer data storage of the data blocks of the first file, a method comprising: a) the first file system manager managing access to the first file; and b) creating a second file in the second file system, the second file including a copy of the data block mapping metadata in the first file, the second file also including a link to the first file; and c) the second file system manager receiving a request from an application to read a specified data block from the second file, and responding to the request from the application by accessing the data block mapping metadata in the second file to obtain a respective address in the computer data storage for the specified data block in the first file, and the second file system manager formulating a storage access request for reading data from the respective address in the computer data storage of the specified data block in the first file, and the second file system manager sending the storage access request to the computer data storage, and d) the computer data storage responding to the storage access request by reading data from the respective address in the computer data storage of the specified data block in the first file, and e) returning to the application the data read from the respective address in the computer data storage of the specified data block in the first file. 2. The method as claimed in claim 1, which includes the first file system manager providing a network client with read access and write access to the first file, and the application providing services for protecting data of the first file. 3. The method as claimed in claim 1, which includes the second file system manager responding to a request from the application to open the second file by the second file system manager obtaining a data storage address of the first file system from the first file system manager. 4. The method as claimed in claim 1, which includes the second file system manager responding to a request from the application to open the second file by the second file system manager requesting the first file system manager to place a read lock on the first file, and which includes the second file system manager responding to a request from the application to close the second file by the second file system manager requesting the first file system manager to release the read lock on the first file. 5. The method as claimed in claim 4, wherein once the second file system manager obtains a read lock upon the first file from the first file system manager, the second file system manager reads data of the first file from the computer data storage without participation of the first file system manager. 6. The method as claimed in claim 4, wherein the first file system manager responds to the request from the second file system manager for placing a read lock on the first file by placing a read lock on the first file and incrementing a read lock count for the first file, and wherein the first file system manager responds to the request from the second file system manger for releasing the read lock by decrementing the read lock count for the first file, and releasing the read lock on the first file once the read lock count indicates zero read locks upon the first file. 7. The method as claimed in claim 4, which includes the second file system manager subsequently responding to a request from the application to re-open the second file by sending another request to the first file system manager to place a read lock on the first file, said first file system manager responding to said another request to the first file system manager by placing a read lock on the first file, and also determining whether or not any data block mapping metadata of the first file has been changed since data block mapping metadata was last copied from the first file to the second file, and the method further includes, upon determining that data block mapping metadata of the first file has been changed since data block mapping metadata was last copied from the first file to the second file, copying the changed data block mapping metadata from the first file to the second file. 8. The method as claimed in claim 7, which includes the first file system determining whether or not any data block mapping metadata of the first file has been changed since data block mapping metadata was last copied from the first file to the second file by comparing a data block mapping metadata modification time attribute of the first file to a data block mapping metadata modification time attribute of the second file. 9. The method as claimed in claim 1, which includes the second file system manager copying the data blocks of the first file to the second file and updating the data block mapping metadata of the second file in order to provide the application with write access to the second file. 10. The method as claimed in claim 1, which includes the second file system manager copying the data blocks of the first file to the second file and updating the data block mapping metadata of the second file in response to a request for deletion of the first file. 11. A data processing system comprising: a first data processor; a second data processor coupled to the first data processor for exchange of requests and data; and computer data storage coupled to the first data processor and the second data processor for storage and retrieval of data from the first data processor and the second data processor; wherein the first data processor is programmed with a first file system manager for managing access to a first file system in the data storage, and the second data processor is programmed with a second file system manager for managing access to a second file system in the data storage, wherein the first file system includes a first file, the first file has data blocks in the computer data storage, and the first file has data block mapping metadata mapping the data blocks of the first file to respective addresses in the computer data storage of the data blocks of the first file; wherein the second file system manager is also programmed for creating a second file in the second file system, the second file including a copy of the data block mapping metadata in the first file, the second file also including a link to the first file; and wherein the second file system manager is programmed for responding to a request from an application to read a specified data block from the second file by accessing the data block mapping metadata in the second file to obtain a respective address in the computer data storage for the specified data block in the first file, and by formulating a storage access request for reading data from the respective address in the computer data storage of the specified data block in the first file, and sending the storage access request to the computer data storage, and receiving from the computer data storage data read from the respective address in the computer data storage of the specified data block in the first file, and returning to the application the data read from the respective address in the computer data storage of the specified data block in the first file. 12. The data processing system as claimed in claim 11, wherein the first data processor is programmed for providing a network client with read access and write access to the first file, and wherein the application is executable by the second data processor for protecting data of the first file. 13. The data processing system as claimed in claim 11, wherein the second file system manager is programmed for responding to a request from the application to open the second file by the second file system manager obtaining a data storage address of the first file system from the first file system manager. 14. The data processing system as claimed in claim 11, wherein the second file system manager is programmed for responding to a request from the application to open the second file by the second file system manager requesting the first file system manager to place a read lock on the first file, and wherein the second file system manager is programmed for responding to a request from the application to close the second file by the second file system manager requesting the first file system manager to release the read lock on the first file. 15. The data processing system as claimed in claim 14, wherein the second file system manager is programmed for reading data of the first file from the computer data storage without participation of the first file system manager once the second file system manager obtains a read lock upon the first file from the first file system manager. 16. The data processing system as claimed in claim 14, wherein the first file system manager is programmed for responding to the request from the second file system manager for placing a read lock on the first file by placing a read lock on the first file and incrementing a read lock count for the first file, and wherein the first file system manager is programmed for responding to the request from the second file system manger for releasing the read lock by decrementing the read lock count for the first file, and releasing the read lock on the first file once the read lock count indicates zero read locks upon the first file. 17. The data processing system as claimed in claim 14, wherein the second file system manager is programmed for subsequently responding to a request from the application to re-open the second file by sending another request to the first file system manager to place a read lock on the first file, and the first file system manager is programmed for responding to said another request to the first file system manager by placing a read lock on the first file, and also determining whether or not any data block mapping metadata of the first file has been changed since data block mapping metadata was last copied from the first file to the second file. 18. The data processing system as claimed in claim 17, wherein the first file system manager is programmed for determining whether or not any data block mapping metadata of the first file has been changed since data block mapping metadata was last copied from the first file to the second file by comparing a data block mapping metadata modification time attribute of the first file to a data block mapping metadata modification time attribute of the second file. 19. The data processing system as claimed in claim 11, wherein the second file system manager is programmed for responding to a request for copying the data blocks of the first file to the second file by obtaining a read lock on the first file and then copying the data blocks of the first file from the first file system to the second file system and updating the data block mapping metadata of the second file. 20. A data processing system comprising: a first file server; and a second file server coupled to the first file server for exchange of requests and data; wherein the first file server includes a first data processor and first disk storage coupled to the first data processor for storage and retrieval of data from the first data processor; wherein the second file server includes a second data processor and second disk storage coupled to the second data processor for storage and retrieval of data from the second data processor; wherein the first data processor is programmed with a first file system manager for managing access to a first file system in the first disk storage, and the second data processor is programmed with a second file system manager for managing access to a second file system in the second disk storage; wherein the first file system includes a first file, the first file has data blocks in the first disk storage, and the first file has data block mapping metadata mapping the data blocks of the first file to respective addresses in the first disk storage of the data blocks of the first file; wherein the second file system manager is programmed for creating a second file in the second file system, the second file includes a copy of the data block mapping metadata in the first file, and the second file also includes a link to the first file; and wherein the second file system manager is programmed for responding to a request from an application of the second file server to read a specified data block from the second file by accessing the data block mapping metadata in the second file to obtain a respective address in the first disk storage for the specified data block in the first file, and by formulating a storage access request for reading data from the respective address in the first disk storage of the specified data block in the first file, and sending the storage access request to the first disk storage, and receiving from the first disk storage data read from the respective address in the first disk storage of the specified data block in the first file, and returning to the application the data read from the respective address in the first disk storage of the specified data block in the first file.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.