JP2011081683A - Control device and method for controlling the same - Google Patents
Control device and method for controlling the same Download PDFInfo
- Publication number
- JP2011081683A JP2011081683A JP2009234724A JP2009234724A JP2011081683A JP 2011081683 A JP2011081683 A JP 2011081683A JP 2009234724 A JP2009234724 A JP 2009234724A JP 2009234724 A JP2009234724 A JP 2009234724A JP 2011081683 A JP2011081683 A JP 2011081683A
- Authority
- JP
- Japan
- Prior art keywords
- hdd
- address
- storage device
- partition
- new
- 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.)
- Withdrawn
Links
Images
Abstract
Description
本発明は、制御装置及び制御装置の制御方法に関する。 The present invention relates to a control device and a control method of the control device.
ハードディスク(以下、HDD(Hard Disk Drive))等の記録装置の信頼性向上、高速化を実現する技術としてRAID(Redundant Arrays of Inexpensive Disks)がある。このRAIDは、ストライピング、パリティチェック、ECC(Error Check and Correct)、データとパリティ、ECCの分散書き込み等の機能を含む。また、採用している機能やその組み合わせの違いにより、RAID0〜RAID6等の様々な種類が存在する。 RAID (Redundant Arrays of Inexpensive Disks) is a technique for improving the reliability and speeding up of a recording device such as a hard disk (hereinafter referred to as HDD (Hard Disk Drive)). This RAID includes functions such as striping, parity check, ECC (Error Check and Correct), data and parity, and ECC distributed writing. There are various types such as RAID0 to RAID6 depending on the functions adopted and the combinations thereof.
例えば、RAID1は、ミラーリングとも呼ばれ、複数のHDDに同じデータを書き込む技術であり、一つのHDDに障害が起こっても、他のHDDに障害が無ければデータの消失を防ぐことができる。 For example, RAID1 is also called mirroring, and is a technique for writing the same data to a plurality of HDDs. Even if a failure occurs in one HDD, data loss can be prevented if there is no failure in another HDD.
ここで、複数の同容量のHDDでRAID1を構築している状態を考える。一つのHDDに障害が起きた場合、この障害が起きたHDDを、障害発生前の容量よりも大きな容量のHDDに交換し、交換されなかったHDDのデータを複製するリビルド処理を実行したとする。しかし、交換した大きな容量のHDDのRAID1としての使用領域は、障害発生前と同様の容量のみであった。また、リビルド処理の後に、例えもう一方の小さい容量のHDDを大きな容量のHDDと交換して、リビルド処理を実行したとしても、上記と同様にRAID1としての使用領域は小さな容量のHDDと同様の領域のみとなる。即ち、RAIDの再構築及びオペレーティングシステム(OS)の再インストールを伴わない限り、リビルドのみでのRAID1の使用領域は変わらないという問題があった。
Here, consider a state in which
特許文献1には、上記のような、いわゆる余ったHDDの容量を有効に利用する提案がなされている。また、特許文献2には、アレイを構成する全てのHDDの容量が拡張された場合において、RAIDの再構築及びOSの再インストールを行わなくてもRAIDアレイの容量拡張を実現する提案がなされている。
Japanese Patent Application Laid-Open No. 2004-133620 proposes to effectively use the so-called surplus HDD capacity as described above. Further,
しかし、特許文献1の技術を用いたとしても、RAIDアレイ装置自体の容量は最初にRAIDアレイを組んだときの容量で動作してしまうため、リビルド処理の対象となるHDDの領域は、最初にRAIDアレイを組んだときの容量しかRAID1としての使用領域とならない。
However, even if the technique of
また、特許文献2では、HDDに保持されている連続するパーティション領域を拡張する構成が含まれていないため、拡張可能なパーティションは限定され、連続する全てのパーティション領域を自由に拡張することはできない。
Further, since
本発明は、上記の問題点を解決するためになされたものである。本発明の目的は、複数の記憶装置に含まれるいずれかの記憶装置が新たな記憶装置に交換された場合に、新たな記憶装置の記憶容量に対応するフォーマット情報に従って、新たな記憶装置における複数のパーティション領域にアクセスする制御装置及びその制御方法を提供することである。 The present invention has been made to solve the above problems. An object of the present invention is to provide a plurality of storage devices in a new storage device according to format information corresponding to the storage capacity of the new storage device when any storage device included in the plurality of storage devices is replaced with a new storage device. It is providing the control apparatus which accesses the partition area | region, and its control method.
本発明は、情報処理装置及び複数の記憶装置と接続可能であり、前記情報処理装置からの要求に応じて前記複数の記憶装置へのアクセスを制御する制御装置であって、前記制御装置に接続される前記記憶装置における複数のパーティション領域の開始アドレスを示す情報として、複数種類の記憶容量の各々に対応する複数のフォーマット情報を管理する管理手段と、前記複数の記憶装置に含まれる何れかの記憶装置が新たな記憶装置に交換された場合に、前記新たな記憶装置の記憶容量に対応するフォーマット情報を前記管理手段により管理される複数のフォーマット情報の中から選択する選択手段と、前記新たな記憶装置の複数のパーティションへアクセスする際のアドレスを、前記選択手段により選択されたフォーマット情報に基づいて算出するアドレス算出手段と、前記アドレス算出手段により算出されたアドレスに基づいて前記新たな記憶装置へのアクセスを制御する制御手段とを有することを特徴とする。 The present invention is a control device that can be connected to an information processing device and a plurality of storage devices, and controls access to the plurality of storage devices in response to a request from the information processing device, and is connected to the control device Management means for managing a plurality of format information corresponding to each of a plurality of types of storage capacities as information indicating start addresses of a plurality of partition areas in the storage device, and any one of the plurality of storage devices Selecting means for selecting format information corresponding to the storage capacity of the new storage device from a plurality of format information managed by the management means when the storage device is replaced with a new storage device; An address for accessing a plurality of partitions in a storage device is based on the format information selected by the selection means An address calculation means for output, and having a control means for the controlling the access to the new storage device based on the address calculated by the address calculation unit.
本発明によれば、複数の記憶装置に含まれるいずれかの記憶装置が新たな記憶装置に交換された場合に、新たな記憶装置の記憶容量に対応するフォーマット情報に従って、新たな記憶装置における複数のパーティション領域にアクセスする制御装置及びその制御方法を提供することが可能となる。 According to the present invention, when any storage device included in a plurality of storage devices is replaced with a new storage device, the plurality of storage devices in the new storage device are in accordance with the format information corresponding to the storage capacity of the new storage device. It is possible to provide a control apparatus and a control method for accessing the partition area.
以下、本発明を実施するための形態について図面を用いて説明する。 Hereinafter, embodiments for carrying out the present invention will be described with reference to the drawings.
図1は、本発明の実施例1に係る制御装置を適用したディスクアレイ装置を含むコンピュータシステムの構成を示す図である。図1において、100はディスクアレイ装置、200は情報処理装置としてのホストコンピュータ(以下、HC)、300及び301は記憶装置であるハードディスク(HDD)である。HC200は、ディスクアレイ装置100の上位装置で、具体的には、パーソナルコンピュータ等の本体や、複合機(MFP)等の画像処理装置のコントローラ部等に対応し、CPU、ROM、RAM、各種インタフェース等を有する。
FIG. 1 is a diagram illustrating a configuration of a computer system including a disk array device to which a control device according to a first embodiment of the invention is applied. In FIG. 1, 100 is a disk array device, 200 is a host computer (hereinafter referred to as HC) as an information processing device, and 300 and 301 are hard disks (HDD) as storage devices. The HC 200 is a host device of the
HC200は、HDD300,301に対して、ディスクアレイ装置100を介して書き込み及び読み出しを行う。このように、ディスクアレイ装置100は、上位装置であるHC200及び複数の記憶装置(HDD,301)と接続可能である。なお、本発明は、記憶装置をHDDに限定するものではなく、他の記憶装置、例えば、フラッシュメモリ等の半導体を使用した記憶装置等でも同様の結果を得ることが出来る。また、ディスクアレイ装置100に接続される記憶装置の台数も2台に限定されるものではなく、3台以上接続されていてもよい。
The HC 200 writes to and reads from the
HC200とディスクアレイ装置100、ディスクアレイ装置100とHDD300,301は、それぞれシリアルATAインタフェース(SATA I/F)400により接続されている。なお、本実施例では、HC200、ディスクアレイ装置100、及び、HDD300,301の接続をシリアルATAインタフェースに限定するものではない。他のインタフェース、例えば、SAS(Serial Attached SCSI)インタフェース等でも同様の結果を得ることが出来る。
The
ディスクアレイ装置100において、デバイス制御部101は、HC200からシリアルATAインタフェース900を介して受信する書き込み要求及び読み出し要求に従い、RAID制御部102に対して指示を行う。
In the
RAID制御部102は、デバイス制御部101からの指示を受けて、RAIDと呼ばれる制御(RAID制御)を行う。このRAID制御とは、背景技術で示したように、1台のHDDが故障した場合でも故障したHDDに記憶されていたデータを復元可能な技術である。RAID制御部102は、RAID制御を実行する際、マスターとなるHDD(マスターHDD)のID及びマスターHDDのアクセスLBAを、フォーマット管理部103に送信する。なお、フォーマット管理部103は、HDD300内及びHDD301内の連続するパーティション領域の管理情報を示すフォーマット情報(後述する図6に示す)を記憶管理している。また、LBAは、論理ブロックアドレス(Logical Block Addressing)を示す。さらに、マスターHDDのアクセスLBAは、HC200からのアクセス要求(例えば、書込要求、読出要求)等から抽出される。
In response to an instruction from the
フォーマット管理部103は、RAID制御部102から受信した情報からマスターHDD及びバックアップとなるHDD(バックアップHDD)におけるアクセスの対象となるパーティションの開始LBA(アクセスパーティション開始LBA)を算出する。次に、フォーマット管理部103は、マスターHDDのアクセスLBA、マスターHDD及びバックアップHDDのアクセスパーティション開始LBAをアドレス算出部104に送信する。
The
アドレス算出部104は、フォーマット管理部103から受信した情報からバックアップHDDのアクセスすべきアドレス(アクセスLBA)を算出し、RAID制御部102に送信する。なお、ここでは、フォーマット管理部103が、マスターHDD及びバックアップHDDにおけるアクセスパーティション開始LBAを算出し、アドレス算出部104が、バックアップHDDのアクセスLBAを算出する構成を説明した。しかし、フォーマット管理部103は、フォーマット情報を記憶管理するのみとしてもよい。そして、アドレス算出部104が、フォーマット管理部103で管理されるフォーマット情報に基づきマスターHDD及びバックアップHDDにおけるアクセスパーティション開始LBAを算出し、バックアップHDDのアクセスLBAを算出してもよい。
The
次に、RAID制御部102は、マスターHDDのアクセスLBAと、アドレス算出部104から得たバックアップHDDのアクセスLBAを用いて、デバイス制御部101からの指示に対応する処理をホスト制御部105に指示する。ホスト制御部105は、RAID制御部102からの指示に従い、シリアルATAインタフェース900を介してHDD300,301に書き込み要求及び読み出し要求を行う。
Next, the
HDD300,301は、ホスト制御部105からの書き込み要求及び読み出し要求に従い、受信したデータの磁気ディスク(図示せず)への書込み及び磁気ディスクからのデータの読み出しを行う。なお、RAID制御部102は、ホスト制御部105のいずれのチャネルに接続されたHDDがマスターであるかの情報等を保持する。
The
状態保持部106は、ディスクアレイ装置100の電源停止前の状態を保持する。状態保持部106が保持する状態には、接続されているHDDの種類、個数、内部ブロックであるデバイス制御部101、RAID制御部102、フォーマット管理部103、アドレス算出部104、ホスト制御部105の初期設定値等が含まれる。また、状態保持部106は、RAID制御状態(RAID制御の有効/無効の設定状態)も保持する。なお、RAID制御状態は、ユーザの指示によりHC200から設定されるものである。また、リビルド処理中に電源が停止された場合、状態保持部106は、リビルド処理の処理状態(何%終了)等の情報も保持する。なお、状態保持部106は、FLASH ROMやボタン型電池でデータが保持されるSRAM等が使用される。
The
図2は、本発明の実施例1に係るHC200の処理を示すフローチャートである。このフローチャートに示す処理は、HC200のCPUがROM又はHDD300,301に記録されたプログラムをRAMにロードして実行することにより実現されるものである。
FIG. 2 is a flowchart showing processing of the
HC200は、電源が投入されるとHC200自身の初期化処理を実行する(S100)。S100の初期化処理には、HC内に実装されるメモリインタフェースの初期化、シリアルATAインタフェースの初期化、CPUの初期化、HCの起動処理等が含まれる。なお、HCの起動処理には、マスターHDD(例えばHDD300)からOSをメモリにロードして、OSを起動する動作も含まれる。また、以下のS101〜S107は、OS上で動作する、ディスクアレイ装置100のデバイスドライバの動作に対応する。
The
次に、HC200のCPUは、HDDフォーマットテーブルを用意する(RAM内に読み込む)(S101)。なお、HDDフォーマットテーブルは、ディスクアレイ装置100のデバイスドライバに含まれるものとする。即ち、HDDフォーマットテーブルはHDDに保持されるが、マスター/バックアップHDDという区別はない。HDDフォーマットテーブルは、例えば、ディスクアレイ装置100にマスターHDDのみ接続されている場合はマスターHDDに保持され、マスターHDD/バックアップHDD共に接続されている場合はマスター/バックアップHDDの両方に保持されている。
Next, the CPU of the
また、ここで読み出すHDDフォーマットテーブルには、ディスクアレイ装置100に接続されるHDDにおける複数のパーティション領域の開始アドレスを示す情報として、予め、想定されているHDDの複数種類の記憶容量毎に用意された複数のフォーマット情報が記述管理されている。例えば、80,160,250,500,1000[GByte]の記憶容量を持つHDDの存在が想定されるとすると、それぞれに対するパーティションの管理情報(例えば、それぞれ図6に示すような情報)が記述されている。即ち、実際に接続されていない容量のHDDについてもフォーマットテーブル内にパーティションの管理情報が存在することになる。なお、HDDフォーマットテーブルは、ディスクアレイ装置100のデバイスドライバをバージョンアップすること等により更新可能である。
Also, the HDD format table read here is prepared in advance as information indicating the start addresses of a plurality of partition areas in the HDD connected to the
次に、HC200のCPUは、一連の初期化処理が終了すると割り込み受信待ち状態となる(S102でNo)。そして、HC200のCPUは、割り込みを受信したと判定すると(S102でYes)、その割り込みが新HDD接続割り込みであるか判定する(S103)。
Next, the CPU of the
そして、新HDD接続割り込みであると判定した場合(S103でYes)、HC200のCPUは、ディスクアレイ装置100から新HDD情報(容量等)を取得する(S104)。
If it is determined that this is a new HDD connection interrupt (Yes in S103), the CPU of the
HC200のCPUは、得られた新HDD情報(容量等)を元に上記S101で用意したHDDフォーマットテーブルを参照し、該HDDフォーマットテーブルから新HDD用のフォーマット情報を選択する(S105)。例えば、80,160,250,500,1000[GByte]のHDDに対するフォーマット情報の中から、新たに接続されたHDDの容量に対応するフォーマット情報を自動選択する。これにより、新たなHDDが接続されても、ユーザが手動でパーティション情報等を指定する手間を省くことができる。例えば、ミラーリングを行うためにはマスター/バックアップHDDのミラーリングされている個所の容量が等しく(正確にはマスターHDDの容量以上)なければならず、これを満たさない場合、ミラーリングの不具合が発生するが、これを防止できる。
The CPU of the
次に、HC200のCPUは、上記S105で選択した新HDD用フォーマット情報をディスクアレイ装置100に送信し(S106)、再び割り込み受信待ちとなる(S102)。
Next, the CPU of the
一方、HC200が受信した割り込みが新HDD接続割り込み以外であった場合(S103でNo)、HC200のCPUは、受信した割り込みに応じた処理を実施し(S107)、再び割り込み受信待ち(S102)となる。例えば、フォーマット管理情報更新完了の割り込みを受信した場合、HC200のCPUは、S107において、リビルド処理を実行するコマンドをディスクアレイ装置100に送信するようにしてもよい。そして、リビルド処理の実行中は、リビルド処理の状態(何%終了)等の情報を図示しない表示部に表示してもよい。また、この場合、リビルド処理を実行するか否かを指示する画面を図示しない表示部に表示してもよい。その場合、この画面からユーザがリビルド処理の実行を指示した場合、HC200のCPUは、ディスクアレイ装置100にリビルド処理を実行するコマンドを送信するものとする。
On the other hand, when the interrupt received by the
なお、上記S105では、HC200のCPUが、HDDフォーマットテーブルから新HDD用のフォーマット情報を自動選択する構成を説明した。しかし、HC200のCPUが、図示しない表示部に新HDDが接続された旨と新HDDの情報(新HDDの容量等)を表示し、ユーザに新HDDのフォーマット情報を入力させるようにしてもよい。この場合、HC200は、入力される新HDDの各パーティションの容量がマスターHDDの対応する各パーティションの容量より小さい場合、エラーとなるように制御する。また、HC200は、入力される新HDDのパーティション数がマスターHDDのパーティション数より少ない場合も、エラーとなるように制御する。
In the above S105, the configuration in which the CPU of the
図3は、実施例1のディスクアレイ装置100の基本処理を示すフローチャートである。このフローチャートに示す処理においてディスクアレイ装置100を構成する各部が実行する各ステップは、ハードウェアにより実現されるものであってもよいし、ソフトウェアにより実現されるものであってもよい。ソフトウェアにより実現される場合、コンピュータ(プロセッサ)読み取り可能な記録媒体に格納されたプログラムをコンピュータ(プロセッサ)が読み出して実行する等により実現される。
FIG. 3 is a flowchart illustrating basic processing of the
ディスクアレイ装置100は、電源が投入されると、ディスクアレイ装置100自身の初期化処理を実行する(S200)。この初期化処理(S200)には、デバイス制御部101の初期化、RAID制御部102の初期化、フォーマット管理部103の初期化、アドレス算出部104の初期化、ホスト制御部105の初期化が含まれる。また、この初期化処理には、一部、状態保持部106に保持された情報が使用される。
When the power is turned on, the
次に、ディスクアレイ装置100は、ディスクアレイ装置100に接続されているHDDの情報を取得する(S201)。RAID制御部102は、状態保持部106に保持されているRAID制御状態(RAID制御の有効/無効の設定状態)を確認し、RAID制御が有効であるか否かを判定する(S202)。
Next, the
そして、RAID制御が有効であると判定した場合(S202でYes)、RAID制御部102は、上記S201で取得されたHDD情報が状態保持部106に未登録か登録されているか確認する(S203)。
If it is determined that the RAID control is valid (Yes in S202), the
そして、上記S201で取得されたHDD情報が状態保持部106に未登録であると判定した場合(S203でYes)、RAID制御部102は、デバイス制御部101を介してHC200に対してエラーを通知するように制御する(S204)。そして、本フローチャートの処理を終了する。
If it is determined that the HDD information acquired in S201 has not been registered in the state holding unit 106 (Yes in S203), the
一方、上記S201で取得されたHDD情報が状態保持部106に登録されていると判定した場合(S203でNo)、RAID制御部102は、RAID制御を実行する(S205)。そして、本フローチャートの処理を終了する。
On the other hand, when it is determined that the HDD information acquired in S201 is registered in the state holding unit 106 (No in S203), the
また、状態保持部106の登録内容からRAID制御が無効であると判定した場合(S202でNo)、RAID制御部102は、状態保持部106に保持された有効なチャネルにHDDが接続されている(HDD接続OK)かを確認する(S206)。
Also, when it is determined from the registered contents of the
そして、状態保持部106に保持された有効なチャネルにHDDが接続されていないと判定した場合(S206でNo)、RAID制御部102は、デバイス制御部101を介してHC200にエラーを通知する(S204)。そして、本フローチャートの処理を終了する。
If it is determined that the HDD is not connected to a valid channel held in the status holding unit 106 (No in S206), the
一方、状態保持部106に保持された有効なチャネルにHDDが接続されていると判定した場合(S206でYes)、RAID制御部102は、該当するHDDに対する制御を実行する(1HDD制御実行)(S207)。そして、本フローチャートの処理を終了する。
On the other hand, if it is determined that the HDD is connected to a valid channel held in the state holding unit 106 (Yes in S206), the
図4は、実施例1のディスクアレイ装置100の新HDD接続処理を示すフローチャートである。このフローチャートにおける処理は、コンピュータ読み取り可能な記録媒体に格納されたプログラムをコンピュータ(プロセッサ)が読み出して実行する等により実現される。
FIG. 4 is a flowchart illustrating the new HDD connection process of the
RAID制御が無効化された状態のディスクアレイ装置100において、無効なチャネルに新HDDが接続されると、RAID制御部102は、ホスト制御部を介して新HDDの接続を検出する(S300)。なお、新HDDの接続を検出した場合、RAID制御部102は、デバイス制御部101を介して、新HDD接続割り込みを、HC200に送信する。これにより、HC200では、新HDD接続割り込みが受信される(図2のS102,S103)。
When a new HDD is connected to an invalid channel in the
次に、RAID制御部102は、ホスト制御部を介して新HDDの情報を取得する(容量取得等を行う)(S301)。さらに、RAID制御部102は、上記S301で取得した新HDDの情報をデバイス制御部101を介してHC200に対して送信する(S302)。これにより、HC200では、新HDDの情報が受信され、新HDDフォーマット情報が選択され、ディスクアレイ装置100に新HDD用フォーマット情報が送信される(図2のS104〜S106)。
Next, the
この後、RAID制御部102は、デバイス制御部101を介してHC200から新HDDのフォーマット情報を受信する(フォーマット情報取得を行う)(S303)。さらに、RAID制御部102は、上記S303で受信したフォーマット情報を元にフォーマット管理部103の情報を更新(S304)する。そして、本フローチャートの処理を終了する。なお、S304の処理が完了した際に、RAID制御部102は、デバイス制御部101を介して、新HDDに基づくフォーマット管理情報更新完了の割り込みを、HC200に送信するようにしてもよい。また、S304の処理が完了した際に、RAID制御部102が自発的にリビルド処理を開始するように構成してもよい。
Thereafter, the
なお、S301で取得された新HDDの容量が、マスターHDDの容量より小さい場合には、エラーとなり、その旨がHC200に通知され、処理が終了される。なお、HC200側では、上記エラーが通知されると、新たに接続されたHDDの容量がマスターHDDの容量より小さい旨のエラーメッセージを図示しない表示部に表示してもよい。
If the capacity of the new HDD acquired in S301 is smaller than the capacity of the master HDD, an error occurs, the
なお、本実施例では、S302で新HDDの情報をHC200に送信し、HC200が、該新HDDの情報(容量)に対応するフォーマット情報(図2のS101で用意済み)をHC200内のRAMに読み込み済みのHDDフォーマットテーブルから選択してディスクアレイ装置100に送信し(図2のS103〜106)、S303でHC200から新HDDのフォーマット情報を受信する構成を説明した。しかし、ディスクアレイ装置100内にフォーマットテーブル記憶部を設け、RAID制御部102が上記HDDフォーマットテーブルから新HDDの容量に対応するフォーマット情報を選択する構成にしてもよい。例えば、ディスクアレイ装置100内の不図示のROMやディスクアレイ装置100に接続されるいずれかのHDDにHDDフォーマットテーブルを記憶させておき、RAID制御部102が、上記HDDフォーマットテーブルから新HDDの容量に対応するフォーマット情報を選択するようにしてもよい。なお、上記HDDフォーマットテーブルは、ディスクアレイ装置100内の図示しないROMに記録されるファームウェアをバージョンアップすること等により更新可能である。
In this embodiment, the information on the new HDD is transmitted to the
また、本実施例では、S302で新HDDの情報をHC200に送信し、S303でHC200から新HDDのフォーマット情報を受信する構成を説明した。しかし、S302で接続されている全てのHDDの情報をHC200に送信し、S303でHC200から接続されている全てのHDDのフォーマット情報を受信するようにしてもよい。
In the present embodiment, the configuration in which the information on the new HDD is transmitted to the
図5は、実施例1のディスクアレイ装置100の制御コマンドのフォーマットを示す図である。図5において、400はディスクアレイ装置100の制御コマンドである。実施例1のディスクアレイ装置100では、制御コマンド400としてATAで規定されているコマンドフォーマットを使用する。
FIG. 5 is a diagram illustrating a format of a control command of the
制御コマンド400において、Featuresフィールド401は、対応する制御IDが挿入される。実施例1のディスクアレイ装置100では、「0x00」にRAID機能のON/OFFを指示するRAID制御、「0x01」にフォーマット情報制御を割り当てる。
In the
Commandフィールド402は、ATAで規定されているコマンドが挿入される。実施例1のディスクアレイ装置100では、ベンダ定義コマンドとして規定されている「0xFF」を使用する。C/I/Dフィールド403は、ソフトリセット制御、等の指示に使用される。
In the
FIS Typeフィールド404は、Frame Information Structureと呼ばれるフレーム構造を指定する。実施例1のディスクアレイ装置100では、Host-to-Device Registerタイプとして規定されている「0x27」を使用する。
The
Dev/Headフィールド405は、HDDヘッド番号、マスター/スレーブデバイス、LBA/CHS切り替え指示等の情報が挿入される。Cyl Highフィールド406は、上位HDDシリンダ番号、等が挿入される。Cyl Lowフィールド407は、下位HDDシリンダ番号、等が挿入される。
In the Dev /
Sec Numフィールド408は、HDDセクタ番号が挿入される。Features(exp)フィールド409は、拡張されたFeaturesフィールド401として使用される。Cyl High(exp)フィールド410は、137GByte容量を越えるHDDに対する上位LBAが割り当てられる。Cyl Low(exp)フィールド411は、137GByte容量を越えるHDDに対する下位LBAが割り当てられる。Sec Num(exp)フィールド412は、137GByte容量を越えるHDDセクタ番号が挿入される。Controlフィールド413は、HDD制御に使用される。
In the
Sec Cnt(exp)フィールド414は、137GByte容量を越えるHDDに対する連続的に処理されるセクタ数が挿入される。Sec Cntフィールド415は、連続的に処理されるセクタ数が挿入される。Reservedフィールド416は、今後の機能拡張用に確保され、現在は未使用となっている。
In the Sec Cnt (exp)
図6は、実施例1のディスクアレイ装置100のフォーマット情報の構成を示す図である。図6において、500はフォーマット情報である。フォーマット情報500は、512Byte領域を4Byte単位で区切り、先頭からアドレス501を割り振る。各4Byteのフィールドにおいて有効サイズ502と内容503を示す。
FIG. 6 is a diagram illustrating the format information format of the
例えば、第1フィールド510には、ホスト制御部105のチャネルAに接続されるHDD300内のパーティション1に対する開始LBA(Low)が挿入される。第2フィールド511には、チャネルAに接続されるHDD300内のパーティション1に対する開始LBA(High)が挿入される。
For example, in the
第3フィールド512には、チャネルAに接続されるHDD300内のパーティション2に対する開始LBA(Low)が挿入される。第4フィールド513には、チャネルAに接続されるHDD300内のパーティション2に対する開始LBA(High)が挿入される。
In the
第5フィールド520には、チャネルBに接続されるHDD301内のパーティション1に対する開始LBA(Low)が挿入される。第6フィールド521には、チャネルBに接続されるHDD301内のパーティション1に対する開始LBA(High)が挿入される。
In the
第7フィールド522には、チャネルBに接続されるHDD301内のパーティション2に対する開始LBA(Low)が挿入される。第8フィールド523には、チャネルBに接続されるHDD301内のパーティション2に対する開始LBA(High)が挿入される。
In the
実施例1のディスクアレイ装置100では、フォーマット情報500をATAで規定されているData FIS内のデータ領域に512Byteデータとして挿入する。フォーマット情報500の送信は、ATAの規定に従い、Featuresフィールド401に「0x01」が挿入された制御コマンドに続いて送信される。
In the
図7は、本発明の実施例1に係るフォーマット管理部103で記憶管理されるフォーマット管理テーブルの構成を示す図である。図7において、600はフォーマット管理テーブルである。フォーマット管理テーブル600には、ディスクアレイ装置100に接続されるHDDのID601、HDD内パーティション番号602、及び各パーティションが開始されるLBA603が保持される。
FIG. 7 is a diagram showing a configuration of a format management table stored and managed by the
ここで、フォーマット管理テーブル600の更新方法について述べる。
HC200から送信されたフォーマット情報制御コマンド400及びフォーマット情報500をデバイス制御部101が受信し、デバイス制御部101は、受信したフォーマット情報500をRAID制御部102に内部バスを介して送信する。RAID制御部102は、受信したフォーマット情報をフォーマット管理部103に送信する。フォーマット管理部103は、受信した情報を元にフォーマット管理テーブルを作成する。なお、フォーマット管理テーブル600の更新は、HDD毎に個別に更新することも可能である。HDD毎に個別にフォーマット管理テーブル600内の情報を更新する場合は、或るHDDのフォーマット情報のみがHC200からディスクアレイ装置100に送信される。そして、RAID制御部102は、受信した前記HDDのフォーマット情報をフォーマット管理部103に送信する。そして、フォーマット管理部103が、前記HDDのフォーマット情報を元にフォーマット管理テーブル内の前記HDDに対応する部分を更新する。
Here, a method for updating the format management table 600 will be described.
The
以下、図8〜図10に示すRAID1ディスクアレイ状態例を用いて、ディスクアレイ装置100によるHDDアクセス処理を具体的に説明する。図8は、実施例1のディスクアレイ装置100のRAID1ディスクアレイ状態1を示す図である。
図8に示すように、ホスト制御部105のチャネルAに接続されたHDD300及びチャネルBに接続されたHDD301の容量を共に80GByteとする。チャネルAに接続されたHDD300のパーティション構造は、パーティション1を「0x0000_0000」から「0x04FF_FFFF」までの40GByteとする。また、HDD300のパーティション2を「0x0500_0000」から「0x09FF_FFFF」までの40GByteとする。また、チャネルBに接続されたHDD301のパーティション構造も同様とする。これらパーティション情報は、フォーマット管理部103により管理される。また、チャネルAに接続されたHDD300をマスターHDD、チャネルBに接続されたHDD301をバックアップHDDとする。
Hereinafter, the HDD access processing by the
As shown in FIG. 8, the capacities of the
ここで図8を例にして、HC200からの書き込み要求に対するディスクアレイ装置100によるHDDアクセス処理を具体的に説明する。
HC200からATAの規定に従って送信された書き込み要求をデバイス制御部101が受信すると、デバイス制御部101は、受信した書き込み要求の内容を、内部バスを介してRAID制御部102に送信する。RAID制御部102は、デバイス制御部101から受信した上記書き込み要求の内容からマスターHDD300のLBA(要求の対象となるLBA)を抽出し、該抽出されたLBA及びマスターHDDのIDをフォーマット管理部103に送信する。
Here, the HDD access processing by the
When the
書き込み要求の対象となるLBAが「0x0100_0000」である場合、マスターHDDのIDである「HDDA」及び「0x0100_0000」がRAID制御部102からフォーマット管理部103に送信される。
When the LBA that is the target of the write request is “0x0100_0000”, “HDDA” and “0x0100_0000” that are the IDs of the master HDD are transmitted from the
フォーマット管理部103は、受信したLBAとHDDのIDを用いてフォーマット管理テーブル600にアクセスし、書き込み要求の対象となるパーティション番号を抽出する。
The
図8の例では、パーティション番号は「1」となる。フォーマット管理部103は、抽出されたマスターHDDのパーティション番号から該当するマスターHDDのパーティション開始LBA、バックアップHDDのパーティション開始LBAを抽出する。図8の例では、マスターHDDのパーティション番号「1」のパーティション開始LBAは「0x0000_0000」となり、バックアップHDDのパーティション番号「1」のパーティション開始LBAは「0x0000_0000」となる。
In the example of FIG. 8, the partition number is “1”. The
フォーマット管理部103は、RAID制御部102から受信したマスターHDDのLBA、マスターHDDのパーティション開始LBA及びバックアップHDDのパーティション開始LBAをアドレス算出部104に送信する。図8の例では、マスターHDDのLBAは「0x0100_0000」となり、マスターHDDのパーティション開始LBAは「0x0000_0000」となり、バックアップHDDのパーティション開始LBAは「0x0000_0000」となる。
The
アドレス算出部104は、マスターHDDのアクセスLBA、マスターHDDのアクセスパーティション開始LBA、及び、バックアップHDDのアクセスパーティション開始LBAから、以下の(式1)に従い、バックアップHDDのアクセスLBAを算出する。なお、マスターHDDのアクセスLBAを「LBA_M」とする。また、マスターHDDのアクセスパーティション開始LBAを「P_LBA_M」とする。また、バックアップHDDのアクセスパーティション開始LBAを「P_LBA_B」とする。また、バックアップHDDのアクセスLBAを「LBA_B」とする。
The
LBA_B=P_LBA_B+(LBA_M−P_LBA_M) ・・・(式1)
図8の例では、LBA_Bは「0x0100_0000」となる。アドレス算出部104は、算出したバックアップHDDのアクセスLBAをRAID制御部102に送信する。RAID制御部102は、デバイス制御部101から受信したマスターHDDのLBA及びアドレス算出部104から受信したバックアップHDDのLBAを用いてRAID制御し、それぞれのHDDに対する書き込み要求を生成し、ホスト制御部105に送信する。ホスト制御部105は、RAID制御部102から受信したマスターHDD及びバックアップHDDに対する書き込み要求をATAの規定に沿ったコマンドに変換する。ホスト制御部105は、変換した書き込み要求をそれぞれチャネルA及びチャネルBのシリアルATAインタフェース900を介してHDD300,301に送信する。
LBA_B = P_LBA_B + (LBA_M−P_LBA_M) (Formula 1)
In the example of FIG. 8, LBA_B is “0x0100_0000”. The
ここで図8を例にして、ディスクアレイ装置100におけるリビルド処理によるHDDアクセス処理を説明する。
実施例1のディスクアレイ装置100におけるリビルド処理実行は、HC200からのリビルド実行指示、HDDに対する書き込み処理エラーの検出、HDDに対する読み込み処理エラーの検出等で開始される。しかし、リビルド処理の開始条件(リビルド条件)は、これらに限定されるものではない。
Here, the HDD access process by the rebuild process in the
The rebuild process execution in the
RAID制御部102は、リビルド条件が検出されるとリビルド処理を開始する。リビルド処理では、RAID制御部102は、マスターHDDの全パーティションに保持される全データを順次読み出してバックアップHDDの対応するパーティションに順次書き込む処理を行う。まず、RAID制御部102は、マスターHDDからデータを読み出し、該データを読み出したマスターHDDのアクセスLBAとマスターHDDのIDをフォーマット管理部103に送信する。これにより、アドレス算出部104により、バックアップHDDのアクセスLBAが算出され、RAID制御部102に送信される。そして、RAID制御部102は、上記マスターHDDから読み出したデータを、上記バックアップHDDのアクセスLBAに書き込む指示をホスト制御部105に送信する。以下、上述した書き込み要求における処理と同様に実行される。また、リビルド処理中に実行される読み込み処理においても、LBA算出手順は書き込み処理と同様である。
The
以上のようなリビルド処理の実行により、マスターHDDのパーティション1に保持されるデータA310は、バックアップHDDのパーティション1に保持されるデータA320としてコピーされる。また、マスターHDDのパーティション2に保持されるデータB311は、バックアップHDDのパーティション2に保持されるデータB321としてコピーされる。
By executing the rebuild process as described above, the data A310 held in the
図9は、実施例1のディスクアレイ装置100のRAID1ディスクアレイ状態2を示す図である。
図9に示すように、ホスト制御部105のチャネルAに接続されたHDD300の容量を80GByte、チャネルBに接続されたHDD301の容量を160GByteとする。チャネルAに接続されたHDD300のパーティション構造は、パーティション1を「0x0000_0000」から「0x04FF_FFFF」までの40GByteとする。さらに、HDD300のパーティション2を「0x0500_0000」から「0x09FF_FFFF」までの40GByteとする。また、チャネルBに接続されたHDD301のパーティション構造は、パーティション1を「0x0000_0000」から「0x09FF_FFFF」までの80GByteとする。さらに、HDD301のパーティション2を「0x0A00_0000」から「0x14FF_FFFF」までの80GByteとする。これらパーティション情報は、フォーマット管理部103により管理される。また、チャネルAに接続されたHDD300をマスターHDD、チャネルBに接続されたHDD301をバックアップHDDとする。なお、HC200からの書き込み要求及びリビルドに対する処理は図8に示した状態の場合と同様である。
FIG. 9 is a diagram illustrating a
As shown in FIG. 9, the capacity of the
ここで図9において、書き込み要求の対象となるマスターHDDのLBAが「0x0500_0100」である場合について、バックアップHDDのLBAの算出処理を説明する。
フォーマット管理部103のフォーマット管理テーブル600から、マスターHDDのアクセスパーティション開始LBAは「0x0500_0000」、バックアップHDDのアクセスパーティション開始LBAは「0x0A00_000」となる。このため、上記(式1)からバックアップHDDにおけるアクセスすべきLBAは「0x0A00_0100」となる。
Here, in FIG. 9, the LBA calculation processing of the backup HDD will be described in the case where the LBA of the master HDD that is the target of the write request is “0x0500 — 0100”.
From the format management table 600 of the
図9に示す例では、リビルド処理の実行により、マスターHDDのパーティション1に保持されるデータA310は、バックアップHDDのパーティション1に保持されるデータA330としてコピーされる。また、マスターHDDのパーティション2に保持されるデータB311はバックアップHDDのパーティション2に保持されるデータB331としてコピーされる。
In the example illustrated in FIG. 9, the data A310 held in the
図10は、実施例1のディスクアレイ装置100のRAID1ディスクアレイ状態3を示す図である。
図10に示すように、ホスト制御部105のチャネルAに接続されたHDD300及びチャネルBに接続されたHDD301の容量を共に160GByteとする。チャネルAに接続されたHDD300のパーティション構造は、パーティション1を「0x0000_0000」から「0x09FF_FFFF」までの80GByteとする。さらに、HDD300のパーティション2を「0x0A00_0000」から「0x14FF_FFFF」までの80GByteとする。また、チャネルBに接続されたHDD301のパーティション構造も同様とする。これらパーティション情報はフォーマット管理部103により管理される。
FIG. 10 is a diagram showing a
As shown in FIG. 10, the capacities of the
図10に示す例では、マスターHDDへのアクセスエラーによりマスターHDDとバックアップHDDが入れ替わった状態を想定し、チャネルBに接続されたHDD301をマスターHDD、チャネルAに接続されたHDD300をバックアップHDDとする。なお、HC200からの書き込み要求及びリビルドに対する処理フローは図8に示す状態の場合と同様である。
In the example shown in FIG. 10, assuming that the master HDD and the backup HDD are switched due to an access error to the master HDD, the
ここで図10において、書き込み要求の対象となるマスターHDDのLBAが「0x0A00_0100」である場合について、バックアップHDDのLBAの算出処理を説明する。フォーマット管理部103のフォーマット管理テーブル600から、マスターHDDのアクセスパーティション開始LBAは「0x0A00_0000」、バックアップHDDのアクセスパーティション開始LBAは「0x0A00_000」となる。このため、上記(式1)より、バックアップHDDにおけるアクセスすべきLBAは「0x0A00_0100」となる。
Here, in FIG. 10, the LBA calculation processing of the backup HDD will be described in the case where the LBA of the master HDD that is the target of the write request is “0x0A00 — 0100”. From the format management table 600 of the
図10に示す例では、リビルド処理の実行によりマスターHDDのパーティション1に保持されるデータA330は、バックアップHDDのパーティション1に保持されるデータA340としてコピーされる。また、マスターHDDのパーティション2に保持されるデータB331は、バックアップHDDのパーティション2に保持されるデータB341としてコピーされる。
In the example shown in FIG. 10, data A330 held in the
実施例1のディスクアレイ装置100は、図8、図9、図10に記載した状態を順次経ることで、RAIDの再構築とOSの再インストール無しで、HDD内の連続するパーティション領域の拡張が可能となる。実際、図8〜図10で示した例では、HDD内の連続するパーティション領域が40GByteから80GByteに拡張されている。
The
なお、図8に示した状態から図9の状態への移行は、HDD301を160GByteのHDDに交換してリビルド処理を行うことにより可能である。また、図9の状態から図10の状態への移行は、HDD300を160GByteのHDDに交換してリビルド処理を行うことにより可能である。
The transition from the state shown in FIG. 8 to the state shown in FIG. 9 can be performed by replacing the
以上示したように、実施例1では、RAID1制御において、パーティション管理情報からアクセスすべきHDDのアドレスを算出する構成を有する。このような構成により、RAIDの再構築とOSの再インストール無しにHDD内の連続するパーティション領域の変更を実現することができる。 As described above, the first embodiment has a configuration for calculating the address of the HDD to be accessed from the partition management information in the RAID1 control. With such a configuration, it is possible to change the partition area in the HDD without rebuilding the RAID and reinstalling the OS.
以下、実施例1の変形例(実施例2)について説明する。
上述した実施例1は、本発明をRAID1について適用する実施例であるが、本発明はこれに限らず、変形例として以下に示すようなRAID5に対しても適用することができる。なお、実施例2のディスクアレイ装置100の構成は、図1と同様であるので省略する。
Hereinafter, a modified example (Example 2) of Example 1 will be described.
The first embodiment described above is an embodiment in which the present invention is applied to RAID1, but the present invention is not limited to this and can be applied to RAID5 as shown below as a modification. The configuration of the
図11は、実施例2のディスクアレイ装置100のRAID5ディスクアレイ状態を示す図である。
図11に示すように、ホスト制御部105のチャネルAに接続されたHDD300及びチャネルCに接続されたHDD302の容量を80GByte、チャネルBに接続されたHDD301の容量を160GByteとする。チャネルAに接続されたHDD300のパーティション構造は、パーティション1を「0x0000_0000」から「0x04FF_FFFF」までの40GByteとする。さらに、HDD300のパーティション2を「0x0500_0000」から「0x09FF_FFFF」までの40GByteとする。また、チャネルBに接続されたHDD301のパーティション構造は、パーティション1を「0x0000_0000」から「0x09FF_FFFF」までの80GByteとする。さらに、HDD301のパーティション2を「0x0A00_0000」から「0x14FF_FFFF」までの80GByteとする。また、チャネルCに接続されたHDD302のパーティション構造は、パーティション1を「0x0000_0000」から「0x04FF_FFFF」までの40GByteとする。さらに、HDD302のパーティション2を「0x0500_0000」から「0x09FF_FFFF」までの40GByteとする。これらパーティション情報はフォーマット管理部103により管理される。
FIG. 11 is a diagram illustrating a
As shown in FIG. 11, it is assumed that the capacity of the
RAID5では、ディスクアレイ装置100がHC200からの書き込み要求を受信すると、RAID制御部102は、例えばHDD300にデータを書き込む。さらに、RAID制御部102は、HDD300、及び、HDD301又はHDD301に書き込まれているデータからパリティを算出し、該算出したパリティをHDD301又はHDD302に書き込む処理を実行する。
In
例えば、ディスクアレイ装置100がHC200からのデータAの書き込み要求を受信すると、RAID制御部102は、例えばHDD300にデータA350を書き込む。さらに、RAID制御部102は、HDD300、及び、HDD301に書き込まれているデータAからパリティAを算出し、該算出したパリティAをHDD302に書き込む。一方、ディスクアレイ装置100がHC200からのデータBの書き込み要求を受信すると、RAID制御部102は、例えばHDD300にデータB351を書き込む。さらに、RAID制御部102は、HDD300、及び、HDD302に書き込まれているデータBからパリティBを算出し、該算出したパリティBをHDD301に書き込む。
For example, when the
このため、RAID制御部102は、HC200からの書き込み要求からHDD300のLBAを抽出し、抽出されたLBA及びHDD300のIDをフォーマット管理部103に送信する。フォーマット管理部103は、受信したLBAとHDDのIDを用いてデータの書き込み要求の対象となるHDD300、データの読み込み要求やパリティの書き込み要求の対象となるHDD301及びHDD302のパーティション開始LBAを抽出する。
For this reason, the
図11に示した例では、書き込み要求の対象となるHDD300のLBAが「0x0500_0100」である場合、各HDDのパーティション開始アドレスは次のようになる。HDD301のパーティション開始LBAが「0x0500_0000」、HDD301のパーティション開始LBAが「0x0A00_0000」、HDD302のパーティション開始LBAが「0x0500_0000」となる。
In the example shown in FIG. 11, when the LBA of the
アドレス算出部104は、フォーマット管理部103から各HDDのパーティション開始LBAとHDD300に対する書き込み要求の対象となるLBA(LAB_A)を受信する。そして、アドレス算出部104は、HDD301及びHDD302に対するアクセスすべきLBA(それぞれ、LAB_B及びLAB_C)を算出する。
The
算出式は、HDD300のアクセスLBA(LBA_A)、HDD301のアクセスパーティション開始LBA(P_LBA_B)、及びHDD302のアクセスパーティション開始LBA(P_PBA_C)から以下の(式2),(式3)となる。
The calculation formulas are the following (Formula 2) and (Formula 3) from the access LBA (LBA_A) of the
LBA_B=P_LBA_B+(LBA_A−P_LBA_A) ・・・(式2)
LBA_C=P_LBA_C+(LBA_A−P_LBA_A) ・・・(式3)
図11に示した例では、LBA_Bは「0x0A00_0100」、LBA_Cは「0x0500_0100」となる。
LBA_B = P_LBA_B + (LBA_A−P_LBA_A) (Expression 2)
LBA_C = P_LBA_C + (LBA_A-P_LBA_A) (Expression 3)
In the example illustrated in FIG. 11, LBA_B is “0x0A00_0100”, and LBA_C is “0x0500_0100”.
アドレス算出部104は、算出したHDD301及びHDD302に対するアクセスLBAをRAID制御部102に送信する。RAID制御部102は、HDD300に対する書き込み要求及びHDD302に対する読み込み要求をホスト制御部105に送信する。
The
ホスト制御部105は、RAID制御部102から受信した書き込み要求及び読み込み要求をATAの規定に沿ったコマンドに変換し、それぞれHDD300及びHDD302に送信する。ホスト制御部105は、HDD302に対する読み込み要求を実行した後、HDD302から受信したデータをRAID制御部102に送信する。
The
RAID制御部102は、HDD300に書き込まれたデータとHDD302から読み込まれたデータを元にパリティを算出し、HDD301に対する書き込み要求をホスト制御部105に送信する。ホスト制御部105は、RAID制御部102から受信したHDD301に対する書き込み要求をATAの規定に沿ったコマンドに変換し、HDD301に送信する。
The
次に、書き込み要求の対象となるHDD300のLBAが「0x0000_0100」である場合、について説明する。
書き込み要求の対象となるHDD300のLBAが「0x0000_0100」である場合、図11に示した例では、各HDDのパーティション開始アドレスは次のようになる。HDD301のパーティション開始LBAが「0x0000_0000」、HDD302のパーティション開始LBAが「0x0000_0000」となる。
Next, a case where the LBA of the
When the LBA of the
アドレス算出部104は、フォーマット管理部103から各HDDのパーティション開始LBAとHDD300に対する書き込み要求の対象となるLBA(LAB_A)を受信する。そして、アドレス算出部104は、HDD301及びHDD302に対するアクセスすべきLBA(それぞれ、LAB_B及びLAB_C)を算出する。図11に示した例では、LBA_Bは「0x0000_0100」、LBA_Cは「0x0000_0100」となる。
The
アドレス算出部104は、算出したHDD301及びHDD302に対するアクセスLBAをRAID制御部102に送信する。RAID制御部102は、HDD300に対する書き込み要求及びHDD301に対する読み込み要求をホスト制御部105に送信する。
The
ホスト制御部105は、RAID制御部102から受信した書き込み要求及び読み込み要求をATAの規定に沿ったコマンドに変換し、それぞれHDD300及びHDD301に送信する。ホスト制御部105は、HDD301に対する読み込み要求を実行した後、HDD301から受信したデータをRAID制御部102に送信する。
The
RAID制御部102は、HDD300に書き込まれるデータとHDD301から読み込まれたデータを元にパリティを算出し、HDD302に対する書き込み要求をホスト制御部105に送信する。ホスト制御部105は、RAID制御部102から受信したHDD302に対する書き込み要求をATAの規定に沿ったコマンドに変換し、HDD302に送信する。
The
以上示したように、実施例2では、RAID5制御において、各HDDのパーティション管理を行い、パーティション管理情報(フォーマット情報)を自由に変更可能とする。さらに、パーティション管理情報からアクセスすべきHDDのアドレスを算出する構成を有する。このような構成により、RAIDの再構築とOSの再インストール無しにHDD内の連続するパーティション領域の変更を実現することができる。 As described above, in the second embodiment, the partition management of each HDD is performed in RAID5 control, and the partition management information (format information) can be freely changed. Furthermore, it has a configuration for calculating the address of the HDD to be accessed from the partition management information. With such a configuration, it is possible to change the partition area in the HDD without rebuilding the RAID and reinstalling the OS.
なお、上記実施例1ではRAID1、上記実施例2ではRAID5に本発明を適用する場合について説明したが、他のRAIDレベルについても同様に本発明を適用可能なものがあり、このような構成も本発明に含まれるものである。
(その他の実施例)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
In the first embodiment, the case where the present invention is applied to
(Other examples)
The present invention can also be realized by executing the following processing. That is, software (program) that realizes the functions of the above-described embodiments is supplied to a system or apparatus via a network or various storage media, and a computer (or CPU, MPU, or the like) of the system or apparatus reads the program. It is a process to be executed.
ホストコンピュータ200を複合機(MFP)のコントローラ部とすることによって、本発明を複合機等の画像形成装置にも適用できる。そして、上記コントローラ部に接続されるディスクアレイ装置は、該ディスクアレイ装置に接続される複数の記憶装置のいずれかが新たな記憶装置に交換された場合に、新たな記憶装置の記憶容量に対応するフォーマット情報に従って、新たな記憶装置における複数のパーティション領域にアクセスする。
By using the
100 ディスクアレイ装置
101 デバイス制御部
102 RAID制御部
103 フォーマット制御部
104 アドレス算出部
105 ホスト制御部
106 状態保持部
200 ホストコンピュータ
300,301 HDD
DESCRIPTION OF
Claims (4)
前記制御装置に接続される前記記憶装置における複数のパーティション領域の開始アドレスを示す情報として、複数種類の記憶容量の各々に対応する複数のフォーマット情報を管理する管理手段と、
前記複数の記憶装置に含まれる何れかの記憶装置が新たな記憶装置に交換された場合に、前記新たな記憶装置の記憶容量に対応するフォーマット情報を前記管理手段により管理される複数のフォーマット情報の中から選択する選択手段と、
前記新たな記憶装置の複数のパーティションへアクセスする際のアドレスを、前記選択手段により選択されたフォーマット情報に基づいて算出するアドレス算出手段と、
前記アドレス算出手段により算出されたアドレスに基づいて前記新たな記憶装置へのアクセスを制御する制御手段と、
を有することを特徴とする制御装置。 A control device that is connectable to an information processing device and a plurality of storage devices, and controls access to the plurality of storage devices in response to a request from the information processing device,
Management means for managing a plurality of format information corresponding to each of a plurality of types of storage capacities as information indicating start addresses of a plurality of partition areas in the storage device connected to the control device;
When any storage device included in the plurality of storage devices is replaced with a new storage device, the format information corresponding to the storage capacity of the new storage device is managed by the management means. A selection means for selecting from,
Address calculating means for calculating addresses for accessing a plurality of partitions of the new storage device based on the format information selected by the selecting means;
Control means for controlling access to the new storage device based on the address calculated by the address calculating means;
A control device comprising:
前記制御手段は、前記情報処理装置から受信したアクセス要求に含まれる前記いずれかの記憶装置のアドレスと、前記いずれかの記憶装置のアドレスから前記アドレス算出手段で算出される前記新たな記憶装置のアドレスとを用いて、前記新たな記憶装置へのアクセスを制御することを特徴とする請求項1に記載の制御装置。 The address calculating means calculates the address of the new storage device corresponding to the address of any one of the storage devices from the address of any one of the plurality of storage devices, and the address of any one of the storage devices is Calculating as an address belonging to the partition of the new storage device corresponding to the partition of any of the storage devices belonging to,
The control means includes the address of the storage device included in the access request received from the information processing device and the address of the new storage device calculated by the address calculation means from the address of the storage device. The control apparatus according to claim 1, wherein an access to the new storage device is controlled using an address.
前記リビルド処理は、前記マスターとなる記憶装置からデータを読み出し、該読み出したデータを、前記データを読み出した前記マスターとなる記憶装置のアドレスから前記アドレス算出手段で算出される前記新たな記憶装置のアドレスに書き込む処理であることを特徴とする請求項1又は2に記載の制御装置。 The control means is capable of executing a rebuild process that sequentially reads all data stored in all partitions of the master storage device among the connected storage devices and sequentially writes the data to the corresponding partition of the new storage device. ,
The rebuild process reads data from the storage device serving as the master, and reads the read data from the address of the storage device serving as the master from which the data has been read by the address calculation unit. The control device according to claim 1, wherein the control device is a process of writing to an address.
選択手段が、前記複数の記憶装置に含まれる何れかの記憶装置が新たな記憶装置に交換された場合に、前記新たな記憶装置の記憶容量に対応するフォーマット情報を前記管理手段により管理される複数のフォーマット情報の中から選択する選択ステップと、
アドレス算出手段が、前記新たな記憶装置の複数のパーティションへアクセスする際のアドレスを、前記選択ステップにて選択されたフォーマット情報に基づいて算出するアドレス算出ステップと、
制御手段が、前記アドレス算出ステップにより算出されたアドレスに基づいて前記新たな記憶装置へのアクセスを制御する制御ステップと、
を有することを特徴とする制御装置の制御方法。 Management that is connectable to an information processing device and a plurality of storage devices, and manages a plurality of format information corresponding to each of a plurality of types of storage capacities as information indicating start addresses of a plurality of partition areas in the plurality of storage devices A control method for a control device comprising means,
When any storage device included in the plurality of storage devices is replaced with a new storage device, the selection unit manages the format information corresponding to the storage capacity of the new storage device by the management unit. A selection step of selecting from a plurality of format information;
An address calculating step for calculating an address when the address calculating means accesses a plurality of partitions of the new storage device based on the format information selected in the selecting step;
A control step for controlling access to the new storage device based on the address calculated by the address calculating step;
A control method for a control device comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009234724A JP2011081683A (en) | 2009-10-09 | 2009-10-09 | Control device and method for controlling the same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009234724A JP2011081683A (en) | 2009-10-09 | 2009-10-09 | Control device and method for controlling the same |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2011081683A true JP2011081683A (en) | 2011-04-21 |
Family
ID=44075658
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009234724A Withdrawn JP2011081683A (en) | 2009-10-09 | 2009-10-09 | Control device and method for controlling the same |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2011081683A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013050755A (en) * | 2011-08-30 | 2013-03-14 | Sharp Corp | Image processor |
-
2009
- 2009-10-09 JP JP2009234724A patent/JP2011081683A/en not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013050755A (en) * | 2011-08-30 | 2013-03-14 | Sharp Corp | Image processor |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7856526B2 (en) | Storage apparatus and power-saving control method of storage apparatus | |
JP5721344B2 (en) | System, system control method, and program | |
EP2399190B1 (en) | Storage system and method for operating storage system | |
JP4869368B2 (en) | Storage device and virtualization device | |
US7574577B2 (en) | Storage system, storage extent release method and storage apparatus | |
US9317436B2 (en) | Cache node processing | |
TWI531963B (en) | Data storage systems and their specific instruction enforcement methods | |
JP6007332B2 (en) | Storage system and data write method | |
JP2010049634A (en) | Storage system, and data migration method in storage system | |
US20130212320A1 (en) | Non-volatile memory controller processing new request before completing current operation, system including same, and method | |
JP2004213064A (en) | Raid device and logic device expansion method therefor | |
JP5843010B2 (en) | Storage control device, storage control method, and storage control program | |
JP2007156597A (en) | Storage device | |
JP4884041B2 (en) | Storage system for issuing optimum I / O command to automatically expandable volume and control method thereof | |
CN110300960B (en) | Information system, management program, and program replacement method for information system | |
JP2002049511A (en) | Allocation changing method for address and external storage subsystem using the same | |
JP2006318017A (en) | Raid constitution conversion method, device and program, and disk array device using the same | |
JP5074676B2 (en) | Device controller | |
WO2018051505A1 (en) | Storage system | |
US7496724B2 (en) | Load balancing in a mirrored storage system | |
US9170740B2 (en) | System and method for providing implicit unmaps in thinly provisioned virtual tape library systems | |
JP2008299559A (en) | Storage system and data transfer method for storage system | |
JP5910596B2 (en) | Storage management system, storage management method, program, and information processing system | |
JP2011081683A (en) | Control device and method for controlling the same | |
WO2016194162A1 (en) | Computer system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20130108 |