JP6305177B2 - Information processing apparatus, document management system, information processing method, and program - Google Patents

Information processing apparatus, document management system, information processing method, and program Download PDF

Info

Publication number
JP6305177B2
JP6305177B2 JP2014082866A JP2014082866A JP6305177B2 JP 6305177 B2 JP6305177 B2 JP 6305177B2 JP 2014082866 A JP2014082866 A JP 2014082866A JP 2014082866 A JP2014082866 A JP 2014082866A JP 6305177 B2 JP6305177 B2 JP 6305177B2
Authority
JP
Japan
Prior art keywords
capacity
decrease
increase
storage
record
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.)
Active
Application number
JP2014082866A
Other languages
Japanese (ja)
Other versions
JP2015203963A (en
Inventor
和成 山中嶋
和成 山中嶋
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 JP2014082866A priority Critical patent/JP6305177B2/en
Publication of JP2015203963A publication Critical patent/JP2015203963A/en
Application granted granted Critical
Publication of JP6305177B2 publication Critical patent/JP6305177B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、情報処理装置、文書管理システム、情報処理方法及びプログラムに関する。   The present invention relates to an information processing apparatus, a document management system, an information processing method, and a program.

文書管理システムでは、ストレージの利用容量を制限したり、アクセス制御や利用方法に応じてカスタマイズしたりするために、ストレージを区分けして管理する場合が多い。この区分けの呼び方はシステムによって異なり、例えば、キャビネットやライブラリといった呼称が使われる(以下、キャビネットという)。
キャビネットの属性情報には、キャビネットが使用できるストレージの容量を定義したキャビネット容量と、キャビネットが実際に使用しているストレージ容量を示す使用容量とがある。キャビネット容量と使用容量とは、利用上限を越えて文書ファイルが登録されないようにチェックしたり、ユーザーがキャビネットの状況を即時に確認したりするために保持される。
使用容量は、文書ファイルの登録、更新、削除が行われるたびに変化するものであり、かつ、タイムラグが許容できない。そのため、文書ファイルの登録、更新、削除が行われるたびに算出され、値の更新が行われていた(例えば、特許文献1参照)。
In a document management system, storage is often divided and managed in order to limit the use capacity of the storage or customize it according to access control or use method. The name of this classification differs depending on the system, and for example, names such as cabinets and libraries are used (hereinafter referred to as cabinets).
The cabinet attribute information includes a cabinet capacity that defines the storage capacity that can be used by the cabinet, and a used capacity that indicates the storage capacity actually used by the cabinet. The cabinet capacity and the used capacity are held for checking that a document file is not registered exceeding the upper limit of use or for allowing the user to immediately confirm the status of the cabinet.
The used capacity changes each time a document file is registered, updated, or deleted, and the time lag is not acceptable. For this reason, it is calculated each time a document file is registered, updated, or deleted, and the value is updated (see, for example, Patent Document 1).

特開2003−316624号公報JP 2003-316624 A

以下、図1〜図3を用いて、文書管理システムの一例について述べる。
図1は、文書管理システムのデータ構造をイメージで示した図である。テナント300は主にクラウド型システム等で用いられるデータの境界を示している。クラウド型のシステムでは1つのシステム環境の中に複数企業やユーザーを同居させるマルチテナント方式をとっており、各企業やユーザーのデータが混合することを避けるために、企業やユーザー毎の論理的な境界(テナント間の論理的な境界)を設けている。例えば、境界300はテナントの論理的な境界を示す。各テナントが利用可能なリソース(計算能力やストレージ容量など)は、クラウドサービスを提供している会社と各テナントとの間の契約に依存する。また、文書管理システムでは、ストレージの利用容量を制限したり、アクセス制御や利用方法に応じてカスタマイズしたりするために、各テナント内で更にストレージを区分けして管理する場合が多く、この区分けがキャビネットである。境界301、302、303はキャビネットの境界を示す。キャビネット内にはフォルダ311や文書ファイル321が多数存在している。また、キャビネット内のフォルダやファイルには複数のユーザー又はシステムがアクセスする。文書管理システムでは、キャビネット毎にストレージ容量を割り当てることができる。例えば、企業がテナントとしてクラウドサービスの文書管理システムを利用する場合、テナント内に部署単位でキャビネットを作成し、各部署のキャビネットごとにストレージ使用可能容量を割り当てるといった運用が可能になる。
Hereinafter, an example of a document management system will be described with reference to FIGS.
FIG. 1 is a diagram showing the data structure of the document management system as an image. A tenant 300 indicates a boundary of data mainly used in a cloud type system or the like. In the cloud system, a multi-tenant method is used in which multiple companies and users coexist in one system environment. In order to avoid mixing the data of each company and users, a logical system for each company and user is used. There are boundaries (logical boundaries between tenants). For example, the boundary 300 indicates a tenant logical boundary. The resources (calculation capacity, storage capacity, etc.) that each tenant can use depend on the contract between the company providing the cloud service and each tenant. In document management systems, storage is often divided and managed within each tenant in order to limit the storage usage capacity and customize it according to access control and usage methods. It is a cabinet. Boundaries 301, 302, and 303 indicate cabinet boundaries. A large number of folders 311 and document files 321 exist in the cabinet. A plurality of users or systems access folders and files in the cabinet. In the document management system, a storage capacity can be allocated for each cabinet. For example, when a company uses a cloud service document management system as a tenant, it is possible to create a cabinet for each department in the tenant and allocate storage usable capacity to each cabinet of each department.

図2は、キャビネットの属性情報を保管する、データベース上のテーブル(以下、テーブルという)の一例を示す図である。テナントID列401は、図1の300で示したテナントを識別するIDである。キャビネットID列402は、図1の301、302、303で示したテナント内のキャビネットを識別するIDである。テナントID列401とキャビネットID列402とによって、システム内で一意のキャビネットが特定されることになる。最大サイズ列403は、ストレージの使用可能容量を示すキャビネット容量を保管する列である。使用容量列404は、キャビネットの使用容量を保管する列である。使用容量列404の値は、文書ファイルの登録、更新、削除といった処理が行われる度に変化することになる。また、キャビネット属性情報テーブルは、キャビネットの属性情報を管理する際にも参照、更新される。   FIG. 2 is a diagram illustrating an example of a table on the database (hereinafter referred to as a table) that stores cabinet attribute information. The tenant ID column 401 is an ID for identifying the tenant indicated by 300 in FIG. The cabinet ID column 402 is an ID for identifying a cabinet in the tenant indicated by 301, 302, and 303 in FIG. The tenant ID column 401 and the cabinet ID column 402 identify a unique cabinet in the system. The maximum size column 403 is a column for storing the cabinet capacity indicating the usable capacity of the storage. The used capacity column 404 is a column for storing the used capacity of the cabinet. The value of the used capacity column 404 changes every time processing such as registration, update, and deletion of a document file is performed. The cabinet attribute information table is also referred to and updated when managing the cabinet attribute information.

図3は、文書ファイル更新処理の一例を示すフローチャートである。まず、クライアント端末から更新する文書ファイルがアップロードされると、文書管理システムのアプリケーションプログラムがCPUによって呼び出される。アプリケーションプログラムは、記憶装置から読み込まれ、メモリに格納した上で、CPUによって実行される。そして、CPUは、まず、アップロードされた文書ファイルを受信する(S501)。ここで、CPUは、文書ファイルの更新によって文書ファイルを上書きしてしまう前に、文書管理システム内の既存文書の情報を取得しておく(S502)。その後、文書ファイルの更新を行う(S503)。より具体的に説明すると、ステップS503において、CPUは、文書ファイルを記憶装置に保管すると共に関連する属性情報をデータベースに格納し、既存の文書ファイルを削除する。そして、CPUは、S502で取得した既存文書ファイルの情報とアップロードされた更新文書ファイルの情報とからファイルサイズの増減を算出する(S504)。ファイルサイズの増減は、プラス値、即ちファイルサイズが大きくなる場合もあれば、マイナス値、即ちファイルサイズが小さくなる場合もある。そして、CPUは、ファイルサイズが増加したかどうかを判定し(S505)、増加する場合はキャビネットの空き容量を図2のキャビネット属性情報テーブルから算出して取得する(S506)。CPUは、空き容量を、最大サイズ列403の値から使用容量列404の値を減算することで算出する。そして、CPUは、キャビネットに文書ファイルを保管できる空き容量があるかどうかの判定を行う(S507)。判定処理は、S506で取得した空き容量内に、S504で算出したファイルサイズの増加量が収まるかどうかを判定するものであり、S505でファイルサイズが減少する場合にはS506、S507は行う必要が無い。空き容量があれば、CPUは、キャビネット属性情報テーブルの使用容量列404の値を更新し(S508)、データベースの更新処理をコミットする(S509)。また、空き容量がなければ、CPUは、データベースの更新処理を破棄し、S502で取得しておいた既存文書の情報に基づいて更新前の状態に戻す(S510)。   FIG. 3 is a flowchart showing an example of the document file update process. First, when a document file to be updated is uploaded from the client terminal, the application program of the document management system is called by the CPU. The application program is read from the storage device, stored in the memory, and then executed by the CPU. The CPU first receives the uploaded document file (S501). Here, the CPU acquires information of an existing document in the document management system before overwriting the document file by updating the document file (S502). Thereafter, the document file is updated (S503). More specifically, in step S503, the CPU stores the document file in the storage device, stores related attribute information in the database, and deletes the existing document file. Then, the CPU calculates the increase / decrease of the file size from the information of the existing document file acquired in S502 and the information of the uploaded updated document file (S504). The increase / decrease of the file size may increase the positive value, that is, the file size, or may decrease the negative value, that is, the file size. Then, the CPU determines whether or not the file size has increased (S505). If the file size has increased, the CPU calculates and acquires the free space of the cabinet from the cabinet attribute information table of FIG. 2 (S506). The CPU calculates the free capacity by subtracting the value in the used capacity column 404 from the value in the maximum size column 403. Then, the CPU determines whether or not there is a free capacity for storing the document file in the cabinet (S507). The determination process determines whether or not the increase amount of the file size calculated in S504 fits within the free space acquired in S506. If the file size decreases in S505, S506 and S507 need to be performed. No. If there is free space, the CPU updates the value in the used capacity column 404 of the cabinet attribute information table (S508), and commits the database update process (S509). If there is no free space, the CPU discards the database update process and returns to the state before update based on the information of the existing document acquired in S502 (S510).

なお、ここでは文書ファイルの更新処理について述べたが、文書ファイルの登録処理や文書ファイルの削除処理も類似の処理が行われる。文書ファイルの登録では常にファイルサイズが増加し、文書ファイルの削除では常にファイルサイズが減少することになり、S508のような使用容量の更新処理が行われる。また、文書ファイルをバージョン管理する場合には、CPU102は、保管するバージョンの上限数等も考慮し、ファイルサイズの増減を算出することになる。   Although the document file update processing has been described here, similar processing is performed for document file registration processing and document file deletion processing. When the document file is registered, the file size always increases, and when the document file is deleted, the file size always decreases, and the used capacity update process as in S508 is performed. When version management is performed on the document file, the CPU 102 calculates the increase / decrease in the file size in consideration of the upper limit number of versions to be stored.

図1で示したように、キャビネット内には多くの文書ファイルが存在し、複数のユーザーやシステムがアクセスする。一方、キャビネットの使用容量はデータベースで管理されており、キャビネットに紐付く属性であるため、図2で示したようなキャビネット属性情報テーブルを用いて一元的に保管されている。そして、図3で示したように、文書ファイルの登録、更新、削除処理はキャビネットの使用容量に影響するため、その都度、キャビネットの使用容量情報を更新する必要がある。そのため、アクセスが集中すると、文書ファイルの登録、更新、削除処理が同時に行われ、図3のS508で示したような使用容量の更新処理も同時に行われるケースが多くなる。このような場合、ある処理がデータベースの使用容量情報を更新するためレコードをロックすると、その間、他の処理はロックが解除されるのを待つことになる。その結果、文書ファイルの登録、更新、削除処理のパフォーマンスが低下するといった課題が発生してしまう。   As shown in FIG. 1, there are many document files in the cabinet, and a plurality of users and systems access them. On the other hand, the used capacity of the cabinet is managed by a database and is an attribute associated with the cabinet, and is therefore stored centrally using a cabinet attribute information table as shown in FIG. As shown in FIG. 3, since the registration, update, and deletion processing of the document file affects the used capacity of the cabinet, it is necessary to update the used capacity information of the cabinet each time. For this reason, when access is concentrated, document file registration, update, and deletion processing are simultaneously performed, and usage capacity update processing as shown in S508 of FIG. In such a case, when a process locks a record to update the used capacity information of the database, other processes wait for the lock to be released. As a result, there arises a problem that the performance of document file registration, update, and deletion processing deteriorates.

本発明は、文書ファイルの登録、更新、削除処理のパフォーマンスを低下させずに、空き容量や使用容量の更新や確認を可能とすることを目的とする。   An object of the present invention is to make it possible to update or check a free capacity or a used capacity without degrading the performance of registration, update, and deletion processing of a document file.

そこで、本発明の情報処理装置は、ストレージの使用可能容量に関するレコードと、文書ファイルの操作処理に係るストレージの使用容量の増減を示す増減レコードとを、空き容量テーブルに登録する登録手段と、前記登録手段により登録された複数のレコードを合算し、前記ストレージの空き容量を取得する空き容量取得手段と、を有する。   Therefore, the information processing apparatus according to the present invention includes a registration unit that registers a record relating to the usable capacity of the storage and an increase / decrease record indicating an increase / decrease in the used capacity of the storage related to the operation processing of the document file, Free space acquisition means for adding up a plurality of records registered by the registration means and acquiring the free capacity of the storage.

本発明によれば、文書ファイルの登録、更新、削除処理のパフォーマンスを低下させずに、空き容量や使用容量の更新や確認を可能とすることができる。   According to the present invention, it is possible to update or check the free space or the used space without degrading the performance of document file registration, update, and deletion processing.

文書管理システムのデータ構造をイメージで示した図である。It is the figure which showed the data structure of the document management system with the image. キャビネットの属性情報を保管するデータベース上のテーブルの一例を示す図である。It is a figure which shows an example of the table on the database which stores the attribute information of a cabinet. 文書ファイル更新処理の一例を示すフローチャートである。It is a flowchart which shows an example of a document file update process. 情報処理装置のハードウェア構成の一例を示す図である。It is a figure which shows an example of the hardware constitutions of information processing apparatus. システム構成の一例を示す図である。It is a figure which shows an example of a system configuration. 文書管理システムのソフトウェア構成の一例を示す図である。It is a figure which shows an example of the software configuration of a document management system. キャビネット属性情報を保管するテーブルの一例を示す図である。It is a figure which shows an example of the table which stores cabinet attribute information. キャビネットの空き容量を保管するテーブルの一例を示す図である。It is a figure which shows an example of the table which stores the empty capacity | capacitance of a cabinet. 空き容量テーブルに空き容量の増減レコードを追加した一例を示す図である。It is a figure which shows an example which added the increase / decrease record of the free space to the free space table. 文書ファイル更新処理のフローチャートである。It is a flowchart of a document file update process. キャビネットの空き容量を算出する際のSQL文の一例を示す図である。It is a figure which shows an example of the SQL sentence at the time of calculating the free space of a cabinet. キャビネット容量変更処理の一例を示すフローチャートである。It is a flowchart which shows an example of a cabinet capacity | capacitance change process. キャビネット使用容量算出処理の一例を示すフローチャートである。It is a flowchart which shows an example of a cabinet use capacity calculation process. 空き容量の増減レコードマージ処理の一例を示すフローチャートである。It is a flowchart which shows an example of the increase / decrease record merge process of free capacity. 空き容量の増減レコードマージ後の空き容量テーブルの一例を示す図である。It is a figure which shows an example of the free space table after the increase / decrease record of free space.

以下、本発明の実施形態について図面に基づいて説明する。   Hereinafter, embodiments of the present invention will be described with reference to the drawings.

図4は、情報処理装置のハードウェア構成の一例を示す図である。情報処理装置は、CPU102、メモリ103、記憶装置104、ビデオインタフェース105、Input/Output(以下、I/Oという)インタフェース106、通信インタフェース107を備えている。また、情報処理装置内の各構成要素はシステムバス101を介して互いに接続されている。CPU102は、システムバス101を介して各構成要素を制御したり、データの計算や加工を行ったりする中央処理装置である。メモリ103は、データやプログラムを記憶する装置で、RAM(Random Access Memory)やROM(Read Only Memory)から構成される。記憶装置104は、記憶されたデータの書き込み/読み出しを行う。記憶装置104には、ハードディスクドライブ(HDD)111、不揮発性のデータソースとして利用されるCD−ROMドライブ112、フレキシブルディスクドライブ(FDD)113がある。図4には示されていないが、記憶装置104としては、磁気テープドライブ、DVD−ROM、USBメモリ等が使用されてもよい。
本実施形態に係るプログラムは、記憶装置104から読み込まれ、メモリ103に格納され、CPU102によって実行される。なお、本実施形態ではプログラムを記憶装置104から読み込む構成としているが、ROMから読み込んだり、通信インタフェース107を介して外部から読み込んだりする構成としてもよい。CPU102が、プログラムに基づき処理を実行することによって、情報処理装置の機能及び後述するフローチャートの処理が実現される。
FIG. 4 is a diagram illustrating an example of a hardware configuration of the information processing apparatus. The information processing apparatus includes a CPU 102, a memory 103, a storage device 104, a video interface 105, an input / output (hereinafter referred to as I / O) interface 106, and a communication interface 107. In addition, each component in the information processing apparatus is connected to each other via the system bus 101. The CPU 102 is a central processing unit that controls each component via the system bus 101 and performs data calculation and processing. The memory 103 is a device that stores data and programs, and includes a RAM (Random Access Memory) and a ROM (Read Only Memory). The storage device 104 writes / reads stored data. The storage device 104 includes a hard disk drive (HDD) 111, a CD-ROM drive 112 used as a nonvolatile data source, and a flexible disk drive (FDD) 113. Although not shown in FIG. 4, a magnetic tape drive, DVD-ROM, USB memory, or the like may be used as the storage device 104.
The program according to the present embodiment is read from the storage device 104, stored in the memory 103, and executed by the CPU 102. In this embodiment, the program is read from the storage device 104. However, the program may be read from the ROM or read from the outside via the communication interface 107. When the CPU 102 executes processing based on the program, the functions of the information processing apparatus and the processing of the flowchart described below are realized.

ビデオインタフェース105は、ディスプレイ装置114への表示出力を制御する。ディスプレイ装置114には、CRTや液晶等の方式を用いたものがある。I/Oインタフェース106には、キーボード115やポインティングデバイス116等の入力装置が接続される。操作者は、キーボード115を操作することにより情報処理装置に対する動作指令等を行う。ポインティングデバイス116は、操作者による操作に応じて、ディスプレイ装置114上のカーソルを移動させてメニューやオブジェクトの選択や操作等を行う。また、ディスプレイ装置114には、タッチパネル等による操作の入力を行えるものもある。この場合、ディスプレイ装置114は出力装置と入力装置とを兼ねることになる。
通信インタフェース107は、ネットワーク117を通して外部機器との通信を行う。ネットワークには、LANやWAN、インターネットのような公衆回線等がある。また、通信インタフェース107は、ローカルプリンタ118等の他デバイスとの通信も行う。
The video interface 105 controls display output to the display device 114. Some display devices 114 use a CRT, liquid crystal display, or the like. Input devices such as a keyboard 115 and a pointing device 116 are connected to the I / O interface 106. The operator issues an operation command to the information processing apparatus by operating the keyboard 115. The pointing device 116 moves the cursor on the display device 114 in accordance with an operation by the operator, and performs selection and operation of menus and objects. In addition, some display devices 114 can input operations using a touch panel or the like. In this case, the display device 114 serves as both an output device and an input device.
The communication interface 107 communicates with an external device through the network 117. The network includes a public line such as a LAN, a WAN, and the Internet. The communication interface 107 also communicates with other devices such as the local printer 118.

図5は、システム構成の一例を示す図である。ネットワーク201には、サーバーコンピュータ(以下、サーバーという)202、クライアントパーソナルコンピュータ(以下、クライアント端末という)203、タブレット端末204が接続されている。ネットワーク201には、LAN、WAN、インターネット等がある。クライアント端末203及びタブレット端末204といったクライアント端末は、ネットワーク201を通じてサーバー202と通信を行う。なお、本実施形態において、クライアント端末203、タブレット端末204、サーバー202は何れも、図4にて示した情報処理装置の構成を有するものとする。但し、図4の構成に限定するものではなく、他の機能を備えていてもよい。また、サーバー202は、単体のコンピュータに限らず、ラックマウント型のシステムであってもよい。   FIG. 5 is a diagram illustrating an example of a system configuration. Connected to the network 201 are a server computer (hereinafter referred to as a server) 202, a client personal computer (hereinafter referred to as a client terminal) 203, and a tablet terminal 204. Examples of the network 201 include a LAN, a WAN, and the Internet. Client terminals such as the client terminal 203 and the tablet terminal 204 communicate with the server 202 through the network 201. In this embodiment, the client terminal 203, the tablet terminal 204, and the server 202 all have the configuration of the information processing apparatus shown in FIG. However, it is not limited to the configuration of FIG. 4 and may have other functions. The server 202 is not limited to a single computer but may be a rack mount system.

本実施形態に係る文書管理システムはサーバー202で動作し、クライアント端末203やタブレット端末204といったクライアント端末からサーバー上のデータにアクセスされる形態を想定している。但し、文書管理システムが、サーバー202及びクライアント端末203又は204で処理を分担して行ったりする形態もありえる。
ここで、文書管理システムとは、主に電子文書や電子化された紙文書を保管、管理するコンピュータ上のシステムのことを意味する。文書管理システムにおいて、電子文書や電子化された紙文書はコンピュータ上のファイル形式で保管される。したがって、文書管理システムで扱う電子文書は、文字による文書コンテンツに限定されず、画像や動画コンテンツ等、ファイル形式で保管されるデータを全て含むものとする(以下、ファイル形式で保管される電子文書を文書ファイルという)。
本実施形態に係る文書管理システムがサーバー202で動作する形態の一例では、サーバー202上に、データベース、アプリケーションサーバー、Webサーバーといったサーバーアプリケーションがインストールされる。クライアント端末203、204上には、Webブラウザ又は専用のクライアントアプリケーションがインストールされる。クライアント端末203、204から、サーバー202へデータの取得リクエストが発信されると、サーバー202上のWebサーバーがクライアント端末からのリクエストを受信する。そして、アプリケーションサーバーがリクエスト内容を解釈して必要なデータをデータベースから取得する。そして、アプリケーションサーバーは、Webサーバーを通して、取得したデータをクライアント端末203、204へ送信する。クライアント端末203、204では、データを受信すると、Webブラウザ又は専用のクライアントアプリケーションが、取得したデータをクライアント端末のディスプレイ装置114に表示する。
The document management system according to the present embodiment is assumed to operate in the server 202 and access data on the server from a client terminal such as the client terminal 203 or the tablet terminal 204. However, there may be a form in which the document management system shares processing with the server 202 and the client terminal 203 or 204.
Here, the document management system means a system on a computer that mainly stores and manages electronic documents and digitized paper documents. In the document management system, electronic documents and digitized paper documents are stored in a file format on a computer. Accordingly, the electronic document handled by the document management system is not limited to document content using characters, but includes all data stored in a file format, such as image and video content (hereinafter referred to as an electronic document stored in a file format). File).
In an example of a form in which the document management system according to the present embodiment operates on the server 202, a server application such as a database, an application server, or a Web server is installed on the server 202. A Web browser or a dedicated client application is installed on the client terminals 203 and 204. When a data acquisition request is transmitted from the client terminals 203 and 204 to the server 202, the Web server on the server 202 receives the request from the client terminal. Then, the application server interprets the request contents and acquires necessary data from the database. Then, the application server transmits the acquired data to the client terminals 203 and 204 through the Web server. In the client terminals 203 and 204, when the data is received, the Web browser or a dedicated client application displays the acquired data on the display device 114 of the client terminal.

図6は、文書管理システムのソフトウェア構成の一例を示す図である。リクエスト受信/レスポンス送信部601は、クライアント端末203、204からのリクエストを、受信する処理と、クライアント端末203、204へのレスポンスを送信する応答処理とを行う。キャビネット管理部602は、リクエスト受信/レスポンス送信部601から受信したキャビネットに関する参照や編集処理を行う。文書ファイル/フォルダ管理部603は、リクエスト受信/レスポンス送信部601から受信したフォルダや文書ファイルに関する参照、登録、更新、削除処理等を行う。データベースアクセス部604は、キャビネット管理部602や文書ファイル/フォルダ管理部603の処理内容に基づいてデータベースの参照、登録、更新、削除処理等処理を行う。マージ処理部605は、レコードのマージ処理(併合処理)を行う。   FIG. 6 is a diagram illustrating an example of a software configuration of the document management system. The request reception / response transmission unit 601 performs processing for receiving a request from the client terminals 203 and 204 and response processing for transmitting a response to the client terminals 203 and 204. The cabinet management unit 602 performs reference and editing processing related to the cabinet received from the request reception / response transmission unit 601. The document file / folder management unit 603 performs reference, registration, update, deletion processing, and the like regarding the folder and document file received from the request reception / response transmission unit 601. The database access unit 604 performs processing such as database reference, registration, update, and deletion processing based on the processing contents of the cabinet management unit 602 and the document file / folder management unit 603. The merge processing unit 605 performs record merging processing (merging processing).

図7は、キャビネット属性情報を保管するテーブル(キャビネット属性情報テーブル)の一例を示す図である。テナントID列701は、図1の300で示したテナントを識別するIDである。キャビネットID列702は、図1の301、302、303で示したテナント内のキャビネットを識別するIDである。テナントID列701とキャビネットID列702とによって、システム内で一意のキャビネットが特定されることになる。最大サイズ列703は、キャビネット容量を保管する列である。列701、列702、列703は、図2の列401、列402、列403と同じである。但し、図2の使用容量列404は、図7のキャビネット属性情報テーブルにはなく、空き容量の情報を保管するテーブル(図8の空き容量テーブル)に該当する内容が格納される。   FIG. 7 is a diagram illustrating an example of a table (cabinet attribute information table) for storing cabinet attribute information. The tenant ID column 701 is an ID for identifying the tenant indicated by 300 in FIG. The cabinet ID column 702 is an ID for identifying a cabinet in the tenant indicated by 301, 302, and 303 in FIG. The tenant ID column 701 and the cabinet ID column 702 identify a unique cabinet in the system. The maximum size column 703 is a column for storing cabinet capacity. Columns 701, 702, and 703 are the same as columns 401, 402, and 403 in FIG. However, the used capacity column 404 in FIG. 2 is not in the cabinet attribute information table in FIG. 7 but stores contents corresponding to a table (free capacity table in FIG. 8) for storing information on free capacity.

図8は、キャビネットの空き容量に関する情報を保管するテーブル(空き容量テーブル)の一例を示す図である。テナントID列801はテナントを識別するIDである。キャビネットID列802はキャビネットを識別するIDである。図7のキャビネット属性情報テーブルと同じように、テナントID列801とキャビネットID列802とによって、システム内で一意のキャビネットが特定されることになる。データタイプ列803は空き容量テーブルのレコード種別を示す列である。レコード種別が0のレコードは、空き容量を示す値のベースとなるレコードであることを示している。レコード種別が0のレコードは、各キャビネットに必ず1レコード存在し、複数レコードになることはない。空き容量列804は、キャビネットの空き容量を保管する列である。図2では、使用容量を保管していたが、文書ファイルの登録、更新、削除処理では、図3のS506で示したように空き容量の問合せが多い。そこで、空き容量列804において空き容量を保管している。   FIG. 8 is a diagram illustrating an example of a table (free capacity table) that stores information related to the free capacity of the cabinet. A tenant ID column 801 is an ID for identifying a tenant. A cabinet ID column 802 is an ID for identifying a cabinet. Similar to the cabinet attribute information table of FIG. 7, a unique cabinet in the system is specified by the tenant ID column 801 and the cabinet ID column 802. The data type column 803 is a column indicating the record type of the free capacity table. A record with a record type of 0 indicates that it is a record serving as a base of a value indicating a free capacity. A record whose record type is 0 always exists in each cabinet, and does not become a plurality of records. The free capacity column 804 is a column for storing the free capacity of the cabinet. Although the used capacity is stored in FIG. 2, in the document file registration, update, and deletion processing, as shown in S506 of FIG. Therefore, the free space is stored in the free space column 804.

図9は、図8の空き容量テーブルに空き容量の増減レコードを追加した一例を示す図である。テーブルの各列は図8と同じである。レコード901は、図8で示したように空き容量のベースとなるレコードである。レコード902は、文書ファイルが登録又は更新された場合等に挿入されるレコードを示している。レコード902のデータタイプ列803に保管されたレコード種別は2であるが、これは文書ファイルの増減を示すレコードであることを示している。空き容量列804に保管されたレコード902の値−6530は、文書ファイルが登録又は更新されたことによってファイルサイズが6530バイト増加し、空き容量が6530バイト減少したことを意味している。レコード903は、文書ファイルが削除又は更新された場合等に挿入されるレコードを示している。空き容量列804に保管されたレコード903の値1000は、文書ファイルが削除又は更新されたことによってファイルサイズが1000バイト減少し、空き容量が1000バイト増加したことを意味している。レコード904は、キャビネットに割り当てられた容量が変更された場合に挿入されるレコードを示している。データタイプ列803に保管されたレコード種別は1であるが、これはキャビネットに割り当てられたストレージ容量の増減を示すレコードであることを示している。キャビネット容量を変更した場合、図7の最大サイズ列703が変更され、変更されたキャビネット容量の増減値が空き容量テーブルにも挿入される。空き容量列804に保管されたレコード904の値2000000は、キャビネットのストレージ最大容量が2000000バイト増加したことによって、空き容量も2000000バイト増加したことを意味している。   FIG. 9 is a diagram showing an example in which a free space increase / decrease record is added to the free space table of FIG. Each column of the table is the same as in FIG. The record 901 is a record serving as a base of the free capacity as shown in FIG. A record 902 indicates a record to be inserted when a document file is registered or updated. The record type stored in the data type column 803 of the record 902 is 2, which indicates that the record indicates increase / decrease in the document file. The value -6530 of the record 902 stored in the free capacity column 804 means that the file size has increased by 6530 bytes and the free capacity has decreased by 6530 bytes by registering or updating the document file. A record 903 indicates a record to be inserted when a document file is deleted or updated. The value 1000 of the record 903 stored in the free space column 804 means that the file size has decreased by 1000 bytes and the free space has increased by 1000 bytes due to deletion or update of the document file. A record 904 indicates a record to be inserted when the capacity allocated to the cabinet is changed. The record type stored in the data type column 803 is 1, which indicates that the record indicates an increase or decrease in storage capacity allocated to the cabinet. When the cabinet capacity is changed, the maximum size column 703 in FIG. 7 is changed, and the increased / decreased value of the changed cabinet capacity is also inserted into the free capacity table. A value 2,000,000 of the record 904 stored in the free capacity column 804 means that the free capacity has increased by 2 million bytes as the maximum storage capacity of the cabinet has increased by 2000000 bytes.

図10は、文書ファイル更新処理のフローチャートである。大まかな処理の流れは、図3の文書ファイル更新処理の例と同じであるが、後述のキャビネットの空き容量を取得する処理(S1006)と、空き容量テーブルに増減レコードを挿入する処理(S1008)との内容が異なる。
図10において、まず、クライアント端末203、204から更新する文書ファイルがアップロードされると、文書管理システムのアプリケーションプログラムがCPU102によって呼び出される。アプリケーションプログラムは、記憶装置104から読み込まれ、メモリ103に格納した上で、CPU102によって実行される。
まず、リクエスト受信/レスポンス送信部601は、アップロードされた文書ファイルを受信する(S1001)。文書ファイル/フォルダ管理部603は、文書ファイル更新によって文書ファイルが上書きされてしまう前に既存文書ファイルの情報を取得しておき(S1002)、文書ファイルの更新を行う(S1003)。より具体的に説明すると、ステップS1003において、文書ファイル/フォルダ管理部603は、文書ファイルを記憶装置104に保管すると共に関連する属性情報をデータベースに格納し、既存の文書ファイルを削除する。そして、文書ファイル/フォルダ管理部603は、S1002で取得した既存文書ファイルの情報とアップロードされた更新文書ファイルの情報とからファイルサイズの増減を算出する(S1004)。ファイルサイズの増減は、プラス値、即ちファイルサイズが大きくなった場合もあれば、マイナス値、即ちファイルサイズが小さくなった場合もある。文書ファイル/フォルダ管理部603は、ファイルサイズが増加したかどうかを判定する(S1005)。増加した場合は、キャビネット管理部602は、キャビネットの空き容量を図9の空き容量テーブルから取得する(S1006)。図9で示したように、空き容量テーブルには、各キャビネットに関して空き容量のベースとなるレコード(各キャビネットに割り当てられた最大ストレージ容量の増減に関するレコード)901,904と、文書ファイルの追加・変更・削除による容量の増減を示すレコード902,903と、が存在する。したがって、キャビネットの空き容量はそれらを合算した値である。各キャビネットに割り当てられた最大ストレージ容量の増減に関するレコードは、ストレージの使用可能容量に関するレコードの一例である。文書ファイルの追加・変更・削除による容量の増減を示すレコードは、文書ファイルの操作処理に係るストレージの使用容量の増減を示す増減レコードの一例である。
FIG. 10 is a flowchart of the document file update process. The rough processing flow is the same as that in the example of the document file update process in FIG. 3, but a process for acquiring the free space of the cabinet described later (S1006) and a process for inserting the increase / decrease records in the free capacity table (S1008) And the contents are different.
In FIG. 10, first, when a document file to be updated is uploaded from the client terminals 203 and 204, the application program of the document management system is called by the CPU 102. The application program is read from the storage device 104, stored in the memory 103, and then executed by the CPU.
First, the request reception / response transmission unit 601 receives an uploaded document file (S1001). The document file / folder management unit 603 acquires information of an existing document file before the document file is overwritten by the document file update (S1002), and updates the document file (S1003). More specifically, in step S1003, the document file / folder management unit 603 stores the document file in the storage device 104, stores related attribute information in the database, and deletes the existing document file. Then, the document file / folder management unit 603 calculates the increase / decrease of the file size from the information of the existing document file acquired in S1002 and the information of the updated updated document file (S1004). The increase or decrease of the file size may be a positive value, that is, the file size may be increased, or a negative value, that is, the file size may be decreased. The document file / folder management unit 603 determines whether the file size has increased (S1005). If the number has increased, the cabinet management unit 602 acquires the free space of the cabinet from the free space table in FIG. 9 (S1006). As shown in FIG. 9, in the free space table, records that serve as bases of free space for each cabinet (records related to increase / decrease in the maximum storage capacity allocated to each cabinet) 901, 904, and addition / change of document files There are records 902 and 903 indicating the increase / decrease in capacity due to deletion. Therefore, the free space of the cabinet is the sum of them. The record related to the increase or decrease of the maximum storage capacity allocated to each cabinet is an example of the record related to the usable capacity of the storage. A record indicating increase / decrease in capacity due to addition / change / deletion of a document file is an example of an increase / decrease record indicating increase / decrease in storage usage capacity related to operation processing of a document file.

ステップS1006において、キャビネット管理部602がキャビネットの空き容量を算出する際のSQL文の例を図11で示す。図11のSQL文1101にあるCABINET_SPACEは、空き容量テーブルのテーブル名である。したがって、SQL文1101は、空き容量テーブルから設定されたキャビネットに関連するレコードの空き容量値を合算し、取得することを示している。キャビネット管理部602は、データタイプ列803には関係なく、設定されたキャビネットに該当するレコードの空き容量列804の値を合算して合計値を求めることで、キャビネットの空き容量を取得することができる。   FIG. 11 shows an example of an SQL statement when the cabinet management unit 602 calculates the free space of the cabinet in step S1006. CABINET_SPACE in the SQL statement 1101 in FIG. 11 is the table name of the free capacity table. Therefore, the SQL statement 1101 indicates that the free capacity values of the records related to the cabinet set from the free capacity table are added and acquired. Regardless of the data type column 803, the cabinet management unit 602 can obtain the free space of the cabinet by adding up the values of the free space column 804 of the record corresponding to the set cabinet to obtain the total value. it can.

図10の説明に戻り、文書ファイル/フォルダ管理部603は、キャビネットに文書ファイルを保管できる空き容量があるかどうかの判定を行う(S1007)。判定処理は、S1006で算出して取得したキャビネットの空き容量に、S1004で算出したファイルサイズの増加量が収まるかどうかを判定するものであり、S1005でファイルサイズが減少する場合にはS1006、S1007は行う必要が無い。S1007で空き容量があると判定した場合、キャビネット管理部602は、文書ファイルの追加・変更・削除による容量の増減レコードを空き容量テーブルに挿入し(S1008)、データベースの更新処理をコミットする(S1009)。S1008で挿入されるレコードは、ファイルサイズが増加する場合は図9のレコード902のようにマイナス値が入り、ファイルサイズが減少する場合は図9のレコード903のようなプラス値が入ることになる。ステップS1007で空き容量がないと判断された場合、文書ファイル/フォルダ管理部603は、データベースの更新処理を破棄する(S1010)。上記フローチャートの処理において、データベースへのアクセスはデータベースアクセス部604によって行われる。リクエスト受信/レスポンス送信部601、キャビネット管理部602、文書ファイル/フォルダ管理部603がデータベースアクセス部604を使ってデータベースにアクセスする。   Returning to the description of FIG. 10, the document file / folder management unit 603 determines whether or not there is a free space in the cabinet that can store the document file (S1007). The determination process is to determine whether or not the increase amount of the file size calculated in S1004 fits in the free space of the cabinet calculated and acquired in S1006. If the file size decreases in S1005, S1006 and S1007 are determined. There is no need to do. If it is determined in S1007 that there is free space, the cabinet management unit 602 inserts a record for increasing / decreasing the capacity due to addition / change / deletion of the document file into the free space table (S1008), and commits the database update processing (S1009). ). The record inserted in S1008 has a negative value as shown in the record 902 in FIG. 9 when the file size increases, and a positive value such as the record 903 in FIG. 9 when the file size decreases. . If it is determined in step S1007 that there is no free space, the document file / folder management unit 603 discards the database update processing (S1010). In the processing of the above flowchart, the database access unit 604 accesses the database. The request reception / response transmission unit 601, the cabinet management unit 602, and the document file / folder management unit 603 use the database access unit 604 to access the database.

なお、ここでは文書ファイルの更新処理について述べたが、文書ファイルの登録処理や文書ファイルの削除処理も類似の処理が行われる。文書ファイルの登録では常にファイルサイズが増加し、文書ファイルの削除処理では常にファイルサイズが減少することになり、S1008のような空き容量増減レコードの挿入処理が行われる。また、文書ファイルをバージョン管理する場合には、文書ファイル/フォルダ管理部603は、保管するバージョンの上限数等も考慮し、ファイルサイズの増減を算出することになる。
このように、ステップS1008で行われる処理は、図3のステップS508と異なり、文書ファイルの追加・変更・削除による容量の増減レコードをテーブルへ挿入する処理である。したがって、レコードのロック解除待ちは発生せず、文書ファイルの登録、更新、削除処理のパフォーマンスは低下しない。
Although the document file update processing has been described here, similar processing is performed for document file registration processing and document file deletion processing. The file size always increases in the registration of the document file, and the file size always decreases in the deletion process of the document file, and the insertion process of the free space increase / decrease record as in S1008 is performed. Further, when version management is performed on a document file, the document file / folder management unit 603 calculates the increase / decrease of the file size in consideration of the upper limit number of versions to be stored.
As described above, the processing performed in step S1008 is processing for inserting a record for increasing / decreasing the capacity by adding / changing / deleting a document file into the table, unlike step S508 in FIG. Therefore, there is no waiting for a record to be unlocked, and the performance of document file registration, update, and deletion processing does not deteriorate.

図12は、キャビネット容量変更処理の一例を示すフローチャートである。キャビネット容量変更処理は、図6のキャビネット管理部602によって実行され、データベースへの処理はデータベースアクセス部604によって実行される。キャビネット容量を変更する場合も、キャビネットの空き容量に変更が生じるため、空き容量を管理する必要がある。図12において、まず、キャビネット管理部602は、図7で示したキャビネット属性情報テーブルのレコードを取得すると同時にロックする(S1201)。レコードをロックするのは、同時にキャビネット属性情報を更新する処理が行われた場合の不整合を避けるための排他処理が必要となるためである。キャビネット管理部602は、レコードのロックができたかどうかを判定し(S1202)、ロックできなかった場合は、排他エラーを返す(S1203)。キャビネット管理部602は、ロックできた場合は、変更サイズがプラス値、即ち容量を増加させるのか、変更サイズがマイナス値、即ち容量を減少させるのかを判定する(S1204)。キャビネット管理部602は、変更サイズがプラス値の場合は、ステップS1208へ進む。キャビネット管理部602は、変更サイズがマイナス値であった場合は、空き容量テーブルから現在のキャビネット空き容量を取得する(S1205)。空き容量の取得処理は、図10のステップS1006の処理と同じである。そして、キャビネット管理部602は、変更サイズの絶対値、即ち減少するサイズと空き容量とを比較する(S1206)。キャビネット管理部602は、減少するサイズが空き容量より大きい場合は、使用容量よりもキャビネット容量が小さくなってしまうため更新不可エラーとする(S1207)。キャビネット管理部602は、減少するサイズが空き容量より小さい場合は、S1208に進む。S1208において、キャビネット管理部602は、S1201で取得したキャビネット属性情報テーブルの最大サイズ列703の値と、変更サイズと、を合算し、合算した値でキャビネット属性情報テーブルの最大サイズ列703の値を更新する。次に、キャビネット管理部602は、空き容量テーブルに増減レコードを挿入し(S1209)、データベースへの更新処理をコミットする(S1210)。ステップS1209では、図9のレコード904のようなレコードが挿入される。
このように、キャビネット容量の変更処理においても、ステップS1209の通り空き容量の変更をレコード挿入で行うため、空き容量テーブルのレコードのロック解除待ちは発生せず、文書ファイルの登録、更新、削除処理のパフォーマンスは低下しない。また、キャビネット属性情報テーブルは、文書ファイルの登録、更新、削除処理では参照する必要がないため、パフォーマンスには影響しない。
FIG. 12 is a flowchart illustrating an example of the cabinet capacity changing process. The cabinet capacity change process is executed by the cabinet management unit 602 in FIG. 6, and the database processing is executed by the database access unit 604. Even when the cabinet capacity is changed, the available capacity of the cabinet is changed, so it is necessary to manage the available capacity. In FIG. 12, first, the cabinet management unit 602 acquires and locks the record of the cabinet attribute information table shown in FIG. 7 (S1201). The reason for locking the record is that an exclusive process is required to avoid inconsistency when the process of updating the cabinet attribute information is performed at the same time. The cabinet management unit 602 determines whether or not the record is locked (S1202), and returns an exclusive error if the record cannot be locked (S1203). When the cabinet management unit 602 can lock, the cabinet management unit 602 determines whether the change size is a positive value, that is, the capacity is increased, or the change size is a negative value, that is, the capacity is decreased (S1204). If the changed size is a positive value, the cabinet management unit 602 proceeds to step S1208. If the change size is a negative value, the cabinet management unit 602 acquires the current cabinet free space from the free space table (S1205). The free space acquisition process is the same as the process in step S1006 of FIG. Then, the cabinet management unit 602 compares the absolute value of the changed size, that is, the decreasing size with the free capacity (S1206). If the size to be reduced is larger than the free capacity, the cabinet management unit 602 sets an unrenewable error because the cabinet capacity becomes smaller than the used capacity (S1207). If the size to be reduced is smaller than the free space, the cabinet management unit 602 proceeds to S1208. In S1208, the cabinet management unit 602 adds the value of the maximum size column 703 of the cabinet attribute information table acquired in S1201 and the changed size, and uses the summed value as the value of the maximum size column 703 of the cabinet attribute information table. Update. Next, the cabinet management unit 602 inserts an increase / decrease record in the free capacity table (S1209) and commits the update process to the database (S1210). In step S1209, a record such as record 904 in FIG. 9 is inserted.
As described above, in the cabinet capacity changing process, the free capacity is changed by inserting a record as in step S1209. Therefore, there is no waiting for unlocking the record in the free capacity table, and document file registration, update, and deletion processes are performed. The performance does not decrease. Further, the cabinet attribute information table does not need to be referred to in document file registration, update, and deletion processing, and therefore does not affect performance.

図13は、キャビネット使用容量算出処理の一例を示すフローチャートである。キャビネット使用容量算出処理は、図6のキャビネット管理部602で実行され、データベースへの処理はデータベースアクセス部604で実行される。図2に示すキャビネット属性情報テーブルにあった使用容量列404を、図8で示した空き容量テーブルでは空き容量列804としたため、キャビネット管理部602は、使用容量を算出する場合は、キャビネット容量から空き容量を減算することになる。S1301において、キャビネット管理部602は、空き容量テーブルからキャビネットの空き容量を取得する。この処理は図10のステップS1006と同様である。また、S1302において、キャビネット管理部602は、キャビネット属性情報テーブルの最大サイズ列703からキャビネット容量を取得する。そして、S1303において、キャビネット管理部602は、キャビネット容量から空き容量を減算して使用容量を求める(使用容量取得)。   FIG. 13 is a flowchart illustrating an example of cabinet usage capacity calculation processing. The cabinet usage capacity calculation process is executed by the cabinet management unit 602 in FIG. 6, and the database access process is executed by the database access unit 604. Since the used capacity column 404 in the cabinet attribute information table shown in FIG. 2 is changed to the free capacity column 804 in the free capacity table shown in FIG. 8, the cabinet management unit 602 calculates the used capacity from the cabinet capacity. The free space will be subtracted. In S1301, the cabinet management unit 602 acquires the free space of the cabinet from the free space table. This process is the same as step S1006 in FIG. In step S1302, the cabinet management unit 602 acquires the cabinet capacity from the maximum size column 703 of the cabinet attribute information table. In step S1303, the cabinet management unit 602 subtracts the free capacity from the cabinet capacity to obtain the used capacity (used capacity acquisition).

図14と図15とで、空き容量の増減レコードマージ処理について説明する。図9、図10のステップS1008や図12のステップS1209で説明したように、空き容量に増減があった場合は、空き容量テーブルに増減レコードが挿入されて行く。空き容量の取得は図11のSQL文1101で行われるため、増減レコードが多数あっても、空き容量取得処理のパフォーマンスはほとんど低下しない。但し、文書管理システムの運用を続けて行き、増減レコードが膨大な数になった場合は、空き容量算出処理のパフォーマンスが低下する可能性がある。そのため、定期的に増減レコードを削減する処理が必要となる。   The free space increase / decrease record merge processing will be described with reference to FIGS. As described in step S1008 in FIG. 9 and FIG. 10 and step S1209 in FIG. 12, when the free space has increased or decreased, the increase / decrease record is inserted into the free space table. Since the free space acquisition is performed by the SQL statement 1101 in FIG. 11, the performance of the free space acquisition processing hardly deteriorates even if there are many increase / decrease records. However, if the document management system continues to be operated and the number of increase / decrease records becomes enormous, the performance of the free space calculation process may be reduced. For this reason, a process for periodically reducing the increase / decrease record is required.

図14は、空き容量の増減レコードマージ処理の一例を示すフローチャートである。増減レコードマージ処理は、図6のマージ処理部605で実行される。但し、具体的には、空き容量テーブルの更新処理はキャビネット管理部602で実行される。データベースの処理はデータベースアクセス部604で実行される。図14において、マージ処理部605は、空き容量テーブルの更新対象レコードをロックし(S1401)、ロックが成功したかどうかを判定する(S1402)。マージ処理部605は、ロックが失敗した場合には、排他エラーとする(S1403)。マージ処理部605は、ロックが成功した場合は、空き容量テーブルからキャビネットの空き容量を取得する(S1404)。この処理は図10のステップS1006と同様である。次に、マージ処理部605は、ステップS1404で取得した空き容量の値で、空き容量テーブルのベースとなるレコード更新する(S1405)。ベースとなるレコードとは、図8で説明したデータタイプ列803の値が0のレコードのことであり、マージ処理部605は、このレコードの空き容量列804の値を更新する。そして、マージ処理部605は、空き容量テーブルの増減レコードを削除する(S1406)。増減レコードとは、図8で説明したデータタイプ列803の値が1又は2のレコードのことである。最後にマージ処理部605は、データベースの更新処理をコミットする(S1407)。   FIG. 14 is a flowchart illustrating an example of the free space increase / decrease record merging process. The increase / decrease record merging process is executed by the merge processing unit 605 in FIG. However, specifically, the free space table update process is executed by the cabinet management unit 602. Database processing is executed by the database access unit 604. In FIG. 14, the merge processing unit 605 locks the record to be updated in the free capacity table (S1401), and determines whether the lock is successful (S1402). If the lock fails, the merge processing unit 605 sets an exclusive error (S1403). If the lock is successful, the merge processing unit 605 acquires the free space of the cabinet from the free space table (S1404). This process is the same as step S1006 in FIG. Next, the merge processing unit 605 updates the record serving as the base of the free space table with the free space value acquired in step S1404 (S1405). The base record is a record whose value in the data type column 803 described in FIG. 8 is 0, and the merge processing unit 605 updates the value in the free capacity column 804 of this record. Then, the merge processing unit 605 deletes the increase / decrease record in the free capacity table (S1406). The increase / decrease record is a record whose value of the data type column 803 described with reference to FIG. Finally, the merge processing unit 605 commits the database update process (S1407).

図15は、空き容量の増減レコードマージ後の空き容量テーブルの一例を示す図である。図15の空き容量テーブルの内容は、図9に示した空き容量テーブルの増減レコードをベースレコードにマージした内容になっている。レコード1501はベースレコードで、ステップS1404で取得した空き容量がレコード1501の空き容量列804の値11976310として保管されている。点線1502は削除されたレコードを示している。図9の増減レコードの値がベースレコードに集約され、削除されていることを示している。
図14と図15とで示した空き容量の増減レコードマージ処理は図6のマージ処理部605が実行するが、マージ処理部605の実行方法として様々な方法が考えられる。例えば、スケジューラの時間指定や間隔指定によって定期的にマージ処理を実行する方法や、定期的に増減レコードの件数を確認又は文書ファイルの更新処理回数をカウントして所定の件数を上回っていた場合にマージ処理を実行する方法等がある。更に、図12のキャビネット容量変更処理や、使用容量の参照等、図13のキャビネット使用容量処理が実行されるタイミングに行うといった方法もある。
以上によって、文書ファイル登録、更新、削除処理のパフォーマンスを低下させずに、キャビネットの使用容量の更新や確認を行うことができる。
なお、本実施形態では、図8、図9のように空き容量を管理するテーブルを用いたが、使用容量を管理するテーブルを用いてもよい。
FIG. 15 is a diagram illustrating an example of a free space table after merged records of free space increase / decrease. The contents of the free capacity table of FIG. 15 are the contents obtained by merging the increase / decrease records of the free capacity table shown in FIG. 9 with the base records. A record 1501 is a base record, and the free capacity acquired in step S1404 is stored as the value 11976310 of the free capacity column 804 of the record 1501. A dotted line 1502 indicates the deleted record. The values of the increase / decrease records in FIG. 9 are aggregated and deleted in the base record.
The merge processing unit 605 in FIG. 6 performs the free space increase / decrease record merge processing shown in FIGS. 14 and 15, and various methods can be considered as the execution method of the merge processing unit 605. For example, when the merge process is executed periodically by specifying the time or interval of the scheduler, or when the number of increase / decrease records is regularly checked or the number of document file update processes is counted to exceed the predetermined number There is a method for executing merge processing. Furthermore, there is a method of performing the cabinet capacity changing process of FIG. 13 such as the cabinet capacity changing process of FIG. 12 or the reference of the used capacity.
As described above, the used capacity of the cabinet can be updated or confirmed without degrading the performance of document file registration, update, and deletion processing.
In this embodiment, the table for managing the free capacity is used as shown in FIGS. 8 and 9, but a table for managing the used capacity may be used.

<その他の実施形態>
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読み出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
<Other embodiments>
The present invention supplies a program that realizes one or more functions of the above-described embodiments to a system or apparatus via a network or a storage medium, and one or more processors in a computer of the system or apparatus read and execute the program This process can be realized. It can also be realized by a circuit (for example, ASIC) that realizes one or more functions.

102 CPU、202 サーバーコンピュータ 102 CPU, 202 server computer

Claims (10)

ストレージの使用可能容量に関するレコードと、文書ファイルの操作処理に係るストレージの使用容量の増減を示す増減レコードとを、空き容量テーブルに登録する登録手段と、
前記登録手段により登録された複数のレコードを合算し、前記ストレージの空き容量を取得する空き容量取得手段と、
を有する情報処理装置。
Registration means for registering a record relating to the usable capacity of the storage and an increase / decrease record indicating an increase / decrease in the used capacity of the storage related to the operation processing of the document file in the free capacity table;
Free space acquisition means for adding up a plurality of records registered by the registration means and acquiring the free capacity of the storage;
An information processing apparatus.
前記ストレージの使用可能容量を示すキャビネット容量と前記空き容量取得手段により取得された前記空き容量とに基づいて、前記ストレージの使用容量を取得する使用容量取得手段を更に有する請求項1記載の情報処理装置。   The information processing according to claim 1, further comprising: a used capacity acquisition unit configured to acquire a used capacity of the storage based on a cabinet capacity indicating the usable capacity of the storage and the free capacity acquired by the free capacity acquisition unit. apparatus. 前記文書ファイルの操作処理とは、前記文書ファイルの登録処理、前記文書ファイルの更新処理、前記文書ファイルの削除処理である請求項1又は2記載の情報処理装置。   The information processing apparatus according to claim 1, wherein the document file operation process is a document file registration process, the document file update process, or the document file deletion process. 前記空き容量テーブルに含まれる複数の増減レコードをベースレコードに併合し、前記複数の増減レコードを削除する併合手段を更に有する請求項1乃至3何れか1項記載の情報処理装置。   The information processing apparatus according to claim 1, further comprising a merging unit that merges a plurality of increase / decrease records included in the free capacity table into a base record and deletes the plurality of increase / decrease records. 前記併合手段は、前記空き容量テーブルに含まれる対象とする複数の増減レコードをロックし、ロックに成功した場合、前記対象とする複数の増減レコードをベースレコードに併合し、前記対象とする複数の増減レコードを前記空き容量テーブルから削除する請求項4記載の情報処理装置。   The merging means locks a plurality of increase / decrease records to be included in the free capacity table, and when the lock is successful, merges the plurality of increase / decrease records to be a base record, The information processing apparatus according to claim 4, wherein the increase / decrease record is deleted from the free capacity table. ストレージの使用可能容量に関する増減レコードと、文書ファイルの操作処理に係るストレージの使用容量の増減を示す増減レコードとを、空き容量テーブルに登録する登録手段と、
前記登録手段により登録された複数の前記増減レコードを合算し、前記ストレージの空き容量を取得する空き容量取得手段と、
を有する文書管理システム。
A registration means for registering an increase / decrease record related to the usable capacity of the storage and an increase / decrease record indicating increase / decrease of the used capacity of the storage related to the operation processing of the document file in the free capacity table;
Free capacity acquisition means for adding up the plurality of increase / decrease records registered by the registration means and acquiring the free capacity of the storage;
A document management system.
前記ストレージの使用可能容量を示すキャビネット容量と前記空き容量取得手段により取得された前記空き容量とに基づいて前記ストレージの使用容量を取得する使用容量取得手段を更に有する請求項6記載の文書管理システム。   The document management system according to claim 6, further comprising a used capacity acquisition unit that acquires the used capacity of the storage based on a cabinet capacity indicating the usable capacity of the storage and the free capacity acquired by the free capacity acquisition unit. . 情報処理装置が実行する情報処理方法であって、
ストレージの使用可能容量に関するレコードと、文書ファイルの操作処理に係るストレージの使用容量の増減を示す増減レコードを空き容量テーブルに登録する登録ステップと、
前記登録ステップにより登録された複数のレコードを合算し、前記ストレージの空き容量を取得する空き容量取得ステップと、
を含む情報処理方法。
An information processing method executed by an information processing apparatus,
A registration step of registering in the free capacity table a record related to the usable capacity of the storage and an increase / decrease record indicating an increase / decrease in the used capacity of the storage related to the operation processing of the document file;
A free capacity acquisition step of adding a plurality of records registered in the registration step and acquiring the free capacity of the storage;
An information processing method including:
文書管理システムが実行する情報処理方法であって、
ストレージの使用可能容量に関する増減レコードと、文書ファイルの操作処理に係るストレージの使用容量の増減を示す増減レコードとを、空き容量テーブルに登録する登録ステップと、
前記登録ステップにより登録された複数の前記増減レコードを合算し、前記ストレージの空き容量を取得する空き容量取得ステップと、
を含む情報処理方法。
An information processing method executed by a document management system,
A registration step for registering an increase / decrease record related to the usable capacity of the storage and an increase / decrease record indicating increase / decrease of the used capacity of the storage related to the operation processing of the document file in the free capacity table;
A free capacity acquisition step of adding a plurality of the increase / decrease records registered in the registration step and acquiring the free capacity of the storage;
An information processing method including:
コンピュータに、
ストレージの使用可能容量に関するレコードと、文書ファイルの操作処理に係るストレージの使用容量の増減を示す増減レコードとを、空き容量テーブルに登録する登録ステップと、
前記登録ステップにより登録された複数のレコードを合算し、前記ストレージの空き容量を取得する空き容量取得ステップと、
を実行させるためのプログラム。
On the computer,
A registration step of registering in the free capacity table a record relating to the usable capacity of the storage and an increase / decrease record indicating an increase / decrease in the used capacity of the storage related to the operation processing of the document file;
A free capacity acquisition step of adding a plurality of records registered in the registration step and acquiring the free capacity of the storage;
A program for running
JP2014082866A 2014-04-14 2014-04-14 Information processing apparatus, document management system, information processing method, and program Active JP6305177B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014082866A JP6305177B2 (en) 2014-04-14 2014-04-14 Information processing apparatus, document management system, information processing method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014082866A JP6305177B2 (en) 2014-04-14 2014-04-14 Information processing apparatus, document management system, information processing method, and program

Publications (2)

Publication Number Publication Date
JP2015203963A JP2015203963A (en) 2015-11-16
JP6305177B2 true JP6305177B2 (en) 2018-04-04

Family

ID=54597397

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014082866A Active JP6305177B2 (en) 2014-04-14 2014-04-14 Information processing apparatus, document management system, information processing method, and program

Country Status (1)

Country Link
JP (1) JP6305177B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7347094B2 (en) 2019-10-04 2023-09-20 富士フイルムビジネスイノベーション株式会社 Information processing device and information processing program

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7895247B2 (en) * 2003-10-29 2011-02-22 Oracle International Corporation Tracking space usage in a database
JP2007148501A (en) * 2005-11-24 2007-06-14 Hitachi Information Systems Ltd System, method and program for automatically allocating disk capacity
JP2008257393A (en) * 2007-04-03 2008-10-23 Hitachi Kokusai Electric Inc Data input/output control circuit
WO2012002428A1 (en) * 2010-07-01 2012-01-05 日本電気株式会社 Storage device, method for determining de-allocation priority order, and program
JP5652134B2 (en) * 2010-11-02 2015-01-14 ブラザー工業株式会社 Printing device
JP5818569B2 (en) * 2011-08-10 2015-11-18 株式会社メガチップス File system, file management method, semiconductor storage device, information processing apparatus, and program

Also Published As

Publication number Publication date
JP2015203963A (en) 2015-11-16

Similar Documents

Publication Publication Date Title
US20230090977A1 (en) Synchronized content library
US9235589B2 (en) Optimizing storage allocation in a virtual desktop environment
US11537556B2 (en) Optimized content object storage service for large scale content
JP6463393B2 (en) Tenant data recovery across tenant migration
US9959306B2 (en) Partition-based index management in hadoop-like data stores
US9558194B1 (en) Scalable object store
US9009105B2 (en) Application exits for consistent tenant lifecycle management procedures
US11586506B2 (en) System and method for indexing image backups
US9519653B2 (en) Techniques for efficiently enforcing resource quotas in a multi-tenant cloud storage system
US10970311B2 (en) Scalable snapshot isolation on non-transactional NoSQL
US11687595B2 (en) System and method for searching backups
US11811851B2 (en) Method and system for enforcing governance across multiple content repositories using a content broker
US10783073B2 (en) Chronologically ordered out-of-place update key-value storage system
US20210133046A1 (en) System and method for efficient backup generation
JP6305177B2 (en) Information processing apparatus, document management system, information processing method, and program
US11113339B2 (en) System and method for federated content management using a federated library and federated metadata propagation
US9298487B2 (en) Managing virtual machine images in a distributed computing environment
US10747748B2 (en) Generating mobile data schema to support disconnected operations
CN110018761A (en) To the method, apparatus and terminal being managed recently using file
US9336232B1 (en) Native file access
US9442938B1 (en) File system layer
JP7383940B2 (en) Information management device and information management system
US20130031146A1 (en) Integrated management apparatus, document management method, and storage medium
JP5433449B2 (en) Data management method
JP2013033342A (en) Configuration information management device, configuration information management method, configuration information management program and storage medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170412

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180130

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: 20180206

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180306

R151 Written notification of patent or utility model registration

Ref document number: 6305177

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151