File management in virtualized computing environments using sparse files
First Claim
Patent Images
1. A method comprising:
- executing, by a processing device of a computer system, a hypervisor to manage one or more virtual machines that each include a guest operating system, wherein the guest operating system comprises a guest file system and supports an access to the virtual machine from a client device;
receiving, by the processing device, from within the guest operating system, a request to store a first data file in the guest file system;
in response to receiving the request to store the first data file;
storing the first data file in a first storage device for a file system outside the guest file system, the first data file having a first file path in a folder structure of the file system outside the guest file system;
storing a second data file in the guest file system, wherein the second data file is a sparse file for the first data file, the second data file having a second file path in a folder structure of the guest file system, wherein the second file path shares a common portion with the first file path; and
storing metadata for the second data file, wherein the metadata directs requests to access the second data file from within the guest operating system to the first data file stored in the first storage device, the metadata comprising an identifier of the common portion for determining a location of the second data file;
receiving, from the guest operating system, a request to access the second data file;
receiving the metadata for the second data file; and
in response to receiving the request to access the second data file, providing access to the first data file in the first storage device based on the metadata for the second data file.
4 Assignments
0 Petitions
Accused Products
Abstract
The subject matter of this specification can be implemented in, among other things, a method that includes receiving, from within a guest operating system, a request to create a data file in a guest file system of the guest operating system. The method further includes in response to the receipt of the request to create the data file, creating an external data file in a first storage device for a file system outside the guest file system, creating a sparse file in the guest file system, and storing metadata that directs requests to access the sparse file from within the guest operating system to the external data file in the first storage device.
14 Citations
17 Claims
-
1. A method comprising:
-
executing, by a processing device of a computer system, a hypervisor to manage one or more virtual machines that each include a guest operating system, wherein the guest operating system comprises a guest file system and supports an access to the virtual machine from a client device; receiving, by the processing device, from within the guest operating system, a request to store a first data file in the guest file system; in response to receiving the request to store the first data file; storing the first data file in a first storage device for a file system outside the guest file system, the first data file having a first file path in a folder structure of the file system outside the guest file system; storing a second data file in the guest file system, wherein the second data file is a sparse file for the first data file, the second data file having a second file path in a folder structure of the guest file system, wherein the second file path shares a common portion with the first file path; and storing metadata for the second data file, wherein the metadata directs requests to access the second data file from within the guest operating system to the first data file stored in the first storage device, the metadata comprising an identifier of the common portion for determining a location of the second data file; receiving, from the guest operating system, a request to access the second data file; receiving the metadata for the second data file; and in response to receiving the request to access the second data file, providing access to the first data file in the first storage device based on the metadata for the second data file. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A non-transitory computer-readable medium having instructions stored thereon that, when executed by a processing device, cause the processing device to:
-
execute a hypervisor to manage one or more virtual machines that each include a guest operating system, wherein the guest operating system comprises a guest file system and supports an access to the virtual machine from a client device; receive, from within the guest operating system, a request to store a first data file in the guest file system; in response to receiving the request to store the first data file; store the first data file in a first storage device for a file system outside the guest file system, the first data file having a first file path in a folder structure of the file system outside the guest file system; store a second data file in the guest file system, wherein the second data file is a sparse file for the first data file, the second data file having a second file path in a folder structure of the guest file system, wherein the second file path shares a common portion with the first file path; and store metadata for the second data file, wherein the metadata directs requests to access the second data file from within the guest operating system to the first data file in the first storage device, the metadata comprising an identifier of the common portion for determining a location of the second data file; receive, from the guest operating system, a request to access the second data file; receive the metadata for the second data file; and in response to receiving the request to access the second data file, provide access to the first data file in the first storage device based on the metadata for the second data file. - View Dependent Claims (8, 9, 10, 11)
-
-
12. A system comprising:
-
a memory that stores instructions; and a processing device to execute the instructions to; execute a hypervisor to manage one or more virtual machines that each include a guest operating system, wherein the guest operating system comprises a guest file system and supports an access to the virtual machine from a client device; receive, from within the guest operating system, a request to store a first data file in the guest file system; in response to receiving the request to store the first data file; store the first data file in a first storage device for a file system outside the guest file system, the first data file having a first file path in a folder structure of the file system outside the guest file system; store a second data file in the guest file system, wherein the second data file is a sparse file for the first data file, the second data file having a second file path in a folder structure of the guest file system, wherein the second file path shares a common portion with the first file path; and store metadata for the second data file, wherein the metadata directs requests to access the second data file from within the guest operating system to the first data file in the first storage device, the metadata comprising an identifier of the common portion for determining a location of the second data file; receive, from the guest operating system, a request to access the second data file; receive the metadata for the second data file; and in response to receiving the request to access the second data file, provide access to the first data file in the first storage device based on the metadata for the second data file. - View Dependent Claims (13, 14, 15, 16, 17)
-
Specification