JP4211285B2 - Virtual unified methods and apparatus of the network storage system - Google Patents

Virtual unified methods and apparatus of the network storage system

Info

Publication number
JP4211285B2
JP4211285B2 JP2002149977A JP2002149977A JP4211285B2 JP 4211285 B2 JP4211285 B2 JP 4211285B2 JP 2002149977 A JP2002149977 A JP 2002149977A JP 2002149977 A JP2002149977 A JP 2002149977A JP 4211285 B2 JP4211285 B2 JP 4211285B2
Authority
JP
Grant status
Grant
Patent type
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2002149977A
Other languages
Japanese (ja)
Other versions
JP2003345643A (en )
Inventor
淑子 保田
真一 川本
達雄 樋口
淳 江端
潤 沖津
Original Assignee
株式会社日立製作所
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Grant date

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from or digital output to record carriers, e.g. RAID, emulated record carriers, networked record carriers
    • G06F3/0601Dedicated interfaces to storage systems
    • G06F3/0602Dedicated interfaces to storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0611Improving I/O performance in relation to response time
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from or digital output to record carriers, e.g. RAID, emulated record carriers, networked record carriers
    • G06F3/0601Dedicated interfaces to storage systems
    • G06F3/0628Dedicated interfaces to storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0631Configuration or reconfiguration of storage systems by allocating resources to storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from or digital output to record carriers, e.g. RAID, emulated record carriers, networked record carriers
    • G06F3/0601Dedicated interfaces to storage systems
    • G06F3/0628Dedicated interfaces to storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0643Management of files
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from or digital output to record carriers, e.g. RAID, emulated record carriers, networked record carriers
    • G06F3/0601Dedicated interfaces to storage systems
    • G06F3/0668Dedicated interfaces to storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99953Recoverability

Description

【0001】 [0001]
【発明の属する技術分野】 BACKGROUND OF THE INVENTION
本発明は、複数のネットワークストレージ装置をクライアントから一つのネットワークストレージ装置として見せる、ネットワークストレージの仮想一元化方法、及び、仮想一元化装置に関する。 The present invention, show as one of the network storage device a plurality of network storage devices from a client, the virtual unified method of network storage, and a virtual centralized device.
【0002】 [0002]
【従来の技術】 BACKGROUND OF THE INVENTION
従来の情報システムは情報を処理する計算機に情報を格納するストレージをローカル接続して使用していた。 Conventional information systems a storage for storing information on computer to process information has been used in local connection. ところが、近年ネットワーク技術の発達に伴い、ストレージを計算機から分離してネットワークに接続し、ネットワーク経由でストレージにアクセスする形態が普及しつつある。 However, in recent years with the development of network technology, to connect to the network to separate the storage from the computer, configured to access the storage via the network are becoming popular. このようなネットワーク接続されたストレージをネットワークストレージと呼ぶ。 Such a network attached storage is called a network storage.
ネットワークストレージの代表としてSAN(Storage Area Network)ストレージとNAS(Network Atacched Storage)がある。 There are SAN (Storage Area Network) storage and NAS (Network Atacched Storage) as a representative of network storage. SANストレージはネットワークとして専用に開発されたSANを用い、性能と信頼性は高いが非常に高価であり、主にエンタープライズ向けに使用される。 SAN storage using a SAN that is specially developed as a network, but the high reliability performance are very expensive, are used primarily to enterprise. 一方、NASはネットワークとして最も普及しているIPネットワークを使用し、性能はSANストレージより低いが、価格がSANストレージに比べて低く、また手軽に使用できる。 Meanwhile, NAS uses IP networks that are most popular as a network, the performance is lower than SAN storage, the price is lower than the SAN storage, also can be used with ease.
近年、高価で大規模なストレージを用いるより、小規模で安価なNASを複数台用いて、性能と容量を確保したいという要求がある。 Recently, from the use of large-scale storage expensive, with a plurality of small, inexpensive NAS, there is a demand to ensure the performance and capacity. しかし、NASの台数が増えると、それらを管理するコストが増大するという問題がある。 However, as the number of NAS increases, there is a problem that the cost of managing them is increased. そこで、システム管理コストを抑制するために、複数のNASを計算機から仮想的に一つのNASとして見せ、新しいNASの追加や既存NASの削除を行なっても、計算機には影響を及ぼさないNASの仮想一元化技術が必要となる。 Therefore, in order to suppress the system management cost, show a plurality of NAS virtually as one NAS from a computer, be subjected to deletion of the new NAS added or existing NAS, NAS virtual without the computer affect centralized technology is required.
このようなNASの仮想一元化技術として、いくつかの方式が開発されている。 As a virtual unified technology such NAS, several methods have been developed. 例えば、http://www.maxtor.com/products/maxattach/default.htmには、プライマリストレージと呼ばれる管理サーバを兼ねたネットワークストレージがファイルの配置情報を一括管理し、ファイルのアクセス時刻等の属性を用いて格納するネットワークストレージを決定する複数ネットワークストレージの仮想的に一つのネットワークストレージとして見せる方法について記載されている。 For example, http: the //Www.Maxtor.Com/products/maxattach/default.Htm, network storage, which also serves as the management server collectively manages the location information of the file called primary storage, attributes such as access time of the file It describes a method to show virtually as one network storage plurality network storage to determine the network storage for storing used. 新規に生成されるファイルはプライマリストレージに格納し、しばらくアクセスされなかったファイルはプライマリストレージからセカンダリストレージに移動される。 File generated new store in primary storage, are moved files that have not been accessed for some time from the primary storage to secondary storage. 計算機からのファイルアクセスはプライマリストレージが受け付け、そのファイルがセカンダリストレージに存在する場合は、セカンダリストレージにファイルアクセスを行なうことで、計算機からはあたかも一つのネットワークストレージのように見える。 File access from the computer accepts the primary storage, if the file exists in the secondary storage, by the secondary storage performing file access, though looks like a single network storage from the computer.
また、The Zebra Striped Network File System、Hartman et. al.、ACM Transactions on Computer System、vol. 13、No. 3、1995、pp.274-310.には、ファイルを部分的に複数のネットワークストレージに分散して格納し、ファイルがどのストレージにどのような順番で格納されているか集中管理するサーバを設けることによって、複数のネットワークストレージを仮想的に一つのネットワークストレージに見せる方法が記載されている。 Also, The Zebra Striped Network File System, Hartman et. Al., ACM Transactions on Computer System, vol. 13, No. 3,1995, pp.274-310., The file in part on the plurality of network storage distributed and stored by a file providing what server to centralize or stored in the order in which storage is described how to show a plurality of network storage virtually one network storage. このように一つのファイルをネットワークストレージ間でストライピングする方法では、ファイルの容量が非常に大きい場合でも、各ネットワークストレージに均等にデータを書き込むことができる。 In the method for striping thus a single file between the network storage, even if the capacity of the file is very large, it is possible to write data evenly on each network storage. また、DiFFS:a Scalable Distributed File System, Christos Karamanolis et. al.、HP Laboratories Palo Alto、HPL-2001-19、January 24, 2001には、上記の集中管理サーバ方式と異なる非集中管理サーバ方式により、複数のネットワークストレージを仮想的に一つのネットワークストレージとして見せる方法について記載されている。 In addition, DiFFS:.. A Scalable Distributed File System, Christos Karamanolis et al, HP Laboratories Palo Alto, HPL-2001-19, in the January 24, 2001, by the non-centralized management server system different from the centralized management server system, We describe a method to show a plurality of network storage virtually as one network storage. この方法は、ファイルの格納先ネットワークストレージをディレクトリとファイルを管理するディレクトリエントリ内に格納し、このディレクトリエントリを各ネットワークストレージに分散して配置する。 This method stores the storage destination network storage the files in the directory entry for managing directories and files are arranged in a dispersed the directory entry for each network storage.
また、米国特許第6,029,168号には、上記の非集中管理サーバ方式でかつ、一つのファイルを部分的に複数のネットワークストレージに分散して格納する方法が記載されている。 Also, U.S. Pat. No. 6,029,168, and a non-central management server method described above, a method of storing one file partially dispersed in a plurality of network storage is described. この方法はファイルをどのネットワークストレージにどのような順番で配置するかを、各ネットワークストレージに分散して管理する。 If this method is placed in any order in which network storage files, manages distributed to each network storage.
【0003】 [0003]
【発明が解決しようとする課題】 [Problems that the Invention is to Solve
前記http://www.maxtor.com/products/maxattach/default.htmの方法、及び、前記DiFFS:a Scalable Distributed File Systemの方法は、ファイルの管理情報を集中して持つか分散して持つかの違いはあるが、ファイル毎に格納先ネットワークストレージの情報を持つ。 The method of the Http://Www.Maxtor.Com/products/maxattach/default.Htm, and the DiFFS: or a Scalable methods Distributed File System has dispersed and either has to concentrate management information of the file there is a difference of, but with the information of the storage destination network storage for each file. また、前記The Zebra Striped Network File systemの方法、及び、米国特許6,029,168号の方法は、ファイルの断片毎に格納先ストレージの情報を持つ。 Further, the method of the The Zebra Striped Network File system, and, U.S. Patent No. 6,029,168 a method has information of the storage destination storage for each file fragments. このようなファイル毎あるいはファイルの断片ごとに格納先ネットワークストレージの情報を持つと、格納するファイルの数に比例して管理する情報も増大し、この管理情報がネットワークストレージのデータ格納用領域のサイズを圧迫する。 Having information storage destination network storage for each fragment of such files or each file, information for managing in proportion to the number of files to be stored also increases the size of the data storage area of ​​the management information network storage to squeeze.
さらに、仮想的に一元化された複数のネットワークストレージに新しいネットワークストレージを追加したり、あるいは、削除したりして構成変更するのに伴い、ファイルの格納先ネットワークストレージが変更されると、格納先の変更された全てのファイルに対して、格納先ネットワークストレージの情報を書き換える必要があり、これが構成変更時の性能に影響を及ぼす。 Furthermore, to add a new network storage to a plurality of network storage is centralized virtually or, as to configuration changes or delete, when the storage destination network storage file is changed, the storage destination of for the changed all files, it is necessary to rewrite the information of the storage destination network storage, which affects the performance at the time of configuration change.
本発明の目的は、ファイルの格納先に関する管理情報をコンパクト化し、データ格納領域が圧迫されないような複数ネットワークストレージの仮想一元化方法を提供することにある。 An object of the present invention is to compact the management information about the storage location of the file, the data storage area to provide a virtual centralized method of multiple network storage that can not be squeezed. 本発明の他の目的は、ネットワークストレージの構成変更に伴って発生するファイル移動の際の管理情報の更新処理のオーバヘッドを低減し、柔軟にかつ高速に構成変更可能な、複数ネットワークストレージの仮想一元化方法を提供することにある。 Another object of the present invention reduces the overhead of updating the management information when the file movement generated with the configuration change of a network storage, flexibly and fast to the configurable virtual centralized multiple network storage It is to provide a method.
【0004】 [0004]
【課題を解決するための手段】 In order to solve the problems]
本発明は、一つまたは複数のネットワークストレージから構成される仮想一元化ネットワークストレージシステムにおいて、ファイルの格納先ネットワークストレージをファイルグループを単位として管理するところに特徴がある。 The present invention provides a virtual centralized network storage system consists of one or more network storage, is characterized in that manages the storage destination network storage file file groups as a unit. ファイルが属するファイルグループを予めグループマップとして定義しておく。 File be defined in advance as a group map the file group to which they belong. グループマップは、例えばファイル識別子を検索鍵としたハッシュ関数として与える。 Group map, for example, give the file identifier as a hash function as a search key. さらに、ファイルグループと、そのファイルグループに属するファイルの格納先ネットワークストレージを定めるグループ配置を設けておく。 Further, preferably provided with a file group, the group arranged to determine the storage destination network storage files belonging to the file group. グループ配置は、例えばファイルグループとネットワークストレージとの対応を記録するテーブルやデータベースとして与える。 Group arrangement example gives the correspondence between the file group and the network storage as a table or a database for recording. クライアントがファイルにアクセスする際は、まずアクセス対象ファイルのファイル識別子とグループマップとから、そのファイルが属するファイルグループを求める。 When the client to access the file, first from the file identifier and the group map of the access target file, find a file group to which the file belongs. 次に、グループ配置を参照して求めたファイルグループに対応したネットワークストレージを求める。 Next, determine the network storage corresponding to the file group obtained by referring to the group arrangement. 求めたネットワークストレージがアクセス対象ファイルの格納先ネットワークストレージであるから、前記ネットワークストレージに対してファイルアクセスを行なう。 Network storage that required from a storage destination network storage access target file, performs file access to the network storage. この発明によれば、一つ以上のファイルから構成されるファイルグループを単位として格納先ネットワークストレージの情報を持つため、ファイル毎に管理情報を持つ場合にくらべて管理情報が少なくなる。 According to the present invention, because of its information storage destination network storage file group consisting of one or more files as a unit, the management information is reduced compared to the case with the management information for each file.
また、仮想一元化ネットワークストレージシステムの構成変更時には、ファイルグループを単位としてファイルの格納先ネットワークストレージを移動する。 Further, at the time of configuration change of the virtual centralized network storage system, moving the storage location network storage file file groups as a unit. この際に、グループ配置の移動するファイルグループの格納先ネットワークストレージを変更するだけで良いので、ファイル毎に格納先情報を管理する場合に比べてオーバヘッドを小さくできる。 At this time, since it is only necessary to change the storage destination network storage of the moving file group in the group arrangement, it is possible to reduce the overhead compared with the case of managing the storage destination information for each file.
【0005】 [0005]
【発明の実施の形態】 DETAILED DESCRIPTION OF THE INVENTION
<実施例1> <Example 1>
図1は本発明の第一の実施例を含む情報システムの全体構成を示す図である。 Figure 1 is a diagram showing an overall configuration of an information system including a first embodiment of the present invention. クライアント1はネットワーク2を介して本発明の仮想一元化装置3に接続されている。 The client 1 is connected to the virtual unification apparatus 3 of the present invention through the network 2. 仮想一元化装置3はネットワーク4を介して、ネットワークストレージ5、6、7と接続されている。 Virtual unification apparatus 3 via the network 4, and is connected to the network storage 5,6,7. ネットワーク4を用意する代わりにネットワークストレージ5、6、7をネットワーク2に接続しても良い。 The network storage 5,6,7 instead of providing the network 4 may be connected to the network 2. ネットワーク2と4を独立すると、アクセス集中時に高い性能を出すことができる。 When independent networks 2 and 4, it is possible to produce high performance at access concentration. 一方ネットネットワーク2にネットワークストレージ5、6、7を接続すると、ネットワーク4が不要となり、コストを抑えることができる。 On the other hand, when connecting the network storage 5,6,7 net network 2, the network 4 is not required, the cost can be suppressed. 仮想一元化装置3はネットワークストレージ5,6,7を仮想的に一元化し、クライアント1から一つのネットワークストレージとしてアクセスできる仮想一元化ネットワークストレージシステム8を提供する。 Virtual unification unit 3 centralize network storage 5,6,7 virtually provides a virtual centralized network storage system 8 that can be accessed as a single network storage from the client 1.
(ネットワークストレージ) (Network storage)
ネットワークストレージ5、6、7は公知の技術によって構成されるもので、リモート制御手段10とストレージ装置11とを備える。 Network Storage 5,6,7, which is formed by known techniques, and a remote control unit 10 and the storage device 11. ストレージ装置11にはファイルシステムを搭載する。 Mounting the file system in the storage device 11.
ネットワークストレージ5、6、7は専用装置であっても良いし、ストレージ装置を備えた汎用のサーバ、ワークステーション、あるいは、PCにリモート制御手段を搭載しても良い。 It network storage 5,6,7 may be a dedicated device, a general-purpose server with storage devices, workstations or may be mounted remote control unit to the PC. リモート制御手段10は、ネットワーク上に接続されたクライアントからのマウント要求とファイルの生成、読み出し、書き込み、あるいは、ディレクトリの生成等の要求を受け、ローカルストレージ装置のファイルシステムに対してファイルの生成、読み出し、書き込み、あるいは、ディレクトリの生成等を行なう。 Remote control means 10, generates mount requests and the file from a client connected to a network, read, write, or receives a request for generating such a directory, the generation of files for the file system of the local storage device, read, write, or for generating such a directory. リモート制御手段10は、サン・マイクロシステムズ社(Sun Microsystems,Inc.)によって開発されたNFS(Network File System)や、マイクロソフト社(Microsoft Corporation)によって開発されたCIFS(Common Internet File System)等のファイルアクセスプロトコルを使用して、クライアントとの通信を行なう。 Remote control means 10, Sun Microsystems, Inc. (Sun Microsystems, Inc.) NFS was developed by (Network File System) or Microsoft files such as CIFS (Common Internet File System), which was developed by (Microsoft Corporation) using an access protocol, performs communication with the client. 本実施例1ではファイルアクセスプロトコルとしてNFSを用いるものとする。 In Example 1 and those using NFS as the file access protocol. NFSの要求を受けファイルアクセス処理を行なうリモート制御手段10としては、公知のmountdとnfsdを使用する。 The remote control unit 10 to perform file access processing receives a NFS request, using known mountd and nfsd.
(仮想一元化装置) (Virtual centralized system)
本実施例の仮想一元化装置3は、ファイルシステム100、グループマップ110、グループ配置120、要求処理手段130、移動手段140、容量監視手段150、統合手段160、管理手段180から構成される。 Virtual unification apparatus 3 of this embodiment, the file system 100, a group map 110, a group arrangement 120, the request processing unit 130, moving means 140, the capacity monitoring unit 150, integrating unit 160, and a management unit 180. ファイルシステム100、グループマップ110、グループ配置120は主にファイルの格納先ネットワークストレージを定めるために用いられる。 File system 100, a group map 110, a group arrangement 120 is used primarily to determine the storage destination network storage file. 詳細は後述の(ファイルシステム)、(グループマップ)、(グループ配置)の項で説明する。 Details will be described later (file system), (Group map), described in the section (a group arrangement). 要求処理手段130はクライアントからのファイルアクセス要求を処理する。 Request processing unit 130 processes file access requests from clients. 詳細は後述の(要求処理手段)の項で説明する。 Details will be described in the section below (request processing unit). 移動手段140は、ネットワークストレージを追加したり削除したり、あるいはネットワークストレージの一つの残容量が定められた値を下回った場合に、ファイルをネットワークストレージ間で移動する。 Moving means 140, when the add or delete network storage or, or is one of the remaining capacity of the network storage falls below a value determined to move files between the network storage. 詳細は後述の(移動手段)の項で説明する。 Details will be described in the section below (moving means). 容量監視手段150は各ネットワークストレージの容量を常時監視し、必要があれば移動手段を起動する。 Capacity monitoring unit 150 monitors the capacity of each network storage always activates the moving means if necessary. 詳細は後述の(容量監視手段)の項で説明する。 Details will be described in the section below (volume monitoring means). 統合手段160は既に運用中の既設ネットワークストレージ装置を仮想一元化ネットワークストレージシステムに統合する際の処理を行なう。 Integrating means 160 performs the already processed in integrating the existing network storage device in operation to a virtual centralized network storage system. 詳細は後述の(統合手段)の項で説明する。 Details will be described in the section below (integration unit). 管理手段180は仮想一元化ネットワークストレージシステム8を管理する管理者からの指示を受け付け、仮想一元化装置3の設定を変更したり、移動手段140や統合手段160を呼び出して構成変更等の要求に対応する。 Management unit 180 receives an instruction from the administrator, who manages virtual centralized network storage system 8, to change the settings of the virtual unified device 3, corresponding to the requirements of such configuration changes by calling the moving means 140 and integration means 160 . 管理者は、クライアント1上の汎用Webブラウザをユーザインタフェースとして管理手段180へのアクセスする。 Administrator access management unit 180 of the general-purpose Web browser on the client 1 as a user interface. あるいは、クライアント1に専用のユーザインタフェースプログラムを搭載してそれを使用したり、仮想一元化装置にコンソールを接続しそれを用いても良い。 Alternatively, or use it by mounting a dedicated user interface program to the client 1, connect the console to the virtual centralized device may also be used therewith.
仮想一元化装置3の処理の概要を説明する。 An outline of processing of the virtual unification unit 3. クライアント1はまず仮想一元化装置3に対してマウント要求を発行して、仮想一元化ネットワークストレージシステム8が共有を許可しているディレクトリをクライアント1のファイルシステムの特定の場所にマウントする。 Client 1 issues a mount request first to the virtual unification unit 3, to mount the directory virtual centralized network storage system 8 is allowed to share the specific location of the client 1 in the file system. そしてクライアント1がファイルアクセス要求を発行すると、仮想一元化装置3の要求処理手段130がそれを受け、ファイルシステム100、グループマップ110、グループ配置120を用いて、アクセス対象ファイルの格納先ネットワークストレージを求める。 When the client 1 issues a file access request, received it request processing unit 130 of the virtual unification apparatus 3, the file system 100, a group map 110, using the group arrangement 120 obtains the storage destination network storage access target file . そして、その格納先ネットワークストレージに対してクライアントから受けたファイルアクセス要求を送る。 Then, it sends a file access request received from the client for the storage destination network storage. 格納先ネットワークストレージがファイルアクセスを実行し終わると、仮想一元化装置3は格納先ネットワークストレージからの得られたデータを要求元クライアント1に返す。 When the storage destination network storage has finished executing the file access, the virtual unification unit 3 returns the data obtained from the storage destination network storage to the requesting client 1. このように、クライアント1はアクセス対象ファイルがどのネットワークストレージに存在するか知る必要はなく、複数のネットワークストレージを一つの大きなネットワークストレージとしてアクセスできる。 Thus, the client 1 does not need to know whether there which network storage access target file, can access multiple network storage as a single large network storage.
なお、本発明の仮想一元化装置3は、全てのファイルを一つ以上のファイルグループに分割し、ファイルグループごとにファイルの格納先ネットワークストレージ装置を与え、同一ファイルグループに属するファイルは同じネットワークストレージに格納する。 The virtual unification apparatus 3 of the present invention divides all files to one or more file groups, giving the storage location network storage device file for each file groups, files that belong to the same file group to the same network storage Store. ファイルグループは、使用するネットワークストレージ5、6、7の数と同数かあるいはそれより多く設ける。 File group, provided more than or whether the same number of network storage 5,6,7 used. ファイルグループに属するファイルの容量が、ファイルグループ毎に大きく異なると、それを格納するネットワークストレージ間で使用容量のアンバランスが生じる。 Capacity of the file belonging to the file group and significantly different for each file group, the imbalance of capacity utilization occurs between a network storage to store it. これを改善するため、ファイルグループは、ネットワークストレージ数の10倍から1000倍程度設ける。 To improve this, file groups, provided the 10 times the number of network storage 1000 times. こうすることで、ファイルグループ当りの容量のばらつきを減少し、ネットワークストレージ間の使用容量のアンバランスを解消する。 By doing so, it reduces the variation in the capacity per file group, to eliminate the imbalance of capacity utilization between network storage. このようにファイルグループ単位で格納先ネットワークストレージを定めることで、従来技術で発生するファイル数に比例して管理情報が増加しストレージを圧迫する問題を解消でき、また、ファイル移動時に各ファイル毎に格納先ネットワークストレージの情報を書き換える必要がなくなり、オーバヘッドを減少できる。 By determining in this way the storage destination network storage by file group basis, the management information in proportion to the number of files generated in the prior art can be solved the problem of compressing the increased storage, also at the time of file migration for each file it is not necessary to rewrite the information of the storage destination network storage, can reduce overhead.
以下では仮想一元化装置3の構成要素の詳細について説明する。 Hereinafter will be described the details of the components of the virtual unification unit 3.
(ファイルシステム) (File system)
ファイルシステムは、仮想一元化ネットワークストレージシステム全体のディレクトリ構造と、全ファイルのファイル識別子を管理する。 File system management and directory structure of the entire virtual centralized network storage system, the file identifier of all files. 仮想一元化装置3が使用するファイルシステム100はオペレーティングシステムが提供するファイルシステムを使用する。 File system 100 virtual unification unit 3 is used to use a file system provided by the operating system.
図2はサン・マイクロシステムズ社のSolaris、インターナショナル・ビジネス・マシーンズ社(International Business Machines Corporation)社のAIX、ヒューレット・パッカード社(Hewlett−Packard Company)のHP−UX、Linux,及び、FreeBSD等のUNIX系オペレーティングシステムにおけるファイルシステムの基本構造を示したものである。 Figure 2 is Sun Microsystems Solaris, International Business Machines, Inc. (International Business Machines Corporation), Inc. of AIX, HP-UX Hewlett-Packard (Hewlett-Packard Company), Linux, and, UNIX, such as FreeBSD It shows a basic structure of the file system in the system operating system. 図2のファイルシステムは図3のディレクトリ構造を持つファイル郡を格納した様子を示している。 File system of FIG. 2 shows a state that stores a file gun having the directory structure of FIG. 図3の/、d1、d2、d3はディレクトリであり、f1、f2、f3はファイルを示している。 / Of Figure 3, d1, d2, d3 is a directory, f1, f2, f3 indicates the file. /はルートと呼ばれディレクトリの始点を表す。 / Represents the starting point of the is called the root directory.
ファイルとディレクトリをまとめてファイルオブジェクトと呼ぶ。 Referred to as the file objects together files and directories. ファイルオブジェクトはファイルシステム内でiノードと呼ばれるデータ構造1001〜1007として記録される。 File objects are recorded as a data structure from 1001 to 1007, called i-node in the file system. iノードはそれを識別するiノード番号という固有の識別子を持つ。 i node has a unique identifier that the i-node number to identify it. 図2の例では、/ディレクトリにはiノード1001が対応しそのiノード番号は2番である。 In the example of FIG. 2, / is the directory i-node 1001 corresponds the i-node number is # 2. ディレクトリd1にはiノード1002が対応しそのiノード番号は5番である。 The directory d1 the i-node number i node 1002 is compatible with a number 5. ディレクトリd2にはiノード1003が対応しそのiノード番号は7番である。 The directory d2 its i-node number i node 1003 is compatible with a number 7. ディレクトリd3にはiノード1004が対応しそのiノード番号は9番である。 The directory d3 its i-node number i node 1004 is compatible with a number 9. ファイルf1にはiノード1005が対応しそのiノード番号は10番である。 The file f1 its i-node number i node 1005 corresponds is No. 10. ファイルf2にはiノード1006が対応しそのiノード番号は14番である。 The file f2 its i-node number i node 1006 is compatible with a number 14. ファイルf3にはiノード1007が対応しそのiノード番号は16番である。 The file f3 the i-node number i node 1007 corresponds is the 16th. ファイルシステムにおいて、ファイルオブジェクトの識別にはiノード番号が使用される。 In the file system, the identification of the file object i-node number is used. 一方ファイルオブジェクトの名前や配置場所を管理するディレクトリ情報は、ディレクトリエントリという構造1008、1009、1010、1011によって管理される。 On the other hand directory information for managing the name and location of the file object it is managed by the structure 1008,1009,1010,1011 that directory entry. ファイルシステム内のディレクトリのそれぞれに対して一つディレクトリエントリが設けられる。 One directory entry is provided for each of the directories in the file system. ディレクトリ/、d1、d2、d3に対してそれぞれディレクトリエントリ1008、1009、1010、1011が対応する。 Directory /, d1, d2, a directory entry 1008,1009,1010,1011 each of which corresponds to the d3. ディレクトリのiノードは、そのディレクトリに対応するディレクトリエントリへのポインタを持つ。 i node of the directory has a pointer to the directory entry corresponding to the directory. 例えば図2の場合、ディレクトリd1に相当するiノード1002はディレクトリd1に対応するディレクトリエントリ1009へのポインタを保持する。 For example, in the case of FIG. 2, i node 1002 corresponding to directory d1 holds a pointer to the directory entry 1009 corresponding to directory d1. ディレクトリエントリは自身のディレクトリのiノード番号とそのディレクトリ名(.で表される)の組、親ディレクトリのiノード番号とそのディレクトリ名(..で表される)の組、及び、自身のディレクトリの直下にあるファイルまたはディレクトリのiノード番号とファイル名又はディレクトリ名の組を構成要素とする。 Directory entry is the i-node number and the name of the directory own directory set of (expressed in.), The set of the i-node number and the directory name of the parent directory (represented by ...), and, of its own directory and i-node number and sets the components of the file name or directory name of the file or directory immediately under the.
ディレクトリ構造は、iノードとディレクトリエントリの相互チェーンによって管理される。 The directory structure is managed by the i-node and inter chain directory entry. 例えば、/ディレクトリに相当するiノード1001はディレクトリエントリ1008を示しており、このディレクトリエントリを参照すると、/ディレクトリの直下にd1という名前のファイルオブジェクトが存在しそのiノード番号が5番であることが分かる。 For example, / i node 1001 corresponding to directory is the directory entry 1008, referring to this directory entry, / it have a file object named d1 its i-node number immediately below the directory is No. 5 It can be seen. 次に、5番のiノード1002を参照すると、ファイルオブジェクトがディレクトリであることが分かり、それが指し示すディレクトリエントリ1009を参照することによって、ディレクトリd1の直下にiノード番号7番のd2という名前のファイルオブジェクトとiノード番号9番のd3とうい名前のファイルオブジェクトが存在することがわかる。 Then, referring to the i-node 1002 of the number 5, the file object is found to be a directory, by referring to the directory entry 1009 in which it is pointing, named i-node number 7 number of d2 immediately below the directory d1 it can be seen that the file object of d3 coordination name of the file object and the i-node number # 9 is present. さらに、iノード番号9番のiノード1004を参照すると、それがディレクトリであることがわかり、指し示すディレクトリエントリ1011を参照することによって、直下にiノード番号16番のf3という名前のファイルオブジェクトが存在することがわかる。 In addition, referring to the i-node 1004 of the i-node number # 9, it is found to be a directory, by referring to the directory entry 1011 that point, there is a file object named i-node number 16 number of f3 immediately below it can be seen that. このようにして、iノードとディレクトリエントリによってディレクトリ構造が記録される。 In this manner, the directory structure is recorded by i-node and directory entries. 次に、ファイルに対応するiノード1005、1006、1007はファイルの中身であるデータを格納するデータブロックへのポインタを記録する。 Next, i nodes 1005, 1006 and 1007 corresponding to the file records a pointer to the data block to store the data which is contents of the file. 図2の場合、ファイルf1に対応したiノード1005はデータブロック1012を一つ指しており、このデータブロック1012内にファイルf1のデータが格納されている。 In FIG. 2, i node 1005 corresponding to the file f1 may point one data block 1012, the data of the file f1 is stored in the data block 1012. 複数のブロックを使用するファイルの場合、iノードはそれらずべてのブロックへのポインタを記録する。 For files that use a plurality of blocks, i node records a pointer to a block of Te thereof Zube.
以上、UNIX系オペレーティングシステムが提供するファイルシステムの一般的構造について説明した。 It has been described above general structure of the file system UNIX-like operating system provides. 通常ファイルシステムは、ファイルのディレクトリ構造や識別子を管理すると共に、ファイルの実体であるデータを保管する。 Usually file system manages the directory structure and identifier of the file, stores the data which is the entity of the file. しかし、本発明の仮想一元化装置3は、ファイルシステム100を、ファイルのディレクトリ構造とファイル識別子(以後管理情報と呼ぶ)の管理にのみ使用し、ファイルの実体であるデータは各ネットワークストレージ5、6、7に格納する。 However, the virtual unification apparatus 3 of the present invention, the file system 100, used only to manage the directory structure and file identifier of the file (hereinafter referred to as management information), an entity of the file data each network storage 5,6 , and stores it in the 7. このため、仮想一元化装置3はファイルシステム100に対して容量0のダミーファイルを生成する。 Therefore, the virtual unification unit 3 generates a dummy file capacity 0 to the file system 100. クライアントが仮想一元化ネットワークストレージシステム8に対して図3のようなディレクトリ構造を持つファイル郡を格納した場合、仮想一元化装置3はファイルシステム100に図2の構造を作るが、ファイルの実体であるデータブロック1012、1013、1014は使用しない。 If the client has stored the file gun having the directory structure shown in FIG. 3 for a virtual centralized network storage system 8, the data virtual unification unit 3 is making the structure of FIG. 2 in the file system 100, a file entity block 1012,1013,1014 is not used.
また、仮想一元化装置3はファイル識別子としてiノード番号を利用する。 The virtual unification unit 3 utilizes the i-node number as the file identifier.
なお、ディレクトリ構造とファイル識別子の管理ができれば必ずしもファイルシステム100を使用する必要はない。 It is not always necessary to use the file system 100 as long as management of the directory structure and file identifier. ファイル識別子が全ファイルに対しいて一意であることを保証しつつ、データベースを利用して管理しても良いし、専用のテーブルを設けて権利しても良い。 While ensuring that the file identifier is unique to have to all the files, may be managed by using the database, it may be right in a dedicated table.
(グループマップ) (Group map)
グループマップ110は、ファイルとそのファイルが属するファイルグループとの対応を与える。 Group map 110, to give the corresponding file and the file belongs file group. 具体的にはファイルの識別子であるiノード番号と、そのiノード番号で識別されるファイルの属するファイルグループの識別子を与える。 Specifically gives the i-node number which is an identifier of the file, the identifier of the file group of the file identified by the i-node number. グループマップ110の具体例として、ファイルのiノード番号Iを検索鍵としハッシュ値をファイルグループの識別子Gとするハッシュ関数G=Hash(I) Specific examples of the group map 110, a hash function G = Hash to the hash value as a search key the i-node number I file identifier G file group (I)
によって与える。 Give by. 例えばファイルをN個のファイルグループに分割する場合のハッシュ関数として、iノード番号Iにファイルグループ数Nのモジュロ演算(Nで割った余り)を適用して得られた値をファイルグループの識別子とする。 For example as a hash function for the case of dividing the file into N files group, an identifier of the obtained value file group by applying the i-node number I modulo operation of the number of file group N (modulo N) to.
【0006】 [0006]
G = Hash(I) = I mod N G = Hash (I) = I mod N
0〜8までの9つのファイルグループを設けた場合のグループマップのハッシュ関数は以下のようになる。 Group map hash function in the case in which a nine file groups of up to 0-8 is as follows.
【0007】 [0007]
Hash(I) = I mod 9 …▲1▼ Hash (I) = I mod 9 ... ▲ 1 ▼
ハッシュ関数は上記のモジュロ演算の他、iノード番号Iに対して一意にファイルグループを対応付けることができれば何を使用しても良い。 Other hash function of the modulo, what may be used if it is possible to associate the unique file group for i-node number I. ただし、特定のファイルグループに属するファイルの数が他のファイルグループに属するファイルの数より極端に多くなるようなハッシュ関数を使用すると、それらのファイルグループを格納するネットワークストレージ間で容量のアンバランスが生じる。 However, using too much becomes such hash functions than the number of files belonging to several other file group of files that belong to a specific group of files, unbalance capacitance between network storage for those files Group occur. この問題を発生させないようにするには、なるべく各ファイルグループに均等にファイルがばら撒かれるような関数を選ぶべきである。 To prevent the occurrence of this problem is to choose the function that uniformly file sown rose as much as possible to each file group.
(グループ配置) (Group placement)
グループ配置120の構造を図4に示す。 The structure of group arrangement 120 shown in FIG. グループ配置は、ファイルグループと、そのファイルグループに属するファイルの格納先ネットワークストレージとを対応付ける役割を持つテーブルで、ストレージ装置内に格納される。 Group arrangement includes a file group, a table that is responsible for associating the storage destination network storage files belonging to the file group is stored in the storage device. 1201の行は9つのファイルグループの識別番号0〜8を示しており、1202の行は対応する1201行のファイルグループのファイルの格納先ネットワークストレージの識別番号を示す。 1201 line indicates the identification number 0-8 nine file groups, rows 1202 indicates the identification number of the storage destination network storage the files of the corresponding 1201 line in the file group. 図4の例で、ファイルグループ1に属するファイルの格納先はネットワークストレージ1であり、ファイルグループ6に属するファイルの格納先はネットワークストレージ3である。 In the example of FIG. 4, the file storage destination belonging to the file group 1 is a network storage 1, the file storage destination belonging to the file group 6 is a network storage 3. 仮想一元化装置3は起動時に、グループ配置の1202の行に、各ネットワークストレージの識別子がほぼ均等に出現するように、初期化を行なう。 Virtual unification unit 3 at the time of startup, the 1202 line of the group arrangement, as the identifier of each network storage appears almost equally performs initialization.
グループ配置120は、ネットワークストレージの追加、削除、平滑化、及び、既存ネットワークストレージの取り込みの際に書き換えられる。 Group arrangement 120 may include additional network storage, deletion, smoothing, and is rewritten when the existing network storage uptake. なお、グループ配置120は、ファイルグループと格納先ネットワークストレージとの対応が取れ、かつ、仮想一元化装置3が何らかの障害によってダウンしてしまっても、対応関係が消失してしまわなければ、データベースを利用しても良いし、その他どんな方法であっても良い。 The group arrangement 120, 0.00 correspondence between file group and the storage destination network storage, and even gone down by the virtual unified device 3 is any failure, Assuming that you did not correspondence is lost, use of the database It may be, may be other in any way.
なお、グループ配置120は、ファイルアクセスの際に必ず参照するため、グループ配置がストレージ内に格納されていると、性能低下を招く。 The group arrangement 120, in order to always referred to when file access, the group arrangement is stored in the storage, leading to performance degradation. このため、ストレージ内に格納されたグループ配置120のコピーを高速にアクセス可能なメモリに配置しても良い。 Therefore, a copy of the group arrangement 120 stored in the storage may be arranged in memory accessible at high speed. この場合、グループ配置を書き換える際は、メモリとストレージとを両方とも書き換える必要がある。 In this case, when rewriting a group arrangement, it is necessary to rewrite both the memory and storage.
(要求処理手段) (Request processing means)
要求処理手段130はクライアントからのファイルシステムのマウント要求とファイルアクセス要求を処理する。 Request processing unit 130 processes the mount request and the file access request of the file system from the client. 本実施例ではクライアント1と要求処理手段130とは、前述のNFSプロトコルを用いてファイルアクセスのやり取りを行なうものとする。 In the client 1 and the request processing unit 130 in this embodiment, it is assumed for exchanging files accessed using the NFS protocol described above. 一元管理装置3とネットワークストレージ5、6、7の間もNFSプロトコルを用いてファイルアクセスのやり取りを行う。 Even while the centralized management device 3 and the network storage 5,6,7 exchanging files accessed using the NFS protocol. なお、クライアント1がCIFSにのみ対応している場合、一元管理装置3の要求処理手段130はクライアント1とCIFSにてやり取りを行う必要がある。 Incidentally, if the client 1 is only compatible with CIFS, request processing means 130 of the centralized management device 3 is required to exchange with the client 1 and CIFS. これを実現するため、一元管理装置3はネットワークストレージ5、6、7とはNFSでやり取りを行い、クライアント1とだけCIFSでやり取りを行う。 To achieve this, the centralized management device 3 exchanges with NFS is a network storage 5,6,7 exchanges with CIFS only client 1. CIFSクライアントとのやり取りは、Sambaなどの公知な技術を用いることで実現できる。 Interaction with the CIFS client can be realized by using a known technique such as Samba.
NFSではまずクライアントがサーバに対してマウント要求を発行して、サーバ側の共有ファイルのルートディレクトリ(マウントポイントと呼ぶ)をクライアントのファイルシステムの特定の場所にマウントする。 And the NFS client first issues a mount request to the server, to mount the root directory of the shared file server (called a mount point) to a specific location of the client's file system. 要求処理手段130はクライアントからのマウント要求に対して、公知のmountdを利用してマウント要求に答える。 The request processing means 130 mount requests from client answers the mount request using known mountd. mountdは、仮想一元化ネットワークストレージシステム8のマウントポイントのファイルハンドル(後述)をクライアント1に返す。 mountd returns the file handle of the mount point of the virtual centralized network storage system 8 (described below) to the client 1.
NFSプロトコルに規定されたファイルやディレクトリに対するアクセス要求には、ファイルの生成を行なうCREATE要求、ファイル名を与えてファイルハンドルを取得するLOOKUP要求、ファイルを読み出すREAD要求、ファイルを書き込むWRITE要求、ファイルの属性を設定するSETATTR要求、ファイルの属性を読み出すGETATTR要求、ファイルを削除するREMOVE要求、ファイルの名前を変更するRENAME要求、ディレクトリを生成するMKDIR要求、ディレクトリを読み出すREADDIR要求、ディレクトリを削除するRMDIR要求がある。 The request for access to the file or directory specified in the NFS protocol, CREATE request for generating a file, the file name LOOKUP request to obtain the file handle giving, READ request to read a file, WRITE request to write a file, file SETATTR request to set the attribute, GETATTR request to read the attributes of the file, rEMOVE request to delete a file, rENAME request to change the name of the file, MKDIR request to create a directory, READDIR request to read the directory, RMDIR request to delete a directory there is. 以下各要求毎に要求処理手段3の動作を説明する。 The operation of the request processing unit 3 will be described for each request below.
(CREATE要求の処理) (Processing of the CREATE request)
クライアント1はファイルを生成するディレクトリのファイルハンドルHと、生成するファイルの名前Fを引数としてCREATE要求を発行する。 Client 1 issues a CREATE request and the file handle H of the directory in which to generate a file, the name F of the generated file as an argument. ファイルハンドルは、クライアント1が後に説明するLOOKUP要求等を発行すると返り値として得られるファイルを識別するデータ構造である。 File handle is a data structure that identifies the file obtained as a return value and issues a LOOKUP request or the like to be described later client 1. ファイルハンドルの構成を図6に示す。 Figure 6 shows the structure of the file handle. ファイルハンドル170は親ディレクトリのiノード番号フィールド1701と、ファイルオブジェクトのiノード番号フィールド1702を含んでいる。 The file handle 170 and i-node number field 1701 of the parent directory, it contains the i-node number field 1702 of the file object. 要求処理手段130がクライアント1からCREATE要求を受けると、図5の1301を呼び出し、要求を処理する。 When the request processing unit 130 receives a CREATE request from the client 1, it calls the 1301 of FIG. 5, to process the request. まず1302において、親ディレクトリのファイルハンドルHのiノード番号フィールド1702から、ファイルを生成する親ディレクトリのiノード番号PIを取り出し、このiノード番号で識別されるディレクトリにファイル名Fのサイズ0のダミーファイルを生成する。 First, in 1302, the i-node number field 1702 of the file handle H of the parent directory, removed i-node number PI of the parent directory to generate the file, the size 0 of a file name F in a directory identified by the i-node number dummy to generate a file. 生成したファイルのiノード番号をIとする。 The i-node number of the generated files and I. 次に1303において、生成したファイルのiノード番号Iに対して上記(ファイルマップ)の項で説明したハッシュ関数Hashを適用し、ファイルグループGを求める。 Next, in 1303, for the i-node number I of the generated file by applying the hash function Hash described in the section above (file map), obtain the file group G. 次に、1304において上記(グループ配置)の項で説明したグループ配置120を参照し、ファイルグループGに対応するネットワークストレージNを求める。 Next, with reference to the group arrangement 120 is described in the section above (Group arranged) in 1304, obtains the network storage N that corresponds to the file group G. 求めたネットワークストレージNがクライアント1が発行したCREATE要求の対象ファイルの格納先ネットワークストレージとなる。 Obtained network storage N is the storage destination network storage target file of the CREATE request by the client 1 issued. そして、1305において、クライアント1から送られてきたCREATE要求をネットワークストレージNに対して発行する。 Then, in 1305, it issues a CREATE request sent from the client 1 to the network storage N. 最後に1306で、ネットワークストレージ装置NからCREATE要求の応答が返ると、ファイルシステム100上でダミーファイルを生成したディレクトリのiノード番号PIと生成したダミーファイルそのもののiノード番号Iからファイルハンドルを構成して、それを要求元クライアント1に返して処理を終了する。 Finally, in 1306, from the network storage device N response CREATE request is returned, constituting the file handle from the i-node number I of the dummy file itself generated an i-node number PI of the directory that generated the dummy file on the file system 100 and, thereby terminating the process returns it to the requesting client 1.
(LOOKUP要求の処理) (Processing of LOOKUP request)
クライアント1はファイルハンドルを取得する対象ファイルオブジェクトの名前Fと、そのファイルオブジェクトの親ディレクトリのファイルハンドルHを引数としてLOOKUP要求を発行する。 The client 1 and the name F of the target file object to retrieve the file handle, to issue a LOOKUP request the file handle H of the parent directory of the file object as an argument. 要求処理手段130がクライアント1からLOOKUP要求を受けると、図7の1311を呼び出す。 When the request processing unit 130 receives a LOOKUP request from the client 1, calls the 1311 of FIG. まず1312において、親ディレクトリのファイルハンドルHの1702のフィールドから、この親ディレクトリのiノード番号PIを取り出し、このiノード番号で識別されるディレクトリに存在する名前Fのファイルオブジェクトのiノード番号Iを取得する。 First, in 1312, from 1702 field of the file handle H of the parent directory, removed i-node number PI of the parent directory, the i-node number I file object named F present in the directory identified by the i-node number get. 次に、1313において親ディレクトリのiノード番号PIとファイルのiノード番号Iからファイルハンドルを構成し、それを要求元クライアント1に返して処理を終了する。 Then he configures the file handle from i-node number I of i-node number PI and files of the parent directory in 1313, and ends the processing returns it to the requesting client 1.
(READ要求の処理) (Processing of the READ request)
クライアント1は読み出すファイルのファイルハンドルHと、読み出すファイルの親ディレクトリのファイルハンドルHpを引数としてREAD要求を発行する。 Client 1 issues and file handle H of the file, the READ request the file handle Hp of the parent directory of the file as an argument to be read to read. 要求処理手段130がクライアント1からREAD要求を受けると、図8の1321を呼び出し、要求を処理する。 When the request processing unit 130 receives a READ request from the client 1, it calls the 1321 of FIG. 8, to process the request. まず1322において、ファイルハンドルHのiノード番号フィールド1702からiノード番号Iを取得する。 First, in 1322, to acquire the i-node number I from i node number field 1702 of the file handle H. 次に、1323において、iノード番号Iにハッシュ関数Hashを適用しファイルグループGを求める。 Then, in 1323, to apply a hash function Hash to the i-node number I seek file group G. そして、1324で、グループ配置120を参照し、ファイルグループGの格納先ネットワークストレージNを求める。 Then, in 1324, it refers to the group arrangement 120 obtains the storage destination network storage N file group G. 1325で、ネットストレージNに対してLOOKUP要求を発行し、READ要求がアクセス対象としたファイルハンドルHで識別されるファイルの実体に対するネットワークストレージNにおけるファイルハンドルHnを取得する。 In 1325, issues a LOOKUP request to network storage N, acquires the file handle Hn of the network storage N for the entity of the file READ request is identified by the file handle H which was accessed. 1326において、取得したファイルハンドルHnを引数としてREAD要求をネットワークストレージNに発行する。 In 1326, it issues a READ request to the network storage N of the acquired file handle Hn as arguments. 1327において、ネットワークストレージNがREAD要求の返り値である読み出し結果を返すと、得られた読み出し結果を要求元クライアント1に返す。 In 1327, the network storage N returns a read result is the return value of the READ request and returns the resulting read to the requesting client 1.
クライアントがWRITE要求を発行した場合もREAD要求の処理とほぼ同じである。 Client is substantially the same as the processing of READ requests even when you issue the WRITE request. 1326においてREAD要求を格納先ネットワークストレージNに対して発行する代わりに、WRITE要求を格納先ネットワークストレージNに発行すれば良い。 Instead of issuing the READ request to the storage destination network storage N in 1326, it may be issued to WRITE request to the storage destination network storage N. RENAME要求とREMOVE要求も同様である。 RENAME request and REMOVE request is the same.
(MKDIR要求の処理) (Processing of the MKDIR request)
クライアント1は生成するディレクトリの名前Dと、生成する親ディレクトリのファイルハンドルHを引数としてMKDIR要求を発行する。 Client 1 issues a MKDIR request and the name D of the directory in which to generate, the file handle H of the parent directory to generate as an argument. 要求処理手段130がクライアント1からMKDIR要求を受けると、図9の1331を呼び出し、要求を処理する。 When the request processing unit 130 receives the MKDIR request from the client 1, it calls the 1331 of FIG. 9, to handle the request. まず1332において、ファイルシステム100にファイルハンドルHのiノード番号フィールド1702に格納されているiノード番号によって識別されるディレクトリに、名前Dのディレクトリを生成する。 First, in 1332, in a directory identified by the i-node number stored in the file system 100 to the i-node number field 1702 of the file handle H, to generate a directory name D. 生成したディレクトリのiノード番号をIとする。 The i-node number of the generated directory and I. そして、1333にて、ネットワークストレージのそれぞれにMKDIR要求を発行して名前Dのディレクトリを生成する。 Then, in 1333, to produce a directory with the name D by issuing the MKDIR request to each of the network storage. そして1334にてファイルハンドルHのiノード番号フィールド1702の値と生成したディレクトリのiノード番号Iとからファイルハンドルを生成し、それを要求元クライアント1に返す。 And it generates a file handle from the file handle H of the i-node number of the directory which is generated with the value of the field 1702 i-node number I at 1334, and returns it to the requesting client 1. RMDIR要求の処理も同様であり、MKDIR要求をすべてRMDIR要求に変更すれば良い。 Processing RMDIR request is also similar, it may be changed every MKDIR request RMDIR request.
GETATTR要求とSETATT要求は、アクセス対象ファイルオブジェクトがディレクトリの場合、MKDIR要求の処理の場合と同様に各ネットワークストレージに対してGETATTR要求またはSETATTR要求を発行してディレクトリ属性の設定を行なえば良い。 GETATTR requests and SETATT request, when the access target file object is a directory may be performed setting the directory attributes by issuing GETATTR request or SETATTR required for each network storage as in the case of processing the MKDIR request. アクセス対象ファイルオブジェクトがファイルの場合、READ要求の処理と同様に、アクセス対象ファイルの格納先ネットワークストレージにGETATTR要求または、SETATTR要求を発行すれば良い。 If the access target file object is a file, as in the processing of the READ request, GETATTR storage destination network storage access target file request or may be issued to SETATTR request.
READDIR要求の処理はLOOKUP要求の処理と同様で、ファイルシステム100に対して対象ディレクトリの情報を読み出しそれをクライアントに返せば良い。 Processing READDIR request similar to the process of LOOKUP request may return it reads the information of the target directory on the client to the file system 100.
以上、要求処理手段130の処理の詳細について説明した。 It has been described details of the processing of the request processing unit 130. ここでは例題として、クライアント1が図3のような構造を持つディレクトリとファイルを生成しそれにアクセスする場合を示す。 As an example here, a case where the client 1 generates a directory and files having the structure as shown in FIG. 3 to access it. まず、仮想一元化ネットワークストレージシステム8にディレクトリやファイルがまったく存在しないと仮定する。 First, it is assumed that the directories and files to a virtual centralized network storage system 8 does not exist at all. ファイルグループは0〜8までの9つを設ける。 File group is provided with nine of up to 0-8. また、グループマップとして以下のハッシュ関数Hash(I) = I/9 In addition, the following hash function Hash as group map (I) = I / 9
を用いる。 It is used.
クライアント1はまずマウント要求を仮想一元化装置3に発行し、仮想一元化装置3の要求処理手段130はマウントポイントのファイルハンドルを返す。 The client 1 first issues a mount request to the virtual centralized device 3, the request processing unit 130 of the virtual unification unit 3 returns a file handle of the mount point. 次にクライアント1はそのマウントポイントのファイルハンドルと生成するディレクトリの名前d1を引数としてMKDIR要求を発行する。 Next, the client 1 issues a MKDIR request the name d1 of the directory in which to generate a file handle of the mount point as an argument. 仮想一元化装置3の要求処理手段130はファイルシステム100及び各ネットワークストレージ5、6、7にディレクトリを生成する。 Request processing unit 130 of the virtual unification unit 3 generates a directory in the file system 100 and each network storage 5,6,7. 次にクライアントは生成したd1のファイルハンドルとディレクトリ名d2を引数にMKDIR要求を発行すると、仮想一元化装置3の要求処理手段130はファイルシステム100と各ネットワークストレージ5、6、7にディレクトリd2を生成する。 Next, when the client issues the MKDIR request a file handle and directory names d2 of generated d1 argument, generate directory d2 request processing unit 130 of the virtual unification unit 3 and the file system 100 to each network storage 5,6,7 to. 次にクライアントはディレクトリd2のファイルハンドルとファイル名f1を引数としてCREATE要求を発行する。 The client then issues a CREATE request the file handle and the file name f1 of the directory d2 as an argument. すると仮想一元化装置3の要求処理手段130はまずファイルシステム100のディレクトリd2において名前f1を持つサイズ0のダミーファイルを生成する。 Then the request processing unit 130 of the virtual unification unit 3 generates a first in directory d2 of the file system 100 of size 0 with names f1 dummy file. 生成したディレクトリやファイルのiノードとディレクトリエントリの構造は図2のようになっているものと仮定する(この図には生成前のディレクトリd3とファイルf2、f3に相当するiノードやディレクトリエントリが含まれている)。 Structure of i nodes and the directory entry of the created directory or file is the i-node and a directory entry corresponding to the generated previous directory d3 and file f2, f3 to those assuming (this diagram is as shown in FIG. 2 include). ファイルf1に相当するiノードは1005でありそのiノード番号は10番である。 i node that corresponds to the file f1 is a is the i-node number is 1005 is the 10th. そこで要求処理手段130はiノード番号10に前述のハッシュ関数▲1▼を適用してファイルf1の属するファイルグループが1番であることが分かる。 Therefore I request processing means 130 can be seen file group of the file f1 by applying a hash function ▲ 1 ▼ the aforementioned i-node number 10 is number 1. 次にグループ配置120のファイルグループ1番の列を参照すると、そのファイルの格納先ネットワークストレージが1番(図1の5)であることが分かる。 Referring now to columns of the file group # 1 of the group arrangement 120, it can be seen storage destination network storage of files is No. 1 (5 in Figure 1). 従って要求処理手段130はネットワークストレージ5にCREATE要求を発行して、ファイルf1の実体をディレクトリd2の下に生成する。 Thus the request processing unit 130 issues a CREATE request to the network storage 5, and generates a file entity f1 under the directory d2. 同様にクライアント1がファイルf2のCREATE要求を発行すると、ファイルシステム100において名前f2を持つダミーのファイルが生成する。 Similarly, when the client 1 issues a CREATE request for the file f2, a dummy file is generated with the name f2 in the file system 100. 生成したダミーファイルのiノードが図2の1006でありそのiノード番号が14であるので、要求処理手段130はこれに前述のハッシュ関数▲1▼を適用して、このダミーファイルの属するファイルグループが5番であることが分かる。 Since i node of the generated dummy file 1006 and is the i-node number of the FIG. 2 is a 14, the request processing unit 130 thereto by applying a hash function ▲ 1 ▼ described above, the file group of the dummy file it can be seen but is No. 5. 次にグループ配置120を参照して格納先ネットワークストレージが2番(図1の6)であることが分かるので、ネットワークストレージ6にCREATE要求を発行してディレクトリd2の下にファイルf2の実体を生成する。 Then because referring to storage location network storage groups arranged 120 is understood to be the number 2 (6 in FIG. 1), generating the entity of the file f2 network storage 6 by issuing a CREATE request under the directory d2 to. 同様にしてディレクトリd3をd1の下に生成し、ディレクトリd3の下にファイルf3を生成すると、ファイルシステム100の構造は図2となり、各ファイルf1、f2、f3の配置は図1の5、6、7のストレージ11に記載の通りとなる。 Likewise the directory d3 is generated under the d1, when generating a file f3 under the directory d3, structure becomes 2 file system 100, each file f1, f2, the arrangement of f3 Figure 1 5,6 , it becomes as described in the storage 11 of 7. 次にクライアント1がファイルf3のREAD要求を発行する場合を考える。 Next, consider the case where the client 1 issues a READ request for a file f3. クライアント1はまずマウントポイントのファイルハンドルとディレクトリ名d1を引数としてLOOKUP要求を発行し、要求処理手段130はディレクトリd1のファイルハンドルをクライアント1に返す。 Client 1 first issues a LOOKUP request the file handle and directory names d1 of the mount point as an argument, request processing means 130 returns a file handle of the directory d1 to client 1. 次に、クライアントはディレクトリd1のファイルハンドルとディレクトリ名d3を引数としてLOOKUP要求を発行し、要求処理手段130はディレクトリd3のファイルハンドルをクライアント1に返す。 Next, the client issues a LOOKUP request a file handle and directory names d3 directory d1 as the argument, the request processing unit 130 returns the file handle directory d3 to the client 1. 次に、クライアント1はディレクトリd3のファイルハンドルとファイル名f3を指定してLOOKUP要求を発行すると、要求処理手段130はファイルf3のファイルハンドル(ファイルシステム100におけるファイルf1のダミーファイルのiノード番号とその親ディレクトリのiノード番号から構成される)をクライアントに返す。 Next, the client 1 when specifying the file handle and the file name f3 directory d3 issues a LOOKUP request, the request processing unit 130 and the i-node number of the dummy file in the file f1 in the file handle (file system 100 of the file f3 It returns the configured) to the client from the i-node number of the parent directory. そこでクライアント1はディレクトリd3のファイルハンドルと、ファイルf3のファイルハンドルを引数としてREAD要求を発行する。 So client 1 issues a READ request and the file handle of the directory d3, the file handle of the file f3 as an argument. 要求処理手段130はそれに対して、ファイルf3のファイルハンドルからファイルf3に相当するダミーファイルのiノード番号を取り出す。 Request processing means 130 against it, retrieve the i-node number of the dummy file corresponding the file handle of the file f3 the file f3. iノード番号は16番であるから、それにハッシュ関数▲1▼を提供してファイルグループ7を得る。 Since the i-node number is the number 16, you get the file group 7 to provide a hash function ▲ 1 ▼. グループ配置120を参照するとファイルグループ7の格納先ネットワークストレージは3(図1の7)であるから、要求処理手段130はネットワークストレージ3にREAD要求を発行してファイルf3を読み出す。 Since Referring to group arrangement 120 storage destination network storage file group 7 is 3 (7 in FIG. 1), the request processing unit 130 reads the file f3 by issuing the READ request to the network storage 3. 要求処理手段130はネットワークストレージ3から読み出したデータが返ると、それを要求元クライアント1に返す。 Request processing means 130 when the data read from the network storage 3 is returned, return it to the requesting client 1. 以上のように、クライアントは単に通常のネットワークストレージへアクセスするように要求を発行すると、仮想一元化装置130がアクセス対象ファイルの格納先ネットワークストレージを求め、そのネットワークストレージにファイルアクセス処理を送ってファイルアクセスを行なう。 As described above, the client simply when issuing a request to access to normal network storage, determine the storage destination network storage virtualization unified device 130 access target file, the file access sends the file access process to the network storage It is carried out. このためクライアントからは仮想一元化ネットワークストレージシステム8があたかも一つのネットワークストレージとして見える。 Therefore virtual centralized network storage system 8 from the client if it were seen as a single network storage.
(容量監視手段) (Capacity monitoring means)
容量監視手段は定期的に各ネットワークストレージの残容量を求めてそれを図10の容量テーブル1500に書き込むと共に、いずれかのネットワークストレージの残容量が定められた値を下回った場合に、後述の移動手段を起動してファイルの移動を行ったり、あるいは、管理者に対して新しいネットワークストレージの追加を催促するメッセージを送ったりする。 If the capacity monitoring means it periodically obtains the remaining capacity of each network storage writes to the capacity table 1500 in FIG. 10, the remaining capacity of one of the network storage falls below a value determined, the movement will be described later and go the movement of the file to start the means, or, or send a message to prompt the addition of new network storage to the administrator.
容量テーブル1500は各ネットワークストレージの残容量に関する最新の情報を記録するテーブルである。 Capacity table 1500 is a table for recording the latest information regarding the remaining capacity of each network storage. 1501の行は各ネットワークストレージの識別子を示す。 1501 rows indicates the identifier of each network storage. 1502の行は、各ネットワークストレージの最大容量(ファイルを一つも格納しない場合の使用可能容量)を記録する。 1502 line records the maximum capacity of each network storage (available capacity when even one file not stored). 1503の行は、各ネットワークストレージの現在の残容量を示す。 1503 line indicates the current remaining capacity of each network storage. 例えば図10の例では、容量の単位をGBと定めると、ネットワークストレージ1、2、3の最大容量は共に20GBであり、残容量はそれぞれ12GB,8GB,14GBである。 In the example of FIG. 10, for example, when defined as GB capacity units, the maximum capacity of the network storage 1,2,3 are both 20GB, the remaining capacity is respectively 12 GB, 8GB, 14GB. 1503の行は残容量に替えて使用容量を記録しても良い。 1503 of the line may be recorded using capacity in place of the remaining capacity. 図11に容量監視手段の容量監視処理のフローを示す。 It shows a flow capacity monitoring process capacity monitoring unit 11. 仮想一元化装置3の起動時に1511を実行する新しいスレッドまたはプロセスを生成し、要求処理手段130によるファイルアクセス処理と並列に各ネットワークストレージの容量を監視する。 Generates a new thread or process 1511 to run when the virtual unification unit 3 monitors the capacity of each network storage in parallel with the file access processing by the request processing unit 130.
まず1512でフラグFoverを0に初期化する。 It is initialized to 0 flag Fover first in 1512. Foverは後述する移動手段による平滑化処理の開始を指示するフラグである。 Fover is a flag indicating the start of smoothing processing by the moving means to be described later. 次に1513で各ネットワークストレージの残容量を取得し、得られた値を容量テーブル1500の1503の行に書き込む。 Then obtains the remaining capacity of each network storage in 1513, and writes the obtained value to 1503 lines of capacity table 1500. 残容量の計測は、各ネットワークストレージにSTATFSプロシージャを発行して取得しても良いし、その他ネットワーク経由で各ネットワークストレージの残容量を取得できればどんな方法を用いても良い。 Measurement of the remaining capacity may be acquired by issuing a STATFS procedure for each network storage, any method may be used if obtaining the remaining capacity of each network storage over other networks. 次に、1514において、1513で取得した各ネットワークストレージの残容量が予め定められた閾値Tを下回るか調べ、下回る場合は1515以降を実行する。 Then, in 1514, studied or below the threshold T, the remaining capacity of each network storage the acquired predetermined in 1513, if below executes subsequent 1515. 閾値Tは0以上かつネットワークストレージの最大容量よりも小さな値を指定する。 Threshold T specifies a value smaller than the maximum capacity of 0 or more and network storage. 例えば、容量が100GBのネットワークストレージの場合、1GB〜10GBが妥当と考えられるが、それ以外の値でも良い。 For example, if the capacity of the network storage 100 GB, 1GB~10GB but are considered appropriate, it may be other values. 1515では残容量が閾値Tを下回ったネットワークストレージNを移動元ネットワークストレージNsに設定し、1516でFoverフラグに1を設定する。 Remaining capacity at 1515 sets a network storage N that falls below the threshold value T to the source network storage Ns, is set to 1 Fover flag 1516. 移動手段140はこのフラグを常時監視しており、値が1に設定されると後述の平滑化処理を起動し、移動元に設定されたネットワークストレージNのファイルグループの幾つかを他のネットワークストレージに移動し各ネットワークストレージ間の残容量の平滑化を計る。 Moving means 140 monitors this flag always activated when the value is set to 1 the smoothing process will be described later, other network storage some files Group set to move source network storage N Go to measure the smoothness of the remaining capacity among the network storage. その後1517において一定時間スリープし、1513の処理へ戻る。 Then a certain period of time to sleep in 1517, returns to the processing of 1513. 一方、1514において全ての残容量が閾値Tを下回らなかった場合は、1517で一定時間スリープし、1513の処理へ戻る。 On the other hand, if all of the remaining capacity is not less than the threshold value T in 1514, predetermined time sleep at 1517, the process returns to 1513. 1517でスリープする時間は、1秒程度を最小とし、1分出会っても良いし、1時間であっても良いし、1日であっても良いし、その他なんでも良い。 Time to sleep in 1517, and the order of 1 second minimum, may be met one minute, may be a 1 hour, may be one day, other anything good. スリープ時間が短いほど、容量の急激な増加に対して正確に状況を把握できるようになるが、逆に容量の監視処理自身が頻繁に動くため、仮想一元化装置の処理が重くなる。 More sleep time is shorter, but it becomes possible to accurately grasp the situation with respect to a sudden increase in volume, for monitoring process itself capacitance conversely moves frequently, the processing of the virtual unified device becomes heavy. 従って、容量の増減の度合いによって、適切なスリープ時間を設定する。 Therefore, the degree of capacity increase or decrease, to set an appropriate sleep time.
なお、1514の条件は、ネットワークストレージの最大残容量と最小残容量の差が予め定められた閾値Tdより大きいかどうかという条件にしても良い。 The conditions of 1514, the difference between the maximum remaining capacity and the minimum remaining capacity of the network storage may be a condition of whether greater than a predetermined threshold Td. このとき、閾値Tdは0からネットワークストレージの容量までの値を指定する。 In this case, the threshold Td specifies the value from 0 to a volume of the network storage. 例えば、ネットワークストレージの容量が100GBであれば、1GB〜10GBが妥当な値であるが、それ以外でも良い。 For example, if the capacity of the network storage 100 GB, 1GB~10GB While it is reasonable value, or otherwise. 上記のように1514の条件を変更した場合は、このとき1515の処理を残容量の最も小さなネットワークストレージを移動元ネットワークストレージに設定するよう変更する。 If you change the conditions as described above 1514, changing to set the process in this case 1515 the smallest network storage remaining capacity the source network storage.
さらに、1514の条件を全てのネットワークストレージの総残容量が予め定められた閾値Ttを下回るかどうかという条件に変更し、1515を廃止して、1516で管理者に対して残容量が残り少なく新たにネットワークストレージを追加することを催促するメッセージを送るように変更しても良い。 Further, by changing the condition of whether below the threshold Tt the total remaining capacity is predetermined for all network storage conditions 1514, abolished the 1515, remaining capacity to the administrator in 1516 scarce newly it may be modified to send a message to prompt the Add network storage. メッセージを送る手段は、sendmailのような公知の技術を使用して管理者にメールを送信しても良いし、管理手段180を介して管理者のインタフェースにメッセージを出しても良い。 Means for sending a message, to the administrator using known techniques such as sendmail may send mail messages may be issued to the interface of the administrator via the management unit 180.
(移動手段) (transportation)
移動手段140は、ネットワークストレージを追加したり削除して、仮想一元化ネットワークストレージシステム8の構成を変更する場合に、構成変更の対象となるネットワークストレージに格納されているファイルの移動を行なう。 Moving means 140 add and remove network storage or, in the case of changing the configuration of a virtual centralized network storage system 8, for moving the files stored in the network storage to be configuration change. これによって、仮想一元化ネットワークストレージシステムの構成変更が柔軟に行なえる。 Thus, flexibility can be performed configuration changes virtual centralized network storage system. また、移動手段140は各ネットワークストレージの残容量に規定以上のばらつきが生じた場合に、ファイルをネットワークストレージ間で移動し、残容量の平滑化を図る。 The moving means 140 if the provisions above variation occurs in the remaining capacity of each network storage, move files between network storage, achieving a smoothing of the remaining capacity. ファイルを移動しないと、いづれかのネットワークストレージが一杯になった段階で、他のネットワークストレージに空きがあっても、一切ファイルの書き込みができなくなる。 If you do not move the file, at the stage where Izure of network storage is full, even if there is a vacancy in the other network storage, you will not be able to write any file. これに対して、上記のようにファイルを移動することによって、ほぼ全てのネットワークストレージの容量を使い切るまで使用できるようになる。 In contrast, by moving the file as described above, it becomes possible to use until exhausted the capacity of almost all of the network storage.
移動手段140には、基本移動機能、ネットストレージ追加時の移動機能、ネットストレージ削除時の移動機能、平滑化機能の四つの機能がある。 The moving means 140, basic movement function, movement function when the net storage add, move function during net storage deleted, there are four features of the smoothing function. 各機能に対応して、それぞれ移動処理、追加処理、削除処理、平滑化処理がある。 Corresponding to each function, the mobile processing respectively, addition processing, deletion processing, there is a smoothing process. それぞれの処理の詳細を以下に示す。 Each processing details are shown below.
(移動処理) (Moving process)
移動処理は、ファイルをファイルグループ単位で現在格納されているネットワークストレージから別のネットワークストレージに移動する。 Moving process moves from a network storage that is currently stored on the File group unit to another network storage. 図12に移動処理のフローを示す。 Figure 12 shows the flow of the mobile processing. 移動対象ファイルグループGmと、移動先ネットワークストレージNdを設定して移動処理1401を呼び出すと、移動手段140はファイルグループGmを現在格納されているネットワークストレージから、移動先ネットワークストレージNdに移動する。 A moving target file group Gm, calling the destination network storage Nd Set the moving process 1401, the mobile device 140 from a network storage that is currently stored files group Gm, moves to the target network storage Nd. 移動処理はまず1402でグループ配置120を参照し、移動対象グループGmのファイルが現在格納されているネットワークストレージNsを求める。 Movement processing refers to the group arrangement 120 first in 1402, obtains the network storage Ns of the moved file group Gm is currently stored. 次に、ファイルシステム100のファイルをルートディレクトリ/から一つずつ探索し、ファイルグループGmに属するファイルを特定する。 Then, one by one searching for a file in the file system 100 from the root directory /, to identify the files belonging to the file group Gm. このためまず1403でファイルシステム100に探索すべきファイルFが存在するか調べ、存在する場合は1404でファイルFのiノード番号Iを求める。 Check for this reason first file F to be searched in the file system 100 at 1403 exists, if present Request i-node number I file F in 1404. 1405でファイルFのiノード番号Iにハッシュ関数Hashを適用してファイルFの属するファイルグループを求め、それが移動対象ファイルグループGmと一致する場合は、1406でファイルFを移動元ネットワークストレージ装置Nsから移動先ネットワークストレージNdに移動する。 1405 In search of files group including files F by applying the hash function Hash to the i-node number I of file F, if it matches the moving target file group Gm is the source network storage device Ns file F in 1406 It moves to the target network storage Nd from. 移動は、移動手段140が、移動元ネットワークストレージNsにファイルFのREAD要求を発行してファイルを読み出し、読み出した内容をそのまま引数としたWRITE要求を移動先ネットワークストレージNdに発行してファイルを書き込み、最後に移動元ネットワークストレージのファイルFを削除する。 Moving the mobile means 140, the source network storage Ns issues a READ request for a file F reads the file, writing a file by issuing WRITE request that it as an argument the read contents to the destination network storage Nd , to delete the file F of the source network storage to last. あるいは、FTP(File Transfer Protocol)を利用してファイルを移動元から移動先にコピーした後、移動元のファイルを削除しても良い。 Alternatively, after you have copied to the destination of the file using an FTP (File Transfer Protocol) from the source, it may be deleted movement source file. その他、ファイルを移動元ネットワークストレージから移動先ネットワークストレージに移動できればどんな方法を用いても良い。 In addition, any method may be used if you can move to the destination network storage files from the source network storage. 移動が終わると1403に戻って処理を続ける。 Movement is finished and continue the process returns to 1403. 1403で探索すべきファイルが存在しない場合は、移動対象ファイルグループGmに属する全てのファイルを移動し終えているので、1407でグループ配置120のファイルグループGmの欄に移動先ネットワークストレージNdを書き込み、処理を終了する。 If the file to be searched does not exist at 1403, because the finished moving all files belonging to the moving object file group Gm, writes the destination network storage Nd in the column of the file group Gm group arrangement 120 in 1407, the process is terminated.
本移動処理は、本発明の仮想一元化ネットワークストレージシステム8の管理者がユーザインタフェース経由で管理手段180に対し、移動対象ファイルグループGmと移動先ネットワークストレージNdを指定し移動の指示を与えたときに呼び出されるか、あるいは、追加処理、削除処理、平滑化処理の処理過程において呼び出される。 This movement process, to a virtual centralized administrator management unit 180 via the user interface of the network storage system 8 of the present invention, when specifying a destination network storage Nd migrated file group Gm gave an indication of the movement or invoked, or addition processing, deletion processing, called in process of smoothing.
移動処理後に、移動処理によって格納先ネットワークストレージが変更されたファイルFに対し、クライアント1からファイルアクセス要求があった場合、要求処理手段130は移動手段140が1407で変更した後のグループ配置120を参照して、格納先ネットワークストレージを決定する。 After the move processing to the file F to the storage destination network storage is changed by moving process, when a client 1 file access request, the request processing unit 130 groups arrangement 120 after the mobile device 140 has changed in 1407 Referring to determine the storage destination network storage. このため、ファイルFの格納先ネットワークストレージが変更されても、クライアント1は正しくファイルFにアクセスできる。 Therefore, it is changed storage destination network storage file F is, the client 1 can access the correct file F.
なお、移動手段140がファイルグループGmを移動している最中に、クライアント1がファイルグループGmに属するファイルへアクセス要求を発行した場合、要求処理手段130は、ファイルグループGmの移動が終了するまで、クライアントからのファイルアクセス要求を実行しない。 Incidentally, while the moving means 140 is moving the file group Gm, until the client 1 if that issued the access request to the files belonging to the file group Gm, request processing means 130, movement of the file group Gm is completed , do not run the file access request from the client.
(追加処理) (Additional processing)
本発明の仮想一元化装置3は仮想一元化ネットワークストレージシステム8の容量が不足したとき、新しくネットワークストレージ装置を追加することで、容量を増大することができる。 Virtual unification apparatus 3 of the present invention when the capacity of a virtual centralized network storage system 8 is insufficient, by adding a new network storage device, it is possible to increase the capacity.
仮想一元化ネットワークストレージシステム8の管理者は、追加するネットワークストレージをネットワーク4に接続し、ユーザインタフェースを介して管理手段180にアクセスし、追加処理の開始を指示する。 Administrator of the virtual centralized network storage system 8 connects the network storage to be added to the network 4, access the management unit 180 via the user interface, an instruction to start addition processing. すると管理手段180は、移動手段140の追加処理(図13の1411)を呼び出す。 Then management unit 180 calls the additional processing of the mobile unit 140 (1411 of FIG. 13).
追加処理は、仮想一元化ネットワークストレージシステム8にネットワークストレージを追加した場合に、既存のネットワークストレージを格納先とするファイルグループの幾つかを追加したネットワークストレージに移動し、これによって追加したネットワークストレージを仮想一元化ネットワークストレージシステムに取り込む。 Additional processing, if you add a network storage to a virtual centralized network storage system 8, to move to a network storage that adds a number of file groups to store destination existing network storage, the virtual network storage added by this It incorporates a centralized network storage system. 処理の詳細フローを図13に示す。 The detailed flow of the processing shown in FIG. 13. まず、1412で追加するネットワークストレージを移動先ネットワークストレージNdに設定する。 First, to set a network storage to be added in 1412 to the target network storage Nd. 次に1413において、容量テーブル1500の1503の行を参照し、ストレージの残容量が最も小さなネットワークストレージを移動元ネットワークストレージNsとする。 Then in 1413, with reference to the 1503 lines of capacity table 1500, the remaining capacity of the storage is to smallest mobile network storage source network storage Ns. そして1414で、グループ配置120を参照し、移動元ネットワークストレージNsを格納先とするファイルグループを求め、その中からランダムに一つファイルグループを選択し、それを移動対象ファイルグループGmに設定する。 Then in 1414, refers to the group arrangement 120, obtains the file group to store destination source network storage Ns, selects one file group at random from the set it to move the target file group Gm. そして、前述の図12の移動処理1401を呼び出し、移動対象ファイルグループGmを移動元ネットワークストレージNsから追加したネットワークストレージである移動先ネットワークストレージNdに移動する。 Then, call the moving process 1401 in FIG. 12 described above moves in a to the destination network storage Nd added network storage migration target file group Gm from the source network storage Ns. 移動が終了すると、1416において、容量テーブル1500を参照し、移動先ネットワークストレージNdの残容量ともっとも少ない残容量を求め、その差が予め定められた閾値Tcを超えれば1413に戻って処理を続け、そうでなければ処理を終了する。 Continues the move is completed, in 1416, refers to the capacity table 1500, obtains the least remaining capacity and the remaining capacity of the target network storage Nd, the process returns to 1413 If the threshold is exceeded Tc the difference is predetermined , the process is terminated otherwise. 閾値Tcは、100MB、500MB、あるいは、1GBなど、なんでも良い。 Threshold Tc is, 100MB, 500MB, or, 1GB, etc., anything good. ネットワークストレージ追加時の移動処理にかかる時間を短縮するには、閾値に大きな値を設定する。 To reduce the time required for the movement processing at the time of network storage additional sets a large value to the threshold. 時間がかかっても各ネットワークストレージ間の残容量の格差を小さくしたい場合は閾値に小さな値を設定する。 Time if you also want to reduce the disparity in residual capacity between the network storage depends sets the smaller value to the threshold.
なお、1413において移動元ネットワークストレージを選択する方法は、ランダムに選択しても良いし、予め定められた順に選択しても良いし、どんな方法を用いても良い。 Note that the method of selecting the source network storage in 1413 may be randomly selected, may be selected in a predetermined order, may be used any method. また、1414においてファイルグループGmを選択する方法は、予め定められた順に選択しても良いし、その他どんな方法を用いても良い。 Further, a method of selecting a file group Gm In 1414, may be selected in a predetermined order, other any method may be used. また、1416において残容量により終了判定するのではなく、移動したファイルグループの数が予め定めておいた値を超えたら終了するという条件にしても良い。 Further, instead of determining terminated by the remaining capacity in 1416, the number of the moved file group may be a condition that terminates Once exceed the value determined in advance.
追加処理の終了後、クライアント1がファイルアクセス要求を発行し、そのアクセス要求の対象が、上記追加処理によって追加ネットワークストレージに移動したファイルグループに属するファイルである場合、要求処理手段130はクライアント1からのアクセス要求を追加しネットワークストレージに送り、追加ストレージにてファイルアクセス処理を行う。 After further processing ends, the client 1 issues a file access request, subject to the access request, if a file belonging to the file group has moved to the additional network storage by the addition process, the request processing unit 130 from the client 1 send an access request to add network storage, perform file access processing at an additional storage. このように、クライアント1から見ると、仮想一元化ネットワークストレージシステムにネットワークストレージを追加しても、ファイルアクセスの手順は追加前と変わらない。 In this way, when viewed from the client 1, the addition of network storage to a virtual centralized network storage system, the procedure of file access is not the same as before the addition. クライアント1から見た場合の唯一の違いは、仮想一元化ネットワークストレージシステムの容量が追加したネットワークストレージの容量分だけ増えたように見えることである。 The only difference when viewed from the client 1 is that it appears to be the capacity of the virtual centralized network storage system has increased only capacity of the added network storage. (削除処理) (Deletion)
本実施例の仮想一元化装置3は仮想一元化ネットワークストレージシステム8の容量があまっていて利用しないなどの理由で、システム内のネットワークストレージを取り除き、容量を小さくすることができる。 Virtual unification apparatus 3 of this embodiment is for reasons such as not used have the capacity of a virtual centralized network storage system 8 is left over, remove the network storage system, it is possible to reduce the capacity. ただし、ネットワークストレージを削除することができるのは、システム全体の空き容量が削除するネットワークストレージの容量より多く存在する場合に限られる。 However, it can be deleted network storage, only when the free space of the entire system occurs more than the capacity of the network storage to be deleted.
仮想一元化ネットワークストレージシステム8の管理者は、ユーザインタフェースを介して管理手段180にアクセスし、削除するネットワークストレージを指定して削除処理の開始を指示する。 Administrator of the virtual centralized network storage system 8 accesses the management unit 180 via the user interface, an instruction to start the deletion process by specifying the network storage to be deleted. すると管理手段180は、移動手段140の削除処理(図14の1421)を呼び出す。 Then management unit 180 calls the deletion process of the mobile unit 140 (1421 of FIG. 14).
削除処理は、仮想一元化ネットワークストレージシステム8内のネットワークストレージ5,6,7のいづれかを削除する場合に、削除するネットワークストレージを格納先とする全てのファイルグループをその他のネットワークストレージに移動し、削除するネットワークストレージを仮想一元化ネットワークストレージシステムから論理的に切り離す。 Deletion processing, when deleting either the network storage 5,6,7 in the virtual centralized network storage system 8, and move all file groups that the storage destination network storage to delete the other network storage, deletion logically disconnecting the network storage from a virtual centralized network storage system. 処理の詳細フローを図14に示す。 The detailed flow of the processing shown in FIG. 14. まず、1422で削除するネットワークストレージを移動元ネットワークストレージNsに設定する。 First, to set a network storage to be deleted in 1422 to the source network storage Ns. 次に1423で、容量テーブル1500の1503の行を参照し、ストレージの残容量が最も大きなネットワークストレージを移動先ネットワークストレージNdとする。 Then in 1423, with reference to 1503 lines of capacity table 1500, the remaining capacity of the storage is to the target network storage Nd the greatest network storage. そして1424で、グループ配置120を参照し、移動元ネットワークストレージNsを格納先とするファイルグループを求め、その中からランダムに一つファイルグループを選択し、それを移動対象ファイルグループGmに設定する。 Then in 1424, refers to the group arrangement 120, obtains the file group to store destination source network storage Ns, selects one file group at random from the set it to move the target file group Gm. そして、前述の図12の移動処理1401を呼び出し、移動対象ファイルグループGmを削除するネットワークストレージである移動元ネットワークストレージNsから移動先ネットワークストレージNdに移動する。 Then, call the moving process 1401 in FIG. 12 described above is moved to the destination network storage Nd from the moving source network storage Ns the target file group Gm is a network storage to be deleted. 移動が終了すると、1426で、移動元ネットワークストレージNsにファイルグループが存在すれば1423に戻って処理を続け、そうでなければ処理を終了する。 When the move is completed, in 1426, back in 1423 if there is a file group in the source network storage Ns continue the process, the process is terminated otherwise.
1423の移動先ネットワークストレージの選択方法は、ネットワークストレージの残容量が移動するファイルグループの容量よりも大きければ、ランダムに選択しても良いし、予め順番を決めてその順に選択しても良い。 Selection method of the target network storage 1423, larger than the capacity of the file groups that the remaining capacity of the network storage is moved, may be selected randomly, may be selected in this order is predetermined order. また、1424においてファイルグループGmの選択方法は、予め定められた順番に選択しても良いし、その他どんな方法で選択しても良い。 The selection method of the file group Gm In 1424, may be selected in a predetermined order, may be selected using any of the other methods.
上記削除処理が終了すると、管理手段180はインタフェースを介して管理者に削除の終了を報告する。 When the deletion process is completed, the management unit 180 reports the completion of the deletion to the administrator via the interface. この報告を受けて管理者は論理的に切り離されたネットワークストレージをネットワーク4から物理的に切り離す。 Administrator receives this report physically disconnecting the network storage, separated logically from the network 4.
削除処理の終了後、クライアント1がファイルアクセス要求を発行し、そのアクセス要求の対象が、削除前に削除したネットワークストレージを格納先とするファイルグループに属するファイルであった場合、要求処理手段130はクライアント1からのアクセス要求を削除したネットワークストレージではなく、移動先ネットワークストレージに送り、ファイルアクセス処理を行う。 After the deletion process is completed, the client 1 issues a file access request, if the target of the access request was a file belonging to the file group to store destination network storage deleted before deleting request processing means 130 rather than deleted network storage access request from the client 1 sends the destination network storage, performs file access process. このように、クライアント1から見ると、仮想一元化ネットワークストレージシステムからネットワークストレージを削除しても、ファイルアクセスの手順は削除前と変わらない。 In this way, when viewed from the client 1, to delete the network storage from a virtual centralized network storage system, the procedure of file access is not the same as before the deletion. クライアント1から見た場合の唯一の違いは、仮想一元化ネットワークストレージシステムの容量が削除したネットワークストレージの容量分だけ減ったように見えることである。 The only difference when viewed from the client 1 is that it appears to be the capacity of the virtual centralized network storage system has decreased only capacity of the deleted network storage.
(平滑化処理) (Smoothing processing)
クライアント1が仮想一元化ネットワークストレージシステム8に対してファイルの書き込み要求を発行し、書き込み対象ファイルの格納先ネットワークストレージに空きがない(残容量が0)場合、他のネットアークストレージに大量の空きがあっても、そのファイルの書き込みはできない。 Issues a write request for a file to the client 1 virtual centralized network storage system 8, when there is no vacancy in the storage destination network storage writing file (the remaining capacity is 0), a large amount of free space in the other net arc Storage even, you can not write to the file. このような状況に対処するため、仮想一元化装置3は、ネットワークストレージの残容量が少なくなったり、ネットワークストレージ間の残容量の格差が広がると、平滑化処理を起動して、各ネットワークストレージの残容量が均等になるようにファイルグループの移動を行う。 To deal with this situation, the virtual unification unit 3, or the remaining capacity of the network storage becomes small, the difference of the residual capacity between network storage spread, start the smoothing process, the residual of each network storage to move the file group so capacity is equalized. 平滑化処理は、仮想一元化装置3の起動時に移動手段140が独立したスレッドまたはプロセスとして平滑化処理(図15の1431)を起動する。 Smoothing process starts a smoothing process (1431 in FIG. 15) as a thread or process moving means 140 are independent when the virtual unification unit 3. 平滑化処理の詳細を図15に示す。 The details of the smoothing process shown in FIG. 15. 平滑化処理はバックグラウンドで動いているが、1432でFoverというフラグが0である間は処理を行わない。 While smoothing process running in the background, does not perform the processing between flag called Fover in 1432 is zero. このフラグは、前述の(容量監視手段)のところで述べたように、ネットワークストレージの残容量が定められた閾値を下回った場合、そのネットワークストレージを移動元ネットワークストレージNsとしFoverを1に設定する。 This flag, as mentioned at the described above (volume monitoring means), if below the threshold the remaining capacity of the network storage defined, sets the Fover to the network storage and the source network storage Ns to 1. あるいは、ネットワークストレージの最大残容量と最小算容量の差が閾値を超えた場合に、残容量の最も小さなネットワークストレージを移動元ネットワークストレージに設定し、Foverを1に設定する。 Alternatively, if the difference between the maximum remaining capacity and minimum calculation capacity of the network storage exceeds a threshold value, it sets the smallest network storage remaining capacity the source network storage, sets the Fover to 1. Foverが1に設定されると、平準化処理は1433で移動元ネットワークストレージNsを格納先とするファイルグループのうちの一つをランダムに選択して移動対象ファイルグループGmとし、1434で残容量が最大のネットワークストレージを移動先ネットワークストレージNdとし、1435で1401の移動処理を呼び出しファイルグループGmを移動元ネットワークストレージNsから移動先ネットワークストレージNdに移動する。 When Fover is set to 1, the leveling process and one selected randomly moving target file group Gm of the file group to store destination source network storage Ns in 1433, the remaining capacity in 1434 the largest network storage and the target network storage Nd, moves to the target network storage Nd calls file group Gm movement processing 1401 in 1435 from the source network storage Ns. 1436で、ネットワークストレージの最大残容量と最小残容量の差が前述の追加処理で説明した閾値Tcの値より大きければ、1433に戻って処理を続け、小さくなれば1437でFoverフラグを0に設定して、1432に戻る。 In 1436, set if the difference between the maximum remaining capacity and the minimum remaining capacity of the network storage is greater than the value of the threshold Tc described in additional processing described above, processing continues back to 1433, the Fover flag 1437 becomes smaller to 0 to, go back to 1432. なお、1433においてNsからGmを選択する方法は、予め定められた順番に選択する方法であっても良いし、その他どのような方法であっても良い。 The method for selecting the Gm from Ns in 1433 may be a method of selecting in a predetermined order, may be any other way. また、1434において、Ndに設定するネットワークストレージは、移動元ネットワークストレージNs以外のネットワークストレージを選択できれば、どのような方法を用いても良い。 Also, in 1434, the network storage to be set to Nd is, if selecting a network storage other than the source network storage Ns, it may be used any method.
上記の処理によって、ネットワークストレージ間の残容量の差が小さくなり、特定のネットワークストレージの容量不足によってファイルの書き込みができなくなるという問題を解決することができる。 By the above process, the difference between the remaining capacity between network storage is reduced, it is possible to solve the problem can not write files by insufficient capacity of the particular network storage.
以上自動的に平滑化処理を起動する場合について説明したが、管理者がユーザインタフェースを介して管理手段180にアクセスし、平滑化処理の実行を指示しても良い。 Has been described to automatically start the smoothing process described above, the administrator accesses the management unit 180 via the user interface, it may instruct the execution of the smoothing process. このとき、管理者は移動元ネットワークストレージを引数として与える。 In this case, the administrator will give the source network storage as an argument. 移動手段140は図15の1433を呼び出して平滑化の処理を行い。 Moving means 140 performs the smoothing processing by calling 1433 of FIG. 15. 1436で条件が満足されなくなると処理を終了する。 Conditions to end the process and will not be satisfied with 1436. なお、管理手段180はユーザインタフェースを介して、容量テーブル1500の情報を管理者にリアルタイムに提供し、管理者が平滑化処理や追加処理や削除処理を行うべきかどうか判断する手助けにすることが望ましい。 The management unit 180 via the user interface, that provides real-time information capacity table 1500 to the administrator, the administrator is to help determine whether to perform the smoothing processing or additional processing and deletion processing desirable.
(統合手段) (Integration means)
本発明の仮想一元化ネットワークストレージシステム8でない、一般的なネットワークストレージを用いているサイトにおいて、ネットワークストレージの容量が不足すると、新規に既存ネットワークストレージを購入するのが一般的である。 Not a virtual centralized network storage system 8 of the present invention, in the site of using a general network storage, the capacity of the network storage is insufficient, to buy existing network storage newly is common. しかしこの場合、クライアントからは、既設ネットワークストレージと追加ネットワークストレージが独立して見えるため、使い勝手が悪い。 However, in this case, from the client, for the existing network storage and additional network storage appears to independence, is poor usability. このような場合に対処するため、本発明の仮想一元化手段3は統合化手段180によって、既設ネットワークストレージを取り込んで仮想一元化ネットワークストレージシステムを構成し、既設ネットワークストレージのファイルを含みかつより容量の大きな仮想一元化ネットワークストレージを提供する。 To deal with such a case, the virtual unification unit 3 integrated unit 180 of the present invention, constitutes a virtual centralized network storage system captures the existing network storage, I big capacity than and includes files of the existing network storage to provide a virtual centralized network storage.
図1のネットワーク2に既設ネットワークストレージが接続されており、クライアント1のファイルが既設ネットワークに格納されているものとする。 Is connected to the existing network storage to the network 2 of FIG. 1, it is assumed that the file of the client 1 is stored in the existing network. 管理者はネットワーク2に仮想一元化ネットワークシステム8を接続し、ユーザインタフェースを介して仮想一元化装置3の管理手段180にアクセスし、統合する既設ネットワークストレージを指定して統合の開始を指示する。 The administrator connects the virtual unified network system 8 to the network 2, to access the management unit 180 of the virtual unification unit 3 via the user interface, an instruction to start integration by specifying the existing network storage to integrate. すると、仮想一元化装置3の統合手段160は図16の1601を呼び出し、統合処理を開始する。 Then, the virtual unification unit 3 integrated unit 160 calls the 1601 of FIG. 16, to start the integration process. 統合処理はまず1602でグループ配置120の各ファイルグループに対応したネットワークストレージの欄に、既設ネットワークストレージ又は追加したネットワークストレージの中の一つをそれぞれ書き込む。 In the column of the network storage corresponding to each file group of the group arrangement 120 integrated process first in 1602, writes the one of the existing network storage or added network storage, respectively. 例えば、ファイルグループが1〜4の4つあり、ネットワークストレージが既設と追加の2つである場合、ファイルグループ1と2に既設ネットワークストレージを、ファイルグループ3と4に追加ネットワークストレージをそれぞれ対応付ける。 For example, there are four 1-4 file groups, if the network storage is two additional and existing, the existing network storage file group 1 and 2 associates each additional network storage and file groups 3 to 4. あるいは、全てのファイルグループに既設ネットワークストレージを割り当てても良いし、その他どのような割当にしても良い。 Alternatively, it may be assigned an existing network storage for all file groups, it may be any other kind of assignment. このグループ配置120へのネットワークストレージの書き込み方によって、既設ネットワークストレージを仮想一元化ネットワークストレージシステム8に統合し運用を開始した直後における、ファイルグループの格納先ネットワークストレージが決定される。 By writing how network storage to this group arrangement 120, immediately after integrating existing network storage to a virtual centralized network storage system 8 starts operating, storage destination network storage file group is determined. 次に1603で、図17の1661を呼び出す。 Then, in 1603, calling the 1661 of FIG. 17. そして、まず1662で、既設ネットワークストレージに未探索のファイルオブジェクトFが存在するか調べ、存在する場合は1613でファイルオブジェクトFがディレクトリかどうか調べ、ディレクトリなら1614で仮想一元化装置3のファイルシステム100にディレクトリFを生成して1612に戻って処理を継続する。 Then, first 1662, examined the file object F unsearched the existing network storage is present, if present examines whether the file object F in 1613 is a directory, a directory if 1614 the virtual unification unit 3 of the file system 100 to continue the process returns to 1612 to generate a directory F. 1613で一方ファイルオブジェクトFがディレクトリでなくファイルである場合は、1615でファイルFと同じ名前と属性を持ちサイズ0のダミーファイルをファイルシステム100に生成し、1612に戻って処理を継続する。 If 1613 a On the other hand file object F is a file, not a directory, generate a dummy file of size 0 has the same name and attributes as the file F in the file system 100 in 1615, to continue the process returns to 1612. 1612で未探索のファイルオブジェクトが存在しなければ、図16の1603の処理は終了する。 If unsearched file object is present in 1612, the process 1603 in FIG. 16 ends. 次に、1604において図18の1621を呼び出す。 Next, call the 1621 of FIG. 18 in 1604. すると1622でファイルシステム100に未探索のファイルFが存在するかどうか調べ、存在する場合は1623でファイルFのiノード番号Iを求める。 Then 1622 in the investigation whether the file F unsearched file system 100 exist, if present Request i-node number I file F in 1623. 1624でファイルFの属するファイルグループGを、iノード番号Iにグループマップ110で与えられたハッシュ関数Hashを適用して求める。 The file group G which belongs file F in 1624, obtained by applying a hash function Hash given in group map 110 in the i-node number I. 1625で、グループ配置120を参照しファイルグループGの格納先ネットワークストレージNを求める。 In 1625, it refers to the group arrangement 120 obtains the storage destination network storage N file group G. この格納先ネットワークストレージは図16の1602で設定したものである。 The storage destination network storage are those set in 1602 of FIG. 16. 統合中の現時点において、全てのファイルグループは既設ネットワークストレージに格納されているから、1625で求めたファイルグループGの格納先ネットワークストレージNが既設ネットワークストレージでである場合には(1626)グループ配置の設定と現状とが一致するので何もしなくて良く、1622に戻って処理を続ける。 At the present time in the integrated, because all file group is stored in the existing network storage, if the storage destination network storage N file group G obtained is in the existing network storage in 1625 (1626) Group located set and the status quo is good not need to do anything because the match, continue the process returns to 1622. もし、1626でNが既設ネットワークストレージでない場合には、1627において、ファイルFを既設ネットワークストレージからネットワークストレージNに移動する。 If, when the N is not existing network storage in 1626, in 1627, to move files F from the existing network storage network storage N. 移動の方法は、既設ネットワークストレージにREAD要求を発行してファイルFを読み出し、ネットワークストレージNに読み出したデータを引数としてWRITE要求を発行してファイルFを書き込み、最後に既設ネットワークストレージのファイルFを削除すればよい。 The method of moving reads the file F by issuing the READ request to the existing network storage, write the file F by issuing a WRITE request the read data to the network storage N as an argument, the end of the existing network storage the files F it may be deleted. 移動が終了すると1622に戻って処理を続ける。 Movement is to continue the process back to 1622 when you exit. 1622において、未探索のファイルが存在しなくなると図16の1604の処理が終了し、統合処理全体も終了する。 In 1622, the unsearched file does not exist and ending process 1604 in FIG. 16, also terminates the overall integration process.
なお、統合手段160による統合処理の実行中は、要求処理手段によるファイルアクセス処理や移動手段による追加・削除・平滑化処理を停止する。 Incidentally, during the execution of the integration process by the integration unit 160 stops the addition, deletion, or smoothing process by the file access processing and the moving means by the request processing unit.
統合処理が終了したあと、クライアント1が既設ネットワークストレージの代わりに仮想一元化装置3に対してファイルアクセスコマンドを発行すると、仮想一元化装置3はアクセス対象ファイルFの格納先ネットワークストレージに対しアクセス要求を発行してファイルアクセスを行うため、クライアントにとっては既設ネットワークストレージにアクセスするのと、既設ネットワークストレージを統合化した仮想一元化ネットワークストレージシステムにアクセスする場合とで違いは無く、ただ後者の方が容量が多いように見える。 After the integration process has been completed, the client 1 issues a file access command to the virtual unified device 3 in place of the existing network storage, issues an access request to the storage destination network storage virtualization centralized device 3 accesses the target file F to perform the file access by the accessing the existing network storage, no difference in the case of accessing a virtual centralized network storage system integrating the existing network storage, is only the latter capacity is large for the client looks like.
以上、仮想一元化装置3の各構成要素について説明した。 It has been described above the components of the virtual unification unit 3. これらの各構成要素を搭載した仮想一元化装置の実装例を図19に示す。 The implementation of a virtual unification apparatus mounting each of these components is shown in Figure 19. CPU20、コントローラ21、メモリ22、I/Oインタフェース23、ネットワークインタフェース24、ディスク装置25から構成されるサーバ、ワークステーション、あるいはPCをハードウェアとして、前述のUNIX系オペレーティングシステム、例えばLinuxを搭載し、ファイルシステム100、グループマップ110、グループ配置120はそれぞれデータとしてディスク装置25に格納し、要求処理手段130、移動手段140、容量監視手段150、統合手段160、管理手段180はそれぞれプログラムコードとしてメモリ22に配置し、CPU20がそれらを実行することで仮想一元化装置として機能する。 CPU 20, the controller 21, memory 22, I / O interface 23, network interface 24, the server consists of the disk device 25, as a workstation or hardware PC,, mounted above the UNIX-like operating systems, such as Linux, file system 100, a group map 110, stored in the disk device 25 as respective groups disposed 120 data request processing unit 130, moving means 140, the capacity monitoring unit 150, integrating unit 160, a memory 22 as respective management unit 180 program code placed, CPU 20 functions as a virtual unified device by executing them.
<実施例2> <Example 2>
図20は本発明の第2の実施例を含む情報システムの全体構成を示す図である。 Figure 20 is a diagram showing an overall configuration of an information system including a second embodiment of the present invention. 本実施例は図1の実施例1の変形であるから、実施例1との相違部分についてのみ説明する。 Since this embodiment is a modification of Example 1 of FIG. 1, a description will be given only differences from the first embodiment. 14は図1の仮想一元化ネットワークストレージシステム8と同等の機能を持つ仮想一元化ネットワークストレージシステムである。 14 is a virtual centralized network storage system with the same functions as a virtual centralized network storage system 8 of FIG. 14のネットワーク4と一つ以上のネットワークストレージ6、7は図1の8の仮想一元化ネットワークストレージシステムと同じであり、異なるのは12の仮想一元化装置である。 Network 4 and one or more network storage 6,7 14 is the same as the virtual centralized network storage system of 8 1, which is different from the 12 virtual centralized device. 本実施例の仮想一元化装置12は、ファイルシステム100、グループマップ110、グループ配置120、要求処理手段130、移動手段140、容量監視手段150、統合手段160、管理手段180は実施例1の仮想一元化装置3と同一であり、ネットワークストレージ5、6、7の同一のリモート制御手段10とファイルシステムを構築したストレージ装置11を持ち、ネットワークストレージとしても機能するネットワークストレージ機能付き仮想一元化装置である点が異なる。 Virtual unification apparatus 12 of this embodiment, the file system 100, a group map 110, a group arrangement 120, the request processing unit 130, moving means 140, the capacity monitoring unit 150, integrating unit 160, the management unit 180 virtual unification of Example 1 is identical to the apparatus 3 has a storage device 11 constructed of the same remote control unit 10 and the file system of the network storage 5,6,7 point is a virtual unified device with a network storage function, which also functions as a network storage different. 8の仮想一元化装置はそれ単独では仮想一元化ネットワークストレージシステムを構成することはできず、他に必ずネットワークストレージを接続する必要があるが、本実施例のネットワークストレージ機能付き仮想一元化装置の場合は、それ単体で仮想一元化ネットワークストレージシステムを構成することが可能であり、より安価に仮想一元化ネットワークストレージシステムを提供できる。 Virtual centralized device 8 can not constitute a virtual centralized network storage system by itself, it is necessary to connect a sure network storage to another, when the virtual unified device with a network storage function of the present embodiment, it alone with it is possible to configure a virtual centralized network storage system can provide a lower cost virtual centralized network storage system. 一方、実施例2はネットワークストレージを含むため、仮想一元化装置12が管理データの他にファイルの実体のアクセス処理も行う必要があり、したがってCPU20の負荷が高くなり易い。 Meanwhile, the second embodiment for a network storage, must virtual unification apparatus 12 also performs access processing entities in addition to the file management data, thus easily load CPU20 increases. すなわち、実施例1の方がより高い性能を出すことができるという点で優れている。 That is, has the added advantage that it is possible towards the first embodiment issues a higher performance.
本実施例の場合グループ配置120にはネットワークストレージ装置としても機能する仮想一元化装置12も特定のファイルグループの格納先として登録する。 When the group arrangement 120 of the present embodiment will be registered as a storage destination of a specific file group even virtual unification apparatus 12 that also functions as a network storage device. クライアント1がファイルアクセス要求を発行すると、要求処理手段130がそれを受け、アクセス対象ファイルの格納先ネットワークストレージを求め、求めた格納先ネットワークストレージ装置にファイルアクセス要求を発行してファイルアクセスを行う一連の処理は実施例1と同じである。 When the client 1 issues a file access request, a set of received it is request processing unit 130 determines a storage destination network storage access target file, performs file access storage destination network storage device by issuing a file access request determined process is the same as the first embodiment. ただし本実施例の仮想一元化装置はネットワークストレージとしても機能し、格納先ネットワークストレージが一元管理装置12であった場合、要求手段130は自身のリモート制御手段10に対してファイルアクセス要求を発行し、リモートアクセス手段10は要求処理手段130からの要求を受けてストレージ装置11に対してファイルアクセス処理を行う。 However virtual unification apparatus of the present embodiment also functions as a network storage, if the storage destination network storage was centralized device 12, the request means 130 issues a file access request to the remote controller 10 of its own, remote access unit 10 performs the file access processing to the storage apparatus 11 receives a request from the request processing unit 130.
なお、本実施例2のネットワークストレージ機能付き仮想一元化装置12のストレージ装置11を2つのパーティションに分割し、その一方にファイルシステム100を搭載して管理用のファイルシステムとして用い、もう一方のパーティションにもファイルシステムを搭載してファイルの実体を格納するために用いても良い。 Incidentally, the storage device 11 of the network storage function virtual unification apparatus 12 of the second embodiment is divided into two partitions, used as a file system for managing equipped with a file system 100 on one, the other partition it may be used to be mounted file system to store the entity of the file.
<実施例3> <Example 3>
図21は本発明の第3の実施例を含む情報システムの全体構成を示す図である。 Figure 21 is a diagram showing an overall configuration of an information system including a third embodiment of the present invention. 本実施例は図1の実施例1の変形であるから、実施例1との相違部分についてのみ説明する。 Since this embodiment is a modification of Example 1 of FIG. 1, a description will be given only differences from the first embodiment. まず図1では仮想一元化装置3の内部に存在した要求処理手段130に少し手を加えて、仮想一元化装置13と分離する。 First, a slight modification to the request processing unit 130 which is present within the FIG. 1, the virtual unification unit 3 separates the virtual unification apparatus 13. この要求処理手段131は、サーバ、ワークステーション、PC等の公知のハードウェア上にLinux等の既存オペレーティングシステムを搭載し、そこに要求処理手段131を搭載することで実装する。 The request processing unit 131, a server, equipped with the existing operating system such as Linux workstation, on a known hardware such as PC, is implemented by mounting the request processing unit 131 therein. 131はクライアント1とNFSプロトコルを用いてファイルアクセス処理を行う。 131 performs file access process using the client 1 and the NFS protocol. クライアント1は複数ある要求処理手段131の何れかにファイルアクセス要求を発行する。 Client 1 issues a file access request to one of a plurality of request processing unit 131. 要求処理手段131は自身の中にファイルシステム100等の管理情報を持たず、クライアント1がファイルアクセス要求を発行すると、ネットワーク2を介して一元管理装置13の要求処理手段132にアクセスしてアクセス対象ファイルの格納先ネットワークストレージを求める。 Request processing unit 131 has no management information such as file system 100 in itself and if the client 1 issues a file access request, the access to the access request processing unit 132 of the centralized device 13 via the network 2 target seek the storage destination network storage of files. そして求めた格納先ネットワークストレージにファイルアクセス要求を発行してファイルアクセスを行う。 The storage destination network storage determined issues a file access request performs file access. ファイルアクセス要求が終了すると要求処理装置131はネットワークストレージから得られたファイルアクセス要求の結果を要求元クライアント1に返す。 A request processing unit 131 file access request is finished and returns the result of the file access request obtained from the network storage to the requesting client 1. NFSの各プロシージャの処理に関しては、自身のファイルシステム、グループマップ、及び、グループ配置にアクセスする代わりに、上記のようにネットワーク経由で仮想一元化装置3の要求処理手段132にアクセスし、ファイルシステム100、グループマップ110、グループ配置120にアクセスして所望のデータを取得すること意外実施例1で説明した処理と同様である。 In relation to the processing of each procedure of NFS, the file system, a group map itself, and, instead of accessing the group arrangement, access to the request processing unit 132 of the virtual unified device 3 via the network as described above, the file system 100 , group map 110, to access the group arrangement 120 is similar to the process described in surprising example 1 to obtain the desired data. 一元管理装置13の要求処理手段132は要求処理手段131からの管理情報へのアクセス要求を受け、ファイルシステム100、グループマップ110、グループ配置120の参照や更新作業を行う。 Request processing unit 132 of the centralized management device 13 receives a request for access to the management information from the request processing unit 131, the file system 100, a group map 110, a reference and updating of the group arrangement 120 performed. その他、仮想一元化装置13における各種の手段の処理は実施例1と同じである。 Other, processing of various means in a virtual unification apparatus 13 is the same as in Example 1.
本実施例3はクライアント1からファイルアクセス要求を受ける要求処理手段131を、仮想一元化装置13と独立させ、かつ、複数設けることによって、実施例1と比べてより多くのクライアントからのリクエストに答えられるようになる。 The request processing means 131 according to the third embodiment is for receiving a file access request from the client 1, is independently a virtual unification apparatus 13, and, by providing a plurality, answer to requests from more clients compared to Example 1 so as to. すなわち高い性能が要求される環境での使用は本実施例の形態をとると良い。 That use in environments where high performance is required may take the form of the present embodiment. なお、要求処理手段を複数持たせると、クライアント1から本発明の仮想一元化ネットワークストレージシステムに複数のエントリポイントがあるように見える。 Incidentally, when to have a plurality of request processing means, it appears to have multiple entry points to a virtual centralized network storage system of the present invention from the client 1. そこで、複数の要求手段131の前段に負荷分散装置等の公知な技術を導入してエントリポイントを一元化しても良い。 Therefore, it may be centralized entry point by introducing a known technology such as a load balancer in front of a plurality of request means 131.
【0008】 [0008]
【発明の効果】 【Effect of the invention】
本発明のネットワークストレージシステムの仮想一元化方法及び装置はファイルの格納先ネットワークストレージをファイルグループを単位として管理する。 Virtual unified methods and apparatus for network storage system of the present invention manages the storage destination network storage file file groups as a unit. ファイルからそのファイルが属するファイルグループを求めるファイルマップを固定的に与えておいて、ファイルグループとその格納先ネットワークストレージとの対応をグループ配置として管理し、ネットワークストレージの追加や削除等の構成変更があった場合には、このグループマップを変更する。 Keep giving file map for obtaining the file group to which the file belongs from the file fixedly, manages the correspondence of the file group and its storage location network storage as a group arrangement, configuration changes adding or deletion of network storage If there is, to change this group map. このようなファイルグループを単位とした管理方法により、ファイル毎に格納先ネットワークストレージの情報を持つ従来の方法と比べて管理情報が少なくなり、ネットワークストレージの容量を有効に利用できるようになる。 Such management method file groups in units, the management information is reduced as compared with the conventional method having information of storage location network storage for each file, it becomes possible to effectively utilize the capacity of the network storage.
また、仮想一元化ネットワークストレージシステムの構成変更時には、ファイルグループを単位としてファイルの格納先ネットワークストレージを移動する。 Further, at the time of configuration change of the virtual centralized network storage system, moving the storage location network storage file file groups as a unit. この際に、グループ配置の移動するファイルグループの格納先ネットワークストレージを変更するだけで良いので、ファイル毎に格納先情報を管理する場合に比べてオーバヘッドを小さくできる。 At this time, since it is only necessary to change the storage destination network storage of the moving file group in the group arrangement, it is possible to reduce the overhead compared with the case of managing the storage destination information for each file.
【図面の簡単な説明】 BRIEF DESCRIPTION OF THE DRAWINGS
【図1】本発明のネットワークストレージ装置の仮想一元化方法の構成を示す図である。 1 is a diagram showing a configuration of a virtual centralized method of network storage device of the present invention.
【図2】ファイルシステムの構造を示す図である。 2 is a diagram showing a structure of a file system.
【図3】ファイルシステムの構造を説明するために使用するディレクトリ構造の例題を示す図である。 3 is a diagram showing an example of a directory structure used for explaining the structure of the file system.
【図4】グループ配置の構成を示す図である。 4 is a diagram showing the configuration of the group arrangement.
【図5】CREATE要求に対する処理の流れを示すフローチャートである。 5 is a flowchart showing a flow of processing for CREATE request.
【図6】ファイルハンドラの構成を示す図である。 FIG. 6 is a diagram showing the structure of the file handler.
【図7】LOOKUP要求に対する処理の流れを示すフローチャートである。 7 is a flowchart showing a flow of processing for LOOKUP request.
【図8】READ要求に対する処理の流れを示すフローチャートである。 8 is a flowchart showing a flow of processing for a READ request.
【図9】MKDIR要求に対する処理の流れを示すフローチャートである。 9 is a flowchart showing a flow of processing for MKDIR request.
【図10】容量テーブルの構成を示す図である。 10 is a diagram showing the configuration of a volume table.
【図11】容量の監視処理の流れを示すフローチャートである。 11 is a flowchart showing a flow of a monitoring process capacity.
【図12】ファイルグループをネットワークストレージ間で移動する処理の流れを示すフローチャートである。 12 is a flowchart showing a flow of a process of moving the file group between network storage.
【図13】ネットワークストレージ装置を追加する場合の処理の流れを示すフローチャートである。 13 is a flowchart showing a flow of processing when adding a network storage device.
【図14】ネットワークストレージ装置を削除する場合の処理の流れを示すフローチャートである。 14 is a flowchart showing a flow of processing when deleting the network storage device.
【図15】ネットワークストレージ間で容量に不均衡が生じた場合に行う各ネットワークストレージの残容量の平滑化処理のフローチャートである。 15 is a flowchart of the smoothing process remaining capacity of each network storage performed when an imbalance in capacitance between the network storage has occurred.
【図16】既設ネットワークストレージ装置の仮想一元化ネットワークストレージシステムへの統合方法の処理の流れを説明するフローチャートである。 16 is a flowchart illustrating a flow of processing of an integrated process to a virtual centralized network storage system of the existing network storage device.
【図17】既設ネットワークストレージ装置の統合に際して行うファイル識別子の生成方法の処理の流れを示すフローチャートである。 17 is a flowchart showing a process flow of a method of generating a file identifier to perform upon integration of the existing network storage device.
【図18】既設ネットワークストレージ装置の統合に際して行うファイルの移動処理の流れを示すフローチャートである。 18 is a flowchart showing a flow of a process of moving the file to the time integration of the existing network storage device.
【図19】本発明の仮想一元化方法を搭載した計算機システムの図である。 19 is a diagram of a computer system with a virtual unification process of the present invention.
【図20】ネットワークストレージとしての機能を備えた一元管理装置の構成を示す図である。 20 is a diagram showing a configuration of a centralized device having a function as a network storage.
【図21】複数の要求処理手段を備えた仮想一元化ネットワークストレージシステムを示す図である。 21 is a diagram showing a virtual centralized network storage system comprising a plurality of request processing means.
【符号の説明】 DESCRIPTION OF SYMBOLS
1 クライアント2、4 ネットワーク3 仮想一元化装置5、6、7 ネットワークストレージ8、14、15 仮想一元化ネットワークストレージシステム10 リモート11 ストレージ装置12 ネットワークストレージ機能付き仮想一元化装置13 要求処理部を持たない仮想一元化装置20 CPU 1 Client 2,4 network 3 virtual centralized device 5,6,7 network storage 8,14,15 virtual centralized network storage system 10 remote 11 storage device 12 network storage function virtual unification apparatus 13 without a request processing unit virtual centralized device 20 CPU
21 コントローラ22 主記憶23 I/Oインタフェース24 ネットワークインタフェース25 ストレージ装置100 ファイルシステム110 グループマップ120 グループ配置130、131、132 要求処理手段140 移動手段150 容量監視手段160 統合手段170 ファイルハンドル180 管理手段1001、1002、1003、1004、1005、1006,1007 iノード1008,1009,1010,1011 ディレクトリエントリ1012,1013,1014 データブロック1500 容量テーブル。 21 controller 22 main storage 23 I / O interface 24 network interface 25 storage device 100 file system 110 group map 120 Group disposed 130, 131 and 132 request processing unit 140 moving unit 150 capacity monitoring unit 160 and integrating unit 170 the file handle 180 managing means 1001 , 1002,1003,1004,1005,1006,1007 i node 1008,1009,1010,1011 directory entry 1012,1013,1014 data block 1500 capacity table.

Claims (3)

  1. ネットワークに接続された複数のネットワークストレージ装置から構成されるネットワークストレージシステムにおいて、前記ネットワークストレージシステムをクライアントから仮想的に一つのネットワークストレージ装置としてアクセスさせるためのネットワークストレージシステムの仮想一元化方法であって、 In the network storage system including a plurality of network storage devices connected to the network, a virtual centralized method of network storage system to access the network storage system virtually as one network storage device from the client,
    前記仮想一元化方法によって仮想的に一元化された仮想一元化ネットワークストレージシステムに格納するファイルをグループ単位でネットワークストレージ装置に格納するために、ファイルを識別する情報から該ファイルが属する一つのファイルグループを導出するグループマップ関数を設定し、 For storage in said virtual centralized way network storage device the file to be stored in virtually centralized virtual centralized network storage system in groups by deriving one file group to which the file belongs from information identifying the file set the group map function,
    ファイルグループとそのファイルグループに属する全てのファイルの格納先ネットワークストレージ装置との対応を記録するグループ配置表を設け、 It provided a group arrangement table for recording the correspondence between storage destination network storage device for all the files belonging file group and the file group,
    前記クライアントが前記仮想一元化ネットワークストレージシステムに対してファイル生成要求を発行すると、前記ファイル生成要求中のファイルを識別する情報を前記グレープマップ関数に適用してファイルの属するファイルグループを求め、前記グループ配置表を参照して前記ファイルグループの格納先ネットワークストレージ装置を求め、求められた格納先ネットワークストレージ装置に前記ファイルを生成し、 When the client issues a file generation request to said virtual centralized network storage system finds the file group of the file by applying the information that identifies the file in the file generation request to the grape mapping function, the group arrangement Table reference to determine the storage destination network storage device of the file group to generate the file storage destination network storage device obtained,
    前記複数のネットワークストレージ装置のそれぞれのストレージ残容量を定期的に収集し、 Periodically collects each storage remaining capacity of said plurality of network storage devices,
    収集された各ネットワークストレージ装置のストレージ残容量が所定の条件に達すると、移動元ネットワークストレージ装置、及びそこに格納されている移動対象のファイルグループを選択し、ストレージ残容量が最大のネットワークストレージ装置を移動先ネットワークストレージとし、前記移動対象のファイルグループに属する全ファイルを移動し、前記移動に対応して前期グループ配置表のファイルグループと格納先ネットワークストレージ装置との対応を更新することを特徴とするネットワークストレージシステムの仮想一元化方法。 When the storage remaining capacity of the network storage devices collected reaches a predetermined condition, the source network storage device, and select the file group of the moving object stored therein, the storage residual capacity up to the network storage device was a visited network storage, and wherein said moving all files belonging to a moving object file group, in response to the mobile to update the correspondence between file group of year group configuration table and storage destination network storage device virtual unified method for the network storage system.
  2. 前記所定の条件は、前記複数のネットワークストレージ装置のいずれかのストレージ残容量が閾値を下回ったことであり、前記ストレージ残容量が閾値を下回ったネットワークストレージ装置を移動元ネットワークストレージ装置として選択することを特徴とする請求項1記載のネットワークストレージシステムの仮想一元化方法。 Wherein the predetermined condition is that one of the storage remaining capacity of said plurality of network storage device falls below a threshold value, selecting a network storage device the storage residual capacity falls below the threshold value as a source network storage device virtual unified method for the network storage system of claim 1, wherein.
  3. 前記所定の条件は、前記複数のネットワークストレージ装置のストレージ残容量の最大値と最小値の差が閾値を越えたことであり、ストレージ残容量が最小値であるネットワークストレージ装置を移動元ネットワークストレージ装置に選択することを特徴とする請求項1記載のネットワークストレージシステムの仮想一元化方法。 The predetermined condition is that the difference between the maximum and minimum values ​​of storage remaining capacity of a plurality of network storage devices is that exceeds the threshold value, the source network storage device network storage device storage remaining capacity is the minimum value virtual unified method for the network storage system of claim 1, wherein the selecting the.
JP2002149977A 2002-05-24 2002-05-24 Virtual unified methods and apparatus of the network storage system Expired - Fee Related JP4211285B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002149977A JP4211285B2 (en) 2002-05-24 2002-05-24 Virtual unified methods and apparatus of the network storage system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2002149977A JP4211285B2 (en) 2002-05-24 2002-05-24 Virtual unified methods and apparatus of the network storage system
US10335853 US7606871B2 (en) 2002-05-24 2003-01-03 System and method for virtualizing network storages into a single file system view

Publications (2)

Publication Number Publication Date
JP2003345643A true JP2003345643A (en) 2003-12-05
JP4211285B2 true JP4211285B2 (en) 2009-01-21

Family

ID=29545300

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002149977A Expired - Fee Related JP4211285B2 (en) 2002-05-24 2002-05-24 Virtual unified methods and apparatus of the network storage system

Country Status (2)

Country Link
US (1) US7606871B2 (en)
JP (1) JP4211285B2 (en)

Families Citing this family (59)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7146389B2 (en) 2002-08-30 2006-12-05 Hitachi, Ltd. Method for rebalancing free disk space among network storages virtualized into a single file system view
US8195627B2 (en) * 2004-04-23 2012-06-05 Neopath Networks, Inc. Storage policy monitoring for a storage network
US7346664B2 (en) 2003-04-24 2008-03-18 Neopath Networks, Inc. Transparent file migration using namespace replication
US8190741B2 (en) 2004-04-23 2012-05-29 Neopath Networks, Inc. Customizing a namespace in a decentralized storage environment
US7831641B2 (en) * 2003-04-24 2010-11-09 Neopath Networks, Inc. Large file support for a network file server
US7720796B2 (en) * 2004-04-23 2010-05-18 Neopath Networks, Inc. Directory and file mirroring for migration, snapshot, and replication
JP2004364109A (en) * 2003-06-06 2004-12-24 Canon Inc Temporary address communication apparatus, program, recording medium and method
US20050038890A1 (en) * 2003-08-11 2005-02-17 Hitachi., Ltd. Load distribution method and client-server system
US7890477B2 (en) * 2003-08-20 2011-02-15 Total Training Network, Inc. Systems and methods for providing digital content
JP4349871B2 (en) * 2003-09-09 2009-10-21 株式会社日立製作所 Data migration method between file sharing devices and file sharing devices
WO2005029251A3 (en) 2003-09-15 2006-05-18 Neopath Networks Inc Enabling proxy services using referral mechanisms
JP4523772B2 (en) * 2003-12-24 2010-08-11 大日本印刷株式会社 Data storage system using network
US7337287B2 (en) * 2004-01-28 2008-02-26 Hitachi, Ltd. Storage unit, storage unit control method, and storage system
JP2005228170A (en) * 2004-02-16 2005-08-25 Hitachi Ltd Storage device system
US7133988B2 (en) 2004-02-25 2006-11-07 Hitachi, Ltd. Method and apparatus for managing direct I/O to storage systems in virtualization
US7272654B1 (en) * 2004-03-04 2007-09-18 Sandbox Networks, Inc. Virtualizing network-attached-storage (NAS) with a compact table that stores lossy hashes of file names and parent handles rather than full names
US8131689B2 (en) 2005-09-30 2012-03-06 Panagiotis Tsirigotis Accumulating access frequency and file attributes for supporting policy based storage management
EP1768401A4 (en) * 2004-07-06 2009-12-16 Panasonic Corp Encoding or decoding device and recording/reproduction terminal
JP4281658B2 (en) 2004-09-24 2009-06-17 日本電気株式会社 File access service system and the switch apparatus and quota management method and program
JP4325524B2 (en) 2004-09-29 2009-09-02 日本電気株式会社 Switch devices and systems as well as the backup and restore process and program
CA2587055A1 (en) 2004-11-05 2006-05-18 Commvault Systems, Inc. Method and system of pooling storage devices
JP4451293B2 (en) 2004-12-10 2010-04-14 株式会社日立製作所 Network storage system and control method thereof of the cluster configuration that share a namespace
FR2880487B1 (en) * 2004-12-31 2007-06-01 Cit Alcatel Method of access control
JP2006293981A (en) * 2005-03-18 2006-10-26 Hitachi Ltd Database storing method, and database storing system
US8832697B2 (en) 2005-06-29 2014-09-09 Cisco Technology, Inc. Parallel filesystem traversal for transparent mirroring of directories and files
US8290903B2 (en) * 2005-10-04 2012-10-16 Sony Ericsson Mobile Communications Ab Updating a portable communication device with media files
US7620710B2 (en) * 2005-12-19 2009-11-17 Commvault Systems, Inc. System and method for performing multi-path storage operations
JP2007183767A (en) * 2006-01-05 2007-07-19 Fujitsu Ltd Method and system for deleting biological information
US8787199B1 (en) * 2006-08-03 2014-07-22 Oracle America, Inc. Mechanism for data diffusion and evaporation across networks
US9110920B1 (en) * 2007-05-03 2015-08-18 Emc Corporation CIFS access to NFS files and directories by translating NFS file handles into pseudo-pathnames
US8732386B2 (en) * 2008-03-20 2014-05-20 Sandisk Enterprise IP LLC. Sharing data fabric for coherent-distributed caching of multi-node shared-distributed flash memory
US7975109B2 (en) 2007-05-30 2011-07-05 Schooner Information Technology, Inc. System including a fine-grained memory and a less-fine-grained memory
US8229945B2 (en) 2008-03-20 2012-07-24 Schooner Information Technology, Inc. Scalable database management software on a cluster of nodes using a shared-distributed flash memory
US7975102B1 (en) * 2007-08-06 2011-07-05 Netapp, Inc. Technique to avoid cascaded hot spotting
US8352497B1 (en) 2009-02-09 2013-01-08 American Megatrends, Inc. Page object caching for variably sized access control lists in data storage systems
US20100257218A1 (en) * 2009-04-03 2010-10-07 Konstantin Iliev Vassilev Merging multiple heterogeneous file systems into a single virtual unified file system
JP2010271933A (en) * 2009-05-21 2010-12-02 Brother Ind Ltd Distributed storage system, node device, node processing program, and data file storage method
JP5375972B2 (en) * 2009-12-10 2013-12-25 日本電気株式会社 Distributed file system, the data selection method and program
US9047351B2 (en) 2010-04-12 2015-06-02 Sandisk Enterprise Ip Llc Cluster of processing nodes with distributed global flash memory using commodity server technology
US8725951B2 (en) 2010-04-12 2014-05-13 Sandisk Enterprise Ip Llc Efficient flash memory-based object store
US8868487B2 (en) 2010-04-12 2014-10-21 Sandisk Enterprise Ip Llc Event processing in a flash memory-based object store
US8856593B2 (en) 2010-04-12 2014-10-07 Sandisk Enterprise Ip Llc Failure recovery using consensus replication in a distributed flash memory system
US9164554B2 (en) 2010-04-12 2015-10-20 Sandisk Enterprise Ip Llc Non-volatile solid-state storage system supporting high bandwidth and random access
US8694733B2 (en) 2011-01-03 2014-04-08 Sandisk Enterprise Ip Llc Slave consistency in a synchronous replication environment
US8290994B2 (en) 2010-05-05 2012-10-16 International Business Machines Corporation Obtaining file system view in block-level data storage systems
US8666939B2 (en) 2010-06-28 2014-03-04 Sandisk Enterprise Ip Llc Approaches for the replication of write sets
CA2825891A1 (en) * 2011-01-28 2012-08-02 Nec Corporation Storage system for storing data in a plurality of storage devices
US8874515B2 (en) 2011-04-11 2014-10-28 Sandisk Enterprise Ip Llc Low level object version tracking using non-volatile memory write generations
JP5910117B2 (en) * 2012-01-30 2016-04-27 富士通株式会社 File system
US9135064B2 (en) 2012-03-07 2015-09-15 Sandisk Enterprise Ip Llc Fine grained adaptive throttling of background processes
US9104675B1 (en) 2012-05-01 2015-08-11 Emc Corporation Inode to pathname support with a hard link database
US20130311597A1 (en) * 2012-05-16 2013-11-21 Apple Inc. Locally backed cloud-based storage
US20170372078A1 (en) * 2013-04-15 2017-12-28 Paul Lewis Systems and methods for jurisdiction independent data storage in a multi-vendor cloud environment
US9665286B2 (en) * 2013-05-17 2017-05-30 Hitachi, Ltd. Storage device
EP2840481B1 (en) * 2013-07-02 2017-09-06 Hitachi Data Systems Engineering UK Limited Apparatus and computer program product for virtualization of a file system
JP2015072629A (en) * 2013-10-03 2015-04-16 富士通株式会社 Data processing program and data processing method
JP6221717B2 (en) 2013-12-12 2017-11-01 富士通株式会社 Storage device, storage system and data management program
US9330103B1 (en) * 2014-03-28 2016-05-03 Emc Corporation Preserving file handles when moving file system operation between storage processors
US9710164B2 (en) 2015-01-16 2017-07-18 International Business Machines Corporation Determining a cause for low disk space with respect to a logical disk

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0770966B1 (en) * 1995-10-27 2002-08-28 Ncr International Inc. Method and apparatus for computing filenames with a high probability of uniqueness
JP3170455B2 (en) * 1996-05-27 2001-05-28 インターナショナル・ビジネス・マシーンズ・コーポレ−ション Rearrangement process of the data in a data storage system, access method and data storage system of the data stored in the system
US6101508A (en) * 1997-08-01 2000-08-08 Hewlett-Packard Company Clustered file management for network resources
US6658526B2 (en) * 1997-03-12 2003-12-02 Storage Technology Corporation Network attached virtual data storage subsystem
US6029168A (en) * 1998-01-23 2000-02-22 Tricord Systems, Inc. Decentralized file mapping in a striped network file system in a distributed computing environment
WO2000004483A3 (en) * 1998-07-15 2000-06-29 Imation Corp Hierarchical data storage management
US6807632B1 (en) * 1999-01-21 2004-10-19 Emc Corporation Content addressable information encapsulation, representation, and transfer
US6640278B1 (en) * 1999-03-25 2003-10-28 Dell Products L.P. Method for configuration and management of storage resources in a storage network
US20020103889A1 (en) * 2000-02-11 2002-08-01 Thomas Markson Virtual storage layer approach for dynamically associating computer storage with processing hosts
US6195650B1 (en) * 2000-02-02 2001-02-27 Hewlett-Packard Company Method and apparatus for virtualizing file access operations and other I/O operations
US6898670B2 (en) * 2000-04-18 2005-05-24 Storeage Networking Technologies Storage virtualization in a storage area network
US20010039548A1 (en) * 2000-04-27 2001-11-08 Yoshitake Shinkai File replication system, replication control method, and storage medium
US6745207B2 (en) * 2000-06-02 2004-06-01 Hewlett-Packard Development Company, L.P. System and method for managing virtual storage
US6912537B2 (en) * 2000-06-20 2005-06-28 Storage Technology Corporation Dynamically changeable virtual mapping scheme
US7082441B1 (en) * 2000-08-17 2006-07-25 Emc Corporation Method and storage and manipulation of storage system metrics
US6782389B1 (en) * 2000-09-12 2004-08-24 Ibrix, Inc. Distributing files across multiple, permissibly heterogeneous, storage devices
US6907457B2 (en) * 2001-01-25 2005-06-14 Dell Inc. Architecture for access to embedded files using a SAN intermediate device
US6990667B2 (en) * 2001-01-29 2006-01-24 Adaptec, Inc. Server-independent object positioning for load balancing drives and servers
US6601070B2 (en) * 2001-04-05 2003-07-29 Hewlett-Packard Development Company, L.P. Distribution of physical file systems
US6971044B2 (en) * 2001-04-20 2005-11-29 Egenera, Inc. Service clusters and method in a processing system with failover capability
US7136883B2 (en) * 2001-09-08 2006-11-14 Siemens Medial Solutions Health Services Corporation System for managing object storage and retrieval in partitioned storage media
JP2003131924A (en) * 2001-10-19 2003-05-09 Fujitsu Ltd Remote access program, program for processing of remote access request and client computer
US6895467B2 (en) * 2001-10-22 2005-05-17 Hewlett-Packard Development Company, L.P. System and method for atomizing storage
US7010655B1 (en) * 2003-03-24 2006-03-07 Veritas Operating Corporation Locking and memory allocation in file system cache
US6959313B2 (en) * 2003-07-08 2005-10-25 Pillar Data Systems, Inc. Snapshots of file systems in data storage systems

Also Published As

Publication number Publication date Type
US7606871B2 (en) 2009-10-20 grant
US20030220985A1 (en) 2003-11-27 application
JP2003345643A (en) 2003-12-05 application

Similar Documents

Publication Publication Date Title
Anderson et al. Interposed request routing for scalable network storage
US6952698B2 (en) Storage area network methods and apparatus for automated file system extension
US6530036B1 (en) Self-healing computer system storage
US7054893B2 (en) Method and apparatus for relocating data related to database management system
US7055014B1 (en) User interface system for a multi-protocol storage appliance
US7406473B1 (en) Distributed file system using disk servers, lock servers and file servers
US6775673B2 (en) Logical volume-level migration in a partition-based distributed file system
US7287063B2 (en) Storage area network methods and apparatus using event notifications with data
US7024427B2 (en) Virtual file system
US6029168A (en) Decentralized file mapping in a striped network file system in a distributed computing environment
US6874061B1 (en) Method and system for implementing variable sized extents
US20030145041A1 (en) Storage area network methods and apparatus for display and management of a hierarchical file system extension policy
US20030149753A1 (en) Storage area network methods and apparatus for associating a logical identification with a physical identification
US20040078466A1 (en) Methods and apparatus for load balancing storage nodes in a distributed network attached storage system
US20040181605A1 (en) Method for accessing distributed file system
US20030167327A1 (en) Storage area network methods and apparatus for topology rendering
US7457982B2 (en) Writable virtual disk of read-only snapshot file objects
US7325041B2 (en) File distribution system in which partial files are arranged according to various allocation rules associated with a plurality of file types
US20030154271A1 (en) Storage area network methods and apparatus with centralized management
US6922761B2 (en) Method and system for migrating data
US20080155214A1 (en) Method and apparatus for file system virtualization
US20060031653A1 (en) Methods and apparatus for accessing content in a virtual pool on a content addressable storage system
US20030093509A1 (en) Storage area network methods and apparatus with coordinated updating of topology representation
US6857059B2 (en) Storage virtualization system and methods
US7546319B1 (en) File system consistency checking in a distributed segmented file system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050518

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20060419

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080722

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080922

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20081007

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20081020

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111107

Year of fee payment: 3

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111107

Year of fee payment: 3

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111107

Year of fee payment: 3

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121107

Year of fee payment: 4

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121107

Year of fee payment: 4

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131107

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees