記憶装置及び記憶制御方法
【課題】データの種類に応じて読み書きの高速化と耐障害性の向上を図ることができることができる記憶装置及び記憶制御方法の提供。
【解決手段】複数のHDDを備える記憶装置における記憶制御方法において、前記記憶装置は、データを前記複数のHDDに分割して記憶する分割記憶方式(例えば、RAID0)、及び、同じデータを前記複数のHDDに重複して記憶する重複記憶方式(例えば、、RAID1)の2つの記憶方式で、データが記憶可能であり、取得したデータの種類を判別した後、予め記憶したテーブルを参照して、前記取得したデータを、その種類に応じて、前記分割記憶方式又は前記重複記憶方式のいずれかで記憶する。
【解決手段】複数のHDDを備える記憶装置における記憶制御方法において、前記記憶装置は、データを前記複数のHDDに分割して記憶する分割記憶方式(例えば、RAID0)、及び、同じデータを前記複数のHDDに重複して記憶する重複記憶方式(例えば、、RAID1)の2つの記憶方式で、データが記憶可能であり、取得したデータの種類を判別した後、予め記憶したテーブルを参照して、前記取得したデータを、その種類に応じて、前記分割記憶方式又は前記重複記憶方式のいずれかで記憶する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、記憶装置及び記憶制御方法に関し、特に、RAID(Redundant Arrays of Inexpensive Disks)を利用した記憶装置及び当該記憶装置におけるデータの記憶制御方法に関する。
【背景技術】
【0002】
ネットワークの普及及び記憶装置の大容量化に伴って、様々なデータがネットワーク上のサーバなどの記憶装置に保存されるようになってきている。このようなシステムでは、データを安全に保存すること、及び、データを高速に読み書きできるようにすることが求められる。
【0003】
ここで、通常、記憶装置は1台のHDD(Hard Disk Drive)に全てのデータを記憶しているが、HDDは可動部分を有するために障害が発生しやすく、障害が発生すると保存した全てのデータが失われてしまう恐れがある。
【0004】
このような背景から、データの記憶に関して、RAID(Redundant Arrays of Inexpensive Disks)と呼ばれる方式が提案されている。例えば、RAID0は、複数のHDDを利用して、データを分散して書き込むことで高速にデータの読み書きを行う方式であり、RAID1は、複数のHDDに同じデータを書き込み、耐障害性を上げる方式である。
【0005】
上記RAIDに関連する技術として、下記特許文献1には、複数のHDDを使用して画像データを高速に転送する方法が開示されている。また、下記特許文献2には、RAID1を利用して、1台が故障した際に、もう1台だけで動作/復旧させる方法が開示されている。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2004−343205号公報
【特許文献2】特開2004−208019号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
上記RAID0を利用することによりデータの読み書きを高速化することはできるが、1台のHDDが故障すると全てのデータが使用できなくなるという課題がある。また、RAID1を利用することにより耐障害性を向上させることはできるが、2台のHDDに同じデータを書き込むため、HDDの記憶容量が半減すると共に書き込みが遅くなるという課題がある。
【0008】
ここで、記憶装置に記憶するデータの種類は様々であり、頻繁にアクセスするデータは耐障害性の向上よりも読み書きの高速性を重視すると考えられ、一方、保存を目的とするデータは読み書きの高速性よりも耐障害性の向上を重視すると考えられる。そのため、RAID0又はRAID1のいずれかを利用して記憶する記憶装置では、このような様々な種類のデータを効率的に記憶することができないという問題があった。
【0009】
本発明は、上記問題点に鑑みてなされたものであって、その主たる目的は、データの種類に応じて読み書きの高速化と耐障害性の向上を図ることができることができる記憶装置及び記憶制御方法を提供することにある。
【0010】
また、本発明の他の目的は、障害が発生した場合に適切にデータを復旧させることができる記憶装置及び記憶制御方法を提供することにある。
【課題を解決するための手段】
【0011】
上記目的を達成するため、本発明は、複数のHDDを備える記憶装置において、データを前記複数のHDDに分割して記憶する分割記憶方式、及び、同じデータを前記複数のHDDに重複して記憶する重複記憶方式の2つの記憶方式で、データが記憶可能に構成されるものである。
【0012】
また、本発明は、複数のHDDを備える記憶装置における記憶制御方法において、前記記憶装置は、データを前記複数のHDDに分割して記憶する分割記憶方式、及び、同じデータを前記複数のHDDに重複して記憶する重複記憶方式の2つの記憶方式で、データが記憶可能であり、取得したデータの種類を判別した後、予め記憶したテーブルを参照して、前記取得したデータを、その種類に応じて、前記分割記憶方式又は前記重複記憶方式のいずれかで記憶するものである。
【0013】
また、本発明は、複数のHDDを備える記憶装置における記憶制御方法において、前記記憶装置は、データを前記複数のHDDに分割して記憶する分割記憶方式、及び、同じデータを前記複数のHDDに重複して記憶する重複記憶方式の2つの記憶方式で、データが記憶可能であり、各々の前記HDDは、前記分割記憶方式で利用される領域と前記重複記憶方式で利用される領域とに分割されており、いずれかの前記HDDを交換する場合に、交換したHDDに対して、前記分割記憶方式で利用される領域はフォーマットし、前記重複記憶方式で利用される領域は、他の前記HDDの前記重複記憶方式で利用される領域から読み取ったデータをコピーするものである。
【発明の効果】
【0014】
本発明の記憶装置及び記憶制御方法によれば、下記記載の効果を奏する。
【0015】
本発明の第1の効果は、データの種類に応じて読み書きの高速化と耐障害性の向上を図ることができるということである。
【0016】
その理由は、複数のHDDを備える記憶装置において、各々のHDDを複数の領域に分割し、その1つはデータを分散して記憶する分散記憶方式の領域として利用し、他の1つはデータを重複して記憶する重複記憶方式の領域として利用し、データを記憶する際に、データの種類を判別し、データの種類に応じて分散記憶方式若しくは重複記憶方式のいずれかで記憶させるからである。
【0017】
また、本発明の第2の効果は、障害が発生した場合に適切にデータを復旧させることができるということである。
【0018】
その理由は、いずれかのHDDに障害が発生して交換する場合に、他のHDDの重複記憶方式の領域に記憶されたデータを、交換したHDDの重複記憶方式の領域にコピーしてデータを復旧し、データの喪失を最小限に抑制するからである。また、交換したHDDが予め登録されているかを判別し、登録されている場合は重複記憶方式の領域に記憶されたデータをコピーし、登録されていない場合は全ての領域をフォーマットし、不正なコピーを防止するからである。
【図面の簡単な説明】
【0019】
【図1】本発明の一実施の形態に係るデータ記憶システムの構成を模式的に示す図である。
【図2】本発明の一実施の形態に係るサーバの構成を示すブロック図である。
【図3】本発明の一実施例に係るデータ記憶システムの構成を模式的に示す図である。
【図4】本発明の一実施例に係るコンピュータ端末の構成を示すブロック図である。
【図5】本発明の一実施例に係る画像形成装置の構成を示すブロック図である。
【図6】本発明の一実施例に係るHDDのパーティション構成を模式的に示す図である。
【図7】本発明の一実施例に係るHDDのRAID構築後のパーティション構成を模式的に示す図である。
【図8】データの種類と各記憶方式で利用する領域との関係を示すテーブルの一例である。
【図9】本発明の一実施例に係るデータ記憶方法の手順を示すフローチャート図である。
【図10】フォントデータの一例である。
【図11】本発明の一実施例に係る分散記憶方式を模式的に示す図である。
【図12】本発明の一実施例に係る重複記憶方式を模式的に示す図である。
【図13】データの種類と各記憶方式で利用する領域との関係を示すテーブルの他の例である。
【図14】本発明の一実施例に係るデータ記憶方法の他の手順を示すフローチャート図である。
【図15】データの種類と各記憶方式で利用する領域との関係を示すテーブルの他の例である。
【図16】本発明の一実施例に係るデータ記憶方法の他の手順を示すフローチャート図である。
【図17】本発明の一実施例に係るデータの復旧方法の手順を示すフローチャート図である。
【図18】本発明の一実施例に係るデータの復旧方法の他の手順を示すフローチャート図である。
【発明を実施するための形態】
【0020】
背景技術で示したように、複数のHDDにデータを分散して記憶する記憶方式(例えばRAID0など、以下、分散記憶方式と呼ぶ。)や、複数のHDDに同じデータを重複して記憶する記憶方式(例えばRAID1など、以下、重複記憶方式と呼ぶ。)などの記憶方式が提案されているが、いずれの記憶方式でも読み書きの高速化と耐障害性の向上の双方を達成することはできない。
【0021】
一方、記憶装置に記憶するデータには、耐障害性の向上よりも読み書きの高速性を重視するデータもあれば、読み書きの高速性よりも耐障害性の向上を重視するデータもある。
【0022】
そこで、本発明では、分散記憶方式と重複記憶方式とを併用し、データの種類(すなわち、データの特性)に合わせていずれかの記憶方式で記憶することによって、読み書きの高速化と耐障害性の向上の双方を満足できるようにする。
【0023】
以下、図面を参照して具体的に説明する。図1に示すように、本実施形態のデータ記憶システムは、保存するデータを送信するコンピュータ端末10と、データを保存するサーバ20と、を備え、これらは通信ネットワーク30で接続される。また、図2に示すように、サーバ20の制御部21は、CPU(Central Processing Unit)22、ROM(Read Only Memory)やRAM(Random Access Memory)などのメモリ23、複数台(ここでは2台)のHDD24、通信I/F部25などを備え、これらはバスを介して接続されている。
【0024】
このような2台のHDD24を備えるサーバ20において、各々のHDD24の記憶領域を複数(ここでは2つ)に分割し、各々のHDD24の一方の領域を分散記憶方式の領域に割り当て、他方の領域を重複記憶方式の領域に割り当てる。また、制御部21は、記憶するデータの種類を判別し、予め記憶したテーブルを参照して、データの種類に応じて分散記憶方式又は重複記憶方式のいずれかで記憶させたり、故障等により一方のHDDを交換する際に、他方のHDDの重複記憶方式の領域のデータを、交換したHDDの重複記憶方式の領域にコピーしたりする制御を行う。
【0025】
このような構成により、頻繁にアクセスするデータのように耐障害性の向上よりも読み書きの高速性を重視するデータは分散記憶方式で記憶され、保存を目的とするデータのように読み書きの高速性よりも耐障害性の向上を重視するデータは重複記憶方式で記憶されるため、データの種類に応じて読み書きの高速化と耐障害性の向上を図ることができる。また、いずれかのHDD24に障害が発生しても重複記憶方式で記憶されたデータは復旧することができるため、データの損失を最小限に抑えることができる。
【0026】
上記構成は任意の記憶装置に対して適用可能であるが、印刷に関するデータを取り扱うシステムでは特に有効である。そこで、以下の実施例では、本発明を印刷に関するデータを取り扱うシステムに適用する場合について説明する。
【実施例】
【0027】
上記した本発明の実施の形態についてさらに詳細に説明すべく、本発明の一実施例に係る記憶装置及び記憶制御方法について、図3乃至図18を参照して説明する。図3は、本実施例のデータ記憶システムの構成を模式的に示す図であり、図4は、本実施例のコンピュータ端末の構成を示すブロック図、図5は、本実施例の画像形成装置の構成を示すブロック図である。また、図6及び図7は、画像形成装置のHDDの構成を模式的に示す図であり、図8、13、15は、データの種類と記憶方式の領域とを関連づけるテーブルの一例、図10は、プリントデータの一例である。また、図11及び図12は、分散記憶方式と重複記憶方式を模式的に示す図であり、図9、14、16は、本実施例のデータ記憶方法を示すフローチャート図、図17及び図18は、本実施例のデータ復旧方法を示すフローチャート図である。
【0028】
印刷に関するデータを取り扱うシステムでは、プリントエンジンの高速化、高解像度化に伴い、画像形成装置(MFP:Multi Function Peripheral)のプリンタコントローラ部に要求される性能も高くなっている。プリンタコントローラ部では、データの一時的な保存などでHDDを使用するが、HDD1台の性能ではプリント性能が達成できなくなってきている。そこで、近年の画像形成装置では、複数台のHDDを利用して、データを分散して書き込むことでプリント性能の向上を図っている。
【0029】
しかしながら、画像形成装置においては、プリントジョブのデータ(以下、プリントデータと呼ぶ。)のように保存の安全性よりも読み書きのスピードが求められるデータや、フォントデータのように読み書きのスピードよりも保存の安全性が求められるデータなど、必ずしも読み書きのスピードと保存の安全性の両方を満足する必要のないデータを扱っている。
【0030】
そこで、本実施例では、このような印刷に関するデータの特徴を考慮して、様々な種類のデータを適切に保存できるようにし、HDDを交換する場合にデータを適切に復旧できるようにする。
【0031】
図3(a)に、本実施例のデータ記憶システムの構成を示す。本実施例のデータ記憶システムは、プリントデータを送信する1又は複数のクライアント(コンピュータ端末10)と、コンピュータ端末10から受信したプリントデータに基づいて印刷を行う画像形成装置40とを備え、これらはイーサネット(登録商標)、トークンリング、FDDI(Fiber-Distributed Data Interface)等の規格により定められるLAN(Local Area Network)やWAN(Wide Area Network)、電話回線等の通信ネットワーク30によって接続されている。
【0032】
コンピュータ端末10は、図4に示すように、制御部11と、通信I/F部15と、表示部16と、操作部17などを備え、これらは互いにバスを介して接続されている。
【0033】
制御部11は、CPU12、メモリ13、HDD14などで構成されている。CPU12は、各部の制御を行う。メモリ13は、HDD14や通信I/F部15から読み込んだ種々のデータを一時的に記憶する部分であり、記憶されたデータはCPU12によって処理され、必要に応じてHDD14や通信I/F部15に転送される。HDD14は、CPU12が各部を制御するためのプログラム、自装置の処理機能に関する情報などを格納し、CPU12により必要に応じて読み出され、メモリ13上で実行処理される。通信I/F部15は、通信ネットワーク30を介して繋がっている機器との接続を確立し、データの送受信を実行する。
【0034】
また、制御部11は、文書を作成するためのアプリケーションや文書の印刷を指示するプリンタドライバとして機能し、作成した文書データを画像形成装置40で読み取り可能な言語(PCL(Printer Control Language)やPS(Post Script)などのPDL(Page Description Language))のプリントデータに変換して、通信I/F部15を介して画像形成装置40に送信する。
【0035】
通信I/F部15は、通信ネットワーク30を介して繋がっている機器との接続を確立し、データの送受信を実行する。
【0036】
表示部16は、液晶表示装置(LCD:Liquid Crystal Display)や有機EL(electroluminescence)表示装置等からなり、印刷を指示するための画面等を表示する。
【0037】
操作部17は、表示部16上に表示された情報を操作したり、情報を入力したりする部分であり、ポインティングデバイス、キーボード、トラックボール、トラックパッド、タブレット、及びスタイラスペンなどで構成される。
【0038】
また、画像形成装置40は、図5に示すように、制御部41と、通信I/F部45と、画像読取部46と、表示・操作部47と、プリンタコントローラ部48と、印刷処理部49などを備え、これらは互いにバスを介して接続されている。
【0039】
制御部41は、CPU42、ROMやRAMなどのメモリ43、複数のHDD44(本実施例では、HDD44a及びHDD44b)などで構成されている。CPU42は各部の制御などを行う。また、CPU42は、ソフトウェアを実行することにより後述するプリンタコントローラ48として機能する。メモリ43は、HDD44、画像読取部46、通信I/F部45から読み込んだ種々のデータを一時的に記憶する部分で、記憶されたデータはCPU42によって処理され、HDD44に転送される。HDD44は、CPU42が各部を制御するためのプログラム、自装置の処理機能に関する情報、プリントデータやスキャンデータ、フォントデータ、設定データなどを格納し(記憶領域の構成及び各種データの記憶方法に関しては後述する。)、CPU42により必要に応じて読み出され、メモリ43上で実行処理される。
【0040】
また、制御部41は、取得したデータの種類を判別し、予め記憶したテーブルを参照して、データの種類に応じて、分散記憶方式又は重複記憶方式のいずれかでHDD44に記憶させたり、いずれかのHDD44に障害が発生した場合に、交換したHDDに、他のHDD44に重複記憶方式で記憶したデータをコピーして重複記憶方式での記憶状態を復旧させたり、交換したHDDが予め登録されているかを判断し、登録されている場合は重複記憶方式で記憶したデータをコピーし、登録されていない場合は全ての領域をフォーマットしたりする制御を行う。この制御はハードウェア又はソフトウェアのいずれで実行してもよい。
【0041】
通信I/F部45は、通信ネットワーク30を介して繋がっている機器との接続を確立し、データの送受信を実行する。
【0042】
画像読取部46は、原稿台上の原稿用紙から画像データを光学的に読み取る部分であり、原稿を走査する光源と、原稿で反射された光を電気信号に変換するCCD(Charge Coupled Devices)イメージセンサと、電気信号をA/D変換するA/D変換器等により構成される。
【0043】
表示・操作部47は、表示部上に、透明電極が格子状に配置された感圧式の操作部(タッチパネル)を設けたタッチパネルであり、手指やタッチペン等で押下された力点のXY座標を電圧値で検出し、検出された位置信号を操作信号として制御部41に出力する。
【0044】
CPU42により実現される機能としてのプリンタコントローラ部48は、プリントデータをRIP(Raster Image Processor)処理してページ毎の画像データ(ページデータ)を生成し、必要に応じて画像処理(サイズや解像度、白黒/カラー等の変換処理)やスクリーニングを行った後、ページデータを印刷処理部49に転送する。
【0045】
印刷処理部49は、電子写真方式や静電記録方式等の作像プロセスを利用した画像形成に必要な構成要素、例えば、感光体、転写ベルト、定着器、各種搬送ベルト等で構成され、プリンタコントローラ部48で処理した画像データに基づいて、指定された用紙に画像を形成する。
【0046】
なお、図3(a)では、本実施例のデータ記憶システムをコンピュータ端末10と画像形成装置40とで構成したが、図3(b)に示すように、コンピュータ端末10から受信したプリントデータをRIP処理してページデータを生成し、そのページデータを画像形成装置40に送信する装置(例えばプリンタコントローラ50)を含む構成としてもよい。その場合は、画像形成装置40又はプリンタコントローラ50の少なくとも一方に複数台のHDDを設けて上記制御を実行すればよい。
【0047】
次に、複数のHDDの構成について説明する。
【0048】
図6は、HDD44のパーティション構成を示す図である。
【0049】
HDD44は、パーティションと呼ばれる記憶領域で理論的に分割される。分割されたパーティションは、例えば、Windows(登録商標) OSにおいては、Cドライブ、Dドライブ、Linux OSにおいては、/dev/sda1、/dev/sda2というように認識される。図6は、Linuxで、2台のHDD44をそれぞれ2つのパーティションに分けた例である。
【0050】
なお、HDD44の台数、パーティションの数は3つ以上でもよい。また、各HDD44の記憶容量、各HDD44におけるパーティションのサイズは特に限定されないが、少なくとも重複記憶方式に割り当てるパーティションのサイズは複数のHDD44で同等にすることが好ましい。
【0051】
図7は、RAID構築後のHDD44のパーティション構成を示す図である。
【0052】
RAIDは、複数のHDDを1台のHDDとして管理する方法であり、複数のHDDにデータを分散して書き込むRAID0(又はRAID0を改良したRAID2〜6)、複数のHDDに同じデータを書きこむRAID1、といった方式がある。図7では、パーティションを分散記憶方式(例えば、RAID0若しくは同等の記憶方式)と重複記憶方式(例えば、RAID1若しくは同等の記憶方式)の領域としてOSに認識させている。例えば、Linuxでは、/dev/md0、/dev/md1といった識別子で認識される。
【0053】
このように、複数のHDD44を分散記憶方式と重複記憶方式の双方で利用可能にすることにより、データの種類に応じた記憶が可能となる。以下、上記構成のHDD44を用いてデータを記憶する方法について説明する。
【0054】
図8は、プリンタコントローラ部48で扱うデータの種類と保存領域(各記憶方式の領域)とを関連づけるテーブルの一例である。
【0055】
上記テーブルに記載したデータの内、プリントデータやスキャンデータは、高速に処理する必要があり、また、HDDの故障による交換時においても、ユーザが再度コンピュータ端末10から送信したり、画像読取部46で原稿を読み取ることができる。そこで、これらのデータは、保存の安全性よりも読み書きの高速性を優先して、重複記憶方式(以下、RAID0とする。)の領域を使用する。
【0056】
一方、フォントデータは、有償で購入する場合も多く、HDDの故障によりデータが失われてしまうと再度購入しなければならない。そこで、フォントデータは、読み書きの高速性よりも保存の安全性を優先して、重複記憶方式(以下、RAID1とする。)の領域に保存し、HDD故障時でも復元できるようにする。また、設定データはプリンタコントローラ部48の設定情報であるが、HDDの故障によりデータが失われてしまうと再度設定する必要がある。そこで、設定データは、フォントデータと同じく重複記憶方式の領域に保存する。
【0057】
上記テーブルに記載したプリントジョブとフォントデータを受信した場合の処理について、図9のフローチャート図を参照して説明する。
【0058】
まず、画像形成装置40の制御部41は、コンピュータ端末10から送信されたデータを受信すると(S101)、画像への展開処理(RIP)の前に、受信したデータがプリントデータであるかフォントデータであるかを判断する(S102)。
【0059】
例えば、図10に示すように、プリントデータには、PJL(Printer Job Language)コマンドと呼ばれるジョブの設定を行うコマンドが先頭に付加されることがある。PJLコマンドは、通常、部数や両面指定といった設定が行われるが、フォント用にFONTDOWNLOADというPJLコマンドを定義すれば、PJLコマンドの内容からプリントデータかフォントデータかを判断することができる。
【0060】
そして、プリントデータと判断した場合は、制御部41は、図8のテーブルを参照して、当該プリントデータをRAID0の領域に保存する(S103)。この場合、プリントデータは、HDD44a、HDD44bの両方に分散して保存される。保存されたプリントデータは、プリンタコントローラ部48によって再度読み出されて画像データに展開され(S104)、印刷処理部49によって印刷される(S105)。
【0061】
一方、フォントデータと判断した場合は、制御部41は必要に応じてフォントデータを展開し(S106)、図8のテーブルを参照して、当該フォントデータをRAID1の領域に保存する。この場合、フォントデータは、HDD44a、HDD44bの両方に重複して保存される。
【0062】
図11は、RAID0を利用したデータの記憶方法を模式的に示す図である。プリントデータ等のRAID0の領域に保存するデータは、等サイズのData Blockに分けられる。分けられたData Blockは、HDD44aとHDD44bに分散されて、同時に保存される。このように2台のHDD44に分散して書き込むため、書き込み量が半分となり書き込み速度が向上する。また、読み込みの際も2台のHDD44から同時に読み込まれるため、読み込み速度も向上する。
【0063】
図12は、RAID1を利用したデータの記憶方法を模式的に示す図である。フォントデータ等のRAID1の領域に保存するデータは、等サイズのData Blockに分けられる。各々のData Blockは、RAID0とは異なり、HDD44aとHDD44bの両方に保存される。このように2台のHDD44に重複して書き込むため、書き込み速度はRAID0に比べて遅くなり、記憶領域の占有率も増加するが、一方のデータが損失しても他方のデータで復旧できるため、保存の安全性は向上する。
【0064】
上記フローは、受信したデータが異なる種類のデータの場合であるが、受信したデータに基づいて新たなデータを生成する場合に、元のデータと生成したデータとでRAIDの領域を分けることもできる。
【0065】
図13は、RIP後の画像データを使って再印刷を行う場合を想定して、受信したプリントデータとRIP後の画像データを別々の領域に保存する例である。
【0066】
図14にその場合の保存手順を示す。まず、制御部41は、コンピュータ端末10からプリントデータを受信すると(S201)、受信したプリントデータをRAID1の領域に保存する(S202)。
【0067】
次に、保存されたプリントデータは、プリンタコントローラ部48によって再度読み出されて画像データに展開され(S203)、制御部41は、RIP後の画像データをRAID0の領域に保存する(S204)。その後、印刷処理部49によって印刷される(S205)
【0068】
このように、画像データをRAID0の領域を保存することによって、高速に画像データの保存することができると共に、再印刷時に高速に読み出すことが可能になる。また、HDD44が故障した場合も、プリントデータはRAID1の領域に保存してあることから、ユーザはコンピュータ端末10から再度プリントデータを送信することなく、再印刷が可能になる。なお、ここではプリントデータと画像データを例示したが、受信したデータに基づいて生成したデータを用いて処理を行う任意の種類のデータに適用することができる。
【0069】
図15は、スキャンデータを暗号化する場合を想定して、スキャンデータと暗号化したスキャンデータを別々の領域に保存する例である。スキャンデータは機密情報を含む場合があり、PDF(Portable Document Format)は暗号化することができることから、ユーザは重要なファイルをスキャンする場合に、暗号化PDFを選択するといった使い方がある。例えば、ユーザが暗号化の設定を行った場合はRAID1の領域に保存し、暗号化の設定を行っていない場合はRAID0の領域に保存することができる。
【0070】
図16にその場合の保存手順を示す。まず、ユーザは、操作パネルで暗号化の設定を行った後、スキャンの開始操作を行うと、画像読取部46はスキャンを実行する(S301)。
【0071】
次に、制御部41は、暗号化の設定の有無を判断し(S302)、暗号化設定有りの場合は、画像読取部46から読み込んだスキャナデータを暗号化してPDFファイルを生成し(S303)、暗号化PDFをRAID1の領域に保存する(S304)。一方、暗号化設定なしの場合は、制御部41は、暗号化せずにPDFファイルを生成し(S305)、生成したPDFをRAID0の領域に保存する(S306)。
【0072】
このように、暗号化PDFをRAID1の領域に保存することによって、重要なスキャンデータを安全に保存することができる。なお、ここではスキャンデータから暗号化PDFファイルを生成する例を示したが、暗号化の対象となるデータの種類、暗号化するデータの種類、暗号化の手法等は特に限定されない。
【0073】
次に、HDD故障時のデータの復旧方法について説明する。
【0074】
図17は、HDD故障時のデータの復旧手順を示すフローチャート図である。2台のHDDの一方が破損した場合、他方のHDDのみを使用する方法と、破損したHDDを交換してデータを復旧する方法がある。
【0075】
まず、制御部41は、電源投入時などにHDDの有無、パーティションの有無を確認して異常を検知し(S401)、異常があった場合、表示・操作部47にHDDの故障を通知する(S402)。ユーザは、表示・操作部47を操作して、1台のHDDのみを使用するか、HDDを交換するかを選択する(S403)。
【0076】
1台のHDDのみの使用が選択された場合は、1台のHDDで処理が行えるようにする。具体的には、RAID0の領域に対しては、保存されたデータが使用できないため、フォーマット処理を行う(S404)。RAID1の領域は1台でも使用できるため、そのまま使用する。この場合、HDDが1台になるため、性能の低下が起きてしまうが、例えば、サービスマンが来るまでの間に使用するといったことが可能になる。
【0077】
一方、HDDの交換が選択された場合は、新しいHDDに交換されたら(S405)、制御部41は、交換したHDDに対して故障したHDDと同様のパーティションを作成し(S406)、各パーティションの領域をRAID用の領域として認識させてRAIDを構築する(S407)。次に、制御部41は、故障していないHDDのRAID0の領域に記憶したデータは使用できないため、交換したHDDのRAID0の領域に対してフォーマット処理を行う(S408)。一方、故障していないHDDのRAID1の領域に記憶したデータは復旧できるため、その領域からデータを読み取り、交換したHDDのRAID1の領域にコピーする(S409)。
【0078】
このように、一方のHDDが故障した場合に、RAID0の領域とRAID1の領域とで異なる処理を行うことにより、RAID1の領域に保存したデータを復旧させることができ、データの損失を最小限に抑えることができる。
【0079】
上記フローでは、HDDが故障した場合にRAID1の領域に保存したデータを無条件に復旧させたが、RAID1のデータはHDDへのコピーが何度でも可能であるため、不正にコピーされる可能性がある。不正コピーを防止するには、図18のフローチャート図に従って処理することもできる。
【0080】
まず、制御部41は、HDDのフォーマット処理を行った後(S501)、HDDを特定する情報(例えば、HDDのシリアルNo.)を不揮発のRAMに登録しておく(S502)。その後、制御部41は、HDDに異常が発生したことを検知したら(S503)、データを復旧させるか否かを判断する(S504)。
【0081】
データを復旧させない場合は、HDDを交換した後(S505)、制御部41は、RAID0の領域をフォーマットし(S506)、続いてRAID1の領域をフォーマットする(S507)。
【0082】
一方、データを復旧させる場合は、HDDを交換した後(S508)、制御部41は、RAID0の領域をフォーマットする(S509)。次に、制御部41は、交換したHDDのシリアルNo.とRAMに保存されたシリアルNo.とを比較し、交換したHDDのシリアルNo.が登録されているかを判断する(S510)。登録されている場合は、不正なコピーではないため、制御部41は、故障していないHDDのRAID1の領域からデータを読み取り、交換したHDDのRAID1の領域にコピーする(S511)。登録されていない場合は、不正なコピーであるため、制御部41は、交換したHDDのRAID1の領域をフォーマットする(S512)。
【0083】
このように、フォーマット処理を行う際にシリアルNo.を不揮発RAMに保存しておき、交換したHDDのシリアルNo.が登録されていない場合にデータの復旧を禁止することにより、データの不正なコピーを未然に防止することができる。
【0084】
なお、上記実施例では、2つの記憶方式を併用してデータを記憶する場合を示したが、本発明は上記実施例に限定されるものではなく、3つ以上の記憶方式を併用する場合に対しても同様に適用することができる。
【0085】
また、上記実施例では、複数のHDDを備える記憶装置について記載したが、HDDと同等の記憶性能を有する記憶デバイス、例えば、SSD(Solid State Drive)を複数備える記憶装置に対しても同様に適用することができる。
【産業上の利用可能性】
【0086】
本発明は、複数の記憶デバイスを備える装置及び該装置におけるデータの記憶方法並びにデータの復旧方法に利用可能である。
【符号の説明】
【0087】
10 コンピュータ端末
11 制御部
12 CPU
13 メモリ
14 HDD
15 通信I/F部
16 表示部
17 操作部
20 サーバ
21 制御部
22 CPU
22a データ判別部
22b 記憶制御部
22c データ復旧部
23 メモリ
24 HDD
25 通信I/F部
30 通信ネットワーク
40 画像形成装置
41 制御部
42 CPU
42a データ判別部
42b 記憶制御部
42c データ復旧部
43 メモリ
44、44a、44b HDD
45 通信I/F部
46 画像読取部
47 表示・操作部
48 プリンタコントローラ部
49 印刷処理部
50 プリンタコントローラ
【技術分野】
【0001】
本発明は、記憶装置及び記憶制御方法に関し、特に、RAID(Redundant Arrays of Inexpensive Disks)を利用した記憶装置及び当該記憶装置におけるデータの記憶制御方法に関する。
【背景技術】
【0002】
ネットワークの普及及び記憶装置の大容量化に伴って、様々なデータがネットワーク上のサーバなどの記憶装置に保存されるようになってきている。このようなシステムでは、データを安全に保存すること、及び、データを高速に読み書きできるようにすることが求められる。
【0003】
ここで、通常、記憶装置は1台のHDD(Hard Disk Drive)に全てのデータを記憶しているが、HDDは可動部分を有するために障害が発生しやすく、障害が発生すると保存した全てのデータが失われてしまう恐れがある。
【0004】
このような背景から、データの記憶に関して、RAID(Redundant Arrays of Inexpensive Disks)と呼ばれる方式が提案されている。例えば、RAID0は、複数のHDDを利用して、データを分散して書き込むことで高速にデータの読み書きを行う方式であり、RAID1は、複数のHDDに同じデータを書き込み、耐障害性を上げる方式である。
【0005】
上記RAIDに関連する技術として、下記特許文献1には、複数のHDDを使用して画像データを高速に転送する方法が開示されている。また、下記特許文献2には、RAID1を利用して、1台が故障した際に、もう1台だけで動作/復旧させる方法が開示されている。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2004−343205号公報
【特許文献2】特開2004−208019号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
上記RAID0を利用することによりデータの読み書きを高速化することはできるが、1台のHDDが故障すると全てのデータが使用できなくなるという課題がある。また、RAID1を利用することにより耐障害性を向上させることはできるが、2台のHDDに同じデータを書き込むため、HDDの記憶容量が半減すると共に書き込みが遅くなるという課題がある。
【0008】
ここで、記憶装置に記憶するデータの種類は様々であり、頻繁にアクセスするデータは耐障害性の向上よりも読み書きの高速性を重視すると考えられ、一方、保存を目的とするデータは読み書きの高速性よりも耐障害性の向上を重視すると考えられる。そのため、RAID0又はRAID1のいずれかを利用して記憶する記憶装置では、このような様々な種類のデータを効率的に記憶することができないという問題があった。
【0009】
本発明は、上記問題点に鑑みてなされたものであって、その主たる目的は、データの種類に応じて読み書きの高速化と耐障害性の向上を図ることができることができる記憶装置及び記憶制御方法を提供することにある。
【0010】
また、本発明の他の目的は、障害が発生した場合に適切にデータを復旧させることができる記憶装置及び記憶制御方法を提供することにある。
【課題を解決するための手段】
【0011】
上記目的を達成するため、本発明は、複数のHDDを備える記憶装置において、データを前記複数のHDDに分割して記憶する分割記憶方式、及び、同じデータを前記複数のHDDに重複して記憶する重複記憶方式の2つの記憶方式で、データが記憶可能に構成されるものである。
【0012】
また、本発明は、複数のHDDを備える記憶装置における記憶制御方法において、前記記憶装置は、データを前記複数のHDDに分割して記憶する分割記憶方式、及び、同じデータを前記複数のHDDに重複して記憶する重複記憶方式の2つの記憶方式で、データが記憶可能であり、取得したデータの種類を判別した後、予め記憶したテーブルを参照して、前記取得したデータを、その種類に応じて、前記分割記憶方式又は前記重複記憶方式のいずれかで記憶するものである。
【0013】
また、本発明は、複数のHDDを備える記憶装置における記憶制御方法において、前記記憶装置は、データを前記複数のHDDに分割して記憶する分割記憶方式、及び、同じデータを前記複数のHDDに重複して記憶する重複記憶方式の2つの記憶方式で、データが記憶可能であり、各々の前記HDDは、前記分割記憶方式で利用される領域と前記重複記憶方式で利用される領域とに分割されており、いずれかの前記HDDを交換する場合に、交換したHDDに対して、前記分割記憶方式で利用される領域はフォーマットし、前記重複記憶方式で利用される領域は、他の前記HDDの前記重複記憶方式で利用される領域から読み取ったデータをコピーするものである。
【発明の効果】
【0014】
本発明の記憶装置及び記憶制御方法によれば、下記記載の効果を奏する。
【0015】
本発明の第1の効果は、データの種類に応じて読み書きの高速化と耐障害性の向上を図ることができるということである。
【0016】
その理由は、複数のHDDを備える記憶装置において、各々のHDDを複数の領域に分割し、その1つはデータを分散して記憶する分散記憶方式の領域として利用し、他の1つはデータを重複して記憶する重複記憶方式の領域として利用し、データを記憶する際に、データの種類を判別し、データの種類に応じて分散記憶方式若しくは重複記憶方式のいずれかで記憶させるからである。
【0017】
また、本発明の第2の効果は、障害が発生した場合に適切にデータを復旧させることができるということである。
【0018】
その理由は、いずれかのHDDに障害が発生して交換する場合に、他のHDDの重複記憶方式の領域に記憶されたデータを、交換したHDDの重複記憶方式の領域にコピーしてデータを復旧し、データの喪失を最小限に抑制するからである。また、交換したHDDが予め登録されているかを判別し、登録されている場合は重複記憶方式の領域に記憶されたデータをコピーし、登録されていない場合は全ての領域をフォーマットし、不正なコピーを防止するからである。
【図面の簡単な説明】
【0019】
【図1】本発明の一実施の形態に係るデータ記憶システムの構成を模式的に示す図である。
【図2】本発明の一実施の形態に係るサーバの構成を示すブロック図である。
【図3】本発明の一実施例に係るデータ記憶システムの構成を模式的に示す図である。
【図4】本発明の一実施例に係るコンピュータ端末の構成を示すブロック図である。
【図5】本発明の一実施例に係る画像形成装置の構成を示すブロック図である。
【図6】本発明の一実施例に係るHDDのパーティション構成を模式的に示す図である。
【図7】本発明の一実施例に係るHDDのRAID構築後のパーティション構成を模式的に示す図である。
【図8】データの種類と各記憶方式で利用する領域との関係を示すテーブルの一例である。
【図9】本発明の一実施例に係るデータ記憶方法の手順を示すフローチャート図である。
【図10】フォントデータの一例である。
【図11】本発明の一実施例に係る分散記憶方式を模式的に示す図である。
【図12】本発明の一実施例に係る重複記憶方式を模式的に示す図である。
【図13】データの種類と各記憶方式で利用する領域との関係を示すテーブルの他の例である。
【図14】本発明の一実施例に係るデータ記憶方法の他の手順を示すフローチャート図である。
【図15】データの種類と各記憶方式で利用する領域との関係を示すテーブルの他の例である。
【図16】本発明の一実施例に係るデータ記憶方法の他の手順を示すフローチャート図である。
【図17】本発明の一実施例に係るデータの復旧方法の手順を示すフローチャート図である。
【図18】本発明の一実施例に係るデータの復旧方法の他の手順を示すフローチャート図である。
【発明を実施するための形態】
【0020】
背景技術で示したように、複数のHDDにデータを分散して記憶する記憶方式(例えばRAID0など、以下、分散記憶方式と呼ぶ。)や、複数のHDDに同じデータを重複して記憶する記憶方式(例えばRAID1など、以下、重複記憶方式と呼ぶ。)などの記憶方式が提案されているが、いずれの記憶方式でも読み書きの高速化と耐障害性の向上の双方を達成することはできない。
【0021】
一方、記憶装置に記憶するデータには、耐障害性の向上よりも読み書きの高速性を重視するデータもあれば、読み書きの高速性よりも耐障害性の向上を重視するデータもある。
【0022】
そこで、本発明では、分散記憶方式と重複記憶方式とを併用し、データの種類(すなわち、データの特性)に合わせていずれかの記憶方式で記憶することによって、読み書きの高速化と耐障害性の向上の双方を満足できるようにする。
【0023】
以下、図面を参照して具体的に説明する。図1に示すように、本実施形態のデータ記憶システムは、保存するデータを送信するコンピュータ端末10と、データを保存するサーバ20と、を備え、これらは通信ネットワーク30で接続される。また、図2に示すように、サーバ20の制御部21は、CPU(Central Processing Unit)22、ROM(Read Only Memory)やRAM(Random Access Memory)などのメモリ23、複数台(ここでは2台)のHDD24、通信I/F部25などを備え、これらはバスを介して接続されている。
【0024】
このような2台のHDD24を備えるサーバ20において、各々のHDD24の記憶領域を複数(ここでは2つ)に分割し、各々のHDD24の一方の領域を分散記憶方式の領域に割り当て、他方の領域を重複記憶方式の領域に割り当てる。また、制御部21は、記憶するデータの種類を判別し、予め記憶したテーブルを参照して、データの種類に応じて分散記憶方式又は重複記憶方式のいずれかで記憶させたり、故障等により一方のHDDを交換する際に、他方のHDDの重複記憶方式の領域のデータを、交換したHDDの重複記憶方式の領域にコピーしたりする制御を行う。
【0025】
このような構成により、頻繁にアクセスするデータのように耐障害性の向上よりも読み書きの高速性を重視するデータは分散記憶方式で記憶され、保存を目的とするデータのように読み書きの高速性よりも耐障害性の向上を重視するデータは重複記憶方式で記憶されるため、データの種類に応じて読み書きの高速化と耐障害性の向上を図ることができる。また、いずれかのHDD24に障害が発生しても重複記憶方式で記憶されたデータは復旧することができるため、データの損失を最小限に抑えることができる。
【0026】
上記構成は任意の記憶装置に対して適用可能であるが、印刷に関するデータを取り扱うシステムでは特に有効である。そこで、以下の実施例では、本発明を印刷に関するデータを取り扱うシステムに適用する場合について説明する。
【実施例】
【0027】
上記した本発明の実施の形態についてさらに詳細に説明すべく、本発明の一実施例に係る記憶装置及び記憶制御方法について、図3乃至図18を参照して説明する。図3は、本実施例のデータ記憶システムの構成を模式的に示す図であり、図4は、本実施例のコンピュータ端末の構成を示すブロック図、図5は、本実施例の画像形成装置の構成を示すブロック図である。また、図6及び図7は、画像形成装置のHDDの構成を模式的に示す図であり、図8、13、15は、データの種類と記憶方式の領域とを関連づけるテーブルの一例、図10は、プリントデータの一例である。また、図11及び図12は、分散記憶方式と重複記憶方式を模式的に示す図であり、図9、14、16は、本実施例のデータ記憶方法を示すフローチャート図、図17及び図18は、本実施例のデータ復旧方法を示すフローチャート図である。
【0028】
印刷に関するデータを取り扱うシステムでは、プリントエンジンの高速化、高解像度化に伴い、画像形成装置(MFP:Multi Function Peripheral)のプリンタコントローラ部に要求される性能も高くなっている。プリンタコントローラ部では、データの一時的な保存などでHDDを使用するが、HDD1台の性能ではプリント性能が達成できなくなってきている。そこで、近年の画像形成装置では、複数台のHDDを利用して、データを分散して書き込むことでプリント性能の向上を図っている。
【0029】
しかしながら、画像形成装置においては、プリントジョブのデータ(以下、プリントデータと呼ぶ。)のように保存の安全性よりも読み書きのスピードが求められるデータや、フォントデータのように読み書きのスピードよりも保存の安全性が求められるデータなど、必ずしも読み書きのスピードと保存の安全性の両方を満足する必要のないデータを扱っている。
【0030】
そこで、本実施例では、このような印刷に関するデータの特徴を考慮して、様々な種類のデータを適切に保存できるようにし、HDDを交換する場合にデータを適切に復旧できるようにする。
【0031】
図3(a)に、本実施例のデータ記憶システムの構成を示す。本実施例のデータ記憶システムは、プリントデータを送信する1又は複数のクライアント(コンピュータ端末10)と、コンピュータ端末10から受信したプリントデータに基づいて印刷を行う画像形成装置40とを備え、これらはイーサネット(登録商標)、トークンリング、FDDI(Fiber-Distributed Data Interface)等の規格により定められるLAN(Local Area Network)やWAN(Wide Area Network)、電話回線等の通信ネットワーク30によって接続されている。
【0032】
コンピュータ端末10は、図4に示すように、制御部11と、通信I/F部15と、表示部16と、操作部17などを備え、これらは互いにバスを介して接続されている。
【0033】
制御部11は、CPU12、メモリ13、HDD14などで構成されている。CPU12は、各部の制御を行う。メモリ13は、HDD14や通信I/F部15から読み込んだ種々のデータを一時的に記憶する部分であり、記憶されたデータはCPU12によって処理され、必要に応じてHDD14や通信I/F部15に転送される。HDD14は、CPU12が各部を制御するためのプログラム、自装置の処理機能に関する情報などを格納し、CPU12により必要に応じて読み出され、メモリ13上で実行処理される。通信I/F部15は、通信ネットワーク30を介して繋がっている機器との接続を確立し、データの送受信を実行する。
【0034】
また、制御部11は、文書を作成するためのアプリケーションや文書の印刷を指示するプリンタドライバとして機能し、作成した文書データを画像形成装置40で読み取り可能な言語(PCL(Printer Control Language)やPS(Post Script)などのPDL(Page Description Language))のプリントデータに変換して、通信I/F部15を介して画像形成装置40に送信する。
【0035】
通信I/F部15は、通信ネットワーク30を介して繋がっている機器との接続を確立し、データの送受信を実行する。
【0036】
表示部16は、液晶表示装置(LCD:Liquid Crystal Display)や有機EL(electroluminescence)表示装置等からなり、印刷を指示するための画面等を表示する。
【0037】
操作部17は、表示部16上に表示された情報を操作したり、情報を入力したりする部分であり、ポインティングデバイス、キーボード、トラックボール、トラックパッド、タブレット、及びスタイラスペンなどで構成される。
【0038】
また、画像形成装置40は、図5に示すように、制御部41と、通信I/F部45と、画像読取部46と、表示・操作部47と、プリンタコントローラ部48と、印刷処理部49などを備え、これらは互いにバスを介して接続されている。
【0039】
制御部41は、CPU42、ROMやRAMなどのメモリ43、複数のHDD44(本実施例では、HDD44a及びHDD44b)などで構成されている。CPU42は各部の制御などを行う。また、CPU42は、ソフトウェアを実行することにより後述するプリンタコントローラ48として機能する。メモリ43は、HDD44、画像読取部46、通信I/F部45から読み込んだ種々のデータを一時的に記憶する部分で、記憶されたデータはCPU42によって処理され、HDD44に転送される。HDD44は、CPU42が各部を制御するためのプログラム、自装置の処理機能に関する情報、プリントデータやスキャンデータ、フォントデータ、設定データなどを格納し(記憶領域の構成及び各種データの記憶方法に関しては後述する。)、CPU42により必要に応じて読み出され、メモリ43上で実行処理される。
【0040】
また、制御部41は、取得したデータの種類を判別し、予め記憶したテーブルを参照して、データの種類に応じて、分散記憶方式又は重複記憶方式のいずれかでHDD44に記憶させたり、いずれかのHDD44に障害が発生した場合に、交換したHDDに、他のHDD44に重複記憶方式で記憶したデータをコピーして重複記憶方式での記憶状態を復旧させたり、交換したHDDが予め登録されているかを判断し、登録されている場合は重複記憶方式で記憶したデータをコピーし、登録されていない場合は全ての領域をフォーマットしたりする制御を行う。この制御はハードウェア又はソフトウェアのいずれで実行してもよい。
【0041】
通信I/F部45は、通信ネットワーク30を介して繋がっている機器との接続を確立し、データの送受信を実行する。
【0042】
画像読取部46は、原稿台上の原稿用紙から画像データを光学的に読み取る部分であり、原稿を走査する光源と、原稿で反射された光を電気信号に変換するCCD(Charge Coupled Devices)イメージセンサと、電気信号をA/D変換するA/D変換器等により構成される。
【0043】
表示・操作部47は、表示部上に、透明電極が格子状に配置された感圧式の操作部(タッチパネル)を設けたタッチパネルであり、手指やタッチペン等で押下された力点のXY座標を電圧値で検出し、検出された位置信号を操作信号として制御部41に出力する。
【0044】
CPU42により実現される機能としてのプリンタコントローラ部48は、プリントデータをRIP(Raster Image Processor)処理してページ毎の画像データ(ページデータ)を生成し、必要に応じて画像処理(サイズや解像度、白黒/カラー等の変換処理)やスクリーニングを行った後、ページデータを印刷処理部49に転送する。
【0045】
印刷処理部49は、電子写真方式や静電記録方式等の作像プロセスを利用した画像形成に必要な構成要素、例えば、感光体、転写ベルト、定着器、各種搬送ベルト等で構成され、プリンタコントローラ部48で処理した画像データに基づいて、指定された用紙に画像を形成する。
【0046】
なお、図3(a)では、本実施例のデータ記憶システムをコンピュータ端末10と画像形成装置40とで構成したが、図3(b)に示すように、コンピュータ端末10から受信したプリントデータをRIP処理してページデータを生成し、そのページデータを画像形成装置40に送信する装置(例えばプリンタコントローラ50)を含む構成としてもよい。その場合は、画像形成装置40又はプリンタコントローラ50の少なくとも一方に複数台のHDDを設けて上記制御を実行すればよい。
【0047】
次に、複数のHDDの構成について説明する。
【0048】
図6は、HDD44のパーティション構成を示す図である。
【0049】
HDD44は、パーティションと呼ばれる記憶領域で理論的に分割される。分割されたパーティションは、例えば、Windows(登録商標) OSにおいては、Cドライブ、Dドライブ、Linux OSにおいては、/dev/sda1、/dev/sda2というように認識される。図6は、Linuxで、2台のHDD44をそれぞれ2つのパーティションに分けた例である。
【0050】
なお、HDD44の台数、パーティションの数は3つ以上でもよい。また、各HDD44の記憶容量、各HDD44におけるパーティションのサイズは特に限定されないが、少なくとも重複記憶方式に割り当てるパーティションのサイズは複数のHDD44で同等にすることが好ましい。
【0051】
図7は、RAID構築後のHDD44のパーティション構成を示す図である。
【0052】
RAIDは、複数のHDDを1台のHDDとして管理する方法であり、複数のHDDにデータを分散して書き込むRAID0(又はRAID0を改良したRAID2〜6)、複数のHDDに同じデータを書きこむRAID1、といった方式がある。図7では、パーティションを分散記憶方式(例えば、RAID0若しくは同等の記憶方式)と重複記憶方式(例えば、RAID1若しくは同等の記憶方式)の領域としてOSに認識させている。例えば、Linuxでは、/dev/md0、/dev/md1といった識別子で認識される。
【0053】
このように、複数のHDD44を分散記憶方式と重複記憶方式の双方で利用可能にすることにより、データの種類に応じた記憶が可能となる。以下、上記構成のHDD44を用いてデータを記憶する方法について説明する。
【0054】
図8は、プリンタコントローラ部48で扱うデータの種類と保存領域(各記憶方式の領域)とを関連づけるテーブルの一例である。
【0055】
上記テーブルに記載したデータの内、プリントデータやスキャンデータは、高速に処理する必要があり、また、HDDの故障による交換時においても、ユーザが再度コンピュータ端末10から送信したり、画像読取部46で原稿を読み取ることができる。そこで、これらのデータは、保存の安全性よりも読み書きの高速性を優先して、重複記憶方式(以下、RAID0とする。)の領域を使用する。
【0056】
一方、フォントデータは、有償で購入する場合も多く、HDDの故障によりデータが失われてしまうと再度購入しなければならない。そこで、フォントデータは、読み書きの高速性よりも保存の安全性を優先して、重複記憶方式(以下、RAID1とする。)の領域に保存し、HDD故障時でも復元できるようにする。また、設定データはプリンタコントローラ部48の設定情報であるが、HDDの故障によりデータが失われてしまうと再度設定する必要がある。そこで、設定データは、フォントデータと同じく重複記憶方式の領域に保存する。
【0057】
上記テーブルに記載したプリントジョブとフォントデータを受信した場合の処理について、図9のフローチャート図を参照して説明する。
【0058】
まず、画像形成装置40の制御部41は、コンピュータ端末10から送信されたデータを受信すると(S101)、画像への展開処理(RIP)の前に、受信したデータがプリントデータであるかフォントデータであるかを判断する(S102)。
【0059】
例えば、図10に示すように、プリントデータには、PJL(Printer Job Language)コマンドと呼ばれるジョブの設定を行うコマンドが先頭に付加されることがある。PJLコマンドは、通常、部数や両面指定といった設定が行われるが、フォント用にFONTDOWNLOADというPJLコマンドを定義すれば、PJLコマンドの内容からプリントデータかフォントデータかを判断することができる。
【0060】
そして、プリントデータと判断した場合は、制御部41は、図8のテーブルを参照して、当該プリントデータをRAID0の領域に保存する(S103)。この場合、プリントデータは、HDD44a、HDD44bの両方に分散して保存される。保存されたプリントデータは、プリンタコントローラ部48によって再度読み出されて画像データに展開され(S104)、印刷処理部49によって印刷される(S105)。
【0061】
一方、フォントデータと判断した場合は、制御部41は必要に応じてフォントデータを展開し(S106)、図8のテーブルを参照して、当該フォントデータをRAID1の領域に保存する。この場合、フォントデータは、HDD44a、HDD44bの両方に重複して保存される。
【0062】
図11は、RAID0を利用したデータの記憶方法を模式的に示す図である。プリントデータ等のRAID0の領域に保存するデータは、等サイズのData Blockに分けられる。分けられたData Blockは、HDD44aとHDD44bに分散されて、同時に保存される。このように2台のHDD44に分散して書き込むため、書き込み量が半分となり書き込み速度が向上する。また、読み込みの際も2台のHDD44から同時に読み込まれるため、読み込み速度も向上する。
【0063】
図12は、RAID1を利用したデータの記憶方法を模式的に示す図である。フォントデータ等のRAID1の領域に保存するデータは、等サイズのData Blockに分けられる。各々のData Blockは、RAID0とは異なり、HDD44aとHDD44bの両方に保存される。このように2台のHDD44に重複して書き込むため、書き込み速度はRAID0に比べて遅くなり、記憶領域の占有率も増加するが、一方のデータが損失しても他方のデータで復旧できるため、保存の安全性は向上する。
【0064】
上記フローは、受信したデータが異なる種類のデータの場合であるが、受信したデータに基づいて新たなデータを生成する場合に、元のデータと生成したデータとでRAIDの領域を分けることもできる。
【0065】
図13は、RIP後の画像データを使って再印刷を行う場合を想定して、受信したプリントデータとRIP後の画像データを別々の領域に保存する例である。
【0066】
図14にその場合の保存手順を示す。まず、制御部41は、コンピュータ端末10からプリントデータを受信すると(S201)、受信したプリントデータをRAID1の領域に保存する(S202)。
【0067】
次に、保存されたプリントデータは、プリンタコントローラ部48によって再度読み出されて画像データに展開され(S203)、制御部41は、RIP後の画像データをRAID0の領域に保存する(S204)。その後、印刷処理部49によって印刷される(S205)
【0068】
このように、画像データをRAID0の領域を保存することによって、高速に画像データの保存することができると共に、再印刷時に高速に読み出すことが可能になる。また、HDD44が故障した場合も、プリントデータはRAID1の領域に保存してあることから、ユーザはコンピュータ端末10から再度プリントデータを送信することなく、再印刷が可能になる。なお、ここではプリントデータと画像データを例示したが、受信したデータに基づいて生成したデータを用いて処理を行う任意の種類のデータに適用することができる。
【0069】
図15は、スキャンデータを暗号化する場合を想定して、スキャンデータと暗号化したスキャンデータを別々の領域に保存する例である。スキャンデータは機密情報を含む場合があり、PDF(Portable Document Format)は暗号化することができることから、ユーザは重要なファイルをスキャンする場合に、暗号化PDFを選択するといった使い方がある。例えば、ユーザが暗号化の設定を行った場合はRAID1の領域に保存し、暗号化の設定を行っていない場合はRAID0の領域に保存することができる。
【0070】
図16にその場合の保存手順を示す。まず、ユーザは、操作パネルで暗号化の設定を行った後、スキャンの開始操作を行うと、画像読取部46はスキャンを実行する(S301)。
【0071】
次に、制御部41は、暗号化の設定の有無を判断し(S302)、暗号化設定有りの場合は、画像読取部46から読み込んだスキャナデータを暗号化してPDFファイルを生成し(S303)、暗号化PDFをRAID1の領域に保存する(S304)。一方、暗号化設定なしの場合は、制御部41は、暗号化せずにPDFファイルを生成し(S305)、生成したPDFをRAID0の領域に保存する(S306)。
【0072】
このように、暗号化PDFをRAID1の領域に保存することによって、重要なスキャンデータを安全に保存することができる。なお、ここではスキャンデータから暗号化PDFファイルを生成する例を示したが、暗号化の対象となるデータの種類、暗号化するデータの種類、暗号化の手法等は特に限定されない。
【0073】
次に、HDD故障時のデータの復旧方法について説明する。
【0074】
図17は、HDD故障時のデータの復旧手順を示すフローチャート図である。2台のHDDの一方が破損した場合、他方のHDDのみを使用する方法と、破損したHDDを交換してデータを復旧する方法がある。
【0075】
まず、制御部41は、電源投入時などにHDDの有無、パーティションの有無を確認して異常を検知し(S401)、異常があった場合、表示・操作部47にHDDの故障を通知する(S402)。ユーザは、表示・操作部47を操作して、1台のHDDのみを使用するか、HDDを交換するかを選択する(S403)。
【0076】
1台のHDDのみの使用が選択された場合は、1台のHDDで処理が行えるようにする。具体的には、RAID0の領域に対しては、保存されたデータが使用できないため、フォーマット処理を行う(S404)。RAID1の領域は1台でも使用できるため、そのまま使用する。この場合、HDDが1台になるため、性能の低下が起きてしまうが、例えば、サービスマンが来るまでの間に使用するといったことが可能になる。
【0077】
一方、HDDの交換が選択された場合は、新しいHDDに交換されたら(S405)、制御部41は、交換したHDDに対して故障したHDDと同様のパーティションを作成し(S406)、各パーティションの領域をRAID用の領域として認識させてRAIDを構築する(S407)。次に、制御部41は、故障していないHDDのRAID0の領域に記憶したデータは使用できないため、交換したHDDのRAID0の領域に対してフォーマット処理を行う(S408)。一方、故障していないHDDのRAID1の領域に記憶したデータは復旧できるため、その領域からデータを読み取り、交換したHDDのRAID1の領域にコピーする(S409)。
【0078】
このように、一方のHDDが故障した場合に、RAID0の領域とRAID1の領域とで異なる処理を行うことにより、RAID1の領域に保存したデータを復旧させることができ、データの損失を最小限に抑えることができる。
【0079】
上記フローでは、HDDが故障した場合にRAID1の領域に保存したデータを無条件に復旧させたが、RAID1のデータはHDDへのコピーが何度でも可能であるため、不正にコピーされる可能性がある。不正コピーを防止するには、図18のフローチャート図に従って処理することもできる。
【0080】
まず、制御部41は、HDDのフォーマット処理を行った後(S501)、HDDを特定する情報(例えば、HDDのシリアルNo.)を不揮発のRAMに登録しておく(S502)。その後、制御部41は、HDDに異常が発生したことを検知したら(S503)、データを復旧させるか否かを判断する(S504)。
【0081】
データを復旧させない場合は、HDDを交換した後(S505)、制御部41は、RAID0の領域をフォーマットし(S506)、続いてRAID1の領域をフォーマットする(S507)。
【0082】
一方、データを復旧させる場合は、HDDを交換した後(S508)、制御部41は、RAID0の領域をフォーマットする(S509)。次に、制御部41は、交換したHDDのシリアルNo.とRAMに保存されたシリアルNo.とを比較し、交換したHDDのシリアルNo.が登録されているかを判断する(S510)。登録されている場合は、不正なコピーではないため、制御部41は、故障していないHDDのRAID1の領域からデータを読み取り、交換したHDDのRAID1の領域にコピーする(S511)。登録されていない場合は、不正なコピーであるため、制御部41は、交換したHDDのRAID1の領域をフォーマットする(S512)。
【0083】
このように、フォーマット処理を行う際にシリアルNo.を不揮発RAMに保存しておき、交換したHDDのシリアルNo.が登録されていない場合にデータの復旧を禁止することにより、データの不正なコピーを未然に防止することができる。
【0084】
なお、上記実施例では、2つの記憶方式を併用してデータを記憶する場合を示したが、本発明は上記実施例に限定されるものではなく、3つ以上の記憶方式を併用する場合に対しても同様に適用することができる。
【0085】
また、上記実施例では、複数のHDDを備える記憶装置について記載したが、HDDと同等の記憶性能を有する記憶デバイス、例えば、SSD(Solid State Drive)を複数備える記憶装置に対しても同様に適用することができる。
【産業上の利用可能性】
【0086】
本発明は、複数の記憶デバイスを備える装置及び該装置におけるデータの記憶方法並びにデータの復旧方法に利用可能である。
【符号の説明】
【0087】
10 コンピュータ端末
11 制御部
12 CPU
13 メモリ
14 HDD
15 通信I/F部
16 表示部
17 操作部
20 サーバ
21 制御部
22 CPU
22a データ判別部
22b 記憶制御部
22c データ復旧部
23 メモリ
24 HDD
25 通信I/F部
30 通信ネットワーク
40 画像形成装置
41 制御部
42 CPU
42a データ判別部
42b 記憶制御部
42c データ復旧部
43 メモリ
44、44a、44b HDD
45 通信I/F部
46 画像読取部
47 表示・操作部
48 プリンタコントローラ部
49 印刷処理部
50 プリンタコントローラ
【特許請求の範囲】
【請求項1】
複数のHDDを備える記憶装置において、
データを前記複数のHDDに分割して記憶する分割記憶方式、及び、同じデータを前記複数のHDDに重複して記憶する重複記憶方式の2つの記憶方式で、データが記憶可能に構成される、ことを特徴とする記憶装置。
【請求項2】
各々の前記HDDは、複数の領域に分割され、
各々の前記HDDの1つの領域は、前記分割記憶方式で利用され、
各々の前記HDDの他の1つの領域は、前記重複記憶方式で利用される、ことを特徴とする請求項1に記載の記憶装置。
【請求項3】
前記分割記憶方式は、RAID0に基づく記憶方式であり、
前記重複記憶方式は、RAID1に基づく記憶方式である、ことを特徴とする請求項1又は2に記載の記憶装置。
【請求項4】
複数のHDDを備える記憶装置における記憶制御方法において、
前記記憶装置は、データを前記複数のHDDに分割して記憶する分割記憶方式、及び、同じデータを前記複数のHDDに重複して記憶する重複記憶方式の2つの記憶方式で、データが記憶可能であり、
取得したデータの種類を判別した後、予め記憶したテーブルを参照して、前記取得したデータを、その種類に応じて、前記分割記憶方式又は前記重複記憶方式のいずれかで記憶する、ことを特徴とする記憶制御方法。
【請求項5】
前記取得したデータを前記重複記憶方式で記憶した後、前記取得したデータに基づいて生成したデータを前記分割記憶方式で記憶する、ことを特徴とする請求項4に記載の記憶制御方法。
【請求項6】
前記取得したデータを前記分割記憶方式で記憶した後、前記取得したデータを暗号化したデータを前記重複記憶方式で記憶する、ことを特徴とする請求項4に記載の記憶制御方法。
【請求項7】
複数のHDDを備える記憶装置における記憶制御方法において、
前記記憶装置は、データを前記複数のHDDに分割して記憶する分割記憶方式、及び、同じデータを前記複数のHDDに重複して記憶する重複記憶方式の2つの記憶方式で、データが記憶可能であり、各々の前記HDDは、前記分割記憶方式で利用される領域と前記重複記憶方式で利用される領域とに分割されており、
いずれかの前記HDDを交換する場合に、交換したHDDに対して、前記分割記憶方式で利用される領域はフォーマットし、前記重複記憶方式で利用される領域は、他の前記HDDの前記重複記憶方式で利用される領域から読み取ったデータをコピーする、ことを特徴とする記憶制御方法。
【請求項8】
前記交換したHDDが予め登録されている場合は、前記分割記憶方式で利用される領域はフォーマットし、前記重複記憶方式で利用される領域は、他の前記HDDの前記重複記憶方式で利用される領域から読み取ったデータをコピーし、
前記交換したHDDが登録されていない場合は、前記分割記憶方式で利用される領域及び前記重複記憶方式で利用される領域をフォーマットする、ことを特徴とする請求項7に記載の記憶制御方法。
【請求項9】
前記分割記憶方式は、RAID0に基づく記憶方式であり、
前記重複記憶方式は、RAID1に基づく記憶方式である、ことを特徴とする請求項4乃至8のいずれか一に記載の記憶制御方法。
【請求項1】
複数のHDDを備える記憶装置において、
データを前記複数のHDDに分割して記憶する分割記憶方式、及び、同じデータを前記複数のHDDに重複して記憶する重複記憶方式の2つの記憶方式で、データが記憶可能に構成される、ことを特徴とする記憶装置。
【請求項2】
各々の前記HDDは、複数の領域に分割され、
各々の前記HDDの1つの領域は、前記分割記憶方式で利用され、
各々の前記HDDの他の1つの領域は、前記重複記憶方式で利用される、ことを特徴とする請求項1に記載の記憶装置。
【請求項3】
前記分割記憶方式は、RAID0に基づく記憶方式であり、
前記重複記憶方式は、RAID1に基づく記憶方式である、ことを特徴とする請求項1又は2に記載の記憶装置。
【請求項4】
複数のHDDを備える記憶装置における記憶制御方法において、
前記記憶装置は、データを前記複数のHDDに分割して記憶する分割記憶方式、及び、同じデータを前記複数のHDDに重複して記憶する重複記憶方式の2つの記憶方式で、データが記憶可能であり、
取得したデータの種類を判別した後、予め記憶したテーブルを参照して、前記取得したデータを、その種類に応じて、前記分割記憶方式又は前記重複記憶方式のいずれかで記憶する、ことを特徴とする記憶制御方法。
【請求項5】
前記取得したデータを前記重複記憶方式で記憶した後、前記取得したデータに基づいて生成したデータを前記分割記憶方式で記憶する、ことを特徴とする請求項4に記載の記憶制御方法。
【請求項6】
前記取得したデータを前記分割記憶方式で記憶した後、前記取得したデータを暗号化したデータを前記重複記憶方式で記憶する、ことを特徴とする請求項4に記載の記憶制御方法。
【請求項7】
複数のHDDを備える記憶装置における記憶制御方法において、
前記記憶装置は、データを前記複数のHDDに分割して記憶する分割記憶方式、及び、同じデータを前記複数のHDDに重複して記憶する重複記憶方式の2つの記憶方式で、データが記憶可能であり、各々の前記HDDは、前記分割記憶方式で利用される領域と前記重複記憶方式で利用される領域とに分割されており、
いずれかの前記HDDを交換する場合に、交換したHDDに対して、前記分割記憶方式で利用される領域はフォーマットし、前記重複記憶方式で利用される領域は、他の前記HDDの前記重複記憶方式で利用される領域から読み取ったデータをコピーする、ことを特徴とする記憶制御方法。
【請求項8】
前記交換したHDDが予め登録されている場合は、前記分割記憶方式で利用される領域はフォーマットし、前記重複記憶方式で利用される領域は、他の前記HDDの前記重複記憶方式で利用される領域から読み取ったデータをコピーし、
前記交換したHDDが登録されていない場合は、前記分割記憶方式で利用される領域及び前記重複記憶方式で利用される領域をフォーマットする、ことを特徴とする請求項7に記載の記憶制御方法。
【請求項9】
前記分割記憶方式は、RAID0に基づく記憶方式であり、
前記重複記憶方式は、RAID1に基づく記憶方式である、ことを特徴とする請求項4乃至8のいずれか一に記載の記憶制御方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【公開番号】特開2010−198424(P2010−198424A)
【公開日】平成22年9月9日(2010.9.9)
【国際特許分類】
【出願番号】特願2009−43631(P2009−43631)
【出願日】平成21年2月26日(2009.2.26)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.Linux
【出願人】(303000372)コニカミノルタビジネステクノロジーズ株式会社 (12,802)
【Fターム(参考)】
【公開日】平成22年9月9日(2010.9.9)
【国際特許分類】
【出願日】平成21年2月26日(2009.2.26)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.Linux
【出願人】(303000372)コニカミノルタビジネステクノロジーズ株式会社 (12,802)
【Fターム(参考)】
[ Back to top ]