This application claims the priority benefit of Taiwan application serial no. 94147522, filed on Dec. 30, 2005. All disclosure of the Taiwan application is incorporated herein by reference.
1. Field of the Invention
The present invention relates to a storage management system and a method thereof. More particularly, the present invention relates to a system which increases the file system partition dynamically and a method thereof.
2. Description of Related Art
Generally, a conventional operating system divides its physical storage device into a plurality of partitions and accesses data through the partitions. Data cannot be stored in a partition if the storage space of the partition has run out or fully occupied, and the data has to be stored in another partition. Even presently such problem has been resolved by logical volume management (referred to as LVM thereinafter) structure, the sizes of the partitions used by operating systems have to be fixed regardless of the conventional partitions or LVM. To an operating system, if the sizes of the partitions are not fixed, the space utility thereof cannot be managed efficiently.
A storage management system is disclosed in U.S. Pat. No. 6,757,778 with the title of “Storage Management System”. This patent accomplishes the purpose of providing a plurality of virtual volumes to the operating system through the implementation of a storage management system. With the storage management system, which can manage a plurality of virtual volumes, the physical storage hardware can be local storage device or other storage devices on the network. The storage management system arranges a file corresponding to each virtual volume it provides for storing data through the file system of the storage management system itself. That is, each file represents a virtual volume provided to the file system by the storage management system. The read/write operations of the file system to the virtual volume are converted into read/write operations to the file corresponding to the virtual volume. The other units in the storage management system are responsible for storing the file to the physical storage device. As described above, the storage device is not limited to being local. Storing files to physical hardware with strip and volume mirror is also described in the disclosure of the storage management system managing a plurality of virtual volumes.
The advantage of the patent is that the volume capacity provided to an operating system is not limited to the maximum capacity of a single physical hardware, instead, the virtual volume may include a plurality of physical hardware; or more efficient and reliable data access can be provided along with strip and volume mirror.
The disadvantage of the patent is that the virtual volume cannot be shared on heterogeneous platform due to the limitation of the file system. This disadvantage also belongs to Storage Area Network (SAN).
Accordingly, the present invention is directed to an object-oriented storage structure. By cross-platform characteristic of objects, a storage network system is set up to provide virtual partitions, similar to virtual volumes, to end-users. Besides being sharable, the partition also provides more flexible capacity expansion of virtual partition.
The present invention provides a storage management system including a file system server, a metadata server, and an object storage device (OSD). The file system server is used for accessing a file through a virtual partition. The metadata server is used for storing the metadata of the accessed file. The OSD has a plurality of storage units and all the OSDs are managed by the metadata server. When a file is accessed, the file system server transmits a command of accessing the partition to the metadata server and performs the file accessing operation to the OSD through the metadata of the accessed file transmitted back by the metadata server.
According to an embodiment of the present invention, a file is accessed through an application of a mount partition by sending a command for accessing the file through the file system server.
According to an embodiment of the present invention, the file system server transmits an updated metadata of the file to the metadata server to update the original metadata after the file system server has performed file accessing operation to the OSD according to the metadata of the file transmitted back by the metadata server.
According to an embodiment of the present invention, the metadata of the file transmitted back by the metadata server includes the virtual partition of the file belonging thereto, the title of the file, the storage path, and the location of the OSD.
According to an embodiment of the present invention, more than one OSD, each having a plurality of storage units, can be included, and the OSDs are brought into the virtual partition to be managed by the metadata server after logged in through the metadata server.
In the storage management system according to an embodiment of the present invention described above, while a file is stored by the file system server through the virtual partition, the file can be divided into a plurality of objects to be stored into the OSDs contained by the virtual partition. A portion of the storage unit used for storing objects belonging to a particular OSD and another portion thereof belonging to another OSD. In an embodiment, the storage unit used for storing objects may also be stored in a plurality of OSDs.
In the storage management system according to an embodiment of the present invention described above, while a file is stored by the file system server through a virtual partition, the file is divided into a plurality of strip objects of the same size and the strip objects are stored in sequence into different OSDs in the same virtual partition.
In the storage management system according to an embodiment of the present invention described above, while a file is stored by the file system server through a virtual partition, a mirror file is created by mapping to the file, the file is stored in a primary OSD, and the mirror file is stored in another OSD.
In order to make the aforementioned and other objects, features and advantages of the present invention comprehensible, a preferred embodiment accompanied with figures is described in detail below.
It is to be understood that both the foregoing general description and the following detailed description are exemplary, and are intended to provide further explanation of the invention as claimed.
The accompanying drawings are included to provide a further understanding of the invention, and are incorporated in and constitute a part of this specification. The drawings illustrate embodiments of the invention and, together with the description, serve to explain the principles of the invention.
The present invention provides a technology for dynamically increasing the file system partitions. The concept of the technology is to set up a storage network system with object-oriented storage structure, so as to adopt the cross-platform characteristic of the objects, to provide virtual partitions, which are similar to virtual volumes, to end-users. Besides being sharable, the partitions also provide more flexible capacity expansion.
In an embodiment, the object-oriented storage structure according to the present invention includes a file system server 205, an object storage device (referred to as OSD therein after) 206, and a metadata server 207, as shown in
The foregoing OSD 206 is used as a storage device for storing objects, and the metadata server 207 is used for storing metadata of files and for managing OSD 206. The file system server 205 can mount the virtual partitions provided by the metadata server 207 onto its own system, and the virtual partitions provided by the metadata server 207 may be partitions formed by a plurality of OSDs. Only one OSD 206 is shown in
A file is composed of a plurality of objects in the sequence as the original sequence of data storage. Each object can be stored in different OSD of the same virtual partition. While a particular address of the file is to be accessed, the file system server 205 obtains the metadata through the metadata sever 207, then calculates which object among all the objects forming the file the address to be accessed is located in. Next, the information of which OSD 206 the object is on is obtained from the metadata server 207. After that, the file system server 205 accesses the object from the OSD 206 after it gets the number of the object on the OSD 206 and the address of the OSD 206.
The structure of the OSD is as shown at the right side in
In an embodiment, the metadata of the file transmitted back by the metadata sever 370 includes the partition wherein the file is located, the title of the file, the storage path, the object number of the file, the location of the OSD, metadata ID, the size of the file, the access time of the file (can be further categorized into last file or metadata access time, last file modification time, and last metadata update time), the number and group number of the user, the access right, and file category etc, or any combination of the information thereof, which can be adjusted according to the requirement of the actual design.
While the system is to expand the capacity of the virtual partition 350 to add in more OSDs 356, the settings related to the virtual partition 350 on the metadata sever 370 is set first, then the virtual partition 350 can have 3 OSDs 352, 354, and 356. The metadata sever 370 is logged in by logging into, for example, an OSD list, as shown at the right side of
Better efficiency and reliability can be achieved by using aforementioned file strip and volume mirror, thus, the metadata server further includes a file list used for corresponding files to objects on OSDs. The location of an object is composed of the location of the OSD and the object number. The file list includes, for example, partition, title, path, and the OSDs wherein the partitioned file located. For example, a file “fn1” is located in the virtual partition “vp1”, and is stored at the location “98452” of the OSD “osd1” and the location “948452” of the OSD “osd2”. While file “fn2” is located in the virtual partition “vp2”, and is stored at the location “3423” and the location “154” of the OSD “osd3”. The complete content of the corresponding file can be obtained based on these locations. The same content of the file can be stored in different locations so as to ensure that complete content can be obtained even when the file is damaged, accordingly the reliability is increased.
The virtual partition 712 illustrates the volume mirror method, wherein besides being stored in the primary OSD 713, the data is also stored in the mapping OSD 716 correspondingly to increase reliability. Besides the cooperation of the metadata server 715, the data is accessed with the assistance of the file system 704 according to the information obtained from the metadata server 715.
The file system partition technology of the present invention can be understood from the embodiments described above, wherein a storage network system with object-oriented storage structure is set up to provide virtual partitions, similar to virtual volumes, to end-users by adopting the cross-platform characteristic of objects. Besides, the technology of dynamically increasing file system partitions can be accomplished through the method of using different virtual partitions in the embodiments of the present invention. Better access efficiency can be achieved if file strip method is used. Moreover, volume mirror method can be used in different virtual partitions to improve reliability, accordingly to provide more flexible capacity expansion of virtual partitions.
It will be apparent to those skilled in the art that various modifications and variations can be made to the structure of the present invention without departing from the scope or spirit of the invention. In view of the foregoing, it is intended that the present invention cover modifications and variations of this invention provided they fall within the scope of the following claims and their equivalents.
Number | Date | Country | Kind |
---|---|---|---|
94147522 | Dec 2005 | TW | national |