JP6901677B2 - 管理プログラム、管理装置および管理方法 - Google Patents

管理プログラム、管理装置および管理方法 Download PDF

Info

Publication number
JP6901677B2
JP6901677B2 JP2017081231A JP2017081231A JP6901677B2 JP 6901677 B2 JP6901677 B2 JP 6901677B2 JP 2017081231 A JP2017081231 A JP 2017081231A JP 2017081231 A JP2017081231 A JP 2017081231A JP 6901677 B2 JP6901677 B2 JP 6901677B2
Authority
JP
Japan
Prior art keywords
database
processing
information
delay
management
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2017081231A
Other languages
English (en)
Other versions
JP2018181038A (ja
Inventor
樋口 大輔
大輔 樋口
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2017081231A priority Critical patent/JP6901677B2/ja
Priority to US15/949,497 priority patent/US10725847B2/en
Publication of JP2018181038A publication Critical patent/JP2018181038A/ja
Application granted granted Critical
Publication of JP6901677B2 publication Critical patent/JP6901677B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/0757Error or fault detection not based on redundancy by exceeding limits by exceeding a time limit, i.e. time-out, e.g. watchdogs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0727Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a storage system, e.g. in a DASD or network based storage system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0769Readable error formats, e.g. cross-platform generic formats, human understandable formats
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/2028Failover techniques eliminating a faulty processor or activating a spare
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2038Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with a single idle spare processing component
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2094Redundant storage or storage space
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2097Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements maintaining the standby controller/processing unit updated
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3006Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3055Monitoring arrangements for monitoring the status of the computing system or of the computing system component, e.g. monitoring if the computing system is on, off, available, not available
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2365Ensuring data consistency and integrity

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computing Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Debugging And Monitoring (AREA)

Description

本発明は、管理プログラム、管理装置および管理方法に関する。
データベースが利用される業務システム(以下、情報処理システムとも呼ぶ)において、例えば、利用者にサービスを提供する事業者(以下、単に事業者とも呼ぶ)は、利用者に対するサービスの提供に用いられるデータを格納するデータベースを含む業務システムの構築を行う。
上記のような業務システムでは、例えば、通常時において処理が行われる正系データベース(以下、第1データベースとも呼ぶ)の他に、副系データベース(以下、第2データベースとも呼ぶ)を有する。そして、業務システムは、例えば、正系データベースにおいて処理遅延が発生したことを検知した場合、正系データベースに代えて副系データベースによる処理を開始する。これにより、業務システムは、正系データベースに所定の異常が発生した場合であっても、利用者に対するサービスの提供を継続することが可能になる(例えば、特許文献1乃至3参照)。
特開2005−293325号公報 国際公開第2007/063944号 特開2016−085753号公報
上記のように副系データベースによる処理を開始する場合、業務システムは、例えば、正系データベースを停止させる。具体的に、業務システムは、正系データベースを構成するハードウエアに対して割り込み命令を発行(送信)することで、正系データベースの停止を行う。これにより、業務システムは、正系データベースによる処理の再開(事業者が意図しない処理の再開)を防止することが可能になり、データ破壊の発生を防止することが可能になる。
しかしながら、例えば、正系データベースを構成するハードウエアが業務システムによって発行される割り込み命令に対応していない場合、業務システムは、ハードウエアに対する割り込み命令によって正系データベースを停止することができない。そのため、業務システムは、この場合、正系データベースを停止することなく副系データベースによる処理を開始する必要があり、データ破壊の発生を完全に防止することが困難になる場合がある。
そこで、一つの側面では、本発明は、処理遅延の発生に応じたデータベースの切り替えに伴うデータ破壊を防止する管理プログラム、管理装置および管理方法を提供することを目的とする。
実施の形態の一態様では、互いに同期した第1データベースおよび第2データベースを管理する管理装置に、前記第1データベースの受け付けた処理要求に対する処理遅延の検知に応じて、前記第1データベースと前記第2データベースとの同期処理を停止させ、前記第1データベースにおいて実行中の処理に関するエラー通知を発行し、前記検知の後に受け付けた処理要求を前記第2データベースに振り分ける、処理を実行させる。
一つの側面によれば、処理遅延の発生に応じたデータベースの切り替えに伴うデータ破壊を防止する。
図1は、情報処理システム10の構成を示す図である。 図2は、情報処理システム10の構成を示す図である。 図3は、情報処理システム10の構成を示す図である。 図4は、管理装置1のハードウエア構成を示す図である。 図5は、管理装置1の機能ブロック図である。 図6は、第1の実施の形態におけるDB管理処理の概略を説明するフローチャート図である。 図7は、第1の実施の形態におけるDB管理処理の概略を説明する図である。 図8は、第1の実施の形態におけるDB管理処理の概略を説明する図である。 図9は、第1の実施の形態におけるDB管理処理の概略を説明する図である。 図10は、第1の実施の形態におけるDB管理処理の概略を説明する図である。 図11は、第1の実施の形態におけるDB管理処理の概略を説明する図である。 図12は、第1の実施の形態におけるDB管理処理の概略を説明する図である。 図13は、第1の実施の形態におけるDB管理処理の詳細を説明するフローチャート図である。 図14は、第1の実施の形態におけるDB管理処理の詳細を説明するフローチャート図である。 図15は、第1の実施の形態におけるDB管理処理の詳細を説明するフローチャート図である。 図16は、第1の実施の形態におけるDB管理処理の詳細を説明するフローチャート図である。 図17は、振り分け情報131の具体例を説明する図である。 図18は、振り分け情報131の具体例を説明する図である。 図19は、第2の実施の形態におけるDB管理処理の詳細を説明するフローチャート図である。 図20は、第2の実施の形態におけるDB管理処理の詳細を説明するフローチャート図である。 図21は、第2の実施の形態におけるDB管理処理の詳細を説明するフローチャート図である。 図22は、第2の実施の形態におけるDB管理処理の詳細を説明するフローチャート図である。
[情報処理システムの構成]
初めに、情報処理システム10の構成について説明を行う。図1から図3は、情報処理システム10の構成を示す図である。図1から図3に示す情報処理システム10は、例えば、管理装置1と、情報処理装置2と、第1データベース3aと、第2データベース3bとを有する。
なお、以下、情報処理システム10が第1データベース3aと第2データベース3bとを有する場合について説明を行うが、情報処理システム10は、3台以上のデータベースを有するものであってもよい。そして、この場合、情報処理システム10は、3台以上のデータベースのうちの1台を正系データベースとして機能させ、正系データベース以外のデータベースを副系データベースとして機能させるものであってよい。
図1に示す例において、情報処理装置2は、1台以上の物理マシンによって構成され、事業者が利用者に対してサービスを提供するためのアプリケーションが動作する。そして、情報処理装置2は、例えば、図1に示すように、利用者に対するサービスの提供を行う際に、第1データベース3aおよび第2データベース3bのうち、正系データベース(図1に示す例では第1データベース3a)に対して処理要求を送信する。具体的に、情報処理装置2が送信する処理要求は、例えば、第1データベース3aに記憶されたデータに対する書き込み要求や読み込み要求である。
一方、第1データベース3aは、情報処理装置2が送信した処理要求を受信した場合、図1に示すように、受信した処理要求に対応する処理を行う。そして、第1データベース3aは、この場合、図1に示すように、処理要求に対応する処理を行うことによって更新されたデータ(差分データ)を第2データベース3bに送信することにより、第1データベース3aに記憶されたデータと第2データベース3b(副系データベース)に記憶されたデータとの同期処理を行う。
また、管理装置1は、第1データベース3aおよび第2データベース3bの管理を行う。具体的に、管理装置1は、図1に示すように、例えば、第1データベース3a(正系データベース)に対して定期的にPINGを送信することにより、第1データベース3aの処理状態の監視(生存監視)を行う。
そして、管理装置1は、図2に示すように、第1データベース3aにおいて処理遅延が発生していることを検知した場合、例えば、第1データベース3aのハードウエアに対して割り込み命令を発行することによって、第1データベース3aにおいて実行中の処理を中止する。また、管理装置1は、この場合、図2に示すように、第1データベース3aのハードウエアに対して割り込み命令を発行することによって、第1データベース3aを停止する。
これにより、管理装置1は、図3に示すように、第1データベース3aにおいて発生した処理遅延を検知した後、情報処理装置2から送信された処理要求に対応する処理(図2において中止した処理要求に対応する処理を含む)を第2データベース3bに行わせることが可能になる。そのため、管理装置1は、第1データベース3aにおける処理の再開(事業者が意図しない処理の再開)に伴うデータ破壊の発生を防止することが可能になる。したがって、管理装置1は、第1データベース3a(正系データベース)において処理遅延が発生した場合であっても、利用者に対するサービスの提供を継続させることが可能になる。
しかしながら、例えば、第1データベース3aを構成するハードウエアが管理装置1によって発行される割り込み命令に対応していない場合、管理装置1は、ハードウエアに対する割り込み命令によって処理遅延が発生した第1データベース3aを停止することができない。そのため、情報処理システム10では、第1データベース3aにおける処理遅延の発生を検知した場合であっても、第1データベース3aを停止することなく第2データベース3bによる処理を開始する必要がある。したがって、情報処理システム10では、第2データベース3bによる処理の開始後に第1データベース3aが処理の再開(事業者が意図しない処理の再開)を行った場合、第1データベース3aによる同期処理の実行等によって、データ破壊が発生する可能性がある。
そこで、本実施の形態における管理装置1は、第1データベース3a(正系データベース)の処理遅延の検知に応じて、第1データベース3aと第2データベース3b(副系データベース)との同期処理を停止させる。そして、管理装置1は、第1データベース3aにおいて実行中の処理に関するエラー通知を発行(送信)する。さらに、管理装置1は、新たな処理要求を受け付けた場合、受け付けた新たな処理要求を第2データベース3bに振り分ける。
すなわち、管理装置1は、第1データベース3aにおいて処理遅延が発生した際に、第1データベース3aおよび第2データベース3bの同期処理を停止することで、第2データベース3bが処理を開始した後に同期処理が行われることを防止する。これにより、管理装置1は、第2データベース3bによる処理の開始後に第1データベース3aが処理の再開を行った場合であっても、第1データベース3aによって第2データベース3bとの間において同期処理が行われることを防止することが可能になり、データ破壊の発生を防止することが可能になる。
また、管理装置1は、第1データベース3aにおいて実行中であった処理に関するエラー通知を情報処理装置2に対して発行することで、処理遅延の発生時において第1データベース3aが実行していた処理(未完了の処理)の中止と、その処理に対応する処理要求の再送とを情報処理装置2に行わせる。これにより、管理装置1は、第1データベース3aにおける処理遅延の発生後に情報処理装置2から送信された新たな処理要求に対応する処理だけでなく、第1データベース3aにおける処理遅延の発生が検知された際に実行中であった処理を第2データベース3bに行わせることが可能になり、データ破壊の発生を防止することが可能になる。
さらに、管理装置1は、情報処理装置2と各データベースとの間に位置し、情報処理装置2が送信した処理要求を受信することで、第1データベース3aにおける処理遅延の発生後に情報処理装置2から受信した処理要求(中止された処理に対応する処理要求の再送を含む)を、第2データベース3b(副系データベース)に送信する。これにより、管理装置1は、第1データベース3aが処理の再開を行った場合であっても、情報処理装置2から送信された新たな処理要求が第1データベース3aに送信され、新たな処理要求に対応する処理が第1データベース3aによって行われることを防止することが可能になり、データ破壊の発生を防止することが可能になる。
そのため、管理装置1は、第1データベース3aにおいて処理遅延が発生した場合であっても、ハードウエアへの割り込み命令を発行することなく利用者に対するサービスの提供を継続することが可能になる。
[情報処理システムのハードウエア構成]
次に、情報処理システム10のハードウエア構成について説明する。図4は、管理装置1のハードウエア構成を示す図である。
管理装置1は、プロセッサであるCPU101と、メモリ102と、外部インターフェース(I/Oユニット)103と、記憶媒体104とを有する。各部は、バス105を介して互いに接続される。
記憶媒体104は、例えば、記憶媒体104内のプログラム格納領域(図示しない)に、第1データベース3aおよび第2データベース3bの管理を行う処理(以下、DB管理処理とも呼ぶ)を行うためのプログラム110を記憶する。また、記憶媒体104は、例えば、DB管理処理を行う際に用いられる情報を記憶する情報格納領域130(以下、記憶部130とも呼ぶ)を有する。
CPU101は、プログラム110の実行時に、プログラム110を記憶媒体104からメモリ102にロードし、プログラム110と協働してDB管理処理を行う。また、外部インターフェース103は、例えば、第1データベース3aおよび第2データベース3bと通信を行う。
[情報処理システムの機能]
次に、情報処理システム10の機能について説明する。図5は、管理装置1の機能ブロック図である。
管理装置1のCPU101は、プログラム110と協働することにより、例えば、情報受信部111と、情報送信部112と、生存監視部113と、同期停止部114と、エラー発行部115と、情報管理部116として動作する。また、情報格納領域130には、例えば、振り分け情報131と、タイムアウト情報132(以下、処理関連パラメータとも呼ぶ)とが記憶される。
情報受信部111は、情報処理装置2から送信された第1データベース3aまたは第2データベース3bに対する処理要求を受信する。
情報送信部112は、情報受信部111が受信した処理要求を第1データベース3aまたは第2データベース3bのいずれかに送信する。具体的に、情報送信部112は、情報格納領域130に記憶された振り分け情報131を参照し、第1データベース3aおよび第2データベース3bのうち、振り分け情報131が示すデータベースに対して処理要求の送信を行う。振り分け情報131は、情報受信部111が受信した処理要求の送信先を示す情報である。
生存監視部113は、第1データベース3aまたは第2データベース3b(第1データベース3aおよび第2データベース3b)の生存監視を行う。具体的に、生存監視部113は、例えば、各データベースに対して定期的にPINGの送信を行い、応答があったデータベースが起動(生存)しているものと判定する。一方、生存監視部113は、例えば、タイムアウト情報132が示す時間以内に応答がなかったデータベースが存在した場合、存在したデータベースが起動(生存)していないものと判定する。なお、タイムアウト情報132は、事業者によって予め情報格納領域130に記憶されるものであってよい。
同期停止部114は、第1データベース3a(正系データベース)の処理遅延の検知に応じて、第1データベース3aと第2データベース3bとの同期処理を停止させる。具体的に、同期停止部114は、例えば、第2データベース3bが有するIP(Internet Protocol)テーブルを更新し、第2データベース3bにおける第1データベース3aに向けたポートを遮断することにより、第1データベース3aと第2データベース3bとの間の同期処理を停止させる。
エラー発行部115は、第1データベース3a(正系エータベース)において実行中の処理に関するエラー通知を情報処理装置2に対して発行する。
情報管理部116は、情報格納領域130に記憶された振り分け情報131の更新を行う。振り分け情報131の具体例については後述する。
[第1の実施の形態の概略]
次に、第1の実施の形態の概略について説明を行う。図6は、第1の実施の形態におけるDB管理処理の概略を説明するフローチャート図である。図7から図12は、第1の実施の形態におけるDB管理処理の概略を説明する図である。
管理装置1は、図7に示すように、情報処理装置2が第1データベース3a(正系データベース)に対して処理要求を送信した場合、情報処理装置2から送信された処理要求を一旦受信し、現在の正系データベース(図7に示す例では第1データベース3a)に送信する。その後、管理装置1は、処理要求に対応する処理と、第2データベース3bとの間における同期処理とが完了した旨の通知(以下、完了通知とも呼ぶ)を第1データベース3aから受信した場合、受信した完了通知を情報処理装置2に送信する。
また、管理装置1は、図1等で説明した場合と同様に、図7に示すように、第1データベース3a(正系データベース)の生存監視を行う。
一方、管理装置1は、図6に示すように、第1データベース3aにおける処理遅延を検知するまで待機する(S1のNO)。そして、第1データベース3aにおける処理遅延を検知した場合(S1のYES)、管理装置1は、図8に示すように、第1データベース3aと第2データベース3bとの同期処理を停止させる(S2)。
すなわち、管理装置1は、第1データベース3aにおいて処理遅延が発生した際に、第1データベース3aおよび第2データベース3bの同期処理を停止することで、第2データベース3bが処理を開始した後に同期処理が行われることを防止する。これにより、管理装置1は、第2データベース3bによる処理の開始後に第1データベース3aが処理の再開を行った場合であっても、第1データベース3aによって第2データベース3bとの間において同期処理が行われることを防止することが可能になり、データ破壊の発生を防止することが可能になる。
続いて、管理装置1は、図9に示すように、第1データベース3aにおいて実行中の処理に関するエラー通知を発行する(S3)。具体的に、管理装置1は、第1データベース3aにおいて実行中の処理に対応する処理要求を送信した情報処理装置2に対してエラー通知を発行する。
すなわち、管理装置1は、第1データベース3aにおいて実行中であった処理に関するエラー通知を情報処理装置2に対して発行することで、処理遅延の発生時において第1データベース3aが実行していた処理(未完了の処理)の中止と、その処理に対応する処理要求の再送とを情報処理装置2に行わせる。これにより、管理装置1は、第1データベース3aにおける処理遅延の発生後に情報処理装置2から送信された新たな処理要求に対応する処理だけでなく、第1データベース3aにおける処理遅延の発生が検知された際に実行中であった処理を第2データベース3bに行わせることが可能になり、データ破壊の発生を防止することが可能になる。
その後、管理装置1は、情報処理装置2が送信した新たな処理要求を受け付けるまで待機する(S4のNO)。具体的に、管理装置1は、通常の処理要求、または、S3の処理で情報処理装置2に対して発行したエラー通知に対応する処理要求(処理要求の再送)を受け付けるまで待機する。そして、新たな処理要求を受け付けた場合(S4のYES)、管理装置1は、図10に示すように、S4の処理で受け付けた新たな処理要求を第2データベース3bに振り分ける(S5)。
すなわち、管理装置1は、情報処理装置2と各データベースとの間に位置し、情報処理装置2が送信した処理要求を受信することで、第1データベース3aにおける処理遅延の発生後に情報処理装置2から受信した処理要求(中止された処理に対応する処理要求の再送を含む)を、第2データベース3b(副系データベース)に送信する。これにより、管理装置1は、第1データベース3aが処理の再開を行った場合であっても、情報処理装置2から送信された新たな処理要求が第1データベース3aに送信され、新たな処理要求に対応する処理が第1データベース3aによって行われることを防止することが可能になり、データ破壊の発生を防止することが可能になる。
これにより、管理装置1は、第1データベース3aにおいて処理遅延が発生した場合であっても、ハードウエアへの割り込み命令を発行することなく利用者に対するサービスの提供を継続することが可能になる。
なお、管理装置1、情報処理装置2、第1データベース3aおよび第2データベース3bは、それぞれ物理マシンによって構成されるものであってもよく、物理マシン上に生成された仮想マシンによって構成されるものであってもよい。
また、情報処理システム10は、図11および図12に示すように、図7等で説明した管理装置1に代えて、第1管理装置1aおよび第2管理装置1bを有するものであってもよい。第1管理装置1aは、図11に示すように、図7等で説明した管理装置1が行う処理のうち、例えば、情報処理装置2から受信した処理要求や第1データベース3a等から受信した完了通知の送受信を行う。また、第2管理装置1bは、図11に示すように、図7等で説明した管理装置1が行う処理のうち、例えば、第1データベース3a等の生存監視を行う。
そして、第2管理装置1bは、図12に示すように、例えば、第1データベース3aにおける処理遅延の発生を検知した場合、第1データベース3aにおいて処理遅延が発生したことを示す通知を第1管理装置1aに送信するものであってもよい。その後、第1管理装置1aは、第1管理装置1aから通知を受信したことに応じて、図6で説明したS2以降の処理を開始するものであってもよい(S1のYES)。
[第1の実施の形態の詳細]
次に、第1の実施の形態の詳細について説明する。図13から図16は、第1の実施の形態におけるDB管理処理の詳細を説明するフローチャート図である。また、図17および図18は、第1の実施の形態におけるDB管理処理の詳細を説明する図である。図13から図16を参照しながら、図17および図18のDB管理処理の詳細を説明する。
[情報振り分け処理]
初めに、情報処理装置2から受信した処理要求の振り分けを行う処理(以下、情報振り分け処理とも呼ぶ)について説明を行う。
管理装置1の情報受信部111は、図13に示すように、情報処理装置2から送信された処理要求を受け付けるまで待機する(S21のNO)。そして、処理要求を受け付けた場合(S21のYES)、管理装置1の情報送信部112は、情報格納領域130に記憶された振り分け情報131を参照し、情報処理装置2から受信した処理要求の現在の振り分け先を特定する(S22)。以下、振り分け情報131の具体例について説明を行う。
[振り分け情報の具体例]
図17および図18は、振り分け情報131の具体例を説明する図である。図17および図18に示す振り分け情報131は、振り分け情報131に含まれる各情報を識別する「項番」と、正系データベースのIPアドレスが設定される「正系DB」と、副系データベースのIPアドレスが設定される「副系DB」とを項目として有する。
具体的に、図17に示す振り分け情報131には、「項番」が「1」である情報の「正系DB」として「10.2.AA.BB」が設定され、「副系DB」として「10.2.AA.CC」が設定される。
そして、情報送信部112は、S22の処理において、例えば、図17に示す振り分け情報131を参照し、情報処理装置2から受信した処理要求の現在の振り分け先として、「正系DB」に設定された「10.2.AA.BB」を特定する。
図13に戻り、情報送信部112は、S21の処理で受け付けた処理要求を、S22の処理で特定した振り分け先に送信する(S23)。具体的に、S22の処理で特定された振り分け先が「10.2.AA.BB」である場合、情報送信部は、S21の処理で受け付けた処理要求を、IPアドレスが「10.2.AA.BB」であるデータベースに対して送信する。
また、情報受信部111は、図14に示すように、第1データベース3aまたは第2データベース3bから処理要求に対する処理の完了通知を受け付けるまで待機する(S31のNO)。具体的に、情報受信部111は、S23の処理において送信された処理要求に対する処理と、その処理が行われた後における同期処理(第1データベース3aに記憶されたデータと第2データベース3bに記憶されたデータとの同期処理)とが完了したことを示す完了通知を受信するまで待機する。そして、完了通知を受け付けた場合(S31のYES)、情報送信部112は、受け付けた完了通知を情報処理装置2に送信する(S32)。
これにより、情報処理装置2は、第1データベース3a等に送信した処理要求に対応する処理が完了したものと判定することが可能になる。
[DB管理処理の詳細]
次に、DB管理処理の詳細について説明を行う。なお、以下、第1データベース3aが正系データベースであり、第2データベース3bが副系データベースであるものとして説明を行う。
管理装置1の生存監視部113は、図15に示すように、生存監視タイミングまで待機する(S41のNO)。生存開始タイミングは、例えば、1分ごと等、定期的なタイミングであってよい。
そして、生存監視タイミングになった場合(S41のYES)、生存監視部113は、第1データベース3aに対して生存監視を行う(S42)。具体的に、生存監視部113は、例えば、第1データベース3aに対してPINGの送信を行う。
その後、生存監視部113は、第1データベース3aにおける処理遅延を検知するまで待機する。具体的に、生存監視部113は、例えば、S42の処理において第1データベース3aに対するPINGの送信を行ったにもかかわらず、情報格納領域130に記憶されたタイムアウト情報132が示す時間以内に第1データベース3aから応答がなかった場合、第1データベース3aにおいて処理遅延が発生しているものと判定する。
そして、第1データベース3aにおける処理遅延を検知した場合(S43のYES)、管理装置1の同期停止部114は、第1データベース3aと第2データベース3bとの同期処理を停止させる(S44)。一方、第1データベース3aにおける処理遅延を検知しなかった場合(S43のNO)、生存監視部113は、S41以降の処理を再度行う。
続いて、管理装置1の情報管理部116は、図16に示すように、S21の処理で受け付けた処理要求を第2データベース3bに振り分けることを示すように、振り分け情報131を更新する(S51)。具体的に、情報管理部116は、図18に示すように、例えば、「項番」が「1」である情報の「正系DB」に、図17で説明した振り分け情報131において「副系DB」に設定されていた「10.2.AA.CC」を設定する。そして、情報管理部116は、図18に示すように、例えば、「副系DB」に、情報が存在しないことを示す「−」を設定する。
これにより、管理装置1は、S43の処理において新たな処理要求を受け付けた場合、受け付けた新たな処理要求を第2データベース3bに処理させることが可能になる。
そして、管理装置1のエラー発行部115は、第1データベース3aにおいて実行中の処理に関するエラー通知を発行する(S52)。具体的に、エラー発行部115は、例えば、S52の処理が行われる時点において、第1データベース3aから完了通知を受信していない処理要求に対応する処理を、第1データベース3aが現在実行している処理であると判定する。すなわち、第1データベース3aが現在実行している処理には、例えば、第1データベース3aの処理遅延が検知された後に、情報処理装置2から第1データベース3aに対して送信された処理要求に対応する処理が含まれるものであってもよい。そして、エラー発行部115は、第1データベース3aにおいて現在実行している判定された処理を特定する情報を含むエラー通知を、情報処理装置2に対して発行する。
その後、情報管理部116は、第1データベース3aが所定時間内に処理を再開したか否かを判定する(S53)。所定時間は、例えば、10分等であってよい。
その結果、第1データベース3aが所定時間内に処理を再開したと判定した場合(S53のYES)、情報管理部116は、第1データベース3aにおける処理遅延の発生状況に関する遅延情報を取得する(S54)。遅延情報は、例えば、第1データベース3aにおいて実際に発生した遅延時間であり、第1データベース3aにおけるログ情報等から取得される情報である。
続いて、情報管理部116は、この場合、S54の処理で取得した遅延情報が示す時間以上を示すように、情報格納領域130に記憶されたタイムアウト情報132を更新する(S55)。
これにより、情報管理部116は、第1データベース3aにおいて過去に発生した処理遅延と同程度の処理遅延が発生するごとに、正系データベースの切り替えが行われることを防止することが可能になる。
なお、情報管理部116は、第1データベース3aに対して監視用リクエストを送信し、送信した監視用リクエストに対して第1データベース3aから送信された遅延情報を取得するものであってよい。
そして、S55の処理の後、または、S53の処理において第1データベース3aが所定時間内に処理を再開しなかったと判定した場合(S53のNO)、生存監視部113は、S41以降の処理を再度行う。
このように、管理装置1は、第1データベース3a(正系データベース)の処理遅延の検知に応じて、第1データベース3aと第2データベース3b(副系データベース)との同期処理を停止させる。そして、管理装置1は、第1データベース3aにおいて実行中の処理に関するエラー通知を発行する。さらに、管理装置1は、新たな処理要求を受け付けた場合、受け付けた新たな処理要求を第2データベース3bに振り分ける。
すなわち、管理装置1は、第1データベース3aにおいて処理遅延が発生した際に、第1データベース3aおよび第2データベース3bの同期処理を停止することで、第2データベース3bが処理を開始した後に同期処理が行われることを防止する。これにより、管理装置1は、第2データベース3bによる処理の開始後に第1データベース3aが処理の再開を行った場合であっても、第1データベース3aによって第2データベース3bとの間において同期処理が行われることを防止することが可能になり、データ破壊の発生を防止することが可能になる。
また、管理装置1は、第1データベース3aにおいて実行中であった処理に関するエラー通知を情報処理装置2に対して発行することで、処理遅延の発生時において第1データベース3aが実行していた処理(未完了の処理)の中止と、その処理に対応する処理要求の再送とを情報処理装置2に行わせる。これにより、管理装置1は、第1データベース3aにおける処理遅延の発生後に情報処理装置2から送信された新たな処理要求に対応する処理だけでなく、第1データベース3aにおける処理遅延の発生が検知された際に実行中であった処理を第2データベース3bに行わせることが可能になり、データ破壊の発生を防止することが可能になる。
さらに、管理装置1は、情報処理装置2と各データベースとの間に位置し、情報処理装置2が送信した処理要求を受信することで、第1データベース3aにおける処理遅延の発生後に情報処理装置2から受信した処理要求(中止された処理に対応する処理要求の再送を含む)を、第2データベース3b(副系データベース)に送信する。これにより、管理装置1は、第1データベース3aが処理の再開を行った場合であっても、情報処理装置2から送信された新たな処理要求が第1データベース3aに送信され、新たな処理要求に対応する処理が第1データベース3aによって行われることを防止することが可能になり、データ破壊の発生を防止することが可能になる。
そのため、管理装置1は、第1データベース3aにおいて処理遅延が発生した場合であっても、ハードウエアへの割り込み命令を発行することなく利用者に対するサービスの提供を継続することが可能になる。
[第2の実施の形態の詳細]
次に、第2の実施の形態の詳細について説明する。図19から図22は、第2の実施の形態におけるDB管理処理の詳細を説明するフローチャート図である。
第1の実施の形態における管理装置1は、第1データベース3aの処理遅延を検知した場合に、同期処理の停止の後に振り分け情報131の更新を行い、振り分け情報131の更新の後にエラー通知の発行を行う。これに対し、第2の実施の形態における管理装置1は、第1データベース3aの処理遅延を検知した場合に、同期処理の停止の後にエラー通知の発行を行い、エラー通知の発行を行った後に振り分け情報131の更新を行う。
[第2の実施の形態における情報振り分け処理]
初めに、第2の実施の形態における情報振り分け処理について説明を行う。
情報受信部111は、図19に示すように、情報処理装置2から送信された処理要求を受け付けるまで待機する(S61のNO)。
そして、処理要求を受け付けた場合(S61のYES)、情報送信部112は、第1データベース3aにおける処理遅延の発生に伴って振り分け情報131が更新されているか否かを判定する(S62)。具体的に、情報送信部112は、例えば、第1データベース3aにおける処理遅延の発生に伴うエラー通知の送信が前回行われた後、振り分け情報131の更新が行われたか否かの判定を行う。
その結果、第1データベース3aにおける処理遅延の発生に伴って振り分け情報131が更新されていると判定した場合(S62のYES)、情報送信部112は、S63以降の処理を行う。一方、第1データベース3aにおける処理遅延の発生に伴って振り分け情報131が更新されていないと判定した場合(S62のNO)、情報送信部112は、振り分け情報131が更新されるまで待機し、振り分け情報131の更新が行われた後、S63以降の処理を行う。
すなわち、情報送信部112は、振り分け情報131の更新をエラー通知の発行よりも後に行う場合であっても、第1データベース3aにおける処理遅延の発生以降に情報処理装置2から送信された処理要求(エラー発行部115が発行したエラー通知に対する処理要求を含む)の全てを、第2データベース3bに送信する必要がある。そのため、情報送信部112は、S62の処理において、例えば、第1データベース3aにおける処理遅延の発生に伴うエラー通知の送信が前回行われた後、振り分け情報131の更新が行われたか否かの判定を行う。
これにより、管理装置1は、振り分け情報131の更新をエラー通知の発行よりも後に行う場合であっても、データ破壊の発生を防止することが可能になる。
なお、S62の処理は、例えば、第1データベース3aにおける処理遅延の発生に伴うエラー通知の送信が行われてから、振り分け情報131の更新が行われるまでの間に限って行われるものであってもよい。
その後、情報管理部116は、情報格納領域130に記憶された振り分け情報131を参照し、情報処理装置2から受信した処理要求の現在の振り分け先を特定する(S63)。そして、情報送信部112は、S61の処理で受け付けた処理要求を、S63の処理で特定した振り分け先に送信する(S64)。
また、情報受信部111は、図20に示すように、第1の実施の形態における場合と同様に、第1データベース3aまたは第2データベース3bから処理要求に対する処理の完了通知を受け付けるまで待機する(S71のNO)。具体的に、情報受信部111は、S64の処理において送信された処理要求に対する処理と、その処理が行われた後における同期処理(第1データベース3aに記憶されたデータと第2データベース3bに記憶されたデータとの同期処理)とが完了したことを示す完了通知を受信するまで待機する。そして、完了通知を受け付けた場合(S71のYES)、情報送信部112は、第1の実施の形態における場合と同様に、S71の処理で受け付けた完了通知を情報処理装置2に送信する(S72)。
[第2の実施の形態におけるDB管理処理]
次に、第2の実施の形態におけるDB管理処理について説明を行う。なお、以下、第1データベース3aが正系データベースであり、第2データベース3bが副系データベースであるものとして説明を行う。
生存監視部113は、図21に示すように、生存監視タイミングまで待機する(S81のNO)。そして、生存監視タイミングになった場合(S81のYES)、生存監視部113は、第1の実施の形態における場合と同様に、第1データベース3aに対して生存監視を行う(S82)。
その後、同期停止部114は、第1データベース3aにおける処理遅延を検知するまで待機する(S83のNO)。そして、第1データベース3aにおける処理遅延を検知した場合(S43のYES)、同期停止部114は、第1の実施の形態における場合と同様に、第1データベース3aと第2データベース3bとの同期処理を停止させる(S84)。
続いて、エラー発行部115は、図22に示すように、第1データベース3aにおいて実行中の処理に関するエラー通知を発行する(S91)。その後、情報管理部116は、S61の処理で受け付けた処理要求を第2データベース3bに振り分けることを示すように、振り分け情報131を更新する(S92)。
すなわち、第2の実施の形態における管理装置1は、振り分け情報131の更新の完了を待つことなく、情報処理装置2に対するエラー通知の発行を行う。そして、第2の実施の形態における管理装置1は、図19で説明したように、第1データベース3aにおける処理遅延が発生した場合、振り分け情報131の更新が行われるまで情報処理装置2から送信された処理要求の振り分けを行わない。
これにより、管理装置1は、振り分け情報131の更新前にエラー通知の発行を行うことによるデータ破壊の発生を防止しつつ、情報処理装置2に対するエラー通知の発行タイミングを早めることが可能になる。そのため、管理装置1は、第1データベース3aにおいて発生した処理遅延によるサービス(事業者が利用者に対して提供するサービス)への影響をより抑えることが可能になる。
その後、情報管理部116は、第1の実施の形態における場合と同様に、第1データベース3aが所定時間内に処理を再開したか否かを判定する(S93)。
その結果、第1データベース3aが所定時間内に処理を再開したと判定した場合(S93のYES)、情報管理部116は、第1の実施の形態における場合と同様に、第1データベース3aにおける処理遅延の発生状況に関する遅延情報を取得する(S94)。
続いて、情報管理部116は、この場合、第1の実施の形態における場合と同様に、S94の処理で取得した遅延情報が示す時間以上を示すように、情報格納領域130に記憶されたタイムアウト情報132を更新する(S95)。
そして、S95の処理の後、または、S93の処理において第1データベース3aが所定時間内に処理を再開しなかったと判定した場合(S93のNO)、生存監視部113は、第1の実施の形態における場合と同様に、S81以降の処理を再度行う。
以上の実施の形態をまとめると、以下の付記のとおりである。
(付記1)
互いに同期した第1データベースおよび第2データベースを管理する管理装置に、
前記第1データベースの受け付けた処理要求に対する処理遅延の検知に応じて、前記第1データベースと前記第2データベースとの同期処理を停止させ、
前記第1データベースにおいて実行中の処理に関するエラー通知を発行し、
前記検知の後に受け付けた処理要求を前記第2データベースに振り分ける、
処理を実行させる管理プログラム。
(付記2)
付記1において、
前記エラー通知を発行する処理は、前記同期処理を停止させる処理の後に行われる、
管理プログラム。
(付記3)
付記1において、さらに、
前記第1データベースにおいて処理遅延が発生していない場合、前記処理要求を前記第2データベースよりも優先して前記第1データベースに振り分ける、
処理を前記管理装置に実行させる管理プログラム。
(付記4)
付記1において、
前記エラー通知を発行する処理では、記憶部に記憶された処理関連パラメータを参照し、前記第1データベースにおける処理遅延の検知を行い、さらに、
前記第1データベースの処理遅延の検知に応じて、前記第1データベースの処理遅延の発生状況に関する遅延情報を取得し、
取得した前記遅延情報に基づき、前記処理関連パラメータを更新する、
処理を前記管理装置に実行させる管理プログラム。
(付記5)
付記4において、
前記処理関連パラメータは、前記第1データベースにおける処理に対するタイムアウト時間を含み、
前記エラー通知を発行する処理では、前記第1データベースにおける処理が前記タイムアウト時間以内に完了しない場合、前記第1データベースにおいて処理遅延が発生したものと判定する、
管理プログラム。
(付記6)
付記5において、
前記遅延情報は、前記第1データベースにおける処理遅延の発生時間を含み、
前記処理関連パラメータを更新する処理では、取得した前記処理遅延の発生時間以上になるように前記タイムアウト時間を更新する、
管理プログラム。
(付記7)
付記4において、
前記遅延情報を取得する処理では、
前記第1データベースに対して監視用リクエストを送信し、
前記監視用リクエストに対して前記第1データベースから送信された前記遅延情報を取得する、
管理プログラム。
(付記8)
付記1において、
前記エラー通知を発行する処理では、検知した前記処理遅延に対応する処理要求の要求元のアプリケーションに対して前記エラー通知を発行し、
前記検知の後に受け付けた処理要求は、前記要求元のアプリケーションから前記エラー通知の発行に応じて再送された処理要求を含む、
管理プログラム。
(付記9)
付記3において、
前記処理要求を第1データベースに振り分ける処理では、前記第1データベースにおいて処理遅延が発生していない場合、記憶部に記憶された、前記処理要求を前記第2データベースよりも優先して前記第1データベースに振り分けることを示す振り分け情報を参照し、前記処理要求に対応する処理を前記第1データベースにおいて行い、さらに、
前記同期処理を停止させる処理の後、前記処理要求を前記第2データベースに振り分けることを示すように前記振り分け情報を更新する、
処理を前記管理装置に実行させ、
前記処理要求を第2データベースに振り分ける処理では、
前記検知の後に処理要求を受け付けた場合、更新された前記振り分け情報を参照し、前記検知の後に受け付けた処理要求を前記第2データベースに振り分ける、
管理プログラム。
(付記10)
付記9において、
前記振り分け情報を更新する処理は、前記エラー通知を発行する処理の前に行われる、
管理プログラム。
(付記11)
付記9において、
前記処理要求に対応する処理を第2データベースに振り分ける処理では、前記検知の後であって前記振り分け情報を更新する処理の前に処理要求を受け付けた場合、前記振り分け情報の更新が行われるまで待機する、
管理プログラム。
(付記12)
互いに同期した第1データベースおよび第2データベースを管理する管理装置であって、
前記第1データベースの受け付けた処理要求に対する処理遅延の検知に応じて、前記第1データベースと前記第2データベースとの同期処理を停止させる同期停止部と、
前記第1データベースにおいて実行中の処理に関するエラー通知を発行するエラー発行部と、
前記検知の後に受け付けた処理要求を前記第2データベースに振り分ける情報送信部と、を有する、
管理装置。
(付記13)
付記12において、
前記情報送信部は、前記第1データベースにおいて処理遅延が発生していない場合、前記処理要求を前記第2データベースよりも優先して前記第1データベースに振り分ける、
管理装置。
(付記14)
互いに同期した第1データベースおよび第2データベースを管理する管理装置による管理方法であって、
前記第1データベースの受け付けた処理要求に対する処理遅延の検知に応じて、前記第1データベースと前記第2データベースとの同期処理を停止させ、
前記第1データベースにおいて実行中の処理に関するエラー通知を発行し、
前記検知の後に受け付けた処理要求を前記第2データベースに振り分ける、
管理方法。
(付記15)
付記14において、さらに、
前記第1データベースにおいて処理遅延が発生していない場合、前記処理要求を前記第2データベースよりも優先して前記第1データベースに振り分ける、
管理方法。
1:管理装置 2:情報処理装置
3a:第1データベース 3b:第2データベース

Claims (12)

  1. 互いに同期した第1データベースおよび第2データベースを管理する管理装置に、
    記憶部に記憶された処理関連パラメータを参照し、前記第1データベースの受け付けた処理要求に対する処理遅延の検知を行い、
    前記検知に応じて、前記第1データベースと前記第2データベースとの同期処理を停止させ、
    前記第1データベースにおいて実行中の処理に関するエラー通知を発行し、
    前記検知の後に受け付けた処理要求を前記第2データベースに振り分け、
    前記第1データベースの処理遅延の発生状況に関する遅延情報に基づき、前記処理関連パラメータを更新する、
    処理を実行させる管理プログラム。
  2. 請求項1において、
    前記エラー通知を発行する処理は、前記同期処理を停止させる処理の後に行われる、
    管理プログラム。
  3. 請求項1において、さらに、
    前記第1データベースにおいて処理遅延が発生していない場合、前記処理要求を前記第2データベースよりも優先して前記第1データベースに振り分ける、
    処理を前記管理装置に実行させる管理プログラム。
  4. 請求項において、
    前記処理関連パラメータは、前記第1データベースにおける処理に対するタイムアウト時間を含み、
    前記エラー通知を発行する処理では、前記第1データベースにおける処理が前記タイムアウト時間以内に完了しない場合、前記第1データベースにおいて処理遅延が発生したものと判定する、
    管理プログラム。
  5. 請求項において、
    前記遅延情報は、前記第1データベースにおける処理遅延の発生時間を含み、
    前記処理関連パラメータを更新する処理では、取得した前記処理遅延の発生時間以上になるように前記タイムアウト時間を更新する、
    管理プログラム。
  6. 請求項において、
    前記遅延情報を取得する処理では、
    前記第1データベースに対して監視用リクエストを送信し、
    前記監視用リクエストに対して前記第1データベースから送信された前記遅延情報を取得する、
    管理プログラム。
  7. 請求項1において、
    前記エラー通知を発行する処理では、検知した前記処理遅延に対応する処理要求の要求元のアプリケーションに対して前記エラー通知を発行し、
    前記検知の後に受け付けた処理要求は、前記要求元のアプリケーションから前記エラー通知の発行に応じて再送された処理要求を含む、
    管理プログラム。
  8. 請求項3において、
    前記処理要求を第1データベースに振り分ける処理では、前記第1データベースにおいて処理遅延が発生していない場合、記憶部に記憶された、前記処理要求を前記第2データベースよりも優先して前記第1データベースに振り分けることを示す振り分け情報を参照し、前記処理要求に対応する処理を前記第1データベースにおいて行い、さらに、
    前記同期処理を停止させる処理の後、前記処理要求を前記第2データベースに振り分けることを示すように前記振り分け情報を更新する、
    処理を前記管理装置に実行させ、
    前記処理要求を第2データベースに振り分ける処理では、
    前記検知の後に処理要求を受け付けた場合、更新された前記振り分け情報を参照し、前記検知の後に受け付けた処理要求を前記第2データベースに振り分ける、
    管理プログラム。
  9. 請求項において、
    前記振り分け情報を更新する処理は、前記エラー通知を発行する処理の前に行われる、
    管理プログラム。
  10. 請求項において、
    前記処理要求に対応する処理を第2データベースに振り分ける処理では、前記検知の後であって前記振り分け情報を更新する処理の前に処理要求を受け付けた場合、前記振り分け情報の更新が行われるまで待機する、
    管理プログラム。
  11. 互いに同期した第1データベースおよび第2データベースを管理する管理装置であって、
    記憶部に記憶された処理関連パラメータを参照し、前記第1データベースの受け付けた処理要求に対する処理遅延の検知を行い、前記検知に応じて、前記第1データベースと前記第2データベースとの同期処理を停止させる同期停止部と、
    前記第1データベースにおいて実行中の処理に関するエラー通知を発行するエラー発行部と、
    前記検知の後に受け付けた処理要求を前記第2データベースに振り分ける情報送信部と、
    前記第1データベースの処理遅延の発生状況に関する遅延情報に基づき、前記処理関連パラメータを更新する情報管理部と、を有する、
    管理装置。
  12. 互いに同期した第1データベースおよび第2データベースを管理する管理装置による管理方法であって、
    記憶部に記憶された処理関連パラメータを参照し、前記第1データベースの受け付けた処理要求に対する処理遅延の検知を行い、前記検知に応じて、前記第1データベースと前記第2データベースとの同期処理を停止させ、
    前記第1データベースにおいて実行中の処理に関するエラー通知を発行し、
    前記検知の後に受け付けた処理要求を前記第2データベースに振り分け、
    前記第1データベースの処理遅延の発生状況に関する遅延情報に基づき、前記処理関連パラメータを更新する、
    管理方法。
JP2017081231A 2017-04-17 2017-04-17 管理プログラム、管理装置および管理方法 Active JP6901677B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2017081231A JP6901677B2 (ja) 2017-04-17 2017-04-17 管理プログラム、管理装置および管理方法
US15/949,497 US10725847B2 (en) 2017-04-17 2018-04-10 Management apparatus and management method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017081231A JP6901677B2 (ja) 2017-04-17 2017-04-17 管理プログラム、管理装置および管理方法

Publications (2)

Publication Number Publication Date
JP2018181038A JP2018181038A (ja) 2018-11-15
JP6901677B2 true JP6901677B2 (ja) 2021-07-14

Family

ID=63790661

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017081231A Active JP6901677B2 (ja) 2017-04-17 2017-04-17 管理プログラム、管理装置および管理方法

Country Status (2)

Country Link
US (1) US10725847B2 (ja)
JP (1) JP6901677B2 (ja)

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4037257B2 (ja) 2002-12-26 2008-01-23 株式会社日立製作所 情報処理システムの制御方法、情報処理システム、及びプログラム
JP2005293325A (ja) * 2004-03-31 2005-10-20 Nec Corp データベースの即時レプリケーション性能監視システム
TWI416901B (zh) 2005-11-30 2013-11-21 Ibm 故障容忍之異動處理系統
US7627775B2 (en) * 2005-12-13 2009-12-01 International Business Machines Corporation Managing failures in mirrored systems
EP2204736A4 (en) * 2007-09-25 2012-01-11 Fujitsu Ltd INFORMATION PROCESSOR AND CONTROL PROCEDURE
JP2009122873A (ja) 2007-11-13 2009-06-04 Hitachi Ltd ストレージシステム間でのリモートコピーを管理する装置
JP5366184B2 (ja) * 2008-09-12 2013-12-11 株式会社Nec情報システムズ データ記憶システム、データ記憶方法
US8074107B2 (en) 2009-10-26 2011-12-06 Amazon Technologies, Inc. Failover and recovery for replicated data instances
US10133643B2 (en) * 2015-05-05 2018-11-20 International Business Machines Corporation Resynchronizing to a first storage system after a failover to a second storage system mirroring the first storage system
US10229013B2 (en) * 2016-10-13 2019-03-12 International Business Machines Corporation Generating a health condition message on a health condition detected at a server to send to a host system accessing the server

Also Published As

Publication number Publication date
JP2018181038A (ja) 2018-11-15
US10725847B2 (en) 2020-07-28
US20180300196A1 (en) 2018-10-18

Similar Documents

Publication Publication Date Title
US11176172B2 (en) Methods and apparatus for automatic database failover in a master-replica replication configuration
JP6186787B2 (ja) データ転送装置、データ転送システム、データ転送方法及びプログラム
WO2019061720A1 (zh) 一种数据同步的方法和系统
JPWO2017042890A1 (ja) データベースシステム、サーバ装置、プログラムおよび情報処理方法
CN107480014A (zh) 一种高可用设备切换方法及装置
JP2007011672A (ja) Raid装置、通信接続監視方法及びプログラム
JP2013171301A (ja) ジョブ継続管理装置、ジョブ継続管理方法、及び、ジョブ継続管理プログラム
US11397632B2 (en) Safely recovering workloads within a finite timeframe from unhealthy cluster nodes
US9043283B2 (en) Opportunistic database duplex operations
TW201308095A (zh) 資料同步方法
CN110109772A (zh) 一种cpu的重启方法、通信设备及可读存储介质
JP5558279B2 (ja) 監視制御システム、およびこれに利用する監視制御装置、監視制御方法
JP2005301436A (ja) クラスタシステムおよびクラスタシステムにおける障害回復方法
JP2010244463A (ja) イベント検出制御方法及びシステム
JP6901677B2 (ja) 管理プログラム、管理装置および管理方法
US20200387428A1 (en) Information processing system
JP2019159977A (ja) 制御プログラム、制御装置及び制御方法
US8812900B2 (en) Managing storage providers in a clustered appliance environment
US9250841B2 (en) Print server, control method of print server, and storage medium
US20170017520A1 (en) System and control method
US20090106781A1 (en) Remote call handling methods and systems
CN111064618B (zh) 一种服务器高可用的实现方法、装置、设备和存储介质
CN104683153B (zh) 一种集群路由器主备mpu控制方法及其系统
US8750120B2 (en) Confirmed delivery of bridged unicast frames
JP2011191942A (ja) 処理方法及び装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200115

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20201111

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201208

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210128

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: 20210518

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210531

R150 Certificate of patent or registration of utility model

Ref document number: 6901677

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150