JP2023130038A - Disk array device, load distribution method, and load distribution program - Google Patents

Disk array device, load distribution method, and load distribution program Download PDF

Info

Publication number
JP2023130038A
JP2023130038A JP2022034480A JP2022034480A JP2023130038A JP 2023130038 A JP2023130038 A JP 2023130038A JP 2022034480 A JP2022034480 A JP 2022034480A JP 2022034480 A JP2022034480 A JP 2022034480A JP 2023130038 A JP2023130038 A JP 2023130038A
Authority
JP
Japan
Prior art keywords
swap
data block
management table
access
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2022034480A
Other languages
Japanese (ja)
Other versions
JP7468914B2 (en
Inventor
俊一 高瀬
Shunichi Takase
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.)
NEC Platforms Ltd
Original Assignee
NEC Platforms 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 NEC Platforms Ltd filed Critical NEC Platforms Ltd
Priority to JP2022034480A priority Critical patent/JP7468914B2/en
Publication of JP2023130038A publication Critical patent/JP2023130038A/en
Application granted granted Critical
Publication of JP7468914B2 publication Critical patent/JP7468914B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

To provide a display array device capable of performing more accurate load distribution, a load distribution method, and a load distribution program.SOLUTION: A disk array device 1 includes an R/W access time data record control part 21 for recording access information showing an access state in each data block of RAID groups A, B in either one of management tables 23, 24, a data block swap control part 22 for swapping data blocks between the RAID groups A, B by using the access information recorded in a record of the either one of the management tables 23, 24, and a main control part 20 for performing control such that the data block swap control part 22 performs a swap by using the access information recorded in the either one of the management tables 23, 24, and that the R/W access time data record control part 21 records the access information in the other one of the management tables 23, 24.SELECTED DRAWING: Figure 1

Description

本発明は、ディスクアレイ装置、負荷分散方法、及び負荷分散プログラムに関する。 The present invention relates to a disk array device, a load distribution method, and a load distribution program.

ディスクアレイ装置は、外部記憶装置(例えば、ハードディスク)を複数搭載し、大容量ディスクとして扱う装置である。ディスクアレイ装置では、信頼性或いは処理能力を向上させるために、RAID(Redundant Arrays of Inexpensive Disks)技術が採用されている。尚、ディスクアレイ装置は、RAID技術が採用されていることから、「レイド」と呼ばれることもある。 A disk array device is a device equipped with a plurality of external storage devices (for example, hard disks) and treated as a large-capacity disk. In disk array devices, RAID (Redundant Arrays of Inexpensive Disks) technology is employed to improve reliability or processing performance. Note that the disk array device is sometimes called "RAID" because it uses RAID technology.

ディスクアレイ装置には、RAIDグループ(RAID技術によって複数の外部記憶装置が論理的に1つの外部記憶装置とされたもの)を複数備えるものがある。以下の特許文献1には、2つのRAIDグループを備えるディスクアレイ装置が開示されている。このディスクアレイ装置では、2つのRAIDグループ(「RAIDグループA」、「RAIDグループB」とする)の何れか一方にアクセス負荷が集中するのを防止することで処理性能の向上を図っている。 Some disk array devices include a plurality of RAID groups (a plurality of external storage devices are logically combined into one external storage device using RAID technology). Patent Document 1 below discloses a disk array device including two RAID groups. This disk array device aims to improve processing performance by preventing access loads from concentrating on either one of two RAID groups (referred to as "RAID group A" and "RAID group B").

具体的に、以下の特許文献1に開示されたディスクアレイ装置は、RAIDグループAとRAIDグループBの各々に設けられたデータブロックへのアクセス回数を集計する。そして、RAIDグループAで最もアクセス回数が多いデータブロックと、RAIDグループBで最もアクセス回数が少ないデータブロックとをスワップする。続いて、RAIDグループAで2番目にアクセス回数が多いデータブロックと、RAIDグループBで2番目にアクセス回数が少ないデータブロックとをスワップする。このような方法で、RAIDグループAとRAIDグループBとのアクセス回数が平均化されるまでデータブロックのスワップを行うことで、2つのRAIDグループの何れか一方にアクセス負荷が集中するのを防止している。 Specifically, the disk array device disclosed in Patent Document 1 below counts the number of accesses to data blocks provided in each of RAID group A and RAID group B. Then, the data block accessed the most in RAID group A and the data block accessed the least in RAID group B are swapped. Subsequently, the data block accessed the second most frequently in RAID group A and the data block accessed second least frequently in RAID group B are swapped. By using this method to swap data blocks until the number of accesses between RAID group A and RAID group B is averaged, it is possible to prevent the access load from concentrating on one of the two RAID groups. ing.

特開2007-102607号公報Japanese Patent Application Publication No. 2007-102607

ところで、上記の特許文献1に開示されたディスクアレイ装置は、データブロックのスワップ処理が開始されてから終了するまで、データブロックへのアクセス回数の集計を停止している。これにより、データブロックへの実際のアクセス回数と集計されたアクセス回数との間に乖離が生ずるため、負荷分散の正確性が若干欠けるという問題があった。 By the way, the disk array device disclosed in Patent Document 1 above stops counting the number of accesses to a data block from the start to the end of data block swap processing. This causes a discrepancy between the actual number of accesses to the data block and the total number of accesses, resulting in a problem that the accuracy of load distribution is somewhat lacking.

本発明は上述の課題を解決するディスクアレイ装置、負荷分散方法、及び負荷分散プログラムを提供することを目的とする。 An object of the present invention is to provide a disk array device, a load distribution method, and a load distribution program that solve the above-mentioned problems.

上記課題を解決するために、本発明の一態様によるディスクアレイ装置は、複数のデータブロックを有する複数のRAIDグループの、前記データブロック毎のアクセス状況を示すアクセス情報を第1の管理テーブル及び第2の管理テーブルの何れか一方に記録する記録手段と、前記第1の管理テーブル及び第2の管理テーブルの何れか一方に記録された前記アクセス情報を用いて、前記複数のRAIDグループ間で前記データブロックのスワップを行うスワップ制御手段と、前記スワップ制御手段が、前記第1の管理テーブル及び第2の管理テーブルの何れか一方に記録された前記アクセス情報を用いて前記スワップを行い、前記記録手段が、前記第1の管理テーブル及び第2の管理テーブルの何れか他方に前記アクセス情報を記録するように前記スワップ制御手段及び前記記録手段を制御する制御手段と、を備える。 In order to solve the above problems, a disk array device according to one aspect of the present invention stores access information indicating the access status of each data block of a plurality of RAID groups having a plurality of data blocks in a first management table and a first management table. The access information recorded in one of the first management table and the second management table is used to record the information in one of the two management tables, and the access information recorded in one of the first management table and the second management table. swap control means for swapping data blocks, and the swap control means performs the swap using the access information recorded in either the first management table or the second management table, and the swap control means performs the swap using the access information recorded in either the first management table or the second management table, The means includes a control means for controlling the swap control means and the recording means so as to record the access information in either the first management table or the second management table.

上記課題を解決するために、本発明の一態様による負荷分散方法は、複数のデータブロックを有する複数のRAIDグループの、前記データブロック毎のアクセス状況を示すアクセス情報を第1の管理テーブル及び第2の管理テーブルの何れか一方に記録するステップと、前記第1の管理テーブル及び第2の管理テーブルの何れか一方に記録された前記アクセス情報を用いて、前記複数のRAIDグループ間で前記データブロックのスワップを行うステップと、前記第1の管理テーブル及び第2の管理テーブルの何れか一方に記録された前記アクセス情報を用いて前記スワップが行われ、前記第1の管理テーブル及び第2の管理テーブルの何れか他方に前記アクセス情報が記録されるように制御するステップと、を有する。 In order to solve the above problems, a load balancing method according to one aspect of the present invention stores access information indicating the access status of each data block of a plurality of RAID groups having a plurality of data blocks in a first management table and a first management table. the access information recorded in either the first management table or the second management table, the data is stored between the plurality of RAID groups; swapping blocks; and performing the swap using the access information recorded in either the first management table or the second management table; and controlling the access information to be recorded in either one of the management tables.

上記課題を解決するために、本発明の一態様による負荷分散プログラムは、上記の負荷分散方法をコンピュータに実行させる。 In order to solve the above problems, a load balancing program according to one aspect of the present invention causes a computer to execute the above load balancing method.

本発明によれば、より正確な負荷分散を行うことができるという効果がある。 According to the present invention, there is an effect that more accurate load distribution can be performed.

本発明の一実施形態によるディスクアレイ装置の要部構成を示すブロック図である。1 is a block diagram showing the configuration of main parts of a disk array device according to an embodiment of the present invention. FIG. 本発明の一実施形態によるディスクアレイ装置の動作例を示すフローチャートである。3 is a flowchart illustrating an example of the operation of a disk array device according to an embodiment of the present invention. 図2中のステップS15の詳細な処理を示すフローチャートである。3 is a flowchart showing detailed processing of step S15 in FIG. 2. FIG. 本発明の一実施形態において管理テーブルに記録される情報の一例を示す図である。FIG. 3 is a diagram showing an example of information recorded in a management table in an embodiment of the present invention. 本発明の一実施形態において管理テーブルに記録される情報の一例を示す図である。FIG. 3 is a diagram showing an example of information recorded in a management table in an embodiment of the present invention. 本発明の一実施形態においてスワップ先記憶部に記憶される情報の一例を示す図である。FIG. 3 is a diagram showing an example of information stored in a swap destination storage unit in an embodiment of the present invention. 本発明の一実施形態において、スワップが行われた後のRAIDグループの様子の一例を示す図である。FIG. 3 is a diagram illustrating an example of the state of a RAID group after swapping is performed in an embodiment of the present invention. 本発明の一実施形態によるディスクアレイ装置の最小構成例を示す図である。1 is a diagram showing an example of the minimum configuration of a disk array device according to an embodiment of the present invention. FIG.

以下、図面を参照して本発明の実施形態によるディスクアレイ装置、負荷分散方法、及び負荷分散プログラムについて詳細に説明する。 Hereinafter, a disk array device, a load distribution method, and a load distribution program according to embodiments of the present invention will be described in detail with reference to the drawings.

〈ディスクアレイ装置の構成〉
図1は、本発明の一実施形態によるディスクアレイ装置の要部構成を示すブロック図である。図1に示す通り、本実施形態のディスクアレイ装置1は、ディスクアレイコントローラ2、RAIDグループ3、及びRAIDグループ4を備える。このようなディスクアレイ装置1は、ホストコンピュータHCから出力されるアクセス指示に基づいて、RAIDグループ3,4に対するデータの読み出し及び書き込みを行う。
<Disk array device configuration>
FIG. 1 is a block diagram showing the main configuration of a disk array device according to an embodiment of the present invention. As shown in FIG. 1, the disk array device 1 of this embodiment includes a disk array controller 2, a RAID group 3, and a RAID group 4. Such a disk array device 1 reads and writes data to and from the RAID groups 3 and 4 based on access instructions output from the host computer HC.

尚、以下では、説明の便宜上、RAIDグループ3を「RAIDグループA」といい、RAIDグループ4を「RAIDグループB」という。また、本実施形態では、ディスクアレイ装置1が、2つのRAIDグループ(RAIDグループA及びRAIDグループB)を備える例について説明するが、ディスクアレイ装置1は、3つ以上のRAIDグループを備えていてもよい。 Note that, hereinafter, for convenience of explanation, RAID group 3 will be referred to as "RAID group A" and RAID group 4 will be referred to as "RAID group B." Further, in this embodiment, an example will be described in which the disk array device 1 includes two RAID groups (RAID group A and RAID group B), but the disk array device 1 may include three or more RAID groups. Good too.

ディスクアレイコントローラ2は、主制御部20(制御手段)、R/Wアクセス時間データ記録制御部21(記録手段)、データブロックスワップ制御部22(スワップ制御手段)、管理テーブル23(第1の管理テーブル)、管理テーブル24(第2の管理テーブル)、スワップ先記憶部25(スワップ先記憶手段)、データブロックキャッシュ26(第1のキャッシュ)、及びデータブロックキャッシュ27(第2のキャッシュ)を備える。 The disk array controller 2 includes a main control section 20 (control means), an R/W access time data recording control section 21 (recording means), a data block swap control section 22 (swap control means), a management table 23 (first management table), a management table 24 (second management table), a swap destination storage unit 25 (swap destination storage means), a data block cache 26 (first cache), and a data block cache 27 (second cache). .

主制御部20は、ホストコンピュータHCからのアクセス指示に基づいて、R/Wアクセス時間データ記録制御部21及びデータブロックスワップ制御部22に対して制御指示を行う。具体的に、主制御部20は、R/Wアクセス時間データ記録制御部21が、管理テーブル23,24の何れにデータの記録を行うかを制御し、データブロックスワップ制御部22が管理テーブル23,24の何れに記録されたデータを用いるかを制御する。例えば、主制御部20は、データブロックスワップ制御部22が管理テーブル23に記録されたデータを用いる場合には、R/Wアクセス時間データ記録制御部21が、管理テーブル24にデータの記録を行うように制御する。或いは、主制御部20は、データブロックスワップ制御部22が管理テーブル24に記録されたデータを用いる場合には、R/Wアクセス時間データ記録制御部21が、管理テーブル23にデータの記録を行うように制御する。 The main control unit 20 issues control instructions to the R/W access time data recording control unit 21 and data block swap control unit 22 based on access instructions from the host computer HC. Specifically, the main control unit 20 controls which of the management tables 23 and 24 the R/W access time data recording control unit 21 records data in, and the data block swap control unit 22 controls which of the management tables 23 and 24 records data. , 24 is used. For example, when the data block swap control unit 22 uses data recorded in the management table 23, the main control unit 20 causes the R/W access time data recording control unit 21 to record the data in the management table 24. Control as follows. Alternatively, when the data block swap control unit 22 uses the data recorded in the management table 24, the main control unit 20 causes the R/W access time data recording control unit 21 to record the data in the management table 23. Control as follows.

R/Wアクセス時間データ記録制御部21は、RAIDグループA及びRAIDグループBの各データブロックにアクセスした回数を示すアクセス回数と、アクセスした時間を示すアクセス時間とを計測する。R/Wアクセス時間データ記録制御部21は、計測したアクセス時間を、RAIDグループA及びRAIDグループBのデータブロック単位で積算した累積アクセス時間を求める。R/Wアクセス時間データ記録制御部21は、データブロック毎のアクセス回数及び累積アクセス時間を、管理テーブル23又は管理テーブル24に記録する。 The R/W access time data recording control unit 21 measures the number of accesses indicating the number of times each data block of RAID group A and RAID group B has been accessed, and the access time indicating the time of access. The R/W access time data recording control unit 21 calculates a cumulative access time by integrating the measured access time in data block units of RAID group A and RAID group B. The R/W access time data recording control unit 21 records the number of accesses and cumulative access time for each data block in the management table 23 or 24.

ここで、RAIDグループA及びRAIDグループBの各データブロックに対するアクセスの種類としては、読み出し(Read)及び書き込み(Write)等がある。このため、R/Wアクセス時間データ記録制御部21は、データブロック毎のアクセス回数及び累積アクセス時間を、データブロックに対するアクセスの種類毎に記録する。例えば、R/Wアクセス時間データ記録制御部21は、データブロック毎に、読み出しについてのアクセス回数及び累積アクセス時間と、書き込みについてのアクセス回数及び累積アクセス時間とを記録する。 Here, the types of access to each data block of RAID group A and RAID group B include read and write. Therefore, the R/W access time data recording control unit 21 records the number of accesses and cumulative access time for each data block for each type of access to the data block. For example, the R/W access time data recording control unit 21 records the number of accesses and cumulative access time for reading, and the number of accesses and cumulative access time for writing, for each data block.

データブロックスワップ制御部22は、管理テーブル23又は管理テーブル24に記録された情報に基づいて、データブロックキャッシュ26.27を介したデータブロックのスワップ処理を行う。データブロックスワップ制御部22は、RAIDグループAが有する全てのデータブロックの累積アクセス時間を合計した総アクセス時間と、RAIDグループBが有する全てのデータブロックの累積アクセス時間を合計した総アクセス時間とを算出する。そして、データブロックスワップ制御部22は、算出した総アクセス時間に基づいて、スワップ処理を実行するか否か、或いはスワップ処理を継続するか否かを制御する。 The data block swap control unit 22 performs data block swap processing via the data block caches 26 and 27 based on information recorded in the management table 23 or 24. The data block swap control unit 22 calculates the total access time that is the sum of the cumulative access time of all the data blocks that RAID group A has, and the total access time that is the sum of the cumulative access time of all the data blocks that RAID group B has. calculate. Based on the calculated total access time, the data block swap control unit 22 controls whether to execute the swap process or whether to continue the swap process.

データブロックスワップ制御部22は、スワップ処理を行っている間に、スワップが行われるデータブロックの一方又は他方へのアクセスがあった場合には、データブロックキャッシュ26,27をアクセスの対象とする。データブロックスワップ制御部22は、スワップ処理が終了した場合には、データブロックキャッシュ26,27をアクセスの対象から解除する。尚、データブロックスワップ制御部22が行うスワップ処理の詳細については後述する。 If one or the other of the data blocks to be swapped is accessed during swap processing, the data block swap control unit 22 targets the data block caches 26 and 27 for access. When the swap processing is completed, the data block swap control unit 22 releases the data block caches 26 and 27 from being accessed. Note that details of the swap processing performed by the data block swap control unit 22 will be described later.

管理テーブル23,24は、RAIDグループA及びRAIDグループBの、データブロック毎のアクセス状況を示すアクセス情報が記録されるテーブルである。管理テーブル23,24に記録されるアクセス情報としては、RAIDグループA及びRAIDグループBのデータブロック毎のアクセス回数及び累積アクセス時間が挙げられる。尚、管理テーブル23,24は、機能的には同じものである。 The management tables 23 and 24 are tables in which access information indicating the access status of each data block of RAID group A and RAID group B is recorded. The access information recorded in the management tables 23 and 24 includes the number of accesses and cumulative access time for each data block of RAID group A and RAID group B. Note that the management tables 23 and 24 are functionally the same.

スワップ先記憶部25は、データブロックスワップ制御部22によるデータブロックのスワップ処理が完了した場合に、スワップが行われたデータブロックのスワップ先を示す情報を記憶する。尚、スワップが行われたデータブロックへのアクセスは、スワップ先記憶部25に記憶された情報を参照して行われる。 The swap destination storage unit 25 stores information indicating the swap destination of the swapped data block when the data block swap processing by the data block swap control unit 22 is completed. Note that access to the swapped data block is performed with reference to information stored in the swap destination storage section 25.

データブロックキャッシュ26,27は、データブロックスワップ制御部22によりスワップ処理が行われる場合に、スワップが行われるデータブロックを一時的に記憶する。また、データブロックキャッシュ26,27は、上述した通り、スワップが行われるデータブロックへのアクセスがあった場合には、アクセスの対象とされる。このため、データブロックキャッシュ26,27は、例えば、ホストコンピュータHCからアクセスがあった場合に、データブロックをキャッシュする。尚、データブロックキャッシュ26,27は、機能的には同じものである。 The data block caches 26 and 27 temporarily store data blocks to be swapped when the data block swap control unit 22 performs swap processing. Furthermore, as described above, the data block caches 26 and 27 are accessed when a data block to be swapped is accessed. Therefore, the data block caches 26 and 27 cache data blocks when accessed from the host computer HC, for example. Note that the data block caches 26 and 27 are functionally the same.

RAIDグループAは、データブロックA#0(30)、A#1(31)、A#2(32)、A#3(33)、A#4(34)を有する。RAIDグループBは、データブロックB#0(40)、B#1(41)、B#2(42)、B#3(43)、B#4(44)を有する。RAIDグループAのデータブロック30~34、及び、RAIDグループBのデータブロック40~44は、データブロックキャッシュ26,27のデータサイズと同じサイズで分割されている。 RAID group A has data blocks A#0 (30), A#1 (31), A#2 (32), A#3 (33), and A#4 (34). RAID group B has data blocks B#0 (40), B#1 (41), B#2 (42), B#3 (43), and B#4 (44). The data blocks 30 to 34 of RAID group A and the data blocks 40 to 44 of RAID group B are divided into the same size as the data size of data block caches 26 and 27.

〈ディスクアレイ装置の動作〉
図2は、本発明の一実施形態によるディスクアレイ装置の動作例を示すフローチャートである。尚、ディスクアレイ装置1が備える各ブロックのメモリ状態は、システム起動時に全て「0」でクリアされているものとする。
<Operation of disk array device>
FIG. 2 is a flowchart showing an example of the operation of the disk array device according to an embodiment of the present invention. It is assumed that the memory state of each block provided in the disk array device 1 is all cleared to "0" at the time of system startup.

[ステップS10]
例えば、ホストコンピュータHCが、ディスクアレイコントローラ2の主制御部20に対してアクセス監視の開始を指示する。この指示により、主制御部20は、例えば、R/Wアクセス時間データ記録制御部21を制御して、管理テーブル24に各種データの記録をさせるようにする。
[Step S10]
For example, the host computer HC instructs the main control unit 20 of the disk array controller 2 to start monitoring access. Based on this instruction, the main control section 20 controls, for example, the R/W access time data recording control section 21 to record various data in the management table 24.

[ステップS11]
R/Wアクセス時間データ記録制御部21は、管理テーブル23に対し、RAIDグループA及びRAIDグループBのデータブロック毎のアクセス情報の記録を開始する。具体的に、ホストコンピュータHCからデータのアクセス要求があると、RAIDグループA又はRAIDグループBへのデータアクセスが行われる。R/Wアクセス時間データ記録制御部21は、そのデータアクセスの状況を示す情報を受け取ってアクセス回数及びアクセス時間の計測を開始する。
[Step S11]
The R/W access time data recording control unit 21 starts recording access information for each data block of RAID group A and RAID group B in the management table 23. Specifically, when there is a data access request from the host computer HC, data access to RAID group A or RAID group B is performed. The R/W access time data recording control unit 21 receives information indicating the data access status and starts measuring the number of accesses and the access time.

R/Wアクセス時間データ記録制御部21は、RAIDグループA及びRAIDグループBのデータブロックへのアクセスに要した時間を計測し、その計測データをアクセスの種類毎(Read/Write毎)、データブロック毎に積算して累積アクセス時間を算出する。また、R/Wアクセス時間データ記録制御部21は、RAIDグループA及びRAIDグループBに対するアクセスがある度に、アクセスのあったデータブロックのアクセス回数をインクリメントする(+1のカウントを行う)。R/Wアクセス時間データ記録制御部21は、アクセスの種類毎、データブロック毎の累積アクセス時間及びアクセス回数を管理テーブル23に記録する。 The R/W access time data recording control unit 21 measures the time required to access the data blocks of RAID group A and RAID group B, and records the measured data for each type of access (for each read/write) and data block. The cumulative access time is calculated by adding up each time. Further, the R/W access time data recording control unit 21 increments the number of accesses of the accessed data block (counts by +1) each time there is an access to RAID group A and RAID group B. The R/W access time data recording control unit 21 records the cumulative access time and number of accesses for each access type and data block in the management table 23.

[ステップS12]
主制御部20が、R/Wアクセス時間データ記録制御部21及びデータブロックスワップ制御部22を制御し、管理テーブルを入れ替えてスワップ処理を開始させる。具体的に、主制御部20は、データブロックスワップ制御部22が管理テーブル23に記録されたデータを用いてスワップ処理を行い、R/Wアクセス時間データ記録制御部21が、管理テーブル24にデータの記録を行うように制御する。
[Step S12]
The main control unit 20 controls the R/W access time data recording control unit 21 and the data block swap control unit 22 to replace the management table and start swap processing. Specifically, in the main control unit 20, the data block swap control unit 22 performs swap processing using the data recorded in the management table 23, and the R/W access time data recording control unit 21 performs the swap processing using the data recorded in the management table 24. control to record.

[ステップS13]
データブロックスワップ制御部22が、スワップを行うデータブロックの特定、及び、スワップ前の総アクセス時間とスワップ後の総アクセス時間の算出を行う。具体的に、データブロックスワップ制御部22は、まず、スワップ前の総アクセス時間を算出する。具体的には、管理テーブル23に記録されたアクセス情報を用いて、スワップ前のRAIDグループAについての総アクセス時間と、スワップ前のRAIDグループBについての総アクセス時間とを算出する。
[Step S13]
The data block swap control unit 22 specifies the data blocks to be swapped, and calculates the total access time before swapping and the total access time after swapping. Specifically, the data block swap control unit 22 first calculates the total access time before swapping. Specifically, using the access information recorded in the management table 23, the total access time for RAID group A before swap and the total access time for RAID group B before swap are calculated.

次に、データブロックスワップ制御部22は、スワップを行うデータブロックを特定する。具体的には、総アクセス時間が大きいRAIDグループの累積アクセス時間が最も大きいデータブロックと、総アクセス時間が小さいRAIDグループの累積アクセス時間が最も小さいデータブロックとをスワップを行うデータブロックとして特定する。このようなデータブロックを特定するのは、総アクセス時間が大きいRAIDグループの負荷を、総アクセス時間が小さいRAIDグループに効率的に分散させるためである。 Next, the data block swap control unit 22 identifies the data block to be swapped. Specifically, a data block with the longest cumulative access time in a RAID group with a large total access time and a data block with the shortest cumulative access time in a RAID group with a small total access time are specified as data blocks to be swapped. The purpose of specifying such data blocks is to efficiently distribute the load of a RAID group with a long total access time to a RAID group with a short total access time.

次いで、データブロックスワップ制御部22は、スワップ後の総アクセス時間を算出する。具体的には、スワップを行うデータブロックとして特定されたデータブロックが仮にスワップされたとした場合の、RAIDグループAについての総アクセス時間と、RAIDグループBについての総アクセス時間とを算出する。 Next, the data block swap control unit 22 calculates the total access time after swapping. Specifically, the total access time for RAID group A and the total access time for RAID group B are calculated, assuming that the data block specified as the data block to be swapped is swapped.

[ステップS14]
データブロックスワップ制御部22は、ステップS13で算出されたスワップ前後の総アクセス時間に基づいて、特定されたデータブロックがスワップされた場合のRAIDグループAとRAIDグループBとの総アクセス時間の差が短縮されるか否かを判断する。具体的に、データブロックスワップ制御部22は、スワップ後のRAIDグループAとRAIDグループBとの総アクセス時間の差が、スワップ前のRAIDグループAとRAIDグループBとの総アクセス時間の差よりも小さくなっているか否かを判断する。短縮されると判断した場合(YES)には、ステップS15に進み、短縮されないと判断した場合(NO)には、ステップS17に進む。
[Step S14]
The data block swap control unit 22 calculates the difference in total access time between RAID group A and RAID group B when the specified data block is swapped, based on the total access time before and after the swap calculated in step S13. Determine whether it will be shortened or not. Specifically, the data block swap control unit 22 determines that the difference in total access time between RAID group A and RAID group B after swap is greater than the difference in total access time between RAID group A and RAID group B before swap. Determine whether it has become smaller. If it is determined that it will be shortened (YES), the process advances to step S15, and if it is determined that it will not be shortened (NO), the process advances to step S17.

[ステップS15]
データブロックスワップ制御部22は、ステップS13で特定されたデータブロックのスワップを実行する。尚、スワップ処理の詳細については後述する。データブロックのスワップが完了すると、データブロックスワップ制御部22は、ステップS13で総アクセス時間を算出する過程で得られたデータを管理テーブル23に反映する。
[Step S15]
The data block swap control unit 22 executes the swap of the data block identified in step S13. Note that details of the swap processing will be described later. When the data block swap is completed, the data block swap control unit 22 reflects the data obtained in the process of calculating the total access time in the management table 23 in step S13.

[ステップS16]
データブロックスワップ制御部22は、RAIDグループAとRAIDグループBとの総アクセス時間の差が、予め規定された一定値以下であるか否かを判断する。一定値以下であると判断した場合(YES)には、RAIDグループAとRAIDグループBとの総アクセス時間の差が無くなったものとして、ステップS17に進む。これに対し、一定値以下でないと判断した場合(NO)には、RAIDグループAとRAIDグループBとの総アクセス時間の差を更に無くすために、ステップS13に進む。
[Step S16]
The data block swap control unit 22 determines whether the difference in total access time between RAID group A and RAID group B is less than or equal to a predefined constant value. If it is determined that the total access time is less than the certain value (YES), it is assumed that the difference in total access time between RAID group A and RAID group B has disappeared, and the process proceeds to step S17. On the other hand, if it is determined that the access time is not below the certain value (NO), the process proceeds to step S13 in order to further eliminate the difference in total access time between RAID group A and RAID group B.

[ステップS17]
データブロックスワップ制御部22は、スワップ処理を終了する。スワップ処理が完了すると、管理テーブル23のデータは必要がなくなるため、データブロックスワップ制御部22は、管理テーブル23のデータをクリアする。尚、ステップS17が終了すると、ステップS12に進む。以上にて、図2に示す一連の処理が終了する。
[Step S17]
The data block swap control unit 22 ends the swap processing. When the swap process is completed, the data in the management table 23 is no longer needed, so the data block swap control unit 22 clears the data in the management table 23. Incidentally, upon completion of step S17, the process proceeds to step S12. With this, the series of processes shown in FIG. 2 is completed.

図3は、図2中のステップS15の詳細な処理を示すフローチャートである。尚、以下では、RAIDグループAの総アクセス時間が、RAIDグループBの総アクセス時間よりも大きいとする。また、累積アクセス時間が最も大きいデータブロックが、データブロックがA#3(33)であり、累積アクセス時間が最も小さいデータブロックが、データブロックがB#0(10)であるとする。よって、以下では、データブロックA#3とデータブロックB#0とがスワップされる場合を例に挙げて説明する。 FIG. 3 is a flowchart showing detailed processing of step S15 in FIG. In the following, it is assumed that the total access time of RAID group A is longer than the total access time of RAID group B. Further, assume that the data block with the longest cumulative access time is data block A#3 (33), and the data block with the shortest cumulative access time is data block B#0 (10). Therefore, in the following description, a case will be described as an example in which data block A#3 and data block B#0 are swapped.

[ステップS20]
データブロックスワップ制御部22は、データブロックキャッシュ26,27を、ホストコンピュータHCからデータブロックA#3,B#0に対するアクセス(Read/Writeアクセス)があった場合のアクセス対象にそれぞれ設定する。
[Step S20]
The data block swap control unit 22 sets the data block caches 26 and 27 to be accessed when the host computer HC accesses the data blocks A#3 and B#0 (Read/Write access).

[ステップS21]
データブロックスワップ制御部22は、データブロックA#3をデータブロックキャッシュ26にコピーし、データブロックB#0をデータブロックキャッシュ27にコピーする。ここで、コピー処理中に、ホストコンピュータHCからデータブロックA#3へのアクセスがあった場合には、データブロックキャッシュ26を介してデータブロックA#3がアクセスされる。また、ホストコンピュータHCからデータブロックB#0へのアクセスがあった場合には、データブロックキャッシュ27を介してデータブロックB#0がアクセスされる。
[Step S21]
The data block swap control unit 22 copies data block A#3 to the data block cache 26 and copies data block B#0 to the data block cache 27. Here, if data block A#3 is accessed from host computer HC during the copy process, data block A#3 is accessed via data block cache 26. Further, when data block B#0 is accessed from host computer HC, data block B#0 is accessed via data block cache 27.

[ステップS22]
データブロックスワップ制御部22は、データブロックキャッシュ26とデータブロックキャッシュ27との全ての入出力インターフェースを切り替える。これにより、データブロックキャッシュ26に記憶されたデータブロックは、データブロックB#0に対するものになり、データブロックキャッシュ27に記憶されたデータブロックは、データブロックA#3に対するものになる。
[Step S22]
The data block swap control unit 22 switches all input/output interfaces between the data block cache 26 and the data block cache 27. As a result, the data block stored in data block cache 26 becomes for data block B#0, and the data block stored in data block cache 27 becomes for data block A#3.

[ステップS23]
データブロックスワップ制御部22は、データブロックキャッシュ26に記憶されているデータをデータブロックB#0にコピーし、データブロックキャッシュ27に記憶されているデータをデータブロックA#3にコピーする。ここで、コピー処理中に、ホストコンピュータHCからデータブロックA#3へのアクセスがあった場合には、データブロックキャッシュ27を介してデータブロックA#3がアクセスされる。また、ホストコンピュータHCからデータブロックB#0へのアクセスがあった場合には、データブロックキャッシュ26を介してデータブロックB#0がアクセスされる。
[Step S23]
The data block swap control unit 22 copies the data stored in the data block cache 26 to data block B#0, and copies the data stored in the data block cache 27 to data block A#3. Here, if data block A#3 is accessed from host computer HC during the copy process, data block A#3 is accessed via data block cache 27. Furthermore, when data block B#0 is accessed from host computer HC, data block B#0 is accessed via data block cache 26.

[ステップS24]
データブロックスワップ制御部22は、データブロックキャッシュ26,27を、ホストコンピュータHCからのアクセス対象から切り離す。
[Step S24]
The data block swap control unit 22 separates the data block caches 26 and 27 from being accessed by the host computer HC.

[ステップS25]
データブロックスワップ制御部22は、データブロックA#3,B#0のスワップ先を示す情報をスワップ先記憶部25に記憶させる。以後、データブロックA#3,B#0へのアクセスはスワップ先記憶部25に記憶されたスワップ先を示す情報を参照して行われる。
[Step S25]
The data block swap control unit 22 causes the swap destination storage unit 25 to store information indicating the swap destinations of data blocks A#3 and B#0. Thereafter, access to data blocks A#3 and B#0 is performed by referring to the information indicating the swap destination stored in the swap destination storage section 25.

図4A,図4Bは、本発明の一実施形態において管理テーブルに記録される情報の一例を示す図である。尚、図4Aは、スワップ処理が行われる前のものであり、図4Bは、スワップ処理が行われた後のものである。尚、ここでは、前述した例と同様に、スワップ処理が行われる前において、RAIDグループAの総アクセス時間が、RAIDグループBの総アクセス時間よりも大きいとする。また、図4A,図4Bでは、理解を容易にするために、RAIDグループA及びRAIDグループBの総アクセス時間(TOTAL)及び平均時間も図示している。 FIGS. 4A and 4B are diagrams showing an example of information recorded in a management table in an embodiment of the present invention. Note that FIG. 4A shows the image before the swap process is performed, and FIG. 4B shows the image after the swap process is performed. Here, it is assumed that the total access time of RAID group A is greater than the total access time of RAID group B before the swap process is performed, similar to the above-described example. Further, in FIGS. 4A and 4B, the total access time (TOTAL) and average time of RAID group A and RAID group B are also illustrated for easy understanding.

図4Aに示す例において、累積アクセス時間の差は、RAIDグループAのデータブロックA#3とRAIDグループBのデータブロックB#0との間で最も大きく、RAIDグループAのデータブロックA#2とRAIDグループBのデータブロックB#2との間で次に大きい。尚、RAIDグループAの総アクセス時間は222秒であり、RAIDグループBの総アクセス時間は123秒であり、RAIDグループAとRAIDグループBとの総アクセス時間に差が見られる。 In the example shown in FIG. 4A, the difference in cumulative access time is largest between data block A#3 of RAID group A and data block B#0 of RAID group B, and the difference in cumulative access time is greatest between data block A#3 of RAID group A and data block B#0 of RAID group B. It is the next largest between data block B#2 of RAID group B. Note that the total access time for RAID group A is 222 seconds, and the total access time for RAID group B is 123 seconds, and a difference can be seen in the total access time between RAID group A and RAID group B.

ここで、図1に示す通り、RAIDグループAのデータブロックA#3とRAIDグループBのデータブロックB#0とのスワップ、及び、RAIDグループAのデータブロックA#2とRAIDグループBのデータブロックB#2とのスワップが行われたとする。図4Bを参照すると、RAIDグループA及びRAIDグループBの総アクセス時間が共に153秒になっており、RAIDグループAとRAIDグループBとの総アクセス時間に差が無くなっている。これは、負荷分散が行われたことを示している。 Here, as shown in FIG. 1, data block A#3 of RAID group A and data block B#0 of RAID group B are swapped, and data block A#2 of RAID group A and data block of RAID group B are swapped. Assume that a swap with B#2 has been performed. Referring to FIG. 4B, the total access time for both RAID group A and RAID group B is 153 seconds, and there is no difference in the total access time between RAID group A and RAID group B. This indicates that load balancing has been performed.

図5は、本発明の一実施形態においてスワップ先記憶部に記憶される情報の一例を示す図である。図5に示す例では、RAIDグループAのブロック番号「3」については、スワップ先「B」、ブロック番号「0」が設定されている。これは、データブロックA#3のスワップ先がデータブロックB#0であることを示している。また、RAIDグループBのブロック番号「0」については、スワップ先「A」、ブロック番号「3」が設定されている。これは、データブロックB#0のスワップ先がデータブロックA#3であることを示している。 FIG. 5 is a diagram showing an example of information stored in the swap destination storage unit in an embodiment of the present invention. In the example shown in FIG. 5, for block number "3" of RAID group A, swap destination "B" and block number "0" are set. This indicates that the swap destination of data block A#3 is data block B#0. Furthermore, for block number "0" of RAID group B, swap destination "A" and block number "3" are set. This indicates that the swap destination of data block B#0 is data block A#3.

同様に、図5に示す例では、RAIDグループAのブロック番号「2」については、スワップ先「B」、ブロック番号「2」が設定されている。また、RAIDグループBのブロック番号「2」については、スワップ先「A」、ブロック番号「2」が設定されている。 Similarly, in the example shown in FIG. 5, for block number "2" of RAID group A, swap destination "B" and block number "2" are set. Furthermore, for block number "2" of RAID group B, swap destination "A" and block number "2" are set.

図6は、本発明の一実施形態において、スワップが行われた後のRAIDグループの様子の一例を示す図である。図6に例示するものは、RAIDグループAのデータブロックA#3とRAIDグループBのデータブロックB#0とのスワップ、及び、RAIDグループAのデータブロックA#2とRAIDグループBのデータブロックB#2とのスワップが行われたものである。 FIG. 6 is a diagram illustrating an example of the state of a RAID group after swapping is performed in an embodiment of the present invention. What is illustrated in FIG. 6 is a swap between data block A#3 of RAID group A and data block B#0 of RAID group B, and a swap between data block A#2 of RAID group A and data block B of RAID group B. It was swapped with #2.

以上の通り、本実施形態では、RAIDグループA及びRAIDグループBのデータブロックへのアクセス情報が記録される2つの管理テーブル23,24を設けている。そして、データブロックスワップ制御部22が、管理テーブル23,24の何れか一方に記録されたアクセス情報を用いてスワップ処理を行っている間、R/Wアクセス時間データ記録制御部21が管理テーブル23,24の何れか他方にアクセス情報を記録するようにしている。これにより、スワップ処理が行われている間も、RAIDグループA及びRAIDグループBのアクセス情報を記録することができるため、より正確な負荷分散を行うことができる。 As described above, in this embodiment, two management tables 23 and 24 are provided in which access information to data blocks of RAID group A and RAID group B is recorded. While the data block swap control unit 22 is performing swap processing using the access information recorded in either the management table 23 or 24, the R/W access time data recording control unit 21 , 24, the access information is recorded on the other one. Thereby, access information for RAID group A and RAID group B can be recorded even while swap processing is being performed, so more accurate load distribution can be performed.

また、本実施形態では、RAIDグループA及びRAIDグループBのデータブロックへのアクセス回数のみならず、アクセス時間を計測して累計アクセス時間を算出している。このため、HDD(Hard Disk Drive)やSSD(Solid State Drive)等のデバイスの種類によるアクセス時間の違い、Read/Write等のアクセスの種類によるアクセス時間の違いを考慮することができる。これにより、より正確に負荷分散を行うことが可能となる。 Furthermore, in this embodiment, not only the number of accesses to the data blocks of RAID group A and RAID group B but also the access time are measured to calculate the cumulative access time. Therefore, it is possible to take into account differences in access time depending on the type of device such as HDD (Hard Disk Drive) and SSD (Solid State Drive), and differences in access time depending on the type of access such as Read/Write. This makes it possible to perform load distribution more accurately.

また、本実施形態では、スワップが行われる一対のデータブロックを記憶する2つのデータブロックキャッシュ26,27を設け、これらデータブロックキャッシュ26,27を介してデータブロックのスワップ処理を行うようにしている。これにより、ホストコンピュータHCからのアクセスを止めることなく、常時アクセス可能となるため、スワップ処理中におけるホストコンピュータHCのアクセス待ち時間を大きく削減することが可能となる。 Further, in this embodiment, two data block caches 26 and 27 are provided to store a pair of data blocks to be swapped, and data block swap processing is performed via these data block caches 26 and 27. . This allows constant access without stopping access from the host computer HC, making it possible to greatly reduce the access waiting time of the host computer HC during swap processing.

〈変形例〉
RAIDグループA及びRAIDグループBの具体的なRAID構成は、特定のRAID構成に限定されることはなく、任意のRAID構成でよい。例えば、RAIDグループA及びRAIDグループBの具体的なRAID構成は、RAID1構成であってもよく、RAID5構成であってもよい。また、ディスクアレイコントローラ2は、これらのRAIDグループを自由に構築することができる。
<Modified example>
The specific RAID configurations of RAID group A and RAID group B are not limited to specific RAID configurations, and may be any RAID configuration. For example, the specific RAID configuration of RAID group A and RAID group B may be a RAID1 configuration or a RAID5 configuration. Furthermore, the disk array controller 2 can freely construct these RAID groups.

〈最小構成例〉
図7は、本発明の一実施形態によるディスクアレイ装置の最小構成例を示す図である。図7に示す通り、ディスクアレイ装置1は、少なくとも、記録手段51、スワップ制御手段52、及び制御手段53を備える。記録手段51は、複数のデータブロックを有する複数のRAIDグループの、データブロック毎のアクセス情報を第1の管理テーブル及び第2の管理テーブルの何れか一方に記録する。スワップ制御手段52は、第1の管理テーブル及び第2の管理テーブルの何れか一方に記録されたアクセス情報を用いて、複数のRAIDグループ間でデータブロックのスワップを行う。制御手段53は、スワップ制御手段52が、第1の管理テーブル及び第2の管理テーブルの何れか一方に記録されたアクセス情報を用いてスワップを行い、記録手段51が、第1の管理テーブル及び第2の管理テーブルの何れか他方にアクセス情報を記録するようにスワップ制御手段52及び記録手段51を制御する。
<Minimum configuration example>
FIG. 7 is a diagram showing an example of the minimum configuration of a disk array device according to an embodiment of the present invention. As shown in FIG. 7, the disk array device 1 includes at least a recording means 51, a swap control means 52, and a control means 53. The recording means 51 records access information for each data block of a plurality of RAID groups having a plurality of data blocks in either the first management table or the second management table. The swap control means 52 swaps data blocks between a plurality of RAID groups using access information recorded in either the first management table or the second management table. In the control means 53, the swap control means 52 performs the swap using the access information recorded in either the first management table or the second management table, and the recording means 51 performs the swap using the access information recorded in either the first management table or the second management table. The swap control means 52 and the recording means 51 are controlled to record the access information in either one of the second management tables.

上記のディスクアレイ装置1は、内部にコンピュータシステムを有している。そして、ディスクアレイコントローラ2の機能は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータが読み出して実行することによって実現される。ここでコンピュータ読み取り可能な記録媒体とは、磁気ディスク、光磁気ディスク、CD-ROM、DVD-ROM、半導体メモリ等をいう。また、このコンピュータプログラムを通信回線によってコンピュータに配信し、この配信を受けたコンピュータが当該プログラムを実行するようにしても良い。 The disk array device 1 described above has a computer system inside. The functions of the disk array controller 2 are stored in a computer-readable recording medium in the form of a program, and are realized by the computer reading and executing this program. Here, the computer-readable recording medium refers to a magnetic disk, a magneto-optical disk, a CD-ROM, a DVD-ROM, a semiconductor memory, and the like. Alternatively, this computer program may be distributed to a computer via a communication line, and the computer receiving the distribution may execute the program.

尚、図1におけるディスクアレイ装置1のディスクアレイコントローラ2の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによりディスクアレイコントローラ2の機能の全て又は一部を実現してもよい。尚、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、ホームページ提供環境(或いは、表示環境)を備えたWWWシステムも含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD-ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。更に、「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(RAM)のように、一定時間プログラムを保持しているものも含むものとする。 Note that a program for realizing the functions of the disk array controller 2 of the disk array device 1 in FIG. 1 is recorded on a computer-readable recording medium, and the program recorded on the recording medium is read into a computer system and executed. By doing so, all or part of the functions of the disk array controller 2 may be realized. Note that the "computer system" herein includes hardware such as an OS and peripheral devices. Furthermore, the term "computer system" includes a WWW system equipped with a home page providing environment (or display environment). Furthermore, the term "computer-readable recording medium" refers to portable media such as flexible disks, magneto-optical disks, ROMs, and CD-ROMs, and storage devices such as hard disks built into computer systems. Furthermore, "computer-readable recording medium" refers to volatile memory (RAM) inside a computer system that serves as a server or client when a program is transmitted via a network such as the Internet or a communication line such as a telephone line. This also includes programs that are retained for a certain period of time.

また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、或いは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。更に、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。 Further, the program may be transmitted from a computer system storing the program in a storage device or the like to another computer system via a transmission medium or by a transmission wave in a transmission medium. Here, the "transmission medium" that transmits the program refers to a medium that has a function of transmitting information, such as a network (communication network) such as the Internet or a communication line (communication line) such as a telephone line. Moreover, the above program may be for realizing a part of the above-mentioned functions. Furthermore, it may be a so-called difference file (difference program) that can realize the above-described functions in combination with a program already recorded in the computer system.

1 ディスクアレイ装置
3,4 RAIDグループ
20 主制御部
21 R/Wアクセス時間データ記録制御部
22 データブロックスワップ制御部
23,24 管理テーブル
25 スワップ先記憶部
26,27 データブロックキャッシュ
30~34 データブロック
40~44 データブロック
51 記録手段
52 スワップ制御手段
53 制御手段
1 Disk array device 3, 4 RAID group 20 Main control unit 21 R/W access time data recording control unit 22 Data block swap control unit 23, 24 Management table 25 Swap destination storage unit 26, 27 Data block cache 30 to 34 Data block 40 to 44 data block 51 recording means 52 swap control means 53 control means

Claims (10)

複数のデータブロックを有する複数のRAIDグループの、前記データブロック毎のアクセス状況を示すアクセス情報を第1の管理テーブル及び第2の管理テーブルの何れか一方に記録する記録手段と、
前記第1の管理テーブル及び第2の管理テーブルの何れか一方に記録された前記アクセス情報を用いて、前記複数のRAIDグループ間で前記データブロックのスワップを行うスワップ制御手段と、
前記スワップ制御手段が、前記第1の管理テーブル及び第2の管理テーブルの何れか一方に記録された前記アクセス情報を用いて前記スワップを行い、前記記録手段が、前記第1の管理テーブル及び第2の管理テーブルの何れか他方に前記アクセス情報を記録するように前記スワップ制御手段及び前記記録手段を制御する制御手段と、
を備えるディスクアレイ装置。
Recording means for recording access information indicating access status for each data block of a plurality of RAID groups having a plurality of data blocks in either a first management table or a second management table;
Swap control means for swapping the data blocks between the plurality of RAID groups using the access information recorded in either the first management table or the second management table;
The swap control means performs the swap using the access information recorded in either the first management table or the second management table, and the recording means performs the swap using the access information recorded in either the first management table or the second management table. control means for controlling the swap control means and the recording means so as to record the access information in one of the two management tables;
A disk array device comprising:
前記記録手段は、前記アクセス情報として、前記データブロックにアクセスした回数を示すアクセス回数と、前記データブロックにアクセスした累積時間を示す累積アクセス時間とを記録する、請求項1記載のディスクアレイ装置。 2. The disk array device according to claim 1, wherein the recording means records, as the access information, an access count indicating the number of times the data block has been accessed, and a cumulative access time indicating the cumulative time of accessing the data block. 前記記録手段は、前記アクセス回数及び前記累積アクセス時間を、前記データブロックに対するアクセスの種類毎に記録する、請求項2記載のディスクアレイ装置。 3. The disk array device according to claim 2, wherein the recording means records the number of accesses and the cumulative access time for each type of access to the data block. 前記スワップ制御手段は、前記累積アクセス時間が最も大きいデータブロックと、前記累積アクセス時間が最も小さいデータブロックとのスワップを行う、請求項2又は請求項3記載のディスクアレイ装置。 4. The disk array device according to claim 2, wherein the swap control means swaps the data block with the longest cumulative access time and the data block with the shortest cumulative access time. 前記スワップが行われる前記データブロックの一方を記憶する第1のキャッシュと、
前記スワップが行われる前記データブロックの他方を記憶する第2のキャッシュと、
を備え、
前記スワップ制御手段は、前記スワップが行われる前記データブロックの一方を前記第1のキャッシュにコピーするとともに前記スワップが行われる前記データブロックの他方を前記第2のキャッシュにコピーした後に、前記第1のキャッシュと前記第2のキャッシュとの入れ替えを行い、前記第1のキャッシュにコピーされた前記データブロックを前記スワップが行われる前記データブロックの他方にコピーするとともに前記第2のキャッシュにコピーされた前記データブロックを前記スワップが行われる前記データブロックの一方にコピーすることで前記スワップを行う、
請求項1から請求項4の何れか一項に記載のディスクアレイ装置。
a first cache storing one of the data blocks to be swapped;
a second cache storing the other of the data blocks to which the swap is performed;
Equipped with
The swap control means copies one of the data blocks to be swapped to the first cache and copies the other data block to be swapped to the second cache, and then and the second cache, copying the data block copied to the first cache to the other data block to which the swap is performed, and copying the data block copied to the second cache. performing the swap by copying the data block to one of the data blocks to which the swap is performed;
The disk array device according to any one of claims 1 to 4.
前記スワップ制御手段は、前記スワップを行っている間に、前記スワップが行われる前記データブロックの一方又は他方へのアクセスがあった場合には、前記第1のキャッシュ又は前記第2のキャッシュを前記アクセスの対象とする、請求項5記載のディスクアレイ装置。 The swap control means controls the first cache or the second cache when there is access to one or the other of the data blocks to be swapped while the swap is being performed. 6. The disk array device according to claim 5, which is an access target. 前記スワップ制御手段は、前記スワップが終了した場合には、前記第1のキャッシュ又は前記第2のキャッシュを前記アクセスの対象から解除する、請求項6記載のディスクアレイ装置。 7. The disk array device according to claim 6, wherein the swap control means releases the first cache or the second cache from the access target when the swap ends. 前記スワップ制御手段により前記スワップが行われた前記データブロックの一方及び他方のスワップ先を示す情報を記憶するスワップ先記憶手段を備え、
前記スワップが行われた前記データブロックへのアクセスは、前記スワップ先記憶手段に記憶された情報を参照して行われる、
請求項1から請求項7の何れか一項に記載のディスクアレイ装置。
comprising swap destination storage means for storing information indicating swap destinations of one and the other of the data blocks swapped by the swap control means;
Access to the data block to which the swap has been performed is performed with reference to information stored in the swap destination storage means;
The disk array device according to any one of claims 1 to 7.
複数のデータブロックを有する複数のRAIDグループの、前記データブロック毎のアクセス状況を示すアクセス情報を第1の管理テーブル及び第2の管理テーブルの何れか一方に記録するステップと、
前記第1の管理テーブル及び第2の管理テーブルの何れか一方に記録された前記アクセス情報を用いて、前記複数のRAIDグループ間で前記データブロックのスワップを行うステップと、
前記第1の管理テーブル及び第2の管理テーブルの何れか一方に記録された前記アクセス情報を用いて前記スワップが行われ、前記第1の管理テーブル及び第2の管理テーブルの何れか他方に前記アクセス情報が記録されるように制御するステップと、
を有する負荷分散方法。
recording access information indicating access status for each data block of a plurality of RAID groups having a plurality of data blocks in either a first management table or a second management table;
Swapping the data blocks between the plurality of RAID groups using the access information recorded in either the first management table or the second management table;
The swap is performed using the access information recorded in either the first management table or the second management table, and the swap is performed using the access information recorded in either the first management table or the second management table. controlling that access information is recorded;
A load balancing method with
請求項9記載の負荷分散方法をコンピュータに実行させるための負荷分散プログラム。 A load balancing program for causing a computer to execute the load balancing method according to claim 9.
JP2022034480A 2022-03-07 2022-03-07 Disk array device, load balancing method, and load balancing program Active JP7468914B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2022034480A JP7468914B2 (en) 2022-03-07 2022-03-07 Disk array device, load balancing method, and load balancing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2022034480A JP7468914B2 (en) 2022-03-07 2022-03-07 Disk array device, load balancing method, and load balancing program

Publications (2)

Publication Number Publication Date
JP2023130038A true JP2023130038A (en) 2023-09-20
JP7468914B2 JP7468914B2 (en) 2024-04-16

Family

ID=88024844

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022034480A Active JP7468914B2 (en) 2022-03-07 2022-03-07 Disk array device, load balancing method, and load balancing program

Country Status (1)

Country Link
JP (1) JP7468914B2 (en)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003150324A (en) 2001-11-16 2003-05-23 Hitachi Ltd Disk array device
JP4710530B2 (en) 2005-10-06 2011-06-29 日本電気株式会社 Disk array device, data swap method, and program
JP2008090372A (en) 2006-09-29 2008-04-17 Hitachi Ltd Storage device and load balancing method
JP4862770B2 (en) 2007-07-20 2012-01-25 日本電気株式会社 Memory management method and method in virtual machine system, and program
WO2013114420A1 (en) 2012-01-30 2013-08-08 Hitachi, Ltd. Storage apparatus
JP2014211849A (en) 2013-04-22 2014-11-13 富士通株式会社 Storage control device, storage device, and control program

Also Published As

Publication number Publication date
JP7468914B2 (en) 2024-04-16

Similar Documents

Publication Publication Date Title
US6330642B1 (en) Three interconnected raid disk controller data processing system architecture
US7975168B2 (en) Storage system executing parallel correction write
JP5621909B2 (en) Information processing apparatus, storage system, and write control method
US5802345A (en) Computer system with a reduced number of command end interrupts from auxiliary memory unit and method of reducing the number of command end interrupts
US6230239B1 (en) Method of data migration
US8612675B2 (en) Storage controller and firmware updating method
JP3422370B2 (en) Disk cache controller
EP1434125A2 (en) Raid apparatus and logical device expansion method thereof
US20070266203A1 (en) Storage control method and system for performing backup and/or restoration
JP2005301497A (en) Storage management system, restoration method and its program
US8650339B2 (en) Control of data transfer
US9319067B2 (en) Storage control apparatus, storage system, and storage control method
JPH10105344A (en) Data recorder system and data write method therefor
JP2014041471A (en) Storage system, storage control method, and storage control program
US9804781B2 (en) Storage media performance management
US8006049B2 (en) Export of logical volumes by pools
JP2023130038A (en) Disk array device, load distribution method, and load distribution program
WO2016059715A1 (en) Computer system
US8433868B2 (en) Concurrent copy of system configuration global metadata
JP5729043B2 (en) Storage device and control device
JP2806749B2 (en) I / O load distribution control method when file devices are duplicated
JP2634867B2 (en) Disk cache data transfer control method
JP2003271425A (en) Storage control device
JP2005316697A (en) Disk array system and method for data backup
JPH0954658A (en) Parallel secondary storage device and its access method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220307

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230523

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230623

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230808

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230919

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20231114

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240109

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20240118

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240328