JP3860407B2 - ディスクアレイ記憶装置の負荷を平均化する方法 - Google Patents
ディスクアレイ記憶装置の負荷を平均化する方法 Download PDFInfo
- Publication number
- JP3860407B2 JP3860407B2 JP2000321949A JP2000321949A JP3860407B2 JP 3860407 B2 JP3860407 B2 JP 3860407B2 JP 2000321949 A JP2000321949 A JP 2000321949A JP 2000321949 A JP2000321949 A JP 2000321949A JP 3860407 B2 JP3860407 B2 JP 3860407B2
- Authority
- JP
- Japan
- Prior art keywords
- logical volume
- storage device
- data
- disk storage
- physical disk
- 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 - Lifetime
Links
- 238000000034 method Methods 0.000 title claims description 138
- 238000012935 Averaging Methods 0.000 title claims description 14
- 238000012546 transfer Methods 0.000 claims description 68
- 230000008569 process Effects 0.000 claims description 64
- 238000012545 processing Methods 0.000 claims description 49
- 238000004458 analytical method Methods 0.000 claims description 48
- 238000012360 testing method Methods 0.000 claims description 36
- 230000004044 response Effects 0.000 claims description 18
- 238000011156 evaluation Methods 0.000 claims description 5
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 238000012937 correction Methods 0.000 claims 1
- 230000000694 effects Effects 0.000 description 28
- 238000007726 management method Methods 0.000 description 25
- 238000013459 approach Methods 0.000 description 7
- 238000005259 measurement Methods 0.000 description 6
- 230000009471 action Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 238000013500 data storage Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 238000007429 general method Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 230000000153 supplemental effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
- G06F11/3433—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment for load management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3452—Performance evaluation by statistical analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
- G06F11/3485—Performance evaluation by tracing or monitoring for I/O devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0631—Configuration or reconfiguration of storage systems by allocating resources to storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0634—Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0653—Monitoring storage devices or systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B17/00—Guiding record carriers not specifically of filamentary or web form, or of supports therefor
- G11B17/22—Guiding record carriers not specifically of filamentary or web form, or of supports therefor from random access magazine of disc records
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
- G06F11/3419—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/86—Event-based monitoring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/885—Monitoring specific for caches
Description
(関連出願の説明)
本発明は1998年8月28日出願の米国特許出願番号09/143,683号の一部継続出願であり、同出願は継続中の1998年1月2日出願の米国特許出願番号09/002,428号の一部継続出願であり、同出願は継続中の1997年10月6日出願の米国特許出願番号08/944,606号の一部継続出願であり、これらは全て本発明と同一の出願人に譲渡されている。
本発明の出願人に譲渡されている、本発明と同日に出願された米国特許出願(代理人番号第07072/929001号)「記憶サブシステム制御用メールボックス」および、本発明と同日に出願された米国特許出願(代理人番号第07072/925001号)「非物理ミラー記憶環境におけるシーク調節を伴う動的ミラーサービス方法」が、参考文献として本明細書に組み込まれている。
【0002】
【発明の属する技術分野】
本発明は一般的にはデータ処理システムの資源管理に関し、より詳細にはディスクアレイ記憶装置の管理に関する。
【0003】
【従来技術】
現在では多くのデータ処理システムがディスクアレイ記憶装置に組み込まれている。これらのデバイスの各々は、論理ボリューム中に配置された複数の物理ディスクを有している。これらのディスク上のデータはコマンド、特に1つまたはそれ以上のホスト処理装置からの読取り/書込みコマンドに応答する種々の入出力制御プログラムを介してアクセス可能である。本発明の出願人による市販されているシメトリクス5500シリーズの統合キャッシュディスクアレイは、そのようなディスクアレイ記憶装置の1つの例である。この特定のアレイは、数テラバイト以上に達する大量のデータを記憶する能力を有する、複数の物理ディスク記憶装置またはドライブを備える。そのような資源の管理が非常に重要になる理由は、そのようなアレイの能力の非効果的な利用が、データ処理システム全体の効率に重大な影響を及ぼす可能性があるからである。
【0004】
一般的にシステム管理者は、直接アクセス記憶装置の初期化に際し、格納されるデータセットの幾つかの特性を決定する。これらの特性として、データセットサイズ、ボリューム名およびシステムによっては論理ボリュームと多重ホスト処理システムにおける特定ホスト処理装置との間の対応を挙げることができる。その後、システム管理者はこの情報を使用して、種々のデータセットを異なる物理デバイスに亘って分散させることによって、つまり、複数のアプリケーションによる物理デバイスの同時使用が回避されることを見込んで、ディスクアレイ記憶装置を構成する。この限定された情報に基づく割り当ては不適切になることがよくある。これが生じると、原構成(コンフィギュレーション)はデータ処理システム全体の効率を非常に低下させることがある。
【0005】
この問題を解消する1つの試みとして、特定のデータセットをロードする前にディスクアレイ記憶装置の処理オペレーションの解析を先行させ、その後データセットのロード位置を決定することが提案されている。例えば、ハーツング(Hartung)他による米国特許第4,633,387号には、多重ユニットデータ処理システムにおける負荷平均化が開示されており、ここではホストは複数の記憶装置ディレクタを介して複数のディスク記憶ユニットで作動する。このアプローチによれば、最も忙しくない記憶装置ディレクタがより繁忙な記憶装置ディレクタになすべき仕事を要求する。繁忙側記憶装置ディレクタは仕事送り側ユニットとして、仕事要求側または非繁忙側記憶装置ディレクタに仕事を供給する。
【0006】
マクブライド(McBride)他による米国特許第5,239,649号には、アプリケーションの長時間実行の間にチャネルパス上の負荷を平均化するシステムが開示されている。この負荷平均化方式によれば、ボリュームの選択は呼側ホストに類似性のあるものによってなされる。それぞれの結合チャネルパスにまたがる負荷も計算される。異なるアプリケーションから生じる負荷の異なる大きさを考慮して、最少の不使用チャネルパスに結合されたボリュームを選択するよう計算は加重される。最適ボリュームは次ぎに処理されるボリュームとして選択される。その後、ボリューム処理と関連する負荷は、それぞれの結合チャネルパスに亘って平均的に分散していると仮定して、各チャネル上のモニターされた負荷が、新しく選択されたボリュームと関連する負荷を含むように更新される。その結果、後続のボリュームの選択は更新された負荷情報に基づくことになる。この方法は、直ちに次の残余ボリューム選択処理の間継続する。
【0007】
別のアプローチとして、ページ(Page)による米国特許第3,702,006号には、多重タスキング可能なデータ処理システムにおける負荷平均化が開示されている。連続する割り当てルーチンの間の時間間隔を通して、各入出力デバイスが各々のタスクによりアクセスされる回数がカウントされる。各割り当てがなされている間、カウントと時間間隔を利用した解析が行われ、現在のタスクによる各デバイスの利用度が評価される。割り当て中のタスクによる予想利用度も同様に評価される。その後、平均化された入出力活動度を得るために、評価された現在の利用度と予想利用度とが、データセットを最少利用度の入出力デバイスへ割り付ける試みの基準として考慮され使用される。
【0008】
前述の参考文献の各々は、データセットについての明確な、または推定された知識に基づく、個々のデータセットの特定の位置を選択することによって負荷平均化が得られるシステムを開示している。個々のデータセットは手動で再構成しない限り所定の物理ディスクに残ったままになる。いずれのシステムもディスクアレイ記憶システム内に存在するデータセットの動的な再割り付けまたは配置による負荷平均化の実現を示唆していない。
【0009】
別の負荷平均化アプローチは、冗長な別の物理ディスクドライブ間での読取り処理の分割を含んでいる。冗長性は記憶システムを構成する際にもやはり考慮されるべきものであり、種々の記憶システムの実現のための重要な要因になってきている。1998年10月6日に発行された米国特許第5,819,310号は、ミラーデータを記憶するための2つのデバイスコントローラと、関連ディスクドライブとを含むディスクアレイ記憶装置を備える、冗長記憶システムを開示している。ディスクドライブの各々は論理ボリュームに分割されている。各デバイスコントローラは異なる読取り処理をもたらすことがあり、対応するディスクドライブからデータを取り出す際に使用される読取り処理を確立する、対応テーブルを含んでいる。各ディスクコントローラは、対応テーブルを使用して適切な読取り処理を選択するために、また指定された論理ボリュームを含む適切な物理記憶装置からデータを転送するために、論理ボリュームを識別する読取りコマンドに応答する。
【0010】
従って、このミラーシステムが実行される場合、単一の論理ボリュームを含む読取り処理は必ずしも単一の物理デバイスから生じるのではない。むしろ特定の論理ボリュームの異なる部分に対する読込みコマンドは、論理ボリューム中の予め選択されたトラックから読取るためのミラーデータのいずれか1つに向けることができる。このような処理を行うことによって、限定された負荷平均化がもたらされて、シークタイムが減少する。
【0011】
他の冗長技法やストライプ技法は、論理ボリュームを、隣接する記憶場所のブロック内の個々の物理ドライブ上に格納されるサブボリュームに分割することによって、負荷を複数のドライブに亘って分散する傾向にある。しかし、物理ドライブが、複数の論理ボリューム、サブボリュームまたは隣接する記憶場所の他の形式のブロックを有していると、その最終的な結果は、物理ディスクドライブの全体については負荷を平均化しない場合がある。つまり、前述の参考文献のいずれも、現実の使用に基づく物理アドレス空間の動的再割り当てを提供する方法を開示も示唆もしていない。
【0012】
【発明が解決しようとする課題】
したがって本発明の目的は、複数の物理ディスク記憶装置のデータの動的再割り当てを可能にして、各々の物理ディスク記憶装置上のロード要求のいかなる不均衡も減少させることである。
【0013】
本発明の別の目的は使用上の不均衡を減少するために、物理ディスク記憶装置の相対利用度を決定することである。
【0014】
【課題を解決するための手段】
本発明によれば、少なくとも2つの物理ディスク記憶装置が複数の論理ボリューム内にあるデータを記憶し、各物理ディスク記憶装置がデータを読取りまたは書込むためのデータ転送要求に応答して、ディスクアレイ記憶装置内の物理ディスク記憶装置上の負荷を平均化することが可能である。平均化が得られるのは、データ転送要求に応答して、物理ディスク記憶装置の所定のデバイス上の各論理ボリュームへのアクセス回数を含む、作動データを生成することによる。この方法では、作動データを、各所定の物理ディスク記憶装置のための、および所定の物理ディスク記憶装置中の各論理ボリュームのためのディスク利用値へと変換する。ディスクの利用値を解析すれば、交換を行うと所定の物理ディスク記憶装置に対する負荷の均衡を改善できる論理ボリューム対の選択が可能になる。一旦この方法が識別を行うと、選択された論理ボリュームが選択される。
【0015】
本発明の別の態様によれば、少なくとも2つの物理ディスク記憶装置が複数の論理ボリューム内にデータを格納し、各物理ディスク記憶装置がデータを読取りまたは書き込むためのデータ転送要求に応答して、ディスクアレイ記憶装置中の物理ディスク記憶装置上の負荷を平均化することが可能である。この方法は、解析間隔および含まれている解析サブ間隔の長さを決定し、データ転送要求に応答して、物理ディスク記憶装置の所定のデバイス上の各論理ボリュームへのアクセス回数を含む作動データを、各サブ間隔のために生成する段階を含む。この方法によって、各サブ間隔の間に得られる作動データは、各所定の物理ディスク記憶装置、および所定の物理ディスク記憶装置中の各論理ボリュームのためのディスク利用値へと変換される。これらのディスク利用値の解析によって、交換を行うと所定の物理記憶装置に対する負荷のバランスを改善する1対の論理ボリュームが選定される。この方法は選択論理ボリュームの交換によって終了する。
【0016】
本発明のさらに別の態様によれば、少なくとも2つの物理ディスク記憶装置が複数の論理ボリューム内にあるデータを格納し、各物理ディスク記憶装置がデータを読取り書き込むためのデータ転送要求に応答して、ディスクアレイ記憶装置中の物理ディスク記憶装置上の負荷を平均化することが可能である。この方法は解析間隔の長さを決定し、かつデータ転送要求に応答して、物理ディスク記憶装置の所定のデバイス上の各論理ボリュームへのアクセス回数を含む作動データを、各サブ間隔のために生成することで開始する。この方法によって、各サブ間隔の間に得られる作動データは、各所定の物理ディスク記憶装置、および所定の物理ディスク記憶装置中の各論理ボリュームのためのディスク利用値へと変換される。ディスク利用値の解析によって、交換を行うと所定の物理記憶装置に対する負荷のバランスを改善する1対の論理ボリュームの選定がもたらされる。この方法は選択論理ボリュームが自動的に交換された後に終了する。
【0017】
本発明のさらに別の態様によれば、少なくとも2つの物理ディスク記憶装置が複数の論理ボリューム内にあるデータを格納し、各物理ディスク記憶装置がデータを読取り書き込むたねのデータ転送要求に応答して、ディスクアレイ記憶装置中の物理ディスク記憶装置上の負荷を平均化することが可能である。この方法は第1の解析間隔の長さと、複数の第1の解析間隔を含む第2の解析間隔の長さとを定義することで開始する。作動データは、各々の第1および第2の解析間隔ごとに生成され、かつこの作動データはデータ転送要求に応答する物理ディスク記憶装置の所定のデバイス上の各論理ボリュームへのアクセス回数を含む。自動処理が実行され、各第1の解析間隔の間に行われる所定の作動データの処理に応答して、各第1の解析間隔の完了と同時に1対の論理ボリューム内にあるデータが交換される。1対の論理ボリューム内にあるデータの交換は各第2の解析が完了した際にも生じる。
【0018】
請求の範囲は本発明の主旨を特に指摘し明瞭にクレームしている。本発明の種々の対象、利点および新規な特徴は、同一の引用符号が同一部分を表す添付図面と併せて、以下の詳細な説明を読むことで完全に明らかになる。
【発明の実施の形態】
【0019】
図1は、ブロック図の形態で、典型的なデータ処理システム30として、例えば、多数のデータ記憶システムつまり物理ディスク記憶装置31A、31B、31C、31Dおよび31Eと、キャッシュメモリ33とを備えるシステムメモリ32といったデータメモリシステムを含む、シメトリクス5500シリーズの統合キャッシュディスクアレイを示している。この特定の実施形態において、データ処理システム30は、対応する物理ディスク記憶装置31Aから31Eの1つに接続された複数のデバイスコントローラ34A、34B、34Cおよび34Eと、物理ディスク記憶装置に接続された他のコントローラを表すデバイスコントローラ34Xとを含んでいる。各デバイスコントローラは、公知の基本構造または前記の米国特許第5,819,310号で説明したミラーオペレーションと関連するより高度な構造を備えることができる。
【0020】
デバイスコントローラ34Aは、ミラー論理ボリュームM1−LVA、M1−LVB、M1−LVCおよびM1−LVDに分割された、対応する物理ディスク記憶装置31Aとともに示されている。デバイスコントローラ34Eは、ミラー論理ボリュームM2−LVA、M2−LVB、M2−LVCおよびM2−LVDを格納する別の物理ディスク記憶装置31Eを制御する。物理ディスク記憶装置31Aおよび34E内の論理ボリュームは、ここでの説明の目的上、同一サイズを持つものとする。しかし、物理ディスク記憶装置内のミラーおよび非ミラー論理ボリュームは異なるサイズであってもよい。例えば、物理ディスク記憶装置31Bは2つの論理ボリュームLVEおよびLVFで表示されている。
【0021】
LVE論理ボリュームが物理ディスク記憶装置31A内の論理ボリュームと同一サイズであり、論理ボリュームLVFが論理ボリュームLVEのサイズの3倍の大きさであると仮定する。物理ディスク記憶装置31Cは論理ボリュームLVAと同一サイズの論理ボリュームLVHの2倍の大きさを有する論理ボリュームLVGを備えるように示されている。物理ディスク記憶装置31Dは、論理ボリュームLVIを備えており、これは論理ボリュームLVJの3倍のサイズであり、LVJは論理ボリュームLVAと同一サイズである。
【0022】
さらに、1つの物理ディスク記憶装置内のミラー化論理ボリュームは、単一ミラーリング物理ディスク記憶装置上にミラー化されることを必要とする要求はない。例えば、LVJとM2−LVA論理ボリュームの記憶場所は置き換えることができる。実際の運用においては、論理ボリュームの絶対的および相対的サイズや論理ボリュームの位置は変更できることは明らかである。
【0023】
さらに、図1を参照すると、単一の処理装置つまりホスト35、相互接続データアクセスチャネル36およびホストアダプタ37は、システムバス38でシステムメモリ32に接続する。典型的なデータ処理システム30は、多重ホストアダプタを含んでおり並列にシステムバス38に接続する。また、1つまたはそれ以上のホストが各ホストアダプタに接続している。
【0024】
システム管理コンソールつまりサービス処理装置40は、追加の処理装置を含み、これはデバイスコントローラ34Aへの並列または他の通信リンクによって、典型的には1つ以上のデバイスコントローラ34A等のデバイスコントローラを経由して、システムバス38に接続する。システム管理コンソール40は、システムオペレータがデータ処理システム30を構成、制御およびモニターするためのセットアップおよび診断プログラムを実行することを可能にする。本質的に、システム管理コンソール40は、オペレータがホストアダプタ37、デバイスコントローラ34Bおよびシステムメモリ32との通信を確立することを可能にする。種々のホスト、ディスクアダプタ、サービス処理装置管理システム間の通信の1つのアプローチが、前記の米国特許出願(代理人番号070721/929001)で説明されている。
【0025】
ホストアダプタ37またはデバイスコントローラ34A、34B等の構成要素がシステムメモリ32にアクセスする前に、この構成要素はシステムバス38へのアクセスを得る必要がある。従来のバスアクセスロジック41は、これらの構成要素からアクセス要求信号を受け取り、所定の時間にその構成要素のただ1つのみにアクセスを認める。多種多様の公知の調停スキームは、多重処理装置とシステムメモリ32等の共有システムメモリーとを用いるデータ記憶システムでの使用に適している。
【0026】
図2のシステムメモリ32は、付加的構成要素として、キャッシュメモリ33内に記憶されたデータアドレスを含む指示を与える、キャッシュ・インデックス・ディレクトリ42を含んでいる高速ランダムアクセス半導体メモリーであることが好ましい。好ましい実施形態において、キャッシュ・インデックス・ディレクトリ42は、論理デバイス、シリンダおよびトラックのための階層テーブルとして構成される。システムメモリ32はまた、データ構造43および待ち行列44のための領域を含む。システムメモリ32の基本オペレーションはヤナイ他による1993年4月27日に発行の米国特許第5,206,939号で説明されている。また、システムメモリ32、特にキャッシュメモリ33は永久キャッシュメモリーとして知られるメモリー領域を含むことができる。公知のように、データ構成要素は、それらが特別に消去されない限り永久キャッシュメモリー内に残る。
【0027】
各々のホストアダプタと各々のデバイスコントローラとの調整は、システムメモリ32、特にキャッシュメモリ33を各ホストアダプタと各デバイスコントローラ間のバッファとして使用することによって単純化される。そのようなシステムは、例えば米国特許第5,206,939号で説明されている。そのようなシステムではキャッシュメモリ33を管理する専用処理装置を備える必要がない。その代わりとして、ホストアダプタまたはデバイスコントローラの各々が、ホストアダプタ37内のキャッシュ管理プログラム45や、デバイスコントローラ34Aから34Xの各々のキャッシュ管理プログラム46A、46Bの1つといった、それぞれのキャッシュ管理プログラムを実行する。システム管理プログラム47は、システム管理コンソール40のために同様の機能を果たし、オペレータがシステムを構成するのを可能にする。キャッシュ管理プログラムの各々は、キャッシュ・インデックス・ディレクトリ42にアクセスし、種々のコマンドを記憶するためにデータ構造および待ち行列をオペレーションする。さらに詳細には、ホストアダプタ37内のキャッシュ管理プログラム45は、ホスト35からのデータをキャッシュメモリ32に書込み、キャッシュ・インデックス・ディレクトリ42を更新する。
【0028】
さらに、本発明によれば、各キャッシュメモリー管理部は統計量を収集する。特に、キャッシュメモリ管理部45は多数のパラメータに関する統計量を蓄積する。本発明の目的のためには、ホスト35または接続ホストによって要求される読取り/書込みオペレーションの数が重要である。同様に、各々のデバイスコントローラ34A−34X内の各々のキャッシュメモリ管理部46A−46Xは、各接続物理ディスク記憶装置上ににある論理ボリューム用の統計値を収集する。システム管理コンソール40内のモニタ50は、これらのキャッシュメモリー管理部を統合して所定間隔で適切な統計値を得る。
【0029】
前述のことから、論理ボリュームの負荷の全ての測定値に含まれるディスクオペレーションは、読取りおよび書込みオペレーションを含むことになる。読取りオペレーションはさらに読取りヒット、読取りミスおよびシーケンシャル読取りオペレーションに分類することができる。読取りヒットオペレーションは、読取るべきデータがキャッシュメモリ33内にある場合に発生する。読取りミスは読取るべきデータがキャッシュメモリ33内で利用できない場合に発生し、物理ディスク記憶装置から転送される必要がある。シーケンシャル読取りオペレーションは、アドレス指定された記憶場所から連続して生じる。
【0030】
システムは2つのタイプの書込みオペレーションで作動する。第1のオペレーションは、ホスト35からキャッシュメモリ33へデータを転送する。第2のタイプは、キャッシュメモリ33から物理ディスク記憶装置へデータを転送する。第2のタイプは、バックグラウンドモードで作動するので、データが物理ディスク記憶装置に書込まれる前に、ホスト35は、ある記憶場所に何度もデータを書込むことが可能である。したがって、第2のタイプの書込みオペレーション回数は、通常第1のタイプの書込みオペレーション回数に合致せずそれよりも少なくなる。
【0031】
このバックグラウンドで、本発明による論理ボリュームの物理ディスク上への適切な再割り当て決定方法が説明できる。プログラムは、各キャッシュメモリー管理部から周期的に統計量を取り出す、性能モニタ50から供給される情報に依存している。周期性は従来のサンプリング基準によって選択される。典型的な周期は15分ないし30分またはそれ以上である。統計量の各組がタイム・スタンプされて論理ボリュームによって蓄積されるので、読取りオペレーション回数、読取りヒット比率、シーケンシャル読取り比率およびテスト期間全体にわたる全読取りオペレーション回数が得られる。図1に示される負荷平均化プログラム51が図2Aおよび2Bにしたがって実行され、全体的には図3Aのステップ60によって示される、収集されモニターされた性能から一対の論理ボリュームの再割り当てまたは交換が生成される。
【0032】
詳細には、解析を行うべき時であれば、決定ステップ61として表示される待機ループは、ステップ62の性能モニタ50によってテスト期間に関係のある全ての統計量を検索する制御に進む。
【0033】
負荷平均化プログラム51は、ステップ63を使用して交換可能な論理ボリューム対のリストを判定する。このリストを判定する際に評価すべき幾つかの基準がある。まず第1に、交換可能論理ボリュームは同一サイズでなければならない。実際問題として殆どの論理ボリュームは比較的少数の物理サイズの1つから選択されることになる。第2に、交換される2つの論理ボリューム間の如何なる相互関係も調査して、交換を不可能にする何らかの理由があるか否かを判定する必要がある。例えば、同一物理ディスク記憶装置上の論理ボリュームの交換は一般的に殆どもしくは全く効果がない。前述の米国特許第5,819,310号で説明したミラーリングや他の冗長性は、利用可能かつ交換可能な論理ボリュームの対をさらに制限することがある。例えば、通常、ミラー論理ボリュームは同一の物理ディスク記憶装置上には、なおさら同一のコントローラまたは隣接コントローラ上にある物理ディスク記憶装置上には存在することが不可能である。RAID−5冗長性の場合、交換可能論理ボリューム対は通常同一のパリティー群内にある論理ボリュームに限られる。
【0034】
図1の特定の実施例において、サイズに従えば、論理ボリュームLVAないしLVE、LVHおよびLVJは、全て可能性のある交換候補である。同様に、論理ボリュームLVFとLVIは交換候補である。図2に示す特定の実施形態には、LVGと交換される候補としての論理ボリュームは無い。
【0035】
機能的基準を使用すれば、物理ドライブ31A中の論理ボリュームM1−LVAと交換できる可能性のある論理ボリュームとして、ミラー交換が効果がないと仮定すると、論理ボリュームLVE、LVHおよびLVJを挙げることができる。物理ディスク31A内の論理ボリュームLVAを、物理ディスク31E内のどの論理ボリュームLVBないしLVDと交換することも不可能であるが、この理由は、論理ボリュームLVAの両ミラーが同一の物理ディスクドライブ上に存在できるからである。他の可能性のある論理ボリューム対としては、LVA−LVH、LVH−LVJおよびLVE−LVJ対を挙げることができる。論理ボリュームLVFおよびLVIは、1つの交換可能対を規定する。つまり、この特定の実施形態においては、27個の論理ボリュームの交換可能対が存在する。
【0036】
ステップ64において、負荷平均化プログラムは、蓄積統計量および読取りヒット率を使用し、事前のテスト間隔にわたって各論理ボリュームに対する読取りミス値、シーケンシャル読取り値およびディスク書込み値を生成する。既に示したように、読取りミス値は、データを得るために物理ディスクドライブへアクセスすることを要求する読取りオペレーション回数に相当し、読取りヒットは、図2のキャッシュメモリ33内で要求データを見つける読取りオペレーションである。ステップ64が完了すると、各論理ボリュームに対し、読取りミスおよびディスク書込みオペレーションの合計値で表される論理ボリュームアクセス活動値、x、が存在することになる。
【0037】
論理ボリュームアクセス活動値は、他のオペレーションによって負わされる実際の負荷を反映するようにさらに改良され、または加重されることができる。例えば、各書込みオペレーションは、読取りミスオペレーションの半分の負荷を負わせるとみなすことができる。このような仮定を推し進められれば、論理ボリュームアクセス活動値は、全読取りミスオペレーション回数と全書込みオペレーション回数の半分との和に等しくなる。一連のシーケンシャル読取りオペレーションが生じれば、この系列における事象の数を4または他のある数で除して、シーケンシャルまたはランダム読取りオペレーションによって負わされるロードにおける差異を補償することができる。ミラー構成において、結果として読取りミスは、唯一1回の実行される読取りオペレーションを生じるが、各ミラーから1回ずつ、2回の可能性がある。したがって、ミラーシステムにおいて、ミラー論理ボリュームに対する読取りミス回数は、ミラーリングを補償するよう半分になる。
【0038】
ステップ65において、負荷平均化プログラム51は、各物理記憶装置ごとに合計した全加重アクセス活動値と、各物理記憶装置に関するその物理ディスク記憶装置上の各論理ボリュームに対する加重アクセス活動値とを識別するテーブルを構成する。この時点で、全平均物理アクセス活動値は同様に、物理ボリュームアクセス活動値を合計して物理デバイス数で除することによって得ることができる。
【0039】
図2Aにおけるステップ66が完了すると、制御は図2Bにおけるループ制御71の下でループを形成するステップ67および70へ進む。特にステップ67は図2Aにおけるステップ63で生成されたリストから1対の論理ボリュームを選択する。例えば、M1LVAとLVEの対が選択されると仮定する。ステップ70で、負荷平均化プログラム51は、まるでそれら2つの論理ボリュームが交換されたかのように、各物理ディスクドライブごとの活動度を取得するために蓄積された統計量を利用する。このループはリスト中の全ての論理ボリューム対が評価されるまで継続する。一旦このことが起きると、制御はステップ72に分岐して、以下の式に応じて各構成に対する統計的分散を定義する。
【0040】
すなわち、可能性のある構成について、負荷平均化プログラム51のステップ72は、論理ボリューム対を備えた物理ディスク記憶装置に対する平均アクセス活動値を決定し、各対が交換されたと仮定してステップ65で得られた物理ドライブアクセス活動値からの差異を取得する。その後、ステップ65は、各論理ボリューム対の交換に関する統計的分散を生成する。ステップ73において負荷平均化プログラム51は、最小統計的分散を生成する論理ボリューム対を選択する。前記の統計的分散を取得する処理は当業界では公知である。
【0041】
その選択の後、論理ボリューム対の同一性が選択の予備テストに使用される。前述したように、モニタ50は周期および記録時間ベースの離散的セットとしてデータを蓄積する。ステップ74において負荷平均化プログラムは全テスト間隔を1つまたはそれ以上のサンプリング期間を含むサブ間隔に細分する。次ぎに、各サブ間隔の、またはサブ間隔グループのアクセス活動値が決定される。物理ドライブで行われる交換に関するアクセス活動値が原活動値より小さければ、ステップ75はステップ76に分岐して交換を開始する。平均を超えるサブ期間が存在する場合、ステップ77はアクセス活動値が許容可能限界内にあるか否かを判定する。もし限界内にあれば、ステップ77内で交換が起きシステム内の構成テーブルが更新されて新しい構成を反映する。そうでない場合には交換は起きない。
【0042】
ステップ76が指定された論理ボリュームを交換する場合、バッファとして作動するよう物理ディスクドライブの1つに未使用領域を選定することで、そのような交換またはスワップが起こり得る。これは物理ディスク記憶装置内の未使用領域であってもよく、動的予備物理ディスク記憶装置内の未使用領域であってもよい。動的予備としての物理ディスク記憶装置の一般的な使用は、当業界では公知である。別の環境において、図2のキャッシュメモリ33等のキャッシュメモリーをバッファとして利用することも可能である。単一バッファを使用して論理ボリュームLVEとLVJとを交換するのであれば、並行コピーまたは他の転送シーケンスが、(1)LVE論理ボリュームをバッファに移し、(2)論理ボリュームLVJを物理ディスク記憶装置31B中の対応する領域に移し、(3)論理ボリュームバッファを物理ディスク記憶装置31D内の領域に移すことができる。並行コピーまたは他の同様な手段を利用すれば、転送期間中は幾分性能低下を伴うが、オンラインで交換を行うことも可能である。交換が完了した後、制御は分岐して図2Aのステップ60に戻り、モニタ50を開始して、それによって新構成に関する追加統計量を蓄積する。
【0043】
この特定の実施例によれば、物理ディスク記憶装置31B内の論理ボリュームLVEおよびLVFは共に非常にアクティブになっており、物理ディスク記憶装置31D上の論理ボリュームLVJは相対的に非アクティブであると想定する。他の全ての論理ボリュームが同等にアクティブである場合、論理ボリュームLVEおよびLVJが選択される時に、統計的分散が最小になるはずである。従って、それら2つのボリュームは交換され、それによって物理ディスク記憶装置31B上の負荷が小さくなり、物理ディスク記憶装置31D上の負荷が大きくなるであろうが、その程度は物理ディスク記憶装置31B上に存在する場合程大きくない。
【0044】
本発明は、交換を行うことができる更に別の方法を適用することもできる。
【0045】
図3には図1の回路の変更例が示されており、同一の要素には同一の引用符号が付与されている。図3の変更例は、基本的に、2つの特別に構成された論理ボリューム91および92を有するデバイスコントローラ90等の、1つまたはそれ以上の付加デバイスコントローラを備えている。これらは前述の米国特許第09/002,478号に説明されているBCVデバイス形式である。
【0046】
これらのデバイスはデータ再割り当てボリューム(DRV)と呼ばれ、BCVデバイスと区別される。これらはBCVデバイスと同一のESTABLISHおよびSPLITコマンドに応答して作動する。本発明を理解する目的において主たる相違は、これらのデバイスは内部記憶ボリュームであってシステムオペレータのみがシステム管理コンソールつまりサービス処理装置40を通じてアクセス可能であるという点にある。それらはユーザまたはアプリケーションが生成したI/O要求には直接利用できない。しかし、ユーザまたはアプリケーションに利用可能な論理ボリュームと対になる場合、それらはBCVのように作用する。つまり、ユーザまたはアプリケーションが生成した書込み要求が論理ボリュームによって受信されると、その書込み要求は確立されたDRVによって受信される。さらに、DRV論理ボリュームは、従来のBCVデバイスに組み込まれていない他のコマンドに応答する。
【0047】
交換を行って論理ボリューム対を再割り付けする要求がある時、システム管理コンソールつまりサービス処理装置40は、図4Aまたは4Bで説明される手順を利用して、論理ボリューム構成を制御する。図5Aはそのような交換で使用される複数の論理ボリューム100を表す。本発明の基本的なオペレーションを理解するためには、4つの物理ディスクドライブを考慮する必要がある。それらは物理ディスク記憶装置101、102、103および104を含んでいる。物理ディスク記憶装置101は、物理ディスク記憶装置110の一区域または一区画に格納されているM1ミラーである論理ボリュームLV1、すなわちLV1−M1論理ボリューム105を含む、3つの論理ボリュームを含むものとして示してある。この実施形態において、物理ディスク記憶装置101はまた、データをLV2−M3論理ボリューム106およびLV3−M1論理ボリューム107に記憶しているものとして示してある。物理ディスク記憶装置102は、LV4−M1論理ボリューム110、LV5−M1論理ボリューム111およびLV6−M1論理ボリューム112を含んでいる。本発明を理解するためには、LV1−M1論理ボリューム115およびLV4−M1論理ボリューム110が適切である。
【0048】
物理ディスク記憶装置103、104は、LVnおよびLVp論理ボリューム113、114を含んでいる。付加的記憶ボリュームが、物理ディスク記憶装置103上のボリューム115および物理ディスク記憶装置104上のボリューム116の形態で利用できる。論理ボリューム115、116も本発明にとって適切である。
【0049】
図5Aは、2つの実体のない物理ディスク記憶装置120、121を示している。これらはLV1記憶ボリュームについての第2のミラー、すなわち物理ディスク記憶装置120上のLV1−M2論理ボリュームと、LV4論理ボリュームについての第2のミラーとしての物理ディスク記憶装置121上にあるLV4−M2論理ボリューム123とを含む物理ディスク記憶装置である。LV1−M1およびLV1−M2ミラー論理ボリュームと、LV4−M1およびLV4−M2ミラー論理ボリューム等のミラー論理ボリュームとの相互作用が分かる。これらのミラー論理ボリュームが示されている理由は、本発明が通常ミラー論理ボリュームで実行されるからである。しかし、以下で明らかになるように、本発明は非ミラー論理ボリュームの交換においても有用である。
【0050】
再び図4Aを参照すると、システムオペレータがシステム管理コンソールつまりサービス処理装置40を通じて交換を開始する場合、オペレータは、LV1−M1およびLV4−M1論理ボリューム105、110等の、交換される論理ボリュームの識別子を提供する。システムオペレータはまた、図5A中のDRV1およびDRV2ボリューム115、116として示されている、データ再配置ボリュームとして使用される2つの論理ボリュームを識別する。
【0051】
そのようなデバイスにおいて、制御機能の多くは、種々のバージョンのマイクロコードで作動しているマイクロ処理装置によって実行される。最初に、ステップ130においてシステム管理40は多数のテストを実行し、様々なオペレーション条件を照合する。ステップ130は、例えば必要ファイルの存在と利用可能性を決定し、交換に関連するマイクロプロセッサが適切なコードバージョンで作動していることを確認する。これらのテストは普通はパスできる。もしそうでなければ、図4Aには示されていないエラーメッセ−ジが生成される。そのようなテストを行う種々のテストや手順は当業者には公知である。
【0052】
ステップ131はサービス処理装置40内の関連構成データをロックする。公知のようにロック処理は、特定のプログラム、この場合交換プログラム以外のプログラムがロックされた情報に影響を与えることができないようにする。このことにより、図4Aおよび4B中の残りのステップは、他のプログラムが何らかの衝突を生じたり構成データを損なう可能性なしに生じることができる。
【0053】
交換コマンドによって指定される種々の論理ボリュームもまた、ステップ132でテストされる。これらのテストは、例えばトラックテーブルの全てのビットトラック位置が有効であることの決定と、論理ボリュームが実行可能状態にあり、ユーザが論理ボリュームを用いたBCV Establishオペレーションを要求されていないことの決定とを含んでいる。別のテストをそのようなテストに追加して、あるいは代替的に使用できる。いずれかのテストで異常があると、制御はステップ133から134へ進んでその状態を知らせる。全てのテストに合格すると、制御はステップ135へ進み、ここでも構成情報が不注意に変更されないように、論理ボリューム構成にロックを行う。その後、ステップ136がこの構成内の種々のハードウェア構成要素のテストを行い、適切な交換オペレーションを保証する。これらのテストはステップ130で行われたテストと適用範囲が類似している。
【0054】
ステップ137はスワップされる2つの内部ディスクボリュームまたはデータ再配置ボリュームを識別する。図5の特定の実施例において、これらはDRV1およびDRV2論理ボリューム1115、116である。この処理における最善の一致は、DRV1およびDRV2論理ボリューム1115、116等の選択された論理ボリュームが、交換される論理ボリューム、この場合LV1−M1およびLV4−M1論理ボリューム105、110と良好に一致する場合に起こる。
【0055】
選択処理は、他の規則に従うように要求されることもある。例えば、DRV論理ボリュームは、同一論理ボリュームの別のミラーと同一のスピンドル上にある時は除外できる。この実施の形態において、DRV1論理ボリューム115は物理ディスク記憶装置120上に置かれるべきではない。DRV論理ボリュームは少なくとも交換される論理ボリュームと同一サイズであり、同一フォーマットを有する必要がある。この場合は、DRV1論理ボリューム115はLV1−M1およびLV4−M1論理ボリュームと同一サイズであると想定されている。DRV2論理ボリューム116は、代替的かつ許容可能なより大きい記憶容量を有しているものとして示されている。もしくは、DRV2論理ボリュームを適当なサイズに構成して、物理ディスク記憶装置の残余部、または物理ディスク記憶装置の割り当てられていない部分を他の目的に利用することができる。
【0056】
別のテストを行うと、DRV1およびDRV2論理ボリューム115、116が、LV1−M2論理ボリューム122またはLV4−M2論理ボリューム123に接続するメモリーバス等の、他のミラーと同一のメモリーバス上にないことを保証できる。特定の実施形態において、データ再配置ボリュームは同様に、他のミラーの2重ディスクアダプタまたはデバイスコントローラ上にないこと、または他のミラーと同一ディスクアダプタ上にないことを要求される場合がある。
【0057】
これらの全ての条件または別の条件が満たされると、ステップ140はステップ141に進む。そうでなければエラー状態が存在しているので、ステップ142に進んで適切なエラーメッセージを発生する。
【0058】
制御はステップ141へ進み、関連する物理ディスク記憶装置および論理ボリューム構成は図5Aに示されている。図4Aのステップ141は、ESTABLISHコマンドを各々の論理ボリューム対へ送る。第1の対はLV1−M1およびDRV1論理ボリューム105、115を含み、第2の対はLV4−M1およびDRV2論理ボリューム110、116を含む。
【0059】
本発明の出願人の特定の実施において、各論理ボリュームはデバイスヘッダを含み、各デバイスヘッダは4つのミラーまでのトラックテーブルを含む。各トラックテーブルは有効に2次元行列を定義し、各コラムは多数の論理ボリュームミラーM1、M2、M3およびM4の1つを表す。各行は論理ボリュームのトラックに対応する。前述の米国特許出願番号08/842,953で説明されるように、ESTABLISHコマンドは、LV1論理ボリューム105についての1つの論理ボリュームミラー(例えばトラックテーブルのM3コラム中のビット位置)を無効状態に割り当てることによって作動する。第2のESTABLISHコマンドは、同一機能をLV4−M1論理ボリューム110およびDRV2論理ボリューム116に対して実行する。2つのESTABLISHコマンドに関し、LV1−M1論理ボリューム105とLV4−M1論理ボリューム110とに関連づけされた、ディスクアダプタとも呼ばれる、各々のデバイスコントローラのコピープログラムは、それらのそれぞれのM3トラックステータスビットをテストする。各々の無効ビットに対して、コピープログラムは対応するトラック内のデータをDRV1およびDRV2論理ボリューム115、116の適切な1つに転送する。2つのESTABLISHコマンドは本質的に同時に送出でき、2つのDRV論理ボリュームへのデータの転送が同時に起こることは明らかである。
【0060】
BCVデバイスについても、これらの転送は、ユーザまたはアプリケーション・ソフトウェアが生成した入出力要求によるLVIおよびLV4へのデータ転送と並行かつ同時に起きる。つまり、このオペレーションは、ユーザまたはこれらの論理ボリューム内のデータを利用するアプリケーション・ソフトウェアのオペレーションに対して如何なる妨害も起こさない。図5Bは、ESTABLISHコマンドに応答するこれらの転送を示している。
【0061】
この処理を通じ信頼性に関するデータ冗長性の原レベルは同じままであることは明らかである。すなわち、LV1論理ボリューム内のデータが2つのミラーに複写される本実施形態において、LV1論理ボリューム内のデータは、ESTABLISH処理の間、論理ボリューム105、122内に複写されたままである。同期状態になるとすぐに、第3のデータのコピーがDRV1論理ボリューム115上に現れる。
【0062】
同期が生じると、ステップ143は制御を図4Bのステップ144に進める。同期は144で始まる後続のステップに進むのを可能にするイベントの例である。処理のこの時点で行われる補足的または付加的なテストといった、他のイベントも同様に使用できる。
【0063】
ステップ144は、交換を行うのに必要な種々の通信経路をテストする。これはホスト処理装置に依存しているオペレーションまたはテストを含むことができる。他のテストは、システム管理40、システムと関連づけされた種々のデバイスコントローラまたはディスクアダプタ内に配置されたデータを含むことができる。前述の米国特許出願(代理人番号107072/929001号)により示されるように、システム管理コンソール40と種々のディスクアダプタとの間の通信は、メールボックスを通じて行われる。ステップ144におけるテストはまた、メールボックスが正確に割り当てられ、再構成をもたらすのに必要な別の処理が適切に行われることを保証する。遭遇する問題は、エラーメッセ−ジを発生するが、図4Bにはそのようなエラーメッセージの発生は示されていない。
【0064】
全ての事前テストが完了すると、ステップ145は、LV1−M1およびLV4−M1論理ボリュームに対応する論理ボリュームを、図5Cに示すように作動不可能状態にセットする。結果として、LV1およびLV4論理ボリュームに対する書込みオペレーションはそれぞれDRV1およびDRV2ボリューム115、116に経路を定められるが、論理ボリューム105および110内のデータの更新はしない。しかし、論理ボリューム105および110が作動可能でなくても、冗長性の原レベルは維持される。
【0065】
特定の実施例において、符号105で表された物理ディスク記憶装置101のそこの部分は新しいLV4−M1論理ボリュームとして構成され、一方物理ディスク記憶装置102上の部分110は新しいLV1−M1論理ボリュームとして構成される。ステップ146は、種々のディスクアダプタやコントローラに転送するために、新しい構成情報をメールボックスにロードすることによって新しい構成を確立する。
【0066】
次にステップ147は、如何なる動的ミラーサービス処置も無効にする。本発明と同じ出願人に譲渡されている1998年10月6日発行の米国特許第5,819,310号に基づいて、動的ミラーサービス処置は異なる論理ボリュームからデータを読取る方法を決定する。簡単なアプローチの場合には、一番目のトラック上のデータはLV1−M1論理ボリュームから読取ることができるが、他のトラック上のデータは、物理ディスク記憶装置120上のLV1−M2論理ボリュームから読取ることができる。ステップ147は、そうしなければ動的ミラーサービス処置に対する変更が再構成プロセスの間に試みられて生じるであろう、如何なる衝突も避ける目的でこの処置を無効にする。
【0067】
次にステップ150は、新しい構成情報をロードし、動的ミラーサービス処置を可能にする。ステップ151は、それぞれ新しいLV1−M1および新しいLV4−M1論理ボリュームについてのトラックテーブルのM1−M4カラムの対応するものの中の全てのビット位置を無効状態にセットする。
【0068】
DRV1論理ボリューム115または新しいLV1−M1論理ボリューム110と関連するコピープログラムは、図5D中の矢印152によって示されるように、物理ディスク記憶装置102上の新しく構成されたLV1−M1論理ボリューム110へデータを転送する。DRV2論理ボリューム116または新しいLV4−M1論理ボリューム105と関連する別のコピープログラムが、矢印153によって示されるように、物理ディスク記憶装置101上の新しく構成されたLV4−M1論理ボリューム105へデータを転送する。
【0069】
図4Bを参照すると、ステップ154は全てのデータがコピーされるまでこのデータ転送をモニターする。これが生じると、もともとこのデータのために2つミラーがあると想定すると、LV1およびLV4論理ボリュームの各々に再び3つのデータが存在する。
【0070】
次いでステップ155はDRV論理ボリュームを分割するので、それらはユーザまたはアプリケーションが生成したソフトウェアからのI/O要求に対する更なる応答から切り離される。このステップで、図5Eに示されるように、LV1およびLV4論理ボリュームに対するM1ミラー内のデータは交換される。LV1−M1論理ボリュームデータは現今物理ディスク記憶装置102の位置110内にあり、一方でLV4−M1論理ボリューム内のデータは現今物理ディスク記憶装置101の論理ボリューム105内にある。分割が起きた後、ステップ156はロックを、特にステップ131および132の間に提供されたロックを移動して、処理によって課された制限を解除する。その後、システム管理コンソール40によって交換処理に関連を持たされた全てのオペレーションが終了する。
【0071】
つまり、図4Aおよび4Bに概略を示した手順は、DRV論理ボリュームを利用可能なバッファメモリーとして使用することによって、非常に効率的な方法でデータブロックを交換する手段を提供する。その上、交換はデータ処理システムのオペレーションに殆どもしくは全く影響を与えることなく行うことができる。さらにこの手順は論理ボリュームの交換を達成するのに使用でき、完全にまたは部分的にホストオペレーションに独立にかつトランスペアレントに交換を成し遂げるものである。
【0072】
図2Aおよび2Bのステップ62から77は、各交換可能論理ボリュームのためのディスク利用に基づく解析を行うための手順を示しており、I/O要求の対象である物理ディスクドライブおよび論理ボリュームへの総アクセス回数によって決定されるようになっている。図5Aおよび5Bは、基準として時間ベースのディスク利用統計量を使用する負荷平均化解析に関する手順を示す。この手順は多数のアプリケーションに改良された結果をもたらしてきた。
【0073】
この手順を行う解析時間間隔は、数時間から数日または数週間以上の基準で評価できる。サブ期間もまた数分から1時間以上に渡る任意の長さにすることができる。サブ期間の持続時間は、所望のサンプリングの正確さと、サンプルに行う必要がある計算との兼ね合いであることは明らかである。解析時間間隔の持続時間は、部分的には一貫した性能を適度の水準でもたらす時間次第である。これらは一般的には経験によって選択される。最初の解析時間間隔の選択を1週間に、サブ間隔を15分のオーダーでとることが、多くのアプリケーションで満足のいく結果をもたらすことが分かっている。
【0074】
ステップ112は、システムが解析データブロックとして論理ボリュームを選択する従来の手順を示している。次いでシステムはステップ113を使用し、ディスクアクセス回数をカウントしてそれらを独立のディスク読取り、ディスク書込みおよびシーケンシャル先取り読取りのカテゴリに分割する。これらのカウントオペレーションは、解析時間間隔における各サブ間隔の間、各論理ボリュームにおいて維持される。この情報、特に独立ディスク読取りに1.0、ディスク書込みに0.5およびシーケンシャル先取り読取りに0.25の加重を行うと全体の結果が改善されることが分かっている。別の加重処理も有効である。
【0075】
ステップ114の手順は、加重ディスク活動度を、シークオペレーション以外の転送完了時間を表すディスク転送時間に変換する。つまり、ディスク転送時間は待ち時間と選択データ転送時間との和に一致する。この変換は、モデルまたは製造業者により、全システムまたは特定のシステムの平均を表すテーブルにに含められた任意のまたは実験的なデータによって提供される。データは製造業者の設計データでもよく、物理ディスクドライブ上の1つのトラックまたは間隔をあけた複数のトラックの特定の測定値を反映していてもよい。
【0076】
ステップ112ないし114で蓄積されたデータは、各論理ボリュームに対する個々のサブ間隔の間のディスク利用値の良好な近似値をもたらす。これらの増分もしくは論理ボリュームサブ間隔利用値を合計して、図5Aおよび5Bの残りのステップに関連して説明したように、物理ディスク記憶装置のための論理ボリューム利用値またはディスク利用値を得ることができる。特にディスクアクセス回数および他の利用可能情報を使用して、(1)読取り書込みヘッドが1つの位置から別の位置へと移動する時間に対応するシークフェーズ、(2)物理ディスク記憶装置としてデータ転送要求を受け取る間の間隔に対応する待ちフェーズ、(3)物理ディスク記憶装置がデータを転送する時間に対応するデータ転送フェーズ、および(4)シークフェーズの終了からデータ転送フェーズの開始までの間の時間に対応する待機時間フェーズとを含む、ディスクアレイ記憶システムへの入出力要求に対する何らかの応答である、異なる1つ以上のフェーズに関する個別情報を生成することができる。これらの作動フェーズのどれか1つ以上から得た情報をシーク時間と併せて使用すれば、物理ディスク記憶装置利用時間を得ることができる。
【0077】
待ち時間フェーズおよびデータ転送フェーズに関するデータをディスク利用値に組み込む必要がある場合、システムは作動データを利用する。物理ディスク記憶装置機器に対して製造業者が供給する作動データとしては、スピンドル上の媒体のωで定義される回転速度と、データ転送速度Drがある。
【0078】
データ転送速度Drは、物理ディスク記憶装置中の全てのシリンダに対して一定速度として与えることができる。しかし、多くの製造業者は、隣接するトラックをZ個の同心円ゾーンzにグループ化する。つまり0≦z≦(Z−1)であり、各ゾーンzはそれぞれ独自のデータ転送速度Dr,zを持つ。そのようなデバイスでは、最外側のゾーンからのデータ転送速度は最大速度になり、最内側のゾーンからのデータ転送速度は最小速度になる。このような情報は、図1のサービス処理装置40に下記の情報を有するテーブルとして格納される。
ディスク情報テーブル
【0079】
図1のサービス処理装置40は、ディスクアレイ記憶システムで使用される物理ディスク記憶装置の各タイプ毎に1つのこのようなテーブルを備えることができる。殆どのディスクアレイ記憶システムは、一人の製造業者か多くて数人の製造業者によって製造された単一のタイプか、または数タイプを含んでいる。従って、サービス処理装置40にこの情報を格納する要求はごく限られる。もしくは、当業者にはよく知られているように、プログラム定数として、または開始手順の間にテーブルから得られる定数として、別の値を格納してもよい。
【0080】
各々のディスクシーク時間、待ち時間、データ転送時間および待機時間を生成するための各手順は、サービス処理装置資源を必要とすることは明らかである。多数の4項目(因子)全ては正常に現れることが期待されているが、それらの資源に対する制限またはデータアクセスの種類でさえもが、ディスクシーク、待ち、データ転送速度および待機時間の1つまたはそれ以上の組合わせを用いることによって生成される、非常に正確なディスク利用時間を必要とし認めるのである。
【0081】
図6は、図6と図5Aで示された処理の間の相関関係をさらに明確に述べるのに十分な文字を含む符号112、113および114を用いている。例えば、図5Aのステップ112は、物理ディスクドライブ中の論理ボリュームを選択し、ステップ112Aは、論理ボリュームLVを選択するが、一方でステップ112Bはサブ間隔Δtを選択する。図6の手順もまた、図5Bのステップ125または127への追加として位置づけられ含められていることは明らかである。
【0082】
(待ち時間)
図5Aのステップ113と同様に、図6のステップ113Aは、選択されたサブ間隔Δt、論理ボリュームLV、読取りミスの合計数、シーケンシャル読取り/書込みディスクアクセス回数を決定する。加えてステップ113Aはこれらの種々のディスクアクセスによって転送されるデータ量を決定する。先に検討したように、ディスクアクセス回数は前述のように次式のように加重される。
ここでNrmおよびNwrは、読取りミスアクセス回数および書込みアクセス回数である。Nsrはサブ間隔の間に起きるシーケンシャル読取りアクセスオペレーション回数である。サブ間隔内のアクセス活動度が10回の読取りミスアクセス回数、20回の書込みアクセス回数および8回のシーケンシャル読取りアクセス回数を含む場合、Nrm=10、Nwr=20、Nsr=8で、合計38回アクセスすることになる。しかし、(2)によれば加重アクセス回数は22となる。
【0083】
ステップ113Bは、解析すべき論理ボリュームを含む物理ディスク記憶装置のスピンドル速度ωsを検索する。ステップ113Cは、次式によるサブ間隔の間の選択論理ボリュームの待ち時間tl, Δ t,LVを生成する。
【0084】
38回のアクセス回数である前記の実施例において、待ち時間はアクセス回数に比例するがスピンドル速度ωsに反比例する。好適な実施形態において、k=0.5は、平均すれば各シークオペレーションの終了とデータ転送の開始との間に媒体が半回転することを仮定していることを示している。
【0085】
(データ転送時間)
この解析に含まれる第2の因子は、サブ間隔の間に論理ボリュームに対するデータアクセスに応答して実際にデータ転送を行うのに必要な時間の合計値である。前述のように、今日、殆どの製造業者は異なるゾーンに転送されるデータ転送速度についての情報を提供している。ステップ113Dは、テスト中に論理ボリュームLVが占めるディスクゾーンzの数と識別子を定義する。利用可能な従来の構成情報がこれに対応する。特に、物理ディスク記憶装置が複数の論理ボリュームを格納する場合、各論理ボリュームのサイズは既知であり確定される。また論理ボリュームが格納される順序も既知である。
【0086】
論理ボリュームが単一のゾーンに格納されると、その論理ボリュームのデータ転送速度はそのゾーンにおける一定のデータ転送速度となる。しかし、論理ボリュームが複数ゾーンに亘る場合、ステップ113Eは制御を113Fに進め、各ゾーンにある論理ボリュームの割合または割当を決定する。例えば、1メガバイトの論理ボリュームがゾーン0に200キロバイト含まれ、ゾーン1に800キロバイト含まれる場合、割合はゾーン0で20%、ゾーン1で80%となる。
【0087】
論理ボリュームが単一ゾーンを占めても複数ゾーンを占めても、制御はステップ114Aに進み、システム管理装置つまりサービス処理装置40は、次式(4)に基づいて各ゾーン内で選択されたサブ間隔の間に、選択された論理ボリュームに生じる全てのデータ転送に必要な時間tdt,z, Δ t,LVを生成するのを可能にする。
【0088】
論理ボリュームが単一ゾーンに組み込まれる場合、式(4)はサブ間隔に亘って論理ボリュームへ転送される、またはそこから転送される全データを、全論理ボリュームの一定データ速度で割った商を提供する。複数ゾーンの場合、転送データは、異なるゾーンを横切って各ゾーンの論理ボリュームの割合に応じて配分される。前記の実施例では、書込まれたデータのアクセス回数の20%がゾーン0に割当てられ、80%がゾーン1に割当てられている。200キロバイトのデータが転送されると仮定する。前記のディスク情報テーブルを有するディスクを使用すれば、サブ期間の論理ボリュームについて、データ転送時間(秒)は、
となる。ステップ114Aとステップ114Bはこのプロセスを示している。
【0089】
次にステップ114Cは、サブ間隔Δtの間の、選択論理ボリュームについての待ち時間tl, Δ t,LV、と全データ転送時間tdt, Δ t,LVとを合計する。さらに多くのサブ間隔が含まれる場合、ステップ114Dは制御をステップ112Bへと戻す。それ以外では制御は図5Aのステップ115へ進む。
【0090】
前記の方法のいずれかによって、一旦特定の論理ボリュームまたは他のデータブロックに関してこの情報が生成されると、ステップ115は未テストの付加的論理ボリュームが存在するか否かを判定する。さらに論理ボリュームが存在すると、制御は戻されてステップ112から114を繰り返す。
【0091】
(シーク時間)
全ての論理ボリュームが処理されて、各論理ボリュームおよび各サブ間隔についてのディスク転送時間および待ち時間が得られた後に、ステップ115は制御をステップ116へと分岐する。ステップ116は、論理ボリュームのシーク時間を提供する解析を開始する。詳細には、ステップ116、117および120は順に、物理ドライブ、そのドライブ上の1対の論理ボリューム、およびサブ間隔を選択する。各サブ間隔についてステップ121は、式(6)に基づいて、選択された論理ボリューム対に対するアクセス回数を、N個の論理ボリュームに分割された所定のドライブdに対するシーク時間T(seek)dに変換する。
ここでTijはシーク時間を表し、AiおよびAjはディスクドライブd上の任意の論理ボリューム対(i,j)に対する2つの選択論理ボリュームの各々の加重活動度を表し、ここで1≦i≦N、1≦j≦N、かつi<>jであり、ここで、1≦k≦Nであるkの全ての値に対するAkの合計値は、物理ディスク記憶装置dの全加重アクセス回数を表す。つまり、式(6)は、サブ間隔全体のそのドライブにおける各論理ボリュームの活動度に基づく論理ボリュームiおよびjの間のシーク回数およびシーク時間の統計的表示を与える。物理ディスク記憶装置上の全論理ボリューム対についての合計値は、選択サブ間隔について物理ディスク記憶装置によって行われたシーク時間の総量を表す。
【0092】
シーク時間Tijを決定するには幾つかの方法がある。1つのアプローチとして、シーク時間テーブルは、各タイプのドライブに対する各トラック対の間のシーク時間を記録する。このシーク時間は、製造業者が提供したデータ、サンプルの測定、現場での測定または他の手順に基づいている。サンプル測定に基づいたデータが良い結果をもたらしている。
【0093】
モニタ50はその構成テーブル中に、付加的に物理ディスク記憶装置上の各論理ボリュームの中央線トラック位置を含むことができる。この情報は、どのシークオペレーションに対しても、中央線トラック位置に基づく開始および終了トラックを提供できる。中央線トラック位置の使用もまた良い結果をもたらすことが分かっている。開始および終了中央線トラックを、対応するディスクドライブに対するシーク時間テーブル情報への入力として使用して、その特定のディスクドライブのTij時間を得ることができる。つまり、任意の論理ボリューム対に対して式(6)から導かれるシーク時間T(seek)dが、、サブ間隔の間に特定の論理ボリューム対について必要になる全シーク時間の良好な統計的近似値をもたらす。
【0094】
多くのアプリケーションにおいて、システム管理装置が種々のボリュームに対してディスクシーク回数を計算するのに必須の時間と他の資源は、個々に長かったり負担が大きかったりすることがある。同様に容認可能なシーク時間値を与えるが、システム管理装置40の資源に対する負担を相当低減する、別の方法が見いだされている。前述の米国出願(代理人番号07072/925001)で説明したように、別のシーク時間関数、新しいT(seek)d′が式(7)で与えられる。
【0095】
式(6)および(7)の解析は式(7)が容認可能なディスクシーク値を与えることを示す。以下に示すように、シーク回数を決定するために資源に対する負担を相当低減する、極めて単純な解をもたらすように式(7)を操作できる。アプリケーションによっては、この手順でシーク回数を得るのに必要な時間が8分の1に減少するという結果が出た。負担を低減することは明らかに非常に望ましい。
【0096】
詳細には、各論理ボリュームに対する活動度の合計値A′iが、
で計算される場合、式(8)を式(7)に代入して項を計算すると、ディスクシーク時間についての別の値、次式のNewT(seek)が生じる。
ここで、A′iは全論理ボリュームに対する活動度の合計値であり、次式で表される。
【0097】
図7は、図5Bの手順つまりステップ121と置換可能な式(9)と(10)とを使用して、ディスクシーク回数を決定する方法を示す。従って、図7は特定のステップ群を述べるのに十分な文字を含む参照符号121を用いている。
【0098】
制御が図5Bのステップ120から図7の手順に進むと、ステップ121Aは物理ディスク記憶装置上にある解析すべき第1の論理ボリュームを選択する。
【0099】
次にステップ121Bは、選択論理ボリュームの加重アクセス回数を先行論理ボリュームの加重アクセス回数の合計値に加える。第1の論理ボリュームの解析の間、先行論理ボリュームの加重アクセス回数の合計値は、明らかに0である。後続の論理ボリュームに対して、ステップ121Bは変数に対する値A′i=A1+…+Aiを生成する。
【0100】
次ぎにステップ121Cは、加重アクセス回数を先行加重アクセス回数の合計値に合計する。第1の論理ボリュームを処理した後に、ステップ121Cは(A′1+A′2+…+A′i)の値を生成する。
【0101】
次ぎにステップ121Dは、A′1の2乗を先行A′iの値の2乗の和に加える。つまり、ステップ121Dは[(A′1)2+(A′2)2+…+(A′i)2]の値を与える。
【0102】
それ以上の論理ボリュームがあれば、ステップ121Eは制御をステップ121Fへ進め、すぐに次の論理ボリュームが選択される。本発明の出願人によるシステムを備える特定の装置においては、選択処理は規則的に行われる。詳細には、各物理ディスク記憶装置は、その論理ボリュームを割当て位置に格納する。ステップ121Aで最初に選択された論理ボリュームは、物理ディスク記憶装置上の最初の論理ボリュームとなる必要がある。ステップ121Fは、同じ順序で2番目からN番目の論理ボリュームを選択する必要がある。
【0103】
ステップ121Fが選択を行った後に、制御はステップ121Bに戻る。このループは全ての論理ボリュームが処理されるまで続く。次にステップ121Eは、制御をステップ121Gに進め、新しいT(seek)dを計算するために式(9)に従って物理ディスク記憶装置についてのシーク時間を生成する。さらに詳細には、ステップ121Bで得られた値ANは、式(9)の右側の項の分母になる。ステップ121Dで得られた値は、右側の項の分子になる。ステップ121Bは、左側の項の値を与える。つまり式(9)は以下のようになる。
【0104】
式(6)または(7)のいずれかによる直接的な解法は、種々のiの値に対する外側の計算ループと、種々のjの値に対する内側の計算ループとを使用する手順を必要とすることが明らかになる。つまり、2重ループの解法である。そのような計算を行うのに必要な時間は、物理ディスク記憶装置内の論理ボリューム数のおよそ2乗の数だけ増加する。式(9)は、図7に従って組み込まれると、ただ1回のループで式(11)の答えを出す。従って、ディスクシーク活動度の表示を得るのに必要な時間は、ほぼ論理ボリューム数と同じに増加するので、2重ループ解法で値を得るのに必要な時間に対して相当低減する。18個の論理ボリュームを備える物理ディスクドライブでの比較では、単一ループ解法は、2重ループ解法で必要な時間の1/8で答えを出すことを示した。
【0105】
(待機時間)
待機時間は、図1のモニタ50から入手できる、別の情報に依存している。前述のように、待機時間は、ディスクアダプタまたはコントローラにおいて、入出力要求の到達とシークの開始との間の経過時間である。これはディスクアレイ記憶システムにおける別の物理ディスク記憶装置の間での、不規則なロードを表すことができる別の因子である。すなわち、1つのディスク記憶装置に著しく負荷がかかると、そのデバイスはディスク読取りまたは書込み要求の到達と、読取りまたは書込み要求に応答した実際の転送の開始との間に遅延を生じ始める。そのような待機時間を、物理ディスク記憶装置の利用度の大きさを決定するアクセス回数または要求回数と、平均「待機時間」との関数として予測する、幾つかの公知の方法がある。つまり、システムによってはそのようなディスク利用度を決定するときの「待機時間」を、前述のディスクシーク時間、待ち時間およびデータ転送時間またはそれらの時間の合計に対する補完として使用することは有用であろう。
【0106】
ステップ123は、すでに得られているが、シーク時間と、物理ディスクがその活動度に関連するシーク時間、待ち時間、データ転送時間および待機時間の全てを含む転送を行うために作動する合計時間を表す、論理ボリュームサブ間隔利用時間を得るためのディスク転送時間とを合計する。
【0107】
図5Bのステップ124は、全てのサブ間隔が処理されたか否かを判定する。選択された論理ボリューム対に対してさらにサブ間隔が存在すると、ステップ124は分岐してステップ120に戻り、ステップ130および123の処理を繰り返す。サブ間隔利用時間が全てのサブ間隔に対して得られると、ステップ125はその時間を合計して、論理ボリューム利用時間を得る。次いでステップ126は、ステップ116で選択された物理ディスクドライブ上に付加的な論理ボリューム対があるか否かを決定する。別の論理ボリュームが存在する場合、制御はステップ117に戻り、合計された時間、つまり物理ディスク記憶装置利用時間を得る。
【0108】
全ての異なる物理ディスク記憶装置に対する全ての利用時間を得て合計した後に、ステップ126は制御をステップ127へ進め、それによってその全間隔での間隔利用時間を合計し、その特定の物理ディスクドライブに関する、時間ベースの全物理ディスクドライブ利用度統計量を得る。次にステップ130は、追加の物理ドライブをテストする必要があるか否かを判定し、必要があれば分岐してステップ116に戻り別の物理ドライブを選択する。
【0109】
全ての物理ドライブが解析された後に、制御はステップ160からステップ161へ進み、物理ディスクドライブはそれぞれの時間ベースの利用度統計量によって順序づけられる。ステップ162で交換可能な論理ボリューム対が選択される。この選択処理は多くの方法で達成できる。簡単な方法は単に、対の一方がその物理ディスクドライブで最大の時間ベース利用度統計量を持つ最繁忙論理ボリュームであり、他方がその物理ディスクドライブで最小の時間ベース利用度統計量を持つ最も繁忙でない論理ボリュームである交換可能対を定義することである。この概念により、最繁忙の物理ディスクドライブ上の最繁忙論理ボリュームが、最も繁忙でない物理ディスクドライブ上の最も繁忙でないボリュームと交換されると、負荷の平均化を改善できる。
【0110】
ステップ163は、予定の交換ディスクから得た情報を使用して先の処理であるステップ112ないし127、160および16が繰り返される手順を示している。つまり、前述の特定の実施例において、解析は、LVE論理ボリュームがM1−LVA論理ボリュームと交換されると想定してそれらの種々のパラメータを再計算するために、物理ディスクドライブ31Aおよび31Bを検査することで修正できる。改善の見込みがあれば、ステップ134は、論理ボリュームを交換する処理を説明するステップ75に分岐する。それ以外であれば交換がなされることなく解析が終了する。
【0111】
(校正手順)
ディスクシーク、待ち、データ転送および待機時間等の特性を持つ前記因子の各々は、単独または組み合わされて使用することで単独または多重スワップ効果が予測される最大のディスク利用値をもたらす。各々の値は、統計的解析の結果であるので、スワップが起きた後の作動中に、個々の論理ボリュームへの負荷に認識できるほどの差異がないことを前提とするとなおさら、予測される結果と現実の結果とは一致しない場合がある。
【0112】
しかし場合によっては、種々の他の因子に基づく利用値を校正して、それによって予測されるディスク利用値と、結果としてのディスク利用値との間の偏差を低減することは有用である。例えば、図2Bに関して説明された処理の間に、ステップ74は、予定の交換の前後での予測物理ディスクアクセス活動度を比較する。予定の交換の後の物理ディスクアクセス活動度を「予測値」として交換が行われると想定する。統計量は交換が行われた後に継続的に収集されることは明らかである。ある時点で、それらの統計量を解析して「実際の値」を決定できる。この2つの値は合計されて、以下のような校正因子(CF)を生成できる。
【0113】
前述のように、交換が行われるときには作動条件は大きく変化しないと仮定する。この仮定は正しくない場合が多い。そこで、交換可能対の選択に先だって分布値を修正するのに使用できる統計的に重要な値を得るために、CFの値を継続的に蓄積することができる。
【0114】
第2の実施例は、式(7)で得られたディスクシーク回数についての特定の情報を比較できる。モニタ50等のモニタは、各シークオペレーションの間、物理ディスク記憶装置の読取り/書込みヘッドが横切る論理ボリュームの数を測定する構成要素を含むことができる。このようなパラメータが利用可能であれば、このパラメータと、式(7)の加重ディスクアクセスを用いて得られる対応パラメータとを比較できる。N(S)dを物理ディスク記憶装置に対してモニタ50が供給する論理ボリュームdの総数とし、N(P)dをその同一デバイスに対し式(7)によって予測されるアクセス回数とする。そうするとこの物理ディスク記憶装置に関してアクセス回数に対する別の校正因子CAdを次式により得ることができる。
【0115】
この因子CAdは、物理ディスク記憶装置内の各論理ボリュームについての予測値として適用できる。次いで各物理ディスク記憶装置についての別の因子を得ることができる。そうするとこの因子は、1組の測定値に基づく唯一の値として、もしくは平均的または統計的に生成された値として使用できる。
【0116】
これまでの解析は、解析された単一の選択交換可能対を用いて説明した。
一度に一組が取得される全ての交換可能な論理ボリューム対の間に存在可能な種々の組み合わせを考察して、物理ディスクローディングバランスに対応する交換を調べることは好都合である。しかし典型的には、これは実現性がなくなる程多くの処理時間を必要とする。さらに別の代替例として、交換が有利であるか否かを決定するために必要な時間量を制限するために、予め設定した数の交換可能対を評価することもできる。
【0117】
(代替例)
前記の開示は、種々のテストや交換手順を使用してディスクアレイ記憶装置内で負荷を平均化するための多数のアプローチを説明している。各々のケースにおいては、単一の解析が実行されることと、種々のステップが独立にかつ手動制御のもとで生成されることが想定されている。つまり、オペレータは、解析を開始して、交換されるべき論理ボリュームを示唆する報告を得ることができる。その後、オペレータは交換を実施するための必要ステップを得ることができる。しかし、時間サブ間隔の持続時間と回数とを選択して、実施されるべきテストを選択し、それによって処理が自動的に開始して完了する自動プロセスを達成することは容易であり、当業者の能力の範囲内にあることは明らかである。
【0118】
例えば、長さとオーバラップの異なる時間間隔でもって作動することも可能である。例えば、オペレータは、例えば15分時間間隔で毎時始まる第1の時間と、例えば1日の時間間隔で始まる第2の時間とを選択して使用できる。オペレータは、第1の時間間隔の間に得られる運転データを解析するために、単にシーク時間だけ、または他の時間を含む所定の解析を選択でき、または与えられることができる。その後、オペレータは代替手段の全リストから各々の第2間隔の終わりに行われる処理を選択する。これらの処理の両方とも半自動モードで行われ、それによってオペレータはスワップの推奨を得て、その後スワップを開始できる。これら処理の両方とも完全に自動的に行うこともできる。さらに別の環境では、第1の時間間隔処理を自動的に行うが、第2の時間間隔処理を半自動または手動で行うこともできる。これらの変形例のいずれにおいても、第1の時間間隔の間に行われる交換は短期の変更であり、第2の間隔の間に行われる交換は長期の変更である。
【0119】
(要約)
要約すれば、本出願はシステム性能を改善するために個々の物理ディスク記憶装置上の負荷を平均化することを可能にする一般的な方法を定義する。この方法は、大部分、測定パラメータを各物理ディスク記憶装置に関するディスク利用値へと統計的に変換する正確さに依存している。前記の説明は多数の因子を定義している。これらはディスクシーク時間、ディスク待ち時間、ディスク転送時間、およびディスク待機時間を含む。前述のように、個々の解析はこれらのいずれか1つまたは全部、もしくは他の因子さえも組み込むことができる。典型的には、初期解析は、ディスクシーク時間因子および他の1つの因子等の、1つまたは2つの因子を使用して行われる。予測の正確性の改善が、サービス処理装置またはシステム管理コンソール40への負担を相殺するのであれば、付加的因子を追加できる。つまり、アプリケーションによっては、僅かに1つまたは2つの因子を組み込んだ解析が非常に正確な情報を提供するが、他のアプリケーションでは全てのまたは実質的に全ての因子を一緒に使用して解析を行うことが必要になる場合があることが予測できる。
【0120】
同様に、2つの異なる校正因子が開示されている。あるアプリケーションは、そのような因子を要求しないが、他のアプリケーションは、1つ以上の校正因子によって正確さが非常に改善されることもある。
【0121】
つまり、本発明によれば、システムオペレータにはディスクオペレーションを解析するためのツール装備が提供される。さらに、本発明は、異なる状況で必要があれば、システムオペレータがこの装備から種々のツールを選択する高い自由度をもたらす。
【0122】
前記の説明は、本発明を、論理ボリュームと呼ばれる既知のサイズの物理ディスク記憶装置上の隣接する記憶位置のブロックに構成されたデータという観点から検討している。しかし、本発明は他のデータ構成にも適用可能である。例えば、アプリケーションによっては、論理ボリュームは複数の物理ディスク記憶装置に亘って分散された一連のサブボリュームに分割されることもある。そのような分割は冗長性および回復目的または負荷分散目的のために行うこともできる。各ブロックは論理ボリューム、サブボリュームまたは他のグループ化であっても、所定サイズの隣接記憶位置のブロックを構成する。逆にかつ結果的に、ブロックは単一の論理ボリューム、サブボリュームあるいは他のグループ化されたものでもい。
【0123】
本発明は前述のように、このようなシステムにも同様に適用可能である。すなわち、この方法は、論理ボリューム、サブボリュームあるいは他のグループ化されたものとして構成されている、如何なる隣接記憶位置のブロックについても作動する。本質的に、また本発明の前述の実施形態のいずれかに従って、種々の読取り/書込み統計量が、ある時間間隔に亘って各ブロックに関して蓄積される。交換可能ブロックの全ての対のリストが、前述のサイズと、図2Aのステップ63に関連して検討した基準に対応する他の基準を使用して確立される。論理ボリュームが冗長性を求めてサブボリュームに分割される場合は、付加的な基準は、同一論理ボリュームからのサブボリュームが1つの物理ディスク記憶装置上に存在することを防止できる。確立すべき構成が、個別のブロックに基づく評価を除いては、その構成が論理ボリュームに分割されたアレイに対して評価されるのと同様の方法で評価される。この構成が高い性能をもたらすと想定すると、図4の交換手順に従って、図2Bのステップ76における交換と類似の方法で交換が行われる。
【0124】
本発明を逸脱することなく開示された装置に対して多数の変更を行うことができることは明らかである。したがって、請求の範囲は、全てのそのような変更や修正が本発明の真の精神と範囲内に含まれるものとしてカバーすることが意図されている。
【図面の簡単な説明】
【図1】本発明を実現する特定のデータ処理システムのブロック図である。
【図2A】本発明による論理ボリューム交換用の1つの手順を表すフローチャートである。
【図2B】本発明による論理ボリューム交換用の1つの手順を表すフローチャートである。
【図3】別の形式のデータ交換を提供する別の特定のデータ処理システムのブロック図である。
【図4A】本発明による論理ボリューム交換のための手順を表すフローチャートである。
【図4B】本発明による論理ボリューム交換のための手順を表すフローチャートである。
【図5A】交換される論理ボリュームを識別するための別の代替的手順を表すフローチャートである。
【図5B】交換される論理ボリュームを識別するための別の代替的手順を表すフローチャートである。
【図6】交換される論理ボリュームを識別するための別の代替的手順を表すフローチャートである。
【図7】本発明によるディスクオペレーション特性を得るための別の代替的手順を表すフローチャートである。
Claims (17)
- ディスクアレイ記憶装置における物理ディスク記憶装置の負荷を平均化する方法であって、各物理ディスク記憶装置が少なくとも1つの読取り/書込みヘッドを備え、少なくとも2つの物理ディスク記憶装置が複数の論理ボリュームにデータを格納し、更に各物理ディスク記憶装置がシーク作動フェーズ、待機フェーズ、データ転送フェーズ及び待ち時間フェーズを含む一連の作動フェーズでデータを読出しまたは書込むデータ転送要求に応答し、
(A)(i)複数のテストサブ間隔を含むテスト間隔を定義し、且つ、
(ii)作動データの各項目を、前記テスト間隔のサブ間隔及び前記論理ボリュームに割当てることにより、前記データ転送要求に応答して前記物理ディスク記憶装置のうちの所定の装置の各論理ボリュームにアクセスした際のアクセス回数を含む作動データを生成する処理と;
(B)前記作動データを、各所定の物理ディスク記憶装置の各論理ボリュームのディスク利用値へ変換する処理であって、即ち、
(i)(a)物理ディスクドライブ上の一対の論理ボリュームに対するアクセス数、及びある論理ボリュームから別の論理ボリュームへ前記読取り/書込みヘッドを移動させるシークタイムを基に前記シークフェーズの時間を規定し、
(b)I/O要求の到着とシーク作動の開始との間の経過時間を基に前記待機フェーズの時間を規定し、
(c)データの転送時間の合計と、前記論理ボリュームを格納する物理ディスク記憶装置のデータ転送率とを基に前記データ転送フェーズの時間を規定し、
(d)前記論理ボリュームを格納する物理ディスク記憶装置へのアクセス数とスピンドル速度とを基に前記待ち時間フェーズの時間を規定した場合に、
前記フェーズ群から選択される1つ又は複数のフェーズそれぞれの所要時間を基にして時間ベースのディスク利用度に関する統計値を各論理ボリュームサブ間隔で生成し、
(ii)前記生成された時間ベースの利用統計値を組合わせることで、前記論理ボリュームサブ間隔のディスク利用値を得ることができ;
(C)ボリューム交換を行えば前記所定の物理ディスク記憶装置の負荷バランスを改善できる1対の論理ボリュームを選択するために、前記得られたディスク利用値の差を利用した負荷評価の解析を行う処理と;
(D)前記負荷評価の解析結果から選択された論理ボリュームを交換する処理と;
を含む方法。 - 各物理ディスク記憶装置が一連の作動フェーズ中のデータ転送要求に応答し、前記作動データをディスク利用値に変換する処理が、
(i)各論理ボリュームについての各作動フェーズに関する利用統計値である論理ボリュームフェーズ利用値を生成する処理と;
(ii)前記論理ボリュームフェーズ利用値を組合わせて前記論理ボリュームに関する利用統計値であるディスク利用値を得る処理と;
を含むことを特徴とする、請求項1に記載の方法。 - 前記作動データの生成が、
(i)複数のテストサブ間隔を含むテスト間隔を定義する処理と;
(ii)作動データの各項目をサブ間隔に割り当てる処理と;
を含むことを特徴とする、請求項2に記載のデータ交換方法。 - 前記作動データをディスク利用値に変換する処理が、
(i)各論理ボリュームの各サブ間隔に関する作動データを論理ボリュームサブ間隔利用値に変換する処理と;
(ii)テスト間隔に亘る前記論理ボリュームサブ間隔利用値を組合わせて、論理ボリュームディスク利用値を生成する処理と;
(iii)物理ディスク記憶装置上の各論理ボリュームについての前記論理ボリュームディスク利用値を組合わせて、各物理ディスク記憶装置についてのディスク利用値を得る処理と;
を含むことを特徴とする、請求項1に記載の方法。 - 前記作動データの生成が、
(i)複数のテストサブ間隔を含むテスト間隔を定義する処理と;
(ii)作動データの各項目をサブ間隔へ割り当てる処理と;
を含むことを特徴とする、請求項1に記載の方法。 - 前記選択された作動データをディスク利用値へ変換する処理が、
(i)各論理ボリュームの各サブ間隔で選択された作動データを、前記選択されたフェーズの各フェーズに関する論理ボリュームサブ間隔フェーズ利用値に変換する処理と;
(ii)前記テスト間隔に亘る前記論理ボリュームサブ間隔フェーズ利用値を組合わせて、論理ボリュームフェーズ利用値を生成する処理と;
(iii)物理ディスク記憶装置上の各論理ボリュームに関する前記論理ボリュームフェーズ利用値を組合わせて、論理ボリュームディスク利用値を得る処理と;
(iv)物理ディスク記憶装置上にある各論理ボリュームに関する前記論理ボリュームディスク利用値を組合わせて、各物理ディスク記憶装置についてのディスク利用値を得る処理と;
を含むことを特徴とする、請求項1に記載の方法。 - 前記作動データの生成が、
(i)前記アクセス回数を読取り又は書込みに応じた複数のタイプに分類する処理と;
(ii)前記アクセス回数を前記タイプ別に従って加重する処理と;
(iii)前記各タイプについて加重された前記アクセス回数を組合わせて、サブ間隔での論理ボリュームに対する作動データを得る処理と;
を含むことを特徴とする、請求項1に記載の方法。 - 前記各サブ間隔で作動データをディスク利用値に変換する処理は、各論理ボリュームに対する加重アクセス回数に依存する統計値を生成して、各物理ディスク記憶装置に対する全シークフェーズ時間を得る処理を含んでいることを特徴とする、請求項7に記載の方法。
- 前記各サブ間隔で作動データをディスク利用値に変換する処理は、各論理ボリュームに対する加重アクセス回数に依存する統計値を生成して、各物理ディスク記憶装置に対する全待ちフェーズ時間を得る処理を含んでいることを特徴とする、請求項7に記載の方法。
- 前記作動データには前記各データ転送要求に応答して転送されたデータ量と、物理ディスク記憶装置がデータを転送する速度とを含み、そして、受け取ったデータ転送要求に応答して、前記各サブ間隔で作動データをディスク利用値に変換する処理には、前記データを転送するのに必要な時間を表すディスク転送フェーズ時間を生成する処理を含んでいることを特徴とする、請求項7に記載の方法。
- 前記各サブ間隔で作動データをディスク利用値に変換する処理は、各論理ボリュームに対する加重アクセス回数に依存する統計値を生成して、各物理ディスク記憶装置に対する全待機フェーズ時間を得る処理を含んでいることを特徴とする、請求項7に記載の方法。
- 前記ディスク利用値へ変換する処理が、
(i)前記物理ディスク記憶装置をディスク利用値によって順番づける処理と;
(ii)交換可能な論理ボリュームのリストを識別する処理と;
(iii)交換のためにリストから1対の論理ボリュームを選択する処理と;
を含む解析処理を有することを特徴とする、請求項1に記載の方法。 - ディスク利用値の高い物理ディスク記憶装置から論理ボリュームの一方が選択され、ディスク利用値の低い物理ディスク記憶装置から論理ボリュームの他方が選択されることを特徴とする、請求項12に記載の方法。
- 交換が行われた後のディスクアレイ記憶装置の作動を予測するために、前記変換処理および前記解析処理を使用して、前記選択された論理ボリュームを予備テストする処理を付加的に含むことを特徴とする、請求項12に記載の方法。
- 前記作動データ生成処理と、前記ディスク利用値の変換処理と、後続の解析で使用する補正因子を生成するための解析処理とに基づいて、前記予測された作動とディスク記憶装置の作動とを比較する処理を付加的に含むことを特徴とする、請求項14に記載の方法。
- 少なくとも2つの物理ディスク記憶装置が複数の論理ボリュームにデータを格納し、各物理ディスク記憶装置がデータを読取りまたは書込むためのデータ転送要求に応答してディスクアレイ記憶装置内の物理ディスク記憶装置上の負荷を平均化する方法であって、
(A)解析間隔と、当該解析間隔に包含される解析サブ間隔の長さを定義する処理と;
(B)データ転送要求に応答して、前記各解析サブ間隔で、前記物理ディスク記憶装置のうちの所定の物理ディスク記憶装置にある各論理ボリュームに対するアクセス回数を含む作動データを生成する処理と;
(C)前記各解析サブ間隔の間に得られた前記作動データを基に、データ読取りまたは書込みに関する複数の作動フェーズの各所要時間を、前記ディスクアレイ記憶装置への入出力要求への応答のために要した統計量として生成し、そして前記統計量を組合わせることで前記各所定の物理ディスク記憶装置および前記所定の物理ディスク記憶装置内の各論理ボリュームに対するディスク利用値に変換する処理と;
(D)ボリューム交換を行えば前記所定の物理ディスク記憶装置に対する負荷平均を改善できる1対の論理ボリュームを選択するために、前記得られたディスク利用値の差を利用した負荷評価の解析を行う処理と;
(E)前記選択された論理ボリュームを交換する処理と;
を含むことを特徴とする方法。 - 少なくとも2つの物理ディスク記憶装置が複数の論理ボリュームにデータを格納し、各物理ディスク記憶装置がデータを読取りまたは書込むためのデータ転送要求に応答してディスクアレイ記憶装置内の物理ディスク記憶装置上の負荷を平均化する方法であって、
(A)解析間隔の長さを定義する処理と;
(B)データ転送要求に応答して、各解析間隔で、前記物理ディスク記憶装置のうちの所定の物理ディスク記憶装置にある各論理ボリュームに対するアクセス回数を含む作動データを生成する処理と;
(C)前記各解析間隔の間に得られた前記作動データを基に、データ読取りまたは書込みに関する複数の作動フェーズの各所要時間を、前記ディスクアレイ記憶装置への入出力要求への応答のために要した統計量として生成し、そして前記統計量を組合わせることで前記各所定の物理ディスク記憶装置および前記所定の物理ディスク記憶装置内の各論理ボリュームに対するディスク利用値に変換する処理と;
(D)ボリューム交換を行えば前記所定の物理ディスク記憶装置に対する負荷平均を改善できる1対の論理ボリュームを選択するために、前記得られたディスク利用値の差を利用した負荷評価の解析を行う処理と;
(E)前記選択された論理ボリュームを交換する処理と;
を含むことを特徴とする方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/396,253 US6711649B1 (en) | 1997-10-06 | 1999-09-15 | Load balancing on disk array storage device |
US09/396253 | 1999-09-15 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001159989A JP2001159989A (ja) | 2001-06-12 |
JP3860407B2 true JP3860407B2 (ja) | 2006-12-20 |
Family
ID=23566486
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000321949A Expired - Lifetime JP3860407B2 (ja) | 1999-09-15 | 2000-09-14 | ディスクアレイ記憶装置の負荷を平均化する方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US6711649B1 (ja) |
EP (1) | EP1085406A3 (ja) |
JP (1) | JP3860407B2 (ja) |
Families Citing this family (66)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001337790A (ja) * | 2000-05-24 | 2001-12-07 | Hitachi Ltd | 記憶システム及びその階層管理制御方法 |
JP2002236852A (ja) * | 2001-02-08 | 2002-08-23 | Hitachi Ltd | ストレージ課金システム |
JP4087097B2 (ja) * | 2001-11-12 | 2008-05-14 | 株式会社日立製作所 | データベース管理システム情報を考慮したデータ再配置方法およびデータ再配置を行う計算機システム |
JP4162184B2 (ja) * | 2001-11-14 | 2008-10-08 | 株式会社日立製作所 | データベース管理システムの実行情報を取得する手段を有する記憶装置 |
JP2003163689A (ja) * | 2001-11-28 | 2003-06-06 | Hitachi Ltd | ネットワーク連携情報処理システムおよびその複数負荷分散機間のアクセス移動方法 |
JP3950720B2 (ja) * | 2002-03-18 | 2007-08-01 | 株式会社日立製作所 | ディスクアレイサブシステム |
US20030187998A1 (en) * | 2002-03-27 | 2003-10-02 | Patrick Petit | System and method for detecting resource usage overloads in a portal server |
US20030188155A1 (en) * | 2002-03-27 | 2003-10-02 | Patrick Petit | System and method of determining the number of central processing units for sizing a portal server |
US20030187982A1 (en) * | 2002-03-27 | 2003-10-02 | Patrick Petit | System and method for resource load balancing in a portal server |
US20030187989A1 (en) * | 2002-03-27 | 2003-10-02 | Patrick Petit | System and method for determining memory usage in sizing a portal server |
JP2003296039A (ja) * | 2002-04-02 | 2003-10-17 | Hitachi Ltd | クラスタ構成記憶システム及び制御方法 |
JP4185346B2 (ja) | 2002-10-18 | 2008-11-26 | 株式会社日立製作所 | ストレージ装置及びその構成設定方法 |
US6988054B2 (en) * | 2002-11-27 | 2006-01-17 | Hewlett-Packard Development Company, L.P. | Storage system performance metric comparison methods, storage system performance monitoring systems, data storage systems, and articles of manufacture |
US7386694B1 (en) * | 2002-12-17 | 2008-06-10 | Symantec Operating Corporation | System and method for reading mirrored data |
US7290260B2 (en) * | 2003-02-20 | 2007-10-30 | International Business Machines Corporation | Dynamic processor redistribution between partitions in a computing system |
US7779169B2 (en) * | 2003-07-15 | 2010-08-17 | International Business Machines Corporation | System and method for mirroring data |
US7305520B2 (en) * | 2004-01-30 | 2007-12-04 | Hewlett-Packard Development Company, L.P. | Storage system with capability to allocate virtual storage segments among a plurality of controllers |
JP2005275829A (ja) * | 2004-03-25 | 2005-10-06 | Hitachi Ltd | ストレージシステム |
US20050228659A1 (en) * | 2004-04-06 | 2005-10-13 | Vlad Mitlin | Stealth communication method |
US20060020691A1 (en) * | 2004-07-20 | 2006-01-26 | Hewlett-Packard Development Company, L.P. | Load balancing based on front-end utilization |
JP2006053601A (ja) * | 2004-08-09 | 2006-02-23 | Hitachi Ltd | ストレージ装置 |
US7363453B1 (en) | 2004-11-29 | 2008-04-22 | Emc Corporation | Method and apparatus for improving storage device performance by selective volume swapping based on hot spot analysis |
US7836451B2 (en) * | 2004-12-14 | 2010-11-16 | International Business Machines Corporation | Method, system and program product for approximating resource consumption of a computer system |
US20060161752A1 (en) * | 2005-01-18 | 2006-07-20 | Burkey Todd R | Method, apparatus and program storage device for providing adaptive, attribute driven, closed-loop storage management configuration and control |
US7941602B2 (en) * | 2005-02-10 | 2011-05-10 | Xiotech Corporation | Method, apparatus and program storage device for providing geographically isolated failover using instant RAID swapping in mirrored virtual disks |
US20060218360A1 (en) * | 2005-03-22 | 2006-09-28 | Burkey Todd R | Method, apparatus and program storage device for providing an optimized read methodology for synchronously mirrored virtual disk pairs |
US7334092B1 (en) | 2005-03-23 | 2008-02-19 | Emc Corporation | Method and apparatus for scoring data storage devices for participating in logical volume exchange process |
US7281105B1 (en) | 2005-03-23 | 2007-10-09 | Emc Corporation | Method and apparatus for selecting data storage devices for participating in logical volume exchange process based on aggregated workload statistics |
US7281106B1 (en) | 2005-03-23 | 2007-10-09 | Emc Corporation | Method and apparatus for selective volume swapping in a data storage device based on merging multiple sets of candidate storage devices |
US7831976B2 (en) * | 2005-05-04 | 2010-11-09 | International Business Machines Corporation | Method, system and program product for predicting computer system resource consumption |
US20060253674A1 (en) * | 2005-05-06 | 2006-11-09 | Xiv Ltd. | Automatic disk healing |
US8745326B2 (en) * | 2005-06-02 | 2014-06-03 | Seagate Technology Llc | Request priority seek manager |
US7421599B2 (en) * | 2005-06-09 | 2008-09-02 | International Business Machines Corporation | Power management server and method for managing power consumption |
US7386743B2 (en) * | 2005-06-09 | 2008-06-10 | International Business Machines Corporation | Power-managed server and method for managing power consumption |
US7664968B2 (en) * | 2005-06-09 | 2010-02-16 | International Business Machines Corporation | System and method for managing power usage of a data processing system subsystem |
JP2007079885A (ja) * | 2005-09-14 | 2007-03-29 | Hitachi Ltd | データ入出力負荷分散方法、データ入出力負荷分散プログラム、計算機システムおよび管理サーバ |
US7822930B1 (en) * | 2005-12-01 | 2010-10-26 | Teradata Us, Inc. | Balanced allocation of multiple resources, or of multiple resources from multiple providers |
US7562195B2 (en) * | 2005-12-01 | 2009-07-14 | Teradata Us, Inc. | Balanced allocation of multiple resources, or of multiple resources from multiple providers |
US7844441B2 (en) * | 2006-03-27 | 2010-11-30 | International Business Machines Corporation | Computer-implemented method, system and program product for approximating resource consumption of computer system |
US7552280B1 (en) | 2006-06-28 | 2009-06-23 | Emc Corporation | Asymmetrically interleaving access to redundant storage devices |
JP2008146536A (ja) * | 2006-12-13 | 2008-06-26 | Hitachi Ltd | ストレージ装置及びこれを用いたデータ管理方法 |
CN101601018B (zh) * | 2007-01-19 | 2011-11-09 | 汤姆森许可贸易公司 | 智能数字磁盘记录器上的对称存储访问 |
US8819344B1 (en) | 2007-08-09 | 2014-08-26 | Emc Corporation | Shared storage access load balancing for a large number of hosts |
US8006111B1 (en) | 2007-09-21 | 2011-08-23 | Emc Corporation | Intelligent file system based power management for shared storage that migrates groups of files based on inactivity threshold |
US8903772B1 (en) | 2007-10-25 | 2014-12-02 | Emc Corporation | Direct or indirect mapping policy for data blocks of a file in a file system |
JP4620722B2 (ja) * | 2007-12-26 | 2011-01-26 | 富士通株式会社 | データ配置制御プログラム、データ配置制御装置、データ配置制御方法、およびマルチノードストレージシステム |
US7971013B2 (en) * | 2008-04-30 | 2011-06-28 | Xiotech Corporation | Compensating for write speed differences between mirroring storage devices by striping |
US20100011176A1 (en) * | 2008-07-11 | 2010-01-14 | Burkey Todd R | Performance of binary bulk IO operations on virtual disks by interleaving |
US20100011371A1 (en) * | 2008-07-11 | 2010-01-14 | Burkey Todd R | Performance of unary bulk IO operations on virtual disks by interleaving |
US9213721B1 (en) | 2009-01-05 | 2015-12-15 | Emc Corporation | File server system having tiered storage including solid-state drive primary storage and magnetic disk drive secondary storage |
US8122117B2 (en) * | 2009-05-28 | 2012-02-21 | Microsoft Corporation | Determining an imbalance among computer-component usage |
US9251035B1 (en) * | 2010-07-19 | 2016-02-02 | Soasta, Inc. | Load test charts with standard deviation and percentile statistics |
US8868798B1 (en) | 2010-09-24 | 2014-10-21 | Emc Corporation | Techniques for modeling disk performance |
US8631272B2 (en) | 2011-03-04 | 2014-01-14 | Microsoft Corporation | Duplicate-aware disk arrays |
US8954979B1 (en) * | 2011-08-15 | 2015-02-10 | Netapp, Inc. | Method and system for managing resources in a network |
JP5760843B2 (ja) * | 2011-08-19 | 2015-08-12 | 富士通株式会社 | ストレージ装置、制御装置、およびデータコピー方法 |
US20150081400A1 (en) * | 2013-09-19 | 2015-03-19 | Infosys Limited | Watching ARM |
US10664169B2 (en) * | 2016-06-24 | 2020-05-26 | Cisco Technology, Inc. | Performance of object storage system by reconfiguring storage devices based on latency that includes identifying a number of fragments that has a particular storage device as its primary storage device and another number of fragments that has said particular storage device as its replica storage device |
US11436058B2 (en) | 2016-11-17 | 2022-09-06 | International Business Machines Corporation | Workload balancing to achieve a global workload balance |
US10740042B2 (en) | 2016-12-30 | 2020-08-11 | Western Digital Technologies, Inc. | Scheduling access commands for data storage devices |
US10592297B2 (en) * | 2017-07-12 | 2020-03-17 | Vmware, Inc. | Use minimal variance to distribute disk slices to avoid over-commitment |
US11163465B1 (en) | 2017-10-31 | 2021-11-02 | EMC IP Holding Company, LLC | Top-down wear-leveling storage system and method |
US11163451B1 (en) | 2017-10-31 | 2021-11-02 | EMC IP Holding Company, LLC | Top-down IO load balancing storage system and method |
US11163471B1 (en) | 2017-10-31 | 2021-11-02 | EMC IP Holding Company LLC | Storage system and method for movement between rotation subgroups |
US11163454B1 (en) * | 2017-10-31 | 2021-11-02 | EMC IP Holding Company, LLC | Bottom-up IO load balancing storage system and method |
US10691354B1 (en) | 2018-01-31 | 2020-06-23 | EMC IP Holding Company LLC | Method and system of disk access pattern selection for content based storage RAID system |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3702006A (en) | 1971-06-09 | 1972-10-31 | Ibm | Method for balancing the utilization of input/output devices |
US4633387A (en) | 1983-02-25 | 1986-12-30 | International Business Machines Corporation | Load balancing in a multiunit system |
US5239649A (en) | 1989-10-30 | 1993-08-24 | International Business Machines Corporation | Channel path load balancing, through selection of storage volumes to be processed, for long running applications |
JPH0756691A (ja) * | 1993-08-12 | 1995-03-03 | Toshiba Corp | ストライピングディスクのデータブロック自動再配置機能を持つ情報処理装置 |
JP3641872B2 (ja) * | 1996-04-08 | 2005-04-27 | 株式会社日立製作所 | 記憶装置システム |
JPH10198526A (ja) * | 1997-01-14 | 1998-07-31 | Fujitsu Ltd | Raid装置及びそのアクセス制御方法 |
US5974515A (en) * | 1997-04-08 | 1999-10-26 | Emc Corporation | System for distributing volumes to an HSM system front end |
US6112257A (en) * | 1997-09-24 | 2000-08-29 | Emc Corporation | Dynamic adjustment of mirror service policy for logical volumes in a disk drive system based on collected statistics |
US6061761A (en) * | 1997-10-06 | 2000-05-09 | Emc Corporation | Method for exchanging logical volumes in a disk array storage device in response to statistical analyses and preliminary testing |
US6237063B1 (en) * | 1997-10-06 | 2001-05-22 | Emc Corporation | Load balancing method for exchanging data in different physical disk storage devices in a disk array storage device independently of data processing system operation |
US6189071B1 (en) * | 1997-10-06 | 2001-02-13 | Emc Corporation | Method for maximizing sequential output in a disk array storage device |
US6088766A (en) * | 1997-10-06 | 2000-07-11 | Emc Corporation | Method for exchanging data blocks on disk storage devices utilizing disk access statistics and testing for the effect of a change |
US6173374B1 (en) * | 1998-02-11 | 2001-01-09 | Lsi Logic Corporation | System and method for peer-to-peer accelerated I/O shipping between host bus adapters in clustered computer network |
-
1999
- 1999-09-15 US US09/396,253 patent/US6711649B1/en not_active Expired - Lifetime
-
2000
- 2000-09-14 JP JP2000321949A patent/JP3860407B2/ja not_active Expired - Lifetime
- 2000-09-14 EP EP00307958A patent/EP1085406A3/en not_active Withdrawn
Also Published As
Publication number | Publication date |
---|---|
JP2001159989A (ja) | 2001-06-12 |
EP1085406A3 (en) | 2004-01-28 |
EP1085406A2 (en) | 2001-03-21 |
US6711649B1 (en) | 2004-03-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3860407B2 (ja) | ディスクアレイ記憶装置の負荷を平均化する方法 | |
JP3860714B2 (ja) | ディスクアレイ記憶装置内でボリュームを交換する方法 | |
JP3712932B2 (ja) | ディスクアレイ記憶装置の論理ボリュームの透過交換方法 | |
US6061761A (en) | Method for exchanging logical volumes in a disk array storage device in response to statistical analyses and preliminary testing | |
US6584545B2 (en) | Maximizing sequential output in a disk array storage device | |
US6189071B1 (en) | Method for maximizing sequential output in a disk array storage device | |
US6405282B1 (en) | Method for analyzine disk seek times in a disk array storage device | |
US6088766A (en) | Method for exchanging data blocks on disk storage devices utilizing disk access statistics and testing for the effect of a change | |
US7502904B2 (en) | Information processing system and management device for managing relocation of data based on a change in the characteristics of the data over time | |
US6718434B2 (en) | Method and apparatus for assigning raid levels | |
JP5381336B2 (ja) | 管理プログラム、管理装置および管理方法 | |
US6035306A (en) | Method for improving performance of large databases | |
JP3541744B2 (ja) | ストレージサブシステム及びその制御方法 | |
US6269410B1 (en) | Method and apparatus for using system traces to characterize workloads in a data storage system | |
US6917569B1 (en) | Method for determining seek times in a disk array storage device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050725 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20051025 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20051028 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060125 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20060227 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060529 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060724 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20060803 |
|
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: 20060911 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060921 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 3860407 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100929 Year of fee payment: 4 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110929 Year of fee payment: 5 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110929 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120929 Year of fee payment: 6 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130929 Year of fee payment: 7 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |