(57)【要約】【課題】操作性を損なうことなく、データを分散配置する技術を提供する。【解決手段】顧客毎の顧客情報を論理的に分離された格納領域に管理する管理手段と、前記管理手段により管理されている前記顧客毎の顧客情報の量に関する増加傾向情報を取得する取得手段と、受信された顧客情報を前記格納領域のうち何れの格納領域に格納するかを決定する決定手段と、を有し、前記決定手段は、第１の顧客の顧客情報が既に第１の格納領域に格納されている場合、前記取得された前記第１の顧客に関する前記増加傾向情報に基づいて、新たに受信された前記第１の顧客の顧客情報に含まれる保持期限が定められた種類の稼働情報を、前記第１の格納領域と、前記第１の格納領域とは異なる第２の格納領域とに分散させて格納することを決定することによって課題を解決する。【選択図】図１４
2015153155.tif 000002
【特許請求の範囲】
【請求項１】
顧客毎の顧客情報を論理的に分離された格納領域に管理する管理手段と、
前記管理手段により管理されている前記顧客毎の顧客情報の量に関する増加傾向情報を取得する取得手段と、
受信された顧客情報を前記格納領域のうち何れの格納領域に格納するかを決定する決定手段と、
を有し、
前記決定手段は、第１の顧客の顧客情報が既に第１の格納領域に格納されている場合、前記取得された前記第１の顧客に関する前記増加傾向情報に基づいて、新たに受信された前記第１の顧客の顧客情報に含まれる保持期限が定められた種類の稼働情報を、前記第１の格納領域と、前記第１の格納領域とは異なる第２の格納領域とに分散させて格納することを決定する情報管理システム。
【請求項２】
前記取得手段は、前記格納領域におけるデータ量の監視結果に基づいて前記顧客情報の増加傾向を計算することにより、前記増加傾向情報を取得する請求項１に記載の情報管理システム。
【請求項３】
前記顧客情報には、機器の構成情報と、前記稼働情報とが含まれ、
前記稼働情報には、前記機器のジョブログ、カウンタ情報、インシデントログ、又はステータス情報のうち少なくとも何れかが含まれる請求項１又は２に記載の情報管理システム。
【請求項４】
前記決定手段は、前記第１の顧客の顧客情報が既に前記第１の格納領域に格納されている場合であって、前記第１の顧客に関する前記増加傾向情報に基づいて新たに受信される前記第１の顧客の顧客情報が前記第１の格納領域に格納しきれないと判断した場合に、前記新たに受信される前記第１の顧客の顧客情報に含まれる前記稼働情報を前記第１の格納領域と前記第２の格納領域とに分散させて格納することを決定する請求項１乃至３の何れか１項に記載の情報管理システム。
【請求項５】
前記決定手段は、前記新たに受信される前記第１の顧客の顧客情報に含まれる前記稼働情報のうち、前記保持期限が短い稼働情報から順に優先して、前記第１の格納領域と前記第２の格納領域とに分散させて格納することを決定する請求項４に記載の情報管理システム。
【請求項６】
前記決定手段は、前記格納領域の顧客情報を利用するサービスの種類に基づいて、前記サービスに関連する前記稼働情報が同一の格納領域に格納されるように格納先を決定する請求項１乃至５の何れか１項に記載の情報管理システム。
【請求項７】
情報管理システムが実行する情報管理方法であって、
顧客毎の顧客情報を論理的に分離された格納領域に管理する管理ステップと、
前記管理ステップにより管理されている前記顧客毎の顧客情報の量に関する増加傾向情報を取得する取得ステップと、
受信された顧客情報を前記格納領域のうち何れの格納領域に格納するかを決定する決定ステップと、
を含み、
前記決定ステップでは、第１の顧客の顧客情報が既に第１の格納領域に格納されている場合、前記取得された前記第１の顧客に関する前記増加傾向情報に基づいて、新たに受信された前記第１の顧客の顧客情報に含まれる保持期限が定められた種類の稼働情報を、前記第１の格納領域と、前記第１の格納領域とは異なる第２の格納領域とに分散させて格納することを決定する情報管理方法。
【請求項８】
コンピュータに、
顧客毎の顧客情報を論理的に分離された格納領域に管理する管理ステップと、
前記管理ステップにより管理されている前記顧客毎の顧客情報の量に関する増加傾向情報を取得する取得ステップと、
受信された顧客情報を前記格納領域のうち何れの格納領域に格納するかを決定する決定ステップと、
を実行させ、
前記決定ステップでは、第１の顧客の顧客情報が既に第１の格納領域に格納されている場合、前記取得された前記第１の顧客に関する前記増加傾向情報に基づいて、新たに受信された前記第１の顧客の顧客情報に含まれる保持期限が定められた種類の稼働情報を、前記第１の格納領域と、前記第１の格納領域とは異なる第２の格納領域とに分散させて格納することを決定するプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報管理システム、情報管理方法及びプログラムに関する。
【背景技術】
【０００２】
顧客環境の構築及び運用管理を統合的に請け負い、その業務を代行するマネージド・サービスが、近年、多くのプロバイダーによって提供されている。マネージド・サービスの中で、顧客の文書出力全般についてサービスを行うものがマネージド・ドキュメントサービスである。
マネージド・ドキュメントサービスをクラウド上に構築し、多くの顧客に対してサービスを提供する場合、システムが扱うデータ量は膨大になる。システムが扱うデータ量が膨大になった場合、検索性能劣化を防ぐために、データ種毎にデータを分割してデータベースに格納し、検索時間を低減する方法がある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−２１９９８４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、マネージド・ドキュメントサービスにおいては、データ種のみならず、そのデータの利用方法を鑑みて、データを分散配置しなければ、ユースケースによっては性能が劣化し、操作性を損なう場合がある。
本発明は、操作性を損なうことなくデータを分散配置する技術を提供することを目的とする。
【課題を解決するための手段】
【０００５】
そこで、本発明の情報管理システムは、顧客毎の顧客情報を論理的に分離された格納領域に管理する管理手段と、前記管理手段により管理されている前記顧客毎の顧客情報の量に関する増加傾向情報を取得する取得手段と、受信された顧客情報を前記格納領域のうち何れの格納領域に格納するかを決定する決定手段と、を有し、前記決定手段は、第１の顧客の顧客情報が既に第１の格納領域に格納されている場合、前記取得された前記第１の顧客に関する前記増加傾向情報に基づいて、新たに受信された前記第１の顧客の顧客情報に含まれる保持期限が定められた種類の稼働情報を、前記第１の格納領域と、前記第１の格納領域とは異なる第２の格納領域とに分散させて格納することを決定する。
【発明の効果】
【０００６】
本発明によれば、操作性を損なうことなくデータを分散配置する技術を提供することができる。
【図面の簡単な説明】
【０００７】
【図１】情報管理システムのシステム構成の一例を示す図である。
【図２】管理サーバのハードウェア構成の一例を示す図である。
【図３】管理サーバのソフトウェア構成の一例を示す図である。
【図４】管理アプリケーションの機能の詳細の一例を示す図である。
【図５】データベース内でのデータ種保存の一例を示す図である。
【図６】データベースに保持される情報の一例を示す図である。
【図７】属性情報とサービス利用状況とに関する情報の一例を示す図である。
【図８】データ量推移の一例を示す図である。
【図９】顧客登録操作の操作画面の一例を示す図である。
【図１０】顧客登録処理の一例を示すフローチャートである。
【図１１】データ量監視・分散制御処理の一例を示すフローチャートである。
【図１２】データ量監視処理の一例を示すフローチャートである。
【図１３】データ格納先決定処理の一例を示すフローチャートである。
【図１４】データ分散対象決定処理の一例を示すフローチャートである。
【発明を実施するための形態】
【０００８】
以下、本発明を実施するための最良の形態について図面を用いて説明する。
＜実施形態１＞
顧客環境の構築及び運用管理を統合的に請け負い、その業務を代行するマネージド・サービスが、近年、多くのプロバイダーによって提供されている。マネージド・サービスの中で、顧客の文書出力全般についてサービスを行うものがマネージド・ドキュメントサービスである。
クラウド上に構築したデバイス管理システムでは、複数顧客に対してマネージド・ドキュメントサービスを提供するにあたり、複数顧客のデータを分離して、即ち、顧客毎にデータベース内の領域（格納領域）を割り当ててデータベースに格納している。
顧客毎の顧客情報におけるデータ種には、監視対象となる画像形成装置に関するデータ、それらの画像形成装置の集計データ、稼働状況リポート等のデータがある。画像形成装置に関するデータ種としては、画像形成装置の周辺機器装備状況等のデバイス構成情報と、デバイスの稼働に関わる稼働情報とがある。ここでいう稼働情報には、ジョブログ、カウンタ情報、インシデントログ、ステータス情報が含まれる。また、カウンタ情報としては、印刷枚数等があげられる。インシデントログとしては、紙詰まり等があげられる。ステータス情報としては、エラーを示す情報や、トナー残量等を示す情報等があげられる。集計データは、ジョブログ等のデバイスの稼働に関するデータを集約したものである。稼働状況リポートは、デバイスの稼働に関するデータを可視化したものである。
【０００９】
マネージド・ドキュメントサービスでは、上述したデータ種に対してその利用方法を鑑みて、データ種毎に無期限、三ヶ月、三年等といった所定の保存期限（保持期限）を定めており、データベースに格納されるデータ量は、サービス提供期間に依存して増加していく。なお、保存期限は上記の期限に限る必要はない。
また、マネージド・ドキュメントサービスでは、新規にサービスを提供する顧客用のデータ格納領域の割り当てに際しては、サービス提供対象となる画像形成装置数、平均的な使用傾向、及び稼働状況を鑑みて必要なサイズを算出する。しかし、サービス提供対象となる画像形成装置数や使用傾向、稼働状況によっては、データ量が当初算出されたデータ格納サイズに格納しきれなくなる場合がある。このような場合は、１顧客のデータを複数のデータベースに分散して格納することとなる。
本実施形態は、マネージド・ドキュメントサービスにおいて上述したようなデータを複数のデータベースに格納するシステムに関するものである。
【００１０】
図１は、本実施形態における情報管理システムのシステム構成の一例を示す図である。
管理サーバ装置（以下、管理サーバ）１０１は、顧客先の管理対象となる画像形成装置等の機器のデバイス構成情報、稼働情報、及び作成した稼働状況リポート等を集中管理する管理装置である。また、管理サーバ１０１には、ＨＴＴＰ等のプロトコルに準拠したＷｅｂサービスがホストされている。
データベースシステム１０２、１０３は、管理サーバ１０１の要求に従い、データを格納、参照、更新する機能を有する。データベースシステム１０２、１０３は、データベースに関する管理情報、画像形成装置の稼働情報、稼働状況リポート、集計データといったデータを保持する。本実施形態におけるデータベースシステムは、管理用データベースシステム１０２と、１つ以上のデータ格納用データベースシステム１０３とで構成される。管理用データベースシステム１０２には、データベースシステム全体の管理情報の一例として、ある顧客のあるデータ種が論理的に分離して用意されたどのデータベースに格納されているかといった情報が格納される。データ格納用データベースシステム１０３には、稼働情報等のデータが格納される。なお、データベースシステム１０２、１０３は、管理サーバ１０１内に含まれるような構成であってもよい。
クライアント１０４は、ネットワーク１０５を介して管理サーバ１０１に接続する。クライアント１０４には、管理サーバ１０１を介してデータベースシステムへデータを格納する機能やデータベースシステムに格納されたデータを更新、参照する機能を有するアプリケーションが搭載されている。
【００１１】
図２は、管理サーバ１０１のハードウェア構成の一例を示す図である。
ＣＰＵ２０１は、管理サーバ１０１全体を制御する。ＣＰＵ２０１は、ＲＯＭ２０２やＨＤＤ２０８等に格納されているプログラムを実行することにより、管理サーバ１０１のＯＳ（オペレーティングシステム）を含む機能（ソフトウェア構成）及び後述するフローチャートに関する処理を実現する。
ＲＯＭ２０２は、システム起動に必要なブートプログラムやデータの監視処理等を実現するための各種プログラムを記憶するための読み出し専用メモリである。
ＲＡＭ２０３は、ＣＰＵ２０１がプログラムを実行する際に必要とする作業メモリ等として用いられる。
ＮｅｔｗｏｒｋＩ／Ｆ２０４は、画像形成装置と通信を行ったり、ユーザが使用するウェブブラウザ等を搭載したユーザ端末とネットワーク１０５を介して通信を行ったりするためのインターフェースである。
表示制御部２０６は、表示部２０９に接続されており、表示部２０９への表示を制御する。
入力制御部２０７は、マウスやキーボード等の入力部２１０、２１１に接続されており、管理サーバ１０１への入力を制御する。
ＨＤＤ２０８は、ＣＰＵ２０１が実行するプログラムやアプリケーション情報等を格納する。また、ＨＤＤ２０８は、ＣＰＵ２０１が実行する処理に要する閾値等を含む各種のデータを格納する。
上記のユニットが、システムバス２０５に接続されている。
【００１２】
図３は、管理サーバ１０１のソフトウェア構成の一例を示す図である。
図３に示すソフトウェア構成は、ＯＳ３０１、ライブラリ３０２、Ｗｅｂサーバ３０３、アプリケーション３０４、ハードウェア制御アプリケーション３０６を含む。
アプリケーション３０４は、画像形成装置の稼働状況に関する情報の管理等を行う管理アプリケーション３０５を含む。管理アプリケーション３０５は、ＣＰＵ２０１がＲＯＭ２０２に格納されている管理プログラムを実行することにより実現され、図４を用いて後述する各機能を有する。
ハードウェア制御アプリケーション３０６は、ネットワークボード制御アプリケーション３０７、ＨＤ（ハードディスク）制御アプリケーション３０８を含む。ネットワークボード制御アプリケーション３０７は、ＣＰＵ２０１がＲＯＭ２０２等に格納されているネットワークボード制御プログラムを実行することにより実現される。ＨＤ制御アプリケーション３０８は、ＣＰＵ２０１がＲＯＭ２０２等に格納されているＨＤ制御プログラム実行することにより実現される。
【００１３】
図４は、図３を用いて上述した管理アプリケーション３０５の機能の詳細の一例を示す図である。
起動処理部４０１は、管理アプリケーション３０５の起動時の処理を制御する。起動処理部４０１は、受信制御部４０２と監視部４０８とを呼び出す。
受信制御部４０２は、クライアント１０４からのデータベースシステムへのアクセス要求処理を制御する。受信制御部４０２は、クライアント１０４からのデータベースシステムへのアクセス要求をＮｅｔｗｏｒｋＩ／Ｆ２０４を介して受け付け、管理情報取得部４０５を呼び出す。受信制御部４０２がクライアント１０４から受け付けるアクセス要求の種類は、顧客登録、データ登録、データ更新、データ参照、データ削除である。ここでいう「顧客登録」に関する要求とは、顧客先に設置した画像形成装置の稼働状況を格納するための領域をデータベース内に確保するための要求のことである。
管理情報取得部４０５は、データベースシステム１０２、又はデータベースシステム１０３から稼働情報アクセス先等の管理情報を取得し、記憶部４０６に格納する。
記憶部４０６は、各種の情報をＲＡＭ２０３や、ＨＤＤ２０８に記憶する。記憶部４０６には、管理情報の他にデータベースシステム１０２、１０３から取得された稼働情報や、顧客毎のサービス利用状況に関する情報が記憶される。
【００１４】
判断部４０３は、管理情報に含まれる稼働情報アクセス先を記憶部４０６から取得する。
稼働情報アクセス部４０４は、判断部４０３が取得したアクセス先と、受信制御部４０２が受信したアクセス要求種類とに応じて、データベースシステム１０２、１０３に接続してデータを処理し、処理結果を記憶部４０６に格納する。そして、送信制御部４０７は、記憶部４０６から読み出した処理結果を、ＮｅｔｗｏｒｋＩ／Ｆ２０４を介して要求送信元であるクライアント１０４に送信する。ここで、アクセス要求種類が顧客登録の場合は、判断部４０３が、顧客先に設置される画像形成装置の台数から格納に必要なデータサイズを算出し、そのデータサイズを確保できるデータベースを選択（決定）する。そして、稼働情報アクセス部４０４は、そのデータベースに顧客のデータ領域を確保する。
監視部４０８は、定期的にデータベースシステム１０２、１０３のデータサイズを監視し、分散の対象となるデータ種の決定処理を制御する。監視部４０８は、管理情報取得部４０５に対して、データベースシステム１０２、１０３のデータ使用状況取得要求を出す。
管理情報取得部４０５は、データベースシステム１０２、１０３からデータ使用状況を取得し、記憶部４０６に格納する。そして、監視部４０８は、記憶部４０６に格納された情報に基づき、データの分散が必要であるか否かを判断し、必要であると判断した場合は、管理情報更新部４０９を介してデータベースシステム１０２、１０３の管理情報を更新する。
また、記憶部４０６は、データ種と保存期限や分散可能かどうかといった属性との対応情報や、顧客毎のサービスの利用状況を記録する。
【００１５】
以下、図５から図１４までを用いて、本実施形態における、データベースへの顧客毎のデータ格納処理について説明する。
図５は、データベース内でのデータ種保存の一例を示す図である。
データベース５０１、５０５は、稼働情報等のデータが格納されるデータ格納用データベースシステム１０３に含まれる。
図５における（ａ）が示すデータ５０２、５０７は、デバイス構成情報である。また、図５における（ｂ）が示すデータ５０３、５０６、５０９は、ジョブログである。また、図５における（ｃ）が示すデータ５０４、５０８は、ステータス情報である。なお、データベースにおけるこれらの情報は一例であり、他の情報が格納されていてもよい。
図５の（Ａ）は、データベース５０１の空き容量が不足したため、ジョブログ（ｂ）がデータベース５０１とデータベース５０５とに分散して格納された状態を示す。これ以降、ジョブログ（ｂ）はデータベース５０５に格納され、デバイス構成情報（ａ）とステータス（ｃ）とはデータベース５０１に格納され続ける。
図５の（Ｂ）は、図５の（Ａ）の状態になってから、データベース５０１に格納されたジョブログ５０３が保存期限切れとなり、ジョブログ（ｂ）が２つのデータベース５０１、５０５に分散して格納されていた状態が解消された状態を示している。
【００１６】
図６は、データベースに保持される情報の一例を示す図である。ここで示す情報は、管理情報取得部４０５により取得され、管理情報更新部４０９により更新される。
データ６０１、６０６は、管理情報格納データベースに保持される情報であり、データ６０７は、データ格納データベースに保持される情報である。
まず、管理情報格納データベースに保持される情報について説明する。
データ６０１は、顧客登録要求時、データ分散格納開始時に更新され、クライアント１０４からのデータ登録、データ更新、データ参照、データ削除といったアクセス要求を管理サーバ１０１が処理する際に判断部４０３が参照するデータである。また、データ６０１は、顧客を特定する顧客ＩＤ６０２、データ種６０３、その格納先ＤＢを特定するデータ格納ＤＢ名６０４、及びそのＤＢにデータを格納することを決定した登録年月日６０５を対応付けて保持する。
データ６０６は、管理サーバ１０１がデータ格納データベースとして管理している各データベースの空き領域サイズの情報を含む。データ６０６は、クライアント１０４からの顧客登録要求に対して管理サーバ１０１が顧客データ登録先データベースを決定する際に参照するデータであり、登録先決定後は顧客データ登録に要するサイズ分が差し引かれて更新される。更に、データ６０６は、顧客データが増加した場合に更新される。
【００１７】
次に、データ格納データベースに保持される情報について説明する。
データ６０７は、顧客毎、データ種毎のデータサイズ等の情報を含み、１つ以上のデータ格納データベースに保持される。
顧客ＩＤ６０８は、顧客ＩＤ６０２として保持されているデータのうち、データ６０７が保持されるデータ格納データベースに格納されたデータの顧客ＩＤである。
データ種６０９は、データ種６０３として保持されているデータのうち、データ６０７が保持されるデータ格納データベースに格納されたデータのデータ種である。例えば、データ格納データベース￥￥Ｓｅｒｖｅｒ００２￥ＤＡＴＡＤＢに保持されたデータ６０７には、顧客ＩＤが２００でデータ種がジョブログの情報と、顧客ＩＤが３００でデータ種がジョブログの情報とが保持される。
予約サイズ６１０は、保存期限を考慮した顧客データを格納するために必要なデータ領域サイズである。予約サイズ６１０の初期値は、顧客登録時に指定された管理対象画像形成装置数に基づいて管理サーバ１０１が算出する値である。本実施形態では、管理サーバ１０１が、予約サイズ６１０を算出するために、画像形成装置から管理サーバ１０１に送信されるデータ種の標準的なデータ量を保持している。ここでいう標準的なデータ量とは、実績値等に基づくデータ量であってもよい。例えば、管理サーバ１０１は、一画像形成装置の一日当たりのデータ量として、ジョブログ数が１０００、ステータス数が５等の値を保持している。データ種毎にデータベースに格納するために要するデータサイズと保存期限とが対応付けられ、管理サーバ１０１は、これらの情報と画像形成装置数とからデータ種６０９の予約サイズ６１０の初期値を算出する。
増加率６１１は、単位期間当たりのデータ増加量である。増加率６１１は、増加傾向を示す増加傾向情報の一例である。管理サーバ１０１は、データ種毎の増加率を定期的にチェックし、前回チェック日時６１２、前回チェック時サイズ６１３を保存しておく。また、管理サーバ１０１は、今回サイズ６１４、増加フラグ６１５、必要サイズ６１６、及び移動フラグ６１７を、定期チェックの際に更新、参照する。
【００１８】
図７は、データ種の属性情報と顧客毎のサービス利用状況とに関する情報の一例を示す図である。
データ７０１は、データ種の属性情報における保持例である。データ７０１には、データ種７０２、データの保存期限７０３、データ種が分散対象か否かを示すフラグ７０４、データ種を利用するサービスに関する情報７０５を含む。
フラグ７０４が０のデータ種は分散対象外であり、フラグ７０４が１のデータ種は分散対象であることを示す。情報７０５が「−」であるデータ種は、他のサービスが利用しないことを示し、それ以外のデータ種は他のサービスが利用することを示す。例えば、ステータスに関しては、ステータス監視サービスのような外部サービスが利用する。ここで、管理サーバ１０１は、同一の種類のサービスが利用するデータ種を同じデータベースに格納するようにしてもよい。これにより、管理サーバ１０１は、複数のデータベースでデータを管理する場合であっても、同一のサービスに関連するデータにアクセスする際に複数のデータベースにアクセスする必要がなくなるため、処理性能の低下を抑止することができる。
データ７０６は、顧客毎のサービス利用状況の保持例である。情報７０８は、顧客が利用しているサービスを示すものであり、「−」は顧客が利用しているサービスがないことを示す。
【００１９】
図８は、データ量推移の一例を示す図である。
推移８０１は、管理サーバ１０１が顧客登録実行時に予測したデータ量の推移を示す。推移８０２は、管理サーバ１０１がデータ量の監視結果に基づいて再予測したデータ量の推移を示す。
また、図８には、データ格納開始時を示す時刻８０３、Ｎ回目のデータ量監視時を示す時刻８０４、Ｎ＋１回目のデータ量監視時を示す時刻８０５が示されている。ここで、Ｎは１以上の整数である。また、時刻８０６は、時刻８０３を起点としたデータ保存期限を示しており、時刻８０７は、時刻８０４を起点としたデータ保存期限を示している。保存期限経過後は、保存期限を過ぎたデータが削除されるため、データ量は一定となる。
時刻８０４の監視時には、登録時の予測値と再予測における予測値との差異はないが、時刻８０５では再予測における予測値が登録時の予測値の１、５倍となっている。その結果が、再予測の推移８０２における時刻８０５の値として表れている。
なお、区間８０８では、時刻８０３を起点として登録されたデータが保存期限切れで削除されるため、その分、データの増加を示す傾きが小さくなっている。
【００２０】
図９は、クライアント１０４における顧客登録操作の操作画面の一例を示す図である。
顧客（ユーザ）が顧客ＩＤ９０２、及び管理対象画像形成装置数９０３を入力し、ボタン９０４を押下（選択）すると管理サーバ１０１にて顧客登録処理が実行される。
図１０は、管理サーバ１０１による顧客登録処理の一例を示すフローチャートである。
Ｓ１００１にて、受信制御部４０２は、顧客ＩＤと管理対象画像形成装置数の情報とを受け付ける。
Ｓ１００２にて、判断部４０３は、上述した標準的なデータ量と管理対象画像形成装置数とから全データ種のデータを格納するために必要なサイズを算出する。
Ｓ１００３にて、判断部４０３は、データ６０６を参照し、既存データベースの空きデータサイズを取得する。そして、判断部４０３は、Ｓ１００２で算出したサイズ以上の空きデータサイズがあるデータベースを配置先として決定する。
Ｓ１００４にて、管理情報更新部４０９は、管理情報格納データベースと配置先として決定されたデータ格納データベースとの管理情報を更新する。より具体的には、管理情報更新部４０９は、データ６０１に、今回登録した顧客ＩＤ、データ種、及び登録年月日を追加する。また、管理情報更新部４０９は、データ６０６の配置先として決定したデータ格納データベースの空き領域サイズを、（空き領域サイズ−今回算出したデータサイズ）に置き換える。更に、管理情報更新部４０９は、今回登録した顧客ＩＤとデータ種とを、データ６０７に追加登録する。
以上の処理により、管理サーバ１０１は、クライアント１０４からの要求に応じて、顧客登録をすることができる。
【００２１】
図１１は、管理サーバ１０１が、データ量を監視し、データの格納先決定、及びデータの分散制御を実行する処理の一例を示すフローチャートである。図１１は、監視部４０８が、Ｓ１１０４のデータ量チェック処理を、データ６０１を参照して、全てのデータベース、各データベースに格納された全ての顧客、各顧客の全てのデータ種（テーブルに対応）について実行することを示している。Ｓ１１０４の処理の詳細については、図１２を用いて後述する。
監視部４０８は、Ｓ１１０５、Ｓ１１０６、Ｓ１１０７で全て処理したと判断すると、処理をＳ１１０８に進める。Ｓ１１０８の処理の詳細については、図１３、及び図１４を用いて後述する。
【００２２】
図１２は、管理サーバ１０１の監視部４０８が実行するデータ量チェック処理の一例を示すフローチャートである。監視部４０８によるデータ量チェック処理は定期的に実行される。ここでは、データ種がジョブログである場合について説明する。
Ｓ１２０１において、監視部４０８は、まず、次の項目を初期化する。より具体的には、監視部４０８は、増加フラグ６１５には増加していないことを示す０を設定する。また、監視部４０８は、必要サイズ６１６には予約サイズ６１０を設定する。また、監視部４０８は、移動フラグ６１７には移動対象であることを示す１を設定する。次に、監視部４０８は、現在のジョブログのデータサイズを取得する。そして、監視部４０８は、ジョブログの増加率６１１、前回チェック日時６１２、前回チェック時サイズ６１３、及び現在日時から、予測データサイズを算出し、現在データサイズとの差分を算出する。
Ｓ１２０２において、監視部４０８は、Ｓ１２０１で算出した差分が予め定められた閾値より大きいと判断すると、Ｓ１２０３以降の処理を行い、差分が閾値以下であると判断すると、図１２の処理を終了する。
Ｓ１２０３において、監視部４０８は、増加フラグ６１５にデータが増加したことを示す１を設定し、増加率とデータ格納に必要なサイズとを以下の式により算出する。
増加率＝（今回取得サイズ−前回取得サイズ）／期間
必要サイズ＝増加率×保存期限−前回サイズ
以上、監視部４０８は、予測を超えてデータが増加したことを検知することができる。
【００２３】
次に、図１３と図１４を用いて、データが増加した場合のデータ格納先決定処理（Ｓ１１０８）について詳細に説明する。本実施形態では、データ格納先決定処理において、判断部４０３は、まず、増加したデータが既に格納されているデータベース内に格納することができないかを判断し、格納することができないと判断した場合に、分散対象とするデータ種と分散先とを決定する。
図１３は、管理サーバ１０１が実行するデータ格納先決定処理の一例を示すフローチャートである。
Ｓ１３０１において、判断部４０３は、以降の処理をデータベース数分ループさせる処理を開始する。また、判断部４０３は、初期処理として必要サイズの増分積算値（以下、必要サイズ増分積算値）を格納する格納領域（以下、必要サイズ増分積算値格納領域）にゼロを設定する。以下、判断部４０３は、Ｓ１３０２からＳ１３０５までの処理をデータ格納データベース数分繰り返す。
Ｓ１３０２において、判断部４０３は、データ格納データベースに格納された全てのデータ６０７について次の処理を行う。判断部４０３は、増加フラグ６１５が１である場合、必要サイズ６１６と予約サイズ６１０との差分を計算し、計算した差分を必要サイズ増分積算値格納領域に加算する。
Ｓ１３０３において、判断部４０３は、増加フラグ６１５が１であるものが１つ以上ある場合は、Ｓ１３０４以降の処理を行う。一方、判断部４０３は、増加フラグ６１５が１であるものが１つもない場合は、Ｓ１３０６以降の処理を行う。
【００２４】
Ｓ１３０４において、判断部４０３は、必要サイズ増分積算値格納領域に格納された値と、処理対象のデータ格納データベースのデータ６０７中の空き領域サイズとを比較する。判断部４０３は、増加分が空き領域サイズよりも大きいと判断した場合は、Ｓ１３０６以降の処理を行う。一方、判断部４０３は、増加分が空き領域サイズ以下であると判断した場合は、Ｓ１３０５以降の処理を行う。
Ｓ１３０５において、管理情報更新部４０９は、増加分のデータの格納先を現在データを格納しているデータ格納データベースとするために管理情報を更新する。より具体的には、管理情報更新部４０９は、管理情報格納データベースのデータ６０７の該当するデータベースの空きサイズから増加分を減じたサイズを空きサイズとして格納する。管理情報更新部４０９は、増加フラグ６１５が１であるデータを更新する。管理情報更新部４０９は、予約サイズ６１０に必要サイズ６１６の値を設定し、増加率６１１を今回算出した値に置き換える。管理情報更新部４０９は、前回チェック日時６１２を今回のチェック日時に、前回チェック時サイズ６１３を今回サイズ６１４に置き換える。そして、管理情報更新部４０９は、増加フラグ６１５に０を、移動フラグ６１７に移動対象でないことを意味する０を設定する。
Ｓ１３０６において、判断部４０３は、全データベースについて増分チェックが終了したと判断した場合は、図１３の処理を終了し、終了していないと判断した場合は、Ｓ１３０２以降の処理を行う。
以上の処理により、管理サーバ１０１は、データが増加した場合であっても、算出した必要サイズの増分に応じてデータの格納先を決定することができる。
【００２５】
図１４は、データの増加分がそれまでデータを格納していたデータ格納データベースに空き領域不足で格納しきれない場合における管理サーバ１０１の分散処理の一例を示すフローチャートである。
Ｓ１４０１において、監視部４０８は、Ｓ１４０２からＳ１４０６までの処理をデータベース数分ループさせる処理を開始する。
Ｓ１４０２において、監視部４０８は、増加フラグが１であるものが１つ以上あるかを判断し、あると判断した場合は、Ｓ１４０３以降の処理を行い、ないと判断した場合は、Ｓ１４０７以降の処理を行う。
Ｓ１４０３において、監視部４０８は、データ７０１、データ７０６を参照し、分散対象から除外するデータ種を決定する。
管理サーバ１０１がデータを複数のデータベースに分散して格納すると、データ参照の際に複数のデータベースに接続しなければならないため、処理に要する時間が増える。しかし、データ量が増え、システムのディスク容量を超えることが予測される場合には、データを複数のデータベースに分散して格納せざるを得ない。そこで、監視部４０８は、複数のデータベースに分散してデータを格納する場合の処理性能への影響を少なくするためにデータ種の保存期限、使われ方を考慮してデータを分散するかどうかを判断する。
【００２６】
まず、監視部４０８がデータの保存期限に関する情報を使用して分散制御する処理について説明する。
データが第１のデータベースに格納された後、第２のデータベースに分散して格納される場合、保存期限があるデータ種の場合、第１のデータベースに格納されたデータは保存期限切れで削除される。第１のデータベースに格納されたデータが保存期限切れで全て削除されると、データは第２のデータベースのみに存在し、分散して格納された状態が解消される。このように分散格納状態が早く解消されるよう、保存期限が短いデータ種を分散対象とする。例えば、予め定められた閾値よりも保存期限が短いデータ種を分散対象とするようにしてもよいし、保存期限が最も短いデータ種から順に分散対象とするようにしてもよい。また、保存期限が無期限であるデータ種は、データが削除されることがないため分散して格納された状態が解消されることがないので分散対象としない。監視部４０８が分散対象をこのように決定することで、データベースに分散してデータを格納する場合においても処理性能への影響を少なくすることができる。
【００２７】
次に、監視部４０８がデータ種の使われ方に関する情報を使用して分散制御する処理について説明する。
管理サーバ１０１が複数のデータベースに接続してデータを取得するようにすると処理時間がかかるため、ユーザ操作や他システムとの連携で即時に取得することが望まれるデータ種は分散対象としない。まず、監視部４０８は、データ７０１を参照する。データ７０１の例では、データ種７０２がデバイス構成情報の場合は、分散対象外である。そこで、監視部４０８は、管理情報更新部４０９を介して、データ種６０９がデバイス構成情報である移動フラグ６１７に移動しないことを意味する０を設定する。
また、監視部４０８は、以下のようにサービスの利用状況に基づいて分散制御を行うようにしてもよい。例えば、データ７０６から顧客ＩＤが１００の場合、Ａ及びＢのサービスを利用していることがわかり、データ７０１からサービスＡはジョブログを、サービスＢはステータスにアクセスすることがわかる。同様に、データ７０６から顧客ＩＤが２００の場合、Ｂのサービスを利用していることがわかり、データ７０１から、サービスＢはステータスにアクセスすることがわかる。データ７０１、７０６に保持した情報から、以下の例におけるデータは分散対象外となるので、監視部４０８は、管理情報更新部４０９を介して、移動フラグ６１７に移動しないことを意味する０を設定する。１つ目の例は、「顧客ＩＤ６０８が１００、かつ、データ種６０９がジョブログ」の場合である。２つ目の例は、「顧客ＩＤ６０８が１００、かつ、データ種６０９がステータス」の場合である。３つめの例は、「顧客ＩＤ６０８が２００、かつ、データ種６０９がステータス」の場合である。監視部４０８が分散対象をこのように決定することで、データベースに分散してデータを格納する場合においても処理性能への影響を少なくすることができる。
【００２８】
次にＳ１４０４において、監視部４０８は、移動フラグが１であるデータ種を保存期限７０３、増加フラグ６１５、必要サイズ６１６から予約サイズ６１０を減じた増分サイズでソートする。監視部４０８は、移動可能（分散可能）なデータ種のうち、保存期限が短いデータ種、データが増加し増分サイズが大きいデータ種の順に分散対象とするかどうかを判断する。ここでは、データ量が増加しないものを分散対象とする。これは、例えば、顧客ＩＤ６０８が１００のジョブログが増加したとしても、ジョブログはサービスがアクセスするため分散対象とすることができないので、他のデータ種を分散してデータ格納領域を確保するためである。
Ｓ１４０５において、監視部４０８は、ソートしたデータを順次参照し、他のデータ格納データベースに必要サイズ６１６を格納するのに十分な空き領域があるか、データ６０６を参照して判断する。監視部４０８は、他のデータ格納データベースに格納することができると判断した場合は、管理情報格納データベース、及びデータ格納データベースに格納された管理情報を管理情報更新部４０９を介して更新する。監視部４０８は、他のデータ格納データベースに格納することができないと判断した場合は、Ｓ１４０６の処理を行う。例えば、監視部４０８は、管理情報格納データベースのデータ６０１、６０６を、管理情報更新部４０９を介して次の通りに更新する。管理情報更新部４０９は、データ６０１に分散対象とする顧客ＩＤ、データ種、データ格納ＤＢ名、登録年月日を追加する。管理情報更新部４０９は、登録年月日にはデータ量チェック年月日を設定する。そして、管理情報更新部４０９は、データ６０６の空き領域サイズから、着目データ種格納のための必要サイズ６１６を減じる。管理情報更新部４０９は、データ分散先データ格納データベースにデータ６０７を追加する。
【００２９】
Ｓ１４０６において、監視部４０８は、データ格納領域の不足が解消されたかを判断し、解消されたと判断した場合は、Ｓ１４０７以降の処理を行い、解消されていないと判断した場合は、Ｓ１４０５以降の処理を行う。
Ｓ１４０７において、監視部４０８は、全てのデータベースについて処理したと判断した場合は、図１４の処理を終了し、未処理があると判断した場合は、Ｓ１４０２以降の処理を行う。
以上の処理により、データ種分散の可不可、及び顧客のサービス利用状況に応じたデータ種分散の可不可を考慮してデータ分散対象を決定することにより、データ量増加に伴いデータを分散格納しても、サービスのデータアクセス性能の低下を抑止することができる。また、データ保存期限の短いものを優先して分散対象とすることによって、１つのデータ種が複数のデータベースに分散して格納された状態を早く解消することができるようになる。
【００３０】
＜その他の実施形態＞
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【００３１】
以上、上述した各実施形態によれば、操作性を損なうことなくデータを分散配置する技術を提供することができる。
【００３２】
以上、本発明の好ましい形態について詳述したが、本実施形態は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【図１】
2015153155.tif 000003
【図２】
2015153155.tif 000004
【図３】
2015153155.tif 000005
【図４】
2015153155.tif 000006
【図５】
2015153155.tif 000007
【図６】
2015153155.tif 000008
【図７】
2015153155.tif 000009
【図８】
2015153155.tif 000010
【図９】
2015153155.tif 000011
【図１０】
2015153155.tif 000012
【図１１】
2015153155.tif 000013
【図１２】
2015153155.tif 000014
【図１３】
2015153155.tif 000015
【図１４】
2015153155.tif 000016