(57)【要約】      （修正有）【課題】クラウド環境の印刷システムでは、ワールドワイドでサービスが使用されるため、テナントごとに２４時間常に使用されるようになる。そのため、印刷システムは２４時間万遍無く来るクライアントからのリクエストをデータベースにアクセスしながら処理し、レスポンスを遅延することなく返す必要がある。クライアントのリクエスト処理を行っていると同時にデータベースアクセスしながら、クライアントのリクエスト処理をロックすることなく、保存データの削除処理を効率良く行う方法を提供する。【解決手段】文書情報、印刷履歴情報をプリンタごと、ユーザーごとのデータベースファイルに分割しもち、それぞれのデータベースファイルのアクセス情報を管理し、アクセス情報を確認しながら個々のデータベースファイルにデータ整理を行う。【選択図】図１
2015005148.tif 000002
【特許請求の範囲】
【請求項１】
入稿された文書データをクライアント端末（１０１〜１０３）からのユーザー操作による印刷要求により印刷データを作成し、プリンタ（１０５〜１０８）からの印刷データ取得要求において印刷データを提供するクラウド上の印刷システムにおいて以下の特徴をもつ。
プリントサーバ（１０４）が、印刷する文書データ（６０４）の文書情報（５０１）をユーザーごとのデータベースファイル（９０４，９０５）で管理し、印刷履歴情報（５２１）をプリンタごとのデータベースファイル（９０１〜９０３）で管理し、それぞれのデータベースファイルと文書データ、印刷データをテナントごとと、ユーザー・プリンタごとの階層に保存する手段（図６）、
プリントサーバ（１０４）が、保存データの削除処理を行う場合、前記ユーザーごと、またはプリンタごとのデータベースファイル単位に並行で整理処理を実行する手段（Ｓ１００４）、
プリントサーバ（１０４）がデータベースファイル（９０１〜９０５）にアクセスする情報をデータベースリクエストキュー（７１１）として管理し、保存データの削除処理時にデータベースリクエストキュー（７１１）に登録されているデータベースファイル（９０１〜９０５）がある場合は保存データの削除処理を中断し、保存データの削除処理時にデータベースリクエストキュー（７１１）に登録されているデータベースファイル（９０１〜９０５）がない場合に保存データの削除処理を実行する手段を有することを特徴とする印刷システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ整理処理を行う印刷システム、方法、及びプログラムに関する。
【背景技術】
【０００２】
印刷システムでは、他サービス等から入稿された印刷を行う文書データは再印刷のためにある一定期間システムで保存する。一定期間過ぎるとシステムで自動的に削除を行う。また、印刷履歴情報に関して無限に履歴データを保管することはストレージのサイズを圧迫することになるため決められた期間保存、それを超えたらデータの削除を行う。ここで、保存期限外の印刷に関するデータを削除することを本願明細書においてはデータの整理処理と呼ぶこととする。
【０００３】
従来、オプレス版の印刷システムでは、ユーザーが印刷する時間、つまり、業務時間が決まっており、業務時間外の定刻時に保存期限が過ぎた文書データ、文書情報、印刷履歴情報の削除をシステムが自動的に行っていた。
【０００４】
特許文献１では、保存されているデジタル画像データを保管開始日からの経過期間を計測し期限切れを検出し、センタサーバが保管するデジタル画像の中の期限切れのデジタル画像を消去する方法が提案されている。
【０００５】
また、特許文献２では、印刷装置内の保存されているデータを消去する方法が提案されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平１１−２０３３６０号公報
【特許文献２】特開２００５−３１３５６８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
近年、クラウドサービスとしてインターネット上にサービスを公開することによりビジネス展開がされてきている。印刷システムもインターネット上のプリントサービスとして機能を提供することが求められてきている。クラウドサービスとしてサービスを提供することは、大規模なデータセンター上にプリントサーバを配置することで顧客ごとのハードウェアの管理が不要となり、またサーバの負荷に応じてリソースを追加するようなことが容易に行えるといったさまざまなメリットがある。
【０００８】
クラウド環境の印刷システムでは、ワールドワイドでサービスを公開し、使用されるため、テナントごとに２４時間常に使用されるようになる。そのため、印刷システムは２４時間万遍無く来るクライアントからのリクエストをデータベースにアクセスしながら処理し、遅延することなくレスポンスを返す必要がある。更にクライアントのリクエスト処理を行っていると同時にデータベースアクセスしながら、クライアントのリクエスト処理をロックすることなく、データの整理処理を効率良く行う方法が求められる。
【０００９】
そこで、本発明では、クライアントのリクエスト処理のためのデータベースアクセス処理と同時に効率のよいデータ整理処理を実行する方法を提案することを目的とする。
【課題を解決するための手段】
【００１０】
入稿された文書データをクライアント端末（１０１〜１０３）からのユーザー操作による印刷要求により印刷データを作成し、プリンタ（１０５〜１０８）からの印刷データ取得要求において印刷データを提供するクラウド上の印刷システムにおいて以下の特徴をもつ。
【００１１】
プリントサーバ（１０４）が、印刷する文書データ（６０４）の文書情報（５０１）をユーザーごとのデータベースファイル（９０４，９０５）で管理し、印刷履歴情報（５２１）をプリンタごとのデータベースファイル（９０１〜９０３）で管理し、それぞれのデータベースファイルと文書データ、印刷データをテナントごとと、ユーザー・プリンタごとの階層に保存する手段（図６）、
プリントサーバ（１０４）が、保存データの削除処理を行う場合、前記ユーザーごと、またはプリンタごとのデータベースファイル単位に並行で整理処理を実行する手段（Ｓ１００４）、
プリントサーバ（１０４）がデータベースファイル（９０１〜９０５）にアクセスする情報をデータベースリクエストキュー（７１１）として管理し、保存データの削除処理時にデータベースリクエストキュー（７１１）に登録されているデータベースファイル（９０１〜９０５）がある場合は保存データの削除処理を中断し、保存データの削除処理時にデータベースリクエストキュー（７１１）に登録されているデータベースファイル（９０１〜９０５）がない場合に保存データの削除処理を実行する手段を有することを特徴とする印刷システム。
【発明の効果】
【００１２】
本発明では、文書情報、印刷履歴情報をプリンタごと、ユーザーごとのデータベースファイルに分割しもち、それぞれのデータベースファイルのアクセス情報を管理し、アクセス情報を確認しながら個々のデータベースファイルにデータ整理を行う。これにより、クライアントのリクエスト処理のためのデータベースアクセス処理と同時に効率のよいデータ整理処理を実行する印刷システムが実現できる。
【図面の簡単な説明】
【００１３】
【図１】ネットワーク構成を示すブロック図
【図２】プリントサーバ、クライアント端末、プリンタのハードウェア構成図
【図３】プリントサーバ、クライアント端末、プリンタのモジュール構成図
【図４】プリントサーバのソフトウェア構成図
【図５】プリントサーバで管理する文書情報、印刷ジョブ情報、印刷履歴情報の構成図
【図６】プリントサーバの文書情報、印刷ジョブ情報、印刷履歴情報、文書データ、印刷データの管理階層の概念図
【図７】データベースサービスのデータベース管理情報とデータベースリクエストキュー情報の構成図
【図８】印刷システムの処理シーケンス
【図９】データ整理処理の動作図
【図１０】データ整理処理の処理フロー
【発明を実施するための形態】
【００１４】
以下、本発明を実施するための最良の形態について図面を用いて説明する。
【００１５】
［実施例１］
図１は、本発明の実施の形態に係る印刷システムの全体構成を示す図である。
【００１６】
図１において、クライアント端末１０１〜１０３、プリントサーバ１０４、プリンタ１０５〜１０８は、ネットワーク１０９〜１１１を介して接続されている。図において、クライアント端末１０１〜１０３、プリンタ１０５〜１０８は、複数台接続されていることを仮定している。ネットワーク１０９〜１１１は、例えば、インターネット等のＬＡＮ、ＷＡＮ、電話回線、専用デジタル回線、ＡＴＭやフレームリレー回線、ケーブルテレビ回線、データ放送用無線回線等のいずれである。またこれらの組み合わせにより実現される、いわゆる通信ネットワークである。
【００１７】
ネットワーク１０９〜１１１は、データの送受信が可能であればよい。そして、クライアント端末１０１〜１０３からプリントサーバ１０４、プリンタ１０５〜１０８への通信手段、プリンタ１０５〜１０８からプリントサーバ１０４への通信手段は異なっていてもよい。クライアント端末１０１〜１０３は、例えば、デスクトップパソコン、ノートパソコン、モバイルパソコン、ＰＤＡ（パーソナルデータアシスタント）等から成るが、プログラムの実行環境が内蔵された携帯電話であってもよい。
【００１８】
クライアント端末１０１〜１０３では、Ｗｅｂブラウザ（インターネットブラウザ、ＷＷＷブラウザ、Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂの利用に供するブラウザ）等のプログラムを実行する環境が内蔵されている。プリントサーバ１０４は、印刷する文書を識別する情報と、出力先プリンタを印刷リクエストと共にクライアント端末１０１〜１０３のＷｅｂブラウザから受ける。そして、認証サーバ１１２にそのリクエストの妥当性を確認し、認証サーバ１１２からユーザ情報を得る。
【００１９】
そして、印刷指示を行うコマンドを含めたレスポンス画面をクライアント端末１０１〜１０３のＷｅｂブラウザに返す。プリントサーバ１０４は、文書データを元に印刷データの生成を開始する。クライアント端末１０１〜１０３のＷｅｂブラウザは、指定のプリンタに対し受け取った印刷コマンドを発行する。プリンタ１０５〜１０８は、クライアント端末１０１〜１０３のＷｅｂブラウザから印刷コマンドを受けると、プリントサーバ１０４から印刷データを取得し印刷を行う。
【００２０】
図２は、本発明の実施形態に係る印刷システムのクライアント端末１０１〜１０３、プリントサーバ１０４とプリンタ１０５〜１０８のハードウェア構成図である。
【００２１】
図２において、２０２は装置全体の制御を行うＣＰＵであり、ハードディスク（ＨＤＤ）２０５に格納されているアプリケーションプログラム、ＯＳ等を実行し、ＲＡＭ２０３にプログラムの実行に必要な情報、ファイル等を一時的に格納する制御を行う。２０４は記憶手段としてのＲＯＭであり、内部には、基本Ｉ／Ｏプログラム等のプログラム、印刷処理の際に使用する印刷データ、プリンタ情報等の各種データを記憶する。２０３は一時記憶手段としてのＲＡＭであり、ＣＰＵ２０２の主メモリ、ワークエリア等として機能する。
【００２２】
２０５は外部記憶手段の一つであり、大容量メモリとして機能するハードディスク（ＨＤＤ）である。Ｗｅｂブラウザ等のアプリケーションプログラム、プリントサーバプログラム、ＯＳ、関連プログラム等を格納している。２０６は表示手段であるディスプレイであり、キーボード２０７から入力したコマンドや、プリントサーバ１０４に入稿された文書情報等を表示したりするものである。２０８は外部装置Ｉ／Ｆであり、プリンタ、ＵＳＢ機器、周辺機器を接続するためのＩ／Ｆである。２０７は指示入力手段であるキーボードである。
【００２３】
２０１はシステムバスであり、印刷システムのプリントサーバ内におけるデータの流れを司るものである。２０９はネットワークインタフェースカード（ＮＩＣ）であり、該インタフェース２０９、ネットワーク１０９〜１１１を介して外部装置とのデータのやり取りを行う。なお、上記コンピュータの構成はその一例であり、図２の構成例に限定されるものではない。例えば、データやプログラムの格納先は、その特徴に応じてＲＯＭ、ＲＡＭ、ＨＤＤなどで変更することも可能である。
【００２４】
また、２０９はプリンタ１０５〜１０８のコントローラであり、プリンタの制御系を司る機器である。２１０は装置全体の制御を行うＣＰＵであり、システムバス２１８に接続される各種デバイスとのアクセスを統括的に制御する。この制御は、ROM２１２に記憶された制御プログラム等あるいはディスクコントローラ(DKC２１６)を介して接続された外部メモリ２２３に記憶された制御プログラムやリソースデータ(資源情報)等に基づく。２１１はCPU２１０の主メモリ、ワークエリア等として機能するRAMで、図示しない増設ポートに接続されるオプションRAMによりメモリ容量を拡張することができるように構成されている。
【００２５】
２１３は大容量メモリとして機能する外部記憶手段であり、プルプリントアプリケーションプログラム、認可トークン取得アプリケーションプログラム及び関係プログラム等を格納している。２２１は操作パネル（操作部）でプルプリントの操作を行うユーザインタフェースやプルプリント切り替えボタンが配置される。また、プリンタ１０５〜１０８の動作モード等の設定やプリンタ１０５〜１０８の動作状況の表示、複写指定等の操作を行うためのボタンおよび液晶パネルやLED２１４等の表示部も配置される。２１９は、ネットワークインタフェースカード（ＮＩＣ）であり、該インタフェース２１９を介して外部装置とのデータのやり取りを行う。
【００２６】
なお、本図で示したプリントエンジン２２０は既知の印刷技術を利用するものであり、好適な実施系として例えば電子写真方式(レーザービーム方式)やインクジェット方式、昇華方(熱転写)方式等が挙げられる。２１５のラスタコントローラは、ＰＤＬ言語・ＰＤＦ言語である印刷データを画像データに変換するコントローラである。２１７の機器I/Fは、USB等で接続可能な外部機器との接続I/Fである。
【００２７】
図３は、本発明の実施形態に係る印刷システムのシステム構成図である。プリントサーバ１０４は、他サービス、または他プログラムから投入される各ユーザーの文書データ６０４や後述する文書情報５０１をデータベースサービス３０９に送る。データベースサービス３０９は、受信した文書データ６０４や文書情報５０１をストレージ３０７に管理する。データベースサービス３０９は、ストレージ３０７にユーザー階層６０２を作成し、そのユーザー階層６０２に文書データ６０４、文書情報５０１を保存する。更に、データベースサービス３０９は、文書情報５０１をユーザーごとのデータベースファイルに保存する。
【００２８】
このとき、データベースサービス３０９は、プリントサーバ１０４の指示により文書データ６０４の保存パスを文書情報５０１の文書保存パス５０６に保持する。また、データベースサービス３０９は、ストレージ３０７にプリンタ階層６０３を作成し、プリンタごとに印刷ジョブ情報５１１、印刷履歴ジョブ情報５２１、印刷データ６０５を管理する。更にデータベースサービス３０９は、印刷ジョブ情報５１１、印刷履歴ジョブ情報５２１をプリンタごとのデータベースファイルに保存する。
【００２９】
また、データベースサービス３０９は、プリンタ情報６０６をテナントごとのテナント階層６０１を作成し、テナントごとのデータベースファイルとして保存する。印刷データのデータフォーマットは、ＰＤＦ等の形式である。また、ストレージ３０７はプリントサーバ１０４の情報処理装置に内蔵するＨＤＤまたは、外部接続しているＨＤＤ、または、ネットワークストレージ等の記憶装置である。
【００３０】
プリントサーバ１０４は、Ｗｅｂブラウザ３０１からＷｅｂアプリケーション３０２を介し印刷リクエストを文書ＩＤと共に受ける。そして、指定の文書ＩＤに対する文書データ６０４をデータベースサービス３０９から取得する。そして、印刷データ生成サービス３０６にその文書データを送る。また、プリントサーバ１０４は、データベースサービス３０９を介して、印刷ジョブ情報５１１のデータベースファイルにその文書に対する印刷ジョブ情報５１１を登録する。印刷データ生成サービス３０６では、文書データをプリンタが解釈できるデータフォーマットの印刷データ６０５に変換し、プリントサーバ１０４に送る。
【００３１】
プリントサーバ１０４は、データベースサービス３０９を介して、ストレージ３０７のユーザー階層６０３に印刷データ６０５を保存する。そして、データベースサービス３０９は、プリントサーバ１０４の指示により印刷ジョブ情報５１１の印刷データ保存パス５１４に印刷データ６０５の保存パスを登録する。
【００３２】
次に、Ｗｅｂアプリケーション３０２は、クライアント端末１０１〜１０３に動作しているＷｅｂブラウザ３０１で表示可能なＷｅｂページを作成し、Ｗｅｂブラウザ３０１からのリクエストに応答し、作成したＷｅｂページを返信する。Ｗｅｂアプリケーション３０２は、Ｗｅｂブラウザ３０１から印刷リクエストを受けると、プリントサーバ１０４に文書ＩＤとともに印刷リクエストを送る。そのレスポンスにプリンタ１０５〜１０８のプルプリントアプリケーション３０４へのリクエストを含めた応答メッセージを作成し応答する。プリンタ１０５〜１０８のプルプリントアプリケーション３０４は、Ｗｅｂブラウザ３０１から印刷リクエストを受け付ける。
【００３３】
プルプリントアプリケーション３０４は、印刷リクエストを受けるとプリントサーバ１０４のＷｅｂサービス３０３から印刷データを取得し、プリンタ１０５〜１０８で印刷を行う。次に、Ｗｅｂサービス３０３は、プリンタ１０５〜１０８のプルプリントアプリケーション３０４からの印刷データ取得リクエストを受けると、リクエストの妥当性を認証サービス３１０に確認する。確認が取れるとプリントサービス３０５にそのリクエストを送る。Ｗｅｂサービス３０３は、プリントサービス３０５から応答として印刷データが含まれるデータストリームを受け取ると、その中から一部の印刷データを読み込み、その一部のデータをプリンタ１０５〜１０８からのリクエストのレスポンスに返し続ける。
【００３４】
印刷データのすべてをプリンタ１０５〜１０８に送るまで繰り返す。また、プリントサービス３０５は、Ｗｅｂサービス３０３を介してプリンタ１０５〜１０８から印刷処理における印刷ジョブの完了通知を受け取る。プリントサービス３０５は、印刷履歴ジョブ情報をデータベースサービス３０９に送る。データベースサービス３０９は、印刷履歴ジョブ情報をストレージ３０７のプリンタ階層５２１に保存する。
【００３５】
次に、認証トークン取得アプリケーション３０８は、プルプリントアプリケーション３０４がＷｅｂサービス３０３にアクセスするとき、アプリケーションに適したロールの認可トークンを認証サービス３１０から取得しアプリケーションに返す。認証サービス３１０は、認可トークンを認証サービス３１０からの認可トークン生成リクエストに対し、指定のロールの認可トークンを生成し返す。また、認証サービス３１０は、Ｗｅｂサービス３０３からの認可トークンの妥当性チェックリクエストに対し、妥当性を確認しその結果を返す。
【００３６】
また、プリントサービス３０５、印刷データ生成サービス３０６、Ｗｅｂアプリケーション３０２、Ｗｅｂサービス３０３はそれぞれ独立したプログラムであり、それぞれ別々の情報処理装置に配置することが可能である。これらのプログラムはそれぞれネットワークに繋がった情報処理装置に配置し、それぞれのプログラム間で通信を行う。またこれらのプログラムを同情報処理装置に配置することも可能である。
【００３７】
図４は、本発明の実施形態に係る印刷システムのソフトウェア構成図であり、図５は印刷システムが管理するデータベースファイルのデータ構成図である。また、図６は印刷システムがストレージ３０７に保持する各データの構成階層図である。図４、５、６を用いて、他サービスまたは他プログラムから印刷システムへの文書入稿と、Ｗｅｂブラウザ３０１をユーザーが操作して入稿を受けた文書の印刷を行う印刷システムの処理について説明する。
【００３８】
他サービスまたは他プログラムが、文書データをプリントサーバ１０４に位置するＷｅｂサービス３０３に送信する。Ｗｅｂサービス３０３はその文書データをリクエスト受付部４１０で受信すると、Ｗｅｂサービス３０３のトークン確認部４０９はそのリクエストに付随する認可トークンを認証サービス３１０に渡し、このトークンの妥当性を認証サービス３１０で検証する。認証サービス３１０は、トークンの妥当性を検証しＷｅｂサービス３０３にその結果を返す。Ｗｅｂサービス３０３では、妥当であると判断されたリクエストであれば、Ｗｅｂサービス３０３は、認証サービス３１０からユーザー情報を受け取る。
【００３９】
Ｗｅｂサービス３０３は、受け取ったユーザー情報と文書データをプリントサービス３０５の文書データ管理部４０１に送信する。プリントサービス３０５の文書データ管理部４０１は、受信した文書データをデータベースサービス３０９のデータファイル管理部４０７に送信する。データファイル管理部４０７は、ユーザー情報とユーザー情報に含まれるテナント情報をもとにストレージ３０７のテナント階層６０１のユーザー階層６０２に文書データ６０４を保存する。
【００４０】
更に文書データ管理部４０１は、その文書の文書情報をデータベースサービス３０９のデータベース管理部４０６に送る。データベース管理部４０６は、文書名５０３と文書ＩＤ５０２と、文書のステータス５０４と文書の受付日５０５をストレージ３０７のユーザー階層６０２の文書情報５０１に保存する。更に、データベース管理部４０６は、文書データ６０４の保存パスを示す文書保存パス５０６を文書保存パス５０６に保存する。ステータス５０４は「受信中」「受信エラー」「待機中」「印刷待機中」「印刷待ち」「印刷中」「印刷終了」「印刷エラー」「キャンセル終了」等がある。
【００４１】
更にデータベース管理部４０６は文書保存期限として入稿日から１日後の日付を文書保存期限として保存する。この日付は後述する文書の整理処理の整理対象文書を抽出する際に使用する。
【００４２】
次にＷｅｂブラウザ３０１をユーザーが操作して文書の印刷を行う印刷システムの処理について説明する。Ｗｅｂブラウザ３０１から印刷するプリンタ名と文書ＩＤが指定された印刷リクエストが来ると、Ｗｅｂアプリケーション３０２のリクエスト受付部４１２が受信する。Ｗｅｂアプリケーション３０２のトークン確認部４１１はそのリクエストに付随する認証トークンを認証サービス３１０に渡し、このトークンの妥当性を認証サービス３１０で検証する。
【００４３】
認証サービス３１０は、トークンが妥当であると判断するとリクエスト元アプリケーションであるＷｅｂアプリケーション３０２にその結果を返す。Ｗｅｂアプリケーション３０２では、妥当であると判断されたリクエストであれば、認証サービス３１０からユーザー情報を受け取る。ここで、ユーザー情報は、ユーザー名と、ユーザーを識別するユーザーＩＤとテナント情報から構成される。Ｗｅｂアプリケーション３０２では、認証サービス３１０からユーザー情報を受け取ると、印刷リクエストをプリントサービス３０５の文書データ管理部４０１に印刷を行うプリンタ名と文書ＩＤ、ユーザー情報を送る。
【００４４】
文書データ管理部４０１では、ユーザー情報とプリンタ名をプリンタ情報管理部４０３に渡す。プリンタ情報管理部４０３は受け取ったとテナント情報とプリンタ名をデータベースサービス３０９のデータベース管理部４０６に渡し、データベース管理部４０６からプリンタ情報を取得する。ここで、データベース管理部４０６は、ストレージ３０７のテナント情報からテナント階層６０１を特定し、プリンタ情報６０６からプリンタ名に一致するプリンタ情報を取得し、プリンタ情報管理部４０３に返す。また、プリンタ情報はユーザーが指定するプリンタ名とそのプリンタと特定するプリンタＩＤと、プリンタの製品モデルをあらわすモデル名からなる。
【００４５】
更に、後述するＷｅｂブラウザ３０１がプリンタに印刷リクエストを出すときにアクセスするためのＩＰアドレスから構成される。プリンタ情報を受け取ったプリンタ情報管理部４０３は、プリンタ情報を文書データ管理部４０１に返す。文書データ管理部４０１は、プリンタ情報とユーザー情報と文書ＩＤを印刷ジョブ管理部４０２に送る。印刷ジョブ管理部４０２は、データベース管理部４０６にユーザー情報と文書ＩＤを渡し、文書情報５０１を取得する。印刷ジョブ管理部４０２は、文書情報５０１から文書保存パス５０６をデータファイル管理部４０７に渡し、印刷する文書データ６０４を取得する。
【００４６】
そして、印刷ジョブ管理部４０２は、プリンタ情報のモデル名、ユーザー情報とともに、印刷データ生成サービス３０６の印刷データ生成部４０５に送る。印刷データ生成部４０５では、受け取った文書データをプリンタモデルに対応したプリンタが解釈できる印刷データを生成する。生成した印刷データをプリントサービス３０５の印刷ジョブ管理部４０２に送る。印刷ジョブ管理部４０２では、印刷データをデータファイル管理部４０７に送り、データファイル管理部４０７は、テナント階層６０１のプリンタ階層６０３の印刷データ６０５に保存し、印刷データ保存パスを印刷ジョブ管理部４０２に返す。
【００４７】
印刷ジョブ管理部４０２は、データデータベース管理部４０６に印刷データ保存パスを送る。印刷ジョブ管理部４０２では、印刷データ保存パスを含めた印刷ジョブ情報５１１を作成し、ユーザー情報とプリンタ名と印刷ジョブ情報５１１をデータベース管理部４０６に渡す。データベース管理部４０６は、ユーザー情報とプリンタ名からストレージ３０７のテナント階層６０１とプリンタ階層６０２を特定し印刷ジョブ情報５１１を登録する。
【００４８】
ここで、印刷ジョブ情報５１１には、印刷ジョブを特定する印刷ジョブＩＤ５１２とステータス５１３と印刷開始時間５１４とプリンタ名と生成した印刷データを保存する。更に、ユーザー情報に含まれるユーザーＩＤと後述の印刷データ生成サービス３０６が生成し受け取った印刷データ６０５を保存する印刷データ保存パス５１７から構成される。また、印刷ジョブ情報５１１は印刷リクエスト順に情報を保持するリストであり、印刷スケジュール順を管理するリストである。印刷ジョブ管理部４０２は、このリストに印刷ジョブ情報５１１を登録後、文書データ管理部４０１を介してＷｅｂアプリケーション３０２に印刷リクエストの応答を返す。
【００４９】
この応答には印刷ジョブＩＤ５１２が含まれる。Ｗｅｂアプリケーション３０２は、この応答を決起に、Ｗｅｂブラウザ３０１を介してプリンタ１０３〜１０５のプルプリントアプリケーション３０４に印刷リクエストを行う。このとき、印刷ジョブＩＤ５１２とプリンタ名とテナント情報を印刷リクエストで渡す。
【００５０】
プルプリントアプリケーション３０４は、Ｗｅｂブラウザ３０１からの印刷リクエストを受信する。そして、認可トークン取得アプリケーション３０９に認可トークン生成要求を送る。この要求にはプルプリントアプリケーション用のロールを指定し要求する。認可トークン取得アプリケーション３０９は、プルプリントアプリケーション３０４からのトークン生成要求を受けると、指定されたロール情報と共に認証サービス３１０に認可トークンの生成を依頼する。認可トークン取得アプリケーション３０９は、認証サービス３１０からトークンを取得し、プルプリントアプリケーション３０４にそのトークンを送る。
【００５１】
プルプリントアプリケーション３０４は、認可トークン取得アプリケーション３０９から認可トークンを受け取ると、プリントサーバ１０４への印刷ジョブ取得を行う。プルプリントアプリケーション３０４は、認可トークンと印刷ジョブＩＤ５１２とプリンタ名とテナント情報を含めた印刷ジョブ取得要求をプリントサーバ１０４のＷｅｂサービス３０３に送る。Ｗｅｂサービス３０３のトークン確認部４０９はそのリクエストに付随する認可トークンを認証サービス３１０に渡し、このトークンの妥当性を認証サービス３１０で検証する。認証サービス３１０は、リクエスト元アプリケーションが処理してよいロールであるかを検証する。妥当であると判断するとリクエスト元アプリケーションであるＷｅｂサービス３０３にその結果を返す。Ｗｅｂサービス３０３は、プルプリントアプリケーション３０４からの印刷ジョブ取得要求をプリントサービス３０５に送る。
【００５２】
プリントサービス３０５の印刷ジョブ管理部４０２では、Ｗｅｂサービス３０３からの印刷ジョブ要求を受け取る。そして、取得した印刷ジョブＩＤ５１２とテナント情報とプリンタ名をデータベース管理部４０６に渡し、印刷ジョブＩＤ５１２に一致する印刷ジョブ情報５１１を取得する。更に、印刷ジョブ情報５１１の印刷データ保存パス５１７をデータファイル管理部４０７に渡し印刷データ６０５を取得し、Ｗｅｂサービス３０３に印刷データ６０５を送る。Ｗｅｂサービス３０３は、前述したようにプリントサービス３０５の印刷ジョブ管理部４０２への印刷ジョブ取得要求の応答に印刷データが含まれるデータストリームを受け取る。
【００５３】
そして、その中から一部の印刷データを読み込み、その一部のデータをプリンタ１０５〜１０８のプルプリントアプリケーション３０４からのジョブ取得要求の応答に返し続ける。印刷データのすべてをプルプリントアプリケーション３０４に送るまで繰り返す。プルプリントアプリケーション３０４は、Ｗｅｂサービス３０３から印刷データの一部を受信し始めるとその印刷データを、コントローラ２０９に送り、プリンタは印刷を開始する。また、プリンタで印刷が完了するとそれをプルプリントアプリケーション３０４が検知する。印刷の完了を検知するとプルプリントアプリケーション３０４は、Ｗｅｂサービス３０３に印刷完了を通知する。この通知には、印刷ジョブＩＤ５１２とプリンタ名とテナント情報と完了ステータスが含まれる。
【００５４】
Ｗｅｂサービス３０３のリクエスト受付部４０１が完了通知を受け取るとプリントサービス３０５の印刷ジョブ管理部４０２に印刷ジョブＩＤ５１２とプリンタ名とテナント情報と完了ステータスとともに完了通知を送る。印刷ジョブ管理部４０２は、受け取ったテナント情報とプリンタ名と完了ステータスをデータベース管理部４０６に渡し、文書情報５０１のステータス５０４を完了ステータスに更新する。
【００５５】
更に印刷ジョブ管理部４０２は、印刷完了した印刷ジョブの印刷ジョブ情報５１１のレコード削除するようにデータベース管理部４０６に要求する。削除要求を受けたデータベース管理部４０６はテナント階層６０１の印刷ジョブ情報５１１を削除する。また、印刷ジョブ管理部４０２は、印刷完了した印刷データを削除するようにデータベース管理部４０６に要求する。削除要求を受けたデータベース管理部４０６はテナント階層６０１の印刷データ６０５を削除する。また、印刷ジョブ管理部４０２は印刷履歴情報を作成し、印刷履歴情報をデータベース管理部４０６に渡す。
【００５６】
データベース管理部４０６はテナント階層６０１のプリンタ階層６０３に印刷履歴情報５２１として保存する。印刷履歴情報５２１は、印刷ジョブＩＤ、完了ステータス５２２、印刷完了時間５２３、印刷を行ったプリンタ名、印刷を行ったユーザーのユーザーＩＤ、印刷履歴情報を保存する期間を示す履歴保存期間５２４から構成される。履歴保存期間５２４は、印刷完了日から２日後の日時を履歴保存期間５２４として保存する。この日付は後述する印刷履歴の整理処理の整理対象印刷履歴情報を抽出する際に使用する。
【００５７】
ここまでが、Ｗｅｂブラウザ３０１をユーザーが操作して文書の印刷を行う印刷システムの処理の説明である。詳しくは、プリントサービス３０５の指示によりデータベースサービス３０９が、テナント階層、ユーザー階層、プリント階層に文書データ、文書情報、印刷情報、印刷データ、印刷履歴を管理する。Ｗｅｂブラウザ３０１からの印刷要求によってこれらのデータを取得あるいは登録し、印刷処理を行う。
【００５８】
次に、図８で本発明の実施形態に係る印刷システムの印刷処理シーケンスについて説明する。Ｓ８０１でクライアント端末１０１のＷｅｂブラウザ３０１にユーザーが印刷実行の操作を行うと、Ｓ８０２でクライアント端末１０１のＷｅｂブラウザ３０１がプリントサーバ１０４に認証トークンと文書ＩＤ５０２、プリンタ名とともに印刷要求を行う。Ｓ８０２でプリントサーバ１０４は認証サービス３１０にユーザー情報取得を行う。Ｓ８０４で認証サービス３１０がユーザー情報をプリントサーバ１０４に送る。Ｓ８０５でプリントサーバ１０４は、指定されたプリンタ名がプリンタ情報６０６に存在するかを確認し、存在する場合は、Ｓ８０６で印刷ジョブＩＤ５１２を生成する。
【００５９】
Ｓ８０７で、プリントサーバ１０４は印刷ジョブ情報５１１を登録し、Ｓ８０８で、Ｗｅｂブラウザ３０１に印刷ジョブＩＤ５１２、テナント情報、プリンタ名を含めた印刷コマンドを返す。更に、プリントサーバ１０４はＳ８０９で、印刷データの生成を開始する。
【００６０】
次にＳ８１０で、Ｗｅｂブラウザ３０１がプルプリントアプリケーション３０４に印刷要求を送ると、Ｓ８１１でプルプリントアプリケーション３０４は、認可トークン取得アプリケーション３０９に認可トークン生成要求を行う。更にＳ８１２で認可トークン取得アプリケーション３０９が認証サービス３１０に認可トークン生成要求を行う。Ｓ８１３認証サービス３１０が認可トークンを認可トークン取得アプリケーション３０９に返し、Ｓ８１４で認可トークン取得アプリケーション３０９が認可トークンをプルプリントアプリケーション３０４に返す。Ｓ８１５で、プルプリントアプリケーション３０４は、印刷ジョブＩＤ５１２、テナント情報、プリンタ名とともにプリントサーバ１０４に印刷データ要求を行う。
【００６１】
Ｓ８１６で、プリントサーバ１０４は、認証サービス３１０に対し認可トークンの妥当性確認を行う。Ｓ８１７で、認証サービス３１０から確認結果をプリントサーバ１０４が受け取ると、Ｓ８１８で、プリントサーバ１０４は印刷データの特定を取得した印刷ジョブＩＤ５１２、テナント情報、プリンタ名５３３をもとに行う。そして、特定した印刷データをＳ８１９で、プルプリントアプリケーション３０４に印刷データを送信する。Ｓ８２０で、プリンタ１０５〜１０８で印刷を行う。印刷完了をプルプリントアプリケーション３０４が検知するとＳ８２１で、プルプリントアプリケーション３０４からプリントサーバ１０４に印刷完了通知を出す。以上が、本発明の印刷システムの印刷処理シーケンスの説明となる。
【００６２】
次に図７は、本発明の実施形態に係るデータベースサービス３０９が管理するデータベースファイルの管理リストである。また、図９は、本発明の印刷システムのデータ整理処理の動作図である。図７、９を用いて本発明の印刷システムのデータ整理処理について説明する。
【００６３】
印刷システムでは、ストレージ３０７に保存する文書データ６０４、文書情報５０１、印刷履歴情報５２１を各文書保存期限５０７、履歴保存期限５２４に従い、保存期限切れの文書の文書情報レコード、文書データ、印刷履歴情報レコードの削除を行う。この処理をデータの整理処理と呼ぶ。データ整理が実行された文書や、印刷履歴はデータベースまたはデータファイルとして削除するため、ユーザーからは参照できないリソースとなる。印刷システムのデータ整理処理は１日の決められた定時に実行を開始する。
【００６４】
データベースサービス３０９は、ストレージ３０７に文書情報５０１はデータベースファイル９０１〜９０５として１ユーザー１ファイルとしてテナント階層６０１のユーザー階層６０２配下に保存している。また、印刷履歴情報５２１も同様に１プリンタ１ファイルのデータベースファイル９０１〜９０５に保存する。これらのデータベースファイル９０１〜９０５の情報をデータベースファイル情報７０１としてデータベースサービス３０９が管理する。データベースファイル情報７０１は、テナント情報７０２と、ユーザーＩＤ/プリンタ名７０３とデータベースファイル９０１〜９０５のストレージ３０７上の保存パス７０４からなる。テナント情報７０２とユーザーＩＤ/プリンタ名７０３はテナント階層６０１、ユーザー階層６０２/プリンタ階層６０３を特定する情報となる。
【００６５】
更に、データベースファイル情報７０１は、整理開始日時７０５と整理完了日時７０６とデータベース種別７０７も含む構成となる。データベース種別７０７は、文書情報５０１、印刷履歴情報５２１、印刷ジョブ情報５１１、プリンタ情報６０６のいずれの情報を保持するか示す種別情報である。また、整理完了日時７０６はデータベースサービス３０９のデータ整理制御部４０８が整理処理を完了したデータベースファイルごとに完了日時を登録する。データ整理制御部４０８は、システム時刻が整理開始日時７０５以降である場合に整理完了日時７０６がそれ以降の日時になっていないデータベースファイル９０１〜９０５は未整理／整理途中のデータベースファイル９０１〜９０５と判断する。
【００６６】
次にデータベースリクエストキュー７１１はデータベースサービス３０９のデータベース管理部４０６が管理するプリントサービス３０５からのデータベースアクセスリクエストをキューイングするリストである。プリントサービス３０５はクライアントからの印刷リクエストまたは、他サービスからの文書入稿リクエストの際にデータベースアクセスリクエストをデータベースサービス３０９のデータベース管理部４０６に送る。データベース管理部４０６は、リクエストごとにセッションＩＤ７１２を発行し、プリントサービス３０５に返す。
【００６７】
プリントサービス３０５はデータベースに対するアクセスのトランザクション単位のリクエストで同じセッションＩＤ７１２をデータベース管理部４０６に送る。更にデータベース管理部４０６は、このセッションＩＤ７１２をデータベースリクエストキュー７１１に保持する。またデータベースリクエストキュー７１１には、リクエスト元サービス７１３としてプリントサービス３０５のＩＰアドレスまたはホスト名を保持する。プリントサービス１０４内の各サービスはすべて冗長構成されていて、複数の同サービスが存在する。
【００６８】
また、データベースリクエストキュー７１１には、プリントサービス３０５が処理するユーザーリクエスト元のユーザー情報としてテナント情報７１４、ユーザーＩＤ/プリンタ名７１５、データベースファイル保存パス７１６を保持する。データベースサービス３０９のデータ整理制御部４０８は、整理を行うデータベースファイル情報７０１のテナント情報７０２、ユーザーＩＤ/プリンタ名７０３、保存パス７０４と一致するデータベースリクエストキュー７１１のテナント情報７１４、ユーザーＩＤ/プリンタ名７１５、保存パス７１６がないかを確認する。
【００６９】
データベースリクエストキュー７１１一致するレコードが存在する場合は、そのデータベースファイル９０１〜９０５はアクセス中だと判断する。そしてデータベースファイル９０１〜９０５の整理処理を中断し、別のデータベースファイル９０１〜９０５の整理処理を実行する。データ整理制御部４０８は、文書情報５０１のデータベースファイル９０４〜９０５の各文書情報の整理を行うと文書保存パス５０６の文書データ６０４を削除する。
【００７０】
以上が、データベースサービス３０９がデータ整理処理時に使用するデータの構成図７とデータファイル９０１〜９０５と文書データ６０４の整理処理に関する処理内容の説明となる。
【００７１】
次に図１０は、本発明の実施形態に係るデータベースサービス３０９が行うデータ整理処理の処理フローである。
【００７２】
データベースサービス３０９のデータ整理制御部４０８は、１日１回の定刻になると整理処理を開始する。Ｓ１００１で、定められた数の同時実行スレッドを作成する。Ｓ１００２で、データ整理制御部４０８は、整理開始日時をデータベースファイル情報７０１の各レコードの整理開始日時７０５に登録する。Ｓ１００３で、データ整理制御部４０８は、データベースファイル情報７０１の整理開始日時７０５と整理完了日時７０６を確認し、整理開始日時過ぎていて整理完了日時していないデータベースファイル９０１〜９０５を抽出する。
【００７３】
Ｓ１００４で、データ整理制御部４０８は、作成した整理実行スレッドを１つのデータベースファイルに割当てる。このとき整理完了日が古いデータベースファイルを優先して整理スレッドに割り当てる。Ｓ１００５で、データ整理制御部４０８は、文書情報５０１と印刷履歴情報５２１のデータベースファイル９０１〜９０５から文書保存期限５０７、履歴保存期限５３４を検索し、保存期限を過ぎているレコードを抽出する。Ｓ１００６で、抽出したレコードがある場合このレコードが整理対象のレコードとなり、Ｓ１００７で、整理を行うデータベースファイル情報７０１のテナント情報７０２、ユーザーＩＤ/プリンタ名７０３、保存パス７０４と一致するデータベースリクエストキュー７１１のテナント情報７１４、ユーザーＩＤ/プリンタ名７１５、保存パス７１６がないかを確認する。
【００７４】
Ｓ１００７で、一致するコードがある場合は、データベースファイル９０１〜９０５へのアクセスリクエストがプリントサービス３０５から来ているときであり、Ｓ１００８で、整理処理を中断／待機する。定められた時間処理を待機するとＳ１００７で、再度一致するレコードを確認する。Ｓ１００７で、一致するレコードがないと確認するとＳ１００９で、文書情報５０１または印刷履歴情報５２１の整理対象レコードの１レコードの整理を実行する。このとき文書情報５０１の整理は文書保存パス５０７を参照し、文書データ６０４を削除する。整理対象の全レコードの整理処理が完了すると整理実行スレッドを全部実行したかを確認して整理処理が完了する。
【００７５】
以上が、本発明の実施形態に係るデータベースサービス３０９が行うデータ整理処理の処理フローの説明となる。
【００７６】
以上が、本発明の印刷システムのデータ整理についての説明になる。詳しくは、データベースリクエストキュー７１１でプリントサービス３０５からのデータベースリクエストを管理しそのキューにリクエストがないデータベースファイル９０１〜９０５ごとにデータ整理を行う。これにより、ユーザーリクエスト（プリントサービスからのリクエスト）に影響を及ぼさない効率的なデータ整理処理が実現可能となる。
【符号の説明】
【００７７】
１０１〜１０３  クライアント端末
１０４  プリントサーバ
１０５〜１０８  プリンタ
１０９〜１１１  ネットワーク
【図１】
2015005148.tif 000003
【図２】
2015005148.tif 000004
【図３】
2015005148.tif 000005
【図４】
2015005148.tif 000006
【図５】
2015005148.tif 000007
【図６】
2015005148.tif 000008
【図７】
2015005148.tif 000009
【図８】
2015005148.tif 000010
【図９】
2015005148.tif 000011
【図１０】
2015005148.tif 000012