JP3822431B2 - Data copy system, data copy method, and storage medium - Google Patents

Data copy system, data copy method, and storage medium Download PDF

Info

Publication number
JP3822431B2
JP3822431B2 JP2000333584A JP2000333584A JP3822431B2 JP 3822431 B2 JP3822431 B2 JP 3822431B2 JP 2000333584 A JP2000333584 A JP 2000333584A JP 2000333584 A JP2000333584 A JP 2000333584A JP 3822431 B2 JP3822431 B2 JP 3822431B2
Authority
JP
Japan
Prior art keywords
copy
area
memory
copied
data
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
Application number
JP2000333584A
Other languages
Japanese (ja)
Other versions
JP2002140314A (en
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2000333584A priority Critical patent/JP3822431B2/en
Publication of JP2002140314A publication Critical patent/JP2002140314A/en
Application granted granted Critical
Publication of JP3822431B2 publication Critical patent/JP3822431B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Retry When Errors Occur (AREA)
  • Hardware Redundancy (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、メモリ上のデータを、同一のコンピュータ又は異なるコンピュータ間でコピーするデータコピーシステム、データコピー方法及び記憶媒体に関する。
【0002】
に関する。
【0003】
【従来の技術】
従来、メモリ上のデータを同一のコンピュータ又は異なるコンピュータ上の他のメモリ領域にコピーするときには、コピーを行っている最中にコピー元のメモリ上のデータが更新されないようにする必要がある。そのため、コピーが完了するまでの間、コピー元のメモリ領域全体をロックし、書き込み禁止するようにしていた。
【0004】
【発明が解決しようとする課題】
上述したように、メモリ上のデータをコピーしている間は、メモリ上のデータが更新されないように、その領域全体に対する書き込みを禁止する必要があるため、コピーするメモリ領域のサイズが大きくなる程、書き込みができない時間が長くなる。この時間は、メモリ上のデータを他のコンピュータ上のメモリ領域にコピーするリモートコピーの場合、更に長くなる。
【0005】
よって、大きなサイズのメモリ領域に対する更新とコピーを頻繁に繰り返すような処理を行った場合、メモリコピーの時間がボトルネックとなって、性能が上がらなくなってしまうという問題があった。
【0006】
このように従来は、メモリ上のデータを別のメモリ領域にコピーする場合、従来はメモリ領域全体のコピーが完了するまで書き込みを禁止していたため、大きなサイズのメモリ領域に対する更新とコピーを繰り返すような処理を行った場合、コピー時間がネックになって性能が上がらなかった。
【0007】
本発明の目的は、大きなサイズのメモリ上のデータをコピーする場合でも、コピー元のメモリ領域に対する書き込み禁止時間を短くすることによって、メモリコピーに伴う性能劣化を軽減することが可能なデータコピーシステム、データコピー方法及び記憶媒体を提供することにある。
【0008】
【課題を解決するための手段】
上記目的を達成するために請求項1に係る発明は、コピー元メモリ上のコピー元領域のデータをコピー先メモリにコピーするコピー手段と、
このコピー手段によるコピー動作が完了前に前記コピー元メモリに対する書き込み要求が発生したとき、該書き込み要求が発生した領域を認識する認識手段と、
この認識手段により認識した書き込み要求が発生した領域が既にコピーした領域でないとき該領域のデータを前記コピー手段によるコピー動作に優先して前記コピー先メモリにコピーする優先コピー手段と、
前記コピー元メモリにおける既にコピーした領域を認識する既コピー領域認識手段と、
この既コピー領域認識手段により認識した前記コピー元メモリにおける既にコピーした領域を前記コピー元領域から除外する手段と
を具備することを特徴とするデータコピーシステムである。
【0009】
請求項2に係る発明は、コピー元メモリ上のコピー元領域のデータをコピー先メモリにコピーする動作が完了前に前記コピー元メモリに対する書き込み要求が発生したときに該書き込み要求が発生した領域を認識し、該認識した書き込み要求が発生した領域が既にコピーした領域でないとき該領域のデータを前記コピー動作に優先して前記コピー先メモリにコピーし、前記コピー元メモリにおける既にコピーした領域を認識し該認識した前記コピー元メモリにおける既にコピーした領域を前記コピー元領域から除外することを特徴とするデータコピー方法である。
【0010】
請求項3に係る発明は、請求項2項記載のデータコピー方法において、前記コピー動作は定期的に繰り返されることを特徴とする。
【0011】
請求項4に係る発明は、コピー元メモリ上のコピー元領域のデータをコピー先メモリにコピーするコンピュタシステムに適用され、外部の記憶媒体から読み出したプログラムに従って所定の動作を実行するシステムに使用されるコンピュータ読み取り可能な前記記憶媒体であって、
コピー元メモリ上のコピー元領域のデータをコピー先メモリにコピーする動作が完了前に前記コピー元メモリに対する書き込み要求が発生したとき、該書き込み要求が発生した領域を認識するステップと、
このステップにより認識した書き込み要求が発生した領域が既にコピーした領域でないとき該領域のデータを前記コピー動作に優先して前記コピー先メモリにコピーするステップと、
前記コピー元メモリにおける既にコピーした領域を認識し該認識した前記コピー元メモリにおける既にコピーした領域を前記コピー元領域から除外するステップと、
を実行させるためのプログラムを記憶したコンピュータ読み取り可能な記憶媒体、である。
【0012】
上述した各請求項に係る発明によれば、コピーを開始したときにはコピー元メモリ上のデータをコピーし、該コピー動作が完了するまでの間に、既にコピーが完了した領域に対する書き込み要求があった場合はそれを許可し、まだコピーが完了していない領域に対する書き込み要求があった場合には、その領域を優先的にコピーして、当該領域のコピーは完了したものとして、それらのページの再度のコピーを抑止するので、コピー実行中の書き込み禁止時間を最低限に抑え、性能劣化を防ぐことが可能となる。
【0013】
【発明の実施の形態】
図1は、本発明のデータコピーシステム、データコピー方法及び記憶媒体が適用されるシステムを示しており、該システムは、インターネット、公衆電話回線によるネットワークや構内ネットワーク等のネットワーク10に、プライマリーコンピュータ20と、バックアップコンピュータ30とが接続された構成となっている。また、プライマリーコンピュータ20は、後述するコピー方法を実施するハードウェア又はソフトウェアが装備されている。もちろん、このようなハードウェア又はソフトウェアが装備されない場合は、ネットワーク10を介し又は直接にディスク40に記憶されたプログラムがインストールされることにより後述する方法を実施することができるようになっている。
【0014】
ここに、このコピー元とコピー先とが同一であるか相違するかは、コピー動作そのものに本質的な相違はないが、そのデータ動作には、プライマリーコンピュータ20のデータベース等のメモリ上の一領域のデータを他の領域にコピーする場合、プライマリーコンピュータ20のデータベース等のメモリ上の特定領域のデータをバックアップコンピュータ30のデータベース等のメモリ上の特定領域にコピーする場合がある。
【0015】
図2の(a)は、前者の例を示しており、プライマリーコンピュータ20のデータベース21上の一の領域21Aのデータを、同じくプライマリーコンピュータ20のデータベース21上の他の領域21Bにコピーする場合を示している。
【0016】
図2の(b)は、後者の例を示しており、プライマリーコンピュータ20のデータベース21上の一の領域21Aのデータを、バックアップコンピュータ30のデータベース31上の領域31Aにコピーする場合を示している。
【0017】
また、コピー動作には、一回限りのコピー動作、複数回の不定期なコピー動作、定期的な繰り返しコピーがあるが、これもコピー動作そのものに本質的な相違はない。
【0018】
以降に説明する各実施形態は、上述した共通のデータコピー方法の下で、コピー先の異同とコピー動作の頻度に応じた構成となっている。
【0019】
(第1実施形態)
図3は本発明の第1実施形態によるコピー方法及びシステムを示している。
【0020】
本実施形態では、コピーを開始する前にコピー元のメモリ領域全体にライトプロテクトをかけ、コピー中に書き込み要求が発生した時に、書き込み要求認識手段2であるエクセプションハンドラが起動されるようにしておく。エクセプションハンドラは、ライトエクセプションが発生したアドレスから、書き込み要求の発生したページを認識するものである。
【0021】
以下、図3を参照してメモリ領域A上のデータを、全てメモリ領域Bにコピーするまでの流れを説明する。
【0022】
先ず、最初に図3(a)に示すように、メモリコピー手段1により、メモリ領域A上のデータをメモリ領域Bにページ単位でシーケンシャルにコピーしていく。この処理は、メモリ領域A内のライトプロテクトが掛った全てのページをメモリ領域Bにコピーするまで続ける。ライトプロテクトの掛っていないページは、コピーの対象外になる。メモリコピー手段1は、コピーしたページのライトプロテクトを外す。
【0023】
図3(a)に引き続き図3(b)では、メモリコピー手段1によるデータコピーを行っている最中でも、既にコピーの終了したページに対する書き込みはそのまま許可する。
【0024】
図3(b)に引き続き図3(c)では、メモリコピー手段1によるデータコピーが完了するまでの間に、まだコピーしていないページに対して書き込み要求があった場合、書き込み要求認識手段2はメモリコピー手段1の処理を中断した後、優先的メモリコピー手段3を起動してそのページを先にコピーする。コピー終了後、そのページのライトプロテクトを外して書き込みを許可し、メモリコピー手段1の処理を再開させる。
【0025】
図3(c)に引き続き図3(d)では、メモリコピー手段1は、まだコピーしていない残りのページをコピーする。図3(c)によって既にコピーされたページは、書き込み要求認識手段2によってライトプロテクトがはずされているため、メモリコピー手段1がこのページを再度コピーすることはない。
【0026】
本実施形態では同様の方法で、メモリ領域Bのデータをメモリ領域Aにコピーするように処理を反転させることも可能である。
【0027】
次に、第1実施形態における通常のコピー処理を図4を参照して説明する。図4において、ステップS1では、コピー元のメモリ領域にライトプロテクトをかける。
【0028】
ステップS2では、ライトプロテクトを設定したページに書き込みが行われた時のページフォールト処理を行う書き込み要求認識手段2であるエクセプションハンドラを設定する。
【0029】
ステップS3では、メモリコピー手段1により、コピー元のメモリ領域のデータをコピー先のメモリ領域にシーケンシャルにコピーしていく。
【0030】
ステップS4では、ステップS3において、次にコピーするページにライトプロテクトが掛っているか、否かを判断する。
【0031】
ステップS5では、ステップS4のページにライトプロテクトが掛っている場合、メモリコピー手段1はそのページをコピーしてライトプロテクトを外す。
【0032】
ステップS6では、全ページのコピーが完了したかを判断する。
【0033】
ステップS7では、ステップS6で全ページをコピーしている場合はコピーを完了し、コピーしていないページが残っている場合はステップS3の処理を繰り返す。
【0034】
次に第1実施形態におけるエクセプションが発生した場合の処理を図5を参照して説明する。図5において、ステップS8では、メモリコピー手段1はメモリコピー中にライトエクセプションが発生したことを検知する。
【0035】
ステップS9では、書き込み要求認識手段2がエクセプションの発生したページを調べる。
【0036】
ステップS10では、エクセプションを発生したのがコピー中のメモリ領域内のページかを判断する。
【0037】
ステップS11では、ステップS10のページがコピー中のメモリ領域内にある場合、優先的メモリコピー手段3によりこのページをコピーし、ライトプロテクトを外す。
【0038】
ステップS12で、エクセプション処理が完了したことになる。
【0039】
以上のように本実施形態によれば、メモリ領域A上のデータを、全てメモリ領域Bにコピーするに際して、コピーを開始したときにはコピー元メモリ上のデータをコピーし、該コピー動作が完了するまでの間に、既にコピーが完了した領域に対する書き込み要求があった場合はそれを許可し、まだコピーが完了していない領域に対する書き込み要求があった場合には、その領域を優先的にコピーして、当該領域のコピーは完了したものとして、それらのページの再度のコピーを抑止するので、コピー実行中の書き込み禁止時間を最低限に抑え、性能劣化を防ぐことが可能となる。
【0040】
(第2実施形態)
図6は本発明の第2実施形態のコピー方法及びシステムを示している。
【0041】
本実施形態では、コピーを開始する前にコピー元のメモリ領域全体にライトプロテクトをかけ、コピー中に書き込み要求が発生した時に書き込み要求認識手段2であるエクセプションハンドラが起動されるようにしておく。このエクセプションハンドラは、ライトエクセプションが発生したアドレスから、書き込み要求の発生したページを認識するものである。またコピーすべきページを指定するためのコピー対象ページ登録手段4を作成しておく。
【0042】
以下、図6を参照して本実施形態における、メモリ領域A上のデータを全てメモリ領域Bにコピーするまでの流れを説明する。
【0043】
図6(a)では、メモリコピー手段1により、メモリ領域A上のデータをメモリ領域Bにページ単位でシーケンシャルにコピーしていく。この処理は、コピー対象ページ登録手段4によって指定されたページを全てコピーし終るまで続ける。
【0044】
メモリコピー手段1によってコピーされたページの情報は、コピー対象ページ登録手段4から削除する。
【0045】
尚、コピー開始時点では、コピー対象ページ登録手段4には、メモリ領域A内の全ページが登録されている。
【0046】
図6(b)では、メモリコピー手段1によるデータコピーが完了するまでの間に、既にコピーの終了したページに対して書き込み要求があった場合、書き込み要求認識手段2は即座にそのページのライトプロテクトを外し、書き込みを許可する。
【0047】
図6(c)では、メモリコピー手段1によるデータコピーが完了するまでの間に、まだコピーしていないページに対して書き込み要求があった場合、書き込み要求認識手段2はメモリコピー手段1の処理を中断した後、優先的メモリコピー手段3を起動してそのページを先にコピーし、そのページの情報をコピー対象ページ登録手段4から削除する。
【0048】
コピー終了後、そのページのライトプロテクトを外して書き込みを許可し、メモリコピー手段1の処理を再開させる。
【0049】
図6(d)では、メモリコピー手段1は、まだコピーしていない残りのページをコピーする。図6(c)によって既にコピーされたページは、コピー対象ページ登録手段4から削除されているため、メモリコピー手段1がこのページを再度コピーすることはない。
【0050】
本実施形態では同様の方法で、メモリ領域Bのデータをメモリ領域Aにコピーするように処理を反転させることも可能である。
【0051】
次に第2実施形態における通常のコピー処理を図7を参照して説明する。ステップT1では、コピー元のメモリ領域にライトプロテクトをかける。
【0052】
ステップT2では、ライトプロテクトを設定したページに書き込みが行われた時のページフォールト処理を行う書き込み要求認識手段2であるエクセプションハンドラを設定する。
【0053】
ステップT3では、コピーすべきページを指定するための、コピー対象ページ登録手段4を作成する。
【0054】
ステップT4では、メモリコピー手段1により、コピー対象ページ登録手段4によって指定されたページをコピーしていく。
【0055】
ステップT5では、メモリコピー手段1は、コピーしたページの情報を、コピー対象ページ登録手段4から削除する。
【0056】
ステップT6では、全ページのコピーが完了したか否かを判断する。
【0057】
ステップT7では、ステップT6で全ページをコピーしている場合はコピーを完了し、コピーしていないページが残っている場合はステップT4の処理を繰り返す。
【0058】
次に第2実施形態においてエクセプションが発生した場合の処理を図8を参照して説明する。ステップT8では、メモリコピー手段1がメモリコピー中にライトエクセプションの発生を検知する。
【0059】
ステップT9では、書き込み要求認識手段2がエクセプションの発生したページを調べる。
【0060】
ステップT10では、エクセプションを発生したのがコピー中のメモリ領域内のページか否かを判断する。
【0061】
ステップT11では、ステップT10のページがコピー中のメモリ領域内にある場合、そのページがコピー対象登録手段4に登録されているか否かを判断する。
【0062】
ステップT12では、ステップT11のページコピー対象登録手段4に登録されている場合、優先的メモリコピー手段3によってこのページをコピーし、このページの情報をコピー対象登録手段4から削除する。
【0063】
ステップT13では、エクセプションを発生したページがコピー中のメモリ領域内のページである場合、このページのライトプロテクトを外す。
【0064】
ステップT14では、エクセプション処理を完了する。
【0065】
以上のように本実施形態によれば、メモリ領域A上のデータを、全てメモリ領域Bにコピーするに際して、コピーを開始したときにはコピー元メモリ上のデータをコピーし、該コピー動作が完了するまでの間に、既にコピーが完了した領域に対する書き込み要求があった場合はそれを許可し、まだコピーが完了していない領域に対する書き込み要求があった場合には、その領域を優先的にコピーして、当該領域のコピーは完了したものとして、それらのページの再度のコピーを抑止するので、コピー実行中の書き込み禁止時間を最低限に抑え、性能劣化を防ぐことが可能となる。
【0066】
(第3実施形態)
図9は本発明の第3実施形態のコピー方法及びシステムを示している。
【0067】
本実施形態では、コピー領域のデータを全てコピーするのではなく、前回コピーを開始した時から今回コピーを開始するまでの間に更新されたページa、b、c、dのみをコピーの対象とするものである。
【0068】
尚、更新ページは前回のコピー開始以降に書き込み要求認識手段2によってライトプロテクトをはずされたページであり、書き込みページ登録手段5に更新されたページ情報が登録されている。
【0069】
またメモリ領域Aからメモリ領域Bへのコピーを開始する前には、これらの更新ページに対しても再度ライトプロテクトをかけ、コピー中に書き込み要求がきたことを、書き込み要求認識手段2が認識できるようにしておく。
【0070】
さらにコピーすべきページを指定するための、コピー対象ページ登録手段4を作成しておく。
【0071】
以下、図9を参照して、前回のコピーを開始した時から今回のコピーを開始するまでの間に更新されたメモリ領域A上のページa、b、c、dをメモリ領域Bにコピーするまでの流れを説明する。
【0072】
図9(a)では、メモリコピー手段1により、前回のコピーを開始した時から今回のコピーを開始するまでの間に更新されたメモリ領域A上のページを、メモリ領域Bにページ単位でシーケンシャルにコピーしていく。この処理は、コピー対象ページ登録手段4によって指定されたページを全てコピーし終るまで続ける。メモリコピー手段1によってコピーされたページの情報は、コピー対象ページ登録手段4から削除する。
【0073】
尚、コピー開始時点では、コピー対象登録手段4には、書き込みページ登録手段5に登録されていたページ情報が登録されている。
【0074】
図9(b)では、メモリコピー手段1によるデータコピーが完了するまでの間に、前回のコピー開始から更新されていないページ、又は既にコピーの終了したページに対して書き込み要求があった場合、書き込み要求認識手段2は即座にそのページのライトプロテクトを外し、書き込みを許可する。また、このページの情報を書き込みページ登録手段5に登録する。
【0075】
図9(c)では、メモリコピー手段1によるデータコピーが完了するまでの間に、まだコピーしていないページに対して書き込み要求があった場合、書き込み要求認識手段2はメモリコピー手段1の処理を中断した後、優先的メモリコピー手段3を起動してそのページを先にコピーし、そのページの情報をコピー対象ページ登録手段4から削除する。
【0076】
コピー終了後、そのページのライトプロテクトを外して書き込みを許可し、メモリコピー手段1の処理を再開させる。また、このページの情報を書き込みページ登録手段5に登録する。
【0077】
図9(d)では、メモリコピー手段1は、まだコピーしていない残りのページをコピーする。図9(c)によって既にコピーされたページは、コピー対象ページ登録手段4から削除されているため、メモリコピー手段1がこのページを再度コピーすることはない。
【0078】
本実施形態では同様の方法で、メモリ領域Bのデータをメモリ領域Aにコピーするように処理を反転させることも可能である。
【0079】
次に、第3実施形態における通常のコピー処理を図10を参照して説明する。
【0080】
ステップU1では、(x−1)回目のコピーを開始する。
【0081】
ステップU2では、更新されたページ情報を、書き込みページ登録手段4に登録する。
【0082】
ステップU3では、x回目のコピーを開始する。
【0083】
ステップU4では、コピー元のメモリ領域にライトプロテクトをかけ直す。
【0084】
ステップU5では、書き込みページ登録手段5に登録されたページ情報から、コピーすべきページを指定するためのコピー対象ページ登録手段4を作成する。
【0085】
ステップU6では、メモリコピー手段1により、コピー対象ページ登録手段4によって指定されたページをコピーしていく。
【0086】
ステップU7では、メモリコピー手段1は、コピーしたページの情報を、コピー対象ページ登録手段4から削除する。
【0087】
ステップU8では、全ページのコピーが完了したかを判断する。
【0088】
ステップU9では、ステップU8で全ページをコピーしている場合はコピーを完了し、コピーしていないページが残っている場合はステップU6の処理を繰り返す。
【0089】
次に、第3実施形態においてエクセプションが発生した場合の処理を図11を参照して説明する。
【0090】
ステップU10では、メモリコピー手段1がメモリコピー中にライトエクセプションの発生を検知する。
【0091】
ステップU11では、書き込み要求認識手段2がエクセプションの発生したページを調べる。
【0092】
ステップU12では、エクセプションを発生したのがコピー中のメモリ領域内のページかを判断する。
【0093】
ステップU13では、ステップU12のページがコピー中のメモリ領域内にある場合、そのページがコピー対象登録手段4に登録されているか、否かを判断する。
【0094】
ステップU14では、ステップU13のページがコピー対象登録手段4に登録されている場合、優先的メモリコピー手段3によってこのページをコピーし、このページの情報をコピー対象登録手段4から削除する。
【0095】
ステップU15では、ステップU13のページの情報を、書き込みページ登録手段5に登録する。
【0096】
ステップU16では、エクセプションを発生したページがコピー中のメモリ領域内のページである場合、このページのライトプロテクトを外す。
【0097】
ステップU17では、エクセプション処理を完了とする。
【0098】
以上のように本実施形態によれば、コピー領域のデータを全てコピーするのではなく、前回コピーを開始した時から今回コピーを開始するまでの間に更新されたページa、b、c、dのみをコピーの対象とすることによって、コピーするページ数を必要最低限に留め、コピーによる性能劣化を軽減することが可能となる。
【0099】
(第4実施形態)
図12(a)(b)は、本発明のコピー方法及びシステムを高信頼性ミドルウェアのチェックポイント採取処理に適用したものであり、具体的なシステムへの適用例になっている。
【0100】
ここに、高信頼性ミドルウェアの一例としては、ARTEMISがある(白木原、平山、金井「高信頼性ミドルウェアARTEMISの設計と実装」 情報処理学会OS研究会、1997年2月、白木原、平山、金井、佐藤「ARTEMIS:Advanced Reliable Dsitributed Middleware System」 proc.of lnt Cont PDATA'97,1997年6月)。
【0101】
このような高信頼性ミドルウェアは、プライマリコンピュータ20上で動作しているプロセスのチェックポイント情報を定期的にバックアップコンピュータ30に転送し、プライマリコンピュータ20に障害が発生した時には、保存したチェックポイント情報を元にしてバックアップコンピュータ30上でプロセスを復元することにより、プロセスの無停止運用を実現するものである。
【0102】
ここに、チェックポイント採取時には、様々なプロセス構成情報をバックアップコンピュータ30に転送するが、まずはそれをプライマリコンピュータ20上に用意したバッファにコピーする。メモリデータもその1つであり、従来は前回のチェックポイント採取時から更新されたページを全てプライマリコンピュータ20上のバッファにコピーしている間、プロセスの処理を中断させていた。しかし大きなメモリ領域を頻繁に更新するようなアプリケーションにARTEMISを適用した場合、チェックポイント採取時にプライマリコンピュータ20上のバッファにコピーするデータ量が多くなるため、性能劣化を引き起こす要因になっていた。
【0103】
しかし、本実施形態の適用により、全更新ページを直接バックアップコンピュータ30上のバッファにコピーし、しかもその完了を待たずにプロセスを再開させることができるようになるため、性能向上を見込むことができる。
【0104】
ここに、メモリデータをバックアップコンピュータ30に転送する時間は、メモリデータをプライマリコンピュータ20上のバッファにコピーする時間よりも長い。このため、従来は、メモリデータを直接バックアップコンピュータ30に転送すると、その間プロセスの処理が中断されてしまうため、性能が大幅に低下してしまうに対し、本発明を適用することにより、プロセス処理の中断を最小限に抑えることになるので、性能低下を防止することが可能となる。
【0105】
尚、第4実施形態は、第3実施形態を高信頼性ミドルウェアに適用した場合について示しているため、メモリコピーの際の具体的な流れは第3実施形態を従っている。
【0106】
以下に、本実施形態をシステムに適用した際のチェックポイントの流れを図12(a)(b)を参照して説明する。
【0107】
ステップV1で、x番目のチェックポイントから、ページA、Bを更新する。
【0108】
ステップV2で、x+1番目のチェックポイントを開始(ページA、Bが転送対象となる)し、ステップV3、ページAをバックアップコンピュータ30に転送する。
【0109】
ステップV4で、ページCを更新する。
【0110】
ステップV5で、ページBをバックアップコンピュータ30に転送
ステップV6で、x+1番目のチェックポイント完了とし、ステップV7で、ページA、Dを更新する。
【0111】
ステップV8で、x+2番目のチェックポイント開始(ページA、C、Dが転送対象となる)し、ステップV9で、ページC、Aをバックアップコンピュータ30に転送する。
【0112】
ステップV10で、ページDの更新要求の発生を検知する。
【0113】
ステップV11で、ページDはx+1番目のチェックポイント開始時から更新されており、x+2番目のチェックポイントでまだ転送されていないため、ステップV10の要求をブロックし、先にページDをバックアップコンピュータ30に転送する。
【0114】
ステップV12で、x+2番目のチェックポイント完了とし、ステップV13で、ステップV11によりブロックされていたページDの更新要求を実行する。
【0115】
以上のように本実施形態では、高信頼性ミドルウェアにおいて、プライマリコンピュータ20上で動作しているプロセスのチェックポイント情報を定期的にバックアップコンピュータ30に転送し、プライマリコンピュータ20に障害が発生した時には、保存したチェックポイント情報を元にしてバックアップコンピュータ30上でプロセスを復元するようにしているので、プロセスを停止しないで必要なデータコピーの運用を行うことが可能となる。
【0116】
本発明は、上述し且つ図示した実施形態に限定されるものではなく、図1におけるディスク40は、記憶媒体として磁気ディスク、フロッピーディスク、ハードディスク、光ディスク(CD−ROM、CD−R、DVD等)、光磁気ディスク(MO等)、半導体メモリ等、プログラムを記憶でき、且つコンピュータが読み取り可能な有形の記憶媒体であれば、その記憶形式及び形状等は何れであっても良い。
【0117】
さらに、本発明における記憶媒体は、コンピュータと独立した媒体に限らず、LANやインターネット等により伝送されたプログラムをダウンロードして記憶又は一時記憶した記憶媒体も含まれる。
【0118】
また、記憶媒体は1つに限らず、複数の媒体から本実施形態における処理が実行される場合も本発明における記憶媒体に含まれ、媒体構成は何れの構成であっても良い。
【0119】
尚、本発明におけるコンピュータは、コピー元メモリとしてデータベースや各種形態の記憶装置を含むものであり、記憶媒体に記憶されたプログラムに基づいて本実施形態における各処理を実行するものであって、一つのコンピュータからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であっても良い。
【0120】
また、本発明におけるコンピュータにあっては、情報処理機器に含まれる演算処理装置、パーソナルコンピュータ、マイクロコンピュータ等も含み、プログラムによって本発明の機能を実現することが可能な機器、装置を総称している。
【0121】
【発明の効果】
以上のように本発明によれば、メモリコピー中にコピー元のメモリ領域に対する書き込みが発生した場合でも、書き込み対象が少ないページの広い範囲に渡る場合は、書き込みをブロックされる時間が短いため、大幅に性能向上を図ることが可能なデータコピーシステム、データコピー方法及び記憶媒体を提供することができる。
【図面の簡単な説明】
【図1】本発明が適用されるコンピュータを含むシステムの構成図。
【図2】本発明のデータコピー方法の適用形態を示す図。
【図3】本発明の第1実施形態の方法を示す図。
【図4】第1実施形態の通常処理時のフローチャートを示す図。
【図5】第1実施形態のエクセプション発生時のフローチャートを示す図。
【図6】本発明の第2実施形態の方法を示す図。
【図7】第2実施形態の通常処理時のフローチャートを示す図。
【図8】第2実施形態のエクセプション発生時のフローチャートを示す図。
【図9】本発明の第3実施形態の方法を示す図。
【図10】第3実施形態の通常処理時のフローチャートを示す図。
【図11】第3実施形態のエクセプション発生時のフローチャートを示す図。
【図12】本発明の第4実施形態の方法を示し、高信頼性ミドルウェアのチェックポイント処理への適用を示す図。
【符号の説明】
1 メモリコピー手段
2 書込要求認識手段
3 優先的メモリコピー手段
4 コピー対象ページ登録手段
5 書き込みページ登録手段
10 ネットワーク
20 プライマリーコンピュータ
21 データベース
30 バックアップコンピュータ
31 データベース
40 ディスク
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a data copy system, a data copy method, and a storage medium for copying data on a memory between the same computer or different computers.
[0002]
About.
[0003]
[Prior art]
Conventionally, when data on a memory is copied to another memory area on the same computer or a different computer, it is necessary to prevent the data on the copy source memory from being updated during copying. Therefore, until the copy is completed, the entire memory area of the copy source is locked to prohibit writing.
[0004]
[Problems to be solved by the invention]
As described above, while the data on the memory is being copied, it is necessary to prohibit writing to the entire area so that the data on the memory is not updated, so that the size of the memory area to be copied increases. , The time during which writing is not possible becomes longer. This time becomes even longer in the case of remote copy in which data on the memory is copied to a memory area on another computer.
[0005]
Therefore, when processing for frequently updating and copying a large-sized memory area is performed, there is a problem that the memory copy time becomes a bottleneck and the performance cannot be improved.
[0006]
As described above, conventionally, when data in a memory is copied to another memory area, writing has been prohibited until copying of the entire memory area is completed, so that updating and copying to a large memory area are repeated. When this processing was performed, the copy time became a bottleneck and the performance did not improve.
[0007]
An object of the present invention is to provide a data copy system capable of reducing performance degradation associated with memory copy by shortening a write prohibition time for a copy source memory area even when copying data on a large size memory. Another object is to provide a data copy method and a storage medium.
[0008]
[Means for Solving the Problems]
In order to achieve the above object, the invention according to claim 1 includes a copy unit that copies data in a copy source area on a copy source memory to a copy destination memory;
A recognizing unit for recognizing an area where the write request is generated when a write request to the copy source memory is generated before the copy operation by the copy unit is completed;
Priority copy means for copying the data in the area to the copy destination memory in preference to the copy operation by the copy means when the area where the write request recognized by the recognition means is not an already copied area;
An existing copy area recognition means for recognizing an already copied area in the copy source memory;
Means for excluding an already copied area in the copy source memory recognized by the already copied area recognition means from the copy source area;
A data copy system comprising:
[0009]
According to a second aspect of the present invention, when a write request for the copy source memory is generated before the operation of copying the data of the copy source area on the copy source memory to the copy destination memory is completed, the area where the write request is generated is stored. Recognize, and when the recognized write request area is not an already copied area, the data in the area is copied to the copy destination memory in preference to the copy operation, and the already copied area in the copy source memory is recognized. In the data copy method, the already copied area in the recognized copy source memory is excluded from the copy source area.
[0010]
The invention according to claim 3 is the data copy method according to claim 2, wherein the copy operation is repeated periodically.
[0011]
The invention according to claim 4 is applied to a computer system that copies data in a copy source area on a copy source memory to a copy destination memory, and is used in a system that executes a predetermined operation in accordance with a program read from an external storage medium. The computer-readable storage medium,
Recognizing an area where the write request has occurred when a write request to the copy source memory occurs before the operation of copying the data of the copy source area on the copy source memory to the copy destination memory is completed;
Copying the data in the area prior to the copy operation to the copy destination memory when the area where the write request recognized in this step is not an already copied area;
Recognizing an already copied area in the copy source memory and excluding the already copied area in the recognized copy source memory from the copy source area;
A computer-readable storage medium storing a program for executing the program.
[0012]
According to the invention according to each of the above-described claims, when copying is started, data in the copy source memory is copied, and there is a write request for an area where copying has been completed before the copying operation is completed. If there is a write request for an area that has not yet been copied, the area is preferentially copied and the copy of the area is considered complete and Therefore, it is possible to minimize the write prohibition time during copy execution and to prevent performance degradation.
[0013]
DETAILED DESCRIPTION OF THE INVENTION
FIG. 1 shows a system to which a data copy system, a data copy method and a storage medium of the present invention are applied. The system is connected to a network 10 such as the Internet, a public telephone line network or a private network, and a primary computer 20. The backup computer 30 is connected. Further, the primary computer 20 is equipped with hardware or software for performing a copy method described later. Of course, when such hardware or software is not provided, a program stored on the disk 40 is installed via the network 10 or directly, so that a method described later can be performed.
[0014]
Here, whether the copy source and the copy destination are the same or different is not essentially different in the copy operation itself, but the data operation includes one area on the memory such as the database of the primary computer 20. When data is copied to another area, data in a specific area on the memory such as the database of the primary computer 20 may be copied to a specific area on the memory such as the database of the backup computer 30.
[0015]
FIG. 2A shows the former example, in which data in one area 21A on the database 21 of the primary computer 20 is copied to another area 21B on the database 21 of the primary computer 20 as well. Show.
[0016]
FIG. 2B shows the latter example, in which the data in one area 21A on the database 21 of the primary computer 20 is copied to the area 31A on the database 31 of the backup computer 30. .
[0017]
The copy operation includes a one-time copy operation, a plurality of irregular copy operations, and a periodic repetitive copy. However, there is no essential difference in the copy operation itself.
[0018]
Each of the embodiments described below has a configuration according to the difference in copy destination and the frequency of the copy operation under the common data copy method described above.
[0019]
(First embodiment)
FIG. 3 shows a copying method and system according to the first embodiment of the present invention.
[0020]
In the present embodiment, before starting copying, the entire copy source memory area is write-protected, and when a write request is generated during copying, an exception handler which is the write request recognition means 2 is activated. . The exception handler recognizes the page where the write request has occurred from the address where the write exception has occurred.
[0021]
Hereinafter, the flow until all the data on the memory area A is copied to the memory area B will be described with reference to FIG.
[0022]
First, as shown in FIG. 3A, the data in the memory area A is sequentially copied to the memory area B by the memory copy unit 1 in units of pages. This process continues until all pages in the memory area A that are write protected are copied to the memory area B. Pages that are not write protected are not copied. The memory copy unit 1 removes the write protection of the copied page.
[0023]
In FIG. 3 (b) following FIG. 3 (a), even while data copying by the memory copy unit 1 is being performed, writing to a page that has already been copied is permitted as it is.
[0024]
In FIG. 3 (c) following FIG. 3 (b), if there is a write request for a page that has not been copied before the data copy by the memory copy unit 1 is completed, the write request recognition unit 2 After interrupting the processing of the memory copy unit 1, the preferential memory copy unit 3 is activated to copy the page first. After the copy is completed, the write protection of the page is removed to allow writing, and the processing of the memory copy unit 1 is resumed.
[0025]
In FIG. 3D subsequent to FIG. 3C, the memory copy unit 1 copies the remaining pages that have not yet been copied. Since the page already copied in FIG. 3C has been write-protected by the write request recognition unit 2, the memory copy unit 1 does not copy this page again.
[0026]
In the present embodiment, it is also possible to reverse the processing so that the data in the memory area B is copied to the memory area A by the same method.
[0027]
Next, normal copy processing in the first embodiment will be described with reference to FIG. In FIG. 4, in step S1, write protection is applied to the copy source memory area.
[0028]
In step S2, an exception handler, which is a write request recognition unit 2 for performing page fault processing when writing is performed on a page for which write protection is set, is set.
[0029]
In step S3, the memory copy unit 1 sequentially copies the data in the copy source memory area to the copy destination memory area.
[0030]
In step S4, it is determined in step S3 whether or not the next copy page is write protected.
[0031]
In step S5, if the page of step S4 is write protected, the memory copy means 1 copies the page and removes the write protection.
[0032]
In step S6, it is determined whether all pages have been copied.
[0033]
In step S7, if all pages have been copied in step S6, the copying is completed, and if there are any pages that have not been copied, the processing in step S3 is repeated.
[0034]
Next, processing when an exception occurs in the first embodiment will be described with reference to FIG. In FIG. 5, in step S8, the memory copy unit 1 detects that a write exception has occurred during the memory copy.
[0035]
In step S9, the write request recognition unit 2 examines the page where the exception has occurred.
[0036]
In step S10, it is determined whether the exception occurred is a page in the memory area being copied.
[0037]
In step S11, if the page in step S10 is in the memory area being copied, this page is copied by the preferential memory copy means 3, and the write protection is removed.
[0038]
In step S12, the exception process is completed.
[0039]
As described above, according to the present embodiment, when all the data on the memory area A is copied to the memory area B, the data on the copy source memory is copied when copying is started, and the copying operation is completed. During this period, if there is a write request for an area that has already been copied, it is allowed. If there is a write request for an area that has not yet been copied, the area is preferentially copied. Assuming that the copying of the area has been completed, the copying of those pages is suppressed again, so that the write prohibition time during the copy execution can be minimized and performance degradation can be prevented.
[0040]
(Second Embodiment)
FIG. 6 shows a copy method and system according to the second embodiment of the present invention.
[0041]
In the present embodiment, the entire copy source memory area is write-protected before copying is started, and an exception handler which is the write request recognition unit 2 is activated when a write request is generated during copying. This exception handler recognizes a page where a write request has occurred from an address where a write exception has occurred. Further, a copy target page registration unit 4 for designating a page to be copied is created.
[0042]
Hereinafter, a flow until all data on the memory area A are copied to the memory area B in the present embodiment will be described with reference to FIG.
[0043]
In FIG. 6A, the data on the memory area A is sequentially copied to the memory area B by page unit by the memory copying means 1. This process continues until all pages specified by the copy target page registration unit 4 are copied.
[0044]
The page information copied by the memory copy unit 1 is deleted from the copy target page registration unit 4.
[0045]
At the start of copying, all pages in the memory area A are registered in the copy target page registration unit 4.
[0046]
In FIG. 6B, if there is a write request for a page that has already been copied before the data copy by the memory copy unit 1 is completed, the write request recognition unit 2 immediately writes the page. Remove protection and allow writing.
[0047]
In FIG. 6C, if there is a write request for a page that has not been copied before the data copy by the memory copy unit 1 is completed, the write request recognition unit 2 performs the processing of the memory copy unit 1. Is interrupted, the preferential memory copy unit 3 is activated to copy the page first, and the page information is deleted from the copy target page registration unit 4.
[0048]
After the copy is completed, the write protection of the page is removed to allow writing, and the processing of the memory copy unit 1 is resumed.
[0049]
In FIG. 6D, the memory copy unit 1 copies the remaining pages that have not yet been copied. Since the page already copied in FIG. 6C has been deleted from the copy target page registration unit 4, the memory copy unit 1 does not copy this page again.
[0050]
In the present embodiment, it is also possible to reverse the processing so that the data in the memory area B is copied to the memory area A by the same method.
[0051]
Next, normal copy processing in the second embodiment will be described with reference to FIG. In step T1, write protection is applied to the copy source memory area.
[0052]
In step T2, an exception handler is set which is a write request recognition unit 2 that performs page fault processing when writing is performed on a page for which write protection is set.
[0053]
In step T3, a copy target page registration unit 4 for designating a page to be copied is created.
[0054]
In step T4, the memory copy unit 1 copies the page specified by the copy target page registration unit 4.
[0055]
In step T5, the memory copy unit 1 deletes the copied page information from the copy target page registration unit 4.
[0056]
In step T6, it is determined whether or not all pages have been copied.
[0057]
In step T7, if all the pages are copied in step T6, the copying is completed, and if there is any page that has not been copied, the process of step T4 is repeated.
[0058]
Next, processing when an exception occurs in the second embodiment will be described with reference to FIG. In step T8, the memory copy unit 1 detects the occurrence of a write exception during the memory copy.
[0059]
In step T9, the write request recognition unit 2 examines the page where the exception has occurred.
[0060]
In step T10, it is determined whether or not the exception has occurred in a page in the memory area being copied.
[0061]
In step T11, if the page in step T10 is in the memory area being copied, it is determined whether or not the page is registered in the copy target registration unit 4.
[0062]
In step T12, when the page is registered in the page copy target registration unit 4 in step T11, the page is copied by the preferential memory copy unit 3, and the information on this page is deleted from the copy target registration unit 4.
[0063]
In step T13, if the page where the exception occurred is a page in the memory area being copied, the write protection of this page is removed.
[0064]
In step T14, the exception process is completed.
[0065]
As described above, according to the present embodiment, when all the data on the memory area A is copied to the memory area B, the data on the copy source memory is copied when copying is started, and the copying operation is completed. During this period, if there is a write request for an area that has already been copied, it is allowed. If there is a write request for an area that has not yet been copied, the area is preferentially copied. Assuming that the copying of the area has been completed, the copying of those pages is suppressed again, so that the write prohibition time during the copy execution can be minimized and performance degradation can be prevented.
[0066]
(Third embodiment)
FIG. 9 shows a copy method and system according to the third embodiment of the present invention.
[0067]
In this embodiment, instead of copying all the data in the copy area, only pages a, b, c, and d that have been updated between the start of the previous copy and the start of the current copy are set as the copy target. To do.
[0068]
The updated page is a page that has been write-protected by the write request recognition unit 2 since the start of the previous copy, and updated page information is registered in the write page registration unit 5.
[0069]
Also, before starting the copy from the memory area A to the memory area B, these update pages are also write-protected again so that the write request recognition means 2 can recognize that a write request has been received during the copy. Keep it like that.
[0070]
Further, a copy target page registration unit 4 for designating a page to be copied is created.
[0071]
Hereinafter, referring to FIG. 9, pages a, b, c, and d on memory area A that have been updated between the time when the previous copy is started and the time when the current copy is started are copied to memory area B. The flow until is explained.
[0072]
In FIG. 9A, the pages on the memory area A that have been updated by the memory copy unit 1 from the start of the previous copy to the start of the current copy are sequentially transferred to the memory area B in units of pages. Copy to. This process continues until all pages specified by the copy target page registration unit 4 are copied. The page information copied by the memory copy unit 1 is deleted from the copy target page registration unit 4.
[0073]
Note that the page information registered in the write page registration unit 5 is registered in the copy target registration unit 4 at the start of copying.
[0074]
In FIG. 9 (b), if there is a write request for a page that has not been updated since the start of the previous copy or a page that has already been copied before the data copy by the memory copy means 1 is completed, The write request recognizing means 2 immediately removes the write protection of the page and permits writing. Also, the information of this page is registered in the write page registration means 5.
[0075]
In FIG. 9C, if there is a write request for a page that has not yet been copied before the data copy by the memory copy unit 1 is completed, the write request recognition unit 2 performs the processing of the memory copy unit 1. Is interrupted, the preferential memory copy unit 3 is activated to copy the page first, and the page information is deleted from the copy target page registration unit 4.
[0076]
After the copy is completed, the write protection of the page is removed to allow writing, and the processing of the memory copy unit 1 is resumed. Also, the information of this page is registered in the write page registration means 5.
[0077]
In FIG. 9D, the memory copy means 1 copies the remaining pages that have not yet been copied. Since the page already copied in FIG. 9C has been deleted from the copy target page registration unit 4, the memory copy unit 1 does not copy this page again.
[0078]
In the present embodiment, it is also possible to reverse the processing so that the data in the memory area B is copied to the memory area A by the same method.
[0079]
Next, normal copy processing in the third embodiment will be described with reference to FIG.
[0080]
In step U1, the (x-1) th copy is started.
[0081]
In step U 2, the updated page information is registered in the write page registration unit 4.
[0082]
In step U3, the xth copy is started.
[0083]
In step U4, write protection is applied again to the copy source memory area.
[0084]
In step U5, a copy target page registration unit 4 for designating a page to be copied is created from the page information registered in the write page registration unit 5.
[0085]
In step U6, the memory copy unit 1 copies the page specified by the copy target page registration unit 4.
[0086]
In step U 7, the memory copy unit 1 deletes the copied page information from the copy target page registration unit 4.
[0087]
In step U8, it is determined whether or not all pages have been copied.
[0088]
In step U9, if all pages have been copied in step U8, the copying is completed, and if there are any pages that have not been copied, the processing in step U6 is repeated.
[0089]
Next, processing when an exception occurs in the third embodiment will be described with reference to FIG.
[0090]
In step U10, the memory copy unit 1 detects the occurrence of a write exception during the memory copy.
[0091]
In step U11, the write request recognition unit 2 examines the page where the exception has occurred.
[0092]
In step U12, it is determined whether the exception occurred is a page in the memory area being copied.
[0093]
In step U13, if the page of step U12 is in the memory area being copied, it is determined whether or not the page is registered in the copy target registration means 4.
[0094]
In step U14, when the page of step U13 is registered in the copy target registration unit 4, this page is copied by the preferential memory copy unit 3, and information on this page is deleted from the copy target registration unit 4.
[0095]
In step U15, the page information in step U13 is registered in the write page registration means 5.
[0096]
In step U16, if the page where the exception occurred is a page in the memory area being copied, the write protection of this page is removed.
[0097]
In step U17, the exception process is completed.
[0098]
As described above, according to the present embodiment, the pages a, b, c, and d updated between the start of the previous copy and the start of the current copy, instead of copying all the data in the copy area. By making only the copy target, the number of pages to be copied can be kept to a minimum and performance degradation due to copying can be reduced.
[0099]
(Fourth embodiment)
FIGS. 12A and 12B show a case where the copy method and system of the present invention are applied to the checkpoint collection processing of high-reliability middleware, which is an example of application to a specific system.
[0100]
Here, as an example of high-reliability middleware, there is ARTEMIS (Shirakihara, Hirayama, Kanai “Design and Implementation of High-Reliability Middleware ARTEMIS” Information Processing Society of Japan, February 1997, Shirakihara, Hirayama, Kanai, Sato "ARTEMIS: Advanced Reliable Dsitributed Middleware System" proc.of lnt Cont PDATA '97, June 1997).
[0101]
Such high-reliability middleware periodically transfers checkpoint information of processes operating on the primary computer 20 to the backup computer 30 and stores the stored checkpoint information when a failure occurs in the primary computer 20. By restoring the process on the backup computer 30 based on the original, non-stop operation of the process is realized.
[0102]
Here, at the time of taking a checkpoint, various process configuration information is transferred to the backup computer 30. First, it is copied to a buffer prepared on the primary computer 20. Memory data is one of them. Conventionally, the process processing is interrupted while all the pages updated since the last checkpoint collection are copied to the buffer on the primary computer 20. However, when ARTEMIS is applied to an application that frequently updates a large memory area, the amount of data copied to the buffer on the primary computer 20 at the time of checkpoint collection increases, which has been a cause of performance degradation.
[0103]
However, by applying this embodiment, all the updated pages can be directly copied to the buffer on the backup computer 30 and the process can be restarted without waiting for the completion, so that an improvement in performance can be expected. .
[0104]
Here, the time for transferring the memory data to the backup computer 30 is longer than the time for copying the memory data to the buffer on the primary computer 20. For this reason, conventionally, when the memory data is directly transferred to the backup computer 30, the process processing is interrupted during that time, so that the performance is significantly reduced. Since interruptions are minimized, performance degradation can be prevented.
[0105]
Since the fourth embodiment shows a case where the third embodiment is applied to high-reliability middleware, the specific flow at the time of memory copy follows that of the third embodiment.
[0106]
Hereinafter, the flow of check points when the present embodiment is applied to a system will be described with reference to FIGS.
[0107]
In step V1, pages A and B are updated from the xth checkpoint.
[0108]
In step V2, the x + 1th checkpoint is started (pages A and B are to be transferred), and step V3 and page A are transferred to the backup computer 30.
[0109]
In step V4, page C is updated.
[0110]
Transfer page B to backup computer 30 at step V5
In step V6, the (x + 1) th checkpoint is completed, and in steps V7, pages A and D are updated.
[0111]
In step V8, the (x + 2) th checkpoint is started (pages A, C, and D are to be transferred), and pages C and A are transferred to the backup computer 30 in step V9.
[0112]
In step V10, occurrence of an update request for page D is detected.
[0113]
In step V11, page D has been updated since the start of the (x + 1) th checkpoint and has not yet been transferred at the (x + 2) th checkpoint. Therefore, the request in step V10 is blocked, and page D is first transferred to the backup computer 30. Forward.
[0114]
In step V12, the (x + 2) th checkpoint is completed, and in step V13, an update request for page D that has been blocked in step V11 is executed.
[0115]
As described above, in the present embodiment, checkpoint information of processes operating on the primary computer 20 is periodically transferred to the backup computer 30 in the high-reliability middleware, and when a failure occurs in the primary computer 20, Since the process is restored on the backup computer 30 based on the stored checkpoint information, it is possible to operate the necessary data copy without stopping the process.
[0116]
The present invention is not limited to the embodiment described above and illustrated, and the disk 40 in FIG. 1 is a magnetic disk, floppy disk, hard disk, optical disk (CD-ROM, CD-R, DVD, etc.) as a storage medium. As long as it is a tangible storage medium that can store a program and can be read by a computer, such as a magneto-optical disk (MO, etc.), a semiconductor memory, etc., the storage format and shape may be any.
[0117]
Furthermore, the storage medium in the present invention is not limited to a medium independent of a computer, but also includes a storage medium in which a program transmitted via a LAN or the Internet is downloaded and stored or temporarily stored.
[0118]
Further, the number of storage media is not limited to one, and the case where the processing in the present embodiment is executed from a plurality of media is also included in the storage media in the present invention, and the media configuration may be any configuration.
[0119]
The computer according to the present invention includes a database and various types of storage devices as a copy source memory, and executes each process according to the present embodiment based on a program stored in a storage medium. The configuration may be any of an apparatus including one computer, a system in which a plurality of apparatuses are connected to a network, and the like.
[0120]
The computer according to the present invention is a generic term for devices and apparatuses that can realize the functions of the present invention by a program, including arithmetic processing devices, personal computers, microcomputers, and the like included in information processing devices. Yes.
[0121]
【The invention's effect】
As described above, according to the present invention, even when a write to the copy source memory area occurs during the memory copy, the write is blocked for a short time when the write target extends over a wide range of pages. It is possible to provide a data copy system, a data copy method, and a storage medium capable of greatly improving performance.
[Brief description of the drawings]
FIG. 1 is a configuration diagram of a system including a computer to which the present invention is applied.
FIG. 2 is a diagram showing an application mode of the data copy method of the present invention.
FIG. 3 shows a method according to the first embodiment of the present invention.
FIG. 4 is a flowchart illustrating normal processing according to the first embodiment.
FIG. 5 is a view showing a flowchart when an exception occurs according to the first embodiment.
FIG. 6 is a diagram showing a method according to a second embodiment of the present invention.
FIG. 7 is a flowchart illustrating normal processing according to the second embodiment.
FIG. 8 is a view showing a flowchart when an exception occurs according to the second embodiment.
FIG. 9 is a diagram showing a method according to a third embodiment of the present invention.
FIG. 10 is a flowchart illustrating normal processing according to the third embodiment.
FIG. 11 is a view showing a flowchart when an exception occurs according to the third embodiment.
FIG. 12 is a diagram showing a method according to a fourth embodiment of the present invention and showing application of high-reliability middleware to checkpoint processing;
[Explanation of symbols]
1 Memory copy means
2 Write request recognition means
3 Preferential memory copy means
4 Copy target page registration means
5 Write page registration means
10 network
20 Primary computer
21 Database
30 Backup computer
31 database
40 discs

Claims (4)

コピー元メモリ上のコピー元領域のデータをコピー先メモリにコピーするコピー手段と、
このコピー手段によるコピー動作が完了前に前記コピー元メモリに対する書き込み要求が発生したとき、該書き込み要求が発生した領域を認識する認識手段と、
この認識手段により認識した書き込み要求が発生した領域が既にコピーした領域でないとき該領域のデータを前記コピー手段によるコピー動作に優先して前記コピー先メモリにコピーする優先コピー手段と、
前記コピー元メモリにおける既にコピーした領域を認識する既コピー領域認識手段と、
この既コピー領域認識手段により認識した前記コピー元メモリにおける既にコピーした領域を前記コピー元領域から除外する手段と
を具備することを特徴とするデータコピーシステム。
A copy means for copying the data in the copy source area on the copy source memory to the copy destination memory;
A recognizing unit for recognizing an area where the write request is generated when a write request to the copy source memory is generated before the copy operation by the copy unit is completed;
Priority copy means for copying the data in the area to the copy destination memory in preference to the copy operation by the copy means when the area where the write request recognized by the recognition means is not an already copied area;
An existing copy area recognition means for recognizing an already copied area in the copy source memory;
A data copy system comprising: means for excluding an already copied area in the copy source memory recognized by the already copied area recognition means from the copy source area.
コピー元メモリ上のコピー元領域のデータをコピー先メモリにコピーする動作が完了前に前記コピー元メモリに対する書き込み要求が発生したときに該書き込み要求が発生した領域を認識し、該認識した書き込み要求が発生した領域が既にコピーした領域でないとき該領域のデータを前記コピー動作に優先して前記コピー先メモリにコピーし、前記コピー元メモリにおける既にコピーした領域を認識し該認識した前記コピー元メモリにおける既にコピーした領域を前記コピー元領域から除外することを特徴とするデータコピー方法。When a write request to the copy source memory is generated before the operation of copying the data in the copy source area on the copy source memory to the copy destination memory is completed, the area where the write request has occurred is recognized, and the recognized write request When the area where the error occurred is not an already copied area, the data in the area is copied to the copy destination memory in preference to the copy operation, and the already copied area in the copy source memory is recognized and the recognized copy source memory is copied. A data copy method characterized in that an already copied area is excluded from the copy source area. 前記コピー動作は定期的に繰り返されることを特徴とする請求項2項記載のデータコピー方法。3. The data copy method according to claim 2, wherein the copy operation is repeated periodically. コピー元メモリ上のコピー元領域のデータをコピー先メモリにコピーするコンピュタシステムに適用され、外部の記憶媒体から読み出したプログラムに従って所定の動作を実行するシステムに使用されるコンピュータ読み取り可能な前記記憶媒体であって、
コピー元メモリ上のコピー元領域のデータをコピー先メモリにコピーする動作が完了前に前記コピー元メモリに対する書き込み要求が発生したとき、該書き込み要求が発生した領域を認識するステップと、
このステップにより認識した書き込み要求が発生した領域が既にコピーした領域でないとき該領域のデータを前記コピー動作に優先して前記コピー先メモリにコピーするステップと、
前記コピー元メモリにおける既にコピーした領域を認識し該認識した前記コピー元メモリにおける既にコピーした領域を前記コピー元領域から除外するステップと、
を実行させるためのプログラムを記憶したコンピュータ読み取り可能な記憶媒体。
The computer-readable storage medium that is applied to a computer system that copies data in a copy source area on a copy source memory to a copy destination memory and that is used in a system that executes a predetermined operation in accordance with a program read from an external storage medium Because
Recognizing an area where the write request has occurred when a write request to the copy source memory occurs before the operation of copying the data of the copy source area on the copy source memory to the copy destination memory is completed;
Copying the data in the area prior to the copy operation to the copy destination memory when the area where the write request recognized in this step is not an already copied area;
Recognizing an already copied area in the copy source memory and excluding the already copied area in the recognized copy source memory from the copy source area;
The computer-readable storage medium which memorize | stored the program for performing this.
JP2000333584A 2000-10-31 2000-10-31 Data copy system, data copy method, and storage medium Expired - Fee Related JP3822431B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000333584A JP3822431B2 (en) 2000-10-31 2000-10-31 Data copy system, data copy method, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000333584A JP3822431B2 (en) 2000-10-31 2000-10-31 Data copy system, data copy method, and storage medium

Publications (2)

Publication Number Publication Date
JP2002140314A JP2002140314A (en) 2002-05-17
JP3822431B2 true JP3822431B2 (en) 2006-09-20

Family

ID=18809643

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000333584A Expired - Fee Related JP3822431B2 (en) 2000-10-31 2000-10-31 Data copy system, data copy method, and storage medium

Country Status (1)

Country Link
JP (1) JP3822431B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004302556A (en) * 2003-03-28 2004-10-28 Hitachi Ltd Data sharing method between a plurality of computer systems, and disk controller
JP4161276B2 (en) 2004-12-17 2008-10-08 日本電気株式会社 Fault-tolerant computer device and synchronization method thereof
JP4833734B2 (en) * 2006-05-19 2011-12-07 株式会社日立製作所 Database system, storage device, initial copy method, and log application method

Also Published As

Publication number Publication date
JP2002140314A (en) 2002-05-17

Similar Documents

Publication Publication Date Title
EP0788052B1 (en) I/O control apparatus having check recovery function
US6247024B1 (en) Method and system for performing deferred file removal in a file system
US9917688B2 (en) Consolidating encrypted image backups without decryption
US8095510B2 (en) Data restoration in a storage system using multiple restore points
US9317376B1 (en) Head start population of an image backup
US8260752B1 (en) Systems and methods for change tracking with multiple backup jobs
US20090222499A1 (en) Method, apparatus and storage device for data protection
JP2000138692A (en) Mac address management system, mac address management method and storage medium
WO2009123342A1 (en) Database system, database update method, database, and database update program
US7228526B2 (en) Application imaging infrastructure
JP3822431B2 (en) Data copy system, data copy method, and storage medium
WO2016127557A1 (en) Method for re-establishing standby database, and apparatus thereof
US8745340B2 (en) Reduction of communication and efficient failover processing in distributed shared memory-based application
US8201021B1 (en) Method and apparatus for efficiently creating backup files with less redundancy
CN113779546B (en) Recording authority management method, computing device and storage medium
CN112346913A (en) Data recovery method, device, equipment and storage medium
JPH03265951A (en) Trouble recovery type computer
JPH0594356A (en) On-memory table data fault restoration system
JPH11167494A (en) Arithmetic processor and register managing method for it
CN111858541A (en) Data migration control method and related device of distributed file system
CN106951343B (en) Delayed reduction method and delayed reduction assembly for non-specific object
JP3667703B2 (en) Error correction control circuit
JPH05298173A (en) Distributed file synchronizing and updating system
JP2005242747A (en) Data backup system
JP2000083154A (en) Image identification information management device, image processing management device, image identification information management method and storage medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040915

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060531

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060622

LAPS Cancellation because of no payment of annual fees