JP2014120092A - 情報処理装置、格納処理方法及びプログラム - Google Patents
情報処理装置、格納処理方法及びプログラム Download PDFInfo
- Publication number
- JP2014120092A JP2014120092A JP2012276468A JP2012276468A JP2014120092A JP 2014120092 A JP2014120092 A JP 2014120092A JP 2012276468 A JP2012276468 A JP 2012276468A JP 2012276468 A JP2012276468 A JP 2012276468A JP 2014120092 A JP2014120092 A JP 2014120092A
- Authority
- JP
- Japan
- Prior art keywords
- log
- management information
- page
- storage medium
- storage
- 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
Links
- 230000010365 information processing Effects 0.000 title claims abstract description 17
- 238000003672 processing method Methods 0.000 title claims description 13
- 238000012545 processing Methods 0.000 claims abstract description 57
- 238000004364 calculation method Methods 0.000 claims abstract description 13
- 238000000034 method Methods 0.000 claims description 52
- 230000015654 memory Effects 0.000 abstract description 168
- 238000007726 management method Methods 0.000 description 91
- 230000006870 function Effects 0.000 description 21
- 238000012986 modification Methods 0.000 description 10
- 230000004048 modification Effects 0.000 description 10
- 238000001514 detection method Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 239000003990 capacitor Substances 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- HBBGRARXTFLTSG-UHFFFAOYSA-N Lithium ion Chemical compound [Li+] HBBGRARXTFLTSG-UHFFFAOYSA-N 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 2
- 230000032683 aging Effects 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 2
- 238000006731 degradation reaction Methods 0.000 description 2
- 230000006866 deterioration Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 229910001416 lithium ion Inorganic materials 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 229910052987 metal hydride Inorganic materials 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 229910052759 nickel Inorganic materials 0.000 description 1
- PXHVJJICTQNCMI-UHFFFAOYSA-N nickel Substances [Ni] PXHVJJICTQNCMI-UHFFFAOYSA-N 0.000 description 1
- -1 nickel metal hydride Chemical class 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1441—Resetting or repowering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0727—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a storage system, e.g. in a DASD or network based storage system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0766—Error or fault reporting or storing
- G06F11/0778—Dumping, i.e. gathering error/state information after a fault for later diagnosis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/065—Replication mechanisms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0674—Disk device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2015—Redundant power supplies
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2308—Concurrency control
- G06F16/2336—Pessimistic concurrency control approaches, e.g. locking or multiple versions without time stamps
- G06F16/2343—Locking methods, e.g. distributed locking or locking implementation details
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Human Computer Interaction (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Computer Security & Cryptography (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Debugging And Monitoring (AREA)
Abstract
【解決手段】管理情報を第1の記憶媒体30に格納するために要するページ数を算出する算出部13と、算出したページ数に相当するページをフリーページとして設定し、設定したフリーページに管理情報を格納することで第1の記憶媒体30に管理情報を格納する格納処理部13と、第1の記憶媒体30における管理情報の格納位置を示す位置管理情報を更新する処理を行なう更新処理部13とを備える。
【選択図】図1
Description
その一方で、バックアップ用電源の電源容量は限られているので、キャッシュデータの書き出し処理に時間を要すると、ログ書き出し処理に割り当てることができる時間が短くなる。従って、メモリ上のログ書き出しを短時間で行なう必要があるという課題がある。
なお、前記目的に限らず、後述する発明を実施するための形態に示す各構成により導かれる作用効果であって、従来の技術によっては得られない作用効果を奏することも本発明の他の目的の1つとして位置付けることができる。
を前記コンピュータに実行させる。
図1は実施形態の一例としてのストレージシステム1の機能構成を示す図である。
本実施形態のストレージシステム1は、図1に示すように、ストレージ装置(情報処理装置)100と1以上(図1に示す例では1つ)のホスト装置2とを備え、このホスト装置2に対して記憶領域を提供する。ホスト装置2は、例えば、サーバ機能をそなえたコンピュータ(ホストコンピュータ)であり、LAN(Local Area Network)等のネットワークを介して、ストレージ装置100と通信可能に接続される。
記憶装置3は、ハードディスクドライブ(Hard Disk Drive:HDD)やSSD(Solid State Drive)等のデータを読み書き可能に格納する記憶装置であり、ホスト装置2から受信したデータを記憶可能な記憶部として機能する。本実施形態においては、記憶装置3としてHDDを用いる例について示す。以下、記憶装置3をHDD3と表す場合もある。
このBPSU40は、図1に示すように、バッテリ41を備える。バッテリ41は、例えば、鉛蓄電池やニッケル水素電池(Ni-H),リチウムイオン(Li-ION)電池等の二次電池である。なお、バッテリ41に代えて、電気二重層コンデンサ(電気二重層キャパシタ)等のキャパシタを備えてもよい。
フロントエンド51は、ホスト装置2等と通信可能に接続するインタフェースコントローラ(通信アダプタ)であり、例えば、CA(Channel Adapter)である。フロントエンド51は、ホスト装置2等から送信されたデータを受信し、又、CM101から出力するデータをホスト装置2等に送信する。すなわち、フロントエンド51は、ホスト装置2等の外部装置との間でのデータの入出力(I/O)を制御する。
メモリ20のRAMは、図1に示すように、RAIDキャッシュ(キャッシュメモリ)21,メモリログ域22及びライトバッファ23として機能する。
RAIDキャッシュ21は、ホスト装置2から受信したデータや、HDD3から読み出したデータを格納する。ホスト装置2から受信し、HDD3に書き込まれるデータ(ライトデータ,ライトキャッシュデータ)は、このRAIDキャッシュ21における所定の領域(ユーザ領域)に格納された後、HDD3に転送される。
また、HDD3から読み出されたデータ(リードデータ)は、RAIDキャッシュ21におけるリードデータを格納するための領域に格納された後、ホスト装置2に送信される。
すなわち、ライト用バッファ23には、後述するキャッシュ制御部12やログ制御部13がバックアップ用メモリ30にデータ(バックアップデータ)を格納する際に、このバックアップ用メモリ30に書き込まれる1ページ分のデータが格納(展開)される。
バックアップ用メモリ(第1の記憶媒体)30は、フラッシュメモリ等の電力を供給しなくても記憶を保持するメモリ(不揮発性メモリ)である。このバックアップ用メモリ30としては、例えば、SSDが用いられる。ただし、バックアップ用メモリ30は、これに限定されるものではなく、例えば、磁気抵抗RAMやPRAM(Phase change RAM),強誘電体メモリを用いてもよく、種々変形して実施することができる。
CPU10は、種々の制御や演算を行なう処理装置であり、メモリ20に格納されたプログラムを実行することにより、種々の機能を実現する。
電源制御部11は、ストレージ装置100における電力供給を制御する。電源制御部11は、停電を検知すると、BPSU40に対して電力供給指示を行なう。これにより、図示しない電力供給装置からの電力が遮断された場合においても、CM101の各部にBPSU40からの電力が供給される。
また、電源制御部11は、停電の発生を検知すると、キャッシュ制御部12及びログ制御部13に停電発生を通知する。
また、電源制御部11から停電発生の通知を受け取ると、RAIDキャッシュ21のキャッシュデータをバックアップ用メモリ30の所定の領域にコピーする(RAIDキャッシュデータ書き出し)。
ログ制御部13は、ログを所定サイズのブロック単位で管理する。すなわち、ログ制御部13は、バックアップ用メモリ30のメモリ領域をページ(Page)と呼ばれる所定サイズ(例えば、64KByte)の領域に分割し、これらのページにログを格納することで管理する。以下、1ページのデータサイズをページサイズという。
また、前述の如く、ライト用バッファ23は、1ページ分(64KB)のサイズを有している。ログ制御部13は、バックアップ用メモリ30の1ページに書き込み可能なログをライト用バッファ23にコピーしてから、バックアップ用メモリ30の所定の領域に書き込む。
図2(a),(b)に示すように、ログ制御部13は、ログを、ログデータを格納するページ部(Page部,ログ域)と、ページ部の管理情報(Header)を保持するヘッダ部(Header部,管理域)とを用いて管理する。これらのページ部及びヘッダ部はバックアップ用メモリ30に格納される。
ログ制御部13は、ログの種別となるタイプ毎にページをアサインし、各タイプにアサインしたページをリンクすることで順序を保つ。
図2(a),(b)に示す例においては、タイプ毎にページを重積して示すことで、各タイプに複数のページがリンクされている状態を示している。又、図中、各タイプについて重積して示される複数のページのうち、下側のページ程古いページであることを示しており、各最下段のページが先頭のページ(Top Page)である。
ログが格納されていないページは、フリーページ(Free Page)として扱われ、このフリーページは、フリーページのタイプ(図2(a),(b)に示す例ではType#239)にリンク付けられる。
図2(a),(b)に示す例においては、ヘッダ部において、Type Number,Page Count,Top Page Number及びBottom Page Numberが管理されている。
Type Numberはタイプを識別するための情報(番号)であり、Page Countはそのタイプにリンクされているページの数を表す。Top Page Numberはそのタイプにリンクされているページのうち先頭のページを、又、Bottom Page Numberは、そのタイプにリンクされているページのうち最後尾のページを、それぞれ表す。
例えば、図2(a)に示す状態において、Type#237に対応するログを新たに格納する際には、ログ制御部13は、管理部のBottom Page Numberを参照して、Type#237にリンクされている最後尾のページを確認する。図2(a)において、Type#237の最後尾のページは、Page#9である。
ログ制御部13は、このフリーページ(Type#239)に使用可能なページがリンクされている場合には、図2(b)に示すように、その先頭のページ(Page#10)をType#237の最後尾にアサインして、このPage#10にログを格納する。
ログ制御部13は、ログの書き出しを、第1のモードと第2のモードとの2種類のモードで行なうことができ、これらの2種類のモードのうちいずれかでログの書き出しを行なう。
具体的には、既にタイプに対してアサインされているページにログを書き込む空きが無い場合(場合A)には、以下のステップ1〜3のライト処理を行なう。すなわち、その格納するログのタイプに対して、新しいフリーページをアサインしてヘッダを更新し(ステップ1)、ライト用バッファ23にアサインしたフリーページにログを書き出してから、このページをバックアップ用メモリ30へ書き出し(ステップ2)、更に、更新したヘッダをバックアップ用メモリ30に書き込む(ステップ3)。
このように、第1モードにおいては、バックアップ用メモリ30に対して1ページ分のログの書き出しを行なう度にヘッダの更新を行なうことで、ログを確実にバックアップ用メモリ30に書き出すことができる。
このような場合Bは、前回のログ書き出しで、ページ内に空き領域が存在する場合である。ここで、ほとんどのケースで、1ページ目のログ書き出しは、前回の空き領域にライトする場合Bとなる。又、2ページ目以降のログ書き出しは、1ページがフルになった後の処理となり、新たにページをアサインする必要があるため場合Aとなる。
図3(a),(b),(c)は、実施形態の一例としてのストレージシステム1における第2モードでのログの管理手法を説明する図である。図3(a)はそのフェーズ(Phase)1を、図3(b)はそのフェーズ2を、図3(c)はそのフェーズ3を、それぞれ例示する。又、図4は実施形態の一例としてのストレージシステム1におけるメモリログ域22に格納されているログの使用サイズを例示する図である。
ログ制御部13は、フェーズ1において、先ず、ログを格納するために必要なフリーページページの数(必要フリーページ数)の算出を行なう。
ログ制御部13は、図4に示すように、メモリ20のメモリログ域22に格納されているログのタイプ毎の総量のサイズ(使用サイズ;Used Size)を管理している。
そして、ログ制御部13は、このように管理しているメモリログ域22におけるログの使用サイズと、バックアップ用メモリ30におけるページサイズ(例えば64KB)とを用いて、必要フリーページ数を算出する。
必要フリーページ数=987654÷(64×1024)=15.07
となり、必要フリーページ数は16(16ページ)となる。
ここで、先にタイプに割り当てられているページの中から、フリーページにアサインするページの選択手法としては、例えば、ログ部において先にタイプにリンクされている(最も古い)ページから順に選択することが望ましい。
ログ制御部13は、これらの選択したページをフリーページ(Type#239)にアサインする。
次に、ログ制御部13は、図3(b)に示すように、フェーズ2において、ログデータをアサインした各フリーページに格納する。
図5は実施形態の一例としてのストレージシステム1におけるログ書き出し処理を説明するための図である。
ここで、フリーページへのログデータの書き込み時に、ファームパニック等の異常が発生した場合には、バックアップ用メモリ30内にログは残らないが、メモリログ域22やライト用バッファ23からはメモリダンプファイルを採取することができる。このメモリダンプ上にはログが残るので、異常発生時のログを採取して障害解析が可能となる。
そして、本実施形態においては、ログ制御部13は、ストレージシステム1への電力供給が遮断されている(停電中)場合に、第2モードでのログの書き出しを行ない、それ以外の通常時には第1モードでのログの書き出しを行なう。すなわち、停電時にはログ吐出速度を優先して行なう。
例えば、メモリログ域22に格納されているログのサイズが予め設定された所定量以上となった場合に、本処理が開始される。
ステップA3において、ログ制御部13は、ログが存在するタイプがあるか否かを判断する。ログが存在するタイプが無い場合には(ステップA3のNOルート参照)、バックアップ対象のログが無いと判断し、処理を終了する。
この第1モードにおいては、ログ制御部13は、先ず、ステップA6において、検出タイプにアサインされているページに空き領域があるか否かを判断する。すなわち、ログ制御部13は、検出タイプにリンクされているページのうち、最後にリンクされたページにログを書き込むことができるだけの容量が空いているかを確認する。
そして、ステップA10において、ログ制御部13は、ライト用バッファ23のページのデータをバックアップ用メモリ30にライトする。
ステップA13において、ログ制御部13は、同一タイプにおいて未処理のページの有無を確認し、未処理のページがある場合には(ステップA13のYESルート参照)、ステップA6に戻る。又、同一タイプにおいて未処理のページがない場合には(ステップA13のNOルート参照)、次に、ステップA14において、未処理のタイプの有無を確認する。
この第2モードにおいては、ログ制御部13は、先ず、ステップA15において、ログを格納するための必要フリーページ数の算出を行なう(フェーズ1)。すなわち、ログ制御部13は、検出タイプのログのデータサイズに基づいて、必要フリーページ数を算出する。
その後、ログ制御部13は、ステップA16において、メモリログ域22のログ(対象ログ)をライト用バッファ23にコピーして、1ページ(例えば、64KByte)分のデータを作成する。その後、ステップA17において、このライト用バッファ23のログをバックアップ用メモリ30のページにライトする(フェーズ2)。
すなわち、アサインした各フリーページにログデータの書き出しを行なった後にヘッダの更新を一括して行なうことで、バックアップ用メモリ30に対して行なうライト処理数を減らすことができる。
例えば、あるタイプの5ページ分のログをバックアップ用メモリ30に書き出す場合には(X=5)、5×3=15回のライト処理が行なわれる。
従って、あるタイプの5ページ分のログをバックアップ用メモリ30に書き出す場合には(X=5)、5+2=7回のライト処理が行なわれる。
つまり、第2モードにおいては、各タイプのログデータ書き出しに要する時間(X+2)は、第1モードにおける各タイプのログデータ書き出しに要する時間(3X)に比べて、(X+2)/3Xとなり、ほぼ1/3の処理時間で行なうことができる。
そして、例えば、本ストレージシステム1の停電時に第2モードでログの書き出しを行なうことにより、メモリログ域22のデータを確実にバックアップ用メモリ30に退避させることができ、信頼性を向上させることができる。
一方、第1モードでログの書き出しを行なうことにより、バックアップ用メモリ30に対して1ページ分のログの書き出しを行なう度にヘッダの更新を行なうことで、ログを確実にバックアップ用メモリ30に書き出すことができる。
(B)変形例
なお、上述した実施形態に関わらず、本実施形態の趣旨を逸脱しない範囲で種々変形して実施することができる。
前述の如く、ストレージシステム1の停電発生時には、搭載されているバッテリ41の放電時間内で、RAIDキャッシュ21のキャッシュデータ(RAIDキャッシュデータ)の書き出しとメモリログ域22のログの書き出しとを行なう必要がある。
本変形例においては、バッテリ放電時間のうち、RAIDキャッシュデータの書き出しを行なった後にログ書き出しにかけることができる時間(バッテリ放電残り時間:時間A)と、第1モードでのログ書き出しに要する予測時間(メモリログ書き出し時間:時間B)とを比較する。
そこで、ログ制御部13はバッテリ放電残り時間の算出と、メモリログ書き出し時間の算出とを行なう。以下に、バッテリ放電残り時間の算出手法と、メモリログ書き出し時間の算出手法とを示す。
メモリログ書き出しに割当てられるバッテリ放電残り時間は、バッテリ41によるバッテリ放電の全体時間から、RAIDキャッシュデータの書き出しに要する時間(キャッシュ書き出し時間)を減算することにより求められる。
バッテリ放電の全体時間は、例えば、以下の式(1)により算出する。
バッテリ放電の全体時間 =[バッテリ放電で稼動可能な最大時間]×[バッテリ充電率]
×[バッテリ経年劣化率] ・・・(1)
ここで、「バッテリ放電で稼動可能な最大時間」は、ストレージシステム1の仕様によって決定され、例えば、600secである。
「バッテリ経年劣化率」は、バッテリの劣化状態を表す値であり、例えば百分率で示す。バッテリ41は経年劣化し、この経年劣化により稼動可能な時間も減少する。
キャッシュ書き出し時間は、例えば、以下の式(2)により算出する。
ここで、「キャッシュデータがフルの時の書き出し処理に必要な最大時間」は、RAIDキャッシュ21にフルの状態で格納されたキャッシュデータをバックアップ用メモリ30に書き込むのに要する時間である。このキャッシュデータがフルの時の書き出し処理に必要な最大時間は、例えば、RAIDキャッシュ21のサイズやI/O性能、バックアップ用メモリ30のI/O性能等によって決定される。キャッシュデータがフルの時の書き出し処理に必要な最大時間は、例えば、300secである。
そして、バッテリ放電残り時間(時間A)は、以下の式(3)により求められる。
なお、ストレージシステム1においては、BPSU40の故障時やバッテリ41の充電率が明らかに低い場合(所定の閾値未満の場合)には、停電処理は行なわれない。
(2)メモリログ書き出し時間
メモリログ書き出し時間(時間B)は、例えば、以下の式(4)により求められる。
ここで、「使用ページ数」は、メモリログ域22に格納されているバックアップ対象のログのデータサイズをページ数で表した値である。すなわち、バックアップ対象のログデータサイズに相当する。
第1モードでのメモリログ書き出し時間=3×ページ数×ライト時間 ・・・(5)
「ライト時間」は、バックアップ用メモリ30への1回あたりのライト時間であり、例えば、約5〜6Tick(ただし、1Tick=1/60sec)である。
最大ページ数=5MB/64KB=80ページ
となる。これらにより、
第1モードでのメモリログ書き出し時間=3×最大ページ数×ライト時間
=3×80ページ×(5〜6/60)sec
=20〜24sec
となる。
時間B=25sec×([使用ページ数]/80ページ) ・・・(6)
そして、ログ制御部(比較部)13は、上述の如く求めた時間Aと時間Bとを比較することで、メモリログを従来処理で書き出し可能かどうかを判定する。判定の結果は、処理フラグとして設定され、例えば、メモリ20の所定の領域等に記憶される。
上述の如く構成された実施形態の一例としてのストレージシステム1の変形例におけるメモリログ書き出し手法を、図8に示すフローチャート(ステップB1〜B7,A2〜A4,A17)に従って説明する。なお、図中、既述の符号と同一の符号のステップは、同一の処理を示しているので、その詳細な説明は省略する。
そして、ログ制御部13は、ステップB2において、時間Aと時間Bとを比較して、時間Aが時間Bよりも大きいか否かを判断する。時間Aが時間Bよりも大きい場合には(ステップB2のYESルート参照)、ステップB3において、メモリログをバックアップ用メモリ30に書き出すためにバッテリ放電残り時間が充分にあると判断される。ログ制御部13は、処理フラグとして第1モードを設定する。
その後、ステップA2〜A4が行なわれた後、ステップB5において、ログ制御部13は、処理フラグに第1モードを示す値が設定されているか否かを判断する。処理フラグが第1モードを示す場合には(ステップB5のYESルート参照)、ステップB6において第1モードでのログデータの書き出し処理が行なわれる。すなわち、図6のステップA6〜A13の処理が行なわれる。
その後、ステップA14において、ログ制御部13は、未処理のタイプの有無を確認する。
一方、バッテリ放電残り時間がメモリログ書き出し時間以下の場合には、第1モードではメモリログをバックアップ用メモリ30に書き出すためにバッテリ放電残り時間が足りないと判断できるので、ログ制御部13は、短時間でログ書き出しを行なうことができる第2モードでログ書き出しを行なうことで信頼性を向上させることができる。
上述した、電源制御部11,キャッシュ制御部12及びログ制御部13としての機能を実現するためのプログラムは、例えばフレキシブルディスク,CD(CD−ROM,CD−R,CD−RW等),DVD(DVD−ROM,DVD−RAM,DVD−R,DVD+R,DVD−RW,DVD+RW,HD DVD等),ブルーレイディスク,磁気ディスク,光ディスク,光磁気ディスク等の、コンピュータ読取可能な記録媒体に記録された形態で提供される。そして、コンピュータはその記録媒体からプログラムを読み取って内部記憶装置または外部記憶装置に転送し格納して用いる。又、そのプログラムを、例えば磁気ディスク,光ディスク,光磁気ディスク等の記憶装置(記録媒体)に記録しておき、その記憶装置から通信経路を介してコンピュータに提供してもよい。
なお、本実施形態において、コンピュータとは、ハードウェアとオペレーティングシステムとを含む概念であり、オペレーティングシステムの制御の下で動作するハードウェアを意味している。又、オペレーティングシステムが不要でアプリケーションプログラム単独でハードウェアを動作させるような場合には、そのハードウェア自体がコンピュータに相当する。ハードウェアは、少なくとも、CPU等のマイクロプロセッサと、記録媒体に記録されたコンピュータプログラムを読み取るための手段とをそなえており、本実施形態においては、CM101がコンピュータとしての機能を有している。
例えば、図1に示す例においては、1つのCM101を示しているが、これに限定されるものではなく、ストレージ装置100に2以上のCM101を備えることで冗長化してもよい。
(D)付記
(付記1)
第1の記憶媒体と、
管理情報を前記第1の記憶媒体に格納するために要するページ数を算出する算出部と、
前記算出したページ数に相当するページをフリーページとして設定し、設定した前記フリーページに前記管理情報を格納することで前記第1の記憶媒体に前記管理情報を格納する格納処理部と、
前記第1の記憶媒体における前記管理情報の格納位置を示す位置管理情報を更新する処理を行なう更新処理部と、
を備えることを特徴とする、情報処理装置。
第2の記憶媒体を備え、
前記格納処理部が、
前記管理情報を前記第2の記憶媒体に格納し、当該第2の記憶媒体に格納した前記管理情報を前記フリーページに格納する
ことを特徴とする、付記1記載の情報処理装置。
前記算出部が、前記管理情報のデータサイズを前記ページのサイズで除算して、前記ページ数を算出する
ことを特徴とする、付記1又は2記載の情報処理装置。
(付記4)
主電源の電源断状態において電力供給を行なうバックアップ電源を備え、
前記バックアップ電源による動作中の場合に、前記算出部,前記格納処理部及び前記更新処理部が機能する
ことを特徴とする、付記1〜3のいずれか1項に記載の情報処理装置。
既に管理情報に対して割り当てられている1つのページを新たな管理情報に対して割り当て、当該割り当てに応じて前記位置管理情報を更新し、前記新たな管理情報を前記1つのページに格納することで前記第1の記憶媒体に前記管理情報を格納し、当該格納に応じて前記位置管理情報を更新した場合での前記管理情報の前記第1の記憶媒体への格納処理に要する予測時間が、前記バックアップ電源の放電残り時間のうち、前記管理情報の前記第1の記憶媒体への格納に割り当て可能な時間以上の場合に、前記算出部,前記格納処理部及び前記更新処理部による、前記管理情報の前記第1の記憶媒体への格納処理を行なうことを特徴とする、付記4記載の情報処理装置。
管理情報を第1の記憶媒体に格納する格納処理方法であって、
前記管理情報を前記第1の記憶媒体に格納するために要するページ数を算出する処理と、
前記算出したページ数に相当するページをフリーページとして設定し、設定した前記フリーページに前記管理情報を格納することで前記第1の記憶媒体に前記管理情報を格納する処理と、
前記第1の記憶媒体における前記管理情報の格納位置を示す位置管理情報を更新する処理と、
を備えることを特徴とする、格納処理方法。
前記管理情報を第2の記憶媒体に格納し、当該第2の記憶媒体に格納した前記管理情報を前記フリーページに格納する
ことを特徴とする、付記6記載の格納処理方法。
(付記8)
前記管理情報のデータサイズを前記ページのサイズで除算して、前記ページ数を算出する
ことを特徴とする、付記6又は7記載の格納処理方法。
主電源の電源断状態において電力供給を行なうバックアップ電源による動作中の場合に、
前記ページ数を算出する処理と、前記第1の記憶媒体に前記管理情報を格納する処理と、前記位置管理情報を更新する処理とを行なう
ことを特徴とする、付記6〜8のいずれか1項に記載の格納処理方法。
既に管理情報に対して割り当てられている1つのページを新たな管理情報に対して割り当て、当該割り当てに応じて前記位置管理情報を更新し、前記新たな管理情報を前記1つのページに格納することで前記第1の記憶媒体に前記管理情報を格納し、当該格納に応じて前記位置管理情報を更新した場合での前記管理情報の前記第1の記憶媒体への格納処理に要する予測時間が、前記バックアップ電源の放電残り時間のうち、前記管理情報の前記第1の記憶媒体への格納に割り当て可能な時間以上の場合に、前記ページ数を算出する処理と、前記第1の記憶媒体に前記管理情報を格納する処理と、前記位置管理情報を更新する処理とを行なうことを特徴とする、付記9記載の格納処理方法。
第1の記憶媒体を有するコンピュータにおいて、
管理情報を前記第1の記憶媒体に格納するために要するページ数を算出する処理と、
前記算出したページ数に相当するページをフリーページとして設定し、設定した前記フリーページに前記管理情報を格納することで前記第1の記憶媒体に前記管理情報を格納する処理と、
前記第1の記憶媒体における前記管理情報の格納位置を示す位置管理情報を更新する処理と、
を前記コンピュータに実行させることを特徴とするプログラム。
前記管理情報を第2の記憶媒体に格納し、当該第2の記憶媒体に格納した前記管理情報を前記フリーページに格納する
処理を前記コンピュータに実行させることを特徴とする、付記11記載のプログラム。
(付記13)
前記管理情報のデータサイズを前記ページのサイズで除算して、前記ページ数を算出する
処理を前記コンピュータに実行させることを特徴とする、付記11又は12記載のプログラム。
主電源の電源断状態において電力供給を行なうバックアップ電源による動作中の場合に、
前記ページ数を算出する処理と、前記第1の記憶媒体に前記管理情報を格納する処理と、前記位置管理情報を更新する処理と
を前記コンピュータに実行させることを特徴とする、付記11〜13のいずれか1項に記載のプログラム。
既に管理情報に対して割り当てられている1つのページを新たな管理情報に対して割り当て、当該割り当てに応じて前記位置管理情報を更新し、前記新たな管理情報を前記1つのページに格納することで前記第1の記憶媒体に前記管理情報を格納し、当該格納に応じて前記位置管理情報を更新した場合での前記管理情報の前記第1の記憶媒体への格納処理に要する予測時間が、前記バックアップ電源の放電残り時間のうち、前記管理情報の前記第1の記憶媒体への格納に割り当て可能な時間以上の場合に、前記ページ数を算出する処理と、前記第1の記憶媒体に前記管理情報を格納する処理と、前記位置管理情報を更新する処理とを前記コンピュータに実行させることを特徴とする、付記14記載のプログラム。
第1の記憶媒体を有するコンピュータにおいて、
管理情報を前記第1の記憶媒体に格納するために要するページ数を算出する処理と、
前記算出したページ数に相当するページをフリーページとして設定し、設定した前記フリーページに前記管理情報を格納することで前記第1の記憶媒体に前記管理情報を格納する処理と、
前記第1の記憶媒体における前記管理情報の格納位置を示す位置管理情報を更新する処理と、
を前記コンピュータに実行させることを特徴とするプログラムを記録したコンピュータ読取可能な記録媒体。
3 記憶装置
10 CPU
11 電源制御部
12 キャッシュ制御部
13 ログ制御部
20 メモリ
21 RAIDキャッシュ
22 メモリログ域
23 ライト用バッファ
30 バックアップ用メモリ
40 BPSU
41 バッテリ
51 フロントエンド
52 バックエンド
100 ストレージ装置(情報処理装置)
101 CM(コンピュータ)
Claims (7)
- 第1の記憶媒体と、
管理情報を前記第1の記憶媒体に格納するために要するページ数を算出する算出部と、
前記算出したページ数に相当するページをフリーページとして設定し、設定した前記フリーページに前記管理情報を格納することで前記第1の記憶媒体に前記管理情報を格納する格納処理部と、
前記第1の記憶媒体における前記管理情報の格納位置を示す位置管理情報を更新する処理を行なう更新処理部と、
を備えることを特徴とする、情報処理装置。 - 第2の記憶媒体を備え、
前記格納処理部が、
前記管理情報を前記第2の記憶媒体に格納し、当該第2の記憶媒体に格納した前記管理情報を前記フリーページに格納する
ことを特徴とする、請求項1記載の情報処理装置。 - 前記算出部が、前記管理情報のデータサイズを前記ページのサイズで除算して、前記ページ数を算出する
ことを特徴とする、請求項1又は2記載の情報処理装置。 - 主電源の電源断状態において電力供給を行なうバックアップ電源を備え、
前記バックアップ電源による動作中の場合に、前記算出部,前記格納処理部及び前記更新処理部が機能する
ことを特徴とする、請求項1〜3のいずれか1項に記載の情報処理装置。 - 既に管理情報に対して割り当てられている1つのページを新たな管理情報に対して割り当て、当該割り当てに応じて前記位置管理情報を更新し、前記新たな管理情報を前記1つのページに格納することで前記第1の記憶媒体に前記管理情報を格納し、当該格納に応じて前記位置管理情報を更新した場合での前記管理情報の前記第1の記憶媒体への格納処理に要する予測時間が、前記バックアップ電源の放電残り時間のうち、前記管理情報の前記第1の記憶媒体への格納に割り当て可能な時間以上の場合に、前記算出部,前記格納処理部及び前記更新処理部による、前記管理情報の前記第1の記憶媒体への格納処理を行なうことを特徴とする、請求項4記載の情報処理装置。
- 管理情報を第1の記憶媒体に格納する格納処理方法であって、
前記管理情報を前記第1の記憶媒体に格納するために要するページ数を算出する処理と、
前記算出したページ数に相当するページをフリーページとして設定し、設定した前記フリーページに前記管理情報を格納することで前記第1の記憶媒体に前記管理情報を格納する処理と、
前記第1の記憶媒体における前記管理情報の格納位置を示す位置管理情報を更新する処理と、
を備えることを特徴とする、格納処理方法。 - 第1の記憶媒体を有するコンピュータにおいて、
管理情報を前記第1の記憶媒体に格納するために要するページ数を算出する処理と、
前記算出したページ数に相当するページをフリーページとして設定し、設定した前記フリーページに前記管理情報を格納することで前記第1の記憶媒体に前記管理情報を格納する処理と、
前記第1の記憶媒体における前記管理情報の格納位置を示す位置管理情報を更新する処理と、
を前記コンピュータに実行させることを特徴とするプログラム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012276468A JP6115116B2 (ja) | 2012-12-19 | 2012-12-19 | 情報処理装置、格納処理方法及びプログラム |
US14/075,250 US9152329B2 (en) | 2012-12-19 | 2013-11-08 | Information processing device, storage processing method, and computer readable recording medium having program stored therein |
EP13193059.6A EP2746951A2 (en) | 2012-12-19 | 2013-11-15 | Information processing device, storage processing method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012276468A JP6115116B2 (ja) | 2012-12-19 | 2012-12-19 | 情報処理装置、格納処理方法及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014120092A true JP2014120092A (ja) | 2014-06-30 |
JP6115116B2 JP6115116B2 (ja) | 2017-04-19 |
Family
ID=49596114
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012276468A Expired - Fee Related JP6115116B2 (ja) | 2012-12-19 | 2012-12-19 | 情報処理装置、格納処理方法及びプログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US9152329B2 (ja) |
EP (1) | EP2746951A2 (ja) |
JP (1) | JP6115116B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018128939A (ja) * | 2017-02-10 | 2018-08-16 | 富士通株式会社 | ストレージ制御装置、ストレージ制御プログラムおよびストレージ制御方法 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10228875B2 (en) * | 2013-12-24 | 2019-03-12 | Feitian Technologies Co., Ltd. | Data writing and reading methods for flash |
US9471237B1 (en) * | 2015-02-04 | 2016-10-18 | Amazon Technologies, Inc. | Memory consumption tracking |
JP2017130849A (ja) * | 2016-01-21 | 2017-07-27 | 富士通株式会社 | 伝送装置、及び、障害検出方法 |
KR102208058B1 (ko) * | 2016-11-04 | 2021-01-27 | 삼성전자주식회사 | 저장 장치 및 이를 포함하는 데이터 처리 시스템 |
JP2019135635A (ja) * | 2018-02-05 | 2019-08-15 | ファナック株式会社 | プログラム記憶装置及びプログラム記憶システム |
CN110018773B (zh) * | 2019-03-29 | 2020-10-13 | 东莞华贝电子科技有限公司 | 写号方法、系统、装置及可读存储介质 |
JP7358287B2 (ja) * | 2020-03-30 | 2023-10-10 | キオクシア株式会社 | 半導体記憶装置及びその制御方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05158783A (ja) * | 1991-12-11 | 1993-06-25 | Fujitsu Ltd | メモリブロック制御方式 |
JPH07111092A (ja) * | 1993-10-12 | 1995-04-25 | Nec Corp | 不揮発性半導体記憶装置の制御方法 |
WO2008018258A1 (fr) * | 2006-08-09 | 2008-02-14 | Hitachi Ulsi Systems Co., Ltd. | Dispositif de stockage |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3960985B2 (ja) | 2004-03-31 | 2007-08-15 | 株式会社日立国際電気 | データ記憶装置 |
US7403945B2 (en) * | 2004-11-01 | 2008-07-22 | Sybase, Inc. | Distributed database system providing data and space management methodology |
JP2008077669A (ja) | 2007-10-09 | 2008-04-03 | Mitsubishi Electric Corp | 記録方式 |
-
2012
- 2012-12-19 JP JP2012276468A patent/JP6115116B2/ja not_active Expired - Fee Related
-
2013
- 2013-11-08 US US14/075,250 patent/US9152329B2/en not_active Expired - Fee Related
- 2013-11-15 EP EP13193059.6A patent/EP2746951A2/en not_active Withdrawn
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05158783A (ja) * | 1991-12-11 | 1993-06-25 | Fujitsu Ltd | メモリブロック制御方式 |
JPH07111092A (ja) * | 1993-10-12 | 1995-04-25 | Nec Corp | 不揮発性半導体記憶装置の制御方法 |
WO2008018258A1 (fr) * | 2006-08-09 | 2008-02-14 | Hitachi Ulsi Systems Co., Ltd. | Dispositif de stockage |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018128939A (ja) * | 2017-02-10 | 2018-08-16 | 富士通株式会社 | ストレージ制御装置、ストレージ制御プログラムおよびストレージ制御方法 |
US10642674B2 (en) | 2017-02-10 | 2020-05-05 | Fujitsu Limited | Storage control device with power failure processing and abnormality processing |
Also Published As
Publication number | Publication date |
---|---|
US9152329B2 (en) | 2015-10-06 |
US20140173233A1 (en) | 2014-06-19 |
EP2746951A2 (en) | 2014-06-25 |
JP6115116B2 (ja) | 2017-04-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6115116B2 (ja) | 情報処理装置、格納処理方法及びプログラム | |
US10459639B2 (en) | Storage unit and storage system that suppress performance degradation of the storage unit | |
JP5906966B2 (ja) | 制御装置、電力供給装置及び電力制御方法 | |
JP6307537B2 (ja) | Ssd環境のための適応的raid | |
KR101821001B1 (ko) | Raid 어레이에서 장치내 데이터 보호 | |
KR101824286B1 (ko) | 적응적 지오메트리를 구비한 raid 어레이에서의 복원 판독 | |
JP6097845B2 (ja) | 不揮発性キャッシュメモリにデータをバックアップするストレージシステム | |
US20100077252A1 (en) | Systems and Methods for Detection, Isolation, and Recovery of Faults in a Fail-in-Place Storage Array | |
US20080082744A1 (en) | Storage system having data comparison function | |
US20090046512A1 (en) | Reliability System for Use with Non-Volatile Memory Devices | |
US20100287408A1 (en) | Mass storage system and method of operating thereof | |
JP6515752B2 (ja) | ストレージ制御装置、制御方法、および制御プログラム | |
US9841928B2 (en) | Storage control apparatus and computer readable storage medium | |
JP2014137711A (ja) | ストレージ装置、バックアッププログラム、およびバックアップ方法 | |
US10176065B2 (en) | Intelligent failure prediction and redundancy management in a data storage system | |
US20140281316A1 (en) | Data management device and method for copying data | |
JP5910213B2 (ja) | ストレージシステム、ストレージ制御方法およびストレージ制御プログラム | |
CN104871139A (zh) | 硬驱动器备份 | |
JP5949816B2 (ja) | キャッシュ制御装置及びその制御方法、ストレージ装置、並びにコンピュータ・プログラム | |
JP6802484B2 (ja) | ストレージ制御装置、ストレージ制御プログラムおよびストレージ制御方法 | |
US10133640B2 (en) | Storage apparatus and storage system | |
WO2016139774A1 (ja) | 情報処理装置、情報処理システム | |
JP7131324B2 (ja) | ストレージアクセス制御装置、ストレージアクセス制御方法、及び、ストレージアクセス制御プログラム | |
JP5643238B2 (ja) | ディスクアレイ制御装置、ディスクアレイ装置、及び、ディスクアレイ制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150804 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20160615 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160712 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160912 |
|
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: 20170221 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170306 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6115116 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |