JP5731665B2 - 計算機システム及び複製制御方法 - Google Patents

計算機システム及び複製制御方法 Download PDF

Info

Publication number
JP5731665B2
JP5731665B2 JP2013544017A JP2013544017A JP5731665B2 JP 5731665 B2 JP5731665 B2 JP 5731665B2 JP 2013544017 A JP2013544017 A JP 2013544017A JP 2013544017 A JP2013544017 A JP 2013544017A JP 5731665 B2 JP5731665 B2 JP 5731665B2
Authority
JP
Japan
Prior art keywords
computer
job
file
identifier
data
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
JP2013544017A
Other languages
English (en)
Other versions
JPWO2013073005A1 (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.)
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
Publication of JPWO2013073005A1 publication Critical patent/JPWO2013073005A1/ja
Application granted granted Critical
Publication of JP5731665B2 publication Critical patent/JP5731665B2/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
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2094Redundant storage or storage space

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、複数の計算機を用いて構築された分散共有ファイルシステムに関する。特に、複製データを管理する計算機及び複製データの管理方法に関する。
計算機を利用して大量のデータ処理を実行する場合に、目的とする処理全体を複数のジョブに分割し、各ジョブを複数の計算機に並列に実行させることによって処理の高速化を図ることがある。このような場合にはバッチジョブシステムによって、各ジョブに対する計算機資源の割り当てが決定される。
バッチジョブシステムは処理の進捗を監視しながら動的に計算機を割り当てるため、各ジョブが割り当てられる計算機は各ジョブの実行開始直前まで確定しない。そのため、ジョブの入出力データを格納するファイルは分散共有ファイルシステム上に配置し、すべての計算機から同じファイルが利用できるようにすることがある。
複数の計算機が内蔵するディスクドライブから構成される分散供給ファイルシステムにおいて、当該ファイルシステムを構成する計算機のうち、ジョブを実行する計算機の障害が発生する場合がある。
この場合、代替計算機は障害が発生した計算機に格納される情報にアクセスし、当該計算機上で実行されていたジョブを再び実行する必要がある。すなわち、代替計算機は、計算機に障害が発生するまでのファイルに対する変更をすべて破棄した後、ジョブを再実行しなければならない。これは、障害発生までに計算機によって実行されたジョブの結果が上書きされる等の問題を防止するためである。
代替計算機にデータを引き継ぐための一般的な方法は、代替計算機に複製されたデータを保存することである。また、特許文献1には、ジョブの異常発生時にファイルが変更されている場合でも、ファイルを再実行できる状態に戻す作業を行わずに、変更中のファイルが参照されるのを防止できるジョブ管理システムを提供するための方法が記載されている。
具体的には、特許文献1には、ジョブ管理システムが、少なくとも実ディレクトリが記憶された記憶手段と、ジョブ処理の実行開始とともに実ディレクトリを複製した仮想ディレクトリを記憶手段に生成し、仮想ディレクトリに対してジョブ処理によるファイルアクセスを行うように制御する制御手段を備える方法が開示されている。
特開2009−251764号公報
ジョブを実行する計算機の障害発生時に代替計算機が分散共有ファイルシステムの機能を引き継ぐためには、代替計算機が複製データを保持すればよいが、ディスクの消費量を倍増させるという問題点がある。
さらに、前述した公知技術を用いた場合、代替計算機にジョブを再実行させるために実行前のファイル状態に復元する必要があるが、これを実現するためにはジョブの実行前後の2つの異なるバージョンのファイルを管理することになり、ディスクの消費量が実ファイルサイズの2倍となるという問題点がある。
したがって、公知技術及び特許文献1に記載の技術の二つを組み合わせて使用すると実ファイルサイズの4倍の記憶領域を消費することとなり、ディスクの利用効率が悪い。
本発明は、前述した問題点に鑑みてなされてものであり、ディスクの消費量を抑えつつ、分散共有ファイルシステムの耐故障性を向上させ、ジョブの再実行時にファイル状態を復元することが可能な計算機システム及び方法を提供することを目的とする。
本願において開示される発明の代表的な一例を示せば以下の通りである。すなわち、一つの処理が複数に分割されたジョブを実行する複数の計算機がネットワークを介して接続される計算機システムであって、前記複数の計算機の各々は、プロセッサと、前記プロセッサに接続されるメモリと、前記プロセッサに接続される記憶媒体と、他の装置と接続するためのネットワークインタフェースとを有し、前記計算機システムは、前記複数の計算機が有する前記記憶媒体によって提供される記憶領域を統合したストレージ上に構成されるファイルシステムを備え、前記ファイルシステムは、前記ジョブの実行時に用いられる複数のファイルのデータを管理し、前記ストレージを構成する前記記憶領域を提供する前記複数の計算機の各々には、所定の範囲毎に前記ファイルのデータが分散して配置され、前記複数の計算機は、前記ジョブを実行する第1の計算機、前記第1の計算機の前記記憶媒体に格納されるデータの複製データを保持する第2の計算機、及び前記ジョブの実行スケジュールを管理するスケジューラ計算機を含み、前記計算機システムは、前記ジョブの終了を検出し、前記ジョブが終了した旨の通知を送信する終了通知部と、前記ジョブによって前記第1の計算機の記憶媒体に書き込まれたデータの複製データを生成し、前記通知を受信した後に前記複製データを前記第2の計算機の前記記憶媒体に書き込む複製制御部と、を備え、前記スケジューラ計算機は、前記終了通知部を有し、前記第1の計算機は、第1の複製制御部を有し、前記終了通知部は、前記ジョブの終了を検出した場合に、前記終了したジョブを実行していた前記第1の計算機の識別子を取得し、前記取得された第1の計算機の識別子が含まれる前記通知を、前記第1の複製制御部に送信し、前記第1の複製制御部は、前記第1の計算機の記憶媒体に書き込まれたデータの書き込み先を示す情報と、前記ジョブの識別子とを対応づけた書込情報を生成し、前記通知を受信した場合、前記書込情報を参照して前記第1の計算機の記憶媒体からデータを読み出し、前記読み出されたデータを前記複製データとして前記第2の計算機に送信することを特徴とする。
本発明によれば、記憶媒体の記憶容量の消費量を抑えつつ、計算機システムの耐故障性を確保でき、かつ、ジョブを実行する計算機の障害発生時に自動的にジョブを再実行可能な状態に復元することができる。
本発明の第一の実施形態の計算機システムの構成を示すブロック図である。 本発明の第一の実施形態におけるスケジューラ計算機のハードウェア構成を示すブロック図である。 本発明の第一の実施形態におけるサーバ計算機のハードウェア構成を示すブロック図である。 本発明の第一の実施形態におけるサーバ計算機のハードウェア構成を示すブロック図である。 本発明の第一の実施形態における複製ファイルリストの一例を示す説明図である。 本発明の第一の実施形態における遅延書込情報の一例を示す説明図である。 本発明の第一の実施形態における終了通知部が実行する処理を説明するフローチャートである。 本発明の第一の実施形態におけるファイルサーバ部が実行する処理を説明するフローチャートである。 本発明の第一の実施形態における遅延複製制御部が実行する処理を説明するフローチャートである。 本発明の第一の実施形態における遅延複製制御部が実行する処理を説明するフローチャートである。 本発明の第一の実施形態における複製受信設定部が実行する処理を説明するフローチャートである。 本発明の第一の実施形態における複製送信設定部が実行する処理を説明するフローチャートである。 本発明の第一の実施形態における回復処理部が実行する処理を説明するフローチャートである。 本発明の第一の実施形態におけるフェイルオーバー処理部が実行する処理を説明するフローチャートである。 本発明の第一の実施形態におけるフェイルオーバー処理部が実行する処理を説明するフローチャートである。 本発明の第二の実施形態の計算機システムの構成を示すブロック図である。 本発明の第二の実施形態における複製制御部が実行する処理を説明するフローチャートである。 本発明の第三の実施形態の計算機システムの構成を示すブロック図である。 本発明の第三の実施形態における複製分割部が実行する処理の詳細を説明するフローチャートである。
以下、本発明の実施の形態について、図面を用いて詳細に説明する。
[第一の実施形態]
図1は、本発明の第一の実施形態の計算機システムの構成を示すブロック図である。
計算機システムは、スケジューラ計算機101、サーバ計算機102A及びサーバ計算機102Bから構成される。スケジューラ計算機101、サーバ計算機102A及びサーバ計算機102Bは、ネットワーク104を介して互いに接続される。ネットワーク104は、例えば、LAN(Local Area Network)である。ただし、本発明はネットワーク104の接続形式に限定されない。以下では、サーバ計算機102A及びサーバ計算機102Bを区別しない場合、サーバ計算機102と記載する。
本実施形態では、サーバ計算機102Aは割り当てられたジョブを実行する計算機として稼動し、サーバ計算機102Bはサーバ計算機102Aに障害が発生した場合に代替えの計算機として稼動するものとする。なお、図1では、サーバ計算機102は2台であるが、3台以上あってもよい。以下では、ジョブが実行可能な計算機を実行計算機と記載し、障害発生時に他のサーバ計算機102の代替えとして稼動可能な計算機を代替計算機と記載する。
また、本実施形態では、サーバ計算機102が提供する記憶領域を統合した記憶領域上に一つの分散共有ファイルシステムが構築される。各サーバ計算機102が提供する記憶領域には所定の範囲毎にデータが格納され、各サーバ計算機102は当該範囲のデータを管理する。各サーバ計算機102は、自身が管理する範囲に含まれるデータのマスタとして処理(書き込み、読み出し、更新等)を実行する。また、各サーバ計算機102は、他のサーバ計算機102がマスタとして管理する所定の範囲のデータの複製データを保持する。
以下の説明では、前述した構成の下、各サーバ計算機102上でジョブが実行されるものとする。
スケジューラ計算機101は、サーバ計算機102にジョブを割り当て、また、各ジョブの実行状態を管理する計算機である。スケジューラ計算機101は、ジョブスケジューラ141を備える。ジョブスケジューラ141は、ジョブの管理機能を実現するためのプログラムであり、複数のモジュール及び情報から構成される。
具体的には、ジョブスケジューラ141は、終了通知部151、スケジューリング部152、開始処理部153、終了処理部154及びジョブ情報171を含む。
終了通知部151は、ジョブの終了を検出し、ジョブの終了をサーバ計算機102に通知する。なお、終了通知部151が実行する処理の詳細については、図5を用いて後述する。スケジューリング部152は、ジョブ情報171を参照して開始すべきジョブと、当該ジョブを割り当てるサーバ計算機102とを決定する。
開始処理部153は、スケジューリング部152によって決定されたサーバ計算機102にジョブの実行の開始を指示する。終了処理部154は、ジョブの終了を監視し、ジョブの終了を検出した場合に、当該ジョブが終了したサーバ計算機102に空きがあることをスケジューリング部152に通知する。
ジョブ情報171は、ジョブの割り当てに関する情報を格納する。ジョブ情報171には、少なくとも、ジョブの識別子及びジョブが割り当てられたサーバ計算機102の識別子が含まれる。
なお、スケジューリング部152、開始処理部153、終了処理部154及びジョブ情報171は公知であるため、本明細書では詳細については説明しない。
サーバ計算機102Aは、ファイルへのアクセス要求を受け付け、各種処理を実行する実行計算機である。サーバ計算機102Aは、ファイルシステムプログラム142及びユーザーアプリケーション143を備える。
ユーザーアプリケーション143は、ジョブスケジューラ141によって起動されるプログラムであり、処理内容は任意である。ユーザーアプリケーション143は、処理の実行に際して、自身のファイルシステムプログラム142に対してファイルに対するアクセス要求を出力し、又は、他のサーバ計算機102のファイルシステムプログラム142に対してアクセス要求を送信する。なお、アクセス要求は、他の計算機(図示省略)からネットワーク104を介して受信したものでもよい。
ファイルシステムプログラム142は、ユーザーアプリケーション143から入力されたアクセス要求に基づいて、ファイルを用いて各種処理を実行するプログラムであり、複数のモジュール及び情報から構成される。
具体的には、ファイルシステムプログラム142は、ファイルサーバ部161、遅延複製制御部162、ディスクドライバ163A、ネットワークディスクドライバ164A、複製送信設定部165、回復処理部166、複製ファイルリスト180、遅延書込情報181及び複製送信設定情報182を含む。
ファイルサーバ部161は、アクセス要求に基づいて、ファイルへの書き込み、ファイルの読み出し等の処理を実行する。なお、ファイルサーバ部161が実行する処理の詳細については、図6を用いて後述する。
遅延複製制御部162は、ファイルサーバ部161によって書き込まれたデータの代替計算機への書き込みを一時的に保留し、ジョブの終了後に複製データを待機計算機であるサーバ計算機102Bに書き込む。遅延複製制御部162が実行する処理の詳細に付いては、図7及び図8を用いて後述する。
前述したように遅延複製制御部162は、ジョブが終了するまで、サーバ計算機102Bへの複製データの書き込みを保留する。これによって、サーバ計算機102Aに障害が発生するこることによってジョブが異常終了した場合でも、サーバ計算機102Bは、自身が保持するファイル(複製データ)を用いることによって、ジョブ開始前の状態からジョブを再開することができる。
ディスクドライバ163Aは、ファイルのデータを格納するディスク装置126A(図2参照)へのアクセスを実現するプログラムである。
ネットワークディスクドライバ164Aは、ネットワーク104を介して、ファイルのデータを格納するディスク装置126B(図2参照)へのアクセスを実現するプログラムである。ネットワークディスクドライバ164Aは、iSCSIなどが考えられる。
例えば、ネットワークディスクドライバ164Bに対して、ネットワークディスクドライバ164Aからのアクセスを許可するように設定した場合、サーバ計算機102Aは、ディスクドライバ163Aを用いてディスク装置126A(図2参照)にアクセスするための処理と同一の処理をネットワークディスクドライバ164Aに対して実行することによって、ディスク装置126B(図2参照)にアクセスできる。
複製送信設定部165は、複製データの送信先となるサーバ計算機102を設定する。複製送信設定部165が実行する処理の詳細については、図10を用いて後述する。
回復処理部166は、サーバ計算機102Aに障害が発生した後の回復処理を実行する。回復処理部166が実行する処理の詳細については、図11を用いて後述する。
複製ファイルリスト180は、ファイルとジョブとの関連性を示す情報を格納する。複製ファイルリスト180は、ファイルサーバ部161によって生成される。ファイルサーバ部161は、複製ファイルリスト180を参照して、ファイルに対する排他制御を実行する。なお、複製ファイルリスト180の詳細については、図3を用いて後述する。
遅延書込情報181は、複製データに関する情報を格納する。遅延書込情報181は、遅延複製制御部162によって生成される。遅延書込情報181の詳細については、図4を用いて後述する。
複製送信設定情報182は、複製データの送信先となるサーバ計算機102に関する情報を格納する。具体的には、複製送信設定情報182には、サーバ計算機102のネットワークアドレス、マックアドレス等が含まれる。本実施形態では、サーバ計算機102Bのネットワークアドレスが格納されるものとする。
サーバ計算機102Bは、サーバ計算機102Aに障害が発生した場合に代替計算機として稼動する計算機である。サーバ計算機102Bは、複製受信部144を備える。
複製受信部144は、サーバ計算機102Aから送信された複製データの書き込み、及び、障害発生時の復旧処理を実行するためのプログラムであり、複数のモジュールから構成される。具体的には、複製受信部144は、ディスクドライバ163B、ネットワークディスクドライバ164B、複製受信設定部169及びフェイルオーバー処理部170を含む。
ディスクドライバ163B及びネットワークディスクドライバ164Bは、ディスクドライバ163A及びネットワークディスクドライバ164Aと同一のものである。
複製受信設定部169は、実行計算機であるサーバ計算機102からのアクセス要求を許可するか否かを設定する。複製受信設定部169が実行する処理の詳細については、図9を用いて後述する。
フェイルオーバー処理部170は、フェイルオーバーを実行する。フェイルオーバー処理部170が実行する処理の詳細については、図12A及び図12Bを用いて後述する。
なお、図1に示す例では、サーバ計算機102Aは実行計算機として稼動し、サーバ計算機102Bはサーバ計算機102Aの代替計算機として稼動するものとして説明したが、本発明は前述した構成に限定されない。例えば、サーバ計算機102A及びサーバ計算機102Bが共にファイルシステムプログラム142及び複製受信部144を備え、それぞれ独立してジョブを行う実行計算機として稼動し、かつ、各サーバ計算機102A、102Bが他方のサーバ計算機102の代替計算機としても稼動する構成でもよい。
また、本実施形態では、スケジューラ計算機101と、サーバ計算機102とを別々の計算機としたが、本発明は限定されない。複数のサーバ計算機102の少なくとも1台がジョブスケジューラ141を備える構成であってもよい。
次に、スケジューラ計算機101、サーバ計算機102A及びサーバ計算機102Bのハードウェア構成について説明する。
図2Aは、本発明の第一の実施形態におけるスケジューラ計算機101のハードウェア構成を示すブロック図である。図2Bは、本発明の第一の実施形態におけるサーバ計算機102Aのハードウェア構成を示すブロック図である。図2Cは、本発明の第一の実施形態におけるサーバ計算機102Bのハードウェア構成を示すブロック図である。
図2Aに示すように、スケジューラ計算機101は、プロセッサ111、メモリ112、記憶装置113及びネットワークインタフェース114を備える。
プロセッサ111は、メモリ112に格納されたプログラムを実行する。プロセッサ111がプログラムを実行することによってスケジューラ計算機101の機能を実現できる。なお、プログラムを主語に処理を説明する場合、プロセッサ111によってプログラムが実行されていることを示す。
メモリ112は、プロセッサ111が実行するプログラム及び当該プログラムを実行するために必要なデータを格納する。本実施形態では、メモリ112には、ジョブスケジューラ141が格納される。メモリ112は、例えば、DRAMのような半導体メモリが考えられ、記憶装置113に比べ高速にアクセスすることができる。
記憶装置113は、プログラム及びデータを格納する。記憶装置113は、例えば、HDD及びSSDなどが考えられる。ネットワークインタフェース114は、ネットワーク104を介して、他の装置と接続するためのインタフェースである。
なお、ジョブスケジューラ141は記憶装置113又は外部の装置(図示省略)に格納されていてもよい。この場合、記憶装置113からジョブスケジューラ141が読み出され、又は、ネットワーク104を介して外部の装置からジョブスケジューラ141が読み出され、メモリ112に格納される。
図2B及び図2Cに示すように、サーバ計算機102A及びサーバ計算機102Bは同一のハードウェア構成である。サーバ計算機102Aは、プロセッサ121A、メモリ122A、記憶装置123A、ネットワークインタフェース124A、ストレージインタフェース125A及びディスク装置126Aを備える。また、サーバ計算機102Bは、プロセッサ121B、メモリ122B、記憶装置123B、ネットワークインタフェース124B、ストレージインタフェース125B及びディスク装置126Bを備える。
プロセッサ121A、121Bは、メモリ122A、122Bに格納されたプログラムを実行する。プロセッサ121Aがプログラムを実行することによってサーバ計算機102Aの機能を実現でき、プロセッサ121Bがプログラムを実行することによってサーバ計算機102Bの機能を実現できる。なお、プログラムを主語に処理を説明する場合、プロセッサ121A、121Bによってプログラムが実行されていることを示す。
メモリ122A、122Bは、プロセッサ121A、121Bが実行するプログラム及び当該プログラムを実行するために必要なデータを格納する。本実施形態では、メモリ122Aにはユーザーアプリケーション143及びファイルシステムプログラム142が格納され、メモリ122Bには複製受信部144が格納される。メモリ122A、122Bは、例えば、DRAMのような半導体メモリが考えられ、記憶装置123A、123Bに比べ高速にアクセスすることができる。
記憶装置123A、123Bは、プログラム及びデータを格納する。記憶装置123A、123Bは、例えば、HDD及びSSDなどが考えられる。ネットワークインタフェース124A、124Bは、ネットワーク104を介して、他の装置と接続するためのインタフェースである。
ストレージインタフェース125A、125Bは、大容量のデータが格納可能なストレージ装置(ディスク装置126A、126B)に接続するためのインタフェースである。本実施形態では、ストレージインタフェース125Aを介してディスク装置126Aに接続され、ストレージインタフェース125Bを介してディスク装置126Bに接続される。
ディスク装置126A、126Bは、ユーザーアプリケーション143によって実行される処理に必要なファイルを格納する。なお、ディスク装置126A、126Bは、複数あってもよい。また、複数のディスク装置126A、126Bを用いてRAIDを構成してもよい。また、ディスク装置126Aはサーバ計算機102Aに外付けされた形式でもよいし、また、ディスク装置126Bはサーバ計算機102Bに外付けされた形式でもよい。
なお、ユーザーアプリケーション143及びファイルシステムプログラム142は記憶装置123A又は外部の装置(図示省略)に格納されていてもよい。この場合、記憶装置123Aから各プログラムが読み出され、又は、ネットワーク104を介して外部の装置から各プログラムが読み出され、メモリ122Aに格納される。また、複製受信部144は記憶装置123B又は外部の装置(図示省略)に格納されていてもよい。この場合、記憶装置123Bから各プログラムが読み出され、又は、ネットワーク104を介して外部の装置から各プログラムが読み出され、メモリ122Bに格納される。
次に、サーバ計算機102Aに格納される情報について説明する。
図3は、本発明の第一の実施形態における複製ファイルリスト180の一例を示す説明図である。
複製ファイルリスト180は、ファイルとジョブとの対応関係を示すリスト形式の情報を格納する。
最初の情報610には、最初のエントリ611が格納される。最初のエントリ611には、リストに含まれる最初のエントリの格納先を示すメモリ122のアドレスが格納される。
最初のエントリ611が示すエントリ620には、ファイルとジョブとの対応関係が格納される。具体的には、エントリ620は、ファイルID621、ジョブID622及び次にエントリ623を含む。
ファイルID621は、ファイルを一意に識別する識別子である。ジョブID622は、ファイルID621に対応するファイルを用いて処理を実行するアプリケーション(ジョブ)の識別子である。
また、次のエントリ623は、次のエントリ620の格納先を示すメモリ122のアドレスである。次のエントリ623に、次のエントリ620がないことを示す「0x0」が格納される場合、当該エントリ620がリストの終端であることを示す。
なお、図3に示す複製ファイルリスト180は一例であって、ジョブの識別子とファイルの識別子とを含むものであれば、他の方式で複製ファイルリスト180が構成されてもよい。
図4は、本発明の第一の実施形態における遅延書込情報181の一例を示す説明図である。
遅延書込情報181は、ジョブと、当該ジョブによって書き込まれたデータの位置との対応関係を示すリスト形式の情報が格納される。具体的には、遅延書込情報181には、ジョブリストとブロックリストとが含まれる。
最初の情報700には、最初のエントリ701が格納される。最初のエントリ701には、ジョブリストにおける最初のエントリの格納先を示すメモリ122のアドレスが格納される。
最初のエントリ701が示すエントリ710には、ジョブとデータの位置との対応関係が格納される。エントリ710は、ジョブID711、ブロックリスト712及び次のエントリ713を含む。
ジョブID711は、ジョブを一意に識別する識別子である。ブロックリスト712は、ジョブによって書き込まれたデータの位置を示すブロックリストにおける最初のエントリの格納先を示すメモリ122のアドレスである。
次のエントリ713は、ジョブリストにおける次にエントリ710の格納先を示すメモリ122のアドレスである。次のエントリ713に、次のエントリ710がないことを示す「0x0」が格納される場合、当該エントリ710がリストの終端であることを示す。
ブロックリストにおける最初のエントリ720には、ジョブID711に対応するジョブによって書き込まれたデータの位置を示す情報が格納される。エントリ720は、ブロック番号721及び次のエントリ722を含む。
ブロック番号721は、ジョブによって書き込まれたデータを格納するブロックの位置を示すブロック番号である。次にエントリ722は、ブロックリストにおける次にエントリ720の格納先を示すメモリ122のアドレスである。
なお、図4に示す遅延書込情報181は一例であって、ジョブの識別子とブロック番号とを含むものであれば、他の方式で遅延書込情報181が構成されてもよい。
次に、各プログラムによって実行される処理について説明する。まず、ジョブスケジューラ141の処理について説明する。
図5は、本発明の第一の実施形態における終了通知部151が実行する処理を説明するフローチャートである。
終了通知部151は、終了処理部154からジョブの終了通知を受け付けると処理を開始する(ステップS201)。終了通知には、少なくともジョブの識別子が含まれる。
なお、終了処理部154は、ジョブを実行するサーバ計算機102からジョブが終了した旨の通知を受信することによってジョブが終了したことを検出できる。ここでは、サーバ計算機102Aからジョブが終了した旨の通知を受信したものとする。
終了通知部151は、ジョブの識別子に基づいてジョブ情報171を参照して、終了したジョブが割り当てられたサーバ計算機102Aの識別子を取得する(ステップS202)。ここでは、ネットワーク104におけるサーバ計算機102Aの識別子が取得される。
終了通知部151は、取得された識別子に対応するサーバ計算機102の遅延複製制御部162に、ジョブが終了した旨を通知する終了情報を送信する(ステップS203)。当該通知の後、終了通知部151は、処理を終了する(ステップS204)。なお、終了情報には、少なくともジョブの識別子が含まれる。
次に、ファイルシステムプログラム142の処理について説明する。
図6は、本発明の第一の実施形態におけるファイルサーバ部161が実行する処理を説明するフローチャートである。
ファイルサーバ部161は、ユーザーアプリケーション143などからアクセス要求を受け付けると処理を開始する(ステップS301)。なお、アクセス要求には、対象となるファイルの識別子(ファイルID)が含まれる。以下では、アクセス要求の対象となるファイルを対象ファイルとも記載する。
ファイルサーバ部161は、複製ファイルリスト180に対象ファイルの情報が記録されているか否かを判定する(ステップS302)。具体的には、ファイルサーバ部161は、アクセス要求に含まれるファイルIDに一致するエントリ620が複製ファイルリスト180に記録されている否かを判定する。
複製ファイルリスト180に対象ファイルの情報が記録されていないと判定された場合、ファイルサーバ部161は、ステップS305に進む。
複製ファイルリスト180に対象ファイルの情報が記録されていると判定された場合、ファイルサーバ部161は、複製ファイルリスト180に記録されたエントリ620を参照して、当該ファイルにアクセス中のジョブの識別子がアクセス要求を発行したジョブの識別子と一致するか否かを判定する(ステップS303)。
アクセス中のジョブの識別子がアクセス要求を発行したジョブの識別子と一致しないと判定された場合、ファイルサーバ部161は、エラー終了する(ステップS304)。これは、他のユーザーアプリケーション143によってアクセスされているファイルであることを示すためである。これによって、異なるジョブが同一ファイルに同時にアクセスするような競合アクセスを排除している。
アクセス中のジョブの識別子がアクセス要求を発行したジョブの識別子と一致すると判定された場合、ファイルサーバ部161は、ステップS305に進む。
ステップS302の判定結果がNO、又は、ステップS303の判定結果がYESの場合、ファイルサーバ部161は、アクセス要求が書込要求であるか否かを判定する(ステップS305)。
アクセス要求が書込要求でない、すなわち、アクセス要求が読出要求であると判定された場合は、ファイルサーバ部161は、読み出す対象ファイルのデータが格納されるディスク装置126A上のブロック番号を算出する(ステップS306)。
次に、ファイルサーバ部161は、ディスクドライバ163Aに対して、算出されたブロック番号を含む読出要求を出力する(ステップS307)。読出要求を受け付けたディスクドライバ163Aは、所定のディスク装置126Aから対象ファイルのデータを読み出す。読み出されたデータは、ディスクドライバ163Aからファイルサーバ部161に出力される。
次に、ファイルサーバ部161は、ディスク装置126Aから読み出されたデータをユーザーアプリケーション143に出力し、処理を終了する(ステップS308、ステップS312)。
ステップS305において、アクセス要求が書込要求であると判定された場合、ファイルサーバ部161は、複製ファイルリスト180に、ファイルの識別子と実行されるジョブの識別子とを対応づけて記録する(ステップS309)。当該処理によって、図3に示すようなエントリ620が生成される。新たなエントリ620が生成されると、その前に生成されていたエントリ620には、次にエントリ623に、新たなエントリ620へのアドレスが追加される。
なお、複製ファイルリスト180に同一の情報がすでに記録されている場合、重複して記録は行わないように制御される。
次に、ファイルサーバ部161は、書き込むデータのディスク装置126A上の格納先を示すブロック番号を算出する(ステップS310)。
次に、ファイルサーバ部161は、遅延複製制御部162に対して書込要求を出力し、処理を終了する(ステップS311、ステップS312)。なお、書込要求には、ジョブの識別子、ブロック番号及びデータが含まれる。
以上で説明したように、ファイルサーバ部161は、複製ファイルリスト180を参照して、各ファイルに高々一個のユーザーアプリケーション143からのみアクセスを受け付けるように制御する。
このように制御することによって、ユーザーアプリケーション143が異常終了した時に、当該ユーザーアプリケーション143による書き込み処理をすべて取り消した場合であっても、他のユーザーアプリケーション143への影響を抑制する効果がある。
複数のユーザーアプリケーション143が同時に読出処理を実行する場合には、ユーザーアプリケーション143の異常終了によるファイルへの影響はないため、前述したような制御を行う必要がない。したがって、複製ファイルリスト180に情報は登録されない。
図7及び図8は、本発明の第一の実施形態における遅延複製制御部162が実行する処理を説明するフローチャートである。遅延複製制御部162は、ジョブスケジューラ141の終了通知部151から終了情報を受信した場合、及び、ファイルサーバ部161から書込要求を受け付けた場合に起動する。
図7は、ファイルサーバ部161から書込要求を受け付けた場合に実行される処理を示す。
遅延複製制御部162は、ファイルサーバ部161から書込要求を受け付けると処理を開始する(ステップS401)。
遅延書込情報181は、書込要求に含まれるジョブの識別子及びブロック番号を抽出して、遅延書込情報181に、ジョブの識別子とブロック番号とを対応づけて記録する(ステップS402)。
遅延書込情報181は、ディスクドライバ163Aに、ブロック番号及びデータを含む、ディスク装置126Aへの書込要求を出力し、処理を終了する(ステップS403、ステップS404)。当該書込要求を受け付けたディスクドライバ163Aは、ディスク装置126Aの所定のブロックにデータを書き込む。
図8は、終了通知部151から終了情報を受信した場合に実行される処理を示す。
遅延複製制御部162は、終了通知部151から終了情報を受信すると処理を開始する(ステップS501)。なお、終了情報には、ジョブの識別子が含まれる。
遅延複製制御部162は、ジョブの識別子に基づいて遅延書込情報181を参照し、終了したジョブに対応するブロックリストを検索する(ステップS502)。具体的には、ジョブID711がジョブの識別子と一致するエントリ720が検索される。
その後、ブロックリストの全エントリに対して以下の処理が繰り返し実行される。
まず、遅延複製制御部162は、ブロックリストが空集合であるか否かを判定する(ステップS503)。すなわち、ブロックリストの全てのエントリ720について処理が終了したか否かが判定される。
ブロックリストが空集合でないと判定された場合、遅延複製制御部162は、リストに含まれるエントリ720を読み出し、エントリ720からブロック番号を取得し、読み出されたエントリ720をブロックリストから削除する(ステップS506)。
次に、遅延複製制御部162は、取得されたブロック番号に格納されたデータを読み出す(ステップS507)。具体的には、遅延複製制御部162は、取得されたブロック番号を含む読出要求をディスクドライバ163Aに出力する。当該読む出し要求を受け付けたディスクドライバ163Aは、ブロック番号に対応するディスク装置126A上のブロックからデータを読み出し、遅延複製制御部162に出力する。ここでは、読み出されたデータが複製データとなる。
遅延複製制御部162は、ブロック番号及び読み出されたデータ(複製データ)を含む書込要求をネットワークディスクドライバ164Aに出力し、ステップS503に戻る(ステップS508)。書込要求を受け付けたネットワークディスクドライバ164Aは、代替計算機であるサーバ計算機102Bに当該書込要求を転送する。サーバ計算機102Bは、転送された書込要求に基づいて、複製データをディスク装置126Bに格納する。
図10で後述するように、複製データを含む書込要求はサーバ計算機102Bに転送されるよう設定されている。転送されたデータは、サーバ計算機102Bのネットワークディスクドライバ164B及びディスクドライバ163Bを介してディスク装置126Bに格納される。
ステップS503において、ブロックリストが空集合であると判定された場合、遅延複製制御部162は、遅延書込情報181から当該ジョブに対応するエントリ710を削除して、処理を終了する(ステップS504、ステップS505)。
遅延複製制御部162は、データを受信すると同時に自身のディスク装置126Aに当該データを書き込む。一方、遅延複製制御部162は、終了通知部151から終了情報を受信するまで、サーバ計算機102Bへの書き込みを保留する。すなわち、ジョブスケジューラ141がジョブの終了を確認するまで、複製データの作成処理が保留される。
これによって、ジョブを実行するユーザーアプリケーション143が異常終了した場合であっても、サーバ計算機102Bのディスク装置126Bには、異常終了したユーザーアプリケーション143によって書き込まれたデータが反映されない。したがって、サーバ計算機102Bのディスク装置126Bを参照することによって、異常終了したユーザーアプリケーション143がジョブを開始する前の状態に戻すことが可能となる。
次に、サーバ計算機102における複製データの送受信の設定方法の一例を説明する。
以下で説明する例では、サーバ計算機102Bはサーバ計算機102Aの代替計算機として稼動するだけでなく、実行計算機としても稼動するものとする。すなわち、サーバ計算機102Bは、サーバ計算機102Aと同等にファイルシステムプログラム142を備え、当該プログラムを実行するものとする。したがって、サーバ計算機102A、102Bのお互いに他方の代替計算機となるように設定される。具体的に、複製受信設定部183が代替計算機としてデータを受信するための設定を行い、複製送信設定部165が実行計算機としてデータを送信するための設定を行う。
図9は、本発明の第一の実施形態における複製受信設定部169が実行する処理を説明するフローチャートである。
複製受信設定部169は、管理者からの起動命令を受け付けると処理を開始する(ステップS1001)。
まず、複製受信設定部169は、自身のネットワークインタフェース124に設定されたネットワークアドレスを取得する(ステップS1002)。取得されるネットワークアドレスは、例えばIPアドレスである。
複製受信設定部169は、取得されたネットワークアドレスが偶数であるか否かを判定する(ステップS1003)。IPアドレスがIPv4のIPアドレスである場合、ホストアドレス部分の数値が偶数か否かが判定される。例えば、取得されたIPアドレスが「192.168.1.160」の場合、当該IPアドレスは、偶数であると判定される。
ネットワークアドレスが偶数であると判定された場合、複製受信設定部169は、自身のネットワークアドレスに「1」を減じたネットワークアドレスが割り当てられるサーバ計算機102を実行計算機として、当該サーバ計算機102からネットワークディスクドライバ164を介したアクセスを許可するように設定し、処理を終了する(ステップS1004、ステップS1006)。なお、アクセス許可の設定情報はメモリ122に格納される。
ネットワークアドレスが偶数でない、すなわち、ネットワークアドレスが奇数であると判定された場合、複製受信設定部169は、自身のネットワークアドレスに「1」を加えたネットワークアドレスが割り当てられたサーバ計算機102を実行計算機として、当該サーバ計算機102からネットワークディスクドライバ164を介したアクセスを許可するように設定し、処理を終了する(ステップS1005、ステップS1006)。
図10は、本発明の第一の実施形態における複製送信設定部165が実行する処理を説明するフローチャートである。
複製送信設定部165は、管理者からの起動命令を受け付けると処理を開始する(ステップS1101)。
まず、複製送信設定部165は、自身のネットワークインタフェース124に設定されたネットワークアドレスを取得する(ステップS1102)。取得されるネットワークアドレスは、例えばIPアドレスである。
複製送信設定部165は、取得されたネットワークアドレスが偶数であるか否かを判定する(ステップS1103)。ステップS1103の処理は、ステップS1003と同一の処理である。
ネットワークアドレスが偶数であると判定され場合、複製送信設定部165は、自身のネットワークアドレスに「1」を加えたネットワークアドレスが割り当てられたサーバ計算機102を代替計算機として、当該サーバ計算機102をネットワークディスクドライバ164を介したアクセス先に設定し、ステップS1106に進む(ステップS1104)。
ネットワークアドレスが偶数でない、すなわち、ネットワークアドレスが奇数であると判定された場合、複製送信設定部165は、自身のネットワークアドレスから「1」を減じたネットワークアドレスが割り当てられたサーバ計算機102を代替計算機として、当該サーバ計算機102をネットワークディスクドライバ164を介したアクセス先に設定し、ステップS1106に進む(ステップS1105)。
複製送信設定部165は、代替計算機として設定したサーバ計算機102のネットアドレスを複製送信設定情報182に記録し、処理を終了する(ステップS1006、ステップS1107)。
図9及び図10において説明した処理によって、同様の構成である多数のサーバ計算機102の中から、互いに複製データを保持する計算機102のペアを自動的に生成することができる。
本実施形態では、各サーバ計算機102に1ずつ増える連続的なアドレスが割り当てられていることを仮定したが、本発明はこれに限定されない。すなわち、データの送信先及びデータの受信元をネットワークディスクドライバ164に設定できるものであれば、本発明は実施可能である。
次に、実行計算機であるサーバ計算機102Aに障害が発生した場合の処理について説明する。以下では、サーバ計算機102Aはシステム管理者によって障害原因が取り除かれ再起動されるものとする。回復処理部166は、再起動を契機に起動する。
図11は、本発明の第一の実施形態における回復処理部166が実行する処理を説明するフローチャートである。
回復処理部166は、再起動を契機に処理を開始した後、複製送信設定部165を起動させ、ネットワークディスクドライバ164を設定する(ステップS1201、ステップS1202)。
回復処理部166は、複製送信設定情報182を読み出す(ステップS1203)。本実施形態では、複製送信設定情報182には、サーバ計算機102Bのネットワークアドレスが記録されている。
回復処理部166は、代替計算機であるサーバ計算機102Bからディスク装置126Aへのアクセスを許可するようにネットワークディスクドライバ164Aを設定する(ステップS1204)。
その後、回復処理部166は、サーバ計算機102Bのフェイルオーバー処理部170からの完了通知を受信するまで処理を待つ(ステップS1205)。
回復処理部166は、ステップS1204においてネットワークディスクドライバ164Aに設定されたアクセス許可の設定を解除し、処理を終了する(ステップS1206)。その後、サーバ計算機102A、102Bは、通常の状態に戻る。
図12A及び図12Bは、本発明の第一の実施形態におけるフェイルオーバー処理部170が実行する処理を説明するフローチャートである。
サーバ計算機102Bは、サーバ計算機102Aの停止を検知すると、フェイルオーバー処理部170を起動する(ステップS1301)。その後、フェイルオーバー処理部170は、サーバ計算機102Aが回復するまで、以下の処理を繰り返し実行する。なお、サーバ計算機102Bは、ハートビート等を用いてサーバ計算機102Aが停止していることを検出できる。
まず、フェイルオーバー処理部170は、障害が発生したサーバ計算機102Aのファイルサーバ部161の代わりアクセス要求を受信する(ステップS1302)。なお、サーバ計算機102Bもファイルシステムプログラム142を備え、実行計算機として稼動しているものとする。また、アクセス要求の受信先の切り替え方法については、公知の技術であるため説明を省略する。
次に、フェイルオーバー処理部170は、受信したアクセス要求が書込要求であるか否かを判定する(ステップS1303)。
受信したアクセス要求が書込要求でない、すなわち、読出要求であると判定された場合、フェイルオーバー処理部170は、対象データが記録されるブロック番号を算出する(ステップS1304)。
さらに、フェイルオーバー処理部170は、ディスクドライバ163に算出されたブロック番号を含む読出要求を出力し、その後、ステップS1302に戻り、次にアクセス要求を待つ(ステップS1305)。読出要求を受け付けたディスクドライバ163Bは、ディスク装置126Bからデータを読み出す。読み出されたデータは、アクセス要求の送信元に送信される。
ステップS1303において、受信したアクセス要求が書込要求であると判定された場合、フェイルオーバー処理部170は、対象データをサーバ計算機102B及びサーバ計算機102Aの両方に反映させるために以下のような処理を実行する。
まず、フェイルオーバー処理部170は、障害が発生して停止していたサーバ計算機102Aが再起動しているか否かを判定する(ステップS1307)。
サーバ計算機102Aが再起動していないと判定された場合、フェイルオーバー処理部170は、サーバ計算機102Aの状態を確認する(ステップS1309)。
次に、フェイルオーバー処理部170は、前述した確認の結果に基づいて、サーバ計算機102Aの再起動を検出したか否かを判定する(ステップS1310)。例えば、サーバ計算機102Aから再起動した旨の通知を受けた場合、ハートビートによる応答があった場合には、サーバ計算機102Aの再起動を検出したと判定される。
サーバ計算機102Aの再起動が検出されていないと判定された場合、フェイルオーバー処理部170は、ディスク装置126Bにのみデータを反映させるために、算出されたブロック番号及びデータを含む書込要求をディスクドライバ163Bに出力し、ステップS1302に戻る(ステップS1311)。
サーバ計算機102Aの再起動が検出されたと判定された場合、フェイルオーバー処理部170は、ディスク装置126Bの内容をすべてディスク装置126Aに反映させるためのコピー処理を開始する(ステップS1312)。ただし、コピー処理では、すでにデータが反映された記憶領域については処理をスキップする。
ステップS1307において、サーバ計算機102Aが再起動していると判定された場合、又は、ステップS1312の後、フェイルオーバー処理部170は、ディスクドライバ163B及びネットワークディスクドライバ164Bに、算出されたブロック番号及びデータを含む書込要求を出力する(ステップS1313)。書込要求を受信したネットワークディスクドライバ164Bは、データを含む書込要求をサーバ計算機102Aに転送する。
当該処理によって、ディスク装置126A及びディスク装置126Bの両方に同一のデータが書き込まれる。
次に、フェイルオーバー処理部170は、コピー処理の進捗状況を確認し、当該コピー処理が終了したか否かを判定する(ステップS1314)。
コピー処理が終了していないと判定された場合、フェイルオーバー処理部170は、ステップS1302に戻る。
コピー処理が終了したと判定された場合、フェイルオーバー処理部170は、回復処理部166に完了通知を送信し、処理を終了する(ステップS1315、ステップS1316)。
回復処理部166及びフェイルオーバー処理部170は、代替計算機であるサーバ計算機Bからネットワークディスクドライバ164Bを介したディスク装置126Aへのアクセスを許可している。この操作によって、サーバ計算機102Bが実行計算機として処理を継続すると同時に、サーバ計算機102Aの停止中に書き込まれたデータをサーバ計算機102Aのディスク装置126Aに反映させることができる。
[第二の実施形態]
第二の実施形態では、代替計算機であるサーバ計算機102Bがディスク装置126Bへの複製データの書き込みを遅延させる点が第一の実施形態と異なる。以下、第一の実施形態との差異を中心に、第二の実施形態について説明する。
図13は、本発明の第二の実施形態の計算機システムの構成を示すブロック図である。
第二の実施形態では、サーバ計算機102A及びサーバ計算機102Bの構成が異なる。
具体的には、ファイルシステムプログラム142は遅延複製制御部162の代わりに複製制御部862を含む。また、複製受信部144は、新たに受信側遅延複製制御部871、遅延書込情報884及び一時書込領域890を含む。
また、第二の実施形態では、ファイルサーバ部861が実行する処理が、ファイルサーバ部161と異なる。具体的には、ステップS311において、ファイルサーバ部861は、複製制御部892に書込要求を出力する。その他の処理は第一の実施形態と同一である。
本実施形態では、サーバ計算機102Aはデータを書き込み場合、常にデータをサーバ計算機102Bにも送信する。したがって、サーバ計算機102Aは、遅延書込情報181を備えていない。また、サーバ計算機102Bは、ジョブスケジューラ141からの終了通知を受信するまでディスク装置126Bへのデータの書き込みを保留する。前述した処理を実現するため、サーバ計算機102Bは、受信側遅延複製制御部871、遅延書込情報884及び一時書込領域890を備える。
以下、第一の実施形態とは異なる構成部によって実行される処理について説明する。
図14は、本発明の第二の実施形態における複製制御部892が実行する処理を説明するフローチャートである。
複製制御部892は、ファイルサーバ部861から書込要求を受け付けると処理を開始する(ステップS1401)。
複製制御部892は、受け付けた書込要求に含まれる情報を変更することなく、当該書込要求をディスクドライバ163A及びネットワークディスクドライバ164Aに出力し、処理を終了する(ステップS1402、ステップS1403)。
受信側遅延複製制御部871は、書込要求を受信した場合に、図7と同様の処理を実行する。
具体的には、ステップS401において、受信側遅延複製制御部871は、複製制御部862からの書込要求を受信すると処理を開始する。ステップS402において、受信側遅延複製制御部871は、ジョブの識別子及びブロック番号を遅延書込情報884に記録する。また、ステップS403において、受信側遅延複製制御部871は、一時書込領域890にデータを格納する。
ここで、受信側遅延複製制御部871は、一時書込領域890へのデータの書き込む場合、直接、一時書込領域890にデータを書き込んでもよいし、ディスクドライバ163Bに一時書込領域890への書込要求を出力してもよい。
なお、一時書込領域890は、例えば、磁気ディスク、半導体ディスク、ソフトウェアによって実現された仮想的なディスク、又はそれらを併用したものによって実現され、実装の形式は任意である。
また、受信側遅延複製制御部871は、ジョブスケジューラ141の終了通知部151から終了情報を受信した場合に、図5と同様の処理を実行する。図5に示す処理との差異は、遅延書込情報884に基づいて処理が実行され、ステップS507におけるデータの読み出し元が一時書込領域890となり、ステップS508における書込要求の出力先がディスクドライバ163Bとなる点である。
その他の処理は第一の実施形態と同一であるため説明を省略する。
[第三の実施形態]
第三の実施形態では、第一の実施形態に加え、複数の代替計算機であるサーバ計算機102に複製データを分割して書き込む。以下、第一の実施形態との差異を中心に説明する。
図15は、本発明の第三の実施形態の計算機システムの構成を示すブロック図である。
第三の実施形態では、計算機システムが、代替計算機であるサーバ計算機102Cを含む点が異なる。なお、サーバ計算機102Cは、サーバ計算機102Bと同一の構成であり、ディスク装置126を備える。また、サーバ計算機102Aは、さらに、複製分割部1401を備える。
本実施形態では、複製分割部1401が、遅延複製制御部162によって生成された複製データを分割して、各サーバ計算機102B、102Cに格納する。
以下、第三の実施形態における処理について説明する。
第三の実施形態では、遅延複製制御部162が、終了通知部151から終了情報を受信した場合に実行する処理が異なる。具体的には、ステップS508において、遅延複製制御部162は、複製分割部1401に複製データの書込要求を出力する。他の処理は第一の実施形態と同一である。
図16は、本発明の第三の実施形態における複製分割部1401が実行する処理の詳細を説明するフローチャートである。
複製分割部1401は、遅延複製制御部162から書込要求を受け付けると処理を開始する(ステップS1501)。
複製分割部1401は、書込要求に含まれるブロック番号を参照して、当該ブロック番号が偶数であるか否かを判定する(ステップS1502)。ここでは、データの最初のブロック番号を対象とする。
ブロック番号が偶数であると判定された場合、複製分割部1401は、ネットワークディスクドライバ164Aを介して、サーバ計算機102Cに複製データの書込要求を送信し、処理を終了する(ステップS1503)。
ブロック番号が偶数でない、すなわち、ブロック番号が奇数であると判定された場合、複製分割部1401は、ネットワークディスクドライバ164Aを介してサーバ計算機102Bに複製データの書込要求を送信し、処理を終了する(ステップS1504)。
なお、第三の実施形態では、代替計算機であるサーバ計算機102を2台としたが、3台以上あってもよい。この場合、書き込みアドレスをサーバ計算機102の台数で除算した余りに基づいて、複製データの転送先を決定する方法が考えられる。
代替計算機であるサーバ計算機を複数台配置することによって、複製データの書き込むに必要な時間を短縮できる。したがって、複製データを保存するディスクドライブを低速かつ安価なディスク装置を用いて構成できる。
本発明によれば、代替計算機であるサーバ計算機102に対する複製データの書き込む場合に遅延を生じさせ、ジョブの終了を契機に複製データを代替計算機に反映することができる。これによって、実行計算機であるサーバ計算機102に障害が発生しても、代替計算機であるサーバ計算機102はジョブ開始の状態から当該ジョブを再開することができる。
なお、本発明は前述した実施形態に限定されるものではなく、様々な変形例が含まれる。例えば、前述した実施形態は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施形態の構成の一部を他の実施形態の構成に置き換えることが可能であり、また、ある実施形態の構成に他の実施形態の構成を加えることも可能である。また、各実施形態の構成の一部について、他の構成の追加、削除、置換をすることが可能である。
また、前述の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によってハードウェアを用いて実現してもよい。また、前述の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによってソフトウェアを用いて実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリ、ハードディスク及びSSD(Solid State Drive)等の記録装置、又は、ICカード、SDカード及びDVD等の記録媒体に格納することができる。また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際にはほとんど全ての構成が相互に接続されていると考えてもよい。

Claims (12)

  1. 一つの処理が複数に分割されたジョブを実行する複数の計算機がネットワークを介して接続される計算機システムであって、
    前記複数の計算機の各々は、プロセッサと、前記プロセッサに接続されるメモリと、前記プロセッサに接続される記憶媒体と、他の装置と接続するためのネットワークインタフェースとを有し、
    前記計算機システムは、前記複数の計算機が有する前記記憶媒体によって提供される記憶領域を統合したストレージ上に構成されるファイルシステムを備え、
    前記ファイルシステムは、前記ジョブの実行時に用いられる複数のファイルのデータを管理し、
    前記ストレージを構成する前記記憶領域を提供する前記複数の計算機の各々には、所定の範囲毎に前記ファイルのデータが分散して配置され、
    前記複数の計算機は、前記ジョブを実行する第1の計算機、前記第1の計算機の前記記憶媒体に格納されるデータの複製データを保持する第2の計算機、及び前記ジョブの実行スケジュールを管理するスケジューラ計算機を含み、
    前記計算機システムは、
    前記ジョブの終了を検出し、前記ジョブが終了した旨の通知を送信する終了通知部と、
    前記ジョブによって前記第1の計算機の記憶媒体に書き込まれたデータの複製データを生成し、前記通知を受信した後に前記複製データを前記第2の計算機の前記記憶媒体に書き込む複製制御部と、
    を備え、
    前記スケジューラ計算機は、前記終了通知部を有し、
    前記第1の計算機は、第1の複製制御部を有し、
    前記終了通知部は、
    前記ジョブの終了を検出した場合に、前記終了したジョブを実行していた前記第1の計算機の識別子を取得し、
    前記取得された第1の計算機の識別子が含まれる前記通知を、前記第1の複製制御部に送信し、
    前記第1の複製制御部は、
    前記第1の計算機の記憶媒体に書き込まれたデータの書き込み先を示す情報と、前記ジョブの識別子とを対応づけた書込情報を生成し、
    前記通知を受信した場合、前記書込情報を参照して前記第1の計算機の記憶媒体からデータを読み出し、
    前記読み出されたデータを前記複製データとして前記第2の計算機に送信することを特徴とする計算機システム。
  2. 請求項1に記載の計算機システムであって、
    前記第1の計算機は、
    前記ジョブの実行時に、前記ファイルシステムが管理する前記ファイルへのアクセス要求を処理するファイルサーバ部を有し、
    実行中の前記ジョブの識別子と、前記ジョブがアクセスするファイルの識別子とを対応づけたファイル情報を格納し、
    前記ファイルサーバ部は、
    前記ジョブによって出力されたアクセス要求を受け付けた場合、前記ファイル情報を参照して前記アクセス要求の対象となる前記ファイルの識別子に一致する情報が登録されているか否かを判定し、
    前記アクセス要求の対象となるファイルの識別子に一致する情報が登録されている場合、前記登録されている情報を参照して、前記アクセス要求の対象となるファイルと対応づけられる前記ジョブの識別子が、当該アクセス要求を出力した前記ジョブの識別子と一致するか否かを判定し、
    前記アクセス要求の対象となるファイルと対応づけられる前記ジョブの識別子が、当該アクセス要求を出力した前記ジョブの識別子と一致しない場合、前記アクセス要求の対象となるファイルへのアクセスを拒否し、
    前記アクセス要求の対象となるファイルと対応づけられる前記ジョブの識別子が、当該アクセス要求を出力した前記ジョブの識別子と一致する場合、前記アクセス要求の対象となるファイルへのアクセスを許可することを特徴とする計算機システム。
  3. 請求項2に記載の計算機システムであって、
    前記ファイルサーバ部は、
    前記ファイルへのアクセスが許可され、かつ、前記アクセス要求が書込要求である場合に、前記書込要求に含まれる前記ファイルの識別子及び前記ジョブの識別子を抽出して、前記ファイル情報に登録し、
    前記データの書き込み先を示す情報を算出し、
    前記ジョブの識別子、前記算出されたデータの書き込み先を示す情報及び前記データを含む書込要求を前記第1の複製制御部に送信し、
    前記第1の複製制御部は、
    前記ファイルサーバ部から前記書込要求を受信した場合に、前記書込要求に基づいて前記書込情報を生成し、
    前記書込要求に含まれるデータを前記第1の計算機の記憶媒体に書き込むことを特徴とする計算機システム。
  4. 一つの処理が複数に分割されたジョブを実行する複数の計算機がネットワークを介して接続される計算機システムであって、
    前記複数の計算機の各々は、プロセッサと、前記プロセッサに接続されるメモリと、前記プロセッサに接続される記憶媒体と、他の装置と接続するためのネットワークインタフェースとを有し、
    前記計算機システムは、前記複数の計算機が有する前記記憶媒体によって提供される記憶領域を統合したストレージ上に構成されるファイルシステムを備え、
    前記ファイルシステムは、前記ジョブの実行時に用いられる複数のファイルのデータを管理し、
    前記ストレージを構成する前記記憶領域を提供する前記複数の計算機の各々には、所定の範囲毎に前記ファイルのデータが分散して配置され、
    前記複数の計算機は、前記ジョブを実行する第1の計算機、前記第1の計算機の前記記憶媒体に格納されるデータの複製データを保持する第2の計算機、及び前記ジョブの実行スケジュールを管理するスケジューラ計算機を含み、
    前記計算機システムは、
    前記ジョブの終了を検出し、前記ジョブが終了した旨の通知を送信する終了通知部と、
    前記ジョブによって前記第1の計算機の記憶媒体に書き込まれたデータの複製データを生成し、前記通知を受信した後に前記複製データを前記第2の計算機の前記記憶媒体に書き込む複製制御部と、
    を備え、
    前記スケジューラ計算機は、前記終了通知部を有し、
    前記第1の計算機は、第1の複製制御部を有し、
    前記第2の計算機は、第2の複製制御部及び一時書込領域を有し、
    前記終了通知部は、
    前記ジョブの終了を検出した場合に、前記終了したジョブを実行していた前記第1の計算機の識別子を取得し、
    前記取得された第1の計算機の識別子が含まれる前記通知を、前記第2の複製制御部に送信し、
    前記第1の複製制御部は、
    前記第1の計算機の記憶媒体に書き込まれたデータを前記複製データとして前記第2の計算機に送信し、
    前記第2の複製制御部は、
    前記第1の計算機の記憶媒体に書き込まれたデータの書き込み先を示す情報と、前記ジョブの識別子とを対応づけた書込情報を生成し、
    前記受信した複製データを前記一時書込領域に書き込み、
    前記通知を受信した場合、前記書込情報を参照して前記一時書込領域に格納される前記複製データを前記第2の計算機の記憶媒体に書き込むことを特徴とする計算機システム。
  5. 請求項4に記載の計算機システムであって、
    前記第1の計算機は、
    前記ジョブの実行時に、前記ファイルシステムが管理する前記ファイルへのアクセス要求を処理するファイルサーバ部を有し、
    実行中の前記ジョブの識別子と、前記ジョブがアクセスするファイルの識別子とを対応づけたファイル情報を格納し、
    前記ファイルサーバ部は、
    前記ジョブによって出力されたアクセス要求を受け付けた場合、前記ファイル情報を参照して前記アクセス要求の対象となる前記ファイルの識別子に一致する情報が登録されているか否かを判定し、
    前記アクセス要求の対象となるファイルの識別子に一致する情報が登録されている場合、前記登録されている情報を参照して、前記アクセス要求の対象となるファイルと対応づけられる前記ジョブの識別子が、当該アクセス要求を出力した前記ジョブの識別子と一致するか否かを判定し、
    前記アクセス要求の対象となるファイルと対応づけられる前記ジョブの識別子が、当該アクセス要求を出力した前記ジョブの識別子と一致しない場合、前記アクセス要求の対象となるファイルへのアクセスを拒否し、
    前記アクセス要求の対象となるファイルと対応づけられる前記ジョブの識別子が、当該アクセス要求を出力した前記ジョブの識別子と一致する場合、前記アクセス要求の対象となるファイルへのアクセスを許可することを特徴とする計算機システム。
  6. 請求項5に記載の計算機システムであって、
    前記ファイルサーバ部は、
    前記ファイルへのアクセスが許可され、かつ、前記アクセス要求が書込要求である場合に、前記書込要求に含まれる前記ファイルの識別子及び前記ジョブの識別子を抽出して、前記ファイル情報に登録し、
    前記データの書き込み先を示す情報を算出し、
    前記ジョブの識別子、前記算出されたデータの書き込み先を示す情報及び前記データを含む書込要求を前記第1の複製制御部に送信し、
    前記第1の複製制御部は、
    前記書込要求に含まれるデータを前記第1の計算機の記憶媒体に書き込み、
    前記書込要求を前記第2の複製制御部に転送し、
    前記第2の複製制御部は、前記書込要求を受信した場合に、前記書込情報を生成し、
    前記受信した書込要求に含まれるデータを前記複製データとして前記一時書込領域に書き込むことを特徴とする計算機システム。
  7. 一つの処理が複数に分割されたジョブを実行する複数の計算機がネットワークを介して接続される計算機システムにおける複製制御方法であって、
    前記複数の計算機の各々は、プロセッサと、前記プロセッサに接続されるメモリと、前記プロセッサに接続される記憶媒体と、他の装置と接続するためのネットワークインタフェースとを有し、
    前記計算機システムは、前記複数の計算機が有する前記記憶媒体によって提供される記憶領域を統合したストレージ上に構成されるファイルシステムを備え、
    前記ファイルシステムは、前記ジョブの実行時に用いられる複数のファイルのデータを管理し、
    前記ストレージを構成する前記記憶領域を提供する前記複数の計算機の各々には、所定の範囲毎に前記ファイルのデータが分散して配置され、
    前記複数の計算機は、前記ジョブを実行する第1の計算機、前記第1の計算機の前記記憶媒体に格納されるデータの複製データを保持する第2の計算機、及び前記ジョブの実行スケジュールを管理するスケジューラ計算機を含み、
    前記方法は、
    前記複数の計算機のうち少なくとも一つの前記計算機が、前記ジョブの終了を検出し、ジョブが終了した旨の通知を送信する第1のステップと、
    前記複数の計算機のうち少なくとも一つの前記計算機が、前記ジョブによって前記第1の計算機の記憶媒体に書き込まれたデータの複製データを生成する第2のステップと、
    前記複数の計算機のうち少なくとも一つの前記計算機が、前記通知を受信した後に前記複製データを前記第2の計算機の前記記憶媒体に書き込む第3のステップと、
    を含み、
    前記第1のステップは、
    前記スケジューラ計算機が、前記ジョブの終了を検出した場合に、前記終了したジョブを実行していた前記第1の計算機の識別子を取得するステップと、
    前記スケジューラ計算機が、前記取得された第1の計算機の識別子が含まれる前記通知を、前記第1の計算機に送信するステップと、
    を含み、
    前記第2のステップは、前記第1の計算機が、前記第1の計算機の記憶媒体に書き込まれたデータの書き込み先を示す情報と、前記ジョブの識別子とを対応づけた書込情報を生成するステップを含み、
    前記第3のステップは、
    前記第1の計算機が、前記通知を受信した場合、前記書込情報を参照して前記第1の計算機の記憶媒体からデータを読み出すステップと、
    前記第1の計算機が、前記読み出されたデータを前記複製データとして前記第2の計算機に送信するステップと、
    を含むことを特徴とする複製制御方法。
  8. 請求項7に記載の複製制御方法であって、
    前記第1の計算機は、
    前記ジョブの実行時に、前記ファイルシステムが管理する前記ファイルへのアクセス要求を処理するファイルサーバ部を有し、
    実行中の前記ジョブの識別子と、前記ジョブがアクセスするファイルの識別子とを対応づけたファイル情報を格納し、
    前記方法は、さらに、
    前記第1の計算機が、前記ジョブによって出力されたアクセス要求を受け付けた場合、前記ファイル情報を参照して前記アクセス要求の対象となる前記ファイルの識別子に一致する情報が登録されているか否かを判定するステップと、
    前記第1の計算機が、前記アクセス要求の対象となるファイルの識別子に一致する情報が登録されている場合、前記登録されている情報を参照して、前記アクセス要求の対象となるファイルと対応づけられる前記ジョブの識別子が、当該アクセス要求を出力した前記ジョブの識別子と一致するか否かを判定するステップと、
    前記第1の計算機が、前記アクセス要求の対象となるファイルと対応づけられる前記ジョブの識別子が、当該アクセス要求を出力した前記ジョブの識別子と一致しない場合、前記アクセス要求の対象となるファイルへのアクセスを拒否するステップと、
    前記第1の計算機が、前記アクセス要求の対象となるファイルと対応づけられる前記ジョブの識別子が、当該アクセス要求を出力した前記ジョブの識別子と一致する場合、前記アクセス要求の対象となるファイルへのアクセスを許可するステップと、
    を含むことを特徴とする複製制御方法。
  9. 請求項8に記載の複製制御方法であって、
    前記方法は、さらに、
    前記第1の計算機が、前記ファイルへのアクセスが許可され、かつ、前記アクセス要求が書込要求である場合に、前記書込要求に含まれる前記ファイルの識別子及び前記ジョブの識別子を抽出して、前記ファイル情報に登録するステップと、
    前記第1の計算機が、前記データの書き込み先を示す情報を算出するステップと、
    前記第1の計算機が、前記ジョブの識別子、前記算出されたデータの書き込み先を示す情報及び前記データを含む書込要求を出力するステップと、
    を含み、
    前記第2のステップは、
    前記第1の計算機が、前記出力された書込要求を受信した場合に、前記書込要求に基づいて前記書込情報を生成するステップと、
    前記第1の計算機が、前記出力された書込要求に含まれるデータを前記第1の計算機の記憶媒体に書き込むステップと、
    を含むことを特徴とする複製制御方法。
  10. 一つの処理が複数に分割されたジョブを実行する複数の計算機がネットワークを介して接続される計算機システムにおける複製制御方法であって、
    前記複数の計算機の各々は、プロセッサと、前記プロセッサに接続されるメモリと、前記プロセッサに接続される記憶媒体と、他の装置と接続するためのネットワークインタフェースとを有し、
    前記計算機システムは、前記複数の計算機が有する前記記憶媒体によって提供される記憶領域を統合したストレージ上に構成されるファイルシステムを備え、
    前記ファイルシステムは、前記ジョブの実行時に用いられる複数のファイルのデータを管理し、
    前記ストレージを構成する前記記憶領域を提供する前記複数の計算機の各々には、所定の範囲毎に前記ファイルのデータが分散して配置され、
    前記複数の計算機は、前記ジョブを実行する第1の計算機、前記第1の計算機の前記記憶媒体に格納されるデータの複製データを保持する第2の計算機、及び前記ジョブの実行スケジュールを管理するスケジューラ計算機を含み、
    前記第2の計算機は、一時書込領域を有し、
    前記方法は、
    前記複数の計算機のうち少なくとも一つの前記計算機が、前記ジョブの終了を検出し、ジョブが終了した旨の通知を送信する第1のステップと、
    前記複数の計算機のうち少なくとも一つの前記計算機が、前記ジョブによって前記第1の計算機の記憶媒体に書き込まれたデータの複製データを生成する第2のステップと、
    前記複数の計算機のうち少なくとも一つの前記計算機が、前記通知を受信した後に前記複製データを前記第2の計算機の前記記憶媒体に書き込む第3のステップと、
    を含み、
    前記第1のステップは、
    前記スケジューラ計算機が、前記ジョブの終了を検出した場合に、前記終了したジョブを実行していた前記第1の計算機の識別子を取得するステップと、
    前記スケジューラ計算機が、前記第2の計算機に、前記取得された第1の計算機の識別子が含まれる前記通知を送信するステップと、
    を含み、
    前記第2のステップは、
    前記第1の計算機が、前記第1の計算機の記憶媒体に書き込まれたデータを前記複製データとして前記第2の計算機に送信するステップと、
    前記第2の計算機が、前記第1の計算機の記憶媒体に書き込まれたデータの書き込み先を示す情報と、前記ジョブの識別子とを対応づけた書込情報を生成するステップと、
    前記第2の計算機が、前記受信した複製データを前記一時書込領域に書き込むステップと、
    を含み、
    前記第3のステップは、前記第2の計算機が、前記通知を受信した場合、前記書込情報を参照して前記一時書込領域に格納される前記複製データを前記第2の計算機の記憶媒体に書き込むステップを含むことを特徴とする複製制御方法。
  11. 請求項10に記載の複製制御方法であって、
    前記第1の計算機は、
    前記ジョブの実行時に、前記ファイルシステムが管理する前記ファイルへのアクセス要求を処理するファイルサーバ部を有し、
    実行中の前記ジョブの識別子と、前記ジョブがアクセスするファイルの識別子とを対応づけたファイル情報を格納し、
    前記方法は、さらに、
    前記第1の計算機が、前記ジョブによって出力されたアクセス要求を受け付けた場合、前記ファイル情報を参照して前記アクセス要求の対象となる前記ファイルの識別子に一致する情報が登録されているか否かを判定するステップと、
    前記第1の計算機が、前記アクセス要求の対象となるファイルの識別子に一致する情報が登録されている場合、前記登録されている情報を参照して、前記アクセス要求の対象となるファイルと対応づけられる前記ジョブの識別子が、当該アクセス要求を出力した前記ジョブの識別子と一致するか否かを判定するステップと、
    前記第1の計算機が、前記アクセス要求の対象となるファイルと対応づけられる前記ジョブの識別子が、当該アクセス要求を出力した前記ジョブの識別子と一致しない場合、前記アクセス要求の対象となるファイルへのアクセスを拒否するステップと、
    前記第1の計算機が、前記アクセス要求の対象となるファイルと対応づけられる前記ジョブの識別子が、当該アクセス要求を出力した前記ジョブの識別子と一致する場合、前記アクセス要求の対象となるファイルへのアクセスを許可するステップと、
    を含むことを特徴とする複製制御方法。
  12. 請求項11に記載の複製制御方法であって、
    前記方法は、さらに、
    前記第1の計算機が、前記ファイルへのアクセスが許可され、かつ、前記アクセス要求が書込要求である場合に、前記書込要求に含まれる前記ファイルの識別子及び前記ジョブの識別子を抽出して、前記ファイル情報に登録するステップと、
    前記第1の計算機が、前記データの書き込み先を示す情報を算出するステップと、
    前記第1の計算機が、前記ジョブの識別子、前記算出されたデータの書き込み先を示す情報及び前記データを含む書込要求を出力するステップと、
    前記第1の計算機が、前記出力された書込要求に含まれるデータを前記第1の計算機の記憶媒体に書き込むステップと、
    前記第1の計算機が、前記出力された書込要求を前記第2の計算機に転送するステップと、
    を含み、
    前記第2のステップは、
    前記第2の計算機が、前記書込要求を受信した場合に、前記書込情報を生成するステップと、
    前記第2の計算機が、前記受信した書込要求に含まれるデータを前記複製データとして前記一時書込領域に書き込むステップと、
    を含むことを特徴とする複製制御方法。
JP2013544017A 2011-11-15 2011-11-15 計算機システム及び複製制御方法 Expired - Fee Related JP5731665B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2011/076283 WO2013073005A1 (ja) 2011-11-15 2011-11-15 計算機システム及び複製制御方法

Publications (2)

Publication Number Publication Date
JPWO2013073005A1 JPWO2013073005A1 (ja) 2015-04-02
JP5731665B2 true JP5731665B2 (ja) 2015-06-10

Family

ID=48429117

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013544017A Expired - Fee Related JP5731665B2 (ja) 2011-11-15 2011-11-15 計算機システム及び複製制御方法

Country Status (2)

Country Link
JP (1) JP5731665B2 (ja)
WO (1) WO2013073005A1 (ja)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04124743A (ja) * 1990-09-17 1992-04-24 Toshiba Corp データ2重化方式
JP3460265B2 (ja) * 1993-10-19 2003-10-27 株式会社日立製作所 計算機間のデータ引き継ぎ方法
JPH10161915A (ja) * 1996-11-29 1998-06-19 Hitachi Ltd 後発ジョブ優先の排他制御を実現するデータ引き継ぎ方法
EP1197876A3 (en) * 2000-10-13 2003-04-16 Miosoft Corporation Persistent data storage techniques

Also Published As

