JP4267421B2 - リモートサイト及び/又はローカルサイトのストレージシステム及びリモートサイトストレージシステムのファイル参照方法 - Google Patents

リモートサイト及び/又はローカルサイトのストレージシステム及びリモートサイトストレージシステムのファイル参照方法 Download PDF

Info

Publication number
JP4267421B2
JP4267421B2 JP2003364793A JP2003364793A JP4267421B2 JP 4267421 B2 JP4267421 B2 JP 4267421B2 JP 2003364793 A JP2003364793 A JP 2003364793A JP 2003364793 A JP2003364793 A JP 2003364793A JP 4267421 B2 JP4267421 B2 JP 4267421B2
Authority
JP
Japan
Prior art keywords
metadata
file
cache
storage system
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
JP2003364793A
Other languages
English (en)
Other versions
JP2005128861A (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
Priority to JP2003364793A priority Critical patent/JP4267421B2/ja
Priority to US10/766,022 priority patent/US7266644B2/en
Publication of JP2005128861A publication Critical patent/JP2005128861A/ja
Priority to US11/878,845 priority patent/US20070271414A1/en
Application granted granted Critical
Publication of JP4267421B2 publication Critical patent/JP4267421B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/2056Error 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 by mirroring
    • G06F11/2064Error 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 by mirroring while ensuring consistency
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/2056Error 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 by mirroring
    • G06F11/2071Error 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 by mirroring using a plurality of controllers
    • G06F11/2074Asynchronous techniques
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0815Cache consistency protocols
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0893Caches characterised by their organisation or structure
    • G06F12/0897Caches characterised by their organisation or structure with two or more cache hierarchy levels
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/82Solving problems relating to consistency
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/855Details of asynchronous mirroring using a journal to transfer not-yet-mirrored changes
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/26Using a specific storage system architecture
    • G06F2212/264Remote server
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/28Using a specific disk cache architecture
    • G06F2212/283Plural cache memories
    • G06F2212/284Plural cache memories being distributed
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/31Providing disk cache in a specific location of a storage system
    • G06F2212/311In host system
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/31Providing disk cache in a specific location of a storage system
    • G06F2212/312In storage controller
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/46Caching storage objects of specific type in disk cache
    • G06F2212/461Sector or disk block
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/46Caching storage objects of specific type in disk cache
    • G06F2212/463File

Landscapes

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

Description

本発明は、地理的に離れた場所に存在する記憶装置の一方でデータの更新が発生した場合に、他方の記憶装置に更新内容を転送することにより、互いのディスクの内容を一致させるリモートコピーに関する。特に、リモートコピーによりコピーされたディスクをファイルシステムで使用するための技術に関する。
一つの場所(ローカルサイト)に存在するディスクドライブの内容が更新された場合、その更新内容を地理的に離れた別の場所(リモートサイト)のディスクドライブに転送し、両サイトのペアを構成するディスクドライブ間でディスクドライブの内容を一致させるストレージのリモートコピーということが知られている(例えば、特許文献1、特許文献2を参照)。
これらの特許文献1,2によると、リモートサイトにおいて、リモートコピーされるディスクドライブは待機系として使用され、リモートサイトのディスクドライブは、ローカルサイトがアクセス不能となった場合等に、リモートサイトでマウントしてファイルシステムとして使用することが可能となっている。
米国特許第6442551号明細書 特開2003−76592
従来技術では、リモートコピーのディスクドライブは、ローカルサイトでの障害発生時にフェールオーバ(ローカルサイトでのサービスをリモートサイトに引き継ぐ処理)が発生する等、ペア間のデータ転送の停止(スプリット、例えばペアの解消処理)を行うまでアクセスを行うことが不能であった。例えば、前記特許文献1には、ミラーとして複数のディスクドライブ間のデータを一致させているシステムで、ミラーを解消後にディスクドライブにアクセスを行うことが可能なシステムを提示している。また、前記引用文献2では、リモートコピー機能をもつ記憶装置間で作成されたペアボリュームを、1台の上位装置が前記ペアボリュームを排他的に占有し、他の上位装置からの更新要求を拒否することで、ペアボリュームを複数の上位装置に対して1つのボリュームとして認識させるようにしている。
前記特許文献1に示すように、一旦スプリットを行うことが必要な理由は、ペア間のデータ転送を保ったままリモートサイトでディスクドライブをマウントしても、次のような課題があってファイルシステムとして正しくアクセスできないためである。
一つの課題は、ディスクのユーザデータをリモートコピーしても、例えば、ジャーナリングファイルシステムの場合、ローカルファイルシステムがメタデータ(詳細は後述するが、ファイルの管理情報)をキャッシュしており、ローカルサイトの記憶装置にも書き出されないため、リモートサイトには更新内容が反映されないことである。
他の課題は、リモートサイトのファイルシステム自体もキャッシュを持っているため、リモートのディスクの内容が更新されても、このキャッシュの内容が更新されないため、最新のファイルデータが参照されないことである。リモートサイトのファイルシステムが持つキャッシュに更新前のデータが保持されている場合、ファイルシステムはこのキャッシュ内容を使用してしまい、更新前のファイルデータが参照されることとなって、最新のファイルデータが参照されない。
本発明の目的は、ローカルサイトでの更新が行われるのに合わせて更新内容をリアルタイムにリモートサイトのファイルシステムに反映させることによって、リモートサイトで最新のファイルデータを参照することのできるストレージシステムを提供することにある。
前記課題を解決するために、本発明は次のような構成を採用する。
データを記憶する1つ又は複数のディスクドライブ、前記ディスクドライブに対するデータの読み書きを制御するディスク制御部、前記ディスクドライブとのデータ授受に用いられるディスクキャッシュ、を有するディスク装置と、
CPU、前記CPUで実行されるプログラムとデータを格納するメインメモリ、クライアントとネットワークを介して接続されるネットワークインタフェース、を有するファイルサーバと、
通信回線を介して他のストレージシステムのディスク装置とデータを授受するインタフェースと、を備えたストレージシステムであって、
前記メインメモリには、ファイルとディスクドライブ内のデータ位置とが対応するように前記ディスクドライブの領域を管理するファイルシステム処理部と、前記ファイルシステム処理部が使用するファイルシステムキャッシュと、が設けられ
前記ファイルシステム処理部は、前記ファイルの管理情報であるメタデータの更新履歴であるジャーナルログを参照して前記メタデータが更新されたことを監視するメタデータ更新監視部と、前記メタデータ更新監視部による前記メタデータの更新の監視を基に前記ファイルシステムキャッシュのメタデータを更新するメタデータ更新部と、前記メタデータ更新部によってメタデータを更新した場合に前記ファイルシステムキャッシュ内の対応するユーザデータを廃棄するファイルシステムキャッシュパージ部と、が設けられ
前記ディスク制御部は、前記他のストレージシステムのディスク装置に対して行われたファイルの更新内容であるユーザデータと前記ジャーナルログとを、前記通信回線を介して前記他のストレージシステムから受信して前記ストレージシステムの前記ディスク装置に格納するように動作し、
前記メタデータ更新監視部は、前記ディスク装置内で前記ジャーナルログを参照して前記メタデータが更新されたか否かを監視し、前記メタデータ更新部は、前記メタデータの更新のときに前記ジャーナルログを前記ファイルシステムキャッシュ上に読み出し前記読み出したジャーナルログを使用して前記ファイルシステムキャッシュ内のメタデータを更新し、前記ファイルシステムキャッシュパージ部は、前記更新されたメタデータに対応する前記ファイルシステムキャッシュ内のユーザデータを廃棄し、
前記ストレージシステムに接続されたクライアントからの読み出し要求があった場合、前記ファイルシステム処理部は、前記ファイルシステムキャッシュ上で更新されたメタデータに基づいて前記ディスク装置からユーザデータを読み出して前記ファイルシステムキャッシュに格納し、前記読み出し要求の応答として前記格納した前記ユーザデータを前記クライアントに転送する構成である。
本発明によれば、リモートコピーを行うストレージシステムにおいて、ローカルサイトでの更新が行われるのに合わせて、更新内容をリアルタイムにリモートサイトのファイルシステムに反映させ、リモートサイトで最新のファイルデータを参照することができる。
本発明の実施形態に係るストレージシステムについて、図面を参照しながら以下詳細に説明する。なお、本発明は以下に示す実施形態に限定されるものではない。
図1は本発明の実施形態に係るストレージシステムの全体構成を示すブロック図である。図2は本実施形態のストレージシステムをリモートコピー接続した統合システム構成例を示す図である。図3はローカルサイトとリモートサイトのストレージシステム間でのデータ転送の状況を示す図である。図4は本実施形態で使用するファイルサーバ内のファイルシステム処理部における機能を示す図である。図5はローカルサイトのストレージシステムへのファイル書き込み要求に対するファイル処理部の処理フローを示す図である。図6はストレージシステムのディスク装置に書き込みが行われた場合におけるディスク制御部の実行するリモートコピーの処理フローを示す図である。図7はファイル更新があった場合のリモートサイトストレージシステムにおけるファイルシステム処理部が実行する複数処理のフローを示す図である。図8はリモートコピーを行う際のリモートサイトに転送されるリモートコピーデータの構成例を示す図である。図9はディスク装置内のディスクドライブに存在するジャーナルログ領域の格納情報を示す図である。
図1に示すストレージシステムのブロック図において、ストレージシステム1は、ネットワーク7に接続し、主にファイルの管理を行うファイルサーバ2と、ファイルサーバ2からのデータの入出力要求を処理し、ファイルのデータ等を記憶するための記憶装置であるディスク装置3と、他のストレージシステム1と接続し、主に他のストレージシステム1にデータの送信を行うためのインタフェースであるリモートリンクイニシエータ4(RI)と、他のストレージシステム1からデータの受信を行うためのインタフェースであるリモートリンクターゲット5(RT)と、により構成される。
図1に示す構成例では、ファイルサーバ2がストレージシステム1内部に存在する構成を示したが、ファイルサーバ2がストレージシステム1内部に存在しなくても良い。この場合には、ファイルサーバ2とストレージシステム1との間はファイバチャネル等のインタフェースにより接続されることになる。
ファイルサーバ2は、ネットワーク7に接続するためのネットワークインタフェース12(NI)と、各種処理を実行するCPU11と、CPU11で実行されるプログラムやデータを格納するメインメモリ13と、から構成される計算機である。メインメモリ13上には、CPU11で動作するプログラムであるOS16やファイルシステムの各種処理を行うファイルシステム(以下、FSと称する)処理部17の他、ファイルシステム処理部が使用するバッファであるFSキャッシュ18が存在する。FSキャッシュ18は、ディスク装置3から読み出されたデータや、ネットワーク7を介してクライアント6から書き込まれたデータを一時的に格納する。即ち、FSキャッシュには、ファイルの内容であるユーザデータの他、ファイルの管理情報であるメタデータ(例えば、ファイル名称、ファイルサイズ、データ格納位置、更新日時等)、メタデータの更新履歴であるジャーナルログ(メタデータの経時的な履歴情報)等が格納される。
なお、ファイルシステムはデータをファイルとしてアクセスすることを可能とするものであるが、ファイルシステムの主な仕事はディスクを管理することであり、このアクセスには主にライトとリードがあり、ライトの場合、データの書き込み領域を決定し、その領域に書き込み、領域不足であればディスク空き領域をそのファイル用に割り当てデータ格納する。リードの場合、ディスクのどの領域にファイルの内容が格納されているかを決定し、ディスクからデータを読み出す。このように、データをファイルとしてアクセスさせるということは、ファイルとディスク内のデータの位置の対応を取ることである。
ディスク装置3は、ディスク装置の制御を行うディスク制御部21と、ディスク制御部21により制御され、ディスクドライブ23とのデータの受け渡しに使用されるディスクキャッシュ22と、磁気媒体等で構成されファイルの内容等のデータを記憶するディスクドライブ23と、により構成される。単体の物理的なディスクドライブのみならず、RAID(Redundant Arrays of Inexpensive Disks)型ディスクアレイのように複数の物理的なディスクドライブを有する場合もある。
ディスクキャッシュ22は、ディスク装置3の電源異常が発生した場合でも、内容が消去されることのないように、バッテリーバックアップされた不揮発のメモリによって構成される。ファイルサーバ2からの入出力に応じて、ディスクキャッシュ22上にはデータ格納のための領域(キャッシュエントリ)が確保され、ファイルサーバ2から受け取るデータや、ディスクドライブ23から読み出されたデータが一時保存される。この他に、ディスクキャッシュ22上では、ファイルサーバ2からの書き込みに対して、リモートコピーを行うためのリモートコピーデータの作成や、リモートリンクターゲットRT5を介して他のストレージシステム1から受け取ったリモートコピーデータの一時保存が行われる。
上述したようなストレージシステムにおいては、ディスク装置に保存されたファイルをアクセスするためには、ファイルの管理情報であり、ファイルのデータ格納位置を有するメタデータを参照しなければならず、そのために、メタデータをディスク装置からFSキャッシュに読み出し、FSキャッシュ上のメタデータを参照することでファイルのアクセスを実行するようになっている。
図2に示す統合システム構成例において、ストレージシステム1は、ネットワークインタフェースNI12によりネットワーク7に接続されたクライアント6からのファイルへの処理要求を受け取る。また、リモートリンクイニシエータRI4は地理的に離れた場所に存在するストレージシステム1のリモートリンクターゲットRT5とファイバチャネルによる専用線等の通信回線8で接続される。RI4とRT5の接続は、図2に示すように一台のストレージシステム1が複数のRI4を持ち、複数台のストレージシステム1と接続されていても良いし、一台のストレージシステム1にRI4とRT5を持ち、連鎖状に複数のストレージシステム1を接続しても良い。RI4とRT5で接続されたストレージシステム1間では、事前に双方のディスク装置3内のディスクドライブ23単位でペアを構成する。そして、RI4の存在するストレージシステム1でペアを構成しているディスクドライブ23に対して行われた更新内容は、RT5の持つストレージシステム1に転送され、双方のディスク装置3内のペアを構成するディスクドライブ23間の内容を一致させる。
リモートコピーの方式としては、ローカルサイトへの更新と同時に、リモートサイトへの更新内容の転送を行い、転送の完了を待ってからローカルサイトへの更新処理手続を終了する同期方式と、リモートサイトへの転送の完了を待たず、ローカルサイトでの更新処理手続を終了する非同期方式がある。どちらの方式もローカルサイトで行われた更新順序の通りにリモートサイトにデータが転送されて内容が反映される。
次に、本発明の実施形態に係る、ローカルサイトとリモートサイトのストレージシステム間でのデータ転送、及びリモートサイトにおける最新ファイルデータの参照の概要について、図3を用いてまず説明する。図3は地理的に離れた場所にあるストレージシステムAとストレージシステムBをリモートリンクイニシエータRIとリモートリンクターゲットRTにより接続した構成図である。図3において、ストレージシステムAにネットワークで接続されたクライアント37からファイルに対して書き込みがあった後、ストレージシステムBにネットワークで接続されたクライアント38から読み出しが行われた場合のデータの流れについて説明する。
ローカルサイトのクライアント37からストレージシステムAのファイルサーバに対してファイルの書き込み要求が行われ、更新データが転送される(S1)と、ストレージシステムA内のFS処理部にてローカルサイトのFSキャッシュ33内でメタデータ40とユーザデータ41、ジャーナルログ42が更新される(S2)。
そして、FSキャッシュ内で更新されたデータの内、ユーザデータ43とジャーナルログ44は、同期的にディスク装置内のディスクキャッシュ35に書き込まれる(S3)。その後、リモートコピー部によりリモートコピーデータが作成され、ストレージシステムBに転送される。
ストレージシステムB内のディスクキャッシュ36では、リモートコピーされたデータが反映され、ユーザデータ45とジャーナルログ46は、ストレージシステムA内のユーザデータ43とジャーナルログ44と等しい内容に更新される(S4)。ディスクキャッシュ36内でジャーナルログの更新があると、それをメタデータ更新監視部が認識し(後述する図4の説明を参照)、メタデータ更新部がジャーナルログ46をFSキャッシュ上に読み出す(S5)。そして、メタデータ更新部は、読み出したジャーナルログ49を使用してFSキャッシュ内のメタデータ47を更新する(S6)。メタデータが更新されると、FSキャッシュパージ部により更新されたメタデータに対応するFSキャッシュ内のユーザデータを廃棄する。
リモートサイトのクライアント38から読み出し要求があった場合には、更新後のメタデータに基づいて、ディスク装置からユーザデータ45が読み出され、FSキャッシュ内に格納される(S7)。そして、クライアント38からの読み出し要求の応答としてユーザデータ48がクライアント38に転送される(S8)。このようにして、ローカルサイトのクライアント37によって書き込まれたファイルの内容が、リモートサイトのクライアント38によって参照される。
図3に示す本発明の実施形態に関する、ローカルサイトとリモートサイトのストレージシステム間でのデータ転送及びリモートサイトにおける最新ファイルデータの参照について再度説明する。ストレージシステムにおけるディスク装置内のファイルをアクセスするには、ファイルの管理情報であるメタデータをFSキャッシュ上に読み出してこのメタデータを参照することでファイルのデータ格納位置を取得し、ファイルのアクセスを実行するようなシステムとなっているのである。そして、このシステムを前提とした上で、ローカルサイトのストレージシステムからリモートサイトのストレージシステムにユーザデータとメタデータの更新履歴であるジャーナルログとがリモートコピーによりデータ転送されてきた後に、リモートサイトのストレージシステムに対してクライアントからアクセスがあった場合に、仮に、古いユーザデータ用のメタデータがFSキャッシュ上に残っているとすると、FS(ファイルシステム)処理部はFSキャッシュ上の古いメタデータを参照してファイルにアクセスしようとしてしまうので、ローカルサイトから折角コピーされてきた新しいユーザデータにアクセスすることができない(古いデータには古いデータ格納位置が含まれるので、古いメタデータを参照しても新しいユーザデータにはアクセスできない)と云う解決すべき課題が生じる。
そこで、本発明の実施形態では、この課題を解決するために、ローカルサイトのストレージシステムからユーザデータとともに転送されてきたジャーナルログ、即ちファイルの管理情報履歴であるジャーナルログを用いて、リモートサイトのストレージシステムのFSキャッシュ上に新しいメタデータを格納する。更にFSキャッシュに古いユーザデータが残っていると、クライアントからの読み出し要求に応じてFSキャッシュ内の古いユーザデータが読み出されてしまうので、この古いユーザデータをFSキャッシュから廃棄しておく。そして、リモートサイトのクライアントから読み出し要求があれば、FSキャッシュ上の新しいメタデータを参照して新しいユーザデータのファイルにアクセスすることができる。
次に、ローカルサイトとリモートサイトのストレージシステム間でのデータ転送における各部署での機能乃至作用について説明する。図8は、リモートコピーを行う際に、ローカルサイトで作成されリモートサイトに転送されるリモートコピーデータの構成例を示す図である。シーケンシャル番号81は、ローカルサイトで更新の行われた順に付けられる番号であり、リモートサイトではこの番号順に自システムに更新内容を反映することによって、ローカルサイトとの更新順序の一致を保証する。データ格納位置82は、ペアを構成しているドライブを識別するための情報と、そのドライブ内での位置を示す情報からなる。データ83は、ローカルサイトで行われた更新内容であり、この内容がリモートサイトでデータ格納位置82に対応した位置に格納される。
図5は、クライアント6からのファイルへの書き込み要求に対するFS(ファイルシステム)処理部17の処理フローを示す。FS処理部17は、ネットワーク7を介して接続されたクライアント6からファイルへの書き込み要求を受信する(ステップ101)。次に、ステップ102では処理を行う対象であるファイルのメタデータがFSキャッシュ18上に存在するかを調べ、存在しない場合はステップ103に進みディスク装置3からメタデータの読み出しを行う。
FS処理部17がファイルに対して処理を行う場合、必要なデータ(ユーザデータおよびメタデータ)がFSキャッシュ18上に存在する必要がある。存在しない場合、上記のようにFS処理部17は、まずディスク装置3からFSキャッシュ18に読み出しを行う。FSキャッシュ18上に読み出されたデータは、一つの処理が終了した後もすぐには捨てられず、FSキャッシュ18上に保持される。それは、その後に行われる処理でデータが必要となった場合は、FSキャッシュ18上のデータを使用することにより効率よく処理を行うためである。
FS処理部17は、ステップ103で必要に応じてメタデータの読み出しを行った後、ステップ104で、FSキャッシュ18上で今回の書き込みに対応してメタデータの更新を行う。そして、メタデータの更新と同時に、その更新の内容に対応するジャーナルログを作成し、そのジャーナルログをディスク装置3に書き込む(ステップ105)。
ジャーナルログは、図9に示すディスクドライブ23上に存在するジャーナルログ領域90に格納されるログ情報(メタデータの更新履歴情報)である。FS処理部17が行うメタデータの更新の内容をその更新順序どおりにログ情報として記録する。新たなジャーナルログの記録は、終点ポインタ92が示す位置から行い、記録した位置の次に終点ポインタ92を移動させる。始点ポインタ91は、ディスク装置3に更新を行っていないメタデータを含むジャーナルログの開始位置を示すポインタである。FS処理部17は、必要に応じてFSキャッシュ18上のメタデータをディスク装置3に書き込み、始点ポインタ91の位置を進める。即ち、FSキャッシュに存するメタデータを適宜のタイミングでディスクドライブに書き込んでしまえば、その時点で始点ポインタの位置を進ませることができる。始点ポインタ91と終点ポインタ92は、ジャーナルログ領域90内のログデータ領域93を末尾まで移動した次は先頭に移動する。このようにしてラップアラウンドしてログデータ領域93内の場所を指し示す。
そして、始点ポインタ91と終点ポインタ92で囲まれたログデータ領域93内のジャーナルログは、ディスク装置に対して更新内容が未反映のメタデータに対応したジャーナルログが格納された領域を表す。即ち、更新内容の反映したメタデータがディスクドライブに格納されてしまえば、そのメータデータに対応するジャーナルログは始点ポインタと終点ポインタで囲む必要はないのである。
ジャーナルログをディスク装置3に書き込むことにより、FS処理部17はメタデータの更新内容をディスク装置3に書き出す処理を、クライアント6に対する処理終了以前に行う必要がなくなる。それは、障害発生によりFSキャッシュ18上のデータが消失されても、ジャーナルログにより消失された内容をディスクドライブから復旧することが可能であるからである。
電源断などの障害が発生した場合、FSキャッシュ18上でのみ行われてディスク装置3に書き出されていないメタデータの更新内容は、FSキャッシュ17上から消失してしまう。障害復旧後にディスク装置3上のメタデータを読み出しても、更新されていないデータである可能性がある。そのため、障害復旧後FS処理部17はディスク装置3からジャーナルログを読み出し、始点ポインタ91と終点ポインタ92で示された領域のジャーナルログの内容を用いることにより、メタデータの内容の更新を行い、障害発生前の最新の状態に復旧することを行う。
図5に示すステップ105で、ジャーナルログのディスク装置への書き込み終了後、必要に応じてFSキャッシュ上に領域の確保を行い、ディスク装置3からユーザデータの読み出しを行った後、ディスク制御部21はクライアント6から受け取ったユーザデータをFSキャッシュ18上で更新し(ステップ106)、引き続いて、更新したユーザデータをディスク装置3へ書き込む(ステップ107)。ディスク装置3への書き込み終了後、クライアント6に対して書き込み要求に対する処理の終了応答を返す(ステップ108)。
上述したように、クライアント6からの書き込み要求に対する処理で、FS処理部17はFSキャッシュ18上でメタデータの更新とジャーナルログの作成とユーザデータの更新を行う。このうち作成されたジャーナルログと更新されたユーザデータは、書き込み要求の終了応答を返す前にディスク装置3に対して書き込みを行う。このようにクライアントからの書き込み要求に対し、更新されたデータをクライアントへの終了応答前にディスク装置3に書き込むことを同期書き込みという。これに対し、メタデータは、FSキャッシュ18上のみ更新しておき、必要に応じて書き込み要求の処理とは無関係(非同期)にディスク装置3に対して書き込みを行うことができる。
図5に示すフローは、ユーザデータをディスク装置3へ書き込むステップ107をクライアント6からの書き込み要求と同期して行う場合について示したが、ファイルシステムによっては、クライアントからの書き込み要求ではFSキャッシュ上のユーザデータのみ更新を行い、クライアント6から書き込み要求とは別にコミット要求を受け取り、この時にユーザデータをディスク装置3に書き出すといった処理を行う場合がある。この場合、ユーザデータは書き込み要求とは非同期にディスク装置3に書き込まれることになるが、コミット要求に対しては同期的にディスク装置3に書き込まれる。
次に、ディスク装置3に対して書き込みが行われた場合に、ディスク制御部21が行うリモートコピーの処理について説明する。図6はディスク制御部21が行う処理のフローを示す図である。ステップ111でFS処理部17より書き込み要求を受け取ると、ステップ112でディスクキャッシュ22上にデータの書き込みを行う。書き込みが行われると、ディスク制御部内のリモートコピー部26は、ステップ113で、ディスクキャッシュ22上にリモートコピー転送用データの作成を行う。ステップ114では、作成されたデータをリモートリンクイニシエータRI4からリモートサイトにあるストレージスステムにリモートリンクターゲットRT5を通して転送する。そして、ステップ115でリモートサイトのストレージからの受信の応答を待ち、受信を確認後にステップ116で書き込み要求に対する終了の応答をFS処理部17に返す。
リモートサイトのストレージシステムでは、RT5を通して受け取ったリモートコピーデータ内の更新データの内容を自システムに反映することで、自システムのファイルサーバ2から読み出し要求(リモートサイトのストレージシステムに接続されたクライアントからのファイルサーバを介した読み出し要求)があった場合に、更新データの内容を返すことができる。更新データの自システムへの反映は、ディスクキャッシュ22上で行われる。ディスク制御部21は、ファイルサーバを介さずに、RT5を通して受け取ったリモートコピーデータのデータ格納位置から、自システム内の対応する格納位置を計算する。そしてその位置に対するエントリをディスクキャッシュ22内に確保し、そこに更新データの内容を書き込む。このようにして、リモートサイト内のディスク装置3では、転送されてきたリモートコピーデータの内容が順次反映され、ローカルサイトで更新された内容と同一の内容がディスク装置3上に保存される。
しかし、リモートサイトで、リモートサイトストレージに接続されたクライアントがファイルの参照を行うためには、リモートサイトのFSキャッシュ18の内容をローカルサイトでの更新に対応して更新する必要がある(上述したように、リモートリンクターゲットRT5を通して受け取り、ディスク装置に書き込まれたユーザデータやメタデータはファイルサーバを通っていないから)。ローカルサイトとリモートサイトのそれぞれのファイルサーバ2にはFSキャッシュ18が存在し、それぞれデータを保存している。このため、従来の方式ではリモートサイトのFS処理が更新前のデータ内容を参照してしまい、クライアント6からのファイルへの参照を正しく処理することができない。
そこで、本発明の実施形態においては、リモートサイトで正しくファイルへの参照を行えるように、図4に示す3つの構成要素、即ち、メタデータ更新監視部、メタデータ更新部、FSキャッシュパージ部、をリモートサイトのFS処理部17に設けることによって、正しいファイル参照を処理できるようにする。
メタデータ更新監視部51は、リモートサイトのディスク装置3に対してファイルの更新が発生したことを検知するための構成要素である。この検知は、例えばディスク装置3内のジャーナルログ領域への書き込みを監視することによって行うことが可能である。ジャーナルログは、図9に示したようにある一定のログデータ領域93をラップアラウンドして使用している。このため、この領域内で次にどこにジャーナルログを書き込むかを示すポインタである終点ポインタ92を持っている。ディスク内の終点ポインタ92を定期的に読み出し、その値に更新があったことによって、ファイルの更新、即ちメタデータの更新が発生したことを知ることができる。
メタデータ更新部52は、メタデータ更新監視部51によってファイルの更新、即ちメタデータの更新が発生したことを検知した場合に、更新に対応してFSキャッシュ18のメタデータを更新する構成要素である。図5に示すフローの通り、ローカルサイトでメタデータのディスク装置3への更新は、クライアント6からの書き込み要求と同期しては行われない。このため、リモートサイトでディスク装置3からメタデータの内容を読み出しても、更新前の内容を読み出してしまう可能性がある。そこで、メタデータ更新部52は、ジャーナルログを使用してメタデータの更新を行う。ジャーナルログにはローカルサイトで行われたメタデータの更新内容が記録されているため、これを用いることによりメタデータを更新後の状態にすることが可能である。
FSキャッシュパージ部53は、FSキャッシュ18内のユーザデータを廃棄するための構成要素である。メタデータ更新部52により更新されたメタデータに対するファイルは、ローカルサイトで書き込みがあったファイルであり、FSキャッシュ18上に保持されているこのファイルのユーザデータは、更新前の値である可能性がある。FSキャッシュパージ部53により、更新前のFSキャッシュ18上のデータを廃棄にすることにより、今後リモートサイトでクライアント6から参照要求があった場合に、ディスク装置3から更新後のユーザデータがFSキャッシュ18上に読み出され、参照することが可能となる。
図7にファイル更新があった場合に、FSキャッシュ18の内容を正しく反映させるために、リモートサイトのFS処理部17の上記3つの構成要素(メタデータ更新監視部、メタデータ更新部、FSキャッシュパージ部)が行う処理のフローを示す。まず、ステップ121でメタデータ更新監視部51によりメタデータ更新の発生を監視する。メタデータの更新が発生した場合はステップ122からステップ123に進む。ステップ123では、メタデータの更新内容をFSキャッシュ18内に反映させるために、メタデータ更新部52は更新のあったジャーナルログを読み出す。そしてステップ124で、ジャーナルログに格納されている内容からメタデータの内容を更新する。その後、ステップ125でFSキャッシュパージ部53により、更新されたメタデータより更新されたファイルのユーザデータ領域を識別し、ステップ126でFSキャッシュ18上にその領域に対するキャッシュエントリが存在する場合には、そのキャッシュエントリを廃棄する。
ステップ124で更新を行ったメタデータは、リモートサイトのFSキャッシュ18内で変更のあったメタデータとして管理し、FSキャッシュ18上に保持しておく必要がある。これは、リモートサイトのディスク装置3内ではメタデータの更新が行われていないためである。FSキャッシュ18上のメタデータを無効にしてしまうと、ディスク装置3から更新前のメタデータが読み出されて使用されてしまう可能性がある。さらに、リモートサイトのディスク装置3に対しては、ローカルサイトとデータ内容を一致させるために、書き込み禁止であることがある。この場合、ステップ124で更新を行ったメタデータの内容はリモートサイトのFS処理部17からディスク装置3に書き込むことはできない。このため、ローカルサイトのディスク装置3でメタデータが更新され、それがリモートサイトのディスク装置3に反映されるまでFSキャッシュ18上に保持する。
メタデータがディスク装置3上で更新されたことは、ジャーナルログ領域90の始点ポインタ91により知ることが可能である。メタデータの更新を行う元となったジャーナルデータが始点ポインタ91と終点ポインタ93の間に存在する間は、メタデータがディスク装置3上に反映されていない可能性がある。始点ポインタ91が更新され、元となったジャーナルデータが始点ポインタ91と終点ポインタ93の間から外れた場合は、始点ポインタ91の更新以前にローカルサイトでメタデータのディスク装置3への書き込みが行われており、メタデータの保持を解除することが可能となる。
ステップ125および126で、キャッシュエントリを廃棄しても、リモートサイトでユーザデータが更新される前にリモートサイトのクライアント6から参照要求があった場合、再び更新前のユーザデータをFSキャッシュ18に読み出してしまう可能性がある。更新前のデータを読み出すことを防ぐため、ステップ125および126は、ユーザデータの更新が終了したのを確認してから行うか、ユーザデータの更新が終了するまでその領域に読み出しを行わないように待つ等の処理を行う必要がある。ユーザデータの更新終了の確認はジャーナルログにより行う。この際、FS処理部17がジャーナルログにユーザデータ更新の終了を示すログデータを書く必要がある。
また、コミット要求を伴うファイルシステムの場合、FSキャッシュパージ手段53が行うステップ125と126は、このコミット処理に対するジャーナルログを契機に行えばよい。
尚、図7のステップ126においては、FSキャッシュ18上のキャッシュエントリを廃棄した。しかし、リモートサイトのディスクキャッシュにはローカルサイトからリモートコピーされてきたユーザデータが格納されている。そこで更新されたメタデータに対応するファイルのユーザデータがFSキャッシュ上に存在する場合には、当該ユーザデータを廃棄する代わりに、FSキャッシュパージ部が、当該ファイルのユーザデータをディスクキャッシュから読み出して、FSキャッシュ上に格納しても良い。
ここまでは、FS処理部17が処理するファイルシステムは、ジャーナルログを作成するジャーナリングファイルシステムである例を説明したが、FS処理部17が処理するファイルシステムは、ジャーナリングファイルシステムに限定されるわけではない。この場合、リモートサイトのストレージシステム1内のメタデータ更新監視部51は、ディスクドライブへの更新が行われたことを監視することによりメタデータ更新が行われたことを認識する。メタデータ更新が行われたことを認識する方法としては、ディスク制御部内のリモートコピー部26からFS処理部17に割り込み等により通知する方法や、リモートコピー部26によりディスク装置3内の別のディスクドライブ23に更新があったこと、および更新のあったデータの格納位置を書き込み、それをFS処理部17が定期的に読み出し、その内容が更新されることによって認識する方法等が考えられる。
メタデータ更新部52は、更新の行われたメタデータをFSキャッシュ18から廃棄するだけでよい。FS処理部17が処理するファイルシステムがジャーナルを用いないファイルシステムである場合、FS処理部17はディスク装置3へのメタデータの書き出しをクライアント6からの書き込み要求と同期して行う。このため、FSキャッシュ18から廃棄し、次回使用する必要が生じた時にディスク装置3から読み出すことによって更新後のメタデータを参照することが可能であるからである。また、FSキャッシュパージ部53は、メタデータ更新部52により廃棄されたメタデータに対応したユーザデータをFSキャッシュ18から廃棄すればよい。
以上説明したように、本発明の実施形態に係るストレージシステムでは、リモートサイトのファイルシステムで、ファイル更新即ち、メタデータ更新を監視する更新監視部と、メタデータを更新する更新部、更新のあったファイルのFSキャッシュをパージするパージ部を有することによって、ローカルサイトでの更新が行われるのに合わせて、更新内容をリアルタイムにリモートサイトのファイルシステムに反映させ、リモートサイトで最新のファイルデータを参照することを可能とするものである。
本発明の実施形態に係るストレージシステムの全体構成を示すブロック図である。 本実施形態のストレージシステムをリモートコピー接続した統合システム構成例を示す図である。 ローカルサイトとリモートサイトのストレージシステム間でのデータ転送及びリモートサイトにおける最新ファイルデータの参照の状況を示す図である。 本実施形態で使用するファイルサーバ内のファイルシステム処理部における機能を示す図である。 ローカルサイトのストレージシステムへのファイル書き込み要求に対するファイル処理部の処理フローを示す図である。 ストレージシステムのディスク装置に書き込みが行われた場合におけるディスク制御部の実行するリモートコピーの処理フローを示す図である。 ファイル更新があった場合のリモートサイトストレージシステムにおけるファイルシステム処理部が実行する複数処理のフローを示す図である。 リモートコピーを行う際のリモートサイトに転送されるリモートコピーデータの構成例を示す図である。 ディスク装置内のディスクドライブに存在するジャーナルログ領域の格納情報を示す図である。
符号の説明
1 ストレージシステム
2 ファイルサーバ
3 ディスク装置
4 リモートリンクイニシエータ
5 リモートリンクターゲット
6 クライアント
7 ネットワーク
8 通信回線
11 CPU
12 ネットワークインタフェース(NI)
13 メインメモリ
16 OS
17 FS(ファイルシステム)処理部
18 FSキャッシュ
21 ディスク制御部
22 ディスクキャッシュ
23 ディスクドライブ
26 リモートコピー部
33,34 FSキャッシュ
37,38 クライアント
40,47 FSキャッシュ内メタデータ
41,48 FSキャッシュ内ユーザデータ
42,49 FSキャッシュ内ジャーナルログ
43,45 ディスクキャッシュ内ユーザデータ
44,46 ディスクキャッシュ内ジャーナルログ
51 メタデータ更新監視部
52 メタデータ更新部
53 FSキャッシュパージ部

Claims (3)

  1. データを記憶する1つ又は複数のディスクドライブ、前記ディスクドライブに対するデータの読み書きを制御するディスク制御部、前記ディスクドライブとのデータ授受に用いられるディスクキャッシュ、を有するディスク装置と、
    CPU、前記CPUで実行されるプログラムとデータを格納するメインメモリ、クライアントとネットワークを介して接続されるネットワークインタフェース、を有するファイルサーバと、
    通信回線を介して他のストレージシステムのディスク装置とデータを授受するインタフェースと、を備えたストレージシステムであって、
    前記メインメモリには、ファイルとディスクドライブ内のデータ位置とが対応するように前記ディスクドライブの領域を管理するファイルシステム処理部と、前記ファイルシステム処理部が使用するファイルシステムキャッシュと、が設けられ
    前記ファイルシステム処理部は、前記ファイルの管理情報であるメタデータの更新履歴であるジャーナルログを参照して前記メタデータが更新されたことを監視するメタデータ更新監視部と、前記メタデータ更新監視部による前記メタデータの更新の監視を基に前記ファイルシステムキャッシュのメタデータを更新するメタデータ更新部と、前記メタデータ更新部によってメタデータを更新した場合に前記ファイルシステムキャッシュ内の対応するユーザデータを廃棄するファイルシステムキャッシュパージ部と、が設けられ
    前記ディスク制御部は、前記他のストレージシステムのディスク装置に対して行われたファイルの更新内容であるユーザデータと前記ジャーナルログとを、前記通信回線を介して前記他のストレージシステムから受信して前記ストレージシステムの前記ディスク装置に格納するように動作し、
    前記メタデータ更新監視部は、前記ディスク装置内で前記ジャーナルログを参照して前記メタデータが更新されたか否かを監視し、前記メタデータ更新部は、前記メタデータの更新のときに前記ジャーナルログを前記ファイルシステムキャッシュ上に読み出し前記読み出したジャーナルログを使用して前記ファイルシステムキャッシュ内のメタデータを更新し、前記ファイルシステムキャッシュパージ部は、前記更新されたメタデータに対応する前記ファイルシステムキャッシュ内のユーザデータを廃棄し、
    前記ストレージシステムに接続されたクライアントからの読み出し要求があった場合、前記ファイルシステム処理部は、前記ファイルシステムキャッシュ上で更新されたメタデータに基づいて前記ディスク装置からユーザデータを読み出して前記ファイルシステムキャッシュに格納し、前記読み出し要求の応答として前記格納した前記ユーザデータを前記クライアントに転送する
    ことを特徴とするストレージシステム。
  2. データを記憶する1つ又は複数のディスクドライブ、前記ディスクドライブに対するデータの読み書きを制御するディスク制御部、前記ディスクドライブとのデータ授受に用いられるディスクキャッシュ、を有するディスク装置と、CPU、前記CPUで実行されるプログラムとデータを格納するメインメモリ、クライアントとネットワークを介して接続されるネットワークインタフェース、を有するファイルサーバと、通信回線を介して他のストレージシステムのディスク装置とデータを授受するインタフェースと、を備えたストレージシステムのファイル参照方法において、
    前記メインメモリには、ファイルとディスクドライブ内のデータ位置とが対応するように前記ディスクドライブの領域を管理するファイルシステム処理部と、前記ファイルシステム処理部が使用するファイルシステムキャッシュと、が設けられ
    前記ファイルシステム処理部は、前記ファイルの管理情報であるメタデータの更新履歴であるジャーナルログを参照して前記メタデータが更新されたことを監視するメタデータ更新監視部と、前記メタデータ更新監視部による前記メタデータの更新の監視を基に前記ファイルシステムキャッシュのメタデータを更新するメタデータ更新部と、前記メタデータ更新部によってメタデータを更新した場合に前記ファイルシステムキャッシュ内の対応するユーザデータを廃棄するファイルシステムキャッシュパージ部と、が設けられ
    前記ディスク制御部は、前記他のストレージシステムのディスク装置に対して行われたファイルの更新内容であるユーザデータと前記ジャーナルログとを、前記通信回線を介して前記他のストレージシステムから受信して前記ストレージシステムの前記ディスク装置に格納するように動作するものであり、
    前記メタデータ更新監視部によって、前記ディスク装置内で前記ジャーナルログを参照して前記メタデータが更新されたか否かを監視するステップと、
    前記メタデータ更新部によって、前記メタデータの更新のときに前記ジャーナルログを前記ファイルシステムキャッシュ上に読み出し前記読み出したジャーナルログを使用して前記ファイルシステムキャッシュ内のメタデータを更新するステップと、
    前記ファイルシステムキャッシュパージ部によって、前記更新されたメタデータに対応する前記ファイルシステムキャッシュ内のユーザデータを廃棄するステップと、
    前記ストレージシステムに接続されたクライアントからの読み出し要求があった場合、前記ファイルシステム処理部によって、前記ファイルシステムキャッシュ上で更新されたメタデータに基づいて前記ディスク装置からユーザデータを読み出して前記ファイルシステムキャッシュに格納し、前記読み出し要求の応答として前記格納した前記ユーザデータを前記クライアントに転送するステップと、からなる
    ことを特徴とするストレージシステムのファイル参照方法。
  3. データを記憶する1つ又は複数のディスクドライブ、前記ディスクドライブに対するデータの読み書きを制御するディスク制御部、前記ディスクドライブとのデータ授受に用いられるディスクキャッシュ、を有するディスク装置と、
    CPU、前記CPUで実行されるプログラムとデータを格納するメインメモリ、クライアントとネットワークを介して接続されるネットワークインタフェース、を有するファイルサーバと、
    通信回線を介して他のストレージシステムのディスク装置とデータを授受するインタフェースと、をそれぞれ備えた第1のストレージシステムと第2のストレージシステムを含む統合システムであって、
    前記第1と第2のストレージシステムのメインメモリには、ファイルとディスクドライブ内のデータ位置とが対応するように前記ディスクドライブの領域を管理するファイルシステム処理部と、前記ファイルシステム処理部が使用するファイルシステムキャッシュと、が設けられ、
    前記第1と第2のストレージシステムの前記ファイルシステム処理部には、前記ファイルの管理情報であるメタデータの更新履歴であるジャーナルログを参照して前記メタデータが更新されたことを監視するメタデータ更新監視部と、前記メタデータ更新監視部による前記メタデータの更新の監視を基に前記ファイルシステムキャッシュのメタデータを更新するメタデータ更新部と、前記メタデータ更新部によってメタデータを更新した場合に前記ファイルシステムキャッシュ内の対応するユーザデータを廃棄するファイルシステムキャッシュパージ部と、が設けられ、
    前記第1のストレージシステムのディスク制御部は、前記第2のストレージシステムのディスク装置に対して行われたファイルの更新内容であるユーザデータと前記ジャーナルログとを、前記通信回線を介して前記第2のストレージシステムから受信して前記第1のストレージシステムの前記ディスク装置に格納するように動作し、
    前記第1のストレージシステムのメタデータ更新監視部は、前記第1のストレージシステムのディスク装置内で前記ジャーナルログを参照して前記メタデータが更新されたか否かを監視し、前記第1のストレージシステムのメタデータ更新部は、前記メタデータの更新のときに前記ジャーナルログを前記第1のストレージシステムのファイルシステムキャッシュ上に読み出し前記読み出したジャーナルログを使用して前記第1のストレージシステムのファイルシステムキャッシュ内のメタデータを更新し、前記第1のストレージシステムのファイルシステムキャッシュパージ部は、前記更新されたメタデータに対応する第1のストレージシステムの前記ファイルシステムキャッシュ内のユーザデータを廃棄し、
    前記第1のストレージシステムに接続されたクライアントからの読み出し要求があった場合、前記第1のストレージシステムのファイルシステム処理部は、前記第1のストレージシステムのファイルシステムキャッシュ上で更新されたメタデータに基づいて前記第1のストレージシステムのディスク装置からユーザデータを読み出して前記1のストレージシステムのファイルシステムキャッシュに格納し、前記読み出し要求の応答として前記格納した前記ユーザデータを前記クライアントに転送する
    ことを特徴とする統合ストレージシステム。
JP2003364793A 2003-10-24 2003-10-24 リモートサイト及び/又はローカルサイトのストレージシステム及びリモートサイトストレージシステムのファイル参照方法 Expired - Fee Related JP4267421B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2003364793A JP4267421B2 (ja) 2003-10-24 2003-10-24 リモートサイト及び/又はローカルサイトのストレージシステム及びリモートサイトストレージシステムのファイル参照方法
US10/766,022 US7266644B2 (en) 2003-10-24 2004-01-29 Storage system and file-reference method of remote-site storage system
US11/878,845 US20070271414A1 (en) 2003-10-24 2007-07-27 Storage system and file-reference method of remote-site storage system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003364793A JP4267421B2 (ja) 2003-10-24 2003-10-24 リモートサイト及び/又はローカルサイトのストレージシステム及びリモートサイトストレージシステムのファイル参照方法

Publications (2)

Publication Number Publication Date
JP2005128861A JP2005128861A (ja) 2005-05-19
JP4267421B2 true JP4267421B2 (ja) 2009-05-27

Family

ID=34510126

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003364793A Expired - Fee Related JP4267421B2 (ja) 2003-10-24 2003-10-24 リモートサイト及び/又はローカルサイトのストレージシステム及びリモートサイトストレージシステムのファイル参照方法

Country Status (2)

Country Link
US (2) US7266644B2 (ja)
JP (1) JP4267421B2 (ja)

Families Citing this family (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8315973B1 (en) * 2004-09-28 2012-11-20 Symantec Operating Corporation Method and apparatus for data moving in multi-device file systems
JP2006163801A (ja) * 2004-12-07 2006-06-22 Canon Inc 情報記録再生装置
US7680835B2 (en) * 2005-02-28 2010-03-16 Microsoft Corporation Online storage with metadata-based retrieval
US7653836B1 (en) * 2005-06-10 2010-01-26 American Megatrends, Inc Logging metadata modifications in a data storage system
JP5296960B2 (ja) * 2005-06-17 2013-09-25 日本電気株式会社 ファイルバージョン管理装置
JP2007122573A (ja) * 2005-10-31 2007-05-17 Nec Corp 仮想サーバシステム、分散制御方法およびプログラム
JP4571576B2 (ja) * 2005-11-24 2010-10-27 株式会社日立製作所 リモートコピー記憶装置システムおよびリモートコピー方法
US7809778B2 (en) * 2006-03-08 2010-10-05 Omneon Video Networks Idempotent journal mechanism for file system
JP4369471B2 (ja) 2006-12-27 2009-11-18 富士通株式会社 ミラーリングプログラム、ミラーリング方法、情報記憶装置
US7996421B2 (en) * 2007-01-03 2011-08-09 International Business Machines Corporation Method, computer program product, and system for coordinating access to locally and remotely exported file systems
JP5030614B2 (ja) * 2007-02-23 2012-09-19 株式会社オートネットワーク技術研究所 車載通信システム及び車載通信方法
US7958200B2 (en) * 2007-08-14 2011-06-07 International Business Machines Corporation Methods, computer program products, and apparatuses for providing remote client access to exported file systems
JP2009070143A (ja) 2007-09-13 2009-04-02 Hitachi Ltd Nas装置の差分リモートバックアップにおけるデータ復旧方法及び計算機システム
WO2009073013A1 (en) * 2007-12-07 2009-06-11 Apara Global Services Inc. Remote data storage management system
JP5090221B2 (ja) * 2008-03-21 2012-12-05 株式会社日立ソリューションズ ジャーナルログ記録制御方法
WO2010038259A1 (ja) * 2008-10-02 2010-04-08 富士通株式会社 ファイル格納装置及び方法
US8200634B2 (en) * 2008-10-08 2012-06-12 Sap Ag Zero downtime maintenance using a mirror approach
EP2184688A1 (en) * 2008-11-06 2010-05-12 Amadeus s.a.s Method of integrating in real time large volumes of updates in a database
KR20100061078A (ko) * 2008-11-28 2010-06-07 삼성전자주식회사 메타 데이터를 이용하는 컨텐츠 소비 방법 및 그 장치
JP5386993B2 (ja) * 2009-01-09 2014-01-15 日本電気株式会社 情報処理システム
US8566362B2 (en) * 2009-01-23 2013-10-22 Nasuni Corporation Method and system for versioned file system using structured data representations
US20100306253A1 (en) * 2009-05-28 2010-12-02 Hewlett-Packard Development Company, L.P. Tiered Managed Storage Services
JP5661355B2 (ja) * 2010-07-09 2015-01-28 株式会社野村総合研究所 分散キャッシュシステム
US8990272B2 (en) 2010-07-30 2015-03-24 Nasuni Corporation Versioned file system with pruning
CN102346740B (zh) * 2010-08-02 2016-08-10 联想(北京)有限公司 一种文件同步方法、电子设备和同步系统
US8799231B2 (en) 2010-08-30 2014-08-05 Nasuni Corporation Versioned file system with fast restore
US8661063B2 (en) 2010-10-12 2014-02-25 Nasuni Corporation Versioned file system with sharing
WO2012092347A2 (en) 2010-12-28 2012-07-05 Digital Storage Solutions, Inc. System for writing and dispensing solid-state storage devices
US8725782B2 (en) * 2011-04-25 2014-05-13 Microsoft Corporation Virtual disk storage techniques
US9519496B2 (en) 2011-04-26 2016-12-13 Microsoft Technology Licensing, Llc Detecting and preventing virtual disk storage linkage faults
US9367452B1 (en) 2011-09-30 2016-06-14 Emc Corporation System and method for apportioning storage
US9367453B1 (en) * 2011-09-30 2016-06-14 Emc Corporation System and method for migrating cache data
US9122535B2 (en) 2011-11-22 2015-09-01 Netapp, Inc. Optimizing distributed data analytics for shared storage
US10885060B2 (en) 2012-02-28 2021-01-05 International Business Machines Corporation On-demand file synchronization
US9778860B2 (en) 2012-09-12 2017-10-03 Microsoft Technology Licensing, Llc Re-TRIM of free space within VHDX
KR101471879B1 (ko) * 2012-10-31 2014-12-11 삼성에스디에스 주식회사 하이퍼바이저 기반 서버 이중화 시스템, 그 방법 및 서버 이중화 컴퓨터 프로그램이 기록된 기록매체
WO2014106871A1 (en) * 2013-01-07 2014-07-10 Hitachi, Ltd. Storage system which realizes asynchronous remote copy using cache memory composed of flash memory, and control method thereof
WO2015010327A1 (zh) * 2013-07-26 2015-01-29 华为技术有限公司 数据发送方法、数据接收方法和存储设备
US9529809B2 (en) * 2013-10-17 2016-12-27 International Business Machines Corporation Managing log data using a circular fixed size file
WO2015088505A1 (en) * 2013-12-11 2015-06-18 Intel Corporation Cache and non-cache usage in a distributed storage system
JP6041839B2 (ja) 2014-09-04 2016-12-14 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation メタ情報を保管する方法、プログラム、及びそのテープ記録システム
EP3224744A4 (en) 2014-11-28 2018-08-01 Nasuni Corporation Versioned file system with global lock
KR102412423B1 (ko) * 2020-01-09 2022-06-23 성균관대학교산학협력단 비휘발성 메모리 장치, 이것을 포함하는 컴퓨팅 시스템 및 이것의 동작 방법
JP7331027B2 (ja) 2021-02-19 2023-08-22 株式会社日立製作所 スケールアウト型ストレージシステム及び記憶制御方法

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US46602A (en) * 1865-02-28 Improvement in plugging-instruments for the teeth
US5592618A (en) 1994-10-03 1997-01-07 International Business Machines Corporation Remote copy secondary data copy validation-audit function
US5754888A (en) * 1996-01-18 1998-05-19 The Board Of Governors For Higher Education, State Of Rhode Island And Providence Plantations System for destaging data during idle time by transferring to destage buffer, marking segment blank , reodering data in buffer, and transferring to beginning of segment
US6101497A (en) * 1996-05-31 2000-08-08 Emc Corporation Method and apparatus for independent and simultaneous access to a common data set
JP3992427B2 (ja) * 2000-08-01 2007-10-17 株式会社日立製作所 ファイルシステム
US6823336B1 (en) * 2000-09-26 2004-11-23 Emc Corporation Data storage system and method for uninterrupted read-only access to a consistent dataset by one host processor concurrent with read-write access by another host processor
JP2002307727A (ja) * 2001-04-17 2002-10-23 Seiko Epson Corp ヘッド吐出特性維持装置及びそれを備えた記録装置
US7146524B2 (en) * 2001-08-03 2006-12-05 Isilon Systems, Inc. Systems and methods for providing a distributed file system incorporating a virtual hot spare
JP2003076592A (ja) 2001-09-04 2003-03-14 Hitachi Ltd データ格納システム
US7747576B2 (en) 2002-02-20 2010-06-29 International Business Machines Corporation Incremental update control for remote copy
JP2003248605A (ja) * 2002-02-26 2003-09-05 Hitachi Ltd ストレージシステム、主記憶システム、副記憶システム、及びそのデータ複写方法
US7043485B2 (en) * 2002-03-19 2006-05-09 Network Appliance, Inc. System and method for storage of snapshot metadata in a remote file
US6993539B2 (en) * 2002-03-19 2006-01-31 Network Appliance, Inc. System and method for determining changes in two snapshots and for transmitting changes to destination snapshot
JP2004013367A (ja) 2002-06-05 2004-01-15 Hitachi Ltd データ記憶サブシステム
JP2004259079A (ja) 2003-02-27 2004-09-16 Hitachi Ltd データ処理システム
US20040193952A1 (en) 2003-03-27 2004-09-30 Charumathy Narayanan Consistency unit replication in application-defined systems

Also Published As

Publication number Publication date
US20050091448A1 (en) 2005-04-28
US7266644B2 (en) 2007-09-04
JP2005128861A (ja) 2005-05-19
US20070271414A1 (en) 2007-11-22

Similar Documents

Publication Publication Date Title
JP4267421B2 (ja) リモートサイト及び/又はローカルサイトのストレージシステム及びリモートサイトストレージシステムのファイル参照方法
US7225307B2 (en) Apparatus, system, and method for synchronizing an asynchronous mirror volume using a synchronous mirror volume
US7181581B2 (en) Method and apparatus for mirroring data stored in a mass storage system
JP4452533B2 (ja) システムおよび記憶装置システム
US8977826B1 (en) Extent commands in replication
US7434093B2 (en) Dual channel restoration of data between primary and backup servers
US7860836B1 (en) Method and apparatus to recover data in a continuous data protection environment using a journal
US7310711B2 (en) Hard disk drive with support for atomic transactions
EP1455275B1 (en) Data restoring apparatus using journal data and identification information
US6701455B1 (en) Remote copy system with data integrity
US7277997B2 (en) Data consistency for mirroring updatable source data storage
EP2948849B1 (en) System and method for replicating data
JP2007200182A (ja) ストレージ装置、及びストレージシステム
US20050198453A1 (en) Data synchronization of multiple remote storage
JPH1185408A (ja) 記憶制御装置
KR19980024086A (ko) 컴퓨터 시스템 및 화일 관리 방법
JP2003223287A (ja) 記憶装置、この記憶装置のバックアップ方法及びプログラム
US20050267916A1 (en) Data backup system and method
US7254683B2 (en) Speculative data mirroring apparatus method and system
JP4731975B2 (ja) データベース管理方法、およびストレージシステム
JP2006031446A (ja) データ記憶装置、データ記憶方法およびデータ記憶プログラム
JP4187778B2 (ja) バックアップシステム及びバックアップ方法
US7587466B2 (en) Method and computer system for information notification
JPH10240620A (ja) コンピュータシステムおよび同システムにおけるチェックポイントイメージ保存方法
JP5061250B2 (ja) データベース管理方法、およびストレージシステム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060126

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081111

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090108

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

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090218

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20120227

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120227

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130227

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees