特許第6384066号(P6384066)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 日本電気株式会社の特許一覧

<>
  • 特許6384066-データ管理装置およびデータ管理方法 図000002
  • 特許6384066-データ管理装置およびデータ管理方法 図000003
  • 特許6384066-データ管理装置およびデータ管理方法 図000004
  • 特許6384066-データ管理装置およびデータ管理方法 図000005
  • 特許6384066-データ管理装置およびデータ管理方法 図000006
  • 特許6384066-データ管理装置およびデータ管理方法 図000007
  • 特許6384066-データ管理装置およびデータ管理方法 図000008
  • 特許6384066-データ管理装置およびデータ管理方法 図000009
  • 特許6384066-データ管理装置およびデータ管理方法 図000010
  • 特許6384066-データ管理装置およびデータ管理方法 図000011
  • 特許6384066-データ管理装置およびデータ管理方法 図000012
  • 特許6384066-データ管理装置およびデータ管理方法 図000013
  • 特許6384066-データ管理装置およびデータ管理方法 図000014
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6384066
(24)【登録日】2018年8月17日
(45)【発行日】2018年9月5日
(54)【発明の名称】データ管理装置およびデータ管理方法
(51)【国際特許分類】
   G06F 12/00 20060101AFI20180827BHJP
【FI】
   G06F12/00 531M
   G06F12/00 531D
   G06F12/00 545A
【請求項の数】8
【全頁数】28
(21)【出願番号】特願2014-41673(P2014-41673)
(22)【出願日】2014年3月4日
(65)【公開番号】特開2015-166988(P2015-166988A)
(43)【公開日】2015年9月24日
【審査請求日】2017年2月15日
【前置審査】
(73)【特許権者】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(74)【代理人】
【識別番号】100109313
【弁理士】
【氏名又は名称】机 昌彦
(74)【代理人】
【識別番号】100124154
【弁理士】
【氏名又は名称】下坂 直樹
(72)【発明者】
【氏名】栗田 武
【審査官】 福田 正悟
(56)【参考文献】
【文献】 特開2013−131060(JP,A)
【文献】 特開2004−126716(JP,A)
【文献】 特開2013−033433(JP,A)
【文献】 特開2006−202017(JP,A)
【文献】 特開2007−334836(JP,A)
【文献】 特開2013−174987(JP,A)
【文献】 特開2008−191898(JP,A)
【文献】 特開2008−176608(JP,A)
【文献】 米国特許出願公開第2013/0275695(US,A1)
【文献】 特開2005−115438(JP,A)
【文献】 特開2004−171224(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 12/00
(57)【特許請求の範囲】
【請求項1】
ネットワークを介して接続された複数の記憶装置それぞれを、前記記憶装置ごとに複数の項目の特性の評価を基にした総合評価点を算出して評価する記憶装置評価手段と、
バックアップを行うデータの保存先を、前記総合評価点を基に前記記憶装置から複数、選択する記憶装置選択手段と、
前記記憶装置ごとに分割データを割り当てる数を、前記総合評価点を複数段階で分け、前記総合評価点が高い段階に属する前記記憶装置ほど割り当てられる数が多くなるように設定する割当数算出手段と、
バックアップを行う前記データを、前記割当数算出手段が算出した前記記憶装置に割り当てる数の合計数を満たし、所定の冗長性を満たすように分割して前記分割データとして生成するデータ分割手段と、
前記割当数算出手段が算出した前記記憶装置ごとに割り当てる数に従って、同一の前記記憶装置に前記データの復元に必要な前記分割データの全てが保存されない秘匿性の条件と、所定の数の前記記憶装置が稼動を停止しても他の前記記憶装置に保存されている分割データを元に前記データの復元が可能であるように保存する冗長性の条件とを満たすように前記分割データの保存先を決定する保存先決定手段と、
前記保存先決定手段が決定した保存先の前記記憶装置に前記分割データをそれぞれ書き込むデータ送信手段と
を備えることを特徴とするデータ管理装置。
【請求項2】
前記記憶装置の稼動状態を監視する稼動状態監視手段をさらに備え、
前記稼動状態監視手段が前記記憶装置の稼働の停止を検知したときに、前記記憶装置選択手段は、稼動の停止が検知された前記記憶装置をバックアップを行う前記データの保存先として選択しないことを特徴とする請求項1に記載のデータ管理装置。
【請求項3】
前記記憶装置から前記分割データを読み込むデータ受信手段と、
前記データ受信手段が読み込みを行った前記分割データが、前記データ分割手段が書き込みを行ったときから改変していないかを判断するデータ確認手段とをさらに備え、
前記データ確認手段が、前記分割データの改変を検知したときに、前記記憶装置選択手段は、改変が検知された前記分割データが保存されていた前記記憶装置を、保存先として選択しないことを特徴とする請求項1または2に記載のデータ管理装置。
【請求項4】
前記記憶装置の稼働の停止、または、前記分割データの改変を検知したときに、
前記データ受信手段がバックアップを行った前記データの復元に必要な前記分割データを前記記憶装置から読み出し、前記データの復元後に、再度、前記記憶装置に前記データを分割して保存することを特徴とする請求項3に記載のデータ管理装置。
【請求項5】
請求項1から4いずれかに記載のデータ管理装置と、
バックアップを行うデータを送信する送信手段を有する情報処理装置と、
複数の記憶装置とを備え、
前記データ管理装置は、前記情報処理装置から受信するバックアップを行う前記データを分割して、前記記憶装置に保存することを特徴とするデータ管理システム。
【請求項6】
ネットワークを介して接続された複数の記憶装置それぞれを、前記記憶装置ごとに複数の項目の特性の評価を基にした総合評価点を算出して評価する記憶装置評価処理と、
バックアップを行うデータの保存先を、前記総合評価点を基に前記記憶装置から選択する記憶装置選択処理と、
前記記憶装置ごとに分割データを割り当てる数を、前記総合評価点を複数段階で分け、前記総合評価点が高い段階に属する前記記憶装置ほど割り当てられる数が多くなるように設定し、バックアップを行う前記データを、所定の冗長性を満たし、算出した前記記憶装置に割り当てる数の合計数を満たすように分割して前記分割データとして生成するデータ分割処理と、
算出した前記記憶装置ごとに割り当てる数に従って、同一の前記記憶装置に前記データの復元に必要な前記分割データの全てが保存されない秘匿性の条件と、所定の数の前記記憶装置が稼動を停止しても他の前記記憶装置に保存されている分割データを元に前記データの復元が可能であるように保存する冗長性の条件とを満たすように前記分割データの保存先を決定する保存先決定処理と、
前記保存先決定処理において決定した保存先の前記記憶装置に前記分割データをそれぞれ書き込むデータ送信処理と
を行うことを特徴とするコンピュータプログラム。
【請求項7】
ネットワークを介して接続された複数の記憶装置それぞれを、前記記憶装置ごとに複数の項目の特性の評価を基にした総合評価点を算出して評価し、
バックアップを行うデータの保存先を、前記総合評価点を基に前記記憶装置から選択し、
前記記憶装置ごとに分割データを割り当てる数を、前記総合評価点を複数段階で分け、前記総合評価点が高い段階に属する前記記憶装置ほど割り当てられる数が多くなるように設定し、
バックアップを行う前記データを、所定の冗長性を満たし、算出した前記記憶装置に割り当てる数の合計数を満たすように分割して前記分割データとして生成し、
算出した前記記憶装置ごとに割り当てる数に従って、同一の前記記憶装置に前記データの復元に必要な前記分割データの全てが保存されない秘匿性の条件と、所定の数の前記記憶装置が稼動を停止しても他の前記記憶装置に保存されている分割データを元に前記データの復元が可能であるように保存する冗長性の条件とを満たすように前記分割データの保存先を決定し、
決定した保存先の前記記憶装置に前記分割データをそれぞれ書き込むことを特徴するデータ管理方法。
【請求項8】
前記記憶装置の稼動状態を監視し、
前記記憶装置の稼働の停止を検知したときに、稼動の停止が検知された前記記憶装置をバックアップを行う前記データの保存先として選択しないことを特徴とする請求項7に記載のデータ管理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、データのバックアップ技術に関するものであり、特にオンラインストレージへデータを保存する技術に関するものである。
【背景技術】
【0002】
情報通信社会の発展とともに、様々な情報が電子データとして扱われるようになり、重要な情報についても電子データのまま処理や保存を行うことが多くなっている。そのような情報を含む電子データは失われることが許容されないため、情報処理装置や記憶装置の障害等に備え、電子データのバックアップを安全に保存しておくことが重要になっている。
【0003】
データのバックアップのためには十分な容量を有する記憶装置を、データのバックアップ用として備えることによりバックアップが必要なデータを保存しておく方法が考えられる。しかし、変動するデータ量に対応するようにバックアップ用の記憶装置を備えておくことは効率的ではない。また、バックアップ用の記憶装置や付帯装置が故障したときのために冗長性を有するようなシステムの構成とした場合、バックアップ用のシステムの構成は大がかりなものとなり得る。
【0004】
データの変動量に対応する方法としては、ネットワークを介して記憶装置を複数の利用者が共有する方法がある。記憶装置を共有することにより、データの増大に合わせた記憶容量を有する記憶装置を利用者がそれぞれ備えることが不要となる。このような共有の記憶装置としては、データ所有者以外の事業者が提供する運営する複数のオンラインストレージ、すなわち、ネットワークを介して接続された複数の記憶装置を利用することができる。また、冗長性への対応としては、ネットワークを介して接続された複数の記憶装置に分散して、バックアップとしてのデータを保存することにより冗長性を確保する方法がある。このように、オンラインストレージデータを保存することにより、データ量の変動への対応と冗長性の確保に対応することが可能となり得る。
【0005】
しかし、オンラインストレージを利用する場合は、利用者が管理権限を有していないことも多く、直接、安全性や信頼性についての管理を行うことが出来ない。例えば、オンラインストレージの管理者側の理由や障害の発生により稼動の停止等が行われ、利用できなくなる懸念もある。また、ネットワークを介して接続されていることから外部からの攻撃によりデータが漏えいする危険性も有する。そのため、重要なデータの保存先としてオンラインストレージを利用する際には、稼動が停止したときへの対策やデータの安全性を維持する対策を施す必要がある。
【0006】
また、オンラインストレージは個々の性能や仕様が異なり、データのバックアップを行う際の書き込みに要する時間や、バックアップを行ったデータの読み出しに要する時間にもばらつきが生じ得る。しかし、データの処理はリアルタイムで行えることが望ましく、またバックアップを行ったデータが必要になったときには、素早く確実に読み出せることが望ましい。そのため、データのバックアップに関する処理を、安全性を確保しつつ一定の処理性能を維持して行えることへの要求も高い。そのような要求に対応するため、オンラインストレージへのデータのバックアップに関連する技術の開発も盛んに行われている。オンラインストレージにバックアップデータを保存する技術としては、例えば、特許文献1のような技術が開示されている。
【0007】
特許文献1は、オンラインストレージにデータのバックアップを行う、データバックアップシステムに関するものである。特許文献1のバックアップシステムは、バックアップデータを暗号化し、暗号化処理を行った単位であるブロックを分割してオンラインストレージへの保存を行っている。特許文献1のバックアップシステムは、暗号化したデータの復元に必要な連続データが、1つのオンラインストレージに保存されることがないようにブロックの分割を行ってデータを保存している。特許文献1では、データを分割してバックアップを行うことで、第三者が運営するオンラインストレージに、データの安全性を確保してデータの保存を行うことが出来るとしている。
【先行技術文献】
【特許文献】
【0008】
【特許文献1】特開2011−175578号公報
【発明の概要】
【発明が解決しようとする課題】
【0009】
しかしながら、特許文献1の技術は次のような点で十分ではない。特許文献1では、バックアップを行うデータを暗号化して分割し、連続したデータが同一のオンラインストレージに保存されないようにして安全性の確保が行われている。しかし、特許文献1では、あらかじめ定められたオンラインストレージを用いてデータのバックアップが決定している。そのため、特許文献1の技術では、オンラインストレージでの障害の発生や稼働停止等が生じたときに対応することができない。すなわち、特許文献1のデータバックアップシステムでは、オンラインストレージに障害等が生じたときに、他のオンラインストレージから性能を維持し得るオンラインストレージを選択して処理を継続することができない。
よって、特許文献1は、処理性能の維持した継続的な運用と高い安全性の両立を要するデータのバックアップに用いるための技術としては十分ではない。
【0010】
本発明は、処理性能の維持しつつバックアップを行うデータの安全性の確保が可能なデータ管理装置を得ることを目的としている。
【課題を解決するための手段】
【0011】
上記の課題を解決するため、本発明のデータ管理装置は、記憶装置評価手段と、記憶装置選択手段と、データ分割手段と、保存先決定手段と、データ送信手段を備えている。記憶装置評価手段は、ネットワークを介して接続された複数の記憶装置の所定の特性を評価する。記憶装置選択手段は、バックアップを行うデータの保存先を、評価点を基に複数の記憶装置から選択する。データ分割手段は、バックアップを行うデータを、冗長性を満たすように分割して分割データとして生成する。保存先決定手段は、記分割データ全てが同一の記憶装置に保存されないように決定する。データ送信手段は、保存先決定手段が決定した保存先の記憶装置に分割データをそれぞれ書き込む。
【0012】
本発明のデータ管理方法は、ネットワークを介して接続された複数の記憶装置の所定の特性を評価する。本発明のデータ管理方法は、バックアップを行うデータの保存先を、所定の特性の評価結果を基に前記記憶装置から選択する。本発明のデータ管理方法は、バックアップを行うデータを、冗長性を満たすように分割して分割データとして生成する。本発明のデータ管理方法は、分割データ全てが同一の記憶装置に保存されないように決定する。本発明のデータ管理方法は、決定した保存先の記憶装置に分割データをそれぞれ書き込む。
【発明の効果】
【0013】
本発明によると、処理性能の維持しつつバックアップを行うデータの安全性を確保することができる。
【図面の簡単な説明】
【0014】
図1】本発明の第1の実施形態の構成の概要を示す図である。
図2】本発明の第2の実施形態の構成の概要を示す図である。
図3】本発明の第2の実施形態のデータ管理装置の構成の概要を示す図である。
図4】本発明の第2の実施形態におけるデータ構成の例を示す図である。
図5】本発明の第2の実施形態におけるデータ構成の例を示す図である。
図6】本発明の第2の実施形態におけるデータ構成の例を示す図である。
図7】本発明の第2の実施形態における各データの関係を模式的に示した図である。
図8】本発明の第2の実施形態における動作フローの概要を示した図である。
図9】本発明の第2の実施形態における動作フローの概要を示した図である。
図10】本発明の第2の実施形態における動作フローの概要を示した図である。
図11】本発明の第2の実施形態におけるデータの割り当て方法の例を説明した図である。
図12】本発明の第2の実施形態における動作フローの概要を示した図である。
図13】本発明の第2の実施形態における動作フローの概要を示した図である。
【発明を実施するための形態】
【0015】
本発明の第1の実施形態について図を参照して詳細に説明する。図1は本実施形態のデータ管理装置の構成の概要を示したものである。本実施形態のデータ管理装置は、記憶装置評価手段11と、記憶装置選択手段12と、データ分割手段13と、保存先決定手段14と、データ送信手段15を備えている。
【0016】
記憶装置評価手段11は、ネットワークを介して接続された複数の記憶装置の所定の特性を評価する。記憶装置選択手段12は、バックアップを行うデータの保存先を、所定の特性の評価結果を基に複数の記憶装置から選択する。データ分割手段13は、バックアップを行うデータを、所定の冗長性を満たすように分割して分割データとして生成する。保存先決定手段14は、分割データ全てが同一の記憶装置に保存されないように決定する。データ送信手段15は、保存先決定手段14が決定した保存先の記憶装置に分割データをそれぞれ書き込む。
【0017】
本実施系形態のデータ管理装置は、記憶装置評価手段11においてネットワークを介して接続された複数の記憶装置の評価を行い、評価結果を基に記憶装置選択手段12が、バックアップを行うデータの保存先となる記憶装置を複数の中から選択している。本実施形態のデータ管理装置では、記憶装置の所定の特性の評価を行って保存先を選択することにより、処理性能を維持することができる。また、本実施系形態のデータ管理装置は、データ分割手段13がバックアップを行うデータを所定の冗長性を満たすように分割している。また、データを復元するのに必要な分割データ全てが同一の記憶装置に保存されないよう記憶装置に保存される。そのため、同一の記憶装置にデータの復元に必要な分割データの全てが保存されることはなく、安全性を確保することができる。以上より、本実施形態のデータ管理装置が処理性能を維持しつつ、バックアップを行ったデータの安全性を確保することができる。
【0018】
本発明の第2の実施形態について図を参照して詳細に説明する。図2は本実施形態の情報処理システムの構成の概要を示している。
【0019】
本実施形態の情報処理システムは、データ管理装置100と、バックアップサーバ201と、オンラインストレージ202と、内部ネットワーク203と、外部ネットワーク204を備えている。オンラインストレージ202は、複数、備えられている。データ管理装置100とバックアップサーバ201は、内部ネットワーク203を介して接続されている。また、データ管理装置100とオンラインストレージ202は、外部ネットワーク204を介して接続されている。
【0020】
図3は、本実施形態のデータ管理装置100の構成の概要を示している。データ管理装置100は、バックアップデータ送受信部110と、ストレージ監視部120と、ストレージ管理部130と、データ管理部140と、データ操作部150と、ストレージデータ操作部160とを備えている。
【0021】
ストレージ監視部120は、オンラインストレージ202の稼働状態や性能について監視する機能を有する。また、オンラインストレージ202に保存したデータの改変の有無を監視する機能を有している。ストレージ監視部120は、データ改変監視部121と、性能監視部122と、稼動監視部123を備えている。
【0022】
データ改変監視部121は、オンラインストレージ202に書き込んだデータが改変の有無を確認する機能を有する。データ改変監視部121がデータの改変を検知した場合は、そのデータが書き込まれたオンラインストレージ202は、データのバックアップの候補から除外される。すなわち、データの改変が検知されたオンラインストレージ202は、データのバックアップ先として使用されない。データ改変監視部121によりデータの改変が検知されていないオンラインストレージ202は、バックアップ先またはバックアップ先の候補として継続的して使用される。
【0023】
性能監視部122は、オンラインストレージ202のデータの書き込みおよび読み出しに要するレスポンス時間を計測し、書き込みの速度および読み出しの速度を算出する機能を有する。性能監視部122は、算出した書き込みの速度および読み出しの速度の情報を、サービス管理部131に保存されているサービス管理表に、オンラインストレージ202の識別情報と関連づけて保存する。オンラインストレージ202の識別情報とは、個々のオンラインストレージ202を識別するための識別子の情報のことをいう。
【0024】
稼動監視部123は、オンラインストレージ202の動作状況を監視する機能を有する。稼動監視部123がオンラインストレージ202の障害等を検知した場合は、そのオンラインストレージ202は、データのバックアップ先の候補から除外される。稼動監視部123は、データの書き込みまたは読み出しが不可の場合やタイムアウト、すなわち、所定の時間内に完了できないときに、該当するオンラインストレージ202に障害等が発生していると判断する。また、稼動監視部123により稼動状態にあることが判断されたオンラインストレージ202は、バックアップ先またはバックアップ先の候補として継続して使用される。
【0025】
ストレージ管理部130は、各オンラインストレージ202がデータの保存先として適するかの情報を取得し、管理する機能を有する。ストレージ管理部130は、サービス管理部131と、スコア算出部132を備えている。
【0026】
サービス管理部131は、各オンラインストレージ202の情報をサービス管理表として保存している。図4は、本実施形態のサービス管理表の例を示したものである。図4のオンラインストレージは、オンラインストレージ202の識別情報である。図4の例では、オンラインストレージ202の識別情報は、オンラインストレージ202を提供している事業者の名称が識別子として設定され、A社やB社のように保存されている。稼動状態は、オンラインストレージ202の稼働の有無を示している。稼動状態の情報は、正常に稼働している場合は「○」、何らかの不具合が発生している場合や完全に停止している場合は「×」として保存されている。
【0027】
図4のデータ改変有無は、オンラインストレージ202に書き込まれたデータの改変の有無の実績が記録されている。データの改変とは、データの書き込み後に生じたデータの破損や第三者による意図的なデータの変更が行われたことをいう。データ改変有無の情報は、データの改変が生じたことがある場合は「有」、データの改変が生じたことがない場合は「無」として保存されている。データ改変の有無の情報は、オンラインストレージ202のメンテナンス後などにリセットされて「無」に戻される。
【0028】
書き込み速度は、オンラインストレージ202にデータの書き込みを行う際の速度の情報である。図4の例では、書き込み速度の情報は、10Mbps(Megabits Per Second)のように保存されている。本実施形態では書き込み速度は、所定の時点からの後に行われた各オンラインストレージ202へのデータの書き込み動作の平均値として保存されている。
【0029】
読み込み速度は、オンラインストレージ202に保存されたデータの読み込みを行う際の速度である。図4の例では、読み込み速度の情報は、25Mbpsのように保存されている。本実施形態では読み込み速度は、所定の時点からの後に行われた各オンラインストレージ202からのデータの読み込み動作の平均値として保存されている。
【0030】
従量課金は、各オンラインストレージ202を利用する際のデータ量あたりの課金の有無を示している。従量課金の情報は、データ量あたりの課金が行われる場合は「有」、データ量あたりの課金が行われない場合は「無」として保存されている。1GB(Gigabyte)料金は、従量課金が「有」の場合に、データの保存に要する1GBあたりの料金を示している。
【0031】
容量制限は、各オンラインストレージ202について、保存するデータの総容量の制限の有無を示している。例えば、各オンラインストレージ202を管理する事業者等により、利用者が利用するデータの保存量の最大値が設定されている場合は、容量制限は「有」になる。容量制限の情報は、データの保存量に制限がある場合は「有」、制限がない場合は「無」として保存されている。残容量は、容量制限が「有」の場合に、既に保存しているデータに加えて、さらに保存することが可能なデータの容量を示している。残容量の情報は、1.4TB(Terabyte)のように保存されている。転送量制限は、転送量、すなわち、データの送受信時の帯域の制限の有無を示している。転送量制限の情報は、転送量に制限がある場合は「有」、転送量に制限がない場合は「無」として保存されている。残転送量は、転送量制限が「有」の場合に、現在、使用している帯域に加えて使用できる帯域の容量を示している。
【0032】
スコアは、スコア算出部132が算出した各オンラインストレージ202の評価点を示している。スコアの情報は、最高の評価点が1、最低の評価点が0となるように設定されている。スコアが0のオンラインストレージ202は、データの保存先としては使用されない。
【0033】
スコア算出部132は、サービス管理表の情報に基づいて各オンラインストレージ202の評価値であるスコアを算出する機能を有する。スコアの算出方法の例については、後で説明する。
【0034】
データ管理部140は、各オンラインストレージ202に保存されているデータ管理する機能を有する。データ管理部140は、分割データ管理部141と、格納データ管理部142と、格納箇所判断部143と、格納箇所再配置部144と、冗長性確認部145と、再送判断部146を備えている。
【0035】
分割データ管理部141は、データブロック分割データ、データブロックおよびバックアップデータを互いに紐づけた情報を分割データ管理表として保存して関する機能を有する。バックアップデータは、バックアップサーバ201からデータ管理装置100に送られてくるバックアップを行う対象となるデータである。データブロックは、バックアップデータを分割して生成されるデータである。また、データブロック分割データは、データブロックをさらに分割して生成されるデータである。オンラインストレージ202へのデータの保存は、データブロック分割データを単位として行われる。図5は、本実施形態の分割データ管理表の例を示したものである。図5に示す通り、分割データ管理表は、データブロック分割データ、データブロック、バックアップデータ、サイズおよび復元時に必要なデータブロック分割データの情報により構成されている。
【0036】
分割データ管理表のデータブロック分割データは、個々のデータブロック分割データを識別するための識別子の情報である。データブロックは、個々のデータブロックを識別するための識別子の情報である。バックアップデータは、個々のバックアップデータを識別するための識別子の情報である。サイズは、データブロック分割データのデータ量の情報である。復元時に必要なデータブロック分割データは、データブロックを復元する際に必要なデータブロック分割データの数を示す情報である。
【0037】
格納データ管理部142は、データブロック分割データの保存先の情報を格納データ管理表として保存して管理する機能を有する。図6は、本実施形態の格納データ管理表の例を示している。図6に示す通り、格納データ管理表はデータブロック分割データ、書き込み時レスポンス、読み込み時レスポンス、書き込み成否、読み込み成否および書き込み先の情報で構成されている。データブロック分割データは、データブロック分割データの識別子の情報である。書き込み時レスポンスは、書き込みを行うデータの送信をオンラインストレージ202に対して行ってから、書き込み完了の信号を受信するまでに要した時間の情報である。書き込み成否は、オンラインストレージ202に正常に書き込みが行えたかを示す情報である。書き込み成否の情報は、正常に書き込みを行えた場合は「○」、書き込みが正常に行えなかった場合は「×」として保存されている。
【0038】
読み込み時レスポンスは、データの読み込みのためにオンラインストレージ202に対してデータの送信を要求してから、データを受信するまでに要した時間の情報である。読み込み成否は、オンラインストレージ202から正常にデータの読み込みが行えたかを示す情報である。読み込み成否の情報は、正常に読み込みを行えた場合は「○」、読み込みが正常に行えなかった場合は「×」として保存されている。書き込み先は、各データブロック分割データの書き込み先、すなわち保存先のオンラインストレージ202を識別する情報である。本実施形態では、書き込み先の情報は、各オンラインストレージ202の運用を行っている事業者名の情報を保存している。
【0039】
格納箇所判断部143は、各オンラインストレージ202に保存するデータブロック分割データの数を算出する機能を有する。格納箇所判断部142は、サービス管理表のスコアを基に所定の秘匿性と冗長性を満たすように各オンラインストレージ202に保存するデータブロック分割データの数を決定する。本実施形態では、秘匿性の要件は、1つのオンラインストレージ202に、データブロックの復元に必要な全てのデータブロック分割データが保存されないこととして設定されている。また、冗長性の要件は、所定の数のオンラインストレージ202が稼働を停止しても、他のオンラインストレージ202に保存されているデータブロック分割データを元に、データブロックを復元できることとして設定されている。
【0040】
格納箇所再配置部144は、障害の発生等でデータの保存先として使用できないオンラインストレージ202が生じたとき、バックアップ先を再度、決定する機能を有する。格納箇所再配置部144は、使用できないオンラインストレージ202に、復元に必要なデータブロック分割データが保存されているデータブロックの保存先を再度、決定する。格納箇所再配置部144は、サービス管理表のスコアを基に秘匿性と冗長性を満たすように各オンラインストレージ202に保存するデータブロック分割データの数を決定する。
【0041】
冗長性確認部145は、格納データ管理表を参照して、冗長性の失われているデータブロックの有無を確認する機能を有する。冗長性確認部145は、冗長性が失われているデータブロックを検知すると、冗長性が失われているデータブロックの情報を格納箇所再配置部144に送る。
【0042】
再送判断部146は、オンラインストレージ202へのデータの書き込みに失敗した際に、再度、同じデータを送信して書き込みを行うかの判断をする機能を有する。書き込みの失敗が生じると、再送判断部146は、書き込みが失敗したデータブロック分割データに関するデータブロックの冗長性の有無の情報を冗長性確認部145に要求する。再送判断部146は、冗長性確認部145から冗長性が不足しているとの情報を受け取ると、データの再送が必要と判断する。再送判断部146によりデータの再送が必要と判断されると、該当するデータブロック分割データの再送に関する処理が実行される。再送判断部146は、冗長性確認部145から冗長性を満たしているとの情報を受け取るとデータの再送は不要と判断する。
【0043】
データ操作部150は、バックアップデータの分割および、分割されたデータからの元のデータの再構成を行う機能を有する。データ操作部150は、データ分割部151と、データ再構築部152を備えている。
【0044】
データ分割部151は、バックアップサーバから送られてくるバックアップデータを分割し、データブロックを生成する機能を有する。また、データ分割部151は、データブロックを、所定の冗長性を満たすように分割しデータブロック分割データを生成する機能を有する。データ分割部151は、データブロックとデータブロックを分割して生成したデータブロック分割データの対応を紐づけた情報を分割データ管理表として保存する。図7は、バックアップデータ、データブロックおよびデータブロック分割データの関係を模式的に示したものである。図7に示す通り、バックアップサーバ201から送られてくるバックアップと対象となるバックアップデータは、データブロックに分割される。データブロックは、さらにデータブロック分割データに分割される。データブロック分割データは、オンラインストレージ202に保存される際の、データの1つのまとまりの単位となる。また、データ分割部151は、データブロックを分割してデータブロック分割データを生成する際に、データブロックを複数に分割したできた断片データを組み合わせて、データブロック分割データを生成することもある。断片データを組み合わせる場合は、データ分割部151は、同一のデータブロック分割データに分割前のデータブロックのデータ内容が全て含まれないように組み合わせを行う。
【0045】
データ再構築部152は、オンラインストレージ202に保存されているデータブロック分割データを、データ管理表を参照して結合してデータブロックを再構成する機能を有する。また、データ再構築部152は、データブロックを、データ管理表を参照して結合してバックアップデータを再構成する機能を有する。
【0046】
ストレージデータ操作部160は、オンラインストレージ202へのデータの書き込みおよびオンラインストレージ202からのデータの読み出しを行う機能を有する。ストレージデータ操作部160は、データ送信部161と、データ受信部162と、データ確認部163と、データ削除部164を備えている。
【0047】
データ送信部161は、オンラインストレージ202にデータブロック分割データを書き込む機能を有する。また、データ送信部161は、書き込みのレスポンス時間を保存して書き込み速度を算出し、書き込み速度の情報を性能監視部122に送る機能を有する。
【0048】
データ受信部162は、オンラインストレージ202からデータブロック分割データを読み込む機能を有する。また、データ受信部162は、読み込みのレスポンス時間を保存して読み込み速度を算出し、読み込み速度の情報を性能監視部122に送る機能を有する。
【0049】
データ確認部163は、書き込みを行ったデータと、オンラインストレージ202に保存されているデータの一致の有無を比較する機能を有する。データ確認部163は、データ送信部161がオンラインストレージ202に書き込んだデータと、データ受信部162がオンラインストレージ202から読み出したデータを比較する。データ確認部163は、書き込んだデータと読み込んだデータの不一致を検知した場合には、再送判断部146にデータの不一致が生じた情報を送る。
【0050】
データ削除部164は、オンラインストレージ202に保存されているデータブロック分割データを削除する機能を有する。データ削除部164は、オンラインストレージ202に保存されているテストデータや不要となったデータを削除する。
【0051】
バックアップサーバ201は、バックアップを要するデータをデータ管理装置100に送る機能を有する。バックアップサーバ201は、複数、備えられていてもよい。オンラインストレージ202は、データ管理装置100から送られてくるデータを保存し、要求に応じてデータ管理装置100にデータを送信する機能を有する。オンラインストレージ202は、ネットワークを介して接続された記憶装置である。複数、備えられているオンラインストレージ202の各々は、それぞれ異なる構成でもよく、また、同一の構成のものが含まれていてもよい。
【0052】
本実施形態の内部ネットワーク203は、イントラネットなどプライベートなネットワークとして構成されている。また、本実施形態の外部ネットワーク204は、インターネット回線を用いたパブリックなネットワークとして構成されている。外部ネットワーク204は、専用回線を用いて構成することもできる。また、外部ネットワーク204は、インターネットと専用回線を併用して構成することもできる。
【0053】
本実施形態の情報処理システムの動作について説明する。始めに、データ管理装置100が、各オンラインストレージ202のスコアを算出する際の動作フローを、図8を参照して説明する。図8は、本実施形態の情報処理システムにおいてデータ管理装置100が、各オンラインストレージ202のスコアを算出する際の、動作フローの概要を示したものである。
【0054】
ストレージ管理部130のスコア算出部132は、サービス管理表を参照してスコアの算出を行うオンラインストレージ202の稼働状態を確認する。稼動状態の情報が「×」で稼働状態に何らかの異常が生じている場合は(ステップ301でNo)、スコア算出部132は、該当するオンラインストレージ202の稼働状態の評価点を0にする。スコアを算出する各評価項目の評価点の中に0があるオンラインストレージ202は、書き込み対象から除外される(ステップ312)。
【0055】
稼動状態の情報が「○」で正常に稼働している場合は(ステップ301でYes)、スコア算出部132は、稼動状態の評価点を1としてデータ改変の有無を確認する。データ改変有無の情報が「有」の場合は(ステップ302でYes)、スコア算出部132は、該当するオンラインストレージ202のデータ改変有無の評価点を0にする。すなわち、データ改変有無の情報が「有」のオンラインストレージ202は、書き込み対象から除外される(ステップ312)。
【0056】
データ改変有無の情報が「無」の場合(ステップ302でNo)、スコア算出部132は、データ改変有無の評価点を1にする。データ改変有無の評価点を1にすると、スコア算出部132は、書き込み速度の評価点を算出する(ステップ303)。スコア算出部132は、最も書き込み速度の速いオンラインストレージ202の書き込み速度の値で、各オンラインストレージ202の書き込み速度を割った値を、書き込み速度の評価点とする。すなわち、書き込み速度の評価点は、最も書き込み速度の速いオンラインストレージ202の書き込み速度の値を1として規格化された値となる。
【0057】
書き込み速度の評価点を算出すると、スコア算出部132は、読み込み速度の評価点を算出する(ステップ304)。読み込み速度の評価点は、書き込み速度と同様の方法で算出される。スコア算出部132は、最も読み込み速度の速いオンラインストレージ202の読み込み速度の値で、各オンラインストレージ202の読み込み速度を割った値を、読み込み速度の評価点とする。
【0058】
読み込み速度の評価点を算出すると、オンラインストレージ202が従量課金であるかを確認する。従量課金とは、各オンラインストレージ202を運用している事業者から、オンラインストレージ202にデータ量に応じて課金、すなわち料金を請求されることをいう。サービス管理表の従量課金の情報が「無」の場合(ステップ305でNo)、スコア算出部132は、従量課金の評価点を1としてステップ307に進む(ステップ313)。
【0059】
サービス管理表の従量課金の情報が「有」の場合(ステップ305でYes)、スコア算出部132は、従量課金の評価点を算出する(ステップ306)。スコア算出部132は、サービス管理表に保存された1GBあたりの料金が最も高いオンラインストレージ202の料金で、各オンラインストレージ202の料金を割った値を算出する。スコア算出部132は、料金が最も高いオンラインストレージ202の料金で、各オンラインストレージ202の料金を割った値を1から引いた値をさらに算出して従量課金の評価点とする。
【0060】
従量課金の評価点を算出すると、スコア算出部132はサービス管理表を参照して、オンラインストレージ202に保存できる容量に制限が設定されているかを確認する。サービス管理用の容量制限の情報が「無」の場合(ステップ307でNo)、スコア算出部132は、容量制限の評価点を1としてステップ309に進む(ステップ314)。
【0061】
サービス管理用の容量制限の情報が「有」の場合(ステップ307でYes)、スコア算出部132は、容量制限の評価点を算出する(ステップ308)。スコア算出部132は、サービス管理表の残容量の値を、データブロックの平均データ量で割った値を容量制限の評価点とする。スコア算出部132は、サービス管理表の残容量の値を、データブロックの平均データ量で割った値が1を超えた場合は、容量制限の評価点を1とする。
【0062】
容量制限の評価点を算出すると、スコア算出部132はサービス管理表を参照して転送量の制限の有無を確認する。サービス管理表の転送量制限の情報が「無」の場合(ステップ309でNo)、スコア算出部132は、転送量制限の評価点を1としてステップ311に進む(ステップ315)。
【0063】
サービス管理表の転送量制限の情報が「有」の場合(ステップ309でYes)、スコア算出部132は、転送量制限の評価点を算出する(ステップ310)。スコア算出部132は、サービス管理表の転送量残量の値を、データブロックの平均データ量で割った値を転送量制限の評価点とする。スコア算出部132は、サービス管理表の転送量残量の値を、データブロックの平均データ量で割った値が1を超えた場合は、転送量制限の評価点を1とする。
【0064】
転送量制限の評価点を算出すると、スコア算出部132はオンラインストレージ202ごとに、各項目の評価点を乗算して総合評価点であるスコアを算出する(ステップ131)。以上で、データ管理装置100が、各オンラインストレージ202のスコアを算出する動作は完了する。
【0065】
次に、スコアを算出する際に参照されるサービス管理表を更新するために、定期的にオンラインストレージ202の特性の評価が行われる際の動作について、図9を参照して説明する。図9は、オンラインストレージ202の特性の評価が行われる際の動作フローの概要を示している。オンラインストレージ202の特性の定期的な評価は、所定の期間ごと、または、設定されたタイミングに基づいて定期的に実施される。
【0066】
ストレージ監視部120は、試験用のデータである一時的なデータを作成する(ステップ321)。一時的なデータは、例えば、試験データであることを示す情報および発信元の識別情報により構成されている。一時的なデータを作成すると、ストレージ監視部120は一時的なデータをストレージデータ操作部160に送る。ストレージデータ操作部160に送られた一時的なデータは、データ確認部163に保存される。一時的なデータがデータ確認部163に保存されると、データ送信部161は、オンラインストレージ202に一時的なデータを送信する(ステップ322)。また、データ送信部161は、一時的なデータを送信したときの時刻の情報を保存する。
【0067】
オンラインストレージ202は、データ管理装置100から一時的なデータを受け取ると、一時的なデータの保存を行う。オンラインストレージ202は、一時的なデータの保存を行うと、保存したことを示す信号を保存完了信号としてデータ管理装置100に送信する。
【0068】
保存完了信号を受け取ると(ステップ323)、データ管理装置100のデータ送信部161は、一時的なデータをオンラインストレージ202に送信してから保存完了信号を受け取るまでの時間を算出する。データ送信部161は、一時的なデータを送信してから保存完了信号を受け取るまでの時間を書き込みレスポンス時間として算出する。データ送信部161はレスポンス時間を算出すると、一時的なデータのデータ量から書き込み速度算出し、算出した書き込み速度の値を保存する(ステップ324)。
【0069】
データ送信部161がデータを保存する際の書き込みレスポンス時間を保存すると、データ受信部162は、オンラインストレージ202に一時的なデータの送信を要求する信号をデータ要求信号として送信する(ステップ325)。データ要求信号を受け取ると、オンラインストレージ202は保存している一時的なデータをデータ管理装置100に送信する。オンラインストレージ202から一時的なデータを受信すると(ステップ326)、データ受信部162は受け取ったデータをデータ確認部163に送る。また、データ受信部162は、データ要求信号を送信してからデータを受け取るまでの時間から読み出しレスポンス時間を算出する。レスポンス時間を算出すると、データ受信部162は受け取った一時的なデータのデータ量から読み出し速度を算出し、算出した読み出しを保存する(ステップ327)。
【0070】
一時的なデータを受け取ると、データ確認部163はオンラインストレージ202から受け取ったデータと、データ管理装置100に保存されていたデータを比較してデータの改変の有無を判断する(ステップ328)。
【0071】
データ確認部163は、オンラインストレージ202に書き込んだデータと、読み込んだデータを比較する。データ確認部163は、2つのデータを比較し、2つのデータが一致していれば改変は行われていないと判断する。また、データ確認部163は、2つのデータが不一致である場合には、改変が行われたと判断する。データ確認部163は、判断結果の情報をデータ改変監視部121に送る。データ改変監視部121は、データ確認部163から送られてきた情報を基に、データの改変の有無を判断する。データ改変監視部121は、データの改変の有無を判断すると、サービス管理部131に保存されているサービス管理表のデータの改変の有無の情報を更新する(ステップ329)。
【0072】
また、性能監視部122は、データ送信部161およびデータ受信部162によってそれぞれ保持されている書き込み速度および読み出し速度の情報を取得する。性能監視部122は取得した書き込み速度および読み出し速度の情報を基に、サービス管理部131に保存されているサービス管理表に保存されている、オンラインストレージ202の書き込みおよび読み込み速度の情報を更新する。
【0073】
データ確認部163はデータの比較を行うと、比較結果としてデータ改変の有無を保存する。データ確認部163が比較結果を保存すると、ストレージデータ操作部160は、保存していた一時的なデータを削除する(ステップ229)。また、データ削除部164は、オンラインストレージ202に保存されている一時的なデータの削除を要求する信号をデータ削除要求信号としてオンラインストレージ202に送る。オンラインストレージ202は、データ削除要求信号を受け取ると保存している一時的なデータを保存する。
【0074】
スコア算出部132は、サービス管理表の更新が行われると、ステップ301から315の動作によりオンラインストレージ202のスコアを算出してサービス管理表のスコアの情報を更新する。以上で、サービス管理表を更新するためのオンラインストレージ202の特性の評価の動作は完了する。
【0075】
次に、バックアップサーバ201のデータをオンラインストレージ202に保存する際の動作について図10を参照して説明する。図10は、本実施形態の情報処理システムにおいてバックアップサーバ201のデータをオンラインストレージ202に保存する際の動作フローの概要を示したものである。
【0076】
バックアップサーバ201からデータ管理装置100のバックアップデータ送受信部110にバックアップデータ、すなわち、バックアップを行う対象となるデータが送られてくる。バックアップデータを受信すると(ステップ331)、データ管理装置100はバックアップデータを分割して各オンラインストレージ202に保存する動作を開始する。
【0077】
バックアップの動作が開始されると、格納箇所判断部143は、サービス管理部131のサービス管理表を参照して、バックアップ先の候補となるオンラインストレージ202を選択する(ステップ332)。格納箇所判断部143は、サービス管理表に保存されているオンラインストレージ202のスコアを基にバックアップ先の候補となる複数のオンラインストレージ202を選択する。
【0078】
データ操作部150のデータ分割部151は、バックアップデータを分割してデータブロックを生成する(ステップ333)。データ分割部151には、データブロックを生成する際のデータの分割数や、1つのデータブロックのデータサイズなどの分割に関する条件があらかじめ設定されて保存されている。
【0079】
データ分割部151は、データブロックを所定の分割方法により冗長性を有するように分割して、データブロック分割データを生成する(ステップ335)。設定されている条件に基づいてデータ分割部151は、分割後のデータが冗長性を有するように所定のデータ分割法でデータの分割を行う。本実施形態では、秘密分散法に基づいてデータブロックの分割が行われる。
【0080】
データブロックを分割してデータブロック分割データを生成する際の分割数は、格納箇所判断部143により決定される。格納箇所判断部143は、サービス管理表に保存されたオンラインストレージ202のスコアと、冗長性および秘匿性の要件を基にデータの分割数を決定する。
【0081】
データブロックを分割する際の分割数の決定方法の例について説明する。格納箇所判断部143は、サービス管理表のスコアを参照して、データの保存先となるオンラインストレージ202を上位から所定の数、選択する。本実施形態では、5つのオンラインストレージ202が選択されるとして説明する。選択されるオンラインストレージ202の数は、保存するデータ量や稼動しているオンラインストレージ202の数により可変としてもよい。
【0082】
データの保存先としてオンラインストレージ202として、ストレージA、ストレージB、ストレージC、ストレージDおよびストレージEの5つが選択されたとして説明する。また、各オンラインストレージ202のスコアは、ストレージAが0.8、ストレージBが0.06、ストレージCが0.5、ストレージDが0.8、ストレージFが0.1であるとして説明する。スコアは0から1の間で設定されているとする。
【0083】
5つのオンラインストレージ202のうち1つに障害が発生しても、バックアップの動作を継続できる設定とした場合について図11の上段を参照して説明する。図11は、5つのオンラインストレージ202にデータブロック分割ファイルを割り当てた際の、スコアと割り当て数の関係を示した図である。
【0084】
格納箇所判断部143は、データの保存先となる5つのオンラインストレージ202のうち1つに障害が発生しても、残りの4つでデータの復元が出来るように分割数を設定する。4つのオンラインストレージ202で、データブロック分割データの数がそれぞれ1つずつであってもデータの復元が可能となるように、復元時に必要なデータブロック分割データの数は4つとして設定される。復元時に必要なデータブロック分割データの数は4つとして設定されたときに、1つのオンラインストレージ202に保存されるデータブロック分割データは3つまでと設定される。1つのオンラインストレージ202から情報が漏えいした際に、第三者が復元に必要な全てのデータブロック分割データを得ることがないようにするためである。
【0085】
また、1つのオンラインストレージ202が障害等で利用できなくなっても、データブロックを復元可能にするため、同一のデータが少なくとも2つ以上のデータブロック分割データに含まれるようにデータブロック分割データが生成される。
【0086】
1つのオンラインストレージ202に保存されるデータブロック分割データが3つまでと定まると、格納箇所判断部143は、スコアの値によりオンラインストレージ202を3つのグループに分類する。例えば、3つのスコアの値に応じたグループは、スコアが0.33未満のグループ、0.33以上かつ0.66未満のグループおよび0.66以上のグループの3つに分けられる。
【0087】
このとき、格納箇所判断部143は、スコアが高い0.66以上のグループに3つのデータブロック分割ファイルを割り当てる。また、データ格納箇所判断部142は、0.33以上かつ0.66未満のグループに2つのデータブロック分割ファイルを割り当てる。スコアが低い0.33未満のグループには最小限の1つのデータブロック分割ファイルのみが割り当てられる。
【0088】
同一のデータが含まれるデータブロック分割データは、少なくとも2つ以上のオンラインストレージ202に割り当てられる。このような、データブロック分割データの生成とオンラインストレージ202への割り当てを行うことにより、冗長性を確保することができる。また、スコアが高いオンラインストレージ202は、性能および信頼性が高いことが期待されるので、多くデータブロック分割ファイルのみが割り当てられる。一方で、スコアが低いオンラインストレージ202は、性能および信頼性が低いことが予想されるため、割り当てられる多くデータブロック分割ファイルは少なく設定される。このように性能が維持でき、障害が発生しにくいオンラインストレージ202を多くのデータの割り当て先とすることで、性能の維持とデータ安全性の両立の効果が向上する。
【0089】
以上のように割り当てが行われると、ストレージAには3つ、ストレージBには1つ、ストレージCには2つ、ストレージDには3つ、ストレージFには1つのデータブロック分割ファイルが割り当てられる。
【0090】
次に5つのオンラインストレージ202のうち2つに障害が発生しても、バックアップの動作を継続できる設定の場合について図11の中段を参照して説明する。格納箇所判断部143は、データの保存先となる5つのオンラインストレージ202のうち2つに障害が発生しても、残りの3つでデータの復元が出来るように分割数を設定する。3つのオンラインストレージ202で、データブロック分割データの数がそれぞれ1つずつであってもデータの復元が可能となるように、復元時に必要なデータブロック分割データの数は3つとして設定される。復元時に必要なデータブロック分割データの数は3つとして設定されたときに、1つのオンラインストレージ202に保存されるデータブロック分割データは2つまでと設定される。1つのオンラインストレージ202から情報が漏えいした際に、第三者が復元に必要な全てのデータブロック分割データを得ることがないようにするためである。
【0091】
また、2つのオンラインストレージ202が障害等で利用できなくなっても、データブロックを復元可能にするため、同一のデータが少なくとも3つ以上のデータブロック分割データに含まれるようにデータブロック分割データが生成される。
【0092】
1つのオンラインストレージ202に保存されるデータブロック分割データが2つまでと定まると、格納箇所判断部143は、スコアによりオンラインストレージ202を2つのグループに分類する。2つに分けた場合、例えば、スコアが0.50未満のグループおよび0.50以上のグループの2つに分けられる。
【0093】
このとき、格納箇所判断部143は、スコアが高い0.50以上のグループに2つのデータブロック分割ファイルを割り当てる。スコアが低い0.50未満のグループには1つのデータブロック分割ファイルのみが割り当てられる。以上のように割り当てが行われると、ストレージAには2つ、ストレージBには1つ、ストレージCには2つ、ストレージDには2つ、ストレージFには1つのデータブロック分割ファイルが割り当てられる。また、同一のデータが含まれるデータブロック分割データは、少なくとも3つ以上のオンラインストレージ202に割り当てられる。
【0094】
5つのオンラインストレージ202のうち3つに障害が発生しても、バックアップの動作を継続できる設定の場合について図11の下段を参照して説明する。格納箇所判断部143は、データの保存先となる5つのオンラインストレージ202のうち3つに障害が発生しても、残りの2つでデータの復元が出来るように分割数を設定する。2つのオンラインストレージ202で、データブロック分割データの数がそれぞれ1つずつであってもデータの復元が可能となるように、復元時に必要なデータブロック分割データの数は2つとして設定される。復元時に必要なデータブロック分割データの数は2つとして設定されたときに、1つのオンラインストレージ202に保存されるデータブロック分割データは1つまでと設定される。
【0095】
よって、1つのオンラインストレージ202に割り当てられるデータブロック分割データの最大の数は1、最少の数は1となる。このような場合は、全てのオンラインストレージ202に対して、データブロック分割ファイルが1つずつ割り当てられる。
【0096】
任意の2つのオンラインストレージ202のデータブロック分割データにより、データブロックが復元できるように、互いにデータが重複したデータブロック分割データが生成される。すなわち、各データブロック分割データはデータブロックと比較して、一部のデータが含まれていない状態であるが、同じデータが2以上のデータブロック分割データに無いという状態は存在しないようにデータブロック分割データが生成される。
【0097】
データの保存先として割り当ての対象となるオンラインストレージ202がN個、故障等が発生した場合に動作を継続するために、最低限、必要なオンラインストレージ202の数がn個であるとする。このとき、復元時に必要なデータブロック分割データの数はN−nとして設定される。また、情報の漏えいを防止するために、1つのオンラインストレージ202に保存されるデータブロック分割データの最大の数はN−n−1となる。ただし、Nはn+2以上となる。
【0098】
また、N−n個のオンラインストレージの停止を想定した設定の場合、同一のデータはN−n+1個以上のデータブロック分割データに含まれるように、データブロック分割データが生成される。また、同一のデータを含むデータブロック分割ファイルはN−n+1個以上の、オンラインストレージ202にそれぞれ保存される。このように、データブロック分割データの生成および保存先の決定を行うことで、冗長性を確保できる。同一のデータが、稼動の停止を想定した設定よりも多くのオンラインストレージ202に保存されていることにより、稼動の停止が発生しても正常なオンラインストレージ202から復元に必要なデータを読み出すことできるからである。
【0099】
最低限必要なオンラインストレージ202の数を設定する際には、過去の故障実績を基に判断することもできる。例えば、選択されたオンラインストレージ202の中に、過去のある時点からA台のオンラインストレージ202で障害が発生した実績があるとする。そのような場合に、例えば、A+1のオンラインストレージ202で障害が発生しても動作できるようにnの値を設定することができる。この場合は、過去の障害の発生実績に対して1台分のマージンが考慮されている。
【0100】
格納箇所判断部143は、オンラインストレージ202ごとのデータブロック分割データの保存数を決定すると、決定した情報をデータ分割部151に送る。
【0101】
ステップ335でデータブロック分割データを生成すると、データ分割部151は、生成したデータブロック分割データを、ストレージデータ操作部160に送って書き込みを行う。オンラインストレージ操作部160は、データ分割部151から受け取ったデータブロック分割データを一時、保存する。データ送信部161は、データブロック分割データをデータの書き込み先として決定されたオンラインストレージ202に書き込みを行って保存する(ステップ336)。
【0102】
オンラインストレージ202へのデータの書き込みが正常に行われると(ステップ337でYes)、データ送信部161は、書き込みのレスポンス時間を算出する(ステップ338)。また、データ送信部161は、書き込みのレスポンス時間とデータ量から書き込み速度を算出する。本実施形態のデータ送信部161およびデータ受信部162は、送受信したデータのデータ量を計測する機能を備えている。
【0103】
データ確認部163は、データ受信部162にオンラインストレージ202に書き込まれたデータの読み出しを要求する(ステップ339)。データ受信部162は、オンラインストレージ2020からデータブロック分割データを読み出して、データ確認部163に送る。また、データ受信部162は読み出しのレスポンス時間を、レスポンス時間とデータ量から読み出しの速度を算出する(ステップ340)。
【0104】
書き込み速度および読み出し速度が算出されると、性能監視部122は、データ送信部161およびデータ受信部162から書き込み速度および読み出し速度を取得する。性能監視部122は取得した書き込み速度を基に、サービス管理部131のサービス管理表に保存されている、該当するするオンラインストレージ202の書き込み速度および読み出し速度の情報を更新する。
【0105】
データ確認部163は、データ送信部161に保存されているデータと、データ受信部162が読み出したデータを比較して、データ改変の有無を確認する(ステップ341)。データの改変が無い場合(ステップ342でNo)、1つのデータブロック分割データのオンラインストレージ202への保存の動作が完了する。まだ、保存されていない残りデータブロック分割データがある場合は(ステップ343でYes)、ステップ336からの動作が繰り返される。また、データ改変監視部121は、データ確認部163の比較結果を基に、サービス管理表に保存されている、該当するするオンラインストレージ202のデータ改変の有無の情報を更新する。
【0106】
保存されていない残りデータブロック分割データが無い場合は(ステップ343でNo)、データブロック分割データをオンラインストレージ202に保存する動作は完了する。オンラインストレージ202へのデータブロック分割データ202の保存が終わると、スコア算出部132は、サービス管理表のオンラインストレージ202のスコアを算出してサービス管理表を更新する。
【0107】
ステップ337でオンラインストレージ202にデータブロック分割データ正常に書き込めなかった場合(ステップ337でNo)、データの再送フローが実施される(ステップ334)。データの再送のフローは後で説明する。データの再送フローの実施が終了すると、ステップ343からの動作が行われる。
【0108】
また、ステップ342で、データの改変が生じていた場合(ステップ342でYes)、データの再送フローが実施される(ステップ334)。データの再送フローの実施が終了すると、ステップ343からの動作が行われる。以上で、バックアップサーバ201のデータをオンラインストレージ202に保存する動作は完了する。
【0109】
次に、データブロック分割データのオンラインストレージ202への書き込みの失敗またはデータ改変を検知した場合に、データの再送フロー、すなわち、ステップ344のフローを実施する際の動作について図12を参照して説明する。図12は、オンラインストレージ202への書き込みの失敗等が生じた際に、データ再送の要否を判断する際のフローの概要を示したものである。
【0110】
オンラインストレージ202は、データ管理装置100から送られてきたデータを保存できないとき、書き込み処理のエラーを示す信号を書込エラー信号としてデータ管理装置100に送る。データ管理装置100は、書込エラー信号を受け取ると書き込みが失敗したと判断する。また、データ管理装置100のデータ送信部161は所定の時間内に書き込み処理を行えなかったときは、書き込みは失敗したと判断して書き込みの動作を中止する。また、データ確認部163は、読み込みを行った際のデータが書き込みを行ったときのデータと一致しなかったとき、データの改変が生じたと判断する。データの書き込みの失敗や改変が生じると、ストレージデータ操作部160は、データの書き込みの失敗または改変が生じた情報をデータ管理部140に送る。
【0111】
データ管理部140は、書き込みが失敗またはデータの改変を検知すると(ステップ351)、格納データ管理部141の格納データ管理表を参照してデータブロック分割データに関する情報を取得する。データ管理部140は、書き込みの失敗等が生じたオンラインストレージ202に保存されているデータブロック分割データの数とデータブロック分割データの一覧を、格納データ管理部142の格納データ管理表から取得する(ステップ352)。
【0112】
冗長性確認部144は、ステップ352で取得したデータを基に、各データブロック分割データの書き込みの成否を確認する(ステップ353)。冗長性確認部144は、オンラインストレージ202への書き込みが成功しているデータブロック分割データで、冗長性が確保できているかを確認する(ステップ354)。
【0113】
冗長性の確保とは、他のオンラインストレージ202に保存されているデータにより、所定の台数のオンラインストレージ202の停止が発生してもデータブロックの復元が可能であることをいう。所定の台数は、例えば、5台のオンラインストレージ202の運用で2台の停止を想定して設定した場合に、すでに停止した分を含めて計2台として設定される。この場合は、3つ以上のオンラインストレージ202に、同一のデータ内容を含むデータブロック分割データが保存されているときに、冗長性が確保されていると判断される。冗長性確認部144は、冗長性の確保の有無の情報を再送判断部145に送る。
【0114】
冗長性が確保できているとき(ステップ355でYes)、再送判断部145はデータの再送は不要と判断する。再送判断部145がデータの再送は不要と判断すると、エラーの発生したデータブロック分割データの再送は行われずに他のデータの処理が継続される(ステップ356)。冗長性が確保できていないとき(ステップ355でNo)、再送判断部145はデータの再送が必要と判断する。再送が必要と判断されると、格納箇所判断部143は、1台あたりの最大の保存数に到達していないオンラインストレージ202の中から再送するデータの保存先を選択する。保存先が決定されると、保存先として決定されたオンラインストレージ202へ、データ送信部161から、該当するデータブロック分割データの送信が行わる(ステップ357)。データの保存先には、例えば、最大数に到達していないオンラインストレージ202のうち、もっともスコアの高いものを選ぶ方法とすることができる。以上で、データの再送信の動作フローは完了する。
【0115】
次にオンラインストレージ202が稼働停止等で使用できなくなった場合の動作について、図13を参照して説明する。図13は、本実施形態の情報処理システムにおいて、使用できないオンラインストレージ202が生じた場合の動作フローの概要を示したものである。
【0116】
オンラインストレージ202に障害や運用の停止が生じると、稼動監視部123は稼働が停止しているオンラインストレージ202が生じたことを検知する(ステップ361)。稼動監視部123が稼動の停止を検知すると、格納箇所再配置部144は格納データ管理表を参照して、稼動が停止したオンラインストレージ202に保存されているデータブロック分割データの数と一覧を取得する(ステップ362)。格納箇所再配置部144は、分割データ管理表の情報を参照して、稼動が停止したオンラインストレージ202に保存されているデータブロック分割データに対応するデータブロックの情報を抽出する。格納箇所再配置部144は、他の正常に稼働しているオンラインストレージ202から、抽出したデータブロックに対応するデータブロック分割データを、データ受信部162を介して読み出す(ステップ364)。
【0117】
データブロック分割データが読み出されると、データ再構築部152は、データブロック分割データからデータブロックを復元する(ステップ365)。データブロックが復元されると、データ管理装置100は、復元されたデータブロックを基に、通常の方法で他の正常なオンラインストレージ202に分割してバックアップを行う(ステップ366)。データ管理装置100は、復元されたデータブロックを、ステップ334からステップ344の動作で分割してオンラインストレージ202に保存する。以上で、オンラインストレージ202が稼働停止等で使用できなくなった場合の動作は完了する。
【0118】
また、本実施形態の情報処理システムにおいて、オンラインストレージ202に保存されているデータブロック分割データからバックアップデータを復元する際は次のように行う。バックアップサーバ201からデータ管理装置100に、バックアップデータの要求が送られてくる。データ管理装置100は、バックアップデータの要求を受けたとき、格納データ管理表を参照して、必要なデータブロック分割データを各オンラインストレージ202から読み出す。データブロック分割データ202の読み出しが終わると、データ再構築部152は、格納データ管理表のデータの対応関係の情報に従って、データブロックを復元する。データブロックの復元が終わると、データ再構築部152は、データブロックを元にバックアップデータを復元する。データ管理装置100は、復元されたバックアップデータをバックアップサーバ201に送信する。以上の動作で、バックアップデータの復元が行われる。
【0119】
本実施形態のデータ管理装置100の各機能は、サーバ等の情報処理装置で動作するコンピュータプログラムにより実行される構成とすることもできる。このような構成とする場合、ジョブ管理装置は1台の情報処理装置で構成されていてもよく、複数の情報処理装置が回線を介して接続されて構成されていてもよい。
【0120】
本実施系形態の情報処理システムは、データ管理装置100が各オンラインストレージ200の評価を行って、オンラインストレージ202ごとの評価点であるスコアを算出している。データ管理装置100は、評価結果を基に保存先となる記憶装置を選択している。本実施形態の情報処理システムでは、オンラインストレージ202のスコア付けを行って、スコアを基に保存先を選択することにより、情報処理システムとしての情報処理性能を維持することができる。
【0121】
本実施系形態の情報処理システムのデータ管理装置100は、バックアップデータを分割したデータブロックを、冗長性を満たすように分割してデータブロック分割データを生成している。また、データ管理装置100は、データブロックの復元を行うために必要なデータブロック分割データ全てが同一のオンラインストレージ202に保存されることがないように、保存先を決定している。そのため、1つのオンラインストレージ202からデータが漏えいしても第三者に情報の内容を知られる危険性が低く秘匿性が高い。
【0122】
また、必要なデータブロック分割データ全てが同一のオンラインストレージ202に保存されることがないようにしていることから、秘匿性を維持するための暗号化処理等を簡略可することが可能となる。それにより、本実施形態の情報処理システムではデータの分割を行う際の処理量を低減し、処理速度を維持することが可能となり得る。
【0123】
データ管理装置100は、冗長性を満たすようにデータブロックを分割し、スコアの高いオンラインストレージ202、すなわち、信頼性の高いオンラインストレージ202に多くのデータブロック分割データが保存されるようにしている。そのため、1つのオンラインストレージ202が停止しても、データブロックの復元に必要なデータブロック分割データを、他のオンラインストレージ202から得られる可能性が高い。そのため、本実施形態の情報処理システムは、バックアップデータが失われる可能性や、第三者に漏えいする可能性が低く高い安全性を有する。また、スコアの高いオンラインストレージ202は処理性も高いので、スコアの高いオンラインストレージ202に多くのデータを保存することで処理性能を維持することが可能となる。以上より、本実施形態の情報処理システムでは、情報処理性能を維持しつつ、バックアップを行ったデータの高い安全性を確保することができる。
【0124】
第2の実施形態では複数のオンラインストレージからバックアップを行うデータの保存先の候補を選択した。このような構成に代えて、ネットワークを介して接続されているオンラインストレージのうち稼動可能なもの全てがデータの保存先として利用されてもよい。稼動可能なオンラインストレージ全てを利用する場合においても、各オンラインストレージの評価を行い、スコアを基に各オンラインストレージに保存されるデータブロック分割ファイルの数が決定される。このような構成とすることにより、少数のオンラインストレージを用いた小規模な情報処理システムの場合においても、性能の維持とデータの安全性の確保の両立を行うことができる。
【0125】
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
【0126】
(付記1)
ネットワークを介して接続された複数の記憶装置の所定の特性を評価する記憶装置評価手段と、
バックアップを行うデータの保存先を、前記所定の特性の評価結果を基に前記記憶装置から選択する記憶装置選択手段と、
バックアップを行う前記データを、冗長性を満たすように分割して分割データとして生成するデータ分割手段と、
前記分割データ全てが同一の前記記憶装置に保存されないように決定する保存先決定手段と、
前記保存先決定手段が決定した保存先の前記記憶装置に前記分割データをそれぞれ書き込むデータ送信手段と
を備えることを特徴とするデータ管理装置。
【0127】
(付記2)
前記記憶装置ごとに前記分割データを割り当てる数を、前記所定の特性の評価結果に基づいて算出する割当数算出手段をさらに備え、
前記データ分割手段は、前記割当数算出手段が算出した前記記憶装置に割り当てる数の合計数を満たすように前記分割データを生成し、
前記保存先決定手段は、前記割当数算出手段が算出した前記記憶装置ごとに割り当てる数に従って、前記分割データの保存先を決定することを特徴とする付記1に記載のデータ管理装置。
【0128】
(付記3)
前記記憶装置の稼動状態を監視する稼動状態監視手段をさらに備え、
前記稼動状態監視手段が前記記憶装置の稼働の停止を検知したときに、前記記憶装置選択手段は、稼動の停止が検知された前記記憶装置をバックアップを行う前記データの保存先として選択しないことを特徴とする付記1または2に記載のデータ管理装置。
【0129】
(付記4)
前記記憶装置から前記分割データを読み込むデータ受信手段と、
前記データ受信手段が読み込みを行った前記分割データが、前記データ分割手段が書き込みを行ったときから改変していないかを判断するデータ確認手段とをさらに備え、
前記データ確認手段が、前記分割データの改変を検知したときに、前記記憶装置選択手段は、改変が検知された前記分割データが保存されていた前記記憶装置を、保存先として選択しないことを特徴とする付記1から3いずれかに記載のデータ管理装置。
【0130】
(付記5)
前記記憶装置の稼働の停止、または、前記分割データの改変を検知したときに、
前記データ受信手段がバックアップを行った前記データの復元に必要な前記分割データを前記記憶装置から読み出し、前記データの復元後に、再度、前記記憶装置に前記データを分割して保存することを特徴とする付記4に記載のデータ管理装置。
(付記6)
付記1から5いずれかに記載のデータ管理装置と、
バックアップを行うデータを送信する送信手段を有する情報処理装置と、
複数の記憶装置とを備え、
前記データ管理装置は、前記情報処理装置から受信するバックアップを行う前記データを分割して、前記記憶装置に保存することを特徴とするデータ管理システム。
(付記7)
ネットワークを介して接続された複数の記憶装置の所定の特性を評価する記憶装置評価処理と、
バックアップを行うデータの保存先を、前記所定の特性の評価結果を基に前記記憶装置から選択する記憶装置選択処理と、
バックアップを行う前記データを、冗長性を満たすように分割して分割データとして生成するデータ分割処理と、
前記分割データ全てが同一の前記記憶装置に保存されないように決定する保存先決定処理と、
前記保存先決定処理において決定した保存先の前記記憶装置に前記分割データをそれぞれ書き込むデータ送信処理と
を行うことを特徴とするコンピュータプログラム。
【0131】
(付記8)
前記記憶装置ごとに前記分割データを割り当てる数を、前記所定の特性の評価結果に基づいて算出する割当数算出処理をさらに行い、
前記データ分割処理において、前記割当数算出手段が算出した前記記憶装置に割り当てる数の合計数を満たすように前記分割データを生成し、
前記保存先決定処理おいて、前記割当数算出処理で算出した前記記憶装置ごとに割り当てる数に従って、前記分割データの保存先を決定することを特徴とする付記7に記載のコンピュータプログラム。
【0132】
(付記9)
前記記憶装置の稼動状態を監視する稼動状態監視処理をさらに行い、
前記稼動状態監視処理において前記記憶装置の稼働の停止を検知したときに、前記記憶装置選択処理は、稼動の停止が検知された前記記憶装置をバックアップを行う前記データの保存先として選択しないことを特徴とする付記7または8に記載のコンピュータプログラム。
【0133】
(付記10)
前記記憶装置から前記分割データを読み込むデータ受信処理と、
前記データ受信処理において読み込みを行った前記分割データが、前記データ分割処理において書き込みを行ったときから改変していないかを判断するデータ確認処理とをさらに行い、
前記データ確認処理において、前記分割データの改変を検知したときに、前記記憶装置選択処理は、改変が検知された前記分割データが保存されていた前記記憶装置を、保存先として選択しないことを特徴とする付記7から9いずれかに記載のコンピュータプログラム。
【0134】
(付記11)
前記記憶装置の稼働の停止、または、前記分割データの改変を検知したときに、
前記データ受信処理においてバックアップを行った前記データの復元に必要な前記分割データを前記記憶装置から読み出し、前記データの復元後に、再度、前記記憶装置に前記データを分割して保存することを特徴とする付記10に記載のコンピュータプログラム。
【0135】
(付記12)
ネットワークを介して接続された複数の記憶装置の所定の特性を評価し、
バックアップを行うデータの保存先を、前記所定の特性の評価結果を基に前記記憶装置から選択し、
バックアップを行う前記データを、冗長性を満たすように分割して分割データとして生成し、
前記分割データ全てが同一の前記記憶装置に保存されないように決定し、
決定した保存先の前記記憶装置に前記分割データをそれぞれ書き込むことを特徴するデータ管理方法。
【0136】
(付記13)
前記記憶装置ごとに前記分割データを割り当てる数を、前記所定の特性の評価結果に基づいて算出し、
算出した前記記憶装置に割り当てる数の合計数を満たすように前記分割データを生成し、
算出した前記記憶装置ごとに割り当てる数に従って、前記分割データの保存先を決定することを特徴とする付記12に記載のデータ管理方法。
【0137】
(付記14)
前記記憶装置の稼動状態を監視し、
前記記憶装置の稼働の停止を検知したときに、稼動の停止が検知された前記記憶装置をバックアップを行う前記データの保存先として選択しないことを特徴とする付記12または13に記載のデータ管理方法。
【0138】
(付記15)
前記記憶装置から前記分割データを読み込み、
読み込みを行った前記分割データが、書き込みを行ったときから改変していないかを判断し、
前記分割データの改変を検知したときに、改変が検知された前記分割データが保存されていた前記記憶装置を、保存先として選択しないことを特徴とする付記12から14いずれかに記載のデータ管理方法。
【0139】
(付記16)
前記記憶装置の稼働の停止、または、前記分割データの改変を検知したときに、
バックアップを行った前記データの復元に必要な前記分割データを前記記憶装置から読み出し、前記データの復元後に、再度、前記記憶装置に前記データを分割して保存することを特徴とする付記15に記載のデータ管理方法。
【産業上の利用可能性】
【0140】
本発明は、バックアップを要するデータをオンラインストレージに保存する情報処理システムに利用することができる。
【符号の説明】
【0141】
11 記憶装置評価手段
12 記憶装置選択手段
13 データ分割手段
14 保存先決定手段
15 データ送信手段
100 データ管理装置
110 バックアップデータ送受信部
120 ストレージ監視部
121 データ改変監視部
122 性能監視部
123 稼動監視部
130 ストレージ管理部
131 サービス管理部
132 スコア算出部
140 データ管理部
141 分割データ管理部
142 格納データ管理部
143 格納箇所判断部
144 格納箇所再配置部
145 冗長性確認部
146 再送判断部
150 データ操作部
151 データ分割部
152 データ再構築部
160 ストレージデータ操作部
161 データ送信部
162 データ受信部
163 データ確認部
164 データ削除部
201 バックアップサーバ
202 オンラインストレージ
203 内部ネットワーク
204 外部ネットワーク
301−315 データ管理装置の動作ステップ
321−330 データ管理装置の動作ステップ
331−344 データ管理装置の動作ステップ
351−357 データ管理装置の動作ステップ
361−366 データ管理装置の動作ステップ
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13