JP5880608B2 - フォールトトレラントサーバ - Google Patents

フォールトトレラントサーバ Download PDF

Info

Publication number
JP5880608B2
JP5880608B2 JP2014059873A JP2014059873A JP5880608B2 JP 5880608 B2 JP5880608 B2 JP 5880608B2 JP 2014059873 A JP2014059873 A JP 2014059873A JP 2014059873 A JP2014059873 A JP 2014059873A JP 5880608 B2 JP5880608 B2 JP 5880608B2
Authority
JP
Japan
Prior art keywords
memory
subsystem
data
copy
online
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
JP2014059873A
Other languages
English (en)
Other versions
JP2015184866A (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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2014059873A priority Critical patent/JP5880608B2/ja
Priority to US14/641,146 priority patent/US9785524B2/en
Publication of JP2015184866A publication Critical patent/JP2015184866A/ja
Application granted granted Critical
Publication of JP5880608B2 publication Critical patent/JP5880608B2/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/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/1658Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit
    • 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/1629Error detection by comparing the output of redundant processing systems
    • G06F11/1641Error detection by comparing the output of redundant processing systems where the comparison is not performed by the redundant processing components
    • G06F11/1645Error detection by comparing the output of redundant processing systems where the comparison is not performed by the redundant processing components and the comparison itself uses redundant hardware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/83Indexing scheme relating to error detection, to error correction, and to monitoring the solution involving signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Hardware Redundancy (AREA)

Description

本発明は、フォールトトレラントサーバにかかり、特に、二重化処理を実行するフォールトトレラントサーバに関する。
同一のデータに対して、オンライン系、オフライン系といった2つのサブシステムで同一の処理を行って情報処理を二重化するフォールトトレラントサーバ(Fault Tolerant Server:FTサーバ)が知られている(特許文献1参照)。このようなフォールトトレラントサーバでは、通常はオンライン系による情報処理の結果が利用されることとなるが、かかるオンライン系に障害が生じた際には、同一の処理を行っているオフライン系が新たなオンライン系となる。これにより、情報処理が停止してしまうことを防止することができる。なお、2重化処理の実現方式は、ハードウェア方式とソフトウェア方式とがある。
ここで、フォールトトレラントサーバでは、2つのサブシステムで情報処理を二重化していることから、各サブシステムに搭載されているメモリの内容が同一となる。ところが、オンライン系のサブシステムで情報処理を実行しているときに、オフライン系のサブシステムが停止している状態であると、オンライン系のメモリの内容と、オフライン系のメモリの内容とが、相互に異なることとなる。このため、オフライン系のCPUの交換後やオペレーティングシステム(以下、OS(Operating System)という)の起動後に、オンライン系と同期する前には、オンライン系のメモリの全ページをオフライン系のメモリに一括してコピーする必要がある。なお、上記メモリのページとは、当該メモリの記憶領域を管理する単位である。
特開2009−199197号公報
しかしながら、オンライン系からオフライン系へのメモリコピーの速度は、例えば、8GB/sであるため、全容量が256GBのメモリをコピーした場合には、30秒間かかることとなる。すると、このメモリコピー中の30秒間はOSが停止し、フォールトトレラントサーバによる情報処理が停止してしまう、という問題が生じる。その結果、フォールトトレラントサーバとしての可用性が低下しうる。
このため、本発明の目的は、上述した課題である、可用性が低下する、という問題を解決することができるフォールトトレラントサーバを提供することにある。
本発明の一形態であるフォールトトレラントサーバは、
演算装置及びメモリを備えたオンライン系サブシステムと、演算装置及びメモリを備えたオフライン系サブシステムと、による情報処理を二重化するよう構成された情報処理装置であって、
前記オンライン系サブシステム及び前記オフライン系サブシステムによる情報処理の二重化を開始する前に、前記オンライン系サブシステムの演算装置による情報処理の実行を停止させずに、前記オンライン系サブシステムのメモリに記憶されている全てのデータを、前記オフライン系サブシステムのメモリにコピーする全コピー処理を実行する全コピー手段と、
前記オンライン系サブシステムのメモリに記憶されているデータのうち、前記全コピー処理中に内容が変更されたと判定される基準を満たすデータを検出するデータ検出手段と、
前記検出されたデータを、前記オンライン系サブシステムのメモリから前記オフライン系サブシステムのメモリにコピーする変更データコピー手段と、
を備えた、
という構成をとる。
また、本発明の一形態であるプログラムは、
演算装置及びメモリを備えたオンライン系サブシステムと、演算装置及びメモリを備えたオフライン系サブシステムと、による情報処理を二重化するよう構成されたフォールトトレラントサーバに装備された制御装置に、
前記オンライン系サブシステム及び前記オフライン系サブシステムによる情報処理の二重化を開始する前に、前記オンライン系サブシステムの演算装置による情報処理の実行を停止させずに、前記オンライン系サブシステムのメモリに記憶されている全てのデータを、前記オフライン系サブシステムのメモリにコピーする全コピー処理を実行する全コピー手段と、
前記オンライン系サブシステムのメモリに記憶されているデータのうち、前記全コピー処理中に内容が変更されたと判定される基準を満たすデータを検出するデータ検出手段と、
前記検出されたデータを、前記オンライン系サブシステムのメモリから前記オフライン系サブシステムのメモリにコピーする変更データコピー手段と、
を実現させる、
という構成をとる。
本発明の一形態であるメモリコピー方法は、
演算装置及びメモリを備えたオンライン系サブシステムと、演算装置及びメモリを備えたオフライン系サブシステムと、による情報処理を二重化するよう構成されたフォールトトレラントサーバが、
前記オンライン系サブシステム及び前記オフライン系サブシステムによる情報処理の二重化を開始する前に、前記オンライン系サブシステムの演算装置による情報処理の実行を停止させずに、前記オンライン系サブシステムのメモリに記憶されている全てのデータを、前記オフライン系サブシステムのメモリにコピーする全コピー処理を実行し、
前記オンライン系サブシステムのメモリに記憶されているデータのうち、前記全コピー処理中に内容が変更されたと判定される基準を満たすデータを検出し、
前記検出されたデータを、前記オンライン系サブシステムのメモリから前記オフライン系サブシステムのメモリにコピーする、
という構成をとる。
本発明は、以上のように構成されることにより、可用性の向上を図ることができるフォールトトレラントサーバを提供することができる。
本発明の第1の実施形態におけるフォールトトレラントサーバの構成を示すブロック図である。 図1に開示したフォールトトレラントサーバを構成するftチップセットの構成を示す機能ブロック図である。 図1に開示したフォールトトレラントサーバによるメモリページコピーの様子を示す図である。 図1に開示したフォールトトレラントサーバの動作を示すフローチャートである。 図1に開示したフォールトトレラントサーバの動作を示すフローチャートである。 図1に開示したフォールトトレラントサーバの動作を示すフローチャートである。 本発明の第2の実施形態におけるフォールトトレラントサーバの構成を示すブロック図である。
<実施形態1>
本発明の第1の実施形態を、図1乃至図6を参照して説明する。図1乃至図2は、フォールトトレラントサーバの構成を説明するための図であり、図3乃至図6は、その動作を説明するための図である。
[構成]
本実施形態におけるフォールトトレラントサーバは、演算装置と記憶装置とを備えた1台あるいは複数台の情報処理装置にて構成されている。そして、フォールトトレラントサーバは、図1に示すように、オンライン系サブシステム10とオフライン系サブシステム20とを備えており、両サブシステム10,20が同一のデータに対して同一の情報処理を行う二重化処理(同期処理)を実行するよう構成されている。
具体的に、オンライン系サブシステム10は、プロセッサ11(演算装置)と、メモリ12と、ftチップセット13と、IOデバイス14,15と、を備えている。また、オフライン系サブシステム20も同様に、プロセッサ21と、メモリ22と、ftチップセット23と、IOデバイス24,25と、を備えている。そして、両プロセッサ11,21は、メモリ12,22に記憶されている同一のデータを用いて、同一の演算処理を行うよう作動する。このため、オンライン系サブシステム10に障害が生じた場合であっても、オフライン系サブシステム20にて情報処理を継続実行することができる。
なお、フォールトトレラントサーバは、各サブシステム10,20を構成するプロセッサ11,21やメモリ12,22などの構成要素が、それぞれ個別のハードウェアで構成されていてもよく、それぞれソフトウェアによって仮想化されて構成されていてもよい。そして、フォールトトレラントサーバは、ハードウェア方式に限らず、高速チェックポイント方式(ダーティーページ/CPUコンテキスト転送によるメモリ内容同期方式)や、仮想ロックステップ方式(Input情報の記録/再生による動作方式)などを使用するソフトウェア方式でもよい。
ここで、フォールトトレラントサーバは、二重化処理を行うため、両サブシステム10,20に搭載されているメモリ12,22の内容が同一である必要がある。このため、オフライン系サブシステム20のプロセッサ21の交換後や、OS(Operating System)という)の起動後に、両サブシステム10,20による二重化処理(同期処理)を開始する前には、両サブシステム10,20のメモリ12,22を同期する必要がある。つまり、稼働し続けているオンライン系サブシステム10のメモリ12内のデータを、オフライン系サブシステム20のメモリ22に内にコピーする必要がある。このような二重化処理を開始する前にメモリコピーを実行するための構成を、オンライン系サブシステム10及びオフライン系サブシステム20は備えている。以下、メモリコピーを実行するための構成について説明する。
上述したメモリコピーを実行するための構成は、例えば、オンライン系サブシステム10のftチップセット13に設けられている。なお、以下では、オンライン系サブシステム10のftチップセット13の構成を説明するが、オフライン系サブシステム20もオンライン系となりうるため、当該オフライン系サブシステム20のftチップセット23も同様の構成をとる。
具体的に、オンライン系サブシステム10のftチップセット13は、まず、図示しない制御部(制御装置)と記憶部とを備えている。そして、ftチップセット13は、図2に示すように、装備された制御部にプログラムが組み込まれることによって構築された、全コピー部31、データ検出部32、変更データコピー部33、パケット監視部34、を備えている。また、ftチップセット13は、装備された記憶部に形成された、チェックサム一致メモリスト35、チェックサム不一致メモリスト36、を備えている。なお、上記全コピー部31、データ検出部32、変更データコピー部33によって、主にメモリコピーを実行する機能部となる「Data Mover」を構成している。以下、各構成について詳述する。
まず、各サブシステム10,20のメモリ12,22は、記憶領域を管理する単位であるページを有している。そして、後述するメモリ内のデータのコピーは、ページ単位で行われることとなる。例えば、ページは、数MBの容量である。但し、メモリ内のデータのコピーは、他の単位で行われてもよい。
上記データ検出部32(データ検出手段)は、まず、OS起動後のメモリコピー処理に先立って、オンライン系サブシステム10のメモリ12内の全てのページ毎に、当該ページに記憶されているデータの内容に基づくチェックサムを算出する。そして、データ検出部32は、算出したページ毎のチェックサムを、当該ページと関連付けて保存しておく。例えば、算出したチェックサムは、ftチップセット内の記憶装置に、メモリページの識別情報と関連付けて保存される。
上記チェックサムは、メモリのページに記憶されているデータの内容の要約を表す情報である。このため、メモリページ毎のデータの内容が異なれば、要約であるチェックサムもそれぞれ異なる値となる可能性が高いと言える。なお、上記チェックサムは、メモリページのデータ内容に基づく値であれば、いかなる方法で算出されてもよい。例えば、データ検出部32は、メモリページのデータのハッシュ値といった他の要約情報を算出してもよい。なお、ここで算出したチェックサムを、「第1チェックサム」(第一要約)と呼ぶこととする。
また、データ検出部32は、その後、再度、オンライン系サブシステム10のメモリ12の全てのページ毎に、当該ページに記憶されているデータの内容に基づくチェックサムを算出する。つまり、データ検出部32は、メモリコピー処理に先立って、1回目のチェックサムの算出を行い、その後、後述する全コピー部31によるメモリコピー処理の開始後であって全コピー処理中に、2回目のチェックサムの算出を行う。なお、2回目のチェックサムの算出は、全コピー部31によるコピーが終了したメモリページに対して順次行われてもよく、全コピー部31による全てのメモリページのコピーが終了した後に行われてもよい。なお、ここで算出したチェックサムを、「第2チェックサム」(第二要約)と呼ぶこととする。
そして、データ検出部32は、同一のメモリページに対応する、保存している「第1チェックサム」と、算出した「第2チェックサム」とを比較して、差分があるか否か(変化があるか否か)を調べる。データ検出部32は、比較の結果、各チェックサムに差分がない場合には、対応するメモリページを識別するページ情報を、チェックサム一致リスト35に登録する。一方、データ検出部32は、比較の結果、各チェックサムに差分がある場合には、対応するメモリページを識別するページ情報を、チェックサム不一致リスト36に登録する。つまり、チェックサムに差分がある場合は、全コピー処理中に同一のメモリページの内容が変更されたと判定される基準を満たすデータとして検出されることとなる。
上記全コピー部31(全コピー手段)は、上述したようにデータ検出部32による1回目のチェックサムの算出が終了した後に、オンライン系サブシステム10のメモリ12内の全てのページを、オフライン系サブシステム20にコピーする全コピー処理を行う。このとき、フォールトトレラントサーバのOSの稼働つまりオンライン系サブシステム10のプロセッサ11の稼働を停止させることなく、当該オンライン系サブシステム10による情報処理を継続したまま、バックグランド処理で全コピー処理を行う。例えば、プロセッサ11における全コピー処理の優先度は、他の情報処理の優先度よりも低く設定される。
上記変更データコピー部33(変更データコピー手段)は、上述した全コピー部31による全コピー処理、及び、データ検出部32による2回目のチェックサム算出後に、チェックサム不一致メモリスト36を参照する。そして、変更データコピー部33は、チェックサム不一致メモリスト36に登録されているメモリページを、オンライン系サブシステム10のメモリ12から、オフライン系サブシステム20のメモリ22コピーする。つまり、変更データコピー部33は、チェックサムに差分があり、全コピー処理中に同一のメモリページの内容が変更されたと判定される基準を満たすデータが格納されているメモリページを、オフライン系にコピーする。
変更データコピー部33によるメモリコピーの様子を、図3を参照して説明する。図3の左側には、1回目のチェックサム算出時におけるメモリページのデータ内容とチェックサムとの対応を示しており、図3の右側には、2回目のチェックサム算出時におけるメモリページのデータ内容とチェックサムとの対応を示している。この図の例では、上から2行目と3行目のメモリページのチェックサムが、1回目と2回目の算出時で異なっているため、これらのメモリページがオンライン系サブシステム10からオフライン系サブシステム20にコピーされる。これにより、上述した全コピー処理中つまりOSにより使用されてメモリ中のデータに変更があった場合でも、かかるデータをオンライン系サブシステム10からオフライン系サブシステム20に反映させることができる。
ここで、変更データコピー部33は、チェックサム不一致メモリスト36に登録されているメモリページをコピーする際には、フォールトトレラントサーバのOSを停止する、つまり、オンライン系サブシステム10による情報処理を停止する。そして、変更データコピー部33は、チェックサム不一致メモリリスト36に登録されている全てのメモリページを一括してオフライン系にコピーする一括コピー処理を実行する。このとき、チェックサム不一致メモリリスト36に登録されるメモリページはメモリ12内の全ページよりも少ないと考えられるため、一括コピー処理によりフォールトトレラントサーバによる情報処理が停止している時間は、全ページをコピーするよりも短い時間となる。
その後、変更データコピー部33は、上述したチェックサム不一致メモリスト36に登録されているメモリページの一括コピー処理が終了すると、フォールトトレラントサーバによる二重化処理を開始する。つまり、停止していたオンライン系サブシステム10のプロセッサ11による情報処理の実行を再開すると共に、オフライン系サブシステム20のプロセッサ21による情報処理の実行を開始して、二重化処理つまり同期実行を開始する。
さらに、変更データコピー部33は、二重化処理を開始すると、かかる二重化処理を停止することなく、バックグラウンド処理で、チェックサム一致メモリスト35に登録されているメモリページをオンライン系サブシステム10のメモリ12からオフライン系サブシステム20のメモリ22にコピーする。ここで、チェックサム一致メモリスト35に登録されているメモリページは、全コピー処理の前後でチェックサムに差分が生じなかったものであるが、メモリページの内容に変更があっても、チェックサムに差分が生じない場合がある。そのようなメモリページを両サブシステム10,20のメモリ12,22で一致させるため、チェックサム一致メモリスト35に登録されているメモリページのコピーを行う。この処理は、チェックサム間で差分が生じたものとして検出されなかった(未検出であった)メモリページをコピーする処理であるため、未検出データコピー処理と呼ぶ。
具体的に、変更データコピー部33は、未検出データコピー処理にて、オンライン系サブシステム10のメモリ12内とオフライン系サブシステム20のメモリ22内から、それぞれ同じアドレスのメモリページを読み出す。そして、変更データコピー部33は、読み出した各メモリページ内のデータ内容が一致しているか否かを調べる。一致している場合には、変更データコピー部33は、メモリページのコピーは行わない。一方、一致していない場合には、読み出したオンライン系サブシステム10のメモリページを、当該オンライン系サブシステム10のメモリ12とオフライン系サブシステム20のメモリとの同じアドレスに、それぞれ書き込んで記憶する。つまり、一致しない場合には、単にオンライン系サブシステム10のメモリページをオフライン系サブシステム20に書き込むだけでなく、オンライン系サブシステム10にも記憶し直す。これは、オンライン系サブシステム10とオフライン系サブシステム20とで同期処理を確保するためである。
また、上記パケット監視部34(変更データコピー手段)は、上述した未検出データコピー処理中に、オンライン系サブシステム10のプロセッサ11と、オフライン系サブシステム20のプロセッサ21と、からそれぞれ出力されるデータであるパケットを監視する。そして、パケット監視部34は、両プロセッサ11,21から出力されるパケットの内容が一致していないことを検出した場合には、フォールトトレラントサーバのOSを停止する、つまり、オンライン系サブシステム10及びオフライン系サブシステム20による二重化処理を停止する。さらに、パケット監視部34は、オンライン系サブシステム10のメモリ12に記憶されている全てのメモリページを、オフライン系サブシステム20のメモリ22に一括してコピーする。なお、このコピー処理は全コピー部31が行い、かかるコピー処理が終了すると、二重化処理を再開する。
[動作]
次に、上述したフォールトトレラントサーバの動作を、図4乃至図6のフローチャートを参照して説明する。
フォールトトレラントサーバを起動し(ステップS1)、OSを起動すると(ステップS2)、二重化処理を行うために両メモリ12,22を同期する処理を開始する。このとき、オンライン系サブシステム10は、通常の情報処理の実行を継続したままであり、OSは停止していない状態である。
データ検出部32は、まず、メモリコピー処理に先立って、オンライン系サブシステム10のメモリ12内の全てのページ毎に、当該ページに記憶されているデータの内容に基づいて1回目のチェックサム計算を行う。そして、算出したチェックサムを第1チェックサムとして、該当ページと関連付けて保存する(ステップS3)。
データ検出部32による全てのメモリページに対する1回目のチェックサム計算が終了すると、全コピー部31がオンライン系サブシステム10のメモリ12内の全てのページを、オフライン系サブシステム20のメモリ22にコピーする全コピー処理を開始する(ステップS4)。このとき、フォールトトレラントサーバのOSは停止せず、オンライン系サブシステム10による情報処理を継続したまま、バックグランド処理で全コピー処理を行う。
これにより、フォールトトレラントサーバを停止することなく、まずはオンライン系サブシステム10のメモリ12の内容を、オフライン系サブシステム20のメモリ22にコピーすることができる。
また、上記全コピー処理中には、データ検出部32が、再度、オンライン系サブシステム10のメモリ12の全てのページ毎に、当該ページに記憶されているデータの内容に基づいて2回目のチェックサム計算を行い、第2チェックサムとする(ステップS5)。このとき、2回目のチェックサム計算は、上述した全コピー部31によりオフライン系サブシステム20のメモリ22にコピーが完了したものに対して行う。
そして、データ検出部32は、同一のメモリページの第1チェックサムと第2チェックサムを比較して、差分があるか否かを調べる(ステップS6)。データ検出部32は、比較の結果、各チェックサムに差分がある場合には(ステップS6:Yes)、対応するメモリページを識別するページ情報を、チェックサム不一致リスト36に登録する(ステップS7)。一方、データ検出部32は、比較の結果、各チェックサムに差分がない場合には(ステップS6:No)、対応するメモリページを識別するページ情報を、チェックサム一致リスト35に登録する(ステップS8)。
上述した処理により、チェックサムに差分があるページは、全コピー処理中つまりOS稼働中に、メモリページの内容が変更されたと判定される基準を満たすデータとして検出され、チェックサム不一致リスト36に登録される。なお、チェックサムに差分がないページであっても、メモリページの内容が変更されている場合があるが、この場合は判定基準を満たさなかったこととなる。なお、データ検出部32は、メモリページのチェックサムを用いて全コピー処理の前後で内容が変更されたメモリページの検出を行っているが、他の方法を用いて内容が変更されたメモリページの検出を行ってもよい。
続いて、上述した全コピー部31による全コピー処理(ステップS4)、及び、データ検出部32による2回目のチェックサム計算が終了すると(ステップS5−S8)、変更データコピー部33がOSつまりオンライン系サブシステム10の情報処理を停止する(ステップS9)。そして、変更データコピー部33は、OSを停止した状態で、チェックサム不一致メモリスト36に登録されているメモリページを、オンライン系サブシステム10のメモリ12から、オフライン系サブシステム20のメモリ22に一括してコピーする(ステップS10)。
これにより、上述した全コピー処理中(ステップS5)にOSで使用されてメモリ12内のデータに変更があった場合でも、かかるデータをオフライン系サブシステム20のメモリ22に反映させることができる。このとき、チェックサム不一致メモリリスト36に登録されるメモリページは、メモリ12内の全ページよりも少ないため、フォールトトレラントサーバによる情報処理が停止している時間は、全ページをコピーするよりも短い時間となる。
その後、変更データコピー部33は、上述したチェックサム不一致メモリスト36に登録されているメモリページの一括コピー処理が終了すると、フォールトトレラントサーバのOSを再開して、二重化処理(同期処理)を開始する(ステップS11)。
続いて、変更データコピー部33は、二重化処理を停止することなくバックグラウンド処理で、チェックサム一致メモリスト35に登録されているメモリページをオンライン系サブシステム10のメモリ12からオフライン系サブシステム20のメモリ22にコピーする(ステップS12)。かかる処理により、全コピー処理の前後でメモリページの内容に変更があってもチェックサムに差分が生じないメモリページを、両サブシステム10,20のメモリ12,22で一致させる。
具体的に、上述したコピー処理では、変更データコピー部33が、まず、オンライン系サブシステム10のメモリ12内の各ページの内容と、オフライン系サブシステム20のメモリ22の各ページの内容とを読み出す。そして、変更データコピー部33は、読み出した各ページの内容が一致しているか否かを調べ(ステップS13)、一致している場合には(ステップS13:Yes)、ページのコピーは行わない(ステップS14)。一方、一致していない場合には(ステップS13:No)、読み出したオンライン系サブシステム10のメモリページを、当該オンライン系サブシステム10のメモリ12と、オフライン系サブシステム20のメモリとに、それぞれ記憶する(ステップS15)。これは、オンライン系サブシステム10とオフライン系サブシステム20とで同期処理を確保するためである。
また、上述したチェックサム一致メモリスト35に登録されているメモリページのコピー処理中(ステップS12−15)には、パケット監視部34が両サブシステム10,20の両プロセッサ11,12からそれぞれ出力されるパケットを監視する(ステップS16)。パケット監視部34は、両プロセッサ11,21から出力されるパケットの内容が一致していないことを検出した場合には(ステップS17)、サーバのOSを停止して、オンライン系サブシステム10及びオフライン系サブシステム20の二重化処理を停止する(ステップS18)。そして、パケット監視部34は、オンライン系サブシステム10のメモリ12に記憶されている全てのメモリページを、オフライン系サブシステム20のメモリ22に一括してコピーする(ステップS19)。その後、全てのメモリページのコピーが終了すると、OSを再開して二重化処理を再開する(ステップS20)。
以上のように、本実施形態におけるフォールトトレラントサーバによると、オンライン系とオフライン系とでメモリコピーを行う際に、OSを停止する時間を、メモリを全てのコピーする場合と比較して短くすることができる。その結果、フォールトトレラントサーバにて提供しているサービス停止時間を短縮することができ、サーバ自体の可用性の向上を図ることができる。
ここで、上述したフォールトレラントサーバでは、全コピー処理の前後でそれぞれメモリページのチェックサムを算出して、当該全コピー処理中にデータ内容の変更のあったメモリページの検出を行っているが、他の方法によりメモリページの検出を行ってもよい。例えば、データ検出部132は、いずれかの記憶装置に全コピー処理前の全てのメモリページの内容を保持しておき、かかる保持データを参照して、全コピー処理中にメモリページの内容に変更があるか否かを判断して、変更があったメモリページを検出してもよい。
<実施形態2>
次に、本発明の第2の実施形態を、図7を参照して説明する。
本実施形態におけるフォールトトレラントサーバ100は、演算装置111及びメモリ112を備えたオンライン系サブシステム110と、演算装置121及びメモリ122を備えたオフライン系サブシステム120と、を備えている。そして、フォールトトレラントサーバは、各サブシステム110,120による情報処理を二重化するよう構成されている。
また、フォールトトレラントサーバ100は、全コピー手段130と、データ検出手段140と、変更データコピー手段150と、を備える。
上記全コピー手段130は、オンライン系サブシステム110及びオフライン系サブシステム120による情報処理の二重化を開始する前に、オンライン系サブシステム110の演算装置111による情報処理の実行を停止させずに、オンライン系サブシステム110のメモリ111に記憶されている全てのデータを、オフライン系サブシステム120のメモリ122にコピーする。
上記データ検出手段140は、オンライン系サブシステム110のメモリ112に記憶されているデータのうち、全コピー処理中に内容が変更されたと判定される基準を満たすデータを検出する。
上記変更データコピー手段150は、上記データ検出手段140により検出されたデータを、オンライン系サブシステム110のメモリ111からオフライン系サブシステム120のメモリ122にコピーする。
上記構成のフォールトトレラントサーバ100によると、まず、オンライン系サブシステム110は、オフライン系サブシステム120が停止状態であっても、メモリ112に記憶したデータを用いて演算装置111にて情報処理を実行する状態となる。かかる状況で、オフライン系サブシステム120が動作し、オンライン系サブシステム110に同期して情報処理の二重化を行う際には、オンライン系サブシステム110のメモリ111の内容をオフライン系サブシステム120のメモリ122に同期する必要がある。
このため、フォールトトレラントサーバ100は、まず、オンライン系サブシステム110の情報処理の実行を停止せずにバックグラウンド処理で、オンライン系サブシステム110のメモリ111に記憶されているデータの全てを、オフライン系サブシステム120のメモリ122にコピーする全コピー処理を実行する。これと共に、フォールトトレラントサーバ100は、オンライン系サブシステム110のメモリ120に記憶されているデータのうち、全コピー処理中に内容が変更されたと判定される基準を満たすデータを検出する処理を行う。そして、フォールトトレラントサーバ100は、検出されたデータを、オンライン系サブシステム110のメモリ111からオフライン系サブシステム120のメモリ122にコピーする。
ここで、上記検出されたデータのコピーは、全コピー処理が終了してからオンライン系サブシステム110の演算装置112による情報処理の実行を停止して、実行するとよい。そして、その後、オンライン系サブシステム110、オフライン系サブシステムの両方による情報処理の二重化を開始する。
これにより、本発明のフォールトトレラントサーバ100では、オンライン系サブシステム110とオフライン系サブシステム120とでメモリの同期を開始する前に、まず、オンライン系サブシステム110にて情報処理が実行された状態でメモリ112の全てのデータのコピーを行うため、かかる情報処理の停止を抑制することができる。そして、その後、オンライン系サブシステム110のメモリ112内で変更が生じた可能性の高いデータのみをオフライン系サブシステム120にコピーすることで、全データに対してコピー容量を抑制でき、迅速にオンライン系サブシステム110とオフライン系サブシステム120のメモリ112,122を一致させることができる。特に、このコピー処理のとき、オンライン系サブシステム110による情報処理の実行を停止しても、かかる停止の時間が、全データをコピーする際にかかる時間よりも短時間で済むこととなる。その結果、フォールトトレラントサーバ100の可用性の低下を抑制することができる。
<付記>
上記実施形態の一部又は全部は、以下の付記のようにも記載されうる。以下、本発明の構成の概略を説明する。但し、本発明は、以下の構成に限定されない。
(付記1)
演算装置及びメモリを備えたオンライン系サブシステムと、演算装置及びメモリを備えたオフライン系サブシステムと、による情報処理を二重化するよう構成されたフォールトトレラントサーバであって、
前記オンライン系サブシステム及び前記オフライン系サブシステムによる情報処理の二重化を開始する前に、前記オンライン系サブシステムの演算装置による情報処理の実行を停止させずに、前記オンライン系サブシステムのメモリに記憶されている全てのデータを、前記オフライン系サブシステムのメモリにコピーする全コピー処理を実行する全コピー手段と、
前記オンライン系サブシステムのメモリに記憶されているデータのうち、前記全コピー処理中に内容が変更されたと判定される基準を満たすデータを検出するデータ検出手段と、
前記検出されたデータを、前記オンライン系サブシステムのメモリから前記オフライン系サブシステムのメモリにコピーする変更データコピー手段と、
を備えたフォールトトレラントサーバ。
(付記2)
付記1に記載のフォールトトレラントサーバであって、
前記変更データコピー手段は、前記全コピー処理が終了してから前記検出されたデータを前記オフライン系サブシステムのメモリにコピーする、
フォールトトレラントサーバ。
(付記3)
付記2に記載のフォールトトレラントサーバであって、
前記変更データコピー手段は、前記全コピー処理が終了してから前記オンライン系サブシステムの演算装置による情報処理の実行を停止して、前記検出されたデータの全てを、前記オンライン系サブシステムのメモリから前記オフライン系サブシステムのメモリに一括してコピーする一括コピー処理を実行する、
フォールトトレラントサーバ。
(付記4)
付記3に記載のフォールトトレラントサーバであって、
前記変更データコピー手段は、前記一括コピー処理が終了すると、停止していた前記オンライン系サブシステムの演算装置による情報処理の実行を再開すると共に、前記オフライン系サブシステムの演算装置による情報処理の実行を開始して、情報処理の二重化を開始する、
フォールトトレラントサーバ。
上記構成のフォールトトレラントサーバによると、オンライン系サブシステムは、オフライン系サブシステムが停止状態であっても、メモリに記憶したデータを用いて演算装置にて情報処理を実行している。かかる状況で、オフライン系が動作し、オンライン系に同期して情報処理の二重化を開始する際には、オンライン系のメモリの内容をオフライン系に同期する必要がある。このため、まず、オンライン系は、自身による情報処理の実行を停止せずにバックグラウンド処理で、自身のメモリに記憶されているデータの全てをオフライン系のメモリにコピーする全コピー処理を実行する。これと共に、フォールトトレラントサーバでは、オンライン系のメモリに記憶されているデータのうち、全コピー処理中に内容が変更されたと判定される基準を満たすデータを検出する処理を行う。そして、フォールトトレラントサーバは、検出されたデータを、オンライン系のメモリからオフライン系のメモリにコピーする。このとき、検出されたデータのコピーは、全コピー処理が終了してからオンライン系の演算装置による情報処理の実行を停止して、実行するとよい。そして、その後、オンライン系、オフライン系の両方による情報処理の二重化を開始する。
これにより、本発明におけるフォールトトレラントサーバでは、オンライン系とオフライン系とで同期を開始する前に、まず、オンライン系にて情報処理が実行された状態でメモリの全てのデータのコピーを行うため、かかる情報処理の停止を抑制することができる。そして、オンライン系のメモリ内で全コピー処理中に変更が生じた可能性の高いデータのみをオフライン系にコピーすることで、全データに対してコピー容量を抑制でき、迅速にオンライン系のメモリとオフライン系のメモリとを一致させることができる。特に、検出されたデータのコピー処理のとき、オンライン系による情報処理の実行を停止しても、かかる停止の時間が、全データをコピーする際にかかる時間よりも短時間で済むこととなる。その結果、フォールトトレラントサーバの可用性の低下を抑制することができる。
(付記5)
付記4に記載のフォールトトレラントサーバであって、
前記変更データコピー手段は、前記一括コピー処理後であり前記オンライン系サブシステム及び前記オフライン系サブシステムによる情報処理の二重化を開始した後に、前記オンライン系サブシステムのメモリに記憶されているデータのうち、前記全コピー処理中に内容が変更されたと判定される基準を満たすデータとして検出されていないデータを、前記オンライン系サブシステム及び前記オフライン系サブシステムによる情報処理の二重化を停止させずに、前記オフライン系サブシステムのメモリにコピーする未検出データコピー処理を実行する、
フォールトトレラントサーバ。
(付記6)
付記5に記載のフォールトトレラントサーバであって、
前記変更データコピー手段は、前記未検出データコピー処理時に、コピーする前記オンライン系サブシステムのメモリに記憶されているデータが、前記オフライン系サブシステムのメモリに記憶されているデータと一致するか否かを調べ、一致している場合には、前記オンライン系サブシステムのメモリに記憶されているデータを前記オフライン系サブシステムのメモリにコピーせず、一致していない場合には、前記オンライン系サブシステムのメモリに記憶されているデータを、当該オンライン系サブシステムのメモリと前記オフライン系サブシステムのメモリとにそれぞれ記憶する、
フォールトトレラントサーバ。
これにより、オンライン系サブシステムのメモリのデータのうち、上述した全コピー処理中に内容の変更があっても判定基準を満たないことにより検出されないデータがあった場合でも、後にオフライン系のメモリにコピーして、両メモリを一致させることができる。このとき、オンライン系とオフライン系のメモリ間でデータが一致しない場合には、オンライン系に記憶されているデータを、当該オンライン系のメモリとオフライン系のメモリとに記憶することで、二重化処理を確保することができる。
(付記7)
付記5又は6に記載のフォールトトレラントサーバであって、
前記変更データコピー手段は、前記未検出データコピー処理中に、前記オンライン系サブシステムの演算装置と前記オフライン系サブシステムの演算装置とからそれぞれ出力されるデータを監視し、各データが一致していない場合には、前記オンライン系サブシステム及び前記オフライン系サブシステムによる情報処理の二重化を停止して、前記オンライン系サブシステムのメモリに記憶されているデータの全てを、前記オフライン系サブシステムのメモリに一括してコピーする、
フォールトトレラントサーバ。
このように、フォールトトレラントサーバは、上述した未検出データコピー処理中に、オンライン系とオフライン系とで情報処理のデータに不一致が生じたことを検出すると、二重化処理を停止して、オンライン系のメモリの全データをオフライン系のメモリにコピーする。その結果、二重化処理の不整合を確実に抑制することができ、可用性の低下を抑制することができる。
(付記8)
付記1乃至7のいずれかに記載のフォールトトレラントサーバであって、
前記データ検出手段は、前記全コピー処理の前に前記オンライン系サブシステムのメモリに記憶されている全てのデータの要約を算出して第一要約とし、前記全コピー処理中に前記オンライン系サブシステムのメモリに記憶されている全てのデータの要約を算出して第二要約とし、前記第一要約及び前記第二要約で変化があったデータを、前記全コピー処理中に内容が変更されたと判定される基準を満たすデータとして検出する、
フォールトトレラントサーバ。
これにより、全コピー処理中に内容に変更が生じるデータを簡易な処理で検出することができる。また、データの要約では、データの内容に変更があるにもかかわらず当該要約が同一となる場合があるが、上述した未検出データコピー処理にて、検出していないデータをコピーすることで、そのようなデータも適切にオフライン系にコピーすることができる。
(付記9)
演算装置及びメモリを備えたオンライン系サブシステムと、演算装置及びメモリを備えたオフライン系サブシステムと、による情報処理を二重化するよう構成されたフォールトトレラントサーバに装備された制御装置に、
前記オンライン系サブシステム及び前記オフライン系サブシステムによる情報処理の二重化を開始する前に、前記オンライン系サブシステムの演算装置による情報処理の実行を停止させずに、前記オンライン系サブシステムのメモリに記憶されている全てのデータを、前記オフライン系サブシステムのメモリにコピーする全コピー処理を実行する全コピー手段と、
前記オンライン系サブシステムのメモリに記憶されているデータのうち、前記全コピー処理中に内容が変更されたと判定される基準を満たすデータを検出するデータ検出手段と、
前記検出されたデータを、前記オンライン系サブシステムのメモリから前記オフライン系サブシステムのメモリにコピーする変更データコピー手段と、
を実現させるためのプログラム。
(付記10)
付記9に記載のプログラムであって、
前記変更データコピー手段は、前記全コピー処理が終了してから前記検出されたデータを前記オフライン系サブシステムのメモリにコピーする、
プログラム。
(付記11)
付記10に記載のフォールトトレラントサーバであって、
前記変更データコピー手段は、前記全コピー処理が終了してから前記オンライン系サブシステムの演算装置による情報処理の実行を停止して、前記検出されたデータの全てを、前記オンライン系サブシステムのメモリから前記オフライン系サブシステムのメモリに一括してコピーする一括コピー処理を実行する、
プログラム。
(付記12)
演算装置及びメモリを備えたオンライン系サブシステムと、演算装置及びメモリを備えたオフライン系サブシステムと、による情報処理を二重化するよう構成されたフォールトトレラントサーバが、
前記オンライン系サブシステム及び前記オフライン系サブシステムによる情報処理の二重化を開始する前に、前記オンライン系サブシステムの演算装置による情報処理の実行を停止させずに、前記オンライン系サブシステムのメモリに記憶されている全てのデータを、前記オフライン系サブシステムのメモリにコピーする全コピー処理を実行し、
前記オンライン系サブシステムのメモリに記憶されているデータのうち、前記全コピー処理中に内容が変更されたと判定される基準を満たすデータを検出し、
前記検出されたデータを、前記オンライン系サブシステムのメモリから前記オフライン系サブシステムのメモリにコピーする、
メモリデータコピー方法。
(付記13)
付記12に記載のメモリデータコピー方法であって、
前記全コピー処理が終了してから前記検出されたデータを前記オフライン系サブシステムのメモリにコピーする、
メモリデータコピー方法。
(付記14)
付記13に記載のメモリデータコピー方法であって、
前記全コピー処理が終了してから前記オンライン系サブシステムの演算装置による情報処理の実行を停止して、前記検出されたデータの全てを、前記オンライン系サブシステムのメモリから前記オフライン系サブシステムのメモリに一括してコピーする一括コピー処理を実行する、
メモリデータコピー方法。
なお、上述したプログラムは、記憶装置に記憶されていたり、コンピュータが読み取り可能な記録媒体に記録されている。例えば、記録媒体は、フレキシブルディスク、光ディスク、光磁気ディスク、及び、半導体メモリ等の可搬性を有する媒体である。
以上、上記実施形態等を参照して本願発明を説明したが、本願発明は、上述した実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明の範囲内で当業者が理解しうる様々な変更をすることができる。
10 オンライン系サブシステム
11 プロセッサ
12 メモリ
13 ftチップセット
14,15 IOデバイス
20 オフライン系サブシステム
21 プロセッサ
22 メモリ
23 ftチップセット
24,25 IOデバイス
31 全コピー部
32 データ検出部
33 変更データコピー部
34 パケット監視部
35 チェックサム一致メモリリスト
36 チェックサム不一致メモリリスト
100 フォールトトレラントサーバ
110 オンライン系サブシステム
111 演算装置
112 メモリ
120 オフライン系サブシステム
121 演算装置
122 メモリ
130 全コピー手段
140 データ検出手段
150 変更データコピー手段

Claims (18)

  1. 演算装置及びメモリを備えたオンライン系サブシステムと、演算装置及びメモリを備えたオフライン系サブシステムと、による情報処理を二重化するよう構成されたフォールトトレラントサーバであって、
    前記オンライン系サブシステム及び前記オフライン系サブシステムによる情報処理の二重化を開始する前に、前記オンライン系サブシステムの演算装置による情報処理の実行を停止させずに、前記オンライン系サブシステムのメモリに記憶されている全てのデータを、前記オフライン系サブシステムのメモリにコピーする全コピー処理を実行する全コピー手段と、
    前記オンライン系サブシステムのメモリに記憶されているデータのうち、前記全コピー処理中に内容が変更されたと判定される基準を満たすデータを検出するデータ検出手段と、
    前記検出されたデータを、前記オンライン系サブシステムのメモリから前記オフライン系サブシステムのメモリにコピーする変更データコピー手段と、
    を備え、
    前記変更データコピー手段は、前記オンライン系サブシステムのメモリに記憶されているデータのうち、前記全コピー処理中に内容が変更されたと判定される基準を満たすデータとして検出されていないデータを、前記オンライン系サブシステム及び前記オフライン系サブシステムによる情報処理の二重化を停止させずに、前記オフライン系サブシステムのメモリにコピーする未検出データコピー処理を実行する、
    フォールトトレラントサーバ。
  2. 請求項1に記載のフォールトトレラントサーバであって、
    前記変更データコピー手段は、前記全コピー処理が終了してから前記検出されたデータを前記オフライン系サブシステムのメモリにコピーする、
    フォールトトレラントサーバ。
  3. 請求項2に記載のフォールトトレラントサーバであって、
    前記変更データコピー手段は、前記全コピー処理が終了してから前記オンライン系サブシステムの演算装置による情報処理の実行を停止して、前記検出されたデータの全てを、前記オンライン系サブシステムのメモリから前記オフライン系サブシステムのメモリに一括してコピーする一括コピー処理を実行する、
    フォールトトレラントサーバ。
  4. 請求項3に記載のフォールトトレラントサーバであって、
    前記変更データコピー手段は、前記一括コピー処理が終了すると、停止していた前記オンライン系サブシステムの演算装置による情報処理の実行を再開すると共に、前記オフライン系サブシステムの演算装置による情報処理の実行を開始して、情報処理の二重化を開始する、
    フォールトトレラントサーバ。
  5. 請求項1乃至4のいずれか一項に記載のフォールトトレラントサーバであって、
    前記変更データコピー手段は、前記未検出データコピー処理時に、コピーする前記オンライン系サブシステムのメモリに記憶されているデータが、前記オフライン系サブシステムのメモリに記憶されているデータと一致するか否かを調べ、一致している場合には、前記オンライン系サブシステムのメモリに記憶されているデータを前記オフライン系サブシステムのメモリにコピーせず、一致していない場合には、前記オンライン系サブシステムのメモリに記憶されているデータを、当該オンライン系サブシステムのメモリと前記オフライン系サブシステムのメモリとにそれぞれ記憶する、
    フォールトトレラントサーバ。
  6. 請求項1乃至5のいずれか一項に記載のフォールトトレラントサーバであって、
    前記変更データコピー手段は、前記未検出データコピー処理中に、前記オンライン系サブシステムの演算装置と前記オフライン系サブシステムの演算装置とからそれぞれ出力されるデータを監視し、各データが一致していない場合には、前記オンライン系サブシステム及び前記オフライン系サブシステムによる情報処理の二重化を停止して、前記オンライン系サブシステムのメモリに記憶されているデータの全てを、前記オフライン系サブシステムのメモリに一括してコピーする、
    フォールトトレラントサーバ。
  7. 演算装置及びメモリを備えたオンライン系サブシステムと、演算装置及びメモリを備えたオフライン系サブシステムと、による情報処理を二重化するよう構成されたフォールトトレラントサーバであって、
    前記オンライン系サブシステム及び前記オフライン系サブシステムによる情報処理の二重化を開始する前に、前記オンライン系サブシステムの演算装置による情報処理の実行を停止させずに、前記オンライン系サブシステムのメモリに記憶されている全てのデータを、前記オフライン系サブシステムのメモリにコピーする全コピー処理を実行する全コピー手段と、
    前記オンライン系サブシステムのメモリに記憶されているデータのうち、前記全コピー処理中に前記オンライン系サブシステムのメモリに記憶されているデータの要約が変更されたデータを検出するデータ検出手段と、
    前記検出されたデータを、前記オンライン系サブシステムのメモリから前記オフライン系サブシステムのメモリにコピーする変更データコピー手段と、
    を備えるフォールトトレラントサーバ。
  8. 請求項7に記載のフォールトトレラントサーバであって、
    前記データ検出手段は、前記全コピー処理の前に前記オンライン系サブシステムのメモリに記憶されている全てのデータの要約を算出して第一要約とし、前記全コピー処理中に前記オンライン系サブシステムのメモリに記憶されている全てのデータの要約を算出して第二要約とし、前記第一要約及び前記第二要約で変化があったデータを、前記全コピー処理中に要約が変更されたデータとして検出する、
    フォールトトレラントサーバ。
  9. 演算装置及びメモリを備えたオンライン系サブシステムと、演算装置及びメモリを備えたオフライン系サブシステムと、による情報処理を二重化するよう構成されたフォールトトレラントサーバに装備された制御装置に、
    前記オンライン系サブシステム及び前記オフライン系サブシステムによる情報処理の二重化を開始する前に、前記オンライン系サブシステムの演算装置による情報処理の実行を停止させずに、前記オンライン系サブシステムのメモリに記憶されている全てのデータを、前記オフライン系サブシステムのメモリにコピーする全コピー処理を実行する全コピー手段と、
    前記オンライン系サブシステムのメモリに記憶されているデータのうち、前記全コピー処理中に内容が変更されたと判定される基準を満たすデータを検出するデータ検出手段と、
    前記検出されたデータを、前記オンライン系サブシステムのメモリから前記オフラインサブシステムのメモリにコピーする変更データコピー手段と、
    を実現させると共に、
    前記変更データコピー手段は、前記オンライン系サブシステムのメモリに記憶されているデータのうち、前記全コピー処理中に内容が変更されたと判定される基準を満たすデータとして検出されていないデータを、前記オンライン系サブシステム及び前記オフライン系サブシステムによる情報処理の二重化を停止させずに、前記オフライン系サブシステムのメモリにコピーする未検出データコピー処理を実行する、
    ことを実現させるためのプログラム。
  10. 請求項9に記載のプログラムであって、
    前記変更データコピー手段は、前記全コピー処理が終了してから前記検出されたデータを前記オフライン系サブシステムのメモリにコピーする、
    プログラム。
  11. 請求項10に記載のプログラムであって、
    前記変更データコピー手段は、前記全コピー処理が終了してから前記オンライン系サブシステムの演算装置による情報処理の実行を停止して、前記検出されたデータの全てを、前記オンライン系サブシステムのメモリから前記オフライン系サブシステムのメモリに一括してコピーする一括コピー処理を実行する、
    プログラム。
  12. 演算装置及びメモリを備えたオンライン系サブシステムと、演算装置及びメモリを備えたオフライン系サブシステムと、による情報処理を二重化するよう構成されたフォールトトレラントサーバに装備された制御装置に、
    前記オンライン系サブシステム及び前記オフライン系サブシステムによる情報処理の二重化を開始する前に、前記オンライン系サブシステムの演算装置による情報処理の実行を停止させずに、前記オンライン系サブシステムのメモリに記憶されている全てのデータを、前記オフライン系サブシステムのメモリにコピーする全コピー処理を実行する全コピー手段と、
    前記オンライン系サブシステムのメモリに記憶されているデータのうち、前記全コピー処理中に前記オンライン系サブシステムのメモリに記憶されているデータの要約が変更されたデータを検出するデータ検出手段と、
    前記検出されたデータを、前記オンライン系サブシステムのメモリから前記オフライン
    サブシステムのメモリにコピーする変更データコピー手段と、
    を実現させるためのプログラム。
  13. 請求項12に記載のプログラムであって、
    前記データ検出手段は、前記全コピー処理の前に前記オンライン系サブシステムのメモリに記憶されている全てのデータの要約を算出して第一要約とし、前記全コピー処理中に前記オンライン系サブシステムのメモリに記憶されている全てのデータの要約を算出して第二要約とし、前記第一要約及び前記第二要約で変化があったデータを、前記全コピー処理中に要約が変更されたデータとして検出する、
    プログラム。
  14. 演算装置及びメモリを備えたオンライン系サブシステムと、演算装置及びメモリを備えたオフライン系サブシステムと、による情報処理を二重化するよう構成されたフォールトトレラントサーバが、
    前記オンライン系サブシステム及び前記オフライン系サブシステムによる情報処理の二重化を開始する前に、前記オンライン系サブシステムの演算装置による情報処理の実行を停止させずに、前記オンライン系サブシステムのメモリに記憶されている全てのデータを、前記オフライン系サブシステムのメモリにコピーする全コピー処理を実行し、
    前記オンライン系サブシステムのメモリに記憶されているデータのうち、前記全コピー処理中に内容が変更されたと判定される基準を満たすデータを検出し、
    前記検出されたデータを、前記オンライン系サブシステムのメモリから前記オフライン系サブシステムのメモリにコピーし、
    前記オンライン系サブシステムのメモリに記憶されているデータのうち、前記全コピー処理中に内容が変更されたと判定される基準を満たすデータとして検出されていないデータを、前記オンライン系サブシステム及び前記オフライン系サブシステムによる情報処理の二重化を停止させずに、前記オフライン系サブシステムのメモリにコピーする未検出データコピー処理を実行する、
    メモリデータコピー方法。
  15. 請求項14に記載のメモリデータコピー方法であって、
    前記全コピー処理が終了してから前記検出されたデータを前記オフライン系サブシステムのメモリにコピーする、
    メモリデータコピー方法。
  16. 請求項15に記載のメモリデータコピー方法であって、
    前記全コピー処理が終了してから前記オンライン系サブシステムの演算装置による情報処理の実行を停止して、前記検出されたデータの全てを、前記オンライン系サブシステムのメモリから前記オフライン系サブシステムのメモリに一括してコピーする一括コピー処理を実行する、
    メモリデータコピー方法。
  17. 演算装置及びメモリを備えたオンライン系サブシステムと、演算装置及びメモリを備えたオフライン系サブシステムと、による情報処理を二重化するよう構成されたフォールトトレラントサーバが、
    前記オンライン系サブシステム及び前記オフライン系サブシステムによる情報処理の二重化を開始する前に、前記オンライン系サブシステムの演算装置による情報処理の実行を停止させずに、前記オンライン系サブシステムのメモリに記憶されている全てのデータを、前記オフライン系サブシステムのメモリにコピーする全コピー処理を実行し、
    前記オンライン系サブシステムのメモリに記憶されているデータのうち、前記全コピー処理中に前記オンライン系サブシステムのメモリに記憶されているデータの要約が変更されたデータを検出し、
    前記検出されたデータを、前記オンライン系サブシステムのメモリから前記オフライン系サブシステムのメモリにコピーする、
    メモリデータコピー方法。
  18. 請求項17に記載のメモリデータコピー方法であって、
    前記全コピー処理の前に前記オンライン系サブシステムのメモリに記憶されている全てのデータの要約を算出して第一要約とし、前記全コピー処理中に前記オンライン系サブシステムのメモリに記憶されている全てのデータの要約を算出して第二要約とし、前記第一要約及び前記第二要約で変化があったデータを、前記全コピー処理中に要約が変更されたデータとして検出する、
    メモリデータコピー方法。
JP2014059873A 2014-03-24 2014-03-24 フォールトトレラントサーバ Active JP5880608B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014059873A JP5880608B2 (ja) 2014-03-24 2014-03-24 フォールトトレラントサーバ
US14/641,146 US9785524B2 (en) 2014-03-24 2015-03-06 Fault tolerant server

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014059873A JP5880608B2 (ja) 2014-03-24 2014-03-24 フォールトトレラントサーバ

Publications (2)

Publication Number Publication Date
JP2015184866A JP2015184866A (ja) 2015-10-22
JP5880608B2 true JP5880608B2 (ja) 2016-03-09

Family

ID=54142228

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014059873A Active JP5880608B2 (ja) 2014-03-24 2014-03-24 フォールトトレラントサーバ

Country Status (2)

Country Link
US (1) US9785524B2 (ja)
JP (1) JP5880608B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE112020004539T5 (de) 2019-11-19 2022-07-14 Mitsubishi Heavy Industries, Ltd. Rechenvorrichtung, redundantes system, programm und verfahren zum konstruieren einer redundanten konfiguration
JP7195741B2 (ja) 2018-02-06 2022-12-26 株式会社Fuji 自立装置

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6507470B2 (ja) * 2014-02-04 2019-05-08 富士通株式会社 情報処理装置、情報処理システム及び障害検出方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2939414B2 (ja) * 1994-05-16 1999-08-25 三菱電機株式会社 二重系計算機のデータベース等価処理装置
US7627776B2 (en) * 2004-11-16 2009-12-01 Petruzzo Stephen E Data backup method
JP2006178616A (ja) * 2004-12-21 2006-07-06 Nec Corp フォールトトレラントシステム、これで用いる制御装置、動作方法、及び動作プログラム
JP5094460B2 (ja) * 2008-02-20 2012-12-12 株式会社日立製作所 計算機システム、データ一致化方法およびデータ一致化処理プログラム
JP5717164B2 (ja) * 2009-10-07 2015-05-13 日本電気株式会社 コンピュータシステム、及びコンピュータシステムのメンテナンス方法
JP5748214B2 (ja) * 2011-07-14 2015-07-15 日本電気通信システム株式会社 二重化情報処理システム
US9063851B2 (en) * 2012-11-07 2015-06-23 Infineon Technologies Ag Fail safe code functionality

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7195741B2 (ja) 2018-02-06 2022-12-26 株式会社Fuji 自立装置
DE112020004539T5 (de) 2019-11-19 2022-07-14 Mitsubishi Heavy Industries, Ltd. Rechenvorrichtung, redundantes system, programm und verfahren zum konstruieren einer redundanten konfiguration
US11829266B2 (en) 2019-11-19 2023-11-28 Mitsubishi Heavy Industries, Ltd. Computing device, redundant system, program, and method for constructing redundant configuration

Also Published As

Publication number Publication date
JP2015184866A (ja) 2015-10-22
US20150269037A1 (en) 2015-09-24
US9785524B2 (en) 2017-10-10

Similar Documents

Publication Publication Date Title
US9582373B2 (en) Methods and systems to hot-swap a virtual machine
US9798792B2 (en) Replication for on-line hot-standby database
US8234521B2 (en) Systems and methods for maintaining lock step operation
US10929234B2 (en) Application fault tolerance via battery-backed replication of volatile state
US10255314B2 (en) Comparison of block based volumes with ongoing inputs and outputs
US20120266018A1 (en) Fault-tolerant computer system, fault-tolerant computer system control method and recording medium storing control program for fault-tolerant computer system
JP5392594B2 (ja) 仮想計算機冗長化システム、コンピュータシステム、仮想計算機冗長化方法、及びプログラム
US9262344B2 (en) Local locking in a bi-directional synchronous mirroring environment
US20170168756A1 (en) Storage transactions
US9361301B1 (en) Detecting modifications to a storage that occur in an alternate operating environment
US8682852B1 (en) Asymmetric asynchronous mirroring for high availability
WO2015176433A1 (zh) 一种基于分区表的硬盘修复方法及装置
JP5880608B2 (ja) フォールトトレラントサーバ
US9454445B2 (en) Fault tolerant server
JP6247816B2 (ja) 高完全性処理を提供する方法
WO2018113484A1 (zh) 一种多副本数据恢复方法及装置
US9436554B2 (en) Information processing apparatus and data repairing method
JPWO2010100757A1 (ja) 演算処理システム、再同期方法、およびファームプログラム
CN109426548B (zh) 防止在不期望的主机服务器上运行脏虚拟机的方法和系统
JP5335150B2 (ja) 計算機装置及びプログラム
JP5748214B2 (ja) 二重化情報処理システム
US10656867B2 (en) Computer system, data management method, and data management program
US11720457B2 (en) Remote direct memory access (RDMA)-based recovery of dirty data in remote memory
WO2023030013A1 (zh) 一种数据处理方法及装置
US10956399B1 (en) Transaction pipelining in a journaled database

Legal Events

Date Code Title Description
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: 20160105

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160118

R150 Certificate of patent or registration of utility model

Ref document number: 5880608

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350