JP2008090372A - Storage device and load balancing method - Google Patents

Storage device and load balancing method Download PDF

Info

Publication number
JP2008090372A
JP2008090372A JP2006267493A JP2006267493A JP2008090372A JP 2008090372 A JP2008090372 A JP 2008090372A JP 2006267493 A JP2006267493 A JP 2006267493A JP 2006267493 A JP2006267493 A JP 2006267493A JP 2008090372 A JP2008090372 A JP 2008090372A
Authority
JP
Japan
Prior art keywords
load factor
predetermined threshold
equal
physical
parity
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2006267493A
Other languages
Japanese (ja)
Inventor
Hidemichi Koseki
英通 小関
Junji Ogawa
純司 小川
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2006267493A priority Critical patent/JP2008090372A/en
Priority to US11/598,664 priority patent/US8387063B2/en
Priority to EP07251066A priority patent/EP1909163A3/en
Publication of JP2008090372A publication Critical patent/JP2008090372A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording 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/3409Recording 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/3433Recording 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
    • 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
    • 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
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/81Threshold
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2206/00Indexing scheme related to dedicated interfaces for computers
    • G06F2206/10Indexing scheme related to storage interfaces for computers, indexing schema related to group G06F3/06
    • G06F2206/1012Load balancing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a storage device maintaining high-speed I/O throughput. <P>SOLUTION: The storage device includes: a load factor calculating part for calculating the load factors of a plurality of physical devices; a load factor determining part for determining whether or not the load factors of the physical devices calculated by the load factor calculating part are equal to or greater than a predetermined threshold value; a command ratio determining part for determining whether or not the command ratio of either a write command or a read command issued from a host computer is equal to or greater than a predetermined threshold value, if the load factor determining part determines that the load factors of the physical devices are equal to or greater than the predetermined threshold value; and a switching part for replacing data with parities among the plurality of physical devices if the command ratio determining part determines that the command ratio is equal to or greater than the predetermined threshold value. <P>COPYRIGHT: (C)2008,JPO&INPIT

Description

本発明は、ストレージ装置及び負荷分散方法に関し、例えば、物理ディスクの負荷バランスを制御するストレージ装置に適用して好適なものである。   The present invention relates to a storage apparatus and a load distribution method, and is suitable for application to a storage apparatus that controls the load balance of physical disks, for example.

一般に、複数のディスクから構成されるストレージ装置にて、高いI/O処理性能を引き出すためには、バックエンドを構成するディスクの性能を十分に引き出す必要がある。   In general, in order to bring out a high I / O processing performance in a storage apparatus composed of a plurality of disks, it is necessary to sufficiently draw out the performance of the disks constituting the back end.

ここで、バックエンドの構築には、データの信頼性向上を目的としたRAID(Redundant Arrays of Inexpensive Disks)構成が多くとられており、さまざまなレベルのRAIDを構成することができるストレージ装置が提案されている(例えば非特許文献1参照)。   Here, many RAID (Redundant Arrays of Inexpensive Disks) configurations for improving the reliability of data have been adopted for the construction of the back end, and a storage apparatus capable of configuring various levels of RAID is proposed. (See, for example, Non-Patent Document 1).

また、ディスクの負荷分散を実現するための一手法として、物理ボリュームに設定された特定の論理ボリュームが過負荷状態となった場合に、その論理ボリュームの内容を、予備の物理ボリュームに設定された論理ボリュームにコピーし、両論理ボリュームを1つの仮想論理ボリュームとしてホスト装置に提供することで、負荷を分散する手法が提案されている(例えば特許文献1参照)。
論文:「A Case for Redundant Arrays of Inexpensive Disks (RAID)」David A. Patterson, Garth Gibson and Randy H. Katz著[平成18年9月29日URL検索]http://www.cs.cmu.edu/~garth/RAIDpaper/Patterson88.pdf 特開2006−053601号公報
In addition, as a method for realizing disk load balancing, when a specific logical volume set to a physical volume is overloaded, the contents of that logical volume are set to a spare physical volume. A method has been proposed in which the load is distributed by copying to a logical volume and providing both logical volumes as one virtual logical volume to the host device (see, for example, Patent Document 1).
Paper: "A Case for Redundant Arrays of Inexpensive Disks (RAID)" by David A. Patterson, Garth Gibson and Randy H. Katz [URL search on September 29, 2006] http://www.cs.cmu.edu /~garth/RAIDpaper/Patterson88.pdf JP 2006-053601 A

ここで、ストライピング制御を行うRAID構成では、データが複数のディスクに分散しているため、複数のディスクへのアクセスによって1つの処理が完了する場合がある。ゆえに、RAIDを構成する特定のディスクに負荷が集中し、負荷が集中したディスクが処理限界にまで達すると、そのディスクがボトルネックとなることで処理遅延が発生し、ストレージ装置性能を十分に引き出せない(以下、ディスクネックと定義する)という問題がある。   Here, in a RAID configuration that performs striping control, data is distributed over a plurality of disks, and thus one process may be completed by accessing the plurality of disks. Therefore, if the load is concentrated on a specific disk that constitutes the RAID and the disk on which the load is concentrated reaches the processing limit, the disk becomes a bottleneck, causing a processing delay, and the storage device performance can be sufficiently extracted. There is a problem that it is not (hereinafter defined as a disk neck).

また、特許文献1にて提案された手法によれば、予備の物理ボリュームのディスクを割り当て、1つの論理ボリュームに対して担当するディスクの台数を増加させることで負荷を分散することが可能であるが、予備の物理ボリュームを用意するために、ユーザが使用可能な領域が減少するという問題がある。   Further, according to the method proposed in Patent Document 1, it is possible to distribute a load by allocating a spare physical volume disk and increasing the number of disks in charge for one logical volume. However, since a spare physical volume is prepared, there is a problem that the area that can be used by the user is reduced.

本発明は以上の点を考慮してなされたもので、高速なI/O処理性能を維持し、ストレージ装置性能を十分に引き出し得るストレージ装置及び負荷分散方法を提案するものである。   The present invention has been made in view of the above points, and proposes a storage apparatus and a load distribution method that can maintain high-speed I / O processing performance and sufficiently draw out storage apparatus performance.

かかる課題を解決するために本発明においては、ホスト計算機から送信されるデータと当該データのパリティとを所定単位ごとに分散保持する複数の物理デバイスを有するストレージ装置であって、複数の物理デバイスの負荷率を算出する負荷率算出部と、負荷率算出部により算出された物理デバイスの負荷率が所定の閾値以上であるか否かを判断する負荷率判断部と、負荷率判断部により物理デバイスの負荷率が所定の閾値以上であると判断された場合に、ホスト計算機から発行されるライトコマンド又はリードコマンドのいずれかのコマンド比率が所定の閾値以上であるか否かを判断するコマンド比率判断部と、コマンド比率判断部によりコマンド比率が所定の閾値以上であると判断された場合に、複数の物理デバイス間のデータとパリティとを入れ替える入れ替え部とを備えるようにした。   In order to solve such a problem, in the present invention, a storage apparatus having a plurality of physical devices that distribute and hold data transmitted from a host computer and the parity of the data for each predetermined unit, A load factor calculation unit that calculates a load factor, a load factor determination unit that determines whether or not the load factor of the physical device calculated by the load factor calculation unit is equal to or greater than a predetermined threshold, and a physical device by the load factor determination unit Command ratio determination for determining whether the command ratio of either a write command or a read command issued from the host computer is greater than or equal to a predetermined threshold when it is determined that the load factor of the host is greater than or equal to a predetermined threshold And the command ratio determining unit determine that the command ratio is equal to or greater than a predetermined threshold and It was set to and a replacement unit for replacing the I.

従って、特定の物理デバイスに負荷が集中した場合に、その負荷を均一化させるため、当該物理デバイスがボトルネックとなることで処理遅延が発生してストレージ装置性能を十分に引き出せないといった事態を回避して、物理デバイスを負荷分散することができる。   Therefore, when the load is concentrated on a specific physical device, in order to equalize the load, avoiding the situation where the physical device becomes a bottleneck and processing delay occurs and the storage device performance cannot be sufficiently extracted. Thus, it is possible to load balance physical devices.

また、本発明においては、ホスト計算機から送信されるデータと当該データのパリティとを所定単位ごとに分散保持する複数の物理デバイスを有するストレージ装置の負荷分散方法であって、複数の物理デバイスの負荷率を算出する第1のステップと、第1のステップにおいて算出した物理デバイスの負荷率が所定の閾値以上であるか否かを判断する第2のステップと、第2のステップにおいて物理デバイスの負荷率が所定の閾値以上であると判断した場合に、ホスト計算機から発行されるライトコマンド又はリードコマンドのいずれかのコマンド比率が所定の閾値以上であるか否かを判断する第3のステップと、第3のステップにおいてコマンド比率が所定の閾値以上であると判断した場合に、複数の物理デバイス間のデータとパリティとを入れ替える第4のステップとを備えるようにした。   Further, in the present invention, there is provided a load distribution method for a storage apparatus having a plurality of physical devices that scatter-holds data transmitted from a host computer and the parity of the data for each predetermined unit. A first step of calculating a rate, a second step of determining whether or not the load factor of the physical device calculated in the first step is equal to or greater than a predetermined threshold, and a load of the physical device in the second step A third step of determining whether the command ratio of either a write command or a read command issued from the host computer is equal to or higher than a predetermined threshold when it is determined that the rate is equal to or higher than a predetermined threshold; When it is determined in the third step that the command ratio is equal to or greater than a predetermined threshold, data and parity between a plurality of physical devices And so and a fourth step of replacing.

従って、特定の物理デバイスに負荷が集中した場合に、その負荷を均一化させるため、当該物理デバイスがボトルネックとなることで処理遅延が発生してストレージ装置性能を十分に引き出せないといった事態を回避して、物理デバイスを負荷分散することができる。   Therefore, when the load is concentrated on a specific physical device, in order to equalize the load, avoiding the situation where the physical device becomes a bottleneck and processing delay occurs and the storage device performance cannot be sufficiently extracted. Thus, it is possible to load balance physical devices.

