(57)【要約】【課題】  システムの規模を拡大せずに、サービス使用量集計のバリエーション増加に対応する。【解決手段】  動的に追加削除可能な締め時刻間での一次集計を行っておき、一次集計値から各締め時刻での二次集計を行う。【選択図】  図１
2014164546.tif 000002
【特許請求の範囲】
【請求項１】
サービス使用者によりサービスが使用される毎に当該サービスの使用量を記録し、当該記録されたサービス使用量について、指定された期間で集計を行うサービス使用量集計システムにおいて、
集計締め時刻の一覧を保持する締め時刻テーブル（１０）、
前記締め時刻各々の間で前記サービス使用量の一次集計を行う（図９）一次集計手段（６）、
前記締め時刻テーブルに従って前記一次集計手段を動作させるスケジューラ（７）、
前記一次集計の結果を保持する一次集計保持手段（５）、
前記一次集計から前記集計締め時刻を基準として所定期間の集計を行う（図１０）二次集計手段（１１）、
前記締め時刻テーブルを更新する締め時刻更新手段（１２）、
を備えることを特徴とする、サービス使用量集計システム。
【発明の詳細な説明】
【技術分野】
【０００１】
クラウドサービス上の従量課金請求を行うため、サービス使用量ログの集計を行うためのシステムに関する。
【背景技術】
【０００２】
近年、サーバーコンピューター側で各種処理を行う形態として、クラウドコンピューティングシステムやＳａａＳ（Software as a Service）という技術が利用されている。この技術により、ソフトウェアの提供者はコンピュータ資源の投資コストを抑えつつ、利用者へのサービス提供を開始することができる。一方、利用者は、そのソフトウェアの利用に応じた課金により、ソフトウェアの導入コストを抑えることができる。したがって、ソフトウェアの提供者、利用者ともにソフトウェアの提供、導入に対する障壁を下げる効果がある。このようなソフトウェアの提供者は、そのソフトウェアの利用者に対する利用料金の請求のため、利用者毎に使用量ログを記録する。そして、記録された使用量に従って請求金額を決定する。
【０００３】
また、クラウドコンピューティングの特徴として、一つのソフトウェアがサービスとして国や地域によらず提供されるという点が挙げられる。
【０００４】
一方、利用契約は国や地域ごとに異なる。特に、課金単位の集計期間や締め時刻は、国や販売会社の契約ごとに異なる。このため、課金情報は契約地域のタイムゾーンを考慮して集計する必要がある。従来、課金情報にエリア情報を付加し、一つのシステムで複数の設置エリアにおける課金情報を収集するものがある（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００８−２６３４６７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
契約ごとに課金情報を持つと、例えば、販売会社が、下請け販売会社にソフトウェア利用ライセンスの卸売を行う場合に、集計結果の締め時刻がずれたり、集計期間が異なるなどの不便がある。また、サマータイムに対応するタイムゾーンでは、動的に集計時刻と集計期間を調整しなければならない。そこで、契約に関わらず、使用量ログの集計を異なる締め時刻で複数回集計を行ったり、予め異なる締め時間で複数の集計値を取っておくなどの対応が考えられる。
【０００７】
しかしながら、締め時刻は契約の種類、あるいは契約地域が増えていく毎に増加していくことになるため、複数回の集計処理を実施することは、単調増加的にシステムに負荷をかけることになる。通常、これらのシステム負荷増加に対しては、システムのスケールアップおよびスケールアウトで対応を行う。しかしながら、使用量ログの収集および集計は、サービスにより顧客が得られる恩恵に直接結びつく主要機能ではない。したがって、単純にコスト増での対応を実施しづらい部分である。
【０００８】
本発明における課題は、システムの規模を拡大せずに、サービス使用量集計のバリエーション増加に対応することである。
【課題を解決するための手段】
【０００９】
上記課題を解決するために、本発明における画像処理装置は、サービス使用者によりサービスが使用される毎に当該サービスの使用量を記録し、当該記録されたサービス使用量について、指定された期間で集計を行うサービス使用量集計システムにおいて、
集計締め時刻の一覧を保持する締め時刻テーブル（１０）、
前記締め時刻各々の間で前記サービス使用量の一次集計を行う（図９）一次集計手段（６）、
前記締め時刻テーブルに従って前記一次集計手段を動作させるスケジューラ（７）、
前記一次集計の結果を保持する一次集計保持手段（５）、
前記一次集計から前記集計締め時刻を基準として所定期間の集計を行う（図１０）二次集計手段（１１）、
前記締め時刻テーブルを更新する締め時刻更新手段（１２）、
を備えることを特徴とする、サービス使用量集計システム
を有することを特徴とする。
【発明の効果】
【００１０】
システムのコスト増を避けつつ、使用量ログ集計の負荷増加を避けることができる。
サービスの提供開始以降、つまり、使用量ログ収集開始以降、途中から締め時刻を複数に増やすことができる。最初は1つの締め時刻で始めて、必要に応じて締め時刻を増やした集計を行うことができる。
【図面の簡単な説明】
【００１１】
【図１】サービス使用量集計システムの例を示すブロック図である。
【図２】テナント情報の一例である。
【図３】使用量ログの一例である。
【図４】一次集計および二次集計のタイミングと集計対象期間の例である。
【図５】一次集計結果の一例である。
【図６】集計結果を示す一例である。
【図７】締め時刻一覧の一例である。
【図８】締め時刻使用終了日時一覧の一例である。
【図９】一次集計における処理を示すフローチャートである。
【図１０】二次集計処理を示すフローチャートである。
【発明を実施するための形態】
【００１２】
以下、本発明を実施するための最良の形態について図面を用いて説明する。
【００１３】
図１は、本発明におけるサービス使用量集計システムの例を示すブロック図である。
【００１４】
本実施例において、販売者は顧客とライセンス契約を結ぶことにより、インターネット上の印刷サービス（１）及び帳票サービス（２）を顧客へ提供する。販売者は外部ネットワークを介して、クライアントPC（１３）から管理サービス（１２）にアクセスする。販売者は管理サービス（１２）を介し、顧客と契約したサービスのライセンスをテナント情報として登録することにより、顧客が当該サービスを利用可能な状態にする。また、販売者は、管理サービス（１２）を介して取得した、顧客毎の使用量集計値を基に顧客への請求金額を決定する。
【００１５】
管理サービス（１２）は、販売者から入力されたテナント情報をテナント管理情報データベース（９）へ保存する。また、顧客と結んだライセンス契約に従って、請求金額の基準となる集計の締め時刻を締め時刻データベース（１０）へ保存する。印刷サービス（１）及び帳票サービス（２）はテナント管理情報データベース（９）に保存された情報に従って、不図示の認証手段により許可された顧客にのみサービスを提供する。サービスの利用ライセンスを持つユーザーは、外部ネットワークを介し、クライアントPC（１４）から印刷サービス（１）あるいは帳票サービス（２）にアクセスして利用する。
【００１６】
印刷サービス（１）及び帳票サービス（２）は、ユーザーがサービスを利用する際、ログ収集部（３）を介して、顧客毎のサービス使用量を記録する。サービス使用量は使用量ログデータベース（４）に記録される。
【００１７】
管理サービス（１２）から新しい種類の締め時刻が登録されると、集計締め時間追加指定部（８）は、締め時間データベース（１０）から取得して、スケジューラ（７）に集計タイミングを追加する。
【００１８】
スケジューラ（７）は集計締め時刻によって定められた所定のタイミングで一次集計部（６）を呼び出す。一次集計部（６）は、使用量ログデータベース（４）に記録された使用量を顧客毎、サービス毎、締め時刻間隔で集計する。集計結果は一次集計データベース（５）に保存される。
【００１９】
二次集計部（１１）は、管理サービスから指定されたテナントID及びサービスIDに従って、一次集計データベース（５）から一次集計値を取得する。二次集計部（１１）は、さらに、テナントIDとサービスIDに対応する締め時刻に従って、1日単位で集計を行う。販売者は管理サービス（１２）を介して、所定期間（例えばひと月分）の使用量集計値を取得する。
【００２０】
図２は、テナント管理情報データベース（９）に保持されるテナント情報の一例である。販売テナントIDは、サービスを販売する販売会社に対応する。顧客テナントIDは、サービスを販売された顧客のグループに対応する。顧客テナントの中には、サービスを利用する複数のユーザーが含まれる。ライセンスは、販売したサービスの種類を示す。締め時刻は、販売テナントID、顧客テナントID、ライセンスの組み合わせに対応する締め時刻を示す図７のID列を参照する外部キーである。図２に示すテーブルを参照して、二次集計部（１１）は、図６に示すような所定の販売テナントID、顧客テナントID、ライセンスの組み合わせに対応する集計を行う。
【００２１】
図３は、使用量ログデータベース（４）に保持される使用量ログの一例である。利用日時は、サービスが利用された日時をUTCで示す。テナントIDは、サービスを利用したユーザーが所属する顧客テナントのIDである。ユーザーIDは、サービスを利用したユーザーの識別子である。利用サービスは、その日時に利用されたサービスの種類を示す。使用量は、その日時に、そのサービスを利用した使用量を示す。本実施例においては、帳票サービス、印刷サービス共に、ページ数を表すものとする。
【００２２】
図４は、一次集計のタイミングと集計対象期間、および、二次集計の集計対象期間の例を示している。図において、図３に対応して、UTCにおける9月2日から6日までの集計タイミングを上から下へ向かって示している。図の右側において、スケジューラ（７）によって起動される一次集計部（６）の集計タイミングの例を示している。図の左側において、二次集計の集計対象期間を示している。１０１はUTC2日の0:00から翌UTC3日の0:00までの集計期間を示し、この集計はUTC3日の0:00に実施される。また、１０２はUTC3日の0:00からUTC3日の5:00までの集計期間を示し、この集計はUTC3日の5:00に実施される。以下同様に図に示す通りの集計が行われることを表している。
【００２３】
図４において、UTCと並んでEST(アメリカ東海岸)、JST（日本）のタイムゾーンでの時刻も示している。図において、UTC3日の5:00（すなわち、EST3日の0:00）から、EST 0:00のタイミングの集計も追加されている。さらに、UTC5日の15:00（すなわち、JST6日の0:00）から、JST 0:00のタイミングの集計も追加されている。このように、一次集計タイミングと一次集計対象期間は動的に更新される。
【００２４】
一方、図４における左側に示すように、２００、２０１、２０２、２０３は、それぞれ2日、3日、4日、5日のUTC0:00から1日分の集計対象期間を示している。同様に２０４から２０６は、EST0:00締めの集計対象期間、２０７はJST0:00締めの集計対象期間を示している。
【００２５】
図５は、一次集計データベース（５）に保持される一次集計結果の一例である。図５は、図３および図４に示す例に対応する。集計日時は、集計を実行した日時をUTCで示す。テナントIDと利用サービスの組み合わせの単位で、前回の集計日時からの集計を実施する。集計値は、集計日時におけるテナントIDと利用サービスの組み合わせに対応する使用量の合計値である。右に示す番号は、図４における番号と同じ集計期間に対応する。
【００２６】
図６は、二次集計部（１１）における集計結果を示す一例である。図６は、図２及び図４、図５に示す例に対応する。集計日時は集計対象日と集計締め時間をUTCで示す。販売テナントIDは集計対象の販売テナントを示す。顧客テナントIDは集計対象の顧客テナントを示す。利用サービスは集計対象のサービスを示す。集計値は、対象となる顧客テナントと利用サービスの組み合わせにおける、集計日時の使用量の合計値である。例えば、図における9月2日の例では、図４における２００の期間のTenant1、帳票サービスの使用量合計値が示されている。
【００２７】
図７は、締め時刻データベース（１０）に保持されている締め時刻一覧の一例である。IDは締め時刻のエントリの識別子であり、図２および図８から参照される。集計締め時刻は、集計を実施するタイミングをUTC時刻で示す。締め時刻使用開始日時は、その締め時刻での集計を開始する日時をUTCで示す。夏時間は、タイムゾーンにおいて夏時間を考慮する必要があるか否かを示すフラグである。夏時間がTRUEの場合には、スケジューラ（７）は、夏時間開始日と夏時間終了日も参照して、その期間の締め時刻を夏時間に合わせて補正を実施する。
【００２８】
図８は、締め時刻データベース（１０）に保持されている締め時刻使用終了日時一覧の一例である。IDは締め時刻資料終了日時のエントリを識別する識別子である。締め時刻使用終了日時は、締め時刻indexが示す締め時刻における集計の実施を終了した日時をUTCで示す。締め時刻indexは使用終了の対象となる締め時刻を図７におけるIDの値で示す。図９は、一次集計におけるスケジューラ（７）と一次集計部（６）の処理を示すフローチャートである。スケジューラ（７）は、システムのタイマーイベントにより、所定時間で処理が起動されるようになっている。スケジューラ（７）は、図７に示す締め時刻一覧より、締め時刻と夏時間の情報を取得し、現在時刻との比較を行う（ステップS1001〜S1003）。締め時刻に一致し集計時刻に一致すると判断された場合には、さらに図８と比較し、有効な集計時刻であるかを判断する（ステップS１００５）。有効な集計時刻である場合には、一次集計部（６）の処理を実行する（ステップS1008〜S1012）。有効な集計時刻でない場合には、スケジューラ（７）は、次の集計時刻の判断を繰り返す（ステップS１００６）。一次集計部（６）は、テナントIDおよび利用サービス毎に集計時刻までの集計を実施する（ステップS1010）。一次集計部（６）の処理が終了すると、スケジューラに戻り、スケジューラ（７）は処理を完了する（ステップS1007）。スケジューラ（７）は、締め時刻
集計処理は、テナントIDおよび利用サービス毎で繰り返される。
【００２９】
図１０は、二次集計部（１１）における二次集計処理を示すフローチャートである。二次集計部（１１）は、管理サービス（１２）から入力された集計対象テナントID及びテナント管理情報（図２）、締め時刻一覧（図７）より、締め時刻を取得する（ステップS１１０１）。二次集計部（１１）は、管理サービス（１２）から入力された集計の所定期間、1日単位の集計を繰り返す（ステップS１１０２〜S１１１２）。各集計日（ｄ）について、締め時刻一覧（図７）から二次集計する一次集計値の数を算出（ｎ）する（ステップS１１０３、S１１０４）する。さらに、締め時刻使用終了日時一覧（図８）を元に一次集計値の数から差し引く集計値の数を算出（N）して、差し引く（ステップS１１０５〜S１１０９）。二次集計部（１１）は、こうして求めた数の一次集計値分を集計して二次集計値とする（ステップS１１１０〜S１１１１）。
【００３０】
以上の構成により、システムのコスト増を避けつつ、使用量ログ集計の負荷増加を避けることができる。さらに、サービスの提供開始以降、つまり、使用量ログ収集開始以降、途中から締め時刻を複数に増やすことができる。具体的には、サービスの開始時には1つの締め時刻で始めて、必要に応じて締め時刻を増やした集計を行うことができる。
【００３１】
なお、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施例の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【符号の説明】
【００３２】
１  印刷サービス
２  帳票サービス
３  ログ収集部
４  使用量ログデーターベース
５  一次集計データベース
６  一次集計部
７  スケジューラ
９  テナント管理情報データベース
１０  締め時刻データベース
１１  二次集計部
１２  管理サービス
【図１】
2014164546.tif 000003
【図２】
2014164546.tif 000004
【図３】
2014164546.tif 000005
【図４】
2014164546.tif 000006
【図５】
2014164546.tif 000007
【図６】
2014164546.tif 000008
【図７】
2014164546.tif 000009
【図８】
2014164546.tif 000010
【図９】
2014164546.tif 000011
【図１０】
2014164546.tif 000012