JP2007072683A - ストレージ装置及びデータ移動方法 - Google Patents

ストレージ装置及びデータ移動方法 Download PDF

Info

Publication number
JP2007072683A
JP2007072683A JP2005257987A JP2005257987A JP2007072683A JP 2007072683 A JP2007072683 A JP 2007072683A JP 2005257987 A JP2005257987 A JP 2005257987A JP 2005257987 A JP2005257987 A JP 2005257987A JP 2007072683 A JP2007072683 A JP 2007072683A
Authority
JP
Japan
Prior art keywords
information
migration
storage device
time
clock
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.)
Granted
Application number
JP2005257987A
Other languages
English (en)
Other versions
JP4699842B2 (ja
Inventor
Yosuke Ishii
陽介 石井
Hironori Tsuji
浩徳 辻
Yoji Nakatani
洋司 中谷
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2005257987A priority Critical patent/JP4699842B2/ja
Priority to US11/256,944 priority patent/US20070055714A1/en
Publication of JP2007072683A publication Critical patent/JP2007072683A/ja
Application granted granted Critical
Publication of JP4699842B2 publication Critical patent/JP4699842B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/1805Append-only file systems, e.g. using logs or journals to store data
    • G06F16/181Append-only file systems, e.g. using logs or journals to store data providing write once read many [WORM] semantics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/11File system administration, e.g. details of archiving or snapshots
    • G06F16/122File system administration, e.g. details of archiving or snapshots using management policies
    • G06F16/125File system administration, e.g. details of archiving or snapshots using management policies characterised by the use of retention policies

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】
計算機システムに格納された情報資源の保管期間がマイグレーション先で保証可能なことを確認した上で、マイグレーションを実行する計算機システムを提供する。
【解決手段】
制御部と、データを格納する記憶装置と、時間の情報を管理する時間情報部と、を備えたストレージ装置において、制御部は、ネットワークを介して接続された他のストレージ装置から第1の時間の情報を取得し、時間情報部から第2の時間の情報を取得し、第1及び第2の時間の情報の差分値を算出し、算出された差分値が予め定めた閾値よりも小さい場合に、記憶装置に格納されたデータを他のストレージ装置に移動させる。
【選択図】 図7

Description

本発明は、計算機システムに格納された情報資源のマイグレーション制御に関するものである。
従来から、コンピュータシステムにおいて、当該システムを運用する筐体上に保管されている情報資源を、その情報資源の運用途中において、別筐体に情報資源を移行して、移行先においてその情報資源を用いて運用を継続するための方法が提供されている。これをマイグレーションと呼ぶ。このマイグレーションのための方法は、コンピュータシステムの更新に伴う機器の入れ替えの際に必須となる。情報資源を別筐体にマイグレーションさせる際は、当該情報資源の運用時における処理の整合性を、マイグレーション先においても保証する必要がある。そのために、マイグレーション元とマイグレーション先における時計情報の整合性を保証する必要がある。
時計情報の整合性を保証する仕組みとして、例えば、コンピュータシステムにおいて、当該システムが時計情報取得に利用するシステム時計に対する不正な改ざん処理を検出することで、時計情報の整合性を損なう処理を抑止する技術が開示されている(特許文献1参照。)。一方、時間情報の整合性が重要なデータとして、WORM(Write Once Read Many)形式のデータがある。WORM形式のデータは、一般に長期の保管期間が前提となっている。この長期の保管期間を保証するために、WORM形式のデータを含む情報資源を別筐体にマイグレーションすることが必須となる。
米国特許出願公開第2004/0128549号明細書
WORM形式のデータをコンピュータシステム間でマイグレーションするためには、コンピュータシステム間での時間情報の整合性を保証しなければならない。しかし、特許文献1記載の技術では、コンピュータシステムにおける情報資源を別筐体にマイグレーションする時点において、マイグレーション先における時計情報がマイグレーション元の時計情報との整合性を保証するという内容は記載されていない。
長期の保管期間の保証には、別筐体に情報資源をマイグレーションすることが必須である。すなわち、マイグレーション先のコンピュータシステムでもWORM資源の保管期間を継続して保証できるようにしなければならない。したがって、WORM資源の長期保管を保証するためには、当該WORM資源をマイグレーションするときにおいて、マイグレーション元とマイグレーション先との時計情報の整合性を保証する技術が必須となる。
そこで、本発明では、コンピュータシステム間でのマイグレーションを行う際に、マイグレーション元とマイグレーション先とでさまざまな属性情報の整合性を保証できるマイグレーション方式を提供することを目的とする。
前記の課題を解決するために、本発明では、ストレージ装置間で情報資源を移動させる際に、移動先となる他のストレージ装置の時間の情報を補正して、情報資源を移動させることを特徴とする。
本発明によると、WORM資源をストレージ装置間でマイグレーションする際に、移動先となるストレージ装置の時計の情報を補正することによって、情報資源の属性の整合性を保証できる。これにより、当該情報資源のマイグレーションにより生じた時間のずれに起因する不正な改ざんや不必要な削除が防止できる。
以下、本発明の実施の形態について、図面を参照して説明する。
図1は、本発明の実施の形態の計算機システムの構成ブロック図である。
本実施の形態の計算機システムでは、WORM等の情報資源を保管し、保管された情報資源をストレージノード間でマイグレーションすることができる。マイグレーションとは、別筐体に情報資源を移行して、移行先においてその情報資源を用いて運用を継続することである。この計算機システムは、ストレージノード1、2、3及び管理サーバ11によって構成される。各ストレージノード1、2、3と管理サーバ11とは、ネットワーク10を介して接続されている。なお、ストレージノード1、2、3の間のみを接続する個別ネットワークを別途設ける構成でもよい。
ストレージノード1、2、3は、データ等の情報資源を格納する。ストレージノードとは、ストレージを備え、そのストレージに格納されているデータ等の情報資源を運用するための計算機、コンピュータまたはサーバであって、ネットワーク上で少なくとも一の識別子によって特定できる装置である。
このストレージノード1、2、3は、格納する情報資源を管理するために、それぞれの情報資源に対応した制御を行う。また、ストレージノード1、2、3は、それぞれが格納している情報資源を、計算機システム内の別のストレージノード1、2、3にマイグレーションをすることが可能である。また、ストレージノード1、2、3は、データのWORMに関する設定をする。この制御によって保護されている情報資源(以降、WORM資源と呼ぶ)を提供可能である。そして、ストレージノード1、2、3は、当該WORM資源も、計算機システム内の別のストレージノード1、2、3にマイグレーション可能である。
管理サーバ11は、計算機システムのストレージノード1、2、3を管理するサーバである。特に、管理サーバ11は、情報資源をマイグレーションする場合に、マイグレーションポリシーの設定要求や各マイグレーション対象情報資源に対するマイグレーション許容範囲値の設定要求を発行する。なお、管理サーバ11は、ストレージノード1、2、3と同一の筐体で実現される構成でもよい。
図2は、ストレージノード1、2、3のハードウェアの構成ブロック図である。
ここでは、ストレージノード1を例に説明するが、他のストレージノード2、3も同様の構成である。
ストレージノード1は、プログラムを実行するプロセッサ20と、プログラム及びデータを一時的に格納するメモリ30と、プログラム及びデータを永続的に格納可能な記憶装置40と、記憶装置にアクセスするための記憶装置I/F50と、ネットワーク10を介して接続された他装置にアクセスするためのネットワークI/F60と、時計情報を提供するクロック供給源70と、それらを接続するバス134を含んで構成される。
プロセッサ20は、メモリ30に格納されているプログラムを読み出して、そのプログラムに規定された処理を実行する。
メモリ30は、記憶装置I/Fを制御するプログラムである記憶装置I/F制御80と、ネットワークI/Fを制御するプログラムであるネットワークI/F制御90と、時計情報を制御するプログラムである時計制御100と、WORM資源の保管期間満了を確認するために利用する時計情報を制御するプログラムであるWORM時計制御110と、情報資源のマイグレーションを制御するプログラムである資源マイグレーション制御120と、当該ストレージノードにて格納される各情報資源を制御するプログラムである資源制御130を格納する。
時計制御100は、時計値管理101と、時計値制御102との二つのプログラムを含む。
資源マイグレーション制御120は、マイグレーション実行制御121と、時計情報制御122と、マイグレーション管理123と、時計差分情報管理124との四つのプログラムを含む。
資源制御130は、WORM制御131と、マイグレーション許容範囲制御132と、マイグレーション制御133との三つのプログラムを含む。なお、資源制御130は、複数備えられていてもよい。
ネットワークI/F60は、他のストレージノード及び管理サーバ11とを接続するネットワーク10に接続されている。ストレージノード1は、このネットワークI/F60を制御するプログラムであるネットワークI/F制御90によって、他のストレージノード2、3又は管理サーバ11と通信する。なお、ストレージノード1は、計算機システムがストレージノード1、2、3のみを接続する個別ネットワークを備える場合には、当該個別ネットワークに接続される個別ネットワークI/Fを具備してもよい。
クロック供給源70は、ストレージノード1の時計制御100に対して、時計情報を提供する。時計情報とは、時間を認識できる情報であり、その内容は問わない。例えば、時計の刻みの基準となる情報を提供してもよいし、世界標準時に準じた日時に関する情報を提供してもよい。なお、クロック供給源70は、時計情報を提供できるものであれば、その実現手段は問わない。例えば、時計の刻みを提供する水晶振動子やクロック発信機でもよいし、世界標準時に関する情報を外部から受信する通信機でもよい。
時計制御100は、時計情報を格納するプログラムである時計値管理101と、当該時計情報を操作するプログラムである時計値制御102を含む。
時計値制御102は、クロック供給源70より時計情報を取得して、時計値管理101にその情報を設定する。
時計値管理101は、この情報によって設定された時計情報を管理する。
時計値制御102は、時計値管理101によって管理されている時計情報を定期的に更新する。また、時計情報を取得する。また、時計情報を指定された時計情報に変更する。
時計値制御102は、クロック供給源70によって一定間隔に時計情報を取得し、時計情報取得を契機に、時計値管理101によって管理されている時計情報を更新することによって、時計情報を定期的に更新する。
WORM時計制御110は、WORM時計情報を提供する。WORM時計情報とは、WORM資源の保管期間が満了したか否かを確認するために利用される時計情報である。
WORM時計制御110は、対象WORM資源を指定することによって、当該WORM資源に対応したWORM時計情報を提供する。具体的には、WORM時計制御110は、時計制御100の時計値制御102によって時計情報を取得し、時計差分情報管理124によって、WORM資源に対応した時計差分情報を取得し、当該時計情報と当該時計差分情報とを用いて算出した値をWORM時計情報として提供する。
資源マイグレーション制御120は、ストレージノード1における情報資源のマイグレーション処理を制御するプログラムを含む。
マイグレーション実行制御121は、指定された情報資源について、指定されたストレージノード1、2、3へのマイグレーション処理の可否判断をする。そして、指定された情報資源の資源制御130に対して、当該情報資源のマイグレーション処理を依頼する。
時計情報制御122は、他ストレージノードの時計情報を取得し、当該時計情報を設定する。
マイグレーション管理123は、情報資源のマイグレーション処理時に利用される情報を管理する。
時計差分情報管理124は、情報資源のマイグレーション時に、マイグレーション元とマイグレーション先のストレージノードの時計情報がずれていた場合において、時計情報の補正情報を管理する。
マイグレーション実行制御121は、情報資源のマイグレーション処理に先立ち、当該情報資源のマイグレーション処理の可否を判断する。このとき、マイグレーション実行制御121は、マイグレーション管理123に登録されているマイグレーション管理表200の情報及び当該情報資源が持つマイグレーション許容範囲に基づいて可否を判断する。なお詳細な処理手順については後述する。
時計情報制御122は、情報資源のマイグレーション処理に先立ち、当該情報資源のマイグレーション処理の可否を判断するために、マイグレーション先ストレージノードにおける時計情報を取得する。また、時計情報制御122は、マイグレーション処理の可否を判断する際に、マイグレーション先ストレージノードの時計情報の補正が必要である場合に、マイグレーション先ストレージノードの時計情報を更新又は補正する。時計情報の補正は、マイグレーション先ストレージノード上にある時計情報制御122を介して、マイグレーション先ストレージノード上の時計値制御102又は時計差分情報管理124に対して処理を依頼することによって実現する。
資源制御130は、ストレージノード1が格納する情報資源を制御する。具体的には、ボリュームを管理するためのボリューム制御や、ファイルシステムやファイルを管理するためのファイルシステム制御などが含まれ、それぞれの制御に対応するプログラムが独立に存在する。資源制御130は、情報資源に対するWORMに関する設定をするWORM制御131と、情報資源をマイグレーションするとき時計のずれの許容範囲であるマイグレーション許容範囲を管理するマイグレーション許容範囲制御132と、実際に当該情報資源をマイグレーションする処理を提供するマイグレーション制御133とを含む。
WORM制御131は、格納されている情報資源に保管期間を設定し、情報資源をWORM資源の状態に設定する。資源制御130は、WORM制御131によってWORM状態に設定されたWORM資源を、指定した保管期間が満了するまでの間、当該WORM資源に対する改ざんや削除、ならびにWORM状態の解除を防止する。
記憶装置40は、マイグレーション管理123及び時計差分情報管理124によって管理される情報を保存する。また、記憶装置40は、資源制御130によって管理される情報資源の実体の情報も保存する。
この記憶装置40は、一つ以上のディスク装置によって構成されている。この一つ以上のディスク装置からRAID構成によって記憶領域である論理ボリュームが構成される。この論理ボリュームに情報及び情報資源の実体の情報が格納される。
図3は、マイグレーション管理123によって管理されるマイグレーション管理表200の構成を例示する説明図である。
マイグレーション管理表200は、エントリ210と、エントリ220と、エントリ230とを含む。
エントリ210の対象資源識別子は、当該エントリに対応する情報資源の識別情報であり、マイグレーションポリシーを適用する情報資源の識別情報が示される。このエントリ210には、複数の異なる種類の情報資源が登録できる。
エントリ220のマイグレーションポリシーは、対象資源識別子に設定されたマイグレーションポリシーである。マイグレーションポリシーとは、対象の情報資源がマイグレーション可能であるか否か、補正対象が時刻であるか時刻差分情報であるか、又は、マイグレーション試行回数の上限の値は何であるかをストレージノード1の資源マイグレーション制御120に知らせるための情報である。
このエントリ220には、さらにエントリ221とエントリ222とエントリ223とが含まれる。エントリ221のマイグレーション可否には、当該資源をマイグレーションしてもよいか否かの情報が登録される。資源マイグレーション制御120は、マイグレーション管理表200を参照して、マイグレーション否と登録されている情報資源をマイグレーションさせないように制御する。
エントリ222の補正対象には、当該情報資源のマイグレーション処理時に、マイグレーション先ストレージノードの時計情報の補正が必要になった場合において、補正対象となる情報が登録される。この補正対象となる情報には、時計又は時計差分情報が登録される。
このエントリ222の補正対象に「時計」と登録されている場合は、マイグレーション先ストレージノードの時計値管理101の情報を補正する。「時計差分情報」と登録されている場合は、マイグレーション先ストレージノードの時計差分情報管理124に、マイグレーション元のストレージノードとの時計情報の差分を補正情報として登録する。時計差分情報管理124に補正情報が登録されている場合は、当該ストレージノードは、時計制御100が提供する情報と、時計差分情報管理124が提供する差分情報を基に、WORM時計制御110によって補正された時計情報を用いる。
エントリ223のマイグレーション試行回数上限には、当該情報資源のマイグレーション処理を試行する回数の上限値が登録される。マイグレーション処理では、マイグレーションされるストレージノード間の時計情報のずれが当該情報資源のマイグレーション許容範囲の条件に適合しなかった場合は、まず時計情報を補正し、さらに処理を再試行する。このため、エントリ223のマイグレーション試行回数上限は、マイグレーション再試行も含めた試行回数の上限値を定めるために利用される。
エントリ230のマイグレーション試行カウンタは、当該情報資源のマイグレーション処理の際に、マイグレーション処理の試行回数が記録される。マイグレーション実行制御121は、情報資源のマイグレーション処理の試行又は再試行の際に、当該情報資源に対応するマイグレーション試行回数を加算する。エントリ230のマイグレーション試行カウンタが、当該情報資源のエントリに対応するマイグレーション試行回数上限以上になった場合は、当該情報資源のマイグレーション処理をエラーとして終了させる。当該情報資源のマイグレーション処理が終了又はエラー終了したときは、当該情報資源に対応するマイグレーション試行カウンタの値を0に設定する。
図4は、時計差分情報管理124が管理する時計差分情報管理表300の構成を例示する説明図である。
時計差分情報管理表300は、エントリ310と、エントリ320とを含む。
エントリ310の対象資源識別子は、マイグレーションポリシーを適用する資源情報の識別子である。このエントリ310の対象資源識別子には、複数の異なる種類の情報資源が登録できる。
エントリ320の差分情報には、当該情報資源のマイグレーション時におけるマイグレーション元とマイグレーション先とにおける時計情報の差分値が登録される。
資源マイグレーション制御120は、マイグレーション処理において、時計を補正するときに、時計情報制御122を参照して、当該ストレージノード間の時計情報の差分値をマイグレーション先ストレージノードの時計差分情報管理表300に登録する。この差分値として登録する値の単位は、当該システム内にて決められたものを適用する。例えば、差分値を秒単位とする。また、差分値として登録する値の正負の意味は、当該システム内にて決められたものを適用する。例えば、正の値は、当該ストレージノードの時計情報が本来の値より先に進んでいることを意味し、負の値は、本来の値よりも前に戻っていることを意味する。
ストレージノードの情報資源に対してクライアント等からアクセスがあった場合、特に時計差分情報管理表300に差分情報320が登録されている情報資源に対するアクセスがあったときは、WORM時計制御110は、当該差分値を利用して、時計情報を補正する。
ここで、図4に示すように、エントリ310が4000である情報資源の差分情報に+3600が設定されている場合を例に説明する。当該情報資源4000を扱う場合に、時計情報を利用する場合は、WORM時計制御110は、当該ストレージノードの時計値制御102から取得した時計情報から差分値(+3600)の分だけ過去に戻すように補正する。アクセス元のクライアントは、補正された時計値を利用する。特に、WORM資源を扱う場合にこの時計情報の補正が重要となる。なお、詳細な補正処理手順については、後述する。
図5は、管理サーバ11のハードウェア構成を例示する説明図である。
管理サーバ11は、プログラムを実行するプロセッサ20と、プログラム及びデータを一時的に格納するメモリ30と、プログラム及びデータを永続的に格納可能な記憶装置40と、記憶装置にアクセスするための記憶装置I/F50と、ネットワークで接続された他装置にアクセスするためのネットワークI/F60と、それらを接続するバスとを含む。
プロセッサ20は、メモリ30に格納されているプログラムを読み出して、そのプログラムに規定された処理を実行する。
メモリ30は、記憶装置I/Fを制御するプログラムである記憶装置I/F制御80と、ネットワークI/Fを制御するプログラムであるネットワークI/F制御90と、マイグレーションポリシーをマイグレーション管理表200に設定するプログラムであるマイグレーションポリシー設定制御140と、マイグレーション許容範囲を設定するプログラムであるマイグレーション許容範囲設定制御150と、マイグレーション処理開始をマイグレーション実行制御121に要求するプログラムであるマイグレーション要求制御160が格納されている。
なお、前述したマイグレーションポリシー設定制御140、マイグレーション許容範囲設定制御150及びマイグレーション要求制御160は、管理サーバ11ではなくストレージノード1に存在してもよい。すなわち、これらの制御をストレージノード1が提供することによって、管理サーバ11を含まないシステム構成とすることもできる。
また、前述したマイグレーションポリシー設定制御140、マイグレーション許容範囲設定制御150及びマイグレーション要求制御160は、それぞれ別の管理サーバ11上に存在してもよい。すなわち、これらの制御をそれぞれ異なる管理サーバ11によって提供することで、複数の管理サーバ11が存在するシステム構成とすることもできる。
また、管理サーバ11には、前述した資源マイグレーション制御120が存在してもよい。また、前述した時計制御100又はWORM時計制御110が存在してもよい。なお、これらの制御を管理サーバ11に存在させる場合、これらの制御に対し、ストレージノード上に存在する各資源制御からネットワーク10を経由してアクセス可能にする必要がある。
図6は、資源制御130が管理する各情報資源の属性500の構成を例示する説明図である。
この属性500は、情報資源の格納されている記憶装置40に、情報資源と対応付けて格納されている。なお、属性500は、記憶装置40ではなく、メモリ30に格納されていてもよい。
情報資源の属性500は、エントリ510と、エントリ520とを含む。
エントリ510の既存属性は、従来の計算機システムが含む情報資源の属性であり、例えば当該情報資源のアクセス権限や当該情報資源のサイズ等が含まれる。
エントリ520の拡張属性は、さらにエントリ521と、エントリ522と、エントリ523とを含む。なお、これら以外の属性をエントリ520の拡張属性に含めてもよい。
エントリ521のWORM属性には、当該情報資源がWORM状態か否かを識別するための情報が設定される。エントリ521が有効であれば、当該情報資源はWORM状態である。
資源制御130は、エントリ521のWORM属性が有効である情報資源に対しての更新及び削除を抑止する。さらに、後述するエントリ522のWORM保管期間によって示される期間又は期限が満了しない限りWORM状態の解除を抑止する。
エントリ522のWORM保管期間には、当該情報資源のWORM状態が有効である期間が設定される。エントリ522のWORM保管期間に設定される情報は、日数のような期間の形式でもよいし、日時のような期限の形式でもよい。期間が設定されている場合はその期間が満了するまで当該情報資源のWORM属性を無効化(解除)できない。また、期限が設定されている場合は、その期限を迎えるまで当該情報資源のWORM属性を無効化できない。
なお、期間を設定した場合は、当該期間が満了したかどうかを判断するために、当該期間の基点となる時点の時間情報を、エントリ522のWORM保管期間の一要素として別途管理する必要がある。
資源制御130は、エントリ521のWORM属性が有効である限り、エントリ522のWORM保管期間に登録されている保管期間の延長は許す。しかし、保管期間の短縮や削除は許さない。
エントリ523のマイグレーション許容範囲には、当該情報資源のマイグレーション処理におけるマイグレーション許可条件として、マイグレーション元と先とのストレージノードで管理している時計情報の差分値として許容可能な上限値が登録される。
この許容可能な上限値は、当該情報資源のWORM保管期間や、当該情報資源を格納するストレージシステムの時計の精度等を考慮して予め設定しておく。例えば、WORM保管期間が時、分、秒といった単位で設定されている場合は、数分(図6の例では5分)程度に設定する。また、WORM保管期間が、年、月、日といった単位で設定されている場合は、数時間程度または数日に設定する。
資源マイグレーション制御120は、マイグレーション処理においてストレージノード間の時計情報の差分値を算出する。そして、その値が当該マイグレーション許容範囲523の値以下であればマイグレーション処理を許可する。一方、その値がマイグレーション許容範囲523の値を超えていればマイグレーション処理を禁止する。
なお、この属性500の管理方法として、資源制御130が、全ての情報資源の属性500を一括して保存して管理してもよいし、資源制御130が、各情報資源毎に属性500を保存して、それぞれを個別に管理してもよい。
次に、WORM資源のマイグレーション処理について説明する。
本実施形態の計算機システムでは、マイグレーション対象の情報資源をマイグレーションするときに、まず、当該マイグレーション対象の情報資源のマイグレーションポリシーがマイグレーション可能であるかを判定する。マイグレーション可能であれば、次に、マイグレーション先のストレージノードと自ストレージノードとの時計値を取得し、その時計値の差分値を比較する。差分値が許容範囲内であればマイグレーション対象の情報資源のマイグレーションを実行し、許容範囲内でなければ、マイグレーション先ストレージノードの時計値を補正する。
図7は、WORM資源のマイグレーション処理の概要を示す説明図である。
図1に示すように、本実施形態の計算機システムは、ストレージノード1、ストレージノード2及び管理サーバ11を含む。以降、WORM資源のマイグレーション処理において、管理サーバ11からの要求に基づいて、ストレージノード1に存在するファイル3000をストレージノード2にマイグレーションする処理を説明する。
図7において、ストレージノード1は、ファイル3000、ファイルシステム4000及びボリューム5000の少なくとも一つを情報資源として管理し、格納している。各情報資源には、前述した情報資源の拡張属性であるエントリ520に、WORM属性、WORM保管期間及びマイグレーション許容範囲が設定されている。また、資源マイグレーション制御1120が、図3に示す構成のマイグレーション管理表1200及び図4に示す構成の時計差分情報管理表1300を管理している。また、ストレージノード1は、時計制御100が提供する時計値1400及びWORM時計制御110が提供するWORM時計値1500を利用して、WORM資源に対応した時計値を得る。
ここでは、ストレージノード1において、ファイル3000に対するマイグレーション操作の処理を説明する。本処理を実行する際に、時計情報が必要となる場合には、WORM時計制御110が提供するWORM時計値1500を利用する。この場合、WORM時計制御110は、ストレージノード1の時計値1400と時計差分情報管理表1300のファイル3000に対応する差分値とを基に、当該ファイル3000に対応するWORM時計値1500を算出する。ここで、図3に示すように、ファイル3000に対応する差分値は0となっているので、WORM時計制御110は、WORM時計値1500として、時計値1400と0との差分値、すなわち時計値1400と同じ値を提供する。
管理サーバ11のマイグレーション要求制御160が、ストレージノード1の資源マイグレーション制御120に対して、ファイル3000のマイグレーション処理を要求する。なお、本実施形態では、管理サーバ11がストレージノード1に対して、ストレージノード2へのマイグレーション処理を要求した場合について説明する。なお、マイグレーション処理の要求は、ファイル3000のマイグレーション先となるストレージノード2に対して要求してもよいし、またファイル3000のマイグレーション元でも先でもないストレージノード3に対して要求してもよい。
ファイル3000のマイグレーション処理要求を受けた資源マイグレーション制御1120は、自身が提供するマイグレーション実行制御121を利用して、要求マイグレーション処理の可否を判断する。マイグレーション実行制御121は、マイグレーション先ストレージノード2の時計値2400、マイグレーション元ストレージノード1のWORM時計値1500、ファイル3000のエントリ220及びファイル3000のエントリ523等の各情報を利用して、マイグレーション処理の可否を判断する。
この可否の判断の詳細な処理手順を、以降の図8で説明する。
図8は、マイグレーション実行制御121において、情報資源のマイグレーション処理の可否を判断するマイグレーション処理の手順を示すフローチャートである。
はじめに、マイグレーション実行制御121は、マイグレーション要求を受けると、マイグレーション管理表1200を参照して、エントリ220のマイグレーション可否の項目においてマイグレーション対象として指定した情報資源に対する登録情報を取得する。そして、取得したマイグレーションポリシーの内容から、マイグレーションが可能か否かを判断する(S101)。
なお、マイグレーション管理表1200にマイグレーション対象の情報資源についてエントリ220のマイグレーションポリシーが設定されていない場合や、マイグレーション対象の情報資源のエントリが存在しない場合は、システムで別途定めた基準によってマイグレーションの可否を判断する。例えば、エントリ220が設定されていない場合は、一律にマイグレーションを禁止するように基準を定めてもよいし、システムデフォルトのポリシーを予め設定しておき、これを適用するようにしてもよい。
処理ステップS101の判断結果、マイグレーション対象の情報資源がマイグレーション不可である場合は、エラー終了となる。マイグレーション対象の情報資源がマイグレーション可能である場合は、次の処理ステップS102に進む。
次に、マイグレーション実行制御121は、マイグレーション管理表1200のマイグレーション対象の情報資源のエントリ230のマイグレーション試行カウンタをインクリメントする。すなわち、エントリ230に1を加算する(S102)。
なお、マイグレーション管理表1200にマイグレーション対象の情報資源のエントリが存在しない場合は、マイグレーション対象の情報資源のエントリを新たに確保して、エントリ230をインクリメントしてもよい。
次に、マイグレーション実行制御121は、資源マイグレーション制御1120提供の時計情報制御122を利用して、マイグレーション先ストレージノード2の時計値2400を取得する。時計情報制御122は、ストレージノード2上の資源マイグレーション制御2120にある時計情報制御122を介して、ストレージノード2の時計値2400を取得する(S103)。資源マイグレーション制御2120の時計情報制御122は、ストレージノード2の時計値制御102に依頼して、時計値2400を取得する。
次に、マイグレーション実行制御121は、マイグレーション元ストレージノード1のWORM時計制御110を利用して、ストレージノード1のWORM時計値1500を取得する(S104)。
このWORM時計値1500は、マイグレーション対象の情報資源に対応したWORM時計値1500を取得する。すなわち、WORM時計制御110は、時計値制御102より取得した時計値1400と、時計差分情報管理表1300より取得した対象ファイル3000の差分値とを基に、マイグレーション対象の情報資源に対応したWORM時計値1500を算出する。マイグレーション元ストレージノード1のみWORM時計値1500を取得する理由は、マイグレーション元ストレージノード1上のマイグレーション対象の情報資源が、以前に他のストレージノードからマイグレーションされたものである場合には、既に当該情報資源に対する時計差分情報が時計差分情報管理表1300に登録されている可能性があるためである。
次に、マイグレーション実行制御121は、取得した二つの時計値の差分値を算出する(S105)。差分値の算出方式は、システム内で統一した方式による。例えば、マイグレーション先の時計値2400からマイグレーション元のWORM時計値1500を減算する方式でもよいし、その逆の方式でもよい。
次に、マイグレーション実行制御121は、算出した差分値と、マイグレーション対象の情報資源の属性500のエントリ523とを用いて、差分値がマイグレーション対象の情報資源のマイグレーション許容範囲内か否かを判断する(S106)。このとき、マイグレーション実行制御121は、マイグレーション対象の情報資源を管理する資源制御130が提供するマイグレーション許容範囲制御132を介して、マイグレーション対象の情報資源のマイグレーション許容範囲であるエントリ523を取得する。
差分値がマイグレーション許容範囲内である場合は、マイグレーション可能と判断して処理ステップS107に進む。一方、差分値がマイグレーション許容範囲外である場合は、マイグレーション不可能と判断して処理ステップS110に進む。
なお、マイグレーション対象の情報資源にエントリ523が設定されていない場合は、システムで別途定めた基準を適用する。例えば、マイグレーション許容範囲が設定されていない場合は、一律にマイグレーションを禁止するようにしてもよいし、システムで予め定めたデフォルトの許容範囲値又は各情報資源制御に予め定めたデフォルトの許容範囲値を用いて、マイグレーションの可否を判断してもよい。
処理ステップS106において、マイグレーション可能と判断した場合は、マイグレーション実行制御121は、マイグレーション対象の情報資源の資源制御130が提供するマイグレーション制御133に対して、当該情報資源のマイグレーション処理を依頼する。依頼を受けたマイグレーション制御133は、マイグレーション対象の情報資源を、指定された先にマイグレーションする処理を実行する(S107)。より具体的には、マイグレーション制御133は、マイグレーション対象の情報資源を、ネットワーク10を介してマイグレーション先のストレージノード2に送信する。マイグレーション先のストレージノード2において、マイグレーション制御133は、マイグレーション元ストレージノード1から送信された情報資源を、当該ストレージノードの記憶装置40の対応する領域に格納する。なお、マイグレーションの実行方式はこれ以外の方法を用いてもよい。
なお、他の情報資源(ファイルシステム4000やボリューム5000)のマイグレーション処理は、ファイル3000のマイグレーション処理内容とほぼ同様である。すなわち、マイグレーション対象の情報資源がファイルである場合は、マイグレーション制御133は、マイグレーション対象ファイルをマイグレーション先ストレージノード2に送信する。また、マイグレーション対象の情報資源がファイルシステムである場合は、マイグレーション制御133は、マイグレーション対象ファイルシステムに含まれるファイル及びファイルシステム管理情報をマイグレーション先ストレージノード2に送信する。また、マイグレーション対象の情報資源がボリュームである場合は、マイグレーション制御133は、マイグレーション対象ボリュームに含まれるデータをマイグレーション先ストレージノード2に送信する。
処理ステップS107の処理によって、情報資源のマイグレーション処理が完了したら、マイグレーション実行制御121は、マイグレーション元ストレージノード1上にあるマイグレーション管理表1300におけるマイグレーション対象の情報資源に関する情報を、マイグレーション先ストレージノード2のマイグレーション管理表2200に移行する(S108)。移行する情報は、マイグレーション管理表1200の当該マイグレーション対象の情報資源のエントリに登録されている情報の全てである。
最後に、マイグレーション実行制御121は、マイグレーション先ストレージノード2のマイグレーション管理表2200におけるマイグレーション対象の情報資源のエントリ230にあるマイグレーション試行カウンタ230の値をクリアする(S109)。具体的には、マイグレーション実行制御121は、マイグレーション先ストレージノード2のマイグレーション実行制御121を介して、当該エントリ230の値をクリアする。この処理が完了することによって、情報資源のマイグレーション処理が正常終了となる。
一方、処理ステップS106において、マイグレーション不可能と判断した場合は、マイグレーション実行制御121は、マイグレーション管理表1200において当該情報資源のエントリに登録されているエントリ230のマイグレーション試行回数上限の値と、現在のエントリ230のマイグレーション試行カウンタの値とを比較する。比較した結果、エントリ223の値と現在のマイグレーション試行カウンタ230の値が一致した場合は、これ以上のマイグレーション試行は不可と判断して、このマイグレーション処理をエラー終了にする。
一方、比較した結果、エントリ223の値と現在のエントリ230の値が一致しない場合は、マイグレーション実行制御121は、マイグレーション先ストレージノード2の時計情報の補正処理(処理A)を実行する(S200)。なお、この補正処理は、以降の図9において説明する。
次に、マイグレーション時における時計情報の補正処理(処理A)を説明する。
図9は、マイグレーション実行制御121において、情報資源のマイグレーション処理時における時計情報の補正処理の手順を示すフローチャートである。
はじめに、マイグレーション実行制御121は、マイグレーション管理表1200においてマイグレーション対象の情報資源のエントリに登録されている補正対象であるエントリ222の情報を取得する。そして、エントリ222は時計に設定されているか時計差分情報に設定されているかを判断する(S201)。エントリ222が時計に設定されている場合は、処理ステップS202に進み、エントリ222が時計差分情報に設定されている場合は、処理ステップS203に進む。
処理ステップS201において、エントリ222が時計に設定されていると判断した場合は、マイグレーション実行制御121は、マイグレーション先ストレージノード2の時計値2400を補正する。具体的には、マイグレーション実行制御121は、情報資源マイグレーション制御120提供の時計情報制御122を介して、マイグレーション先ストレージノード2の時計制御100が提供する時計値制御102に対して、時計値2400の更新を依頼する。この更新値は、図8のステップS105においてマイグレーション実行制御121が算出した時計の差分値である。すなわち、時計値2400を補正することによって、マイグレーション先ストレージノード2の時計値2400が、マイグレーション元ストレージノード1におけるマイグレーション対象の情報資源のWORM時計値1500と一致するように補正する。マイグレーション先ストレージノード2の時計値2400の補正が終了したら、時計補正処理は終了となる。
一方、処理ステップS201において、エントリ222が時計補正情報に設定されていると判断した場合は、マイグレーション実行制御121は、マイグレーション先ストレージノード2の時計差分情報管理表2300に対して、補正情報を登録する。具体的には次のような処理を実行する。
まず、登録に先立って、マイグレーション実行制御121は、マイグレーション先ストレージノード2における時計差分情報管理表2300に、マイグレーション対象の資源に対応するエントリがあるか否かの確認を要求する(S203)。確認の結果、マイグレーション対象の情報資源に対応するエントリがない場合は、処理ステップS204に進み、マイグレーション対象の情報資源に対応するエントリがある場合は、処理ステップS205に進む。
処理ステップS203において、時計差分情報管理表2300にマイグレーション対象の情報資源のエントリがない場合は、マイグレーション実行制御121は、当該情報資源用のエントリを新規に作成し、作成したエントリの領域を初期化するようマイグレーション先ストレージノード2の時計差分情報管理124に依頼する(S204)。なお、このエントリ作成処理は、処理ステップS203のエントリの有無の確認を要求するときに同時に、エントリがない場合に同様の処理を依頼するように要求してもよい。エントリが作成されたら、処理ステップS205に進む。
一方、処理ステップS203において、時計差分情報管理表2300にマイグレーション対象の情報資源のエントリがある場合は、マイグレーション実行制御121は、エントリ320の差分情報320に差分値を登録するようマイグレーション先ストレージノード2に依頼する。なお、既にエントリ320に差分値が登録されていた場合には、マイグレーション先ストレージノード2は、既に設定されている値を破棄して、新しい値に更新する。なお、この差分値の登録は、処理ステップS203のエントリの有無の確認を要求するときに同時に依頼する。エントリがないと判定した場合は、新規にエントリを作成し(S204)、作成された新たなエントリに差分情報を登録する。
次に、マイグレーション実行制御121は、マイグレーション先ストレージノード2に登録された時計差分情報管理表2300の差分値を基に、時計差分情報を登録又は更新する(S205)。この処理が終了したら、時計補正処理は終了する。
以上のような処理によって、ストレージノード間におけるマイグレーション処理が実行される。
次に、WORM資源の保管期間満了確認処理を説明する。
WORM資源には、前述のように保管期間が設定されているが、この保管期間が満了したか否かを判断する処理が必要となる。そこで、ストレージノード1は、管理サーバ11からの要求に基づいて、ストレージノード1が管理しているWORM資源の保管期間をチェックする。そして、WORM資源の保管期間が満了しているか否かを判断する。なお、保管期間が満了したWORM資源は、削除してもよいし、WORM属性を解除して通常の情報資源としてそのまま格納してもよい。
図10は、資源制御130におけるWORM資源の保管期間満了確認処理の手順を示すフローチャートである。なお、ここでは、ストレージノード1における保管期間満了確認処理の例を示す。
はじめに、資源制御130は、WORM時計制御110に対して、当該WORM資源に対応するWORM時計値1500の取得を要求する(S301)。WORM時計制御110は、WORM時計値1500の取得の要求に対して、WORM時計値1500を作成する処理を実行する(S400)。このWORM時計値1500の作成処理の手順は後述する。
資源制御130は、WORM時計制御110よりWORM時計値1500を取得した後、取得したWORM時計値1500と、当該WORM資源に設定されているエントリ522のWORM保管期間とを利用して、当該WORM資源の保管期間が満了しているか否かを確認する(S302)。資源制御130は、この確認の結果、すなわち、満了しているか否かを要求元に返す。
次に、WORM時計値1500の作成処理を説明する。
処理ステップS301において、資源制御130によって、WORM時計値1500の作成が要求された場合は、WORM時計制御110は、対象のWORM資源に対応するWORM時計値1500の作成処理を実行する(S400)。
はじめに、WORM時計制御110は、時計値制御101に対し、現時点の時計値1400を要求する(S401)。
次に、WORM時計制御110は、時計差分情報管理表1300において対象のWORM資源に対応するエントリ320の差分情報が登録されているかどうか、資源マイグレーション制御120が提供する時計情報制御122に対して確認を依頼する(S402)。時計情報制御122は、確認依頼を受けたら、対象のWORM資源に対応するエントリがあるかどうかを確認する。当該エントリがあれば、当該エントリに登録されているエントリ320の値を返す。当該エントリがなければ、その旨を返す。WORM時計制御110は、時計情報制御122からの戻り値を判断する。戻り値がエントリありである場合は、処理ステップS403に進む。戻り値がエントリなしである場合は、既に取得している時計値1400をWORM時計値1500として要求元に返す(S405)。
処理ステップS402において、時計差分情報管理表1300に当該エントリがある場合は、WORM時計制御110は、そのエントリに登録されているエントリ320を取得する。そして、そのエントリ320の値を既に取得した時計値1400に反映する(S403)。具体的には、WORM時計制御110は、システムで別途定めた方法によって差分情報を反映する。例えば、時計値1400に差分情報320の値を加算することによって、差分情報を反映する。
WORM時計制御110は、エントリ320の値を反映した時計値1400をWORM時計値1500として要求元に返す(S404)。
なお、この図10において説明した保管期間満了確認処理では、エントリ522のWORM保管期間が満了しているか否かのみを確認する。このとき、対象のWORM資源のWORM属性であるエントリ521の無効化や、対象のWORM資源の削除、対象のWORM資源のエントリ522の延長等の処理を同時に実行してもよい。
次に、マイグレーションポリシーの設定処理を説明する。
図11は、情報資源のマイグレーションポリシー設定処理の手順を示すフローチャートである。
情報資源に対するマイグレーションポリシーの設定は、例えば予め管理者によって、管理サーバ11から要求される。マイグレーションポリシー設定制御140は、この要求を受けて、設定対象の情報資源が存在するストレージノードの資源マイグレーション制御120に対して、マイグレーションポリシーの設定を要求する。
マイグレーションポリシー設定要求を受けた資源マイグレーション制御120は、マイグレーション管理123を介して、マイグレーション管理表200より、当該マイグレーションポリシー設定対象の情報資源に対応するエントリからエントリ230のマイグレーション試行カウンタを取得する(S501)。
次に、資源マイグレーション制御120は、取得したエントリ230の値が0か否かを確認する(S502)。エントリ230の値が0でない場合は、資源マイグレーション制御120は、当該情報資源が現在マイグレーション処理が実施中であると判断して、当該情報資源に対するマイグレーションポリシー設定処理をエラー終了とする。マイグレーション処理実施中にマイグレーションポリシー設定処理をエラーにする理由は、マイグレーション実施中においてマイグレーションポリシーが変更されることによって、マイグレーション処理に不整合が発生することを防ぐためである。
処理ステップS502において、エントリ230の値が0である場合は、資源マイグレーション制御120は、当該情報資源に対応するマイグレーションに対応するエントリ220に、エントリ221、エントリ222、エントリ223の各値を設定する(S503)。具体的には、当該情報資源のマイグレーションポリシーを設定する。なお、当該情報資源に対応するエントリが存在しない場合は、新たにエントリを作成し、作成した新たなエントリにマイグレーションポリシーを設定する。
マイグレーションポリシーの設定が完了したら、要求元であるマイグレーションポリシー設定制御140に、その旨を通知して処理を終了する。
次に、マイグレーション許容範囲設定処理を説明する。
図12は、情報資源のマイグレーション許容範囲設定処理における処理手順を示すフローチャートである。
マイグレーション許容範囲設定制御150は、設定対象の情報資源が存在するストレージノードの資源制御130に対して、マイグレーション許容範囲の設定を要求する。マイグレーション許容範囲は、前述のように、情報資源のWORM保管期間や、当該情報資源を格納するストレージシステムの時計の精度等を考慮して、マイグレーション処理実行前に予め設定する。
マイグレーション許容範囲設定要求を受けた資源制御130は、資源マイグレーション制御120に対して、マイグレーション管理表200を参照して、設定対象の情報資源に対応するエントリ230の値を取得するよう依頼する(S601)。資源マイグレーション制御120は、マイグレーション管理123を介して、エントリ230の値を取得する。
資源制御130は、取得したエントリ230の値が0か否かを確認する(S602)。
エントリ230の値が0でない場合は、資源制御130は、当該情報資源は現在マイグレーション処理の実施中と判断して、当該情報資源に対する許容範囲設定処理をエラー終了とする。マイグレーション処理の実施中に許容範囲設定処理をエラーにする理由は、マイグレーション実施中においてマイグレーション許容範囲が変更されることによって、マイグレーション処理に不整合が発生することを防ぐためである。
処理ステップS602において、エントリ230の値が0である場合は、資源制御130は、当該情報資源に対するマイグレーション許容範囲を設定する(S603)。具体的には、当該情報資源に対応する属性500の拡張属性であるエントリ520のエントリ523に、マイグレーション許容範囲を設定する。
設定が完了したら、要求元であるマイグレーションポリシー設定制御150に対して、その旨を通知して、処理を終了する。
なお、本発明は前述の実施の形態に限定されることなく、その趣旨を逸脱しない範囲内で種々の構成をとることができることは言うまでもない。例えば、以降に説明するような変形例をとることができる。
(変形例1)
前述した実施の形態では、時計差分情報管理表300におけるエントリ320の差分情報には、時計の差分値が登録される。これに対して、エントリ320として登録する情報は、当該情報資源に対応するWORM時計値を算出できるものであればどのような情報でもよい。例えば、エントリ320として、時計差分値の更新ログを記録する。更新ログを記録することによって、いつ時計の差分情報の登録があり、その時に時計値がどれだけ補正されたのかという情報を把握できる。
図13は、時計差分情報管理表300の説明図であり、エントリ320の差分情報に更新ログを記録する場合の構成を例示する。
前述のように、時計差分情報管理表300は、エントリ310の対象資源識別子と、エントリ320の差分情報とを含む。
エントリ320の差分情報には、当該情報資源のマイグレーション時において、マイグレーション元ストレージノードとマイグレーション先ストレージノードとにおける時計情報の更新ログが、逐次記録される。当該更新ログは、更新を行った日時の情報と、更新した差分値の情報とを含む。
マイグレーション処理において、資源マイグレーション制御120は、時計を補正するときに、時計情報制御122を利用して、当該ストレージノード間の時計情報の差分情報をマイグレーション先ストレージノードの時計差分情報管理表300に更新ログとして登録する。この更新ログとして登録する値の単位は、前述のように、当該システム内にて決められたものを適用する。また、値の正負の意味も同様に、当該システム内にて決められたものを適用する。
また、前述のように、時計差分情報管理表300に更新ログ形式の差分情報が登録されている情報資源を利用する際には、当該更新ログを利用して、時計情報を補正する。
図13に示すように、例えば、資源識別子が4000であるエントリの情報資源には、差分情報として三つの更新ログが設定されている。この情報資源4000を扱うとき、時計情報を利用する場合は、当該ストレージノードの時計情報を当該更新ログのうち、最新に更新されたログを用いて補正し、補正した時計情報値を利用する。特に、WORM資源を扱う場合には、WORM時計制御110は、当該更新ログのうち、最新に更新されたログを用いて補正処理をする。詳細な補正処理手順は、図9で説明した補正処理手順と同様である。
(変形例2)
前述の実施の形態では、資源マイグレーション制御120において、当該情報資源のマイグレーションが許可された場合、すなわち、時計値の差分値がマイグレーション許容範囲内である場合は、マイグレーション先ストレージノード2の時計情報は補正しない。これに対して、マイグレーションが許可された場合にも、マイグレーション先ストレージノード2において時計情報を補正してもよい。
図14は、マイグレーション実行制御121において、情報資源のマイグレーション処理の手順を示すフローチャートであり、マイグレーション許可時にも時計情報を補正する場合の処理手順を示すフローチャートである。
図14のフローチャートは、前述した図8のフローチャートとほぼ同様であるが、マイグレーションが許可された後に、マイグレーション先ストレージノード2の時計情報を補正する処理が異なる。
すなわち、処理ステップS106において、差分値がマイグレーション許容範囲内である場合は、マイグレーション実行制御121は、まず、処理ステップS107の前に、マイグレーション先ストレージノード2の時計情報の補正処理(処理A)を実行する(S700)。この処理は図9で説明した処理A(S200)と同一である。そして、時計情報の補正処理が終了したら、マイグレーション実行制御121は、処理ステップS107に進み、当該情報資源のマイグレーション処理を実行する。その後の処理は図8で前述した処理と同様である。
(変形例3)
前述した実施の形態では、時計制御100が管理する時計値を更新する際に、当該時計値を直接更新することによって、時計値を更新した。これに対して、時計制御100において、時計値を更新する際の更新ログを別途管理してもよい。
具体的には、時計制御100が更新ログを管理する場合は、時計制御100にて管理する時計値を直接更新した上で更新ログを別途管理してもよいし、時計値を更新せずに、更新ログのみを別途管理し、必要なときに更新ログの情報を反映させた時計値を提供するようにしてもよい。時計制御100が更新ログを管理することによって、時計値がいつどのように更新されたのかを把握することが可能になる。
なお、時計値の更新ログについては、時計制御100で管理するかわりに、時計制御100以外で管理してもよい。例えば、ログを管理するためのプログラム等を別途用意して、時計値の更新ログを当該プログラムによって管理してもよい。
(変形例4)
前述した実施の形態では、資源マイグレーション制御120及びWORM時計制御110がストレージノード上に存在することを前提としていた。これに対して、資源マイグレーション制御120が、管理サーバ11やその他のサーバ上に存在する構成でもよい。また、WORM時計制御110が、管理サーバ11やその他のサーバ上に存在する構成でもよい。また、資源マイグレーション制御120とWORM時計制御110が、それぞれ別々のストレージノード又はサーバに存在する構成でもよい。また、資源マイグレーション制御120によって提供されるマイグレーション管理表200及び時計差分情報管理表300が、それぞれ別々のストレージノード又はサーバに存在する構成でもよい。
(変形例5)
前述した実施の形態では、各情報資源のマイグレーション許容範囲制御132を資源制御130によって提供することを前提にしていた。これに対して、例えば、マイグレーション許容範囲制御132を資源制御130から独立化し、管理サーバ11やその他のサーバにおいて、マイグレーション許容範囲制御132を別途提供する構成でもよい。
(変形例6)
前述した実施形態では、各情報資源の時計差分情報管理表300を資源マイグレーション制御120における時計差分情報管理124にて提供することを前提にしていたが、この限りではない。例えば、時計情報管理124を資源マイグレーション制御120から独立化し、資源制御130が、当該情報資源に関する時計差分情報管理表300を管理する構成でもよい。
資源制御130において時計差分情報管理表300を管理する構成とした場合、当該情報資源のマイグレーション処理では、マイグレーション実行制御121は、当該資源制御130が提供するマイグレーション制御133によって、当該情報資源の時計差分情報管理表を、マイグレーション先ストレージノードにマイグレーションする。これにより、前述した実施形態と同様に、マイグレーション先ストレージノードに当該情報資源の時計差分情報を継承することができるようになる。
(変形例7)
前述した実施の形態では、情報資源のマイグレーション処理において、時計情報を補正していた。これに対して、例えば、当該情報資源のレプリケーション処理やバックアップ/リストア処理などを対象に、時計情報を補正する処理としてもよい。
レプリケーション処理において時計情報の補正を実行する場合は、レプリケーション処理を実行するプログラム等が、資源マイグレーション制御120と同等の処理を提供するための資源レプリケーション制御を備える。また、バックアップ/リストア処理において時計情報の補正を実行する場合は、バックアップ/リストア処理を実行するプログラム等が、資源マイグレーション制御120と同等の処理を提供するための資源バックアップ/リストア制御を備える。
(変形例8)
前述した実施の形態では、情報資源のマイグレーション処理方式は問わないと述べた。本変形例では、次のようなマイグレーション処理方式を説明する。
資源制御130が提供するWORM制御131において、エントリ522のWORM保管期間を日数のような期間の形式で管理している場合を考える。ここで、当該資源制御130が提供するマイグレーション制御133において、マイグレーション対象のWORM資源をマイグレーションする際に、当該WORM資源のWORM保管期間情報を、当該マイグレーション処理の契機を基点とした残存保管期間値に算出し直し、これを新たなWORM保管期間として更新する。
例えば、WORM保管期間を1000日と指定してWORM属性を有効にしたWORM資源について、当該WORM資源のWORM属性を有効にしてから200日経過したときに当該WORM資源をマイグレーションする場合を考える。前述の実施の形態では、当該資源のエントリ522は、当該WORM資源のWORM属性を有効にした時点の時間情報、及び、期間の情報としてそのままマイグレーション先ストレージノードに移行される。
一方、本方式では、マイグレーション先ストレージノードにおける当該WORM資源のエントリ522には、当該WORM資源を当該ストレージノードにマイグレーションした時点の時間情報を、期間の新しい基点として設定する。さらに、当該マイグレーション時点における当該WORM資源の残存WORM保管期間を、資源マイグレーション制御120が算出して、マイグレーション先ストレージノードにおける当該WORM資源の新しい期間として設定する。すなわち、それまでのWORM保管期間である1000日から、既に経過した200日を減算した800日を、WORM保管期間として指定する。
このようにすることによって、マイグレーション対象のWORM資源のエントリ522が、マイグレーション処理時点における新しい情報に更新される。そのため、マイグレーション先ストレージノードの時計情報を補正する必要がなくなるという利点が生じる。
なお、本方式によってマイグレーション対象のWORM資源のエントリ522のWORM保管期間が延長したり短縮したりしないような算出方法をとる必要がある。すなわち、当初のWORM保管期間の満了期限が変更されないように、WORM保管期間、経過時間及び時計情報の補正値を適切に用いて算出する必要がある。また、本方式によってマイグレーション対象のWORM資源のエントリ522を更新する場合は、元々設定されていたエントリ522を上書き更新してもよいし、別途更新用の領域を用意して、そこに更新した情報を格納してもよい。
さらに、本方式は、資源のマイグレーション処理を例に説明したが、この限りではない。例えば、当該情報資源のレプリケーション処理やバックアップ/リストア処理などに本方式を適用することも可能である。
レプリケーション処理を対象とする場合は、レプリケーション処理時において、当該処理時点における残存WORM保管期間を算出し、レプリケーション先ストレージノードにおけるWORM保管期間とする。また、バックアップ処理を対象とする場合は、バックアップ処理時において、当該処理時点における残存WORM保管期間を算出し、バックアップ先におけるWORM保管期間とする。また、リストア処理を対象とする場合は、リストア処理時において、当該処理時点における残存WORM保管期間を算出し、リストア先ストレージノードにおけるWORM保管期間とする。
なお、本発明は、前記ストレージ装置を実現するプログラム、及びそのプログラムを記録した記録媒体、そのプログラムを含み搬送波内に具現化されたデータ信号など種々の態様で実現することが可能である。
本発明をコンピュータプログラムとして構成する場合には、ストレージ装置あるいはストレージ装置を制御するプログラム全体として構成するものとしてもよいし、本発明による処理を実行する部分のみを構成するものとしてもよい。また、記録媒体としては、フレキシブルディスクやCD−ROM、DVD−ROM、パンチカード、バーコードなどの符号が印刷された印刷物、コンピュータの内部記憶装置及び記憶装置などコンピュータが読み取り可能な種々の揮発性記録媒体や不揮発性記憶媒体を利用できる。
本発明の実施形態における計算機システムの構成ブロック図である。 ストレージノードのハードウェアの構成ブロック図である。 マイグレーション管理表の構成を例示する説明図である。 時計差分情報管理表の構成を例示する説明図である。 管理サーバのハードウェア構成を例示する説明図である。 各情報資源の属性の構成を例示する説明図である。 マイグレーション処理の概要を示す説明図である。 マイグレーション処理の手順を示すフローチャートである。 時計補正の処理の手順を示すフローチャートである。 保管期間満了確認処理時における処理手順を示すフローチャートである。 情報資源のマイグレーションポリシー設定処理の手順を示すフローチャートである。 情報資源のマイグレーション許容範囲設定処理における処理手順を示すフローチャートである。 変形例の時計差分情報管理表の構成を例示する説明図である。 変形例の情報資源のマイグレーション処理の手順を示すフローチャートである。
符号の説明
1、2、3 ストレージノード
10 ネットワーク
11 管理サーバ
20 プロセッサ
30 メモリ
40 記憶装置
50 記憶装置I/F
60 ネットワークI/F
70 クロック供給源
80 記憶装置I/F制御
90 ネットワークI/F制御
100 時計制御
101 時計値管理
102 時計値制御
110 WORM時計制御
120、1120、2120 資源マイグレーション制御
121 マイグレーション実行制御
122 時計情報制御
123 マイグレーション管理
124 時計差分情報管理
130 資源制御
131 WORM制御
132 マイグレーション許容範囲制御
133 マイグレーション制御
140 マイグレーションポリシー設定制御
150 マイグレーション許容範囲設定制御
160 マイグレーション要求制御
200、1200、2200 マイグレーション管理表
210 対象資源識別子
220 マイグレーションポリシー
221 マイグレーション可否
222 補正対象
223 マイグレーション試行回数上限
230 マイグレーション試行カウンタ
300、1300、2300 時計差分情報管理表
310 対象資源識別子
320 差分情報
500 資源の属性
510 既存属性
520 拡張属性
521、3100、4100、5100 WORM属性
522、3200、4200、5200 WORM保管期間
523、3300、4300、5300 マイグレーション許容範囲
1400、2400 時計値
1500、2500 WORM時計値
3000 ファイル
4000 ファイルシステム
5000 ボリューム

Claims (18)

  1. 制御部と、データを格納する記憶装置と、時間の情報を管理する時間情報部と、を備えたストレージ装置において、
    前記制御部は、
    ネットワークを介して接続された他のストレージ装置から第1の時間の情報を取得し、
    前記時間情報部から第2の時間の情報を取得し、
    前記第1及び第2の時間の情報の差分値を算出し、
    前記算出された差分値が予め定めた閾値よりも小さい場合に、前記記憶装置に格納されたデータを前記他のストレージ装置に移動させることを特徴とするストレージ装置。
  2. 前記制御部は、指定された期間内は前記記憶装置に格納されている少なくとも一つのデータの更新及び削除を禁止することを特徴とする請求項1に記載のストレージ装置。
  3. 前記記憶装置に格納されているデータ毎に、前記閾値が予め設定されていることを特徴とする請求項1に記載のストレージ装置。
  4. 前記記憶装置に格納されているデータ毎に、当該データの移動の可否の情報、前記他のストレージ装置の時間の情報の補正方法の情報、及び、当該データの移動の処理の失敗の許容回数の情報、のうち少なくとも一つを格納する記憶部を備え、
    前記制御部は、前記記憶部に格納された情報に基づいて、前記記憶装置に格納されたデータを前記他のストレージ装置に移動させるか否かを決定することを特徴とする請求項1に記載のストレージ装置。
  5. 前記制御部は、
    前記算出された差分値が、予め定めた閾値よりも大きい場合は、前記他のストレージ装置の時間を、前記第2の時間の情報と略同一となるように補正し、
    当該補正された第3の時間の情報を当該他のストレージ装置から取得し、
    前記第3及び前記第2の時間の情報の差分値を算出し、
    当該算出された差分値が予め定めた閾値よりも小さい場合に、前記記憶装置に格納されたデータを前記他のストレージ装置に移動させることを特徴とする請求項1に記載のストレージ装置。
  6. 前記時間情報部は、前記記憶装置に格納されているデータ毎の時間の情報を管理し、
    前記制御部は、前記他のストレージ装置から、当該他のストレージ装置に格納されているデータ毎の第1の時間の情報を取得し、前記時間情報部から前記記憶装置に格納されているデータ毎の第2の時間の情報を取得することを特徴とする請求項1に記載のストレージ装置。
  7. 前記制御部は、前記記憶装置に格納されたデータを他のストレージ装置に移動させるときに、
    前記他のストレージ装置から第1の時間の情報を取得し、
    前記時間情報部から当該データに対応する第2の時間の情報を取得し、
    前記第1及び第2の時間の情報の差分値を算出し、
    前記算出された差分値が予め定めた当該データに対応する閾値よりも大きい場合は、
    前記他のストレージ装置の時間を、前記第2の時間の情報と略同一となるように補正し、
    当該他のストレージから補正された第3の時間の情報を取得し、
    前記第3及び第2の時間の情報の差分値を算出し、
    当該算出された差分値が予め定めた当該データに対応する閾値よりも小さい場合に、前記記憶装置に格納されたデータを前記他のストレージ装置に移動させることを特徴とする請求項6に記載のストレージ装置。
  8. 前記制御部は、
    前記算出された差分値が予め定めた閾値よりも大きい場合は、
    前記第1の時間との相対値を用いて、前記他のストレージ装置の時間を、前記第2の時間の情報と略同一となるように補正することを特徴とする請求項7に記載のストレージ装置。
  9. 前記時間情報部は、他のストレージ装置によって時間補正された場合は、当該補正に関する情報を累積して格納することを特徴とする請求項8に記載のストレージ装置。
  10. 制御部と、データを格納する記憶装置と、時間の情報を管理する時間情報部と、を備えたストレージ装置におけるデータの移動方法であって、
    ネットワークを介して接続された他のストレージ装置から第1の時間の情報を取得し、
    前記時間情報部から第2の時間の情報を取得し、
    前記第1及び第2の時間の情報の差分値を算出し、
    前記算出された差分値が予め定めた閾値よりも小さい場合に、前記記憶装置に格納された前記データを前記他のストレージ装置に移動させることを特徴とするデータの移動方法。
  11. 指定された期間内は前記記憶装置に格納されている少なくとも一つのデータの更新及び削除を禁止することを特徴とする請求項10に記載のデータの移動方法。
  12. 前記記憶装置に格納されているデータ毎に、前記閾値が予め設定されていることを特徴とする請求項10に記載のデータの移動方法。
  13. 前記記憶装置に格納されているデータ毎に、当該データの移動の可否の情報、前記他のストレージ装置の時間の情報の補正方法の情報、及び、当該データの移動の処理の失敗の許容回数の情報、のうち少なくとも一つを格納する記憶部を備え、
    前記格納された情報に基づいて、前記記憶装置に格納されたデータを前記他のストレージ装置に移動させるか否かを決定することを特徴とする請求項10に記載のデータ移動方法。
  14. 前記算出された差分値が、予め定めた閾値よりも大きい場合は、前記他のストレージ装置の時間を、前記第2の時間の情報と略同一となるように補正し、
    当該補正された第3の時間の情報を当該他のストレージから取得し、
    前記第3及び第2の時間の情報の差分値を算出し、
    当該算出された差分値が予め定めた閾値よりも小さい場合に、前記記憶装置に格納されたデータを前記他のストレージ装置に移動させることを特徴とする請求項10に記載のデータ移動方法。
  15. 前記時間情報部において、前記ディスク装置に格納されているデータ毎の時間の情報が管理されており、
    他のストレージ装置から、当該他のストレージ装置に格納されているデータ毎の第1の時間の情報を取得し、前記時間情報部から前記記憶装置に格納されているデータ毎の第2の時間の情報を取得することを特徴とする請求項10に記載のデータ移動方法。
  16. 前記記憶装置に格納されたデータを他のストレージ装置に移動させるときに、
    前記他のストレージ装置から第1の時間の情報を取得し、
    前記時間情報部から当該データに対応する第2の時間の情報を取得し、
    前記第1及び第2の時間の情報の差分値を算出し、
    前記算出された差分値が予め定めた当該データに対応する閾値よりも大きい場合は、
    前記他のストレージ装置の時間を、前記第2の時間の情報と略同一となるように補正し、
    当該他のストレージから補正された第3の時間の情報を取得し、
    前記第3及び第2の時間の情報の差分値を算出し、
    当該算出された差分値が予め定めた当該データに対応する閾値よりも小さい場合に、前記記憶装置に格納されたデータを前記他のストレージ装置に移動させることを特徴とする請求項15に記載のデータ移動方法。
  17. 前記算出された差分値が予め定めた閾値よりも大きい場合は、
    当該他のストレージ装置の時間を、前記第1の時間との相対値を用いて補正することを特徴とする請求項16に記載のデータ移動方法。
  18. 他のストレージ装置によって時間が補正された場合は、当該補正に関する情報を累積して格納することを特徴とする請求項17に記載のデータ移動方法。
JP2005257987A 2005-09-06 2005-09-06 ストレージ装置及びデータ移動方法 Expired - Fee Related JP4699842B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005257987A JP4699842B2 (ja) 2005-09-06 2005-09-06 ストレージ装置及びデータ移動方法
US11/256,944 US20070055714A1 (en) 2005-09-06 2005-10-25 Migration system for confirming worm retention term

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005257987A JP4699842B2 (ja) 2005-09-06 2005-09-06 ストレージ装置及びデータ移動方法

Publications (2)

Publication Number Publication Date
JP2007072683A true JP2007072683A (ja) 2007-03-22
JP4699842B2 JP4699842B2 (ja) 2011-06-15

Family

ID=37831197

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005257987A Expired - Fee Related JP4699842B2 (ja) 2005-09-06 2005-09-06 ストレージ装置及びデータ移動方法

Country Status (2)

Country Link
US (1) US20070055714A1 (ja)
JP (1) JP4699842B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011526007A (ja) * 2008-12-03 2011-09-29 株式会社日立製作所 ストレージシステム及びストレージシステムの運用方法

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7552300B2 (en) * 2006-01-03 2009-06-23 International Business Machines Corporation Method for migrating objects in content management systems through exploitation of file properties, temporal locality, and spatial locality
US20090125572A1 (en) * 2007-11-14 2009-05-14 International Business Machines Corporation Method for managing retention of data on worm disk media based on event notification
US8595737B2 (en) * 2009-03-17 2013-11-26 Hitachi, Ltd. Method for migrating a virtual server to physical server according to a variation ratio, a reference execution time, a predetermined occupied resource amount and a occupancy amount
CN103823812A (zh) * 2012-11-19 2014-05-28 苏州工业园区新宏博通讯科技有限公司 系统数据管理方法
US10521401B2 (en) * 2015-08-28 2019-12-31 Netapp Inc. Data object lockdown
US10762041B2 (en) 2015-08-31 2020-09-01 Netapp, Inc. Event based retention of read only files
CN106227469A (zh) * 2016-07-28 2016-12-14 乐视控股(北京)有限公司 用于分布式存储集群的数据删除方法及系统
CN107479971B (zh) * 2017-07-31 2021-01-01 努比亚技术有限公司 一种数据处理方法、终端及计算机可读存储介质
US10860544B2 (en) * 2017-07-31 2020-12-08 Veritas Technologies Llc Systems and methods for write-once-read-many storage

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01264434A (ja) * 1988-04-15 1989-10-20 Nec Corp パケット交換機の輻輳検出制御方式
JPH0749724A (ja) * 1993-08-05 1995-02-21 Mitsubishi Electric Corp 時間管理システム
JPH10262143A (ja) * 1997-03-18 1998-09-29 Nec Eng Ltd ファクシミリ装置
JPH11101883A (ja) * 1997-09-29 1999-04-13 Nissin Electric Co Ltd 自動時刻補正方法
JP2005222368A (ja) * 2004-02-06 2005-08-18 Hitachi Ltd ストレージシステム

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5689699A (en) * 1992-12-23 1997-11-18 International Business Machines Corporation Dynamic verification of authorization in retention management schemes for data processing systems
DE19610401A1 (de) * 1996-03-16 1997-09-18 Deutsche Telekom Ag Verfahren und Anordnung zum Nachweis des Zeitpunktes der Durchführung eines kryptographischen Prozesses
US6170063B1 (en) * 1998-03-07 2001-01-02 Hewlett-Packard Company Method for performing atomic, concurrent read and write operations on multiple storage devices
US6453408B1 (en) * 1999-09-30 2002-09-17 Silicon Graphics, Inc. System and method for memory page migration in a multi-processor computer
US7191354B2 (en) * 2001-03-29 2007-03-13 Nokia Corporation Method for synchronizing a first clock to a second clock, processing unit and synchronization system
US7076802B2 (en) * 2002-12-31 2006-07-11 Intel Corporation Trusted system clock
US7155460B2 (en) * 2003-03-18 2006-12-26 Network Appliance, Inc. Write-once-read-many storage system and method for implementing the same
JP4022764B2 (ja) * 2003-06-26 2007-12-19 日本電気株式会社 情報処理装置、ファイル管理方法およびプログラム
US7107416B2 (en) * 2003-09-08 2006-09-12 International Business Machines Corporation Method, system, and program for implementing retention policies to archive records
US7117322B2 (en) * 2003-09-08 2006-10-03 International Business Machines Corporation Method, system, and program for retention management and protection of stored objects
US7590807B2 (en) * 2003-11-03 2009-09-15 Netapp, Inc. System and method for record retention date in a write once read many storage system
US7065679B2 (en) * 2004-03-24 2006-06-20 Hitachi, Ltd. Reasonable clock adjustment for storage system
US7130971B2 (en) * 2004-03-30 2006-10-31 Hitachi, Ltd. Assuring genuineness of data stored on a storage device

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01264434A (ja) * 1988-04-15 1989-10-20 Nec Corp パケット交換機の輻輳検出制御方式
JPH0749724A (ja) * 1993-08-05 1995-02-21 Mitsubishi Electric Corp 時間管理システム
JPH10262143A (ja) * 1997-03-18 1998-09-29 Nec Eng Ltd ファクシミリ装置
JPH11101883A (ja) * 1997-09-29 1999-04-13 Nissin Electric Co Ltd 自動時刻補正方法
JP2005222368A (ja) * 2004-02-06 2005-08-18 Hitachi Ltd ストレージシステム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011526007A (ja) * 2008-12-03 2011-09-29 株式会社日立製作所 ストレージシステム及びストレージシステムの運用方法

Also Published As

Publication number Publication date
US20070055714A1 (en) 2007-03-08
JP4699842B2 (ja) 2011-06-15

Similar Documents

Publication Publication Date Title
JP4699842B2 (ja) ストレージ装置及びデータ移動方法
JP4394493B2 (ja) ファイル管理方法、ファイル管理装置、及び、ファイル管理プログラム
US20160072889A1 (en) Maintaining global namespace consistency for a distributed filesystem
JP5124238B2 (ja) バックアップ実行可否判定システム
US9990372B2 (en) Managing the level of consistency for a file in a distributed filesystem
US7801855B2 (en) Method and apparatus for merging log entries in a database management system
US9613048B2 (en) Sending interim notifications to a client of a distributed filesystem
US9792294B2 (en) Using byte-range locks to manage multiple concurrent accesses to a file in a distributed filesystem
JP5081631B2 (ja) データの削除を管理するための方法および装置
US9092446B2 (en) Storage system and file management method
US7281107B2 (en) Storage system, data migration managing system, and data migration managing method
US20080294700A1 (en) File management system, file management method, file management program
JP4837378B2 (ja) データの改竄を防止する記憶装置
US20120259813A1 (en) Information processing system and data processing method
JPH1185598A (ja) 電子ファイリングシステム、同システムの文書管理方法、及び記録媒体
KR20120104209A (ko) 블랍으로서 가상 하드 드라이브의 관리
JP2007140746A (ja) 計算機システム及び管理計算機並びにリカバリ管理方法
US20090063508A1 (en) Computer, system, storage and access control method, and access control method
JP2005128861A (ja) リモートサイト及び/又はローカルサイトのストレージシステム及びリモートサイトストレージシステムのファイル参照方法
JP2008527571A5 (ja)
JP2005222368A (ja) ストレージシステム
EP1980939A1 (en) System and method for virtual tape management with creation and management options
JPH11120057A (ja) ファイルバックアップ方法
JPH1063557A (ja) 分散ファイルの同期方式
US8631402B2 (en) Center management apparatus, method, and computer readable storage medium storing program thereof

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080407

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101119

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101130

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110117

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110208

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110303

LAPS Cancellation because of no payment of annual fees