(57)【要約】【課題】アクセス頻度が急に増えた場合にも対処することができるストレージシステムを提供する。【解決手段】ファイルのコンテンツの内容であるタグ情報とファイルごとのアクセス頻度を保持するファイルサーバ２００が、ファイルごとのアクセス頻度からタグのレイティングを算出し、さらにファイルに付与されたタグのレイティングからファイルをレイティングし、ファイルレイティングの高いファイルを転送性能の高い階層に、ファイルレイティングの低いファイルを転送性能の低い階層に配置する制御を行う。これにより、アクセス頻度は低いが関心の上がり後にアクセスが増加すると予想されるファイルを予めレスポンスタイムやスループットが高い階層にファイルを配置することができる。また、アクセス頻度は下がったが関心が高くアクセスが増加すると予想されるファイルをレスポンスタイムやスループットが高い階層に配置したままにすることができる。【選択図】図１
2010238138.tif 000002
【特許請求の範囲】
【請求項１】
記憶領域が２以上の階層に管理され前記階層にファイルを記憶するストレージ装置と、前記ストレージ装置とネットワークを経由して通信可能なファイルサーバと、前記ファイルサーバとネットワークを経由して通信可能な前記ファイルのコンテンツを管理するコンテンツサーバと、を有するストレージシステムであって、
前記ファイルサーバは、
前記コンテンツサーバから前記ファイルの登録要求を受理すると、前記ファイルを前記ストレージ装置に登録するとともに、前記ファイルのファイル名、前記ファイルに関連付けられた前記ファイルの内容を表す情報であるタグ名、前記ファイルへのアクセス情報をファイル管理情報として記憶部に記憶するファイル登録手段と、
前記コンテンツサーバから前記ファイルの読出し要求を受理すると、前記ファイルを読み出すとともに、前記ファイルへのアクセス情報を更新するファイル読出し手段と、
所定のタイミングになると、前記ファイル管理情報に含まれる前記タグ名ごとに前記アクセス情報を参照して前記タグ名の評価値を算出しタグ評価値情報として前記記憶部に記憶し、前記ファイル管理情報の前記ファイル名ごとに、前記タグ評価値情報を参照して前記ファイルの評価値を算出し、前記ファイル管理情報に登録するファイル評価値算出手段と、
前記ファイルの評価値に基づいて前記ファイルの格納先階層を決定し、前記決定されたファイルの格納先階層が現在の格納先階層と異なる格納先階層の場合に前記ファイルの再配置を行うファイル再配置制御手段と、を有する
ことを特徴とするストレージシステム。
【請求項２】
前記ファイル登録手段は、前記タグ名と前記ファイルとの相関関係の強さを示す関連強度を前記ファイル管理情報に登録し、
前記ファイル評価値算出手段は、前記タグ名ごとに前記関連強度と前記アクセス情報とを参照して前記タグ名の評価値を算出し前記タグ評価値情報に記憶する
ことを特徴とする請求項１に記載のストレージシステム。
【請求項３】
前記ファイル登録手段は、前記ファイルのコンテンツの長さを表す情報を前記ファイル管理情報に登録し、
前記ファイル評価値算出手段は、前記タグ名ごとに前記コンテンツの長さを表す情報と前記アクセス情報とを参照して前記タグ名の評価値を算出する
ことを特徴とする請求項１に記載のストレージシステム。
【請求項４】
前記記憶部には、前記タグ名と類似するタグ名を記憶するタグ類似語情報が記憶されており、
前記ファイル評価値算出手段は、前記タグ名ごとに、前記タグ名の前記アクセス情報および前記類似するタグ名の前記アクセス情報を参照して前記タグ名の評価値を算出する
ことを特徴とする請求項１に記載のストレージシステム。
【請求項５】
前記ファイルサーバは、さらに、
前記タグ名を受信すると、前記受信したタグ名が付与されたファイルを前記ファイル管理情報から抽出し、前記抽出されたファイルを上位の階層に再配置するタグ入力に基づく再配置制御手段を有する
ことを特徴とする請求項１に記載のストレージシステム。
【請求項６】
記憶領域が２以上の階層に管理され前記階層にファイルを記憶するストレージ装置と、前記ストレージ装置とネットワークを経由して通信可能なファイルサーバと、前記ファイルサーバとネットワークを経由して通信可能な前記ファイルのコンテンツを管理するコンテンツサーバと、を有するストレージシステムにおいて、前記コンテンツサーバからのアクセス状況に応じて、前記ファイルサーバが前記ファイルの記憶される階層を管理するファイル階層管理方法であって、
前記コンテンツサーバから前記ファイルの登録要求を受理すると、前記ファイルを前記ストレージ装置に登録するとともに、前記ファイルのファイル名、前記ファイルに関連付けられた前記ファイルの内容を表す情報であるタグ名、前記ファイルへのアクセス情報をファイル管理情報として記憶部に記憶するファイル登録ステップと、
前記コンテンツサーバから前記ファイルの読出し要求を受理すると、前記ファイルを読み出すとともに、前記ファイルへのアクセス情報を更新するファイル読出しステップと、
所定のタイミングになると、前記ファイル管理情報に含まれる前記タグ名ごとに前記アクセス情報を参照して前記タグ名の評価値を算出しタグ評価値情報として前記記憶部に記憶し、前記ファイル管理情報の前記ファイル名ごとに、前記タグ評価値情報を参照して前記ファイルの評価値を算出し、前記ファイル管理情報に登録するファイル評価値算出ステップと、
前記ファイルの評価値に基づいて前記ファイルの格納先階層を決定し、前記決定されたファイルの格納先階層が現在の格納先階層と異なる格納先階層の場合に前記ファイルの再配置を行うファイル再配置制御ステップと、を有する
ことを特徴とするファイル階層管理方法。
【請求項７】
前記ファイル登録ステップは、前記タグ名と前記ファイルとの相関関係の強さを示す関連強度を前記ファイル管理情報に登録し、
前記ファイル評価値算出ステップは、前記タグ名ごとに前記関連強度と前記アクセス情報とを参照して前記タグ名の評価値を算出し前記タグ評価値情報に記憶する
ことを特徴とする請求項６に記載のファイル階層管理方法。
【請求項８】
前記ファイル登録ステップは、前記ファイルのコンテンツの長さを表す情報を前記ファイル管理情報に登録し、
前記ファイル評価値算出ステップは、前記タグ名ごとに前記コンテンツの長さを表す情報と前記アクセス情報とを参照して前記タグ名の評価値を算出する
ことを特徴とする請求項６に記載のファイル階層管理方法。
【請求項９】
前記記憶部には、前記タグ名と類似するタグ名を記憶するタグ類似語情報が記憶されており、
前記ファイル評価値算出ステップは、前記タグ名ごとに、前記タグ名の前記アクセス情報および前記類似するタグ名の前記アクセス情報を参照して前記タグ名の評価値を算出する
ことを特徴とする請求項６に記載のファイル階層管理方法。
【請求項１０】
前記ファイルサーバは、さらに、
前記タグ名を受信すると、前記受信したタグ名が付与されたファイルを前記ファイル管理情報から抽出し、前記抽出されたファイルを上位の階層に再配置するタグ入力に基づく再配置制御ステップを有する
ことを特徴とする請求項６に記載のファイル階層管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ファイルレベルの階層ストレージ環境における、ファイルの内容を表すタグ情報とファイルのアクセス頻度情報に基づいてファイルを記憶する階層を管理するストレージシステムおよびファイル階層管理方法に関する。
【背景技術】
【０００２】
近年、デジタル・コンテンツの保管・配布用ストレージとしてコンテンツ・デポ（content depots）のようなオンラインストレージの需要が伸びている。また、ストレージ最適化のため、ファイルのアクセス頻度に応じてファイルを再配置するといったファイルレベルの階層ストレージ環境が注目されている。
【０００３】
一方で、地球環境保護の気運の高まりに伴い、情報技術業界においても機器の消費電力低減に向けた取組みが盛んになっている。このため、ストレージ装置の消費電力低減に関心が高まっており、ストレージ装置に搭載したディスクをスピンダウン／スピンオフすることにより消費電力を抑えることができるＭＡＩＤ（Massive Array of Inactive Disks）技術の導入が進められている。例えば、特許文献１には、ホスト計算機がストレージ装置にアクセスする頻度に応じて、電源を制御する方法が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０００−２９３３１４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１に開示された技術は、ホスト計算機がストレージ装置にアクセスする頻度の応じて電源を制御する。そのため、アクセス頻度が急に増えた場合に、電源の制御を行いストレージ装置がアクティブになるまでの時間アクセスが制限されることになる。従って急なアクセス増加に迅速に対応できないという問題がある。
【０００６】
本発明は、上記の問題を解決するためになされたものであり、アクセス頻度が急に増えた場合にも迅速に対応することができるストレージシステムおよびファイル階層管理方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
前記目的を達成するために、ストレージシステムを管理するファイルサーバは、ファイルのコンテンツの内容であるタグ情報とファイルごとのアクセス頻度を保持し、ファイルごとのアクセス頻度からタグのレイティングを算出し、さらにファイルに付与されたタグのレイティングを用いてファイルのレイティングを算出し、ファイルのレイティングの高いファイルを転送性能の高い階層に、ファイルのレイティングの低いファイルを転送性能の低い階層に配置する制御を行う。
【０００８】
また、アクセス頻度は低いが関心の上がり後にアクセスが増加すると予想されるファイルを予めレスポンスタイムやスループットが高い階層にファイルを配置することにより、アクセス頻度は下がったが関心が高く後にアクセスが増加すると予想されるファイルをレスポンスタイムやスループットが高い階層に配置したままにすることにより、急なアクセスに迅速に対応することができる。
【発明の効果】
【０００９】
本発明によれば、アクセス頻度が急に増えた場合にも迅速に対応することができる。
【図面の簡単な説明】
【００１０】
【図１】本実施形態のストレージシステムの構成を示す図である。
【図２】ファイルサーバ上のメモリのブロック構成を示す図である。
【図３】ファイルサーバ上のデータベースのブロック構成を示す図である。
【図４】第１の実施形態に係るファイル管理テーブルのデータ構造の一例を示す図である。
【図５】第１の実施形態に係るタグレイティングテーブルのデータ構造の一例を示す図である。
【図６】ＬＵ管理テーブルのデータ構造の一例を示す図である。
【図７】階層管理テーブルデータ構造の一例を示す図である。
【図８】ファイル登録プログラムの処理を示すフローチャートである。
【図９】ファイル読出しプログラムの処理を示すフローチャートである。
【図１０】ファイルレイティング算出プログラムの処理を示すフローチャートである。
【図１１】ファイル再配置制御プログラムの処理を示すフローチャートである。
【図１２】第２の実施形態に係るファイル管理テーブルのデータ構造の一例を示す図である。
【図１３】第２の実施形態に係るタグレイティングテーブルのデータ構造の一例を示す図である。
【図１４】第３の実施形態に係るファイル管理テーブルのデータ構造の一例を示す図である。
【図１５】第４の実施形態に係るタグ類似語テーブルのデータ構造の一例を示す図である。
【図１６】第４の実施形態に係るファイル管理テーブルのデータ構造の一例を示す図である。
【図１７】第４の実施形態に係るタグレイティングテーブルのデータ構造の一例を示す図である。
【図１８】第５の実施形態に係るタグ入力に基づく再配置制御プログラムの処理を示すフローチャートである。
【発明を実施するための形態】
【００１１】
以下、本発明を実施するための形態（以下、実施形態と称する。）について、図面を参照しながら詳細に説明する。
【００１２】
＜第１の実施形態＞
第１の実施形態は、ファイルのアクセス頻度に基づきファイルに付与されたタグ情報をレイティングし、さらにタグ情報のレイティングからファイルをレイティングすることによりファイルを再配置するものである。以下、そのファイルをレイティングする方法なども含めて詳細に説明する。なお、「レイティング」とは、「等級分け」、「評価」といった意味であるが、本実施形態では、ファイルサーバによるタグまたはファイルに対してのアクセスの可能性評価を意味し、評価された値は「評価値」として後述する図４に示すレイティング４０６および図５に示すレイティング５０２となる。また、「レイティングする」とは、通常は「評価する」といった意味であるが、本実施形態では、「評価値を算出する」ことを意味する。
【００１３】
（ストレージシステムの構成）
図１は、本実施形態のストレージシステムの構成を示す図である。ストレージシステムは、クライアント１０２、ＷＡＮ１００、コンテンツサーバ１０４、ＬＡＮ１０１、ファイルサーバ２００、ＳＡＮ１０３およびストレージ装置３００により構成される。なお、ＳＡＮはStorage Area Networkの略、ＬＡＮはLocal Area Networkの略、ＷＡＮはWide Area Networkの略である。
【００１４】
（ストレージ装置）
ストレージ装置３００は、コントローラ３０１、ＬＵ３０２、物理ディスク３０６、アレイグループ３０７を備える。コントローラ３０１は、ファイルサーバ２００からＬＵ３０２へのデータ入出力の制御を行う。ＬＵ３０２はデータを記憶する。ＬＵ３０２は、ひとつまたは複数の物理ディスクをまとめたアレイグループ３０７からひとつまたは複数作成される。コントローラ３０１は、ＬＵ３０２をスピンアップ階層３０３、スピンダウン階層３０４、スピンオフ階層３０５として論理的に管理している。なお、ＬＵはLogical Unitの略である。
【００１５】
ここでのスピンアップ、スピンダウン、スピンオフは、ＭＡＩＤ技術におけるディスクの回転状態を示している。スピンアップは通常通りの回転状態を示している。従って、通常のレスポンスタイム、スループットを示す。一方、スピンオフは省電力を目的として、回転を停止した状態を示している。従って、スピンアップするまでに時間がかかりスピンアップの状態に比べレスポンスタイムが長くなる。また、スピンダウンは省電力を目的として、回転数を落とした状態を示している。従って、スピンアップとスピンオフの中間のレスポンスタイム、スループットを示す。本実施形態では、ＭＡＩＤ技術におけるディスクの回転状態で階層を定義することを例として示しているが、高性能階層や低性能階層というような性能観点や、高コスト階層や低コスト階層というようなコスト観点、高信頼性階層や低信頼性階層といった信頼性観点などで階層化管理してもよい。
【００１６】
（ファイルサーバ）
ファイルサーバ２００は、ＬＡＮアダプタ２０１、ＣＰＵ２０２、ＳＡＮアダプタ２０３、メモリ２０４およびデータベース２０５を備える。ファイルサーバ２００は、ＳＡＮ１０３を介して、ストレージ装置３００の記憶領域をＬＵ３０２として認識する。ファイルサーバ２００はＳＡＮアダプタ２０３を有し、ＳＡＮアダプタ２０３を介してＳＡＮ１０３に接続している。さらにファイルサーバ２００はＬＡＮアダプタ２０１を有し、ＬＡＮアダプタ２０１を介してＬＡＮ１０１に接続されている。
【００１７】
ファイルサーバ２００は、ＬＡＮ１０１を介してコンテンツサーバ１０４からファイルの登録を要求され、登録を要求されたファイルを記憶領域として認識したＬＵ３０２に記録する。ＣＰＵ２０２は、メモリ２０４に記憶されているプログラムを実行することによって、各種処理を行い、各処理で発生したデータをデータベース２０５に記録する。
【００１８】
（コンテンツサーバ）
コンテンツサーバ１０４は、ファイルサーバ２００上のファイルをＷＡＮ１００を介してクライアント１０２に公開する。クライアント１０２は、コンテンツサーバ１０４を介して、ファイルサーバ２００へのファイルの登録や、ファイルサーバ２００上のファイルの読出しを行う。
【００１９】
（メモリの構成）
図２は、ファイルサーバ上のメモリのブロック構成を示す図である。ファイルサーバ２００上のメモリ２０４には、コンテンツサーバ１０４からファイルの登録依頼が行われたときファイルの登録処理を行うファイル登録プログラム２０４１（ファイル登録手段）（図８参照）、コンテンツサーバ１０４からファイルの読出し依頼が行われたときファイルの読出し処理を行うファイル読出しプログラム２０４２（ファイル読出し手段）（図９参照）、ファイルのレイティングの算出を行うファイルレイティング算出プログラム２０４３（ファイル評価値算出手段）（図１０参照）、ファイルを階層間で再配置するファイル再配置制御プログラム２０４４（ファイル再配置制御手段）（図１１参照）、および第５の実施形態において後述するタグ入力に基づく再配置制御プログラム２０４５（タグ入力に基づく再配置制御手段）（図１８参照）が配置され、ＣＰＵ２０２によって実行される。
【００２０】
（データベースの構成）
図３は、ファイルサーバ上のデータベースのブロック構成を示す図である。ファイルサーバ２００上のデータベース２０５には、ファイル管理テーブル２０５１（ファイル管理情報）（図４参照）、タグレイティングテーブル２０５２（タグ評価値情報）（図５参照）、ＬＵ管理テーブル２０５３（図６参照）、階層管理テーブル２０５４（図７参照）、および第４の実施形態で後述するタグ類似語テーブル２０５５（図１５参照）を含んで各情報が記憶されている。
【００２１】
次に、各テーブルについて説明する。
図４は、第１の実施形態に係るファイル管理テーブルのデータ構造の一例を示す図である。図４に示すファイル管理テーブル２０５１は、ファイルサーバ２００で管理しているファイルの情報を保持し、コンテンツサーバ１０４がファイルサーバ２００上のファイルへアクセスするためのパスであるファイルパス４０１、ファイルサーバにおいて実際に格納された場所へのパスである実格納パス４０２、ファイルの容量４０３、ファイルが一日にアクセスされた回数であるアクセスカウント／日（４０４）（アクセス情報）、ファイルに付与されたタグの名前であるタグ名４０５、ファイルのレイティングの値であるレイティング４０６（評価値）の情報を格納する。なお、ファイルパス４０１は、狭義の意味ではファイル名であり、広義の意味ではファイル名を含むファイルパスである。
【００２２】
タグ名４０５とは、ファイルのタイトルや、ファイルの説明とは別途に設けられ、ファイルを見つけやすくするために使用されるキーワードなどであり、クライアント１０２からコンテンツサーバ１０４にファイルをアップロードする際にコンテンツサーバ１０４に登録される。例えば、オリンピックの動画のファイルをアップロードをする際に、「水泳」、「卓球」、「オリンピック」などがタグ名となる。
【００２３】
さらに説明すると、タグ名４０５は、ファイルにひとつも付与されない場合や複数付与される場合がある。ファイルに付与されたタグ名４０５は、ファイルの内容を表す文字列である。タグの文字列はクライアント１０２からファイルを登録するユーザが自由に定義、付与する場合や、ファイルサーバ２００やコンテンツサーバ１０４のようなファイルを扱うサーバが定義、付与する場合もある。
【００２４】
ファイルのレイティング４０６は、ファイルの評価を表し、そのファイルに対するユーザの関心の高さを示すものであり、本実施形態の特徴的な評価指標である。
【００２５】
図５は、第１の実施形態に係るタグレイティングテーブルのデータ構造の一例を示す図である。本実施形態では、ファイルのレイティング４０６を算出する際に、タグ名におけるレイティングも実施する。図５に示すタグレイティングテーブル２０５２は、ファイルサーバ２００で管理しているタグ情報から、タグ名であるタグ名５０１、タグのレイティングであるレイティング５０２（評価値）の情報を格納する。タグのレイティング５０２は、タグの評価を表し、そのタグに対するユーザの関心の高さを示す。
【００２６】
図６は、ＬＵ管理テーブルのデータ構造の一例を示す図である。図６に示すＬＵ管理テーブル２０５３は、ファイルサーバ２００に公開されたストレージシステムのＬＵ３０２（図１参照）の情報を管理し、公開されたＬＵ３０２の名前であるＬＵ名６０１、ＬＵ３０２の容量６０２、ファイルサーバ２００がＬＵ３０２を認識する名前であるデバイス名６０３、ＬＵ３０２が所属する階層名である所属階層名６０４を格納する。どのＬＵ３０２をどの階層とするかについては、ファイルサーバ２００がその目的に合わせて分類する。例えば、図１に示す階層と対応する場合、階層Ａをスピンアップ階層３０３、階層Ｂをスピンダウン階層３０４、階層Ｃをスピンオフ階層とすればよい。また、ユーザがファイルサーバ２００に設定ファイルを用意するなどで定義してもよい。
【００２７】
図４に示すファイル管理テーブル２０５１の実格納パス４０２は、そのファイルが存在するデバイス名６０３とそのファイルのファイルパス４０１を「／」で連結したものとなる。従って、例えばファイル名「ファイルＡ」のファイルがデバイス名「／ｈｄａ」のデバイスに存在する場合、実格納パス４０２は「／ｈｄａ／ファイルＡ」となる。
【００２８】
図７は、階層管理テーブルデータ構造の一例を示す図である。図７に示す階層管理テーブル２０５４は、各階層に配置するファイルのレイティングの範囲である上限と下限の情報を保持しており、階層の名前である階層名７０１、レイティングの上限値であるレイティング上限７０２、レイティングの下限値であるレイティング下限７０３の情報を格納する。レイティング上限７０２とレイティング下限７０３により、階層名７０１の階層に配置するファイルのレイティング範囲が表される。
【００２９】
ファイル再配置制御プログラム２０４４（図１１参照）が再配置を行うとき、このレイティング範囲内のレイティングを持つファイルをその階層に配置する。レイティング上限７０２は、最上位の階層では「−」の値を格納し、最上位の階層では上限がないことを示す。逆にレイティング下限７０３は、最下位の階層では「−」の値を格納し、最下位の階層では下限がないことを示す。具体的には、階層Ａはレイティングが「８０００」以上の場合、階層Ｂはレイティングが「５０００」以上、かつ、「８０００」未満の場合である。
【００３０】
図７において、各階層間のレイティングに重なりがない例を示しているが、各階層間にレイティングの重なりがあってもよい。例えば、図７においては、階層Ａのレイティング下限７０３は「８０００」、階層Ｂのレイティング上限７０２「８０００」となっており重なりがない例を示しているが、階層Ａのレイティング下限７０３を「８０００」、階層Ｂのレイティング上限７０２を「８５００」として重なりがあってもよい。重なりがある場合、どちらの階層にも配置可能である。例えば、ファイルのレイティングが「８２００」であった場合、前記例では階層Ａおよび階層Ｂどちらに配置してもよい。具体的には、ファイルサーバ２００は、ストレージ装置３００の容量に空きがある階層を判別し、空きのある階層にファイルを配置することができる。
【００３１】
次に各プログラムの処理について説明する。なお、処理の主体はＣＰＵ２０２であるが、便宜上、各プログラムを主体として説明する。
（ファイル登録プログラム）
図８は、ファイル登録プログラムの処理を示すフローチャートである。コンテンツサーバ１０４からファイルの登録依頼が行われたときの、ファイル登録プログラム２０４１によるファイルの登録処理を図８を用いて説明する。ファイルの登録依頼は、コンテンツサーバ１０４からファイル登録プログラムにファイル名、ファイルのデータおよびそのファイルに付与されたタグの文字列が入力されることで行われる。
【００３２】
ステップＳ８０１では、ファイル登録プログラム２０４１がコンテンツサーバ１０４からファイルとそのファイルに付与されたタグの登録依頼を受け付ける。ファイル登録プログラム２０４１には、ファイル名、およびファイルデータ、およびそのファイルに付与されたタグ名の文字列が入力される。ここでは、ファイル名「ファイルＥ」、ファイルに付与されたタグ「タグＥ」、「タグＦ」が入力されたものとする。
【００３３】
ステップＳ８０２では、ファイル登録プログラム２０４１はファイルの配置先を決定する。ＬＵ管理テーブル２０５３からデバイス名のリストを取得し、そのデバイス名のリストの中からランダムに選び配置先とする。ここでは、配置先のデバイスとしてデバイス名「／ｈｄｄ」が選択されたものとする。ここでは、ランダムに配置先デバイスを選択しているが、図１０に示すファイルレイティング算出の処理を実行し、ファイルのレイティングに従い、配置先階層を選択し、配置先デバイスを選択してもよい。
【００３４】
ステップＳ８０３では、ファイル登録プログラム２０４１はファイルを配置先に格納する。ステップＳ８０２で決定した配置先「／ｈｄｄ」にファイル名「ファイルＥ」でファイルを格納する。そのため、ステップＳ８０１で入力されたファイル名「ファイルＥ」およびステップＳ８０２で決定した配置先デバイス名「／ｈｄｄ」から、ファイルの実格納パスは「／ｈｄｄ／ファイルＥ」となる。
【００３５】
ステップＳ８０４では、ファイル登録プログラム２０４１はファイル情報およびタグ情報を格納する。登録されたファイルの情報を用いてファイル管理テーブル２０５１（図４参照）に値を格納する。ここでは、ファイル名にはファイル登録依頼時に指定されたファイル名「ファイルＥ」、実格納パス４０２にはステップＳ８０３で決定したファイルのアクセスパス「／ｈｄｄ／ファイルＥ」、容量４０３にはファイルの容量を格納する。タグ名４０５にはステップＳ８０１で入力されたタグ名「タグＥ」および「タグＦ」を格納する。また、アクセスカウント／日（４０４）やレイティング４０６は初期値として「０」を格納する。さらに、ステップＳ８０１で入力されたタグ情報がタグレイティングテーブル２０５２に存在しなかった場合、その値を格納する。そのため、ここではタグ名４０５には登録時に指定されたタグ名「タグＥ」、「タグＦ」を登録する。
【００３６】
（ファイル読出しプログラム）
図９は、ファイル読出しプログラムの処理を示すフローチャートである。コンテンツサーバ１０４からファイルの読出し依頼が行われたときのファイルの読出し処理を図９を用いて説明する。
【００３７】
ステップＳ９０１では、ファイル読出しプログラム２０４２がコンテンツサーバ１０４からファイルの読出し依頼を受け付ける。ファイル読出しプログラム２０４２にはファイルパスが入力される。ここでは、ファイルパス「ファイルＤ」が入力されたものとする。
【００３８】
ステップＳ９０２では、読み出しファイルを出力する。具体的には、ファイル読出しプログラム２０４２は読み出すファイルの配置先を決定する。ファイル管理テーブル２０５１からステップＳ９０１で入力されたファイルパスのファイルを探し実格納パス４０２を取得する。実格納パスからファイルのデータを読出し、コンテンツサーバ１０４へファイルのデータを出力する。ここでは、ファイルパス「ファイルＤ」の実格納パス４０２「／ｈｄｄ／ファイルＤ」からファイルＤのデータを読出し、コンテンツサーバ１０４へファイルのデータを出力する。
【００３９】
ステップＳ９０３では、ファイル読出しプログラム２０４２はファイルアクセスカウントを更新する。ステップＳ９０２で決定したファイルのアクセスカウントをファイル管理テーブル２０５１から読出しインクリメントした値をファイル管理テーブル２０５１に格納する。ここでは、ステップＳ９０１で入力されたファイルのパス「ファイルＥ」のアクセスカウント／日（４０４）をファイル管理テーブル２０５１から取り出す。ここでは、アクセスカウント／日（４０４）の値「２０００」を取り出す。「２０００」をインクリメントし、「２００１」をファイルパス「ファイルＤ」のアクセスカウント／日（４０４）に格納する。
【００４０】
（ファイルレイティング算出プログラム）
図１０は、ファイルレイティング算出プログラムの処理を示すフローチャートである。ファイルレイティング算出プログラム２０４３によるファイルレイティング算出処理について図１０を用いて説明する。本実施形態ではファイルレイティング処理は定期的に行われることを想定しているが、ユーザが指示して本ファイルレイティング算出処理を開始する手段を設けてもよい。
【００４１】
まず、本実施形態のタグのレイティングおよびファイルのレイティングの重要性について説明する。本実施形態のレイティング算出によって、ファイルのアクセスカウントからタグをレイティングすることができる。タグはそのタグの文字列がファイルの内容を示すため、このタグのレイティングによって、どのようなファイルの内容にアクセスが集中しているかが判定可能となる。
【００４２】
例えば、「水泳」と「オリンピック」というタグが付与されたファイルのアクセスが上昇したとき、「水泳」と「オリンピック」のレイティングを上昇させる。これによって、現在「水泳」や「オリンピック」という内容のファイルにアクセスが集中していると判断することができる。また、本実施形態のシステムでは同一タグを複数のファイルに付与することができるため、同一タグが付与された複数ファイルのアクセスが上昇するとさらにタグのレイティングは高くなる。これによって、タグが付与されたファイルを多く扱うことでより正確なタグのレイティングが可能となる。
【００４３】
例えば、前記「水泳」と「オリンピック」のタグが付与されたファイルのアクセス上昇と同時に「オリンピック」のタグが付与されたファイルのアクセスが上昇している場合、「オリンピック」という内容のファイルにアクセスが集中していると判断することができる。
【００４４】
また、図１０に示すファイルレイティング算出処理によって、前記に示したタグのレイティングからファイルをレイティングすることができる。前記のとおり、タグは付与されたファイルの内容を示すため、同一のタグが付与されたファイル同士は同一の内容を含むと考えられる。そのため、現時点ではアクセス頻度が低いファイルも付与されたタグのレイティングが高い場合、今後アクセスが上昇する可能性があると判断することができる。
【００４５】
例えば、前記レイティングが高いとされた「オリンピック」タグが付与されたファイルが存在した場合、ファイルのレイティングを上昇させる。これにより、もしそのファイルのアクセス頻度が低くてもそのファイルへのアクセスは上昇する可能性が高いと判断することができる。
【００４６】
図１０に戻り、ステップＳ１００１では、ファイルレイティング算出プログラム２０４３は、ファイルレイティング処理を行う指定時刻（所定のタイミング）まで待機する。本実施形態ではレイティングを行う時刻まで待機することによって一定の間隔でレイティングを実施する方法を示すが、ユーザが指示してレイティングを開始するような手段を設けてもよい。所定のタイミングになると、ステップＳ１００２に進む。
【００４７】
ステップＳ１００２では、ファイルレイティング算出プログラム２０４３は、タグレイティングテーブル２０５２（図５参照）を参照し、格納されているタグごとステップＳ１１０３を繰り返す。ここでは、タグレイティングテーブル２０５２に格納されたタグ「タグ１」が選択されたものとする。
【００４８】
ステップＳ１００３では、ファイルレイティング算出プログラム２０４３は、タグごとのレイティングを算出する。ファイル管理テーブル２０５１を参照し、ステップＳ１００２で選択されたタグについて、そのタグが設定されたファイルのアクセスカウント／日（４０４）の和をそのタグのレイティングとする。求めたタグレイティングをタグレイティングテーブル２０５２のレイティング５０２に格納する。
【００４９】
具体的に、図５に示したタグのレイティングの算出方法について説明する。「タグ１」が関連付けられているファイルには、ファイル管理テーブル２０５１を参照して「ファイルＡ」と「ファイルＢ」がある。「タグ１」が付与されたファイルパス４０１「ファイルＡ」のアクセスカウント／日（４０４）が「１０００」であり、「タグ１」が付与されたファイルパス４０１「ファイルＢ」のアクセスカウント／日（４０４）が「２０００」である。「タグ１」のレイティングは、各アクセスカウントの和として算出する。すなわち、「３０００」という値が「タグ１」のレイティングとしてタグレイティングテーブル２０５２のレイティング５０２に格納される。同様に、「タグ２」のレイティング５０２は、「１０００」と「２０００」との和である「３０００」となり、「タグ３」のレイティング５０２は、「５０００」と「２０００」との和である「７０００」となる。
【００５０】
ステップＳ１００４では、ファイルレイティング算出プログラム２０４３は、タグレイティングテーブル２０５２に格納されたタグすべてに対して処理が行われた後、ステップＳ１００５に進む。
【００５１】
ステップＳ１００５では、ファイルレイティング算出プログラム２０４３は、ファイル管理テーブル２０５１を参照し、格納されているファイルごとにステップＳ１００６を繰り返す。ここでは、ファイル管理テーブル２０５１に格納されたファイルパス４０１「ファイルＡ」が選択されたものとする。
【００５２】
ステップＳ１００６では、ファイルレイティング算出プログラム２０４３は、ファイルごとのレイティングを算出する。ファイル管理テーブル２０５１を参照し、ステップＳ１００５で選択されたファイルについて、そのファイルに付与されたタグを取得する。さらに付与されたタグのレイティングをタグレイティングテーブル２０５２から取得し、タグのレイティングの和をそのファイルのレイティングとする。求めたファイルレイティングをファイル管理テーブル２０５１のレイティング４０６に格納する。
【００５３】
具体的に、図４に示したファイルのレイティングの算出方法について説明する。「ファイルＡ」には、タグ名４０５から「タグ１」および「タグ２」が関連付けられている。図５を参照して「タグ１」のレイティングは「３０００」であり、「タグ２」のレイティングは「３０００」である。この和である「６０００」という値が「ファイルＡ」のレイティングとしてファイル管理テーブル２０５１のレイティング４０６に格納される。同様に、「ファイルＢ」のレイティングは、「タグ１」のレイティング「３０００」と「タグ４」のレイティング「２０００」との和である「５０００」となる。また、「ファイルＣ」のレイティングは、「タグ３」のレイティング「７０００」である。さらに、「ファイルＤ」のレイティングは、「タグ２」のレイティング「３０００」と「タグ３」のレイティング「７０００」との和の「１００００」となる。
【００５４】
ここで注目すべきことは、図４に示すアクセスカウント（アクセスカウント／日（４０４））を参照すると、ユーザからの参照度は、高いほうから、ファイルＣ、ファイルＢおよびファイルＤ、ファイルＡの順序になっているが、本実施形態の特徴であるレイティング４０６によれば、高いほうから、ファイルＤ、ファイルＣ、ファイルＡ、ファイルＢの順序になっている。このような順序の違いは、従来のアクセスカウントのよる順序は、既にファイルが参照された現在、過去の指標による順序であり、レイティングによる順序は、未来に参照される期待される指標が加味されていると考えられる。具体的には、現在「タグ３」が関連付けられている「ファイルＣ」のアクセスカウントが上昇していることから、現時点ではアクセスカウントが低い「ファイルＤ」は、「タグ３」が関連付けられているので、未来において参照される可能性が高いことを意味している。
【００５５】
また、「タグ３」が他のファイルに関連付けらた場合においても、レイティングの値は現時点よりも高くなることが予想されるので、図５に示したタグレイティングテーブル２０５２を参照して、高いレイティングの値を有するタグ名を持つファイルを優先的に、上位階層にあげることもできる。この実施形態は、図１８を参照して後述する。
【００５６】
図１０に戻り、ステップＳ１００７では、ファイルレイティング算出プログラム２０４３は、ファイル管理テーブル２０５１に格納されたファイルすべてに対して処理が行われた後、ステップＳ１００１に戻る。
【００５７】
（ファイル再配置制御プログラム）
図１１は、ファイル再配置制御プログラムの処理を示すフローチャートである。ファイル再配置制御プログラム２００４によるファイルの再配置制御処理について図１１を用いて説明する。
【００５８】
ステップＳ１１０１では、ファイル再配置制御プログラム２００４は階層に配置するファイルのレイティングの上限値や下限値の見直しを行う。ＬＵ管理テーブル２０５３（図６参照）からＬＵの容量６０２を取得し合計を求める。ファイル管理テーブル２０５１（図４参照）からファイルの容量４０３を取得し合計を求める。ＬＵの容量の合計に対するファイル容量の合計の目標割合を求める。
【００５９】
最も上位階層に所属するＬＵを選択し、そのＬＵの使用容量を０として、階層が上位のＬＵから順に以降の処理を繰り返す。さらに最もレイティングが高いファイルを選択し、レイティングが高いファイルから順に以降の処理を繰り返す。選択されたファイルを選択されたＬＵに配置したときに使用される容量の割合をファイルの容量をＬＵの使用容量に足すことで求める。使用容量の割合が目標割合を超えない場合、次のファイルを選択する。
【００６０】
使用される容量の割合が目標割合を超えたら選択されているファイルのレイティングをそのＬＵが所属している階層の下限レイティングとして次のＬＵを選択する。以上の処理を繰り返すことで各階層のレイティングの下限値が求まる。各階層のレイティングの下限値をその下位階層のレイティングの上限値とする。そして、レイティングの上限値とレイティングの下限値を階層管理テーブル２０５４のレイティング上限７０２、レイティング下限７０３に格納する。
【００６１】
ここでは階層に配置するファイルのレイティングの範囲である上限値や下限値の見直し方法を示したが、本ステップは行わず、ファイルサーバ２００の管理者がこのファイルレイティングの上限値や下限値を設定するインタフェースを提供し、設定する手段を設けてもよい。
【００６２】
ステップＳ１１０２では、ファイル再配置制御プログラム２０４４は、ファイル管理テーブル２０５１を参照し、格納されているファイルごとにステップＳ１１０３からステップＳ１１０８を繰り返す。ここでは、ファイル管理テーブル２０５１に格納されたファイルパス４０１「ファイルＡ」が選択されたものとする。ステップＳ１１０３では、対象ファイルのレイティングを読み出す。ステップＳ１１０２で選択されたファイル「ファイルＡ」のレイティング４０６「６０００」を読み出す。
【００６３】
ステップＳ１１０４では、ファイル再配置制御プログラム２０４４は、対象ファイルの配置先階層を、ファイルのレイティングが階層のレイティングの上限値と下限値の間に含まれる階層に決定する。ここでは、ステップＳ１１０３で読み出したファイル「ファイルＡ」のレイティング「６０００」と、階層管理テーブル２０５４の「階層Ｂ」のレイティング上限７０２「８０００」とレイティング下限７０３「５０００」から、配置先の階層を「階層Ｂ」に決定する。
【００６４】
ステップＳ１１０５では、ファイル再配置制御プログラム２０４４は、対象ファイルの現在の配置先階層名を取得する。ここでは、ファイルの実格納パス４０２「／ｈｄａ／ファイルＡ」から、配置デバイス名である「／ｈｄａ」を取得し、さらにＬＵ管理テーブル２０５３からデバイス名「／ｈｄａ」の所属階層名６０４である「階層Ａ」を取得する。
【００６５】
ステップＳ１１０６では、ファイル再配置制御プログラム２０４４は、ステップＳ１１０５で取得した対象ファイルの配置されている階層と、ステップＳ１１０４で決定した配置先の階層からファイルの配置に変更があるか判定し、変更がある場合（ステップＳ１１０６，Ｙｅｓ）ステップＳ１１０７へ進み、変更がない場合（ステップＳ１１０６，Ｎｏ）ステップＳ１１０３へ戻る。ここでは、ステップＳ１１０４で求めたファイル「ファイルＡ」の再配置先階層「階層Ｂ」と、ステップＳ１１０５で取得したファイルＡの現在配置されている階層「階層Ａ」が異なるため、ステップＳ１１０７へ進む。
【００６６】
ステップＳ１１０７では、ファイル再配置制御プログラム２０４４は、ステップＳ１１０４で求めた階層から、ファイルの配置先デバイスを決定する。ここでは、ステップＳ１１０４で求めた「／ｈｄａ／ファイルＡ」の配置先階層である「階層Ｂ」に所属するデバイスをＬＵ管理テーブル２０５３のデバイス名６０３から取得し、「／ｈｄｂ」を配置先デバイスとして決定する。
【００６７】
ステップＳ１１０８では、ファイル再配置制御プログラム２０４４は、ステップＳ１１０７で求めた配置先デバイスから、ファイルの再配置を実行する。ここでは、ステップＳ１１０２で選択したファイル「／ｈｄａ／ファイルＡ」をステップＳ１１０７で決定した配置先デバイスであるデバイス名「／ｈｄｂ」へ再配置し「／ｈｄｂ／ファイルＡ」とする。ファイル管理テーブル２０５１の実格納パス４０２を「／ｈｄｂ／ファイルＡ」に更新する。
【００６８】
ステップＳ１１０９では、ファイル再配置制御プログラム２００４は、ファイル管理テーブル２０５１に格納されたファイルすべてに対して処理が行われた後、ファイルの再配置制御処理を終了する。
【００６９】
（第１の実施形態まとめ）
以上により、ファイルのアクセス頻度とファイルに付与されたタグから、タグをレイティングし、さらに付与されたタグからファイルのレイティングを行うことにより、レイティングの高いファイルを上位の階層に移動することができる。これにより、関心が上がってきたタグを付与されたファイルを上位の階層に移動することにより、ファイルのアクセス増加に備えることができる。また、逆に上位に存在するファイルのアクセスが下がっても、付与されたタグへの関心が高ければ、そのファイルを上位の階層に留めておくことで、ファイルへのアクセス増加に備えることができる。
【００７０】
＜第２の実施形態＞
第２の実施形態は、ファイルのアクセス頻度、付与されたタグおよびファイルとタグの相関関係の強さに基づきファイルをレイティングすることによりファイルを再配置するものである。本実施形態により、ファイルと付与されたタグの相関関係の強さをレイティングに含めることで、より精度の高いレイティングに基づきファイルを再配置することができる。第２の実施形態は、第１の実施形態を基に実施されるものである。以下、そのファイルをレイティングする方法等も含めて、第１の実施形態との相違点を中心に説明する。
【００７１】
（データベースの構成）
第２の実施形態において、第１の実施形態で用いられるテーブルのうち、ファイル管理テーブル２０５１Ａ（図１２参照）が第１の実施形態のファイル管理テーブル２０５１（図４参照）と異なる。
【００７２】
図１２は、第２の実施形態に係るファイル管理テーブルのデータ構造の一例を示す図である。図１２に示すファイル管理テーブル２０５１Ａは、第１の実施形態の情報に加え、ファイルとタグの関連性の強さ（相関関係の強さ）である関連強度４０８を格納する。
【００７３】
具体的には、図１２において、ファイル名「ファイルＢ」、ファイルに付与されたタグ「タグ１」、「タグ４」、ファイルとタグの相関関係の強さ「２」、「１」が入力されたものとする。このファイルとタグとの相関関係の強さは、コンテンツサーバ１０４がクライアント１０２に提供するファイル登録画面において、ユーザがファイルに付与するタグの入力順序で表すことができる。また、ファイルを参照する他のユーザは、タグをキーとしてファイルを検索することが多いため、相関関係の強さの大きい方が、関連強度４０８の値が大きい方がファイルの検索される可能性が大きいことを意味している。
【００７４】
（ファイル登録プログラム）
図８に示す処理において、第１の実施形態と異なるステップＳ８０１と、追加されたステップＳ８０５（図示せず）について説明する。ステップＳ８０１では、ファイル登録プログラム２０４１がコンテンツサーバ１０４からファイルとそのファイルに付与されたタグの登録依頼を受け付ける。ファイル登録プログラム２０４１にはファイル名、およびファイルデータ、そのファイルに付与されたタグ名の文字列およびファイルとタグの相関関係の強さを表す数値が入力される。
【００７５】
ステップＳ８０５では、ファイル登録プログラム２０４１は、第１の実施形態の情報に加えて、ステップＳ８０１で入力されたファイルとタグの関連の強さ情報をファイル管理テーブル２０５１の関連強度４０８に格納する。ここではステップＳ８０１で入力されたファイルとタグの相関関係の強さ「２」、「１」をそれぞれ「タグ１」、「タグ４」の相関関係の強さとしてファイル管理テーブル２０５１の関連強度４０８に格納する。
【００７６】
（ファイルレイティング算出プログラム）
図１０に示す処理において、第１の実施形態と異なるステップＳ１００３について説明する。ステップＳ１００３では、ファイルレイティング算出プログラム２０４３は、タグごとのレイティングを算出する。図１２に示すファイル管理テーブル２０５１Ａを参照し、ステップＳ１００２で選択されたタグについて、そのタグが設定されたファイルのアクセスカウント／日（４０４）を関連強度４０８で割った値の和をそのタグのレイティングとする。求めたタグレイティングを図１３に示すタグレイティングテーブル２０５２Ａのレイティング５０２に格納する。
【００７７】
図１３は、第２の実施形態に係るタグレイティングテーブルのデータ構造の一例を示す図である。タグレイティングテーブル２０５２Ａは、第１の実施形態のタグレイティングテーブル２０５２と同様の構成である。タグ名に対応するレイティングについて具体的に説明する。
【００７８】
「タグ１」は、ファイル管理テーブル２０５１Ａから「ファイルＡ」と「ファイルＢ」に関連付けられている。ファイルパス４０１の「ファイルＡ」について、アクセスカウント／日（４０４）の「１０００」を関連強度４０８の「１」で割った値は「１０００」であり、同様に、「ファイルＢ」についてアクセスカウント「２０００」を関連強度「２」で割った値は「１０００」である。よって、その和である「２０００」という値が「タグ１」のレイティングとしてタグレイティングテーブル２０５２のレイティング５０２に格納される。また、「タグ２」のレイティングは、「ファイルＡ」のアクセスカウント「１０００」を関連強度「２」で割った値は「５００」であり、「ファイルＤ」のアクセスカウント「２０００」を関連強度「１」で割った値は「２０００」であり、その和である「２５００」となる。同様に、「タグ３」のレイティングは、「ファイルＣ」のアクセスカウント「５０００」を関連強度「１」で割った値は「５０００」であり、「ファイルＤ」のアクセスカウント「２０００」を関連強度「２」で割った値は「１０００」であり、その和である「６０００」となる。「タグ４」についても同様に計算する。
【００７９】
図１０に戻り、ステップＳ１００６において、タグレイティングテーブル２０５２Ａを参照して、ファイルのレイティングを算出する。具体的には、「ファイルＡ」において、「タグ１」のレイティングの値「２０００」と、「タグ２」のレイティングの値「２５００」との和として「４５００」が算出される。
【００８０】
ここで注目すべきことは、第２の実施形態の特徴であるレイティング４０６によれば、高いほうから、「ファイルＤ」、「ファイルＣ」、「ファイルＡ」、「ファイルＢ」の順序になっており、図４に示した第１の実施形態と異なってはいない。しかしながら、各ファイル間のレイティングの差異は、小さくなっている。具体的には、「ファイルＤ」と「ファイルＢ」とのレイティングの差異は、第１の実施形態の場合「５０００」であるのに対し、第２の実施形態の場合「４５００」となっており、関連強度４０８が考慮されているのがわかる。
【００８１】
（第２の実施形態まとめ）
以上により、ファイルのアクセスカウントを関連強度で割った値からタグのレイティングを求めるため、レイティングがより正確に行われ、そのレイティングをもとにファイルをより適切な階層に配置することが可能になる。
【００８２】
＜第３の実施形態＞
第３の実施形態は、ファイルのアクセス頻度と映像コンテンツの長さに基づきファイルをレイティングすることによりファイルを再配置するものである。映像ファイルや音楽ファイルなど、クライアントにおいて読み込みながら再生するストリーミングによりアクセスされるファイルは全ファイルデータをクライアントに送信するまでに複数回アクセスされる可能性があり、それはコンテンツサーバのファイルアクセスの実装方法による。本実施形態により、映像ファイルや音楽ファイルのようにそのコンテンツの長さによりアクセス頻度が増える場合にファイルを正確にレイティングし、そのレイティングに基づきファイルを再配置することができる。第３の実施形態は、第１の実施形態を基に実施されるものである。以下、そのファイルを再配置する方法等も含めて、第１の実施形態との相違点を中心に説明する。第３の実施形態において、第１の実施形態で用いられるテーブルのうち、ファイル管理テーブル２０５１Ｂが第１の実施形態のファイル管理テーブル２０５１と異なる。
【００８３】
（データベースの構成）
図１４は、第３の実施形態に係るファイル管理テーブルのデータ構造の一例を示す図である。図１４に示すファイル管理テーブル２０５１Ｂは、第１の実施形態の情報に加え、ファイルのコンテンツの長さの情報であるコンテンツの長さ４０７を格納する。なお、「ｍｉｎ」は「分」を意味する。
【００８４】
（ファイル登録プログラム）
図８において、ステップＳ８０４に続いて、ステップＳ８０５（図示せず）では、第１の実施形態の情報に加えて、コンテンツの長さの情報を取得し、ファイル管理テーブル２０５１Ｂのコンテンツの長さ４０７に格納する。
【００８５】
（ファイルレイティング算出プログラム）
図１０において、ステップＳ１００３では、ファイルレイティング算出プログラム２０４３は、タグごとのレイティングを算出する。ファイル管理テーブル２０５１Ｂを参照し、ステップＳ１００２で選択されたタグについて、そのタグが設定されたファイルのアクセスカウント／日（４０４）をコンテンツの長さで割った値の和をそのタグのレイティングとする。求めたタグレイティングをタグレイティングテーブル２０５２のレイティング５０２に格納する。
【００８６】
具体的には、「タグ１」が付与されたファイル「ファイルＡ」のアクセスカウント／日（４０４）「１０００」を、コンテンツの長さ４０７「１００」で割った値が「１０」となり、「タグ１」が付与されたファイル「ファイルＢ」のアクセスカウント／日（４０４）「２０００」を、コンテンツの長さ４０７「２００」で割った値が「１０」となり、それらの和である「２０」という値が「タグ１」のレイティングとしてタグレイティングテーブル２０５２のレイティング５０２に格納される。同様に、「タグ２」のレイティングは、「ファイルＡ」のアクセスカウント「１０００」をコンテンツの長さ「１００」で割った値が「１０」となり、「ファイルＤ」のアクセスカウント「２０００」をコンテンツの長さ「２００」で割った値が「１０」となり、それらの和である「２０」という値が「タグ２」のレイティングとしてタグレイティングテーブル２０５２（図５参照）のレイティング５０２に格納される。
【００８７】
図１０に戻り、ステップＳ１００６において、「ファイルＡ」において、「タグ１」のレイティングの値「２０」と、「タグ２」のレイティングの値「２０」との和として「４０」がファイルのレイティングとして算出される。
【００８８】
（第３の実施形態まとめ）
以上により、ファイルのアクセスカウントをコンテンツの長さで割った値からタグのレイティングを求めるため、コンテンツの長さに比例してアクセスカウントが伸びる映像コンテンツなどのレイティングがより正確に行われ、そのレイティングをもとにファイルをより適切な階層に配置することが可能になる。
【００８９】
＜第４の実施形態＞
第４の実施形態は、ファイルのアクセス頻度、付与されたタグおよびタグの類似性に基づきファイルをレイティングすることによりファイルを再配置するものである。本実施形態により、類似のタグが付与されたファイルを同等にレイティングし、そのレイティングに基づきファイルを再配置することができる。第４の実施形態は、第１の実施形態を基に実施されるものである。以下、そのファイルをレイティングする方法なども含めて、第１の実施形態との相違点を中心に説明する。特に、第４の実施形態で用いられるタグ類似語テーブル２０５５について詳細に述べる。
【００９０】
（データベースの構成）
図１５は、第４の実施形態に係るタグ類似語テーブルのデータ構造の一例を示す図である。図１５に示すタグ類似語テーブル２０５５は、登録されているタグの名前であるタグ名１４０１と、そのタグと類似のタグを表す類似語１４０２を格納する。タグが複数の類似語を持つ場合、複数行に類似語が格納される。ここでは、「タグ２」の類似語として複数のタグ「タグ３」、「タグ４」が格納されている。また、タグに類似語が存在しない場合は「−」の値が格納される。
【００９１】
図１６は、第４の実施形態に係るファイル管理テーブルのデータ構造の一例を示す図である。第４の実施形態に係るファイル管理テーブル２０５１Ｃは、第１の実施形態に係るファイル管理テーブル２０５１（図４参照）とデータ構造は同一である。レイティング４０６の値が、図１７に示すタグレイティングテーブル２０５２Ｃを参照して算出されるので、ファイルのレイティングの値が異なっている。
【００９２】
図１７は、第４の実施形態に係るタグレイティングテーブルのデータ構造の一例を示す図である。第４の実施形態に係るタグレイティングテーブル２０５２Ｃは、第１の実施形態に係るタグレイティングテーブル２０５２とデータ構造は同一である。レイティング５０２の値が、タグ名４０５およびタグ類似語テーブル２０５５を参照して算出されるので、タグのレイティングの値が異なっている。
【００９３】
（ファイルレイティング算出プログラム）
図１０において、ステップＳ１００３では、ファイルレイティング算出プログラム２０４３は、タグの類似性に基づきタグのレイティングを算出する。タグ類似語テーブル２０５５から、ステップＳ１００２で選択されたタグの類似語を取得する。さらにファイル管理テーブル２０５１Ｃ（図１７参照）を参照し、ステップＳ１００２で選択されたタグおよび類似のタグについて、それらのタグが設定されたファイルのアクセスカウント／日（４０４）の和をそのタグのレイティングとする。
【００９４】
具体的には、タグ類似語テーブル２０５５から「タグ２」の類似語である「タグ３」、「タグ４」を取得する。さらにファイル管理テーブル２０５１Ｃを参照し、「タグ２」および「タグ３」、「タグ４」が付与されたファイルのアクセスカウント／日（４０４）「１０００」、「２０００」、「５０００」、「２０００」の和である「１００００」という値が「タグ２」のレイティングとしてタグレイティングテーブル２０５２Ｃのレイティング５０２に格納される。
【００９５】
図１０に戻り、ステップＳ１００６において、タグレイティングテーブル２０５２Ｃを参照して、「ファイルＡ」において、「タグ１」のレイティングの値「３０００」と、「タグ２」のレイティングの値「１００００」との和として「１３０００」がファイルのレイティングとして算出される。
【００９６】
（第４の実施形態まとめ）
以上により、タグのレイティングを行うとき、類似語であるタグが付与されたファイルのアクセスカウントも含めてタグをレイティングするため、類似性のあるファイルへのアクセスが増加すると、ファイルのレイティングが増加することになり、類似性のあるファイルに対するアクセス増加に備えることができる。
【００９７】
＜第５の実施形態＞
第５の実施形態は、外部入力されたタグ情報に基づきファイルを再配置するものである。本実施形態により、ファイルサーバの上位装置が指定したタグが付与されたファイルを上位の階層に再配置することができる。第２の実施形態は、第１の実施形態の上で実施されるものである。以下、そのファイルを再配置する方法なども含めて、第１の実施形態との相違点を中心に説明する。
【００９８】
（タグ入力に基づく再配置制御プログラム）
図１８は、第５の実施形態に係るタグ入力に基づく再配置制御プログラムの処理を示すフローチャートである。タグ入力に基づく再配置制御プログラム２０４５によるタグ入力に基づく再配置制御処理について図１８を用いて説明する。タグ入力に基づく再配置制御プログラム２０４５は、コンテンツサーバ１０４から入力されるタグに基づき、そのタグが付与されたファイルを上位の階層に再配置する。
【００９９】
ステップＳ１２０１では、タグ入力に基づく再配置制御プログラム２０４５がコンテンツサーバ１０４からタグ入力を受け付ける。ここでは、タグ「タグ３」が入力されたものとする。
【０１００】
ステップＳ１２０２では、タグ入力に基づく再配置制御プログラム２０４５は、最上位階層のデバイス名を決定（特定）する。階層管理テーブル２０５４を参照し、レイティング上限７０２に最上位階層であることを示す値「−」を含む「階層Ａ」を取得し、ＬＵ管理テーブル２０５３から「階層Ａ」に所属するデバイス名６０３「／ｈｄａ」を特定する。
【０１０１】
ステップＳ１２０３では、タグ入力に基づく再配置制御プログラム２０４５は、ステップＳ１２０１で入力されたタグが付与されたファイルの列挙(抽出)を行う。ここでは、ファイル管理テーブル２０５１を参照し、ステップＳ１２０１で入力されたタグ「タグ３」が付与されたファイルであるファイル「ファイルＣ」、「ファイルＤ」が列挙（抽出）される。
【０１０２】
ステップＳ１２０４では、タグ入力に基づく再配置制御プログラム２０４５は、ステップＳ１２０３で列挙（抽出）されたファイルごとにステップＳ１２０５からステップＳ１２０７を繰り返す。ここでは、ステップＳ１２０３で列挙されたファイルの中から、ファイル「ファイルＣ」のファイルが選択されたものとする。
【０１０３】
ステップＳ１２０５では、タグ入力に基づく再配置制御プログラム２０４５は、ステップＳ１２０４で選択されたファイルが配置されている階層を特定する。ここでは、ステップＳ１２０４で選択されたファイルの実格納パス４０２「／ｈｄｃ／ファイルＣ」からファイルＣがデバイス名「／ｈｄｃ」のデバイスに配置されていることを判定し、ＬＵ管理テーブル２０５３からデバイス名６０３「／ｈｄｃ」が所属階層名６０４「階層Ｂ」に所属することを特定する。
【０１０４】
ステップＳ１２０６では、タグ入力に基づく再配置制御プログラム２０４５は、ステップＳ１２０５で特定した階層が最上位の階層であるか判定し、最上位階層でなかった場合には（ステップＳ１２０６，Ｙｅｓ）ステップＳ１２０７へ、最上位階層であった場合には（ステップＳ１２０６，Ｎｏ）ステップＳ１２０５へ進む。ここでは、ステップＳ１２０５で特定した「階層Ｃ」がステップＳ１２０２で特定した最上位階層「階層Ａ」と異なることから、「階層Ｃ」は最上位階層でないと判定し、ステップＳ１２０７に進む。
【０１０５】
ステップＳ１２０７では、タグ入力に基づく再配置制御プログラム２０４５は、ステップＳ１２０２で求めた配置先デバイスから、対象ファイルの再配置を実行する。ここでは、ステップＳ１２０４で選択されたファイル「ファイルＣ」をステップＳ１２０２で求めた配置先のデバイスであるデバイス「／ｈｄａ」へ再配置し「／ｈｄａ／ファイルＣ」とする。さらに、ファイル管理テーブル２０５１の実格納パス４０２を「／ｈｄａ／ファイルＣ」に更新する。
【０１０６】
ステップＳ１２０８では、タグ入力に基づく再配置制御プログラム２０４５は、ステップＳ１２０３で列挙されたファイルすべてに対して処理が行われた後、ファイルの再配置制御処理を終了する。
【０１０７】
第５の実施形態において、外部入力されたタグ情報に基づきファイルサーバの上位装置が指定したタグが付与されたファイルを上位の階層に再配置することができることを説明した。ステップＳ１２０１に入力されるタグ情報としては、タグレイティングテーブル２０５２（図５参照）を参照して、レイティングの高いタグを抽出してもよい。タグ入力に基づく再配置制御プログラム２０４５は、レイティングの高いタグの入力を受け付けると、ステップＳ１２０３以降のファイルの再配置を実行する。
【０１０８】
同様に、ステップＳ１２０１に入力されるタグ情報としては、タグレイティングテーブル２０５２Ａ（図１３参照）を参照して、レイティングの高いタグを抽出してもよいし、タグレイティングテーブル２０５２Ｃ（図１７参照）を参照して、レイティングの高いタグを抽出してもよい。
【０１０９】
（第５の実施形態まとめ）
以上により、ファイルサーバ２００の外部から、または、タグレイティングテーブル２０５２からタグ情報を入力することにより、指定したタグが付与されたファイルを上位の階層に移動することが可能となる。これにより、例えばニュースソースをもとにそのニュースに関連の深いファイルを上位階層に移動することができる。
【０１１０】
本実施形態によれば、ファイルのコンテンツの内容であるタグ情報とファイルごとのアクセス頻度を保持するファイルサーバ２００が、ファイルごとのアクセス頻度からタグのレイティングを算出し、さらにファイルに付与されたタグのレイティングからファイルをレイティングし、算出されたファイルのレイティングの高いファイルを転送性能の高い階層に、ファイルレイティングの低いファイルを転送性能の低い階層に配置する制御を行うことができる。これにより、アクセス頻度は低いが関心の上がり後にアクセス増加すると予想されるファイルを予めレスポンスタイムやスループットが高い階層にファイルを配置することや、アクセス頻度は下がったが関心が高くアクセス増加すると予想されるファイルをレスポンスタイムやスループットが高い階層に配置したままにすることで、急なアクセスに迅速に対応することができる。
【符号の説明】
【０１１１】
１０２    クライアント
１０４    コンテンスサーバ
２００    ファイルサーバ
２０１    ＬＡＮアダプタ
２０２    ＣＰＵ（処理部）
２０３    ＳＡＮアダプタ
２０４    メモリ
２０５    データベース
３００    ストレージ装置
３０１    コントローラ
３０２    ＬＵ
３０３    スピンアップ階層
３０４    スピンダウン階層
３０５    スピンオフ階層
３０６    物理ディスク
３０７    アレイグループ
４０４    アクセスカウント／日（アクセス情報）
２０４１    ファイル登録プログラム（ファイル登録手段）
２０４２    ファイル読出しプログラム（ファイル読出し手段）
２０４３    ファイルレイティング算出プログラム（ファイル評価値算出手段）
２０４４    ファイル再配置制御プログラム（ファイル再配置制御手段）
２０４５    タグ入力に基づく再配置制御プログラム（タグ入力に基づく再配置制御手段）
２０５１    ファイル管理テーブル（ファイル管理情報）
２０５２    タグレイティングテーブル（タグ評価値情報）
２０５３    ＬＵ管理テーブル
２０５４    階層管理テーブル
２０５５    タグ類似語テーブル
【図１】
2010238138.tif 000003
【図２】
2010238138.tif 000004
【図３】
2010238138.tif 000005
【図４】
2010238138.tif 000006
【図５】
2010238138.tif 000007
【図６】
2010238138.tif 000008
【図７】
2010238138.tif 000009
【図８】
2010238138.tif 000010
【図９】
2010238138.tif 000011
【図１０】
2010238138.tif 000012
【図１１】
2010238138.tif 000013
【図１２】
2010238138.tif 000014
【図１３】
2010238138.tif 000015
【図１４】
2010238138.tif 000016
【図１５】
2010238138.tif 000017
【図１６】
2010238138.tif 000018
【図１７】
2010238138.tif 000019
【図１８】
2010238138.tif 000020