JP4185492B2 - ネットワークストレージ管理装置、ネットワークストレージ管理プログラムおよびネットワークストレージ管理方法 - Google Patents

ネットワークストレージ管理装置、ネットワークストレージ管理プログラムおよびネットワークストレージ管理方法 Download PDF

Info

Publication number
JP4185492B2
JP4185492B2 JP2004521116A JP2004521116A JP4185492B2 JP 4185492 B2 JP4185492 B2 JP 4185492B2 JP 2004521116 A JP2004521116 A JP 2004521116A JP 2004521116 A JP2004521116 A JP 2004521116A JP 4185492 B2 JP4185492 B2 JP 4185492B2
Authority
JP
Japan
Prior art keywords
area
free
storage
partial area
file
Prior art date
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
JP2004521116A
Other languages
English (en)
Other versions
JPWO2004008322A1 (ja
Inventor
哲太郎 丸山
慶武 新開
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of JPWO2004008322A1 publication Critical patent/JPWO2004008322A1/ja
Application granted granted Critical
Publication of JP4185492B2 publication Critical patent/JP4185492B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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 or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0662Virtualisation aspects
    • G06F3/0665Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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 or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0605Improving or facilitating administration, e.g. storage management by facilitating the interaction with a user or administrator
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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 or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for 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 OR 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 or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]

Description

この発明は、ネットワークにストレージを接続してデータを統合管理するストレージシステムに用いるネットワークストレージ管理装置、ネットワークストレージ管理プログラムおよびネットワークストレージ管理方法に関し、特に、異なるアーキテクチャの混在を許し、運用負担が少なく、信頼性の高いストレージシステムの構築を可能とするネットワークストレージ管理装置、ネットワークストレージ管理プログラムおよびネットワークストレージ管理方法に関するものである。
近年、マルチメディアデータの利用などによるデータ容量の急増にともない、大規模なデータをアプリケーションサーバから分離独立させ、データだけを統合運用管理するストレージシステムが急速に普及している。
たとえば、SAN(Storage Area Network)では、大容量のハードディスクなどのストレージをストレージネットワークと呼ばれる専用ネットワークで接続し、大容量のデータ領域を利用者に提供している。
かかるストレージシステムでは、取り扱うデータの範囲およびデータ量の拡大にともなってシステムを拡張することが必要であり、また部分的なデータを管理した既存の複数のストレージシステムを結合し、新たな統合ストレージシステムを構築することも必要となる。
しかし、複数のストレージシステムを統合する場合には、ストレージシステムごとに異なる通信プロトコルを利用していることが多く、統合するために様々な改造が必要となり、統合作業が極めて困難となっている。このため、通信プロトコルの違いを吸収し、複数のストレージシステムの統合を容易にする技術が重要となっている。
たとえば、特開2000−339098号公報には、様々なSANの通信プロトコルの違いを吸収し、異機種混合型のストレージシステムの構築を可能とする技術が開示されている。
しかしながら、この従来技術は、SANだけを対象としており、ネットワークストレージとしてSANとともに普及しているNAS(Network Attached Storage)は対象としていない。したがって、SANとNASが混在するストレージシステムには適用できないという問題がある。
すなわち、SANでは、サーバとストレージは専用のストレージネットワークで接続されており、直接ストレージにアクセスするためのSCSI(Small Computer System Interface)プロトコルが使用されている。一方、NASでは、サーバはLANを介してNASサーバと接続され、NASサーバがストレージにアクセスする構成をとるため、通信プロトコルとしてNFS(Network File System)プロトコルが使用されている。このように、SANとNASでは、基本的にまったく異なる通信プロトコルが使用されているため、両者が混在するストレージシステムの構築は不可能となっている。
従って、この発明は、SANとNASの混在を許し、運用負担が少なく、信頼性の高いストレージシステムの構築を可能とするネットワークストレージ管理装置、ネットワークストレージ管理プログラムおよびネットワークストレージ管理方法を提供することを目的としている。
上述した課題を解決し、目的を達成するため、本発明は、ネットワークにストレージを接続してデータを統合管理するストレージシステムに用いるネットワークストレージ管理装置であって、クライアントとLANを介してNFSプロトコルを用いて通信する第一の通信手段と、クライアントとストレージネットワークを介してSCSIプロトコルを用いて通信する第二の通信手段と、前記第一の通信手段がクライアントとの通信に用いるNFSプロトコルをファイルを単位とする内部のアクセスプロトコルである内部プロトコルに変換し、前記第二の通信手段がクライアントとの通信に用いるSCSIプロトコルを、デバイスをファイルに対応させ、デバイス内のデータ格納開始アドレスをファイルの先頭からのアドレスに対応させることによって前記内部プロトコルに変換するプロトコル変換手段と、前記プロトコル変換手段により内部プロトコルに変換されたクライアント要求に基づいて、前記ストレージに記憶されるファイルを管理するファイル管理手段とを備え、前記ファイル管理手段は、前記ストレージを部分領域の集まりとして管理し、各部分領域を識別する識別子のうち空き部分領域の識別子を集めて空き部分領域情報として記憶した空き部分領域情報記憶手段と、前記空き部分領域情報記憶手段により記憶された空き部分領域情報を用いて空き領域を確保し、該空き領域を構成する部分領域の識別子を前記空き部分領域情報から取り除いて該空き領域を使用領域とする領域割当手段と、不要となった使用領域を構成する部分領域の識別子を前記空き部分領域情報に加え、該使用領域を空き領域として開放する領域開放手段と、を備えたことを特徴とする。
また、本発明は、ネットワークにストレージを接続してデータを統合管理するストレージシステムに用いるネットワークストレージ管理装置に内蔵されたコンピュータで実行されるネットワークストレージ管理プログラムであって、クライアントとLANを介してNFSプロトコルを用いて通信する第一の通信手順と、クライアントとストレージネットワークを介してSCSIプロトコルを用いて通信する第二の通信手順と、前記第一の通信手順がクライアントとの通信に用いるNFSプロトコルをファイルを単位とする内部のアクセスプロトコルである内部プロトコルに変換し、前記第二の通信手順がクライアントとの通信に用いるSCSIプロトコルを、デバイスをファイルに対応させ、デバイス内のデータ格納開始アドレスをファイルの先頭からのアドレスに対応させることによって前記内部プロトコルに変換するプロトコル変換手順と、前記プロトコル変換手順により内部プロトコルに変換されたクライアント要求に基づいて、前記ストレージに記憶されるファイルを管理するファイル管理手順とをコンピュータに実行させ、前記ファイル管理手順は、前記ストレージを部分領域の集まりとして管理し、各部分領域を識別する識別子のうち空き部分領域の識別子を集めて空き部分領域情報として管理する空き部分領域情報管理手順と、前記空き部分領域情報管理手順により管理された空き部分領域情報を用いて空き領域を確保し、該空き領域を構成する部分領域の識別子を前記空き部分領域情報から取り除いて該空き領域を使用領域とする領域割当手順と、不要となった使用領域を構成する部分領域の識別子を前記空き部分領域情報に加え、該使用領域を空き領域として開放する領域開放手順と、をコンピュータに実行させることを特徴とする。
また、本発明は、ネットワークにストレージを接続してデータを統合管理するストレージシステムに用いるネットワークストレージ管理方法であって、クライアントとLANを介してNFSプロトコルを用いて通信する第一の通信工程と、クライアントとストレージネットワークを介してSCSIプロトコルを用いて通信する第二の通信工程と、前記第一の通信工程がクライアントとの通信に用いるNFSプロトコルをファイルを単位とする内部のアクセスプロトコルである内部プロトコルに変換し、前記第二の通信工程がクライアントとの通信に用いるSCSIプロトコルを、デバイスをファイルに対応させ、デバイス内のデータ格納開始アドレスをファイルの先頭からのアドレスに対応させることによって前記内部プロトコルに変換するプロトコル変換工程と、前記プロトコル変換工程により内部プロトコルに変換されたクライアント要求に基づいて、前記ストレージに記憶されるファイルを管理するファイル管理工程とを含み、前記ファイル管理工程は、前記ストレージを部分領域の集まりとして管理し、各部分領域を識別する識別子のうち空き部分領域の識別子を集めて空き部分領域情報として管理する空き部分領域情報管理工程と、前記空き部分領域情報管理工程により管理された空き部分領域情報を用いて空き領域を確保し、該空き領域を構成する部分領域の識別子を前記空き部分領域情報から取り除いて該空き領域を使用領域とする領域割当工程と、不要となった使用領域を構成する部分領域の識別子を前記空き部分領域情報に加え、該使用領域を空き領域として開放する領域開放工程と、を含んだことを特徴とする。
かかる発明によれば、クライアントとLANを介してNFSプロトコルを用いて通信し、クライアントとストレージネットワークを介してSCSIプロトコルを用いて通信し、NFSプロトコルおよびSCSIプロトコを内部プロトコルに変換し、内部プロトコルに変換したクライアント要求に基づいて、ストレージに記憶されるファイルを管理し、ストレージを部分領域の集まりとして管理し、各部分領域を識別する識別子のうち空き部分領域の識別子を集めて空き部分領域情報として記憶し、記憶した空き部分領域情報を用いて空き領域を確保し、空き領域を構成する部分領域の識別子を空き部分領域情報から取り除いて空き領域を使用領域とし、不要となった使用領域を構成する部分領域の識別子を空き部分領域情報に加え、使用領域を空き領域として開放することとしたので、異なるアーキテクチャの混在を許し、運用負担が少なく、信頼性の高いストレージシステムの構築を可能とすることができる。
本発明によれば、クライアントとLANを介してNFSプロトコルを用いて通信し、クライアントとストレージネットワークを介してSCSIプロトコルを用いて通信し、NFSプロトコルおよびSCSIプロトコを内部プロトコルに変換し、内部プロトコルに変換したクライアント要求に基づいて、ストレージに記憶されるファイルを管理し、ストレージを部分領域の集まりとして管理し、各部分領域を識別する識別子のうち空き部分領域の識別子を集めて空き部分領域情報として記憶し、記憶した空き部分領域情報を用いて空き領域を確保し、空き領域を構成する部分領域の識別子を空き部分領域情報から取り除いて空き領域を使用領域とし、不要となった使用領域を構成する部分領域の識別子を空き部分領域情報に加え、使用領域を空き領域として開放する構成としたので、異なるアーキテクチャの混在を許し、運用負担が少なく、信頼性の高いストレージシステムの構築を可能とすることができるという効果を奏する。
以下、添付図面を参照して、この発明に係るネットワークストレージ管理装置、ネットワークストレージ管理プログラムおよびネットワークストレージ管理方法の好適な実施の形態を詳細に説明する。
まず、本実施の形態に係るストレージシステムについて説明する。第1図は、本発明の実施の形態に係るストレージシステムのシステム構成を示す図である。同図に示すように、このストレージシステムは、ネットワ−クストレージ管理装置200および300を、ストレージネットワーク400を介してストレージ500〜700と接続し、また、これらネットワ−クストレージ管理装置200および300を、LAN40およびストレージネットワーク50を介してクライアント10〜30と接続したものである。なお、ここでは説明の便宜上、3台のクライアント10〜30と、2台のネットワークストレージ管理装置200および300と、3台のストレージ500〜700のみを示したが、これらの装置の台数は任意の数とすることができる。
クライアント10〜30は、ネットワークストレージ管理装置200および300にデータの管理を依頼する装置であり、LAN40またはストレージネットワーク50を介してネットワークストレージ管理装置200および300に接続される。また、ストレージ500〜700は、大規模な容量のハードディスクであり、クライアント10〜30が使用するデータを格納する。
ネットワークストレージ管理装置200および300は、クライアント10〜30からの依頼を受けてデータの管理をおこなう装置であり、ストレージ500〜700にデータを格納する。なお、ネットワークストレージ管理装置200および300は同様の構成を有するので、ここではネットワークストレージ管理装置200を例にとって説明する。
ネットワークストレージ管理装置200は、制御部210と記憶部220とを有する。制御部210は、クライアント10〜30からの要求を受け付け、ストレージ500〜700のデータを管理する処理部であり、ネットワークドライバ211と、ストレージネットワ−クドライバ212と、プロトコル変換部213と、ファイル管理部214と、領域割当部215と、領域開放部216と、ストレージインタフェース部217とを有する。また、記憶部220は、ストレージ500〜700を管理するためのデータを記憶した記憶部であり、プール領域221とファイルスペース222とを有する。
ネットワークドライバ211は、LAN40を介してクライアント10および30とNFSプロトコルを用いて通信する処理部であり、また、ストレージネットワークドライバ212は、ストレージネットワーク50を介してクライアント20とSCSIプロトコルを用いて通信する処理部である。
プロトコル変換部213は、ネットワークドライバ211が使用するNFSプロトコルおよびストレージネットワークドライバ212が使用するSCSIプロトコルと、このネットワークストレージ管理装置200が内部で使用する内部プロトコルとを変換する処理部であり、このプロトコル変換部213のプロトコル変換機能によって、ストレージシステム内にNASとSANの両方のアーキテクチャを混在することができる。
NASの場合には、ネットワークストレージ管理装置200は、ファイルを単位としてアクセスされる。また、ネットワークストレージ管理装置200も、ファイルを単位としてデータを管理している。したがって、プロトコル変換部213は、NASのファイルをネットワークストレージ管理装置200のファイルにそのまま対応させることによって、容易にプロトコルの変換をおこなうことができる。
一方、SANの場合には、ネットワークストレージ管理装置200は、ファイルではなく、デバイスを識別するためのデバイスID、デバイス内のデータ格納開始アドレスおよびデータサイズを用いてアクセスされる。したがって、プロトコル変換部213は、SANのデバイスを内部のファイルに対応させ、デバイス内のデータ格納開始アドレスをファイルの先頭からのアドレスに対応させることによって、SANのプロトコルと内部プロトコルの変換をおこなう。
ファイル管理部214は、ストレージ500〜700にデータが格納されるファイルを管理する処理部であり、クライアント10〜30からの要求に基づいて、ファイルの作成、読み込み、更新、削除などの処理をおこなう。
領域割当部215は、ファイル管理部214からの空き領域割当要求に基づいて、ストレージ500〜700から必要な大きさの空き領域を確保する処理部であり、プール領域221に記憶されたデータを用いて空き領域を探し出す。また、この領域割当部215は、確保した領域に基づいてファイルスペース22を更新する。
領域開放部216は、ファイル管理部214からの使用領域開放要求に基づいて、ストレージ500〜700の使用領域を開放する処理部であり、ファイルスペース222に記憶されたデータを用いて開放する領域の管理情報を取得し、取得した管理情報を用いて開放した領域を空き領域として再利用できるようにプール領域221を更新する。また、領域開放部216は、開放した領域に基づいてファイルスペース22を更新する。
ストレージインタフェース部217は、ストレージ500〜700へのファイルデータの書き込みおよびストレージ500〜700からのファイルデータの読み出しをおこなう処理部であり、ファイル管理部214によって指定されたアドレスに基づいてデータの書き込みおよび読み出しをおこなう。
プール領域221は、の空き領域を管理するためのデータを記憶した記憶部であり、ファイルスペース222は、ストレージ500〜700の使用領域を管理するためのデータを記憶した記憶部である。
まず、プール領域221について詳細に説明する。第2図は、プール領域221のデータ構造の一例を示す図である。同図に示すように、このプール領域221は、エクステントをノードとするB-Tree(Balanced multiway search Tree)を用いて、空き領域を管理するデータを記憶している。ここで、エクステントとは、ストレージ500〜700の部分領域の先頭アドレスを示すオフセットと部分領域の大きさを示すサイズを対としたデータである。すなわち、このネットワークストレージ管理装置200は、各ストレージを複数の可変長部分領域の集合として管理し、各可変長部分領域を、エクステントを用いて管理している。
図2において、エクステント201は、各ストレージの空き領域を管理するB-Treeの最上位ノードであり、このエクステント201によって識別される空き領域は、オフセットが0x1500であり、サイズが10であることを示している。ここで、0xは16進数を示し、サイズは8KBを単位としている。すなわち、サイズが10であることは、空き領域の大きさが80KBであることを示している。
このエクステント201は、子供のノードとして左側にオフセットの値が自分より小さいエクステント202および203を有し、右側にオフセットの値が自分より大きなエクステント204および205を有する。すなわち、エクステント202および203のオフセットは、それぞれ0x0100および0x1000であり、エクステント201のオフセット0x1500より小さい。また、エクステント204および205のオフセットは、それぞれ0x2000および0x3000であり、エクステント201のオフセット0x1500より大きい。
このように、各ストレージの空き領域を、オフセットをキーとするB-Treeで管理することによって、各ストレージを柔軟に管理することが可能となる。また、各ストレージは、最初に全体が一つの空き領域として管理され、たとえば、10GBのハードディスクはオフセットが0x0であり、サイズが10GB/8KB=1280である一つのエクステントで管理される。そして、領域割当部215は、各ストレージの先頭から必要な大きさの空き領域を割り当てていき、途中で領域開放部216によって開放された不連続な空き領域が発生すると、部分空き領域に対応してエクステントを作成し、各部分空き領域のオフセットをキーとしてB-Treeを形成していく。
次に、ファイルスペース222について詳細に説明する。第3図は、ファイルスペース222のデータ構造の一例を示す図である。同図(a)は、ファイルスペース全体の構造を示し、同図(b)は、各ノードの構成を示す。同図(a)に示すように、このファイルスペース222は、ディレクトリおよびファイルをノードとするTreeを用いてファイルを管理するデータを記憶している。
また、同図(b)に示すように、各ノードは、ノードがディレクトリであるかファイルであるかの区別を示すdef、名前を示すname、種類を示すkind、更新時刻を示すtime、大きさを示すsize、ポリシ属性を示すpolicy、RAID属性を示すRAID、ノードがファイルである場合にデータの格納場所を示すpointerを有する。
ここで、ポリシ属性とは、ディレクトリまたはファイルを特定のストレージに記憶するなどのポリシ制御に用いるデータであり、ディレクトリにポリシ属性が定義された場合には、そのポリシ属性が下位のディレクトリおよびファイルに引き継がれる。また、RAID属性とは、ファイルシステムの信頼性を向上するために用いるデータである。具体的には、RAID属性がRAID0である場合には、データを複数のストレージに分割して格納し、RAID属性がRAID1である場合には、データの複製を作成して別のストレージに格納し、RAID属性がRAID5である場合には、データを複数のストレージに分割して格納し、さらに分割したデータ同士の排他的論理和をとり、その結果を別のストレージに格納する。
また、ポリシ属性とRAID属性を組み合わせることによって、データのバックアップ機能を容易に実現することができる。すなわち、ポリシ属性をRAID1とし、二つのストレージの片方を常に特定のストレージとすることにより、そのストレージをバックアップ用に用いることができる。また、バックアップ用ストレージに空き領域がなくなった場合には、新たにストレージを追加することによって、既存のデータ格納部分には影響を与えることなく容易に空き領域を確保することが可能となる。
pointerは、このノードがファイルである場合に、そのデータを格納するストレージの場所を示すポインタである。ファイルのデータ領域は、空き領域と同じように、データを格納した複数の部分領域から構成され、各部分領域を識別するエクステントをノードとするB-Treeによって管理される。そして、pointerはこのB-Treeの先頭のエクステントを指定している。
次に、第1図に示した領域割当部215の処理手順について説明する。第4図は、領域割当部215の処理手順を示すフローチャートである。同図に示すように、この領域割当部215は、まず、直前の領域割当要求が同じファイルに対する要求であるか否かを調べ(ステップS401)、同じファイルに対する要求である場合には、できるだけ連続した領域を割り当てるために、直前に割り当てた領域に連続する領域の有無を、エクステントを用いて調べる(ステップS402)。その結果、連続する領域がある場合には、その領域を割り当てる(ステップS408)。
これに対して、連続する領域がない場合および直前の領域割当要求が同じファイルに対する要求でない場合には、ポリシの有無を調べ(ステップS403)、ポリシがあれば、そのポリシで指定されたストレージの空きの有無を調べ(ステップS404)、ストレージに空きがあれば、その空き領域を割り当てる(ステップS408)。一方、ポリシで指定されたストレージに空きがない場合およびポリシがない場合には、空き領域の最も多いストレージを検索し(ステップS405)、空きがあれば、その空き領域を割り当てる(ステップS408)。また、どのストレージにも空き領域がない場合には、領域割当の要求元にエラー通知をおこなう(ステップS407)。
次に、第1図に示した領域開放部216の処理手順について説明する。第5図は、第1図に示した領域開放部216の処理手順を示すフローチャートである。同図に示すように、この領域開放部216は、開放された領域を管理するB-Treeから順にエクステントを取り出す(ステップS501)。そして、プール領域221を検索し(ステップS502)、プール領域のエクステントおよび開放されたエクステントのオフセットと長さを用いて、開放された領域と連続する空き領域の有無を調べ(ステップS503)、連続する領域がある場合には、二つのエクステントを一つに融合する(ステップS504)。
そして、エクステントをプール領域のB-Treeに繋ぎ直し(ステップS505)、開放された領域の全てのエクステントの処理が終了したか否かを調べ(ステップS506)、終了していない場合にはステップS501に戻り、次のエクステントを処理する。また、全てのエクステントの処理が終了した場合には、領域開放の処理を終了する。
上述したように、本実施の形態では、ストレージ500〜700の空き領域を管理するためのデータをB-Treeを用いてプール領域221に記憶し、ストレージ500〜700の使用領域を管理するためのデータをB-Treeを用いてファイルスペース222に記憶し、領域割当部215がプール領域221を用いて空き領域の割当をおこない、領域開放部216が開放された領域を、ファイルスペース222を用いて空き領域とすることとしたので、NASおよびSANのデータを一元的に管理するとともに、拡張が容易で運用負担が少ないストレージシステムを構築することができる。
また、本実施の形態では、ネットワークドライバ211がNASの通信プロトコルを用いてクライアント10および30と通信し、ストレージネットワークドライバ212がSANの通信プロトコルを用いてクライアント20と通信し、プロトコル変換部213がNASおよびSANの通信プロトコルと内部プロトコルの変換をおこない、ファイル管理部214が内部プロトコルに変換されたクライアントからの要求に基づいてファイルを管理することとしたので、NASとSANが混在するストレージシステムを構築することができる。
また、本実施の形態では、ファイルスペース222にファイルのポリシ属性およびRAID属性を記憶することとしたので、バックアップが容易で信頼性の高いストレージシステムを構築することができる。
なお、本実施の形態では、ネットワークストレージ管理装置について説明したが、このネットワークストレージ管理装置が有する構成をソフトウェアによって実現することで、同様の機能を有するネットワークストレージ管理プログラムを得ることができる。そこで、このネットワークストレージ管理プログラムを実行するコンピュータシステムについて説明する。
第6図に示すコンピュータシステム100は、本体部101、本体部101からの指示により表示画面102aに画像等の情報を表示するディスプレイ102、このコンピュータシステム100に種々の情報を入力するためのキーボード103、ディスプレイ102の表示画面102a上の任意の位置を指定するマウス104、ローカルエリアネットワーク(LAN)106または広域エリアネットワーク(WAN)に接続するLANインタフェース、インターネットなどの公衆回線107に接続するモデム105が備えられている。ここで、LAN106は、ほかのコンピュータシステム(PC)111、サーバ112、プリンタ113等とコンピュータシステム100とを接続している。また、第7図に示すように、本体部101は、CPU121、RAM122、ROM123、ハードディスクドライブ(HDD)124、CD−ROMドライブ125、FDドライブ126、I/Oインタフェース127およびLANインタフェース128を備えている。
このコンピュータシステム100においてネットワークストレージ管理プログラムを実行する場合、フロッピィディスク(FD)108、CD−ROM109、DVDディスク、光磁気ディスク、ICカード等の可搬型記憶媒体、モデム105およびLANインタフェースを利用し回線を介して接続されたサーバ112のデータベース、あるいは、ほかのコンピュータシステム(PC)111のデータベースに格納等の記憶媒体に記憶されたネットワークストレージ管理プログラムをコンピュータシステム100にインストールする。インストールされたネットワークストレージ管理プログラムは、HDD124に記憶され、RAM122、ROM123などを利用してCPU121により実行される。ここで、記憶媒体とは、CD−ROM109、フロッピィディスク108、DVDディスク、光磁気ディスク、ICカード等の可搬型記憶媒体やコンピュータシステム100の内外に備えられたハードディスク124等の記憶装置のほか、LAN106を介して接続されたインストール元のネットワークストレージ管理プログラムを保持するサーバ112のデータベース、あるいは、ほかのコンピュータシステム111並びにそのデータベースや、さらに公衆回線107上の伝送媒体をも含むものである。
以上のように、本発明に係るネットワークストレージ管理装置、ネットワークストレージ管理プログラムおよびネットワークストレージ管理方法は、大規模なデータをサーバから独立して効率良く統合管理する必要があるストレージシステムに適している。
本発明の実施の形態に係るストレージシステムのシステム構成を示す図である。 プール領域のデータ構造の一例を示す図である。 ファイルスペースのデータ構造の一例を示す図である。 第1図に示した領域割当部の処理手順を示すフローチャートである。 第1図に示した領域開放部の処理手順を示すフローチャートである。 本実施の形態に係るネットワークストレージ管理プログラムを実行するコンピュータシステムを示す図である。 第6図に示した本体部の機能構成を示す機能ブロック図である。

Claims (21)

  1. ネットワークにストレージを接続してデータを統合管理するストレージシステムに用いるネットワークストレージ管理装置であって、
    クライアントとLANを介してNFSプロトコルを用いて通信する第一の通信手段と、
    クライアントとストレージネットワークを介してSCSIプロトコルを用いて通信する第二の通信手段と、
    前記第一の通信手段がクライアントとの通信に用いるNFSプロトコルをファイルを単位とする内部のアクセスプロトコルである内部プロトコルに変換し、前記第二の通信手段がクライアントとの通信に用いるSCSIプロトコルを、デバイスをファイルに対応させ、デバイス内のデータ格納開始アドレスをファイルの先頭からのアドレスに対応させることによって前記内部プロトコルに変換するプロトコル変換手段と、
    前記プロトコル変換手段により内部プロトコルに変換されたクライアント要求に基づいて、前記ストレージに記憶されるファイルを管理するファイル管理手段とを備え、
    前記ファイル管理手段は、前記ストレージを部分領域の集まりとして管理し、
    各部分領域を識別する識別子のうち空き部分領域の識別子を集めて空き部分領域情報として記憶した空き部分領域情報記憶手段と、
    前記空き部分領域情報記憶手段により記憶された空き部分領域情報を用いて空き領域を確保し、該空き領域を構成する部分領域の識別子を前記空き部分領域情報から取り除いて該空き領域を使用領域とする領域割当手段と、
    不要となった使用領域を構成する部分領域の識別子を前記空き部分領域情報に加え、該使用領域を空き領域として開放する領域開放手段と、
    を備えたことを特徴とするネットワークストレージ管理装置。
  2. 前記ファイルのデータ格納領域を構成する部分領域の識別子を集めて使用部分領域情報としてファイル情報とともに記憶した使用部分領域情報記憶手段をさらに備え、
    前記領域割当手段は、ファイルのデータ格納領域を確保し、前記領域開放手段は、不要となったファイルのデータ格納領域を空き領域として開放することを特徴とする請求の範囲第1項に記載のネットワークストレージ管理装置。
  3. 前記領域割当手段は、前記プロトコル変換手段によりプロトコルが変換された空き領域確保要求に基づいて空き領域を確保し、前記領域開放手段は、前記プロトコル変換手段によりプロトコルが変換された不要領域開放要求に基づいて不要となったデータ格納領域を空き領域として開放することを特徴とする請求の範囲第1項または第2項に記載のネットワークストレージ管理装置。
  4. 前記識別子は、部分領域の先頭アドレスと該部分領域の大きさを有し、前記領域割当手段は、前記部分領域の大きさを用いて必要な大きさのデータ格納領域を確保することを特徴とする請求の範囲第1項または第2項に記載のネットワークストレージ管理装置。
  5. 前記識別子は、使用部分領域情報に記憶された場合には、ストレージを識別する識別データをさらに有し、該使用部分領域情報は、複数のストレージに分散する部分領域の識別子を集めて記憶することを特徴とする請求の範囲第2項に記載のネットワークストレージ管理装置。
  6. 前記空き部分領域情報記憶手段により記憶された空き部分領域情報および前記使用部分領域情報記憶手段により記憶された使用部分領域情報は、前記先頭アドレスをキーとするB-Treeを用いて記憶されたことを特徴とする請求の範囲第2項に記載のネットワークストレージ管理装置。
  7. 前記ファイル情報は、ファイルに対するポリシ制御情報およびRAID情報を有し、該ポリシ情報およびRAID情報に基づいて前記ストレージにファイルのバックアップを作成するバックアップ作成手段をさらに備えたことを特徴とする請求の範囲第2項に記載のネットワークストレージ管理装置。
  8. ネットワークにストレージを接続してデータを統合管理するストレージシステムに用いるネットワークストレージ管理装置に内蔵されたコンピュータで実行されるネットワークストレージ管理プログラムであって、
    クライアントとLANを介してNFSプロトコルを用いて通信する第一の通信手順と、
    クライアントとストレージネットワークを介してSCSIプロトコルを用いて通信する第二の通信手順と、
    前記第一の通信手順がクライアントとの通信に用いるNFSプロトコルをファイルを単位とする内部のアクセスプロトコルである内部プロトコルに変換し、前記第二の通信手順がクライアントとの通信に用いるSCSIプロトコルを、デバイスをファイルに対応させ、デバイス内のデータ格納開始アドレスをファイルの先頭からのアドレスに対応させることによって前記内部プロトコルに変換するプロトコル変換手順と、
    前記プロトコル変換手順により内部プロトコルに変換されたクライアント要求に基づいて、前記ストレージに記憶されるファイルを管理するファイル管理手順とをコンピュータに実行させ、
    前記ファイル管理手順は、前記ストレージを部分領域の集まりとして管理し、
    各部分領域を識別する識別子のうち空き部分領域の識別子を集めて空き部分領域情報として管理する空き部分領域情報管理手順と、
    前記空き部分領域情報管理手順により管理された空き部分領域情報を用いて空き領域を確保し、該空き領域を構成する部分領域の識別子を前記空き部分領域情報から取り除いて該空き領域を使用領域とする領域割当手順と、
    不要となった使用領域を構成する部分領域の識別子を前記空き部分領域情報に加え、該使用領域を空き領域として開放する領域開放手順と、
    前記コンピュータに実行させることを特徴とするネットワークストレージ管理プログラム。
  9. 前記ファイルのデータ格納領域を構成する部分領域の識別子を集めて使用部分領域情報としてファイル情報とともに管理する使用部分領域情報管理手順をさらにコンピュータに実行させ、
    前記領域割当手順は、ファイルのデータ格納領域を確保し、前記領域開放手順は、不要となったファイルのデータ格納領域を空き領域として開放することを特徴とする請求の範囲第8項に記載のネットワークストレージ管理プログラム。
  10. 前記領域割当手順は、前記プロトコル変換手順によりプロトコルが変換された空き領域確保要求に基づいて空き領域を確保し、前記領域開放手順は、前記プロトコル変換手順によりプロトコルが変換された不要領域開放要求に基づいて不要となったデータ格納領域を空き領域として開放することを特徴とする請求の範囲第8項または第9項に記載のネットワークストレージ管理プログラム。
  11. 前記識別子は、部分領域の先頭アドレスと該部分領域の大きさを有し、前記領域割当手順は、前記部分領域の大きさを用いて必要な大きさのデータ格納領域を確保することを特徴とする請求の範囲第8項または第9項に記載のネットワークストレージ管理プログラム。
  12. 前記識別子は、使用部分領域情報として管理される場合には、ストレージを識別する識別データをさらに有し、該使用部分領域情報は、複数のストレージに分散する部分領域の識別子を集めて管理することを特徴とする請求の範囲第9項に記載のネットワークストレージ管理プログラム。
  13. 前記空き部分領域情報管理手順により管理される空き部分領域情報および前記使用部分領域情報管理手順により管理される使用部分領域情報は、前記先頭アドレスをキーとするB-Treeを用いて管理されることを特徴とする請求の範囲第9項に記載のネットワークストレージ管理プログラム。
  14. 前記ファイル情報は、ファイルに対するポリシ制御情報およびRAID情報を有し、該ポリシ情報およびRAID情報に基づいて前記ストレージにファイルのバックアップを作成するバックアップ作成手順をさらにコンピュータに実行させることを特徴とする請求の範囲第9項に記載のネットワークストレージ管理プログラム。
  15. ネットワークにストレージを接続してデータを統合管理するストレージシステムに用いるネットワークストレージ管理方法であって、
    クライアントとLANを介してNFSプロトコルを用いて通信する第一の通信工程と、
    クライアントとストレージネットワークを介してSCSIプロトコルを用いて通信する第二の通信工程と、
    前記第一の通信工程がクライアントとの通信に用いるNFSプロトコルをファイルを単位とする内部のアクセスプロトコルである内部プロトコルに変換し、前記第二の通信工程がクライアントとの通信に用いるSCSIプロトコルを、デバイスをファイルに対応させ、デバイス内のデータ格納開始アドレスをファイルの先頭からのアドレスに対応させることによって前記内部プロトコルに変換するプロトコル変換工程と、
    前記プロトコル変換工程により内部プロトコルに変換されたクライアント要求に基づいて、前記ストレージに記憶されるファイルを管理するファイル管理工程とを含み、
    前記ファイル管理工程は、前記ストレージを部分領域の集まりとして管理し、
    各部分領域を識別する識別子のうち空き部分領域の識別子を集めて空き部分領域情報として管理する空き部分領域情報管理工程と、
    前記空き部分領域情報管理工程により管理された空き部分領域情報を用いて空き領域を確保し、該空き領域を構成する部分領域の識別子を前記空き部分領域情報から取り除いて該空き領域を使用領域とする領域割当工程と、
    不要となった使用領域を構成する部分領域の識別子を前記空き部分領域情報に加え、該使用領域を空き領域として開放する領域開放工程と、
    を含んだことを特徴とするネットワークストレージ管理方法。
  16. 前記ファイルのデータ格納領域を構成する部分領域の識別子を集めて使用部分領域情報としてファイル情報とともに管理する使用部分領域情報管理工程をさらに含み、
    前記領域割当工程は、ファイルのデータ格納領域を確保し、前記領域開放工程は、不要となったファイルのデータ格納領域を空き領域として開放することを特徴とする請求の範囲第15項に記載のネットワークストレージ管理方法。
  17. 前記領域割当工程は、前記プロトコル変換工程によりプロトコルが変換された空き領域確保要求に基づいて空き領域を確保し、前記領域開放工程は、前記プロトコル変換工程によりプロトコルが変換された不要領域開放要求に基づいて不要となったデータ格納領域を空き領域として開放することを特徴とする請求の範囲第15項または第16項に記載のネットワークストレージ管理方法。
  18. 前記識別子は、部分領域の先頭アドレスと該部分領域の大きさを有し、前記領域割当工程は、前記部分領域の大きさを用いて必要な大きさのデータ格納領域を確保することを特徴とする請求の範囲第15項または第16項に記載のネットワークストレージ管理方法。
  19. 前記識別子は、使用部分領域情報として管理される場合には、ストレージを識別する識別データをさらに有し、該使用部分領域情報は、複数のストレージに分散する部分領域の識別子を集めて管理することを特徴とする請求の範囲第16項に記載のネットワークストレージ管理方法。
  20. 前記空き部分領域情報管理工程により管理される空き部分領域情報および前記使用部分領域情報管理工程により管理される使用部分領域情報は、前記先頭アドレスをキーとするB-Treeを用いて管理されることを特徴とする請求の範囲第16項に記載のネットワークストレージ管理方法。
  21. 前記ファイル情報は、ファイルに対するポリシ制御情報およびRAID情報を有し、該ポリシ情報およびRAID情報に基づいて前記ストレージにファイルのバックアップを作成するバックアップ作成工程をさらに含んだことを特徴とする請求の範囲第16項に記載のネットワークストレージ管理方法。
JP2004521116A 2002-07-16 2002-07-16 ネットワークストレージ管理装置、ネットワークストレージ管理プログラムおよびネットワークストレージ管理方法 Expired - Fee Related JP4185492B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2002/007222 WO2004008322A1 (ja) 2002-07-16 2002-07-16 ネットワークストレージ管理装置、ネットワークストレージ管理プログラムおよびネットワークストレージ管理方法

Publications (2)

Publication Number Publication Date
JPWO2004008322A1 JPWO2004008322A1 (ja) 2005-11-10
JP4185492B2 true JP4185492B2 (ja) 2008-11-26

Family

ID=30022658

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004521116A Expired - Fee Related JP4185492B2 (ja) 2002-07-16 2002-07-16 ネットワークストレージ管理装置、ネットワークストレージ管理プログラムおよびネットワークストレージ管理方法

Country Status (2)

Country Link
JP (1) JP4185492B2 (ja)
WO (1) WO2004008322A1 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4477365B2 (ja) 2004-01-29 2010-06-09 株式会社日立製作所 複数インタフェースを有する記憶装置、および、その記憶装置の制御方法
CN100385853C (zh) * 2004-04-01 2008-04-30 顺昱科技股份有限公司 整合储存接口及网络功能的装置及其运作方法
US7603532B2 (en) 2004-10-15 2009-10-13 Netapp, Inc. System and method for reclaiming unused space from a thinly provisioned data container
JP4574408B2 (ja) * 2005-03-24 2010-11-04 株式会社日立製作所 記憶装置システムの制御技術
JP4723921B2 (ja) * 2005-06-13 2011-07-13 株式会社日立製作所 記憶制御装置及びその制御方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001331360A (ja) * 2000-05-24 2001-11-30 Nec Corp ファイルアクセス処理装置

Also Published As

Publication number Publication date
WO2004008322A1 (ja) 2004-01-22
JPWO2004008322A1 (ja) 2005-11-10

Similar Documents

Publication Publication Date Title
US6766430B2 (en) Data reallocation among storage systems
TWI421692B (zh) 具有資料夾分享功能的虛擬媒體之系統及其執行方法
US8219639B2 (en) Storage area network file system
US7743111B2 (en) Shared file system
US8086652B1 (en) Storage system-based hole punching for reclaiming unused space from a data container
US7574464B2 (en) System and method for enabling a storage system to support multiple volume formats simultaneously
JP4943081B2 (ja) ファイル格納制御装置及び方法
US7546307B2 (en) Virtual block storage to filesystem translator
US8650381B2 (en) Storage system using real data storage area dynamic allocation method
US20090043971A1 (en) Data integrity for data storage devices shared by multiple hosts via a network
JP2004178289A (ja) スナップショット取得方法、ディスク装置及びストレージシステム
US20080320258A1 (en) Snapshot reset method and apparatus
JP2002082775A (ja) 計算機システム
JP2010097359A (ja) ファイル管理方法および階層管理ファイルシステム
US20050120037A1 (en) Apparatus and method for managing network storage, and computer product
JP2008146212A (ja) 共有ディレクトリの設定情報を変更する方法、及びファイルサーバ装置
US9727588B1 (en) Applying XAM processes
JP4185492B2 (ja) ネットワークストレージ管理装置、ネットワークストレージ管理プログラムおよびネットワークストレージ管理方法
JP4327869B2 (ja) 分散ファイルシステム、分散ファイルシステムサーバ及び分散ファイルシステムへのアクセス方法
JP2004252957A (ja) 分散ファイルシステムのファイルレプリケーション方法及び装置
JP4005102B2 (ja) ゲートウェイ装置
JP2008027459A (ja) 計算機システム

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080311

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080509

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080617

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080807

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: 20080902

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: 20080905

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

Free format text: PAYMENT UNTIL: 20110912

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20120912

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120912

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130912

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees