JP2015108966A - Document management system, information processing apparatus in document management system, document management method, and program - Google Patents

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

Info

Publication number
JP2015108966A
JP2015108966A JP2013251454A JP2013251454A JP2015108966A JP 2015108966 A JP2015108966 A JP 2015108966A JP 2013251454 A JP2013251454 A JP 2013251454A JP 2013251454 A JP2013251454 A JP 2013251454A JP 2015108966 A JP2015108966 A JP 2015108966A
Authority
JP
Japan
Prior art keywords
data
backup
file
file server
document management
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.)
Pending
Application number
JP2013251454A
Other languages
Japanese (ja)
Inventor
和成 山中嶋
Kazunari Yamanakajima
和成 山中嶋
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 JP2013251454A priority Critical patent/JP2015108966A/en
Publication of JP2015108966A publication Critical patent/JP2015108966A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

PROBLEM TO BE SOLVED: To solve the problem in a document management system using both a database and a file server that, if they are separately backed up, compatibility between the database and the file server is lost when backup data is restored.SOLUTION: A document management system comprising a database server that keeps first data on a document, a file server that keeps second data on the document and a backup file server that keeps backup data of the second data kept by the file server, is further provided with means to restore, when restoration of the first data occurs in the database server, the second data kept by the file server in a manner matching the content of the restoration of the first data by using the data backed up by the backup file server.

Description

本発明は、文書管理システムにおけるデータのバックアップ及びリストアの技術に関する。   The present invention relates to a technology for data backup and restoration in a document management system.

文書管理システムには、大量のデータを低コストで管理するために、高速ではあるが高コストで容量が比較的小さいデータベースと、低速ではあるが低コストで容量が比較的大きいファイルサーバの両方を併用するシステムがある。このような文書管理システムでは、データベース上のデータとファイルサーバ上のデータとの整合性を保つことが求められ、そのために種々の方法が検討されてきた(例えば、特許文献1参照)。また、ファイルサーバのバックアップに関しても定期的に差分バックアップを行うなど、より細やかなタイミングでのリストアができるように検討されてきた(例えば、特許文献2参照)。   In order to manage a large amount of data at low cost, the document management system includes both a high-speed but high-cost database with a relatively small capacity and a low-speed but low-cost and relatively large file server. There is a system to use together. In such a document management system, it is required to maintain consistency between data on a database and data on a file server, and various methods have been studied for that purpose (see, for example, Patent Document 1). In addition, file server backup has been studied so that restoration can be performed at a finer timing, such as periodically performing differential backup (see, for example, Patent Document 2).

特開2001−282593号公報JP 2001-282593 A 特開2007−179552号公報JP 2007-179552 A

上記のような、データの格納先がデータベースとファイルサーバに分かれた文書管理システムの場合、データのバックアップはデータベースとファイルサーバのそれぞれにおいて別個に行われることになる。そして、別々にバックアップを行う結果、バックアップの実行や障害発生のタイミングによっては、リストア後のデータの整合が取れなくなってしまう。   In the case of a document management system in which the data storage destination is divided into a database and a file server as described above, data backup is performed separately in each of the database and the file server. As a result of performing the backup separately, the data after restoration may not be consistent depending on the execution of the backup or the timing of the failure.

本発明に係る文書管理システムは、文書の第1のデータを保管するデータベースサーバ、文書の第2のデータを保管するファイルサーバ及び前記ファイルサーバに保管される前記第2のデータのバックアップデータを保管するバックアップファイルサーバを含み、前記データベースサーバで前記第1のデータのリストアが発生した場合に、前記ファイルサーバで保管される前記第2のデータに対し、前記バックアップファイルサーバでバックアップされたデータを用いて、前記第1のデータに対するリストアの内容に応じたリストアを行なう手段を備えることを特徴とする。   A document management system according to the present invention stores a database server that stores first data of a document, a file server that stores second data of a document, and backup data of the second data stored in the file server When the restoration of the first data occurs in the database server, the data backed up in the backup file server is used for the second data stored in the file server. And a means for performing restoration in accordance with the contents of restoration of the first data.

データベースとファイルサーバの両方を用いる文書管理システムにおいて、リストア時にデータベースとファイルサーバのデータの整合性を保つことができる。   In a document management system that uses both a database and a file server, it is possible to maintain data consistency between the database and the file server during restoration.

実施例1に係る、文書管理システムを構成する各サーバやクライアント端末としての情報処理装置の構成の一例を示す図である。1 is a diagram illustrating an example of a configuration of an information processing apparatus as each server or client terminal that configures a document management system according to Embodiment 1. 実施例1に係る、文書管理システムの構成の一例を示す図である。It is a figure which shows an example of a structure of the document management system based on Example 1. FIG. 実施例1に係る、文書管理システムにおける処理の流れを示した図である。FIG. 5 is a diagram illustrating a processing flow in the document management system according to the first embodiment. データベースとファイルサーバを併用した文書管理システムにおいて、データベースに障害が発生した場合におけるデータベースとファイルサーバの復旧手順を比較して示した図である。In the document management system which used both a database and a file server, it is the figure which compared and showed the recovery procedure of a database and a file server when a failure generate | occur | produces in a database. 実施例1に係る、文書管理システムの機能ブロック図である。1 is a functional block diagram of a document management system according to Embodiment 1. FIG. ファイルサーバにおけるファイル更新処理の流れを示すフローチャートである。It is a flowchart which shows the flow of the file update process in a file server. ジャーナルファイルの一例を示す図である。It is a figure which shows an example of a journal file. バックアップ実行部によるバックアップの概要を説明する図である。It is a figure explaining the outline | summary of the backup by a backup execution part. バックアップエージェントによるバックアップ処理の詳細を示すフローチャートである。It is a flowchart which shows the detail of the backup process by a backup agent. バックアップエージェントによってバックアップファイルがどのように保存されるのかを示す図である。It is a figure which shows how a backup file is preserve | saved by a backup agent. 更新後のジャーナルファイルの状態を説明する図である。It is a figure explaining the state of the journal file after an update. リストア処理の流れを示すフローチャートである。It is a flowchart which shows the flow of a restore process. 処理コスト判定処理の詳細を示すフローチャートである。It is a flowchart which shows the detail of a process cost determination process. FSリストアした場合及びFSリストアしなかった場合のそれぞれの場合におけるバックアップ処理との関係を示した図である。It is the figure which showed the relationship with the backup process in each case when FS restore is performed and when FS restore is not performed. ファイルのリストア処理の詳細を示すフローチャートである。It is a flowchart which shows the detail of a restore process of a file. ファイルのリストアを行った後の、履歴データの保管構造を示す図である。FIG. 5 is a diagram illustrating a history data storage structure after file restoration. ファイルのリストアを行った後のジャーナルファイルの状態を説明する図である。It is a figure explaining the state of the journal file after restoring a file. 実施例2に係る、直近のFSバックアップ以前の履歴データを削除する様子を説明する図である。It is a figure explaining a mode that the historical data before the last FS backup based on Example 2 is deleted. 実施例3に係る、文書管理システムの構成の一例を示す図である。FIG. 10 is a diagram illustrating an example of a configuration of a document management system according to a third embodiment.

以下、本発明を実施するための形態について図面を用いて説明する。   Hereinafter, embodiments for carrying out the present invention will be described with reference to the drawings.

図1は、本実施例に係る、文書管理システムを構成する各サーバやクライアント端末としての情報処理装置の構成の一例を示す図である。図1において、情報処理装置100は、CPU102、メモリ103、記憶装置104、ビデオインタフェース105、Input/Output(以下、I/O)インタフェース106、通信インタフェース107を備えている。また、情報処理装置100内の各構成要素はシステムバス101を介して互いに接続されている。   FIG. 1 is a diagram illustrating an example of a configuration of an information processing apparatus as each server and client terminal that configure a document management system according to the present embodiment. In FIG. 1, the information processing apparatus 100 includes a CPU 102, a memory 103, a storage device 104, a video interface 105, an input / output (hereinafter “I / O”) interface 106, and a communication interface 107. In addition, each component in the information processing apparatus 100 is connected to each other via a system bus 101.

CPU102は、システムバス101を介して各構成要素を制御したり、データの計算や加工を行ったりする中央処理装置である。   The CPU 102 is a central processing unit that controls each component via the system bus 101 and performs data calculation and processing.

メモリ103は、データやプログラムを記憶する装置で、RAM(Random Access Memory)やROM(Read Only Memory)から構成される。   The memory 103 is a device that stores data and programs, and includes a RAM (Random Access Memory) and a ROM (Read Only Memory).

記憶装置104は、記憶されたデータの書き込み/読み出しを行う。記憶装置104としては、ハードディスクドライブ(HDD)、磁気テープドライブ、DVD−ROM、USBメモリなどがある。上述のプログラムは、記憶装置104から読み込まれ、メモリ103に格納した上で、CPU102によって実行される。なお、プログラムをROMから読み込んだり、通信インタフェース107を介して外部から読み込んだりする構成としてもよい。   The storage device 104 writes / reads stored data. Examples of the storage device 104 include a hard disk drive (HDD), a magnetic tape drive, a DVD-ROM, and a USB memory. The above-described program is read from the storage device 104, stored in the memory 103, and then executed by the CPU. The program may be read from the ROM or read from the outside via the communication interface 107.

ビデオインタフェース105は、ディスプレイ114への表示出力を制御する。   The video interface 105 controls display output on the display 114.

ディスプレイ114には、CRTや液晶等の方式を用いたものがある。   Some displays 114 use a CRT, liquid crystal display, or the like.

I/Oインタフェース106には、キーボード115やポインティングデバイス116等の入力装置が接続される。操作者は、キーボード115を操作することにより情報処理装置100に対する動作指令等を行う。   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 100 by operating the keyboard 115.

ポインティングデバイス116は、ディスプレイ114上のカーソルを移動させてメニューやオブジェクトの選択や操作等を行う。また、ディスプレイ114には、タッチパネル等による操作の入力を行えるものもある。この場合、ディスプレイ114は出力装置と入力装置を兼ねることになる。   The pointing device 116 moves a cursor on the display 114 to select and operate menus and objects. In addition, there is a display 114 that can input an operation using a touch panel or the like. In this case, the display 114 serves as both an output device and an input device.

通信インタフェース107は、ネットワーク117を通して外部機器との通信を行う。ネットワーク117には、LANやWAN、インターネットのような公衆回線等が含まれる。また、通信インタフェース107は、ローカルプリンタ118などの他デバイスとの通信も行う。   The communication interface 107 communicates with an external device through the network 117. The network 117 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.

図2は、本実施例に係る、文書管理システムの構成の一例を示す図である。文書管理システム200は、ネットワーク117を介して相互に接続される、サーバコンピュータ(以下、サーバ)201〜205と、クライアント端末211で構成されている。上述のとおりネットワーク117には、LAN、WAN、インターネット等があり、特にサーバ間接続においてはインターコネクトなどの接続形態も含む。   FIG. 2 is a diagram illustrating an example of the configuration of the document management system according to the present embodiment. The document management system 200 includes server computers (hereinafter referred to as servers) 201 to 205 and a client terminal 211 that are connected to each other via a network 117. As described above, the network 117 includes a LAN, a WAN, the Internet, and the like. In particular, connection between servers includes a connection form such as an interconnect.

サーバ201はWebサーバで、クライアント端末211との通信を行うためのサーバである。   The server 201 is a Web server and is a server for communicating with the client terminal 211.

サーバ202はアプリケーションサーバ(以下、APPサーバ)で、文書管理システムシステムを制御するプログラムが格納されている。   A server 202 is an application server (hereinafter referred to as an APP server) and stores a program for controlling the document management system.

サーバ203はデータベースサーバ(以下、DB)で、APPサーバ202が利用する種々のデータのうち、例えば管理対象となる文書の書誌情報などが格納される。   The server 203 is a database server (hereinafter referred to as DB), and stores, for example, bibliographic information of a document to be managed among various data used by the APP server 202.

サーバ204はファイルサーバ(以下、FS)で、アプリケーションが利用する種々のデータのうち、例えば管理対象となる文書の実体ファイルなどが格納され、時系列に管理される。   The server 204 is a file server (hereinafter referred to as FS), which stores, for example, an entity file of a document to be managed among various data used by the application, and is managed in time series.

サーバ205はバックアップファイルサーバ(以下、BFS)で、FS204で保管される文書ファイルのバックアップデータが格納され、時系列に管理される。   A server 205 is a backup file server (hereinafter referred to as BFS), which stores backup data of document files stored in the FS 204 and manages them in time series.

なお、本実施例において、サーバ201〜205、クライアント端末211はいずれも、図1で示した情報処理装置の構成を有するものとする。ただし、図1の構成に限定するものではなく、他の機能を備えていても構わない。   In this embodiment, it is assumed that the servers 201 to 205 and the client terminal 211 have the configuration of the information processing apparatus shown in FIG. However, the present invention is not limited to the configuration shown in FIG. 1 and may have other functions.

本実施例に係る文書管理システム200は、上述したサーバ群201〜205が協働することにより実現される。ここで、文書管理システムとは、電子文書や電子化された紙文書を保管、管理するコンピュータ上のシステムのことを意味する。電子文書(以下、文書)とは、コンピュータ上のファイル形式で表現できるデータのことを指し、そのコンテンツは文字に限定されない。文書には、画像や動画など様々なコンテンツを含むものとし、ファイル形式で保管されるデータは全て、ここでの「文書」に含まれる。   The document management system 200 according to the present embodiment is realized by the cooperation of the server groups 201 to 205 described above. Here, the document management system means a system on a computer that stores and manages electronic documents and digitized paper documents. An electronic document (hereinafter referred to as a document) refers to data that can be expressed in a file format on a computer, and its contents are not limited to characters. The document includes various contents such as images and moving images, and all data stored in the file format is included in the “document” here.

本実施例に係る文書管理システム200においては、各サーバにはサーバアプリケーションがそれぞれインストールされる。そして、サーバ群201〜205の機能を併せて文書管理サービスが提供される。図2ではサーバ群201〜205をそれぞれ別のサーバ筐体として記載しているが、同一のサーバ内に複数のサーバアプリケーションがインストールされ、機能が集約されていても構わない。また、ラックマウント型のシステムであっても構わない。   In the document management system 200 according to the present embodiment, a server application is installed on each server. A document management service is provided by combining the functions of the server groups 201 to 205. In FIG. 2, the server groups 201 to 205 are described as separate server housings, but a plurality of server applications may be installed in the same server and the functions may be integrated. Further, it may be a rack mount type system.

図3は、本実施例に係る文書管理システム200における処理の流れを示した図である。クライアント端末211上には、Webブラウザあるいは専用のクライアントアプリケーションがインストールされる。クライアント端末211からWebサーバ201へリクエストが発信されると、Webサーバ201は受信したリクエストをAPPサーバ202へ送信する。APPサーバ202は、リクエスト内容を解釈して必要な情報をDB203およびFS204に問い合わせる。そして、APPサーバ202は、Webサーバ201を通して、リクエストに応じた情報をクライアント端末211へ送信する。クライアント端末211は情報を受信すると、取得した情報をディスプレイに表示する。   FIG. 3 is a diagram illustrating a processing flow in the document management system 200 according to the present embodiment. A web browser or a dedicated client application is installed on the client terminal 211. When a request is transmitted from the client terminal 211 to the Web server 201, the Web server 201 transmits the received request to the APP server 202. The APP server 202 interprets the request contents and inquires the DB 203 and the FS 204 for necessary information. Then, the APP server 202 transmits information corresponding to the request to the client terminal 211 through the Web server 201. When the client terminal 211 receives the information, the client terminal 211 displays the acquired information on the display.

ここで、APPサーバ202は、DB203及びFS204を情報の保管場所として用いている。DB203上にインストールされているデータベースアプリケーションは検索性に優れており、FS204はサイズの大きいデータを保管することに適している。すなわち、運用コストの低いFS204にデータサイズの大きい実体ファイルを置くことで低コストを実現するとともに、DB203内のデータ量を削減してDB203における検索時のパフォーマンス向上を図ることができる。   Here, the APP server 202 uses the DB 203 and the FS 204 as information storage locations. The database application installed on the DB 203 has excellent searchability, and the FS 204 is suitable for storing large data. That is, by placing an entity file having a large data size in the FS 204 with a low operation cost, a low cost can be realized, and the data amount in the DB 203 can be reduced to improve performance when searching in the DB 203.

このように、文書管理システムではデータベースとファイルサーバを併用することがあり、本発明においてもこのような併用を前提としている。本実施例では、APPサーバ202がDB203及びFS204へのデータ保管の処理(リクエスト)を同期して行うことで、文書管理システム200としてのデータの整合性を保っている。   Thus, in a document management system, a database and a file server are sometimes used together, and the present invention is also premised on such a combination. In this embodiment, the APP server 202 performs data storage processing (requests) in the DB 203 and the FS 204 in synchronization, thereby maintaining data consistency as the document management system 200.

図4は、データベースとファイルサーバを併用した文書管理システムにおいて、データベースに障害が発生した場合におけるデータベースとファイルサーバの復旧手順を比較して示した図である。図4において、右方向の矢印線400はデータベースにおける時間経過を、同じく右方向の矢印線410はファイルサーバにおける時間経過を表しており、矢印線400及び410は同じ時間軸上にある。データベースは、定期的にバックアップを行なってバックアップデータを生成している。また、ファイルサーバも独立したバックアップ機能を使って定期的にバックアップ(以下、FSバックアップ)を行ない、バックアップデータを生成している。なお、バックアップには、全てのデータをバックアップする方法、毎回ある特定の時点から現時点までの差分をバックアップする方法、前回のバックアップ時点からの差分をバックアップする方法などがある。なお、FSバックアップは、後述のバックアップエージェントによって実行されるバックアップとは区別される。また、ファイルサーバにはFSバックアップの機能が備わっていないタイプのものもある。   FIG. 4 is a diagram comparing the recovery procedures of the database and the file server when a failure occurs in the database in the document management system using both the database and the file server. In FIG. 4, a right arrow line 400 represents a time passage in the database, a right arrow line 410 represents a time passage in the file server, and the arrow lines 400 and 410 are on the same time axis. The database periodically backs up to generate backup data. In addition, the file server also regularly backs up (hereinafter referred to as FS backup) using an independent backup function to generate backup data. The backup includes a method of backing up all data, a method of backing up a difference from a specific time point to the current time each time, a method of backing up a difference from the previous backup time point, and the like. Note that FS backup is distinguished from backup executed by a backup agent described later. Some file servers do not have an FS backup function.

障害が発生すると、データベースは、まず、障害が発生する前の時点(正常な状態であったとき)のバックアップされたデータをリストアする。そして、リストアによって得られたデータに対してREDOログを適用する。ここで、REDOログとは、データベースアプリケーション自身がデータベースに対して行なわれた操作(処理)を再実行することができるように記録しているログである。リストアによって、データベースの内容はバックアップが実行された時点に戻ってしまうので、リストアを行なうだけでは、バックアップの実行時から障害発生時までの間になされた処理の内容が失われてしまう。そこで、障害発生時のできるだけ直前の正常な状態まで戻すために、リストアによって得られたデータに対しREDOログを適用することになる。REDOログはメモリ103に存在するデータベースアプリケーションのインスタンスや、記憶装置104に存在するデータベース上に保存されている。そのため、障害の内容によってはREDOログが直前の処理まで全て記録されているとは限らない。例えば、データベースアプリケーションのインスタンスに問題が発生した場合には、記憶装置104のデータベースに保存されているREDOログしか残らない場合もある。従って、記録されて残っているREDOログの範囲内で、システム全体における処理の整合性を考慮し、REDOログの適用が行われる。   When a failure occurs, the database first restores the backed up data at the point in time (when normal) before the failure occurred. Then, the redo log is applied to the data obtained by the restoration. Here, the REDO log is a log recorded so that the database application itself can re-execute the operation (processing) performed on the database. Restoration restores the contents of the database to the point in time when the backup was executed. Therefore, if the restoration is performed alone, the contents of the processing performed between the time of backup execution and the time of failure will be lost. Therefore, the redo log is applied to the data obtained by the restoration in order to return to the normal state immediately before the failure. The REDO log is stored in a database application instance existing in the memory 103 or a database existing in the storage device 104. For this reason, depending on the content of the failure, the REDO log is not always recorded until the immediately preceding process. For example, when a problem occurs in an instance of a database application, only the REDO log saved in the database of the storage device 104 may remain. Therefore, the redo log is applied in consideration of the consistency of processing in the entire system within the range of the recorded redo log.

一方、ファイルサーバ側でも、データベースと同様、FSバックアップによるバックアップデータをリストアしてデータを復元することができる。しかし、データベースとファイルサーバとは別々の機構であり、データベースにおけるバックアップとファイルサーバにおけるFSバックアップの間でデータの整合が取れているとは限らない。また、ファイルサーバにはREDOログのようなリカバリ手段が無い。そのため、データベース側で、リストアしたデータにREDOログが適用された場合、ファイルサーバとデータベースとの間でデータの整合を取ることができない。   On the other hand, the file server can restore the data by restoring the backup data by the FS backup, as in the case of the database. However, the database and the file server are separate mechanisms, and data is not always consistent between the backup in the database and the FS backup in the file server. Further, the file server has no recovery means such as a REDO log. Therefore, when the REDO log is applied to the restored data on the database side, it is not possible to achieve data consistency between the file server and the database.

従って、データベースとファイルサーバを併用した文書管理システムでは、障害の発生等を機にデータのリストアがなされた場合に、データの不整合が起きるという問題が発生することになる。なお、上述の例では障害発生時の場合を例に説明したが、特定時点の状態に戻したい場合は同様の問題が発生することになる。   Therefore, in a document management system using both a database and a file server, there is a problem that data inconsistency occurs when data is restored when a failure occurs. In the above example, the case where a failure occurs has been described as an example. However, if it is desired to return to the state at a specific time, a similar problem occurs.

次に、上記の問題に対する解決方法について説明する。   Next, a solution to the above problem will be described.

図5は、本実施例に係る、文書管理システム200の機能ブロック図である。以下で述べる各機能は、FS204及びBFS205上で実現される。FS204とBFS205は役割が異なるため、両サーバのそれぞれにおいて図5で示される機能の全てが動作するわけではないが、両サーバが同等の機能を有することで役割を入れ替えることもできる。   FIG. 5 is a functional block diagram of the document management system 200 according to the present embodiment. Each function described below is realized on the FS 204 and the BFS 205. Since the FS 204 and the BFS 205 have different roles, not all of the functions shown in FIG. 5 operate in each of the two servers, but the roles can be switched because both servers have equivalent functions.

リクエスト受信部501は、他サーバからのリクエストを受信する。   The request receiving unit 501 receives requests from other servers.

更新情報管理部502は、受信したリクエストに基づいて後述するジャーナルファイルを作成し、管理する。   The update information management unit 502 creates and manages a journal file described later based on the received request.

ファイル管理部503は、FS204内にあるファイルの操作、管理を行う。   A file management unit 503 operates and manages files in the FS 204.

一時ファイル管理部504は、ファイルの変更や削除を行う際に元のファイルを一時的に保存すると共に、保存したファイル(一時ファイル)の管理を行う。   The temporary file management unit 504 temporarily stores the original file when changing or deleting the file, and manages the stored file (temporary file).

バックアップ実行部505は、DB203とのデータ整合性を担保するためのバックアップを行なう。詳細は後述するが、このバックアップ実行部505によるバックアップは、前述のFSバックアップとは異なる処理であり、専用のバックアップエージェントによってなされる。   The backup execution unit 505 performs backup to ensure data consistency with the DB 203. Although details will be described later, the backup by the backup execution unit 505 is a process different from the above-described FS backup, and is performed by a dedicated backup agent.

FSバックアップ照会部506は、前述のFSバックアップの内容を照会する。   The FS backup inquiry unit 506 inquires about the contents of the FS backup described above.

リストア実行部507は、バックアップ実行部505によって生成されたバックアップデータに基づいて、後述のリストア処理を実行する。   The restore execution unit 507 executes a later-described restore process based on the backup data generated by the backup execution unit 505.

DB203とのデータ整合性を担保するためのバックアップ処理の説明に入る前に、FS204でのファイルの更新処理について説明する。   Prior to the description of the backup process for ensuring data consistency with the DB 203, the file update process in the FS 204 will be described.

図6は、FS204におけるファイル更新処理の流れを示すフローチャートである。なお、本フローチャートに係る一連の処理を実行するためのプログラムは、FS204の記憶装置104に記憶されており、メモリ103に読み出されCPU102によって実行される。   FIG. 6 is a flowchart showing the flow of file update processing in the FS 204. Note that a program for executing a series of processes according to this flowchart is stored in the storage device 104 of the FS 204, read out to the memory 103, and executed by the CPU 102.

ステップ601において、FS204のリクエスト受信部501は、APPサーバ202からファイル更新のリクエストを受信する。   In step 601, the request reception unit 501 of the FS 204 receives a file update request from the APP server 202.

ステップ602において、FS204のファイル管理部503は、受信したリクエストのコマンド種別を判定する。コマンド種別には様々なものがあるが、以下では代表的な、ファイルの追加(ADD)、変更(MOD)、削除(DEL)を用いて説明することとする。受信したリクエストのコマンド種別が、ファイルの追加(ADD)であると判定されればステップ603に進む。一方、受信したリクエストのコマンド種別が、ファイルの変更(MOD)或いは削除(DEL)であると判定されればステップ604に進む。   In step 602, the file management unit 503 of the FS 204 determines the command type of the received request. There are various types of commands, but in the following, description will be made using typical file addition (ADD), change (MOD), and deletion (DEL). If it is determined that the command type of the received request is file addition (ADD), the process proceeds to step 603. On the other hand, if it is determined that the command type of the received request is file change (MOD) or deletion (DEL), the process proceeds to step 604.

ステップ603において、FS204のファイル管理部503は、受信したリクエストに係る処理対象のファイルを所定の位置に保存する。   In step 603, the file management unit 503 of the FS 204 stores the processing target file related to the received request in a predetermined position.

ステップ604において、FS204のファイル管理部503は、一時ファイル管理部504と連携して、所定の位置に保存中の処理対象ファイルを一時領域に退避させる。   In step 604, the file management unit 503 of the FS 204 cooperates with the temporary file management unit 504 to save the processing target file being saved at a predetermined location in the temporary area.

ステップ605において、FS204のファイル管理部503は、再度、受信したリクエストのコマンドの種別を判定する。受信したリクエストのコマンド種別が削除(DEL)であると判定されればステップ606に進む。ステップ604で一時領域に退避した処理対象のファイルは、これにより削除されることになる。一方、受信したリクエストのコマンド種別が変更(MOD)であると判定されればステップ603に進み、処理対象のファイルは所定の位置に保存される。   In step 605, the file management unit 503 of the FS 204 determines again the command type of the received request. If it is determined that the command type of the received request is delete (DEL), the process proceeds to step 606. As a result, the processing target file saved in the temporary area in step 604 is deleted. On the other hand, if it is determined that the command type of the received request is change (MOD), the process proceeds to step 603, and the file to be processed is stored in a predetermined position.

ステップ606において、FS204の更新情報管理部502は、ジャーナルファイルを更新する。図7は、FS204において管理されるジャーナルファイルの一例を示す図である。図7において、列701には、リクエストがあったときのタイムスタンプの情報が入る。このタイムスタンプは、DB203におけるデータの更新処理と同期をとるために必要な情報になる。列702には、後述のバックアップを行なったときのタイムスタンプの情報が入る。図7は未バックアップの状態なので値は入っておらず、空文字が格納されている。列703には、受信したリクエストのコマンド種別の情報(本実施例では、上述の追加(ADD)、変更(MOD)、削除(DEL)のいずれか)が入る。列704には、ファイルが格納されたロケーションの情報が入る。   In step 606, the update information management unit 502 of the FS 204 updates the journal file. FIG. 7 is a diagram illustrating an example of a journal file managed in the FS 204. In FIG. 7, a column 701 contains information on a time stamp when there is a request. This time stamp becomes information necessary for synchronizing with the data update processing in the DB 203. A column 702 contains information on a time stamp when a backup described later is performed. Since FIG. 7 is in a non-backup state, no value is entered and a null character is stored. The column 703 contains information on the command type of the received request (in this embodiment, any one of the above-mentioned addition (ADD), change (MOD), and deletion (DEL)). A column 704 contains information on the location where the file is stored.

次に、バックアップ実行部505による、上述のようにして更新されたファイルのバックアップについて説明する。図8は、バックアップ実行部505によるバックアップの概要を説明する図である。   Next, backup of the file updated as described above by the backup execution unit 505 will be described. FIG. 8 is a diagram for explaining the outline of backup by the backup execution unit 505.

図8の(a)に示されるように、上述のバックアップエージェント801によって、ネットワーク117を介してFS204からBFS205へ、ファイル802がコピーされる。バックアップエージェント801は、ジャーナルファイルに記録されたデータ順にファイルのバックアップを行う。図8の(b)は、このバックアップ処理の大まかな流れを示すシーケンス図である。矢印線821はAPPサーバ202からFS204へのリクエスト、矢印線822は前述したファイル更新処理、矢印線823はリクエスト(矢印線821)に対するレスポンスをそれぞれ示している。また、矢印線824はFS204からBFS205へのバックアップリクエスト、矢印線826はバックアップリクエスト(矢印線824)に対するレスポンスを示している。そして、矢印線825は後述するバックアップ処理のうちBFS205にて実行される部分を示し、矢印線827はFS204にて実行される部分を示している。   As shown in FIG. 8A, the file 802 is copied from the FS 204 to the BFS 205 via the network 117 by the backup agent 801 described above. The backup agent 801 performs file backup in the order of data recorded in the journal file. FIG. 8B is a sequence diagram showing a rough flow of the backup processing. An arrow line 821 indicates a request from the APP server 202 to the FS 204, an arrow line 822 indicates the file update process described above, and an arrow line 823 indicates a response to the request (arrow line 821). An arrow line 824 indicates a backup request from the FS 204 to the BFS 205, and an arrow line 826 indicates a response to the backup request (arrow line 824). An arrow line 825 indicates a portion executed in the BFS 205 in a backup process to be described later, and an arrow line 827 indicates a portion executed in the FS 204.

このようにバックアップエージェント801によるバックアップ処理は、矢印線822のファイル更新処理とは非同期で実施され、FS204及びBFS205のバックアップ実行部505で連携して実行される。なお、図8の例では、バックアップエージェント801は、FS204上で動作する構成としているが、別のサーバ上で動作する構成としてもよい。   As described above, the backup process by the backup agent 801 is performed asynchronously with the file update process indicated by the arrow 822, and is executed in cooperation with the backup execution unit 505 of the FS 204 and the BFS 205. In the example of FIG. 8, the backup agent 801 is configured to operate on the FS 204, but may be configured to operate on another server.

図9は、BFS205及びFS204において実行される、バックアップエージェント801によるバックアップ処理の詳細を示すフローチャートである。ステップ901〜ステップ912の処理がBFS205で実行される前述の矢印線825に相当し、ステップ913及び914の処理がFS204で実行される前述の矢印線827に相当する。なお、本フローチャートに係る一連の処理を実行するためのプログラムは、FS204又はBFS205の記憶装置104に記憶されており、メモリ103に読み出されCPU102によって実行される。   FIG. 9 is a flowchart showing details of the backup processing by the backup agent 801 executed in the BFS 205 and the FS 204. Steps 901 to 912 correspond to the aforementioned arrow line 825 executed in the BFS 205, and steps 913 and 914 correspond to the aforementioned arrow line 827 executed in the FS 204. Note that a program for executing a series of processes according to this flowchart is stored in the storage device 104 of the FS 204 or the BFS 205, read out to the memory 103, and executed by the CPU 102.

ステップ901において、BFS205のリクエスト受信部501は、バックアップリクエストをFS204から受信する。   In step 901, the request reception unit 501 of the BFS 205 receives a backup request from the FS 204.

ステップ902において、BFS205のファイル管理部503は、受信したバックアップリクエストのコマンド種別を判定する。FS204からのバックアップリクエストは、前述のジャーナルファイルの列703に格納される各コマンドの情報を含んでおり、当該コマンドに応じたバックアップが実行される。すなわち、以下に述べるとおり、各コマンドに対応するバックアップリクエストに応じてファイルが保存(コピー)されていき、バックアップファイルが履歴として蓄積されていくことになる。   In step 902, the file management unit 503 of the BFS 205 determines the command type of the received backup request. The backup request from the FS 204 includes information on each command stored in the above-described journal file column 703, and backup according to the command is executed. That is, as described below, files are saved (copied) in response to backup requests corresponding to each command, and backup files are accumulated as a history.

ステップ903において、BFS205のバックアップ実行部505は、履歴データ保管フォルダを作成する。図10は、バックアップエージェント801によるバックアップ処理によってバックアップファイルがどのように保存されるのかを示す図である。図10の例では、「aaa.pptx」及び「bbb.xlsx」という2種類のファイルに関してバックアップを行った場合の様子が示されている。そして、本ステップで作成される履歴データ保管フォルダとは、図10におけるフォルダ1002及び1012を指している。この履歴データ保管フォルダの中に、リクエスト毎に更新されたファイルのコピーを、バックアップファイルとして保存して行くことになる。   In step 903, the backup execution unit 505 of the BFS 205 creates a history data storage folder. FIG. 10 is a diagram showing how a backup file is stored by the backup processing by the backup agent 801. In the example of FIG. 10, a state in which backup is performed for two types of files “aaa.pptx” and “bbb.xlsx” is shown. The history data storage folder created in this step refers to the folders 1002 and 1012 in FIG. In this history data storage folder, a copy of the file updated for each request is stored as a backup file.

ステップ904において、BFS205のバックアップ実行部505は、バックアップファイルのファイル名を決定する。バックアップファイルに付されるファイル名は、元のファイル名にタイムスタンプとコマンド種別を付与したものとなる。そして、この際のタイムスタンプは、バックアップタイムではなくリクエストタイム(図7の列701を参照)が用いられる。上述のとおり、ここでのバックアップはファイルの更新処理とは非同期で行われるが、バックアップファイルのファイル名に用いるタイムスタンプをリクエストタイムにすることでDB203との間でデータの整合性を図ることができる。   In step 904, the backup execution unit 505 of the BFS 205 determines the file name of the backup file. The file name assigned to the backup file is obtained by adding a time stamp and a command type to the original file name. The request time (see column 701 in FIG. 7) is used as the time stamp at this time, not the backup time. As described above, the backup here is performed asynchronously with the file update process, but the consistency of data with the DB 203 can be achieved by using the time stamp used for the file name of the backup file as the request time. it can.

ステップ905において、BFS205のバックアップ実行部505は、ステップ904で決定されたファイル名を付したバックアップファイルを所定の位置に保存する。図10におけるファイル1003、1004、1014、1015が、本ステップで保存されるバックアップファイルに相当する。なお、ファイル1003、1014及び1015は変更(MOD)コマンドであった場合のバックアップファイルであり、ファイル1004は追加(ADD)コマンドであった場合のバックアップファイルである。   In step 905, the backup execution unit 505 of the BFS 205 stores the backup file with the file name determined in step 904 in a predetermined position. Files 1003, 1004, 1014, and 1015 in FIG. 10 correspond to the backup files saved in this step. The files 1003, 1014, and 1015 are backup files in the case of a change (MOD) command, and the file 1004 is a backup file in the case of an add (ADD) command.

ステップ906において、BFS205のバックアップ実行部505は、FS204のスタンバイ環境としてBFS205を利用する設定となっているかどうかを確認する。スタンバイ環境として利用する設定になっていれば、ステップ907に進む。一方、スタンバイ環境として利用する設定になっていなければステップ912に進む。なお、BFS205をFS204のスタンバイ環境として利用するかどうかは予め設定されている。   In step 906, the backup execution unit 505 of the BFS 205 confirms whether or not it is set to use the BFS 205 as a standby environment of the FS 204. If it is set to be used as a standby environment, the process proceeds to step 907. On the other hand, if it is not set to be used as a standby environment, the process proceeds to step 912. Whether the BFS 205 is used as a standby environment for the FS 204 is set in advance.

ステップ907において、BFS205のバックアップ実行部505は、カレントファイルを更新する。BFS205がスタンバイ環境として動作するためには、BFS205はFS204と同様のデータを保持している必要があり、その同様のデータ(ファイル)に該当するのがカレントファイルである。図10におけるファイル1001が、「aaa.pptx」のカレントファイルに相当する。履歴データ保管フォルダ1002及び当該フォルダ1002内のファイル群は、FS204には存在しないデータである。そこで、最新のファイルをFS204上のファイルと同じ構成で配置する。すなわち、ファイル1001とファイル1003とは内容が同じファイルとなる。なお、BFS205がFS204のスタンバイ環境として動作する設定になっていない場合は、BFS205は単なるバックアップファイルの保管庫として機能するため、カレントファイルは不要である。   In step 907, the backup execution unit 505 of the BFS 205 updates the current file. In order for the BFS 205 to operate as a standby environment, the BFS 205 needs to hold the same data as the FS 204, and the current data corresponds to the same data (file). A file 1001 in FIG. 10 corresponds to the current file “aaa.pptx”. The history data storage folder 1002 and the file group in the folder 1002 are data that does not exist in the FS 204. Therefore, the latest file is arranged with the same configuration as the file on the FS 204. That is, the file 1001 and the file 1003 have the same contents. When the BFS 205 is not set to operate as a standby environment of the FS 204, the BFS 205 functions as a simple backup file storage, and thus no current file is required.

ステップ908において、BFS205のバックアップ実行部505は、削除状態識別ファイル(ダミーファイル)を生成する。この削除状態識別ファイルは、コンテンツが無いダミーのファイルであるが、削除されたことを示すために生成され保持される。   In step 908, the backup execution unit 505 of the BFS 205 generates a deletion status identification file (dummy file). This deletion state identification file is a dummy file with no content, but is generated and held to indicate that it has been deleted.

ステップ909において、BFS205のバックアップ実行部505は、生成された削除状態識別ファイルを所定の位置に保存する。図10におけるファイル1013がこの削除状態識別ファイルに相当する。   In step 909, the backup execution unit 505 of the BFS 205 stores the generated deletion status identification file in a predetermined position. A file 1013 in FIG. 10 corresponds to this deletion state identification file.

ステップ910において、BFS205のバックアップ実行部505は、追加や更新の場合と同様、FS204のスタンバイ環境としてBFS205を利用する設定となっているかどうかを確認する。スタンバイ環境として利用する設定になっていれば、ステップ911に進む。一方、スタンバイ環境として利用する設定になっていなければステップ912に進む。   In step 910, the backup execution unit 505 of the BFS 205 confirms whether or not the BFS 205 is set to be used as a standby environment of the FS 204 as in the case of addition or update. If it is set to be used as a standby environment, the process proceeds to step 911. On the other hand, if it is not set to be used as a standby environment, the process proceeds to step 912.

ステップ911において、BFS205のバックアップ実行部505は、カレントファイルを削除する。例えば、図10において、ファイル「bbb.xlsx」については、カレントファイルが存在していない。これは、ファイル「bbb.xlsx」についてのカレントファイルが削除された状態を示しており、こうしてBFS205は、FS204の環境と同じ状態になる。   In step 911, the backup execution unit 505 of the BFS 205 deletes the current file. For example, in FIG. 10, there is no current file for the file “bbb.xlsx”. This shows a state in which the current file for the file “bbb.xlsx” has been deleted, and thus the BFS 205 is in the same state as the environment of the FS 204.

ステップ912において、BFS205の更新情報管理部502は、ジャーナルファイルの更新を行う。本ステップで更新されるジャーナルファイルは、前述の図7で示したFS204のジャーナルファイルと同様のものであるが、BFS205に存在している。図11の(a)は、BFS205のジャーナルファイルであって、本ステップで更新された後の状態を示しており、バックアップを行ったときのタイムスタンプの情報が列702に格納されている。   In step 912, the update information management unit 502 of the BFS 205 updates the journal file. The journal file updated in this step is the same as the journal file of the FS 204 shown in FIG. 7 described above, but exists in the BFS 205. (A) of FIG. 11 is a journal file of the BFS 205 and shows a state after being updated in this step, and information on a time stamp when backup is performed is stored in a column 702.

前述のとおり、ステップ913以降の処理は、FS204において実行される。   As described above, the processing after step 913 is executed in the FS 204.

ステップ913において、FS204のバックアップ実行部505は、一時領域に退避していたファイルを削除する。これは、前述した図6のファイル更新処理のフローチャートにおけるファイルの一時領域への退避(ステップ604)に伴う処理である。バックアップエージェント801によるバックアップ処理がファイル更新処理とは非同期でなされるため、バックアップ処理が完了した後に一時領域に退避していたファイルを削除している。   In step 913, the backup execution unit 505 of the FS 204 deletes the file saved in the temporary area. This is a process accompanying the saving of a file to a temporary area (step 604) in the above-described flowchart of the file update process of FIG. Since the backup process by the backup agent 801 is performed asynchronously with the file update process, the file saved in the temporary area after the backup process is completed is deleted.

ステップ914において、FS204の更新情報管理部502は、ジャーナルファイルの更新を行う。本ステップで更新されるジャーナルファイルはFS204に存在する、前述した図7で示したジャーナルファイルである。図11の(b)は、本ステップで更新された後のジャーナルファイルの状態を示している。図7と対比すると、図11の(b)では、バックアップがなされたことを表すタイムスタンプの情報が列702に格納されているのが分かる。ただし、この時点において未バックアップのリクエストに係るレコード1101については、列702の値は空文字の状態となっている。   In step 914, the update information management unit 502 of the FS 204 updates the journal file. The journal file updated in this step is the journal file shown in FIG. FIG. 11B shows the state of the journal file after being updated in this step. Compared with FIG. 7, in FIG. 11B, it can be seen that the time stamp information indicating that the backup has been performed is stored in the column 702. However, for the record 1101 related to the unbackup request at this time, the value in the column 702 is in an empty character state.

以上が、DB203とのデータ整合性を担保するために行なう、バックアップエージェント801によるバックアップ処理の内容である。   The above is the content of the backup process performed by the backup agent 801 to ensure data consistency with the DB 203.

(リストア処理)
次に、バックアップエージェントによるバックアップ処理に伴ってなされるリストア処理について、図12〜図17を参照しつつ説明する。
(Restore processing)
Next, restore processing that is performed in conjunction with backup processing by the backup agent will be described with reference to FIGS.

図12は、リストア処理の流れを示すフローチャートである。なお、本フローチャートに係る一連の処理を実行するためのプログラムは、BFS205の記憶装置104に記憶されており、メモリ103に読み出されCPU102によって実行される。このリストア処理は、BFS205からFS204に対してなされるものであるが、FS204上のファイルの更新処理は、当然のことながらFS204において実行される。   FIG. 12 is a flowchart showing the flow of restore processing. Note that a program for executing a series of processes according to this flowchart is stored in the storage device 104 of the BFS 205, read out to the memory 103, and executed by the CPU 102. This restore processing is performed from the BFS 205 to the FS 204, but the file update processing on the FS 204 is naturally executed in the FS 204.

ステップ1201において、BFS205のリストア実行部507は、最初にDB203のリカバリポイントを取得する。DB203のリカバリポイントとは、DB203においてデータのリストアを行なって、さらにREDOログを適用した結果(前述の図4を参照)、どこまでリカバリがなされたのかを示す情報である。   In step 1201, the restore execution unit 507 of the BFS 205 first acquires the recovery point of the DB 203. The recovery point of the DB 203 is information indicating how far recovery has been performed as a result of restoring data in the DB 203 and applying the REDO log (see FIG. 4 described above).

ステップ1202において、BFS205のリストア実行部507は、取得したDB203のリカバリポイントを元に、バックアップファイルのリカバリポイントを決定する。具体的には、FS204で管理されるジャーナルファイルを参照し、DB203での更新処理と同期して実施されたFS204での更新処理の内容を特定する。これにより、DB203との間でデータの整合性を保つため、どこまでFS204内のデータをリカバリするのかが特定される。以下、詳しく説明する。   In step 1202, the restore execution unit 507 of the BFS 205 determines a recovery point of the backup file based on the acquired recovery point of the DB 203. Specifically, referring to a journal file managed by the FS 204, the content of the update process in the FS 204 performed in synchronization with the update process in the DB 203 is specified. Thus, it is specified how far the data in the FS 204 is recovered in order to maintain data consistency with the DB 203. This will be described in detail below.

まず、DB203におけるリカバリの最終時刻(現在からみて直近の時刻)の情報をREDOログから取得する。その際は、REDOログから直接的に最終時刻の情報を取得してもよいし、間接的に取得(例えばリカバリの最終処理の情報を取得してその情報に基づいて取得)してもよい。そして、取得したリカバリの最終時刻と、FS204のジャーナルファイル(前述の図11の(b)を参照。)のリクエストタイム列701の時刻と比較する。そして、リカバリの最終時刻の直前になされた処理をバックアップファイルのリカバリポイントとして特定する。なお、特定の方法はWebサーバ201におけるデータ保存の同期処理に応じて異なる場合もある。例えば、データベースコミット後に、FS204へのリクエストを送信する場合には、DB203のリカバリ最終時刻の直後になされた処理をバックアップファイルのリカバリポイントとして特定することになる。また、Webサーバ201におけるデータ保存の同期処理が複数のリクエストで行われる場合には、セッションIDもしくはスレッドIDなど、処理を識別する情報もジャーナルファイルに保管しておく。   First, information on the last recovery time (the latest time from the present) in the DB 203 is acquired from the REDO log. In that case, information on the final time may be acquired directly from the REDO log, or may be acquired indirectly (for example, information on the final process of recovery is acquired and acquired based on the information). Then, the acquired final recovery time is compared with the time in the request time column 701 of the journal file of the FS 204 (see (b) of FIG. 11 described above). Then, the process performed immediately before the final recovery time is specified as the recovery point of the backup file. The specific method may differ depending on the data storage synchronization processing in the Web server 201. For example, when a request to the FS 204 is transmitted after the database commit, the processing performed immediately after the recovery last time of the DB 203 is specified as the recovery point of the backup file. In addition, when the data storage synchronization processing in the Web server 201 is performed by a plurality of requests, information for identifying processing such as a session ID or a thread ID is also stored in the journal file.

ステップ1203において、BFS205のリストア実行部507は、未だバックアップがなされていないデータが存在するかどうかを判定する。未バックアップのデータが存在した場合は、ステップ1204に進む。一方、未バックアップのデータが存在しない場合は、ステップ1205に進む。   In step 1203, the restore execution unit 507 of the BFS 205 determines whether there is data that has not yet been backed up. If unbacked data exists, the process proceeds to step 1204. On the other hand, if no unbackup data exists, the process proceeds to step 1205.

ステップ1204において、BFS205のリストア実行部507は、未バックアップのデータのバックアップを行ない、BFS205にバックアップファイルを保存する。例えば、図11(b)のレコード1101で示す一時保管中のデータが、ここでの未バックアップのデータを意味している。図11の(b)において、レコード1101で示すデータはコマンド(ADD)に係る処理でFS204には保存されているが、列702が空文字の状態であり、バックアップが行われていないことを示している。なお、リストアの方法としては、未バックアップのデータのバックアップを行なうことなく、一時保管先から直接リストアする方法も考えられるが、その場合はBFS205に履歴が残らないことになる。   In step 1204, the restore execution unit 507 of the BFS 205 performs backup of unbackup data and saves the backup file in the BFS 205. For example, the temporarily stored data indicated by the record 1101 in FIG. 11B means the unbackup data here. In FIG. 11B, the data indicated by the record 1101 is stored in the FS 204 in the process related to the command (ADD), but the column 702 is in an empty character state, indicating that backup has not been performed. Yes. As a restoration method, a method of directly restoring from a temporary storage destination without performing backup of unbacked data is conceivable. In this case, however, no history remains in the BFS 205.

ステップ1205において、BFS205のFSバックアップ照会部506は、後述する処理コスト判定処理を行なって、FSリストアを行うかどうかを決定する。なお、FS204がFSバックアップの機能を有していない場合には、本ステップ〜ステップ1207までの処理は省略されることになる。本ステップでFSリストアした方が良いと判定されればステップ1207に進む。一方、FSリストアしない方が良いと判定されればステップ1208に進む。図13は、処理コスト判定処理の詳細を示すフローチャートである。図13のフローチャートの説明の前に、どのような場合にFSリストアをした方が良いのかについて説明する。図14は、FSリストアした場合及びFSリストアしなかった場合のそれぞれの場合におけるバックアップ処理との関係を、FS204のジャーナルファイルに基づいて示した図である。太線1401は前述のステップ1202で特定されたバックアップファイルのリカバリポイントを表し、太線1402はFSリストアポイント(FSリストアした場合にどこまで復元されるのかを示す情報)を表している。まず、FSリストアした場合は、FS204のデータはFSバックアップを行なった時点の内容に戻ってしまうため、DB203との整合をとるためにはFSリストアポイント1402からリカバリポイント1401までの間の更新処理を再実行する必要がある。一方、FSリストアしなかった場合は、現在の状態からリカバリポイント1401の状態までデータの内容を戻すことによってDB203との整合をとることができる。どちらの場合も結果は同じであるが、処理方法が異なる。そこで、より処理コストの掛からない方の処理方法を、図13のフローチャートに示す処理コスト判定処理よって判別することになる。   In step 1205, the FS backup inquiry unit 506 of the BFS 205 performs processing cost determination processing described later to determine whether to perform FS restoration. If the FS 204 does not have an FS backup function, the processing from this step to step 1207 is omitted. If it is determined that it is better to restore the FS in this step, the process proceeds to step 1207. On the other hand, if it is determined not to restore the FS, the process proceeds to step 1208. FIG. 13 is a flowchart showing details of the processing cost determination processing. Prior to the description of the flowchart of FIG. 13, a description will be given of when it is better to perform FS restoration. FIG. 14 is a diagram showing the relationship with the backup processing in each case when the FS restore is performed and when the FS restore is not performed based on the journal file of the FS 204. A thick line 1401 represents the recovery point of the backup file specified in the above step 1202, and a thick line 1402 represents an FS restore point (information indicating how far the file is restored when the FS restore is performed). First, when the FS restore is performed, the data of the FS 204 is restored to the content at the time when the FS backup was performed. It is necessary to execute again. On the other hand, if the FS restore is not performed, it is possible to achieve consistency with the DB 203 by returning the data contents from the current state to the recovery point 1401 state. In both cases, the result is the same, but the processing method is different. Therefore, the processing method that requires less processing cost is determined by the processing cost determination processing shown in the flowchart of FIG.

ステップ1301において、BFS205のFSバックアップ照会部506は、FSリストア自体の処理コストを推定する。例えば、FS204がリストア処理に要する推定時間を返してくれるようなI/Fを持っている場合は、FS204に問合せを行って、当該推定時間の情報を取得する。或いは、ファイル数やファイルサイズ毎に予測される所要時間を予めテーブル等で保持しておき、当該テーブルを参照して取得するようにしてもよい。また、ファイルサイズやファイル数にリストア時間がさほど影響を受けないタイプのファイルサーバであれば一律でn分掛かるといった情報を保持しておいてもよい。さらには、ファイル数に応じてリストア時間が変動するタイプのファイルサーバであれば、「ファイルの登録利用率」×「単位処理時間」の演算を行なって求めるようにしてもよい。   In step 1301, the FS backup inquiry unit 506 of the BFS 205 estimates the processing cost of the FS restore itself. For example, if the FS 204 has an I / F that returns the estimated time required for the restore process, the FS 204 is inquired to acquire information on the estimated time. Alternatively, the required time estimated for each file number and file size may be stored in advance in a table or the like and acquired by referring to the table. In addition, if the file server is of a type in which the restore time is not significantly affected by the file size and the number of files, information may be held that takes n minutes uniformly. Furthermore, in the case of a file server of a type in which the restore time varies depending on the number of files, it may be obtained by calculating “file registration usage rate” × “unit processing time”.

ステップ1302において、FSバックアップ照会部506は、ジャーナルファイルを参照して、バックアップファイルのリカバリポイントからFSリストアポイントまでの更新処理の情報(以下、更新情報)を取得する。例えば、図14に示すジャーナルファイルの場合、リカバリポイント1401からFSリストアポイント1402までの範囲にある9個のレコードが更新情報として取得される。   In step 1302, the FS backup inquiry unit 506 refers to the journal file and acquires update processing information (hereinafter, update information) from the recovery point of the backup file to the FS restore point. For example, in the case of the journal file shown in FIG. 14, nine records in the range from the recovery point 1401 to the FS restore point 1402 are acquired as update information.

ステップ1303において、FSバックアップ照会部506は、ステップ1302で取得した更新情報に対し、過去から現在に向けて不要な中間処理を間引く処理を行なう。例えば、上述した9個のレコードの内容が更新情報として取得された場合、ファイル「ddd.pptx」に対する更新処理としては、3つのレコード(レコード1411、1412、1413)が存在する。これら3つのレコードはすべて変更(MOD)処理であり、これらを過去から順に更新すると最終的にはレコード1413で更新した処理のファイルになる。つまり、レコード1411と1412の処理は適用する必要がないので、これら2つのレコードに係る処理が不要な中間処理として間引かれることになる。   In step 1303, the FS backup inquiry unit 506 performs a process of thinning out unnecessary intermediate processes from the past to the present for the update information acquired in step 1302. For example, when the contents of the nine records described above are acquired as update information, there are three records (records 1411, 1412, and 1413) as update processing for the file “ddd.pptx”. These three records are all change (MOD) processing, and when these are updated in order from the past, the file of the processing updated in the record 1413 is finally obtained. That is, since it is not necessary to apply the processes of the records 1411 and 1412, the processes related to these two records are thinned out as an intermediate process.

ステップ1304において、FSバックアップ照会部506は、FSリストアした場合に掛かる総処理コストを推定する。具体的には、1ファイルのリストアに掛かる処理コストに、不要な中間処理を間引いた後の更新処理数を乗じ、そうして得られた処理コストに、ステップ1301で推定したFSリストア自体の処理コストを加算して、総処理コストを推定する。これを式で表すと以下のようになる。
総処理コスト=(1ファイルのリストア処理時間×S1303で求めた更新処理数)
+FSリストア自体の処理時間
ここで、1ファイルのリストア処理時間 は、ファイルサイズ×係数で求められる。この係数は、ファイルサイズの大小に応じて予め設定される係数であり、ファイルサイズ毎にどのくらい処理時間が掛かるかをネットワーク環境なども考慮して予め設定しておく。
In step 1304, the FS backup inquiry unit 506 estimates the total processing cost required for the FS restoration. Specifically, the processing cost for restoring one file is multiplied by the number of update processes after thinning out unnecessary intermediate processing, and the processing cost obtained in this way is the processing of the FS restoration itself estimated in step 1301. Add the costs to estimate the total processing cost. This is expressed as follows.
Total processing cost = (Restore processing time for one file × Number of update processes obtained in S1303)
+ FS Restoration Processing Time Here, the restoration processing time of one file is obtained by file size × coefficient. This coefficient is set in advance according to the size of the file, and it is set in advance how much processing time is required for each file size in consideration of the network environment and the like.

ステップ1305において、FSバックアップ照会部506は、現在からバックアップファイルのリカバリポイントまでの更新情報を取得する。更新情報についてはステップ1302で説明したとおりであり、図14の例では、現在からリカバリポイント1401までの範囲にある3つのレコードが更新情報として取得されることになる。   In step 1305, the FS backup inquiry unit 506 acquires update information from the present to the recovery point of the backup file. The update information is as described in step 1302, and in the example of FIG. 14, three records in the range from the present to the recovery point 1401 are acquired as update information.

ステップ1306において、FSバックアップ照会部506は、ステップ1305で取得した更新情報に対し、現在から過去に向けて不要な中間処理を間引く処理を行なう。間引くことの意味は上述のステップ1303と同じであるが、ステップ1303では過去から現在に向けて不要な中間処理を間引いていたのに対し、本ステップでは現在から過去に向けて不要な中間処理が間引かれることになる。   In step 1306, the FS backup inquiry unit 506 performs a process of thinning out unnecessary intermediate processes from the present to the past with respect to the update information acquired in step 1305. The meaning of thinning out is the same as in step 1303 described above. In step 1303, unnecessary intermediate processing is thinned from the past to the present, whereas in this step, unnecessary intermediate processing is performed from the present to the past. It will be thinned out.

ステップ1307において、FSバックアップ照会部506は、FSリストアしない場合の総処理コストを推定する。ここでは、上述した1ファイルのリストアに掛かる処理コストに、不要な中間処理を間引いた後の更新処理数を乗じることにより、総処理コストを推定する。FSリストアを行わないため、FSリストア自体の処理コストが加算されない点で、ステップ1304とは異なっている。   In step 1307, the FS backup inquiry unit 506 estimates the total processing cost when the FS restoration is not performed. Here, the total processing cost is estimated by multiplying the processing cost required for restoring one file described above by the number of update processing after thinning out unnecessary intermediate processing. Since the FS restore is not performed, the processing cost of the FS restore itself is not added, which is different from step 1304.

ステップ1308において、FSバックアップ照会部506は、ステップ1304で求めたFSリストアする場合の総処理コストと、ステップ1307で求めたFSリストアしない場合の総処理コストとを比較して、より処理コストの低い方を選択する。   In step 1308, the FS backup inquiry unit 506 compares the total processing cost in the case of performing the FS restoration obtained in step 1304 with the total processing cost in the case of not performing the FS restoration obtained in step 1307, so that the processing cost is lower. Select the direction.

以上が、FSリストアを行うかどうかを判定する処理の内容である。   The above is the content of the process for determining whether to perform FS restoration.

図12のフローチャートの説明に戻る。   Returning to the flowchart of FIG.

ステップ1207において、FS204のリストア実行部507は、FSリストアを実行する。FSリストアの内容については、前述のとおりである。   In step 1207, the restore execution unit 507 of the FS 204 executes FS restore. The contents of the FS restoration are as described above.

ステップ1208において、BFS205のリストア実行部507は、FS204に対してファイルをリストアする。図15は、本ステップにおけるファイルのリストア処理の詳細を示すフローチャートである。   In step 1208, the restore execution unit 507 of the BFS 205 restores the file to the FS 204. FIG. 15 is a flowchart showing details of the file restore processing in this step.

ステップ1501において、リストア実行部507は、FSリストアの実行の有無を確認する。FSリストアが実行されていた場合(ステップ1206でYes)には、ステップ1502に進み、ステップ1503〜ステップ1506の処理をファイル単位で実行する。一方、FSリストアが実行されなかった場合(ステップ1206でNo)には、ステップ1507に進み、ステップ1508〜ステップ1514の処理をファイル単位で実行する。   In step 1501, the restore execution unit 507 confirms whether or not FS restore is executed. If the FS restore has been executed (Yes in step 1206), the process proceeds to step 1502, and the processing in steps 1503 to 1506 is executed in units of files. On the other hand, if the FS restore has not been executed (No in step 1206), the process proceeds to step 1507, and the processes in steps 1508 to 1514 are executed in units of files.

まず、FSリストアが実行されていた場合の、ファイルのリストア処理について説明する。   First, file restoration processing when FS restoration has been executed will be described.

ステップ1502において、リストア実行部507は、前述のステップ1303で間引き処理された後の更新情報を取得する。   In step 1502, the restore execution unit 507 acquires the update information after the thinning process in step 1303 described above.

ステップ1503において、リストア実行部507は、対象ファイルについて、ジャーナルファイルを参照し、取得した更新情報で特定されるリクエストタイムを持つバックアップファイルの内容で、FS204内の対応するファイルを再更新(上書き)する。   In step 1503, the restore execution unit 507 refers to the journal file for the target file, and re-updates (overwrites) the corresponding file in the FS 204 with the content of the backup file having the request time specified by the acquired update information. To do.

ステップ1504において、リストア実行部507は、上記再更新処理によって、BFS205の履歴データ(前述の図10を参照)に変更が生じるかどうかを判定する。履歴データに変更が生じる場合は、ステップ1505に進む。例えば、ファイル「aaa.pptx」は、FSリストア後の再処理によって2013/03/20 14:58:01の状態になるが、BFS205では2013/03/21 15:52:06の状態である。このような場合は、ステップ1505に進む。一方、履歴データに変更が生じない場合には、BFS205内のバックアップファイルの内容を変更する必要がない。例えば、ファイル「ddd.pptx」については、FSリストア後の再処理された状態(2013/03/20 14:35:25)は、BFS205でも同じ状態である。このような場合は、未処理のファイルがあれば次のファイルの処理に移行し、未処理のファイルがなければ本処理を終える。   In step 1504, the restore execution unit 507 determines whether or not the history data (see FIG. 10 described above) of the BFS 205 is changed by the re-update process. If the history data changes, the process proceeds to step 1505. For example, the file “aaa.pptx” is in a state of 2013/03/20 14:58:01 by reprocessing after FS restoration, but in the BFS 205, it is in a state of 2013/03/21 15:52:06. In such a case, the process proceeds to step 1505. On the other hand, when the history data does not change, it is not necessary to change the contents of the backup file in the BFS 205. For example, regarding the file “ddd.pptx”, the reprocessed state (2013/03/20 14:35:25) after the FS restoration is the same state in the BFS 205 as well. In such a case, if there is an unprocessed file, the process proceeds to the next file process, and if there is no unprocessed file, the process is terminated.

ステップ1505において、リストア実行部507は、バックアップファイルを更新する。図16は、ファイルのリストアを行った後の、履歴データの保管構造を示しており、前述の図10に対応している。リストアを行なう前は、ファイル「aaa.pptx」の最新のバックアップファイルはファイル1003であり、ファイル「bbb.xlsx」の最新のバックアップファイルは削除状態識別ファイル1013であった。ここで、FS204におけるファイル「aaa.pptx」がリストアによってファイル1004の状態に戻った場合、ファイル1004をコピーして最新のバックアップファイル1602が生成される。さらに、カレントファイル1601もファイル1004の内容に更新される。これにより、ファイル1601、1602、1004は同じコンテンツのファイルとなる。同様に、FS204におけるファイル「bbb.xlsx」がリストアによってファイル1015の状態に戻った場合、ファイル1015をコピーして最新のバックアップファイル1612が生成される。さらに、ファイル1015と同じ内容を持つカレントファイル1611が生成される。これにより、ファイル1611、1612、1015は同じコンテンツのファイルとなる。そして、最新のバックアップファイル1602及び1612のファイル名には、リストアされたことを示す識別子が付与される。ここでは、バックアップファイル1602にはリストアによって更新が行われたので識別子「RSTMOD」が、バックアップファイル1612には、リストアによって削除された状態から追加されたので識別子「RSTADD」が付与されている。   In step 1505, the restore execution unit 507 updates the backup file. FIG. 16 shows a history data storage structure after file restoration, and corresponds to FIG. 10 described above. Before the restoration, the latest backup file of the file “aaa.pptx” is the file 1003, and the latest backup file of the file “bbb.xlsx” is the deletion state identification file 1013. Here, when the file “aaa.pptx” in the FS 204 returns to the state of the file 1004 by restoration, the file 1004 is copied to generate the latest backup file 1602. Further, the current file 1601 is also updated with the contents of the file 1004. As a result, the files 1601, 1602, and 1004 have the same contents. Similarly, when the file “bbb.xlsx” in the FS 204 returns to the state of the file 1015 by the restoration, the file 1015 is copied and the latest backup file 1612 is generated. Further, a current file 1611 having the same contents as the file 1015 is generated. As a result, the files 1611, 1612, and 1015 are files having the same content. The latest backup files 1602 and 1612 are given identifiers indicating that they have been restored. Here, the identifier “RSTMOD” is given to the backup file 1602 because it has been updated by the restore, and the identifier “RSTADD” is given to the backup file 1612 because it has been added from the state deleted by the restore.

ステップ1506において、リストア実行部507は、ジャーナルファイルを更新する。ジャーナルファイルも、図16で説明したバックアップファイルの内容に合わせて変更が行われる。図17は、ファイルのリストアを行った後のBFS205のジャーナルファイルを示している。図17において、レコード1701〜1703は、ファイルのリストアによって追加されたレコードである。レコード1701〜1703のコマンド列703には、リストアによって更新されたことを示す情報が格納されている。また、これら3つのレコード1701〜1703におけるリクエストタイム列701とバックアップタイム列702には同じタイムスタンプが格納される。そして、この際には、FS204のジャーナルファイルも更新される。   In step 1506, the restore execution unit 507 updates the journal file. The journal file is also changed in accordance with the contents of the backup file described with reference to FIG. FIG. 17 shows a journal file of the BFS 205 after file restoration. In FIG. 17, records 1701 to 1703 are records added by file restoration. Information indicating that the records 1701 to 1703 have been updated by the restore is stored in the command string 703 of the records 1701 to 1703. Further, the same time stamp is stored in the request time column 701 and the backup time column 702 in these three records 1701 to 1703. At this time, the journal file of the FS 204 is also updated.

続いて、FSリストアがなされなかった場合のファイルのリストア処理について説明する。   Next, a file restore process when no FS restore is performed will be described.

ステップ1507において、リストア実行部507は、前述のステップ1306で間引き処理された後の更新情報を取得する。   In step 1507, the restore execution unit 507 acquires update information after the thinning process in step 1306 described above.

ステップ1508において、リストア実行部507は、対象ファイルについて、取得した更新情報におけるレコードのコマンド種別を判定する。コマンド種別が、ファイルの変更(MOD)或いは削除(DEL)であると判定されればステップ1509に進み、ファイルの追加(ADD)であると判定されればステップ1512に進む。   In step 1508, the restore execution unit 507 determines the command type of the record in the acquired update information for the target file. If it is determined that the command type is file change (MOD) or deletion (DEL), the process proceeds to step 1509. If it is determined that the command type is file addition (ADD), the process proceeds to step 1512.

ステップ1509において、リストア実行部507は、対象ファイルについての、リカバリポイント(1401)より前の更新処理の内容を取得する。例えば、図17において、ファイル「bbb.xlsx」が対象ファイルの場合、レコード1704で示す内容が取得されることになる。   In step 1509, the restore execution unit 507 acquires the content of the update process before the recovery point (1401) for the target file. For example, in FIG. 17, when the file “bbb.xlsx” is the target file, the content indicated by the record 1704 is acquired.

ステップ1510において、リストア実行部507は、取得した前の更新処理の内容に対応するバックアップファイルをBFS205から取得する。例えば、対象ファイルが「bbb.xlsx」で、前の更新処理の内容として上述のレコード1704の内容が取得されていた場合は、図16におけるファイル1014が取得されることになる。   In step 1510, the restore execution unit 507 acquires a backup file corresponding to the acquired content of the previous update process from the BFS 205. For example, when the target file is “bbb.xlsx” and the content of the record 1704 is acquired as the content of the previous update process, the file 1014 in FIG. 16 is acquired.

ステップ1511において、リストア実行部507は、ステップ1510で取得したバックアップファイルの内容で、FS204内の対応するファイルの内容を更新する。これにより、当該ファイルの内容は前のバージョンに戻ることになる。   In step 1511, the restore execution unit 507 updates the contents of the corresponding file in the FS 204 with the contents of the backup file acquired in step 1510. As a result, the contents of the file are returned to the previous version.

ステップ1512において、リストア実行部507は、ステップ1507で取得した更新情報のレコードにおいてコマンドが追加(ADD)となっている対象ファイルを、FS204から削除する。   In step 1512, the restore execution unit 507 deletes, from the FS 204, the target file to which a command is added (ADD) in the update information record acquired in step 1507.

以後のステップ1513及び1514の内容は、前述のステップ1505及び1506と同じである。すなわち、リストア実行部507は、最新のバックアップファイルを生成して(ステップ1513)、ジャーナルファイルを更新する(ステップ1514)。   The contents of subsequent steps 1513 and 1514 are the same as those of the aforementioned steps 1505 and 1506. That is, the restore execution unit 507 generates the latest backup file (step 1513) and updates the journal file (step 1514).

以上が、ファイルのリストア処理の内容である。   The above is the content of the file restoration process.

なお、データベースの管理形態に応じて複数のジャーナルファイルが存在する場合は、上述したファイルのバックアップやリストアをジャーナルファイル単位に実行すればよい。   Note that when there are a plurality of journal files depending on the management form of the database, the above-described file backup and restoration may be executed for each journal file.

また、本実施例では、ジャーナルファイルがFS204とFS205の両方に存在していたがどちらか一方(或いは、データベース上など別の場所)で一元的に管理されていてもよい。   In this embodiment, the journal file exists in both the FS 204 and the FS 205, but may be managed centrally in either one (or another location such as a database).

本実施例によれば、データベースとファイルサーバを併用するシステムにおいて、リストアした場合のデータの整合性を保つことができる。   According to the present embodiment, in a system using both a database and a file server, it is possible to maintain data consistency when restored.

実施例1では、データベースとファイルサーバとの間でデータの整合性を保つために、ファイルサーバで更新された全ての履歴データをバックアップファイルサーバ内に保存していた。しかし、時間の経過と共に保存されるデータ量は増大していくため、不要な履歴データを削除する必要が出てくる。例えば、定期的にファイルサーバで前述のFSバックアップを行っている場合、データを直近のFSバックアップ以前の状態に戻す可能性は極めて低いと考えられる。そこで、直近のFSバックアップ以前など特定の時点よりも古い履歴ファイルを削除することで、バックアップファイルサーバに保存するデータ容量を減らす態様について、実施例2として説明する。なお、実施例1と共通する部分については説明を省略ないしは簡略化し、以下では差異点を中心に説明するものとする。   In the first embodiment, in order to maintain data consistency between the database and the file server, all history data updated by the file server is stored in the backup file server. However, since the amount of data stored increases with the passage of time, it is necessary to delete unnecessary history data. For example, when the above-mentioned FS backup is regularly performed by the file server, it is considered that the possibility of returning the data to the state before the latest FS backup is extremely low. Therefore, an embodiment of reducing the data capacity stored in the backup file server by deleting a history file older than a specific time point, such as before the most recent FS backup, will be described as a second embodiment. The description of the parts common to the first embodiment will be omitted or simplified, and the differences will be mainly described below.

図18は、本実施例に係る、直近のFSバックアップ以前の履歴データ(バックアップファイル)を削除する様子を説明する図であり、前述の図10のバックアップファイルの保管構造に対応している。図18において、ファイル1801はカレントファイルであり、フォルダ1802はバックアップファイルを格納する履歴データ保管フォルダである。この履歴データ保管フォルダ1802の中に、バックアップファイル1803〜1809が格納されている。点線1810は、直近のFSバックアップを行った時点を示している。したがって、図18の例では、直近のFSバックアップの時点1810以前に格納されたバックアップファイル1806〜1809が削除されることになる。   FIG. 18 is a diagram for explaining a state of deleting history data (backup file) before the most recent FS backup according to the present embodiment, and corresponds to the backup file storage structure of FIG. 10 described above. In FIG. 18, a file 1801 is a current file, and a folder 1802 is a history data storage folder for storing backup files. Backup files 1803 to 1809 are stored in the history data storage folder 1802. A dotted line 1810 indicates a point in time when the latest FS backup is performed. Therefore, in the example of FIG. 18, backup files 1806 to 1809 stored before the most recent FS backup time 1810 are deleted.

このバックアップファイルの削除処理は、BFS205内のファイル管理部503によって実行される。具体的には、FSバックアップが行われた日時の情報をFSサーバ204から受信し、BFS205内で管理されているバックアップファイルのうち、受信した日時以前のバックアップファイルが削除フォルダ等に移動されて、削除される。   This backup file deletion process is executed by the file management unit 503 in the BFS 205. Specifically, information on the date and time when the FS backup was performed is received from the FS server 204, and among the backup files managed in the BFS 205, backup files before the received date and time are moved to the deletion folder or the like. Deleted.

なお、特定の時点より古いバックアップファイルを削除するだけではなく、例えば、現在あるいは過去の一時点におけるデータを2次的なメディア(例えば、テープメディア)にバックアップするといったことを行なってもよい。   In addition to deleting a backup file that is older than a specific point in time, for example, data at the present time or one point in the past may be backed up to a secondary medium (for example, a tape medium).

本実施例によれば、FSバックアップの実行された日時の情報に基づいて、履歴データを定期的に削除することで、バックアップファイルサーバのデータ容量を削減することが出来る。   According to the present embodiment, it is possible to reduce the data capacity of the backup file server by periodically deleting the history data based on the information of the date and time when the FS backup was executed.

次に、物理的に離れた場所にスタンバイ環境が存在する場合の態様について、実施例3として説明する。なお、実施例1と共通する部分については説明を省略ないしは簡略化し、以下では差異点を中心に説明するものとする。   Next, a case where a standby environment exists in a physically separated place will be described as a third embodiment. The description of the parts common to the first embodiment will be omitted or simplified, and the differences will be mainly described below.

図19は、本実施例に係る、文書管理システムの構成の一例を示す図であり、物理的に離れた場所にスタンバイ環境が存在する様子を示している。図19において、SDB1901はDB203のスタンバイ環境としてのデータベースであり、SFS1902はFS204のスタンバイ環境としてのファールサーバである。SDB1901及びSFS1902は、ネットワーク117を通して、DB203及びFS204と接続されており、相互に物理的に離れたロケーションに配置されている。一般的に、DB203とSDB1901との間の同期は、データベースアプリケーションやデータベースアプリケーションを提供しているベンダーの専用アプリケーションを用いて行われる。そのため、FS204とSFS1902との間の同期は、データベースとは別に行われることになる。従って、データベースとファイルサーバを併用するシステムの場合、リプリケーションされたスタンバイ環境としてのデータベースとファイルサーバは、ある時点においてデータの整合性がとれているとは限らない。そこで、本実施例では、SFS1902をバックアップファイルサーバとして用いる。つまり、本実施例においてSFS1902は、前述したBFS205と同様の機能を有しつつ、FS204のスタンバイ環境として動作する。   FIG. 19 is a diagram showing an example of the configuration of the document management system according to the present embodiment, and shows a situation where a standby environment exists in a physically separated place. In FIG. 19, SDB 1901 is a database as a standby environment of DB 203, and SFS 1902 is a foul server as a standby environment of FS 204. The SDB 1901 and the SFS 1902 are connected to the DB 203 and the FS 204 through the network 117, and are arranged at locations physically separated from each other. In general, synchronization between the DB 203 and the SDB 1901 is performed using a database application or a dedicated application of a vendor that provides the database application. Therefore, the synchronization between the FS 204 and the SFS 1902 is performed separately from the database. Therefore, in the case of a system that uses both a database and a file server, the database and file server as a replicated standby environment do not always have data consistency at a certain point in time. Therefore, in this embodiment, the SFS 1902 is used as a backup file server. That is, in this embodiment, the SFS 1902 operates as a standby environment of the FS 204 while having the same function as the BFS 205 described above.

SFS1902がFS204のスタンバイ環境として動作する場合は、前述のリストア時と同様、SDB1901のリプリケーションの完了ポイントに基づいて、SFS1902のデータを更新することで、データの整合性を図る。このスタンバイ環境として動作する場合におけるデータの整合性を図るための処理は、前述の図12のフローチャートで示したリストア処理と基本的に同じである。その際、ステップ1201においてはDB203のリカバリポイントに代えてSDB1901におけるリプリケーション完了ポイントが取得されることになる。そして、整合性がとれてからスタンバイ環境を起動させることで、問題なくDBサーバとファイルサーバの併用が可能となる。なお、実施例1のリストア時にはFS204とBFS205が連携して処理を実行していたが、本実施例のスタンバイ環境では、SFS1902上で図5の機能ブロック図で示した各機能が動作することになる。   When the SFS 1902 operates as a standby environment of the FS 204, data consistency is achieved by updating the data of the SFS 1902 based on the replication completion point of the SDB 1901, as in the above-described restoration. The process for ensuring data consistency when operating as this standby environment is basically the same as the restore process shown in the flowchart of FIG. At this time, in step 1201, a replication completion point in the SDB 1901 is acquired instead of the recovery point in the DB 203. Then, by starting the standby environment after consistency is achieved, it is possible to use both the DB server and the file server without any problem. Note that the FS 204 and the BFS 205 cooperate to execute processing during the restoration in the first embodiment. However, in the standby environment of the present embodiment, each function shown in the functional block diagram of FIG. 5 operates on the SFS 1902. Become.

(その他の実施例)
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施例の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
(Other examples)
The present invention is also realized by executing the following processing. That is, software (program) for realizing the functions of the above-described embodiments is supplied to a system or apparatus via a network or various storage media, and a computer (or CPU, MPU, etc.) of the system or apparatus reads the program. It is a process to be executed.

Claims (10)

文書管理システムであって、文書の第1のデータを保管するデータベースサーバ、文書の第2のデータを保管するファイルサーバ及び前記ファイルサーバに保管される前記第2のデータのバックアップデータを保管するバックアップファイルサーバを含み、
前記データベースサーバで前記第1のデータのリストアが発生した場合に、前記ファイルサーバで保管される前記第2のデータに対し、前記バックアップファイルサーバでバックアップされたデータを用いて、前記第1のデータに対するリストアの内容に応じたリストアを行なう手段を備える
ことを特徴とする文書管理システム。
A document management system, a database server that stores first data of a document, a file server that stores second data of a document, and a backup that stores backup data of the second data stored in the file server Including a file server,
When the restoration of the first data occurs in the database server, the first data is obtained by using the data backed up in the backup file server with respect to the second data stored in the file server. A document management system comprising means for restoring according to the contents of restoration for
前記データベースサーバにおける前記第1のデータに対してなされたリストアによるリカバリの内容に基づいて、前記ファイルサーバで管理される前記第2のデータに対して行なうリストアの内容を決定する手段をさらに備える、
ことを特徴とする請求項1に記載の文書管理システム。
Means for determining the content of a restore to be performed on the second data managed by the file server based on the content of the recovery by the restore performed on the first data in the database server;
The document management system according to claim 1.
前記バックアップファイルサーバを介さない独立したバックアップ機能を前記ファイルサーバが有している場合に、当該バックアップ機能によってバックアップされたデータに対する独立したリストアを行なうかどうかを判定する判定手段をさらに備え、
前記リストアの内容を決定する手段において決定される、前記ファイルサーバで管理される前記第2のデータに対して行なうリストアの内容は、前記判定手段での判定の結果に応じて異なる、
ことを特徴とする請求項2に記載の文書管理システム。
When the file server has an independent backup function not via the backup file server, the file server further includes a determination unit that determines whether to perform independent restoration on the data backed up by the backup function,
The content of the restore performed on the second data managed by the file server, determined by the means for determining the content of the restore, differs depending on the result of determination by the determination unit,
The document management system according to claim 2, wherein:
前記判定手段は、
前記独立したバックアップ機能によってバックアップされたデータに対する前記独立したリストアを行った場合の処理コストを推定する第1の推定手段と、
前記独立したバックアップ機能によってバックアップされたデータに対する前記独立したリストアを行なわなかった場合の処理コストを推定する第2の推定手段と、
前記第1の推定手段の結果と前記第2の推定手段の結果とを比較して、処理コストが小さい方を選択する手段と
を含むことを特徴とする請求項3に記載の文書管理システム。
The determination means includes
First estimating means for estimating a processing cost when the independent restoration is performed on the data backed up by the independent backup function;
Second estimating means for estimating a processing cost when the independent restoration for the data backed up by the independent backup function is not performed;
4. The document management system according to claim 3, further comprising means for comparing the result of the first estimation means and the result of the second estimation means and selecting the one with the lower processing cost.
前記ファイルサーバは、前記第2のデータの更新の履歴を示す更新情報を有し、
前記バックアップファイルサーバは、前記更新に伴ってバックアップされるバックアップデータの更新の履歴を示す第2の更新情報を有し、
前記リストアを行なう手段は、不要な処理が間引かれた前記第2の更新情報に従って、前記ファイルサーバにおける前記第2のデータに対し、前記第1のデータに対するリストアの内容に応じたリストアを行なう
ことを特徴とする請求項1乃至4のいずれか1項に記載の文書管理システム。
The file server has update information indicating an update history of the second data;
The backup file server has second update information indicating a history of update of backup data backed up with the update,
The means for performing restoration restores the second data in the file server in accordance with the contents of the restoration of the first data in accordance with the second update information from which unnecessary processing has been thinned out. The document management system according to claim 1, wherein:
前記バックアップファイルサーバは、時系列に保管されたバックアップデータのうち特定の時点より古いバックアップデータを削除する手段をさらに有することを特徴とする請求項1乃至5のいずれか1項に記載の文書管理システム。   6. The document management according to claim 1, wherein the backup file server further includes means for deleting backup data older than a specific point in time among backup data stored in time series. system. 前記第1のデータは文書の書誌情報であり、前記第2のデータは文書の実体ファイルであることを特徴とする請求項1乃至6のいずれか1項に記載の文書管理システム。   7. The document management system according to claim 1, wherein the first data is bibliographic information of the document, and the second data is a document actual file. 前記更新に伴ってバックアップされるバックアップデータのファイル名には、前記文書の実体ファイルに対する前記更新のリクエストの時間を示す情報を含むことを特徴とする請求項7に記載の文書管理システム。   8. The document management system according to claim 7, wherein a file name of backup data backed up in accordance with the update includes information indicating a time of the update request for the actual file of the document. 文書の第1のデータを保管するデータベースサーバ、文書の第2のデータを保管するファイルサーバ及び前記ファイルサーバに保管される前記第2のデータのバックアップデータを保管するバックアップファイルサーバを含む文書管理システムにおける文書管理方法であって、
前記データベースサーバで前記第1のデータのリストアが発生した場合に、前記ファイルサーバで保管される前記第2のデータに対し、前記バックアップファイルサーバでバックアップされたデータを用いて、前記第1のデータに対するリストアの内容に応じたリストアを行なうステップを含む
ことを特徴とする文書管理方法。
Document management system including a database server that stores first data of a document, a file server that stores second data of a document, and a backup file server that stores backup data of the second data stored in the file server Document management method in
When the restoration of the first data occurs in the database server, the first data is obtained by using the data backed up in the backup file server with respect to the second data stored in the file server. A document management method comprising a step of performing restoration according to the content of restoration for
コンピュータを、請求項1乃至8のいずれか1項に記載の文書管理システムとして機能させるためのプログラム。   A program for causing a computer to function as the document management system according to any one of claims 1 to 8.
JP2013251454A 2013-12-04 2013-12-04 Document management system, information processing apparatus in document management system, document management method, and program Pending JP2015108966A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013251454A JP2015108966A (en) 2013-12-04 2013-12-04 Document management system, information processing apparatus in document management system, document management method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013251454A JP2015108966A (en) 2013-12-04 2013-12-04 Document management system, information processing apparatus in document management system, document management method, and program

Publications (1)

Publication Number Publication Date
JP2015108966A true JP2015108966A (en) 2015-06-11

Family

ID=53439270

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013251454A Pending JP2015108966A (en) 2013-12-04 2013-12-04 Document management system, information processing apparatus in document management system, document management method, and program

Country Status (1)

Country Link
JP (1) JP2015108966A (en)

Similar Documents

Publication Publication Date Title
US10911518B2 (en) Network folder synchronization
US7353335B2 (en) Storage control method for database recovery in logless mode
JP6553822B2 (en) Dividing and moving ranges in distributed systems
CN102594849B (en) Data backup and recovery method and device, virtual machine snapshot deleting and rollback method and device
JP5337916B1 (en) Information processing system
JP4839091B2 (en) Database recovery method and computer system
JP5008991B2 (en) Apparatus and method for controlling data recovery
US20140172791A1 (en) Application of a differential dataset to a data store using sequential change sets
US20170255528A1 (en) Smart data replication recoverer
CN105574187A (en) Duplication transaction consistency guaranteeing method and system for heterogeneous databases
JP2014512601A (en) Tenant data recovery across tenant migration
EP3651011B1 (en) Method and system to efficiently recovering a consistent view of a file system image from an asynchronously remote system
JP5665889B2 (en) Method and apparatus for backing up subversion repository
CN104166605A (en) Data backup method and system based on incremental data files
JP6196389B2 (en) Distributed disaster recovery file synchronization server system
WO2016107219A1 (en) Data recovery method and apparatus
CN115098299A (en) Backup method, disaster recovery method, device and equipment for virtual machine
JP2016081189A (en) Information processing unit, data synchronization method, data synchronization system and program
CN112231288A (en) Log storage method and device and medium
JP2015108966A (en) Document management system, information processing apparatus in document management system, document management method, and program
US10976952B2 (en) System and method for orchestrated application protection
US11475159B2 (en) System and method for efficient user-level based deletions of backup data
US9952807B1 (en) Virtual machine back-up
US11675668B2 (en) Leveraging a cloud-based object storage to efficiently manage data from a failed backup operation
JP7007017B2 (en) Storage systems, control methods, and programs