(57)【要約】【課題】消費電力の低減効果を高めること。【解決手段】複数の第１記憶装置２１、２２、２３の各々に格納されたデータのうち設定された条件を満たすデータを第１記憶装置２１、２２、２３とは異なる第２記憶装置３１に格納させるストレージ制御装置１０が提供される。ストレージ制御装置１０は、第２記憶装置３１に格納させるデータのサイズを取得し、第１記憶装置２１、２２、２３毎に、第２記憶装置３１に格納させるデータの合計サイズを計算し、合計サイズが小さい第１記憶装置２３、２１から順に、設定された条件を満たすデータを第２記憶装置３１に格納させる制御部１２を有する。【選択図】図１
2016110305.tif 000002
【特許請求の範囲】
【請求項１】
複数の第１記憶装置の各々に格納されたデータのうち設定された条件を満たすデータを前記第１記憶装置とは異なる第２記憶装置に格納させるストレージ制御装置であって、
前記第２記憶装置に格納させるデータのサイズを取得し、
前記第１記憶装置毎に、前記第２記憶装置に格納させるデータの合計サイズを計算し、
前記合計サイズが小さい前記第１記憶装置から順に、前記設定された条件を満たすデータを前記第２記憶装置に格納させる制御部を有する
ストレージ制御装置。
【請求項２】
前記制御部は、データに対するアクセス頻度が設定された閾値より大きい場合に該データが前記設定された条件を満たすと判定する
請求項１に記載のストレージ制御装置。
【請求項３】
前記設定された条件を満たすデータを前記第２記憶装置に格納した前記第１記憶装置は、消費電力が小さい動作モードへと移行する
請求項２に記載のストレージ制御装置。
【請求項４】
複数の第１記憶装置の各々に格納されたデータのうち設定された条件を満たすデータを前記第１記憶装置とは異なる第２記憶装置に格納させるキャッシュ制御方法であって、
コンピュータが、
前記第２記憶装置に格納させるデータのサイズを取得し、
前記第１記憶装置毎に、前記第２記憶装置に格納させるデータの合計サイズを計算し、
前記合計サイズが小さい前記第１記憶装置から順に、前記設定された条件を満たすデータを前記第２記憶装置に格納させる
キャッシュ制御方法。
【請求項５】
複数の第１記憶装置の各々に格納されたデータのうち設定された条件を満たすデータを前記第１記憶装置とは異なる第２記憶装置に格納させるキャッシュ制御プログラムであって、
コンピュータに、
前記第２記憶装置に格納させるデータのサイズを取得し、
前記第１記憶装置毎に、前記第２記憶装置に格納させるデータの合計サイズを計算し、
前記合計サイズが小さい前記第１記憶装置から順に、前記設定された条件を満たすデータを前記第２記憶装置に格納させる
処理を実行させる、キャッシュ制御プログラム。
【請求項６】
複数の第１記憶装置を制御するストレージ装置と、
前記第１記憶装置とは異なる第２記憶装置を制御するキャッシュ装置と、
前記ストレージ装置を制御して、前記複数の第１記憶装置の各々に格納されたデータのうち設定された条件を満たすデータを前記第２記憶装置に格納させるストレージ制御装置と、
を有し、
前記ストレージ制御装置は、前記第２記憶装置に格納させるデータのサイズを取得し、前記第１記憶装置毎に、前記第２記憶装置に格納させるデータの合計サイズを計算し、前記合計サイズが小さい前記第１記憶装置から順に、前記設定された条件を満たすデータを前記第２記憶装置に格納させる制御部を有する
コンピュータシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ストレージ制御装置、キャッシュ制御方法、キャッシュ制御プログラム、及びコンピュータシステムに関する。
【背景技術】
【０００２】
近年、ＲＡＩＤ（Redundant Arrays of Inexpensive Disks）技術などにより複数の記憶装置（例えば、ＨＤＤ（Hard Disk Drive）やＳＳＤ（Solid State Drive））を冗長化し、高速なデータアクセス及び大容量を実現したディスクアレイが広く利用されている。他方、ディスクアレイの容量を増やすために記憶装置の数が増えるとディスクアレイが消費する電力量が大きくなるため、電力コストや環境負荷を低減する見地から、ディスクアレイの省電力化に関する研究開発が進められている。
【０００３】
ディスクアレイの消費電力を実現する技術としてＭＡＩＤ（Massive Array of Idle Disk）と呼ばれるものがある。ＭＡＩＤは、ディスクアレイの中で、データアクセスが発生していない記憶装置を省電力モードに遷移（例えば、ディスク回転数の低下・停止、ディスクヘッドの退避、電源オフなど）させて消費電力を削減する技術である。ＭＡＩＤを適用したディスクアレイではデータアクセスのある記憶装置が通常通り稼働するため、高速性や信頼性に対する影響が少ない。
【０００４】
但し、省電力モードにある記憶装置に対してデータアクセスが生じると、その記憶装置を通常の動作モードへと復帰させるための時間がかかり、データアクセスが遅延する。この遅延を抑制するために、書き込み対象のデータについてデータアクセスの確率を推定し、推定した確率に基づいて書き込み先の記憶装置を決定する技術が提案されている。また、ディスクアレイを含むストレージ装置と、データアクセスが集中したデータをキャッシュするためのキャッシュサーバとを有する分散ストレージシステムが提案されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】国際公開２０１１／１２１８６９号公報
【特許文献２】特開２０１０−００２９４２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
データアクセスの確率が低いデータを多く格納した記憶装置を省電力モードへ遷移させれば、省電力モードにある記憶装置にデータアクセスが発生して高速性が損なわれるリスクを低減することはできる。しかし、推定精度が低ければリスク低減の効果は期待できない。また、データアクセスの頻度が高いデータをキャッシュサーバに退避しておけば、退避したデータに対するアクセスが生じた場合にキャッシュサーバが応答できるため、データアクセスの高速性が損なわれるリスクを低減することができる。
【０００７】
ただ、キャッシュサーバの記憶容量にも限りがあるため、全ての記憶装置におけるアクセス頻度の高いデータをキャッシュすることは現実的に難しい。アクセス頻度が高いデータを全てキャッシュした記憶装置を省電力モードへと遷移させ、他の記憶装置は通常の動作モードで稼働させると、データアクセスの高速性は維持されるが、省電力モードへ遷移できる記憶装置の数が限られる。その結果、消費電力の低減効果が限定的となる。
【０００８】
そこで、１つの側面によれば、本発明の目的は、消費電力の低減効果を高めることが可能なストレージ制御装置、キャッシュ制御方法、キャッシュ制御プログラム、及びコンピュータシステムを提供することにある。
【課題を解決するための手段】
【０００９】
本開示の１つの側面によれば、複数の第１記憶装置の各々に格納されたデータのうち設定された条件を満たすデータを第１記憶装置とは異なる第２記憶装置に格納させるストレージ制御装置が提供される。該ストレージ制御装置は、第２記憶装置に格納させるデータのサイズを取得し、第１記憶装置毎に、第２記憶装置に格納させるデータの合計サイズを計算し、合計サイズが小さい第１記憶装置から順に、設定された条件を満たすデータを第２記憶装置に格納させる制御部を有する。
【発明の効果】
【００１０】
本発明によれば、消費電力の低減効果を高めることが可能になる。
【図面の簡単な説明】
【００１１】
【図１】第１実施形態に係るコンピュータシステムの一例を示した図である。
【図２】第２実施形態に係るストレージシステムの一例を示した図である。
【図３】第２実施形態に係るストレージシステムで実行される処理の流れを示したシーケンス図である。
【図４】第２実施形態に係るメタサーバの機能を実現可能なハードウェアの一例を示した図である。
【図５】第２実施形態に係るメタサーバ、データサーバ、及びキャッシュサーバの主な機能を示したブロック図である。
【図６】第２実施形態に係る管理用データベースの一例を示した図である。
【図７】第２実施形態に係る対象ファイルリストの一例を示した図である。
【図８】第２実施形態に係る暫定対象ディスクリスト及び対象ディスクリストの一例を示した図である。
【図９】第２実施形態に係るメタサーバが実行する処理の流れを示した第１のフロー図である。
【図１０】第２実施形態に係るメタサーバが実行する処理の流れを示した第２のフロー図である。
【図１１】第２実施形態に係るデータサーバが実行する処理の流れを示したフロー図である。
【図１２】第２実施形態に係るキャッシュ方法の効果の一例を示した図である。
【発明を実施するための形態】
【００１２】
以下に添付図面を参照しながら、本発明の実施形態について説明する。なお、本明細書及び図面において実質的に同一の機能を有する要素については、同一の符号を付することにより重複説明を省略する場合がある。
【００１３】
＜１．第１実施形態＞
図１を参照しながら、第１実施形態について説明する。
図１は、第１実施形態に係るコンピュータシステムの一例を示した図である。
【００１４】
図１に示すように、第１実施形態に係るコンピュータシステムは、ストレージ制御装置１０、ストレージ装置２０、及びキャッシュ装置３０を有する。
ストレージ装置２０は、直接又はネットワークを介して接続された第１記憶装置２１、２２、２３に対するデータの読み書きを管理する。キャッシュ装置３０は、直接又はネットワークを介して接続された第２記憶装置３１に対するデータの読み書きを管理する。
【００１５】
なお、ストレージ装置２０の数、第１記憶装置の数、キャッシュ装置３０の数、第２記憶装置の数は任意に設定することができる。また、ストレージ制御装置１０、ストレージ装置２０、キャッシュ装置３０は、有線又は無線のネットワークを介して接続されていてもよいし、専用回線を介して接続されていてもよい。第１実施形態に係る技術は、小規模なＲＡＩＤ装置にも適用できるし、大規模な分散ストレージシステムにも適用できる。
【００１６】
ストレージ制御装置１０は、記憶部１１及び制御部１２を有する。
記憶部１１は、ＲＡＭ（Random Access Memory）などの揮発性記憶装置、或いは、ＨＤＤやフラッシュメモリなどの不揮発性記憶装置である。制御部１２は、ＣＰＵ（Central Processing Unit）やＤＳＰ（Digital Signal Processor）などのプロセッサである。但し、制御部１２は、ＡＳＩＣ（Application Specific Integrated Circuit）やＦＰＧＡ（Field Programmable Gate Array）などの電子回路であってもよい。制御部１２は、例えば、記憶部１１又は他のメモリに記憶されたプログラムを実行する。
【００１７】
記憶部１１には、第１記憶装置２１、２２、２３に格納されたデータに関する情報が格納される。データに関する情報は、例えば、データを識別するための識別情報（ファイル名など）、データが格納された第１記憶装置の識別情報及び該第１記憶装置を管理するストレージ装置２０の識別情報（ＩＰアドレスなど）、データサイズなどを含む。
【００１８】
制御部１２は、ストレージ装置２０を制御し、第１記憶装置２１、２２、２３の各々に格納されたデータのうち設定された条件を満たすデータを第２記憶装置３１に格納させる。設定された条件は、例えば、対象のデータに対するアクセス頻度が、予め設定された閾値より大きいことなどである。設定された条件を満たすデータを第２記憶装置３１に格納させる制御は、例えば、新たなキャッシュ装置又は第２記憶装置が追加された場合や、制御の実施後に予め設定された時間が経過した場合に実施される。
【００１９】
上記の制御に際し、制御部１２は、第２記憶装置３１に格納させるデータのサイズを取得する。このとき、制御部１２は、データのサイズをストレージ装置２０に問い合わせ、ストレージ装置２０からデータのサイズを取得してもよいし、記憶部１１に格納されたデータに関する情報からデータのサイズを取得してもよい。
【００２０】
制御部１２は、第１記憶装置２１、２２、２３毎に、第２記憶装置３１に格納させるデータの合計サイズを計算する。
例えば、図１（Ａ）に示すように、制御部１２は、第１記憶装置２１に格納されているデータのうち上記設定された条件を満たすデータ（図１の例では２１ａ．ｄａｔ、２１ｂ．ｄａｔ）を対象データとして特定し、対象データの合計サイズを計算する。また、制御部１２は、第１記憶装置２１の識別情報と、計算した対象データの合計サイズとを対応付けて記憶部１１に記憶させる。同様に、制御部１２は、第１記憶装置２２、２３についても対象データの合計サイズを計算し、計算した対象データの合計サイズを識別情報に対応付けて記憶部１１に記憶させる。
【００２１】
制御部１２は、合計サイズが小さい第１記憶装置２３、２１から順に、設定された条件を満たすデータを第２記憶装置３１に格納させる。
例えば、図１（Ｂ）に示すように、制御部１２は、記憶部１１に記憶させた合計サイズを参照し、合計サイズが小さい順に第１記憶装置（この例では第１記憶装置２３、２１）を特定する。このとき、制御部１２は、特定した第１記憶装置に対応する合計サイズの合算値が第２記憶装置３１の空き容量より小さくなるように、第１記憶装置を特定する。そして、制御部１２は、第１記憶装置２３、２１の対象データを第２記憶装置３１に格納するように制御する指示をストレージ装置２０に送信する。
【００２２】
上記指示を受信したストレージ装置２０は、第１記憶装置２３、２１から対象データ（この例では２３ａ．ｄａｔ、２１ａ．ｄａｔ、２１ｂ．ｄａｔ）を読み出し、キャッシュ装置３０に送信する。キャッシュ装置３０は、ストレージ装置２０から受信した対象データを第２記憶装置３１に格納する。対象データの第２記憶装置３１への格納が完了した場合、キャッシュ装置３０は、格納の完了を示す応答をストレージ装置２０に送信する。
【００２３】
上記応答を受信したストレージ装置２０は、第２記憶装置３１に格納した対象データを格納している第１記憶装置２３、２１を省電力モードへと遷移させる。省電力モードへの遷移は、例えば、ディスク回転数の低下・停止、ディスクヘッドの退避、電源オフなどである。そして、ストレージ装置２０は、省電力モードへの遷移が完了したことを示す通知をストレージ制御装置１０へと送信する。この通知を受信した制御部１２は、省電力モードにある第１記憶装置２３、２１の情報を記憶部１１に記憶させる。
【００２４】
第１実施形態に係る技術を適用すれば、合計サイズが小さい順に第２記憶装置３１へと対象データがキャッシュされるため、より多くの第１記憶装置を省電力モードに遷移させることができ、システム全体の電力消費量をより多く削減することが可能になる。また、対象データ（アクセス頻度が高いデータなど）が第２記憶装置３１にキャッシュされているため、省電力モードから通常の動作モードへ復帰する処理に伴う遅延のリスクが低く、データアクセスの高速性も維持される。
【００２５】
以上、第１実施形態について説明した。
＜２．第２実施形態＞
次に、第２実施形態について説明する。
【００２６】
［２−１．システム］
図２は、第２実施形態に係るストレージシステムの一例を示した図である。図２に示したストレージシステム５０は、第２実施形態に係るストレージシステムの一例である。
【００２７】
図２に示すように、ストレージシステム５０は、メタサーバ１００、データサーバ２０１、２０２、キャッシュサーバ３００、及びクライアント装置４００を含む。
データサーバ２０１には、記憶装置２１１、２１２、２１３が接続されている。データサーバ２０２には、記憶装置２２１、２２２、２２３が接続されている。キャッシュサーバ３００には記憶装置３０１が接続されている。記憶装置２１１、２１２、２１３、２２１、２２２、２２３、３０１は１台又は複数台のＨＤＤやＳＳＤなどである。
【００２８】
クライアント装置４００は、メタサーバ１００に対し、データの書き込みやデータの読み出しを要求する。メタサーバ１００は、クライアント装置４００から要求を受け、要求の対象となるデータの格納場所をクライアント装置４００に通知する。
【００２９】
データサーバ２０１は、データの格納場所となる記憶装置２１１、２１２、２１３を管理する。データサーバ２０２は、データの格納場所となる記憶装置２２１、２２２、２２３を管理する。クライアント装置４００は、メタサーバ１００から通知された格納場所を管理するデータサーバへアクセスし、データの書き込みやデータの読み出しを実行する。
【００３０】
キャッシュサーバ３００は、キャッシュディスクとして機能する記憶装置３０１を管理する。記憶装置３０１には、記憶装置２１１、２１２、２１３、２２１、２２２、２２３に格納されたデータの一部がコピーされる。コピー元の記憶装置が省電力モード（例えば、ディスク回転数の低下・停止、ディスクヘッドの退避、電源オフなど）にあるとき、その記憶装置に代えて記憶装置３０１が利用される。
【００３１】
ここで、キャッシュディスクへのデータコピー及びキャッシュサーバ３００へのアクセスに関する処理の流れについて、図３を参照しながら説明する。図３は、第２実施形態に係るストレージシステムで実行される処理の流れを示したシーケンス図である。
【００３２】
図３に示した処理は、キャッシュディスクとして利用可能な記憶装置が追加された場合、或いは、当該処理を前回実行してから一定の期間が経過した場合に実行される。
（Ｓ１１）メタサーバ１００は、データサーバ２０１に対し、記憶装置２１１、２１２、２１３に格納されたデータをキャッシュサーバ３００の記憶装置３０１にコピーするように指示する（キャッシュ指示）。このとき、メタサーバ１００は、データサーバ２０１が管理する記憶装置２１１、２１２、２１３に格納されたデータのうちアクセス頻度が高いデータを記憶装置３０１にコピーするように指示する。
【００３３】
（Ｓ１２）メタサーバ１００は、データサーバ２０２に対し、記憶装置２２１、２２２、２２３に格納されたデータをキャッシュサーバ３００の記憶装置３０１にコピーするように指示する（キャッシュ指示）。このとき、メタサーバ１００は、データサーバ２０２が管理する記憶装置２２１、２２２、２２３に格納されたデータのうちアクセス頻度が高いデータを記憶装置３０１にコピーするように指示する。
【００３４】
なお、Ｓ１１、Ｓ１２の処理は順序を入れ替えることができる。
（Ｓ１３）キャッシュ指示を受けたデータサーバ２０１は、メタサーバ１００から指示されたアクセス頻度の高いデータを記憶装置２１１、２１２、２１３から読み出す。そして、データサーバ２０１は、読み出したデータをキャッシュサーバ３００へ送信し、記憶装置３０１に格納させる（データコピー）。
【００３５】
（Ｓ１４）データコピーを完了したデータサーバ２０１は、記憶装置２１１、２１２、２１３のうち、アクセス頻度の高いデータを全てコピーし終えた記憶装置を省電力モードへと遷移させる。このように、記憶装置を省電力モードへと遷移させることで、ストレージシステム５０の消費電力を抑制することができる。
【００３６】
（Ｓ１５）キャッシュ指示を受けたデータサーバ２０２は、メタサーバ１００から指示されたアクセス頻度の高いデータを記憶装置２２１、２２２、２２３から読み出す。そして、データサーバ２０２は、読み出したデータをキャッシュサーバ３００へ送信し、記憶装置３０１に格納させる（データコピー）。
【００３７】
（Ｓ１６）データコピーを完了したデータサーバ２０２は、記憶装置２２１、２２２、２２３のうち、アクセス頻度の高いデータを全てコピーし終えた記憶装置を省電力モードへと遷移させる。このように、記憶装置を省電力モードへと遷移させることで、ストレージシステム５０の消費電力を抑制することができる。
【００３８】
（Ｓ１７、Ｓ１８）クライアント装置４００は、データを読み出す際に、読み出し対象のデータがキャッシュサーバ３００の記憶装置３０１に格納済みであるか（つまり、キャッシュがあるか）を確認する。この例では、読み出し対象のデータが記憶装置３０１に格納済みであるとする。この場合、クライアント装置４００は、キャッシュサーバ３００へアクセスし、記憶装置３０１から読み出し対象のデータを取得する。
【００３９】
上記のように、キャッシュサーバ３００の記憶装置３０１にアクセス頻度の高いデータをコピーすることで、データサーバ２０１、２０２が管理する記憶装置を省電力モードにすることができ、ストレージシステム５０の消費電力を抑制することができる。
【００４０】
また、省電力モードにした記憶装置へのアクセスが発生しても、データがキャッシュされていれば、クライアント装置４００は、キャッシュサーバ３００にアクセスして読み出し対象のデータを取得することができる。つまり、多くの場合に、省電力モードの記憶装置を通常の動作モードへと復帰させずに所望のデータが得られるため、アクセス速度が低下するリスクを抑制することができる。
【００４１】
上記のように、キャッシュサーバ３００を利用することでアクセス性能の低下を抑制しつつ省電力化を図れるが、より多くの記憶装置を省電力モードへ遷移させることができれば、さらなる電力消費の抑制が可能になる。
【００４２】
但し、省電力化とアクセス性能の向上とはトレードオフの関係にあるため、通常は省電力化を進めるとアクセス性能が低下する傾向にある。そこで、第２実施形態は、キャッシュ方法を工夫することによってアクセス性能の低下を抑えつつ、ストレージシステム５０における消費電力を低減する技術を提供する。
【００４３】
［２−２．ハードウェア］
ここで、図４を参照しながら、メタサーバ１００のハードウェアの一例について説明する。図４は、第２実施形態に係るメタサーバの機能を実現可能なハードウェアの一例を示した図である。
【００４４】
メタサーバ１００が有する機能は、例えば、図４に示す情報処理装置のハードウェア資源を用いて実現することが可能である。つまり、メタサーバ１００が有する機能は、コンピュータプログラムを用いて図４に示すハードウェアを制御することにより実現される。
【００４５】
図４に示すように、このハードウェアは、主に、ＣＰＵ９０２と、ＲＯＭ（Read Only Memory）９０４と、ＲＡＭ９０６と、ホストバス９０８と、ブリッジ９１０とを有する。さらに、このハードウェアは、外部バス９１２と、インターフェース９１４と、入力部９１６と、出力部９１８と、記憶部９２０と、ドライブ９２２と、接続ポート９２４と、通信部９２６とを有する。
【００４６】
ＣＰＵ９０２は、例えば、演算処理装置又は制御装置として機能し、ＲＯＭ９０４、ＲＡＭ９０６、記憶部９２０、又はリムーバブル記録媒体９２８に記録された各種プログラムに基づいて各構成要素の動作全般又はその一部を制御する。ＲＯＭ９０４は、ＣＰＵ９０２に読み込まれるプログラムや演算に用いるデータなどを格納する記憶装置の一例である。ＲＡＭ９０６には、例えば、ＣＰＵ９０２に読み込まれるプログラムや、そのプログラムを実行する際に変化する各種パラメータなどが一時的又は永続的に格納される。
【００４７】
これらの要素は、例えば、高速なデータ伝送が可能なホストバス９０８を介して相互に接続される。一方、ホストバス９０８は、例えば、ブリッジ９１０を介して比較的データ伝送速度が低速な外部バス９１２に接続される。また、入力部９１６としては、例えば、マウス、キーボード、タッチパネル、タッチパッド、ボタン、スイッチ、及びレバーなどが用いられる。さらに、入力部９１６としては、赤外線やその他の電波を利用して制御信号を送信することが可能なリモートコントローラが用いられることもある。
【００４８】
出力部９１８としては、例えば、ＣＲＴ（Cathode Ray Tube）、ＬＣＤ（Liquid Crystal Display）、ＰＤＰ（Plasma Display Panel）、又はＥＬＤ（Electro-Luminescence Display）などのディスプレイ装置が用いられる。また、出力部９１８として、スピーカやヘッドホンなどのオーディオ出力装置、又はプリンタなどが用いられることもある。つまり、出力部９１８は、情報を視覚的又は聴覚的に出力することが可能な装置である。
【００４９】
記憶部９２０は、各種のデータを格納するための装置である。記憶部９２０としては、例えば、ＨＤＤなどの磁気記憶デバイスが用いられる。また、記憶部９２０として、ＳＳＤやＲＡＭディスクなどの半導体記憶デバイス、光記憶デバイス、又は光磁気記憶デバイスなどが用いられてもよい。
【００５０】
ドライブ９２２は、着脱可能な記録媒体であるリムーバブル記録媒体９２８に記録された情報を読み出し、又はリムーバブル記録媒体９２８に情報を書き込む装置である。リムーバブル記録媒体９２８としては、例えば、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどが用いられる。
【００５１】
接続ポート９２４は、例えば、ＵＳＢ（Universal Serial Bus）ポート、ＩＥＥＥ１３９４ポート、ＳＣＳＩ（Small Computer System Interface）、ＲＳ−２３２Ｃポート、又は光オーディオ端子など、外部接続機器９３０を接続するためのポートである。外部接続機器９３０としては、例えば、プリンタなどが用いられる。
【００５２】
通信部９２６は、ネットワーク９３２に接続するための通信デバイスである。通信部９２６としては、例えば、有線又は無線ＬＡＮ（Local Area Network）用の通信回路、ＷＵＳＢ（Wireless USB）用の通信回路、光通信用の通信回路やルータ、ＡＤＳＬ（Asymmetric Digital Subscriber Line）用の通信回路やルータ、携帯電話ネットワーク用の通信回路などが用いられる。通信部９２６に接続されるネットワーク９３２は、有線又は無線により接続されたネットワークであり、例えば、インターネット、ＬＡＮ、放送網、衛星通信回線などを含む。
【００５３】
以上、メタサーバ１００のハードウェアの一例について説明した。なお、データサーバ２０１、２０２、キャッシュサーバ３００、及びクライアント装置４００の機能もそれぞれ図４に示したハードウェア資源を利用して実現可能である。そのため、データサーバ２０１、２０２、キャッシュサーバ３００、及びクライアント装置４００のハードウェアについては説明を省略する。
【００５４】
［２−３．機能］
次に、メタサーバ１００、データサーバ２０１、２０２、及びキャッシュサーバ３００の機能について説明する。図５は、第２実施形態に係るメタサーバ、データサーバ、及びキャッシュサーバの主な機能を示したブロック図である。
【００５５】
（メタサーバ１００）
図５に示すように、メタサーバ１００は、記憶部１００ａ、制御部１００ｂ、及び通信部１００ｃを有する。記憶部１００ａの機能は、上述したＲＡＭ９０６や記憶部９２０などを用いて実現できる。制御部１００ｂの機能は、上述したＣＰＵ９０２などを用いて実現できる。通信部１００ｃの機能は、上述した接続ポート９２４や通信部９２６などを用いて実現できる。
【００５６】
記憶部１００ａには、図６に示すような管理用データベースが格納される。図６は、第２実施形態に係る管理用データベースの一例を示した図である。この管理用データベースには、記憶装置２１１、２１２、２１３、２２１、２２２、２２３に格納されたデータファイルに関する情報が記録される。
【００５７】
例えば、管理用データベースには、データファイルのファイル名、データサーバ２０１、２０２のＩＰアドレス、ディスク識別子、ファイルサイズ、キャッシュの有無を示す情報が記録される。ＩＰアドレスは、データサーバ２０１、２０２を識別する識別情報の一例である。ディスク識別子は、記憶装置２１１、２１２、２１３、２２１、２２２、２２３をそれぞれ識別する識別情報の一例である。キャッシュの有無を示す情報は、キャッシュサーバ３００の記憶装置３０１に格納済みか否かを示す情報である。
【００５８】
図６の例において、ファイル名「ＡＡＡ．ｄａｔ」のデータファイルは、ＩＰアドレス「１９２．１６８．１．１０」、ディスク識別子「Ａ」、ファイルサイズ「６９０ｋＢ」、キャッシュ「あり」という情報に対応付けられている。
【００５９】
この情報から、制御部１００ｂは、データファイルＡＡＡ．ｄａｔが、ＩＰアドレスが１９２．１６８．１．１０のデータサーバ（データサーバ２０１）が管理するディスク識別子Ａの記憶装置（記憶装置２１１）に格納されていることを認識できる。また、制御部１００ｂは、データファイルＡＡＡ．ｄａｔのデータサイズが６９０ｋＢであること、及びデータファイルＡＡＡ．ｄａｔがキャッシュサーバ３００の記憶装置３０１に格納済みであることを認識できる。
【００６０】
記憶装置２１１、２１２、２１３、２２１、２２２、２２３に格納されているデータファイルが更新されると、制御部１００ｂは、管理用データベースを更新する。
以下、説明の都合上、記憶装置２１１のディスク識別子が「Ａ」、記憶装置２１２のディスク識別子が「Ｂ」、記憶装置２１３のディスク識別子が「Ｃ」であるとする。また、記憶装置２２１のディスク識別子が「Ｄ」、記憶装置２２２のディスク識別子が「Ｅ」、記憶装置２２３のディスク識別子が「Ｆ」であるとする。また、データサーバ２０１のＩＰアドレスが「１９２．１６８．１．１０」、データサーバ２０２のＩＰアドレスが「１９２．１６８．１．３」であるとする。
【００６１】
制御部１００ｂは、キャッシュディスクとして利用可能な記憶装置が追加された場合、或いは、前回キャッシュ処理を実行してから一定の期間が経過した場合にキャッシュ処理を実行する。キャッシュ処理とは、データサーバ２０１、２０２が管理する記憶装置２１１、２１２、２１３、２２１、２２２、２２３に格納されているアクセス頻度の高いデータファイルをキャッシュサーバ３００の記憶装置３０１にコピーする処理である。
【００６２】
キャッシュ処理を実行するため、制御部１００ｂは、データファイル毎のアクセス状況（データの読み出し及び書き込みの回数）をデータサーバ２０１、２０２から取得し、記憶装置３０１にコピーするデータファイルを特定するためのアクセス頻度を計算する。例えば、制御部１００ｂは、キャッシュ処理を実行する度にアクセス頻度を計算する。キャッシュ処理を実行する時刻ｔにおけるアクセス頻度ＡＷ（ｔ）は、例えば、下記の式（１）に基づいて計算される。
【００６３】
ＡＷ（ｔ）＝ＲＡ（ｔ）＋ＡＷ（ｔ−１）×ＷＴ
…（１）
ＡＷ（ｔ−１）は、前回キャッシュ処理を実行した時刻ｔ−１におけるアクセス頻度を表す。また、ＲＡ（ｔ）は、前回キャッシュ処理を実行した後、今回キャッシュ処理を実行するまでの期間に、対象のデータファイルに対して生じたアクセスの回数を表す。また、ＷＴは重みであり、条件「０＜ＷＴ＜１」を満たす値（例えば、１／２）が予め設定される。上記の式（１）は、右辺第１項で最新の一定期間内に生じたアクセス頻度を表現し、右辺第２項で時刻ｔ−１以前のアクセス頻度による影響を表現している。
【００６４】
例えば、制御部１００ｂは、キャッシュ処理の実行時にデータサーバ２０１、２０２から取得したデータファイル毎のアクセス数を記憶部１００ａに格納しておき、今回取得したアクセス数から前回取得したアクセス数を減算することでＲＡ（ｔ）を計算できる。また、制御部１００ｂは、上記の式（１）に基づいて計算したアクセス頻度ＡＷ（ｔ）を記憶部１００ａに格納し、次回計算時に利用する。
【００６５】
制御部１００ｂは、アクセス頻度ＡＷ（ｔ）が予め設定された基準値より大きなデータファイルを特定し、特定したデータファイルを記載した対象ファイルリストを作成する。このとき、制御部１００ｂは、管理用データベースを参照し、キャッシュサーバ３００の記憶装置３０１に格納されていないデータファイルを対象ファイルリストに記載する。
【００６６】
制御部１００ｂは、図７に示すように、記憶装置２１１、２１２、２１３、２２１、２２２、２２３のそれぞれについて対象ファイルリストを作成する。そして、制御部１００ｂは、対象ファイルリストを記憶部１００ａに格納する。図７は、第２実施形態に係る対象ファイルリストの一例を示した図である。
【００６７】
制御部１００ｂは、管理用データベースを参照し、対象ファイルリストに記載したデータファイルの合計サイズ（ファイルサイズの合計）を計算する。また、制御部１００ｂは、管理用データベースを参照し、計算した合計サイズとディスク識別子とを対応付けた暫定対象ディスクリスト（図８を参照）を作成する。図８は、第２実施形態に係る暫定対象ディスクリスト及び対象ディスクリストの一例を示した図である。
【００６８】
制御部１００ｂは、暫定対象ディスクリストの記載情報を合計サイズが小さい順にソートし、選択した記載情報の合計サイズの合算値がキャッシュサーバ３００の記憶装置３０１の空き容量を超えない範囲で、上位から順に記載情報を選択する。そして、制御部１００ｂは、暫定対象ディスクリストから選択した記載情報を有する対象ディスクリスト（図８を参照）を作成し、記憶部１００ａに格納する。
【００６９】
制御部１００ｂは、対象ディスクリストのディスク識別子に対応する対象ファイルリスト（図７を参照）を記憶部１００ａから読み出す。そして、制御部１００ｂは、通信部１００ｃを用いて、読み出した対象ファイルリストに記載のデータファイルをキャッシュサーバ３００の記憶装置３０１にコピーするようにデータサーバ２０１、２０２に指示する（キャッシュ指示）。このキャッシュ指示を受けたデータサーバ２０１、２０２は、図３に示したようにデータコピー、省電力モードへの遷移などの処理を実行する。
【００７０】
上記のように、記憶装置毎にアクセス頻度の高いデータファイルの合計サイズを計算し、合計サイズが小さい順にキャッシュ対象とすることで、キャッシュ対象のデータファイルを全てキャッシュできる記憶装置の数を増やすことができる。その結果、省電力モードへ遷移できる記憶装置の数が増加し、ストレージシステム５０の消費電力をより大きく低減することが可能になる。
【００７１】
（データサーバ２０１、２０２）
データサーバ２０１は、記憶部２０１ａ、制御部２０１ｂ、及び通信部２０１ｃを有する。記憶部２０１ａの機能は、上述したＲＡＭ９０６や記憶部９２０などを用いて実現できる。制御部２０１ｂの機能は、上述したＣＰＵ９０２などを用いて実現できる。通信部２０１ｃの機能は、上述した接続ポート９２４や通信部９２６などを用いて実現できる。
【００７２】
記憶部２０１ａには、記憶装置２１１、２１２、２１３に格納されたデータファイルに関する情報が格納される。例えば、制御部２０１ｂは、データファイル毎に読み出し及び書き込みの回数を監視し、その回数をアクセス数として記憶部２０１ａに記録する。このとき、制御部２０１ｂは、データファイルが格納されている記憶装置とアクセス数とを対応付けて記憶部２０１ａに記録する。そして、制御部２０１ｂは、メタサーバ１００から受けた要求に応じて記憶部２０１ａに記録したアクセス数を応答する。
【００７３】
記憶部２０１ａには、省電力モードに関する設定情報が格納される。この設定情報は、例えば、省電力モードが、ディスク回転数の低下・停止、ディスクヘッドの退避、又は電源オフのいずれであるかを示すモード情報を含む。また、この設定情報は、省電力モード時のディスクの回転数などのパラメータ情報を含む。制御部２０１ｂは、省電力モードへと遷移する際、記憶部２０１ａに格納された設定情報に基づいて記憶装置２１１、２１２、２１３を制御する。
【００７４】
また、上記の設定情報は、通常の動作モードに関する情報も含む。制御部２０１ｂは、省電力モードから通常の動作モードへと復帰する際、上記の設定情報に基づいて記憶装置２１１、２１２、２１３を制御する。例えば、制御部２０１ｂは、キャッシュサーバ３００の記憶装置３０１に格納されていないデータファイルへのアクセスを受け、そのデータファイルを格納した記憶装置が省電力モードである場合、上記の設定情報に基づいて通常の動作モードへと復帰させる。
【００７５】
制御部２０１ｂは、通信部２０１ｃを介して、キャッシュ対象のデータファイルを指定したキャッシュ指示をメタサーバ１００から受信した場合、指定されたデータファイルをキャッシュサーバ３００に送信する。制御部２０１ｂは、送信したデータファイルをキャッシュサーバ３００が記憶装置３０１に格納し終えたことを確認し、指定されたデータファイルを格納していた記憶装置を省電力モードへと遷移させる。
【００７６】
データサーバ２０２は、記憶部２０２ａ、制御部２０２ｂ、及び通信部２０２ｃを有する。記憶部２０２ａの機能は、上述したＲＡＭ９０６や記憶部９２０などを用いて実現できる。制御部２０２ｂの機能は、上述したＣＰＵ９０２などを用いて実現できる。通信部２０２ｃの機能は、上述した接続ポート９２４や通信部９２６などを用いて実現できる。データサーバ２０２の動作はデータサーバ２０１と同じであるため説明を省略する。
【００７７】
（キャッシュサーバ３００）
キャッシュサーバ３００は、記憶部３００ａ、制御部３００ｂ、及び通信部３００ｃを有する。記憶部３００ａの機能は、上述したＲＡＭ９０６や記憶部９２０などを用いて実現できる。制御部３００ｂの機能は、上述したＣＰＵ９０２などを用いて実現できる。通信部３００ｃの機能は、上述した接続ポート９２４や通信部９２６などを用いて実現できる。
【００７８】
記憶部３００ａは、記憶装置３０１の空き容量など、記憶装置３０１に関する情報を記憶する。制御部３００ｂは、メタサーバ１００から記憶装置３０１の空き容量に関する問い合わせを受けた場合に記憶部３００ａを参照して空き容量を応答する。
【００７９】
制御部３００ｂは、通信部３００ｃを介して、データサーバ２０１、２０２からキャッシュ対象のデータファイルを受信した場合、受信したデータファイルを記憶装置３０１に格納する。そして、制御部３００ｂは、データファイルの格納が完了した場合に完了通知をデータファイルの送信元へと送信する。また、制御部３００ｂは、クライアント装置４００からデータファイルの読み出し要求を受けた場合、そのデータファイルを記憶装置３０１から読み出してクライアント装置４００に送信する。
【００８０】
以上、メタサーバ１００、データサーバ２０１、２０２、及びキャッシュサーバ３００の機能について説明した。上記のように、記憶装置毎にアクセス頻度の高いデータファイルの合計サイズが計算され、合計サイズが小さい順にキャッシュされることで、キャッシュ対象のデータファイルを全てキャッシュできる記憶装置の数を増やすことができる。その結果、省電力モードへ遷移できる記憶装置の数が増加し、ストレージシステム５０の消費電力をより大きく低減することが可能になる。
【００８１】
［２−４．処理フロー］
次に、キャッシュ処理に際してメタサーバ１００、データサーバ２０１、２０２が実行する処理の流れについて説明する。なお、データサーバ２０１、２０２が実行する処理は実質的に同じであるため、ここではデータサーバ２０１の処理について説明する。
【００８２】
（メタサーバの処理）
図９及び図１０を参照しながら、メタサーバ１００が実行する処理の流れについて説明する。図９は、第２実施形態に係るメタサーバが実行する処理の流れを示した第１のフロー図である。図１０は、第２実施形態に係るメタサーバが実行する処理の流れを示した第２のフロー図である。
【００８３】
図９及び図１０に示した処理は、例えば、キャッシュディスクとして利用可能な記憶装置が追加された場合、或いは、前回キャッシュ処理を実行後、一定の期間が経過したタイミングで実行される。なお、ストレージシステム５０の管理者などが任意のタイミングで該処理を実行してもよいし、予め設定された不定期のタイミングで実行されるように設定することもできる。
【００８４】
（Ｓ１０１）キャッシュ処理を開始すると、制御部１００ｂは、データサーバ２０１、２０２が管理する記憶装置の中に未確認の記憶装置（Ｓ１０２以降の処理が未実行の記憶装置）があるかを判定する。未確認の記憶装置がある場合、制御部１００ｂにより未確認の記憶装置が１つ選択され、処理はＳ１０２へと進む。一方、未確認の記憶装置がない場合、処理は図１０のＳ１０８へと進む。
【００８５】
（Ｓ１０２）制御部１００ｂは、Ｓ１０１で選択した未確認の記憶装置に未確認のファイル（Ｓ１０３以降の処理が未実行のデータファイル）があるかを判定する。未確認のファイルがある場合、制御部１００ｂにより未確認のファイルが１つ選択され、処理はＳ１０３へと進む。一方、未確認のファイルがない場合、処理はＳ１０６へと進む。
【００８６】
（Ｓ１０３）制御部１００ｂは、Ｓ１０２で選択した未確認のファイルについてアクセス頻度を計算する。アクセス頻度は、上記の式（１）に基づいて計算される。
例えば、制御部１００ｂは、データサーバから未確認のファイルのアクセス数を取得し、今回取得したアクセス数から前回キャッシュ処理時に取得したアクセス数を減算することで、上記の式（１）に含まれるＲＡ（ｔ）を計算する。また、制御部１００ｂは、前回キャッシュ処理時に計算したアクセス頻度ＡＷ（ｔ−１）を利用し、未確認のファイルに関する今回のアクセス頻度ＡＷ（ｔ）を計算する。
【００８７】
（Ｓ１０４）制御部１００ｂは、Ｓ１０３で計算したアクセス頻度が予め設定された基準値より大きいかを判定する。アクセス頻度が基準値より大きい場合、処理はＳ１０５へと進む。一方、アクセス頻度が基準値より大きくない場合、処理はＳ１０２へと進む。なお、基準値は、ストレージシステム５０の管理者などが標準的な運用実態に即した経験則に基づいて予め設定してもよいし、シミュレーションや実験により得られた好適な値を設定してもよい。
【００８８】
（Ｓ１０５）制御部１００ｂは、Ｓ１０１で未確認の記憶装置として選択された記憶装置に対応する対象ファイルリスト（図７を参照）に、Ｓ１０２で未確認のファイルとして選択されたデータファイルを追加する。Ｓ１０５の処理が完了すると、処理はＳ１０２へと進む。
【００８９】
（Ｓ１０６）制御部１００ｂは、記憶部１００ａに格納された管理用データベースを参照し、記憶装置毎の対象ファイルリストに記載されたデータファイルについて、ファイルサイズの合計値である合計サイズを計算する。
【００９０】
（Ｓ１０７）制御部１００ｂは、Ｓ１０６で計算した合計サイズを対応する記憶装置のディスク識別子と共に暫定対象ディスクリスト（図８を参照）に追加する。Ｓ１０７の処理が完了すると、処理はＳ１０１へと進む。
【００９１】
（Ｓ１０８）制御部１００ｂは、暫定対象ディスクリストに基づいて対象ディスクリストを生成する。例えば、制御部１００ｂは、暫定対象ディスクリストの記載情報を合計サイズが小さい順にソートし、選択した記載情報の合計サイズの合算値がキャッシュサーバ３００の記憶装置３０１の空き容量を超えない範囲で、上位から順に記載情報を選択する。そして、制御部１００ｂは、暫定対象ディスクリストから選択した記載情報を有する対象ディスクリスト（図８を参照）を生成する。
【００９２】
（Ｓ１０９）制御部１００ｂは、対象ディスクリストに未処理の記憶装置（Ｓ１１０以降の処理が未実行の記憶装置）があるかを判定する。未処理の記憶装置がある場合、制御部１００ｂにより未処理の記憶装置が１つ選択され、処理はＳ１１０へと進む。未処理の記憶装置がない場合、処理はＳ１１２へと進む。
【００９３】
（Ｓ１１０）制御部１００ｂは、Ｓ１０１で選択した未処理の記憶装置に対応する対象ファイルリストに未処理のファイル（Ｓ１１１の処理が未実行のデータファイル）があるかを判定する。未処理のファイルがある場合、制御部１００ｂにより未処理のファイルが１つ選択され、処理はＳ１１１へと進む。一方、未処理のファイルがない場合、処理はＳ１０８へと進む。
【００９４】
（Ｓ１１１）制御部１００ｂは、Ｓ１１０で選択した未処理のファイルのキャッシュ処理をデータサーバに指示する。このとき、制御部１００ｂは、管理用データベースを参照し、未処理のファイルを格納した記憶装置を管理するデータサーバを特定し、特定したデータサーバに対して未処理のファイルを指定してキャッシュ処理の実行を指示する。
【００９５】
この指示（キャッシュ指示）により、データサーバの記憶装置から未処理のファイルが読み出され、キャッシュサーバ３００の記憶装置３０１に書き込まれる（図３を参照）。Ｓ１１１の処理が完了すると、処理はＳ１１０へと進む。
【００９６】
（Ｓ１１２）制御部１００ｂは、全データサーバ（データサーバ２０１、２０２）へ完了通知を送信する。Ｓ１１２の処理が完了すると、図９及び図１０に示した一連の処理は終了する。
【００９７】
以上、メタサーバ１００が実行する処理の流れについて説明した。
（データサーバの処理）
次に、図１１を参照しながら、データサーバ２０１が実行する処理の流れについて説明する。図１１は、第２実施形態に係るデータサーバが実行する処理の流れを示したフロー図である。
【００９８】
（Ｓ１２１）制御部２０１ｂは、メタサーバ１００から完了通知を受信する。
（Ｓ１２２）制御部２０１ｂは、管理下に未調査の記憶装置（Ｓ１２３以降の処理が未実行の記憶装置）があるかを判定する。未調査の記憶装置がある場合、制御部２０１ｂにより未調査の記憶装置が１つ選択され、処理はＳ１２３へと進む。一方、未調査の記憶装置がない場合、図１１に示した一連の処理は終了する。
【００９９】
（Ｓ１２３）制御部２０１ｂは、Ｓ１２２で選択された未調査の記憶装置に、アクセス頻度が基準値より大きい対象ファイル（メタサーバ１００から指定されたデータファイル）が１つ以上存在するかを判定する。対象ファイルが１つ以上存在する場合、処理はＳ１２４へと進む。対象ファイルが存在しない場合、処理はＳ１２５へと進む。
【０１００】
（Ｓ１２４）制御部２０１ｂは、全ての対象ファイルがキャッシュされているか（キャッシュサーバ３００の記憶装置３０１にコピー済みか）を判定する。全ての対象ファイルがキャッシュされている場合、処理はＳ１２５へと進む。キャッシュされていない対象ファイルがある場合、処理はＳ１２２へと進む。
【０１０１】
（Ｓ１２５）制御部２０１ｂは、Ｓ１２２で選択された未調査の記憶装置を省電力モードへと遷移させる。Ｓ１２５の処理が完了すると、処理はＳ１２２へと進む。
以上、データサーバ２０１が実行する処理の流れについて説明した。
【０１０２】
（省電力化について）
ここで、図１２を参照しながら、図９から図１１に示したキャッシュ方法を適用した場合の効果について説明する。図１２は、第２実施形態に係るキャッシュ方法の効果の一例を示した図である。
【０１０３】
図１２中のＡ、Ｂ、…、Ｆはデータサーバが管理する記憶装置のディスク識別子を表し、ディスク識別子の横に（…）と表記された数字は記憶装置に格納されているアクセス頻度の高いデータファイルの合計サイズを表す。また、キャッシュディスクに付された（…）の数字は空き容量を表す。キャッシュ方法＃１は、ディスク識別子の順にデータファイルをキャッシュする方法を示す。一方、キャッシュ方法＃２は、第２実施形態に係る技術を適用したキャッシュ方法を示す。
【０１０４】
キャッシュ方法＃１の場合、ディスク識別子の順にキャッシュディスクへデータファイルがコピーされる。ディスク識別子がＡの記憶装置におけるキャッシュ対象の合計サイズは１０、ディスク識別子がＢの記憶装置におけるキャッシュ対象の合計サイズは２０である。キャッシュディスクの空き容量が３０であるため、ディスク識別子がＡ、Ｂの２つの記憶装置についてキャッシュ対象のデータファイルをキャッシュディスクにキャッシュすることができる。
【０１０５】
キャッシュ方法＃２の場合、キャッシュ対象の合計サイズが小さい順にキャッシュディスクへデータファイルがコピーされる。ディスク識別子がＡの記憶装置におけるキャッシュ対象の合計サイズは１０、ディスク識別子がＤの記憶装置におけるキャッシュ対象の合計サイズは１０、ディスク識別子がＥ及びＦの記憶装置におけるキャッシュ対象の合計サイズは５である。つまり、ディスク識別子がＢ、Ｃの記憶装置に比べ、ディスク識別子がＡ、Ｄ、Ｅ、Ｆの記憶装置の方が、キャッシュ対象の合計サイズが小さい。そのため、ディスク識別子がＡ、Ｄ、Ｅ、Ｆの４つの記憶装置についてキャッシュ対象のデータファイルがキャッシュディスクにキャッシュされる。
【０１０６】
キャッシュ方法＃１の場合には２つの記憶装置（Ａ、Ｂ）を省電力モードに遷移できる。一方、キャッシュ方法＃２の場合には４つの記憶装置（Ａ、Ｄ、Ｅ、Ｆ）を省電力モードに遷移できる。つまり、キャッシュ方法＃２の方が、より多くの記憶装置を省電力モードへ遷移できる分だけ、ストレージシステム５０の電力消費を低減することが可能になる。なお、アクセス頻度の高いデータファイルはキャッシュディスクに格納されているため、そのデータファイルへのアクセスがあっても素早く応答することができる。
【０１０７】
このように、第２実施形態に係る技術を適用することにより、アクセス速度の低下を抑制しつつ、より消費電力を低減することが可能になる。
以上、第２実施形態について説明した。
【符号の説明】
【０１０８】
１０  ストレージ制御装置
１１  記憶部
１２  制御部
２０  ストレージ装置
２１、２２、２３  第１記憶装置
３０  キャッシュ装置
３１  第２記憶装置
【図１】
2016110305.tif 000003
【図２】
2016110305.tif 000004
【図３】
2016110305.tif 000005
【図４】
2016110305.tif 000006
【図５】
2016110305.tif 000007
【図６】
2016110305.tif 000008
【図７】
2016110305.tif 000009
【図８】
2016110305.tif 000010
【図９】
2016110305.tif 000011
【図１０】
2016110305.tif 000012
【図１１】
2016110305.tif 000013
【図１２】
2016110305.tif 000014