JP2005004869A - 記録装置、記録データ管理方法、及びプログラム - Google Patents
記録装置、記録データ管理方法、及びプログラム Download PDFInfo
- Publication number
- JP2005004869A JP2005004869A JP2003166344A JP2003166344A JP2005004869A JP 2005004869 A JP2005004869 A JP 2005004869A JP 2003166344 A JP2003166344 A JP 2003166344A JP 2003166344 A JP2003166344 A JP 2003166344A JP 2005004869 A JP2005004869 A JP 2005004869A
- Authority
- JP
- Japan
- Prior art keywords
- data
- track
- hard disk
- recording
- read
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
【課題】ハードディスクのデータの消失を防止する記録装置の提供。
【解決手段】ハードディスク12を有する記録装置10は、ハードディスク12にデータを読み書きする読み書き部14と、読み書き部14によるハードディスク12へのデータの最終更新日をハードディスク12のトラック単位で格納するトラック履歴格納部18と、最終更新日からの経過日数が所定のしきい値を超過したトラックのデータを、読み書き部14に更新させる更新制御部20とを備える。
【選択図】 図1
【解決手段】ハードディスク12を有する記録装置10は、ハードディスク12にデータを読み書きする読み書き部14と、読み書き部14によるハードディスク12へのデータの最終更新日をハードディスク12のトラック単位で格納するトラック履歴格納部18と、最終更新日からの経過日数が所定のしきい値を超過したトラックのデータを、読み書き部14に更新させる更新制御部20とを備える。
【選択図】 図1
Description
【0001】
【発明の属する技術分野】
本発明は、ハードディスクを有する記録装置、ハードディスクの記録データを管理する記録データ管理方法、及びプログラムに関する。
【0002】
【従来の技術】
ハードディスクによるデータ記録の信頼性を向上させる技術として、複数のハードディスクを冗長化された1台のハードディスクとして管理するRAIDが普及している。例えばRAIDにおいて、特定のハードディスクで読み出しエラーが起こった場合、他のディスクのデータを用いてデータを修復し、リアサインをして別のトラックに書き込む(例えば、特許文献1参照。)。
【0003】
【特許文献1】
特許第3127121号公報(段落0007)
【0004】
【発明が解決しようとする課題】
しかしながら、RAIDであっても、2台以上のハードディスクが同時に故障した場合にはデータの修復が不可能であり、そのような場合にはデータが消失する可能性があるという課題があった。
【0005】
そこで本発明は、上記の課題を解決することのできる記録装置、記録データ管理方法、及びプログラムを提供することを目的とする。この目的は特許請求の範囲における独立項に記載の特徴の組み合わせにより達成される。また従属項は本発明の更なる有利な具体例を規定する。
【0006】
【課題を解決するための手段】
即ち、本発明の第1の形態によると、ハードディスクを有する記録装置は、ハードディスクにデータを書き込む書込部と、書込部によるハードディスクへのデータの最終更新日をハードディスクのトラック単位で格納するトラック履歴格納部と、最終更新日からの経過日数を示す更新経過日数が所定のしきい値を超過したトラックのデータを、書込部に更新させる更新制御部とを備える。
【0007】
また、本発明の第2の形態によると、ハードディスクを有する記録装置は、前記ハードディスクにデータを書き込む書込部と、前記データの最終更新日以降に、隣接するトラックでデータが更新された回数を示す隣接トラック更新回数を、前記トラック単位で格納するトラック履歴格納部と、前記隣接トラック更新回数が所定のしきい値を超過した前記トラックの前記データを、前記書込部に更新させる更新制御部とを備える。
【0008】
ハードディスクにおいて、データを書き込むべきトラックとデータを書き込む物理ヘッドとの位置ずれ量を取得するトラック追従誤差取得部と、位置ずれ量が所定の基準を超えている場合に、所定のしきい値を小さく変更するしきい値決定部とを更に備えてもよい。
【0009】
また、第1又は第2の形態に於いて、ハードディスクからデータを読み出す読み出し部を更に備え、トラック履歴格納部は、データの最終更新日以降に、読み出し部がデータを読み出した回数と、データ読み出し時に読み出しエラーが発生した回数とを、ハードディスクのトラック単位で更に格納し、更に、データを読み出した回数に対する、読み出しエラーが発生した回数の比率を示す読み出しエラー発生率が、所定のしきい値を超過したトラックに関して、更新経過日数又は隣接トラック更新回数に対するしきい値を小さく変更するしきい値決定部を備えてもよい。
【0010】
トラック履歴格納部は、データを読み出した回数と、読み出しエラーが発生した回数とを、ハードディスクの一面にデータを読み書きする物理ヘッドに更に対応付けて格納し、しきい値決定部は、同一の物理ヘッドによる読み出しエラー発生率が所定のしきい値を超過し、かつ、当該読み出しエラー発生率に、トラックに依存した偏りがないと判断した場合に、当該物理ヘッドが書き込みを行うすべてのトラックに関して、更新経過日数又は隣接トラック更新回数に対するしきい値を小さく変更してもよい。
【0011】
エラー履歴格納部は、データを読み出した回数と、読み出しエラーが発生した回数とを、更にハードディスクの記録面に対応付けて格納し、しきい値決定部は、同一の記録面における読み出しエラー発生率が所定のしきい値を超過し、かつ、当該読み出しエラー発生率に、トラックに依存した偏りがないと判断した場合に、当該記録面のすべてのトラックに関して、更新経過日数又は隣接トラック更新回数に対するしきい値を小さく変更してもよい。
【0012】
しきい値決定部が、読み出しエラー発生率に基づいてしきい値を変更した結果、当該しきい値が予め定められた下限値を下回ったトラックを含むハードディスクの交換を要求するメッセージを出力する交換要求部を更に備えてもよい。
【0013】
また、本発明の第3の形態によると、ハードディスクを有する記録装置は、ハードディスクに対してデータを読み書きする読み書き部と、データの最終更新日以降に、読み書き部がデータを読み出した回数と、データ読み出し時に読み出しエラーが発生した回数とを、ハードディスクのトラック単位で格納するトラック履歴格納部と、データを読み出した回数に対する、読み出しエラーが発生した回数の比率を示す読み出しエラー発生率が、所定のしきい値を超過したトラックのデータを、読み書き部に更新させる更新制御部とを備える。
【0014】
第1、第2、又は第3の形態に於いて、ハードディスクとは別の記録媒体を更に備え、更新制御部は、所定のしきい値を超過したトラックのデータを更に別の記録媒体に書き込む処理を、書込部に実行させてもよい。
【0015】
ハードディスクの温度の履歴を記録する温度履歴記録部と、温度履歴に基づいてハードディスクの磁気保持力の劣化の度合いを算出し、算出した劣化の度合いが大きいほど、しきい値を小さく決定するしきい値決定部とを更に備えてもよい。
【0016】
ハードディスクの動作時間及び非動作時間をそれぞれ記録する動作履歴記録部と、動作時間及び非動作時間に基づいてハードディスクの磁気保持力の劣化の度合いを算出し、算出した劣化の度合いが大きいほど、しきい値を小さく決定するしきい値決定部とをさらに備えてもよい。
【0017】
ハードディスクの情報記録密度を取得するディスク仕様取得部と、情報記録密度が高いほど、しきい値を小さく決定するしきい値決定部とを更に備えてもよい。
【0018】
本発明の第4の形態によれば、記録媒体としてハードディスクを有する記録装置が、記録データを管理する記録データ管理方法は、記録装置が、ハードディスクにデータを書き込む書き込みステップと、書き込みステップにおけるハードディスクへのデータの最終更新日をハードディスクのトラック単位で記録するトラック履歴管理ステップと、最終更新日からの経過日数が所定のしきい値を超過したトラックのデータを更新する更新制御ステップとを備える。
【0019】
本発明の第5の形態によれば、記録媒体としてハードディスクを有する記録装置が、記録データを管理する記録データ管理方法は、記録装置が、ハードディスクにデータを書き込む書き込みステップと、データの最終更新日以降に、隣接するトラックでデータが更新された回数をトラック単位で記録するトラック履歴管理ステップと、隣接するトラックの更新回数が所定のしきい値を超過したトラックのデータを更新する更新制御ステップとを備える。
【0020】
本発明の第6の形態によれば、記録媒体としてハードディスクを有する記録装置が、記録データを管理する記録データ管理方法は、記録装置が、ハードディスクに対してデータを読み書きする読み書きステップと、データの最終更新日以降に、データを読み出した回数と、データ読み出し時に読み出しエラーが発生した回数とを、ハードディスクのトラック単位で記録するトラック履歴記録ステップと、データを読み出した回数に占める、読み出しエラーが発生した回数の割合が、所定のしきい値を超過したトラックのデータを更新する更新制御ステップとを備える。
【0021】
本発明の第7の形態によれば、ハードディスクを有する記録装置用のプログラムは、ハードディスクにデータを書き込む書き込み機能と、書き込み機能によるハードディスクへのデータの最終更新日をハードディスクのトラック単位で記録するトラック履歴管理機能と、最終更新日からの経過日数が所定のしきい値を超過したトラックのデータを、書き込み機能に更新させる更新制御機能とを記録装置に実現させる。
【0022】
本発明の第8の形態によれば、ハードディスクを有する記録装置用のプログラムは、ハードディスクにデータを書き込む書込機能と、データの最終更新日以降に、隣接するトラックでデータが更新された回数をトラック単位で記録するトラック履歴管理機能と、隣接するトラックの更新回数が所定のしきい値を超過したトラックのデータを、書込機能に更新させる更新制御機能とを記録装置に実現させる。
【0023】
本発明の第9の形態によれば、ハードディスクを有する記録装置用のプログラムは、ハードディスクに対してデータを読み書きする読み書き機能と、データの最終更新日以降に、データを読み出した回数と、当該データ読み出し時に読み出しエラーが発生した回数とを、ハードディスクのトラック単位で記録するトラック履歴管理機能と、データを読み出した回数に占める、読み出しエラーが発生した回数の割合が、所定のしきい値を超過したトラックのデータを、読み書き機能に更新させる更新制御機能とを記録装置に実現させる。
【0024】
なお上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではなく、これらの特徴群のサブコンビネーションも又発明となりうる。
【0025】
【発明の実施の形態】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではなく、又実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【0026】
図1は、本実施形態に係る記録装置10の機能構成の一例を示す。記録装置10は、ハードディスクの回復不能な読み出しエラーの発生を未然に防ぐことを目的とする。記録装置10は、ハードディスク12と、ハードディスク12にデータを読み書きする読み書き部14と、読み書き部14によるハードディスク12へのデータの読み書き履歴をハードディスク12のトラック単位で格納するトラック履歴格納部18と、読み書き部14の読み書き動作に基づいてトラック履歴格納部18を更新するトラック履歴更新部16と、トラック単位の読み書き履歴が、データの読み出し信号が劣化した可能性が高いことを示す予め定めた条件を満足した場合に、読み書き部14に当該トラックのデータを更新させる更新制御部20とを備える。なお、読み書き部14は本発明の書込部及び読み出し部の一例である。
【0027】
ハードディスク12は、データが書き込まれた後の経時変化により、読み出し信号が劣化する。従って、データの書き込み履歴を取得することにより、読み出し信号の劣化の度合いを予測することができる。すなわち、記録装置10は、上記の構成により、トラック単位の読み書き履歴に基づいて、読み出し信号の劣化の度合いを予測し、劣化の度合いが一定のレベルに達したと予測されるトラックのデータを更新することができる。これにより、回復不能な読み出しエラーの発生を未然に防ぐことができる。
【0028】
記録装置10はさらに、ハードディスク12の温度履歴及び動作履歴をそれぞれ記録する温度/動作履歴記録部30と、データを読み書きすべきトラックに対する物理ヘッドの位置ずれ量、いわゆるトラック追従誤差をハードディスク12から取得するトラック追従誤差取得部28と、ハードディスク12の情報記録密度又はトラック毎の読み出しエラーレートを取得するディスク仕様取得部32と、温度履歴、動作履歴、トラック追従誤差、情報記録密度、及びトラック毎のソフトエラーレートの少なくともいずれかに基づいて、トラック毎のデータ更新の要否を、更新制御部20がトラックの読み書き履歴に基づいて判断する場合の「しきい値」を決定するしきい値決定部26とを備える。温度/動作履歴記録部30は、本発明の温度履歴記録部及び動作履歴記録部の一例である。また、ハードディスク12の動作履歴とは、ハードディスクが回転している状態の履歴である。トラック毎のソフトエラーレートは、例えばハードディスク12の出荷前検査等で、テストパターンの読み書きを繰り返し実行した場合に発生するトラックに固有のソフトエラー発生率であり、ハードディスク12の特性として予め書き込んである。
【0029】
ハードディスク12の読み出し信号は、熱によりさらに劣化する。従って、ハードディスク12の温度履歴から、読み出し信号の劣化の度合いを算出することができる。また、ハードディスク12は動作時、すなわちディスクが回転している状態において、モータの発熱により温度が上昇する。従って、温度履歴に代えて動作履歴からでも、読み出し信号の劣化の度合いを算出することができる。
【0030】
トラック追従誤差は、記録装置10の取り付け方法が適切でない場合等に、外乱の影響を受けて大きくなり易い。トラック追従誤差が大きい、すなわちトラックフォローの精度が悪い状態では、データを書き込むべき位置からヘッドがずれる可能性が高い。このような場合、隣接するトラックの読み出し信号を劣化させる可能性が高い。従って、あるトラックのデータ更新後、隣接するトラックが更新された合計の回数から、当該トラックの読み出し信号の劣化の度合いを予測することができる。
【0031】
また、ハードディスク12は、情報記録密度が高くなるに従ってディスクの磁気保持力が弱くなり、隣り合うビット同士の磁界干渉で読み出し信号が劣化し易くなる。すなわち、情報記録密度が高いディスクほど、読み出し信号が劣化しやすい。
【0032】
従って、記録装置10は、温度履歴、動作履歴、トラック追従誤差、情報記録密度、及びトラック毎のソフトエラーレートの少なくともいずれかに基づいて、適切なしきい値を決定することができる。従って、記録装置10は、トラック毎のデータ更新を的確なタイミングで実行することができる。
【0033】
なお、トラック追従誤差取得部28は、ヘッドを移動させるモータの電流を、ヘッドから読み出されるトラック位置をもとに制御することによって、トラックフォローを実現するフィードバック制御部であってもよい。
【0034】
ディスク仕様取得部32は、ハードディスク12の型式番号を取得し、型式番号に基づいてハードディスク12の情報記録密度を判断してもよい。この場合、ディスク仕様取得部32は、型式番号と情報記録密度の対応表を予め記憶している。ハードディスク12が交換可能である場合、ディスク仕様取得部32は、ハードディスク12が交換される度に型式番号を読み出し、情報記録密度を更新する。
【0035】
記録装置10はさらに、更新制御部20が更新させるべきトラックのトラック番号を、更新ステータスファイルとして格納している更新ステータス格納部22を更に備えている。更新ステータスファイルは、ハードディスク12のいずれかのトラックが更新中であるか否かのステータスを含む。更新ステータス格納部22は、更新ステータスファイルを不揮発性メモリに格納する。
【0036】
したがって、更新制御部20の制御に基づく更新処理が、例えば予期せぬ電源断などによって中断した場合であっても、更新ステータス格納部22を参照することにより、中断直前の更新状態を把握することができる。これにより、更新制御部20は、更新処理を継続する為に必要な最小限のロールバックを実行することができる。従って記録装置10は、更新処理が中断した場合であっても適切な状態から更新処理を再開することができる。
【0037】
記録装置10はさらに、温度履歴及び情報記録密度に応じた適切なしきい値がトラック履歴の診断項目毎に予め設定されている「しきい値表」を格納するしきい値表格納部24を備える。しきい値決定部26は、温度/動作履歴記録部30から読み出す温度履歴又は動作履歴、及びディスク仕様取得部32から読み出す情報記録密度又は、トラック毎のソフトエラーレートに基づいて、適切なしきい値を容易に決定することができる。
【0038】
記録装置10はさらに、ハードディスク12とは別の、独立した記録媒体である予備ディスク34を更に備える。更新制御部20は、読み出し信号が劣化したトラックのデータを読み書き部14に更新させる場合、同一のデータを更に予備ディスク34にも書き込ませる。これにより、トラック毎のデータ更新にもかかわらず、読み出しエラーが発生した場合であっても、データの消失を防止するとができる。
【0039】
また、トラック履歴格納部18はさらに、ハードディスク12の実使用中における読み出しエラーの発生履歴をトラック単位で格納する。例えば、読み書き部14によるトラックの最終更新日以降に各トラックからデータを読み出した回数と、各トラックおける読み出し時に読み出しエラーが発生した回数とを読み書き部14が計測し、計測結果をトラック履歴更新部16がトラック履歴格納部18に書き込む。更新制御部20又はしきい値決定部26は、当該計測結果をトラック履歴格納部18から読み出し、各トラックにおけるデータの読み出し回数に対する読み出しエラーの発生回数の比率、すなわちトラック毎の読み出しエラー発生率を算出する。更新制御部20は、当該読み出しエラー発生率が所定のしきい値を超過したトラックのデータを更新する。また、トラック毎の読み出しエラー発生率をディスク上の他のトラックと比較することにより、読み出しエラーの局所性を判断することができる。しきい値決定部26は、読み出しエラーの発生頻度が局所的に高いトラックのしきい値を低く変更することによって、読み出しエラーの発生頻度を低減することもできる。
【0040】
記録装置10はさらに、しきい値決定部26が決定した複数のしきい値のいずれかが、予め定められた下限値を下回った場合に、ハードディスク12の交換を要求する交換要求部40を備える。これにより、データ保持の信頼性が低下したハードディスク12の交換が促進され、もって、記録装置10のデータ記録の信頼性を高めることができる。また、読み書き部14は、ディスク仕様取得部32から取得したトラック毎のソフトエラーレートが所定の基準値を超過している場合に、当該トラックへのデータの書き込みを禁止する。
【0041】
記録媒体60は、ハードディスク12、読み書き部14、トラック履歴更新部16、トラック履歴格納部18、更新制御部20、更新ステータス格納部22、しきい値表格納部24、しきい値決定部26、トラック追従誤差取得部28、温度/動作履歴記録部30、ディスク仕様取得部32、予備ディスク34、エラー履歴格納部38、及び交換要求部40の機能を記録装置10に実現させるプログラムを格納している。記録媒体60は、そのようなプログラムを例えばネットワーク経由で取得してもよい。
【0042】
図2は、トラック履歴ファイルのデータフォーマットの一例を示す。トラック履歴ファイルは、読み書き部14によるハードディスク12へのデータの読み書き履歴をハードディスク12のトラック及び物理ヘッド単位で管理している。読み書き履歴は、例えばデータの最終更新日、最終更新日以降に両隣のトラックでデータが更新された合計回数(以下、隣接トラック更新回数)、データの最終更新日以降に、読み書き部14がデータを読み出した回数、及び読み書き部14によるデータ読み出し時に読み出しエラーが発生した回数である。更新制御部20及びしきい値決定部26は、トラック履歴格納部18に格納されたトラック履歴ファイルを参照することにより、トラック毎の読み書きの履歴を容易に確認することができる。トラック履歴ファイルは、データの読み書き履歴を、物理ヘッド番号に代えてハードディスク12の記録面の番号に対応付けて管理してもよい。更新制御部20及びしきい値決定部26は、トラック履歴ファイルを読み出すことにより、読み出しエラーの発生率に、ハードディスク12の記録面に依存した局所性があるか否かを判断することができる。
【0043】
図3は、更新ステータスファイルのデータフォーマットの一例を示す。更新ステータスファイルは、更新制御部20が更新させるべきトラックのトラック番号と、いずれかのトラックが更新中であるか否かのステータスを含む。本実施例においては、いずれかのトラックが更新中であるか否かのステータスを「WRITE BIT」ON(更新中)/OFF(非更新中)で示す。更新制御部20は、更新処理が中断した場合であっても、更新ステータス格納部22に格納されている更新ステータスファイルを参照することによって、適切な状態から更新処理を再開することができる。
【0044】
図4は、しきい値表のデータフォーマットの一例を示す。しきい値表は、熱負荷及び情報記録密度に応じた適切なしきい値が予め設定されている。しきい値は、トラック毎の読み出し信号の劣化を診断する複数の項目に分けて設定されている。複数の診断項目は、例えば、最終更新日からの経過日数を示す「更新経過日数」、及び最終更新日以降の「隣接トラック更新回数」等である。
【0045】
しきい値表は、ディスクの磁気保持力を劣化させる熱負荷の度合いが大きいほど、それぞれの診断項目に対して小さいしきい値を割り当てている。本実施例では、熱負荷を2段階のレベルに分けており、レベル2はレベル1よりも熱負荷が大きい。しきい値表はさらに、ハードディスク12の情報記録密度が高いほど、それぞれの診断項目に対して小さいしきい値を割り当てている。これにより、情報記録密度が高くなるほど読み出し信号が劣化し易くなるというハードディスクの特性を適切に反映したしきい値が設定される。情報記録密度はトラック密度(TPI)、線記録密度(BPI)、及び面記録密度(bpsi)の少なくともいずれかを用いる。しきい値決定部26は、熱負荷の度合い及び情報記録密度に基づいてしきい値表格納部24を参照することによって、適切なしきい値を容易に決定することができる。
【0046】
図5は、記録装置10によるデータ管理動作の一例を示す。本フローは、例えば、記録装置10の電源投入と共にスタートする。まず、更新制御部20は、更新ステータス格納部22における更新ステータスファイルを読み出し、「WRITE BIT」のステータス及びトラック番号を取得する。更新制御部20は、取得したトラック番号をTとして記憶する(S12)。次に、更新制御部20は「WRITE BIT」のステータスがONであるか否かを判断する(S14)。「WRITE BIT」のステータスがONであると判断した場合(S14:Yes)、ステップ28に進む。
【0047】
「WRITE BIT」のステータスがONでないと判断した場合(S14:No)、トラック履歴更新部16は、読み書き部14にホストからの読み出し指令が入力されたか否かを判断する(S16)。読み書き部14は、ホストからの読み出し指令が入力された場合、当該読み出し指令に従って、該当するトラックに記録されたデータの読み出しを試行する。このとき、読み出しエラーが発生したか否かを判断し(S17)、読み出しエラーが発生したと判断した場合(S17:Yes)、トラック履歴格納部18に記録されている「読み出しエラー発生回数」に今回発生した読み出しエラーの発生回数を加算して書き込む(S18)。例えば、一回の読み出しに際して、3回のリトライの結果データを読み出した場合、読み出しエラーの発生回数を3回分加算する。すなわち、エラー履歴ファイルにおける、該当トラック番号に対応付けられた「読み出しエラー回数」に1を加算する。そしてステップ16に戻る。一方、読み出しエラーが発生していないと判断した場合(S17:No)、ステップ16に戻る。
【0048】
一方、読み書き部14にホストからの読み出し指令が入力されていないと判断した場合(S16:No)、トラック履歴更新部16は、書き込み指令が入力されたか否かを判断する(S20)。読み書き部14は、ホストからの書き込み指令が入力された場合、当該書き込み指令に従って、該当するトラックにデータを書き込む。
【0049】
トラック履歴更新部16は、読み書き部14にホストからの書き込み指令が入力されたと判断した場合(S20:Yes)、トラック履歴格納部18におけるトラック履歴ファイルのうち、該当するトラックの「最終更新日」を更新し(S22)、さらに当該トラックに隣接するトラックの「隣接トラック更新回数」に1を加え(S24)、ステップ16に戻る。
【0050】
一方、読み書き部14にホストからの書き込み指令が入力されていないと判断された場合(S20:No)、更新制御部20は、ホストのIDLE時間、もしくはハードディスク12のデータ消失を防止する「予防措置」がスケジュールされた時間であるか否かを判断する(S26)。ホストのIDLE時間、もしくは「予防措置」がスケジュールされた時間ではないと判断した場合(S26:No)、ステップ16に戻る。
【0051】
一方、ホストのIDLE時間、もしくは「予防措置」がスケジュールされた時間であると判断した場合(S26:Yes)、更新制御部20は、読み出し信号が劣化したトラックのデータを更新する「予防措置フロー」(S28)を実行する。以上で本フローは終了する。
【0052】
図6は、図5における予防措置フロー(S28)の詳細を示す。更新制御部20はまず、図5のステップ12で読み出した「更新ステータスファイル」のトラック番号Tを呼び出す(S100)。次に、更新制御部20は、ステップ12で読み出した「WRITE BIT」のステータスがONであるか否かを判断する(S102)。「WRITE BIT」のステータスがONであると判断した場合(S102:Yes)、ステップ120に進む。
【0053】
一方、「WRITE BIT」のステータスがONでないと判断した場合(S102:No)、更新制御部20は、ハードディスク12の最終トラック番号をNとする(S104)。そして更新制御部20は、読み出し信号の劣化の度合いをトラック毎に判断し、更新が必要と判断したトラックのデータをトラック毎に更新する。
【0054】
当該更新処理は、以下のステップ106からステップ130までのループ「予防措置」を、TがN以下であるという条件を満たす限り繰り返すことにより実行される。まず、しきい値決定部26は、しきい値決定処理を実行してしきい値を決定する(S108)。次に更新制御部20は、トラック履歴格納部18のトラック履歴ファイルから、トラックTの更新履歴を読み出す(S110)。更新履歴は、トラックTの「最終更新日」、「隣接トラック更新回数」、「読み出し回数」、及び「読み出しエラー発生回数」を含む。更新制御部20は、トラックTの最終更新日から「更新経過日数」を算出する。また、「読み出し回数」に対する「読み出しエラー発生回数」の比率を算出することにより「読み出しエラー発生率」を求める。
【0055】
次に更新制御部20は、トラックTのデータを更新する必要があるか否かを判断する(S112)。例えば、トラックTの「更新経過日数」、「隣接トラック更新回数」、及び「読み出しエラー発生率」のいずれかがしきい値を超過した場合に、トラックTのデータの更新が必要であると判断する。
【0056】
トラックTのデータ更新が必要でないと判断した場合(S112:No)、ステップ126に進む。一方、トラックTのデータ更新が必要であると判断した場合(S112:Yes)、更新制御部20は以下の手順で読み書き部14にトラックTのデータを更新させる。まず、読み書き部14は、トラックTのデータを全て読み出し(S114)、ハードディスク12の予備のトラックであるリザーブトラックに書き込む(S116)。ここで、更新制御部20は、更新ステータスファイルを変更する。すなわち、「WRITE BIT」をONにし、トラック番号をTにする(S118)。この状態で、更新ステータスファイルは、「トラックTのデータが更新中である」旨を示す。
【0057】
次に、読み書き部14は、リザーブトラックに書き込まれているデータを全て、トラックT及び予備ディスク34に書き込む(S120)。次に、更新制御部20は、更新ステータスファイルの「WRITE BIT」をOFFにする(S122)。この状態において、更新ステータスファイルは、「トラックTのデータ更新が完了している」旨を示す。続いて更新制御部20は、トラック履歴ファイルのうち、トラックTの「最終更新日」を更新し(S123)、「隣接トラック更新回数」をゼロクリアする(S124)。
【0058】
次に更新制御部20は、Tに1を加算する(S126)。ここで更新制御部20は、ホストから読み書き部14にノーマルコマンド、すなわち読み書き指令が入力されたか否かを判断する(S128)。ノーマルコマンドが入力されたと判断した場合(S128:Yes)、本フローは終了する。ノーマルコマンドが入力されていないと判断した場合(S128:No)、TがN以下であるという条件を満たす限り、予防措置ループを繰り返す(S130)。そして、TがNを超えた場合、予防措置ループを終了し、Tをゼロクリアする(S132)。以上で本フローは終了する。
【0059】
なお、ステップ120の処理中、すなわちリザーブトラックからトラックTへのデータの書き込み中に、電源断などにより予期せぬ処理中断が起きた場合、トラックTへのデータ書き込みが途中である旨が更新ステータス格納部22の更新ステータスファイルに記録されている。すなわち、更新ステータスファイルは、「WRITE BIT」:ON
トラック番号:T
という状態で記録されている。従って、更新制御部20は、記録装置10の動作が復帰した場合に、更新ステータス格納部22を参照して更新ステータスファイルのステータスを確認する。そして、「WRITE BIT」がONであると判断すると、「予防措置フロー」を起動し、リザーブトラックに記録されている全てのデータをトラックTに書き込む。すなわち前述のステップ120を最初から実行する。以降の動作は、上述のフローと同様なので省略する。
【0060】
図7は、図6におけるしきい値決定処理(S108)の詳細を示す。本フローにおいて、しきい値決定部26は、ハードディスク12の温度履歴、動作履歴、トラック追従誤差、情報記録密度、及びトラック毎のソフトエラーレート、及び読み出しエラーの発生率の少なくともいずれかに基づいて、適切なしきい値を決定する。しきい値決定部26は、まず、温度/動作履歴記録部30からディスクの温度履歴を取得する(S200)。
【0061】
しきい値決定部26は、ディスクの磁気保持力を劣化させる熱負荷のレベルを、ディスクの温度履歴に基づいて判断する(S202)。例えば、ディスクの温度に応じた単位時間あたりの磁気保持力の劣化度合いを予め記憶しておき、ディスクの温度に応じた磁気保持力の劣化の度合いを計測時間で積分する。これにより読み出し信号を劣化させる熱負荷の度合いが算出される。これにより、ディスクの磁気保持力を劣化させる累積的な熱負荷を適切に算出することができる。
【0062】
ステップ200において、しきい値決定部26は温度履歴に代えてハードディスク12の動作履歴を取得してもよい。この場合、しきい値決定部26はステップ202において、熱負荷のレベルを動作履歴に基づいて判断する。例えば、動作時と非動作時のそれぞれのディスク温度における、単位時間あたりの読み出し信号の劣化の度合いを予め記憶しておく。そして、それぞれの劣化の度合いを、動作時間及び非動作時間でそれぞれ積分することにより、熱負荷の度合いを求めることができる。動作時のディスク温度は、例えば、スピンドルモータの発熱によるディスクの温度上昇が収束する温度である。非動作時のディスク温度は、例えば、製品仕様として動作保証している上限温度である。
【0063】
さらに、単位時間あたりの温度変化の大きさ、すなわち温度の微分値を用いて、環境負荷のレベルを判断してもよい。温度の微分値を用いることにより、磁気保持力を劣化させる急激な温度変化を環境負荷のレベルに適切に反映することができる。
【0064】
しきい値決定部26は次に、ディスク仕様取得部32からハードディスク12の情報記録密度を取得する(S204)。次に、熱負荷レベル及び情報記録密度に基づいて、しきい値表格納部24の「しきい値表」を参照することにより、診断項目毎のしきい値を決定する(S206)。ステップ206で決定されるしきい値は、暫定的なしきい値である。
【0065】
次に、ディスク仕様取得部32から、トラックTのソフトエラーレートを取得する(S208)。続いて、トラックTのソフトエラーレートが予め定められた基準値を超過しているか否かを判断する(S210)。トラックTのソフトエラーレートが予め定められた基準値を超過していると判断した場合(S210:Yes)、各しきい値を小さく変更する(S212)。例えば、当該トラックのソフトエラーレートが0.01以上0.05未満であれば、各しきい値を0.75倍に小さくする。ソフトエラーレートは、複数のトラック、例えば10トラックをまとめて1ゾーンとして扱い、ゾーン単位で基準値との比較を行ってもよい。1ゾーンに含まれるトラック数は、任意に設定することができる。しきい値決定部26は、しきい値をゾーン単位で変更してもよい。
【0066】
一方、トラックTのソフトエラーレートが予め定められた基準値を超過していないと判断した場合(S210:No)、トラックTに書き込みを行う物理ヘッドによる読み出しエラーの発生率をトラック履歴格納部18に記録されているヘッド番号毎の「読み出し回数」及び「読み出しエラー発生回数」に基づいて算出する。そして、算出した、当該物理ヘッドによる読み出しエラーの発生率が、予め定められた基準値を超過しているか否かを判断する(S214)。当該物理ヘッドの読み出しエラー発生率が、予め定められた基準値を超過していないと判断した場合(S214:No)、ステップ220に進む。一方、当該物理ヘッドの読み出しエラー発生率が、予め定められた基準値を超過していると判断した場合(S214:Yes)、当該物理ヘッドにおける読み出しエラーの発生率に、トラック番号に依存した偏りがあるか否かを判断する(S216)。
【0067】
当該物理ヘッドによる読み出しエラーの発生率に、トラック番号に依存した偏りがないと判断した場合(S216:No)、しきい値決定部26は、当該物理ヘッドが書き込みを行うすべてのトラックに対して、しきい値を小さく変更する。すなわち、トラックTに対して、各しきい値を小さく変更する(S218)。一方、当該物理ヘッドによる読み出しエラーの発生率に、トラック番号に依存した偏りがあると判断した場合(S216:Yes)、ステップ220に進む。
【0068】
ステップ216における偏りの判断は、例えば以下のように行う。まずトラック履歴格納部18から、トラックTと同一の物理ヘッド番号に属する、「トラック番号」の「読み出しエラー発生回数」、及び「読み出し回数」を全て取得する。次に、「読み出しエラー発生回数」に対する「読み出し回数」の比率を、トラック毎の「読み出しエラー発生率」として算出する。次に、横軸を「読み出しエラー発生率」、縦軸を「トラックの本数」とした分布を求め、「読み出しエラー発生率」の「最頻値」、「平均値」、及び「標準偏差」を求める。そして、「読み出しエラー発生率」の「最大値」が「最頻値」又は「平均値」の何倍であるかを判断する。例えば、「最大値」が「最頻値」又は「平均値」の5倍以内であることを、偏りがない基準とする。あるいは、各トラックの「偏差値」を求め、偏差値の最大値が70以下であることを偏りがない基準としてもよい。
【0069】
次に、しきい値決定部26は、トラック追従誤差取得部28からトラック追従誤差を取得する(S220)。しきい値決定部26は、トラック追従誤差が予め定められた基準値を上回っているか否かを判断する(S222)。
【0070】
トラック追従誤差が予め定められた基準値を上回っていると判断した場合(S222:Yes)、しきい値決定部26は、しきい値のうちの「隣接トラック更新回数」のしきい値を小さく変更、例えば半分の値に変更する(S224)。
【0071】
従って、ステップ222及びステップ224の動作によれば、「隣接トラック更新回数」のしきい値を「トラック追従誤差」に基づいて適切に変更することができる。ステップ222において、物理ヘッドの位置ずれ量が予め定められた基準値を上回っていないと判断した場合、ステップ224をスキップする。次に、交換要求部40は、しきい値決定部26が決定したしきい値のいずれかが、予め定められた下限を下回っているか否かを判断する(S226)。しきい値のいずれも、予め定められた下限を下回っていないと判断した場合(S226:No)、本フローを終了する。一方、しきい値のいずれかが、予め定められた下限を下回っていると判断した場合(S226:Yes)、交換要求部40は、ハードディスク12の交換を要求するメッセージを出力する(S228)。以上で本フローは終了する。
【0072】
以上の動作によれば、しきい値決定部26は、ハードディスク12の条件に応じた適切なしきい値を決定することができる。従って、記録装置10は、トラック毎のデータ更新の要否を的確に判断することができる。
【0073】
上記説明から明らかなように、本実施形態によれば、単体ディスク及びRAIDのいずれであっても、ハードディスクのデータの消失を防止する記録装置、記録データ管理方法、及びプログラムを提供することができる。
【0074】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更又は改良を加えることができる。その様な変更又は改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【図面の簡単な説明】
【図1】記録装置10の機能構成の一例を示すブロック図である。
【図2】トラック履歴ファイルのデータフォーマットの一例を示す。
【図3】更新ステータスファイルのデータフォーマットの一例を示す。
【図4】しきい値表のデータフォーマットの一例を示す。
【図5】記録装置10によるデータ管理動作の一例を示すフローチャートである。
【図6】図5における予防措置フロー(S28)の詳細を示す。
【図7】図6におけるしきい値決定処理(S108)の詳細を示す。
【符号の説明】
10 記録装置、12 ハードディスク、14 読み書き部、16 トラック履歴更新部、18 トラック履歴格納部、20 更新制御部、22 更新ステータス格納部、24 しきい値表格納部、26 しきい値決定部、28 トラック追従誤差取得部、30 温度/動作履歴記録部、32 ディスク仕様取得部、34予備ディスク、40 交換要求部、60 記録媒体
【発明の属する技術分野】
本発明は、ハードディスクを有する記録装置、ハードディスクの記録データを管理する記録データ管理方法、及びプログラムに関する。
【0002】
【従来の技術】
ハードディスクによるデータ記録の信頼性を向上させる技術として、複数のハードディスクを冗長化された1台のハードディスクとして管理するRAIDが普及している。例えばRAIDにおいて、特定のハードディスクで読み出しエラーが起こった場合、他のディスクのデータを用いてデータを修復し、リアサインをして別のトラックに書き込む(例えば、特許文献1参照。)。
【0003】
【特許文献1】
特許第3127121号公報(段落0007)
【0004】
【発明が解決しようとする課題】
しかしながら、RAIDであっても、2台以上のハードディスクが同時に故障した場合にはデータの修復が不可能であり、そのような場合にはデータが消失する可能性があるという課題があった。
【0005】
そこで本発明は、上記の課題を解決することのできる記録装置、記録データ管理方法、及びプログラムを提供することを目的とする。この目的は特許請求の範囲における独立項に記載の特徴の組み合わせにより達成される。また従属項は本発明の更なる有利な具体例を規定する。
【0006】
【課題を解決するための手段】
即ち、本発明の第1の形態によると、ハードディスクを有する記録装置は、ハードディスクにデータを書き込む書込部と、書込部によるハードディスクへのデータの最終更新日をハードディスクのトラック単位で格納するトラック履歴格納部と、最終更新日からの経過日数を示す更新経過日数が所定のしきい値を超過したトラックのデータを、書込部に更新させる更新制御部とを備える。
【0007】
また、本発明の第2の形態によると、ハードディスクを有する記録装置は、前記ハードディスクにデータを書き込む書込部と、前記データの最終更新日以降に、隣接するトラックでデータが更新された回数を示す隣接トラック更新回数を、前記トラック単位で格納するトラック履歴格納部と、前記隣接トラック更新回数が所定のしきい値を超過した前記トラックの前記データを、前記書込部に更新させる更新制御部とを備える。
【0008】
ハードディスクにおいて、データを書き込むべきトラックとデータを書き込む物理ヘッドとの位置ずれ量を取得するトラック追従誤差取得部と、位置ずれ量が所定の基準を超えている場合に、所定のしきい値を小さく変更するしきい値決定部とを更に備えてもよい。
【0009】
また、第1又は第2の形態に於いて、ハードディスクからデータを読み出す読み出し部を更に備え、トラック履歴格納部は、データの最終更新日以降に、読み出し部がデータを読み出した回数と、データ読み出し時に読み出しエラーが発生した回数とを、ハードディスクのトラック単位で更に格納し、更に、データを読み出した回数に対する、読み出しエラーが発生した回数の比率を示す読み出しエラー発生率が、所定のしきい値を超過したトラックに関して、更新経過日数又は隣接トラック更新回数に対するしきい値を小さく変更するしきい値決定部を備えてもよい。
【0010】
トラック履歴格納部は、データを読み出した回数と、読み出しエラーが発生した回数とを、ハードディスクの一面にデータを読み書きする物理ヘッドに更に対応付けて格納し、しきい値決定部は、同一の物理ヘッドによる読み出しエラー発生率が所定のしきい値を超過し、かつ、当該読み出しエラー発生率に、トラックに依存した偏りがないと判断した場合に、当該物理ヘッドが書き込みを行うすべてのトラックに関して、更新経過日数又は隣接トラック更新回数に対するしきい値を小さく変更してもよい。
【0011】
エラー履歴格納部は、データを読み出した回数と、読み出しエラーが発生した回数とを、更にハードディスクの記録面に対応付けて格納し、しきい値決定部は、同一の記録面における読み出しエラー発生率が所定のしきい値を超過し、かつ、当該読み出しエラー発生率に、トラックに依存した偏りがないと判断した場合に、当該記録面のすべてのトラックに関して、更新経過日数又は隣接トラック更新回数に対するしきい値を小さく変更してもよい。
【0012】
しきい値決定部が、読み出しエラー発生率に基づいてしきい値を変更した結果、当該しきい値が予め定められた下限値を下回ったトラックを含むハードディスクの交換を要求するメッセージを出力する交換要求部を更に備えてもよい。
【0013】
また、本発明の第3の形態によると、ハードディスクを有する記録装置は、ハードディスクに対してデータを読み書きする読み書き部と、データの最終更新日以降に、読み書き部がデータを読み出した回数と、データ読み出し時に読み出しエラーが発生した回数とを、ハードディスクのトラック単位で格納するトラック履歴格納部と、データを読み出した回数に対する、読み出しエラーが発生した回数の比率を示す読み出しエラー発生率が、所定のしきい値を超過したトラックのデータを、読み書き部に更新させる更新制御部とを備える。
【0014】
第1、第2、又は第3の形態に於いて、ハードディスクとは別の記録媒体を更に備え、更新制御部は、所定のしきい値を超過したトラックのデータを更に別の記録媒体に書き込む処理を、書込部に実行させてもよい。
【0015】
ハードディスクの温度の履歴を記録する温度履歴記録部と、温度履歴に基づいてハードディスクの磁気保持力の劣化の度合いを算出し、算出した劣化の度合いが大きいほど、しきい値を小さく決定するしきい値決定部とを更に備えてもよい。
【0016】
ハードディスクの動作時間及び非動作時間をそれぞれ記録する動作履歴記録部と、動作時間及び非動作時間に基づいてハードディスクの磁気保持力の劣化の度合いを算出し、算出した劣化の度合いが大きいほど、しきい値を小さく決定するしきい値決定部とをさらに備えてもよい。
【0017】
ハードディスクの情報記録密度を取得するディスク仕様取得部と、情報記録密度が高いほど、しきい値を小さく決定するしきい値決定部とを更に備えてもよい。
【0018】
本発明の第4の形態によれば、記録媒体としてハードディスクを有する記録装置が、記録データを管理する記録データ管理方法は、記録装置が、ハードディスクにデータを書き込む書き込みステップと、書き込みステップにおけるハードディスクへのデータの最終更新日をハードディスクのトラック単位で記録するトラック履歴管理ステップと、最終更新日からの経過日数が所定のしきい値を超過したトラックのデータを更新する更新制御ステップとを備える。
【0019】
本発明の第5の形態によれば、記録媒体としてハードディスクを有する記録装置が、記録データを管理する記録データ管理方法は、記録装置が、ハードディスクにデータを書き込む書き込みステップと、データの最終更新日以降に、隣接するトラックでデータが更新された回数をトラック単位で記録するトラック履歴管理ステップと、隣接するトラックの更新回数が所定のしきい値を超過したトラックのデータを更新する更新制御ステップとを備える。
【0020】
本発明の第6の形態によれば、記録媒体としてハードディスクを有する記録装置が、記録データを管理する記録データ管理方法は、記録装置が、ハードディスクに対してデータを読み書きする読み書きステップと、データの最終更新日以降に、データを読み出した回数と、データ読み出し時に読み出しエラーが発生した回数とを、ハードディスクのトラック単位で記録するトラック履歴記録ステップと、データを読み出した回数に占める、読み出しエラーが発生した回数の割合が、所定のしきい値を超過したトラックのデータを更新する更新制御ステップとを備える。
【0021】
本発明の第7の形態によれば、ハードディスクを有する記録装置用のプログラムは、ハードディスクにデータを書き込む書き込み機能と、書き込み機能によるハードディスクへのデータの最終更新日をハードディスクのトラック単位で記録するトラック履歴管理機能と、最終更新日からの経過日数が所定のしきい値を超過したトラックのデータを、書き込み機能に更新させる更新制御機能とを記録装置に実現させる。
【0022】
本発明の第8の形態によれば、ハードディスクを有する記録装置用のプログラムは、ハードディスクにデータを書き込む書込機能と、データの最終更新日以降に、隣接するトラックでデータが更新された回数をトラック単位で記録するトラック履歴管理機能と、隣接するトラックの更新回数が所定のしきい値を超過したトラックのデータを、書込機能に更新させる更新制御機能とを記録装置に実現させる。
【0023】
本発明の第9の形態によれば、ハードディスクを有する記録装置用のプログラムは、ハードディスクに対してデータを読み書きする読み書き機能と、データの最終更新日以降に、データを読み出した回数と、当該データ読み出し時に読み出しエラーが発生した回数とを、ハードディスクのトラック単位で記録するトラック履歴管理機能と、データを読み出した回数に占める、読み出しエラーが発生した回数の割合が、所定のしきい値を超過したトラックのデータを、読み書き機能に更新させる更新制御機能とを記録装置に実現させる。
【0024】
なお上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではなく、これらの特徴群のサブコンビネーションも又発明となりうる。
【0025】
【発明の実施の形態】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではなく、又実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【0026】
図1は、本実施形態に係る記録装置10の機能構成の一例を示す。記録装置10は、ハードディスクの回復不能な読み出しエラーの発生を未然に防ぐことを目的とする。記録装置10は、ハードディスク12と、ハードディスク12にデータを読み書きする読み書き部14と、読み書き部14によるハードディスク12へのデータの読み書き履歴をハードディスク12のトラック単位で格納するトラック履歴格納部18と、読み書き部14の読み書き動作に基づいてトラック履歴格納部18を更新するトラック履歴更新部16と、トラック単位の読み書き履歴が、データの読み出し信号が劣化した可能性が高いことを示す予め定めた条件を満足した場合に、読み書き部14に当該トラックのデータを更新させる更新制御部20とを備える。なお、読み書き部14は本発明の書込部及び読み出し部の一例である。
【0027】
ハードディスク12は、データが書き込まれた後の経時変化により、読み出し信号が劣化する。従って、データの書き込み履歴を取得することにより、読み出し信号の劣化の度合いを予測することができる。すなわち、記録装置10は、上記の構成により、トラック単位の読み書き履歴に基づいて、読み出し信号の劣化の度合いを予測し、劣化の度合いが一定のレベルに達したと予測されるトラックのデータを更新することができる。これにより、回復不能な読み出しエラーの発生を未然に防ぐことができる。
【0028】
記録装置10はさらに、ハードディスク12の温度履歴及び動作履歴をそれぞれ記録する温度/動作履歴記録部30と、データを読み書きすべきトラックに対する物理ヘッドの位置ずれ量、いわゆるトラック追従誤差をハードディスク12から取得するトラック追従誤差取得部28と、ハードディスク12の情報記録密度又はトラック毎の読み出しエラーレートを取得するディスク仕様取得部32と、温度履歴、動作履歴、トラック追従誤差、情報記録密度、及びトラック毎のソフトエラーレートの少なくともいずれかに基づいて、トラック毎のデータ更新の要否を、更新制御部20がトラックの読み書き履歴に基づいて判断する場合の「しきい値」を決定するしきい値決定部26とを備える。温度/動作履歴記録部30は、本発明の温度履歴記録部及び動作履歴記録部の一例である。また、ハードディスク12の動作履歴とは、ハードディスクが回転している状態の履歴である。トラック毎のソフトエラーレートは、例えばハードディスク12の出荷前検査等で、テストパターンの読み書きを繰り返し実行した場合に発生するトラックに固有のソフトエラー発生率であり、ハードディスク12の特性として予め書き込んである。
【0029】
ハードディスク12の読み出し信号は、熱によりさらに劣化する。従って、ハードディスク12の温度履歴から、読み出し信号の劣化の度合いを算出することができる。また、ハードディスク12は動作時、すなわちディスクが回転している状態において、モータの発熱により温度が上昇する。従って、温度履歴に代えて動作履歴からでも、読み出し信号の劣化の度合いを算出することができる。
【0030】
トラック追従誤差は、記録装置10の取り付け方法が適切でない場合等に、外乱の影響を受けて大きくなり易い。トラック追従誤差が大きい、すなわちトラックフォローの精度が悪い状態では、データを書き込むべき位置からヘッドがずれる可能性が高い。このような場合、隣接するトラックの読み出し信号を劣化させる可能性が高い。従って、あるトラックのデータ更新後、隣接するトラックが更新された合計の回数から、当該トラックの読み出し信号の劣化の度合いを予測することができる。
【0031】
また、ハードディスク12は、情報記録密度が高くなるに従ってディスクの磁気保持力が弱くなり、隣り合うビット同士の磁界干渉で読み出し信号が劣化し易くなる。すなわち、情報記録密度が高いディスクほど、読み出し信号が劣化しやすい。
【0032】
従って、記録装置10は、温度履歴、動作履歴、トラック追従誤差、情報記録密度、及びトラック毎のソフトエラーレートの少なくともいずれかに基づいて、適切なしきい値を決定することができる。従って、記録装置10は、トラック毎のデータ更新を的確なタイミングで実行することができる。
【0033】
なお、トラック追従誤差取得部28は、ヘッドを移動させるモータの電流を、ヘッドから読み出されるトラック位置をもとに制御することによって、トラックフォローを実現するフィードバック制御部であってもよい。
【0034】
ディスク仕様取得部32は、ハードディスク12の型式番号を取得し、型式番号に基づいてハードディスク12の情報記録密度を判断してもよい。この場合、ディスク仕様取得部32は、型式番号と情報記録密度の対応表を予め記憶している。ハードディスク12が交換可能である場合、ディスク仕様取得部32は、ハードディスク12が交換される度に型式番号を読み出し、情報記録密度を更新する。
【0035】
記録装置10はさらに、更新制御部20が更新させるべきトラックのトラック番号を、更新ステータスファイルとして格納している更新ステータス格納部22を更に備えている。更新ステータスファイルは、ハードディスク12のいずれかのトラックが更新中であるか否かのステータスを含む。更新ステータス格納部22は、更新ステータスファイルを不揮発性メモリに格納する。
【0036】
したがって、更新制御部20の制御に基づく更新処理が、例えば予期せぬ電源断などによって中断した場合であっても、更新ステータス格納部22を参照することにより、中断直前の更新状態を把握することができる。これにより、更新制御部20は、更新処理を継続する為に必要な最小限のロールバックを実行することができる。従って記録装置10は、更新処理が中断した場合であっても適切な状態から更新処理を再開することができる。
【0037】
記録装置10はさらに、温度履歴及び情報記録密度に応じた適切なしきい値がトラック履歴の診断項目毎に予め設定されている「しきい値表」を格納するしきい値表格納部24を備える。しきい値決定部26は、温度/動作履歴記録部30から読み出す温度履歴又は動作履歴、及びディスク仕様取得部32から読み出す情報記録密度又は、トラック毎のソフトエラーレートに基づいて、適切なしきい値を容易に決定することができる。
【0038】
記録装置10はさらに、ハードディスク12とは別の、独立した記録媒体である予備ディスク34を更に備える。更新制御部20は、読み出し信号が劣化したトラックのデータを読み書き部14に更新させる場合、同一のデータを更に予備ディスク34にも書き込ませる。これにより、トラック毎のデータ更新にもかかわらず、読み出しエラーが発生した場合であっても、データの消失を防止するとができる。
【0039】
また、トラック履歴格納部18はさらに、ハードディスク12の実使用中における読み出しエラーの発生履歴をトラック単位で格納する。例えば、読み書き部14によるトラックの最終更新日以降に各トラックからデータを読み出した回数と、各トラックおける読み出し時に読み出しエラーが発生した回数とを読み書き部14が計測し、計測結果をトラック履歴更新部16がトラック履歴格納部18に書き込む。更新制御部20又はしきい値決定部26は、当該計測結果をトラック履歴格納部18から読み出し、各トラックにおけるデータの読み出し回数に対する読み出しエラーの発生回数の比率、すなわちトラック毎の読み出しエラー発生率を算出する。更新制御部20は、当該読み出しエラー発生率が所定のしきい値を超過したトラックのデータを更新する。また、トラック毎の読み出しエラー発生率をディスク上の他のトラックと比較することにより、読み出しエラーの局所性を判断することができる。しきい値決定部26は、読み出しエラーの発生頻度が局所的に高いトラックのしきい値を低く変更することによって、読み出しエラーの発生頻度を低減することもできる。
【0040】
記録装置10はさらに、しきい値決定部26が決定した複数のしきい値のいずれかが、予め定められた下限値を下回った場合に、ハードディスク12の交換を要求する交換要求部40を備える。これにより、データ保持の信頼性が低下したハードディスク12の交換が促進され、もって、記録装置10のデータ記録の信頼性を高めることができる。また、読み書き部14は、ディスク仕様取得部32から取得したトラック毎のソフトエラーレートが所定の基準値を超過している場合に、当該トラックへのデータの書き込みを禁止する。
【0041】
記録媒体60は、ハードディスク12、読み書き部14、トラック履歴更新部16、トラック履歴格納部18、更新制御部20、更新ステータス格納部22、しきい値表格納部24、しきい値決定部26、トラック追従誤差取得部28、温度/動作履歴記録部30、ディスク仕様取得部32、予備ディスク34、エラー履歴格納部38、及び交換要求部40の機能を記録装置10に実現させるプログラムを格納している。記録媒体60は、そのようなプログラムを例えばネットワーク経由で取得してもよい。
【0042】
図2は、トラック履歴ファイルのデータフォーマットの一例を示す。トラック履歴ファイルは、読み書き部14によるハードディスク12へのデータの読み書き履歴をハードディスク12のトラック及び物理ヘッド単位で管理している。読み書き履歴は、例えばデータの最終更新日、最終更新日以降に両隣のトラックでデータが更新された合計回数(以下、隣接トラック更新回数)、データの最終更新日以降に、読み書き部14がデータを読み出した回数、及び読み書き部14によるデータ読み出し時に読み出しエラーが発生した回数である。更新制御部20及びしきい値決定部26は、トラック履歴格納部18に格納されたトラック履歴ファイルを参照することにより、トラック毎の読み書きの履歴を容易に確認することができる。トラック履歴ファイルは、データの読み書き履歴を、物理ヘッド番号に代えてハードディスク12の記録面の番号に対応付けて管理してもよい。更新制御部20及びしきい値決定部26は、トラック履歴ファイルを読み出すことにより、読み出しエラーの発生率に、ハードディスク12の記録面に依存した局所性があるか否かを判断することができる。
【0043】
図3は、更新ステータスファイルのデータフォーマットの一例を示す。更新ステータスファイルは、更新制御部20が更新させるべきトラックのトラック番号と、いずれかのトラックが更新中であるか否かのステータスを含む。本実施例においては、いずれかのトラックが更新中であるか否かのステータスを「WRITE BIT」ON(更新中)/OFF(非更新中)で示す。更新制御部20は、更新処理が中断した場合であっても、更新ステータス格納部22に格納されている更新ステータスファイルを参照することによって、適切な状態から更新処理を再開することができる。
【0044】
図4は、しきい値表のデータフォーマットの一例を示す。しきい値表は、熱負荷及び情報記録密度に応じた適切なしきい値が予め設定されている。しきい値は、トラック毎の読み出し信号の劣化を診断する複数の項目に分けて設定されている。複数の診断項目は、例えば、最終更新日からの経過日数を示す「更新経過日数」、及び最終更新日以降の「隣接トラック更新回数」等である。
【0045】
しきい値表は、ディスクの磁気保持力を劣化させる熱負荷の度合いが大きいほど、それぞれの診断項目に対して小さいしきい値を割り当てている。本実施例では、熱負荷を2段階のレベルに分けており、レベル2はレベル1よりも熱負荷が大きい。しきい値表はさらに、ハードディスク12の情報記録密度が高いほど、それぞれの診断項目に対して小さいしきい値を割り当てている。これにより、情報記録密度が高くなるほど読み出し信号が劣化し易くなるというハードディスクの特性を適切に反映したしきい値が設定される。情報記録密度はトラック密度(TPI)、線記録密度(BPI)、及び面記録密度(bpsi)の少なくともいずれかを用いる。しきい値決定部26は、熱負荷の度合い及び情報記録密度に基づいてしきい値表格納部24を参照することによって、適切なしきい値を容易に決定することができる。
【0046】
図5は、記録装置10によるデータ管理動作の一例を示す。本フローは、例えば、記録装置10の電源投入と共にスタートする。まず、更新制御部20は、更新ステータス格納部22における更新ステータスファイルを読み出し、「WRITE BIT」のステータス及びトラック番号を取得する。更新制御部20は、取得したトラック番号をTとして記憶する(S12)。次に、更新制御部20は「WRITE BIT」のステータスがONであるか否かを判断する(S14)。「WRITE BIT」のステータスがONであると判断した場合(S14:Yes)、ステップ28に進む。
【0047】
「WRITE BIT」のステータスがONでないと判断した場合(S14:No)、トラック履歴更新部16は、読み書き部14にホストからの読み出し指令が入力されたか否かを判断する(S16)。読み書き部14は、ホストからの読み出し指令が入力された場合、当該読み出し指令に従って、該当するトラックに記録されたデータの読み出しを試行する。このとき、読み出しエラーが発生したか否かを判断し(S17)、読み出しエラーが発生したと判断した場合(S17:Yes)、トラック履歴格納部18に記録されている「読み出しエラー発生回数」に今回発生した読み出しエラーの発生回数を加算して書き込む(S18)。例えば、一回の読み出しに際して、3回のリトライの結果データを読み出した場合、読み出しエラーの発生回数を3回分加算する。すなわち、エラー履歴ファイルにおける、該当トラック番号に対応付けられた「読み出しエラー回数」に1を加算する。そしてステップ16に戻る。一方、読み出しエラーが発生していないと判断した場合(S17:No)、ステップ16に戻る。
【0048】
一方、読み書き部14にホストからの読み出し指令が入力されていないと判断した場合(S16:No)、トラック履歴更新部16は、書き込み指令が入力されたか否かを判断する(S20)。読み書き部14は、ホストからの書き込み指令が入力された場合、当該書き込み指令に従って、該当するトラックにデータを書き込む。
【0049】
トラック履歴更新部16は、読み書き部14にホストからの書き込み指令が入力されたと判断した場合(S20:Yes)、トラック履歴格納部18におけるトラック履歴ファイルのうち、該当するトラックの「最終更新日」を更新し(S22)、さらに当該トラックに隣接するトラックの「隣接トラック更新回数」に1を加え(S24)、ステップ16に戻る。
【0050】
一方、読み書き部14にホストからの書き込み指令が入力されていないと判断された場合(S20:No)、更新制御部20は、ホストのIDLE時間、もしくはハードディスク12のデータ消失を防止する「予防措置」がスケジュールされた時間であるか否かを判断する(S26)。ホストのIDLE時間、もしくは「予防措置」がスケジュールされた時間ではないと判断した場合(S26:No)、ステップ16に戻る。
【0051】
一方、ホストのIDLE時間、もしくは「予防措置」がスケジュールされた時間であると判断した場合(S26:Yes)、更新制御部20は、読み出し信号が劣化したトラックのデータを更新する「予防措置フロー」(S28)を実行する。以上で本フローは終了する。
【0052】
図6は、図5における予防措置フロー(S28)の詳細を示す。更新制御部20はまず、図5のステップ12で読み出した「更新ステータスファイル」のトラック番号Tを呼び出す(S100)。次に、更新制御部20は、ステップ12で読み出した「WRITE BIT」のステータスがONであるか否かを判断する(S102)。「WRITE BIT」のステータスがONであると判断した場合(S102:Yes)、ステップ120に進む。
【0053】
一方、「WRITE BIT」のステータスがONでないと判断した場合(S102:No)、更新制御部20は、ハードディスク12の最終トラック番号をNとする(S104)。そして更新制御部20は、読み出し信号の劣化の度合いをトラック毎に判断し、更新が必要と判断したトラックのデータをトラック毎に更新する。
【0054】
当該更新処理は、以下のステップ106からステップ130までのループ「予防措置」を、TがN以下であるという条件を満たす限り繰り返すことにより実行される。まず、しきい値決定部26は、しきい値決定処理を実行してしきい値を決定する(S108)。次に更新制御部20は、トラック履歴格納部18のトラック履歴ファイルから、トラックTの更新履歴を読み出す(S110)。更新履歴は、トラックTの「最終更新日」、「隣接トラック更新回数」、「読み出し回数」、及び「読み出しエラー発生回数」を含む。更新制御部20は、トラックTの最終更新日から「更新経過日数」を算出する。また、「読み出し回数」に対する「読み出しエラー発生回数」の比率を算出することにより「読み出しエラー発生率」を求める。
【0055】
次に更新制御部20は、トラックTのデータを更新する必要があるか否かを判断する(S112)。例えば、トラックTの「更新経過日数」、「隣接トラック更新回数」、及び「読み出しエラー発生率」のいずれかがしきい値を超過した場合に、トラックTのデータの更新が必要であると判断する。
【0056】
トラックTのデータ更新が必要でないと判断した場合(S112:No)、ステップ126に進む。一方、トラックTのデータ更新が必要であると判断した場合(S112:Yes)、更新制御部20は以下の手順で読み書き部14にトラックTのデータを更新させる。まず、読み書き部14は、トラックTのデータを全て読み出し(S114)、ハードディスク12の予備のトラックであるリザーブトラックに書き込む(S116)。ここで、更新制御部20は、更新ステータスファイルを変更する。すなわち、「WRITE BIT」をONにし、トラック番号をTにする(S118)。この状態で、更新ステータスファイルは、「トラックTのデータが更新中である」旨を示す。
【0057】
次に、読み書き部14は、リザーブトラックに書き込まれているデータを全て、トラックT及び予備ディスク34に書き込む(S120)。次に、更新制御部20は、更新ステータスファイルの「WRITE BIT」をOFFにする(S122)。この状態において、更新ステータスファイルは、「トラックTのデータ更新が完了している」旨を示す。続いて更新制御部20は、トラック履歴ファイルのうち、トラックTの「最終更新日」を更新し(S123)、「隣接トラック更新回数」をゼロクリアする(S124)。
【0058】
次に更新制御部20は、Tに1を加算する(S126)。ここで更新制御部20は、ホストから読み書き部14にノーマルコマンド、すなわち読み書き指令が入力されたか否かを判断する(S128)。ノーマルコマンドが入力されたと判断した場合(S128:Yes)、本フローは終了する。ノーマルコマンドが入力されていないと判断した場合(S128:No)、TがN以下であるという条件を満たす限り、予防措置ループを繰り返す(S130)。そして、TがNを超えた場合、予防措置ループを終了し、Tをゼロクリアする(S132)。以上で本フローは終了する。
【0059】
なお、ステップ120の処理中、すなわちリザーブトラックからトラックTへのデータの書き込み中に、電源断などにより予期せぬ処理中断が起きた場合、トラックTへのデータ書き込みが途中である旨が更新ステータス格納部22の更新ステータスファイルに記録されている。すなわち、更新ステータスファイルは、「WRITE BIT」:ON
トラック番号:T
という状態で記録されている。従って、更新制御部20は、記録装置10の動作が復帰した場合に、更新ステータス格納部22を参照して更新ステータスファイルのステータスを確認する。そして、「WRITE BIT」がONであると判断すると、「予防措置フロー」を起動し、リザーブトラックに記録されている全てのデータをトラックTに書き込む。すなわち前述のステップ120を最初から実行する。以降の動作は、上述のフローと同様なので省略する。
【0060】
図7は、図6におけるしきい値決定処理(S108)の詳細を示す。本フローにおいて、しきい値決定部26は、ハードディスク12の温度履歴、動作履歴、トラック追従誤差、情報記録密度、及びトラック毎のソフトエラーレート、及び読み出しエラーの発生率の少なくともいずれかに基づいて、適切なしきい値を決定する。しきい値決定部26は、まず、温度/動作履歴記録部30からディスクの温度履歴を取得する(S200)。
【0061】
しきい値決定部26は、ディスクの磁気保持力を劣化させる熱負荷のレベルを、ディスクの温度履歴に基づいて判断する(S202)。例えば、ディスクの温度に応じた単位時間あたりの磁気保持力の劣化度合いを予め記憶しておき、ディスクの温度に応じた磁気保持力の劣化の度合いを計測時間で積分する。これにより読み出し信号を劣化させる熱負荷の度合いが算出される。これにより、ディスクの磁気保持力を劣化させる累積的な熱負荷を適切に算出することができる。
【0062】
ステップ200において、しきい値決定部26は温度履歴に代えてハードディスク12の動作履歴を取得してもよい。この場合、しきい値決定部26はステップ202において、熱負荷のレベルを動作履歴に基づいて判断する。例えば、動作時と非動作時のそれぞれのディスク温度における、単位時間あたりの読み出し信号の劣化の度合いを予め記憶しておく。そして、それぞれの劣化の度合いを、動作時間及び非動作時間でそれぞれ積分することにより、熱負荷の度合いを求めることができる。動作時のディスク温度は、例えば、スピンドルモータの発熱によるディスクの温度上昇が収束する温度である。非動作時のディスク温度は、例えば、製品仕様として動作保証している上限温度である。
【0063】
さらに、単位時間あたりの温度変化の大きさ、すなわち温度の微分値を用いて、環境負荷のレベルを判断してもよい。温度の微分値を用いることにより、磁気保持力を劣化させる急激な温度変化を環境負荷のレベルに適切に反映することができる。
【0064】
しきい値決定部26は次に、ディスク仕様取得部32からハードディスク12の情報記録密度を取得する(S204)。次に、熱負荷レベル及び情報記録密度に基づいて、しきい値表格納部24の「しきい値表」を参照することにより、診断項目毎のしきい値を決定する(S206)。ステップ206で決定されるしきい値は、暫定的なしきい値である。
【0065】
次に、ディスク仕様取得部32から、トラックTのソフトエラーレートを取得する(S208)。続いて、トラックTのソフトエラーレートが予め定められた基準値を超過しているか否かを判断する(S210)。トラックTのソフトエラーレートが予め定められた基準値を超過していると判断した場合(S210:Yes)、各しきい値を小さく変更する(S212)。例えば、当該トラックのソフトエラーレートが0.01以上0.05未満であれば、各しきい値を0.75倍に小さくする。ソフトエラーレートは、複数のトラック、例えば10トラックをまとめて1ゾーンとして扱い、ゾーン単位で基準値との比較を行ってもよい。1ゾーンに含まれるトラック数は、任意に設定することができる。しきい値決定部26は、しきい値をゾーン単位で変更してもよい。
【0066】
一方、トラックTのソフトエラーレートが予め定められた基準値を超過していないと判断した場合(S210:No)、トラックTに書き込みを行う物理ヘッドによる読み出しエラーの発生率をトラック履歴格納部18に記録されているヘッド番号毎の「読み出し回数」及び「読み出しエラー発生回数」に基づいて算出する。そして、算出した、当該物理ヘッドによる読み出しエラーの発生率が、予め定められた基準値を超過しているか否かを判断する(S214)。当該物理ヘッドの読み出しエラー発生率が、予め定められた基準値を超過していないと判断した場合(S214:No)、ステップ220に進む。一方、当該物理ヘッドの読み出しエラー発生率が、予め定められた基準値を超過していると判断した場合(S214:Yes)、当該物理ヘッドにおける読み出しエラーの発生率に、トラック番号に依存した偏りがあるか否かを判断する(S216)。
【0067】
当該物理ヘッドによる読み出しエラーの発生率に、トラック番号に依存した偏りがないと判断した場合(S216:No)、しきい値決定部26は、当該物理ヘッドが書き込みを行うすべてのトラックに対して、しきい値を小さく変更する。すなわち、トラックTに対して、各しきい値を小さく変更する(S218)。一方、当該物理ヘッドによる読み出しエラーの発生率に、トラック番号に依存した偏りがあると判断した場合(S216:Yes)、ステップ220に進む。
【0068】
ステップ216における偏りの判断は、例えば以下のように行う。まずトラック履歴格納部18から、トラックTと同一の物理ヘッド番号に属する、「トラック番号」の「読み出しエラー発生回数」、及び「読み出し回数」を全て取得する。次に、「読み出しエラー発生回数」に対する「読み出し回数」の比率を、トラック毎の「読み出しエラー発生率」として算出する。次に、横軸を「読み出しエラー発生率」、縦軸を「トラックの本数」とした分布を求め、「読み出しエラー発生率」の「最頻値」、「平均値」、及び「標準偏差」を求める。そして、「読み出しエラー発生率」の「最大値」が「最頻値」又は「平均値」の何倍であるかを判断する。例えば、「最大値」が「最頻値」又は「平均値」の5倍以内であることを、偏りがない基準とする。あるいは、各トラックの「偏差値」を求め、偏差値の最大値が70以下であることを偏りがない基準としてもよい。
【0069】
次に、しきい値決定部26は、トラック追従誤差取得部28からトラック追従誤差を取得する(S220)。しきい値決定部26は、トラック追従誤差が予め定められた基準値を上回っているか否かを判断する(S222)。
【0070】
トラック追従誤差が予め定められた基準値を上回っていると判断した場合(S222:Yes)、しきい値決定部26は、しきい値のうちの「隣接トラック更新回数」のしきい値を小さく変更、例えば半分の値に変更する(S224)。
【0071】
従って、ステップ222及びステップ224の動作によれば、「隣接トラック更新回数」のしきい値を「トラック追従誤差」に基づいて適切に変更することができる。ステップ222において、物理ヘッドの位置ずれ量が予め定められた基準値を上回っていないと判断した場合、ステップ224をスキップする。次に、交換要求部40は、しきい値決定部26が決定したしきい値のいずれかが、予め定められた下限を下回っているか否かを判断する(S226)。しきい値のいずれも、予め定められた下限を下回っていないと判断した場合(S226:No)、本フローを終了する。一方、しきい値のいずれかが、予め定められた下限を下回っていると判断した場合(S226:Yes)、交換要求部40は、ハードディスク12の交換を要求するメッセージを出力する(S228)。以上で本フローは終了する。
【0072】
以上の動作によれば、しきい値決定部26は、ハードディスク12の条件に応じた適切なしきい値を決定することができる。従って、記録装置10は、トラック毎のデータ更新の要否を的確に判断することができる。
【0073】
上記説明から明らかなように、本実施形態によれば、単体ディスク及びRAIDのいずれであっても、ハードディスクのデータの消失を防止する記録装置、記録データ管理方法、及びプログラムを提供することができる。
【0074】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更又は改良を加えることができる。その様な変更又は改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【図面の簡単な説明】
【図1】記録装置10の機能構成の一例を示すブロック図である。
【図2】トラック履歴ファイルのデータフォーマットの一例を示す。
【図3】更新ステータスファイルのデータフォーマットの一例を示す。
【図4】しきい値表のデータフォーマットの一例を示す。
【図5】記録装置10によるデータ管理動作の一例を示すフローチャートである。
【図6】図5における予防措置フロー(S28)の詳細を示す。
【図7】図6におけるしきい値決定処理(S108)の詳細を示す。
【符号の説明】
10 記録装置、12 ハードディスク、14 読み書き部、16 トラック履歴更新部、18 トラック履歴格納部、20 更新制御部、22 更新ステータス格納部、24 しきい値表格納部、26 しきい値決定部、28 トラック追従誤差取得部、30 温度/動作履歴記録部、32 ディスク仕様取得部、34予備ディスク、40 交換要求部、60 記録媒体
Claims (18)
- ハードディスクを有する記録装置であって、
前記ハードディスクにデータを書き込む書込部と、
前記書込部による前記ハードディスクへの前記データの最終更新日を前記ハードディスクのトラック単位で格納するトラック履歴格納部と、
前記最終更新日からの経過日数を示す更新経過日数が所定のしきい値を超過した前記トラックの前記データを、前記書込部に更新させる更新制御部と
を備える記録装置。 - ハードディスクを有する記録装置であって、
前記ハードディスクにデータを書き込む書込部と、
前記データの最終更新日以降に、隣接するトラックでデータが更新された回数を示す隣接トラック更新回数を、前記トラック単位で格納するトラック履歴格納部と、
前記隣接トラック更新回数が所定のしきい値を超過した前記トラックの前記データを、前記書込部に更新させる更新制御部と
を備える記録装置。 - 前記ハードディスクにおいて、データを書き込むべきトラックとデータを書き込む物理ヘッドとの位置ずれ量を取得するトラック追従誤差取得部と、
前記位置ずれ量が一定の基準を超えている場合に、前記所定のしきい値を小さく変更するしきい値決定部と
を更に備える請求項2に記載の記録装置。 - 前記ハードディスクからデータを読み出す読み出し部を更に備え、
前記トラック履歴格納部は、前記データの最終更新日以降に、前記読み出し部が前記データを読み出した回数と、前記データ読み出し時に読み出しエラーが発生した回数とを、前記ハードディスクのトラック単位で更に格納し、
更に、前記データを読み出した回数に対する、前記読み出しエラーが発生した回数の比率を示す読み出しエラー発生率が、所定のしきい値を超過した前記トラックに関して、前記更新経過日数又は前記隣接トラック更新回数に対する前記しきい値を小さく変更するしきい値決定部を備える、請求項1又は請求項2に記載の記録装置。 - 前記トラック履歴格納部は、前記データを読み出した回数と、前記読み出しエラーが発生した回数とを、前記ハードディスクの一面にデータを読み書きする物理ヘッドに更に対応付けて格納し、
前記しきい値決定部は、同一の前記物理ヘッドによる前記読み出しエラー発生率が所定のしきい値を超過し、かつ、当該読み出しエラー発生率に、前記トラックに依存した偏りがないと判断した場合に、当該物理ヘッドが書き込みを行うすべての前記トラックに関して、前記更新経過日数又は前記隣接トラック更新回数に対する前記しきい値を小さく変更する、請求項4に記載の記録装置。 - 前記エラー履歴格納部は、前記データを読み出した回数と、前記読み出しエラーが発生した回数とを、更に前記ハードディスクの記録面に対応付けて格納し、
前記しきい値決定部は、同一の前記記録面における前記読み出しエラー発生率が所定のしきい値を超過し、かつ、当該読み出しエラー発生率に、前記トラックに依存した偏りがないと判断した場合に、当該記録面のすべての前記トラックに関して、前記更新経過日数又は前記隣接トラック更新回数に対する前記しきい値を小さく変更する請求項4に記載の記録装置。 - 前記しきい値決定部が、前記読み出しエラー発生率に基づいて前記しきい値を変更した結果、当該しきい値が予め定められた下限値を下回ったトラックを含む前記ハードディスクの交換を要求するメッセージを出力する交換要求部
を更に備える請求項4に記載の記録装置。 - ハードディスクを有する記録装置であって、
前記ハードディスクに対してデータを読み書きする読み書き部と、
前記データの最終更新日以降に、前記読み書き部が前記データを読み出した回数と、前記データ読み出し時に読み出しエラーが発生した回数とを、前記ハードディスクのトラック単位で格納するトラック履歴格納部と、
前記データを読み出した回数に対する、前記読み出しエラーが発生した回数の比率を示す読み出しエラー発生率が、所定のしきい値を超過した前記トラックの前記データを、前記読み書き部に更新させる更新制御部と
を備える記録装置。 - 前記ハードディスクとは別の記録媒体を更に備え、
前記更新制御部は、前記所定のしきい値を超過した前記トラックのデータを、更に前記別の記録媒体に書き込む処理を、前記書込部に実行させる、請求項1、請求項2、請求項8のいずれかに記載の記録装置。 - 前記ハードディスクの温度の履歴を記録する温度履歴記録部と、
前記温度履歴に基づいて前記ハードディスクの磁気保持力の劣化の度合いを算出し、算出した前記劣化の度合いが大きいほど、前記しきい値を小さく決定するしきい値決定部と
を更に備える、請求項1、請求項2、請求項8のいずれかに記載の記録装置。 - 前記ハードディスクの動作時間及び非動作時間をそれぞれ記録する動作履歴記録部と、
前記動作時間及び前記非動作時間に基づいて前記ハードディスクの磁気保持力の劣化の度合いを算出し、算出した前記劣化の度合いが大きいほど、前記しきい値を小さく決定するしきい値決定部と
をさらに備える、請求項1、請求項2、請求項8のいずれかに記載の記録装置。 - 前記ハードディスクの情報記録密度を取得するディスク仕様取得部と、
前記情報記録密度が高いほど、前記しきい値を小さく決定するしきい値決定部と
を更に備える、請求項1、請求項2、請求項8のいずれかに記載の記録装置。 - 記録媒体としてハードディスクを有する記録装置が、記録データを管理する記録データ管理方法であって、前記記録装置が、
前記ハードディスクにデータを書き込む書き込みステップと、
前記書き込みステップにおける前記ハードディスクへの前記データの最終更新日を前記ハードディスクのトラック単位で記録するトラック履歴管理ステップと、
前記最終更新日からの経過日数が所定のしきい値を超過した前記トラックの前記データを更新する更新制御ステップと
を備える記録データ管理方法。 - 記録媒体としてハードディスクを有する記録装置が、記録データを管理する記録データ管理方法であって、前記記録装置が、
前記ハードディスクにデータを書き込む書き込みステップと、
前記データの最終更新日以降に、隣接するトラックでデータが更新された回数を前記トラック単位で記録するトラック履歴管理ステップと、
隣接する前記トラックの前記更新回数が所定のしきい値を超過した前記トラックの前記データを更新する更新制御ステップと
を備える記録データ管理方法。 - 記録媒体としてハードディスクを有する記録装置が、記録データを管理する記録データ管理方法であって、前記記録装置が、
前記ハードディスクに対してデータを読み書きする読み書きステップと、
前記データの最終更新日以降に、前記データを読み出した回数と、前記データ読み出し時に読み出しエラーが発生した回数とを、前記ハードディスクのトラック単位で記録するトラック履歴記録ステップと、
前記データを読み出した回数に占める、前記読み出しエラーが発生した回数の割合が、所定のしきい値を超過した前記トラックの前記データを更新する更新制御ステップと
を備える記録データ管理方法。 - ハードディスクを有する記録装置用のプログラムであって、
前記ハードディスクにデータを書き込む書き込み機能と、
前記書き込み機能による前記ハードディスクへの前記データの最終更新日を前記ハードディスクのトラック単位で記録するトラック履歴管理機能と、
前記最終更新日からの経過日数が所定のしきい値を超過した前記トラックの前記データを、前記書き込み機能に更新させる更新制御機能と
を前記記録装置に実現させるプログラム。 - ハードディスクを有する記録装置用のプログラムであって、
前記ハードディスクにデータを書き込む書込機能と、
前記データの最終更新日以降に、隣接するトラックでデータが更新された回数を前記トラック単位で記録するトラック履歴管理機能と、
隣接する前記トラックの前記更新回数が所定のしきい値を超過した前記トラックの前記データを、前記書込機能に更新させる更新制御機能と
を前記記録装置に実現させるプログラム。 - ハードディスクを有する記録装置用のプログラムであって、
前記ハードディスクに対してデータを読み書きする読み書き機能と、
データの最終更新日以降に、前記データを読み出した回数と、当該データ読み出し時に読み出しエラーが発生した回数とを、前記ハードディスクのトラック単位で記録するトラック履歴管理機能と、
前記データを読み出した回数に占める、前記読み出しエラーが発生した回数の割合が、所定のしきい値を超過した前記トラックの前記データを、前記読み書き機能に更新させる更新制御機能と
を前記記録装置に実現させるプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003166344A JP2005004869A (ja) | 2003-06-11 | 2003-06-11 | 記録装置、記録データ管理方法、及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003166344A JP2005004869A (ja) | 2003-06-11 | 2003-06-11 | 記録装置、記録データ管理方法、及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005004869A true JP2005004869A (ja) | 2005-01-06 |
Family
ID=34092538
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003166344A Pending JP2005004869A (ja) | 2003-06-11 | 2003-06-11 | 記録装置、記録データ管理方法、及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005004869A (ja) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007200301A (ja) * | 2006-01-23 | 2007-08-09 | Internatl Business Mach Corp <Ibm> | ストレージ・デバイスの障害を予測するための装置、システム、および方法 |
JP2007219846A (ja) * | 2006-02-16 | 2007-08-30 | Fuji Xerox Co Ltd | 半導体ディスク装置の異常監視・記録方法、プログラム、半導体ディスク装置、および記憶システム |
JP2007242087A (ja) * | 2006-03-06 | 2007-09-20 | Fujitsu Ltd | 情報記録再生装置 |
JP2008171231A (ja) * | 2007-01-12 | 2008-07-24 | Fujitsu Ltd | アレイディスク群の保守管理システム、アレイディスク群の保守管理装置、アレイディスク群の保守管理方法およびアレイディスク群の保守管理プログラム |
JP2008276522A (ja) * | 2007-04-27 | 2008-11-13 | Fuji Xerox Co Ltd | 状態検知装置、状態検知方法、状態検知プログラム及び状態検知システム |
US7630158B2 (en) | 2005-08-18 | 2009-12-08 | Toshiba Storage Device Corporation | Data loss prevention method of a media storage device and media storage device |
US7643237B2 (en) | 2005-08-18 | 2010-01-05 | Toshiba Storage Device Corporation | Data loss prevention method of a media storage device and media storage device |
JP2011227709A (ja) * | 2010-04-20 | 2011-11-10 | Nec Corp | Riadコントローラ装置、raid装置、raid装置の処理方法及びプログラム |
US9142252B2 (en) | 2009-06-23 | 2015-09-22 | HGST Netherlands B.V. | Magnetic disk drive and data rewrite methods |
CN115687038A (zh) * | 2022-08-23 | 2023-02-03 | 江苏臻云技术有限公司 | 一种基于大数据的硬盘故障预测系统及方法 |
-
2003
- 2003-06-11 JP JP2003166344A patent/JP2005004869A/ja active Pending
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7630158B2 (en) | 2005-08-18 | 2009-12-08 | Toshiba Storage Device Corporation | Data loss prevention method of a media storage device and media storage device |
US7643237B2 (en) | 2005-08-18 | 2010-01-05 | Toshiba Storage Device Corporation | Data loss prevention method of a media storage device and media storage device |
JP2007200301A (ja) * | 2006-01-23 | 2007-08-09 | Internatl Business Mach Corp <Ibm> | ストレージ・デバイスの障害を予測するための装置、システム、および方法 |
JP2007219846A (ja) * | 2006-02-16 | 2007-08-30 | Fuji Xerox Co Ltd | 半導体ディスク装置の異常監視・記録方法、プログラム、半導体ディスク装置、および記憶システム |
JP2007242087A (ja) * | 2006-03-06 | 2007-09-20 | Fujitsu Ltd | 情報記録再生装置 |
JP2008171231A (ja) * | 2007-01-12 | 2008-07-24 | Fujitsu Ltd | アレイディスク群の保守管理システム、アレイディスク群の保守管理装置、アレイディスク群の保守管理方法およびアレイディスク群の保守管理プログラム |
JP2008276522A (ja) * | 2007-04-27 | 2008-11-13 | Fuji Xerox Co Ltd | 状態検知装置、状態検知方法、状態検知プログラム及び状態検知システム |
US9142252B2 (en) | 2009-06-23 | 2015-09-22 | HGST Netherlands B.V. | Magnetic disk drive and data rewrite methods |
JP2011227709A (ja) * | 2010-04-20 | 2011-11-10 | Nec Corp | Riadコントローラ装置、raid装置、raid装置の処理方法及びプログラム |
CN115687038A (zh) * | 2022-08-23 | 2023-02-03 | 江苏臻云技术有限公司 | 一种基于大数据的硬盘故障预测系统及方法 |
CN115687038B (zh) * | 2022-08-23 | 2023-09-26 | 江苏臻云技术有限公司 | 一种基于大数据的硬盘故障预测系统及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6766465B2 (en) | Automatic read reassignment method and a magnetic disk drive | |
US7177979B2 (en) | Method for preventing data loss due to repeated writes to a given track on a magnetic disk drive | |
KR100630745B1 (ko) | 기록 매체의 데이터 보존 방법 및 이제 적합한 프로그램이기록된 기록 매체 | |
US5751947A (en) | Magnetic disk apparatus having inspection function of recording medium and method of inspecting recording medium in magnetic disk apparatus | |
US6947234B2 (en) | Method, system, and program for performing error correction in a storage device having a magnetic storage medium | |
JP6419687B2 (ja) | 磁気ディスク装置、及び書き込み方法 | |
US20080010557A1 (en) | Storage apparatus and control apparatus | |
US20030016609A1 (en) | Data storage device monitoring system, method and removable data carrier use with data storage systems | |
JP2005122338A (ja) | スペアディスクドライブをもつディスクアレイ装置及びデータスペアリング方法 | |
JP2004171755A (ja) | 動的再マッピングによりデータ記憶媒体の欠陥の成長を許容する方法及び装置 | |
US20100188767A1 (en) | Disk drive and write control method therein | |
JP2006164445A (ja) | 監視装置 | |
JP2005004869A (ja) | 記録装置、記録データ管理方法、及びプログラム | |
US7809978B2 (en) | Storage device and control device | |
US8300350B2 (en) | Magnetic disk drive using offset in positioning head to read data and head positioning method | |
US6169710B1 (en) | Optical disc recording/reproducing method and apparatus | |
US6393580B1 (en) | Automatic read reassignment method and a magnetic disk drive | |
JP2004206795A (ja) | ディスク記憶装置及びライト制御方法 | |
EP1538606A2 (en) | Apparatus and method for adaptively controlling a read/write retry process in a data storage apparatus | |
US7664914B2 (en) | Hierarchical control apparatus of hierarchical storage system and method for maintaining and managing duplexed media | |
JP2007052855A (ja) | 媒体記憶装置のデータ消失防止方法及び媒体記憶装置 | |
JP5621801B2 (ja) | 磁気ディスク制御装置、磁気ディスク装置および磁気ディスク制御方法 | |
JP2007052854A (ja) | 媒体記憶装置のデータ消失防止方法及び媒体記憶装置 | |
US20190287559A1 (en) | Magnetic disk device and recording method | |
JPH0935418A (ja) | 情報記憶装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060531 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070903 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070911 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20080122 |