JP2004005634A - 記憶装置アレイ内の複数の記憶媒体にわたり負荷を均等に分散させる方法 - Google Patents

記憶装置アレイ内の複数の記憶媒体にわたり負荷を均等に分散させる方法 Download PDF

Info

Publication number
JP2004005634A
JP2004005634A JP2003128628A JP2003128628A JP2004005634A JP 2004005634 A JP2004005634 A JP 2004005634A JP 2003128628 A JP2003128628 A JP 2003128628A JP 2003128628 A JP2003128628 A JP 2003128628A JP 2004005634 A JP2004005634 A JP 2004005634A
Authority
JP
Japan
Prior art keywords
storage
data
array
processor
access 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.)
Pending
Application number
JP2003128628A
Other languages
English (en)
Inventor
Brian Patterson
ブライアン・パターソン
Jonathan Condel
ジョナサン・コンデル
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.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Development Co LP
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 Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of JP2004005634A publication Critical patent/JP2004005634A/ja
Pending legal-status Critical Current

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
    • 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/061Improving I/O performance
    • G06F3/0613Improving I/O performance in relation to throughput
    • 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/0647Migration 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/0653Monitoring storage devices or systems
    • 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/0689Disk arrays, e.g. RAID, JBOD
    • 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
    • G06F2003/0697Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers device management, e.g. handlers, drivers, I/O schedulers

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】特定のテ゛ータに入出力要求が集中した際に生じるホ゛トルネックを解消させるRAIDシステムを提供すること。
【解決手段】将来的に頻繁にアクセスされるテ゛ータとなる可能性のあるテ゛ータがアレイ式記憶装置(102)に記憶されているか否かを予測する(404)再分配モシ゛ュール(230)を採用するシステム及び方法。該再分配モシ゛ュール(230)は、アレイ(102)内の1つ又は2つ以上の記憶構成要素(216)上の高頻度アクセステ゛ータを探し出し、該高頻度アクセステ゛ータをアレイ(102)内の全ての記憶構成要素(216)に均等に再分配して、単一の記憶構成要素(216)が不釣り合いな量の高頻度アクセステ゛ータを含まないようにする。アレイ(102)内の全ての記憶構成要素(例えばテ゛ィスク)(216)への高頻度アクセステ゛ータの均等な再分配は、該アレイ中(102)の単一の記憶構成要素(216)における入出力上のホ゛トルネックの防止に資するものとなる。これにより、入出力が一層ハ゜ラレルな態様で処理されて、記憶装置アレイ(102)の全体的な性能が向上する。
【選択図】 図4

Description

【0001】
【発明の属する技術分野】
本開示は、アレイ式記憶装置に関し、特に、頻繁にアクセスされるデータをかかるアレイ式記憶装置内のビジーな記憶媒体から一層ビジーでない記憶媒体へと再分配して均等な付加分散を提供する方法に関する。
【0002】
【従来の技術】
RAID(redundant array of independent disks)ディスクアレイ等のアレイ式記憶装置は、個々のハードディスク等の単一媒体式記憶装置よりも優れた性能と信頼性を提供するよう設計されたデータ記憶装置である。単一媒体式記憶装置に勝るアレイ式記憶装置の性能上の利点は、多数の読み書き要求を単一ディスク上でシリアルに処理するのではなく、該読み書き要求を多数のディスク(すなわちRAID装置)にわたってパラレルに処理する能力によるものである。概して、RAID装置は、所定の時間内に単一ディスクが処理できるよりも多くの入出力(I/O)を処理することができる。
【0003】
しかし、アレイ式記憶装置で達成可能な単一媒体式記憶装置よりも優れている性能上の優位性は、アレイ式装置(すなわちRAID装置)内の複数のディスクにわたって入出力が均等に分散されている度合いに直接関係する。したがって、ホストコンピュータの多数の入出力要求の全てが、例えば20ディスクアレイのうちのディスク#1に記憶されたデータに向けられる環境では、該20ディスクアレイは単一媒体式記憶装置に勝る利点を提供するものとはならない。ディスク#1に記憶されたデータに対する頻繁なアクセスは、該ディスクドライブ#1においてボトルネックを生じさせ、アレイ式記憶装置を使用する際の単一媒体式記憶装置に勝るホストコンピュータにとっての利点は、該頻繁にアクセスされるデータに関して大幅に低減されることになる。
【0004】
データストライピングは、アレイが実行できる同時入出力動作の数を最大限にすべくディスクドライブアレイ全体にわたり均等にデータ及び入出力を分散させるためにRAID装置で使用される技術である。データストライピングは、複数のディスクドライブを連結して1つの論理的な記憶装置とし、各ドライブの記憶空間を多数のストライプへと分割する(該ストライプは、1セクタ(512バイト)程度の小さいもの又は数メガバイト程度の大きなものとすることが可能である)。かかる多数のストライプは、結合された空間が各ドライブからのストライプで交互に構成されるようにラウンドロビン方式で交互に配置される。大きいデータストライプと小さいデータストライプのどちらがより有益であるかは、用途の環境のタイプによって決まる。入出力の多い環境では、1ストライプを1レコードが収まる程度の大きさにした場合に性能が最適化される。データの多い環境では、長いレコードほどより高速のアクセスが可能となるため、ストライプは小さい方がよい(一般に1セクタが512バイト)。
【0005】
データストライピングは一般に、アレイ式記憶装置に記憶されたデータに一層多くの並列アクセスを提供するものとなるが、これは、特定のデータが頻繁にアクセスされる場合に単一ディスク式ドライブに生じ得るボトルネックの問題を解決するものではない。データストライピングは、データが現在頻繁にアクセスされているか又は将来頻繁にアクセスされることになるかは考慮しない。更に、データが一旦「ストライプ化」されると、該データは、同じディスク上の同じ場所に記憶され続ける。したがって、ホストコンピュータが、特定のデータに関する入出力要求でディスクアレイ内の特定のディスクドライブを攻める環境が生じた場合は、最初にデータを記憶した際にデータストライピングを使用したという事実に関係なく特定のディスクドライブにボトルネックが生じることになる。
【0006】
【発明が解決しようとする課題】
したがって、頻繁にアクセスされるデータとなる可能性のあるデータがアレイ式記憶装置内に記憶されているか否かを判定し、該データを該アレイ内の複数の記憶構成要素にわたって分散させて、作業負荷を一層均等に分散させ、及び入出力操作が一層パラレルな態様で生じるようにする、方法が必要とされている。
【0007】
【課題を解決するための手段】
本発明のシステム及び方法は、頻繁にアクセスされるデータとなる可能性のあるデータがアレイ式記憶装置に記憶されているか否かを判定する再分配モジュールを使用する。該再分配モジュールは、アレイ内の1つ又は2つ以上の記憶構成要素上の高頻度アクセスデータを探し、その高頻度アクセスデータを、単一の記憶構成要素が不釣り合いな量の高頻度アクセスデータを含まないようにアレイ内の全ての記憶構成要素に再分配する。
【0008】
一実施形態では、記憶装置アレイ内の再分配モジュールは、該記憶装置アレイ内の各記憶構成要素の作業負荷レベルを示す作業負荷情報を収集するよう構成される。再分配モジュールは、予測アルゴリズムを実行して作業負荷情報を分析して、記憶構成要素上に記憶された何れかのデータが将来的に頻繁にアクセスされる可能性のある高頻度アクセスデータであるか否かを予測する。次いで、予測アルゴリズムにより高頻度アクセスデータであると見なされたデータを該当する(1つ又は2つ以上の)記憶構成要素上で探し出し、該データを記憶装置アレイ内の全ての記憶構成要素にわたり均等に再分配する。
【0009】
もう1つの実施形態では、記憶装置アレイ内の再分配モジュールは、以前に該アレイのメモリに入力された予知情報にアクセスするよう構成される。該予知情報は、該アレイに記憶されている特定のデータが将来的に頻繁にアクセスされることになることを示すものである。再分配モジュールは、その高頻度アクセスデータを探し出して記憶装置アレイ内の全ての記憶構成要素にわたり均等に再分配する。
【0010】
【発明の実施の形態】
以下、図面を参照して本発明のシステム及び方法について解説する。なお、同図における同様の符号は同様の構成要素及び特徴を示している。
【0011】
本発明のシステム及び方法は、将来的に頻繁にアクセスされるデータとなる可能性のあるデータがアレイ式記憶装置に記憶されているか否かを予測するために再分配モジュールを採用する。該再分配モジュールは、アレイ内の1つ又は2つ以上の記憶構成要素上の高頻度アクセスデータを探し出し、該高頻度アクセスデータを、単一の記憶構成要素が不釣り合いな量の高頻度アクセスデータを含むことがないようにアレイ内の全ての記憶構成要素にわたって均等に再分配する。高頻度アクセスデータを記憶装置アレイ内の全ての記憶構成要素(例えばディスク)にわたって均等に再分配することにより、アレイ内の単一の記憶構成要素に入出力上のボトルネックが生じるのを防ぐことができる。入出力は一層並列的な態様で処理され、これにより記憶装置アレイの全体的な性能が改善される。
・高頻度アクセスデータを予測し、該高頻度アクセスデータをアレイ式記憶装置内の複数の記憶構成要素にわたって均等に再分配するシステム環境の一例
図1は、アレイ式記憶装置102に記憶されたどのデータが将来的に頻繁にアクセスされる可能性があるかを予測し、該データをアレイ式装置102の全ての記憶構成要素にわたって均等に再分配するのに適したシステム環境100を示している。本開示全体を通して、「高頻度アクセスデータ」という語句は、アレイ式記憶装置102に記憶されているデータのうち、ホスト装置104により頻繁にアクセスされる、データ、コード又はその他のかかる情報を示すために使用される。また、「記憶装置アレイ」、「アレイ」、及び「仮想アレイ」等の「アレイ式記憶装置」102及びその変形例は、本開示全体を通して、記憶性能を高めるという全般的な目的のために動作可能に結合された複数の記憶構成要素/装置を示すために使用される。記憶性能の目標は、典型的には、大容量記憶、1メガバイトの記憶容量当たりの低いコスト、高い入出力性能、並びに冗長性及び耐故障性による高いデータ可用性を含む。かかるアレイ102内に動作可能な状態で結合された複数の記憶構成要素/装置は、磁気ディスクドライブ、テープドライブ、光学式読み出し/書き込みディスクドライブ、固体素子ディスク等を含むことができる。かかる記憶構成要素は、データ記憶技術の分野で周知のものである。
【0012】
図1のシステム環境100は、ネットワーク106を介して(1つ又は2つ以上の)ホスト装置104に動作可能に結合されたアレイ式記憶装置102を含む。ネットワーク接続106は、例えば、LAN(ローカルエリアネットワーク)、WAN(広域ネットワーク)、イントラネット、インターネット、光ファイバケーブルリンク、直接接続、又はその他の適当な通信リンクを含むことができる。ホスト装置104は、例えば、アレイ式記憶装置102と通信するよう構成されたパーソナルコンピュータ(PC)、ラップトップコンピュータ、サーバ、ウェブサーバ、及びその他の装置を含む、様々な汎用的な計算処理装置として実施することができる。
【0013】
本開示は、上記で概略的に説明したように一連の記憶構成要素を使用する様々なタイプのアレイ式記憶装置102に適用することが可能である。更に、本書で開示するアレイ式記憶装置102は、仮想メモリ機能を含む仮想記憶装置アレイである。このため、本書で示す仮想記憶装置アレイ102は、ホスト104のアドレスと、該ホスト104のデータを仮想記憶装置アレイ102内に記憶させる際の実物理アドレスとの間に間接的なアドレスマッピング層(a layer of address mapping indirection)を提供する。該間接的なアドレスマッピングは、ホスト104に対してトランスペアレントな態様でアレイ102内の様々な物理的位置にデータを移動させることを可能にするポインタを使用する。
【0014】
例えば、ホスト装置104は、ホストアドレスHにデータを記憶することが可能であり、この場合、該ホスト104は、該アドレスが、仮想記憶装置アレイ102上のディスク#2のセクタ#56という物理位置を指しているものと考える。しかし、仮想記憶装置アレイ102は、該ホストデータをアレイ102内の全く異なる物理位置(例えばディスク#9のセクタ#27)へ移動し、常に該ホストデータを指すようにポインタ(すなわち間接的なアドレスマッピング層)を更新することが可能である。ホスト104は、データが仮想記憶装置アレイ102内の新たな物理位置に実際に移動されたことを知る必要がなく、引き続き同じホストアドレスHでデータにアクセスすることができる。
【0015】
例えば、仮想記憶装置アレイは、当業界で既知のものであり、例えば、階層(又はマルチレベル)RAIDシステムで現在実施されている。階層RAIDシステムは、アレイ内の同じ組のディスク上に共存する2つ又は3つ以上の異なるRAIDレベルを採用する。一般に、異なるRAIDレベルは異なる「性能」対「記憶効率」の利益を提供するものとなる。例えば、RAIDレベル1は、データの冗長性のためにディスクがミラーリングされるため、記憶効率が低く、RAIDレベル5は、多数のディスク上に記憶されたデータの冗長性を提供するパリティ情報を1つのディスク上に作成して記憶することにより、一層高い記憶効率を提供する。しかし、RAIDレベル1は、ランダムデータ書き込み時にRAIDレベル5よりも高速な性能を提供する。これは、ディスクに対してデータが更新される(すなわち書き込まれる)際にパリティ情報を再作成するためにRAIDレベル5の場合に必要となる多数の読み出し操作をRAIDレベル1が必要としないからである。
【0016】
階層RAIDシステムは、異なるRAIDレベルが提供する性能及び記憶効率の利益を最大限にするために、前述のような仮想記憶装置を使用して、マルチレベルアレイ内の異なるRAIDレベル間のデータの移動(すなわち再配置)を容易化する。したがって、階層RAIDアレイ内のディスク上の特定の位置でどのRAIDレベルが動作しているかに基づいて該特定の位置との間でデータが移動される。更に、階層RAIDシステムは、アレイ内のどのデータが最も最近に又は最も旧く書き込まれ又は更新されたデータかに基づいて、RAIDレベル間で移動させるデータを決定する。最も旧く書き込まれ又は更新されたデータは低性能で高記憶効率のRAIDレベルに移動され、最も最近書き込まれ又は更新されたデータは高性能で低記憶効率のRAIDレベルに移動される。このプロセスは、コンピュータ内でキャッシュ管理システムが動作する態様と類似している。
【0017】
階層RAIDシステムのように、図1のシステム環境100で開示する(1つ又は2つ以上の)仮想記憶装置アレイ102は、仮想記憶という思想を採用して該アレイ102内でのデータ移動を容易化する。しかし、特定の実施形態に関して以下で詳述するように、仮想記憶装置アレイ102は、記憶構成要素の作業負荷に基づいて、特定のデータをアレイ102内の全ての記憶構成要素(例えば、ディスク)にわたって均等に移動する。
・高頻度アクセスデータを予測し、該高頻度アクセスデータをアレイ式記憶装置内の複数の記憶構成要素にわたって均等に再分配するシステムの一実施形態
図2は、図1のシステム環境100で実施することが可能なホストコンピュータ装置104及びアレイ式記憶装置102の特定の実施形態を示すブロック図である。図1のアレイ式記憶装置102は、仮想RAID(独立したディスクの冗長アレイ)装置として実施される。ホスト装置104は、一般に、RAID装置102と通信するよう構成されたパーソナルコンピュータ(PC)、ラップトップコンピュータ、サーバ、ウェブサーバ、又はその他のコンピュータ装置として実施される。
【0018】
ホスト装置104は典型的には、プロセッサ200、揮発性メモリ202(例えばRAM)、及び不揮発性メモリ204(例えばROM、ハードディスク、フロッピーディスク、CD−ROM等)を含む。不揮発性メモリ204は、一般に、ホスト装置104のためのコンピュータにより読み出すことが可能な命令、データ構造、プログラムモジュール、及びその他のデータを記憶する。ホスト装置104は、様々なアプリケーションプログラム206を実施することが可能であり、該プログラムは、メモリ204に記憶され、及びプロセッサ200上で実行されて、RAID装置102にデータを記憶させ及びその後に該データを取り出すためにネットワーク接続106を介してRAID装置102に転送されるべきデータを作成し又は該データにアクセスする。かかるアプリケーション206は、例えば、ワードプロセッサ、スプレッドシート、ブラウザ、マルチメディアプレーヤ、イラスト作成ソフト、コンピュータ援用設計ツール等を実施するソフトウェアプログラムを含むことが可能である。したがって、ホスト装置104は、仮想RAID装置102により処理されるデータ入出力要求の通常のフローを提供する。
【0019】
RAID装置102は、一般に、(1つ又は2つ以上の)ホスト装置104等のコンピュータ装置のための連続的なデータ記憶及びデータ読み出しを提供し、また発生し得る様々な故障状態にかかわらずかかる動作を提供するよう設計される。このため、RAID装置102は、典型的には、複数のサブシステムのうちの1つが故障中であってもディスクアレイ102への継続的なアクセスを可能にする、コントローラ210(A),210(B)及び電源/冷却サブシステム212(A),212(B)といった冗長サブシステムを含むものとなる。更に、RAID装置102は、典型的には、コントローラ210(A),210(B)、電源/冷却サブシステム212(A),212(B)、及びディスクアレイ214内のディスクドライブ216といったアレイ構成要素のホットスワップ機能(すなわち、RAID装置102の稼働中に構成要素を取り外し及び交換する機能)を提供する。
【0020】
RAID装置102上のコントローラ210(A),210(B)は、互いに鏡像をなし(すなわち同様に形成され)、一般に、ディスクドライブ216上にデータを冗長的に記憶させ及び該データにアクセスするよう構成される。このため、コントローラ210(A),210(B)は、ディスクドライブ216にデータを保存する前に該データに妥当性検査タグを付与し、及びホスト装置104にデータを送る前にその妥当性検査タグをチェックしてディスクドライブ216からのデータの妥当性を保証するといったタスクを実行する。コントローラ210(A),210(B)はまた、ディスクドライブ216の故障の際に損失し得るデータを再生させることにより、かかる故障を許容するものとなる。
【0021】
RAID装置102上のコントローラ210は、典型的には、FC(ファイバチャネル)入出力プロセッサ218等の(1つ又は2つ以上の)入出力プロセッサ、(1つ又は2つ以上の)メインプロセッサ220、不揮発性(NV)RAM222、不揮発性メモリ224(例えばROM)、及びメモリ制御ASIC(特定用途向けIC)226等の1つ又は2つ以上のASICを含む。NV RAM222は、典型的には、(1つ又は2つ以上の)コントローラ210への電源が断たれた場合にNV RAM222内のデータを保持するバッテリバックアップ(図示せず)によりサポートされる。不揮発性メモリ224は、一般に、RAID装置102のための、コンピュータにより読み出すことが可能な命令、データ構造、プログラムモジュール、及びその他のデータを記憶する。
【0022】
したがって、不揮発性メモリ224は、ファームウェア228、データ再分配モジュール230、及び作業負荷情報232を含む。ファームウェア228は、一般に、プロセッサ220上で実行され、及び通常のディスクアレイ102の動作をサポートするよう構成される。ファームウェア228はまた、典型的には、RAID装置102で起こり得る様々な障害状況を処理するよう構成される。図2の実施形態では、再分配モジュール230は、後に詳述するように、プロセッサ220上で実行され、作業負荷情報232を収集し分析して、高頻度アクセスデータを予測し、該高頻度アクセスデータを複数のディスクドライブ216にわたって均等に再分配するよう構成される。
【0023】
FC入出力プロセッサ218は、ネットワーク接続106を介してホスト装置104からデータ及びコマンドを受け取る。FC入出力プロセッサ218は、標準的なプロトコル及び割込手順を介してメインプロセッサ220と通信して、冗長コントローラ210(B)にデータ及びコマンドを送り、及び一般にNV RAM222と様々なディスクドライブ216との間でデータを移動させてデータが冗長に記憶されることを保障する。
【0024】
メモリ制御ASIC226は、一般に、データ記憶及び読み出し、データ操作、及び冗長性管理等を、同様に形成されたコントローラ210(A),210(B)間の通信を介して制御する。メモリコントローラASIC226は、ディスクアレイ214内の複数のディスク216へとストライピングされるデータセクタのタグ付けを扱い、該複数のディスク216にわたりパリティ情報を書き込む。一般に、ASIC226により実行される機能は、汎用マイクロプロセッサ上で実行されるファームウェア又はソフトウェアで実行することも可能である。データストライピング及びパリティチェックは当業者に周知のところである。メモリ制御ASIC226はまた、典型的には、鏡像をなすメモリの全ての領域が(すなわち鏡像をなすコントローラ210(A),210(B)間で)同一であることの比較とECC(誤り検出訂正)誤りのチェックを定期的に確実に行うために、メモリ224の検査を促進させる内部バッファを含む(図示せず)。メモリ制御ASIC226は、検出した上述その他の誤りをプロセッサ220に通知する。ファームウェア228は、メモリ制御ASIC226により検出された誤りを許容性のある態様で管理するよう構成される。かかる管理態様として、冗長サブシステムを介してアレイ102のデータ破損を防止し又は検出された誤り/故障に対処して、アレイ102のクラッシュを防止することが挙げられる。
【0025】
上記のように、図2に仮想RAID装置102で示したような仮想記憶装置アレイ102の現時点での実施形態は、再分配モジュール230及び作業負荷情報232を含む。再分配モジュール230は、RAID装置102の通常の動作時に幾つかのタスクを実行するよう構成される。再分配モジュール230が実行するタスクの1つは、アレイ102内のディスクの作業負荷を監視し、該作業負荷に関する状態情報を収集するものである。再分配モジュール230は該情報を作業負荷情報232として記憶する。作業負荷情報232は、一般に、アレイ102内のディスク216がホスト装置104からのデータ入出力要求を処理する頻度を示す情報を含む。作業負荷情報232は更に、ホスト装置104の入出力要求を処理するためにアクセスされる正確なディスク位置(例えばアドレスやセクタ)に関する情報を含む。
【0026】
再分配モジュール230は、作業負荷情報232としてデータを収集し記憶することに加えて、該作業負荷情報232を使用して、アレイ102内のどのディスク216が最も「ビジー」でなくまた最も「ビジー」であるかを判定することができる。更に、再分配モジュール230は、将来的な作業負荷要件を予測するために、作業負荷情報232に格納されたデータを予測アルゴリズム234を介して分析する。該予測アルゴリズム234は、再分配モジュール230の一構成要素として図2に示されているが、メモリ224に記憶され必要に応じて再分配モジュール230により呼び出されて作業負荷情報232に格納されたデータを分析する別個のモジュールとすることも可能である。予測アルゴリズム234は、一般にアレイ102の作業負荷に関する過去の状態情報を操作して将来的な作業負荷要件を予測するよう構成されたアルゴリズムを含むことができる。より詳細には、予測アルゴリズム234は、作業負荷情報232内に収集された情報を操作して、ディスク216上のどのデータが将来的に最も頻繁にアクセスされそうかを判定する。予測アルゴリズム234の例として、時系列予測(TSF:time−series forecasting)アルゴリズムや最頻使用(MFU:most−frequently used)アルゴリズムが挙げられる。
【0027】
かかる「高頻度アクセスデータ」が複数のディスク216の何れかに存在するか否かを判定した後、再分配モジュール230が、該高頻度アクセスデータにアクセスし、該データをアレイ102内の全てのディスク216にわたり均等に再分配する(すなわち移動させる)。このため、高頻度アクセスデータであるデータに起因してホスト104の入出力要求を処理して極めて「ビジー」であったディスク216は、該高頻度アクセスデータが将来的にホスト104により必要とされた場合の作業負荷が少なくなる。更に、以前にアイドル状態であり又は「ビジー状態のディスク」ほど稼働していなかったディスク216は、将来的にかかる高頻度アクセスデータにアクセスするホストにより生成される作業負荷を等分に負担することになる。
【0028】
再分配は、典型的には、(1つ又は2つ以上の)「ビジーディスク」から高頻度アクセスデータを取得し、該データをあまりビジーでない複数のディスクに移動させることを含む。再分配はまた、移動プロセスの一部として、ビジーディスク上に一定量の高頻度アクセスデータを残すことを含むことが可能である。既知の量のデータを様々な記憶構成要素(例えば複数のディスク)に均等に分散させることができる様々な方法が知られている。
【0029】
再分配モジュール230は、上述のタスクに加えて、高頻度アクセスデータを複数のディスク216にわたって均等に移動させるための最小分断時間(least disruptive time)を決定するために、仮想RAID装置102の全体的な利用率を監視する。再分配モジュール230は、仮想記憶装置アレイ102の利用率を利用して、ホスト104の要求の処理に関連するフォアグラウンドタスクを妨げることのないバックグラウンドタスクで高頻度アクセスデータの移動を行う。フォアグラウンドタスクとして実行される場合には、データの移動は、ホスト104の入出力要求を処理するための全体的な時間を短縮するという一般的な目的の達成を妨げるものとなる可能性がある。
【0030】
更に、データの移動は、最小分断時間中に「アイドル」な活動として実行することができるが、高優先順位の要求又はホスト104の入出力要求を処理している間に、アレイにより使用されるデータ配置アルゴリズムの一部として実行することもできる。例えば、新しいデータ書き込みがアレイ102に送られたとき、該新しいデータ書き込みがシーケンシャルでなくランダムであることをアレイコントローラ210が判定することができる。ランダムな入出力の性質は、局所性の原理が時間に関して該当する、といったものである。すなわち、時刻Tにおいて新しい書き込みが書き込まれ又はアクセスされる場合には、該時刻Tのすぐ後に再び書き込まれ又はアクセスされる可能性が高いことになる。したがって、入出力がランダムであることが判定されると、アレイコントローラ210は、本書で上述したように、そのディスクがあまり「ビジー」でないか基づいて、個々のディスク216にデータを送ることができる。
【0031】
仮想RAID装置102の利用率を監視する様々な方法が存在する。例えば、コントローラ210をディスクアレイ214に結合させるために、典型的には光ファイバチャネル(図示せず)が使用される。光ファイバチャネルは、毎秒100メガバイトの最大データ転送速度を有することが可能である。光ファイバチャネルの利用率の低下は、一般に、ホスト104の入出力要求が減少したこと、及びその結果としてホスト入出力要求に悪影響を与えることなく他のタスクのために使用できる余分な容量が光ファイバチャネル上に残っていることを示す。このため、再分配モジュール230は、光ファイバチャネルを監視して、その全容量の特定のパーセントのしきい値よりも利用率が低くなったときを判定し、その時点で、高頻度アクセスデータを複数のディスク216にわたって均等に移動させるといったバックグラウンドタスクを開始する。上述のように、仮想RAID装置102の利用率を示すために監視することが可能な他の構成要素が存在する。光ファイバチャネルの使用はその一例にすぎない。
【0032】
図3は、図1のシステム環境100において実施することが可能なホストコンピュータ装置104及びアレイ式記憶装置102のもう1つの特定の実施形態を示すブロック図である。図2の実施形態と同様に、アレイ式記憶装置102は仮想RAID装置として実施され、ホスト装置104は一般にコンピュータ装置として実施される。該ホスト装置104は、図2の実施形態に関して上述したように構成される。仮想RAID装置102もまた、図2の実施形態に関して上述したように概ね構成されるが、本実施形態の場合には、再分配モジュール230は予測アルゴリズム234を含まず、また、作業負荷情報モジュール232は、メモリ224に記憶された予知情報モジュール300に置換されている。
【0033】
図3の実施形態では、再分配モジュール230は、図2の実施形態で示したものとほぼ同じタスクを実行する。しかし、再分配モジュール230は、どのデータが将来的に高頻度アクセスデータになりつつあるかを特定する予知情報300がRAID装置102に入力されたことを認識するよう構成される。特定の環境下では、ユーザは、RAID装置102に記憶されている特定のデータが高頻度アクセスデータになるであろうという予知情報を有することが可能である。かかる情報をアレイ102に入力し予知情報300として記憶することができる。再分配モジュール230は、該予知情報300を認識し、該予知情報300に応じて、識別された高頻度アクセスデータを探し出し、アレイ102の複数のディスク216にわたって均等に再分配(移動)するように構成される。このデータ移動プロセスは、図2の実施形態で説明したものと同様である。
・高頻度アクセスデータを予測し、該高頻度アクセスデータをアレイ式記憶装置内の複数の記憶構成要素にわたって均等に再分配する方法の例
次に、図4と図5を主に参照して、アレイ式記憶装置102に記憶されているどのデータが将来的に頻繁にアクセスされる可能性があるかを予測し、該データをアレイ式装置102の全ての記憶構成要素にわたって均等に再分配するための方法の例を説明する。この方法は、一般に、図1ないし図3に関して上述したようなシステム100の実施形態に適用される。
【0034】
図4及び図5は、高頻度アクセスデータとなりそうなデータがアレイ式記憶装置102内の1つ又は2つ以上の記憶構成要素に記憶されていることを予測し又は判定する一般的な方法の例を示している。この方法はまた、かかる高頻度アクセスデータを、図2及び図3の仮想RAID装置102といったアレイ式記憶装置102内の複数の記憶構成要素(例えばディスク216)にわたって如何に均等に分散させるかを示している。
【0035】
図4のブロック400で、再分配モジュール230が、図2の仮想RAID装置102内のディスク216といった、アレイ式記憶装置102内の記憶構成要素に関する作業負荷情報232を収集する。該作業負荷情報232は、アレイ式記憶装置102のメモリ224に記憶される。ブロック402で、再分配モジュール230が、収集された作業負荷情報232にアクセスする。ブロック404で、予測アルゴリズム234を実行して作業負荷情報232を分析し、アレイ式記憶装置102内のどの記憶構成要素上のどのデータが将来的に頻繁にアクセスされそうな高頻度アクセスデータであるかを予測する。
【0036】
ブロック406で、再分配モジュール230がアレイ式記憶装置102の利用率を監視する。該利用率は、継続的に監視することが可能であり、又は予測アルゴリズム234により高頻度アクセスデータが予測された場合に監視することも可能である。図2の実施形態に関して上述したように、該利用率は、一般に、アレイ式記憶装置102がホスト104の入出力要求を処理している割合を示す。ブロック408で、アレイ式記憶装置102の全体的な利用率の低下に基づいて最小分断時間に達したことが判定される。最小分断時間中に、再分配モジュール230は、ブロック410に示すように、アレイ式記憶装置102内の記憶構成要素にわたって均等にデータを再分配し又は移動させる。
【0037】
図5の方法は、ブロック500で開始して、アレイ式記憶装置102のメモリ224に予知情報300を記憶する。該予知情報300は、ユーザにより入力され、アレイ式記憶装置102に記憶されている特定のデータが高頻度アクセスデータになることを示す情報である。ブロック502で、再分配モジュール230が、該予知情報300にアクセスして、アレイ式記憶装置102に記憶されているどのデータが高頻度アクセスデータであるかを判定する。ブロック504で、アレイ式記憶装置102の利用率を監視し、ブロック506で、アレイ式記憶装置102の全体的な利用率の低下によって最小分断時間に達したことを判定する。最小分断時間中に、再分配モジュール230は、ブロック508に示すように、アレイ式記憶装置102内の記憶構成要素にわたって均等にデータを再分配し又は移動させる。
【0038】
以上の説明は、構造的な特徴及び/又は方法論的な操作に特有の言葉を使用しているが、併記の特許請求の範囲に定義された発明は、示した固有の特徴又は操作に限定されないことを理解されたい。より正確に言うと、この特定の特徴及び操作は、本発明を実現する例示的な形態として開示されている。
【図面の簡単な説明】
【図1】アレイ式記憶装置に高頻度アクセスデータが記憶されているか否かを予測し、及び高頻度アクセスデータをアレイ式装置内の複数の記憶構成要素にわたり均等に再分配するのに適したシステム環境を示す説明図である。
【図2】図1のシステム環境において実施することができるホストコンピュータ装置とアレイ式記憶装置の特定の実施形態をより詳細に示すブロック図である。
【図3】図1のシステム環境において実施することができるホストコンピュータ装置とアレイ式記憶装置のもう1つの実施形態をより詳細に示すブロック図である。
【図4】アレイ式記憶装置に高頻度アクセスデータが記憶されているか否かを予測し、その高頻度アクセスデータをアレイ式装置内の複数の記憶構成要素にわたり均等に再分配する方法の一例を示すフローチャートである。
【図5】アレイ式記憶装置に高頻度アクセスデータが記憶されているか否かを予測し、その高頻度アクセスデータをアレイ式装置内の複数の記憶構成要素にわたり均等に再分配する代替的な方法の一例を示すフローチャートである。
【符号の説明】
102    記憶装置アレイ
216    記憶構成要素
218,220プロセッサ
224    メモリ
230    再分配モジュール
232    作業負荷情報
234    予測アルゴリズム
300    予知情報

Claims (10)

  1. プロセッサにより実行することが可能な命令を含む、プロセッサにより読み出しを行うことが可能な媒体であって、該命令が、
    記憶装置アレイ(102)内の複数の記憶構成要素(216)に関する作業負荷情報(232)を収集し(400)、
    該作業負荷情報(232)に基づいて少なくとも1つの記憶構成要素(216)が高頻度アクセスデータを含むことを予測し(404)、
    該高頻度アクセスデータを前記記憶装置アレイ(102)内の全ての記憶構成要素(216)にわたって均等に再分配する(410)、
    という各ステップを行うよう構成されている、プロセッサにより読み出しを行うことが可能な媒体。
  2. 前記予測ステップが、
    前記作業負荷情報(232)にアクセスし(402)、
    該作業負荷情報(232)に関して動作する予測アルゴリズム(234)を実行する(404)、
    という各ステップを更に含む、請求項1に記載のプロセッサにより読み出しを行うことが可能な媒体。
  3. 前記再分配ステップ(410)が、
    前記少なくとも1つの記憶構成要素(216)上の前記高頻度アクセスデータを探し出し、
    前記少なくとも1つの記憶構成要素(216)から高頻度アクセスデータを除去し、
    前記記憶装置アレイ(102)内の全ての記憶構成要素(216)に高頻度アクセスデータを均等に記憶させる、
    という各ステップを更に含む、請求項1に記載のプロセッサにより読み出しを行うことが可能な媒体。
  4. プロセッサにより実行することが可能な命令を含む、プロセッサにより読み出しを行うことが可能な媒体であって、該命令が、
    記憶装置アレイ(102)内の複数の記憶構成要素(216)に関する作業負荷情報(232)を収集し(400)、
    該作業負荷情報(232)に基づいて、最もビジーでない記憶構成要素(216)と最もビジーな記憶構成要素(216)とを判定し、
    新たなディスクアクセスがランダムな入出力であることを判定し、
    最もビジーでない記憶構成要素(216)を使用して前記新たなディスクアクセスを処理する、
    という各ステップを行うよう構成されている、プロセッサにより読み出しを行うことが可能な媒体。
  5. 複数の記憶構成要素を有する記憶装置アレイ内の、プロセッサにより読み出しを行うことが可能な媒体であって、
    予知情報(300)にアクセスして少なくとも1つの記憶構成要素(216)上のデータが高頻度アクセスデータであることを判定し(502)、
    該高頻度アクセスデータを前記記憶装置アレイ(102)内の全ての記憶構成要素(216)にわたって均等に再分配する、
    という各ステップを行うよう構成されたプロセッサにより実行することが可能な命令を含む、プロセッサにより読み出しを行うことが可能な媒体。
  6. 前記アクセスステップの前に前記記憶装置アレイ(102)上のメモリ(224)に前記予知情報(300)を記憶し、
    前記アクセスステップ(502)が、前記メモリ(224)内の前記予知情報(300)にアクセスすることを含む、
    という各ステップを行うよう構成されたプロセッサにより実行することが可能な命令を更に含む、請求項5に記載のプロセッサにより読み出しを行うことが可能な媒体。
  7. 2つ又は3つ以上の記憶構成要素(216)と、
    記憶構成要素の作業負荷情報(232)にアクセスし、該作業負荷情報(232)に基づいて高頻度アクセスデータを前記2つ又は3つ以上の記憶構成要素(216)にわたって均等に再分配するよう構成された、再分配モジュール(230)と
    を含む、記憶装置アレイ。
  8. 前記再分配モジュール(230)の一部として構成され、前記作業負荷情報(232)を分析して前記高頻度アクセスデータを予測する、予測アルゴリズム(234)を更に含む、請求項7に記載の記憶装置アレイ。
  9. プロセッサ(218,220)と、
    2つ又は3つ以上の記憶構成要素(216)と、
    予知情報(300)を記憶したメモリ(224)と、
    前記プロセッサ(218,220)上で実行することが可能な再分配モジュール(230)であって、その実行時に、前記メモリ(224)にアクセスして、前記予知情報(300)から、前記2つ又は3つ以上の記憶構成要素(216)上のどのデータが高頻度アクセスデータであるかを判定し、該高頻度アクセスデータを前記2つ又は3つ以上の記憶構成要素(216)にわたって均等に再分配する、再分配モジュール(230)と
    を含む、記憶装置アレイ。
  10. 2つ又は3つ以上のディスク(216)と、
    該2つ又は3つ以上のディスク(216)のうちの1つに記憶された高頻度アクセスデータを判定し、及び該高頻度アクセスデータを該2つ又は3つ以上のディスク(216)にわたって均等に再分配するよう構成された、再分配モジュール(230)とを含む、独立した複数のディスクの冗長アレイ(RAID)。
JP2003128628A 2002-05-08 2003-05-07 記憶装置アレイ内の複数の記憶媒体にわたり負荷を均等に分散させる方法 Pending JP2004005634A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/140,968 US6912635B2 (en) 2002-05-08 2002-05-08 Distributing workload evenly across storage media in a storage array

Publications (1)

Publication Number Publication Date
JP2004005634A true JP2004005634A (ja) 2004-01-08

Family

ID=29399533

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003128628A Pending JP2004005634A (ja) 2002-05-08 2003-05-07 記憶装置アレイ内の複数の記憶媒体にわたり負荷を均等に分散させる方法

Country Status (2)

Country Link
US (1) US6912635B2 (ja)
JP (1) JP2004005634A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006251896A (ja) * 2005-03-08 2006-09-21 Nec Corp ディスク管理装置及びディスク負荷情報取得方法
US7552278B2 (en) 2005-06-24 2009-06-23 Fujitsu Limited Disk array access dynamic control device and method
JP2009193546A (ja) * 2008-02-18 2009-08-27 Nec Corp ディスクアレイ装置、ファームウェア交換方法およびファームウェア交換プログラム
US9501428B2 (en) 2011-12-21 2016-11-22 Fujitsu Limited Managing apparatus
US9703504B2 (en) 2011-12-19 2017-07-11 Fujitsu Limited Storage system, recording medium storing data rebalancing program, and data rebalancing method

Families Citing this family (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7134053B1 (en) * 2002-11-22 2006-11-07 Apple Computer, Inc. Method and apparatus for dynamic performance evaluation of data storage systems
US7613945B2 (en) 2003-08-14 2009-11-03 Compellent Technologies Virtual disk drive system and method
US9489150B2 (en) 2003-08-14 2016-11-08 Dell International L.L.C. System and method for transferring data between different raid data storage types for current data and replay data
US7185163B1 (en) * 2003-09-03 2007-02-27 Veritas Operating Corporation Balancing most frequently used file system clusters across a plurality of disks
US7139846B1 (en) * 2003-09-30 2006-11-21 Veritas Operating Corporation Computer system and method for performing low impact backup operations
JP4514501B2 (ja) * 2004-04-21 2010-07-28 株式会社日立製作所 ストレージシステム及びストレージシステムの障害解消方法
US7213103B2 (en) * 2004-04-22 2007-05-01 Apple Inc. Accessing data storage systems without waiting for read errors
US7383400B2 (en) * 2004-04-22 2008-06-03 Apple Inc. Method and apparatus for evaluating and improving disk access time in a RAID system
JP2006011803A (ja) * 2004-06-25 2006-01-12 Hitachi Ltd 情報処理システムおよびその制御方法
US7065611B2 (en) * 2004-06-29 2006-06-20 Hitachi, Ltd. Method for controlling storage policy according to volume activity
GB0419599D0 (en) * 2004-09-03 2004-10-06 Ibm Controlling preemptive work balancing in data storage
US7761678B1 (en) * 2004-09-29 2010-07-20 Verisign, Inc. Method and apparatus for an improved file repository
US7222223B2 (en) * 2004-10-29 2007-05-22 Pillar Data Systems, Inc. Management of I/O operations in data storage systems
US7606934B1 (en) * 2005-03-10 2009-10-20 Sun Microsystems, Inc. Dynamic routing of I/O requests in a multi-tier storage environment
EP2357552A1 (en) 2006-05-24 2011-08-17 Compellent Technologies System and method for RAID management, reallocation and restriping
US7552280B1 (en) 2006-06-28 2009-06-23 Emc Corporation Asymmetrically interleaving access to redundant storage devices
US8271140B2 (en) 2006-08-25 2012-09-18 International Business Machines Corporation Periodic rotational vibration check for storage devices to compensate for varying loads
US8312214B1 (en) 2007-03-28 2012-11-13 Netapp, Inc. System and method for pausing disk drives in an aggregate
US7984259B1 (en) * 2007-12-17 2011-07-19 Netapp, Inc. Reducing load imbalance in a storage system
US8560639B2 (en) 2009-04-24 2013-10-15 Microsoft Corporation Dynamic placement of replica data
US8769049B2 (en) * 2009-04-24 2014-07-01 Microsoft Corporation Intelligent tiers of backup data
US8769055B2 (en) * 2009-04-24 2014-07-01 Microsoft Corporation Distributed backup and versioning
US8935366B2 (en) * 2009-04-24 2015-01-13 Microsoft Corporation Hybrid distributed and cloud backup architecture
US8751738B2 (en) 2010-02-08 2014-06-10 Microsoft Corporation Background migration of virtual storage
US8671265B2 (en) 2010-03-05 2014-03-11 Solidfire, Inc. Distributed data storage system providing de-duplication of data using block identifiers
US8433848B1 (en) * 2010-03-30 2013-04-30 Emc Corporation Analysis tool for a multi-tier storage environment
US9003157B1 (en) * 2010-06-30 2015-04-07 Emc Corporation Techniques for dynamic data storage configuration in accordance with an allocation policy
KR101702392B1 (ko) * 2010-08-20 2017-02-06 삼성전자주식회사 반도체 저장 장치 및 상기 반도체 저장 장치의 성능 조절 방법
US8862807B2 (en) * 2010-08-20 2014-10-14 Samsung Electronics Co., Ltd. Semiconductor storage device and method of throttling performance of the same
KR101702393B1 (ko) * 2010-08-20 2017-02-23 삼성전자주식회사 반도체 저장 장치 및 상기 반도체 저장 장치의 성능 조절 방법
KR101756130B1 (ko) * 2010-08-20 2017-07-27 삼성전자주식회사 반도체 저장 장치 및 상기 반도체 저장 장치의 성능 조절 방법
US9037548B1 (en) * 2011-06-30 2015-05-19 Emc Corporation Dynamically updated data management processing plans generated outside a storage array
CN103092526B (zh) 2011-10-31 2016-03-30 国际商业机器公司 在存储设备间进行数据迁移的方法和装置
US9003021B2 (en) * 2011-12-27 2015-04-07 Solidfire, Inc. Management of storage system access based on client performance and cluser health
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
JP6142599B2 (ja) * 2013-03-18 2017-06-07 富士通株式会社 ストレージシステム、ストレージ装置および制御プログラム
US20150244795A1 (en) 2014-02-21 2015-08-27 Solidfire, Inc. Data syncing in a distributed system
US10484470B2 (en) * 2014-05-09 2019-11-19 International Business Machines Corporation Peak cyclical workload-based storage management in a multi-tier storage environment
US9454321B1 (en) * 2014-05-30 2016-09-27 Emc Corporation Workload-driven storage configuration management
US9798728B2 (en) 2014-07-24 2017-10-24 Netapp, Inc. System performing data deduplication using a dense tree data structure
US9671960B2 (en) 2014-09-12 2017-06-06 Netapp, Inc. Rate matching technique for balancing segment cleaning and I/O workload
US10133511B2 (en) 2014-09-12 2018-11-20 Netapp, Inc Optimized segment cleaning technique
US9836229B2 (en) 2014-11-18 2017-12-05 Netapp, Inc. N-way merge technique for updating volume metadata in a storage I/O stack
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
US10678641B2 (en) 2015-03-31 2020-06-09 EMC IP Holding Company LLC Techniques for optimizing metadata resiliency and performance
US9740566B2 (en) 2015-07-31 2017-08-22 Netapp, Inc. Snapshot creation workflow
US10929022B2 (en) 2016-04-25 2021-02-23 Netapp. Inc. Space savings reporting for storage system supporting snapshot and clones
US10545674B1 (en) * 2016-06-30 2020-01-28 EMS EP Holding Company LLC Method and system for SSD performance jitter detection and avoidance
US10642763B2 (en) 2016-09-20 2020-05-05 Netapp, Inc. Quality of service policy sets
US10146459B1 (en) * 2017-04-28 2018-12-04 EMC IP Holding Company LLC Disk activity balancing in mapped raid storage arrays by data remapping
CN109213428B (zh) * 2017-06-30 2021-05-28 伊姆西Ip控股有限责任公司 用于管理存储系统的方法和设备
CN109725837B (zh) * 2017-10-27 2022-06-03 伊姆西Ip控股有限责任公司 管理存储系统的方法、系统和计算机程序产品

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2845901B2 (ja) * 1988-09-19 1999-01-13 株式会社日立製作所 超大容量情報記憶装置
US5392244A (en) * 1993-08-19 1995-02-21 Hewlett-Packard Company Memory systems with data storage redundancy management
JP3181446B2 (ja) * 1993-09-24 2001-07-03 株式会社東芝 情報記憶装置
US5664187A (en) * 1994-10-26 1997-09-02 Hewlett-Packard Company Method and system for selecting data for migration in a hierarchic data storage system using frequency distribution tables
US5542065A (en) * 1995-02-10 1996-07-30 Hewlett-Packard Company Methods for using non-contiguously reserved storage space for data migration in a redundant hierarchic data storage system
US5875456A (en) * 1995-08-17 1999-02-23 Nstor Corporation Storage device array and methods for striping and unstriping data and for adding and removing disks online to/from a raid storage array
US6314503B1 (en) * 1998-12-30 2001-11-06 Emc Corporation Method and apparatus for managing the placement of data in a storage system to achieve increased system performance
JP2000235457A (ja) * 1999-02-15 2000-08-29 Mitsubishi Electric Corp 階層型データ蓄積装置及びキャッシュデータ作成方法
US6233607B1 (en) * 1999-04-01 2001-05-15 Diva Systems Corp. Modular storage server architecture with dynamic data management
US6611726B1 (en) * 1999-09-17 2003-08-26 Carl E. Crosswhite Method for determining optimal time series forecasting parameters
EP1350199A4 (en) * 2000-10-27 2006-12-20 Manugistics Inc FORECASTING AND PLANNING PRODUCTION-DISTRIBUTION BASED ON CLIENT DEMAND
JP2002182859A (ja) * 2000-12-12 2002-06-28 Hitachi Ltd ストレージシステムおよびその利用方法

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006251896A (ja) * 2005-03-08 2006-09-21 Nec Corp ディスク管理装置及びディスク負荷情報取得方法
US7552278B2 (en) 2005-06-24 2009-06-23 Fujitsu Limited Disk array access dynamic control device and method
JP2009193546A (ja) * 2008-02-18 2009-08-27 Nec Corp ディスクアレイ装置、ファームウェア交換方法およびファームウェア交換プログラム
JP4530059B2 (ja) * 2008-02-18 2010-08-25 日本電気株式会社 ディスクアレイ装置、ファームウェア交換方法およびファームウェア交換プログラム
US8051415B2 (en) 2008-02-18 2011-11-01 Nec Corporation Disk array apparatus, method for exchanging firmware, program for exchanging firmware and storage medium for storing program thereof
US9703504B2 (en) 2011-12-19 2017-07-11 Fujitsu Limited Storage system, recording medium storing data rebalancing program, and data rebalancing method
US9501428B2 (en) 2011-12-21 2016-11-22 Fujitsu Limited Managing apparatus

Also Published As

Publication number Publication date
US20030212872A1 (en) 2003-11-13
US6912635B2 (en) 2005-06-28

Similar Documents

Publication Publication Date Title
US6912635B2 (en) Distributing workload evenly across storage media in a storage array
US6647514B1 (en) Host I/O performance and availability of a storage array during rebuild by prioritizing I/O request
US7058764B2 (en) Method of adaptive cache partitioning to increase host I/O performance
US9378093B2 (en) Controlling data storage in an array of storage devices
US5802345A (en) Computer system with a reduced number of command end interrupts from auxiliary memory unit and method of reducing the number of command end interrupts
US9104316B2 (en) Runtime dynamic performance skew elimination
US20090300283A1 (en) Method and apparatus for dissolving hot spots in storage systems
US5720025A (en) Frequently-redundant array of independent disks
US8726070B2 (en) System and method for information handling system redundant storage rebuild
KR100211788B1 (ko) 디스크 어레이의 고장 예측을 위한 데이타 처리방법및시스템
US7730257B2 (en) Method and computer program product to increase I/O write performance in a redundant array
US6898667B2 (en) Managing data in a multi-level raid storage array
US8370571B2 (en) Transfer control of a storage volume between storage controllers in a cluster
US20010049774A1 (en) Apparatus system and method for n-way raid controller having improved performance and fault tolerance
US20080256397A1 (en) System and Method for Network Performance Monitoring and Predictive Failure Analysis
US8495295B2 (en) Mass storage system and method of operating thereof
WO2015114643A1 (en) Data storage system rebuild
KR100208801B1 (ko) 데이타 입/출력 성능을 향상시키기 위한 기억장치 시스템 및 그에 따른 데이타 복구정보 캐시구현방법
US20040205297A1 (en) Method of cache collision avoidance in the presence of a periodic cache aging algorithm
Wu et al. Proactive data migration for improved storage availability in large-scale data centers
US20210294497A1 (en) Storage system and method for analyzing storage system
Qiao et al. Incorporate proactive data protection in ZFS towards reliable storage systems
Qiao et al. Developing cost-effective data rescue schemes to tackle disk failures in data centers
JPH10269695A (ja) コンピュータシステムにおける記憶装置の制御方式
JPH04329422A (ja) ディスクアレイ制御装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060501

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080219

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20080519

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20080522

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20081104