JP5533252B2 - ディスクアレイ装置及びディスクアレイ装置の制御方法 - Google Patents

ディスクアレイ装置及びディスクアレイ装置の制御方法 Download PDF

Info

Publication number
JP5533252B2
JP5533252B2 JP2010117527A JP2010117527A JP5533252B2 JP 5533252 B2 JP5533252 B2 JP 5533252B2 JP 2010117527 A JP2010117527 A JP 2010117527A JP 2010117527 A JP2010117527 A JP 2010117527A JP 5533252 B2 JP5533252 B2 JP 5533252B2
Authority
JP
Japan
Prior art keywords
disk
data transfer
group
disk device
types
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.)
Active
Application number
JP2010117527A
Other languages
English (en)
Other versions
JP2011248395A (ja
Inventor
和彦 池内
秀治郎 大黒谷
親志 前田
典秀 久保田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2010117527A priority Critical patent/JP5533252B2/ja
Priority to US13/091,924 priority patent/US9075728B2/en
Publication of JP2011248395A publication Critical patent/JP2011248395A/ja
Application granted granted Critical
Publication of JP5533252B2 publication Critical patent/JP5533252B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • G06F12/0868Data transfer between cache memory and other subsystems, e.g. storage devices or host systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2002Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant
    • G06F11/2007Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant using redundant communication media
    • G06F11/201Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant using redundant communication media between storage system components
    • 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/0629Configuration or reconfiguration of storage systems
    • G06F3/0632Configuration or reconfiguration of storage systems by initialisation or re-initialisation of 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/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
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/26Using a specific storage system architecture
    • G06F2212/261Storage comprising a plurality of storage devices
    • 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/0629Configuration or reconfiguration of storage systems
    • G06F3/0635Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
    • 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/0685Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Debugging And Monitoring (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Description

本発明は、ディスクアレイ装置及びディスクアレイ装置の制御方法に関する。
ディスクアレイ装置においては、1個のコントロールモジュールに対して、多数のディスク装置が接続される。このため、コントロールモジュールと複数のディスク装置との間を接続する伝送経路におけるデータ転送が問題となる。
そこで、例えば、ストレージエリアネットワークシステムにおいて、各ユーザサーバは、磁気ディスク装置とのI/Fポートを通じたデータ送受において所定のデータ転送量が規定されており、各ユーザサーバと磁気ディスク装置間のデータ転送量を取得して監視し、ユーザサーバの規定のデータ転送量と取得した実際のデータ転送量とを比較し、この比較結果に応じてストレージのI/Fポートを選択して、このポートに接続する指示を該当のサーバに与えることが、提案されている。
また、複数のディスクアレイ装置タイプを有するディスクアレイ装置において、異なるディスクアレイ装置タイプを有するそれぞれのディスクアレイ装置は、一組の管理ルールに対応づけられ、管理ルールは、例えば、専用ディスクアレイ装置を識別し、専用ディスクアレイ装置を設定し、ディスクプロトコルメッセージを専用ディスクアレイ装置に送信し、専用ディスクアレイ装置から受信されたディスクプロトコルメッセージを処理し、そして、誤り条件および例外条件を処理するためのルールを含んでもよいことが、提案されている。
特開2002−288105号公報 特表2006−524864号公報
ディスクアレイシステムにおいて、同一の伝送経路に各々のデータ転送能力が異なる複数のディスク装置が接続される場合がある。この場合、各々のディスク装置におけるデータ転送の量が、ディスク装置毎に偏る可能性がある。
本発明は、複数のディスク装置におけるデータ転送の量の偏りを少なくするディスクアレイ装置を提供することを目的とする。
開示されるディスクアレイ装置は、キャッシュメモリと、互いにデータ転送能力の異なる3種類以上のディスク装置と、キャッシュメモリと3種類以上のディスク装置との間におけるデータの転送の経路である二重化された伝送経路と、3種類以上のディスク装置をデータ転送能力に基づいて2個のグループに分けて、2個のグループの各々を二重化された伝送経路の各々に割り当てるコントローラとを含む。コントローラが、前記3種類以上のディスク装置の種類を最大データ転送長の順に並べた場合における、最も値の小さい最大データ転送長Minを有するディスク装置の種類、中央に位置し最大データ転送長Midを有するディスク装置の種類及び最も値の大きい最大データ転送長Maxを有するディスク装置の種類を抽出し、前記最大データ転送長Minを有するディスク装置の種類から前記中央に位置するディスク装置の種類までを第1の初期グループとしかつ他のディスク装置の種類を第2の初期グループとするか、又は、前記中央に位置するディスク装置の種類から前記最大データ転送長Maxを有するディスク装置の種類までを第1の初期グループとしかつ他のディスク装置の種類を第2の初期グループとし、ディスク装置の種類毎にその最大データ転送長と台数との積を求め、初期グループ毎にその初期グループに属するディスク装置の種類について求めた積の総和を求め、2個の初期グループについて求めた総和の比を求め、総和の比を用いて2個の初期グループについての検証を行う。
開示されるディスクアレイ装置によれば、同一の伝送経路に各々のデータ転送能力が異なる複数のディスク装置が接続される場合でも、複数のディスク装置におけるデータ転送の量の偏りを少なくすることができる。
ディスクアレイ装置の構成を示す図である。 ディスク群管理テーブル等の説明図である。 ディスク割当処理の一例を示す図である。 ディスク割当処理の一例を示す図である。 ディスク管理処理フローである。 ディスク割当処理フローである。 ディスク割当処理フローの他の一例を示す図である。 ディスク割当処理の更に他の一例を示す図である。 ディスク割当処理の更に他の一例の説明図である。 ディスク割当処理の更に他の一例を示す図である。 ディスク割当処理フローの更に他の一例を示す図である。 ディスクアレイ装置におけるデータ転送の説明図である。
ディスクアレイシステムにおいて、同一の伝送経路に多数のディスク装置が接続された場合、各々のディスク装置におけるデータ転送は、伝送経路のデータ転送能力により制約される。
例えば、図12(A)に示すように、ディスクアレイ装置において、ディスク装置510A及びディスク装置510Bが、同一の伝送経路511A及び伝送経路511Bを介して、コントローラ503に接続される。コントローラ503からディスク装置510A及びディスク装置510Bへの伝送経路は二重化されている。ディスク装置510A及びディスク装置510Bは同一の二重化された伝送経路511A及び511Bに接続される。
ディスク装置510Aのデータ転送能力は、ディスク装置510Bのデータ転送能力と異なる。例えば、図12(B)に示すように、ディスク装置510Aのデータ転送能力は、ディスク装置510Bのデータ転送能力よりも小さい。ここで、データ転送能力は、1回のデータ転送において転送されるデータの最大のサイズ、換言すれば、最大転送長である。
図12(A)において、伝送経路511A及び511Bにある数以上のディスク装置が接続された場合、データが伝送される経路である伝送経路のデータ転送能力が、ディスクアレイ装置の性能のボトルネックになる。このように伝送経路のデータ転送能力が性能のボトルネックになっている状態においては、読出し処理の場合にはI/O要求がディスク装置510A又はディスク装置510Bでデータ転送待ち状態となり、書込み処理の場合にはI/O要求がコントローラ503でデータ転送待ち状態となる。実行中のI/O要求の処理の完了を待って、新たなI/O要求が実行される。
このように、伝送経路のデータ転送能力が性能のボトルネックになっている場合、ディスク装置510Aとディスク装置510Bとの間において、データ転送能力が異なることに起因して、結果的に、データ転送量の不均衡が生じる。
例えば、図12(B)に示すように、ディスク装置510A及びディスク装置510Bが、交互に、又は、等しい回数だけ、データ転送を実行するとする。また、ディスク装置510A及びディスク装置510Bは、1回のデータ転送において、最大転送長の分のデータを転送するとする。この場合、結果的に、データ転送能力の大きいディスク装置510Bが、データ転送能力の小さいディスク装置510Aよりも多くのデータを転送することになる。
開示のディスクアレイ装置は、同一の伝送経路に種類の異なるディスク装置が接続された場合における、ディスクアレイ装置のデータ転送の処理の不均衡を少なくする。
図1は、ディスクアレイ装置の構成を示す図である。
ディスクアレイ装置2は、ホストコンピュータ1に接続される。ディスクアレイ装置2は、コントローラ3と、複数のデバイスエンクロージャ(DE)41、42を含む。コントローラ3は、チャネルアダプタ(CA)5、キャッシュ6、CPU(Central Processing Unit)7、メモリ8、2個のデバイスインターフェイス(DI)9A、9Bを含む。複数のデバイスエンクロージャ41、42は、各々、複数のディスク装置10を含む。ディスク装置10は、単位記憶装置である。デバイスエンクロージャ41、42の数は2個に限られない。複数のディスク装置10の数は5個に限られない。ディスクアレイ装置2は、例えばRAID装置である。
コントローラ3と複数のデバイスエンクロージャ4との間は、二重化された伝送経路111A及び111B、112A及び112Bにより接続される。伝送経路111A、111B、112A、112Bは、例えばファイバチャネル(FC;Fibre Channel)又はSAS(Serial Attached SCSI)等である。伝送経路111A及び111B、112A及び112Bを二重化することにより、コントローラ3とディスク装置10との間において、例えば一方の伝送経路111A又は112Aに障害が発生しても、他方の伝送経路111B又は112Bを経由して、データ転送を行うことができる。
具体的には、伝送経路111A及び111Bは、DE41に含まれる複数のディスク装置10についての二重化された伝送経路である。伝送経路112A及び112Bは、DE42に含まれる複数のディスク装置10についての二重化された伝送経路である。二重化された伝送経路111A及び111B、112A及び112Bは、キャッシュ6とディスク装置10との間におけるデータの転送の経路である。
伝送経路111A及び111B、112A及び112Bの二重化に対応して、DI9A、9B、換言すれば、コントローラ3の通信ポートも二重化される。DI9Aには、一方の伝送経路111A及び112Aが接続される。DI9Bには、他方の伝送経路111B及び112Bが接続される。
例えば、DE41について見ると、DE41に含まれる複数のディスク装置10の各々に対して、二重化された伝送経路111A及び111Bのいずれか一方が、後述する割り当て処理により、割り当てられる。あるディスク装置10に対して、例えば伝送経路111Aが割り当てられた場合、当該ディスク装置10へのアクセスは、割り当てられた伝送経路111Aを介して実行される。
また、伝送経路111Aの割り当ての結果、当該ディスク装置10に対して、伝送経路111Aが接続されるDI9Aが、割り当てられることになる。当該ディスク装置10へのアクセスは、割り当てられたDI9Aを介して実行される。
ここで、図1のディスクアレイ装置2において、ディスク装置10は、互いにデータ転送能力の異なる3種類以上のディスク装置10を含む。一方、キャッシュ6と3種類以上のディスク装置10との間におけるデータの転送の経路が、前述したように、二重化される。従って、DE41に含まれる複数のディスク装置10の種類「3」は、伝送経路111A及び111Bの多重化の程度である多重度「2」よりも大きく、DI9A及び9Bの多重化の程度である多重度「2」よりも大きい。
また、DE42について見ると、DE42に含まれる複数のディスク装置10の各々に対して、二重化された伝送経路112A及び112Bのいずれか一方が割り当てられる。換言すれば、あるディスク装置10に対して、例えば伝送経路112B及びDI9Bが割り当てられた場合、当該ディスク装置10へのアクセスは、割り当てられた伝送経路112B及びDI9Bを介して実行される。DE42に含まれる複数のディスク装置10の種類「3」は、伝送経路112A及び112Bの多重化の程度である多重度「2」よりも大きく、DI9A及び9Bの多重化の程度である多重度「2」よりも大きい。
なお、ホストコンピュータ1に接続されるディスクアレイ装置2の数は、1個に限られず、複数であっても良い。また、ディスク装置10は、ハードディスク装置(HDD;Hard Disk Drive)、半導体ディスク装置(SSD;Solid State Drive)のような種々の記憶装置であっても良い。
ディスクアレイ装置2は、ホストコンピュータ1からの書き込み要求に応じて、ホストコンピュータ1から受信したデータを、ディスク装置10に書き込む。また、ディスクアレイ装置2は、ホストコンピュータ1からの読み出し要求に応じて、ディスク装置10からデータを読み出して、ホストコンピュータ1へ送信する。
ディスクアレイ装置2において、CA5は、ホストコンピュータ1とキャッシュ6との間に接続され、ホストコンピュータ1とディスクアレイ装置2との間のデータ転送を制御する。例えば、CA5は、ホストコンピュータ1から書き込み要求とデータとを受信して、キャッシュ6に書込み要求とデータとを転送する。また、CA5は、ホストコンピュータ1から読み出し要求を受信して、キャッシュ6に読み出し要求を転送する。この後、CA5は、キャッシュ6からデータを受信して、読み出し要求に対する応答として、ホストコンピュータ1に転送する。
なお、キャッシュ6は、実際には、データを格納するキャッシュメモリと、キャッシュメモリを制御するキャッシュコントローラとを含む。キャッシュメモリには、ホストコンピュータ1から転送されたデータ、又は、ディスク装置10から読み出されたデータが、一時的に格納される。キャッシュメモリは、ディスク装置10よりも十分に高速なメモリ、例えばDRAM(Dynamic Random Access Memory)のような半導体メモリである。
キャッシュ6は、書き込み要求とデータとを受信した場合、データをキャッシュメモリに書き込む。その後、キャッシュ6は、キャッシュメモリに格納したデータを、DI9A、9Bを介して、ディスク装置10に書き込む。
データの書込み処理において、データの書込み先のディスク装置10がDE41に含まれかつ例えば伝送経路111Aを割り当てられた場合、データは、DI9A及び伝送経路111Aを介して、キャッシュ6から当該ディスク装置10に転送される。
キャッシュ6は、読み出し要求を受信した場合において、要求されたデータがキャッシュメモリに存在する場合、キャッシュ6は、要求されたデータをキャッシュメモリから読み出して、CA5に送信する。要求されたデータがキャッシュメモリに存在しない場合、キャッシュ6は、DI9A、9Bを介して、要求されたデータをディスク装置10から読み出して、CA5に送信する。CA5は、受信したデータをホストコンピュータ1に送信する。
データの読出し処理において、データの読出し元のディスク装置10がDE41に含まれかつ例えば伝送経路111Aを割り当てられた場合、データは、DI9A及び伝送経路111Aを介して、当該ディスク装置10からキャッシュ6へ転送される。
CPU7は、ディスクアレイ装置2に含まれる複数のディスク装置10の各々と通信を行ってディスク情報を収集し、収集したディスク情報に基づいて、ディスク群管理テーブル81を作成する。従って、CPU7はディスク群管理テーブル作成部である。前記通信は、例えば、ディスクアレイ装置2の電源が投入された場合、又は、ディスクアレイ装置2に新たなディスク装置10が接続された場合に実行される。これに加えて、前記通信は、例えば、ディスクアレイ装置2の動作中に定期的に実行される。CPU7は、ディスクアレイ装置2から削除された(取り外された)ディスク装置10からのディスク情報が得られないことにより、当該ディスク装置10が削除されたことを知ることができる。従って、CPU7は、ディスクアレイ装置2の電源が投入された場合に、収集したディスク情報に基づいてディスク群管理テーブル81を作成し、ディスク装置10が接続又は削除された場合に、新たに得た又は得られなくなったディスク情報に基づいてディスク群管理テーブル81を更新する。ディスク群管理テーブル81は、例えばメモリ8に格納される。
ディスク情報は、例えば、ディスクID、ディスク装置10の種類、ディスク装置10のデータ転送能力を含む。ディスクIDは、ディスク装置10を一意に特定する識別情報である。ディスク装置10の種類は、例えばディスク装置10の製品型番である。ディスク装置10のデータ転送能力は、例えば最大データ転送長である。
図2(A)は、ディスク群管理テーブル81の一例を示す。
ディスク群管理テーブル81は、ディスク群毎に、ディスク管理情報を格納する。ディスク管理情報は、最大データ転送長、当該ディスク群に属するディスク装置10の数を含む。ディスク群は、種類が同一であるディスク装置10のグループである。種類が同一のディスク装置10とは、同一の最大データ転送長を有するディスク装置である。最大データ転送長は、当該ディスク装置10が1回のデータ転送において転送可能な最大のデータ長である。当該ディスク群に属するディスク装置10の数は、経路毎に集計される。ここで、経路#1は伝送経路111A及び111Bであり、経路#2は伝送経路112A及び112Bである。
収集されたディスク情報には、ディスク装置10の種類、ディスク装置10のデータ転送能力が含まれる。従って、CPU7は、収集したディスク情報に基づいて、ディスク群管理テーブル81を作成することができる。収集されたディスク情報は、ディスク群管理テーブル81とは別に、ディスク情報テーブルとして、メモリ8に格納される。
なお、ディスク装置10の種類、換言すれば、製品の型番が異なっていても、ディスク装置10のデータ転送能力が同一である場合がある。この場合、CPU7は、製品の型番が異なっていても、ディスク装置10のデータ転送能力が同一であるディスク装置10を同一のディスク群に属するディスク装置として、ディスク群管理テーブル81を作成する。逆に、CPU7は、製品の型番が異なっていれば、ディスク装置10のデータ転送能力が同一であっても、異なるディスク群に属するディスク装置として、ディスク群管理テーブル81を作成するようにしても良い。
CPU7は、ディスク群管理テーブル81に基づいて、伝送経路管理テーブル82を作成する。従って、CPU7は伝送経路管理テーブル作成部である。伝送経路管理テーブル82により、伝送経路管理テーブル82は、ディスク群管理テーブル81が作成又は更新された場合にこれに続いて作成又は更新される。従って、CPU7は、ディスクアレイ装置2の電源が投入された場合に、伝送経路管理テーブル82を作成し、ディスク装置10が接続又は削除された場合に、必要に応じて、伝送経路管理テーブル82を更新する。換言すれば、CPU7は、ディスクアレイ装置2の電源が投入された場合に、ディスク装置10に対する伝送経路の割り当てを実行し、ディスク装置10が接続又は削除された場合に、必要に応じて、ディスク装置10に対する伝送経路の割り当てを変更する。伝送経路管理テーブル82は、例えばメモリ8に格納される。
図2(B)は、伝送経路管理テーブル82の一例を示す。
伝送経路管理テーブル82は、ディスク群毎に、ポート管理情報を格納する。ポート管理情報は、当該ディスク群に属するディスク装置10がデータ転送において使用するポート、換言すれば、DI9A、9Bを含む。ここで、例えば、ポートaはDI9Aであり、ポートbはDI9Bである。
伝送経路管理テーブル82により、ディスク装置10がデータ転送において使用するDI9A又は9Bが定められる。これにより、ディスク装置10に対して、二重化された伝送経路111A、111B、112A、112Bのいずれかが割り当てられる。換言すれば、CPU7は、3種類以上のディスク装置10を、データ転送能力に基づいて、2個のグループに分けて、更に、2個のグループの各々を、二重化された伝送経路111A、111B、112A、112Bの各々に割り当てる。
ここで、ディスク装置10の種類の数は、二重化された伝送経路毎にカウントされる。具体的には、二重化された伝送経路111A及び111Bについて、及び、二重化された伝送経路112A及び112Bについて、各々、ディスク装置10の種類の数がカウントされる。二重化された伝送経路は、コントローラ3とディスク装置10との間を接続する1個の経路であるから、二重化された伝送経路、換言すれば、1個の経路が、ディスク装置10の種類の数をカウントする単位である。伝送経路111A及び111Bに接続されたディスク装置10の種類の数は、伝送経路112A及び112Bに接続されたディスク装置10の種類の数と、同一であっても異なっていても良い。
また、伝送経路は、二重化された伝送経路以外であっても良い。例えば、伝送経路の多重度(かつDIの多重度)をTとし、ディスク装置10の種類の数をKとすると、Tは「3」以上であっても良く、Kは4=(T+1)以上であっても良い。換言すれば、CPU7が、K種類以上のディスク装置10を、データ転送能力に基づいて、T個のグループに分けて、更に、T個のグループの各々を、T重化された伝送経路に割り当てるようにしても良い。
図3及び図4は、ディスク割当処理の一例を示す図である。
CPU7は、図3及び図4を参照して説明する処理により、ディスク装置10を伝送経路に割り当てる処理である割当処理、換言すれば、伝送経路管理テーブル82を作成する処理を実行する。具体的には、CPU7は、伝送経路管理テーブル82における、ディスク装置10がデータ転送において使用するDI9A又は9Bを決定する。換言すれば、以下の処理により、ディスク装置10が、二重化された伝送経路111A、111B、112A、112Bのいずれかに割り当てられる。
CPU7は、基本的には、3種類以上のディスク装置10を、二重化された伝送経路111A、111B、112A、112Bのいずれかにに割り当てる。従って、CPU7は伝送経路割当処理部である。しかし、ディスク装置10がDE41又は42から取り外された場合には、ディスク装置10の種類が、3種類以上である場合以外に、1種類又は2種類である場合がある。そこで、CPU7は、ディスク装置10を、以下のように、二重化された伝送経路111A、111B、112A、112Bに割り当てる。
CPU7は、ディスク群管理テーブル81の作成の後、二重化された伝送経路毎、換言すれば、コントローラ3とディスク装置10との間の経路毎に、伝送経路の多重度Tと、ディスク装置10の種類の数Kとを比較する。伝送経路の多重度Tは、CPU7が保持している値である。ディスク装置10の種類の数Kは、二重化された伝送経路毎に、図2(A)のディスク群管理テーブル81から取得される。
例えば、図1のディスクアレイ装置2においては、伝送経路の多重度Tは「2」である。ディスク群管理テーブル81において、経路#1についてのディスク装置10の種類の数Kは「4」であり、経路#2についてのディスク装置10の種類の数Kは「4」である。
CPU7は、伝送経路の多重度Tとディスク装置10の種類の数Kとの比較の結果に応じた処理を実行することにより、伝送経路管理テーブル82を作成する。換言すれば、CPU7は、伝送経路の多重度Tとディスク装置10の種類の数Kとの比較の結果毎に異なる処理を実行することにより、ディスク装置10の割り当て処理を実行する。なお、図1のディスクアレイ装置2においては、伝送経路の多重度Tは「2」であるので、実際には、ディスク装置10の種類の数Kに応じた処理が実行される。
具体的には、ディスク装置10の種類の数Kが「1」である場合、換言すれば、K<Tである場合には、ディスク装置10の数を用いた割り当て処理が実行される。ディスク装置10の種類の数Kが「2」である場合、換言すれば、K=Tである場合には、ディスク装置10の数、又は、ディスク装置10の種類を用いた割り当て処理が実行される。ディスク装置10の種類の数Kが「3」以上である場合、換言すれば、K>Tである場合には、ディスク装置10の最大データ転送長を用いた割り当て処理が実行される。
最初に、二重化された伝送経路に接続されたディスク装置10の種類が1種類である場合について、図3(A)を参照して説明する。
ディスク装置10の種類が1種類である場合には、CPU7は、1種類のディスク装置10の数が均等になるように、二重化された伝送経路111A、111B、112A、112Bに割り当てる。
例えば、前述したタイミングで作成又は更新された図2(A)に示すディスク群管理テーブル81において、ディスクA群10Aのみのディスク管理情報が格納され、他のディスクB群10B〜ディスクD群10Dのディスク管理情報は格納されていないとする。換言すれば、伝送経路111A、111B、112A、112Bには、ディスクA群10Aに属するディスク装置10のみが接続されているとする。
この場合、CPU7は、伝送経路管理テーブル82において、経路#1について、ポートaに10個のディスク装置10を割り当て、ポートbに10個のディスク装置10を割り当てる。換言すれば、CPU7は、図3(A)に示すように、経路#1の一方である伝送経路111Aに10個のディスク装置10を割り当て、経路#1の他方である伝送経路111Bに10個のディスク装置10を割り当てる。これにより、経路#1について、ディスクA群10Aに属する複数のディスク装置10の間における、データ転送の偏りを少なくすることができる。
次に、CPU7は、伝送経路管理テーブル82において、経路#2について、ポートaに10個のディスク装置10を割り当て、ポートbに10個のディスク装置10を割り当てる。換言すれば、CPU7は、図3(A)と同様に、経路#2の一方である伝送経路112Aに10個のディスク装置10を割り当て、経路#2の他方である伝送経路112Bに10個のディスク装置10を割り当てる。これにより、経路#2について、ディスクA群10Aに属する複数のディスク装置10の間における、データ転送の偏りを少なくすることができる。
次に、二重化された伝送経路に接続されたディスク装置10の種類が2種類である場合について、図3(B)を参照して説明する。
ディスク装置10の種類が2種類である場合には、CPU7は、2種類のディスク装置10を、その種類毎に、二重化された伝送経路111A、111B、112A、112Bの各々に割り当てる。
例えば、前述したタイミングで作成又は更新された図2(A)に示すディスク群管理テーブル81において、ディスクA群10A及びディスクB群10Bのディスク管理情報が格納され、他のディスクC群10C及びディスクD群10Dのディスク管理情報は格納されていないとする。換言すれば、伝送経路111A、111B、112A、112Bには、ディスクA群10Aに属するディスク装置10及びディスクB群10Bに属するディスク装置10が接続されているとする。
この場合、CPU7は、伝送経路管理テーブル82において、経路#1について、ポートaにディスクA群10Aに属するディスク装置10を割り当て、ポートbにディスクB群10Bに属するディスク装置10を割り当てる。換言すれば、CPU7は、図3(B)に示すように、経路#1の一方である伝送経路111AにディスクA群10Aに属するディスク装置10を割り当て、経路#1の他方である伝送経路111BにディスクB群10Bに属するディスク装置10を割り当てる。これにより、経路#1について、ディスクA群10A及びディスクB群10Bに属する複数のディスク装置10の間における、データ転送の偏りを少なくすることができる。
次に、CPU7は、伝送経路管理テーブル82において、経路#2について、ポートaにディスクA群10Aに属するディスク装置10を割り当て、ポートbにディスクB群10Bに属するディスク装置10を割り当てる。換言すれば、CPU7は、図3(B)と同様に、経路#2の一方である伝送経路112AにディスクA群10Aに属するディスク装置10を割り当て、経路#2の他方である伝送経路112BにディスクB群10Bに属するディスク装置10を割り当てる。これにより、経路#2について、ディスクA群10A及びディスクB群10Bに属する複数のディスク装置10の間における、データ転送の偏りを少なくすることができる。
なお、ディスク装置10の種類が2種類である場合には、CPU7が、2種類のディスク装置10を、2種類のディスク装置10の数がその種類毎に均等となるように、二重化された伝送経路111A、111B、112A、112Bの各々に割り当てるようにしても良い。この場合、2種類のディスク装置10の各々の種類について、ディスク装置10の種類が1種類である場合と同様にして、ディスク装置10の伝送経路111A、111B、112A、112Bへの割り当てが実行される。
例えば、CPU7は、経路#1である伝送経路111A及び111Bに、各々、ディスクA群10Aに属する10個のディスク装置10及びディスクB群10Bに属する20個のディスク装置10を割り当てる。また、CPU7は、経路#2である伝送経路112A及び112Bに、各々、ディスクA群10Aに属する10個のディスク装置10及びディスクB群10Bに属する10個のディスク装置10を割り当てる。
ディスク装置10の種類が2種類である場合、以上に述べた2つの処理のいずれに依るかは、ディスクアレイ装置2の特性や経験によって定められる。
次に、二重化された伝送経路に接続されたディスク装置10の種類が3種類である場合について、図4を参照して説明する。
ディスク装置10の種類が3種類以上である場合には、CPU7は、3種類以上のディスク装置10の各々を、データ転送能力を用いた以下の処理によって、二重化された伝送経路111A、111B、112A、112Bのいずれかに割り当てる。ここで、データ転送能力としては、当該ディスク装置10が1回のデータ転送において転送可能なデータ長である最大データ転送長が用いられる。最大データ転送長の単位は、例えばキロバイトであり、図2(A)、図9及び図11において「KB」と表す。
最初に、CPU7は、2個の初期グループの生成処理を行う。例えば、ディスク装置10の種類の数をXとする。CPU7は、Xを2等分することにより、3種類以上のディスク装置10を2個の初期グループに分ける。これにより、ディスク装置10の種類の数が多い場合でも、少ない処理で最終的な2個のグループを求めることができる。
なお、Xが奇数の場合には、CPU7は、ディスク装置10の種類を最大データ転送長の順に並べた場合における、最も値の小さい最大データ転送長Minを有するディスク装置10の種類、中央に位置するディスク装置10の種類、最も値の大きい最大データ転送長Maxを有するディスク装置10の種類を抽出する。更に、CUPU7は、中央に位置するディスク装置10の種類の最大データ転送長Midと最大データ転送長Minとの差分(Mid−Min)と、最大データ転送長Midと最大データ転送長Maxとの差分(Max−Mid)とを求める。(Mid−Min)<(Max−Mid)の場合には、CPU7は、最も値の小さい最大データ転送長Minを有するディスク装置10の種類から、中央に位置するディスク装置10の種類までを1個のグループとし、残りを他の1個のグループとする。(Mid−Min)>(Max−Mid)の場合には、CPU7は、中央に位置するディスク装置10の種類から、最も値の大きい最大データ転送長Maxを有するディスク装置10の種類までを1個のグループとし、残りを他の1個のグループとする。
この後、CPU7は、最大データ転送長を用いて初期グループの重み付け処理を行う。具体的には、CPU7は、ディスク装置10の種類毎に、その最大データ転送長と台数との積を求め、初期グループ毎に、当該初期グループに属するディスク装置10の種類について求めた積の総和を求める。
この後、CPU7は、2個の初期グループについて検証処理を行う。例えば、CPU7は、2個の初期グループについて求めた総和の比Yを求める。例えば、2個の初期グループの総和の中の大きい方を小さい方で割ることにより、総和の比Yを求めることができる。CPU7は、求めた総和の比Yを閾値と比較する。閾値は、経験的に定めることができ、例えば「2」とされる。閾値は、「2」以外の値、例えば「1.5」「3」等であっても良い。
2個の初期グループの総和の比Yが閾値より小さい場合、CPU7は、2個の初期グループをそのまま用いて、3種類以上のディスク装置10をデータ転送能力に基づいて2個のグループに分ける。換言すれば、2個の初期グループが、そのまま最終的な2個のグループとされる。
2個の初期グループの総和の比Yが閾値より大きい場合、CPU7は、2個の初期グループの変更処理を行う。具体的には、CPU7は、1種類のディスク装置10を、総和の大きい方の初期グループから総和の小さい方の初期グループへ移動することにより、初期グループを変更する。移動される1種類のディスク装置10は、総和の大きい方の初期グループにおいて、最も値の小さい最大データ転送長を有するディスク装置10である。
この後、CPU7は、再度、前述した検証処理を行う。これにより、2個の初期グループの総和の比Yが閾値より小さい場合、CPU7は、変更した2個の初期グループを用いて、3種類以上のディスク装置10をデータ転送能力に基づいて2個のグループに分ける。2個の初期グループの総和の比Yが閾値より大きい場合、CPU7は、再度、2個の初期グループの変更処理を行う。換言すれば、CPU7は、2個の初期グループの総和の比Yが閾値より小さくなるまで、検証処理と変更処理とを繰り返す。
例えば、前述したタイミングで作成又は更新された図2(A)に示すディスク群管理テーブル81において、ディスクA群10A〜ディスクD群10Dのディスク管理情報が格納されているとする。換言すれば、伝送経路111A、111B、112A、112Bには、ディスクA群10A〜ディスクD群10Dに属するディスク装置10が接続されているとする。
第1に、経路#1に対するディスク装置10の割り当てについて、説明する。
CPU7は、図2(B)に示す伝送経路管理テーブル82において、経路#1について、ポートaにディスクA群10A〜ディスクB群10Bに属するディスク装置10を割り当て、ポートbにディスクC群10C〜ディスクD群10Dに属するディスク装置10を割り当てる。換言すれば、CPU7は、経路#1の一方である伝送経路111AにディスクA群10A〜ディスクB群10Bに属するディスク装置10を割り当て、経路#1の他方である伝送経路111BにディスクC群10C〜ディスクD群10Dに属するディスク装置10を割り当てる。これにより、経路#1について、ディスクA群10A〜ディスクD群10Dに属する複数のディスク装置10の間における、データ転送の偏りを少なくすることができる。
このような割当処理のために、CPU7は、4種類のディスク装置10をデータ転送能力に基づいて2個の初期グループに分ける。これにより、ディスク装置10は、ディスクA群10A〜ディスクB群10Bの初期グループと、ディスクC群10C〜ディスクD群10Dの初期グループとに分けられる。
従って、ディスクA群10A〜ディスクB群10Bの初期グループの総和は、(40×20)+(80×40)=4000である。ディスクC群10C〜ディスクD群10Dの初期グループの総和は、(100×20)+(120×40)=6800である。従って、総和の比Yは、6800/4000=1.7である。これは閾値「2」よりも小さい。そこで、CPU7は、2個の初期グループをそのまま用いて、4種類のディスク装置10を、ディスクA群10A〜ディスクB群10Bのグループと、ディスクC群10C〜ディスクD群10Dのグループとに別ける。
更に、CPU7は、2個のグループの各々を二重化された伝送経路111A、111Bの各々に割り当てる。これにより、ディスクA群10A〜〜ディスクB群10Bに属するディスク装置10は、伝送経路111Aを介してデータ転送を行い、ディスクC群10C〜ディスクD群10Dに属するディスク装置10は、伝送経路111Bを介してデータ転送を行う。
第2に、経路#2に対するディスク装置10の割り当てについて、説明する。
CPU7は、図2(B)に示す伝送経路管理テーブル82において、経路#2について、ポートaにディスクA群10A〜ディスクC群10Cに属するディスク装置10を割り当て、ポートbにディスクD群10Dに属するディスク装置10を割り当てる。換言すれば、CPU7は、経路#1とは異なり、図4に示すように、経路#2の一方である伝送経路112AにディスクA群10A〜ディスクC群10Cに属するディスク装置10を割り当て、経路#2の他方である伝送経路112BにディスクD群10Dに属するディスク装置10を割り当てる。これにより、経路#2について、ディスクA群10A〜ディスクD群10Dに属する複数のディスク装置10の間における、データ転送の偏りを少なくすることができる。
このような割当処理のために、CPU7は、4種類のディスク装置10をデータ転送能力に基づいて2個の初期グループに分ける。これにより、ディスク装置10は、ディスクA群10A〜ディスクB群10Bの初期グループと、ディスクC群10C〜ディスクD群10Dの初期グループとに分けられる。
従って、ディスクA群10A〜ディスクB群10Bの初期グループの総和は、(40×20)+(80×20)=2400である。ディスクC群10C〜ディスクD群10Dの初期グループの総和は、(100×20)+(120×60)=9200である。従って、総和の比Yは、9200/2400=3.8である。これは閾値「2」よりも大きい。そこで、CPU7は、1種類のディスク装置10を、総和の大きい方のディスクC群10C〜ディスクD群10Dの初期グループから、総和の小さい方のディスクA群10A〜ディスクB群10Bの初期グループへ移動する。移動される1種類のディスク装置10は、総和の大きい方のディスクC群10C〜ディスクD群10Dの初期グループにおいて、最も値の小さい最大データ転送長を有するディスク装置10の種類であるディスクC群10Cである。
これにより、ディスクA群10A〜ディスクC群10Cの初期グループの総和は、(40×20)+(80×20)+(100×20)=4400となる。ディスクC群10C〜ディスクD群10Dの初期グループの総和は、(120×60)=7200となる。従って、総和の比Yは、7200/4400=1.6である。これは閾値「2」よりも小さい。そこで、CPU7は、2個の変更された初期グループを用いて、4種類のディスク装置10を、ディスクA群10A〜ディスクC群10Cのグループと、ディスクD群10Dのグループとに別ける。
更に、CPU7は、2個のグループの各々を二重化された伝送経路112A、112Bの各々に割り当てる。これにより、ディスクA群10A〜ディスクC群10Cに属するディスク装置10は、伝送経路112Aを介してデータ転送を行い、ディスクD群10Dに属するディスク装置10は、伝送経路112Bを介してデータ転送を行う。
なお、前述した検証処理及び変更処理に代えて、CPU7が、2個の初期グループについて求めた総和の差分がより小さくなるように、初期グループを変更するようにしても良い。
例えば、図2(B)に示す伝送経路管理テーブル82において、経路#1について見ると、前述したように、ディスクA群10A〜ディスクB群10Bの初期グループの総和は4000であり、ディスクC群10C〜ディスクD群10Dの初期グループの総和は6800である。従って、総和の差分は6800−4000=2800である。
ここで、CPU7が、1種類のディスク装置10を、総和の大きい方のディスクC群10C〜ディスクD群10Dの初期グループから、総和の小さい方のディスクA群10A〜ディスクB群10Bの初期グループへ移動する。移動される1種類のディスク装置10は、総和の大きい方のディスクC群10C〜ディスクD群10Dの初期グループにおいて、最も値の小さい最大データ転送長を有するディスク装置10の種類であるディスクC群10Cである。
これにより、ディスクA群10A〜ディスクC群10Cの初期グループの総和は6000となり、ディスクD群10Dの初期グループの総和は4800となる。従って、総和の差分は6000−4800=1200である。
変更前の初期グループの総和よりも変更後の初期グループの総和が小さいので、CPU7は、変更後の初期グループを用いて、4種類のディスク装置10を、ディスクA群10A〜ディスクC群10Cのグループと、ディスクD群10Dのグループとに別ける。
なお、3種類以上のディスク装置10を2個のグループに分けるために、閾値を用いるか、総和の差分を用いるかは、個々のディスクアレイ装置2に応じて定めるようにすれば良い。
また、ディスク群管理テーブル81において、最小の最大データ転送長「40」と最大の最大データ転送長「120」との平均値「80」を求めて、当該平均値を閾値として用いて、ディスクA群10A〜ディスクD群10Dを2個の初期グループに分けるようにしても良い。この時、閾値「80」に等しい最大データ転送長を持つディスクB群10Bは、いずれの初期グループとしても良い。また、ディスクB群10Bに属するディスク装置10を、2個の初期グループに属するディスク装置10の個数の差分がより小さくなるように、分けるようにしても良い。また、ディスクB群10Bに属するディスク装置10を、2個の初期グループに均等な数ずつ、分けるようにしても良い。
図5は、ディスク管理処理フローである。
ディスクアレイ装置2の電源が投入されるか、又は、DE4に新たなディスク装置10が搭載され又はディスク装置10が削除される(ステップS1)。コントローラ3のCPU7は、電源の投入時又は新たなディスク装置10の搭載時にディスクアレイ装置2に搭載された複数のディスク装置10の各々と通信を行って、ディスク情報を収集する(ステップS2)。コントローラ3のCPU7は、ディスクアレイ装置2に搭載された全てのディスク装置10からのディスク情報の収集が完了したか否かを調べる(ステップS3)。ディスク情報の収集が完了していない場合(ステップS3 No)、コントローラ3のCPU7は、ステップS2を繰り返す。コントローラ3のCPU7は、予め定められた回数だけステップS2を繰り返してもディスク情報が得られないディスク装置10について、当該ディスク装置10が削除されたと判断して、ディスク情報の収集が完了したと判断する。ディスク情報の収集が完了した場合(ステップS3 Yes)、コントローラ3のCPU7は、全てのディスク装置10からのディスク情報に基づいてディスク群管理テーブル81を作成し、ディスク群管理テーブル81に基づいて、前述したように、ポートの割当処理を実行する(ステップS4)。これにより、伝送経路管理テーブル82が作成される。
なお、前述したように、ステップS4の最初において、CPU7は、伝送経路の多重度Tとディスク装置10の種類の数Kとを比較する。具体的には、ディスク装置10の種類の数Kが「1」である場合には、ステップS4として、ディスク装置10の数を用いた割り当て処理が実行される。ディスク装置10の種類の数Kが「2」である場合には、ステップS4として、例えばディスク装置10の種類を用いた割り当て処理が実行される。ディスク装置10の種類の数Kが「3」以上である場合には、ステップS4として、図6に示すように、ディスク装置10の最大データ転送長を用いた割り当て処理が実行される。
図6は、ディスク割当処理フローである。
コントローラ3のCPU7は、ある1個の経路Nを選択する(ステップS11)。選択される経路Nは、当該経路に接続されたディスク装置10の種類の数Kが3以上である経路である。CPU7は、図2(A)のディスク群管理テーブル81に格納された経路を先頭から順に参照して、当該経路に接続されたディスク装置10の種類の数Kを求めて、Kが3以上である場合に当該経路を選択する。ステップS11により、経路Nに搭載された(接続された)ディスク装置10についてのポートの設定が開始される。
次に、コントローラ3のCPU7は、経路Nにおける1個のディスク装置10、例えばM番目のディスク装置10を選択する(ステップS12)。このために、図2(A)のディスク群管理テーブル81は、実際には、経路毎かつディスク群毎に、ディスク数に加えて、当該経路に接続されたディスク装置10のディスクIDを格納する。ディスクIDは、ディスクアレイ装置2において、ディスク装置10を一意に特定する識別情報である。例えば、ディスク群管理テーブル81において、経路#1に接続されたディスクA群について、その数「20」と共に、ID=#10、ID=#11、ID=#12等のディスクIDが格納される。これらのディスクIDは、経路#1に接続されたディスクA群に属するディスク装置10を示す。ステップS12により、選択したM番目のディスク装置10についてのポートの設定が開始される。M番目のディスク装置10は、例えば、当該経路に接続されたディスク装置10の中でディスクIDの小さい順に選択される。
コントローラ3のCPU7は、M番目のディスク装置10のディスクIDを用いて、ディスク群管理テーブル81の選択した経路を参照することにより、M番目のディスク装置10が選択した経路に接続されたディスクA群10Aに属するか否かを判断する(ステップS13)。
M番目のディスク装置10がディスクA群10Aに属する場合(ステップS13 Yes)、コントローラ3のCPU7は、伝送経路管理テーブル82を参照することにより、M番目のディスク装置10が使用するポートを設定する(ステップS14)。
M番目のディスク装置10がディスクA群10Aに属さない場合(ステップS13 No)、コントローラ3のCPU7は、前述したように、ディスク群管理テーブル81を参照することにより、M番目のディスク装置10がディスクB群10Bに属するか否かを判断する(ステップS15)。M番目のディスク装置10がディスクB群10Bに属する場合(ステップS15 Yes)、コントローラ3のCPU7は、伝送経路管理テーブル82を参照することにより、M番目のディスク装置10が使用するポートを設定する(ステップS16)。
M番目のディスク装置10がディスクB群10Bに属さない場合(ステップS15 No)、コントローラ3のCPU7は、前述したように、ディスク群管理テーブル81を参照することにより、M番目のディスク装置10がディスクC群10Cに属するか否かを判断する(ステップS17)。M番目のディスク装置10がディスクC群10Cに属する場合(ステップS17 Yes)、コントローラ3のCPU7は、伝送経路管理テーブル82を参照することにより、M番目のディスク装置10が使用するポートを設定する(ステップS18)。
M番目のディスク装置10がディスクC群10Cに属さない場合(ステップS17 No)、コントローラ3のCPU7は、前述したように、ディスク群管理テーブル81を参照することにより、M番目のディスク装置10がディスクD群10Dに属するか否かを判断する(ステップS19)。M番目のディスク装置10がディスクD群10Dに属する場合(ステップS19 Yes)、コントローラ3のCPU7は、伝送経路管理テーブル82を参照することにより、M番目のディスク装置10が使用するポートを設定する(ステップS110)。
M番目のディスク装置10がディスクD群10Dに属さない場合(ステップS19 No)、コントローラ3のCPU7は、経路Nにおける全てのディスク装置10についてのポートの設定が終了したか否かを判断する(ステップS111)。このために、例えば、CPU7は、図2(A)のディスク群管理テーブル81において、ポートの設定が終了したディスク装置10について、当該終了を示すフラグを立てる。全てのディスク装置10についてのポートの設定が終了しない場合(ステップS111 No)、コントローラ3のCPU7は、ステップS12を繰り返す。
全てのディスク装置10についてのポートの設定が終了した場合(ステップS111 Yes)、コントローラ3のCPU7は、全ての経路についてのポートの設定が終了したか否かを判断する(ステップS112)。このために、例えば、CPU7は、図2(A)のディスク群管理テーブル81において、当該経路に接続された全てのディスク装置10についてポートの設定が終了した経路について、当該終了を示すフラグを立てる。全ての経路についてのポートの設定が終了しない場合(ステップS112 No)、コントローラ3のCPU7は、ステップS11を繰り返す。全ての経路についてのポートの設定が終了した場合(ステップS112 Yes)、コントローラ3のCPU7は、処理を終了する。
なお、以上のように設定されたポートは、例えばキャッシュ6に送信され保持される。これにより、キャッシュ6は、ディスク装置10に応じて設定されたポート、換言すれば、伝送経路を介して、データ転送を実行する。
図7は、ディスク割当処理フローの他の一例を示す図である。
図7の処理においては、ポートの設定が、I/O処理要求を受信する都度に実行される。なお、図7の処理において、図2(A)のディスク群管理テーブル81及び伝送経路管理テーブル82は、経路#1におけるディスクA群10A〜ディスクC群10Cについてのみのディスク管理データを格納するものとする。
コントローラ3は、ホストコンピュータ1からのI/O処理要求を受信すると(ステップS21)、当該I/O処理要求がディスクA群10Aについてのアクセスであるか否かを判断する(ステップS22)。例えば、キャッシュ6は、受信したI/O処理要求をCPU7に送信して、当該I/O処理要求がディスクA群10Aについてのアクセスであるか否かを問い合わせる。これに応じて、CPU7は、I/O処理要求に含まれるアクセス先のディスク装置10のディスクIDを用いて保持するディスク管理情報を参照することにより、当該I/O処理要求がディスクA群10Aについてのアクセスであるか否かを判断する。
I/O処理要求がディスクA群10Aについてのアクセスである場合(ステップS22 Yes)、コントローラ3は、伝送経路管理テーブル82を参照して、ディスクA群10Aに割り当てられたポート、例えばポートaを使用することを決定し(ステップS23)、決定したポートaを用いて、当該ディスク装置10へのアクセスを実行する(ステップS24)。例えば、CPU7は、前記判断に基づいて、当該I/O処理要求がディスクA群10Aについてのアクセスである場合にはポートaをキャッシュ6に返信し、当該I/O処理要求がディスクA群10Aについてのアクセスでない場合にはその旨をキャッシュ6に返信する。これにより、キャッシュ6は、当該ディスク装置10について指定されたポートaを介して、当該ディスク装置10にアクセスする。
I/O処理要求がディスクA群10Aについてのアクセスでない場合(ステップS22 No)、コントローラ3は、ステップS22と同様にして、当該I/O処理要求がディスクB群10Bについてのアクセスであるか否かを判断する(ステップS25)。I/O処理要求がディスクB群10Bについてのアクセスである場合(ステップS25 Yes)、コントローラ3は、ステップS23と同様にして、ディスクB群10Bに割り当てられたポート、例えばポートbを使用することを決定し(ステップS26)、決定したポートbを用いてステップS24を実行する。
I/O処理要求がディスクB群10Bについてのアクセスでない場合(ステップS25 No)、コントローラ3は、ステップS22と同様にして、当該I/O処理要求がディスクC群10Cについてのアクセスであるか否かを判断する(ステップS27)。I/O処理要求がディスクC群10Cについてのアクセスである場合(ステップS27 Yes)、コントローラ3は、ステップS26を実行して、ディスクC群10Cに割り当てられたポート、例えばポートbを使用することを決定し、決定したポートbを用いてステップS24を実行する。
I/O処理要求がディスクC群10Cについてのアクセスでない場合(ステップS27 No)、コントローラ3は、I/O処理要求についての処理をエラー終了する(ステップS28)。
次に、図8〜図11を参照して、ディスク割当処理の更に他の一例について説明する。
図1〜図7のディスク割当処理においては、ポートの割当の決定のために最大データ転送長が用いられ、また、ディスク装置10に割り当てられたポートは固定である。これに対して、図8〜図11のディスク割当処理においては、ポートの割当の決定のためにI/O転送長が用いられ、また、ディスク装置10に割り当てられたポートは可変である。
図8は、ディスク割当処理の更に他の一例を示す図である。なお、図8の処理において、図2(A)のディスク群管理テーブル81及び図2(B)の伝送経路管理テーブル82は、経路#1におけるディスクA群10A〜ディスクC群10Cについてのみのディスク管理データを格納するものとする。
この場合、例えばディスクアレイ装置2の電源投入時には、図5及び図6の処理により、図8に示すように、ディスクA群10Aは伝送経路111Aに割り当てられ、ディスクB群10B〜ディスクC群10Cは伝送経路111Bに割り当てられる。
この後、コントローラ3のCPU7は、ディスク装置10へのアクセスを監視する。このために、キャッシュ6は、ホストコンピュータ1から受信したI/O処理要求のコマンドを、CPU7に送る。CPU7は、I/O処理要求のコマンドにおいて指定されたデータ転送長であるI/O転送長に基づいて、ディスク装置10の二重化された伝送経路111A、111B、112A、112Bへの割り当てを変更する。
図9(A)は、I/O処理要求のコマンドの一例を示す。
I/O処理要求のコマンドは、例えば、コマンド種別、データの転送元、データの転送先、I/O転送長を含む。コマンド種別は、例えば、データの書き込み要求又はデータの読出し要求のいずれかである。データの転送元はデータの転送元を示すアドレスである。データの転送先は、データの転送先を示すアドレスである。I/O転送長は、当該コマンドの実行により転送されるデータの実際のデータ長である。
ここで、前述したように、ディスク群管理テーブル81において、ディスクA群10A〜ディスクC群10Cの最大データ転送長は、図9(B)に示す通りである。また、ディスクA群10Aは伝送経路111Aに割り当てられ、ディスクB群10B〜ディスクC群10Cは伝送経路111Bに割り当てられている。
これに応じて、CPU7は、ポートa、換言すれば、伝送経路111Aには、ディスクA群10Aの最大データ転送長である40キロバイト以下のI/O転送長を有するディスク群を割り当てる。また、CPU7は、ポートb、換言すれば、伝送経路111Bには、ディスクA群10Aの最大データ転送長である40キロバイトより大きいI/O転送長を有するディスク群を割り当てる。
そこで、ディスクA群10A〜ディスクC群10CについてのI/O転送長が、図9(C)に示す値であるとする。具体的には、ディスクA群10AについてのI/O転送長が30キロバイトであり、ディスクB群10BについてのI/O転送長が60キロバイトであり、ディスクC群10CについてのI/O転送長が20キロバイトであるとする。
この場合、CPU7は、ディスクA群10A〜ディスクC群10Cの伝送経路111A及び111Bへの割り当てを、図8に示す状態から、図10に示す状態に変更する。換言すれば、CPU7は、ディスクA群10A及びディスクC群10Cを伝送経路111Aに割り当て、ディスクB群10Bを伝送経路111Bに割り当てる。
具体的には、ディスクA群10Aは、I/O転送長が30キロバイトであるので、そのまま、伝送経路111Aに割り当てる。なお、実際には、ディスクA群10Aの割り当てが変更されることは無い。ディスクB群10Bは、I/O転送長が60キロバイトであるので、そのまま、伝送経路111Bに割り当てる。
一方、ディスクC群10Cは、I/O転送長が20キロバイトであるので、40キロバイト以下のI/O転送長を有するディスク群が割り当てられる、ポートa、換言すれば、伝送経路111Aに、割り当てるようにする。従って、ディスクC群10Cの割り当てが、図8に示すポートb、換言すれば、伝送経路111Bから、ポートa、換言すれば、伝送経路111Aに変更される。これにより、実際に転送されるデータのサイズに基づいて、伝送経路にディスク装置10を割り当てることができる。
例えば、ディスク装置10によって、データの書き込み要求におけるI/O転送長と、データの読出し要求におけるI/O転送長とでは、長さが異なる場合がある。一方、ディスク装置10の用途として、データのバックアップに使用される場合と、実際の業務に使用される場合とがある。データのバックアップに使用されるディスク装置10においては、アクセスの殆どがデータの書き込み要求である。実際の業務に使用されるディスク装置10においては、例えば、データの読出し要求がデータの書き込み要求よりも優先される場合がある。
そこで、ディスク群を、同一のコマンドにおける同一のI/O転送長を有するディスク装置10によって構成する。これにより、データのバックアップに使用されるディスク装置10については、データの書き込み要求におけるI/O転送長を用いて、ディスク群が伝送経路に割り当てられる。また、実際の業務に使用されるディスク装置10については、データの読出し要求におけるI/O転送長を用いて、ディスク群が伝送経路に割り当てられる。これにより、ディスク装置10の用途に応じて、ディスク装置10を伝送経路に適切に割り当てることができる。
図11は、ディスク割当処理フローの更に他の一例を示す図である。
コントローラ3は、ホストコンピュータ1からのI/O処理要求を受信すると(ステップS31)、当該I/O処理要求がディスクA群10Aについてのアクセスであるか否かを判断する(ステップS32)。例えば、キャッシュ6は、受信したI/O処理要求をCPU7に送信して、当該I/O処理要求がディスクA群10Aについてのアクセスであるか否かを問い合わせる。これに応じて、CPU7は、I/O処理要求に含まれるアクセス先のディスク装置10のディスクIDを用いて保持するディスク管理情報を参照することにより、当該I/O処理要求がディスクA群10Aについてのアクセスであるか否かを判断する。
I/O処理要求がディスクA群10Aについてのアクセスである場合(ステップS32 Yes)、コントローラ3は、伝送経路管理テーブル82を参照して、ディスクA群10Aに割り当てられたポート、例えばポートaを使用することを決定し(ステップS33)、決定したポートaを用いて、当該ディスク装置10へのアクセスを実行する(ステップS34)。例えば、CPU7は、前記判断に基づいて、当該I/O処理要求がディスクA群10Aについてのアクセスである場合にはポートaをキャッシュ6に返信し、当該I/O処理要求がディスクA群10Aについてのアクセスでない場合にはその旨をキャッシュ6に返信する。これにより、キャッシュ6は、当該ディスク装置10について指定されたポートaを介して、当該ディスク装置10にアクセスする。
I/O処理要求がディスクA群10Aについてのアクセスでない場合(ステップS32 No)、コントローラ3は、当該I/O処理要求におけるI/O転送長が40キロバイト以下であるか否かを判断する(ステップS35)。I/O処理要求におけるI/O転送長が40キロバイト以下である場合(ステップS35 Yes)、コントローラ3は、ステップS33を実行して、ポートaを使用することを決定し、決定したポートaを用いてステップS34を実行する。
I/O処理要求におけるI/O転送長が40キロバイトより大きい場合(ステップS35 No)、コントローラ3は、ポートbを使用することを決定し(ステップS36)、決定したポートbを用いてステップS34を実行する。
なお、図11の処理によれば、コントローラ3のCPU7は、最小の最大データ転送長を有するディスク群、例えばディスクA群10Aに属するディスク装置10のみを2個のグループの一方とし、他の最大データ転送長を有するディスク群、例えばディスクB群10B〜ディスクD群10Dに属するディスク装置10が2個のグループの他方とする。これにより、最小の最大データ転送長を有する、ディスクA群10Aに属するディスク装置10がデータ転送する回数を、他のディスク装置10がデータ転送する回数よりも多くすることができる。
また、コントローラ3のCPU7は、最大の最大データ転送長を有する、ディスクD群10Dに属するディスク装置10を2個のグループの一方とし、他の最大データ転送長を有する、ディスクA群10A〜ディスクC群10Cに属するディスク装置10を2個のグループの他方とするようにしても良い。これにより、最大の最大データ転送長を有する、ディスクD群10Dに属するディスク装置10のデータ転送が、他のディスク装置10のデータ転送の妨げになることを回避することができる。
なお、図8〜図11のディスク割当処理においては、I/O転送長に基づいてディスク装置10の割り当てが変更されるが、他のパラメータに基づいてディスク装置10の割り当てを変更するようにしても良い。
例えば、CPU7が、ディスク装置10へのアクセスを監視して、アクセスの頻度に基づいて、二重化された伝送経路への割り当てを変更するようにしても良い。この場合、CPU7は、アクセス頻度が最大であるディスク装置10を2個のグループの一方とし、残りのディスク装置10を2個のグループの他方とする。これにより、最大のアクセス頻度を有するディスク装置10のデータ転送が、他のディスク装置10のデータ転送の妨げになることを回避することができる。
また、CPU7が、予め定められた場合には、伝送経路管理テーブル82を無視するようにしても良い。例えば、二重化された伝送経路の一方に障害が発生した場合には、CPU7は、伝送経路管理テーブル82を無視する。この場合、CPU7は、二重化された伝送経路の他方を介して、ディスク装置10へアクセスする。これにより、ディスクアレイ装置2において、二重化された伝送経路の一方に障害が発生した場合でも、ディスク割当処理に拘わらず、データ転送を行うことができる。
1 ホストコンピュータ
2 ディスクアレイ装置
3 コントローラ
4、41、42 デバイスエンクロージャ(DE)
5 チャネルアダプタ(CA)
6 キャッシュ
7 CPU
8 メモリ
9A、9B デバイスインターフェイス(DI)
10 ディスク装置
111A、111B、112A、112B 伝送経路

Claims (7)

  1. キャッシュメモリと、
    互いにデータ転送能力の異なる3種類以上のディスク装置と、
    前記キャッシュメモリと前記3種類以上のディスク装置との間におけるデータの転送の経路である二重化された伝送経路と、
    前記3種類以上のディスク装置をデータ転送能力に基づいて2個のグループに分けて、前記2個のグループの各々を前記二重化された伝送経路の各々に割り当てるコントローラとを含み、
    前記コントローラが、
    前記3種類以上のディスク装置の種類を最大データ転送長の順に並べた場合における、最も値の小さい最大データ転送長Minを有するディスク装置の種類、中央に位置し最大データ転送長Midを有するディスク装置の種類及び最も値の大きい最大データ転送長Maxを有するディスク装置の種類を抽出し、前記最大データ転送長Minを有するディスク装置の種類から前記中央に位置するディスク装置の種類までを第1の初期グループとしかつ他のディスク装置の種類を第2の初期グループとするか、又は、前記中央に位置するディスク装置の種類から前記最大データ転送長Maxを有するディスク装置の種類までを第1の初期グループとしかつ他のディスク装置の種類を第2の初期グループとし、
    ディスク装置の種類毎にその最大データ転送長と台数との積を求め、前記初期グループ毎にその初期グループに属するディスク装置の種類について求めた前記積の総和を求め、2個の前記初期グループについて求めた前記総和の比を求め、前記総和の比を用いて2個の前記初期グループについての検証を行う
    ことを特徴とするディスクアレイ装置。
  2. 前記コントローラが、前記最大データ転送長Midと前記最大データ転送長Minとの差分(Mid−Min)と前記最大データ転送長Midと前記最大データ転送長Maxとの差分(Max−Mid)とを求め、(Mid−Min)<(Max−Mid)の場合には、前記最大データ転送長Minを有するディスク装置の種類から前記中央に位置するディスク装置の種類までを前記第1の初期グループとしかつ他のディスク装置の種類を前記第2の初期グループとし、(Mid−Min)>(Max−Mid)の場合には、前記中央に位置するディスク装置の種類から前記最大データ転送長Maxを有するディスク装置の種類までを前記第1の初期グループとしかつ他のディスク装置の種類を前記第2の初期グループとする
    ことを特徴とする請求項1に記載のディスクアレイ装置。
  3. 前記コントローラが、前記検証において、前記総和の比と予め定められた閾値との比較に基づいて、前記総和の比と前記閾値とが第1の関係にある場合、2個の前記初期グループを用いて、前記3種類以上のディスク装置を前記2個のグループに分け、前記総和の比と前記閾値とが前記第1の関係以外の関係である第2の関係にある場合、前記総和の比と前記閾値との関係が前記第1の関係となるように1又は複数の種類のディスク装置を前記総和の大きい初期グループから前記総和の小さい初期グループへ移動することにより、前記3種類以上のディスク装置を前記2個のグループに分ける
    ことを特徴とする請求項2に記載のディスクアレイ装置。
  4. 前記コントローラが、前記3種類以上のディスク装置へのアクセスを監視して、前記アクセスのコマンドにおいて指定されたデータ転送長に基づいて、前記3種類以上のディスク装置の前記二重化された伝送経路への割り当てを変更する
    ことを特徴とする請求項1に記載のディスクアレイ装置。
  5. 前記コントローラが、前記3種類以上のディスク装置へのアクセスを監視して、前記アクセスの頻度に基づいて、前記3種類以上のディスク装置の前記二重化された伝送経路への割り当てを変更する
    ことを特徴とする請求項1に記載のディスクアレイ装置。
  6. 前記コントローラが、前記二重化された伝送経路の一方に障害が発生した場合、前記二重化された伝送経路の他方を介して、前記3種類以上のディスク装置へアクセスする
    ことを特徴とする請求項1に記載のディスクアレイ装置。
  7. キャッシュメモリと、互いにデータ転送能力の異なる3種類以上のディスク装置と、前記キャッシュメモリと前記3種類以上のディスク装置との間におけるデータの転送の経路である二重化された伝送経路と、コントローラとを含むディスクアレイ装置の制御方法であって、
    前記コントローラが、前記3種類以上のディスク装置のデータ転送能力を収集するステップと、
    前記コントローラが、前記3種類以上のディスク装置の種類を最大データ転送長の順に並べた場合における、最も値の小さい最大データ転送長Minを有するディスク装置の種類、中央に位置し最大データ転送長Midを有するディスク装置の種類及び最も値の大きい最大データ転送長Maxを有するディスク装置の種類を抽出し、前記最大データ転送長Minを有するディスク装置の種類から前記中央に位置するディスク装置の種類までを第1の初期グループとしかつ他のディスク装置の種類を第2の初期グループとするか、又は、前記中央に位置するディスク装置の種類から前記最大データ転送長Maxを有するディスク装置の種類までを第1の初期グループとしかつ他のディスク装置の種類を第2の初期グループとするステップと、
    前記コントローラが、ディスク装置の種類毎にその最大データ転送長と台数との積を求め、前記初期グループ毎にその初期グループに属するディスク装置の種類について求めた前記積の総和を求め、2個の前記初期グループについて求めた前記総和の比を求め、前記総和の比を用いて2個の前記初期グループについての検証を行うステップと、
    前記コントローラが、前記検証に基づいて前記3種類以上のディスク装置2個のグループに分けて、前記2個のグループの各々を前記二重化された伝送経路の各々に割り当てるステップを含む
    ことを特徴とするディスクアレイ装置の制御方法。
JP2010117527A 2010-05-21 2010-05-21 ディスクアレイ装置及びディスクアレイ装置の制御方法 Active JP5533252B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2010117527A JP5533252B2 (ja) 2010-05-21 2010-05-21 ディスクアレイ装置及びディスクアレイ装置の制御方法
US13/091,924 US9075728B2 (en) 2010-05-21 2011-04-21 Disk array device and method for controlling disk array device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010117527A JP5533252B2 (ja) 2010-05-21 2010-05-21 ディスクアレイ装置及びディスクアレイ装置の制御方法

Publications (2)

Publication Number Publication Date
JP2011248395A JP2011248395A (ja) 2011-12-08
JP5533252B2 true JP5533252B2 (ja) 2014-06-25

Family

ID=44973431

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010117527A Active JP5533252B2 (ja) 2010-05-21 2010-05-21 ディスクアレイ装置及びディスクアレイ装置の制御方法

Country Status (2)

Country Link
US (1) US9075728B2 (ja)
JP (1) JP5533252B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6142599B2 (ja) * 2013-03-18 2017-06-07 富士通株式会社 ストレージシステム、ストレージ装置および制御プログラム
WO2015151239A1 (ja) * 2014-04-02 2015-10-08 株式会社日立製作所 通信用半導体集積回路、ストレージ装置およびストレージ装置の障害管理方法
CN104111805B (zh) * 2014-07-15 2017-06-13 华为技术有限公司 一种i/o请求处理方法及存储系统
CN105573660B (zh) * 2014-09-30 2019-05-17 伊姆西公司 用于改善分簇磁盘阵列的性能的方法和装置
TWI767997B (zh) 2017-03-23 2022-06-21 日商索尼半導體解決方案公司 通信裝置、通信方法、程式及通信系統
US10725931B2 (en) * 2018-08-22 2020-07-28 Western Digital Technologies, Inc. Logical and physical address field size reduction by alignment-constrained writing technique

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04170624A (ja) * 1990-11-05 1992-06-18 Hitachi Ltd 外部記憶装置を含むシステム
JP3358687B2 (ja) * 1995-03-13 2002-12-24 株式会社日立製作所 ディスクアレイ装置
US5845319A (en) * 1995-08-23 1998-12-01 Fujitsu Limited Disk array device which separates local and physical disks using striping and operation mode selection
JP2002288105A (ja) 2001-03-26 2002-10-04 Hitachi Ltd ストレージエリアネットワークシステム、その運用方法、ストレージ、データ転送量監視装置
US6904477B2 (en) * 2001-04-13 2005-06-07 Sun Microsystems, Inc. Virtual host controller interface with multipath input/output
US7237021B2 (en) 2003-04-04 2007-06-26 Bluearc Uk Limited Network-attached storage system, device, and method supporting multiple storage device types
US7908413B2 (en) * 2003-07-15 2011-03-15 International Business Machines Corporation Data allocation in a distributed storage system
US20050097132A1 (en) * 2003-10-29 2005-05-05 Hewlett-Packard Development Company, L.P. Hierarchical storage system
US7302522B2 (en) * 2004-12-27 2007-11-27 Lsi Corporation Optimizing I/O performance in a RAID subsystem using an adaptive maximum request size for a logical drive
JP5175483B2 (ja) * 2007-03-30 2013-04-03 株式会社日立製作所 ストレージ装置及びその制御方法
JP2008269142A (ja) * 2007-04-18 2008-11-06 Hitachi Ltd ディスクアレイ装置

Also Published As

Publication number Publication date
US9075728B2 (en) 2015-07-07
US20110289273A1 (en) 2011-11-24
JP2011248395A (ja) 2011-12-08

Similar Documents

Publication Publication Date Title
US10853139B2 (en) Dynamic workload management based on predictive modeling and recommendation engine for storage systems
JP5427630B2 (ja) 動的ページ再割当てストレージシステムにおけるアプリケーション及び階層構成の管理
JP4818395B2 (ja) ストレージ装置及びデータコピー方法
US8898385B2 (en) Methods and structure for load balancing of background tasks between storage controllers in a clustered storage environment
US8984221B2 (en) Method for assigning storage area and computer system using the same
US7478177B2 (en) System and method for automatic reassignment of shared storage on blade replacement
JP5781925B2 (ja) 計算機システム及びその制御方法
JP5533252B2 (ja) ディスクアレイ装置及びディスクアレイ装置の制御方法
JP5567147B2 (ja) 記憶制御装置、又は複数の当該記憶制御装置を有する記憶システム
JP4671738B2 (ja) ストレージシステム及び記憶領域割当て方法
JP5131271B2 (ja) 組み合わせ決定プログラム、組み合わせ決定装置、および組み合わせ決定方法
US20090089534A1 (en) Thin Provisioning Migration and Scrubbing
JP4935331B2 (ja) ストレージシステムと記憶領域の選択方法並びにプログラム
JP2009238114A (ja) ストレージ管理方法、ストレージ管理プログラム、ストレージ管理装置およびストレージ管理システム
JP2005284343A (ja) ストレージ装置
CN106610903A (zh) 层级化存储器系统、存储器控制器和去重及存储器层级化方法
WO2013124876A1 (en) Storage apparatus and method thereof for performance control based on usage cases of snapshots
JP4693589B2 (ja) 計算機システム、記憶領域割当方法及び管理計算機
JP6617461B2 (ja) 制御装置、制御プログラム、及び制御方法
US8555021B1 (en) Systems and methods for automating and tuning storage allocations
JP5730446B1 (ja) トライアル領域を備えた階層化ストレージシステム、ストレージコントローラ及びプログラム
CN101997919A (zh) 一种存储资源的管理方法及管理装置
JP4616899B2 (ja) 管理サーバ、プール増設方法および計算機システム
EP2584453A2 (en) Method and apparatus to change storage tiers
JP2000187559A (ja) ディスクシステム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130403

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131219

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140107

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140310

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

R150 Certificate of patent or registration of utility model

Ref document number: 5533252

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140414