特開2015-230504IP Force 特許公報全文掲載

技術分野

スナップショット制御装置、スナップショット制御方法およびスナップショット制御プログラム

要約特許出願時に添付された[要約書]

【課題】データ記憶部の空き容量不足等による書き込み不可となることを回避し、適切にチャンクのコピーを行うことを課題とする。
【解決手段】マスタサーバ100は、複数のデータサーバに格納されたファイルデータであって、固定長のチャンクに分割して格納されたファイルデータに対するスナップショットへの書き込み要求を受け付けた場合に、コピーオンライトにより、該書き込み要求の対象となるチャンクのコピー先のデータサーバを、各データサーバにおけるデータ記憶部の空き容量、コピーされるチャンクを保持しているデータサーバと各データサーバとの距離、各データサーバの負荷状態、各データサーバにおける複数のファイルに共有されているチャンクの数のいずれか一つまたは複数に基づいて決定する。そして、マスタサーバ100は、決定されたデータサーバに対して、書き込み要求の対象となるチャンクをコピーするように制御する。
【選択図】図4

発明が解決しようとする課題[発明の詳細な説明]から抜粋

しかしながら、したGFSでは、スナップショットへの書き込みにおいて、コピーオンライトにより、書き込み対象のチャンクを保持するデータサーバ内でローカルにチャンクがコピーされるので、ストレージの空き容量不足等による書き込み不可の状況では、適切にチャンクのコピーを行うことができない場合があるという課題があった。また、スナップショットに含まれるファイルを多く保持するデータサーバでは、スナップショットへの書き込みによって保持しているチャンク数が増加し、データサーバの負荷が増加することがある。 例えば、GFSにおけるスナップショットの作成およびスナップショットへの書き込みの動作は以下のようになる。ここでは例として、ファイル1のスナップショットとしてファイル2を作成したとする。ファイル1のスナップショットとしてファイル2を作成すると、ファイル1とファイル2はファイルを構成するチャンクを共有するようになる。次に、ファイル2へ書き込みを行うと、コピーオンライトにより、書き込み対象のチャンクを保持するデータサーバ内でローカルに当該チャンクがコピーされ、ファイル2はコピーされたチャンクを参照するように変更される。ここで、書き込みはコピーされたチャンクに対して行われる。なお、ファイル1はもとのチャンクを参照したままである。また、書き込み対象でないチャンクはファイル1とファイル2で共有されたままである。 GFSにおけるコピーオンライトによるチャンクのコピーでは、書き込み対象のチャンクを保持するデータサーバ内でローカルに当該チャンクがコピーされる。そのため、ストレージの空き容量がなくなると、データサーバ内でローカルにチャンクをコピーすることができなくなる。また、スナップショットにより複数のファイルに共有されているチャンクを多く保持するデータサーバでは、スナップショットへの書き込みによって保持しているチャンク数が増加し、当該データサーバの負荷が増加することがある。 スナップショットが作成されるファイルやディレクトリの数や、スナップショットへの読み書きの負荷は、ユースケースによってさまざまである。そのため、状況に応じて、コピーオンライトによるチャンクのコピーを制御することが必要となる。

課題を解決するための手段[発明の詳細な説明]から抜粋

上述した課題を解決し、目的を達成するために、本発明のスナップショット制御装置は、複数のデータサーバに格納されたファイルデータであって、固定長のチャンクに分割して格納されたファイルデータに対するスナップショットへの書き込み要求を受け付けた場合に、コピーオンライトにより、該書き込み要求の対象となるチャンクのコピー先のデータサーバを、各データサーバにおけるデータ記憶部の空き容量、コピーされるチャン・・・ 続きを知財ポータルサイト IP Force にログインして見る
【発明の効果】
本発明によれば、複数のファイルに共有されているチャンクを保持しているデータサーバのデータ記憶部の空き容量が不足しても、データ記憶部の空き容量がある他のデータサーバにチャンクをコピーすることにより、適切にチャンクのコピーを行うことができるという効果を奏する。

この発明についての権利主張の範囲[特許請求の範囲]

知財ポータルサイト IP Force にログインして確認する (無料)

この特許公報に記載されている図面[図面の簡単な説明]から抜粋

【図1】図1は、第1の実施形態におけるスナップショット制御システムの構成の一例を示す図である。

【図2】図2は、第1の実施形態におけるファイルデータと固定長のチャンクの関係を示す図である。

【図3】図3は、第1の実施形態におけるスナップショットと固定長のチャンクの関係を示す図である。

【図4】図4は、第1の実施形態におけるマスタサーバの構成の一例を示す図である。

【図5】図5は、第1の実施形態におけるファイルテーブルの構成の一例を示す図である。

【図6】図6は、第1の実施形態におけるチャンクテーブルの構成の一例を示す図である。

【図7】図7は、第1の実施形態におけるデータサーバ状態管理テーブルの構成の一例を示す図である。

【図8】図8は、第1の実施形態におけるデータサーバの構成の一例を示す図である。

【図9】図9は、第1の実施形態におけるチャンク情報テーブルの構成の一例を示す図である。

【図10】図10は、第1の実施形態におけるファイル生成処理において、外部アプリケーションがマスタサーバへファイル生成要求を送信したときの動作の一例を示すフローチャートである。

【図11】図11は、第1の実施形態におけるファイル生成処理において、マスタサーバが外部アプリケーションからファイル生成要求を受信したときの動作の一例を示すフローチャートである。

【図12】図12は、第1の実施形態におけるディレクトリ生成処理において、外部アプリケーションがマスタサーバへディレクトリ生成要求を送信したときの動作の一例を示すフローチャートである。

【図13】図13は、第1の実施形態におけるディレクトリ生成処理において、マスタサーバが外部アプリケーションからディレクトリ生成要求を受信したときの動作の一例を示すフローチャートである。

【図14】図14は、第1の実施形態におけるスナップショット生成処理において、外部アプリケーションがマスタサーバへスナップショット生成要求を送信したときの動作の一例を示すフローチャートである。

【図15】図15は、第1の実施形態におけるスナップショット生成処理において、マスタサーバが外部アプリケーションからスナップショット生成要求を受信したときの動作の一例を示すフローチャートである。

【図16】図16は、第1の実施形態におけるスナップショット生成処理において、マスタサーバが外部アプリケーションからスナップショット生成要求を受信したときの動作の一例を示すフローチャートである。

【図17】図17は、第1の実施形態におけるスナップショット生成処理において、マスタサーバが外部アプリケーションからスナップショット生成要求を受信したときの動作の一例を示すフローチャートである。

【図18】図18は、第1の実施形態における書き込み処理において、外部アプリケーションがファイルへの書き込みを行うときの動作の一例を示すフローチャートである。

【図19】図19は、第1の実施形態における書き込み処理において、マスタサーバがチャンク情報取得要求を受信したときの動作の一例を示すフローチャートである。

【図20】図20は、第1の実施形態における書き込み処理において、マスタサーバがチャンク情報取得要求を受信したときの動作の一例を示すフローチャートである。

【図21】図21は、第1の実施形態における書き込み処理において、マスタサーバがチャンク情報取得要求を受信したときの動作の一例を示すフローチャートである。

【図22】図22は、第1の実施形態における書き込み処理において、マスタサーバがチャンク情報取得要求を受信したときの動作の一例を示すフローチャートである。

【図23】図23は、第1の実施形態における書き込み処理において、データサーバがマスタサーバからローカルチャンクコピー要求を受信したときの動作の一例を示すフローチャートである。

【図24】図24は、第1の実施形態における書き込み処理において、データサーバがマスタサーバからリモートチャンクコピー要求を受信したときの動作の一例を示すフローチャートである。

【図25】図25は、第1の実施形態における書き込み処理において、データサーバが他のデータサーバからチャンク読み出し要求を受信したときの動作の一例を示すフローチャートである。

【図26】図26は、第1の実施形態における書き込み処理において、データサーバがマスタサーバからチャンク生成要求を受信したときの動作の一例を示すフローチャートである。

【図27】図27は、第1の実施形態における書き込み処理において、データサーバがマスタサーバから書き込み制御委譲要求を受信したときの動作の一例を示すフローチャートである。

【図28】図28は、第1の実施形態における書き込み処理において、データサーバが外部アプリケーションまたは他のデータサーバからデータ送信要求を受信したときの動作の一例を示すフローチャートである。

【図29】図29は、第1の実施形態における書き込み処理において、プライマリデータサーバが外部アプリケーションから書き込み要求を受信したときの動作の一例を示すフローチャートである。

【図30】図30は、第1の実施形態における書き込み処理において、セカンダリデータサーバがプライマリデータサーバからセカンダリ書き込み要求を受信したときの動作の一例を示すフローチャートである。

【図31】図31は、スナップショット制御プログラムを実行するコンピュータを示す図である。

選択図 図4出願人が指定した本件の代表的な図

100 マスタサーバ   110 ファイル管理部   111 ファイルテーブル   112 チャンクテーブル   113 決定部   114 制御部   120 データサーバ状態管理部   121 データサーバ状態管理テーブル   200、300、400、500、600 データサーバ   210、310、410、510、610 データ記憶部   211、311、411、511、611 チャンク情報テーブル   220、320、420、520、620 データアクセス部   230、330、430、530、630 状態通知部   700 外部アプリケーション   800 ネットワーク   900 ファイルデータ   910、920、930、1010、1020、1030、1130 チャンク   1000 ファイル1   1100 ファイル2   10000 コンピュータ   10100 メモリ   10110 ROM   10120 RAM   10200 CPU   10300 ハードディスクドライブインタフェース   10400 ディスクドライブインタフェース   10410 ディスクドライブ   10500 シリアルポートインタフェース   10600 ビデオアダプタ   10700 ネットワークインタフェース   10800 バス   10900 ハードディスクドライブ   10910 OS   10920 アプリケーションプログラム   10930 プログラムモジュール   10940 プログラムデータ   11100 マウス   11200 キーボード   11300 ディスプレイ

全ての図面はログインすると無料で閲覧できます。ログイン・ユーザー登録

[広告欄]

ログインすれば広告は減ります

ログインすれば広告は減ります