本発明によれば、複数の物理デバイスの負荷率を算出し、物理デバイスの負荷率が所定の閾値以上であるか否かを判断して、物理デバイスの負荷率が所定の閾値以上であると判断した場合に、ホスト計算機から発行されるライトコマンド又はリードコマンドのいずれかのコマンド比率が所定の閾値以上であるか否かを判断し、コマンド比率が所定の閾値以上であると判断した場合に、複数の物理デバイス間のデータとパリティとを入れ替えることにより、特定の物理デバイスに負荷が集中した場合に、その負荷を均一化させるため、当該物理デバイスがボトルネックとなることで処理遅延が発生してストレージ装置性能を十分に引き出せないといった事態を回避して、物理デバイスを負荷分散することができ、かくして、高速なI/O処理性能を維持し、ストレージ装置性能を十分に引き出し得るストレージ装置及び負荷分散方法を実現できる。   According to the present invention, the load factor of a plurality of physical devices is calculated, it is determined whether the load factor of the physical device is equal to or greater than a predetermined threshold, and the load factor of the physical device is equal to or greater than the predetermined threshold. When it is determined, it is determined whether the command ratio of either a write command or a read command issued from the host computer is equal to or greater than a predetermined threshold, and when it is determined that the command ratio is equal to or greater than the predetermined threshold When the load is concentrated on a specific physical device by exchanging data and parity between multiple physical devices, processing load occurs due to the physical device becoming a bottleneck in order to equalize the load. Therefore, it is possible to avoid the situation where the performance of the storage device cannot be sufficiently obtained and to load balance the physical device, thus, high-speed I / O processing performance Maintaining, can realize a storage apparatus and a load distribution method capable of eliciting a storage device performance sufficiently.

以下図面について、本発明の一実施の形態を詳述する。   Hereinafter, an embodiment of the present invention will be described in detail with reference to the drawings.

図1は、本発明の一実施の形態におけるストレージシステム1の全体構成を示す構成図である。図1において、ストレージ装置10は、当該ストレージ装置10全体の制御を行なうストレージ制御装置100と、記憶領域を提供するストレージ駆動装置200から構成されている。   FIG. 1 is a configuration diagram showing an overall configuration of a storage system 1 according to an embodiment of the present invention. In FIG. 1, the storage apparatus 10 includes a storage control apparatus 100 that controls the entire storage apparatus 10 and a storage drive apparatus 200 that provides a storage area.

ストレージ装置10には、ストレージ制御装置100のホストアダプタ110を介して、ストレージ装置10を利用する上位装置となるアプリケーションサーバなどのホスト計算機300が接続されている。   A host computer 300 such as an application server that is a host device that uses the storage apparatus 10 is connected to the storage apparatus 10 via a host adapter 110 of the storage control apparatus 100.

なお、ストレージ装置10とホスト計算機300とを接続するためのインタフェースには、例えば、専用のネットワークであるSAN(Storage Area Network)180が用いられる。また、SAN180の構築には、ファイバチャネル、SCSI(Small Computer System Interface)、iSCSI(internet Small Computer System Interface)、USB(Universal Serial Bus)、IEEE(Institute of Electrical and Electronic Engineers)1394バス等を用いることが可能である。また、ストレージ装置10に接続されるホスト計算機300は、複数台でもよい。   As an interface for connecting the storage apparatus 10 and the host computer 300, for example, a SAN (Storage Area Network) 180 that is a dedicated network is used. The SAN 180 is constructed using Fiber Channel, SCSI (Small Computer System Interface), iSCSI (Internet Small Computer System Interface), USB (Universal Serial Bus), IEEE (Institute of Electrical and Electronic Engineers) 1394 bus, etc. Is possible. Further, a plurality of host computers 300 connected to the storage apparatus 10 may be used.

さらに、ホスト計算機300上には、ストレージ装置10のディスク構成の操作や設定を行い、ストレージ装置10の動作を制御する制御ソフトウェアがインストールされている。ホスト計算機300は、ホスト計算機300上の制御ソフトウェアにより、ストレージ装置10に対してコマンドなどを発行し、ストレージ装置10の動作を制御することができる。ただし、ストレージ装置10とホスト計算機300上のストレージ制御ソフトウェアとは、例えば、LAN(Local Area Network)190を経由し、ストレージ装置10のNIC(Network Interface Card)170を介してデータのやり取りを行う。なお、ストレージ装置10の管理・制御を行う計算機は、ホスト計算機300とは別のものを使用しても良い。   Further, on the host computer 300, control software for operating and setting the disk configuration of the storage apparatus 10 and controlling the operation of the storage apparatus 10 is installed. The host computer 300 can control the operation of the storage apparatus 10 by issuing a command to the storage apparatus 10 using the control software on the host computer 300. However, the storage apparatus 10 and the storage control software on the host computer 300 exchange data via a LAN (Local Area Network) 190 and a NIC (Network Interface Card) 170 of the storage apparatus 10, for example. Note that a computer that manages and controls the storage apparatus 10 may be different from the host computer 300.

ストレージ制御装置100は、ストレージ装置10を利用するホスト計算機300を接続するホストアダプタ110、ストレージ装置10の全体制御を行なうCPU(Central Processing Unit:中央演算装置)120、当該CPU120がストレージ装置10を制御するために必要なプログラムやデータを格納するメモリ130、ホスト計算機300に対する送受信のためのデータを一時的に格納し、データアクセスに対し高速レスポンスを提供するキャッシュメモリ140、RAIDを構成する際にパリティ計算等を行なう特定用途向け集積回路であるASICs(Application Specific Integrated Circuits)150及びストレージ制御装置100とストレージ駆動装置200とを接続するディスクアダプタ160から構成されている。   The storage control device 100 includes a host adapter 110 that connects a host computer 300 that uses the storage device 10, a CPU (Central Processing Unit) 120 that performs overall control of the storage device 10, and the CPU 120 controls the storage device 10. Memory 130 for storing programs and data necessary for data transfer, cache memory 140 for temporarily storing data for transmission / reception with respect to the host computer 300, and providing a high-speed response to data access, parity when configuring RAID It includes ASICs (Application Specific Integrated Circuits) 150 that are application-specific integrated circuits that perform calculations and the like, and a disk adapter 160 that connects the storage control device 100 and the storage drive device 200.

メモリ130には、CPU120がストレージ装置10を制御するために使用するプログラム1300、物理ディスク2100内のデータおよびパリティの格納位置情報を管理するために使用するアドレス管理テーブル1310、データとパリティとの入れ替え(以下、「データ/パリティ入れ替え」と表記する)の実行契機を判断するための情報を管理するデータ/パリティ入れ替え実行契機管理テーブル1320が格納されている。   The memory 130 includes a program 1300 used by the CPU 120 to control the storage apparatus 10, an address management table 1310 used to manage data and parity storage location information in the physical disk 2100, and exchange of data and parity. A data / parity switching execution timing management table 1320 for managing information for determining an execution timing (hereinafter referred to as “data / parity switching”) is stored.

ストレージ駆動装置200は、多数のディスクボックス210を備えており、当該ディスクボックス210の中に多数の物理ディスク2100(記憶デバイス)を備えている。ここで、物理ディスク2100は、例えば図1のように複数台でRAIDグループ2200を構成し、さらにRAIDグループ2200内に論理的な記憶領域である論理ユニット(Logical Unit:LU)(図示せず)を構成することで、大容量の記憶領域をホスト計算機300に対して提供する。また、本発明では、記憶領域をRAID5若しくはRAID6にて構成する。この場合、RAID5やRAID6では、一般に、データと、当該データのパリティとを複数の物理ディスク2100に分散保持するRAIDレベルである。なお、本発明では、物理ディスク2100に限らず、例えば、半導体メモリ等のこの他種々の物理デバイスに適用することができる。   The storage drive device 200 includes a large number of disk boxes 210, and the disk box 210 includes a large number of physical disks 2100 (storage devices). Here, for example, a plurality of physical disks 2100 form a RAID group 2200 as shown in FIG. 1, and a logical unit (LU) (not shown) that is a logical storage area in the RAID group 2200. Thus, a large-capacity storage area is provided to the host computer 300. In the present invention, the storage area is configured by RAID5 or RAID6. In this case, RAID 5 and RAID 6 are generally RAID levels in which data and the parity of the data are distributed and held in a plurality of physical disks 2100. The present invention can be applied not only to the physical disk 2100 but also to various other physical devices such as a semiconductor memory.

図2は、アドレス管理テーブル1310の構成図である。アドレス管理テーブル1310は、ストライプ列番号欄1311、論理アドレス欄1312及び物理アドレス欄1313から構成される。ここで、ストライプ列とは、RAID5やRAID6のようなデータ及びパリティを複数ディスクに分散保持するRAIDレベルにおける、対応するデータ及びパリティを保持する制御単位を示している。   FIG. 2 is a configuration diagram of the address management table 1310. The address management table 1310 includes a stripe column number column 1311, a logical address column 1312, and a physical address column 1313. Here, the stripe column indicates a control unit for holding corresponding data and parity at a RAID level in which data and parity such as RAID 5 and RAID 6 are distributed and held in a plurality of disks.

