JP2014071740A - Information processor, management method, and management program - Google Patents
Information processor, management method, and management program Download PDFInfo
- 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
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.
しかしながら、上述した従来手法において、データベースに記憶されたデータの整合性を確認する場合には、担当者等が手動かつ目視で入力データとの確認作業を行うため時間がかかってしまう。また、上述した従来手法では、データベースに記憶されたデータに不整合なデータがあるか否かに関わらず、データベース内の全てのデータを確認するため、データベースへの書き込み作業を長時間中断させる必要が生じる。更に、上述した従来手法では、データの不整合を解消してデータを復旧させるために、バックアップデータ等を用いてデータ書き込み前の状態に戻してから再度データを書き込む必要が生じる。したがって、従来手法では、かなりの復旧時間が必要となっていた。 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.
以下、添付図面を参照しながら実施例について詳細に説明する。 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
アクセス管理装置11は、端末13からの指示に基づきデータベース12に対するデータの読み出しや書き込み等のデータアクセスの管理等を行う。例えば、アクセス管理装置11は、データベース12に対するデータの書き込みを行う前処理として、データベース12に書き込まれたデータとデータベース12への書き込みデータとの整合性を確認するための整合性確認情報(例えば、確認用読み出し命令、読み出し期待値)を生成し、書き込み命令と対応付けて記憶手段等に記憶する。また、アクセス管理装置11は、上述した前処理やデータベース12へのデータ書き込みの開始や終了等の実行に対する状態情報を記憶手段等に記憶する。また、アクセス管理装置11は、障害等が発生した際に、上述した整合性確認情報や状態情報等に基づいて、データ書き込みの中断点を判別する。したがって、アクセス管理装置11は、データベース12に対する障害復旧時に書き込み中断点から迅速にデータ書き込みを再開させることができる。なお、障害とは、例えばデータアクセス管理システム10における各装置の故障等による障害や、ネットワーク障害、電源障害等のシステム障害等であるがこれに限定されるものではない。
The
つまり、本実施形態では、障害により書き込みが中断されたデータに対して、データ書き込みの中断点を判別し、障害復旧後にその中断点から書き込みを再開させることにより、データベース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
データベース12は、例えば業務上等における所定の処理を実行するための各種設定情報や、所定の処理の実行に対する入出力データ等を記憶する。また、データベース12は、例えば端末13からの指示等を受けたアクセス管理装置11から要求されたデータを所定のタイミングで読み出したり、書き込んだりすることができる。
The
ここで、データベース12は、多種の情報の集合物であり、それらの情報を、例えばキーワード等を用いて検索し、抽出することができるように体系的に構成されている。なお、本実施形態におけるデータベース12は、例えばデータベースサーバでもよく、また複数のデータベースからなるデータセンタ等であってもよく、更にクラウドコンピューティングで設計されたデータベースの一部又は全部であってもよい。
Here, the
端末13は、各ユーザが使用するコンピュータである。端末13は、各端末13がそれぞれの業務等に対応する所定の処理を行う際に必要となるデータの読み出し(入力)要求や、処理後のデータの書き込み(出力)要求をデータベース12に対して行い、データの入出力を行う。なお、図1の例に示すデータアクセス管理システム10において、上述した端末13からの要求情報は、通信ネットワーク14を介してアクセス管理装置11に送信され、アクセス管理装置11を介してデータベース12に送信される。
The
ここで、端末13は、例えばPCやノート型PC等であってもよく、スマートフォンやタブレット端末、携帯端末等の各種通信端末、ゲーム機器、音楽再生装置等であってもよいが、これに限定されるものではない。
Here, the
通信ネットワーク14は、例えばインターネットやLocal Area Network(LAN)等に代表されるネットワーク形態を有するが、これに限定されるものではない。
The
上述したデータアクセス管理システム10は、例えばデータベース12に対するデータ書き込み中に障害が発生し、データが不整合になった場合でも、アクセス管理装置11によって、障害復旧後に書き込み中断点から書き込みを再開させることにより、データ不整合が解消される。そのため、本実施形態では、障害復旧時に管理者等がデータ不整合の可能性を確認する必要がなくなる。
In the data
また、本実施形態において、障害復旧後は、端末13を使用するユーザがデータベース12に入力しようとしたデータについて「入力完了状態」となるため、障害発生により書き込まれなかったデータを再度書き込む手間が発生しない。これにより、本実施形態では、障害発生から復旧までの処理を簡素化して、復旧時間を短縮させることができるため、例えばデータベースに対するデータ入力等の中断時間を大幅に短縮することができる。なお、復旧時間とは、例えば障害が発生してから、復旧が完了するまで(障害発生前の状態に戻るまで)の時間等を意味するが、これに限定されるものではない。
Further, in the present embodiment, after the failure is recovered, the user who uses the
なお、従来では、例えばデータベース12にデータを書き込み中に障害が発生した場合に、どこまで書き込みが完了しているかが分からず、同一のデータを二重に書き込む恐れがあった。そのため、従来では、バックアップデータ等を用いてデータ入力前の状態に一旦戻し、再度データを入力し直す必要があった。
Conventionally, for example, when a failure occurs while data is being written to the
しかしながら、本実施形態によれば、アクセス管理装置11によって書き込み命令の実行状態を確認後、状態が完了となっていない場合に、確認用読み出し命令によりデータベース12の値を確認することで、書き込みがどの位置で中断しているかを迅速に確認することができる。そのため、本実施形態では、書き込みが完了していない中断点からデータの書き込みが再開でき、障害発生から復旧までの処理を簡素化して復旧時間を短縮させることができる。
However, according to the present embodiment, after the execution state of the write command is confirmed by the
<アクセス管理装置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
Next, the
入力手段21は、アクセス管理装置11を使用する管理者等からの各種指示の開始や終了、設定の入力等の各種入力を受け付ける。具体的には、入力手段21は、例えば本実施形態におけるID管理指示、命令解析指示、命令変換指示、命令実行指示、記憶指示、送受信指示等の各指示を受け付ける。
The
入力手段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
出力手段22は、入力手段21により入力された内容や、入力内容に基づいて実行された内容等の出力を行う。なお、出力手段22は、例えば画面表示により出力する場合には、ディスプレイやモニタ等の表示手段を有し、音声により出力する場合には、例えばスピーカ等の音声出力手段を有していてもよい。また、入力手段21と出力手段22とは、例えばタッチパネル等のように入出力が一体型であってもよい。
The
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
命令解析手段24は、各端末13から得られる複数の要求のうち、1又は複数の書き込み命令群を抽出し、抽出した書き込み命令群に対してID管理手段23よりIDを取得し、書き込み命令群に対して1つのIDを付与する。なお、書き込み命令群の抽出は、例えば書き込み命令に対応するコマンド種別(例えば、WRITE)等に基づいて抽出することができるが、これに限定されるものではない。
The
また、命令解析手段24は、例えばID毎に前処理等を行う。ここで、前処理とは、例えば端末13等から得られるデータベース12に対する要求(命令)を実際に実行する前に、データの整合性を確認するための情報(整合性確認情報)を取得し、取得した情報を命令記憶手段41に記憶する処理等を意味する。
Further, the
具体的には、前処理は、例えば端末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
また、命令解析手段24は、ID毎の状態情報をID状態記憶手段42に記憶する。ここで、状態情報とは、ID毎の処理の実行状態に関する情報であり、例えばあるIDに対して上述した前処理を開始する場合に、そのIDに対応する状態情報が「前処理」となる。また、状態情報は、例えば上述した前処理の後に、ID毎に命令実行手段26によりデータベース12に対する端末13等からの書き込み命令の実行が開始した場合や実行が終了した場合に、対応する状態情報が「開始」、「終了」となることを意味するがこれに限定されるものではない。
Further, the
命令解析手段24は、「前処理」の状態情報をID状態記憶手段42に記憶する。なお、上述した「開始」、「終了」の状態情報は、命令実行手段26におよりID状態記憶手段42に記憶される。更に、命令解析手段24は、上述した前処理の実行時にエラー等が発生した場合に、「異常終了」の状態情報をID状態記憶手段42に記憶する。
The
命令変換手段25は、命令解析手段24により複数の命令の中から書き込み命令が抽出されると、抽出された書き込み命令を変換して、データベース12の書き込み先(例えば、テーブル、レコード、カラム)のデータを読み出すための確認用読み出し命令を生成する。また、命令変換手段25は、書き込み命令から読み出し期待値を生成し、生成した読み出し期待値と上述した確認読み出し命令とを含む整合性確認情報を命令解析手段24に出力する。
When the
命令実行手段26は、書き込み命令実行手段31における書き込み命令の実行や、読み出し命令実行手段32における読み出し命令の実行等を行う。なお、命令実行手段26は、上述した書き込みや読み出しの実行に限定されるものではなく、例えば割り込み命令や所定の制御コマンド(例えば、データベース12内のデータのソートやマージ)等による各種命令の実行等を行うことができる。また、読み出し命令実行手段32における読み出し命令には、端末13等から得られる通常の読み出し命令も含まれる。
The
ここで、命令実行手段26は、書き込み命令実行手段31において、例えばID状態記憶手段42に「ID」、「日付」、「時刻」、「状態」等を記憶させる。なお、「状態」としては、例えば「開始」、「完了」、「異常終了」等の状態情報を記憶させるが、これに限定されるものではない。
Here, the
例えば、書き込み命令実行手段31は、各IDの先頭の書き込み命令の実行前に状態情報を「開始」としてID状態記憶手段42に記憶させる。また、書き込み命令実行手段31は、命令記憶手段41に記憶された情報のうち、書き込み命令を読み出して、ID毎に処理を実施し、全IDの全ての書き込み命令に対して処理を実行する。書き込み命令実行手段31は、例えば同一ID内の全ての書き込み命令が完了した時点で、状態情報を「完了」としてID状態記憶手段42に記憶させる。また、書き込み命令実行手段31は、例えば書き込みエラー等が発生した場合に、状態情報を「異常終了」とし、ID状態記憶手段42に記憶させ、以降の書き込み命令を中止する。
For example, the write
また、読み出し命令実行手段32は、例えば障害復旧時にデータベース12が正常に起動又は動作しているか否かの状態を確認するため、データベース12の所定の領域に記憶された値を読み出す。ここで、読み出す値は、例えばシステム構築時に、データベース12の所定の領域(例えば、テーブル、レコード、カラム)に削除されることのない所定の値を記憶させておくのが好ましいが、これに限定されるものではない。なお、所定の値としては、例えばデータベース12の識別情報等でもよく、変更したり削除することができないダミーデータ等でもよい。
Further, the read command execution means 32 reads a value stored in a predetermined area of the
読み出し命令実行手段32は、読み出した所定の値が予め記憶手段27等に記憶した値と一致する場合には、データベース12の状態が正常と判断する。また、読み出し命令実行手段32は、所定の値が読み出せない場合や読み出した所定の値が予め記憶手段27等に記憶した値と一致しない場合に、データベース12が正常に起動又は動作していないと判断し、エラー処理(例えば、エラーメッセージ出力)等を行う。
The read command execution means 32 determines that the state of the
なお、本実施形態では、上述したデータベース12に対する所定の値を読み出すことで、データベース12の状態を確認したが、これに限定されるものではない。例えば、本実施形態では、上述した所定の値の読み出しを行わず、例えば命令記憶手段41やID状態記憶手段42の読み出しを行い、読み出しができなかった場合に、エラー処理を行ってもよい。
In the present embodiment, the state of the
また、読み出し命令実行手段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
また、読み出し命令実行手段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
具体的には、読み出し命令実行手段32は、命令記憶手段41から確認用読み出し命令及び読み出し期待値を読み出し、読み出した確認用読み出し命令を実行する。また、読み出し命令実行手段32は、確認用読み出し命令により読み出した値と読み出し期待値とが一致するか否かを判断してデータの整合性を確認する。ここで、読み出し命令実行手段32は、確認用読み出し命令により読み出した値が読み出し期待値と一致しない場合に、データベース12に記憶されたデータが不整合であると判断することができる。
Specifically, the read
そのため、命令実行手段26は、読み出した値と読み出し期待値とが一致しない場合に、書き込み命令実行手段31により、対応する書き込み命令を実行する。なお、本実施形態では、上述した書き込み命令の実行後に、再度確認用読み出し命令を実行し、読み出した値と読み出し期待値とを比較してもよい。
Therefore, the
なお、命令実行手段26は、読み出し命令実行手段32により読み出した値が読み出し期待値と同じ場合には、整合が取れているものとし、上述した書き込み命令を実行しない。
Note that if the value read by the read
また、命令実行手段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
記憶手段27は、本実施形態において必要となる各種情報を記憶する。具体的には、記憶手段27は、命令記憶手段41やID状態記憶手段42に記憶されている各種情報や、実行経過や実行結果、ログ情報等を記憶する。
The
また、記憶手段27は、記憶された各種情報を必要に応じて所定のタイミングで読み出したり、書き込んだりすることができる。記憶手段27は、上述したような多種の情報の集合物であり、それらの情報を、例えばキーワード等を用いて検索し、抽出することができるように体系的に構成されているデータベースとしての機能を有していてもよい。なお、記憶手段27は、例えばハードディスクやメモリ等からなる。
The
送受信手段28は、例えば通信ネットワーク14を介して端末13やデータベース12等の外部装置とデータの送受信を行うための通信手段である。送受信手段28は、外部装置等にすでに記憶されている各種情報等を受信することができ、またアクセス管理装置11で処理された結果を、通信ネットワーク14を介して外部装置等に送信することもできる。
The transmission /
制御手段29は、アクセス管理装置11の各構成部全体の制御を行う。具体的には、制御手段29は、例えば端末13を利用するユーザ等からの指示や、管理者等による入力手段21からの指示等に基づいて、データベース12等へのアクセス管理に関する各制御を行う。ここで、各制御とは、例えば上述したID管理手段23における命令群毎のID管理や、命令解析手段24における命令解析、命令変換手段25における命令変換等がある。また、各制御とは、命令実行手段26における各種命令の実行や記憶手段27における各種情報の記憶等があるが、これに限定されるものではない。これらの制御は、プログラムの実行や管理者等の指示による所定のイベントやコマンド等の実行に基づいて行われてもよいが、これに限定されるものではない。
The
<アクセス管理装置11のハードウェア構成例>
ここで、上述したアクセス管理装置11においては、各機能をコンピュータに実行させることができる実行プログラム(管理プログラム)を生成し、例えば汎用のPCやサーバ等にその実行プログラムをインストールすることにより、本実施形態におけるデータベース12に対するアクセス管理処理を実現することができる。ここで、本実施形態におけるアクセス管理処理が実現可能なコンピュータのハードウェア構成例について図を用いて説明する。
<Hardware Configuration Example of
Here, in the
図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
入力装置51は、例えばアクセス管理装置11の管理者等が操作するキーボード及びマウス等のポインティングデバイスや、マイクロフォン等の音声入力デバイスを有している。入力装置51は、管理者等からのプログラムの実行指示、各種操作情報、ソフトウェアを起動するための情報等を入力する。
The
出力装置52は、本実施形態における処理を行うためのコンピュータ本体を操作するのに必要な各種ウィンドウやデータ等を表示するディスプレイを有し、CPU56が有する制御プログラムによりプログラムの実行経過や結果等を表示することができる。また、出力装置52は、上述の処理結果等を紙等の印刷媒体に印刷して、管理者等に提示することができる。
The
ここで、本実施形態においてコンピュータ本体にインストールされる実行プログラムは、例えば、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
補助記憶装置54は、CPU56からの制御信号に基づき、本実施形態における実行プログラムやコンピュータに設けられた制御プログラム、実行経過や実行結果等を記憶する。また、補助記憶装置54は、CPU56からの制御信号等に基づいて、記憶された各情報から必要な情報を読み出したり、書き込むことができる。
The
なお、補助記憶装置54は、例えばHard Disk Drive(HDD)やSolid State Drave(SSD)等からなり、例えば上述した記憶手段27に対応している。
The
主記憶装置55は、CPU56により補助記憶装置54から読み出された実行プログラム等を格納する。なお、主記憶装置55は、Read Only Memory(ROM)やRandom Access Memory(RAM)等からなる。
The
CPU56は、オペレーティングシステム等の制御プログラム、及び主記憶装置55に格納されている実行プログラムに基づいて、各種演算や各ハードウェア構成部とのデータの入出力等、コンピュータ全体の処理を制御して各処理を実現することができる。なお、プログラムの実行中に必要な各種情報等は、補助記憶装置54から取得することができ、また実行結果等を格納することもできる。
The
具体的には、CPU56は、例えば入力装置51から得られるプログラムの実行指示等に基づき、補助記憶装置54にインストールされた管理プログラムを実行させることにより、主記憶装置55上でプログラムに対応する処理を行う。
Specifically, the
例えば、CPU56は、管理プログラムを実行させることで、ID管理手段23による各命令群のID管理や命令解析手段24による命令解析、命令変換手段25による命令変換、命令実行手段26による各種命令の実行等の実行制御を行う。また、CPU56は、記憶手段27における各種情報の書き込みや読み出し等の実行制御を行う。なお、CPU56における処理内容は、上述した内容に限定されるものではない。CPU56により実行された内容(実行経過や実行結果)等は、必要に応じて補助記憶装置54に記憶させることができる。
For example, by executing the management program, the
ネットワーク接続装置57は、CPU56からの制御信号に基づき、通信ネットワーク14等と接続することにより、実行プログラムやソフトウェア、各種命令等を、通信ネットワーク14に接続されている外部装置等から取得する。また、ネットワーク接続装置57は、プログラムを実行することで得られた実行結果又は本実施形態における実行プログラム自体を外部装置等に提供することができる。
The
上述したようなハードウェア構成により、本実施形態におけるデータベースに対するアクセス管理処理を実行することができる。また、プログラムをインストールすることにより、汎用の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
図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
「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
「書き込み命令」は、実際の命令として、例えばデータベース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
また、「確認用読み出し命令」は、書き込み命令の実行によりデータベース12に書き込まれたデータを読み出すための命令が記憶される。具体的には、「確認用読み出し命令」は、書き込み命令を変換して確認用読み出し命令を生成する。
The “read command for confirmation” stores a command for reading data written in the
また、「読み出し期待値」は、「確認用読み出し命令」に記憶された内容で命令(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 “
なお、本実施形態では、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
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
ここで、例えば上述した図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
図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
次に、データ書き込み処理は、図8に示すように命令解析手段24によりID管理手段23から書き込み命令群に対するIDを取得し、取得したIDを対応する書き込み命令に設定する(S02)。なお、IDは、例えば端末13が個々に実行するトランザクション処理単位で発生する1又は複数の書き込み命令群に対して同一のIDが設定されるが、これに限定されるものではない。
Next, in the data writing process, as shown in FIG. 8, the
次に、データ書き込み処理は、設定された全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
次に、データ書き込み処理は、命令解析手段24により書き込み命令を解析し、命令変換手段25により書き込み命令を変換し、整合性確認情報に含まれる情報として、上述した確認用読み出し命令、読み出し期待値を生成する(S05)。また、データ書き込み処理は、上述したID、書き込み命令、確認用読み出し命令、読み出し期待値を、命令記憶手段41に記憶する(S06)。なお、S05及びS06の処理は、上述した前処理に対応する。
Next, in the data writing process, the
次に、データ書き込み処理は、図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
データ書き込み処理は、図8に示すように書き込み命令実行手段31により命令記憶手段41から書き込み命令を読み出す(S09)。また、データ書き込み処理は、書き込み命令実行手段31によりS09の処理により読み出した書き込み命令を実行する(S10)。
In the data writing process, as shown in FIG. 8, the write
また、データ書き込み処理は、書き込み命令実行手段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
また、図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
図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
ここで、障害復旧処理は、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
また、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
次に、障害復旧処理は、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
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
また、障害復旧処理は、上述した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
また、障害復旧処理は、上述した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
上述した実施形態によれば、障害発生から復旧までの処理を簡素化して復旧時間を短縮させることができる。これまでは、データベースにデータを書き込み中に障害が発生した場合に、どこまでデータ書き込みが完了していることが分からず、二重に同じデータを書き込む恐れがあったため、データ入力前の状態に一旦戻し、再度データを書き込む必要があった。しかしながら、本実施形態では、書き込み命令の実行状態を確認後、完了していない処理に対して確認用読み出し命令によりデータベースの値を読み出し、読み出し期待値と比較することで、データの整合性を確認することができる。 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
12 Database (storage device)
DESCRIPTION OF
51
57
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又は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.
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)
| 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 |
-
2012
- 2012-09-28 JP JP2012218243A patent/JP2014071740A/en active Pending
Patent Citations (4)
| 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 |