[go: up one dir, main page]

JP2014071740A - Information processor, management method, and management program - Google Patents

Information processor, management method, and management program Download PDF

Info

Publication number
JP2014071740A
JP2014071740A JP2012218243A JP2012218243A JP2014071740A JP 2014071740 A JP2014071740 A JP 2014071740A JP 2012218243 A JP2012218243 A JP 2012218243A JP 2012218243 A JP2012218243 A JP 2012218243A JP 2014071740 A JP2014071740 A JP 2014071740A
Authority
JP
Japan
Prior art keywords
instruction
read
write
command
storage device
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
JP2012218243A
Other languages
Japanese (ja)
Inventor
Yudai Kumagai
雄大 熊谷
Sadayoshi Ito
定佳 伊東
Yutaka Sakurai
裕 櫻井
Jun Kanno
潤 菅野
Yuji Kambe
祐史 神戸
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2012218243A priority Critical patent/JP2014071740A/en
Publication of JP2014071740A publication Critical patent/JP2014071740A/en
Pending legal-status Critical Current

Links

Images

Landscapes

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

Abstract

【課題】復旧時間を短縮させる。
【解決手段】情報処理装置において、記憶装置に対する書き込み命令を解析し、前記書き込み命令により前記記憶装置に書き込まれたデータを読み出すための読み出し命令と読み出し期待値とを含む整合性確認情報を取得する命令解析手段と、前記命令解析手段により得られる前記整合性確認情報を前記書き込み命令に対応付けて記憶する記憶手段と、前記記憶装置の障害復旧時に、前記書き込み命令の実行状態と、前記記憶手段に記憶された前記整合性情報とに基づいて、前記記憶装置に書き込まれたデータの整合性を確認する命令実行手段とを有する。
【選択図】図2
[PROBLEMS] To reduce recovery time.
In an information processing apparatus, a write command for a storage device is analyzed, and consistency check information including a read command for reading data written to the storage device by the write command and a read expected value is acquired. An instruction analysis means; a storage means for storing the consistency check information obtained by the instruction analysis means in association with the write instruction; an execution state of the write instruction at the time of failure recovery of the storage device; and the storage means Instruction execution means for confirming the consistency of the data written in the storage device based on the consistency information stored in the storage device.
[Selection] Figure 2

Description

本願は、情報処理装置、管理方法、及び管理プログラムに関する。   The present application relates to an information processing apparatus, a management method, and a management program.

従来では、サーバやデータベース等を備えた管理システムに何らかの障害が発生した場合に、管理者等の担当者が運用時のログ情報等を参照しながら、自己の経験等に基づいて原因を分析して復旧を行っている。ここで、従来では、例えば監視対象サーバに障害が発生したときに、障害の復旧がデッドラインに間に合うように障害を復旧させるために、必要な対応手順を組み合わせた予定表を生成する障害対応システムが存在する。また、従来では、システム障害の発生によって中断されたバッチジョブを、バッチジョブの状態が格納されたデータベースから検索したり、システム障害の発生によりリカバリジョブが中断されたバッチジョブに対して再度リカバリジョブを起動する手法が存在する(例えば、特許文献1及び2参照)。   Conventionally, when a failure occurs in a management system equipped with a server, database, etc., a person in charge such as an administrator analyzes the cause based on his / her experience while referring to log information during operation. Have been restored. Here, conventionally, for example, when a failure occurs in a monitored server, a failure response system that generates a schedule that combines necessary response procedures to recover the failure so that the failure can be recovered in time for the deadline Exists. Conventionally, a batch job that has been interrupted due to the occurrence of a system failure can be retrieved from a database that stores the status of the batch job, or a recovery job can be resumed for a batch job that has been interrupted due to the occurrence of a system failure. There is a method for starting up (see, for example, Patent Documents 1 and 2).

なお、従来では、データベースにアクセスしてデータを書き込んでいる状態で障害が発生した場合に、データベースに記憶されたデータとデータベースへの書き込みデータとの整合性を確認し、不整合が生じている場合には、そのデータを復旧させる必要が生じる。   Conventionally, when a failure occurs while accessing the database and writing data, the consistency between the data stored in the database and the data written to the database is confirmed, resulting in inconsistencies. In some cases, it is necessary to restore the data.

特開2008−210148号公報JP 2008-210148 A 特開2008−181735号公報JP 2008-181735 A

しかしながら、上述した従来手法において、データベースに記憶されたデータの整合性を確認する場合には、担当者等が手動かつ目視で入力データとの確認作業を行うため時間がかかってしまう。また、上述した従来手法では、データベースに記憶されたデータに不整合なデータがあるか否かに関わらず、データベース内の全てのデータを確認するため、データベースへの書き込み作業を長時間中断させる必要が生じる。更に、上述した従来手法では、データの不整合を解消してデータを復旧させるために、バックアップデータ等を用いてデータ書き込み前の状態に戻してから再度データを書き込む必要が生じる。したがって、従来手法では、かなりの復旧時間が必要となっていた。   However, in the conventional method described above, when checking the consistency of the data stored in the database, it takes time because the person in charge or the like manually and visually confirms the input data. In addition, in the conventional method described above, it is necessary to interrupt the writing operation to the database for a long time in order to check all the data in the database regardless of whether there is inconsistent data stored in the database. Occurs. Furthermore, in the above-described conventional method, in order to eliminate data inconsistency and restore data, it is necessary to write data again after returning to the state before data writing using backup data or the like. Therefore, the conventional method requires a considerable recovery time.

開示の技術は、かかる問題を鑑み、復旧時間を短縮させることを目的とする。   In view of such a problem, the disclosed technique aims to shorten the recovery time.

開示の一態様における情報処理装置は、記憶装置に対する書き込み命令を解析し、前記書き込み命令により前記記憶装置に書き込まれたデータを読み出すための読み出し命令と読み出し期待値とを含む整合性確認情報を取得する命令解析手段と、前記命令解析手段により得られる前記整合性確認情報を前記書き込み命令に対応付けて記憶する記憶手段と、前記記憶装置の障害復旧時に、前記書き込み命令の実行状態と、前記記憶手段に記憶された前記整合性情報とに基づいて、前記記憶装置に書き込まれたデータの整合性を確認する命令実行手段とを有する。   An information processing apparatus according to one aspect of the disclosure analyzes a write command to a storage device, and acquires consistency check information including a read command and a read expected value for reading data written to the storage device by the write command Instruction analyzing means, storage means for storing the consistency check information obtained by the instruction analyzing means in association with the write instruction, execution status of the write instruction at the time of failure recovery of the storage device, and the storage Instruction executing means for confirming the consistency of data written in the storage device based on the consistency information stored in the means.

開示の技術によれば、復旧時間を短縮させることができる。   According to the disclosed technology, the recovery time can be shortened.

データアクセス管理システムの概略構成例を示す図である。It is a figure which shows the schematic structural example of a data access management system. アクセス管理装置の機能構成の一例を示す図である。It is a figure which shows an example of a function structure of an access management apparatus. アクセス管理処理が実現可能なハードウェア構成の一例を示す図である。It is a figure which shows an example of the hardware constitutions which can implement | achieve access management processing. 命令記憶手段に記憶されるデータ例を示す図である。It is a figure which shows the example of data memorize | stored in a command memory | storage means. ID状態記憶手段に記憶されるデータ例を示す図である。It is a figure which shows the example of data memorize | stored in ID state memory | storage means. データベースの記憶内容の具体例を説明するための図である。It is a figure for demonstrating the specific example of the memory content of a database. データ書き込み処理の一例を示すフローチャートである。It is a flowchart which shows an example of a data writing process. 通常時のデータ書き込み処理の概要を説明するための図である。It is a figure for demonstrating the outline | summary of the data write process at the normal time. 障害復旧処理の一例を示すフローチャートである。It is a flowchart which shows an example of a failure recovery process. 障害復旧処理の概要を説明するための図である。It is a figure for demonstrating the outline | summary of a failure recovery process.

以下、添付図面を参照しながら実施例について詳細に説明する。   Hereinafter, embodiments will be described in detail with reference to the accompanying drawings.

<データアクセス管理システムの概略構成例>
図1は、データアクセス管理システムの概略構成例を示す図である。図1に示すデータアクセス管理システム10は、概略的には情報処理装置の一例としてのアクセス管理装置11と、記憶装置の一例としてのデータベース12と、1又は複数の端末13−1〜13−n(以下、必要に応じて「端末13」と総称する)とを有する。また、図1のデータアクセス管理システム10において、アクセス管理装置11と、端末13とは、通信ネットワーク14によりデータの送受信が可能な状態で接続されている。なお、本実施形態では、アクセス管理装置11と、データベース12とが通信ネットワーク14によりデータの送受信が可能な状態で接続されていてもよい。
<Example of schematic configuration of data access management system>
FIG. 1 is a diagram illustrating a schematic configuration example of a data access management system. A data access management system 10 illustrated in FIG. 1 schematically includes an access management device 11 as an example of an information processing device, a database 12 as an example of a storage device, and one or a plurality of terminals 13-1 to 13-n. (Hereinafter collectively referred to as “terminal 13” as necessary). In the data access management system 10 of FIG. 1, the access management apparatus 11 and the terminal 13 are connected in a state where data can be transmitted and received through the communication network 14. In the present embodiment, the access management apparatus 11 and the database 12 may be connected via the communication network 14 in a state where data can be transmitted and received.

アクセス管理装置11は、端末13からの指示に基づきデータベース12に対するデータの読み出しや書き込み等のデータアクセスの管理等を行う。例えば、アクセス管理装置11は、データベース12に対するデータの書き込みを行う前処理として、データベース12に書き込まれたデータとデータベース12への書き込みデータとの整合性を確認するための整合性確認情報(例えば、確認用読み出し命令、読み出し期待値)を生成し、書き込み命令と対応付けて記憶手段等に記憶する。また、アクセス管理装置11は、上述した前処理やデータベース12へのデータ書き込みの開始や終了等の実行に対する状態情報を記憶手段等に記憶する。また、アクセス管理装置11は、障害等が発生した際に、上述した整合性確認情報や状態情報等に基づいて、データ書き込みの中断点を判別する。したがって、アクセス管理装置11は、データベース12に対する障害復旧時に書き込み中断点から迅速にデータ書き込みを再開させることができる。なお、障害とは、例えばデータアクセス管理システム10における各装置の故障等による障害や、ネットワーク障害、電源障害等のシステム障害等であるがこれに限定されるものではない。   The access management device 11 performs management of data access such as reading and writing of data with respect to the database 12 based on an instruction from the terminal 13. For example, the access management apparatus 11 performs consistency check information (for example, for checking the consistency between data written in the database 12 and data written to the database 12 as pre-processing for writing data to the database 12). A read command for confirmation and an expected read value) are generated and stored in the storage means or the like in association with the write command. Further, the access management apparatus 11 stores state information for execution such as the above-described preprocessing and the start and end of data writing to the database 12 in a storage unit or the like. In addition, when a failure or the like occurs, the access management apparatus 11 determines a data writing interruption point based on the above-described consistency confirmation information, status information, and the like. Therefore, the access management apparatus 11 can quickly resume data writing from the write interruption point when the failure of the database 12 is recovered. The failure is, for example, a failure due to a failure of each device in the data access management system 10 or a system failure such as a network failure or a power failure, but is not limited thereto.

つまり、本実施形態では、障害により書き込みが中断されたデータに対して、データ書き込みの中断点を判別し、障害復旧後にその中断点から書き込みを再開させることにより、データベース12へのデータ入力作業の中断時間を短縮する。また、本実施形態では、データ不整合発生時にデータ記憶前の状態に戻し、再度データの入力を行うといった処理を実施することなく、障害発生から復旧までの処理を簡素化して、適切にデータ不整合を解消することができる。   In other words, in the present embodiment, the data writing operation is determined for the data whose writing has been interrupted due to a failure, and after the failure is recovered, the writing is resumed from the interruption point. Reduce interruption time. Also, in this embodiment, when data inconsistency occurs, the process from the occurrence of failure to recovery is simplified without performing the process of returning to the state before data storage and inputting the data again. The consistency can be eliminated.

ここで、アクセス監視装置11は、例えばPersonal Computer(PC)や、ノート型PC、サーバ等であってもよいが、これに限定されるものではない。   Here, the access monitoring apparatus 11 may be, for example, a personal computer (PC), a notebook PC, a server, or the like, but is not limited thereto.

データベース12は、例えば業務上等における所定の処理を実行するための各種設定情報や、所定の処理の実行に対する入出力データ等を記憶する。また、データベース12は、例えば端末13からの指示等を受けたアクセス管理装置11から要求されたデータを所定のタイミングで読み出したり、書き込んだりすることができる。   The database 12 stores, for example, various setting information for executing a predetermined process in business, input / output data for execution of the predetermined process, and the like. Further, the database 12 can read and write data requested from the access management apparatus 11 that has received an instruction from the terminal 13 at a predetermined timing, for example.

ここで、データベース12は、多種の情報の集合物であり、それらの情報を、例えばキーワード等を用いて検索し、抽出することができるように体系的に構成されている。なお、本実施形態におけるデータベース12は、例えばデータベースサーバでもよく、また複数のデータベースからなるデータセンタ等であってもよく、更にクラウドコンピューティングで設計されたデータベースの一部又は全部であってもよい。   Here, the database 12 is a collection of various types of information, and is systematically configured so that the information can be searched and extracted using, for example, keywords. The database 12 in the present embodiment may be a database server, a data center composed of a plurality of databases, or a part or all of a database designed by cloud computing. .

端末13は、各ユーザが使用するコンピュータである。端末13は、各端末13がそれぞれの業務等に対応する所定の処理を行う際に必要となるデータの読み出し(入力)要求や、処理後のデータの書き込み(出力)要求をデータベース12に対して行い、データの入出力を行う。なお、図1の例に示すデータアクセス管理システム10において、上述した端末13からの要求情報は、通信ネットワーク14を介してアクセス管理装置11に送信され、アクセス管理装置11を介してデータベース12に送信される。   The terminal 13 is a computer used by each user. The terminal 13 sends a data read (input) request and a data write (output) request after processing to the database 12 which are necessary when each terminal 13 performs a predetermined process corresponding to each job. And input / output data. In the data access management system 10 shown in the example of FIG. 1, the request information from the terminal 13 is transmitted to the access management apparatus 11 via the communication network 14 and transmitted to the database 12 via the access management apparatus 11. Is done.

ここで、端末13は、例えばPCやノート型PC等であってもよく、スマートフォンやタブレット端末、携帯端末等の各種通信端末、ゲーム機器、音楽再生装置等であってもよいが、これに限定されるものではない。   Here, the terminal 13 may be, for example, a PC, a notebook PC, or the like, and may be various communication terminals such as a smartphone, a tablet terminal, or a mobile terminal, a game device, a music playback device, or the like, but is not limited thereto. Is not to be done.

通信ネットワーク14は、例えばインターネットやLocal Area Network(LAN)等に代表されるネットワーク形態を有するが、これに限定されるものではない。   The communication network 14 has a network form represented by, for example, the Internet or a local area network (LAN), but is not limited thereto.

上述したデータアクセス管理システム10は、例えばデータベース12に対するデータ書き込み中に障害が発生し、データが不整合になった場合でも、アクセス管理装置11によって、障害復旧後に書き込み中断点から書き込みを再開させることにより、データ不整合が解消される。そのため、本実施形態では、障害復旧時に管理者等がデータ不整合の可能性を確認する必要がなくなる。   In the data access management system 10 described above, for example, even when a failure occurs during data writing to the database 12 and the data becomes inconsistent, the access management device 11 resumes writing from the write interruption point after recovery from the failure. Thus, the data inconsistency is resolved. Therefore, in this embodiment, it is not necessary for an administrator or the like to confirm the possibility of data inconsistency at the time of failure recovery.

また、本実施形態において、障害復旧後は、端末13を使用するユーザがデータベース12に入力しようとしたデータについて「入力完了状態」となるため、障害発生により書き込まれなかったデータを再度書き込む手間が発生しない。これにより、本実施形態では、障害発生から復旧までの処理を簡素化して、復旧時間を短縮させることができるため、例えばデータベースに対するデータ入力等の中断時間を大幅に短縮することができる。なお、復旧時間とは、例えば障害が発生してから、復旧が完了するまで(障害発生前の状態に戻るまで)の時間等を意味するが、これに限定されるものではない。   Further, in the present embodiment, after the failure is recovered, the user who uses the terminal 13 enters the “input completion state” for the data to be input to the database 12, so that the trouble of rewriting the data that was not written due to the occurrence of the failure is reduced. Does not occur. Thereby, in this embodiment, since the process from failure occurrence to recovery can be simplified and the recovery time can be shortened, for example, the interruption time for data input to the database can be greatly shortened. Note that the recovery time means, for example, the time from the occurrence of a failure until the recovery is completed (until the state before the failure occurs), but is not limited thereto.

なお、従来では、例えばデータベース12にデータを書き込み中に障害が発生した場合に、どこまで書き込みが完了しているかが分からず、同一のデータを二重に書き込む恐れがあった。そのため、従来では、バックアップデータ等を用いてデータ入力前の状態に一旦戻し、再度データを入力し直す必要があった。   Conventionally, for example, when a failure occurs while data is being written to the database 12, it is not known how far the data has been written, and the same data may be written twice. Therefore, conventionally, it has been necessary to temporarily return to the state before data input using backup data or the like, and input data again.

しかしながら、本実施形態によれば、アクセス管理装置11によって書き込み命令の実行状態を確認後、状態が完了となっていない場合に、確認用読み出し命令によりデータベース12の値を確認することで、書き込みがどの位置で中断しているかを迅速に確認することができる。そのため、本実施形態では、書き込みが完了していない中断点からデータの書き込みが再開でき、障害発生から復旧までの処理を簡素化して復旧時間を短縮させることができる。   However, according to the present embodiment, after the execution state of the write command is confirmed by the access management device 11, if the state is not completed, the value can be written by checking the value of the database 12 with the read command for confirmation. It is possible to quickly confirm at which position the interruption is made. Therefore, in this embodiment, data writing can be resumed from an interrupt point where writing has not been completed, and the processing from the occurrence of a failure to recovery can be simplified to shorten the recovery time.

<アクセス管理装置11の機能構成例>
次に、上述したアクセス管理装置11について、具体的に説明する。図2は、アクセス管理装置の機能構成の一例を示す図である。図2に示すアクセス管理装置11は、入力手段21と、出力手段22と、ID管理手段23と、命令解析手段24と、命令変換手段25と、命令実行手段26と、記憶手段27と、送受信手段28と、制御手段29とを有する。また、命令実行手段26は、書き込み命令実行手段31と、読み出し命令実行手段32とを有する。また、記憶手段27は、命令記憶手段41と、状態記憶手段の一例としてのID状態記憶手段42とを有する。
<Example of Functional Configuration of Access Management Device 11>
Next, the access management apparatus 11 described above will be specifically described. FIG. 2 is a diagram illustrating an example of a functional configuration of the access management apparatus. The access management apparatus 11 shown in FIG. 2 includes an input unit 21, an output unit 22, an ID management unit 23, a command analysis unit 24, a command conversion unit 25, a command execution unit 26, a storage unit 27, and transmission / reception. Means 28 and control means 29 are provided. The instruction execution means 26 includes a write instruction execution means 31 and a read instruction execution means 32. The storage unit 27 includes an instruction storage unit 41 and an ID state storage unit 42 as an example of a state storage unit.

入力手段21は、アクセス管理装置11を使用する管理者等からの各種指示の開始や終了、設定の入力等の各種入力を受け付ける。具体的には、入力手段21は、例えば本実施形態におけるID管理指示、命令解析指示、命令変換指示、命令実行指示、記憶指示、送受信指示等の各指示を受け付ける。   The input unit 21 accepts various inputs such as start and end of various instructions and setting input from an administrator or the like who uses the access management apparatus 11. Specifically, the input unit 21 receives instructions such as an ID management instruction, a command analysis instruction, a command conversion instruction, a command execution instruction, a storage instruction, and a transmission / reception instruction in the present embodiment.

入力手段21により取得される情報の入力は、例えばキーボードやマウス等の入力インターフェース等による入力でもよく、また画面を用いたタッチパネル形式の入力でもよく、操作キー等を用いての入力でもよい。更に、入力手段21は、例えばマイクロフォン等により音声を入力する音声入力手段を有していてもよい。   Input of information acquired by the input means 21 may be input using an input interface such as a keyboard or a mouse, a touch panel type input using a screen, or input using an operation key or the like. Furthermore, the input unit 21 may include a voice input unit that inputs voice using, for example, a microphone.

出力手段22は、入力手段21により入力された内容や、入力内容に基づいて実行された内容等の出力を行う。なお、出力手段22は、例えば画面表示により出力する場合には、ディスプレイやモニタ等の表示手段を有し、音声により出力する場合には、例えばスピーカ等の音声出力手段を有していてもよい。また、入力手段21と出力手段22とは、例えばタッチパネル等のように入出力が一体型であってもよい。   The output unit 22 outputs the content input by the input unit 21 and the content executed based on the input content. The output means 22 may have a display means such as a display or a monitor when outputting by screen display, for example, and may have an audio output means such as a speaker when outputting by sound. . The input unit 21 and the output unit 22 may be integrated with input / output, such as a touch panel.

ID管理手段23は、命令解析手段24等から指示等により例えばデータベース12に対して所定の処理を行うための1又は複数の命令群に対して、他の命令群と重複しない固有の識別情報(IDentification;ID)を付与して管理する。なお、所定の処理とは、例えばある端末13で実行される1つのトランザクション処理等を示すが、これに限定されるものではない。トランザクション処理とは、分けることのできない一連の情報処理の単位等を示す。つまり、IDの設定は、1命令毎に設定してもよく、また上述したトランザクション処理を実行するための複数の命令群(例えば、5命令、10命令)毎に設定してもよい。トランザクション処理単位で管理することで、例えば複数の命令を含む処理単位毎にデータベース12へのデータアクセス管理を実現することができる。また、上述した所定の処理は、各端末13が行う処理でもよく、アクセス管理装置11が行う処理でもよい。   The ID management means 23, for example, with respect to one or a plurality of instruction groups for performing predetermined processing on the database 12 according to instructions from the instruction analysis means 24 etc., has unique identification information that does not overlap with other instruction groups ( IDentification (ID) is assigned and managed. In addition, although a predetermined | prescribed process shows one transaction process etc. which are performed with a certain terminal 13, for example, it is not limited to this. Transaction processing refers to a series of information processing units that cannot be separated. That is, the ID may be set for each instruction, or may be set for each of a plurality of instruction groups (for example, 5 instructions, 10 instructions) for executing the transaction processing described above. By managing in units of transaction processing, for example, data access management to the database 12 can be realized for each processing unit including a plurality of instructions. Further, the predetermined processing described above may be processing performed by each terminal 13 or processing performed by the access management apparatus 11.

命令解析手段24は、各端末13から得られる複数の要求のうち、1又は複数の書き込み命令群を抽出し、抽出した書き込み命令群に対してID管理手段23よりIDを取得し、書き込み命令群に対して1つのIDを付与する。なお、書き込み命令群の抽出は、例えば書き込み命令に対応するコマンド種別(例えば、WRITE)等に基づいて抽出することができるが、これに限定されるものではない。   The command analysis unit 24 extracts one or a plurality of write command groups from a plurality of requests obtained from each terminal 13, acquires an ID from the ID management unit 23 for the extracted write command groups, and writes the write command group One ID is assigned to. The write command group can be extracted based on, for example, a command type (for example, WRITE) corresponding to the write command, but is not limited thereto.

また、命令解析手段24は、例えばID毎に前処理等を行う。ここで、前処理とは、例えば端末13等から得られるデータベース12に対する要求(命令)を実際に実行する前に、データの整合性を確認するための情報(整合性確認情報)を取得し、取得した情報を命令記憶手段41に記憶する処理等を意味する。   Further, the command analysis unit 24 performs preprocessing for each ID, for example. Here, the preprocessing refers to acquiring information (consistency confirmation information) for confirming data consistency before actually executing a request (command) for the database 12 obtained from the terminal 13 or the like, for example. It means a process of storing the acquired information in the instruction storage means 41.

具体的には、前処理は、例えば端末13等から要求を受けた全ての書き込み命令を解析し、書き込みを行うデータベース12のテーブルやレコード、カラム(項目)等を特定する。また、前処理は、例えば命令変換手段25により書き込み命令を変換し、書き込み命令の実行により書き込まれたデータを読み出すための読み出し命令(以下、「確認用読み出し命令」という)や読み出し期待値等を含む整合性確認情報を生成する。また、前処理は、生成した整合性確認情報を書き込み命令と対応付けて命令記憶手段41に記憶する。   Specifically, in the preprocessing, for example, all write commands received from the terminal 13 or the like are analyzed, and the table, record, column (item), etc. of the database 12 to be written are specified. In the pre-processing, for example, a write command is converted by the command conversion means 25, and a read command (hereinafter referred to as “read command for confirmation”) for reading data written by execution of the write command, a read expected value, etc. Consistency check information is generated. In the preprocessing, the generated consistency check information is stored in the instruction storage unit 41 in association with the write instruction.

また、命令解析手段24は、ID毎の状態情報をID状態記憶手段42に記憶する。ここで、状態情報とは、ID毎の処理の実行状態に関する情報であり、例えばあるIDに対して上述した前処理を開始する場合に、そのIDに対応する状態情報が「前処理」となる。また、状態情報は、例えば上述した前処理の後に、ID毎に命令実行手段26によりデータベース12に対する端末13等からの書き込み命令の実行が開始した場合や実行が終了した場合に、対応する状態情報が「開始」、「終了」となることを意味するがこれに限定されるものではない。   Further, the instruction analysis unit 24 stores the state information for each ID in the ID state storage unit 42. Here, the state information is information related to the execution state of the process for each ID. For example, when the above-described preprocessing is started for a certain ID, the state information corresponding to the ID becomes “preprocessing”. . The state information corresponds to, for example, the state information corresponding to the case where the execution of the write command from the terminal 13 or the like to the database 12 is started by the command execution unit 26 for each ID after the pre-processing described above or when the execution is completed. Means “start” and “end”, but is not limited thereto.

命令解析手段24は、「前処理」の状態情報をID状態記憶手段42に記憶する。なお、上述した「開始」、「終了」の状態情報は、命令実行手段26におよりID状態記憶手段42に記憶される。更に、命令解析手段24は、上述した前処理の実行時にエラー等が発生した場合に、「異常終了」の状態情報をID状態記憶手段42に記憶する。   The instruction analysis unit 24 stores the “pre-processing” state information in the ID state storage unit 42. The above-described “start” and “end” state information is stored in the ID state storage unit 42 by the instruction execution unit 26. Further, the instruction analysis unit 24 stores “abnormal end” status information in the ID status storage unit 42 when an error or the like occurs during the execution of the above-described preprocessing.

命令変換手段25は、命令解析手段24により複数の命令の中から書き込み命令が抽出されると、抽出された書き込み命令を変換して、データベース12の書き込み先(例えば、テーブル、レコード、カラム)のデータを読み出すための確認用読み出し命令を生成する。また、命令変換手段25は、書き込み命令から読み出し期待値を生成し、生成した読み出し期待値と上述した確認読み出し命令とを含む整合性確認情報を命令解析手段24に出力する。   When the command analysis unit 24 extracts a write command from a plurality of commands, the command conversion unit 25 converts the extracted write command and stores the write destination (for example, table, record, column) of the database 12. A read command for confirmation for reading data is generated. In addition, the command conversion unit 25 generates an expected read value from the write command, and outputs consistency confirmation information including the generated read expected value and the confirmation read command described above to the command analysis unit 24.

命令実行手段26は、書き込み命令実行手段31における書き込み命令の実行や、読み出し命令実行手段32における読み出し命令の実行等を行う。なお、命令実行手段26は、上述した書き込みや読み出しの実行に限定されるものではなく、例えば割り込み命令や所定の制御コマンド(例えば、データベース12内のデータのソートやマージ)等による各種命令の実行等を行うことができる。また、読み出し命令実行手段32における読み出し命令には、端末13等から得られる通常の読み出し命令も含まれる。   The command execution unit 26 executes a write command in the write command execution unit 31, executes a read command in the read command execution unit 32, and the like. Note that the instruction execution unit 26 is not limited to the above-described execution of writing or reading, and executes various instructions by, for example, an interrupt instruction or a predetermined control command (for example, sorting or merging data in the database 12). Etc. can be performed. The read command in the read command execution means 32 includes a normal read command obtained from the terminal 13 or the like.

ここで、命令実行手段26は、書き込み命令実行手段31において、例えばID状態記憶手段42に「ID」、「日付」、「時刻」、「状態」等を記憶させる。なお、「状態」としては、例えば「開始」、「完了」、「異常終了」等の状態情報を記憶させるが、これに限定されるものではない。   Here, the instruction execution unit 26 causes the write instruction execution unit 31 to store, for example, “ID”, “date”, “time”, “state”, etc. in the ID state storage unit 42. As the “state”, for example, state information such as “start”, “complete”, and “abnormal end” is stored, but is not limited thereto.

例えば、書き込み命令実行手段31は、各IDの先頭の書き込み命令の実行前に状態情報を「開始」としてID状態記憶手段42に記憶させる。また、書き込み命令実行手段31は、命令記憶手段41に記憶された情報のうち、書き込み命令を読み出して、ID毎に処理を実施し、全IDの全ての書き込み命令に対して処理を実行する。書き込み命令実行手段31は、例えば同一ID内の全ての書き込み命令が完了した時点で、状態情報を「完了」としてID状態記憶手段42に記憶させる。また、書き込み命令実行手段31は、例えば書き込みエラー等が発生した場合に、状態情報を「異常終了」とし、ID状態記憶手段42に記憶させ、以降の書き込み命令を中止する。   For example, the write command execution unit 31 stores the state information in the ID state storage unit 42 as “start” before the execution of the write command at the head of each ID. The write command execution means 31 reads the write command from the information stored in the command storage means 41, performs the process for each ID, and executes the process for all the write instructions of all IDs. For example, when all the write commands within the same ID are completed, the write command execution unit 31 stores the state information in the ID state storage unit 42 as “completed”. The write command execution unit 31 sets the status information to “abnormal end” and stores it in the ID status storage unit 42 when, for example, a write error occurs, and stops the subsequent write command.

また、読み出し命令実行手段32は、例えば障害復旧時にデータベース12が正常に起動又は動作しているか否かの状態を確認するため、データベース12の所定の領域に記憶された値を読み出す。ここで、読み出す値は、例えばシステム構築時に、データベース12の所定の領域(例えば、テーブル、レコード、カラム)に削除されることのない所定の値を記憶させておくのが好ましいが、これに限定されるものではない。なお、所定の値としては、例えばデータベース12の識別情報等でもよく、変更したり削除することができないダミーデータ等でもよい。   Further, the read command execution means 32 reads a value stored in a predetermined area of the database 12 in order to confirm whether or not the database 12 is normally activated or operating at the time of failure recovery, for example. Here, as the value to be read, it is preferable to store a predetermined value that is not deleted in a predetermined area (for example, a table, a record, or a column) of the database 12 at the time of system construction, for example. Is not to be done. The predetermined value may be, for example, identification information of the database 12 or dummy data that cannot be changed or deleted.

読み出し命令実行手段32は、読み出した所定の値が予め記憶手段27等に記憶した値と一致する場合には、データベース12の状態が正常と判断する。また、読み出し命令実行手段32は、所定の値が読み出せない場合や読み出した所定の値が予め記憶手段27等に記憶した値と一致しない場合に、データベース12が正常に起動又は動作していないと判断し、エラー処理(例えば、エラーメッセージ出力)等を行う。   The read command execution means 32 determines that the state of the database 12 is normal when the read predetermined value matches the value previously stored in the storage means 27 or the like. Further, when the predetermined value cannot be read or the read predetermined value does not match the value stored in advance in the storage means 27 or the like, the read command execution means 32 does not start or operate normally. And error processing (for example, error message output) is performed.

なお、本実施形態では、上述したデータベース12に対する所定の値を読み出すことで、データベース12の状態を確認したが、これに限定されるものではない。例えば、本実施形態では、上述した所定の値の読み出しを行わず、例えば命令記憶手段41やID状態記憶手段42の読み出しを行い、読み出しができなかった場合に、エラー処理を行ってもよい。   In the present embodiment, the state of the database 12 is confirmed by reading a predetermined value for the database 12 described above, but the present invention is not limited to this. For example, in the present embodiment, the predetermined value described above is not read, but, for example, the instruction storage unit 41 or the ID state storage unit 42 is read, and error processing may be performed when the read is not possible.

また、読み出し命令実行手段32は、上述した所定の値が正しく読み出せた場合に、ID状態記憶手段42により各IDの状態を読み出し、所定の条件を満たすIDを取得する。なお、所定の条件とは、例えば状態情報が「開始」であり、かつ「完了」していない場合等とすることができるが、これに限定されるものではない。また、IDの読み出し順序としては、例えばID状態記憶手段42の日時(「日付」、「時刻」)を参照し、例えば日時が古いものから順番に読み出してもよく、また日時が最新のレコードから予め設定しておいた期間分(例えば、1週間、1ヶ月、1年)遡ったデータを対象に読み出してもよい。また、状態情報が「前処理」であるIDについては、その状態がデータベース12への書き込みを行っていない状態を意味しているため、その旨のメッセージを出力手段22等から出力してもよい。   Further, when the predetermined value described above can be read correctly, the read command execution means 32 reads the state of each ID from the ID state storage means 42 and acquires an ID that satisfies the predetermined condition. The predetermined condition may be, for example, a case where the status information is “start” and not “completed”, but is not limited thereto. Further, as the ID reading order, for example, the date and time (“date”, “time”) of the ID state storage means 42 may be referred to, for example, the date may be read in order from the oldest date, or the record with the latest date and time may be used. Data that has been set back in advance for a predetermined period (for example, one week, one month, one year) may be read. Further, for an ID whose status information is “pre-processing”, this means that the status has not been written to the database 12, so a message to that effect may be output from the output means 22 or the like. .

また、読み出し命令実行手段32は、上述した所定の条件を満たすIDが存在する場合に、そのIDに対応する書き込み命令によりデータベース12に書き込まれたデータとデータベース12への書き込みデータとの整合性を確認する。   Further, when there is an ID that satisfies the above-mentioned predetermined condition, the read command execution means 32 checks the consistency between the data written in the database 12 by the write command corresponding to the ID and the data written to the database 12. Check.

具体的には、読み出し命令実行手段32は、命令記憶手段41から確認用読み出し命令及び読み出し期待値を読み出し、読み出した確認用読み出し命令を実行する。また、読み出し命令実行手段32は、確認用読み出し命令により読み出した値と読み出し期待値とが一致するか否かを判断してデータの整合性を確認する。ここで、読み出し命令実行手段32は、確認用読み出し命令により読み出した値が読み出し期待値と一致しない場合に、データベース12に記憶されたデータが不整合であると判断することができる。   Specifically, the read command execution unit 32 reads the confirmation read command and the read expected value from the command storage unit 41 and executes the read confirmation read command. Further, the read command execution means 32 determines whether or not the value read by the check read command matches the expected read value, and checks the data consistency. Here, the read command execution means 32 can determine that the data stored in the database 12 is inconsistent when the value read by the confirmation read command does not match the expected read value.

そのため、命令実行手段26は、読み出した値と読み出し期待値とが一致しない場合に、書き込み命令実行手段31により、対応する書き込み命令を実行する。なお、本実施形態では、上述した書き込み命令の実行後に、再度確認用読み出し命令を実行し、読み出した値と読み出し期待値とを比較してもよい。   Therefore, the instruction execution unit 26 executes the corresponding write instruction by the write instruction execution unit 31 when the read value does not match the read expected value. In this embodiment, after the execution of the above-described write command, the confirmation read command may be executed again to compare the read value with the read expected value.

なお、命令実行手段26は、読み出し命令実行手段32により読み出した値が読み出し期待値と同じ場合には、整合が取れているものとし、上述した書き込み命令を実行しない。   Note that if the value read by the read command execution unit 32 is the same as the expected read value, the instruction execution unit 26 assumes that the values are consistent and does not execute the write command described above.

また、命令実行手段26は、同一ID内の全ての読み出し命令(対応する書き込み命令が必要であれば書き込み命令も含む)が完了した場合に、状態を「完了」とし、ID状態記憶手段41に記憶させる。また、命令実行手段26は、書き込み命令実行手段31による書き込みエラーが発生した場合や、読み出し命令実行手段32による読み出しエラーが発生した場合に、状態を「異常終了」とし、ID状態記憶手段42に記憶させ、以降の処理等を中止する。   Further, the instruction execution means 26 sets the state to “completed” when all the read instructions within the same ID (including the write instruction if the corresponding write instruction is necessary) are completed, and stores them in the ID state storage means 41. Remember me. Further, the command execution unit 26 sets the status to “abnormal end” when a write error is generated by the write command execution unit 31 or a read error occurs by the read command execution unit 32, and is stored in the ID status storage unit 42. Store it and stop the subsequent processing.

記憶手段27は、本実施形態において必要となる各種情報を記憶する。具体的には、記憶手段27は、命令記憶手段41やID状態記憶手段42に記憶されている各種情報や、実行経過や実行結果、ログ情報等を記憶する。   The storage unit 27 stores various types of information necessary in the present embodiment. Specifically, the storage unit 27 stores various information stored in the instruction storage unit 41 and the ID state storage unit 42, execution progress, execution results, log information, and the like.

また、記憶手段27は、記憶された各種情報を必要に応じて所定のタイミングで読み出したり、書き込んだりすることができる。記憶手段27は、上述したような多種の情報の集合物であり、それらの情報を、例えばキーワード等を用いて検索し、抽出することができるように体系的に構成されているデータベースとしての機能を有していてもよい。なお、記憶手段27は、例えばハードディスクやメモリ等からなる。   The storage unit 27 can read and write various stored information at a predetermined timing as necessary. The storage means 27 is a collection of various types of information as described above, and functions as a database that is systematically configured so that such information can be searched and extracted using, for example, keywords. You may have. The storage means 27 is composed of, for example, a hard disk or a memory.

送受信手段28は、例えば通信ネットワーク14を介して端末13やデータベース12等の外部装置とデータの送受信を行うための通信手段である。送受信手段28は、外部装置等にすでに記憶されている各種情報等を受信することができ、またアクセス管理装置11で処理された結果を、通信ネットワーク14を介して外部装置等に送信することもできる。   The transmission / reception unit 28 is a communication unit for transmitting / receiving data to / from an external device such as the terminal 13 or the database 12 via the communication network 14. The transmission / reception means 28 can receive various information already stored in the external device or the like, and can transmit the result processed by the access management device 11 to the external device or the like via the communication network 14. it can.

制御手段29は、アクセス管理装置11の各構成部全体の制御を行う。具体的には、制御手段29は、例えば端末13を利用するユーザ等からの指示や、管理者等による入力手段21からの指示等に基づいて、データベース12等へのアクセス管理に関する各制御を行う。ここで、各制御とは、例えば上述したID管理手段23における命令群毎のID管理や、命令解析手段24における命令解析、命令変換手段25における命令変換等がある。また、各制御とは、命令実行手段26における各種命令の実行や記憶手段27における各種情報の記憶等があるが、これに限定されるものではない。これらの制御は、プログラムの実行や管理者等の指示による所定のイベントやコマンド等の実行に基づいて行われてもよいが、これに限定されるものではない。   The control unit 29 controls the entire components of the access management apparatus 11. Specifically, the control unit 29 performs each control related to access management to the database 12 or the like based on, for example, an instruction from a user using the terminal 13 or an instruction from the input unit 21 by an administrator or the like. . Here, each control includes, for example, ID management for each instruction group in the ID management means 23, instruction analysis in the instruction analysis means 24, instruction conversion in the instruction conversion means 25, and the like. Each control includes execution of various instructions in the instruction execution means 26 and storage of various information in the storage means 27, but is not limited thereto. These controls may be performed based on execution of a program, execution of a predetermined event, command, or the like according to an instruction from an administrator or the like, but is not limited thereto.

<アクセス管理装置11のハードウェア構成例>
ここで、上述したアクセス管理装置11においては、各機能をコンピュータに実行させることができる実行プログラム(管理プログラム)を生成し、例えば汎用のPCやサーバ等にその実行プログラムをインストールすることにより、本実施形態におけるデータベース12に対するアクセス管理処理を実現することができる。ここで、本実施形態におけるアクセス管理処理が実現可能なコンピュータのハードウェア構成例について図を用いて説明する。
<Hardware Configuration Example of Access Management Device 11>
Here, in the access management apparatus 11 described above, an execution program (management program) capable of causing a computer to execute each function is generated, and the execution program is installed in, for example, a general-purpose PC or server. The access management process for the database 12 in the embodiment can be realized. Here, a hardware configuration example of a computer capable of realizing the access management process in the present embodiment will be described with reference to the drawings.

図3は、アクセス管理処理が実現可能なハードウェア構成の一例を示す図である。図3におけるコンピュータ本体には、入力装置51と、出力装置52と、ドライブ装置53と、補助記憶装置54と、主記憶装置55と、Central Processing Unit(CPU)56と、ネットワーク接続装置57とを有するよう構成されており、これらはシステムバスBで相互に接続されている。   FIG. 3 is a diagram illustrating an example of a hardware configuration capable of realizing the access management process. 3 includes an input device 51, an output device 52, a drive device 53, an auxiliary storage device 54, a main storage device 55, a central processing unit (CPU) 56, and a network connection device 57. These are connected to each other via a system bus B.

入力装置51は、例えばアクセス管理装置11の管理者等が操作するキーボード及びマウス等のポインティングデバイスや、マイクロフォン等の音声入力デバイスを有している。入力装置51は、管理者等からのプログラムの実行指示、各種操作情報、ソフトウェアを起動するための情報等を入力する。   The input device 51 includes a pointing device such as a keyboard and a mouse operated by an administrator of the access management device 11 and a voice input device such as a microphone. The input device 51 inputs a program execution instruction from the administrator or the like, various operation information, information for starting up software, and the like.

出力装置52は、本実施形態における処理を行うためのコンピュータ本体を操作するのに必要な各種ウィンドウやデータ等を表示するディスプレイを有し、CPU56が有する制御プログラムによりプログラムの実行経過や結果等を表示することができる。また、出力装置52は、上述の処理結果等を紙等の印刷媒体に印刷して、管理者等に提示することができる。   The output device 52 has a display for displaying various windows and data necessary for operating the computer main body for performing the processing in the present embodiment. Can be displayed. In addition, the output device 52 can print the above processing result or the like on a print medium such as paper and present it to an administrator or the like.

ここで、本実施形態においてコンピュータ本体にインストールされる実行プログラムは、例えば、Universal Serial Bus(USB)メモリやCD−ROM、DVD等の可搬型の記録媒体58等により提供される。プログラムを記録した記録媒体58は、ドライブ装置53にセット可能であり、CPU56からの制御信号に基づき、記録媒体58に含まれる実行プログラムが、記録媒体58からドライブ装置53を介して補助記憶装置54にインストールされる。   Here, the execution program installed in the computer main body in this embodiment is provided by, for example, a universal recording bus 58 such as a Universal Serial Bus (USB) memory, a CD-ROM, or a DVD. The recording medium 58 on which the program is recorded can be set in the drive device 53, and an execution program included in the recording medium 58 is transmitted from the recording medium 58 via the drive device 53 on the basis of a control signal from the CPU 56. To be installed.

補助記憶装置54は、CPU56からの制御信号に基づき、本実施形態における実行プログラムやコンピュータに設けられた制御プログラム、実行経過や実行結果等を記憶する。また、補助記憶装置54は、CPU56からの制御信号等に基づいて、記憶された各情報から必要な情報を読み出したり、書き込むことができる。   The auxiliary storage device 54 stores an execution program in this embodiment, a control program provided in the computer, an execution process, an execution result, and the like based on a control signal from the CPU 56. The auxiliary storage device 54 can read and write necessary information from each stored information based on a control signal from the CPU 56 and the like.

なお、補助記憶装置54は、例えばHard Disk Drive(HDD)やSolid State Drave(SSD)等からなり、例えば上述した記憶手段27に対応している。   The auxiliary storage device 54 includes, for example, a hard disk drive (HDD), a solid state drive (SSD), and the like, and corresponds to the storage unit 27 described above, for example.

主記憶装置55は、CPU56により補助記憶装置54から読み出された実行プログラム等を格納する。なお、主記憶装置55は、Read Only Memory(ROM)やRandom Access Memory(RAM)等からなる。   The main storage device 55 stores an execution program or the like read from the auxiliary storage device 54 by the CPU 56. The main storage device 55 is composed of a read only memory (ROM), a random access memory (RAM), and the like.

CPU56は、オペレーティングシステム等の制御プログラム、及び主記憶装置55に格納されている実行プログラムに基づいて、各種演算や各ハードウェア構成部とのデータの入出力等、コンピュータ全体の処理を制御して各処理を実現することができる。なお、プログラムの実行中に必要な各種情報等は、補助記憶装置54から取得することができ、また実行結果等を格納することもできる。   The CPU 56 controls processing of the entire computer such as various operations and data input / output with each hardware component based on a control program such as an operating system and an execution program stored in the main storage device 55. Each process can be realized. Various information necessary during the execution of the program can be acquired from the auxiliary storage device 54, and the execution result and the like can also be stored.

具体的には、CPU56は、例えば入力装置51から得られるプログラムの実行指示等に基づき、補助記憶装置54にインストールされた管理プログラムを実行させることにより、主記憶装置55上でプログラムに対応する処理を行う。   Specifically, the CPU 56 executes a management program installed in the auxiliary storage device 54 on the basis of, for example, a program execution instruction obtained from the input device 51, thereby executing processing corresponding to the program on the main storage device 55. I do.

例えば、CPU56は、管理プログラムを実行させることで、ID管理手段23による各命令群のID管理や命令解析手段24による命令解析、命令変換手段25による命令変換、命令実行手段26による各種命令の実行等の実行制御を行う。また、CPU56は、記憶手段27における各種情報の書き込みや読み出し等の実行制御を行う。なお、CPU56における処理内容は、上述した内容に限定されるものではない。CPU56により実行された内容(実行経過や実行結果)等は、必要に応じて補助記憶装置54に記憶させることができる。   For example, by executing the management program, the CPU 56 executes ID management of each instruction group by the ID management means 23, instruction analysis by the instruction analysis means 24, instruction conversion by the instruction conversion means 25, and execution of various instructions by the instruction execution means 26. Perform execution control. Further, the CPU 56 performs execution control such as writing and reading of various information in the storage unit 27. In addition, the processing content in CPU56 is not limited to the content mentioned above. The contents (execution progress and execution results) executed by the CPU 56 can be stored in the auxiliary storage device 54 as necessary.

ネットワーク接続装置57は、CPU56からの制御信号に基づき、通信ネットワーク14等と接続することにより、実行プログラムやソフトウェア、各種命令等を、通信ネットワーク14に接続されている外部装置等から取得する。また、ネットワーク接続装置57は、プログラムを実行することで得られた実行結果又は本実施形態における実行プログラム自体を外部装置等に提供することができる。   The network connection device 57 acquires an execution program, software, various instructions, and the like from an external device or the like connected to the communication network 14 by connecting to the communication network 14 or the like based on a control signal from the CPU 56. Further, the network connection device 57 can provide an execution result obtained by executing the program or the execution program itself in the present embodiment to an external device or the like.

上述したようなハードウェア構成により、本実施形態におけるデータベースに対するアクセス管理処理を実行することができる。また、プログラムをインストールすることにより、汎用のPC等で本実施形態におけるアクセス管理処理を容易に実現することができる。   With the hardware configuration described above, it is possible to execute the access management process for the database in the present embodiment. Further, by installing the program, the access management process in the present embodiment can be easily realized on a general-purpose PC or the like.

<データ例>
次に、本実施形態における各種データ例について図を用いて説明する。図4は、命令記憶手段に記憶されるデータ例を示す図である。
<Data example>
Next, various data examples in the present embodiment will be described with reference to the drawings. FIG. 4 is a diagram showing an example of data stored in the instruction storage means.

図4に示す命令記憶手段41により記憶されるデータの項目としては、例えば「ID」、「書き込み命令」、「確認用読み出し命令」、及び「読み出し期待値」等を含むがこれに限定されるものではない。なお、命令記憶手段41に記憶されるデータは、実際の処理(命令)が行われる前処理として生成し、記憶される情報である。   The items of data stored by the command storage means 41 shown in FIG. 4 include, for example, “ID”, “write command”, “read command for confirmation”, “read expected value”, and the like, but are not limited thereto. It is not a thing. Note that the data stored in the instruction storage unit 41 is information generated and stored as a pre-process in which an actual process (command) is performed.

図4に示すデータ例は、例えばデータベース12に対する書き込み命令(例えば、WRITEコマンド)又は確認用読み出し命令(例えば、READコマンド)に対する命令であり、その他の命令については、記憶されていないが、これに限定されるものではなく、所定の処理を行うための全ての動作が記憶されていてもよい。   The data example shown in FIG. 4 is, for example, a command for a write command (for example, a WRITE command) for the database 12 or a read command for confirmation (for example, a READ command), and other commands are not stored. The present invention is not limited, and all operations for performing a predetermined process may be stored.

「ID」は、所定の処理を行うための1又は複数の命令群を識別するために設定される値である。本実施形態では、所定の処理に対応する1又は複数の書き込み命令群に同一IDのレコードが記憶される。なお、所定の処理とは、例えば、ある端末13により実行される1つのトランザクション処理等を示すが、これに限定されるものではない。トランザクション処理とは、分けることのできない一連の情報処理の単位等を示す。つまり、本実施形態では、ID管理手段23によって、例えば1つのトランザクション処理等によってデータベース12の1又は複数の位置にデータを書き込むような命令群に対して同一IDが設定される。なお、IDの設定方法については、これに限定されるものではない。   “ID” is a value set to identify one or a plurality of instruction groups for performing a predetermined process. In this embodiment, records with the same ID are stored in one or a plurality of write command groups corresponding to a predetermined process. The predetermined process indicates, for example, one transaction process executed by a certain terminal 13, but is not limited thereto. Transaction processing refers to a series of information processing units that cannot be separated. In other words, in this embodiment, the ID management unit 23 sets the same ID for a group of instructions that writes data to one or more positions in the database 12 by, for example, one transaction process. Note that the ID setting method is not limited to this.

「書き込み命令」は、実際の命令として、例えばデータベース12内のどのテーブルのどのレコードのどのカラム(項目)に、どんな値を書き込むかの命令(WRITE命令)の値を書き込む。なお、この命令は、例えば端末13等から要求された実際の処理に対する書き込み命令である。   The “write command” writes the value of a command (WRITE command) as to what value is written in which column (item) of which record of which table in the database 12 as an actual command. This command is a write command for actual processing requested from the terminal 13 or the like, for example.

また、「確認用読み出し命令」は、書き込み命令の実行によりデータベース12に書き込まれたデータを読み出すための命令が記憶される。具体的には、「確認用読み出し命令」は、書き込み命令を変換して確認用読み出し命令を生成する。   The “read command for confirmation” stores a command for reading data written in the database 12 by executing the write command. More specifically, the “read command for confirmation” converts the write command to generate a read command for confirmation.

また、「読み出し期待値」は、「確認用読み出し命令」に記憶された内容で命令(READ命令)が実行された場合に、正常であればどのような値が読み出されるかの期待値が設定される。具体的には、「読み出し期待値」には、書き込み命令における書き込み値が読み出し期待値として設定される。なお、上述した「確認用読み出し命令」及び「読み出し期待値」は、整合性確認情報の一例である。   In addition, the “read expected value” is set to an expected value of what value is read if the instruction (READ instruction) is executed with the contents stored in the “read instruction for confirmation” if it is normal. Is done. Specifically, the “read expected value” is set as the read expected value by the write value in the write command. The “confirmation read command” and the “read expected value” described above are examples of the consistency confirmation information.

例えば、図4の例において、「ID」が"1000"の先頭レコードの「書き込み命令」は、"テーブルXのカラムC1=100のレコードのカラムC2に1000を書き込む"である。この場合、本実施形態では、命令変換手段25により、上述した書き込み命令を変換して「確認用読み出し命令」を生成する。具体的にはとして、"テーブルXからカラムC1=100のレコードのカラムC2の値を読み出す"という命令が記憶される。また、読み出し期待値としては、書き込み命令の内容に対応させて"C2=1000"という結果が記憶される。   For example, in the example of FIG. 4, the “write command” of the first record whose “ID” is “1000” is “write 1000 to column C2 of the record of column C1 = 100 of table X”. In this case, in this embodiment, the command conversion means 25 converts the write command described above to generate a “read command for confirmation”. Specifically, an instruction “read the value of column C2 of the record of column C1 = 100 from table X” is stored. As the expected read value, a result of “C2 = 1000” is stored in association with the content of the write command.

なお、本実施形態では、1つの書き込み命令により複数のカラム等に対して書き込むことができる。例えば、図4の例において、「ID」が"1001"の先頭レコードの「書き込み命令」は、"テーブルAのカラムC1=100のレコードのカラムC2に'A'を書き込み、カラムC3に1100を書き込む"である。この場合、「確認用読み出し命令」は、"テーブルAからカラムC1=100のレコードのカラムC2,C3の値を読み出す"となり、「読み出し期待値」は、"C2='A',C3=1100"となる。   In the present embodiment, it is possible to write to a plurality of columns or the like by one write command. For example, in the example of FIG. 4, the “write command” of the first record whose “ID” is “1001” writes “A” to column C2 of the record of column C1 = 100 of table A and 1100 to column C3. "Write". In this case, the “read command for confirmation” is “reads the values of the columns C2 and C3 of the record of the column C1 = 100 from the table A”, and the “read expected value” is “C2 = 'A', C3 = 1100. "Become.

図5は、ID状態記憶手段に記憶されるデータ例を示す図である。図5に示すID状態記憶手段42により記憶されるデータの項目としては、例えば「ID」、「日付」、「時刻」、及び「状態」を含むが、これに限定されるものではない。例えば、ID状態記憶手段42は、「日付」と「時刻」とを同一の項目「日時」として記憶してもよい。   FIG. 5 is a diagram illustrating an example of data stored in the ID state storage unit. The items of data stored by the ID state storage unit 42 illustrated in FIG. 5 include, for example, “ID”, “date”, “time”, and “state”, but are not limited thereto. For example, the ID state storage unit 42 may store “date” and “time” as the same item “date and time”.

ID状態記憶手段42は、ID毎の状態と、その状態情報を記憶するときの日付、時刻を記憶する。状態の種類としては、「前処理」、「開始」、「完了」、「異常終了」等があるが、これに限定されるものではない。   The ID state storage means 42 stores a state for each ID and a date and time when the state information is stored. The state types include “pre-processing”, “start”, “complete”, “abnormal end”, and the like, but are not limited thereto.

「前処理」とは、例えば受信した全ての書き込み命令を実際に実行する前に、上述した命令記憶手段41により記憶されるデータを生成する処理をいうが、これに限定されるものではない。また、「前処理」の状態情報は、前処理の開始時にID、日付、時刻と共に記憶される。   “Pre-processing” means, for example, processing for generating data stored in the above-described instruction storage means 41 before actually executing all received write instructions, but is not limited thereto. Further, the status information of “preprocessing” is stored together with the ID, date, and time at the start of the preprocessing.

また、「開始」とは、例えば「前処理」の終了後、実際に書き込み命令に対応するデータ書き込みの開始を意味し、「開始」の状態情報は、ID毎の書き込み命令の開始時にID、日付、時刻と共に記憶される。   “Start” means, for example, the start of data writing actually corresponding to the write command after the end of “preprocessing”, and the “start” status information includes the ID at the start of the write command for each ID, Stored with date and time.

また、「終了」とは、例えば実際にデータ書き込みが実行され、その実行が正常に終了したことを意味し、「終了」の状態情報は、ID毎の書き込み命令の正常終了時にID、日付、時刻と共に記憶される。   “End” means, for example, that data writing has actually been executed, and that execution has ended normally, and the “end” status information includes the ID, date, Stored with time.

また、「異常終了」とは、例えば前処理に対するエラーや、書き込み命令の実行時に書き込みエラー等が発生したことを意味し、「異常終了」の状態情報は、ID毎にエラー発生時にID、日付、時刻と共に記憶される。異常終了になった場合には、画面等の出力手段22によりその旨のメッセージ(エラーメッセージ等)を出力してもよい。   “Abnormal termination” means, for example, that an error has occurred with respect to preprocessing or a write error has occurred during execution of a write command, and the status information of “abnormal termination” includes the ID, date, and date when an error occurs for each ID. , Stored with time. In the case of abnormal termination, a message to that effect (such as an error message) may be output by the output means 22 such as a screen.

ID状態記憶手段42に記憶されるデータ例では、1又は複数の命令からなる同一IDに対しての前処理、開始、完了等が管理される。そのため、「完了」のレコードが記憶される場合は、同一ID全ての書き込み命令の実行が正常に終了した場合となる。   In the data example stored in the ID state storage means 42, preprocessing, start, completion, etc. for the same ID composed of one or a plurality of instructions are managed. Therefore, the record of “complete” is stored when the execution of the write command for all the same IDs is normally completed.

ここで、図6は、データベースの記憶内容の具体例を説明するための図である。図6の例では、データベース12内に存在するテーブルXとして、カラム(項目)C1,C2,C3,C4,・・・が設けられている。また、カラムC1は、図6に示すテーブルXの各レコードを識別する識別情報が設定されているものとする。   Here, FIG. 6 is a diagram for explaining a specific example of the stored contents of the database. In the example of FIG. 6, columns (items) C1, C2, C3, C4,... Are provided as the table X existing in the database 12. Further, it is assumed that identification information for identifying each record of the table X shown in FIG. 6 is set in the column C1.

ここで、例えば上述した図4に示す命令記憶手段41におけるデータ例において、ID=1000の先頭レコードの書き込み命令では、"テーブルXのカラムC1=100のレコードのカラムC2に1000を書き込む"と指定されている。図6の例では、上述の書き込み命令が実行されると、テーブルXのC1=100のレコードのカラムC2に1000が書き込まれることになる。なお、本実施形態では、例えば1つの書き込み命令により、複数のカラムに値を書き込むこともできる。   Here, for example, in the data example in the instruction storage means 41 shown in FIG. 4 described above, in the command for writing the first record with ID = 1000, “1000 is written in column C2 of the record in column C1 of table X = 100” is designated. Has been. In the example of FIG. 6, when the above write command is executed, 1000 is written to the column C2 of the record of C1 = 100 of the table X. In this embodiment, for example, values can be written to a plurality of columns by one write command.

<データベースに対するアクセス管理処理>
次に、本実施形態におけるデータベースに対するアクセス管理処理の具体例についてフローチャートを用いて説明する。なお、以下の処理では、本実施形態におけるアクセス管理処理の一例を説明するため、通常時のデータ書き込み処理と、データ書き込み時にシステム障害等が発生した場合の障害復旧処理とに分けて説明する。
<Access management process for database>
Next, a specific example of the access management process for the database according to the present embodiment will be described with reference to a flowchart. In the following processing, in order to describe an example of the access management processing in the present embodiment, the description will be divided into normal data writing processing and failure recovery processing when a system failure or the like occurs during data writing.

<通常時のデータ書き込み処理>
図7は、データ書き込み処理の一例を示すフローチャートである。また、図8は、通常時のデータ書き込み処理の概要を説明するための図である。なお、図8の例では、図7に示す通常時のデータ書き込み処理において使用されるアクセス管理装置11の各構成を概略的に示している。
<Normal data writing process>
FIG. 7 is a flowchart illustrating an example of the data writing process. FIG. 8 is a diagram for explaining the outline of the normal data writing process. In the example of FIG. 8, each configuration of the access management apparatus 11 used in the normal data writing process shown in FIG. 7 is schematically shown.

図7の例において、データ書き込み処理は、各端末13−1〜13−n等からデータベース12への1又は複数の書き込み命令群を受信する(S01)。なお、各端末13−1〜13−nからデータベース12に対しては、書き込み命令以外の命令(例えば、読み出し命令等)も送信される。したがって、S01の処理では、各端末13−1〜13−nから得られる複数の命令のうち、書き込み命令群を抽出する処理も含まれる。   In the example of FIG. 7, the data write process receives one or a plurality of write command groups to the database 12 from each terminal 13-1 to 13-n or the like (S01). In addition, instructions other than the write instruction (for example, a read instruction or the like) are also transmitted from each terminal 13-1 to 13-n to the database 12. Therefore, the process of S01 includes a process of extracting a write instruction group from a plurality of instructions obtained from the terminals 13-1 to 13-n.

次に、データ書き込み処理は、図8に示すように命令解析手段24によりID管理手段23から書き込み命令群に対するIDを取得し、取得したIDを対応する書き込み命令に設定する(S02)。なお、IDは、例えば端末13が個々に実行するトランザクション処理単位で発生する1又は複数の書き込み命令群に対して同一のIDが設定されるが、これに限定されるものではない。   Next, in the data writing process, as shown in FIG. 8, the command analysis unit 24 acquires the ID for the write command group from the ID management unit 23, and sets the acquired ID to the corresponding write command (S02). For example, the same ID is set for one or a plurality of write command groups generated in units of transaction processing executed individually by the terminal 13, but the ID is not limited to this.

次に、データ書き込み処理は、設定された全ID数分、以下に示すS04〜S11の処理を繰り返し行う(S03)。   Next, in the data writing process, the processes of S04 to S11 shown below are repeated for the set number of all IDs (S03).

データ書き込み処理は、命令解析手段24によりID状態記憶手段42にID、日付、時刻、状態を記憶する(S04)。このとき、ID状態記憶手段42における「状態」には、状態情報(ID状態)として"前処理"が記憶される。   In the data writing process, the instruction analysis unit 24 stores the ID, date, time, and state in the ID state storage unit 42 (S04). At this time, “pre-processing” is stored in the “state” in the ID state storage unit 42 as state information (ID state).

次に、データ書き込み処理は、命令解析手段24により書き込み命令を解析し、命令変換手段25により書き込み命令を変換し、整合性確認情報に含まれる情報として、上述した確認用読み出し命令、読み出し期待値を生成する(S05)。また、データ書き込み処理は、上述したID、書き込み命令、確認用読み出し命令、読み出し期待値を、命令記憶手段41に記憶する(S06)。なお、S05及びS06の処理は、上述した前処理に対応する。   Next, in the data writing process, the command analysis unit 24 analyzes the write command, the command conversion unit 25 converts the write command, and the information included in the consistency check information includes the above-described check read command, read expected value. Is generated (S05). In the data writing process, the ID, the write command, the confirmation read command, and the read expected value are stored in the command storage unit 41 (S06). Note that the processes in S05 and S06 correspond to the pre-processing described above.

次に、データ書き込み処理は、図8に示すように書き込み命令実行手段31によりID状態記憶手段42にID、日付、時刻、状態を記憶する(S07)。このとき、ID状態記憶手段42における「状態」には、状態情報(ID状態)として"開始"が記憶される。データ書き込み処理は、これ以降、同一IDの書き込み命令数分、以下に示すS09,S10の処理を繰り返し行う(S08)。   Next, in the data writing process, the ID, date, time, and state are stored in the ID state storage unit 42 by the write command execution unit 31 as shown in FIG. 8 (S07). At this time, “start” is stored in the “state” in the ID state storage unit 42 as state information (ID state). In the data writing process, the following processes of S09 and S10 are repeated for the number of write instructions with the same ID (S08).

データ書き込み処理は、図8に示すように書き込み命令実行手段31により命令記憶手段41から書き込み命令を読み出す(S09)。また、データ書き込み処理は、書き込み命令実行手段31によりS09の処理により読み出した書き込み命令を実行する(S10)。   In the data writing process, as shown in FIG. 8, the write command execution unit 31 reads the write command from the command storage unit 41 (S09). In the data write process, the write command read out by the write command execution means 31 in the process of S09 is executed (S10).

また、データ書き込み処理は、書き込み命令実行手段31により同一IDの書き込み命令数分の書き込みが終わった後、ID状態記憶手段42にID、日付、時刻、状態を記憶する(S11)。このとき、ID状態記憶手段42における「状態」には、"完了"が記憶される。   Further, in the data writing process, after the writing command execution means 31 finishes writing the same number of write instructions as the same ID, the ID state storage means 42 stores the ID, date, time, and state (S11). At this time, “complete” is stored in the “state” in the ID state storage means 42.

なお、例えばデータベース12のハードウェア故障によるエラーや通信上のエラー等により、書き込み命令が正常に完了しなかった場合には、所定回数又は所定時間内でリトライ処理を行ってもよい。また、所定回数又は所定時間内でのリトライ処理でも書き込み命令が正常に完了しなかった場合には、ID状態記憶手段42の「状態」には状態情報(ID状態)として"異常終了"の状態情報が記憶されてもよい。   Note that, for example, when the write command is not normally completed due to an error due to a hardware failure of the database 12 or a communication error, the retry process may be performed a predetermined number of times or within a predetermined time. Further, when the write command is not normally completed even in the retry process within a predetermined number of times or within a predetermined time, the “state” of the ID state storage means 42 is in the “abnormal end” state as the state information (ID state). Information may be stored.

また、図7の例に示すデータ書き込み処理では、"前処理"から"完了"までがID毎に順番に行われる例を示しているが、これに限定されるものではない。例えば、本実施形態では、あるIDにおける処理の状態がまだ"完了"していなくても、他のIDにおける"前処理"から"完了"までの処理を並行して処理させることができる。   In the data writing process shown in the example of FIG. 7, an example in which “preprocessing” to “completion” are sequentially performed for each ID is shown, but the present invention is not limited to this. For example, in this embodiment, even if the state of processing for a certain ID has not yet been “completed”, the processing from “preprocessing” to “completed” for other IDs can be performed in parallel.

<障害復旧処理>
次に、障害復旧処理の一例についてフローチャートを用いて説明する。図9は、障害復旧処理の一例を示すフローチャートである。また、図10は、障害復旧処理の概要を説明するための図である。なお、図10の例では、図9に示す障害復旧処理において使用されるアクセス管理装置11の各構成を概略的に示している。
<Disaster recovery processing>
Next, an example of failure recovery processing will be described using a flowchart. FIG. 9 is a flowchart illustrating an example of the failure recovery process. FIG. 10 is a diagram for explaining an outline of the failure recovery processing. In addition, in the example of FIG. 10, each structure of the access management apparatus 11 used in the failure recovery process shown in FIG. 9 is shown schematically.

図9の例において、障害復旧処理は、障害復旧時に図10に示すように読み出し命令実行手段32によりデータベース状態を読み出す(S21)。具体的には、S21の処理では、例えばデータベース12に予め記憶され、変更されない所定のデータを読み出す。つまり、S21の処理では、例えばデータベース12のハードウェアの故障によるエラーや、通信上のエラー等が発生していないか否かを確認するためにデータベース12にアクセスしてデータの読み出しを行う。   In the example of FIG. 9, in the failure recovery process, the database state is read by the read command execution means 32 as shown in FIG. 10 at the time of failure recovery (S21). Specifically, in the process of S21, for example, predetermined data that is stored in advance in the database 12 and is not changed is read. That is, in the processing of S21, for example, in order to check whether an error due to a hardware failure of the database 12, a communication error, or the like has occurred, the database 12 is accessed and data is read.

ここで、障害復旧処理は、S21の処理における読み出しが正常に行えたか否か(読み出し=OK?)を判断する(S22)。なお、S22の処理では、S21の処理により読み出したデータと、予め記憶手段27等に記憶されたデータとを比較し、データが一致した場合には、正常に読み出せた(読み出し=OK)と判断する。また、データが一致していない場合には、正常に読み出せていない(読み出し=NG)と判断することができるが、判断手法については、これに限定されるものではない。   Here, in the failure recovery process, it is determined whether or not the reading in the process of S21 has been normally performed (reading = OK?) (S22). In the process of S22, the data read out in the process of S21 is compared with the data stored in advance in the storage means 27, and if the data match, the data can be read normally (reading = OK). to decide. If the data do not match, it can be determined that the data has not been read normally (reading = NG), but the determination method is not limited to this.

障害復旧処理は、読み出しが正常に行えた場合(読み出し=OK)(S22において、YES)、図10に示すように読み出し命令実行手段32によりID状態記憶手段42からID毎の状態を読み出す(S23)。なお、S23の処理では、例えばID状態記憶手段42に記憶されているデータの先頭から全ての状態情報を読み出すことで、全てのIDに対する処理状態を確認することができる。   In the failure recovery process, when the reading is normally performed (reading = OK) (YES in S22), the state for each ID is read from the ID state storage unit 42 by the read command execution unit 32 as shown in FIG. 10 (S23). ). In the process of S23, for example, by reading all the status information from the head of the data stored in the ID status storage means 42, the processing status for all IDs can be confirmed.

また、S23の処理では、ID状態記憶手段42に記憶されている最新のデータから所定数分(例えば、過去1週間や1ヶ月分)の状態情報を読み出してもよい。障害発生時に処理が途中で中断してしまう可能性が高いのは、障害が発生する直前に書き込み命令を実行していた処理であるため、最近のデータから状態情報を読み出すことで、復旧処理が必要な処理を迅速に見つけることができる。   In the process of S23, state information for a predetermined number (for example, for the past one week or one month) may be read from the latest data stored in the ID state storage unit 42. It is highly probable that processing will be interrupted when a failure occurs, because the write command was executed immediately before the failure occurred, so recovery processing can be performed by reading status information from recent data. The necessary processing can be found quickly.

次に、障害復旧処理は、ID状態記憶手段42から読み出したID数分について、以下に示すS25〜S35の処理を繰り返し行う(S24)。障害復旧処理は、ID状態記憶手段42から読み出したIDの状態が"開始"であるか否かを判断する(状態="開始"?)(S25)。なお、S25の処理では、具体的には、ID状態記憶手段42から読み出したIDの状態が"開始"のレコードが存在し、かつ"開始"のレコードに対応する"完了"のレコードがない場合を意味する。例えば、上述した図5の例では、ID"1001"が、"開始"があって"完了"がない状態となる。"開始"及び"完了"のレコードが存在するIDについては、障害発生前に通常の書き込み処理が正常に終了しているものとし、障害復旧処理の対象から除外する。   Next, the failure recovery process repeats the following processes of S25 to S35 for the number of IDs read from the ID state storage means 42 (S24). In the failure recovery process, it is determined whether or not the state of the ID read from the ID state storage means 42 is “start” (state = “start”?) (S25). In the process of S25, specifically, when there is a record whose ID state read from the ID state storage means 42 is “start” and there is no “complete” record corresponding to the record of “start”. Means. For example, in the example of FIG. 5 described above, the ID “1001” is in a state where “start” is present and “completion” is not present. For IDs having “start” and “complete” records, the normal write processing is normally completed before the failure occurs, and is excluded from the target of the failure recovery processing.

障害復旧処理は、読み出したレコードの状態が"開始"である場合(S25において、YES)、読み出し命令実行手段32により命令記憶手段41からそのIDに対応する1又は複数の確認用読み出し命令及び読み出し期待値を読み出す(S26)。また、障害復旧処理は、確認用読み出し命令数分、以下に示すS28〜S33の処理を繰り返し行う(S27)。   In the failure recovery process, when the state of the read record is “start” (YES in S25), the read command execution means 32 reads and reads one or more confirmation read instructions corresponding to the ID from the instruction storage means 41. The expected value is read (S26). In the failure recovery process, the following processes of S28 to S33 are repeated for the number of confirmation read instructions (S27).

障害復旧処理は、読み出し命令実行手段32により読み出した確認用読み出し命令を実行し(S28)、読み出しデータが、読み出し期待値に記憶されている値と一致していないか否か(読み出しデータ≠読み出し期待値か?)を判断する(S29)。障害復旧処理は、読み出しデータが読み出し期待値と一致しない場合(S29において、YES)、読み出し命令実行手段32から書き込み命令実行手段31に指示を送る。書き込み命令実行手段31は、命令記憶手段41から対応するIDの書き出し命令を読み出す(S30)。
また、障害復旧処理は、書き出し命令実行手段31によりS30の処理で読み出した書き出し命令を実行する(S31)。なお、本実施形態では、S31の処理における書き込み命令の実行後に、再度確認用読み出し命令を実行し、読み出した値と読み出し期待値とを比較してもよい。これにより、データの整合性をより適切に確認することができる。
In the failure recovery processing, the confirmation read command read by the read command execution means 32 is executed (S28), and whether or not the read data matches the value stored in the read expected value (read data ≠ read) Is it an expected value?) (S29). In the failure recovery processing, when the read data does not match the expected read value (YES in S29), an instruction is sent from the read command execution means 32 to the write command execution means 31. The write command execution unit 31 reads the corresponding ID write command from the command storage unit 41 (S30).
In the failure recovery process, the write instruction executed by the write instruction execution means 31 is executed in S30 (S31). In this embodiment, after the execution of the write command in S31, the confirmation read command may be executed again to compare the read value with the read expected value. Thereby, the consistency of data can be confirmed more appropriately.

また、障害復旧処理は、同一ID内の最後の書き込み命令か否かを判断する(S32)。障害復旧処理は、最後の書き込み命令である場合(S32において、YES)、図10に示すように読み出し命令実行手段32によりID状態記憶手段42に対し、書き込み処理を行ったID、日付、時刻、状態を記憶する(S33)。このとき、ID状態記憶手段42の「状態」には、状態情報(ID状態)として例えば"完了"が記憶されるが、これに限定されるものではなく、例えば"復旧完了"等の情報が記憶されてもよい。これにより、本実施形態では、ID状態記憶手段42を参照して、復旧が完了したか否かを容易に把握することができる。   In the failure recovery process, it is determined whether or not it is the last write command in the same ID (S32). If the failure recovery process is the last write command (YES in S32), the ID, date, time, and the like when the write process is performed on the ID state storage unit 42 by the read command execution unit 32 as shown in FIG. The state is stored (S33). At this time, in the “state” of the ID state storage means 42, for example, “complete” is stored as the state information (ID state). However, the present invention is not limited to this, and information such as “recovery complete” is stored. It may be stored. Thereby, in this embodiment, it can be grasped | ascertained easily whether the recovery was completed with reference to the ID state memory | storage means 42. FIG.

また、障害復旧処理は、上述したS25の処理において、読み出したレコードの状態が"開始"でない場合(S25において、NO)、その状態が"前処理"であるか否かを判断する(S34)。なお、S34の処理において、状態が"前処理"であるとは、例えば"前処理"の状態情報を示すレコードがあり、かつ、そのIDに対する"開始"や"完了"の状態情報を示すレコードが存在しないことを意味する。   Further, in the failure recovery process, when the state of the read record is not “start” in the process of S25 described above (NO in S25), it is determined whether or not the state is “preprocess” (S34). . In the process of S34, the status is “pre-process”, for example, there is a record indicating the status information of “pre-process”, and a record indicating the status information of “start” or “complete” for the ID. Means that does not exist.

障害復旧処理は、状態が"前処理"である場合(S34において、YES)、そのIDに対する書き込み処理が開始されておらず、命令記憶手段41にも全てのデータが記憶されていない場合がある。そのため、障害復旧処理は、エラー処理として、その旨のメッセージ(エラーメッセージ等)を画面等に出力する(S35)。また、障害復旧処理は、S34の処理において、状態が"前処理"でない場合(S34において、NO)、そのIDの状態が"完了"であり、そのIDに対する書き込み命令が正常に終了しているものと判断する。   In the failure recovery processing, when the state is “preprocessing” (YES in S34), the writing processing for the ID is not started, and all data may not be stored in the instruction storage unit 41 in some cases. . Therefore, the failure recovery process outputs a message to that effect (such as an error message) on the screen or the like as an error process (S35). In the failure recovery process, if the state is not “pre-process” in S34 (NO in S34), the state of the ID is “complete”, and the write command for the ID has been completed normally. Judge that.

また、障害復旧処理は、上述したS22の処理において、データベース状態の読み出しができなかった場合(読み出し=NG)(S22において、NO)、エラー処理として、その旨のメッセージ(エラーメッセージ等)を画面等に出力し(S36)、処理を終了する。この場合には、データベース12にアクセスできず復旧処理自体ができないため、その旨のメッセージを出力して処理を終了する。なお、本実施形態において、ID状態記憶手段42の状態が"異常終了"の場合もあるが、この場合には、復旧できないハードウェア故障等のエラーである可能性もあるため、図9に示す障害復旧処理の対象からは除外される。   Further, in the failure recovery process, when the database state cannot be read in the process of S22 described above (reading = NG) (NO in S22), a message to that effect (such as an error message) is displayed on the screen as an error process. (S36), and the process is terminated. In this case, since the database 12 cannot be accessed and the recovery process itself cannot be performed, a message to that effect is output and the process ends. In this embodiment, the state of the ID state storage means 42 may be “abnormal end”, but in this case, there is a possibility of an error such as a hardware failure that cannot be recovered. Excluded from failure recovery processing.

上述した実施形態によれば、障害発生から復旧までの処理を簡素化して復旧時間を短縮させることができる。これまでは、データベースにデータを書き込み中に障害が発生した場合に、どこまでデータ書き込みが完了していることが分からず、二重に同じデータを書き込む恐れがあったため、データ入力前の状態に一旦戻し、再度データを書き込む必要があった。しかしながら、本実施形態では、書き込み命令の実行状態を確認後、完了していない処理に対して確認用読み出し命令によりデータベースの値を読み出し、読み出し期待値と比較することで、データの整合性を確認することができる。   According to the embodiment described above, the recovery time can be shortened by simplifying the processing from the occurrence of a failure to the recovery. So far, if a failure occurs while writing data to the database, it is not known how far the data has been written, and there is a risk of writing the same data twice. I had to go back and write the data again. However, in this embodiment, after confirming the execution state of the write command, the database value is read by a read command for confirmation for a process that has not been completed, and the data consistency is confirmed by comparing it with the expected read value. can do.

また、本実施形態では、上述した整合性確認情報等を用いて、データが不整合になっている部分(中断点)を所定の処理(例えば、トランザクション処理)単位で適切に取得することができる。また、本実施形態では、整合性確認情報に対応する書き込み命令を用いて、取得した書き込み中断点から書き込み処理を迅速に再開させることができる。したがって、本実施形態では、障害によるデータの再書き込み等による中断時間を大幅に短縮することができる。   Further, in the present embodiment, by using the above-described consistency confirmation information or the like, it is possible to appropriately acquire a portion where data is inconsistent (interruption point) in units of predetermined processing (for example, transaction processing). . In the present embodiment, the write process can be quickly restarted from the acquired write interruption point by using the write command corresponding to the consistency confirmation information. Therefore, in this embodiment, the interruption time due to rewriting of data due to a failure can be significantly reduced.

なお、上述した実施形態では、記憶装置の一例としてデータベースを用いたデータアクセス管理の例を示したが、これに限定されるものではなく、例えばデータの読み出しや書き込みを行うコンピュータ等であればよい。したがって、本実施形態は、例えばPC等に対するデータアクセス管理にも適用でき、またクラウド環境にある複数のサーバ等に対するデータアクセス管理にも適用できる。この場合、上述したPCやサーバ等は、記憶装置の一例となる。   In the above-described embodiment, an example of data access management using a database as an example of a storage device has been described. However, the present invention is not limited to this, and may be, for example, a computer that reads and writes data. . Therefore, this embodiment can be applied to, for example, data access management for a PC or the like, and can also be applied to data access management for a plurality of servers or the like in a cloud environment. In this case, the above-described PC or server is an example of a storage device.

以上、各実施例について詳述したが、特定の実施例に限定されるものではなく、特許請求の範囲に記載された範囲内において、上記変形例以外にも種々の変形及び変更が可能である。   Each embodiment has been described in detail above. However, the present invention is not limited to the specific embodiment, and various modifications and changes other than the above-described modification are possible within the scope described in the claims. .

なお、以上の実施例に関し、更に以下の付記を開示する。
(付記1)
記憶装置に対する書き込み命令を解析し、前記書き込み命令により前記記憶装置に書き込まれたデータを読み出すための読み出し命令と読み出し期待値とを含む整合性確認情報を取得する命令解析手段と、
前記命令解析手段により得られる前記整合性確認情報を前記書き込み命令に対応付けて記憶する記憶手段と、
前記記憶装置の障害復旧時に、前記書き込み命令の実行状態と、前記記憶手段に記憶された前記整合性情報とに基づいて、前記記憶装置に書き込まれたデータの整合性を確認する命令実行手段とを有することを特徴とする情報処理装置。
(付記2)
前記命令実行手段は、
前記読み出し命令の実行により得られた値が前記読み出し期待値と一致しない場合に、前記記憶手段に記憶された書き込み命令を実行することを特徴とする付記1に記載の情報処理装置。
(付記3)
前記記憶手段は、前記所定の処理を行う1又は複数の書き込み命令を同一の識別情報として記憶する命令記憶手段と、前記識別情報毎に前記書き込み命令の実行状態を記憶する状態記憶手段とを有し、
前記命令実行手段は、前記記憶装置の障害復旧時に、前記状態記憶手段から前記識別情報毎の書き込み命令の実行状態を読み出し、読み出した実行状態に基づいて、前記命令記憶手段に記憶された前記識別情報に対応する読み出し命令を実行し、実行した結果と前記読み出し期待値とを比較することを特徴とする付記1又は2に記載の情報処理装置。
(付記4)
前記命令実行手段は、
前記識別情報毎の書き込み命令の実行状態を読み出す場合に、日時が古い情報から順番に読み出すか、又は、日時が最新の情報から所定期間分遡ったデータを読み出すことを特徴とする付記3に記載の情報処理装置。
(付記5)
前記命令実行手段は、
前記記憶装置の状態を確認するための読み出しができない場合に、エラー処理を行うことを特徴とする付記1乃至5の何れか1項に記載の情報処理装置。
(付記6)
記憶装置に対する書き込み命令を解析し、前記書き込み命令により前記記憶装置に書き込まれたデータを読み出すための読み出し命令と読み出し期待値とを含む整合性確認情報を取得する命令解析ステップと、
前記命令解析ステップにより得られる前記整合性確認情報を前記書き込み命令に対応付けて記憶手段に記憶する記憶ステップと、
前記記憶装置の障害復旧時に、前記書き込み命令の実行状態と、前記記憶手段に記憶された前記整合性情報とに基づいて、前記記憶装置に書き込まれたデータの整合性を確認する命令実行ステップとを有することを特徴とする管理方法。
(付記7)
記憶装置に対する書き込み命令を解析し、前記書き込み命令により前記記憶装置に書き込まれたデータを読み出すための読み出し命令と読み出し期待値とを含む整合性確認情報を取得し、
取得した前記整合性確認情報を前記書き込み命令に対応付けて記憶手段に記憶し、
前記記憶装置の障害復旧時に、前記書き込み命令の実行状態と、前記記憶手段に記憶された前記整合性情報とに基づいて、前記記憶装置に書き込まれたデータの整合性を確認する、処理をコンピュータに実行させるための管理プログラム。
In addition, the following additional remarks are disclosed regarding the above Example.
(Appendix 1)
A command analysis means for analyzing a write command to the storage device and acquiring consistency check information including a read command and a read expected value for reading data written to the storage device by the write command;
Storage means for storing the consistency confirmation information obtained by the instruction analysis means in association with the write instruction;
Instruction execution means for confirming the consistency of data written in the storage device based on the execution state of the write command and the consistency information stored in the storage means when the storage device is recovered from a failure; An information processing apparatus comprising:
(Appendix 2)
The instruction execution means is
The information processing apparatus according to appendix 1, wherein a write command stored in the storage unit is executed when a value obtained by executing the read command does not match the expected read value.
(Appendix 3)
The storage means includes instruction storage means for storing one or a plurality of write instructions for performing the predetermined processing as the same identification information, and state storage means for storing the execution state of the write instruction for each of the identification information. And
The instruction execution unit reads an execution state of a write instruction for each identification information from the state storage unit when the storage device is recovered from a failure, and based on the read execution state, the identification stored in the instruction storage unit The information processing apparatus according to appendix 1 or 2, wherein a read command corresponding to information is executed, and the execution result is compared with the expected read value.
(Appendix 4)
The instruction execution means is
The supplementary note 3 is characterized in that when reading the execution state of the write command for each identification information, the information is read in order from the information with the oldest date or time, or the data dated back from the latest information for a predetermined period is read. Information processing device.
(Appendix 5)
The instruction execution means is
6. The information processing apparatus according to any one of appendices 1 to 5, wherein error processing is performed when reading for confirming the state of the storage device is not possible.
(Appendix 6)
An instruction analysis step of analyzing a write instruction to the storage device and acquiring consistency check information including a read instruction and a read expected value for reading data written to the storage device by the write instruction;
A storage step of storing in the storage means the consistency check information obtained by the instruction analysis step in association with the write instruction;
An instruction execution step of confirming the consistency of data written in the storage device based on the execution state of the write command and the consistency information stored in the storage means when the storage device is recovered from a failure; The management method characterized by having.
(Appendix 7)
Analyzing a write command to the storage device, obtaining consistency check information including a read command and a read expected value for reading data written to the storage device by the write command,
The acquired consistency check information is stored in a storage means in association with the write command,
A process for checking the consistency of data written in the storage device based on the execution state of the write command and the consistency information stored in the storage means when the storage device is recovered from a failure. Management program to make it run.

10 データアクセス管理システム
11 アクセス管理装置(情報処理装置)
12 データベース(記憶装置)
13 端末
14 通信ネットワーク
21 入力手段
22 出力手段
23 ID管理手段
24 命令解析手段
25 命令変換手段
26 命令実行手段
27 記憶手段
28 送受信手段
29 制御手段
31 書き込み命令実行手段
32 読み出し命令実行手段
41 命令記憶手段
42 ID状態記憶手段(状態記憶手段)
51 入力装置
52 出力装置
53 ドライブ装置
54 補助記憶装置
55 主記憶装置
56 CPU
57 ネットワーク接続装置
58 記録媒体
10 Data Access Management System 11 Access Management Device (Information Processing Device)
12 Database (storage device)
DESCRIPTION OF SYMBOLS 13 Terminal 14 Communication network 21 Input means 22 Output means 23 ID management means 24 Instruction analysis means 25 Instruction conversion means 26 Instruction execution means 27 Storage means 28 Transmission / reception means 29 Control means 31 Write instruction execution means 32 Read instruction execution means 41 Instruction storage means 42 ID state storage means (state storage means)
51 Input Device 52 Output Device 53 Drive Device 54 Auxiliary Storage Device 55 Main Storage Device 56 CPU
57 Network connection device 58 Recording medium

Claims (6)

記憶装置に対する書き込み命令を解析し、前記書き込み命令により前記記憶装置に書き込まれたデータを読み出すための読み出し命令と読み出し期待値とを含む整合性確認情報を取得する命令解析手段と、
前記命令解析手段により得られる前記整合性確認情報を前記書き込み命令に対応付けて記憶する記憶手段と、
前記記憶装置の障害復旧時に、前記書き込み命令の実行状態と、前記記憶手段に記憶された前記整合性情報とに基づいて、前記記憶装置に書き込まれたデータの整合性を確認する命令実行手段とを有することを特徴とする情報処理装置。
A command analysis means for analyzing a write command to the storage device and acquiring consistency check information including a read command and a read expected value for reading data written to the storage device by the write command;
Storage means for storing the consistency confirmation information obtained by the instruction analysis means in association with the write instruction;
Instruction execution means for confirming the consistency of data written in the storage device based on the execution state of the write command and the consistency information stored in the storage means when the storage device is recovered from a failure; An information processing apparatus comprising:
前記命令実行手段は、
前記読み出し命令の実行により得られた値が前記読み出し期待値と一致しない場合に、前記記憶手段に記憶された書き込み命令を実行することを特徴とする請求項1に記載の情報処理装置。
The instruction execution means is
2. The information processing apparatus according to claim 1, wherein when a value obtained by executing the read command does not match the expected read value, the write command stored in the storage unit is executed.
前記記憶手段は、前記所定の処理を行う1又は複数の書き込み命令を同一の識別情報として記憶する命令記憶手段と、前記識別情報毎に前記書き込み命令の実行状態を記憶する状態記憶手段とを有し、
前記命令実行手段は、前記記憶装置の障害復旧時に、前記状態記憶手段から前記識別情報毎の書き込み命令の実行状態を読み出し、読み出した実行状態に基づいて、前記命令記憶手段に記憶された前記識別情報に対応する読み出し命令を実行し、実行した結果と前記読み出し期待値とを比較することを特徴とする請求項1又は2に記載の情報処理装置。
The storage means includes instruction storage means for storing one or a plurality of write instructions for performing the predetermined processing as the same identification information, and state storage means for storing the execution state of the write instruction for each of the identification information. And
The instruction execution unit reads an execution state of a write instruction for each identification information from the state storage unit when the storage device is recovered from a failure, and based on the read execution state, the identification stored in the instruction storage unit The information processing apparatus according to claim 1, wherein a read instruction corresponding to information is executed, and the execution result is compared with the expected read value.
前記命令実行手段は、
前記記憶装置の状態を確認するための読み出しができない場合に、エラー処理を行うことを特徴とする請求項1乃至3の何れか1項に記載の情報処理装置。
The instruction execution means is
4. The information processing apparatus according to claim 1, wherein error processing is performed when reading for confirming a state of the storage device is not possible. 5.
記憶装置に対する書き込み命令を解析し、前記書き込み命令により前記記憶装置に書き込まれたデータを読み出すための読み出し命令と読み出し期待値とを含む整合性確認情報を取得する命令解析ステップと、
前記命令解析ステップにより得られる前記整合性確認情報を前記書き込み命令に対応付けて記憶手段に記憶する記憶ステップと、
前記記憶装置の障害復旧時に、前記書き込み命令の実行状態と、前記記憶手段に記憶された前記整合性情報とに基づいて、前記記憶装置に書き込まれたデータの整合性を確認する命令実行ステップとを有することを特徴とする管理方法。
An instruction analysis step of analyzing a write instruction to the storage device and acquiring consistency check information including a read instruction and a read expected value for reading data written to the storage device by the write instruction;
A storage step of storing in the storage means the consistency check information obtained by the instruction analysis step in association with the write instruction;
An instruction execution step of confirming the consistency of data written in the storage device based on the execution state of the write command and the consistency information stored in the storage means when the storage device is recovered from a failure; The management method characterized by having.
記憶装置に対する書き込み命令を解析し、前記書き込み命令により前記記憶装置に書き込まれたデータを読み出すための読み出し命令と読み出し期待値とを含む整合性確認情報を取得し、
取得した前記整合性確認情報を前記書き込み命令に対応付けて記憶手段に記憶し、
前記記憶装置の障害復旧時に、前記書き込み命令の実行状態と、前記記憶手段に記憶された前記整合性情報とに基づいて、前記記憶装置に書き込まれたデータの整合性を確認する、処理をコンピュータに実行させるための管理プログラム。
Analyzing a write command to the storage device, obtaining consistency check information including a read command and a read expected value for reading data written to the storage device by the write command,
The acquired consistency check information is stored in a storage means in association with the write command,
A process for checking the consistency of data written in the storage device based on the execution state of the write command and the consistency information stored in the storage means when the storage device is recovered from a failure. Management program to make it run.
JP2012218243A 2012-09-28 2012-09-28 Information processor, management method, and management program Pending JP2014071740A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012218243A JP2014071740A (en) 2012-09-28 2012-09-28 Information processor, management method, and management program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012218243A JP2014071740A (en) 2012-09-28 2012-09-28 Information processor, management method, and management program

Publications (1)

Publication Number Publication Date
JP2014071740A true JP2014071740A (en) 2014-04-21

Family

ID=50746861

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012218243A Pending JP2014071740A (en) 2012-09-28 2012-09-28 Information processor, management method, and management program

Country Status (1)

Country Link
JP (1) JP2014071740A (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001084180A (en) * 1999-09-09 2001-03-30 Mitsubishi Electric Corp File management device
JP2006221623A (en) * 2005-02-07 2006-08-24 Internatl Business Mach Corp <Ibm> Detection and recovery of dropped write in storage device
JP2006338083A (en) * 2005-05-31 2006-12-14 Tdk Corp Memory controller
JP2008234446A (en) * 2007-03-22 2008-10-02 Nec Corp Data consistency checking method and system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001084180A (en) * 1999-09-09 2001-03-30 Mitsubishi Electric Corp File management device
JP2006221623A (en) * 2005-02-07 2006-08-24 Internatl Business Mach Corp <Ibm> Detection and recovery of dropped write in storage device
JP2006338083A (en) * 2005-05-31 2006-12-14 Tdk Corp Memory controller
JP2008234446A (en) * 2007-03-22 2008-10-02 Nec Corp Data consistency checking method and system

Similar Documents

Publication Publication Date Title
JP6048038B2 (en) Information processing apparatus, program, and information processing method
US9646042B2 (en) Data consistency and rollback for cloud analytics
US9612920B2 (en) Hierarchical system manager rollback
US20100229112A1 (en) Problem reporting system based on user interface interactions
US10037255B2 (en) Device, method and program for performing system testing
WO2018118166A1 (en) System and method for testing program using user interaction
CN114138838B (en) Data processing method, device, equipment and medium
CN111177165A (en) Method, device and device for data consistency detection
JP2009009448A (en) Data transmission apparatus, data transmission method, and program
CN105159820A (en) Transmission method and device of system log data
JP4527561B2 (en) Asset management method, asset management system, and asset management program
JP2006277771A (en) Terminal device for computer network and operation history recording method
JP2012155634A (en) Information processing program, information processing device and information processing method
JP5544029B1 (en) Environment building apparatus and environment building program
US20110224939A1 (en) Integrated tool for persisting development environment test scenario information
JP2014071740A (en) Information processor, management method, and management program
CN110958243A (en) Network vulnerability submitting method and device, storage medium and electronic equipment
WO2022259374A1 (en) Programmable controller, terminal device, program management system, program management method, and program
JP2012048660A (en) Static analysis processing system, method, and program
JP2022106619A (en) Information processing system, information processing device, and information processing method
JP2018120256A (en) Setting operation input support apparatus and setting operation input support system
JP7221471B1 (en) DEBUG SUPPORT DEVICE, CONTROL SYSTEM, DEBUG SUPPORT METHOD AND PROGRAM
JPWO2020188779A1 (en) Information processing equipment, information processing system and information processing program
JP2021117547A (en) Fault analysis device, multi-cluster system, fault analysis program and fault analysis method
TWI610241B (en) Durable program execution

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150604

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160229

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160315

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160516

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160913

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20170314