JP2014238699A - 文書管理サーバ、文書管理方法、コンピュータプログラム - Google Patents

文書管理サーバ、文書管理方法、コンピュータプログラム Download PDF

Info

Publication number
JP2014238699A
JP2014238699A JP2013120719A JP2013120719A JP2014238699A JP 2014238699 A JP2014238699 A JP 2014238699A JP 2013120719 A JP2013120719 A JP 2013120719A JP 2013120719 A JP2013120719 A JP 2013120719A JP 2014238699 A JP2014238699 A JP 2014238699A
Authority
JP
Japan
Prior art keywords
document
image file
file
cache
folder
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2013120719A
Other languages
English (en)
Other versions
JP6242087B2 (ja
Inventor
外山 正樹
Masaki Toyama
正樹 外山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2013120719A priority Critical patent/JP6242087B2/ja
Priority to US14/298,611 priority patent/US9898463B2/en
Publication of JP2014238699A publication Critical patent/JP2014238699A/ja
Application granted granted Critical
Publication of JP6242087B2 publication Critical patent/JP6242087B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/93Document management systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

【課題】 リクエストされた文書のイメージファイルを作成してクライアントに送信する文書管理サーバにおいて、該イメージファイルをキャッシュしているかどうかを容易に判断できるようにする。【解決手段】 クライアントからリクエストされた文書を特定するための文字列を生成し、当該生成された文字列に基づいて特定されるフォルダ階層構造が、キャッシュ格納領域内に存在するかどうかを判定する。存在しないと判定した場合は、前記リクエストされた文書の実ファイルを取得してイメージファイルを作成し、前記生成された文字列に基づいて特定されるフォルダ階層構造をキャッシュ格納領域内に作成し、更に、当該作成されたフォルダ階層構造のフォルダにイメージファイルをキャッシュとして格納する。【選択図】 図7

Description

本発明は、文書の管理を行う文書管理サーバ、文書管理方法、及びプログラムに関するものである。
文書管理サーバと複数のクライアントとで構成される文書管理システムでは、サーバは、クライアントからリクエストを受信し、当該リクエストされた文書に関する情報をクライアントに送信する。また、特許文献1のように、サーバが、リクエストされた文書のイメージデータ(表示用データ)を作成し、そのイメージデータをクライアントに送信して表示させることにより、クライアントの汎用ブラウザで文書の内容を表示できるようにするシステムもある。
このような文書管理システムにおいて、文書管理サーバは、複数のクライアントから、同一文書に対するリクエストを繰り返し受信する場合がある。これに対し、サーバ側に、該文書のイメージデータを再利用可能なデータ(以下、キャッシュ)として蓄積する機能を設けることで、同一文書に対するリクエストに対して高速に応答できるようにすることが考えられる。
また、特許文献2では、情報実体のキャッシュをメタ情報に基づいて検索できるように蓄積しておき、更に、メタ情報を保存したメタ情報テーブルを用いて、情報実体のキャッシュが既に蓄積されているかどうか検出できるようにしている。
特開2005−222237号公報 特開2000−076257号公報
しかしながら、特許文献2のように、テーブルを使ってキャッシュを参照する手法では、テーブルを格納するための領域が必要であり、物理的な資源(以下、リソース)を消費することになる。
また、クライアントからのリクエストに応じて作成した新しいイメージデータをキャッシュとして保存するたびに、テーブルを更新する必要があるため、クライアントに応答を返す処理の速度に影響を与える恐れもある。
また、メタ情報テーブル内に該当するメタ情報があるか確認し、メタ情報があれば、そのメタ情報に記述されたキャッシュ格納位置情報を用いてキャッシュを検索して、該キャッシュを取得するという手順を踏むので、キャッシュ有無の確認にも時間がかかる。
本発明の文書管理サーバは、クライアントから受信したリクエストに基づいて、当該リクエストされた文書を特定するための文字列を生成する生成手段と、前記生成手段で生成された文字列に基づいて特定されるフォルダ階層構造が、キャッシュ格納領域内に存在するかどうかを判定する判定手段と、前記判定手段で存在しないと判定した場合、前記リクエストされた文書の実ファイルを取得する実ファイル取得手段と、前記実ファイル取得手段で取得した前記実ファイルに基づいて、前記文書のイメージファイルを作成するイメージファイル作成手段と、前記生成手段で生成された文字列に基づいて特定されるフォルダ階層構造を、前記キャッシュ格納領域内に作成し、更に、当該作成されたフォルダ階層構造に、前記イメージファイル作成手段で作成された前記イメージファイルをキャッシュとして格納する格納手段と、前記判定手段で存在すると判定した場合、前記キャッシュ格納領域内の当該特定されるフォルダ階層構造にキャッシュとして格納されているイメージファイルを取得する取得手段と、前記取得されたイメージファイルを前記クライアントに送信する送信手段と、を有することを特徴とする。
本発明により、キャッシュ格納領域内に作成されたフォルダ階層構造に基づいて、キャッシュが既に格納されているかどうか判断できるようになる。
システム構成を示す図 コンピュータのモジュール構成を示す図 クライアントPCのソフトウエア構成を示す図 文書管理サーバのソフトウエア構成を示す図 文書管理構造の一例を示す図 クライアントPCが文書のイメージを表示するためリクエストを行う際のURIの例 リクエストに対して、イメージファイルを送信する処理を示すフローチャート フォルダ階層構造における文書を特定するための文字列の例 キャッシュ格納領域内のフォルダ階層構造を示す図 フォルダ階層構造における文書を特定するための文字列の別例 キャッシュ格納領域内のフォルダ階層構造の別例を示す図 キャッシュ格納領域内のフォルダ階層構造の二つの例の比較を示す図 文書管理サーバのソフトウエア構成を示す別例 イメージファイルを送信する処理を示すフローチャートの別例
[実施例1]
図1は、本発明の実施例1のシステム構成を説明する概略図である。図1において、文書管理サーバ101は、文書保存、検索など一般的な文書管理サービスを提供する。クライアントPC(クライアントコンピュータ)102は、文書管理サーバが提供する文書管理サービスを利用するための文書管理クライアントのアプリケーションを実行する。本実施例では、文書管理クライアントは、Microsoft Windows(登録商標)やLinux(登録商標)などの各種オペレーティングシステム上で動作するアプリケーションとするが、Webブラウザ上で動作するアプリケーションであってもよい。なお、図示しないが、文書管理クライアントPC102は、ネットワーク103に複数接続される。ネットワーク103は、インターネットやイントラネットなどであり、ネットワーク対応機器(101、102など)が接続される。文書管理サーバ101は、ネットワーク103を介してインターネットあるいはイントラネットに文書管理サービスを公開するWebサービスも併せて提供する。なお、ネットワーク103がインターネットとした場合、文書管理サーバ101は、クラウドサービスとして提供されるように構成してもよい。その場合のシステム構成は一般的なクラウドサービス構成と同様に、クラウド上の仮想サーバを用いて文書管理サービスを提供すればよいので、クラウドサービス構成の詳細説明に関しては省略する。
図2は、実施例1の典型的な汎用コンピュータモジュール200の構成を説明するブロック図である。文書管理サーバ101、クライアントPC102のハードウェア構成は、典型的な汎用コンピュータモジュールを用いて実現可能である。汎用コンピュータモジュール200には、キーボード204やマウス205のようなポインティングデバイスなどの入力装置、ディスプレイ装置213などの出力装置が接続される。
CPU201は、少なくとも1つのプロセッサで構成され、コンピュータ読み取り可能な記憶媒体に記憶されたコンピュータプログラムを実行することによって、後述する各フローチャートの処理を実行し、コンピュータ全体の制御を行う。メモリ202は、RAMやROMから構成される。ビデオインターフェース212は、ディスプレイ装置213に画像を出力する。I/Oインターフェース203は、キーボード204やマウス205からの操作による入力を受け取る。記憶装置208は、ハードディスクドライブ(HDD)209やフラッシュメモリ(シリコンドライブ)などで構成される不揮発性の記憶装置である。ドライブ206は、CD−ROMやDVDなどの光学ドライブであり、不揮発性のデータソースとして用いられる。相互接続バス207は、CPU201の制御に基づき各ブロック間の通信を仲介するバスである。ネットワークコントローラー(NC)210は、所定のネットワークインターフェース211を介してネットワーク103に接続され、他のネットワーク機器との通信制御処理を実行する。
なお、後述のフローチャートで示される処理を文書管理サーバ101およびクライアントPC102に実行させるための各種制御プログラムは、各装置のメモリ202や記憶装置208などの記憶手段に記憶され、各装置のCPU201により実行される。また、文書管理サーバ101は、文書管理用のデータベースを有するが、そのデータベースも記憶装置208上に構築されるものとする。
図3は、文書管理クライアントアプリケーションのソフトウエア構成を説明するブロック図である。
アプリケーション301は、各種の機能を実行するためのユーザーインターフェースをディスプレイ装置213の画面上に表示させ、ユーザーからの要求をキーボード204やマウス205を介して受け付けて、各機能処理を実行する。302〜303は、アプリケーションを構成するコンポーネントを示している。コンポーネント302はアプリケーションのUI部であり、ユーザーインターフェースの構築や、ユーザーからの各種入力操作の受け付けおよび入力操作による処理結果の表示を行う。コンポーネント303は、ライブラリー管理部であり、アプリケーション301で利用するライブラリーを管理し、ライブラリーへの文書の格納や、ライブラリー内文書の閲覧、更新、属性変更、検索などの各種文書操作を実行する。ここで言うライブラリーとは、文書管理を行うための保存単位のことであり、文書データと、文書属性などの文書管理用のデータを保存する。本発明においては文書の過去バージョンや、文書の更新履歴も保存する。ライブラリー管理部303は、アプリケーションUI部302から受け取った文書操作の要求を文書管理サーバ101に渡し、その要求の処理結果を文書管理サーバから受け取って、アプリケーションUI部302に渡す。305は、ライブラリー管理部303が文書管理サーバに接続するためのインターフェースを示す。
図4は、文書管理サーバ101のソフトウエア構成を説明するブロック図である。サーバソフトウエア401は、サーバの管理者からの指示を受け付けるためのユーザーインターフェースやディスプレイに各種情報を表示するためのUI部を備える。文書管理部402は、サーバソフトウエア401で利用する文書のデータベース405を管理するものであり、データベースに文書の格納を行ったり、データベースから文書の取得を行ったりする。データベース405は記憶装置208上に構築され、文書管理サーバ101で扱う文書の実データはデータベース405内に蓄積される。
キャッシュ管理部403は、文書の実データに基づいて作成されたイメージファイルをキャッシュとして蓄積して管理することにより、ユーザーからのリクエストに応じて該キャッシュを繰り返し利用できるようにする。なお、キャッシュ管理の構造はキャッシュ管理部403により決定され、また、キャッシュ格納領域は記憶装置208上に構築されるものとする。本実施例1においてキャッシュ管理は、データベース405から独立したファイルシステムによって行われる。
イメージファイル作成部404は、文書の実データからイメージデータと非イメージデータとを抽出し、イメージデータはそのままあるいは必要に応じて拡大縮小などの画像変換を行う。非イメージデータについては、例えばテキストをフォントイメージに置き換えてイメージデータとして描画し、ベクター形式データについては出力サイズに合わせてイメージデータとして描画する。そしてそれらを結合することにより、クライアントPCのブラウザで文書の内容を表示できるファイルフォーマットのイメージファイルに変換する。本実施例においてイメージファイル作成部404は、文書の実ファイルから表示イメージの総ページ数を算出することができて、ページごとのイメージファイルを作成するものとする。
図5は、文書管理サーバ101の記憶装置208に格納される文書の管理構造(データベースにおける文書管理の階層構造)の一例を説明するブロック図である。最上位にはシステム管理者がユーザーに対して同一の操作やセキュリティポリシーを提供することを可能にするための管理設定を共有する最上位階層501が存在する。そして、その下に、文書の一意性を保証する二次階層502、同一の文書属性情報(同一の属性項目)を共有する三次階層503という構造になっている。さらにその下に、文書を格納するためのフォルダ504と文書505とがそれぞれに配置される。
本実施例において文書管理サーバ101はWebサービスを提供し、501へアクセスするためのネットワークアドレスが割り当てられている。そして、501内において二次階層502を一意に識別するための識別符号(以下、サイトID)が割り当てられている。さらに、二次階層502の各サイトの配下の階層に配置される文書に対しては、各サイト内においてそれぞれの文書を一意に識別するための識別符号(以下、文書ID)が割り当てられている。よって、ネットワークアドレスとサイトIDと文書IDの組み合わせによって、すべての文書を一意に特定することを可能にしている。
例えば、会社で文書管理システムを運用する場合、各ユーザーがアクセス可能な領域を次のように定めてもよい。例えば、会社の部門ごとに二次階層502として各サイト(AAA,BBB,CCC)を割り当て、各部門内の課ごとに三次階層503としてライブラリー(DDDD,EEEE)を割り当てる。そして、各課に属するユーザーが各ライブラリーの配下にあるフォルダ504や文書505にアクセスできるようにアクセス権を付与する。各課では同種の文書を共有することが多いので、予め各課で定義した属性項目を設定し、各文書に対して各属性項目に対応する属性値を対応づけて登録しておけば、各文書を検索しやすくなる。
図6は、クライアントPC102上で動作するアプリケーション301から文書管理サーバ101に対して、文書のイメージを表示するためのリクエストを行う際のURIの例である。オーソリティー部およびパス部601には最上位階層501を特定するためのネットワークアドレスとイメージをリクエストするためのオブジェクトのパスを含む。クエリ部には以下の要素を含む。すなわち、二次階層502のサイトIDを指定するクエリ602、文書IDを指定するクエリ603、文書の属性情報である更新日時を指定するクエリ604、表示させたい先頭ページのページ番号を指定するクエリ605と、表示させたい最終ページのページ番号を指定するクエリ606である。図5の説明で述べたとおり、文書を特定するために三次階層503やそれ以下のフォルダを特定するための情報を含める必要はない。なお、本実施例においてリクエストはURIで記述されるが、本発明を実現するための手法はこれに限定されず、アプリケーション301と文書管理サーバ101との間で規定されていて、601から606に相当する要素が含まれるような書式であればよい。
図7は、クライアントPC102から受信した図6のようなリクエスト(文書表示のリクエスト)に対して、文書管理サーバ101が文書のイメージファイルを送信する処理を示すフローチャートである。
ステップ701において、キャッシュ管理部403は、クライアントPCから受信した図6に示されるような文書表示リクエストのURIに基づいて、文書を特定するための一意の文字列を生成する。生成される文字列の詳細については図8の説明と併せて後述する。
ステップ702において、キャッシュ管理部403は、記憶装置208上のキャッシュ格納領域内に、ステップ701で生成された文字列に基づいて特定される階層構造と同様のフォルダ階層構造が存在するかどうかを判定する。存在すればステップ709に、存在しなければステップ703に進む。なお、ステップ702の判定処理の具体例は後述する。
ステップ703において、文書管理部402は、クライアントPC102からリクエストされた文書の実ファイル(文書の実体データ)をデータベース405から取得する実ファイル取得処理を実行する。図6の説明に示したとおり、イメージをリクエストするURIに基づいて文書は一意に特定される。
ステップ704において、イメージファイル作成部404は、ステップ703で取得した文書の実ファイルに基づいて、表示イメージの総ページ数を算出する。
ステップ705において、イメージファイル作成部404は、ステップ703で取得した文書の実ファイルに基づいて、ページごとのイメージファイルを作成する。
ステップ706において、キャッシュ管理部403は、記憶装置208のキャッシュ格納領域内のトップフォルダの直下に、ステップ701で生成された文字列と等しい構造を持ち等しい名前を持つようなフォルダ階層を作成する。
ステップ707において、キャッシュ管理部403は、ステップ706で作成されたフォルダのうち最下層のフォルダの下に、ステップ704で算出された文書の表示イメージの総ページ数を示す文字列をフォルダ名に持つフォルダを作成する。
ステップ708において、キャッシュ管理部403は、ステップ707で作成されたフォルダの下に、ステップ705で作成されたページごとのイメージファイルをキャッシュとして格納する。このとき、各ページに対応するイメージファイルのファイル名は、それぞれのページのページ番号とする。なお、ステップ706〜708の処理により、記憶装置208のキャッシュ格納領域内に構築された階層構造については、図9の説明と併せて後述する。
ステップ709において、キャッシュ管理部403は、クライアントPC102からリクエストされたページに対応する文書のイメージファイルを、記憶装置208上のキャッシュ格納領域から取得する。ステップ710において、文書管理サーバ101は、クライアントPC102に対してステップ709で取得したイメージファイルを送信する。
図8は、ステップ701において生成される、フォルダ階層構造における文書を特定するための文字列の例である。ブロック801はクエリ602によって指定されたサイトIDを含む。ブロック802はクエリ603によって指定された文書IDを含む。ブロック803はクエリ605によって指定された文書の更新日時を含む。各ブロックはフォルダ階層構造を記述するためのパス区切り文字(図8の例では「\」)によって接続される。なお、リクエストのURIと同様に文書を特定できればよいので、図8の文字列には、三次階層503やそれ以下のフォルダを特定するための情報を含まなくても構わない。よって、図8の文字列は、図5に示されるような階層構造をそのまま表現するものではない。
図9は、ステップ703〜708の処理によりイメージファイルがキャッシュとして格納されたキャッシュ格納領域内のフォルダ階層構造を示す図である。キャッシュ格納領域の最上位フォルダ以下の階層構造は、ステップ701で生成された図8で示す文字列に基づいて生成される。この階層構造は、ブロック801に示されるサイトIDをフォルダ名に持つフォルダ901、ブロック802に示される文書IDをフォルダ名に持つフォルダ902、ブロック803に示される文書の更新日時をフォルダ名に持つフォルダ903である。901〜903のフォルダは、ステップ706の処理によって作成される。更に、フォルダ903の直下には、ステップ707の処理により、文書の総ページ数を示す文字列をフォルダ名に持つフォルダ904が作成される。特定文書の特定更新日時のバージョンにおける総ページ数は一意に定まるため、フォルダ904はフォルダ903の直下に必ず1つ作成されることとなる。そして、ステップ708の処理により、フォルダ904内に文書の各ページのイメージファイルが格納される。前述のとおり、各イメージファイルのファイル名はそれぞれのページのページ番号とする。なお、図9のキャッシュ格納領域のフォルダ階層構造は、図8の文字列に基づいて作成されるので、図5に示した階層構造と同じではない。
ここで、キャッシュ格納領域内にイメージファイルがキャッシュされているか否かを判定するための、ステップ702における判定方法について、図8,9を参照しながら説明する。図6のURIに基づきステップ701で生成された図8の文字列を参照して、キャッシュ格納領域内に、ブロック801に相当するフォルダ901、ブロック802に相当するフォルダ902、ブロック803に相当するフォルダ903、が存在するか判断する。このとき、キャッシュが未だ格納されていなければ、キャッシュ格納領域内に該当する階層構造のフォルダが作成されていないはずである。すなわち、図8の文字列に対応する名称のフォルダ901〜903が存在するかどうかに基づいて、キャッシュを既に格納しているかどうかを判断できる。そして、該当する名称のフォルダが存在し、キャッシュが既に格納されていると判断できた場合、更に、フォルダ903の直下には唯一のフォルダ904が存在する。そして、ステップ709では、フォルダ904内のイメージファイルのうち、クエリ605とクエリ606とによって指定されたページのページ番号をファイル名に持つイメージファイルを取得する。
上述したように、実施例1によれば、キャッシュ格納領域内に作成された階層構造に基づいて、キャッシュが既に格納されているかどうか判断できるので、特許文献2のようにキャッシュの有無を判定するためのテーブルを用意せずに済む。また、テーブルを用いずにキャッシュ格納領域内のフォルダ階層構造に基づいてキャッシュの有無を判定できるので、高速に応答を返すことができる。
[実施例2]
実施例1の図5の説明で前述したとおり、それぞれの文書には、二次階層502の各サイト内において一意に特定される文書IDが割り当てられている。よって、図9のフォルダ901の直下には、最大で、二次階層502のサイトCCCの下位階層に格納される全文書の数と同数のフォルダが作成される可能性があることになる。一般のファイルシステムでは、ある1つのフォルダ下に作成可能なサブフォルダの数には上限がある場合が多く、したがって、二次階層502の下位階層に格納される文書の数が膨大になるとその上限を超えることが考えられる。実施例2では、それを解決しつつ、実施例1と同様の効果を得るための手法を説明する。
図10は、ステップ701において生成される、フォルダ階層構造における文書を特定するための文字列の別の例である。図10のブロック801は、図8の801と同様にクエリ602によって指定されたサイトIDを含む。次に、キャッシュ管理部403は、クエリ603によって指定されている文書ID(アルファベット9文字とそれを3文字ごとに区切るハイフンとからなる文書ID)を、ハイフンを除去してアルファベット3文字からなる3つのグループに分割する。図10のブロック1001、ブロック1002、ブロック1003には、分割されたそれぞれのグループのアルファベット3文字を含む。なお、分割する文字数は3文字ごとに限るものではなく、予め定めた基準に基づいて文書IDを分割すればよい。図10のブロック803は、図8の803と同様に、クエリ605によって指定された文書の更新日時を含む。図10の各ブロック(801,1001,1002,1003,803)は、フォルダ階層構造を記述するためのパス区切り文字(\)によって接続される。文書IDを分割することで、1001〜1003の各ブロックにはある程度の重複を見込むことができる。
図11は、実施例2において、ステップ703〜708の処理によりイメージファイルがキャッシュとして格納されたキャッシュ格納領域内のフォルダ階層構造を示す図である。フォルダ901は図9の901と同様である。フォルダ1101〜1103はそれぞれ、ブロック1001〜1003に示される文字列をフォルダ名に持つ。フォルダ903、フォルダ904、およびフォルダ904の直下に作成されるイメージファイルは、図9と同様である。
図12は、実施例1の手法で構成されたキャッシュ格納領域内のフォルダ階層構造1202と、実施例2の手法で構成されたキャッシュ格納領域内のフォルダ階層構造1203との比較を示す図である。1201は、二次階層502のサイトCCCの下位階層に格納される全文書の文書IDを示すリストの例である。1202は、キャッシュ格納領域内に実施例1の手法で1201の各文書のイメージファイルを格納した場合のフォルダ階層構造を示す図である。なお、図12のフォルダ階層構造1202では、フォルダ903以下の階層構造の説明は省略している。また、1203は、キャッシュ格納領域内に実施例2の手法で1201の各文書のイメージファイルを格納した場合のフォルダ階層構造を示す図である。同様に、図12のフォルダ階層構造1203では、フォルダ903以下の階層構造の説明は省略している。上述したように、図10で説明した手法で文書IDを分割することで、ブロック1001に相当する文字列には複数の文書の間である程度の重複を見込むことができる。したがって、図12のフォルダ階層構造1203の例では、フォルダ1101や1102の直下に複数のサブフォルダが格納されることになる。結果として、フォルダ階層構造1202におけるフォルダ901の直下のフォルダの数よりも、フォルダ階層構造1203におけるフォルダ901の直下のフォルダの数の方が少なくなる。一方、末端となる階層のフォルダの数は1202と1203とで変わらないため、フォルダ903以下の構造に差異はなく、図7に示すイメージファイルの格納と取得の処理には差異が発生しない。
実施例2では、一般のファイルシステムにおけるサブフォルダ数の制限を超えるリスクを軽減することにより、大量の文書に対応できるキャッシュの階層構造を定義する文書管理システムを提供することができる。
[実施例3]
実施例1で説明したような文書管理システムにおいて、キャッシュ格納領域を収容する記憶装置208の物理的な容量は一般に有限である。クライアントPC102からのリクエストに応じて文書のイメージファイルの作成と格納をしすぎると、記憶装置208の容量の上限を超えてしまうことが考えられる。実施例3では、それを解決しつつ、実施例1と同様の効果を得るための手法を説明する。
図13は、文書管理サーバ101のソフトウエア構成を説明するブロック図の拡張の例である。ユーザー認証部1301は、クライアントPC101からユーザーIDとパスワードの組み合わせなどの一般的な認証情報を受信し、その認証情報の認証処理を実行して、受け付けた認証情報に対する承認を与える。認証情報の確認(認証処理)は、文書管理サーバ101内に格納されるユーザーリストとの照合を行う手法であっても、外部のサーバを用いて認証を行う手法であっても、本実施例においてはどちらでもかまわない。文書管理サーバ101は、クライアントPC101からのリクエストに対して任意のタイミングでユーザー認証部1301によるアカウント認証を行う。ユーザーからの能動的な切断リクエストを受信したり、文書管理サーバ101内の定義による自動的な切断が発生したりするまで、クライアントPC101からのリクエストを承認されたユーザーのリクエストとして扱う。
アクセス制御部1302は、承認されたユーザーからの個々のリクエストについて、文書管理サーバ101のリソースを使用する権限を持つかどうか、どのように使用できるかを判断する(権限判断)。そして、アクセス制御部1302は、その判断結果に基づいて、リクエストを受け付けるか否か、リクエストに対してどのように機能を提供するかを決定する。なお、その判断手法は、文書管理サーバ101内に格納されるアクセス制御リストとの照合を行う手法であっても、外部のサーバを用いる手法であっても、本実施例においてはどちらでもかまわない。
図14は、クライアントPC102から受信した図6のようなリクエスト(文書表示のリクエスト)に対して、文書管理サーバ101が文書のイメージファイルを送信する処理を示すフローチャートの別の例である。なお、図14のフローチャートの開始時点には、ユーザー認証部1301による認証情報の確認が完了していて、リクエストは承認されたユーザーによるものとして扱われることとする。
ステップ1401において、アクセス制御部1302は、リクエストしたユーザーが文書の表示権限を持つかどうかを判断する。表示権限を持っていればステップ701に進み、表示権限がなければステップ1402に進む。図14のステップ701〜710の各処理については図7のステップ701〜710の各処理と同様であるので詳細説明は省略する。
ステップ1402において、文書管理サーバ101は、クライアントPC102に対して文書の表示権限がない旨を送信する。
ステップ1403において、アクセス制御部1302は、リクエストしたユーザーが再利用可能なイメージファイルをキャッシュとして保持する権限、すなわちキャッシュ格納領域にイメージファイルを格納するための格納権限を有するかどうかを判断する。この権限判断処理により、格納権限を持っていればステップ706に進み、格納権限がなければステップ710に進む。
実施例3において、キャッシュの格納権限を持たないユーザーの指示に基づいてクライアントPC102が、文書の表示リクエストを文書管理サーバ101へ送信した場合、ステップ705で作成されたイメージファイルはキャッシュされずにステップ710でクライアントPC102に送信された後に破棄される。
なお、キャッシュ格納領域にイメージファイルを格納する権限は、文書管理サーバ101の管理者が各ユーザーに対して個別に設定できるものであってもよい。あるいは、ユーザーのアクセス頻度や文書表示リクエスト頻度に対して所定の閾値と比較することで、該閾値を超えるユーザーに対してキャッシュ格納領域にイメージファイルを格納する格納権限を自動的に付与する処理を行うものであってもよい。
実施例3では、キャッシュ格納領域を利用可能なユーザーを制限することにより、イメージファイルをキャッシュしすぎて記憶装置208の容量の上限を超えることがないような文書管理システムを提供することができる。
(その他の実施例)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(コンピュータプログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。

Claims (9)

  1. クライアントから受信したリクエストに基づいて、当該リクエストされた文書を特定するための文字列を生成する生成手段と、
    前記生成手段で生成された文字列に基づいて特定されるフォルダ階層構造が、キャッシュ格納領域内に存在するかどうかを判定する判定手段と、
    前記判定手段で存在しないと判定した場合、前記リクエストされた文書の実ファイルを取得する実ファイル取得手段と、
    前記実ファイル取得手段で取得した前記実ファイルに基づいて、前記文書のイメージファイルを作成するイメージファイル作成手段と、
    前記生成手段で生成された文字列に基づいて特定されるフォルダ階層構造を、前記キャッシュ格納領域内に作成し、更に、当該作成されたフォルダ階層構造に、前記イメージファイル作成手段で作成された前記イメージファイルをキャッシュとして格納する格納手段と、
    前記判定手段で存在すると判定した場合、前記キャッシュ格納領域内の当該特定されるフォルダ階層構造にキャッシュとして格納されているイメージファイルを取得する取得手段と、
    前記取得されたイメージファイルを前記クライアントに送信する送信手段と、
    を有することを特徴とする文書管理サーバ。
  2. 前記生成手段は、前記リクエストに含まれるURIに基づいて当該リクエストされた文書を特定するための文字列を生成することを特徴とする請求項1に記載の文書管理サーバ。
  3. 前記実ファイル取得手段は、前記判定手段で存在しないと判定した場合、前記リクエストに含まれるURIに基づいて特定される前記文書の実ファイルを取得することを特徴とする請求項1に記載の文書管理サーバ。
  4. 前記イメージファイル作成手段は、前記実ファイル取得手段で取得した前記実ファイルに基づいて、前記文書のページごとに前記イメージファイルを作成し、
    前記格納手段は、前記生成手段で生成された文字列に基づいて特定されるフォルダ階層構造を、前記キャッシュ格納領域内に作成し、更に、前記イメージファイル作成手段でページごとに作成された各イメージファイルのファイル名をページ番号にして、当該作成されたフォルダ階層構造に各イメージファイルをキャッシュとして格納することを特徴とする請求項1に記載の文書管理サーバ。
  5. 前記生成手段は、前記リクエストされた文書の文書IDを予め定めた基準に基づいて分割し、当該分割された文書IDを用いて前記リクエストされた文書を特定するための文字列を生成することを特徴とする請求項1に記載の文書管理サーバ。
  6. 前記クライアントのユーザーが、前記キャッシュ格納領域に前記イメージファイルを格納する格納権限を有するか否かを判断する権限判断手段を更に有し、
    前記格納手段は、前記権限判断手段により前記格納権限を有さないと判断した場合は、前記イメージファイルをキャッシュとして格納しないように制御することを特徴とする請求項1に記載の文書管理サーバ。
  7. 生成手段が、クライアントから受信したリクエストに基づいて、当該リクエストされた文書を特定するための文字列を生成する生成ステップと、
    判定手段が、前記生成ステップで生成された文字列に基づいて特定されるフォルダ階層構造が、キャッシュ格納領域内に存在するかどうかを判定する判定ステップと、
    実ファイル取得手段が、前記判定ステップで存在しないと判定した場合、前記リクエストされた文書の実ファイルを取得する実ファイル取得ステップと、
    イメージファイル作成手段が、前記実ファイル取得ステップで取得した前記実ファイルに基づいて、前記文書のイメージファイルを作成するイメージファイル作成ステップと、
    格納手段が、前記生成ステップで生成された文字列に基づいて特定されるフォルダ階層構造を、前記キャッシュ格納領域内に作成し、更に、当該作成されたフォルダ階層構造に、前記イメージファイル作成手段で作成された前記イメージファイルをキャッシュとして格納する格納ステップと、
    取得手段が、前記判定ステップで存在すると判定した場合、前記キャッシュ格納領域内の当該特定されるフォルダ階層構造にキャッシュとして格納されているイメージファイルを取得する取得ステップと、
    送信手段が、前記取得されたイメージファイルを前記クライアントに送信する送信ステップと、
    を有することを特徴とする文書管理方法。
  8. コンピュータを、請求項1乃至6のいずれか1項に記載の各手段として機能させるためのコンピュータプログラム。
  9. 請求項8記載のコンピュータプログラムを格納した、コンピュータ読み取り可能な記憶媒体。
JP2013120719A 2013-06-07 2013-06-07 文書管理サーバ、文書管理方法、コンピュータプログラム Active JP6242087B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2013120719A JP6242087B2 (ja) 2013-06-07 2013-06-07 文書管理サーバ、文書管理方法、コンピュータプログラム
US14/298,611 US9898463B2 (en) 2013-06-07 2014-06-06 Document management server, document management method, and non-transitory storage medium storing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013120719A JP6242087B2 (ja) 2013-06-07 2013-06-07 文書管理サーバ、文書管理方法、コンピュータプログラム

Publications (2)

Publication Number Publication Date
JP2014238699A true JP2014238699A (ja) 2014-12-18
JP6242087B2 JP6242087B2 (ja) 2017-12-06

Family

ID=52006399

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013120719A Active JP6242087B2 (ja) 2013-06-07 2013-06-07 文書管理サーバ、文書管理方法、コンピュータプログラム

Country Status (2)

Country Link
US (1) US9898463B2 (ja)
JP (1) JP6242087B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3507723A4 (en) 2016-09-02 2020-04-01 FutureVault Inc. SYSTEMS AND METHODS FOR SHARING DOCUMENTS
CA3035097A1 (en) 2016-09-02 2018-03-08 FutureVault Inc. Automated document filing and processing methods and systems
EP3507721B1 (en) 2016-09-02 2022-11-23 FutureVault Inc. Real-time document filtering systems and methods
CN116089363B (zh) * 2023-04-04 2023-09-01 联宝(合肥)电子科技有限公司 数据处理方法、装置、电子设备及存储介质

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09198296A (ja) * 1996-01-16 1997-07-31 Matsushita Graphic Commun Syst Inc 画像情報処理システム
JPH1021134A (ja) * 1996-07-04 1998-01-23 Sharp Corp ゲートウェイ装置、クライアント計算機およびそれらを接続した分散ファイルシステム
JP2004304446A (ja) * 2003-03-31 2004-10-28 Fuji Photo Film Co Ltd 画像サーバおよびその制御方法
US20050165747A1 (en) * 2004-01-15 2005-07-28 Bargeron David M. Image-based document indexing and retrieval
US20060048043A1 (en) * 2004-08-30 2006-03-02 Canon Kabushiki Kaisha Document management server
US20060129657A1 (en) * 2001-07-13 2006-06-15 O'connell Conleth S Jr Method and system for file-system based caching
US20070223013A1 (en) * 2006-03-24 2007-09-27 Brother Kogyo Kabushiki Kaisha Information processing device
JP2008293397A (ja) * 2007-05-28 2008-12-04 Kyocera Mita Corp ファイルシステム
US7761497B1 (en) * 2001-07-13 2010-07-20 Vignette Software, LLC Storage medium having a manageable file directory structure
US20130110832A1 (en) * 2011-10-27 2013-05-02 Microsoft Corporation Techniques to determine network addressing for sharing media files

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000076257A (ja) 1998-08-26 2000-03-14 Fujitsu Ltd 分散ネットワークサービスにおける情報検索装置及びその検索方法
JP2005222237A (ja) 2004-02-04 2005-08-18 Mitsubishi Electric Corp 文書検索表示システム
US8521737B2 (en) * 2004-10-01 2013-08-27 Ricoh Co., Ltd. Method and system for multi-tier image matching in a mixed media environment
JP4518056B2 (ja) * 2006-09-25 2010-08-04 富士ゼロックス株式会社 文書操作認証装置、及びプログラム

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09198296A (ja) * 1996-01-16 1997-07-31 Matsushita Graphic Commun Syst Inc 画像情報処理システム
JPH1021134A (ja) * 1996-07-04 1998-01-23 Sharp Corp ゲートウェイ装置、クライアント計算機およびそれらを接続した分散ファイルシステム
US20060129657A1 (en) * 2001-07-13 2006-06-15 O'connell Conleth S Jr Method and system for file-system based caching
US7761497B1 (en) * 2001-07-13 2010-07-20 Vignette Software, LLC Storage medium having a manageable file directory structure
JP2004304446A (ja) * 2003-03-31 2004-10-28 Fuji Photo Film Co Ltd 画像サーバおよびその制御方法
US20050165747A1 (en) * 2004-01-15 2005-07-28 Bargeron David M. Image-based document indexing and retrieval
US20060048043A1 (en) * 2004-08-30 2006-03-02 Canon Kabushiki Kaisha Document management server
US20070223013A1 (en) * 2006-03-24 2007-09-27 Brother Kogyo Kabushiki Kaisha Information processing device
JP2008293397A (ja) * 2007-05-28 2008-12-04 Kyocera Mita Corp ファイルシステム
US20130110832A1 (en) * 2011-10-27 2013-05-02 Microsoft Corporation Techniques to determine network addressing for sharing media files

Also Published As

Publication number Publication date
US20140365543A1 (en) 2014-12-11
US9898463B2 (en) 2018-02-20
JP6242087B2 (ja) 2017-12-06

Similar Documents

Publication Publication Date Title
US9716771B2 (en) Cache control for web application resources
JP2011065546A (ja) ファイル検索システム及びプログラム
US20180253439A1 (en) Characterizing files for similarity searching
WO2013038489A1 (ja) 計算機システム、クライアント計算機の管理方法及び記憶媒体
JP2006252085A (ja) ユーザ識別情報を変換するファイルサーバ
US10152538B2 (en) Suggested search based on a content item
US8312282B2 (en) Information processing apparatus and method
JP6242087B2 (ja) 文書管理サーバ、文書管理方法、コンピュータプログラム
JP2017220112A (ja) データ管理システム、制御方法、およびプログラム
JP2011203964A (ja) 文書管理システム及び方法
US20150100677A1 (en) Managing server system, and control method for the same
US20130326324A1 (en) Document management server, document management method, and storage medium
JP4807411B2 (ja) 別ドメインの情報を利用する方法、別ドメインの情報を利用するためのプログラム及び情報転送プログラム
JP2014179042A (ja) データ管理システム、情報システム、データ管理方法及び情報システムの制御方法、並びに、それら方法のプログラム及びそのプログラムを記録した記録媒体
US10298516B2 (en) System and methods for sharing resources among application modules
JP2009176039A (ja) ファイル管理システム及びファイル管理サーバ及びファイル管理プログラム
JP6568232B2 (ja) 計算機システム、及び、装置の管理方法
WO2015045048A1 (ja) アプリデータ記憶領域生成方法,アプリデータ記憶領域生成装置,及びアプリデータ記憶領域生成プログラム
US20130166732A1 (en) Client managing system, client managing method, and information processing apparatus
JP6323109B2 (ja) 文書管理システム、キーバリューストア装置、文書管理方法、及びプログラム
US20240135028A1 (en) System and method of dynamic search result permission checking
CA3217234A1 (en) System and method of dynamic search result permission checking
JP5948930B2 (ja) 中継装置、方法及びプログラム
KR100874989B1 (ko) 단말에 대한 감사 장치, 방법 및 프로그램이 기록된기록매체
JP2015102971A (ja) 文書管理システム、文書管理システムにおける情報処理装置、文書管理方法及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160602

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170712

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170801

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170929

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20171010

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171107

R151 Written notification of patent or utility model registration

Ref document number: 6242087

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151