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

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

▶ 株式会社大和総研ビジネス・イノベーションの特許一覧

特許5778200情報処理装置、情報処理システム、情報処理方法、及び情報処理プログラム
<>
  • 特許5778200-情報処理装置、情報処理システム、情報処理方法、及び情報処理プログラム 図000002
  • 特許5778200-情報処理装置、情報処理システム、情報処理方法、及び情報処理プログラム 図000003
  • 特許5778200-情報処理装置、情報処理システム、情報処理方法、及び情報処理プログラム 図000004
  • 特許5778200-情報処理装置、情報処理システム、情報処理方法、及び情報処理プログラム 図000005
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】5778200
(24)【登録日】2015年7月17日
(45)【発行日】2015年9月16日
(54)【発明の名称】情報処理装置、情報処理システム、情報処理方法、及び情報処理プログラム
(51)【国際特許分類】
   G06F 9/48 20060101AFI20150827BHJP
【FI】
   G06F9/46 452A
【請求項の数】10
【全頁数】15
(21)【出願番号】特願2013-39326(P2013-39326)
(22)【出願日】2013年2月28日
(65)【公開番号】特開2014-167714(P2014-167714A)
(43)【公開日】2014年9月11日
【審査請求日】2013年9月17日
(73)【特許権者】
【識別番号】309006372
【氏名又は名称】株式会社大和総研ビジネス・イノベーション
(74)【代理人】
【識別番号】100100549
【弁理士】
【氏名又は名称】川口 嘉之
(74)【代理人】
【識別番号】100113608
【弁理士】
【氏名又は名称】平川 明
(74)【代理人】
【識別番号】100145838
【弁理士】
【氏名又は名称】畑添 隆人
(72)【発明者】
【氏名】高野 大樹
【審査官】 田中 幸雄
(56)【参考文献】
【文献】 特開2003−288224(JP,A)
【文献】 特表2009−541848(JP,A)
【文献】 特開2011−118794(JP,A)
【文献】 特開2012−150711(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 9/48
(57)【特許請求の範囲】
【請求項1】
実行開始後完了するまで停止することが禁止されている処理を、記憶装置に格納されるデータ群が所定時間内に処理可能なデータ量よりも小さい所定の単位で分けられた1単位のデータごとに実行する処理実行部と、
該処理が終了した1又は複数の単位のそれぞれの処理実績時間を格納手段に蓄積する蓄積部と、
次の処理対象の単位の処理に掛る予測時間を前記格納手段に蓄積されている過去の処理実績時間に基づいて取得する取得部と、
前記予測時間に基づいて、前記次の処理対象の単位の処理が前記所定時間内に終了するか否かを判定し、前記次の処理対象の単位の処理が前記所定時間内に終了すると判定した場合に、前記次の処理対象の単位の処理の実行を決定し、前記次の処理対象の単位の処理が前記所定時間内に終了しないことを判定した場合に、前記データ群に対する処理の終了を決定する判定部と、
を備える情報処理装置。
【請求項2】
前記取得部は、所定の範囲外である前記処理実績時間を、前記予測時間の算出に用いない、
請求項1に記載の情報処理装置。
【請求項3】
所定の条件が満たされた場合に、前記取得部及び前記判定部は、起動する、
請求項1又は2に記載の情報処理装置。
【請求項4】
記憶装置に格納されるデータ群に対して実行され、該データ群を所定の単位で分けた1単位のデータごとに実行される処理において、該処理が終了した1又は複数の単位のそれぞれの処理実績時間を格納手段に蓄積する蓄積部と、
次の処理対象の単位の処理に掛る予測時間を前記格納手段に蓄積されている過去の処理実績時間に基づいて取得する取得部と、
前記予測時間に基づいて、前記次の処理対象の単位の処理が所定時間内に終了するか否かを判定し、前記次の処理対象の単位の処理が前記所定時間内に終了すると判定した場合に、前記次の処理対象の単位の処理の実行を決定し、前記次の処理対象の単位の処理が前記所定時間内に終了しないことを判定した場合に、前記データ群に対する処理の終了を決
定する判定部と、
を備え、
所定の条件が満たされるまで、
前記取得部及び前記判定部は、次の処理対象の所定数の単位について、それぞれ、前記予測時間の取得及び前記判定を繰り返し行い、
前記所定の条件が満たされた場合に、
前記取得部及び前記判定部は、次の処理対象の1単位について、それぞれ、前記予測時間の取得及び前記判定を繰り返し行い、前記判定部は、前記判定において、前記次の処理対象の1単位の処理が前記所定時間内に終了すると判定した場合に、前記次の処理対象の1単位の処理の実行を決定し、前記次の処理対象の1単位の処理が前記所定時間内に終了しないことを判定した場合に、前記データ群に対する処理の終了を決定する
報処理装置。
【請求項5】
前記所定の条件は、前記処理が終了した単位の数が閾値に達することである、
請求項3又は4に記載の情報処理装置。
【請求項6】
前記所定の条件は、前記所定時間の残り時間が所定閾値未満になることである、
請求項3又は4に記載の情報処理装置。
【請求項7】
記憶装置に格納されるデータ群に対して実行され、該データ群を所定の単位で分けた1単位のデータごとに実行される処理において、該処理が終了した1又は複数の単位のそれぞれの処理実績時間を格納手段に蓄積する蓄積部と、
次の処理対象の単位の処理に掛る予測時間を前記格納手段に蓄積されている過去の処理実績時間に基づいて取得する取得部と、
前記予測時間に基づいて、前記次の処理対象の単位の処理が所定時間内に終了するか否かを判定し、前記次の処理対象の単位の処理が前記所定時間内に終了すると判定した場合に、前記次の処理対象の単位の処理の実行を決定し、前記次の処理対象の単位の処理が前記所定時間内に終了しないことを判定した場合に、前記データ群に対する処理の終了を決定する判定部と、
を備え、
前記取得部及び前記判定部は、次の処理対象の所定数の単位について、それぞれ、前記予測時間の取得及び前記判定を繰り返し行い、
前記次の処理対象の所定数の単位の処理が前記所定時間内に終了しないことが判定された場合には、前記取得部及び前記判定部は、前記処理対象の単位の処理の実行が判定されるまで、又は、前記所定数が1になるまで、前記所定数を1ずつ減らして、それぞれ、前記予測時間の取得及び前記判定を行う
報処理装置。
【請求項8】
実行開始後完了するまで停止することが禁止されている処理を、記憶装置に格納されるデータ群が所定時間内に処理可能なデータ量よりも少ない所定の単位で分けられた1単位のデータごとに実行する処理実行部と、
該処理が終了した1又は複数の単位のそれぞれの処理実績時間を格納手段に蓄積する蓄積部と、
次の処理対象の単位の処理に掛る予測時間を前記格納手段に蓄積されている過去の処理実績時間に基づいて取得する取得部と、
前記予測時間に基づいて、前記次の処理対象の単位の処理が前記所定時間内に終了するか否かを判定し、前記次の処理対象の単位の処理が前記所定時間内に終了すると判定した場合に、前記次の処理対象の単位の処理の実行を決定し、前記次の処理対象の単位の処理が前記所定時間内に終了しないことを判定した場合に、前記データ群に対する処理の終了を決定する判定部と、
を備える情報処理システム。
【請求項9】
コンピュータが、
実行開始後完了するまで停止することが禁止されている処理を、記憶装置に格納されるデータ群が所定時間内に処理可能なデータ量よりも小さい所定の単位で分けられた1単位のデータごとに実行する処理実行ステップと、
該処理が終了した1又は複数の単位のそれぞれの処理実績時間を格納手段に蓄積する蓄積ステップと、
次の処理対象の単位の処理に掛る予測時間を前記格納手段に蓄積されている過去の処理実績時間に基づいて取得する取得ステップと、
前記予測時間に基づいて、前記次の処理対象の単位の処理が前記所定時間内に終了するか否かを判定し、前記次の処理対象の単位の処理が前記所定時間内に終了すると判定した場合に、前記次の処理対象の単位の処理の実行を決定し、前記次の処理対象の単位の処理が前記所定時間内に終了しないことを判定した場合に、前記データ群に対する処理の終了を決定する判定ステップと、
を実行する情報処理方法。
【請求項10】
コンピュータに、
実行開始後完了するまで停止することが禁止されている処理を、記憶装置に格納されるデータ群が所定時間内に処理可能なデータ量よりも小さい所定の単位で分けられた1単位のデータごとに実行する処理実行部と、
該処理が終了した1又は複数の単位のそれぞれの処理実績時間を格納手段に蓄積する蓄積ステップと、
次の処理対象の単位の処理に掛る予測時間を前記格納手段に蓄積されている過去の処理実績時間に基づいて取得する取得ステップと、
前記予測時間に基づいて、前記次の処理対象の単位の処理が前記所定時間内に終了するか否かを判定し、前記次の処理対象の単位の処理が前記所定時間内に終了すると判定した場合に、前記次の処理対象の単位の処理の実行を決定し、前記次の処理対象の単位の処理が前記所定時間内に終了しないことを判定した場合に、前記データ群に対する処理の終了を決定する判定ステップと、
を実行させるための情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、データ管理を行うための情報処理装置、情報処理システム、情報処理方法、及び情報処理プログラムに関する。
【背景技術】
【0002】
データベース及びデータセンタでは、例えば、所定の周期で、不要となったデータを削除するハウスキープ処理が実行される。ハウスキープ処理が行われないと、膨大なデータが記憶手段を逼迫し、システム全体のパフォーマンスが低下するおそれがある。
【0003】
ハウスキープ処理は、途中で停止するとデータベース内が不整合な状態となるおそれがあるため、一旦開始した後は途中で停止することができない。また、ハウスキープ処理の実行によって、システム内の他の処理に影響を与えるおそれがあるため、例えば、業務時間帯等を避けて、予め実行可能な期間が指定されることが多い。
【0004】
上記のようなハウスキープ処理の特性のため、従来、ハウスキープ処理では、予め指定された期間内に処理が終了するように、処理完了までに要する時間を予測して、1回のハウスキープ処理で処理可能なデータ量を算出して、膨大な量のデータの中からハウスキープ処理の対象となるデータが抽出されていた。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2012−150711号公報
【特許文献2】特開平11−53227号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、従来からの方法では、以下のような問題があった。例えば、並行して稼働している業務処理量が多い場合には、ハウスキープ処理に割り当てられるシステムのリソースが少なくなるため、ハウスキープ処理に掛る時間が長くなる。その結果、指定された期間が過ぎてもハウスキープ処理が稼動し続けてしまい、他の処理に影響を与えてしまうことがある。又は、処理対象データ量が多い場合にも、指定された期間が過ぎてもハウスキープ処理が稼動し続けてしまうことがある。
【0007】
指定された期間が過ぎてもハウスキープ処理が稼動し続ける場合には、例えば、処理を強制終了させるコマンドオペレーションの実行や、該強制終了によるデータベースの不整合状態の回復作業等、人的オペレーションによる対応が行われる。
【0008】
また、例えば、並行して稼働している業務処理量が少ない場合や、処理対象データ量が少ない場合には、ハウスキープ処理が終了しても指定された期間までの時間が余ることがある。しかしながら、1回で処理されるデータ量は予め決められており、時間が余ったとしても、それ以上のデータを処理することができなかった。また、ハウスキープ処理によってデータベースの記憶容量を空けたいにもかかわらず、指定された期間を有効に使用することができなかった。
【0009】
本発明は、上記した問題に鑑み、処理に与えられた時間を有効に使用可能な情報処理装置、情報処理システム、情報処理方法及び情報処理プログラムを提供することを課題とす
る。
【課題を解決するための手段】
【0010】
本発明の態様の一つは、記憶装置に格納されるデータ群に対して実行され、該データ群を所定の単位で分けた1単位のデータごとに実行される処理において、該処理が終了した1又は複数の単位のそれぞれの処理実績時間を格納手段に蓄積する蓄積部と、次の処理対象の単位の処理に掛る予測時間を格納手段に蓄積されている過去の処理実績時間に基づいて取得する取得部と、予測時間に基づいて、次の処理対象の単位の処理が所定時間内に終了するか否かを判定し、次の処理対象の単位の処理が所定時間内に終了すると判定した場合に、次の処理対象の単位の処理の実行を決定し、次の処理対象の単位の処理が所定時間内に終了しないことを判定した場合に、データ群に対する処理の終了を決定する判定部と、を備える情報処理装置である。
【0011】
本発明の態様の一つによれば、処理に与えられた所定時間を超えて、データ群に対する処理は実行されず、また、データ群に対する処理が終了した時点での所定時間の剰余も1単位に要する時間未満に抑えられるため、処理に与えられた時間を有効に使用することができる。また、処理実績時間には、該処理実行時の並行稼動の業務処理量の影響が反映されるため、過去の処理実績時間に基づいて、次の単位の処理に掛る予測時間を算出することによって、現状の並行稼動の業務処理量が考慮されるので、次の単位の処理に掛る予測時間をより精度良く算出することができる。
【0012】
本発明の態様の一つにおいて、情報処理装置の取得部は、所定の範囲外である前記処理実績時間を、前記予測時間の算出に用いないようにしてもよい。これによって、次の単位の処理に掛る予測時間の算出に用いられる、格納手段に蓄積された処理実績時間が所定の範囲内に収まり、次の単位の処理に掛る予測時間をより精度良く算出することができる。
【0013】
本発明の態様の一つの情報処理装置において、所定の条件が満たされた場合に、取得部及び判定部は、起動するようにしてもよい。又は、該所定の条件が満たされるまで、取得部及び判定部は、次の処理対象の所定数の単位について、それぞれ、予測時間の取得及び前記判定を繰り返し行い、所定の条件が満たされた場合に、取得部及び判定部は、次の処理対象の1単位について、それぞれ、予測時間の取得及び前記判定を繰り返し行い、判定部は、前記判定において、次の処理対象の1単位の処理が所定時間内に終了すると判定した場合に、次の処理対象の1単位の処理の実行を決定し、次の処理対象の1単位の処理が所定時間内に終了しないことを判定した場合に、データ群に対する処理の終了を決定するようにしてもよい。所定の条件は、例えば、処理が終了した単位の数が閾値に達することである。又は、所定の条件は、所定時間の残り時間が所定閾値未満になることである。これによって、データ群に対する処理において、取得部及び判定部の処理の回数が減り、情報処理装置の負荷を抑えることができる。
【0014】
本発明の態様の一つの情報処理装置において、取得部及び判定部は、次の処理対象の所定数の単位について、それぞれ、予測時間の取得及び前記判定を繰り返し行い、次の処理対象の所定数の単位の処理が所定時間内に終了しないことが判定された場合には、取得部及び判定部は、次の処理対象の単位の処理の実行が判定されるまで、又は、所定数が1になるまで、所定数を1ずつ減らして、予測時間の取得及び前記判定を行うようにしてもよい。これによって、データ群に対する処理において、取得部及び判定部の処理の回数が減り、情報処理装置の負荷を抑えることができる。
【0015】
更に、本発明は、態様の一つとして、システム、方法、装置、又はプログラムとしても把握することが可能である。また、本発明の態様の一つは、上述のプログラムをコンピュータその他の装置、機械等が読み取り可能な記録媒体に記録したものでもよい。ここで、
コンピュータ等が読み取り可能な記録媒体とは、データやプログラム等の情報を電気的、磁気的、光学的、機械的、又は化学的作用によって蓄積し、コンピュータ等から読み取ることができる記録媒体をいう。
【発明の効果】
【0016】
本発明によれば、処理に与えられた時間を有効に使用することができる。
【図面の簡単な説明】
【0017】
図1】実施形態に係るデータ管理システムの構成例を示す図である。
図2】実施形態に係る情報処理装置のハードウェア構成例を示す図である。
図3】実施形態に係る情報処理装置の機能ブロック図の一例である。
図4】実施形態に係る情報処理装置のハウスキープ処理のフローチャートの一例である。
【発明を実施するための形態】
【0018】
以下、図面に基づいて、本発明の実施の形態を説明する。以下の実施形態の構成は例示であり、本発明は実施形態の構成に限定されない。
【0019】
<実施形態>
図1は、実施形態に係るデータ管理システムの構成例を示す図である。データ管理システム100は、データベース2と、データベース2のハウスキープ処理を行う情報処理装置1とを含む。情報処理装置1とデータベース2とは、例えば、LAN(Local Area Network)によって接続されている。データ管理システム100において、情報処理装置1がハウスキープ処理を実行可能な時間帯である稼動許可時間帯は、予め設定されている。稼動許可時間帯は、例えば、データ管理システム100を利用する企業ユーザの業務外の時間帯等に設定される。
【0020】
データベース2には、過去十数年にわたる膨大な量のデータが格納されている。データベース2に格納されるデータは、複数のレコードを含んでいる。各レコードには、例えば、作成された日時、シーケンス番号等が記録されている。
【0021】
情報処理装置1は、このデータベース2に格納される膨大な量のデータに対して、所定の単位毎にハウスキープ処理を実行する。所定の単位は、例えば、一日、一週間、ひと月、等のレコードを作成日時で区切る時間的単位であってもよいし、シーケンス番号による区切り、レコード数、等のデータ量に基づく単位であってもよい。
【0022】
所定の単位は、例えば、データを生成するアプリケーションの特性(例えば、一日当たり生成するデータ量等)、ハウスキープ処理を実行する処理の性能、稼動許可時間帯の長さ、稼動許可時間帯における並行処理の量、等に基づいて、データ管理システム100の管理者によって決定される。
【0023】
図1に示される例では、情報処理装置1は、1単位を一日に生成されたレコードととして取り扱う。情報処理装置1は、稼動許可時間帯において、データベース2に格納されるデータを日単位で古いものから順に削除する。
【0024】
情報処理装置1は、1単位のデータの削除処理が終了すると、次の処理対象の1単位のデータの削除処理に掛る予測処理時間を算出し、次の処理対象の1単位のデータの削除処理が稼動許可時間帯内に終了するか否かを判定する。情報処理装置1は、次の処理対象の1単位のデータの削除処理が稼動許可時間帯内に終了すると判定した場合には、次の処理対象の1単位のデータの削除処理の実行を決定する。一方、次の処理対象の1単位のデー
タの削除処理が稼動許可時間帯内に終了しないと判定した場合には、次の処理対象の1単位以降のデータの削除処理を終了する。
【0025】
これによって、稼動許可時間帯の剰余は、1単位のデータの削除処理に掛る時間よりも少なくなり、稼動許可時間帯を有効に使用することができる。
【0026】
データの単位は、小さすぎても情報処理装置1に係る処理負荷を増加させてしまい、大きすぎても、稼動許可時間帯の剰余を大きくしてしまう可能性があるため、稼動許可時間帯、情報処理装置1の性能、並行稼動処理の量、等の関係から適正に決定される。例えば、稼動許可時間帯が数時間の長さであるならば、1単位のデータの削除が数分で済むように、単位が決定されることが好ましい。1単位のデータの削除が数分で済むように1単位が決定される場合には、稼動許可時間帯の剰余が数分で済み、稼動許可時間帯をできるだけ使ってデータの削除を行うことができる。
【0027】
以降、「削除処理」は、1単位のデータに対する削除処理を示すこととする。また、「ハウスキープ処理」は、稼動許可時間帯内に行われるデータベース2に対する削除処理全体を示すこととする。また、次の処理対象の1単位のデータは、単に、「次の単位のデータ」と称する。
【0028】
<情報処理装置の構成>
図2は、実施形態に係る情報処理装置1のハードウェア構成例を示す図である。情報処理装置1は、例えば、サーバ等の特定用途専用のコンピュータ、パーソナルコンピュータ等の汎用のコンピュータである。情報処理装置1は、CPU(Central Processing Unit
)101、主記憶装置102、入力装置103、出力装置104、補助記憶装置105、可搬記録媒体駆動装置106、ネットワークインタフェース107を備える。また、これらはバス109により互いに接続されている。
【0029】
入力装置103は、例えば、タッチパッド、マウス、タッチパネル等のポインティングデバイス、キーボード等である。入力装置103から入力されたデータは、CPU 101に出力される。
【0030】
主記憶装置102は、CPU 101に、補助記憶装置105に格納されているプログラムをロードする記憶領域および作業領域を提供したり、バッファとして用いられたり、一部のプログラムやデータを格納したりする。主記憶装置102は、例えば、RAM(Random Access Memory)、ROM(Read Only Memory)のような半導体メモリを含む。
【0031】
補助記憶装置105は、様々なプログラムや、各プログラムの実行に際してCPU 101が使用するデータを格納する。補助記憶装置105は、例えば、EPROM(Erasable Programmable ROM)、又はハードディスクドライブ(Hard Disc Drive)等の不揮発性のメモリである。補助記憶装置105は、例えば、オペレーティングシステム(OS)、データ管理プログラム、その他様々なアプリケーションプログラムを保持する。補助記憶装置105には、情報処理装置100に内蔵されているものに加え、外部接続されるものも含まれる。データ管理プログラムは、情報処理装置1に稼動許可時間帯におけるハウスキープ処理を実行させるためのプログラムである。
【0032】
可搬記録媒体駆動装置106は、可搬記録媒体200に記録されるプログラムや各種データを読出し、CPU 101に出力する。可搬記録媒体200は、例えば、SDカード、miniSDカード、microSDカード、USB(Universal Serial Bus)フラッシュメモリ、CD(Compact Disc)、DVD(Digital Versatile Disk)、Blu−ray
Disc又はフラッシュメモリカードのような記録媒体である
【0033】
ネットワークインタフェース107は、ネットワークとの情報の入出力を行うインタフェースである。ネットワークインタフェース107は、有線のネットワーク、および、無線のネットワークと接続する。ネットワークインタフェース107は、例えば、NIC(Network Interface Card)、無線LAN(Local Area Network)カード等である。ネットワークインタフェース107で受信されたデータ等は、CPU 101に出力される。
【0034】
CPU 101は、補助記憶装置105又は可搬記録媒体に保持されたOSや様々なアプリケーションプログラムを主記憶装置102にロードして実行することによって、様々な処理を実行する。CPU 101は、一つであってもよいし、複数であってもよい。
【0035】
出力装置104は、CPU 101の処理の結果を出力する。出力装置104は、表示装置、音声出力装置等を含む。
【0036】
なお、情報処理装置1のハードウェア構成は、適宜変更(置換、追加、削除)可能である。例えば、情報処理装置1は、入力装置103や出力装置104を含まなくてもよい。
【0037】
図3は、実施形態に係る情報処理装置1の機能ブロック図の一例である。情報処理装置1は、例えば、CPU 101が補助記憶装置105に格納されるデータ管理プログラムを実行することによって、制御部11、時刻取得部12、予測時間算出部13、判定部14、ファイル管理部15、処理実行部16として動作する。
【0038】
制御部11は、ハウスキープ処理の制御を行う。より具体的には、制御部11は、時刻取得部12、予測時間算出部13、判定部14、ファイル管理部15、処理実行部16に指示をし、それぞれが担当する処理を実行させる。
【0039】
時刻取得部12は、制御部11からの指示を受けて、例えば、情報処理装置1の内部時計(図示せず)又はネットワークから時刻を取得する。
【0040】
予測時間算出部13は、制御部11からの指示を受けて、次の処理対象の単位のデータの削除処理に係る予測時間(処理予測時間)を算出する。算出された処理予測時間は、制御部11に通知される。処理予測時間の算出は、例えば、以下の通りである。
【0041】
予測時間算出部13は、後述の処理時間ファイル17に格納される、削除処理が終了した各単位のデータの処理時間に基づいて取得される実績時間に安全係数を乗じて、次の単位のデータの処理予測時間を算出する。実績時間は、例えば、処理時間ファイル17に格納される各単位のデータの処理時間の平均値である。これに限られず、実績時間は、処理時間ファイル17に格納される内で最新の1単位のデータの処理時間であってもよいし、処理時間ファイル17に格納される各単位のデータの処理時間の重み付け平均値であってもよい。
【0042】
データの単位を日単位にした場合、日によってデータ量にばらつきがでたり、データ管理システム100内の並行稼動処理の量も刻々と変化したりする。安全係数は、これらの変動を吸収し、実際の処理時間が予測時間を超えないようにするための係数である。実際の処理時間が予測時間を超えてしまうと、稼動許可時間帯を過ぎても削除処理が実行されてしまうおそれがあるためである。安全係数は、例えば、120%である。
【0043】
判定部14は、制御部11からの指示を受けて、次の単位のデータの削除処理の実行の可否を決定する。制御部11からは、時刻取得部12によって取得された現在の時刻と、予測時間算出部13によって算出された次の単位のデータの処理予測時間とが判定部14
に通知される。
【0044】
判定部14は、まず、現在時刻に、次の単位のデータの処理予測時間を加算し、次の単位のデータの削除処理の終了予測時刻を取得する。判定部14は、取得した終了予測時刻と、後述の稼動許可時間帯定義ファイル18に格納される稼動許可時間帯とを比較し、終了予測時刻が稼動許可時間帯に含まれるか否かを判定する。
【0045】
次の単位のデータの削除処理の終了予測時刻が稼動許可時間帯に含まれる場合には、次の単位のデータの削除処理が稼動許可時間帯内に終了することが予測されるため、判定部14は、次の単位のデータの削除処理の実行を判定する。次の単位のデータの削除処理の終了予測時刻が稼動許可時間帯に含まれない場合には、次の単位のデータの削除処理が稼動許可時間帯内に終了しないことが予測されるため、判定部14は、次の単位のデータの削除処理の不実行とともに、ハウスキープ処理の終了を判定する。次の単位のデータの削除処理の実行の可否は、制御部11に通知される。
【0046】
処理実行部16は、制御部11からの指示を受けて、指示された単位に対する削除処理を実行する。処理実行部16は、1単位のデータの削除処理に掛る処理時間を計測し、該1単位のデータの削除処理が終了すると、制御部11に該1単位のデータの削除処理の終了とともに該処理時間を通知する。
【0047】
ファイル管理部15は、1単位のデータの削除処理が終了するたびに、制御部11からの指示を受けて、処理時間ファイル17に、1単位のデータの削除処理に掛った処理時間を記録する。処理時間は、処理実行部16によって計測され、制御部11によってファイル管理部15に通知される。ただし、このとき、異常な値を示す処理時間は排除される。
【0048】
異常な値を示す処理時間を排除するために、本実施形態では、第1の閾値と第2の閾値とが用いられる。第1の閾値<第2の閾値である。
【0049】
第1の閾値は、データベース2へのアクセスの可否判定を行うための閾値である。第1の閾値は、例えば、5秒である。処理時間が第1の閾値以下である場合には、データベース2へのアクセスができていないことが示される。したがって、ファイル管理部15は、処理時間が第1の閾値以下である場合には、データベース2へのアクセス不可を制御部11に通知し、制御部11は、この通知を受けるとハウスキープ処理を終了する。
【0050】
第2の閾値は、削除対象の単位に含まれるレコードの存在の有無を判定するための閾値である。第2の閾値は、例えば、1分である。処理時間が第1の閾値より長く、且つ、第2の閾値以下である場合には、データベース2へのアクセスはできているものの、削除対象のレコードが存在していないことが示される。したがって、ファイル管理部15は、処理時間が第1の閾値より長く、且つ、第2の閾値以下である場合には、該処理時間を処理時間ファイル17に記録せず、その旨を制御部11に通知する。制御部11は、この通知を受けて、次の単位のデータの削除処理の処理予測時間の算出に処理を移行させる。
【0051】
処理時間が、第2の閾値よりも長い場合には、ファイル管理部15は、処理時間ファイル17に該処理時間を書き込む。制御部11は、ハウスキープ処理が終了する場合に、ファイル管理部15に処理時間ファイル17のクリアを指示し、ファイル管理部15は、この指示を受けて、処理時間ファイル17をクリアする。
【0052】
次に、情報処理装置1が保持する情報について説明する。情報処理装置1は、処理時間ファイル17と稼動許可時間帯定義ファイル18とを有する。
【0053】
処理時間ファイル17には、ファイル管理部15によって、1単位のデータの削除処理に掛った処理時間が、削除処理が完了した各単位について、記録及び蓄積される。処理時間ファイル17は、例えば、データ管理プログラムの起動時に主記憶装置102の記憶領域に作成され、データ管理プログラムの終了とともにクリアされる。
【0054】
稼動許可時間帯定義ファイル18には、稼動許可時間帯の開始時刻と終了時刻とが格納される。稼動許可時間帯は、データ管理システム100の管理者によって入力される。稼動許可時間帯定義ファイル18は、例えば、補助記憶装置105に格納されており、データ管理プログラムの実行時に主記憶装置102の記憶領域に読み出される。
【0055】
<処理の流れ>
図4は、実施形態に係る情報処理装置1のハウスキープ処理のフローチャートの一例である。図4に示されるフローチャートは、稼動許可時間帯の開始時刻になると開始される。
【0056】
OP1では、制御部11は、変数Nを初期値の1に設定する。変数Nは、削除処理の実行回数を示す。変数Nは、正の整数である。なお、本実施形態では、1回の削除処理で1単位のデータが削除されるので、削除処理の実行回数=削除された単位数であり、変数Nは、削除された単位数も示すこととなる。
【0057】
OP2では、制御部11は、処理実行部16に対して、処理対象の単位の削除処理を指示する。この指示を受けて、処理実行部16は、処理対象の単位の削除処理を行う。なお、1回目の処理対象の単位は、例えば、データベース2内で最も古いデータを含む単位である。
【0058】
削除処理が終了すると、制御部11に、処理実行部16からN回目の処理時間が通知される。制御部11は、N回目の処理時間をファイル管理部15に通知する。
【0059】
OP3、OP4では、N回目の処理時間の記録の可否が判定される。OP3では、ファイル管理部15は、N回目の処理時間が第1の閾値より長いか否かを判定する。N回目の処理時間が第1の閾値よりも長い場合には(OP3:YES)、処理がOP4に進む。N回目の処理時間が第1の閾値未満である場合には(OP3:NO)、データベース2にアクセスできない、すなわち、ハウスキープ処理が継続できないことが示され、ファイル管理部15は、制御部11にデータベース2へのアクセス不可を通知する。この通知を受けて、制御部11は、ハウスキープ処理を終了させ、図4に示される処理が終了する。
【0060】
OP4では、ファイル管理部15は、N回目の処理時間が第2の閾値より長いか否かを判定する。N回目の処理時間が第2の閾値よりも長い場合には(OP4:YES)、処理がOP5に進み、OP5では、ファイル管理部15は、N回目の処理時間を処理時間ファイル17に記録する。次に、処理がOP6に進む。
【0061】
N回目の処理時間が第2の閾値未満である場合には(OP4:NO)、削除対象の単位のデータが存在しないことが示される。ファイル管理部15は、制御部11にN回目の削除処理の実行不可を通知し、制御部11は、N回目の処理時間を記録なしに、次の単位の処理、すなわち、OP6に処理を進める。
【0062】
OP6−OP8では、N+1回目の削除処理の実行の可否が判定される。OP6では、制御部11は、次の単位のデータの削除処理、すなわち、N+1回目の削除処理に掛る処理予測時間の算出を、予測時間算出部13に指示する。予測時間算出部13は、処理時間ファイル17に格納される処理時間を読み出し、1単位のデータの削除処理の実績時間を
算出して、該実績時間に安全係数を乗じて処理予測時間を算出する。予測時間算出部13は、算出したN+1回目の処理予測時間を制御部11に通知する。次にOP7に処理が進む。なお、OP6において、処理時間ファイル17に処理時間の記録が無い場合には、予め保持される標準処理時間が用いられてもよい。
【0063】
OP7では、制御部11は、時刻取得部12から現在時刻を取得し、現在時刻と予測処理時間とをN+1回目の削除処理の実行の可否判定の指示とともに判定部14に通知する。判定部14は、現在時刻にN+1回目の削除処理の処理予測時間を加算して、N+1回目の削除処理の終了予測時刻を算出する。次に処理がOP8に進む。
【0064】
OP8では、判定部14は、稼動許可時間帯定義ファイル18から稼動許可時間帯を読み出し、N+1回目の削除処理の終了予測時刻が稼動許可時間帯に含まれるか否かを判定する。N+1回目の削除処理の終了予測時刻が稼動許可時間帯に含まれる場合には(OP8:YES)、判定部14は、N+1回目の削除処理が実行されることを判定する。判定部14は、N+1回目の削除処理の実行を制御部11に通知する。その後、処理がOP9に進む。
【0065】
N+1回目の削除処理の終了予測時刻が稼動許可時間帯に含まれない場合には(OP8:NO)、判定部14は、N+1回目の削除処理の不実行を制御部11に通知する。制御部11は、N+1回目の削除処理の不実行の通知を受けて、ハウスキープ処理を終了する。制御部11は、ファイル管理部15に処理時間ファイル17のクリアを指示し、ファイル管理部15は、処理時間ファイル17をクリアする。その後、図4に示される処理が終了する。
【0066】
OP9では、N+1回目の削除処理の実行の通知を受けて、制御部11は、変数Nに1を加算する。その後、OP2からOP9の処理が繰り返し実行される。
【0067】
<実施形態の作用効果>
図4に示されるフローチャートより、2回目以降の削除処理については、処理予測時間が算出され、実行の可否が判定される。N+1回目の削除処理が稼動許可時間帯中に終了しないことが判定されると(OP8:NO)、ハウスキープ処理が終了するため、稼動許可時間帯を超えて削除されることが低減される。また、稼動許可時間帯の剰余を1単位のデータの削除処理に掛る時間よりも短くすることができるため、稼動許可時間帯を有効に使用することができる。換言すると、稼動許可時間帯内で可能な限りデータを削除することができる。これによって、より多くのディスクの空き容量を得られるようになる。
【0068】
また、実施形態では、各単位の削除処理に掛った処理時間を蓄積し、N+1回目の削除処理の処理予測時間の算出に用いることによって、ハウスキープ処理と並行して稼働する処理の負荷を考慮したより精度の高い処理予測時間を得ることができる。精度の高い処理予測時間が得られることによって、N+1回目の削除処理の実行の可否判定の精度が上がり、稼動許可時間帯内で可能な限りより多くのデータを削除することができる。
【0069】
また、実施形態では、異常な値の処理時間は蓄積対象から除外することによって、N+1回目の削除処理の処理予測時間をより精度良く算出することができる。
【0070】
<実施形態のバリエーション>
上記説明した実施形態では、ハウスキープ処理を情報処理装置1単体で実行したが、これに限られない。上記説明された実施形態のハウスキープ処理は、複数のコンピュータで実行される分散コンピューティングで実現されてもよい。例えば、情報処理装置1の制御部11、時刻取得部12、予測時間算出部13、判定部14、ファイル管理部15、処理
実行部16は、一部又は全部が、異なる独立した装置(コンピュータ等)であってもよい。また、処理時間ファイル17及び稼動許可時間帯定義ファイル18は、情報処理装置1とは異なる記憶装置に格納されていてもよい。
【0071】
上記説明した実施形態では、情報処理装置1は、予測時間算出部13を備え、N+1回目の削除処理の処理予測時間を算出するが、これに代えて、情報処理装置1は、予測時間算出部13を備えずに、予め算出された標準予測時間を主記憶装置102に保持し、N+1回目の削除処理の処理予測時間として、該標準予測時間を用いてもよい。
【0072】
上記説明した実施形態では、情報処理装置1は、開始時刻と終了時刻とで定義された稼動許可時間帯を超えてハウスキープ処理が実行されないように制御を行う。これに限られず、上記説明した実施形態は、時刻による定義のない時間範囲を超えてハウスキープ処理が実行されないように制御を行う情報処理装置にも適用可能である。時刻による定義のない時間範囲とは、例えば、処理開始から所定時間経過するまでの時間範囲である。
【0073】
上記説明した実施形態では、ファイル管理部15は、処理時間ファイル17への記録対象から、1単位のデータの削除処理の処理時間のうち第2の閾値未満のものを除外する。これに代えて、例えば、ファイル管理部15は、処理時間ファイル17への記録対象のフィルタリングを行わずに、すべての処理時間を記録し、予測時間算出部13が、次の単位の処理予測時間の算出に、処理時間ファイル17に格納される第2の閾値未満の処理時間は用いないようにしてもよい。
【0074】
上記説明した実施形態では、1単位のデータの削除処理が終了する度に、次の単位のデータの削除処理の実行の可否判定が行われる。これに代えて、例えば、1回目の削除処理からM回目までの削除処理までの間は、すなわち、M単位データの削除処理が終了するまでの間は、次の単位のデータの削除処理の実行の可否判定を行わずに、M+1回目の削除処理から次の単位のデータの削除処理の実行の可否判定を行うようにしてもよい。この場合には、図4に示されるフローチャートのOP2からOP5の処理をM回繰り返し実行した後に、M+1回目以降の削除処理については、OP6−OP8の処理が実行されるようにすることで実現可能である。なお、次の単位のデータの削除処理の実行の可否判定が行われない削除処理の回数Mは、該M回分の処理時間の合計が稼動許可時間帯の時間長よりも十分に小さくなるように設定される。
【0075】
又は、例えば、稼動許可時間帯の残り時間が所定の時間になるまで、又は、稼動許可時間帯内の所定時刻になるまでの間は、次の単位のデータの削除処理の実行の可否判定を行わないようにし、それ以降について、次の単位のデータの削除処理の実行の可否判定を行うようにしてもよい。この場合には、図4に示されるフローチャートのOP2からOP5の処理の後に、残り時間の判定又は時刻の判定を行う処理を追加することによって、実現可能である。これらによって、次の単位のデータの削除処理に掛る処理予測時間の算出及び次の単位のデータの削除処理の実行の可否判定の実行回数を減らすことができ、情報処理装置1の負荷を抑えることができる。
【0076】
上記説明した実施形態では、情報処理装置1は、次の1単位のデータの削除処理に掛る処理予測時間を算出し、次の1単位のデータの削除処理の実行可否判定を行った。これに代えて、情報処理装置1は、所定数の単位のデータについて、1単位毎に図4のOP2−OP5のような削除処理を行い、該所定数の単位のデータの削除処理が終了すると、次の所定数の単位のデータの処理予測時間をまとめて算出し、次の所定数の単位のデータの削除処理の実行可否をまとめて判定してもよい。所定数の単位のデータの削除処理に掛る処理予測時間は、例えば、1単位のデータの削除処理に掛る処理予測時間に所定数を乗じて求められる。
【0077】
所定数の単位について、まとめて、処理予測時間を算出し、削除処理の実行可否の判定が行われる場合には、例えば、M単位分のデータの削除処理が終了したら(M+1回目の削除処理から)、又は、残り時間が所定の時間未満になったら、情報処理装置1は、処理予測時間の算出を、次の1単位のデータの削除処理について行うようにし、該1単位のデータの削除処理の実行可否判定を行うようにしてもよい。又は、所定数の単位のデータの削除処理の不実行が判定された場合には、情報処理装置1は、削除処理の実行が判定されるまで、又は、所定数が1になるまで、所定数を1ずつ減らし、処理予測時間の算出と、削除処理の実行可否の判定とを繰り返し実行してもよい。
【0078】
これによって、次の単位のデータの削除処理に掛る処理予測時間の算出及び次の単位のデータの削除処理の実行の可否判定の実行回数を減らすことができ、情報処理装置1の負荷を抑えることができる。
【0079】
上記説明した実施形態では、情報処理装置1が、ハウスキープ処理及びデータの削除処理を行う例について説明したが、情報処理装置1が行う処理は、ハウスキープ処理及びデータの削除処理に限定されない。例えば、所定の1単位毎に実行される処理であれば、データの書換処理、データの追加処理等について、情報処理装置1は、稼動許可時間帯を超えて実行されないように、次の単位のデータの処理時間を予測し、次の単位のデータの処理の実行可否を判定してもよい。
【符号の説明】
【0080】
1 情報書処理装置
2 データベース
11 制御部
12 時刻取得部
13 予測時間算出部
14 判定部
15 ファイル管理部
16 処理実行部
17 処理時間ファイル
18 稼動許可時間帯定義ファイル
図1
図2
図3
図4