ストライプ列番号欄1311は、RAIDグループ2200内のストライプ列を一意に識別するための番号を管理する。論理アドレス欄1312及び物理アドレス欄1313は、論理ユニットの論理的なアドレスが実際の物理ディスク2100のどのアドレスに対応するかの情報を管理する。また、物理アドレス欄1313は、データを格納する物理ディスク2100のアドレスを管理するためのデータアドレス欄1314及びパリティを格納する物理ディスク2100のアドレスを管理するためのパリティアドレス欄1315から構成される。図2は、データを格納する物理ディスク2100が2つであり、パリティを格納する物理ディスク2100が1つである2D+1PのRAID5の例を示しており、同一ストライプ列内のパリティアドレス欄1315が1段であるが、RAID6の場合には同一ストライプ列内のパリティアドレス格納欄1315が2段作成される。   The stripe column number column 1311 manages a number for uniquely identifying a stripe column in the RAID group 2200. The logical address column 1312 and the physical address column 1313 manage information on which address of the actual physical disk 2100 the logical address of the logical unit corresponds to. The physical address column 1313 includes a data address column 1314 for managing the address of the physical disk 2100 for storing data and a parity address column 1315 for managing the address of the physical disk 2100 for storing parity. FIG. 2 shows an example of 2D + 1P RAID 5 in which there are two physical disks 2100 for storing data and one physical disk 2100 for storing parity, and the parity address column 1315 in the same stripe column is 1 In the case of RAID 6, two stages of parity address storage columns 1315 in the same stripe column are created.

論理アドレス欄1312は、LUN(Logical Unit Number)欄13121、先頭LBA(Logical Brock Address)欄13122及び末尾LBA欄13123から構成される。LUN欄13121は、RAIDグループ2200内に作成された論理ユニットの番号を管理する。先頭LBA欄13122及び末尾LBA欄13123は、論理ユニットの論理的なアドレス空間の先頭と末尾のアドレスを管理する。   The logical address column 1312 includes a LUN (Logical Unit Number) column 13121, a head LBA (Logical Brock Address) column 13122, and a tail LBA column 13123. The LUN column 13121 manages the numbers of logical units created in the RAID group 2200. The head LBA column 13122 and the tail LBA column 13123 manage the head and tail addresses of the logical address space of the logical unit.

データアドレス欄1314は、HDD(物理ディスク)番号欄13141、先頭LBA欄13142及び末尾LBA欄13143から構成される。また、パリティアドレス欄1315は、HDD番号欄13151、先頭LBA欄13152及び末尾LBA欄13153から構成される。   The data address column 1314 includes an HDD (physical disk) number column 13141, a head LBA column 13142, and a tail LBA column 13143. The parity address column 1315 includes an HDD number column 13151, a head LBA column 13152, and a tail LBA column 13153.

HDD番号欄13141、13151は、データおよびパリティの格納先である物理ディスク2100の番号を管理する。先頭LBA欄13142は、先頭LBA欄13122と対応しており、また、末尾LBA欄13143は、末尾LBA欄13123と対応しており、それぞれホスト計算機300が認識する論理アドレス空間と実際のデータ格納先である物理アドレス空間との対応を管理する。また、先頭LBA欄13152及び末尾LBA欄13153は、パリティの格納先の物理アドレス空間の先頭と末尾のアドレスを管理する。   The HDD number columns 13141 and 13151 manage the numbers of physical disks 2100 that are storage destinations of data and parity. The head LBA column 13142 corresponds to the head LBA column 13122, and the tail LBA column 13143 corresponds to the tail LBA column 13123. The logical address space recognized by the host computer 300 and the actual data storage destination, respectively. To manage the correspondence with the physical address space. The head LBA column 13152 and the tail LBA column 13153 manage the head and tail addresses of the physical address space where the parity is stored.

なお、図2中では、HDD番号欄13141、13151の識別子の例として物理ディスク2100の物理的な位置情報を用いている。例えば、HDD番号「M−N」は、当該物理ディスク2100が「M」番目のディスクボックス210の「N」列目に搭載されていることを示す。ここで、「M」番目のディスクボックス210は、複数のディスクボックス210を一列に並べたときに「M」番目に位置するディスクボックス210である。またなお、アドレス管理テーブル1310は、RAIDグループ2200ごとに作成され、管理されるものである。   In FIG. 2, physical location information of the physical disk 2100 is used as an example of the identifiers of the HDD number columns 13141 and 13151. For example, the HDD number “MN” indicates that the physical disk 2100 is mounted in the “N” column of the “M” -th disk box 210. Here, the “M” -th disk box 210 is the disk box 210 positioned at the “M” -th when the plurality of disk boxes 210 are arranged in a line. The address management table 1310 is created and managed for each RAID group 2200.

図3は、データ/パリティ入れ替え実行契機管理テーブル1320の構成図である。データ/パリティ入れ替え実行契機管理テーブル1320は、RAIDグループ番号欄1321、HDD番号欄1322、物理ディスク負荷率欄1323、平均物理ディスク負荷率欄1324、平均ライトコマンド率欄1325、平均リードコマンド率欄1326及びデータ/パリティ入れ替え実行属性欄1327から構成される。   FIG. 3 is a configuration diagram of the data / parity exchange execution timing management table 1320. The data / parity exchange execution timing management table 1320 includes a RAID group number column 1321, an HDD number column 1322, a physical disk load factor column 1323, an average physical disk load factor column 1324, an average write command rate column 1325, and an average read command rate column 1326. And a data / parity exchange execution attribute column 1327.

RAIDグループ番号欄1321は、ストレージ駆動装置200内に作成された、RAIDグループ2200を一意に識別するための番号を管理する。HDD番号欄1322は、RAIDグループ2200を構成するそれぞれの物理ディスク2100を識別するための番号を管理する。物理ディスク負荷率欄1323は、現在の物理ディスク2100の負荷状況を管理するものであり、例えば、物理ディスク2100の稼動率等で表現される。   The RAID group number column 1321 manages a number created in the storage drive apparatus 200 for uniquely identifying the RAID group 2200. The HDD number column 1322 manages numbers for identifying the respective physical disks 2100 constituting the RAID group 2200. The physical disk load factor column 1323 manages the current load status of the physical disk 2100, and is represented by, for example, the operation rate of the physical disk 2100.

平均ディスク負荷率欄1324は、各RAIDグループ2200に所属する物理ディスク2100の平均負荷率を管理するもので、物理ディスク負荷率欄1323内の物理ディスク負荷率を用いて算出される。平均ライトコマンド率欄1325は、各RAIDグループ2200に発行されたライトコマンドの比率を管理するものである。また、平均リードコマンド率欄1326は、各RAIDグループ2200に発行されたリードコマンドの比率を管理するものである。   The average disk load factor column 1324 manages the average load factor of the physical disks 2100 belonging to each RAID group 2200 and is calculated using the physical disk load factor in the physical disk load factor column 1323. The average write command rate column 1325 manages the ratio of write commands issued to each RAID group 2200. The average read command rate column 1326 manages the ratio of read commands issued to each RAID group 2200.

データ/パリティ入れ替え実行属性欄1327は、後述するデータ/パリティ入れ替え処理の実行コマンドを発行する際に参照されるパラメータを管理する。データ/パリティ入れ替え処理実行の必要があるときは、「リード」(図3中には非表記)若しくは「ライト」を保持し、データ/パリティ入れ替え実行が不要の場合は「N/A」を保持する。また、RAIDグループ2200が新規作成された場合も「N/A」を保持する。また、データ/パリティ入れ替え実行契機管理テーブル1320の構成要素として、RAIDグループ2200に構成される論理ユニットのコマンド率等を保持してもよい。   The data / parity exchange execution attribute column 1327 manages parameters referred to when issuing an execution command for a data / parity exchange process to be described later. When it is necessary to execute data / parity exchange processing, “read” (not shown in FIG. 3) or “write” is held, and when data / parity exchange execution is not necessary, “N / A” is held. To do. Also, “N / A” is held when the RAID group 2200 is newly created. Further, as a component of the data / parity exchange execution timing management table 1320, a command rate of a logical unit configured in the RAID group 2200 may be held.

なお、データ/パリティ入れ替え実行契機管理テーブル1320は、ホスト計算機300からストレージ装置10に発行されたリードコマンド及びライトコマンドの各コマンドを、CPU120が処理する毎に更新され、後述するデータ/パリティ入れ替え処理実行時に、実行要否を判断するための情報として参照される。   The data / parity exchange execution timing management table 1320 is updated each time the CPU 120 processes each command of the read command and the write command issued from the host computer 300 to the storage apparatus 10, and will be described later. At the time of execution, it is referred to as information for determining whether or not to execute.

図4は、データ/パリティ入れ替え実行契機管理テーブル更新処理のフローチャートである。CPU120は、ホスト計算機300からストレージ装置10に発行されるリードコマンドやライトコマンドといったI/Oコマンドを受信すると、データ/パリティ入れ替え実行契機管理テーブル1320の更新処理を開始し、受信したI/Oコマンドを処理するI/O処理を実行する(ステップS301)。   FIG. 4 is a flowchart of the data / parity exchange execution timing management table update process. When the CPU 120 receives an I / O command such as a read command or a write command issued from the host computer 300 to the storage apparatus 10, the CPU 120 starts updating the data / parity exchange execution timing management table 1320 and receives the received I / O command. I / O processing is executed (step S301).

その後、CPU120は、ステップS301でのI/O処理に伴い、ディスクアクセスが発生したRAIDグループ2200に対し、当該RAIDグループ2200に所属する物理ディスク2100の物理ディスク負荷率を算出し、物理ディスク負荷率欄1323を更新する(ステップS302)。   Thereafter, the CPU 120 calculates the physical disk load factor of the physical disk 2100 belonging to the RAID group 2200 with respect to the RAID group 2200 in which the disk access has occurred in accordance with the I / O processing in step S301, and the physical disk load factor. The column 1323 is updated (step S302).

次に、CPU120は、ディスク負荷率欄1323の情報を元に、当該RAIDグループ2200に所属する物理ディスク2100の平均負荷率を算出し、平均負荷率欄1324を更新する(ステップS303)。   Next, the CPU 120 calculates the average load factor of the physical disks 2100 belonging to the RAID group 2200 based on the information in the disk load factor column 1323, and updates the average load factor column 1324 (step S303).

その後、CPU120は、当該RAIDグループ2200に発行された平均ライトコマンド率を算出し、平均ライトコマンド率欄1325を更新する(ステップS304)。その後、CPU120は、当該RAIDグループ2200に発行された平均リードコマンド率を算出し、平均リードコマンド率欄1326を更新する(ステップS306)。CPU120は、以上のステップにより、データ/パリティ入れ替え実行契機管理テーブル1320の更新処理を終了する。ただし、データ/パリティ入れ替え実行契機管理テーブル1320の更新タイミングは、I/O処理開始前やI/O処理途中に実行しても良い。   Thereafter, the CPU 120 calculates the average write command rate issued to the RAID group 2200, and updates the average write command rate column 1325 (step S304). Thereafter, the CPU 120 calculates the average read command rate issued to the RAID group 2200, and updates the average read command rate column 1326 (step S306). The CPU 120 ends the update process of the data / parity exchange execution timing management table 1320 through the above steps. However, the update timing of the data / parity exchange execution timing management table 1320 may be executed before the start of the I / O process or during the I / O process.

図5は、データ/パリティ入れ替え処理のフローチャートである。CPU120は、所定のタイミング(後述)で、データ/パリティ入れ替え処理を開始し、データ/パリティ入れ替え実行契機管理テーブル1320の情報を元に、全てのRAIDグループ2200を対象に、データ/パリティ入れ替えが必要か否かを判断する(ステップS401)(詳細は、図6にて説明)。そして、CPU120は、データ/パリティ入れ替えが必要なRAIDグループ2200が存在すると判断した場合(S401:YES)には、対象となるRAIDグループ2200にデータ/パリティ入れ替えを実行する(ステップS402)(詳細は図7にて説明)。その後、CPU120は、データ/パリティ入れ替え処理を終了する。   FIG. 5 is a flowchart of the data / parity switching process. The CPU 120 starts data / parity exchange processing at a predetermined timing (described later), and data / parity exchange is necessary for all RAID groups 2200 based on information in the data / parity exchange execution timing management table 1320. (Step S401) (details will be described with reference to FIG. 6). If the CPU 120 determines that there is a RAID group 2200 that requires data / parity switching (S401: YES), the CPU 120 executes data / parity switching for the target RAID group 2200 (step S402) (for details). Explained in FIG. Thereafter, the CPU 120 ends the data / parity switching process.

一方、CPU120は、ステップS401にて、データ/パリティ入れ替え実行が必要なRAIDグループ2200が存在しないと判断した場合(S401:NO)には、そのままデータ/パリティ入れ替え実行処理を終了する。   On the other hand, when CPU 120 determines in step S401 that there is no RAID group 2200 that requires data / parity exchange execution (S401: NO), CPU 120 ends the data / parity exchange execution process as it is.

なお、データ/パリティ入れ替え処理は、定期的なタイミングあるいは任意のタイミングにて実行される。定期的なタイミングの例としては、タイマによる一定時間毎の実行や、ホスト計算機300からの受領コマンド数が特定数の倍数に到達する毎の実行等がある。また、任意のタイミングの例としては、ストレージ装置10の管理者がホスト計算機300にインストールされた制御ソフトウェアを使用して本処理の実行を指示した場合や、ストレージ装置10が特定のコマンドを受領した場合、若しくはCPU120が特定のコマンドを実行した場合等がある。   The data / parity exchange process is executed at regular timing or at arbitrary timing. Examples of the periodic timing include execution at regular intervals by a timer, execution every time the number of received commands from the host computer 300 reaches a multiple of a specific number, and the like. As an example of arbitrary timing, when the administrator of the storage apparatus 10 gives an instruction to execute this processing using the control software installed in the host computer 300, or the storage apparatus 10 receives a specific command. Or the CPU 120 executes a specific command.

(1)データ/パリティ入れ替え実行要否判断処理
図6は、データ/パリティ入れ替え実行要否判断処理を実行するステップS401の詳細なフローチャートである。CPU120は、特定のRAIDグループ2200に対し、当該RAIDグループ2200内で負荷率が高い物理ディスク2100が存在するか否かを、物理ディスク負荷率欄1323を元に判定する(ステップS501)。
(1) Data / Parity Exchange Execution Necessity Determination Process FIG. 6 is a detailed flowchart of step S401 for executing the data / parity exchange execution necessity determination process. The CPU 120 determines, for a specific RAID group 2200, whether or not there is a physical disk 2100 with a high load factor in the RAID group 2200 based on the physical disk load factor column 1323 (step S501).

そして、CPU120は、物理ディスク負荷率が高いディスク2100が存在すると判断した場合(S501:YES)には、そのRAIDグループ2200内の物理ディスク2100間で物理ディスク負荷率にばらつきがあるか否かを判定する(ステップS502)。   If the CPU 120 determines that there is a disk 2100 with a high physical disk load factor (S501: YES), the CPU 120 determines whether or not the physical disk load factor varies among the physical disks 2100 in the RAID group 2200. Determination is made (step S502).

次に、CPU120は、当該RAIDグループ2200内の物理ディスク2100間で物理ディスク負荷率にばらつきがあると判断した場合(S502:YES)には、そのRAIDグループ2200に発行されたライトコマンドが支配的であるか否かを、平均ライトコマンド率欄1325を元に判断する(ステップS503)。そして、CPU120は、ライトコマンドが支配的であると判断した場合(S503:YES)には、データ/パリティ入れ替え実行属性1327を「ライト」に変更し(ステップS504)、ステップS401の判定結果がデータ/パリティ入れ替えが必要であることを示す「YES」に進む。   Next, when the CPU 120 determines that the physical disk load factor varies among the physical disks 2100 in the RAID group 2200 (S502: YES), the write command issued to the RAID group 2200 is dominant. Is determined based on the average write command rate column 1325 (step S503). If the CPU 120 determines that the write command is dominant (S503: YES), the CPU 120 changes the data / parity exchange execution attribute 1327 to “write” (step S504), and the determination result in step S401 is data. / Proceed to “YES” indicating that parity replacement is required.

これに対して、CPU120は、ライトコマンドが支配的でないと判断した場合(S503:NO)には、そのRAIDグループ2200に発行されたリードコマンドが支配的であるか否かを、平均リードコマンド率欄1326を元に判定する(ステップS505)。そして、CPU120は、リードコマンドが支配的であると判断した場合(S505:YES)には、データ/パリティ入れ替え実行属性1327を「リード」に変更し(ステップS506)、ステップS401の判定結果がデータ/パリティ入れ替えが必要であることを示す「YES」に進む。   On the other hand, when the CPU 120 determines that the write command is not dominant (S503: NO), the CPU 120 determines whether the read command issued to the RAID group 2200 is dominant or not. A determination is made based on the field 1326 (step S505). If the CPU 120 determines that the read command is dominant (S505: YES), it changes the data / parity exchange execution attribute 1327 to “read” (step S506), and the determination result in step S401 is data. / Proceed to “YES” indicating that parity replacement is required.

一方、CPU120は、物理ディスク負荷率が高いディスク2100が存在しないと判断した場合(S501:NO)、当該RAIDグループ2200内の物理ディスク2100間で物理ディスク負荷率にばらつきがないと判断した場合(S502:NO)、又はリードコマンドが支配的でないと判断した場合(S505:NO)には、データ/パリティ入れ替え実行属性1327を「N/A」に変更し(ステップS507)、ステップS401の判定結果がデータ/パリティ入れ替えが不要であることを示す「NO」に進む。   On the other hand, when the CPU 120 determines that there is no disk 2100 with a high physical disk load factor (S501: NO), the CPU 120 determines that there is no variation in the physical disk load factor among the physical disks 2100 in the RAID group 2200 ( If it is determined that the read command is not dominant (S505: NO), the data / parity exchange execution attribute 1327 is changed to “N / A” (step S507), and the determination result of step S401 Advances to “NO” indicating that data / parity switching is not required.

ここで、ステップS501において、ディスク負荷率が高い値である場合とは、例えば、ディスク負荷率が100%であったり、95%以上であったりと所定の閾値以上であり、物理ディスク2100が処理限界に近い、若しくは処理限界に到達した場合を示している。   Here, when the disk load factor is a high value in step S501, for example, the disk load factor is 100% or 95% or more, which is a predetermined threshold value or more, and the physical disk 2100 performs processing. The case where the limit is approached or the processing limit is reached is shown.

また、ステップS502において、物理ディスク負荷率にばらつきがある場合とは、例えば、特定のRAIDグループ2200の平均ディスク負荷率1324と、各物理ディスク2100の物理ディスク負荷率とを比べた場合、その乖離が設定閾値以上である場合や、ディスク負荷率の最大値と最小値との差の絶対値が設定閾値以上である場合を示している。   In addition, when the physical disk load factor varies in step S502, for example, when the average disk load factor 1324 of a specific RAID group 2200 is compared with the physical disk load factor of each physical disk 2100, the difference Is greater than or equal to a set threshold, or the absolute value of the difference between the maximum and minimum disk load factors is greater than or equal to the set threshold.

さらに、ステップS503において、支配的なコマンドがある場合とは、例えば、設定閾値が60%に設定されている場合に、発行されたライトコマンドとリードコマンドとの比が80%:20%であるような、どちらかのコマンド比率が設定閾値以上である場合を示している。   Furthermore, when there is a dominant command in step S503, for example, when the setting threshold is set to 60%, the ratio of the issued write command to the read command is 80%: 20%. In this case, one of the command ratios is equal to or greater than the set threshold.

なお、ステップS502の判定に使用する設定閾値や、ステップS503の支配的なコマンド比率の設定閾値の具体的な値等は、ホスト計算機300にインストールされた制御ソフトウェアにより、設定可能なチューニングパラメータとして変更可能である。   Note that the setting threshold value used for the determination in step S502, the specific value of the dominant command ratio setting threshold value in step S503, and the like are changed as tuning parameters that can be set by the control software installed in the host computer 300. Is possible.

(2)データ/パリティ入れ替え実行処理
図7は、データ/パリティ入れ替え実行処理を実行するステップS402の詳細なフローチャートである。CPU120は、ステップS401におけるデータ/パリティ入れ替え実行要否判断処理が終了すると、データ/パリティ入れ替え実行処理を開始し、当該RAIDグループ2200のデータ/パリティ入れ替え実行属性欄1327が「ライト」であるか否かを判定する(ステップS601)。
(2) Data / Parity Exchange Execution Process FIG. 7 is a detailed flowchart of step S402 for executing the data / parity exchange execution process. When the data / parity exchange execution necessity determination process in step S401 ends, the CPU 120 starts the data / parity exchange execution process, and determines whether the data / parity exchange execution attribute column 1327 of the RAID group 2200 is “write”. Is determined (step S601).

そして、CPU120は、データ/パリティ入れ替え実行属性欄1327が「ライト」である場合(S601:YES)には、当該RAIDグループ2200の物理ディスク2100に対して、物理ディスク負荷率が高い物理ディスク2100におけるパリティを保持する比率を低くするようにデータとパリティとを入れ替える、データ/パリティ入れ替え実行コマンドを発行する(ステップS602)。   When the data / parity exchange execution attribute column 1327 is “write” (S601: YES), the CPU 120 determines that the physical disk 2100 in the RAID group 2200 has a higher physical disk load factor than the physical disk 2100. A data / parity exchange execution command is issued to exchange data and parity so as to reduce the ratio of holding parity (step S602).

これに対して、CPU120は、データ/パリティ入れ替え実行属性欄1327が「ライト」でない場合(S601:NO)には、データ/パリティ入れ替え実行属性欄1327が「リード」であると判断し、当該RAIDグループ2200の物理ディスク2100に対して、物理ディスク負荷率が高い物理ディスク2100におけるパリティを保持する比率を高くするようにデータとパリティとを入れ替える、データ/パリティ入れ替え実行コマンドを発行する(ステップS603)。   On the other hand, when the data / parity exchange execution attribute column 1327 is not “write” (S601: NO), the CPU 120 determines that the data / parity exchange execution attribute column 1327 is “read”, and the RAID. A data / parity exchange execution command is issued to the physical disks 2100 of the group 2200 to exchange data and parity so as to increase the ratio of holding parity in the physical disks 2100 with a high physical disk load factor (step S603). .

そして、CPU120は、発行された入れ替えコマンドを実行してデータとパリティとを入れ替える(ステップS604)。そして、CPU120は、データ/パリティ入れ替え実行処理を終了し、その後、データ/パリティ入れ替え処理を終了する。   Then, the CPU 120 executes the issued exchange command to exchange data and parity (step S604). Then, the CPU 120 ends the data / parity switching execution process, and then ends the data / parity switching process.

図8は、データ/パリティ入れ替えコマンド実行処理を実行するステップS604の詳細なフローチャートである。CPU120は、ステップS602又はステップS603において、データ/パリティ入れ替え実行コマンドを発行すると、アドレス管理テーブル1310の情報を元に、入れ替え対象のデータ及びパリティの、現在の格納位置及び入れ替え先の格納位置を特定する(ステップS701)。   FIG. 8 is a detailed flowchart of step S604 of executing the data / parity exchange command execution processing. When the CPU 120 issues a data / parity exchange execution command in step S602 or step S603, the CPU 120 specifies the current storage position and the replacement storage position of the replacement target data and parity based on the information in the address management table 1310. (Step S701).

次に、CPU120は、入れ替え対象のデータ及びパリティを、物理ディスク2100からキャッシュメモリ140に読み上げる(ステップS702)。続いて、CPU120は、キャッシュメモリ140に読み上げた入れ替え対象のデータおよびパリティを、入れ替え先の格納位置となる新アドレスへと転送する(ステップS703)。やがて、CPU120は、入れ替え対象となったデータのHDD番号13141、先頭LBA13142及び末尾LBA13143とパリティのHDD番号13151、先頭LBA13152及び末尾LBA13153とのアドレス値をそれぞれ更新する(入れ替える)ことで、物理ディスク2100内の格納位置を管理するためのアドレス管理テーブル1310を更新する(ステップS704)。その後、CPU120は、データ/パリティ入れ替えコマンド実行処理を終了する。   Next, the CPU 120 reads the replacement target data and parity from the physical disk 2100 to the cache memory 140 (step S702). Subsequently, the CPU 120 transfers the replacement target data and parity read out to the cache memory 140 to the new address that is the storage location of the replacement destination (step S703). Eventually, the CPU 120 updates (replaces) the physical disk 2100 by updating the address values of the HDD number 13141, the head LBA 13142 and the tail LBA 13143, and the parity HDD number 13151, the head LBA 13152, and the tail LBA 13153 of the data to be replaced. The address management table 1310 for managing the storage location is updated (step S704). Thereafter, the CPU 120 ends the data / parity exchange command execution process.

この場合、CPU120は、データ/パリティ入れ替え実行属性欄1327が「ライト」である場合には、当該RAIDグループ2200の物理ディスク2100に対して、物理ディスク負荷率が低い物理ディスク2100におけるパリティを保持する比率を高くするようにデータとパリティとを入れ替えるようになされている。一方、CPU120は、データ/パリティ入れ替え実行属性欄1327が「リード」である場合には、当該RAIDグループ2200の物理ディスク2100に対して、物理ディスク負荷率が高い物理ディスク2100におけるパリティを保持する比率を高くするようにデータとパリティとを入れ替えるようになされている。   In this case, when the data / parity exchange execution attribute column 1327 is “write”, the CPU 120 holds the parity in the physical disk 2100 having a low physical disk load factor with respect to the physical disk 2100 of the RAID group 2200. Data and parity are interchanged so as to increase the ratio. On the other hand, when the data / parity exchange execution attribute column 1327 is “read”, the CPU 120 holds the parity of the physical disk 2100 having a high physical disk load ratio with respect to the physical disk 2100 of the RAID group 2200. The data and the parity are switched so as to increase the value.

ここで、データとパリティとの入れ替えの例を、図9及び図10を用いて説明する。図9及び図10は、3台の物理ディスクより構成されたRAID5での入れ替え例を示したものである。図9は、通常時(データ/パリティ入れ替えを実施しない)の物理ディスク2100内のそれぞれのデータ格納構造を示したものである。図9では、例えば、3台の物理ディスク2100間のパリティ比率が1:1:1となるようにデータが格納されている。   Here, an example of replacement of data and parity will be described with reference to FIGS. FIG. 9 and FIG. 10 show an example of replacement in RAID 5 composed of three physical disks. FIG. 9 shows each data storage structure in the physical disk 2100 at the normal time (data / parity switching is not performed). In FIG. 9, for example, data is stored such that the parity ratio between the three physical disks 2100 is 1: 1: 1.

このとき、一般に、RAID5やRAID6では、データ更新(ライト)処理を行う場合、データを保持する物理ディスク2100に比べ、パリティを保持する物理ディスク2100が高負荷な状態となりやすい。これは、データ更新が発生すると、新パリティの作成のための旧データリードと旧パリティリード、また新データおよび新パリティをディスクに書き込むための、新データライトと新パリティライトがそれぞれの物理ディスク2100に発生するが、データは複数台の物理ディスク2100にて保持されるため、更新範囲によっては必ずしも全物理ディスク2100へのアクセスは生じないのに対し、パリティは1台の物理ディスク2100にて保持されるため、データ更新の度に必ずアクセスが発生するため、データとパリティとの間にアクセス頻度の差が生じるためである。ゆえに、データライトが支配的なI/O環境下において、例えば、RAID5で構成されたRAIDグループ2200の特定の物理ディスク2100のみに負荷が集中した場合、負荷が集中し高負荷状態となっている物理ディスク2100のパリティ比率を他の物理ディスク2100よりも低くし、低負荷な他の物理ディスク2100のパリティ比率を高負荷状態となっている物理ディスク2100よりも高くすることで、物理ディスク2100間の負荷分散を図ることが可能となる。   At this time, in general, in RAID 5 or RAID 6, when performing data update (write) processing, the physical disk 2100 that holds the parity tends to be more heavily loaded than the physical disk 2100 that holds the data. This is because when a data update occurs, an old data read and an old parity read for creating a new parity, and a new data write and a new parity write for writing new data and a new parity to the disk are respectively performed on the respective physical disks 2100. However, since data is held in a plurality of physical disks 2100, access to all physical disks 2100 does not necessarily occur depending on the update range, whereas parity is held in one physical disk 2100. This is because access is always generated every time data is updated, and thus a difference in access frequency occurs between data and parity. Therefore, in an I / O environment in which data write is dominant, for example, when the load is concentrated only on a specific physical disk 2100 of the RAID group 2200 configured with RAID 5, the load is concentrated and is in a high load state. By making the parity ratio of the physical disk 2100 lower than that of the other physical disk 2100 and increasing the parity ratio of the other physical disk 2100 with low load than that of the physical disk 2100 in the high load state, Can be distributed.

逆にリード処理では、パリティへのアクセスは発生しないため、データを保持する物理ディスク2100に比べ、パリティを保持する物理ディスク2100の方が低負荷な状態となる。ゆえに、データリードが支配的なI/O環境下では、高負荷状態となっている物理ディスク2100のパリティ比率を他の物理ディスク2100よりも高くし、低負荷な他の物理ディスク2100のパリティ比率を高負荷状態となっている物理ディスク2100よりも低くすることで、物理ディスク2100間の負荷分散が可能となる。   On the other hand, in the read process, since no access to the parity occurs, the physical disk 2100 that holds the parity is in a lower load state than the physical disk 2100 that holds the data. Therefore, in an I / O environment in which data read is dominant, the parity ratio of the physical disk 2100 in a high load state is set higher than that of the other physical disks 2100, and the parity ratio of the other physical disk 2100 having a low load is set. Is lower than that of the physical disk 2100 in a high load state, load distribution among the physical disks 2100 becomes possible.

具体的に、ストレージ装置10では、図9に示すRAIDグループ2200の物理ディスク2100−3の物理ディスク負荷率が高いと判断され、当該RAIDグループ2200内の物理ディスク2100間で物理ディスク負荷率にばらつきがあると判断され、かつ当該RAIDグループ2200に発行されたライトコマンドが支配的であると判断された場合には、物理ディスク負荷率が高い物理ディスク2100−3におけるパリティを保持する比率を低くするようにデータとパリティとを入れ替える。即ち、ストレージ装置10では、対応するストライプ列の物理ディスク2100−3のパリティと、物理ディスク2100−1又は2100−2のデータとを入れ替えるようになされている。   Specifically, in the storage apparatus 10, it is determined that the physical disk load ratio of the physical disk 2100-3 of the RAID group 2200 shown in FIG. 9 is high, and the physical disk load ratio varies among the physical disks 2100 in the RAID group 2200. If the write command issued to the RAID group 2200 is determined to be dominant, the parity holding ratio in the physical disk 2100-3 having a high physical disk load factor is lowered. Thus, the data and the parity are switched. That is, in the storage apparatus 10, the parity of the physical disk 2100-3 in the corresponding stripe column and the data of the physical disk 2100-1 or 2100-2 are exchanged.

また、ストレージ装置10では、図9に示すRAIDグループ2200の物理ディスク2100−3の物理ディスク負荷率が高いと判断され、当該RAIDグループ2200内の物理ディスク2100間で物理ディスク負荷率にばらつきがあると判断され、かつ当該RAIDグループ2200に発行されたリードコマンドが支配的であると判断された場合には、物理ディスク負荷率が高い物理ディスク2100−3におけるパリティを保持する比率を高くするようにデータとパリティとを入れ替える。即ち、ストレージ装置10では、対応するストライプ列の物理ディスク2100−3のデータと、物理ディスク2100−1又は2100−2のパリティとを入れ替えるようになされている。   Further, in the storage apparatus 10, it is determined that the physical disk load factor of the physical disk 2100-3 in the RAID group 2200 shown in FIG. 9 is high, and the physical disk load factor varies among the physical disks 2100 in the RAID group 2200. When the read command issued to the RAID group 2200 is determined to be dominant, the parity holding ratio in the physical disk 2100-3 having a high physical disk load factor is increased. Swap data and parity. That is, in the storage apparatus 10, the data of the physical disk 2100-3 in the corresponding stripe row and the parity of the physical disk 2100-1 or 2100-2 are exchanged.

なお、図10は、データ/パリティ入れ替えを実施した後の物理ディスク2100内のデータ格納構造を示したものである。図10では、例えば、同一ストライプ列内のデータとパリティの位置をそれぞれ入れ替え、3台の物理ディスク2100間のパリティ比率が1:1:2に変更された様子を示している。即ち、図9に示すRAIDグループ2200の物理ディスク2100−3の物理ディスク負荷率が高いと判断され、当該RAIDグループ2200内の物理ディスク2100間で物理ディスク負荷率にばらつきがあると判断され、かつ当該RAIDグループ2200に発行されたリードコマンドが支配的であると判断された場合におけるパリティ保持比率の変更後の状態を示したものである。   FIG. 10 shows the data storage structure in the physical disk 2100 after the data / parity exchange is performed. FIG. 10 shows a state in which, for example, the positions of data and parity in the same stripe column are respectively switched, and the parity ratio between the three physical disks 2100 is changed to 1: 1: 2. That is, it is determined that the physical disk load rate of the physical disk 2100-3 of the RAID group 2200 shown in FIG. 9 is high, the physical disk load rate is determined to vary among the physical disks 2100 in the RAID group 2200, and The state after the change of the parity retention ratio when it is determined that the read command issued to the RAID group 2200 is dominant is shown.

またなお、物理ディスク2100のパリティの比率等を指定する入れ替えパターンは、ストレージ装置10の管理者がホスト計算機300にインストールされた制御ソフトウェアにより、変更可能なチューニングパラメータとして、管理者が任意の比率に変更可能である。さらに、入れ替えパターンの設定項目として、1回の処理でデータとパリティとの位置を入れ替える対象範囲を指定してもよい。この場合、対象範囲として、一度にすべての物理ディスク領域を対象とする、若しくは、任意のストライプ列単位を対象とする等が挙げられる。   In addition, the replacement pattern for designating the parity ratio of the physical disk 2100 is the tuning parameter that can be changed by the administrator of the storage apparatus 10 by the control software installed in the host computer 300 by the administrator. It can be changed. Furthermore, as a replacement pattern setting item, a target range in which the positions of data and parity are switched in one process may be specified. In this case, the target range includes all the physical disk areas at once, or an arbitrary stripe column unit.

このようにして、ストレージシステム1では、RAIDグループ2200内の特定の物理ディスク2100に負荷が集中し、かつ、リードコマンド若しくはライトコマンドが支配的な場合に、RAIDグループ2200内の物理ディスク2100のパリティ比率を変更することで、RAIDグループ2200内の物理ディスク2100のストライプ列ごとにデータとパリティとを入れ替える。   In this way, in the storage system 1, when the load is concentrated on a specific physical disk 2100 in the RAID group 2200 and the read command or write command is dominant, the parity of the physical disk 2100 in the RAID group 2200 is determined. By changing the ratio, data and parity are switched for each stripe column of the physical disk 2100 in the RAID group 2200.

従って、特定の物理ディスク2100に負荷が集中した場合に、その負荷を同一RAIDグループ2200内の物理ディスク2100で均一化させるため、ディスクネックを回避して、物理ディスク2100を負荷分散することができ、かくして、高速なI/O処理性能を維持することができる。   Therefore, when the load is concentrated on a specific physical disk 2100, the load is evenly distributed among the physical disks 2100 in the same RAID group 2200. Therefore, the physical disk 2100 can be load-balanced while avoiding a disk neck. Thus, high-speed I / O processing performance can be maintained.

すなわち、本発明では、特定の物理ディスクのみに負荷が集中した場合、RAIDグループを構成する物理ディスクのパリティ比率を変化させる。ゆえに、物理ディスクの負荷バランスを均一化することができ、ディスクネックの発生を回避して、高速I/O処理を維持するストレージ装置の実現が可能である。   In other words, in the present invention, when the load is concentrated only on a specific physical disk, the parity ratio of the physical disks constituting the RAID group is changed. Therefore, it is possible to realize a storage apparatus that can equalize the load balance of physical disks, avoid the occurrence of a disk neck, and maintain high-speed I / O processing.

本発明は、複数の物理ディスクからRAIDグループを構成するこの他種々のストレージ装置に広く適用することができる。   The present invention can be widely applied to various storage apparatuses other than a RAID group configured from a plurality of physical disks.

本実施の形態によるストレージシステムの概略的な構成を示すブロック図である。It is a block diagram which shows the schematic structure of the storage system by this Embodiment. アドレス管理テーブルの説明に供する概念図である。It is a conceptual diagram with which it uses for description of an address management table. データ/パリティ入れ替え実行契機管理テーブルの説明に供する概念図である。It is a conceptual diagram with which it uses for description of a data / parity exchange execution opportunity management table. データ/パリティ入れ替え実行契機管理テーブル更新処理手順の説明に供するフローチャートである。It is a flowchart with which it uses for description of a data / parity exchange execution opportunity management table update process procedure. データ/パリティ入れ替え処理手順の説明に供するフローチャートである。It is a flowchart with which it uses for description of a data / parity interchange process procedure. データ/パリティ入れ替え実行要否判断処理手順の説明に供するフローチャートである。It is a flowchart with which it uses for description of a data / parity exchange execution necessity judgment processing procedure. データ/パリティ入れ替え実行処理手順の説明に供するフローチャートである。It is a flowchart with which it uses for description of a data / parity exchange execution processing procedure. データ/パリティ入れ替えコマンド実行処理手順の説明に供するフローチャートである。It is a flowchart with which it uses for description of a data / parity exchange command execution processing procedure. データ/パリティ入れ替え例の説明に供する概念図である。It is a conceptual diagram with which it uses for description of the example of data / parity interchange. データ/パリティ入れ替え例の説明に供する概念図である。It is a conceptual diagram with which it uses for description of the example of data / parity interchange.

符号の説明Explanation of symbols

1……ストレージシステム、10……ストレージ装置、120……CPU、300……ホスト計算機、1310……アドレス管理テーブル、1320……データ/パリティ入れ替え実行契機管理テーブル、1323……物理ディスク負荷率欄、1324……平均物理ディスク負荷率欄、1325……平均ライトコマンド率欄、1326……平均リードコマンド率欄、1327……データ/パリティ入れ替え実行属性、2100……物理ディスク、2200……RAIDグループ DESCRIPTION OF SYMBOLS 1 ... Storage system, 10 ... Storage apparatus, 120 ... CPU, 300 ... Host computer, 1310 ... Address management table, 1320 ... Data / parity exchange execution timing management table, 1323 ... Physical disk load factor column 1324 ... Average physical disk load factor column, 1325 ... Average write command rate column, 1326 ... Average read command rate column, 1327 ... Data / parity exchange execution attribute, 2100 ... Physical disk, 2200 ... RAID group

Claims (16)

ホスト計算機から送信されるデータと当該データのパリティとを所定単位ごとに分散保持する複数の物理デバイスを有するストレージ装置であって、
前記複数の物理デバイスの負荷率を算出する負荷率算出部と、
前記負荷率算出部により算出された前記物理デバイスの負荷率が所定の閾値以上であるか否かを判断する負荷率判断部と、
前記負荷率判断部により前記物理デバイスの負荷率が所定の閾値以上であると判断された場合に、前記ホスト計算機から発行されるライトコマンド又はリードコマンドのいずれかのコマンド比率が所定の閾値以上であるか否かを判断するコマンド比率判断部と、
前記コマンド比率判断部により前記コマンド比率が所定の閾値以上であると判断された場合に、前記複数の物理デバイス間の前記データと前記パリティとを入れ替える入れ替え部と
を備えることを特徴とするストレージ装置。
A storage device having a plurality of physical devices that distribute and hold data transmitted from a host computer and the parity of the data for each predetermined unit,
A load factor calculation unit for calculating a load factor of the plurality of physical devices;
A load factor determining unit that determines whether the load factor of the physical device calculated by the load factor calculating unit is equal to or greater than a predetermined threshold;
When the load factor determining unit determines that the load factor of the physical device is equal to or greater than a predetermined threshold, the command ratio of either a write command or a read command issued from the host computer is equal to or greater than a predetermined threshold. A command ratio determining unit for determining whether or not there is,
A storage apparatus comprising: a replacement unit that replaces the data and the parity between the plurality of physical devices when the command ratio determination unit determines that the command ratio is equal to or greater than a predetermined threshold. .
前記負荷率判断部は、
前記複数の物理デバイスのうち、所定数の前記物理デバイスにより構成されるグループに対し、当該グループ内のいずれかの前記物理デバイスの負荷率が所定の閾値以上であるか否かを判断し、
前記コマンド比率判断部は、
前記ホスト計算機から前記グループに発行されるライトコマンド又はリードコマンドのいずれかのコマンド比率が所定の閾値以上であるか否かを判断し、
前記入れ替え部は、
前記グループ内の前記物理デバイス間で前記データと前記パリティとを入れ替える
ことを特徴とする請求項1に記載のストレージ装置。
The load factor determination unit
For a group composed of a predetermined number of physical devices among the plurality of physical devices, determine whether the load factor of any of the physical devices in the group is equal to or greater than a predetermined threshold value,
The command ratio determining unit
Determining whether the command ratio of either a write command or a read command issued from the host computer to the group is greater than or equal to a predetermined threshold;
The replacement unit is
The storage apparatus according to claim 1, wherein the data and the parity are exchanged between the physical devices in the group.
前記負荷率算出部は、
前記グループ内の前記物理デバイスの平均負荷率を算出し、
前記負荷率判断部は、
前記負荷率算出部により算出された前記グループ内の前記物理デバイスの平均負荷率と、前記グループ内の前記物理ディスクの負荷率との乖離が所定の閾値以上であるか否かを判断し、
前記コマンド比率判断部は、
前記負荷率判断部により前記グループ内の前記物理デバイスの平均負荷率と、前記グループ内の前記物理ディスクの負荷率との乖離が所定の閾値以上であると判断された場合に、前記コマンド比率が所定の閾値以上であるか否かを判断する
ことを特徴とする請求項2に記載のストレージ装置。
The load factor calculation unit
Calculating an average load factor of the physical devices in the group;
The load factor determination unit
Determining whether or not a deviation between an average load factor of the physical devices in the group calculated by the load factor calculator and a load factor of the physical disks in the group is equal to or greater than a predetermined threshold;
The command ratio determining unit
When the load factor determination unit determines that the difference between the average load factor of the physical devices in the group and the load factor of the physical disks in the group is equal to or greater than a predetermined threshold, the command ratio is It is judged whether it is more than a predetermined threshold. The storage device according to claim 2 characterized by things.
前記負荷率判断部は、
前記グループ内の前記物理ディスクの負荷率の最大値と最小値との差の絶対値が所定の閾値以上であるか否かを判断し、
前記コマンド比率判断部は、
前記負荷率判断部により前記グループ内の前記物理ディスクの負荷率の最大値と最小値との差の絶対値が所定の閾値以上であると判断された場合に、前記コマンド比率が所定の閾値以上であるか否かを判断する
ことを特徴とする請求項2に記載のストレージ装置。
The load factor determination unit
Determining whether the absolute value of the difference between the maximum value and the minimum value of the load factor of the physical disk in the group is greater than or equal to a predetermined threshold;
The command ratio determining unit
When the load factor determination unit determines that the absolute value of the difference between the maximum value and the minimum value of the load factor of the physical disk in the group is equal to or greater than a predetermined threshold, the command ratio is equal to or greater than a predetermined threshold. The storage apparatus according to claim 2, wherein it is determined whether or not.
前記入れ替え部は、
前記コマンド比率判断部により前記ライトコマンドのコマンド比率が所定の閾値以上であると判断された場合には、前記負荷率判断部により所定の閾値以上と判断された前記グループ内の物理デバイスのパリティを保持する比率を低くするようにデータとパリティとを入れ替える
ことを特徴とする請求項2に記載のストレージ装置。
The replacement unit is
If the command ratio determining unit determines that the command ratio of the write command is equal to or greater than a predetermined threshold, the parity of the physical device in the group determined by the load factor determining unit to be equal to or greater than the predetermined threshold is calculated. The storage apparatus according to claim 2, wherein data and parity are switched so as to reduce a holding ratio.
前記入れ替え部は、
前記負荷率判断部により所定の閾値以上と判断された前記グループ内の物理デバイスのパリティと、当該物理デバイス以外の前記グループ内の他の物理デバイスのデータとを入れ替える
ことを特徴とする請求項5に記載のストレージ装置。
The replacement unit is
6. The parity of a physical device in the group determined to be equal to or greater than a predetermined threshold by the load factor determination unit and data of another physical device in the group other than the physical device are exchanged. The storage device described in 1.
前記入れ替え部は、
前記コマンド比率判断部により前記リードコマンドのコマンド比率が所定の閾値以上であると判断された場合には、前記負荷率判断部により所定の閾値以上と判断された前記グループ内の物理デバイスのパリティを保持する比率を高くするようにデータとパリティとを入れ替える
ことを特徴とする請求項2に記載のストレージ装置。
The replacement unit is
When the command ratio determining unit determines that the command ratio of the read command is equal to or greater than a predetermined threshold, the parity of the physical device in the group determined by the load rate determining unit to be equal to or greater than the predetermined threshold is determined. The storage apparatus according to claim 2, wherein the data and the parity are switched so as to increase a holding ratio.
前記入れ替え部は、
前記負荷率判断部により所定の閾値以上と判断された前記グループ内の物理デバイスのデータと、当該物理デバイス以外の前記グループ内の他の物理デバイスのパリティとを入れ替える
ことを特徴とする請求項7に記載のストレージ装置。
The replacement unit is
The data of physical devices in the group determined to be equal to or greater than a predetermined threshold by the load factor determination unit and the parity of other physical devices in the group other than the physical device are switched. The storage device described in 1.
ホスト計算機から送信されるデータと当該データのパリティとを所定単位ごとに分散保持する複数の物理デバイスを有するストレージ装置の負荷分散方法であって、
前記複数の物理デバイスの負荷率を算出する第1のステップと、
前記第1のステップにおいて算出した前記物理デバイスの負荷率が所定の閾値以上であるか否かを判断する第2のステップと、
前記第2のステップにおいて前記物理デバイスの負荷率が所定の閾値以上であると判断した場合に、前記ホスト計算機から発行されるライトコマンド又はリードコマンドのいずれかのコマンド比率が所定の閾値以上であるか否かを判断する第3のステップと、
前記第3のステップにおいて前記コマンド比率が所定の閾値以上であると判断した場合に、前記複数の物理デバイス間の前記データと前記パリティとを入れ替える第4のステップと
を備えることを特徴とする負荷分散方法。
A load distribution method for a storage apparatus having a plurality of physical devices that distribute and hold data transmitted from a host computer and the parity of the data for each predetermined unit,
A first step of calculating a load factor of the plurality of physical devices;
A second step of determining whether the load factor of the physical device calculated in the first step is equal to or greater than a predetermined threshold;
When it is determined in the second step that the load factor of the physical device is equal to or greater than a predetermined threshold, the command ratio of either a write command or a read command issued from the host computer is equal to or greater than a predetermined threshold. A third step of determining whether or not
And a fourth step of replacing the data and the parity between the plurality of physical devices when it is determined in the third step that the command ratio is equal to or greater than a predetermined threshold. Distribution method.
前記第2のステップでは、
前記複数の物理デバイスのうち、所定数の前記物理デバイスにより構成されるグループに対し、当該グループ内のいずれかの前記物理デバイスの負荷率が所定の閾値以上であるか否かを判断し、
前記第3のステップでは、
前記ホスト計算機から前記グループに発行されるライトコマンド又はリードコマンドのいずれかのコマンド比率が所定の閾値以上であるか否かを判断し、
前記第4のステップでは、
前記グループ内の前記物理デバイス間で前記データと前記パリティとを入れ替える
ことを特徴とする請求項9に記載の負荷分散方法。
In the second step,
For a group composed of a predetermined number of physical devices among the plurality of physical devices, determine whether the load factor of any of the physical devices in the group is equal to or greater than a predetermined threshold value,
In the third step,
Determining whether the command ratio of either a write command or a read command issued from the host computer to the group is greater than or equal to a predetermined threshold;
In the fourth step,
The load distribution method according to claim 9, wherein the data and the parity are exchanged between the physical devices in the group.
前記第1のステップでは、
前記グループ内の前記物理デバイスの平均負荷率を算出し、
前記第2のステップでは、
前記第1のステップにおいて算出した前記グループ内の前記物理デバイスの平均負荷率と、前記グループ内の前記物理ディスクの負荷率との乖離が所定の閾値以上であるか否かを判断し、
前記第3のステップでは、
前記負荷率判断部により前記グループ内の前記物理デバイスの平均負荷率と、前記グループ内の前記物理ディスクの負荷率との乖離が所定の閾値以上であると判断された場合に、前記コマンド比率が所定の閾値以上であるか否かを判断する
ことを特徴とする請求項10に記載の負荷分散方法。
In the first step,
Calculating an average load factor of the physical devices in the group;
In the second step,
Determining whether the difference between the average load factor of the physical devices in the group calculated in the first step and the load factor of the physical disks in the group is equal to or greater than a predetermined threshold;
In the third step,
When the load factor determination unit determines that the difference between the average load factor of the physical devices in the group and the load factor of the physical disks in the group is equal to or greater than a predetermined threshold, the command ratio is It is judged whether it is more than a predetermined threshold. The load distribution method according to claim 10 characterized by things.
前記第2のステップでは、
前記グループ内の前記物理ディスクの負荷率の最大値と最小値との差の絶対値が所定の閾値以上であるか否かを判断し、
前記第3のステップでは、
前記第2のステップにおいて前記グループ内の前記物理ディスクの負荷率の最大値と最小値との差の絶対値が所定の閾値以上であると判断した場合に、前記コマンド比率が所定の閾値以上であるか否かを判断する
ことを特徴とする請求項10に記載の負荷分散方法。
In the second step,
Determining whether the absolute value of the difference between the maximum value and the minimum value of the load factor of the physical disk in the group is greater than or equal to a predetermined threshold;
In the third step,
When it is determined in the second step that the absolute value of the difference between the maximum value and the minimum value of the load factor of the physical disk in the group is equal to or greater than a predetermined threshold, the command ratio is equal to or greater than the predetermined threshold. It is judged whether there exists. The load distribution method of Claim 10 characterized by the above-mentioned.
前記第4のステップでは、
前記第3のステップにおいて前記ライトコマンドのコマンド比率が所定の閾値以上であると判断した場合には、前記第2のステップにおいて所定の閾値以上と判断した前記グループ内の物理デバイスのパリティを保持する比率を低くするようにデータとパリティとを入れ替える
ことを特徴とする請求項10に記載の負荷分散方法。
In the fourth step,
If it is determined in the third step that the command ratio of the write command is greater than or equal to a predetermined threshold, the parity of the physical device in the group that is determined to be greater than or equal to the predetermined threshold in the second step is retained. The load distribution method according to claim 10, wherein data and parity are switched so as to reduce the ratio.
前記第4のステップでは、
前記第2のステップにおいて所定の閾値以上と判断した前記グループ内の物理デバイスのパリティと、当該物理デバイス以外の前記グループ内の他の物理デバイスのデータとを入れ替える
ことを特徴とする請求項13に記載の負荷分散方法。
In the fourth step,
The parity of the physical device in the group determined to be greater than or equal to a predetermined threshold in the second step and the data of another physical device in the group other than the physical device are replaced with each other. The load balancing method described.
前記第4のステップでは、
前記第3のステップにおいて前記リードコマンドのコマンド比率が所定の閾値以上であると判断した場合には、前記第2のステップにおいて所定の閾値以上と判断した前記グループ内の物理デバイスのパリティを保持する比率を高くするようにデータとパリティとを入れ替える
ことを特徴とする請求項10に記載の負荷分散方法。
In the fourth step,
If it is determined in the third step that the command ratio of the read command is greater than or equal to a predetermined threshold, the parity of the physical device in the group that is determined to be greater than or equal to the predetermined threshold in the second step is retained. The load balancing method according to claim 10, wherein data and parity are switched so as to increase the ratio.
前記第4のステップでは、
前記第2のステップにおいて所定の閾値以上と判断した前記グループ内の物理デバイスのデータと、当該物理デバイス以外の前記グループ内の他の物理デバイスのパリティとを入れ替える
ことを特徴とする請求項15に記載の負荷分散方法。
In the fourth step,
The data of the physical device in the group determined to be equal to or greater than a predetermined threshold in the second step and the parity of another physical device in the group other than the physical device are exchanged. The load balancing method described.
JP2006267493A 2006-09-29 2006-09-29 Storage device and load balancing method Pending JP2008090372A (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2006267493A JP2008090372A (en) 2006-09-29 2006-09-29 Storage device and load balancing method
US11/598,664 US8387063B2 (en) 2006-09-29 2006-11-14 Storage apparatus and load balancing method
EP07251066A EP1909163A3 (en) 2006-09-29 2007-03-14 Storage apparatus and load balancing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006267493A JP2008090372A (en) 2006-09-29 2006-09-29 Storage device and load balancing method

Publications (1)

Publication Number Publication Date
JP2008090372A true JP2008090372A (en) 2008-04-17

Family

ID=38823577

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006267493A Pending JP2008090372A (en) 2006-09-29 2006-09-29 Storage device and load balancing method

Country Status (3)

Country Link
US (1) US8387063B2 (en)
EP (1) EP1909163A3 (en)
JP (1) JP2008090372A (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006202457A (en) * 2004-12-20 2006-08-03 Fujitsu Ltd Semiconductor memory
JP2010026919A (en) * 2008-07-23 2010-02-04 Hitachi Ltd Method for allocating logical unit inside storage system to logical volume and storage controller
JP2011013908A (en) * 2009-07-01 2011-01-20 Toshiba Corp Disk controller and redundant data management method
JP2011192202A (en) * 2010-03-16 2011-09-29 Toshiba Corp Disk array device, logic disk reconfiguration method applied to the device
JP2013539133A (en) * 2010-09-28 2013-10-17 ピュア・ストレージ・インコーポレイテッド In-device data protection in RAID arrays
JP7468914B2 (en) 2022-03-07 2024-04-16 Necプラットフォームズ株式会社 Disk array device, load balancing method, and load balancing program

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007328734A (en) * 2006-06-09 2007-12-20 Hitachi Ltd Storage device and control method for storage device
JP5067370B2 (en) * 2006-08-08 2012-11-07 ソニー株式会社 Reception device, display control method, and program
US8880843B2 (en) 2010-02-10 2014-11-04 International Business Machines Corporation Providing redundancy in a virtualized storage system for a computer system
US9015411B2 (en) 2011-12-02 2015-04-21 Compellent Technologies System and method for unbalanced raid management
JP6160064B2 (en) * 2012-11-19 2017-07-12 富士通株式会社 Application determination program, failure detection apparatus, and application determination method
US9891993B2 (en) 2014-05-23 2018-02-13 International Business Machines Corporation Managing raid parity stripe contention
US9563511B1 (en) * 2015-03-19 2017-02-07 EMC IP Holding Company LLC Performing input/output operations on a set of storage devices based on scalable input/output credits
US10061525B1 (en) * 2015-03-31 2018-08-28 EMC IP Holding Company LLC Load balancing system and method
US20170212705A1 (en) * 2016-01-26 2017-07-27 Netapp, Inc. Dynamic Weighting for Distributed Parity Device Layouts
US20190196969A1 (en) * 2017-12-22 2019-06-27 Samsung Electronics Co., Ltd. Method and apparatus for adaptive cache load balancing for ssd-based cloud computing storage system
CN110058792B (en) * 2018-01-18 2022-08-30 伊姆西Ip控股有限责任公司 Method, apparatus and computer program product for expanding storage space
CN110515729B (en) * 2019-08-19 2022-05-24 中国人民解放军国防科技大学 Graph computing node vector load balancing method and device based on graph processor

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
US20020124137A1 (en) 2001-01-29 2002-09-05 Ulrich Thomas R. Enhancing disk array performance via variable parity based load balancing
US7191207B2 (en) 2003-06-11 2007-03-13 International Business Machines Corporation Apparatus and method to dynamically allocate bandwidth in a data storage and retrieval system
JP2006053601A (en) 2004-08-09 2006-02-23 Hitachi Ltd Storage device

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006202457A (en) * 2004-12-20 2006-08-03 Fujitsu Ltd Semiconductor memory
JP4704078B2 (en) * 2004-12-20 2011-06-15 富士通セミコンダクター株式会社 Semiconductor memory
JP2010026919A (en) * 2008-07-23 2010-02-04 Hitachi Ltd Method for allocating logical unit inside storage system to logical volume and storage controller
JP2011013908A (en) * 2009-07-01 2011-01-20 Toshiba Corp Disk controller and redundant data management method
JP2011192202A (en) * 2010-03-16 2011-09-29 Toshiba Corp Disk array device, logic disk reconfiguration method applied to the device
JP2013539133A (en) * 2010-09-28 2013-10-17 ピュア・ストレージ・インコーポレイテッド In-device data protection in RAID arrays
JP7468914B2 (en) 2022-03-07 2024-04-16 Necプラットフォームズ株式会社 Disk array device, load balancing method, and load balancing program

Also Published As

Publication number Publication date
US8387063B2 (en) 2013-02-26
US20080092143A1 (en) 2008-04-17
EP1909163A3 (en) 2010-06-09
EP1909163A2 (en) 2008-04-09

Similar Documents

Publication Publication Date Title
JP2008090372A (en) Storage device and load balancing method
US7472240B2 (en) Storage system with plural control device affiliations
US8489813B2 (en) Storage system that executes performance optimization that maintains redundancy
JP5427630B2 (en) Application and tier management in a dynamic page reallocation storage system
US8898385B2 (en) Methods and structure for load balancing of background tasks between storage controllers in a clustered storage environment
US7912814B2 (en) Data migration in storage system
US9658779B2 (en) Computer system and control method for computer system
US7650480B2 (en) Storage system and write distribution method
US8661214B2 (en) Storage system and data migration processing control method
US7900013B2 (en) Method and computer for determining storage device
US20130054894A1 (en) Increase in deduplication efficiency for hierarchical storage system
JP5635621B2 (en) Storage system and storage system data transfer method
JP2008217216A (en) Load distribution method and computer system
US10664182B2 (en) Storage system
US11150990B2 (en) Method, apparatus and computer readable medium for managing a plurality of disks
US20200285551A1 (en) Storage system, data management method, and data management program
US7676644B2 (en) Data processing system, storage apparatus and management console
JP4838054B2 (en) Disk array device and load balancing method thereof
JP7212093B2 (en) Storage system, storage system migration method
US11188258B2 (en) Distributed storage system
US8943280B2 (en) Method and apparatus to move page between tiers
JP4714720B2 (en) Storage device, control method therefor, and disk device
US20150370504A1 (en) Storage device control system and storage device control apparatus
JP5856665B2 (en) Storage system and storage system data transfer method
WO2017199424A1 (en) Computer system