JP2016071768A - ストレージ制御装置およびストレージシステム - Google Patents

ストレージ制御装置およびストレージシステム Download PDF

Info

Publication number
JP2016071768A
JP2016071768A JP2014202776A JP2014202776A JP2016071768A JP 2016071768 A JP2016071768 A JP 2016071768A JP 2014202776 A JP2014202776 A JP 2014202776A JP 2014202776 A JP2014202776 A JP 2014202776A JP 2016071768 A JP2016071768 A JP 2016071768A
Authority
JP
Japan
Prior art keywords
control device
write
storage
storage control
write 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.)
Granted
Application number
JP2014202776A
Other languages
English (en)
Other versions
JP6354507B2 (ja
Inventor
中田 康之
Yasuyuki Nakada
康之 中田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2014202776A priority Critical patent/JP6354507B2/ja
Priority to US14/862,561 priority patent/US9990148B2/en
Publication of JP2016071768A publication Critical patent/JP2016071768A/ja
Application granted granted Critical
Publication of JP6354507B2 publication Critical patent/JP6354507B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • 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/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/2076Synchronous techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/065Replication mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices

Landscapes

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

Abstract

【課題】ストレージ制御装置への書き込みが要求されてから書き込み完了応答を要求元に送信するまでの時間を短縮する。
【解決手段】ストレージ制御装置1の制御部1bは、ストレージ制御装置2の制御部2bから読み出し要求を受信し、読み出し要求の受信後にホスト装置3からデータXの書き込み要求を受信すると、データXを読み出し要求に対する応答として制御部2bに送信する。制御部2bは、制御部1bから受信したデータXを記憶部2aに書き込み、データXの書き込み完了通知を制御部1bに送信する。制御部1bは、制御部2bからデータXの書き込み完了通知を受信すると、ホスト装置3にデータXの書き込み完了応答を送信する。
【選択図】図1

Description

本発明はストレージ制御装置およびストレージシステムに関する。
データのバックアップ方法の一例として、ホスト装置から一方のストレージ制御装置に書き込みが要求されたデータを、当該ストレージ制御装置が他方のストレージ装置に送信することで、各ストレージ制御装置が制御する記憶装置にデータを二重化する方法がある。このバックアップ方法では、例えば、各ストレージ制御装置を物理的に離れた場所に設置することで、災害の発生によるデータ消失の可能性を低減することができる。また、上記バックアップ方法において、ホスト装置からデータの書き込み要求を受けたストレージ制御装置が、データの二重化が完了した後に書き込み完了応答をホスト装置に送信するという動作モードは、“同期モード”などと呼ばれる。
さらに、データをバックアップする技術の一例として、第1の記憶サブシステムがホスト端末から受信したライトデータを第2の記憶サブシステムが受信する技術が提案されている。この技術において、第1の記憶サブシステムは、ライトデータと第1の記憶サブシステムが有する記憶デバイスの更新順序を表す更新番号とを含んだデータセットを生成する。第1の記憶サブシステムは、第2の記憶サブシステムからリード命令で指定された更新番号に対応するライトデータを第2の記憶サブシステムに送信する。
また、他の例として、第1の記憶システムは、ライトデータとライトデータが書き込まれる格納位置を示すアドレス情報とを第3の記憶システムに送信し、第2の記憶システムは、アドレス情報に従って第3の記憶システムからライトデータを受信する、という技術が提案されている。
また、データの書き込み要求手順の例として、ホストコンピュータが書き込み要求を送信すると、ストレージシステムがデータの受信準備の完了通知を返信し、完了通知を受信したホストコンピュータが書き込みデータを送信する、という手順が知られている。
特開2006−65624号公報 特開2005−55948号公報 特開2007−219717号公報
ところで、上記の同期モードによるバックアップ処理において、ホスト装置からデータの書き込み要求を受けた一方のストレージ制御装置が他方のストレージ制御装置に書き込みデータを送信する際に、上記の書き込み要求手順が用いられる場合がある。この場合、一方のストレージ制御装置は、他方のストレージ制御装置に書き込み要求を送信し、他方のストレージ制御装置から受信準備の完了通知を受信した後、他方のストレージ制御装置に書き込みデータを送信する。
しかし、この場合には、一方のストレージ制御装置は、書き込みデータを送信する前に他方のストレージ制御装置との間で1往復の通信を行う必要があり、その分だけホスト装置に応答するまでの時間が長くなるという問題がある。特に、ストレージ制御装置間の物理的な距離が長くなるほどストレージ制御装置間の通信に要する時間が長くなり、その結果、ホスト装置に応答するまでの時間も長くなってしまう。
また、同期モードによるバックアップ処理以外に、ホスト装置から書き込みデータを受信した一方のストレージ制御装置が他方のストレージ制御装置に書き込みデータを転送して、他方のストレージ制御装置の記憶装置へ書き込みデータを書き込みする場合の書き込みを要求する際にも、上記の書き込み要求手順が用いられる場合もある。この場合にも、上記と同様の問題がある。
1つの側面では、本発明は、ストレージ制御装置への書き込みが要求されてから書き込み完了応答を要求元に送信するまでの時間を短縮可能なストレージ制御装置およびストレージシステムを提供することを目的とする。
1つの態様では、ストレージ制御装置が提供される。このストレージ制御装置は、制御部を有する。制御部は、記憶部を備える他のストレージ制御装置から読み出し要求を受信し、読み出し要求の受信後にホスト装置から書き込みデータの書き込み要求を受信すると、書き込みデータを読み出し要求に対する応答として他のストレージ制御装置に送信し、他のストレージ制御装置から書き込みデータの記憶部への書き込み完了通知を受信すると、ホスト装置に書き込みデータの書き込み完了応答を送信する。
また、1つの態様では、ホスト装置からの書き込みデータが他のストレージ制御装置を経由して転送されるストレージ制御装置が提供される。このストレージ制御装置は、記憶部と制御部とを有する。制御部は、他のストレージ制御装置に読み出し要求を送信し、読み出し要求の送信後に他のストレージ制御装置がホスト装置から受信した書き込みデータを読み出し要求に対する応答として他のストレージ制御装置から受信し、書き込みデータを記憶部に書き込む。
また、1つの態様では、第1のストレージ制御装置と、記憶部を有する第2のストレージ制御装置とを含むストレージシステムが提供される。第2のストレージ制御装置は、第1のストレージ制御装置に読み出し要求を送信する。第1のストレージ制御装置は、第2のストレージ制御装置から読み出し要求を受信し、読み出し要求の受信後にホスト装置から書き込みデータの書き込み要求を受信すると、書き込みデータを読み出し要求に対する応答として第2のストレージ制御装置に送信する。第2のストレージ制御装置は、読み出し要求の応答として書き込みデータを第1のストレージ制御装置から受信すると、書き込みデータを記憶部に書き込み、書き込み完了通知を第1のストレージ制御装置に送信する。第1のストレージ制御装置は、第2のストレージ制御装置から書き込みデータの記憶部への書き込み完了通知を受信すると、ホスト装置に書き込みデータの書き込み完了応答を送信する。
1つの側面では、ストレージ制御装置への書き込みが要求されてから書き込み完了応答を要求元に送信するまでの時間を短縮できる。
第1の実施の形態のストレージシステムを示す図である。 第2の実施の形態のストレージシステムを示す図である。 ストレージ装置のCMのハードウェア例を示す図である。 バックアップ処理の比較例を示すシーケンス図である。 各ストレージ装置のCMの機能例を示す図である。 CM間の通信で使用される情報を示す図である。 要求テーブルの例を示す図である。 統計テーブルの例を示す図である。 読み出し要求管理テーブルの例を示す図である。 第2の実施の形態のバックアップ処理を示すシーケンス図である。 読み出し要求の送信処理の例を示すフローチャートである。 読み出し要求に対する応答の受信処理の例を示すフローチャートである。 読み出し要求の受信処理の例を示すフローチャートである。 書き込み要求受信処理の例(その1)を示すフローチャートである。 書き込み要求受信処理の例(その2)を示すフローチャートである。 バッファ領域確保の最適化処理の具体例を示す図である。
以下、本実施の形態を図面を参照して説明する。
[第1の実施の形態]
図1は、第1の実施の形態のストレージシステムを示す図である。ストレージシステムは、ストレージ制御装置1,2を含む。ストレージ制御装置1,2は、例えばネットワークを介して接続されている。また、ストレージ制御装置1には、ストレージ制御装置1に対してデータの書き込みを要求するホスト装置3が接続されている。ストレージ制御装置1とホスト装置3とは、例えばネットワークを介して接続されている。
ストレージ制御装置1は、記憶部1aと制御部1bを有する。ストレージ制御装置2は、記憶部2aと制御部2bを有する。記憶部1a,2aは、RAM(Random Access Memory)などの揮発性記憶装置でもよいし、HDD(Hard Disk Drive)やSSD(Solid State Drive)などの不揮発性記憶装置でもよい。制御部1b,2bは、CPU(Central Processing Unit)、DSP(Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)などを含み得る。制御部1b,2bは、複数のプロセッシング要素を含むマルチプロセッサであってもよい。
ストレージシステムでは、ホスト装置3から書き込みデータを受信したストレージ制御装置1が、書き込みデータを記憶部1aに格納するとともに、ストレージ制御装置2に書き込みデータを格納させ、書き込みデータをバックアップさせる。
ストレージ制御装置1において、記憶部1aは、ホスト装置3から書き込みが要求された書き込みデータを記憶する。なお、記憶部1aは、ホスト装置3からのアクセス対象の記憶装置である。または、記憶部1aとは別の記憶装置がホスト装置3からのアクセス対象であり、記憶部1aは、ホスト装置がアクセス対象の記憶装置にアクセスする際にキャッシュ領域として利用されてもよい。
制御部1bは、ストレージ制御装置2から読み出し要求を受信する。制御部1bは、読み出し要求の受信後にホスト装置3から書き込みデータの書き込み要求を受信する。このとき、制御部1bは、書き込みデータを記憶部1aに書き込むとともに、書き込みデータを読み出し要求に対する応答としてストレージ制御装置2に送信する。制御部1bは、ストレージ制御装置2から書き込みデータの記憶部2aへの書き込み完了通知を受信すると、ホスト装置3に書き込みデータの書き込み完了応答を送信する。
ストレージ制御装置2において、記憶部2aは、ストレージ制御装置1から送信される書き込みデータを格納する。制御部2bは、ストレージ制御装置1に読み出し要求を送信する。この読み出し要求は、特定のデータを指定するものではない。制御部2bは、読み出し要求の送信後にストレージ制御装置1がホスト装置3から書き込みデータの書き込み要求を受信したとき、書き込みデータを読み出し要求に対する応答としてストレージ制御装置1から受信する。制御部2bは、書き込みデータを記憶部2aに書き込み、書き込み完了通知をストレージ制御装置1に送信する。
このようなストレージシステムによれば、ストレージ制御装置1は、ホスト装置3から書き込み要求を受信したとき、あらかじめ受信済みの読み出し要求に対する応答として、ホスト装置3からの書き込みデータをストレージ制御装置2に送信する。これにより、ストレージ制御装置1は、ホスト装置3から書き込み要求を受信した後、ストレージ制御装置2との間で特に通信せずに、書き込みデータをストレージ制御装置2に送信できる。よって、ストレージ制御装置1がホスト装置3から書き込み要求を受信してから、記憶部1a,2aのそれぞれに書き込みデータが書き込まれ、ストレージ制御装置1がホスト装置3に書き込み完了通知を送信するまでの時間が短縮される。
以下、図1を参照しながら具体的な処理例について説明する。制御部2bは、ストレージ制御装置1がホスト装置3から書き込み要求を受信する前に、読み出し要求をストレージ制御装置1に送信する(ステップS1)。制御部1bは、ストレージ制御装置2から読み出し要求を受信する。
読み出し要求を受信した後、制御部1bは、ホスト装置3から書き込み要求を受信する(ステップS2)。制御部1bは、書き込みデータを受信する準備が完了した旨の通知をホスト装置3に通知する(ステップS3)。なお、書き込みデータを受信する準備としては、ストレージ制御装置1内に受信した書き込みデータを一時的に記憶するためのバッファ領域を確保する処理がある。ホスト装置3は、準備が完了した旨の通知を受けると、データXをストレージ制御装置1に送信する(ステップS4)。制御部1bは、データXを受信すると、記憶部1aにデータXを書き込むと共に、読み出し要求に対する応答としてデータXをストレージ制御装置2に送信する(ステップS5)。
制御部2bは、データXを受信すると、データXを記憶部2aに格納する。制御部2bは、ストレージ制御装置1にデータXの記憶部2aへの書き込み完了通知を送信する(ステップS6)。制御部1bは、当該通知を受信すると、ホスト装置3に書き込みデータの書き込み完了応答を送信する(ステップS7)。
ここで、相手装置にデータの書き込みを要求する手順としては、ステップS2〜S4の例のように、相手装置に書き込み要求を送信し、相手装置から書き込みの準備が完了した旨の通知を受けると、相手装置に書き込みデータを送信する、という手順がある。仮に、ストレージ制御装置1が書き込みデータをストレージ制御装置2に送信する際に上記の手順が実行されたとすると、ストレージ制御装置1は、書き込みデータを送信する前に、書き込み要求の送信および準備完了通知の受信という通信を行う必要がある。
これに対して、第1の実施の形態によれば、ストレージ制御装置1がホスト装置3からの書き込み要求を受信する前に、ストレージ制御装置2が先行して読み出し要求をストレージ制御装置1に送信する。そして、ストレージ制御装置1は、ホスト装置3から書き込み要求を受信したとき、受信済みの読み出し要求に対する応答として書き込みデータをストレージ制御装置2に送信する。これにより、ストレージ制御装置1が書き込み要求を受信してから、書き込みデータをストレージ制御装置2に送信するまでの間に、上記のような書き込み要求の送信および準備完了通知の受信という通信を行わなくて済む。そのため、ストレージ制御装置1がホスト装置3から書き込み要求を受信してからホスト装置3に書き込み完了応答を送信するまでに要する時間を短縮することができる。よって、第1の実施の形態によれば、ストレージ制御装置2への書き込みが要求されてから書き込み完了応答をホスト装置3に送信するまでの時間を短縮できる。
なお、ストレージ制御装置1がホスト装置3から受信したデータXは、記憶部1aに書き込まれずに、ストレージ制御装置2の記憶部2aにのみ書き込まれてもよい。このような形態としては、例えば、ストレージ制御装置2の記憶部2aに対する書き込み要求を、ストレージ制御装置2がホスト装置3から受信する形態が考えられる。このようにデータXが記憶部2aにのみ書き込まれる形態にも、上記と同様の処理を適用できる。すなわち、ストレージ制御装置1の制御部1bは、ストレージ制御装置2の制御部2bからあらかじめ読み出し要求を受信し、ホスト装置3からデータXの書き込み要求を受信すると、読み出し要求に対する応答としてデータXをストレージ制御装置2に転送する。そして、制御部1bは、制御部2bからデータXの記憶部2aへの書き込み完了通知を受信したら、ホスト装置3にデータXの書き込み完了応答を送信する。これにより、ストレージ制御装置2への書き込みが要求されてから書き込み完了応答をホスト装置3に送信するまでの時間を短縮できる。
[第2の実施の形態]
図2は、第2の実施の形態のストレージシステムを示す図である。第2の実施の形態のストレージシステムは、ストレージ装置100,200を含む。ストレージ装置100は、ストレージシステムのプライマリとして機能する。ストレージ装置200は、ストレージシステムのセカンダリとして機能する。このストレージシステムでは、予期せぬ災害などに備えて、ストレージ装置100に格納されるデータを遠隔地に配置されているストレージ装置200にバックアップさせることが可能になっている。
ストレージ装置100は、CM(Controller Module)101およびHDD102,102aを有する。ストレージ装置200は、CM201およびHDD202,202aを有する。CM101とCM201との間は、例えば、ファイバチャネル(FC:Fibre Channel)やiSCSI(Internet Small Computer System Interface)などを用いたSAN(Storage Area Network)、あるいは、iSCSIを用いたWAN(Wide Area Network)を介して接続されている。
なお、CM101,201は、それぞれ第1の実施の形態のストレージ制御装置1,2の一例である。また、CM101,201にそれぞれ接続されるHDDの数は、2台に限定されない。また、CM101,201のそれぞれには、複数のHDDが搭載されたディスクアレイ装置が接続されてもよい。
CM101には、ホスト装置300が接続されている。CM101とホスト装置300との間は、例えば、FCを用いたSANを介して接続されている。ホスト装置300は、CM101に対してHDD102,102aへのアクセスを要求する。CM101は、自装置内のRAMをキャッシュ領域として使用しながら、ホスト装置300からの要求に応じたHDD102,102aへのアクセスを制御する。
また、CM101は、キャッシュ領域のデータをCM201に送信してバックアップさせる。具体的には、CM101は、ホスト装置300からデータの書き込み要求を受信すると、書き込みデータをキャッシュ領域に書き込むとともにCM201にも送信する。CM101は、CM201から、CM201のRAM上のキャッシュ領域に対する書き込みデータの書き込みの完了通知を受信した後、ホスト装置300に対して書き込み完了を通知する。
CM201は、CM101から送信されたデータを、自装置内のRAM上のキャッシュ領域にバックアップする。また、CM201は、CM101と同様のキャッシュ制御により、キャッシュ領域内のデータをHDD202,202aに格納することもできる。
図3は、ストレージ装置のCMのハードウェア例を示す図である。CM101は、CPU103、RAM104、SSD105、DI(Drive Interface)106、CA(Channel Adapter)107およびRA(Remote Adapter)108を有する。各ユニットがバスに接続されている。
CPU103は、CM101の情報処理を制御する。CPU103は、複数のプロセッシング要素を含むマルチプロセッサであってもよい。
RAM104は、CM101の主記憶装置である。RAM104は、CPU103に実行させるOS(Operating System)のプログラムやアプリケーションプログラムの少なくとも一部を一時的に記憶する。また、RAM104は、CPU103による処理に用いる各種データを記憶する。
SSD105は、CM101の補助記憶装置である。SSD105は、不揮発性の半導体メモリである。SSD105には、OSのプログラム、アプリケーションプログラム、および各種データが格納される。なお、CM101は、補助記憶装置として、SSD105の代わりにHDDを備えていてもよい。
DI106は、HDD102,102aと通信するためのインタフェースである。CA107は、ホスト装置300と通信するためのインタフェースである。RA108は、ストレージ装置200と通信するためのインタフェースである。
なお、CM201もCM101と同様のハードウェアにより実現できる。
ここで、HDD102,102aのそれぞれの記憶領域は、例えば、RAID(Redundant Arrays of Inexpensive Disks)として管理される。記憶領域には、1つ以上の論理ボリュームが設定され、各論理ボリュームにはLUN(Logical Unit Number)が割り当てられている。ホスト装置300は、LUNおよび当論理ボリュームのLBA(Logical Block Address)を指定してアクセス処理を行う。
また、CM101は、論理ボリュームに対するホスト装置300からの書き込みデータをCM201にバックアップさせる際、書き込み先として当該書き込みデータについて指定されたLUNおよびLBAを指定する。これにより、CM101とCM201において論理ボリュームが二重化される。
次に、CM101のキャッシュ領域のデータをCM201にバックアップするバックアップ処理についての比較例を示し、この比較例における問題点について説明する。図4は、バックアップ処理の比較例を示すシーケンス図である。以下、図4に示す処理をステップ番号に沿って説明する。
(ST101)ホスト装置300は、CM101に書き込み要求を送信する。
(ST102)CM101は、書き込みデータを一時的に記憶するためのバッファ領域をRAM104に確保する。
(ST103)CM101は、書き込み準備が完了した旨をホスト装置300に通知する。
(ST104)ホスト装置300は、書き込みデータをCM101に送信する。
(ST105)CM101は、書き込みデータを受信し、RAM104に確保したバッファ領域に書き込みデータを書き込む。さらに、CM101は、RAM104上のキャッシュ領域における書き込み要求によって指定された記憶領域に、バッファ領域の書き込みデータを書き込む。なお、バッファ領域への書き込みデータの書き込みが完了した時点で、次のステップST106の処理が実行されてもよい。
(ST106)CM101は、書き込み要求をCM201に送信する。
(ST107)CM201は、自装置が有するRAMに書き込みデータを一時的に記憶するためのバッファ領域を確保する。
(ST108)CM201は、書き込み準備が完了した旨をCM101に通知する。
(ST109)CM101は、書き込みデータをCM201に送信する。
(ST110)CM201は、書き込みデータを受信し、自装置が有するRAMに確保したバッファ領域に書き込みデータを書き込む。さらに、CM201は、RAM上のキャッシュ領域における書き込み要求によって指定された記憶領域に、バッファ領域の書き込みデータを書き込む。
(ST111)CM201は、書き込みデータの自装置が有するRAMへの書き込みが完了した旨をCM101に通知する。
(ST112)CM101は、ホスト装置300に書き込み完了の通知を行う。
以上の処理例では、ステップST109で書き込みデータがCM101からCM102に送信される前に、ステップST106,ST108のように、CM101とCM201との間で通信が行われる。このため、ホスト装置300に対する書き込み完了の通知までに時間を要するという問題がある。さらに、CM101とCM201との距離が長ければ長いほど、ホスト装置300に対する書き込み完了の通知までの時間が長くなる可能性がある。
そこで、第2の実施の形態では、CM101がホスト装置300から書き込み要求を受信する前に、CM201が先行して読み出し要求をCM101に送信し、読み出し要求に対する応答として書き込みデータを受信する。これにより、ステップST106,ST108の通信処理を行わなくて済む。そのため、ホスト装置300に対する書き込み完了の通知までに要する時間を短くできる。
図5は、各ストレージ装置のCMの機能例を示す図である。CM101は、記憶部110、アクセス制御部120および監視部130を有する。記憶部110は、バッファ記憶部111、データ格納部112およびテーブル記憶部113を有する。バッファ記憶部111、データ格納部112およびテーブル記憶部113は、RAM104に確保した記憶領域として実装される。
バッファ記憶部111は、書き込みデータを一時的に記憶する。バッファ記憶部111は、アクセス制御部120によって確保されたバッファ領域の集合として実現される。データ格納部112は、ホスト装置300から論理ボリュームへのアクセスの際にキャッシュ領域として使用される。
テーブル記憶部113は、読み出し要求管理テーブルおよび書き込み要求管理テーブルを記憶する。読み出し要求管理テーブルには、CM201から送信された読み出し要求に関する情報が登録される。書き込み要求管理テーブルには、ホスト装置300から受信し、CM201からの読み出し要求の応答として書き込みデータを送信した書き込み要求を示す情報が登録される。
アクセス制御部120および監視部130は、例えば、CM101が有するCPU103として実装される。
アクセス制御部120は、ホスト装置300からのアクセス処理を制御する。例えば、アクセス制御部120は、ホスト装置300から読み出し要求を受信したとき、読み出しが要求されたデータがデータ格納部112に格納されている場合には、そのデータをデータ格納部112から読み出してホスト装置300に送信する。一方、アクセス制御部120は、読み出しが要求されたデータがデータ格納部112に格納されていない場合には、そのデータをHDD102,102aから読み出してデータ格納部112に格納した後、そのデータをホスト装置300に送信する。
また、ホスト装置300から書き込み要求を受信した場合、アクセス制御部120は、バッファ記憶部111に確保したバッファ領域に、ホスト装置300から受信した書き込みデータを一時的に格納する。アクセス制御部120は、バッファ領域から書き込みデータを読み出し、ホスト装置300から指定されたLUNおよびLBAに基づくデータ格納部112の記憶領域に書き込みデータを格納する。また、アクセス制御部120は、ホスト装置300からの書き込み要求の受信時とは非同期のタイミングで、データ格納部112に格納した書き込みデータをHDD102,102aの対応する記憶領域に格納する。
また、アクセス制御部120は、ホスト装置300から書き込み要求を受信したとき、書き込みデータをデータ格納部112に格納するだけでなく、書き込みデータをCM201のキャッシュ領域(後述するデータ格納部212)にバックアップするように制御する。このバックアップ処理を短時間で実現するために、アクセス制御部120は、ホスト装置300から書き込み要求を受信する前に、CM201から読み出し要求を受信する。アクセス制御部120は、ホスト装置300から書き込み要求を受信したとき、受信済みの読み出し要求の応答として書き込みデータをCM201に送信する。また、アクセス制御部120は、CM201からキャッシュ領域への書き込みデータの書き込みが完了した旨の通知を受信した場合、ホスト装置300に書き込み完了通知を送信する。
監視部130は、CM201から読み出し要求を受信した場合、受信した時刻から一定時間内に読み出し要求に対応する応答ができるか否かを監視する。
CM201は、記憶部210、発行制御部220および書き込み制御部230を有する。記憶部210は、バッファ記憶部211、データ格納部212およびテーブル記憶部213を有する。バッファ記憶部211、データ格納部212およびテーブル記憶部213は、CM201が有するRAMに確保した記憶領域として実装される。
バッファ記憶部211は、CM101から受信した書き込みデータを一時的に記憶する。バッファ記憶部211は、アクセス制御部120によって確保されたバッファ領域の集合として実現される。このため、バッファ記憶部211の容量は確保されたバッファ領域の数や各バッファ領域のサイズに応じて変化する。データ格納部212は、CM101のデータ格納部112に記憶されたデータに対応するバックアップデータを記憶する。
テーブル記憶部213は、要求テーブルおよび統計テーブルを記憶する。要求テーブルには、読み出し要求に関する情報が登録される。統計テーブルには、書き込み制御部230が所定時間内に読み出し要求に対する応答を受信した数などを示す情報が登録される。
発行制御部220および書き込み制御部230は、例えば、CM201が有するCPUとして実装される。発行制御部220および書き込み制御部230は、CM101のデータ格納部112に記憶されたデータのバックアップのための処理を実行する。
発行制御部220は、読み出し要求に対する応答としてストレージ装置100から送信される書き込みデータを格納するためのバッファ領域をバッファ記憶部211に確保する。CM201からCM101へは複数の読み出し要求が送信され、発行制御部220は、送信された各読み出し要求に対応するバッファ領域を確保する。これらの複数のバッファ領域には、サイズが異なるものが含まれる。また、発行制御部220は、CM101に送信する読み出し要求の数や、各読み出し要求に割り当てるバッファ領域のサイズを調整する。
書き込み制御部230は、ストレージ装置100に読み出し要求を送信する。この読み出し要求は、特定のデータを指定するものではない。この読み出し要求は、データサイズの指定を含むものである。すなわち、書き込み制御部230は、発行制御部220がバッファ記憶部211に確保したバッファ領域のサイズ以内のデータを要求するための読み出し要求をストレージ装置100に送信する。
書き込み制御部230は、CM101から読み出し要求の応答として、ホスト装置300から書き込みが要求された書き込みデータを受信した場合、書き込みデータを対応するバッファ領域に一時的に格納した後、その書き込みデータをデータ格納部212に書き込む。そして、書き込み制御部230は、書き込みデータの書き込みが完了した旨の通知をCM101に送信する。
ここで、書き込み制御部230が読み出し要求をストレージ装置100に送信してから書き込みデータを受信し、バッファ記憶部211に格納するまでを簡単に説明する。
発行制御部220は、バッファ記憶部211に複数のバッファ領域を確保する。これらの複数のバッファ領域には、サイズが異なるものが含まれる。書き込み制御部230は、発行制御部220が確保したバッファ領域にそれぞれ対応する読み出し要求をCM101に送信する。アクセス制御部120は、ホスト装置300から書き込み要求を受信すると、CM201から受信済みの複数の読み出し要求の中から書き込み要求で指定されたデータサイズに合う読み出し要求を特定する。アクセス制御部120は、特定した読み出し要求に対する応答として、ホスト装置300から受信した書き込みデータをCM201に送信する。書き込み制御部230は、アクセス制御部120が特定した読み出し要求に対して割り当てられていたバッファ領域に書き込みデータを一時的に格納した後、当該データをデータ格納部212に格納する。
図6は、CM間の通信で使用される情報を示す図である。ここでは、CM101とCM201との間がFCを用いたSANを介して接続される場合の例を示す。
図6(A)は、書き込み制御部230が生成する読み出し要求のパケットを示す図である。例えば、この読み出し要求は、後述する図10のステップST122の読み出し要求である。読み出し要求のパケットには、FCパケット識別子、SCSIコマンド識別子、CDB(Command Descriptor Block)の項目が含まれる。FCパケット識別子には、FCパケットを識別する情報が登録される。SCSIコマンド識別子には、SCSIコマンドを識別する情報として、CDBの送信を示す情報が登録される。CDBには、コマンドコード、要求サイズなどの項目が含まれる。コマンドコードには、ストレージ装置100がホスト装置300から書き込み要求を受信する前の先行の読み出し要求であることを示すコード名が登録される。要求サイズには、当該読み出し要求に対してバッファ記憶部211に確保されたバッファ領域のサイズを示す情報が登録される。
図6(B)は、読み出し要求に対する応答として、ストレージ装置200に送信される応答パケットを示す図である。応答パケットには、FCパケット識別子、SCSIコマンド識別子、データ領域が含まれる。
FCパケット識別子には、FCパケットを識別する情報が登録される。SCSIコマンド識別子には、SCSIコマンドを識別する情報として、読み出しが要求されたデータを含むことを示す情報が登録される。
データ領域には、データ格納部212へ転送する実データにヘッダ情報が付加される。ヘッダ情報には、LUN、開始LBA、ブロック数、転送ID(identifier)の項目が含まれる。LUN、開始LBAおよびブロック数は、データ格納部212における書き込み先論理アドレスを示す。すなわち、LUNには、書き込み先として指定されたLUNが登録される。開始LBAには、指定されたLUNにおける書き込み開始位置を示すLBAが登録される。ブロック数には、書き込み先領域に含まれる論理ブロックの数が登録される。この論理ブロックの数とは、データ格納部212に格納されるデータサイズを示す。転送IDには、当該応答パケットの送信処理に対してCM101が任意で割り当てた識別子が登録される。
図6(C)は、書き込み制御部230が生成する書き込み完了通知のパケットを示す図である。例えば、この書き込み完了通知は、後述する図10のステップST131の書き込み完了通知である。書き込み完了通知には、FCパケット識別子、SCSIコマンド識別子、CDBの項目が含まれる。FCパケット識別子には、FCパケットを識別する情報が登録される。SCSIコマンド識別子には、SCSIコマンドを識別する情報として、CDBの送信を示す情報が登録される。CDBには、コマンドコード、転送IDなどの項目が含まれる。コマンドコードには、図6(B)の応答パケットの受信に応じてデータをデータ格納部212に書き込み、その書き込みが完了したことを示すコード名が登録される。転送IDには、対応する応答パケットのヘッダ情報に登録された転送IDが登録される。
図7は、要求テーブルの例を示す図である。要求テーブル214は、テーブル記憶部213に格納される。要求テーブル214は、識別番号、カテゴリ、サイズ範囲の項目を含む。
識別番号の項目には、書き込み制御部230がCM101に送信した読み出し要求を識別する識別子が登録される。この識別子には、図6(A)のSCSIコマンド識別子が登録される。カテゴリの項目には、読み出し要求に対する応答として送信されるデータサイズに関するカテゴリを示す情報が登録される。この情報は、読み出し要求に対する応答として送信可能なデータサイズの上限を示し、読み出し要求に対して割り当てられたバッファ領域のサイズを示す。サイズ範囲の項目には、カテゴリに対応するデータサイズの範囲を示す情報が登録される。また、サイズ範囲に示されている“S”は、サイズを示している。また、他のテーブルのサイズ範囲の項目の“S”も同様にサイズを示している。
例えば、要求テーブル214には、識別番号が“R9”、カテゴリが“4KB”、サイズ範囲が“1KB<S≦4KB”という情報が登録される。これは、識別番号“R9”の読み出し要求に対する応答としてCM101から4KBを上限とするデータの受信が可能であることを示す。また、バッファ領域の無駄な領域が大きくなることを防ぐために、この読み出し要求に対する応答により送信されるデータのサイズは1KBより大きいことが望ましいことを示す。
図8は、統計テーブルの例を示す図である。統計テーブル215は、テーブル記憶部213に格納される。統計テーブル215は、カテゴリ、サイズ範囲、統計個数、最適確保数の項目を含む。
カテゴリの項目には、カテゴリを示す情報が登録される。サイズ範囲の項目には、カテゴリに対応するデータサイズの範囲を示す情報が登録される。統計個数の項目には、書き込み制御部230が一定の収集期間内に、CM101がホスト装置300から受信し、CM101からCM201に送信された書き込みデータの数を示す情報が登録される。収集期間の時間とは、例えば、1分である。なお、統計個数がカウントアップされる条件には、CM201からの読み出し要求の応答として書き込みデータがCM101から送信された場合と、CM101から書き込み要求によって書き込みデータが送信された場合とが含まれる。最適確保数の項目には、発行制御部220がカテゴリに対応するサイズのバッファ領域をバッファ記憶部211に確保すべき数を示す情報が登録される。
統計個数は、収集期間が終了するごとに“0”にリセットされる。また、収集期間が終了したとき、その時点での統計個数に基づいて、次の収集期間に確保すべきバッファ領域の最適数がカテゴリごとに計算され、計算結果によって統計テーブル215の最適確保数が更新される。
図9は、読み出し要求管理テーブルの例を示す図である。読み出し要求管理テーブル114は、テーブル記憶部113に格納される。読み出し要求管理テーブル114は、識別番号、カテゴリ、サイズ範囲、受信時刻の項目を含む。
識別番号の項目には、読み出し要求を識別する識別子が登録される。また、この識別子には、例えば、図6(A)のSCSIコマンド識別子が登録される。識別番号の項目に登録される識別子は、CM201から受信済みで、かつ、応答を行っていない読み出し要求を示す。カテゴリの項目には、カテゴリを示す情報が登録される。サイズ範囲の項目には、カテゴリに対応するデータサイズの範囲を示す情報が登録される。受信時刻の項目には、アクセス制御部120が読み出し要求を受信した時刻が登録される。
図10は、第2の実施の形態のバックアップ処理を示すシーケンス図である。詳細な処理は図11〜15で説明し、図10ではCM101,201、ホスト装置300の装置間における通信の概略的な処理の流れを説明する。以下、図10に示す処理をステップ番号に沿って説明する。
(ST121)CM201は、バッファ記憶部211に所定サイズのバッファ領域を確保する。
(ST122)CM201は、ステップST121で確保したバッファ領域が割り当てられた読み出し要求をCM101に送信する。
(ST123)CM101は、ホスト装置300から書き込み要求が送信されるのを待つ。なお、図10では、説明を簡単にするために、次のステップS124の前にCM201から読み出し要求が1回だけ送信されたものとする。
(ST124)ホスト装置300は、CM101に書き込み要求を送信する。
(ST125)CM101は、バッファ記憶部111に書き込みデータを書き込むためのバッファ領域を確保する。
(ST126)CM101は、書き込み準備が完了した旨をホスト装置300に通知する。
(ST127)ホスト装置300は、書き込みデータをCM101に送信する。
(ST128)CM101は、書き込みデータを受信し、バッファ記憶部111に確保されたバッファ領域に書き込みデータを書き込む。また、CM101は、バッファ領域に書き込まれた書き込みデータをデータ格納部112に格納する。
(ST129)CM101は、読み出し要求の応答として、バッファ領域に書き込まれた書き込みデータをCM201に送信する。
(ST130)CM201は、書き込みデータを受信し、読み出し要求に対して割当てられていたバッファ領域に書き込みデータを書き込む。CM201は、バッファ領域に書き込まれた書き込みデータをデータ格納部212に格納する。
(ST131)CM201は、CM101に書き込み完了通知を送信する。
(ST132)CM101は、ホスト装置300に書き込み完了通知を送信する。
(ST133)CM101は、ステップST131の書き込み完了通知に対する応答をCM201に送信する。
以上の図10の処理によれば、CM101は、ホスト装置300から書き込み要求を受信する前に、CM201から先行して送信された読み出し要求を受信する。そして、CM101は、ホスト装置300から書き込み要求を受信すると、CM201から受信済みの読み出し要求に対する応答として、ホスト装置300からの書き込みデータをCM201に送信し、CM201のデータ格納部112にバックアップさせる。これにより、CM101は、ホスト装置300から書き込み要求を受信した後に、図4のステップST106,ST108のような通信を行わずに、書き込みデータをCM201へ送信できる。そのため、ホスト装置300に対する書き込み完了の通知までに要する時間を短くできる。
次に、CM201における処理の詳細についてフローチャートを用いて説明する。
まず、図11は、読み出し要求の送信処理の例を示すフローチャートである。以下、図11に示す処理をステップ番号に沿って説明する。また、後述するバッファ領域の確保および統計テーブル215の更新などの処理は、統計テーブル215の全てのカテゴリに対して行われるものとする。
(S11)発行制御部220は、統計テーブル215の各カテゴリに対応する最適確保数の項目に、予め決められた初期値を登録する。発行制御部220は、各カテゴリに対応するサイズのバッファ領域を、登録した最適確保数の分だけバッファ記憶部211に確保する。例えば、発行制御部220は、統計テーブル215のカテゴリ“64KB”に対応する最適確保数として“4”を登録した場合、64KBのバッファ領域を4つ確保する。
発行制御部220は、バッファ領域の確保が完了した旨を書き込み制御部230に通知し、読み出し要求の送信を依頼する。また、発行制御部220は、統計テーブル215の各カテゴリに対応する統計個数の値をすべて“0”にリセットする。
(S12)書き込み制御部230は、ステップS11で発行制御部220がバッファ記憶部211に確保したバッファ領域にそれぞれ対応する読み出し要求をCM101に送信する。例えば、統計テーブル215のカテゴリ“64KB”に対応する最適確保数が“4”の場合、書き込み制御部230は、CDBの要求サイズの項目に“64KB”を登録した読み出し要求のパケットを4つ、CM101に送信する。読み出し要求の要求サイズには、発行制御部220が割り当てたデータサイズが登録される。例えば、読み出し要求の要求サイズには、“64KB”が登録される。
書き込み制御部230は、送信した読み出し要求に関する情報を要求テーブル214に登録する。具体的には、要求テーブル214の識別番号には、SCSIコマンド識別子が登録される。要求テーブル214のカテゴリには、読み出し要求の要求サイズが登録される。要求テーブル214のサイズ範囲には、読み出し要求の要求サイズに対応するデータサイズの範囲が登録される。
(S13)書き込み制御部230は、CM201の動作を終了するかを判定する。例えば、CM201の電源をオフにする指示を受けた場合に、動作を終了すると判定する。動作を終了すると判定された場合、図11の処理は終了される。一方、ステップS12またはステップS19の実行、もしくはステップS16で“Yes”と判定されてから一定時間内に動作を終了すると判定されなかった場合、書き込み制御部230は、発行制御部220に統計テーブル215の最適確保数を更新するように指示する。そして、処理をステップS14に進める。これにより、ステップS14の処理は、一定時間間隔で、すなわち統計個数を収集するための一定の収集期間が終了するたびに実行される。なお、一定時間とは、例えば1分である。
(S14)発行制御部220は、統計テーブル215の統計個数を参照して、カテゴリ毎に最適確保数の計算を行う。最適確保数は、“全体係数×(1つのカテゴリの統計個数/全カテゴリの統計個数の合計)”という式により算出される。全体係数は、0以上の整数である。また、全体係数は、“全体係数×1MB(最大のカテゴリ)”がバッファ記憶部211として確保可能な最大容量を超えないように算出される。計算した結果、小数点以下の数を含む場合、小数点以下第1位の値を四捨五入してもよい。
なお、あるカテゴリの最適確保数の計算値が1未満になった場合でも、次のステップS15で統計テーブル215に登録する最適確保数を1以上の所定数とすることが望ましい。これにより、直前の収集期間にそのカテゴリに対応する書き込み要求がホスト装置300から要求されなかった場合でも、次の収集期間にそのカテゴリに対応する書き込み要求がホスト装置300から要求されたときに、最適な読み出し要求を選択することができる。
(S15)発行制御部220は、ステップS14で計算したカテゴリごとの最適確保数を統計テーブル215に登録する。発行制御部220は、統計テーブル215の全てのカテゴリの統計個数を“0”にリセットにする。また、発行制御部220は、カテゴリ毎に更新前の統計テーブル215の最適確保数の情報を記憶部210に一時的に格納する。
(S16)発行制御部220は、カテゴリ毎に統計テーブル215の更新前の最適確保数とステップS16で更新した更新後の最適確保数とを比較する。全カテゴリについて、更新後の最適確保数が更新前の最適確保数以下である場合、バッファ領域の確保数は足りている。この場合、処理をステップS13に進める。一方、更新後の最適確保数の方が多いカテゴリが1つでも存在している場合、処理をステップS17に進める。
(S17)発行制御部220は、更新後の最適確保数の方が多いカテゴリについて、差分に対応する数のバッファ領域をバッファ記憶部211に確保する。例えば、更新後のカテゴリ“1KB”の最適確保数が8個、更新前のカテゴリ“1KB”の最適確保数が7個の場合、発行制御部220は、1KBのバッファ領域を1つ新たに確保する。
発行制御部220は、書き込み制御部230に新たに確保したバッファ領域に関する情報を通知して、読み出し要求の送信を依頼する。
(S18)書き込み制御部230は、ステップS17で発行制御部220が新たに確保したバッファ領域のそれぞれに対応する読み出し要求を、CM101に送信する。例えば、1KBのバッファ領域が新たに1つ確保された場合、書き込み制御部230は、CDBの要求サイズの項目に“1KB”を登録した読み出し要求のパケットを1つ、CM101に送信する。
(S19)書き込み制御部230は、ステップS18で送信した読み出し要求に関する情報を要求テーブル214に登録する。そして、処理をステップS13に進める。
図12は、読み出し要求に対する応答の受信処理の例を示すフローチャートである。以下、図12に示す処理をステップ番号に沿って説明する。
(S21)書き込み制御部230は、読み出し要求に対する応答を受信する。
(S22)書き込み制御部230は、読み出し要求に対する応答のデータ領域を参照し、ヘッダ情報のブロック数を確認する。ブロック数が0の場合、書き込み制御部230は、受信した読み出し要求に対してバッファ記憶部211に割当てていた記憶領域を解放する。そして、処理をステップS26に進める。ブロック数が0でない場合、処理をステップS23に進める。
(S23)書き込み制御部230は、読み出し要求に対して割当てられていたバッファ記憶部211のバッファ領域に、応答パケットに含まれていた書き込みデータを格納する。例えば、4KBのバッファ領域を確保し、要求サイズ“4KB”の読み出し要求をしている場合、書き込み制御部230は、その読み出し要求の応答として4KB以下の書き込みデータを受信する。なお、この場合は通常、1KBより大きく4KB以下の書き込みデータを受信する。書き込み制御部230は、受信した書き込みデータを4KBのバッファ領域に格納する。
書き込み制御部230は、バッファ領域に書き込んだ書き込みデータをデータ格納部212に書き込む。データ格納部212における書き込みデータの書き込み位置は、ヘッダ情報のLUNおよび開始LBAに基づいて決定される。
(S24)書き込み制御部230は、書き込み完了通知を、図6(C)のようなパケットとしてCM101に送信する。書き込み完了通知の転送IDには、書き込みデータに付加されたヘッダ情報の転送IDが登録される。これにより、書き込み完了通知を受信したCM101は、書き込み完了通知の転送IDと後述するステップS49で設定する転送IDとを比較することで、どの書き込みデータに対する書き込み完了通知であるかを確認することができる。
その後、書き込み制御部230は、書き込み完了通知に対する応答の通知をCM101から受信する。なお、次のステップS25の処理は、書き込み完了通知を送信してから、その応答の通知をCM101から受信する前に実行されてもよい。
(S25)書き込み制御部230は、受信した書き込みデータのデータサイズから統計テーブル215のカテゴリを特定する。書き込み制御部230は、特定したカテゴリに対応する統計個数をインクリメントする。例えば、書き込みデータが3KBの場合、統計テーブル215を参照すると、3KBは、カテゴリ“4KB(1KB<S≦4KB)”に属する。そのため、書き込み制御部230は、カテゴリ“4KB”を特定する。書き込み制御部230は、カテゴリ“4KB”に対応する統計個数をインクリメントする。
(S26)書き込み制御部230は、読み出し要求に対する応答に含まれていたSCSIコマンド識別子に基づいて、要求テーブル214に登録された識別番号の中から、受信した応答に対応する読み出し要求を示す識別番号を特定する。書き込み制御部230は、特定した識別番号に対応付けられたカテゴリの情報を記憶部210に格納する。書き込み制御部230は、特定した識別番号に対応するレコードを要求テーブル214から削除する。これにより、対応するバッファ領域が解放される。書き込み制御部230は、発行制御部220に新たにバッファ領域を確保するかを判定するように指示する。
(S27)発行制御部220は、ステップS26で記憶部210に格納したカテゴリの情報を取得する。発行制御部220は、統計テーブル215を参照し、取得したカテゴリに対応する最適確保数を特定する。発行制御部220は、要求テーブル214のカテゴリを参照し、取得したカテゴリと同じカテゴリの登録数を検出する。検出された登録数は、現在確保されているバッファ領域のうち、該当カテゴリに対応するバッファ領域の数を示す。発行制御部220は、要求テーブル214から検出した登録数が統計テーブル215の最適確保数以上であるか否かを判定する。検出した登録数が最適確保数以上の場合、処理を終了する。検出した登録数が最適確保数より少ない場合、発行制御部220は、差分を算出する。そして、処理をステップS28に進める。
(S28)発行制御部220は、ステップS27で算出した差分に対応する数のバッファ領域をバッファ記憶部211に確保する。例えば、ステップS27で、カテゴリ“4KB”について検出された登録数が最適確保数より“2”少ない場合、発行制御部220は、4KBのバッファ領域を2つ新たに確保する。発行制御部220は、書き込み制御部230に新たに確保したバッファ領域に関する情報を通知して、読み出し要求の送信を依頼する。
(S29)書き込み制御部230は、ステップS28で発行制御部220が新たに確保したバッファ領域のそれぞれに対応する読み出し要求を、CM101に送信する。
(S30)書き込み制御部230は、ステップS29で送信した読み出し要求に関する情報を要求テーブル214に登録する。そして、処理を終了する。
なお、ステップS26では、確保されていたバッファ領域が1つ解放され、現在のバッファ領域の確保数が1だけ減少する。ここで、ステップS27で“Yes”と判定された場合には、新たなバッファ領域が確保されない。すなわち、ステップS27で“Yes”と判定されるケースとは、図12の処理の開始時点において該当カテゴリに対応するバッファ領域の確保数が多過ぎるケースである。このため、新たなバッファ領域が確保されないことで、図12の処理の開始時点と比較して該当カテゴリに対応するバッファ領域の確保数が1だけ減少する。
次に、CM101における処理の詳細についてフローチャートを用いて説明する。
まず、図13は、読み出し要求の受信処理の例を示すフローチャートである。図13の処理は、CM101がCM201から読み出し要求を受信するたびに実行される。以下、図13に示す処理をステップ番号に沿って説明する。
(S31)アクセス制御部120は、CM201から読み出し要求を受信する。アクセス制御部120は、読み出し要求管理テーブル114に読み出し要求に関する情報を登録する。識別番号には、読み出し要求のSCSIコマンド識別子が登録される。カテゴリには、読み出し要求の要求サイズが登録される。サイズ範囲には、読み出し要求の要求サイズに対応するデータサイズの範囲が登録される。受信時刻には、アクセス制御部120が読み出し要求を受信した時刻が登録される。
アクセス制御部120は、タイマ監視するように監視部130に指示する。
(S32)監視部130は、タイマのカウントを開始する。
(S33)監視部130は、受信した読み出し要求に対応するタイマキャンセル要求をアクセス制御部120から受信したか否かを判定する。タイマキャンセル要求は、ホスト装置300から書き込み要求を受信し、読み出し要求に対応するバッファの使用を決定した時に受信される。なお、ステップS31で受信した読み出し要求に対応するタイマキャンセル要求であることは、ステップS31で読み出し要求管理テーブル114に登録した識別番号と同じ識別番号がアクセス制御部120から通知されることで判定される。タイマキャンセル要求を受信した場合、処理を終了する。これにより、該当読み出し要求に対応するタイマカウント処理が終了する。受信していない場合、処理をステップS34に進める。
(S34)監視部130は、ステップS31の受信時刻とタイマのカウント値との差分が所定値以上になったか、すなわち、受信時刻から所定時間以上経過したかを判定する。所定時間以上経過した場合、タイムアウトが発生したと判定し、処理をステップS35に進める。所定時間経過していない場合、処理をステップS33に進める。
(S35)監視部130は、受信した読み出し要求に対応する応答に含めるヘッダ情報を生成する。監視部130は、ヘッダ情報のLUN番号、開始LBA、ブロック数、転送IDに0(ゼロ)を設定する。
(S36)監視部130は、ステップS35で生成したヘッダ情報を含む読み出し要求の応答をCM201に送信する。この応答は、図6(B)のような応答パケットとして送信される。ただし、データの項目には、何も格納されないか、またはパディングデータが格納される。
(S37)監視部130は、読み出し要求管理テーブル114からステップS31で登録した識別番号を含むレコードを削除する。そして、処理を終了する。
上記のステップS32〜S37の処理によれば、受信した読み出し要求に対応する応答が一定時間以上CM101から送信されなかった場合に、実データを含まない応答がCM101からCM201へ送信される。これにより、その読み出し要求のセッションを正常に終了させることができ、CM201で送信要求に対するタイムアウトによるエラーを発生させずにバックアップ処理を継続させることができる。
図14は、書き込み要求受信処理の例(その1)を示すフローチャートである。以下、図14に示す処理をステップ番号に沿って説明する。
(S41)アクセス制御部120は、ホスト装置300から書き込み要求を受信する。書き込み要求には、書き込み要求に対応する書き込みデータのデータサイズを示す情報が含まれている。
(S42)アクセス制御部120は、読み出し要求管理テーブル114のサイズ範囲を参照し、書き込み要求が示すデータサイズに該当するサイズ範囲に対応する読み出し要求(識別番号)が存在するか否かを判定する。例えば、書き込み要求が示すデータサイズが0.7KBの場合、読み出し要求管理テーブル114のサイズ範囲を参照すると、0.7KBはサイズ範囲“S≦1KB”に該当する。そのため、アクセス制御部120は、サイズ範囲“S≦1KB”に対応する識別番号を特定する。
書き込み要求が示すデータサイズに対応する読み出し要求が存在する場合、アクセス制御部120は、識別番号を特定する。そして、処理をステップS44に進める。書き込み要求が示すデータサイズに対応する読み出し要求が存在しない場合、処理をステップS43に進める。
(S43)アクセス制御部120は、図4のステップST102〜ST105と同様の手順でホスト装置300から書き込みデータを受信してデータ格納部112に格納する。さらに、アクセス制御部120は、図4のステップST106〜S112と同様の手順で、書き込み要求によるCM201へのデータ送信を行う。そして、処理を終了する。
(S44)アクセス制御部120は、タイマキャンセル要求を、ステップS42で特定した識別番号とともに監視部130に通知する。
(S45)アクセス制御部120は、読み出し要求管理テーブル114からステップS42で特定した識別番号を含むレコードを削除する。
(S46)アクセス制御部120は、バッファ記憶部111に書き込みデータを格納するためのバッファ領域を確保する。
(S47)アクセス制御部120は、書き込み準備が完了した旨をホスト装置300に通知する。
(S48)アクセス制御部120は、ホスト装置300から書き込みデータを受信する。アクセス制御部120は、バッファ記憶部111に確保したバッファ領域に書き込みデータを書き込む。その後、アクセス制御部120は、バッファ領域に書き込んだ書き込みデータをデータ格納部112に書き込む。データ格納部112への書き込み位置は、ステップS41で受信した書き込み要求に含まれるLUN、開始LBAおよびブロック数に基づいて決定される。
(S49)アクセス制御部120は、読み出し要求に対する応答に含めるヘッダ情報を生成する。アクセス制御部120は、ヘッダ情報のLUN番号、開始LBA、ブロック数に、ステップS41で受信した書き込み要求に含まれるLUN、開始LBAおよびブロック数を設定する。また、アクセス制御部120は、ステップS41で受信した書き込み要求を示す転送IDを生成し、生成した転送IDをヘッダ情報の転送IDに設定する。転送IDは、例えば、ステップS41で受信した書き込み要求パケットのパケット識別子とされてもよい。
アクセス制御部120は、ヘッダ情報を付加した書き込みデータを、図6(B)のような応答パケットとしてCM201に送信する。そして、処理をステップS51に進める。
図15は、書き込み要求受信処理の例(その2)を示すフローチャートである。以下、図15に示す処理をステップ番号に沿って説明する。
(S51)アクセス制御部120は、タイマのカウントを開始する。
(S52)アクセス制御部120は、CM201からの書き込み完了通知のうち、ステップS49でヘッダ情報に設定した転送IDがCDBに設定されている書き込み完了通知を監視する。アクセス制御部120は、所定時間内にCM201から該当する書き込み完了通知を受信したか否かを判定する。受信した場合、処理をステップS54に進める。受信しなかった場合、処理をステップS53に進める。
(S53)アクセス制御部120は、ステップS41の書き込み要求に対応する処理が正常に完了できなかったことを示すエラー通知をホスト装置300に送信する。そして、処理を終了する。
(S54)アクセス制御部120は、ステップS41の書き込み要求に対応する処理が正常に完了したことを示す書き込み完了通知をホスト装置300に送信する。
(S55)アクセス制御部120は、ステップS52でCM201から受信した該当する書き込み完了通知に対する応答をCM201に送信する。そして、処理を終了する。
以上の図14〜15の処理では、ステップS49において書き込みデータにヘッダ情報が付加されることで、CM201の書き込み制御部230は、先行して読み出し要求を送信しても、ヘッダ情報を参照することで書き込みデータの書き込み先を認識することができる。
また、ステップS49で送信される応答と、ステップS52で受信される書き込み完了通知とは別セッションの通信で送受信される。このため、アクセス制御部120は、CM201から送信される書き込み完了通知が、どの書き込みデータに対応するものなのかを判別できない。これに対し、ステップS49でヘッダ情報に転送IDが付加され、その転送IDが書き込み完了通知に設定されることで、アクセス制御部120は、CM201から受信した書き込み完了通知がどの書き込みデータに対応するものなのかを判別できる。これにより、ステップS55で正しい書き込み要求に対応する書き込み完了通知をホスト装置300に確実に送信できる。
第2の実施の形態では、複数のバッファ領域がCM201に確保され、それらのバッファ領域に対応する読み出し要求がCM101に先行して送信される。これにより、CM101は、ホスト装置300から連続して書き込み要求を受信した場合でも、CM201から新たな読み出し要求が送信されるのを待たずに、受信済みの読み出し要求の中から選択したものに対する応答として書き込みデータをCM201に送信できる確率が高くなる。よって、ホスト装置300に対する応答性能を向上させることができる。
また、第2の実施の形態では、CM201は、サイズの異なるバッファ領域をCM201に確保し、それらのバッファ領域に対応する読み出し要求をCM101に先行して送信する。そして、CM101は、受信済みの読み出し要求の中から、書き込みデータのサイズに近いバッファ領域が割り当てられた読み出し要求を選択して、その応答として書き込みデータを送信する。これにより、CM201において余分なバッファ領域が確保されにくくなる。例えば、64KBのバッファ領域に8KBの書き込みデータが書き込まれた場合、56KBのバッファ領域が余分であったことになる。一方、64KBのバッファ領域だけでなく、8KBのバッファ領域も確保されていることで、8KBの書き込みデータを受信した場合に、その書き込みデータを8KBのバッファ領域に書き込むことができる。
さらに、CM201は、図11,12に示した処理により、バッファ領域の確保数や、確保する各バッファ領域のサイズを、直前の収集期間におけるホスト装置300からの書き込み要求の履歴に基づいて最適化することができる。ここで、図16を用いて、バッファ領域確保の最適化の例について説明する。
図16は、バッファ領域確保の最適化処理の具体例を示す図である。図16(A)の統計テーブル215aは、ある収集期間が終了した時点での統計テーブル215の例を示す。例えば、統計テーブル215aでは、カテゴリ“4KB”に対応する統計個数の項目は、書き込み制御部230が1分間にカテゴリ“4KB”に属する書き込みデータを40個受信したことを示している。
発行制御部220は、書き込み制御部230から統計テーブル215の最適確保数を更新するように指示を受けて、最適確保数の更新処理を行う。最適確保数は、“全体係数×(1つのカテゴリの統計個数/全カテゴリの統計個数の合計)”という式により算出される。例えば、図16(A)においてカテゴリ“4KB”に対応する最適確保数の更新を考える。全体係数を48とする。上記式を用いると48×(40/420)≒4.57となる。4.57を小数点第1の位を四捨五入すると5になる。発行制御部220は、カテゴリ“4KB”に対応する最適確保数を5に更新する。発行制御部220は、同様に全てのカテゴリに対しても割当て数の更新処理を行う。
また、計算した結果が0(ゼロ)の場合は、最適確保数を1にすることが望ましい。例えば、図16(A)においてカテゴリ“256KB”に対応する最適確保数の更新を考える。全体係数を48とする。上記式を用いると48×(0/420)=0となる。発行制御部220は、カテゴリ“256KB”に対応する最適確保数を1に更新する。
発行制御部220は、全てのカテゴリに対する割当て数の更新が終了したら、統計テーブル215の全てのカテゴリの統計個数を0(ゼロ)にする。図16(B)の統計テーブル215bは、全てのカテゴリに対して最適確保数の更新を行った後の状態を示している。
ここで、統計テーブル215aを参照すると、1MBのカテゴリに属する書き込みデータの受信数は少ない。受信数が少ないのであれば1分経過後も同様に、受信数は少ないと推測できる。1MBのバッファ領域の確保数を調整しないと、受信しないであろう書き込みデータのために余分な1MBのバッファ領域が確保されたままになることになる。一方、16KBのカテゴリに属する書き込みデータの受信数は多いので、1分経過後も同様に、受信数は多いと推測できる。16KBのバッファ領域の確保数を調整しないと、確保された数以上の大量の書き込みデータを受信した場合には、いくつかの書き込みデータをCM101からの書き込み要求によってCM201に書き込まざるを得なくなり、ホスト応答性能が低下してしまう。
そこで、上記のように最適確保数を調整することで、時間の経過と共に変化する各カテゴリの統計個数に応じた適切な数およびサイズのバッファ領域を確保できるようになる。
なお、各実施の形態は、矛盾のない範囲で複数の実施の形態を組み合わせて実施することができる。
1,2 ストレージ制御装置
1a,2a 記憶部
1b,2b 制御部
3 ホスト装置
S1,S2,S3,S4,S5,S6,S7 ステップ

Claims (8)

  1. 記憶部を備える他のストレージ制御装置から読み出し要求を受信し、前記読み出し要求の受信後にホスト装置から書き込みデータの書き込み要求を受信すると、前記書き込みデータを前記読み出し要求に対する応答として前記他のストレージ制御装置に送信し、前記他のストレージ制御装置から前記書き込みデータの前記記憶部への書き込み完了通知を受信すると、前記ホスト装置に前記書き込みデータの書き込み完了応答を送信する制御部と、
    を有するストレージ制御装置。
  2. 前記制御部は、
    前記書き込みデータを前記他のストレージ制御装置に送信する際に、当該送信処理を識別する識別情報を前記書き込みデータに付加し、
    前記他のストレージ制御装置から前記識別情報を含む前記書き込み完了通知を受信すると、前記ホスト装置に前記書き込み完了応答を送信する、
    請求項1記載のストレージ制御装置。
  3. 前記他のストレージ制御装置には、前記ストレージ制御装置からの受信データを一時的に記憶する複数のバッファ領域が確保され、前記複数のバッファ領域はそれぞれ異なるサイズを有し、
    前記制御部は、前記他のストレージ制御装置から、前記複数のバッファ領域がそれぞれ割り当てられた複数の読み出し要求を受信し、前記ホスト装置から前記書き込み要求を受信すると、前記複数の読み出し要求の中から、前記書き込みデータのサイズ以下であり、かつ、前記書き込みデータのサイズに最も近いサイズのバッファ領域が対応付けられた選択読み出し要求を選択し、前記選択読み出し要求に対する応答として前記書き込みデータを前記他のストレージ制御装置に送信する、
    請求項1または2記載のストレージ制御装置。
  4. ホスト装置からの書き込みデータが他のストレージ制御装置を経由して転送されるストレージ制御装置において、
    記憶部と、
    前記他のストレージ制御装置に読み出し要求を送信し、前記読み出し要求の送信後に前記他のストレージ制御装置が前記ホスト装置から受信した書き込みデータを前記読み出し要求に対する応答として前記他のストレージ制御装置から受信し、前記書き込みデータを前記記憶部に書き込む制御部と、
    を有するストレージ制御装置。
  5. 前記他のストレージ制御装置から転送された前記書き込みデータには、当該送信処理を識別する識別情報が付加されており、
    前記制御部は、前記書き込みデータの前記記憶部への書き込みが完了すると、前記識別情報を含む書き込み完了通知を前記他のストレージ制御装置に送信する、
    請求項4記載のストレージ制御装置。
  6. 前記制御部は、
    前記他のストレージ制御装置からの受信データを一時的に記憶する複数のバッファ領域を前記ストレージ制御装置に確保して、前記複数のバッファ領域をそれぞれ対応付けた複数の読み出し要求を前記他のストレージ制御装置に送信し、
    前記書き込みデータを受信したとき、前記複数の読み出し要求の中から、前記書き込みデータの送信に用いた特定読み出し要求を特定し、前記複数のバッファ領域のうち、前記特定読み出し要求に対応付けられたバッファ領域に前記書き込みデータを一時的に記憶した後、前記書き込みデータを前記記憶部に書き込み、
    前記複数のバッファ領域には、サイズの異なるバッファ領域が含まれる、
    請求項4または5記載のストレージ制御装置。
  7. 前記制御部は、
    前記他のストレージ制御装置から受信した複数の書き込みデータそれぞれのデータサイズを履歴情報に蓄積し、
    前記履歴情報に基づいてバッファ領域の確保数をバッファ領域のサイズごとに決定し、サイズごとの前記確保数に基づいて確保されたバッファ領域にそれぞれ対応付けた前記複数の読み出し要求を前記他のストレージ制御装置に送信する、
    請求項6記載のストレージ制御装置。
  8. 第1のストレージ制御装置と、記憶部を有する第2のストレージ制御装置とを含むストレージシステムにおいて、
    前記第2のストレージ制御装置は、前記第1のストレージ制御装置に読み出し要求を送信し、
    前記第1のストレージ制御装置は、前記第2のストレージ制御装置から前記読み出し要求を受信し、前記読み出し要求の受信後にホスト装置から書き込みデータの書き込み要求を受信すると、前記書き込みデータを前記読み出し要求に対する応答として前記第2のストレージ制御装置に送信し、
    前記第2のストレージ制御装置は、前記読み出し要求の応答として前記書き込みデータを前記第1のストレージ制御装置から受信すると、前記書き込みデータを前記記憶部に書き込み、前記書き込み完了通知を前記第1のストレージ制御装置に送信し、
    前記第1のストレージ制御装置は、前記第2のストレージ制御装置から前記書き込みデータの前記記憶部への書き込み完了通知を受信すると、前記ホスト装置に前記書き込みデータの書き込み完了応答を送信する、
    ストレージシステム。
JP2014202776A 2014-10-01 2014-10-01 ストレージ制御装置およびストレージシステム Active JP6354507B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014202776A JP6354507B2 (ja) 2014-10-01 2014-10-01 ストレージ制御装置およびストレージシステム
US14/862,561 US9990148B2 (en) 2014-10-01 2015-09-23 Storage control device and storage system for data backup

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014202776A JP6354507B2 (ja) 2014-10-01 2014-10-01 ストレージ制御装置およびストレージシステム

Publications (2)

Publication Number Publication Date
JP2016071768A true JP2016071768A (ja) 2016-05-09
JP6354507B2 JP6354507B2 (ja) 2018-07-11

Family

ID=55632851

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014202776A Active JP6354507B2 (ja) 2014-10-01 2014-10-01 ストレージ制御装置およびストレージシステム

Country Status (2)

Country Link
US (1) US9990148B2 (ja)
JP (1) JP6354507B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9778879B2 (en) 2015-10-23 2017-10-03 Microsoft Technology Licensing, Llc Flushless transactional layer
JP6458752B2 (ja) * 2016-03-04 2019-01-30 日本電気株式会社 ストレージ制御装置、ストレージシステム、ストレージ制御方法、および、プログラム
JP6967959B2 (ja) * 2017-12-08 2021-11-17 キオクシア株式会社 メモリシステムおよび制御方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04237238A (ja) * 1991-01-21 1992-08-25 Toshiba Corp 受信バッファ管理方式
US20080162846A1 (en) * 2006-12-28 2008-07-03 Hitachi, Ltd. Storage system comprising backup function
US20100030986A1 (en) * 2008-07-31 2010-02-04 Fujitsu Limited Storage system control method
US20130054914A1 (en) * 2011-08-23 2013-02-28 Fujitsu Limited Data copy processing system, storage device, and data copy processing method

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4419460B2 (ja) 2003-08-04 2010-02-24 株式会社日立製作所 リモートコピーシステム
JP4412989B2 (ja) 2003-12-15 2010-02-10 株式会社日立製作所 複数の記憶システムを有するデータ処理システム
US7395265B2 (en) 2004-08-27 2008-07-01 Hitachi, Ltd. Data processing system and storage subsystem provided in data processing system
JP4618777B2 (ja) 2004-08-27 2011-01-26 株式会社日立製作所 データ処理システム及びそのデータ処理システムに備えられる記憶サブシステム
JP4740763B2 (ja) 2006-02-15 2011-08-03 株式会社日立製作所 ストレージシステム及びストレージコントローラ

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04237238A (ja) * 1991-01-21 1992-08-25 Toshiba Corp 受信バッファ管理方式
US20080162846A1 (en) * 2006-12-28 2008-07-03 Hitachi, Ltd. Storage system comprising backup function
JP2008165455A (ja) * 2006-12-28 2008-07-17 Hitachi Ltd バックアップ機能を備えたストレージシステム
US20100030986A1 (en) * 2008-07-31 2010-02-04 Fujitsu Limited Storage system control method
JP2010039574A (ja) * 2008-07-31 2010-02-18 Fujitsu Ltd ストレージシステム
US20130054914A1 (en) * 2011-08-23 2013-02-28 Fujitsu Limited Data copy processing system, storage device, and data copy processing method
JP2013045218A (ja) * 2011-08-23 2013-03-04 Fujitsu Ltd データコピー処理システム、ストレージ装置、及びデータコピー処理方法

Also Published As

Publication number Publication date
US20160098219A1 (en) 2016-04-07
JP6354507B2 (ja) 2018-07-11
US9990148B2 (en) 2018-06-05

Similar Documents

Publication Publication Date Title
JP5714571B2 (ja) キャッシュクラスタを構成可能モードで用いるキャッシュデータ処理
JP4301849B2 (ja) 情報処理方法及びその実施システム並びにその処理プログラム並びにディザスタリカバリ方法およびシステム並びにその処理を実施する記憶装置およびその制御処理方法
US10409508B2 (en) Updating of pinned storage in flash based on changes to flash-to-disk capacity ratio
US10645152B2 (en) Information processing apparatus and memory control method for managing connections with other information processing apparatuses
JP4452533B2 (ja) システムおよび記憶装置システム
US9128621B2 (en) Storage system control method
JP6009095B2 (ja) ストレージシステム及び記憶制御方法
US8074222B2 (en) Job management device, cluster system, and computer-readable medium storing job management program
US8335771B1 (en) Storage array snapshots for logged access replication in a continuous data protection system
US7694177B2 (en) Method and system for resynchronizing data between a primary and mirror data storage system
US9830088B2 (en) Optimized read access to shared data via monitoring of mirroring operations
JP6434131B2 (ja) 分散処理システム、タスク処理方法、記憶媒体
JP2002526821A (ja) 複数のファイルサーバ間における永続状況情報の調整
JP3909062B2 (ja) Nasの制御装置及びバックアップ方法並びにプログラム
US20140351151A1 (en) Providing a lease period determination
JP2008515112A (ja) 仮想順序付け書き込み
JP5217966B2 (ja) ストレージシステムのアップデート処理プログラム、アップデート処理方法及びストレージシステム
US20180143994A1 (en) Apparatus and method for information processing
CN113010496B (zh) 一种数据迁移方法、装置、设备和存储介质
JPWO2008139521A1 (ja) リモートファイルシステム、端末装置およびサーバ装置
JP6354507B2 (ja) ストレージ制御装置およびストレージシステム
WO2018076633A1 (zh) 一种远程数据复制方法、存储设备及存储系统
JP2008210031A (ja) ストレージシステムの記憶領域管理方法
JP2011028520A (ja) ディスクアレイ装置及び物理ディスクの復元方法
JP6565506B2 (ja) 受信装置、受信制御方法および受信制御プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170605

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180510

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180528

R150 Certificate of patent or registration of utility model

Ref document number: 6354507

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150