Publication number Publication date
WO2013073005A1 (ja) 2013-05-23
JPWO2013073005A1 (ja) 2015-04-02

Similar Documents

Publication Publication Date Title
US8074222B2 (en) Job management device, cluster system, and computer-readable medium storing job management program
US7971011B2 (en) Remote copy method and storage system
US8468133B2 (en) Workload learning in data replication environments
JP2019101703A (ja) 記憶システム及び制御ソフトウェア配置方法
US7461201B2 (en) Storage control method and system for performing backup and/or restoration
US8639898B2 (en) Storage apparatus and data copy method
US10191685B2 (en) Storage system, storage device, and data transfer method
JP6024296B2 (ja) 情報処理装置、コピー制御プログラム、およびコピー制御方法
JP5391277B2 (ja) ストレージシステム及びストレージシステムの処理効率向上方法
WO2018054079A1 (zh) 一种存储文件的方法、第一虚拟机及名称节点
WO2014080492A1 (ja) 計算機システム、クラスタ管理方法、及び管理計算機
WO2018076633A1 (zh) 一种远程数据复制方法、存储设备及存储系统
JP5422657B2 (ja) ストレージシステム及びストレージシステムの処理効率向上方法
JP2007310448A (ja) 計算機システム、管理計算機、および、ストレージシステム管理方法
KR101427535B1 (ko) 정보 처리 장치, 기록 매체 및 영역 해방 제어 방법
JP7192388B2 (ja) 並列処理装置、並列演算実行プログラムおよびバックアップ方法
JP5778872B2 (ja) ストレージシステムおよびデータ管理方法
JP5967073B2 (ja) プロセッサ管理方法
JP6019940B2 (ja) 情報処理装置、コピー制御プログラム、およびコピー制御方法
JP5731665B2 (ja) 計算機システム及び複製制御方法
CN107515723B (zh) 用于管理存储系统中的存储器的方法和系统
JP6643524B2 (ja) ストレージシステム及び記憶制御方法
US8930485B2 (en) Information processing apparatus and non-transitory computer-readable recording medium having program stored thereon
JP7050707B2 (ja) ストレージ制御装置、ストレージシステム、ストレージ制御方法、及び、ストレージ制御プログラム
JP6802304B2 (ja) ストレージ制御装置、ストレージ制御システム、ストレージ制御方法、及び、ストレージ制御プログラム

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150203

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150313

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150409

R150 Certificate of patent or registration of utility model

Ref document number: 5731665

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees