JP2013120463A - 情報処理方法、情報処理システム、情報処理装置及びプログラム - Google Patents

情報処理方法、情報処理システム、情報処理装置及びプログラム Download PDF

Info

Publication number
JP2013120463A
JP2013120463A JP2011267511A JP2011267511A JP2013120463A JP 2013120463 A JP2013120463 A JP 2013120463A JP 2011267511 A JP2011267511 A JP 2011267511A JP 2011267511 A JP2011267511 A JP 2011267511A JP 2013120463 A JP2013120463 A JP 2013120463A
Authority
JP
Japan
Prior art keywords
access
file
storage device
information processing
result
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.)
Pending
Application number
JP2011267511A
Other languages
English (en)
Inventor
Takafumi Hibi
啓文 日比
Daisuke Izaki
大輔 井崎
Kyosuke Yoshida
恭助 吉田
Yoshihiro Tamura
吉弘 田村
Yoshinori Takagi
芳徳 高木
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.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Priority to JP2011267511A priority Critical patent/JP2013120463A/ja
Publication of JP2013120463A publication Critical patent/JP2013120463A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】ファイルレベルのミラーリングを用いた高品質なストレージシステムを実現するための情報処理方法、情報処理システム、情報処理装置及びプログラムを提供すること。
【解決手段】上記目的を達成するため、本技術の一形態に係る情報処理方法は、ファイルを記憶することが可能な第1の記憶装置への第1のファイルアクセスを、前記第1の記憶装置に記憶された前記ファイルの複製を記憶する第2の記憶装置に第2のファイルアクセスとして転送することを含む。前記第1のファイルアクセスに対する前記第1の記憶装置の第1のアクセス結果と、前記転送された第2のファイルアクセスに対する前記第2の記憶装置の第2のアクセス結果との整合性が判別される。
【選択図】図1

Description

本技術は、ミラーリングを用いたストレージシステムを実現するための情報処理方法、情報処理システム、情報処理装置及びプログラムに関する。
従来、ミラーリング技術を用いたストレージシステムが知られている。ミラーリング技術は、ブロックレベルのミラーリングと、ファイルレベルのミラーリングの2つに大別される。
ブロックレベルのミラーリングの方法としてRAID1が知られている。RAID1では1つのファイルエントリに対して、2つ以上のブロックが割り当てられる。データが保存される際には、割り当てられた2つ以上のブロックに同じデータがそれぞれ記録される。
RAID1では、片方のブロックが使用不可能な状態に陥っても、もう片方のブロックが利用可能で、冗長性を担保できる。しかし、RAIDカードのようなRAID1の構成を管理している部分に障害が発生した場合には利用することができない。また、RAID1を組む複数のブロックは同じサイズで、かつ同じ速度であることが期待されるため、構成の柔軟性に欠ける。
一方ファイルレベルのミラーリングには共有ディスクを用いる方式と、用いない方式がある。共有ディスクを用いる方式については、例えば特許文献1に記載されている。この方式では、高価な共有ディスクが必要となり、コストが高くなる。
共有ディスクを用いない方式としては、例えばマイクロソフト社のDFS−R(分散ファイルシステムレプリケーション)があげられる。また例えば特許文献2に記載のような主従のリプリケーション構造を持つものがあげられる。
これらの方式は、一般には、災害等が起きたときのデータの保護を目的に用いられる。すなわち主ストレージの設置場所から離れた場所にミラーリング先となる従ストレージが設けられる。例えばデータが従ストレージに到達したときに、当該データをディスクに書き込む前にAckを返すことで、遠隔地でも高速にデータをコピーすることが可能である。
特開平6−175788号公報 特表平8−509565号公報
近年では、カメラ等で撮影された動画コンテンツ等のデータが、ファイルベースで取り扱われることが多くなっている。このような動画コンテンツデータは大容量となることが多い。このようなコンテンツデータを保持するための高品質のストレージシステムを、ファイルレベルのミラーリングを用いて実現することが求められる。
以上のような事情に鑑み、本技術の目的は、ファイルレベルのミラーリングを用いた高品質なストレージシステムを実現するための情報処理方法、情報処理システム、情報処理装置及びプログラムを提供することにある。
上記目的を達成するため、本技術の一形態に係る情報処理方法は、ファイルを記憶することが可能な第1の記憶装置への第1のファイルアクセスを、前記第1の記憶装置に記憶された前記ファイルの複製を記憶する第2の記憶装置に第2のファイルアクセスとして転送することを含む。
前記第1のファイルアクセスに対する前記第1の記憶装置の第1のアクセス結果と、前記転送された第2のファイルアクセスに対する前記第2の記憶装置の第2のアクセス結果との整合性が判別される。
この情報処理方法では、第1の記憶装置への第1のファイルアクセスが、ファイルの複製を記憶する第2の記憶装置に、第2のファイルアクセスとして転送される。そして第1の記憶装置による第1のアクセス結果と、第2の記憶装置による第2のアクセス結果との整合性が判別される。これによりファイルレベルのミラーリングを用いた高品質なストレージシステムを実現することが可能となる。
前記判別ステップは、前記第1のアクセス結果と、前記第2のアクセス結果とをトランザクションで管理してもよい。
前記情報処理方法は、さらに、前記判別ステップで前記整合性が保たれていないと判別された場合に、前記第1の記憶装置及び前記第2の記憶装置に対してエラー処理を実行することを含んでもよい。
前記エラー処理の実行ステップは、前記第1及び前記第2のアクセス結果のうち成功となったアクセス結果をキャンセルしてもよい。
前記転送ステップは、前記ファイルの第1のライトアクセスを、前記第2の記憶装置に前記第2のライトアクセスとして転送してもよい。この場合、前記エラー処理の実行ステップは、前記判別ステップで前記整合性が保たれていないと判別された場合に、前記第1及び前記第2のライトアクセスのうちアクセス結果が失敗となったライトアクセスに関する書き込み先のアドレスをエラーアドレスとして、当該アドレスへのリードアクセスを制限してもよい。
前記転送ステップは、前記ファイルの第1のライトアクセスを、前記第2の記憶装置に前記第2のライトアクセスとして転送してもよい。この場合、前記判別ステップは、前記第2の記憶装置からの前記第2のライトアクセスを受信した旨の応答を前記第2のアクセス結果として前記整合性を判別してもよい。また前記情報処理方法は、さらに、前記第2のライトアクセスに関する書き込み先のアドレスをエラーアドレスとして、当該アドレスへのリードアクセスを制限することを含んでもよい。
この情報処理方法では、第2のライトアクセスを受信した旨の応答を第2のアクセス結果として整合性が判別される。これによりストレージ処理の高速化を図ることができる。また第2のライトアクセスに関する書き込み先のアドレスをエラーアドレスとして、当該アドレスへのリードアクセスが制限される。これにより高品質なストレージシステムを実現することが可能となる。
前記転送ステップは、前記第1のファイルアクセスの転送であることを示す識別子を、前記第2のファイルアクセスに付与してもよい。この場合、前記情報処理方法は、さらに、前記第2の記憶装置への、前記識別子を有さない第3のファイルアクセスを前記第1の記憶装置に第4のファイルアクセスとして転送することを含んでもよい。また前記転送ステップは、前記第4のファイルアクセスを前記第1のファイルアクセスとして処理してもよい。
この情報処理方法では、第2の記憶装置への第3のファイルアクセスが、第1の記憶装置に第4のファイルアクセスとして転送せれる。転送された第4のファイルアクセスは、第1のファイルアクセスとして処理される。これによりスループットの高い高品質なストレージシステムを実現することが可能となる。
前記転送ステップは、前記第1のファイルアクセスである第1のライトアクセスの転送であることを示す識別子を、前記第2のファイルアクセスである第2のライトアクセスに付与してもよい。この場合、前記情報処理方法は、さらに、前記第2の記憶装置への、前記識別子を有さない第3のライトアクセスを前記第1の記憶装置に第4のライトアクセスとして転送してもよい。また前記転送ステップは、前記第4のライトアクセスを前記第1のライトアクセスとして処理してもよい。
本技術の一形態に係る情報処理システムは、ファイルを記憶することが可能な第1の記憶装置と、前記第1の記憶装置に記憶された前記ファイルの複製を記憶する第2の記憶装置とを具備する。
前記第1の記憶装置は、転送部と、判別部とを有する。
前記転送部は、前記前記第1の記憶装置への第1のファイルアクセスを、前記第2の記憶装置に第2のファイルアクセスとして転送する。
前記判別部は、前記第1のファイルアクセスに対する前記第1の記憶装置の第1のアクセス結果と、前記転送された第2のファイルアクセスに対する前記第2の記憶装置の第2のアクセス結果との整合性を判別する。
本技術の一形態に係る情報処理装置は、記憶部と、受付部と、転送部と、判別部とを具備する。
前記記憶部は、ファイルを記憶することが可能である。
前記受付部は、前記ファイルに関する第1のファイルアクセスを受け付ける。
前記転送部は、前記受け付けられた第1のファイルアクセスを、前記記憶部に記憶された前記ファイルの複製を記憶する外部の記憶装置に第2のファイルアクセスとして転送する。
前記判別部は、前記第1のファイルアクセスに対する第1のアクセス結果と、前記転送された第2のファイルアクセスに対する前記外部記憶装置の第2のアクセス結果との整合性を判別する。
本技術の一形態に係るプログラムは、前記記憶部と、前記受付部と、前記転送部と、前記判別部と、としてコンピュータを機能させる。
以上のように、本技術によれば、ファイルレベルのミラーリングを用いた高品質なストレージシステムを実現することが可能となる。
本技術の第1の実施形態に係る情報処理システムとしてのストレージシステムの構成例を示す模式的な図である。 第1の実施形態に係るストレージシステムの動作例を示す模式的なシーケンス図である。 第1の実施形態に係るトランザクション判定テーブルの一例を示す図である。 図1に示すストレージシステムのライトアクセス実行時における動作の一例を示すフローチャートである。 第1の実施形態に係るリードアクセスとしてのReadFileが発行されるまでの処理の一例を示すフローチャートである。 本技術の第2の実施形態に係る情報処理システムとしてのストレージシステムの構成例を示す模式的な図である。 図6に示すストレージシステムのライトアクセス実行時における動作の一例を示すフローチャートである。 本技術の第3の実施形態に係る情報システムとしてのストレージシステムの構成例を示す模式的な図である。 図8に示すアクセス判定部の動作例を示すフローチャートである。
以下、本技術に係る実施形態を、図面を参照しながら説明する。
<第1の実施形態>
[ストレージシステムの構成]
図1は、本技術の第1の実施形態に係る情報処理システムとしてのストレージシステムの構成例を示す模式的な図である。このストレージシステム100により、本実施形態に係る情報処理方法が実行される。
ストレージシステム100は、第1の記憶装置10と、第2の記憶装置20と、第1及び第2の記憶装置10及び20のそれぞれの動作を管理する管理装置30とを有する。第1及び第2の記憶装置10及び20と、管理装置30とは、図示しないネットワークを通じて相互に接続されている。
ネットワークは、例えばLAN(Local Area Network)、WAN(Wide Area Network)等が用いられる。しかしながらネットワークの種類やそれに用いられるプロトコル等は限定されない。例えば第1の記憶装置10と管理装置30とがLANで接続され、これらと第2の記憶装置20とがそれぞれWANで接続されるといった構成も可能である。
第1及び第2の記憶装置10及び20は、動画コンテンツ等のファイルデータを記憶する図示しない記憶デバイス(記憶部)をそれぞれ有する。記憶デバイスとしては、例えばSSD(Solid State Drive)、複数のディスクがRAID(Redundant Arrays of Inexpensive Disks)技術により束ねられたRAIDデバイス等が用いられる。又はiSCSI(Internet Small Computer System Interface)イニシエータによりディスクが束ねられたもの等が用いられてもよい。あるいは、HDD(Hard Disk Drive)やテープを用いた記憶デバイス等が用いられてもよい。その他種々の記憶デバイスが用いられてよい。
これら記憶デバイスは、第1及び第2の記憶装置10及び20に内蔵されてもよい。あるいは第1及び第2の記憶装置10及び20に、外部の記憶デバイスとしてネットワーク等を通じて接続されてもよい。また各記憶デバイスとして、クラスタストレージを構成するものが用いられてもよい。
また管理装置30も、例えばHDD、フラッシュメモリ、その他の固体メモリ等からなる不揮発性の記憶デバイスを有する。
第1及び第2の記憶装置10及び20、及び管理装置30としては、例えばPC(Personal computer)等のコンピュータがそれぞれ用いられる。各装置による情報処理は、コンピュータが有するROM(Read Only Member)等に記憶された等のソフトウェアと、PC等のハードウェア資源との協働により実現される。具体的には、CPU(Central Processing Unit)がROM等に記憶されたソフトウェアを構成するプログラムを、RAM(Random Access Memory)にロードして実行することにより実行される。
すなわち図1に示す各装置の機能ブロックやモジュールは、プログラムをもとにCPU等が動作することで実現される。プログラムは、例えば記録媒体を介して各装置にインストールされる。又はグローバルネットワーク等を介してインストールされてもよい。なお各ブロックやモジュールを実現するためにハードウェアが適宜設けられてもよい。
本実施形態では、ネットワーク等を通じて接続された図示しない外部機器からストレージシステム100に対して種々のファイルアクセスが行われる。
外部機器としては、例えばストレージシステム100に映像データや音声データ等の素材データをファイルデータとして出力する出力装置がある。また、ストレージシステム100から所定のファイルデータを読み出して編集処理等を実行する編集装置がある。その他、外部機器として、ファイルデータを取り扱う種々のクライアント装置があげられる。
ファイルアクセスとしては、例えばファイルを開く(ファイルの作成を含む)、ファイルにデータを書く、ファイルからデータを読む、ファイルのメタデータを変更する、ファイルを閉じる等の様々なアクセスがある。ファイルアクセスの種類は限定されない。
本実施形態では仮想環境等を利用することで、外部機器からはストレージシステム100全体が1つのストレージとして認識される。なおストレージシステム100内においては、第1の記憶装置10に対して、第2の記憶装置20は外部の記憶装置に相当する。
図1に示すように、第1の記憶装置10は、ファイルシステム11と、IRP(I/O Request Packet)オペレーションモジュール12と、I/O(Input/Output)転送モジュール13と、トランザクション管理モジュール14と、エラー処理モジュール15とを有する。
ファイルシステム11は、第1の記憶装置10が有する記憶デバイスに記憶されたファイルデータの管理を行う。例えば外部機器が有するアプリケーション40によりファイルアクセスが実行される。そうすると当該ファイルアクセスが、第1の記憶装置10が有するファイルシステム11に対するI/Oリクエストとして、アプリケーション40から発行される。I/Oリクエストを受けたファイルシステム11は所定のアクセスを実行する。
外部機器による第1の記憶装置10へのファイルアクセスは第1のファイルアクセスに相当する。以後、第1のファイルアクセスが実行されることにより発行されるI/Oリクエストを第1のI/Oリクエストと記載する。
また第1のI/Oリクエストに対するファイルシステム11のアクセス結果を第1のアクセス結果と記載する。この第1のアクセス結果は、第1のファイルアクセスに対する第1の記憶装置10のアクセス結果を意味する。第1のアクセス結果は、IRPオペレーションモジュール12に返される。
なお本実施形態では、外部機器からのファイルアクセスは第1の記憶装置10により受け付けられ、第2の記憶装置20には受け付けられない。すなわち本実施形態では、アクティブ/パッシブ構成にて第1及び第2の記憶装置10及び20が動作する。従って第1及び第2の記憶装置10及び20は、それぞれメインクラスタ及びサブクラスタとして動作する。
従って、本実施形態に係るミラーリングでは、アクティブなミラー元に書き込まれたファイルデータがパッシブなミラー元にミラーリングされる。この結果、第1の記憶装置10の記憶デバイスに記憶されたファイルデータの複製が、第2の記憶装置20の記憶デバイスに記憶される。第1の記憶装置10にのみファイルアクセスが発行されるので、エラーが発生したとき等の処理を簡略化することが可能となる。
IRPオペレーションモジュール12は、ファイルシステム11のフィルタドライバとして実装される。IRPオペレーションモジュール12は、ファイルシステム11に送信された第1のI/Oリクエストをフックして、そのコピーをI/O転送モジュール13に送信することが可能である。
I/O転送モジュール13は、ミラー先として設定された第2の記憶装置20に第1のI/Oリクエストのコピーを発行する。このように本実施形態では、第1の記憶装置10への第1のファイルアクセスが第2の記憶装置20に第2のファイルアクセスとして転送される。以後、第1のI/Oリクエストのコピーを第2のI/Oリクエストと記載する。
IRPオペレーションモジュール12及びI/O転送モジュール13は、本実施形態に係る受付部及び転送部として機能する。
またI/O転送モジュール13は、第2の記憶装置20のファイルシステム21から、第2のI/Oリクエストに対するアクセス結果を受け取る。
以後、第2のI/Oリクエストに対するファイルシステム21のアクセス結果を第2のアクセス結果と記載する。この第2のアクセス結果は、第2のファイルアクセスに対する第2の記憶装置20のアクセス結果を意味する。第2のアクセス結果は、IRPオペレーションモジュール12に返される。
トランザクション管理モジュール14は、IRPオペレーションモジュール12から第1及び第2のアクセス結果を受信する。トランザクション管理モジュール14は、第1及び第2のアクセス結果に対してトランザクション判定処理を実行する。
例えば第1及び第2のアクセス結果がともに成功となる場合は、第1のI/Oリクエストの成功という結果がアプリケーション40に返される。また第1及び第2のアクセス結果がともに失敗となる場合は、第1のI/Oリクエストの失敗という結果がアプリケーション40に返される。
第1及び第2のアクセス結果の一方が成功となり他方が失敗となる場合は、その情報がエラー処理モジュール15に送信される。トランザクション判定処理は、後述するトランザクション判定テーブル17が参照されることで実行される。
このように本実施形態では、第1のアクセス結果と、第2のアクセス結果とがトランザクションで管理される。これにより第1のアクセス結果と、第2のアクセス結果との整合性が判別される。トランザクション管理モジュール14は、本実施形態に係る判別部として機能する。
またトランザクション管理モジュール14は、エラーアドレス16の情報を有する。例えばファイルアクセスとしてライトアクセスが実行されそのアクセス結果が失敗となった場合に、書き込み先のアドレスがエラーアドレス16として登録される場合がある。そのエラーアドレス16の情報がトランザクション管理モジュール14により扱われる。トランザクション判定処理及びエラーアドレス16については後に詳しく説明する。
エラー処理モジュール15は、トランザクション判定処理により第1及び第2のアクセス結果に不整合が生じた場合に、その調停を行う。このように本実施形態では、第1及び第2のアクセス結果の整合性が保たれていないと判別された場合に、そのエラーを復旧させるために、第1及び第2の記憶装置10及び20に対してエラー処理が実行される。
管理装置30は、エラー処理モジュール15によるエラー処理を管理するエラーマネージャ31を有する。また管理装置30の記憶デバイスには、第1及び第2の記憶装置10及び20に対するミラーリング設定の情報である設定値32が格納されている。
本実施形態では、予め管理装置30により第1及び第2の記憶装置10及び20にミラーリング設定が行われる。例えば第1の記憶装置10に対してミラー元となるsrcディレクトリが設定される。また第2の記憶装置20に対してミラー先となるdestディレクトリが設定される。その他、ミラーリングのための種々の設定が行われてよい。
[ストレージシステムの動作]
図2は、本実施形態に係るストレージシステム100の動作例を示す模式的なシーケンス図である。図2では、第1及び第2の記憶装置10及び20の動作を中心としたシーケンスが図示されており管理装置30の動作は省略されている。
アプリケーション40により第1のファイルアクセスが実行される。図2に示す例では、ファイルを開くアクセスが実行される。これによりネットワーク50を通じて、アプリケーション40から第1の記憶装置10に、第1のI/Oリクエストが発行される(ステップ101)。
IRPオペレーションモジュール12により、第1の記憶装置10に送信された第1のI/Oリクエストがフックされる。IRPオペレーションモジュール12は、フックした第1のI/Oリクエストが、どのディレクトリ下にあるファイルへのアクセスであるかを判定する。この判定処理は、管理装置30の記憶デバイスに格納された設定値32が参照されることで行われる。
例えば第1のI/Oリクエストが、予めミラー元として設定されたsrcディレクトリ下にあるファイルへのアクセスであったとする。この場合、IRPオペレーションモジュール12は、ファイルシステム11に第1のI/Oリクエストを発行するとともに、I/O転送モジュール13に第2の第1のI/Oリクエストを送信する。
ファイルシステム11は、第1のI/Oリクエストをもとに記憶デバイス18に記憶されたリクエスト対象のファイルにアクセスする(ステップ102)。そして第1のI/Oリクエストに対する第1のアクセス結果がIRPオペレーションモジュール12に返され、トランザクション管理モジュール14に送信される(ステップ103)。
I/O転送モジュール13は、ミラー先として設定されたdestディレクトリ下のファイルへのアクセスとして、第2のI/Oリクエストを第2の記憶装置20に送信する(ステップ104)。
I/O転送モジュール13によって発行された第2のI/Oリクエストは、第2の記憶装置20のファイルシステム21に送信される。ファイルシステム21は、第2のI/Oリクエストをもとに記憶デバイス28に記憶されたリクエスト対象のファイルにアクセスする(ステップ105)。
第2のI/Oリクエストに対する第2のアクセス結果がファイルシステム21に返される(ステップ106)。第2のアクセス結果は、第1の記憶装置10のIRPオペレーションモジュール12を介してトランザクション管理モジュール14に送信される(ステップ107)。
トランザクション管理モジュール14によりトランザクション判定処理が実行される(ステップ108)。またトランザクション判定処理の結果をもとに、エラー処理モジュール15及びエラーマネージャ31によりエラー処理が実行される(ステップ109)。エラー処理の結果は、アプリケーション40に返される(ステップ110)。
図3は、トランザクション判定処理及びエラー処理にて参照されるトランザクション判定テーブル17の一例を示す図である。
ファイルを開くアクセスとしてのCreateFileについて判定テーブル17を見てみる。そうすると第 1及び第2のアクセス結果がともに成功(丸印)又はともに失敗(Error)の場合は、トランザクション判定は正常となる。そして上記したように第1のI/Oリクエストの成功又は失敗の結果がアプリケーション40に返される。
この場合のエラー処理は、図3に示すように、エラー処理モジュール15に対してもエラーマネージャ31に対しても、DO_NOTHINGとなっている。すなわちエラー処理モジュール15によるエラー処理もエラーマネージャ31によるエラー処理も実行されない。
第1のアクセス結果が成功となり、第2のアクセス結果が失敗となった場合は、エラー処理が実行される。なお本実施形態では、第2のアクセス結果の失敗として、「STATUS_SHARING_VIOLATION」と「OtherError」とが区別して設定される。そしてトランザクション判定も、これらについて正常とErrorとで区別されている。
「STATUS_SHARING_VIOLATION」は、例えば他のファイルアクセスとの競合によりCreateFileが実行不可である場合等に発生する。この場合には、エラー処理モジュール15により、第1の記憶装置10による第1のアクセス結果がキャンセルされる。そして「STATUS_SHARING_VIOLATION」がアプリケーション40に通知される。
エラーマネージャ31に対してはDO_NOTHINGとなっておりエラー処理は実行されない。「STATUS_SHARING_VIOLATION」を受けたアプリケーション40は、その旨を外部機器を使用するユーザに表示する等の所定の処理を実行する。
第2のアクセス結果が「OtherError」の場合は、本実施形態ではその旨の情報が、エラー処理モジュール15からエラーマネージャ31に通知される。通知を受けたエラーマネージャ31は、第1の記憶装置10にてアクセスされたファイルが後ほど第2の記憶装置20の記憶デバイス28にコピーされるように予約処理を行う。
例えば第2の記憶装置20に対してファイルアクセスが可能な状況と判定されたときにコピー処理が実行される。あるいは、第2の記憶装置20の処理負荷が少ないタイミングでコピー処理が実行されてもよい。
第1のアクセス結果が失敗となり、第2のアクセス結果が成功となった場合は、トランザクション判定は警告(Warning)となる。エラー処理モジュール15により、第2の記憶装置20による第2のアクセス結果がキャンセルされる。またエラー処理モジュール15により警告と判定された旨の情報がエラーマネージャ31に通知される。エラーマネージャ31では、その結果がログとして記憶される。
本実施形態では、アクティブ/パッシブ構成にて第1及び第2の記憶装置10及び20が動作する。従ってメインクラスタである第1の記憶装置10による第1のアクセス結果が失敗(STATUS_SHARING_VIOLATIONを含む)の場合は、第2のアクセス結果がキャンセルされる。そしてその結果がストレージシステム100にて管理可能となるようにログが保持される。
このように本実施形態に係るストレージシステム100では、トランザクション管理モジュール14によりトランクション判定が行われる。これにより、第1及び第2のアクセス結果の整合性が判別される。そして第1及び第2のアクセス結果が保たれていないと判別された場合、当該整合性が保たれるように適宜エラー処理が実行される。これによりファイルレベルのミラーリングを用いた高品質なストレージシステム100を実現することが可能となる。なおトランザクション判定テーブル17の内容は限定されない。
上記では、ファイルを開く(ファイルの作成を含む)場合について説明した。その他の、ファイルのメタデータを変更する、又はファイルを閉じる等のファクスアクセスが実行される場合にも、適宜トランザクション判定処理及びエラー処理が実行されればよい。例えば第1及び第2のアクセス結果のうち成功となったアクセス結果が適宜キャンセルされればよい。
ファイルからデータを読み込むリードアクセスが実行された場合は、トランザクション処理及びエラー処理が実行されなくてもよい。ファイルの読み込みでは、第1及び第2の記憶装置10及び20のそれぞれに記憶されているファイルデータに変更が生じない。従ってリードアクセスに対して第1及び第2のアクセス結果が不整合となった場合でもファイルデータの不整合は生じないからである。
ファイルにデータを書き込むライトアクセスが実行された場合について説明する。ファイルアクセスは、容易にキャンセル可能なものとキャンセル不可能なものとに分類される。例えばファイルを開く動作は静的なファイルデータが何も変化しないため、即時にキャンセルが可能である。
一方、ファイルにデータを書き込む動作は、第1及び第2のアクセス結果の一方が成功で他方が失敗の場合には、ファイル内のデータに不整合が生じてしまう。また例えば成功となったアクセス結果がキャンセルされたとしても、静的なデータとして不整合が生じた状態が残ってしまう。従って、ライトアクセスの実行時には以下のような処理が行われる。
図4は、ライトアクセス実行時におけるストレージシステム100の動作の一例を示すフローチャートである。
外部機器のアプリケーション40により第1の記憶装置10へのライトアクセスである第1のライトアクセスが実行される。当該アクセス対象となるファイルが、ミラー元として設定されたsrcディレクトリ下にあるか否かが判定される(ステップ201)。
判定結果がNoの場合ミラーリングは行われず、第1の記憶装置10のローカルのファイルシステム11に、ライトアクセスとしてのWriteFileが発行される。そしてファイルシステム11によりWriteFileが実行される(ステップ202)。
ステップ201の判定結果がYesの場合、ミラー先のファイルにデータを書き込むため、ファイルハンドルが取得される(ステップ203)。ここでファイルハンドルはWriteFileの発行に先んじてCreateFile(Fileを開く、作成する)が成功しているので、そこで取得したミラー先のファイルハンドルが利用される。
ミラー先である第2の記憶装置20に、WriteFileが発行される(ステップ204)。このWriteFileは、第1のライトアクセスの転送である第2のライトアクセスとして発行される。これと同時、もしくはその後にローカルのファイルシステム11に第1のライトアクセスとしてのWriteFileが発行される(ステップ205)。
本実施形態では、ミラー先へのWriteFileの発行は非同期で行われる。これにより動画コンテンツ等の大容量のデータを容易に取り扱うことが可能となる。
2つのWriteFileの結果である第1及び第2のアクセス結果について、トランザクション判定テーブル17をもとにトランザクション判定処理が実行される(ステップ206)。そして判定結果は正常であるかエラーであるかが判定される(ステップ207)。
図3の判定テーブルのWriteFileについてのデータに示すように、第1及び第2のアクセス結果がともに成功又はともに失敗の場合は、判定結果は正常となる。従ってステップ207のNOからステップ208に進む。一方、第1及び第2のアクセス結果の一方が成功となり他方が失敗の場合、第1及び第2のアクセス結果の整合性が保たれていないと判別される。従ってトランザクション判定の結果はエラーとなりエラー処理が実行される(ステップ207のYesからステップ209に進む)。
エラー処理モジュールにより、第1及び第2のライトアクセスのうちアクセス結果が失敗となったライトアクセスに関する書き込み先のアドレスがエラーアドレス16として登録される(ステップ209)。
第1のアクセス結果が成功となり第2のアクセス結果が失敗となった場合は、アクセス結果が失敗となった第2のライトアクセスに関する書き込み先のアドレスがエラーアドレス16として登録される。第2のアクセス結果が成功となり第1のアクセス結果が失敗となった場合は、アクセス結果が失敗となった第1のライトアクセスに関する書き込み先のアドレスがエラーアドレス16として登録される。
エラー処理モジュール15により、トランザクション判定の結果及びエラーアドレス16の情報がエラーマネージャ31に通知される(ステップ210)。そこでエラーアドレス16の情報が記憶される。
図3に示すようにエラーマネージャ31は、第2のアクセス結果が失敗の場合は、再送処理を実行する。すなわちWriteFileを再び発行し、第2の記憶装置20のファイルシステム21に再びデータの書き込みを実行させる。
第1のアクセス結果が失敗の場合は、ファイルの書き戻しが行われる。すなわち第2の記憶装置20に記憶された書き込み済みのファイルデータが読み込まれ、第1の記憶装置10の記憶デバイスに書き戻される。
エラーマネージャ31によるエラー処理が実行されている間は、エラーアドレス16として登録されたアドレスへのリードアクセスが制限される。図5は、リードアクセスとしてのReadFileが発行されるまでの処理の一例を示すフローチャートである。
ReadFileの対象となるアドレスがエラーアドレス16として登録されているか否かが判定される(ステップ301)。対象アドレスがエラーアドレス16として登録されていない場合は(ステップ301のNo)、ReadFileが発行される。
対象アドレスがエラーアドレス16として登録されている場合(ステップ301のYes)、対象アドレスのファイルにデータが正常に書き込まれるまでReadFileが待機となる(ステップ302)。すなわちエラーマネージャ31によるエラー処理が正常に終了するまでリードアクセスが一時止められる。このように特定のアドレスにフラグを付けることで、他のWriteFile等の処理を妨げずに動作させることが可能となる。
なお、第2の記憶装置20への第2のライトアクセスが失敗となる場合に、対応する第1のライトアクセスに関する書き込み先のアドレスがエラーアドレス16として登録されてもよい。そしてステップ301の判定処理においてそのエラーアドレス16の情報が参照されてもよい。
エラーアドレス16として登録された対象アドレスのファイルにデータが正常に書き込まれると、ReadFileの待機が解除される(ステップ303)。そしてReadFileが発行される。
図4のステップ207にて判定結果が正常となり書き込み処理が実行された場合、書き込み処理が終了したアドレスが、エラーアドレス16として登録されているかが判定される。そしてエラーアドレス16として登録されている場合は、その登録が削除される(ステップ208)。例えばデータの書き込み処理がエラー処理による復旧である場合には、書き込み先のアドレスはエラーアドレス16として登録されている。そのような場合には、復旧が終了した際には、エラーアドレス16の登録が解除される。
以上、本実施形態に係るストレージシステム100による情報処理方法では、第1の記憶装置10への第1のファイルアクセスが、ファイルの複製を記憶する第2の記憶装置20に、第2のファイルアクセスとして転送される。そして各ファイルアクセスに対する、第1の記憶装置10の第1のアクセス結果と、第2の記憶装置20の第2のアクセス結果との整合性が判別される。これによりファイルレベルのミラーリングを用いた高品質なストレージシステム100を実現することが可能となる。
第1及び第2のアクセス結果の整合性の判別は、第1及び第2のアクセス結果がトランザクションで管理されることで行われる。これにより複雑な処理を要することなく判別処理を実行することが可能となる。また第1及び第2のアクセス結果の整合性が保たれていないと判別された場合に、上記したようなエラー処理が適宜実行される。これにより高品質なストレージシステム100を実現することが可能となる。
一般的なファイルシステムとして、ファイルの共有機構をもつものが知られている。例えばWindows(登録商標)等のファイルシステムでは、あるホスト機器があるファイルにアクセスする際には、例えばSHARE_READ等の、他のホスト機器が読み書きすることを許可するフラグを設定することが可能である。
放送局等で用いられるストレージシステムを想定した場合には、インジェストと呼ばれるテープや衛星等から送られてくるデータをリアルタイムで書き込みながら、随時読み込んで編集するという追っかけ編集のニーズがある。そのような場合には、ファイルを開いている時間が数十分にわたる場合があり、その間アクセスを許可したいプロセスがアクセスできない可能性があったり、アクセスを拒否したいプロセスがアクセスできたりしてしまう。
一方、本実施形態に係るストレージシステム100では、主クラスタである第1の記憶装置10に対するファイルアクセスが従クラスタである第2の記憶装置20にミラーリングされる。これによりファイルアクセスの排他機構を共有することができ、複数のファイルエントリを1つのファイルエントリと等価に扱うことが可能となる。この結果、例えば複数の記憶装置で管理されている複数のファイルを、透過的に1つのファイルとして扱うことが可能となる。
つまりはファイルレベルでRAID1と同じようにファイルアクセスの状態まで同期を取ることが可能となる。またミラー先のDisk容量やミラー先の個数を問わない柔軟なシステムを構築することが可能となる。例えば従クラスタとなる第2の記憶装置20に特別なハードウェアやソフトウェアを準備する必要がない。第2の記憶装置20として、例えばNAS(Network Attached Storage)等の周知のディスク装置等が利用可能である。この結果、システム構築を行う上での利便性が高くなる。
また、1つの第1の記憶装置10に対して第2の記憶装置20を複数アサインしたり、フォルダ毎に従クラスタを変えたりするなど、柔軟な設定が可能である。また特定のファイルは特定の従クラスタに記録するなど、柔軟な構成のミラーリングが可能となる。その結果、例えば第2の記憶装置20の記憶デバイスの残り容量の減少にともないアラームが発せられる。そして当該アラームを受け取った第1の記憶装置10が、フォルダのミラー先を変えるような柔軟な構成が可能となる。
さらに、ミラー先に複数の従クラスタが用意されている際には、新規にミラー元にフォルダを作成するとき、ミラー先の残り容量などから、そのフォルダのミラー先を選ぶことも可能になり、負荷分散構成を行うことも可能になる。
<第2の実施形態>
本技術に係る第2の実施形態について説明する。これ以降の説明では、上記の実施形態で説明したストレージシステム100における各装置の構成及び作用と同様な部分については、その説明を省略又は簡略化する。
図6は、本実施形態に係る情報システムとしてのストレージシステム200の構成例を示す模式的な図である。
本実施形態に係る第2の記憶装置220は、ファイルシステム221と、IRPオペレーションモジュール222と、データバッファ229と、トランザクション管理モジュール224と、エラー処理モジュール225とを有する。各機能ブロックは、第1の記憶装置210が有するものと略同様であってよい。データバッファ229も周知のものが用いられてよい。
第1の記憶装置210及び管理装置230の構成は、第1の実施形態に係る第1の記憶装置10及び管理装置30の構成と略同様でよい。
図7は、ストレージシステム200のライトアクセス実行時における動作の一例を示すフローチャートである。図7は、第2の記憶装置220の動作を中心としたフローチャートである。
第2の記憶装置220へ送信されたライトアクセスが、ミラー先として設定されたdestディレクトリ下のファイルへのアクセスか否かが判定される(ステップ401)。すなわち送信されたライトアクセスが第1の記憶装置210からの第2のライトアクセスであるか否かが判定される。
判定結果がNoの場合、第2の記憶装置220のローカルのファイルシステム221にWriteFileが発行される。そしてファイルシステム221によりWriteFileが実行される(ステップ402)。
ステップ401の判定結果がYesの場合、エラー処理モジュール225により、第2のライトアクセスに関する書き込み先のアドレスがエラーアドレスとして登録される(ステップ403)。
ファイルシステム221にWriteFileが送信され、ファイルシステム221によるデータ書き込み処理が開始される(ステップ404)。当該書き込み処理が終了する前に、WriteFileに対する第2のアクセス結果が第1の記憶装置210に返される(ステップ405)。
第2のライトアクセスが正常に受信されて書き込み処理が正常に開始された場合には、第2のアクセス結果は正常となる。第2のライトアクセスの受信が失敗となった場合は、第2のアクセス結果は失敗となる。
すなわち本実施形態では、第2の記憶装置220からの第2のライトアクセスを受信した旨の応答が前記第2のアクセス結果として第1の記憶装置210に返されえる。そして第1の記憶装置210のトランザクション管理モジュール214により、第1及び第2のアクセス結果の整合性が判別される。なお、第1の記憶装置210から送信されたWriteFileは、データバッファ229にキャッシングされる。
ファイルシステム221による書き込み処理が正常に行われたか否かが判定される(ステップ406)。書き込み処理にエラーが発生した場合(ステップ406のYes)、その旨の情報がエラーマネージャ231に送信され(ステップ407)、ステップ403からの処理が繰り返される。
ファイルシステム221による書き込み処理が正常に行われた場合(ステップ406のNo)、エラーアドレスが更新され、書き込み処理が終了したアドレスがエラーアドレスから削除される(ステップ408)。そして書き込み処理が成功した旨の情報がエラーマネージャ231に通達される(ステップ409)。
なお、書き込み先のアドレスがエラーアドレスとして登録される場合には、図5のフローチャートに示すように、エラーアドレスとして登録されたアドレスへのリードアクセスが制限される。
以上、本実施形態では、第2の記憶装置220に転送された第2のライトアクセスがデータバッファにキャッシングされる。そして第2のライトアクセスを受信した旨の応答が第2のアクセス結果として第1の記憶装置210に返される。これによりストレージ処理の高速化を図ることができる。
例えばライトアクセスに関して言えば、第1の記憶装置210への書き込みが終わったとしても、第2の記憶装置220への書き込みが終わるまでは、トランザクション判定が待たされてしまう可能性がある。しかしながら本実施形態では、第2のライトアクセスがキャッシングされるので処理の遅延を防ぐことができる。
また書き込み先のアドレスをエラーアドレスとして登録し、書き込みが正常に実行されるまでライトアクセスが制限される。これにより第1及び第2の記憶装置210及び220にそれぞれ書き込まれるファイルデータに不整合が生じてしまうのを防止することができる。この結果、ファイルレベルのミラーリングを用いた高品質なストレージシステム200を実現することができる。
<第3の実施形態>
図8は、本技術の第3の実施形態に係る情報システムとしてのストレージシステム300の構成例を示す模式的な図である。図8では、管理装置の図示が省略されている。
本実施形態に係るストレージシステム300は、サブクラスタとして設けられる第2の記憶装置320に対するファイルアクセスを可能とする。これにより待機系のストレージを利用することが可能となり、ストレージ処理のスループットを向上させることができる。
そのために本実施形態に係るストレージシステム300では、第2の記憶装置320に転送される第2のファイルアクセスに、第1のファイルアクセスの転送であることを示す識別子が付与される。識別子は、例えば第1の記憶装置310のI/O転送モジュール313やIRPオペレーションモジュール312により付与される。あるいはその他の機能ブロックにより識別子が付与されてもよい。
識別子としては、例えばファイル名に♯等の禁則文字等を付加する等で付与される。その他、第2のファイルアクセスであることが識別可能であるのなら、どのような識別子がどのような方法で付与されても構わない。
図8に示すように、第2の記憶装置320は、アプリケーション主クラスタアクセス判定部(以下、アクセス判定部と記載する)350を有する。アクセス判定部350は、第2の記憶装置320に送信されるファイルアクセスが、ミラー元である第1の記憶装置310からの第2のファイルアクセスであるか、それとも外部機器のアプリケーション341からのファイルアクセスであるかを判定する。
図9は、本実施形態に係るアクセス判定部350の動作例を示すフローチャートである。アクセス判定部350は、第2の記憶装置320に送信されたファイルアクセスが第1の記憶装置310から転送された第2のファイルアクセスか否かを判定する(ステップ501)。
この判定処理は、ファイルアクセスに識別子が付与されているか否かを判定することにより実行される。識別子が付与されている場合は当該ファイルアクセスは第2のファイルアクセスと判定される。識別子が付与されていない場合は当該ファイルアクセスはアプリケーション341から第2の記憶装置320へのファイルアクセスと判定される。この識別子を有さないファイルアクセスは第3のファイルアクセスに相当する。
第1の記憶装置310からの第2のファイルアクセスと判定された場合(ステップ501のYes)、第2の記憶装置320のファイルシステム321に第2のファイルアクセスが発行され、所定のアクセスが実行される(ステップ502)。この際アクセス判定部350は、第2のファイルアクセスに付与された識別子を削除する。これによりファイルシステム321によるアクセス実行に特別な処理が不要となる。
アプリケーション341からの第3のファイルアクセスと判定された場合は(ステップ501のNo)、当該第3のファイルアクセスが第1の記憶装置310に転送される(ステップ503)。第3のファイルアクセスは、アクセス判定部350により、第4のファイルアクセスとして転送される。
第1の記憶装置310では、転送された第4のファイルアクセスがIRPオペレーションモジュール312に送信される。IRPオペレーションモジュール312は、第4のファイルアクセスを前記第1のファイルアクセスとして処理する。
すなわちIRPオペレーションモジュール312は第4のファイルアクセスに対して、アプリケーション340からの第1のファイルアクセスと同様の処理を実行する。例えば第4のファイルアクセスが、第2のファイルアクセスとして第2の記憶装置320に転送される等、上記した処理が実行されればよい。
特に、本実施形態では、ライトアクセスに対して上記した処理が実行される。すなわち第1の記憶装置310からの第2のライトアクセスに、第1のライトアクセスの転送であることを示す識別子が付与される。
アクセス判定部350では、アプリケーション341からの識別子が付与されていない第3のライトアクセスが、第4のライトアクセスとして第1の記憶装置310に転送される(図8の矢印A)。転送された第4のライトアクセスは、第1のライトアクセスとして処理され、識別子が付与される。そして第2のライトアクセスとして第2の記憶装置320に転送される(図8の矢印B)。
アクセス判定部350により、識別子が付与されている第2のライトアクセスはファイルシステム321に発行される。そしてファイルシステム321により適宜書き込み処理が実行される。
このようにアプリケーション341からのライトアクセスを第1の記憶装置310に転送することで、第1及び第2の記憶装置310及び320にそれぞれ書き込まれるデータの整合性を保つことが容易に可能となる。
なおリードアクセスに関しては、データの不整合が発生しないので、第1の記憶装置310へ転送することなくファイルシステム321にリードアクセスが発行されてよい(図8の矢印C)。
従来アクティブ/アクティブ構成にて動作する複数の記憶装置を有するストレージシステムが知られている。そのようなストレージシステムでは、例えば複数の記憶装置において記憶されるファイルデータの整合性を保つために複雑な処理や高いコストが必要であった。そして整合性が合わない状態が続くと、整合性を取る処理に多くの時間を費やしてしまいパフォーマンスが低下していた。
一方で、本実施形態に係るストレージシステム300では、第1及び第2の記憶装置310及び320をアクティブ/アクティブ構成と略同様に動作させることが可能となる。また保持されるファイルデータの整合性を保つための複雑な処理や高いコストが不要となる。この結果、高品質のストレージシステム300を実現することが可能となる。
例えば放送局等では、一度データを書き込むと基本的には更新が行われず、データの読み込みが主なアクセスとなるようなシステムが多く用いられる。このようなシステムにおいては、例えば頻度の低い書き込みのために、整合性を取るためのログを取るのはシステムが複雑でコストが増えてしまう。
従って書き込みが低頻度の場合等には、本実施形態のようにサブクラスタである第2の記憶装置320に対する書き込み命令をメインクラスタである第1の記憶装置310に転送する。そしてメインクラスタからサブクラスタに対して再度ミラーするという構成を採用する。そうすると性能劣化をほとんど起こさずに不整合を起こさないストレージシステム300を構築することができる。なお当然のことながら、書き込みが低頻度の場合に限られず、本実施形態に係るストレージシステム300は利用可能である。
特に動画コンテンツ等のメディアを扱うシステムでは、ミラー先からミラー元に書き込み先を切り替えるコスト(すなわちファイルアクセスを第1の記憶装置に転送するコスト)より、実際にデータを書き込むコストの方が支配的になることが多い。従って十分な性能を維持したままミラー元にデータを転送することが可能となる。
<変形例>
本技術に係る実施形態は、上記で説明した実施形態に限定されず種々変形される。
例えば各実施形態に説明した管理装置が、管理モジュールとして第1の記憶装置に備えられてもよい。すなわち管理装置と同様に動作するソフトウェアブロックが第1の記憶装置に設けられてもよい。
上記した各実施形態及び変形例を適宜組み合わせたものが、本技術にかかる実施形態として採用されてもよい。例えば図8では、第2の実施形態に係るストレージシステム200の第2の記憶装置220にアクセス判定部350が追加されたものが図示されている。しかしながら図1に示す第1の実施形態に係る第2の記憶装置20にアクセス判定部350が設けられてもよい。そして第1及び第2の記憶装置10及び20がアクティブ/アクティブ構成と略同様に動作可能としてもよい。
なお、本技術は以下のような構成も採ることができる。
(1)ファイルを記憶することが可能な第1の記憶装置への第1のファイルアクセスを、前記第1の記憶装置に記憶された前記ファイルの複製を記憶する第2の記憶装置に第2のファイルアクセスとして転送し、
前記第1のファイルアクセスに対する前記第1の記憶装置の第1のアクセス結果と、前記転送された第2のファイルアクセスに対する前記第2の記憶装置の第2のアクセス結果との整合性を判別する
情報処理方法。
(2)前記(1)に記載の情報処理方法であって、
前記判別ステップは、前記第1のアクセス結果と、前記第2のアクセス結果とをトランザクションで管理する
情報処理方法。
(3)前記(1)又は(2)に記載の情報処理方法であって、さらに、
前記判別ステップで前記整合性が保たれていないと判別された場合に、前記第1の記憶装置及び前記第2の記憶装置に対してエラー処理を実行する
情報処理方法。
(4)前記(3)に記載の情報処理方法は、
前記エラー処理の実行ステップは、前記第1及び前記第2のアクセス結果のうち成功となったアクセス結果をキャンセルする
情報処理方法。
(5)前記(3)又は(4)に記載の情報処理方法であって、
前記転送ステップは、前記ファイルの第1のライトアクセスを、前記第2の記憶装置に前記第2のライトアクセスとして転送し、
前記エラー処理の実行ステップは、前記判別ステップで前記整合性が保たれていないと判別された場合に、前記第1及び前記第2のライトアクセスのうちアクセス結果が失敗となったライトアクセスに関する書き込み先のアドレスをエラーアドレスとして、当該アドレスへのリードアクセスを制限する
情報処理方法。
(6)前記(1)から(5)のうちいずれか1つに記載の情報処理方法であって、
前記転送ステップは、前記ファイルの第1のライトアクセスを、前記第2の記憶装置に前記第2のライトアクセスとして転送し、
前記判別ステップは、前記第2の記憶装置からの前記第2のライトアクセスを受信した旨の応答を前記第2のアクセス結果として前記整合性を判別し、
前記情報処理方法は、さらに、前記第2のライトアクセスに関する書き込み先のアドレスをエラーアドレスとして、当該アドレスへのリードアクセスを制限する
情報処理方法。
(7)前記(1)から(6)のうちいずれか1つに記載の情報処理方法であって、
前記転送ステップは、前記第1のファイルアクセスの転送であることを示す識別子を、前記第2のファイルアクセスに付与し、
前記情報処理方法は、さらに、前記第2の記憶装置への、前記識別子を有さない第3のファイルアクセスを前記第1の記憶装置に第4のファイルアクセスとして転送し、
前記転送ステップは、前記第4のファイルアクセスを前記第1のファイルアクセスとして処理する
情報処理方法。
(8)前記(1)から(7)のうちいずれか1つに記載の情報処理方法であって、
前記転送ステップは、前記第1のファイルアクセスである第1のライトアクセスの転送であることを示す識別子を、前記第2のファイルアクセスである第2のライトアクセスに付与し、
前記情報処理方法は、さらに、前記第2の記憶装置への、前記識別子を有さない第3のライトアクセスを前記第1の記憶装置に第4のライトアクセスとして転送し、
前記転送ステップは、前記第4のライトアクセスを前記第1のライトアクセスとして処理する
情報処理方法。
10、210、310…第1の記憶装置
11、21、221、321…ファイルシステム
12、222、312…IRPオペレーションモジュール
13、313…I/O転送モジュール
14、214、224…トランザクション管理モジュール
15、225…エラー処理モジュール
16…エラーアドレス
20、220、320…第2の記憶装置
30、230…管理装置
31、231…エラーマネージャ
100、200、300…ストレージシステム
350…アプリケーション主クラスタアクセス判定部

Claims (11)

  1. ファイルを記憶することが可能な第1の記憶装置への第1のファイルアクセスを、前記第1の記憶装置に記憶された前記ファイルの複製を記憶する第2の記憶装置に第2のファイルアクセスとして転送し、
    前記第1のファイルアクセスに対する前記第1の記憶装置の第1のアクセス結果と、前記転送された第2のファイルアクセスに対する前記第2の記憶装置の第2のアクセス結果との整合性を判別する
    情報処理方法。
  2. 請求項1に記載の情報処理方法であって、
    前記判別ステップは、前記第1のアクセス結果と、前記第2のアクセス結果とをトランザクションで管理する
    情報処理方法。
  3. 請求項1に記載の情報処理方法であって、さらに、
    前記判別ステップで前記整合性が保たれていないと判別された場合に、前記第1の記憶装置及び前記第2の記憶装置に対してエラー処理を実行する
    情報処理方法。
  4. 請求項3に記載の情報処理方法であって、
    前記エラー処理の実行ステップは、前記第1及び前記第2のアクセス結果のうち成功となったアクセス結果をキャンセルする
    情報処理方法。
  5. 請求項3に記載の情報処理方法であって、
    前記転送ステップは、前記ファイルの第1のライトアクセスを、前記第2の記憶装置に前記第2のライトアクセスとして転送し、
    前記エラー処理の実行ステップは、前記判別ステップで前記整合性が保たれていないと判別された場合に、前記第1及び前記第2のライトアクセスのうちアクセス結果が失敗となったライトアクセスに関する書き込み先のアドレスをエラーアドレスとして、当該アドレスへのリードアクセスを制限する
    情報処理方法。
  6. 請求項1に記載の情報処理方法であって、
    前記転送ステップは、前記ファイルの第1のライトアクセスを、前記第2の記憶装置に前記第2のライトアクセスとして転送し、
    前記判別ステップは、前記第2の記憶装置からの前記第2のライトアクセスを受信した旨の応答を前記第2のアクセス結果として前記整合性を判別し、
    前記情報処理方法は、さらに、前記第2のライトアクセスに関する書き込み先のアドレスをエラーアドレスとして、当該アドレスへのリードアクセスを制限する
    情報処理方法。
  7. 請求項1に記載の情報処理方法であって、
    前記転送ステップは、前記第1のファイルアクセスの転送であることを示す識別子を、前記第2のファイルアクセスに付与し、
    前記情報処理方法は、さらに、前記第2の記憶装置への、前記識別子を有さない第3のファイルアクセスを前記第1の記憶装置に第4のファイルアクセスとして転送し、
    前記転送ステップは、前記第4のファイルアクセスを前記第1のファイルアクセスとして処理する
    情報処理方法。
  8. 請求項7に記載の情報処理方法であって、
    前記転送ステップは、前記第1のファイルアクセスである第1のライトアクセスの転送であることを示す識別子を、前記第2のファイルアクセスである第2のライトアクセスに付与し、
    前記情報処理方法は、さらに、前記第2の記憶装置への、前記識別子を有さない第3のライトアクセスを前記第1の記憶装置に第4のライトアクセスとして転送し、
    前記転送ステップは、前記第4のライトアクセスを前記第1のライトアクセスとして処理する
    情報処理方法。
  9. ファイルを記憶することが可能な第1の記憶装置と、前記第1の記憶装置に記憶された前記ファイルの複製を記憶する第2の記憶装置とを具備する情報処理システムであって、
    前記第1の記憶装置は、
    前記前記第1の記憶装置への第1のファイルアクセスを、前記第2の記憶装置に第2のファイルアクセスとして転送する転送部と、
    前記第1のファイルアクセスに対する前記第1の記憶装置の第1のアクセス結果と、前記転送された第2のファイルアクセスに対する前記第2の記憶装置の第2のアクセス結果との整合性を判別する判別部とを有する
    情報処理システム。
  10. ファイルを記憶することが可能な記憶部と、
    前記ファイルに関する第1のファイルアクセスを受け付ける受付部と、
    前記受け付けられた第1のファイルアクセスを、前記記憶部に記憶された前記ファイルの複製を記憶する外部の記憶装置に第2のファイルアクセスとして転送する転送部と、
    前記第1のファイルアクセスに対する第1のアクセス結果と、前記転送された第2のファイルアクセスに対する前記外部記憶装置の第2のアクセス結果との整合性を判別する判別部と
    を具備する情報処理装置。
  11. ファイルを記憶することが可能な記憶部と、
    前記ファイルに関する第1のファイルアクセスを受け付ける受付部と、
    前記受け付けられた第1のファイルアクセスを、前記記憶部に記憶された前記ファイルの複製を記憶する外部の記憶装置に第2のファイルアクセスとして転送する転送部と、
    前記第1のファイルアクセスに対する第1のアクセス結果と、前記転送された第2のファイルアクセスに対する前記外部記憶装置の第2のアクセス結果との整合性を判別する判別部と
    としてコンピュータを機能させるプログラム。
JP2011267511A 2011-12-07 2011-12-07 情報処理方法、情報処理システム、情報処理装置及びプログラム Pending JP2013120463A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011267511A JP2013120463A (ja) 2011-12-07 2011-12-07 情報処理方法、情報処理システム、情報処理装置及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011267511A JP2013120463A (ja) 2011-12-07 2011-12-07 情報処理方法、情報処理システム、情報処理装置及びプログラム

Publications (1)

Publication Number Publication Date
JP2013120463A true JP2013120463A (ja) 2013-06-17

Family

ID=48773081

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011267511A Pending JP2013120463A (ja) 2011-12-07 2011-12-07 情報処理方法、情報処理システム、情報処理装置及びプログラム

Country Status (1)

Country Link
JP (1) JP2013120463A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022176497A1 (ja) * 2021-02-22 2022-08-25 富士フイルム株式会社 ストレージシステム、データ処理方法、及びデータ処理プログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022176497A1 (ja) * 2021-02-22 2022-08-25 富士フイルム株式会社 ストレージシステム、データ処理方法、及びデータ処理プログラム

Similar Documents

Publication Publication Date Title
US8732121B1 (en) Method and system for backup to a hidden backup storage
US8170990B2 (en) Integrated remote replication in hierarchical storage systems
US9146684B2 (en) Storage architecture for server flash and storage array operation
US8341459B2 (en) Data migration without interrupting host access and with data lock for write access requests such that held write access requests do not expire
US7111137B2 (en) Data storage systems and processes, such as one-way data mirror using write mirroring
US8260747B2 (en) System, method, and computer program product for allowing access to backup data
US7509466B2 (en) Backup method for a copy pair using newly created logical volume via virtual server device
US7778975B2 (en) Mirroring method, mirroring device, and computer product
US20050149683A1 (en) Methods and systems for data backups
US8205049B1 (en) Transmitting file system access requests to multiple file systems
US8010543B1 (en) Protecting a file system on an object addressable storage system
US20060236060A1 (en) Assuring performance of external storage systems
JP5292351B2 (ja) メッセージキュー管理システム及びロックサーバ及びメッセージキュー管理方法及びメッセージキュー管理プログラム
US9760457B2 (en) System, method and computer program product for recovering stub files
JP2012507788A (ja) ストレージ・エリア・ネットワークを使用してコンピュータシステムを復旧するための方法およびシステム
US8745345B2 (en) Backup copy enhancements to reduce primary version access
US20120311002A1 (en) Computer and data management method by the computer
US8095804B1 (en) Storing deleted data in a file system snapshot
JP5292350B2 (ja) メッセージキュー管理システム及びロックサーバ及びメッセージキュー管理方法及びメッセージキュー管理プログラム
US11263091B2 (en) Using inode entries to mirror data operations across data storage sites
US11003541B2 (en) Point-in-time copy on a remote system
JP2013161383A (ja) 情報処理装置、情報処理方法、プログラム及び情報処理システム
US20050149548A1 (en) One-way data mirror using copy-on-write
US20050149554A1 (en) One-way data mirror using write logging
JP2013120463A (ja) 情報処理方法、情報処理システム、情報処理装置及びプログラム