(57)【要約】【課題】  データの記憶のためのコストを、より削減する。【解決手段】  データアイテムのそれぞれに対するアクセス数と、そのデータアイテムが所属するグループのそれぞれに対する有効期限更新ポリシーと、に基づいてそのデータアイテムのそれぞれの有効期限時刻を示す有効期限を更新するための手段と、その有効期限に基づいて、そのデータアイテムを有効期限満了データアイテムとして移動するための手段と、を含む。【選択図】      図１
2015172862.tif 000002
【特許請求の範囲】
【請求項１】
データアイテムのそれぞれに対するアクセス数と、前記データアイテムが所属するグループのそれぞれに対する有効期限更新ポリシーと、に基づいて前記データアイテムのそれぞれの有効期限時刻を示す有効期限を更新するための有効期限更新手段と、
前記有効期限に基づいて、前記データアイテムを有効期限満了データアイテムとして移動するためのデータ移動手段と、
を含む情報処理装置。
【請求項２】
前記有効期限更新手段は、前記有効期限を、前記有効期限時刻をキーとしてソートした構造で保持する
ことを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記有効期限更新手段は、現在時刻以前の前記有効期限時刻について前記有効期限時刻を更新するか否かの判断をし、前記現在時刻より後の前記有効期限時刻について前記有効期限時刻を更新するか否かの判断をせず、前記判断をしない前記有効期限時刻を更新しない
ことを特徴とする請求項２記載の情報処理装置。
【請求項４】
前記有効期限へのアクセスが前記データアイテムのアクセスに対して影響を与えない、前記有効期限を記憶するための記憶手段を含む
ことを特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
前記データ移動手段は、移動された前記有効期限満了データアイテムのそれぞれに対するアクセス数と、前記有効期限満了データアイテムが所属するグループのそれぞれに対する復旧ポリシーと、に基づいて前記有効期限満了データアイテムを前記データアイテムとして復旧する
ことを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
請求項１乃至５のいずれか1項に記載の情報処理装置と、
データベースシステムと、
アーカイブ装置と、を含む
情報処理システム。
【請求項７】
請求項１乃至５のいずれか1項に記載の情報処理装置と、
第１のデータベースシステムと、
第２のデータベースシステムと、を含む
情報処理システム。
【請求項８】
コンピュータが、
データアイテムのそれぞれに対するアクセス数と、前記データアイテムが所属するグループのそれぞれに対する有効期限更新ポリシーと、に基づいて前記データアイテムのそれぞれの有効期限時刻を示す有効期限を更新し、
前記有効期限に基づいて、前記データアイテムを有効期限満了データアイテムとして移動する
データライフサイクル制御方法。
【請求項９】
データアイテムのそれぞれに対するアクセス数と、前記データアイテムが所属するグループのそれぞれに対する有効期限更新ポリシーと、に基づいて前記データアイテムのそれぞれの有効期限時刻を示す有効期限を更新し、
前記有効期限に基づいて、前記データアイテムを有効期限満了データアイテムとして移動する処理をコンピュータに実行させる
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データのライフサイクルを制御する技術に関する。
【背景技術】
【０００２】
近年、さまざまなビジネス環境において、持続的にデータが増大している。このような場合、全てのデータを現用系のシステムで保持することは、データベースの性能、コスト面から難しい。換言すると、持続的にデータが増加する環境において、古いデータを現用系のシステムで持ち続けることは現実的ではないため、不要不急のデータを削除またはアーカイブ化する必要がある。
【０００３】
そのためには、残すデータと、廃棄或いはアーカイブ化するデータとを分別することが必要である。しかし、近年では、データが爆発的に増大しているため、人が直接判断してデータを分類することは難しい、という問題がある。
【０００４】
このような問題点を解決する技術として、例えば、キーバリューストアにおいて、データに有効期限を付与し、その有効期限が満了したデータを自動的に削除する技術がある。
【０００５】
また、特許文献１は、異種類のボリュームの特徴を活かしてストレージ装置の性能を向上させる技術を開示する。
【０００６】
特許文献１のストレージ装置は、以下の構成を備える。第１に、高速ボリュームが、低速ボリュームのデータの一部を記憶する。第２に、制御部が、高速ボリュームのデータの保存期間を付与する。第３に、データ消去部が、高速ボリュームから、保存期間の経過したデータを消去する。
【０００７】
更に、特許文献２は、ユーザが所望するデータを適切に提示することができるデータ記憶装置を開示する。
【０００８】
特許文献２のデータ記憶装置は、第１の記憶階層、第２の記憶階層、第３の記憶階層及びデータ移動処理部を有する。
【０００９】
第１の記憶階層は、短期記憶階層を構成し、新しく入力されたデータを記憶する。第３の記憶階層は、潜在記憶階層を構成し、使用頻度の低いデータを記憶する。第２の記憶階層は、第１の記憶階層と第３の記憶階層との間に位置し、中間的な長期記憶階層を構成する。
【００１０】
データ移動処理部は、所定の確認間隔でデータのアクセス回数を確認し、そのアクセス回数と閾値とを比較した結果に基づいて、第１の記憶階層から第２の記憶階層または第３の記憶階層へ、或いは第２の記憶階層から第３の記憶階層へ、そのデータを移動する。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】特開２００６−１３９５５２号公報
【特許文献２】特開２００７−２５７１７４号公報
【発明の概要】
【発明が解決しようとする課題】
【００１２】
しかしながら、持続的にデータが増加する環境においては、そのデータの記憶のためのコストをより削減することが求められる。
【００１３】
特許文献１に開示されたストレージ装置がデータに対して付与する保存期間は、予め与えられた固定値である。従って、ストレージ装置は、高速ボリュームに記憶される全てのデータに対して、最も長く保存する必要のあるデータを想定した場合の、その保存期間を付与する。
【００１４】
即ち、この技術を用いた場合、結果的に保存期間がより短くてもよいデータが、最も長く保存する必要のあるデータの場合と同じ期間、高速ボリュームに保持されてしまう。換言すると、この技術を用いた場合、高速ボリュームの資源（コスト）が無駄に消費される場合がある。
【００１５】
特許文献２に開示されたデータ記憶装置が使用する閾値のそれぞれは、第１の記憶階層の全てのデータ対して一律であり、また第２の記憶階層の全てのデータに対して一律である。従って、データ記憶装置は、第１の記憶階層の全てのデータに対して、最もアクセス回数の少ないデータを想定した場合のその閾値と、データのアクセス回数とを比較する。同じく、データ記憶装置は、第２の記憶階層の全てのデータに対して、最もアクセス回数の少ないデータを想定した場合のその閾値と、データのアクセス回数とを比較する。
【００１６】
即ち、この技術を用いた場合、アクセス回数がより多くても移動されるべきデータが、最も少ないアクセス回数で移動不用とされるデータの場合と同じ基準で、移動不用と判断されてしまう。換言すると、この技術を用いた場合、第１の記憶階層及び第２の記憶階層の資源（コスト）が無駄に消費される場合がある。
【００１７】
即ち、上述した先行技術文献に記載された技術においては、データの記憶のためのコストの削減が、十分でないという問題点がある。
【００１８】
本発明の目的は、上述した問題点を解決する情報処理装置、データライフサイクル制御方法及びそのためのプログラムを提供することにある。
【課題を解決するための手段】
【００１９】
本発明の一様態における情報処理装置は、データアイテムのそれぞれに対するアクセス数と、前記データアイテムが所属するグループのそれぞれに対する有効期限更新ポリシーと、に基づいて前記データアイテムのそれぞれの有効期限時刻を示す有効期限を更新するための有効期限更新手段と、前記有効期限に基づいて、前記データアイテムを有効期限満了データアイテムとして移動するためのデータ移動手段と、を含む。
【００２０】
本発明の一様態におけるデータライフサイクル制御方法は、コンピュータが、データアイテムのそれぞれに対するアクセス数と、前記データアイテムが所属するグループのそれぞれに対する有効期限更新ポリシーと、に基づいて前記データアイテムのそれぞれの有効期限時刻を示す有効期限を更新し、前記有効期限に基づいて、前記データアイテムを有効期限満了データアイテムとして移動する。
【００２１】
本発明の一様態におけるプログラムは、データアイテムのそれぞれに対するアクセス数と、前記データアイテムが所属するグループのそれぞれに対する有効期限更新ポリシーと、に基づいて前記データアイテムのそれぞれの有効期限時刻を示す有効期限を更新し、前記有効期限に基づいて、前記データアイテムを有効期限満了データアイテムとして移動する処理をコンピュータに実行させる。
【発明の効果】
【００２２】
本発明は、データの記憶のためのコストを、より削減することが可能になるという効果がある。
【図面の簡単な説明】
【００２３】
【図１】図１は、本発明の第１の実施形態に係る情報処理装置の構成を示すブロック図である。
【図２】図２は、第１の実施形態に係る情報処理装置を含む情報処理システムの構成を示すブロック図である。
【図３】図３は、第１の実施形態における有効期限インデックスの一例を示す図である。
【図４】図４は、一般的なＢ−ＴＲＥＥ構造の一例を示す図である。
【図５】図５は、第１の実施形態における有効期限インデックスの一例を示す図である。
【図６】図６は、第１の実施形態における参照頻度テーブルの一例を示す図である。
【図７】図７は、第１の実施形態における参照頻度テーブルの一例を示す図である。
【図８】図８は、第１の実施形態における有効期限更新ポリシーの一例を示す図である。
【図９】図９は、第１の実施形態に係る情報処理装置を実現するコンピュータのハードウェア構成を示すブロック図である。
【図１０】図１０は、第１の実施形態における情報処理装置の動作を示すフローチャートである。
【図１１】図１１は、第１の実施形態における情報処理装置の動作を示すフローチャートである。
【図１２】図１２は、第１の実施形態における情報処理装置の動作を示すフローチャートである。
【図１３】図１３は、第１の実施形態における有効期限時刻更新後の有効期限インデックスの一例を示す図である。
【図１４】図１４は、第１の実施形態における有効期限時刻更新後の有効期限インデックスの一例を示す図である。
【図１５】図１５は、第１の実施形態におけるデータアイテム移動後の有効期限インデックスの一例を示す図である。
【図１６】図１６は、第１の実施形態におけるデータアイテム移動後の有効期限インデックスの一例を示す図である。
【図１７】図１７は、本発明の第２の実施形態に係る情報処理システムの構成を示すブロック図である。
【発明を実施するための形態】
【００２４】
本発明を実施するための形態について図面を参照して詳細に説明する。尚、各図面及び明細書記載の各実施形態において、同様の構成要素には同様の符号を付与し、適宜説明を省略する。
【００２５】
＜＜＜第１の実施形態＞＞＞
図１は、本発明の第１の実施形態に係る情報処理装置１００の構成を示すブロック図である。
【００２６】
図１に示すように、本実施形態に係る情報処理装置１００は、有効期限更新部１１０と、データ移動部１５０と、を含む。尚、図１に示す各構成要素は、ハードウェア単位の回路でも、コンピュータ装置の機能単位に分割された構成要素でもよい。ここでは、図１に示す構成要素は、コンピュータ装置の機能単位に分割された構成要素として説明する。
【００２７】
図２は、本実施形態に係る情報処理装置１００を含む、情報処理システム４００の構成を示すブロック図である。
【００２８】
図２に示すように、情報処理システム４００は、データベースシステム４１０とクライアント４５０とデータアーカイブ装置４６０とを備える。情報処理システム４００においては、情報処理装置１００は、データベースシステム４１０に搭載される。
【００２９】
次に、第一の実施形態における情報処理装置１００が備える各構成要素について説明する。
【００３０】
＝＝＝有効期限更新部１１０＝＝＝
有効期限更新部１１０は、データアイテムのそれぞれに対するアクセス数と、そのデータアイテムが所属するグループのそれぞれに対する有効期限更新ポリシーと、に基づいてそのデータアイテムのそれぞれの有効期限時刻を示す有効期限を更新する。ここで、そのデータアイテムは、例えばクライアント４５０が参照する、データベースシステム４１０に格納される、データの単位である。
【００３１】
有効期限更新部１１０は、例えば、有効期限インデックス（有効期限とも呼ばれる）１２０と参照頻度テーブル１３０と有効期限更新ポリシー１４０とを含む。
【００３２】
＝＝＝有効期限インデックス１２０＝＝＝
有効期限インデックス１２０は、データアイテムのそれぞれの有効期限を示す。
【００３３】
図３は、有効期限インデックス１２０の一例を示す図である。図３に示すように、有効期限インデックス１２０は、データアイテムの有効期限時刻とデータベースシステム４１０上のそのデータアイテムのＰＫ（Ｐｒｉｍａｒｙ  Ｋｅｙ）とを含むレコードを、含む。
【００３４】
即ち、有効期限インデックス１２０の各レコードに含まれるＰＫのそれぞれは、データベースシステム４１０上に格納されるデータアイテムのレコードの、それぞれへの参照である。ここでは、ＰＫは、データベースシステム４１０上におけるデータアイテムのそれぞれの識別子（ｉｄ（ｉｄｅｎｔｉｆｉｅｒ））である。
【００３５】
有効期限時刻の初期値は、例えば、データベースシステム４１０へデータアイテムを登録するユーザによって、その登録時に指定されてよい。また、有効期限時刻の初期値は、有効期限更新部１１０によって、予め与えられたデータベースシステム４１０におけるスキーマごとの規定値に基づいて、設定されてよい。
【００３６】
また、図３に示すように、有効期限インデックス１２０は、特定のデータアイテム（ｉｔｅｍ１、ｉｔｅｍ２、ｉｔｅｍ３及びｉｔｅｍ４）を含むユーザデータのテーブルの、それぞれに対応する。その特定のデータアイテムは、図示しない情報で決定される任意のグループに属するデータアイテムである。
【００３７】
図３に示される有効期限インデックス１２０は、第１のグループに属するデータアイテムに対応する有効期限を示す。以後、その第１のグループに対応する情報であることを示す場合、第１のグループに対応するテーブルＩＤの「［ｔｂｌ１］」を付加して、記載する。例えば、「ユーザデータ［ｔｂｌ１］」や「有効期限インデックス１２０［ｔｂｌ１］」、後述する「参照頻度テーブル１３０［ｔｂｌ１］」などと記載する。
【００３８】
有効期限更新部１１０は、例えば、有効期限インデックス１２０［ｔｂｌ１］を、有効期限時刻の値順にレコードをソートして保持する。例えば、有効期限更新部１１０は、有効期限インデックス１２０［ｔｂｌ１］を、有効期限時刻をキーとするＢ−ＴＲＥＥ（Ｂ木）構造として保持してよい。
【００３９】
図４は、一般的なＢ−ＴＲＥＥ構造を示す図である。Ｂ−ＴＲＥＥ構造は、周知の技術であるため、詳細な説明は省略する。尚、有効期限更新部１１０は、Ｂ−ＴＲＥＥ構造に限らず、有効期限時刻をキーとしてソート可能な任意の構造で、有効期限インデックス１２０［ｔｂｌ１］を保持してよい。
【００４０】
図５は、別のグループ（第２のグループ）に属するデータアイテムに対応する、有効期限インデックス１２０の一例を示す図である。以後、第２のグループに対応する情報は、テーブルＩＤの［ｔｂｌ２］を付加して、例えば、「ユーザデータ［ｔｂｌ２］」や「有効期限インデックス１２０［ｔｂｌ２］」、後述する「参照頻度テーブル１３０［ｔｂｌ２］」などと記載する。
【００４１】
＝＝＝参照頻度テーブル１３０＝＝＝
図６は、参照頻度テーブル１３０［ｔｂｌ１］の一例を示す図である。図６に示すように、参照頻度テーブル１３０［ｔｂｌ１］は、データアイテムのＰＫとそのデータアイテムの１日当たりの参照回数とを含むレコードを、含む。即ち、参照頻度テーブル１３０［ｔｂｌ１］は、データアイテムのそれぞれが、一定の期間（ここでは、２日間）に参照された回数を保持する。
【００４２】
例えば、データベース制御部４２０は、ユーザデータ［ｔｂｌ１］のあるレコードのデータアイテムが参照されたとき、そのデータアイテムのＰＫとそのデータアイテムが参照されたことを示す情報とを含むアクセスログ８１０を情報処理装置１００に送信する。アクセスログ８１０を受信した場合、情報処理装置１００の有効期限更新部１１０は、アクセスログ８１０に含まれるＰＫに対応する参照頻度テーブル１３０［ｔｂｌ１］のレコードの、参照回数を更新（１加算）する。
【００４３】
更に、有効期限更新部１１０は、参照回数を更新する際に、参照したユーザ、参照された時刻及び登録からの経過時間（例えば、更新が実施された回数）などに基づいて、加算値に重みを付加して、加算してもよい。
【００４４】
また、図６に示すように、参照頻度テーブル１３０［ｔｂｌ１］は、第１のグループに属するデータアイテムを含む、ユーザデータ［ｔｂｌ１］に対応する。換言すると、参照頻度テーブル１３０［ｔｂｌ１］は、第１のグループに対応して（ユーザデータ［ｔｂｌ１］の単位で）管理される。そして、参照頻度を管理する期間（上述の一定の期間）は、参照頻度テーブル１３０によって異なる。
【００４５】
例えば、有効期限更新部１１０は、その期間の間隔で参照頻度テーブル１３０［ｔｂｌ１］を参照し、有効期限を更新するか否かを判断し、参照頻度テーブル１３０［ｔｂｌ１］の参照回数を初期化（０にクリア）する。
【００４６】
図７は、別のグループ（第２のグループ）に属するデータアイテムに対応する、参照頻度テーブル１３０［ｔｂｌ２］の一例を示す図である。
【００４７】
参照頻度テーブル１３０は、データベース制御部４２０によって、保持され、参照回数を更新されてもよい。この場合、有効期限更新部１１０はアクセスログ８１０を受け取る必要はなく、データベース制御部４２０に保持されている参照頻度テーブル１３０を参照してよい。
【００４８】
＝＝＝有効期限更新ポリシー１４０＝＝＝
有効期限更新ポリシー１４０は、有効期限更新部１１０が有効期限インデックス１２０を更新する場合の、規則を示す。
【００４９】
図８は、有効期限更新ポリシー１４０の一例を示す図である。図８に示すように、有効期限更新ポリシー１４０は、テーブルＩＤと、そのテーブルＩＤに対応する条件とを含むレコードを、含む。
【００５０】
その条件は、例えば、有効期限更新部１１０が「有効期限を更新する」と判断する、上述の参照頻度を管理する期間における、参照回数の下限値と、更新する場合の延長時間とを含む。
【００５１】
有効期限更新部１１０は、有効期限を更新するか否かを判断する時点の現在時刻以前の有効期限時刻を含む、有効期限インデックス１２０のレコードについて、有効期限を更新するか否かを判断してよい。この場合、有効期限更新部１１０は、有効期限を更新するか否かを判断する時点の現在時刻より後の有効期限時刻を含む、有効期限インデックス１２０のレコードについて、有効期限時刻を更新するか否かを判断しない。そして、有効期限更新部１１０は、有効期限時刻を更新するか否かを判断しない場合、その有効期限時刻を更新しない。
【００５２】
換言すると、有効期限更新部１１０は、その時点で有効期限が満了しているデータアイテムについてのみ、有効期限を更新するか否かを判定してよい。この場合、有効期限更新部１１０は、ソートされた有効期限インデックス１２０の、その時点で有効期限が満了していない、レコードを検出した場合、以後のレコードについて有効期限を更新するか否かを判断する処理を実行する必要がない。また、その時点で有効期限が満了していない、レコード以後のレコードについて、有効期限を更新しない。即ち、有効期限更新部１１０の処理は、軽減される。
【００５３】
尚、上記の例に係わらず、有効期限更新部１１０は、有効期限インデックス１２０の全てのレコードについて、有効期限を更新するか否かを判断してよい。
【００５４】
＝＝＝データ移動部１５０＝＝＝
データ移動部１５０は、有効期限インデックス１２０に基づいて、データアイテムを有効期限満了データアイテムとして移動する。データ移動部１５０は、例えば、有効期限満了データアイテムをデータアーカイブ装置４６０へ移動する。そして、データ移動部１５０は、ユーザデータ記憶部４３０からそのデータアイテムを削除し、有効期限インデックス１２０から、そのデータアイテムに対応するレコードを削除する。尚、データ移動部１５０は、そのデータアイテムをデータアーカイブ装置４６０へ移動することなく、削除（そのデータアイテム及び有効期限インデックスのそのレコードの削減）のみを実行してもよい。
【００５５】
以上が、情報処理装置１００の機能単位の各構成要素についての説明である。
【００５６】
次に、情報処理装置１００のハードウェア単位の構成要素について説明する。
【００５７】
図９は、本実施形態における情報処理装置１００を実現するコンピュータ７００のハードウェア構成を示す図である。
【００５８】
図９に示すように、コンピュータ７００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）７０１、記憶部７０２、記憶装置７０３、入力部７０４、出力部７０５及び通信部７０６を含む。更に、コンピュータ７００は、外部から供給される記録媒体（または記憶媒体）７０７を含む。例えば、記録媒体７０７は、情報を非一時的に記憶する不揮発性記録媒体（非一時的記録媒体）である。また、記録媒体７０７は、情報を信号として保持する、一時的記録媒体であってもよい。
【００５９】
ＣＰＵ７０１は、オペレーティングシステム（不図示）を動作させて、コンピュータ７００の全体の動作を制御する。例えば、ＣＰＵ７０１は、記憶装置７０３に装着された記録媒体７０７から、そのプログラムやデータを読み込み、読み込んだそのプログラムやそのデータを記憶部７０２に書き込む。ここで、そのプログラムは、例えば、後述の図１０に示すフローチャートの動作をコンピュータ７００に実行させるためのプログラムである。
【００６０】
そして、ＣＰＵ７０１は、その読み込んだプログラムに従って、またその読み込んだデータに基づいて、図１に示す有効期限更新部１１０及びデータ移動部１５０として各種の処理を実行する。
【００６１】
尚、ＣＰＵ７０１は、通信網（不図示）に接続される外部コンピュータ（不図示）から、記憶部７０２にそのプログラムやそのデータをダウンロードしてもよい。
【００６２】
記憶部７０２は、そのプログラムやそのデータを記憶する。記憶部７０２は、有効期限インデックス１２０、有効期限更新ポリシー１４０を記憶してよい。
【００６３】
記憶装置７０３は、例えば、光ディスク、フレキシブルディスク、磁気光ディスク、外付けハードディスク及び半導体メモリであって、記録媒体７０７を含む。記憶装置７０３（記録媒体７０７）は、そのプログラムをコンピュータ読み取り可能に記憶する。また、記憶装置７０３は、そのデータを記憶してもよい。記憶装置７０３は、有効期限インデックス１２０、参照頻度テーブル１３０及び有効期限更新ポリシー１４０を記憶してよい。
【００６４】
入力部７０４は、オペレータによる操作の入力や外部からの情報の入力を受け付ける。入力操作に用いられるデバイスは、例えば、マウスやキーボード、内蔵のキーボタン及びタッチパネルなどである。例えば、有効期限更新ポリシー１４０は、入力部７０４を介して、入力されてよい。
【００６５】
出力部７０５は、例えばディスプレイで実現される。出力部７０５は、例えばＧＵＩ（ＧＲＡＰＨＩＣＡＬ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）による入力要求や出力などの確認をするために用いられる。
【００６６】
通信部７０６は、データベース制御部４２０やデータアーカイブ装置４６０とのインタフェースを実現する。通信部７０６は、有効期限更新部１１０及びデータ移動部１５０の一部として含まれる。
【００６７】
以上説明したように、図１に示す情報処理装置１００の機能単位のブロックは、図９に示すハードウェア構成のコンピュータ７００によって実現される。但し、コンピュータ７００が備える各部の実現手段は、上記に限定されない。すなわち、コンピュータ７００は、物理的に結合した１つの装置により実現されてもよいし、物理的に分離した２つ以上の装置を有線または無線で接続し、これら複数の装置により実現されてもよい。
【００６８】
尚、上述のプログラムのコードを記録した記録媒体７０７が、コンピュータ７００に供給される場合、ＣＰＵ７０１は、記録媒体７０７に格納されたそのプログラムのコードを読み出して実行してもよい。或いは、ＣＰＵ７０１は、記録媒体７０７に格納されたそのプログラムのコードを、記憶部７０２、記憶装置７０３またはその両方に格納してもよい。すなわち、本実施形態は、コンピュータ７００（ＣＰＵ７０１）が実行するそのプログラム（ソフトウェア）を、一時的にまたは非一時的に、記憶する記録媒体７０７の実施形態を含む。尚、情報を非一時的に記憶する記憶媒体は、不揮発性記憶媒体とも呼ばれる。
【００６９】
以上が、本実施形態における情報処理装置１００を実現するコンピュータ７００の、ハードウェア単位の各構成要素についての説明である。
【００７０】
情報処理装置１００とデータベース制御部４２０のハードウェア構成は共用であってもよい。即ち、情報処理装置１００にデータベース制御部４２０が含まれてもよいし、データベース制御部４２０に情報処理装置１００が含まれてもよい。また、ユーザデータ記憶部４３０が情報処理装置１００に含まれてもよい。
【００７１】
次に本実施形態の動作について、図面を参照して詳細に説明する。
【００７２】
図１３は、本実施形態の動作を示すフローチャートである。尚、このフローチャートによる処理は、前述したＣＰＵ７０１によるプログラム制御に基づいて、実行されてよい。また、処理のステップ名については、Ｓ６０１のように、記号で記載する。
【００７３】
情報処理装置１００は、内蔵する計時手段（不図示）の時刻が所定の時刻に達したことを契機に、図１０に示す動作を開始する。
【００７４】
本実施形態では、情報処理装置１００は、１日おきの毎００：００に、データ移動部１５０を起動し、起動されたデータ移動部１５０は、有効期限更新部１１０を起動する。
【００７５】
ここで、現時点の時刻を２０１３／１１／０３  ２３：３０であるとする。そして、次にデータ移動部１５０が起動される時刻は、２０１３／１１／０４  ００：００であるものとする。
【００７６】
尚、情報処理装置１００は、上記の例に係わらず、情報処理システム４００の管理者の指示に基づいて、データ移動部１５０を起動してもよい。これは、例えば、ユーザデータ記憶部４３０の容量が圧迫、緊急にデータアイテムの移動を実行する必要が発生した場合に対応するものである。例えば、情報処理装置１００は、図９に示す入力部７０４を介して操作者が入力した、その指示を取得してよい。また、情報処理装置１００は、図９に示す通信部７０６を介して図示しない機器から、その指示を受信してもよい。
【００７７】
ユーザデータ［ｔｂｌ１］は、２０１３／１０／３１から毎時２３：００にひとつずつ、合計４つのレコード（即ち、データアイテム）を挿入（記録）されたものとする。ユーザデータ［ｔｂｌ２］は２０１３／１０／０３  ００：３０に４つのレコード（即ち、データアイテム）を挿入（記録）されたものとする。
【００７８】
この場合、データアイテムのそれぞれが挿入される際に、データアイテムのそれぞれに対して既定の有効期限が適用される。その有効期限は、例えば、ユーザデータ［ｔｂｌ１］に関しては「２日」、ユーザデータ［ｔｂｌ２］に関しては「１箇月」であるとする。例えば、その有効期限は、図９に示す記憶部７０２或いは記憶装置７０３に、予め記憶されていてよい。また、有効期限更新部１１０は、図９に示す入力部７０４を介して操作者が入力した、有効期限を取得してもよい。また、有効期限更新部１１０は、図９に示す通信部７０６を介して図示しない機器から、有効期限を受信してもよい。また、有効期限更新部１１０は、図９に示す記憶装置７０３を介して、記録媒体７０７に記録された有効期限を取得してもよい。
【００７９】
この時点で、有効期限インデックス１２０［ｔｂｌ１］及び有効期限インデックス１２０［ｔｂｌ２］のそれぞれは、図３及び図５のそれぞれに示す状態である。これを、以下の動作の開始まえ（例えば、２０１３／１１／０３  ２３：３０）の状態とする。
【００８０】
２０１３／１１／０４  ００：００においてデータ移動部１５０は起動され、更に起動されたデータ移動部１５０が有効期限更新部１１０を起動し、図１０に示すフローチャートの動作が開始される。
【００８１】
有効期限更新部１１０は、図８に示す有効期限更新ポリシー１４０と、図６に示す参照頻度テーブル１３０［ｔｂｌ１］とに基づいて、有効期限インデックス１２０［ｔｂｌ１］を更新する。同時に、有効期限更新部１１０は、図８に示す有効期限更新ポリシー１４０と、図７に示す参照頻度テーブル１３０［ｔｂｌ２］とに基づいて、有効期限インデックス１２０［ｔｂｌ２］を更新する（ステップＳ６１０）。
【００８２】
具体的には、有効期限更新部１１０は、図３に示す有効期限インデックス１２０［ｔｂｌ１］に含まれる、ＰＫが「１」及び「２」のレコードについて、その有効期限時刻を更新するか否かを判断する。即ち、有効期限更新部１１０は、図３に示す有効期限インデックス１２０［ｔｂｌ１］に含まれる、２０１３／１１／０４  ００：００以前の時刻を示す有効期限時刻を、更新するか否かを判断する。
【００８３】
ここでは、図８に示す有効期限更新ポリシー１４０のテーブルＩＤが「ｔｂｌ１」のレコードの条件は、「参照が１日平均５０回以上であれば２日延長」である。そして、図６に示す参照頻度テーブル１３０［ｔｂｌ１］のＰＫが「１」のレコードの参照回数／２日が「１００」である。従って、有効期限更新部１１０は、有効期限インデックス１２０［ｔｂｌ１］のＰＫが「１」のレコードの有効期限時刻を更新（２日延長）する。また、図６に示す参照頻度テーブル１３０［ｔｂｌ１］のＰＫが「２」のレコードの参照回数／２日が「１０」である。従って、有効期限更新部１１０は、有効期限インデックス１２０［ｔｂｌ１］のＰＫが「２」のレコードの有効期限時刻を延長しない。
【００８４】
結果として、有効期限インデックス１２０［ｔｂｌ１］は、図１３に示す状態となる。
【００８５】
更に、有効期限更新部１１０は、図５に示す有効期限インデックス１２０［ｔｂｌ２］の、ＰＫが「ａ」、「ｂ」、「ｃ」及び「ｄ」のデータアイテムについて、その有効期限を更新するか否かを判断する。即ち、有効期限更新部１１０は、図５に示す有効期限インデックス１２０［ｔｂｌ２］の、２０１３／１１／０４  ００：００以前の時刻を示す有効期限を、更新するか否かを判断する。
【００８６】
ここでは、図８に示す有効期限更新ポリシー１４０のテーブルＩＤが「ｔｂｌ２」のレコードの条件は、「参照回数が１箇月で１回以上であれば１箇月延長」である。そして、図７に示す参照頻度テーブル１３０［ｔｂｌ２］のＰＫが「ａ」及び「ｂ」のレコードの参照回数／月が「１」である。従って、有効期限更新部１１０は、有効期限インデックス１２０［ｔｂｌ１］のＰＫが「ａ」及び「ｂ」のレコードの有効期限時刻を更新（１箇月延長）する。また、図７に示す参照頻度テーブル１３０［ｔｂｌ２］のＰＫが「ｃ」及び「ｄ」のレコードの参照回数／月が「０」である。従って、有効期限更新部１１０は、有効期限インデックス１２０［ｔｂｌ１］のＰＫが「ｃ」及び「ｄ」のレコードの有効期限時刻を延長しない。
【００８７】
結果として、有効期限インデックス１２０［ｔｂｌ２］は、図１４に示す状態となる。
【００８８】
次に、データ移動部１５０は、図１３に示す有効期限インデックス１２０［ｔｂｌ１］及び図１４に示す有効期限インデックス１２０「ｔｂｌ２」に基づいて、データアイテムを移動する。同時に、データ移動部１５０は、データアイテムを移動させることに伴って、有効期限インデックス１２０［ｔｂｌ１］及び有効期限インデックス１２０「ｔｂｌ２」を更新する（ステップＳ６２０）。
【００８９】
具体的には、データ移動部１５０は、有効期限を満了している、図１３のＰＫが「２」と図１４のＰＫが「ｃ」及び「ｄ」とのレコードに対応するデータアイテムを移動する。
【００９０】
結果として、ユーザデータ「ｔｂｌ１」及び有効期限インデックス１２０［ｔｂｌ１］は、図１５に示す状態となる。また、ユーザデータ「ｔｂｌ２」及び有効期限インデックス１２０［ｔｂｌ２］は、図１６に示す状態となる。
【００９１】
図１１は、ステップＳ６１０の詳細な動作の一例を示すフローチャートである。
【００９２】
有効期限更新部１１０は、有効期限インデックス１２０の先頭のレコードを取得する（ステップＳ６１１）。
【００９３】
次に、有効期限更新部１１０は、取得したレコードの有効期限時刻と現在時刻とを比較する（ステップＳ６１２）。
【００９４】
その有効期限時刻が現在時刻より先の場合（ステップＳ６１２でＮＯ）、処理は終了する。
【００９５】
その有効期限時刻が現在時刻以前の場合（ステップＳ６１２でＹＥＳ）、有効期限更新部１１０は、その取得したレコードに対応する（同じＰＫを含む）、参照頻度テーブル１３０のレコードの参照回数を取得する（ステップＳ６１３）。
【００９６】
次に、有効期限更新部１１０は、その取得した参照回数が、有効期限更新ポリシー１４０の条件に合致しているか否かを判定する（ステップＳ６１４）。
【００９７】
合致している場合（ステップＳ６１４でＹＥＳ）、有効期限更新部１１０は、有効期限更新ポリシー１４０に基づいて、その有効期限時刻を更新する（ステップＳ６１５）。
【００９８】
合致していない場合（ステップＳ６１４でＮＯ）、処理は、ステップＳ６１６へ進む。
【００９９】
次に、有効期限更新部１１０は、次のレコードがあるか否かを確認する（ステップＳ６１６）。
【０１００】
次のレコードがない場合（ステップＳ６１６でＮＯ）、処理は終了する。
【０１０１】
次のレコードがある場合（ステップＳ６１６でＹＥＳ）、有効期限更新部１１０は、次のレコードを取得する（ステップＳ６１７）。次に、処理はステップＳ６１２へ戻る。
【０１０２】
図１２は、ステップＳ６２０の詳細な動作の一例を示すフローチャートである。
【０１０３】
データ移動部１５０は、有効期限インデックス１２０の先頭のレコードを取得する（ステップＳ６２１）。
【０１０４】
次に、有効期限更新部１１０は、取得したレコードの有効期限時刻と現在時刻とを比較する（ステップＳ６２２）。
【０１０５】
その有効期限時刻が現在時刻より先の場合（ステップＳ６２２でＮＯ）、処理は終了する。
【０１０６】
その有効期限時刻が現在時刻以前の場合（ステップＳ６２２でＹＥＳ）、データ移動部１５０は、その取得したレコードに対応する（同じＰＫを含む）、ユーザデータのレコードのデータアイテムを移動する（ステップＳ６２３）。
【０１０７】
次に、データ移動部１５０は、その取得したレコードを有効期限インデックス１２０から削除する（ステップＳ６２４）。
【０１０８】
次に、データ移動部１５０は、その取得したレコードに対応する（同じＰＫを含む）、参照頻度テーブル１３０のレコードを削除する（ステップＳ６２５）。
【０１０９】
次に、データ移動部１５０は、次のレコードがあるか否かを確認する（ステップＳ６２６）。
【０１１０】
次のレコードがない場合（ステップＳ６２６でＮＯ）、処理は終了する。
【０１１１】
次のレコードがある場合（ステップＳ６２６でＹＥＳ）、有効期限更新部１１０は、次のレコードを取得する（ステップＳ６２７）。次に、処理はステップＳ６２２へ戻る。
【０１１２】
上述した本実施形態における第１の効果は、データの記憶のためのコストを、より削減することが可能になる点である。具体的には、第１の効果は、データアイテムが所属するグループに応じてより好適に、古いデータアイテムが自動的にアーカイブされ、一方で、参照頻度が高いデータアイテムはデータベースシステム４１０に残される点である。
【０１１３】
その理由は、以下のような構成を含むからである。即ち、第１に、有効期限更新部１１０が、データアイテムの参照回数とグループごとの条件を示す有効期限更新ポリシー１４０とに基づいて、データアイテムの有効期限時刻を示す有効期限を更新する。第２に、データ移動部１５０が、その有効期限に基づいて、データアイテムを有効期限満了データアイテムとして移動する。
【０１１４】
上述した本実施形態における第２の効果は、有効期限インデックス１２０の更新時に、ユーザデータ記憶部４３０に負荷をかけないことが可能になる点である。
【０１１５】
その理由は、有効期限インデックス１２０がユーザデータ記憶部４３０とは異なる記憶部７０２及び記憶装置７０３のいずれかに記憶されるからである。
【０１１６】
上述した本実施形態における第３の効果は、移動対象のデータアイテムの検出を高速化し、データの記憶のためのコストを、より削減することが可能になる点である。
【０１１７】
その理由は、以下の構成を含むからである。即ち、第１に、有効期限更新部１１０は、有効期限インデックス１２０を更新する際、有効期限が満了したデータアイテムの有効期限時刻だけを更新の対象とする。従って、有効期限更新部１１０は、ソートされている有効期限インデックス１２０を前方から（昇順に）検索するだけで、更新対象の有効期限時刻を全て確認する。このとき、有効期限時刻が更新されなかったデータアイテムは、結果的に、全て移動対象となる。即ち、有効期限更新部１１０は、有効期限インデックス１２０を、部分的に（有効期限が満了していないデータアイテムを検出するまで）、一回検索するだけで有効期限更新対象及び移動対象のデータアイテムを全て分別する。
【０１１８】
上述した本実施形態における第４の効果は、ユーザデータ記憶部４３０の容量が圧迫されている場合に対応して、より高速にデータアイテムの移動を実行することが可能になる点である。
【０１１９】
その理由は、第３の効果の理由と同じである。
【０１２０】
＜＜＜第２の実施形態＞＞＞
次に、本発明の第２の実施形態について図面を参照して詳細に説明する。以下、本実施形態の説明が不明確にならない範囲で、前述の説明と重複する内容については説明を省略する。
【０１２１】
図１７は、本発明の第２の実施形態に係る情報処理システム４０２の構成を示すブロック図である。
【０１２２】
図１７に示すように、本実施形態における情報処理システム４０２は、データベースシステム４１２、クライアント４５０及び低価格データベース装置４６２を備える。
【０１２３】
＝＝＝データベースシステム４１２＝＝＝
データベースシステム４１２は、第１の実施形態のデータベースシステム４１０と比べて、データベース制御部４２０に替えてデータベース制御部４２２を、情報処理装置１００に替えて情報処理装置２００を含む点が異なる。
【０１２４】
＝＝＝データベース制御部４２２＝＝＝
データベース制御部４２２は、クライアント４５０から参照を要求されたデータアイテムが、ユーザデータ記憶部４３０に存在しない場合、その要求を低価格データベース装置４６２へリダイレクションする。
【０１２５】
＝＝＝低価格データベース装置４６２＝＝＝
低価格データベース装置４６２は、例えば、データベースシステム４１２に比べて、ユーザデータの記憶コストが低いデータベース装置である。
【０１２６】
低価格データベース装置４６２は、データベースシステム４１２からリダイレクションされたその要求に基づいて、データアイテムをクライアント４５０に送信する。
【０１２７】
＝＝＝情報処理装置２００＝＝＝
情報処理装置２００は、第１の実施形態の情報処理装置１００に比べて、データ移動部１５０に替えてデータ移動部２５０を含む点が異なる。
【０１２８】
＝＝＝データ移動部２５０＝＝＝
データ移動部２５０は、有効期限インデックス１２０に基づいて、ユーザデータ記憶部４３０に記憶されているデータアイテムを、有効期限満了データアイテムとして低価格データベース装置４６２へ移動する。その動作は、図２に示すデータ移動部１５０が、有効期限インデックス１２０に基づいて、ユーザデータ記憶部４３０に記憶されているデータアイテムを、有効期限満了データアイテムとしてデータアーカイブ装置４６０へ移動する動作と同様である。
【０１２９】
更に、データ移動部２５０は、有効期限満了データアイテムのそれぞれに対するアクセス数と、復旧ポリシーとに基づいて、その有効期限満了データアイテムを、ユーザデータ記憶部４３０へデータアイテムとして移動（復旧）する。
【０１３０】
データ移動部２５０は、例えば、低価格データベース装置４６２から有効期限満了データアイテムが参照されたことを示す情報を含むアクセスログ８１２を受信する。アクセスログ８１２を受信した場合、データ移動部２５０は、アクセスログ８１２に含まれるＰＫに対応する、復旧用参照頻度テーブルの、レコードの参照回数を更新する。
【０１３１】
また、データ移動部２５０は、一定時間間隔ごとにその参照回数を更新し、最も近い一定期間の参照回数となるようにする。即ち、データ移動部２５０は、ある有効期限満了データアイテムに対する参照が減れば、その有効期限満了データアイテムに対応する参照回数を減少させる。
【０１３２】
復旧ポリシーは、例えば、その有効期限満了データアイテムが所属するグループのそれぞれに対する、一定期間の参照回数の下限値を示す。
【０１３３】
データ移動部２５０は、復旧用参照頻度テーブルの参照回数を復旧ポリシーに含まれる参照回数の下限値と比較する。次に、データ移動部２５０は、復旧用参照頻度テーブルの参照回数がその下限値以上である場合、その有効期限満了データアイテムをユーザデータ記憶部４３０へデータアイテムとして移動（復旧）する。
【０１３４】
具体的には、データ移動部２５０は、例えば、クライアント４５０と同様のプロトコルを用いて、その有効期限満了データアイテムを新たなデータアイテムとしてデータベースシステム４１２へ登録する。同時に、データ移動部２５０は、低価格データベース装置４６２からその有効期限満了データアイテムを削除する。
【０１３５】
上述した本実施形態における第１の効果は、第１の実施形態の効果に加えて、アーカイブ後のデータも参照することが可能になる点である。
【０１３６】
その理由は、以下のような構成を含むからである。即ち、第１にデータ移動部２５０が有効期限満了データアイテムを低価格データベース装置４６２へ移動する。第２に、データベース制御部４２２は、クライアント４５０から参照を要求されたデータアイテムが、ユーザデータ記憶部４３０に存在しない場合、その要求を低価格データベース装置４６２へリダイレクションする。
【０１３７】
上述した本実施形態における第２の効果は、データアイテムを参照される頻度により好適に、データベースシステム４１２または低価格データベース装置４６２に保持することが可能になる点である。
【０１３８】
その理由は、データ移動部２５０が、有効期限満了データアイテムのそれぞれに対するアクセス数と、復旧ポリシーとに基づいて、その有効期限満了データアイテムを、ユーザデータ記憶部４３０へデータアイテムとして移動するからである。
【０１３９】
以上の各実施形態で説明した各構成要素は、必ずしも個々に独立した存在である必要はない。例えば、複数個の任意のその構成要素が１個のモジュールとして実現されてよい。また、その構成要素の内の任意のひとつが複数のモジュールで実現されてもよい。また、その構成要素の内の任意のひとつがその構成要素の内の任意の他のひとつであってよい。また、その構成要素の内の任意のひとつの一部と、その構成要素の内の任意の他のひとつの一部とが重複してもよい。
【０１４０】
以上説明した各実施形態における各構成要素及び各構成要素を実現するモジュールは、必要に応じ、可能であれば、ハードウェア的に実現されてよい。また、各構成要素及び各構成要素を実現するモジュールは、コンピュータ及びプログラムで実現されてよい。また、各構成要素及び各構成要素を実現するモジュールは、ハードウェア的なモジュールとコンピュータ及びプログラムとの混在により実現されてもよい。
【０１４１】
そのプログラムは、例えば、磁気ディスクや半導体メモリなど、コンピュータが読み取り可能な非一時的記録媒体に記録され、コンピュータに提供される。そして、そのプログラムは、コンピュータの立ち上げ時などに、非一時的記録媒体からコンピュータに読み取られる。この読み取られたプログラムは、そのコンピュータの動作を制御することにより、そのコンピュータを前述した各実施形態における構成要素として機能させる。
【０１４２】
また、以上説明した各実施形態では、複数の動作をフローチャートの形式で順番に記載してあるが、その記載の順番は複数の動作を実行する順番を限定するものではない。このため、各実施形態を実施するときには、その複数の動作の順番は内容的に支障のない範囲で変更することができる。
【０１４３】
更に、以上説明した各実施形態では、複数の動作は個々に相違するタイミングで実行されることに限定されない。例えば、ある動作の実行中に他の動作が発生してよい。また、ある動作と他の動作との実行タイミングが部分的に乃至全部において重複してもよい。
【０１４４】
更に、以上説明した各実施形態では、ある動作が他の動作の契機になるように記載しているが、その記載はある動作と他の動作との全ての関係を限定するものではない。このため、各実施形態を実施するときには、その複数の動作の関係は内容的に支障のない範囲で変更することができる。また各構成要素の各動作の具体的な記載は、各構成要素の各動作を限定するものではない。このため、各構成要素の具体的な各動作は、各実施形態を実施する上で機能的、性能的、その他の特性に対して支障を来さない範囲内で変更されてよい。
【０１４５】
以上、各実施形態を参照して本発明を説明したが、本発明は上記実施形態に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解しえるさまざまな変更をすることができる。
【符号の説明】
【０１４６】
１００    情報処理装置
１１０    有効期限更新部
１２０    有効期限インデックス
１３０    参照頻度テーブル
１４０    有効期限更新ポリシー
１５０    データ移動部
２００    情報処理装置
２５０    データ移動部
４００    情報処理システム
４０２    情報処理システム
４１０    データベースシステム
４１２    データベースシステム
４２０    データベース制御部
４２２    データベース制御部
４３０    ユーザデータ記憶部
４５０    クライアント
４６０    データアーカイブ装置
４６２    低価格データベース装置
７００    コンピュータ
７０１    ＣＰＵ
７０２    記憶部
７０３    記憶装置
７０４    入力部
７０５    出力部
７０６    通信部
７０７    記録媒体
８１０    アクセスログ
８１２    アクセスログ
【図１】
2015172862.tif 000003
【図２】
2015172862.tif 000004
【図３】
2015172862.tif 000005
【図４】
2015172862.tif 000006
【図５】
2015172862.tif 000007
【図６】
2015172862.tif 000008
【図７】
2015172862.tif 000009
【図８】
2015172862.tif 000010
【図９】
2015172862.tif 000011
【図１０】
2015172862.tif 000012
【図１１】
2015172862.tif 000013
【図１２】
2015172862.tif 000014
【図１３】
2015172862.tif 000015
【図１４】
2015172862.tif 000016
【図１５】
2015172862.tif 000017
【図１６】
2015172862.tif 000018
【図１７】
2015172862.tif 000019