JP2014078067A - Database system, database device, failure recovery method for database and program - Google Patents
Database system, database device, failure recovery method for database and program Download PDFInfo
- Publication number
- JP2014078067A JP2014078067A JP2012224147A JP2012224147A JP2014078067A JP 2014078067 A JP2014078067 A JP 2014078067A JP 2012224147 A JP2012224147 A JP 2012224147A JP 2012224147 A JP2012224147 A JP 2012224147A JP 2014078067 A JP2014078067 A JP 2014078067A
- Authority
- JP
- Japan
- Prior art keywords
- server
- failure
- database
- command
- error code
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Hardware Redundancy (AREA)
- Debugging And Monitoring (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
本発明はデータベースシステム、データベース装置、データベースの障害回復方法およびプログラムに関し、特に障害回復処理を学習して自動化するデータベースシステム等に関する。 The present invention relates to a database system, a database apparatus, a database failure recovery method, and a program, and more particularly to a database system that learns and automates failure recovery processing.
企業などで利用されるコンピュータシステムにおいては、短時間の停止であっても、その間に発生した業務の停止によって巨額の損失が発生しうる。特に、大量のデータを記憶して取り扱うデータベースと、それらのデータを利用して企業活動そのものに関わる処理を行うアプリケーションソフトを動作させる企業システムは、絶対に停止してはならず、またデータの損失などもあってはならない。 In a computer system used in a company or the like, even if it is stopped for a short period of time, a huge loss can occur due to the suspension of the business that occurred during that time. In particular, a database that stores and handles large amounts of data and a company system that operates application software that uses these data to perform processes related to the company's activities must never stop, and data loss There must be no such thing.
そのため、それらのコンピュータシステムで何か不具合が発生した場合には、可及的速やかな復旧が望まれる。しかしながら、システム自体の規模、あるいは取り扱うデータの分量は膨大になっていく一方であり、そのためその復旧にかかる時間や作業量も膨大になっていく一方である。 For this reason, when something goes wrong with these computer systems, it is desired to recover as soon as possible. However, the scale of the system itself or the amount of data to be handled is increasing enormously. Therefore, the time and the amount of work required for restoration are also increasing enormously.
特に、平成23年3月11日に発生したいわゆる東日本大震災以後、そのようなコンピュータシステムが地震や風水害などのような大規模災害に遭った場合にもデータの損失を防いで処理を継続可能とする、いわゆるディザスタリカバリ(Disaster Recovery、災害復旧)の重要性が声高に叫ばれるようになっている。 In particular, after the Great East Japan Earthquake that occurred on March 11, 2011, even if such a computer system encounters a large-scale disaster such as an earthquake or storm and flood damage, data loss can be prevented and processing can continue. The importance of so-called disaster recovery has been screaming loudly.
そこで近年は、保守作業員にかかる負荷を削減する技術、特に保守作業員の手をかけずに自動的に障害を復旧させる技術の開発が活発に進められている。これに関連する文献として、次の各々の技術資料がある。その中でも特許文献1には、コンピュータシステムに対して行った復旧手順を、次に同一の障害が発生した時に備えて登録しておくという障害復旧装置が記載されている。 Therefore, in recent years, development of a technique for reducing a load on a maintenance worker, in particular, a technique for automatically recovering from a failure without the intervention of the maintenance worker has been actively promoted. There are the following technical documents as related documents. Among them, Patent Document 1 describes a failure recovery apparatus that registers a recovery procedure performed on a computer system in preparation for the next occurrence of the same failure.
特許文献2には、ジョブネットワークで障害が発生した場合に、障害回復プログラムを自動的に実行するという管理システムが記載されている。特許文献3には、複数のサーバで提供される処理サービスを1台の監視装置によって監視して復旧するという自動監視復旧システムが記載されている。 Patent Document 2 describes a management system that automatically executes a failure recovery program when a failure occurs in a job network. Patent Document 3 describes an automatic monitoring and recovery system in which processing services provided by a plurality of servers are monitored and recovered by a single monitoring device.
図13は、既存技術に係るデータベースシステム901の全体的な構成について示す説明図である。データベースシステム901は、プライマリサイト902(現用系)とセカンダリサイト903(待機系)とがネットワーク904を介して接続されて構成されている。 FIG. 13 is an explanatory diagram showing the overall configuration of the database system 901 according to the existing technology. The database system 901 is configured by connecting a primary site 902 (active system) and a secondary site 903 (standby system) via a network 904.
プライマリサイト902は、アプリケーションサーバ911と、データベースサーバ912と、ストレージ装置913とを含む。セカンダリサイト903も同様に、アプリケーションサーバ921と、データベースサーバ922と、ストレージ装置923とを含む。また、アプリケーションサーバ911および921は相互にサーバクラスタを構成し、同様にデータベースサーバ912および922も相互にサーバクラスタを構成する。
The
アプリケーションサーバ911および921は、相互に動作を監視しあい、そのうちの一方が異常停止した場合には残る一方のみで動作を継続することができる。また、データベースサーバ912および922も、相互に動作を監視しあい、そのうちの一方が異常停止した場合には残る一方のみで動作を継続することができる。 The application servers 911 and 921 can monitor the operation of each other, and if one of them is abnormally stopped, only the remaining one can continue the operation. The database servers 912 and 922 can also monitor the operation of each other, and if one of them stops abnormally, only the remaining one can continue the operation.
近年は特に、eコマース(電子商取引)の普及により、ウェブサーバなどのようなアプリケーションソフトを動作させるアプリケーションサーバと、そこで取引される商品やサービスなどについてのデータを大量に扱うデータベースサーバとを組み合わせた構造のウェブシステムが多く動作するようになっている。そのような場合には、図13に示したデータベースシステム901のように、アプリケーションサーバおよびデータベースサーバを各々二重化して相互に監視し合い、現用系で異常が発生した時にはいつでも待機系が処理を引き継げる構造のシステムが利用されるようになっている。 In recent years, in particular, with the spread of e-commerce (electronic commerce), an application server that operates application software such as a web server and a database server that handles a large amount of data about products and services traded there are combined. Many structured web systems are now working. In such a case, as in the database system 901 shown in FIG. 13, the application server and the database server are duplicated and monitored each other, and the standby system can take over the process whenever an abnormality occurs in the active system. Structured systems are being used.
しかしながら、これらのようなシステムでは、現用系から待機系への切り替えにはやはり保守作業員の手による操作が必要である。この操作はどうしても煩雑なものとなり、またヒューマンエラーによるミスも生じやすい。 However, in such systems, switching from the active system to the standby system still requires an operation by a maintenance worker. This operation is inevitably complicated, and mistakes due to human errors are likely to occur.
特に、ハードウェアおよびソフトウェアの構成の都合上、そのシステムにおいて特に頻繁に発生しやすい特定の障害がどうしても存在するが、その特定の障害に対する対応は経験上ある程度パターン化できるものであるにもかかわらず、その対応のパターン化を行って自動的に実行しうる形にするという従来技術は存在しない。 In particular, due to hardware and software configurations, there are inevitably specific faults that are likely to occur particularly frequently in the system, but the response to those specific faults can be patterned to some extent through experience. However, there is no prior art that forms a pattern that can be automatically executed.
前述の特許文献1〜3には「障害回復の操作を学習して、同じ障害に対する回復操作を自動的に行う」ということは記載されているが、図13に示したデータベースシステム901の構成に適用可能なものは記載されていない。特に、アプリケーションサーバおよびデータベースサーバの両方で1台以上の障害が発生した場合に、これを検出して自動的に回復させることが可能なものは、特許文献1〜3のいずれにも記載されていない。 The above-mentioned Patent Documents 1 to 3 describe that “learning a failure recovery operation and automatically performing a recovery operation for the same failure”, but the configuration of the database system 901 shown in FIG. Applicable items are not listed. In particular, any one of Patent Documents 1 to 3 that can detect and automatically recover when one or more failures occur in both the application server and the database server. Absent.
本願発明の目的は、相互に監視し合うアプリケーションサーバおよびデータベースサーバの両方が1台以上で障害が発生した場合にも、学習された障害回復処理を実行することを可能とするデータベースシステム、データベース装置、データベースの障害回復方法およびプログラムを提供することにある。 An object of the present invention is to provide a database system and a database apparatus capable of executing a learned failure recovery process even when a failure occurs in both one or more application servers and database servers that monitor each other. Another object of the present invention is to provide a database failure recovery method and program.
上記目的を達成するため、本発明に係るデータベースシステムは、現用系アプリケーションサーバおよび現用系データベースサーバを含むプライマリサイトと、待機系アプリケーションサーバおよび待機系データベースサーバを含むセカンダリサイトとがネットワークを介して接続されて構成されるデータベースシステムであって、現用系アプリケーションサーバ、現用系データベースサーバ、待機系アプリケーションサーバおよび待機系データベースサーバがいずれも、相互に他装置と監視し合うサーバ状態監視部を各々備え、各サーバ状態監視部が、データベースシステムを構成するいずれかのサーバに障害が発生した時に保守者が入力したコマンドをログとして記録し、このログの中から特定のパターンを抽出した学習データを発生した障害の症状を示すエラーコードと対応づけて予め備えられた記憶手段に記憶させ、かつ他の各サーバにもこの学習データを送付して記憶させるコマンド学習機能と、いずれかのサーバに障害が発生したことを検出する障害検出機能と、検出された障害と同一のエラーコードが学習データに記憶されているか否かを検索するエラーパターン検索機能と、検出された障害と同一のエラーコードが学習データに記憶されている場合に、そのエラーコードに対応するパターンのコマンドを現用系アプリケーションサーバに実行させる学習済コマンド実行機能とを有することを特徴とする。 In order to achieve the above object, a database system according to the present invention connects a primary site including an active application server and an active database server and a secondary site including a standby application server and a standby database server via a network. Each of the active application server, the active database server, the standby application server, and the standby database server each includes a server status monitoring unit that monitors each other, Each server status monitoring unit records a command entered by the maintainer when a failure occurs in any of the servers that make up the database system, and generates learning data by extracting specific patterns from this log. A command learning function that associates an error code indicating a failure symptom with a storage means prepared in advance and sends this learning data to other servers for storage, and a failure occurs in any server A failure detection function that detects the failure, an error pattern search function that searches whether or not the same error code as the detected failure is stored in the learning data, and an error code that is the same as the detected failure And a learned command execution function for causing the active application server to execute a command having a pattern corresponding to the error code.
上記目的を達成するため、本発明に係るデータベース装置は、現用系アプリケーションサーバおよび現用系データベースサーバを含むプライマリサイトと、待機系アプリケーションサーバおよび待機系データベースサーバを含むセカンダリサイトとがネットワークを介して接続されて構成されるデータベースシステムで、現用系データベースサーバもしくは待機系データベースサーバとして機能しうるデータベース装置であって、相互に他装置と監視し合うサーバ状態監視部を備えると共に、このサーバ状態監視部が、データベースシステムを構成するいずれかのサーバに障害が発生した時に保守者が入力したコマンドをログとして記録し、このログの中から特定のパターンを抽出した学習データを発生した障害の症状を示すエラーコードと対応づけて予め備えられた記憶手段に記憶させ、かつ他の各サーバにもこの学習データを送付して記憶させるコマンド学習機能と、いずれかのサーバに障害が発生したことを検出する障害検出機能と、検出された障害と同一のエラーコードが学習データに記憶されているか否かを検索するエラーパターン検索機能と、検出された障害と同一のエラーコードが学習データに記憶されている場合に、そのエラーコードに対応するパターンのコマンドを現用系アプリケーションサーバに実行させる学習済コマンド実行機能とを有することを特徴とする。 In order to achieve the above object, a database apparatus according to the present invention connects a primary site including an active application server and an active database server and a secondary site including a standby application server and a standby database server via a network. A database system that can function as an active database server or a standby database server, and includes a server status monitoring unit that monitors each other, and the server status monitoring unit An error that indicates the symptom of the failure that generated the learning data that recorded a specific pattern extracted from the log when the command entered by the maintainer when a failure occurred in any of the servers that make up the database system With code A command learning function for storing in a storage means provided in advance and sending this learning data to other servers for storage, and a failure detection function for detecting that a failure has occurred in any of the servers And an error pattern search function for searching whether or not the same error code as the detected failure is stored in the learning data, and when the same error code as the detected failure is stored in the learning data, And a learned command execution function for causing the active application server to execute a command having a pattern corresponding to the error code.
上記目的を達成するため、本発明に係る障害回復方法は、現用系アプリケーションサーバおよび現用系データベースサーバを含むプライマリサイトと、待機系アプリケーションサーバおよび待機系データベースサーバを含むセカンダリサイトとがネットワークを介して接続されて構成されるデータベースシステムにあって、データベースシステムを構成するいずれかのサーバに障害が発生した時に保守者が入力したコマンドをデータベースシステムを構成する各サーバのコマンド学習機能がログとして記録し、記録されたログの中から特定のパターンを抽出した学習データを発生した障害の症状を示すエラーコードと対応づけて各サーバのコマンド学習機能が予め備えられた記憶手段に記憶させると共に、他の各サーバにもこの学習データを送付して記憶させ、いずれかのサーバに障害が発生したことを各サーバの障害検出機能が検出し、検出された障害と同一のエラーコードが学習データに記憶されているか否かを各サーバのエラーパターン検索機能が検索し、検出された障害と同一のエラーコードが学習データに記憶されている場合に、そのエラーコードに対応するパターンのコマンドを各サーバの学習済コマンド実行機能が現用系アプリケーションサーバに実行させることを特徴とする。 In order to achieve the above object, a failure recovery method according to the present invention includes a primary site including an active application server and an active database server, and a secondary site including a standby application server and a standby database server via a network. In a connected database system, a command entered by a maintenance person when a failure occurs in any of the servers that make up the database system is recorded as a log by the command learning function of each server that makes up the database system. In addition, the learning data obtained by extracting a specific pattern from the recorded log is associated with the error code indicating the symptom of the failure that has occurred, and stored in the storage means provided in advance with the command learning function of each server. This server also stores this learning data The failure detection function of each server detects that a failure has occurred in any server, and whether or not the same error code as the detected failure is stored in the learning data. When the error pattern search function searches and the same error code as the detected fault is stored in the learning data, the command of the pattern corresponding to the error code is used by the learned command execution function of each server. It is characterized by causing a server to execute.
上記目的を達成するため、本発明に係る障害回復プログラムは、現用系アプリケーションサーバおよび現用系データベースサーバを含むプライマリサイトと、待機系アプリケーションサーバおよび待機系データベースサーバを含むセカンダリサイトとがネットワークを介して接続されて構成されるデータベースシステムにあって、データベースシステムを構成する各サーバが備えるプロセッサに、データベースシステムを構成するいずれかのサーバに障害が発生した時に保守者が入力したコマンドをログとして記録する手順、記録されたログの中から特定のパターンを抽出した学習データを発生した障害の症状を示すエラーコードと対応づけて予め備えられた記憶手段に記憶させると共に、他の各サーバにもこの学習データを送付して記憶させる手順、いずれかのサーバに障害が発生したことを検出する手順、検出された障害と同一のエラーコードが学習データに記憶されているか否かを検索する手順、および検出された障害と同一のエラーコードが学習データに記憶されている場合に、そのエラーコードに対応するパターンのコマンドを現用系アプリケーションサーバに実行させる手順を実行させることを特徴とする。 In order to achieve the above object, a failure recovery program according to the present invention includes a primary site including an active application server and an active database server, and a secondary site including a standby application server and a standby database server via a network. In a connected database system, a command input by a maintenance person when a failure occurs in any of the servers constituting the database system is recorded as a log in a processor included in each server constituting the database system. The learning data obtained by extracting a specific pattern from the procedure and recorded log is stored in the storage means prepared in advance in association with the error code indicating the symptom of the failure that has occurred, and this learning is also performed in each of the other servers. Send data and remember A procedure for detecting that a failure has occurred in one of the servers, a procedure for searching whether the same error code as the detected failure is stored in the learning data, and the same as the detected failure When the error code is stored in the learning data, a procedure for causing the active application server to execute a command of a pattern corresponding to the error code is executed.
本発明は、上記したように、現用系および待機系のアプリケーションサーバおよびデータベースサーバがいずれも、相互に障害の発生を監視し合うサーバ状態監視部を備える構成としたので、障害が発生した場合にどの装置からでも学習済の障害回復の操作を実行することができる。このことにより、アプリケーションサーバおよびデータベースサーバの両方が1台以上で障害が発生した場合にも、学習された障害回復処理を実行することが可能であるという、優れた特徴を持つデータベースシステム、データベース装置、データベースの障害回復方法およびプログラムを提供することができる。 In the present invention, as described above, both the active and standby application servers and database servers are configured to include the server state monitoring unit that monitors the occurrence of a failure, so that when a failure occurs, The learned failure recovery operation can be executed from any device. As a result, a database system and a database device having an excellent feature that, even when one or more of the application server and the database server have a failure, the learned failure recovery processing can be executed. A database failure recovery method and program can be provided.
(実施形態)
以下、本発明の実施形態の構成について添付図1〜3に基づいて説明する。
最初に、本実施形態の基本的な内容について説明し、その後でより具体的な内容について説明する。
本実施形態に係るデータベースシステム1は、現用系アプリケーションサーバ11および現用系データベースサーバ12を含むプライマリサイト2と、待機系アプリケーションサーバ21および待機系データベースサーバ22を含むセカンダリサイト3とがネットワーク4を介して接続されて構成されるデータベースシステムである。現用系アプリケーションサーバ11、現用系データベースサーバ12、待機系アプリケーションサーバ21および待機系データベースサーバ22がいずれも、相互に他装置と監視し合うサーバ状態監視部102,112,202,212を各々備え、各サーバ状態監視部が、データベースシステムを構成するいずれかのサーバに障害が発生した時に保守者が入力したコマンドをログとして記録し、このログの中から特定のパターンを抽出した学習データを発生した障害の症状を示すエラーコードと対応づけて予め備えられた記憶手段に記憶させ、かつ他の各サーバにもこの学習データを送付して記憶させるコマンド学習機能102aと、いずれかのサーバに障害が発生したことを検出する障害検出機能102bと、検出された障害と同一のエラーコードが学習データに記憶されているか否かを検索するエラーパターン検索機能102cと、検出された障害と同一のエラーコードが学習データに記憶されている場合に、そのエラーコードに対応するパターンのコマンドを現用系アプリケーションサーバに実行させる学習済コマンド実行機能102dとを有する。
(Embodiment)
Hereinafter, the configuration of an embodiment of the present invention will be described with reference to FIGS.
First, the basic content of the present embodiment will be described, and then more specific content will be described.
In the database system 1 according to this embodiment, a primary site 2 including an
ここで、コマンド学習機能102aは、ログから抽出されたパターンをユーザに提示し、該ユーザが選択したパターンを学習データとして記憶する。また、障害検出機能102bが各サーバのうちのいずれかに障害が発生したことを検出した場合に、その障害が発生したサーバが復旧したことを検出してからコマンド学習機能102aに学習データを送付させる。
Here, the
さらに、学習済コマンド実行機能102dが、現用系アプリケーションサーバ11がコマンドを実行できない場合に、待機系アプリケーションサーバ21にそのコマンドを実行させる。
Further, when the
以上の構成を備えることにより、データベースシステム1は、アプリケーションサーバおよびデータベースサーバの両方が1台以上で障害が発生した場合にも、学習された障害回復処理を実行することが可能となる。
以下、これをより詳細に説明する。
With the above configuration, the database system 1 can execute the learned failure recovery process even when a failure occurs in both of the application server and the database server.
Hereinafter, this will be described in more detail.
図1は、本発明の実施形態に係るデータベースシステム1の全体的な構成について示す説明図である。データベースシステム1は、プライマリサイト2(現用系)とセカンダリサイト3(待機系)とがネットワーク4を介して接続されて構成されている。ネットワーク4は、同一のサブネットマスクを有するネットワークである。 FIG. 1 is an explanatory diagram showing an overall configuration of a database system 1 according to an embodiment of the present invention. The database system 1 is configured by connecting a primary site 2 (active system) and a secondary site 3 (standby system) via a network 4. The network 4 is a network having the same subnet mask.
プライマリサイト2は、アプリケーションサーバ11と、データベースサーバ12と、ストレージ装置13とを含む。セカンダリサイト3も同様に、アプリケーションサーバ21と、データベースサーバ22と、ストレージ装置23とを含む。また、アプリケーションサーバ11および21は相互にサーバクラスタを構成し、同様にデータベースサーバ12および22も相互にサーバクラスタを構成する。
The primary site 2 includes an
プライマリサイト2とセカンダリサイト3はそれぞれ、多数のクライアント装置14a,b,c,…と24a,b,c,…を含む。また、アプリケーションサーバ11および21には各々、多くの周辺装置15a,b,c,…と25a,b,c,…が接続されている。これらについては、本実施形態を説明する上で特に必要ではないので、それらの詳しい構成についての説明はここでは省略する。
Each of the primary site 2 and the secondary site 3 includes a number of client devices 14a, b, c,... And 24a, b, c,. .. And 25a, b, c,... Are connected to the
図2は、図1に示したプライマリサイト2のより詳しい構成について示す説明図である。アプリケーションサーバ11およびデータベースサーバ12は、いずれも一般的なコンピュータ装置(サーバマシン)である。図2では物理的に別々のコンピュータであるものとしたが、アプリケーションサーバ11およびデータベースサーバ12を同一のコンピュータで構成してもよいし、またアプリケーションサーバ11もしくはデータベースサーバ12を複数台のコンピュータの組み合わせによって仮想的に構成してもよい。
FIG. 2 is an explanatory diagram showing a more detailed configuration of the primary site 2 shown in FIG. The
アプリケーションサーバ11は、コンピュータプログラムの実施主体であるプロセッサ11aと、コンピュータプログラムと動作データを記憶する記憶手段11bと、ネットワーク4と接続して他のコンピュータとの間でデータ通信を行う通信手段11cとを備える。データベースサーバ12も同様に、コンピュータプログラムの実施主体であるプロセッサ12aと、コンピュータプログラムと動作データを記憶する記憶手段12bと、ネットワーク4と接続して他のコンピュータとの間でデータ通信を行う通信手段12cとを備える。
The
アプリケーションサーバ11のプロセッサ11aでは、各クライアント装置からの処理依頼に基づいてアプリケーション(具体的にはウェブサーバ、業務システムなど)を動作させるアプリケーション動作部101が機能する。データベースサーバ12のプロセッサ12aでは、アプリケーション動作部101で動作するアプリケーションで処理されるデータをストレージ装置13に記憶させるデータベース動作部111が機能する。
In the
ストレージ装置13には、通常の磁気ディスクや半導体ディスクによる主ストレージ部13aと、テープ(QIC,DDS,DLT他)や光ディスクなどによるバックアップストレージ部13bとが含まれる。
The
さらに、アプリケーションサーバ11のプロセッサ11aとデータベースサーバ12のプロセッサ12aでは、互いに互いの動作を監視すると同時に、セカンダリサイト3のアプリケーションサーバ21およびデータベースサーバ22の動作を監視し、異常を検出した際にその異常から当該サーバを復旧させるサーバ状態監視部102および112がサーバプロセスとして同時に動作する。
Furthermore, the
そして、アプリケーションサーバ11の記憶手段11bとデータベースサーバ12の記憶手段12bには、サーバ状態監視部102および112が各々記憶させる学習データ103および113が記憶される。
The storage means 11b of the
図3は、図1に示したセカンダリサイト3のより詳しい構成について示す説明図である。セカンダリサイト3のアプリケーションサーバ21およびデータベースサーバ22は、いずれも一般的なコンピュータ装置(サーバマシン)である。
FIG. 3 is an explanatory diagram showing a more detailed configuration of the secondary site 3 shown in FIG. The
アプリケーションサーバ21、データベースサーバ22、およびストレージ装置23は、いずれもプライマリサイト2のアプリケーションサーバ11、データベースサーバ12、およびストレージ装置13と同一の構成を備え、ただハードウェア的には各要素の参照番号を+10、ソフトウェア的には各要素の参照番号を+100したのみである。各要素の呼称は全て同一である。従って、それらの詳しい構成についての説明はここでは省略する。
The
アプリケーションサーバ11のサーバ状態監視部102には、コマンド学習機能102a、障害検出機能102b、エラーパターン検索機能102c、学習済コマンド実行機能102d、といった各機能を備えている。データベースサーバ12、アプリケーションサーバ21、データベースサーバ22が各々備えるサーバ状態監視部112,202,212も、これらの各機能をそれぞれ備えているので、以後本明細書では、たとえばデータベースサーバ12のサーバ状態監視部112が備えるコマンド学習機能は「コマンド学習機能112a」などのように呼ぶことにする。
The server
図4は、図1に示したデータベースシステム1で、全ての構成要素が正常に動作している時に、各サーバの行う処理を学習する処理の流れについて示すシーケンス図である。図4では、保守者がプライマリサイト2のアプリケーションサーバ11に対して開始要求を発する例について示すが、この開始要求はアプリケーションサーバ11を直接操作して入力してもよいし、またプライマリサイト2側のクライアント装置14のいずれかからアプリケーションサーバ11にリモートアクセスして入力してもよい。さらにセカンダリサイト3のアプリケーションサーバ21に対しても、同様の開始要求によって図4と同様の動作をさせることも可能である。
FIG. 4 is a sequence diagram showing the flow of processing for learning the processing performed by each server when all the components are operating normally in the database system 1 shown in FIG. Although FIG. 4 shows an example in which the maintenance person issues a start request to the
開始要求を受けたサーバ状態監視部102のコマンド学習機能102aは(ステップS101)、動作ログの記録を開始しつつも他の各サーバのサーバ状態監視部、即ちプライマリサイト2側ではデータベースサーバ12のサーバ状態監視部112、セカンダリサイト3ではアプリケーションサーバ21のサーバ状態監視部202、およびデータベースサーバ22のサーバ状態監視部212の各々に対して開始要求を送信する(ステップS102a〜c)。
The
開始要求を受けたサーバ状態監視部112,202,212は、各々のコマンド学習機能112a,202a,212aによって各々動作ログの記録を開始して、開始要求に対する正常応答をサーバ状態監視部102に返す(ステップS103a〜c)。そしてサーバ状態監視部102のコマンド学習機能102aは保守者に対して正常応答を返す(ステップS104)。
The server
これで、アプリケーションサーバ11にユーザが入力し、そこから他のサーバに対して適宜転送される全てのコマンドに対して、そのコマンドと当該コマンドに対して行われた操作と返される応答について、各々のサーバ状態監視部102,112,202,212はログを記録する(ステップS105〜106)。図4では、アプリケーションサーバ11から他のサーバに転送されるコマンドとそれに対する他のサーバからの応答についての詳細な記載は省略している。
With respect to all commands that are input by the user to the
開始要求と同様にして、保守者が終了処理要求を入力すると(ステップS107)、サーバ状態監視部102が動作ログの記録を終了し、同時に他のサーバ状態監視部112,202,212の各々に対して終了処理要求を送信する(ステップS108a〜c)。終了処理要求を受けた他のサーバ状態監視部112,202,212は、各々動作ログの記録を終了して、記録した動作ログをサーバ状態監視部102に送信する(ステップS109a〜c)。
Similarly to the start request, when the maintenance person inputs an end processing request (step S107), the server
サーバ状態監視部102は、自らが記録した動作ログと他から受信した動作ログとから、エラーパターンを抽出して保守者に提示する(ステップS110)。この動作の詳細については後述する。
The server
そして保守者は、その中から学習すべきエラーパターンを選択して入力する(ステップS111)。サーバ状態監視部102は、そこで選択されたエラーパターンを学習データ103として記憶すると共に、他のサーバ状態監視部112,202,212の各々に対してそのエラーパターンを送付する(ステップS112a〜c)。各々のサーバ状態監視部102,112,202,212は、そのエラーパターンを受信して、各々学習データ113,203,213として記憶し、(ステップS113a〜c)、正常応答を返す(ステップS114)。
Then, the maintenance person selects and inputs an error pattern to be learned from among them (step S111). The server
図5は、図4のステップS110〜114の処理で保守者に提示されるエラーパターン、および記憶される学習データ103,113,203,213の一例について示す説明図である。ステップS110に示した処理では、発生したエラーの対象装置120aとエラーコード120b、そしてこれに対して各装置に実際に入力されたコマンド120cが保守者に提示される。
FIG. 5 is an explanatory diagram showing an example of the error pattern presented to the maintenance person in the process of steps S110 to 114 of FIG. 4 and the learning
これに対して保守者は、ステップS111に示した処理で、そのコマンド120cの中で実際に入力すべきものを選択し、またたとえば「ホスト名」や「プロセス名」などのような要素を「対象装置」「対象プロセス」などを示す変数に置き換えて入力する。これで入力されたデータが学習パターン120dとなり、エラーコード120bに対応づけられて、ステップS112〜114の処理で各装置の学習データ103,113,203,213として記憶される。
On the other hand, the maintenance person selects what should be actually input in the
ここで、実際に作成される学習データは、各装置ごとに異なるものである。アプリケーションサーバとデータベースサーバとで異なるコマンドが実行されるべきであり、同様にプライマリサイトとセカンダリサイトとでも異なるコマンドが実行されるべきだからである。しかしながら、この装置ごとに実行されるべきコマンドの相違点は当業者にはよく知られているので、細かい解説はここでは割愛する。 Here, the learning data actually created is different for each device. This is because different commands should be executed on the application server and the database server, and different commands should be executed on the primary site and the secondary site as well. However, since the difference in commands to be executed for each apparatus is well known to those skilled in the art, a detailed explanation is omitted here.
図6は、図1に示したデータベースシステム1で、全てのサーバ状態監視部102,112,202,212が正常に動作しているが、データベースサーバ12で障害が発生した場合の動作の流れについて示すシーケンス図である。データベースサーバ12ではサーバ状態監視部112がサーバプロセスとして動作しているので、この障害発生を障害検出機能112bが検出する(ステップS201)。
FIG. 6 shows the operation flow when all of the server
障害検出機能112bがこの障害発生を検出したら、これに反応したエラーパターン検索機能112cが、学習データ113の中に同一のエラーコード120bのものが登録されているか否かについて検索する(ステップS202)。登録されていなければ、そこでアプリケーションサーバ11に処理を停止するよう指示して、その障害発生を保守者に通知する(ステップS203)。その場合、保守者は図4に示した操作を行って、各サーバに対して障害対応を行うと共に、その障害対応の操作について学習させる。
When the
学習データ113の中に同一のエラーコード120bのものが登録されていれば、エラーパターン検索機能112cはアプリケーションサーバ11の学習済コマンド実行機能102dに、このエラーコード120bに対応する学習パターン120dのコマンドを実行するよう指示し、これに応じて学習済コマンド実行機能102dはその学習パターン120dを学習データ113から読み出して、各サーバの学習済コマンド実行機能102d,112d,202d,212dにその学習パターン120dによるコマンドを実行させる(ステップS204〜205)。
If the
ここで、学習済コマンドの実行を開始する主体はデータベースサーバ12でもよいが、このデータベースサーバ12の動作が停止している場合を想定して、ここではアプリケーションサーバ11をその主体としている。基本的に、この実行開始の主体はどのサーバでもよい。
Here, the subject that starts execution of the learned command may be the
その実行中も、コマンド学習機能102a,112a,202a,212aが図4のステップS105〜106と同様にログを記録しているので、学習済のコマンドの実行が一通り終了したら学習済コマンド実行機能102dは他のコマンド学習機能102a,112a,202a,212aに対して終了指示を行い(ステップS206a〜c)、これに応じて各々のコマンド学習機能102a,112a,202a,212aは記録したログを返送する(ステップS207a〜c)。そして学習済コマンド実行機能102dは処理結果をユーザに通知する(ステップS208)。
Even during the execution, the
図7は、図1に示したデータベースシステム1で、データベースサーバ12で障害が発生し、かつアプリケーションサーバ11も正常に動作していない場合の動作の流れについて示すシーケンス図である。この場合は、ステップS202までは図6と同一の動作となるが、ステップS203でエラーパターン検索機能112cがアプリケーションサーバ11に処理を停止するよう指示、またはステップS204で学習済コマンド実行機能102dにエラーコード120bに対応する学習パターン120dのコマンドを実行するよう指示したが、これに対する正常応答が返送されない。
FIG. 7 is a sequence diagram showing an operation flow when a failure occurs in the
そこでエラーパターン検索機能112cは、セカンダリサイト3のアプリケーションサーバ21に、学習データ113の中にエラーコード120bに対応する学習パターン120dが登録されていない場合はステップS203と同一の処理停止指示を送信して、その障害発生を保守者に通知する(ステップS251)。学習データ113の中にエラーコード120bに対応する学習パターン120dが登録されている場合は、ステップS204と同一のコマンド実行指示を送信して、学習済コマンド実行機能202dにその学習パターン120dのコマンドを実行させる(ステップS252〜3)。
Therefore, if the
以後は図6のステップS205以降と同一の動作を、アプリケーションサーバ21の学習済コマンド実行機能202dが行うこととなる。ただし、アプリケーションサーバ11は正常に動作していないので、ステップS207aのログが正常に送信されずタイムアウトとなる可能性がある。その場合も、その旨をログに記録し、保守者に通知する。
Thereafter, the learned
図8は、図1に示したデータベースシステム1で、現用系データベースサーバ12のサーバ状態監視部112が停止した場合の動作の流れについて示すシーケンス図である。アプリケーションサーバ11の障害検出機能102bは、周期的にデータベースサーバ12および22のサーバ状態監視部112および212に対して状態監視用の信号を送信しているので、この状態監視用信号に対する応答が無いことによってサーバ状態監視部112の停止を検出する(ステップS301)。
FIG. 8 is a sequence diagram showing an operation flow when the server
障害検出機能102bがこの障害発生を検出したら、これに反応したエラーパターン検索機能102cが、学習データ103の中にこのエラーと同一のエラーコード120bが登録されているか否かについて検索する(ステップS302)。登録されていなければ、図6のステップS203と同様に、自らの処理を停止して、その障害発生を保守者に通知する(ステップS303)。
When the
学習データ113の中に同一のエラーコード120bが登録されていれば、アプリケーションサーバ11の学習済コマンド実行機能102dがそのエラーコード120bに対応する学習パターン120dのコマンドを実行すると共に、図6のステップS204以後と同様にして他の学習済コマンド実行機能112d,202d,212dにもその学習パターン120dのコマンドを実行させる。以後は図6の動作と同一である。
If the
図9は、図1に示したデータベースシステム1で、待機系データベースサーバ22のサーバ状態監視部212が停止した場合の動作の流れについて示すシーケンス図である。これは、アプリケーションサーバ11の障害検出機能102bが停止を検出する対象がサーバ状態監視部212に変わる(ステップS351)だけで、あとは図8と同一の動作となる。
FIG. 9 is a sequence diagram showing an operation flow when the server
図10は、図1に示したデータベースシステム1で、現用系データベースサーバ12のサーバ状態監視部112が停止した場合に行う操作を学習する処理の流れについて示すシーケンス図である。より具体的には、図8のステップS303で、そのエラーコード120bが登録されていないことが保守者に通知された場合に、この状態に対して行う処理を学習することが必要となる。
FIG. 10 is a sequence diagram showing a flow of processing for learning an operation performed when the server
その場合も、図4と同一の動作によって各サーバに対して行った操作を学習する。そして、その学習の操作が終了した後、アプリケーションサーバ11の障害検出機能102bにサーバ状態監視部112が復旧したか否かを監視する動作、より具体的には状態監視用の信号を周期的に送信する動作を開始する(ステップS401)。
Also in that case, the operation performed on each server is learned by the same operation as in FIG. Then, after the learning operation is completed, an operation for monitoring whether or not the server
この信号に対する正常な応答が返ってきたら、サーバ状態監視部112が復旧したものと判断して(ステップS402)、コマンド学習機能102aはステップS112で送信できなかったエラーパターンをアプリケーションサーバ11に送付する(ステップS403)。これを受信したコマンド学習機能112aは、受信したエラーパターンを学習データ113として記憶して、正常応答を返す(ステップS404)。
If a normal response to this signal is returned, it is determined that the server
図11は、図1に示したデータベースシステム1で、待機系データベースサーバ22のサーバ状態監視部212が停止した場合に行う操作を学習する処理の流れについて示すシーケンス図である。これは、アプリケーションサーバ11の障害検出機能102bが復旧したか否かを検出する対象がサーバ状態監視部212に変わる(ステップS451〜454)だけで、あとは図10と同一の動作となる。
FIG. 11 is a sequence diagram illustrating a flow of processing for learning an operation performed when the server
図12は、図1に示したデータベースシステム1で、コマンド学習機能102aがシステム立ち上げの初期段階で行う処理について示す説明図である。まず、アプリケーションサーバ11のコマンド学習機能102aが、他のコマンド学習機能112a,202a,212aに対して、各サーバ固有の構成情報を要求する(ステップS501a〜c)。コマンド学習機能112a,202a,212aは各々、この要求に対してこの構成情報を送信する(ステップS502a〜c)。
FIG. 12 is an explanatory diagram showing processing performed by the
これを受けたコマンド学習機能102aは、受信した各々の構成情報を取りまとめてデータベースシステム1全体としての構成情報を作成して自ら学習データ103として記憶すると共に、これをコマンド学習機能112a,202a,212aに送信する(ステップS503a〜c)。コマンド学習機能112a,202a,212aは各々、これを学習データ113,203,213として記憶して正常応答を返す(ステップS504a〜c)。前述のように、実際に作成される学習データは各装置ごとに異なるものであるが、この実行されるべきコマンドの相違点は当業者にはよく知られているので、細かい解説はここでは割愛する。
Receiving this, the
(実施形態の全体的な動作)
次に、上記の実施形態の全体的な動作について説明する。
本実施形態に係る障害回復方法は、現用系アプリケーションサーバ11および現用系データベースサーバ12を含むプライマリサイト2と、待機系アプリケーションサーバ21および待機系データベースサーバ22を含むセカンダリサイト3とがネットワーク4を介して接続されて構成されるデータベースシステム4にあって、データベースシステムを構成するいずれかのサーバに障害が発生した時に保守者が入力したコマンドをデータベースシステムを構成する各サーバのコマンド学習機能がログとして記録し(図4・ステップS101〜109)、記録されたログの中から特定のパターンを抽出した学習データを発生した障害の症状を示すエラーコードと対応づけて各サーバのコマンド学習機能が予め備えられた記憶手段に記憶させると共に、他の各サーバにもこの学習データを送付して記憶させ(図4・ステップS110〜114)、いずれかのサーバに障害が発生したことを各サーバの障害検出機能が検出し(図6・ステップS201)、検出された障害と同一のエラーコードが学習データに記憶されているか否かを各サーバのエラーパターン検索機能が検索し(図6・ステップS202)、検出された障害と同一のエラーコードが学習データに記憶されている場合に、そのエラーコードに対応するパターンのコマンドを各サーバの学習済コマンド実行機能が現用系アプリケーションサーバに実行させる(図6・ステップS204〜205)。
(Overall operation of the embodiment)
Next, the overall operation of the above embodiment will be described.
In the failure recovery method according to the present embodiment, the primary site 2 including the
ここで、上記各動作ステップについては、これをコンピュータで実行可能にプログラム化し、これらを前記各ステップを直接実行する各サーバのプロセッサに実行させるようにしてもよい。本プログラムは、非一時的な記録媒体、例えば、DVD、CD、フラッシュメモリ等に記録されてもよい。その場合、本プログラムは、記録媒体からコンピュータによって読み出され、実行される。
この動作により、本実施形態は以下のような効果を奏する。
Here, each of the above operation steps may be programmed so as to be executable by a computer, and these may be executed by a processor of each server that directly executes each of the steps. The program may be recorded on a non-temporary recording medium, such as a DVD, a CD, or a flash memory. In this case, the program is read from the recording medium by a computer and executed.
By this operation, this embodiment has the following effects.
本実施形態によれば、発生した障害のエラーコードに対応するパターンが登録されていれば、そのパターンを自動的に実行して、復旧にかかる手間を軽減することが可能となる。かつ、そのパターンによる復旧は現用系と待機系のアプリケーションサーバおよび現用系データベースサーバのいずれからでも実行可能であるので、2つ以上のサーバで同時に障害が発生した場合でもそのパターンを実行できる。 According to the present embodiment, if a pattern corresponding to the error code of the failure that has occurred is registered, it is possible to automatically execute the pattern and reduce the effort required for recovery. In addition, since the recovery by the pattern can be executed from any of the active and standby application servers and the active database server, the pattern can be executed even when two or more servers are simultaneously failed.
従って、既存技術ではたとえば数十程度のコマンドの実行と数時間程度の時間を要していた復旧作業を、本実施形態では多くても数コマンド程度の実行で、数分程度で終わらせることができる。さらに、特に頻繁に発生する症状についてはすぐに学習して自動化して、保守者による操作自体を必要とせず、自動的に復旧させることができる。即ち、ヒューマンエラーの発生要因となる繁雑な作業を大幅に軽減して、発生した障害への対応を円滑に行うことが、本実施形態によって可能となる。 Therefore, for example, in the present embodiment, the restoration work, which requires about several tens of commands and several hours in the existing technology, can be completed in several minutes by executing several commands at most. it can. Furthermore, particularly frequently occurring symptoms can be learned and automated immediately, and can be automatically restored without requiring any operation by the maintenance personnel. That is, according to the present embodiment, it is possible to significantly reduce the complicated work that causes human error and to smoothly cope with the failure that has occurred.
(実施形態の拡張)
上記実施形態は、以上で説明した本発明の趣旨を改変しない範囲で、様々な拡張が可能である。以下、これについて説明する。
まず、上記実施形態ではプライマリサイト(現用系)とセカンダリサイト(待機系)が各々アプリケーションサーバおよびデータベースサーバを含むという構成について説明したが、実際の装置の区分は必ずしもこの例の通りである必要はない。たとえばアプリケーションサーバとデータベースサーバとが同一のコンピュータによって構成されてもよいし、逆に複数の物理的コンピュータによって仮想的に構成されるものであってもよい。さらに、セカンダリサイトが複数備えられていてもよい。
(Extended embodiment)
The above-described embodiment can be variously expanded without departing from the spirit of the present invention described above. This will be described below.
First, in the above-described embodiment, the configuration in which the primary site (active system) and the secondary site (standby system) each include an application server and a database server has been described. However, the actual device classification need not necessarily be as in this example. Absent. For example, the application server and the database server may be configured by the same computer, or conversely may be configured by a plurality of physical computers. Furthermore, a plurality of secondary sites may be provided.
これまで本発明について図面に示した特定の実施形態をもって説明してきたが、本発明は図面に示した実施形態に限定されるものではなく、本発明の効果を奏する限り、これまで知られたいかなる構成であっても採用することができる。 The present invention has been described with reference to the specific embodiments shown in the drawings. However, the present invention is not limited to the embodiments shown in the drawings, and any known hitherto provided that the effects of the present invention are achieved. Even if it is a structure, it is employable.
本発明は、アプリケーションサーバとデータベースサーバとを組み合わせた構造のウェブシステムに適用できる。たとえば電子商取引システムや業務システム等において、可用性を向上させる用途に特に適している。 The present invention can be applied to a web system having a structure in which an application server and a database server are combined. For example, it is particularly suitable for applications that improve availability in e-commerce systems and business systems.
1 データベースシステム
2 プライマリサイト
3 セカンダリサイト
4 ネットワーク
11、21 アプリケーションサーバ
11a、12a、21a、22a プロセッサ
11b、12b、21b、22b 記憶手段
11c、12c、21c、22c 通信手段
12、22 データベースサーバ
13、23 ストレージ装置
13a、23a 主ストレージ部
13b、23b バックアップストレージ部
14a、24a クライアント装置
15a、25a 周辺装置
101、201 アプリケーション動作部
102、112、202、212 サーバ状態監視部
102a、112a、202a、212a コマンド学習機能
102b、112b、202b、212b 障害検出機能
102c、112c、202c、212c エラーパターン検索機能
102d、112d、202d、212d 学習済コマンド実行機能
111、211 データベース動作部
103、113、203、213 学習データ
120a 対象装置
120b エラーコード
120c コマンド
120d 学習パターン
DESCRIPTION OF SYMBOLS 1 Database system 2 Primary site 3 Secondary site 4
Claims (7)
前記現用系アプリケーションサーバ、前記現用系データベースサーバ、前記待機系アプリケーションサーバおよび前記待機系データベースサーバがいずれも、相互に他装置と監視し合うサーバ状態監視部を各々備え、
前記各サーバ状態監視部が、
前記データベースシステムを構成するいずれかのサーバに障害が発生した時に保守者が入力したコマンドをログとして記録し、このログの中から特定のパターンを抽出した学習データを発生した前記障害の症状を示すエラーコードと対応づけて予め備えられた記憶手段に記憶させ、かつ他の各サーバにもこの学習データを送付して記憶させるコマンド学習機能と、
前記いずれかのサーバに障害が発生したことを検出する障害検出機能と、
検出された前記障害と同一の前記エラーコードが前記学習データに記憶されているか否かを検索するエラーパターン検索機能と、
検出された前記障害と同一の前記エラーコードが前記学習データに記憶されている場合に、そのエラーコードに対応する前記パターンのコマンドを前記現用系アプリケーションサーバに実行させる学習済コマンド実行機能と
を有することを特徴とするデータベースシステム。 A database system configured by connecting a primary site including an active application server and an active database server and a secondary site including a standby application server and a standby database server via a network,
Each of the active application server, the active database server, the standby application server, and the standby database server each includes a server state monitoring unit that monitors each other,
Each of the server status monitoring units
A command input by a maintenance person when a failure occurs in any of the servers constituting the database system is recorded as a log, and a symptom of the failure in which learning data is generated by extracting a specific pattern from the log is indicated. A command learning function for storing in a storage means provided in advance in association with an error code, and sending and storing this learning data to each of the other servers;
A failure detection function for detecting that a failure has occurred in any of the servers;
An error pattern search function for searching whether or not the same error code as the detected fault is stored in the learning data;
A learning command execution function for causing the active application server to execute a command of the pattern corresponding to the error code when the error code that is the same as the detected failure is stored in the learning data; A database system characterized by that.
前記ログから抽出された前記パターンをユーザに提示し、該ユーザが選択したパターンを前記学習データとして記憶することを特徴とする、請求項1に記載のデータベースシステム。 The command learning function is
The database system according to claim 1, wherein the pattern extracted from the log is presented to a user, and the pattern selected by the user is stored as the learning data.
前記現用系アプリケーションサーバが前記コマンドを実行できない場合に、前記待機系アプリケーションサーバに前記コマンドを実行させることを特徴とする、請求項1に記載のデータベースシステム。 The learned command execution function is
The database system according to claim 1, wherein when the active application server cannot execute the command, the standby application server executes the command.
相互に他装置と監視し合うサーバ状態監視部を備えると共に、
このサーバ状態監視部が、
前記データベースシステムを構成するいずれかのサーバに障害が発生した時に保守者が入力したコマンドをログとして記録し、このログの中から特定のパターンを抽出した学習データを発生した前記障害の症状を示すエラーコードと対応づけて予め備えられた記憶手段に記憶させ、かつ他の各サーバにもこの学習データを送付して記憶させるコマンド学習機能と、
前記いずれかのサーバに障害が発生したことを検出する障害検出機能と、
検出された前記障害と同一の前記エラーコードが前記学習データに記憶されているか否かを検索するエラーパターン検索機能と、
検出された前記障害と同一の前記エラーコードが前記学習データに記憶されている場合に、そのエラーコードに対応する前記パターンのコマンドを前記現用系アプリケーションサーバに実行させる学習済コマンド実行機能とを有することを特徴とするデータベース装置。 A database system comprising a primary site including an active application server and an active database server and a secondary site including a standby application server and a standby database server connected via a network, wherein the active database server or A database device capable of functioning as the standby database server,
A server status monitoring unit that mutually monitors other devices,
This server status monitoring unit
A command input by a maintenance person when a failure occurs in any of the servers constituting the database system is recorded as a log, and a symptom of the failure in which learning data is generated by extracting a specific pattern from the log is indicated. A command learning function for storing in a storage means provided in advance in association with an error code, and sending and storing this learning data to each of the other servers;
A failure detection function for detecting that a failure has occurred in any of the servers;
An error pattern search function for searching whether or not the same error code as the detected fault is stored in the learning data;
A learning command execution function for causing the active application server to execute a command of the pattern corresponding to the error code when the error code that is the same as the detected failure is stored in the learning data; A database apparatus characterized by that.
前記データベースシステムを構成するいずれかのサーバに障害が発生した時に保守者が入力したコマンドを前記データベースシステムを構成する各サーバのコマンド学習機能がログとして記録し、
記録された前記ログの中から特定のパターンを抽出した学習データを発生した前記障害の症状を示すエラーコードと対応づけて前記各サーバのコマンド学習機能が予め備えられた記憶手段に記憶させると共に、他の各サーバにもこの学習データを送付して記憶させ、
前記いずれかのサーバに障害が発生したことを前記各サーバの障害検出機能が検出し、
検出された前記障害と同一の前記エラーコードが前記学習データに記憶されているか否かを各サーバのエラーパターン検索機能が検索し、
検出された前記障害と同一の前記エラーコードが前記学習データに記憶されている場合に、そのエラーコードに対応する前記パターンのコマンドを前記各サーバの学習済コマンド実行機能が前記現用系アプリケーションサーバに実行させる
ことを特徴とする障害回復方法。 In a database system configured by connecting a primary site including an active application server and an active database server and a secondary site including a standby application server and a standby database server via a network,
The command learning function of each server constituting the database system records a command input by a maintenance person when a failure occurs in any server constituting the database system as a log,
The learning data obtained by extracting a specific pattern from the recorded log is associated with an error code indicating the symptom of the failure that has occurred and stored in a storage means provided in advance with a command learning function of each server, Send this learning data to each other server for storage,
The failure detection function of each server detects that a failure has occurred in any of the servers,
The error pattern search function of each server searches whether or not the same error code as the detected failure is stored in the learning data,
When the same error code as the detected failure is stored in the learning data, the learned command execution function of each server sends the pattern command corresponding to the error code to the active application server. A failure recovery method characterized by being executed.
前記データベースシステムを構成する各サーバが備えるプロセッサに、
前記データベースシステムを構成するいずれかのサーバに障害が発生した時に保守者が入力したコマンドをログとして記録する手順、
記録された前記ログの中から特定のパターンを抽出した学習データを発生した前記障害の症状を示すエラーコードと対応づけて予め備えられた記憶手段に記憶させると共に、他の各サーバにもこの学習データを送付して記憶させる手順、
前記いずれかのサーバに障害が発生したことを検出する手順、
検出された前記障害と同一の前記エラーコードが前記学習データに記憶されているか否かを検索する手順、
および検出された前記障害と同一の前記エラーコードが前記学習データに記憶されている場合に、そのエラーコードに対応する前記パターンのコマンドを前記現用系アプリケーションサーバに実行させる手順
を実行させることを特徴とする障害回復プログラム。 In a database system configured by connecting a primary site including an active application server and an active database server and a secondary site including a standby application server and a standby database server via a network,
In the processor provided in each server constituting the database system,
A procedure for recording a command entered by a maintenance person as a log when a failure occurs in any of the servers constituting the database system;
The learning data obtained by extracting a specific pattern from the recorded log is stored in the storage means provided in advance in association with the error code indicating the symptom of the failure that has occurred, and the learning is also performed in each of the other servers. Procedure to send and memorize data,
A procedure for detecting that one of the servers has failed;
A procedure for searching whether or not the same error code as the detected fault is stored in the learning data;
When the error code that is the same as the detected failure is stored in the learning data, a procedure for causing the active application server to execute the command of the pattern corresponding to the error code is executed. Disaster recovery program.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012224147A JP6070040B2 (en) | 2012-10-09 | 2012-10-09 | Database system, database device, database failure recovery method and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012224147A JP6070040B2 (en) | 2012-10-09 | 2012-10-09 | Database system, database device, database failure recovery method and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014078067A true JP2014078067A (en) | 2014-05-01 |
JP6070040B2 JP6070040B2 (en) | 2017-02-01 |
Family
ID=50783343
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012224147A Active JP6070040B2 (en) | 2012-10-09 | 2012-10-09 | Database system, database device, database failure recovery method and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6070040B2 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019112986A1 (en) * | 2017-12-04 | 2019-06-13 | Nec Laboratories America, Inc. | Efficient event searching |
WO2020031653A1 (en) * | 2018-08-07 | 2020-02-13 | 日本電信電話株式会社 | Operation sequence generation device, operation sequence generation method and program |
JP7472628B2 (en) | 2020-04-28 | 2024-04-23 | 日本電信電話株式会社 | Fault recovery device, fault recovery method and program |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050015678A1 (en) * | 1999-05-10 | 2005-01-20 | Handsfree Networks, Inc. | System for automated problem detection, diagnosis, and resolution in a software driven system |
JP2005228004A (en) * | 2004-02-12 | 2005-08-25 | Nec Fielding Ltd | Computer remote diagnosis and restoration system, server, program, and method |
JP2007272328A (en) * | 2006-03-30 | 2007-10-18 | Bank Of Tokyo-Mitsubishi Ufj Ltd | Computer system |
JP2012168907A (en) * | 2011-02-17 | 2012-09-06 | Nec Corp | Mutual monitoring system |
-
2012
- 2012-10-09 JP JP2012224147A patent/JP6070040B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050015678A1 (en) * | 1999-05-10 | 2005-01-20 | Handsfree Networks, Inc. | System for automated problem detection, diagnosis, and resolution in a software driven system |
JP2005228004A (en) * | 2004-02-12 | 2005-08-25 | Nec Fielding Ltd | Computer remote diagnosis and restoration system, server, program, and method |
JP2007272328A (en) * | 2006-03-30 | 2007-10-18 | Bank Of Tokyo-Mitsubishi Ufj Ltd | Computer system |
JP2012168907A (en) * | 2011-02-17 | 2012-09-06 | Nec Corp | Mutual monitoring system |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019112986A1 (en) * | 2017-12-04 | 2019-06-13 | Nec Laboratories America, Inc. | Efficient event searching |
WO2020031653A1 (en) * | 2018-08-07 | 2020-02-13 | 日本電信電話株式会社 | Operation sequence generation device, operation sequence generation method and program |
JP2020024538A (en) * | 2018-08-07 | 2020-02-13 | 日本電信電話株式会社 | Operation string generating device, operation string generating method and program |
JP7472628B2 (en) | 2020-04-28 | 2024-04-23 | 日本電信電話株式会社 | Fault recovery device, fault recovery method and program |
Also Published As
Publication number | Publication date |
---|---|
JP6070040B2 (en) | 2017-02-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102268355B1 (en) | Cloud deployment infrastructure validation engine | |
US8910172B2 (en) | Application resource switchover systems and methods | |
US10489232B1 (en) | Data center diagnostic information | |
CN107660289B (en) | Automatic network control | |
JP4598065B2 (en) | Monitoring simulation apparatus, method and program thereof | |
WO2013140608A1 (en) | Method and system that assist analysis of event root cause | |
JP6095140B2 (en) | Remote monitoring system, remote monitoring method, and program | |
US20120109919A1 (en) | High availability database management system and database management method using same | |
JP5058582B2 (en) | Multipath system of storage device, failure location identification method and program | |
JP5425720B2 (en) | Virtualization environment monitoring apparatus and monitoring method and program thereof | |
JP6070040B2 (en) | Database system, database device, database failure recovery method and program | |
JP6558037B2 (en) | Operation management program, operation management method, and operation management apparatus | |
JP2007299213A (en) | Raid controller and fault monitoring method | |
WO2011051999A1 (en) | Information processing device and method for controlling information processing device | |
JP2017054288A (en) | Remote maintenance service system | |
US7437445B1 (en) | System and methods for host naming in a managed information environment | |
CA2758682C (en) | Plant control system, data to be equalized selection apparatus, and data to be equalized selection method | |
JP2005258501A (en) | Obstacle influence extent analyzing system, obstacle influence extent analyzing method and program | |
JP2007257581A (en) | Failure analysis device | |
EP3852424B1 (en) | Application resilience for applications deployed on a cloud platform | |
JP4575020B2 (en) | Failure analysis device | |
Chan et al. | Debugging incidents in Google's distributed systems | |
JP2018169920A (en) | Management device, management method and management program | |
WO2020100634A1 (en) | Restoration support device, restoration support method, and program | |
JP2015106226A (en) | Dual system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150909 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20160615 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160726 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160902 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20161206 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20161219 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6070040 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |