JP5621909B2 - 情報処理装置、ストレージシステムおよび書き込み制御方法 - Google Patents

情報処理装置、ストレージシステムおよび書き込み制御方法 Download PDF

Info

Publication number
JP5621909B2
JP5621909B2 JP2013504477A JP2013504477A JP5621909B2 JP 5621909 B2 JP5621909 B2 JP 5621909B2 JP 2013504477 A JP2013504477 A JP 2013504477A JP 2013504477 A JP2013504477 A JP 2013504477A JP 5621909 B2 JP5621909 B2 JP 5621909B2
Authority
JP
Japan
Prior art keywords
data
write
processing
compression
writing
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
JP2013504477A
Other languages
English (en)
Other versions
JPWO2012124100A1 (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.)
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
Publication of JPWO2012124100A1 publication Critical patent/JPWO2012124100A1/ja
Application granted granted Critical
Publication of JP5621909B2 publication Critical patent/JP5621909B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • 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/0608Saving storage space on storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • 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/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • 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
    • G06F3/0686Libraries, e.g. tape libraries, jukebox
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory

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)
  • Library & Information Science (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Description

本発明は、情報処理装置、ストレージシステムおよび書き込み制御方法に関する。
近年、磁気テープなどの大容量かつ安価な記録媒体をバックエンドのライブラリ装置として用いるとともに、HDD(Hard Disk Drive)などのアクセス速度がより高速な記録媒体をキャッシュ装置として用いた階層型の仮想ストレージシステムが知られている。仮想ストレージシステムでは、ホスト装置に対して、キャッシュ装置に記憶されたデータをライブラリ装置のデータとして仮想的に認識させる。これにより、ホスト装置は、ライブラリ装置によって提供される大容量の記憶領域を、あたかも自装置に接続されているかのように利用できるようになる。
また、仮想ストレージシステムの中には、バックエンドのライブラリ装置に格納されるデータ量の削減を目的として、ホスト装置から書き込みが要求されたデータを圧縮する機能を備えたものがある。例えば、ホスト装置から書き込みが要求されたデータを圧縮してキャッシュ装置に書き込み、圧縮した状態の書き込みデータをキャッシュ装置から読み出して、バックエンドのライブラリ装置に格納するものがある。
なお、データを圧縮して記憶装置に格納する技術の例として、入力データの一部を異なる複数の圧縮法で並列に圧縮処理し、圧縮処理時間が短かった圧縮法を選択して残りの入力データを圧縮するものがある。また、他の例として、バックアップデータを一定長のブロックごとに異なる圧縮法で圧縮し、各ブロックの圧縮後データおよび圧縮前データのうち最小データ量のデータを選択し、選択したデータをバックアップ記憶するものがある。さらに、他の例として、一時記憶エリアを利用して、圧縮機能を持つ記憶装置にファイルを格納する際に、圧縮率がしきい値より高いファイルとしきい値より低いファイルとを交互に格納するものがある。
特開平7−210324号公報 特開2005−293224号公報 特開2008−293147号公報
ところで、データを圧縮して記憶装置に格納する際の処理時間には、データの圧縮処理時間と、圧縮されたデータを記憶装置に転送する時間とが含まれる。また、一般的に、圧縮後のデータの残存率は圧縮対象のデータによって異なる。このため、データの圧縮残存率が高くない場合には、そのデータを圧縮しないで記憶装置に書き込む格納する処理にかかる時間より、そのデータを圧縮して記憶装置に格納する処理にかかる時間の方が長くなることがある。このような場合には、データの格納に必要な記憶容量を削減できたとしても、データの格納にかかる全体の処理時間が長くなってしまうという問題があった。
本発明はこのような課題に鑑みてなされたものであり、記憶装置に格納するデータ量の削減効果とその格納処理時間の短縮効果とを両立させた情報処理装置、ストレージシステムおよび書き込み制御方法を提供することを目的とする。
上記課題を解決するために、書き込み部と、圧縮部と、書き込み制御部とを有する情報処理装置が提供される。この情報処理装置において、書き込み部は、データを記憶装置に書き込む。圧縮部は、データを圧縮する。書き込み制御部は、記憶装置への書き込みが要求された第1のデータを書き込み部が記憶装置に書き込む第1の処理と、第1のデータを圧縮部が圧縮し、圧縮により得られた第2のデータを書き込み部が記憶装置に書き込む第2の処理とを実行させ、第1の処理と第2の処理のうち処理時間が短い方の処理によって記憶装置に書き込まれたデータを、記憶装置における有効な書き込みデータとする。
また、上記課題を解決するために、第1の記憶装置と、第2の記憶装置と、ストレージ制御装置と、アクセス装置とを有するストレージシステムが提供される。このストレージシステムにおいて、ストレージ制御装置は、第1の記憶装置を一次ストレージとし、第2の記憶装置を二次ストレージとした階層型ストレージシステムの動作を制御する。アクセス装置は、上位装置から階層型ストレージシステム内のデータに対するアクセスが要求されたとき、第1の記憶装置にアクセスする。また、アクセス装置は、書き込み部と、圧縮部と、書き込み制御部とを有する。書き込み部は、データを第1の記憶装置に書き込む。圧縮部は、データを圧縮する。書き込み制御部は、上位装置から階層型ストレージシステムへの書き込みが要求された第1のデータを書き込み部が第1の記憶装置に書き込む第1の処理と、第1のデータを圧縮部が圧縮し、圧縮により得られた第2のデータを書き込み部が第1の記憶装置に書き込む第2の処理とを実行させ、第1の処理と第2の処理のうち処理時間が短い方の処理によって第1の記憶装置に書き込まれたデータを、第1の記憶装置における有効な書き込みデータとする。
さらに、上記課題を解決するために、上記の情報処理装置と同様の処理を実行する書き込み制御方法が提供される。
上記の情報処理装置および書き込み制御方法によれば、記憶装置に格納するデータ量の削減効果とその格納処理に要する時間の短縮効果とを両立させることができる。
また、上記のストレージシステムによれば、第1の記憶装置および第2の記憶装置にそれぞれ格納するデータ量の削減効果と、第1の記憶装置へのデータ格納処理に要する時間の短縮効果とを両立させることができる。
本発明の上記および他の目的、特徴および利点は本発明の例として好ましい実施の形態を表す添付の図面と関連した以下の説明により明らかになるであろう。
第1の実施の形態に係る情報処理装置の構成例を示す図である。 第2の実施の形態に係るストレージシステムの全体構成例を示す図である。 チャネルプロセッサのハードウェア構成例を示す図である。 チャネルプロセッサによるディスクアレイ装置へのデータ書き込み処理の例を示す第1のタイムチャートである。 チャネルプロセッサによるディスクアレイ装置へのデータ書き込み処理の例を示す第2のタイムチャートである。 第2の実施の形態におけるデータ書き込み処理の例を示すタイムチャートである。 VL制御プロセッサおよびチャネルプロセッサが備える処理機能の例を示すブロック図である。 データ管理テーブルに格納される情報の例を示す図である。 ディスクアレイ装置に書き込まれるデータの構成例を示す図である。 チャネルプロセッサによるディスクアレイ装置へのデータ書き込み処理手順の例を示すフローチャートである。 第3の実施の形態のチャネルプロセッサによるディスクアレイ装置へのデータ書き込み処理手順の例を示すフローチャートである。 第4の実施の形態のチャネルプロセッサおよびVL制御プロセッサが備える処理機能の例を示すブロック図である。 第4の実施の形態のチャネルプロセッサによるディスクアレイ装置へのデータ書き込み処理手順の例を示すフローチャートである。
以下、実施の形態を図面を参照して詳細に説明する。
〔第1の実施の形態〕
図1は、第1の実施の形態に係る情報処理装置の構成例を示す図である。
図1に示す情報処理装置1は、記憶装置11に対してデータを書き込む書き込み部12と、データを圧縮する圧縮部13と、書き込み部12および圧縮部13を用いた記憶装置11へのデータ書き込み処理を制御する書き込み制御部14とを備える。なお、図1の例では、記憶装置11は情報処理装置1の内部に設けられるものとするが、記憶装置11は情報処理装置1の外部に設けられていてもよい。
以下、情報処理装置1内のメモリ15に記憶されたデータDaを記憶装置11に書き込むことが要求された場合を例に、情報処理装置1での処理を説明する。なお、書き込み要求対象のデータDaは、情報処理装置1の外部に設けられた装置から受信したデータであってもよい。
書き込み制御部14は、メモリ15に記憶されたデータDaを記憶装置11に書き込む際に、次のような第1の処理と第2の処理とを同時に開始させて並列に実行させる。第1の処理は、データDaを書き込み部12がそのまま記憶装置11に書き込む処理である。第2の処理は、データDaを圧縮部13が圧縮し、圧縮により得られた圧縮データDbを書き込み部12が記憶装置11に書き込む処理である。書き込み制御部14は、これらの第1の処理と第2の処理のうち、処理時間が短い方の処理によって記憶装置11に書き込まれたデータを、記憶装置11における有効な書き込みデータとする。
例えば、第1の処理より第2の処理の処理時間の方が短い場合には、書き込み制御部14は、第2の処理によって記憶装置11に書き込まれた圧縮データDbを有効とする。この場合、データDaを圧縮せずに記憶装置11に書き込む場合と比較して、記憶装置11に書き込むデータ量が削減され、記憶装置11の記憶容量を節約できるとともに、書き込み処理全体に要する処理時間も短縮できる。
一方、第1の処理より第2の処理の処理時間が長い場合とは、圧縮部13によるデータDaの圧縮効率があまり高くなく、圧縮データDbの大きさが比較的大きいことで、圧縮データDbの書き込み処理時間が長くなってしまう場合である。この場合、書き込み制御部14は、第1の処理によって書き込まれた未圧縮のデータDaを有効な書き込みデータとする。これにより、記憶装置11の容量削減成果は得られなくなるものの、圧縮した場合と比較して、書き込み処理全体に要する処理時間を短縮できる。
なお、第1の処理と第2の処理の各処理時間が同じである場合には、書き込み制御部14は、第2の処理によって記憶装置11に書き込まれた圧縮データDbを有効な書き込みデータとすればよい。これにより、記憶装置11の記憶容量を節約する効果が得られる。
以上のような書き込み制御部14による制御処理により、記憶装置11に格納するデータ量の削減効果と、その格納処理にかかる時間の抑制効果とを両立させることができる。
なお、書き込み制御部14は、例えば、次のような処理を行ってもよい。上記の第1の処理と第2の処理とを並列に実行させるとともに、第1の処理と第2の処理のどちらが先に終了するかを監視する。そして、書き込み制御部14は、第1の処理と第2の処理のうちの一方の処理が終了したことを検出したときに、実行が終了した処理によって記憶装置11に書き込まれたデータを有効な書き込みデータとしてもよい。
また、圧縮部13によるデータ圧縮効率がどのようになるかは、圧縮部13が実際にデータの圧縮を完了した後に認識できる。このことを利用して、書き込み制御部14は、次のような処理を行ってもよい。書き込み制御部14は、第2の処理において、圧縮部13によるデータDaの圧縮処理が完了した時点で、圧縮データDbのデータ量と、第1の処理において書き込み部12による記憶装置11への書き込みが終了していない書き込み未完了データのデータ量とを比較する。
圧縮データDbのデータ量が、書き込み未完了データのデータ量以下である場合には、書き込み制御部14は、第2の処理を続行させるとともに、第1の処理、すなわち元のデータDaの記憶装置11への書き込み処理を中止させる。これにより、書き込み部12は圧縮データDbを記憶装置11に書き込み、書き込みが終了した圧縮データDbが有効な書き込みデータとなる。
一方、圧縮データDbのデータ量が、書き込み未完了データのデータ量より大きい場合には、書き込み制御部14は、第1の処理を続行させるとともに、第2の処理を中止させる。これにより、圧縮データDbは記憶装置11に書き込まれなくなり、元のデータDaが有効な書き込みデータとなる。
次に、上記の情報処理装置1が備える処理機能をストレージシステムに適用した実施の形態について説明する。
〔第2の実施の形態〕
図2は、第2の実施の形態に係るストレージシステムの全体構成例を示す図である。
図2に示すストレージシステム100は、ディスクアレイ装置110、テープライブラリ装置120、仮想ライブラリ制御プロセッサ(以下、“VL制御プロセッサ”と略称する。VL:Virtual Library)200、チャネルプロセッサ300およびデバイスプロセッサ400を有している。また、VL制御プロセッサ200およびチャネルプロセッサ300には、ホスト装置500が接続されている。
なお、ホスト装置500とチャネルプロセッサ300の間、チャネルプロセッサ300とディスクアレイ装置110との間、ディスクアレイ装置110とデバイスプロセッサ400との間、および、デバイスプロセッサ400とテープライブラリ装置120との間は、例えば、FC(Fibre Channel)規格の伝送路によって接続されている。また、VL制御プロセッサ200と、ホスト装置500、チャネルプロセッサ300およびデバイスプロセッサ400との間は、例えばLAN(Local Area Network)によって接続されている。
ディスクアレイ装置110は、複数のHDD(Hard Disk Drive)を備える記憶装置である。テープライブラリ装置120は、記録媒体として磁気テープを用いた記憶装置である。テープライブラリ装置120は、磁気テープに対するデータアクセスを行う1つ以上のテープドライブや、磁気テープを収容したテープカートリッジを搬送する機構などを備える。
VL制御プロセッサ200は、ストレージシステム100が、ディスクアレイ装置110を一次ストレージ(テープボリュームキャッシュ)とし、テープライブラリ装置120を二次ストレージとした階層型の仮想ライブラリシステムとして動作するように制御する。ここで、仮想ライブラリシステムとは、テープライブラリ装置120によって実現される大容量の記憶領域を、ホスト装置500が、ディスクアレイ装置110を通じて仮想的に利用できるようにしたものである。
なお、仮想ライブラリシステムの二次ストレージとして用いる記録媒体としては、磁気テープの他、例えば、光ディスク、光磁気ディスクなどの可搬型の記録媒体を利用することもできる。また、仮想ライブラリシステムの一次ストレージとして用いる記憶装置としては、HDDの他、SSD(Solid State Drive)などを利用することもできる。
チャネルプロセッサ300は、VL制御プロセッサ200による制御の下で、ホスト装置500からの仮想ライブラリシステムへのアクセス要求に応じて、ディスクアレイ装置110にアクセスする。例えば、ホスト装置500からデータの書き込み要求が発せられたとき、書き込みデータをホスト装置500から受信して、ディスクアレイ装置110に書き込むとともに、ディスクアレイ装置110上の書き込みデータの書き込みアドレスをVL制御プロセッサ200に通知する。また、チャネルプロセッサ300は、ホスト装置500からデータの読み出し要求が発せられると、VL制御プロセッサ200から読み出しアドレスの通知を受け、ディスクアレイ装置110上の通知された読み出しアドレスからデータを読み出して、ホスト装置500に送信する。さらに、チャネルプロセッサ300は、ホスト装置500から書き込みを要求されたデータを圧縮してディスクアレイ装置110に書き込む機能を備える。
デバイスプロセッサ400は、VL制御プロセッサ200による制御の下で、ディスクアレイ装置110およびテープライブラリ装置120へのアクセスを行い、ディスクアレイ装置110とテープライブラリ装置120との間でデータを転送する。
ホスト装置500は、ユーザの入力操作に応じてVL制御プロセッサ200にアクセス要求を発することで、仮想ライブラリシステムにアクセスする。例えば、ホスト装置500は、仮想ライブラリシステムにデータを書き込む際には、VL制御プロセッサ200に対して書き込み要求を発するとともに、書き込みデータをチャネルプロセッサ300に送信する。また、ホスト装置500は、仮想ライブラリシステムに記憶されたデータを読み出す際には、VL制御プロセッサ200に対して読み出し要求を発し、読み出しデータをチャネルプロセッサ300から受信する。
ホスト装置500では、例えば、ホスト装置500が備えるCPUがバックアップソフトウェアなどの所定のプログラムを実行することで、仮想ライブラリシステムへのアクセス処理が実行される。また、ホスト装置500は、チャネルプロセッサ300に書き込みデータを送信する際、書き込みデータを一定長のデータブロックに分割して送信する。さらに、ホスト装置500は、チャネルプロセッサ300から受信したデータブロックを結合することで、読み出しデータを復元する。
図3は、チャネルプロセッサのハードウェア構成例を示す図である。
チャネルプロセッサ300は、例えば、図3に示すようなコンピュータとして実現される。チャネルプロセッサ300は、CPU301によって装置全体が制御されている。CPU301には、バス308を介して、RAM(Random Access Memory)302および複数の周辺機器が接続されている。
RAM302は、チャネルプロセッサ300の主記憶装置として使用される。RAM302には、CPU301に実行させるOS(Operating System)プログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、RAM302には、CPU301による処理に必要な各種データが格納される。
バス308に接続されている周辺機器としては、HDD303、グラフィックインタフェース(I/F)304、光学ドライブ装置305、FCインタフェース306およびLANインタフェース307がある。
HDD303は、内蔵した磁気ディスクに対して、磁気的にデータの書き込みおよび読み出しを行う。HDD303は、チャネルプロセッサ300の二次記憶装置として使用される。HDD303には、OSプログラム、アプリケーションプログラム、および各種データが格納される。なお、二次記憶装置としては、フラッシュメモリなどの半導体記憶装置を使用することもできる。
グラフィックインタフェース304には、ディスプレイ304aが接続されている。グラフィックインタフェース304は、CPU301からの命令に従って、各種の画像をディスプレイ304aに表示させる。
光学ドライブ装置305は、レーザ光などを利用して、光ディスク305aに記録されたデータの読み取りを行う。光ディスク305aは、光の反射によって読み取り可能なようにデータが記録された可搬型の記録媒体である。光ディスク305aには、DVD(Digital Versatile Disc)、DVD−RAM、CD−ROM(Compact Disc Read Only Memory)、CD−R(Recordable)/RW(Rewritable)などがある。
FCインタフェース306は、FC規格の伝送路を通じて、ホスト装置500やディスクアレイ装置110との間でデータを送受信する。LANインタフェース307は、LANを通じて、VL制御プロセッサ200との間でデータを送受信する。
なお、VL制御プロセッサ200、デバイスプロセッサ400およびホスト装置500も、図3と同様なコンピュータとして実現することができる。
次に、チャネルプロセッサ300がディスクアレイ装置110に対してデータを書き込む処理について説明する。
前述のように、チャネルプロセッサ300は、ホスト装置500から受信した書き込みデータを圧縮する機能を備える。また、ホスト装置500は、書き込みデータを一定長のデータブロックに分割して、チャネルプロセッサ300に送信する。チャネルプロセッサ300は、受信したデータブロックごとに圧縮処理を行い、圧縮後のデータブロックをディスクアレイ装置110に書き込む。
ここで、図4は、チャネルプロセッサによるディスクアレイ装置へのデータ書き込み処理の例を示す第1のタイムチャートである。
図4において、「受信処理」とは、ホスト装置500から送信されたデータブロックをチャネルプロセッサ300が受信し、受信したデータブロックがチャネルプロセッサ300内のRAM302に格納される処理を示す。また、「圧縮処理」とは、RAM302に格納されたデータブロックをCPU301が読み出して圧縮し、圧縮により得られた圧縮データがRAM302に格納される処理を示す。また、「書き込み処理」とは、RAM302に格納されたデータブロックまたは圧縮データが、ディスクアレイ装置110に送信されて格納される処理を示す。
ここで、説明をわかりやすくするために、「受信処理」におけるホスト装置500からチャネルプロセッサ300へのデータ転送速度と、「書き込み処理」におけるチャネルプロセッサ300からディスクアレイ装置110へのデータ転送速度とは、同じであるものとする。これらのデータ転送速度は、例えば数Gbps程度である。一方、「圧縮処理」では、チャネルプロセッサ300内のCPU301とRAM302との間でバス308を通じたデータ転送が行われ、このときのデータ転送速度は、例えば数GBytes/s程度となる。従って、「圧縮処理」の処理速度は、「受信処理」や「書き込み処理」の処理速度と比較して明らかに高速になる。なお、データブロックの圧縮処理に要する時間は、圧縮対象のデータブロックに関係なく同じになるものとする。
図4に示すケース1,2は、チャネルプロセッサ300が、ホスト装置500からデータブロックD1aを受信してディスクアレイ装置110に書き込む場合の処理を示す。ケース1は、データブロックD1aを圧縮して圧縮データD1bを生成した後、圧縮データD1bをディスクアレイ装置110に書き込む場合を示す。ケース2は、データブロックD1aを圧縮せずにそのままディスクアレイ装置110に書き込む場合を示す。
また、図4に示すケース3,4は、チャネルプロセッサ300が、ホスト装置500からデータブロックD2aを受信してディスクアレイ装置110に書き込む場合の処理を示す。ケース3は、データブロックD2aを圧縮して圧縮データD2bを生成した後、圧縮データD2bをディスクアレイ装置110に書き込む場合を示す。ケース4は、データブロックD2aを圧縮せずにそのままディスクアレイ装置110に書き込む場合を示す。
データブロックは一定長であるので、ケース1,2でデータブロックD1aの受信処理に要する時間と、ケース3,4でデータブロックD2aの受信処理に要する時間は、ともに(T1−T0)となる。また、ケース1でデータブロックD1aの圧縮処理に要する時間と、ケース3でデータブロックD2aの圧縮処理に要する時間は、ともに(T2−T1)となる。
ところで、圧縮後のデータの残存率は、圧縮対象のデータによって異なる。図4の例では、データブロックD1aを圧縮したときの残存率は50%であるものとし、データブロックD2aを圧縮したときの残存率は90%であるものとする。この場合、データブロックD1aを圧縮した圧縮データD1bをディスクアレイ装置110に書き込む処理に要する時間(T3−T2)より、データブロックD2aを圧縮した圧縮データD2bをディスクアレイ装置110に書き込む処理に要する時間(T5−T2)の方が長くなる。
圧縮後の残存率が低いデータブロックD1aをディスクアレイ装置110に書き込む場合には、圧縮を行って圧縮データD1bをディスクアレイ装置110に書き込むケース1の処理時間(T3−T0)の方が、圧縮を行わずに元のデータブロックD1aをディスクアレイ装置110に書き込むケース2の処理時間(T4−T0)より短くなる。すなわち、ケース1では、圧縮を行ったことにより、ディスクアレイ装置110の容量を節約できるとともに、データ書き込み処理全体に要する時間も短縮できる。
一方、圧縮後の残存率が高い場合には、圧縮を行ってディスクアレイ装置110に書き込む処理に要する時間の方が、圧縮を行わずにディスクアレイ装置110に書き込む処理に要する時間よりも長くなってしまう場合がある。図4の例では、データブロックD2aをディスクアレイ装置110に書き込む場合には、圧縮を行って圧縮データD2bをディスクアレイ装置110に書き込むケース3の処理時間(T5−T0)の方が、圧縮を行わずに元のデータブロックD2aをディスクアレイ装置110に書き込むケース4の処理時間(T4−T0)より長くなる。この場合、圧縮を行うことによりディスクアレイ装置110の容量を節約できるものの、データ書き込み処理全体に要する時間が長くなるという問題がある。
図5は、チャネルプロセッサによるディスクアレイ装置へのデータ書き込み処理の例を示す第2のタイムチャートである。
図5において、データブロックD3a,D4aは、ともに圧縮後の残存率が90%であるものとする。ケース11は、データブロックD3aを受信して圧縮し、得られた圧縮データD3bをディスクアレイ装置110に書き込んだ後、続けてデータブロックD4aを受信して圧縮し、得られた圧縮データD4bをディスクアレイ装置110に書き込む処理を示す。このケース11の処理時間(T13―T10)は、データブロックD3a,D4aをともに圧縮せずにディスクアレイ装置110に書き込んだ場合の処理時間より長くなる。
このような問題を解決する方法の一例として、1つのデータブロックを圧縮したときの残存率に応じて、次の所定数のデータブロックを圧縮するか否かを決定するという方法が考えられる。この方法は、連続して受信したデータブロックについての圧縮後の残存率は近い値になることが多いという性質を利用したものである。ケース12は、この方法を採用した場合の処理例である。ケース12の場合、チャネルプロセッサ300は、データブロックD3aの圧縮後に、得られた圧縮データD3bの残存率を検出する。チャネルプロセッサ300は、検出した残存率が所定のしきい値を超えたと判定して、次に受信したデータブロックD4aを圧縮せずにディスクアレイ装置110に書き込む。このような処理により、ケース12での処理時間(T12−T10)は、ケース11での処理時間(T13−T10)より短くなる。
しかしながら、圧縮後の残存率が高いデータブロックの次に、残存率が同様に高いデータブロックが必ず出現するとは限らない。ケース13,14はこのような場合の例であり、残存率が90%となるデータブロックD3aの次に、残存率が50%となるデータブロックD5aを受信した場合の処理を示す。
ケース13は、ケース12と同様に、圧縮データD3bをディスクアレイ装置110に書き込んだ後、圧縮データD3bの残存率が所定のしきい値を超えたことに基づいて、データブロックD5aを圧縮せずにディスクアレイ装置110に書き込む処理を示す。一方、ケース14は、データブロックD3a,D5aをともに圧縮した状態でディスクアレイ装置110に書き込む処理を示す。ケース13での処理時間(T12−T10)は、ケース14での処理時間(T11−T10)より長くなってしまう。ケース12,13の例のように、残存率の検出結果に応じてその後のデータブロックを圧縮するか否かを決定する処理を採用したとしても、処理時間は必ずしも最短にならない。
本実施の形態では、次の図6に示すような方法を採ることで、データブロックごとの圧縮後の残存率に関係なく、データ書き込みに要する時間を最短にできるようにする。図6は、第2の実施の形態におけるデータ書き込み処理の例を示すタイムチャートである。
チャネルプロセッサ300は、時刻T20において、データブロックD3aの受信を開始する。チャネルプロセッサ300は、時刻T21において、データブロックD3aの受信処理(RAM302への書き込み処理)を完了すると、「圧縮書き込み処理」と「非圧縮書き込み処理」とを同時に開始し、これらの処理を並列に実行する。
「圧縮書き込み処理」は、受信したデータブロックD3aを圧縮し、圧縮により得られた圧縮データD3bをディスクアレイ装置110に書き込む処理である。データブロックD3aについての圧縮書き込み処理では、時刻T22に圧縮処理(すなわち、圧縮データD3bを生成してRAM302に書き込む処理)が完了し、その後、圧縮データD3bのディスクアレイ装置110への書き込み処理が開始される。一方、「非圧縮書き込み処理」は、受信したデータブロックD3aを圧縮せずにそのままディスクアレイ装置110に書き込む処理である。
チャネルプロセッサ300は、並列に実行した圧縮書き込み処理および非圧縮書き込み処理のうち、どちらが先に終了するかを監視する。図5で述べたように、データブロックD3aは圧縮後の残存率が90%という比較的圧縮効率の低いデータであるので、データブロックD3aについての非圧縮書き込み処理が先に終了する。
チャネルプロセッサ300は、時刻T23において、データブロックD3aについての非圧縮書き込み処理が終了したことを検知すると、データブロックD3aについての圧縮書き込み処理を中止する。時刻T23の時点では、圧縮データD3bの書き込み処理の途中であるが、圧縮データD3bの書き込み処理は中断される。チャネルプロセッサ300は、例えば、ディスクアレイ装置110におけるデータブロックD3aの書き込み位置情報をVL制御プロセッサ200に登録するなどの処理により、ディスクアレイ装置110に書き込んだデータブロックD3aを有効化するとともに、時刻T23までにディスクアレイ装置110に書き込んだ圧縮データD3bを無効化する。
以上の時刻T20から時刻T23までの期間で、データブロックD3aについての書き込み処理が完了する。仮にデータブロックD3aについての圧縮書き込み処理を続行させた場合に、圧縮書き込み処理が時刻T24に終了するものとすると、データブロックD3aを圧縮してディスクアレイ装置110に書き込んだ場合と比較して、時間(T24−T23)だけ書き込み処理を早く完了させることができる。
また、チャネルプロセッサ300は、時刻T23において、データブロックD5aの受信を開始する。チャネルプロセッサ300は、時刻T25において、データブロックD5aの受信処理(RAM302への書き込み処理)を完了すると、データブロックD5aについての圧縮書き込み処理と非圧縮書き込み処理とを並列に実行する。これとともに、チャネルプロセッサ300は、圧縮書き込み処理および非圧縮書き込み処理のうち、どちらが先に終了するかを監視する。
図5で述べたように、データブロックD5aは圧縮後の残存率が50%という比較的圧縮効率の高いデータであるので、データブロックD5aについての圧縮書き込み処理が先に終了する。チャネルプロセッサ300は、時刻T26において、データブロックD5aについての圧縮書き込み処理が終了したことを検知すると、データブロックD5aについての非圧縮書き込み処理を中止する。時刻T26の時点では、元のデータブロックD5aの書き込み処理の途中であるが、データブロックD5aの書き込み処理は中断される。
チャネルプロセッサ300は、例えば、ディスクアレイ装置110における圧縮データD5bの書き込み位置情報をVL制御プロセッサ200に登録するなどの処理により、ディスクアレイ装置110に書き込んだ圧縮データD5bを有効化するとともに、時刻T26までにディスクアレイ装置110に書き込んだデータブロックD5aを無効化する。
以上の時刻T23から時刻T26までの期間で、データブロックD5aについての書き込み処理が完了する。仮にデータブロックD5aについての非圧縮書き込み処理を続行させた場合に、非圧縮書き込み処理が時刻T27に終了するものとすると、データブロックD5aを圧縮せずに書き込んだ場合(図5のケース13に対応)と比較して、時間(T27−T26)だけ書き込み処理を早く完了させることができる。
以上の図6の処理例のように、チャネルプロセッサ300は、ディスクアレイ装置110への書き込みが要求されたデータブロックごとに、圧縮書き込み処理と非圧縮書き込み処理とを並列に実行する。そして、チャネルプロセッサ300は、並列に実行した各処理のうち先に終了した処理によってディスクアレイ装置110に書き込まれたデータを、有効な書き込みデータとする。これにより、ディスクアレイ装置110へのデータ書き込み全体の処理時間を確実に短縮することができ、ディスクアレイ装置110やテープライブラリ装置120における記憶容量をできるだけ削減しつつ、データ書き込み効率を高めることができる。
なお、図6の例では、1つのデータブロックについてのディスクアレイ装置110への書き込み処理が終了した後に、次のデータブロックをホスト装置500から受信するようにした。しかし、ディスクアレイ装置110への書き込み処理とホスト装置500からの受信処理とは、非同期で実行されてもよい。この場合、チャネルプロセッサ300は、ホスト装置500からデータブロックを順次受信してRAM302に格納する。これとともに、チャネルプロセッサ300は、RAM302に格納されたデータブロックをRAM302への格納タイミングとは非同期に順次読み出し、図6のように圧縮書き込み処理と非圧縮書き込み処理とを並列に実行する。このような処理を実行した場合でも、ディスクアレイ装置110への書き込み処理に要する時間を短縮できる。
次に、図7は、VL制御プロセッサおよびチャネルプロセッサが備える処理機能の例を示すブロック図である。
VL制御プロセッサ200は、VL制御部211を備える。このVL制御部211の処理は、例えば、VL制御プロセッサ200が備えるCPUが所定のプログラムを実行することで実現される。また、VL制御プロセッサ200が備える記憶装置には、データ管理テーブル212が記憶される。
一方、チャネルプロセッサ300は、受信処理部311、送信処理部312、圧縮処理部321、書き込み処理部322,323、書き込み制御部324、読み出し処理部331および伸張処理部332を備える。これらの各処理ブロックの処理は、例えば、チャネルプロセッサ300が備えるCPU301が所定のプログラムを実行することで実現される。
VL制御プロセッサ200のVL制御部211は、ホスト装置500からの仮想ライブラリシステムへのアクセス要求に応じて、ディスクアレイ装置110に対するデータアクセス、テープライブラリ装置120内の磁気テープに対するデータアクセスなどの処理を制御する。また、VL制御部211は、ホスト装置500とディスクアレイ装置110との間のデータ送受信処理を制御する際には、ディスクアレイ装置110に記憶されたデータブロックの位置を管理するデータ管理テーブル212を参照する。
ここで、図8は、データ管理テーブルに格納される情報の例を示す図である。
データ管理テーブル212には、データブロックごとにレコードが生成され、各レコードには、データブロックを識別するブロックIDと、ディスクアレイ装置110におけるデータブロックの格納位置情報とが登録される。図8の例では、データブロックの格納位置情報として、ディスクアレイ装置110においてデータブロックが格納された領域の先頭アドレスが登録されている。
なお、データ管理テーブル212には、例えば、先頭アドレスとともに書き込みデータ量などが登録されてもよい。また、データ管理テーブル212に登録される、データブロックの格納位置情報としては、先頭アドレスに限るものではなく、例えば、次のデータブロックの格納位置を示すアドレスなどであってもよい。
以下、図7に戻り、データ管理テーブル212へのデータ登録は、チャネルプロセッサ300の書き込み制御部324によって行われる。VL制御部211は、ホスト装置500からデータの書き込み要求を受け付けると、チャネルプロセッサ300の書き込み制御部324に対して、ホスト装置500から送信される書き込みデータをディスクアレイ装置110に書き込むように要求する。書き込みデータは、ホスト装置500によって一定長のデータブロックに分割されてチャネルプロセッサ300に送信される。書き込み制御部324は、ホスト装置500から受信したデータブロックについてのディスクアレイ装置110への書き込み処理が終了するたびに、書き込んだデータブロックのブロックIDおよび先頭アドレスをデータ管理テーブル212に登録する。
VL制御部211は、書き込み制御部324の制御の下でチャネルプロセッサ300がディスクアレイ装置110に書き込んだデータを、書き込み終了後の所定のタイミングで、テープライブラリ装置120内の所定の磁気テープにコピーするようにデバイスプロセッサ400に要求する。このとき、VL制御部211は、磁気テープへコピーすべきデータのディスクアレイ装置110における先頭アドレスをデータ管理テーブル212から読み出して、デバイスプロセッサ400に通知する。
また、VL制御部211は、例えば、ディスクアレイ装置110の空き容量が少なくなると、最終アクセス時刻から最も長い時間が経過している仮想ディスクのデータを、ディスクアレイ装置110から消去するように、チャネルプロセッサ300に要求する。
さらに、VL制御部211は、ホスト装置500からデータの読み出し要求を受けると、要求されたデータがディスクアレイ装置110に格納されているか否かを判定する。読み出しを要求されたデータがディスクアレイ装置110に格納されている場合、VL制御部211は、読み出しを要求されたデータを構成する各データブロックの先頭アドレスをデータ管理テーブル212から読み出して、チャネルプロセッサ300の読み出し処理部331に通知する。読み出し処理部331は、VL制御部211から通知された先頭アドレスを基にディスクアレイ装置110からデータブロックを読み出し、送信処理部312を通じてホスト装置500に送信する。
一方、読み出しを要求されたデータがディスクアレイ装置110に格納されていない場合には、VL制御部211は、要求されたデータを含む論理ボリュームをディスクアレイ装置110に書き込むように、デバイスプロセッサ400に要求する。デバイスプロセッサ400は、要求された論理ボリュームをディスクアレイ装置110に書き込むとともに、論理ボリューム内のデータを構成する各データブロックのブロックIDおよび先頭アドレスを、データ管理テーブル212に登録する。その後、VL制御部211は、読み出しを要求されたデータがディスクアレイ装置110に登録されていた場合と同様の手順で、チャネルプロセッサ300を制御して、要求されたデータをディスクアレイ装置110からホスト装置500に送信させる。
次に、チャネルプロセッサ300の処理機能について説明する。
受信処理部311は、VL制御プロセッサ200から書き込み制御部324に対してデータの書き込み要求が発せられると、ホスト装置500から書き込みが要求されたデータを構成するデータブロックを受信する。受信処理部311は、受信したデータブロックをRAM302に格納する。
送信処理部312は、VL制御プロセッサ200から読み出し処理部331に対してデータの読み出し要求が発せられたとき、読み出し処理部331によってディスクアレイ装置110から読み出されたデータブロック、あるいは伸張処理部332によって伸張されたデータブロックを、ホスト装置500に送信する。
圧縮処理部321および書き込み処理部322は、書き込み制御部324の制御の下で、図6で説明した圧縮書き込み処理を実行する処理ブロックである。圧縮処理部321は、受信処理部311によってホスト装置500から受信され、RAM302に格納されたデータブロックを圧縮し、圧縮データを生成する。圧縮処理部321は、生成した圧縮データをRAM302に格納する。書き込み処理部322は、圧縮処理部321によって生成されてRAM302に格納された圧縮データを、ディスクアレイ装置110に書き込む。
書き込み処理部323は、書き込み制御部324の制御の下で、図6で説明した非圧縮書き込み処理を実行する処理ブロックである。書き込み処理部323は、受信処理部311がホスト装置500から受信したデータブロックを、ディスクアレイ装置110にそのまま書き込む。なお、書き込み処理部322からの圧縮データと、書き込み処理部323からのデータブロックとは、ディスクアレイ装置110上のそれぞれ別の領域に書き込まれる。
ここで、図9は、ディスクアレイ装置に書き込まれるデータの構成例を示す図である。
書き込み処理部322,323は、それぞれ圧縮データおよびデータブロックを、例えば図9に示すような、圧縮フラグ341と実データ領域342とを含むデータ形式に変換して、ディスクアレイ装置110に書き込む。圧縮フラグ341は、実データ領域342に格納されたデータが、データブロックを圧縮した圧縮データであるか、あるいは非圧縮のデータブロックであるかを示す。例えば、書き込み処理部322は、圧縮フラグ341を「1」にするとともに、実データ領域342に圧縮処理部321が生成した圧縮データを格納する。一方、書き込み処理部323は、圧縮フラグ341を「0」にするとともに、実データ領域342に非圧縮のデータブロックを格納する。
以下、図7に戻り、読み出し処理部331は、VL制御プロセッサ200のVL制御部211から読み出し要求を受け付けるとともに先頭アドレスの通知を受けると、ディスクアレイ装置110上の通知された先頭アドレスから、データブロック1つ分のデータを読み出す。
読み出し処理部331は、ディスクアレイ装置110から読み出したデータの圧縮フラグ341を参照する。圧縮フラグ341が「0」である場合、読み出し処理部331は、実データ領域342に格納された非圧縮のデータブロックを送信処理部312に受け渡して、ホスト装置500に送信させる。一方、圧縮フラグ341が「1」である場合、読み出し処理部331は、実データ領域342に格納された圧縮データを伸張処理部332に受け渡す。
伸張処理部332は、読み出し処理部331からの圧縮データを伸張し、伸張により復元されたデータブロックを送信処理部312に受け渡して、ホスト装置500に送信させる。
図10は、チャネルプロセッサによるディスクアレイ装置へのデータ書き込み処理手順の例を示すフローチャートである。この図10の処理は、受信処理部311がホスト装置500から受信してRAM302に格納したデータブロックごとに実行される。
[ステップS11]書き込み制御部324は、圧縮処理部321に、RAM302に格納されたデータブロックの圧縮処理を開始させる。これにより、前述の圧縮書き込み処理が開始される。
[ステップS12]書き込み制御部324は、書き込み処理部323に、RAM302に格納された、ステップS11での処理対象と同じデータブロックについてのディスクアレイ装置110への書き込み処理を開始させる。データブロックの書き込み先は、ホスト装置500から書き込みを要求された論理ボリュームに割り当てられた、ディスクアレイ装置110内のHDDの物理記憶領域の中の任意の位置である。このステップS12の実行により、前述の非圧縮書き込み処理が開始される。
上記のステップS11,S12により、書き込み処理部323によるディスクアレイ装置110へのデータブロックの書き込み処理と、圧縮処理部321によるデータブロックの圧縮処理とが並列に実行される。
[ステップS13]圧縮処理部321によるデータブロックの圧縮処理が完了すると、書き込み処理部322は、圧縮処理部321によって生成された圧縮データをディスクアレイ装置110に書き込む処理を開始する。圧縮データの書き込み先は、ホスト装置500から書き込みを要求された論理ボリュームに割り当てられた、ディスクアレイ装置110内のHDDの物理記憶領域の中の任意の位置(ただし、ステップS12でのデータブロックの書き込み先とは別の位置)である。このステップS13の実行により、書き込み処理部322によるディスクアレイ装置110への圧縮データの書き込み処理と、書き込み処理部323によるディスクアレイ装置110へのデータブロックの書き込み処理とが、並列に実行される。
[ステップS14]書き込み制御部324は、書き込み処理部322,323からの書き込み完了通知を監視する。そして、書き込み制御部324は、書き込み処理部322,323の一方から書き込み完了通知を受信すると(S14:Yes)、ステップS15の処理を実行する。
[ステップS15]ステップS14で、書き込み処理部322からの書き込み完了通知を先に受信した場合、書き込み制御部324は、ステップS16の処理を実行する。一方、ステップS14で、書き込み処理部323からの書き込み完了通知を先に受信した場合、書き込み制御部324は、ステップS18の処理を実行する。
[ステップS16]書き込み制御部324は、書き込み処理部323によるデータブロックの書き込み処理を中止させる。
[ステップS17]書き込み制御部324は、書き込み処理部322によってディスクアレイ装置110に書き込まれたデータの先頭アドレスを、書き込み処理部322から取得する。書き込み制御部324は、取得した先頭アドレスと、書き込みが終了したデータブロックのブロックIDとを、VL制御プロセッサ200内のデータ管理テーブル212に登録する。この登録処理により、書き込み処理部322によってディスクアレイ装置110に書き込まれたデータが有効化される。
[ステップS18]書き込み制御部324は、書き込み処理部322による圧縮データの書き込み処理を中止させる。
[ステップS19]書き込み制御部324は、書き込み処理部323によってディスクアレイ装置110に書き込まれたデータの先頭アドレスを、書き込み処理部323から取得する。書き込み制御部324は、取得した先頭アドレスと、書き込みが終了したデータブロックのブロックIDとを、VL制御プロセッサ200内のデータ管理テーブル212に登録する。この登録処理により、書き込み処理部323によってディスクアレイ装置110に書き込まれたデータが有効化される。
以上の図10の処理によれば、並列に実行した圧縮書き込み処理(S11,S13)および非圧縮書き込み処理(S12)のうち、先に終了した処理によってディスクアレイ装置110に書き込まれたデータが、有効な書き込みデータとされる(S17またはS19)。これにより、ディスクアレイ装置110へのデータ書き込み全体の処理時間を確実に短縮することができ、ディスクアレイ装置110やテープライブラリ装置120における記憶容量をできるだけ削減しつつ、データ書き込み効率を高めることができる。
〔第3の実施の形態〕
上記の第2の実施の形態では、圧縮処理部321および書き込み処理部322による圧縮書き込み処理と、書き込み処理部323による非圧縮書き込み処理のいずれかが終了するまでの間、各処理が並列に実行される。これに対して、以下の第3の実施の形態では、圧縮処理部321による圧縮処理が終了した時点で、圧縮書き込み処理と非圧縮書き込み処理のどちらの処理時間が短いかを判定する。
第3の実施の形態に係るストレージシステムの全体構成は、図2と同様である。また、第3の実施の形態に適用されるチャネルプロセッサ300およびVL制御プロセッサ200の各処理機能の構成は、図7と同様であるが、書き込み制御部324における制御処理が異なる。以下、第3の実施の形態におけるチャネルプロセッサ300の処理について、図7に示した符号を用いて説明する。
図11は、第3の実施の形態のチャネルプロセッサによるディスクアレイ装置へのデータ書き込み処理手順の例を示すフローチャートである。この図11の処理は、受信処理部311がホスト装置50から受信してRAM302に格納したデータブロックごとに実行される。
[ステップS31]書き込み制御部324は、圧縮処理部321に、RAM302に格納されたデータブロックの圧縮処理を開始させる。これにより、前述の圧縮書き込み処理が開始される。
[ステップS32]書き込み制御部324は、書き込み処理部323に、RAM302に格納された、ステップS31での処理対象と同じデータブロックについてのディスクアレイ装置110への書き込み処理を開始させる。これにより、前述の非圧縮書き込み処理が開始される。
上記のステップS31,S32により、書き込み処理部323によるディスクアレイ装置110へのデータブロックの書き込み処理と、圧縮処理部321によるデータブロックの圧縮処理とが並列に実行される。
[ステップS33]書き込み制御部324は、圧縮処理部321からの圧縮完了通知を監視する。そして、書き込み制御部324は、圧縮処理部321でのデータブロックの圧縮処理が終了し、圧縮処理部321からの圧縮完了通知を受信すると(S33:Yes)、ステップS34の処理を実行する。
[ステップS34]書き込み制御部324は、圧縮処理部321によって生成された圧縮データのデータ量A1を検出する。この処理では、書き込み制御部324は、例えば、データ量A1を圧縮処理部321から取得する。
[ステップS35]書き込み制御部324は、ステップS32で書き込み処理部323が書き込みを開始したデータブロックのうち、書き込みが未実行であるデータのデータ量A2を検出する。この処理では、書き込み制御部324は、例えば、書き込み処理部323から、ディスクアレイ装置110に対して書き込み済みのデータ量A3を取得する。そして、書き込み制御部324は、固定値であるデータブロック長(例えば256KBytes)からデータ量A3を減算することで、データ量A2を算出する。
なお、ステップS34,S35の処理順は逆であってもよい。
[ステップS36]書き込み制御部324は、ステップS34で検出した圧縮データのデータ量A1と、ステップS35で検出した書き込み未実行のデータ量A2とを比較する。データ量A1がデータ量A2以下である場合(S36:Yes)、書き込み制御部324はステップS37の処理を実行する。一方、データ量A1がデータ量A2より大きい場合(S36:No)、書き込み制御部324はステップS40の処理を実行する。
なお、上記のステップS34,S35では、書き込み処理部323は、データ量A1,A2の代わりに、例えば、圧縮データの残存率R1、データブロック全体に対する書き込み未実行のデータの割合を示す書き込み未完了率R2をそれぞれ検出してもよい。この場合、ステップS36では、書き込み制御部324は、残存率R1が書き込み未完了率R2以下の場合、ステップS37の処理を実行する一方、残存率R1が書き込み未完了率R2より大きい場合、ステップS40の処理を実行する。
[ステップS37]書き込み制御部324は、書き込み処理部322に、ステップS33で生成された圧縮データをディスクアレイ装置110に書き込む処理を開始させる。その一方、書き込み制御部324は、書き込み処理部323に、データブロックの書き込み処理を中止させる。
[ステップS38]書き込み制御部324は、書き込み処理部322からの書き込み完了通知を監視する。そして、書き込み制御部324は、書き込み処理部322からの書き込み完了通知を受信すると(S38:Yes)、ステップS39の処理を実行する。
[ステップS39]書き込み制御部324は、書き込み処理部322によってディスクアレイ装置110に書き込まれたデータの先頭アドレスを、書き込み処理部322から取得する。書き込み制御部324は、取得した先頭アドレスと、書き込みが終了したデータブロックのブロックIDとを、VL制御プロセッサ200内のデータ管理テーブル212に登録する。この登録処理により、書き込み処理部322によってディスクアレイ装置110に書き込まれたデータが有効化される。
[ステップS40]書き込み制御部324は、書き込み処理部323からの書き込み完了通知を監視する。そして、書き込み制御部324は、書き込み処理部323からの書き込み完了通知を受信すると(S40:Yes)、ステップS41の処理を実行する。
[ステップS41]書き込み制御部324は、書き込み処理部323によってディスクアレイ装置110に書き込まれたデータの先頭アドレスを、書き込み処理部323から取得する。書き込み制御部324は、取得した先頭アドレスと、書き込みが終了したデータブロックのブロックIDとを、VL制御プロセッサ200内のデータ管理テーブル212に登録する。この登録処理により、書き込み処理部323によってディスクアレイ装置110に書き込まれたデータが有効化される。
以上の図11の処理によれば、書き込み制御部324は、圧縮書き込み処理のうちのデータ圧縮処理(S31)と、非圧縮書き込み処理(S32)とを並列に実行させる。そして、書き込み制御部324は、データ圧縮処理が終了した時点で(S33)、データ量A1,A2に基づいて、圧縮書き込み処理と非圧縮書き込み処理のどちらの処理時間が短いかを判定する(S34〜S36)。圧縮書き込み処理の処理時間の方が短いか、または各処理時間が同じであると推定される場合(S36:Yes)、書き込み制御部324は、圧縮書き込み処理を続行させるとともに、非圧縮書き込み処理を中止させる(S37)。一方、非圧縮書き込み処理の処理時間の方が短いと推定される場合(S36:No)、書き込み制御部324は、非圧縮書き込み処理を続行させるとともに、書き込み処理部322による圧縮データの書き込み処理を実行させないことで、圧縮書き込み処理を中止させる。
このような処理により、第2の実施の形態と同様に、ディスクアレイ装置110へのデータ書き込み全体の処理時間を確実に短縮することができ、ディスクアレイ装置110やテープライブラリ装置120における記憶容量をできるだけ削減しつつ、データ書き込み効率を高めることができる。また、データブロックの圧縮処理が終了した後は、書き込み処理部322,323のうち一方のみが書き込み処理を実行するので、第2の実施の形態と比較して、チャネルプロセッサ300のCPU301の処理負荷を軽減できる。
なお、圧縮処理部321による圧縮処理の処理時間がデータブロックに関係なく一定である場合には、図11のステップS35で検出されるデータ量A2は一定値となる。そこで、書き込み制御部324は、ステップS35,S36の処理を実行する代わりに、ステップS34で検出したデータ量A1(または残存率R1)を、あらかじめ決められたしきい値と比較してもよい。この場合、書き込み制御部324は、データ量A1(または残存率R1)がしきい値以下の場合、ステップS37の処理を実行する一方、データ量A1(または残存率R1)がしきい値より大きい場合、ステップS40の処理を実行する。
〔第4の実施の形態〕
上記の第2,第3の実施の形態では、圧縮書き込み処理と非圧縮書き込み処理とが並列に実行される期間があることから、チャネルプロセッサ300のCPU301の処理負荷が高くなる恐れがある。このため、圧縮書き込み処理と非圧縮書き込み処理とを並列に実行することで、チャネルプロセッサ300の処理性能が悪化し、データブロックごとの書き込み処理に要する時間がかえって長くなってしまう可能性がある。そこで、以下の第4の実施の形態では、CPU301の処理負荷が高い場合には、圧縮書き込み処理と非圧縮書き込み処理の一方のみが実行されるようにして、CPU301の処理負荷が高くなり過ぎないようにする。
図12は、第4の実施の形態のチャネルプロセッサおよびVL制御プロセッサが備える処理機能の例を示すブロック図である。なお、図12では、図7に対応する処理ブロックには同じ符号を付して示している。
第4の実施の形態のチャネルプロセッサ300は、第2,第3の実施の形態に対してさらに処理負荷検出部351を備える。処理負荷検出部351は、チャネルプロセッサ300が備えるCPU301の使用率を検出する。また、第4の実施の形態のチャネルプロセッサ300において、書き込み制御部324は、次の図13に示すように、CPU301の使用率がしきい値を超えた場合には、圧縮書き込み処理と非圧縮書き込み処理の一方のみが実行されるように制御する。
図13は、第4の実施の形態のチャネルプロセッサによるディスクアレイ装置へのデータ書き込み処理手順の例を示すフローチャートである。
[ステップS61]書き込み制御部324は、処理負荷検出部351からCPU301の使用率を取得する。CPU301の使用率が所定のしきい値を超えている場合(S61:Yes)、書き込み制御部324は、ステップS63の処理を実行する。一方、CPU301の使用率が所定のしきい値以下である場合(S61:No)、書き込み制御部324は、ステップS62の処理を実行する。
[ステップS62]書き込み制御部324は、図10または図11に示した処理を実行して、受信処理部311によってホスト装置500から受信されてRAM302に格納されたデータブロックをディスクアレイ装置110に書き込む処理を、圧縮処理部321および書き込み処理部322,323に実行させる。
この後、ホスト装置500から書き込みを要求された書き込みデータを構成するデータブロックのうち、ディスクアレイ装置110に書き込んでいないデータブロックがある場合には、書き込み制御部324は、ステップS61の処理を実行する。ただし、図示しないが、書き込みデータを構成するすべてのデータブロックがディスクアレイ装置110に書き込み済みである場合には、書き込み制御部324は、処理を終了する。
[ステップS63]書き込み制御部324は、変数Nとして、あらかじめ決められた値を設定する。例えば、書き込み制御部324は、あらかじめ決められた値をHDD303から読み込む。この処理において変数Nとして設定される値は、圧縮書き込み処理または非圧縮書き込み処理の一方のみを連続して実行する回数を示すものであり、1以上の整数とされる。
[ステップS64]書き込み制御部324は、圧縮処理部321に、データブロックの圧縮処理を実行させる。
[ステップS65]圧縮処理部321による圧縮処理が終了し、得られた圧縮データがRAM302に格納されると、書き込み制御部324は、得られた圧縮データのデータ量D1を検出する。この処理では、書き込み制御部324は、例えば、圧縮データのデータ量D1を圧縮処理部321から取得する。
[ステップS66]書き込み制御部324は、書き込み処理部322に、圧縮データをディスクアレイ装置110に書き込む処理を実行させる。
これらのステップS64,S66の処理により、圧縮書き込み処理が実行されることになる。
[ステップS67]書き込み処理部322による圧縮データの書き込み処理が終了すると、書き込み制御部324は、書き込み処理部322によってディスクアレイ装置110に書き込まれたデータの先頭アドレスを、書き込み処理部322から取得する。書き込み制御部324は、取得した先頭アドレスと、書き込みが終了したデータブロックのブロックIDとを、VL制御プロセッサ200内のデータ管理テーブル212に登録する。この登録処理により、書き込み処理部322によってディスクアレイ装置110に書き込まれたデータが有効化される。
[ステップS68]ホスト装置500から書き込みを要求された書き込みデータを構成するデータブロックのうち、ディスクアレイ装置110に書き込んでいないデータブロックがある場合には、書き込み制御部324は、ステップS65で検出した圧縮データのデータ量D1と、所定のしきい値とを比較する。データ量D1がしきい値以下である場合(S68:Yes)、書き込み制御部324は、ステップS69の処理を実行する。一方、データ量D1がしきい値より大きい場合(S68:No)、書き込み制御部324は、ステップS74の処理を実行する。
なお、図示しないが、書き込みデータを構成するすべてのデータブロックがディスクアレイ装置110に書き込み済みである場合には、書き込み制御部324は、処理を終了する。
また、上記のステップS65では、圧縮データのデータ量D1の代わりに、例えば残存率R1が検出されてもよい。この場合、ステップS68では、書き込み制御部324は、残存率R1がしきい値以下である場合、ステップS69の処理を実行し、残存率R1がしきい値より大きい場合、ステップS74の処理を実行する。
また、ステップS65でのデータ量D1(または残存率R1)の検出処理は、圧縮処理の終了後、ステップS68の処理開始時までの間のどの段階で実行されてもよい。
[ステップS69]書き込み制御部324は、圧縮処理部321に、次のデータブロックについての圧縮処理を実行させる。
[ステップS70]圧縮処理部321による圧縮処理が終了し、得られた圧縮データがRAM302に格納されると、書き込み制御部324は、書き込み処理部322に、圧縮データをディスクアレイ装置110に書き込む処理を実行させる。
これらのステップS69,S70の処理により、圧縮書き込み処理が実行されることになる。
[ステップS71]書き込み処理部322による圧縮データの書き込み処理が終了すると、書き込み制御部324は、書き込み処理部322によってディスクアレイ装置110に書き込まれたデータの先頭アドレスを、書き込み処理部322から取得する。書き込み制御部324は、取得した先頭アドレスと、書き込みが終了したデータブロックのブロックIDとを、VL制御プロセッサ200内のデータ管理テーブル212に登録する。この登録処理により、書き込み処理部322によってディスクアレイ装置110に書き込まれたデータが有効化される。
[ステップS72]書き込み制御部324は、変数Nを「1」だけデクリメントする。
なお、ステップS71,S72の処理順は逆であってもよい。
[ステップS73]ホスト装置500から書き込みを要求された書き込みデータを構成するデータブロックのうち、ディスクアレイ装置110に書き込んでいないデータブロックがある場合には、書き込み制御部324は、変数Nが「0」であるかを判定する。変数Nが「1」以上である場合(S73:No)、ステップS69に戻り、書き込み制御部324は、次のデータブロックについての圧縮書き込み処理を圧縮処理部321および書き込み処理部322に実行させる。一方、変数Nが「0」である場合(S73:Yes)、書き込み制御部324は、ステップS61の処理を実行する。
[ステップS74]書き込み制御部324は、書き込み処理部323に、次のデータブロックをディスクアレイ装置110に書き込む非圧縮書き込み処理を実行させる。
[ステップS75]書き込み処理部323によるデータブロックの書き込み処理が終了すると、書き込み制御部324は、書き込み処理部323によってディスクアレイ装置110に書き込まれたデータの先頭アドレスを、書き込み処理部323から取得する。書き込み制御部324は、取得した先頭アドレスと、書き込みが終了したデータブロックのブロックIDとを、VL制御プロセッサ200内のデータ管理テーブル212に登録する。この登録処理により、書き込み処理部323によってディスクアレイ装置110に書き込まれたデータが有効化される。
[ステップS76]書き込み制御部324は、変数Nを「1」だけデクリメントする。
なお、ステップS75,S76の処理順は逆であってもよい。
[ステップS77]ホスト装置500から書き込みを要求された書き込みデータを構成するデータブロックのうち、ディスクアレイ装置110に書き込んでいないデータブロックがある場合には、書き込み制御部324は、変数Nが「0」であるかを判定する。変数Nが「1」以上である場合(S77:No)、ステップS74に戻り、書き込み制御部324は、次のデータブロックについての非圧縮書き込み処理を書き込み処理部323に実行させる。一方、変数Nが「0」である場合(S77:Yes)、書き込み制御部324は、ステップS61の処理を実行する。
以上の図13の処理では、ステップS61でCPU301の使用率が所定値以下であった場合には、圧縮書き込み処理と非圧縮書き込み処理の並列実行が開始される。そして、これらの処理のうち処理時間の短い方の処理によってディスクアレイ装置110に書き込まれたデータが有効とされる(S62)。
一方、ステップS61でCPU301の使用率が所定値を超える場合には、まず、データブロックについての圧縮書き込み処理が実行される(S64,S66)。さらに、圧縮書き込み処理で得られた圧縮データのデータ量(または残存率)に応じて、その後に連続するN個のデータブロックについて、圧縮書き込み処理(S69,S70)または非圧縮書き込み処理(S74)の一方のみが実行される。これにより、チャネルプロセッサ300のCPU301の処理負荷が軽減され、チャネルプロセッサ300の性能悪化が防止される。従って、データブロックごとの書き込み処理に要する時間が、通常状態(低負荷状態)で非圧縮のデータブロックをディスクアレイ装置110に書き込む処理に要する時間より長くなることを防止できる。
また、ステップS64での圧縮書き込み処理で得られた圧縮データのデータ量(または残存率)に応じて、その後に連続するN個のデータブロックについて、圧縮書き込み処理と非圧縮書き込み処理のどちらを実行するか決定される。連続するデータブロックについては、圧縮後のデータの残存率が近い値になる可能性が高いことから、上記処理により、ディスクアレイ装置110へのデータの書き込み処理時間を抑制する効果が得られる。
なお、以上の第2〜第4の実施の形態では、データ管理テーブル212をVL制御プロセッサ200が保持していたが、データ管理テーブル212は、例えば、チャネルプロセッサ300またはディスクアレイ装置110が保持していてもよい。
また、ディスクアレイ装置110に書き込むデータを圧縮するための処理機能(すなわち、圧縮処理部321、書き込み処理部322,323および書き込み制御部324)は、例えば、チャネルプロセッサ300ではなく、ディスクアレイ装置110が備えていてもよい。この場合、上記の各処理機能は、例えば、ディスクアレイ装置110内の複数のHDDを統括的に制御する制御回路によって実現されてもよいし、ディスクアレイ装置110内の各HDDが備える制御回路(インタフェース回路)によって実現されてもよい。
また、上記の第2〜第4の実施の形態で示したストレージシステムでは、ディスクアレイ装置110に書き込むデータを圧縮したが、他の例として、ディスクアレイ装置110に格納されたデータをテープライブラリ装置120内の磁気テープに書き込む際に、データの圧縮を行ってもよい。この場合、上記の圧縮処理部321、書き込み処理部322,323および書き込み制御部324の各処理機能を、例えば、ディスクアレイ装置110、デバイスプロセッサ400、テープライブラリ装置120のうちのいずれかが備えればよい。
また、上記の各実施の形態における情報処理装置やチャネルプロセッサの処理機能は、コンピュータによって実現することができる。その場合、各装置が有すべき機能の処理内容を記述したプログラムが提供され、そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記憶装置、光ディスク、光磁気記録媒体、半導体メモリなどがある。磁気記憶装置には、HDD、フレキシブルディスク(FD)、磁気テープなどがある。光ディスクには、DVD、DVD−RAM、CD−ROM/RWなどがある。光磁気記録媒体には、MO(Magneto-Optical disk)などがある。
プログラムを流通させる場合には、例えば、そのプログラムが記録されたDVD、CD−ROMなどの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムまたはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、ネットワークを介して接続されたサーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムに従った処理を実行することもできる。
上記については単に本発明の原理を示すものである。さらに、多数の変形、変更が当業者にとって可能であり、本発明は上記に示し、説明した正確な構成および応用例に限定されるものではなく、対応するすべての変形例および均等物は、添付の請求項およびその均等物による本発明の範囲とみなされる。
1 情報処理装置
11 記憶装置
12 書き込み部
13 圧縮部
14 書き込み制御部
15 メモリ
Da データ
Db 圧縮データ

Claims (7)

  1. データを記憶装置に書き込む書き込み部と、
    データを圧縮する圧縮部と、
    前記記憶装置への書き込みが要求された第1のデータを前記書き込み部が前記記憶装置に書き込む第1の処理と、前記第1のデータを前記圧縮部が圧縮し、圧縮により得られた第2のデータを前記書き込み部が前記記憶装置に書き込む第2の処理とを並行して実行させ、前記第1の処理と前記第2の処理のうち処理終了時刻が遅い方の処理を中止させる書き込み制御部と、
    を有することを特徴とする情報処理装置。
  2. 前記書き込み制御部は、前記第2の処理において前記圧縮部によって前記第2のデータが得られたとき、得られた前記第2のデータのデータ量と、前記第1のデータのうち前記第1の処理における書き込み未完了データのデータ量とを比較し、前記第2のデータのデータ量が前記書き込み未完了データのデータ量より大きい場合には、前記第1の処理を続行させるとともに前記第2の処理を中止させ、前記第2のデータのデータ量が前記書き込み未完了データのデータ量以下である場合には、前記第2の処理を続行させるとともに前記第1の処理を中止させることを特徴とすることを特徴とする請求項1記載の情報処理装置。
  3. 前記書き込み制御部は、前記第1の処理と前記第2の処理のうち一方の処理が終了したことを検出すると、終了していない他方の処理を中止させることを特徴とする請求項1記載の情報処理装置。
  4. 前記情報処理装置の処理負荷を検出する処理負荷検出部をさらに有し、
    前記書き込み制御部は、前記第1のデータの書き込み要求を受け付けたとき、前記処理負荷検出部によって検出された処理負荷を示す値が所定値を超える場合には、前記第1の処理を実行させずに前記第2の処理を実行させる、
    ことを特徴とする請求項1〜3のいずれか1項に記載の情報処理装置。
  5. 前記書き込み制御部は、前記処理負荷を示す値が所定値を超え、前記第2の処理を実行させたとき、前記圧縮部から得られた前記第2のデータのデータ量を検出し、前記第2のデータのデータ量が所定の判定しきい値以下である場合には、次に前記記憶装置への書き込みが要求されたデータについて、前記第1の処理を実行させずに前記第2の処理を実行させ、前記第2のデータのデータ量が前記判定しきい値を超える場合には、次に前記記憶装置への書き込みが要求されたデータについて、前記第2の処理を実行させずに前記第1の処理を実行させることを特徴とする請求項4記載の情報処理装置。
  6. 第1の記憶装置と、
    第2の記憶装置と、
    前記第1の記憶装置を一次ストレージとし、前記第2の記憶装置を二次ストレージとした階層型ストレージシステムの動作を制御するストレージ制御装置と、
    上位装置から前記階層型ストレージシステム内のデータに対するアクセスが要求されたとき、前記第1の記憶装置にアクセスするアクセス装置と、
    を有し、
    前記アクセス装置は、
    データを前記第1の記憶装置に書き込む書き込み部と、
    データを圧縮する圧縮部と、
    前記上位装置から前記階層型ストレージシステムへの書き込みが要求された第1のデータを前記書き込み部が前記第1の記憶装置に書き込む第1の処理と、前記第1のデータを前記圧縮部が圧縮し、圧縮により得られた第2のデータを前記書き込み部が前記第1の記憶装置に書き込む第2の処理とを並行して実行させ、前記第1の処理と前記第2の処理のうち処理終了時刻が遅い方の処理を中止させる書き込み制御部と、
    を有することを特徴とするストレージシステム。
  7. 情報処理装置が、
    記憶装置への書き込みが要求された第1のデータを前記記憶装置に書き込む第1の処理と、前記第1のデータを圧縮し、圧縮により得られた第2のデータを前記記憶装置に書き込む第2の処理とを並行して実行し、
    前記第1の処理と前記第2の処理のうち処理終了時刻が遅い方の処理を中止する、
    ことを特徴とする書き込み制御方法。

JP2013504477A 2011-03-17 2011-03-17 情報処理装置、ストレージシステムおよび書き込み制御方法 Expired - Fee Related JP5621909B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2011/056381 WO2012124100A1 (ja) 2011-03-17 2011-03-17 情報処理装置、ストレージシステムおよび書き込み制御方法

Publications (2)

Publication Number Publication Date
JPWO2012124100A1 JPWO2012124100A1 (ja) 2014-07-17
JP5621909B2 true JP5621909B2 (ja) 2014-11-12

Family

ID=46830228

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013504477A Expired - Fee Related JP5621909B2 (ja) 2011-03-17 2011-03-17 情報処理装置、ストレージシステムおよび書き込み制御方法

Country Status (3)

Country Link
US (1) US20140013068A1 (ja)
JP (1) JP5621909B2 (ja)
WO (1) WO2012124100A1 (ja)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8819208B2 (en) 2010-03-05 2014-08-26 Solidfire, Inc. Data deletion in a distributed data storage system
US9838269B2 (en) 2011-12-27 2017-12-05 Netapp, Inc. Proportional quality of service based on client usage and system metrics
US9054992B2 (en) 2011-12-27 2015-06-09 Solidfire, Inc. Quality of service policy sets
JP6381529B2 (ja) 2013-07-19 2018-08-29 株式会社日立製作所 ストレージ装置および記憶制御方法
JP6007332B2 (ja) * 2013-07-31 2016-10-12 株式会社日立製作所 ストレージシステム及びデータライト方法
US9025261B1 (en) * 2013-11-18 2015-05-05 International Business Machines Corporation Writing and reading data in tape media
US20150244795A1 (en) 2014-02-21 2015-08-27 Solidfire, Inc. Data syncing in a distributed system
WO2015145532A1 (ja) * 2014-03-24 2015-10-01 株式会社日立製作所 ストレージシステム及びデータ処理方法
US9798728B2 (en) 2014-07-24 2017-10-24 Netapp, Inc. System performing data deduplication using a dense tree data structure
US10133511B2 (en) 2014-09-12 2018-11-20 Netapp, Inc Optimized segment cleaning technique
US9671960B2 (en) 2014-09-12 2017-06-06 Netapp, Inc. Rate matching technique for balancing segment cleaning and I/O workload
US9836229B2 (en) 2014-11-18 2017-12-05 Netapp, Inc. N-way merge technique for updating volume metadata in a storage I/O stack
CA2876468C (en) * 2014-12-29 2023-02-28 Ibm Canada Limited - Ibm Canada Limitee System and method for selective compression in a database backup operation
US9720601B2 (en) 2015-02-11 2017-08-01 Netapp, Inc. Load balancing technique for a storage array
US9762460B2 (en) 2015-03-24 2017-09-12 Netapp, Inc. Providing continuous context for operational information of a storage system
US9710317B2 (en) 2015-03-30 2017-07-18 Netapp, Inc. Methods to identify, handle and recover from suspect SSDS in a clustered flash array
US9740566B2 (en) 2015-07-31 2017-08-22 Netapp, Inc. Snapshot creation workflow
US9400609B1 (en) * 2015-11-04 2016-07-26 Netapp, Inc. Data transformation during recycling
JP6524945B2 (ja) * 2016-03-25 2019-06-05 日本電気株式会社 制御装置、記憶装置、記憶制御方法およびコンピュータプログラム
US10929022B2 (en) 2016-04-25 2021-02-23 Netapp. Inc. Space savings reporting for storage system supporting snapshot and clones
US10642763B2 (en) 2016-09-20 2020-05-05 Netapp, Inc. Quality of service policy sets
WO2021181739A1 (ja) 2020-03-13 2021-09-16 富士フイルム株式会社 情報処理装置、情報処理方法、及び情報処理プログラム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002027209A (ja) * 2000-07-11 2002-01-25 Canon Inc メモリ制御装置及びその制御方法
JP2004258861A (ja) * 2003-02-25 2004-09-16 Canon Inc 情報処理方法
JP2010224996A (ja) * 2009-03-25 2010-10-07 Nec Corp ファイル送信方法、ファイル送信装置及びコンピュータプログラム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5317416A (en) * 1990-06-27 1994-05-31 Minolta Camera Kabushiki Kaisha Facsimile apparatus with a page printer having reduced memory capacity requirements
JP2000209795A (ja) * 1999-01-13 2000-07-28 Matsushita Electric Ind Co Ltd ステ―タコア及びその製造方法
US6885319B2 (en) * 1999-01-29 2005-04-26 Quickshift, Inc. System and method for generating optimally compressed data from a plurality of data compression/decompression engines implementing different data compression algorithms
US7493620B2 (en) * 2004-06-18 2009-02-17 Hewlett-Packard Development Company, L.P. Transfer of waiting interrupts
US20060077412A1 (en) * 2004-10-11 2006-04-13 Vikram Phogat Method and apparatus for optimizing data transmission costs
US20100162065A1 (en) * 2008-12-19 2010-06-24 Unity Semiconductor Corporation Protecting integrity of data in multi-layered memory with data redundancy
JP4911198B2 (ja) * 2009-06-03 2012-04-04 富士通株式会社 ストレージ制御装置、ストレージシステムおよびストレージ制御方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002027209A (ja) * 2000-07-11 2002-01-25 Canon Inc メモリ制御装置及びその制御方法
JP2004258861A (ja) * 2003-02-25 2004-09-16 Canon Inc 情報処理方法
JP2010224996A (ja) * 2009-03-25 2010-10-07 Nec Corp ファイル送信方法、ファイル送信装置及びコンピュータプログラム

Also Published As

Publication number Publication date
US20140013068A1 (en) 2014-01-09
WO2012124100A1 (ja) 2012-09-20
JPWO2012124100A1 (ja) 2014-07-17

Similar Documents

Publication Publication Date Title
JP5621909B2 (ja) 情報処理装置、ストレージシステムおよび書き込み制御方法
JP5785484B2 (ja) テープ媒体に格納されたデータのアクセス・シーケンスを決定するための方法、システム、およびコンピュータ・プログラム
US8108597B2 (en) Storage control method and system for performing backup and/or restoration
US8996799B2 (en) Content storage system with modified cache write policies
JP4402103B2 (ja) データ記憶装置、そのデータ再配置方法、プログラム
JP5310480B2 (ja) ストレージ制御装置および方法
US20090089501A1 (en) Method of prefetching data in hard disk drive, recording medium including program to execute the method, and apparatus to perform the method
JPH05307440A (ja) データ記憶フォーマット変換方式及びその変換方法及びアクセス制御装置及びデータアクセス方法
US10346051B2 (en) Storage media performance management
US11221989B2 (en) Tape image reclaim in hierarchical storage systems
JP6011153B2 (ja) ストレージシステム、ストレージ制御方法およびストレージ制御プログラム
US7315922B2 (en) Disk array apparatus, information processing apparatus, data management system, method for issuing command from target side to initiator side, and computer product
JP2017211920A (ja) ストレージ制御装置、ストレージシステム、ストレージ制御方法およびストレージ制御プログラム
US20210224002A1 (en) Storage control apparatus and storage medium
JP5729479B2 (ja) 仮想テープ装置及び仮想テープ装置の制御方法
JP6225731B2 (ja) ストレージ制御装置、ストレージシステムおよびストレージ制御方法
JP2007102436A (ja) ストレージ制御装置およびストレージ制御方法
JP6142608B2 (ja) ストレージシステム、制御装置および制御方法
JP2020177274A (ja) ストレージ装置、ストレージシステムおよびプログラム
JP6928249B2 (ja) ストレージ制御装置およびプログラム
JP2005129168A (ja) 情報記録装置と情報記録方法とプログラム
JP2005115983A (ja) 記録再生装置及び記録方法
JP3030949B2 (ja) ディジタルデータ記録再生装置
JP4288929B2 (ja) データストレージ装置及びデータストレージ方法
JP2024001607A (ja) 情報処理装置および情報処理方法

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140527

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140725

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140908

R150 Certificate of patent or registration of utility model

Ref document number: 5621909

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees