JP4289056B2 - Data duplication control method between computer systems - Google Patents
Data duplication control method between computer systems Download PDFInfo
- Publication number
- JP4289056B2 JP4289056B2 JP2003207782A JP2003207782A JP4289056B2 JP 4289056 B2 JP4289056 B2 JP 4289056B2 JP 2003207782 A JP2003207782 A JP 2003207782A JP 2003207782 A JP2003207782 A JP 2003207782A JP 4289056 B2 JP4289056 B2 JP 4289056B2
- Authority
- JP
- Japan
- Prior art keywords
- storage
- log
- update
- data
- database server
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 164
- 238000003860 storage Methods 0.000 claims description 211
- 230000008569 process Effects 0.000 claims description 65
- 238000012545 processing Methods 0.000 claims description 65
- 230000001360 synchronised effect Effects 0.000 claims description 21
- 230000008859 change Effects 0.000 claims description 12
- 238000012790 confirmation Methods 0.000 claims 1
- 238000001514 detection method Methods 0.000 claims 1
- 230000010076 replication Effects 0.000 description 69
- 238000011084 recovery Methods 0.000 description 12
- 238000004891 communication Methods 0.000 description 11
- 238000012544 monitoring process Methods 0.000 description 8
- 230000004044 response Effects 0.000 description 6
- 238000012546 transfer Methods 0.000 description 6
- 238000012423 maintenance Methods 0.000 description 5
- 239000000835 fiber Substances 0.000 description 4
- 230000003362 replicative effect Effects 0.000 description 4
- 238000010276 construction Methods 0.000 description 3
- 230000003111 delayed effect Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000002360 preparation method Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 238000005096 rolling process Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000026676 system process Effects 0.000 description 1
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は計算機およびストレージ装置からなる業務システムに関し、特に複数のシステム間でデータを複製するデータ二重化制御方法、およびデータを複製したシステムへの高速な切り替えを実現する方法に関する。
【0002】
【従来の技術】
データベースサーバおよびストレージ装置からなる業務システムが複数ある場合のデータ複製方法として、データベースサーバ上で動作するDBMSが実行する方法がある。DBMSがデータ複製する方法については、例えば非特許文献1に記述がある。複数のシステムのデータベースサーバ同士を接続し、一方のシステム上で動作するDBMSの更新情報を別のシステムに転送することでデータ複製する技術である。
【0003】
また、同様なシステムのデータ複製方法として、ストレージ装置間のデータコピー機能を使用する方法がある。ストレージ装置間のデータコピー機能については、例えば非特許文献2に記述がある。複数システムのストレージ同士をファイバーチャネルで接続し、一方のストレージ装置のディスクドライブに更新があると、別のストレージ装置のディスクドライブにもデータの更新を反映する技術である。
【非特許文献1】
Oracle9i製品カタログ(https://www.oracle.co.jp/products/catalog/pdf/9iDBr2J07266-01.pdf)、第6頁。
【非特許文献2】
日立統合ストレージソリューション「Storeplaza」カタログ(hppt:https://www.hitachi.co.jp/Prod/comp/storeplaza/data/stpzclg.pdf)、第5頁。
【0004】
【発明が解決しようとする課題】
従来のデータ複製方法を実行する場合、通常のデータベース業務を行う以上のコストが必要である。また、複数システム間で同期したデータ複製を行うと業務処理の遅延が発生する。
【0005】
DBMSによるデータ複製を行うためには、DBMSの動作するデータベースサーバが業務処理を行う負荷に加えて、データ複製処理を行う負荷が加わるためにより高性能なデータベースサーバが必要でありコストが増加するという課題がある。また、複製したデータが一致するためには、DBMSの更新処理を実行するたびにデータベースサーバ間で同期通信を行う必要がある。同期通信中は、DBMSが次の更新処理を実行できないため、業務が遅延することが課題である。
【0006】
ストレージ装置でデータ複製を行うためには、DBMSが扱うデータの更新を全てコピーするため、ストレージ装置間の接続に広帯域の回線を使う必要がある。広帯域の回線を使用することでコストが増大する課題がある。また、複製したデータが一致するためには、ディスクドライブ上のデータが更新されるたびにストレージ装置間で同期通信を行う必要がある。同期通信中はディスクドライブへの次の更新処理が実行できないため、業務が遅延することが課題である。
【0007】
また、同期通信による遅延を防ぐため、DBMSやストレージ装置間の通信を非同期で実行する方法が存在するが、障害や災害でデータ複製先のシステムに切り替える場合に、未転送分のデータを複製先で再構築する必要が生じ、システムの切り替えが遅延することが課題である。
【0008】
【課題を解決するための手段】
サーバが外部から受け付けた要求に応じて業務を実行すると、ストレージ装置に保存されたデータへの更新や追加が必要となる。このストレージ装置のデータ複製を行うために全てのデータを複製するのではなく、複製先としてサーバとストレージ装置を用意し、複製元のサーバで実行された業務を復元可能なログをストレージ装置の特定のディスクドライブに保存し、このディスクドライブが更新されるたびに複製先のストレージ装置にディスクドライブのコピーを行う。複製先のストレージ装置へのディスクドライブのコピーが完了したら、コピーされたストレージ装置からログを保存したディスクドライブが更新されたことを複製先のサーバに通知する。複製先のサーバは、ストレージ装置からログを保存したディスクドライブの変更通知を受信できるようにしておき、通知を受けた後でログをディスクドライブから読み取り、複製元のサーバで行われたのと同じ業務処理を実行する。このログを基にした業務処理の実行後、その結果をストレージ装置に反映することでデータの複製が完了する。
【0009】
このデータ複製方法を実行しているシステムにおいて、複製元のサーバとストレージ装置が障害や保守操作により停止した場合、複製先のストレージ装置に保存された業務データが最新の状態にあるため、複製元のサーバが受信していた業務を複製先で受信するように変更することで、業務の処理を中止せずにサーバとストレージ装置の切り替えを実行する。
【0010】
サーバとストレージ装置の切り替え実行後に、複製元と複製先双方のサーバとストレージ装置とがデータ複製のために実行していた処理を交替することで、業務を受信し処理しているシステムが停止した場合、再びサーバとストレージ装置の切り替えを実行する。
【0011】
【発明の実施の形態】
以下で説明する実施形態では、例として計算機上で動作する業務としてデータベースサーバを取り上げるが、計算機上で実行される業務はデータベースに限定するものではない。計算機上で動作する業務は、複製するデータが、正システムで行った業務によって更新されるもので、かつ、そのデータの更新を副システムで再現できるログを生成するものであればよい。例えば、ファイルシステムなどでも実施可能である。
[第1実施形態]
図1は、本発明が適用されたデータベースサーバとストレージ装置を用いたデータ複製システムの一実施例である。
【0012】
正システムを構成するのは、データベースサーバ2とストレージ装置8である。これらはデータベースサーバ2に内蔵されたストレージ接続装置3とストレージ装置8のディスク制御装置5とがサーバ・ストレージ間接続インタフェース4によって接続される。ストレージ装置8はディスク制御装置5によって読み込み書き込みを行うデータを保存するディスクドライブ6,7を内蔵しており、データベースサーバ2が業務ネットワーク1を通じて業務要求を受け取って処理したデータや、その処理に必要なデータおよびデータベースサーバ2内部で実行された業務データを保持する。
【0013】
データベースサーバ2とストレージ装置8とは、サーバ・ストレージ間接続インタフェース4を通してデータの読み込み・書き込みを行うだけでなく、データベースサーバ2が要求したディスクドライブ6,7の変更があった場合、ストレージ装置8からデータベースサーバ2に通知を行う方法を有している。
【0014】
副システムを構成するのは、データベースサーバ12とストレージ装置18である。これらはデータベースサーバ12に内蔵されたストレージ接続装置13とストレージ装置18のディスク制御装置15とがサーバ・ストレージ間接続インタフェース14によって接続される。ストレージ装置18はディスク制御装置15によって読み込み書き込みを行うデータを保存するディスクドライブ16,17を内蔵しており、データベースサーバ12が業務ネットワーク1を通じて業務要求を受け取って処理したデータや、その処理に必要なデータおよびデータベースサーバ12内部で実行された業務データを保持する。
18とは、サーバ・ストレージ間接続インタフェース14を通してデータの読み込み・書き込みを行うだけでなく、データベースサーバ12が要求したディスクドライブ16,17の変更があった場合、ストレージ装置18からデータベースサーバ12に通知を行う方法を有している。
【0015】
ディスク制御装置5とディスク制御装置15とはストレージ装置間接続インタフェース20により接続される。これにより、正システムのストレージ装置8と副システムのストレージ装置18は互いに接続される。ストレージ装置8とストレージ装置18は、一方のディスクドライブの一つを複製元に、他方のディスクドライブの一つを複製先にあらかじめ設定しておくことで、ストレージ装置間接続インタフェース20を通して内容を複製する方法を有している。
【0016】
以下、本実施形態のデータ複製方法およびシステム切り替え方法の動作を説明する。本実施形態では業務を通常実行している正システムと、正システムが何らかの理由で稼働不可能になった時に業務を引き継ぐ副システムとの間でデータ複製を行うものとする。
【0017】
まず、データ複製方法を実現するための初期設定を正システム、副システム双方について行う。
【0018】
正システムの初期設定は、業務システムに応じたデータベースを構築することから始める。ストレージ装置8のディスク制御装置5で、データベースサーバ2が使用可能なディスクドライブ6,7を割り当てる。データベースサーバ2はデータベースのデータを保持するディスクドライブ6とデータベースのログを保持するディスクドライブ7とを設定する。ここで言うログとは、データベースの更新作業を逐一表すもので、ログを再実行することでデータベースの再構築が可能なものである。例えば、データベースが実行したトランザクションログやデータベースサーバが受け取った業務要求全てのSQLコマンドである。トランザクションは、データベースの処理を複数個まとめた処理単位で、その処理が全て成功するか失敗するかのいずれかになる。そのため、多数の業務要求を処理しなければならない業務システムは、トランザクション単位で処理を行うことでデータベースに不整合を発生させないために使用する。
【0019】
副システムにも正システムと同様のデータベースを構築する。ストレージ装置18において、ストレージ装置8でデータベースサーバ2が使用可能としたディスクドライブ6と同様なディスクドライブ16と、ディスクドライブ7と同様なディスクドライブ17をディスク制御装置15でデータベースサーバ12が使用可能となるように割り当てる。データベースサーバ12は、データベースサーバ2同様に、データベースのデータを保持するディスクドライブ16とデータベースのログを保持するディスクドライブ17とを設定する。
【0020】
次に、正システムのストレージ装置8と副システムのストレージ装置18との間で、ストレージ装置間接続インタフェース20を通じてデータベースのログを保持するディスクドライブ7をディスクドライブ17にコピーするように設定する。このディスクドライブコピーは、同期コピー、非同期コピーいずれとも可能である。例えば、同期コピーとは、データベースサーバ2からのディスクドライブ7への情報書き込み要求に対して、ディスクドライブ7への情報書き込みとディスクドライブ17への情報書き込みとの両方が終了してから、データベースサーバ2に書き込み完了報告を行うものを指す。一方、非同期コピーは同期コピーと異なり、ディスクドライブ7への情報書き込みが完了した時点でデータベースサーバ2に書き込み完了報告を行う。非同期コピーを行う場合、正システムと副システムのログディスクが常に一致するとは限らず、システム切り替え時にデータが欠損することがある。
【0021】
そして、副システムのデータベースサーバ12からストレージ装置18のディスク制御装置15に対して、ディスクドライブ17の更新が行われたらデータベースサーバ12に通知を行うように設定する。
【0022】
正システムに障害・災害などが発生した場合に、副システムに切り替えるため正システムの停止を迅速に検知する必要がある。そのため、正システムのデータベースサーバ2と副システムのデータベースサーバ12の間で正システムが稼働していることを通知するための通信設定を行う。例えば、正システムのデータベースサーバ2から副システムのデータベースサーバ12に業務ネットワーク1を経由して一定時間間隔で通知を行う方法がある。また、正システムの稼働状態を監視する外部のサーバから副システムへの切り替えを指示する方法や、副システムから一定時間間隔で正システムに稼働状態を問い合わせる方法もある。
【0023】
以上のような設定がデータベースサーバ2,12とストレージ装置8,18で完了した後、正システムのデータベースサーバ2で業務処理を開始する。以下では、データ複製の手順について説明する。
【0024】
データ複製第1ステップ101:業務処理要求は、業務ネットワーク1を通じてデータベースサーバ2に到着する。業務処理要求は業務ネットワーク上のプロトコルに応じて送付され、データベースサーバ2の管理するデータ内容を参照するものや更新するものからなる。例えば、TCP/IPプロトコルによって送付される、SQLコマンドの組み合わせからなる。
【0025】
業務処理要求を受信したデータベースサーバ2は、ネットワークプロトコル層の解析を行い、データベースへの業務処理内容を取り出し、業務処理内容の解析を行った後、業務処理を実行する。例えば、TCP/IPプロトコルの解析を行い、SQLコマンドを取り出し、その処理をデータベースで実行する処理がある。
【0026】
データ複製第2ステップ102:業務処理の内容が、データベースの更新処理を伴う場合にはストレージ装置内に保持しているデータを更新する必要がある。その場合には、ストレージ装置接続装置3からサーバ・ストレージ接続インタフェース4を通じて、ディスク制御装置5に対してディスクドライブ7への更新ログの書き込みをストレージ装置8に指示する。例えば、データベースサーバ2にホストバスアダプタを装着し、ファイバーチャネルケーブルを通じてSCSIコマンドをディスクコントローラに送信することに当たる。また、この更新ログの書き込みはデータ更新の度に常に実行するだけでなく、トランザクション単位で実行が完了したときに行う方法、データベースサーバ2で用意したログ用バッファの空きが無くなった場合や一定時間が経過した後などのようにデータベースサーバ2が指定する入出力の単位で条件に応じて実行する方法なども用いることができる。また、本実施形態では簡単のため1回の書き込み要求のように図示したが、通常は別のディスクドライブへの書き込み要求は複数の要求に分けて送信される。
【0027】
データ複製第3ステップ103:更新ログの書き込み要求を受けたディスク制御装置5は、ディスクドライブ7へと情報の書き込みを行う。
【0028】
データ複製第4ステップ104:ディスクドライブ7はその情報の書き込みが終了すると副システムのストレージ装置18内のディスクドライブ17にコピーするように設定されているため、ディスク制御装置5はストレージ装置間接続インタフェース20を通じて副システムのストレージ装置18にあるディスク制御装置15にディスクドライブ7の更新内容を送信し、ディスクドライブ17に書き込むよう指示し、ディスク制御装置15はディスクドライブ17へと書き込みを行う。この書き込みが完了したら、ディスク制御装置5からデータベースサーバ2に更新ログ書き込み完了報告を行う。例えば、ストレージ装置間接続インタフェース20としてファイバーチャネルケーブルを用い、ストレージ装置の管理ソフトウェアでディスクドライブ7,17のコピーを設定することで実現できる。また、本実施形態では、ディスクドライブ7の更新直後にディスクドライブ17へのコピーを行う同期コピー方法としているが、一定時間間隔でコピーを実行する非同期コピー方法を用いることも可能である。ただし、非同期コピー方法を用いた場合、ディスクドライブ17への書き込みが完了しなくてもストレージ装置8内のディスクドライブ7への書き込みが完了したらデータベースサーバ2に完了報告を行うため、システム切り替え時にディスクドライブのデータがコピーされていない事態も発生しうる。
【0029】
データ複製第5ステップ105:更新ログの書き込み完了報告を受けたデータベースサーバ2は、ディスク制御装置5にディスクドライブ6へ更新データの書き込みを指示し、ディスク制御装置5はディスクドライブ6への情報の書き込み処理を行う。
【0030】
データ複製第6ステップ106:ディスクドライブ17への更新を実行後、ディスク制御装置15はあらかじめデータベースサーバ12から更新を通知するように指定されているため、更新が発生したことをデータベースサーバ12に通知する。この更新通知要求と更新通知のインタフェースは、例えば、データベースサーバ12からストレージ装置18内の特殊なディスクドライブへの読み込み要求の応答としてディスク制御装置15が通知する方法や、データベースサーバ12から更新通知を要求するディスクドライブ17への専用コマンドに対する応答としてディスク制御装置15が通知する方法、また、ディスク制御装置15からディスクの更新を通知する専用の割り込みインタフェースをデータベースサーバ12内のストレージ接続装置13に設ける方法などがある。また、ディスク制御装置15からデータベースサーバ12への通知は、更新が発生する度に実行する方法に限定するわけではなく、一定時間間隔ごとに通知する方法や、データベースサーバ2から指示をストレージ装置8に発行したものをストレージ装置18に伝えてデータベースサーバ12への通知を実行させる方法などがある。
【0031】
データ複製第7ステップ107:ディスクドライブ17の更新通知を受けたデータベースサーバ12は、ディスクドライブ17の更新分の情報を読み込み、その更新ログにしたがって、ディスクドライブ16上のデータを更新するようにストレージ接続装置13からサーバ・ストレージ間接続インタフェース14を通じてディスク制御装置15に情報書き込み要求を通知する。例えば、データベースサーバ12にホストバスアダプタを装着し、ファイバーチャネルケーブルを通じてSCSIコマンドをディスクコントローラに送信する方法がある。
【0032】
正システムのデータベースサーバ2が業務処理要求を実行するたびに、このように正システムのデータを副システムに複製することで、正システムのデータベースサーバ12にデータ複製のための負荷をかけることなく、また業務ネットワーク1上にデータ複製のためのデータ送信を行うことなく、ストレージ装置8,18間でのデータ転送量を小さくして、データ複製のコストを抑え、業務の遅延を小さくすることができる。
【0033】
正システムが災害や機器の障害などにより停止した場合、副システムに業務処理を切り替える。正システムの保守作業を行うため必要がある場合でも、正システムを停止させ、副システムに業務処理を切り替えることがある。図2は正システム停止後に副システムが業務処理を引き継ぐ処理を行う手順を示した。装置構成は図1と同様であるため詳細は省略する。以下では、業務処理引き継ぎの手順を説明する。
【0034】
正システムが停止すると、システムを切り替えて副システムのデータベースサーバ12とストレージ装置18で業務処理を引き継ぐ。正システムの停止は、例えばデータベースサーバ2とデータベースサーバ12との間で一定時間間隔で通信を行うハートビート通信や、データベースサーバ2,12以外の監視サーバを業務ネットワーク1に接続してハートビート通信を行う方法で検出可能である。業務処理の引き継ぎは、データベースサーバ2で受け取っていた業務処理要求をデータベースサーバ12が受け取れるように設定を変更することで可能である。例えば、データベースサーバ2が業務要求受信に用いていたネットワークアドレスを引き継ぐ方法がある。
【0035】
システム切り替え第1ステップ201:まず、データベースサーバ12からディスクドライブ7からディスクドライブ17への情報の書き込みを停止するようにストレージ装置18に指示を出してから、データベースサーバ12がログの書き込まれたディスクドライブ17を参照し、未実行の業務がディスクドライブ17に存在するか確認する。ディスクドライブ7からディスクドライブ17への書き込みを停止する理由は、データベースサーバ2が正常に稼動しているか不明でありディスクドライブ7への書き込みが正常に行われるかも明らかでないため、業務を引き継ぐ副システムにそのような書き込みを反映させないためである。
【0036】
システム切り替え第2ステップ202:未実行の業務処理があればその業務を実行してディスクドライブ16のデータ更新を行うようストレージ接続装置13からサーバ・ストレージ間接続インタフェース14を通じてディスク制御装置15に情報の書き込み要求を通知する。ただし、正システムのデータベースサーバ2からディスクドライブ7へのログ書き込みが、トランザクション単位で行われなかった場合、ディスクドライブ17上のログがトランザクションの途中で途切れていることも起こりうる。そのような場合は、データベースサーバ12が途切れたトランザクションによるデータ更新を取り消すためのデータ更新が必要になる。
【0037】
システム切り替え第3ステップ203:ディスク制御装置15は、要求を受けた情報の書き込みをディスクドライブ16に行う。
【0038】
システム切り替え第4ステップ204:ディスクドライブ16の情報書き込みが完了したら、データベースサーバ12で業務要求を受け付けて業務処理を開始する。
【0039】
さらに、正システムが障害・災害から回復し再び動作するようになった場合や保守作業完了で正システムが動作可能になった場合、本実施形態で説明してきたデータ複製方法を、副システムから正システムに複製する方向に適用することで、正システムが停止中に副システムで実行した業務処理によるデータやログの更新を正システムに反映させることができる。
【0040】
例えば、ストレージ装置8,18の間でディスクドライブ17の更新部分をディスクドライブ7にコピーする設定を行い、データベースサーバ2でディスクドライブ7の更新ログにしたがってディスクドライブ6のデータを更新することで、副システムのデータ複製を実行可能である。このように、正システムと副システムが同時に停止することがなければ、交互に本発明のデータ複製方法を適用することで業務停止時間を小さくできる。
【0041】
また、本実施形態では正システムと副システムが一対一の形態を説明したが、正システムから複数の副システムへのデータ複製を行う方法や、正システムから副システムへ複製したデータをさらに別の副システムへデータ複製を行なう方法も容易に構築可能である。
【0042】
図3から図6に、本実施形態の主な構成要素であるデータベースサーバおよびストレージ装置の処理手順をフローチャートで示した。以下で各図のフローチャートについて説明する。
【0043】
図3に示した正システムデータベースサーバ処理手順のフローチャートについて説明する。
【0044】
まず、データベースサーバの初期設定を行なう(301)。例えば、初期設定には、データベースの構築やディスクドライブの割り当てなどがある。
【0045】
次に、データ複製システムを構築するまで、ストレージ装置と副システムの初期設定完了を待つ(302)。例えば、ストレージ装置間のディスクコピーの設定や副システムのデータベース構築の完了を待つことになる。
【0046】
データ複製システムの初期設定が一通り完了すると、業務処理要求受付を開始する(303)。例えば、インターネット経由で行う商取引の商品管理などが業務処理にあたる。
【0047】
業務処理要求の受付開始後が、業務処理要求が到着したか(304)判定する。
業務処理要求が到着していれば、業務処理を実行する(305)。業務処理要求が到着していなければ業務処理要求を待ち、業務処理要求の到着を判定を続ける。業務処理要求が到着し、業務処理がデータ更新を伴う場合、業務処理のログをストレージ装置に書き込む(306)。そして、ログの書き込み完了報告を受信する(307)。その後でデータの更新要求をストレージ装置に送る(308)。
【0048】
ストレージ装置に対して行なったデータの更新書き込み要求について、ストレージ装置からの書き込み完了報告を受信する(310)ことで業務処理要求が完了する。
【0049】
正システムは一度稼動すると、ここで説明したように、業務処理要求の実行とそれに伴うログの更新およびデータの更新を繰り返し行なう。
【0050】
図4に示した副システムデータベースサーバ処理手順のフローチャートについて説明する。
【0051】
正システム停止後に交替して業務処理を実行するのがデータ複製の目的であるため、副システムのデータベースサーバには正システムの設定にあわせた初期設定を行う(401)。例えば、コピーするログディスクやデータディスクの用意などがデータ複製のためには必要となる。
【0052】
次に、正システムからコピーされたログを参照するため、ストレージ装置のログディスク更新を検出する設定をする(402)。例えば、副システムのデータベースサーバから副システムのストレージ装置にログディスクの更新を通知するように指定する方法や、副システムのデータベースサーバから定期的にストレージ装置内のログディスクを読み込んで更新が行われたかを判定する方法などが考えられる。これらにより、ログの更新を検出できる。
【0053】
そして、ログが更新されるとその内容を副システムで実行してデータベースのデータも更新する、データ複製処理を開始する(403)。
【0054】
システム切り替えが必要かを判定するため、正システムが正常に稼働しているか(404)判定する。例えば、正システムから副システムに対して10秒間稼働状態の通知がない場合にシステムを切り替えるとか、正システムと副システムのデータベースサーバ以外の稼働状態監視サーバを業務ネットワークに接続して状態監視をさせることによって正システムが稼働していないと判断した場合は業務処理を副システムが引き継ぐというように方針決めておき、判定を実行することになる。なお、このように正システムの稼働状態を判定する方法は複数考えられ、ここに示した方法に限定されるものではない。
【0055】
もし正システムが正常に稼働していないと判定した場合には、システム切り替えの処理を行なう。まず、正システムの業務引継処理を実行する(410)ことで、業務ネットワークと接続可能としてから、ログディスクの更新分で未実行の業務処理を実行する(411)。そして実行の結果、データの更新をストレージ装置に送る(412)。ストレージ装置のデータ更新完了報告を受信する(413)ことで、正システムのデータ複製が完了したとみなす。そして、ログディスクの未実行業務処理のデータがすべてストレージ装置に反映されたら、業務処理要求受付を開始する(414)。
【0056】
もし稼動状態が正常であると判定した場合は、ストレージ装置からログディスクの更新を検出したか(405)判定する。ログディスクの更新を検出する方法は、ストレージ装置からデータベースサーバに割り込みを発生させる方法や、データベースサーバからストレージ装置へ発行する特殊なI/Oコマンドへの応答を返す方法、あるいはデータベースサーバが一定時間間隔でログディスクの内容を読み込み、その情報を解析する方法などがある。ログディスクの更新を検出したら、ログディスクの更新分を読み込む(406)。そして、そのログ更新分を適用してデータ更新を実行する(407)。さらに、データの更新実行によって発生するデータの更新をストレージ装置に送る(408)ことで、データが正システムの最新のものと一致するようにする。ストレージ装置のデータ更新完了報告を受信する(409)と再び状態通知の受信やストレージ装置の更新通知待ちの処理を繰り返してデータ複製をしながら、システム切り替えの準備をする。
【0057】
図5に示した正システムストレージ装置処理手順のフローチャートについて説明する。
【0058】
まず、ストレージ装置内のディスクドライブをデータベースサーバに割り当てるなどの、初期設定を行う(501)。
【0059】
そして、本実施形態のデータ複製方法を行なうため、正システムのログディスクを副システムのログディスクに対応付けしコピーの設定をする(502)。この設定を行なう前に、副システムのデータベースサーバとストレージ装置の初期設定を完了しておく必要がある。
【0060】
設定が完了したら、読み込み・書き込み処理を開始(503)し、データベースサーバからのデータ更新要求などを受け付ける状態になる。
【0061】
処理要求受信(504)を待つ状態から要求を受信すると、まず書き込み要求か(505)判定する。書き込み要求でなければ、読み込み要求された情報をデータベースサーバに転送(511)し、データベースサーバに情報読み込み完了報告を送信する(512)。実際はディスクドライブのコントロールなどの要求も受信するが、ここでは読み込み要求と同じものとみなしている。書き込み要求を受信した場合には、要求された情報をディスクに書き込む(506)処理を行い、そのディスクがコピーを設定したディスクか(507)判定する。コピー設定されていなければ、データベースサーバにデータ書き込み完了報告を送信する(510)。コピーを設定したディスクであれば、副システムのストレージ装置に書き込み要求と情報を転送(508)し、副システムのストレージ装置から書き込み完了報告を待つ(509)。副システムから完了報告を受け取るとデータベースサーバに情報書き込み完了報告を送信する(510)。ここでは、正システムと副システムのストレージ装置間で同期コピーを行なう方法としている。
【0062】
このように、正システムのストレージ装置はデータベースサーバからの処理要求を待ち、ディスクの情報読み込み・書き込み処理と副システムへのディスクコピー処理を繰り返す。
【0063】
図6に示した副システムストレージ装置処理手順のフローチャートについて説明する。
【0064】
まず、ストレージ装置内のディスクドライブをデータベースサーバに割り当てや外部ストレージ装置からのディスクコピー設定などの、初期設定を行う(601)。
【0065】
そして、読み込み・書き込み処理開始(602)後、データベースサーバからの要求を受信可能な状態となる。さらに、データベースサーバから更新通知するディスクを指定される(603)ことでデータ複製の準備が整う。
【0066】
処理要求受信(604)を開始し、処理要求を受けるとその要求が書き込み要求か(605)判定する。書き込み要求でなければ、読み込み要求された情報を要求元に転送(610)し、要求元に情報転送完了報告を送信する(611)ことで処理要求の実行が完了する。一方、書き込み要求であった場合、まず、要求された情報をディスクに書き込む(606)。そして、要求元に情報書き込み完了報告を送信する(607)。通常の処理要求はこれで処理が完了するが、データ複製方法を実施するためにディスクへの書き込みが発生した場合は、そのディスクがデータベースサーバに更新通知を指定されたディスクか(608)判定し、指定されたディスクであれば、データベースサーバに更新を通知する(609)。指定されていなければ、通知せずに処理を完了する。
【0067】
このように、副システムのストレージ装置は正システムからのログディスク書き込みと副システムのデータベースサーバからの読み込み・書き込み要求を処理し、更新を通知するディスクであればその通知を送信する処理を繰り返して、データ複製処理を実現する。
【0068】
本実施形態のように正システムから副システムに切り替えるが、上記のようなデータ複製方法を用い、特にストレージ装置8,18間のディスクコピーが同期コピー方法で行うとデータ複製に必要なログを漏れなくコピーできるため、システム切り替えに伴う遅延を小さくすることができる。
[第2実施形態]
第1実施形態では、ディスクドライブの更新をデータベースサーバに通知するために通常のディスクドライブ読み込み書き込み以外のインタフェースを必要としたが、以下で説明する第2実施形態においてはディスクドライブの読み込み書き込みインタフェースのみでデータ複製を実現する。データ複製システムの構成は、図1に示す第1実施形態と同様に構成される。
【0069】
第1実施形態では、副システムにおいてディスクドライブ17の更新をデータベースサーバ12に通知するための設定をした。これに対し、本実施形態ではデータベースサーバ12からディスクドライブ17をポーリングで監視し、更新を検知する。
【0070】
更新の検知は以下のような手順で可能である。データベースサーバ12で、ディスクドライブ17にログが書き込まれる位置を保持し、その位置のデータを定期的に読み込んで更新されたかを判定する。更新されていれば、ログに従って業務処理をデータベースサーバ12で行う。処理が完了したら、ログが書き込まれる位置の更新を行い、再び定期的に読み込んで更新されたかの判定処理を繰り返す。
【0071】
データベースの更新ログは、通常一定の領域に順次上書きされないようにディスクに書き込む。そして、領域の終端まで書き込むと再び領域の先頭から順次書き込む。そのため、更新ログの書き込みが上書きされる前にデータベースサーバで内容を読み込むことができることと、更新ログを1つずつ区別することができるようになっていることが保証される場合、ポーリングで監視してデータのディスクドライブを更新することでデータの複製が可能である。
【0072】
このように、データベースサーバからディスクドライブの更新をポーリングによって監視する方法でデータ複製する場合、ポーリング間隔を十分小さくすることによって、システム切り替えによる遅延を小さくすることができる。また、第1実施形態と同様のシステム構成であり、データ複製にかかるコストを小さくできる。さらに、ストレージ装置8、18間のディスクコピーを同期コピー方法で行うとデータ複製に必要なログを漏れなくコピーできるため、システム切替に伴う遅延を小さくすることができる。
[第3実施形態]
第1実施形態、第2実施形態では、データベースサーバ2,12とストレージ装置8,18が直接接続された場合やストレージエリアネットワークで接続されたことを前提としていたが、本実施形態では、ストレージ装置としてネットワークアタッチトストレージ(NAS)装置を使用して実現する。本実施形態のデータ複製システムの構成は、図1に示す第1実施形態と同様の構成である。
【0073】
本実施形態では、ストレージ装置間のディスクコピー方法が第1実施形態、第2実施形態と異なる。NAS装置はファイルシステムでのアクセス要求を受信する。そのため、ディスク制御装置5,15間のストレージ間接続インタフェースもファイル単位でのアクセスを実行する。そのため、ディスク制御装置5内でディスクドライブ7の変更を検知するのではなく、データベースサーバ2が操作するログファイルの更新を検知する必要がある。更新の検知には、ディスク制御装置5でログファイルの更新を定期的に監視するデーモンを実行しておき、更新が起こったらストレージ間接続インタフェースを通じてファイルのコピーをディスクドライブ17に書き込む。また、副システムでログの更新を通知するインタフェースも、前述の第1実施例、第2実施例のものと異なる。ディスク制御装置15にはログファイル更新を検知するデーモンを備える。データベースサーバ12にはこのデーモンと通信を行うプロセスを生成しておき、つまり、ログファイルの更新があったら通知される機構を構築する。あるいは、第2実施形態で示したデータベースサーバ12からポーリングで監視する方法をログファイルに適用してもよい。
【0074】
また、ログデータのコピー方法としてディスク制御装置5と別のディスクドライブ単位で変更を検知可能なディスク制御装置をストレージ装置8,18に設け、その間でディスクの更新を行う方法も可能である。この場合、別途設けたディスク制御装置により、第1実施形態のようにディスクドライブ7からディスクドライブ17へのデータコピーを実行する。ログデータの更新をデータベースサーバ12に通知する方法は、上記のようなディスク制御装置15のデーモンとデータベースサーバ12のプロセスで通信を行う方法やデータベースサーバ12からポーリングで監視する方法によって可能である。
【0075】
また、NAS装置ではログファイルをコピーする際に、ファイルを全てストレージ装置8,18間で転送する必要がある。データ転送量を削減するため、ログをおくためのディレクトリを作成し、更新ログを1個ずつファイルとしてそのディレクトリに置いていくことで更新ログの転送量を削減可能である。データベースは更新ログを作成した日時をファイル名に使用して書き込む。これによりログの一意の識別か可能になる。また、一定以上の時間が経過したログを削除することで、ログの複製を保証することができ、ディスクドライブを使い尽くすことがなくなる。ログデータの更新のデータベースサーバ12への通知は、上記同様であるが、ディスク制御装置15で実行するログ更新を監視するデーモンは、ログディレクトリの下にあるファイルの監視を行い、新たなログファイルが作成された場合にデータベースサーバ12のプロセスに通知を行う。データベースサーバ12でファイル更新をポーリングで監視するデーモンを実行する場合も、同様にログディレクトリの下に新たなファイルが作成されたかを監視する。
【0076】
このようにシステムを構築することで、データ複製が実現される。システム構成は第1実施形態と同様であり、コストを削減することが可能である。また、システム切り替え時の遅延も小さくすることが可能である。
[第4実施形態]
図7は本発明が適用されたデータベースサーバとストレージ装置およびそれらの上で動作するソフトウェアを用いたデータ複製システムの実施例である。本実施例では、サーバ上で動作するアプリケーションプログラムをDBMSとしているが、データの更新をログとして出力するプログラムであれば本発明は適用可能である。例えばトランザクションモニタであってもよい。
【0077】
データ複製システムの構成は、図1に示す第1実施形態と同様に構成されるが、図7においてはデータベースサーバ2、12上のストレージ接続装置3、13は省略した。データベースサーバ2、12上では、それぞれOS72、75とDBMS71、74とが動作する。OS72、75はデータベース2、12のハードウェア制御や他のアプリケーションプログラムの動作環境として実行される。また、DBMS71、74はシステムの業務を実行するアプリケーションプログラムである。さらに、ストレージ装置8、18上のディスク制御装置5、15上ではデータベースサーバ2、12からの要求を受付けてディスクドライブ6、7、16、17の更新を行う制御ソフトウェア73、76が動作する。第1実施形態でストレージ接続装置3、13を通して行っていた処理は、DBMS71、74からはOS72、75の機能によって内部で処理されているものとする。
【0078】
本実施形態では第2実施形態と同様のシステム構成で、各装置とそれら装置の上で動作するソフトウェアによってデータ複製を実現する。つまり、ストレージ装置18からデータベースサーバ12へと、ディスクドライブ16、17の情報が変更されたことを通知するインタフェースは持たない。
【0079】
正システムを構成するデータベースサーバ2上で動作するOS72はストレージ装置8内のディスクドライブ6、7に情報を書き込んだり、あるいはその情報を読み込んだりする操作を実行できる。制御ソフトウェア73はサーバ・ストレージ間接続インタフェース4を通じて送られるOS72からの要求に応じて情報のディスクドライブ6、7への反映や情報のOS72への転送などの処理をする。そして、DBMS71は、OS72の上で動作し、システムの業務を行う。副システムはデータベースサーバ12とストレージ装置18、およびこれらの上で動作するOS75、DBMS74そして制御ソフトウェア76で正システムと同様の処理を行うことが可能な構成とする。
【0080】
制御ソフトウェア73、76の間では、ストレージ間接続インタフェース20を通じて互いの保持するディスクドライブの内容を転送し、指定されたディスクドライブに情報を反映することが出来る。例えば、ストレージ装置間のリモートコピーや同期リモートコピーを用いることで実現できる。
【0081】
まず、正システムと副システムの初期設定を行う。正システムでOS72が認識したストレージ装置8内のディスクドライブ6、7をDBMS71のデータディスクとログディスクに割当てる。副システムでは、正システムのディスク構成にあわせて、OS75が認識したストレージ装置18内のディスクドライブ16をデータディスクに、ディスクドライブ17をログディスクにDBMS74が割当てる。また、DBMS71とDBMS74との間で互いの稼動状態をチェックする。正システムが停止したときに、迅速に副システム業務を引き継ぐためである。
【0082】
ストレージ装置8、18の間の初期設定は、ディスクドライブ7の情報の変更を、ディスクドライブ17にコピーするようにする。これによって、DBMS71で実行した処理のログを副システムにコピーし、DBMS74から参照できるようにする。このコピーの方式は同期、非同期いずれとも可能であるが、非同期の場合、正システムが停止した時点までの全てのログを転送できる保証はない。一方、同期とした場合、正システムが停止するまでのログが完全に副システムで参照可能となり、高速で正確なデータ複製が可能である。
【0083】
ここまでの設定が終わったら、以下で説明する手順を実行することで正システムから副システムへのデータ複製が可能である。そこで、正システムで業務を開始する。DBMS71は業務ネットワーク1からの業務処理要求を受付けて処理する。このときの処理の内容を逐一再生可能なものがログにあたり、DBMS71からOS72の機能を経由して制御ソフトウェア73にディスクドライブ7に書き込みように要求する(702)。ただし、業務処理要求は業務ネットワークから受け取るだけではなく、データベースの構築や保守のためにデータベースサーバ2上で実行した処理についても業務処理要求に含まれる。そして、完全なデータ複製を行うためには、これら全ての業務処理要求についてログを作成しディスクドライブ7に書き込みを行う必要がある。
【0084】
DBMS71がディスクドライブ7にログの書き込みを要求する単位には、例えばトランザクションをコミットした単位とする方法がある。あるいは、DBMS71が持つログ用のバッファが一杯になった場合や一定時間経過した場合にDBMS71が持つログ用のバッファの内容をディスクドライブ7に書き込み要求する方法などがある。いずれの場合にも、DBMS71が実行した業務のログが副システムのDBMS74に欠損なく、またDBMS71、74それぞれが管理するデータの間で不整合が生じることなく複製するためには、DBMS71がディスクドライブ7に要求した単位でディスクドライブ7とディスクドライブ17間の情報が同期していることが必要である。以下では、ディスクドライブ7の情報とディスクドライブ17の情報とが同期しているものとする。しかし、必ずしも同期している必要は無く、非同期でディスクドライブ7からディスクドライブ17へのコピーを行ってもよい。但し、非同期コピーを行った場合、正システムと副システムのログが一致することは保証されず、正システムから副システムへ切り替える時にDBMS71とDBMS74が扱うデータに不整合があり得るため、正システムと副システム間でデータ内容を確認したり修正したりする作業が必要になることがある。
【0085】
要求を受けた制御ソフトウェア73は、要求をログ用のディスクドライブ7に書き込む(703)。このディスクドライブ7は初期設定でストレージ装置18のディスクドライブ17にコピーすると指定しているため、制御ソフトウェア73はストレージ装置間接続インタフェース20を通して制御ソフトウェア76に変更分の書き込み要求を転送し、これを受けた制御ソフトウェア76がディスクドライブ17に要求された情報を書き込む(704)。ここで、ディスクドライブ7とディスクドライブ17の間で同期コピーを行うためには、ディスクドライブ17への情報書き込みが完了してからデータベースサーバ2に完了報告を行い、その報告を受けた後でDBMS71が業務処理の続きを行うようにすることが必要である。こうすると、DBMS71の実行した業務のログと副システムに複製しているログとが一致する。一方、ディスクドライブ7への書き込みが完了した時点でデータベースサーバ2に書き込み完了報告を行い、ディスクドライブ17へのコピーをDBMS71からの要求と無関係の任意の時点で行うと、非同期コピーとなり副システムで参照するログが正システムのものと一致しないことが起こりうる。
【0086】
さらに、DBMS71は業務処理によって生じるデータの変更をOS72の機能を通じて制御ソフトウェア73に送る(704)。そして制御ソフトウェア73は要求された情報書き込み処理や読み込み処理をディスクドライブ6に対して行う(705)。ただし、DBMS71からのディスクドライブ7へのログ書き込み要求とディスクドライブ6へのデータ書き込み要求は順序が決められているわけではない。データ書き込みはOS72上のデータバッファに蓄積して定期的に要求する方法や一定時間以上業務処理で使用しなかったら書き込む方法などがある。正システムの実行した業務を追うためには、実行した処理のログは副システムに必ず転送しなければならないが、データについては正システムが業務に使用する範囲で整合性が保たれていればよい。
【0087】
一方、副システムのDBMS74はOS75の機能を使用して制御ソフトウェア76に要求を出し(706)、ディスクドライブ17の情報が変更されていないか情報を読み込む(707)。この結果、ディスクドライブ17上のログ内容に変更があったら、そのログの業務を実行し、副システムのディスクドライブ16のデータを更新するため、制御ソフトウェア76に情報更新要求を発行する(708)。この要求を受けた制御ソフトウェア76はディスクドライブ16に情報変更の内容を反映する(709)。これらの処理を一定時間ごとに行い、ログの処理を実行してデータを更新して正システムのデータを副システムに複製する。あるいは、実施例1のように、サーバ12からストレージ制御装置15あるいは制御ソフトウェア76に指示しておき、ディスクドライブ17の情報が更新されたらそれをサーバ12に通知するインタフェースによりログの変更を認識する方法でも可能である。
【0088】
DBMS74がディスクドライブ17からログの変更を読み込んでディスクドライブ16にあるデータに適用し、データを複製する方法は複数ある。例えば、DBMS71からディスクドライブ7への書き込みをトランザクションのコミットした単位で行っていれば、DBMS74はディスクドライブ17で新たに書き込まれたログをそのまま実行すればよい。また、DBMS71からディスクドライブ7への書き込みがトランザクションのコミットと無関係に実行されている場合は、書き込まれたログをそのまま実行する方法と、DBMS74でトランザクションの管理テーブル上に確保しておき、そこに読み込んだログを保持しながらトランザクションのコミットを受け取ってから管理テーブルにあるログをデータに反映する方法などがある。
【0089】
もしも、DBMS71とDBMS74との間で行っている稼動状態監視で、DBMS74がDBMS71の停止を検出した時には、DBMS71が行っていた業務を引き継ぐように設定を変更する(710)。ただし、DBMS74が業務処理を引き継ぐ前に、それまでにDBMS71で実行された正システムの業務データと副システムのデータとの間で整合性を保証するための処理、つまりリカバリを行う必要がある。ディスクドライブ7とディスクドライブ17の間のログ同期がトランザクションのコミット単位で行われていれば、ディスクドライブ17に副システムで未実行のログがあるかを確認し、あればそのログの処理を実行して制御ソフトウェア76に情報更新要求を発行する。(708)そして、制御ソフトウェア76は要求にディスクドライブ16上の情報を更新する(709)。ディスクドライブ17の未実行のログ全てについてディスクドライブ16上のデータ更新を実行したらリカバリが完了し、業務ネットワーク1からの業務処理要求をサーバ12で受けてDBMS74が業務処理を開始する。
【0090】
上記の、システム間で業務処理を引き継ぐ前に業務データの整合性を保証するために実行する処理、つまり、リカバリはディスクドライブ17へのログ書き込みがコミット単位であることが保証される場合と、保証されない場合とで異なる。ここで、コミット単位での書き込みが保証されない場合とは、例えば、チェックポイント処理によりコミット前の情報を書き込む場合や、DBMS71の持つバッファがあふれてコミット前の情報が書き出される場合などがある。以下、コミット単位での書き込みが保証される場合とされない場合、それぞれについてリカバリの方法を説明する。
【0091】
まず、コミット単位でのログ書き込みが保証される場合のリカバリ処理について説明する。コミット単位での書き込みが保証される場合は、ディスクドライブ17に書き込まれたログを全てデータに反映すればよい。したがって、ディスクドライブ17で未実行であるログを認識し、該ログをロールフォワードすることによりリカバリが実現する。同期コピーを用いた場合は、正システムでコミットした情報は副システムに全てコピーされたことが保証され、かつ、該リカバリ処理によりコピーされたログを漏れなく適用できるため、本システムにおいては、トランザクション欠損が無いことが保証される。
【0092】
コミット単位での書き込みが保証されない場合は、ディスクドライブ7にはコミット済みのトランザクションログとコミット未済みのトランザクションログとが含まれる。ここで、整合性を保証すべきなのは、コミット済みトランザクションだけである。なぜなら、コミット未済みの処理による変更は、正システムのデータに反映されていないからである。そのため、リカバリはコミット済みのトランザクションについてのみ実行し、未済みのトランザクションは実行しない。このようなリカバリ方法として、以下の3つの方法が考えられる。
【0093】
例えば、ディスクドライブ7に書かれたログを全てロールフォワードした後、未コミット分を検出し、検出した未済みのトランザクションのみをロールバックする方法が考えられる。例えば、ログを終端から先頭に向かってスキャンし未コミットのトランザクションを検出する方法がある。あるいは、あらかじめトランザクションの状態を管理するテーブル(以降、トランザクション管理テーブルとする)をDBMS74が用意し、正システムのDBMS71の停止を検出する前からディスクドライブ17へのログ書き込みが行われてロールフォワードをするたびにその状態を変更しておく方法がある。後者の場合、リカバリするときにトランザクション管理テーブルに登録されている未コミットのトランザクションをロールバックすればよい。
【0094】
また、正システムのDBMS71が停止したことを検出した時点以降にログの変更を検出した場合については、ロールフォワードを行う前に、トランザクションの状態を調査してからロールフォワードを行う方法も考えられる。コミット済みのトランザクションのロールフォワードが終了したらDBMS71が停止したことを検出した時点より以前について、コミット未済みのトランザクションを調査して、コミット未済みのトランザクションが存在したらロールバックを行う。コミット未済みのトランザクションの調査はDBMS71が停止したことを検出した時点からログの終端までスキャンしたり、管理テーブルの情報を用いるなどして行えばよい。
【0095】
また、コミットが確定したトランザクションのみロールフォワードする方法も考えられる。例えば、上記管理テーブルにおいてコミット済み状態になった時点で、該トランザクションのロールフォワードをする方法が考えられる。
【0096】
以上、コミット単位でのログ書き込みが保証されない場合の3つのリカバリ方法を同期コピーとともに用いると、正システムでディスクドライブに書き込まれた情報は副システムにコピーされたことが保証され、かつ、該リカバリ方法により、コミット済みのトランザクションはもれなくロールフォワードされるため、本システムにおいてはトランザクション欠損がないことが保証される。
【0097】
このように、正システムで実行した業務のログを副システムにコピーして、そのログから業務データを復元する処理を行うことで、正システムのデータベースサーバの処理負荷を上げることなく、また正システムと副システムの間で情報を転送するための通信帯域を抑制して低コストのデータ複製が可能となる。また、正システムから副システムへログを同期コピーで転送すると、業務処理の欠損を起こすことなくデータ複製を完了し、正システムの障害発生時や保守により正システムを停止しなければならない時、迅速に副システムに業務の実行を切り替えることが可能である。
【0098】
【発明の効果】
本発明によれば、データベースサーバとストレージ装置からなる複数のシステム間で、低コストかつ通常業務の遅延が小さいデータ複製を実現する。また、システム切り替え時の遅延を小さくすることができる。
【図面の簡単な説明】
【図1】正システムと副システムとからなるデータ複製システムおよび正・副システム間のデータ複製方法の概念図である。
【図2】正システムと副システムとからなるデータ複製システムおよび正・副システム間のシステム切り替え方法の概念図である。
【図3】正システムのデータベースサーバが行う処理手順のフローチャートである。
【図4】副システムのデータベースサーバが行う処理手順のフローチャートである。
【図5】正システムのストレージ装置が行う処理手順のフローチャートである。
【図6】副システムのストレージ装置が行う処理手順のフローチャートである。
【図7】正システムと副システムとからなるデータ複製システムおよび正・副システム間のシステム切り替え方法の概念図である。
【符号の説明】
1:業務ネットワーク、2:正システムのデータベースサーバ、3:ストレージ接続装置、4:サーバ・ストレージ間接続インタフェース、5:ディスク制御装置、6:データディスクドライブ、7:ログディスクドライブ、8:正システムのストレージ装置、12:副システムのデータベースサーバ、13:ストレージ接続装置、14:サーバ・ストレージ間接続インタフェース、15:ディスク制御装置、16:データディスクドライブ、17:ログディスクドライブ、18:副システムのストレージ装置、20:ストレージ装置間接続インタフェース。[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a business system including a computer and a storage device, and more particularly to a data duplication control method for replicating data between a plurality of systems and a method for realizing high-speed switching to a system that replicates data.
[0002]
[Prior art]
As a data replication method when there are a plurality of business systems including a database server and a storage device, there is a method executed by a DBMS operating on the database server. For example, Non-Patent Document 1 describes how the DBMS replicates data. This is a technology for replicating data by connecting database servers of a plurality of systems and transferring update information of a DBMS operating on one system to another system.
[0003]
As a similar system data duplication method, there is a method of using a data copy function between storage apparatuses. The data copy function between storage apparatuses is described in
[Non-Patent Document 1]
Oracle9i product catalog (https://www.oracle.co.jp/products/catalog/pdf/9iDBr2J07266-01.pdf),
[Non-Patent Document 2]
Hitachi Integrated Storage Solution “Storeplaza” catalog (hppt: //www.hitachi.co.jp/Prod/comp/storeplaza/data/stpzclg.pdf),
[0004]
[Problems to be solved by the invention]
When the conventional data replication method is executed, a cost higher than that for performing a normal database operation is required. In addition, when data replication is synchronized between a plurality of systems, a delay in business processing occurs.
[0005]
In order to perform data replication by DBMS, a database server on which the DBMS operates adds a load for performing data processing in addition to a load for performing business processing, so a higher-performance database server is required and costs increase. There are challenges. Further, in order for the replicated data to match, it is necessary to perform synchronous communication between the database servers every time the DBMS update process is executed. During the synchronous communication, the DBMS cannot execute the next update process, so that the task is delayed.
[0006]
In order to perform data replication in the storage apparatus, it is necessary to use a broadband line for connection between the storage apparatuses in order to copy all data updates handled by the DBMS. There is a problem that the cost is increased by using a broadband line. Further, in order for the replicated data to match, it is necessary to perform synchronous communication between the storage apparatuses every time the data on the disk drive is updated. During synchronous communication, the next update process to the disk drive cannot be executed, so the task is delayed.
[0007]
In addition, there is a method to execute communication between DBMS and storage device asynchronously to prevent delay due to synchronous communication. However, when switching to a data replication destination system due to a failure or disaster, untransferred data is copied to the replication destination. Therefore, it is necessary to rebuild the system, and the problem is that the system switching is delayed.
[0008]
[Means for Solving the Problems]
When a server executes a job in response to a request received from the outside, it is necessary to update or add to data stored in the storage device. Rather than copying all data to perform data replication on this storage device, prepare a server and storage device as the replication destination, and specify the storage device log that can restore the work performed on the replication source server The disk drive is copied to the duplication destination storage device every time the disk drive is updated. When copying of the disk drive to the replication destination storage apparatus is completed, the replication destination server is notified that the disk drive storing the log is updated from the copied storage apparatus. The copy destination server should be able to receive the change notification of the disk drive that saved the log from the storage device. After receiving the notification, the log is read from the disk drive and is the same as that performed on the copy source server. Execute business processing. After execution of the business process based on this log, the result is reflected in the storage device to complete the data replication.
[0009]
In a system running this data replication method, if the replication source server and storage device are stopped due to a failure or maintenance operation, the business data stored in the replication destination storage device is up to date, so the replication source By changing the transaction received by the server to be received at the replication destination, switching between the server and the storage device is executed without stopping the transaction processing.
[0010]
After switching between the server and the storage device, the system that received and processed the work was stopped by replacing the processing that was executed for data replication by both the replication source server and the storage device. In this case, the server and the storage device are switched again.
[0011]
DETAILED DESCRIPTION OF THE INVENTION
In the embodiment described below, a database server is taken as an example of a task that runs on a computer, but the task that is executed on a computer is not limited to a database. The business that operates on the computer may be any one in which the data to be replicated is updated by the business performed in the primary system, and a log that can reproduce the update of the data in the secondary system is generated. For example, it can be implemented by a file system.
[First Embodiment]
FIG. 1 shows an embodiment of a data replication system using a database server and a storage apparatus to which the present invention is applied.
[0012]
The
[0013]
The
[0014]
The
18 indicates not only reading / writing of data through the server /
[0015]
The
[0016]
Hereinafter, operations of the data replication method and the system switching method of the present embodiment will be described. In this embodiment, data replication is performed between a primary system that normally executes business and a secondary system that takes over the business when the primary system becomes inoperable for some reason.
[0017]
First, initial setting for realizing the data replication method is performed for both the primary system and the secondary system.
[0018]
The initial setting of the primary system starts with building a database according to the business system. In the
[0019]
A database similar to the primary system is constructed in the secondary system. In the
[0020]
Next, a setting is made so that the
[0021]
Then, the
[0022]
When a failure or disaster occurs in the primary system, it is necessary to quickly detect the stop of the primary system in order to switch to the secondary system. Therefore, a communication setting for notifying that the primary system is operating is performed between the primary
[0023]
After the setting as described above is completed in the
[0024]
Data replication first step 101: The business processing request arrives at the
[0025]
Upon receiving the business process request, the
[0026]
Data replication second step 102: When the contents of the business process involve database update processing, it is necessary to update the data held in the storage apparatus. In this case, the storage apparatus connection apparatus 3 instructs the
[0027]
Data replication third step 103: Upon receiving the update log write request, the
[0028]
Data replication fourth step 104: Since the
[0029]
Data replication fifth step 105: Upon receiving the update log writing completion report, the
[0030]
Data replication sixth step 106: After the update to the
[0031]
Data replication seventh step 107: Upon receiving the update notification of the
[0032]
Each time the primary
[0033]
When the primary system stops due to a disaster or equipment failure, the business process is switched to the secondary system. Even when it is necessary to perform maintenance work on the primary system, the primary system may be stopped and the business processing may be switched to the secondary system. FIG. 2 shows a procedure in which the secondary system takes over the business process after the primary system stops. The apparatus configuration is the same as that shown in FIG. In the following, a procedure for taking over business processing will be described.
[0034]
When the primary system stops, the system is switched and business processing is taken over by the
[0035]
System switching first step 201: First, the
[0036]
System switching second step 202: If there is an unexecuted business process, the information is transferred from the storage connection device 13 to the
[0037]
System switching third step 203: The
[0038]
System switching fourth step 204: When the writing of information in the
[0039]
In addition, when the primary system recovers from a failure / disaster and becomes operational again, or when the primary system becomes operational after maintenance work is completed, the data replication method described in this embodiment can be By applying it in the direction of copying to the system, it is possible to reflect to the primary system data and log updates due to business processing executed on the secondary system while the primary system is stopped.
[0040]
For example, the setting of copying the updated part of the
[0041]
In the present embodiment, the primary system and the secondary system have been described as having a one-to-one configuration. However, a method of replicating data from the primary system to a plurality of secondary systems, and data copied from the primary system to the secondary system are further different. A method of replicating data to the secondary system can be easily constructed.
[0042]
FIGS. 3 to 6 are flowcharts showing processing procedures of the database server and the storage apparatus, which are the main components of this embodiment. The flowchart of each figure is demonstrated below.
[0043]
A flowchart of the main system database server processing procedure shown in FIG. 3 will be described.
[0044]
First, initial setting of the database server is performed (301). For example, initial settings include database construction and disk drive allocation.
[0045]
Next, until the data replication system is constructed, it waits for the initialization of the storage apparatus and the secondary system to be completed (302). For example, it waits for the completion of the disk copy setting between the storage devices and the database construction of the secondary system.
[0046]
When the initial setting of the data replication system is completed, business process request acceptance is started (303). For example, merchandise management for business transactions performed via the Internet corresponds to business processing.
[0047]
It is determined whether the business process request has arrived after the business process request has been received (304).
If a business process request has arrived, the business process is executed (305). If the business process request has not arrived, the system waits for the business process request and continues to determine the arrival of the business process request. When a business process request arrives and the business process involves data update, a business process log is written in the storage device (306). Then, a log writing completion report is received (307). Thereafter, a data update request is sent to the storage apparatus (308).
[0048]
With respect to a data update write request made to the storage apparatus, the business process request is completed by receiving a write completion report from the storage apparatus (310).
[0049]
Once the primary system is operating, as described herein, the execution of the business process request and the accompanying log update and data update are repeated.
[0050]
The flowchart of the secondary system database server processing procedure shown in FIG. 4 will be described.
[0051]
Since the purpose of data replication is to execute business processing by switching after the primary system is stopped, the database server of the secondary system is initialized according to the settings of the primary system (401). For example, preparation of a log disk or a data disk to be copied is necessary for data replication.
[0052]
Next, in order to refer to the log copied from the primary system, a setting is made to detect the log disk update of the storage device (402). For example, a method for specifying that a log disk update should be notified from the database server of the secondary system to the storage system of the secondary system, or a log disk in the storage device is periodically read from the database server of the secondary system. A method of determining whether or not is possible. As a result, log updates can be detected.
[0053]
Then, when the log is updated, data replication processing is started in which the contents are executed by the secondary system to update the database data (403).
[0054]
In order to determine whether system switching is necessary, it is determined whether the primary system is operating normally (404). For example, switch the system when there is no operation status notification from the primary system to the secondary system for 10 seconds, or connect an operational status monitoring server other than the primary and secondary system database servers to the business network to monitor the status. Therefore, if it is determined that the primary system is not operating, a policy is determined so that the secondary system takes over the business processing, and the determination is executed. A plurality of methods for determining the operating state of the primary system can be considered in this way, and the method is not limited to the method shown here.
[0055]
If it is determined that the main system is not operating normally, system switching processing is performed. First, the business takeover process of the primary system is executed (410), so that it can be connected to the business network, and then the unexecuted business process is executed with the updated log disk (411). As a result of the execution, data update is sent to the storage device (412). By receiving the data update completion report of the storage apparatus (413), it is considered that the data replication of the primary system has been completed. When all the unexecuted business process data in the log disk is reflected in the storage device, the business process request acceptance is started (414).
[0056]
If it is determined that the operating state is normal, it is determined whether an update of the log disk has been detected from the storage device (405). The method of detecting the update of the log disk is a method of generating an interrupt from the storage device to the database server, a method of returning a response to a special I / O command issued from the database server to the storage device, or a time when the database server is in a certain period of time. There is a method of reading the contents of the log disk at intervals and analyzing the information. When the update of the log disk is detected, the updated part of the log disk is read (406). Then, the data update is executed by applying the log update (407). Further, the data update generated by the data update execution is sent to the storage apparatus (408) so that the data matches the latest one of the primary system. When a data update completion report of the storage device is received (409), preparations for system switching are made while data copy is repeated by repeatedly receiving the status notification and waiting for the storage device update notification.
[0057]
A flowchart of the processing procedure of the primary system storage apparatus shown in FIG. 5 will be described.
[0058]
First, initialization is performed such as assigning a disk drive in the storage apparatus to the database server (501).
[0059]
Then, in order to perform the data replication method of the present embodiment, the log disk of the primary system is associated with the log disk of the secondary system, and a copy setting is made (502). Before performing this setting, it is necessary to complete the initial setting of the database server and storage device of the secondary system.
[0060]
When the setting is completed, read / write processing is started (503), and a data update request from the database server is accepted.
[0061]
When a request is received from a state waiting for reception of a processing request (504), it is first determined whether it is a write request (505). If it is not a write request, the requested information is transferred to the database server (511), and an information read completion report is transmitted to the database server (512). Actually, it receives a request for controlling the disk drive, etc., but here it is regarded as the same as a read request. When a write request is received, the requested information is written to the disk (506), and it is determined whether the disk is a disk for which copying has been set (507). If copying is not set, a data write completion report is transmitted to the database server (510). If the disk is a copy set, the write request and information are transferred to the storage system of the secondary system (508), and a write completion report is awaited from the storage system of the secondary system (509). When a completion report is received from the secondary system, an information write completion report is transmitted to the database server (510). Here, a method of performing synchronous copy between the storage system of the primary system and the secondary system is used.
[0062]
In this way, the storage system of the primary system waits for a processing request from the database server, and repeats disk information reading / writing processing and disk copying processing to the secondary system.
[0063]
A flowchart of the secondary system storage apparatus processing procedure shown in FIG. 6 will be described.
[0064]
First, initial settings such as allocation of disk drives in the storage apparatus to the database server and disk copy settings from the external storage apparatus are performed (601).
[0065]
Then, after the read / write processing is started (602), a request from the database server can be received. Furthermore, the disk for update notification is designated from the database server (603), and preparation for data replication is completed.
[0066]
Processing request reception (604) is started, and when a processing request is received, it is determined whether the request is a write request (605). If it is not a write request, the information requested to be read is transferred to the request source (610), and an information transfer completion report is transmitted to the request source (611), thereby completing the execution of the processing request. On the other hand, if it is a write request, first, the requested information is written to the disk (606). Then, an information writing completion report is transmitted to the request source (607). This completes the processing of normal processing requests. However, if writing to a disk occurs to implement the data replication method, it is determined whether the disk is a disk for which an update notification is specified by the database server (608). If it is the designated disk, the update is notified to the database server (609). If not specified, the process is completed without notification.
[0067]
In this way, the storage system of the secondary system processes the log disk write from the primary system and the read / write request from the database server of the secondary system, and repeats the process of sending the notification if the disk notifies the update. Realize data replication process.
[0068]
Although switching from the primary system to the secondary system as in the present embodiment, using the data replication method as described above, especially when the disk copy between the
[Second Embodiment]
In the first embodiment, an interface other than normal disk drive read / write is required to notify the database server of disk drive updates. However, in the second embodiment described below, only the disk drive read / write interface is required. To achieve data replication. The configuration of the data replication system is the same as that of the first embodiment shown in FIG.
[0069]
In the first embodiment, the setting for notifying the
[0070]
The update can be detected by the following procedure. The
[0071]
The database update log is usually written to the disk so that it is not overwritten sequentially in a certain area. Then, when writing is performed up to the end of the area, data is sequentially written again from the beginning of the area. Therefore, if it is guaranteed that the contents can be read by the database server before the update log write is overwritten, and that the update log can be distinguished one by one, it is monitored by polling. Data can be duplicated by updating the data disk drive.
[0072]
As described above, when data replication is performed by monitoring the update of the disk drive from the database server by the polling, the delay due to the system switching can be reduced by sufficiently reducing the polling interval. Further, the system configuration is the same as that of the first embodiment, and the cost for data replication can be reduced. Furthermore, if the disk copy between the
[Third Embodiment]
In the first embodiment and the second embodiment, it is assumed that the
[0073]
In this embodiment, the disk copy method between storage apparatuses is different from the first embodiment and the second embodiment. The NAS device receives an access request in the file system. Therefore, the inter-storage connection interface between the
[0074]
Further, as a method for copying log data, a method of providing a disk control device capable of detecting changes in units of disk drives different from the
[0075]
Further, when copying log files in the NAS device, it is necessary to transfer all the files between the
[0076]
By constructing the system in this way, data replication is realized. The system configuration is the same as that of the first embodiment, and the cost can be reduced. In addition, the delay at the time of system switching can be reduced.
[Fourth Embodiment]
FIG. 7 shows an embodiment of a data replication system using a database server and a storage apparatus to which the present invention is applied and software operating on them. In this embodiment, the application program that runs on the server is a DBMS, but the present invention can be applied to any program that outputs data updates as a log. For example, a transaction monitor may be used.
[0077]
The configuration of the data replication system is the same as that of the first embodiment shown in FIG. 1, but the storage connection devices 3 and 13 on the
[0078]
In the present embodiment, data replication is realized by the system configuration similar to that of the second embodiment, using each device and software operating on these devices. That is, there is no interface for notifying that the information of the disk drives 16 and 17 has been changed from the
[0079]
The
[0080]
Between the
[0081]
First, initial setting of the primary system and the secondary system is performed. The disk drives 6 and 7 in the
[0082]
The initial setting between the
[0083]
When the setting up to here is completed, data replication from the primary system to the secondary system is possible by executing the procedure described below. Therefore, work is started on the main system. The
[0084]
As a unit in which the
[0085]
Upon receiving the request, the
[0086]
Further, the
[0087]
On the other hand, the
[0088]
There are a plurality of methods by which the
[0089]
If the
[0090]
The processing executed to guarantee the consistency of the business data before taking over the business processing between the systems, that is, the recovery is guaranteed that the log writing to the
[0091]
First, the recovery process when log writing in a commit unit is guaranteed will be described. When writing in commit units is guaranteed, all the logs written in the
[0092]
When writing in a commit unit is not guaranteed, the
[0093]
For example, after all the logs written in the
[0094]
Further, in the case where a log change is detected after the time point when the
[0095]
Another possible method is to roll forward only transactions for which commit has been confirmed. For example, a method of rolling forward the transaction when the committed state is reached in the management table can be considered.
[0096]
As described above, using the three recovery methods when log writing in commit units is not guaranteed together with synchronous copy, it is guaranteed that the information written to the disk drive in the primary system has been copied to the secondary system, and the recovery The method ensures that committed transactions are rolled forward, so that there is no transaction loss in the system.
[0097]
In this way, by copying the business log executed on the primary system to the secondary system and restoring the business data from that log, the processing load on the primary system database server can be increased without increasing the processing load on the primary system. It is possible to copy data at low cost by suppressing the communication band for transferring information between the system and the sub system. In addition, when logs are transferred from the primary system to the secondary system by synchronous copy, data replication is completed without causing loss of business processing, and when the primary system must be stopped due to a failure or maintenance of the primary system, It is possible to switch the execution of business to the secondary system.
[0098]
【The invention's effect】
According to the present invention, it is possible to realize data replication between a plurality of systems including a database server and a storage device at a low cost and with a small delay in normal business. Further, the delay at the time of system switching can be reduced.
[Brief description of the drawings]
FIG. 1 is a conceptual diagram of a data replication system comprising a primary system and a secondary system and a data replication method between the primary and secondary systems.
FIG. 2 is a conceptual diagram of a data replication system composed of a primary system and a secondary system and a system switching method between the primary and secondary systems.
FIG. 3 is a flowchart of a processing procedure performed by the database server of the primary system.
FIG. 4 is a flowchart of a processing procedure performed by the database server of the secondary system.
FIG. 5 is a flowchart of a processing procedure performed by the storage device of the primary system.
FIG. 6 is a flowchart of a processing procedure performed by the storage system of the secondary system.
FIG. 7 is a conceptual diagram of a data replication system composed of a primary system and a secondary system and a system switching method between the primary and secondary systems.
[Explanation of symbols]
1: business network, 2: database server of primary system, 3: storage connection device, 4: server-storage connection interface, 5: disk control device, 6: data disk drive, 7: log disk drive, 8: primary system Storage device, 12: secondary system database server, 13: storage connection device, 14: server-storage connection interface, 15: disk control device, 16: data disk drive, 17: log disk drive, 18: secondary system Storage device 20: A storage device connection interface.
Claims (9)
前記第1の計算機システムの処理によって前記第1のストレージシステムが保持するデータの更新を再現可能なログを該第1のストレージシステム内の特定記憶装置に登録するステップと、
前記ログの複製のために設定された第2のストレージシステム内の特定記憶装置に前記第1のストレージシステムの特定記憶装置に登録されたログをコピーするステップと、
前記第1計算機システムの処理によって前記第1のストレージシステムが保持するデータを更新するステップと、
前記コピーステップにより前記第2のストレージシステム内の特定記憶装置の保持内容に変更が生じたことを前記第2の計算機システムが検知するステップと、
前記第2の計算機システムが前記第2のストレージシステム内の特定記憶装置の保持内容の変更を読み込むステップと、
前記第2の計算機システムがログを読み込み該ログにしたがって前記第2のストレージに保持する前記データの複製を更新するステップ、
を有することを特徴とするデータ二重化制御方法。A primary system having a first computer system and a first storage system connected to the first computer system; a second computer system; and a second storage connected to the second computer system. A data duplex control method in a system comprising: a secondary system having a system; and at least the first and second storage systems are interconnected,
Registering a log capable of reproducing the update of data held by the first storage system by processing of the first computer system in a specific storage device in the first storage system;
Copying the log registered in the specific storage device of the first storage system to the specific storage device in the second storage system set for duplication of the log;
Updating the data held by the first storage system by the processing of the first computer system;
A step in which the second computer system detects that the content stored in the specific storage device in the second storage system has changed by the copying step;
A step in which the second computer system reads a change in content held in a specific storage device in the second storage system;
The second computer system reads the log and updates the copy of the data held in the second storage according to the log;
A data duplication control method comprising:
前記ログの複製のために設定された第2のストレージシステム内の特定記憶装置に前記第1のストレージシステムの特定記憶装置のログの変更をコピーするステップとを同期で行うことを特徴とする請求項1のデータ二重化方法。A step of registering a log capable of updating data held by the first storage system by processing of the first computer system in a specific storage device in the first storage system; the second of the first storage data duplication method according to claim 1, characterized in that the step of copying the log changes of the specific storage device in a synchronous system the particular storage device in the storage system.
第1の記憶領域と、前記第二のデータベースサーバが用いるデータを格納する第二の記A second storage for storing data used by the first storage area and the second database server; 憶領域と、Memory area,
前記第1の記憶領域及び前記第二の記憶領域に対してデータの入出力を制御するストレージ制御部と、を備え、A storage control unit that controls input / output of data to and from the first storage area and the second storage area,
前記ストレージ制御部は、The storage control unit
前記更新ログを前記第1のデータベースサーバから前記第一のストレージシステムを介しThe update log is sent from the first database server via the first storage system. て、受領する受領部と、The receiving department to receive,
前記更新ログを、前記第1の記憶領域に格納し、Storing the update log in the first storage area;
前記第1の記憶領域に格納されたことを前記第二のデータベースサーバに通知し、Notifying the second database server that it has been stored in the first storage area,
前記第二のデータベースサーバから、前記第1の記憶領域に格納される更新ログを前記第2の記憶領域に反映する反映要求を受け、A reflection request for reflecting the update log stored in the first storage area to the second storage area is received from the second database server,
前記第2の記憶領域に前記更新ログを反映し、Reflecting the update log in the second storage area;
前記反映が完了した場合、完了したことを示す完了報告を前記第2のデータベースサーバに通知する、ことを特徴とする第2のストレージシステム。When the reflection is completed, the second storage system is configured to notify the second database server of a completion report indicating completion.
前記第1のストレージシステムから送信される前記1の記憶領域に新たな更新ログが格納されたか否かを検出する検出手段と、Detecting means for detecting whether or not a new update log is stored in the one storage area transmitted from the first storage system;
前記検出手段により検出した場合は、前記第1の記憶領域から更新ログを読み出す読みIf detected by the detection means, read the update log from the first storage area. 出し手段と、Taking out means,
前記読み出された更新ログを前記第2の記憶領域に更新する更新要求を前記第2のストレージシステムに送信する更新要求送信手段と、Update request transmitting means for transmitting an update request for updating the read update log to the second storage area to the second storage system;
前記第二のストレージシステムから前記更新要求に対応する更新処理の完了を示す前記更新完了を受信する手段と、を有することを特徴とする第2のデータベースサーバ。Means for receiving the update completion indicating completion of the update process corresponding to the update request from the second storage system.
第一のデータベースサーバの障害を検出した場合、If a failure of the first database server is detected,
前記更新ログの前記第1の記憶領域への格納を停止するよう前記第2のストレージシステムに指示する停止指示手段と、Stop instruction means for instructing the second storage system to stop storing the update log in the first storage area;
前記第1の記憶領域から更新ログを読み出し、前記第2の記憶領域に未反映の更新ログの有無を確認する確認手段と、Confirmation means for reading an update log from the first storage area and confirming whether there is an update log not reflected in the second storage area;
前記未反映の更新ログがあった場合は、前記第2のストレージシステムに前記第2の記憶領域に反映するよう指示する更新指示手段と、An update instruction means for instructing the second storage system to reflect in the second storage area when there is an unreflected update log;
前記更新指示手段に対し、前記第2のストレージシステムから反映完了報告を受信した場合、前記第2のデータベースサーバで、前記第1のデータベースサーバの処理を引き継ぐことを特徴とする第2のデータベースサーバ。When the update instruction means receives a reflection completion report from the second storage system, the second database server takes over the processing of the first database server in the second database server. .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003207782A JP4289056B2 (en) | 2003-03-27 | 2003-08-19 | Data duplication control method between computer systems |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003086920 | 2003-03-27 | ||
JP2003207782A JP4289056B2 (en) | 2003-03-27 | 2003-08-19 | Data duplication control method between computer systems |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004348701A JP2004348701A (en) | 2004-12-09 |
JP4289056B2 true JP4289056B2 (en) | 2009-07-01 |
Family
ID=33543023
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003207782A Expired - Fee Related JP4289056B2 (en) | 2003-03-27 | 2003-08-19 | Data duplication control method between computer systems |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4289056B2 (en) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4731975B2 (en) * | 2005-04-20 | 2011-07-27 | 株式会社日立製作所 | Database management method and storage system |
JP4699091B2 (en) * | 2005-05-31 | 2011-06-08 | 株式会社日立製作所 | Disaster recovery method and system |
TWI416901B (en) * | 2005-11-30 | 2013-11-21 | Ibm | Failure tolerant transaction processing system |
JP4830562B2 (en) * | 2006-03-17 | 2011-12-07 | 株式会社日立製作所 | Data input / output method of information processing system and information processing system |
US7650369B2 (en) | 2006-03-30 | 2010-01-19 | Fujitsu Limited | Database system management method and database system |
JP4998010B2 (en) * | 2006-03-30 | 2012-08-15 | 富士通株式会社 | Database system management, database system, program and processing apparatus |
JP5201134B2 (en) | 2007-04-25 | 2013-06-05 | 富士通株式会社 | Redundant system, switching program and switching method |
JP5061250B2 (en) * | 2011-02-21 | 2012-10-31 | 株式会社日立製作所 | Database management method and storage system |
JP5583069B2 (en) * | 2011-04-18 | 2014-09-03 | 三菱電機株式会社 | Database system |
US11030055B2 (en) * | 2013-03-15 | 2021-06-08 | Amazon Technologies, Inc. | Fast crash recovery for distributed database systems |
WO2015104835A1 (en) * | 2014-01-10 | 2015-07-16 | 株式会社日立製作所 | Database-system control method and database system |
CN105446827B (en) * | 2014-08-08 | 2018-12-14 | 阿里巴巴集团控股有限公司 | Date storage method and equipment when a kind of database failure |
KR101826827B1 (en) * | 2017-10-11 | 2018-02-09 | (주)데이타뱅크시스템 | Integrated replication system in real time |
KR101859090B1 (en) * | 2017-10-11 | 2018-05-18 | (주)데이타뱅크시스템즈 | Integrated replication system |
KR101859094B1 (en) * | 2017-10-11 | 2018-05-18 | (주)데이타뱅크시스템즈 | Integrated replication system considering change of replication method |
JP7179947B2 (en) * | 2018-09-21 | 2022-11-29 | 株式会社日立製作所 | Storage system and storage control method |
JP6974281B2 (en) * | 2018-09-21 | 2021-12-01 | 株式会社日立製作所 | Storage system and storage control method |
-
2003
- 2003-08-19 JP JP2003207782A patent/JP4289056B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2004348701A (en) | 2004-12-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7383264B2 (en) | Data control method for duplicating data between computer systems | |
JP4833734B2 (en) | Database system, storage device, initial copy method, and log application method | |
US7043665B2 (en) | Method, system, and program for handling a failover to a remote storage location | |
US8027952B2 (en) | System and article of manufacture for mirroring data at storage locations | |
JP4289056B2 (en) | Data duplication control method between computer systems | |
JP4581500B2 (en) | Disaster recovery system, program, and database recovery method | |
JP4668763B2 (en) | Storage device restore method and storage device | |
US7103619B1 (en) | System and method for automatic audit data archiving within a remote database backup system | |
EP1455275B1 (en) | Data restoring apparatus using journal data and identification information | |
JP4551096B2 (en) | Storage subsystem | |
JP5049618B2 (en) | Disaster recovery system and method | |
US7822892B2 (en) | Managing the copying of writes from primary storages to secondary storages across different networks | |
US20060161700A1 (en) | Redirection of storage access requests | |
US20100077142A1 (en) | Efficiently creating a snapshot of a large consistency group | |
US20100030826A1 (en) | Production-alternate system including production system for processing transactions and alternate system as a backup system of the production system | |
US7451283B2 (en) | Method, system, and program for copying tracks between a primary storage and secondary storage | |
US10095444B1 (en) | Tape emulation alternate data path | |
JP2005309793A (en) | Data processing system | |
US9430485B2 (en) | Information processor and backup method | |
KR20020036502A (en) | Duplicated Database Management System for Main Memory Resident DBMS | |
US7904682B2 (en) | Copying writes from primary storages to secondary storages across different networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060320 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20060421 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20081216 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090216 |
|
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: 20090310 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090323 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 4289056 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120410 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120410 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130410 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130410 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140410 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |