JP2020030580A - Information processing apparatus, data management method, and data management program - Google Patents

Information processing apparatus, data management method, and data management program Download PDF

Info

Publication number
JP2020030580A
JP2020030580A JP2018155418A JP2018155418A JP2020030580A JP 2020030580 A JP2020030580 A JP 2020030580A JP 2018155418 A JP2018155418 A JP 2018155418A JP 2018155418 A JP2018155418 A JP 2018155418A JP 2020030580 A JP2020030580 A JP 2020030580A
Authority
JP
Japan
Prior art keywords
data
storage device
battery
backup
power
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
JP2018155418A
Other languages
Japanese (ja)
Other versions
JP7060806B2 (en
Inventor
世界 一井
Sekai Ichii
世界 一井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2018155418A priority Critical patent/JP7060806B2/en
Publication of JP2020030580A publication Critical patent/JP2020030580A/en
Application granted granted Critical
Publication of JP7060806B2 publication Critical patent/JP7060806B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

To back up highly important data within battery duration according to a failure occurrence situation.SOLUTION: A battery 13 supplies power for storing data from a volatile storage apparatus 11 to a non-volatile storage apparatus 12 at the time of power failure of a power supply. A control unit 14 executes a backup process of storing data groups DG1 to DG3, stored in the volatile storage apparatus 11, in the non-volatile storage apparatus 12 in the descending order of priority at the time of power failure. In this backup process, the control unit 14 determines a failure state related to voltage supply from the battery 13 based on the supply voltage supplied from the battery 13 each time the storage of the data groups DG1 to DG3 in the non-volatile storage apparatus 12 is completed; and determines whether the data group having the next highest priority among the data groups DG1 to DG3 is to be stored in the non-volatile storage apparatus 12 based on the failure state.SELECTED DRAWING: Figure 1

Description

本発明は、情報処理装置、データ管理方法およびデータ管理プログラムに関する。   The present invention relates to an information processing device, a data management method, and a data management program.

揮発性記憶装置に記憶されているデータは、停電が発生すると失われてしまうことから、停電が発生すると、バッテリの電力を利用して揮発性記憶装置のデータを不揮発性メモリにバックアップすることが行われている。   Since the data stored in the volatile storage device is lost when a power failure occurs, when a power failure occurs, the data in the volatile storage device can be backed up to the non-volatile memory using the power of the battery. Is being done.

このような技術の例として、バッテリの充電状況に応じて、揮発性メモリに記憶されているどの情報要素を、電断発生時の配置対象とするかが制御されるストレージシステムが提案されている。また、停電時においてバッテリユニットの残電力量がデータ退避処理の実行に必要な退避電力量以下となった時点で、キャッシュメモリ上のライトデータ属性のデータのみのデータ退避処理を開始するディスク制御装置が提案されている。   As an example of such a technique, a storage system has been proposed in which which information element stored in a volatile memory is to be placed in the event of a power failure in accordance with the state of charge of a battery. . A disk control device that starts a data save process of only data having a write data attribute in a cache memory when a remaining power amount of a battery unit becomes equal to or less than a save energy amount required for executing the data save process during a power failure. Has been proposed.

国際公開第2010/064280号International Publication No. 2010/064280 特開平9−330277号公報JP-A-9-330277

ところで、上記のようなデータバックアップ用のバッテリからの電圧経路上の回路で故障が発生すると、その故障によってバッテリの消費電力が高まり、バッテリの持続時間が短くなってしまう場合がある。このような故障が予期せずに発生した場合、バックアップ処理が中断して、重要なデータのバックアップが完了せずにそのデータが失われてしまう。   By the way, when a failure occurs in a circuit on the voltage path from the data backup battery as described above, the failure may increase the power consumption of the battery and shorten the duration of the battery. If such a failure occurs unexpectedly, the backup process is interrupted and important data is not completed before the data is lost.

1つの側面では、本発明は、故障発生状況に応じたバッテリ持続時間内で重要性の高いデータをバックアップできるようにした情報処理装置、データ管理方法およびデータ管理プログラムを提供することを目的とする。   In one aspect, an object of the present invention is to provide an information processing apparatus, a data management method, and a data management program that can back up highly important data within a battery duration corresponding to a failure occurrence situation. .

1つの案では、揮発性記憶装置と、不揮発性記憶装置と、電源の停電時に揮発性記憶装置から不揮発性記憶装置へデータを格納するための電力を供給するバッテリと、停電時に、揮発性記憶装置に記憶された、あらかじめ優先度が設定された複数種類のデータ群を、優先度が高い順に不揮発性記憶装置に格納するバックアップ処理を実行する制御部と、を有する情報処理装置が提供される。また、この情報処理装置において、制御部は、バックアップ処理において、複数種類のデータ群のそれぞれについて不揮発性記憶装置への格納が完了するたびに、バッテリから供給される供給電圧に基づいてバッテリからの電圧供給に関する故障状態を判定し、故障状態に基づいて、複数種類のデータ群のうち次に優先度が高いデータ群を不揮発性記憶装置へ格納するか否かを決定する。   In one scheme, a volatile storage device, a non-volatile storage device, a battery that supplies power for storing data from the volatile storage device to the non-volatile storage device during a power failure, and a volatile storage device during a power failure. There is provided an information processing apparatus having a control unit for executing a backup process of storing a plurality of types of data groups of which priorities have been set in advance and stored in a nonvolatile storage device in descending order of priority. . Further, in this information processing device, the control unit performs the backup process based on the supply voltage supplied from the battery every time the storage of the plurality of types of data groups in the nonvolatile storage device is completed. A failure state regarding voltage supply is determined, and based on the failure state, it is determined whether or not a data group having the next highest priority among a plurality of types of data groups is to be stored in the nonvolatile storage device.

また、1つの案では、上記の情報処理装置の制御部と同様の処理がコンピュータによって実行されるデータ管理方法が提供される。
さらに、1つの案では、上記の情報処理装置の制御部と同様の処理をコンピュータに実行させるデータ管理プログラムが提供される。
According to another aspect, there is provided a data management method in which the same processing as that performed by the control unit of the information processing apparatus is executed by a computer.
Further, in one proposal, a data management program for causing a computer to execute the same processing as that of the control unit of the information processing apparatus is provided.

1つの側面では、故障発生状況に応じたバッテリ持続時間内で重要性の高いデータをバックアップできる。   In one aspect, highly important data can be backed up within the battery duration according to the failure occurrence situation.

第1の実施の形態に係る情報処理装置の構成例および処理例を示す図である。FIG. 2 is a diagram illustrating a configuration example and a processing example of the information processing apparatus according to the first embodiment. 第2の実施の形態に係るストレージシステムの構成例を示す図である。FIG. 14 illustrates a configuration example of a storage system according to a second embodiment. CMのハードウェア構成例を示す図である。FIG. 3 is a diagram illustrating a hardware configuration example of a CM. CM間でのキャッシュのミラーリングについて説明するための図である。FIG. 11 is a diagram for describing cache mirroring between CMs. 停電時のバックアップ処理について説明するための図である。It is a figure for explaining backup processing at the time of a power failure. 電源制御回路の内部構成例を示す図である。FIG. 3 is a diagram illustrating an example of an internal configuration of a power control circuit. バッテリ電圧の推移例を示す図である。It is a figure showing an example of transition of a battery voltage. CMが備える処理機能の構成例を示すブロック図である。FIG. 3 is a block diagram illustrating a configuration example of a processing function included in a CM. キャッシュ管理テーブルの構成例を示す図である。FIG. 3 is a diagram illustrating a configuration example of a cache management table. データの優先度について説明するための図である。FIG. 9 is a diagram for describing data priorities. バックアップ管理テーブルの構成例を示す図である。FIG. 4 is a diagram illustrating a configuration example of a backup management table. 優先度にしたがったバックアップ処理の例を示す図である。FIG. 13 is a diagram illustrating an example of a backup process according to priority. 停電時におけるCMの処理手順を示すフローチャートの例である。It is an example of the flowchart which shows the processing procedure of CM at the time of a power failure. 復電時におけるCMの処理手順を示すフローチャートの例(その1)である。It is an example (the 1) of the flowchart which shows the processing procedure of CM at the time of power restoration. 復電時におけるCMの処理手順を示すフローチャートの例(その2)である。It is the example (the 2) of the flowchart which shows the processing procedure of CM at the time of power restoration.

以下、本発明の実施の形態について図面を参照して説明する。
〔第1の実施の形態〕
図1は、第1の実施の形態に係る情報処理装置の構成例および処理例を示す図である。情報処理装置10は、揮発性記憶装置11、不揮発性記憶装置12、バッテリ13および制御部14を有する。
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
[First Embodiment]
FIG. 1 is a diagram illustrating a configuration example and a processing example of the information processing apparatus according to the first embodiment. The information processing device 10 includes a volatile storage device 11, a nonvolatile storage device 12, a battery 13, and a control unit 14.

揮発性記憶装置11には、あらかじめ優先度が設定された複数のデータ群が記憶されている。図1の例では、最も優先度が高い「優先度1」が設定されたデータ群DG1と、次に優先度が高い「優先度2」が設定されたデータ群DG2と、最も優先度が低い「優先度3」が設定されたデータ群DG3が記憶されているものとする。   The volatile storage device 11 stores a plurality of data groups in which priorities are set in advance. In the example of FIG. 1, the data group DG1 with the highest priority “priority 1” is set, the data group DG2 with the next highest priority “priority 2” is set, and the lowest priority is set. It is assumed that a data group DG3 to which "priority 3" is set is stored.

ここで、重要性の高いデータ群ほど、高い優先度が設定される。例えば、他の情報処理装置のバックアップデータより、情報処理装置10が自ら使用するデータの方が、高い優先度が設定される。   Here, a higher priority is set for a data group with higher importance. For example, a higher priority is set for data used by the information processing apparatus 10 by itself than backup data of another information processing apparatus.

不揮発性記憶装置12には、電源の停電時において、揮発性記憶装置11に記憶されたデータ群DG1〜DG3がバックアップされる。
バッテリ13は、停電時において、揮発性記憶装置11に記憶されたデータ群DG1〜DG3を不揮発性記憶装置12に格納するための電力を供給する。なお、このようなデータの格納は制御部14の制御により実行されるので、停電時におけるバッテリ13からの電力は、揮発性記憶装置11、不揮発性記憶装置12および制御部14に供給される。
The data groups DG1 to DG3 stored in the volatile storage device 11 are backed up in the nonvolatile storage device 12 at the time of power failure.
The battery 13 supplies power for storing the data groups DG1 to DG3 stored in the volatile storage device 11 in the non-volatile storage device 12 at the time of a power failure. Since the storage of such data is executed under the control of the control unit 14, the power from the battery 13 at the time of the power failure is supplied to the volatile storage device 11, the nonvolatile storage device 12, and the control unit 14.

制御部14は、例えば、プロセッサとして実現される。制御部14は、停電時において、揮発性記憶装置11に記憶されたデータ群DG1〜DG3を、優先度が高い順に不揮発性記憶装置12に格納するバックアップ処理を実行する。また、制御部14は、このバックアップ処理において、1つのデータ群を不揮発性記憶装置12へ格納する処理が完了するたびに、バッテリ13から供給される供給電圧に基づいて、バッテリ13からの電圧供給に関する故障状態を判定する。そして、制御部14は、判定された故障状態に基づいて、次に優先度が高いデータ群を不揮発性記憶装置12へ格納するか否かを決定する。   The control unit 14 is realized, for example, as a processor. At the time of a power failure, the control unit 14 executes a backup process of storing the data groups DG1 to DG3 stored in the volatile storage device 11 in the nonvolatile storage device 12 in descending order of priority. In addition, every time the process of storing one data group in the nonvolatile storage device 12 is completed in the backup process, the control unit 14 controls the voltage supply from the battery 13 based on the supply voltage supplied from the battery 13. The failure state of Then, the control unit 14 determines whether or not the data group having the next highest priority is to be stored in the nonvolatile storage device 12 based on the determined failure state.

例えば、制御部14は、まず、最も優先度の高いデータ群DG1を不揮発性記憶装置12に格納する(ステップS1)。格納が完了すると、制御部14は、バッテリ13からの供給電圧に基づいて故障状態を判定し(ステップS2)、故障状態に基づいて、次に優先度の高いデータ群DG2を不揮発性記憶装置12に格納するか否かを決定する(ステップS3)。制御部14は、特定の故障が発生していると判定した場合、その時点でバックアップ処理を終了する。一方、制御部14は、故障していないと判定した場合、次のデータ群DG2に関してステップS1〜S3を実行する。このようにして、故障していないと判定される間、データ群DG2,DG3が順次不揮発性記憶装置12に格納される。一方、故障していると判定された時点で、バックアップ処理が終了される。   For example, the control unit 14 first stores the data group DG1 having the highest priority in the nonvolatile storage device 12 (step S1). When the storage is completed, the control unit 14 determines a failure state based on the supply voltage from the battery 13 (step S2), and stores the next highest priority data group DG2 in the nonvolatile storage device 12 based on the failure state. Is determined (step S3). When the control unit 14 determines that a specific failure has occurred, the control unit 14 ends the backup processing at that time. On the other hand, when determining that there is no failure, the control unit 14 executes steps S1 to S3 for the next data group DG2. In this way, the data groups DG2 and DG3 are sequentially stored in the non-volatile storage device 12 while it is determined that there is no failure. On the other hand, when it is determined that a failure has occurred, the backup processing ends.

ここで、バッテリ13からの電圧供給経路上の回路において種々の故障が発生する場合がある。これらの故障によりバッテリ13の消費電力が高くなり、そのためにバッテリ13の持続時間が短くなってしまう場合がある。このような故障の種類によっては、例えば、バッテリ13からの供給電圧が正常時より一定レベルだけ低くなったり、正常時より供給電圧の低下が早く始まる場合がある。上記のステップS2では、バッテリ13からの供給電圧から、このような特定の故障が発生しているか否かを判定でき、発生していると判定された場合には、バッテリ13の持続時間が少ないと推定できる。   Here, various failures may occur in the circuit on the voltage supply path from the battery 13. Due to these failures, the power consumption of the battery 13 increases, which may shorten the duration of the battery 13. Depending on the type of such a failure, for example, the supply voltage from the battery 13 may be lower by a certain level than in a normal state, or the supply voltage may decrease earlier than in a normal state. In the above step S2, it can be determined from the supply voltage from the battery 13 whether or not such a specific failure has occurred. If it is determined that such a failure has occurred, the duration of the battery 13 is short. Can be estimated.

そして、制御部14による上記処理によれば、データ群単位でバックアップが行われ、かつ、優先度の高いデータ群ほど先にバックアップが行われて、特定の故障が発生していると判定された場合には、バックアップ処理が終了される。これにより、故障発生状況に応じたバッテリ13の持続時間内で、重要性の高いデータをバックアップすることができる。   According to the above-described processing by the control unit 14, the backup is performed in units of data groups, and the higher the priority of the data group, the earlier the backup is performed, and it is determined that a specific failure has occurred. In this case, the backup processing is terminated. Thereby, highly important data can be backed up within the duration of the battery 13 according to the failure occurrence situation.

〔第2の実施の形態〕
次に、図1の情報処理装置10を含む情報処理システムの例として、ストレージシステムについて説明する。
[Second embodiment]
Next, a storage system will be described as an example of an information processing system including the information processing apparatus 10 in FIG.

図2は、第2の実施の形態に係るストレージシステムの構成例を示す図である。図2に示すストレージシステムは、CM(Controller Module)100,200、ドライブ部300およびPSU(Power Supply Unit)400を備えたストレージ装置1000と、ホスト装置1100とを含む。ホスト装置1100は、例えばSAN(Storage Area Network)を介して、CM100,200と接続されている。   FIG. 2 is a diagram illustrating a configuration example of the storage system according to the second embodiment. The storage system illustrated in FIG. 2 includes a storage device 1000 including CMs (Controller Modules) 100 and 200, a drive unit 300, and a PSU (Power Supply Unit) 400, and a host device 1100. The host device 1100 is connected to the CMs 100 and 200 via, for example, a SAN (Storage Area Network).

CM100,200は、ホスト装置1100からの要求に応じて、ドライブ部300に搭載された記憶装置に対するアクセスを制御するストレージ制御装置である。CM100は、CM100の内部のキャッシュを用いて、ドライブ部300内の記憶装置に対するアクセスを制御する。CM200も同様に、CM200の内部のキャッシュを用いて、ドライブ部300内の記憶装置に対するアクセスを制御する。   The CMs 100 and 200 are storage control devices that control access to a storage device mounted on the drive unit 300 in response to a request from the host device 1100. The CM 100 controls access to a storage device in the drive unit 300 by using a cache inside the CM 100. Similarly, the CM 200 controls access to a storage device in the drive unit 300 by using a cache inside the CM 200.

また、CM100とCM200は、互いに接続され、データを互いに送受信することができる。CM100とCM200との間のデータ転送は、キャッシュのミラーリングに利用される。すなわち、CM100のキャッシュのデータがCM200にミラーリングされ、CM200のキャッシュのデータがCM100にミラーリングされる。   Further, the CM 100 and the CM 200 are connected to each other and can transmit and receive data to and from each other. Data transfer between the CM 100 and the CM 200 is used for cache mirroring. That is, the data in the cache of the CM 100 is mirrored to the CM 200, and the data in the cache of the CM 200 is mirrored to the CM 100.

ドライブ部300には、ホスト装置1100からのアクセス対象となる複数台の記憶装置が搭載されている。記憶装置としては、HDD(Hard Disk Drive)、SSD(Solid State Drive)などの不揮発性記憶装置が搭載される。   The drive unit 300 includes a plurality of storage devices to be accessed by the host device 1100. As the storage device, a nonvolatile storage device such as a hard disk drive (HDD) or a solid state drive (SSD) is mounted.

PSU400は、図示しない外部電源から供給された電力を受け付け、その電力を基にCM100,200およびドライブ部300に対して電源を供給する。
図3は、CMのハードウェア構成例を示す図である。
The PSU 400 receives power supplied from an external power supply (not shown), and supplies power to the CMs 100 and 200 and the drive unit 300 based on the power.
FIG. 3 is a diagram illustrating an example of a hardware configuration of a CM.

まず、CM100は、CPU(Central Processing Unit)101、RAM(Random Access Memory)102、PCIe(PCI express,PCI:Peripheral Component Interconnect)スイッチ103、SSD104、ホストコントローラ(CONT)105、SAS(Serial Attached SCSI,SCSI:Small Computer System Interface)エクスパンダ(EXP)106、バッテリ107および電源制御回路108を備える。   First, the CM 100 includes a CPU (Central Processing Unit) 101, a RAM (Random Access Memory) 102, a PCIe (PCI express, PCI: Peripheral Component Interconnect) switch 103, an SSD 104, a host controller (CONT) 105, a SAS (Serial Attached SCSI, It includes a SCSI (Small Computer System Interface) expander (EXP) 106, a battery 107, and a power control circuit 108.

CPU101は、CM100全体を統括的に制御する。CPU101は、例えば、1または複数のプロセッサコアを備える。
RAM102は、CM100の主記憶装置として使用される。RAM102には、CPU101に実行させるOS(Operating System)プログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、RAM102には、CPU101による処理に必要な各種データが格納される。例えば、RAM102には、ホスト装置1100からの要求に応じたドライブ部300内の記憶装置へのアクセス制御の際に用いられるキャッシュの領域が確保される。
The CPU 101 controls the entire CM 100 as a whole. The CPU 101 includes, for example, one or a plurality of processor cores.
The RAM 102 is used as a main storage device of the CM 100. The RAM 102 temporarily stores at least a part of an OS (Operating System) program and application programs to be executed by the CPU 101. Further, the RAM 102 stores various data necessary for processing by the CPU 101. For example, in the RAM 102, a cache area used for controlling access to a storage device in the drive unit 300 in response to a request from the host device 1100 is secured.

SSD104は、PCIeスイッチ103を介してCPU101と接続されている。PCIeスイッチ103は、SSD104とCPU101との間のデータ送受信を制御する。   The SSD 104 is connected to the CPU 101 via the PCIe switch 103. The PCIe switch 103 controls data transmission and reception between the SSD 104 and the CPU 101.

SSD104は、CM100の補助記憶装置として使用される。SSD104には、OSプログラム、アプリケーションプログラム、および各種データが格納される。また、SSD104には、停電時にRAM102内の一部のデータをバックアップするためのバックアップ領域が確保される。なお、SSD104の代わりに、HDDなどの他の種類の不揮発性記憶装置が用いられてもよい。   The SSD 104 is used as an auxiliary storage device of the CM 100. The SSD 104 stores an OS program, an application program, and various data. In the SSD 104, a backup area for backing up some data in the RAM 102 at the time of power failure is secured. Note that, instead of the SSD 104, another type of nonvolatile storage device such as an HDD may be used.

ホストコントローラ105は、ホスト装置1100と通信するためのインタフェース回路である。
SASエクスパンダ106は、CPU101とドライブ部300内の記憶装置との間で送受信されるデータを中継する。なお、図3では例として、ドライブ部300にはn台の記憶装置DK1,DK2,DK3,・・・,DKnが搭載されている。SASエクスパンダ106とドライブ部300内の記憶装置DK1,DK2,DK3,・・・,DKnとの間では、SAS規格にしたがって通信が行われる。
The host controller 105 is an interface circuit for communicating with the host device 1100.
The SAS expander 106 relays data transmitted and received between the CPU 101 and a storage device in the drive unit 300. In FIG. 3, as an example, the drive unit 300 includes n storage devices DK1, DK2, DK3,..., DKn. Communication is performed between the SAS expander 106 and the storage devices DK1, DK2, DK3,..., DKn in the drive unit 300 in accordance with the SAS standard.

バッテリ107は、停電時のバックアップ用電源である。バッテリ107は、停電が発生したとき、RAM102内のバックアップ対象データをSSD204のバックアップ領域にバックアップするための電力をCM100の内部に供給する。   The battery 107 is a backup power supply at the time of a power failure. The battery 107 supplies power for backing up data to be backed up in the RAM 102 to a backup area of the SSD 204 inside the CM 100 when a power failure occurs.

電源制御回路108は、PSU400から供給される電力とバッテリ107から供給される電力のいずれかを、選択的にCM100の内部に供給する。具体的には、電源制御回路108は、通常時はPSU400からの電力をCM100の内部に供給し、停電の発生を検出すると、バッテリ107からの電力をCM100の内部に供給する。   The power supply control circuit 108 selectively supplies one of the power supplied from the PSU 400 and the power supplied from the battery 107 to the inside of the CM 100. Specifically, the power supply control circuit 108 normally supplies the power from the PSU 400 to the inside of the CM 100, and when the occurrence of a power failure is detected, supplies the power from the battery 107 to the inside of the CM 100.

CM200は、CM100と同様のハードウェア構成を有する。すなわち、CM200は、CPU201、RAM202、PCIeスイッチ203、SSD204、ホストコントローラ(CONT)205、SASエクスパンダ(EXP)206、バッテリ207および電源制御回路208を備える。CPU201、RAM202、PCIeスイッチ203、SSD204、ホストコントローラ205、SASエクスパンダ206、バッテリ207および電源制御回路208は、CPU101、RAM102、PCIeスイッチ103、SSD104、ホストコントローラ105、SASエクスパンダ106、バッテリ107および電源制御回路108にそれぞれ対応する構成要素であるので、ここでは説明を省略する。   The CM 200 has the same hardware configuration as the CM 100. That is, the CM 200 includes a CPU 201, a RAM 202, a PCIe switch 203, an SSD 204, a host controller (CONT) 205, a SAS expander (EXP) 206, a battery 207, and a power control circuit 208. The CPU 201, the RAM 202, the PCIe switch 203, the SSD 204, the host controller 205, the SAS expander 206, the battery 207, and the power control circuit 208 include the CPU 101, the RAM 102, the PCIe switch 103, the SSD 104, the host controller 105, the SAS expander 106, the battery 107, Since the components correspond to the power supply control circuit 108, the description is omitted here.

図4は、CM間でのキャッシュのミラーリングについて説明するための図である。
CM100,200は、論理ボリュームに対するアクセスをホスト装置1100から受け付ける。論理ボリュームは、ドライブ部300に搭載された1台以上の記憶装置によって実現される論理記憶領域である。本実施の形態では、CM100,200は、それぞれ個別の論理ボリュームに対するアクセスを受け付けるものとする。なお、論理ボリュームは、シンプロビジョニング技術を用いた仮想ボリュームであってもよい。この場合、ドライブ部300内の複数の記憶装置によって実現される「プール」と呼ばれる論理記憶領域から、仮想ボリュームの記憶領域が動的に割り当てられる。
FIG. 4 is a diagram for explaining cache mirroring between CMs.
The CMs 100 and 200 receive access to the logical volume from the host device 1100. The logical volume is a logical storage area realized by one or more storage devices mounted on the drive unit 300. In the present embodiment, it is assumed that the CMs 100 and 200 each receive access to an individual logical volume. Note that the logical volume may be a virtual volume using the thin provisioning technology. In this case, a storage area of a virtual volume is dynamically allocated from a logical storage area called a “pool” realized by a plurality of storage devices in the drive unit 300.

CM100は、RAM102の記憶領域の一部をキャッシュとして用い、論理ボリュームに対するアクセスをライトバック方式で制御する。CM200も同様に、RAM202の記憶領域の一部をキャッシュとして用い、論理ボリュームに対するアクセスをライトバック方式で制御する。また、CM100,200は、自装置のキャッシュのデータを他方のRAMにミラーリングする。これにより、キャッシュのデータが失われる可能性が低減される。また、一方の装置が故障したとき、他方の装置がミラーリングされたキャッシュのデータを用いて、一方の装置が実行していたアクセス制御処理を引き継ぐこともできる。   The CM 100 uses a part of the storage area of the RAM 102 as a cache, and controls access to the logical volume by a write-back method. Similarly, the CM 200 uses a part of the storage area of the RAM 202 as a cache and controls access to the logical volume by a write-back method. In addition, the CMs 100 and 200 mirror the data in the caches of the CMs in the other RAM. This reduces the possibility of losing data in the cache. Also, when one device fails, the other device can take over the access control process that was being performed by one device by using the data in the mirrored cache.

図4に示すように、CM100のRAM102には、自系テーブル領域102a、自系キャッシュ領域102b、他系テーブル領域102cおよび他系キャッシュ領域102dが確保される。また、CM200のRAM202には、自系テーブル領域202a、自系キャッシュ領域202b、他系テーブル領域202cおよび他系キャッシュ領域202dが確保される。   As shown in FIG. 4, a local table area 102a, a local cache area 102b, a remote table area 102c, and a remote cache area 102d are secured in the RAM 102 of the CM 100. In the RAM 202 of the CM 200, a local table area 202a, a local cache area 202b, a remote table area 202c, and a remote cache area 202d are secured.

CM100の自系テーブル領域102aには、CM100が論理ボリュームに対するアクセスを制御するために使用される各種の管理テーブルのデータが記憶される。また、CM100の自系キャッシュ領域102bは、CM100が論理ボリュームに対するアクセスを制御する際に、キャッシュとして使用される。   In the own table area 102a of the CM 100, data of various management tables used for the CM 100 to control access to the logical volume is stored. The local cache area 102b of the CM 100 is used as a cache when the CM 100 controls access to the logical volume.

同様に、CM200の自系テーブル領域202aには、CM200が論理ボリュームに対するアクセスを制御するために使用される各種の管理テーブルのデータが記憶される。また、CM200の自系キャッシュ領域202bは、CM200が論理ボリュームに対するアクセスを制御する際に、キャッシュとして使用される。   Similarly, data of various management tables used for controlling access to the logical volume by the CM 200 is stored in the own table area 202a of the CM 200. The own cache area 202b of the CM 200 is used as a cache when the CM 200 controls access to the logical volume.

一方、CM100の他系テーブル領域102cには、CM200の自系テーブル領域202aと同一のデータが記憶される。また、CM100の他系キャッシュ領域102dには、CM200の自系キャッシュ領域202bと同一のデータが記憶される。同様に、CM200の他系テーブル領域202cには、CM100の自系テーブル領域102aと同一のデータが記憶される。また、CM200の他系キャッシュ領域202dには、CM100の自系キャッシュ領域102bと同一のデータが記憶される。   On the other hand, the same data as the own system table area 202a of the CM 200 is stored in the other system table area 102c of the CM 100. The same data as that of the own cache area 202b of the CM 200 is stored in the other cache area 102d of the CM 100. Similarly, the same data as the own system table area 102a of the CM 100 is stored in the other system table area 202c of the CM 200. The same data as that of the own cache area 102b of the CM 100 is stored in the other cache area 202d of the CM 200.

すなわち、CM100は、自系テーブル領域102aおよび自系キャッシュ領域102bのデータを、CM200の他系テーブル領域202cおよび他系キャッシュ領域202dにそれぞれミラーリングする。また、CM200は、自系テーブル領域202aおよび自系キャッシュ領域202bのデータを、CM100の他系テーブル領域102cおよび他系キャッシュ領域102dにそれぞれミラーリングする。   That is, the CM 100 mirrors the data in the own table area 102a and the own cache area 102b in the other table area 202c and the other cache area 202d of the CM 200, respectively. In addition, the CM 200 mirrors the data in the local table area 202a and the local cache area 202b in the remote table area 102c and the remote cache area 102d of the CM 100, respectively.

例えば、CM100がある論理ボリュームへのデータの書き込み要求をホスト装置1100から受け付けた場合(ステップS11)、次のような処理が実行される。CM100のCPU101は、書き込みが要求されたデータ(書き込みデータ)を自系キャッシュ領域102bに書き込むとともに、自系テーブル領域102aを更新する(ステップS12)。例えば、自系テーブル領域102aに記憶されたキャッシュ管理テーブルが更新される。   For example, when the CM 100 receives a request to write data to a certain logical volume from the host device 1100 (step S11), the following processing is executed. The CPU 101 of the CM 100 writes the data requested to be written (write data) to the own cache area 102b and updates the own table area 102a (step S12). For example, the cache management table stored in the own table area 102a is updated.

また、CPU101は、書き込みデータと、自系テーブル領域102aの更新内容を示すデータとをCM200のCPU201に送信する。CPU201は、書き込みデータを他系キャッシュ領域202dに書き込むとともに、更新内容を示すデータに基づいて他系テーブル領域202cを更新する(ステップS13)。   Further, the CPU 101 transmits the write data and the data indicating the update content of the own system table area 102a to the CPU 201 of the CM 200. The CPU 201 writes the write data to the other-system cache area 202d, and updates the other-system table area 202c based on the data indicating the update content (step S13).

CM100のCPU101は、以上の処理が完了すると、ホスト装置1100に対して書き込みの完了通知を送信する(ステップS14)。このような処理により、自系テーブル領域102aおよび自系キャッシュ領域102bのデータは、CM200の他系テーブル領域202cおよび他系キャッシュ領域202dにそれぞれミラーリングされる。   When the above processing is completed, the CPU 101 of the CM 100 transmits a write completion notification to the host device 1100 (Step S14). Through such processing, the data in the own system table area 102a and the own system cache area 102b are mirrored in the other system table area 202c and the other system cache area 202d of the CM 200, respectively.

なお、図示しないが、CPU101は、この後の非同期のタイミングで、ステップS12で自系キャッシュ領域102bに書き込んだ書き込みデータを、ドライブ部300における対応する記憶装置に書き込む(ライトバック)。   Although not shown, the CPU 101 writes the write data written in the own cache area 102b in step S12 to a corresponding storage device in the drive unit 300 (write back) at an asynchronous timing thereafter.

図5は、停電時のバックアップ処理について説明するための図である。
上記の図4で説明したように、CM100,200では、ライトバック方式のアクセス制御が行われ、キャッシュ領域(自系キャッシュ領域102b,202b)は揮発性記憶装置であるRAM102,202に確保される。このような構成では、停電が発生した場合、キャッシュ領域のデータのうち、ライトバックが行われていないダーティデータが失われてしまう。
FIG. 5 is a diagram for explaining a backup process at the time of a power failure.
As described above with reference to FIG. 4, in the CMs 100 and 200, write-back access control is performed, and the cache areas (the own cache areas 102b and 202b) are secured in the RAMs 102 and 202 which are volatile storage devices. . In such a configuration, when a power failure occurs, dirty data that has not been written back is lost among the data in the cache area.

このようなデータロストを防止するために、CM100,200にはそれぞれバッテリ107,207が搭載され、停電が発生すると、バッテリ107,207からの電力を用いて、キャッシュ領域のダーティデータが不揮発性記憶装置に退避される。図5に示すように、CM100のSSD104には、停電時にバックアップデータを格納するためのバックアップ領域104aが確保されており、キャッシュ領域のダーティデータはバックアップ領域104aにバックアップされる。また、図示しないが、CM200のSSD204にも同様なバックアップ領域が確保されている。   In order to prevent such data loss, batteries 107 and 207 are mounted on the CMs 100 and 200, respectively. When a power failure occurs, the dirty data in the cache area is stored in a non-volatile memory using the power from the batteries 107 and 207. It is evacuated to the device. As shown in FIG. 5, a backup area 104a for storing backup data at the time of a power failure is secured in the SSD 104 of the CM 100, and dirty data in the cache area is backed up in the backup area 104a. Although not shown, a similar backup area is secured in the SSD 204 of the CM 200.

また、図4に示したように、RAM102には自系キャッシュ領域102bに加えて、自系テーブル領域102a、他系テーブル領域102c、他系キャッシュ領域102dが確保されている。自系テーブル領域102aには、キャッシュ管理テーブルなど、論理ボリュームへのアクセスに必要な管理データが格納されている。そのため、図5に示すように、停電時には、自系テーブル領域102aに格納された管理テーブルのデータも、SSD104のバックアップ領域104aにバックアップされる。同様に、図示しないが、CM200の自系テーブル領域202aに格納されたデータも、SSD204のバックアップ領域へのバックアップの対象となる。   As shown in FIG. 4, in addition to the own system cache area 102b, the own system table area 102a, the other system table area 102c, and the other system cache area 102d are secured in the RAM 102. The own table area 102a stores management data required for accessing the logical volume, such as a cache management table. Therefore, as shown in FIG. 5, at the time of a power failure, data of the management table stored in the own system table area 102a is also backed up in the backup area 104a of the SSD 104. Similarly, although not shown, data stored in the local table area 202a of the CM 200 is also subject to backup to the backup area of the SSD 204.

さらに、本実施の形態では、図5に示すように、他系テーブル領域102cに格納された管理テーブルのデータと、他系キャッシュ領域102dのデータのうちダーティデータも、バックアップ領域104aにバックアップされる。同様に、図示しないが、CM200の他系テーブル領域202cに格納された管理テーブルのデータと、他系キャッシュ領域202dのデータのうちダーティデータも、SSD204のバックアップ領域にバックアップされる。   Further, in the present embodiment, as shown in FIG. 5, the data of the management table stored in the other system table area 102c and the dirty data of the data of the other system cache area 102d are also backed up to the backup area 104a. . Similarly, although not shown, the data of the management table stored in the other system table area 202c of the CM 200 and the dirty data among the data of the other system cache area 202d are also backed up in the backup area of the SSD 204.

例えば、他系テーブル領域102cに格納された管理テーブルのデータと、他系キャッシュ領域102dのデータのうちダーティデータもバックアップされることで、次のようなメリットが得られる。例えば、何らかの理由でCM200の自系テーブル領域202aおよび自系キャッシュ領域202bのデータが失われてしまった場合に、CM200は、他系テーブル領域102cおよび他系キャッシュ領域102dのデータを読み込むことで、動作を再開できる。   For example, the following merits can be obtained by backing up the dirty data among the data of the management table stored in the other system table area 102c and the data of the other system cache area 102d. For example, if the data in the own table area 202a and the own cache area 202b of the CM 200 is lost for some reason, the CM 200 reads the data in the other table area 102c and the other cache area 102d, Operation can be resumed.

また、停電状態から復電したときにCM100,200がともに正常に起動した場合でも、CM100の他系テーブル領域102cおよび他系キャッシュ領域102dには、他方のCM200ではなくCM100のバックアップ領域104aからデータをリストアできる。このため、復電から、CM200の自系テーブル領域202aおよび自系キャッシュ領域102bとCM100の他系テーブル領域102cおよび他系キャッシュ領域102dとがミラーリングされた状態でCM100,200が起動するまでの時間を短縮できる。その結果、キャッシュデータおよび管理テーブルのデータが冗長化された状態で、CM200によるアクセス制御処理を短時間で再開できるようになる。   Further, even when the CMs 100 and 200 both start normally when the power is restored from the power failure state, the data is not stored in the other system table area 102c and the other system cache area 102d of the CM 100 from the backup area 104a of the CM 100 instead of the other CM 200. Can be restored. Therefore, the time from the power recovery to the start of the CMs 100 and 200 in a state where the own table area 202a and the own cache area 102b of the CM 200 and the other table area 102c and the other cache area 102d of the CM 100 are mirrored. Can be shortened. As a result, the access control processing by the CM 200 can be restarted in a short time in a state where the cache data and the data of the management table are made redundant.

なお、SSD104のフラッシュメモリに対するデータの書き込みは、一定サイズのセルを単位として行われる。本実施の形態では、セルのサイズを4キロバイトとする。そして、本実施の形態では、RAM102におけるバックアップ対象のデータも4キロバイト単位で管理することで、RAM102からSSD104のバックアップ領域104aへのデータの書き込みを4キロバイト単位で簡単に実行できるようにする。一例として、本実施の形態では、キャッシュページの大きさを4キロバイトとする。   Note that writing of data to the flash memory of the SSD 104 is performed in units of cells of a fixed size. In the present embodiment, the size of the cell is 4 kilobytes. In the present embodiment, data to be backed up in the RAM 102 is also managed in units of 4 kilobytes, so that data can be easily written from the RAM 102 to the backup area 104a of the SSD 104 in units of 4 kilobytes. As an example, in the present embodiment, the size of the cache page is 4 kilobytes.

図6は、電源制御回路の内部構成例を示す図である。なお、図6では例として、CM100の電源制御回路108について示すが、CM200の電源制御回路208も同様の内部構成を有する。   FIG. 6 is a diagram illustrating an example of the internal configuration of the power supply control circuit. Although FIG. 6 shows the power control circuit 108 of the CM 100 as an example, the power control circuit 208 of the CM 200 has a similar internal configuration.

図6(A)に示すように、電源制御回路108は、スイッチ回路111,112を備える。スイッチ回路111は、PSU400からCM100内の各部に対する電力の通電、遮断を切り替える。スイッチ回路112は、バッテリ107から、CM100内の各部に対する電力の通電、遮断を切り替える。   As shown in FIG. 6A, the power supply control circuit 108 includes switch circuits 111 and 112. The switch circuit 111 switches between energization and interruption of electric power from the PSU 400 to each unit in the CM 100. The switch circuit 112 switches between energization and interruption of electric power from the battery 107 to each unit in the CM 100.

スイッチ回路111,112はいずれも、入力側の電圧と出力側の電圧とを検出してそれらを比較することで、停電状態か否かを検出する。停電でない状態(PSU400から電力が供給されている状態)では、スイッチ回路111が通電状態となり、スイッチ回路112が遮断状態となる。停電状態では、スイッチ回路111が遮断状態となり、スイッチ回路112が通電状態となる。   Each of the switch circuits 111 and 112 detects the voltage on the input side and the voltage on the output side and compares them to detect whether or not a power failure has occurred. In a state in which there is no power failure (a state in which power is supplied from the PSU 400), the switch circuit 111 is turned on and the switch circuit 112 is turned off. In the power failure state, the switch circuit 111 is turned off, and the switch circuit 112 is turned on.

図6(B)には、スイッチ回路111,112の内部構成例を示している。スイッチ回路111は、FET(Field Effect Transistor)111a,111bとコントローラ111cを備える。スイッチ回路112は、FET112a,112bとコントローラ112cを備える。なお、FET111a,111b,112a,112bは、いずれもNチャネルMOSFET(Metal-Oxide-Semiconductor FET)である。   FIG. 6B shows an example of the internal configuration of the switch circuits 111 and 112. The switch circuit 111 includes FETs (Field Effect Transistors) 111a and 111b and a controller 111c. The switch circuit 112 includes FETs 112a and 112b and a controller 112c. Each of the FETs 111a, 111b, 112a, and 112b is an N-channel MOSFET (Metal-Oxide-Semiconductor FET).

スイッチ回路111において、FET111a,111bの各ドレインにはPSU400からの12Vの電圧が入力され、各ソースはCM100の内部に対する出力端子に接続されている。また、FET111a,111bの各ゲートにはコントローラ111cからの共通の制御信号が入力され、この制御信号によってFET111a,111bのそれぞれのドレイン−ソース間の導通、遮断が制御される。この構成により、PSU400からの電圧の出力を制御するスイッチング素子が冗長化され、電圧出力の切り替え動作の信頼性が高められている。   In the switch circuit 111, a voltage of 12 V from the PSU 400 is input to each drain of the FETs 111a and 111b, and each source is connected to an output terminal for the inside of the CM 100. Further, a common control signal from the controller 111c is input to each gate of the FETs 111a and 111b, and the conduction and cutoff between the respective drains and sources of the FETs 111a and 111b are controlled by the control signals. With this configuration, the switching element that controls the output of the voltage from the PSU 400 is made redundant, and the reliability of the switching operation of the voltage output is improved.

また、スイッチ回路112において、FET112a,112bの各ドレインにはバッテリ107からの12Vの電圧が入力され、各ソースはCM100の内部に対する出力端子に接続されている。また、FET112a,112bの各ゲートにはコントローラ112cからの共通の制御信号が入力され、この制御信号によってFET112a,112bのそれぞれのドレイン−ソース間の導通、遮断が制御される。この構成により、バッテリ107からの電圧の出力を制御するスイッチング素子が冗長化され、電圧出力の切り替え動作の信頼性が高められている。   In the switch circuit 112, a voltage of 12 V from the battery 107 is input to each drain of the FETs 112a and 112b, and each source is connected to an output terminal for the inside of the CM 100. A common control signal from the controller 112c is input to each gate of the FETs 112a and 112b, and the control signal controls the conduction and cutoff between the respective drains and sources of the FETs 112a and 112b. With this configuration, the switching element that controls the output of the voltage from the battery 107 is made redundant, and the reliability of the switching operation of the voltage output is improved.

コントローラ111cは、入力電圧Va1と出力電圧Vc1とを検出し、それらの比較結果に基づいてFET111a,111bの各ゲートに対する制御信号を出力する。コントローラ112cは、入力電圧Va2と出力電圧Vc2とを検出し、それらの比較結果に基づいてFET112a,112bの各ゲートに対する制御信号を出力する。   The controller 111c detects the input voltage Va1 and the output voltage Vc1, and outputs a control signal for each gate of the FETs 111a and 111b based on the comparison result. The controller 112c detects the input voltage Va2 and the output voltage Vc2, and outputs a control signal for each gate of the FETs 112a and 112b based on the comparison result.

コントローラ111cは、(Va1−Vc1)>TH1の場合、制御信号をハイレベルにしてFET111a,111bを導通させ、それ以外の場合、制御信号をローレベルにしてFET111a,111bを遮断させる。閾値TH1は、FET111a,111b,112a,112bのドレイン−ソース間の電圧降下量より小さい値(例えば、10mV)に設定される。一方、コントローラ112cは、(Va2−Vc2)>TH2の場合、制御信号をローレベルにしてFET112a,112bを遮断させ、それ以外の場合、制御信号をハイレベルにしてFET112a,111bを導通させる。閾値TH2は、上記の電圧降下量より大きい値に設定される。   When (Va1−Vc1)> TH1, the controller 111c sets the control signal to a high level to make the FETs 111a and 111b conductive, and otherwise sets the control signal to a low level to cut off the FETs 111a and 111b. The threshold value TH1 is set to a value (for example, 10 mV) smaller than the voltage drop between the drain and the source of the FETs 111a, 111b, 112a, and 112b. On the other hand, when (Va2−Vc2)> TH2, the controller 112c sets the control signal to low level to cut off the FETs 112a and 112b, and otherwise sets the control signal to high level to turn on the FETs 112a and 111b. The threshold value TH2 is set to a value larger than the above-described voltage drop amount.

これにより、CM100の電源が投入されたとき、PSU400から12Vの電圧が供給されていれば、コントローラ111cからの制御信号がハイレベルになり、PSU400からの電力がCM100の内部に供給される。このとき、コントローラ112cからの制御信号がローレベルになり、バッテリ107からの電力はCM100の内部に供給されない。   Thus, when the power of the CM 100 is turned on, if a voltage of 12 V is supplied from the PSU 400, the control signal from the controller 111c becomes high level, and the power from the PSU 400 is supplied to the inside of the CM 100. At this time, the control signal from the controller 112c becomes low level, and power from the battery 107 is not supplied to the inside of the CM 100.

この状態から、停電してPSU400から電圧が出力されなくなると、コントローラ111cからの制御信号がローレベルになり、PSU400からの電源経路が遮断される。一方、コントローラ112cからの制御信号がハイレベルになり、バッテリ107からの電力がCM100の内部に供給されるようになる。このようなコントローラ111c,112cによる自律的な処理により、停電が発生したとき、CM100の内部に対する電力供給源がPSU400からバッテリ107に切り替えられる。   In this state, when a power failure occurs and the voltage is not output from the PSU 400, the control signal from the controller 111c becomes low level, and the power supply path from the PSU 400 is cut off. On the other hand, the control signal from the controller 112c becomes high level, and the electric power from the battery 107 is supplied to the inside of the CM 100. By such autonomous processing by the controllers 111c and 112c, when a power failure occurs, the power supply source for the inside of the CM 100 is switched from the PSU 400 to the battery 107.

なお、停電が発生したとき、CPU101の処理によってホストコントローラ105やSASエクスパンダ106の動作が停止される。このため、停電が発生した後、バッテリ107からの電力はバックアップ処理に関係するCPU101、RAM102、PCIeスイッチ103およびSSD104にだけ供給されるようになる。CM200でも同様に、停電が発生した後、バッテリ207からの電力はバックアップ処理に関係するCPU201、RAM202、PCIeスイッチ203およびSSD204にだけ供給されるようになる。   When a power failure occurs, the operations of the host controller 105 and the SAS expander 106 are stopped by the processing of the CPU 101. Therefore, after a power failure occurs, the power from the battery 107 is supplied only to the CPU 101, the RAM 102, the PCIe switch 103, and the SSD 104 related to the backup process. Similarly, in the CM 200, after a power failure occurs, the power from the battery 207 is supplied only to the CPU 201, the RAM 202, the PCIe switch 203, and the SSD 204 related to the backup process.

次に、図7を用いて、スイッチ回路112が故障した場合の問題点について説明する。
図7は、バッテリ電圧の推移例を示す図である。図7では、停電発生時を起点としたバッテリ107からの出力電圧の推移について示している。ここで言う出力電圧とは、正確には、電源制御回路108を介したバッテリ107の出力電圧(すなわち、バッテリ107による駆動時におけるスイッチ回路112からの出力電圧Vc2)を指す。
Next, a problem in a case where the switch circuit 112 fails will be described with reference to FIG.
FIG. 7 is a diagram illustrating a transition example of the battery voltage. FIG. 7 shows a transition of the output voltage from the battery 107 starting from the time of the occurrence of the power failure. The output voltage referred to here is, to be precise, the output voltage of the battery 107 via the power supply control circuit 108 (that is, the output voltage Vc2 from the switch circuit 112 when driven by the battery 107).

バッテリ107のためのスイッチ回路112が故障する状態としては、FET112a,112bの一方のみ故障している「故障状態A」と、FET112a,112bの両方とも故障している「故障状態B」の2通りの状態が想定される。これらの故障状態A,Bのどちらでも、故障したFETの寄生ダイオードの影響によってFETでの消費電力が大きくなり、その結果、図7に示すようにバッテリ107の持続時間が正常時より減少する。   There are two states in which the switch circuit 112 for the battery 107 fails: a "failure state A" in which only one of the FETs 112a and 112b has failed, and a "failure state B" in which both the FETs 112a and 112b have failed. Is assumed. In both of the failure states A and B, the power consumption of the FET increases due to the influence of the parasitic diode of the failed FET. As a result, as shown in FIG. 7, the duration of the battery 107 becomes shorter than in the normal state.

具体的には、故障状態Aでは、故障していない他方のFETによってバッテリ107からの電力はCM100の内部に出力され続ける。例えば、FET111aが故障したとすると、FET111bはオンのままなので、バッテリ107からの電力が出力され続け、スイッチ回路112の出力電圧は12.0Vのまま維持される。しかし、このとき、故障したFET111aの寄生ダイオードに大きな電流が流れ、電力が消費されてしまう。その結果、図7に示すように、FET112a,112bが故障していない正常状態より、バッテリ107の持続時間が短くなってしまう。   Specifically, in the failure state A, the electric power from the battery 107 continues to be output to the inside of the CM 100 by the other non-failed FET. For example, if the FET 111a fails, the power from the battery 107 continues to be output because the FET 111b remains on, and the output voltage of the switch circuit 112 is maintained at 12.0V. However, at this time, a large current flows through the parasitic diode of the failed FET 111a, and power is consumed. As a result, as shown in FIG. 7, the duration of the battery 107 is shorter than in the normal state where the FETs 112a and 112b are not out of order.

図7において、9.6Vの電圧は、CM100がバックアップ動作を実行可能な下限の電圧(動作下限電圧)を示す。図7の例では、正常状態では、電源制御回路108を介したバッテリ107の出力電圧が動作下限電圧の9.6Vより低下するまでの時間は、300秒となっている。これに対して、故障状態Aでは、電源制御回路108を介したバッテリ107の出力電圧が動作下限電圧の9.6Vより低下するまでの時間は、250秒に短縮されている。   In FIG. 7, the voltage of 9.6 V indicates the lower limit voltage (operation lower limit voltage) at which the CM 100 can execute the backup operation. In the example of FIG. 7, in the normal state, the time required for the output voltage of the battery 107 via the power supply control circuit 108 to drop below the operation lower limit voltage of 9.6 V is 300 seconds. On the other hand, in the failure state A, the time required for the output voltage of the battery 107 via the power supply control circuit 108 to drop below the operation lower limit voltage of 9.6 V is reduced to 250 seconds.

故障状態Bでは、故障したFET111a,111bのいずれもオフになる。しかし、バッテリ107からの電圧がFET111a,111bの両方の寄生ダイオードに印加されて、これら2つの寄生ダイオードに電流が流れてしまうことで、例えば図7に示すように、11.4Vの電圧が出力される。また、故障状態Aより多くの寄生ダイオードに電流が流れることで、故障状態Aよりさらに大きな電力が消費されてしまう。その結果、図7に示すように、バッテリ107の持続時間が故障状態Aよりさらに短くなってしまう。図7の例では、故障状態Bでは、電源制御回路108を介したバッテリ107の出力電圧が動作下限電圧の9.6Vより低下するまでの時間は、さらに200秒に短縮されている。   In the failure state B, both of the failed FETs 111a and 111b are turned off. However, since the voltage from the battery 107 is applied to both parasitic diodes of the FETs 111a and 111b, and a current flows through these two parasitic diodes, for example, a voltage of 11.4 V is output as shown in FIG. Is done. Further, when a current flows through more parasitic diodes than in the failure state A, more power is consumed than in the failure state A. As a result, as shown in FIG. 7, the duration of the battery 107 becomes even shorter than the failure state A. In the example of FIG. 7, in the failure state B, the time required for the output voltage of the battery 107 via the power supply control circuit 108 to drop below the operation lower limit voltage of 9.6 V is further reduced to 200 seconds.

このように、故障状態A,Bになると、バッテリ107の持続時間が短くなる。このため、バックアップ対象のデータの一部をバックアップ領域104aにバックアップできずに失う可能性が生じる。   As described above, when the failure states A and B occur, the duration of the battery 107 is shortened. Therefore, there is a possibility that a part of the data to be backed up cannot be backed up to the backup area 104a and is lost.

ここで、故障検出方法の一例として、電源制御回路108を介したバッテリ107の出力電圧が、上記の動作下限電圧(9.6V)より低くなった場合に、バッテリ107が故障したと判定する方法がある。しかし、この方法では、図7の例のように、動作下限電圧より高い出力電圧がある程度の時間維持される故障状態A,Bを検出することはできない。   Here, as an example of the failure detection method, when the output voltage of the battery 107 via the power supply control circuit 108 becomes lower than the above-described operation lower limit voltage (9.6 V), it is determined that the battery 107 has failed. There is. However, this method cannot detect the fault states A and B in which the output voltage higher than the operation lower limit voltage is maintained for a certain period of time as in the example of FIG.

また、FETの個数を増やしてFETを通る経路の冗長度を高めることで、故障状態Bのように電力が消費される事態を防止できる。しかし、この方法では、回路の実装面積が増大して電源制御回路108が大型化し、また、電源制御回路108のコストも上がってしまう。また、この方法では、故障状態Aのような寄生ダイオードによる電力消費を防止することはできない。   In addition, by increasing the number of FETs and increasing the redundancy of the path passing through the FETs, it is possible to prevent power from being consumed as in the failure state B. However, in this method, the circuit mounting area increases, the power supply control circuit 108 becomes large, and the cost of the power supply control circuit 108 also increases. Further, this method cannot prevent the power consumption by the parasitic diode such as the failure state A.

このような問題に対して、CM100は、バックアップ対象のデータに優先度を付与し、優先度の高いデータから順にバックアップ領域104aにバックアップしていく。また、CM100は、ある優先度のデータのバックアップが完了するたびに、電源制御回路108を介したバッテリ107の出力電圧を検出して、バッテリ107によるその後の電力供給能力を推定する。CM100は、次の優先度のデータのバックアップを完了できるだけの電力供給能力があると判定される場合に、そのデータのバックアップを実行する。このような処理により、スイッチ回路112の故障状態に応じて、バッテリ107からの電力供給能力の範囲内で、優先度の高い順に、同じ優先度のデータ群を単位として最大限のデータをバックアップできるようにする。   In response to such a problem, the CM 100 assigns a priority to the data to be backed up, and backs up the data in the backup area 104a in descending order of the priority. Further, each time the CM 100 completes backup of data of a certain priority, the CM 100 detects the output voltage of the battery 107 via the power supply control circuit 108 and estimates the subsequent power supply capability of the battery 107. When it is determined that the CM 100 has the power supply capability enough to complete the backup of the next priority data, the CM 100 executes the backup of the data. By such processing, the maximum data can be backed up in units of data having the same priority in descending order of priority within the range of the power supply capability from the battery 107 according to the failure state of the switch circuit 112. To do.

なお、以上の図7ではCM100での故障について説明したが、CM200でも同様の故障によって同様の問題が発生し得る。そして、CM200もCM100と同様の処理を実行可能である。   Although the failure in the CM 100 has been described with reference to FIG. 7, the same problem may occur in the CM 200 due to the similar failure. Then, the CM 200 can execute the same processing as the CM 100.

図8は、CMが備える処理機能の構成例を示すブロック図である。なお、図8では例としてCM100について示すが、CM200もCM100と同様の処理機能を備える。
CM100は、アクセス制御部121、ミラーデータ受信処理部122、バックアップ制御部123およびリストア制御部124を備える。なお、アクセス制御部121、ミラーデータ受信処理部122、バックアップ制御部123およびリストア制御部124の処理は、例えば、CPU101が所定のプログラムを実行することで実現される。
FIG. 8 is a block diagram illustrating a configuration example of a processing function included in the CM. Although the CM 100 is shown in FIG. 8 as an example, the CM 200 also has the same processing function as the CM 100.
The CM 100 includes an access control unit 121, a mirror data reception processing unit 122, a backup control unit 123, and a restore control unit 124. Note that the processes of the access control unit 121, the mirror data reception processing unit 122, the backup control unit 123, and the restore control unit 124 are realized, for example, by the CPU 101 executing a predetermined program.

アクセス制御部121は、ホスト装置1100からの要求に応じて論理ボリュームに対するアクセスを制御する。そのアクセス制御の際、アクセス制御部121は、自系キャッシュ領域102bをキャッシュとして用いる。通常時、図4で説明したように、アクセス制御部121は、自系キャッシュ領域102bをキャッシュとして用いながら、論理ボリュームに対するデータの書き込みをライトバック方式で制御する。また、アクセス制御部121は、自系キャッシュ領域102bのデータを、CM200のミラーデータ受信処理部(図示せず)を介して他系キャッシュ領域102dにミラーリングする。   The access control unit 121 controls access to a logical volume in response to a request from the host device 1100. At the time of the access control, the access control unit 121 uses the own cache area 102b as a cache. Normally, as described with reference to FIG. 4, the access control unit 121 controls writing of data to the logical volume by the write-back method while using the own cache area 102b as a cache. Further, the access control unit 121 mirrors the data in the own system cache area 102b to the other system cache area 102d via the mirror data reception processing unit (not shown) of the CM 200.

また、アクセス制御部121は、論理ボリュームへのアクセス制御の際、自系テーブル領域102aに記憶された管理テーブルを参照する。そして、アクセス制御部121は、自系テーブル領域102aのデータを更新するたびに、そのデータ更新をCM200のミラーデータ受信処理部(図示せず)を介して他系キャッシュ領域に反映させる。   Further, when controlling access to the logical volume, the access control unit 121 refers to the management table stored in the own system table area 102a. Then, every time the access control unit 121 updates the data in the own system table area 102a, the data update is reflected in the other system cache area via the mirror data reception processing unit (not shown) of the CM 200.

例えば、図8に示すように、自系キャッシュ領域102bには、アクセス制御部121に参照される管理テーブルとして、キャッシュ管理テーブル131とボリューム管理テーブル132が記憶される。キャッシュ管理テーブル131は、自系キャッシュ領域102bに記憶されるデータを管理するための管理情報である。ボリューム管理テーブル132は、論理ボリュームへのアクセスのためのアドレス変換のために利用される管理情報である。   For example, as shown in FIG. 8, a cache management table 131 and a volume management table 132 are stored in the own system cache area 102b as management tables referred to by the access control unit 121. The cache management table 131 is management information for managing data stored in the local cache area 102b. The volume management table 132 is management information used for address conversion for accessing a logical volume.

ここで、図9は、キャッシュ管理テーブルの構成例を示す図である。キャッシュ管理テーブル131には、自系キャッシュ領域102bの各ページを示すページ番号に対応付けて、論理アドレス、ダーティフラグ、属性が登録される。   Here, FIG. 9 is a diagram illustrating a configuration example of the cache management table. In the cache management table 131, a logical address, a dirty flag, and an attribute are registered in association with a page number indicating each page of the own cache area 102b.

論理アドレスは、ページに格納されたデータについての論理ボリューム上のアドレスを示す。ダーティフラグは、ページに格納されたデータがダーティデータか否かを示す。ダーティフラグは、ダーティデータの場合「1」を示し、ダーティデータでない場合「0」を示す。属性は、データが書き込み要求と読み出し要求のどちらに応じてページに格納されたかを示す。   The logical address indicates an address on the logical volume for data stored in the page. The dirty flag indicates whether the data stored in the page is dirty data. The dirty flag indicates “1” for dirty data, and indicates “0” for non-dirty data. The attribute indicates whether the data is stored in the page in response to a write request or a read request.

他方のCM200の他系テーブル領域202cには、図9のキャッシュ管理テーブル131と同じ形式のキャッシュ管理テーブルが記憶される。アクセス制御部121は、キャッシュ管理テーブル131を更新すると、その更新内容を他系テーブル領域202cのキャッシュ管理テーブルにも反映させる。   A cache management table of the same format as the cache management table 131 of FIG. 9 is stored in the other system table area 202c of the other CM 200. When updating the cache management table 131, the access control unit 121 reflects the updated content in the cache management table of the other system table area 202c.

例えば、アクセス制御部121は、ホスト装置1100からの要求に応じてあるページにデータを書き込むと、キャッシュ管理テーブル131の該当ページ番号に対応する論理アドレスとして、論理ボリューム上の書き込み先アドレスを登録する。これとともに、アクセス制御部121は、該当ページ番号に対応するダーティフラグを「1」に設定し、属性として「書き込み」を設定する。さらに、アクセス制御部121は、他系テーブル領域202cのキャッシュ管理テーブルについても、同じページ番号に対応する論理アドレス、ダーティフラグおよび属性を同様に更新する。   For example, when writing data to a certain page in response to a request from the host device 1100, the access control unit 121 registers a write destination address on the logical volume as a logical address corresponding to the corresponding page number in the cache management table 131. . At the same time, the access control unit 121 sets the dirty flag corresponding to the page number to “1”, and sets “write” as the attribute. Further, the access control unit 121 also updates the logical address, dirty flag, and attribute corresponding to the same page number in the cache management table of the other system table area 202c in the same manner.

その後、アクセス制御部121は、上記データのライトバックを実行すると、キャッシュ管理テーブル131における該当レコードのダーティフラグを「0」に更新する。これとともに、アクセス制御部121は、他系テーブル領域202cのキャッシュ管理テーブルについても、該当レコードのダーティフラグを「0」に更新する。   After that, when executing the data write-back, the access control unit 121 updates the dirty flag of the corresponding record in the cache management table 131 to “0”. At the same time, the access control unit 121 also updates the dirty flag of the corresponding record to “0” in the cache management table of the other system table area 202c.

以下、図8に戻って説明を続ける。
前述のように、ボリューム管理テーブル132は、論理ボリュームへのアクセスのためのアドレス変換のために利用される管理情報である。ボリューム管理テーブル132には、例えば、次のようなデータが登録される。
Hereinafter, returning to FIG. 8, the description will be continued.
As described above, the volume management table 132 is management information used for address conversion for accessing a logical volume. In the volume management table 132, for example, the following data is registered.

例えば、ボリューム管理テーブル132には、ドライブ部300内の1以上の記憶装置によって実現される論理記憶領域のアドレスと、論理ボリュームのアドレスとの対応関係を示す情報が登録される。論理記憶領域がRAID(Redundant Arrays of Inexpensive Disks)グループとして実現される場合、ボリューム管理テーブル132には、RAIDグループに属する記憶装置の識別情報、RAIDレベルなど、RAIDグループに関する情報が登録される。   For example, in the volume management table 132, information indicating the correspondence between addresses of logical storage areas realized by one or more storage devices in the drive unit 300 and addresses of logical volumes is registered. When the logical storage area is implemented as a RAID (Redundant Arrays of Inexpensive Disks) group, the volume management table 132 registers information about the RAID group, such as identification information of a storage device belonging to the RAID group and a RAID level.

また、論理ボリュームがシンプロビジョニング技術を用いた仮想ボリュームとして生成される場合には、例えば、論理ボリュームを分割した単位領域のうち、データが書き込まれた単位領域に対してのみ、論理記憶領域(プール)から記憶領域が割り当てられる。この場合、ボリューム管理テーブル132には、論理ボリューム上の単位領域と、論理記憶領域から割り当てられた記憶領域との対応関係を示す情報が登録される。アクセス制御部121は、論理ボリューム上の空きの単位領域に新たなデータを書き込むたびに、その単位領域に対して論理記憶領域から新たな記憶領域を割り当てる。このとき、アクセス制御部121は、単位領域とその割り当て先の記憶領域との対応関係を示す情報をボリューム管理テーブル132に登録するとともに、CM200の他系テーブル領域202cのボリューム管理テーブルにも同様の情報を登録する。   When a logical volume is generated as a virtual volume using the thin provisioning technology, for example, of the unit areas obtained by dividing the logical volume, only the logical storage area (pool ) Is allocated a storage area. In this case, the volume management table 132 registers information indicating the correspondence between the unit area on the logical volume and the storage area allocated from the logical storage area. Each time new data is written to a free unit area on a logical volume, the access control unit 121 allocates a new storage area from the logical storage area to the unit area. At this time, the access control unit 121 registers information indicating the correspondence between the unit area and the storage area to which the unit area is allocated in the volume management table 132, and the same in the volume management table in the other system table area 202c of the CM 200. Register information.

ミラーデータ受信処理部122は、CM200のアクセス制御部(図示せず)から自系キャッシュ領域202bまたは自系テーブル領域202aにおける更新されたデータを受信する。ミラーデータ受信処理部122は、受信したデータによって他系キャッシュ領域102dまたは他系テーブル領域102cの該当箇所を更新する。   The mirror data reception processing unit 122 receives updated data in its own cache area 202b or its own table area 202a from an access control unit (not shown) of the CM 200. The mirror data reception processing unit 122 updates the relevant part of the other-system cache area 102d or the other-system table area 102c with the received data.

バックアップ制御部123は、停電が発生すると、自系テーブル領域102a、自系キャッシュ領域102b、他系テーブル領域102cおよび他系キャッシュ領域102dのデータを、SSD104のバックアップ領域104aにバックアップする。このとき、バックアップ制御部123は、バッテリ107から電源制御回路108を介して出力される電圧を参照しながら、後述するデータごとの優先度にしたがってバックアップ処理を実行する。   When a power failure occurs, the backup control unit 123 backs up the data of the own system table area 102a, the own system cache area 102b, the other system table area 102c, and the other system cache area 102d to the backup area 104a of the SSD 104. At this time, the backup control unit 123 executes the backup process according to the priority of each data described later while referring to the voltage output from the battery 107 via the power supply control circuit 108.

また、SSD104には、バックアップ管理テーブル133が記憶される。バックアップ制御部123は、バックアップ管理テーブル133をバックアップ処理の進行に応じて更新する。   In the SSD 104, a backup management table 133 is stored. The backup control unit 123 updates the backup management table 133 according to the progress of the backup processing.

リストア制御部124は、外部電力の供給が再開される(復電する)と、バックアップ管理テーブル133を参照しながら、SSD104のバックアップ領域104aにバックアップされたデータをRAM102に書き戻してデータをリストアする。   When the supply of the external power is resumed (power is restored), the restore control unit 124 writes the data backed up in the backup area 104 a of the SSD 104 back to the RAM 102 and restores the data while referring to the backup management table 133. .

次に、図10〜図12を用いて、バックアップ制御部123によるバックアップ処理について説明する。
図10は、データの優先度について説明するための図である。CM100,200では、バックアップ対象のデータに優先度が設定され、優先度が高い順にデータがSSD104のバックアップ領域104aにバックアップされる。
Next, a backup process performed by the backup control unit 123 will be described with reference to FIGS.
FIG. 10 is a diagram for explaining the priority of data. In the CMs 100 and 200, the priority is set for the data to be backed up, and the data is backed up to the backup area 104a of the SSD 104 in descending order of priority.

CM100では、図10に示すように、自系テーブル領域102aに格納された管理テーブルのデータ(テーブルデータ)と、自系キャッシュ領域102bに格納されたデータのうちのダーティデータとに対して、最も優先度が高い「優先度1」が設定される。これらのデータがバックアップされる確実性を高めることで、復電時にCM100が記憶するデータだけを用いて、データを失うことなく迅速にアクセス制御を再開できる。   As shown in FIG. 10, in the CM 100, the data (table data) of the management table stored in the own system table area 102a and the dirty data of the data stored in the own system cache area 102b are most frequently used. “Priority 1” having a higher priority is set. By increasing the reliability of backup of these data, access control can be quickly resumed without losing data using only the data stored in the CM 100 at the time of power recovery.

また、他系テーブル領域102cに格納された管理テーブルのデータ(テーブルデータ)に対して、次に優先度が高い「優先度2」が設定される。さらに、他系キャッシュ領域102dに格納されたデータのうちのダーティデータに対して、最も優先度が低い「優先度3」が設定される。   Further, “priority 2” having the next highest priority is set for the data (table data) of the management table stored in the other system table area 102c. Further, “priority 3” having the lowest priority is set for the dirty data among the data stored in the other-system cache area 102d.

なお、CM200においても上記と同様に、バックアップ対象のデータに優先度が設定される。すなわち、自系テーブル領域202aに格納された管理テーブルのデータ(テーブルデータ)と、自系キャッシュ領域202bに格納されたデータのうちのダーティデータとに対して、「優先度1」が設定される。また、他系テーブル領域202cに格納された管理テーブルのデータ(テーブルデータ)に対して、「優先度2」が設定される。さらに、他系キャッシュ領域202dに格納されたデータのうちのダーティデータに対して、「優先度3」が設定される。   In the CM 200, the priority is set to the data to be backed up in the same manner as described above. That is, “priority 1” is set for the management table data (table data) stored in the own table area 202a and the dirty data among the data stored in the own cache area 202b. . “Priority 2” is set for the management table data (table data) stored in the other system table area 202c. Further, “priority 3” is set for dirty data among the data stored in the other-system cache area 202d.

図11は、バックアップ管理テーブルの構成例を示す図である。前述のように、SSD104にはバックアップ管理テーブル133が記憶される。バックアップ管理テーブル133には、優先度ごとにバックアップフラグが対応付けられている。バックアップフラグは、対応する優先度のデータのバックアップが完了したか否かを示すフラグ情報である。バックアップフラグは、該当するデータのバックアップが未完了の場合は「0」に設定され、該当するデータのバックアップが完了した場合は「1」に設定される。   FIG. 11 is a diagram illustrating a configuration example of the backup management table. As described above, the backup management table 133 is stored in the SSD 104. The backup management table 133 is associated with a backup flag for each priority. The backup flag is flag information indicating whether the backup of the data of the corresponding priority has been completed. The backup flag is set to “0” when the backup of the corresponding data is not completed, and is set to “1” when the backup of the corresponding data is completed.

なお、CM200のSSD204にも、図11と同様のデータ構成を有するバックアップ管理テーブルが記憶される。
図12は、優先度にしたがったバックアップ処理の例を示す図である。なお、図7と同様に、図12のグラフの縦軸は、電源制御回路108を介したバッテリ107の出力電圧を示す。
Note that a backup management table having a data configuration similar to that of FIG. 11 is also stored in the SSD 204 of the CM 200.
FIG. 12 is a diagram illustrating an example of backup processing according to priority. As in FIG. 7, the vertical axis of the graph in FIG. 12 indicates the output voltage of the battery 107 via the power supply control circuit 108.

バックアップ制御部123は、停電が検出されたタイミングT0において、優先度1に対応するデータのバックアップを開始する。これにより、自系テーブル領域102aに格納された管理テーブルのデータと、自系キャッシュ領域102bに格納されたデータのうちのダーティデータとが、SSD104のバックアップ領域104aにバックアップされる。   The backup control unit 123 starts the backup of the data corresponding to the priority 1 at the timing T0 when the power failure is detected. As a result, the data of the management table stored in the own table area 102a and the dirty data of the data stored in the own cache area 102b are backed up to the backup area 104a of the SSD 104.

バックアップ制御部123は、タイミングT1において優先度1に対応するデータのバックアップが完了すると、バックアップ管理テーブル133における優先度1に対応するバックアップフラグを、「0」から「1」に更新する。これとともに、バックアップ制御部123は、電源制御回路108を介したバッテリ107の出力電圧(すなわち、スイッチ回路112からの出力電圧Vc2)をスイッチ回路112のコントローラ112cから取得する。バックアップ制御部123は、取得した出力電圧が11.4V以下であるかを判定する。   When the backup of the data corresponding to the priority 1 is completed at the timing T1, the backup control unit 123 updates the backup flag corresponding to the priority 1 in the backup management table 133 from “0” to “1”. At the same time, the backup control unit 123 acquires the output voltage of the battery 107 via the power supply control circuit 108 (that is, the output voltage Vc2 from the switch circuit 112) from the controller 112c of the switch circuit 112. The backup control unit 123 determines whether the acquired output voltage is 11.4 V or less.

ここで、タイミングT1において取得した出力電圧が11.4V以下である場合、スイッチ回路112のFET112a,112bの両方とも故障している故障状態Bであると推定される。この場合、バッテリ107の持続時間の残りが非常に短く、優先度2に対応するデータのバックアップを完了することも困難と推定される。このため、バックアップ制御部123は、バックアップ処理を終了する。   Here, when the output voltage obtained at the timing T1 is equal to or lower than 11.4 V, it is estimated that both the FETs 112a and 112b of the switch circuit 112 are in the failure state B in which the failure has occurred. In this case, the remaining time of the battery 107 is very short, and it is estimated that it is difficult to complete the backup of the data corresponding to the priority 2. Therefore, the backup control unit 123 ends the backup processing.

一方、タイミングT1において取得した出力電圧が11.4Vより高い場合、少なくとも故障状態Bにはなっておらず、バッテリ107の持続時間の残りがある程度長いと推定される。このため、バックアップ制御部123は、次の優先度2に対応するデータのバックアップを開始する。これにより、他系テーブル領域102cに格納された管理テーブルのデータが、SSD104のバックアップ領域104aにバックアップされる。   On the other hand, when the output voltage acquired at the timing T1 is higher than 11.4 V, it is estimated that at least the failure state B has not been attained and the remaining time of the battery 107 is somewhat longer. Therefore, the backup control unit 123 starts backing up the data corresponding to the next priority 2. Thereby, the data of the management table stored in the other system table area 102c is backed up to the backup area 104a of the SSD 104.

なお、タイミングT1での上記判定では、電圧の判定閾値として11.4V以上12.0V未満の値が用いられればよい。この判定閾値は、FET112a,112bがいずれも正常な場合の出力電圧Vc2といずれも故障している場合の出力電圧Vc2との差分に基づいて決定される、ということができる。   In the above-described determination at the timing T1, a value of 11.4 V or more and less than 12.0 V may be used as the voltage determination threshold. It can be said that this determination threshold is determined based on the difference between the output voltage Vc2 when both FETs 112a and 112b are normal and the output voltage Vc2 when both FETs are faulty.

バックアップ制御部123は、タイミングT2において優先度2に対応するデータのバックアップが完了すると、バックアップ管理テーブル133における優先度2に対応するバックアップフラグを、「0」から「1」に更新する。これとともに、バックアップ制御部123は、電源制御回路108を介したバッテリ107の出力電圧をスイッチ回路112のコントローラ112cから取得する。   When the backup of the data corresponding to the priority 2 is completed at the timing T2, the backup control unit 123 updates the backup flag corresponding to the priority 2 in the backup management table 133 from “0” to “1”. At the same time, the backup control unit 123 acquires the output voltage of the battery 107 via the power supply control circuit 108 from the controller 112c of the switch circuit 112.

バックアップ制御部123は、取得した出力電圧が11.8V以下であるかを判定する。この11.8Vとは、出力電圧が正常時の12.0Vより低下し始めているかを判定するための電圧である。出力電圧が正常時の12.0Vより低下し始めている場合、FET112a,112bの一方のみ故障している故障状態Aになっており、そのような故障による余計な電力消費によって出力電圧が低下し始めていると推定される。このため、バッテリ107の持続時間の残りが非常に短く、優先度3に対応するデータのバックアップを完了することも困難と推定される。したがって、バックアップ制御部123は、バックアップ処理を終了する。   The backup control unit 123 determines whether the obtained output voltage is 11.8 V or less. This 11.8V is a voltage for determining whether the output voltage has begun to drop from 12.0V in a normal state. When the output voltage starts dropping from 12.0 V in a normal state, it is in the failure state A in which only one of the FETs 112a and 112b has failed, and the output voltage starts decreasing due to extra power consumption due to such a failure. It is estimated that there is. Therefore, it is estimated that the remaining time of the battery 107 is very short, and it is difficult to complete the backup of the data corresponding to the priority 3. Therefore, the backup control unit 123 ends the backup processing.

一方、タイミングT2において取得した出力電圧が11.8Vより高い場合、正常状態である可能性が高いと推定される。このため、バックアップ制御部123は、次の優先度3に対応するデータのバックアップを開始する。これにより、他系キャッシュ領域102dに格納された管理テーブルのデータが、SSD104のバックアップ領域104aにバックアップされる。   On the other hand, when the output voltage acquired at the timing T2 is higher than 11.8 V, it is estimated that there is a high possibility that the state is the normal state. Therefore, the backup control unit 123 starts backing up data corresponding to the next priority 3. As a result, the data of the management table stored in the other-system cache area 102d is backed up to the backup area 104a of the SSD 104.

バックアップ制御部123は、タイミングT3において優先度3に対応するデータのバックアップが完了すると、バックアップ管理テーブル133における優先度3に対応するバックアップフラグを、「0」から「1」に更新する。そして、バックアップ制御部123は、バックアップ処理を終了する。   When the backup of the data corresponding to the priority 3 is completed at the timing T3, the backup control unit 123 updates the backup flag corresponding to the priority 3 in the backup management table 133 from “0” to “1”. Then, the backup control unit 123 ends the backup processing.

なお、バックアップ管理テーブル133は、復電後のリストア処理時にリストア制御部124によって参照される。バックアップ管理テーブル133のバックアップフラグにより、どのデータがSSD104のバックアップ領域104aにバックアップされ、どのデータを他方のSSD204のバックアップ領域から取得するべきかが判断される。バックアップ管理テーブル133を用いたリストア処理については、後の図14、図15において詳しく説明する。   The backup management table 133 is referred to by the restore control unit 124 at the time of restoration processing after power recovery. Based on the backup flag in the backup management table 133, it is determined which data is backed up to the backup area 104a of the SSD 104 and which data should be acquired from the backup area of the other SSD 204. The restore processing using the backup management table 133 will be described later in detail with reference to FIGS.

以上の処理によれば、優先度の高いデータから順にバックアップが行われる。また、1つの優先度に対応するデータのバックアップが完了するたびに、電源制御回路108を介したバッテリ107の出力電圧が検出され、バッテリ107による電力供給能力の余力が推定される。そして、余力が十分あると推定される場合は次の優先度に対応するデータがバックアップされる一方、余力がないと推定される場合はその時点でバックアップ処理が終了される。   According to the above processing, backup is performed in order of data having a higher priority. Also, each time backup of data corresponding to one priority is completed, the output voltage of battery 107 via power supply control circuit 108 is detected, and the remaining power supply capability of battery 107 is estimated. Then, if it is estimated that there is enough power, the data corresponding to the next priority is backed up, while if it is estimated that there is no remaining power, the backup processing is terminated at that point.

このような処理により、バッテリ107からの放電経路上にあるFETの故障によってバッテリ107の電力供給能力が低下した場合でも、その能力の範囲内で、同じ優先度のデータ群を単位として最大限のデータをバックアップできる。このとき、優先度の高いデータから順にバックアップされることで、重要なデータ(特に、復電後にアクセス制御を正確かつ迅速に再開するために必要なデータ)が失われる可能性を低減できる。   By such processing, even when the power supply capability of the battery 107 is reduced due to the failure of the FET on the discharge path from the battery 107, the maximum priority is set within the range of the capability in units of the same priority data group. Data can be backed up. At this time, by backing up data in descending order of priority, it is possible to reduce the possibility of losing important data (particularly, data necessary for accurately and quickly restarting access control after power recovery).

また、バッテリ107の電力供給能力の余力が少ないと判定された場合に、その時点でバックアップ処理が終了されることで、その時点でバッテリ107の放電も終了され、バッテリ107の残量低下が停止する。このため、バッテリ107の電力供給能力がなくなるまでバックアップ処理を継続する場合と比較して、復電時点でのバッテリ107の残量が多くなる。   When it is determined that the remaining power supply capacity of the battery 107 is small, the backup process is terminated at that time, so that the discharge of the battery 107 is terminated at that time, and the decrease in the remaining amount of the battery 107 is stopped. I do. For this reason, the remaining amount of the battery 107 at the time of power restoration is larger than in the case where the backup process is continued until the power supply capability of the battery 107 is lost.

復電後には、バッテリ107の残量が、少なくとも優先度1に対応するデータのバックアップを実行できる下限量に達するまで、キャッシュデータのロストを防止するため、ライトスルー方式でアクセス制御が再開される。そして、バッテリ107の残量がこの下限量に達すると、アクセス制御の方式がライトバック方式に切り替えられる。ライトスルー方式では、データの書き込みが要求された場合、そのデータのキャッシュへの書き込みだけでなく、そのデータのライトバックが完了した後に、ホスト装置1100に対して書き込み完了が通知される。このため、ライトバック方式と比較して、ホスト装置1100からの書き込み要求に対する応答速度が低い。   After the power is restored, the access control is restarted by the write-through method in order to prevent the cache data from being lost until the remaining amount of the battery 107 reaches at least the lower limit amount at which the data corresponding to the priority 1 can be backed up. . When the remaining amount of the battery 107 reaches the lower limit, the access control method is switched to the write-back method. In the write-through method, when data writing is requested, not only the writing of the data to the cache but also the completion of the writing of the data is notified to the host device 1100 after the writing back of the data is completed. Therefore, the response speed to the write request from the host device 1100 is lower than that of the write-back method.

上記のように、復電時点でのバッテリ107の残量が多くなることで、復電後に、アクセス制御をライトスルー方式からライトバック方式に切り替えるまでの時間を短縮できる。その結果、ホスト装置1100からの書き込み要求に対する応答性能を、復電から短時間で回復させることができ、全体としてこの応答性能を改善できる。   As described above, by increasing the remaining amount of the battery 107 at the time of power recovery, it is possible to reduce the time required for switching access control from the write-through method to the write-back method after power recovery. As a result, the response performance to a write request from the host device 1100 can be recovered in a short time after power recovery, and the overall response performance can be improved.

次に、CM100の処理についてフローチャートを用いて説明する。
図13は、停電時におけるCMの処理手順を示すフローチャートの例である。
[ステップS21]バックアップ制御部123は、停電を検出するまで待機状態となり、停電を検出するとステップS22の処理を実行する。なお、バックアップ制御部123は、例えば、電源制御回路108のスイッチ回路111のコントローラ111cからの通知に基づいて、停電の発生を検出する。また、バックアップ制御部123は、すべてのバックアップフラグを「0」に設定したバックアップ管理テーブル133を、SSD104に記録する。
Next, the processing of the CM 100 will be described using a flowchart.
FIG. 13 is an example of a flowchart showing the processing procedure of a CM at the time of a power failure.
[Step S21] The backup control unit 123 enters a standby state until a power failure is detected, and upon detecting a power failure, executes the process of step S22. The backup control unit 123 detects the occurrence of a power failure based on, for example, a notification from the controller 111c of the switch circuit 111 of the power supply control circuit 108. Further, the backup control unit 123 records the backup management table 133 in which all the backup flags are set to “0” in the SSD 104.

[ステップS22]バックアップ制御部123は、優先度1のデータを退避させる。すなわち、バックアップ制御部123は、自系テーブル領域102aに格納された管理テーブルのデータと、自系キャッシュ領域102bに格納されたデータのうちのダーティデータとを、SSD104のバックアップ領域104aに格納する。なお、自系キャッシュ領域102bに格納されたデータのうちのダーティデータは、自系テーブル領域102aに格納されたキャッシュ管理テーブル131のダーティフラグに基づいて判別される。   [Step S22] The backup control unit 123 saves the data of the priority 1. That is, the backup control unit 123 stores the data of the management table stored in the own table area 102a and the dirty data of the data stored in the own cache area 102b in the backup area 104a of the SSD 104. The dirty data among the data stored in the own cache area 102b is determined based on the dirty flag of the cache management table 131 stored in the own table area 102a.

[ステップS23]バックアップ制御部123は、バックアップ管理テーブル133における優先度1に対応するバックアップフラグを「1」に更新する。
[ステップS24]バックアップ制御部123は、電源制御回路108を介したバッテリ107の出力電圧(すなわち、スイッチ112からの出力電圧Vc2)をスイッチ回路112のコントローラ112cから取得する。バックアップ制御部123は、取得した出力電圧が11.4V以下である場合、処理を終了する。この場合、CM100の動作が停止する。一方、バックアップ制御部123は、取得した出力電圧が11.4Vより高い場合、ステップS25の処理を実行する。
[Step S23] The backup control unit 123 updates the backup flag corresponding to the priority 1 in the backup management table 133 to “1”.
[Step S24] The backup control unit 123 acquires the output voltage of the battery 107 via the power supply control circuit 108 (that is, the output voltage Vc2 from the switch 112) from the controller 112c of the switch circuit 112. When the obtained output voltage is equal to or lower than 11.4 V, the backup control unit 123 ends the processing. In this case, the operation of the CM 100 stops. On the other hand, when the obtained output voltage is higher than 11.4 V, the backup control unit 123 executes the process of step S25.

[ステップS25]バックアップ制御部123は、優先度2のデータを退避させる。すなわち、バックアップ制御部123は、他系テーブル領域102cに格納された管理テーブルのデータを、SSD104のバックアップ領域104aに格納する。   [Step S25] The backup control unit 123 saves the data of the priority 2. That is, the backup control unit 123 stores the data of the management table stored in the other system table area 102c in the backup area 104a of the SSD 104.

[ステップS26]バックアップ制御部123は、バックアップ管理テーブル133における優先度2に対応するバックアップフラグを「1」に更新する。
[ステップS27]バックアップ制御部123は、電源制御回路108を介したバッテリ107の出力電圧をスイッチ回路112のコントローラ112cから取得する。バックアップ制御部123は、取得した出力電圧が11.8V以下である場合、処理を終了する。この場合、CM100の動作が停止する。一方、バックアップ制御部123は、取得した出力電圧が11.8Vより高い場合、ステップS28の処理を実行する。
[Step S26] The backup control unit 123 updates the backup flag corresponding to the priority 2 in the backup management table 133 to “1”.
[Step S27] The backup control unit 123 acquires the output voltage of the battery 107 via the power supply control circuit 108 from the controller 112c of the switch circuit 112. When the obtained output voltage is 11.8 V or less, the backup control unit 123 ends the processing. In this case, the operation of the CM 100 stops. On the other hand, when the obtained output voltage is higher than 11.8 V, the backup control unit 123 executes the process of step S28.

[ステップS28]バックアップ制御部123は、優先度3のデータを退避させる。すなわち、バックアップ制御部123は、他系キャッシュ領域102dに格納されたデータのうちのダーティデータを、SSD104のバックアップ領域104aに格納する。なお、他系キャッシュ領域102dに格納されたデータのうちのダーティデータは、他系テーブル領域102cに格納されたCM200のキャッシュ管理テーブルのダーティフラグに基づいて判別される。   [Step S28] The backup control unit 123 saves the data of the priority 3. That is, the backup control unit 123 stores dirty data of the data stored in the other-system cache area 102d in the backup area 104a of the SSD 104. The dirty data of the data stored in the other system cache area 102d is determined based on the dirty flag of the CM 200 cache management table stored in the other system table area 102c.

[ステップS29]バックアップ制御部123は、バックアップ管理テーブル133における優先度3に対応するバックアップフラグを「1」に更新する。この処理が完了すると、CM100の動作が停止する。   [Step S29] The backup control unit 123 updates the backup flag corresponding to the priority 3 in the backup management table 133 to “1”. When this process is completed, the operation of the CM 100 stops.

図14、図15は、復電時におけるCMの処理手順を示すフローチャートの例である。
[ステップS31]外部電源からの電力供給が復旧すると、PSU400からの電力供給が再開される(復電する)。CM100が、PSU400からの電力によって起動すると、リストア制御部124は、ステップS32以降の処理を実行する。また、PSU400からの電力供給が再開されることで、電源制御回路108は、PSU400からの電力を用いてバッテリ107の充電を開始する。
FIG. 14 and FIG. 15 are flowchart examples illustrating the processing procedure of the CM at the time of power restoration.
[Step S31] When the power supply from the external power supply is restored, the power supply from the PSU 400 is restarted (power is restored). When the CM 100 is activated by the electric power from the PSU 400, the restore control unit 124 executes the processing after Step S32. When the power supply from PSU 400 is restarted, power supply control circuit 108 starts charging battery 107 using the power from PSU 400.

[ステップS32]リストア制御部124は、SSD104に記憶されたバックアップ管理テーブル133を参照し、優先度1に対応するバックアップフラグを読み込む。リストア制御部124は、バックアップフラグが「1」の場合、ステップS33の処理を実行し、バックアップフラグが「0」の場合、ステップS34の処理を実行する。   [Step S32] The restore control unit 124 refers to the backup management table 133 stored in the SSD 104 and reads the backup flag corresponding to the priority level 1. When the backup flag is “1”, the restore control unit 124 executes the process of step S33, and when the backup flag is “0”, executes the process of step S34.

[ステップS33]リストア制御部124は、CM100のSSD104のバックアップ領域104aから、優先度1のデータをリストアする。すなわち、リストア制御部124は、自系テーブル領域102aからバックアップされた管理テーブルのデータを、バックアップ領域104aから自系テーブル領域102aに書き戻す。また、リストア制御部124は、自系キャッシュ領域102bからバックアップされたダーティデータを、バックアップ領域104aから自系キャッシュ領域102bに書き戻す。   [Step S33] The restore control unit 124 restores the data of the priority 1 from the backup area 104a of the SSD 104 of the CM 100. That is, the restore control unit 124 writes the management table data backed up from the own table area 102a back to the own table area 102a from the backup area 104a. In addition, the restore control unit 124 writes back the dirty data backed up from the own cache area 102b from the backup area 104a to the own cache area 102b.

[ステップS34]リストア制御部124は、他方のCM200が備えるSSD204のバックアップ領域から、優先度1のデータをリストアする。具体的には、リストア制御部124は、他方のCM200のリストア制御部に対して、他系テーブル領域202cのデータと他系キャッシュ領域202dのダーティデータの転送を要求する。CM200のリストア制御部は、SSD204のバックアップ領域から、他系テーブル領域202cからバックアップされた管理テーブルのデータと、他系キャッシュ領域202dからバックアップされたダーティデータとを読み出し、CM100に転送する。CM100のリストア制御部124は、転送された管理テーブルのデータを自系テーブル領域102aに格納し、転送されたダーティデータを自系キャッシュ領域102bに格納する。   [Step S34] The restore control unit 124 restores the data of priority 1 from the backup area of the SSD 204 included in the other CM 200. Specifically, the restore control unit 124 requests the restore control unit of the other CM 200 to transfer the data of the other system table area 202c and the dirty data of the other system cache area 202d. The restore control unit of the CM 200 reads the management table data backed up from the other system table area 202c and the dirty data backed up from the other system cache area 202d from the backup area of the SSD 204, and transfers them to the CM 100. The restore control unit 124 of the CM 100 stores the transferred management table data in the own table area 102a, and stores the transferred dirty data in the own cache area 102b.

[ステップS35]リストア制御部124は、SSD104に記憶されたバックアップ管理テーブル133を参照し、優先度2に対応するバックアップフラグを読み込む。リストア制御部124は、バックアップフラグが「1」の場合、ステップS36の処理を実行し、バックアップフラグが「0」の場合、ステップS37の処理を実行する。   [Step S35] The restore control unit 124 reads the backup flag corresponding to the priority 2 with reference to the backup management table 133 stored in the SSD 104. When the backup flag is “1”, the restore control unit 124 executes the process of step S36, and when the backup flag is “0”, executes the process of step S37.

[ステップS36]リストア制御部124は、CM100のSSD104のバックアップ領域104aから、優先度2のデータをリストアする。すなわち、リストア制御部124は、他系テーブル領域102cからバックアップされた管理テーブルのデータを、バックアップ領域104aから他系テーブル領域102cに書き戻す。   [Step S36] The restore control unit 124 restores the data of the priority 2 from the backup area 104a of the SSD 104 of the CM 100. That is, the restore control unit 124 writes the management table data backed up from the other system table area 102c back to the other system table area 102c from the backup area 104a.

[ステップS37]リストア制御部124は、他方のCM200が備えるSSD204のバックアップ領域から、優先度2のデータをリストアする。具体的には、リストア制御部124は、他方のCM200のリストア制御部に対して、自系テーブル領域202aのデータの転送を要求する。CM200のリストア制御部は、SSD204のバックアップ領域から、自系テーブル領域202aからバックアップされた管理テーブルのデータを読み出し、CM100に転送する。CM100のリストア制御部124は、転送された管理テーブルのデータを他系テーブル領域102cに格納する。   [Step S37] The restore control unit 124 restores the data of the priority 2 from the backup area of the SSD 204 provided in the other CM 200. Specifically, the restore control unit 124 requests the restore control unit of the other CM 200 to transfer the data of the own system table area 202a. The restore control unit of the CM 200 reads data of the management table backed up from the own system table area 202 a from the backup area of the SSD 204 and transfers the data to the CM 100. The restore control unit 124 of the CM 100 stores the transferred management table data in the other system table area 102c.

[ステップS38]リストア制御部124は、SSD104に記憶されたバックアップ管理テーブル133を参照し、優先度3に対応するバックアップフラグを読み込む。リストア制御部124は、バックアップフラグが「1」の場合、ステップS39の処理を実行し、バックアップフラグが「0」の場合、ステップS40の処理を実行する。   [Step S38] The restore control unit 124 refers to the backup management table 133 stored in the SSD 104 and reads a backup flag corresponding to the priority level 3. When the backup flag is “1”, the restore control unit 124 executes the process of step S39, and when the backup flag is “0”, executes the process of step S40.

[ステップS39]リストア制御部124は、CM100のSSD104のバックアップ領域104aから、優先度3のデータをリストアする。すなわち、リストア制御部124は、リストア制御部124は、他系キャッシュ領域102dからバックアップされたダーティデータを、バックアップ領域104aから他系キャッシュ領域102dに書き戻す。   [Step S39] The restore control unit 124 restores data of priority 3 from the backup area 104a of the SSD 104 of the CM 100. That is, the restore control unit 124 writes the dirty data backed up from the other system cache area 102d back to the other system cache area 102d from the backup area 104a.

[ステップS40]リストア制御部124は、他方のCM200が備えるSSD204のバックアップ領域から、優先度3のデータをリストアする。具体的には、リストア制御部124は、他方のCM200のリストア制御部に対して、自系キャッシュ領域202bのデータの転送を要求する。CM200のリストア制御部は、SSD204のバックアップ領域から、自系キャッシュ領域202bからバックアップされたダーティデータを読み出し、CM100に転送する。CM100のリストア制御部124は、転送されたダーティデータを他系キャッシュ領域102dに格納する。   [Step S40] The restore control unit 124 restores data of priority 3 from the backup area of the SSD 204 provided in the other CM 200. Specifically, the restore control unit 124 requests the restore control unit of the other CM 200 to transfer the data in the own cache area 202b. The restore control unit of the CM 200 reads the dirty data backed up from the own cache area 202 b from the backup area of the SSD 204 and transfers the dirty data to the CM 100. The restore control unit 124 of the CM 100 stores the transferred dirty data in the other-system cache area 102d.

以上の処理により、リストア処理が完了する。上記のリストア処理では、リストア制御部124は、バックアップ管理テーブル133の優先度ごとのバックアップフラグに基づいて、リストア対象のデータをどこから読み込むべきかを判断できる。そのため、データを確実かつ迅速にリストアすることができる。   With the above processing, the restoration processing is completed. In the above-described restore processing, the restore control unit 124 can determine from where the data to be restored should be read based on the backup flag for each priority in the backup management table 133. Therefore, data can be restored reliably and quickly.

以下、図15を用いて説明を続ける。
[ステップS41]リストア制御部124は、他方のCM200でのリストア処理が終了したかをCM200のリストア制御部に問い合わせる。リストア制御部124は、CM200でのリストア処理が終了していない場合、待ち状態になり、一定時間ごとに再度問い合わせを行う。そして、リストア制御部124は、CM200でのリストア処理が終了した場合、ステップS42の処理を実行する。
Hereinafter, the description will be continued with reference to FIG.
[Step S41] The restore control unit 124 inquires of the restore control unit of the CM 200 whether the restore process in the other CM 200 has been completed. If the restore processing in the CM 200 has not been completed, the restore control unit 124 enters a wait state and makes an inquiry again at regular intervals. Then, when the restore processing in the CM 200 ends, the restore control unit 124 executes the processing of step S42.

[ステップS42]リストア制御部124は、バッテリ107の残量が所定の閾値以上かを判定する。この閾値としては、例えば、優先度1に対応するデータのバックアップを実行できるバッテリ107の残量の下限値が設定される。バッテリ107の残量がこの下限値以上であれば、ライトバック方式によるアクセス制御を再開したとしても、停電が発生した場合に少なくとも優先度1に対応するデータをバックアップでき、ライトバックされていないダーティデータを保証できる。リストア制御部124は、バッテリ107の残量が閾値未満の場合、ステップS43の処理を実行し、残量が閾値以上の場合、ステップS45の処理を実行する。   [Step S42] The restore control unit 124 determines whether the remaining amount of the battery 107 is equal to or greater than a predetermined threshold. As this threshold, for example, a lower limit of the remaining amount of the battery 107 that can execute backup of data corresponding to the priority 1 is set. If the remaining capacity of the battery 107 is equal to or more than the lower limit, even if access control by the write-back method is restarted, at least data corresponding to the priority 1 can be backed up when a power failure occurs, Data can be guaranteed. When the remaining amount of the battery 107 is less than the threshold, the restore control unit 124 executes the process of step S43, and when the remaining amount is equal to or more than the threshold, executes the process of step S45.

[ステップS43]リストア制御部124は、バッテリ107の残量が閾値未満であることをアクセス制御部121に通知する。アクセス制御部121は、この通知に応じて、ホスト装置1100からの要求に応じた論理ボリュームに対するアクセス制御を開始する。このとき、アクセス制御部121は、書き込み制御をライトスルー方式で実行する。すなわち、アクセス制御部121は、ホスト装置1100からデータの書き込みが要求された場合、そのデータを自系キャッシュ領域102bに書き込むとともに、そのデータをドライブ部300にライトバックし、ホスト装置1100に対して書き込み完了を通知する。   [Step S43] The restore control unit 124 notifies the access control unit 121 that the remaining amount of the battery 107 is less than the threshold. The access control unit 121 starts access control to the logical volume in response to the request from the host device 1100 in response to the notification. At this time, the access control unit 121 executes the write control by a write-through method. That is, when writing of data is requested from the host device 1100, the access control unit 121 writes the data to the own system cache area 102b, writes the data back to the drive unit 300, and sends the data to the host device 1100. Notifies completion of writing.

[ステップS44]バッテリ107の残量が上記の閾値以上かを判定する。リストア制御部124は、バッテリ107の残量が閾値以上になるまで待機状態となり、残量が閾値以上になると、ステップS45の処理を実行する。   [Step S44] It is determined whether or not the remaining amount of the battery 107 is equal to or greater than the above threshold. The restore control unit 124 enters a standby state until the remaining amount of the battery 107 becomes equal to or greater than the threshold, and executes the process of step S45 when the remaining amount becomes equal to or greater than the threshold.

[ステップS45]リストア制御部124は、バッテリ107の残量が閾値以上になったことをアクセス制御部121に通知する。ステップS42の次にステップS45が実行された場合、アクセス制御部121は、この通知に応じて、ホスト装置1100からの要求に応じた論理ボリュームに対するアクセス制御を開始する。このとき、アクセス制御部121は、書き込み制御をライトバック方式で実行する。一方、ステップS44の次にステップS45が実行された場合、すなわち、すでにアクセス制御が開始されている場合には、アクセス制御部121は、書き込み制御方式をライトスルー方式からライトバック方式に切り替える。   [Step S45] The restore control unit 124 notifies the access control unit 121 that the remaining amount of the battery 107 has become equal to or greater than the threshold. When step S45 is executed after step S42, the access control unit 121 starts access control to the logical volume in response to the request from the host device 1100 in response to the notification. At this time, the access control unit 121 executes the write control by a write-back method. On the other hand, if step S45 is executed after step S44, that is, if access control has already been started, the access control unit 121 switches the write control method from the write-through method to the write-back method.

ここで、図13に示した停電時の処理では、ある優先度のデータのバックアップが完了したとき、バッテリ107の電力供給能力の余力が小さいと推定される場合には、その時点でバックアップ処理が終了される。これにより、バッテリ107の残量がバックアップ処理を実行できる下限量に低下するまでバックアップ処理を継続する場合と比較して、バッテリ107の放電量を抑制できる。その結果、図14、図15の処理では、復電から、バッテリ107の残量が閾値以上になるまでの時間が短縮される。これにより、復電から、アクセス制御部121がライトバック方式でアクセス制御を実行できるようになるまでの時間を短縮でき、ホスト装置1100からの書き込み要求に対する応答性能を全体として改善できる。   Here, in the process at the time of power failure shown in FIG. 13, when backup of data of a certain priority is completed, if it is estimated that the remaining power supply capacity of the battery 107 is small, the backup process is performed at that time. Will be terminated. This makes it possible to suppress the discharge amount of the battery 107 as compared with the case where the backup process is continued until the remaining amount of the battery 107 decreases to the lower limit amount at which the backup process can be performed. As a result, in the processing of FIGS. 14 and 15, the time from power recovery until the remaining amount of the battery 107 becomes equal to or greater than the threshold is reduced. As a result, the time from power recovery to the time when the access control unit 121 can execute access control by the write-back method can be shortened, and the response performance to a write request from the host device 1100 can be improved as a whole.

なお、上記の各実施の形態に示した装置(例えば、情報処理装置10、CM100,200)の処理機能は、コンピュータによって実現することができる。その場合、各装置が有すべき機能の処理内容を記述したプログラムが提供され、そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記憶装置、光ディスク、光磁気記録媒体、半導体メモリなどがある。磁気記憶装置には、ハードディスク装置(HDD)、磁気テープなどがある。光ディスクには、CD(Compact Disc)、DVD(Digital Versatile Disc)、ブルーレイディスク(Blu-ray Disc:BD、登録商標)などがある。光磁気記録媒体には、MO(Magneto-Optical disk)などがある。   Note that the processing functions of the devices (for example, the information processing device 10, the CMs 100 and 200) described in each of the above embodiments can be realized by a computer. In this case, a program describing the processing content of the function that each device should have is provided, and the processing function is realized on the computer by executing the program on the computer. The program describing the processing content can be recorded on a computer-readable recording medium. Computer-readable recording media include magnetic storage devices, optical disks, magneto-optical recording media, and semiconductor memories. The magnetic storage device includes a hard disk device (HDD), a magnetic tape, and the like. Optical disks include CDs (Compact Discs), DVDs (Digital Versatile Discs), and Blu-ray Discs (Blu-ray Discs: BD, registered trademark). Examples of the magneto-optical recording medium include an MO (Magneto-Optical disk).

プログラムを流通させる場合には、例えば、そのプログラムが記録されたDVD、CDなどの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。   When distributing the program, for example, portable recording media such as DVDs and CDs on which the program is recorded are sold. Alternatively, the program may be stored in a storage device of a server computer, and the program may be transferred from the server computer to another computer via a network.

プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムまたはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムにしたがった処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムにしたがった処理を実行することもできる。また、コンピュータは、ネットワークを介して接続されたサーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムにしたがった処理を実行することもできる。   The computer that executes the program stores, for example, the program recorded on the portable recording medium or the program transferred from the server computer in its own storage device. Then, the computer reads the program from its own storage device and executes processing according to the program. Note that the computer can also read the program directly from the portable recording medium and execute processing according to the program. Further, the computer can also execute processing according to the received program each time the program is transferred from a server computer connected via a network.

10 情報処理装置
11 揮発性記憶装置
12 不揮発性記憶装置
13 バッテリ
14 制御部
DG1〜DG3 データ群
S1〜S3 ステップ
DESCRIPTION OF SYMBOLS 10 Information processing apparatus 11 Volatile storage device 12 Nonvolatile storage device 13 Battery 14 Control unit DG1-DG3 Data group S1-S3 Step

Claims (9)

揮発性記憶装置と、
不揮発性記憶装置と、
電源の停電時に前記揮発性記憶装置から前記不揮発性記憶装置へデータを格納するための電力を供給するバッテリと、
前記停電時に、前記揮発性記憶装置に記憶された、あらかじめ優先度が設定された複数種類のデータ群を、前記優先度が高い順に前記不揮発性記憶装置に格納するバックアップ処理を実行する制御部と、
を有し、
前記制御部は、前記バックアップ処理において、前記複数種類のデータ群のそれぞれについて前記不揮発性記憶装置への格納が完了するたびに、前記バッテリから供給される供給電圧に基づいて前記バッテリからの電圧供給に関する故障状態を判定し、前記故障状態に基づいて、前記複数種類のデータ群のうち次に前記優先度が高いデータ群を前記不揮発性記憶装置へ格納するか否かを決定する、
情報処理装置。
A volatile storage device;
A non-volatile storage device,
A battery that supplies power for storing data from the volatile storage device to the non-volatile storage device during a power outage;
At the time of the power outage, a control unit that executes a backup process of storing a plurality of types of data groups in which priorities are stored in the volatile storage device in advance in the nonvolatile storage device in the order of the priority, and ,
Has,
In the backup process, each time the storage of the plurality of types of data groups in the nonvolatile storage device is completed, the control unit supplies a voltage from the battery based on a supply voltage supplied from the battery. Determining a failure state with respect to, based on the failure state, determines whether to store the next higher priority data group among the plurality of types of data groups in the nonvolatile storage device,
Information processing device.
前記情報処理装置は、前記停電時に前記バッテリからの電力を前記情報処理装置の内部に出力するように制御されるスイッチ回路をさらに有し、
前記供給電圧は、前記スイッチ回路の出力電圧であり、
前記制御部は、前記供給電圧を所定の電圧閾値と比較することで、前記故障状態として前記スイッチ回路の状態を判定する、
請求項1記載の情報処理装置。
The information processing device further includes a switch circuit that is controlled to output power from the battery to the inside of the information processing device during the power outage,
The supply voltage is an output voltage of the switch circuit,
The control unit determines the state of the switch circuit as the failure state by comparing the supply voltage with a predetermined voltage threshold,
The information processing device according to claim 1.
前記電圧閾値は、前記スイッチ回路が正常な状態と故障した状態のそれぞれにおいて、前記バッテリから前記スイッチ回路を介して出力される電圧の差分に基づく値である、
請求項2記載の情報処理装置。
The voltage threshold is a value based on a difference between voltages output from the battery via the switch circuit in each of a normal state and a failed state of the switch circuit.
The information processing device according to claim 2.
前記情報処理装置は、前記バッテリから前記情報処理装置の内部へ電力を供給するための並列な第1の電力経路と第2の電力経路とを有し、前記スイッチ回路として、前記第1の電力経路上に設けられる第1のスイッチ回路と、前記第2の電力経路上に設けられる第2のスイッチ回路とを有し、
前記電圧閾値として、前記第1のスイッチ回路と前記第2のスイッチ回路の両方が正常な正常状態と前記第1のスイッチ回路および前記第2のスイッチ回路の両方が故障した状態のそれぞれにおいて、前記バッテリから前記スイッチ回路を介して出力される電圧の差分に基づく第1の閾値と、前記バッテリから前記スイッチ回路を介して出力される電圧が前記正常状態より低下したことを判定するための第2の閾値とが用いられ、
前記制御部は、
前記複数種類のデータ群のうち第1のデータ群について前記不揮発性記憶装置への格納が完了したとき、前記供給電圧が前記第1の閾値より高い場合には、前記複数種類のデータ群のうち前記第1のデータ群の次に前記優先度が高い第2のデータ群を前記不揮発性記憶装置へ格納し、
前記第2のデータ群の格納が完了したとき、前記供給電圧が前記第2の閾値より高い場合には、前記複数種類のデータ群のうち前記第2のデータ群の次に前記優先度が高い第3のデータ群を前記不揮発性記憶装置へ格納する、
請求項2記載の情報処理装置。
The information processing apparatus has a first power path and a second power path in parallel for supplying power from the battery to the inside of the information processing apparatus, and the first power path is used as the switch circuit. A first switch circuit provided on a path, and a second switch circuit provided on the second power path,
As the voltage threshold, in each of the normal state where both the first switch circuit and the second switch circuit are normal and the state where both the first switch circuit and the second switch circuit have failed, A first threshold value based on a difference between voltages output from the battery via the switch circuit, and a second threshold value for determining that the voltage output from the battery via the switch circuit has dropped below the normal state. And a threshold of
The control unit includes:
When the storage of the first data group of the plurality of types of data groups in the nonvolatile storage device is completed, and the supply voltage is higher than the first threshold, Storing the second data group having the second highest priority next to the first data group in the nonvolatile storage device;
When the storage of the second data group is completed, if the supply voltage is higher than the second threshold, the priority is next to the second data group among the plurality of types of data groups. Storing a third data group in the nonvolatile storage device;
The information processing device according to claim 2.
前記揮発性記憶装置には、前記複数種類のデータ群の1つとして、前記情報処理装置が所定の処理を実行する際に使用される第1のデータ群が記憶され、他の1つとして、他の情報処理装置で記憶されたデータのバックアップデータである第2のデータ群が記憶され、
前記第1のデータ群は、前記第2のデータ群より高い前記優先度が設定される、
請求項1乃至3のいずれか1項に記載の情報処理装置。
In the volatile storage device, a first data group used when the information processing device executes a predetermined process is stored as one of the plurality of types of data groups, and as another one, A second data group that is backup data of data stored in another information processing device is stored,
The first data group has the higher priority set than the second data group,
The information processing apparatus according to claim 1.
前記揮発性記憶装置には、前記バックアップ処理により、前記複数種類のデータ群のそれぞれについて前記不揮発性記憶装置への格納が完了したか否かが記録された管理情報が記憶され、
前記制御部は、さらに、
前記第1のデータ群を前記他の情報処理装置にミラーリングし、
前記電源からの電源供給が復旧して前記情報処理装置が起動したとき、前記管理情報に基づいて、前記第1のデータ群および前記第2のデータ群のそれぞれを、前記不揮発性記憶装置と前記他の情報処理装置のどちらから読み出して前記揮発性記憶装置にリストアするかを判定する、
請求項5記載の情報処理装置。
In the volatile storage device, by the backup process, management information in which whether or not storage of the plurality of types of data groups in the nonvolatile storage device is completed is stored,
The control unit further includes:
Mirroring the first data group to the other information processing device,
When the power supply from the power supply is restored and the information processing apparatus is started, the first data group and the second data group are respectively stored in the nonvolatile storage device and the non-volatile storage device based on the management information. Determining which of the other information processing devices to read and restore to the volatile storage device,
The information processing device according to claim 5.
前記所定の処理は、前記揮発性記憶装置をキャッシュとして用いながら記憶装置に対するアクセスを制御するアクセス制御処理であり、
前記第1のデータ群は、前記キャッシュのデータのうち前記記憶装置にライトバックされていないダーティデータであり、
前記バッテリには、前記電源からの電力供給が復旧すると、前記電源からの電力による充電が開始され、
前記制御部は、前記電源からの電源供給が復旧して前記情報処理装置が起動し、前記第1のデータを前記揮発性記憶装置にリストアした後、前記バッテリの残量が所定量未満である間、ライトスルー方式で前記アクセス制御処理を実行し、前記バッテリの残量が前記所定量以上になると、前記アクセス制御処理の処理方式をライトスルー方式からライトバック方式に切り替える、
請求項5または6記載の情報処理装置。
The predetermined process is an access control process for controlling access to a storage device while using the volatile storage device as a cache,
The first data group is dirty data that is not written back to the storage device among the data of the cache,
When the power supply from the power supply is restored, the battery starts charging with the power from the power supply,
The control unit is configured such that after the power supply from the power supply is restored, the information processing apparatus is started, and after restoring the first data to the volatile storage device, the remaining amount of the battery is less than a predetermined amount. Executing the access control process in a write-through mode, and when the remaining amount of the battery becomes equal to or more than the predetermined amount, switching the processing mode of the access control process from a write-through mode to a write-back mode;
The information processing apparatus according to claim 5.
揮発性記憶装置と、不揮発性記憶装置と、電源の停電時に前記揮発性記憶装置から前記不揮発性記憶装置へデータを格納するための電力を供給するバッテリとを有するコンピュータが、
前記停電時に、前記揮発性記憶装置に記憶された、あらかじめ優先度が設定された複数種類のデータ群を、前記優先度が高い順に前記不揮発性記憶装置に格納するバックアップ処理を実行し、
前記バックアップ処理では、前記複数種類のデータ群のそれぞれについて前記不揮発性記憶装置への格納が完了するたびに、前記バッテリから供給される供給電圧に基づいて前記バッテリからの電圧供給に関する故障状態を判定し、前記故障状態に基づいて、前記複数種類のデータ群のうち次に前記優先度が高いデータ群を前記不揮発性記憶装置へ格納するか否かを決定する、
データ管理方法。
A computer having a volatile storage device, a non-volatile storage device, and a battery that supplies power for storing data from the volatile storage device to the non-volatile storage device when a power failure occurs,
At the time of the power failure, a plurality of types of data groups stored in the volatile storage device, in which priorities are set in advance, perform a backup process of storing in the nonvolatile storage device in order of the priority,
In the backup processing, each time the storage of the plurality of types of data groups in the nonvolatile storage device is completed, a failure state regarding the voltage supply from the battery is determined based on the supply voltage supplied from the battery. And determining, based on the failure state, whether to store the next higher priority data group among the plurality of types of data groups in the nonvolatile storage device,
Data management method.
揮発性記憶装置と、不揮発性記憶装置と、電源の停電時に前記揮発性記憶装置から前記不揮発性記憶装置へデータを格納するための電力を供給するバッテリとを有するコンピュータに、
前記停電時に、前記揮発性記憶装置に記憶された、あらかじめ優先度が設定された複数種類のデータ群を、前記優先度が高い順に前記不揮発性記憶装置に格納するバックアップ処理を実行させ、
前記バックアップ処理では、前記複数種類のデータ群のそれぞれについて前記不揮発性記憶装置への格納が完了するたびに、前記バッテリから供給される供給電圧に基づいて前記バッテリからの電圧供給に関する故障状態を判定し、前記故障状態に基づいて、前記複数種類のデータ群のうち次に前記優先度が高いデータ群を前記不揮発性記憶装置へ格納するか否かを決定する、
データ管理プログラム。
A computer having a volatile storage device, a non-volatile storage device, and a battery that supplies power for storing data from the volatile storage device to the non-volatile storage device when a power failure occurs,
At the time of the power failure, a plurality of types of data groups stored in the volatile storage device, in which priorities are set in advance, a backup process of storing the plurality of data groups in the nonvolatile storage device in the order of higher priority,
In the backup processing, each time the storage of the plurality of types of data groups in the nonvolatile storage device is completed, a failure state regarding the voltage supply from the battery is determined based on the supply voltage supplied from the battery. And determining, based on the failure state, whether to store the next higher priority data group among the plurality of types of data groups in the nonvolatile storage device,
Data management program.
JP2018155418A 2018-08-22 2018-08-22 Information processing equipment, data management method and data management program Active JP7060806B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018155418A JP7060806B2 (en) 2018-08-22 2018-08-22 Information processing equipment, data management method and data management program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018155418A JP7060806B2 (en) 2018-08-22 2018-08-22 Information processing equipment, data management method and data management program

Publications (2)

Publication Number Publication Date
JP2020030580A true JP2020030580A (en) 2020-02-27
JP7060806B2 JP7060806B2 (en) 2022-04-27

Family

ID=69622517

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018155418A Active JP7060806B2 (en) 2018-08-22 2018-08-22 Information processing equipment, data management method and data management program

Country Status (1)

Country Link
JP (1) JP7060806B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020100643A (en) * 2015-09-18 2020-07-02 ベーリンガー インゲルハイム インターナショナル ゲゼルシャフト ミット ベシュレンクテル ハフツング Methods of treating inflammatory diseases

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110185211A1 (en) * 2010-01-25 2011-07-28 Dell Products L.P. Systems and Methods for Determining the State of Health of a Capacitor Module
JP2011524555A (en) * 2008-12-04 2011-09-01 株式会社日立製作所 Storage system having volatile memory and nonvolatile memory
JP2014010610A (en) * 2012-06-29 2014-01-20 Fujitsu Ltd Control device, power supply device, and power control method
JP2018010557A (en) * 2016-07-15 2018-01-18 富士通株式会社 Storage system and management device

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011524555A (en) * 2008-12-04 2011-09-01 株式会社日立製作所 Storage system having volatile memory and nonvolatile memory
US20110185211A1 (en) * 2010-01-25 2011-07-28 Dell Products L.P. Systems and Methods for Determining the State of Health of a Capacitor Module
JP2014010610A (en) * 2012-06-29 2014-01-20 Fujitsu Ltd Control device, power supply device, and power control method
JP2018010557A (en) * 2016-07-15 2018-01-18 富士通株式会社 Storage system and management device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020100643A (en) * 2015-09-18 2020-07-02 ベーリンガー インゲルハイム インターナショナル ゲゼルシャフト ミット ベシュレンクテル ハフツング Methods of treating inflammatory diseases

Also Published As

Publication number Publication date
JP7060806B2 (en) 2022-04-27

Similar Documents

Publication Publication Date Title
US8762643B2 (en) Control method for disk array apparatus and disk array apparatus
US9250676B2 (en) Power failure architecture and verification
JP5578720B2 (en) How to improve solid drive management from a high utilization and virtualization perspective
EP2350839B1 (en) A mass-storage system utilizing solid-state storage and non-solid-state storage
US8838918B2 (en) Information processing apparatus and data backup method
US8214610B2 (en) Managing backup device metadata in a high availability disk subsystem
US10139884B2 (en) Power loss protection for solid state drives
US8327069B2 (en) Storage system and storage control apparatus provided with cache memory group including volatile memory and nonvolatile memory
KR101410596B1 (en) Information processing apparatus, computer program, and copy control method
US10809788B2 (en) Electronic system, information processing device, and control method
US20140129765A1 (en) Method to improve data reliability in dram ssd using asynchronous logging and incremental backup
US8321628B2 (en) Storage system, storage control device, and method
US20100115310A1 (en) Disk array apparatus
US20220019506A1 (en) High Availability For Persistent Memory
US10234929B2 (en) Storage system and control apparatus
US20180018245A1 (en) Storage system and management apparatus
JP2016126561A (en) Storage control device, storage device, and program
US20230251931A1 (en) System and device for data recovery for ephemeral storage
JP7060806B2 (en) Information processing equipment, data management method and data management program
JP2000357059A (en) Disk array device
US8862846B2 (en) Control apparatus, control method, and storage apparatus
CN105159846A (en) Method for supporting dual-control switching of virtualized disk and storage system
US10528275B2 (en) Storage system, storage control device, and method of controlling a storage system
US9047232B2 (en) Storage apparatus and controlling method for data transmission based on control information
US10656848B2 (en) Data loss avoidance in multi-server storage systems

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210513

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20210524

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20210524

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220309

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220328

R150 Certificate of patent or registration of utility model

Ref document number: 7060806

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150