JP4911063B2 - Database state monitoring apparatus, method, and program - Google Patents
Database state monitoring apparatus, method, and program Download PDFInfo
- Publication number
- JP4911063B2 JP4911063B2 JP2008037073A JP2008037073A JP4911063B2 JP 4911063 B2 JP4911063 B2 JP 4911063B2 JP 2008037073 A JP2008037073 A JP 2008037073A JP 2008037073 A JP2008037073 A JP 2008037073A JP 4911063 B2 JP4911063 B2 JP 4911063B2
- Authority
- JP
- Japan
- Prior art keywords
- database
- state
- processing
- access
- monitoring
- 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.)
- Expired - Fee Related
Links
- 238000012544 monitoring process Methods 0.000 title claims description 131
- 238000000034 method Methods 0.000 title claims description 103
- 230000008569 process Effects 0.000 claims description 87
- 230000002159 abnormal effect Effects 0.000 claims description 56
- 230000004044 response Effects 0.000 claims description 24
- 238000012806 monitoring device Methods 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 2
- 230000004043 responsiveness Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
Landscapes
- Debugging And Monitoring (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
本発明は、データベース状態監視装置、方法、及び、プログラムに関し、更に詳しくは、クラスタ構成を取るデータベースの稼動状態を監視するデータベース状態監視装置、方法、及び、プログラムに関する。 The present invention relates to a database state monitoring apparatus, method, and program, and more particularly, to a database state monitoring apparatus, method, and program for monitoring the operating state of a database having a cluster configuration.
近年、データベースの可用性向上のため、データベースを全現用のクラスタ構成にすることが増えてきている(例えば、特許文献1)。クラスタ構成のデータベースでは、1つのデータベースが障害となったとき、稼働中の他のデータベースが障害となったデータベースの処理を引き継ぐことで、処理の継続が可能である。 In recent years, in order to improve the availability of a database, an increasing number of databases are used in a cluster configuration (for example, Patent Document 1). In the case of a database having a cluster configuration, when one database fails, processing can be continued by taking over the processing of the failed database by another operating database.
特許文献1では、2つのデータベースを、同一構成及び同一データとしておく。一方のデータベースには、IPアドレス1でアクセスし、他方のデータベースには、IPアドレス2でアクセスする。例えば、IPアドレス1のデータベースにて障害が発生したときは、IPアドレス2のデータベースに、IPアドレス1を追加設定する。特許文献1では、このようにすることで、IPアドレスのみで、フェイルオーバが可能であるとしている。
クラスタ構成にて、一部のデータベースに障害が発生した場合、障害となったデータベースが行っていた処理を、稼働中の他のデータベースに引き継ぐ必要がある。この障害を検出してから、障害となったデータベースで行っていた処理を引き継ぐまでの間は、処理要求を受け付けても実際には処理を実行できないので、引き継ぎの完了まで「待ちの状態」となる。いわば、「正常」でも「異常」でもない状態が存在することとなる。しかし、一般に、データベースの稼動状態は、「正常」、「異常」の2種類で管理されており、データベースへのアクセスが待たされる状態(以下、この状態を「再構成中」とも呼ぶ)も、正常又は異常の何れか一方として取り扱われている。 When a failure occurs in some databases in a cluster configuration, the processing performed by the failed database must be taken over by another operating database. After detecting this failure and before taking over the processing that was being performed on the failed database, even if a processing request is accepted, the processing cannot actually be executed. Become. In other words, a state that is neither “normal” nor “abnormal” exists. However, in general, the operating state of the database is managed in two types, “normal” and “abnormal”, and a state in which access to the database is awaited (hereinafter, this state is also referred to as “reconfiguring”), Treated as either normal or abnormal.
「再構成中」を、「正常」又は「異常」として取り扱うことで、以下に説明する問題点が発生する。すなわち、「再構成」状態を正常として扱った場合、高いリアルタイム性を求められる処理が「待たされる」ことで、エンドユーザへの即応性が低くなるという問題が発生する。また、後続の処理要求が滞留することで、キュー溢れに繋がることもある。一方、「再構成中」を異常として扱った場合、全ての業務処理について、要求が受け付けられなくなるので、待てば業務の継続が可能な処理についても処理が異常終了し、業務継続性が低下するという問題が発生する。特に、バッチ処理などのリアルタイム性が求められない処理については、処理再開まで待つ時間的余裕があるので、処理継続性を優先したいにもかかわらず、処理が異常終了していた。 The problem described below occurs when “reconstructing” is handled as “normal” or “abnormal”. That is, when the “reconfigured” state is treated as normal, a process that requires high real-time performance is “waited”, resulting in a problem that the responsiveness to the end user is lowered. Further, the subsequent processing request may be accumulated, resulting in a queue overflow. On the other hand, if “Restructuring” is treated as an error, requests cannot be accepted for all business processes, so the process can be terminated abnormally even if it is possible to continue the business, and business continuity is reduced. The problem occurs. In particular, for a process that does not require real-time performance, such as batch processing, there is time to wait until the process is restarted, and thus the process has ended abnormally even though priority is given to process continuity.
特許文献1においても、IPアドレスの設定、及び、データベース同期化の際に、引継ぎまでの処理待ちが発生する。特許文献1は、データベースの一部が障害にて停止した場合でも、データ要求側でフェイルオーバを意識することなく、処理を継続するものである。このため、特にデータ要求側でデータベースサーバの故障発生は検出していない。従って、特許文献1では、「再構成中」を「正常」と取り扱う場合と同様に、フェイルオーバ中も処理の受け付けが継続し、処理が待たされることで、上記と同様な問題が発生する。
Also in
従来は、サーバの稼動状態を、「正常」、「異常」の2種類で検出しており、「再構成中」の状態を認識することができなかった。「再構成中」の状態を検出可能であれば、要求発行元のアプリケーションの性質に応じて、処理要求に対する対応を変えるという制御を行うことが可能となる。しかし、「再構成中」の状態を検出することがないので、そのような制御は不可能であった。 Conventionally, the operating state of the server is detected with two types of “normal” and “abnormal”, and the “reconfiguring” state cannot be recognized. If it is possible to detect the state of “reconfiguring”, it is possible to perform control to change the response to the processing request in accordance with the nature of the application that issued the request. However, such a control is not possible because the “reconfiguration” state is not detected.
本発明は、データベースが「正常」でも「異常」でもない「再構成中」の状態の検出を可能としたデータベース状態監視装置、データベースシステム、方法、及び、プログラムを提供することを目的とする。 An object of the present invention is to provide a database state monitoring apparatus, a database system, a method, and a program capable of detecting a state of “reconstructing” in which a database is neither “normal” nor “abnormal”.
上記目的を達成するために、本発明のデータベース状態監視装置は、複数のデータベースノードによりクラスタが構成されるデータベースシステムを監視し、前記データベースシステム上で実行されるアプリケーションのデータベースに対する処理を制御するデータベース状態監視装置であって、前記データベースノードのそれぞれで、監視対象のデータベースへアクセスし、各データベースノードのデータベースの稼動状態が、正常動作状態を示す「正常」、異常動作状態を示す「異常」、又は、データベースアクセスに処理待ちが発生する状態を示す「再構成中」の何れであるかを判定する監視部と、前記アプリケーションからの処理要求に基づくデータベースの稼働状態の照会を処理実行部から受けると、照会対象のデータベースを監視する前記監視部から該データベースの稼動状態を取得し、前記処理実行部に返却する状態情報参照部と、を備え、前記処理実行部は、前記アプリケーションから処理要求を受けると、該アプリケーションの種別が第1の分類と第2の分類の何れに属するかを判定し、前記状態情報参照部により返却された照会対象のデータベースの稼働状態が「再構成中」である場合には、第1の分類に属するアプリケーションの処理要求に対してエラー処理を行い、第2の分類に属するアプリケーションの処理要求に対しては処理対象のデータベースへのアクセス処理を行う、ことを特徴とする。 In order to achieve the above object, a database state monitoring apparatus of the present invention monitors a database system in which a cluster is constituted by a plurality of database nodes, and controls a process for a database of an application executed on the database system. a condition monitoring apparatus, each of said database nodes, and access to the monitored database, operating state of the database of the database node, indicating the normal operating state "normal", indicating an abnormal operating condition "abnormal" or a monitoring unit for determining which of "during the reconstruction" indicating a state where the process waits occurs database access, the process execution unit queries the operating state of the database based on the processing request from the application When received, supervise the database to be queried. The Get the operating state of the database from the monitoring unit for, and a state information reference unit to be returned to the processing execution section, the processing execution unit receives a processing request from the application, the type of the application It is determined whether it belongs to the first classification or the second classification, and when the operation state of the database to be inquired returned by the state information reference unit is “reconstructing”, the first classification An error process is performed on a process request of an application belonging to the database, and an access process to a processing target database is performed on a process request of an application belonging to the second category .
本発明のデータベースシステムは、複数のデータベースノードによりクラスタが構成されるデータベースを含むデータベースシステムであって、前記データベースノードのそれぞれで、監視対象のデータベースへアクセスし、各データベースノードのデータベースの稼動状態が、正常動作状態を示す「正常」、異常動作状態を示す「異常」、又は、データベースアクセスに処理待ちが発生する状態を示す「再構成中」の何れであるかを判定する監視部と、前記データベースシステム上で実行されるアプリケーションからの処理要求に基づくデータベースの稼働状態の照会を処理実行部から受けると、照会対象のデータベースを監視する前記監視部から該データベースの稼動状態を取得し、前記処理実行部に返却する状態情報参照部と、を備え、前記処理実行部は、前記アプリケーションから処理要求を受けると、該アプリケーションの種別が第1の分類と第2の分類の何れに属するかを判定し、前記状態情報参照部により返却された照会対象のデータベースの稼働状態が「再構成中」である場合には、第1の分類に属するアプリケーションの処理要求に対してエラー処理を行い、第2の分類に属するアプリケーションの処理要求に対しては処理対象のデータベースへのアクセス処理を行う、ことを特徴とする。 Database system of the present invention is a database system comprising a database cluster is composed of a plurality of database nodes, each of said database nodes, and access to the monitored database, operating state of the database of each database node but showing a normal operating state "normal", indicating an abnormal operating condition "abnormal", or, a monitoring unit for determining which of "during the reconstruction" indicating the state of pending database access occurs, When kicking process execution unit or we received an inquiry operating state of the processing based on the request database from an application running on the database system, the operating state of the database from the monitoring unit to monitor the database being queried get, and a state information reference unit to be returned to the process execution unit When the processing execution unit receives a processing request from the application, the processing execution unit determines whether the type of the application belongs to the first classification or the second classification, and the inquiry target returned by the state information reference unit When the operating state of the database is “being reconfigured”, error processing is performed for processing requests of applications belonging to the first category, and processing targets are processed for processing requests of applications belonging to the second category The database access processing is performed .
本発明のデータベース状態監視方法は、コンピュータを用いて、複数のデータベースノードによりクラスタが構成されるデータベースシステムを監視し、前記データベースシステム上で実行されるアプリケーションのデータベースへのアクセスを制御する方法であって、前記コンピュータが、前記データベースノードのそれぞれで、監視対象のデータベースへアクセスし、各データベースノードのデータベースの稼動状態が、正常動作状態を示す「正常」、異常動作状態を示す「異常」、又は、データベースアクセスに処理待ちが発生する状態を示す「再構成中」の何れであるかを判定するステップと、前記コンピュータが、前記アプリケーションからの処理要求が発生すると、処理対象のデータベースの稼動状態を取得し、該取得した稼動状態に応じて、前記アプリケーションの処理要求に対してエラー処理又はデータベースへのアクセス処理を行うステップと、を有し、前記エラー処理又はデータベースへのアクセス処理を行うステップでは、前記コンピュータが、処理要求を行ったアプリケーションの種別が第1の分類と第2の分類の何れに属するかを判定し、前記取得したデータベースの稼働状態が「再構成中」である場合には、第1の分類に属するアプリケーションの処理要求に対してエラー処理を行い、第2の分類に属するアプリケーションの処理要求に対してはデータベースへのアクセス処理を行う、ことを特徴とする。 The database status monitoring method of the present invention is a method for controlling access to a database of an application executed on the database system by monitoring a database system in which a cluster is constituted by a plurality of database nodes using a computer. Te, wherein the computer, in each of the database node, to access to the monitored database, operating state of the database of the database node, indicating the normal operating state "normal", indicating an abnormal operating condition "abnormal", or the steps of determining which of "during the reconstruction" indicating a state where the process waits is generated in the database access, the computer, the processing request from the application is generated, the operating state of the processing target database And get the operation Depending on the state, have a, and performing access processing to the error processing or database to the processing request for the application, in the step of performing access processing to the error processing or database, the computer, the processing request It is determined whether the type of the application that has been performed belongs to the first classification or the second classification, and if the acquired database operating state is “reconfiguring”, it belongs to the first classification Error processing is performed on application processing requests, and database access processing is performed on application processing requests belonging to the second category .
本発明のプログラムは、コンピュータに、複数のデータベースノードによりクラスタが構成されるデータベースシステムを監視し、前記データベースシステム上で実行されるアプリケーションのデータベースへのアクセスを制御する処理を実行させるプログラムであって、前記コンピュータに、前記データベースノードのそれぞれで、監視対象のデータベースへアクセスし、各データベースノードのデータベースの稼動状態が、正常動作状態を示す「正常」、異常動作状態を示す「異常」、又は、データベースアクセスに処理待ちが発生する状態を示す「再構成中」の何れであるかを判定する処理と、前記アプリケーションからの処理要求が発生すると、処理対象のデータベースの稼動状態を取得し、該取得した稼動状態に応じて、前記アプリケーションの処理要求に対してエラー処理又はデータベースへのアクセス処理を行う処理と、を実行させ、前記エラー処理又はデータベースへのアクセス処理を行う処理では、前記コンピュータに、処理要求を行ったアプリケーションの種別が第1の分類と第2の分類の何れに属するかを判定し、取得したデータベースの稼働状態が「再構成中」である場合には、第1の分類に属するアプリケーションの処理要求に対してエラー処理を行い、第2の分類に属するアプリケーションの処理要求に対してはデータベースへのアクセス処理を行う処理を、実行させることを特徴とする。 The program according to the present invention is a program for causing a computer to monitor a database system including a plurality of database nodes and to execute processing for controlling access to a database of an application executed on the database system. , the computer, in each of the database node, to access to the monitored database, operating state of the database of the database node, "normal" which indicates a normal operating condition, indicating an abnormal operating condition "abnormal", or a process of determining which of "during the reconstruction" indicating a state where the process waits is generated in the database access, the processing request is generated from the application to acquire the operating state of the database to be processed, the Depending on the acquired operating status, A process of performing an access process to the error processing or database for application processing request, is executed, the process for performing access processing to the error processing or database, the computer, the type of application that made the processing request Is determined to belong to the first classification or the second classification, and if the operating state of the acquired database is “reconfiguring”, in response to the processing request of the application belonging to the first classification Error processing is performed, and processing for performing database access processing is executed for processing requests of applications belonging to the second category .
本発明のデータベース状態監視装置、データベースシステム、方法、及び、プログラムは、データベースが「正常」でも「異常」でもない「再構成中」の状態の検出が可能である。 The database state monitoring apparatus, database system, method, and program of the present invention can detect a state of “reconstructing” in which the database is neither “normal” nor “abnormal”.
以下、図面を参照し、本発明の実施の形態を詳細に説明する。図1は、本発明のデータベース状態監視装置を含むデータベースシステムを示している。本実施形態では、データベースはクラスタ構成を取っており、n台構成(nは2以上の整数)のクラスタとして説明を行う。データベース状態監視装置10は、状態情報参照部12、状態保有部13、監視情報収集部14、及び、監視部15−1〜15−nを有する。データベースシステムは、データベース状態監視装置10と、n個のデータベースノード50(50−1〜50−n)を有する。データベース状態監視装置10及びデータベースシステムの機能は、コンピュータ上で所定のプログラムを実行することで実現できる。
Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. FIG. 1 shows a database system including a database state monitoring apparatus according to the present invention. In the present embodiment, the database has a cluster configuration, and will be described as a cluster of n units (n is an integer of 2 or more). The database
各監視部15は、各データベースノード50上に配置されている。監視部15は、同一ノード上のデータベースの状態を定期的に監視し、結果を、監視情報収集部14に送信する。監視では、データベースのプロセスの死活監視、及び、トランザクション実行のレスポンスタイム監視を行い、2つの結果から、「正常」、「異常」、「再構成中」を判断する。監視情報収集部14は、クラスタ構成を取っている全てのデータベースノード50−1〜50−nに存在する監視部15−1〜15−nから、各データベースの状態情報を収集し、状態保有部13に登録する。
Each
状態保有部13は、監視情報収集部14が収集した情報を一元管理し、データベースごとに、「正常」、「異常」、「再構成中」の何れかを保持する。また、状態情報参照部12からのリクエストに応じて、データベースの一覧及び状態情報を返却する。状態情報参照部12は、アプリケーションプログラムから要求を受け付け、状態保有部13から必要な情報を取得して、取得した情報をアプリケーションプログラムに返却する。
The
アプリケーションプログラムとしては、リアルタイム処理を行うアプリケーション51と、バッチ処理を行うアプリケーション52とを考える。リアルタイム処理を行うアプリケーション51は、高いリアルタイム性が要求される第1の分類のアプリケーションに相当し、バッチ処理を行うアプリケーション52は、さほどリアルタイム性が要求されない第2の分類のアプリケーションに相当する。
As application programs, an
アプリケーションプログラムは、データベースへアクセスする際に、状態情報参照部12からデータベース状態を取得する。リアルタイム処理を行うアプリケーション51は、取得したデータベース状態が「正常」である場合のみ、データベースへのアクセスを行い、エンドユーザにサービスを提供する。「異常」又は「再構成中」の場合は、データベースへのアクセスは行わずに、異常終了させる。バッチ処理を行うアプリケーション52は、取得したデータベース状態が「正常」又は「再構成中」の場合は、データベースへのアクセスを行う。「異常」の場合は、処理を異常終了させる。
The application program acquires the database state from the state information reference unit 12 when accessing the database. The
図2に、監視部15の構成を示す。監視部15は、状態判断部21、プロセス監視部22、及び、DBアクセス状態監視部23を有する。プロセス監視部22は、データベースのプロセス群を監視する。DBアクセス状態監視部23は、データベースへのアクセスを行うことで、データベースの状態をチェックする。状態判断部21は、プロセス監視部22とDBアクセス状態監視部23の監視結果から、データベースの稼動状態が、「正常」、「異常」、「再構成中」の何れであるかを判断する。
FIG. 2 shows the configuration of the
図3に、監視部15の動作手順を示す。状態判断部21は、プロセス監視部22に、データベースにおけるプロセスの状態を問い合わせる(ステップA1)。状態判断部21からの問合せを受けると、監視対象のデータベースを構成するプロセスが存在するか否かをチェックし、監視対象のプロセスが全て存在する場合は「正常」を、それ以外の場合は「異常」を返却する。状態判断部21は、プロセス監視部22から、プロセス監視結果「異常」が返却された否かを判断する(ステップA2)。プロセス監視結果「異常」が返却された場合は、稼動状態を「異常」として処理を終了する(ステップA3)。
FIG. 3 shows an operation procedure of the
状態判断部21は、プロセス監視結果「正常」が返却された場合は、DBアクセス状態監視部23に、データベースへのアクセスの状態を問い合わせる(ステップA4)。図4に、DBアクセス状態監視部23がアクセス状態を判断する際の手順を示す。DBアクセス状態監視部23は、状態判断部21からアクセス状態の問合せを受けると、タイムアウト監視スレッドを生成し(ステップB1)、DBアクセススレッドを生成する(ステップB2)。タイムアウト監視スレッドは、DBアクセススレッドと並行する形で実行される。
When the process monitoring result “normal” is returned, the
DBアクセス状態監視部23は、DBアクセススレッドにて、更新用SQLを実行する(ステップB3)。DBアクセス状態監視部23は、データベースへのアクセス状態監視結果が異常であるか否かを判断する(ステップB4)。実行したSQLに対する応答が得られず、異常終了したときはアクセス監視結果「異常」をセットする(ステップB5)。応答が得られたときは、アクセス監視結果「正常」をセットする(ステップB6)。
The DB access
タイムアウト監視スレッドは、所定時間の経過後、例えば更新用SQLの実行から1秒後に、タイムアウトの発生をメインスレッド(DBアクセススレッド)に通知する(ステップB7)。DBアクセス状態監視部23は、DBアクセススレッドにおけるアクセス監視結果が「異常」であるか否かを判定する(ステップB8)。アクセス監視結果が「異常」の場合は、状態判断部21に、アクセス状態監視結果「異常」を返却して処理を終了する(ステップB9)。
The timeout monitoring thread notifies the main thread (DB access thread) of the occurrence of timeout after the elapse of a predetermined time, for example, one second after execution of the update SQL (step B7). The DB access
DBアクセス状態監視部23は、アクセス監視結果が「正常」である場合は、DBアクセススレッドにて実行した更新用SQLに対する応答が、タイムアウト監視スレッドにてタイムアウトが発生する前に得られたか否かを判断する(ステップB10)。更新用SQLに対する応答が、タイムアウト発生後に得られたときは、アクセス状態監視結果「再構成中(タイムアウト)」を状態判断部21に返却する(ステップB11)。タイムアウト発生前に応答が得られたときは、アクセス状態監視結果「正常」を状態判断部21に返却する(ステップB12)。
If the access monitoring result is “normal”, the DB access
図3に戻り、状態判断部21は、DBアクセス状態監視部23から、アクセス状態監視結果「異常」が返却されたか否かを判断する(ステップA5)。アクセス状態監視結果「異常」が返却された場合は、データベースの稼動状態を「異常」として、処理を終了する(ステップA6)。次いで、状態判断部21は、アクセス状態監視結果「再構成中(タイムアウト)」が返却されたか否かを判断する(ステップA7)。アクセス状態監視結果「再構成中(タイムアウト)」が返却された場合は、データベースの稼動状態を「再構成中」として、処理を終了する(ステップA8)。アクセス状態監視結果「正常」が返却された場合は、データベースの稼動状態を「正常」として、処理を終了する(ステップS9)。
Returning to FIG. 3, the
図5に、プロセス監視部22からの応答及びDBアクセス状態監視部23からの応答と、稼動状態との関係をまとめたものを示す。状態判断部21は、プロセス監視部22から、プロセス監視結果「異常」が返却されたときは、データベースの稼動状態を「異常」とする。状態判断部21は、プロセス監視結果が「正常」で、かつ、DBアクセス状態監視部23からアクセス状態監視結果「正常」が返却されたときは、稼動状態を「正常」とする。プロセス監視結果が「正常」で、かつ、アクセス状態監視結果が「異常」のときは、稼動状態を「異常」とし、プロセス監視結果が「正常」で、かつ、アクセス状態監視結果が「再構成中(タイムアウト)」のときは、稼動状態を「再構成中」とする。
FIG. 5 shows a summary of the relationship between the response from the
各監視部15は、定期的に、上記で説明した手順に従って対応するデータベースの稼動状態をチェックし、「正常」、「異常」、「再構成中」の判断結果を、監視情報収集部14へ送信する。監視情報収集部14は、クラスタ構成を取るデータベースノード50−1〜50−nに配置される監視部15−1〜15−nが送信したデータベースの稼動状態を収集し、状態保有部13が保持しているデータベースごとの状態を更新する。
Each
図6に、状態保有部13が保持するデータを例示する。状態保有部13は、各データベースノードについて、「正常」、「異常」、「再構成中」の何れかを保持する。状態情報参照部12は、アプリケーションから、状態参照要求を受けると、状態保有部13を参照し、アプリケーションに、指定されたデータベースの状態を返却する。
FIG. 6 illustrates data held by the
リアルタイム処理を行うアプリケーション51は、状態情報参照部12からの応答が「正常」のときのみデータベースへアクセスして業務処理を行う。「異常」又は「再構成中」のときは、データベースへのアクセスを行わず、エラー処理する。エラー処理することで、不要なレスポンス待ちを避けると共に、エンドユーザからの処理要求を滞留させることなく捌いていく。一方、リアルタイム性が低いバッチ処理を行うアプリケーション52は、状態情報参照部12からの応答が「異常」であった場合のみエラー処理を行う。「正常」又は「再構成中」であった場合は、データベースへアクセスして業務処理を継続させる。このようにすることで、不要な異常終了を避けて、業務継続性を向上できる。
The
本実施形態では、データベースの稼働状態を、「正常」、「異常」に加えて、「再構成中」の3つで管理する。「再構成中」の状態は、データベースに対して要求を発行し、その要求に対する応答が返ってくるか否か、及び、応答が返ってくるまでに要する時間が長いか短いかで検出可能である。本実施形態では、データベースからの応答は返ってくるものの、応答が返ってくるまでに要する時間が長い状態を検出することで、「再構成中」状態を認識できる。 In the present embodiment, the operating state of the database is managed by “reconstructing” in addition to “normal” and “abnormal”. The status of “Reconfiguring” can be detected by issuing a request to the database, whether or not a response to the request is returned, and whether the response takes a long or short time. is there. In the present embodiment, although a response from the database is returned, it is possible to recognize the “reconstructing” state by detecting a state in which it takes a long time to return the response.
「再構成中」を検出することで、以下のようなデータベースシステムの制御が可能である。すなわち、「再構成中」のときは、リアルタイム性が要求される処理からの処理要求を受け付けないことで、リアルタイム処理の即応性を増すことができると共に、予期せぬ処理待ちによるキュー溢れを防止することができる。「再構成中」時のリアルタイム処理に対するエラー処理では、例えば、エンドユーザに、「しばらくお待ち下さい。」といったメッセージを表示する。この場合、エンドユーザが、要求発行を控えることで、無駄な要求発行を抑えることができる。 By detecting “reconfiguring”, the following database system can be controlled. In other words, when "reconfiguring" is in progress, processing requests from processing that requires real-time processing are not accepted, increasing the responsiveness of real-time processing and preventing queue overflow due to unexpected processing waits. can do. In the error processing for the real-time processing at the time of “reconfiguring”, for example, a message “Please wait for a while” is displayed to the end user. In this case, it is possible for the end user to suppress useless request issuance by refraining from request issuance.
また、バッチ処理のように数十秒から数分の待ちが問題とならない処理については、処理要求を受け付けることで、予期せぬ異常終了を抑止できる。このように、稼動状態が「再構成中」のときは、処理の性質に応じて、処理要求を受け付ける/受け付けないを選択することで、リアルタイム性が求められる処理を迅速にさばいてキュー溢れを防止することができると共に、リアルタイム性が求められない処理は、可能な限り処理を継続させることができる。本実施形態は、データベースのクラスタ構成を取るシステム全般に利用できる。特に、秒間処理件数が多いシステムに有効である。 Also, for a process where waiting for several tens of seconds to several minutes does not become a problem as in batch processing, an unexpected abnormal termination can be suppressed by receiving a processing request. In this way, when the operating state is “reconfiguring”, depending on the nature of the process, select whether to accept the process request or not, so that the process that requires real-time processing can be quickly handled and the queue overflowed. A process that can be prevented and that does not require real-time performance can be continued as much as possible. The present embodiment can be used for all systems having a database cluster configuration. This is particularly effective for a system with a large number of processes per second.
以上、本発明をその好適な実施形態に基づいて説明したが、本発明のデータベース状態監視装置、方法、及び、プログラムは、上記実施形態にのみ限定されるものではなく、上記実施形態の構成から種々の修正及び変更を施したものも、本発明の範囲に含まれる。 As mentioned above, although this invention was demonstrated based on the preferable embodiment, the database state monitoring apparatus of this invention, a method, and a program are not limited only to the said embodiment, From the structure of the said embodiment. Various modifications and changes are also included in the scope of the present invention.
10:データベース状態監視装置
12:状態情報参照部
13:状態保有部
14:監視情報収集部
15:監視部
21:状態判断部
22:プロセス監視部
23:DBアクセス状態監視部
50:データベースノード
51:リアルタイム処理
52:バッチ処理
10: database status monitoring device 12: status information reference unit 13: status holding unit 14: monitoring information collection unit 15: monitoring unit 21: status determination unit 22: process monitoring unit 23: DB access status monitoring unit 50: database node 51: Real-time processing 52: Batch processing
Claims (14)
前記データベースノードのそれぞれで、監視対象のデータベースへアクセスし、各データベースノードのデータベースの稼動状態が、正常動作状態を示す「正常」、異常動作状態を示す「異常」、又は、データベースアクセスに処理待ちが発生する状態を示す「再構成中」の何れであるかを判定する監視部と、
前記アプリケーションからの処理要求に基づくデータベースの稼働状態の照会を処理実行部から受けると、照会対象のデータベースを監視する前記監視部から該データベースの稼動状態を取得し、前記処理実行部に返却する状態情報参照部と、
を備え、
前記処理実行部は、前記アプリケーションから処理要求を受けると、該アプリケーションの種別が第1の分類と第2の分類の何れに属するかを判定し、前記状態情報参照部により返却された照会対象のデータベースの稼働状態が「再構成中」である場合には、第1の分類に属するアプリケーションの処理要求に対してエラー処理を行い、第2の分類に属するアプリケーションの処理要求に対しては処理対象のデータベースへのアクセス処理を行う、
ことを特徴とするデータベース状態監視装置。 A database state monitoring device that monitors a database system in which a cluster is configured by a plurality of database nodes, and controls processing of a database of an application executed on the database system ,
In each of the database node, to access to the monitored database, operating state of the database of the database node, indicating the normal operating state "normal", indicating an abnormal operating condition "abnormal", or the process for database access shows a state where the waiting occurs and monitoring unit for determining which of "during reconstruction",
A state in which when an inquiry about the operating state of a database based on a processing request from the application is received from a processing execution unit, the operating state of the database is acquired from the monitoring unit that monitors the database to be queried and returned to the processing execution unit An information reference part;
Equipped with a,
When the processing execution unit receives a processing request from the application, the processing execution unit determines whether the type of the application belongs to the first classification or the second classification, and the inquiry target returned by the state information reference unit When the operating state of the database is “being reconfigured”, error processing is performed for processing requests of applications belonging to the first category, and processing targets are processed for processing requests of applications belonging to the second category Process to access the database of
Database state monitor you wherein a.
前記状態情報参照部は、データベースの稼働状態の照会を処理実行部から受けると、状態保有部を参照して、処理対象のデータベースの稼働状態を取得し、前記処理実行部に返却する、When the state information reference unit receives an inquiry about the operation state of the database from the process execution unit, the state information reference unit refers to the state holding unit, acquires the operation state of the database to be processed, and returns the operation state to the process execution unit.
ことを特徴とする請求項1に記載のデータベース状態監視装置。The database state monitoring apparatus according to claim 1, wherein:
前記データベースノードのそれぞれで、監視対象のデータベースへアクセスし、各データベースノードのデータベースの稼動状態が、正常動作状態を示す「正常」、異常動作状態を示す「異常」、又は、データベースアクセスに処理待ちが発生する状態を示す「再構成中」の何れであるかを判定する監視部と、
前記データベースシステム上で実行されるアプリケーションからの処理要求に基づくデータベースの稼働状態の照会を処理実行部から受けると、照会対象のデータベースを監視する前記監視部から該データベースの稼動状態を取得し、前記処理実行部に返却する状態情報参照部と、
を備え、
前記処理実行部は、前記アプリケーションから処理要求を受けると、該アプリケーションの種別が第1の分類と第2の分類の何れに属するかを判定し、前記状態情報参照部により返却された照会対象のデータベースの稼働状態が「再構成中」である場合には、第1の分類に属するアプリケーションの処理要求に対してエラー処理を行い、第2の分類に属するアプリケーションの処理要求に対しては処理対象のデータベースへのアクセス処理を行う、
ことを特徴とするデータベースシステム。 A database system including a database in which a cluster is constituted by a plurality of database nodes,
In each of the database node, to access to the monitored database, operating state of the database of the database node, indicating the normal operating state "normal", indicating an abnormal operating condition "abnormal", or the process for database access shows a state where the waiting occurs and monitoring unit for determining which of "during reconstruction",
When kicking process execution unit or we received an inquiry operating state of the processing based on the request database from an application running on the database system, the operating state of the database from the monitoring unit to monitor the database being queried A status information reference unit to obtain and return to the process execution unit ;
With
When the processing execution unit receives a processing request from the application, the processing execution unit determines whether the type of the application belongs to the first classification or the second classification, and the inquiry target returned by the state information reference unit When the operating state of the database is “being reconfigured”, error processing is performed for processing requests of applications belonging to the first category, and processing targets are processed for processing requests of applications belonging to the second category Process to access the database of
A database system characterized by that .
前記状態情報参照部は、データベースの稼働状態の照会を処理実行部から受けると、状態保有部を参照して、処理対象のデータベースの稼働状態を取得し、前記処理実行部に返却する、When the state information reference unit receives an inquiry about the operation state of the database from the process execution unit, the state information reference unit refers to the state holding unit, acquires the operation state of the database to be processed, and returns the operation state to the process execution unit.
ことを特徴とする請求項8に記載のデータベースシステム。The database system according to claim 8.
前記コンピュータが、前記データベースノードのそれぞれで、監視対象のデータベースへアクセスし、各データベースノードのデータベースの稼動状態が、正常動作状態を示す「正常」、異常動作状態を示す「異常」、又は、データベースアクセスに処理待ちが発生する状態を示す「再構成中」の何れであるかを判定するステップと、
前記コンピュータが、前記アプリケーションからの処理要求が発生すると、処理対象のデータベースの稼動状態を取得し、該取得した稼動状態に応じて、前記アプリケーションの処理要求に対してエラー処理又はデータベースへのアクセス処理を行うステップと、
を有し、
前記エラー処理又はデータベースへのアクセス処理を行うステップでは、前記コンピュータが、処理要求を行ったアプリケーションの種別が第1の分類と第2の分類の何れに属するかを判定し、前記取得したデータベースの稼働状態が「再構成中」である場合には、第1の分類に属するアプリケーションの処理要求に対してエラー処理を行い、第2の分類に属するアプリケーションの処理要求に対してはデータベースへのアクセス処理を行う、
ことを特徴とするデータベース状態監視方法。 A method of monitoring a database system in which a cluster is configured by a plurality of database nodes using a computer, and controlling access to a database of an application executed on the database system ,
The computer is, in each of the database node, to access to the monitored database, operating state of the database of the database node, "normal" which indicates a normal operating condition, indicating an abnormal operating condition "abnormal", or, a step of determining which of showing a state where the process waits is generated in database access "during reconstruction",
When the computer generates a processing request from the application , the computer acquires the operating state of the processing target database, and performs error processing or database access processing on the processing request of the application according to the acquired operating state. and the step of performing,
I have a,
In the step of performing the error processing or database access processing, the computer determines whether the type of the application that requested the processing belongs to the first classification or the second classification, and the acquired database When the operation state is “reconfiguring”, error processing is performed for processing requests of applications belonging to the first category, and access to the database is performed for processing requests of applications belonging to the second category Process,
The database state monitoring method characterized by the above-mentioned.
前記エラー処理又はデータベースへのアクセス処理を行うステップでは、前記コンピュータが、前記アプリケーションからの処理要求が発生すると、前記状態保有部を参照して、処理対象のデータベースの稼動状態を取得する、In the step of performing error processing or database access processing, when a processing request is generated from the application, the computer refers to the state holding unit and acquires the operating state of the database to be processed.
ことを特徴とする請求項11に記載のデータベース状態監視方法。The database state monitoring method according to claim 11, wherein:
前記コンピュータに、
前記データベースノードのそれぞれで、監視対象のデータベースへアクセスし、各データベースノードのデータベースの稼動状態が、正常動作状態を示す「正常」、異常動作状態を示す「異常」、又は、データベースアクセスに処理待ちが発生する状態を示す「再構成中」の何れであるかを判定する処理と、
前記アプリケーションからの処理要求が発生すると、処理対象のデータベースの稼動状態を取得し、該取得した稼動状態に応じて、前記アプリケーションの処理要求に対してエラー処理又はデータベースへのアクセス処理を行う処理と、
を実行させ、
前記エラー処理又はデータベースへのアクセス処理を行う処理では、前記コンピュータに、処理要求を行ったアプリケーションの種別が第1の分類と第2の分類の何れに属するかを判定し、取得したデータベースの稼働状態が「再構成中」である場合には、第1の分類に属するアプリケーションの処理要求に対してエラー処理を行い、第2の分類に属するアプリケーションの処理要求に対してはデータベースへのアクセス処理を行う処理を、
実行させることを特徴とするプログラム。 A program that causes a computer to monitor a database system including a plurality of database nodes and to execute processing for controlling access to a database of an application executed on the database system ,
In the computer,
In each of the database node, to access to the monitored database, operating state of the database of the database node, indicating the normal operating state "normal", indicating an abnormal operating condition "abnormal", or the process for database access a process of determining which of indicating the state of waiting occurs "during reconstruction",
When a processing request from the application is generated, an operation state of a database to be processed is acquired, and an error process or a database access process is performed on the processing request of the application according to the acquired operation state. ,
And execute
In the error processing or processing for accessing the database, the computer determines whether the type of the application that requested the processing belongs to the first category or the second category, and the obtained database operation When the status is “reconfiguring”, error processing is performed on the processing request of the application belonging to the first category, and access processing to the database is performed on the processing request of the application belonging to the second category. Process to do
A program characterized by being executed.
前記エラー処理又はデータベースへのアクセス処理を行う処理では、前記アプリケーションからの処理要求が発生すると、前記状態保有部を参照して、処理対象のデータベースの稼動状態を取得する、In the process of performing the error process or the process of accessing the database, when a process request from the application occurs, the operating state of the database to be processed is acquired with reference to the state holding unit.
ことを特徴とする請求項13に記載のプログラム。The program according to claim 13.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2008037073A JP4911063B2 (en) | 2008-02-19 | 2008-02-19 | Database state monitoring apparatus, method, and program |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2008037073A JP4911063B2 (en) | 2008-02-19 | 2008-02-19 | Database state monitoring apparatus, method, and program |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2009199120A JP2009199120A (en) | 2009-09-03 |
| JP4911063B2 true JP4911063B2 (en) | 2012-04-04 |
Family
ID=41142583
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2008037073A Expired - Fee Related JP4911063B2 (en) | 2008-02-19 | 2008-02-19 | Database state monitoring apparatus, method, and program |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP4911063B2 (en) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN116340045A (en) * | 2023-03-29 | 2023-06-27 | 京东科技信息技术有限公司 | Database exception processing method, device, equipment and computer-readable storage medium |
| KR102914434B1 (en) * | 2023-05-12 | 2026-01-20 | 네이버클라우드 주식회사 | Method and system for managing host node resource for container-based cloud database |
Family Cites Families (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0378040A (en) * | 1989-08-22 | 1991-04-03 | Toshiba Corp | System operation state monitor system |
| JP3457118B2 (en) * | 1996-03-15 | 2003-10-14 | 三菱電機株式会社 | Power system monitoring and control system |
| JP3374067B2 (en) * | 1998-02-25 | 2003-02-04 | 株式会社日立製作所 | Distributed monitoring and control system and its database switching method |
| JP3062155B2 (en) * | 1998-07-31 | 2000-07-10 | 三菱電機株式会社 | Computer system |
| JP2000115288A (en) * | 1998-09-30 | 2000-04-21 | Toshiba Corp | Operation management tool and information processing system |
| JP2000293489A (en) * | 1999-04-08 | 2000-10-20 | Nec Corp | Data base server system |
| JP4527572B2 (en) * | 2005-03-14 | 2010-08-18 | 株式会社野村総合研究所 | Monitoring device and monitoring method |
-
2008
- 2008-02-19 JP JP2008037073A patent/JP4911063B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2009199120A (en) | 2009-09-03 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6986076B1 (en) | Proactive method for ensuring availability in a clustered system | |
| CA2533737C (en) | Fast application notification in a clustered computing system | |
| US7418627B2 (en) | Cluster system wherein failover reset signals are sent from nodes according to their priority | |
| US7185096B2 (en) | System and method for cluster-sensitive sticky load balancing | |
| US9715522B2 (en) | Information processing apparatus and control method | |
| US9477743B2 (en) | System and method for load balancing in a distributed system by dynamic migration | |
| US9262229B2 (en) | System and method for supporting service level quorum in a data grid cluster | |
| CN100549960C (en) | Method and system for fast application notification of changes in a cluster computing system | |
| US7543174B1 (en) | Providing high availability for an application by rapidly provisioning a node and failing over to the node | |
| KR102917632B1 (en) | Systems and methods of monitoring software application processes | |
| US20070083861A1 (en) | Managing a computer system with blades | |
| US9164864B1 (en) | Minimizing false negative and duplicate health monitoring alerts in a dual master shared nothing database appliance | |
| US20150236896A1 (en) | Automated management of a distributed computing system | |
| US20200125662A1 (en) | Method and system for a high availability ip monitored by both os/network and database instances | |
| JP2007207219A (en) | Computer system management method, management server, computer system and program | |
| JP2007226400A (en) | Computer management method, computer management program, standby server for managing configuration of execution server, and computer system | |
| US20080215743A1 (en) | System and method for validation of middleware failover behavior | |
| WO2015033433A1 (en) | Storage device, and fault location identifying method | |
| CN107018159B (en) | Service request processing method and device, and service request method and device | |
| CN1156775C (en) | Method for monitoring availability ratio by shared data base | |
| US9754032B2 (en) | Distributed multi-system management | |
| US20040210887A1 (en) | Testing software on blade servers | |
| JP4911063B2 (en) | Database state monitoring apparatus, method, and program | |
| CN119621441A (en) | Node determination method and related equipment of Kubernetes system | |
| US8533331B1 (en) | Method and apparatus for preventing concurrency violation among resources |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20100224 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110929 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20111004 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20111202 |
|
| 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: 20111220 |
|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120102 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 4911063 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150127 Year of fee payment: 3 |
|
| LAPS | Cancellation because of no payment of annual fees |